@nocobase/app-template-default 1.0.0-beta.68 → 1.0.0-beta.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/.agents/rules/components.md +5 -1
  2. package/.agents/rules/shell.md +3 -1
  3. package/AGENTS.md +7 -3
  4. package/Dockerfile.dockerignore +0 -1
  5. package/README.MD +3 -1
  6. package/client/app.ts +15 -0
  7. package/client/components/data-table/column-header.tsx +91 -0
  8. package/client/components/data-table/data-table.tsx +216 -0
  9. package/client/components/data-table/index.ts +13 -0
  10. package/client/components/data-table/pagination.tsx +165 -0
  11. package/client/components/data-table/view-options.tsx +77 -0
  12. package/client/components/flow-diagram-css.d.ts +2 -0
  13. package/client/components/flow-diagram.tsx +674 -0
  14. package/client/components/flow-layout.ts +250 -0
  15. package/client/components/lifecycle-diagram-model.ts +217 -0
  16. package/client/components/lifecycle-diagram.tsx +310 -0
  17. package/client/components/permission-editor.tsx +589 -0
  18. package/client/components/permission-filter.tsx +455 -0
  19. package/client/components/route-overlay.tsx +26 -13
  20. package/client/components/ui/checkbox.tsx +25 -0
  21. package/client/components/ui/sidebar.tsx +1 -4
  22. package/client/components/ui/switch.tsx +30 -0
  23. package/client/components/ui/table.tsx +113 -0
  24. package/client/extensions/nocobase-workflow-management/README.md +70 -0
  25. package/client/extensions/nocobase-workflow-management/definition-list.tsx +148 -0
  26. package/client/extensions/nocobase-workflow-management/execution-detail.tsx +230 -0
  27. package/client/extensions/nocobase-workflow-management/execution-list.tsx +175 -0
  28. package/client/extensions/nocobase-workflow-management/layout.tsx +95 -0
  29. package/client/layouts/components/app-sidebar.tsx +1 -1
  30. package/client/layouts/use-sidebar-preference.ts +62 -42
  31. package/client/locales/system/en-US.ts +29 -0
  32. package/client/locales/system/settings-en-US.ts +142 -0
  33. package/client/locales/system/settings-zh-CN.ts +136 -0
  34. package/client/locales/system/zh-CN.ts +29 -0
  35. package/client/pages/auth/auth-page.css +15 -0
  36. package/client/pages/auth/login.tsx +1 -1
  37. package/client/pages/auth/shared.tsx +3 -1
  38. package/client/pages/settings/hooks.tsx +137 -0
  39. package/client/pages/settings/page-permission-titles.ts +7 -0
  40. package/client/pages/settings/page-permissions.ts +42 -0
  41. package/client/pages/settings/permission-filters.tsx +119 -0
  42. package/client/pages/settings/permissions-model.ts +260 -0
  43. package/client/pages/settings/role-form.tsx +405 -0
  44. package/client/pages/settings/roles.tsx +163 -0
  45. package/client/pages/settings/routes.ts +79 -0
  46. package/client/pages/settings/shared.tsx +119 -0
  47. package/client/pages/settings/user-detail.tsx +268 -0
  48. package/client/pages/settings/user-form.tsx +427 -0
  49. package/client/pages/settings/users.tsx +451 -0
  50. package/client/routing/app-router.tsx +4 -1
  51. package/client/routing/session-preparation.tsx +65 -0
  52. package/client/styles.css +4 -7
  53. package/package.json +27 -24
  54. package/tests/components/app-layout-routes.test.tsx +14 -7
  55. package/tests/components/data-table.test.tsx +127 -0
  56. package/tests/components/layout-i18n.test.tsx +8 -1
  57. package/tests/components/navigation-menu.test.tsx +24 -14
  58. package/tests/components/permission-editor.test.tsx +477 -0
  59. package/tests/components/permission-filter-binding.test.tsx +150 -0
  60. package/tests/components/permission-filter.test.tsx +202 -0
  61. package/tests/components/settings.test.tsx +294 -0
  62. package/tests/components/sidebar-permissions.test.tsx +12 -4
  63. package/tests/components/sidebar-preference.test.tsx +209 -14
  64. package/tests/components/user-permissions.test.tsx +142 -0
  65. package/tests/fixtures/theme-tokens.tsx +9 -1
  66. package/tests/logic/asset-url-build.test.ts +0 -1
  67. package/tests/logic/client-routes.test.ts +40 -0
  68. package/tests/logic/client-shell.test.tsx +10 -2
  69. package/tests/logic/config-example.test.ts +30 -0
  70. package/tests/logic/dev-client-watch.test.ts +8 -1
  71. package/tests/logic/page-permission-titles.test.ts +223 -0
  72. package/tests/logic/route-overlay.test.tsx +42 -0
  73. package/tests/logic/session-preparation.test.tsx +223 -0
  74. package/tests/logic/settings-permissions.test.ts +168 -0
  75. package/vite.config.ts +0 -22
  76. package/client/agent-annotations-host.ts +0 -25
