@sc-360-v2/storefront-cms-library 0.2.40 → 0.2.42

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.
@@ -0,0 +1,63 @@
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+
4
+ [data-div-type="element"] {
5
+ &[data-element-type="search"] {
6
+ width: var(--_sf-el-wh-st-mx, calc(1% * var(--_ctm-ele-nw-wh-vl, var(--_sf-nw-wh))));
7
+ margin: var(--_ctm-lt-mn, --_tst-lt-mn);
8
+ aspect-ratio: 1 / var(--_sf-aspect-ratio);
9
+ position: relative;
10
+
11
+ & > .wrapper {
12
+ display: flex;
13
+ align-items: center;
14
+ justify-content: center;
15
+ width: 100%;
16
+ height: 100%;
17
+ }
18
+
19
+ .search-element {
20
+ width: var(--_sf-el-wh-st-mx, 100%);
21
+ display: flex;
22
+ justify-content: center;
23
+ align-items: center;
24
+
25
+ .search-wrapper {
26
+ display: flex;
27
+ align-items: center;
28
+ width: 100%;
29
+ border: 1px solid var(--_ctm-border-color, #ccc);
30
+ border-radius: 4px;
31
+ padding: 5px;
32
+ background-color: var(--_ctm-bg-color, #fff);
33
+ }
34
+
35
+ .search-icon {
36
+ font-size: 16px;
37
+ margin-right: 5px;
38
+ }
39
+
40
+ .search-input {
41
+ flex-grow: 1;
42
+ border: none;
43
+ outline: none;
44
+ padding: 5px;
45
+ color: var(--_ctm-text-color, #333);
46
+ background: transparent;
47
+ }
48
+
49
+ .search-button {
50
+ display: var(--_ctm-btn-display, block);
51
+ padding: 5px 10px;
52
+ background: var(--_ctm-btn-bg, #007bff);
53
+ color: var(--_ctm-btn-text, #fff);
54
+ border: none;
55
+ cursor: pointer;
56
+ }
57
+ }
58
+
59
+ &[data-show-shadow="false"] {
60
+ --_show-shadow: none;
61
+ }
62
+ }
63
+ }
@@ -23,4 +23,5 @@ export interface CMSCartInterface extends Omit<CMSElementInterface, "attributes"
23
23
  };
24
24
  styles: CartStyleProperties;
25
25
  childrenStyles?: CommonStyleProperties;
26
+ content: string;
26
27
  }
@@ -27,4 +27,5 @@ export interface CMSImageInterface extends Omit<CMSElementInterface, "attributes
27
27
  };
28
28
  styles: ImageStyleProperties;
29
29
  childrenStyles?: CommonStyleProperties;
30
+ isMaximized?: boolean;
30
31
  }
@@ -0,0 +1,41 @@
1
+ import { CommonStyleProperties } from "../../../global/style-properties";
2
+ import { CMSHTMLAttributes } from "../../../global/attributes";
3
+ import { DisplayValue, ResponsiveBehaviourTypes } from "../../../global/types";
4
+ import { BuilderAttributes } from "../common";
5
+ export interface LayouterAttributes extends CMSHTMLAttributes {
6
+ role?: string;
7
+ ariaLabel?: string;
8
+ ariaDescribedBy?: string;
9
+ id?: string;
10
+ className?: string;
11
+ lang?: string;
12
+ }
13
+ export interface LayouterStyleProperties extends CommonStyleProperties {
14
+ minHeight?: string;
15
+ height?: string;
16
+ minWidth?: string;
17
+ maxWidth?: string;
18
+ maxHeight?: string;
19
+ gridArea?: string;
20
+ display?: DisplayValue;
21
+ boxSizing?: string;
22
+ gridTemplateRows?: string;
23
+ gridTemplateColumns?: string;
24
+ }
25
+ export declare const getDefaultStyles: () => LayouterStyleProperties;
26
+ export interface LayouterInterface {
27
+ variationId?: string;
28
+ attributes?: {
29
+ BUILDER?: Pick<BuilderAttributes, "dataDivType" | "dataType" | "dataElementType">;
30
+ HTML?: LayouterAttributes;
31
+ CUSTOM?: any;
32
+ };
33
+ styles?: LayouterStyleProperties;
34
+ editedStyles?: CommonStyleProperties;
35
+ children?: any;
36
+ responsiveBehaviour: ResponsiveBehaviourTypes;
37
+ childIds: any[];
38
+ uniqueKey?: any;
39
+ previewImage?: string;
40
+ isMaximized?: boolean;
41
+ }
@@ -0,0 +1,39 @@
1
+ import { CommonStyleProperties } from "../../../global/style-properties";
2
+ import { CMSHTMLAttributes } from "../../../global/attributes";
3
+ import { DisplayValue, ResponsiveBehaviourTypes } from "../../../global/types";
4
+ import { BuilderAttributes } from "../common";
5
+ export interface LayouterItemAttributes extends CMSHTMLAttributes {
6
+ role?: string;
7
+ ariaLabel?: string;
8
+ ariaDescribedBy?: string;
9
+ id?: string;
10
+ className?: string;
11
+ lang?: string;
12
+ }
13
+ export interface LayouterItemStyleProperties extends CommonStyleProperties {
14
+ minHeight?: string;
15
+ height?: string;
16
+ minWidth?: string;
17
+ maxWidth?: string;
18
+ maxHeight?: string;
19
+ gridArea?: string;
20
+ display?: DisplayValue;
21
+ boxSizing?: string;
22
+ gridTemplateRows?: string;
23
+ gridTemplateColumns?: string;
24
+ }
25
+ export declare const getDefaultStyles: () => LayouterItemStyleProperties;
26
+ export interface LayouterItemInterface {
27
+ variationId?: string;
28
+ attributes?: {
29
+ BUILDER?: Pick<BuilderAttributes, "dataDivType" | "dataType" | "dataElementType">;
30
+ HTML?: LayouterItemAttributes;
31
+ CUSTOM?: any;
32
+ };
33
+ styles?: LayouterItemStyleProperties;
34
+ editedStyles?: CommonStyleProperties;
35
+ children?: any;
36
+ responsiveBehaviour: ResponsiveBehaviourTypes;
37
+ childIds: any[];
38
+ uniqueKey?: any;
39
+ }
@@ -23,4 +23,5 @@ export interface CMSProfileInterface extends Omit<CMSElementInterface, "attribut
23
23
  };
