@itwin/appui-react 5.21.1 → 5.22.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 (41) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/lib/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.d.ts +115 -0
  3. package/lib/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.d.ts.map +1 -0
  4. package/lib/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.js +82 -0
  5. package/lib/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.js.map +1 -0
  6. package/lib/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.scss +64 -0
  7. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.d.ts +27 -0
  8. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.d.ts.map +1 -0
  9. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.js +38 -0
  10. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.js.map +1 -0
  11. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.scss +44 -0
  12. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.d.ts +12 -0
  13. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.d.ts.map +1 -0
  14. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.js +31 -0
  15. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.js.map +1 -0
  16. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.scss +47 -0
  17. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.d.ts +18 -0
  18. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.d.ts.map +1 -0
  19. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.js +52 -0
  20. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.js.map +1 -0
  21. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.scss +6 -0
  22. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.d.ts +15 -0
  23. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.d.ts.map +1 -0
  24. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.js +35 -0
  25. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.js.map +1 -0
  26. package/lib/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.scss +29 -0
  27. package/lib/appui-react.d.ts +5 -0
  28. package/lib/appui-react.d.ts.map +1 -1
  29. package/lib/appui-react.js +5 -0
  30. package/lib/appui-react.js.map +1 -1
  31. package/lib/cjs/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.scss +64 -0
  32. package/lib/cjs/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.scss +44 -0
  33. package/lib/cjs/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.scss +47 -0
  34. package/lib/cjs/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.scss +6 -0
  35. package/lib/cjs/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.scss +29 -0
  36. package/lib/esm/appui-react/layout/widget/widget-content-layout/WidgetContentLayout.scss +64 -0
  37. package/lib/esm/appui-react/layout/widget/widget-content-layout/header/HeaderIconToolbar.scss +44 -0
  38. package/lib/esm/appui-react/layout/widget/widget-content-layout/header/HeaderLayout.scss +47 -0
  39. package/lib/esm/appui-react/layout/widget/widget-content-layout/header/HeaderSearch.scss +6 -0
  40. package/lib/esm/appui-react/layout/widget/widget-content-layout/header/HeaderTopBar.scss +29 -0
  41. package/package.json +7 -7
