@rakun-kit/manager-react 1.5.8 → 1.5.10
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/README.md +312 -292
- package/dist/cjs/app/runtime-app.js +4 -1
- package/dist/cjs/app/runtime-app.js.map +1 -1
- package/dist/cjs/components/app-sidebar.js +3 -2
- package/dist/cjs/components/app-sidebar.js.map +1 -1
- package/dist/cjs/components/editor/themes/editor-theme.css +91 -91
- package/dist/cjs/components/ui/sortable.js +4 -4
- package/dist/cjs/i18n/catalog.js +26 -0
- package/dist/cjs/i18n/catalog.js.map +1 -1
- package/dist/cjs/layouts.js +2 -2
- package/dist/cjs/layouts.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +6 -2
- package/dist/cjs/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +2 -2
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +9 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/NewRelation.js +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/NewRelation.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/seoBindings.js +36 -0
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_fields/seoBindings.js.map +1 -0
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +1 -0
- package/dist/cjs/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
- package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js +2 -2
- package/dist/cjs/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
- package/dist/cjs/router/dashboard/settings/llms/index.js +6 -0
- package/dist/cjs/router/dashboard/settings/llms/index.js.map +1 -0
- package/dist/cjs/router/dashboard/settings/llms/screen.js +122 -0
- package/dist/cjs/router/dashboard/settings/llms/screen.js.map +1 -0
- package/dist/cjs/router/dashboard/settings/screen.js +7 -0
- package/dist/cjs/router/dashboard/settings/screen.js.map +1 -1
- package/dist/cjs/router/shared/route-definitions.js +3 -2
- package/dist/cjs/router/shared/route-definitions.js.map +1 -1
- package/dist/cjs/router/shared/route-list.js +9 -1
- package/dist/cjs/router/shared/route-list.js.map +1 -1
- package/dist/cjs/router/shared/route-renderer.js +2 -1
- package/dist/cjs/router/shared/route-renderer.js.map +1 -1
- package/dist/cjs/state/theme-script.js +12 -12
- package/dist/docs/index.md +203 -184
- package/dist/esm/app/runtime-app.d.ts.map +1 -1
- package/dist/esm/app/runtime-app.js +4 -1
- package/dist/esm/app/runtime-app.js.map +1 -1
- package/dist/esm/components/app-sidebar.d.ts +2 -1
- package/dist/esm/components/app-sidebar.d.ts.map +1 -1
- package/dist/esm/components/app-sidebar.js +5 -4
- package/dist/esm/components/app-sidebar.js.map +1 -1
- package/dist/esm/components/editor/themes/editor-theme.css +91 -91
- package/dist/esm/components/ui/sortable.js +4 -4
- package/dist/esm/i18n/catalog.d.ts +84 -0
- package/dist/esm/i18n/catalog.d.ts.map +1 -1
- package/dist/esm/i18n/catalog.js +40 -0
- package/dist/esm/i18n/catalog.js.map +1 -1
- package/dist/esm/i18n/useTranslations.d.ts.map +1 -1
- package/dist/esm/layouts.d.ts +3 -1
- package/dist/esm/layouts.d.ts.map +1 -1
- package/dist/esm/layouts.js +2 -2
- package/dist/esm/layouts.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts +2 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js +7 -3
- package/dist/esm/router/dashboard/[contentType]/[edit]/ContentTypeEdit.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js +11 -6
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/ContentCommentsDrawer.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditTabPanels.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js +3 -3
- package/dist/esm/router/dashboard/[contentType]/[edit]/_components/EditToolbar.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts +2 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js +9 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_context/EditPageContext.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js +11 -2
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/LinkUI.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.d.ts +2 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/LinkField/index.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/NewRelation.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/NewRelation.js +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/NewRelation.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.d.ts +1 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/RelationField/index.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/seoBindings.d.ts +6 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/seoBindings.d.ts.map +1 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/seoBindings.js +32 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_fields/seoBindings.js.map +1 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js +2 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useContentDocumentActions.js.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/_hooks/useRouteLayoutData.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts +1 -0
- package/dist/esm/router/dashboard/[contentType]/[edit]/edit.types.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts +2 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/screen.d.ts.map +1 -1
- package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js +2 -2
- package/dist/esm/router/dashboard/[contentType]/[edit]/screen.js.map +1 -1
- package/dist/esm/router/dashboard/settings/llms/index.d.ts +2 -0
- package/dist/esm/router/dashboard/settings/llms/index.d.ts.map +1 -0
- package/dist/esm/router/dashboard/settings/llms/index.js +2 -0
- package/dist/esm/router/dashboard/settings/llms/index.js.map +1 -0
- package/dist/esm/router/dashboard/settings/llms/screen.d.ts +2 -0
- package/dist/esm/router/dashboard/settings/llms/screen.d.ts.map +1 -0
- package/dist/esm/router/dashboard/settings/llms/screen.js +115 -0
- package/dist/esm/router/dashboard/settings/llms/screen.js.map +1 -0
- package/dist/esm/router/dashboard/settings/screen.d.ts.map +1 -1
- package/dist/esm/router/dashboard/settings/screen.js +8 -1
- package/dist/esm/router/dashboard/settings/screen.js.map +1 -1
- package/dist/esm/router/shared/route-definitions.d.ts +4 -2
- package/dist/esm/router/shared/route-definitions.d.ts.map +1 -1
- package/dist/esm/router/shared/route-definitions.js +3 -2
- package/dist/esm/router/shared/route-definitions.js.map +1 -1
- package/dist/esm/router/shared/route-list.d.ts +1 -1
- package/dist/esm/router/shared/route-list.d.ts.map +1 -1
- package/dist/esm/router/shared/route-list.js +9 -1
- package/dist/esm/router/shared/route-list.js.map +1 -1
- package/dist/esm/router/shared/route-renderer.d.ts.map +1 -1
- package/dist/esm/router/shared/route-renderer.js +2 -1
- package/dist/esm/router/shared/route-renderer.js.map +1 -1
- package/dist/esm/router/shared/types.d.ts +3 -0
- package/dist/esm/router/shared/types.d.ts.map +1 -1
- package/dist/esm/state/theme-script.js +12 -12
- package/dist/styles.css +7 -7
- package/dist/styles.css.d.ts +3 -3
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +217 -217
package/dist/docs/index.md
CHANGED
|
@@ -1,194 +1,213 @@
|
|
|
1
|
-
# `@rakun-kit/manager-react` AI usage manual
|
|
2
|
-
|
|
3
|
-
This package is the publishable React manager, its transport clients,
|
|
4
|
-
navigation abstraction, locale runtime, plugin API and CSS. Most Next.js apps
|
|
5
|
-
should use `@rakun-kit/next/manager`; use this package directly for custom
|
|
6
|
-
React hosts.
|
|
7
|
-
|
|
8
|
-
Read the core manual at
|
|
9
|
-
`node_modules/@rakun-kit/core/dist/docs/index.md` before changing manager/server
|
|
10
|
-
contracts.
|
|
11
|
-
|
|
12
|
-
## Install and mount
|
|
13
|
-
|
|
14
|
-
```sh
|
|
15
|
-
bun add @rakun-kit/manager-react react react-dom
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
```tsx
|
|
19
|
-
import { ManagerBrowserApp, createHttpManagerClient } from '@rakun-kit/manager-react'
|
|
20
|
-
import '@rakun-kit/manager-react/styles.css'
|
|
21
|
-
|
|
22
|
-
const client = createHttpManagerClient({ baseUrl: '/api/rakun' })
|
|
23
|
-
|
|
24
|
-
export function ManagerPage() {
|
|
25
|
-
return (
|
|
26
|
-
<ManagerBrowserApp client={client} pathname={window.location.pathname} basePath="/backend" />
|
|
27
|
-
)
|
|
28
|
-
}
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Import the stylesheet exactly once. `ManagerBrowserApp` owns browser-history
|
|
32
|
-
navigation. Use `ManagerRuntimeApp` when the host supplies navigation.
|
|
33
|
-
|
|
34
|
-
## Clients and navigation
|
|
35
|
-
|
|
36
|
-
- HTTP: `createHttpManagerClient` from `/client/http`.
|
|
37
|
-
- tRPC: `createTrpcManagerClient` from `/client/trpc`.
|
|
38
|
-
- Custom transport: `createManagerClient` from `/client/request`.
|
|
39
|
-
- Router bridge: `createPathManagerNavigation` from `/state/navigation`.
|
|
40
|
-
|
|
41
|
-
Use operation names and payloads from Rakun contracts; do not recreate endpoint
|
|
42
|
-
types in host code. Keep `baseUrl` (API) distinct from `basePath` (manager UI).
|
|
43
|
-
|
|
44
|
-
## Link field picker
|
|
45
|
-
|
|
46
|
-
The `f.link()` editor always shows Title and Destination inputs. A typed or
|
|
47
|
-
pasted URL is stored as `{ href, title }`. Opening the destination picker
|
|
48
|
-
exposes the home page and configured page-route types with their content type
|
|
49
|
-
icons; selecting an item fills an empty title from its manager label and stores
|
|
50
|
-
`{ routeId, contentTypeId, title }` so core can resolve localized paths.
|
|
51
|
-
Existing string and untitled reference values remain editable and are upgraded
|
|
52
|
-
to the titled shape when changed.
|
|
53
|
-
|
|
54
|
-
Compound arrays such as `f.array(f.link())` render each value as a reorderable
|
|
55
|
-
card in the Info editor. Use the drag handle to change their persisted order;
|
|
56
|
-
current nested input values are preserved while an item is moved.
|
|
57
|
-
|
|
58
|
-
## Media uploads
|
|
59
|
-
|
|
60
|
-
The manager preserves Unicode original file names when uploading media. Names
|
|
61
|
-
with accents, non-Latin scripts, or emoji are encoded into ASCII for the binary
|
|
62
|
-
upload headers and restored by core before metadata is saved.
|
|
63
|
-
|
|
64
|
-
When optimization is enabled, right-click an image and select `Reimport with
|
|
65
|
-
current optimization` to regenerate its optimized source, preview, and
|
|
66
|
-
responsive sizes. The action keeps the existing media ID, title, alt text,
|
|
67
|
-
folder, and content references. You can also multi-select images and use the
|
|
68
|
-
selection toolbar reimport action. Optimization is enabled by default in the
|
|
69
|
-
media library; generated previews are stored as inline `data:image/...`
|
|
70
|
-
strings on the media record for LQIP use.
|
|
71
|
-
|
|
72
|
-
Gallery and file-field image previews use `@rakun-kit/react` `Image` with a
|
|
73
|
-
layout-appropriate `sizes` value so responsive variants are selected when
|
|
74
|
-
available.
|
|
75
|
-
|
|
76
|
-
## Manager plugins
|
|
77
|
-
|
|
78
|
-
```tsx
|
|
79
|
-
import {
|
|
80
|
-
defineRakunManagerPlugin,
|
|
81
|
-
ManagerBrowserApp,
|
|
82
|
-
} from '@rakun-kit/manager-react'
|
|
83
|
-
|
|
84
|
-
const plugin = defineRakunManagerPlugin({
|
|
85
|
-
id: '@acme/analytics',
|
|
86
|
-
routes: [{
|
|
87
|
-
id: 'dashboard',
|
|
88
|
-
path: '/analytics',
|
|
89
|
-
component: AnalyticsScreen,
|
|
90
|
-
permissions: ['plugin.analytics.view'],
|
|
91
|
-
}],
|
|
92
|
-
sidebar: [{
|
|
93
|
-
id: 'analytics',
|
|
94
|
-
title: 'analytics.title',
|
|
95
|
-
routeId: 'dashboard',
|
|
96
|
-
position: 'primary',
|
|
97
|
-
group: 'Plugins',
|
|
98
|
-
}],
|
|
99
|
-
})
|
|
100
|
-
|
|
101
|
-
<ManagerBrowserApp plugins={[plugin]} {...props} />
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
Plugins can contribute routes, sidebar entries, custom field editors and
|
|
105
|
-
RichText extensions. Use exported plugin types from
|
|
106
|
-
`@rakun-kit/manager-react/plugins`. Plugin ids, route ids, field editor ids,
|
|
107
|
-
Lexical node types and RichText plugin ids must be unique.
|
|
108
|
-
|
|
109
|
-
In Next.js, plugin registration belongs in a `'use client'` wrapper around
|
|
110
|
-
`RakunManagerClientPage`; pass the wrapper to `RakunManagerPage` as
|
|
111
|
-
`managerComponent`.
|
|
112
|
-
|
|
113
|
-
## Languages and copy
|
|
114
|
-
|
|
115
|
-
English is built in. Additional server-provided UI packs come from
|
|
116
|
-
`@rakun-kit/manager-locales` and are configured in core `managerLanguages`.
|
|
117
|
-
Content editing locale and manager UI locale are separate states.
|
|
118
|
-
|
|
1
|
+
# `@rakun-kit/manager-react` AI usage manual
|
|
2
|
+
|
|
3
|
+
This package is the publishable React manager, its transport clients,
|
|
4
|
+
navigation abstraction, locale runtime, plugin API and CSS. Most Next.js apps
|
|
5
|
+
should use `@rakun-kit/next/manager`; use this package directly for custom
|
|
6
|
+
React hosts.
|
|
7
|
+
|
|
8
|
+
Read the core manual at
|
|
9
|
+
`node_modules/@rakun-kit/core/dist/docs/index.md` before changing manager/server
|
|
10
|
+
contracts.
|
|
11
|
+
|
|
12
|
+
## Install and mount
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
bun add @rakun-kit/manager-react react react-dom
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
```tsx
|
|
19
|
+
import { ManagerBrowserApp, createHttpManagerClient } from '@rakun-kit/manager-react'
|
|
20
|
+
import '@rakun-kit/manager-react/styles.css'
|
|
21
|
+
|
|
22
|
+
const client = createHttpManagerClient({ baseUrl: '/api/rakun' })
|
|
23
|
+
|
|
24
|
+
export function ManagerPage() {
|
|
25
|
+
return (
|
|
26
|
+
<ManagerBrowserApp client={client} pathname={window.location.pathname} basePath="/backend" />
|
|
27
|
+
)
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Import the stylesheet exactly once. `ManagerBrowserApp` owns browser-history
|
|
32
|
+
navigation. Use `ManagerRuntimeApp` when the host supplies navigation.
|
|
33
|
+
|
|
34
|
+
## Clients and navigation
|
|
35
|
+
|
|
36
|
+
- HTTP: `createHttpManagerClient` from `/client/http`.
|
|
37
|
+
- tRPC: `createTrpcManagerClient` from `/client/trpc`.
|
|
38
|
+
- Custom transport: `createManagerClient` from `/client/request`.
|
|
39
|
+
- Router bridge: `createPathManagerNavigation` from `/state/navigation`.
|
|
40
|
+
|
|
41
|
+
Use operation names and payloads from Rakun contracts; do not recreate endpoint
|
|
42
|
+
types in host code. Keep `baseUrl` (API) distinct from `basePath` (manager UI).
|
|
43
|
+
|
|
44
|
+
## Link field picker
|
|
45
|
+
|
|
46
|
+
The `f.link()` editor always shows Title and Destination inputs. A typed or
|
|
47
|
+
pasted URL is stored as `{ href, title }`. Opening the destination picker
|
|
48
|
+
exposes the home page and configured page-route types with their content type
|
|
49
|
+
icons; selecting an item fills an empty title from its manager label and stores
|
|
50
|
+
`{ routeId, contentTypeId, title }` so core can resolve localized paths.
|
|
51
|
+
Existing string and untitled reference values remain editable and are upgraded
|
|
52
|
+
to the titled shape when changed.
|
|
53
|
+
|
|
54
|
+
Compound arrays such as `f.array(f.link())` render each value as a reorderable
|
|
55
|
+
card in the Info editor. Use the drag handle to change their persisted order;
|
|
56
|
+
current nested input values are preserved while an item is moved.
|
|
57
|
+
|
|
58
|
+
## Media uploads
|
|
59
|
+
|
|
60
|
+
The manager preserves Unicode original file names when uploading media. Names
|
|
61
|
+
with accents, non-Latin scripts, or emoji are encoded into ASCII for the binary
|
|
62
|
+
upload headers and restored by core before metadata is saved.
|
|
63
|
+
|
|
64
|
+
When optimization is enabled, right-click an image and select `Reimport with
|
|
65
|
+
current optimization` to regenerate its optimized source, preview, and
|
|
66
|
+
responsive sizes. The action keeps the existing media ID, title, alt text,
|
|
67
|
+
folder, and content references. You can also multi-select images and use the
|
|
68
|
+
selection toolbar reimport action. Optimization is enabled by default in the
|
|
69
|
+
media library; generated previews are stored as inline `data:image/...`
|
|
70
|
+
strings on the media record for LQIP use.
|
|
71
|
+
|
|
72
|
+
Gallery and file-field image previews use `@rakun-kit/react` `Image` with a
|
|
73
|
+
layout-appropriate `sizes` value so responsive variants are selected when
|
|
74
|
+
available.
|
|
75
|
+
|
|
76
|
+
## Manager plugins
|
|
77
|
+
|
|
78
|
+
```tsx
|
|
79
|
+
import {
|
|
80
|
+
defineRakunManagerPlugin,
|
|
81
|
+
ManagerBrowserApp,
|
|
82
|
+
} from '@rakun-kit/manager-react'
|
|
83
|
+
|
|
84
|
+
const plugin = defineRakunManagerPlugin({
|
|
85
|
+
id: '@acme/analytics',
|
|
86
|
+
routes: [{
|
|
87
|
+
id: 'dashboard',
|
|
88
|
+
path: '/analytics',
|
|
89
|
+
component: AnalyticsScreen,
|
|
90
|
+
permissions: ['plugin.analytics.view'],
|
|
91
|
+
}],
|
|
92
|
+
sidebar: [{
|
|
93
|
+
id: 'analytics',
|
|
94
|
+
title: 'analytics.title',
|
|
95
|
+
routeId: 'dashboard',
|
|
96
|
+
position: 'primary',
|
|
97
|
+
group: 'Plugins',
|
|
98
|
+
}],
|
|
99
|
+
})
|
|
100
|
+
|
|
101
|
+
<ManagerBrowserApp plugins={[plugin]} {...props} />
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Plugins can contribute routes, sidebar entries, custom field editors and
|
|
105
|
+
RichText extensions. Use exported plugin types from
|
|
106
|
+
`@rakun-kit/manager-react/plugins`. Plugin ids, route ids, field editor ids,
|
|
107
|
+
Lexical node types and RichText plugin ids must be unique.
|
|
108
|
+
|
|
109
|
+
In Next.js, plugin registration belongs in a `'use client'` wrapper around
|
|
110
|
+
`RakunManagerClientPage`; pass the wrapper to `RakunManagerPage` as
|
|
111
|
+
`managerComponent`.
|
|
112
|
+
|
|
113
|
+
## Languages and copy
|
|
114
|
+
|
|
115
|
+
English is built in. Additional server-provided UI packs come from
|
|
116
|
+
`@rakun-kit/manager-locales` and are configured in core `managerLanguages`.
|
|
117
|
+
Content editing locale and manager UI locale are separate states.
|
|
118
|
+
|
|
119
119
|
Built-in manager copy must use the static manager translation catalog. Project
|
|
120
120
|
labels may use arbitrary project keys. Fields resolve `field.<fieldName>` and
|
|
121
121
|
layout slots resolve `layoutModule.<layoutKey>` with fallbacks.
|
|
122
122
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
123
|
+
The authenticated dashboard header includes Visit site. It opens the validated
|
|
124
|
+
SEO `siteUrl` in a new tab and falls back to `/` on the current manager host
|
|
125
|
+
when the setting is empty. Custom dashboard layout renderers receive `siteUrl`
|
|
126
|
+
in their layout props and should preserve an equivalent action.
|
|
127
|
+
|
|
128
|
+
## Content and template tabs
|
|
129
|
+
|
|
130
|
+
For a routeable content type with `iterator`, Content edits the `_iterator`
|
|
131
|
+
modules unique to the current document. Template is enabled automatically and
|
|
132
|
+
edits one shared composition for every document of that type. Both tabs offer
|
|
133
|
+
the same configured iterator modules. The Template module picker additionally
|
|
134
|
+
adds a built-in Content item at its root and inside blocks fields; it marks the
|
|
135
|
+
exact position where the current document's Content modules are inserted.
|
|
136
|
+
|
|
137
|
+
Template changes require the content type's `updateAny` permission and are
|
|
138
|
+
saved with optimistic revision checks. Preview includes unsaved changes from
|
|
139
|
+
both tabs.
|
|
140
|
+
|
|
136
141
|
## Dynamic data mappings
|
|
137
|
-
|
|
138
|
-
List bindings use a type-aware mapping editor. When a mapped target property is
|
|
139
|
-
itself a `blocks` field, choose `Nested list` to open another collection, query,
|
|
140
|
-
filter, and mapping editor for that property. Nested query conditions can select
|
|
141
|
-
`Current item` to read the parent source item at that level, or `Current
|
|
142
|
-
document` to read the root document. This supports mappings such as Category ->
|
|
143
|
-
gallery item -> Project -> image card, and the editor can repeat the flow for
|
|
142
|
+
|
|
143
|
+
List bindings use a type-aware mapping editor. When a mapped target property is
|
|
144
|
+
itself a `blocks` field, choose `Nested list` to open another collection, query,
|
|
145
|
+
filter, and mapping editor for that property. Nested query conditions can select
|
|
146
|
+
`Current item` to read the parent source item at that level, or `Current
|
|
147
|
+
document` to read the root document. This supports mappings such as Category ->
|
|
148
|
+
gallery item -> Project -> image card, and the editor can repeat the flow for
|
|
144
149
|
deeper block structures.
|
|
145
150
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
import { confirm, useConfirm } from '@rakun-kit/manager-react'
|
|
152
|
-
|
|
153
|
-
const result = await confirm({
|
|
154
|
-
title: 'Delete item',
|
|
155
|
-
description: 'This cannot be undone.',
|
|
156
|
-
confirmLabel: 'Delete',
|
|
157
|
-
variant: 'destructive',
|
|
158
|
-
onConfirm: async () => {
|
|
159
|
-
await deleteItem()
|
|
160
|
-
},
|
|
161
|
-
})
|
|
151
|
+
In the SEO tab, `Current document` exposes compatible fields from the complete
|
|
152
|
+
document (including fields edited in Info), while the reserved `_seo` relation
|
|
153
|
+
itself stays excluded as a source. On create forms, string fields configured in
|
|
154
|
+
core with `.seo('<seoField>')` appear as normal preconfigured dynamic bindings;
|
|
155
|
+
editors can replace or clear them before the first save.
|
|
162
156
|
|
|
163
|
-
|
|
164
|
-
if (result !== 'confirmed') return
|
|
157
|
+
## llms.txt settings
|
|
165
158
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
159
|
+
Settings → llms.txt edits the optional site-level AI guide. Publishing is off
|
|
160
|
+
by default. Editors may override the SEO-derived site title and summary, add
|
|
161
|
+
Markdown guidance, and curate ordered sections of internal pages or external
|
|
162
|
+
URLs. Optional sections are combined under `## Optional`; Rakun never copies
|
|
163
|
+
the complete sitemap into this document automatically.
|
|
169
164
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
165
|
+
## Confirmations
|
|
166
|
+
|
|
167
|
+
Use the shared async confirm API instead of ad-hoc yes/no dialogs:
|
|
168
|
+
|
|
169
|
+
```tsx
|
|
170
|
+
import { confirm, useConfirm } from '@rakun-kit/manager-react'
|
|
171
|
+
|
|
172
|
+
const result = await confirm({
|
|
173
|
+
title: 'Delete item',
|
|
174
|
+
description: 'This cannot be undone.',
|
|
175
|
+
confirmLabel: 'Delete',
|
|
176
|
+
variant: 'destructive',
|
|
177
|
+
onConfirm: async () => {
|
|
178
|
+
await deleteItem()
|
|
179
|
+
},
|
|
180
|
+
})
|
|
181
|
+
|
|
182
|
+
// 'confirmed' | 'cancelled' | 'dismissed'
|
|
183
|
+
if (result !== 'confirmed') return
|
|
184
|
+
|
|
185
|
+
// Or boolean helper:
|
|
186
|
+
if (!(await confirm.yes({ title: 'Continue?' }))) return
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
`ConfirmProvider` is mounted by `ManagerRuntimeApp` / `ManagerBrowserApp`.
|
|
190
|
+
`onConfirm` keeps the dialog open with a loading button until the promise
|
|
191
|
+
settles; thrown errors leave it open.
|
|
192
|
+
|
|
193
|
+
## Public entrypoints
|
|
194
|
+
|
|
195
|
+
- `@rakun-kit/manager-react`: manager apps, providers and common helpers.
|
|
196
|
+
- `/client/http`, `/client/request`, `/client/trpc`: manager transports.
|
|
197
|
+
- `/app/runtime-app`: runtime/browser app components.
|
|
198
|
+
- `/state/navigation`, `/state/theme`, `/link`: host integration primitives.
|
|
199
|
+
- `/plugins`, `/rich-text`: plugin and RichText extension contracts.
|
|
200
|
+
- `/i18n`: locale runtime, catalog and locale types.
|
|
201
|
+
- `confirm` / `useConfirm` / `ConfirmProvider`: shared async confirmation dialogs.
|
|
202
|
+
- `/styles.css`: required bundled styles.
|
|
203
|
+
|
|
204
|
+
## Agent constraints
|
|
205
|
+
|
|
206
|
+
- This package can run outside Next.js; do not assume Next navigation or server
|
|
207
|
+
components.
|
|
208
|
+
- Do not import the main React entrypoint into server bootstrap just to obtain
|
|
209
|
+
locale types or data.
|
|
210
|
+
- Permission-gate protected UI, and handle loading, empty and error states.
|
|
211
|
+
- Use existing manager components and operations before adding parallel APIs.
|
|
212
|
+
- Keep manager/core schemas synchronized when an operation changes.
|
|
213
|
+
- Do not hardcode user-facing manager copy.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-app.d.ts","sourceRoot":"","sources":["../../../src/app/runtime-app.tsx"],"names":[],"mappings":"AAKA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAUf,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAU5D,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAMxE,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAiC/D,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EACT,eAAe,GACf,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GAC7C,SAAS,CAAC;IACd,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,uBAAuB,CAAC,EAAE,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC;IAC/C,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,4BAA4B,KAAK,SAAS,CAAC;IACtE,OAAO,CAAC,EAAE,SAAS,4BAA4B,EAAE,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,sBAAsB,EACtB,YAAY,CACb,GAAG;IACF,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC,CAAC;AAUF,eAAO,MAAM,iBAAiB,GAAI,mLAc/B,sBAAsB,
|
|
1
|
+
{"version":3,"file":"runtime-app.d.ts","sourceRoot":"","sources":["../../../src/app/runtime-app.tsx"],"names":[],"mappings":"AAKA,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAUf,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAU5D,OAAO,EAAuB,KAAK,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAMxE,OAAO,EAEL,KAAK,4BAA4B,EAClC,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACtD,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAiC/D,MAAM,MAAM,sBAAsB,GAAG;IACnC,MAAM,EAAE,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACvC,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EACT,eAAe,GACf,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GAC7C,SAAS,CAAC;IACd,eAAe,CAAC,EAAE,SAAS,CAAC;IAC5B,uBAAuB,CAAC,EAAE,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,CAAC;IAC/C,SAAS,CAAC,EAAE,mBAAmB,CAAC;IAChC,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,4BAA4B,KAAK,SAAS,CAAC;IACtE,OAAO,CAAC,EAAE,SAAS,4BAA4B,EAAE,CAAC;CACnD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,sBAAsB,EACtB,YAAY,CACb,GAAG;IACF,UAAU,CAAC,EAAE,iBAAiB,CAAC;IAC/B,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC,CAAC;AAUF,eAAO,MAAM,iBAAiB,GAAI,mLAc/B,sBAAsB,4CA2RxB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,sBAAsB,4CA8B9D,CAAC"}
|
|
@@ -32,6 +32,7 @@ export const ManagerRuntimeApp = ({ client, navigation, pathname, basePath, sear
|
|
|
32
32
|
const queryClient = useMemo(() => createManagerQueryClient(), []);
|
|
33
33
|
const [localePacks, setLocalePacks] = useState([]);
|
|
34
34
|
const [managerUiLoaded, setManagerUiLoaded] = useState(false);
|
|
35
|
+
const [siteUrl, setSiteUrl] = useState();
|
|
35
36
|
const [passwordRecoveryEnabled, setPasswordRecoveryEnabled] = useState(false);
|
|
36
37
|
const [login, setLogin] = useState({ password: true, adapters: [] });
|
|
37
38
|
const scopedNavigation = useMemo(() => ({
|
|
@@ -66,6 +67,7 @@ export const ManagerRuntimeApp = ({ client, navigation, pathname, basePath, sear
|
|
|
66
67
|
const uiConfig = result;
|
|
67
68
|
const locales = uiConfig.locales;
|
|
68
69
|
setLocalePacks(Array.isArray(locales) ? locales : []);
|
|
70
|
+
setSiteUrl(uiConfig.siteUrl);
|
|
69
71
|
setPasswordRecoveryEnabled(uiConfig.features?.passwordRecovery === true);
|
|
70
72
|
setLogin({
|
|
71
73
|
password: uiConfig.features?.login?.password !== false,
|
|
@@ -79,6 +81,7 @@ export const ManagerRuntimeApp = ({ client, navigation, pathname, basePath, sear
|
|
|
79
81
|
if (cancelled)
|
|
80
82
|
return;
|
|
81
83
|
setLocalePacks([]);
|
|
84
|
+
setSiteUrl(undefined);
|
|
82
85
|
setPasswordRecoveryEnabled(false);
|
|
83
86
|
setLogin({ password: true, adapters: [] });
|
|
84
87
|
setManagerUiLoaded(true);
|
|
@@ -175,7 +178,7 @@ export const ManagerRuntimeApp = ({ client, navigation, pathname, basePath, sear
|
|
|
175
178
|
}, [bootstrap, pathname, searchParams, state.status]);
|
|
176
179
|
const isLoading = state.status === "loading" || !managerUiLoaded;
|
|
177
180
|
return (_jsx(ManagerRootProviders, { children: _jsx(ManagerI18nProvider, { localePacks: localePacks, children: _jsx(ConfirmProvider, { children: _jsx(QueryClientProvider, { client: queryClient, children: _jsx(ManagerProvider, { client: client, children: _jsx(ManagerRuntimeAuthProvider, { value: runtimeAuth, children: _jsx(ManagerNavigationProvider, { navigation: scopedNavigation, children: _jsx(ManagerLinkProvider, { component: linkComponent, children: _jsxs(ManagerMediaProvider, { renderPicker: renderMediaPicker ?? renderDefaultManagerMediaPicker, children: [isLoading ? (_jsx(_Fragment, { children: loadingFallback ??
|
|
178
|
-
(useAuthLoadingFallback ? (_jsx(ManagerAuthLoadingFallback, {})) : (_jsx(ManagerLoadingFallback, {}))) })) : null, !isLoading && state.status === "error" ? (_jsx(_Fragment, { children: errorFallback?.(state.message) ?? (_jsx(BootstrapFailedMessage, { message: state.message })) })) : null, !isLoading && state.status === "unauthenticated" ? (_jsx(_Fragment, { children: unauthenticatedFallback ?? (_jsx(ManagerApp, { pathname: pathname, basePath: basePath, searchParams: searchParams, passwordRecoveryEnabled: passwordRecoveryEnabled, login: login, preview: preview, plugins: plugins, ...overrides })) })) : null, !isLoading && state.status === "ready" ? (_jsx(SessionProvider, { initialUser: state.user, contentTypes: state.contentTypes, children: _jsx(ManagerUsersProvider, { children: _jsx(LanguageProvider, { languages: state.languages, initialLanguage: state.initialLanguage, children: _jsx(ManagerApp, { pathname: pathname, basePath: basePath, searchParams: searchParams, contentTypes: state.contentTypes, authenticated: true, passwordRecoveryEnabled: passwordRecoveryEnabled, login: login, preview: preview, plugins: plugins, ...overrides }) }) }) })) : null] }) }) }) }) }) }) }) }) }));
|
|
181
|
+
(useAuthLoadingFallback ? (_jsx(ManagerAuthLoadingFallback, {})) : (_jsx(ManagerLoadingFallback, {}))) })) : null, !isLoading && state.status === "error" ? (_jsx(_Fragment, { children: errorFallback?.(state.message) ?? (_jsx(BootstrapFailedMessage, { message: state.message })) })) : null, !isLoading && state.status === "unauthenticated" ? (_jsx(_Fragment, { children: unauthenticatedFallback ?? (_jsx(ManagerApp, { pathname: pathname, basePath: basePath, searchParams: searchParams, passwordRecoveryEnabled: passwordRecoveryEnabled, login: login, siteUrl: siteUrl, preview: preview, plugins: plugins, ...overrides })) })) : null, !isLoading && state.status === "ready" ? (_jsx(SessionProvider, { initialUser: state.user, contentTypes: state.contentTypes, children: _jsx(ManagerUsersProvider, { children: _jsx(LanguageProvider, { languages: state.languages, initialLanguage: state.initialLanguage, children: _jsx(ManagerApp, { pathname: pathname, basePath: basePath, searchParams: searchParams, contentTypes: state.contentTypes, authenticated: true, passwordRecoveryEnabled: passwordRecoveryEnabled, login: login, siteUrl: siteUrl, preview: preview, plugins: plugins, ...overrides }) }) }) })) : null] }) }) }) }) }) }) }) }) }));
|
|
179
182
|
};
|
|
180
183
|
export const ManagerBrowserApp = (props) => {
|
|
181
184
|
const { basePath, navigation: providedNavigation, ...runtimeProps } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-app.js","sourceRoot":"","sources":["../../../src/app/runtime-app.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"runtime-app.js","sourceRoot":"","sources":["../../../src/app/runtime-app.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,10 +13,11 @@ export type ManagerSidebarItem = {
|
|
|
13
13
|
permissionMode?: 'all' | 'any';
|
|
14
14
|
items?: ManagerSidebarItem[];
|
|
15
15
|
};
|
|
16
|
-
export declare function AppSidebar({ contentTypes, pathname, basePath, secondaryItems, ...props }: React.ComponentProps<typeof Sidebar> & {
|
|
16
|
+
export declare function AppSidebar({ contentTypes, pathname, basePath, siteUrl, secondaryItems, ...props }: React.ComponentProps<typeof Sidebar> & {
|
|
17
17
|
contentTypes: EncodedContentType[];
|
|
18
18
|
pathname?: string;
|
|
19
19
|
basePath?: string;
|
|
20
|
+
siteUrl?: string;
|
|
20
21
|
secondaryItems?: ManagerSidebarItem[];
|
|
21
22
|
}): import("react/jsx-runtime").JSX.Element;
|
|
22
23
|
//# sourceMappingURL=app-sidebar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"app-sidebar.d.ts","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,UAAU,EAChB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAkB9B,OAAO,EACL,OAAO,EAQR,MAAM,cAAc,CAAA;AAErB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,CAAC,EAAE,UAAU,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,CAAC,EAAE,SAAS,UAAU,EAAE,CAAA;IACnC,cAAc,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;IAC9B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAsJD,wBAAgB,UAAU,CAAC,EACzB,YAAY,EACZ,QAAQ,EACR,QAAa,EACb,OAAO,EACP,cAAc,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,OAAO,CAAC,GAAG;IACxC,YAAY,EAAE,kBAAkB,EAAE,CAAA;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,CAAC,EAAE,kBAAkB,EAAE,CAAA;CACtC,2CAkIA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { Bug, HelpCircle, Images, Settings, User } from 'lucide-react';
|
|
2
|
+
import { Bug, ExternalLink, HelpCircle, Images, Settings, User, } from 'lucide-react';
|
|
3
3
|
import { useTranslations } from '../i18n/index.js';
|
|
4
4
|
import { ManagerLink } from '../link.js';
|
|
5
5
|
import { getManagerPathHref, getManagerRelativePathname, getManagerRouteHref, } from '../state/navigation.js';
|
|
@@ -12,7 +12,7 @@ import { useManagerPlugins } from '../plugins.js';
|
|
|
12
12
|
import { getEncodedContentPermissions } from '../state/permissions.js';
|
|
13
13
|
import { useSession } from '../state/session.js';
|
|
14
14
|
import { RakunLogoMark } from './rakun-logo.js';
|
|
15
|
-
import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem, } from './ui/sidebar.js';
|
|
15
|
+
import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuAction, SidebarMenuButton, SidebarMenuItem, } from './ui/sidebar.js';
|
|
16
16
|
const cleanPathname = (path) => {
|
|
17
17
|
const [pathname = ''] = path.split(/[?#]/);
|
|
18
18
|
return pathname.replace(/\/+$/, '') || '/';
|
|
@@ -70,6 +70,7 @@ const getDefaultSecondaryNavItems = (basePath, t) => [
|
|
|
70
70
|
'content.Redirect.readAny',
|
|
71
71
|
'content.RobotsRule.readAny',
|
|
72
72
|
'content.SeoSettings.readAny',
|
|
73
|
+
'content.LlmsSettings.readAny',
|
|
73
74
|
],
|
|
74
75
|
permissionMode: 'any',
|
|
75
76
|
},
|
|
@@ -125,7 +126,7 @@ const filterSidebarItems = (items, hasPermissions, hasAnyPermission) => items.fl
|
|
|
125
126
|
const visibleItems = filterSidebarItems(item.items, hasPermissions, hasAnyPermission);
|
|
126
127
|
return visibleItems.length > 0 ? [{ ...item, items: visibleItems }] : [];
|
|
127
128
|
});
|
|
128
|
-
export function AppSidebar({ contentTypes, pathname, basePath = '', secondaryItems, ...props }) {
|
|
129
|
+
export function AppSidebar({ contentTypes, pathname, basePath = '', siteUrl, secondaryItems, ...props }) {
|
|
129
130
|
const t = useTranslations();
|
|
130
131
|
const { hasCurrentTour, startCurrentTour } = useManagerHelp();
|
|
131
132
|
const pluginRegistry = useManagerPlugins();
|
|
@@ -180,7 +181,7 @@ export function AppSidebar({ contentTypes, pathname, basePath = '', secondaryIte
|
|
|
180
181
|
return groups;
|
|
181
182
|
}, new Map());
|
|
182
183
|
const secondaryPluginItems = pluginItems.filter((item) => (item.position ?? 'secondary') === 'secondary');
|
|
183
|
-
return (_jsxs(Sidebar, { variant: "inset", "data-tour": "manager-sidebar", ...props, children: [_jsx(SidebarHeader, { children: _jsx(SidebarMenu, { children:
|
|
184
|
+
return (_jsxs(Sidebar, { variant: "inset", "data-tour": "manager-sidebar", ...props, children: [_jsx(SidebarHeader, { children: _jsx(SidebarMenu, { children: _jsxs(SidebarMenuItem, { children: [_jsx(SidebarMenuButton, { size: "lg", asChild: true, children: _jsxs(ManagerLink, { href: basePath, children: [_jsx("div", { className: "flex aspect-square size-8 items-center justify-center rounded-lg", children: _jsx(RakunLogoMark, { className: "size-8 text-sidebar-foreground" }) }), _jsxs("div", { className: "grid flex-1 text-left text-sm leading-tight", children: [_jsx("span", { className: "truncate font-medium", children: t('brand.name') }), _jsx("span", { className: "truncate text-xs", children: t('brand.tagline') })] })] }) }), _jsx(SidebarMenuAction, { asChild: true, children: _jsxs("a", { "aria-label": t('sidebar.visitSite'), href: siteUrl || '/', rel: "noreferrer", target: "_blank", title: t('sidebar.visitSite'), children: [_jsx(ExternalLink, {}), _jsx("span", { className: "sr-only", children: t('sidebar.visitSite') })] }) })] }) }) }), _jsxs(SidebarContent, { children: [contentTypeItems.length > 0 ? _jsx(NavMain, { items: contentTypeItems }) : null, Array.from(primaryPluginGroups, ([label, items]) => (_jsx(NavMain, { label: label, items: items }, label))), _jsx(NavSecondary, { items: filterSidebarItems([...resolvedSecondaryItems, ...secondaryPluginItems, helpItem], hasPermissions, hasAnyPermission).map((item) => ({
|
|
184
185
|
...item,
|
|
185
186
|
isActive: 'onClick' in item && item.onClick
|
|
186
187
|
? false
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"app-sidebar.js","sourceRoot":"","sources":["../../../src/components/app-sidebar.tsx"],"names":[],"mappings":"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"}
|