24
24
  styles: ProfileStyleProperties;
25
25
  childrenStyles?: CommonStyleProperties;
26
+ content: string;
26
27
  }
@@ -23,4 +23,5 @@ export interface CMSScrollInterface extends Omit<CMSElementInterface, "attribute
23
23
  };
24
24
  styles: ScrollStyleProperties;
25
25
  childrenStyles?: CommonStyleProperties;
26
+ content?: string;
26
27
  }
@@ -0,0 +1,27 @@
1
+ import { CMSHTMLAttributes } from "../../../global/attributes";
2
+ import { CommonStyleProperties } from "../../../global/style-properties";
3
+ import { AlignSelfValue, BoxSizingValue, GlobalImageAttributes, GridAreaValue, HeightValue, ImageBuilderAttributes, JustifySelfValue, MaxHeightValue, MaxWidthValue, MinHeightValue, MinWidthValue, PaddingValue } from "../../../global/types";
4
+ import { BuilderAttributes, CMSElementInterface } from "../common";
5
+ export interface SearchStyleProperties extends CommonStyleProperties {
6
+ minHeight?: MinHeightValue;
7
+ height?: HeightValue;
8
+ minWidth?: MinWidthValue;
9
+ maxWidth?: MaxWidthValue;
10
+ maxHeight?: MaxHeightValue;
11
+ gridArea?: GridAreaValue;
12
+ boxSizing?: BoxSizingValue;
13
+ padding?: PaddingValue;
14
+ justifySelf?: JustifySelfValue;
15
+ alignSelf?: AlignSelfValue;
16
+ }
17
+ export declare const getDefaultStyles: () => SearchStyleProperties;
18
+ export interface CMSSearchInterface extends Omit<CMSElementInterface, "attributes"> {
19
+ attributes: {
20
+ HTML: Pick<CMSHTMLAttributes, GlobalImageAttributes>;
21
+ BUILDER: Pick<BuilderAttributes, ImageBuilderAttributes>;
22
+ CUSTOM: any;
23
+ };
24
+ styles: SearchStyleProperties;
25
+ childrenStyles?: CommonStyleProperties;
26
+ content?: string;
27
+ }
@@ -22,8 +22,6 @@ export interface SectionStyleProperties extends CommonStyleProperties {
22
22
  gridArea?: string;
23
23
  display?: DisplayValue;
24
24
  boxSizing?: string;
25
- rowGap?: string;
26
- columnGap?: string;
27
25
  gridTemplateRows?: string;
28
26
  gridTemplateColumns?: string;
29
27
  }
