simpo-component-library 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +24 -0
- package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +44 -0
- package/esm2022/lib/components/index.mjs +16 -0
- package/esm2022/lib/directive/animation-directive.mjs +92 -0
- package/esm2022/lib/directive/background-directive.mjs +67 -0
- package/esm2022/lib/directive/banner-content-fit-directive.mjs +93 -0
- package/esm2022/lib/directive/border-directive.mjs +45 -0
- package/esm2022/lib/directive/button-directive.directive.mjs +84 -0
- package/esm2022/lib/directive/column-directive.directive.mjs +63 -0
- package/esm2022/lib/directive/container-fir.directive.mjs +42 -0
- package/esm2022/lib/directive/content-alignment-directive.mjs +50 -0
- package/esm2022/lib/directive/content-fit-directive.mjs +56 -0
- package/esm2022/lib/directive/corner-directive.mjs +65 -0
- package/esm2022/lib/directive/footer-layout-directive.mjs +32 -0
- package/esm2022/lib/directive/hover-element-directive.mjs +34 -0
- package/esm2022/lib/directive/image-directive.directive.mjs +79 -0
- package/esm2022/lib/directive/index.mjs +85 -0
- package/esm2022/lib/directive/overlay-directive.mjs +40 -0
- package/esm2022/lib/directive/position-layout-directive.directive.mjs +50 -0
- package/esm2022/lib/directive/text-background-directive.directive.mjs +109 -0
- package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +31 -0
- package/esm2022/lib/elements/button/button.component.mjs +17 -0
- package/esm2022/lib/elements/button/button.model.mjs +2 -0
- package/esm2022/lib/elements/covering-image-card/covering-image-card.component.mjs +32 -0
- package/esm2022/lib/elements/heading-element/heading-element.component.mjs +16 -0
- package/esm2022/lib/elements/index.mjs +21 -0
- package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +27 -0
- package/esm2022/lib/elements/socia-icons/socia-icons.component.mjs +22 -0
- package/esm2022/lib/elements/text/text.component.mjs +17 -0
- package/esm2022/lib/elements/top-of-image-card/top-of-image-card.component.mjs +33 -0
- package/esm2022/lib/sections/banner-section/banner-section.component.mjs +51 -0
- package/esm2022/lib/sections/banner-section/banner-section.model.mjs +2 -0
- package/esm2022/lib/sections/faq-section/faq-section.component.mjs +42 -0
- package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +2 -0
- package/esm2022/lib/sections/footer-section/footer-section.component.mjs +47 -0
- package/esm2022/lib/sections/footer-section/footer-section.modal.mjs +2 -0
- package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +38 -0
- package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +2 -0
- package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +55 -0
- package/esm2022/lib/sections/image-grid-section/image-grid-section.model.mjs +2 -0
- package/esm2022/lib/sections/image-section/image-section.component.mjs +49 -0
- package/esm2022/lib/sections/image-section/image-section.model.mjs +2 -0
- package/esm2022/lib/sections/service-section/service-section.component.mjs +54 -0
- package/esm2022/lib/sections/service-section/service-section.model.mjs +2 -0
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +50 -0
- package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +2 -0
- package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +49 -0
- package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +2 -0
- package/esm2022/lib/sections/text-image-section/text-image-section.component.mjs +52 -0
- package/esm2022/lib/sections/text-image-section/text-image-section.model.mjs +2 -0
- package/esm2022/lib/sections/text-section/text-section.component.mjs +53 -0
- package/esm2022/lib/sections/text-section/text-section.model.mjs +2 -0
- package/esm2022/lib/sections/video-section/video-section.component.mjs +54 -0
- package/esm2022/lib/sections/video-section/video-section.model.mjs +2 -0
- package/esm2022/lib/services/events.service.mjs +32 -0
- package/esm2022/lib/styles/index.mjs +157 -0
- package/esm2022/lib/styles/style.model.mjs +2 -0
- package/esm2022/lib/styles/types.mjs +2 -0
- package/esm2022/public-api.mjs +18 -0
- package/esm2022/simpo-component-library.mjs +5 -0
- package/fesm2022/simpo-component-library.mjs +1408 -0
- package/fesm2022/simpo-component-library.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/components/hover-elements/hover-elements.component.d.ts +19 -0
- package/lib/components/index.d.ts +7 -0
- package/lib/directive/animation-directive.d.ts +37 -0
- package/lib/directive/background-directive.d.ts +16 -0
- package/lib/directive/banner-content-fit-directive.d.ts +16 -0
- package/lib/directive/border-directive.d.ts +13 -0
- package/lib/directive/button-directive.directive.d.ts +23 -0
- package/lib/directive/column-directive.directive.d.ts +19 -0
- package/lib/directive/container-fir.directive.d.ts +15 -0
- package/lib/directive/content-alignment-directive.d.ts +19 -0
- package/lib/directive/content-fit-directive.d.ts +15 -0
- package/lib/directive/corner-directive.d.ts +19 -0
- package/lib/directive/footer-layout-directive.d.ts +15 -0
- package/lib/directive/hover-element-directive.d.ts +12 -0
- package/lib/directive/image-directive.directive.d.ts +19 -0
- package/lib/directive/index.d.ts +20 -0
- package/lib/directive/overlay-directive.d.ts +14 -0
- package/lib/directive/position-layout-directive.directive.d.ts +19 -0
- package/lib/directive/text-background-directive.directive.d.ts +23 -0
- package/lib/elements/below-image-card/below-image-card.component.d.ts +12 -0
- package/lib/elements/button/button.component.d.ts +7 -0
- package/lib/elements/button/button.model.d.ts +4 -0
- package/lib/elements/covering-image-card/covering-image-card.component.d.ts +12 -0
- package/lib/elements/heading-element/heading-element.component.d.ts +6 -0
- package/lib/elements/index.d.ts +12 -0
- package/lib/elements/simpo-button/simpo-button.component.d.ts +12 -0
- package/lib/elements/socia-icons/socia-icons.component.d.ts +10 -0
- package/lib/elements/text/text.component.d.ts +6 -0
- package/lib/elements/top-of-image-card/top-of-image-card.component.d.ts +12 -0
- package/lib/sections/banner-section/banner-section.component.d.ts +15 -0
- package/lib/sections/banner-section/banner-section.model.d.ts +19 -0
- package/lib/sections/faq-section/faq-section.component.d.ts +12 -0
- package/lib/sections/faq-section/faq-section.modal.d.ts +18 -0
- package/lib/sections/footer-section/footer-section.component.d.ts +17 -0
- package/lib/sections/footer-section/footer-section.modal.d.ts +62 -0
- package/lib/sections/image-carousel-section/image-carousel-section.component.d.ts +13 -0
- package/lib/sections/image-carousel-section/image-carousel.model.d.ts +24 -0
- package/lib/sections/image-grid-section/image-grid-section.component.d.ts +17 -0
- package/lib/sections/image-grid-section/image-grid-section.model.d.ts +24 -0
- package/lib/sections/image-section/image-section.component.d.ts +14 -0
- package/lib/sections/image-section/image-section.model.d.ts +17 -0
- package/lib/sections/service-section/service-section.component.d.ts +21 -0
- package/lib/sections/service-section/service-section.model.d.ts +25 -0
- package/lib/sections/team-member-section/team-member-section.component.d.ts +19 -0
- package/lib/sections/team-member-section/team-member-section.model.d.ts +21 -0
- package/lib/sections/testimonial-section/testimonial-section.component.d.ts +14 -0
- package/lib/sections/testimonial-section/testimonial-section.model.d.ts +19 -0
- package/lib/sections/text-image-section/text-image-section.component.d.ts +17 -0
- package/lib/sections/text-image-section/text-image-section.model.d.ts +19 -0
- package/lib/sections/text-section/text-section.component.d.ts +18 -0
- package/lib/sections/text-section/text-section.model.d.ts +12 -0
- package/lib/sections/video-section/video-section.component.d.ts +18 -0
- package/lib/sections/video-section/video-section.model.d.ts +17 -0
- package/lib/services/events.service.d.ts +23 -0
- package/lib/styles/index.d.ts +123 -0
- package/lib/styles/style.model.d.ts +132 -0
- package/lib/styles/types.d.ts +16 -0
- package/package.json +26 -0
- package/public-api.d.ts +12 -0
- package/simpo-component-library-0.0.1.tgz +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# SimpoUi
|
|
2
|
+
|
|
3
|
+
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 17.2.0.
|
|
4
|
+
|
|
5
|
+
## Code scaffolding
|
|
6
|
+
|
|
7
|
+
Run `ng generate component component-name --project simpo-ui` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project simpo-ui`.
|
|
8
|
+
> Note: Don't forget to add `--project simpo-ui` or else it will be added to the default project in your `angular.json` file.
|
|
9
|
+
|
|
10
|
+
## Build
|
|
11
|
+
|
|
12
|
+
Run `ng build simpo-ui` to build the project. The build artifacts will be stored in the `dist/` directory.
|
|
13
|
+
|
|
14
|
+
## Publishing
|
|
15
|
+
|
|
16
|
+
After building your library with `ng build simpo-ui`, go to the dist folder `cd dist/simpo-ui` and run `npm publish`.
|
|
17
|
+
|
|
18
|
+
## Running unit tests
|
|
19
|
+
|
|
20
|
+
Run `ng test simpo-ui` to execute the unit tests via [Karma](https://karma-runner.github.io).
|
|
21
|
+
|
|
22
|
+
## Further help
|
|
23
|
+
|
|
24
|
+
To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
3
|
+
import { MatDialogModule } from '@angular/material/dialog';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
7
|
+
import * as i2 from "@angular/material/dialog";
|
|
8
|
+
import * as i3 from "@angular/common";
|
|
9
|
+
export class HoverElementsComponent {
|
|
10
|
+
constructor(_eventService) {
|
|
11
|
+
this._eventService = _eventService;
|
|
12
|
+
this.edit = new EventEmitter();
|
|
13
|
+
}
|
|
14
|
+
ngOnInit() {
|
|
15
|
+
}
|
|
16
|
+
editSection() {
|
|
17
|
+
this._eventService.editSection.emit({ data: this.data });
|
|
18
|
+
}
|
|
19
|
+
regenerateSection() {
|
|
20
|
+
}
|
|
21
|
+
changeContent() {
|
|
22
|
+
}
|
|
23
|
+
copySection() {
|
|
24
|
+
this._eventService.duplicate.emit({ data: this.data });
|
|
25
|
+
}
|
|
26
|
+
moveUp() {
|
|
27
|
+
}
|
|
28
|
+
moveDown() {
|
|
29
|
+
}
|
|
30
|
+
deleteSection() {
|
|
31
|
+
this._eventService.delete.emit({ data: this.data });
|
|
32
|
+
}
|
|
33
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: HoverElementsComponent, deps: [{ token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
34
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: HoverElementsComponent, isStandalone: true, selector: "simpo-hover-elements", inputs: { data: "data" }, outputs: { edit: "edit" }, ngImport: i0, template: "<mat-dialog-content class=\"mat-typography\">\r\n <section class=\"hover-tab\">\r\n <div class=\"tabs-section\">\r\n <div class=\"edit-tab\">\r\n <button (click)=\"editSection()\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1076_52409)\">\r\n <path\r\n d=\"M2 11.4997V13.9997H4.5L11.8733 6.62638L9.37333 4.12638L2 11.4997ZM13.8067 4.69305C14.0667 4.43305 14.0667 4.01305 13.8067 3.75305L12.2467 2.19305C11.9867 1.93305 11.5667 1.93305 11.3067 2.19305L10.0867 3.41305L12.5867 5.91305L13.8067 4.69305Z\"\r\n fill=\"#036bb5\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1076_52409\">\r\n <rect width=\"18\" height=\"18\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n <span class=\"edit-text\">\r\n Edit\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\"></div>\r\n <div class=\"regenerate\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button (click)=\"regenerateSection()\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M4.01108 19.9525C4.27565 20.0656 4.58327 19.9712 4.7378 19.7271L11.7691 8.55522C11.8829 8.3744 11.8898 8.14608 11.7868 7.95956C11.6838 7.77245 11.4869 7.65628 11.2735 7.65628H6.58085L8.32608 0.730146C8.39647 0.450341 8.25397 0.161357 7.98905 0.0474897C7.72585 -0.0657916 7.41628 0.0291694 7.26233 0.272919L0.231082 11.4448C0.117215 11.6256 0.11034 11.8539 0.213348 12.0405C0.316355 12.2276 0.513191 12.3437 0.726629 12.3437H5.41928L3.67405 19.2699C3.60366 19.5497 3.74612 19.8387 4.01108 19.9525Z\"\r\n fill=\"#036bb5\" />\r\n </svg>\r\n <span class=\"edit-text\">\r\n Regenerate\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\" *ngIf=\"data.sectionType != 'footer'\"></div>\r\n <div class=\"regenerate\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button (click)=\"changeContent()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path stroke=\"#036bb5\" stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M11 12h7m-7-8h7m-7 4h7M2 16h16\">\r\n </path>\r\n <path stroke=\"#036bb5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"\r\n d=\"m2 12 .85714-2.28571M8 12l-.85714-2.28571m0 0L5 4 2.85714 9.71429m4.28572 0H2.85714\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Change Content</span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\" *ngIf=\"data.sectionType != 'footer'\"></div>\r\n <div class=\"remainin-sections\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button class=\"copy\" (click)=\"copySection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path\r\n d=\"M9 2c-1.10457 0-2 .89543-2 2v8c0 1.1046.89543 2 2 2h6c1.1046 0 2-.8954 2-2V6.41421c0-.53043-.2107-1.03914-.5858-1.41421L14 2.58579C13.6249 2.21071 13.1162 2 12.5858 2H9Z\">\r\n </path>\r\n <path d=\"M3 8c0-1.10457.89543-2 2-2v10h8c0 1.1046-.8954 2-2 2H5c-1.10457 0-2-.8954-2-2V8Z\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"moveUp()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M3.29289 9.70711c-.39052-.39053-.39052-1.02369 0-1.41422l6-6c.39053-.39052 1.02371-.39052 1.41421 0l6 6c.3905.39053.3905 1.02369 0 1.41422-.3905.39049-1.0237.39049-1.4142 0L11 5.41421V17c0 .5523-.4477 1-1 1-.55228 0-1-.4477-1-1V5.41421l-4.29289 4.2929c-.39053.39049-1.02369.39049-1.41422 0Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"moveDown()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M16.7071 10.2929c.3905.3905.3905 1.0237 0 1.4142l-6 6c-.3905.3905-1.02368.3905-1.41421 0l-6-6c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.39053 1.02369-.39053 1.41422 0L9 14.5858V3c0-.55228.44772-1 1-1 .5523 0 1 .44772 1 1v11.5858l4.2929-4.2929c.3905-.39053 1.0237-.39053 1.4142 0Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"deleteSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M9 2c-.37877 0-.72503.214-.89443.55279L7.38197 4H4c-.55228 0-1 .44772-1 1s.44772 1 1 1v10c0 1.1046.89543 2 2 2h8c1.1046 0 2-.8954 2-2V6c.5523 0 1-.44772 1-1s-.4477-1-1-1h-3.382l-.7236-1.44721C11.725 2.214 11.3788 2 11 2H9ZM7 8c0-.55228.44772-1 1-1s1 .44772 1 1v6c0 .5523-.44772 1-1 1s-1-.4477-1-1V8Zm5-1c-.5523 0-1 .44772-1 1v6c0 .5523.4477 1 1 1s1-.4477 1-1V8c0-.55228-.4477-1-1-1Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </section>\r\n</mat-dialog-content>", styles: [".hover-tab{display:flex;justify-content:flex-end;align-items:center;position:relative;right:30px;top:20px}.tabs-section{width:auto;padding:15px 10px;box-shadow:#63636333 0 2px 8px;border-radius:6px;display:flex;align-items:center;height:60px;background-color:#fff}.edit-tab{display:flex;align-items:center;justify-content:center}.edit-tab button{border:none;outline:none;cursor:pointer;background-color:transparent;padding:0;display:flex;justify-content:center;align-items:center}.edit-text{font-size:14px;color:#036bb5;font-weight:500;position:relative;left:4px}.vr-line{border-left:1px solid #e8e8e8;height:25px;margin-left:14px}.regenerate{margin-left:10px;display:flex;justify-content:center;align-items:center}.regenerate button{border:none;outline:none;cursor:pointer;background-color:transparent;padding:0;display:flex;justify-content:center;align-items:center}.remainin-sections{margin-left:10px;display:flex;justify-content:center;align-items:center}.remainin-sections :is(.copy,.up-arrow){border:none;outline:none;cursor:pointer;background-color:transparent;padding:0}.remainin-sections :is(.copy:hover,.up-arrow:hover) svg{fill:#036bb5}.up-arrow{margin-left:10px}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
35
|
+
}
|
|
36
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: HoverElementsComponent, decorators: [{
|
|
37
|
+
type: Component,
|
|
38
|
+
args: [{ selector: 'simpo-hover-elements', standalone: true, imports: [MatIconModule, MatDialogModule, CommonModule], template: "<mat-dialog-content class=\"mat-typography\">\r\n <section class=\"hover-tab\">\r\n <div class=\"tabs-section\">\r\n <div class=\"edit-tab\">\r\n <button (click)=\"editSection()\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 16 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1076_52409)\">\r\n <path\r\n d=\"M2 11.4997V13.9997H4.5L11.8733 6.62638L9.37333 4.12638L2 11.4997ZM13.8067 4.69305C14.0667 4.43305 14.0667 4.01305 13.8067 3.75305L12.2467 2.19305C11.9867 1.93305 11.5667 1.93305 11.3067 2.19305L10.0867 3.41305L12.5867 5.91305L13.8067 4.69305Z\"\r\n fill=\"#036bb5\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1076_52409\">\r\n <rect width=\"18\" height=\"18\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n <span class=\"edit-text\">\r\n Edit\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\"></div>\r\n <div class=\"regenerate\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button (click)=\"regenerateSection()\">\r\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n d=\"M4.01108 19.9525C4.27565 20.0656 4.58327 19.9712 4.7378 19.7271L11.7691 8.55522C11.8829 8.3744 11.8898 8.14608 11.7868 7.95956C11.6838 7.77245 11.4869 7.65628 11.2735 7.65628H6.58085L8.32608 0.730146C8.39647 0.450341 8.25397 0.161357 7.98905 0.0474897C7.72585 -0.0657916 7.41628 0.0291694 7.26233 0.272919L0.231082 11.4448C0.117215 11.6256 0.11034 11.8539 0.213348 12.0405C0.316355 12.2276 0.513191 12.3437 0.726629 12.3437H5.41928L3.67405 19.2699C3.60366 19.5497 3.74612 19.8387 4.01108 19.9525Z\"\r\n fill=\"#036bb5\" />\r\n </svg>\r\n <span class=\"edit-text\">\r\n Regenerate\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\" *ngIf=\"data.sectionType != 'footer'\"></div>\r\n <div class=\"regenerate\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button (click)=\"changeContent()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path stroke=\"#036bb5\" stroke-linecap=\"round\" stroke-width=\"1.5\" d=\"M11 12h7m-7-8h7m-7 4h7M2 16h16\">\r\n </path>\r\n <path stroke=\"#036bb5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\"\r\n d=\"m2 12 .85714-2.28571M8 12l-.85714-2.28571m0 0L5 4 2.85714 9.71429m4.28572 0H2.85714\"></path>\r\n </svg>\r\n <span class=\"edit-text\">Change Content</span>\r\n </button>\r\n </div>\r\n <div class=\"vr-line\" *ngIf=\"data.sectionType != 'footer'\"></div>\r\n <div class=\"remainin-sections\" *ngIf=\"data.sectionType != 'footer'\">\r\n <button class=\"copy\" (click)=\"copySection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path\r\n d=\"M9 2c-1.10457 0-2 .89543-2 2v8c0 1.1046.89543 2 2 2h6c1.1046 0 2-.8954 2-2V6.41421c0-.53043-.2107-1.03914-.5858-1.41421L14 2.58579C13.6249 2.21071 13.1162 2 12.5858 2H9Z\">\r\n </path>\r\n <path d=\"M3 8c0-1.10457.89543-2 2-2v10h8c0 1.1046-.8954 2-2 2H5c-1.10457 0-2-.8954-2-2V8Z\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"moveUp()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M3.29289 9.70711c-.39052-.39053-.39052-1.02369 0-1.41422l6-6c.39053-.39052 1.02371-.39052 1.41421 0l6 6c.3905.39053.3905 1.02369 0 1.41422-.3905.39049-1.0237.39049-1.4142 0L11 5.41421V17c0 .5523-.4477 1-1 1-.55228 0-1-.4477-1-1V5.41421l-4.29289 4.2929c-.39053.39049-1.02369.39049-1.41422 0Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"moveDown()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M16.7071 10.2929c.3905.3905.3905 1.0237 0 1.4142l-6 6c-.3905.3905-1.02368.3905-1.41421 0l-6-6c-.39052-.3905-.39052-1.0237 0-1.4142.39053-.39053 1.02369-.39053 1.41422 0L9 14.5858V3c0-.55228.44772-1 1-1 .5523 0 1 .44772 1 1v11.5858l4.2929-4.2929c.3905-.39053 1.0237-.39053 1.4142 0Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n <button class=\"up-arrow\" (click)=\"deleteSection()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"#434443\" viewBox=\"0 0 18 18\" width=\"18\" height=\"18\"\r\n class=\"icon w-5 h-5\" aria-hidden=\"true\">\r\n <path fill-rule=\"evenodd\"\r\n d=\"M9 2c-.37877 0-.72503.214-.89443.55279L7.38197 4H4c-.55228 0-1 .44772-1 1s.44772 1 1 1v10c0 1.1046.89543 2 2 2h8c1.1046 0 2-.8954 2-2V6c.5523 0 1-.44772 1-1s-.4477-1-1-1h-3.382l-.7236-1.44721C11.725 2.214 11.3788 2 11 2H9ZM7 8c0-.55228.44772-1 1-1s1 .44772 1 1v6c0 .5523-.44772 1-1 1s-1-.4477-1-1V8Zm5-1c-.5523 0-1 .44772-1 1v6c0 .5523.4477 1 1 1s1-.4477 1-1V8c0-.55228-.4477-1-1-1Z\"\r\n clip-rule=\"evenodd\"></path>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </section>\r\n</mat-dialog-content>", styles: [".hover-tab{display:flex;justify-content:flex-end;align-items:center;position:relative;right:30px;top:20px}.tabs-section{width:auto;padding:15px 10px;box-shadow:#63636333 0 2px 8px;border-radius:6px;display:flex;align-items:center;height:60px;background-color:#fff}.edit-tab{display:flex;align-items:center;justify-content:center}.edit-tab button{border:none;outline:none;cursor:pointer;background-color:transparent;padding:0;display:flex;justify-content:center;align-items:center}.edit-text{font-size:14px;color:#036bb5;font-weight:500;position:relative;left:4px}.vr-line{border-left:1px solid #e8e8e8;height:25px;margin-left:14px}.regenerate{margin-left:10px;display:flex;justify-content:center;align-items:center}.regenerate button{border:none;outline:none;cursor:pointer;background-color:transparent;padding:0;display:flex;justify-content:center;align-items:center}.remainin-sections{margin-left:10px;display:flex;justify-content:center;align-items:center}.remainin-sections :is(.copy,.up-arrow){border:none;outline:none;cursor:pointer;background-color:transparent;padding:0}.remainin-sections :is(.copy:hover,.up-arrow:hover) svg{fill:#036bb5}.up-arrow{margin-left:10px}\n"] }]
|
|
39
|
+
}], ctorParameters: () => [{ type: i1.EventsService }], propDecorators: { edit: [{
|
|
40
|
+
type: Output
|
|
41
|
+
}], data: [{
|
|
42
|
+
type: Input
|
|
43
|
+
}] } });
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItZWxlbWVudHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQVksZUFBZSxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7OztBQVMvQyxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQ1UsYUFBNkI7UUFBN0Isa0JBQWEsR0FBYixhQUFhLENBQWdCO1FBRzdCLFNBQUksR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztJQUZsRSxDQUFDO0lBS0gsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUMsSUFBSSxFQUFDLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQyxDQUFBO0lBQ3ZELENBQUM7SUFFRCxpQkFBaUI7SUFDakIsQ0FBQztJQUVELGFBQWE7SUFDYixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFDLElBQUksRUFBQyxJQUFJLENBQUMsSUFBSSxFQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBQ0QsTUFBTTtJQUVOLENBQUM7SUFDRCxRQUFRO0lBRVIsQ0FBQztJQUNELGFBQWE7UUFDWCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBQyxJQUFJLEVBQUMsSUFBSSxDQUFDLElBQUksRUFBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQzs4R0FqQ1Usc0JBQXNCO2tHQUF0QixzQkFBc0IscUlDYm5DLG1xTkFzRnFCLGl0Q0Q3RVQsYUFBYSw4QkFBQyxlQUFlLDBKQUFFLFlBQVk7OzJGQUkxQyxzQkFBc0I7a0JBUGxDLFNBQVM7K0JBQ0Usc0JBQXNCLGNBQ3BCLElBQUksV0FDUCxDQUFDLGFBQWEsRUFBQyxlQUFlLEVBQUUsWUFBWSxDQUFDO2tGQVU1QyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0UsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge01hdEljb25Nb2R1bGV9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQge01hdERpYWxvZywgTWF0RGlhbG9nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBFdmVudHNTZXJ2aWNlIH0gZnJvbSAnQHNpbXBvLXVpL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8taG92ZXItZWxlbWVudHMnLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW01hdEljb25Nb2R1bGUsTWF0RGlhbG9nTW9kdWxlLCBDb21tb25Nb2R1bGVdLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmw6ICcuL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudC5jc3MnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0e1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2V2ZW50U2VydmljZSA6IEV2ZW50c1NlcnZpY2VcclxuICApe31cclxuICBcclxuICBAT3V0cHV0KCkgZWRpdDogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG4gIEBJbnB1dCgpIGRhdGEgOiBhbnlcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBlZGl0U2VjdGlvbigpe1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSlcclxuICB9XHJcblxyXG4gIHJlZ2VuZXJhdGVTZWN0aW9uKCl7XHJcbiAgfVxyXG4gIFxyXG4gIGNoYW5nZUNvbnRlbnQoKXtcclxuICB9XHJcblxyXG4gIGNvcHlTZWN0aW9uKCl7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuZHVwbGljYXRlLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSk7XHJcbiAgfVxyXG4gIG1vdmVVcCgpe1xyXG5cclxuICB9XHJcbiAgbW92ZURvd24oKXtcclxuICAgIFxyXG4gIH1cclxuICBkZWxldGVTZWN0aW9uKCl7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuZGVsZXRlLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSk7XHJcbiAgfVxyXG4gIFxyXG59XHJcbiIsIjxtYXQtZGlhbG9nLWNvbnRlbnQgY2xhc3M9XCJtYXQtdHlwb2dyYXBoeVwiPlxyXG4gICAgPHNlY3Rpb24gY2xhc3M9XCJob3Zlci10YWJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwidGFicy1zZWN0aW9uXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJlZGl0LXRhYlwiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZWRpdFNlY3Rpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzEwNzZfNTI0MDkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMiAxMS40OTk3VjEzLjk5OTdINC41TDExLjg3MzMgNi42MjYzOEw5LjM3MzMzIDQuMTI2MzhMMiAxMS40OTk3Wk0xMy44MDY3IDQuNjkzMDVDMTQuMDY2NyA0LjQzMzA1IDE0LjA2NjcgNC4wMTMwNSAxMy44MDY3IDMuNzUzMDVMMTIuMjQ2NyAyLjE5MzA1QzExLjk4NjcgMS45MzMwNSAxMS41NjY3IDEuOTMzMDUgMTEuMzA2NyAyLjE5MzA1TDEwLjA4NjcgMy40MTMwNUwxMi41ODY3IDUuOTEzMDVMMTMuODA2NyA0LjY5MzA1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMwMzZiYjVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMTA3Nl81MjQwOVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJlZGl0LXRleHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgRWRpdFxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZyLWxpbmVcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJlZ2VuZXJhdGVcIiAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcidcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gKGNsaWNrKT1cInJlZ2VuZXJhdGVTZWN0aW9uKClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNNC4wMTEwOCAxOS45NTI1QzQuMjc1NjUgMjAuMDY1NiA0LjU4MzI3IDE5Ljk3MTIgNC43Mzc4IDE5LjcyNzFMMTEuNzY5MSA4LjU1NTIyQzExLjg4MjkgOC4zNzQ0IDExLjg4OTggOC4xNDYwOCAxMS43ODY4IDcuOTU5NTZDMTEuNjgzOCA3Ljc3MjQ1IDExLjQ4NjkgNy42NTYyOCAxMS4yNzM1IDcuNjU2MjhINi41ODA4NUw4LjMyNjA4IDAuNzMwMTQ2QzguMzk2NDcgMC40NTAzNDEgOC4yNTM5NyAwLjE2MTM1NyA3Ljk4OTA1IDAuMDQ3NDg5N0M3LjcyNTg1IC0wLjA2NTc5MTYgNy40MTYyOCAwLjAyOTE2OTQgNy4yNjIzMyAwLjI3MjkxOUwwLjIzMTA4MiAxMS40NDQ4QzAuMTE3MjE1IDExLjYyNTYgMC4xMTAzNCAxMS44NTM5IDAuMjEzMzQ4IDEyLjA0MDVDMC4zMTYzNTUgMTIuMjI3NiAwLjUxMzE5MSAxMi4zNDM3IDAuNzI2NjI5IDEyLjM0MzdINS40MTkyOEwzLjY3NDA1IDE5LjI2OTlDMy42MDM2NiAxOS41NDk3IDMuNzQ2MTIgMTkuODM4NyA0LjAxMTA4IDE5Ljk1MjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMDM2YmI1XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVkaXQtdGV4dFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBSZWdlbmVyYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidnItbGluZVwiICAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcidcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJlZ2VuZXJhdGVcIiAgKm5nSWY9XCJkYXRhLnNlY3Rpb25UeXBlICE9ICdmb290ZXInXCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIChjbGljayk9XCJjaGFuZ2VDb250ZW50KClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb24gdy01IGgtNVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2U9XCIjMDM2YmI1XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIGQ9XCJNMTEgMTJoN20tNy04aDdtLTcgNGg3TTIgMTZoMTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBzdHJva2U9XCIjMDM2YmI1XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJtMiAxMiAuODU3MTQtMi4yODU3MU04IDEybC0uODU3MTQtMi4yODU3MW0wIDBMNSA0IDIuODU3MTQgOS43MTQyOW00LjI4NTcyIDBIMi44NTcxNFwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImVkaXQtdGV4dFwiPkNoYW5nZSBDb250ZW50PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidnItbGluZVwiICAqbmdJZj1cImRhdGEuc2VjdGlvblR5cGUgIT0gJ2Zvb3RlcidcIj48L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJlbWFpbmluLXNlY3Rpb25zXCIgICpuZ0lmPVwiZGF0YS5zZWN0aW9uVHlwZSAhPSAnZm9vdGVyJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvcHlcIiAoY2xpY2spPVwiY29weVNlY3Rpb24oKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGw9XCIjNDM0NDQzXCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbiB3LTUgaC01XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkgMmMtMS4xMDQ1NyAwLTIgLjg5NTQzLTIgMnY4YzAgMS4xMDQ2Ljg5NTQzIDIgMiAyaDZjMS4xMDQ2IDAgMi0uODk1NCAyLTJWNi40MTQyMWMwLS41MzA0My0uMjEwNy0xLjAzOTE0LS41ODU4LTEuNDE0MjFMMTQgMi41ODU3OUMxMy42MjQ5IDIuMjEwNzEgMTMuMTE2MiAyIDEyLjU4NTggMkg5WlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMyA4YzAtMS4xMDQ1Ny44OTU0My0yIDItMnYxMGg4YzAgMS4xMDQ2LS44OTU0IDItMiAySDVjLTEuMTA0NTcgMC0yLS44OTU0LTItMlY4WlwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInVwLWFycm93XCIgKGNsaWNrKT1cIm1vdmVVcCgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIiM0MzQ0NDNcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29uIHctNSBoLTVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTMuMjkyODkgOS43MDcxMWMtLjM5MDUyLS4zOTA1My0uMzkwNTItMS4wMjM2OSAwLTEuNDE0MjJsNi02Yy4zOTA1My0uMzkwNTIgMS4wMjM3MS0uMzkwNTIgMS40MTQyMSAwbDYgNmMuMzkwNS4zOTA1My4zOTA1IDEuMDIzNjkgMCAxLjQxNDIyLS4zOTA1LjM5MDQ5LTEuMDIzNy4zOTA0OS0xLjQxNDIgMEwxMSA1LjQxNDIxVjE3YzAgLjU1MjMtLjQ0NzcgMS0xIDEtLjU1MjI4IDAtMS0uNDQ3Ny0xLTFWNS40MTQyMWwtNC4yOTI4OSA0LjI5MjljLS4zOTA1My4zOTA0OS0xLjAyMzY5LjM5MDQ5LTEuNDE0MjIgMFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xpcC1ydWxlPVwiZXZlbm9kZFwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInVwLWFycm93XCIgKGNsaWNrKT1cIm1vdmVEb3duKClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwiIzQzNDQ0M1wiIHZpZXdCb3g9XCIwIDAgMTggMThcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb24gdy01IGgtNVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTYuNzA3MSAxMC4yOTI5Yy4zOTA1LjM5MDUuMzkwNSAxLjAyMzcgMCAxLjQxNDJsLTYgNmMtLjM5MDUuMzkwNS0xLjAyMzY4LjM5MDUtMS40MTQyMSAwbC02LTZjLS4zOTA1Mi0uMzkwNS0uMzkwNTItMS4wMjM3IDAtMS40MTQyLjM5MDUzLS4zOTA1MyAxLjAyMzY5LS4zOTA1MyAxLjQxNDIyIDBMOSAxNC41ODU4VjNjMC0uNTUyMjguNDQ3NzItMSAxLTEgLjU1MjMgMCAxIC40NDc3MiAxIDF2MTEuNTg1OGw0LjI5MjktNC4yOTI5Yy4zOTA1LS4zOTA1MyAxLjAyMzctLjM5MDUzIDEuNDE0MiAwWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidXAtYXJyb3dcIiAoY2xpY2spPVwiZGVsZXRlU2VjdGlvbigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIiM0MzQ0NDNcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29uIHctNSBoLTVcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTkgMmMtLjM3ODc3IDAtLjcyNTAzLjIxNC0uODk0NDMuNTUyNzlMNy4zODE5NyA0SDRjLS41NTIyOCAwLTEgLjQ0NzcyLTEgMXMuNDQ3NzIgMSAxIDF2MTBjMCAxLjEwNDYuODk1NDMgMiAyIDJoOGMxLjEwNDYgMCAyLS44OTU0IDItMlY2Yy41NTIzIDAgMS0uNDQ3NzIgMS0xcy0uNDQ3Ny0xLTEtMWgtMy4zODJsLS43MjM2LTEuNDQ3MjFDMTEuNzI1IDIuMjE0IDExLjM3ODggMiAxMSAySDlaTTcgOGMwLS41NTIyOC40NDc3Mi0xIDEtMXMxIC40NDc3MiAxIDF2NmMwIC41NTIzLS40NDc3MiAxLTEgMXMtMS0uNDQ3Ny0xLTFWOFptNS0xYy0uNTUyMyAwLTEgLjQ0NzcyLTEgMXY2YzAgLjU1MjMuNDQ3NyAxIDEgMXMxLS40NDc3IDEtMVY4YzAtLjU1MjI4LS40NDc3LTEtMS0xWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGlwLXJ1bGU9XCJldmVub2RkXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9zZWN0aW9uPlxyXG48L21hdC1kaWFsb2ctY29udGVudD4iXX0=
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { HoverElementsComponent } from './hover-elements/hover-elements.component';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class SimpoComponentModule {
|
|
5
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: SimpoComponentModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
6
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.2.3", ngImport: i0, type: SimpoComponentModule, imports: [HoverElementsComponent], exports: [HoverElementsComponent] }); }
|
|
7
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: SimpoComponentModule, imports: [HoverElementsComponent] }); }
|
|
8
|
+
}
|
|
9
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: SimpoComponentModule, decorators: [{
|
|
10
|
+
type: NgModule,
|
|
11
|
+
args: [{
|
|
12
|
+
imports: [HoverElementsComponent],
|
|
13
|
+
exports: [HoverElementsComponent],
|
|
14
|
+
}]
|
|
15
|
+
}] });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQzs7QUFLbkYsTUFBTSxPQUFPLG9CQUFvQjs4R0FBcEIsb0JBQW9COytHQUFwQixvQkFBb0IsWUFIckIsc0JBQXNCLGFBQ3RCLHNCQUFzQjsrR0FFckIsb0JBQW9CLFlBSHJCLHNCQUFzQjs7MkZBR3JCLG9CQUFvQjtrQkFKaEMsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vaG92ZXItZWxlbWVudHMvaG92ZXItZWxlbWVudHMuY29tcG9uZW50JztcclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbSG92ZXJFbGVtZW50c0NvbXBvbmVudF0sXHJcbiAgZXhwb3J0czogW0hvdmVyRWxlbWVudHNDb21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2ltcG9Db21wb25lbnRNb2R1bGUge31cclxuIl19
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { Directive, Input, } from '@angular/core';
|
|
2
|
+
import { animation } from '../styles/index';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
5
|
+
export class AnimationDirective {
|
|
6
|
+
constructor(el, renderer, eventService) {
|
|
7
|
+
this.el = el;
|
|
8
|
+
this.renderer = renderer;
|
|
9
|
+
this.eventService = eventService;
|
|
10
|
+
this.animationSpeed = animation;
|
|
11
|
+
this.animationTypes = {
|
|
12
|
+
left: "animateleft",
|
|
13
|
+
right: "animateright",
|
|
14
|
+
bottom: "animatebottom",
|
|
15
|
+
top: "animatetop",
|
|
16
|
+
zoom: "animatezoom",
|
|
17
|
+
fadeIn: "opac"
|
|
18
|
+
};
|
|
19
|
+
this.eventServiceSubscription = this.eventService.animationChangeChecks.subscribe((res) => {
|
|
20
|
+
if (this.el.nativeElement.id === res.id) {
|
|
21
|
+
this.animationData = res.data;
|
|
22
|
+
this.applyAnimation();
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
ngOnDestroy() {
|
|
27
|
+
if (this.eventServiceSubscription) {
|
|
28
|
+
this.eventServiceSubscription.unsubscribe();
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
ngOnInit() {
|
|
32
|
+
this.applyAnimation();
|
|
33
|
+
}
|
|
34
|
+
ngOnChanges() {
|
|
35
|
+
this.applyAnimation();
|
|
36
|
+
}
|
|
37
|
+
applyAnimation() {
|
|
38
|
+
if (this.animationData?.type) {
|
|
39
|
+
const anim = animation.type[this.animationData?.type];
|
|
40
|
+
// this.renderer.removeClass(this.el.nativeElement,anim);
|
|
41
|
+
// this.renderer.addClass(this.el.nativeElement, anim);
|
|
42
|
+
if (this.animationData.type == 'left') {
|
|
43
|
+
this.name = 'animateleft';
|
|
44
|
+
}
|
|
45
|
+
if (this.animationData.type == 'right') {
|
|
46
|
+
this.name = 'animateright';
|
|
47
|
+
}
|
|
48
|
+
if (this.animationData.type == 'top') {
|
|
49
|
+
this.name = 'animatetop';
|
|
50
|
+
}
|
|
51
|
+
if (this.animationData.type == 'bottom') {
|
|
52
|
+
this.name = 'animatebottom';
|
|
53
|
+
}
|
|
54
|
+
if (this.animationData.type == 'fadeIn') {
|
|
55
|
+
this.name = 'opac';
|
|
56
|
+
}
|
|
57
|
+
if (this.animationData.type == 'zoom') {
|
|
58
|
+
this.name = 'animatezoom';
|
|
59
|
+
}
|
|
60
|
+
this.el.nativeElement.style.setProperty('position', 'relative');
|
|
61
|
+
this.el.nativeElement.style.setProperty('animation-name', this.name);
|
|
62
|
+
}
|
|
63
|
+
if (this.animationData?.speed) {
|
|
64
|
+
const speed = animation.speed[this.animationData?.speed];
|
|
65
|
+
this.el.nativeElement.style.setProperty('position', 'relative');
|
|
66
|
+
this.el.nativeElement.style.setProperty('animation-name', this.name);
|
|
67
|
+
this.el.nativeElement.style.setProperty('animation-duration', this.getAnimationSpeed(this.animationData.speed));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
getAnimationSpeed(speed) {
|
|
71
|
+
let speedInSec = '';
|
|
72
|
+
for (let key of Object.keys(animation.speed)) {
|
|
73
|
+
if (key === speed) {
|
|
74
|
+
speedInSec = animation.speed[key];
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return speedInSec;
|
|
78
|
+
}
|
|
79
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AnimationDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
80
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: AnimationDirective, isStandalone: true, selector: "[simpoAnimation]", inputs: { animationData: ["simpoAnimation", "animationData"] }, usesOnChanges: true, ngImport: i0 }); }
|
|
81
|
+
}
|
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: AnimationDirective, decorators: [{
|
|
83
|
+
type: Directive,
|
|
84
|
+
args: [{
|
|
85
|
+
selector: '[simpoAnimation]',
|
|
86
|
+
standalone: true,
|
|
87
|
+
}]
|
|
88
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.EventsService }], propDecorators: { animationData: [{
|
|
89
|
+
type: Input,
|
|
90
|
+
args: ['simpoAnimation']
|
|
91
|
+
}] } });
|
|
92
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEdBS04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFRNUMsTUFBTSxPQUFPLGtCQUFrQjtJQUk3QixZQUNVLEVBQWMsRUFDZCxRQUFtQixFQUNuQixZQUE0QjtRQUY1QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUFKdEMsbUJBQWMsR0FBRyxTQUFTLENBQUE7UUEyRTFCLG1CQUFjLEdBQVE7WUFDcEIsSUFBSSxFQUFHLGFBQWE7WUFDcEIsS0FBSyxFQUFHLGNBQWM7WUFDdEIsTUFBTSxFQUFFLGVBQWU7WUFDdkIsR0FBRyxFQUFHLFlBQVk7WUFDbEIsSUFBSSxFQUFHLGFBQWE7WUFDcEIsTUFBTSxFQUFHLE1BQU07U0FDaEIsQ0FBQTtRQTVFQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxTQUFTLENBQy9FLENBQUMsR0FBTyxFQUFFLEVBQUU7WUFDVixJQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxFQUFDLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQTtnQkFDN0IsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3hCLENBQUM7UUFDSCxDQUFDLENBQ0YsQ0FBQTtJQUNILENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBRyxJQUFJ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QUFHLENBQUMsQ0FBQztZQUNwQyxDQUFDO1FBQ0osQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7OEdBNUVVLGtCQUFrQjtrR0FBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjttSUFFMEIsYUFBYTtzQkFBckMsS0FBSzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIElucHV0LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25Jbml0LFxyXG4gIFJlbmRlcmVyMixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgYW5pbWF0aW9uIH0gZnJvbSAnLi4vc3R5bGVzL2luZGV4JztcclxuaW1wb3J0IHsgQW5pbWF0aW9uTW9kZWwgfSBmcm9tICdAc2ltcG8tdWkvc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJ0BzaW1wby11aS9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEFOSU1BVElPTl9TUEVFRCB9IGZyb20gJ0BzaW1wby11aS9zdHlsZXMvdHlwZXMnO1xyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzaW1wb0FuaW1hdGlvbl0nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbmltYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBASW5wdXQoJ3NpbXBvQW5pbWF0aW9uJykgYW5pbWF0aW9uRGF0YT86IEFuaW1hdGlvbk1vZGVsO1xyXG4gIGV2ZW50U2VydmljZVN1YnNjcmlwdGlvbiA6IGFueTtcclxuICBhbmltYXRpb25TcGVlZCA9IGFuaW1hdGlvblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5ldmVudFNlcnZpY2VTdWJzY3JpcHRpb24gPSB0aGlzLmV2ZW50U2VydmljZS5hbmltYXRpb25DaGFuZ2VDaGVja3Muc3Vic2NyaWJlKFxyXG4gICAgICAocmVzOmFueSkgPT4ge1xyXG4gICAgICAgIGlmKHRoaXMuZWwubmF0aXZlRWxlbWVudC5pZCA9PT0gcmVzLmlkKXtcclxuICAgICAgICAgIHRoaXMuYW5pbWF0aW9uRGF0YSA9IHJlcy5kYXRhXHJcbiAgICAgICAgICB0aGlzLmFwcGx5QW5pbWF0aW9uKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICApXHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYodGhpcy5ldmVudFNlcnZpY2VTdWJzY3JpcHRpb24pe1xyXG4gICAgICB0aGlzLmV2ZW50U2VydmljZVN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuYXBwbHlBbmltYXRpb24oKTtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5hcHBseUFuaW1hdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbmFtZTogYW55O1xyXG5cclxuICBwcml2YXRlIGFwcGx5QW5pbWF0aW9uKCkge1xyXG4gICAgaWYgKHRoaXMuYW5pbWF0aW9uRGF0YT8udHlwZSkge1xyXG4gICAgICBjb25zdCBhbmltID0gYW5pbWF0aW9uLnR5cGVbdGhpcy5hbmltYXRpb25EYXRhPy50eXBlXTtcclxuICAgICAgLy8gdGhpcy5yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsYW5pbSk7XHJcbiAgICAgIC8vIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCBhbmltKTtcclxuICAgICAgaWYodGhpcy5hbmltYXRpb25EYXRhLnR5cGUgPT0gJ2xlZnQnKXtcclxuICAgICAgICB0aGlzLm5hbWUgPSAnYW5pbWF0ZWxlZnQnXHJcbiAgICAgIH1cclxuICAgICAgaWYodGhpcy5hbmltYXRpb25EYXRhLnR5cGUgPT0gJ3JpZ2h0Jyl7XHJcbiAgICAgICAgdGhpcy5uYW1lID0gJ2FuaW1hdGVyaWdodCdcclxuICAgICAgfVxyXG4gICAgICBpZih0aGlzLmFuaW1hdGlvbkRhdGEudHlwZSA9PSAndG9wJyl7XHJcbiAgICAgICAgdGhpcy5uYW1lID0gJ2FuaW1hdGV0b3AnXHJcbiAgICAgIH1cclxuICAgICAgaWYodGhpcy5hbmltYXRpb25EYXRhLnR5cGUgPT0gJ2JvdHRvbScpe1xyXG4gICAgICAgIHRoaXMubmFtZSA9ICdhbmltYXRlYm90dG9tJ1xyXG4gICAgICB9XHJcbiAgICAgIGlmKHRoaXMuYW5pbWF0aW9uRGF0YS50eXBlID09ICdmYWRlSW4nKXtcclxuICAgICAgICB0aGlzLm5hbWUgPSAnb3BhYydcclxuICAgICAgfVxyXG4gICAgICBpZih0aGlzLmFuaW1hdGlvbkRhdGEudHlwZSA9PSAnem9vbScpe1xyXG4gICAgICAgIHRoaXMubmFtZSA9ICdhbmltYXRlem9vbSdcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uJywgJ3JlbGF0aXZlJyk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYW5pbWF0aW9uLW5hbWUnLCB0aGlzLm5hbWUpO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICh0aGlzLmFuaW1hdGlvbkRhdGE/LnNwZWVkKSB7XHJcbiAgICAgIGNvbnN0IHNwZWVkID0gYW5pbWF0aW9uLnNwZWVkW3RoaXMuYW5pbWF0aW9uRGF0YT8uc3BlZWRdO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ3Bvc2l0aW9uJywgJ3JlbGF0aXZlJyk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYW5pbWF0aW9uLW5hbWUnLCB0aGlzLm5hbWUpO1xyXG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2FuaW1hdGlvbi1kdXJhdGlvbicsIHRoaXMuZ2V0QW5pbWF0aW9uU3BlZWQodGhpcy5hbmltYXRpb25EYXRhLnNwZWVkKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRBbmltYXRpb25TcGVlZChzcGVlZDpBTklNQVRJT05fU1BFRUQpe1xyXG4gICAgbGV0IHNwZWVkSW5TZWMgPSAnJ1xyXG4gICAgZm9yKGxldCBrZXkgb2YgT2JqZWN0LmtleXMoYW5pbWF0aW9uLnNwZWVkKSl7XHJcbiAgICAgICBpZihrZXkgPT09IHNwZWVkKXtcclxuICAgICAgICBzcGVlZEluU2VjID0gIGFuaW1hdGlvbi5zcGVlZFtrZXldO1xyXG4gICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHNwZWVkSW5TZWM7XHJcbiAgfVxyXG5cclxuICBhbmltYXRpb25UeXBlcyA6IGFueSA9e1xyXG4gICAgbGVmdCA6IFwiYW5pbWF0ZWxlZnRcIixcclxuICAgIHJpZ2h0IDogXCJhbmltYXRlcmlnaHRcIixcclxuICAgIGJvdHRvbSA6XCJhbmltYXRlYm90dG9tXCIsXHJcbiAgICB0b3AgOiBcImFuaW1hdGV0b3BcIixcclxuICAgIHpvb20gOiBcImFuaW1hdGV6b29tXCIsXHJcbiAgICBmYWRlSW4gOiBcIm9wYWNcIlxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
4
|
+
export class BackgroundDirective {
|
|
5
|
+
constructor(el, eventService) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
this.eventService = eventService;
|
|
8
|
+
if (this.eventEmmitter) {
|
|
9
|
+
this.eventEmmitter.unsubscribe();
|
|
10
|
+
}
|
|
11
|
+
this.eventEmmitter = this.eventService.backgroundImageChangeCheck.subscribe((res) => {
|
|
12
|
+
if (this.el.nativeElement.id === res.id) {
|
|
13
|
+
if (res.data?.showImage) {
|
|
14
|
+
this.el.nativeElement.style.setProperty('background-image', `url(${res.data.image})`);
|
|
15
|
+
this.el.nativeElement.style.setProperty('background-position', `${res.data.position?.x}% ${res.data.position?.y}%`);
|
|
16
|
+
this.el.nativeElement.style.setProperty('background-repeat', `no-repeat`);
|
|
17
|
+
this.el.nativeElement.style.setProperty('background-size', `cover`);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
this.el.nativeElement.style.setProperty('background-color', res.data?.color);
|
|
21
|
+
this.el.nativeElement.style.setProperty('background-image', ``);
|
|
22
|
+
this.el.nativeElement.style.setProperty('color', this.getTextColor(res.data?.color));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
ngOnDestroy() {
|
|
28
|
+
if (this.eventEmmitter) {
|
|
29
|
+
this.eventEmmitter.unsubscribe();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
ngOnChanges(change) {
|
|
33
|
+
if (this.simpoBackground?.showImage) {
|
|
34
|
+
this.el.nativeElement.style.setProperty('background-image', `url(${this.simpoBackground.image})`);
|
|
35
|
+
this.el.nativeElement.style.setProperty('background-position', `${this.simpoBackground.position?.x}% ${this.simpoBackground.position?.y}%`);
|
|
36
|
+
this.el.nativeElement.style.setProperty('background-repeat', `no-repeat`);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
this.el.nativeElement.style.setProperty('background-color', this.simpoBackground?.color);
|
|
40
|
+
this.el.nativeElement.style.setProperty('color', this.getTextColor(this.simpoBackground?.color ? this.simpoBackground?.color : '#ffffff'));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
getTextColor(bgColor) {
|
|
44
|
+
if (bgColor) {
|
|
45
|
+
const threshold = 130; // Adjust this threshold as needed
|
|
46
|
+
const r = parseInt(bgColor.slice(1, 3), 16);
|
|
47
|
+
const g = parseInt(bgColor.slice(3, 5), 16);
|
|
48
|
+
const b = parseInt(bgColor.slice(5, 7), 16);
|
|
49
|
+
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
|
|
50
|
+
return brightness > threshold ? '#000000' : '#ffffff';
|
|
51
|
+
}
|
|
52
|
+
return "#ffffff;";
|
|
53
|
+
}
|
|
54
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackgroundDirective, deps: [{ token: i0.ElementRef }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
55
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BackgroundDirective, isStandalone: true, selector: "[simpoBackground]", inputs: { simpoBackground: "simpoBackground" }, usesOnChanges: true, ngImport: i0 }); }
|
|
56
|
+
}
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BackgroundDirective, decorators: [{
|
|
58
|
+
type: Directive,
|
|
59
|
+
args: [{
|
|
60
|
+
selector: '[simpoBackground]',
|
|
61
|
+
standalone: true,
|
|
62
|
+
}]
|
|
63
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.EventsService }], propDecorators: { simpoBackground: [{
|
|
64
|
+
type: Input,
|
|
65
|
+
args: ['simpoBackground']
|
|
66
|
+
}] } });
|
|
67
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2dyb3VuZC1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7OztBQVF2RixNQUFNLE9BQU8sbUJBQW1CO0lBSTlCLFlBQ1UsRUFBYyxFQUNkLFlBQTJCO1FBRDNCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQUNqQyxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN2QixJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxDQUFBO1FBQ2xDLENBQUM7UUFDRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsMEJBQTBCLENBQUMsU0FBUyxDQUN6RSxDQUFDLEdBQU8sRUFBRSxFQUFFO1lBQ1YsSUFBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBQyxDQUFDO2dCQUN0QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUM7b0JBQ3hCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGtCQUFrQixFQUNsQixPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQ3pCLENBQUM7b0JBQ0YsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FDckMscUJBQXFCLEVBQ3JCLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxD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QUM1QyxNQUFNLFVBQVUsR0FBRyxDQUFDLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDO1lBRXhELE9BQU8sVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDeEQsQ0FBQztRQUNELE9BQU8sVUFBVSxDQUFBO0lBQ25CLENBQUM7OEdBNUVVLG1CQUFtQjtrR0FBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUovQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsyR0FFMkIsZUFBZTtzQkFBeEMsS0FBSzt1QkFBQyxpQkFBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJ0BzaW1wby11aS9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XHJcbmltcG9ydCB7IEJhY2tncm91bmRNb2RlbCB9IGZyb20gJ0BzaW1wby11aS9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2ltcG9CYWNrZ3JvdW5kXScsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEJhY2tncm91bmREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgnc2ltcG9CYWNrZ3JvdW5kJykgc2ltcG9CYWNrZ3JvdW5kPzogQmFja2dyb3VuZE1vZGVsO1xyXG5cclxuICBldmVudEVtbWl0dGVyIDogYW55O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcclxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlIDpFdmVudHNTZXJ2aWNlKSB7XHJcbiAgICAgIGlmICh0aGlzLmV2ZW50RW1taXR0ZXIpIHtcclxuICAgICAgICB0aGlzLmV2ZW50RW1taXR0ZXIudW5zdWJzY3JpYmUoKVxyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuZXZlbnRFbW1pdHRlciA9IHRoaXMuZXZlbnRTZXJ2aWNlLmJhY2tncm91bmRJbWFnZUNoYW5nZUNoZWNrLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOmFueSkgPT4ge1xyXG4gICAgICAgICAgaWYodGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkID09PSByZXMuaWQpe1xyXG4gICAgICAgICAgICBpZiAocmVzLmRhdGE/LnNob3dJbWFnZSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICAgICAgICAgIGB1cmwoJHtyZXMuZGF0YS5pbWFnZX0pYFxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICAgJ2JhY2tncm91bmQtcG9zaXRpb24nLFxyXG4gICAgICAgICAgICAgICAgYCR7cmVzLmRhdGEucG9zaXRpb24/Lnh9JSAke3Jlcy5kYXRhLnBvc2l0aW9uPy55fSVgXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQtcmVwZWF0JywgYG5vLXJlcGVhdGApO1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYmFja2dyb3VuZC1zaXplJywgYGNvdmVyYCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICAgICAgICAgJ2JhY2tncm91bmQtY29sb3InLFxyXG4gICAgICAgICAgICAgICAgcmVzLmRhdGE/LmNvbG9yXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoXHJcbiAgICAgICAgICAgICAgICAnYmFja2dyb3VuZC1pbWFnZScsXHJcbiAgICAgICAgICAgICAgICBgYFxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdjb2xvcicsdGhpcy5nZXRUZXh0Q29sb3IocmVzLmRhdGE/LmNvbG9yKSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgKVxyXG4gICAgfVxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgIGlmICh0aGlzLmV2ZW50RW1taXR0ZXIpIHtcclxuICAgICAgICAgdGhpcy5ldmVudEVtbWl0dGVyLnVuc3Vic2NyaWJlKClcclxuICAgICAgIH1cclxuICAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2U6U2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5zaG93SW1hZ2UpIHtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICdiYWNrZ3JvdW5kLWltYWdlJyxcclxuICAgICAgICBgdXJsKCR7dGhpcy5zaW1wb0JhY2tncm91bmQuaW1hZ2V9KWBcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KFxyXG4gICAgICAgICdiYWNrZ3JvdW5kLXBvc2l0aW9uJyxcclxuICAgICAgICBgJHt0aGlzLnNpbXBvQmFja2dyb3VuZC5wb3NpdGlvbj8ueH0lICR7dGhpcy5zaW1wb0JhY2tncm91bmQucG9zaXRpb24/Lnl9JWBcclxuICAgICAgKTtcclxuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdiYWNrZ3JvdW5kLXJlcGVhdCcsIGBuby1yZXBlYXRgKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYmFja2dyb3VuZC1jb2xvcicsXHJcbiAgICAgICAgdGhpcy5zaW1wb0JhY2tncm91bmQ/LmNvbG9yXHJcbiAgICAgICk7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLHRoaXMuZ2V0VGV4dENvbG9yKHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5jb2xvciA/IHRoaXMuc2ltcG9CYWNrZ3JvdW5kPy5jb2xvciA6ICcjZmZmZmZmJykpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXRUZXh0Q29sb3IoYmdDb2xvcjogc3RyaW5nKSB7XHJcbiAgICBpZiAoYmdDb2xvcikge1xyXG4gICAgICBjb25zdCB0aHJlc2hvbGQgPSAxMzA7IC8vIEFkanVzdCB0aGlzIHRocmVzaG9sZCBhcyBuZWVkZWRcclxuICAgICAgY29uc3QgciA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMSwgMyksIDE2KTtcclxuICAgICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcclxuICAgICAgY29uc3QgYiA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoNSwgNyksIDE2KTtcclxuICAgICAgY29uc3QgYnJpZ2h0bmVzcyA9IChyICogMjk5ICsgZyAqIDU4NyArIGIgKiAxMTQpIC8gMTAwMDtcclxuXHJcbiAgICAgIHJldHVybiBicmlnaHRuZXNzID4gdGhyZXNob2xkID8gJyMwMDAwMDAnIDogJyNmZmZmZmYnO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIFwiI2ZmZmZmZjtcIlxyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import { fitContent, fitScreen, applySpacing, BANNERALIGNMENT, BANNERHALIGN } from '../styles/index';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
5
|
+
export class BannerContentFitDirective {
|
|
6
|
+
constructor(el, eventService, renderer) {
|
|
7
|
+
this.el = el;
|
|
8
|
+
this.eventService = eventService;
|
|
9
|
+
this.renderer = renderer;
|
|
10
|
+
this.eventService.alignmentChangeChecks.subscribe((res) => {
|
|
11
|
+
if (this.layout?.bannerImageDisplay) {
|
|
12
|
+
Object.entries(BANNERALIGNMENT).forEach(([className, classValue]) => {
|
|
13
|
+
if (res.data?.align === className) {
|
|
14
|
+
this.renderer.addClass(this.el.nativeElement, classValue);
|
|
15
|
+
if (res.data?.align == 'top' || res.data?.align == 'bottom') {
|
|
16
|
+
this.el.nativeElement.style.setProperty('text-align', "center");
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
else {
|
|
22
|
+
Object.entries(BANNERHALIGN).forEach(([className, classValue]) => {
|
|
23
|
+
if (res.data?.layoutAlignment?.value === className) {
|
|
24
|
+
this.renderer.addClass(this.el.nativeElement, `flex-lg-row`);
|
|
25
|
+
classValue.split(" ").forEach(element => {
|
|
26
|
+
this.renderer.addClass(this.el.nativeElement, element);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
applySpacing(this.el.nativeElement, this.layout?.spacing);
|
|
32
|
+
});
|
|
33
|
+
this.eventService.spacingChangeChecks.subscribe((res) => {
|
|
34
|
+
if (this.el.nativeElement.id === res.type) {
|
|
35
|
+
if (this.layout?.fit === 'content') {
|
|
36
|
+
fitContent(this.el.nativeElement);
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
fitScreen(this.el.nativeElement);
|
|
40
|
+
}
|
|
41
|
+
applySpacing(this.el.nativeElement, res.data.spacing);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
ngOnInit() {
|
|
46
|
+
this.appply();
|
|
47
|
+
}
|
|
48
|
+
ngOnChanges() {
|
|
49
|
+
this.appply();
|
|
50
|
+
}
|
|
51
|
+
appply() {
|
|
52
|
+
if (this.layout?.fit === 'content') {
|
|
53
|
+
fitContent(this.el.nativeElement);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
fitScreen(this.el.nativeElement);
|
|
57
|
+
}
|
|
58
|
+
if (this.layout?.bannerImageDisplay) {
|
|
59
|
+
Object.entries(BANNERALIGNMENT).forEach(([className, classValue]) => {
|
|
60
|
+
if (this.layout?.layoutAlignment.value === className) {
|
|
61
|
+
this.renderer.addClass(this.el.nativeElement, classValue);
|
|
62
|
+
if (this.layout.layoutAlignment.value == 'top' || this.layout.layoutAlignment.value == 'bottom') {
|
|
63
|
+
this.el.nativeElement.style.setProperty('text-align', "center");
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
Object.entries(BANNERHALIGN).forEach(([className, classValue]) => {
|
|
70
|
+
if (this.layout?.layoutAlignment.value === className) {
|
|
71
|
+
this.renderer.addClass(this.el.nativeElement, `flex-lg-row`);
|
|
72
|
+
classValue.split(" ").forEach(element => {
|
|
73
|
+
this.renderer.addClass(this.el.nativeElement, element);
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
applySpacing(this.el.nativeElement, this.layout?.spacing);
|
|
79
|
+
}
|
|
80
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BannerContentFitDirective, deps: [{ token: i0.ElementRef }, { token: i1.EventsService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
81
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BannerContentFitDirective, isStandalone: true, selector: "[simpoBannerLayout]", inputs: { layout: ["simpoBannerLayout", "layout"] }, usesOnChanges: true, ngImport: i0 }); }
|
|
82
|
+
}
|
|
83
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BannerContentFitDirective, decorators: [{
|
|
84
|
+
type: Directive,
|
|
85
|
+
args: [{
|
|
86
|
+
selector: '[simpoBannerLayout]',
|
|
87
|
+
standalone: true,
|
|
88
|
+
}]
|
|
89
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.EventsService }, { type: i0.Renderer2 }], propDecorators: { layout: [{
|
|
90
|
+
type: Input,
|
|
91
|
+
args: ['simpoBannerLayout']
|
|
92
|
+
}] } });
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLWNvbnRlbnQtZml0LWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2Jhbm5lci1jb250ZW50LWZpdC1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWdDLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxlQUFlLEVBQVUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7OztBQVE3RyxNQUFNLE9BQU8seUJBQXlCO0lBR3BDLFlBQW9CLEVBQWMsRUFDeEIsWUFBNEIsRUFDNUIsUUFBbUI7UUFGVCxPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ3hCLGlCQUFZLEdBQVosWUFBWSxDQUFnQjtRQUM1QixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3pCLElBQUksQ0FBQyxZQUFZLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUMvQyxDQUFDLEdBQU8sRUFBRSxFQUFFO1lBQ1YsSUFBRyxJQUFJLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFDLENBQUM7Z0JBQ2xDLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLEVBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRTtvQkFDakUsSUFBRyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssS0FBSyxTQUFTLEVBQUMsQ0FBQzt3QkFDaEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7d0JBQzFELElBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLElBQUksS0FBSyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsS0FBSyxJQUFJLFFB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Szt1QkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCwgUmVuZGVyZXIyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZpdENvbnRlbnQsIGZpdFNjcmVlbiwgYXBwbHlTcGFjaW5nLCBCQU5ORVJBTElHTk1FTlQsIEhBTElHTiwgQkFOTkVSSEFMSUdOIH0gZnJvbSAnLi4vc3R5bGVzL2luZGV4JztcclxuaW1wb3J0IHsgQmFubmVyTGF5T3V0TW9kZWwsIExheU91dE1vZGVsIH0gZnJvbSAnQHNpbXBvLXVpL3N0eWxlcy9zdHlsZS5tb2RlbCc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICdAc2ltcG8tdWkvc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2ltcG9CYW5uZXJMYXlvdXRdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQmFubmVyQ29udGVudEZpdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoJ3NpbXBvQmFubmVyTGF5b3V0JykgbGF5b3V0PzogQmFubmVyTGF5T3V0TW9kZWw7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZSA6IEV2ZW50c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcclxuICAgICAgdGhpcy5ldmVudFNlcnZpY2UuYWxpZ25tZW50Q2hhbmdlQ2hlY2tzLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOmFueSkgPT57XHJcbiAgICAgICAgICBpZih0aGlzLmxheW91dD8uYmFubmVySW1hZ2VEaXNwbGF5KXtcclxuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoQkFOTkVSQUxJR05NRU5UKS5mb3JFYWNoKChbY2xhc3NOYW1lLGNsYXNzVmFsdWVdKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYocmVzLmRhdGE/LmFsaWduID09PSBjbGFzc05hbWUpe1xyXG4gICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIGNsYXNzVmFsdWUpO1xyXG4gICAgICAgICAgICAgICAgaWYocmVzLmRhdGE/LmFsaWduID09ICd0b3AnIHx8IHJlcy5kYXRhPy5hbGlnbiA9PSAnYm90dG9tJyl7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgndGV4dC1hbGlnbicsXCJjZW50ZXJcIilcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgZWxzZXtcclxuICAgICAgICAgICAgT2JqZWN0LmVudHJpZXMoQkFOTkVSSEFMSUdOKS5mb3JFYWNoKChbY2xhc3NOYW1lLGNsYXNzVmFsdWVdKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYocmVzLmRhdGE/LmxheW91dEFsaWdubWVudD8udmFsdWUgPT09IGNsYXNzTmFtZSl7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCxgZmxleC1sZy1yb3dgKTtcclxuICAgICAgICAgICAgICAgIGNsYXNzVmFsdWUuc3BsaXQoXCIgXCIpLmZvckVhY2goZWxlbWVudCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbC5uYXRpdmVFbGVtZW50LCBlbGVtZW50KTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGFwcGx5U3BhY2luZyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsIHRoaXMubGF5b3V0Py5zcGFjaW5nKTtcclxuICAgICAgICB9XHJcbiAgICAgICk7XHJcblxyXG4gICAgICB0aGlzLmV2ZW50U2VydmljZS5zcGFjaW5nQ2hhbmdlQ2hlY2tzLnN1YnNjcmliZShcclxuICAgICAgICAocmVzOmFueSkgPT4ge1xyXG4gICAgICAgICBpZih0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgPT09IHJlcy50eXBlKXtcclxuICAgICAgICAgIGlmICh0aGlzLmxheW91dD8uZml0ID09PSAnY29udGVudCcpIHtcclxuICAgICAgICAgICAgZml0Q29udGVudCh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQpO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgZml0U2NyZWVuKHRoaXMuZWwubmF0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBhcHBseVNwYWNpbmcodGhpcy5lbC5uYXRpdmVFbGVtZW50LHJlcy5kYXRhLnNwYWNpbmcpXHJcbiAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwcHBseSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICB0aGlzLmFwcHBseSgpO1xyXG4gIH1cclxuXHJcbiAgYXBwcGx5KCkge1xyXG4gICAgaWYgKHRoaXMubGF5b3V0Py5maXQgPT09ICdjb250ZW50Jykge1xyXG4gICAgICBmaXRDb250ZW50KHRoaXMuZWwubmF0aXZlRWxlbWVudCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBmaXRTY3JlZW4odGhpcy5lbC5uYXRpdmVFbGVtZW50KTtcclxuICAgIH1cclxuICAgIFxyXG4gICAgaWYodGhpcy5sYXlvdXQ/LmJhbm5lckltYWdlRGlzcGxheSl7XHJcbiAgICAgIE9iamVjdC5lbnRyaWVzKEJBTk5FUkFMSUdOTUVOVCkuZm9yRWFjaCgoW2NsYXNzTmFtZSxjbGFzc1ZhbHVlXSkgPT4ge1xyXG4gICAgICAgIGlmKHRoaXMubGF5b3V0Py5sYXlvdXRBbGlnbm1lbnQudmFsdWUgPT09IGNsYXNzTmFtZSl7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgY2xhc3NWYWx1ZSk7XHJcbiAgICAgICAgICBpZih0aGlzLmxheW91dC5sYXlvdXRBbGlnbm1lbnQudmFsdWUgPT0gJ3RvcCcgfHwgdGhpcy5sYXlvdXQubGF5b3V0QWxpZ25tZW50LnZhbHVlID09ICdib3R0b20nKXtcclxuICAgICAgICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCd0ZXh0LWFsaWduJyxcImNlbnRlclwiKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgICBlbHNle1xyXG4gICAgICBPYmplY3QuZW50cmllcyhCQU5ORVJIQUxJR04pLmZvckVhY2goKFtjbGFzc05hbWUsY2xhc3NWYWx1ZV0pID0+IHtcclxuICAgICAgICBpZih0aGlzLmxheW91dD8ubGF5b3V0QWxpZ25tZW50LnZhbHVlID09PSBjbGFzc05hbWUpe1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsYGZsZXgtbGctcm93YCk7XHJcbiAgICAgICAgICBjbGFzc1ZhbHVlLnNwbGl0KFwiIFwiKS5mb3JFYWNoKGVsZW1lbnQgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgZWxlbWVudCk7XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICB9XHJcbiAgICBhcHBseVNwYWNpbmcodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB0aGlzLmxheW91dD8uc3BhY2luZyk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
4
|
+
export class BorderDirective {
|
|
5
|
+
constructor(el, eventService) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
this.eventService = eventService;
|
|
8
|
+
this.eventService.borderChangeChecks.subscribe((res) => {
|
|
9
|
+
if (this.el.nativeElement.id === res.id) {
|
|
10
|
+
if (res.data?.display) {
|
|
11
|
+
this.el.nativeElement.style.setProperty('border-bottom', res.data.thickness + 'px' +
|
|
12
|
+
' ' +
|
|
13
|
+
res.data.type +
|
|
14
|
+
' ' +
|
|
15
|
+
res.data.color);
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
this.el.nativeElement.style.setProperty('border-bottom', 'none');
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
ngOnChanges() {
|
|
24
|
+
if (this.borderData?.display) {
|
|
25
|
+
this.el.nativeElement.style.setProperty('border-bottom', this.borderData.thickness + 'px' +
|
|
26
|
+
' ' +
|
|
27
|
+
this.borderData.type +
|
|
28
|
+
' ' +
|
|
29
|
+
this.borderData.color);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BorderDirective, deps: [{ token: i0.ElementRef }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
33
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: BorderDirective, isStandalone: true, selector: "[simpoBorder]", inputs: { borderData: ["simpoBorder", "borderData"] }, usesOnChanges: true, ngImport: i0 }); }
|
|
34
|
+
}
|
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: BorderDirective, decorators: [{
|
|
36
|
+
type: Directive,
|
|
37
|
+
args: [{
|
|
38
|
+
selector: '[simpoBorder]',
|
|
39
|
+
standalone: true,
|
|
40
|
+
}]
|
|
41
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.EventsService }], propDecorators: { borderData: [{
|
|
42
|
+
type: Input,
|
|
43
|
+
args: ['simpoBorder']
|
|
44
|
+
}] } });
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm9yZGVyLWRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7OztBQVF4RSxNQUFNLE9BQU8sZUFBZTtJQUcxQixZQUNVLEVBQWMsRUFDZCxZQUE0QjtRQUQ1QixPQUFFLEdBQUYsRUFBRSxDQUFZO1FBQ2QsaUJBQVksR0FBWixZQUFZLENBQWdCO1FBRWxDLElBQUksQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUM1QyxDQUFDLEdBQU8sRUFBRSxFQUFFO1lBQ1YsSUFBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBQyxDQUFDO2dCQUN0QyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUM7b0JBQ3RCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGVBQWUsRUFDZixHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBQyxJQUFJO3dCQUNyQixHQUFHO3dCQUNILEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSTt3QkFDYixHQUFHO3dCQUNILEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUNqQixDQUFDO2dCQUNKLENBQUM7cUJBQ0csQ0FBQztvQkFDSCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUNyQyxlQUFlLEVBQ2YsTUFBTSxDQUNQLENBQUM7Z0JBQ0osQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQ0YsQ0FBQTtJQUNILENBQUM7SUFFSCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQ3JDLGVBQWUsRUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsR0FBQyxJQUFJO2dCQUM1QixHQUFHO2dCQUNILElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSTtnQkFDcEIsR0FBRztnQkFDSCxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FDeEIsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDOzhHQTFDVSxlQUFlO2tHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSjNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsyR0FFdUIsVUFBVTtzQkFBL0IsS0FBSzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICdAc2ltcG8tdWkvc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCb3JkZXJNb2RlbCB9IGZyb20gJ0BzaW1wby11aS9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2ltcG9Cb3JkZXJdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQm9yZGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoJ3NpbXBvQm9yZGVyJykgYm9yZGVyRGF0YT86IEJvcmRlck1vZGVsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZSA6IEV2ZW50c1NlcnZpY2VcclxuICAgICkge1xyXG4gICAgICB0aGlzLmV2ZW50U2VydmljZS5ib3JkZXJDaGFuZ2VDaGVja3Muc3Vic2NyaWJlKFxyXG4gICAgICAgIChyZXM6YW55KSA9PiB7XHJcbiAgICAgICAgICBpZih0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuaWQgPT09IHJlcy5pZCl7XHJcbiAgICAgICAgICAgIGlmIChyZXMuZGF0YT8uZGlzcGxheSkge1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAgICdib3JkZXItYm90dG9tJyxcclxuICAgICAgICAgICAgICAgIHJlcy5kYXRhLnRoaWNrbmVzcysncHgnICtcclxuICAgICAgICAgICAgICAgICAgJyAnICtcclxuICAgICAgICAgICAgICAgICAgcmVzLmRhdGEudHlwZSArXHJcbiAgICAgICAgICAgICAgICAgICcgJyArXHJcbiAgICAgICAgICAgICAgICAgIHJlcy5kYXRhLmNvbG9yXHJcbiAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNle1xyXG4gICAgICAgICAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAgICAgICAgICdib3JkZXItYm90dG9tJyxcclxuICAgICAgICAgICAgICAgICdub25lJ1xyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIClcclxuICAgIH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5ib3JkZXJEYXRhPy5kaXNwbGF5KSB7XHJcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcclxuICAgICAgICAnYm9yZGVyLWJvdHRvbScsXHJcbiAgICAgICAgdGhpcy5ib3JkZXJEYXRhLnRoaWNrbmVzcysncHgnICtcclxuICAgICAgICAgICcgJyArXHJcbiAgICAgICAgICB0aGlzLmJvcmRlckRhdGEudHlwZSArXHJcbiAgICAgICAgICAnICcgK1xyXG4gICAgICAgICAgdGhpcy5ib3JkZXJEYXRhLmNvbG9yXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { Directive, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@simpo-ui/services/events.service";
|
|
4
|
+
export class ButtonDirectiveDirective {
|
|
5
|
+
constructor(el, eventService) {
|
|
6
|
+
this.el = el;
|
|
7
|
+
this.eventService = eventService;
|
|
8
|
+
this.buttonStyleChangeCheck();
|
|
9
|
+
}
|
|
10
|
+
ngOnChanges() {
|
|
11
|
+
this.applyButtonStyleChanges();
|
|
12
|
+
}
|
|
13
|
+
ngOnDestroy() {
|
|
14
|
+
this.buttonStyleSubscription?.unsubscribe();
|
|
15
|
+
}
|
|
16
|
+
applyButtonStyleChanges() {
|
|
17
|
+
if (this.buttonStyle?.type) {
|
|
18
|
+
this.applyButtonType(this.buttonStyle, this.color ? this.color : '#ffffff');
|
|
19
|
+
}
|
|
20
|
+
if (this.buttonStyle?.shape) {
|
|
21
|
+
this.applyButtonShape(this.buttonStyle);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
applyButtonType(style, color) {
|
|
25
|
+
if (style?.type === 'Solid') {
|
|
26
|
+
this.el.nativeElement.style.setProperty('background', color);
|
|
27
|
+
this.el.nativeElement.style.setProperty('color', this.getTextColor(color));
|
|
28
|
+
this.el.nativeElement.style.setProperty('border', `2px solid ${color} `);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.el.nativeElement.style.setProperty('border', `2px solid ${color}`);
|
|
32
|
+
this.el.nativeElement.style.setProperty('background', 'transparent');
|
|
33
|
+
this.el.nativeElement.style.setProperty('color', color);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
applyButtonShape(style) {
|
|
37
|
+
if (style?.shape === 'Round') {
|
|
38
|
+
this.el.nativeElement.style.setProperty('border-radius', '5px');
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
this.el.nativeElement.style.setProperty('border-radius', '0px');
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
getTextColor(bgColor) {
|
|
45
|
+
if (bgColor) {
|
|
46
|
+
const threshold = 130; // Adjust this threshold as needed
|
|
47
|
+
const r = parseInt(bgColor.slice(1, 3), 16);
|
|
48
|
+
const g = parseInt(bgColor.slice(3, 5), 16);
|
|
49
|
+
const b = parseInt(bgColor.slice(5, 7), 16);
|
|
50
|
+
const brightness = (r * 299 + g * 587 + b * 114) / 1000;
|
|
51
|
+
return brightness > threshold ? '#000000' : '#ffffff';
|
|
52
|
+
}
|
|
53
|
+
return "#ffffff;";
|
|
54
|
+
}
|
|
55
|
+
buttonStyleChangeCheck() {
|
|
56
|
+
this.buttonStyleSubscription = this.eventService.buttonStyleChangeChecks.subscribe((res) => {
|
|
57
|
+
this.changeButtonStyle(res.id, res.buttonStyle, res.color);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
changeButtonStyle(id, style, bgColor) {
|
|
61
|
+
if (this.el.nativeElement.id === id) {
|
|
62
|
+
if (style?.type) {
|
|
63
|
+
this.applyButtonType(style, bgColor ? bgColor : '#ffffff');
|
|
64
|
+
}
|
|
65
|
+
if (style?.shape) {
|
|
66
|
+
this.applyButtonShape(style);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ButtonDirectiveDirective, deps: [{ token: i0.ElementRef }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
71
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.2.3", type: ButtonDirectiveDirective, isStandalone: true, selector: "[simpoButtonDirective]", inputs: { buttonStyle: "buttonStyle", color: "color" }, usesOnChanges: true, ngImport: i0 }); }
|
|
72
|
+
}
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ButtonDirectiveDirective, decorators: [{
|
|
74
|
+
type: Directive,
|
|
75
|
+
args: [{
|
|
76
|
+
selector: '[simpoButtonDirective]',
|
|
77
|
+
standalone: true
|
|
78
|
+
}]
|
|
79
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i1.EventsService }], propDecorators: { buttonStyle: [{
|
|
80
|
+
type: Input
|
|
81
|
+
}], color: [{
|
|
82
|
+
type: Input
|
|
83
|
+
}] } });
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7OztBQVV2RixNQUFNLE9BQU8sd0JBQXdCO0lBSW5DLFlBQW9CLEVBQWMsRUFDeEIsWUFBMkI7UUFEakIsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUN4QixpQkFBWSxHQUFaLFlBQVksQ0FBZTtRQUNqQyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQTtJQUMvQixDQUFDO0lBR0gsV0FBVztRQUNULElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLHVCQUF1QixFQUFFLFdBQVcsRUFBRSxDQUFBO0lBQzdDLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM5RSxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQzVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUMsQ0FBQztJQUNILENBQUM7SUFFRCxlQUFlLENBQUMsS0FBdUIsRUFBRSxLQUFhO1FBQ3BELElBQUksS0FBSyxFQUFFLElBQUksS0FBTSxPQUF1QixFQUFFLENBQUM7WUFDN0MsSUFB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QUFlLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM3RCxDQUFDO1lBQ0QsSUFBSSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7Z0JBQ2pCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMvQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBNUVVLHdCQUF3QjtrR0FBeEIsd0JBQXdCOzsyRkFBeEIsd0JBQXdCO2tCQUpwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjsyR0FFVSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJ0BzaW1wby11aS9zZXJ2aWNlcy9ldmVudHMuc2VydmljZSc7XG5pbXBvcnQgeyBCdXR0b25TdHlsZU1vZGVsIH0gZnJvbSAnQHNpbXBvLXVpL3N0eWxlcy9zdHlsZS5tb2RlbCc7XG5pbXBvcnQgeyBCVVRUT05fU0hBUEUsIEJVVFRPTl9UWVBFIH0gZnJvbSAnQHNpbXBvLXVpL3N0eWxlcy90eXBlcyc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NpbXBvQnV0dG9uRGlyZWN0aXZlXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uRGlyZWN0aXZlRGlyZWN0aXZlIGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgYnV0dG9uU3R5bGU/OiBCdXR0b25TdHlsZU1vZGVsO1xuICBASW5wdXQoKSBjb2xvcj86IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgZXZlbnRTZXJ2aWNlOiBFdmVudHNTZXJ2aWNlKSB7XG4gICAgICB0aGlzLmJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2soKVxuICAgIH1cblxuXG4gIG5nT25DaGFuZ2VzKCkge1xuICAgIHRoaXMuYXBwbHlCdXR0b25TdHlsZUNoYW5nZXMoKTtcbiAgfVxuXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuYnV0dG9uU3R5bGVTdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKClcbiAgfVxuXG4gIGFwcGx5QnV0dG9uU3R5bGVDaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLmJ1dHRvblN0eWxlPy50eXBlKSB7XG4gICAgICB0aGlzLmFwcGx5QnV0dG9uVHlwZSh0aGlzLmJ1dHRvblN0eWxlLCB0aGlzLmNvbG9yID8gdGhpcy5jb2xvciA6ICcjZmZmZmZmJyk7XG4gICAgfVxuICAgIGlmICh0aGlzLmJ1dHRvblN0eWxlPy5zaGFwZSkge1xuICAgICAgdGhpcy5hcHBseUJ1dHRvblNoYXBlKHRoaXMuYnV0dG9uU3R5bGUpO1xuICAgIH1cbiAgfVxuXG4gIGFwcGx5QnV0dG9uVHlwZShzdHlsZTogQnV0dG9uU3R5bGVNb2RlbCwgY29sb3I6IHN0cmluZykge1xuICAgIGlmIChzdHlsZT8udHlwZSA9PT0gKCdTb2xpZCcgYXMgQlVUVE9OX1RZUEUpKSB7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCBjb2xvcik7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2NvbG9yJywgdGhpcy5nZXRUZXh0Q29sb3IoY29sb3IpKTtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyJywgYDJweCBzb2xpZCAke2NvbG9yfSBgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXInLCBgMnB4IHNvbGlkICR7Y29sb3J9YCk7XG4gICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoJ2JhY2tncm91bmQnLCAndHJhbnNwYXJlbnQnKTtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnY29sb3InLCBjb2xvcik7XG4gICAgfVxuICB9XG5cbiAgYXBwbHlCdXR0b25TaGFwZShzdHlsZTogQnV0dG9uU3R5bGVNb2RlbCkge1xuICAgIGlmIChzdHlsZT8uc2hhcGUgPT09ICgnUm91bmQnIGFzIEJVVFRPTl9TSEFQRSkpIHtcbiAgICAgIHRoaXMuZWwubmF0aXZlRWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eSgnYm9yZGVyLXJhZGl1cycsICc1cHgnKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lbC5uYXRpdmVFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCdib3JkZXItcmFkaXVzJywgJzBweCcpO1xuICAgIH1cbiAgfVxuXG4gIGdldFRleHRDb2xvcihiZ0NvbG9yOiBzdHJpbmcpIHtcbiAgICBpZiAoYmdDb2xvcikge1xuICAgICAgY29uc3QgdGhyZXNob2xkID0gMTMwOyAvLyBBZGp1c3QgdGhpcyB0aHJlc2hvbGQgYXMgbmVlZGVkXG4gICAgICBjb25zdCByID0gcGFyc2VJbnQoYmdDb2xvci5zbGljZSgxLCAzKSwgMTYpO1xuICAgICAgY29uc3QgZyA9IHBhcnNlSW50KGJnQ29sb3Iuc2xpY2UoMywgNSksIDE2KTtcbiAgICAgIGNvbnN0IGIgPSBwYXJzZUludChiZ0NvbG9yLnNsaWNlKDUsIDcpLCAxNik7XG4gICAgICBjb25zdCBicmlnaHRuZXNzID0gKHIgKiAyOTkgKyBnICogNTg3ICsgYiAqIDExNCkgLyAxMDAwO1xuXG4gICAgICByZXR1cm4gYnJpZ2h0bmVzcyA+IHRocmVzaG9sZCA/ICcjMDAwMDAwJyA6ICcjZmZmZmZmJztcbiAgICB9XG4gICAgcmV0dXJuIFwiI2ZmZmZmZjtcIlxuICB9XG5cbiAgYnV0dG9uU3R5bGVTdWJzY3JpcHRpb24/OiBTdWJzY3JpcHRpb247XG4gIGJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2soKSB7XG4gICAgdGhpcy5idXR0b25TdHlsZVN1YnNjcmlwdGlvbiA9IHRoaXMuZXZlbnRTZXJ2aWNlLmJ1dHRvblN0eWxlQ2hhbmdlQ2hlY2tzLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcbiAgICAgIHRoaXMuY2hhbmdlQnV0dG9uU3R5bGUocmVzLmlkLCByZXMuYnV0dG9uU3R5bGUsIHJlcy5jb2xvcik7XG4gICAgfSlcbiAgfVxuXG4gIGNoYW5nZUJ1dHRvblN0eWxlKGlkOiBhbnksIHN0eWxlOiBCdXR0b25TdHlsZU1vZGVsLCBiZ0NvbG9yOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmlkID09PSBpZCkge1xuICAgICAgaWYgKHN0eWxlPy50eXBlKSB7XG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b25UeXBlKHN0eWxlLCBiZ0NvbG9yID8gYmdDb2xvciA6ICcjZmZmZmZmJyk7XG4gICAgICB9XG4gICAgICBpZiAoc3R5bGU/LnNoYXBlKSB7XG4gICAgICAgIHRoaXMuYXBwbHlCdXR0b25TaGFwZShzdHlsZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXX0=
|