avada-components-seoon 2.1.2 → 2.2.0

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.
@@ -8,6 +8,7 @@ export interface BannerCardProps {
8
8
  onDismiss: (appId: AppIdKeys) => void;
9
9
  onInstallClick?: () => void;
10
10
  locale?: string;
11
+ withCard?: boolean;
11
12
  }
12
13
  /**
13
14
  * The card without its own AppProvider, so a caller rendering several of them
@@ -1 +1 @@
1
- {"version":3,"file":"BannerCard.d.ts","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,aAAa,EAA0B,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,aAAa,CAAC;IACnB,KAAK,EAAE,SAAS,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAoCvD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAIhD,CAAC"}
1
+ {"version":3,"file":"BannerCard.d.ts","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EAAE,aAAa,EAA0B,MAAM,gCAAgC,CAAC;AACvF,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,aAAa,CAAC;IACnB,KAAK,EAAE,SAAS,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAC;IACtC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAiEvD,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAIhD,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AppProvider, Button, LegacyCard, Text, Thumbnail } from '@shopify/polaris';
3
- import { XIcon } from '@shopify/polaris-icons';
3
+ import { ExternalIcon, XIcon } from '@shopify/polaris-icons';
4
4
  import { v4 as uuidV4 } from 'uuid';
5
5
  import { getUTMParams } from '../../helpers/getProxyEndPoint';
6
6
  import { resolveLocalizedString } from '../../hooks/useFetchBannerData';
@@ -8,13 +8,17 @@ import { resolveLocalizedString } from '../../hooks/useFetchBannerData';
8
8
  * The card without its own AppProvider, so a caller rendering several of them
9
9
  * (BannerCarousel) can wrap the whole set in a single provider.
10
10
  */