@@ -44,7 +44,9 @@ export declare enum CMSToolIdTypes {
44
44
  addGlobalSectionsPopup = "cms-add-global-sections-popup",
45
45
  containerElement = "div[data-element-type='container']",
46
46
  repeaterWrapper = "cms-repeater-wrapper",
47
+ layouterWrapper = "cms-layouter-wrapper",
47
48
  repeaterItemWrapper = "cms-repeater-item-wrapper",
49
+ layouterItemWrapper = "cms-layouter-item-wrapper",
48
50
  cmsElementFullView = "cms-element-full-view",
49
51
  productWrapper = "cms-product-wrapper",
50
52
  productDetailsWrapper = "cms-product-details-wrapper",
@@ -244,6 +246,9 @@ export declare const CMSElementsListEnum: {
244
246
  RFQS: string;
245
247
  LIGHTBOXV2: string;
246
248
  ALLOCATIONS: string;
249
+ SEARCH: string;
250
+ LAYOUTER: string;
251
+ LAYOUTER_ITEM: string;
247
252
  };
248
253
  export declare enum CMSResponsiveModeEnums {
249
254
  DESKTOP = "desktop",
@@ -46,5 +46,8 @@ import * as brandSchema from "./elements/brand/index";
46
46
  import * as brandImageSchema from "./elements/brand-image/index";
47
47
  import * as bundleSchema from "./elements/bundle/index";
48
48
  import * as lightBoxV2Schema from "./elements/light-box-v2/index";
49
+ import * as searchSchema from "./elements/search/index";
50
+ import * as layouterSchema from "./elements/layouter/index";
51
+ import * as layouterItemSchema from "./elements/layouter-item/index";
49
52
  import commonFunctions from "./utilities/global";
50
- export { ElementEditSchema, amountEstimatorSchema, bulkVariantPickerSchema, buttonSchema, cmsTypes, codeSchema, commonFunctions, containerSchema, countdownSchema, embedSchema, enums, faqSchema, gallerySliderSchema, gridSchema, imageHotspotSchema, imageSchema, interfaces, mapSchema, paymentMethodsSchema, pickupLocationsSchema, priceSchema, productActionsSchema, productHighlightsSchema, productImageSchema, productInventorySchema, productPromotionsSchema, quantitySelectorSchema, scrollSchema, sectionSchema, shippingEstimatorSchema, socialIconsSchema, stackSchema, storeLocationsSchema, tabSchema, tableSchema, textSchema, uomSelectorSchema, variantPickerSchema, videoSChema, volumePricingSchema, lightboxSchema, cartSchema, profileSchema, productSchema, repeaterSchema, brandSchema, bundleSchema, brandImageSchema, lightBoxV2Schema, };
53
+ export { ElementEditSchema, amountEstimatorSchema, bulkVariantPickerSchema, buttonSchema, cmsTypes, codeSchema, commonFunctions, containerSchema, countdownSchema, embedSchema, enums, faqSchema, gallerySliderSchema, gridSchema, imageHotspotSchema, imageSchema, interfaces, mapSchema, paymentMethodsSchema, pickupLocationsSchema, priceSchema, productActionsSchema, productHighlightsSchema, productImageSchema, productInventorySchema, productPromotionsSchema, quantitySelectorSchema, scrollSchema, sectionSchema, shippingEstimatorSchema, socialIconsSchema, stackSchema, storeLocationsSchema, tabSchema, tableSchema, textSchema, uomSelectorSchema, variantPickerSchema, videoSChema, volumePricingSchema, lightboxSchema, cartSchema, profileSchema, productSchema, repeaterSchema, brandSchema, bundleSchema, brandImageSchema, lightBoxV2Schema, searchSchema, layouterSchema, layouterItemSchema, };
@@ -57,4 +57,7 @@ import * as quotes from "./quotes";
57
57
  import * as rfqs from "./rfqs";
58
58
  import * as lightBoxV2 from "./lightBoxV2";
59
59
  import * as allocations from "./allocations";
60
- export { amountEstimator, bulkVariantPicker, button, code, staticText, common, container, countdown, embed, faq, gallerySlider, grid, image, imageHotspot, map, paymentMethods, pickupLocations, price, productActions, productHighlights, productImage, productInventory, productPromotions, quantitySelector, scroll, section, shippingEstimator, slideShowLayouter, social, stack, storeLocations, table, tabs, text, uomSelector, variantPicker, video, volumePricing, lightbox, cart, profile, repeater, repeaterItem, product, menu, productOptions, productDetails, category, subCategory, brand, bundle, brandImage, filters, sort, pastOrders, quotes, rfqs, lightBoxV2, allocations, };
60
+ import * as search from "./search";
61
+ import * as layouter from "./layouter";
62
+ import * as layouterItem from "./layouter-item";
63
+ export { amountEstimator, bulkVariantPicker, button, code, staticText, common, container, countdown, embed, faq, gallerySlider, grid, image, imageHotspot, map, paymentMethods, pickupLocations, price, productActions, productHighlights, productImage, productInventory, productPromotions, quantitySelector, scroll, section, shippingEstimator, slideShowLayouter, social, stack, storeLocations, table, tabs, text, uomSelector, variantPicker, video, volumePricing, lightbox, cart, profile, repeater, repeaterItem, product, menu, productOptions, productDetails, category, subCategory, brand, bundle, brandImage, filters, sort, pastOrders, quotes, rfqs, lightBoxV2, allocations, search, layouter, layouterItem, };
@@ -0,0 +1,9 @@
1
+ import { CMSElementEditPopupDesignInterface, CMSElementEditPopupInterface, CMSElementEditPopupLayoutInterface } from "./common";
2
+ export interface selfDesignInterface {
3
+ selectorKey: string;
4
+ }
5
+ export declare enum selfSelectorKeysEnum {
6
+ LAYOUT = "layout",
7
+ DESIGN = "design"
8
+ }
9
+ export declare const getDefaultData: () => CMSElementEditPopupInterface<CMSElementEditPopupLayoutInterface, selfDesignInterface & CMSElementEditPopupDesignInterface>;
@@ -0,0 +1,59 @@
1
+ import { AlignItemsValue, JustifyContentValue, LayouterDisplayStyleType, RepeaterSliderControlTypes } from "../../../../components/global/types";
2
+ import { CMSCSSUnitTypesEnums } from "../../enums";
3
+ import { CMSIBCommonInterface, CMSIBSizeInterface, PaddingProps } from "../../interfaces/global";
4
+ import { CMSElementEditPopupDesignInterface, CMSElementEditPopupInterface, CMSElementEditPopupLayoutInterface } from "./common";
5
+ interface selfLayoutInterface {
6
+ selectorKey: string;
7
+ displayStyle: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
8
+ value: LayouterDisplayStyleType;
9
+ };
10
+ itemGap: Pick<CMSIBCommonInterface, "property" | "propertyType"> & PaddingProps;
11
+ justifyContent: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
12
+ value: JustifyContentValue;
13
+ };
14
+ alignItems: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
15
+ value: AlignItemsValue;
16
+ };
17
+ setItemsPerRow: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
18
+ isShow: boolean;
19
+ value: string | number | any;
20
+ };
21
+ minColumnWidth: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
22
+ value: string | number | any;
23
+ unit: CMSCSSUnitTypesEnums;
24
+ };
25
+ minRowHeight: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
26
+ value: string | number | any;
27
+ unit: CMSCSSUnitTypesEnums;
28
+ };
29
+ setItemsPerSlide: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
30
+ value: string | number | any;
31
+ };
32
+ sliderControl: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
33
+ value: RepeaterSliderControlTypes;
34
+ };
35
+ arrowIconSize: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
36
+ value: string | number | any;
37
+ unit: CMSCSSUnitTypesEnums;
38
+ };
39
+ dotSize: Pick<CMSIBCommonInterface, "property" | "propertyType"> & {
40
+ value: string | number | any;
41
+ unit: CMSCSSUnitTypesEnums;
42
+ };
43
+ controlActiveColor: CMSIBCommonInterface;
44
+ selectedSlideControlTheme?: CMSIBCommonInterface;
45
+ autoplay: CMSIBCommonInterface;
46
+ autoplayDuration: CMSIBSizeInterface;
47
+ stopOnMouseEnter: CMSIBCommonInterface;
48
+ stopOnInteraction: CMSIBCommonInterface;
49
+ }
50
+ export interface selfDesignInterface {
51
+ selectorKey: string;
52
+ }
53
+ export declare enum selfSelectorKeysEnum {
54
+ LAYOUT = "layout",
55
+ DESIGN = "design",
56
+ DATA_CONNECTOR = "dataConnector"
57
+ }
58
+ export declare const getDefaultData: () => CMSElementEditPopupInterface<selfLayoutInterface & CMSElementEditPopupLayoutInterface, selfDesignInterface & CMSElementEditPopupDesignInterface>;
59
+ export {};
@@ -0,0 +1,56 @@
1
+ import { CMSIBCommonInterface } from "../../interfaces/global";
2
+ import { CMSElementEditPopupDesignInterface, CMSElementEditPopupInterface, CMSElementEditPopupLayoutInterface } from "./common";
3
+ interface selfLayoutInterface {
4
+ selectorKey: string;
5
+ whenClicked: CMSIBCommonInterface;
6
+ showSearchText: CMSIBCommonInterface;
7
+ searchText: CMSIBCommonInterface;
8
+ showNoOfItems: CMSIBCommonInterface;
9
+ }
10
+ export interface selfDesignInterface {
11
+ selectorKey: string;
12
+ searchBar: {
13
+ selectorKey: string;
14
+ backgroundColor: CMSIBCommonInterface;
15
+ borderColor: CMSIBCommonInterface;
16
+ borderStyle: CMSIBCommonInterface;
17
+ borderPerSlide: CMSIBCommonInterface;
18
+ showBorder: CMSIBCommonInterface;
19
+ showShadow: CMSIBCommonInterface;
20
+ shadowColor: CMSIBCommonInterface;
21
+ blur: CMSIBCommonInterface;
22
+ spread: CMSIBCommonInterface;
23
+ angle: CMSIBCommonInterface;
24
+ borderRadius: CMSIBCommonInterface;
25
+ };
26
+ searchIcon: {
27
+ selectorKey: string;
28
+ showIcon: CMSIBCommonInterface | undefined;
29
+ iconSize: CMSIBCommonInterface;
30
+ iconColor: CMSIBCommonInterface;
31
+ icon: CMSIBCommonInterface;
32
+ };
33
+ placeholderText: {
34
+ selectorKey: string;
35
+ font: CMSIBCommonInterface;
36
+ fontSize: CMSIBCommonInterface;
37
+ textColor: CMSIBCommonInterface;
38
+ bold: CMSIBCommonInterface;
39
+ italic: CMSIBCommonInterface;
40
+ linethrough: CMSIBCommonInterface;
41
+ underline: CMSIBCommonInterface;
42
+ textAlign: CMSIBCommonInterface;
43
+ characterSpacing: CMSIBCommonInterface;
44
+ lineHeight: CMSIBCommonInterface;
45
+ };
46
+ }
47
+ export declare enum searchSelectorKeysEnum {
48
+ LAYOUT = "layout",
49
+ DESIGN = "design",
50
+ SEARCHBAR = "searchBar",
51
+ PLACEHOLDER_TEXT = "placeholderText",
52
+ SEARCH_ICON = "searchIcon",
53
+ MINI_CART_TEXT = "miniSearchText"
54
+ }
55
+ export declare const getDefaultData: () => CMSElementEditPopupInterface<selfLayoutInterface & CMSElementEditPopupLayoutInterface, selfDesignInterface & CMSElementEditPopupDesignInterface>;
56
+ export {};
@@ -1,8 +1,11 @@
1
1
  import { CMSElementEditPopupDesignInterface, CMSElementEditPopupInterface, CMSElementEditPopupLayoutInterface } from "./common";
