@acmekit/acmekit 2.13.88 → 2.13.90
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/dist/commands/plugin/develop.d.ts.map +1 -1
- package/dist/commands/plugin/develop.js +92 -68
- package/dist/commands/plugin/develop.js.map +1 -1
- package/dist/templates/app/.claude/rules/admin-components.md +131 -111
- package/dist/templates/app/.claude/rules/admin-data.md +2 -0
- package/dist/templates/app/.claude/rules/admin-patterns.md +39 -31
- package/dist/templates/app/.claude/rules/admin-ui.md +28 -0
- package/dist/templates/app/.claude/rules/api-routes.md +30 -9
- package/dist/templates/app/.claude/rules/modules.md +119 -2
- package/dist/templates/app/.claude/skills/build-feature/SKILL.md +2 -0
- package/dist/templates/app/CLAUDE.md +1 -0
- package/dist/templates/plugin/.claude/rules/admin-components.md +131 -111
- package/dist/templates/plugin/.claude/rules/admin-data.md +2 -0
- package/dist/templates/plugin/.claude/rules/admin-patterns.md +39 -31
- package/dist/templates/plugin/.claude/rules/admin-ui.md +28 -0
- package/dist/templates/plugin/.claude/rules/api-routes.md +30 -9
- package/dist/templates/plugin/.claude/rules/modules.md +118 -1
- package/dist/templates/plugin/.claude/skills/build-feature/SKILL.md +2 -0
- package/dist/templates/plugin/CLAUDE.md +1 -0
- package/package.json +39 -39
|
@@ -497,6 +497,7 @@ src/admin/routes/<feature>/
|
|
|
497
497
|
- Fields: `grid grid-cols-1 gap-4 md:grid-cols-2`
|
|
498
498
|
- Footer: `<div className="flex items-center justify-end gap-x-2">`, submit `type="submit"`
|
|
499
499
|
- All buttons `size="small"`, use `useRouteModal()` for `handleSuccess`
|
|
500
|
+
- **IMPORTANT**: `useRouteModal()` must be in a **child component** rendered inside `<RouteFocusModal>` — split into page (renders modal) + form (calls hook)
|
|
500
501
|
|
|
501
502
|
**Edit form** (`[id]/edit/page.tsx`):
|
|
502
503
|
- `<RouteDrawer>` (auto-opens, navigates back on close)
|
|
@@ -505,6 +506,7 @@ src/admin/routes/<feature>/
|
|
|
505
506
|
- Body fields: single column `flex flex-col gap-y-4` (drawer is narrow)
|
|
506
507
|
- Footer: same as create
|
|
507
508
|
- Loading guard wraps the `<KeyboundForm>`, not just body content
|
|
509
|
+
- **IMPORTANT**: `useRouteModal()` must be in a **child component** rendered inside `<RouteDrawer>` — split into page (renders drawer) + form (calls hook)
|
|
508
510
|
|
|
509
511
|
#### Multi-Entity Feature
|
|
510
512
|
|
|
@@ -15,6 +15,7 @@ You are a senior AcmeKit plugin developer. Build distributable plugins that add
|
|
|
15
15
|
- Put business logic in workflow steps — steps are thin wrappers; service methods own orchestration
|
|
16
16
|
- Add `@acmekit/*` packages to `dependencies` — use `peerDependencies` + `devDependencies`
|
|
17
17
|
- Call `plugin.resolveOptions(container)` inside module loaders — module container is scoped, not root
|
|
18
|
+
- Use raw SQL via `PG_CONNECTION` / `pgConnection.raw()` for data mutations — use service methods
|
|
18
19
|
|
|
19
20
|
### Ask First
|
|
20
21
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@acmekit/acmekit",
|
|
3
|
-
"version": "2.13.
|
|
3
|
+
"version": "2.13.90",
|
|
4
4
|
"description": "Generic application bootstrap and loaders for the AcmeKit framework",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -49,45 +49,45 @@
|
|
|
49
49
|
"test:integration": "../../node_modules/.bin/jest --passWithNoTests --forceExit --testPathPattern=\"src/.*/integration-tests/__tests__/.*\\.ts\""
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
|
-
"@acmekit/framework": "2.13.
|
|
52
|
+
"@acmekit/framework": "2.13.90"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@acmekit/admin-bundler": "2.13.
|
|
56
|
-
"@acmekit/analytics": "2.13.
|
|
57
|
-
"@acmekit/analytics-local": "2.13.
|
|
58
|
-
"@acmekit/analytics-posthog": "2.13.
|
|
59
|
-
"@acmekit/api-key": "2.13.
|
|
60
|
-
"@acmekit/auth": "2.13.
|
|
61
|
-
"@acmekit/auth-emailpass": "2.13.
|
|
62
|
-
"@acmekit/auth-github": "2.13.
|
|
63
|
-
"@acmekit/auth-google": "2.13.
|
|
64
|
-
"@acmekit/cache-inmemory": "2.13.
|
|
65
|
-
"@acmekit/cache-redis": "2.13.
|
|
66
|
-
"@acmekit/caching": "2.13.
|
|
67
|
-
"@acmekit/caching-redis": "2.13.
|
|
68
|
-
"@acmekit/core-flows": "2.13.
|
|
69
|
-
"@acmekit/event-bus-local": "2.13.
|
|
70
|
-
"@acmekit/event-bus-redis": "2.13.
|
|
71
|
-
"@acmekit/file": "2.13.
|
|
72
|
-
"@acmekit/file-local": "2.13.
|
|
73
|
-
"@acmekit/file-s3": "2.13.
|
|
74
|
-
"@acmekit/index": "2.13.
|
|
75
|
-
"@acmekit/link-modules": "2.13.
|
|
76
|
-
"@acmekit/locking": "2.13.
|
|
77
|
-
"@acmekit/locking-postgres": "2.13.
|
|
78
|
-
"@acmekit/locking-redis": "2.13.
|
|
79
|
-
"@acmekit/notification": "2.13.
|
|
80
|
-
"@acmekit/notification-local": "2.13.
|
|
81
|
-
"@acmekit/notification-sendgrid": "2.13.
|
|
82
|
-
"@acmekit/rbac": "2.13.
|
|
83
|
-
"@acmekit/secrets-aws": "2.13.
|
|
84
|
-
"@acmekit/secrets-local": "2.13.
|
|
85
|
-
"@acmekit/settings": "2.13.
|
|
86
|
-
"@acmekit/telemetry": "2.13.
|
|
87
|
-
"@acmekit/translation": "2.13.
|
|
88
|
-
"@acmekit/user": "2.13.
|
|
89
|
-
"@acmekit/workflow-engine-inmemory": "2.13.
|
|
90
|
-
"@acmekit/workflow-engine-redis": "2.13.
|
|
55
|
+
"@acmekit/admin-bundler": "2.13.90",
|
|
56
|
+
"@acmekit/analytics": "2.13.90",
|
|
57
|
+
"@acmekit/analytics-local": "2.13.90",
|
|
58
|
+
"@acmekit/analytics-posthog": "2.13.90",
|
|
59
|
+
"@acmekit/api-key": "2.13.90",
|
|
60
|
+
"@acmekit/auth": "2.13.90",
|
|
61
|
+
"@acmekit/auth-emailpass": "2.13.90",
|
|
62
|
+
"@acmekit/auth-github": "2.13.90",
|
|
63
|
+
"@acmekit/auth-google": "2.13.90",
|
|
64
|
+
"@acmekit/cache-inmemory": "2.13.90",
|
|
65
|
+
"@acmekit/cache-redis": "2.13.90",
|
|
66
|
+
"@acmekit/caching": "2.13.90",
|
|
67
|
+
"@acmekit/caching-redis": "2.13.90",
|
|
68
|
+
"@acmekit/core-flows": "2.13.90",
|
|
69
|
+
"@acmekit/event-bus-local": "2.13.90",
|
|
70
|
+
"@acmekit/event-bus-redis": "2.13.90",
|
|
71
|
+
"@acmekit/file": "2.13.90",
|
|
72
|
+
"@acmekit/file-local": "2.13.90",
|
|
73
|
+
"@acmekit/file-s3": "2.13.90",
|
|
74
|
+
"@acmekit/index": "2.13.90",
|
|
75
|
+
"@acmekit/link-modules": "2.13.90",
|
|
76
|
+
"@acmekit/locking": "2.13.90",
|
|
77
|
+
"@acmekit/locking-postgres": "2.13.90",
|
|
78
|
+
"@acmekit/locking-redis": "2.13.90",
|
|
79
|
+
"@acmekit/notification": "2.13.90",
|
|
80
|
+
"@acmekit/notification-local": "2.13.90",
|
|
81
|
+
"@acmekit/notification-sendgrid": "2.13.90",
|
|
82
|
+
"@acmekit/rbac": "2.13.90",
|
|
83
|
+
"@acmekit/secrets-aws": "2.13.90",
|
|
84
|
+
"@acmekit/secrets-local": "2.13.90",
|
|
85
|
+
"@acmekit/settings": "2.13.90",
|
|
86
|
+
"@acmekit/telemetry": "2.13.90",
|
|
87
|
+
"@acmekit/translation": "2.13.90",
|
|
88
|
+
"@acmekit/user": "2.13.90",
|
|
89
|
+
"@acmekit/workflow-engine-inmemory": "2.13.90",
|
|
90
|
+
"@acmekit/workflow-engine-redis": "2.13.90",
|
|
91
91
|
"@inquirer/checkbox": "^2.3.11",
|
|
92
92
|
"@inquirer/input": "^2.2.9",
|
|
93
93
|
"boxen": "^5.0.1",
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
},
|
|
107
107
|
"peerDependencies": {
|
|
108
108
|
"@acmekit/docs-bundler": "^2.13.42",
|
|
109
|
-
"@acmekit/framework": "2.13.
|
|
109
|
+
"@acmekit/framework": "2.13.90",
|
|
110
110
|
"@jimsheen/yalc": "^1.2.2",
|
|
111
111
|
"@swc/core": "^1.7.28",
|
|
112
112
|
"posthog-node": "^5.11.0",
|