@burdenoff/microfe-admin 2026.511.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.
- package/README.md +74 -0
- package/dist/admin/AdminRoot.d.ts +31 -0
- package/dist/admin/AdminRoot.d.ts.map +1 -0
- package/dist/admin/AdminRoot.js +175 -0
- package/dist/admin/AdminRoot.js.map +1 -0
- package/dist/admin/AdminRoutes.d.ts +29 -0
- package/dist/admin/AdminRoutes.d.ts.map +1 -0
- package/dist/admin/AdminRoutes.js +143 -0
- package/dist/admin/AdminRoutes.js.map +1 -0
- package/dist/admin/components/AccessDenied.d.ts +8 -0
- package/dist/admin/components/AccessDenied.d.ts.map +1 -0
- package/dist/admin/components/AccessDenied.js +28 -0
- package/dist/admin/components/AccessDenied.js.map +1 -0
- package/dist/admin/components/ActivityFeed.d.ts +20 -0
- package/dist/admin/components/ActivityFeed.d.ts.map +1 -0
- package/dist/admin/components/ActivityFeed.js +91 -0
- package/dist/admin/components/ActivityFeed.js.map +1 -0
- package/dist/admin/components/Charts.d.ts +33 -0
- package/dist/admin/components/Charts.d.ts.map +1 -0
- package/dist/admin/components/Charts.js +37 -0
- package/dist/admin/components/Charts.js.map +1 -0
- package/dist/admin/components/ConfirmDialog.d.ts +45 -0
- package/dist/admin/components/ConfirmDialog.d.ts.map +1 -0
- package/dist/admin/components/ConfirmDialog.js +4 -0
- package/dist/admin/components/DataTable.d.ts +64 -0
- package/dist/admin/components/DataTable.d.ts.map +1 -0
- package/dist/admin/components/DataTable.js +127 -0
- package/dist/admin/components/DataTable.js.map +1 -0
- package/dist/admin/components/FormSheet.d.ts +79 -0
- package/dist/admin/components/FormSheet.d.ts.map +1 -0
- package/dist/admin/components/FormSheet.js +111 -0
- package/dist/admin/components/FormSheet.js.map +1 -0
- package/dist/admin/components/MetricCard.d.ts +40 -0
- package/dist/admin/components/MetricCard.d.ts.map +1 -0
- package/dist/admin/components/MetricCard.js +57 -0
- package/dist/admin/components/MetricCard.js.map +1 -0
- package/dist/admin/components/PageLayout.d.ts +34 -0
- package/dist/admin/components/PageLayout.d.ts.map +1 -0
- package/dist/admin/components/PageLayout.js +31 -0
- package/dist/admin/components/PageLayout.js.map +1 -0
- package/dist/admin/components/PermissionGuard.d.ts +12 -0
- package/dist/admin/components/PermissionGuard.d.ts.map +1 -0
- package/dist/admin/components/PermissionGuard.js +18 -0
- package/dist/admin/components/PermissionGuard.js.map +1 -0
- package/dist/admin/components/RowActions.d.ts +41 -0
- package/dist/admin/components/RowActions.d.ts.map +1 -0
- package/dist/admin/components/RowActions.js +93 -0
- package/dist/admin/components/RowActions.js.map +1 -0
- package/dist/admin/components/StatusBadge.d.ts +35 -0
- package/dist/admin/components/StatusBadge.d.ts.map +1 -0
- package/dist/admin/components/StatusBadge.js +41 -0
- package/dist/admin/components/StatusBadge.js.map +1 -0
- package/dist/admin/components/Toast.d.ts +26 -0
- package/dist/admin/components/Toast.d.ts.map +1 -0
- package/dist/admin/components/Toast.js +133 -0
- package/dist/admin/components/Toast.js.map +1 -0
- package/dist/admin/components/forms/SubscriptionForm.d.ts +57 -0
- package/dist/admin/components/forms/SubscriptionForm.d.ts.map +1 -0
- package/dist/admin/components/forms/SubscriptionForm.js +299 -0
- package/dist/admin/components/forms/SubscriptionForm.js.map +1 -0
- package/dist/admin/components/forms/TenantForm.d.ts +68 -0
- package/dist/admin/components/forms/TenantForm.d.ts.map +1 -0
- package/dist/admin/components/forms/TenantForm.js +346 -0
- package/dist/admin/components/forms/TenantForm.js.map +1 -0
- package/dist/admin/components/forms/TicketForm.d.ts +67 -0
- package/dist/admin/components/forms/TicketForm.d.ts.map +1 -0
- package/dist/admin/components/forms/TicketForm.js +55 -0
- package/dist/admin/components/forms/TicketForm.js.map +1 -0
- package/dist/admin/components/forms/UserForm.d.ts +57 -0
- package/dist/admin/components/forms/UserForm.d.ts.map +1 -0
- package/dist/admin/components/forms/UserForm.js +253 -0
- package/dist/admin/components/forms/UserForm.js.map +1 -0
- package/dist/admin/components/forms/index.d.ts +5 -0
- package/dist/admin/components/forms/index.d.ts.map +1 -0
- package/dist/admin/components/forms/index.js +4 -0
- package/dist/admin/components/index.d.ts +15 -0
- package/dist/admin/components/index.d.ts.map +1 -0
- package/dist/admin/components/index.js +17 -0
- package/dist/admin/components/ui.d.ts +52 -0
- package/dist/admin/components/ui.d.ts.map +1 -0
- package/dist/admin/components/ui.js +140 -0
- package/dist/admin/components/ui.js.map +1 -0
- package/dist/admin/constants/index.d.ts +75 -0
- package/dist/admin/constants/index.d.ts.map +1 -0
- package/dist/admin/constants/index.js +90 -0
- package/dist/admin/constants/index.js.map +1 -0
- package/dist/admin/constants/permissions.d.ts +27 -0
- package/dist/admin/constants/permissions.d.ts.map +1 -0
- package/dist/admin/constants/permissions.js +23 -0
- package/dist/admin/constants/permissions.js.map +1 -0
- package/dist/admin/hooks/useAdminPermissions.d.ts +30 -0
- package/dist/admin/hooks/useAdminPermissions.d.ts.map +1 -0
- package/dist/admin/hooks/useAdminPermissions.js +56 -0
- package/dist/admin/hooks/useAdminPermissions.js.map +1 -0
- package/dist/admin/index.d.ts +31 -0
- package/dist/admin/index.d.ts.map +1 -0
- package/dist/admin/index.js +9 -0
- package/dist/admin/pages/AuditLogsPage.d.ts +5 -0
- package/dist/admin/pages/AuditLogsPage.d.ts.map +1 -0
- package/dist/admin/pages/AuditLogsPage.js +209 -0
- package/dist/admin/pages/AuditLogsPage.js.map +1 -0
- package/dist/admin/pages/BillingPage.d.ts +2 -0
- package/dist/admin/pages/BillingPage.d.ts.map +1 -0
- package/dist/admin/pages/BillingPage.js +164 -0
- package/dist/admin/pages/BillingPage.js.map +1 -0
- package/dist/admin/pages/CommunicationsPage.d.ts +2 -0
- package/dist/admin/pages/CommunicationsPage.d.ts.map +1 -0
- package/dist/admin/pages/CommunicationsPage.js +118 -0
- package/dist/admin/pages/CommunicationsPage.js.map +1 -0
- package/dist/admin/pages/DashboardPage.d.ts +5 -0
- package/dist/admin/pages/DashboardPage.d.ts.map +1 -0
- package/dist/admin/pages/DashboardPage.js +121 -0
- package/dist/admin/pages/DashboardPage.js.map +1 -0
- package/dist/admin/pages/FeatureFlagsPage.d.ts +2 -0
- package/dist/admin/pages/FeatureFlagsPage.d.ts.map +1 -0
- package/dist/admin/pages/FeatureFlagsPage.js +116 -0
- package/dist/admin/pages/FeatureFlagsPage.js.map +1 -0
- package/dist/admin/pages/OrganizationsListPage.d.ts +2 -0
- package/dist/admin/pages/OrganizationsListPage.d.ts.map +1 -0
- package/dist/admin/pages/OrganizationsListPage.js +112 -0
- package/dist/admin/pages/OrganizationsListPage.js.map +1 -0
- package/dist/admin/pages/ProductsPage.d.ts +5 -0
- package/dist/admin/pages/ProductsPage.d.ts.map +1 -0
- package/dist/admin/pages/ProductsPage.js +392 -0
- package/dist/admin/pages/ProductsPage.js.map +1 -0
- package/dist/admin/pages/ReferralsPage.d.ts +2 -0
- package/dist/admin/pages/ReferralsPage.d.ts.map +1 -0
- package/dist/admin/pages/ReferralsPage.js +272 -0
- package/dist/admin/pages/ReferralsPage.js.map +1 -0
- package/dist/admin/pages/RolesPermissionsPage.d.ts +2 -0
- package/dist/admin/pages/RolesPermissionsPage.d.ts.map +1 -0
- package/dist/admin/pages/RolesPermissionsPage.js +145 -0
- package/dist/admin/pages/RolesPermissionsPage.js.map +1 -0
- package/dist/admin/pages/SREPage.d.ts +5 -0
- package/dist/admin/pages/SREPage.d.ts.map +1 -0
- package/dist/admin/pages/SREPage.js +405 -0
- package/dist/admin/pages/SREPage.js.map +1 -0
- package/dist/admin/pages/SandboxSettingsPage.d.ts +7 -0
- package/dist/admin/pages/SandboxSettingsPage.d.ts.map +1 -0
- package/dist/admin/pages/SandboxSettingsPage.js +497 -0
- package/dist/admin/pages/SandboxSettingsPage.js.map +1 -0
- package/dist/admin/pages/SettingsPage.d.ts +5 -0
- package/dist/admin/pages/SettingsPage.d.ts.map +1 -0
- package/dist/admin/pages/SettingsPage.js +279 -0
- package/dist/admin/pages/SettingsPage.js.map +1 -0
- package/dist/admin/pages/TenantDetailPage.d.ts +5 -0
- package/dist/admin/pages/TenantDetailPage.d.ts.map +1 -0
- package/dist/admin/pages/TenantDetailPage.js +274 -0
- package/dist/admin/pages/TenantDetailPage.js.map +1 -0
- package/dist/admin/pages/TenantFormRoutePage.d.ts +6 -0
- package/dist/admin/pages/TenantFormRoutePage.d.ts.map +1 -0
- package/dist/admin/pages/TenantFormRoutePage.js +136 -0
- package/dist/admin/pages/TenantFormRoutePage.js.map +1 -0
- package/dist/admin/pages/TenantsListPage.d.ts +5 -0
- package/dist/admin/pages/TenantsListPage.d.ts.map +1 -0
- package/dist/admin/pages/TenantsListPage.js +339 -0
- package/dist/admin/pages/TenantsListPage.js.map +1 -0
- package/dist/admin/pages/UsersListPage.d.ts +5 -0
- package/dist/admin/pages/UsersListPage.d.ts.map +1 -0
- package/dist/admin/pages/UsersListPage.js +250 -0
- package/dist/admin/pages/UsersListPage.js.map +1 -0
- package/dist/admin/pages/WaitlistPage.d.ts +2 -0
- package/dist/admin/pages/WaitlistPage.d.ts.map +1 -0
- package/dist/admin/pages/WaitlistPage.js +241 -0
- package/dist/admin/pages/WaitlistPage.js.map +1 -0
- package/dist/admin/pages/WorkflowsPage.d.ts +2 -0
- package/dist/admin/pages/WorkflowsPage.d.ts.map +1 -0
- package/dist/admin/pages/WorkflowsPage.js +126 -0
- package/dist/admin/pages/WorkflowsPage.js.map +1 -0
- package/dist/admin/pages/WorkspacesListPage.d.ts +2 -0
- package/dist/admin/pages/WorkspacesListPage.d.ts.map +1 -0
- package/dist/admin/pages/WorkspacesListPage.js +100 -0
- package/dist/admin/pages/WorkspacesListPage.js.map +1 -0
- package/dist/admin/pages/index.d.ts +20 -0
- package/dist/admin/pages/index.d.ts.map +1 -0
- package/dist/admin/pages/index.js +19 -0
- package/dist/admin/providers/AdminProvider.d.ts +13 -0
- package/dist/admin/providers/AdminProvider.d.ts.map +1 -0
- package/dist/admin/providers/AdminProvider.js +43 -0
- package/dist/admin/providers/AdminProvider.js.map +1 -0
- package/dist/admin/schemas/index.d.ts +409 -0
- package/dist/admin/schemas/index.d.ts.map +1 -0
- package/dist/admin/schemas/index.js +111 -0
- package/dist/admin/schemas/index.js.map +1 -0
- package/dist/admin/store/adminStore.d.ts +28 -0
- package/dist/admin/store/adminStore.d.ts.map +1 -0
- package/dist/admin/store/adminStore.js +48 -0
- package/dist/admin/store/adminStore.js.map +1 -0
- package/dist/admin/types/index.d.ts +325 -0
- package/dist/admin/types/index.d.ts.map +1 -0
- package/dist/admin/utils/cn.d.ts +7 -0
- package/dist/admin/utils/cn.d.ts.map +1 -0
- package/dist/admin/utils/cn.js +10 -0
- package/dist/admin/utils/cn.js.map +1 -0
- package/dist/admin/utils/directActivityGraphql.d.ts +11 -0
- package/dist/admin/utils/directActivityGraphql.d.ts.map +1 -0
- package/dist/admin/utils/directActivityGraphql.js +25 -0
- package/dist/admin/utils/directActivityGraphql.js.map +1 -0
- package/dist/admin/utils/formatters.d.ts +33 -0
- package/dist/admin/utils/formatters.d.ts.map +1 -0
- package/dist/admin/utils/formatters.js +54 -0
- package/dist/admin/utils/formatters.js.map +1 -0
- package/dist/admin/utils/gatewayGraphql.d.ts +9 -0
- package/dist/admin/utils/gatewayGraphql.d.ts.map +1 -0
- package/dist/admin/utils/i18n.d.ts +6 -0
- package/dist/admin/utils/i18n.d.ts.map +1 -0
- package/dist/admin/utils/i18n.js +15 -0
- package/dist/admin/utils/i18n.js.map +1 -0
- package/dist/admin/utils/mappers.d.ts +15 -0
- package/dist/admin/utils/mappers.d.ts.map +1 -0
- package/dist/admin/utils/mappers.js +73 -0
- package/dist/admin/utils/mappers.js.map +1 -0
- package/dist/admin/utils/navigation.d.ts +9 -0
- package/dist/admin/utils/navigation.d.ts.map +1 -0
- package/dist/admin/utils/navigation.js +8 -0
- package/dist/admin/utils/navigation.js.map +1 -0
- package/dist/admin/utils/tenantEvents.d.ts +11 -0
- package/dist/admin/utils/tenantEvents.d.ts.map +1 -0
- package/dist/admin/utils/tenantEvents.js +8 -0
- package/dist/admin/utils/tenantEvents.js.map +1 -0
- package/dist/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2749 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-operations.js +907 -0
- package/dist/generated/global-operations.js.map +1 -0
- package/dist/generated/global-types.d.ts +20773 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/global-types.js +12 -0
- package/dist/generated/global-types.js.map +1 -0
- package/dist/generated/wspace-operations.d.ts +132 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-operations.js +65 -0
- package/dist/generated/wspace-operations.js.map +1 -0
- package/dist/generated/wspace-types.d.ts +53363 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js +34 -0
- package/dist/node_modules/@hookform/resolvers/dist/resolvers.js.map +1 -0
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js +118 -0
- package/dist/node_modules/@hookform/resolvers/zod/dist/zod.js.map +1 -0
- package/dist/node_modules/clsx/dist/clsx.js +18 -0
- package/dist/node_modules/clsx/dist/clsx.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.js +8 -0
- package/dist/node_modules/date-fns/_lib/addLeadingZeros.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.js +9 -0
- package/dist/node_modules/date-fns/_lib/defaultOptions.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.js +384 -0
- package/dist/node_modules/date-fns/_lib/format/formatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.js +45 -0
- package/dist/node_modules/date-fns/_lib/format/lightFormatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.js +42 -0
- package/dist/node_modules/date-fns/_lib/format/longFormatters.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/getRoundingMethod.js +11 -0
- package/dist/node_modules/date-fns/_lib/getRoundingMethod.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js +10 -0
- package/dist/node_modules/date-fns/_lib/getTimezoneOffsetInMilliseconds.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.js +10 -0
- package/dist/node_modules/date-fns/_lib/normalizeDates.js.map +1 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.js +25 -0
- package/dist/node_modules/date-fns/_lib/protectedTokens.js.map +1 -0
- package/dist/node_modules/date-fns/compareAsc.js +10 -0
- package/dist/node_modules/date-fns/compareAsc.js.map +1 -0
- package/dist/node_modules/date-fns/constants.js +8 -0
- package/dist/node_modules/date-fns/constants.js.map +1 -0
- package/dist/node_modules/date-fns/constructFrom.js +9 -0
- package/dist/node_modules/date-fns/constructFrom.js.map +1 -0
- package/dist/node_modules/date-fns/constructNow.js +9 -0
- package/dist/node_modules/date-fns/constructNow.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.js +13 -0
- package/dist/node_modules/date-fns/differenceInCalendarDays.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInCalendarMonths.js +10 -0
- package/dist/node_modules/date-fns/differenceInCalendarMonths.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInMilliseconds.js +9 -0
- package/dist/node_modules/date-fns/differenceInMilliseconds.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInMonths.js +18 -0
- package/dist/node_modules/date-fns/differenceInMonths.js.map +1 -0
- package/dist/node_modules/date-fns/differenceInSeconds.js +11 -0
- package/dist/node_modules/date-fns/differenceInSeconds.js.map +1 -0
- package/dist/node_modules/date-fns/endOfDay.js +10 -0
- package/dist/node_modules/date-fns/endOfDay.js.map +1 -0
- package/dist/node_modules/date-fns/endOfMonth.js +10 -0
- package/dist/node_modules/date-fns/endOfMonth.js.map +1 -0
- package/dist/node_modules/date-fns/format.js +61 -0
- package/dist/node_modules/date-fns/format.js.map +1 -0
- package/dist/node_modules/date-fns/formatDistance.js +39 -0
- package/dist/node_modules/date-fns/formatDistance.js.map +1 -0
- package/dist/node_modules/date-fns/formatDistanceToNow.js +10 -0
- package/dist/node_modules/date-fns/formatDistanceToNow.js.map +1 -0
- package/dist/node_modules/date-fns/getDayOfYear.js +12 -0
- package/dist/node_modules/date-fns/getDayOfYear.js.map +1 -0
- package/dist/node_modules/date-fns/getISOWeek.js +13 -0
- package/dist/node_modules/date-fns/getISOWeek.js.map +1 -0
- package/dist/node_modules/date-fns/getISOWeekYear.js +16 -0
- package/dist/node_modules/date-fns/getISOWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/getWeek.js +13 -0
- package/dist/node_modules/date-fns/getWeek.js.map +1 -0
- package/dist/node_modules/date-fns/getWeekYear.js +17 -0
- package/dist/node_modules/date-fns/getWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/isDate.js +8 -0
- package/dist/node_modules/date-fns/isDate.js.map +1 -0
- package/dist/node_modules/date-fns/isLastDayOfMonth.js +12 -0
- package/dist/node_modules/date-fns/isLastDayOfMonth.js.map +1 -0
- package/dist/node_modules/date-fns/isValid.js +10 -0
- package/dist/node_modules/date-fns/isValid.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js +11 -0
- package/dist/node_modules/date-fns/locale/_lib/buildFormatLongFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js +19 -0
- package/dist/node_modules/date-fns/locale/_lib/buildLocalizeFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js +24 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js +20 -0
- package/dist/node_modules/date-fns/locale/_lib/buildMatchPatternFn.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js +71 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatDistance.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js +34 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatLong.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js +13 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/formatRelative.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js +204 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/localize.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.js +126 -0
- package/dist/node_modules/date-fns/locale/en-US/_lib/match.js.map +1 -0
- package/dist/node_modules/date-fns/locale/en-US.js +22 -0
- package/dist/node_modules/date-fns/locale/en-US.js.map +1 -0
- package/dist/node_modules/date-fns/parseISO.js +119 -0
- package/dist/node_modules/date-fns/parseISO.js.map +1 -0
- package/dist/node_modules/date-fns/startOfDay.js +10 -0
- package/dist/node_modules/date-fns/startOfDay.js.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeek.js +12 -0
- package/dist/node_modules/date-fns/startOfISOWeek.js.map +1 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.js +12 -0
- package/dist/node_modules/date-fns/startOfISOWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/startOfWeek.js +11 -0
- package/dist/node_modules/date-fns/startOfWeek.js.map +1 -0
- package/dist/node_modules/date-fns/startOfWeekYear.js +13 -0
- package/dist/node_modules/date-fns/startOfWeekYear.js.map +1 -0
- package/dist/node_modules/date-fns/startOfYear.js +10 -0
- package/dist/node_modules/date-fns/startOfYear.js.map +1 -0
- package/dist/node_modules/date-fns/toDate.js +9 -0
- package/dist/node_modules/date-fns/toDate.js.map +1 -0
- package/dist/node_modules/react-hook-form/dist/index.esm.js +1210 -0
- package/dist/node_modules/react-hook-form/dist/index.esm.js.map +1 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js +1716 -0
- package/dist/node_modules/tailwind-merge/dist/bundle-mjs.js.map +1 -0
- package/dist/node_modules/zod/v3/ZodError.js +82 -0
- package/dist/node_modules/zod/v3/ZodError.js.map +1 -0
- package/dist/node_modules/zod/v3/errors.js +10 -0
- package/dist/node_modules/zod/v3/errors.js.map +1 -0
- package/dist/node_modules/zod/v3/helpers/errorUtil.js +9 -0
- package/dist/node_modules/zod/v3/helpers/errorUtil.js.map +1 -0
- package/dist/node_modules/zod/v3/helpers/parseUtil.js +93 -0
- package/dist/node_modules/zod/v3/helpers/parseUtil.js.map +1 -0
- package/dist/node_modules/zod/v3/helpers/util.js +76 -0
- package/dist/node_modules/zod/v3/helpers/util.js.map +1 -0
- package/dist/node_modules/zod/v3/locales/en.js +62 -0
- package/dist/node_modules/zod/v3/locales/en.js.map +1 -0
- package/dist/node_modules/zod/v3/types.js +2459 -0
- package/dist/node_modules/zod/v3/types.js.map +1 -0
- package/dist/node_modules/zod/v4/core/core.js +35 -0
- package/dist/node_modules/zod/v4/core/core.js.map +1 -0
- package/dist/node_modules/zod/v4/core/errors.js +24 -0
- package/dist/node_modules/zod/v4/core/errors.js.map +1 -0
- package/dist/node_modules/zod/v4/core/parse.js +29 -0
- package/dist/node_modules/zod/v4/core/parse.js.map +1 -0
- package/dist/node_modules/zod/v4/core/util.js +20 -0
- package/dist/node_modules/zod/v4/core/util.js.map +1 -0
- package/package.json +111 -0
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { Badge as e, Button as t, EmptyState as n, Input as r } from "../components/ui.js";
|
|
2
|
+
import { PageLayout as i } from "../components/PageLayout.js";
|
|
3
|
+
import { formatDateTime as a } from "../utils/formatters.js";
|
|
4
|
+
import { MetricCard as o, MetricsGrid as s } from "../components/MetricCard.js";
|
|
5
|
+
import { DataTable as c } from "../components/DataTable.js";
|
|
6
|
+
import "../components/index.js";
|
|
7
|
+
import { useGetWorkflowSystemOverviewQuery as l, useListActiveWorkflowsQuery as u } from "../../generated/wspace-operations.js";
|
|
8
|
+
import { Activity as d, AlertCircle as f, Clock as p, GitBranch as m, Play as h, Plus as g, Search as _ } from "lucide-react";
|
|
9
|
+
import { jsx as v, jsxs as y } from "react/jsx-runtime";
|
|
10
|
+
//#region src/admin/pages/WorkflowsPage.tsx
|
|
11
|
+
function b() {
|
|
12
|
+
let { data: b, loading: x } = l(), { data: S, loading: C } = u({ variables: {
|
|
13
|
+
limit: 10,
|
|
14
|
+
offset: 0
|
|
15
|
+
} }), w = b?.systemOverview, T = S?.activeWorkflows || [];
|
|
16
|
+
return /* @__PURE__ */ v(i, {
|
|
17
|
+
title: "Workflows",
|
|
18
|
+
description: "Manage and monitor platform workflows",
|
|
19
|
+
actions: /* @__PURE__ */ y(t, { children: [/* @__PURE__ */ v(g, { className: "mr-2 h-4 w-4" }), "Create Workflow"] }),
|
|
20
|
+
children: /* @__PURE__ */ y("div", {
|
|
21
|
+
className: "space-y-8",
|
|
22
|
+
children: [/* @__PURE__ */ y(s, { children: [
|
|
23
|
+
/* @__PURE__ */ v(o, {
|
|
24
|
+
title: "Total Workflows",
|
|
25
|
+
value: w?.totalWorkflows ?? 0,
|
|
26
|
+
loading: x,
|
|
27
|
+
icon: /* @__PURE__ */ v(m, { className: "h-4 w-4" })
|
|
28
|
+
}),
|
|
29
|
+
/* @__PURE__ */ v(o, {
|
|
30
|
+
title: "Active Runs",
|
|
31
|
+
value: w?.activeWorkflows ?? 0,
|
|
32
|
+
loading: x,
|
|
33
|
+
icon: /* @__PURE__ */ v(h, { className: "h-4 w-4" }),
|
|
34
|
+
trend: w?.activeWorkflows && w.activeWorkflows > 0 ? "up" : "neutral"
|
|
35
|
+
}),
|
|
36
|
+
/* @__PURE__ */ v(o, {
|
|
37
|
+
title: "Failed (24h)",
|
|
38
|
+
value: w?.failedWorkflows ?? 0,
|
|
39
|
+
loading: x,
|
|
40
|
+
icon: /* @__PURE__ */ v(f, { className: "h-4 w-4" }),
|
|
41
|
+
priority: w?.failedWorkflows && w.failedWorkflows > 0 ? "high" : "normal"
|
|
42
|
+
}),
|
|
43
|
+
/* @__PURE__ */ v(o, {
|
|
44
|
+
title: "Queued Jobs",
|
|
45
|
+
value: w?.queuedJobs ?? 0,
|
|
46
|
+
loading: x,
|
|
47
|
+
icon: /* @__PURE__ */ v(p, { className: "h-4 w-4" })
|
|
48
|
+
})
|
|
49
|
+
] }), /* @__PURE__ */ y("div", {
|
|
50
|
+
className: "space-y-4",
|
|
51
|
+
children: [/* @__PURE__ */ y("div", {
|
|
52
|
+
className: "flex items-center justify-between",
|
|
53
|
+
children: [/* @__PURE__ */ v("h2", {
|
|
54
|
+
className: "text-lg font-semibold",
|
|
55
|
+
children: "Active Workflow Runs"
|
|
56
|
+
}), /* @__PURE__ */ y("div", {
|
|
57
|
+
className: "relative max-w-sm flex-1 ml-4",
|
|
58
|
+
children: [/* @__PURE__ */ v(_, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ v(r, {
|
|
59
|
+
placeholder: "Search active runs...",
|
|
60
|
+
className: "pl-9"
|
|
61
|
+
})]
|
|
62
|
+
})]
|
|
63
|
+
}), /* @__PURE__ */ v(c, {
|
|
64
|
+
columns: [
|
|
65
|
+
{
|
|
66
|
+
key: "workflowName",
|
|
67
|
+
header: "Workflow",
|
|
68
|
+
render: (e) => /* @__PURE__ */ y("div", {
|
|
69
|
+
className: "flex flex-col",
|
|
70
|
+
children: [/* @__PURE__ */ v("span", {
|
|
71
|
+
className: "font-medium text-foreground",
|
|
72
|
+
children: e.workflowName
|
|
73
|
+
}), /* @__PURE__ */ y("span", {
|
|
74
|
+
className: "text-xs text-muted-foreground",
|
|
75
|
+
children: ["v", e.workflowVersion]
|
|
76
|
+
})]
|
|
77
|
+
})
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
key: "runId",
|
|
81
|
+
header: "Run ID",
|
|
82
|
+
render: (e) => /* @__PURE__ */ y("code", {
|
|
83
|
+
className: "text-xs",
|
|
84
|
+
children: [e.runId.substring(0, 8), "..."]
|
|
85
|
+
})
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
key: "status",
|
|
89
|
+
header: "Status",
|
|
90
|
+
render: (t) => /* @__PURE__ */ v(e, {
|
|
91
|
+
variant: {
|
|
92
|
+
RUNNING: "success",
|
|
93
|
+
PENDING: "warning",
|
|
94
|
+
FAILED: "destructive",
|
|
95
|
+
COMPLETED: "default"
|
|
96
|
+
}[t.status] || "outline",
|
|
97
|
+
children: t.status
|
|
98
|
+
})
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
key: "currentNode",
|
|
102
|
+
header: "Current Node"
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
key: "createdAt",
|
|
106
|
+
header: "Started At",
|
|
107
|
+
render: (e) => a(e.createdAt)
|
|
108
|
+
}
|
|
109
|
+
],
|
|
110
|
+
data: T,
|
|
111
|
+
keyExtractor: (e) => e.runId,
|
|
112
|
+
loading: C,
|
|
113
|
+
emptyState: /* @__PURE__ */ v(n, {
|
|
114
|
+
icon: /* @__PURE__ */ v(d, { className: "h-8 w-8" }),
|
|
115
|
+
title: "No active workflows",
|
|
116
|
+
description: "There are currently no workflows running in the system"
|
|
117
|
+
})
|
|
118
|
+
})]
|
|
119
|
+
})]
|
|
120
|
+
})
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
//#endregion
|
|
124
|
+
export { b as WorkflowsPage };
|
|
125
|
+
|
|
126
|
+
//# sourceMappingURL=WorkflowsPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowsPage.js","names":[],"sources":["../../../src/admin/pages/WorkflowsPage.tsx"],"sourcesContent":["import { GitBranch, Search, Plus, Activity, AlertCircle, Clock, Play } from 'lucide-react';\nimport {\n PageLayout,\n Input,\n Button,\n EmptyState,\n MetricCard,\n MetricsGrid,\n DataTable,\n Badge,\n} from '../components';\nimport {\n useGetWorkflowSystemOverviewQuery,\n useListActiveWorkflowsQuery,\n} from '../../generated/wspace-operations';\nimport { formatDateTime } from '../utils/formatters';\n\nexport function WorkflowsPage() {\n const { data: overviewData, loading: overviewLoading } = useGetWorkflowSystemOverviewQuery();\n\n const { data: listData, loading: listLoading } = useListActiveWorkflowsQuery({\n variables: { limit: 10, offset: 0 },\n });\n\n const overview = overviewData?.systemOverview;\n const activeRuns = listData?.activeWorkflows || [];\n\n const columns = [\n {\n key: 'workflowName',\n header: 'Workflow',\n render: (run: any) => (\n <div className=\"flex flex-col\">\n <span className=\"font-medium text-foreground\">{run.workflowName}</span>\n <span className=\"text-xs text-muted-foreground\">v{run.workflowVersion}</span>\n </div>\n ),\n },\n {\n key: 'runId',\n header: 'Run ID',\n render: (run: any) => <code className=\"text-xs\">{run.runId.substring(0, 8)}...</code>,\n },\n {\n key: 'status',\n header: 'Status',\n render: (run: any) => {\n const variants: Record<\n string,\n 'default' | 'secondary' | 'success' | 'warning' | 'destructive' | 'outline'\n > = {\n RUNNING: 'success',\n PENDING: 'warning',\n FAILED: 'destructive',\n COMPLETED: 'default',\n };\n return <Badge variant={variants[run.status] || 'outline'}>{run.status}</Badge>;\n },\n },\n {\n key: 'currentNode',\n header: 'Current Node',\n },\n {\n key: 'createdAt',\n header: 'Started At',\n render: (run: any) => formatDateTime(run.createdAt),\n },\n ];\n\n return (\n <PageLayout\n title=\"Workflows\"\n description=\"Manage and monitor platform workflows\"\n actions={\n <Button>\n <Plus className=\"mr-2 h-4 w-4\" />\n Create Workflow\n </Button>\n }\n >\n <div className=\"space-y-8\">\n <MetricsGrid>\n <MetricCard\n title=\"Total Workflows\"\n value={overview?.totalWorkflows ?? 0}\n loading={overviewLoading}\n icon={<GitBranch className=\"h-4 w-4\" />}\n />\n <MetricCard\n title=\"Active Runs\"\n value={overview?.activeWorkflows ?? 0}\n loading={overviewLoading}\n icon={<Play className=\"h-4 w-4\" />}\n trend={overview?.activeWorkflows && overview.activeWorkflows > 0 ? 'up' : 'neutral'}\n />\n <MetricCard\n title=\"Failed (24h)\"\n value={overview?.failedWorkflows ?? 0}\n loading={overviewLoading}\n icon={<AlertCircle className=\"h-4 w-4\" />}\n priority={overview?.failedWorkflows && overview.failedWorkflows > 0 ? 'high' : 'normal'}\n />\n <MetricCard\n title=\"Queued Jobs\"\n value={overview?.queuedJobs ?? 0}\n loading={overviewLoading}\n icon={<Clock className=\"h-4 w-4\" />}\n />\n </MetricsGrid>\n\n <div className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <h2 className=\"text-lg font-semibold\">Active Workflow Runs</h2>\n <div className=\"relative max-w-sm flex-1 ml-4\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground\" />\n <Input placeholder=\"Search active runs...\" className=\"pl-9\" />\n </div>\n </div>\n\n <DataTable\n columns={columns}\n data={activeRuns as any[]}\n keyExtractor={(run) => run.runId}\n loading={listLoading}\n emptyState={\n <EmptyState\n icon={<Activity className=\"h-8 w-8\" />}\n title=\"No active workflows\"\n description=\"There are currently no workflows running in the system\"\n />\n }\n />\n </div>\n </div>\n </PageLayout>\n );\n}\n"],"mappings":";;;;;;;;;;AAiBA,SAAgB,IAAgB;CAC9B,IAAM,EAAE,MAAM,GAAc,SAAS,MAAoB,GAAmC,EAEtF,EAAE,MAAM,GAAU,SAAS,MAAgB,EAA4B,EAC3E,WAAW;EAAE,OAAO;EAAI,QAAQ;EAAG,EACpC,CAAC,EAEI,IAAW,GAAc,gBACzB,IAAa,GAAU,mBAAmB,EAAE;AA6ClD,QACE,kBAAC,GAAD;EACE,OAAM;EACN,aAAY;EACZ,SACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,kBAE1B,EAAA,CAAA;YAGX,kBAAC,OAAD;GAAK,WAAU;aAAf,CACE,kBAAC,GAAD,EAAA,UAAA;IACE,kBAAC,GAAD;KACE,OAAM;KACN,OAAO,GAAU,kBAAkB;KACnC,SAAS;KACT,MAAM,kBAAC,GAAD,EAAW,WAAU,WAAY,CAAA;KACvC,CAAA;IACF,kBAAC,GAAD;KACE,OAAM;KACN,OAAO,GAAU,mBAAmB;KACpC,SAAS;KACT,MAAM,kBAAC,GAAD,EAAM,WAAU,WAAY,CAAA;KAClC,OAAO,GAAU,mBAAmB,EAAS,kBAAkB,IAAI,OAAO;KAC1E,CAAA;IACF,kBAAC,GAAD;KACE,OAAM;KACN,OAAO,GAAU,mBAAmB;KACpC,SAAS;KACT,MAAM,kBAAC,GAAD,EAAa,WAAU,WAAY,CAAA;KACzC,UAAU,GAAU,mBAAmB,EAAS,kBAAkB,IAAI,SAAS;KAC/E,CAAA;IACF,kBAAC,GAAD;KACE,OAAM;KACN,OAAO,GAAU,cAAc;KAC/B,SAAS;KACT,MAAM,kBAAC,GAAD,EAAO,WAAU,WAAY,CAAA;KACnC,CAAA;IACU,EAAA,CAAA,EAEd,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,MAAD;MAAI,WAAU;gBAAwB;MAAyB,CAAA,EAC/D,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,0EAA2E,CAAA,EAC7F,kBAAC,GAAD;OAAO,aAAY;OAAwB,WAAU;OAAS,CAAA,CAC1D;QACF;QAEN,kBAAC,GAAD;KACW,SA9FH;MACd;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MACP,kBAAC,OAAD;QAAK,WAAU;kBAAf,CACE,kBAAC,QAAD;SAAM,WAAU;mBAA+B,EAAI;SAAoB,CAAA,EACvE,kBAAC,QAAD;SAAM,WAAU;mBAAhB,CAAgD,KAAE,EAAI,gBAAuB;WACzE;;OAET;MACD;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MAAa,kBAAC,QAAD;QAAM,WAAU;kBAAhB,CAA2B,EAAI,MAAM,UAAU,GAAG,EAAE,EAAC,MAAU;;OACtF;MACD;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MAUA,kBAAC,GAAD;QAAO,SANV;SACF,SAAS;SACT,SAAS;SACT,QAAQ;SACR,WAAW;SACZ,CAC+B,EAAI,WAAW;kBAAY,EAAI;QAAe,CAAA;OAEjF;MACD;OACE,KAAK;OACL,QAAQ;OACT;MACD;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MAAa,EAAe,EAAI,UAAU;OACpD;MACF;KAsDS,MAAM;KACN,eAAe,MAAQ,EAAI;KAC3B,SAAS;KACT,YACE,kBAAC,GAAD;MACE,MAAM,kBAAC,GAAD,EAAU,WAAU,WAAY,CAAA;MACtC,OAAM;MACN,aAAY;MACZ,CAAA;KAEJ,CAAA,CACE;MACF;;EACK,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkspacesListPage.d.ts","sourceRoot":"","sources":["../../../src/admin/pages/WorkspacesListPage.tsx"],"names":[],"mappings":"AAeA,wBAAgB,kBAAkB,4CAoFjC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { cn as e } from "../utils/cn.js";
|
|
2
|
+
import { Badge as t, Button as n, Input as r } from "../components/ui.js";
|
|
3
|
+
import { PageLayout as i } from "../components/PageLayout.js";
|
|
4
|
+
import { DataTable as a, Pagination as o } from "../components/DataTable.js";
|
|
5
|
+
import "../components/index.js";
|
|
6
|
+
import { useListWorkspacesQuery as s } from "../../generated/global-operations.js";
|
|
7
|
+
import { WorkspaceStatus as c } from "../../generated/global-types.js";
|
|
8
|
+
import { useState as l } from "react";
|
|
9
|
+
import { Layout as u, Plus as d, Search as f } from "lucide-react";
|
|
10
|
+
import { jsx as p, jsxs as m } from "react/jsx-runtime";
|
|
11
|
+
//#region src/admin/pages/WorkspacesListPage.tsx
|
|
12
|
+
var h = {
|
|
13
|
+
[c.Active]: "bg-success/10 text-success border-success/20",
|
|
14
|
+
[c.Suspended]: "bg-destructive/10 text-destructive border-destructive/20",
|
|
15
|
+
[c.Archived]: "bg-muted text-muted-foreground border-muted",
|
|
16
|
+
[c.Deleted]: "bg-destructive/10 text-destructive border-destructive/20"
|
|
17
|
+
};
|
|
18
|
+
function g() {
|
|
19
|
+
let [c, g] = l(1), { data: _, loading: v, error: y } = s({ variables: {
|
|
20
|
+
limit: 20,
|
|
21
|
+
offset: (c - 1) * 20
|
|
22
|
+
} }), b = _?.workspaces.items ?? [], x = _?.workspaces.total ?? 0, S = Math.ceil(x / 20);
|
|
23
|
+
return /* @__PURE__ */ p(i, {
|
|
24
|
+
title: "Workspaces",
|
|
25
|
+
description: "Manage and monitor platform workspaces",
|
|
26
|
+
actions: /* @__PURE__ */ m(n, { children: [/* @__PURE__ */ p(d, { className: "mr-2 h-4 w-4" }), "Create Workspace"] }),
|
|
27
|
+
children: /* @__PURE__ */ m("div", {
|
|
28
|
+
className: "space-y-4",
|
|
29
|
+
children: [
|
|
30
|
+
/* @__PURE__ */ p("div", {
|
|
31
|
+
className: "flex items-center justify-between",
|
|
32
|
+
children: /* @__PURE__ */ m("div", {
|
|
33
|
+
className: "relative max-w-sm flex-1",
|
|
34
|
+
children: [/* @__PURE__ */ p(f, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }), /* @__PURE__ */ p(r, {
|
|
35
|
+
placeholder: "Search workspaces...",
|
|
36
|
+
className: "pl-9"
|
|
37
|
+
})]
|
|
38
|
+
})
|
|
39
|
+
}),
|
|
40
|
+
/* @__PURE__ */ p(a, {
|
|
41
|
+
columns: [
|
|
42
|
+
{
|
|
43
|
+
key: "name",
|
|
44
|
+
header: "Workspace Name",
|
|
45
|
+
render: (e) => /* @__PURE__ */ p("div", {
|
|
46
|
+
className: "font-medium text-foreground",
|
|
47
|
+
children: e.name
|
|
48
|
+
})
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
key: "id",
|
|
52
|
+
header: "ID",
|
|
53
|
+
render: (e) => /* @__PURE__ */ p("code", {
|
|
54
|
+
className: "text-xs text-muted-foreground",
|
|
55
|
+
children: e.id
|
|
56
|
+
})
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
key: "status",
|
|
60
|
+
header: "Status",
|
|
61
|
+
render: (n) => /* @__PURE__ */ p(t, {
|
|
62
|
+
className: e(h[n.status]),
|
|
63
|
+
variant: "outline",
|
|
64
|
+
children: n.status
|
|
65
|
+
})
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
data: b,
|
|
69
|
+
keyExtractor: (e) => e.id,
|
|
70
|
+
loading: v,
|
|
71
|
+
emptyState: /* @__PURE__ */ m("div", {
|
|
72
|
+
className: "flex flex-col items-center justify-center py-12 text-center",
|
|
73
|
+
children: [
|
|
74
|
+
/* @__PURE__ */ p(u, { className: "h-12 w-12 text-muted-foreground/50 mb-4" }),
|
|
75
|
+
/* @__PURE__ */ p("h3", {
|
|
76
|
+
className: "text-lg font-medium",
|
|
77
|
+
children: "No workspaces found"
|
|
78
|
+
}),
|
|
79
|
+
/* @__PURE__ */ p("p", {
|
|
80
|
+
className: "text-muted-foreground",
|
|
81
|
+
children: "Workspaces will appear here when they are created."
|
|
82
|
+
})
|
|
83
|
+
]
|
|
84
|
+
})
|
|
85
|
+
}),
|
|
86
|
+
x > 20 && /* @__PURE__ */ p(o, {
|
|
87
|
+
page: c,
|
|
88
|
+
totalPages: S,
|
|
89
|
+
totalItems: x,
|
|
90
|
+
pageSize: 20,
|
|
91
|
+
onPageChange: g
|
|
92
|
+
})
|
|
93
|
+
]
|
|
94
|
+
})
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
//#endregion
|
|
98
|
+
export { g as WorkspacesListPage };
|
|
99
|
+
|
|
100
|
+
//# sourceMappingURL=WorkspacesListPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkspacesListPage.js","names":[],"sources":["../../../src/admin/pages/WorkspacesListPage.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Layout, Search, Plus } from 'lucide-react';\nimport { PageLayout, Input, Button, DataTable, Pagination } from '../components';\nimport { useListWorkspacesQuery } from '../../generated/global-operations';\nimport { WorkspaceStatus } from '../../generated/global-types';\nimport { Badge } from '../components/ui';\nimport { cn } from '../utils/cn';\n\nconst STATUS_STYLING: Record<WorkspaceStatus, string> = {\n [WorkspaceStatus.Active]: 'bg-success/10 text-success border-success/20',\n [WorkspaceStatus.Suspended]: 'bg-destructive/10 text-destructive border-destructive/20',\n [WorkspaceStatus.Archived]: 'bg-muted text-muted-foreground border-muted',\n [WorkspaceStatus.Deleted]: 'bg-destructive/10 text-destructive border-destructive/20',\n};\n\nexport function WorkspacesListPage() {\n const [page, setPage] = useState(1);\n const pageSize = 20;\n\n const { data, loading, error } = useListWorkspacesQuery({\n variables: {\n limit: pageSize,\n offset: (page - 1) * pageSize,\n },\n });\n\n const workspaces = data?.workspaces.items ?? [];\n const total = data?.workspaces.total ?? 0;\n const totalPages = Math.ceil(total / pageSize);\n\n const columns = [\n {\n key: 'name',\n header: 'Workspace Name',\n render: (w: any) => <div className=\"font-medium text-foreground\">{w.name}</div>,\n },\n {\n key: 'id',\n header: 'ID',\n render: (w: any) => <code className=\"text-xs text-muted-foreground\">{w.id}</code>,\n },\n {\n key: 'status',\n header: 'Status',\n render: (w: any) => (\n <Badge className={cn(STATUS_STYLING[w.status as WorkspaceStatus])} variant=\"outline\">\n {w.status}\n </Badge>\n ),\n },\n ];\n\n return (\n <PageLayout\n title=\"Workspaces\"\n description=\"Manage and monitor platform workspaces\"\n actions={\n <Button>\n <Plus className=\"mr-2 h-4 w-4\" />\n Create Workspace\n </Button>\n }\n >\n <div className=\"space-y-4\">\n <div className=\"flex items-center justify-between\">\n <div className=\"relative max-w-sm flex-1\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground\" />\n <Input placeholder=\"Search workspaces...\" className=\"pl-9\" />\n </div>\n </div>\n\n <DataTable\n columns={columns}\n data={workspaces}\n keyExtractor={(w) => w.id}\n loading={loading}\n emptyState={\n <div className=\"flex flex-col items-center justify-center py-12 text-center\">\n <Layout className=\"h-12 w-12 text-muted-foreground/50 mb-4\" />\n <h3 className=\"text-lg font-medium\">No workspaces found</h3>\n <p className=\"text-muted-foreground\">\n Workspaces will appear here when they are created.\n </p>\n </div>\n }\n />\n\n {total > pageSize && (\n <Pagination\n page={page}\n totalPages={totalPages}\n totalItems={total}\n pageSize={pageSize}\n onPageChange={setPage}\n />\n )}\n </div>\n </PageLayout>\n );\n}\n"],"mappings":";;;;;;;;;;;AAQA,IAAM,IAAkD;EACrD,EAAgB,SAAS;EACzB,EAAgB,YAAY;EAC5B,EAAgB,WAAW;EAC3B,EAAgB,UAAU;CAC5B;AAED,SAAgB,IAAqB;CACnC,IAAM,CAAC,GAAM,KAAW,EAAS,EAAE,EAG7B,EAAE,SAAM,YAAS,aAAU,EAAuB,EACtD,WAAW;EACT,OAAO;EACP,SAAS,IAAO,KAAK;EACtB,EACF,CAAC,EAEI,IAAa,GAAM,WAAW,SAAS,EAAE,EACzC,IAAQ,GAAM,WAAW,SAAS,GAClC,IAAa,KAAK,KAAK,IAAQ,GAAS;AAwB9C,QACE,kBAAC,GAAD;EACE,OAAM;EACN,aAAY;EACZ,SACE,kBAAC,GAAD,EAAA,UAAA,CACE,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAAA,mBAE1B,EAAA,CAAA;YAGX,kBAAC,OAAD;GAAK,WAAU;aAAf;IACE,kBAAC,OAAD;KAAK,WAAU;eACb,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,GAAD,EAAQ,WAAU,0EAA2E,CAAA,EAC7F,kBAAC,GAAD;OAAO,aAAY;OAAuB,WAAU;OAAS,CAAA,CACzD;;KACF,CAAA;IAEN,kBAAC,GAAD;KACW,SA1CD;MACd;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MAAW,kBAAC,OAAD;QAAK,WAAU;kBAA+B,EAAE;QAAW,CAAA;OAChF;MACD;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MAAW,kBAAC,QAAD;QAAM,WAAU;kBAAiC,EAAE;QAAU,CAAA;OAClF;MACD;OACE,KAAK;OACL,QAAQ;OACR,SAAS,MACP,kBAAC,GAAD;QAAO,WAAW,EAAG,EAAe,EAAE,QAA2B;QAAE,SAAQ;kBACxE,EAAE;QACG,CAAA;OAEX;MACF;KAuBO,MAAM;KACN,eAAe,MAAM,EAAE;KACd;KACT,YACE,kBAAC,OAAD;MAAK,WAAU;gBAAf;OACE,kBAAC,GAAD,EAAQ,WAAU,2CAA4C,CAAA;OAC9D,kBAAC,MAAD;QAAI,WAAU;kBAAsB;QAAwB,CAAA;OAC5D,kBAAC,KAAD;QAAG,WAAU;kBAAwB;QAEjC,CAAA;OACA;;KAER,CAAA;IAED,IAAQ,MACP,kBAAC,GAAD;KACQ;KACM;KACZ,YAAY;KACF;KACV,cAAc;KACd,CAAA;IAEA;;EACK,CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export { DashboardPage } from './DashboardPage';
|
|
2
|
+
export { TenantsListPage } from './TenantsListPage';
|
|
3
|
+
export { TenantDetailPage } from './TenantDetailPage';
|
|
4
|
+
export { TenantFormRoutePage } from './TenantFormRoutePage';
|
|
5
|
+
export { UsersListPage } from './UsersListPage';
|
|
6
|
+
export { BillingPage } from './BillingPage';
|
|
7
|
+
export { SettingsPage } from './SettingsPage';
|
|
8
|
+
export { ProductsPage } from './ProductsPage';
|
|
9
|
+
export { CommunicationsPage } from './CommunicationsPage';
|
|
10
|
+
export { SREPage } from './SREPage';
|
|
11
|
+
export { AuditLogsPage } from './AuditLogsPage';
|
|
12
|
+
export { SandboxSettingsPage } from './SandboxSettingsPage';
|
|
13
|
+
export { OrganizationsListPage } from './OrganizationsListPage';
|
|
14
|
+
export { WorkspacesListPage } from './WorkspacesListPage';
|
|
15
|
+
export { FeatureFlagsPage } from './FeatureFlagsPage';
|
|
16
|
+
export { RolesPermissionsPage } from './RolesPermissionsPage';
|
|
17
|
+
export { WorkflowsPage } from './WorkflowsPage';
|
|
18
|
+
export { WaitlistPage } from './WaitlistPage';
|
|
19
|
+
export { ReferralsPage } from './ReferralsPage';
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/admin/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import "./DashboardPage.js";
|
|
2
|
+
import "./TenantsListPage.js";
|
|
3
|
+
import "./TenantDetailPage.js";
|
|
4
|
+
import "./TenantFormRoutePage.js";
|
|
5
|
+
import "./UsersListPage.js";
|
|
6
|
+
import "./BillingPage.js";
|
|
7
|
+
import "./SettingsPage.js";
|
|
8
|
+
import "./ProductsPage.js";
|
|
9
|
+
import "./CommunicationsPage.js";
|
|
10
|
+
import "./SREPage.js";
|
|
11
|
+
import "./AuditLogsPage.js";
|
|
12
|
+
import "./SandboxSettingsPage.js";
|
|
13
|
+
import "./OrganizationsListPage.js";
|
|
14
|
+
import "./WorkspacesListPage.js";
|
|
15
|
+
import "./FeatureFlagsPage.js";
|
|
16
|
+
import "./RolesPermissionsPage.js";
|
|
17
|
+
import "./WorkflowsPage.js";
|
|
18
|
+
import "./WaitlistPage.js";
|
|
19
|
+
import "./ReferralsPage.js";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC, PropsWithChildren } from 'react';
|
|
2
|
+
import { AdminRootProps } from '../types';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Hook to access Admin context
|
|
6
|
+
*/
|
|
7
|
+
export declare const useAdmin: () => AdminRootProps;
|
|
8
|
+
/**
|
|
9
|
+
* Provider component for Admin microfrontend
|
|
10
|
+
* Sets up routing, context, and React Query client
|
|
11
|
+
*/
|
|
12
|
+
export declare const AdminProvider: FC<PropsWithChildren<AdminRootProps>>;
|
|
13
|
+
//# sourceMappingURL=AdminProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdminProvider.d.ts","sourceRoot":"","sources":["../../../src/admin/providers/AdminProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAKnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAU/C;;GAEG;AACH,eAAO,MAAM,QAAQ,sBAMpB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAiE/D,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { ToastProvider as e } from "../components/Toast.js";
|
|
2
|
+
import { createContext as t, useContext as n, useMemo as r } from "react";
|
|
3
|
+
import { MemoryRouter as i } from "react-router-dom";
|
|
4
|
+
import { QueryClient as a, QueryClientProvider as o } from "@tanstack/react-query";
|
|
5
|
+
import { PermissionProvider as s } from "@burdenoff/fe-libs/shared/providers/shell";
|
|
6
|
+
import { jsx as c } from "react/jsx-runtime";
|
|
7
|
+
//#region src/admin/providers/AdminProvider.tsx
|
|
8
|
+
var l = t(null), u = () => {
|
|
9
|
+
let e = n(l);
|
|
10
|
+
if (!e) throw Error("useAdmin must be used within AdminProvider");
|
|
11
|
+
return e;
|
|
12
|
+
}, d = (t) => {
|
|
13
|
+
let { children: n, basePath: u, navigate: d, currentUser: f, tenantId: p, apiGatewayUrl: m, authToken: h, defaultView: g, onTenantSelect: _, onUserSelect: v } = t, y = {
|
|
14
|
+
basePath: u,
|
|
15
|
+
navigate: d,
|
|
16
|
+
currentUser: f,
|
|
17
|
+
tenantId: p,
|
|
18
|
+
apiGatewayUrl: m,
|
|
19
|
+
authToken: h,
|
|
20
|
+
defaultView: g,
|
|
21
|
+
onTenantSelect: _,
|
|
22
|
+
onUserSelect: v
|
|
23
|
+
}, b = /* @__PURE__ */ c(o, {
|
|
24
|
+
client: r(() => new a({ defaultOptions: { queries: {
|
|
25
|
+
retry: 1,
|
|
26
|
+
refetchOnWindowFocus: !1,
|
|
27
|
+
staleTime: 300 * 1e3
|
|
28
|
+
} } }), []),
|
|
29
|
+
children: /* @__PURE__ */ c(e, { children: /* @__PURE__ */ c(l.Provider, {
|
|
30
|
+
value: y,
|
|
31
|
+
children: /* @__PURE__ */ c(s, {
|
|
32
|
+
scopeId: p ?? null,
|
|
33
|
+
gateway: "global",
|
|
34
|
+
children: n
|
|
35
|
+
})
|
|
36
|
+
}) })
|
|
37
|
+
});
|
|
38
|
+
return u ? b : /* @__PURE__ */ c(i, { children: b });
|
|
39
|
+
};
|
|
40
|
+
//#endregion
|
|
41
|
+
export { d as AdminProvider, u as useAdmin };
|
|
42
|
+
|
|
43
|
+
//# sourceMappingURL=AdminProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AdminProvider.js","names":[],"sources":["../../../src/admin/providers/AdminProvider.tsx"],"sourcesContent":["import type { FC, PropsWithChildren } from 'react';\nimport { createContext, useContext, useMemo } from 'react';\nimport { MemoryRouter } from 'react-router-dom';\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\nimport { PermissionProvider } from '@burdenoff/fe-libs/shared/providers/shell';\nimport type { AdminRootProps } from '../types';\nimport { ToastProvider } from '../components/Toast';\n\n/**\n * Context value for Admin microfrontend\n */\ntype AdminContextValue = AdminRootProps;\n\nconst AdminContext = createContext<AdminContextValue | null>(null);\n\n/**\n * Hook to access Admin context\n */\nexport const useAdmin = () => {\n const context = useContext(AdminContext);\n if (!context) {\n throw new Error('useAdmin must be used within AdminProvider');\n }\n return context;\n};\n\n/**\n * Provider component for Admin microfrontend\n * Sets up routing, context, and React Query client\n */\nexport const AdminProvider: FC<PropsWithChildren<AdminRootProps>> = (props) => {\n const {\n children,\n basePath,\n navigate,\n currentUser,\n tenantId,\n apiGatewayUrl,\n authToken,\n defaultView,\n onTenantSelect,\n onUserSelect,\n } = props;\n\n const contextValue: AdminContextValue = {\n basePath,\n navigate,\n currentUser,\n tenantId,\n apiGatewayUrl,\n authToken,\n defaultView,\n onTenantSelect,\n onUserSelect,\n };\n\n // Create QueryClient instance (memoized to avoid recreation on re-renders)\n const queryClient = useMemo(\n () =>\n new QueryClient({\n defaultOptions: {\n queries: {\n retry: 1,\n refetchOnWindowFocus: false,\n staleTime: 5 * 60 * 1000, // 5 minutes\n },\n },\n }),\n []\n );\n\n // Wrap content with QueryClientProvider, PermissionProvider and ToastProvider\n const content = (\n <QueryClientProvider client={queryClient}>\n <ToastProvider>\n <AdminContext.Provider value={contextValue}>\n {/* scopeId is the host shell's tenantId for context; gateway=\"global\" ensures\n permissions are fetched from the global RBAC service, not workspace-scoped */}\n <PermissionProvider scopeId={tenantId ?? null} gateway=\"global\">\n {children}\n </PermissionProvider>\n </AdminContext.Provider>\n </ToastProvider>\n </QueryClientProvider>\n );\n\n // When integrated into a shell (basePath provided), the shell already has a router\n // so we don't create another one. When standalone (no basePath), use MemoryRouter.\n if (basePath) {\n // Integrated mode: shell already has BrowserRouter, don't create nested router\n return content;\n }\n\n // Standalone mode: create MemoryRouter for independent operation\n return <MemoryRouter>{content}</MemoryRouter>;\n};\n"],"mappings":";;;;;;;AAaA,IAAM,IAAe,EAAwC,KAAK,EAKrD,UAAiB;CAC5B,IAAM,IAAU,EAAW,EAAa;AACxC,KAAI,CAAC,EACH,OAAU,MAAM,6CAA6C;AAE/D,QAAO;GAOI,KAAwD,MAAU;CAC7E,IAAM,EACJ,aACA,aACA,aACA,gBACA,aACA,kBACA,cACA,gBACA,mBACA,oBACE,GAEE,IAAkC;EACtC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,EAkBK,IACJ,kBAAC,GAAD;EAAqB,QAhBH,QAEhB,IAAI,EAAY,EACd,gBAAgB,EACd,SAAS;GACP,OAAO;GACP,sBAAsB;GACtB,WAAW,MAAS;GACrB,EACF,EACF,CAAC,EACJ,EAAE,CACH;YAKG,kBAAC,GAAD,EAAA,UACE,kBAAC,EAAa,UAAd;GAAuB,OAAO;aAG5B,kBAAC,GAAD;IAAoB,SAAS,KAAY;IAAM,SAAQ;IACpD;IACkB,CAAA;GACC,CAAA,EACV,CAAA;EACI,CAAA;AAWxB,QANI,IAEK,IAIF,kBAAC,GAAD,EAAA,UAAe,GAAuB,CAAA"}
|