@webiny/mcp 6.4.0-beta.3 → 6.4.0-beta.5

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/mcp",
3
- "version": "6.4.0-beta.3",
3
+ "version": "6.4.0-beta.5",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": "./index.js",
@@ -17,8 +17,7 @@
17
17
  "author": "Webiny Ltd",
18
18
  "license": "MIT",
19
19
  "publishConfig": {
20
- "access": "public",
21
- "directory": "dist"
20
+ "access": "public"
22
21
  },
23
22
  "dependencies": {
24
23
  "@modelcontextprotocol/sdk": "1.29.0",
@@ -28,7 +27,7 @@
28
27
  "devDependencies": {
29
28
  "@types/lodash": "4.17.24",
30
29
  "@types/ncp": "2.0.8",
31
- "@webiny/build-tools": "6.4.0-beta.3",
30
+ "@webiny/build-tools": "6.4.0-beta.5",
32
31
  "execa": "5.1.1",
33
32
  "tsx": "4.21.0",
34
33
  "typescript": "6.0.3"
@@ -36,5 +35,7 @@
36
35
  "scripts": {
37
36
  "prepublishOnly": "bash ./prepublishOnly.sh"
38
37
  },
39
- "gitHead": "2e58681d4344024bfb60e6180338e2f154ec87f0"
38
+ "webiny": {
39
+ "publishFrom": "dist"
40
+ }
40
41
  }
@@ -562,6 +562,44 @@ Creates a feature definition for the admin runtime.
562
562
  | `def.register(container)` | Called at startup with the DI `Container` instance |
563
563
  | `def.resolve(container)` | **Required.** Resolves abstractions for `useFeature()` consumers |
564
564
 
565
+ ## React Component Rules
566
+
567
+ 1. **No `&&` conditional rendering** — never use `condition && (<Component />)` in JSX. For small one-two liners, use a ternary with explicit `: null`. For anything larger, extract to its own component file where the child decides whether to render.
568
+
569
+ **Bad** (never use `&&`):
570
+
571
+ ```tsx
572
+ {
573
+ delivery.responseStatus !== null && <Text size="sm">HTTP {delivery.responseStatus}</Text>;
574
+ }
575
+ ```
576
+
577
+ **Good** (small inline ternary):
578
+
579
+ ```tsx
580
+ {
581
+ delivery.responseTime ? <Text size="sm">{delivery.responseTime}ms</Text> : null;
582
+ }
583
+ ```
584
+
585
+ **Good** (larger block — own file, e.g., `ResponseStatus.tsx`):
586
+
587
+ ```tsx
588
+ export const ResponseStatus = ({ presenter }: Props) => {
589
+ const { vm } = presenter;
590
+ if (vm.responseStatus === null) {
591
+ return null;
592
+ }
593
+ return <Text size="sm">HTTP {vm.responseStatus}</Text>;
594
+ };
595
+ ```
596
+
597
+ 2. **One component per file** — every React component lives in its own file. No exceptions.
598
+
599
+ 3. **React is a dumb view layer** — components read `presenter.vm` and call presenter methods. No business logic, no data fetching, no state derivation in components.
600
+
601
+ 4. **Pass presenter to child components** — child components receive the full `presenter`, not split `vm` + `actions` props. The child reads what it needs from `presenter.vm`.
602
+
565
603
  ## Key Rules
566
604
 
567
605
  1. **Abstractions first** — any new business logic MUST be encapsulated in `createAbstraction` + `createFeature`.
@@ -2,7 +2,7 @@
2
2
  name: webiny-admin-ui-catalog
3
3
  context: webiny-api
4
4
  description: >
5
- admin/ui — 116 abstractions.
5
+ admin/ui — 124 abstractions.
6
6
  ---
7
7
 
8
8
  # admin/ui
@@ -170,11 +170,48 @@ description: >
170
170
  **Import:** `import { EditIcon } from "webiny/admin/ui"`
171
171
  **Source:** `@webiny/admin-ui/DataList/index.ts`
172
172
 
173
+ ---
174
+ **Name:** `FileManager`
175
+ **Import:** `import { FileManager } from "webiny/admin/ui/file-manager"`
176
+ **Source:** `@webiny/app-admin/base/ui/FileManager.tsx`
177
+
178
+ ---
179
+ **Name:** `FileManagerFileItem`
180
+ **Kind:** type
181
+ **Import:** `import type { FileManagerFileItem } from "webiny/admin/ui/file-manager"`
182
+ **Source:** `@webiny/app-admin/base/ui/FileManager.tsx`
183
+ **Description:** Represents a file object managed by the File Manager.
184
+
185
+ ---
186
+ **Name:** `FileManagerViewConfig`
187
+ **Import:** `import { FileManagerViewConfig } from "webiny/admin/ui/file-manager"`
188
+ **Source:** `@webiny/app-file-manager/presentation/config/FileManagerViewConfig.tsx`
189
+
173
190
  ---
174
191
  **Name:** `FilePicker`
175
192
  **Import:** `import { FilePicker } from "webiny/admin/ui"`
176
193
  **Source:** `@webiny/admin-ui/FilePicker/index.ts`
177
194
 
195
+ ---
196
+ **Name:** `FileUrlFormatter`
197
+ **Import:** `import { FileUrlFormatter } from "webiny/admin/ui/file-manager"`
198
+ **Source:** `@webiny/app-admin/features/fileUrlFormatter/abstractions.ts`
199
+
200
+ ---
201
+ **Name:** `FillViewport`
202
+ **Import:** `import { FillViewport } from "webiny/admin/ui"`
203
+ **Source:** `@webiny/admin-ui/FillViewport/index.ts`
204
+
205
+ ---
206
+ **Name:** `FillViewportHeight`
207
+ **Import:** `import { FillViewportHeight } from "webiny/admin/ui"`
208
+ **Source:** `@webiny/admin-ui/FillViewport/index.ts`
209
+
210
+ ---
211
+ **Name:** `FillViewportWidth`
212
+ **Import:** `import { FillViewportWidth } from "webiny/admin/ui"`
213
+ **Source:** `@webiny/admin-ui/FillViewport/index.ts`
214
+
178
215
  ---
179
216
  **Name:** `FilterIcon`
180
217
  **Import:** `import { FilterIcon } from "webiny/admin/ui"`
@@ -542,6 +579,11 @@ description: >
542
579
  **Import:** `import { useDisclosure } from "webiny/admin/ui"`
543
580
  **Source:** `@webiny/admin-ui/hooks/index.ts`
544
581
 
582
+ ---
583
+ **Name:** `useFileManagerConfig`
584
+ **Import:** `import { useFileManagerConfig } from "webiny/admin/ui/file-manager"`
585
+ **Source:** `@webiny/app-file-manager/presentation/config/FileManagerViewConfig.tsx`
586
+
545
587
  ---
546
588
  **Name:** `useFontColorPicker`
547
589
  **Import:** `import { useFontColorPicker } from "webiny/admin/ui/lexical"`
@@ -2,7 +2,7 @@
2
2
  name: webiny-api-webhooks-catalog
3
3
  context: webiny-api
4
4
  description: >
5
- api/webhooks — 10 abstractions.
5
+ api/webhooks — 15 abstractions.
6
6
  ---
7
7
 
8
8
  # api/webhooks
@@ -76,3 +76,31 @@ description: >
76
76
  **Source:** `@webiny/webhooks/api/domain/WebhookDelivery.ts`
77
77
 
78
78
  ---
79
+ **Name:** `WebhookDispatcher`
80
+ **Import:** `import { WebhookDispatcher } from "webiny/api/webhooks"`
81
+ **Source:** `@webiny/api-core/features/webhooks/index.ts`
82
+ **Description:** Routes a domain event to all matching enabled webhooks via background tasks.
83
+
84
+ ---
85
+ **Name:** `WebhookFactory`
86
+ **Import:** `import { WebhookFactory } from "webiny/api/webhooks"`
87
+ **Source:** `@webiny/api-core/features/webhooks/index.ts`
88
+
89
+ ---
90
+ **Name:** `WebhookProvider`
91
+ **Import:** `import { WebhookProvider } from "webiny/api/webhooks"`
92
+ **Source:** `@webiny/api-core/features/webhooks/index.ts`
93
+
94
+ ---
95
+ **Name:** `WebhookSignPayload`
96
+ **Import:** `import { WebhookSignPayload } from "webiny/api/webhooks"`
97
+ **Source:** `@webiny/api-core/features/webhooks/index.ts`
98
+ **Description:** Signs webhook payloads using the Standard Webhooks spec (https://www.standardwebhooks.com).
99
+
100
+ ---
101
+ **Name:** `WebhookVerifyPayload`
102
+ **Import:** `import { WebhookVerifyPayload } from "webiny/api/webhooks"`
103
+ **Source:** `@webiny/api-core/features/webhooks/index.ts`
104
+ **Description:** Verifies incoming webhook payloads using the Standard Webhooks spec (https://www.standardwebhooks.com).
105
+
106
+ ---
@@ -1,23 +0,0 @@
1
- ---
2
- name: webiny-admin-file-manager-catalog
3
- context: webiny-api
4
- description: >
5
- admin/file-manager — 1 abstractions.
6
- ---
7
-
8
- # admin/file-manager
9
-
10
- ## How to Use
11
-
12
- 1. Find the abstraction you need below
13
- 2. You MUST read the source file to get the exact interface and types!
14
- 3. Import: `import { Name } from "<importPath>";`
15
-
16
- ## Abstractions
17
-
18
- ---
19
- **Name:** `FileUrlFormatter`
20
- **Import:** `import { FileUrlFormatter } from "webiny/admin/file-manager"`
21
- **Source:** `@webiny/app-file-manager/features/fileUrlFormatter/abstractions.ts`
22
-
23
- ---