@allbluecn/web-app 0.9.2 → 0.9.3
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/package.json +32 -34
- package/src/__tests__/components/reference-inline.test.tsx +1 -1
- package/src/components/agents/agents-page.tsx +1 -1
- package/src/components/animated-icons/layout-panel-top.tsx +1 -1
- package/src/components/auth/auth-layout.tsx +1 -1
- package/src/components/knowledge/dialog/knowledge-form-dialog.tsx +1 -1
- package/src/components/knowledge/editor/doc-header.tsx +1 -1
- package/src/components/knowledge-public/sharers-avatar-group.tsx +1 -1
- package/src/components/layout/sidebar-03/__tests__/nav-workspace.test.tsx +1 -1
- package/src/components/layout/sidebar-03/app-sidebar.tsx +1 -1
- package/src/components/layout/sidebar-03/nav-workspace.tsx +1 -1
- package/src/components/layout/sidebar-03/user-menu.tsx +1 -1
- package/src/components/magicui/animated-theme-toggler.tsx +1 -1
- package/src/components/magicui/grid-pattern.tsx +1 -1
- package/src/components/project/create-project-dialog.tsx +1 -1
- package/src/components/project/invite-member-dialog.tsx +1 -1
- package/src/components/project/project-activity-list.tsx +1 -1
- package/src/components/project/project-member-manager.tsx +1 -1
- package/src/components/settings/personal-team/account/avatar/notion-avatar.tsx +2 -2
- package/src/components/settings/personal-team/team/team-member-list.tsx +1 -1
- package/src/components/shadcn-space/blocks/hero-01/header.tsx +1 -1
- package/src/components/{ui-shared → shared-kit/auth}/auth-layout.tsx +1 -1
- package/src/components/{ui-shared → shared-kit/decorative}/grid-pattern.tsx +1 -1
- package/src/components/{ui-shared → shared-kit/dialogs}/name-confirm-dialog.tsx +6 -5
- package/src/components/{shared → shared-kit/icons}/__tests__/lucide-curated-icons.test.ts +2 -2
- package/src/components/{shared → shared-kit/icons}/__tests__/lucide-icon-data.test.ts +1 -1
- package/src/components/{shared → shared-kit/icons}/__tests__/lucide-icon-picker.test.tsx +5 -5
- package/src/components/{ui-shared → shared-kit}/index.ts +9 -6
- package/src/components/{ui-shared → shared-kit/layout}/layout-panel-top.tsx +1 -1
- package/src/components/{ui-shared → shared-kit/navigation}/nav-float-button.tsx +2 -2
- package/src/components/{ui-shared → shared-kit/theme}/animated-theme-toggler.tsx +1 -1
- package/src/components/story/columns.tsx +1 -1
- package/src/components/story/create-story-dialog.tsx +2 -2
- package/src/components/story/detail/__tests__/activity-timeline.test.tsx +1 -1
- package/src/components/story/detail/activity-timeline.tsx +2 -2
- package/src/components/story/detail/comment-item.tsx +1 -1
- package/src/components/story/detail/story-detail-body.tsx +2 -2
- package/src/components/story/detail/story-detail-toolbar/associated-attachments-panel.tsx +1 -1
- package/src/components/story/display/group-resolver.tsx +2 -2
- package/src/components/story/filters/applied-filters.tsx +1 -1
- package/src/components/story/inline-editors/assignee-editor.tsx +1 -1
- package/src/components/story/inline-editors/story-select-dialog.tsx +1 -1
- package/src/components/story/relations/story-ref-row.tsx +2 -2
- package/src/components/story/story-panel-header.tsx +1 -1
- package/src/components/story/story-toolbar.tsx +1 -1
- package/src/components/story/transfer-story-popover.tsx +1 -1
- package/src/components/story/views/create-view-dialog.tsx +1 -1
- package/src/components/story/views/kanban-card.tsx +1 -1
- package/src/components/story/views/story-list/index.tsx +1 -1
- package/src/components/story/views/story-list/inline-story-creator.tsx +1 -1
- package/src/components/tiptap/mindmap/mind-map.tsx +2 -2
- package/src/components/tiptap/mindmap/mindmap-fullscreen-dialog.tsx +1 -1
- package/src/components/tiptap/node/annotation-node/annotation-node-view.tsx +1 -1
- package/src/components/tiptap/node/doc-card-extension.tsx +2 -2
- package/src/components/tiptap/notion-like/notion-like-editor-header.tsx +2 -2
- package/src/components/tiptap/ui/doc-reference-interaction/doc-reference-interaction.tsx +2 -2
- package/src/components/tiptap/ui/mention-dropdown-menu/mention-dropdown-menu.tsx +2 -2
- package/src/components/tiptap/ui/reference-dropdown-menu/reference-dropdown-menu.tsx +1 -1
- package/src/components/tiptap/ui/slash-dropdown-menu/slash-dropdown-menu.tsx +1 -1
- package/src/components/ui/alert-dialog.tsx +216 -1
- package/src/components/ui/badge.tsx +66 -1
- package/src/components/ui/button.tsx +84 -1
- package/src/components/ui/card.tsx +120 -1
- package/src/components/ui/checkbox.tsx +50 -1
- package/src/components/ui/context-menu.tsx +280 -1
- package/src/components/ui/dialog.tsx +183 -1
- package/src/components/ui/dropdown-menu.tsx +286 -1
- package/src/components/ui/empty.tsx +121 -1
- package/src/components/ui/input.tsx +36 -1
- package/src/components/ui/label.tsx +39 -1
- package/src/components/ui/popover.tsx +106 -1
- package/src/components/ui/resizable.tsx +67 -1
- package/src/components/ui/select.tsx +207 -1
- package/src/components/ui/sidebar.tsx +708 -1
- package/src/components/ui/skeleton.tsx +30 -1
- package/src/components/ui/sonner.tsx +37 -1
- package/src/components/ui/switch.tsx +48 -1
- package/src/components/ui/textarea.tsx +35 -1
- package/src/components/ui/tooltip.tsx +72 -1
- package/src/components/workspace/create-workspace-dialog.tsx +1 -1
- package/src/lib/auth/auth-client.ts +1 -1
- package/src/lib/changelog/sdk-versions.ts +16 -2
- package/src/lib/utils.ts +6 -1
- package/src/plugins/core/inspiration/pages/inspiration-page.tsx +1 -1
- package/src/plugins/core/inspiration/ui.tsx +1 -1
- package/src/plugins/core/prd/components/agent-input.tsx +3 -3
- package/src/plugins/core/prd/components/component-editor/collapsible-section.tsx +1 -1
- package/src/plugins/core/prd/components/component-editor/content-section.tsx +3 -3
- package/src/plugins/core/prd/components/component-editor/style-fields.tsx +3 -3
- package/src/plugins/core/prd/components/component-thumbnail.tsx +1 -1
- package/src/plugins/core/prd/components/dialog/create-prd-dialog.tsx +3 -3
- package/src/plugins/core/prd/components/dialog/prd-detail-client.tsx +4 -4
- package/src/plugins/core/prd/components/page-version-panel/components/create-version-dialog.tsx +2 -2
- package/src/plugins/core/prd/components/page-version-panel/components/delete-version-dialog.tsx +2 -2
- package/src/plugins/core/prd/components/page-version-panel/components/edit-version-dialog.tsx +2 -2
- package/src/plugins/core/prd/components/page-version-panel.tsx +9 -9
- package/src/plugins/core/prd/components/page-version-tree.tsx +5 -5
- package/src/plugins/core/prd/components/prd-agent-panel.tsx +3 -3
- package/src/plugins/core/prd/components/prd-comment-review-panel.tsx +7 -7
- package/src/plugins/core/prd/components/prd-component-editor-content.tsx +2 -2
- package/src/plugins/core/prd/components/prd-dashboard.tsx +8 -8
- package/src/plugins/core/prd/components/prd-doc-panel.tsx +2 -2
- package/src/plugins/core/prd/components/prd-editor-layout.tsx +4 -4
- package/src/plugins/core/prd/components/prd-filter-bar.tsx +1 -1
- package/src/plugins/core/prd/components/prd-left-sidebar.tsx +4 -4
- package/src/plugins/core/prd/components/prd-navigation.tsx +6 -6
- package/src/plugins/core/prd/components/prd-prototype-panel.tsx +2 -2
- package/src/plugins/core/prd/components/prd-right-sidebar.tsx +3 -3
- package/src/plugins/core/prd/components/prd-share-panel/components/single-version-share-card.tsx +7 -7
- package/src/plugins/core/prd/components/prd-share-panel.tsx +10 -10
- package/src/plugins/core/prd/components/prd-tree-page-tab.tsx +5 -5
- package/src/plugins/core/prd/components/prototype/PrototypeCanvas.tsx +2 -2
- package/src/plugins/core/prd/components/restore-version-dialog.tsx +2 -2
- package/src/plugins/core/prd/components/share/prd-share-client.tsx +1 -1
- package/src/plugins/core/prd/components/share/share-comment-panel.tsx +6 -6
- package/src/plugins/core/prd/components/share/share-comment-review-panel.tsx +2 -2
- package/src/plugins/core/prd/components/share/share-layout.tsx +1 -1
- package/src/plugins/core/prd/components/share/share-nav-bar.tsx +4 -4
- package/src/plugins/core/prd/components/share/share-password-gate.tsx +4 -4
- package/src/plugins/core/prd/components/share/share-prototype-view.tsx +1 -1
- package/src/plugins/core/prd/components/share/share-review-panel.tsx +5 -5
- package/src/plugins/core/prd/components/share/share-theme-toggle.tsx +1 -1
- package/src/plugins/core/prd/components/share/version-share-client.tsx +1 -1
- package/src/plugins/core/prd/pages/prd-detail-page.tsx +2 -2
- package/src/plugins/core/prd/pages/share-prd-page.tsx +1 -1
- package/src/plugins/core/prd/prd-nav.tsx +1 -1
- package/src/plugins/core/tags/nav-tag.tsx +7 -7
- package/src/plugins/core/tags/pages/tag-detail-page.tsx +1 -1
- package/src/plugins/core/tags/tag-badge.tsx +2 -2
- package/src/plugins/core/tags/tag-color-picker.tsx +1 -1
- package/src/plugins/core/tags/tag-manager.tsx +6 -6
- package/src/plugins/core/tags/tag-selector.tsx +3 -3
- package/src/providers/index.tsx +1 -1
- package/src/providers/timezone-provider.tsx +1 -1
- package/src/routes/_nav/acceptance-criteria/route.tsx +1 -1
- package/src/routes/_nav/apps/anyhub/$id/route.tsx +1 -1
- package/src/routes/_nav/apps/anyhub/route.tsx +1 -1
- package/src/routes/_nav/bugs/route.tsx +1 -1
- package/src/routes/_nav/dashboard/-components/avatar-group.tsx +1 -1
- package/src/routes/_nav/dashboard/route.lazy.tsx +1 -1
- package/src/routes/_nav/knowledge/$kbId/doc/$docId/route.lazy.tsx +1 -1
- package/src/routes/_nav/knowledge/index.lazy.tsx +1 -1
- package/src/routes/_nav/notion-like/route.tsx +1 -1
- package/src/routes/_nav/pricing-02/route.tsx +1 -1
- package/src/routes/_nav/projects/$projectId/$storyId/route.lazy.tsx +1 -1
- package/src/routes/_nav/projects/$projectId/index.lazy.tsx +3 -3
- package/src/routes/_nav/projects/$projectId/iterations/index.lazy.tsx +1 -1
- package/src/routes/_nav/projects/$projectId/settings/route.lazy.tsx +3 -3
- package/src/routes/_nav/route.lazy.tsx +1 -1
- package/src/routes/_nav/settings/general/route.lazy.tsx +1 -1
- package/src/routes/_nav/test-cases/route.tsx +1 -1
- package/src/routes/_nav/workspaces/$workspaceId/route.lazy.tsx +1 -1
- package/src/routes/_nav/workspaces/$workspaceId/settings/route.lazy.tsx +2 -2
- package/src/routes/_nav/workspaces/index.lazy.tsx +1 -1
- package/src/routes/invite/$token/route.lazy.tsx +1 -1
- package/src/server/__tests__/agent-client-graph.test.ts +1 -1
- package/src/components/shared/name-confirm-dialog.tsx +0 -1
- package/src/components/shared/nav-float-button.tsx +0 -1
- package/src/components/shared/placeholder-page.tsx +0 -1
- package/src/components/ui-shared/alert-dialog.tsx +0 -216
- package/src/components/ui-shared/avatar.tsx +0 -129
- package/src/components/ui-shared/badge.tsx +0 -66
- package/src/components/ui-shared/button.tsx +0 -84
- package/src/components/ui-shared/card.tsx +0 -120
- package/src/components/ui-shared/checkbox.tsx +0 -50
- package/src/components/ui-shared/context-menu.tsx +0 -280
- package/src/components/ui-shared/dialog.tsx +0 -183
- package/src/components/ui-shared/dropdown-menu.tsx +0 -286
- package/src/components/ui-shared/empty.tsx +0 -121
- package/src/components/ui-shared/input.tsx +0 -36
- package/src/components/ui-shared/item.tsx +0 -213
- package/src/components/ui-shared/kbd.tsx +0 -33
- package/src/components/ui-shared/label.tsx +0 -39
- package/src/components/ui-shared/popover.tsx +0 -106
- package/src/components/ui-shared/resizable.tsx +0 -67
- package/src/components/ui-shared/select.tsx +0 -207
- package/src/components/ui-shared/separator.tsx +0 -45
- package/src/components/ui-shared/sheet.tsx +0 -164
- package/src/components/ui-shared/sidebar.tsx +0 -708
- package/src/components/ui-shared/skeleton.tsx +0 -30
- package/src/components/ui-shared/sonner.tsx +0 -37
- package/src/components/ui-shared/switch.tsx +0 -48
- package/src/components/ui-shared/textarea.tsx +0 -35
- package/src/components/ui-shared/tooltip.tsx +0 -72
- package/src/components/ui-shared/utils.ts +0 -6
- package/src/lib/utils.d.ts +0 -1
- package/src/plugins/.gen-manifest.json +0 -13
- package/src/plugins/modules.gen.ts +0 -20
- package/src/plugins/plugins.gen.ts +0 -20
- package/src/plugins/ui.gen.ts +0 -8
- package/src/routes/_nav/inspiration/route.tsx +0 -8
- package/src/routes/_nav/prd/$id/route.tsx +0 -9
- package/src/routes/_nav/prd/index.tsx +0 -9
- package/src/routes/_nav/prd/route.tsx +0 -8
- package/src/routes/_nav/tags/$id/route.tsx +0 -8
- package/src/routes/_nav/tags/index.tsx +0 -8
- package/src/routes/_nav/tags/route.tsx +0 -8
- package/src/routes/_nav/tags/settings/route.tsx +0 -9
- package/src/routes/share/prd/$prdId/route.tsx +0 -10
- package/src/types/open-file-viewer.d.ts +0 -14
- /package/src/components/{ui-shared → shared-kit/ai}/ai-command-button.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/ai}/ai-stream-text.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/auth}/auth-client.ts +0 -0
- /package/src/components/{ui-shared → shared-kit/avatars}/notion-avatar.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/avatars}/user-avatar.tsx +0 -0
- /package/src/components/{shared → shared-kit/data-viz}/contribution-graph-tooltip.tsx +0 -0
- /package/src/components/{shared → shared-kit/dev}/component-preview.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/hooks}/use-mobile.ts +0 -0
- /package/src/components/{shared → shared-kit/i18n}/language-switcher.tsx +0 -0
- /package/src/components/{shared → shared-kit/i18n}/translator-text.tsx +0 -0
- /package/src/components/{shared → shared-kit/icons}/lucide-icon-picker/curated-icons.ts +0 -0
- /package/src/components/{shared → shared-kit/icons}/lucide-icon-picker/icon-data.ts +0 -0
- /package/src/components/{shared → shared-kit/icons}/lucide-icon-picker/index.tsx +0 -0
- /package/src/components/{shared → shared-kit/icons}/lucide-icon-picker/lucide-icon-by-name.tsx +0 -0
- /package/src/components/{shared → shared-kit/icons}/lucide-icon-picker/panel.tsx +0 -0
- /package/src/components/{shared → shared-kit/loading}/wave-physics-loader.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/pages}/placeholder-page.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/reference}/reference-inline.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/reference}/reference-search.tsx +0 -0
- /package/src/components/{shared → shared-kit/theme}/theme-toggle.tsx +0 -0
- /package/src/components/{shared → shared-kit/timezone}/timezone-bootstrap.tsx +0 -0
- /package/src/components/{ui-shared → shared-kit/timezone}/timezone-provider.tsx +0 -0
- /package/src/components/{shared → shared-kit/timezone}/timezone-select.tsx +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@allbluecn/web-app",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.3",
|
|
4
4
|
"license": "AGPL-3.0-or-later",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
@@ -14,32 +14,32 @@
|
|
|
14
14
|
"default": "./vite.shared.ts"
|
|
15
15
|
},
|
|
16
16
|
"./lucide-icon-picker": {
|
|
17
|
-
"types": "./src/components/shared/lucide-icon-picker/index.tsx",
|
|
18
|
-
"default": "./src/components/shared/lucide-icon-picker/index.tsx"
|
|
17
|
+
"types": "./src/components/shared-kit/icons/lucide-icon-picker/index.tsx",
|
|
18
|
+
"default": "./src/components/shared-kit/icons/lucide-icon-picker/index.tsx"
|
|
19
19
|
},
|
|
20
20
|
"./lucide-icon-picker/panel": {
|
|
21
|
-
"types": "./src/components/shared/lucide-icon-picker/panel.tsx",
|
|
22
|
-
"default": "./src/components/shared/lucide-icon-picker/panel.tsx"
|
|
21
|
+
"types": "./src/components/shared-kit/icons/lucide-icon-picker/panel.tsx",
|
|
22
|
+
"default": "./src/components/shared-kit/icons/lucide-icon-picker/panel.tsx"
|
|
23
23
|
},
|
|
24
24
|
"./lucide-icon-picker/icon-data": {
|
|
25
|
-
"types": "./src/components/shared/lucide-icon-picker/icon-data.ts",
|
|
26
|
-
"default": "./src/components/shared/lucide-icon-picker/icon-data.ts"
|
|
25
|
+
"types": "./src/components/shared-kit/icons/lucide-icon-picker/icon-data.ts",
|
|
26
|
+
"default": "./src/components/shared-kit/icons/lucide-icon-picker/icon-data.ts"
|
|
27
27
|
},
|
|
28
28
|
"./lucide-icon-picker/curated-icons": {
|
|
29
|
-
"types": "./src/components/shared/lucide-icon-picker/curated-icons.ts",
|
|
30
|
-
"default": "./src/components/shared/lucide-icon-picker/curated-icons.ts"
|
|
29
|
+
"types": "./src/components/shared-kit/icons/lucide-icon-picker/curated-icons.ts",
|
|
30
|
+
"default": "./src/components/shared-kit/icons/lucide-icon-picker/curated-icons.ts"
|
|
31
31
|
},
|
|
32
32
|
"./lucide-icon-picker/lucide-icon-by-name": {
|
|
33
|
-
"types": "./src/components/shared/lucide-icon-picker/lucide-icon-by-name.tsx",
|
|
34
|
-
"default": "./src/components/shared/lucide-icon-picker/lucide-icon-by-name.tsx"
|
|
33
|
+
"types": "./src/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name.tsx",
|
|
34
|
+
"default": "./src/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name.tsx"
|
|
35
35
|
},
|
|
36
36
|
"./prototype": {
|
|
37
37
|
"types": "./src/components/prototype/index.ts",
|
|
38
38
|
"default": "./src/components/prototype/index.ts"
|
|
39
39
|
},
|
|
40
40
|
"./user-avatar": {
|
|
41
|
-
"types": "./src/components/
|
|
42
|
-
"default": "./src/components/
|
|
41
|
+
"types": "./src/components/shared-kit/avatars/user-avatar.tsx",
|
|
42
|
+
"default": "./src/components/shared-kit/avatars/user-avatar.tsx"
|
|
43
43
|
},
|
|
44
44
|
"./lib/datetime": {
|
|
45
45
|
"types": "./src/lib/datetime.ts",
|
|
@@ -57,26 +57,7 @@
|
|
|
57
57
|
"publishConfig": {
|
|
58
58
|
"access": "public"
|
|
59
59
|
},
|
|
60
|
-
"packageManager": "pnpm@11.20.0",
|
|
61
|
-
"scripts": {
|
|
62
|
-
"dev": "vite --port 3000",
|
|
63
|
-
"build": "vite build",
|
|
64
|
-
"start": "vite preview",
|
|
65
|
-
"lint": "eslint",
|
|
66
|
-
"test": "vitest",
|
|
67
|
-
"test:ui": "vitest --ui",
|
|
68
|
-
"test:run": "vitest run",
|
|
69
|
-
"setup": "pnpm --filter @allbluecn/database generate && pnpm --filter @allbluecn/database migrate:dev",
|
|
70
|
-
"check:features": "tsx scripts/check-feature-keys.ts",
|
|
71
|
-
"assemble": "TSX_TSCONFIG_PATH=apps/web/tsconfig.json pnpm -w exec tsx packages/kernel/src/bin.ts --profile oss --assemble --app-dir apps/web",
|
|
72
|
-
"predev": "pnpm assemble && node scripts/check-sdk-versions.mjs",
|
|
73
|
-
"prebuild": "pnpm assemble && node scripts/check-sdk-versions.mjs",
|
|
74
|
-
"pretest": "pnpm assemble",
|
|
75
|
-
"pretest:run": "pnpm assemble",
|
|
76
|
-
"prepublishOnly": "node scripts/check-sdk-versions.mjs"
|
|
77
|
-
},
|
|
78
60
|
"dependencies": {
|
|
79
|
-
"@allbluecn/database": "workspace:*",
|
|
80
61
|
"@ariakit/react": "^0.4.28",
|
|
81
62
|
"@auth/core": "^0.41.2",
|
|
82
63
|
"@auth/prisma-adapter": "^2.11.2",
|
|
@@ -199,7 +180,8 @@
|
|
|
199
180
|
"zod": "^4.4.3",
|
|
200
181
|
"@open-file-viewer/core": "^0.1.43",
|
|
201
182
|
"@open-file-viewer/react": "^0.1.43",
|
|
202
|
-
"@allbluecn/kernel": "0.5.
|
|
183
|
+
"@allbluecn/kernel": "0.5.2",
|
|
184
|
+
"@allbluecn/database": "0.4.17"
|
|
203
185
|
},
|
|
204
186
|
"devDependencies": {
|
|
205
187
|
"@babel/parser": "^8.0.4",
|
|
@@ -241,5 +223,21 @@
|
|
|
241
223
|
},
|
|
242
224
|
"optionalDependencies": {
|
|
243
225
|
"@tauri-apps/api": "^2.11.1"
|
|
226
|
+
},
|
|
227
|
+
"scripts": {
|
|
228
|
+
"dev": "vite --port 3000",
|
|
229
|
+
"build": "vite build",
|
|
230
|
+
"start": "vite preview",
|
|
231
|
+
"lint": "eslint",
|
|
232
|
+
"test": "vitest",
|
|
233
|
+
"test:ui": "vitest --ui",
|
|
234
|
+
"test:run": "vitest run",
|
|
235
|
+
"setup": "pnpm --filter @allbluecn/database generate && pnpm --filter @allbluecn/database migrate:dev",
|
|
236
|
+
"check:features": "tsx scripts/check-feature-keys.ts",
|
|
237
|
+
"assemble": "TSX_TSCONFIG_PATH=apps/web/tsconfig.json pnpm -w exec tsx packages/kernel/src/bin.ts --profile oss --assemble --app-dir apps/web",
|
|
238
|
+
"predev": "pnpm assemble && node scripts/check-sdk-versions.mjs",
|
|
239
|
+
"prebuild": "pnpm assemble && node scripts/check-sdk-versions.mjs",
|
|
240
|
+
"pretest": "pnpm assemble",
|
|
241
|
+
"pretest:run": "pnpm assemble"
|
|
244
242
|
}
|
|
245
|
-
}
|
|
243
|
+
}
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
import { describe, it, expect } from 'vitest'
|
|
19
19
|
import { render, screen } from '@testing-library/react'
|
|
20
|
-
import { ReferenceInline } from '@/components/
|
|
20
|
+
import { ReferenceInline } from '@/components/shared-kit'
|
|
21
21
|
|
|
22
22
|
describe('ReferenceInline', () => {
|
|
23
23
|
it('renders title', () => {
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
} from '@/components/ui/tabs'
|
|
15
15
|
import { Button } from '@/components/ui/button'
|
|
16
16
|
import { FeatureGate } from '@/components/billing/feature-gate'
|
|
17
|
-
import { NameConfirmDialog } from '@/components/shared/name-confirm-dialog'
|
|
17
|
+
import { NameConfirmDialog } from '@/components/shared-kit/dialogs/name-confirm-dialog'
|
|
18
18
|
import { listAgentsFn } from '@/server/serverFns/agents/agent-crud'
|
|
19
19
|
import { listSkillsFn, deleteSkillFn } from '@/server/serverFns/agents/skill-crud'
|
|
20
20
|
import { deleteAgentFn } from '@/server/serverFns/agents/agent-crud'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from '@/components/
|
|
1
|
+
export * from '@/components/shared-kit/layout/layout-panel-top'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from '@/components/
|
|
1
|
+
export * from '@/components/shared-kit/auth/auth-layout'
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
DialogHeader,
|
|
29
29
|
DialogTitle,
|
|
30
30
|
} from "@/components/ui/dialog";
|
|
31
|
-
import { LucideIconPicker } from "@/components/shared/lucide-icon-picker";
|
|
31
|
+
import { LucideIconPicker } from "@/components/shared-kit/icons/lucide-icon-picker";
|
|
32
32
|
import { createKnowledgeFn, updateKnowledgeFn } from "@/server/serverFns/knowledge";
|
|
33
33
|
import { knowledgeFormSchema, type KnowledgeFormValues } from "../schemas/knowledge-form";
|
|
34
34
|
|
|
@@ -20,7 +20,7 @@ import { BookOpen, Clock, Dot, Plus } from 'lucide-react'
|
|
|
20
20
|
import { cn } from '@/lib/utils'
|
|
21
21
|
import { formatSaveTime } from '@/lib/time-format'
|
|
22
22
|
import { useTimezone } from '@/providers/timezone-provider'
|
|
23
|
-
import { UserAvatar } from '@/components/
|
|
23
|
+
import { UserAvatar } from '@/components/shared-kit'
|
|
24
24
|
import { TagSelector } from '@/plugins/core/tags/tag-selector'
|
|
25
25
|
import { TagBadge } from '@/plugins/core/tags/tag-badge'
|
|
26
26
|
import { listTagsFn } from '@/plugins/core/tags/serverFns'
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
|
-
import { UserAvatar } from '@/components/
|
|
18
|
+
import { UserAvatar } from '@/components/shared-kit'
|
|
19
19
|
import { AvatarGroup, AvatarGroupTooltip } from '@/components/magicui/components/animate/avatar-group'
|
|
20
20
|
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip'
|
|
21
21
|
import { cn } from '@/lib/utils'
|
|
@@ -63,7 +63,7 @@ vi.mock("@/lib/sidebar-utils", () => ({
|
|
|
63
63
|
isParentActive: (pathname: string, target: string) => pathname.startsWith(target),
|
|
64
64
|
}));
|
|
65
65
|
|
|
66
|
-
vi.mock("@/components/shared/lucide-icon-picker/lucide-icon-by-name", () => ({
|
|
66
|
+
vi.mock("@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name", () => ({
|
|
67
67
|
LucideIconByName: ({ name }: any) => <span data-testid="project-icon">{name}</span>,
|
|
68
68
|
}));
|
|
69
69
|
|
|
@@ -33,7 +33,7 @@ import { NavKnowledge } from "@/components/layout/sidebar-03/nav-knowledge";
|
|
|
33
33
|
import { NavWorkspace } from "@/components/layout/sidebar-03/nav-workspace";
|
|
34
34
|
import { Logo } from "@/components/layout/sidebar-03/logo";
|
|
35
35
|
import { UserMenu } from "@/components/layout/sidebar-03/user-menu";
|
|
36
|
-
import { ThemeToggle } from "@/components/shared/theme-toggle";
|
|
36
|
+
import { ThemeToggle } from "@/components/shared-kit/theme/theme-toggle";
|
|
37
37
|
import { AnimatedThemeToggler } from '@/components/magicui/animated-theme-toggler'
|
|
38
38
|
import { Badge } from "@/components/ui/badge"
|
|
39
39
|
import { workspaceRoutes } from "@/config/sidebar-routes";
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
} from "@/components/ui/sidebar";
|
|
29
29
|
import { cn } from "@/lib/utils";
|
|
30
30
|
import { isParentActive } from "@/lib/sidebar-utils";
|
|
31
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
31
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
32
32
|
import { CreateWorkspaceDialog } from "@/components/workspace/create-workspace-dialog";
|
|
33
33
|
import { useLiveQuery } from "@tanstack/react-db";
|
|
34
34
|
import { workspacesCollection } from "@/lib/collections/reference/workspaces-collection";
|
|
@@ -47,7 +47,7 @@ import { signOut, useSession } from "@/lib/auth/auth-client";
|
|
|
47
47
|
import { useRouter, useMatches } from "@tanstack/react-router";
|
|
48
48
|
import { useTranslation } from "react-i18next";
|
|
49
49
|
import { getQueryClient } from "@/lib/query-client-seam";
|
|
50
|
-
import { UserAvatar } from "@/components/
|
|
50
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
51
51
|
import type { AvatarConfig, ShapeType } from "@allbluecn/kernel";
|
|
52
52
|
import { SparklesText } from "@/components/magicui/sparkles-text";
|
|
53
53
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from '@/components/
|
|
1
|
+
export * from '@/components/shared-kit/theme/animated-theme-toggler'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from '@/components/
|
|
1
|
+
export * from '@/components/shared-kit/decorative/grid-pattern'
|
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
DialogHeader,
|
|
37
37
|
DialogTitle,
|
|
38
38
|
} from "@/components/ui/dialog";
|
|
39
|
-
import { LucideIconPicker } from "@/components/shared/lucide-icon-picker";
|
|
39
|
+
import { LucideIconPicker } from "@/components/shared-kit/icons/lucide-icon-picker";
|
|
40
40
|
import { extractDisplayId, validateDisplayId } from "@/lib/project-display-id";
|
|
41
41
|
import { checkDisplayIdAvailableFn, createProjectFn } from "@/server/serverFns/project";
|
|
42
42
|
import { listWorkspacesBriefFn } from "@/server/serverFns/workspace";
|
|
@@ -41,7 +41,7 @@ import {
|
|
|
41
41
|
import { addProjectMemberFromTeamFn } from "@/server/serverFns/project";
|
|
42
42
|
import { listTeamUsersFn } from "@/server/serverFns/team";
|
|
43
43
|
import type { ProjectRole } from "@/types/project";
|
|
44
|
-
import { UserAvatar } from "@/components/
|
|
44
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
45
45
|
|
|
46
46
|
interface AssignMemberDialogProps {
|
|
47
47
|
open: boolean;
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
import { useTranslation } from "react-i18next"
|
|
19
19
|
import { getClientI18n } from "@/i18n/client"
|
|
20
|
-
import { UserAvatar } from "@/components/
|
|
20
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
21
21
|
import type { AvatarConfig, ShapeType } from "@allbluecn/kernel";
|
|
22
22
|
import { cn } from "@/lib/utils";
|
|
23
23
|
import { formatDate } from "@/lib/datetime";
|
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
AlertDialogHeader,
|
|
40
40
|
AlertDialogTitle,
|
|
41
41
|
} from "@/components/ui/alert-dialog";
|
|
42
|
-
import { UserAvatar } from "@/components/
|
|
42
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
43
43
|
import type { AvatarConfig, ShapeType } from "@allbluecn/kernel";
|
|
44
44
|
import { InviteMemberDialog } from "./invite-member-dialog";
|
|
45
45
|
import {
|
|
@@ -15,6 +15,6 @@
|
|
|
15
15
|
// You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
|
-
export { NotionAvatar as default } from "@/components/
|
|
19
|
-
export { NotionAvatar } from "@/components/
|
|
18
|
+
export { NotionAvatar as default } from "@/components/shared-kit"
|
|
19
|
+
export { NotionAvatar } from "@/components/shared-kit"
|
|
20
20
|
export type { ShapeType } from "@allbluecn/kernel"
|
|
@@ -15,7 +15,7 @@ import { useTranslation } from "react-i18next"
|
|
|
15
15
|
import { cn } from "@/lib/utils"
|
|
16
16
|
import { formatDate } from "@/lib/datetime"
|
|
17
17
|
import { useTimezone } from "@/providers/timezone-provider"
|
|
18
|
-
import { UserAvatar } from "@/components/
|
|
18
|
+
import { UserAvatar } from "@/components/shared-kit"
|
|
19
19
|
import type { AvatarConfig, ShapeType } from "@allbluecn/kernel"
|
|
20
20
|
import { Badge } from "@/components/ui/badge"
|
|
21
21
|
import { Button } from "@/components/ui/button"
|
|
@@ -28,7 +28,7 @@ import { m } from "motion/react";
|
|
|
28
28
|
import { InteractiveHoverButton } from "@/components/magicui/interactive-hover-button";
|
|
29
29
|
import { useSession } from "@/lib/auth/auth-client";
|
|
30
30
|
import { useRouter } from "@tanstack/react-router";
|
|
31
|
-
import { ThemeToggle } from "@/components/shared/theme-toggle";
|
|
31
|
+
import { ThemeToggle } from "@/components/shared-kit/theme/theme-toggle";
|
|
32
32
|
import { AnimatedThemeToggler } from '@/components/magicui/animated-theme-toggler'
|
|
33
33
|
|
|
34
34
|
export type NavigationSection = {
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
18
|
import type { ReactNode } from 'react'
|
|
19
|
-
import { AnimatedThemeToggler } from '
|
|
19
|
+
import { AnimatedThemeToggler } from '@/components/shared-kit/theme/animated-theme-toggler'
|
|
20
20
|
|
|
21
21
|
interface AuthLayoutProps {
|
|
22
22
|
children: ReactNode
|
|
@@ -17,12 +17,13 @@
|
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
import { useState } from "react";
|
|
20
|
+
import * as React from "react";
|
|
20
21
|
import type { ReactNode } from "react";
|
|
21
22
|
import { toast } from "sonner";
|
|
22
23
|
import { useTranslation } from "react-i18next";
|
|
23
|
-
import { Button } from "
|
|
24
|
-
import { Input } from "
|
|
25
|
-
import { Tooltip, TooltipContent, TooltipTrigger } from "
|
|
24
|
+
import { Button } from "@/components/ui/button";
|
|
25
|
+
import { Input } from "@/components/ui/input";
|
|
26
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip";
|
|
26
27
|
import {
|
|
27
28
|
Dialog,
|
|
28
29
|
DialogContent,
|
|
@@ -30,7 +31,7 @@ import {
|
|
|
30
31
|
DialogFooter,
|
|
31
32
|
DialogHeader,
|
|
32
33
|
DialogTitle,
|
|
33
|
-
} from "
|
|
34
|
+
} from "@/components/ui/dialog";
|
|
34
35
|
|
|
35
36
|
interface NameConfirmDialogProps {
|
|
36
37
|
open: boolean;
|
|
@@ -120,7 +121,7 @@ export function NameConfirmDialog({
|
|
|
120
121
|
</p>
|
|
121
122
|
<Input
|
|
122
123
|
value={inputValue}
|
|
123
|
-
onChange={(e) => {
|
|
124
|
+
onChange={(e: React.ChangeEvent<HTMLInputElement>) => {
|
|
124
125
|
setInputValue(e.target.value);
|
|
125
126
|
setError("");
|
|
126
127
|
}}
|
|
@@ -17,8 +17,8 @@
|
|
|
17
17
|
|
|
18
18
|
import { describe, expect, it } from "vitest";
|
|
19
19
|
import { icons } from "lucide-react";
|
|
20
|
-
import { CURATED_ICONS } from "@/components/shared/lucide-icon-picker/curated-icons";
|
|
21
|
-
import { pascalToKebab } from "@/components/shared/lucide-icon-picker/icon-data";
|
|
20
|
+
import { CURATED_ICONS } from "@/components/shared-kit/icons/lucide-icon-picker/curated-icons";
|
|
21
|
+
import { pascalToKebab } from "@/components/shared-kit/icons/lucide-icon-picker/icon-data";
|
|
22
22
|
|
|
23
23
|
const BANNED_SUFFIX = /-(off|slash|ban|x)$/;
|
|
24
24
|
const BANNED_NUMBER_TAIL = /-[0-9]+$/;
|
|
@@ -24,7 +24,7 @@ import {
|
|
|
24
24
|
pascalToKebab,
|
|
25
25
|
pushRecentIcon,
|
|
26
26
|
type CuratedIcon,
|
|
27
|
-
} from "@/components/shared/lucide-icon-picker/icon-data";
|
|
27
|
+
} from "@/components/shared-kit/icons/lucide-icon-picker/icon-data";
|
|
28
28
|
import { Star, Clock, FolderKanban } from "lucide-react";
|
|
29
29
|
|
|
30
30
|
const fakeIcons: CuratedIcon[] = [
|
|
@@ -19,11 +19,11 @@ import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
|
19
19
|
import { render, screen, waitFor } from "@testing-library/react";
|
|
20
20
|
import userEvent from "@testing-library/user-event";
|
|
21
21
|
import { Star } from "lucide-react";
|
|
22
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
23
|
-
import { IconPickerPanel } from "@/components/shared/lucide-icon-picker/panel";
|
|
24
|
-
import { LucideIconPicker } from "@/components/shared/lucide-icon-picker";
|
|
25
|
-
import { CURATED_ICONS } from "@/components/shared/lucide-icon-picker/curated-icons";
|
|
26
|
-
import { pushRecentIcon, getRecentIcons } from "@/components/shared/lucide-icon-picker/icon-data";
|
|
22
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
23
|
+
import { IconPickerPanel } from "@/components/shared-kit/icons/lucide-icon-picker/panel";
|
|
24
|
+
import { LucideIconPicker } from "@/components/shared-kit/icons/lucide-icon-picker";
|
|
25
|
+
import { CURATED_ICONS } from "@/components/shared-kit/icons/lucide-icon-picker/curated-icons";
|
|
26
|
+
import { pushRecentIcon, getRecentIcons } from "@/components/shared-kit/icons/lucide-icon-picker/icon-data";
|
|
27
27
|
|
|
28
28
|
describe("LucideIconByName", () => {
|
|
29
29
|
it("有效 name 渲染对应图标(jsdom 下 data-icon 属性不可靠,以 width 断言)", () => {
|
|
@@ -15,9 +15,12 @@
|
|
|
15
15
|
// You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
|
-
export {
|
|
19
|
-
export {
|
|
20
|
-
export {
|
|
21
|
-
export {
|
|
22
|
-
export {
|
|
23
|
-
export {
|
|
18
|
+
export { UserAvatar } from "./avatars/user-avatar";
|
|
19
|
+
export { NotionAvatar } from "./avatars/notion-avatar";
|
|
20
|
+
export { ReferenceInline } from "./reference/reference-inline";
|
|
21
|
+
export { ReferenceSearch } from "./reference/reference-search";
|
|
22
|
+
export { AICommandButton } from "./ai/ai-command-button";
|
|
23
|
+
export { AIStreamText } from "./ai/ai-stream-text";
|
|
24
|
+
export { AuthLayout, AuthLayoutLeft, AuthLayoutRight } from "./auth/auth-layout";
|
|
25
|
+
export { AnimatedThemeToggler } from "./theme/animated-theme-toggler";
|
|
26
|
+
export { useTimezone } from "./timezone/timezone-provider";
|
|
@@ -21,7 +21,7 @@ import { m, useAnimation } from "motion/react";
|
|
|
21
21
|
import type { HTMLAttributes } from "react";
|
|
22
22
|
import { forwardRef, useCallback, useImperativeHandle, useRef } from "react";
|
|
23
23
|
|
|
24
|
-
import { cn } from "
|
|
24
|
+
import { cn } from "@/lib/utils";
|
|
25
25
|
|
|
26
26
|
export interface LayoutPanelTopIconHandle {
|
|
27
27
|
startAnimation: () => void;
|
|
@@ -18,14 +18,14 @@
|
|
|
18
18
|
|
|
19
19
|
import React, { useRef, useState, useCallback, useEffect } from "react";
|
|
20
20
|
import { useTranslation } from "react-i18next";
|
|
21
|
-
import { Button } from "
|
|
21
|
+
import { Button } from "@/components/ui/button";
|
|
22
22
|
import { Minimize2, ArrowDownToLine } from "lucide-react";
|
|
23
23
|
import {
|
|
24
24
|
Tooltip,
|
|
25
25
|
TooltipContent,
|
|
26
26
|
TooltipProvider,
|
|
27
27
|
TooltipTrigger,
|
|
28
|
-
} from "
|
|
28
|
+
} from "@/components/ui/tooltip";
|
|
29
29
|
|
|
30
30
|
type Corner = "top-left" | "top-right" | "bottom-left" | "bottom-right";
|
|
31
31
|
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
} from "@tanstack/react-table";
|
|
28
28
|
import { Link } from "@tanstack/react-router";
|
|
29
29
|
import { Badge } from "@/components/ui/badge";
|
|
30
|
-
import { UserAvatar } from "@/components/
|
|
30
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
31
31
|
import { PriorityIcon } from "./priority-icon";
|
|
32
32
|
import { STATE_LABEL, STATE_COLOR, PRIORITY_LABEL, PRIORITY_RANK } from "./constants";
|
|
33
33
|
import type { TFunction } from 'i18next'
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
|
|
18
18
|
import { useCallback, useEffect, useRef, useState } from "react"
|
|
19
19
|
import { CalendarCheck, CalendarPlus2, Sprout } from "lucide-react"
|
|
20
|
-
import { UserAvatar } from "@/components/
|
|
20
|
+
import { UserAvatar } from "@/components/shared-kit"
|
|
21
21
|
import { useForm } from "@tanstack/react-form"
|
|
22
22
|
import { useTranslation } from "react-i18next"
|
|
23
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name"
|
|
23
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name"
|
|
24
24
|
import { Button } from "@/components/ui/button"
|
|
25
25
|
import { Input } from "@/components/ui/input"
|
|
26
26
|
|
|
@@ -24,7 +24,7 @@ vi.mock("@/server/serverFns/project", () => ({
|
|
|
24
24
|
listProjectsBriefFn: vi.fn().mockResolvedValue([]),
|
|
25
25
|
}));
|
|
26
26
|
|
|
27
|
-
vi.mock("@/components/
|
|
27
|
+
vi.mock("@/components/shared-kit", () => ({
|
|
28
28
|
UserAvatar: ({ name }: { name: string }) => (
|
|
29
29
|
<span data-testid="avatar">{name}</span>
|
|
30
30
|
),
|
|
@@ -19,7 +19,7 @@ import { useState, useRef, useLayoutEffect, useEffect } from "react";
|
|
|
19
19
|
import { useTranslation } from "react-i18next";
|
|
20
20
|
import type { TFunction } from "i18next";
|
|
21
21
|
import type { ReactNode } from "react";
|
|
22
|
-
import { UserAvatar } from "@/components/
|
|
22
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
23
23
|
import {
|
|
24
24
|
ACTIVITY_LABEL,
|
|
25
25
|
ACTIVITY_ICON,
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
type StoryState,
|
|
31
31
|
type StoryPriority,
|
|
32
32
|
} from "@/components/story/constants";
|
|
33
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
33
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
34
34
|
import { listProjectsBriefFn } from "@/server/serverFns/project";
|
|
35
35
|
import type { ActivityItem, UserBrief } from "@/components/story/types";
|
|
36
36
|
import { groupActivities, type ActivityGroup } from "@/lib/story/activity-grouper";
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
// You should have received a copy of the GNU Affero General Public License
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
|
-
import { UserAvatar } from "@/components/
|
|
18
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
19
19
|
import { useTranslation } from "react-i18next";
|
|
20
20
|
import { formatRelative } from "./comment-thread";
|
|
21
21
|
import { CommentInput } from "./comment-input";
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
ClockPlus,
|
|
28
28
|
ClockArrowUp,
|
|
29
29
|
} from "lucide-react";
|
|
30
|
-
import { UserAvatar } from "@/components/
|
|
30
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
31
31
|
import { Input } from "@/components/ui/input";
|
|
32
32
|
|
|
33
33
|
import { Skeleton } from "@/components/ui/skeleton";
|
|
@@ -45,7 +45,7 @@ import { EmojiPicker } from "./emoji-picker";
|
|
|
45
45
|
import { StoryAiToolbar } from "../ai/story-ai-toolbar";
|
|
46
46
|
import { useStoryAiModel } from "../ai/use-story-ai-model";
|
|
47
47
|
import { StateEditor, PriorityEditor, AssigneeEditor, DateEditor, LabelsEditor, ParentStoryEditor } from "../inline-editors";
|
|
48
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
48
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
49
49
|
import type { Editor } from "@tiptap/react";
|
|
50
50
|
import { StoryProperties } from "./story-properties";
|
|
51
51
|
import { StoryDetailToolbar } from "./story-detail-toolbar";
|
|
@@ -50,7 +50,7 @@ import { getDocumentFn } from "@/server/serverFns/knowledge";
|
|
|
50
50
|
import { sanitize } from "@/lib/sanitize";
|
|
51
51
|
import { formatFileSize, getFaviconUrl, getFileTypeIcon, extractLinkTitle, getMimeTypeLabel } from "../../relations/format";
|
|
52
52
|
import { generalGroupLabel } from "../../relations/general-groups";
|
|
53
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
53
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
54
54
|
import type { AssociatedItem, RelationsData, StoryLinkItem, StoryAttachmentItem } from "../../types";
|
|
55
55
|
|
|
56
56
|
export type AssociatedDialogKind = "link" | "attachment" | "knowledge";
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
17
17
|
|
|
18
18
|
import { Sprout, CircleUser } from "lucide-react";
|
|
19
|
-
import { UserAvatar } from "@/components/
|
|
20
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
19
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
20
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
21
21
|
import { cn } from "@/lib/utils";
|
|
22
22
|
import { STORY_STATES, STATE_LABEL, STATE_COLOR, STATE_ICON, STORY_PRIORITIES, PRIORITY_LABEL, PRIORITY_ICON } from "../constants";
|
|
23
23
|
import { PRIORITY_COLOR } from "../priority-icon";
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
import { X, Calendar, CircleUser, Archive, BrushCleaning } from "lucide-react";
|
|
19
19
|
import { format, parseISO, isValid } from "date-fns";
|
|
20
20
|
import { Button } from "@/components/ui/button";
|
|
21
|
-
import { UserAvatar } from "@/components/
|
|
21
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
22
22
|
import { PriorityIcon } from "../priority-icon";
|
|
23
23
|
import { STORY_STATES, STATE_ICON, PRIORITY_LABEL, type StoryState, type StoryPriority } from "../constants";
|
|
24
24
|
import { getFilterLabel, getFilterIcon, type FilterCondition, type FilterKey } from "./filter-types";
|
|
@@ -20,7 +20,7 @@ import { CircleUser, Search, Check, ArrowDownUp } from "lucide-react";
|
|
|
20
20
|
import { useTranslation } from "react-i18next";
|
|
21
21
|
import { Input } from "@/components/ui/input";
|
|
22
22
|
import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover";
|
|
23
|
-
import { UserAvatar } from "@/components/
|
|
23
|
+
import { UserAvatar } from "@/components/shared-kit";
|
|
24
24
|
import type { UserBrief } from "../types";
|
|
25
25
|
import { cn } from "@/lib/utils";
|
|
26
26
|
import { InlineTrigger } from "./inline-trigger";
|
|
@@ -22,7 +22,7 @@ import { cn } from "@/lib/utils";
|
|
|
22
22
|
import { Search, Sprout, ChevronsUpDown, Check, Trees, ListFilter, Flag } from "lucide-react";
|
|
23
23
|
import { Badge } from "@/components/ui/badge";
|
|
24
24
|
import { Checkbox } from "@/components/ui/checkbox";
|
|
25
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
25
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
26
26
|
import { Button } from "@/components/ui/button";
|
|
27
27
|
import { Input } from "@/components/ui/input";
|
|
28
28
|
import {
|
|
@@ -37,9 +37,9 @@ import {
|
|
|
37
37
|
deleteStoryFn,
|
|
38
38
|
} from "@/server/serverFns/story";
|
|
39
39
|
import { PriorityEditor, StateEditor, AssigneeEditor, DateEditor, LabelsEditor, DependencyTypeSelect } from "../inline-editors";
|
|
40
|
-
import { NameConfirmDialog } from "@/components/shared/name-confirm-dialog";
|
|
40
|
+
import { NameConfirmDialog } from "@/components/shared-kit/dialogs/name-confirm-dialog";
|
|
41
41
|
import { cn } from "@/lib/utils";
|
|
42
|
-
import { LucideIconByName } from "@/components/shared/lucide-icon-picker/lucide-icon-by-name";
|
|
42
|
+
import { LucideIconByName } from "@/components/shared-kit/icons/lucide-icon-picker/lucide-icon-by-name";
|
|
43
43
|
import { dependencyTypeOption } from "../constants";
|
|
44
44
|
import type { DisplayProperty } from "../display/types";
|
|
45
45
|
import type { StoryPatch } from "../display/group-fields";
|
|
@@ -46,7 +46,7 @@ import {
|
|
|
46
46
|
DropdownMenuTrigger,
|
|
47
47
|
} from "@/components/ui/dropdown-menu";
|
|
48
48
|
import { toast } from "sonner";
|
|
49
|
-
import { NameConfirmDialog } from "@/components/shared/name-confirm-dialog";
|
|
49
|
+
import { NameConfirmDialog } from "@/components/shared-kit/dialogs/name-confirm-dialog";
|
|
50
50
|
import { archiveStoryFn, deleteStoryFn } from "@/server/serverFns/story";
|
|
51
51
|
import { TransferStoryPopover } from "./transfer-story-popover";
|
|
52
52
|
|