From 24e4fcf1718110848a85ad9f692db091d88a3ab6 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Thu, 27 Oct 2022 14:44:58 -0500
Subject: [PATCH 01/19] Update prettier.
---
.prettierignore | 5 +++++
.prettierrc.json | 8 ++++++++
2 files changed, 13 insertions(+)
create mode 100644 .prettierignore
create mode 100644 .prettierrc.json
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 00000000..d5b4b3e9
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1,5 @@
+*.yml
+*.yaml
+package.json
+dist/
+node_modules/
\ No newline at end of file
diff --git a/.prettierrc.json b/.prettierrc.json
new file mode 100644
index 00000000..2f49c528
--- /dev/null
+++ b/.prettierrc.json
@@ -0,0 +1,8 @@
+{
+ "printWidth": 100,
+ "tabWidth": 2,
+ "useTabs": true,
+ "singleQuote": true,
+ "trailingComma": "es5",
+ "endOfLine": "lf"
+}
From fa3901077cf3c9a37e46ff1a1ba51cebfb24be6d Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Fri, 28 Oct 2022 12:46:16 -0500
Subject: [PATCH 02/19] =?UTF-8?q?=F0=9F=90=9B=20fix(black-friday):=20Updat?=
=?UTF-8?q?e=20markup=20and=20styles.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../lib/elements/content.js | 93 ++++++++
.../lib/elements/ribbon.js | 52 +++++
.../lib/shared-notifications-black-friday.css | 199 ++++++++++++++++++
.../lib/shared-notifications-black-friday.js | 104 ++++++---
4 files changed, 416 insertions(+), 32 deletions(-)
create mode 100644 packages/shared-notifications-black-friday/lib/elements/content.js
create mode 100644 packages/shared-notifications-black-friday/lib/elements/ribbon.js
create mode 100644 packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
diff --git a/packages/shared-notifications-black-friday/lib/elements/content.js b/packages/shared-notifications-black-friday/lib/elements/content.js
new file mode 100644
index 00000000..e54b7a40
--- /dev/null
+++ b/packages/shared-notifications-black-friday/lib/elements/content.js
@@ -0,0 +1,93 @@
+import React from "react";
+
+// Build "content" component.
+const Content = ({ intro, title, price, discount, action, children }) => {
+ const hasIntro = !isUndefined( intro ) ? true : false;
+ const hasTitle = !isUndefined( title ) ? true : false;
+
+ const ShowPrice = () => {
+ const hasPrice = !isUndefined( price ) ? true : false;
+ const hasDiscount = !isUndefined( discount ) ? true : false;
+
+ const oldPrice = parseInt( price );
+ const newPrice = (oldPrice - (oldPrice * (parseInt( discount ) / 100)));
+
+ if ( hasPrice && hasDiscount ) {
+ if ( parseInt( discount ) > 0 ) {
+ return (
+ <> ${ oldPrice }/m ${ newPrice }/m >
+ );
+ }
+ }
+
+ return '';
+ }
+
+ const cta = Object.assign(
+ {
+ label: 'Get now',
+ link: '',
+ },
+ action
+ );
+
+ return (
+
-
+
-
- { lang.discount }
-
-
-
+ { hasDiscount && (
+
+ )}
+
+
+ { children }
+
>
)
);
}
+
+// Check if element is undefined.
+const isUndefined = (element, type = null) => {
+ const isValid = 'undefined' !== typeof element;
+ const isNotEmpty = '' !== element;
+ const isNumber = 'number' === type;
+ const isBoolean = 'boolean' === type;
+
+ // Check if element exists.
+ if ( element && isValid && isNotEmpty ) {
+
+ if ( isNumber ) {
+ if ( Number.isNaN( element ) ) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if ( isBoolean ) {
+ if ( 'boolean' === typeof element ) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
+}
From 656e2dc77f4d7c288aeda9895d0d501f4a6bb799 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Fri, 28 Oct 2022 12:47:05 -0500
Subject: [PATCH 03/19] =?UTF-8?q?=F0=9F=93=9D=20docs(black-friday):=20Upda?=
=?UTF-8?q?te=20demos=20based=20on=20latest=20changes.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
...ared-notifications-black-friday.stories.js | 41 +++++++++++++------
1 file changed, 29 insertions(+), 12 deletions(-)
diff --git a/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js b/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
index 0e3f03d9..b9119541 100644
--- a/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
+++ b/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
@@ -6,33 +6,50 @@ export default {
component: NoticeBlack
}
-export const Untranslated = ( args ) => {
+export const Untranslated = ({ ...args }) => {
return (
- Black Friday Offer! Get 11 Pro plugins on unlimited sites and much more with 50% OFF WPMU DEV Agency plan FOREVER
- *Only admin users can see this message
+ From the creators of Smush, WPMU DEV's all-in-one platform gives you all the tools and support you need to run and grow a web development business. Trusted by over 50,000 web developers. Limited deals available.
+ * Only admin users can see this message
);
};
Untranslated.storyName = "Default";
Untranslated.args = {
- link: 'https://wpmudev.com/'
+ content: {
+ off: 'Off',
+ intro: 'Black Friday SPECIAL',
+ title: 'The ultimate WordPress toolkit now at',
+ close: 'Close',
+ },
+ price: 82,
+ discount: 50,
+ action: {
+ label: 'Get now',
+ link: 'https://wpmudev.com/',
+ },
}
export const Translated = ( args ) => {
return (
- ¡Oferta de Viernes Negro! Obtén 11 plugins Pro para sitios ilimitados y mucho más por el 50% DE DESCUENTO en el plan WPMU DEV Agency DE POR VIDA
- *Solo los administradores pueden ver este mensaje
+ De los creadores de Smush, la plataforma todo en uno de WPMU DEV te brinda todas las herramientas y el soporte que necesitas para ejecutar y hacer crecer tu negocio de desarrollo web. Con la confianza de más de 50.000 desarrolladores web. Ofertas limitadas disponibles.
+ * Solo los administradores pueden ver este mensaje
);
}
Translated.storyName = "Translated";
Translated.args = {
- ...Untranslated.args,
- sourceLang: {
- discount: '50% Dscto',
- closeLabel: 'Cerrar',
- linkLabel: 'Ir a la oferta'
- }
+ content: {
+ off: 'Dscto',
+ intro: 'ESPECIAL de Viernes Negro',
+ title: 'El mejor kit de herramientas de WordPress ahora en',
+ close: 'Cerrar',
+ },
+ price: 82,
+ discount: 50,
+ action: {
+ label: 'Consíguelo ahora',
+ link: 'https://wpmudev.com/',
+ },
}
From 8b4f813791a76b0ab4496ff0fb02b99e74e25b96 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 12:58:02 -0500
Subject: [PATCH 04/19] =?UTF-8?q?=F0=9F=90=9B=20fix(black-friday):=20Updat?=
=?UTF-8?q?e=20price=20and=20discount=20handling.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../lib/elements/content.js | 45 ++++++++++---------
1 file changed, 25 insertions(+), 20 deletions(-)
diff --git a/packages/shared-notifications-black-friday/lib/elements/content.js b/packages/shared-notifications-black-friday/lib/elements/content.js
index e54b7a40..0b434a9d 100644
--- a/packages/shared-notifications-black-friday/lib/elements/content.js
+++ b/packages/shared-notifications-black-friday/lib/elements/content.js
@@ -5,24 +5,6 @@ const Content = ({ intro, title, price, discount, action, children }) => {
const hasIntro = !isUndefined( intro ) ? true : false;
const hasTitle = !isUndefined( title ) ? true : false;
- const ShowPrice = () => {
- const hasPrice = !isUndefined( price ) ? true : false;
- const hasDiscount = !isUndefined( discount ) ? true : false;
-
- const oldPrice = parseInt( price );
- const newPrice = (oldPrice - (oldPrice * (parseInt( discount ) / 100)));
-
- if ( hasPrice && hasDiscount ) {
- if ( parseInt( discount ) > 0 ) {
- return (
- <>
${ oldPrice }/m ${ newPrice }/m >
- );
- }
- }
-
- return '';
- }
-
const cta = Object.assign(
{
label: 'Get now',
@@ -40,7 +22,7 @@ const Content = ({ intro, title, price, discount, action, children }) => {
{ hasTitle && (
{ title }
-
+
)}
{ children }
@@ -59,6 +41,29 @@ const Content = ({ intro, title, price, discount, action, children }) => {
);
}
+// Return price.
+const ShowPrice = ({ price, discount }) => {
+ const hasDiscount = !isUndefined( discount, 'number' ) ? true : false;
+ const hasPrice = !isUndefined( price, 'number' ) ? true : false;
+
+ const getDiscount = discount / 100;
+
+ const oldPrice = price;
+ const newPrice = price - (price * getDiscount);
+
+ return (
+ <>
+ { ( hasPrice && hasDiscount ) && (
+ <>
${ oldPrice } ${ newPrice } >
+ )}
+
+ { ( hasPrice && !hasDiscount ) && (
+ <> ${ oldPrice }>
+ )}
+ >
+ );
+}
+
// Check if element is undefined.
const isUndefined = (element, type = null) => {
const isValid = 'undefined' !== typeof element;
@@ -70,7 +75,7 @@ const isUndefined = (element, type = null) => {
if ( element && isValid && isNotEmpty ) {
if ( isNumber ) {
- if ( Number.isNaN( element ) ) {
+ if ( Number.isNaN( Math.floor( element ) ) ) {
return true;
} else {
return false;
From 48f07227fcb18aaf36ca64887babfb25512ad958 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 12:58:22 -0500
Subject: [PATCH 05/19] =?UTF-8?q?=F0=9F=90=9B=20fix(black-friday):=20Updat?=
=?UTF-8?q?e=20discount=20handling.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../lib/elements/ribbon.js | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
diff --git a/packages/shared-notifications-black-friday/lib/elements/ribbon.js b/packages/shared-notifications-black-friday/lib/elements/ribbon.js
index 324a2315..d2760be2 100644
--- a/packages/shared-notifications-black-friday/lib/elements/ribbon.js
+++ b/packages/shared-notifications-black-friday/lib/elements/ribbon.js
@@ -2,7 +2,8 @@ import React from 'react';
// Build "ribbon" component.
const Ribbon = ({ discount, sourceLang }) => {
- const setDiscount = !isUndefined( discount, 'number' ) ? discount : 50;
+ const hasDiscount = !isUndefined( Math.floor( discount ) ) ? true : false;
+ const setDiscount = !isUndefined( Math.floor( discount ) ) ? discount.toString() + '%' : 0;
const lang = Object.assign(
{
off: 'Off'
@@ -11,10 +12,14 @@ const Ribbon = ({ discount, sourceLang }) => {
);
return (
-
- { setDiscount }%
- { lang.off }
-
+ <>
+ {( hasDiscount ) && (
+
+ { setDiscount }
+ { lang.off }
+
+ )}
+ >
);
}
From 698928b46fe2776b576c49dc55f9c0dace5389b8 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 12:58:33 -0500
Subject: [PATCH 06/19] =?UTF-8?q?=F0=9F=90=9B=20fix(black-friday):=20Updat?=
=?UTF-8?q?e=20styles.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../lib/shared-notifications-black-friday.css | 33 +++++++++++++++++--
1 file changed, 31 insertions(+), 2 deletions(-)
diff --git a/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css b/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
index 1654c464..58e5ed5e 100644
--- a/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
+++ b/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
@@ -58,11 +58,25 @@
}
[class*="sui-2-"] .sui-wrap .suim-black h2.suim-black__title s {
- color: #D21A1A;
+ position: relative;
+ color: rgba(241, 227, 209, 0.7);
+ text-decoration: none;
+}
+
+[class*="sui-2-"] .sui-wrap .suim-black h2.suim-black__title s:before {
+ content: " ";
+ width: 105%;
+ height: 2px;
+ position: absolute;
+ bottom: 15px;
+ left: 0;
+ background: #F1E3D1;
+ transform: rotate(-10deg);
+ transform-origin: bottom left;
}
[class*="sui-2-"] .sui-wrap .suim-black h2.suim-black__title strong {
- color: #0AAB41;
+ color: #F1E3D1;
}
/** Element: Description */
@@ -97,6 +111,21 @@
font-size: 12px;
}
+/** Element: Link */
+/** Element: Title */
+[class*="sui-2-"] .sui-wrap .suim-black .suim-black__link {
+ cursor: pointer;
+ margin: 0;
+ padding: 0;
+ border: 0;
+ background: transparent;
+ color: #12AB21;
+ font-size: inherit;
+ line-height: inherit;
+ font-weight: 600;
+ text-decoration: underline;
+}
+
/** Element: CTA Button */
[class*="sui-2-"] .sui-wrap .suim-black a.suim-black__button {
cursor: pointer;
From 20975d64eca86ebd64c4e1ca6ed7d77fea8610db Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 13:10:49 -0500
Subject: [PATCH 07/19] =?UTF-8?q?=F0=9F=90=9B=20fix(black-friday):=20Updat?=
=?UTF-8?q?e=20link=20styles=20for=20hover=20and=20focus=20states.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../lib/shared-notifications-black-friday.css | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css b/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
index 58e5ed5e..3adf81f1 100644
--- a/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
+++ b/packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
@@ -112,7 +112,6 @@
}
/** Element: Link */
-/** Element: Title */
[class*="sui-2-"] .sui-wrap .suim-black .suim-black__link {
cursor: pointer;
margin: 0;
@@ -124,6 +123,15 @@
line-height: inherit;
font-weight: 600;
text-decoration: underline;
+ transition: 0.2s ease;
+}
+
+[class*="sui-2-"] .sui-wrap .suim-black .suim-black__link:hover {
+ color: #15d629;
+}
+
+[class*="sui-2-"] .sui-wrap .suim-black .suim-black__link:focus {
+ opacity: 0.8;
}
/** Element: CTA Button */
From 5cfd25743c3c77d70f9688b6add8b7bdffd1c348 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 13:49:45 -0500
Subject: [PATCH 08/19] =?UTF-8?q?=F0=9F=93=9D=20docs(black-friday):=20Upda?=
=?UTF-8?q?te=20demo=20content.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
...ared-notifications-black-friday.stories.js | 40 +++++++++----------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js b/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
index b9119541..6acbf6bd 100644
--- a/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
+++ b/packages/shared-notifications-black-friday/docs/shared-notifications-black-friday.stories.js
@@ -6,50 +6,50 @@ export default {
component: NoticeBlack
}
-export const Untranslated = ({ ...args }) => {
+export const Primary = ({ ...args }) => {
return (
- From the creators of Smush, WPMU DEV's all-in-one platform gives you all the tools and support you need to run and grow a web development business. Trusted by over 50,000 web developers. Limited deals available.
- * Only admin users can see this message
+ From the creators of Smush, WPMU DEV's all-in-one platform gives you all the Pro tools and support you need to run and grow a web development business. Trusted by over 50,000 web developers. Limited deals available.
+ Don't want to claim the offer right now? { console.log( 'Open Black Friday modal.' ) }}>Sign up for exclusive VIP access to future sales .
);
};
-Untranslated.storyName = "Default";
-Untranslated.args = {
+Primary.storyName = "Default";
+Primary.args = {
content: {
off: 'Off',
- intro: 'Black Friday SPECIAL',
- title: 'The ultimate WordPress toolkit now at',
+ intro: 'Black Friday offer for WP Businesses and Agencies',
+ title: 'Everything you need to run your WP business for',
close: 'Close',
},
- price: 82,
- discount: 50,
+ price: 3000,
+ discount: 83.5,
action: {
- label: 'Get now',
+ label: 'Get deal',
link: 'https://wpmudev.com/',
},
}
-export const Translated = ( args ) => {
+export const Secondary = ( args ) => {
return (
- De los creadores de Smush, la plataforma todo en uno de WPMU DEV te brinda todas las herramientas y el soporte que necesitas para ejecutar y hacer crecer tu negocio de desarrollo web. Con la confianza de más de 50.000 desarrolladores web. Ofertas limitadas disponibles.
- * Solo los administradores pueden ver este mensaje
+ De los creadores de Smush, la plataforma todo en uno de WPMU DEV te brinda todas las herramientas y el soporte que necesitas para ejecutar y hacer crecer tu negocio de desarrollo web. Con la confianza de más de 50,000 desarrolladores web. Ofertas limitadas disponibles.
+ ¿No quieres reclamar la oferta este rato? { console.log( 'Open Black Friday modal.' ) }}>Suscríbete para obtener acceso VIP exclusivo a futuras ventas .
);
}
-Translated.storyName = "Translated";
-Translated.args = {
+Secondary.storyName = "Translated";
+Secondary.args = {
content: {
off: 'Dscto',
- intro: 'ESPECIAL de Viernes Negro',
- title: 'El mejor kit de herramientas de WordPress ahora en',
+ intro: 'Oferta de Viernes Negro para Empresas y Agencias de WP',
+ title: 'Todo lo que necesitas para dirigir tu negocio de WP por',
close: 'Cerrar',
},
- price: 82,
- discount: 50,
+ price: 3000,
+ discount: 83.5,
action: {
- label: 'Consíguelo ahora',
+ label: 'Obtener Oferta',
link: 'https://wpmudev.com/',
},
}
From 1379b3f727a68e74eaf2da0220f0d86097ce68d2 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 14:03:04 -0500
Subject: [PATCH 09/19] =?UTF-8?q?=F0=9F=94=8A=20log(black-notice):=20Updat?=
=?UTF-8?q?e=20changelog.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
packages/shared-notifications-black-friday/CHANGELOG.md | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/packages/shared-notifications-black-friday/CHANGELOG.md b/packages/shared-notifications-black-friday/CHANGELOG.md
index 197a5e6d..a1af7b38 100644
--- a/packages/shared-notifications-black-friday/CHANGELOG.md
+++ b/packages/shared-notifications-black-friday/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## 1.1.0 (2022-11-14)
+
+#### Improvements
+* `shared-notifications-black-friday`
+ * [#148](https://github.com/wpmudev/shared-modules/pull/148) 🐛 fix(notice-black): Update banner with 2022 design. ([@iamleigh](https://github.com/iamleigh))
+
## 1.0.3 (2021-10-31)
#### Improvements
From 88970fd83c1e46496696f3f57a2bdd4e1bcb9e41 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 16:05:34 -0500
Subject: [PATCH 10/19] =?UTF-8?q?=F0=9F=90=9B=20PostCSS=20plugin=20postcss?=
=?UTF-8?q?-url=20requires=20PostCSS=208.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../shared-compiler/lib/shared-compiler.js | 6 ++++--
packages/shared-compiler/package.json | 1 +
yarn.lock | 19 +++++++++++++++++++
3 files changed, 24 insertions(+), 2 deletions(-)
diff --git a/packages/shared-compiler/lib/shared-compiler.js b/packages/shared-compiler/lib/shared-compiler.js
index d6bf56aa..4532113d 100755
--- a/packages/shared-compiler/lib/shared-compiler.js
+++ b/packages/shared-compiler/lib/shared-compiler.js
@@ -21,7 +21,9 @@ const inputOptions = {
'react'
],
plugins: [
- resolve(),
+ resolve({
+ extensions: ['.css']
+ }),
postcss({
modules: true
}),
@@ -44,7 +46,7 @@ const inputOptions = {
'@babel/plugin-proposal-class-properties',
'@babel/plugin-proposal-private-methods'
]
- }),
+ })
],
external: [
'react',
diff --git a/packages/shared-compiler/package.json b/packages/shared-compiler/package.json
index 368d3b2d..f8f71898 100644
--- a/packages/shared-compiler/package.json
+++ b/packages/shared-compiler/package.json
@@ -41,6 +41,7 @@
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-node-resolve": "^11.2.0",
"babel-plugin-styled-components": "^1.13.3",
+ "postcss": "^8.4.19",
"rollup": "^2.39.0",
"rollup-plugin-postcss": "^4.0.1"
}
diff --git a/yarn.lock b/yarn.lock
index 50dc4b06..75a5a3d1 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -10303,6 +10303,11 @@ nanoid@^3.1.23, nanoid@^3.1.30:
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25"
integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==
+nanoid@^3.3.4:
+ version "3.3.4"
+ resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.4.tgz#730b67e3cd09e2deacf03c027c81c9d9dbc5e8ab"
+ integrity sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==
+
nanomatch@^1.2.9:
version "1.2.13"
resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119"
@@ -11672,6 +11677,15 @@ postcss@^8.2.15:
picocolors "^1.0.0"
source-map-js "^0.6.2"
+postcss@^8.4.19:
+ version "8.4.19"
+ resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.19.tgz#61178e2add236b17351897c8bcc0b4c8ecab56fc"
+ integrity sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==
+ dependencies:
+ nanoid "^3.3.4"
+ picocolors "^1.0.0"
+ source-map-js "^1.0.2"
+
prelude-ls@^1.2.1:
version "1.2.1"
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
@@ -13089,6 +13103,11 @@ source-map-js@^0.6.2:
resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e"
integrity sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==
+source-map-js@^1.0.2:
+ version "1.0.2"
+ resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-1.0.2.tgz#adbc361d9c62df380125e7f161f71c826f1e490c"
+ integrity sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==
+
source-map-resolve@^0.5.0:
version "0.5.3"
resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a"
From 79ec5445114c4eaf092dc54a6d517e2d6e8a752c Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 16:09:11 -0500
Subject: [PATCH 11/19] =?UTF-8?q?=F0=9F=93=A6=20(black-notice):=20Build=20?=
=?UTF-8?q?package.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../shared-notifications-black-friday.cjs.js | 229 ++++++++++++++++--
.../shared-notifications-black-friday.esm.js | 229 ++++++++++++++++--
2 files changed, 416 insertions(+), 42 deletions(-)
diff --git a/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.cjs.js b/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.cjs.js
index 2b6f6efb..b0cb0504 100644
--- a/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.cjs.js
+++ b/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.cjs.js
@@ -359,7 +359,154 @@ BlackFriday.Link = styled__default["default"].a.attrs(function (_ref) {
};
})(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n[class*=\"sui-2-\"] .sui-wrap & {\n\tcursor: pointer;\n\tdisplay: inline-block;\n\tmargin: 0;\n\tpadding: 5px 30px;\n\tborder: 0;\n\tborder-radius: 30px;\n\tbackground: #4DFD89;\n\tbox-shadow: none;\n\tcolor: #222;\n\tfont-size: 13px;\n\tline-height: 30px;\n\tfont-weight: bold;\n\ttext-decoration: none;\n\ttransition: 0.2s ease;\n\n\t&:hover,\n\t&:focus {\n\t\tbackground: #fff;\n\t\tcolor: #222222 !important;\n\t}\n\n\t&:focus {\n\t\tbox-shadow: 0 0 10px 0 rgba(255,255,255,0.3);\n\t}\n\n\t@media ", " {\n\t\tdisplay: block;\n\t\tflex: 0 0 auto;\n\t}\n}\n"])), minDevice.laptop);
-var _excluded = ["link", "onCloseClick", "sourceLang", "children"];
+var Ribbon = function Ribbon(_ref) {
+ var discount = _ref.discount,
+ sourceLang = _ref.sourceLang;
+ var hasDiscount = !isUndefined$2(Math.floor(discount)) ? true : false;
+ var setDiscount = !isUndefined$2(Math.floor(discount)) ? discount.toString() + '%' : 0;
+ var lang = Object.assign({
+ off: 'Off'
+ }, sourceLang);
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, hasDiscount && /*#__PURE__*/React__default["default"].createElement("div", {
+ className: "suim-black__ribbon"
+ }, /*#__PURE__*/React__default["default"].createElement("span", null, setDiscount), /*#__PURE__*/React__default["default"].createElement("span", null, lang.off)));
+}; // Check if element is undefined.
+
+
+var isUndefined$2 = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(element)) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
+}; // Publish required component(s).
+
+var Content = function Content(_ref) {
+ var intro = _ref.intro,
+ title = _ref.title,
+ price = _ref.price,
+ discount = _ref.discount,
+ action = _ref.action,
+ children = _ref.children;
+ var hasIntro = !isUndefined$1(intro) ? true : false;
+ var hasTitle = !isUndefined$1(title) ? true : false;
+ var cta = Object.assign({
+ label: 'Get now',
+ link: ''
+ }, action);
+ return /*#__PURE__*/React__default["default"].createElement("div", {
+ className: "suim-black__promo"
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
+ className: "suim-black__content"
+ }, hasIntro && /*#__PURE__*/React__default["default"].createElement("span", {
+ className: "suim-black__intro"
+ }, intro), hasTitle && /*#__PURE__*/React__default["default"].createElement("h2", {
+ className: "suim-black__title"
+ }, title, /*#__PURE__*/React__default["default"].createElement(ShowPrice, {
+ price: price,
+ discount: discount
+ })), children), '' !== cta.link && /*#__PURE__*/React__default["default"].createElement("a", {
+ href: cta.link,
+ target: "_blank",
+ rel: "nofollow",
+ className: "suim-black__button"
+ }, cta.label));
+}; // Return price.
+
+
+var ShowPrice = function ShowPrice(_ref2) {
+ var price = _ref2.price,
+ discount = _ref2.discount;
+ var hasDiscount = !isUndefined$1(discount, 'number') ? true : false;
+ var hasPrice = !isUndefined$1(price, 'number') ? true : false;
+ var getDiscount = discount / 100;
+ var oldPrice = price;
+ var newPrice = price - price * getDiscount;
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, hasPrice && hasDiscount && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, " ", /*#__PURE__*/React__default["default"].createElement("s", null, "$", oldPrice), " ", /*#__PURE__*/React__default["default"].createElement("strong", null, "$", newPrice)), hasPrice && !hasDiscount && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, " $", oldPrice));
+}; // Check if element is undefined.
+
+
+var isUndefined$1 = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(Math.floor(element))) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
+}; // Publish required component(s).
+
+function styleInject(css, ref) {
+ if (ref === void 0) ref = {};
+ var insertAt = ref.insertAt;
+
+ if (!css || typeof document === 'undefined') {
+ return;
+ }
+
+ var head = document.head || document.getElementsByTagName('head')[0];
+ var style = document.createElement('style');
+ style.type = 'text/css';
+
+ if (insertAt === 'top') {
+ if (head.firstChild) {
+ head.insertBefore(style, head.firstChild);
+ } else {
+ head.appendChild(style);
+ }
+ } else {
+ head.appendChild(style);
+ }
+
+ if (style.styleSheet) {
+ style.styleSheet.cssText = css;
+ } else {
+ style.appendChild(document.createTextNode(css));
+ }
+}
+
+var css_248z = "/** Import required font: Lalezar */\n@import url(https://fonts.bunny.net/css?family=lalezar:400);\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\tposition: relative;\n\tpadding: 0 24px 24px;\n\tborder-radius: 8px;\n\tbackground-color: #051F19;\n\tbackground-image: linear-gradient(180deg, #1A1A1A 0%, #051F19 100%);\n}\n\n/** Element: Close Button */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_sui-button-icon__1Rlcp {\n\tposition: absolute !important;\n\ttop: 24px;\n\tright: 24px;\n\tmargin: 0 !important;\n}\n\n/** Element: Ribbon */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG {\n\tdisplay: inline-block;\n\tpadding: 24px 16px;\n\tborder: 0;\n\tborder-radius: 0 0 16px 16px;\n\tbackground: #F6E8D6;\n\tcolor: #051F19;\n\tfont: 400 30px/32px 'Lalezar';\n\ttext-transform: uppercase;\n\ttext-align: center;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG span {\n\tdisplay: block;\n}\n\n/** Element: Promo Container */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\tmargin-top: 24px;\n}\n\n/** Element: Intro */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__intro__2DL2J {\n\tdisplay: block;\n\tmargin: 0 0 8px;\n\tcolor: #008A0E;\n\tfont: 400 16px/22px 'Lalezar';\n\tletter-spacing: 0.13px;\n\ttext-transform: uppercase;\n}\n\n/** Element: Title */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT {\n\tmargin: 0 0 8px;\n\tcolor: #F1E3D1;\n\tfont: 400 28px/30px 'Lalezar';\n\tletter-spacing: 0.08px;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT s {\n\tposition: relative;\n\tcolor: rgba(241, 227, 209, 0.7);\n\ttext-decoration: none;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT s:before {\n\tcontent: \" \";\n\twidth: 105%;\n\theight: 2px;\n\tposition: absolute;\n\tbottom: 15px;\n\tleft: 0;\n\tbackground: #F1E3D1;\n\ttransform: rotate(-10deg);\n\ttransform-origin: bottom left;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT strong {\n\tcolor: #F1E3D1;\n}\n\n/** Element: Description */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p {\n\tcolor: #F1E3D1;\n\tfont-size: 15px;\n\tline-height: 24px;\n\tletter-spacing: 0.1px;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p {\n\tmargin: 8px 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:first-child {\n\tmargin-top: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:last-child {\n\tmargin-bottom: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:last-child {\n\tmargin-bottom: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p small {\n\tmargin: 0;\n\topacity: 0.8;\n\tcolor: #F1E3D1;\n\tfont-size: 12px;\n}\n\n/** Element: Link */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5 {\n\tcursor: pointer;\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\tcolor: #12AB21;\n\tfont-size: inherit;\n\tline-height: inherit;\n\tfont-weight: 600;\n\ttext-decoration: underline;\n\ttransition: 0.2s ease;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5:hover {\n\tcolor: #15d629;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5:focus {\n\topacity: 0.8;\n}\n\n/** Element: CTA Button */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\tcursor: pointer;\n\twidth: 100%;\n\tdisplay: block;\n\tmargin: 16px 0 0;\n\tpadding: 7px 30px 8px;\n\tborder: 2px solid transparent;\n\tborder-radius: 15px;\n\tbackground: #008A0E;\n\tcolor: #FFFFFF;\n\tfont-size: 15px;\n\tfont-weight: 600;\n\tline-height: 18px;\n\tletter-spacing: -0.4px;\n\ttext-decoration: none;\n\ttext-align: center;\n\ttransition: 0.2s ease;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:hover,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:active,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\toutline: none;\n\tbox-shadow: none;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:hover,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\tbackground: #FFFFFF;\n\tcolor: #1A1A1A;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\tborder-color: #008A0E;\n}\n\n@media (min-width: 783px) {\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t}\n\n\t/** Element: Ribbon */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG {\n\t\tflex: 0 0 auto;\n\t}\n\n\t/** Element: Title */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT {\n\t\tline-height: 22px;\n\t}\n\n\t/** Element: Promo Container */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\t\tmin-width: 1px;\n\t\tflex: 1;\n\t\tmargin-top: 0;\n\t\tmargin-left: 24px;\n\t\tpadding-top: 32px;\n\t}\n\n\t/** Element: CTA Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\t\twidth: auto;\n\t\tdisplay: inline-block;\n\t}\n}\n\n@media (min-width: 1200px) {\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\t\tpadding-right: 60px;\n\t}\n\n\t/** Element: Close Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_sui-button-icon__1Rlcp {\n\t\ttop: 20px;\n\t\tright: 20px;\n\t}\n\n\t/** Element: Promo Container */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t/** Element: Content */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r {\n\t\tmin-width: 1px;\n\t\tflex: 1;\n\t}\n\n\t/** Element: CTA Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\t\tdisplay: block;\n\t\tflex: 0 0 auto;\n\t\tmargin-left: 32px;\n\t}\n}\n";
+styleInject(css_248z);
+
+var _excluded = ["price", "discount", "action", "content", "onCloseClick", "children"];
function checkRTL() {
var suiBody = document.body;
@@ -386,9 +533,11 @@ function checkSuiWrap() {
}
var NoticeBlack = function NoticeBlack(_ref) {
- var link = _ref.link,
+ var price = _ref.price,
+ discount = _ref.discount,
+ action = _ref.action,
+ content = _ref.content,
onCloseClick = _ref.onCloseClick,
- sourceLang = _ref.sourceLang,
children = _ref.children,
props = _objectWithoutProperties$1(_ref, _excluded);
@@ -416,11 +565,15 @@ var NoticeBlack = function NoticeBlack(_ref) {
};
var lang = Object.assign({
- discount: '50% Off',
- closeLabel: 'Close',
- linkLabel: 'See the deal'
- }, sourceLang);
- var hasLink = null !== link && '' !== link;
+ off: 'Off',
+ intro: '',
+ title: '',
+ close: 'Close'
+ }, content);
+ var hasIntro = !isUndefined(lang.intro) ? true : false;
+ var hasTitle = !isUndefined(lang.title) ? true : false;
+ var hasPrice = !isUndefined(price, 'number') ? true : false;
+ var hasDiscount = !isUndefined(discount, 'number') ? true : false;
React__default["default"].useEffect(function () {
setRTL(checkRTL);
setMonochrome(checkSuiWrap);
@@ -429,24 +582,58 @@ var NoticeBlack = function NoticeBlack(_ref) {
rtl: isRTL,
monochrome: isMonochrome
}), /*#__PURE__*/React__default["default"].createElement("div", _extends({
- className: "sui-module-notice-black-friday__container"
+ className: "suim-black"
}, props), /*#__PURE__*/React__default["default"].createElement(ButtonIcon, {
color: "white",
icon: "close",
iconSize: "md",
- label: lang.closeLabel,
+ label: lang.close,
onClick: closeOnClick
- }), /*#__PURE__*/React__default["default"].createElement("div", {
- className: "sui-module-notice-black-friday__ribbon"
- }, lang.discount), /*#__PURE__*/React__default["default"].createElement("div", {
- className: "sui-module-notice-black-friday__body"
- }, /*#__PURE__*/React__default["default"].createElement("div", {
- className: "sui-module-notice-black-friday__content"
- }, children), hasLink && /*#__PURE__*/React__default["default"].createElement("a", {
- href: link || '#',
- target: "_blank",
- className: "sui-module-notice-black-friday__link"
- }, lang.linkLabel))));
+ }), hasDiscount && /*#__PURE__*/React__default["default"].createElement(Ribbon, _extends({
+ sourceLang: {
+ off: lang.off
+ }
+ }, hasDiscount && {
+ discount: discount
+ })), /*#__PURE__*/React__default["default"].createElement(Content, _extends({
+ action: action
+ }, hasIntro && {
+ intro: lang.intro
+ }, hasTitle && {
+ title: lang.title
+ }, hasPrice && {
+ price: price
+ }, hasDiscount && {
+ discount: discount
+ }), children)));
+}; // Check if element is undefined.
+
+var isUndefined = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(element)) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
};
exports.NoticeBlack = NoticeBlack;
diff --git a/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.esm.js b/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.esm.js
index 7eaf9d0f..c5777d38 100644
--- a/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.esm.js
+++ b/packages/shared-notifications-black-friday/dist/shared-notifications-black-friday.esm.js
@@ -350,7 +350,154 @@ BlackFriday.Link = styled.a.attrs(function (_ref) {
};
})(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n[class*=\"sui-2-\"] .sui-wrap & {\n\tcursor: pointer;\n\tdisplay: inline-block;\n\tmargin: 0;\n\tpadding: 5px 30px;\n\tborder: 0;\n\tborder-radius: 30px;\n\tbackground: #4DFD89;\n\tbox-shadow: none;\n\tcolor: #222;\n\tfont-size: 13px;\n\tline-height: 30px;\n\tfont-weight: bold;\n\ttext-decoration: none;\n\ttransition: 0.2s ease;\n\n\t&:hover,\n\t&:focus {\n\t\tbackground: #fff;\n\t\tcolor: #222222 !important;\n\t}\n\n\t&:focus {\n\t\tbox-shadow: 0 0 10px 0 rgba(255,255,255,0.3);\n\t}\n\n\t@media ", " {\n\t\tdisplay: block;\n\t\tflex: 0 0 auto;\n\t}\n}\n"])), minDevice.laptop);
-var _excluded = ["link", "onCloseClick", "sourceLang", "children"];
+var Ribbon = function Ribbon(_ref) {
+ var discount = _ref.discount,
+ sourceLang = _ref.sourceLang;
+ var hasDiscount = !isUndefined$2(Math.floor(discount)) ? true : false;
+ var setDiscount = !isUndefined$2(Math.floor(discount)) ? discount.toString() + '%' : 0;
+ var lang = Object.assign({
+ off: 'Off'
+ }, sourceLang);
+ return /*#__PURE__*/React.createElement(React.Fragment, null, hasDiscount && /*#__PURE__*/React.createElement("div", {
+ className: "suim-black__ribbon"
+ }, /*#__PURE__*/React.createElement("span", null, setDiscount), /*#__PURE__*/React.createElement("span", null, lang.off)));
+}; // Check if element is undefined.
+
+
+var isUndefined$2 = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(element)) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
+}; // Publish required component(s).
+
+var Content = function Content(_ref) {
+ var intro = _ref.intro,
+ title = _ref.title,
+ price = _ref.price,
+ discount = _ref.discount,
+ action = _ref.action,
+ children = _ref.children;
+ var hasIntro = !isUndefined$1(intro) ? true : false;
+ var hasTitle = !isUndefined$1(title) ? true : false;
+ var cta = Object.assign({
+ label: 'Get now',
+ link: ''
+ }, action);
+ return /*#__PURE__*/React.createElement("div", {
+ className: "suim-black__promo"
+ }, /*#__PURE__*/React.createElement("div", {
+ className: "suim-black__content"
+ }, hasIntro && /*#__PURE__*/React.createElement("span", {
+ className: "suim-black__intro"
+ }, intro), hasTitle && /*#__PURE__*/React.createElement("h2", {
+ className: "suim-black__title"
+ }, title, /*#__PURE__*/React.createElement(ShowPrice, {
+ price: price,
+ discount: discount
+ })), children), '' !== cta.link && /*#__PURE__*/React.createElement("a", {
+ href: cta.link,
+ target: "_blank",
+ rel: "nofollow",
+ className: "suim-black__button"
+ }, cta.label));
+}; // Return price.
+
+
+var ShowPrice = function ShowPrice(_ref2) {
+ var price = _ref2.price,
+ discount = _ref2.discount;
+ var hasDiscount = !isUndefined$1(discount, 'number') ? true : false;
+ var hasPrice = !isUndefined$1(price, 'number') ? true : false;
+ var getDiscount = discount / 100;
+ var oldPrice = price;
+ var newPrice = price - price * getDiscount;
+ return /*#__PURE__*/React.createElement(React.Fragment, null, hasPrice && hasDiscount && /*#__PURE__*/React.createElement(React.Fragment, null, " ", /*#__PURE__*/React.createElement("s", null, "$", oldPrice), " ", /*#__PURE__*/React.createElement("strong", null, "$", newPrice)), hasPrice && !hasDiscount && /*#__PURE__*/React.createElement(React.Fragment, null, " $", oldPrice));
+}; // Check if element is undefined.
+
+
+var isUndefined$1 = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(Math.floor(element))) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
+}; // Publish required component(s).
+
+function styleInject(css, ref) {
+ if (ref === void 0) ref = {};
+ var insertAt = ref.insertAt;
+
+ if (!css || typeof document === 'undefined') {
+ return;
+ }
+
+ var head = document.head || document.getElementsByTagName('head')[0];
+ var style = document.createElement('style');
+ style.type = 'text/css';
+
+ if (insertAt === 'top') {
+ if (head.firstChild) {
+ head.insertBefore(style, head.firstChild);
+ } else {
+ head.appendChild(style);
+ }
+ } else {
+ head.appendChild(style);
+ }
+
+ if (style.styleSheet) {
+ style.styleSheet.cssText = css;
+ } else {
+ style.appendChild(document.createTextNode(css));
+ }
+}
+
+var css_248z = "/** Import required font: Lalezar */\n@import url(https://fonts.bunny.net/css?family=lalezar:400);\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\tposition: relative;\n\tpadding: 0 24px 24px;\n\tborder-radius: 8px;\n\tbackground-color: #051F19;\n\tbackground-image: linear-gradient(180deg, #1A1A1A 0%, #051F19 100%);\n}\n\n/** Element: Close Button */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_sui-button-icon__1Rlcp {\n\tposition: absolute !important;\n\ttop: 24px;\n\tright: 24px;\n\tmargin: 0 !important;\n}\n\n/** Element: Ribbon */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG {\n\tdisplay: inline-block;\n\tpadding: 24px 16px;\n\tborder: 0;\n\tborder-radius: 0 0 16px 16px;\n\tbackground: #F6E8D6;\n\tcolor: #051F19;\n\tfont: 400 30px/32px 'Lalezar';\n\ttext-transform: uppercase;\n\ttext-align: center;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG span {\n\tdisplay: block;\n}\n\n/** Element: Promo Container */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\tmargin-top: 24px;\n}\n\n/** Element: Intro */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__intro__2DL2J {\n\tdisplay: block;\n\tmargin: 0 0 8px;\n\tcolor: #008A0E;\n\tfont: 400 16px/22px 'Lalezar';\n\tletter-spacing: 0.13px;\n\ttext-transform: uppercase;\n}\n\n/** Element: Title */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT {\n\tmargin: 0 0 8px;\n\tcolor: #F1E3D1;\n\tfont: 400 28px/30px 'Lalezar';\n\tletter-spacing: 0.08px;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT s {\n\tposition: relative;\n\tcolor: rgba(241, 227, 209, 0.7);\n\ttext-decoration: none;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT s:before {\n\tcontent: \" \";\n\twidth: 105%;\n\theight: 2px;\n\tposition: absolute;\n\tbottom: 15px;\n\tleft: 0;\n\tbackground: #F1E3D1;\n\ttransform: rotate(-10deg);\n\ttransform-origin: bottom left;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT strong {\n\tcolor: #F1E3D1;\n}\n\n/** Element: Description */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p {\n\tcolor: #F1E3D1;\n\tfont-size: 15px;\n\tline-height: 24px;\n\tletter-spacing: 0.1px;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p {\n\tmargin: 8px 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:first-child {\n\tmargin-top: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:last-child {\n\tmargin-bottom: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p:last-child {\n\tmargin-bottom: 0;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r p small {\n\tmargin: 0;\n\topacity: 0.8;\n\tcolor: #F1E3D1;\n\tfont-size: 12px;\n}\n\n/** Element: Link */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5 {\n\tcursor: pointer;\n\tmargin: 0;\n\tpadding: 0;\n\tborder: 0;\n\tbackground: transparent;\n\tcolor: #12AB21;\n\tfont-size: inherit;\n\tline-height: inherit;\n\tfont-weight: 600;\n\ttext-decoration: underline;\n\ttransition: 0.2s ease;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5:hover {\n\tcolor: #15d629;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__link__36xp5:focus {\n\topacity: 0.8;\n}\n\n/** Element: CTA Button */\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\tcursor: pointer;\n\twidth: 100%;\n\tdisplay: block;\n\tmargin: 16px 0 0;\n\tpadding: 7px 30px 8px;\n\tborder: 2px solid transparent;\n\tborder-radius: 15px;\n\tbackground: #008A0E;\n\tcolor: #FFFFFF;\n\tfont-size: 15px;\n\tfont-weight: 600;\n\tline-height: 18px;\n\tletter-spacing: -0.4px;\n\ttext-decoration: none;\n\ttext-align: center;\n\ttransition: 0.2s ease;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:hover,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:active,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\toutline: none;\n\tbox-shadow: none;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:hover,\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\tbackground: #FFFFFF;\n\tcolor: #1A1A1A;\n}\n\n[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V:focus {\n\tborder-color: #008A0E;\n}\n\n@media (min-width: 783px) {\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t}\n\n\t/** Element: Ribbon */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__ribbon__1--fG {\n\t\tflex: 0 0 auto;\n\t}\n\n\t/** Element: Title */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 h2.shared-notifications-black-friday_suim-black__title__-GMUT {\n\t\tline-height: 22px;\n\t}\n\n\t/** Element: Promo Container */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\t\tmin-width: 1px;\n\t\tflex: 1;\n\t\tmargin-top: 0;\n\t\tmargin-left: 24px;\n\t\tpadding-top: 32px;\n\t}\n\n\t/** Element: CTA Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\t\twidth: auto;\n\t\tdisplay: inline-block;\n\t}\n}\n\n@media (min-width: 1200px) {\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 {\n\t\tpadding-right: 60px;\n\t}\n\n\t/** Element: Close Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_sui-button-icon__1Rlcp {\n\t\ttop: 20px;\n\t\tright: 20px;\n\t}\n\n\t/** Element: Promo Container */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__promo__33o2_ {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t/** Element: Content */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 .shared-notifications-black-friday_suim-black__content__16F_r {\n\t\tmin-width: 1px;\n\t\tflex: 1;\n\t}\n\n\t/** Element: CTA Button */\n\t[class*=\"sui-2-\"] .shared-notifications-black-friday_sui-wrap__2CWkF .shared-notifications-black-friday_suim-black__3KmU4 a.shared-notifications-black-friday_suim-black__button__1ex7V {\n\t\tdisplay: block;\n\t\tflex: 0 0 auto;\n\t\tmargin-left: 32px;\n\t}\n}\n";
+styleInject(css_248z);
+
+var _excluded = ["price", "discount", "action", "content", "onCloseClick", "children"];
function checkRTL() {
var suiBody = document.body;
@@ -377,9 +524,11 @@ function checkSuiWrap() {
}
var NoticeBlack = function NoticeBlack(_ref) {
- var link = _ref.link,
+ var price = _ref.price,
+ discount = _ref.discount,
+ action = _ref.action,
+ content = _ref.content,
onCloseClick = _ref.onCloseClick,
- sourceLang = _ref.sourceLang,
children = _ref.children,
props = _objectWithoutProperties$1(_ref, _excluded);
@@ -407,11 +556,15 @@ var NoticeBlack = function NoticeBlack(_ref) {
};
var lang = Object.assign({
- discount: '50% Off',
- closeLabel: 'Close',
- linkLabel: 'See the deal'
- }, sourceLang);
- var hasLink = null !== link && '' !== link;
+ off: 'Off',
+ intro: '',
+ title: '',
+ close: 'Close'
+ }, content);
+ var hasIntro = !isUndefined(lang.intro) ? true : false;
+ var hasTitle = !isUndefined(lang.title) ? true : false;
+ var hasPrice = !isUndefined(price, 'number') ? true : false;
+ var hasDiscount = !isUndefined(discount, 'number') ? true : false;
React.useEffect(function () {
setRTL(checkRTL);
setMonochrome(checkSuiWrap);
@@ -420,24 +573,58 @@ var NoticeBlack = function NoticeBlack(_ref) {
rtl: isRTL,
monochrome: isMonochrome
}), /*#__PURE__*/React.createElement("div", _extends({
- className: "sui-module-notice-black-friday__container"
+ className: "suim-black"
}, props), /*#__PURE__*/React.createElement(ButtonIcon, {
color: "white",
icon: "close",
iconSize: "md",
- label: lang.closeLabel,
+ label: lang.close,
onClick: closeOnClick
- }), /*#__PURE__*/React.createElement("div", {
- className: "sui-module-notice-black-friday__ribbon"
- }, lang.discount), /*#__PURE__*/React.createElement("div", {
- className: "sui-module-notice-black-friday__body"
- }, /*#__PURE__*/React.createElement("div", {
- className: "sui-module-notice-black-friday__content"
- }, children), hasLink && /*#__PURE__*/React.createElement("a", {
- href: link || '#',
- target: "_blank",
- className: "sui-module-notice-black-friday__link"
- }, lang.linkLabel))));
+ }), hasDiscount && /*#__PURE__*/React.createElement(Ribbon, _extends({
+ sourceLang: {
+ off: lang.off
+ }
+ }, hasDiscount && {
+ discount: discount
+ })), /*#__PURE__*/React.createElement(Content, _extends({
+ action: action
+ }, hasIntro && {
+ intro: lang.intro
+ }, hasTitle && {
+ title: lang.title
+ }, hasPrice && {
+ price: price
+ }, hasDiscount && {
+ discount: discount
+ }), children)));
+}; // Check if element is undefined.
+
+var isUndefined = function isUndefined(element) {
+ var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
+ var isValid = 'undefined' !== typeof element;
+ var isNotEmpty = '' !== element;
+ var isNumber = 'number' === type;
+ var isBoolean = 'boolean' === type; // Check if element exists.
+
+ if (element && isValid && isNotEmpty) {
+ if (isNumber) {
+ if (Number.isNaN(element)) {
+ return true;
+ } else {
+ return false;
+ }
+ } else if (isBoolean) {
+ if ('boolean' === typeof element) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ }
+
+ return true;
};
export { NoticeBlack };
From 6bef2949964c704ad0afdc73f9823a2ec53540b8 Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Mon, 14 Nov 2022 16:13:21 -0500
Subject: [PATCH 12/19] =?UTF-8?q?=F0=9F=9A=80=20Publish=20changes.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- @wpmudev/shared-modules@1.0.0
- @wpmudev/shared-notifications-black-friday@1.1.0
- @wpmudev/shared-notifications-discount@1.0.2
- @wpmudev/shared-presets@1.3.2
- @wpmudev/shared-tutorials-list@1.2.1
- @wpmudev/shared-tutorials-slider@1.1.1
- @wpmudev/shared-tutorials@1.2.1
---
packages/shared-modules/package.json | 2 +-
packages/shared-notifications-black-friday/package.json | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/shared-modules/package.json b/packages/shared-modules/package.json
index 61c1b11b..57b6c699 100644
--- a/packages/shared-modules/package.json
+++ b/packages/shared-modules/package.json
@@ -38,7 +38,7 @@
"registry": "https://registry.npmjs.org/"
},
"dependencies": {
- "@wpmudev/shared-notifications-black-friday": "^1.0.3",
+ "@wpmudev/shared-notifications-black-friday": "^1.1.0",
"@wpmudev/shared-notifications-discount": "^1.0.2",
"@wpmudev/shared-presets": "^1.3.2",
"@wpmudev/shared-tutorials-list": "^1.2.1",
diff --git a/packages/shared-notifications-black-friday/package.json b/packages/shared-notifications-black-friday/package.json
index 7e823f2e..dbcc59ec 100644
--- a/packages/shared-notifications-black-friday/package.json
+++ b/packages/shared-notifications-black-friday/package.json
@@ -1,6 +1,6 @@
{
"name": "@wpmudev/shared-notifications-black-friday",
- "version": "1.0.3",
+ "version": "1.1.0",
"description": "WPMU DEV Shared Black Friday Notifications",
"keywords": [],
"author": "WPMU DEV (https://premium.wpmudev.org/)",
From 802991b64721b970fba70f4fee054ba8a97466fa Mon Sep 17 00:00:00 2001
From: Leighton <2328848+iamleigh@users.noreply.github.com>
Date: Wed, 16 Nov 2022 19:35:41 -0500
Subject: [PATCH 13/19] =?UTF-8?q?=F0=9F=8E=A8=20fix(black-notice):=20Use?=
=?UTF-8?q?=20`styled-components`=20for=20styles.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Return to previous method to show custom styles for the module.
---
.../lib/fonts/lalezar.woff | Bin 0 -> 119200 bytes
.../lib/fonts/lalezar.woff2 | Bin 0 -> 81792 bytes
.../lib/{img => images}/wave.png | Bin
.../lib/{img => images}/wave@2x.png | Bin
.../lib/shared-notifications-black-friday.css | 236 -----------
.../lib/shared-notifications-black-friday.js | 11 +-
...hared-notifications-black-friday__utils.js | 379 ------------------
.../lib/styles/black-friday__styles.js | 258 ++++++++++++
8 files changed, 264 insertions(+), 620 deletions(-)
create mode 100644 packages/shared-notifications-black-friday/lib/fonts/lalezar.woff
create mode 100644 packages/shared-notifications-black-friday/lib/fonts/lalezar.woff2
rename packages/shared-notifications-black-friday/lib/{img => images}/wave.png (100%)
rename packages/shared-notifications-black-friday/lib/{img => images}/wave@2x.png (100%)
delete mode 100644 packages/shared-notifications-black-friday/lib/shared-notifications-black-friday.css
delete mode 100644 packages/shared-notifications-black-friday/lib/shared-notifications-black-friday__utils.js
create mode 100644 packages/shared-notifications-black-friday/lib/styles/black-friday__styles.js
diff --git a/packages/shared-notifications-black-friday/lib/fonts/lalezar.woff b/packages/shared-notifications-black-friday/lib/fonts/lalezar.woff
new file mode 100644
index 0000000000000000000000000000000000000000..cd4223ce44100c34b5179fb2759eb1e7c00a70ea
GIT binary patch
literal 119200
zcmZ5mb8se4wEbe+8)IYJ*kogFY}>Z&jW)){wr$(C^+g*e-^=gS`|Hir>Dzt#+*@aA
zy5`n&wY!42H~
eEIReKoEc*iXtKQ^D90~
zHq#Np{Sq?0829g0C^~mX1+;*f
zgSjmLfSLsWKn(x@2>U|S1b@v9ogKck$bNBP{|~6h~{Mxtn8
zYWSrMEcuJW{sm6BB8F&-FXxwU^lMD|1q#>zXaWmc7mqJ}U(W>-2mqj$_WhtMwXrw;
z;^8m@0EkRqzD}sIAOl-Nk1x$&|LG(753n(8W_E_QrT{SeuYBOSUmBatEb)dM?44Zz
zU``eQ0LCEz!18*!>WbswWcn40ZSWNr{e?8%&w4(OEMo%`0|UT51P<@u!HaD->nK|f
zAc|SX>zxB!n)r?B-5ue=<#=WnnH
zRzM~zbn#d6|K2NPHMlqc8;}8j0)PYl0Ez+bUkdA)wg3W$H)thGZ_Kx@VE)HS#
z_4e)}{lz=LjlsPO^!bg6OU+DOE1FI~Lbk}a8Q&KuvbRHgJmKHM%*?EBcBf=u(21y4
z7d-}F8Hxg6_CYH4$f`=Swo(0wI%58`iA}BYw@Z@2fd=z1C_g}4qyp8r91IE*L#e>;
z2Fl{sY(^R;IT|L1_)jHr5h&w93E|to$au>9VHiP0=6te5T&0i@NbOkkj!(0hZSR?`
zt0te?u^tdlhx75|^z@{iwfUII-iS_bjl`ZH>zWQJ`K7K?Oe}@9erlsG19_3Icsg_$
z6peF7;Z(^l^LnR5&B5onL=Kq3arp#j=MvlnQu4|8U-s68@oVAPpNTBFqks*P*wKO_
zgb&_y1G_)GF7?OQc=n9O*K}j6ZDfy#={87r4A1pAU4*Q2ITQCtPW5Fl2t_s7$iT$N
zIZLN3-KbC2Wa(;xv|3NNv^`jU1=zV(lxO+~gOdm@7_wp;sp#D)e6
z@_jqjx1#0cgN2P}PTBK0JfmZo@5UqRF)?fjSq7CGMis_9yh_7o+!u-;j^*a-X&WR1
zlSbXSeet6_9mM!44&yux*+3>Na&Oab{DU?J-XA|MU#efU#n;7s+9jdKi7d(725xP0
zbY(V$20@$;xvA{N(MKd+5GMS0bdTI+EV1pm*P8dF-TH%B!woQEDE))0BV3VQ?+dsq
z9Xq`R|i!r@;{7y^0SO)j0FZ8s8%6ZS8G%cGQ|%4o><~G8E+U^Y$v~{
zhii3@xF)fV=!0oG_$TR2ufUZ0YTc*SD!hY+8N&|l}G6(;RD6-i9My->&W5n4lYe5
z`Dpyg2pREPX|J;cSHp`jGaCfzP|LnctB?KN)9fo8FzlagUgReob;H~z?$h$C#QXm$
zj)hxZwz*q++I(l<7YS%Ib9XwjuGnr0RLdh{k1`2Y&qR@Q!5CpC`uKJ&9R$-*w3^f{
zrl7K4y0H=3?|X-D&hb(cl3ph3
zjk6`ZTR8JlL`}00yqW`)gu%IF;kgd})ZVf*z5E!=!?x;$$I`
zKP5(=0@eFCP8WMo7QAzMk$0AXulCW}DAmLN_C&fFDuH0Na5_-SP(CQvT%tU5tgE~+
zy507E;2kF1U4o({^Y9I5JV-*6>VctVgzXALf}VWYb~qYv%M>eFIwktSM#g~84L){x
zDO9#)w58!%(eD#ltcy~{^AZ~;UCs^iTK*9kZAhp>vgTLFXLQ@IWO8Z8c
zd76;K_>zZ|?Ma)?6!i3x5zWa(jgEbcrvcM_my>-LMs+C6pKKHX)*ZTup*_$(`4vl1
z)}^Ze^GUK;=2)pU^<4&cstFrUr)GI6F!K0^)76jZ=x>kCC_GC;_pH-g(|4!%R`0cM
zGRV%@RYxBOMg7yg!;04onl3&0@k@Ikbe^0}%r}as__Y}OB(}CE_H-tb#+R%d5XW0v
z@{^qj$o{wVnS;vUcq){AUQJ}F{Pz%8x90EB)zPG$SHniKF^{F2GCyexm~Q@&nHgb
zot_J(t*s-=E1sx@MqCW^(8`&|5Jotm!{OxGZ&qucsR@+5K{C!|UBUFRa?5?=A>5%g
z{zyCLc*^4|Fvs`wzeY(z9oRS>laFLNM!n^ZZ++-3yB9G=y!UV?>;UL!<|wCJpPU*5
z%AC**OL9h@D)@k7{X&fOZ(O)iETlI_DJ|X2hWuqdR9c$kf?THB*|PDqio{_~GhRn(
z+h^KGfcLS!i{sX;nVs8|gqy*@B0Jt6+lVpu>q73BIUEY!m4R48p8E2S|9+Q7E|xvd
zhqqllrzY=^hP#o2e$gw_;Z^W*4ArkiO))rF*XgLFT4UVFM80Z^$;bQ@#PFm&$adge
zGKka@>6d8x~?;X#rq~R&J&*7o*
zvB|y{?TK@VsX{v+ha*4+;S%V}hfwLeTpe{3CE^I05qNVpP>Sdqcc45xJo?MELqpCV
ze)9f~KO|Yjgja#=>&x`Y75da|LM)tY%D*8%b?>b_+7{yr>w-NUFv!R8nayw-_SAWu
zOy1bRns5LbI*bIa7%~aO!}|(eYJc*}iAdoN{CZeU*HVtRgi_53HZq0#ACUuwt71X8GASB=pezl%$cB=p-RSwUQd(krajq
zkl=>ls3i1;j*vR2IQ@)#WUyr5;QJ*IY;pCm0~z7Fw4YJ3Ug1{CzphUSZ0+IwYVnYN#UaQVF${lx-Qr_h0tk
zq}P%aem3Sj&YQN2w~XyE$L&L24;8dU2p!Y?5(z2_3z0Imq^t|W?GtAp-;Cgb{uUfF
zHjGHVqhVCZzKok0V>?WAQ0O?^YOu*gmqBV)xVC9y?Z*C=iDy>bHmhU19sfH*8V!kD
zOKebrLhQ2g`pR%cQCyZk^*wl5bePHt9;lt@|Ut
zYe>){w~lF5C`FA9iNRKNz3$=U7oP!NTzRZ8i`y=)YVo?sFVU!C+^B--WU(>!EGHFH
zmaD%FE-7|O0T)gf*ZXDsQ>lvwN;9X0vJa
zW>9RaHU{FEEM|OceFTPaYzUL8W{!{*8h1-ho}q+ZD7k8|pR{jq;WrmN2R>)&|`N+Q+z{C&RNJ>aP2hpOUA;%W3Bn=`;{|)&a``Rd#CX6~S2MO>^|~@GI@@Scval>IeBC`dy*joui%eol=`n|G)kjLL0ei
ziNEGis3RFHmF7=}Z}A28{#;0{6ijF+vUvAIRDP>D{^wmuj?S8Qz&y-lKFtO<#fOC
zz~L*p)Beu)n&X$p_o^SBGBq;56T5(wdw`bpH*HLlfBpi0h=)<$Kv!=1NQ!^$V(h?@
zD07<4qj;Y_XUf@w5$A?KX9l5FaRd8~Om9-=;gaFVG=phH`{dn;=KW&3
zeRAvW@)Mc5djjSKwWs8=cI94>cn?L#Ejj+y@pIN%sE_Ie)4$N~mc_q6_m21lG51L5
zHur_?6TyF4|1{0nCx_|gXZN80Qqw2C{xO|TO3kh7RY%|VOZCn%{kHq9{f&1H|AC!5
z_YB_|p&P#t#*!Hfkx8d8odi)Eyw&40_KiT;b*3wAOA!!*!
z%EYh~)<0nQ5n37TQenH7PQ;3ya>1X)KfJ$ItUXnJEP)XxjSM9_ME>^LPkLS77A7nD
z%T=7P4Iy_37kPJAe4aWtucIYNH>EX^q*W0w86&P8s}Y&xF;v37F6DieS4ySJD`oDf
zRToVmsXk;kuZxc5Ety!FD#>)l;N^9Q7i$vR{q3AY7nc
zCu_25JH{PO=nR3!dVae%4a6M(p-B;K8i_gfOOtZKu=cI_j0;3-j%N_h^65_VR+I-$
zdtOBt60QiBq6F3Ffg7JkTmF~ViUg8F386^|#`Tu^2U>B<#{n~1^^?B9vm!APYGjy2
z$go8a6>4a)MVJM<1VW=2UE^?)MKEsTPx^h-_>x)Vt2r>jIk@aw_I465-8rPKga{(Z
z9|{jY>>v8rB*pa~MEwza8*n2q5&I1g`xFa}aKp%v&SszD*3yF8(!$C3<8f|jmkk*7
zMyx#`E^77cPmxw5rdC53R?GFj^VJga)!}#4qSzl0UY^Lh4$7Js#&}JcbmkMKPaP}~
zj+ECN9zactUPG7%R@0o6-t*t&(rn}VV0g12;o*XMV>Q&3ecfo|`(b5A=qr15H@$c5
zs|(6H4C7xHM9L@D_~S-yG*(LLe~+AH^%byS+_OL+Jm6cAVjHr+*CC!OYecDP#HO^0
zZ?O6QQ&=&$>kB
z2|w|^dj;jVQ@424^b{-b*sT-=U8E;7yzo5I!a-(i>tSDG_
zinO%-xZY7V&-_Zki!|xBxnrbjZ@v#7gE*O$=KF-?lT2E
zmI$fENH!&29YaK52Gp
z!<_08nep>e?kVDIDJwTXf#)a2OZ1!gA~=wSUVuOS_jltqaFE8IUE&GV=aD<#=Mg8Q
z&pH+9#U$1y%<62Ekl;;d`9$f)oPDh-+Im`(zX(kEU|Rdh^y9UZo@AeN0|vkqiL#~C
zGb5hq3z_P0kzr&%Zld&qjnw4U#ML)6k9O~ObeEIJ)CN86PvwK2;o{1n)Q9gLE_j~<
zyGd6+l|wk9t4q(@+JEAMe*Oe=7wL&gwwU;?gvDUz6LKey*<^x{)IWd&9*nhMAi9!@
z?dXq$VTCsp3JUp=B!9$QE=_ulHr@Vcq^+{RMjg)9hmLtuxw`(CVfhkI`(C@0_i^!Muz2$B&U!el{uDwV$Y&P2K_k!{4LlOBEuOc3vMzAiX&oqK`Vp
zzzqzMG2x|g#zl_sC4x#3a-)?uiI&oBHN<)x7
zp)V0Qjc^aPL3Uuisf!rc+8RDJr^68+5KQQg@o+|u3UEf}Gg0T{=S-cFr9G4pWj)^`
z%22Sj2$YC#$^L%kkQ9F=kQ585DNs45@1Zbt{1_4)uXf2n?4el}Dk3pf`uc_&-)#3e
zkWm|vlN;+FLJwyXAQB*sLE+=AW^-DzF|$|%YG@yELu#aRlh`0}I+`(OE?9ECfnmes
zk;#+9Z&-2#LqH^tOzzezh1QWX8wHC>42mCPrp8*4Y%|6|LyKdF#~uEL{hcUDvRd9t
zIygR9&=h>@e*yhxJ60BvF;i1{6<0?GAb>^%`=1trUN|%GJ@l|_M85RNPmqy;f!ecr
zuL`U&iw&UPD9nhG4jQ`HW0(yQ5#-!QO91jW)f)Bq2TBFmkq82QWqo7x$WmSL&zf;<
zhPk5+lEo&v-Sy2Bz_IaeI8$=K(
zQ%_HJg_Xb&Yw_SV=&4OMZO3h6zcW}}P?vNP(I042PD5s3HEkzTC}KKCm#Wc_F%=zf
zn_9bT`P}(O5fT2Dlv&nL6)8kjdre_GuNq?buj{)z&}!OGwgUDSHhi5Ma;SnWBX1c{
zXe(|}t@0pb7k3SuxrF5lsz`D)uHMVS?j&cfc}Hb(k&`KWa^4A7$7^f>d!?17w(4nD
z)shCYX7Qt&05I<;t~^4If$aM5DqDj5I{)SRZxGea
z?md^oRj@wss_(N0itSS?u)<%z>veBlA>PmGZQ!a#-9O{?zR=%wkn835zzl(o^CTaP
znS3{MDuI{t!(<>&Ko7(-3t$J#&7jxC5E^2f47#5{@~PMPi5;=;bre`;3#||{x|X7y`)}j
zBR;t&>wKrgdJ4=b-jc{H&p2}IK8X5_c|0y=`9h>yAYvo9HMY+d(azWbKX?OolPLdy
zly|s~SmK_W4UdXT{@PG5_5|qBdaxH4&PR0Z(TcGv|2x+pmD1x8R-b4OMD8Up{w8tt
zR8UKmu_e~QIp;$;u5bvIkr3@%&DQpMa(Ay?+XKZGui)u*as=CT?~zaGv
z9-b6$Ecj04`G$E}GHLclAa`g%lRrCjg+2${BNyR;VYWqh2iy;HmNQeoVQFgEv01QT
zY3BHzKyYerhoI{??d7XEpJs%@W#}^4-yhqIbIj
z?h($hI~a%US?px8^z+>!ef9EpP_DM3Z~kN>Xz4rouJJYL)Esd$ju?h&NX_i*;LVHSxcvf)MmbusJs9(NU-|HN&QSairI9zT6!F>p+KC$W5JY8~p
z(`)FdIeX!~uDSnk&Eo3a+I@x2-FEQB_{?-WKiRH}Jptd=_W1bm!E|{=sgY@5*MCH)
z*Jb?)^h(_h?Mj!(JmOk-rz7etxfb}?UI4DVKQ}dK`w-jQdPZk3ST)brEyc9lS=?bN(oT*#Iq`N2&Xu^>`T**%UXnV?u
z`{Mo#N)5`pyU(W#p@ym~V6l3m$hq}4J=A}%?}Xf81!0^{j0OM-<@tHnP+;Y)EV
z{y(aFZF@nf4zF&L#Dn>|SOi)mp1F
zFvqO4R(iE6K)ik+6D10vC4XOe3J?@9_A%i->rcz+HspP(lYieCu6{g^zbw%B0#bJ*
zPW-MdW5)8+r(u;?is7oMab;hlqWjO|!4%}=!8^CzGL?s8zs>n+*+NHLG4IR&-W?8!
z)k$uHIh6m{mjT>k|J(lUkdkLIRRrVos^jgdoh{Qt+d^@%7Z3vV=^0CM}Q?WKI
zE_rs1qAD@S3UZ7ZDY+c5bmp-YFWJlHj9&1{QgRNH&~Nnv1KRVy^KF|O`bN&EKl=_9
z)Ld??@PpcY3+pK73+)TfNF3>Z_57Q!EWxEaj&jYHC5UZQ!kClGideModw7RR&{L#|
z6Z0};o8y^}UewXSwZv$XdH3lw$yp^nE9w#xE%ZAmlCvi3+DxAi=rOV=RCkMLT$`56
zRG08-@&;
zZ%PixIoQuX9fO1QH0Wh}Bbf6MM>HaI={kkHGrYPDRc%B`cEm?Cj+{!`ZxNi?dTbU0
z36tIl+?rQR>e%P`e7j|8I$l=ZYzm)lYJnk=Z+qLh`aDAk$c6WMPr=z;Gask~@6A#l
zaZ(b!-T~cn$IMzgEaqf{8#MEd9zvJrTt8o7FC!n0cr!=d__OXDJ|4p)sjA{1_*_7A
z)5?>Mv<&fk97y4K(^C$1VJ8YIKQrt(70T0({E*+1t?2nOsIZ!bb^Lv!Ey;TOE7tMUcx5Z7tNCyu-u7M9wP;B0=}uOViFIwL`Ct
zvYu{6Y`L=O6kqfHvHzq(lpwaU$a>-+Vk
z9NxoF(4U`$=<(-J*G63v1W35xKdCti&TxGXL4X3)9NDjbj>9gPG@YRoY8_QBx9bg_
z6K;XFk`iO$nO=05a@`Q33#_cBSKSUGM$<
zan0LP;>?$
z_aLTH&CRUTGN-U>UmE;cNZw?YbYQAqJBg%1Kt65K3ifUI-BD*OMn{4{Q~cLD#Pm(y
zF^c{?L}%(}GJD>I1Iya_pCyWH@|!pk7)Uum+=5Zohk$w#p>Ngcn3(~du5d1ioX7+8
z?gROX@B^EhE}pnoc{n$At&ulj=~NTxPEn~4-_@}w_nxGTcvFD3uYA)`%4Z}eQ9J|*
zZ%sWIZW53^KFKFcJ>kE-8P)vPg6)xsT!C0pSD8nA4JbBAE!zoN`}`T&m)J(
zDk1_+)h>w+gCQ(bcg%ct@XLLM{Z|s0vV4uP!xp+SjA%@)9&763+z#y-6DWIDh^ZYF
zqOJ2u6D=64;?Lf=so!&V;);A2vlA~@FK%Cq2c!LcIA0ZAI?AGYwAn55et&(F7m
zRytV;eW(`+2e9Y-t%pTC>K65~D_g-+FOw>_<%s&GZ|%koT&dHWM5{Ik5=B=#f3kb4
z{j7t-=orJV?f6vz10aSxOs_~nNy6(jr@9oT(+d35{TZ4F)f;C5Mp$bEH%2KX7~w$#
zq%;e1v|107qqJ+W$ZI8R$2=1lgb*jx*z`1nnZXw*sNKc$@4sPl@Nu%WjSR^rS!~X?
z%`2gs%b-4Lkk*NW>XZ-Pf<|aIxvFnDj573!`E@A?XPV{qZ@z1eD}Rz}=V_|vX$7Jz
zvTl8Kl$wY~x#ww;w*(zkC!oWQNw8ukijy%B5A=LmJ$E~$&AA_)+Y6(;zOGeAtwKiF
z#(6M3A*YTOp6J{|2_z>kg-zp%Szc6gZG{~{LB_;j5!sa`*!$fp7nyc4W=BF2YB}g=
z!DT=~D^D&m`zdCvt@T>Lkn$%-QihVQZ*A)NU5_u!^yti-Z`T-0jXOlO9Q;(WM{Ob?
zS+ekXl$le`C!q6+o5@Q`qUuoZ%w>@*kj|UZOrmD;QMcLYV7o7H7dr3&cz751I+Qna
zf)tjVX_cbU+Q_osQ!{l0??&0x?c(SR`b_wxeqrM1RB9bNBQ)%ZsZeg~4O{crq02L*
z>%u4Sucuj^R+C
zJ6%sIK7BOHU%&Sxr`|nnqH-Hpbz_Ykl$lxT$?q(_Y<1uch7Oc&p^>6O#Jv>IhcBkHRW^DQRqqX
zRP&RI3i67Mk%qk#!|I-Qu7RcTvg^Pc`Jt;?*H}dY;oO0X+i%=hff=c`51g-Acx?FwYYIs9%p=27FV)UrY+x?gIEbcG
zk<7kgG?;u7E_g9Mc$o0S0&4iY-AAw5cKi!C6D}oHl-ljW;?nkl&R3ay_I@`Xz_L^>
zn~l05E5X$UXAWJMBZC1GKqR$hG#o!a{s9eq{UG}!X(aWg7zHh+orV8ZJs2T2W
zfKg@Dp^fanqj9)?g}Y*@9bm&(+`4CKGu%+_dbxQxJFG7IlYi*=JII!t+xj4V||>Z$wb?gVAOmDI-Z%5+FKA7^~HRNIXo*fuWo@wi>DnpX7c
zK4tJPP9Cqkv-$^Nm|uW5S+E(Uv0=<;{OEmRCcMhPfn
zpCHWQ*88(Y3K+bQZvgNYXyxACgh`n$Q=k3$wkZi8?Wkamq(}vrV#-jm?f1^_mm@GJ
zwqEO=lgYH}2RE`60WCXmEso`#-!k7gK9TUCEjfa#%hRufUj+at`AQ&e2Om^8?oR+8
zYeWt%oN{+bZqbTu-*hq+sxb9$xI$wzj~J$;u~8BS>y4@e=pM*Sdg)$bT|^q?#L>8w
zHI9ar_qDQ(?Zqa6-RpmH)o8{ChM7|;lf{y>p$a(!JI?=fpE^%`&0eVWa};&{302B<
zOx91#*Q4*+XTLFgY6tYdnOaHFY9G)5cr#4IVzYUmjWAeW)*SDnLgvR!pg>nq7YoF?
zzTO`~W4$Tr(|;@2{NJ{ON^bTQy{=7lVECW%AuEwhmULFF!94b8i107$i#f*%XHsqC
z{`kP@cS50Vt#sbeVj&uQOsF%GGogG~XpSP^7sOverp{xbUOPzioyZaQ8j(LOA;)
z9m_v?{j5TH)cOrZYXX0$5(MS;Llv*aQ7jr$?97C{(l&ds(Uq1`4Qc+=IC<{kR+$F6
z$F;ASFtAD|TROI)gKNIi)&<`m&U=_sVQ8XXhfp9s*U)Qm{mfZPdd9O-j<%}YBZ#pL
zydlUtEUrWs#>%dV%;cZ8FC&$)cydNZMjD#stGBtiJLATZ=BQ;)T~kHc)%7%X$2rrP
ze_!YN@h84ly5csrcy<$Kyv*Jxg^d7ZNro7?YLc-6ini$GT7Qr^TU|>ehkm|5N4rs>
zFEiFDT#^&tws5X=Zg*Kv$GxJrf<(oD=`Sr97tezyk8eG)FGCpM#jHxpbT3_N0LEM)
zeGnz1??D_!3Gn?7yuxCXe;gH9@b~2MA&zVhA=DpnHU)|h`=YI`DtCG1R7dv@J>Z{C
zz7Zd?(~mR#Y}&i&-c9CrusLTnD)(4@8&046j0o;If{r6xj|(S7Cwc=Fqqf35@TVSf
zj{T3b4dDZ%UYy)=Me$^`IOwZfkQO84@}}s?eiTrvt1E5#nADb$;(-lV`7bW$IhbQ6
zPRWfA$KFoRDTNe?QCqZ~ABn4tFbxot(K=U?E$Y&J^0_?>?5zc^Mvw@p&B^Fv&A;yO
z_nO!2w)Y*lFW->_C3dQ-oA_jt`dbiFa_48L#ysbP)&9zzT3jh2nzivN(3`Oh|G^^3
zt{SYTkR?sy-7|cIOlKJM=?xR9#HO!hRIH)!Bu4+aU`JP~0jFA~*!D=FSUx6~gkQ4K
zdxLRi)0`&v#>&H2x{H)fQ9~?*+KYDt$??a@xmk}16)QWlSS4s)_g{4Rj~|h?O-8@h
zYkI7;FT$$3v4RS4?XT#tqP9AB<*O48<>+X!s78+1Ue+TcBa;g3yD2yJPc7T_nK&;!
zX1?dkoT5{N2S3>Ou5{N8Kqv?ADY|P5QbksUBsmtB7J4D%Aj{CJYzXlCUY(v^4vw{q
zalD1SF>Sem{=7PtDWhh~(+w!S)Nk^e2?EPq1NI8tk$0dUpk4h2XsJIaU+abB3QJ7Tn=PmPS
zsFxaiQWlH?8_^pE!MX4SMKxtXS;#>S(&Vi}_lO|5DW8rpZzwJ2jc@s-ar{J3oiS>B
z5o$b&wL_B2@1N+-@)CE?2|Q*_Al9lvVax$o`RK6|urfKT+*_VbBdqOEY_d0qu`
zU@t(ms!8c2`r%0gL0ltU!we(3j`+L@&(3ia680`@SPCAUBNbYQ?DL+j?e;lzxzhcJ
z+%Q0>ZHz#ZZqp+Mt!2;cIWYB;RdL6)wutpoKJnF)Oe*=fsc*!Y83iE}stMtClCd!3
z(*RqT$PBfB2#EteLUUc)OlXYreU_>Fbt!j+i5y~uxcfW<|1?b{;Da{_W4>uH(U{Vc
zlVE_~xY32m52%pidCZU3>iBq$v*=5PN161rM5`wI9g+J{w!E+eG?<8A9CiG8E1MB@
ztdZVhA2viAroIb57Ne_Q_||+)n?4g`7N42jys8*FLU$o_=XpB)VtB$_*T!WwQf#Cj
z#*<>W^NQOkyp!j}PMz~s*2cn8RX0Y-9hjj>Lq~GpwQz)hq89)f>)io;4Apes!5?rj
zW53eG43TniK$7VGSXL1|h4Tr|5wxHS*5Luz5?VY24T>?T=BaSY#y2n?vZ6WlaZs{r
zrJ*A@AvRqbhR*Tkoe3X#(ZUl&$Sx0;5GE`I!AjosuFLS+mM}AAtiUI$S~!2N*nRPn
zmf|-HJSR~;cP@=X)Hqk|j9L1=;NW$iXO)7rq+&t!3-N8NyoTT;DDM6wg{19nEh%fn
z-uZ=a2W!3SA8{WWQ~SmIQDqVy2i~W`u-JIO$oqp1a(#
zhkP&RU^ZI)Kh#-oYK|U?gj%1M^kXkxq1p(hL-2+&{yBwxl;>5_?*FVjJBq$;G@>2T
z1d!6R$Y4G=<@&Z7=J(~fb-4kUcf@b8spH?<4PyVF%egmhL1gAsi9FLq}kkQ(vUst20%>iBnl`ZEL^6Shdv@)K{?
zUWW|r>F}RR$9zKoQxDq%~M@BFC+T
zV@yRUTazY@pU{9gvxEnSM_J2sPzS7Yy-?+te}<*Pm+)f0P-eksE68#ZU_8q&t=#Z*
zn8J;O3>|P}p(j&9ps%F+U{ynv3jZ`)q^W?>!T3nB+y(R=+-%$5*gp~zcnlP&{SvA|;+$P5A?*IH?S*6Vk
zfc{(xJPp__j0BR20_i8B<*RP{NY>7|on_HB6nVG3~gUV4_y??>#y&$^5_
zIBE|>mR4yRKA;Ax{5E4nb?bI}W%u;>^I9@yZf>~%D+wj|yW?lFj}AY#-aT4*<}V-x
z&ln;wD%$Yqfb83dOU0JyzOt&(Wyvc`5*k8
znuFcy8zeTANA0LWD30FY-hRwFKbSJQ7=5W57Ku}lC0;byIzu3%!i!YvAI(j%ei9aI
zB-iGH*b%g-mci(}vJpjkzGInm>bkiXg{GGBwU5HA;u^kMp^*pWDfH(4wQf%vZS^u>
zBXvlM#)(;ajm|>1qcNcLhAaOrnI2XUbo21wF;P1uCGMGnsto)+q_igZ+S>#(<*;K6
z-zto_Ct^WC#pBzVN%$uj;PP
zvcI^|C(RL*z=ZtAT=}M{_2LJlhKpnl13NXPTb70RQ)nB*i*SBwHX(d`6AJ4=K%X3h
z!dDe-{O;+Rp0`*T5R%$1|8yy}nn1De{hz@6i;5_XA;z}L&ERdwgtwWC5f%%a=#pNz
z4Z>ry_wd!;+J$=7-807Wu0{k-ThrJwGR}+x8~YRAyY(sr%I|EHMFRL!Nk3vV;nn<4
zHP>z>t0-BeJl1Wk`OEQ)ccL6YoKSH~vAe;n+8$&1m~LV=LeK1p
z7Lr!wk#6%e71ba7D574`&+tqZ?2D2Utk8S+0fsm&gNqmO?3!94)Jf7}dkKB4+Qxaw
zW#wk1#<3)Vk>6#xxT&OT$7Fr_*$#>WjJML2&G(6bW8JzPWC!F=AsrjlSdI$eTv>?T
z)i|SnCpk*gb8cSHo7Q}N$P8bVyfNLe( Ls3otC?dWgJG-%TE(HFn{zJ(k_
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