@@ -0,0 +1,47 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerLayout {
3
+ width: 100%;
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: var(--iui-size-s);
7
+ container-type: inline-size;
8
+
9
+ .nz-menu {
10
+ width: 100%;
11
+ max-width: 560px;
12
+ }
13
+
14
+ .nz-buttons {
15
+ display: flex;
16
+ gap: var(--iui-size-s);
17
+ align-items: center;
18
+
19
+ width: 100%;
20
+ max-width: 560px;
21
+ > button {
22
+ overflow: auto;
23
+ min-width: fit-content;
24
+ }
25
+ }
26
+
27
+ .nz-title {
28
+ font-weight: bolder;
29
+ text-overflow: ellipsis;
30
+ overflow: hidden;
31
+ }
32
+
33
+ .nz-remainingItems {
34
+ overflow-x: auto;
35
+
36
+ .nz-buttons {
37
+ flex-wrap: wrap;
38
+ }
39
+ }
40
+
41
+ .nz-headerTopBarWrapper {
42
+ display: flex;
43
+ gap: var(--iui-size-s);
44
+ width: 100%;
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,6 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerSearch {
3
+ max-width: var(--_appui-max-search-width);
4
+ border-radius: var(--iui-border-radius-1);
5
+ }
6
+ }
@@ -0,0 +1,29 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerTopBar {
3
+ gap: var(--iui-size-s);
4
+ justify-content: space-between;
5
+ display: grid;
6
+ grid-template-columns: auto 1fr;
7
+ width: 100%;
8
+
9
+ &.nz-singleColumn {
10
+ grid-template-columns: 1fr;
11
+ }
12
+
13
+ .nz-primaryContent {
14
+ display: flex;
15
+ gap: var(--iui-size-s);
16
+ align-items: center;
17
+ text-wrap-mode: nowrap;
18
+ overflow: auto;
19
+ }
20
+ }
21
+
22
+ @container (width < 200px) {
23
+ .nz-widget-widgetContentLayout-header-headerTopBar {
24
+ &[data-search-expanded="true"] {
25
+ overflow: auto;
26
+ }
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,64 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout {
3
+ display: flex;
4
+ flex-direction: column;
5
+ height: 100%;
6
+ width: 100%;
7
+ position: relative;
8
+ overflow: hidden;
9
+ }
10
+ .nz-widget-widgetContentLayout-header {
11
+ display: flex;
12
+ flex-direction: column;
13
+ gap: var(--iui-size-s);
14
+ padding: var(--iui-size-s);
15
+ }
16
+
17
+ .nz-widget-widgetContentLayout-body_wrapper {
18
+ position: relative;
19
+ display: flex;
20
+ flex-direction: column;
21
+ flex: 1;
22
+ height: 0px;
23
+ width: 100%;
24
+ gap: var(--iui-size-s);
25
+ padding: var(--iui-size-s);
26
+
27
+ .nz-widget-widgetContentLayout-body {
28
+ display: flex;
29
+ width: 100%;
30
+ flex-direction: column;
31
+ gap: var(--iui-size-s);
32
+ flex: 1;
33
+ overflow: auto;
34
+ }
35
+
36
+ &.nz-nonBlockingLoading {
37
+ padding-block-start: 0px;
38
+ }
39
+ }
40
+
41
+ .nz-widget-widgetContentLayout-footer {
42
+ display: flex;
43
+ gap: var(--iui-size-s);
44
+ justify-content: flex-end;
45
+ width: 100%;
46
+ padding: var(--iui-size-s);
47
+ }
48
+
49
+ .nz-widget-widgetContentLayout-loadingOverlay {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+ right: 0;
54
+ bottom: 0;
55
+ display: grid;
56
+ place-items: center;
57
+ z-index: 1000;
58
+ backdrop-filter: blur(5px);
59
+ }
60
+
61
+ .nz-widget-widgetContentLayout-divider {
62
+ margin-inline: var(--iui-size-s);
63
+ }
64
+ }
@@ -0,0 +1,44 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerIconToolbar {
3
+ --_appui-icon-size: var(--iui-component-height);
4
+ --_appui-max-search-width: 200px;
5
+ min-width: var(--_appui-icon-size);
6
+ min-height: var(--_appui-icon-size);
7
+
8
+ &[data-_appui-icon-size="small"] {
9
+ --icon-size: var(--iui-component-height-small);
10
+ }
11
+
12
+ &[data-_appui-icon-size="large"] {
13
+ --icon-size: var(--iui-component-height-large);
14
+ }
15
+
16
+ &[data-_appui-search-expanded="true"] {
17
+ &[data-_appui-single-item="true"] {
18
+ min-width: var(--_appui-max-search-width);
19
+ }
20
+ &[data-_appui-single-item="false"] {
21
+ min-width: calc(
22
+ var(--_appui-max-search-width) + var(--_appui-icon-size) +
23
+ var(--iui-size-s)
24
+ );
25
+ }
26
+ }
27
+
28
+ .nz-buttonGroup {
29
+ gap: var(--iui-size-s);
30
+ &:before {
31
+ content: "";
32
+ flex: 1;
33
+ }
34
+
35
+ > :first-child {
36
+ margin-inline-start: calc(-1 * var(--iui-size-s));
37
+ }
38
+
39
+ .nz-iconButton[data-iui-active="true"]:after {
40
+ inset-block: unset;
41
+ }
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,47 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerLayout {
3
+ width: 100%;
4
+ display: flex;
5
+ flex-direction: column;
6
+ gap: var(--iui-size-s);
7
+ container-type: inline-size;
8
+
9
+ .nz-menu {
10
+ width: 100%;
11
+ max-width: 560px;
12
+ }
13
+
14
+ .nz-buttons {
15
+ display: flex;
16
+ gap: var(--iui-size-s);
17
+ align-items: center;
18
+
19
+ width: 100%;
20
+ max-width: 560px;
21
+ > button {
22
+ overflow: auto;
23
+ min-width: fit-content;
24
+ }
25
+ }
26
+
27
+ .nz-title {
28
+ font-weight: bolder;
29
+ text-overflow: ellipsis;
30
+ overflow: hidden;
31
+ }
32
+
33
+ .nz-remainingItems {
34
+ overflow-x: auto;
35
+
36
+ .nz-buttons {
37
+ flex-wrap: wrap;
38
+ }
39
+ }
40
+
41
+ .nz-headerTopBarWrapper {
42
+ display: flex;
43
+ gap: var(--iui-size-s);
44
+ width: 100%;
45
+ }
46
+ }
47
+ }
@@ -0,0 +1,6 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerSearch {
3
+ max-width: var(--_appui-max-search-width);
4
+ border-radius: var(--iui-border-radius-1);
5
+ }
6
+ }
@@ -0,0 +1,29 @@
1
+ @layer appui.component {
2
+ .nz-widget-widgetContentLayout-header-headerTopBar {
3
+ gap: var(--iui-size-s);
4
+ justify-content: space-between;
5
+ display: grid;
6
+ grid-template-columns: auto 1fr;
7
+ width: 100%;
8
+
9
+ &.nz-singleColumn {
10
+ grid-template-columns: 1fr;
11
+ }
12
+
13
+ .nz-primaryContent {
14
+ display: flex;
15
+ gap: var(--iui-size-s);
16
+ align-items: center;
17
+ text-wrap-mode: nowrap;
18
+ overflow: auto;
19
+ }
20
+ }
21
+
22
+ @container (width < 200px) {
23
+ .nz-widget-widgetContentLayout-header-headerTopBar {
24
+ &[data-search-expanded="true"] {
25
+ overflow: auto;
26
+ }
27
+ }
28
+ }
29
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itwin/appui-react",
3
- "version": "5.21.1",
3
+ "version": "5.22.0",
4
4
  "description": "A react component library for AppUI framework",
5
5
  "type": "module",
6
6
  "types": "./lib/appui-react.d.ts",
@@ -45,9 +45,9 @@
45
45
  "react-dom": "^18.0.0 || ^19.0.0",
46
46
  "react-redux": "^7.2.2 || ^8.0.0 || ^9.0.0",
47
47
  "redux": "^4.1.0 || ^5.0.0",
48
- "@itwin/components-react": "5.21.1",
49
- "@itwin/core-react": "5.21.1",
50
- "@itwin/imodel-components-react": "5.21.1"
48
+ "@itwin/components-react": "5.22.0",
49
+ "@itwin/core-react": "5.22.0",
50
+ "@itwin/imodel-components-react": "5.22.0"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@itwin/appui-abstract": "^5.1.0",
@@ -90,9 +90,9 @@
90
90
  "typescript": "~5.6.2",
91
91
  "upath": "^2.0.1",
92
92
  "vitest": "^3.2.4",
93
- "@itwin/components-react": "5.21.1",
94
- "@itwin/core-react": "5.21.1",
95
- "@itwin/imodel-components-react": "5.21.1"
93
+ "@itwin/components-react": "5.22.0",
94
+ "@itwin/core-react": "5.22.0",
95
+ "@itwin/imodel-components-react": "5.22.0"
96
96
  },
97
97
  "dependencies": {
98
98
  "@itwin/itwinui-icons-react": "^2.8.0",