simpo-component-library 3.5.45 → 3.5.52
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 -24
- package/esm2022/lib/components/delete-hover-element/delete-hover-element.component.mjs +5 -5
- package/esm2022/lib/components/document/document.component.mjs +5 -5
- package/esm2022/lib/components/hover-elements/hover-elements.component.mjs +4 -4
- package/esm2022/lib/components/image-loading/image-loading.component.mjs +5 -5
- package/esm2022/lib/components/index.mjs +5 -5
- package/esm2022/lib/components/input-fields/input-fields.component.mjs +4 -4
- package/esm2022/lib/components/payment-details/payment-details.component.mjs +103 -18
- package/esm2022/lib/components/trasport-availability/trasport-availability.component.mjs +36 -0
- package/esm2022/lib/constants/business.constant.mjs +1 -1
- package/esm2022/lib/directive/animation-directive.mjs +4 -4
- package/esm2022/lib/directive/background-directive.mjs +4 -4
- package/esm2022/lib/directive/banner-content-fit-directive.mjs +4 -4
- package/esm2022/lib/directive/blur-content.directive.mjs +4 -4
- package/esm2022/lib/directive/border-directive.mjs +4 -4
- package/esm2022/lib/directive/borderlessImage.directive.mjs +4 -4
- package/esm2022/lib/directive/button-directive.directive.mjs +4 -4
- package/esm2022/lib/directive/button-editor.directive.mjs +4 -4
- package/esm2022/lib/directive/color.directive.mjs +4 -4
- package/esm2022/lib/directive/column-directive.directive.mjs +4 -4
- package/esm2022/lib/directive/container-alignment.directive.mjs +4 -4
- package/esm2022/lib/directive/container-fir.directive.mjs +4 -4
- package/esm2022/lib/directive/content-alignment-directive.mjs +4 -4
- package/esm2022/lib/directive/content-fit-directive.mjs +4 -4
- package/esm2022/lib/directive/content-title-spacing.directive.mjs +4 -4
- package/esm2022/lib/directive/contenteditable.directive.mjs +4 -4
- package/esm2022/lib/directive/corner-directive.mjs +4 -4
- package/esm2022/lib/directive/footer-layout-directive.mjs +4 -4
- package/esm2022/lib/directive/hover-element-directive.mjs +4 -4
- package/esm2022/lib/directive/hoverborder.directive.mjs +4 -4
- package/esm2022/lib/directive/image-container.directive.mjs +4 -4
- package/esm2022/lib/directive/image-directive.directive.mjs +4 -4
- package/esm2022/lib/directive/image-editor.directive.mjs +4 -4
- package/esm2022/lib/directive/image-position.directive.mjs +4 -4
- package/esm2022/lib/directive/overlay-directive.mjs +4 -4
- package/esm2022/lib/directive/position-layout-directive.directive.mjs +4 -4
- package/esm2022/lib/directive/removeCarousel-directive.mjs +4 -4
- package/esm2022/lib/directive/spacing-around.directive.mjs +4 -4
- package/esm2022/lib/directive/spacing-horizontal.directive.mjs +4 -4
- package/esm2022/lib/directive/sticky-directive.mjs +4 -4
- package/esm2022/lib/directive/text-background-directive.directive.mjs +4 -4
- package/esm2022/lib/directive/text-size.directive.mjs +4 -4
- package/esm2022/lib/directive/wrap-containers.directive.mjs +4 -4
- package/esm2022/lib/ecommerce/sections/address/address.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/authenticate-user/authenticate-user.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/authentication-required/authentication-required.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +5 -7
- package/esm2022/lib/ecommerce/sections/cart/cart.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/category-product/category-product.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/category-product/category-product.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/checkout/checkout.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/checkout/checkout.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/customer-review/customer-review.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/featured-category/featured-category.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/featured-category/featured-category.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/featured-category/featured-collection.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/featured-products/featured-products.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/featured-products/featured-products.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/item-varient/item-varient.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/order-details/order-details.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/pagnination/pagnination.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/product-category-list/product-category-list.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +10 -11
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +6 -6
- package/esm2022/lib/ecommerce/sections/product-list/product-list.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/small-product-listing/small-product-listing.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/user-basic-info/user-basic-info.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/user-profile/user-profile.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.component.mjs +5 -5
- package/esm2022/lib/ecommerce/sections/verify-payment/verify-payment.model.mjs +1 -1
- package/esm2022/lib/ecommerce/sections/whislist/whislist.component.mjs +5 -5
- package/esm2022/lib/ecommerce/styles/BaseCollection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/Collection.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/OrderedItems.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocation.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/PincodeLocationInter.model.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/cart.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/category.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/order.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/product.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/review.modal.mjs +1 -1
- package/esm2022/lib/ecommerce/styles/user.modal.mjs +1 -1
- package/esm2022/lib/elements/add-section/add-section.component.mjs +5 -5
- package/esm2022/lib/elements/below-image-card/below-image-card.component.mjs +5 -5
- package/esm2022/lib/elements/button/button.component.mjs +5 -5
- package/esm2022/lib/elements/button/button.model.mjs +1 -1
- package/esm2022/lib/elements/card-skeleton-loader/card-skeleton-loader.component.mjs +5 -5
- package/esm2022/lib/elements/covering-image-card/covering-image-card.component.mjs +5 -5
- package/esm2022/lib/elements/editor-service.service.mjs +18 -6
- package/esm2022/lib/elements/heading-element/heading-element.component.mjs +5 -5
- package/esm2022/lib/elements/image-editor/image-editor.component.mjs +5 -5
- package/esm2022/lib/elements/index.mjs +5 -5
- package/esm2022/lib/elements/link-editor/link-editor.component.mjs +5 -5
- package/esm2022/lib/elements/media-selector/media-selector.component.mjs +5 -5
- package/esm2022/lib/elements/navbar-button-element/navbar-button-element.component.mjs +4 -4
- package/esm2022/lib/elements/portfolio/portfolio.component.mjs +5 -5
- package/esm2022/lib/elements/property/property.component.mjs +5 -5
- package/esm2022/lib/elements/simpo-button/simpo-button.component.mjs +5 -5
- package/esm2022/lib/elements/socia-icons/socia-icons.component.mjs +4 -4
- package/esm2022/lib/elements/svg-divider/svg-divider.component.mjs +5 -5
- package/esm2022/lib/elements/text/text.component.mjs +5 -5
- package/esm2022/lib/elements/text-editor/text-editor.component.mjs +5 -5
- package/esm2022/lib/elements/top-of-image-card/top-of-image-card.component.mjs +5 -9
- package/esm2022/lib/pipes/amount.pipe.mjs +4 -4
- package/esm2022/lib/pipes/gender.pipe.mjs +4 -4
- package/esm2022/lib/sections/BaseSection.mjs +1 -1
- package/esm2022/lib/sections/add-new-section/add-new-section.component.mjs +5 -5
- package/esm2022/lib/sections/appointment-form/appointment-form.component.mjs +5 -5
- package/esm2022/lib/sections/appointment-form/appointment-form.model.mjs +1 -1
- package/esm2022/lib/sections/banner-carousel/banner-carousel.component.mjs +5 -5
- package/esm2022/lib/sections/banner-carousel/banner-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/banner-grid-section/banner-grid-section.component.mjs +5 -5
- package/esm2022/lib/sections/banner-section/banner-section.component.mjs +4 -4
- package/esm2022/lib/sections/blog-list/blog-list.component.mjs +6 -6
- package/esm2022/lib/sections/blog-list/blog-list.model.mjs +1 -1
- package/esm2022/lib/sections/carousel-banner/carousel-banner.component.mjs +4 -4
- package/esm2022/lib/sections/choose-us-section/choose-us-section.component.mjs +5 -5
- package/esm2022/lib/sections/choose-us-section/choose-us-section.model.mjs +1 -1
- package/esm2022/lib/sections/contact-us/contact-us.component.mjs +4 -4
- package/esm2022/lib/sections/faq-section/faq-section.component.mjs +5 -5
- package/esm2022/lib/sections/faq-section/faq-section.modal.mjs +1 -1
- package/esm2022/lib/sections/features-section/features-section.component.mjs +5 -5
- package/esm2022/lib/sections/features-section/features-section.model.mjs +1 -1
- package/esm2022/lib/sections/footer/footer.component.mjs +5 -5
- package/esm2022/lib/sections/footer/footer.modal.mjs +1 -1
- package/esm2022/lib/sections/footer-section/footer-section.component.mjs +4 -4
- package/esm2022/lib/sections/header-section/header-section.component.mjs +6 -8
- package/esm2022/lib/sections/header-section/header-section.model.mjs +1 -1
- package/esm2022/lib/sections/header-text/header-text.component.mjs +5 -5
- package/esm2022/lib/sections/header-text/header-text.model.mjs +1 -1
- package/esm2022/lib/sections/image-carousel-section/image-carousel-section.component.mjs +5 -5
- package/esm2022/lib/sections/image-carousel-section/image-carousel.model.mjs +1 -1
- package/esm2022/lib/sections/image-grid-section/image-grid-section.component.mjs +5 -5
- package/esm2022/lib/sections/image-grid-section/image-grid-section.model.mjs +1 -1
- package/esm2022/lib/sections/image-section/image-section.component.mjs +5 -5
- package/esm2022/lib/sections/image-section/image-section.model.mjs +1 -1
- package/esm2022/lib/sections/location-section/location-section.component.mjs +5 -5
- package/esm2022/lib/sections/location-section/location-section.modal.mjs +1 -1
- package/esm2022/lib/sections/logo-gallery/logo-gallery.component.mjs +4 -4
- package/esm2022/lib/sections/logo-showcase/logo-showcase.component.mjs +5 -5
- package/esm2022/lib/sections/logo-showcase/logo-showcase.modal.mjs +1 -1
- package/esm2022/lib/sections/navbar-section/navbar-section.component.mjs +4 -4
- package/esm2022/lib/sections/new-services/new-services.component.mjs +5 -5
- package/esm2022/lib/sections/new-services/new-services.model.mjs +1 -1
- package/esm2022/lib/sections/new-testimonials/new-testimonials.component.mjs +5 -5
- package/esm2022/lib/sections/new-testimonials/new-testimonials.model.mjs +1 -1
- package/esm2022/lib/sections/pricing-section/pricing-section.component.mjs +5 -5
- package/esm2022/lib/sections/pricing-section/pricing-section.modal.mjs +1 -1
- package/esm2022/lib/sections/process-modern/process-modern.component.mjs +5 -5
- package/esm2022/lib/sections/process-modern/process-modern.model.mjs +1 -1
- package/esm2022/lib/sections/process-section/process-section.component.mjs +5 -5
- package/esm2022/lib/sections/process-section/process-section.modal.mjs +1 -1
- package/esm2022/lib/sections/property-component/property-component.component.mjs +5 -5
- package/esm2022/lib/sections/property-component/property-component.modal.mjs +1 -1
- package/esm2022/lib/sections/property-list/property-list.component.mjs +5 -5
- package/esm2022/lib/sections/property-list/property-list.modal.mjs +1 -1
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.component.mjs +5 -5
- package/esm2022/lib/sections/recent-blog-post-section/recent-blog-post-section.model.mjs +1 -1
- package/esm2022/lib/sections/registration-form/registration-form.component.mjs +21 -6
- package/esm2022/lib/sections/registration-form/registrationForm.model.mjs +1 -1
- package/esm2022/lib/sections/service-section/service-section.component.mjs +5 -5
- package/esm2022/lib/sections/service-section/service-section.model.mjs +1 -1
- package/esm2022/lib/sections/skeleton-loader-section/skeleton-loader-section.component.mjs +5 -5
- package/esm2022/lib/sections/team-member-section/team-member-section.component.mjs +5 -5
- package/esm2022/lib/sections/team-member-section/team-member-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.component.mjs +5 -5
- package/esm2022/lib/sections/testimonial-fullwidth/testimonial-fullwidth.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-section/testimonial-section.component.mjs +5 -5
- package/esm2022/lib/sections/testimonial-section/testimonial-section.model.mjs +1 -1
- package/esm2022/lib/sections/testimonial-video/testimonial-video.component.mjs +5 -5
- package/esm2022/lib/sections/testimonial-video/testimonial-video.model.mjs +1 -1
- package/esm2022/lib/sections/text-image-section/text-image-section.component.mjs +4 -4
- package/esm2022/lib/sections/text-section/text-section.component.mjs +4 -4
- package/esm2022/lib/sections/text-section/text-section.model.mjs +1 -1
- package/esm2022/lib/sections/usp-video-section/usp-video-section.component.mjs +5 -5
- package/esm2022/lib/sections/usp-video-section/usp-video-section.model.mjs +1 -1
- package/esm2022/lib/sections/video-section/video-section.component.mjs +5 -5
- package/esm2022/lib/sections/video-section/video-section.model.mjs +1 -1
- package/esm2022/lib/sections/view-blog/view-blog.component.mjs +5 -5
- package/esm2022/lib/services/cart.service.mjs +4 -4
- package/esm2022/lib/services/endUser.service.mjs +4 -4
- package/esm2022/lib/services/events.service.mjs +4 -5
- package/esm2022/lib/services/image-upload-service.service.mjs +4 -4
- package/esm2022/lib/services/rest.service.mjs +4 -4
- package/esm2022/lib/services/sanitizeHtml.mjs +4 -4
- package/esm2022/lib/services/storage.service.mjs +4 -4
- package/esm2022/lib/styles/index.mjs +1 -7
- package/esm2022/lib/styles/style.model.mjs +1 -1
- package/esm2022/lib/styles/types.mjs +1 -1
- package/esm2022/lib/tokens/api-token.mjs +1 -1
- package/esm2022/public-api.mjs +2 -3
- package/fesm2022/simpo-component-library.mjs +692 -792
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/components/input-fields/input-fields.component.d.ts +1 -1
- package/lib/components/payment-details/payment-details.component.d.ts +6 -0
- package/lib/components/trasport-availability/trasport-availability.component.d.ts +14 -0
- package/lib/ecommerce/sections/authentication-required/authentication-required.component.d.ts +1 -1
- package/lib/elements/editor-service.service.d.ts +5 -1
- package/lib/elements/top-of-image-card/top-of-image-card.component.d.ts +0 -3
- package/lib/sections/banner-carousel/banner-carousel.component.d.ts +3 -3
- package/lib/sections/carousel-banner/carousel-banner.component.d.ts +1 -1
- package/lib/sections/header-section/header-section.component.d.ts +0 -2
- package/lib/sections/header-section/header-section.model.d.ts +2 -10
- package/lib/sections/image-section/image-section.component.d.ts +2 -2
- package/lib/sections/logo-showcase/logo-showcase.component.d.ts +1 -1
- package/lib/sections/service-section/service-section.model.d.ts +1 -3
- package/lib/services/events.service.d.ts +0 -1
- package/lib/styles/index.d.ts +0 -5
- package/lib/styles/style.model.d.ts +1 -5
- package/lib/styles/types.d.ts +0 -1
- package/package.json +1 -1
- package/public-api.d.ts +0 -2
- package/simpo-component-library-3.5.52.tgz +0 -0
- package/src/lib/styles/global-styles.css +191 -191
- package/esm2022/lib/directive/hover-animation.directive.mjs +0 -133
- package/esm2022/lib/sections/moving-text/moving-text.component.mjs +0 -110
- package/esm2022/lib/sections/moving-text/moving-text.modal.mjs +0 -2
- package/lib/directive/hover-animation.directive.d.ts +0 -19
- package/lib/sections/moving-text/moving-text.component.d.ts +0 -26
- package/lib/sections/moving-text/moving-text.modal.d.ts +0 -19
- package/simpo-component-library-3.5.45.tgz +0 -0
@@ -1,192 +1,192 @@
|
|
1
|
-
:root {
|
2
|
-
--primary-font-family: 'mulish';
|
3
|
-
--primary-bg-color: linear-gradient(345deg, #230860 0%, #00b6ff 100%);
|
4
|
-
--primary-color: white;
|
5
|
-
}
|
6
|
-
|
7
|
-
.add-section {
|
8
|
-
position: absolute !important;
|
9
|
-
width: 40%;
|
10
|
-
top: 0;
|
11
|
-
left: 0 !important;
|
12
|
-
height: 100vh;
|
13
|
-
background-color: transparent !important;
|
14
|
-
box-shadow: none !important;
|
15
|
-
animation: slideInLeft 0.5s ease-in-out forwards;
|
16
|
-
}
|
17
|
-
|
18
|
-
.add-section.closing {
|
19
|
-
animation: slideOutLeft 0.5 s ease-in-out forwards;
|
20
|
-
}
|
21
|
-
|
22
|
-
@keyframes slideInLeft {
|
23
|
-
from {
|
24
|
-
transform: translateX(-100%);
|
25
|
-
opacity: 0;
|
26
|
-
}
|
27
|
-
|
28
|
-
to {
|
29
|
-
transform: translateX(0);
|
30
|
-
opacity: 1;
|
31
|
-
}
|
32
|
-
}
|
33
|
-
|
34
|
-
@keyframes slideOutLeft {
|
35
|
-
from {
|
36
|
-
transform: translateX(0);
|
37
|
-
opacity: 1;
|
38
|
-
}
|
39
|
-
|
40
|
-
to {
|
41
|
-
transform: translateX(-100%);
|
42
|
-
/* Close to the left side */
|
43
|
-
opacity: 0;
|
44
|
-
}
|
45
|
-
}
|
46
|
-
|
47
|
-
|
48
|
-
@media screen and (min-width: 1280px) {
|
49
|
-
.content-side {
|
50
|
-
h1 {
|
51
|
-
font-size: 72px !important;
|
52
|
-
line-height: 80px !important;
|
53
|
-
}
|
54
|
-
|
55
|
-
h2 {
|
56
|
-
font-size: 48px !important;
|
57
|
-
line-height: 56px !important;
|
58
|
-
}
|
59
|
-
|
60
|
-
h3 {
|
61
|
-
font-size: 32px !important;
|
62
|
-
line-height: 40px !important;
|
63
|
-
}
|
64
|
-
|
65
|
-
h4 {
|
66
|
-
font-size: 24px !important;
|
67
|
-
line-height: 36px !important;
|
68
|
-
}
|
69
|
-
|
70
|
-
h5 {
|
71
|
-
font-size: 18px !important;
|
72
|
-
line-height: 28px !important;
|
73
|
-
}
|
74
|
-
|
75
|
-
p {
|
76
|
-
font-size: 16px !important;
|
77
|
-
line-height: 21px !important;
|
78
|
-
}
|
79
|
-
}
|
80
|
-
|
81
|
-
}
|
82
|
-
|
83
|
-
@media screen and (min-width: 768px) {
|
84
|
-
.content-side {
|
85
|
-
h1 {
|
86
|
-
font-size: 46px;
|
87
|
-
line-height: 54px;
|
88
|
-
}
|
89
|
-
|
90
|
-
h2 {
|
91
|
-
font-size: 35px;
|
92
|
-
line-height: 42px;
|
93
|
-
}
|
94
|
-
|
95
|
-
h3 {
|
96
|
-
font-size: 28px;
|
97
|
-
line-height: 36px;
|
98
|
-
}
|
99
|
-
|
100
|
-
h4 {
|
101
|
-
font-size: 18px;
|
102
|
-
line-height: 26px;
|
103
|
-
}
|
104
|
-
|
105
|
-
h5 {
|
106
|
-
font-size: 16px;
|
107
|
-
line-height: 24px;
|
108
|
-
}
|
109
|
-
|
110
|
-
p {
|
111
|
-
font-size: 14px;
|
112
|
-
line-height: 21px;
|
113
|
-
}
|
114
|
-
}
|
115
|
-
|
116
|
-
}
|
117
|
-
|
118
|
-
.content-side {
|
119
|
-
h1 {
|
120
|
-
font-size: 36px;
|
121
|
-
line-height: 42px;
|
122
|
-
}
|
123
|
-
|
124
|
-
h2 {
|
125
|
-
font-size: 30px;
|
126
|
-
line-height: 36px;
|
127
|
-
}
|
128
|
-
|
129
|
-
h3 {
|
130
|
-
font-size: 24px;
|
131
|
-
line-height: 32px;
|
132
|
-
}
|
133
|
-
|
134
|
-
h4 {
|
135
|
-
font-size: 18px;
|
136
|
-
line-height: 26px;
|
137
|
-
}
|
138
|
-
|
139
|
-
h5 {
|
140
|
-
font-size: 16px;
|
141
|
-
line-height: 24px;
|
142
|
-
}
|
143
|
-
|
144
|
-
p {
|
145
|
-
font-size: 14px;
|
146
|
-
line-height: 21px;
|
147
|
-
}
|
148
|
-
}
|
149
|
-
|
150
|
-
.link-editor {
|
151
|
-
height: 100vh;
|
152
|
-
width: 28vw;
|
153
|
-
position: absolute !important;
|
154
|
-
top: 0;
|
155
|
-
left: 0 !important;
|
156
|
-
animation: slideInLeft 0.5s ease-in-out forwards;
|
157
|
-
}
|
158
|
-
|
159
|
-
@media screen and (max-width : 475px) {
|
160
|
-
.link-editor {
|
161
|
-
width: 100% !important;
|
162
|
-
}
|
163
|
-
|
164
|
-
.link-editor {
|
165
|
-
width: 100% !important;
|
166
|
-
max-width: 100% !important;
|
167
|
-
}
|
168
|
-
|
169
|
-
.media-selector {
|
170
|
-
width: 100% !important;
|
171
|
-
max-width: 100% !important;
|
172
|
-
}
|
173
|
-
|
174
|
-
.add-section{
|
175
|
-
width: 100% !important;
|
176
|
-
max-width: 100% !important;
|
177
|
-
}
|
178
|
-
|
179
|
-
}
|
180
|
-
|
181
|
-
.mat-mdc-form-field-subscript-wrapper {
|
182
|
-
display: none;
|
183
|
-
}
|
184
|
-
|
185
|
-
.media-selector {
|
186
|
-
position: absolute !important;
|
187
|
-
top: 0 !important;
|
188
|
-
left: 0 !important;
|
189
|
-
width: 60%;
|
190
|
-
height: 100vh;
|
191
|
-
animation: slideInLeft 0.5s ease-in-out forwards;
|
1
|
+
:root {
|
2
|
+
--primary-font-family: 'mulish';
|
3
|
+
--primary-bg-color: linear-gradient(345deg, #230860 0%, #00b6ff 100%);
|
4
|
+
--primary-color: white;
|
5
|
+
}
|
6
|
+
|
7
|
+
.add-section {
|
8
|
+
position: absolute !important;
|
9
|
+
width: 40%;
|
10
|
+
top: 0;
|
11
|
+
left: 0 !important;
|
12
|
+
height: 100vh;
|
13
|
+
background-color: transparent !important;
|
14
|
+
box-shadow: none !important;
|
15
|
+
animation: slideInLeft 0.5s ease-in-out forwards;
|
16
|
+
}
|
17
|
+
|
18
|
+
.add-section.closing {
|
19
|
+
animation: slideOutLeft 0.5 s ease-in-out forwards;
|
20
|
+
}
|
21
|
+
|
22
|
+
@keyframes slideInLeft {
|
23
|
+
from {
|
24
|
+
transform: translateX(-100%);
|
25
|
+
opacity: 0;
|
26
|
+
}
|
27
|
+
|
28
|
+
to {
|
29
|
+
transform: translateX(0);
|
30
|
+
opacity: 1;
|
31
|
+
}
|
32
|
+
}
|
33
|
+
|
34
|
+
@keyframes slideOutLeft {
|
35
|
+
from {
|
36
|
+
transform: translateX(0);
|
37
|
+
opacity: 1;
|
38
|
+
}
|
39
|
+
|
40
|
+
to {
|
41
|
+
transform: translateX(-100%);
|
42
|
+
/* Close to the left side */
|
43
|
+
opacity: 0;
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
47
|
+
|
48
|
+
@media screen and (min-width: 1280px) {
|
49
|
+
.content-side {
|
50
|
+
h1 {
|
51
|
+
font-size: 72px !important;
|
52
|
+
line-height: 80px !important;
|
53
|
+
}
|
54
|
+
|
55
|
+
h2 {
|
56
|
+
font-size: 48px !important;
|
57
|
+
line-height: 56px !important;
|
58
|
+
}
|
59
|
+
|
60
|
+
h3 {
|
61
|
+
font-size: 32px !important;
|
62
|
+
line-height: 40px !important;
|
63
|
+
}
|
64
|
+
|
65
|
+
h4 {
|
66
|
+
font-size: 24px !important;
|
67
|
+
line-height: 36px !important;
|
68
|
+
}
|
69
|
+
|
70
|
+
h5 {
|
71
|
+
font-size: 18px !important;
|
72
|
+
line-height: 28px !important;
|
73
|
+
}
|
74
|
+
|
75
|
+
p {
|
76
|
+
font-size: 16px !important;
|
77
|
+
line-height: 21px !important;
|
78
|
+
}
|
79
|
+
}
|
80
|
+
|
81
|
+
}
|
82
|
+
|
83
|
+
@media screen and (min-width: 768px) {
|
84
|
+
.content-side {
|
85
|
+
h1 {
|
86
|
+
font-size: 46px;
|
87
|
+
line-height: 54px;
|
88
|
+
}
|
89
|
+
|
90
|
+
h2 {
|
91
|
+
font-size: 35px;
|
92
|
+
line-height: 42px;
|
93
|
+
}
|
94
|
+
|
95
|
+
h3 {
|
96
|
+
font-size: 28px;
|
97
|
+
line-height: 36px;
|
98
|
+
}
|
99
|
+
|
100
|
+
h4 {
|
101
|
+
font-size: 18px;
|
102
|
+
line-height: 26px;
|
103
|
+
}
|
104
|
+
|
105
|
+
h5 {
|
106
|
+
font-size: 16px;
|
107
|
+
line-height: 24px;
|
108
|
+
}
|
109
|
+
|
110
|
+
p {
|
111
|
+
font-size: 14px;
|
112
|
+
line-height: 21px;
|
113
|
+
}
|
114
|
+
}
|
115
|
+
|
116
|
+
}
|
117
|
+
|
118
|
+
.content-side {
|
119
|
+
h1 {
|
120
|
+
font-size: 36px;
|
121
|
+
line-height: 42px;
|
122
|
+
}
|
123
|
+
|
124
|
+
h2 {
|
125
|
+
font-size: 30px;
|
126
|
+
line-height: 36px;
|
127
|
+
}
|
128
|
+
|
129
|
+
h3 {
|
130
|
+
font-size: 24px;
|
131
|
+
line-height: 32px;
|
132
|
+
}
|
133
|
+
|
134
|
+
h4 {
|
135
|
+
font-size: 18px;
|
136
|
+
line-height: 26px;
|
137
|
+
}
|
138
|
+
|
139
|
+
h5 {
|
140
|
+
font-size: 16px;
|
141
|
+
line-height: 24px;
|
142
|
+
}
|
143
|
+
|
144
|
+
p {
|
145
|
+
font-size: 14px;
|
146
|
+
line-height: 21px;
|
147
|
+
}
|
148
|
+
}
|
149
|
+
|
150
|
+
.link-editor {
|
151
|
+
height: 100vh;
|
152
|
+
width: 28vw;
|
153
|
+
position: absolute !important;
|
154
|
+
top: 0;
|
155
|
+
left: 0 !important;
|
156
|
+
animation: slideInLeft 0.5s ease-in-out forwards;
|
157
|
+
}
|
158
|
+
|
159
|
+
@media screen and (max-width : 475px) {
|
160
|
+
.link-editor {
|
161
|
+
width: 100% !important;
|
162
|
+
}
|
163
|
+
|
164
|
+
.link-editor {
|
165
|
+
width: 100% !important;
|
166
|
+
max-width: 100% !important;
|
167
|
+
}
|
168
|
+
|
169
|
+
.media-selector {
|
170
|
+
width: 100% !important;
|
171
|
+
max-width: 100% !important;
|
172
|
+
}
|
173
|
+
|
174
|
+
.add-section{
|
175
|
+
width: 100% !important;
|
176
|
+
max-width: 100% !important;
|
177
|
+
}
|
178
|
+
|
179
|
+
}
|
180
|
+
|
181
|
+
.mat-mdc-form-field-subscript-wrapper {
|
182
|
+
display: none;
|
183
|
+
}
|
184
|
+
|
185
|
+
.media-selector {
|
186
|
+
position: absolute !important;
|
187
|
+
top: 0 !important;
|
188
|
+
left: 0 !important;
|
189
|
+
width: 60%;
|
190
|
+
height: 100vh;
|
191
|
+
animation: slideInLeft 0.5s ease-in-out forwards;
|
192
192
|
}
|
@@ -1,133 +0,0 @@
|
|
1
|
-
import { Directive, Input } from '@angular/core';
|
2
|
-
import * as i0 from "@angular/core";
|
3
|
-
import * as i1 from "../services/events.service";
|
4
|
-
export class HoverAnimationDirective {
|
5
|
-
constructor(el, renderer, eventService) {
|
6
|
-
this.el = el;
|
7
|
-
this.renderer = renderer;
|
8
|
-
this.eventService = eventService;
|
9
|
-
this.eventServiceSubscription = this.eventService.contentAnimationChangeChecks.subscribe((res) => {
|
10
|
-
this.animationData = res.data;
|
11
|
-
this.setupAnimation();
|
12
|
-
});
|
13
|
-
}
|
14
|
-
ngOnInit() {
|
15
|
-
console.log(this.animationData?.contentAnimation);
|
16
|
-
this.setupAnimation();
|
17
|
-
}
|
18
|
-
// setupAnimation() {
|
19
|
-
// if (this.animationData?.contentAnimation === 'hover') {
|
20
|
-
// // Initially hidden but still in the DOM (opacity 0 instead of display none)
|
21
|
-
// this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
22
|
-
// this.renderer.setStyle(this.el.nativeElement, 'transition', 'opacity 1s ease');
|
23
|
-
// // Adjust the parent element to listen for hover events
|
24
|
-
// const parentElement = this.el.nativeElement.parentElement;
|
25
|
-
// if (parentElement) {
|
26
|
-
// this.renderer.listen(parentElement, 'mouseenter', () => {
|
27
|
-
// this.renderer.setStyle(this.el.nativeElement, 'opacity', '1');
|
28
|
-
// });
|
29
|
-
// this.renderer.listen(parentElement, 'mouseleave', () => {
|
30
|
-
// this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
31
|
-
// });
|
32
|
-
// }
|
33
|
-
// }
|
34
|
-
// }
|
35
|
-
setupAnimation() {
|
36
|
-
this.mouseEnterListener?.();
|
37
|
-
this.mouseLeaveListener?.();
|
38
|
-
const animationType = this.animationData?.contentAnimation;
|
39
|
-
const parentElement = this.el.nativeElement.parentElement;
|
40
|
-
if (animationType === 'hover') {
|
41
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
42
|
-
this.renderer.setStyle(this.el.nativeElement, 'transition', 'opacity 1s ease');
|
43
|
-
if (parentElement) {
|
44
|
-
this.mouseEnterListener = this.renderer.listen(parentElement, 'mouseenter', () => {
|
45
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '1');
|
46
|
-
});
|
47
|
-
this.mouseLeaveListener = this.renderer.listen(parentElement, 'mouseleave', () => {
|
48
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
49
|
-
});
|
50
|
-
}
|
51
|
-
}
|
52
|
-
else if (animationType === 'grow-shadow') {
|
53
|
-
this.renderer.setStyle(this.el.nativeElement, 'transition', 'box-shadow 0.3s ease');
|
54
|
-
if (parentElement) {
|
55
|
-
this.mouseEnterListener = this.renderer.listen(parentElement, 'mouseenter', () => {
|
56
|
-
this.renderer.setStyle(this.el.nativeElement, 'box-shadow', '0 10px 20px rgba(0, 0, 0, 0.3)');
|
57
|
-
});
|
58
|
-
this.mouseLeaveListener = this.renderer.listen(parentElement, 'mouseleave', () => {
|
59
|
-
this.renderer.setStyle(this.el.nativeElement, 'box-shadow', 'none');
|
60
|
-
});
|
61
|
-
}
|
62
|
-
}
|
63
|
-
else if (animationType === 'pop-bounce') {
|
64
|
-
this.renderer.setStyle(this.el.nativeElement, 'transition', 'transform 0.3s ease');
|
65
|
-
if (parentElement) {
|
66
|
-
this.mouseEnterListener = this.renderer.listen(parentElement, 'mouseenter', () => {
|
67
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'scale(1.1)');
|
68
|
-
});
|
69
|
-
this.mouseLeaveListener = this.renderer.listen(parentElement, 'mouseleave', () => {
|
70
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'scale(1)');
|
71
|
-
});
|
72
|
-
}
|
73
|
-
}
|
74
|
-
else if (animationType === 'hover-pop') {
|
75
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
76
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'hidden');
|
77
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateY(10px)');
|
78
|
-
this.renderer.setStyle(this.el.nativeElement, 'transition', 'opacity 0.3s ease, transform 0.3s ease');
|
79
|
-
if (parentElement) {
|
80
|
-
this.mouseEnterListener = this.renderer.listen(parentElement, 'mouseenter', () => {
|
81
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'visible');
|
82
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '1');
|
83
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateY(0)');
|
84
|
-
});
|
85
|
-
this.mouseLeaveListener = this.renderer.listen(parentElement, 'mouseleave', () => {
|
86
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
87
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateY(10px)');
|
88
|
-
setTimeout(() => {
|
89
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'hidden');
|
90
|
-
}, 300);
|
91
|
-
});
|
92
|
-
}
|
93
|
-
}
|
94
|
-
else if (animationType === 'slide-in-left') {
|
95
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
96
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'hidden');
|
97
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateX(-10px)');
|
98
|
-
this.renderer.setStyle(this.el.nativeElement, 'transition', 'opacity 0.3s ease, transform 0.3s ease');
|
99
|
-
if (parentElement) {
|
100
|
-
this.mouseEnterListener = this.renderer.listen(parentElement, 'mouseenter', () => {
|
101
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'visible');
|
102
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '1');
|
103
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateX(0)');
|
104
|
-
});
|
105
|
-
this.mouseLeaveListener = this.renderer.listen(parentElement, 'mouseleave', () => {
|
106
|
-
this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');
|
107
|
-
this.renderer.setStyle(this.el.nativeElement, 'transform', 'translateX(-10px)');
|
108
|
-
setTimeout(() => {
|
109
|
-
this.renderer.setStyle(this.el.nativeElement, 'visibility', 'hidden');
|
110
|
-
}, 300);
|
111
|
-
});
|
112
|
-
}
|
113
|
-
}
|
114
|
-
}
|
115
|
-
ngOnDestroy() {
|
116
|
-
if (this.eventServiceSubscription) {
|
117
|
-
this.eventServiceSubscription.unsubscribe();
|
118
|
-
}
|
119
|
-
}
|
120
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: HoverAnimationDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.EventsService }], target: i0.ɵɵFactoryTarget.Directive }); }
|
121
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.4", type: HoverAnimationDirective, isStandalone: true, selector: "[simpoHoverAnimation]", inputs: { animationData: ["simpoHoverAnimation", "animationData"] }, ngImport: i0 }); }
|
122
|
-
}
|
123
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.4", ngImport: i0, type: HoverAnimationDirective, decorators: [{
|
124
|
-
type: Directive,
|
125
|
-
args: [{
|
126
|
-
selector: '[simpoHoverAnimation]',
|
127
|
-
standalone: true
|
128
|
-
}]
|
129
|
-
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.EventsService }], propDecorators: { animationData: [{
|
130
|
-
type: Input,
|
131
|
-
args: ['simpoHoverAnimation']
|
132
|
-
}] } });
|
133
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG92ZXItYW5pbWF0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NpbXBvLXVpL3NyYy9saWIvZGlyZWN0aXZlL2hvdmVyLWFuaW1hdGlvbi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7OztBQVF4RSxNQUFNLE9BQU8sdUJBQXVCO0lBSWxDLFlBQ1UsRUFBYyxFQUNkLFFBQW1CLEVBQ25CLFlBQTJCO1FBRjNCLE9BQUUsR0FBRixFQUFFLENBQVk7UUFDZCxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ25CLGlCQUFZLEdBQVosWUFBWSxDQUFlO1FBRW5DLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLDRCQUE0QixDQUFDLFNBQVMsQ0FDdEYsQ0FBQyxHQUFRLEVBQUUsRUFBRTtZQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQztZQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDMUIsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBSUQscUJBQXFCO0lBQ3JCLDREQUE0RDtJQUM1RCxtRkFBbUY7SUFDbkYscUVBQXFFO0lBQ3JFLHNGQUFzRjtJQUV0Riw4REFBOEQ7SUFDOUQsaUVBQWlFO0lBQ2pFLDJCQUEyQjtJQUMzQixrRUFBa0U7SUFDbEUseUVBQXlFO0lBQ3pFLFlBQVk7SUFFWixrRUFBa0U7SUFDbEUseUVBQXlFO0lBQ3pFLFlBQVk7SUFDWixRQUFRO0lBQ1IsTUFBTTtJQUNOLElBQUk7SUFDSixj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QVEsQ0FBQyxDQUFDO29CQUN4RSxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ1YsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDO1FBQ0gsQ0FBQztJQU1ILENBQUM7SUFHRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDOUMsQ0FBQztJQUNILENBQUM7OEdBakpVLHVCQUF1QjtrR0FBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjttSUFFK0IsYUFBYTtzQkFBMUMsS0FBSzt1QkFBQyxxQkFBcUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIElucHV0LCBSZW5kZXJlcjIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgY29udGVudEFuaW1hdGlvbk1vZGVsIH0gZnJvbSAnLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NpbXBvSG92ZXJBbmltYXRpb25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIb3ZlckFuaW1hdGlvbkRpcmVjdGl2ZSB7XHJcbiAgQElucHV0KCdzaW1wb0hvdmVyQW5pbWF0aW9uJykgYW5pbWF0aW9uRGF0YT86IGNvbnRlbnRBbmltYXRpb25Nb2RlbDtcclxuICBldmVudFNlcnZpY2VTdWJzY3JpcHRpb246IGFueTtcclxuICBcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWw6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICBwcml2YXRlIGV2ZW50U2VydmljZTogRXZlbnRzU2VydmljZVxyXG4gICkgeyBcclxuICAgIHRoaXMuZXZlbnRTZXJ2aWNlU3Vic2NyaXB0aW9uID0gdGhpcy5ldmVudFNlcnZpY2UuY29udGVudEFuaW1hdGlvbkNoYW5nZUNoZWNrcy5zdWJzY3JpYmUoXHJcbiAgICAgIChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5hbmltYXRpb25EYXRhID0gcmVzLmRhdGE7XHJcbiAgICAgICAgICB0aGlzLnNldHVwQW5pbWF0aW9uKCk7XHJcbiAgICAgIH0gXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBjb25zb2xlLmxvZyh0aGlzLmFuaW1hdGlvbkRhdGE/LmNvbnRlbnRBbmltYXRpb24pO1xyXG4gICAgdGhpcy5zZXR1cEFuaW1hdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgbW91c2VFbnRlckxpc3RlbmVyPzogKCkgPT4gdm9pZDtcclxuICBtb3VzZUxlYXZlTGlzdGVuZXI/OiAoKSA9PiB2b2lkO1xyXG4gIC8vIHNldHVwQW5pbWF0aW9uKCkge1xyXG4gIC8vICAgaWYgKHRoaXMuYW5pbWF0aW9uRGF0YT8uY29udGVudEFuaW1hdGlvbiA9PT0gJ2hvdmVyJykge1xyXG4gIC8vICAgICAvLyBJbml0aWFsbHkgaGlkZGVuIGJ1dCBzdGlsbCBpbiB0aGUgRE9NIChvcGFjaXR5IDAgaW5zdGVhZCBvZiBkaXNwbGF5IG5vbmUpXHJcbiAgLy8gICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnb3BhY2l0eScsICcwJyk7XHJcbiAgLy8gICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHJhbnNpdGlvbicsICdvcGFjaXR5IDFzIGVhc2UnKTtcclxuICAgICAgXHJcbiAgLy8gICAgIC8vIEFkanVzdCB0aGUgcGFyZW50IGVsZW1lbnQgdG8gbGlzdGVuIGZvciBob3ZlciBldmVudHNcclxuICAvLyAgICAgY29uc3QgcGFyZW50RWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xyXG4gIC8vICAgICBpZiAocGFyZW50RWxlbWVudCkge1xyXG4gIC8vICAgICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKHBhcmVudEVsZW1lbnQsICdtb3VzZWVudGVyJywgKCkgPT4ge1xyXG4gIC8vICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5JywgJzEnKTtcclxuICAvLyAgICAgICB9KTtcclxuICAgICAgICBcclxuICAvLyAgICAgICB0aGlzLnJlbmRlcmVyLmxpc3RlbihwYXJlbnRFbGVtZW50LCAnbW91c2VsZWF2ZScsICgpID0+IHtcclxuICAvLyAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnb3BhY2l0eScsICcwJyk7XHJcbiAgLy8gICAgICAgfSk7XHJcbiAgLy8gICAgIH1cclxuICAvLyAgIH1cclxuICAvLyB9XHJcbiAgc2V0dXBBbmltYXRpb24oKSB7XHJcbiAgICB0aGlzLm1vdXNlRW50ZXJMaXN0ZW5lcj8uKCk7XHJcbiAgICB0aGlzLm1vdXNlTGVhdmVMaXN0ZW5lcj8uKCk7XHJcbiAgXHJcbiAgICBjb25zdCBhbmltYXRpb25UeXBlID0gdGhpcy5hbmltYXRpb25EYXRhPy5jb250ZW50QW5pbWF0aW9uO1xyXG4gICAgY29uc3QgcGFyZW50RWxlbWVudCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50O1xyXG4gIFxyXG4gICAgaWYgKGFuaW1hdGlvblR5cGUgPT09ICdob3ZlcicpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5JywgJzAnKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2l0aW9uJywgJ29wYWNpdHkgMXMgZWFzZScpO1xyXG4gIFxyXG4gICAgICBpZiAocGFyZW50RWxlbWVudCkge1xyXG4gICAgICAgIHRoaXMubW91c2VFbnRlckxpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4ocGFyZW50RWxlbWVudCwgJ21vdXNlZW50ZXInLCAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAnMScpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW91c2VMZWF2ZUxpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4ocGFyZW50RWxlbWVudCwgJ21vdXNlbGVhdmUnLCAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAnMCcpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICB9IGVsc2UgaWYgKGFuaW1hdGlvblR5cGUgPT09ICdncm93LXNoYWRvdycpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2l0aW9uJywgJ2JveC1zaGFkb3cgMC4zcyBlYXNlJyk7XHJcbiAgXHJcbiAgICAgIGlmIChwYXJlbnRFbGVtZW50KSB7XHJcbiAgICAgICAgdGhpcy5tb3VzZUVudGVyTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihwYXJlbnRFbGVtZW50LCAnbW91c2VlbnRlcicsICgpID0+IHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnYm94LXNoYWRvdycsICcwIDEwcHggMjBweCByZ2JhKDAsIDAsIDAsIDAuMyknKTtcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLm1vdXNlTGVhdmVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHBhcmVudEVsZW1lbnQsICdtb3VzZWxlYXZlJywgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdib3gtc2hhZG93JywgJ25vbmUnKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gIFxyXG4gICAgfSBlbHNlIGlmIChhbmltYXRpb25UeXBlID09PSAncG9wLWJvdW5jZScpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2l0aW9uJywgJ3RyYW5zZm9ybSAwLjNzIGVhc2UnKTtcclxuICBcclxuICAgICAgaWYgKHBhcmVudEVsZW1lbnQpIHtcclxuICAgICAgICB0aGlzLm1vdXNlRW50ZXJMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHBhcmVudEVsZW1lbnQsICdtb3VzZWVudGVyJywgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2Zvcm0nLCAnc2NhbGUoMS4xKScpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubW91c2VMZWF2ZUxpc3RlbmVyID0gdGhpcy5yZW5kZXJlci5saXN0ZW4ocGFyZW50RWxlbWVudCwgJ21vdXNlbGVhdmUnLCAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3RyYW5zZm9ybScsICdzY2FsZSgxKScpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChhbmltYXRpb25UeXBlID09PSAnaG92ZXItcG9wJykge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAnMCcpO1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZVkoMTBweCknKTtcclxuICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2l0aW9uJywgJ29wYWNpdHkgMC4zcyBlYXNlLCB0cmFuc2Zvcm0gMC4zcyBlYXNlJyk7XHJcbiAgICBcclxuICAgICAgaWYgKHBhcmVudEVsZW1lbnQpIHtcclxuICAgICAgICB0aGlzLm1vdXNlRW50ZXJMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHBhcmVudEVsZW1lbnQsICdtb3VzZWVudGVyJywgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd2aXNpYmlsaXR5JywgJ3Zpc2libGUnKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnb3BhY2l0eScsICcxJyk7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3RyYW5zZm9ybScsICd0cmFuc2xhdGVZKDApJyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICBcclxuICAgICAgICB0aGlzLm1vdXNlTGVhdmVMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHBhcmVudEVsZW1lbnQsICdtb3VzZWxlYXZlJywgKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICdvcGFjaXR5JywgJzAnKTtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZVkoMTBweCknKTtcclxuICAgIFxyXG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmlzaWJpbGl0eScsICdoaWRkZW4nKTtcclxuICAgICAgICAgIH0sIDMwMCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGFuaW1hdGlvblR5cGUgPT09ICdzbGlkZS1pbi1sZWZ0Jykge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAnMCcpO1xyXG4gICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3Zpc2liaWxpdHknLCAnaGlkZGVuJyk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHJhbnNmb3JtJywgJ3RyYW5zbGF0ZVgoLTEwcHgpJyk7XHJcbiAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndHJhbnNpdGlvbicsICdvcGFjaXR5IDAuM3MgZWFzZSwgdHJhbnNmb3JtIDAuM3MgZWFzZScpO1xyXG4gICAgXHJcbiAgICAgIGlmIChwYXJlbnRFbGVtZW50KSB7XHJcbiAgICAgICAgdGhpcy5tb3VzZUVudGVyTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihwYXJlbnRFbGVtZW50LCAnbW91c2VlbnRlcicsICgpID0+IHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAndmlzaWJpbGl0eScsICd2aXNpYmxlJyk7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ29wYWNpdHknLCAnMScpO1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlWCgwKScpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgXHJcbiAgICAgICAgdGhpcy5tb3VzZUxlYXZlTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3RlbihwYXJlbnRFbGVtZW50LCAnbW91c2VsZWF2ZScsICgpID0+IHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5lbC5uYXRpdmVFbGVtZW50LCAnb3BhY2l0eScsICcwJyk7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgJ3RyYW5zZm9ybScsICd0cmFuc2xhdGVYKC0xMHB4KScpO1xyXG4gICAgXHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQsICd2aXNpYmlsaXR5JywgJ2hpZGRlbicpO1xyXG4gICAgICAgICAgfSwgMzAwKTtcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgXHJcbiAgICBcclxuICAgIFxyXG4gICAgXHJcbiAgICBcclxuICB9XHJcbiAgXHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMuZXZlbnRTZXJ2aWNlU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgIHRoaXMuZXZlbnRTZXJ2aWNlU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59Il19
|