@sd-angular/core 1.2.19 → 1.2.20

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.
@@ -354,6 +354,7 @@
354
354
  this.type = 'normal';
355
355
  _xPosition.set(this, void 0);
356
356
  this.closed = new core.EventEmitter();
357
+ this.opened = new core.EventEmitter();
357
358
  this.close = function () {
358
359
  _this.mouseState$.next(false);
359
360
  _this.closed.emit();
@@ -448,6 +449,7 @@
448
449
  };
449
450
  PopoverComponent.prototype.ngOnDestroy = function () {
450
451
  this.closed.complete();
452
+ this.opened.complete();
451
453
  this.mouseState$.complete();
452
454
  };
453
455
  return PopoverComponent;
@@ -460,7 +462,7 @@
460
462
  encapsulation: core.ViewEncapsulation.None,
461
463
  exportAs: 'sdPopover',
462
464
  changeDetection: core.ChangeDetectionStrategy.OnPush,
463
- styles: [".text-black400{color:#757575}.sd-popover-panel{background:#fff;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--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}"]
465
+ 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}"]
464
466
  },] }
465
467
  ];
466
468
  PopoverComponent.ctorParameters = function () { return [
@@ -477,6 +479,7 @@
477
479
  type: [{ type: core.Input }],
478
480
  position: [{ type: core.Input }],
479
481
  closed: [{ type: core.Output }],
482
+ opened: [{ type: core.Output }],
480
483
  _hostClick: [{ type: core.HostListener, args: ['document:click', ['$event.target'],] }]
481
484
  };
482
485
 
@@ -512,6 +515,7 @@
512
515
  overlayRef.attach(__classPrivateFieldGet(_this, _getPortal).call(_this));
513
516
  _this.popover.trigger = _this;
514
517
  __classPrivateFieldGet(_this, _setIsPopoverOpen).call(_this, true);
518
+ _this.popover.opened.next(_this.popoverData);
515
519
  };
516
520
  this.closePopover = function () {
517
521
  _this.popover.closed.emit();
@@ -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\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.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 };\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":"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"}
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":"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"}
@@ -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.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.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;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--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}],_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,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)}},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,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:[E,R,h],imports:[t.CommonModule,c.A11yModule],exports:[E,R,h]}]}],e.PopoverComponent=E,e.PopoverContentDirective=h,e.PopoverTriggerDirective=R,e.SdPopoverModule=S,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=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})}));
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","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","closePopover","isOpen","context","data","popoverData","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\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.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 };\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","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"]}
@@ -37,6 +37,7 @@ export class PopoverTriggerDirective {
37
37
  overlayRef.attach(__classPrivateFieldGet(this, _getPortal).call(this));
38
38
  this.popover.trigger = this;
39
39
  __classPrivateFieldGet(this, _setIsPopoverOpen).call(this, true);
40
+ this.popover.opened.next(this.popoverData);
40
41
  };
