@sc-360-v2/storefront-cms-library 0.5.59 → 0.5.61

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.
Files changed (156) hide show
  1. package/dist/add-order.scss +2 -8
  2. package/dist/allocation-header-quota-details.scss +9 -4
  3. package/dist/allocationDetails.scss +167 -164
  4. package/dist/allocations-quota-details.scss +9 -4
  5. package/dist/allocations.scss +1 -4
  6. package/dist/animation-control.scss +23 -23
  7. package/dist/builder.js +1 -1
  8. package/dist/builderLite.js +1 -1
  9. package/dist/bulk-variant-picker.scss +24 -26
  10. package/dist/bundle copy.scss +235 -0
  11. package/dist/bundle.scss +10 -10
  12. package/dist/bundleCategories.scss +301 -0
  13. package/dist/bundleDetails.scss +10 -1
  14. package/dist/button copy.scss +28 -0
  15. package/dist/buy-for-tabs-container-item.scss +80 -80
  16. package/dist/buyForHeaders.scss +3 -12
  17. package/dist/cart-details.scss +23 -4
  18. package/dist/cart-products-sidebar.scss +211 -211
  19. package/dist/cart-summary.scss +82 -10
  20. package/dist/cart-wrapper.scss +127 -127
  21. package/dist/cart.scss +2 -2
  22. package/dist/cartDropdownOverlay.scss +10 -1
  23. package/dist/cartGrouping.scss +89 -89
  24. package/dist/category-groups-product-grid.scss +143 -155
  25. package/dist/category-groups-product-image.scss +1372 -2010
  26. package/dist/category-groups-product-options.scss +680 -1054
  27. package/dist/category-groups-product-price.scss +2742 -4997
  28. package/dist/category-groups-quota-details.scss +7 -2
  29. package/dist/categoryDetails.scss +61 -61
  30. package/dist/categoryWidget.scss +34 -34
  31. package/dist/checkbox-radio.scss +124 -124
  32. package/dist/checkout.scss +1850 -4170
  33. package/dist/common-element.scss +35 -35
  34. package/dist/confirmationModal.scss +139 -139
  35. package/dist/coupon.scss +352 -714
  36. package/dist/custom-fonts.scss +100 -100
  37. package/dist/embroider-preview-element.scss +94 -94
  38. package/dist/emtpy-templates.scss +165 -165
  39. package/dist/faq.scss +7 -11
  40. package/dist/flex-text-editor.scss +271 -271
  41. package/dist/functions.scss +36 -0
  42. package/dist/gallery-slider-temp.scss +42 -5
  43. package/dist/hotspot.scss +1 -4
  44. package/dist/icon-list.scss +30 -59
  45. package/dist/image-for-product.scss +21 -21
  46. package/dist/image-temp.scss +18 -3
  47. package/dist/language-selector.scss +29 -21
  48. package/dist/last-x-orders.scss +6 -13
  49. package/dist/layouter-item.scss +3 -1
  50. package/dist/layouter.scss +164 -29
  51. package/dist/lightbox.scss +78 -78
  52. package/dist/line.scss +29 -70
  53. package/dist/loader.scss +37 -37
  54. package/dist/login.scss +49 -41
  55. package/dist/map.scss +23 -9
  56. package/dist/mega-menu.scss +1 -4
  57. package/dist/menu-item.scss +19 -19
  58. package/dist/myTemplates.scss +3 -0
  59. package/dist/order-processing.scss +61 -61
  60. package/dist/overflow-module.scss +63 -63
  61. package/dist/pickup-locations.scss +6 -3
  62. package/dist/position-module.scss +95 -95
  63. package/dist/prefix-list.scss +86 -86
  64. package/dist/product-actions.scss +6 -9
  65. package/dist/product-highlights.scss +40 -12
  66. package/dist/product-image-bundles.scss +12 -33
  67. package/dist/product-image.scss +341 -724
  68. package/dist/product-labels.scss +10 -8
  69. package/dist/product-options.scss +270 -125
  70. package/dist/product-price.scss +8 -2
  71. package/dist/productDetails.scss +2 -1
  72. package/dist/profile.scss +28 -0
  73. package/dist/quick-inventory-check.scss +6 -13
  74. package/dist/quick-links.scss +4 -0
  75. package/dist/quick-order-pad.scss +2 -2
  76. package/dist/quota-details.scss +11 -15
  77. package/dist/repeater copy.scss +24 -0
  78. package/dist/repeater-embla-controls.scss +13 -4
  79. package/dist/repeater.scss +161 -7
  80. package/dist/responsive-behaviour.scss +29 -29
  81. package/dist/scroll.scss +31 -1
  82. package/dist/shareCartSideBar.scss +254 -254
  83. package/dist/shipping-estimator.scss +41 -41
  84. package/dist/simple-list.scss +67 -0
  85. package/dist/social.scss +2 -2
  86. package/dist/sort.scss +89 -89
  87. package/dist/static-text.scss +52 -52
  88. package/dist/store-locations.scss +10 -8
  89. package/dist/sub-category.scss +74 -74
  90. package/dist/submit-quote.scss +275 -275
  91. package/dist/tab-container-item.scss +80 -80
  92. package/dist/tab-v2.scss +277 -604
  93. package/dist/table-common.scss +2 -2
  94. package/dist/table.scss +2 -2
  95. package/dist/text-temp-v2.scss +12 -23
  96. package/dist/text-temp.scss +109 -109
  97. package/dist/toggle-button.scss +32 -32
  98. package/dist/transform-properties-module.scss +20 -20
  99. package/dist/types/builder/elements/bundle-categories/index.d.ts +30 -0
  100. package/dist/types/builder/enums/index.d.ts +1 -0
  101. package/dist/types/builder/index.d.ts +2 -1
  102. package/dist/types/builder/tools/element-edit/addProductsTab.d.ts +108 -0
  103. package/dist/types/builder/tools/element-edit/breadcrumbs.d.ts +6 -0
  104. package/dist/types/builder/tools/element-edit/bundle.d.ts +22 -0
  105. package/dist/types/builder/tools/element-edit/bundleCategories.d.ts +115 -0
  106. package/dist/types/builder/tools/element-edit/bundleDetails.d.ts +64 -0
  107. package/dist/types/builder/tools/element-edit/button.d.ts +1 -0
  108. package/dist/types/builder/tools/element-edit/buttonInstance.d.ts +10 -0
  109. package/dist/types/builder/tools/element-edit/buyForWithTab.d.ts +84 -0
  110. package/dist/types/builder/tools/element-edit/cart.d.ts +6 -0
  111. package/dist/types/builder/tools/element-edit/cartAttributes.d.ts +60 -0
  112. package/dist/types/builder/tools/element-edit/cartDetails.d.ts +16 -0
  113. package/dist/types/builder/tools/element-edit/cartSummary.d.ts +1325 -74
  114. package/dist/types/builder/tools/element-edit/categoryGroups.d.ts +158 -0
  115. package/dist/types/builder/tools/element-edit/checkout.d.ts +172 -0
  116. package/dist/types/builder/tools/element-edit/common.d.ts +2 -0
  117. package/dist/types/builder/tools/element-edit/countdown.d.ts +44 -0
  118. package/dist/types/builder/tools/element-edit/coupon.d.ts +28 -0
  119. package/dist/types/builder/tools/element-edit/embroidery.d.ts +37 -0
  120. package/dist/types/builder/tools/element-edit/filterResults.d.ts +4 -0
  121. package/dist/types/builder/tools/element-edit/icon-list.d.ts +11 -0
  122. package/dist/types/builder/tools/element-edit/index.d.ts +2 -1
  123. package/dist/types/builder/tools/element-edit/itemStock.d.ts +2 -0
  124. package/dist/types/builder/tools/element-edit/kitDetails.d.ts +66 -0
  125. package/dist/types/builder/tools/element-edit/kits.d.ts +4 -0
  126. package/dist/types/builder/tools/element-edit/layouter.d.ts +33 -1
  127. package/dist/types/builder/tools/element-edit/map.d.ts +5 -1
  128. package/dist/types/builder/tools/element-edit/marchandiserSets.d.ts +2 -0
  129. package/dist/types/builder/tools/element-edit/orderStatus.d.ts +17 -0
  130. package/dist/types/builder/tools/element-edit/paymentMethods.d.ts +6 -0
  131. package/dist/types/builder/tools/element-edit/productCustomizations.d.ts +14 -0
  132. package/dist/types/builder/tools/element-edit/productOptions.d.ts +3 -1
  133. package/dist/types/builder/tools/element-edit/productPrice.d.ts +1 -0
  134. package/dist/types/builder/tools/element-edit/quickLinks.d.ts +26 -0
  135. package/dist/types/builder/tools/element-edit/repeater.d.ts +45 -1
  136. package/dist/types/builder/tools/element-edit/scroll.d.ts +8 -11
  137. package/dist/types/builder/tools/element-edit/search.d.ts +1 -0
  138. package/dist/types/builder/tools/element-edit/searchResultsHeading.d.ts +6 -0
  139. package/dist/types/builder/tools/element-edit/shipping-payments.d.ts +72 -0
  140. package/dist/types/builder/tools/element-edit/shippingEstimator.d.ts +4 -0
  141. package/dist/types/builder/tools/element-edit/social.d.ts +2 -0
  142. package/dist/types/builder/tools/element-edit/spotlight.d.ts +2 -0
  143. package/dist/types/builder/tools/element-edit/table.d.ts +10 -0
  144. package/dist/types/builder/tools/element-edit/tabs.d.ts +6 -0
  145. package/dist/types/builder/tools/element-edit/typographyInstance.d.ts +110 -0
  146. package/dist/types/builder/tools/element-edit/userElements.d.ts +62 -22
  147. package/dist/types/builder/tools/element-edit/variantPicker.d.ts +4 -0
  148. package/dist/types/builder/tools/element-edit/video.d.ts +22 -0
  149. package/dist/uom-selector.scss +8 -2
  150. package/dist/user-elements.scss +133 -104
  151. package/dist/variant-picker.scss +1 -4
  152. package/dist/video.scss +147 -325
  153. package/dist/volume-pricing.scss +2 -2
  154. package/dist/website.js +1 -1
  155. package/dist/wishlist-overlay.scss +48 -48
  156. package/package.json +131 -131
