@sd-angular/core 1.3.16 → 1.3.17
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/sd-angular-core-popover.umd.js +24 -8
- package/bundles/sd-angular-core-popover.umd.js.map +1 -1
- package/bundles/sd-angular-core-popover.umd.min.js +1 -1
- package/bundles/sd-angular-core-popover.umd.min.js.map +1 -1
- package/esm2015/popover/src/lib/popover/popover.component.js +20 -9
- package/fesm2015/sd-angular-core-popover.js +19 -8
- package/fesm2015/sd-angular-core-popover.js.map +1 -1
- package/package.json +1 -1
- package/popover/sd-angular-core-popover.metadata.json +1 -1
- package/popover/src/lib/popover/popover.component.d.ts +1 -1
- package/{sd-angular-core-1.3.16.tgz → sd-angular-core-1.3.17.tgz} +0 -0
|
@@ -337,7 +337,7 @@
|
|
|
337
337
|
{ type: core.TemplateRef }
|
|
338
338
|
]; };
|
|
339
339
|
|
|
340
|
-
var _xPosition;
|
|
340
|
+
var _previousPanelClass, _xPosition;
|
|
341
341
|
var PopoverComponent = /** @class */ (function () {
|
|
342
342
|
function PopoverComponent(cdRef, deviceService) {
|
|
343
343
|
var _this = this;
|
|
@@ -348,7 +348,7 @@
|
|
|
348
348
|
this.isMobileOrTablet = false;
|
|
349
349
|
this.mouseState$ = new rxjs.BehaviorSubject(false);
|
|
350
350
|
this.trigger = null;
|
|
351
|
-
this
|
|
351
|
+
_previousPanelClass.set(this, void 0);
|
|
352
352
|
this.width = 'sm';
|
|
353
353
|
this.height = 'auto';
|
|
354
354
|
this.type = 'normal';
|
|
@@ -394,6 +394,26 @@
|
|
|
394
394
|
};
|
|
395
395
|
this.isMobileOrTablet = !deviceService.isDesktop();
|
|
396
396
|
}
|
|
397
|
+
Object.defineProperty(PopoverComponent.prototype, "panelClass", {
|
|
398
|
+
set: function (classes) {
|
|
399
|
+
var _this = this;
|
|
400
|
+
var previousPanelClass = __classPrivateFieldGet(this, _previousPanelClass);
|
|
401
|
+
if (previousPanelClass && previousPanelClass.length) {
|
|
402
|
+
previousPanelClass.split(' ').forEach(function (className) {
|
|
403
|
+
_this.classList[className] = false;
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
__classPrivateFieldSet(this, _previousPanelClass, classes);
|
|
407
|
+
if (classes && classes.length) {
|
|
408
|
+
classes.split(' ').forEach(function (className) {
|
|
409
|
+
_this.classList[className] = true;
|
|
410
|
+
});
|
|
411
|
+
}
|
|
412
|
+
},
|
|
413
|
+
enumerable: false,
|
|
414
|
+
configurable: true
|
|
415
|
+
});
|
|
416
|
+
;
|
|
397
417
|
Object.defineProperty(PopoverComponent.prototype, "position", {
|
|
398
418
|
get: function () {
|
|
399
419
|
return __classPrivateFieldGet(this, _xPosition);
|
|
@@ -415,13 +435,9 @@
|
|
|
415
435
|
}
|
|
416
436
|
};
|
|
417
437
|
PopoverComponent.prototype.ngOnChanges = function (changes) {
|
|
418
|
-
var _a;
|
|
419
438
|
if (changes.type) {
|
|
420
439
|
var type = changes.type.currentValue;
|
|
421
440
|
var preType = changes.type.previousValue;
|
|
422
|
-
this.classList = (_a = this.classList) !== null && _a !== void 0 ? _a : {
|
|
423
|
-
'sd-popover--normal': true
|
|
424
|
-
};
|
|
425
441
|
if (preType) {
|
|
426
442
|
this.classList["sd-popover--" + preType] = false;
|
|
427
443
|
}
|
|
@@ -454,7 +470,7 @@
|
|
|
454
470
|
};
|
|
455
471
|
return PopoverComponent;
|
|
456
472
|
}());
|
|
457
|
-
_xPosition = new WeakMap();
|
|
473
|
+
_previousPanelClass = new WeakMap(), _xPosition = new WeakMap();
|
|
458
474
|
PopoverComponent.decorators = [
|
|
459
475
|
{ type: core.Component, args: [{
|
|
460
476
|
selector: 'sd-popover',
|
|
@@ -473,7 +489,7 @@
|
|
|
473
489
|
templateRef: [{ type: core.ViewChild, args: [core.TemplateRef,] }],
|
|
474
490
|
panel: [{ type: core.ViewChild, args: ['panel',] }],
|
|
475
491
|
popoverContent: [{ type: core.ContentChild, args: [PopoverContentDirective,] }],
|
|
476
|
-
panelClass: [{ type: core.Input }],
|
|
492
|
+
panelClass: [{ type: core.Input, args: ['class',] }],
|
|
477
493
|
width: [{ type: core.Input }],
|
|
478
494
|
height: [{ type: core.Input }],
|
|
479
495
|
type: [{ type: core.Input }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-popover.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts","../../../../projects/sd-core/popover/src/public-api.ts","../../../../projects/sd-core/popover/sd-angular-core-popover.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input() panelClass: string = '';\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n this.classList = this.classList ?? {\r\n 'sd-popover--normal': true\r\n };\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdPopoverModule } from './lib/popover.module';\r\n\r\nexport * from './lib/popover/popover.component';\r\nexport * from './lib/directives/popover-trigger.directive';\r\nexport * from './lib/directives/popover-content.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Directive","TemplateRef","uuid.v4","BehaviorSubject","EventEmitter","Component","ViewEncapsulation","ChangeDetectionStrategy","ChangeDetectorRef","DeviceDetectorService","ViewChild","ContentChild","Input","Output","HostListener","Subscription","Subject","TemplatePortal","OverlayConfig","merge","fromEvent","mapTo","filter","debounceTime","distinctUntilChanged","takeUntil","Overlay","ElementRef","NgZone","ViewContainerRef","Platform","Directionality","Optional","NgModule","CommonModule","A11yModule"],"mappings":";;;;;;IAAA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;;QCvOE,iCAAmB,WAA6B;YAA7B,gBAAW,GAAX,WAAW,CAAkB;SAAK;;;;gBALtDA,cAAS,SAAC;oBACT,QAAQ,EAAE,oBAAoB;iBAC/B;;;gBAJmBC,gBAAW;;;;;QC2E7B,0BACU,KAAwB,EACxB,aAAoC;YAF9C,iBAKC;YAJS,UAAK,GAAL,KAAK,CAAmB;YACxB,kBAAa,GAAb,aAAa,CAAuB;YAvC9C,cAAS,GAA4B,EAAE,CAAC;YACxC,YAAO,GAAG,sBAAoBC,OAAO,EAAI,CAAC;YAC1C,qBAAgB,GAAG,KAAK,CAAC;YACzB,gBAAW,GAAG,IAAIC,oBAAe,CAAU,KAAK,CAAC,CAAC;YAClD,YAAO,GAA4B,IAAI,CAAC;YAM/B,eAAU,GAAW,EAAE,CAAC;YACxB,UAAK,GAAgC,IAAI,CAAC;YAC1C,WAAM,GAAW,MAAM,CAAC;YACxB,SAAI,GAAqE,QAAQ,CAAC;YAS3F,6BAAqB;YAEF,WAAM,GAAG,IAAIC,iBAAY,EAAQ,CAAC;YAClC,WAAM,GAAG,IAAIA,iBAAY,EAAO,CAAC;YA2DpD,UAAK,GAAG;gBACN,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7B,KAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aACpB,CAAC;YAEF,uBAAkB,GAAG,UAAC,GAA6B;gBAA7B,oBAAA,EAAA,MAAgB,KAAI,CAAC,QAAQ;;gBACjD,IAAM,OAAO,GAAG,KAAI,CAAC,SAAS,CAAC;gBAC/B,OAAO,CAAC,kBAAkB,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC;gBAC9C,OAAO,CAAC,kBAAkB,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC;gBAE9C,MAAA,KAAI,CAAC,KAAK,0CAAE,YAAY,GAAG;aAC5B,CAAC;YAEF,uBAAkB,GAAG,UAAC,MAAc;gBAClC,IAAM,YAAY,GAAgB,QAAQ,CAAC,aAAa,CAAC,MAAI,KAAI,CAAC,OAAO,uBAAoB,CAAC,CAAC;gBAC/F,IAAI,YAAY,IAAI,MAAM,EAAE;oBAC1B,IAAI;wBACF,IAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBACpD,IAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACpD,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;wBACvC,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC9B,YAAY,CAAC,KAAK,CAAC,SAAS,GAAG,gBAAc,UAAU,uBAAkB,UAAU,QAAK,CAAC;qBAC1F;oBAAC,OAAO,KAAK,EAAE,GAAE;iBACnB;aACF,CAAC;YAEF,kBAAa,GAAG,UAAC,OAAgB;gBAC/B,IAAI,CAAC,OAAO,EAAE;;;oBAGZ,IAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;oBAC7C,IAAM,YAAY,GAAG,KAAI,CAAC,KAAK,CAAC,aAAa,CAAC;oBAC9C,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,CAAC,aAAa,GAAG;wBACzC,OAAO;qBACR;iBACF;gBACD,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAChC,CAAC;YAhFA,IAAI,CAAC,gBAAgB,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;SACpD;QA5BD,sBACI,sCAAQ;iBADZ;gBAEE,gDAAuB;aACxB;iBACD,UAAa,KAAe;gBAC1B,uBAAA,IAAI,cAAc,KAAK,EAAC;gBACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC3B;;;WAJA;QAWD,qCAAU,GAAV,UAAW,aAAa;;YACtB,UAAI,IAAI,CAAC,KAAK,0CAAE,aAAa,EAAE;gBAC7B,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAClE,IAAI,CAAC,QAAQ,EAAE;oBACb,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;iBAC3B;aACF;SACF;QASD,sCAAW,GAAX,UAAY,OAAsB;;YAChC,IAAG,OAAO,CAAC,IAAI,EAAE;gBACf,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;gBACvC,IAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC3C,IAAI,CAAC,SAAS,SAAG,IAAI,CAAC,SAAS,mCAAI;oBACjC,oBAAoB,EAAE,IAAI;iBAC3B,CAAC;gBACF,IAAI,OAAO,EAAE;oBACX,IAAI,CAAC,SAAS,CAAC,iBAAe,OAAS,CAAC,GAAG,KAAK,CAAC;iBAClD;gBACD,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,SAAS,CAAC,iBAAe,IAAM,CAAC,GAAG,IAAI,CAAC;iBAC9C;aACF;SACF;QAED,mCAAQ,GAAR;YACE,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBAC1B,QAAQ,IAAI,CAAC,KAAK;oBAChB,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;iBACT;aACF;SACF;QAED,sCAAW,GAAX;YACE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;SAC7B;;;;;gBA3FFC,cAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,2rBAAuC;oBAEvC,aAAa,EAAEC,sBAAiB,CAAC,IAAI;oBACrC,QAAQ,EAAE,WAAW;oBACrB,eAAe,EAAEC,4BAAuB,CAAC,MAAM;;iBAChD;;;gBAlCCC,sBAAiB;gBAkBVC,uCAAqB;;;8BAwB3BC,cAAS,SAACT,gBAAW;wBACrBS,cAAS,SAAC,OAAO;iCACjBC,iBAAY,SAAC,uBAAuB;6BAEpCC,UAAK;wBACLA,UAAK;yBACLA,UAAK;uBACLA,UAAK;2BACLA,UAAK;yBAULC,WAAM;yBACNA,WAAM;6BAENC,iBAAY,SAAC,gBAAgB,EAAE,CAAC,eAAe,CAAC;;;;;QCcjD,iCACU,QAAiB,EACjB,QAAiC,EACjC,OAAe,EACf,gBAAkC,EAClC,UAAsB,EACtB,QAAkB,EACN,IAAoB;YAP1C,iBAQI;YAPM,aAAQ,GAAR,QAAQ,CAAS;YACjB,aAAQ,GAAR,QAAQ,CAAyB;YACjC,YAAO,GAAP,OAAO,CAAQ;YACf,qBAAgB,GAAhB,gBAAgB,CAAkB;YAClC,eAAU,GAAV,UAAU,CAAY;YACtB,aAAQ,GAAR,QAAQ,CAAU;YACN,SAAI,GAAJ,IAAI,CAAgB;YAzC1C,sBAAiC,IAAI,EAAC;YACtC,yBAAiBC,iBAAY,CAAC,KAAK,EAAC;YACpC,0BAAwB;YACxB,oBAAY,IAAIC,YAAO,EAAE,EAAC;YAE1B,gBAAW,GAAG,KAAK,CAAC;YAkBpB,2BAA2B;YAM3B,aAAQ,GAAY,KAAK,CAAC;YAEhB,kBAAa,GAAG,IAAIZ,iBAAY,EAAQ,CAAC;YACzC,kBAAa,GAAG,IAAIA,iBAAY,EAAQ,CAAC;YAsDnD,gBAAW,GAAG;gBACZ,IAAI,KAAI,CAAC,WAAW,EAAE;oBACpB,OAAO;iBACR;gBAED,IAAM,UAAU,GAAG,mDAAA,KAAI,CAAiB,CAAC;gBACzC,IAAM,aAAa,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;gBAC7C,IAAM,gBAAgB,GACpB,aAAa,CAAC,gBAAqD,CAAC;gBACtE,iDAAA,KAAI,EAAc,gBAAgB,CAAC,CAAC;gBACpC,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC;gBAClC,UAAU,CAAC,MAAM,CAAC,+CAAA,KAAI,CAAa,CAAC,CAAC;gBACrC,KAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAI,CAAC;gBAC5B,sDAAA,KAAI,EAAmB,IAAI,CAAC,CAAC;gBAC7B,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC;aAC5C,CAAC;YAEF,iBAAY,GAAG;gBACb,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aAC5B,CAAC;YAEF,4BAAoB,UAAC,MAAe;gBAClC,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC;gBAC1B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;aAC1E,EAAC;YAEF,qBAAa;;gBACX,IACE,uCAAa;oBACb,uCAAa,WAAW,KAAK,KAAI,CAAC,OAAO,CAAC,WAAW;oBACrD,OAAA,uCAAa,OAAO,0CAAE,IAAI,MAAK,KAAI,CAAC,WAAW,EAC/C;oBACA,uBAAA,KAAI,WAAW,IAAIa,qBAAc,CAC/B,KAAI,CAAC,OAAO,CAAC,WAAW,EACxB,KAAI,CAAC,gBAAgB,EACrB;wBACE,IAAI,EAAE,KAAI,CAAC,WAAW;qBACvB,CACF,EAAC;iBACH;gBAED,8CAAoB;aACrB,EAAC;YAEF,yBAAiB;gBACf,IAAI,2CAAiB,EAAE;oBACrB,IAAM,MAAM,GAAG,sDAAA,KAAI,CAAoB,CAAC;oBACxC,0DAAA,KAAI,EACF,MAAM,CAAC,gBAAqD,CAC7D,CAAC;oBACF,uBAAA,KAAI,eAAe,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAC;iBACjD;gBAED,kDAAwB;aACzB,EAAC;YAEF,uBAAe,UAAC,gBAAmD;gBACjE,IAAI,OAAO,GAA+B,QAAQ,CAAC;gBACnD,IAAI,OAAO,GAAgC,KAAK,CAAC;gBACjD,IAAI,QAAQ,GAA+B,QAAQ,CAAC;gBACpD,IAAI,QAAQ,GAAgC,QAAQ,CAAC;gBACrD,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,IAAI,OAAO,GAAG,EAAE,CAAC;gBAEjB,QAAQ,KAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,KAAK,OAAO;wBACV,OAAO,GAAG,KAAK,CAAC;wBAChB,QAAQ,GAAG,QAAQ,CAAC;wBACpB,MAAM;oBACR,KAAK,OAAO;wBACV,OAAO,GAAG,QAAQ,CAAC;wBACnB,QAAQ,GAAG,KAAK,CAAC;wBACjB,MAAM;iBACT;gBAED,gBAAgB,CAAC,aAAa,CAAC;;oBAE7B,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,QAAQ,UAAA,EAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,OAAO,IAAI,KAAK,GAAG,CAAC,OAAO,GAAG,OAAO,EAAE;;oBAExF;wBACE,OAAO,EAAE,QAAQ;wBACjB,OAAO,EAAE,KAAK;wBACd,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,QAAQ;wBAClB,OAAO,SAAA;wBACP,OAAO,EAAE,CAAC,OAAO;qBAClB;;oBAED;wBACE,OAAO,EAAE,QAAQ;wBACjB,OAAO,EAAE,QAAQ;wBACjB,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,KAAK;wBACf,OAAO,SAAA;wBACP,OAAO,SAAA;qBACR;iBACF,CAAC,CAAC;aACJ,EAAC;YAEF,4BAAoB;gBAClB,OAAO,IAAIC,qBAAa,CAAC;oBACvB,gBAAgB,EAAE,KAAI,CAAC,QAAQ;yBAC5B,QAAQ,EAAE;yBACV,mBAAmB,CAAC,KAAI,CAAC,QAAQ,CAAC;yBAClC,kBAAkB,EAAE;yBACpB,iBAAiB,EAAE;yBACnB,qBAAqB,CAAC,mBAAmB,CAAC;oBAC7C,aAAa,EAAE,kCAAkC;oBACjD,UAAU,EAAE,KAAI,CAAC,OAAO,CAAC,UAAU;oBACnC,SAAS,EAAE,KAAI,CAAC,IAAI;oBACpB,KAAK,EAAE,KAAI,CAAC,OAAO,CAAC,KAAK;oBACzB,MAAM,EAAE,KAAI,CAAC,OAAO,CAAC,MAAM;iBAC5B,CAAC,CAAC;aACJ,EAAC;YAEF,gCAAwB,UAAC,QAA2C;gBAClE,IAAI,KAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACnC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,UAAC,MAAM;;wBACxC,IAAM,GAAG,GACP,MAAM,CAAC,cAAc,CAAC,QAAQ,KAAK,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;wBAE/D,IAAI,KAAI,CAAC,OAAO,EAAE;4BAChB,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAA,CAAC,CAAC;yBAC9D;6BAAM;4BACL,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;yBACtC;wBAED,IAAM,aAAa,GAAgB,KAAI,CAAC,UAAU,CAAC,aAAa,CAAC;wBACjE,IAAM,cAAc,SAClB,KAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAC5B,0CAAE,SAAS,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,aAAa,IAAI,cAAc,EAAE;4BACnC,IAAM,UAAU,GAAG,aAAa,CAAC,qBAAqB,EAAE,CAAC;4BACzD,IAAM,WAAW,GAAG,cAAc,CAAC,qBAAqB,EAAE,CAAC;4BAC3D,IAAM,UAAU,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;4BAC1D,IAAM,WAAW,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;4BAE7D,IAAM,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;4BAExC,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;yBACzC;qBACF,CAAC,CAAC;iBACJ;aACF,EAAC;YAEF,0BAAkB;gBAChB,IAAI,2CAAiB,IAAI,CAAC,KAAI,CAAC,WAAW,EAAE;oBAC1C,OAAO;iBACR;gBACD,2CAAiB,MAAM,EAAE,CAAC;gBAC1B,sDAAA,KAAI,EAAmB,KAAK,CAAC,CAAC;aAC/B,EAAC;SAnME;QAnCJ,sBACI,4CAAO;iBADX;gBAEE,8CAAqB;aACtB;iBACD,UAAY,OAAyB;gBAArC,iBAWC;gBAVC,IAAI,CAAC,OAAO,IAAI,OAAO,2CAAkB,EAAE;oBACzC,OAAO;iBACR;gBACD,uBAAA,IAAI,YAAY,OAAO,EAAC;gBACxB,6CAAoB,WAAW,EAAE,CAAC;gBAClC,IAAI,OAAO,EAAE;oBACX,uBAAA,IAAI,kBAAkB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC7C,oDAAA,KAAI,CAAkB,CAAC;qBACxB,CAAC,EAAC;iBACJ;aACF;;;WAZA;QAkCD,iDAAe,GAAf;YAAA,iBA+BC;YA9BC,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;gBAEpD,IAAM,eAAe,GAAGC,UAAK,CAC3BC,cAAS,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,IAAI,CAACC,eAAK,CAAC,IAAI,CAAC,CAAC,EACxDD,cAAS,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,IAAI,CAACC,eAAK,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;gBAEF,IAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI;;gBAEtDC,gBAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAI,GAAA,CAAC,CACrE,CAAC;gBAEF,IAAM,iBAAiB,GAAGH,UAAK,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;gBAErE,iBAAiB;qBACd,IAAI,CACHI,sBAAY,CAAC,GAAG,CAAC,EACjBC,8BAAoB,EAAE,EACtBF,gBAAM,CAAC,cAAM,OAAA,KAAI,CAAC,QAAQ,CAAC,SAAS,GAAA,CAAC,EACrCG,mBAAS,yCAAgB,CAC1B;qBACA,SAAS,CAAC,UAAC,OAAO;oBACjB,IAAI,OAAO,IAAI,CAAC,KAAI,CAAC,QAAQ,EAAE;wBAC7B,KAAI,CAAC,WAAW,EAAE,CAAC;qBACpB;yBAAM;wBACL,KAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;iBACF,CAAC,CAAC;aACN;SACF;QAED,6CAAW,GAAX;YACE,wCAAe,IAAI,EAAE,CAAC;YACtB,wCAAe,QAAQ,EAAE,CAAC;YAC1B,+CAAsB;gBACpB,0CAAiB,OAAO,EAAE,CAAC;gBAC3B,uBAAA,IAAI,eAAe,IAAI,EAAC;aACzB;SACF;;;;;gBA7FFzB,cAAS,SAAC;oBACT,QAAQ,EAAE,uBAAuB;oBACjC,IAAI,EAAE;wBACJ,eAAe,EAAE,MAAM;wBACvB,KAAK,EAAE,oBAAoB;qBAC5B;oBACD,QAAQ,EAAE,kBAAkB;iBAC7B;;;gBAxCC0B,eAAO;gBAUPC,eAAU;gBAGVC,WAAM;gBAINC,qBAAgB;gBAPhBF,eAAU;gBANHG,iBAAQ;gBAPRC,mBAAc,uBAsFlBC,aAAQ;;;0BAlCVpB,UAAK,SAAC,qBAAqB;8BAkB3BA,UAAK,SAAC,eAAe;2BAGrBA,UAAK,SAAC,mBAAmB;gCAGzBC,WAAM;gCACNA,WAAM;;;;QCpDT;;;;;gBAhBCoB,aAAQ,SAAC;oBACR,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;qBACxB;oBACD,OAAO,EAAE;wBACPC,mBAAY;wBACZC,eAAU;qBACX;oBACD,OAAO,EAAE;wBACP,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;qBACxB;iBACF;;;ICxBD;;;;ICAA;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-popover.umd.js","sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts","../../../../projects/sd-core/popover/src/public-api.ts","../../../../projects/sd-core/popover/sd-angular-core-popover.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input('class') \r\n set panelClass(classes: string) {\r\n const previousPanelClass = this.#previousPanelClass;\r\n\r\n if (previousPanelClass && previousPanelClass.length) {\r\n previousPanelClass.split(' ').forEach((className: string) => {\r\n this.classList[className] = false;\r\n });\r\n }\r\n\r\n this.#previousPanelClass = classes;\r\n\r\n if (classes && classes.length) {\r\n classes.split(' ').forEach((className: string) => {\r\n this.classList[className] = true;\r\n });\r\n }\r\n };\r\n #previousPanelClass: string;\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdPopoverModule } from './lib/popover.module';\r\n\r\nexport * from './lib/popover/popover.component';\r\nexport * from './lib/directives/popover-trigger.directive';\r\nexport * from './lib/directives/popover-content.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Directive","TemplateRef","uuid.v4","BehaviorSubject","EventEmitter","Component","ViewEncapsulation","ChangeDetectionStrategy","ChangeDetectorRef","DeviceDetectorService","ViewChild","ContentChild","Input","Output","HostListener","Subscription","Subject","TemplatePortal","OverlayConfig","merge","fromEvent","mapTo","filter","debounceTime","distinctUntilChanged","takeUntil","Overlay","ElementRef","NgZone","ViewContainerRef","Platform","Directionality","Optional","NgModule","CommonModule","A11yModule"],"mappings":";;;;;;IAAA;;;;;;;;;;;;;;IAcA;IAEA,IAAI,aAAa,GAAG,UAAS,CAAC,EAAE,CAAC;QAC7B,aAAa,GAAG,MAAM,CAAC,cAAc;aAChC,EAAE,SAAS,EAAE,EAAE,EAAE,YAAY,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YAC5E,UAAU,CAAC,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC;gBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;oBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC;aAEc,SAAS,CAAC,CAAC,EAAE,CAAC;QAC1B,IAAI,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,KAAK,IAAI;YACrC,MAAM,IAAI,SAAS,CAAC,sBAAsB,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,+BAA+B,CAAC,CAAC;QAC9F,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpB,SAAS,EAAE,KAAK,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,EAAE;QACvC,CAAC,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC;IAEM,IAAI,QAAQ,GAAG;QAClB,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,SAAS,QAAQ,CAAC,CAAC;YAC3C,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjD,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBACjB,KAAK,IAAI,CAAC,IAAI,CAAC;oBAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;wBAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAChF;YACD,OAAO,CAAC,CAAC;SACZ,CAAA;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAA;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,EAAE,CAAC;QACX,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC/E,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,OAAO,MAAM,CAAC,qBAAqB,KAAK,UAAU;YAC/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACpE,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1E,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;QACL,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;QACpD,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;YAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;gBAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;oBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;QAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;aAEe,OAAO,CAAC,UAAU,EAAE,SAAS;QACzC,OAAO,UAAU,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,EAAE,CAAA;IACzE,CAAC;aAEe,UAAU,CAAC,WAAW,EAAE,aAAa;QACjD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;YAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IACnI,CAAC;aAEe,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,CAAC,EAAE,SAAS;QACvD,SAAS,KAAK,CAAC,KAAK,IAAI,OAAO,KAAK,YAAY,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,UAAU,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;QAC5G,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,EAAE,UAAU,OAAO,EAAE,MAAM;YACrD,SAAS,SAAS,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC3F,SAAS,QAAQ,CAAC,KAAK,IAAI,IAAI;gBAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aAAE;YAAC,OAAO,CAAC,EAAE;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC;aAAE,EAAE;YAC9F,SAAS,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,EAAE;YAC9G,IAAI,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;SACzE,CAAC,CAAC;IACP,CAAC;aAEe,WAAW,CAAC,OAAO,EAAE,IAAI;QACrC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,cAAa,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACjH,OAAO,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,MAAM,KAAK,UAAU,KAAK,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAa,OAAO,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,SAAS,IAAI,CAAC,CAAC,IAAI,OAAO,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAClE,SAAS,IAAI,CAAC,EAAE;YACZ,IAAI,CAAC;gBAAE,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;YAC9D,OAAO,CAAC;gBAAE,IAAI;oBACV,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI;wBAAE,OAAO,CAAC,CAAC;oBAC7J,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxC,QAAQ,EAAE,CAAC,CAAC,CAAC;wBACT,KAAK,CAAC,CAAC;wBAAC,KAAK,CAAC;4BAAE,CAAC,GAAG,EAAE,CAAC;4BAAC,MAAM;wBAC9B,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;wBACxD,KAAK,CAAC;4BAAE,CAAC,CAAC,KAAK,EAAE,CAAC;4BAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;4BAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;4BAAC,SAAS;wBACjD,KAAK,CAAC;4BAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;wBACjD;4BACI,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;gCAAE,CAAC,GAAG,CAAC,CAAC;gCAAC,SAAS;6BAAE;4BAC5G,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACtF,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,GAAG,EAAE,CAAC;gCAAC,MAAM;6BAAE;4BACrE,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gCAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gCAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gCAAC,MAAM;6BAAE;4BACnE,IAAI,CAAC,CAAC,CAAC,CAAC;gCAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;4BACtB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;4BAAC,SAAS;qBAC9B;oBACD,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;iBAC9B;gBAAC,OAAO,CAAC,EAAE;oBAAE,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAAC,CAAC,GAAG,CAAC,CAAC;iBAAE;wBAAS;oBAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAAE;YAC1D,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;SACpF;IACL,CAAC;IAEM,IAAI,eAAe,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QAC9D,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,cAAa,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzF,CAAC,KAAK,UAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;QACtB,IAAI,EAAE,KAAK,SAAS;YAAE,EAAE,GAAG,CAAC,CAAC;QAC7B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC,CAAC,CAAC;aAEa,YAAY,CAAC,CAAC,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;gBAAE,eAAe,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClH,CAAC;aAEe,QAAQ,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9E,IAAI,CAAC;YAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO;gBAC1C,IAAI,EAAE;oBACF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM;wBAAE,CAAC,GAAG,KAAK,CAAC,CAAC;oBACnC,OAAO,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;iBAC3C;aACJ,CAAC;QACF,MAAM,IAAI,SAAS,CAAC,CAAC,GAAG,yBAAyB,GAAG,iCAAiC,CAAC,CAAC;IAC3F,CAAC;aAEe,MAAM,CAAC,CAAC,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,OAAO,MAAM,KAAK,UAAU,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,CAAC;YAAE,OAAO,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI;YACA,OAAO,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI;gBAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;SAC9E;QACD,OAAO,KAAK,EAAE;YAAE,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAAE;gBAC/B;YACJ,IAAI;gBACA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACpD;oBACO;gBAAE,IAAI,CAAC;oBAAE,MAAM,CAAC,CAAC,KAAK,CAAC;aAAE;SACpC;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,QAAQ;QACpB,KAAK,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE;YAC9C,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC;IACd,CAAC;IAED;aACgB,cAAc;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACpF,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;YAC5C,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC7D,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,OAAO,CAAC,CAAC;IACb,CAAC;aAEe,aAAa,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI;QACxC,IAAI,IAAI,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE;oBACpB,IAAI,CAAC,EAAE;wBAAE,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrD,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;aACJ;QACD,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;aAEe,OAAO,CAAC,CAAC;QACrB,OAAO,IAAI,YAAY,OAAO,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,IAAI,IAAI,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC;aAEe,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QAC9D,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACtH,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAC1I,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI;YAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAAE;QAAC,OAAO,CAAC,EAAE;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAAE,EAAE;QAClF,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,YAAY,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;QACxH,SAAS,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE;QAClD,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;YAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;IACtF,CAAC;aAEe,gBAAgB,CAAC,CAAC;QAC9B,IAAI,CAAC,EAAE,CAAC,CAAC;QACT,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5I,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE;IACnJ,CAAC;aAEe,aAAa,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,aAAa;YAAE,MAAM,IAAI,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACvF,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,OAAO,QAAQ,KAAK,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,cAAc,OAAO,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACjN,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,OAAO,EAAE,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE;QAChK,SAAS,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAS,CAAC,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,EAAE;IAChI,CAAC;aAEe,oBAAoB,CAAC,MAAM,EAAE,GAAG;QAC5C,IAAI,MAAM,CAAC,cAAc,EAAE;YAAE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;SAAE;aAAM;YAAE,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAAE;QAC/G,OAAO,MAAM,CAAC;IAClB,CAAC;IAAA,CAAC;IAEF,IAAI,kBAAkB,GAAG,MAAM,CAAC,MAAM,IAAI,UAAS,CAAC,EAAE,CAAC;QACnD,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC,IAAI,UAAS,CAAC,EAAE,CAAC;QACd,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC;aAEc,YAAY,CAAC,GAAG;QAC5B,IAAI,GAAG,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,GAAG,CAAC;QACtC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,GAAG,IAAI,IAAI;YAAE,KAAK,IAAI,CAAC,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAE,eAAe,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;QACzI,kBAAkB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChC,OAAO,MAAM,CAAC;IAClB,CAAC;aAEe,eAAe,CAAC,GAAG;QAC/B,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,IAAI,GAAG,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;IAC5D,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAC3D,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;QACnL,OAAO,IAAI,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClG,CAAC;aAEe,sBAAsB,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAClE,IAAI,IAAI,KAAK,GAAG;YAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,CAAC,CAAC;QACxE,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,+CAA+C,CAAC,CAAC;QAC7F,IAAI,OAAO,KAAK,KAAK,UAAU,GAAG,QAAQ,KAAK,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,yEAAyE,CAAC,CAAC;QAClL,OAAO,CAAC,IAAI,KAAK,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;IAC9G;;;QCvOE,iCAAmB,WAA6B;YAA7B,gBAAW,GAAX,WAAW,CAAkB;SAAK;;;;gBALtDA,cAAS,SAAC;oBACT,QAAQ,EAAE,oBAAoB;iBAC/B;;;gBAJmBC,gBAAW;;;;;QC6F7B,0BACU,KAAwB,EACxB,aAAoC;YAF9C,iBAKC;YAJS,UAAK,GAAL,KAAK,CAAmB;YACxB,kBAAa,GAAb,aAAa,CAAuB;YAzD9C,cAAS,GAA4B,EAAE,CAAC;YACxC,YAAO,GAAG,sBAAoBC,OAAO,EAAI,CAAC;YAC1C,qBAAgB,GAAG,KAAK,CAAC;YACzB,gBAAW,GAAG,IAAIC,oBAAe,CAAU,KAAK,CAAC,CAAC;YAClD,YAAO,GAA4B,IAAI,CAAC;YAwBxC,sCAA4B;YACnB,UAAK,GAAgC,IAAI,CAAC;YAC1C,WAAM,GAAW,MAAM,CAAC;YACxB,SAAI,GAAqE,QAAQ,CAAC;YAS3F,6BAAqB;YAEF,WAAM,GAAG,IAAIC,iBAAY,EAAQ,CAAC;YAClC,WAAM,GAAG,IAAIA,iBAAY,EAAO,CAAC;YAwDpD,UAAK,GAAG;gBACN,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7B,KAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aACpB,CAAC;YAEF,uBAAkB,GAAG,UAAC,GAA6B;gBAA7B,oBAAA,EAAA,MAAgB,KAAI,CAAC,QAAQ;;gBACjD,IAAM,OAAO,GAAG,KAAI,CAAC,SAAS,CAAC;gBAC/B,OAAO,CAAC,kBAAkB,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC;gBAC9C,OAAO,CAAC,kBAAkB,CAAC,GAAG,GAAG,KAAK,OAAO,CAAC;gBAE9C,MAAA,KAAI,CAAC,KAAK,0CAAE,YAAY,GAAG;aAC5B,CAAC;YAEF,uBAAkB,GAAG,UAAC,MAAc;gBAClC,IAAM,YAAY,GAAgB,QAAQ,CAAC,aAAa,CAAC,MAAI,KAAI,CAAC,OAAO,uBAAoB,CAAC,CAAC;gBAC/F,IAAI,YAAY,IAAI,MAAM,EAAE;oBAC1B,IAAI;wBACF,IAAM,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;wBACpD,IAAM,MAAM,GAAG,IAAI,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;wBACpD,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,GAAG,MAAM,CAAC;wBACvC,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC;wBAC9B,YAAY,CAAC,KAAK,CAAC,SAAS,GAAG,gBAAc,UAAU,uBAAkB,UAAU,QAAK,CAAC;qBAC1F;oBAAC,OAAO,KAAK,EAAE,GAAE;iBACnB;aACF,CAAC;YAEF,kBAAa,GAAG,UAAC,OAAgB;gBAC/B,IAAI,CAAC,OAAO,EAAE;;;oBAGZ,IAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC;oBAC7C,IAAM,YAAY,GAAG,KAAI,CAAC,KAAK,CAAC,aAAa,CAAC;oBAC9C,IAAI,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,CAAC,aAAa,GAAG;wBACzC,OAAO;qBACR;iBACF;gBACD,KAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAChC,CAAC;YA7EA,IAAI,CAAC,gBAAgB,GAAG,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC;SACpD;QAlDD,sBACI,wCAAU;iBADd,UACe,OAAe;gBAD9B,iBAiBC;gBAfC,IAAM,kBAAkB,oDAA2B,CAAC;gBAEpD,IAAI,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,EAAE;oBACnD,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,SAAiB;wBACtD,KAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;qBACnC,CAAC,CAAC;iBACJ;gBAED,uBAAA,IAAI,uBAAuB,OAAO,EAAC;gBAEnC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE;oBAC7B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,SAAiB;wBAC3C,KAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;qBAClC,CAAC,CAAC;iBACJ;aACF;;;WAAA;QAAA,CAAC;QAKF,sBACI,sCAAQ;iBADZ;gBAEE,gDAAuB;aACxB;iBACD,UAAa,KAAe;gBAC1B,uBAAA,IAAI,cAAc,KAAK,EAAC;gBACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC3B;;;WAJA;QAWD,qCAAU,GAAV,UAAW,aAAa;;YACtB,UAAI,IAAI,CAAC,KAAK,0CAAE,aAAa,EAAE;gBAC7B,IAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAClE,IAAI,CAAC,QAAQ,EAAE;oBACb,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;iBAC3B;aACF;SACF;QASD,sCAAW,GAAX,UAAY,OAAsB;YAChC,IAAG,OAAO,CAAC,IAAI,EAAE;gBACf,IAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;gBACvC,IAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;gBAC3C,IAAI,OAAO,EAAE;oBACX,IAAI,CAAC,SAAS,CAAC,iBAAe,OAAS,CAAC,GAAG,KAAK,CAAC;iBAClD;gBACD,IAAI,IAAI,EAAE;oBACR,IAAI,CAAC,SAAS,CAAC,iBAAe,IAAM,CAAC,GAAG,IAAI,CAAC;iBAC9C;aACF;SACF;QAED,mCAAQ,GAAR;YACE,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;gBAC1B,QAAQ,IAAI,CAAC,KAAK;oBAChB,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;oBACR,KAAK,IAAI;wBACP,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;wBACpB,MAAM;iBACT;aACF;SACF;QAED,sCAAW,GAAX;YACE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvB,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;SAC7B;;;;;gBA1GFC,cAAS,SAAC;oBACT,QAAQ,EAAE,YAAY;oBACtB,2rBAAuC;oBAEvC,aAAa,EAAEC,sBAAiB,CAAC,IAAI;oBACrC,QAAQ,EAAE,WAAW;oBACrB,eAAe,EAAEC,4BAAuB,CAAC,MAAM;;iBAChD;;;gBAlCCC,sBAAiB;gBAkBVC,uCAAqB;;;8BAwB3BC,cAAS,SAACT,gBAAW;wBACrBS,cAAS,SAAC,OAAO;iCACjBC,iBAAY,SAAC,uBAAuB;6BAEpCC,UAAK,SAAC,OAAO;wBAmBbA,UAAK;yBACLA,UAAK;uBACLA,UAAK;2BACLA,UAAK;yBAULC,WAAM;yBACNA,WAAM;6BAENC,iBAAY,SAAC,gBAAgB,EAAE,CAAC,eAAe,CAAC;;;;;QCJjD,iCACU,QAAiB,EACjB,QAAiC,EACjC,OAAe,EACf,gBAAkC,EAClC,UAAsB,EACtB,QAAkB,EACN,IAAoB;YAP1C,iBAQI;YAPM,aAAQ,GAAR,QAAQ,CAAS;YACjB,aAAQ,GAAR,QAAQ,CAAyB;YACjC,YAAO,GAAP,OAAO,CAAQ;YACf,qBAAgB,GAAhB,gBAAgB,CAAkB;YAClC,eAAU,GAAV,UAAU,CAAY;YACtB,aAAQ,GAAR,QAAQ,CAAU;YACN,SAAI,GAAJ,IAAI,CAAgB;YAzC1C,sBAAiC,IAAI,EAAC;YACtC,yBAAiBC,iBAAY,CAAC,KAAK,EAAC;YACpC,0BAAwB;YACxB,oBAAY,IAAIC,YAAO,EAAE,EAAC;YAE1B,gBAAW,GAAG,KAAK,CAAC;YAkBpB,2BAA2B;YAM3B,aAAQ,GAAY,KAAK,CAAC;YAEhB,kBAAa,GAAG,IAAIZ,iBAAY,EAAQ,CAAC;YACzC,kBAAa,GAAG,IAAIA,iBAAY,EAAQ,CAAC;YAsDnD,gBAAW,GAAG;gBACZ,IAAI,KAAI,CAAC,WAAW,EAAE;oBACpB,OAAO;iBACR;gBAED,IAAM,UAAU,GAAG,mDAAA,KAAI,CAAiB,CAAC;gBACzC,IAAM,aAAa,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;gBAC7C,IAAM,gBAAgB,GACpB,aAAa,CAAC,gBAAqD,CAAC;gBACtE,iDAAA,KAAI,EAAc,gBAAgB,CAAC,CAAC;gBACpC,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC;gBAClC,UAAU,CAAC,MAAM,CAAC,+CAAA,KAAI,CAAa,CAAC,CAAC;gBACrC,KAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAI,CAAC;gBAC5B,sDAAA,KAAI,EAAmB,IAAI,CAAC,CAAC;gBAC7B,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAI,CAAC,WAAW,CAAC,CAAC;aAC5C,CAAC;YAEF,iBAAY,GAAG;gBACb,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;aAC5B,CAAC;YAEF,4BAAoB,UAAC,MAAe;gBAClC,KAAI,CAAC,WAAW,GAAG,MAAM,CAAC;gBAC1B,KAAI,CAAC,WAAW,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,EAAE,GAAG,KAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;aAC1E,EAAC;YAEF,qBAAa;;gBACX,IACE,uCAAa;oBACb,uCAAa,WAAW,KAAK,KAAI,CAAC,OAAO,CAAC,WAAW;oBACrD,OAAA,uCAAa,OAAO,0CAAE,IAAI,MAAK,KAAI,CAAC,WAAW,EAC/C;oBACA,uBAAA,KAAI,WAAW,IAAIa,qBAAc,CAC/B,KAAI,CAAC,OAAO,CAAC,WAAW,EACxB,KAAI,CAAC,gBAAgB,EACrB;wBACE,IAAI,EAAE,KAAI,CAAC,WAAW;qBACvB,CACF,EAAC;iBACH;gBAED,8CAAoB;aACrB,EAAC;YAEF,yBAAiB;gBACf,IAAI,2CAAiB,EAAE;oBACrB,IAAM,MAAM,GAAG,sDAAA,KAAI,CAAoB,CAAC;oBACxC,0DAAA,KAAI,EACF,MAAM,CAAC,gBAAqD,CAC7D,CAAC;oBACF,uBAAA,KAAI,eAAe,KAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAC;iBACjD;gBAED,kDAAwB;aACzB,EAAC;YAEF,uBAAe,UAAC,gBAAmD;gBACjE,IAAI,OAAO,GAA+B,QAAQ,CAAC;gBACnD,IAAI,OAAO,GAAgC,KAAK,CAAC;gBACjD,IAAI,QAAQ,GAA+B,QAAQ,CAAC;gBACpD,IAAI,QAAQ,GAAgC,QAAQ,CAAC;gBACrD,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,IAAI,OAAO,GAAG,EAAE,CAAC;gBAEjB,QAAQ,KAAI,CAAC,OAAO,CAAC,QAAQ;oBAC3B,KAAK,OAAO;wBACV,OAAO,GAAG,KAAK,CAAC;wBAChB,QAAQ,GAAG,QAAQ,CAAC;wBACpB,MAAM;oBACR,KAAK,OAAO;wBACV,OAAO,GAAG,QAAQ,CAAC;wBACnB,QAAQ,GAAG,KAAK,CAAC;wBACjB,MAAM;iBACT;gBAED,gBAAgB,CAAC,aAAa,CAAC;;oBAE7B,EAAE,OAAO,SAAA,EAAE,OAAO,SAAA,EAAE,QAAQ,UAAA,EAAE,QAAQ,UAAA,EAAE,OAAO,EAAE,OAAO,IAAI,KAAK,GAAG,CAAC,OAAO,GAAG,OAAO,EAAE;;oBAExF;wBACE,OAAO,EAAE,QAAQ;wBACjB,OAAO,EAAE,KAAK;wBACd,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,QAAQ;wBAClB,OAAO,SAAA;wBACP,OAAO,EAAE,CAAC,OAAO;qBAClB;;oBAED;wBACE,OAAO,EAAE,QAAQ;wBACjB,OAAO,EAAE,QAAQ;wBACjB,QAAQ,EAAE,QAAQ;wBAClB,QAAQ,EAAE,KAAK;wBACf,OAAO,SAAA;wBACP,OAAO,SAAA;qBACR;iBACF,CAAC,CAAC;aACJ,EAAC;YAEF,4BAAoB;gBAClB,OAAO,IAAIC,qBAAa,CAAC;oBACvB,gBAAgB,EAAE,KAAI,CAAC,QAAQ;yBAC5B,QAAQ,EAAE;yBACV,mBAAmB,CAAC,KAAI,CAAC,QAAQ,CAAC;yBAClC,kBAAkB,EAAE;yBACpB,iBAAiB,EAAE;yBACnB,qBAAqB,CAAC,mBAAmB,CAAC;oBAC7C,aAAa,EAAE,kCAAkC;oBACjD,UAAU,EAAE,KAAI,CAAC,OAAO,CAAC,UAAU;oBACnC,SAAS,EAAE,KAAI,CAAC,IAAI;oBACpB,KAAK,EAAE,KAAI,CAAC,OAAO,CAAC,KAAK;oBACzB,MAAM,EAAE,KAAI,CAAC,OAAO,CAAC,MAAM;iBAC5B,CAAC,CAAC;aACJ,EAAC;YAEF,gCAAwB,UAAC,QAA2C;gBAClE,IAAI,KAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;oBACnC,QAAQ,CAAC,eAAe,CAAC,SAAS,CAAC,UAAC,MAAM;;wBACxC,IAAM,GAAG,GACP,MAAM,CAAC,cAAc,CAAC,QAAQ,KAAK,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;wBAE/D,IAAI,KAAI,CAAC,OAAO,EAAE;4BAChB,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAM,OAAA,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAA,CAAC,CAAC;yBAC9D;6BAAM;4BACL,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;yBACtC;wBAED,IAAM,aAAa,GAAgB,KAAI,CAAC,UAAU,CAAC,aAAa,CAAC;wBACjE,IAAM,cAAc,SAClB,KAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAC5B,0CAAE,SAAS,CAAC,CAAC,CAAC,CAAC;wBAChB,IAAI,aAAa,IAAI,cAAc,EAAE;4BACnC,IAAM,UAAU,GAAG,aAAa,CAAC,qBAAqB,EAAE,CAAC;4BACzD,IAAM,WAAW,GAAG,cAAc,CAAC,qBAAqB,EAAE,CAAC;4BAC3D,IAAM,UAAU,GAAG,UAAU,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,GAAG,CAAC,CAAC;4BAC1D,IAAM,WAAW,GAAG,WAAW,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,GAAG,CAAC,CAAC;4BAE7D,IAAM,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;4BAExC,KAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;yBACzC;qBACF,CAAC,CAAC;iBACJ;aACF,EAAC;YAEF,0BAAkB;gBAChB,IAAI,2CAAiB,IAAI,CAAC,KAAI,CAAC,WAAW,EAAE;oBAC1C,OAAO;iBACR;gBACD,2CAAiB,MAAM,EAAE,CAAC;gBAC1B,sDAAA,KAAI,EAAmB,KAAK,CAAC,CAAC;aAC/B,EAAC;SAnME;QAnCJ,sBACI,4CAAO;iBADX;gBAEE,8CAAqB;aACtB;iBACD,UAAY,OAAyB;gBAArC,iBAWC;gBAVC,IAAI,CAAC,OAAO,IAAI,OAAO,2CAAkB,EAAE;oBACzC,OAAO;iBACR;gBACD,uBAAA,IAAI,YAAY,OAAO,EAAC;gBACxB,6CAAoB,WAAW,EAAE,CAAC;gBAClC,IAAI,OAAO,EAAE;oBACX,uBAAA,IAAI,kBAAkB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;wBAC7C,oDAAA,KAAI,CAAkB,CAAC;qBACxB,CAAC,EAAC;iBACJ;aACF;;;WAZA;QAkCD,iDAAe,GAAf;YAAA,iBA+BC;YA9BC,IAAI,IAAI,CAAC,OAAO,EAAE;gBAChB,IAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC;gBAEpD,IAAM,eAAe,GAAGC,UAAK,CAC3BC,cAAS,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,IAAI,CAACC,eAAK,CAAC,IAAI,CAAC,CAAC,EACxDD,cAAS,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC,IAAI,CAACC,eAAK,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;gBAEF,IAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI;;gBAEtDC,gBAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,KAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAI,GAAA,CAAC,CACrE,CAAC;gBAEF,IAAM,iBAAiB,GAAGH,UAAK,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;gBAErE,iBAAiB;qBACd,IAAI,CACHI,sBAAY,CAAC,GAAG,CAAC,EACjBC,8BAAoB,EAAE,EACtBF,gBAAM,CAAC,cAAM,OAAA,KAAI,CAAC,QAAQ,CAAC,SAAS,GAAA,CAAC,EACrCG,mBAAS,yCAAgB,CAC1B;qBACA,SAAS,CAAC,UAAC,OAAO;oBACjB,IAAI,OAAO,IAAI,CAAC,KAAI,CAAC,QAAQ,EAAE;wBAC7B,KAAI,CAAC,WAAW,EAAE,CAAC;qBACpB;yBAAM;wBACL,KAAI,CAAC,YAAY,EAAE,CAAC;qBACrB;iBACF,CAAC,CAAC;aACN;SACF;QAED,6CAAW,GAAX;YACE,wCAAe,IAAI,EAAE,CAAC;YACtB,wCAAe,QAAQ,EAAE,CAAC;YAC1B,+CAAsB;gBACpB,0CAAiB,OAAO,EAAE,CAAC;gBAC3B,uBAAA,IAAI,eAAe,IAAI,EAAC;aACzB;SACF;;;;;gBA7FFzB,cAAS,SAAC;oBACT,QAAQ,EAAE,uBAAuB;oBACjC,IAAI,EAAE;wBACJ,eAAe,EAAE,MAAM;wBACvB,KAAK,EAAE,oBAAoB;qBAC5B;oBACD,QAAQ,EAAE,kBAAkB;iBAC7B;;;gBAxCC0B,eAAO;gBAUPC,eAAU;gBAGVC,WAAM;gBAINC,qBAAgB;gBAPhBF,eAAU;gBANHG,iBAAQ;gBAPRC,mBAAc,uBAsFlBC,aAAQ;;;0BAlCVpB,UAAK,SAAC,qBAAqB;8BAkB3BA,UAAK,SAAC,eAAe;2BAGrBA,UAAK,SAAC,mBAAmB;gCAGzBC,WAAM;gCACNA,WAAM;;;;QCpDT;;;;;gBAhBCoB,aAAQ,SAAC;oBACR,YAAY,EAAE;wBACZ,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;qBACxB;oBACD,OAAO,EAAE;wBACPC,mBAAY;wBACZC,eAAU;qBACX;oBACD,OAAO,EAAE;wBACP,gBAAgB;wBAChB,uBAAuB;wBACvB,uBAAuB;qBACxB;iBACF;;;ICxBD;;;;ICAA;;;;;;;;;;;;;;;;;"}
|
|
@@ -12,5 +12,5 @@
|
|
|
12
12
|
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
|
-
***************************************************************************** */Object.create;Object.create;function v(e,o,t,r){if("a"===t&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof o?e!==o||!r:!o.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===t?r:"a"===t?r.call(e):r?r.value:o.get(e)}function u(e,o,t,r,n){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!n)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof o?e!==o||!n:!o.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?n.call(e,t):n?n.value=t:o.set(e,t),t}var f,h=function(e){this.templateRef=e};h.decorators=[{type:o.Directive,args:[{selector:"[sdPopoverContent]"}]}],h.ctorParameters=function(){return[{type:o.TemplateRef}]};var b,g,w,m,y,x,k,C,P,O,M,T,E=function(){function e(e,t){var n=this;this.cdRef=e,this.deviceService=t,this.classList={},this.panelId="sd-popover-panel-"+r.v4(),this.isMobileOrTablet=!1,this.mouseState$=new p.BehaviorSubject(!1),this.trigger=null,this.panelClass="",this.width="sm",this.height="auto",this.type="normal",f.set(this,void 0),this.closed=new o.EventEmitter,this.opened=new o.EventEmitter,this.close=function(){n.mouseState$.next(!1),n.closed.emit()},this.setPositionClasses=function(e){var o;void 0===e&&(e=n.position);var t=n.classList;t["sd-popover-above"]="above"===e,t["sd-popover-below"]="below"===e,null===(o=n.cdRef)||void 0===o||o.markForCheck()},this.addArrowTranslateX=function(e){var o=document.querySelector("#"+n.panelId+" .sd-popover-arrow");if(o&&e)try{var t=window.getComputedStyle(o),r=new WebKitCSSMatrix(t.transform),p=r.m41+e,a=r.m42;o.style.transform="translateX("+p+"px) translateY("+a+"px)"}catch(e){}},this.setMouseState=function(e){if(!e){var o=document.activeElement,t=n.panel.nativeElement;if(null==t?void 0:t.contains(o))return}n.mouseState$.next(e)},this.isMobileOrTablet=!t.isDesktop()}return Object.defineProperty(e.prototype,"position",{get:function(){return v(this,f)},set:function(e){u(this,f,e),this.setPositionClasses()},enumerable:!1,configurable:!0}),e.prototype._hostClick=function(e){var o;(null===(o=this.panel)||void 0===o?void 0:o.nativeElement)&&(this.panel.nativeElement.contains(e)||this.setMouseState(!1))},e.prototype.ngOnChanges=function(e){var o;if(e.type){var t=e.type.currentValue,r=e.type.previousValue;this.classList=null!==(o=this.classList)&&void 0!==o?o:{"sd-popover--normal":!0},r&&(this.classList["sd-popover--"+r]=!1),t&&(this.classList["sd-popover--"+t]=!0)}},e.prototype.ngOnInit=function(){if(this.setPositionClasses(),this.width=this.width||"80vw",!this.isMobileOrTablet)switch(this.width){case"lg":this.width="80vw";break;case"md":this.width="60vw";break;case"sm":this.width="40vw"}},e.prototype.ngOnDestroy=function(){this.closed.complete(),this.opened.complete(),this.mouseState$.complete()},e}();f=new WeakMap,E.decorators=[{type:o.Component,args:[{selector:"sd-popover",template:'<ng-template let-data="data">\r\n <div\r\n class="sd-popover-panel mat-elevation-z6"\r\n [id]="panelId"\r\n [ngClass]="classList"\r\n tabindex="-1"\r\n role="menu"\r\n (mouseenter)="setMouseState(true)"\r\n (mouseleave)="setMouseState(false)"\r\n cdkTrapFocus\r\n #panel\r\n >\r\n <div class="sd-popover-content">\r\n <ng-container *ngIf="popoverContent?.templateRef">\r\n <ng-container *ngTemplateOutlet="popoverContent.templateRef; context:{data: data}"></ng-container>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <div class="sd-popover-arrow"></div>\r\n </div>\r\n</ng-template>',encapsulation:o.ViewEncapsulation.None,exportAs:"sdPopover",changeDetection:o.ChangeDetectionStrategy.OnPush,styles:['.text-black400{color:#757575}.sd-popover-panel{background:#fff;height:100%;position:relative;width:100%}.sd-popover-panel .sd-popover-arrow{clear:both;height:0;left:50%;position:absolute;width:0}.sd-popover-panel.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%;transform:translateX(-6px) translateY(-1px)}.sd-popover-panel.sd-popover-above:after{content:" ";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%;transform:translateX(-6px) translateY(1px)}.sd-popover-panel.sd-popover-below:before{content:" ";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel .sd-popover-content{height:100%}.sd-popover--normal{background:#fff;color:#000}.sd-popover--normal.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--normal.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--primary{background:#e7e9ff;color:#2962ff}.sd-popover--primary.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--primary.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--info{background:#e7e9ff;color:#2962ff}.sd-popover--info.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--info.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--success{background:#dbefdc;color:#4caf50}.sd-popover--success.sd-popover-above .sd-popover-arrow{border-color:#dbefdc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--success.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #dbefdc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--warning{background:#ffeacc;color:#ff9600}.sd-popover--warning.sd-popover-above .sd-popover-arrow{border-color:#ffeacc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--warning.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #ffeacc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--danger{background:#fed5d0;color:#f82c13}.sd-popover--danger.sd-popover-above .sd-popover-arrow{border-color:#fed5d0 transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--danger.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fed5d0;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover-content{padding:16px}']}]}],E.ctorParameters=function(){return[{type:o.ChangeDetectorRef},{type:n.DeviceDetectorService}]},E.propDecorators={templateRef:[{type:o.ViewChild,args:[o.TemplateRef]}],panel:[{type:o.ViewChild,args:["panel"]}],popoverContent:[{type:o.ContentChild,args:[h]}],panelClass:[{type:o.Input}],width:[{type:o.Input}],height:[{type:o.Input}],type:[{type:o.Input}],position:[{type:o.Input}],closed:[{type:o.Output}],opened:[{type:o.Output}],_hostClick:[{type:o.HostListener,args:["document:click",["$event.target"]]}]};var D=function(){function e(e,t,r,n,a,i,l){var c=this;this._overlay=e,this._element=t,this._ngZone=r,this.viewContainerRef=n,this.elementRef=a,this.platform=i,this._dir=l,b.set(this,null),g.set(this,p.Subscription.EMPTY),w.set(this,void 0),m.set(this,new p.Subject),this.popoverOpen=!1,y.set(this,void 0),this.disabled=!1,this.popoverOpened=new o.EventEmitter,this.popoverClosed=new o.EventEmitter,this.openPopover=function(){if(!c.popoverOpen){var e=v(c,C).call(c),o=e.getConfig(),t=o.positionStrategy;v(c,P).call(c,t),o.hasBackdrop=!1,e.attach(v(c,k).call(c)),c.popover.trigger=c,v(c,x).call(c,!0),c.popover.opened.next(c.popoverData)}},this.closePopover=function(){c.popover.closed.emit()},x.set(this,(function(e){c.popoverOpen=e,c.popoverOpen?c.popoverOpened.emit():c.popoverClosed.emit()})),k.set(this,(function(){var e;return v(c,w)&&v(c,w).templateRef===c.popover.templateRef&&(null===(e=v(c,w).context)||void 0===e?void 0:e.data)===c.popoverData||u(c,w,new d.TemplatePortal(c.popover.templateRef,c.viewContainerRef,{data:c.popoverData})),v(c,w)})),C.set(this,(function(){if(!v(c,b)){var e=v(c,O).call(c);v(c,M).call(c,e.positionStrategy),u(c,b,c._overlay.create(e))}return v(c,b)})),P.set(this,(function(e){var o="top",t="bottom";switch(c.popover.position){case"above":o="top",t="bottom";break;case"below":o="bottom",t="top"}e.withPositions([{originX:"center",originY:o,overlayX:"center",overlayY:t,offsetY:"top"==o?-16:16},{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetX:0,offsetY:-16},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetX:0,offsetY:16}])})),O.set(this,(function(){return new s.OverlayConfig({positionStrategy:c._overlay.position().flexibleConnectedTo(c._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".sd-popover-panel"),backdropClass:"cdk-overlay-transparent-backdrop",panelClass:c.popover.panelClass,direction:c._dir,width:c.popover.width,height:c.popover.height})})),M.set(this,(function(e){c.popover.setPositionClasses&&e.positionChanges.subscribe((function(e){var o,t="top"===e.connectionPair.overlayY?"below":"above";c._ngZone?c._ngZone.run((function(){return c.popover.setPositionClasses(t)})):c.popover.setPositionClasses(t);var r=c.elementRef.nativeElement,n=null===(o=c.viewContainerRef.get(0))||void 0===o?void 0:o.rootNodes[0];if(r&&n){var p=r.getBoundingClientRect(),a=n.getBoundingClientRect(),s=p.left+p.width/2-(a.left+a.width/2);c.popover.addArrowTranslateX(s)}}))})),T.set(this,(function(){v(c,b)&&c.popoverOpen&&(v(c,b).detach(),v(c,x).call(c,!1))}))}return Object.defineProperty(e.prototype,"popover",{get:function(){return v(this,y)},set:function(e){var o=this;e&&e!==v(this,y)&&(u(this,y,e),v(this,g).unsubscribe(),e&&u(this,g,e.closed.subscribe((function(){v(o,T).call(o)}))))},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;if(this.popover){var o=this.elementRef.nativeElement,t=p.merge(p.fromEvent(o,"mouseenter").pipe(l.mapTo(!0)),p.fromEvent(o,"mouseleave").pipe(l.mapTo(!1))),r=this.popover.mouseState$.pipe(l.filter((function(o){return!e.popover.trigger||e.popover.trigger==e})));p.merge(r,t).pipe(l.debounceTime(100),l.distinctUntilChanged(),l.filter((function(){return e.platform.isBrowser})),l.takeUntil(v(this,m))).subscribe((function(o){o&&!e.disabled?e.openPopover():e.closePopover()}))}},e.prototype.ngOnDestroy=function(){v(this,m).next(),v(this,m).complete(),v(this,b)&&(v(this,b).dispose(),u(this,b,null))},e}();b=new WeakMap,g=new WeakMap,w=new WeakMap,m=new WeakMap,y=new WeakMap,x=new WeakMap,k=new WeakMap,C=new WeakMap,P=new WeakMap,O=new WeakMap,M=new WeakMap,T=new WeakMap,D.decorators=[{type:o.Directive,args:[{selector:"[sdPopoverTriggerFor]",host:{"aria-haspopup":"true",class:"sd-popover-trigger"},exportAs:"sdPopoverTrigger"}]}],D.ctorParameters=function(){return[{type:s.Overlay},{type:o.ElementRef},{type:o.NgZone},{type:o.ViewContainerRef},{type:o.ElementRef},{type:i.Platform},{type:a.Directionality,decorators:[{type:o.Optional}]}]},D.propDecorators={popover:[{type:o.Input,args:["sdPopoverTriggerFor"]}],popoverData:[{type:o.Input,args:["sdPopoverData"]}],disabled:[{type:o.Input,args:["sdPopoverDisabled"]}],popoverOpened:[{type:o.Output}],popoverClosed:[{type:o.Output}]};var R=function(){};R.decorators=[{type:o.NgModule,args:[{declarations:[E,D,h],imports:[t.CommonModule,c.A11yModule],exports:[E,D,h]}]}],e.PopoverComponent=E,e.PopoverContentDirective=h,e.PopoverTriggerDirective=D,e.SdPopoverModule=R,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
15
|
+
***************************************************************************** */Object.create;Object.create;function v(e,o,t,r){if("a"===t&&!r)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof o?e!==o||!r:!o.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===t?r:"a"===t?r.call(e):r?r.value:o.get(e)}function u(e,o,t,r,n){if("m"===r)throw new TypeError("Private method is not writable");if("a"===r&&!n)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof o?e!==o||!n:!o.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===r?n.call(e,t):n?n.value=t:o.set(e,t),t}var f,h,b=function(e){this.templateRef=e};b.decorators=[{type:o.Directive,args:[{selector:"[sdPopoverContent]"}]}],b.ctorParameters=function(){return[{type:o.TemplateRef}]};var g,w,m,y,x,k,C,P,O,M,E,T,D=function(){function e(e,t){var n=this;this.cdRef=e,this.deviceService=t,this.classList={},this.panelId="sd-popover-panel-"+r.v4(),this.isMobileOrTablet=!1,this.mouseState$=new p.BehaviorSubject(!1),this.trigger=null,f.set(this,void 0),this.width="sm",this.height="auto",this.type="normal",h.set(this,void 0),this.closed=new o.EventEmitter,this.opened=new o.EventEmitter,this.close=function(){n.mouseState$.next(!1),n.closed.emit()},this.setPositionClasses=function(e){var o;void 0===e&&(e=n.position);var t=n.classList;t["sd-popover-above"]="above"===e,t["sd-popover-below"]="below"===e,null===(o=n.cdRef)||void 0===o||o.markForCheck()},this.addArrowTranslateX=function(e){var o=document.querySelector("#"+n.panelId+" .sd-popover-arrow");if(o&&e)try{var t=window.getComputedStyle(o),r=new WebKitCSSMatrix(t.transform),p=r.m41+e,a=r.m42;o.style.transform="translateX("+p+"px) translateY("+a+"px)"}catch(e){}},this.setMouseState=function(e){if(!e){var o=document.activeElement,t=n.panel.nativeElement;if(null==t?void 0:t.contains(o))return}n.mouseState$.next(e)},this.isMobileOrTablet=!t.isDesktop()}return Object.defineProperty(e.prototype,"panelClass",{set:function(e){var o=this,t=v(this,f);t&&t.length&&t.split(" ").forEach((function(e){o.classList[e]=!1})),u(this,f,e),e&&e.length&&e.split(" ").forEach((function(e){o.classList[e]=!0}))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"position",{get:function(){return v(this,h)},set:function(e){u(this,h,e),this.setPositionClasses()},enumerable:!1,configurable:!0}),e.prototype._hostClick=function(e){var o;(null===(o=this.panel)||void 0===o?void 0:o.nativeElement)&&(this.panel.nativeElement.contains(e)||this.setMouseState(!1))},e.prototype.ngOnChanges=function(e){if(e.type){var o=e.type.currentValue,t=e.type.previousValue;t&&(this.classList["sd-popover--"+t]=!1),o&&(this.classList["sd-popover--"+o]=!0)}},e.prototype.ngOnInit=function(){if(this.setPositionClasses(),this.width=this.width||"80vw",!this.isMobileOrTablet)switch(this.width){case"lg":this.width="80vw";break;case"md":this.width="60vw";break;case"sm":this.width="40vw"}},e.prototype.ngOnDestroy=function(){this.closed.complete(),this.opened.complete(),this.mouseState$.complete()},e}();f=new WeakMap,h=new WeakMap,D.decorators=[{type:o.Component,args:[{selector:"sd-popover",template:'<ng-template let-data="data">\r\n <div\r\n class="sd-popover-panel mat-elevation-z6"\r\n [id]="panelId"\r\n [ngClass]="classList"\r\n tabindex="-1"\r\n role="menu"\r\n (mouseenter)="setMouseState(true)"\r\n (mouseleave)="setMouseState(false)"\r\n cdkTrapFocus\r\n #panel\r\n >\r\n <div class="sd-popover-content">\r\n <ng-container *ngIf="popoverContent?.templateRef">\r\n <ng-container *ngTemplateOutlet="popoverContent.templateRef; context:{data: data}"></ng-container>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <div class="sd-popover-arrow"></div>\r\n </div>\r\n</ng-template>',encapsulation:o.ViewEncapsulation.None,exportAs:"sdPopover",changeDetection:o.ChangeDetectionStrategy.OnPush,styles:['.text-black400{color:#757575}.sd-popover-panel{background:#fff;height:100%;position:relative;width:100%}.sd-popover-panel .sd-popover-arrow{clear:both;height:0;left:50%;position:absolute;width:0}.sd-popover-panel.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%;transform:translateX(-6px) translateY(-1px)}.sd-popover-panel.sd-popover-above:after{content:" ";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%;transform:translateX(-6px) translateY(1px)}.sd-popover-panel.sd-popover-below:before{content:" ";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel .sd-popover-content{height:100%}.sd-popover--normal{background:#fff;color:#000}.sd-popover--normal.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--normal.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--primary{background:#e7e9ff;color:#2962ff}.sd-popover--primary.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--primary.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--info{background:#e7e9ff;color:#2962ff}.sd-popover--info.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--info.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--success{background:#dbefdc;color:#4caf50}.sd-popover--success.sd-popover-above .sd-popover-arrow{border-color:#dbefdc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--success.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #dbefdc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--warning{background:#ffeacc;color:#ff9600}.sd-popover--warning.sd-popover-above .sd-popover-arrow{border-color:#ffeacc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--warning.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #ffeacc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--danger{background:#fed5d0;color:#f82c13}.sd-popover--danger.sd-popover-above .sd-popover-arrow{border-color:#fed5d0 transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--danger.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fed5d0;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover-content{padding:16px}']}]}],D.ctorParameters=function(){return[{type:o.ChangeDetectorRef},{type:n.DeviceDetectorService}]},D.propDecorators={templateRef:[{type:o.ViewChild,args:[o.TemplateRef]}],panel:[{type:o.ViewChild,args:["panel"]}],popoverContent:[{type:o.ContentChild,args:[b]}],panelClass:[{type:o.Input,args:["class"]}],width:[{type:o.Input}],height:[{type:o.Input}],type:[{type:o.Input}],position:[{type:o.Input}],closed:[{type:o.Output}],opened:[{type:o.Output}],_hostClick:[{type:o.HostListener,args:["document:click",["$event.target"]]}]};var R=function(){function e(e,t,r,n,a,i,l){var c=this;this._overlay=e,this._element=t,this._ngZone=r,this.viewContainerRef=n,this.elementRef=a,this.platform=i,this._dir=l,g.set(this,null),w.set(this,p.Subscription.EMPTY),m.set(this,void 0),y.set(this,new p.Subject),this.popoverOpen=!1,x.set(this,void 0),this.disabled=!1,this.popoverOpened=new o.EventEmitter,this.popoverClosed=new o.EventEmitter,this.openPopover=function(){if(!c.popoverOpen){var e=v(c,P).call(c),o=e.getConfig(),t=o.positionStrategy;v(c,O).call(c,t),o.hasBackdrop=!1,e.attach(v(c,C).call(c)),c.popover.trigger=c,v(c,k).call(c,!0),c.popover.opened.next(c.popoverData)}},this.closePopover=function(){c.popover.closed.emit()},k.set(this,(function(e){c.popoverOpen=e,c.popoverOpen?c.popoverOpened.emit():c.popoverClosed.emit()})),C.set(this,(function(){var e;return v(c,m)&&v(c,m).templateRef===c.popover.templateRef&&(null===(e=v(c,m).context)||void 0===e?void 0:e.data)===c.popoverData||u(c,m,new d.TemplatePortal(c.popover.templateRef,c.viewContainerRef,{data:c.popoverData})),v(c,m)})),P.set(this,(function(){if(!v(c,g)){var e=v(c,M).call(c);v(c,E).call(c,e.positionStrategy),u(c,g,c._overlay.create(e))}return v(c,g)})),O.set(this,(function(e){var o="top",t="bottom";switch(c.popover.position){case"above":o="top",t="bottom";break;case"below":o="bottom",t="top"}e.withPositions([{originX:"center",originY:o,overlayX:"center",overlayY:t,offsetY:"top"==o?-16:16},{originX:"center",originY:"top",overlayX:"center",overlayY:"bottom",offsetX:0,offsetY:-16},{originX:"center",originY:"bottom",overlayX:"center",overlayY:"top",offsetX:0,offsetY:16}])})),M.set(this,(function(){return new s.OverlayConfig({positionStrategy:c._overlay.position().flexibleConnectedTo(c._element).withLockedPosition().withGrowAfterOpen().withTransformOriginOn(".sd-popover-panel"),backdropClass:"cdk-overlay-transparent-backdrop",panelClass:c.popover.panelClass,direction:c._dir,width:c.popover.width,height:c.popover.height})})),E.set(this,(function(e){c.popover.setPositionClasses&&e.positionChanges.subscribe((function(e){var o,t="top"===e.connectionPair.overlayY?"below":"above";c._ngZone?c._ngZone.run((function(){return c.popover.setPositionClasses(t)})):c.popover.setPositionClasses(t);var r=c.elementRef.nativeElement,n=null===(o=c.viewContainerRef.get(0))||void 0===o?void 0:o.rootNodes[0];if(r&&n){var p=r.getBoundingClientRect(),a=n.getBoundingClientRect(),s=p.left+p.width/2-(a.left+a.width/2);c.popover.addArrowTranslateX(s)}}))})),T.set(this,(function(){v(c,g)&&c.popoverOpen&&(v(c,g).detach(),v(c,k).call(c,!1))}))}return Object.defineProperty(e.prototype,"popover",{get:function(){return v(this,x)},set:function(e){var o=this;e&&e!==v(this,x)&&(u(this,x,e),v(this,w).unsubscribe(),e&&u(this,w,e.closed.subscribe((function(){v(o,T).call(o)}))))},enumerable:!1,configurable:!0}),e.prototype.ngAfterViewInit=function(){var e=this;if(this.popover){var o=this.elementRef.nativeElement,t=p.merge(p.fromEvent(o,"mouseenter").pipe(l.mapTo(!0)),p.fromEvent(o,"mouseleave").pipe(l.mapTo(!1))),r=this.popover.mouseState$.pipe(l.filter((function(o){return!e.popover.trigger||e.popover.trigger==e})));p.merge(r,t).pipe(l.debounceTime(100),l.distinctUntilChanged(),l.filter((function(){return e.platform.isBrowser})),l.takeUntil(v(this,y))).subscribe((function(o){o&&!e.disabled?e.openPopover():e.closePopover()}))}},e.prototype.ngOnDestroy=function(){v(this,y).next(),v(this,y).complete(),v(this,g)&&(v(this,g).dispose(),u(this,g,null))},e}();g=new WeakMap,w=new WeakMap,m=new WeakMap,y=new WeakMap,x=new WeakMap,k=new WeakMap,C=new WeakMap,P=new WeakMap,O=new WeakMap,M=new WeakMap,E=new WeakMap,T=new WeakMap,R.decorators=[{type:o.Directive,args:[{selector:"[sdPopoverTriggerFor]",host:{"aria-haspopup":"true",class:"sd-popover-trigger"},exportAs:"sdPopoverTrigger"}]}],R.ctorParameters=function(){return[{type:s.Overlay},{type:o.ElementRef},{type:o.NgZone},{type:o.ViewContainerRef},{type:o.ElementRef},{type:i.Platform},{type:a.Directionality,decorators:[{type:o.Optional}]}]},R.propDecorators={popover:[{type:o.Input,args:["sdPopoverTriggerFor"]}],popoverData:[{type:o.Input,args:["sdPopoverData"]}],disabled:[{type:o.Input,args:["sdPopoverDisabled"]}],popoverOpened:[{type:o.Output}],popoverClosed:[{type:o.Output}]};var S=function(){};S.decorators=[{type:o.NgModule,args:[{declarations:[D,R,b],imports:[t.CommonModule,c.A11yModule],exports:[D,R,b]}]}],e.PopoverComponent=D,e.PopoverContentDirective=b,e.PopoverTriggerDirective=R,e.SdPopoverModule=S,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
16
16
|
//# sourceMappingURL=sd-angular-core-popover.umd.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts"],"names":["Object","create","__classPrivateFieldGet","receiver","state","kind","f","TypeError","has","call","value","get","__classPrivateFieldSet","set","templateRef","this","Directive","args","selector","TemplateRef","PopoverComponent","cdRef","deviceService","_this","classList","panelId","uuid.v4","isMobileOrTablet","mouseState$","BehaviorSubject","trigger","panelClass","width","height","type","_xPosition","closed","EventEmitter","opened","close","next","emit","setPositionClasses","pos","position","classes","_a","markForCheck","addArrowTranslateX","offset","arrowElement","document","querySelector","style","window","getComputedStyle","matrix","WebKitCSSMatrix","transform","translateX","m41","translateY","m42","error","setMouseState","visible","activeElement","panelElement","panel","nativeElement","contains","isDesktop","defineProperty","prototype","_hostClick","targetElement","ngOnChanges","changes","currentValue","preType","previousValue","sd-popover--normal","ngOnInit","ngOnDestroy","complete","Component","template","encapsulation","ViewEncapsulation","None","exportAs","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","DeviceDetectorService","ViewChild","ContentChild","PopoverContentDirective","Input","Output","HostListener","PopoverTriggerDirective","_overlay","_element","_ngZone","viewContainerRef","elementRef","platform","_dir","_overlayRef","_popoverClose$","Subscription","EMPTY","_portal","_destroy$","Subject","popoverOpen","_popover","disabled","popoverOpened","popoverClosed","openPopover","overlayRef","_createOverlay","overlayConfig","getConfig","positionStrategy","_setPosition","hasBackdrop","attach","_getPortal","popover","_setIsPopoverOpen","popoverData","closePopover","isOpen","context","data","TemplatePortal","config","_getOverlayConfig","_subscribeToPositions","originY","overlayY","withPositions","originX","overlayX","offsetY","offsetX","OverlayConfig","flexibleConnectedTo","withLockedPosition","withGrowAfterOpen","withTransformOriginOn","backdropClass","direction","positionChanges","subscribe","change","connectionPair","run","originElement","overlayElement","rootNodes","originRect","getBoundingClientRect","overlayRect","left","_destroyPopover","detach","unsubscribe","ngAfterViewInit","hostMouseState$","merge","fromEvent","pipe","mapTo","popoverMouseState$","filter","v","debounceTime","distinctUntilChanged","isBrowser","takeUntil","dispose","host","aria-haspopup","class","Overlay","ElementRef","NgZone","ViewContainerRef","Platform","Directionality","decorators","Optional","NgModule","declarations","imports","CommonModule","A11yModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input() panelClass: string = '';\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n this.classList = this.classList ?? {\r\n 'sd-popover--normal': true\r\n };\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../node_modules/tslib/tslib.es6.js","../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts"],"names":["Object","create","__classPrivateFieldGet","receiver","state","kind","f","TypeError","has","call","value","get","__classPrivateFieldSet","set","templateRef","this","Directive","args","selector","TemplateRef","PopoverComponent","cdRef","deviceService","_this","classList","panelId","uuid.v4","isMobileOrTablet","mouseState$","BehaviorSubject","trigger","_previousPanelClass","width","height","type","_xPosition","closed","EventEmitter","opened","close","next","emit","setPositionClasses","pos","position","classes","_a","markForCheck","addArrowTranslateX","offset","arrowElement","document","querySelector","style","window","getComputedStyle","matrix","WebKitCSSMatrix","transform","translateX","m41","translateY","m42","error","setMouseState","visible","activeElement","panelElement","panel","nativeElement","contains","isDesktop","defineProperty","prototype","previousPanelClass","length","split","forEach","className","_hostClick","targetElement","ngOnChanges","changes","currentValue","preType","previousValue","ngOnInit","ngOnDestroy","complete","Component","template","encapsulation","ViewEncapsulation","None","exportAs","changeDetection","ChangeDetectionStrategy","OnPush","ChangeDetectorRef","DeviceDetectorService","ViewChild","ContentChild","PopoverContentDirective","Input","Output","HostListener","PopoverTriggerDirective","_overlay","_element","_ngZone","viewContainerRef","elementRef","platform","_dir","_overlayRef","_popoverClose$","Subscription","EMPTY","_portal","_destroy$","Subject","popoverOpen","_popover","disabled","popoverOpened","popoverClosed","openPopover","overlayRef","_createOverlay","overlayConfig","getConfig","positionStrategy","_setPosition","hasBackdrop","attach","_getPortal","popover","_setIsPopoverOpen","popoverData","closePopover","isOpen","context","data","TemplatePortal","config","_getOverlayConfig","_subscribeToPositions","originY","overlayY","withPositions","originX","overlayX","offsetY","offsetX","OverlayConfig","flexibleConnectedTo","withLockedPosition","withGrowAfterOpen","withTransformOriginOn","backdropClass","panelClass","direction","positionChanges","subscribe","change","connectionPair","run","originElement","overlayElement","rootNodes","originRect","getBoundingClientRect","overlayRect","left","_destroyPopover","detach","unsubscribe","ngAfterViewInit","hostMouseState$","merge","fromEvent","pipe","mapTo","popoverMouseState$","filter","v","debounceTime","distinctUntilChanged","isBrowser","takeUntil","dispose","host","aria-haspopup","class","Overlay","ElementRef","NgZone","ViewContainerRef","Platform","Directionality","decorators","Optional","NgModule","declarations","imports","CommonModule","A11yModule","exports"],"mappings":"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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input('class') \r\n set panelClass(classes: string) {\r\n const previousPanelClass = this.#previousPanelClass;\r\n\r\n if (previousPanelClass && previousPanelClass.length) {\r\n previousPanelClass.split(' ').forEach((className: string) => {\r\n this.classList[className] = false;\r\n });\r\n }\r\n\r\n this.#previousPanelClass = classes;\r\n\r\n if (classes && classes.length) {\r\n classes.split(' ').forEach((className: string) => {\r\n this.classList[className] = true;\r\n });\r\n }\r\n };\r\n #previousPanelClass: string;\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _xPosition;
|
|
1
|
+
var _previousPanelClass, _xPosition;
|
|
2
2
|
import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
|
|
3
3
|
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, Output, TemplateRef, ViewChild, ViewEncapsulation, ContentChild } from '@angular/core';
|
|
4
4
|
import * as uuid from 'uuid';
|
|
@@ -14,7 +14,7 @@ export class PopoverComponent {
|
|
|
14
14
|
this.isMobileOrTablet = false;
|
|
15
15
|
this.mouseState$ = new BehaviorSubject(false);
|
|
16
16
|
this.trigger = null;
|
|
17
|
-
this
|
|
17
|
+
_previousPanelClass.set(this, void 0);
|
|
18
18
|
this.width = 'sm';
|
|
19
19
|
this.height = 'auto';
|
|
20
20
|
this.type = 'normal';
|
|
@@ -59,6 +59,21 @@ export class PopoverComponent {
|
|
|
59
59
|
};
|
|
60
60
|
this.isMobileOrTablet = !deviceService.isDesktop();
|
|
61
61
|
}
|
|
62
|
+
set panelClass(classes) {
|
|
63
|
+
const previousPanelClass = __classPrivateFieldGet(this, _previousPanelClass);
|
|
64
|
+
if (previousPanelClass && previousPanelClass.length) {
|
|
65
|
+
previousPanelClass.split(' ').forEach((className) => {
|
|
66
|
+
this.classList[className] = false;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
__classPrivateFieldSet(this, _previousPanelClass, classes);
|
|
70
|
+
if (classes && classes.length) {
|
|
71
|
+
classes.split(' ').forEach((className) => {
|
|
72
|
+
this.classList[className] = true;
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
;
|
|
62
77
|
get position() {
|
|
63
78
|
return __classPrivateFieldGet(this, _xPosition);
|
|
64
79
|
}
|
|
@@ -76,13 +91,9 @@ export class PopoverComponent {
|
|
|
76
91
|
}
|
|
77
92
|
}
|
|
78
93
|
ngOnChanges(changes) {
|
|
79
|
-
var _a;
|
|
80
94
|
if (changes.type) {
|
|
81
95
|
const type = changes.type.currentValue;
|
|
82
96
|
const preType = changes.type.previousValue;
|
|
83
|
-
this.classList = (_a = this.classList) !== null && _a !== void 0 ? _a : {
|
|
84
|
-
'sd-popover--normal': true
|
|
85
|
-
};
|
|
86
97
|
if (preType) {
|
|
87
98
|
this.classList[`sd-popover--${preType}`] = false;
|
|
88
99
|
}
|
|
@@ -114,7 +125,7 @@ export class PopoverComponent {
|
|
|
114
125
|
this.mouseState$.complete();
|
|
115
126
|
}
|
|
116
127
|
}
|
|
117
|
-
_xPosition = new WeakMap();
|
|
128
|
+
_previousPanelClass = new WeakMap(), _xPosition = new WeakMap();
|
|
118
129
|
PopoverComponent.decorators = [
|
|
119
130
|
{ type: Component, args: [{
|
|
120
131
|
selector: 'sd-popover',
|
|
@@ -133,7 +144,7 @@ PopoverComponent.propDecorators = {
|
|
|
133
144
|
templateRef: [{ type: ViewChild, args: [TemplateRef,] }],
|
|
134
145
|
panel: [{ type: ViewChild, args: ['panel',] }],
|
|
135
146
|
popoverContent: [{ type: ContentChild, args: [PopoverContentDirective,] }],
|
|
136
|
-
panelClass: [{ type: Input }],
|
|
147
|
+
panelClass: [{ type: Input, args: ['class',] }],
|
|
137
148
|
width: [{ type: Input }],
|
|
138
149
|
height: [{ type: Input }],
|
|
139
150
|
type: [{ type: Input }],
|
|
@@ -142,4 +153,4 @@ PopoverComponent.propDecorators = {
|
|
|
142
153
|
opened: [{ type: Output }],
|
|
143
154
|
_hostClick: [{ type: HostListener, args: ['document:click', ['$event.target'],] }]
|
|
144
155
|
};
|
|
145
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3BvcG92ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBR2pCLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBY2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUFzQzNCLFlBQ1UsS0FBd0IsRUFDeEIsYUFBb0M7UUFEcEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBdkM5QyxjQUFTLEdBQTRCLEVBQUUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsb0JBQW9CLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQzFDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xELFlBQU8sR0FBNEIsSUFBSSxDQUFDO1FBTS9CLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIsVUFBSyxHQUFnQyxJQUFJLENBQUM7UUFDMUMsV0FBTSxHQUFXLE1BQU0sQ0FBQztRQUN4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Q0FBQztJQUM5QixDQUFDOzs7O1lBM0ZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsMnJCQUF1QztnQkFFdkMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7Z0JBQ3JDLFFBQVEsRUFBRSxXQUFXO2dCQUNyQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQWxDQyxpQkFBaUI7WUFrQlYscUJBQXFCOzs7MEJBd0IzQixTQUFTLFNBQUMsV0FBVztvQkFDckIsU0FBUyxTQUFDLE9BQU87NkJBQ2pCLFlBQVksU0FBQyx1QkFBdUI7eUJBRXBDLEtBQUs7b0JBQ0wsS0FBSztxQkFDTCxLQUFLO21CQUNMLEtBQUs7dUJBQ0wsS0FBSztxQkFVTCxNQUFNO3FCQUNOLE1BQU07eUJBRU4sWUFBWSxTQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBDb250ZW50Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi9wb3BvdmVyLm1vZGVsJztcclxuaW1wb3J0ICogYXMgdXVpZCBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlIH0gZnJvbSAnbmd4LWRldmljZS1kZXRlY3Rvcic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvcG9wb3Zlci10cmlnZ2VyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2RQb3BvdmVyIHtcclxuICBjbG9zZTogKCkgPT4gdm9pZDtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1wb3BvdmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcG9wb3Zlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgZXhwb3J0QXM6ICdzZFBvcG92ZXInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIFNkUG9wb3ZlciwgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgY2xhc3NMaXN0OiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIHBhbmVsSWQgPSBgc2QtcG9wb3Zlci1wYW5lbC0ke3V1aWQudjQoKX1gO1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQgPSBmYWxzZTtcclxuICBtb3VzZVN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHRyaWdnZXI6IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlID0gbnVsbDtcclxuXHJcbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZikgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZCgncGFuZWwnKSBwYW5lbDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgQENvbnRlbnRDaGlsZChQb3BvdmVyQ29udGVudERpcmVjdGl2ZSkgcG9wb3ZlckNvbnRlbnQ6IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlXHJcblxyXG4gIEBJbnB1dCgpIHBhbmVsQ2xhc3M6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiAnbGcnIHwgJ21kJyB8ICdzbScgfCBzdHJpbmcgPSAnc20nO1xyXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJ2F1dG8nO1xyXG4gIEBJbnB1dCgpIHR5cGU6ICdub3JtYWwnIHwgJ3ByaW1hcnknIHwgJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgPSAnbm9ybWFsJztcclxuICBASW5wdXQoKVxyXG4gIGdldCBwb3NpdGlvbigpOiBQb3NpdGlvbiB7XHJcbiAgICByZXR1cm4gdGhpcy4jeFBvc2l0aW9uO1xyXG4gIH1cclxuICBzZXQgcG9zaXRpb24odmFsdWU6IFBvc2l0aW9uKSB7XHJcbiAgICB0aGlzLiN4UG9zaXRpb24gPSB2YWx1ZTtcclxuICAgIHRoaXMuc2V0UG9zaXRpb25DbGFzc2VzKCk7XHJcbiAgfVxyXG4gICN4UG9zaXRpb246IFBvc2l0aW9uO1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSByZWFkb25seSBvcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcclxuICBfaG9zdENsaWNrKHRhcmdldEVsZW1lbnQpIHtcclxuICAgIGlmICh0aGlzLnBhbmVsPy5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIGNvbnN0IGlzSW5zaWRlID0gdGhpcy5wYW5lbC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xyXG4gICAgICBpZiAoIWlzSW5zaWRlKSB7XHJcbiAgICAgICAgdGhpcy5zZXRNb3VzZVN0YXRlKGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgZGV2aWNlU2VydmljZTogRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmlzTW9iaWxlT3JUYWJsZXQgPSAhZGV2aWNlU2VydmljZS5pc0Rlc2t0b3AoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmKGNoYW5nZXMudHlwZSkge1xyXG4gICAgICBjb25zdCB0eXBlID0gY2hhbmdlcy50eXBlLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgY29uc3QgcHJlVHlwZSA9IGNoYW5nZXMudHlwZS5wcmV2aW91c1ZhbHVlO1xyXG4gICAgICB0aGlzLmNsYXNzTGlzdCA9IHRoaXMuY2xhc3NMaXN0ID8/IHtcclxuICAgICAgICAnc2QtcG9wb3Zlci0tbm9ybWFsJzogdHJ1ZVxyXG4gICAgICB9O1xyXG4gICAgICBpZiAocHJlVHlwZSkge1xyXG4gICAgICAgIHRoaXMuY2xhc3NMaXN0W2BzZC1wb3BvdmVyLS0ke3ByZVR5cGV9YF0gPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodHlwZSkge1xyXG4gICAgICAgIHRoaXMuY2xhc3NMaXN0W2BzZC1wb3BvdmVyLS0ke3R5cGV9YF0gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0UG9zaXRpb25DbGFzc2VzKCk7XHJcbiAgICB0aGlzLndpZHRoID0gdGhpcy53aWR0aCB8fCAnODB2dyc7XHJcbiAgICBpZiAoIXRoaXMuaXNNb2JpbGVPclRhYmxldCkge1xyXG4gICAgICBzd2l0Y2ggKHRoaXMud2lkdGgpIHtcclxuICAgICAgICBjYXNlICdsZyc6XHJcbiAgICAgICAgICB0aGlzLndpZHRoID0gJzgwdncnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnbWQnOlxyXG4gICAgICAgICAgdGhpcy53aWR0aCA9ICc2MHZ3JztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3NtJzpcclxuICAgICAgICAgIHRoaXMud2lkdGggPSAnNDB2dyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlZC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5vcGVuZWQuY29tcGxldGUoKTtcclxuICAgIHRoaXMubW91c2VTdGF0ZSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5tb3VzZVN0YXRlJC5uZXh0KGZhbHNlKTtcclxuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcclxuICB9O1xyXG5cclxuICBzZXRQb3NpdGlvbkNsYXNzZXMgPSAocG9zOiBQb3NpdGlvbiA9IHRoaXMucG9zaXRpb24pID0+IHtcclxuICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLmNsYXNzTGlzdDtcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYWJvdmUnXSA9IHBvcyA9PT0gJ2Fib3ZlJztcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYmVsb3cnXSA9IHBvcyA9PT0gJ2JlbG93JztcclxuXHJcbiAgICB0aGlzLmNkUmVmPy5tYXJrRm9yQ2hlY2soKTtcclxuICB9O1xyXG5cclxuICBhZGRBcnJvd1RyYW5zbGF0ZVggPSAob2Zmc2V0OiBudW1iZXIpID0+IHtcclxuICAgIGNvbnN0IGFycm93RWxlbWVudDogSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnBhbmVsSWR9IC5zZC1wb3BvdmVyLWFycm93YCk7XHJcbiAgICBpZiAoYXJyb3dFbGVtZW50ICYmIG9mZnNldCkge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoYXJyb3dFbGVtZW50KTtcclxuICAgICAgICBjb25zdCBtYXRyaXggPSBuZXcgV2ViS2l0Q1NTTWF0cml4KHN0eWxlLnRyYW5zZm9ybSk7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWCA9IG1hdHJpeC5tNDEgKyBvZmZzZXQ7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWSA9IG1hdHJpeC5tNDI7XHJcbiAgICAgICAgYXJyb3dFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVYKCR7dHJhbnNsYXRlWH1weCkgdHJhbnNsYXRlWSgke3RyYW5zbGF0ZVl9cHgpYDtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHt9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgc2V0TW91c2VTdGF0ZSA9ICh2aXNpYmxlOiBib29sZWFuKSA9PiB7XHJcbiAgICBpZiAoIXZpc2libGUpIHtcclxuICAgICAgLy8gY2jhu4kgxJHGsOG7o2MgdOG6r3Qga2hpIMSRYW5nIGtow7RuZyBmb2N1cyBlbGVtZW50IG7DoG8gYsOqbiB0cm9uZyBwYW5lbFxyXG4gICAgICAvLyB0csOhbmggbOG7l2kgY8OzIGNvbnRyb2wgbeG7nyBvdmVybGF5IGtoaeG6v24gY2hvIG3huqV0IG1vdXNlZW50ZXIg4bufIHBhbmVsXHJcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xyXG4gICAgICBjb25zdCBwYW5lbEVsZW1lbnQgPSB0aGlzLnBhbmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIGlmIChwYW5lbEVsZW1lbnQ/LmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vdXNlU3RhdGUkLm5leHQodmlzaWJsZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
|
|
156
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3BvcG92ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBR2pCLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBY2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUF3RDNCLFlBQ1UsS0FBd0IsRUFDeEIsYUFBb0M7UUFEcEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBekQ5QyxjQUFTLEdBQTRCLEVBQUUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsb0JBQW9CLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQzFDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xELFlBQU8sR0FBNEIsSUFBSSxDQUFDO1FBd0J4QyxzQ0FBNEI7UUFDbkIsVUFBSyxHQUFnQyxJQUFJLENBQUM7UUFDMUMsV0FBTSxHQUFXLE1BQU0sQ0FBQztRQUN4QixTQUFJLEdBQXFF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QUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzFCLFFBQVEsSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDbEIsS0FBSyxJQUFJO29CQUNQLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO29CQUNwQixNQUFNO2dCQUNSLEtBQUssSUFBSTtvQkFDUCxJQUFJLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQztvQkFDcEIsTUFBTTtnQkFDUixLQUFLLElBQUk7b0JBQ1AsSUFBSSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUM7b0JBQ3BCLE1BQU07YUFDVDtTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUM5QixDQUFDOzs7O1lBMUdGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsMnJCQUF1QztnQkFFdkMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7Z0JBQ3JDLFFBQVEsRUFBRSxXQUFXO2dCQUNyQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQWxDQyxpQkFBaUI7WUFrQlYscUJBQXFCOzs7MEJBd0IzQixTQUFTLFNBQUMsV0FBVztvQkFDckIsU0FBUyxTQUFDLE9BQU87NkJBQ2pCLFlBQVksU0FBQyx1QkFBdUI7eUJBRXBDLEtBQUssU0FBQyxPQUFPO29CQW1CYixLQUFLO3FCQUNMLEtBQUs7bUJBQ0wsS0FBSzt1QkFDTCxLQUFLO3FCQVVMLE1BQU07cUJBQ04sTUFBTTt5QkFFTixZQUFZLFNBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIENvbnRlbnRDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uL3BvcG92ZXIubW9kZWwnO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUG9wb3ZlckNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3BvcG92ZXItY29udGVudC5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZFBvcG92ZXIge1xyXG4gIGNsb3NlOiAoKSA9PiB2b2lkO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLXBvcG92ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wb3BvdmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBleHBvcnRBczogJ3NkUG9wb3ZlcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgU2RQb3BvdmVyLCBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBjbGFzc0xpc3Q6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgcGFuZWxJZCA9IGBzZC1wb3BvdmVyLXBhbmVsLSR7dXVpZC52NCgpfWA7XHJcbiAgaXNNb2JpbGVPclRhYmxldCA9IGZhbHNlO1xyXG4gIG1vdXNlU3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgdHJpZ2dlcjogUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgPSBudWxsO1xyXG5cclxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdwYW5lbCcpIHBhbmVsOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBAQ29udGVudENoaWxkKFBvcG92ZXJDb250ZW50RGlyZWN0aXZlKSBwb3BvdmVyQ29udGVudDogUG9wb3ZlckNvbnRlbnREaXJlY3RpdmVcclxuXHJcbiAgQElucHV0KCdjbGFzcycpIFxyXG4gIHNldCBwYW5lbENsYXNzKGNsYXNzZXM6IHN0cmluZykge1xyXG4gICAgY29uc3QgcHJldmlvdXNQYW5lbENsYXNzID0gdGhpcy4jcHJldmlvdXNQYW5lbENsYXNzO1xyXG5cclxuICAgIGlmIChwcmV2aW91c1BhbmVsQ2xhc3MgJiYgcHJldmlvdXNQYW5lbENsYXNzLmxlbmd0aCkge1xyXG4gICAgICBwcmV2aW91c1BhbmVsQ2xhc3Muc3BsaXQoJyAnKS5mb3JFYWNoKChjbGFzc05hbWU6IHN0cmluZykgPT4ge1xyXG4gICAgICAgIHRoaXMuY2xhc3NMaXN0W2NsYXNzTmFtZV0gPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy4jcHJldmlvdXNQYW5lbENsYXNzID0gY2xhc3NlcztcclxuXHJcbiAgICBpZiAoY2xhc3NlcyAmJiBjbGFzc2VzLmxlbmd0aCkge1xyXG4gICAgICBjbGFzc2VzLnNwbGl0KCcgJykuZm9yRWFjaCgoY2xhc3NOYW1lOiBzdHJpbmcpID0+IHtcclxuICAgICAgICB0aGlzLmNsYXNzTGlzdFtjbGFzc05hbWVdID0gdHJ1ZTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfTtcclxuICAjcHJldmlvdXNQYW5lbENsYXNzOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgd2lkdGg6ICdsZycgfCAnbWQnIHwgJ3NtJyB8IHN0cmluZyA9ICdzbSc7XHJcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnYXV0byc7XHJcbiAgQElucHV0KCkgdHlwZTogJ25vcm1hbCcgfCAncHJpbWFyeScgfCAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybmluZycgfCAnZGFuZ2VyJyA9ICdub3JtYWwnO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHBvc2l0aW9uKCk6IFBvc2l0aW9uIHtcclxuICAgIHJldHVybiB0aGlzLiN4UG9zaXRpb247XHJcbiAgfVxyXG4gIHNldCBwb3NpdGlvbih2YWx1ZTogUG9zaXRpb24pIHtcclxuICAgIHRoaXMuI3hQb3NpdGlvbiA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZXRQb3NpdGlvbkNsYXNzZXMoKTtcclxuICB9XHJcbiAgI3hQb3NpdGlvbjogUG9zaXRpb247XHJcblxyXG4gIEBPdXRwdXQoKSByZWFkb25seSBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHJlYWRvbmx5IG9wZW5lZCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50LnRhcmdldCddKVxyXG4gIF9ob3N0Q2xpY2sodGFyZ2V0RWxlbWVudCkge1xyXG4gICAgaWYgKHRoaXMucGFuZWw/Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgY29uc3QgaXNJbnNpZGUgPSB0aGlzLnBhbmVsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnModGFyZ2V0RWxlbWVudCk7XHJcbiAgICAgIGlmICghaXNJbnNpZGUpIHtcclxuICAgICAgICB0aGlzLnNldE1vdXNlU3RhdGUoZmFsc2UpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2VcclxuICApIHtcclxuICAgIHRoaXMuaXNNb2JpbGVPclRhYmxldCA9ICFkZXZpY2VTZXJ2aWNlLmlzRGVza3RvcCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYoY2hhbmdlcy50eXBlKSB7XHJcbiAgICAgIGNvbnN0IHR5cGUgPSBjaGFuZ2VzLnR5cGUuY3VycmVudFZhbHVlO1xyXG4gICAgICBjb25zdCBwcmVUeXBlID0gY2hhbmdlcy50eXBlLnByZXZpb3VzVmFsdWU7XHJcbiAgICAgIGlmIChwcmVUeXBlKSB7XHJcbiAgICAgICAgdGhpcy5jbGFzc0xpc3RbYHNkLXBvcG92ZXItLSR7cHJlVHlwZX1gXSA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0eXBlKSB7XHJcbiAgICAgICAgdGhpcy5jbGFzc0xpc3RbYHNkLXBvcG92ZXItLSR7dHlwZX1gXSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zZXRQb3NpdGlvbkNsYXNzZXMoKTtcclxuICAgIHRoaXMud2lkdGggPSB0aGlzLndpZHRoIHx8ICc4MHZ3JztcclxuICAgIGlmICghdGhpcy5pc01vYmlsZU9yVGFibGV0KSB7XHJcbiAgICAgIHN3aXRjaCAodGhpcy53aWR0aCkge1xyXG4gICAgICAgIGNhc2UgJ2xnJzpcclxuICAgICAgICAgIHRoaXMud2lkdGggPSAnODB2dyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdtZCc6XHJcbiAgICAgICAgICB0aGlzLndpZHRoID0gJzYwdncnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnc20nOlxyXG4gICAgICAgICAgdGhpcy53aWR0aCA9ICc0MHZ3JztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2VkLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLm9wZW5lZC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5tb3VzZVN0YXRlJC5jb21wbGV0ZSgpO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UgPSAoKSA9PiB7XHJcbiAgICB0aGlzLm1vdXNlU3RhdGUkLm5leHQoZmFsc2UpO1xyXG4gICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xyXG4gIH07XHJcblxyXG4gIHNldFBvc2l0aW9uQ2xhc3NlcyA9IChwb3M6IFBvc2l0aW9uID0gdGhpcy5wb3NpdGlvbikgPT4ge1xyXG4gICAgY29uc3QgY2xhc3NlcyA9IHRoaXMuY2xhc3NMaXN0O1xyXG4gICAgY2xhc3Nlc1snc2QtcG9wb3Zlci1hYm92ZSddID0gcG9zID09PSAnYWJvdmUnO1xyXG4gICAgY2xhc3Nlc1snc2QtcG9wb3Zlci1iZWxvdyddID0gcG9zID09PSAnYmVsb3cnO1xyXG5cclxuICAgIHRoaXMuY2RSZWY/Lm1hcmtGb3JDaGVjaygpO1xyXG4gIH07XHJcblxyXG4gIGFkZEFycm93VHJhbnNsYXRlWCA9IChvZmZzZXQ6IG51bWJlcikgPT4ge1xyXG4gICAgY29uc3QgYXJyb3dFbGVtZW50OiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoYCMke3RoaXMucGFuZWxJZH0gLnNkLXBvcG92ZXItYXJyb3dgKTtcclxuICAgIGlmIChhcnJvd0VsZW1lbnQgJiYgb2Zmc2V0KSB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgY29uc3Qgc3R5bGUgPSB3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShhcnJvd0VsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IG1hdHJpeCA9IG5ldyBXZWJLaXRDU1NNYXRyaXgoc3R5bGUudHJhbnNmb3JtKTtcclxuICAgICAgICBjb25zdCB0cmFuc2xhdGVYID0gbWF0cml4Lm00MSArIG9mZnNldDtcclxuICAgICAgICBjb25zdCB0cmFuc2xhdGVZID0gbWF0cml4Lm00MjtcclxuICAgICAgICBhcnJvd0VsZW1lbnQuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZVgoJHt0cmFuc2xhdGVYfXB4KSB0cmFuc2xhdGVZKCR7dHJhbnNsYXRlWX1weClgO1xyXG4gICAgICB9IGNhdGNoIChlcnJvcikge31cclxuICAgIH1cclxuICB9O1xyXG5cclxuICBzZXRNb3VzZVN0YXRlID0gKHZpc2libGU6IGJvb2xlYW4pID0+IHtcclxuICAgIGlmICghdmlzaWJsZSkge1xyXG4gICAgICAvLyBjaOG7iSDEkcaw4bujYyB04bqvdCBraGkgxJFhbmcga2jDtG5nIGZvY3VzIGVsZW1lbnQgbsOgbyBiw6puIHRyb25nIHBhbmVsXHJcbiAgICAgIC8vIHRyw6FuaCBs4buXaSBjw7MgY29udHJvbCBt4bufIG92ZXJsYXkga2hp4bq/biBjaG8gbeG6pXQgbW91c2VlbnRlciDhu58gcGFuZWxcclxuICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIGNvbnN0IHBhbmVsRWxlbWVudCA9IHRoaXMucGFuZWwubmF0aXZlRWxlbWVudDtcclxuICAgICAgaWYgKHBhbmVsRWxlbWVudD8uY29udGFpbnMoYWN0aXZlRWxlbWVudCkpIHtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMubW91c2VTdGF0ZSQubmV4dCh2aXNpYmxlKTtcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -25,7 +25,7 @@ PopoverContentDirective.ctorParameters = () => [
|
|
|
25
25
|
{ type: TemplateRef }
|
|
26
26
|
];
|
|
27
27
|
|
|
28
|
-
var _xPosition;
|
|
28
|
+
var _previousPanelClass, _xPosition;
|
|
29
29
|
class PopoverComponent {
|
|
30
30
|
constructor(cdRef, deviceService) {
|
|
31
31
|
this.cdRef = cdRef;
|
|
@@ -35,7 +35,7 @@ class PopoverComponent {
|
|
|
35
35
|
this.isMobileOrTablet = false;
|
|
36
36
|
this.mouseState$ = new BehaviorSubject(false);
|
|
37
37
|
this.trigger = null;
|
|
38
|
-
this
|
|
38
|
+
_previousPanelClass.set(this, void 0);
|
|
39
39
|
this.width = 'sm';
|
|
40
40
|
this.height = 'auto';
|
|
41
41
|
this.type = 'normal';
|
|
@@ -80,6 +80,21 @@ class PopoverComponent {
|
|
|
80
80
|
};
|
|
81
81
|
this.isMobileOrTablet = !deviceService.isDesktop();
|
|
82
82
|
}
|
|
83
|
+
set panelClass(classes) {
|
|
84
|
+
const previousPanelClass = __classPrivateFieldGet(this, _previousPanelClass);
|
|
85
|
+
if (previousPanelClass && previousPanelClass.length) {
|
|
86
|
+
previousPanelClass.split(' ').forEach((className) => {
|
|
87
|
+
this.classList[className] = false;
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
__classPrivateFieldSet(this, _previousPanelClass, classes);
|
|
91
|
+
if (classes && classes.length) {
|
|
92
|
+
classes.split(' ').forEach((className) => {
|
|
93
|
+
this.classList[className] = true;
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
;
|
|
83
98
|
get position() {
|
|
84
99
|
return __classPrivateFieldGet(this, _xPosition);
|
|
85
100
|
}
|
|
@@ -97,13 +112,9 @@ class PopoverComponent {
|
|
|
97
112
|
}
|
|
98
113
|
}
|
|
99
114
|
ngOnChanges(changes) {
|
|
100
|
-
var _a;
|
|
101
115
|
if (changes.type) {
|
|
102
116
|
const type = changes.type.currentValue;
|
|
103
117
|
const preType = changes.type.previousValue;
|
|
104
|
-
this.classList = (_a = this.classList) !== null && _a !== void 0 ? _a : {
|
|
105
|
-
'sd-popover--normal': true
|
|
106
|
-
};
|
|
107
118
|
if (preType) {
|
|
108
119
|
this.classList[`sd-popover--${preType}`] = false;
|
|
109
120
|
}
|
|
@@ -135,7 +146,7 @@ class PopoverComponent {
|
|
|
135
146
|
this.mouseState$.complete();
|
|
136
147
|
}
|
|
137
148
|
}
|
|
138
|
-
_xPosition = new WeakMap();
|
|
149
|
+
_previousPanelClass = new WeakMap(), _xPosition = new WeakMap();
|
|
139
150
|
PopoverComponent.decorators = [
|
|
140
151
|
{ type: Component, args: [{
|
|
141
152
|
selector: 'sd-popover',
|
|
@@ -154,7 +165,7 @@ PopoverComponent.propDecorators = {
|
|
|
154
165
|
templateRef: [{ type: ViewChild, args: [TemplateRef,] }],
|
|
155
166
|
panel: [{ type: ViewChild, args: ['panel',] }],
|
|
156
167
|
popoverContent: [{ type: ContentChild, args: [PopoverContentDirective,] }],
|
|
157
|
-
panelClass: [{ type: Input }],
|
|
168
|
+
panelClass: [{ type: Input, args: ['class',] }],
|
|
158
169
|
width: [{ type: Input }],
|
|
159
170
|
height: [{ type: Input }],
|
|
160
171
|
type: [{ type: Input }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sd-angular-core-popover.js","sources":["../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts","../../../../projects/sd-core/popover/src/public-api.ts","../../../../projects/sd-core/popover/sd-angular-core-popover.ts"],"sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input() panelClass: string = '';\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n this.classList = this.classList ?? {\r\n 'sd-popover--normal': true\r\n };\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdPopoverModule } from './lib/popover.module';\r\n\r\nexport * from './lib/popover/popover.component';\r\nexport * from './lib/directives/popover-trigger.directive';\r\nexport * from './lib/directives/popover-content.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sd-angular-core-popover.js","sources":["../../../../projects/sd-core/popover/src/lib/directives/popover-content.directive.ts","../../../../projects/sd-core/popover/src/lib/popover/popover.component.ts","../../../../projects/sd-core/popover/src/lib/directives/popover-trigger.directive.ts","../../../../projects/sd-core/popover/src/lib/popover.module.ts","../../../../projects/sd-core/popover/src/public-api.ts","../../../../projects/sd-core/popover/sd-angular-core-popover.ts"],"sourcesContent":["import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n selector: '[sdPopoverContent]'\r\n})\r\nexport class PopoverContentDirective {\r\n\r\n constructor(public templateRef: TemplateRef<any>) { }\r\n\r\n}\r\n","import {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n HostListener,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n TemplateRef,\r\n ViewChild,\r\n ViewEncapsulation,\r\n OnChanges,\r\n SimpleChanges,\r\n ContentChild\r\n} from '@angular/core';\r\nimport { Position } from '../popover.model';\r\nimport * as uuid from 'uuid';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { PopoverTriggerDirective } from '../directives/popover-trigger.directive';\r\nimport { PopoverContentDirective } from '../directives/popover-content.directive';\r\n\r\nexport interface SdPopover {\r\n close: () => void;\r\n}\r\n\r\n@Component({\r\n selector: 'sd-popover',\r\n templateUrl: './popover.component.html',\r\n styleUrls: ['./popover.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n exportAs: 'sdPopover',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PopoverComponent implements SdPopover, OnChanges, OnInit, OnDestroy {\r\n classList: Record<string, boolean> = {};\r\n panelId = `sd-popover-panel-${uuid.v4()}`;\r\n isMobileOrTablet = false;\r\n mouseState$ = new BehaviorSubject<boolean>(false);\r\n trigger: PopoverTriggerDirective = null;\r\n\r\n @ViewChild(TemplateRef) templateRef: TemplateRef<any>;\r\n @ViewChild('panel') panel: ElementRef<HTMLDivElement>;\r\n @ContentChild(PopoverContentDirective) popoverContent: PopoverContentDirective\r\n\r\n @Input('class') \r\n set panelClass(classes: string) {\r\n const previousPanelClass = this.#previousPanelClass;\r\n\r\n if (previousPanelClass && previousPanelClass.length) {\r\n previousPanelClass.split(' ').forEach((className: string) => {\r\n this.classList[className] = false;\r\n });\r\n }\r\n\r\n this.#previousPanelClass = classes;\r\n\r\n if (classes && classes.length) {\r\n classes.split(' ').forEach((className: string) => {\r\n this.classList[className] = true;\r\n });\r\n }\r\n };\r\n #previousPanelClass: string;\r\n @Input() width: 'lg' | 'md' | 'sm' | string = 'sm';\r\n @Input() height: string = 'auto';\r\n @Input() type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger' = 'normal';\r\n @Input()\r\n get position(): Position {\r\n return this.#xPosition;\r\n }\r\n set position(value: Position) {\r\n this.#xPosition = value;\r\n this.setPositionClasses();\r\n }\r\n #xPosition: Position;\r\n\r\n @Output() readonly closed = new EventEmitter<void>();\r\n @Output() readonly opened = new EventEmitter<any>();\r\n\r\n @HostListener('document:click', ['$event.target'])\r\n _hostClick(targetElement) {\r\n if (this.panel?.nativeElement) {\r\n const isInside = this.panel.nativeElement.contains(targetElement);\r\n if (!isInside) {\r\n this.setMouseState(false);\r\n }\r\n }\r\n }\r\n\r\n constructor(\r\n private cdRef: ChangeDetectorRef,\r\n private deviceService: DeviceDetectorService\r\n ) {\r\n this.isMobileOrTablet = !deviceService.isDesktop();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if(changes.type) {\r\n const type = changes.type.currentValue;\r\n const preType = changes.type.previousValue;\r\n if (preType) {\r\n this.classList[`sd-popover--${preType}`] = false;\r\n }\r\n if (type) {\r\n this.classList[`sd-popover--${type}`] = true;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.setPositionClasses();\r\n this.width = this.width || '80vw';\r\n if (!this.isMobileOrTablet) {\r\n switch (this.width) {\r\n case 'lg':\r\n this.width = '80vw';\r\n break;\r\n case 'md':\r\n this.width = '60vw';\r\n break;\r\n case 'sm':\r\n this.width = '40vw';\r\n break;\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.closed.complete();\r\n this.opened.complete();\r\n this.mouseState$.complete();\r\n }\r\n\r\n close = () => {\r\n this.mouseState$.next(false);\r\n this.closed.emit();\r\n };\r\n\r\n setPositionClasses = (pos: Position = this.position) => {\r\n const classes = this.classList;\r\n classes['sd-popover-above'] = pos === 'above';\r\n classes['sd-popover-below'] = pos === 'below';\r\n\r\n this.cdRef?.markForCheck();\r\n };\r\n\r\n addArrowTranslateX = (offset: number) => {\r\n const arrowElement: HTMLElement = document.querySelector(`#${this.panelId} .sd-popover-arrow`);\r\n if (arrowElement && offset) {\r\n try {\r\n const style = window.getComputedStyle(arrowElement);\r\n const matrix = new WebKitCSSMatrix(style.transform);\r\n const translateX = matrix.m41 + offset;\r\n const translateY = matrix.m42;\r\n arrowElement.style.transform = `translateX(${translateX}px) translateY(${translateY}px)`;\r\n } catch (error) {}\r\n }\r\n };\r\n\r\n setMouseState = (visible: boolean) => {\r\n if (!visible) {\r\n // chỉ được tắt khi đang không focus element nào bên trong panel\r\n // tránh lỗi có control mở overlay khiến cho mất mouseenter ở panel\r\n const activeElement = document.activeElement;\r\n const panelElement = this.panel.nativeElement;\r\n if (panelElement?.contains(activeElement)) {\r\n return;\r\n }\r\n }\r\n this.mouseState$.next(visible);\r\n };\r\n}\r\n","import { Directionality } from \"@angular/cdk/bidi\";\r\nimport {\r\n FlexibleConnectedPositionStrategy,\r\n Overlay,\r\n OverlayConfig,\r\n OverlayRef,\r\n} from \"@angular/cdk/overlay\";\r\nimport { Platform } from \"@angular/cdk/platform\";\r\nimport { TemplatePortal } from \"@angular/cdk/portal\";\r\nimport {\r\n AfterContentInit,\r\n AfterViewInit,\r\n Directive,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n Optional,\r\n Output,\r\n ViewContainerRef,\r\n} from \"@angular/core\";\r\nimport { fromEvent, merge, Subject, Subscription } from \"rxjs\";\r\nimport {\r\n auditTime,\r\n debounceTime,\r\n distinctUntilChanged,\r\n filter,\r\n map,\r\n mapTo,\r\n takeUntil,\r\n tap,\r\n} from \"rxjs/operators\";\r\nimport { Position } from \"../popover.model\";\r\nimport { PopoverComponent } from \"../popover/popover.component\";\r\n\r\n@Directive({\r\n selector: \"[sdPopoverTriggerFor]\",\r\n host: {\r\n \"aria-haspopup\": \"true\",\r\n class: \"sd-popover-trigger\",\r\n },\r\n exportAs: \"sdPopoverTrigger\",\r\n})\r\nexport class PopoverTriggerDirective implements AfterViewInit, OnDestroy {\r\n #overlayRef: OverlayRef | null = null;\r\n #popoverClose$ = Subscription.EMPTY;\r\n #portal: TemplatePortal;\r\n #destroy$ = new Subject();\r\n\r\n popoverOpen = false;\r\n\r\n @Input(\"sdPopoverTriggerFor\")\r\n get popover() {\r\n return this.#popover;\r\n }\r\n set popover(popover: PopoverComponent) {\r\n if (!popover || popover === this.#popover) {\r\n return;\r\n }\r\n this.#popover = popover;\r\n this.#popoverClose$.unsubscribe();\r\n if (popover) {\r\n this.#popoverClose$ = popover.closed.subscribe(() => {\r\n this.#destroyPopover();\r\n });\r\n }\r\n }\r\n #popover: PopoverComponent;\r\n\r\n @Input(\"sdPopoverData\")\r\n popoverData: any;\r\n\r\n @Input(\"sdPopoverDisabled\")\r\n disabled: boolean = false;\r\n\r\n @Output() popoverOpened = new EventEmitter<void>();\r\n @Output() popoverClosed = new EventEmitter<void>();\r\n\r\n constructor(\r\n private _overlay: Overlay,\r\n private _element: ElementRef<HTMLElement>,\r\n private _ngZone: NgZone,\r\n private viewContainerRef: ViewContainerRef,\r\n private elementRef: ElementRef,\r\n private platform: Platform,\r\n @Optional() private _dir: Directionality\r\n ) {}\r\n\r\n ngAfterViewInit(): void {\r\n if (this.popover) {\r\n const nativeElement = this.elementRef.nativeElement;\r\n\r\n const hostMouseState$ = merge(\r\n fromEvent(nativeElement, \"mouseenter\").pipe(mapTo(true)),\r\n fromEvent(nativeElement, \"mouseleave\").pipe(mapTo(false))\r\n );\r\n\r\n const popoverMouseState$ = this.popover.mouseState$.pipe(\r\n // chỉ lấy luồng emit open bởi chính trigger (tránh lỗi nhiều trigger cho một popover)\r\n filter((v) => !this.popover.trigger || this.popover.trigger == this)\r\n );\r\n\r\n const mergedMouseState$ = merge(popoverMouseState$, hostMouseState$);\r\n\r\n mergedMouseState$\r\n .pipe(\r\n debounceTime(100),\r\n distinctUntilChanged(),\r\n filter(() => this.platform.isBrowser),\r\n takeUntil(this.#destroy$)\r\n )\r\n .subscribe((visible) => {\r\n if (visible && !this.disabled) {\r\n this.openPopover();\r\n } else {\r\n this.closePopover();\r\n }\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy() {\r\n this.#destroy$.next();\r\n this.#destroy$.complete();\r\n if (this.#overlayRef) {\r\n this.#overlayRef.dispose();\r\n this.#overlayRef = null;\r\n }\r\n }\r\n\r\n openPopover = () => {\r\n if (this.popoverOpen) {\r\n return;\r\n }\r\n\r\n const overlayRef = this.#createOverlay();\r\n const overlayConfig = overlayRef.getConfig();\r\n const positionStrategy =\r\n overlayConfig.positionStrategy as FlexibleConnectedPositionStrategy;\r\n this.#setPosition(positionStrategy);\r\n overlayConfig.hasBackdrop = false;\r\n overlayRef.attach(this.#getPortal());\r\n this.popover.trigger = this;\r\n this.#setIsPopoverOpen(true);\r\n this.popover.opened.next(this.popoverData);\r\n };\r\n\r\n closePopover = () => {\r\n this.popover.closed.emit();\r\n };\r\n\r\n #setIsPopoverOpen = (isOpen: boolean) => {\r\n this.popoverOpen = isOpen;\r\n this.popoverOpen ? this.popoverOpened.emit() : this.popoverClosed.emit();\r\n };\r\n\r\n #getPortal = (): TemplatePortal => {\r\n if (\r\n !this.#portal ||\r\n this.#portal.templateRef !== this.popover.templateRef ||\r\n this.#portal.context?.data !== this.popoverData\r\n ) {\r\n this.#portal = new TemplatePortal(\r\n this.popover.templateRef,\r\n this.viewContainerRef,\r\n {\r\n data: this.popoverData\r\n }\r\n );\r\n }\r\n\r\n return this.#portal;\r\n };\r\n\r\n #createOverlay = () => {\r\n if (!this.#overlayRef) {\r\n const config = this.#getOverlayConfig();\r\n this.#subscribeToPositions(\r\n config.positionStrategy as FlexibleConnectedPositionStrategy\r\n );\r\n this.#overlayRef = this._overlay.create(config);\r\n }\r\n\r\n return this.#overlayRef;\r\n };\r\n\r\n #setPosition = (positionStrategy: FlexibleConnectedPositionStrategy) => {\r\n let originX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let originY: \"top\" | \"center\" | \"bottom\" = \"top\";\r\n let overlayX: \"start\" | \"center\" | \"end\" = \"center\";\r\n let overlayY: \"top\" | \"center\" | \"bottom\" = \"bottom\";\r\n let offsetX = 0;\r\n let offsetY = 16;\r\n\r\n switch (this.popover.position) {\r\n case \"above\":\r\n originY = \"top\";\r\n overlayY = \"bottom\";\r\n break;\r\n case \"below\":\r\n originY = \"bottom\";\r\n overlayY = \"top\";\r\n break;\r\n }\r\n\r\n positionStrategy.withPositions([\r\n // theo input\r\n { originX, originY, overlayX, overlayY, offsetY: originY == \"top\" ? -offsetY : offsetY },\r\n // giữa trên\r\n {\r\n originX: \"center\",\r\n originY: \"top\",\r\n overlayX: \"center\",\r\n overlayY: \"bottom\",\r\n offsetX,\r\n offsetY: -offsetY,\r\n },\r\n // giữa dưới\r\n {\r\n originX: \"center\",\r\n originY: \"bottom\",\r\n overlayX: \"center\",\r\n overlayY: \"top\",\r\n offsetX,\r\n offsetY,\r\n },\r\n ]);\r\n };\r\n\r\n #getOverlayConfig = () => {\r\n return new OverlayConfig({\r\n positionStrategy: this._overlay\r\n .position()\r\n .flexibleConnectedTo(this._element)\r\n .withLockedPosition()\r\n .withGrowAfterOpen()\r\n .withTransformOriginOn(\".sd-popover-panel\"),\r\n backdropClass: \"cdk-overlay-transparent-backdrop\",\r\n panelClass: this.popover.panelClass,\r\n direction: this._dir,\r\n width: this.popover.width,\r\n height: this.popover.height,\r\n });\r\n };\r\n\r\n #subscribeToPositions = (position: FlexibleConnectedPositionStrategy) => {\r\n if (this.popover.setPositionClasses) {\r\n position.positionChanges.subscribe((change) => {\r\n const pos: Position =\r\n change.connectionPair.overlayY === \"top\" ? \"below\" : \"above\";\r\n\r\n if (this._ngZone) {\r\n this._ngZone.run(() => this.popover.setPositionClasses(pos));\r\n } else {\r\n this.popover.setPositionClasses(pos);\r\n }\r\n\r\n const originElement: HTMLElement = this.elementRef.nativeElement;\r\n const overlayElement: HTMLElement = (\r\n this.viewContainerRef.get(0) as any\r\n )?.rootNodes[0];\r\n if (originElement && overlayElement) {\r\n const originRect = originElement.getBoundingClientRect();\r\n const overlayRect = overlayElement.getBoundingClientRect();\r\n const originLeft = originRect.left + originRect.width / 2;\r\n const overlayLeft = overlayRect.left + overlayRect.width / 2;\r\n\r\n const offset = originLeft - overlayLeft;\r\n\r\n this.popover.addArrowTranslateX(offset);\r\n }\r\n });\r\n }\r\n };\r\n\r\n #destroyPopover = () => {\r\n if (!this.#overlayRef || !this.popoverOpen) {\r\n return;\r\n }\r\n this.#overlayRef.detach();\r\n this.#setIsPopoverOpen(false);\r\n };\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PopoverComponent } from './popover/popover.component';\r\nimport { PopoverTriggerDirective } from './directives/popover-trigger.directive';\r\nimport { A11yModule } from '@angular/cdk/a11y';\r\nimport { PopoverContentDirective } from './directives/popover-content.directive';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [\r\n PopoverComponent, \r\n PopoverTriggerDirective, \r\n PopoverContentDirective\r\n ],\r\n imports: [\r\n CommonModule,\r\n A11yModule\r\n ],\r\n exports: [\r\n PopoverComponent, \r\n PopoverTriggerDirective,\r\n PopoverContentDirective\r\n ]\r\n})\r\nexport class SdPopoverModule { }\r\n","/*\r\n * Public API Surface of superdev-angular-core\r\n */\r\n\r\nexport { SdPopoverModule } from './lib/popover.module';\r\n\r\nexport * from './lib/popover/popover.component';\r\nexport * from './lib/directives/popover-trigger.directive';\r\nexport * from './lib/directives/popover-content.directive';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["uuid.v4"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"__symbolic":"module","version":4,"metadata":{"SdPopoverModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"PopoverComponent"},{"__symbolic":"reference","name":"PopoverTriggerDirective"},{"__symbolic":"reference","name":"PopoverContentDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"A11yModule","line":17,"character":4}],"exports":[{"__symbolic":"reference","name":"PopoverComponent"},{"__symbolic":"reference","name":"PopoverTriggerDirective"},{"__symbolic":"reference","name":"PopoverContentDirective"}]}]}],"members":{}},"SdPopover":{"__symbolic":"interface"},"PopoverComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":29,"character":1},"arguments":[{"selector":"sd-popover","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":33,"character":17},"member":"None"},"exportAs":"sdPopover","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":35,"character":19},"member":"OnPush"},"template":"<ng-template let-data=\"data\">\r\n <div\r\n class=\"sd-popover-panel mat-elevation-z6\"\r\n [id]=\"panelId\"\r\n [ngClass]=\"classList\"\r\n tabindex=\"-1\"\r\n role=\"menu\"\r\n (mouseenter)=\"setMouseState(true)\"\r\n (mouseleave)=\"setMouseState(false)\"\r\n cdkTrapFocus\r\n #panel\r\n >\r\n <div class=\"sd-popover-content\">\r\n <ng-container *ngIf=\"popoverContent?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"popoverContent.templateRef; context:{data: data}\"></ng-container>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"sd-popover-arrow\"></div>\r\n </div>\r\n</ng-template>","styles":[".text-black400{color:#757575}.sd-popover-panel{background:#fff;height:100%;position:relative;width:100%}.sd-popover-panel .sd-popover-arrow{clear:both;height:0;left:50%;position:absolute;width:0}.sd-popover-panel.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%;transform:translateX(-6px) translateY(-1px)}.sd-popover-panel.sd-popover-above:after{content:\" \";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%;transform:translateX(-6px) translateY(1px)}.sd-popover-panel.sd-popover-below:before{content:\" \";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel .sd-popover-content{height:100%}.sd-popover--normal{background:#fff;color:#000}.sd-popover--normal.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--normal.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--primary{background:#e7e9ff;color:#2962ff}.sd-popover--primary.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--primary.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--info{background:#e7e9ff;color:#2962ff}.sd-popover--info.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--info.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--success{background:#dbefdc;color:#4caf50}.sd-popover--success.sd-popover-above .sd-popover-arrow{border-color:#dbefdc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--success.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #dbefdc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--warning{background:#ffeacc;color:#ff9600}.sd-popover--warning.sd-popover-above .sd-popover-arrow{border-color:#ffeacc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--warning.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #ffeacc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--danger{background:#fed5d0;color:#f82c13}.sd-popover--danger.sd-popover-above .sd-popover-arrow{border-color:#fed5d0 transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--danger.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fed5d0;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover-content{padding:16px}"]}]}],"members":{"templateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":44,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":44,"character":13}]}]}],"panel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":45,"character":3},"arguments":["panel"]}]}],"popoverContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":46,"character":3},"arguments":[{"__symbolic":"reference","name":"PopoverContentDirective"}]}]}],"panelClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":48,"character":3}}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":49,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":50,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":51,"character":3}}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3}}]}],"closed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"opened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":63,"character":3}}]}],"_hostClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":65,"character":3},"arguments":["document:click",["$event.target"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":76,"character":19},{"__symbolic":"reference","module":"ngx-device-detector","name":"DeviceDetectorService","line":77,"character":27}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"PopoverTriggerDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":36,"character":1},"arguments":[{"selector":"[sdPopoverTriggerFor]","host":{"aria-haspopup":"true","class":"sd-popover-trigger","$quoted$":["aria-haspopup"]},"exportAs":"sdPopoverTrigger"}]}],"members":{"popover":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3},"arguments":["sdPopoverTriggerFor"]}]}],"popoverData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3},"arguments":["sdPopoverData"]}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":73,"character":3},"arguments":["sdPopoverDisabled"]}]}],"popoverOpened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":76,"character":3}}]}],"popoverClosed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":86,"character":5}}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":80,"character":22},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":81,"character":33,"context":{"typeName":"HTMLElement"},"module":"./src/lib/directives/popover-trigger.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":21},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":83,"character":30},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":81,"character":33,"context":{"typeName":"HTMLElement"},"module":"./src/lib/directives/popover-trigger.directive"}]},{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":85,"character":22},{"__symbolic":"reference","module":"@angular/cdk/bidi","name":"Directionality","line":86,"character":30}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"PopoverContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[sdPopoverContent]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}}},"origins":{"SdPopoverModule":"./src/lib/popover.module","SdPopover":"./src/lib/popover/popover.component","PopoverComponent":"./src/lib/popover/popover.component","PopoverTriggerDirective":"./src/lib/directives/popover-trigger.directive","PopoverContentDirective":"./src/lib/directives/popover-content.directive"},"importAs":"@sd-angular/core/popover"}
|
|
1
|
+
{"__symbolic":"module","version":4,"metadata":{"SdPopoverModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":9,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"PopoverComponent"},{"__symbolic":"reference","name":"PopoverTriggerDirective"},{"__symbolic":"reference","name":"PopoverContentDirective"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/cdk/a11y","name":"A11yModule","line":17,"character":4}],"exports":[{"__symbolic":"reference","name":"PopoverComponent"},{"__symbolic":"reference","name":"PopoverTriggerDirective"},{"__symbolic":"reference","name":"PopoverContentDirective"}]}]}],"members":{}},"SdPopover":{"__symbolic":"interface"},"PopoverComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":29,"character":1},"arguments":[{"selector":"sd-popover","encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":33,"character":17},"member":"None"},"exportAs":"sdPopover","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":35,"character":19},"member":"OnPush"},"template":"<ng-template let-data=\"data\">\r\n <div\r\n class=\"sd-popover-panel mat-elevation-z6\"\r\n [id]=\"panelId\"\r\n [ngClass]=\"classList\"\r\n tabindex=\"-1\"\r\n role=\"menu\"\r\n (mouseenter)=\"setMouseState(true)\"\r\n (mouseleave)=\"setMouseState(false)\"\r\n cdkTrapFocus\r\n #panel\r\n >\r\n <div class=\"sd-popover-content\">\r\n <ng-container *ngIf=\"popoverContent?.templateRef\">\r\n <ng-container *ngTemplateOutlet=\"popoverContent.templateRef; context:{data: data}\"></ng-container>\r\n </ng-container>\r\n <ng-content></ng-content>\r\n </div>\r\n <div class=\"sd-popover-arrow\"></div>\r\n </div>\r\n</ng-template>","styles":[".text-black400{color:#757575}.sd-popover-panel{background:#fff;height:100%;position:relative;width:100%}.sd-popover-panel .sd-popover-arrow{clear:both;height:0;left:50%;position:absolute;width:0}.sd-popover-panel.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%;transform:translateX(-6px) translateY(-1px)}.sd-popover-panel.sd-popover-above:after{content:\" \";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%;transform:translateX(-6px) translateY(1px)}.sd-popover-panel.sd-popover-below:before{content:\" \";display:block;height:16px;position:absolute;width:100%}.sd-popover-panel .sd-popover-content{height:100%}.sd-popover--normal{background:#fff;color:#000}.sd-popover--normal.sd-popover-above .sd-popover-arrow{border-color:#fff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--normal.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--primary{background:#e7e9ff;color:#2962ff}.sd-popover--primary.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--primary.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--info{background:#e7e9ff;color:#2962ff}.sd-popover--info.sd-popover-above .sd-popover-arrow{border-color:#e7e9ff transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--info.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #e7e9ff;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--success{background:#dbefdc;color:#4caf50}.sd-popover--success.sd-popover-above .sd-popover-arrow{border-color:#dbefdc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--success.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #dbefdc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--warning{background:#ffeacc;color:#ff9600}.sd-popover--warning.sd-popover-above .sd-popover-arrow{border-color:#ffeacc transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--warning.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #ffeacc;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover--danger{background:#fed5d0;color:#f82c13}.sd-popover--danger.sd-popover-above .sd-popover-arrow{border-color:#fed5d0 transparent transparent;border-style:solid;border-width:12px 12px 0;top:100%}.sd-popover--danger.sd-popover-below .sd-popover-arrow{border-color:transparent transparent #fed5d0;border-style:solid;border-width:0 12px 12px;bottom:100%}.sd-popover-content{padding:16px}"]}]}],"members":{"templateRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":44,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":44,"character":13}]}]}],"panel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":45,"character":3},"arguments":["panel"]}]}],"popoverContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":46,"character":3},"arguments":[{"__symbolic":"reference","name":"PopoverContentDirective"}]}]}],"panelClass":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":48,"character":3},"arguments":["class"]}]}],"width":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":67,"character":3}}]}],"height":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":68,"character":3}}]}],"type":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":69,"character":3}}]}],"position":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3}}]}],"closed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":80,"character":3}}]}],"opened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":81,"character":3}}]}],"_hostClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":83,"character":3},"arguments":["document:click",["$event.target"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":94,"character":19},{"__symbolic":"reference","module":"ngx-device-detector","name":"DeviceDetectorService","line":95,"character":27}]}],"ngOnChanges":[{"__symbolic":"method"}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"PopoverTriggerDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":36,"character":1},"arguments":[{"selector":"[sdPopoverTriggerFor]","host":{"aria-haspopup":"true","class":"sd-popover-trigger","$quoted$":["aria-haspopup"]},"exportAs":"sdPopoverTrigger"}]}],"members":{"popover":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":52,"character":3},"arguments":["sdPopoverTriggerFor"]}]}],"popoverData":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":70,"character":3},"arguments":["sdPopoverData"]}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":73,"character":3},"arguments":["sdPopoverDisabled"]}]}],"popoverOpened":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":76,"character":3}}]}],"popoverClosed":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":77,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":86,"character":5}}]],"parameters":[{"__symbolic":"reference","module":"@angular/cdk/overlay","name":"Overlay","line":80,"character":22},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":81,"character":33,"context":{"typeName":"HTMLElement"},"module":"./src/lib/directives/popover-trigger.directive"}]},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":82,"character":21},{"__symbolic":"reference","module":"@angular/core","name":"ViewContainerRef","line":83,"character":30},{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":81,"character":33,"context":{"typeName":"HTMLElement"},"module":"./src/lib/directives/popover-trigger.directive"}]},{"__symbolic":"reference","module":"@angular/cdk/platform","name":"Platform","line":85,"character":22},{"__symbolic":"reference","module":"@angular/cdk/bidi","name":"Directionality","line":86,"character":30}]}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"PopoverContentDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":2,"character":1},"arguments":[{"selector":"[sdPopoverContent]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TemplateRef","module":"@angular/core","arguments":[{"__symbolic":"reference","name":"any"}]}]}]}}},"origins":{"SdPopoverModule":"./src/lib/popover.module","SdPopover":"./src/lib/popover/popover.component","PopoverComponent":"./src/lib/popover/popover.component","PopoverTriggerDirective":"./src/lib/directives/popover-trigger.directive","PopoverContentDirective":"./src/lib/directives/popover-content.directive"},"importAs":"@sd-angular/core/popover"}
|
|
@@ -19,7 +19,7 @@ export declare class PopoverComponent implements SdPopover, OnChanges, OnInit, O
|
|
|
19
19
|
templateRef: TemplateRef<any>;
|
|
20
20
|
panel: ElementRef<HTMLDivElement>;
|
|
21
21
|
popoverContent: PopoverContentDirective;
|
|
22
|
-
panelClass: string;
|
|
22
|
+
set panelClass(classes: string);
|
|
23
23
|
width: 'lg' | 'md' | 'sm' | string;
|
|
24
24
|
height: string;
|
|
25
25
|
type: 'normal' | 'primary' | 'info' | 'success' | 'warning' | 'danger';
|
|
index 954ead9..dc9f71a 100644
|
|
|
Binary file
|