11
- export const BannerCardContent = ({ app, appId, isOutsideApp = false, onDismiss, onInstallClick, locale = 'en', }) => {
11
+ export const BannerCardContent = ({ app, appId, isOutsideApp = false, onDismiss, onInstallClick, locale = 'en', withCard = true, }) => {
12
12
  const handleInstallClick = () => {
13
13
  const url = isOutsideApp ? `${app.url}&utm_source=${getUTMParams(window.location.origin)}` : app.url;
14
14
  window.open(`${url}&search_id=${uuidV4()}`);
15
15
  onInstallClick?.();
16
16
  };
17
- return (_jsx(LegacyCard, { sectioned: true, children: _jsxs("div", { className: "AC-CrossAppBanner", children: [_jsx("div", { className: "AC-CrossAppBanner__Thumbnail", children: _jsx(Thumbnail, { size: "small", source: app.image, alt: "" }) }), _jsxs("div", { className: "AC-CrossAppBanner__Content", children: [_jsx(Text, { variant: "headingMd", as: "strong", children: resolveLocalizedString(app.title, locale) }), _jsx("br", {}), _jsx("div", { dangerouslySetInnerHTML: { __html: resolveLocalizedString(app.description, locale) } })] }), _jsx("div", { className: "AC-CrossAppBanner__Install", children: _jsx(Button, { onClick: handleInstallClick, children: resolveLocalizedString(app.actionLabel, locale) }) }), _jsx("div", { className: "AC-CrossAppBanner__Close", children: _jsx(Button, { icon: XIcon, variant: "tertiary", onClick: () => onDismiss(appId) }) })] }) }));
17
+ const artwork = (_jsxs("div", { className: "AC-CrossAppBanner AC-CrossAppBanner--Image", children: [_jsx("button", { type: "button", className: "AC-CrossAppBanner__Art", onClick: handleInstallClick, tabIndex: -1, "aria-hidden": "true", children: _jsx("img", { src: app.bannerImage, alt: "", loading: "lazy" }) }), _jsx("div", { className: "AC-CrossAppBanner__Cta", children: _jsx(Button, { icon: ExternalIcon, onClick: handleInstallClick, accessibilityLabel: `${resolveLocalizedString(app.actionLabel, locale)} — ${resolveLocalizedString(app.title, locale)}`, children: resolveLocalizedString(app.actionLabel, locale) }) }), _jsx("div", { className: "AC-CrossAppBanner__Close", children: _jsx(Button, { icon: XIcon, variant: "tertiary", onClick: () => onDismiss(appId) }) })] }));
18
+ const content = (_jsxs("div", { className: "AC-CrossAppBanner", children: [_jsx("div", { className: "AC-CrossAppBanner__Thumbnail", children: _jsx(Thumbnail, { size: "small", source: app.image, alt: "" }) }), _jsxs("div", { className: "AC-CrossAppBanner__Content", children: [_jsx(Text, { variant: "headingMd", as: "strong", children: resolveLocalizedString(app.title, locale) }), _jsx("br", {}), _jsx("div", { dangerouslySetInnerHTML: { __html: resolveLocalizedString(app.description, locale) } })] }), _jsx("div", { className: "AC-CrossAppBanner__Install", children: _jsx(Button, { onClick: handleInstallClick, children: resolveLocalizedString(app.actionLabel, locale) }) }), _jsx("div", { className: "AC-CrossAppBanner__Close", children: _jsx(Button, { icon: XIcon, variant: "tertiary", onClick: () => onDismiss(appId) }) })] }));
19
+ if (app.bannerImage)
20
+ return artwork;
21
+ return withCard ? _jsx(LegacyCard, { sectioned: true, children: content }) : content;
18
22
  };
19
23
  export const BannerCard = props => (_jsx(AppProvider, { i18n: {}, children: _jsx(BannerCardContent, { ...props }) }));
20
24
  //# sourceMappingURL=BannerCard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerCard.js","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCard.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAa,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC/F,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,EAAiB,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAYvF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA8B,CAAC,EAC3D,GAAG,EACH,KAAK,EACL,YAAY,GAAG,KAAK,EACpB,SAAS,EACT,cAAc,EACd,MAAM,GAAG,IAAI,GACd,EAAE,EAAE;IACH,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,eAAe,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QACrG,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,cAAc,MAAM,EAAE,EAAE,CAAC,CAAC;QAC5C,cAAc,EAAE,EAAE,CAAC;IACrB,CAAC,CAAC;IAEF,OAAO,CACL,KAAC,UAAU,IAAC,SAAS,kBACnB,eAAK,SAAS,EAAC,mBAAmB,aAChC,cAAK,SAAS,EAAC,8BAA8B,YAC3C,KAAC,SAAS,IAAC,IAAI,EAAC,OAAO,EAAC,MAAM,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,EAAC,EAAE,GAAG,GAChD,EACN,eAAK,SAAS,EAAC,4BAA4B,aACzC,KAAC,IAAI,IAAC,OAAO,EAAC,WAAW,EAAC,EAAE,EAAC,QAAQ,YAClC,sBAAsB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,GACrC,EACP,cAAM,EACN,cAAK,uBAAuB,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,GAAI,IACzF,EACN,cAAK,SAAS,EAAC,4BAA4B,YACzC,KAAC,MAAM,IAAC,OAAO,EAAE,kBAAkB,YAAG,sBAAsB,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,GAAU,GAC3F,EACN,cAAK,SAAS,EAAC,0BAA0B,YACvC,KAAC,MAAM,IAAC,IAAI,EAAE,KAA4B,EAAE,OAAO,EAAC,UAAU,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,GAAI,GAC9F,IACF,GACK,CACd,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAA8B,KAAK,CAAC,EAAE,CAAC,CAC5D,KAAC,WAAW,IAAC,IAAI,EAAE,EAAE,YACnB,KAAC,iBAAiB,OAAK,KAAK,GAAI,GACpB,CACf,CAAC"}
1
+ {"version":3,"file":"BannerCard.js","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCard.tsx"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useEffect, useState } from 'react';
3
- import { AppProvider } from '@shopify/polaris';
3
+ import { AppProvider, LegacyCard } from '@shopify/polaris';
4
4
  import { BannerCardContent } from './BannerCard';
5
5
  const DEFAULT_AUTOPLAY_SPEED = 5000;
6
6
  /**
@@ -25,6 +25,6 @@ export const BannerCarousel = ({ items, onDismiss, onInstallClick, locale = 'en'
25
25
  }, [total, isPaused, autoPlaySpeed]);
26
26
  if (!total)
27
27
  return null;
28
- return (_jsx(AppProvider, { i18n: {}, children: _jsxs("div", { className: "AC-CrossAppBannerCarousel", "aria-roledescription": "carousel", onMouseEnter: () => setIsPaused(true), onMouseLeave: () => setIsPaused(false), onFocus: () => setIsPaused(true), onBlur: () => setIsPaused(false), children: [_jsx("div", { className: "AC-CrossAppBannerCarousel__Stage", children: items.map((item, slideIndex) => (_jsx("div", { className: "AC-CrossAppBannerCarousel__Slide", "data-active": slideIndex === activeIndex, "aria-hidden": slideIndex !== activeIndex, children: _jsx(BannerCardContent, { app: item.app, appId: item.appId, isOutsideApp: item.isOutsideApp, onDismiss: onDismiss, onInstallClick: onInstallClick, locale: locale }) }, item.app.key))) }), total > 1 && (_jsxs("div", { className: "AC-CrossAppBannerCarousel__Nav", children: [_jsx("div", { className: "AC-CrossAppBannerCarousel__Dots", role: "tablist", children: items.map((item, dotIndex) => (_jsx("button", { type: "button", role: "tab", className: "AC-CrossAppBannerCarousel__Dot", "aria-selected": dotIndex === activeIndex, "aria-label": `Banner ${dotIndex + 1}`, onClick: () => setIndex(dotIndex) }, item.app.key))) }), _jsxs("span", { className: "AC-CrossAppBannerCarousel__Counter", children: [activeIndex + 1, " / ", total] })] }))] }) }));
28
+ return (_jsx(AppProvider, { i18n: {}, children: _jsx("div", { className: "AC-CrossAppBannerCarousel", "aria-roledescription": "carousel", onMouseEnter: () => setIsPaused(true), onMouseLeave: () => setIsPaused(false), onFocus: () => setIsPaused(true), onBlur: () => setIsPaused(false), children: _jsxs(LegacyCard, { sectioned: true, children: [_jsx("div", { className: "AC-CrossAppBannerCarousel__Stage", children: items.map((item, slideIndex) => (_jsx("div", { className: "AC-CrossAppBannerCarousel__Slide", "data-active": slideIndex === activeIndex, "aria-hidden": slideIndex !== activeIndex, children: _jsx(BannerCardContent, { app: item.app, appId: item.appId, isOutsideApp: item.isOutsideApp, onDismiss: onDismiss, onInstallClick: onInstallClick, locale: locale, withCard: false }) }, item.app.key))) }), total > 1 && (_jsx("div", { className: "AC-CrossAppBannerCarousel__Nav", children: _jsx("div", { className: "AC-CrossAppBannerCarousel__Dots", role: "tablist", children: items.map((item, dotIndex) => (_jsx("button", { type: "button", role: "tab", className: "AC-CrossAppBannerCarousel__Dot", "aria-selected": dotIndex === activeIndex, "aria-label": `Banner ${dotIndex + 1}`, onClick: () => setIndex(dotIndex) }, item.app.key))) }) }))] }) }) }));
29
29
  };
30
30
  //# sourceMappingURL=BannerCarousel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BannerCarousel.js","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCarousel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BannerCarousel.js","sourceRoot":"","sources":["../../../src/components/CrossAppBanner/BannerCarousel.tsx"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@
3
3
  display: flex;
4
4
  gap: 16px;
5
5
  align-items: center;
6
+ // keeps the absolutely positioned close button clear of the install button on short cards
7
+ padding-right: 24px;
6
8
 
7
9
  &.audit {
8
10
  .AC-CrossAppBanner__Thumbnail {
@@ -43,6 +45,7 @@
43
45
 
44
46
  @media screen and (max-width: 425px) {
45
47
  flex-direction: column;
48
+ padding-right: 0;
46
49
  }
47
50
  }
48
51
 
@@ -76,7 +79,6 @@
76
79
  display: flex;
77
80
  align-items: center;
78
81
  justify-content: center;
79
- gap: 10px;
80
82
  padding-top: 12px;
81
83
  }
82
84
 
@@ -112,13 +114,6 @@
112
114
  }
113
115
  }
114
116
 
115
- &__Counter {
116
- font-size: 12px;
117
- line-height: 16px;
118
- color: var(--p-color-text-secondary, #616161);
119
- font-variant-numeric: tabular-nums;
120
- }
121
-
122
117
  @media (prefers-reduced-motion: reduce) {
123
118
  &__Slide {
124
119
  transition: none;
@@ -129,3 +124,48 @@
129
124
  }
130
125
  }
131
126
  }
127
+
128
+ .AC-CrossAppBanner--Image {
129
+ display: block;
130
+ padding-right: 0;
131
+
132
+ .AC-CrossAppBanner__Art {
133
+ display: block;
134
+ width: 100%;
135
+ padding: 0;
136
+ border: none;
137
+ background: none;
138
+ cursor: pointer;
139
+
140
+ img {
141
+ display: block;
142
+ width: 100%;
143
+ height: auto;
144
+ border-radius: var(--p-border-radius-300, 12px);
145
+ }
146
+
147
+ &:focus-visible {
148
+ outline: var(--p-border-width-050, 2px) solid var(--p-color-border-focus, #005bd3);
149
+ outline-offset: 2px;
150
+ }
151
+ }
152
+
153
+ // Sits over the artwork's own left-hand text block. Percentages so it tracks the image
154
+ // as it scales; a differently composed artwork will need these nudged.
155
+ .AC-CrossAppBanner__Cta {
156
+ position: absolute;
157
+ left: 2.6%;
158
+ bottom: 11%;
159
+ }
160
+
161
+ .AC-CrossAppBanner__Close {
162
+ right: 8px;
163
+ top: 8px;
164
+ }
165
+
166
+ // Artwork is authored at 1900x500; below ~600px the baked-in text is unreadable,
167
+ // so the banner is hidden until design ships a portrait crop.
168
+ @media screen and (max-width: 600px) {
169
+ display: none;
170
+ }
171
+ }
@@ -3,6 +3,7 @@ export interface AppBannerItem {
3
3
  title: LocalizedString;
4
4
  description: LocalizedString;
5
5
  image: string;
6
+ bannerImage?: string;
6
7
  url: string;
7
8
  actionLabel: LocalizedString;
8
9
  key: string;
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchBannerData.d.ts","sourceRoot":"","sources":["../../src/hooks/useFetchBannerData.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,eAAe,CAAC;IACvB,WAAW,EAAE,eAAe,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,eAAe,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,sBAAsB,GAAI,OAAO,eAAe,EAAE,QAAQ,MAAM,KAAG,MAG/E,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE;QACX,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;SAC9B,CAAC;KACH,CAAC;CACH;AAED,UAAU,yBAAyB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,wBAAwB;IAChC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;CAChE;AAID,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,GAAQ,EACR,QAAe,GAChB,GAAE,yBAA8B,GAAG,wBAAwB,CA8B3D"}
1
+ {"version":3,"file":"useFetchBannerData.d.ts","sourceRoot":"","sources":["../../src/hooks/useFetchBannerData.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,eAAe,CAAC;IACvB,WAAW,EAAE,eAAe,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,eAAe,CAAC;IAC7B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,eAAO,MAAM,sBAAsB,GAAI,OAAO,eAAe,EAAE,QAAQ,MAAM,KAAG,MAG/E,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE;QACX,CAAC,OAAO,EAAE,MAAM,GAAG;YACjB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;SAC9B,CAAC;KACH,CAAC;CACH;AAED,UAAU,yBAAyB;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,wBAAwB;IAChC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;CAChE;AAID,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,GAAQ,EACR,QAAe,GAChB,GAAE,yBAA8B,GAAG,wBAAwB,CA8B3D"}
@@ -1 +1 @@
1
- {"version":3,"file":"useFetchBannerData.js","sourceRoot":"","sources":["../../src/hooks/useFetchBannerData.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,KAAK,CAAC;AAazB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAsB,EAAE,MAAc,EAAU,EAAE;IACvF,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACvE,CAAC,CAAC;AAwBF,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,GAAG,GAAG,EAAE,EACR,QAAQ,GAAG,IAAI,MACc,EAAE;IAC/B,MAAM,MAAM,GAAG,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5C,MAAM,OAAO,GAAG,KAAK,EAAE,QAAgB,EAA6B,EAAE;QACpE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,YAAY,GAAqB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAmB,MAAM,EAAE,OAAO,EAAE;QACnF,iBAAiB,EAAE,KAAK;QACxB,qBAAqB,EAAE,KAAK;QAC5B,iBAAiB,EAAE,KAAK;QACxB,kBAAkB,EAAE,KAAK;QACzB,gBAAgB,EAAE,WAAW;QAC7B,qBAAqB,EAAE,WAAW;KACnC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClB,OAAO;QACL,UAAU,EAAE,IAAI,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;QACpE,mBAAmB,EAAE,SAAS;QAC9B,UAAU,EAAE,KAAK;QACjB,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE;KAClC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useFetchBannerData.js","sourceRoot":"","sources":["../../src/hooks/useFetchBannerData.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,KAAK,CAAC;AAczB,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAsB,EAAE,MAAc,EAAU,EAAE;IACvF,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACvE,CAAC,CAAC;AAwBF,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,GAAG,GAAG,EAAE,EACR,QAAQ,GAAG,IAAI,MACc,EAAE;IAC/B,MAAM,MAAM,GAAG,QAAQ,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAE5C,MAAM,OAAO,GAAG,KAAK,EAAE,QAAgB,EAA6B,EAAE;QACpE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,YAAY,GAAqB,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC7D,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IAEF,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,CAAmB,MAAM,EAAE,OAAO,EAAE;QACnF,iBAAiB,EAAE,KAAK;QACxB,qBAAqB,EAAE,KAAK;QAC5B,iBAAiB,EAAE,KAAK;QACxB,kBAAkB,EAAE,KAAK;QACzB,gBAAgB,EAAE,WAAW;QAC7B,qBAAqB,EAAE,WAAW;KACnC,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClB,OAAO;QACL,UAAU,EAAE,IAAI,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;QACpE,mBAAmB,EAAE,SAAS;QAC9B,UAAU,EAAE,KAAK;QACjB,iBAAiB,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE;KAClC,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "avada-components-seoon",
3
- "version": "2.1.2",
3
+ "version": "2.2.0",
4
4
  "type": "module",
5
5
  "description": "A collection of React components built with Shopify Polaris",
6
6
  "main": "dist/index.js",