@webiny/mcp 6.0.0 → 6.1.0-beta.1

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 (101) hide show
  1. package/agents/claude.d.ts +2 -2
  2. package/agents/claude.js.map +1 -1
  3. package/agents/cline.d.ts +2 -2
  4. package/agents/cline.js.map +1 -1
  5. package/agents/copilot.d.ts +2 -2
  6. package/agents/copilot.js +1 -1
  7. package/agents/copilot.js.map +1 -1
  8. package/agents/cursor.d.ts +2 -2
  9. package/agents/cursor.js.map +1 -1
  10. package/agents/instructions.js +1 -1
  11. package/agents/instructions.js.map +1 -1
  12. package/agents/kiro.d.ts +15 -0
  13. package/agents/kiro.js +33 -0
  14. package/agents/kiro.js.map +1 -0
  15. package/agents/opencode.d.ts +22 -0
  16. package/agents/opencode.js +76 -0
  17. package/agents/opencode.js.map +1 -0
  18. package/agents/shared.d.ts +5 -5
  19. package/agents/shared.js +3 -3
  20. package/agents/shared.js.map +1 -1
  21. package/agents/windsurf.d.ts +2 -2
  22. package/agents/windsurf.js.map +1 -1
  23. package/bin.d.ts +2 -0
  24. package/bin.js +4 -0
  25. package/bin.js.map +1 -0
  26. package/cli/ConfigureMcp.d.ts +7 -14
  27. package/cli/ConfigureMcp.js +24 -52
  28. package/cli/ConfigureMcp.js.map +1 -1
  29. package/cli/McpServer.d.ts +3 -10
  30. package/cli/McpServer.js +83 -109
  31. package/cli/McpServer.js.map +1 -1
  32. package/cli.d.ts +1 -0
  33. package/cli.js +60 -0
  34. package/cli.js.map +1 -0
  35. package/index.d.ts +6 -1
  36. package/index.js +7 -1
  37. package/index.js.map +1 -1
  38. package/package.json +11 -23
  39. package/skills/admin/admin-architect/SKILL.md +389 -0
  40. package/skills/admin/ui-extensions/SKILL.md +268 -0
  41. package/skills/api/api-architect/SKILL.md +189 -0
  42. package/skills/api/custom-field-type/SKILL.md +263 -0
  43. package/skills/api/event-handler-pattern/SKILL.md +131 -0
  44. package/skills/{custom-graphql-api → api/graphql-api}/SKILL.md +3 -3
  45. package/skills/api/use-case-pattern/SKILL.md +102 -0
  46. package/skills/cli-extensions/SKILL.md +45 -47
  47. package/skills/configure-auth0/SKILL.md +4 -4
  48. package/skills/configure-okta/SKILL.md +3 -3
  49. package/skills/content-models/SKILL.md +197 -196
  50. package/skills/dependency-injection/SKILL.md +9 -219
  51. package/skills/full-stack-architect/SKILL.md +195 -0
  52. package/skills/generated/admin/SKILL.md +119 -0
  53. package/skills/generated/admin/aco/SKILL.md +28 -0
  54. package/skills/generated/admin/build-params/SKILL.md +33 -0
  55. package/skills/generated/admin/cms/SKILL.md +342 -0
  56. package/skills/generated/admin/configs/SKILL.md +23 -0
  57. package/skills/generated/admin/env-config/SKILL.md +30 -0
  58. package/skills/generated/admin/form/SKILL.md +88 -0
  59. package/skills/generated/admin/graphql-client/SKILL.md +23 -0
  60. package/skills/generated/admin/lexical/SKILL.md +105 -0
  61. package/skills/generated/admin/local-storage/SKILL.md +42 -0
  62. package/skills/generated/admin/router/SKILL.md +48 -0
  63. package/skills/generated/admin/security/SKILL.md +63 -0
  64. package/skills/generated/admin/tenancy/SKILL.md +64 -0
  65. package/skills/generated/admin/ui/SKILL.md +468 -0
  66. package/skills/generated/admin/website-builder/SKILL.md +318 -0
  67. package/skills/generated/api/SKILL.md +40 -0
  68. package/skills/generated/api/aco/SKILL.md +202 -0
  69. package/skills/generated/api/build-params/SKILL.md +31 -0
  70. package/skills/generated/api/cms/SKILL.md +646 -0
  71. package/skills/generated/api/event-publisher/SKILL.md +31 -0
  72. package/skills/generated/api/file-manager/SKILL.md +189 -0
  73. package/skills/generated/api/graphql/SKILL.md +61 -0
  74. package/skills/generated/api/key-value-store/SKILL.md +31 -0
  75. package/skills/generated/api/logger/SKILL.md +25 -0
  76. package/skills/generated/api/opensearch/SKILL.md +39 -0
  77. package/skills/generated/api/scheduler/SKILL.md +112 -0
  78. package/skills/generated/api/security/SKILL.md +317 -0
  79. package/skills/generated/api/system/SKILL.md +34 -0
  80. package/skills/generated/api/tasks/SKILL.md +31 -0
  81. package/skills/generated/api/tenancy/SKILL.md +124 -0
  82. package/skills/generated/api/tenant-manager/SKILL.md +34 -0
  83. package/skills/generated/api/website-builder/SKILL.md +356 -0
  84. package/skills/generated/cli/SKILL.md +28 -0
  85. package/skills/generated/cli/command/SKILL.md +24 -0
  86. package/skills/generated/extensions/SKILL.md +43 -0
  87. package/skills/generated/infra/SKILL.md +190 -0
  88. package/skills/infrastructure-extensions/SKILL.md +3 -2
  89. package/skills/local-development/SKILL.md +2 -28
  90. package/skills/project-structure/SKILL.md +78 -56
  91. package/skills/webiny-sdk/SKILL.md +77 -76
  92. package/skills/website-builder/SKILL.md +143 -149
  93. package/ui.d.ts +24 -0
  94. package/ui.js +31 -0
  95. package/ui.js.map +1 -0
  96. package/Extension.d.ts +0 -2
  97. package/Extension.js +0 -11
  98. package/Extension.js.map +0 -1
  99. package/skills/admin-ui-extensions/SKILL.md +0 -267
  100. package/skills/api-custom-feature/SKILL.md +0 -195
  101. package/skills/lifecycle-events/SKILL.md +0 -348
