@orthacms/webhooks-admin 0.5.0

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 (93) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +7 -0
  3. package/dist/index.d.ts +12 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +9 -0
  6. package/dist/lib/application/useContentTypeOptions/index.d.ts +18 -0
  7. package/dist/lib/application/useContentTypeOptions/index.d.ts.map +1 -0
  8. package/dist/lib/application/useContentTypeOptions/index.js +40 -0
  9. package/dist/lib/application/useWebhookDeliveries/index.d.ts +19 -0
  10. package/dist/lib/application/useWebhookDeliveries/index.d.ts.map +1 -0
  11. package/dist/lib/application/useWebhookDeliveries/index.js +48 -0
  12. package/dist/lib/application/useWebhookEndpoints/index.d.ts +12 -0
  13. package/dist/lib/application/useWebhookEndpoints/index.d.ts.map +1 -0
  14. package/dist/lib/application/useWebhookEndpoints/index.js +26 -0
  15. package/dist/lib/application/useWebhookEvents/index.d.ts +9 -0
  16. package/dist/lib/application/useWebhookEvents/index.d.ts.map +1 -0
  17. package/dist/lib/application/useWebhookEvents/index.js +20 -0
  18. package/dist/lib/application/useWebhookMutations/index.d.ts +25 -0
  19. package/dist/lib/application/useWebhookMutations/index.d.ts.map +1 -0
  20. package/dist/lib/application/useWebhookMutations/index.js +79 -0
  21. package/dist/lib/application/useWorkspaceOptions/index.d.ts +9 -0
  22. package/dist/lib/application/useWorkspaceOptions/index.d.ts.map +1 -0
  23. package/dist/lib/application/useWorkspaceOptions/index.js +19 -0
  24. package/dist/lib/domain/contentTypeChoices/index.d.ts +65 -0
  25. package/dist/lib/domain/contentTypeChoices/index.d.ts.map +1 -0
  26. package/dist/lib/domain/contentTypeChoices/index.js +70 -0
  27. package/dist/lib/domain/headerRules/index.d.ts +37 -0
  28. package/dist/lib/domain/headerRules/index.d.ts.map +1 -0
  29. package/dist/lib/domain/headerRules/index.js +66 -0
  30. package/dist/lib/domain/types/contentTypeOption/index.d.ts +14 -0
  31. package/dist/lib/domain/types/contentTypeOption/index.d.ts.map +1 -0
  32. package/dist/lib/domain/types/contentTypeOption/index.js +1 -0
  33. package/dist/lib/domain/types/webhook/index.d.ts +102 -0
  34. package/dist/lib/domain/types/webhook/index.d.ts.map +1 -0
  35. package/dist/lib/domain/types/webhook/index.js +18 -0
  36. package/dist/lib/domain/types/workspaceOption/index.d.ts +16 -0
  37. package/dist/lib/domain/types/workspaceOption/index.d.ts.map +1 -0
  38. package/dist/lib/domain/types/workspaceOption/index.js +1 -0
  39. package/dist/lib/infrastructure/httpWebhookGateway/index.d.ts +11 -0
  40. package/dist/lib/infrastructure/httpWebhookGateway/index.d.ts.map +1 -0
  41. package/dist/lib/infrastructure/httpWebhookGateway/index.js +138 -0
  42. package/dist/lib/infrastructure/serverMessageOf/index.d.ts +16 -0
  43. package/dist/lib/infrastructure/serverMessageOf/index.d.ts.map +1 -0
  44. package/dist/lib/infrastructure/serverMessageOf/index.js +24 -0
  45. package/dist/lib/infrastructure/webhookGateway/index.d.ts +62 -0
  46. package/dist/lib/infrastructure/webhookGateway/index.d.ts.map +1 -0
  47. package/dist/lib/infrastructure/webhookGateway/index.js +1 -0
  48. package/dist/lib/infrastructure/webhookMapper/index.d.ts +104 -0
  49. package/dist/lib/infrastructure/webhookMapper/index.d.ts.map +1 -0
  50. package/dist/lib/infrastructure/webhookMapper/index.js +49 -0
  51. package/dist/lib/infrastructure/webhooksKeys/index.d.ts +35 -0
  52. package/dist/lib/infrastructure/webhooksKeys/index.d.ts.map +1 -0
  53. package/dist/lib/infrastructure/webhooksKeys/index.js +23 -0
  54. package/dist/lib/presentation/components/DeliveryStatusBadge/index.d.ts +6 -0
  55. package/dist/lib/presentation/components/DeliveryStatusBadge/index.d.ts.map +1 -0
  56. package/dist/lib/presentation/components/DeliveryStatusBadge/index.js +30 -0
  57. package/dist/lib/presentation/components/RevealWebhookSecretDialog/index.d.ts +25 -0
  58. package/dist/lib/presentation/components/RevealWebhookSecretDialog/index.d.ts.map +1 -0
  59. package/dist/lib/presentation/components/RevealWebhookSecretDialog/index.js +107 -0
  60. package/dist/lib/presentation/components/WebhookDeliveriesPanel/DeliveryDetailSheet/index.d.ts +19 -0
  61. package/dist/lib/presentation/components/WebhookDeliveriesPanel/DeliveryDetailSheet/index.d.ts.map +1 -0
  62. package/dist/lib/presentation/components/WebhookDeliveriesPanel/DeliveryDetailSheet/index.js +72 -0
  63. package/dist/lib/presentation/components/WebhookDeliveriesPanel/index.d.ts +12 -0
  64. package/dist/lib/presentation/components/WebhookDeliveriesPanel/index.d.ts.map +1 -0
  65. package/dist/lib/presentation/components/WebhookDeliveriesPanel/index.js +132 -0
  66. package/dist/lib/presentation/components/WebhookForm/index.d.ts +46 -0
  67. package/dist/lib/presentation/components/WebhookForm/index.d.ts.map +1 -0
  68. package/dist/lib/presentation/components/WebhookForm/index.js +412 -0
  69. package/dist/lib/presentation/components/WebhooksEmpty/index.d.ts +5 -0
  70. package/dist/lib/presentation/components/WebhooksEmpty/index.d.ts.map +1 -0
  71. package/dist/lib/presentation/components/WebhooksEmpty/index.js +23 -0
  72. package/dist/lib/presentation/components/WebhooksNoAccess/index.d.ts +3 -0
  73. package/dist/lib/presentation/components/WebhooksNoAccess/index.d.ts.map +1 -0
  74. package/dist/lib/presentation/components/WebhooksNoAccess/index.js +18 -0
  75. package/dist/lib/presentation/components/WebhooksSkeleton/index.d.ts +20 -0
  76. package/dist/lib/presentation/components/WebhooksSkeleton/index.d.ts.map +1 -0
  77. package/dist/lib/presentation/components/WebhooksSkeleton/index.js +45 -0
  78. package/dist/lib/presentation/components/WebhooksTable/index.d.ts +12 -0
  79. package/dist/lib/presentation/components/WebhooksTable/index.d.ts.map +1 -0
  80. package/dist/lib/presentation/components/WebhooksTable/index.js +79 -0
  81. package/dist/lib/presentation/pages/WebhookDetailPage/index.d.ts +10 -0
  82. package/dist/lib/presentation/pages/WebhookDetailPage/index.d.ts.map +1 -0
  83. package/dist/lib/presentation/pages/WebhookDetailPage/index.js +191 -0
  84. package/dist/lib/presentation/pages/WebhookEditorPage/index.d.ts +28 -0
  85. package/dist/lib/presentation/pages/WebhookEditorPage/index.d.ts.map +1 -0
  86. package/dist/lib/presentation/pages/WebhookEditorPage/index.js +149 -0
  87. package/dist/lib/presentation/pages/WebhooksPage/index.d.ts +11 -0
  88. package/dist/lib/presentation/pages/WebhooksPage/index.d.ts.map +1 -0
  89. package/dist/lib/presentation/pages/WebhooksPage/index.js +65 -0
  90. package/dist/lib/utils/webhooksPlugin/index.d.ts +35 -0
  91. package/dist/lib/utils/webhooksPlugin/index.d.ts.map +1 -0
  92. package/dist/lib/utils/webhooksPlugin/index.js +88 -0
  93. package/package.json +46 -0