package/vite.config.ts CHANGED
@@ -1,19 +1,11 @@
1
1
  import { createAppViteConfig } from '@nocobase/dev-config/vite/app';
2
2
  import { loadAppVitePlugins } from '@nocobase/dev-config/vite/plugins';
3
- import agentAnnotations from '@gchust/agent-annotations/vite';
4
3
  import path from 'path';
5
4
  import {
6
5
  createDevClientConfigPlugin,
7
6
  createDevProxy,
8
7
  } from '@nocobase/app-cli/dev/proxy';
9
8
 
10
- const AGENT_ANNOTATIONS_DISABLED_VALUES = new Set(['false', '0', 'no', 'off']);
11
-
12
- function isAgentAnnotationsEnabled(value: string | undefined): boolean {
13
- const normalized = value?.trim().toLowerCase();
14
- return !normalized || !AGENT_ANNOTATIONS_DISABLED_VALUES.has(normalized);
15
- }
16
-
17
9
  const numberFromEnv = (value: string | undefined): number | undefined => {
18
10
  const parsed = Number(value);
19
11
  return Number.isFinite(parsed) && parsed > 0 ? parsed : undefined;
@@ -32,9 +24,6 @@ export default createAppViteConfig(async (environment) => {
32
24
  command === 'serve'
33
25
  ? createDevClientConfigPlugin(appBase, env.PROXY_TARGET_URL)
34
26
  : undefined;
35
- const annotationsEnabled = isAgentAnnotationsEnabled(
36
- env.AGENT_ANNOTATIONS_ENABLED,
37
- );
38
27
  const viteHmrHost = env.APP_VITE_HMR_HOST;
39
28
  const viteDevPort = numberFromEnv(env.APP_VITE_DEV_PORT) ?? 5173;
40
29
 
@@ -44,16 +33,6 @@ export default createAppViteConfig(async (environment) => {
44
33
  plugins: [
45
34
  ...(await loadAppVitePlugins({ appRoot: __dirname, environment })),
46
35
  ...(devClientConfig ? [devClientConfig] : []),
47
- ...(annotationsEnabled
48
- ? [
49
- agentAnnotations({
50
- root: __dirname,
51
- clientExtensions: [
52
- path.resolve(__dirname, 'client/agent-annotations-host.ts'),
53
- ],
54
- }),
55
- ]
56
- : []),
57
36
  ],
58
37
  server: {
59
38
  proxy:
@@ -62,7 +41,6 @@ export default createAppViteConfig(async (environment) => {
62
41
  : undefined,
63
42
  watch: {
64
43
  ignored: [
65
- '**/.agent-annotations/**',
66
44
  '**/storage/**',
67
45
  // Vite only excludes dist/client automatically. The server build and
68
46
  // vendored packages also live in dist and can exhaust file watchers.
@@ -1,25 +0,0 @@
1
- import { defineClientExtension } from '@gchust/agent-annotations/extension';
2
-
3
- export default defineClientExtension({
4
- id: 'nocobase.theme',
5
- apiVersion: 1,
6
- host: {
7
- theme: () =>
8
- document.documentElement.classList.contains('dark') ? 'dark' : 'light',
9
- brandColor: () => {
10
- const primary = getComputedStyle(document.documentElement)
11
- .getPropertyValue('--primary')
12
- .trim();
13
- // The annotation host accepts only #RRGGBB; custom themes may use other CSS color formats.
14
- return /^#[\da-f]{6}$/i.test(primary) ? primary : '#002ad1';
15
- },
16
- subscribe(listener) {
17
- const observer = new MutationObserver(listener);
18
- observer.observe(document.documentElement, {
19
- attributeFilter: ['class', 'data-theme'],
20
- attributes: true,
21
- });
22
- return () => observer.disconnect();
23
- },
24
- },
25
- });