superdesk-ui-framework 7.0.0-dev-hg0 → 7.0.0-dev-hg2

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 (195) hide show
  1. package/app/fonts/sd_big-icons.eot +0 -0
  2. package/app/fonts/sd_big-icons.svg +69 -0
  3. package/app/fonts/sd_big-icons.ttf +0 -0
  4. package/app/fonts/sd_big-icons.woff +0 -0
  5. package/app/fonts/sd_icons.eot +0 -0
  6. package/app/fonts/sd_icons.svg +202 -0
  7. package/app/fonts/sd_icons.ttf +0 -0
  8. package/app/fonts/sd_icons.woff +0 -0
  9. package/app/img/AvatarDefaultImage.svg +6 -0
  10. package/app/img/DotsSmall-dark.svg +14 -0
  11. package/app/img/OneDot.svg +3 -0
  12. package/app/img/SD-logo.svg +52 -0
  13. package/app/img/dots.svg +3 -0
  14. package/app/img/empty_states/empty-state--large-1.svg +221 -0
  15. package/app/img/empty_states/empty-state--large-2.svg +207 -0
  16. package/app/img/empty_states/empty-state--large-3.svg +231 -0
  17. package/app/img/empty_states/empty-state--large-dashboard.svg +642 -0
  18. package/app/img/empty_states/empty-state--small-1.svg +112 -0
  19. package/app/img/empty_states/empty-state--small-2.svg +49 -0
  20. package/app/img/empty_states/empty-state--small-3.svg +47 -0
  21. package/app/img/icon_illustrations/IconIllustration__headlines.svg +25 -0
  22. package/app/img/icon_illustrations/IconIllustration__keywords.svg +46 -0
  23. package/app/img/icon_illustrations/IconIllustration__optimise.svg +38 -0
  24. package/app/img/icon_illustrations/IconIllustration__summary.svg +27 -0
  25. package/app/img/icon_illustrations/IconIllustration__translate.svg +12 -0
  26. package/app/img/icon_image_stack--white.svg +16 -0
  27. package/app/img/icon_image_stack.svg +16 -0
  28. package/app/img/spinner.svg +3 -0
  29. package/app/img/spinning-wheel.gif +0 -0
  30. package/app/img/theme-thumbnail.png +0 -0
  31. package/app/img/themes/theme-base.svg +1 -0
  32. package/app/img/themes/theme-contrast.svg +45 -0
  33. package/app/img/themes/theme-dark.svg +1 -0
  34. package/app/img/themes/theme-light.svg +1 -0
  35. package/app/img/three-dots.svg +33 -0
  36. package/app/styles/_accessibility.scss +358 -0
  37. package/app/styles/_alerts.scss +392 -0
  38. package/app/styles/_animations.scss +73 -0
  39. package/app/styles/_avatar.scss +526 -0
  40. package/app/styles/_badge.scss +106 -0
  41. package/app/styles/_big-icon-font.scss +182 -0
  42. package/app/styles/_boxed-list.scss +284 -0
  43. package/app/styles/_buttons.scss +874 -0
  44. package/app/styles/_carousel.scss +232 -0
  45. package/app/styles/_content-divider.scss +233 -0
  46. package/app/styles/_design-tokens.scss +6 -0
  47. package/app/styles/_drag-drop.scss +26 -0
  48. package/app/styles/_drag-handle.scss +48 -0
  49. package/app/styles/_empty-states.scss +81 -0
  50. package/app/styles/_expand-button.scss +31 -0
  51. package/app/styles/_hamburger.scss +160 -0
  52. package/app/styles/_helpers.scss +2220 -0
  53. package/app/styles/_icon-font.scss +488 -0
  54. package/app/styles/_icon-labels.scss +140 -0
  55. package/app/styles/_labels.scss +184 -0
  56. package/app/styles/_loaders.scss +29 -0
  57. package/app/styles/_master-desk.scss +323 -0
  58. package/app/styles/_mixins.scss +164 -0
  59. package/app/styles/_modals.scss +452 -0
  60. package/app/styles/_normalize.scss +466 -0
  61. package/app/styles/_panel-info.scss +48 -0
  62. package/app/styles/_popover.scss +29 -0
  63. package/app/styles/_pr-superdesk-theme.scss +4 -0
  64. package/app/styles/_publisher-styles.scss +195 -0
  65. package/app/styles/_reboot.scss +65 -0
  66. package/app/styles/_sd-tag-input.scss +715 -0
  67. package/app/styles/_simple-list.scss +158 -0
  68. package/app/styles/_spinner.scss +47 -0
  69. package/app/styles/_table-list.scss +385 -0
  70. package/app/styles/_tables.scss +150 -0
  71. package/app/styles/_tabs-vertical.scss +58 -0
  72. package/app/styles/_tabs.scss +232 -0
  73. package/app/styles/_tag-labels.scss +210 -0
  74. package/app/styles/_thumb-carousel.scss +247 -0
  75. package/app/styles/_time.scss +113 -0
  76. package/app/styles/_toggle-box.scss +175 -0
  77. package/app/styles/_toggle-button.scss +46 -0
  78. package/app/styles/_tooltips.scss +431 -0
  79. package/app/styles/_variables.scss +4 -0
  80. package/app/styles/app.scss +127 -0
  81. package/app/styles/components/_calendar-week-day.scss +99 -0
  82. package/app/styles/components/_card-item.scss +586 -0
  83. package/app/styles/components/_list-item.scss +694 -0
  84. package/app/styles/components/_load-more-indicator.scss +15 -0
  85. package/app/styles/components/_overflow-stack.scss +120 -0
  86. package/app/styles/components/_sd-circular-progress.scss +239 -0
  87. package/app/styles/components/_sd-collapse-box.scss +292 -0
  88. package/app/styles/components/_sd-comment-box.scss +42 -0
  89. package/app/styles/components/_sd-dropzone.scss +134 -0
  90. package/app/styles/components/_sd-editor-popup.scss +106 -0
  91. package/app/styles/components/_sd-grid-item.scss +865 -0
  92. package/app/styles/components/_sd-loader.scss +39 -0
  93. package/app/styles/components/_sd-media-carousel.scss +408 -0
  94. package/app/styles/components/_sd-notification-panel.scss +51 -0
  95. package/app/styles/components/_sd-pagination.scss +51 -0
  96. package/app/styles/components/_sd-photo-preview.scss +508 -0
  97. package/app/styles/components/_sd-searchbar.scss +276 -0
  98. package/app/styles/components/_sd-toaster.scss +226 -0
  99. package/app/styles/components/_subnav.scss +777 -0
  100. package/app/styles/components/_theme-selector.scss +221 -0
  101. package/app/styles/components/sd-slider.scss +125 -0
  102. package/app/styles/design-tokens/_brand-colors.scss +36 -0
  103. package/app/styles/design-tokens/_component-tokens.scss +11 -0
  104. package/app/styles/design-tokens/_design-tokens-general.scss +145 -0
  105. package/app/styles/design-tokens/_new-colors.scss +820 -0
  106. package/app/styles/design-tokens/_primitives.scss +161 -0
  107. package/app/styles/design-tokens/_semantic-colors.scss +161 -0
  108. package/app/styles/dropdowns/_basic-dropdown.scss +760 -0
  109. package/app/styles/dropdowns/_input-dropdown.scss +26 -0
  110. package/app/styles/dropdowns/_navigation_dropdown.scss +126 -0
  111. package/app/styles/dropdowns/_nested-dropdown.scss +95 -0
  112. package/app/styles/dropdowns/_other_dropdown.scss +59 -0
  113. package/app/styles/dropdowns/dropdown2.scss +4 -0
  114. package/app/styles/editor/_editor-buttons.scss +61 -0
  115. package/app/styles/editor/_editor-themes.scss +550 -0
  116. package/app/styles/form-elements/_autocomplete.scss +54 -0
  117. package/app/styles/form-elements/_checkbox.scss +770 -0
  118. package/app/styles/form-elements/_forms-general.scss +543 -0
  119. package/app/styles/form-elements/_input-preview.scss +80 -0
  120. package/app/styles/form-elements/_input-wrap.scss +147 -0
  121. package/app/styles/form-elements/_inputs.scss +1425 -0
  122. package/app/styles/form-elements/_radio.scss +65 -0
  123. package/app/styles/form-elements/_select-grid.scss +81 -0
  124. package/app/styles/form-elements/_switch.scss +109 -0
  125. package/app/styles/grids/_basic-grid.scss +206 -0
  126. package/app/styles/grids/_grid-layout.scss +1162 -0
  127. package/app/styles/grids/_layout-grid.scss +176 -0
  128. package/app/styles/grids/_sd-kanban-list.scss +92 -0
  129. package/app/styles/index.js +1 -0
  130. package/app/styles/interface-elements/_side-panel.scss +595 -0
  131. package/app/styles/layout/_basic-layout.scss +149 -0
  132. package/app/styles/layout/_container.scss +45 -0
  133. package/app/styles/layout/_editor.scss +464 -0
  134. package/app/styles/layout/_general.scss +92 -0
  135. package/app/styles/menus/_sd-bottom-tabs.scss +79 -0
  136. package/app/styles/menus/_sd-content-navigation.scss +50 -0
  137. package/app/styles/menus/_sd-left-navigation.scss +126 -0
  138. package/app/styles/menus/_sd-sidebar-menu.scss +465 -0
  139. package/app/styles/menus/_sd-top-menu.scss +105 -0
  140. package/app/styles/pr-superdesk-theme.scss +7 -0
  141. package/app/styles/primereact/_pr-autocomplete.scss +27 -0
  142. package/app/styles/primereact/_pr-datepicker.scss +288 -0
  143. package/app/styles/primereact/_pr-dialog.scss +399 -0
  144. package/app/styles/primereact/_pr-dropdown.scss +233 -0
  145. package/app/styles/primereact/_pr-general.scss +72 -0
  146. package/app/styles/primereact/_pr-menu.scss +60 -0
  147. package/app/styles/primereact/_pr-skeleton.scss +36 -0
  148. package/app/styles/primereact/_pr-tag-input.scss +66 -0
  149. package/app/styles/variables/_colors.scss +275 -0
  150. package/app/styles/variables/_dimensions.scss +89 -0
  151. package/app/styles/variables/_form-elements.scss +0 -0
  152. package/app/styles/variables/_typography.scss +20 -0
  153. package/dist/esm/components/EmptyState.d.ts.map +1 -1
  154. package/dist/esm/components/EmptyState.js +22 -1
  155. package/dist/esm/components/EmptyState.js.map +1 -1
  156. package/dist/fonts/sd_big-icons.eot +0 -0
  157. package/dist/fonts/sd_big-icons.svg +69 -0
  158. package/dist/fonts/sd_big-icons.ttf +0 -0
  159. package/dist/fonts/sd_big-icons.woff +0 -0
  160. package/dist/fonts/sd_icons.eot +0 -0
  161. package/dist/fonts/sd_icons.svg +202 -0
  162. package/dist/fonts/sd_icons.ttf +0 -0
  163. package/dist/fonts/sd_icons.woff +0 -0
  164. package/dist/img/AvatarDefaultImage.svg +6 -0
  165. package/dist/img/DotsSmall-dark.svg +14 -0
  166. package/dist/img/OneDot.svg +3 -0
  167. package/dist/img/SD-logo.svg +52 -0
  168. package/dist/img/dots.svg +3 -0
  169. package/dist/img/empty_states/empty-state--large-1.svg +221 -0
  170. package/dist/img/empty_states/empty-state--large-2.svg +207 -0
  171. package/dist/img/empty_states/empty-state--large-3.svg +231 -0
  172. package/dist/img/empty_states/empty-state--large-dashboard.svg +642 -0
  173. package/dist/img/empty_states/empty-state--small-1.svg +112 -0
  174. package/dist/img/empty_states/empty-state--small-2.svg +49 -0
  175. package/dist/img/empty_states/empty-state--small-3.svg +47 -0
  176. package/dist/img/icon_illustrations/IconIllustration__headlines.svg +25 -0
  177. package/dist/img/icon_illustrations/IconIllustration__keywords.svg +46 -0
  178. package/dist/img/icon_illustrations/IconIllustration__optimise.svg +38 -0
  179. package/dist/img/icon_illustrations/IconIllustration__summary.svg +27 -0
  180. package/dist/img/icon_illustrations/IconIllustration__translate.svg +12 -0
  181. package/dist/img/icon_image_stack--white.svg +16 -0
  182. package/dist/img/icon_image_stack.svg +16 -0
  183. package/dist/img/spinner.svg +3 -0
  184. package/dist/img/spinning-wheel.gif +0 -0
  185. package/dist/img/theme-thumbnail.png +0 -0
  186. package/dist/img/themes/theme-base.svg +1 -0
  187. package/dist/img/themes/theme-contrast.svg +45 -0
  188. package/dist/img/themes/theme-dark.svg +1 -0
  189. package/dist/img/themes/theme-light.svg +1 -0
  190. package/dist/img/three-dots.svg +33 -0
  191. package/dist/superdesk-ui.bundle.js +1 -1
  192. package/package.json +10 -3
  193. package/react/components/EmptyState.d.ts.map +1 -1
  194. package/react/components/EmptyState.js +22 -1
  195. package/react/components/EmptyState.js.map +1 -1