@@ -0,0 +1,356 @@
1
+ ---
2
+ name: webiny-api-website-builder-catalog
3
+ context: webiny-api
4
+ description: >
5
+ API — Website Builder — 57 abstractions.
6
+ Page and redirect event handlers and use cases.
7
+ ---
8
+
9
+ # API — Website Builder
10
+
11
+ Page and redirect event handlers and use cases.
12
+
13
+ ## How to Use
14
+
15
+ 1. Find the abstraction you need below
16
+ 2. Read the source file to get the exact interface and types
17
+ 3. Import: `import { Name } from "<importPath>";`
18
+ 4. See `webiny-use-case-pattern` or `webiny-event-handler-pattern` skills for implementation patterns
19
+
20
+ ## Abstractions
21
+
22
+ ---
23
+ **Name:** `CreatePageRevisionFromUseCase`
24
+ **Import:** `import { CreatePageRevisionFromUseCase } from "webiny/api/website-builder/page"`
25
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePageRevisionFrom/abstractions.ts`
26
+ **Description:** Create a page revision from an existing one.
27
+
28
+ ---
29
+ **Name:** `CreatePageUseCase`
30
+ **Import:** `import { CreatePageUseCase } from "webiny/api/website-builder/page"`
31
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePage/abstractions.ts`
32
+ **Description:** Create a new page.
33
+
34
+ ---
35
+ **Name:** `CreateRedirectUseCase`
36
+ **Import:** `import { CreateRedirectUseCase } from "webiny/api/website-builder/redirect"`
37
+ **Source:** `@webiny/api-website-builder/features/redirects/CreateRedirect/abstractions.ts`
38
+ **Description:** Create a URL redirect.
39
+
40
+ ---
41
+ **Name:** `DeletePageUseCase`
42
+ **Import:** `import { DeletePageUseCase } from "webiny/api/website-builder/page"`
43
+ **Source:** `@webiny/api-website-builder/features/pages/DeletePage/abstractions.ts`
44
+ **Description:** Delete a page.
45
+
46
+ ---
47
+ **Name:** `DeleteRedirectUseCase`
48
+ **Import:** `import { DeleteRedirectUseCase } from "webiny/api/website-builder/redirect"`
49
+ **Source:** `@webiny/api-website-builder/features/redirects/DeleteRedirect/abstractions.ts`
50
+ **Description:** Delete a URL redirect.
51
+
52
+ ---
53
+ **Name:** `DuplicatePageUseCase`
54
+ **Import:** `import { DuplicatePageUseCase } from "webiny/api/website-builder/page"`
55
+ **Source:** `@webiny/api-website-builder/features/pages/DuplicatePage/abstractions.ts`
56
+ **Description:** Duplicate a page.
57
+
58
+ ---
59
+ **Name:** `GetActiveRedirectsUseCase`
60
+ **Import:** `import { GetActiveRedirectsUseCase } from "webiny/api/website-builder/redirect"`
61
+ **Source:** `@webiny/api-website-builder/features/redirects/GetActiveRedirects/abstractions.ts`
62
+ **Description:** Retrieve all active URL redirects.
63
+
64
+ ---
65
+ **Name:** `GetDeletedPageByIdUseCase`
66
+ **Import:** `import { GetDeletedPageByIdUseCase } from "webiny/api/website-builder/page"`
67
+ **Source:** `@webiny/api-website-builder/features/pages/GetDeletedPageById/abstractions.ts`
68
+
69
+ ---
70
+ **Name:** `GetPageByIdUseCase`
71
+ **Import:** `import { GetPageByIdUseCase } from "webiny/api/website-builder/page"`
72
+ **Source:** `@webiny/api-website-builder/features/pages/GetPageById/abstractions.ts`
73
+ **Description:** Retrieve a page by ID.
74
+
75
+ ---
76
+ **Name:** `GetPageByPathUseCase`
77
+ **Import:** `import { GetPageByPathUseCase } from "webiny/api/website-builder/page"`
78
+ **Source:** `@webiny/api-website-builder/features/pages/GetPageByPath/abstractions.ts`
79
+ **Description:** Retrieve a page by its URL path.
80
+
81
+ ---
82
+ **Name:** `GetPageRevisionsUseCase`
83
+ **Import:** `import { GetPageRevisionsUseCase } from "webiny/api/website-builder/page"`
84
+ **Source:** `@webiny/api-website-builder/features/pages/GetPageRevisions/abstractions.ts`
85
+ **Description:** Retrieve all revisions of a page.
86
+
87
+ ---
88
+ **Name:** `GetRedirectByIdUseCase`
89
+ **Import:** `import { GetRedirectByIdUseCase } from "webiny/api/website-builder/redirect"`
90
+ **Source:** `@webiny/api-website-builder/features/redirects/GetRedirectById/abstractions.ts`
91
+ **Description:** Retrieve a URL redirect by ID.
92
+
93
+ ---
94
+ **Name:** `InvalidateRedirectsCacheUseCase`
95
+ **Import:** `import { InvalidateRedirectsCacheUseCase } from "webiny/api/website-builder/redirect"`
96
+ **Source:** `@webiny/api-website-builder/features/redirects/InvalidateRedirectsCache/abstractions.ts`
97
+ **Description:** Invalidate the redirects cache.
98
+
99
+ ---
100
+ **Name:** `ListDeletedPagesUseCase`
101
+ **Import:** `import { ListDeletedPagesUseCase } from "webiny/api/website-builder/page"`
102
+ **Source:** `@webiny/api-website-builder/features/pages/ListDeletedPages/abstractions.ts`
103
+
104
+ ---
105
+ **Name:** `ListPagesUseCase`
106
+ **Import:** `import { ListPagesUseCase } from "webiny/api/website-builder/page"`
107
+ **Source:** `@webiny/api-website-builder/features/pages/ListPages/abstractions.ts`
108
+ **Description:** List pages with filtering and pagination.
109
+
110
+ ---
111
+ **Name:** `ListRedirectsUseCase`
112
+ **Import:** `import { ListRedirectsUseCase } from "webiny/api/website-builder/redirect"`
113
+ **Source:** `@webiny/api-website-builder/features/redirects/ListRedirects/abstractions.ts`
114
+ **Description:** List URL redirects with filtering.
115
+
116
+ ---
117
+ **Name:** `MovePageUseCase`
118
+ **Import:** `import { MovePageUseCase } from "webiny/api/website-builder/page"`
119
+ **Source:** `@webiny/api-website-builder/features/pages/MovePage/abstractions.ts`
120
+ **Description:** Move a page to a different folder.
121
+
122
+ ---
123
+ **Name:** `MoveRedirectUseCase`
124
+ **Import:** `import { MoveRedirectUseCase } from "webiny/api/website-builder/redirect"`
125
+ **Source:** `@webiny/api-website-builder/features/redirects/MoveRedirect/abstractions.ts`
126
+ **Description:** Move a URL redirect to a different folder.
127
+
128
+ ---
129
+ **Name:** `NextjsConfig`
130
+ **Import:** `import { NextjsConfig } from "webiny/api/website-builder/nextjs"`
131
+ **Source:** `@webiny/api-website-builder/features/nextjs/abstractions.ts`
132
+ **Description:** Configuration for Next.js website rendering.
133
+
134
+ ---
135
+ **Name:** `PageAfterCreateEventHandler`
136
+ **Import:** `import { PageAfterCreateEventHandler } from "webiny/api/website-builder/page"`
137
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePage/abstractions.ts`
138
+ **Description:** Hook into page lifecycle after a page is created.
139
+
140
+ ---
141
+ **Name:** `PageAfterCreateRevisionFromEventHandler`
142
+ **Import:** `import { PageAfterCreateRevisionFromEventHandler } from "webiny/api/website-builder/page"`
143
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePageRevisionFrom/abstractions.ts`
144
+ **Description:** Hook into page lifecycle after a revision is created from existing.
145
+
146
+ ---
147
+ **Name:** `PageAfterDeleteEventHandler`
148
+ **Import:** `import { PageAfterDeleteEventHandler } from "webiny/api/website-builder/page"`
149
+ **Source:** `@webiny/api-website-builder/features/pages/DeletePage/abstractions.ts`
150
+ **Description:** Hook into page lifecycle after a page is deleted.
151
+
152
+ ---
153
+ **Name:** `PageAfterDuplicateEventHandler`
154
+ **Import:** `import { PageAfterDuplicateEventHandler } from "webiny/api/website-builder/page"`
155
+ **Source:** `@webiny/api-website-builder/features/pages/DuplicatePage/abstractions.ts`
156
+ **Description:** Hook into page lifecycle after a page is duplicated.
157
+
158
+ ---
159
+ **Name:** `PageAfterMoveEventHandler`
160
+ **Import:** `import { PageAfterMoveEventHandler } from "webiny/api/website-builder/page"`
161
+ **Source:** `@webiny/api-website-builder/features/pages/MovePage/abstractions.ts`
162
+ **Description:** Hook into page lifecycle after a page is moved.
163
+
164
+ ---
165
+ **Name:** `PageAfterPublishEventHandler`
166
+ **Import:** `import { PageAfterPublishEventHandler } from "webiny/api/website-builder/page"`
167
+ **Source:** `@webiny/api-website-builder/features/pages/PublishPage/abstractions.ts`
168
+ **Description:** Hook into page lifecycle after a page is published.
169
+
170
+ ---
171
+ **Name:** `PageAfterRestoreEventHandler`
172
+ **Import:** `import { PageAfterRestoreEventHandler } from "webiny/api/website-builder/page"`
173
+ **Source:** `@webiny/api-website-builder/features/pages/RestorePage/abstractions.ts`
174
+
175
+ ---
176
+ **Name:** `PageAfterTrashEventHandler`
177
+ **Import:** `import { PageAfterTrashEventHandler } from "webiny/api/website-builder/page"`
178
+ **Source:** `@webiny/api-website-builder/features/pages/TrashPage/abstractions.ts`
179
+
180
+ ---
181
+ **Name:** `PageAfterUnpublishEventHandler`
182
+ **Import:** `import { PageAfterUnpublishEventHandler } from "webiny/api/website-builder/page"`
183
+ **Source:** `@webiny/api-website-builder/features/pages/UnpublishPage/abstractions.ts`
184
+ **Description:** Hook into page lifecycle after a page is unpublished.
185
+
186
+ ---
187
+ **Name:** `PageAfterUpdateEventHandler`
188
+ **Import:** `import { PageAfterUpdateEventHandler } from "webiny/api/website-builder/page"`
189
+ **Source:** `@webiny/api-website-builder/features/pages/UpdatePage/abstractions.ts`
190
+ **Description:** Hook into page lifecycle after a page is updated.
191
+
192
+ ---
193
+ **Name:** `PageBeforeCreateEventHandler`
194
+ **Import:** `import { PageBeforeCreateEventHandler } from "webiny/api/website-builder/page"`
195
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePage/abstractions.ts`
196
+ **Description:** Hook into page lifecycle before a page is created.
197
+
198
+ ---
199
+ **Name:** `PageBeforeCreateRevisionFromEventHandler`
200
+ **Import:** `import { PageBeforeCreateRevisionFromEventHandler } from "webiny/api/website-builder/page"`
201
+ **Source:** `@webiny/api-website-builder/features/pages/CreatePageRevisionFrom/abstractions.ts`
202
+ **Description:** Hook into page lifecycle before a revision is created from existing.
203
+
204
+ ---
205
+ **Name:** `PageBeforeDeleteEventHandler`
206
+ **Import:** `import { PageBeforeDeleteEventHandler } from "webiny/api/website-builder/page"`
207
+ **Source:** `@webiny/api-website-builder/features/pages/DeletePage/abstractions.ts`
208
+ **Description:** Hook into page lifecycle before a page is deleted.
209
+
210
+ ---
211
+ **Name:** `PageBeforeDuplicateEventHandler`
212
+ **Import:** `import { PageBeforeDuplicateEventHandler } from "webiny/api/website-builder/page"`
213
+ **Source:** `@webiny/api-website-builder/features/pages/DuplicatePage/abstractions.ts`
214
+ **Description:** Hook into page lifecycle before a page is duplicated.
215
+
216
+ ---
217
+ **Name:** `PageBeforeMoveEventHandler`
218
+ **Import:** `import { PageBeforeMoveEventHandler } from "webiny/api/website-builder/page"`
219
+ **Source:** `@webiny/api-website-builder/features/pages/MovePage/abstractions.ts`
220
+ **Description:** Hook into page lifecycle before a page is moved.
221
+
222
+ ---
223
+ **Name:** `PageBeforePublishEventHandler`
224
+ **Import:** `import { PageBeforePublishEventHandler } from "webiny/api/website-builder/page"`
225
+ **Source:** `@webiny/api-website-builder/features/pages/PublishPage/abstractions.ts`
226
+ **Description:** Hook into page lifecycle before a page is published.
227
+
228
+ ---
229
+ **Name:** `PageBeforeRestoreEventHandler`
230
+ **Import:** `import { PageBeforeRestoreEventHandler } from "webiny/api/website-builder/page"`
231
+ **Source:** `@webiny/api-website-builder/features/pages/RestorePage/abstractions.ts`
232
+
233
+ ---
234
+ **Name:** `PageBeforeTrashEventHandler`
235
+ **Import:** `import { PageBeforeTrashEventHandler } from "webiny/api/website-builder/page"`
236
+ **Source:** `@webiny/api-website-builder/features/pages/TrashPage/abstractions.ts`
237
+
238
+ ---
239
+ **Name:** `PageBeforeUnpublishEventHandler`
240
+ **Import:** `import { PageBeforeUnpublishEventHandler } from "webiny/api/website-builder/page"`
241
+ **Source:** `@webiny/api-website-builder/features/pages/UnpublishPage/abstractions.ts`
242
+ **Description:** Hook into page lifecycle before a page is unpublished.
243
+
244
+ ---
245
+ **Name:** `PageBeforeUpdateEventHandler`
246
+ **Import:** `import { PageBeforeUpdateEventHandler } from "webiny/api/website-builder/page"`
247
+ **Source:** `@webiny/api-website-builder/features/pages/UpdatePage/abstractions.ts`
248
+ **Description:** Hook into page lifecycle before a page is updated.
249
+
250
+ ---
251
+ **Name:** `PublishPageUseCase`
252
+ **Import:** `import { PublishPageUseCase } from "webiny/api/website-builder/page"`
253
+ **Source:** `@webiny/api-website-builder/features/pages/PublishPage/abstractions.ts`
254
+ **Description:** Publish a page.
255
+
256
+ ---
257
+ **Name:** `RedirectAfterCreateEventHandler`
258
+ **Import:** `import { RedirectAfterCreateEventHandler } from "webiny/api/website-builder/redirect"`
259
+ **Source:** `@webiny/api-website-builder/features/redirects/CreateRedirect/abstractions.ts`
260
+ **Description:** Hook into redirect lifecycle after a redirect is created.
261
+
262
+ ---
263
+ **Name:** `RedirectAfterDeleteEventHandler`
264
+ **Import:** `import { RedirectAfterDeleteEventHandler } from "webiny/api/website-builder/redirect"`
265
+ **Source:** `@webiny/api-website-builder/features/redirects/DeleteRedirect/abstractions.ts`
266
+ **Description:** Hook into redirect lifecycle after a redirect is deleted.
267
+
268
+ ---
269
+ **Name:** `RedirectAfterMoveEventHandler`
270
+ **Import:** `import { RedirectAfterMoveEventHandler } from "webiny/api/website-builder/redirect"`
271
+ **Source:** `@webiny/api-website-builder/features/redirects/MoveRedirect/abstractions.ts`
272
+ **Description:** Hook into redirect lifecycle after a redirect is moved.
273
+
274
+ ---
275
+ **Name:** `RedirectAfterUpdateEventHandler`
276
+ **Import:** `import { RedirectAfterUpdateEventHandler } from "webiny/api/website-builder/redirect"`
277
+ **Source:** `@webiny/api-website-builder/features/redirects/UpdateRedirect/abstractions.ts`
278
+ **Description:** Hook into redirect lifecycle after a redirect is updated.
279
+
280
+ ---
281
+ **Name:** `RedirectBeforeCreateEventHandler`
282
+ **Import:** `import { RedirectBeforeCreateEventHandler } from "webiny/api/website-builder/redirect"`
283
+ **Source:** `@webiny/api-website-builder/features/redirects/CreateRedirect/abstractions.ts`
284
+ **Description:** Hook into redirect lifecycle before a redirect is created.
285
+
286
+ ---
287
+ **Name:** `RedirectBeforeDeleteEventHandler`
288
+ **Import:** `import { RedirectBeforeDeleteEventHandler } from "webiny/api/website-builder/redirect"`
289
+ **Source:** `@webiny/api-website-builder/features/redirects/DeleteRedirect/abstractions.ts`
290
+ **Description:** Hook into redirect lifecycle before a redirect is deleted.
291
+
292
+ ---
293
+ **Name:** `RedirectBeforeMoveEventHandler`
294
+ **Import:** `import { RedirectBeforeMoveEventHandler } from "webiny/api/website-builder/redirect"`
295
+ **Source:** `@webiny/api-website-builder/features/redirects/MoveRedirect/abstractions.ts`
296
+ **Description:** Hook into redirect lifecycle before a redirect is moved.
297
+
298
+ ---
299
+ **Name:** `RedirectBeforeUpdateEventHandler`
300
+ **Import:** `import { RedirectBeforeUpdateEventHandler } from "webiny/api/website-builder/redirect"`
301
+ **Source:** `@webiny/api-website-builder/features/redirects/UpdateRedirect/abstractions.ts`
302
+ **Description:** Hook into redirect lifecycle before a redirect is updated.
303
+
304
+ ---
305
+ **Name:** `RestorePageUseCase`
306
+ **Import:** `import { RestorePageUseCase } from "webiny/api/website-builder/page"`
307
+ **Source:** `@webiny/api-website-builder/features/pages/RestorePage/abstractions.ts`
308
+
309
+ ---
310
+ **Name:** `SchedulePublishPageUseCase`
311
+ **Import:** `import { SchedulePublishPageUseCase } from "webiny/api/website-builder/scheduler"`
312
+ **Source:** `@webiny/api-website-builder-scheduler/features/SchedulePublishPageUseCase/abstractions.ts`
313
+ **Description:** Schedule a page for future publishing.
314
+
315
+ ---
316
+ **Name:** `SchedulePublishRedirectUseCase`
317
+ **Import:** `import { SchedulePublishRedirectUseCase } from "webiny/api/website-builder/scheduler"`
318
+ **Source:** `@webiny/api-website-builder-scheduler/features/SchedulePublishRedirectUseCase/abstractions.ts`
319
+ **Description:** Schedule a redirect for future publishing.
320
+
321
+ ---
322
+ **Name:** `ScheduleUnpublishPageUseCase`
323
+ **Import:** `import { ScheduleUnpublishPageUseCase } from "webiny/api/website-builder/scheduler"`
324
+ **Source:** `@webiny/api-website-builder-scheduler/features/ScheduleUnpublishPageUseCase/abstractions.ts`
325
+ **Description:** Schedule a page for future unpublishing.
326
+
327
+ ---
328
+ **Name:** `ScheduleUnpublishRedirectUseCase`
329
+ **Import:** `import { ScheduleUnpublishRedirectUseCase } from "webiny/api/website-builder/scheduler"`
330
+ **Source:** `@webiny/api-website-builder-scheduler/features/ScheduleUnpublishRedirectUseCase/abstractions.ts`
331
+ **Description:** Schedule a redirect for future unpublishing.
332
+
333
+ ---
334
+ **Name:** `TrashPageUseCase`
335
+ **Import:** `import { TrashPageUseCase } from "webiny/api/website-builder/page"`
336
+ **Source:** `@webiny/api-website-builder/features/pages/TrashPage/abstractions.ts`
337
+
338
+ ---
339
+ **Name:** `UnpublishPageUseCase`
340
+ **Import:** `import { UnpublishPageUseCase } from "webiny/api/website-builder/page"`
341
+ **Source:** `@webiny/api-website-builder/features/pages/UnpublishPage/abstractions.ts`
342
+ **Description:** Unpublish a page.
343
+
344
+ ---
345
+ **Name:** `UpdatePageUseCase`
346
+ **Import:** `import { UpdatePageUseCase } from "webiny/api/website-builder/page"`
347
+ **Source:** `@webiny/api-website-builder/features/pages/UpdatePage/abstractions.ts`
348
+ **Description:** Update a page.
349
+
350
+ ---
351
+ **Name:** `UpdateRedirectUseCase`
352
+ **Import:** `import { UpdateRedirectUseCase } from "webiny/api/website-builder/redirect"`
353
+ **Source:** `@webiny/api-website-builder/features/redirects/UpdateRedirect/abstractions.ts`
354
+ **Description:** Update a URL redirect.
355
+
356
+ ---
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: webiny-cli-catalog
3
+ context: webiny-api
4
+ description: >
5
+ cli — 2 abstractions.
6
+ ---
7
+
8
+ # cli
9
+
10
+ ## How to Use
11
+
12
+ 1. Find the abstraction you need below
13
+ 2. 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:** `LoggerService`
20
+ **Import:** `import { LoggerService } from "webiny/cli"`
21
+ **Source:** `@webiny/cli-core/abstractions/services/LoggerService.ts`
22
+
23
+ ---
24
+ **Name:** `UiService`
25
+ **Import:** `import { UiService } from "webiny/cli"`
26
+ **Source:** `@webiny/cli-core/abstractions/services/UiService.ts`
27
+
28
+ ---
@@ -0,0 +1,24 @@
1
+ ---
2
+ name: webiny-cli-command-catalog
3
+ context: webiny-api
4
+ description: >
5
+ cli/command — 1 abstractions.
6
+ ---
7
+
8
+ # cli/command
9
+
10
+ ## How to Use
11
+
12
+ 1. Find the abstraction you need below
13
+ 2. 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:** `CliCommandFactory`
20
+ **Import:** `import { CliCommandFactory } from "webiny/cli/command"`
21
+ **Source:** `@webiny/cli-core/abstractions/features/CliCommand.ts`
22
+ **Description:** Implement a custom CLI command for Webiny CLI.
23
+
24
+ ---
@@ -0,0 +1,43 @@
1
+ ---
2
+ name: webiny-extensions-catalog
3
+ context: webiny-api
4
+ description: >
5
+ extensions — 5 abstractions.
6
+ ---
7
+
8
+ # extensions
9
+
10
+ ## How to Use
11
+
12
+ 1. Find the abstraction you need below
13
+ 2. 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:** `Admin`
20
+ **Import:** `import { Admin } from "webiny/extensions"`
21
+ **Source:** `@webiny/project-aws/admin.ts`
22
+
23
+ ---
24
+ **Name:** `Api`
25
+ **Import:** `import { Api } from "webiny/extensions"`
26
+ **Source:** `@webiny/project-aws/api.ts`
27
+
28
+ ---
29
+ **Name:** `Cli`
30
+ **Import:** `import { Cli } from "webiny/extensions"`
31
+ **Source:** `@webiny/project-aws/cli.ts`
32
+
33
+ ---
34
+ **Name:** `Infra`
35
+ **Import:** `import { Infra } from "webiny/extensions"`
36
+ **Source:** `@webiny/project-aws/infra.ts`
37
+
38
+ ---
39
+ **Name:** `Project`
40
+ **Import:** `import { Project } from "webiny/extensions"`
41
+ **Source:** `@webiny/project-aws/project.ts`
42
+
43
+ ---
@@ -0,0 +1,190 @@
1
+ ---
2
+ name: webiny-infra-catalog
3
+ context: webiny-api
4
+ description: >
5
+ Infrastructure — 33 abstractions.
6
+ Infrastructure extensions.
7
+ ---
8
+
9
+ # Infrastructure
10
+
11
+ Infrastructure extensions.
12
+
13
+ ## How to Use
14
+
15
+ 1. Find the abstraction you need below
16
+ 2. Read the source file to get the exact interface and types
17
+ 3. Import: `import { Name } from "<importPath>";`
18
+
19
+ ## Abstractions
20
+
21
+ ---
22
+ **Name:** `AdminAfterBuild`
23
+ **Import:** `import { AdminAfterBuild } from "webiny/infra/admin"`
24
+ **Source:** `@webiny/project/abstractions/features/hooks/AdminAfterBuild.ts`
25
+
26
+ ---
27
+ **Name:** `AdminAfterDeploy`
28
+ **Import:** `import { AdminAfterDeploy } from "webiny/infra/admin"`
29
+ **Source:** `@webiny/project/abstractions/features/hooks/AdminAfterDeploy.ts`
30
+
31
+ ---
32
+ **Name:** `AdminBeforeBuild`
33
+ **Import:** `import { AdminBeforeBuild } from "webiny/infra/admin"`
34
+ **Source:** `@webiny/project/abstractions/features/hooks/AdminBeforeBuild.ts`
35
+
36
+ ---
37
+ **Name:** `AdminBeforeDeploy`
38
+ **Import:** `import { AdminBeforeDeploy } from "webiny/infra/admin"`
39
+ **Source:** `@webiny/project/abstractions/features/hooks/AdminBeforeDeploy.ts`
40
+
41
+ ---
42
+ **Name:** `AdminBeforeWatch`
43
+ **Import:** `import { AdminBeforeWatch } from "webiny/infra/admin"`
44
+ **Source:** `@webiny/project/abstractions/features/hooks/AdminBeforeWatch.ts`
45
+
46
+ ---
47
+ **Name:** `AdminPulumi`
48
+ **Import:** `import { AdminPulumi } from "webiny/infra/admin"`
49
+ **Source:** `@webiny/project/abstractions/features/pulumi/AdminPulumi.ts`
50
+ **Description:** Implement this abstraction to add custom Pulumi code to Admin.
51
+
52
+ ---
53
+ **Name:** `AdminStackOutputService`
54
+ **Import:** `import { AdminStackOutputService } from "webiny/infra/admin"`
55
+ **Source:** `@webiny/project-aws/abstractions/services/AdminStackOutputService.ts`
56
+
57
+ ---
58
+ **Name:** `AdminStackOutputService`
59
+ **Import:** `import { AdminStackOutputService } from "webiny/infra"`
60
+ **Source:** `@webiny/project-aws/abstractions/index.ts`
61
+
62
+ ---
63
+ **Name:** `AfterBuild`
64
+ **Import:** `import { AfterBuild } from "webiny/infra"`
65
+ **Source:** `@webiny/project/abstractions/features/hooks/AfterBuild.ts`
66
+
67
+ ---
68
+ **Name:** `AfterDeploy`
69
+ **Import:** `import { AfterDeploy } from "webiny/infra"`
70
+ **Source:** `@webiny/project/abstractions/features/hooks/AfterDeploy.ts`
71
+
72
+ ---
73
+ **Name:** `ApiAfterBuild`
74
+ **Import:** `import { ApiAfterBuild } from "webiny/infra/api"`
75
+ **Source:** `@webiny/project/abstractions/features/hooks/ApiAfterBuild.ts`
76
+
77
+ ---
78
+ **Name:** `ApiAfterDeploy`
79
+ **Import:** `import { ApiAfterDeploy } from "webiny/infra/api"`
80
+ **Source:** `@webiny/project/abstractions/features/hooks/ApiAfterDeploy.ts`
81
+
82
+ ---
83
+ **Name:** `ApiBeforeBuild`
84
+ **Import:** `import { ApiBeforeBuild } from "webiny/infra/api"`
85
+ **Source:** `@webiny/project/abstractions/features/hooks/ApiBeforeBuild.ts`
86
+
87
+ ---
88
+ **Name:** `ApiBeforeDeploy`
89
+ **Import:** `import { ApiBeforeDeploy } from "webiny/infra/api"`
90
+ **Source:** `@webiny/project/abstractions/features/hooks/ApiBeforeDeploy.ts`
91
+
92
+ ---
93
+ **Name:** `ApiBeforeWatch`
94
+ **Import:** `import { ApiBeforeWatch } from "webiny/infra/api"`
95
+ **Source:** `@webiny/project/abstractions/features/hooks/ApiBeforeWatch.ts`
96
+
97
+ ---
98
+ **Name:** `ApiGqlClient`
99
+ **Import:** `import { ApiGqlClient } from "webiny/infra"`
100
+ **Source:** `@webiny/project-aws/abstractions/index.ts`
101
+
102
+ ---
103
+ **Name:** `ApiPulumi`
104
+ **Import:** `import { ApiPulumi } from "webiny/infra/api"`
105
+ **Source:** `@webiny/project/abstractions/features/pulumi/ApiPulumi.ts`
106
+ **Description:** Implement this abstraction to add custom Pulumi code to API.
107
+
108
+ ---
109
+ **Name:** `ApiStackOutputService`
110
+ **Import:** `import { ApiStackOutputService } from "webiny/infra/api"`
111
+ **Source:** `@webiny/project-aws/abstractions/services/ApiStackOutputService.ts`
112
+
113
+ ---
114
+ **Name:** `ApiStackOutputService`
115
+ **Import:** `import { ApiStackOutputService } from "webiny/infra"`
116
+ **Source:** `@webiny/project-aws/abstractions/index.ts`
117
+
118
+ ---
119
+ **Name:** `BeforeBuild`
120
+ **Import:** `import { BeforeBuild } from "webiny/infra"`
121
+ **Source:** `@webiny/project/abstractions/features/hooks/BeforeBuild.ts`
122
+
123
+ ---
124
+ **Name:** `BeforeDeploy`
125
+ **Import:** `import { BeforeDeploy } from "webiny/infra"`
126
+ **Source:** `@webiny/project/abstractions/features/hooks/BeforeDeploy.ts`
127
+
128
+ ---
129
+ **Name:** `BeforeWatch`
130
+ **Import:** `import { BeforeWatch } from "webiny/infra"`
131
+ **Source:** `@webiny/project/abstractions/features/hooks/BeforeWatch.ts`
132
+
133
+ ---
134
+ **Name:** `CoreAfterBuild`
135
+ **Import:** `import { CoreAfterBuild } from "webiny/infra/core"`
136
+ **Source:** `@webiny/project/abstractions/features/hooks/CoreAfterBuild.ts`
137
+
138
+ ---
139
+ **Name:** `CoreAfterDeploy`
140
+ **Import:** `import { CoreAfterDeploy } from "webiny/infra/core"`
141
+ **Source:** `@webiny/project/abstractions/features/hooks/CoreAfterDeploy.ts`
142
+
143
+ ---
144
+ **Name:** `CoreBeforeBuild`
145
+ **Import:** `import { CoreBeforeBuild } from "webiny/infra/core"`
146
+ **Source:** `@webiny/project/abstractions/features/hooks/CoreBeforeBuild.ts`
147
+
148
+ ---
149
+ **Name:** `CoreBeforeDeploy`
150
+ **Import:** `import { CoreBeforeDeploy } from "webiny/infra/core"`
151
+ **Source:** `@webiny/project/abstractions/features/hooks/CoreBeforeDeploy.ts`
152
+
153
+ ---
154
+ **Name:** `CorePulumi`
155
+ **Import:** `import { CorePulumi } from "webiny/infra/core"`
156
+ **Source:** `@webiny/project/abstractions/features/pulumi/CorePulumi.ts`
157
+ **Description:** Implement this abstraction to add custom Pulumi code to Core.
158
+
159
+ ---
160
+ **Name:** `CoreStackOutputService`
161
+ **Import:** `import { CoreStackOutputService } from "webiny/infra/core"`
162
+ **Source:** `@webiny/project-aws/abstractions/services/CoreStackOutputService.ts`
163
+
164
+ ---
165
+ **Name:** `CoreStackOutputService`
166
+ **Import:** `import { CoreStackOutputService } from "webiny/infra"`
167
+ **Source:** `@webiny/project-aws/abstractions/index.ts`
168
+
169
+ ---
170
+ **Name:** `EnvVar`
171
+ **Import:** `import { EnvVar } from "webiny/infra"`
172
+ **Source:** `@webiny/project/extensions/EnvVar.ts`
173
+ **Description:** Define an environment variable in the project context.
174
+
175
+ ---
176
+ **Name:** `InvokeLambdaFunction`
177
+ **Import:** `import { InvokeLambdaFunction } from "webiny/infra"`
178
+ **Source:** `@webiny/project-aws/abstractions/index.ts`
179
+
180
+ ---
181
+ **Name:** `LoggerService`
182
+ **Import:** `import { LoggerService } from "webiny/infra"`
183
+ **Source:** `@webiny/project/abstractions/services/LoggerService.ts`
184
+
185
+ ---
186
+ **Name:** `UiService`
187
+ **Import:** `import { UiService } from "webiny/infra"`
188
+ **Source:** `@webiny/project/abstractions/services/UiService.ts`
189
+
190
+ ---
@@ -206,5 +206,6 @@ Deploy: yarn webiny deploy core (infrastructure changes)
206
206
 
207
207
  ## Related Skills
208
208
 
209
- - `project-structure` -- Full `webiny.config.tsx` anatomy
210
- - `local-development` -- Deployment commands and environment management
209
+ - `webiny-project-structure` -- Full `webiny.config.tsx` anatomy
210
+ - `webiny-local-development` -- Deployment commands and environment management
211
+ - `webiny-full-stack-architect` -- Full-stack extensions that may require custom infrastructure