@brillout/docpress 0.8.0 → 0.8.1
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.
|
@@ -94,7 +94,7 @@ function groupByColumnLayout(navItems) {
|
|
|
94
94
|
}
|
|
95
95
|
}
|
|
96
96
|
assert(isFullWidth !== undefined);
|
|
97
|
-
if (navItem.
|
|
97
|
+
if (navItem.isColumnLayoutElement) {
|
|
98
98
|
assert(navItem.level === 1 || navItem.level === 4);
|
|
99
99
|
var navItemColumnEntry = __assign(__assign({}, navItem), { navItemChilds: [] });
|
|
100
100
|
navItemsColumnEntries.push(navItemColumnEntry);
|
|
@@ -25,7 +25,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
25
25
|
export { getStyleColumnLayout };
|
|
26
26
|
export { determineColumnLayoutEntries };
|
|
27
27
|
import { css } from '../utils/css';
|
|
28
|
-
import { assert, isBrowser } from '../utils/server';
|
|
28
|
+
import { assert, assertUsage, isBrowser } from '../utils/server';
|
|
29
29
|
assert(!isBrowser());
|
|
30
30
|
var columnWidthMin = 300;
|
|
31
31
|
var columnWidthMax = 350;
|
|
@@ -68,18 +68,27 @@ function determineColumnLayoutEntries(navItems) {
|
|
|
68
68
|
columns = [];
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
var navItemPrevious = navItemsWithLength[i - 1];
|
|
72
|
+
var navItemNext = navItemsWithLength[i + 1];
|
|
73
|
+
if (!isFullWidth ? navItem.level === 1 : (navItem.level === 4 && navItemPrevious.level !== 1) || isFullWidthBegin) {
|
|
74
74
|
if (isFullWidth) {
|
|
75
75
|
assert(navItem.level === 4 || (navItem.level === 1 && isFullWidthBegin));
|
|
76
76
|
}
|
|
77
77
|
else {
|
|
78
78
|
assert(navItem.level === 1);
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
80
|
+
var numberOfHeadings = navItem.numberOfHeadings;
|
|
81
|
+
assert(numberOfHeadings !== null);
|
|
82
|
+
if (isFullWidthBegin) {
|
|
83
|
+
assert(navItem.level === 1);
|
|
84
|
+
assertUsage(navItemNext && navItemNext.level === 4,
|
|
85
|
+
// We can lift this requirement, but it isn't trivial to implement.
|
|
86
|
+
'level-1 headings with menuModalFullWidth need to be followed by a level-4 heading');
|
|
87
|
+
assert(navItemNext.numberOfHeadings);
|
|
88
|
+
numberOfHeadings = navItemNext.numberOfHeadings;
|
|
89
|
+
}
|
|
90
|
+
columns.push(numberOfHeadings);
|
|
91
|
+
navItems[i].isColumnLayoutElement = true;
|
|
83
92
|
}
|
|
84
93
|
});
|
|
85
94
|
columnLayouts.push(columns);
|
|
@@ -19,7 +19,7 @@ type NavItem = {
|
|
|
19
19
|
menuModalFullWidth?: true
|
|
20
20
|
}
|
|
21
21
|
type NavItemAll = NavItem & {
|
|
22
|
-
|
|
22
|
+
isColumnLayoutElement?: true
|
|
23
23
|
}
|
|
24
24
|
function NavigationContent(props: {
|
|
25
25
|
navItems: NavItem[]
|
|
@@ -143,7 +143,7 @@ function groupByColumnLayout(navItems: NavItemComputed[]) {
|
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
assert(isFullWidth !== undefined)
|
|
146
|
-
if (navItem.
|
|
146
|
+
if (navItem.isColumnLayoutElement) {
|
|
147
147
|
assert(navItem.level === 1 || navItem.level === 4)
|
|
148
148
|
const navItemColumnEntry = { ...navItem, navItemChilds: [] }
|
|
149
149
|
navItemsColumnEntries.push(navItemColumnEntry)
|
package/package.json
CHANGED
|
@@ -12,7 +12,7 @@ export { determineColumnLayoutEntries }
|
|
|
12
12
|
|
|
13
13
|
import { type NavItemAll } from '../navigation/Navigation'
|
|
14
14
|
import { css } from '../utils/css'
|
|
15
|
-
import { assert, isBrowser } from '../utils/server'
|
|
15
|
+
import { assert, assertUsage, isBrowser } from '../utils/server'
|
|
16
16
|
assert(!isBrowser())
|
|
17
17
|
const columnWidthMin = 300
|
|
18
18
|
const columnWidthMax = 350
|
|
@@ -60,19 +60,30 @@ function determineColumnLayoutEntries(navItems: NavItemAll[]): { columnLayouts:
|
|
|
60
60
|
columns = []
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
+
const navItemPrevious = navItemsWithLength[i - 1]
|
|
64
|
+
const navItemNext = navItemsWithLength[i + 1]
|
|
63
65
|
if (
|
|
64
|
-
!isFullWidth
|
|
65
|
-
? navItem.level === 1
|
|
66
|
-
: (navItem.level === 4 && navItemsWithLength[i - 1]!.level !== 1) || isFullWidthBegin
|
|
66
|
+
!isFullWidth ? navItem.level === 1 : (navItem.level === 4 && navItemPrevious!.level !== 1) || isFullWidthBegin
|
|
67
67
|
) {
|
|
68
68
|
if (isFullWidth) {
|
|
69
69
|
assert(navItem.level === 4 || (navItem.level === 1 && isFullWidthBegin))
|
|
70
70
|
} else {
|
|
71
71
|
assert(navItem.level === 1)
|
|
72
72
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
73
|
+
let { numberOfHeadings } = navItem
|
|
74
|
+
assert(numberOfHeadings !== null)
|
|
75
|
+
if (isFullWidthBegin) {
|
|
76
|
+
assert(navItem.level === 1)
|
|
77
|
+
assertUsage(
|
|
78
|
+
navItemNext && navItemNext.level === 4,
|
|
79
|
+
// We can lift this requirement, but it isn't trivial to implement.
|
|
80
|
+
'level-1 headings with menuModalFullWidth need to be followed by a level-4 heading',
|
|
81
|
+
)
|
|
82
|
+
assert(navItemNext.numberOfHeadings)
|
|
83
|
+
numberOfHeadings = navItemNext.numberOfHeadings
|
|
84
|
+
}
|
|
85
|
+
columns.push(numberOfHeadings)
|
|
86
|
+
navItems[i].isColumnLayoutElement = true
|
|
76
87
|
}
|
|
77
88
|
})
|
|
78
89
|
columnLayouts.push(columns)
|