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
package/dist/style.scss CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Blue React v9.0.0-alpha1-alpha1-alpha1-alpha1-alpha1-alpha1-alpha1 (https://bruegmann.github.io/blue-react)
2
+ * Blue React v9.0.0-alpha2 (https://bruegmann.github.io/blue-react)
3
3
  * Licensed under GNU General Public License v3.0 (https://github.com/bruegmann/blue-react/blob/master/LICENSE).
4
4
  */
5
5
 
@@ -11,16 +11,16 @@
11
11
  @import "./styles/_mixins";
12
12
  @import "./styles/_keyframes";
13
13
 
14
- @import "./styles/_bootstrap";
14
+ // @import "./styles/_bootstrap";
15
+ @import "node_modules/bootstrap/scss/bootstrap";
15
16
 
16
17
  @import "./styles/_general";
17
18
  @import "./styles/_router";
18
19
  @import "./styles/_status";
19
20
  @import "./styles/_layout";
21
+ @import "./styles/_sidebar";
20
22
  @import "./styles/_search";
21
23
  @import "./styles/action-menu";
22
24
  @import "./styles/_caret";
23
25
  @import "./styles/_tooltips";
24
26
  @import "./styles/_hover";
25
-
26
- @import "./styles/_bootstrap-optimizations";
@@ -12,5 +12,5 @@ $custom-checkbox-indicator-border-radius: $border-radius-sm !default;
12
12
  $link-decoration: none !default;
13
13
  $link-hover-decoration: underline !default;
14
14
 
15
- $font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI Variable Display", "Segoe UI", Roboto, Oxygen-Sans, Ubuntu,
16
- Cantarell, "Helvetica Neue", sans-serif !default;
15
+ $font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI Variable Display", "Segoe UI", Roboto, Oxygen-Sans,
16
+ Ubuntu, Cantarell, "Helvetica Neue", sans-serif !default;
@@ -48,6 +48,7 @@
48
48
  @import "node_modules/bootstrap/scss/carousel";
49
49
  @import "node_modules/bootstrap/scss/spinners";
50
50
  @import "node_modules/bootstrap/scss/offcanvas";
51
+ @import "node_modules/bootstrap/scss/placeholders";
51
52
 
52
53
  // Helpers
53
54
  @import "node_modules/bootstrap/scss/helpers";
@@ -131,8 +131,8 @@ body {
131
131
 
132
132
  @media screen and (min-width: 768px) {
133
133
  .sign-in-container {
134
- padding: 0 calc(50% - 18rem);
135
- width: auto;
134
+ padding: var(--blue-sign-in-container-md-padding, 0 calc(50% - 18rem));
135
+ width: var(--blue-sign-in-container-md-width, auto);
136
136
  }
137
137
  }
138
138
  }
@@ -59,7 +59,7 @@
59
59
  height: $normal-size;
60
60
  left: 0;
61
61
  top: 0;
62
- z-index: 3;
62
+ z-index: 5;
63
63
  }
64
64
 
65
65
  .blue-header {
@@ -67,10 +67,6 @@
67
67
  color: $header-color;
68
68
  }
69
69
 
70
- // .blue-layout:not(.wrapper-in) .blue-header {
71
- // overflow: hidden;
72
- // }
73
-
74
70
  .blue-header {
75
71
  height: $normal-size;
76
72
  position: fixed;
@@ -181,7 +177,7 @@
181
177
  display: none;
182
178
  }
183
179
 
184
- .blue-header {
180
+ &.hideToggleExpandSidebar .blue-header {
185
181
  left: 0;
186
182
  }
187
183
  }
@@ -200,7 +196,7 @@
200
196
  &,
201
197
  &:hover,
202
198
  &:focus {
203
- color: $sidebar-color;
199
+ color: var(--blue-sidebar-color);
204
200
  background-color: var(--blue-sidebar-bg);
205
201
  border-color: transparent;
206
202
  }
@@ -0,0 +1,36 @@
1
+ .blue-sidebar-state {
2
+ &.open {
3
+ @include openSidebarMenu();
4
+
5
+ .blue-menu-item {
6
+ width: $bla-sidebar-width;
7
+ }
8
+
9
+ .blue-menu-item {
10
+ & > * {
11
+ width: auto;
12
+ }
13
+ }
14
+ }
15
+
16
+ &:not(.open) {
17
+ .blue-sidebar-visible-on-open {
18
+ display: none;
19
+ }
20
+
21
+ .blue-sidebar-hidden-on-open {
22
+ animation: fade-in 1s;
23
+ }
24
+ }
25
+ }
26
+
27
+ @keyframes blue-menu-item-dropdown-from-start {
28
+ from {
29
+ transform: translateX(-50%);
30
+ opacity: 0;
31
+ }
32
+ }
33
+
34
+ .blue-menu-item-dropdown-from-start {
35
+ animation: blue-menu-item-dropdown-from-start 0.15s;
36
+ }
@@ -1,11 +1,3 @@
1
- // Bootstrap
2
- $primary: #007bff !default;
3
- $success: #4bd763 !default;
4
- $info: rgb(62, 158, 187) !default;
5
- $warning: #f0ad4e !default;
6
- $danger: #d9534f !default;
7
- // Bootstrap ENDE
8
-
9
1
  // Main color theme. E.g. used for background for body and sidebar.
10
2
  $theme: $primary !default;
11
3
 
@@ -68,11 +60,7 @@ $sidebar-open-bg: darken($sidebar-bg, 30%) !default;
68
60
  $sidebar-deep-bg: darken($sidebar-bg, 4%) !default;
69
61
 
70
62
  // Text color of sidebar.
71
- $blue-sidebar-color-h: 0 !default;
72
- $blue-sidebar-color-s: 100% !default;
73
- $blue-sidebar-color-l: 100% !default;
74
- $blue-sidebar-color: hsl($blue-sidebar-color-h, $blue-sidebar-color-s, $blue-sidebar-color-l) !default;
75
- $sidebar-color: $blue-sidebar-color !default;
63
+ $sidebar-color: #fff !default;
76
64
 
77
65
  // Color of indicator for active sidebar item.
78
66
  $sidebar-indicator-color: $sidebar-color !default;
@@ -100,16 +88,13 @@ $scrollbar-size: 10px;
100
88
 
101
89
  :root {
102
90
  --blue-sidebar-width: #{$bla-sidebar-width};
103
- --blue-sidebar-color-h: #{$blue-sidebar-color-h};
104
- --blue-sidebar-color-s: #{$blue-sidebar-color-s};
105
- --blue-sidebar-color-l: #{$blue-sidebar-color-l};
106
- --blue-sidebar-color: #{$blue-sidebar-color};
91
+ --blue-sidebar-color: #{$sidebar-color};
107
92
  --blue-theme: var(--theme, #{$theme});
108
93
  --blue-shimmering: 0.8;
109
94
 
110
- --blue-app-bg: var(--blue-theme, #{$app-bg});
111
- --blue-sidebar-bg: var(--blue-theme, #{$sidebar-bg});
112
- --blue-header-bg: var(--blue-theme, #{$header-bg});
95
+ --blue-app-bg: #{$app-bg};
96
+ --blue-sidebar-bg: #{$sidebar-bg};
97
+ --blue-header-bg: #{$header-bg};
113
98
  --blue-action-link-bg-color: var(--blue-theme);
114
99
  --blue-menu-item-indicator-bg: #{$sidebar-indicator-color};
115
100
  }
@@ -94,7 +94,8 @@
94
94
  }
95
95
 
96
96
  &:hover,
97
- &:active {
97
+ &:active,
98
+ &.highlighted {
98
99
  color: inherit;
99
100
  border-color: transparent;
100
101
 
@@ -104,6 +105,19 @@
104
105
  }
105
106
  }
106
107
 
108
+ &.highlighted {
109
+ &::before {
110
+ opacity: 0.16;
111
+ }
112
+ }
113
+
114
+ &:hover,
115
+ &:active {
116
+ &::before {
117
+ opacity: 0.25;
118
+ }
119
+ }
120
+
107
121
  &.active::after {
108
122
  content: "";
109
123
  position: absolute;
@@ -127,7 +141,7 @@
127
141
 
128
142
  .blue-sidebar {
129
143
  width: $width;
130
- color: $sidebar-color;
144
+ color: var(--blue-sidebar-color);
131
145
  background: var(--blue-sidebar-bg);
132
146
  position: fixed;
133
147
  left: 0;
@@ -17,10 +17,18 @@ export interface LayoutProps {
17
17
  */
18
18
  onChangeSidebarIn?: (sidebarIn: boolean) => void;
19
19
  style?: CSSProperties;
20
+ /**
21
+ * Set `true` to hide button to toggle `expandSidebar` state.
22
+ */
23
+ hideToggleExpandSidebar?: boolean;
20
24
  /**
21
25
  * Sidebar is automatically expanded on wider views.
22
26
  */
23
27
  expandSidebar?: boolean;
28
+ /**
29
+ * React to changes of the `expandSidebar` state.
30
+ */
31
+ onChangeExpandSidebar?: (expandSidebar: boolean) => void;
24
32
  /**
25
33
  * Disables sidebar.
26
34
  */
@@ -48,6 +56,11 @@ export interface LayoutProps {
48
56
  * If you don't use blueicon, you can define another icon element for the sidebar toggle button.
49
57
  */
50
58
  sidebarToggleIconComponent?: any;
59
+ /**
60
+ * Set `true` if you want to use the Utilities functions for status and alert.
61
+ * Set `false` if you want to use `StatusProvider` instead.
62
+ */
63
+ enableStatus?: boolean;
51
64
  /**
52
65
  * Will replace status icons with custom ones. This will also overwrite the `useBlueicons` option.
53
66
  * This can be a SVG component or a normal element component.
@@ -71,6 +84,7 @@ export interface LayoutProps {
71
84
  }
72
85
  export interface LayoutState {
73
86
  sidebarIn: boolean;
87
+ expandSidebar: boolean;
74
88
  match: any;
75
89
  history: string[];
76
90
  hash: string;
@@ -103,17 +117,18 @@ export default class Layout extends Component<LayoutProps, LayoutState> {
103
117
  constructor(props: LayoutProps);
104
118
  onHashChange(): void;
105
119
  static get defaultProps(): {
106
- expandSidebar: boolean;
107
120
  hideSidebarMenu: boolean;
108
121
  unrouteable: boolean;
109
122
  disableTitleSet: boolean;
110
123
  sidebarToggleIconComponent: JSX.Element;
124
+ enableStatus: boolean;
111
125
  statusIcons: {
112
126
  danger: JSX.Element;
113
127
  info: JSX.Element;
114
128
  success: JSX.Element;
115
129
  warning: JSX.Element;
116
130
  };
131
+ hideToggleExpandSidebar: boolean;
117
132
  };
118
133
  componentDidMount(): void;
119
134
  componentWillUnmount(): void;
@@ -124,5 +139,6 @@ export default class Layout extends Component<LayoutProps, LayoutState> {
124
139
  addEventListener(param1: any, param2: any, param3: any, listenerId?: string): void;
125
140
  removeEventListener(type: string, listenerId: string): void;
126
141
  removeDuplicatedEventListeners(): void;
142
+ toggleExpandSidebar(): void;
127
143
  render(): JSX.Element;
128
144
  }
@@ -30,6 +30,10 @@ export interface MenuItemProps {
30
30
  * Should be set as active.
31
31
  */
32
32
  isActive?: boolean;
33
+ /**
34
+ * Set true to highlight the current menu item.
35
+ */
36
+ highlighted?: boolean;
33
37
  /**
34
38
  * When using Blue React's routing system: define this link as home page link.
35
39
  */
@@ -1,4 +1,4 @@
1
- import React, { ReactNode } from "react";
1
+ import React, { ReactNode, RefObject } from "react";
2
2
  export interface SearchProps {
3
3
  autoFocus?: boolean;
4
4
  /**
@@ -7,8 +7,8 @@ export interface SearchProps {
7
7
  body?: boolean;
8
8
  className?: string;
9
9
  icon?: any;
10
- onChange?: (event: React.ChangeEvent) => void;
11
- onSubmit?: (event: React.FormEvent) => void;
10
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
11
+ onSubmit?: (event: React.FormEvent<HTMLFormElement>) => void;
12
12
  placeholder?: string;
13
13
  /**
14
14
  * Allow reset?
@@ -25,6 +25,10 @@ export interface SearchProps {
25
25
  value?: string;
26
26
  children?: ReactNode;
27
27
  id?: string;
28
+ /**
29
+ * Set `ref` prop of the input element. Let's you take control of it from the outside, e.g. to set focus.
30
+ */
31
+ inputRef?: RefObject<HTMLInputElement>;
28
32
  }
29
33
  /**
30
34
  * A search bar that can be placed to the sidebar or on a page.
@@ -0,0 +1,21 @@
1
+ /// <reference types="react" />
2
+ import { MenuItemProps } from "./MenuItem";
3
+ export interface SidebarMenuItemProps extends MenuItemProps {
4
+ outerClass?: string;
5
+ }
6
+ /**
7
+ * Extends `MenuItem` with following features:
8
+ * * Shows provided label as tooltip if sidebar is closed.
9
+ * * Children will be displayed on the right side of the parent item.
10
+ *
11
+ * **Important!** Set the following props to the surrounding `SidebarMenu` to provide problems with tooltips:
12
+ * ```jsx
13
+ * <SidebarMenu
14
+ * sidebarClass="overflow-visible"
15
+ * menuClass="overflow-visible"
16
+ * >
17
+ * ...
18
+ * </SidebarMenu>
19
+ * ```
20
+ */
21
+ export default function SidebarMenuItem({ outerClass, children, onClick, ...props }: SidebarMenuItemProps): JSX.Element;
@@ -0,0 +1,10 @@
1
+ import { MouseEventHandler, ReactNode } from "react";
2
+ export interface SidebarTogglerProps {
3
+ className?: string;
4
+ sidebarToggleIconComponent: ReactNode;
5
+ onClick: MouseEventHandler<HTMLButtonElement>;
6
+ }
7
+ /**
8
+ * Button to toggle sidebar state. Designed for internal use inside of `Layout`.
9
+ */
10
+ export default function SidebarToggler({ className, sidebarToggleIconComponent, onClick }: SidebarTogglerProps): JSX.Element;
@@ -13,9 +13,13 @@ export declare function hideSuccess(): void;
13
13
  export declare function toggleActions(): void;
14
14
  /**
15
15
  * Resets alert messages that was set with `setAlertMessage`.
16
+ * When using React, you should use `StatusProvider` instead: https://bruegmann.github.io/blue-react/v8/component/StatusProvider
16
17
  * @param alertClassName Leave empty to reset messages of any status type
17
18
  */
18
19
  export declare function resetAlertMessage(alertClassName?: StatusType): void;
20
+ /**
21
+ * When using React, you should use `StatusProvider` instead: https://bruegmann.github.io/blue-react/v8/component/StatusProvider
22
+ */
19
23
  export declare function setAlertMessage(message: string, alertClassName?: StatusType, close?: boolean, detailText?: string): void;
20
24
  export declare const guid: () => string;
21
25
  export declare function scrollToTop(): void;
package/index.d.ts CHANGED
@@ -18,15 +18,9 @@ export { ActionMenuSwitchProps } from "./dist/types/components/ActionMenuSwitch"
18
18
  export { default as Body } from "./dist/types/components/Body"
19
19
  export { BodyProps } from "./dist/types/components/Body"
20
20
 
21
- export { default as BodyRounded } from "./dist/types/components/BodyRounded"
22
- export { BodyRoundedProps } from "./dist/types/components/BodyRounded"
23
-
24
21
  export { default as Caret } from "./dist/types/components/Caret"
25
22
  export { CaretProps } from "./dist/types/components/Caret"
26
23
 
27
- export { default as DocumentView } from "./dist/types/components/DocumentView"
28
- export { DocumentViewProps } from "./dist/types/components/DocumentView"
29
-
30
24
  export { default as Header } from "./dist/types/components/Header"
31
25
  export { HeaderProps } from "./dist/types/components/Header"
32
26
 
@@ -56,12 +50,17 @@ export { SearchProps } from "./dist/types/components/Search"
56
50
  export { default as SidebarMenu } from "./dist/types/components/SidebarMenu"
57
51
  export { SidebarMenuProps } from "./dist/types/components/SidebarMenu"
58
52
 
53
+ export { default as SidebarMenuItem } from "./dist/types/components/SidebarMenuItem"
54
+ export { SidebarMenuItemProps } from "./dist/types/components/SidebarMenuItem"
55
+
59
56
  export { default as SlimContainer } from "./dist/types/components/SlimContainer"
60
57
  export { SlimContainerProps } from "./dist/types/components/SlimContainer"
61
58
 
62
59
  export { default as Status } from "./dist/types/components/Status"
63
60
  export { StatusProps } from "./dist/types/components/Status"
64
61
 
62
+ export { StatusProvider, useStatus } from "./dist/types/components/StatusProvider"
63
+
65
64
  export { default as Switch } from "./dist/types/components/Switch"
66
65
  export { SwitchProps } from "./dist/types/components/Switch"
67
66
 
package/index.js CHANGED
@@ -1,9 +1,7 @@
1
1
  exports.ActionMenu = require("./dist/components/ActionMenu.js")["default"]
2
2
  exports.ActionMenuSwitch = require("./dist/components/ActionMenuSwitch.js")["default"]
3
3
  exports.Body = require("./dist/components/Body.js")["default"]
4
- exports.BodyRounded = require("./dist/components/BodyRounded.js")["default"]
5
4
  exports.Caret = require("./dist/components/Caret.js")["default"]
6
- exports.DocumentView = require("./dist/components/DocumentView.js")["default"]
7
5
  exports.Layout = require("./dist/components/Layout.js")["default"]
8
6
  exports.Header = require("./dist/components/Header.js")["default"]
9
7
  exports.HeaderTitle = require("./dist/components/HeaderTitle.js")["default"]
@@ -16,6 +14,7 @@ exports.Outside = require("./dist/components/Outside.js")["default"]
16
14
  exports.Page = require("./dist/components/Page.js")["default"]
17
15
  exports.Search = require("./dist/components/Search.js")["default"]
18
16
  exports.SidebarMenu = require("./dist/components/SidebarMenu.js")["default"]
17
+ exports.SidebarMenuItem = require("./dist/components/SidebarMenuItem.js")["default"]
19
18
  exports.SlimContainer = require("./dist/components/SlimContainer.js")["default"]
20
19
  exports.Status = require("./dist/components/Status.js")["default"]
21
20
  exports.StatusProvider = require("./dist/components/StatusProvider.js")["StatusProvider"]
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "blue-react",
3
- "version": "9.0.0-alpha1",
3
+ "version": "9.0.0",
4
4
  "description": "Blue React Components",
5
5
  "license": "LGPL-3.0-or-later",
6
6
  "main": "index.js",
7
7
  "types": "index.d.ts",
8
- "homepage": "https://bruegmann.github.io/blue-react/v8",
8
+ "homepage": "https://bruegmann.github.io/blue-react/v9",
9
9
  "repository": {
10
10
  "type": "git",
11
11
  "url": "https://github.com/bruegmann/blue-react.git"
@@ -26,13 +26,13 @@
26
26
  "predeploy": "npm run build-docs",
27
27
  "deploy": "gh-pages --dist build --dest v9",
28
28
  "prepublishOnly": "npm i && npm run build-release",
29
- "release": "npm publish --tag next && npm run deploy",
29
+ "release": "npm publish && npm run deploy",
30
30
  "prettier": "npx prettier --write .",
31
31
  "license-report": "npx license-report --prod --output=json > ./src/docs/data/license-report.json"
32
32
  },
33
33
  "dependencies": {
34
34
  "@popperjs/core": "^2.11.5",
35
- "bootstrap": "~5.2.2",
35
+ "bootstrap": "~5.3.0",
36
36
  "clsx": "^1.1.1"
37
37
  },
38
38
  "peerDependencies": {
@@ -54,7 +54,6 @@
54
54
  "@types/react-router-dom": "^5.3.3",
55
55
  "@types/react-syntax-highlighter": "^13.5.0",
56
56
  "autoprefixer": "^10.3.6",
57
- "blue-web-components": "github:bruegmann/blue-web-components",
58
57
  "gh-pages": "^3.1.0",
59
58
  "license-report": "^6.2.0",
60
59
  "lint-staged": "^11.1.2",
@@ -1,44 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = BodyRounded;
7
-
8
- var _react = _interopRequireDefault(require("react"));
9
-
10
- var _Body = _interopRequireDefault(require("./Body"));
11
-
12
- var _excluded = ["classNameTop", "classNameBottom", "children"];
13
-
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
-
16
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
17
-
18
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
19
-
20
- /**
21
- * Extended variation of `Body` with rounded elements on top and bottom of the page.
22
- */
23
- function BodyRounded(_ref) {
24
- var classNameTop = _ref.classNameTop,
25
- classNameBottom = _ref.classNameBottom,
26
- children = _ref.children,
27
- bodyProps = _objectWithoutProperties(_ref, _excluded);
28
-
29
- return /*#__PURE__*/_react.default.createElement(_Body.default, bodyProps, /*#__PURE__*/_react.default.createElement("div", {
30
- className: "blue-app-body-rounded-top bg-theme pt-1 d-none d-md-block " + classNameTop,
31
- style: {
32
- height: "1rem"
33
- }
34
- }, /*#__PURE__*/_react.default.createElement("div", {
35
- className: "rounded-top bg-body w-100 h-100"
36
- })), children, /*#__PURE__*/_react.default.createElement("div", {
37
- className: "blue-app-body-rounded-bottom bg-theme pb-1 d-none d-md-block " + classNameBottom,
38
- style: {
39
- height: "1rem"
40
- }
41
- }, /*#__PURE__*/_react.default.createElement("div", {
42
- className: "rounded-bottom bg-body w-100 h-100"
43
- })));
44
- }