@@ -0,0 +1,88 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Suspense, lazy } from 'react';
3
+ import { SIDEBAR_NAV_SLOT } from '@orthacms/shell-admin';
4
+ import { Spinner } from '@orthacms/design-system';
5
+ import { Webhook } from 'lucide-react';
6
+ import { WebhooksPageSkeleton } from '../../presentation/components/WebhooksSkeleton';
7
+ // Lazy-loaded so each page is code-split into its own chunk, fetched only when
8
+ // someone first navigates to it.
9
+ const WebhooksPage = lazy(() => import('../../presentation/pages/WebhooksPage').then((module) => ({
10
+ default: module.WebhooksPage
11
+ })));
12
+ const WebhookEditorPage = lazy(() => import('../../presentation/pages/WebhookEditorPage').then((module) => ({
13
+ default: module.WebhookEditorPage
14
+ })));
15
+ const WebhookDetailPage = lazy(() => import('../../presentation/pages/WebhookDetailPage').then((module) => ({
16
+ default: module.WebhookDetailPage
17
+ })));
18
+ /**
19
+ * Creates the admin-side webhooks plugin.
20
+ *
21
+ * It owns the global webhook-management feature — `/webhooks`,
22
+ * `/webhooks/new`, `/webhooks/:id` and `/webhooks/:id/edit` — rendered inside
23
+ * the shell's authenticated layout, plus an
24
+ * entry in the **global** sidebar's `directory` group alongside Workspaces,
25
+ * Members and API tokens — reachable without selecting a workspace, because an
26
+ * endpoint is not scoped to one.
27
+ *
28
+ * The nav row and both pages gate on `webhooks:read`, which is
29
+ * administrator-only: the rows hold a signing secret and reach across every
30
+ * workspace they name.
31
+ *
32
+ * @example
33
+ * ```typescript
34
+ * createAdmin({
35
+ * plugins: [
36
+ * IdentityPlugin(),
37
+ * ShellPlugin(),
38
+ * WorkspacesPlugin(),
39
+ * ApiTokensPlugin(),
40
+ * WebhooksPlugin(),
41
+ * ],
42
+ * });
43
+ * ```
44
+ */
45
+ export function WebhooksPlugin() {
46
+ return {
47
+ name: 'webhooks',
48
+ routes: [
49
+ {
50
+ path: '/webhooks',
51
+ element: (_jsx(Suspense, { fallback: _jsx(WebhooksPageSkeleton, {}), children: _jsx(WebhooksPage, {}) }))
52
+ },
53
+ {
54
+ // Before the `:id` route for readability only — the router
55
+ // ranks a static segment above a dynamic one either way.
56
+ path: '/webhooks/new',
57
+ element: (_jsx(Suspense, { fallback: _jsx(Spinner, {}), children: _jsx(WebhookEditorPage, { mode: "create" }) }))
58
+ },
59
+ {
60
+ path: '/webhooks/:id',
61
+ element: (_jsx(Suspense, { fallback: _jsx(Spinner, {}), children: _jsx(WebhookDetailPage, {}) }))
62
+ },
63
+ {
64
+ path: '/webhooks/:id/edit',
65
+ element: (_jsx(Suspense, { fallback: _jsx(Spinner, {}), children: _jsx(WebhookEditorPage, { mode: "edit" }) }))
66
+ }
67
+ ],
68
+ slots: [
69
+ {
70
+ slot: SIDEBAR_NAV_SLOT,
71
+ items: [
72
+ {
73
+ labelId: 'webhooks.nav.label',
74
+ defaultLabel: 'Webhooks',
75
+ to: '/webhooks',
76
+ group: 'directory',
77
+ // After API tokens (30): both are integration surfaces,
78
+ // and a webhook is the one you reach for second.
79
+ order: 40,
80
+ icon: Webhook,
81
+ iconColor: 'text-nav-purple',
82
+ permission: 'webhooks:read'
83
+ }
84
+ ]
85
+ }
86
+ ]
87
+ };
88
+ }
package/package.json ADDED
@@ -0,0 +1,46 @@
1
+ {
2
+ "name": "@orthacms/webhooks-admin",
3
+ "version": "0.5.0",
4
+ "description": "@orthacms/webhooks-admin — part of Ortha CMS.",
5
+ "license": "MIT",
6
+ "homepage": "https://github.com/ortha-source/ortha-cms/tree/main/packages/webhooks/admin",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/ortha-source/ortha-cms.git",
10
+ "directory": "packages/webhooks/admin"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/ortha-source/ortha-cms/issues"
14
+ },
15
+ "main": "./dist/index.js",
16
+ "types": "./dist/index.d.ts",
17
+ "exports": {
18
+ ".": {
19
+ "types": "./dist/index.d.ts",
20
+ "default": "./dist/index.js"
21
+ },
22
+ "./package.json": "./package.json"
23
+ },
24
+ "files": [
25
+ "dist"
26
+ ],
27
+ "dependencies": {
28
+ "@orthacms/bootstrap-admin": "^0.5.0",
29
+ "@orthacms/design-system": "^0.5.0",
30
+ "@orthacms/identity-admin": "^0.5.0",
31
+ "@orthacms/shell-admin": "^0.5.0",
32
+ "@orthacms/utils-admin": "^0.5.0",
33
+ "@tanstack/react-query": "^5.0.0",
34
+ "lucide-react": "^1.17.0",
35
+ "react-intl": "^7.0.0",
36
+ "tslib": "^2.3.0"
37
+ },
38
+ "peerDependencies": {
39
+ "react": "^19.0.0",
40
+ "react-dom": "^19.0.0",
41
+ "react-router-dom": "^6.0.0"
42
+ },
43
+ "publishConfig": {
44
+ "access": "public"
45
+ }
46
+ }