41
42
  this.closePopover = () => {
42
43
  this.popover.closed.emit();
@@ -222,4 +223,4 @@ PopoverTriggerDirective.propDecorators = {
222
223
  popoverOpened: [{ type: Output }],
223
224
  popoverClosed: [{ type: Output }]
224
225
  };
225
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvcG9wb3Zlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvZGlyZWN0aXZlcy9wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFFTCxPQUFPLEVBQ1AsYUFBYSxHQUVkLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBR0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixRQUFRLEVBQ1IsTUFBTSxFQUNOLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFFTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFFTixLQUFLLEVBQ0wsU0FBUyxHQUVWLE1BQU0sZ0JBQWdCLENBQUM7QUFZeEIsTUFBTSxPQUFPLHVCQUF1QjtJQW1DbEMsWUFDVSxRQUFpQixFQUNqQixRQUFpQyxFQUNqQyxPQUFlLEVBQ2YsZ0JBQWtDLEVBQ2xDLFVBQXNCLEVBQ3RCLFFBQWtCLEVBQ04sSUFBb0I7UUFOaEMsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixhQUFRLEdBQVIsUUFBUSxDQUF5QjtRQUNqQyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFr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ZSxRQUFRLEVBQUUsQ0FBQztRQUMxQiwrQ0FBc0I7WUFDcEIsMENBQWlCLE9BQU8sRUFBRSxDQUFDO1lBQzNCLHVCQUFBLElBQUksZUFBZSxJQUFJLEVBQUM7U0FDekI7SUFDSCxDQUFDOzs7O1lBN0ZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2dCQUNqQyxJQUFJLEVBQUU7b0JBQ0osZUFBZSxFQUFFLE1BQU07b0JBQ3ZCLEtBQUssRUFBRSxvQkFBb0I7aUJBQzVCO2dCQUNELFFBQVEsRUFBRSxrQkFBa0I7YUFDN0I7OztZQXhDQyxPQUFPO1lBVVAsVUFBVTtZQUdWLE1BQU07WUFJTixnQkFBZ0I7WUFQaEIsVUFBVTtZQU5ILFFBQVE7WUFQUixjQUFjLHVCQXNGbEIsUUFBUTs7O3NCQWxDVixLQUFLLFNBQUMscUJBQXFCOzBCQWtCM0IsS0FBSyxTQUFDLGVBQWU7dUJBR3JCLEtBQUssU0FBQyxtQkFBbUI7NEJBR3pCLE1BQU07NEJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9iaWRpXCI7XHJcbmltcG9ydCB7XHJcbiAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxyXG4gIE92ZXJsYXksXHJcbiAgT3ZlcmxheUNvbmZpZyxcclxuICBPdmVybGF5UmVmLFxyXG59IGZyb20gXCJAYW5ndWxhci9jZGsvb3ZlcmxheVwiO1xyXG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gXCJAYW5ndWxhci9jZGsvcGxhdGZvcm1cIjtcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xyXG5pbXBvcnQge1xyXG4gIEFmdGVyQ29udGVudEluaXQsXHJcbiAgQWZ0ZXJWaWV3SW5pdCxcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSW5wdXQsXHJcbiAgTmdab25lLFxyXG4gIE9uRGVzdHJveSxcclxuICBPcHRpb25hbCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NvbnRhaW5lclJlZixcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBmcm9tRXZlbnQsIG1lcmdlLCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1xyXG4gIGF1ZGl0VGltZSxcclxuICBkZWJvdW5jZVRpbWUsXHJcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXHJcbiAgZmlsdGVyLFxyXG4gIG1hcCxcclxuICBtYXBUbyxcclxuICB0YWtlVW50aWwsXHJcbiAgdGFwLFxyXG59IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gXCIuLi9wb3BvdmVyLm1vZGVsXCI7XHJcbmltcG9ydCB7IFBvcG92ZXJDb21wb25lbnQgfSBmcm9tIFwiLi4vcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudFwiO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6IFwiW3NkUG9wb3ZlclRyaWdnZXJGb3JdXCIsXHJcbiAgaG9zdDoge1xyXG4gICAgXCJhcmlhLWhhc3BvcHVwXCI6IFwidHJ1ZVwiLFxyXG4gICAgY2xhc3M6IFwic2QtcG9wb3Zlci10cmlnZ2VyXCIsXHJcbiAgfSxcclxuICBleHBvcnRBczogXCJzZFBvcG92ZXJUcmlnZ2VyXCIsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XHJcbiAgI292ZXJsYXlSZWY6IE92ZXJsYXlSZWYgfCBudWxsID0gbnVsbDtcclxuICAjcG9wb3ZlckNsb3NlJCA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcclxuICAjcG9ydGFsOiBUZW1wbGF0ZVBvcnRhbDtcclxuICAjZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG5cclxuICBwb3BvdmVyT3BlbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoXCJzZFBvcG92ZXJUcmlnZ2VyRm9yXCIpXHJcbiAgZ2V0IHBvcG92ZXIoKSB7XHJcbiAgICByZXR1cm4gdGhpcy4jcG9wb3ZlcjtcclxuICB9XHJcbiAgc2V0IHBvcG92ZXIocG9wb3ZlcjogUG9wb3ZlckNvbXBvbmVudCkge1xyXG4gICAgaWYgKCFwb3BvdmVyIHx8IHBvcG92ZXIgPT09IHRoaXMuI3BvcG92ZXIpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy4jcG9wb3ZlciA9IHBvcG92ZXI7XHJcbiAgICB0aGlzLiNwb3BvdmVyQ2xvc2UkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICBpZiAocG9wb3Zlcikge1xyXG4gICAgICB0aGlzLiNwb3BvdmVyQ2xvc2UkID0gcG9wb3Zlci5jbG9zZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLiNkZXN0cm95UG9wb3ZlcigpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbiAgI3BvcG92ZXI6IFBvcG92ZXJDb21wb25lbnQ7XHJcblxyXG4gIEBJbnB1dChcInNkUG9wb3ZlckRhdGFcIilcclxuICBwb3BvdmVyRGF0YTogYW55O1xyXG5cclxuICBASW5wdXQoXCJzZFBvcG92ZXJEaXNhYmxlZFwiKVxyXG4gIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBPdXRwdXQoKSBwb3BvdmVyT3BlbmVkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSBwb3BvdmVyQ2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwcml2YXRlIF9lbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcclxuICAgIHByaXZhdGUgX25nWm9uZTogTmdab25lLFxyXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgcHJpdmF0ZSBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHJpdmF0ZSBwbGF0Zm9ybTogUGxhdGZvcm0sXHJcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9kaXI6IERpcmVjdGlvbmFsaXR5XHJcbiAgKSB7fVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5wb3BvdmVyKSB7XHJcbiAgICAgIGNvbnN0IG5hdGl2ZUVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuXHJcbiAgICAgIGNvbnN0IGhvc3RNb3VzZVN0YXRlJCA9IG1lcmdlKFxyXG4gICAgICAgIGZyb21FdmVudChuYXRpdmVFbGVtZW50LCBcIm1vdXNlZW50ZXJcIikucGlwZShtYXBUbyh0cnVlKSksXHJcbiAgICAgICAgZnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsIFwibW91c2VsZWF2ZVwiKS5waXBlKG1hcFRvKGZhbHNlKSlcclxuICAgICAgKTtcclxuXHJcbiAgICAgIGNvbnN0IHBvcG92ZXJNb3VzZVN0YXRlJCA9IHRoaXMucG9wb3Zlci5tb3VzZVN0YXRlJC5waXBlKFxyXG4gICAgICAgIC8vIGNo4buJIGzhuqV5IGx14buTbmcgZW1pdCBvcGVuIGLhu59pIGNow61uaCB0cmlnZ2VyICh0csOhbmggbOG7l2kgbmhp4buBdSB0cmlnZ2VyIGNobyBt4buZdCBwb3BvdmVyKVxyXG4gICAgICAgIGZpbHRlcigodikgPT4gIXRoaXMucG9wb3Zlci50cmlnZ2VyIHx8IHRoaXMucG9wb3Zlci50cmlnZ2VyID09IHRoaXMpXHJcbiAgICAgICk7XHJcblxyXG4gICAgICBjb25zdCBtZXJnZWRNb3VzZVN0YXRlJCA9IG1lcmdlKHBvcG92ZXJNb3VzZVN0YXRlJCwgaG9zdE1vdXNlU3RhdGUkKTtcclxuXHJcbiAgICAgIG1lcmdlZE1vdXNlU3RhdGUkXHJcbiAgICAgICAgLnBpcGUoXHJcbiAgICAgICAgICBkZWJvdW5jZVRpbWUoMTAwKSxcclxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXHJcbiAgICAgICAgICBmaWx0ZXIoKCkgPT4gdGhpcy5wbGF0Zm9ybS5pc0Jyb3dzZXIpLFxyXG4gICAgICAgICAgdGFrZVVudGlsKHRoaXMuI2Rlc3Ryb3kkKVxyXG4gICAgICAgIClcclxuICAgICAgICAuc3Vic2NyaWJlKCh2aXNpYmxlKSA9PiB7XHJcbiAgICAgICAgICBpZiAodmlzaWJsZSAmJiAhdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICB0aGlzLm9wZW5Qb3BvdmVyKCk7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLmNsb3NlUG9wb3ZlcigpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNkZXN0cm95JC5uZXh0KCk7XHJcbiAgICB0aGlzLiNkZXN0cm95JC5jb21wbGV0ZSgpO1xyXG4gICAgaWYgKHRoaXMuI292ZXJsYXlSZWYpIHtcclxuICAgICAgdGhpcy4jb3ZlcmxheVJlZi5kaXNwb3NlKCk7XHJcbiAgICAgIHRoaXMuI292ZXJsYXlSZWYgPSBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3BlblBvcG92ZXIgPSAoKSA9PiB7XHJcbiAgICBpZiAodGhpcy5wb3BvdmVyT3Blbikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgb3ZlcmxheVJlZiA9IHRoaXMuI2NyZWF0ZU92ZXJsYXkoKTtcclxuICAgIGNvbnN0IG92ZXJsYXlDb25maWcgPSBvdmVybGF5UmVmLmdldENvbmZpZygpO1xyXG4gICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9XHJcbiAgICAgIG92ZXJsYXlDb25maWcucG9zaXRpb25TdHJhdGVneSBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3k7XHJcbiAgICB0aGlzLiNzZXRQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcclxuICAgIG92ZXJsYXlDb25maWcuaGFzQmFja2Ryb3AgPSBmYWxzZTtcclxuICAgIG92ZXJsYXlSZWYuYXR0YWNoKHRoaXMuI2dldFBvcnRhbCgpKTtcclxuICAgIHRoaXMucG9wb3Zlci50cmlnZ2VyID0gdGhpcztcclxuICAgIHRoaXMuI3NldElzUG9wb3Zlck9wZW4odHJ1ZSk7XHJcbiAgfTtcclxuXHJcbiAgY2xvc2VQb3BvdmVyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5wb3BvdmVyLmNsb3NlZC5lbWl0KCk7XHJcbiAgfTtcclxuXHJcbiAgI3NldElzUG9wb3Zlck9wZW4gPSAoaXNPcGVuOiBib29sZWFuKSA9PiB7XHJcbiAgICB0aGlzLnBvcG92ZXJPcGVuID0gaXNPcGVuO1xyXG4gICAgdGhpcy5wb3BvdmVyT3BlbiA/IHRoaXMucG9wb3Zlck9wZW5lZC5lbWl0KCkgOiB0aGlzLnBvcG92ZXJDbG9zZWQuZW1pdCgpO1xyXG4gIH07XHJcblxyXG4gICNnZXRQb3J0YWwgPSAoKTogVGVtcGxhdGVQb3J0YWwgPT4ge1xyXG4gICAgaWYgKFxyXG4gICAgICAhdGhpcy4jcG9ydGFsIHx8XHJcbiAgICAgIHRoaXMuI3BvcnRhbC50ZW1wbGF0ZVJlZiAhPT0gdGhpcy5wb3BvdmVyLnRlbXBsYXRlUmVmIHx8XHJcbiAgICAgIHRoaXMuI3BvcnRhbC5jb250ZXh0Py5kYXRhICE9PSB0aGlzLnBvcG92ZXJEYXRhXHJcbiAgICApIHtcclxuICAgICAgdGhpcy4jcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKFxyXG4gICAgICAgIHRoaXMucG9wb3Zlci50ZW1wbGF0ZVJlZixcclxuICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgZGF0YTogdGhpcy5wb3BvdmVyRGF0YVxyXG4gICAgICAgIH1cclxuICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdGhpcy4jcG9ydGFsO1xyXG4gIH07XHJcblxyXG4gICNjcmVhdGVPdmVybGF5ID0gKCkgPT4ge1xyXG4gICAgaWYgKCF0aGlzLiNvdmVybGF5UmVmKSB7XHJcbiAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuI2dldE92ZXJsYXlDb25maWcoKTtcclxuICAgICAgdGhpcy4jc3Vic2NyaWJlVG9Qb3NpdGlvbnMoXHJcbiAgICAgICAgY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgYXMgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5XHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuI292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZShjb25maWcpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLiNvdmVybGF5UmVmO1xyXG4gIH07XHJcblxyXG4gICNzZXRQb3NpdGlvbiA9IChwb3NpdGlvblN0cmF0ZWd5OiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kpID0+IHtcclxuICAgIGxldCBvcmlnaW5YOiBcInN0YXJ0XCIgfCBcImNlbnRlclwiIHwgXCJlbmRcIiA9IFwiY2VudGVyXCI7XHJcbiAgICBsZXQgb3JpZ2luWTogXCJ0b3BcIiB8IFwiY2VudGVyXCIgfCBcImJvdHRvbVwiID0gXCJ0b3BcIjtcclxuICAgIGxldCBvdmVybGF5WDogXCJzdGFydFwiIHwgXCJjZW50ZXJcIiB8IFwiZW5kXCIgPSBcImNlbnRlclwiO1xyXG4gICAgbGV0IG92ZXJsYXlZOiBcInRvcFwiIHwgXCJjZW50ZXJcIiB8IFwiYm90dG9tXCIgPSBcImJvdHRvbVwiO1xyXG4gICAgbGV0IG9mZnNldFggPSAwO1xyXG4gICAgbGV0IG9mZnNldFkgPSAxNjtcclxuXHJcbiAgICBzd2l0Y2ggKHRoaXMucG9wb3Zlci5wb3NpdGlvbikge1xyXG4gICAgICBjYXNlIFwiYWJvdmVcIjpcclxuICAgICAgICBvcmlnaW5ZID0gXCJ0b3BcIjtcclxuICAgICAgICBvdmVybGF5WSA9IFwiYm90dG9tXCI7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgXCJiZWxvd1wiOlxyXG4gICAgICAgIG9yaWdpblkgPSBcImJvdHRvbVwiO1xyXG4gICAgICAgIG92ZXJsYXlZID0gXCJ0b3BcIjtcclxuICAgICAgICBicmVhaztcclxuICAgIH1cclxuXHJcbiAgICBwb3NpdGlvblN0cmF0ZWd5LndpdGhQb3NpdGlvbnMoW1xyXG4gICAgICAvLyB0aGVvIGlucHV0XHJcbiAgICAgIHsgb3JpZ2luWCwgb3JpZ2luWSwgb3ZlcmxheVgsIG92ZXJsYXlZLCBvZmZzZXRZOiBvcmlnaW5ZID09IFwidG9wXCIgPyAtb2Zmc2V0WSA6IG9mZnNldFkgfSxcclxuICAgICAgLy8gZ2nhu69hIHRyw6puXHJcbiAgICAgIHtcclxuICAgICAgICBvcmlnaW5YOiBcImNlbnRlclwiLFxyXG4gICAgICAgIG9yaWdpblk6IFwidG9wXCIsXHJcbiAgICAgICAgb3ZlcmxheVg6IFwiY2VudGVyXCIsXHJcbiAgICAgICAgb3ZlcmxheVk6IFwiYm90dG9tXCIsXHJcbiAgICAgICAgb2Zmc2V0WCxcclxuICAgICAgICBvZmZzZXRZOiAtb2Zmc2V0WSxcclxuICAgICAgfSxcclxuICAgICAgLy8gZ2nhu69hIGTGsOG7m2lcclxuICAgICAge1xyXG4gICAgICAgIG9yaWdpblg6IFwiY2VudGVyXCIsXHJcbiAgICAgICAgb3JpZ2luWTogXCJib3R0b21cIixcclxuICAgICAgICBvdmVybGF5WDogXCJjZW50ZXJcIixcclxuICAgICAgICBvdmVybGF5WTogXCJ0b3BcIixcclxuICAgICAgICBvZmZzZXRYLFxyXG4gICAgICAgIG9mZnNldFksXHJcbiAgICAgIH0sXHJcbiAgICBdKTtcclxuICB9O1xyXG5cclxuICAjZ2V0T3ZlcmxheUNvbmZpZyA9ICgpID0+IHtcclxuICAgIHJldHVybiBuZXcgT3ZlcmxheUNvbmZpZyh7XHJcbiAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXlcclxuICAgICAgICAucG9zaXRpb24oKVxyXG4gICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuX2VsZW1lbnQpXHJcbiAgICAgICAgLndpdGhMb2NrZWRQb3NpdGlvbigpXHJcbiAgICAgICAgLndpdGhHcm93QWZ0ZXJPcGVuKClcclxuICAgICAgICAud2l0aFRyYW5zZm9ybU9yaWdpbk9uKFwiLnNkLXBvcG92ZXItcGFuZWxcIiksXHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6IFwiY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BcIixcclxuICAgICAgcGFuZWxDbGFzczogdGhpcy5wb3BvdmVyLnBhbmVsQ2xhc3MsXHJcbiAgICAgIGRpcmVjdGlvbjogdGhpcy5fZGlyLFxyXG4gICAgICB3aWR0aDogdGhpcy5wb3BvdmVyLndpZHRoLFxyXG4gICAgICBoZWlnaHQ6IHRoaXMucG9wb3Zlci5oZWlnaHQsXHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICAjc3Vic2NyaWJlVG9Qb3NpdGlvbnMgPSAocG9zaXRpb246IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSkgPT4ge1xyXG4gICAgaWYgKHRoaXMucG9wb3Zlci5zZXRQb3NpdGlvbkNsYXNzZXMpIHtcclxuICAgICAgcG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzLnN1YnNjcmliZSgoY2hhbmdlKSA9PiB7XHJcbiAgICAgICAgY29uc3QgcG9zOiBQb3NpdGlvbiA9XHJcbiAgICAgICAgICBjaGFuZ2UuY29ubmVjdGlvblBhaXIub3ZlcmxheVkgPT09IFwidG9wXCIgPyBcImJlbG93XCIgOiBcImFib3ZlXCI7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9uZ1pvbmUpIHtcclxuICAgICAgICAgIHRoaXMuX25nWm9uZS5ydW4oKCkgPT4gdGhpcy5wb3BvdmVyLnNldFBvc2l0aW9uQ2xhc3Nlcyhwb3MpKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5wb3BvdmVyLnNldFBvc2l0aW9uQ2xhc3Nlcyhwb3MpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3Qgb3JpZ2luRWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudDtcclxuICAgICAgICBjb25zdCBvdmVybGF5RWxlbWVudDogSFRNTEVsZW1lbnQgPSAoXHJcbiAgICAgICAgICB0aGlzLnZpZXdDb250YWluZXJSZWYuZ2V0KDApIGFzIGFueVxyXG4gICAgICAgICk/LnJvb3ROb2Rlc1swXTtcclxuICAgICAgICBpZiAob3JpZ2luRWxlbWVudCAmJiBvdmVybGF5RWxlbWVudCkge1xyXG4gICAgICAgICAgY29uc3Qgb3JpZ2luUmVjdCA9IG9yaWdpbkVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgICBjb25zdCBvdmVybGF5UmVjdCA9IG92ZXJsYXlFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xyXG4gICAgICAgICAgY29uc3Qgb3JpZ2luTGVmdCA9IG9yaWdpblJlY3QubGVmdCArIG9yaWdpblJlY3Qud2lkdGggLyAyO1xyXG4gICAgICAgICAgY29uc3Qgb3ZlcmxheUxlZnQgPSBvdmVybGF5UmVjdC5sZWZ0ICsgb3ZlcmxheVJlY3Qud2lkdGggLyAyO1xyXG5cclxuICAgICAgICAgIGNvbnN0IG9mZnNldCA9IG9yaWdpbkxlZnQgLSBvdmVybGF5TGVmdDtcclxuXHJcbiAgICAgICAgICB0aGlzLnBvcG92ZXIuYWRkQXJyb3dUcmFuc2xhdGVYKG9mZnNldCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICAjZGVzdHJveVBvcG92ZXIgPSAoKSA9PiB7XHJcbiAgICBpZiAoIXRoaXMuI292ZXJsYXlSZWYgfHwgIXRoaXMucG9wb3Zlck9wZW4pIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy4jb3ZlcmxheVJlZi5kZXRhY2goKTtcclxuICAgIHRoaXMuI3NldElzUG9wb3Zlck9wZW4oZmFsc2UpO1xyXG4gIH07XHJcbn1cclxuIl19
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvcG9wb3Zlci8iLCJzb3VyY2VzIjpbInNyYy9saWIvZGlyZWN0aXZlcy9wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ25ELE9BQU8sRUFFTCxPQUFPLEVBQ1AsYUFBYSxHQUVkLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxPQUFPLEVBR0wsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixRQUFRLEVBQ1IsTUFBTSxFQUNOLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9ELE9BQU8sRUFFTCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLE1BQU0sRUFFTixLQUFLLEVBQ0wsU0FBUyxHQUVWLE1BQU0sZ0JBQWdCLENBQUM7QUFZeEIsTUFBTSxPQUFPLHVCQUF1QjtJQW1DbEMsWUFDVSxRQUFpQixFQUNqQixRQUFpQyxFQUNqQyxPQUFlLEVBQ2YsZ0JBQWtDLEVBQ2xDLFVBQXNCLEVBQ3RCLFFBQWtCLEVBQ04sSUFBb0I7UUFOaEMsYUFBUSxHQUFSLFFBQVEsQ0FBUztRQUNqQixhQUFRLEdBQVIsUUFBUSxDQUF5QjtRQUNqQyxZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFr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Q0FBQyxDQUFDO1NBQ047SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNULHdDQUFlLElBQUksRUFBRSxDQUFDO1FBQ3RCLHdDQUFlLFFBQVEsRUFBRSxDQUFDO1FBQzFCLCtDQUFzQjtZQUNwQiwwQ0FBaUIsT0FBTyxFQUFFLENBQUM7WUFDM0IsdUJBQUEsSUFBSSxlQUFlLElBQUksRUFBQztTQUN6QjtJQUNILENBQUM7Ozs7WUE3RkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLElBQUksRUFBRTtvQkFDSixlQUFlLEVBQUUsTUFBTTtvQkFDdkIsS0FBSyxFQUFFLG9CQUFvQjtpQkFDNUI7Z0JBQ0QsUUFBUSxFQUFFLGtCQUFrQjthQUM3Qjs7O1lBeENDLE9BQU87WUFVUCxVQUFVO1lBR1YsTUFBTTtZQUlOLGdCQUFnQjtZQVBoQixVQUFVO1lBTkgsUUFBUTtZQVBSLGNBQWMsdUJBc0ZsQixRQUFROzs7c0JBbENWLEtBQUssU0FBQyxxQkFBcUI7MEJBa0IzQixLQUFLLFNBQUMsZUFBZTt1QkFHckIsS0FBSyxTQUFDLG1CQUFtQjs0QkFHekIsTUFBTTs0QkFDTixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aW9uYWxpdHkgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL2JpZGlcIjtcclxuaW1wb3J0IHtcclxuICBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksXHJcbiAgT3ZlcmxheSxcclxuICBPdmVybGF5Q29uZmlnLFxyXG4gIE92ZXJsYXlSZWYsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2Nkay9vdmVybGF5XCI7XHJcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wbGF0Zm9ybVwiO1xyXG5pbXBvcnQgeyBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvcG9ydGFsXCI7XHJcbmltcG9ydCB7XHJcbiAgQWZ0ZXJDb250ZW50SW5pdCxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBJbnB1dCxcclxuICBOZ1pvbmUsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9wdGlvbmFsLFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgbWVyZ2UsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7XHJcbiAgYXVkaXRUaW1lLFxyXG4gIGRlYm91bmNlVGltZSxcclxuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcclxuICBmaWx0ZXIsXHJcbiAgbWFwLFxyXG4gIG1hcFRvLFxyXG4gIHRha2VVbnRpbCxcclxuICB0YXAsXHJcbn0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7IFBvc2l0aW9uIH0gZnJvbSBcIi4uL3BvcG92ZXIubW9kZWxcIjtcclxuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gXCIuLi9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50XCI7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogXCJbc2RQb3BvdmVyVHJpZ2dlckZvcl1cIixcclxuICBob3N0OiB7XHJcbiAgICBcImFyaWEtaGFzcG9wdXBcIjogXCJ0cnVlXCIsXHJcbiAgICBjbGFzczogXCJzZC1wb3BvdmVyLXRyaWdnZXJcIixcclxuICB9LFxyXG4gIGV4cG9ydEFzOiBcInNkUG9wb3ZlclRyaWdnZXJcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICAjb3ZlcmxheVJlZjogT3ZlcmxheVJlZiB8IG51bGwgPSBudWxsO1xyXG4gICNwb3BvdmVyQ2xvc2UkID0gU3Vic2NyaXB0aW9uLkVNUFRZO1xyXG4gICNwb3J0YWw6IFRlbXBsYXRlUG9ydGFsO1xyXG4gICNkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcblxyXG4gIHBvcG92ZXJPcGVuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dChcInNkUG9wb3ZlclRyaWdnZXJGb3JcIilcclxuICBnZXQgcG9wb3ZlcigpIHtcclxuICAgIHJldHVybiB0aGlzLiNwb3BvdmVyO1xyXG4gIH1cclxuICBzZXQgcG9wb3Zlcihwb3BvdmVyOiBQb3BvdmVyQ29tcG9uZW50KSB7XHJcbiAgICBpZiAoIXBvcG92ZXIgfHwgcG9wb3ZlciA9PT0gdGhpcy4jcG9wb3Zlcikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLiNwb3BvdmVyID0gcG9wb3ZlcjtcclxuICAgIHRoaXMuI3BvcG92ZXJDbG9zZSQudW5zdWJzY3JpYmUoKTtcclxuICAgIGlmIChwb3BvdmVyKSB7XHJcbiAgICAgIHRoaXMuI3BvcG92ZXJDbG9zZSQgPSBwb3BvdmVyLmNsb3NlZC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuI2Rlc3Ryb3lQb3BvdmVyKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuICAjcG9wb3ZlcjogUG9wb3ZlckNvbXBvbmVudDtcclxuXHJcbiAgQElucHV0KFwic2RQb3BvdmVyRGF0YVwiKVxyXG4gIHBvcG92ZXJEYXRhOiBhbnk7XHJcblxyXG4gIEBJbnB1dChcInNkUG9wb3ZlckRpc2FibGVkXCIpXHJcbiAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIHBvcG92ZXJPcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcbiAgQE91dHB1dCgpIHBvcG92ZXJDbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXHJcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSxcclxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX2RpcjogRGlyZWN0aW9uYWxpdHlcclxuICApIHt9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnBvcG92ZXIpIHtcclxuICAgICAgY29uc3QgbmF0aXZlRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG5cclxuICAgICAgY29uc3QgaG9zdE1vdXNlU3RhdGUkID0gbWVyZ2UoXHJcbiAgICAgICAgZnJvbUV2ZW50KG5hdGl2ZUVsZW1lbnQsIFwibW91c2VlbnRlclwiKS5waXBlKG1hcFRvKHRydWUpKSxcclxuICAgICAgICBmcm9tRXZlbnQobmF0aXZlRWxlbWVudCwgXCJtb3VzZWxlYXZlXCIpLnBpcGUobWFwVG8oZmFsc2UpKVxyXG4gICAgICApO1xyXG5cclxuICAgICAgY29uc3QgcG9wb3Zlck1vdXNlU3RhdGUkID0gdGhpcy5wb3BvdmVyLm1vdXNlU3RhdGUkLnBpcGUoXHJcbiAgICAgICAgLy8gY2jhu4kgbOG6pXkgbHXhu5NuZyBlbWl0IG9wZW4gYuG7n2kgY2jDrW5oIHRyaWdnZXIgKHRyw6FuaCBs4buXaSBuaGnhu4F1IHRyaWdnZXIgY2hvIG3hu5l0IHBvcG92ZXIpXHJcbiAgICAgICAgZmlsdGVyKCh2KSA9PiAhdGhpcy5wb3BvdmVyLnRyaWdnZXIgfHwgdGhpcy5wb3BvdmVyLnRyaWdnZXIgPT0gdGhpcylcclxuICAgICAgKTtcclxuXHJcbiAgICAgIGNvbnN0IG1lcmdlZE1vdXNlU3RhdGUkID0gbWVyZ2UocG9wb3Zlck1vdXNlU3RhdGUkLCBob3N0TW91c2VTdGF0ZSQpO1xyXG5cclxuICAgICAgbWVyZ2VkTW91c2VTdGF0ZSRcclxuICAgICAgICAucGlwZShcclxuICAgICAgICAgIGRlYm91bmNlVGltZSgxMDApLFxyXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLnBsYXRmb3JtLmlzQnJvd3NlciksXHJcbiAgICAgICAgICB0YWtlVW50aWwodGhpcy4jZGVzdHJveSQpXHJcbiAgICAgICAgKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHZpc2libGUpID0+IHtcclxuICAgICAgICAgIGlmICh2aXNpYmxlICYmICF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMub3BlblBvcG92ZXIoKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuI2Rlc3Ryb3kkLm5leHQoKTtcclxuICAgIHRoaXMuI2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgICBpZiAodGhpcy4jb3ZlcmxheVJlZikge1xyXG4gICAgICB0aGlzLiNvdmVybGF5UmVmLmRpc3Bvc2UoKTtcclxuICAgICAgdGhpcy4jb3ZlcmxheVJlZiA9IG51bGw7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvcGVuUG9wb3ZlciA9ICgpID0+IHtcclxuICAgIGlmICh0aGlzLnBvcG92ZXJPcGVuKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy4jY3JlYXRlT3ZlcmxheSgpO1xyXG4gICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG92ZXJsYXlSZWYuZ2V0Q29uZmlnKCk7XHJcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID1cclxuICAgICAgb3ZlcmxheUNvbmZpZy5wb3NpdGlvblN0cmF0ZWd5IGFzIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneTtcclxuICAgIHRoaXMuI3NldFBvc2l0aW9uKHBvc2l0aW9uU3RyYXRlZ3kpO1xyXG4gICAgb3ZlcmxheUNvbmZpZy5oYXNCYWNrZHJvcCA9IGZhbHNlO1xyXG4gICAgb3ZlcmxheVJlZi5hdHRhY2godGhpcy4jZ2V0UG9ydGFsKCkpO1xyXG4gICAgdGhpcy5wb3BvdmVyLnRyaWdnZXIgPSB0aGlzO1xyXG4gICAgdGhpcy4jc2V0SXNQb3BvdmVyT3Blbih0cnVlKTtcclxuICAgIHRoaXMucG9wb3Zlci5vcGVuZWQubmV4dCh0aGlzLnBvcG92ZXJEYXRhKTtcclxuICB9O1xyXG5cclxuICBjbG9zZVBvcG92ZXIgPSAoKSA9PiB7XHJcbiAgICB0aGlzLnBvcG92ZXIuY2xvc2VkLmVtaXQoKTtcclxuICB9O1xyXG5cclxuICAjc2V0SXNQb3BvdmVyT3BlbiA9IChpc09wZW46IGJvb2xlYW4pID0+IHtcclxuICAgIHRoaXMucG9wb3Zlck9wZW4gPSBpc09wZW47XHJcbiAgICB0aGlzLnBvcG92ZXJPcGVuID8gdGhpcy5wb3BvdmVyT3BlbmVkLmVtaXQoKSA6IHRoaXMucG9wb3ZlckNsb3NlZC5lbWl0KCk7XHJcbiAgfTtcclxuXHJcbiAgI2dldFBvcnRhbCA9ICgpOiBUZW1wbGF0ZVBvcnRhbCA9PiB7XHJcbiAgICBpZiAoXHJcbiAgICAgICF0aGlzLiNwb3J0YWwgfHxcclxuICAgICAgdGhpcy4jcG9ydGFsLnRlbXBsYXRlUmVmICE9PSB0aGlzLnBvcG92ZXIudGVtcGxhdGVSZWYgfHxcclxuICAgICAgdGhpcy4jcG9ydGFsLmNvbnRleHQ/LmRhdGEgIT09IHRoaXMucG9wb3ZlckRhdGFcclxuICAgICkge1xyXG4gICAgICB0aGlzLiNwb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwoXHJcbiAgICAgICAgdGhpcy5wb3BvdmVyLnRlbXBsYXRlUmVmLFxyXG4gICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZixcclxuICAgICAgICB7XHJcbiAgICAgICAgICBkYXRhOiB0aGlzLnBvcG92ZXJEYXRhXHJcbiAgICAgICAgfVxyXG4gICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiB0aGlzLiNwb3J0YWw7XHJcbiAgfTtcclxuXHJcbiAgI2NyZWF0ZU92ZXJsYXkgPSAoKSA9PiB7XHJcbiAgICBpZiAoIXRoaXMuI292ZXJsYXlSZWYpIHtcclxuICAgICAgY29uc3QgY29uZmlnID0gdGhpcy4jZ2V0T3ZlcmxheUNvbmZpZygpO1xyXG4gICAgICB0aGlzLiNzdWJzY3JpYmVUb1Bvc2l0aW9ucyhcclxuICAgICAgICBjb25maWcucG9zaXRpb25TdHJhdGVneSBhcyBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3lcclxuICAgICAgKTtcclxuICAgICAgdGhpcy4jb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKGNvbmZpZyk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHRoaXMuI292ZXJsYXlSZWY7XHJcbiAgfTtcclxuXHJcbiAgI3NldFBvc2l0aW9uID0gKHBvc2l0aW9uU3RyYXRlZ3k6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSkgPT4ge1xyXG4gICAgbGV0IG9yaWdpblg6IFwic3RhcnRcIiB8IFwiY2VudGVyXCIgfCBcImVuZFwiID0gXCJjZW50ZXJcIjtcclxuICAgIGxldCBvcmlnaW5ZOiBcInRvcFwiIHwgXCJjZW50ZXJcIiB8IFwiYm90dG9tXCIgPSBcInRvcFwiO1xyXG4gICAgbGV0IG92ZXJsYXlYOiBcInN0YXJ0XCIgfCBcImNlbnRlclwiIHwgXCJlbmRcIiA9IFwiY2VudGVyXCI7XHJcbiAgICBsZXQgb3ZlcmxheVk6IFwidG9wXCIgfCBcImNlbnRlclwiIHwgXCJib3R0b21cIiA9IFwiYm90dG9tXCI7XHJcbiAgICBsZXQgb2Zmc2V0WCA9IDA7XHJcbiAgICBsZXQgb2Zmc2V0WSA9IDE2O1xyXG5cclxuICAgIHN3aXRjaCAodGhpcy5wb3BvdmVyLnBvc2l0aW9uKSB7XHJcbiAgICAgIGNhc2UgXCJhYm92ZVwiOlxyXG4gICAgICAgIG9yaWdpblkgPSBcInRvcFwiO1xyXG4gICAgICAgIG92ZXJsYXlZID0gXCJib3R0b21cIjtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSBcImJlbG93XCI6XHJcbiAgICAgICAgb3JpZ2luWSA9IFwiYm90dG9tXCI7XHJcbiAgICAgICAgb3ZlcmxheVkgPSBcInRvcFwiO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgfVxyXG5cclxuICAgIHBvc2l0aW9uU3RyYXRlZ3kud2l0aFBvc2l0aW9ucyhbXHJcbiAgICAgIC8vIHRoZW8gaW5wdXRcclxuICAgICAgeyBvcmlnaW5YLCBvcmlnaW5ZLCBvdmVybGF5WCwgb3ZlcmxheVksIG9mZnNldFk6IG9yaWdpblkgPT0gXCJ0b3BcIiA/IC1vZmZzZXRZIDogb2Zmc2V0WSB9LFxyXG4gICAgICAvLyBnaeG7r2EgdHLDqm5cclxuICAgICAge1xyXG4gICAgICAgIG9yaWdpblg6IFwiY2VudGVyXCIsXHJcbiAgICAgICAgb3JpZ2luWTogXCJ0b3BcIixcclxuICAgICAgICBvdmVybGF5WDogXCJjZW50ZXJcIixcclxuICAgICAgICBvdmVybGF5WTogXCJib3R0b21cIixcclxuICAgICAgICBvZmZzZXRYLFxyXG4gICAgICAgIG9mZnNldFk6IC1vZmZzZXRZLFxyXG4gICAgICB9LFxyXG4gICAgICAvLyBnaeG7r2EgZMaw4bubaVxyXG4gICAgICB7XHJcbiAgICAgICAgb3JpZ2luWDogXCJjZW50ZXJcIixcclxuICAgICAgICBvcmlnaW5ZOiBcImJvdHRvbVwiLFxyXG4gICAgICAgIG92ZXJsYXlYOiBcImNlbnRlclwiLFxyXG4gICAgICAgIG92ZXJsYXlZOiBcInRvcFwiLFxyXG4gICAgICAgIG9mZnNldFgsXHJcbiAgICAgICAgb2Zmc2V0WSxcclxuICAgICAgfSxcclxuICAgIF0pO1xyXG4gIH07XHJcblxyXG4gICNnZXRPdmVybGF5Q29uZmlnID0gKCkgPT4ge1xyXG4gICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcclxuICAgICAgcG9zaXRpb25TdHJhdGVneTogdGhpcy5fb3ZlcmxheVxyXG4gICAgICAgIC5wb3NpdGlvbigpXHJcbiAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5fZWxlbWVudClcclxuICAgICAgICAud2l0aExvY2tlZFBvc2l0aW9uKClcclxuICAgICAgICAud2l0aEdyb3dBZnRlck9wZW4oKVxyXG4gICAgICAgIC53aXRoVHJhbnNmb3JtT3JpZ2luT24oXCIuc2QtcG9wb3Zlci1wYW5lbFwiKSxcclxuICAgICAgYmFja2Ryb3BDbGFzczogXCJjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcFwiLFxyXG4gICAgICBwYW5lbENsYXNzOiB0aGlzLnBvcG92ZXIucGFuZWxDbGFzcyxcclxuICAgICAgZGlyZWN0aW9uOiB0aGlzLl9kaXIsXHJcbiAgICAgIHdpZHRoOiB0aGlzLnBvcG92ZXIud2lkdGgsXHJcbiAgICAgIGhlaWdodDogdGhpcy5wb3BvdmVyLmhlaWdodCxcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gICNzdWJzY3JpYmVUb1Bvc2l0aW9ucyA9IChwb3NpdGlvbjogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5KSA9PiB7XHJcbiAgICBpZiAodGhpcy5wb3BvdmVyLnNldFBvc2l0aW9uQ2xhc3Nlcykge1xyXG4gICAgICBwb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHtcclxuICAgICAgICBjb25zdCBwb3M6IFBvc2l0aW9uID1cclxuICAgICAgICAgIGNoYW5nZS5jb25uZWN0aW9uUGFpci5vdmVybGF5WSA9PT0gXCJ0b3BcIiA/IFwiYmVsb3dcIiA6IFwiYWJvdmVcIjtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX25nWm9uZSkge1xyXG4gICAgICAgICAgdGhpcy5fbmdab25lLnJ1bigoKSA9PiB0aGlzLnBvcG92ZXIuc2V0UG9zaXRpb25DbGFzc2VzKHBvcykpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnBvcG92ZXIuc2V0UG9zaXRpb25DbGFzc2VzKHBvcyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBvcmlnaW5FbGVtZW50OiBIVE1MRWxlbWVudCA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIGNvbnN0IG92ZXJsYXlFbGVtZW50OiBIVE1MRWxlbWVudCA9IChcclxuICAgICAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZi5nZXQoMCkgYXMgYW55XHJcbiAgICAgICAgKT8ucm9vdE5vZGVzWzBdO1xyXG4gICAgICAgIGlmIChvcmlnaW5FbGVtZW50ICYmIG92ZXJsYXlFbGVtZW50KSB7XHJcbiAgICAgICAgICBjb25zdCBvcmlnaW5SZWN0ID0gb3JpZ2luRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgICAgICAgIGNvbnN0IG92ZXJsYXlSZWN0ID0gb3ZlcmxheUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgICBjb25zdCBvcmlnaW5MZWZ0ID0gb3JpZ2luUmVjdC5sZWZ0ICsgb3JpZ2luUmVjdC53aWR0aCAvIDI7XHJcbiAgICAgICAgICBjb25zdCBvdmVybGF5TGVmdCA9IG92ZXJsYXlSZWN0LmxlZnQgKyBvdmVybGF5UmVjdC53aWR0aCAvIDI7XHJcblxyXG4gICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gb3JpZ2luTGVmdCAtIG92ZXJsYXlMZWZ0O1xyXG5cclxuICAgICAgICAgIHRoaXMucG9wb3Zlci5hZGRBcnJvd1RyYW5zbGF0ZVgob2Zmc2V0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gICNkZXN0cm95UG9wb3ZlciA9ICgpID0+IHtcclxuICAgIGlmICghdGhpcy4jb3ZlcmxheVJlZiB8fCAhdGhpcy5wb3BvdmVyT3Blbikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLiNvdmVybGF5UmVmLmRldGFjaCgpO1xyXG4gICAgdGhpcy4jc2V0SXNQb3BvdmVyT3BlbihmYWxzZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -20,6 +20,7 @@ export class PopoverComponent {
20
20
  this.type = 'normal';
21
21
  _xPosition.set(this, void 0);
22
22
  this.closed = new EventEmitter();
23
+ this.opened = new EventEmitter();
23
24
  this.close = () => {
24
25
  this.mouseState$.next(false);
25
26
  this.closed.emit();
@@ -109,6 +110,7 @@ export class PopoverComponent {
109
110
  }
110
111
  ngOnDestroy() {
111
112
  this.closed.complete();
113
+ this.opened.complete();
112
114
  this.mouseState$.complete();
113
115
  }
114
116
  }
@@ -120,7 +122,7 @@ PopoverComponent.decorators = [
120
122
  encapsulation: ViewEncapsulation.None,
121
123
  exportAs: 'sdPopover',
122
124
  changeDetection: ChangeDetectionStrategy.OnPush,
123
- styles: [".text-black400{color:#757575}.sd-popover-panel{background:#fff;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--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}"]
125
+ 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}"]
124
126
  },] }