@@ -0,0 +1,65 @@
1
+ @use "../mixins";
2
+ @use "../variables/colors";
3
+ @use "../variables/dimensions";
4
+
5
+ // RADIO BUTTON : form-elements/radio.scss
6
+
7
+ // SD radio button
8
+
9
+ .sd-radio {
10
+ @include mixins.transition(all, 0.2s, ease-out);
11
+ width: 1.6rem;
12
+ height: 1.6rem;
13
+ display: inline-block;
14
+ position: relative;
15
+ background: transparent;
16
+ border: 2px solid rgba(0, 0, 0, 0.2);
17
+ border-radius: dimensions.$border-radius__base--full;
18
+ vertical-align: middle;
19
+ margin-inline-end: 0.8rem;
20
+
21
+ &::after {
22
+ @include mixins.opacity(0);
23
+ @include mixins.transition(all, 0.2s, ease-in);
24
+ height: 0.8rem;
25
+ width: 0.8rem;
26
+ border-radius: dimensions.$border-radius__base--full;
27
+ content:' ';
28
+ position: absolute;
29
+ background-color: colors.$sd-colour-interactive;
30
+ inset-block-start: 0.2rem;
31
+ inset-inline-start: 0.2rem;
32
+ transform: scale(0.25, 0.25);
33
+ }
34
+
35
+ &:hover {
36
+ border-color: rgba(0, 0, 0, 0.4);
37
+ cursor: pointer;
38
+ }
39
+
40
+ &.checked, &[checked="checked"] {
41
+ border-color: colors.$sd-colour-interactive;
42
+
43
+ &::after {
44
+ @include mixins.opacity(100);
45
+ transform: scale(1, 1);
46
+ }
47
+
48
+ &:hover {
49
+ border-color: var(--sd-colour-interactive--darken-10);
50
+
51
+ &::after {
52
+ background-color: var(--sd-colour-interactive--darken-10);
53
+ }
54
+ }
55
+ }
56
+ }
57
+
58
+ label + .sd-radio {
59
+ display: inline-block;
60
+ }
61
+
62
+ .sd-radio + label {
63
+ display: inline-block;
64
+ vertical-align: middle;
65
+ }
@@ -0,0 +1,81 @@
1
+ @use "../variables/colors";
2
+
3
+ .select-grid__overlay-panel {
4
+ z-index: 1500 !important;
5
+ margin-block-start: 1px;
6
+ }
7
+
8
+ .select-grid__panel {
9
+ width: 380px;
10
+ max-height: 560px;
11
+ background-color: var(--color-dropdown-menu-Bg);
12
+ box-shadow: var(--sd-shadow__dropdown);
13
+ border-radius: var(--b-radius--small);
14
+ display: flex;
15
+ flex-direction: column;
16
+ }
17
+
18
+ .select-grid__header {
19
+ padding: 1rem;
20
+ box-shadow: 0 1px 0 0 rgba(0, 0, 0, 0.1);
21
+ }
22
+
23
+ .select-grid__body {
24
+ overflow-y: auto;
25
+ margin: 0;
26
+ padding: 1rem;
27
+ position: relative;
28
+ display: grid;
29
+ grid-template-columns: repeat(3, minmax(9rem, 1fr));
30
+ }
31
+
32
+ .select-grid__item {
33
+ display: flex;
34
+ flex-direction: column;
35
+ align-items: center;
36
+ color: var(--color-text);
37
+ border-radius: var(--b-radius--small);
38
+
39
+ &:hover, &:focus {
40
+ cursor: pointer;
41
+ }
42
+
43
+ &:hover {
44
+ background: colors.$sd-colour-background__menu-item--hover;
45
+ }
46
+
47
+ &:focus {
48
+ outline: 2px solid var(--sd-colour-interactive);
49
+ outline-offset: -2px;
50
+ }
51
+ }
52
+
53
+ .sd-input--grid-select {
54
+ .btn {
55
+ grid-row: 2/3;
56
+ grid-column: 2/4;
57
+ background-color: var(--color-input-bg);
58
+ border-block-end: 1px solid var(--color-input-border);
59
+ width: 4rem;
60
+ }
61
+
62
+ .btn:hover {
63
+ background-color: var(--color-input-bg--hover);
64
+ border-bottom-color: var(--color-input-border-hover);
65
+ box-shadow: none;
66
+ }
67
+
68
+ .btn:focus {
69
+ background-color: var(--sd-colour-interactive--alpha-20);
70
+ border-bottom-color: var(--sd-colour-interactive);
71
+ box-shadow: 0 1px 0 0 var(--sd-colour-interactive);
72
+ }
73
+ }
74
+
75
+ .form__item--auto-width {
76
+ .sd-input--grid-select {
77
+ .btn {
78
+ margin-block-start: 0;
79
+ }
80
+ }
81
+ }
@@ -0,0 +1,109 @@
1
+ @use "../variables/colors";
2
+ @use "../variables/dimensions";
3
+
4
+ .sd-toggle, .sd-switch {
5
+ display:inline-block;
6
+ flex-shrink: 0;
7
+ width:4.0rem;
8
+ height:1.8rem;
9
+ background: var(--sd-colour-neutral);
10
+ position:relative;
11
+ vertical-align: middle;
12
+ cursor:pointer;
13
+ border-radius: dimensions.$border-radius__base--full;
14
+ overflow: hidden;
15
+ box-shadow: inset 0 1px 0 0 hsla(0, 0%, 0%, 0.15);
16
+
17
+ .inner {
18
+ position:absolute;
19
+ inset-inline-start:0.2rem;
20
+ width:1.4rem;
21
+ inset-block-start:0.2rem;
22
+ height:1.4rem;
23
+ background: colors.$white;
24
+ border-radius: dimensions.$border-radius__base--full;
25
+ box-shadow: 0 1px 0 0 hsla(0, 0%, 0%, 0.2);
26
+ transition: all 0.2s ease;
27
+ }
28
+
29
+ &.checked {
30
+ background: var(--sd-colour-interactive--active);
31
+
32
+ .inner {
33
+ inset-inline-start:2.4rem;
34
+ }
35
+ }
36
+
37
+ &.disabled {
38
+ opacity: .5;
39
+ cursor: not-allowed;
40
+ }
41
+
42
+ input[type="checkbox"] {
43
+ display:none;
44
+ }
45
+
46
+ &:focus-visible {
47
+ box-shadow: 0 0 0 3px var(--sd-colour-interactive--alpha-30);
48
+ }
49
+ }
50
+
51
+ // label + .sd-toggle,
52
+ // label + .sd-switch {
53
+ // display: inline-block;
54
+ // vertical-align: middle;
55
+ // margin: 0 1rem 0 0.2rem;
56
+ // }
57
+
58
+ // .sd-toggle + label,
59
+ // .sd-switch + label {
60
+ // display: inline-block;
61
+ // vertical-align: middle;
62
+ // margin: 0 1rem;
63
+ // }
64
+
65
+ .sd-toggle__wrapper, .sd-switch__wrapper {
66
+ display: inline-flex;
67
+ flex-direction: row;
68
+ align-items: center;
69
+ user-select: none;
70
+ position: relative;
71
+ gap: dimensions.$sd-base-increment;
72
+
73
+ label {
74
+ margin: 0;
75
+ line-height: 1;
76
+ }
77
+ }
78
+
79
+ .sd-switch__group {
80
+ display: flex;
81
+ flex-direction: row;
82
+ align-items: center;
83
+
84
+ .sd-toggle__wrapper,
85
+ .sd-switch__wrapper {
86
+ margin-inline-end: dimensions.$sd-base-increment * 3;
87
+ }
88
+ }
89
+
90
+ .sd-switch__group--vertical {
91
+ flex-direction: column;
92
+ align-items: flex-start;
93
+ gap: dimensions.$sd-base-increment * 2;
94
+
95
+ &.sd-switch__group--right {
96
+ width: 100%;
97
+ align-items: flex-end;
98
+ text-align: end;
99
+
100
+ .sd-toggle__wrapper,
101
+ .sd-switch__wrapper {
102
+ display: flex;
103
+ width: 100%;
104
+ justify-content: space-between;
105
+ margin-inline-end: 0;
106
+ }
107
+
108
+ }
109
+ }
@@ -0,0 +1,206 @@
1
+ @use "sass:math";
2
+ @use "../variables/dimensions";
3
+
4
+ // Flex grid
5
+ // Grid has equal columns, default setup is 'no wrap'
6
+
7
+ $flex-grid-gap: dimensions.$sd-base-increment * 2; // space between items is $flex-grid-gap*2
8
+ $flex-grid-gap-small: dimensions.$sd-base-increment; // alternative small gap
9
+ $flex-grid-columns: 6; // max number of columns supported
10
+
11
+ // map for media breakpoints, 'small' is mandatory and reserved as mobile first
12
+ $flex-grid-media: (
13
+ medium: 40em,
14
+ large: 60em,
15
+ xlarge: 100em
16
+ );
17
+
18
+ // grid mixins
19
+ @mixin basic-grid {
20
+ @for $i from $flex-grid-columns through 1 {
21
+ &-#{$i} {
22
+ .flex-grid__item {
23
+ flex: 0 0 math.div(100%, $i);
24
+ max-width: math.div(100%, $i);
25
+ }
26
+ }
27
+ }
28
+ }
29
+
30
+ @mixin basic-grid-boxed {
31
+ @for $i from $flex-grid-columns through 1 {
32
+ &-#{$i} {
33
+ .flex-grid__item,
34
+ & > .sd-check__wrapper,
35
+ & > .btn,
36
+ & > .icn-btn,
37
+ & > .toggle-button {
38
+ flex: 0 0 calc(#{math.div(100%, $i)} - #{math.div($flex-grid-gap, $i) * ($i - 1)});
39
+ max-width: calc(#{math.div(100%, $i)} - #{math.div($flex-grid-gap, $i) * ($i - 1)});
40
+ }
41
+
42
+ & > .btn,
43
+ & > .icn-btn,
44
+ & > .toggle-button {
45
+ flex-shrink: 0;
46
+ }
47
+
48
+ .sd-check__wrapper {
49
+ display: flex;
50
+
51
+ .sd-checkbox.sd-checkbox--button-style {
52
+ display: flex;
53
+ flex-grow: 1;
54
+
55
+ label {
56
+ flex-grow: 1;
57
+ }
58
+ }
59
+ }
60
+ }
61
+ }
62
+ }
63
+
64
+ @mixin basic-grid-boxed-small {
65
+ @for $i from $flex-grid-columns through 1 {
66
+ &-#{$i} {
67
+ .flex-grid__item,
68
+ & > .sd-check__wrapper,
69
+ & > .btn,
70
+ & > .icn-btn,
71
+ & > .toggle-button {
72
+ flex: 0 0 calc(#{math.div(100%, $i)} - #{math.div($flex-grid-gap-small, $i) * ($i - 1)});
73
+ max-width: calc(#{math.div(100%, $i)} - #{math.div($flex-grid-gap-small, $i) * ($i - 1)});
74
+ }
75
+
76
+ & > .btn,
77
+ & > .icn-btn,
78
+ & > .toggle-button {
79
+ flex-shrink: 0;
80
+ }
81
+
82
+ .sd-check__wrapper {
83
+ display: flex;
84
+
85
+ .sd-checkbox.sd-checkbox--button-style {
86
+ display: flex;
87
+ flex-grow: 1;
88
+
89
+ label {
90
+ flex-grow: 1;
91
+ }
92
+ }
93
+ }
94
+ }
95
+ }
96
+ }
97
+
98
+ // grid
99
+ .flex-grid {
100
+ display: flex;
101
+ flex-direction: row;
102
+ // overflow: hidden;
103
+ // overflow-x: auto;
104
+
105
+ .flex-grid__item {
106
+ position: relative;
107
+ }
108
+
109
+ .flex-grid__item--d-flex {
110
+ display: flex;
111
+ }
112
+
113
+ .flex-grid__item--column {
114
+ flex-direction: column;
115
+ }
116
+ }
117
+
118
+ .flex-grid--wrap-items {
119
+ flex-wrap: wrap;
120
+ }
121
+
122
+ .flex-grid--content-center {
123
+ justify-content: center;
124
+ }
125
+
126
+ .flex-grid--grow {
127
+ flex-grow: 1;
128
+ }
129
+
130
+ .flex-grid--boxed {
131
+ gap: $flex-grid-gap;
132
+
133
+ .flex-grid__item {
134
+ margin: 0;
135
+ }
136
+ }
137
+
138
+ .flex-grid--boxed-small {
139
+ gap: $flex-grid-gap-small;
140
+
141
+ .flex-grid__item, .sd-check__wrapper, .btn, .toggle-button {
142
+ margin: 0 !important;
143
+ }
144
+ }
145
+
146
+ .flex-grid--plain {
147
+ gap: $flex-grid-gap;
148
+
149
+ .flex-grid__item {
150
+ margin: 0;
151
+ padding: 0;
152
+ }
153
+ }
154
+
155
+ // default grid setup (mobile first), calc for 1-6 columns
156
+ .flex-grid--small {
157
+ @include basic-grid;
158
+ }
159
+
160
+ .flex-grid--boxed {
161
+ &.flex-grid--small {
162
+ @include basic-grid-boxed;
163
+ }
164
+ }
165
+
166
+ .flex-grid--boxed-small {
167
+ &.flex-grid--small {
168
+ @include basic-grid-boxed-small;
169
+ }
170
+ }
171
+
172
+ .flex-grid--padding {
173
+ padding: 2rem;
174
+ }
175
+
176
+ .flex-grid--scroll {
177
+ overflow-y: auto;
178
+ }
179
+
180
+ .flex-grid.flex-grid--boxed + .flex-grid.flex-grid--boxed {
181
+ margin-block-start: $flex-grid-gap;
182
+ }
183
+ .flex-grid.flex-grid--boxed--small + .flex-grid.flex-grid--boxed--small {
184
+ margin-block-start: $flex-grid-gap-small;
185
+ }
186
+
187
+ // Media queries
188
+ @each $name, $value in $flex-grid-media {
189
+ @media only screen and (min-width: $value) {
190
+ .flex-grid--#{$name} {
191
+ @include basic-grid;
192
+ }
193
+
194
+ .flex-grid--boxed {
195
+ &.flex-grid--#{$name} {
196
+ @include basic-grid-boxed;
197
+ }
198
+ }
199
+
200
+ .flex-grid--boxed-small {
201
+ &.flex-grid--#{$name} {
202
+ @include basic-grid-boxed-small;
203
+ }
204
+ }
205
+ }
206
+ }