blue-react 9.0.0-alpha1 → 9.0.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.
Files changed (50) hide show
  1. package/dist/components/ActionMenu.js +98 -109
  2. package/dist/components/ActionMenuSwitch.js +44 -55
  3. package/dist/components/Body.js +38 -50
  4. package/dist/components/Caret.js +19 -32
  5. package/dist/components/DocumentView.js +76 -88
  6. package/dist/components/Header.js +22 -34
  7. package/dist/components/HeaderTitle.js +54 -66
  8. package/dist/components/Intro.js +35 -48
  9. package/dist/components/Layout.js +313 -292
  10. package/dist/components/MenuItem.js +130 -139
  11. package/dist/components/Modal.js +164 -173
  12. package/dist/components/ModalProvider.js +184 -195
  13. package/dist/components/Outside.js +50 -63
  14. package/dist/components/Page.js +62 -74
  15. package/dist/components/Search.js +159 -168
  16. package/dist/components/SidebarMenu.js +56 -69
  17. package/dist/components/SidebarMenuItem.js +124 -0
  18. package/dist/components/SidebarToggler.js +33 -0
  19. package/dist/components/SlimContainer.js +21 -34
  20. package/dist/components/Status.js +64 -76
  21. package/dist/components/StatusProvider.js +68 -79
  22. package/dist/components/Switch.js +57 -70
  23. package/dist/components/Utilities.js +183 -192
  24. package/dist/components/shared.js +24 -37
  25. package/dist/neu.scss +76 -0
  26. package/dist/style.css +1632 -522
  27. package/dist/style.min.css +9 -10
  28. package/dist/style.scss +4 -4
  29. package/dist/styles/_bootstrap-variables.scss +2 -2
  30. package/dist/styles/_bootstrap.scss +1 -0
  31. package/dist/styles/_general.scss +2 -2
  32. package/dist/styles/_layout.scss +3 -7
  33. package/dist/styles/_sidebar.scss +36 -0
  34. package/dist/styles/_variables.scss +5 -20
  35. package/dist/styles/mixins/_sidebar.scss +16 -2
  36. package/dist/types/components/Layout.d.ts +17 -1
  37. package/dist/types/components/MenuItem.d.ts +4 -0
  38. package/dist/types/components/Search.d.ts +7 -3
  39. package/dist/types/components/SidebarMenuItem.d.ts +21 -0
  40. package/dist/types/components/SidebarToggler.d.ts +10 -0
  41. package/dist/types/components/Utilities.d.ts +4 -0
  42. package/index.d.ts +5 -6
  43. package/index.js +1 -2
  44. package/package.json +4 -5
  45. package/dist/components/BodyRounded.js +0 -44
  46. package/dist/components/Grid.js +0 -288
  47. package/dist/style.css.map +0 -1
  48. package/dist/styles/_bootstrap-optimizations.scss +0 -5
  49. package/dist/types/components/BodyRounded.d.ts +0 -10
  50. package/dist/types/components/Grid.d.ts +0 -110