125
127
  ];
126
128
  PopoverComponent.ctorParameters = () => [
@@ -137,6 +139,7 @@ PopoverComponent.propDecorators = {
137
139
  type: [{ type: Input }],
138
140
  position: [{ type: Input }],
139
141
  closed: [{ type: Output }],
142
+ opened: [{ type: Output }],
140
143
  _hostClick: [{ type: HostListener, args: ['document:click', ['$event.target'],] }]
141
144
  };
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3BvcG92ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBR2pCLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBY2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUFxQzNCLFlBQ1UsS0FBd0IsRUFDeEIsYUFBb0M7UUFEcEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBdEM5QyxjQUFTLEdBQTRCLEVBQUUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsb0JBQW9CLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQzFDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xELFlBQU8sR0FBNEIsSUFBSSxDQUFDO1FBTS9CLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIsVUFBSyxHQUFnQyxJQUFJLENBQUM7UUFDMUMsV0FBTSxHQUFXLE1BQU0sQ0FBQztRQUN4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LGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2dCQUNyQyxRQUFRLEVBQUUsV0FBVztnQkFDckIsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFsQ0MsaUJBQWlCO1lBa0JWLHFCQUFxQjs7OzBCQXdCM0IsU0FBUyxTQUFDLFdBQVc7b0JBQ3JCLFNBQVMsU0FBQyxPQUFPOzZCQUNqQixZQUFZLFNBQUMsdUJBQXVCO3lCQUVwQyxLQUFLO29CQUNMLEtBQUs7cUJBQ0wsS0FBSzttQkFDTCxLQUFLO3VCQUNMLEtBQUs7cUJBVUwsTUFBTTt5QkFFTixZQUFZLFNBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIENvbnRlbnRDaGlsZFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbiB9IGZyb20gJy4uL3BvcG92ZXIubW9kZWwnO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9wb3BvdmVyLXRyaWdnZXIuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUG9wb3ZlckNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3BvcG92ZXItY29udGVudC5kaXJlY3RpdmUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZFBvcG92ZXIge1xyXG4gIGNsb3NlOiAoKSA9PiB2b2lkO1xyXG59XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLXBvcG92ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wb3BvdmVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBleHBvcnRBczogJ3NkUG9wb3ZlcicsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgU2RQb3BvdmVyLCBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBjbGFzc0xpc3Q6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgcGFuZWxJZCA9IGBzZC1wb3BvdmVyLXBhbmVsLSR7dXVpZC52NCgpfWA7XHJcbiAgaXNNb2JpbGVPclRhYmxldCA9IGZhbHNlO1xyXG4gIG1vdXNlU3RhdGUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSk7XHJcbiAgdHJpZ2dlcjogUG9wb3ZlclRyaWdnZXJEaXJlY3RpdmUgPSBudWxsO1xyXG5cclxuICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKSB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAVmlld0NoaWxkKCdwYW5lbCcpIHBhbmVsOiBFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50PjtcclxuICBAQ29udGVudENoaWxkKFBvcG92ZXJDb250ZW50RGlyZWN0aXZlKSBwb3BvdmVyQ29udGVudDogUG9wb3ZlckNvbnRlbnREaXJlY3RpdmVcclxuXHJcbiAgQElucHV0KCkgcGFuZWxDbGFzczogc3RyaW5nID0gJyc7XHJcbiAgQElucHV0KCkgd2lkdGg6ICdsZycgfCAnbWQnIHwgJ3NtJyB8IHN0cmluZyA9ICdzbSc7XHJcbiAgQElucHV0KCkgaGVpZ2h0OiBzdHJpbmcgPSAnYXV0byc7XHJcbiAgQElucHV0KCkgdHlwZTogJ25vcm1hbCcgfCAncHJpbWFyeScgfCAnaW5mbycgfCAnc3VjY2VzcycgfCAnd2FybmluZycgfCAnZGFuZ2VyJyA9ICdub3JtYWwnO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHBvc2l0aW9uKCk6IFBvc2l0aW9uIHtcclxuICAgIHJldHVybiB0aGlzLiN4UG9zaXRpb247XHJcbiAgfVxyXG4gIHNldCBwb3NpdGlvbih2YWx1ZTogUG9zaXRpb24pIHtcclxuICAgIHRoaXMuI3hQb3NpdGlvbiA9IHZhbHVlO1xyXG4gICAgdGhpcy5zZXRQb3NpdGlvbkNsYXNzZXMoKTtcclxuICB9XHJcbiAgI3hQb3NpdGlvbjogUG9zaXRpb247XHJcblxyXG4gIEBPdXRwdXQoKSByZWFkb25seSBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmNsaWNrJywgWyckZXZlbnQudGFyZ2V0J10pXHJcbiAgX2hvc3RDbGljayh0YXJnZXRFbGVtZW50KSB7XHJcbiAgICBpZiAodGhpcy5wYW5lbD8ubmF0aXZlRWxlbWVudCkge1xyXG4gICAgICBjb25zdCBpc0luc2lkZSA9IHRoaXMucGFuZWwubmF0aXZlRWxlbWVudC5jb250YWlucyh0YXJnZXRFbGVtZW50KTtcclxuICAgICAgaWYgKCFpc0luc2lkZSkge1xyXG4gICAgICAgIHRoaXMuc2V0TW91c2VTdGF0ZShmYWxzZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGRldmljZVNlcnZpY2U6IERldmljZURldGVjdG9yU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5pc01vYmlsZU9yVGFibGV0ID0gIWRldmljZVNlcnZpY2UuaXNEZXNrdG9wKCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZihjaGFuZ2VzLnR5cGUpIHtcclxuICAgICAgY29uc3QgdHlwZSA9IGNoYW5nZXMudHlwZS5jdXJyZW50VmFsdWU7XHJcbiAgICAgIGNvbnN0IHByZVR5cGUgPSBjaGFuZ2VzLnR5cGUucHJldmlvdXNWYWx1ZTtcclxuICAgICAgdGhpcy5jbGFzc0xpc3QgPSB0aGlzLmNsYXNzTGlzdCA/PyB7XHJcbiAgICAgICAgJ3NkLXBvcG92ZXItLW5vcm1hbCc6IHRydWVcclxuICAgICAgfTtcclxuICAgICAgaWYgKHByZVR5cGUpIHtcclxuICAgICAgICB0aGlzLmNsYXNzTGlzdFtgc2QtcG9wb3Zlci0tJHtwcmVUeXBlfWBdID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHR5cGUpIHtcclxuICAgICAgICB0aGlzLmNsYXNzTGlzdFtgc2QtcG9wb3Zlci0tJHt0eXBlfWBdID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFBvc2l0aW9uQ2xhc3NlcygpO1xyXG4gICAgdGhpcy53aWR0aCA9IHRoaXMud2lkdGggfHwgJzgwdncnO1xyXG4gICAgaWYgKCF0aGlzLmlzTW9iaWxlT3JUYWJsZXQpIHtcclxuICAgICAgc3dpdGNoICh0aGlzLndpZHRoKSB7XHJcbiAgICAgICAgY2FzZSAnbGcnOlxyXG4gICAgICAgICAgdGhpcy53aWR0aCA9ICc4MHZ3JztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ21kJzpcclxuICAgICAgICAgIHRoaXMud2lkdGggPSAnNjB2dyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICBjYXNlICdzbSc6XHJcbiAgICAgICAgICB0aGlzLndpZHRoID0gJzQwdncnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbG9zZWQuY29tcGxldGUoKTtcclxuICAgIHRoaXMubW91c2VTdGF0ZSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5tb3VzZVN0YXRlJC5uZXh0KGZhbHNlKTtcclxuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcclxuICB9O1xyXG5cclxuICBzZXRQb3NpdGlvbkNsYXNzZXMgPSAocG9zOiBQb3NpdGlvbiA9IHRoaXMucG9zaXRpb24pID0+IHtcclxuICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLmNsYXNzTGlzdDtcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYWJvdmUnXSA9IHBvcyA9PT0gJ2Fib3ZlJztcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYmVsb3cnXSA9IHBvcyA9PT0gJ2JlbG93JztcclxuXHJcbiAgICB0aGlzLmNkUmVmPy5tYXJrRm9yQ2hlY2soKTtcclxuICB9O1xyXG5cclxuICBhZGRBcnJvd1RyYW5zbGF0ZVggPSAob2Zmc2V0OiBudW1iZXIpID0+IHtcclxuICAgIGNvbnN0IGFycm93RWxlbWVudDogSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnBhbmVsSWR9IC5zZC1wb3BvdmVyLWFycm93YCk7XHJcbiAgICBpZiAoYXJyb3dFbGVtZW50ICYmIG9mZnNldCkge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoYXJyb3dFbGVtZW50KTtcclxuICAgICAgICBjb25zdCBtYXRyaXggPSBuZXcgV2ViS2l0Q1NTTWF0cml4KHN0eWxlLnRyYW5zZm9ybSk7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWCA9IG1hdHJpeC5tNDEgKyBvZmZzZXQ7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWSA9IG1hdHJpeC5tNDI7XHJcbiAgICAgICAgYXJyb3dFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVYKCR7dHJhbnNsYXRlWH1weCkgdHJhbnNsYXRlWSgke3RyYW5zbGF0ZVl9cHgpYDtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHt9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgc2V0TW91c2VTdGF0ZSA9ICh2aXNpYmxlOiBib29sZWFuKSA9PiB7XHJcbiAgICBpZiAoIXZpc2libGUpIHtcclxuICAgICAgLy8gY2jhu4kgxJHGsOG7o2MgdOG6r3Qga2hpIMSRYW5nIGtow7RuZyBmb2N1cyBlbGVtZW50IG7DoG8gYsOqbiB0cm9uZyBwYW5lbFxyXG4gICAgICAvLyB0csOhbmggbOG7l2kgY8OzIGNvbnRyb2wgbeG7nyBvdmVybGF5IGtoaeG6v24gY2hvIG3huqV0IG1vdXNlZW50ZXIg4bufIHBhbmVsXHJcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xyXG4gICAgICBjb25zdCBwYW5lbEVsZW1lbnQgPSB0aGlzLnBhbmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIGlmIChwYW5lbEVsZW1lbnQ/LmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vdXNlU3RhdGUkLm5leHQodmlzaWJsZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3BvcG92ZXIvIiwic291cmNlcyI6WyJzcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBRVQsWUFBWSxFQUNaLFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUNOLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBR2pCLFlBQVksRUFDYixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEtBQUssSUFBSSxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXZDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBY2xGLE1BQU0sT0FBTyxnQkFBZ0I7SUFzQzNCLFlBQ1UsS0FBd0IsRUFDeEIsYUFBb0M7UUFEcEMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBdkM5QyxjQUFTLEdBQTRCLEVBQUUsQ0FBQztRQUN4QyxZQUFPLEdBQUcsb0JBQW9CLElBQUksQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDO1FBQzFDLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2xELFlBQU8sR0FBNEIsSUFBSSxDQUFDO1FBTS9CLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIsVUFBSyxHQUFnQyxJQUFJLENBQUM7UUFDMUMsV0FBTSxHQUFXLE1BQU0sQ0FBQztRQUN4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Q0FBQztJQUM5QixDQUFDOzs7O1lBM0ZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsWUFBWTtnQkFDdEIsMnJCQUF1QztnQkFFdkMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7Z0JBQ3JDLFFBQVEsRUFBRSxXQUFXO2dCQUNyQixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7OztZQWxDQyxpQkFBaUI7WUFrQlYscUJBQXFCOzs7MEJBd0IzQixTQUFTLFNBQUMsV0FBVztvQkFDckIsU0FBUyxTQUFDLE9BQU87NkJBQ2pCLFlBQVksU0FBQyx1QkFBdUI7eUJBRXBDLEtBQUs7b0JBQ0wsS0FBSztxQkFDTCxLQUFLO21CQUNMLEtBQUs7dUJBQ0wsS0FBSztxQkFVTCxNQUFNO3FCQUNOLE1BQU07eUJBRU4sWUFBWSxTQUFDLGdCQUFnQixFQUFFLENBQUMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgSG9zdExpc3RlbmVyLFxyXG4gIElucHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBPbkluaXQsXHJcbiAgT3V0cHV0LFxyXG4gIFRlbXBsYXRlUmVmLFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3RW5jYXBzdWxhdGlvbixcclxuICBPbkNoYW5nZXMsXHJcbiAgU2ltcGxlQ2hhbmdlcyxcclxuICBDb250ZW50Q2hpbGRcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUG9zaXRpb24gfSBmcm9tICcuLi9wb3BvdmVyLm1vZGVsJztcclxuaW1wb3J0ICogYXMgdXVpZCBmcm9tICd1dWlkJztcclxuaW1wb3J0IHsgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlIH0gZnJvbSAnbmd4LWRldmljZS1kZXRlY3Rvcic7XHJcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBQb3BvdmVyVHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4uL2RpcmVjdGl2ZXMvcG9wb3Zlci10cmlnZ2VyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9wb3BvdmVyLWNvbnRlbnQuZGlyZWN0aXZlJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2RQb3BvdmVyIHtcclxuICBjbG9zZTogKCkgPT4gdm9pZDtcclxufVxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1wb3BvdmVyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcG9wb3Zlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgZXhwb3J0QXM6ICdzZFBvcG92ZXInLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUG9wb3ZlckNvbXBvbmVudCBpbXBsZW1lbnRzIFNkUG9wb3ZlciwgT25DaGFuZ2VzLCBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgY2xhc3NMaXN0OiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIHBhbmVsSWQgPSBgc2QtcG9wb3Zlci1wYW5lbC0ke3V1aWQudjQoKX1gO1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQgPSBmYWxzZTtcclxuICBtb3VzZVN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG4gIHRyaWdnZXI6IFBvcG92ZXJUcmlnZ2VyRGlyZWN0aXZlID0gbnVsbDtcclxuXHJcbiAgQFZpZXdDaGlsZChUZW1wbGF0ZVJlZikgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgQFZpZXdDaGlsZCgncGFuZWwnKSBwYW5lbDogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgQENvbnRlbnRDaGlsZChQb3BvdmVyQ29udGVudERpcmVjdGl2ZSkgcG9wb3ZlckNvbnRlbnQ6IFBvcG92ZXJDb250ZW50RGlyZWN0aXZlXHJcblxyXG4gIEBJbnB1dCgpIHBhbmVsQ2xhc3M6IHN0cmluZyA9ICcnO1xyXG4gIEBJbnB1dCgpIHdpZHRoOiAnbGcnIHwgJ21kJyB8ICdzbScgfCBzdHJpbmcgPSAnc20nO1xyXG4gIEBJbnB1dCgpIGhlaWdodDogc3RyaW5nID0gJ2F1dG8nO1xyXG4gIEBJbnB1dCgpIHR5cGU6ICdub3JtYWwnIHwgJ3ByaW1hcnknIHwgJ2luZm8nIHwgJ3N1Y2Nlc3MnIHwgJ3dhcm5pbmcnIHwgJ2RhbmdlcicgPSAnbm9ybWFsJztcclxuICBASW5wdXQoKVxyXG4gIGdldCBwb3NpdGlvbigpOiBQb3NpdGlvbiB7XHJcbiAgICByZXR1cm4gdGhpcy4jeFBvc2l0aW9uO1xyXG4gIH1cclxuICBzZXQgcG9zaXRpb24odmFsdWU6IFBvc2l0aW9uKSB7XHJcbiAgICB0aGlzLiN4UG9zaXRpb24gPSB2YWx1ZTtcclxuICAgIHRoaXMuc2V0UG9zaXRpb25DbGFzc2VzKCk7XHJcbiAgfVxyXG4gICN4UG9zaXRpb246IFBvc2l0aW9uO1xyXG5cclxuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gIEBPdXRwdXQoKSByZWFkb25seSBvcGVuZWQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcclxuICBfaG9zdENsaWNrKHRhcmdldEVsZW1lbnQpIHtcclxuICAgIGlmICh0aGlzLnBhbmVsPy5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIGNvbnN0IGlzSW5zaWRlID0gdGhpcy5wYW5lbC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKHRhcmdldEVsZW1lbnQpO1xyXG4gICAgICBpZiAoIWlzSW5zaWRlKSB7XHJcbiAgICAgICAgdGhpcy5zZXRNb3VzZVN0YXRlKGZhbHNlKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgZGV2aWNlU2VydmljZTogRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLmlzTW9iaWxlT3JUYWJsZXQgPSAhZGV2aWNlU2VydmljZS5pc0Rlc2t0b3AoKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmKGNoYW5nZXMudHlwZSkge1xyXG4gICAgICBjb25zdCB0eXBlID0gY2hhbmdlcy50eXBlLmN1cnJlbnRWYWx1ZTtcclxuICAgICAgY29uc3QgcHJlVHlwZSA9IGNoYW5nZXMudHlwZS5wcmV2aW91c1ZhbHVlO1xyXG4gICAgICB0aGlzLmNsYXNzTGlzdCA9IHRoaXMuY2xhc3NMaXN0ID8/IHtcclxuICAgICAgICAnc2QtcG9wb3Zlci0tbm9ybWFsJzogdHJ1ZVxyXG4gICAgICB9O1xyXG4gICAgICBpZiAocHJlVHlwZSkge1xyXG4gICAgICAgIHRoaXMuY2xhc3NMaXN0W2BzZC1wb3BvdmVyLS0ke3ByZVR5cGV9YF0gPSBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodHlwZSkge1xyXG4gICAgICAgIHRoaXMuY2xhc3NMaXN0W2BzZC1wb3BvdmVyLS0ke3R5cGV9YF0gPSB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0UG9zaXRpb25DbGFzc2VzKCk7XHJcbiAgICB0aGlzLndpZHRoID0gdGhpcy53aWR0aCB8fCAnODB2dyc7XHJcbiAgICBpZiAoIXRoaXMuaXNNb2JpbGVPclRhYmxldCkge1xyXG4gICAgICBzd2l0Y2ggKHRoaXMud2lkdGgpIHtcclxuICAgICAgICBjYXNlICdsZyc6XHJcbiAgICAgICAgICB0aGlzLndpZHRoID0gJzgwdncnO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgY2FzZSAnbWQnOlxyXG4gICAgICAgICAgdGhpcy53aWR0aCA9ICc2MHZ3JztcclxuICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgIGNhc2UgJ3NtJzpcclxuICAgICAgICAgIHRoaXMud2lkdGggPSAnNDB2dyc7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmNsb3NlZC5jb21wbGV0ZSgpO1xyXG4gICAgdGhpcy5vcGVuZWQuY29tcGxldGUoKTtcclxuICAgIHRoaXMubW91c2VTdGF0ZSQuY29tcGxldGUoKTtcclxuICB9XHJcblxyXG4gIGNsb3NlID0gKCkgPT4ge1xyXG4gICAgdGhpcy5tb3VzZVN0YXRlJC5uZXh0KGZhbHNlKTtcclxuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcclxuICB9O1xyXG5cclxuICBzZXRQb3NpdGlvbkNsYXNzZXMgPSAocG9zOiBQb3NpdGlvbiA9IHRoaXMucG9zaXRpb24pID0+IHtcclxuICAgIGNvbnN0IGNsYXNzZXMgPSB0aGlzLmNsYXNzTGlzdDtcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYWJvdmUnXSA9IHBvcyA9PT0gJ2Fib3ZlJztcclxuICAgIGNsYXNzZXNbJ3NkLXBvcG92ZXItYmVsb3cnXSA9IHBvcyA9PT0gJ2JlbG93JztcclxuXHJcbiAgICB0aGlzLmNkUmVmPy5tYXJrRm9yQ2hlY2soKTtcclxuICB9O1xyXG5cclxuICBhZGRBcnJvd1RyYW5zbGF0ZVggPSAob2Zmc2V0OiBudW1iZXIpID0+IHtcclxuICAgIGNvbnN0IGFycm93RWxlbWVudDogSFRNTEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAjJHt0aGlzLnBhbmVsSWR9IC5zZC1wb3BvdmVyLWFycm93YCk7XHJcbiAgICBpZiAoYXJyb3dFbGVtZW50ICYmIG9mZnNldCkge1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIGNvbnN0IHN0eWxlID0gd2luZG93LmdldENvbXB1dGVkU3R5bGUoYXJyb3dFbGVtZW50KTtcclxuICAgICAgICBjb25zdCBtYXRyaXggPSBuZXcgV2ViS2l0Q1NTTWF0cml4KHN0eWxlLnRyYW5zZm9ybSk7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWCA9IG1hdHJpeC5tNDEgKyBvZmZzZXQ7XHJcbiAgICAgICAgY29uc3QgdHJhbnNsYXRlWSA9IG1hdHJpeC5tNDI7XHJcbiAgICAgICAgYXJyb3dFbGVtZW50LnN0eWxlLnRyYW5zZm9ybSA9IGB0cmFuc2xhdGVYKCR7dHJhbnNsYXRlWH1weCkgdHJhbnNsYXRlWSgke3RyYW5zbGF0ZVl9cHgpYDtcclxuICAgICAgfSBjYXRjaCAoZXJyb3IpIHt9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgc2V0TW91c2VTdGF0ZSA9ICh2aXNpYmxlOiBib29sZWFuKSA9PiB7XHJcbiAgICBpZiAoIXZpc2libGUpIHtcclxuICAgICAgLy8gY2jhu4kgxJHGsOG7o2MgdOG6r3Qga2hpIMSRYW5nIGtow7RuZyBmb2N1cyBlbGVtZW50IG7DoG8gYsOqbiB0cm9uZyBwYW5lbFxyXG4gICAgICAvLyB0csOhbmggbOG7l2kgY8OzIGNvbnRyb2wgbeG7nyBvdmVybGF5IGtoaeG6v24gY2hvIG3huqV0IG1vdXNlZW50ZXIg4bufIHBhbmVsXHJcbiAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50O1xyXG4gICAgICBjb25zdCBwYW5lbEVsZW1lbnQgPSB0aGlzLnBhbmVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgIGlmIChwYW5lbEVsZW1lbnQ/LmNvbnRhaW5zKGFjdGl2ZUVsZW1lbnQpKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLm1vdXNlU3RhdGUkLm5leHQodmlzaWJsZSk7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -41,6 +41,7 @@ class PopoverComponent {
41
41
  this.type = 'normal';
42
42
  _xPosition.set(this, void 0);
43
43
  this.closed = new EventEmitter();
44
+ this.opened = new EventEmitter();
44
45
  this.close = () => {
45
46
  this.mouseState$.next(false);
46
47
  this.closed.emit();
@@ -130,6 +131,7 @@ class PopoverComponent {
130
131
  }
131
132
  ngOnDestroy() {
132
133
  this.closed.complete();
134
+ this.opened.complete();
133
135
  this.mouseState$.complete();
134
136
  }
135
137
  }
@@ -141,7 +143,7 @@ PopoverComponent.decorators = [
141
143
  encapsulation: ViewEncapsulation.None,
142
144
  exportAs: 'sdPopover',
143
145
  changeDetection: ChangeDetectionStrategy.OnPush,
144
- styles: [".text-black400{color:#757575}.sd-popover-panel{background:#fff;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--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}"]
146
+ 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}"]
145
147
  },] }