@@ -1,19 +1,19 @@
1
- @use "sass:map";
2
- @use "sass:list";
3
- @use "./functions.scss" as *;
4
- $activeElementSelector: "[data-has-clicked='true']";
5
-
6
- [data-div-type="element"] {
7
- &[data-element-type="menu-item"] {
8
- width: calc(1% * #{prepareMediaVariable(--_ctm-ele-nw-wh-vl)});
9
- // var(--_ctm-mob-ele-nw-wh-vl, var(--_ctm-tab-ele-nw-wh-vl, var(--_ctm-ele-nw-wh-vl, auto)))
10
- margin: prepareMediaVariable(--_ctm-lt-mn);
11
-
12
- & > div {
13
- &.wrapper {
14
- width: 100%;
15
- padding: prepareMediaVariablevar(--_ctm-lt-pg);
16
- }
17
- }
18
- }
19
- }
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+ @use "./functions.scss" as *;
4
+ $activeElementSelector: "[data-has-clicked='true']";
5
+
6
+ [data-div-type="element"] {
7
+ &[data-element-type="menu-item"] {
8
+ width: calc(1% * #{prepareMediaVariable(--_ctm-ele-nw-wh-vl)});
9
+ // var(--_ctm-mob-ele-nw-wh-vl, var(--_ctm-tab-ele-nw-wh-vl, var(--_ctm-ele-nw-wh-vl, auto)))
10
+ margin: prepareMediaVariable(--_ctm-lt-mn);
11
+
12
+ & > div {
13
+ &.wrapper {
14
+ width: 100%;
15
+ padding: prepareMediaVariablevar(--_ctm-lt-pg);
16
+ }
17
+ }
18
+ }
19
+ }
@@ -193,6 +193,9 @@ $defaultValues: (
193
193
  // color: var(--_gray-900);
194
194
  color: var(--_thm-ty-p1-tt-cr);
195
195
  font-family: var(--_thm-ty-p1-ft-fy);
196
+ text-transform: var(--_thm-ty-p1-tt-tm);
197
+ word-wrap: var(--_thm-ty-p1-wd-wp);
198
+ word-break: var(--_thm-ty-p1-wd-bk);
196
199
  font-size: var(--_thm-ty-p2-ft-se);
197
200
  font-weight: var(--_thm-ty-p1-bd);
198
201
  margin-left: -15px;
@@ -1,61 +1,61 @@
1
- // processing payment screen
2
- .pmnt_process_wrapper {
3
- display: flex;
4
- justify-content: center;
5
- align-items: center;
6
- height: 100vh;
7
- width: 100%;
8
- background-color: var(--_gray-100);
9
- .process_loader_content {
10
- display: flex;
11
- flex-direction: column;
12
- /* gap: 8px; */
13
- justify-content: center;
14
- align-items: center;
15
- .processing_loader {
16
- position: relative;
17
- width: 64px;
18
- height: 64px;
19
- margin-bottom: 24px;
20
-
21
- &::before,
22
- &::after {
23
- content: "";
24
- position: absolute;
25
- border-radius: 50%;
26
- }
27
-
28
- // Background stroke
29
- &::before {
30
- width: 100%;
31
- height: 100%;
32
- border: 6px solid #e0e0e0;
33
- }
34
-
35
- // Animated stroke
36
- &::after {
37
- width: 100%;
38
- height: 100%;
39
- border: 6px solid transparent;
40
- border-top-color: #243dc6;
41
- animation: processing_loader_spin 1s linear infinite;
42
- }
43
- p {
44
- margin-top: 8px;
45
- }
46
- }
47
-
48
- h3 {
49
- margin-block: 10px;
50
- }
51
-
52
- @keyframes processing_loader_spin {
53
- 0% {
54
- transform: rotate(0deg);
55
- }
56
- 100% {
57
- transform: rotate(360deg);
58
- }
59
- }
60
- }
61
- }
1
+ // processing payment screen
2
+ .pmnt_process_wrapper {
3
+ display: flex;
4
+ justify-content: center;
5
+ align-items: center;
6
+ height: 100vh;
7
+ width: 100%;
8
+ background-color: var(--_gray-100);
9
+ .process_loader_content {
10
+ display: flex;
11
+ flex-direction: column;
12
+ /* gap: 8px; */
13
+ justify-content: center;
14
+ align-items: center;
15
+ .processing_loader {
16
+ position: relative;
17
+ width: 64px;
18
+ height: 64px;
19
+ margin-bottom: 24px;
20
+
21
+ &::before,
22
+ &::after {
23
+ content: "";
24
+ position: absolute;
25
+ border-radius: 50%;
26
+ }
27
+
28
+ // Background stroke
29
+ &::before {
30
+ width: 100%;
31
+ height: 100%;
32
+ border: 6px solid #e0e0e0;
33
+ }
34
+
35
+ // Animated stroke
36
+ &::after {
37
+ width: 100%;
38
+ height: 100%;
39
+ border: 6px solid transparent;
40
+ border-top-color: #243dc6;
41
+ animation: processing_loader_spin 1s linear infinite;
42
+ }
43
+ p {
44
+ margin-top: 8px;
45
+ }
46
+ }
47
+
48
+ h3 {
49
+ margin-block: 10px;
50
+ }
51
+
52
+ @keyframes processing_loader_spin {
53
+ 0% {
54
+ transform: rotate(0deg);
55
+ }
56
+ 100% {
57
+ transform: rotate(360deg);
58
+ }
59
+ }
60
+ }
61
+ }
@@ -1,63 +1,63 @@
1
- @use "sass:map";
2
- @use "./functions.scss" as *;
3
- @use "./prefix-list.scss" as *;
4
- $var: "--_ctm-sf-or-mx-ht";
5
- $overflow: (
6
- class: (
7
- scrollable: "flx-oflow",
8
- ),
9
- attributes: (
10
- vertical: "data-scroll-vertical",
11
- horizontal: "data-scroll-horizontal",
12
- maxHeight: "data-max-height",
13
- displayScrollbar: "data-scrollbar",
14
- ),
15
- );
16
-
17
- $overflowValues: (
18
- scroll: auto,
19
- hidden: hidden,
20
- visible: visible,
21
- // auto: auto,
22
- // clip: clip,
23
- );
24
-
25
- @mixin FlexOverflowModuleStyles() {
26
- $cls: map.get($overflow, class);
27
- $attrs: map.get($overflow, attributes);
28
-
29
- :is(.#{map.get($cls, scrollable)}) {
30
- // Loop through both directions
31
- @each $dir in (vertical, horizontal) {
32
- $prop: if($dir == vertical, overflow-y, overflow-x);
33
- $attr: map.get($attrs, $dir);
34
-
35
- // For each possible overflow value (scroll, auto, hidden, etc.)
36
- @each $dataVal, $cssVal in $overflowValues {
37
- &[#{$attr}="#{$dataVal}"] {
38
- #{$prop}: #{$cssVal};
39
- }
40
- }
41
- }
42
-
43
- // Apply max-height if vertical is scroll and max-height is set
44
- &[#{map.get($attrs, vertical)}="scroll"] {
45
- &[#{map.get($attrs, maxHeight)}] {
46
- @include FlexUpdatedPrefixCSSVariable($var, false, maxHeight);
47
- max-height: var(#{$var}, 100%) !important;
48
- }
49
- }
50
-
51
- // Scrollbar styles only if enabled
52
- &[#{map.get($attrs, displayScrollbar)}="true"] {
53
- &::-webkit-scrollbar {
54
- width: var(--cms-scrollbar-width, 8px);
55
- }
56
-
57
- &::-webkit-scrollbar-thumb {
58
- background-color: var(--cms-scrollbar-thumb-color, rgba(0, 0, 0, 0.3));
59
- border-radius: var(--cms-scrollbar-radius, 4px);
60
- }
61
- }
62
- }
63
- }
1
+ @use "sass:map";
2
+ @use "./functions.scss" as *;
3
+ @use "./prefix-list.scss" as *;
4
+ $var: "--_ctm-sf-or-mx-ht";
5
+ $overflow: (
6
+ class: (
7
+ scrollable: "flx-oflow",
8
+ ),
9
+ attributes: (
10
+ vertical: "data-scroll-vertical",
11
+ horizontal: "data-scroll-horizontal",
12
+ maxHeight: "data-max-height",
13
+ displayScrollbar: "data-scrollbar",
14
+ ),
15
+ );
16
+
17
+ $overflowValues: (
18
+ scroll: auto,
19
+ hidden: hidden,
20
+ visible: visible,
21
+ // auto: auto,
22
+ // clip: clip,
23
+ );
24
+
25
+ @mixin FlexOverflowModuleStyles() {
26
+ $cls: map.get($overflow, class);
27
+ $attrs: map.get($overflow, attributes);
28
+
29
+ :is(.#{map.get($cls, scrollable)}) {
30
+ // Loop through both directions
31
+ @each $dir in (vertical, horizontal) {
32
+ $prop: if($dir == vertical, overflow-y, overflow-x);
33
+ $attr: map.get($attrs, $dir);
34
+
35
+ // For each possible overflow value (scroll, auto, hidden, etc.)
36
+ @each $dataVal, $cssVal in $overflowValues {
37
+ &[#{$attr}="#{$dataVal}"] {
38
+ #{$prop}: #{$cssVal};
39
+ }
40
+ }
41
+ }
42
+
43
+ // Apply max-height if vertical is scroll and max-height is set
44
+ &[#{map.get($attrs, vertical)}="scroll"] {
45
+ &[#{map.get($attrs, maxHeight)}] {
46
+ @include FlexUpdatedPrefixCSSVariable($var, false, maxHeight);
47
+ max-height: var(#{$var}, 100%) !important;
48
+ }
49
+ }
50
+
51
+ // Scrollbar styles only if enabled
52
+ &[#{map.get($attrs, displayScrollbar)}="true"] {
53
+ &::-webkit-scrollbar {
54
+ width: var(--cms-scrollbar-width, 8px);
55
+ }
56
+
57
+ &::-webkit-scrollbar-thumb {
58
+ background-color: var(--cms-scrollbar-thumb-color, rgba(0, 0, 0, 0.3));
59
+ border-radius: var(--cms-scrollbar-radius, 4px);
60
+ }
61
+ }
62
+ }
63
+ }
@@ -23,14 +23,17 @@
23
23
  .store__container {
24
24
  .stack {
25
25
  .vertical {
26
+ // The divider is a pseudo-element and takes no space of its own, so a thick
27
+ // one grew back over the item above it — see dividerGapReserve in functions.scss.
28
+ .item:not(:last-child) {
29
+ @include dividerGapReserve(--_ctm-dn-im-se-dr-wt);
30
+ }
26
31
  .item:not(:last-child)::after {
27
32
  content: "";
28
33
  position: absolute;
29
34
  left: 0;
30
35
  right: 0;
31
- bottom: calc(
32
- -1 * (var(--_ctm-mob-lt-im-sg, var(--_ctm-tab-lt-im-sg, var(--_ctm-lt-im-sg))) / 2)
33
- );
36
+ bottom: dividerGapOffset(--_ctm-lt-im-sg, --_ctm-dn-im-se-dr-wt);
34
37
  height: var(
35
38
  --_ctm-mob-dn-im-se-dr-wt,
36
39
  var(--_ctm-tab-dn-im-se-dr-wt, var(--_ctm-dn-im-se-dr-wt))
@@ -1,95 +1,95 @@
1
- @use "sass:map";
2
- @use "sass:list";
3
-
4
- @use "./functions.scss" as *;
5
- @use "./prefix-list.scss" as *;
6
-
7
- $elementDragging: "[data-cms-new-element-dragging-v2='true']";
8
- $dataResizerTrue: '[data-cms-element-resizer="true"]';
9
- $activeElementSelector: "[data-has-clicked='true']";
10
- $editor: '[data-page-id="cms__template__editor"]';
11
- $var: "--_sf-width-rsp-psn";
12
-
13
- @function convertListToCommaSeparateString($list) {
14
- $items: ();
15
- @each $key, $value in $list {
16
- $sl: ".#{$value}";
17
- $items: list.append($items, $sl, comma);
18
- }
19
-
20
- @return $items;
21
- }
22
-
23
- $position: (
24
- class: (
25
- absolute: "flx-abs",
26
- fixed: "flx-fxd",
27
- sticky: "flx-stk",
28
- relative: "flx-rel",
29
- ),
30
- zIndex: "--_ctm-flex-z-index",
31
- attributes: (
32
- horizontal: "data-position-horizonal",
33
- vertical: "data-position-vertical",
34
- ),
35
- data: (
36
- horizontal: (
37
- right: prepareMediaVariable(--_ctm-flex-psn-hoft, 0px),
38
- left: prepareMediaVariable(--_ctm-flex-psn-hoft, 0px),
39
- ),
40
- vertical: (
41
- top: prepareMediaVariable(--_ctm-flex-psn-voft, 0px),
42
- bottom: prepareMediaVariable(--_ctm-flex-psn-voft, 0px),
43
- ),
44
- ),
45
- );
46
-
47
- @mixin FlexPositionModuleStyles() {
48
- $cls: map.get($position, class);
49
- $zIndex: map.get($position, zIndex);
50
- $attributes: map.get($position, attributes);
51
- $data: map.get($position, data);
52
- $pa: map.get($cls, absolute);
53
- $pr: map.get($cls, relative);
54
-
55
- :is(#{convertListToCommaSeparateString($cls)}) {
56
- @each $key, $value in $data {
57
- @each $key1, $value1 in $value {
58
- &[#{map.get($attributes, $key)}="#{$key1}"] {
59
- #{$key1}: #{$value1};
60
- }
61
- }
62
- }
63
- // @if(){
64
-
65
- // }
66
- // z-index: var(#{$zIndex});
67
- &:is(.#{$pr}, .#{pa}) {
68
- &:is(#{$editor} *) {
69
- &#{$activeElementSelector} {
70
- z-index: var(#{$zIndex});
71
- }
72
- }
73
- &:not(#{$editor} *) {
74
- z-index: var(#{$zIndex});
75
- }
76
- }
77
- &:not(.#{$pr}, .#{pa}) {
78
- z-index: var(#{$zIndex});
79
- }
80
- @each $key, $value in $cls {
81
- &.#{$value} {
82
- &:is(:not(#{$elementDragging}, #{$dataResizerTrue})) {
83
- position: var(--_p-#{$key}) !important;
84
- @if ($key == fixed) {
85
- @include FlexUpdatedPrefixCSSVariable($var);
86
- width: var(#{$var}, #{prepareMediaVariable(--_ctm-lt-wh)}) !important;
87
- }
88
- @if not list.index((sticky, relative), $key) {
89
- margin: 0px !important;
90
- }
91
- }
92
- }
93
- }
94
- }
95
- }
1
+ @use "sass:map";
2
+ @use "sass:list";
3
+
4
+ @use "./functions.scss" as *;
5
+ @use "./prefix-list.scss" as *;
6
+
7
+ $elementDragging: "[data-cms-new-element-dragging-v2='true']";
8
+ $dataResizerTrue: '[data-cms-element-resizer="true"]';
9
+ $activeElementSelector: "[data-has-clicked='true']";
10
+ $editor: '[data-page-id="cms__template__editor"]';
11
+ $var: "--_sf-width-rsp-psn";
12
+
13
+ @function convertListToCommaSeparateString($list) {
14
+ $items: ();
15
+ @each $key, $value in $list {
16
+ $sl: ".#{$value}";
17
+ $items: list.append($items, $sl, comma);
18
+ }
19
+
20
+ @return $items;
21
+ }
22
+
23
+ $position: (
24
+ class: (
25
+ absolute: "flx-abs",
26
+ fixed: "flx-fxd",
27
+ sticky: "flx-stk",
28
+ relative: "flx-rel",
29
+ ),
30
+ zIndex: "--_ctm-flex-z-index",
31
+ attributes: (
32
+ horizontal: "data-position-horizonal",
33
+ vertical: "data-position-vertical",
34
+ ),
35
+ data: (
36
+ horizontal: (
37
+ right: prepareMediaVariable(--_ctm-flex-psn-hoft, 0px),
38
+ left: prepareMediaVariable(--_ctm-flex-psn-hoft, 0px),
39
+ ),
40
+ vertical: (
41
+ top: prepareMediaVariable(--_ctm-flex-psn-voft, 0px),
42
+ bottom: prepareMediaVariable(--_ctm-flex-psn-voft, 0px),
43
+ ),
44
+ ),
45
+ );
46
+
47
+ @mixin FlexPositionModuleStyles() {
48
+ $cls: map.get($position, class);
49
+ $zIndex: map.get($position, zIndex);
50
+ $attributes: map.get($position, attributes);
51
+ $data: map.get($position, data);
52
+ $pa: map.get($cls, absolute);
53
+ $pr: map.get($cls, relative);
54
+
55
+ :is(#{convertListToCommaSeparateString($cls)}) {
56
+ @each $key, $value in $data {
57
+ @each $key1, $value1 in $value {
58
+ &[#{map.get($attributes, $key)}="#{$key1}"] {
59
+ #{$key1}: #{$value1};
60
+ }
61
+ }
62
+ }
63
+ // @if(){
64
+
65
+ // }
66
+ // z-index: var(#{$zIndex});
67
+ &:is(.#{$pr}, .#{pa}) {
68
+ &:is(#{$editor} *) {
69
+ &#{$activeElementSelector} {
70
+ z-index: var(#{$zIndex});
71
+ }
72
+ }
73
+ &:not(#{$editor} *) {
74
+ z-index: var(#{$zIndex});
75
+ }
76
+ }
77
+ &:not(.#{$pr}, .#{pa}) {
78
+ z-index: var(#{$zIndex});
79
+ }
80
+ @each $key, $value in $cls {
81
+ &.#{$value} {
82
+ &:is(:not(#{$elementDragging}, #{$dataResizerTrue})) {
83
+ position: var(--_p-#{$key}) !important;
84
+ @if ($key == fixed) {
85
+ @include FlexUpdatedPrefixCSSVariable($var);
86
+ width: var(#{$var}, #{prepareMediaVariable(--_ctm-lt-wh)}) !important;
87
+ }
88
+ @if not list.index((sticky, relative), $key) {
89
+ margin: 0px !important;
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ }