@cbnventures/docusaurus-preset-nova 0.26.0 → 0.27.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.
- package/build/package.json +10 -10
- package/build/src/tests/overlay-dismissal.test.d.ts +2 -0
- package/build/src/tests/overlay-dismissal.test.d.ts.map +1 -0
- package/build/src/tests/overlay-dismissal.test.js +53 -0
- package/build/src/tests/overlay-dismissal.test.js.map +1 -0
- package/build/src/tests/translation-plurals.test.d.ts +2 -0
- package/build/src/tests/translation-plurals.test.d.ts.map +1 -0
- package/build/src/tests/translation-plurals.test.js +52 -0
- package/build/src/tests/translation-plurals.test.js.map +1 -0
- package/build/src/theme/DocSidebarMobile/panel.d.ts.map +1 -1
- package/build/src/theme/DocSidebarMobile/panel.js +7 -1
- package/build/src/theme/DocSidebarMobile/panel.js.map +1 -1
- package/build/src/theme/TOCCollapsible/panel.d.ts.map +1 -1
- package/build/src/theme/TOCCollapsible/panel.js +15 -4
- package/build/src/theme/TOCCollapsible/panel.js.map +1 -1
- package/build/src/types/tests/overlay-dismissal.test.d.ts +54 -0
- package/build/src/types/tests/translation-plurals.test.d.ts +55 -0
- package/build/src/types/theme/TOCCollapsible/panel.d.ts +4 -0
- package/package.json +10 -10
- package/translations/locales/he/theme-nova.json +1 -0
- package/translations/locales/id/theme-nova.json +1 -0
package/build/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cbnventures/docusaurus-preset-nova",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "Scripts, templates, and project configuration for the common JavaScript and TypeScript developer",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint",
|
|
@@ -76,6 +76,14 @@
|
|
|
76
76
|
"dev:watch-theme": "tsc --project tsconfig.theme.json --watch",
|
|
77
77
|
"dev:watch-cli": "tsc --project tsconfig.cli.json --watch",
|
|
78
78
|
"dev:fix-shiki-import": "node ../../scripts/fix-shiki-import.mjs --watch",
|
|
79
|
+
"check": "node ../../scripts/nova-run-scripts.mjs --sequential 'check:*'",
|
|
80
|
+
"check:lint": "eslint ./ --max-warnings=0",
|
|
81
|
+
"check:types-plugin": "node ../../scripts/nova-type-check.mjs --project tsconfig.plugin.json",
|
|
82
|
+
"check:types-theme": "node ../../scripts/nova-type-check.mjs --project tsconfig.theme.json",
|
|
83
|
+
"check:types-worker": "node ../../scripts/nova-type-check.mjs --project tsconfig.worker.json",
|
|
84
|
+
"check:types-cli": "node ../../scripts/nova-type-check.mjs --project tsconfig.cli.json",
|
|
85
|
+
"check:types-config": "node ../../scripts/nova-type-check.mjs --project tsconfig.config.json",
|
|
86
|
+
"check:test": "vitest run",
|
|
79
87
|
"build": "node ../../scripts/nova-run-scripts.mjs --sequential 'build:*'",
|
|
80
88
|
"build:transpile-theme": "tsc --project tsconfig.theme.json --outDir ./build --skipLibCheck",
|
|
81
89
|
"build:transpile-plugin": "tsc --project tsconfig.plugin.json --outDir ./build --skipLibCheck",
|
|
@@ -85,14 +93,6 @@
|
|
|
85
93
|
"build:fix-shiki-import": "node ../../scripts/fix-shiki-import.mjs",
|
|
86
94
|
"build:copy-styles": "node ../../scripts/copy-styles.mjs",
|
|
87
95
|
"build:fix-perms": "shx chmod +x ./build/src/cli/index.js",
|
|
88
|
-
"check": "node ../../scripts/nova-run-scripts.mjs --sequential 'check:*'",
|
|
89
|
-
"check:lint": "eslint ./ --max-warnings=0",
|
|
90
|
-
"check:types-plugin": "node ../../scripts/nova-type-check.mjs --project tsconfig.plugin.json",
|
|
91
|
-
"check:types-theme": "node ../../scripts/nova-type-check.mjs --project tsconfig.theme.json",
|
|
92
|
-
"check:types-worker": "node ../../scripts/nova-type-check.mjs --project tsconfig.worker.json",
|
|
93
|
-
"check:types-cli": "node ../../scripts/nova-type-check.mjs --project tsconfig.cli.json",
|
|
94
|
-
"check:types-config": "node ../../scripts/nova-type-check.mjs --project tsconfig.config.json",
|
|
95
|
-
"check:test": "vitest run",
|
|
96
96
|
"clean": "node ../../scripts/nova-run-scripts.mjs --parallel 'clean:*'",
|
|
97
97
|
"clean:build": "shx rm -rf ./build"
|
|
98
98
|
},
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"node": "^22 || ^24"
|
|
101
101
|
},
|
|
102
102
|
"dependencies": {
|
|
103
|
-
"@cbnventures/nova": "0.
|
|
103
|
+
"@cbnventures/nova": "0.27.0",
|
|
104
104
|
"@codesandbox/sandpack-react": "2.20.0",
|
|
105
105
|
"@docusaurus/plugin-content-blog": "3.10.2",
|
|
106
106
|
"@docusaurus/plugin-content-docs": "3.10.2",
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlay-dismissal.test.d.ts","sourceRoot":"","sources":["../../../src/tests/overlay-dismissal.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { strictEqual } from 'node:assert/strict';
|
|
2
|
+
import { readFile } from 'node:fs/promises';
|
|
3
|
+
import { dirname, resolve } from 'node:path';
|
|
4
|
+
import { fileURLToPath } from 'node:url';
|
|
5
|
+
import { describe, it } from 'vitest';
|
|
6
|
+
function getPackageRoot() {
|
|
7
|
+
const currentFilePath = fileURLToPath(import.meta.url);
|
|
8
|
+
const currentFileDirectory = dirname(currentFilePath);
|
|
9
|
+
return resolve(currentFileDirectory, '..', '..');
|
|
10
|
+
}
|
|
11
|
+
async function readPanel(relativePath) {
|
|
12
|
+
const panelPath = resolve(getPackageRoot(), 'src', 'theme', relativePath);
|
|
13
|
+
return readFile(panelPath, 'utf-8');
|
|
14
|
+
}
|
|
15
|
+
describe('overlay dismissal', () => {
|
|
16
|
+
const closeOnNavigationContract = [
|
|
17
|
+
' // Close overlay on navigation.',
|
|
18
|
+
' useEffect(() => {',
|
|
19
|
+
' if (isOpen === true) {',
|
|
20
|
+
' setIsClosing(true);',
|
|
21
|
+
' }',
|
|
22
|
+
'',
|
|
23
|
+
' return undefined;',
|
|
24
|
+
' }, [pathname]);',
|
|
25
|
+
].join('\n');
|
|
26
|
+
it('doc sidebar closes on navigation', async () => {
|
|
27
|
+
const source = await readPanel('DocSidebarMobile/panel.tsx');
|
|
28
|
+
const hasContract = source.includes(closeOnNavigationContract);
|
|
29
|
+
strictEqual(hasContract, true, 'Expected the mobile docs sidebar panel to start closing when its pathname changes.');
|
|
30
|
+
return;
|
|
31
|
+
});
|
|
32
|
+
it('TOC closes on navigation and heading selection', async () => {
|
|
33
|
+
const source = await readPanel('TOCCollapsible/panel.tsx');
|
|
34
|
+
const selectionCloseContract = [
|
|
35
|
+
' {TocList(payload[\'treeItems\'], () => {',
|
|
36
|
+
' setIsClosing(true);',
|
|
37
|
+
'',
|
|
38
|
+
' return undefined;',
|
|
39
|
+
' })}',
|
|
40
|
+
].join('\n');
|
|
41
|
+
const hasNavigationContract = source.includes(closeOnNavigationContract);
|
|
42
|
+
const hasSelectionHandler = source.includes('onClick={onLinkClick}');
|
|
43
|
+
const hasRecursiveSelectionHandler = source.includes('TocList(item[\'children\'], onLinkClick)');
|
|
44
|
+
const hasSelectionCloseHandler = source.includes(selectionCloseContract);
|
|
45
|
+
strictEqual(hasNavigationContract, true, 'Expected the mobile TOC panel to start closing when its pathname changes.');
|
|
46
|
+
strictEqual(hasSelectionHandler, true, 'Expected every mobile TOC heading link to receive the selection handler.');
|
|
47
|
+
strictEqual(hasRecursiveSelectionHandler, true, 'Expected nested mobile TOC heading links to retain the selection handler.');
|
|
48
|
+
strictEqual(hasSelectionCloseHandler, true, 'Expected mobile TOC heading selection to start the shared closing animation.');
|
|
49
|
+
return;
|
|
50
|
+
});
|
|
51
|
+
return;
|
|
52
|
+
});
|
|
53
|
+
//# sourceMappingURL=overlay-dismissal.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"overlay-dismissal.test.js","sourceRoot":"","sources":["../../../src/tests/overlay-dismissal.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AA8BtC,SAAS,cAAc;IACrB,MAAM,eAAe,GAA0D,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9G,MAAM,oBAAoB,GAA+D,OAAO,CAAC,eAAe,CAAC,CAAC;IAElH,OAAO,OAAO,CAAC,oBAAoB,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC;AAWD,KAAK,UAAU,SAAS,CAAC,YAA2D;IAClF,MAAM,SAAS,GAA+C,OAAO,CAAC,cAAc,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAEtH,OAAO,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AACtC,CAAC;AAWD,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,MAAM,yBAAyB,GAAsE;QACnG,mCAAmC;QACnC,qBAAqB;QACrB,4BAA4B;QAC5B,2BAA2B;QAC3B,OAAO;QACP,EAAE;QACF,uBAAuB;QACvB,mBAAmB;KACpB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;QAChD,MAAM,MAAM,GAAgF,MAAM,SAAS,CAAC,4BAA4B,CAAC,CAAC;QAC1I,MAAM,WAAW,GAAqF,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QAEjJ,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,oFAAoF,CAAC,CAAC;QAErH,OAAO;IACT,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,MAAM,GAA4F,MAAM,SAAS,CAAC,0BAA0B,CAAC,CAAC;QACpJ,MAAM,sBAAsB,GAA4G;YACtI,oDAAoD;YACpD,iCAAiC;YACjC,EAAE;YACF,+BAA+B;YAC/B,eAAe;SAChB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,MAAM,qBAAqB,GAA2G,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;QACjL,MAAM,mBAAmB,GAAyG,MAAM,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;QAC3K,MAAM,4BAA4B,GAAkH,MAAM,CAAC,QAAQ,CAAC,0CAA0C,CAAC,CAAC;QAChN,MAAM,wBAAwB,GAA8G,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAEpL,WAAW,CAAC,qBAAqB,EAAE,IAAI,EAAE,2EAA2E,CAAC,CAAC;QACtH,WAAW,CAAC,mBAAmB,EAAE,IAAI,EAAE,0EAA0E,CAAC,CAAC;QACnH,WAAW,CAAC,4BAA4B,EAAE,IAAI,EAAE,2EAA2E,CAAC,CAAC;QAC7H,WAAW,CAAC,wBAAwB,EAAE,IAAI,EAAE,8EAA8E,CAAC,CAAC;QAE5H,OAAO;IACT,CAAC,CAAC,CAAC;IAEH,OAAO;AACT,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translation-plurals.test.d.ts","sourceRoot":"","sources":["../../../src/tests/translation-plurals.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { strictEqual } from 'node:assert/strict';
|
|
2
|
+
import { readdirSync, readFileSync } from 'node:fs';
|
|
3
|
+
import { dirname, resolve } from 'node:path';
|
|
4
|
+
import { fileURLToPath } from 'node:url';
|
|
5
|
+
import { describe, it } from 'vitest';
|
|
6
|
+
function readMessageBundle(filePath) {
|
|
7
|
+
const raw = readFileSync(filePath, 'utf-8');
|
|
8
|
+
return JSON.parse(raw);
|
|
9
|
+
}
|
|
10
|
+
describe('translation plurals', () => {
|
|
11
|
+
it('every merged plural message fits its locale', () => {
|
|
12
|
+
const currentFileDirectory = dirname(fileURLToPath(import.meta.url));
|
|
13
|
+
const packageDirectory = resolve(currentFileDirectory, '../..');
|
|
14
|
+
const localesRoot = resolve(packageDirectory, 'translations/locales');
|
|
15
|
+
const upstreamLocalesRoot = resolve(packageDirectory, '../../node_modules/@docusaurus/theme-translations/locales');
|
|
16
|
+
const localeEntries = readdirSync(localesRoot, { withFileTypes: true });
|
|
17
|
+
const locales = localeEntries.filter((entry) => entry.isDirectory()).map((entry) => entry.name);
|
|
18
|
+
const violations = [];
|
|
19
|
+
for (const locale of locales) {
|
|
20
|
+
const upstreamLocale = (locale === 'en') ? 'base' : locale;
|
|
21
|
+
const commonPath = resolve(upstreamLocalesRoot, upstreamLocale, 'theme-common.json');
|
|
22
|
+
const novaPath = resolve(localesRoot, locale, 'theme-nova.json');
|
|
23
|
+
const commonMessages = readMessageBundle(commonPath);
|
|
24
|
+
const novaMessages = readMessageBundle(novaPath);
|
|
25
|
+
const mergedMessages = {
|
|
26
|
+
...commonMessages,
|
|
27
|
+
...novaMessages,
|
|
28
|
+
};
|
|
29
|
+
const maximumForms = new Intl.PluralRules(locale).resolvedOptions().pluralCategories.length;
|
|
30
|
+
for (const messageEntry of Object.entries(mergedMessages)) {
|
|
31
|
+
const entry = messageEntry;
|
|
32
|
+
const messageKey = entry[0];
|
|
33
|
+
const message = entry[1];
|
|
34
|
+
if (messageKey.endsWith('.plurals') === false) {
|
|
35
|
+
continue;
|
|
36
|
+
}
|
|
37
|
+
const formCount = message.split('|').length;
|
|
38
|
+
if (formCount > maximumForms) {
|
|
39
|
+
violations.push(`${locale}: ${messageKey} has ${formCount} forms; expected at most ${maximumForms}`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const violationsMessage = [
|
|
44
|
+
'Plural translation form mismatches:',
|
|
45
|
+
...violations,
|
|
46
|
+
].join('\n');
|
|
47
|
+
strictEqual(violations.length, 0, violationsMessage);
|
|
48
|
+
return;
|
|
49
|
+
});
|
|
50
|
+
return;
|
|
51
|
+
});
|
|
52
|
+
//# sourceMappingURL=translation-plurals.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"translation-plurals.test.js","sourceRoot":"","sources":["../../../src/tests/translation-plurals.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../src/theme/DocSidebarMobile/panel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../src/theme/DocSidebarMobile/panel.tsx"],"names":[],"mappings":"AA4CA,iBAAS,qBAAqB,uCAoG7B;AAED,eAAe,qBAAqB,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { useLocation } from '@docusaurus/router';
|
|
|
4
4
|
import { translate } from '@docusaurus/Translate';
|
|
5
5
|
import { Icon } from '@iconify/react/offline';
|
|
6
6
|
import DocSidebar from '@theme/DocSidebar';
|
|
7
|
-
import { useSyncExternalStore } from 'react';
|
|
7
|
+
import { useEffect, useSyncExternalStore, } from 'react';
|
|
8
8
|
import { createPortal } from 'react-dom';
|
|
9
9
|
import { sidebarMobileGetSnapshot, sidebarMobileSetOpen, sidebarMobileSubscribe, } from '../../lib/sidebar-mobile-store.js';
|
|
10
10
|
import { useOverlayPanel } from '../../lib/use-overlay-panel.js';
|
|
@@ -17,6 +17,12 @@ function DocSidebarMobilePanel() {
|
|
|
17
17
|
const setIsClosing = overlayPanel['setIsClosing'];
|
|
18
18
|
const handleClickOutside = overlayPanel['handleClickOutside'];
|
|
19
19
|
const panelRef = overlayPanel['panelRef'];
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
if (isOpen === true) {
|
|
22
|
+
setIsClosing(true);
|
|
23
|
+
}
|
|
24
|
+
return undefined;
|
|
25
|
+
}, [pathname]);
|
|
20
26
|
if (isOpen !== true
|
|
21
27
|
|| sidebar === null) {
|
|
22
28
|
return null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../../src/theme/DocSidebarMobile/panel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,
|
|
1
|
+
{"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../../src/theme/DocSidebarMobile/panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../src/theme/TOCCollapsible/panel.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../../../src/theme/TOCCollapsible/panel.tsx"],"names":[],"mappings":"AA8EA,iBAAS,mBAAmB,uCAiG3B;AAED,eAAe,mBAAmB,CAAC"}
|
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useLocation } from '@docusaurus/router';
|
|
2
3
|
import { translate } from '@docusaurus/Translate';
|
|
3
4
|
import { Icon } from '@iconify/react/offline';
|
|
4
|
-
import { useSyncExternalStore } from 'react';
|
|
5
|
+
import { useEffect, useSyncExternalStore, } from 'react';
|
|
5
6
|
import { createPortal } from 'react-dom';
|
|
6
7
|
import { tocCollapsibleGetOpenSnapshot, tocCollapsibleGetPayloadSnapshot, tocCollapsibleSetOpen, tocCollapsibleSubscribe, } from '../../lib/toc-collapsible-store.js';
|
|
7
8
|
import { useOverlayPanel } from '../../lib/use-overlay-panel.js';
|
|
8
|
-
function TocList(items) {
|
|
9
|
+
function TocList(items, onLinkClick) {
|
|
9
10
|
if (items === undefined || items['length'] === 0) {
|
|
10
11
|
return undefined;
|
|
11
12
|
}
|
|
12
|
-
return (_jsx("ul", { className: "nova-toc-list", children: items.map((item) => (_jsxs("li", { className: "nova-toc-item", children: [_jsx("a", { className: "nova-toc-link", href: `#${item['id']}`, dangerouslySetInnerHTML: { __html: item['value'] } }), TocList(item['children'])] }, item['id']))) }));
|
|
13
|
+
return (_jsx("ul", { className: "nova-toc-list", children: items.map((item) => (_jsxs("li", { className: "nova-toc-item", children: [_jsx("a", { className: "nova-toc-link", href: `#${item['id']}`, onClick: onLinkClick, dangerouslySetInnerHTML: { __html: item['value'] } }), TocList(item['children'], onLinkClick)] }, item['id']))) }));
|
|
13
14
|
}
|
|
14
15
|
function TOCCollapsiblePanel() {
|
|
16
|
+
const pathname = useLocation()['pathname'];
|
|
15
17
|
const isOpen = useSyncExternalStore(tocCollapsibleSubscribe, tocCollapsibleGetOpenSnapshot, tocCollapsibleGetOpenSnapshot);
|
|
16
18
|
const payload = useSyncExternalStore(tocCollapsibleSubscribe, tocCollapsibleGetPayloadSnapshot, tocCollapsibleGetPayloadSnapshot);
|
|
17
19
|
const overlayPanel = useOverlayPanel(isOpen, '.nova-toc-collapsible-close');
|
|
@@ -19,6 +21,12 @@ function TOCCollapsiblePanel() {
|
|
|
19
21
|
const setIsClosing = overlayPanel['setIsClosing'];
|
|
20
22
|
const handleClickOutside = overlayPanel['handleClickOutside'];
|
|
21
23
|
const panelRef = overlayPanel['panelRef'];
|
|
24
|
+
useEffect(() => {
|
|
25
|
+
if (isOpen === true) {
|
|
26
|
+
setIsClosing(true);
|
|
27
|
+
}
|
|
28
|
+
return undefined;
|
|
29
|
+
}, [pathname]);
|
|
22
30
|
if (isOpen !== true
|
|
23
31
|
|| payload === undefined
|
|
24
32
|
|| payload['treeItems']['length'] === 0) {
|
|
@@ -52,7 +60,10 @@ function TOCCollapsiblePanel() {
|
|
|
52
60
|
}, children: _jsxs("div", { className: "nova-toc-collapsible-panel", ref: panelRef, role: "dialog", "aria-modal": "true", "aria-label": dialogAriaLabel, children: [_jsxs("div", { className: "nova-toc-collapsible-header", children: [_jsx("span", { className: "nova-toc-collapsible-header-title", children: triggerLabel }), _jsx("button", { className: "nova-toc-collapsible-close", type: "button", onClick: () => {
|
|
53
61
|
setIsClosing(true);
|
|
54
62
|
return undefined;
|
|
55
|
-
}, "aria-label": closeAriaLabel, children: _jsx(Icon, { icon: "lucide:x", width: "20", height: "20", "aria-hidden": "true" }) })] }), _jsx("div", { className: "nova-toc-collapsible-content", children: TocList(payload['treeItems']
|
|
63
|
+
}, "aria-label": closeAriaLabel, children: _jsx(Icon, { icon: "lucide:x", width: "20", height: "20", "aria-hidden": "true" }) })] }), _jsx("div", { className: "nova-toc-collapsible-content", children: TocList(payload['treeItems'], () => {
|
|
64
|
+
setIsClosing(true);
|
|
65
|
+
return undefined;
|
|
66
|
+
}) })] }) }), document.body);
|
|
56
67
|
}
|
|
57
68
|
export default TOCCollapsiblePanel;
|
|
58
69
|
//# sourceMappingURL=panel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../../src/theme/TOCCollapsible/panel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAC9C,OAAO,
|
|
1
|
+
{"version":3,"file":"panel.js","sourceRoot":"","sources":["../../../../src/theme/TOCCollapsible/panel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Tests - Overlay Dismissal - Get Package Root.
|
|
3
|
+
*
|
|
4
|
+
* @since 0.27.0
|
|
5
|
+
*/
|
|
6
|
+
export type Tests_OverlayDismissal_GetPackageRoot_Returns = string;
|
|
7
|
+
|
|
8
|
+
export type Tests_OverlayDismissal_GetPackageRoot_CurrentFilePath = string;
|
|
9
|
+
|
|
10
|
+
export type Tests_OverlayDismissal_GetPackageRoot_CurrentFileDirectory = string;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Tests - Overlay Dismissal - Overlay Dismissal.
|
|
14
|
+
*
|
|
15
|
+
* @since 0.27.0
|
|
16
|
+
*/
|
|
17
|
+
export type Tests_OverlayDismissal_OverlayDismissal_CloseOnNavigationContract = string;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Tests - Overlay Dismissal - Overlay Dismissal - Doc Sidebar Closes On Navigation.
|
|
21
|
+
*
|
|
22
|
+
* @since 0.27.0
|
|
23
|
+
*/
|
|
24
|
+
export type Tests_OverlayDismissal_OverlayDismissal_DocSidebarClosesOnNavigation_Source = string;
|
|
25
|
+
|
|
26
|
+
export type Tests_OverlayDismissal_OverlayDismissal_DocSidebarClosesOnNavigation_HasContract = boolean;
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Tests - Overlay Dismissal - Overlay Dismissal - TOC Closes On Navigation And Heading Selection.
|
|
30
|
+
*
|
|
31
|
+
* @since 0.27.0
|
|
32
|
+
*/
|
|
33
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_Source = string;
|
|
34
|
+
|
|
35
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_SelectionCloseContract = string;
|
|
36
|
+
|
|
37
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_HasNavigationContract = boolean;
|
|
38
|
+
|
|
39
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_HasSelectionHandler = boolean;
|
|
40
|
+
|
|
41
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_HasRecursiveSelectionHandler = boolean;
|
|
42
|
+
|
|
43
|
+
export type Tests_OverlayDismissal_OverlayDismissal_TOCClosesOnNavigationAndHeadingSelection_HasSelectionCloseHandler = boolean;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Tests - Overlay Dismissal - Read Panel.
|
|
47
|
+
*
|
|
48
|
+
* @since 0.27.0
|
|
49
|
+
*/
|
|
50
|
+
export type Tests_OverlayDismissal_ReadPanel_RelativePath = string;
|
|
51
|
+
|
|
52
|
+
export type Tests_OverlayDismissal_ReadPanel_Returns = Promise<string>;
|
|
53
|
+
|
|
54
|
+
export type Tests_OverlayDismissal_ReadPanel_PanelPath = string;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Dirent } from 'node:fs';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Tests - Translation Plurals - Read Message Bundle.
|
|
5
|
+
*
|
|
6
|
+
* @since 0.27.0
|
|
7
|
+
*/
|
|
8
|
+
export type Tests_TranslationPlurals_ReadMessageBundle_FilePath = string;
|
|
9
|
+
|
|
10
|
+
export type Tests_TranslationPlurals_ReadMessageBundle_Returns = Record<string, string>;
|
|
11
|
+
|
|
12
|
+
export type Tests_TranslationPlurals_ReadMessageBundle_Raw = string;
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Tests - Translation Plurals - Translation Plurals - Every Merged Plural Message Fits Its Locale.
|
|
16
|
+
*
|
|
17
|
+
* @since 0.27.0
|
|
18
|
+
*/
|
|
19
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_CurrentFileDirectory = string;
|
|
20
|
+
|
|
21
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_PackageDirectory = string;
|
|
22
|
+
|
|
23
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_LocalesRoot = string;
|
|
24
|
+
|
|
25
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_UpstreamLocalesRoot = string;
|
|
26
|
+
|
|
27
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_LocaleEntries = readonly Dirent[];
|
|
28
|
+
|
|
29
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_Locales = readonly string[];
|
|
30
|
+
|
|
31
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_Violations = string[];
|
|
32
|
+
|
|
33
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_UpstreamLocale = string;
|
|
34
|
+
|
|
35
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_CommonPath = string;
|
|
36
|
+
|
|
37
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_NovaPath = string;
|
|
38
|
+
|
|
39
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_CommonMessages = Record<string, string>;
|
|
40
|
+
|
|
41
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_NovaMessages = Record<string, string>;
|
|
42
|
+
|
|
43
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_MergedMessages = Record<string, string>;
|
|
44
|
+
|
|
45
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_MaximumForms = number;
|
|
46
|
+
|
|
47
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_Entry = [string, string];
|
|
48
|
+
|
|
49
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_MessageKey = string;
|
|
50
|
+
|
|
51
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_Message = string;
|
|
52
|
+
|
|
53
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_FormCount = number;
|
|
54
|
+
|
|
55
|
+
export type Tests_TranslationPlurals_TranslationPlurals_EveryMergedPluralMessageFitsItsLocale_ViolationsMessage = string;
|
|
@@ -6,6 +6,8 @@ import type { Shared_TocHeading } from '../../shared.d.ts';
|
|
|
6
6
|
*
|
|
7
7
|
* @since 0.21.0
|
|
8
8
|
*/
|
|
9
|
+
export type Theme_TocCollapsible_Panel_TOCCollapsiblePanel_Pathname = string;
|
|
10
|
+
|
|
9
11
|
export type Theme_TocCollapsible_Panel_TOCCollapsiblePanel_IsOpen = boolean;
|
|
10
12
|
|
|
11
13
|
export type Theme_TocCollapsible_Panel_TOCCollapsiblePanel_Payload_TreeItems = Shared_TocHeading[];
|
|
@@ -50,6 +52,8 @@ export type Theme_TocCollapsible_Panel_TocList_Item = Shared_TocHeading;
|
|
|
50
52
|
|
|
51
53
|
export type Theme_TocCollapsible_Panel_TocList_Items = Theme_TocCollapsible_Panel_TocList_Item[];
|
|
52
54
|
|
|
55
|
+
export type Theme_TocCollapsible_Panel_TocList_OnLinkClick = () => undefined;
|
|
56
|
+
|
|
53
57
|
/**
|
|
54
58
|
* Theme - Toc Collapsible - Panel - Toc List (TocList).
|
|
55
59
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cbnventures/docusaurus-preset-nova",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "Scripts, templates, and project configuration for the common JavaScript and TypeScript developer",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"eslint",
|
|
@@ -76,6 +76,14 @@
|
|
|
76
76
|
"dev:watch-theme": "tsc --project tsconfig.theme.json --watch",
|
|
77
77
|
"dev:watch-cli": "tsc --project tsconfig.cli.json --watch",
|
|
78
78
|
"dev:fix-shiki-import": "node ../../scripts/fix-shiki-import.mjs --watch",
|
|
79
|
+
"check": "node ../../scripts/nova-run-scripts.mjs --sequential 'check:*'",
|
|
80
|
+
"check:lint": "eslint ./ --max-warnings=0",
|
|
81
|
+
"check:types-plugin": "node ../../scripts/nova-type-check.mjs --project tsconfig.plugin.json",
|
|
82
|
+
"check:types-theme": "node ../../scripts/nova-type-check.mjs --project tsconfig.theme.json",
|
|
83
|
+
"check:types-worker": "node ../../scripts/nova-type-check.mjs --project tsconfig.worker.json",
|
|
84
|
+
"check:types-cli": "node ../../scripts/nova-type-check.mjs --project tsconfig.cli.json",
|
|
85
|
+
"check:types-config": "node ../../scripts/nova-type-check.mjs --project tsconfig.config.json",
|
|
86
|
+
"check:test": "vitest run",
|
|
79
87
|
"build": "node ../../scripts/nova-run-scripts.mjs --sequential 'build:*'",
|
|
80
88
|
"build:transpile-theme": "tsc --project tsconfig.theme.json --outDir ./build --skipLibCheck",
|
|
81
89
|
"build:transpile-plugin": "tsc --project tsconfig.plugin.json --outDir ./build --skipLibCheck",
|
|
@@ -85,14 +93,6 @@
|
|
|
85
93
|
"build:fix-shiki-import": "node ../../scripts/fix-shiki-import.mjs",
|
|
86
94
|
"build:copy-styles": "node ../../scripts/copy-styles.mjs",
|
|
87
95
|
"build:fix-perms": "shx chmod +x ./build/src/cli/index.js",
|
|
88
|
-
"check": "node ../../scripts/nova-run-scripts.mjs --sequential 'check:*'",
|
|
89
|
-
"check:lint": "eslint ./ --max-warnings=0",
|
|
90
|
-
"check:types-plugin": "node ../../scripts/nova-type-check.mjs --project tsconfig.plugin.json",
|
|
91
|
-
"check:types-theme": "node ../../scripts/nova-type-check.mjs --project tsconfig.theme.json",
|
|
92
|
-
"check:types-worker": "node ../../scripts/nova-type-check.mjs --project tsconfig.worker.json",
|
|
93
|
-
"check:types-cli": "node ../../scripts/nova-type-check.mjs --project tsconfig.cli.json",
|
|
94
|
-
"check:types-config": "node ../../scripts/nova-type-check.mjs --project tsconfig.config.json",
|
|
95
|
-
"check:test": "vitest run",
|
|
96
96
|
"clean": "node ../../scripts/nova-run-scripts.mjs --parallel 'clean:*'",
|
|
97
97
|
"clean:build": "shx rm -rf ./build"
|
|
98
98
|
},
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"node": "^22 || ^24"
|
|
101
101
|
},
|
|
102
102
|
"dependencies": {
|
|
103
|
-
"@cbnventures/nova": "0.
|
|
103
|
+
"@cbnventures/nova": "0.27.0",
|
|
104
104
|
"@codesandbox/sandpack-react": "2.20.0",
|
|
105
105
|
"@docusaurus/plugin-content-blog": "3.10.2",
|
|
106
106
|
"@docusaurus/plugin-content-docs": "3.10.2",
|
|
@@ -86,6 +86,7 @@
|
|
|
86
86
|
"theme.blog.post.paginator.navAriaLabel": "ניווט בדף רשומת הבלוג",
|
|
87
87
|
"theme.blog.post.readMore": "קרא עוד",
|
|
88
88
|
"theme.blog.post.readMoreLabel": "קרא עוד על {title}",
|
|
89
|
+
"theme.blog.post.plurals": "רשומה אחת|שתי רשומות|{count} רשומות",
|
|
89
90
|
"theme.blog.post.readingTime.plurals": "דקת קריאה|{readingTime} דקות קריאה|{readingTime} דקות קריאה",
|
|
90
91
|
"theme.blog.sidebar.ariaLabel": "סרגל הצד של הבלוג",
|
|
91
92
|
"theme.blog.sidebar.authorsLabel": "כותבים",
|
|
@@ -86,6 +86,7 @@
|
|
|
86
86
|
"theme.blog.post.paginator.navAriaLabel": "Navigasi halaman pos blog",
|
|
87
87
|
"theme.blog.post.readMore": "Baca selengkapnya",
|
|
88
88
|
"theme.blog.post.readMoreLabel": "Baca selengkapnya mengenai {title}",
|
|
89
|
+
"theme.blog.post.plurals": "{count} pos",
|
|
89
90
|
"theme.blog.post.readingTime.plurals": "{readingTime} menit membaca",
|
|
90
91
|
"theme.blog.sidebar.ariaLabel": "Bilah sisi blog",
|
|
91
92
|
"theme.blog.sidebar.authorsLabel": "Penulis",
|