2
+ import { CMSIBSizeInterface } from "../../interfaces/global";
2
3
  export interface SectionEditPopupInterface extends CMSElementEditPopupInterface {
3
4
  }
4
5
  interface selfLayoutInterface {
5
6
  selectorKey: string;
7
+ columnGap: CMSIBSizeInterface;
8
+ rowGap: CMSIBSizeInterface;
6
9
  }
7
10
  export interface selfDesignInterface {
8
11
  selectorKey: string;
@@ -39,3 +39,4 @@ export type RepeaterDisplayStyleType = "grid" | "list" | "slider" | "cards";
39
39
  export type RepeaterSliderControlTypes = "Arrows & Dots" | "Arrows" | "Dots" | "None";
40
40
  export type DeviceVisibilityByOptionsType = "HTML" | "CSS" | "NONE";
41
41
  export type CustomEventCallback<T = any> = (data: T) => void;
42
+ export type LayouterDisplayStyleType = "rows" | "columns" | "slider" | "grid";
package/dist/widget.scss CHANGED
@@ -58,3 +58,4 @@
58
58
  @use "./past-orders.scss";
59
59
  @use "./quotes.scss";
60
60
  @use "./rfqs.scss";
61
+ @use "./search.scss";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sc-360-v2/storefront-cms-library",
3
- "version": "0.2.40",
3
+ "version": "0.2.42",
4
4
  "main": "/dist/index.js",
5
5
  "types": "./dist/index.d.ts",
6
6
  "exports": {