@@ -1,221 +1,212 @@
1
- (function (global, factory) {
2
- if (typeof define === "function" && define.amd) {
3
- define(["exports"], factory);
4
- } else if (typeof exports !== "undefined") {
5
- factory(exports);
6
- } else {
7
- var mod = {
8
- exports: {}
9
- };
10
- factory(mod.exports);
11
- global.Utilities = mod.exports;
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.addClass = addClass;
7
+ exports.default = void 0;
8
+ exports.fetchData = fetchData;
9
+ exports.finishLoading = finishLoading;
10
+ exports.guid = void 0;
11
+ exports.hasClass = hasClass;
12
+ exports.hideSuccess = hideSuccess;
13
+ exports.removeClass = removeClass;
14
+ exports.resetAlertMessage = resetAlertMessage;
15
+ exports.scrollToTop = scrollToTop;
16
+ exports.setAlertMessage = setAlertMessage;
17
+ exports.showSuccess = showSuccess;
18
+ exports.startLoading = startLoading;
19
+ exports.toggleActions = toggleActions;
20
+ exports.toggleClass = toggleClass;
21
+
22
+ function hasClass(el, className) {
23
+ if (el.classList) return el.classList.contains(className);else return !!el.className.match(new RegExp("(\\s|^)" + className + "(\\s|$)"));
24
+ }
25
+
26
+ function addClass(el, className) {
27
+ if (el.classList) el.classList.add(className);else if (!hasClass(el, className)) el.className += " " + className;
28
+ }
29
+
30
+ function removeClass(el, className) {
31
+ if (el.classList) el.classList.remove(className);else if (hasClass(el, className)) el.className = el.className.replace(new RegExp("(\\s|^)" + className + "(\\s|$)"), " ");
32
+ }
33
+ /**
34
+ * @deprecated Use (el as HTMLElement).classList.toggle("my-class") instead.
35
+ */
36
+
37
+
38
+ function toggleClass(element, className) {
39
+ if (!element || !className) {
40
+ return;
12
41
  }
13
- })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
14
- "use strict";
15
42
 
16
- Object.defineProperty(_exports, "__esModule", {
17
- value: true
18
- });
19
- _exports.addClass = addClass;
20
- _exports.default = void 0;
21
- _exports.fetchData = fetchData;
22
- _exports.finishLoading = finishLoading;
23
- _exports.guid = void 0;
24
- _exports.hasClass = hasClass;
25
- _exports.hideSuccess = hideSuccess;
26
- _exports.removeClass = removeClass;
27
- _exports.resetAlertMessage = resetAlertMessage;
28
- _exports.scrollToTop = scrollToTop;
29
- _exports.setAlertMessage = setAlertMessage;
30
- _exports.showSuccess = showSuccess;
31
- _exports.startLoading = startLoading;
32
- _exports.toggleActions = toggleActions;
33
- _exports.toggleClass = toggleClass;
34
-
35
- function hasClass(el, className) {
36
- if (el.classList) return el.classList.contains(className);else return !!el.className.match(new RegExp("(\\s|^)" + className + "(\\s|$)"));
37
- }
43
+ var classString = element.className,
44
+ nameIndex = classString.indexOf(className);
38
45
 
39
- function addClass(el, className) {
40
- if (el.classList) el.classList.add(className);else if (!hasClass(el, className)) el.className += " " + className;
46
+ if (nameIndex === -1) {
47
+ classString += " " + className;
48
+ } else {
49
+ classString = classString.substr(0, nameIndex) + classString.substr(nameIndex + className.length);
41
50
  }
42
51
 
43
- function removeClass(el, className) {
44
- if (el.classList) el.classList.remove(className);else if (hasClass(el, className)) el.className = el.className.replace(new RegExp("(\\s|^)" + className + "(\\s|$)"), " ");
45
- }
46
- /**
47
- * @deprecated Use (el as HTMLElement).classList.toggle("my-class") instead.
48
- */
52
+ element.className = classString;
53
+ }
49
54
 
55
+ function startLoading() {
56
+ ;
57
+ document.querySelector(".blue-loading").style.display = "block";
58
+ }
50
59
 
51
- function toggleClass(element, className) {
52
- if (!element || !className) {
53
- return;
54
- }
60
+ function finishLoading() {
61
+ ;
62
+ document.querySelector(".blue-loading").style.display = "";
63
+ }
55
64
 
56
- var classString = element.className,
57
- nameIndex = classString.indexOf(className);
65
+ function showSuccess() {
66
+ ;
67
+ document.querySelector(".blue-status-success").style.display = "flex";
68
+ }
58
69
 
59
- if (nameIndex === -1) {
60
- classString += " " + className;
61
- } else {
62
- classString = classString.substr(0, nameIndex) + classString.substr(nameIndex + className.length);
63
- }
70
+ function hideSuccess() {
71
+ ;
72
+ document.querySelector(".blue-status-success").style.display = "";
73
+ }
64
74
 
65
- element.className = classString;
66
- }
67
-
68
- function startLoading() {
69
- ;
70
- document.querySelector(".blue-loading").style.display = "block";
71
- }
75
+ function toggleActions() {
76
+ toggleClass(document.querySelector(".blue-wrapper"), "active");
77
+ toggleClass(document.querySelector(".blue-layout"), "wrapper-in");
78
+ var els = document.querySelectorAll(".blue-actions");
72
79
 
73
- function finishLoading() {
74
- ;
75
- document.querySelector(".blue-loading").style.display = "";
80
+ for (var i = 0; i < els.length; i++) {
81
+ toggleClass(els[i], "open");
76
82
  }
83
+ }
84
+ /**
85
+ * Resets alert messages that was set with `setAlertMessage`.
86
+ * When using React, you should use `StatusProvider` instead: https://bruegmann.github.io/blue-react/v8/component/StatusProvider
87
+ * @param alertClassName Leave empty to reset messages of any status type
88
+ */
77
89
 
78
- function showSuccess() {
79
- ;
80
- document.querySelector(".blue-status-success").style.display = "flex";
81
- }
82
90
 
83
- function hideSuccess() {
91
+ function resetAlertMessage(alertClassName) {
92
+ if (!alertClassName) {
84
93
  ;
85
- document.querySelector(".blue-status-success").style.display = "";
86
- }
87
-
88
- function toggleActions() {
89
- toggleClass(document.querySelector(".blue-wrapper"), "active");
90
- toggleClass(document.querySelector(".blue-layout"), "wrapper-in");
91
- var els = document.querySelectorAll(".blue-actions");
92
-
93
- for (var i = 0; i < els.length; i++) {
94
- toggleClass(els[i], "open");
95
- }
96
- }
97
- /**
98
- * Resets alert messages that was set with `setAlertMessage`.
99
- * @param alertClassName Leave empty to reset messages of any status type
100
- */
101
-
102
-
103
- function resetAlertMessage(alertClassName) {
104
- if (!alertClassName) {
105
- ;
106
- ["loading", "success", "info", "warning", "danger"].forEach(function (status) {
107
- resetAlertMessage(status);
108
- });
109
- } else {
110
- var alertElement = document.querySelector(".blue-status-alert");
111
- var statusElement = document.querySelector(".blue-status-" + alertClassName);
112
- if (statusElement) statusElement.style.display = "";
113
-
114
- if (alertElement) {
115
- alertElement.style.display = "";
116
- removeClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
117
- }
118
- }
119
- }
120
-
121
- function setAlertMessage(message) {
122
- var alertClassName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "info";
123
- var close = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
124
- var detailText = arguments.length > 3 ? arguments[3] : undefined;
94
+ ["loading", "success", "info", "warning", "danger"].forEach(function (status) {
95
+ resetAlertMessage(status);
96
+ });
97
+ } else {
125
98
  var alertElement = document.querySelector(".blue-status-alert");
126
99
  var statusElement = document.querySelector(".blue-status-" + alertClassName);
127
- if (statusElement) statusElement.style.display = "flex";
100
+ if (statusElement) statusElement.style.display = "";
128
101
 
129
102
  if (alertElement) {
130
- alertElement.style.display = "block";
131
- addClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
132
- alertElement.querySelector(".alert-body").innerHTML = "<h2>" + message + "</h2>";
133
-
134
- if (detailText) {
135
- alertElement.querySelector(".alert-body").innerHTML += "<span>" + detailText + "</span>";
136
- }
103
+ alertElement.style.display = "";
104
+ removeClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
105
+ }
106
+ }
107
+ }
108
+ /**
109
+ * When using React, you should use `StatusProvider` instead: https://bruegmann.github.io/blue-react/v8/component/StatusProvider
110
+ */
111
+
112
+
113
+ function setAlertMessage(message) {
114
+ var alertClassName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "info";
115
+ var close = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
116
+ var detailText = arguments.length > 3 ? arguments[3] : undefined;
117
+ var alertElement = document.querySelector(".blue-status-alert");
118
+ var statusElement = document.querySelector(".blue-status-" + alertClassName);
119
+ if (statusElement) statusElement.style.display = "flex";
120
+
121
+ if (alertElement) {
122
+ alertElement.style.display = "block";
123
+ addClass(alertElement, "alert-" + (alertClassName === "loading" ? "info" : alertClassName));
124
+ alertElement.querySelector(".alert-body").innerHTML = "<h2>" + message + "</h2>";
125
+
126
+ if (detailText) {
127
+ alertElement.querySelector(".alert-body").innerHTML += "<span>" + detailText + "</span>";
128
+ }
137
129
 
138
- var btnCloseElement = alertElement.querySelector(".btn-close");
130
+ var btnCloseElement = alertElement.querySelector(".btn-close");
139
131
 
140
- if (close) {
141
- btnCloseElement.style.display = "inline-block";
132
+ if (close) {
133
+ btnCloseElement.style.display = "inline-block";
142
134
 
143
- btnCloseElement.onclick = function () {
144
- resetAlertMessage(alertClassName);
145
- };
146
- } else {
147
- btnCloseElement.style.display = "none";
148
- }
135
+ btnCloseElement.onclick = function () {
136
+ resetAlertMessage(alertClassName);
137
+ };
138
+ } else {
139
+ btnCloseElement.style.display = "none";
149
140
  }
150
141
  }
142
+ }
151
143
 
152
- function s4() {
153
- return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
154
- }
155
-
156
- var guid = function guid() {
157
- return s4() + s4() + "-" + s4() + "-" + s4() + "-" + s4() + "-" + s4() + s4() + s4();
158
- };
144
+ function s4() {
145
+ return Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
146
+ }
159
147
 
160
- _exports.guid = guid;
148
+ var guid = function guid() {
149
+ return s4() + s4() + "-" + s4() + "-" + s4() + "-" + s4() + "-" + s4() + s4() + s4();
150
+ };
161
151
 
162
- function scrollToTop() {
163
- var routerPage = document.querySelector(".router-page.active");
164
- routerPage.scroll({
165
- behavior: "smooth",
166
- left: 0,
167
- top: 0
168
- });
169
- }
152
+ exports.guid = guid;
170
153
 
171
- var httpStatusCodes = {
172
- 400: "Bad Request",
173
- 401: "Unauthorized",
174
- 403: "Forbidden",
175
- 404: "Not Found",
176
- 405: "Method Not Allowed",
177
- 408: "Request Timeout",
178
- 409: "Conflict",
179
- 500: "Internal Server Error",
180
- 502: "Bad Gateway"
181
- };
182
-
183
- function fetchData(input, init) {
184
- var showErrorDetail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
185
- var onError = arguments.length > 3 ? arguments[3] : undefined;
186
- return fetch(input, init).then(function (response) {
187
- if (!response.ok) throw response;
188
- return response;
189
- }).catch(function (reason) {
190
- if (reason.text) {
191
- reason.text().then(function (errorMessage) {
192
- setAlertMessage("".concat(reason.status, " - ").concat(reason.statusText || httpStatusCodes[reason.status] || "Error"), "danger", true, showErrorDetail ? errorMessage.toString().replace(/(<style[\w\W]+style>)/g, "").replace(/<[^>]+>/g, "") : undefined);
193
-
194
- if (onError) {
195
- onError(errorMessage, reason);
196
- }
197
- });
198
- }
199
-
200
- throw reason;
201
- });
202
- }
154
+ function scrollToTop() {
155
+ var routerPage = document.querySelector(".router-page.active");
156
+ routerPage.scroll({
157
+ behavior: "smooth",
158
+ left: 0,
159
+ top: 0
160
+ });
161
+ }
162
+
163
+ var httpStatusCodes = {
164
+ 400: "Bad Request",
165
+ 401: "Unauthorized",
166
+ 403: "Forbidden",
167
+ 404: "Not Found",
168
+ 405: "Method Not Allowed",
169
+ 408: "Request Timeout",
170
+ 409: "Conflict",
171
+ 500: "Internal Server Error",
172
+ 502: "Bad Gateway"
173
+ };
174
+
175
+ function fetchData(input, init) {
176
+ var showErrorDetail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
177
+ var onError = arguments.length > 3 ? arguments[3] : undefined;
178
+ return fetch(input, init).then(function (response) {
179
+ if (!response.ok) throw response;
180
+ return response;
181
+ }).catch(function (reason) {
182
+ if (reason.text) {
183
+ reason.text().then(function (errorMessage) {
184
+ setAlertMessage("".concat(reason.status, " - ").concat(reason.statusText || httpStatusCodes[reason.status] || "Error"), "danger", true, showErrorDetail ? errorMessage.toString().replace(/(<style[\w\W]+style>)/g, "").replace(/<[^>]+>/g, "") : undefined);
185
+
186
+ if (onError) {
187
+ onError(errorMessage, reason);
188
+ }
189
+ });
190
+ }
203
191
 
204
- var _default = {
205
- hasClass: hasClass,
206
- addClass: addClass,
207
- removeClass: removeClass,
208
- toggleClass: toggleClass,
209
- startLoading: startLoading,
210
- finishLoading: finishLoading,
211
- showSuccess: showSuccess,
212
- hideSuccess: hideSuccess,
213
- toggleActions: toggleActions,
214
- resetAlertMessage: resetAlertMessage,
215
- setAlertMessage: setAlertMessage,
216
- guid: guid,
217
- scrollToTop: scrollToTop,
218
- fetchData: fetchData
219
- };
220
- _exports.default = _default;
221
- });
192
+ throw reason;
193
+ });
194
+ }
195
+
196
+ var _default = {
197
+ hasClass: hasClass,
198
+ addClass: addClass,
199
+ removeClass: removeClass,
200
+ toggleClass: toggleClass,
201
+ startLoading: startLoading,
202
+ finishLoading: finishLoading,
203
+ showSuccess: showSuccess,
204
+ hideSuccess: hideSuccess,
205
+ toggleActions: toggleActions,
206
+ resetAlertMessage: resetAlertMessage,
207
+ setAlertMessage: setAlertMessage,
208
+ guid: guid,
209
+ scrollToTop: scrollToTop,
210
+ fetchData: fetchData
211
+ };
212
+ exports.default = _default;
@@ -1,45 +1,32 @@
1
- (function (global, factory) {
2
- if (typeof define === "function" && define.amd) {
3
- define(["exports"], factory);
4
- } else if (typeof exports !== "undefined") {
5
- factory(exports);
6
- } else {
7
- var mod = {
8
- exports: {}
9
- };
10
- factory(mod.exports);
11
- global.shared = mod.exports;
12
- }
13
- })(typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : this, function (_exports) {
14
- "use strict";
1
+ "use strict";
15
2
 
16
- Object.defineProperty(_exports, "__esModule", {
17
- value: true
18
- });
19
- _exports.getPhrase = getPhrase;
20
- var phrases = {
21
- Cancel: ["Cancel", "Abbrechen"],
22
- Yes: ["Yes", "Ja"],
23
- No: ["No", "Nein"],
24
- Message: ["Message", "Nachricht"]
25
- };
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getPhrase = getPhrase;
7
+ var phrases = {
8
+ Cancel: ["Cancel", "Abbrechen"],
9
+ Yes: ["Yes", "Ja"],
10
+ No: ["No", "Nein"],
11
+ Message: ["Message", "Nachricht"],
12
+ "Toggle menu": ["Toggle menu", "Menü umschalten"]
13
+ };
26
14
 
27
- function getPhrase(keyword) {
28
- var countryCode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
15
+ function getPhrase(keyword) {
16
+ var countryCode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;
29
17
 
30
- var _phrases = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
18
+ var _phrases = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : undefined;
31
19
 
32
- countryCode = countryCode || navigator.language.toLowerCase().indexOf("de") > -1 ? "de-DE" : "en-US";
33
- _phrases = _phrases || phrases;
20
+ countryCode = countryCode || navigator.language.toLowerCase().indexOf("de") > -1 ? "de-DE" : "en-US";
21
+ _phrases = _phrases || phrases;
34
22
 
35
- if (_phrases[keyword]) {
36
- if (countryCode.indexOf("de-") > -1) {
37
- return _phrases[keyword][1];
38
- } else {
39
- return _phrases[keyword][0];
40
- }
23
+ if (_phrases[keyword]) {
24
+ if (countryCode.indexOf("de-") > -1) {
25
+ return _phrases[keyword][1];
41
26
  } else {
42
- return keyword;
27
+ return _phrases[keyword][0];
43
28
  }
29
+ } else {
30
+ return keyword;
44
31
  }
45
- });
32
+ }
package/dist/neu.scss ADDED
@@ -0,0 +1,76 @@
1
+ $theme: #e5dff4 !default;
2
+
3
+ @function neu-shadow($multiplicate: 1, $inset: false, $switch: false) {
4
+ $preset: "";
5
+ $bg-suffix: "";
6
+
7
+ @if $inset {
8
+ $preset: "inset";
9
+ $bg-suffix: "-inset";
10
+ }
11
+
12
+ @if $switch {
13
+ @return $preset calc(var(--neu-distance) * #{$multiplicate}) calc(var(--neu-distance) * #{$multiplicate})
14
+ calc(var(--neu-blur) * #{$multiplicate}) var(--neu-shadow-high#{$bg-suffix}),
15
+ $preset calc(var(--neu-distance) * -#{$multiplicate}) calc(var(--neu-distance) * -#{$multiplicate})
16
+ calc(var(--neu-blur) * #{$multiplicate}) var(--neu-shadow-low#{$bg-suffix});
17
+ }
18
+
19
+ @return $preset calc(var(--neu-distance) * -#{$multiplicate}) calc(var(--neu-distance) * -#{$multiplicate})
20
+ calc(var(--neu-blur) * #{$multiplicate}) var(--neu-shadow-high#{$bg-suffix}),
21
+ $preset calc(var(--neu-distance) * #{$multiplicate}) calc(var(--neu-distance) * #{$multiplicate})
22
+ calc(var(--neu-blur) * #{$multiplicate}) var(--neu-shadow-low#{$bg-suffix});
23
+ }
24
+
25
+ $neu-steps: (
26
+ 1: 0.25,
27
+ 2: 0.5,
28
+ 3: 1,
29
+ 4: 1.5,
30
+ 5: 3
31
+ );
32
+
33
+ @mixin neu($bg: $theme, $bg-inset: $theme) {
34
+ --neu-bg: #{$bg};
35
+ --neu-bg-inset: #{$bg-inset};
36
+
37
+ --neu-shadow-high: #{lighten($bg, 3%)};
38
+ --neu-shadow-low: #{darken($bg, 4%)};
39
+ --neu-shadow-high-inset: #{lighten($bg-inset, 4%)};
40
+ --neu-shadow-low-inset: #{darken($bg-inset, 4%)};
41
+
42
+ --neu-distance: 0.37rem;
43
+ --neu-blur: 0.7rem;
44
+
45
+ @each $unit, $value in $neu-steps {
46
+ --neu-shadow-#{$unit}: #{neu-shadow($value)};
47
+ --neu-shadow-inset-#{$unit}: #{neu-shadow($value, true)};
48
+
49
+ --neu-shadow-switch-#{$unit}: #{neu-shadow($value, false, true)};
50
+ --neu-shadow-inset-switch-#{$unit}: #{neu-shadow($value, true, true)};
51
+ }
52
+ }
53
+
54
+ @mixin neu-define-utility-classes() {
55
+ @each $unit, $value in $neu-steps {
56
+ .neu-shadow-#{$unit} {
57
+ box-shadow: var(--neu-shadow-#{$unit}) !important;
58
+ }
59
+ .neu-shadow-inset-#{$unit} {
60
+ box-shadow: var(--neu-shadow-inset-#{$unit}) !important;
61
+ }
62
+
63
+ .neu-shadow-switch-#{$unit} {
64
+ box-shadow: var(--neu-shadow-switch-#{$unit}) !important;
65
+ }
66
+ .neu-shadow-inset-switch-#{$unit} {
67
+ box-shadow: var(--neu-shadow-inset-switch-#{$unit}) !important;
68
+ }
69
+ }
70
+ }
71
+
72
+ :root {
73
+ @include neu();
74
+ }
75
+
76
+ @include neu-define-utility-classes();