146
148
  ];
147
149
  PopoverComponent.ctorParameters = () => [
@@ -158,6 +160,7 @@ PopoverComponent.propDecorators = {
158
160
  type: [{ type: Input }],
159
161
  position: [{ type: Input }],
160
162
  closed: [{ type: Output }],
163
+ opened: [{ type: Output }],
161
164
  _hostClick: [{ type: HostListener, args: ['document:click', ['$event.target'],] }]
162
165
  };
163
166
 
@@ -192,6 +195,7 @@ class PopoverTriggerDirective {
192
195
  overlayRef.attach(__classPrivateFieldGet(this, _getPortal).call(this));
193
196
  this.popover.trigger = this;
194
197
  __classPrivateFieldGet(this, _setIsPopoverOpen).call(this, true);
198
+ this.popover.opened.next(this.popoverData);
195
199
  };
196
200
  this.closePopover = () => {
197
201
  this.popover.closed.emit();
@@ -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\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.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 };\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() 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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sd-angular/core",
3
- "version": "1.2.19",
3
+ "version": "1.2.20",
4
4
  "homepage": "https://www.facebook.com/DarkP3ter",
5
5
  "author": {
6
6
  "name": "darkpeter",
@@ -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;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--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}}]}],"_hostClick":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":64,"character":3},"arguments":["document:click",["$event.target"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":75,"character":19},{"__symbolic":"reference","module":"ngx-device-detector","name":"DeviceDetectorService","line":76,"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}}]}],"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"}
@@ -26,6 +26,7 @@ export declare class PopoverComponent implements SdPopover, OnChanges, OnInit, O
26
26
  get position(): Position;
27
27
  set position(value: Position);
28
28
  readonly closed: EventEmitter<void>;
29
+ readonly opened: EventEmitter<any>;
29
30
  _hostClick(targetElement: any): void;
30
31
  constructor(cdRef: ChangeDetectorRef, deviceService: DeviceDetectorService);
31
32
  ngOnChanges(changes: SimpleChanges): void;
index dede690..1744f8a 100644
Binary file