@nextsparkjs/core 0.1.0-beta.191 → 0.1.0-beta.192
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 +1 -1
- package/dist/components/app/layouts/CurrentYear.d.ts +10 -0
- package/dist/components/app/layouts/CurrentYear.d.ts.map +1 -0
- package/dist/components/app/layouts/CurrentYear.js +8 -0
- package/dist/components/app/layouts/PublicFooter.d.ts.map +1 -1
- package/dist/components/app/layouts/PublicFooter.js +3 -3
- package/dist/components/app/layouts/PublicNavbar.js +1 -1
- package/dist/components/auth/DevKeyring.js +1 -1
- package/dist/components/auth/forms/LoginForm.d.ts.map +1 -1
- package/dist/components/auth/forms/LoginForm.js +47 -12
- package/dist/components/auth/forms/SignupForm.d.ts.map +1 -1
- package/dist/components/auth/forms/SignupForm.js +57 -5
- package/dist/components/dashboard/block-editor/block-picker.d.ts.map +1 -1
- package/dist/components/dashboard/block-editor/block-picker.js +2 -1
- package/dist/components/dashboard/block-editor/pattern-card.js +2 -2
- package/dist/components/dashboard/block-editor/pattern-reference-preview.js +2 -2
- package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.d.ts +5 -0
- package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.d.ts.map +1 -0
- package/dist/components/dashboard/layouts/AuthenticatedDashboardLayout.js +37 -0
- package/dist/components/dashboard/layouts/Sidebar.js +1 -1
- package/dist/components/dashboard/layouts/TopNavbar.js +1 -1
- package/dist/components/dashboard/mobile/MobileBottomNav.js +1 -1
- package/dist/components/dashboard/mobile/MobileMoreSheet.js +1 -1
- package/dist/components/dashboard/mobile/MobileTopBar.js +5 -5
- package/dist/components/dashboard/mobile/QuickCreateSheet.js +5 -5
- package/dist/components/dashboard/navigation/DynamicNavigation.d.ts.map +1 -1
- package/dist/components/dashboard/navigation/DynamicNavigation.js +6 -9
- package/dist/components/devtools/BlockDetailViewer.js +2 -2
- package/dist/components/devtools/BlocksViewer.js +1 -1
- package/dist/components/docs/docs-sidebar.d.ts.map +1 -1
- package/dist/components/docs/docs-sidebar.js +2 -5
- package/dist/components/entities/EntityChildManager.js +8 -8
- package/dist/components/entities/EntityDetail.js +8 -8
- package/dist/components/entities/ErrorBoundary.js +2 -2
- package/dist/components/entities/wrappers/EntityDetailWrapper.js +22 -22
- package/dist/components/entities/wrappers/EntityFormWrapper.d.ts +1 -1
- package/dist/components/entities/wrappers/EntityFormWrapper.js +3 -3
- package/dist/components/entities/wrappers/EntityListWrapper.js +2 -2
- package/dist/components/settings/layouts/SettingsSidebar.js +2 -2
- package/dist/components/teams/InviteMemberDialog.js +1 -1
- package/dist/components/teams/TeamMembersList.js +1 -1
- package/dist/components/ui/accordion.js +1 -1
- package/dist/components/ui/avatar.js +1 -1
- package/dist/components/ui/badge.js +1 -1
- package/dist/components/ui/button.js +1 -1
- package/dist/components/ui/calendar.d.ts.map +1 -1
- package/dist/components/ui/calendar.js +22 -30
- package/dist/components/ui/card.js +1 -1
- package/dist/components/ui/checkbox.js +1 -1
- package/dist/components/ui/command.d.ts +7 -7
- package/dist/components/ui/input.js +1 -1
- package/dist/components/ui/label.js +1 -1
- package/dist/components/ui/progress.js +1 -1
- package/dist/components/ui/relation-display.js +1 -1
- package/dist/components/ui/separator.js +1 -1
- package/dist/components/ui/sheet.d.ts +1 -1
- package/dist/components/ui/simple-relation-select.js +1 -1
- package/dist/components/ui/skeleton.js +1 -1
- package/dist/components/ui/slider.js +1 -1
- package/dist/components/ui/switch.js +1 -1
- package/dist/components/ui/tabs.js +1 -1
- package/dist/components/ui/textarea.js +1 -1
- package/dist/contexts/TeamContext.js +1 -1
- package/dist/emails/otp-verification.d.ts +1 -1
- package/dist/emails/reset-password.d.ts +1 -1
- package/dist/emails/team-invitation.d.ts +1 -1
- package/dist/emails/verify-email.d.ts +2 -2
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/useAccountPreferencesSync.d.ts.map +1 -1
- package/dist/hooks/useAccountPreferencesSync.js +1 -1
- package/dist/hooks/useAuth.d.ts.map +1 -1
- package/dist/hooks/useAuth.js +1 -1
- package/dist/hooks/useAuthReadiness.d.ts +15 -0
- package/dist/hooks/useAuthReadiness.d.ts.map +1 -0
- package/dist/hooks/useAuthReadiness.js +62 -0
- package/dist/hooks/useContentTranslation.d.ts +7 -7
- package/dist/hooks/useContextAwareTranslations.js +10 -10
- package/dist/hooks/useEnabledEntities.js +2 -2
- package/dist/hooks/useEnsureUserMetadata.js +1 -1
- package/dist/hooks/useEntityConfig.js +4 -4
- package/dist/hooks/useEntityTranslations.d.ts.map +1 -1
- package/dist/hooks/useEntityTranslations.js +6 -2
- package/dist/hooks/useLocale.d.ts +3 -1
- package/dist/hooks/useLocale.d.ts.map +1 -1
- package/dist/hooks/useLocale.js +1 -1
- package/dist/hooks/useSubscription.d.ts +1 -1
- package/dist/hooks/useSubscription.d.ts.map +1 -1
- package/dist/hooks/useTeamsConfig.js +1 -1
- package/dist/hooks/useTranslationPreload.js +5 -5
- package/dist/i18n.d.ts +1 -14
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +13 -54
- package/dist/lib/api/auth/devtools-auth.d.ts +2 -2
- package/dist/lib/api/auth/devtools-auth.d.ts.map +1 -1
- package/dist/lib/api/auth/devtools-auth.js +3 -3
- package/dist/lib/api/entities.js +5 -5
- package/dist/lib/api/entity/audit-log.d.ts.map +1 -1
- package/dist/lib/api/entity/audit-log.js +12 -3
- package/dist/lib/api/entity/generic-handler.d.ts.map +1 -1
- package/dist/lib/api/entity/generic-handler.js +24 -38
- package/dist/lib/api/entity/resolver.d.ts +1 -3
- package/dist/lib/api/entity/resolver.d.ts.map +1 -1
- package/dist/lib/api/entity/resolver.js +0 -25
- package/dist/lib/api/helpers.d.ts +2 -2
- package/dist/lib/api/helpers.d.ts.map +1 -1
- package/dist/lib/api/helpers.js +1 -4
- package/dist/lib/api/keys.js +1 -1
- package/dist/lib/api/rate-limit.d.ts.map +1 -1
- package/dist/lib/api/rate-limit.js +2 -0
- package/dist/lib/auth/readiness.d.ts +92 -0
- package/dist/lib/auth/readiness.d.ts.map +1 -0
- package/dist/lib/auth/readiness.js +192 -0
- package/dist/lib/auth/request-session.d.ts +15 -0
- package/dist/lib/auth/request-session.d.ts.map +1 -0
- package/dist/lib/auth/request-session.js +22 -0
- package/dist/lib/auth/runtime-readiness.d.ts +49 -0
- package/dist/lib/auth/runtime-readiness.d.ts.map +1 -0
- package/dist/lib/auth/runtime-readiness.js +183 -0
- package/dist/lib/auth-client.d.ts +2 -2
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +16 -12
- package/dist/lib/billing/gateways/factory.d.ts +1 -1
- package/dist/lib/billing/schema.d.ts +5 -5
- package/dist/lib/config/app.config.d.ts.map +1 -1
- package/dist/lib/config/app.config.js +3 -52
- package/dist/lib/config/config-client.d.ts +554 -0
- package/dist/lib/config/config-client.d.ts.map +1 -0
- package/dist/lib/config/config-client.js +68 -0
- package/dist/lib/config/config-sync.d.ts.map +1 -1
- package/dist/lib/config/config-sync.js +4 -28
- package/dist/lib/config/i18n-config-client.d.ts +9 -0
- package/dist/lib/config/i18n-config-client.d.ts.map +1 -0
- package/dist/lib/config/i18n-config-client.js +7 -0
- package/dist/lib/config/i18n.defaults.d.ts +7 -0
- package/dist/lib/config/i18n.defaults.d.ts.map +1 -0
- package/dist/lib/config/i18n.defaults.js +54 -0
- package/dist/lib/config/index.d.ts +2 -2
- package/dist/lib/config/index.d.ts.map +1 -1
- package/dist/lib/config/index.js +3 -2
- package/dist/lib/config/nextspark-types.d.ts +49 -20
- package/dist/lib/config/nextspark-types.d.ts.map +1 -1
- package/dist/lib/config/nextspark-types.js +174 -1
- package/dist/lib/config/public-config-client.d.ts +22 -0
- package/dist/lib/config/public-config-client.d.ts.map +1 -0
- package/dist/lib/config/public-config-client.js +25 -0
- package/dist/lib/config/types.d.ts +1 -1
- package/dist/lib/db.d.ts +1 -0
- package/dist/lib/db.d.ts.map +1 -1
- package/dist/lib/db.js +19 -9
- package/dist/lib/email/templates.d.ts +1 -1
- package/dist/lib/entities/client-config.d.ts +10 -0
- package/dist/lib/entities/client-config.d.ts.map +1 -0
- package/dist/lib/entities/client-config.js +44 -0
- package/dist/lib/entities/client-entity-meta.d.ts +41 -0
- package/dist/lib/entities/client-entity-meta.d.ts.map +1 -0
- package/dist/lib/entities/client-entity-meta.js +30 -0
- package/dist/lib/entities/portable/media-ref.d.ts +21 -0
- package/dist/lib/entities/portable/media-ref.d.ts.map +1 -0
- package/dist/lib/entities/portable/media-ref.js +13 -0
- package/dist/lib/entities/portable/response-shape.d.ts +57 -0
- package/dist/lib/entities/portable/response-shape.d.ts.map +1 -0
- package/dist/lib/entities/portable/response-shape.js +50 -0
- package/dist/lib/entities/portable/schema-generator.d.ts +48 -0
- package/dist/lib/entities/portable/schema-generator.d.ts.map +1 -0
- package/dist/lib/entities/portable/schema-generator.js +758 -0
- package/dist/lib/entities/portable/system-fields.d.ts +10 -0
- package/dist/lib/entities/portable/system-fields.d.ts.map +1 -0
- package/dist/lib/entities/portable/system-fields.js +4 -0
- package/dist/lib/entities/portable/types.d.ts +81 -0
- package/dist/lib/entities/portable/types.d.ts.map +1 -0
- package/dist/lib/entities/queries.d.ts +2 -2
- package/dist/lib/entities/queries.d.ts.map +1 -1
- package/dist/lib/entities/queries.js +2 -2
- package/dist/lib/entities/registry.client.js +2 -2
- package/dist/lib/entities/registry.d.ts +1 -1
- package/dist/lib/entities/registry.js +2 -2
- package/dist/lib/entities/schema-generator.d.ts +6 -19
- package/dist/lib/entities/schema-generator.d.ts.map +1 -1
- package/dist/lib/entities/schema-generator.js +1 -764
- package/dist/lib/entities/system-fields.d.ts +3 -5
- package/dist/lib/entities/system-fields.d.ts.map +1 -1
- package/dist/lib/entities/system-fields.js +1 -1
- package/dist/lib/entities/types.d.ts +1 -1
- package/dist/lib/entities/types.d.ts.map +1 -1
- package/dist/lib/i18n/client-messages.d.ts +49 -0
- package/dist/lib/i18n/client-messages.d.ts.map +1 -0
- package/dist/lib/i18n/client-messages.js +80 -0
- package/dist/lib/locale-client.d.ts +1 -2
- package/dist/lib/locale-client.d.ts.map +1 -1
- package/dist/lib/locale-client.js +1 -1
- package/dist/lib/media/schemas.d.ts +1 -1
- package/dist/lib/middleware/index.d.ts +6 -19
- package/dist/lib/middleware/index.d.ts.map +1 -1
- package/dist/lib/middleware/index.js +11 -14
- package/dist/lib/plugins/env-loader.d.ts +1 -1
- package/dist/lib/plugins/env-loader.js +1 -1
- package/dist/lib/plugins/nav-items.d.ts +3 -0
- package/dist/lib/plugins/nav-items.d.ts.map +1 -0
- package/dist/lib/plugins/nav-items.js +16 -0
- package/dist/lib/scheduled-actions/initializer.d.ts +7 -7
- package/dist/lib/scheduled-actions/initializer.d.ts.map +1 -1
- package/dist/lib/scheduled-actions/initializer.js +6 -12
- package/dist/lib/selectors/auth-sel.d.ts +8 -0
- package/dist/lib/selectors/auth-sel.d.ts.map +1 -0
- package/dist/lib/selectors/auth-sel.js +6 -0
- package/dist/lib/selectors/core-selectors.d.ts +12 -0
- package/dist/lib/selectors/core-selectors.d.ts.map +1 -1
- package/dist/lib/selectors/domains/auth.selectors.d.ts +12 -0
- package/dist/lib/selectors/domains/auth.selectors.d.ts.map +1 -1
- package/dist/lib/selectors/domains/auth.selectors.js +18 -3
- package/dist/lib/selectors/selectors.d.ts +24 -0
- package/dist/lib/selectors/selectors.d.ts.map +1 -1
- package/dist/lib/services/index.d.ts +1 -5
- package/dist/lib/services/index.d.ts.map +1 -1
- package/dist/lib/services/index.js +1 -14
- package/dist/lib/services/plugin.service.d.ts +20 -3
- package/dist/lib/services/plugin.service.d.ts.map +1 -1
- package/dist/lib/services/plugin.service.js +31 -5
- package/dist/lib/services/theme.service.d.ts +8 -87
- package/dist/lib/services/theme.service.d.ts.map +1 -1
- package/dist/lib/services/theme.service.js +16 -128
- package/dist/lib/teams/dashboard-team.d.ts +1 -3
- package/dist/lib/teams/dashboard-team.d.ts.map +1 -1
- package/dist/lib/teams/dashboard-team.js +2 -4
- package/dist/lib/teams/schema.d.ts +1 -1
- package/dist/lib/theme/ThemeProvider.d.ts +2 -5
- package/dist/lib/theme/ThemeProvider.d.ts.map +1 -1
- package/dist/lib/theme/ThemeProvider.js +21 -66
- package/dist/lib/theme/forced-theme.d.ts +1 -1
- package/dist/lib/theme/get-default-theme-mode.d.ts.map +1 -1
- package/dist/lib/theme/get-default-theme-mode.js +2 -3
- package/dist/lib/theme/import-resolver.js +2 -2
- package/dist/lib/theme/override-resolver.js +9 -9
- package/dist/lib/theme/theme-styles.d.ts +12 -0
- package/dist/lib/theme/theme-styles.d.ts.map +1 -0
- package/dist/lib/theme/theme-styles.js +58 -0
- package/dist/lib/theme/types.d.ts +0 -2
- package/dist/lib/theme/types.d.ts.map +1 -1
- package/dist/lib/translations/i18n-integration.d.ts.map +1 -1
- package/dist/lib/translations/i18n-integration.js +11 -11
- package/dist/lib/translations/registry.d.ts +1 -1
- package/dist/lib/translations/registry.d.ts.map +1 -1
- package/dist/lib/translations/registry.js +10 -10
- package/dist/lib/utils/environment.server.d.ts +0 -1
- package/dist/lib/utils/environment.server.d.ts.map +1 -1
- package/dist/lib/utils/environment.server.js +5 -1
- package/dist/lib/utils/uuid.d.ts +2 -0
- package/dist/lib/utils/uuid.d.ts.map +1 -0
- package/dist/lib/utils/uuid.js +7 -0
- package/dist/lib/validation/invoices.d.ts +2 -2
- package/dist/messages/de/auth.json +11 -1
- package/dist/messages/de/index.d.ts +10 -0
- package/dist/messages/de/index.d.ts.map +1 -1
- package/dist/messages/en/auth.json +11 -1
- package/dist/messages/en/devtools.json +1 -1
- package/dist/messages/en/index.d.ts +10 -0
- package/dist/messages/en/index.d.ts.map +1 -1
- package/dist/messages/es/auth.json +11 -1
- package/dist/messages/es/index.d.ts +10 -0
- package/dist/messages/es/index.d.ts.map +1 -1
- package/dist/messages/fr/auth.json +11 -1
- package/dist/messages/fr/index.d.ts +10 -0
- package/dist/messages/fr/index.d.ts.map +1 -1
- package/dist/messages/it/auth.json +11 -1
- package/dist/messages/it/index.d.ts +10 -0
- package/dist/messages/it/index.d.ts.map +1 -1
- package/dist/messages/pt/auth.json +11 -1
- package/dist/messages/pt/index.d.ts +10 -0
- package/dist/messages/pt/index.d.ts.map +1 -1
- package/dist/migrations/028_api_audit_log_insert_policy.sql +18 -0
- package/dist/migrations/090_sample_data.sql +2 -2
- package/dist/migrations/README.md +7 -7
- package/dist/nextspark-registries.d.ts +83 -44
- package/dist/providers/PluginProvider.js +2 -2
- package/dist/providers/static-intl-provider.d.ts +6 -0
- package/dist/providers/static-intl-provider.d.ts.map +1 -1
- package/dist/providers/static-intl-provider.js +7 -2
- package/dist/providers/theme-provider.d.ts.map +1 -1
- package/dist/providers/theme-provider.js +7 -1
- package/dist/routes/(auth)/accept-invite/[token]/page.d.ts +3 -0
- package/dist/routes/(auth)/accept-invite/[token]/page.d.ts.map +1 -0
- package/dist/routes/(auth)/accept-invite/[token]/page.js +240 -0
- package/dist/routes/(auth)/auth-error/page.d.ts +5 -0
- package/dist/routes/(auth)/auth-error/page.d.ts.map +1 -0
- package/dist/routes/(auth)/auth-error/page.js +12 -0
- package/dist/routes/(auth)/forgot-password/page.d.ts +3 -0
- package/dist/routes/(auth)/forgot-password/page.d.ts.map +1 -0
- package/dist/routes/(auth)/forgot-password/page.js +203 -0
- package/dist/routes/(auth)/layout.cc.d.ts +7 -0
- package/dist/routes/(auth)/layout.cc.d.ts.map +1 -0
- package/dist/routes/(auth)/layout.cc.js +5 -0
- package/dist/routes/(auth)/layout.d.ts +7 -0
- package/dist/routes/(auth)/layout.d.ts.map +1 -0
- package/dist/routes/(auth)/layout.js +4 -0
- package/dist/routes/(auth)/login/page.cc.d.ts +9 -0
- package/dist/routes/(auth)/login/page.cc.d.ts.map +1 -0
- package/dist/routes/(auth)/login/page.cc.js +1 -0
- package/dist/routes/(auth)/login/page.d.ts +6 -0
- package/dist/routes/(auth)/login/page.d.ts.map +1 -0
- package/dist/routes/(auth)/login/page.js +12 -0
- package/dist/routes/(auth)/reset-password/page.d.ts +3 -0
- package/dist/routes/(auth)/reset-password/page.d.ts.map +1 -0
- package/dist/routes/(auth)/reset-password/page.js +153 -0
- package/dist/routes/(auth)/signup/page.cc.d.ts +9 -0
- package/dist/routes/(auth)/signup/page.cc.d.ts.map +1 -0
- package/dist/routes/(auth)/signup/page.cc.js +1 -0
- package/dist/routes/(auth)/signup/page.d.ts +6 -0
- package/dist/routes/(auth)/signup/page.d.ts.map +1 -0
- package/dist/routes/(auth)/signup/page.js +34 -0
- package/dist/routes/(auth)/verify-email/page.d.ts +3 -0
- package/dist/routes/(auth)/verify-email/page.d.ts.map +1 -0
- package/dist/routes/(auth)/verify-email/page.js +138 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.cc.d.ts +12 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.cc.d.ts.map +1 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.cc.js +64 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.d.ts +13 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.d.ts.map +1 -0
- package/dist/routes/(public)/docs/[section]/[page]/page.js +64 -0
- package/dist/routes/(public)/docs/layout.d.ts +4 -0
- package/dist/routes/(public)/docs/layout.d.ts.map +1 -0
- package/dist/routes/(public)/docs/layout.js +15 -0
- package/dist/routes/(public)/docs/page.d.ts +4 -0
- package/dist/routes/(public)/docs/page.d.ts.map +1 -0
- package/dist/routes/(public)/docs/page.js +53 -0
- package/dist/routes/(public)/layout.cc.d.ts +7 -0
- package/dist/routes/(public)/layout.cc.d.ts.map +1 -0
- package/dist/routes/(public)/layout.cc.js +5 -0
- package/dist/routes/(public)/layout.d.ts +7 -0
- package/dist/routes/(public)/layout.d.ts.map +1 -0
- package/dist/routes/(public)/layout.js +4 -0
- package/dist/routes/(public)/page.d.ts +12 -0
- package/dist/routes/(public)/page.d.ts.map +1 -0
- package/dist/routes/(public)/page.js +5 -0
- package/dist/routes/403/page.d.ts +3 -0
- package/dist/routes/403/page.d.ts.map +1 -0
- package/dist/routes/403/page.js +51 -0
- package/dist/routes/_internal/area-access.d.ts +61 -0
- package/dist/routes/_internal/area-access.d.ts.map +1 -0
- package/dist/routes/_internal/area-access.js +84 -0
- package/dist/routes/_internal/auth-layout.cc.d.ts +8 -0
- package/dist/routes/_internal/auth-layout.cc.d.ts.map +1 -0
- package/dist/routes/_internal/auth-layout.cc.js +2 -0
- package/dist/routes/_internal/auth-layout.d.ts +19 -0
- package/dist/routes/_internal/auth-layout.d.ts.map +1 -0
- package/dist/routes/_internal/auth-layout.js +22 -0
- package/dist/routes/_internal/billing-webhooks.d.ts +19 -0
- package/dist/routes/_internal/billing-webhooks.d.ts.map +1 -0
- package/dist/routes/_internal/billing-webhooks.js +14 -0
- package/dist/routes/_internal/default-auth-layout.d.ts +8 -0
- package/dist/routes/_internal/default-auth-layout.d.ts.map +1 -0
- package/dist/routes/_internal/default-auth-layout.js +15 -0
- package/dist/routes/_internal/default-public-layout.d.ts +8 -0
- package/dist/routes/_internal/default-public-layout.d.ts.map +1 -0
- package/dist/routes/_internal/default-public-layout.js +13 -0
- package/dist/routes/_internal/devtools-layout.cc.d.ts +19 -0
- package/dist/routes/_internal/devtools-layout.cc.d.ts.map +1 -0
- package/dist/routes/_internal/devtools-layout.cc.js +5 -0
- package/dist/routes/_internal/devtools-layout.d.ts +36 -0
- package/dist/routes/_internal/devtools-layout.d.ts.map +1 -0
- package/dist/routes/_internal/devtools-layout.js +41 -0
- package/dist/routes/_internal/entity-create-route.d.ts +18 -0
- package/dist/routes/_internal/entity-create-route.d.ts.map +1 -0
- package/dist/routes/_internal/entity-create-route.js +11 -0
- package/dist/routes/_internal/entity-create-view.d.ts +8 -0
- package/dist/routes/_internal/entity-create-view.d.ts.map +1 -0
- package/dist/routes/_internal/entity-create-view.js +72 -0
- package/dist/routes/_internal/entity-dashboard.d.ts +9 -0
- package/dist/routes/_internal/entity-dashboard.d.ts.map +1 -0
- package/dist/routes/_internal/entity-dashboard.js +8 -0
- package/dist/routes/_internal/entity-detail-metadata.d.ts +7 -0
- package/dist/routes/_internal/entity-detail-metadata.d.ts.map +1 -0
- package/dist/routes/_internal/entity-detail-metadata.js +4 -0
- package/dist/routes/_internal/entity-detail-route.d.ts +24 -0
- package/dist/routes/_internal/entity-detail-route.d.ts.map +1 -0
- package/dist/routes/_internal/entity-detail-route.js +14 -0
- package/dist/routes/_internal/entity-edit-route.d.ts +23 -0
- package/dist/routes/_internal/entity-edit-route.d.ts.map +1 -0
- package/dist/routes/_internal/entity-edit-route.js +12 -0
- package/dist/routes/_internal/entity-edit-view.d.ts +9 -0
- package/dist/routes/_internal/entity-edit-view.d.ts.map +1 -0
- package/dist/routes/_internal/entity-edit-view.js +88 -0
- package/dist/routes/_internal/entity-error.d.ts +7 -0
- package/dist/routes/_internal/entity-error.d.ts.map +1 -0
- package/dist/routes/_internal/entity-error.js +41 -0
- package/dist/routes/_internal/entity-layout-route.d.ts +13 -0
- package/dist/routes/_internal/entity-layout-route.d.ts.map +1 -0
- package/dist/routes/_internal/entity-layout-route.js +7 -0
- package/dist/routes/_internal/entity-list-metadata.d.ts +7 -0
- package/dist/routes/_internal/entity-list-metadata.d.ts.map +1 -0
- package/dist/routes/_internal/entity-list-metadata.js +4 -0
- package/dist/routes/_internal/entity-list-route.d.ts +31 -0
- package/dist/routes/_internal/entity-list-route.d.ts.map +1 -0
- package/dist/routes/_internal/entity-list-route.js +11 -0
- package/dist/routes/_internal/entity-loading.d.ts +3 -0
- package/dist/routes/_internal/entity-loading.d.ts.map +1 -0
- package/dist/routes/_internal/entity-loading.js +48 -0
- package/dist/routes/_internal/entity-permission-layout.d.ts +10 -0
- package/dist/routes/_internal/entity-permission-layout.d.ts.map +1 -0
- package/dist/routes/_internal/entity-permission-layout.js +50 -0
- package/dist/routes/_internal/group-layouts.cc.d.ts +35 -0
- package/dist/routes/_internal/group-layouts.cc.d.ts.map +1 -0
- package/dist/routes/_internal/group-layouts.cc.js +37 -0
- package/dist/routes/_internal/polar-webhook.d.ts +27 -0
- package/dist/routes/_internal/polar-webhook.d.ts.map +1 -0
- package/dist/routes/_internal/polar-webhook.js +321 -0
- package/dist/routes/_internal/public-archive-route.d.ts +20 -0
- package/dist/routes/_internal/public-archive-route.d.ts.map +1 -0
- package/dist/routes/_internal/public-archive-route.js +29 -0
- package/dist/routes/_internal/public-entity-shared.d.ts +61 -0
- package/dist/routes/_internal/public-entity-shared.d.ts.map +1 -0
- package/dist/routes/_internal/public-entity-shared.js +57 -0
- package/dist/routes/_internal/public-item-route.cc.d.ts +5 -0
- package/dist/routes/_internal/public-item-route.cc.d.ts.map +1 -0
- package/dist/routes/_internal/public-item-route.cc.js +32 -0
- package/dist/routes/_internal/public-item-route.d.ts +49 -0
- package/dist/routes/_internal/public-item-route.d.ts.map +1 -0
- package/dist/routes/_internal/public-item-route.js +60 -0
- package/dist/routes/_internal/public-layout.cc.d.ts +8 -0
- package/dist/routes/_internal/public-layout.cc.d.ts.map +1 -0
- package/dist/routes/_internal/public-layout.cc.js +2 -0
- package/dist/routes/_internal/public-layout.d.ts +19 -0
- package/dist/routes/_internal/public-layout.d.ts.map +1 -0
- package/dist/routes/_internal/public-layout.js +18 -0
- package/dist/routes/_internal/root-layout.d.ts +13 -0
- package/dist/routes/_internal/root-layout.d.ts.map +1 -0
- package/dist/routes/_internal/root-layout.js +7 -0
- package/dist/routes/_internal/root-layout.ppr.d.ts +11 -0
- package/dist/routes/_internal/root-layout.ppr.d.ts.map +1 -0
- package/dist/routes/_internal/root-layout.ppr.js +7 -0
- package/dist/routes/_internal/superadmin-layout.cc.d.ts +19 -0
- package/dist/routes/_internal/superadmin-layout.cc.d.ts.map +1 -0
- package/dist/routes/_internal/superadmin-layout.cc.js +5 -0
- package/dist/routes/_internal/superadmin-layout.d.ts +35 -0
- package/dist/routes/_internal/superadmin-layout.d.ts.map +1 -0
- package/dist/routes/_internal/superadmin-layout.js +53 -0
- package/dist/routes/api/auth/[...all]/route.d.ts +9 -0
- package/dist/routes/api/auth/[...all]/route.d.ts.map +1 -0
- package/dist/routes/api/auth/[...all]/route.js +124 -0
- package/dist/routes/api/cron/billing/lifecycle/route.d.ts +22 -0
- package/dist/routes/api/cron/billing/lifecycle/route.d.ts.map +1 -0
- package/dist/routes/api/cron/billing/lifecycle/route.js +60 -0
- package/dist/routes/api/csp-report/route.d.ts +4 -0
- package/dist/routes/api/csp-report/route.d.ts.map +1 -0
- package/dist/routes/api/csp-report/route.js +111 -0
- package/dist/routes/api/devtools/config/entities/route.d.ts +9 -0
- package/dist/routes/api/devtools/config/entities/route.d.ts.map +1 -0
- package/dist/routes/api/devtools/config/entities/route.js +63 -0
- package/dist/routes/api/devtools/config/theme/route.d.ts +9 -0
- package/dist/routes/api/devtools/config/theme/route.d.ts.map +1 -0
- package/dist/routes/api/devtools/config/theme/route.js +48 -0
- package/dist/routes/api/devtools/tests/[...path]/route.d.ts +15 -0
- package/dist/routes/api/devtools/tests/[...path]/route.d.ts.map +1 -0
- package/dist/routes/api/devtools/tests/[...path]/route.js +93 -0
- package/dist/routes/api/devtools/tests/route.d.ts +9 -0
- package/dist/routes/api/devtools/tests/route.d.ts.map +1 -0
- package/dist/routes/api/devtools/tests/route.js +89 -0
- package/dist/routes/api/health/route.d.ts +3 -0
- package/dist/routes/api/health/route.d.ts.map +1 -0
- package/dist/routes/api/health/route.js +39 -0
- package/dist/routes/api/internal/user-metadata/route.d.ts +3 -0
- package/dist/routes/api/internal/user-metadata/route.d.ts.map +1 -0
- package/dist/routes/api/internal/user-metadata/route.js +33 -0
- package/dist/routes/api/mcp/route.d.ts +27 -0
- package/dist/routes/api/mcp/route.d.ts.map +1 -0
- package/dist/routes/api/mcp/route.js +108 -0
- package/dist/routes/api/superadmin/subscriptions/route.d.ts +9 -0
- package/dist/routes/api/superadmin/subscriptions/route.d.ts.map +1 -0
- package/dist/routes/api/superadmin/subscriptions/route.js +235 -0
- package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts +13 -0
- package/dist/routes/api/superadmin/teams/[teamId]/route.d.ts.map +1 -0
- package/dist/routes/api/superadmin/teams/[teamId]/route.js +204 -0
- package/dist/routes/api/superadmin/teams/route.d.ts +20 -0
- package/dist/routes/api/superadmin/teams/route.d.ts.map +1 -0
- package/dist/routes/api/superadmin/teams/route.js +131 -0
- package/dist/routes/api/superadmin/users/[userId]/route.d.ts +45 -0
- package/dist/routes/api/superadmin/users/[userId]/route.d.ts.map +1 -0
- package/dist/routes/api/superadmin/users/[userId]/route.js +362 -0
- package/dist/routes/api/superadmin/users/route.d.ts +37 -0
- package/dist/routes/api/superadmin/users/route.d.ts.map +1 -0
- package/dist/routes/api/superadmin/users/route.js +239 -0
- package/dist/routes/api/user/delete-account/route.d.ts +3 -0
- package/dist/routes/api/user/delete-account/route.d.ts.map +1 -0
- package/dist/routes/api/user/delete-account/route.js +44 -0
- package/dist/routes/api/user/plan-flags/route.d.ts +23 -0
- package/dist/routes/api/user/plan-flags/route.d.ts.map +1 -0
- package/dist/routes/api/user/plan-flags/route.js +201 -0
- package/dist/routes/api/user/profile/route.d.ts +4 -0
- package/dist/routes/api/user/profile/route.d.ts.map +1 -0
- package/dist/routes/api/user/profile/route.js +96 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts +20 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/[childId]/route.js +144 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts +19 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/[entity]/[id]/child/[childType]/route.js +249 -0
- package/dist/routes/api/v1/[entity]/[id]/route.d.ts +35 -0
- package/dist/routes/api/v1/[entity]/[id]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/[entity]/[id]/route.js +14 -0
- package/dist/routes/api/v1/[entity]/route.d.ts +17 -0
- package/dist/routes/api/v1/[entity]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/[entity]/route.js +12 -0
- package/dist/routes/api/v1/api-keys/[id]/route.d.ts +30 -0
- package/dist/routes/api/v1/api-keys/[id]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/api-keys/[id]/route.js +189 -0
- package/dist/routes/api/v1/api-keys/route.d.ts +5 -0
- package/dist/routes/api/v1/api-keys/route.d.ts.map +1 -0
- package/dist/routes/api/v1/api-keys/route.js +177 -0
- package/dist/routes/api/v1/auth/signup-with-invite/route.d.ts +4 -0
- package/dist/routes/api/v1/auth/signup-with-invite/route.d.ts.map +1 -0
- package/dist/routes/api/v1/auth/signup-with-invite/route.js +187 -0
- package/dist/routes/api/v1/billing/cancel/route.d.ts +19 -0
- package/dist/routes/api/v1/billing/cancel/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/cancel/route.js +153 -0
- package/dist/routes/api/v1/billing/change-plan/route.d.ts +19 -0
- package/dist/routes/api/v1/billing/change-plan/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/change-plan/route.js +63 -0
- package/dist/routes/api/v1/billing/check-action/route.d.ts +13 -0
- package/dist/routes/api/v1/billing/check-action/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/check-action/route.js +55 -0
- package/dist/routes/api/v1/billing/checkout/route.d.ts +11 -0
- package/dist/routes/api/v1/billing/checkout/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/checkout/route.js +114 -0
- package/dist/routes/api/v1/billing/plans/route.d.ts +10 -0
- package/dist/routes/api/v1/billing/plans/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/plans/route.js +61 -0
- package/dist/routes/api/v1/billing/portal/route.d.ts +11 -0
- package/dist/routes/api/v1/billing/portal/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/portal/route.js +66 -0
- package/dist/routes/api/v1/billing/webhooks/polar/route.d.ts +17 -0
- package/dist/routes/api/v1/billing/webhooks/polar/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/webhooks/polar/route.js +3 -0
- package/dist/routes/api/v1/billing/webhooks/stripe/route.d.ts +17 -0
- package/dist/routes/api/v1/billing/webhooks/stripe/route.d.ts.map +1 -0
- package/dist/routes/api/v1/billing/webhooks/stripe/route.js +8 -0
- package/dist/routes/api/v1/blocks/[slug]/route.d.ts +7 -0
- package/dist/routes/api/v1/blocks/[slug]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/blocks/[slug]/route.js +25 -0
- package/dist/routes/api/v1/blocks/docs.md +173 -0
- package/dist/routes/api/v1/blocks/route.d.ts +3 -0
- package/dist/routes/api/v1/blocks/route.d.ts.map +1 -0
- package/dist/routes/api/v1/blocks/route.js +44 -0
- package/dist/routes/api/v1/blocks/validate/route.d.ts +3 -0
- package/dist/routes/api/v1/blocks/validate/route.d.ts.map +1 -0
- package/dist/routes/api/v1/blocks/validate/route.js +38 -0
- package/dist/routes/api/v1/cron/process/route.d.ts +20 -0
- package/dist/routes/api/v1/cron/process/route.d.ts.map +1 -0
- package/dist/routes/api/v1/cron/process/route.js +73 -0
- package/dist/routes/api/v1/devtools/blocks/route.d.ts +12 -0
- package/dist/routes/api/v1/devtools/blocks/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/blocks/route.js +60 -0
- package/dist/routes/api/v1/devtools/docs/route.d.ts +14 -0
- package/dist/routes/api/v1/devtools/docs/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/docs/route.js +108 -0
- package/dist/routes/api/v1/devtools/docs.md +204 -0
- package/dist/routes/api/v1/devtools/features/route.d.ts +12 -0
- package/dist/routes/api/v1/devtools/features/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/features/route.js +45 -0
- package/dist/routes/api/v1/devtools/flows/route.d.ts +12 -0
- package/dist/routes/api/v1/devtools/flows/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/flows/route.js +45 -0
- package/dist/routes/api/v1/devtools/presets.ts +113 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts +24 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/route.js +180 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts +12 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/scheduled-actions/run/route.js +82 -0
- package/dist/routes/api/v1/devtools/testing/route.d.ts +12 -0
- package/dist/routes/api/v1/devtools/testing/route.d.ts.map +1 -0
- package/dist/routes/api/v1/devtools/testing/route.js +64 -0
- package/dist/routes/api/v1/media/[id]/route.d.ts +47 -0
- package/dist/routes/api/v1/media/[id]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media/[id]/route.js +86 -0
- package/dist/routes/api/v1/media/[id]/tags/route.d.ts +45 -0
- package/dist/routes/api/v1/media/[id]/tags/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media/[id]/tags/route.js +126 -0
- package/dist/routes/api/v1/media/check-duplicates/route.d.ts +12 -0
- package/dist/routes/api/v1/media/check-duplicates/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media/check-duplicates/route.js +45 -0
- package/dist/routes/api/v1/media/route.d.ts +20 -0
- package/dist/routes/api/v1/media/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media/route.js +33 -0
- package/dist/routes/api/v1/media/upload/route.d.ts +24 -0
- package/dist/routes/api/v1/media/upload/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media/upload/route.js +196 -0
- package/dist/routes/api/v1/media-tags/route.d.ts +19 -0
- package/dist/routes/api/v1/media-tags/route.d.ts.map +1 -0
- package/dist/routes/api/v1/media-tags/route.js +49 -0
- package/dist/routes/api/v1/patterns/[id]/usages/route.d.ts +23 -0
- package/dist/routes/api/v1/patterns/[id]/usages/route.d.ts.map +1 -0
- package/dist/routes/api/v1/patterns/[id]/usages/route.js +69 -0
- package/dist/routes/api/v1/post-categories/[id]/route.d.ts +17 -0
- package/dist/routes/api/v1/post-categories/[id]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/post-categories/[id]/route.js +203 -0
- package/dist/routes/api/v1/post-categories/route.d.ts +4 -0
- package/dist/routes/api/v1/post-categories/route.d.ts.map +1 -0
- package/dist/routes/api/v1/post-categories/route.js +94 -0
- package/dist/routes/api/v1/team-invitations/[token]/accept/route.d.ts +8 -0
- package/dist/routes/api/v1/team-invitations/[token]/accept/route.d.ts.map +1 -0
- package/dist/routes/api/v1/team-invitations/[token]/accept/route.js +130 -0
- package/dist/routes/api/v1/team-invitations/[token]/decline/route.d.ts +8 -0
- package/dist/routes/api/v1/team-invitations/[token]/decline/route.d.ts.map +1 -0
- package/dist/routes/api/v1/team-invitations/[token]/decline/route.js +90 -0
- package/dist/routes/api/v1/team-invitations/[token]/route.d.ts +8 -0
- package/dist/routes/api/v1/team-invitations/[token]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/team-invitations/[token]/route.js +66 -0
- package/dist/routes/api/v1/team-invitations/route.d.ts +4 -0
- package/dist/routes/api/v1/team-invitations/route.d.ts.map +1 -0
- package/dist/routes/api/v1/team-invitations/route.js +82 -0
- package/dist/routes/api/v1/teams/[teamId]/invitations/route.d.ts +13 -0
- package/dist/routes/api/v1/teams/[teamId]/invitations/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/invitations/route.js +126 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.d.ts +9 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.js +80 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/route.d.ts +8 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/invoices/route.js +98 -0
- package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.d.ts +15 -0
- package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/members/[memberId]/route.js +188 -0
- package/dist/routes/api/v1/teams/[teamId]/members/route.d.ts +13 -0
- package/dist/routes/api/v1/teams/[teamId]/members/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/members/route.js +266 -0
- package/dist/routes/api/v1/teams/[teamId]/route.d.ts +18 -0
- package/dist/routes/api/v1/teams/[teamId]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/route.js +222 -0
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts +14 -0
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/subscription/route.js +30 -0
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts +17 -0
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/[teamId]/usage/[limitSlug]/route.js +67 -0
- package/dist/routes/api/v1/teams/route.d.ts +5 -0
- package/dist/routes/api/v1/teams/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/route.js +231 -0
- package/dist/routes/api/v1/teams/switch/route.d.ts +4 -0
- package/dist/routes/api/v1/teams/switch/route.d.ts.map +1 -0
- package/dist/routes/api/v1/teams/switch/route.js +80 -0
- package/dist/routes/api/v1/users/[id]/meta/[key]/route.d.ts +89 -0
- package/dist/routes/api/v1/users/[id]/meta/[key]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/users/[id]/meta/[key]/route.js +180 -0
- package/dist/routes/api/v1/users/[id]/route.d.ts +18 -0
- package/dist/routes/api/v1/users/[id]/route.d.ts.map +1 -0
- package/dist/routes/api/v1/users/[id]/route.js +189 -0
- package/dist/routes/api/v1/users/route.d.ts +5 -0
- package/dist/routes/api/v1/users/route.d.ts.map +1 -0
- package/dist/routes/api/v1/users/route.js +145 -0
- package/dist/routes/dashboard/(main)/layout.d.ts +5 -0
- package/dist/routes/dashboard/(main)/layout.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/layout.js +50 -0
- package/dist/routes/dashboard/(main)/loading.d.ts +3 -0
- package/dist/routes/dashboard/(main)/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/loading.js +6 -0
- package/dist/routes/dashboard/(main)/media/page.d.ts +3 -0
- package/dist/routes/dashboard/(main)/media/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/media/page.js +548 -0
- package/dist/routes/dashboard/(main)/page.d.ts +3 -0
- package/dist/routes/dashboard/(main)/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/page.js +168 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.d.ts +8 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/edit/page.js +85 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/page.d.ts +13 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/page.js +6 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.d.ts +9 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/patterns/[id]/reports/page.js +128 -0
- package/dist/routes/dashboard/(main)/patterns/create/page.d.ts +8 -0
- package/dist/routes/dashboard/(main)/patterns/create/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/patterns/create/page.js +64 -0
- package/dist/routes/dashboard/(main)/patterns/page.d.ts +9 -0
- package/dist/routes/dashboard/(main)/patterns/page.d.ts.map +1 -0
- package/dist/routes/dashboard/(main)/patterns/page.js +334 -0
- package/dist/routes/dashboard/features/analytics/page.d.ts +3 -0
- package/dist/routes/dashboard/features/analytics/page.d.ts.map +1 -0
- package/dist/routes/dashboard/features/analytics/page.js +32 -0
- package/dist/routes/dashboard/features/automation/page.d.ts +3 -0
- package/dist/routes/dashboard/features/automation/page.d.ts.map +1 -0
- package/dist/routes/dashboard/features/automation/page.js +32 -0
- package/dist/routes/dashboard/features/layout.d.ts +7 -0
- package/dist/routes/dashboard/features/layout.d.ts.map +1 -0
- package/dist/routes/dashboard/features/layout.js +5 -0
- package/dist/routes/dashboard/features/loading.d.ts +3 -0
- package/dist/routes/dashboard/features/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/features/loading.js +6 -0
- package/dist/routes/dashboard/features/webhooks/page.d.ts +3 -0
- package/dist/routes/dashboard/features/webhooks/page.d.ts.map +1 -0
- package/dist/routes/dashboard/features/webhooks/page.js +32 -0
- package/dist/routes/dashboard/layout.cc.d.ts +6 -0
- package/dist/routes/dashboard/layout.cc.d.ts.map +1 -0
- package/dist/routes/dashboard/layout.cc.js +3 -0
- package/dist/routes/dashboard/layout.d.ts +9 -0
- package/dist/routes/dashboard/layout.d.ts.map +1 -0
- package/dist/routes/dashboard/layout.js +15 -0
- package/dist/routes/dashboard/permission-denied/page.d.ts +9 -0
- package/dist/routes/dashboard/permission-denied/page.d.ts.map +1 -0
- package/dist/routes/dashboard/permission-denied/page.js +17 -0
- package/dist/routes/dashboard/settings/api-keys/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/api-keys/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/api-keys/loading.js +6 -0
- package/dist/routes/dashboard/settings/api-keys/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/api-keys/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/api-keys/page.js +391 -0
- package/dist/routes/dashboard/settings/billing/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/billing/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/billing/loading.js +6 -0
- package/dist/routes/dashboard/settings/billing/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/billing/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/billing/page.js +240 -0
- package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.d.ts +8 -0
- package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/invoices/[invoiceNumber]/page.js +151 -0
- package/dist/routes/dashboard/settings/invoices/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/invoices/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/invoices/loading.js +6 -0
- package/dist/routes/dashboard/settings/invoices/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/invoices/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/invoices/page.js +65 -0
- package/dist/routes/dashboard/settings/layout.d.ts +5 -0
- package/dist/routes/dashboard/settings/layout.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/layout.js +142 -0
- package/dist/routes/dashboard/settings/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/loading.js +6 -0
- package/dist/routes/dashboard/settings/notifications/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/notifications/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/notifications/loading.js +6 -0
- package/dist/routes/dashboard/settings/notifications/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/notifications/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/notifications/page.js +399 -0
- package/dist/routes/dashboard/settings/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/page.js +82 -0
- package/dist/routes/dashboard/settings/password/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/password/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/password/loading.js +6 -0
- package/dist/routes/dashboard/settings/password/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/password/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/password/page.js +302 -0
- package/dist/routes/dashboard/settings/plans/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/plans/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/plans/loading.js +6 -0
- package/dist/routes/dashboard/settings/plans/page.d.ts +9 -0
- package/dist/routes/dashboard/settings/plans/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/plans/page.js +43 -0
- package/dist/routes/dashboard/settings/profile/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/profile/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/profile/loading.js +6 -0
- package/dist/routes/dashboard/settings/profile/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/profile/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/profile/page.js +615 -0
- package/dist/routes/dashboard/settings/security/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/security/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/security/loading.js +6 -0
- package/dist/routes/dashboard/settings/security/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/security/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/security/page.js +400 -0
- package/dist/routes/dashboard/settings/teams/loading.d.ts +3 -0
- package/dist/routes/dashboard/settings/teams/loading.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/teams/loading.js +6 -0
- package/dist/routes/dashboard/settings/teams/page.d.ts +3 -0
- package/dist/routes/dashboard/settings/teams/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/teams/page.js +205 -0
- package/dist/routes/dashboard/settings/teams/permissions/page.d.ts +9 -0
- package/dist/routes/dashboard/settings/teams/permissions/page.d.ts.map +1 -0
- package/dist/routes/dashboard/settings/teams/permissions/page.js +50 -0
- package/dist/routes/devtools/api/[[...endpoint]]/page.d.ts +19 -0
- package/dist/routes/devtools/api/[[...endpoint]]/page.d.ts.map +1 -0
- package/dist/routes/devtools/api/[[...endpoint]]/page.js +14 -0
- package/dist/routes/devtools/api/layout.d.ts +20 -0
- package/dist/routes/devtools/api/layout.d.ts.map +1 -0
- package/dist/routes/devtools/api/layout.js +6 -0
- package/dist/routes/devtools/blocks/[slug]/page.d.ts +20 -0
- package/dist/routes/devtools/blocks/[slug]/page.d.ts.map +1 -0
- package/dist/routes/devtools/blocks/[slug]/page.js +16 -0
- package/dist/routes/devtools/blocks/page.d.ts +2 -0
- package/dist/routes/devtools/blocks/page.d.ts.map +1 -0
- package/dist/routes/devtools/blocks/page.js +21 -0
- package/dist/routes/devtools/config/page.d.ts +2 -0
- package/dist/routes/devtools/config/page.d.ts.map +1 -0
- package/dist/routes/devtools/config/page.js +21 -0
- package/dist/routes/devtools/features/page.d.ts +2 -0
- package/dist/routes/devtools/features/page.d.ts.map +1 -0
- package/dist/routes/devtools/features/page.js +21 -0
- package/dist/routes/devtools/flows/page.d.ts +2 -0
- package/dist/routes/devtools/flows/page.d.ts.map +1 -0
- package/dist/routes/devtools/flows/page.js +21 -0
- package/dist/routes/devtools/layout.cc.d.ts +7 -0
- package/dist/routes/devtools/layout.cc.d.ts.map +1 -0
- package/dist/routes/devtools/layout.cc.js +4 -0
- package/dist/routes/devtools/layout.d.ts +5 -0
- package/dist/routes/devtools/layout.d.ts.map +1 -0
- package/dist/routes/devtools/layout.js +3 -0
- package/dist/routes/devtools/page.d.ts +2 -0
- package/dist/routes/devtools/page.d.ts.map +1 -0
- package/dist/routes/devtools/page.js +92 -0
- package/dist/routes/devtools/plugins/[plugin]/page.d.ts +8 -0
- package/dist/routes/devtools/plugins/[plugin]/page.d.ts.map +1 -0
- package/dist/routes/devtools/plugins/[plugin]/page.js +11 -0
- package/dist/routes/devtools/scheduled-actions/page.d.ts +15 -0
- package/dist/routes/devtools/scheduled-actions/page.d.ts.map +1 -0
- package/dist/routes/devtools/scheduled-actions/page.js +121 -0
- package/dist/routes/devtools/style/page.d.ts +8 -0
- package/dist/routes/devtools/style/page.d.ts.map +1 -0
- package/dist/routes/devtools/style/page.js +241 -0
- package/dist/routes/devtools/tags/page.d.ts +2 -0
- package/dist/routes/devtools/tags/page.d.ts.map +1 -0
- package/dist/routes/devtools/tags/page.js +21 -0
- package/dist/routes/devtools/tests/[[...path]]/page.d.ts +8 -0
- package/dist/routes/devtools/tests/[[...path]]/page.d.ts.map +1 -0
- package/dist/routes/devtools/tests/[[...path]]/page.js +30 -0
- package/dist/routes/layout.d.ts +10 -0
- package/dist/routes/layout.d.ts.map +1 -0
- package/dist/routes/layout.js +73 -0
- package/dist/routes/layout.ppr.d.ts +26 -0
- package/dist/routes/layout.ppr.d.ts.map +1 -0
- package/dist/routes/layout.ppr.js +58 -0
- package/dist/routes/manifest.json +784 -0
- package/dist/routes/public/page.d.ts +3 -0
- package/dist/routes/public/page.d.ts.map +1 -0
- package/dist/routes/public/page.js +12 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.cc.d.ts +15 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.cc.d.ts.map +1 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.cc.js +63 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.d.ts +16 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.d.ts.map +1 -0
- package/dist/routes/superadmin/docs/[section]/[page]/page.js +61 -0
- package/dist/routes/superadmin/docs/page.d.ts +4 -0
- package/dist/routes/superadmin/docs/page.d.ts.map +1 -0
- package/dist/routes/superadmin/docs/page.js +50 -0
- package/dist/routes/superadmin/layout.cc.d.ts +7 -0
- package/dist/routes/superadmin/layout.cc.d.ts.map +1 -0
- package/dist/routes/superadmin/layout.cc.js +4 -0
- package/dist/routes/superadmin/layout.d.ts +5 -0
- package/dist/routes/superadmin/layout.d.ts.map +1 -0
- package/dist/routes/superadmin/layout.js +3 -0
- package/dist/routes/superadmin/page.d.ts +8 -0
- package/dist/routes/superadmin/page.d.ts.map +1 -0
- package/dist/routes/superadmin/page.js +91 -0
- package/dist/routes/superadmin/plugins/[plugin]/page.d.ts +8 -0
- package/dist/routes/superadmin/plugins/[plugin]/page.d.ts.map +1 -0
- package/dist/routes/superadmin/plugins/[plugin]/page.js +11 -0
- package/dist/routes/superadmin/subscriptions/page.d.ts +9 -0
- package/dist/routes/superadmin/subscriptions/page.d.ts.map +1 -0
- package/dist/routes/superadmin/subscriptions/page.js +470 -0
- package/dist/routes/superadmin/team-roles/page.d.ts +12 -0
- package/dist/routes/superadmin/team-roles/page.d.ts.map +1 -0
- package/dist/routes/superadmin/team-roles/page.js +385 -0
- package/dist/routes/superadmin/teams/[teamId]/page.d.ts +8 -0
- package/dist/routes/superadmin/teams/[teamId]/page.d.ts.map +1 -0
- package/dist/routes/superadmin/teams/[teamId]/page.js +429 -0
- package/dist/routes/superadmin/teams/page.d.ts +9 -0
- package/dist/routes/superadmin/teams/page.d.ts.map +1 -0
- package/dist/routes/superadmin/teams/page.js +259 -0
- package/dist/routes/superadmin/users/[userId]/page.d.ts +8 -0
- package/dist/routes/superadmin/users/[userId]/page.d.ts.map +1 -0
- package/dist/routes/superadmin/users/[userId]/page.js +342 -0
- package/dist/routes/superadmin/users/page.d.ts +9 -0
- package/dist/routes/superadmin/users/page.d.ts.map +1 -0
- package/dist/routes/superadmin/users/page.js +410 -0
- package/dist/routes/variants.json +86 -0
- package/dist/templates/blocks/README.md +6 -12
- package/dist/templates/blocks/cta-section/config.ts +0 -1
- package/dist/templates/blocks/cta-section/thumbnail.png +0 -0
- package/dist/templates/blocks/features-grid/config.ts +0 -1
- package/dist/templates/blocks/features-grid/thumbnail.png +0 -0
- package/dist/templates/blocks/hero/config.ts +0 -1
- package/dist/templates/blocks/hero/thumbnail.png +0 -0
- package/dist/templates/blocks/testimonials/config.ts +0 -1
- package/dist/templates/blocks/testimonials/thumbnail.png +0 -0
- package/dist/templates/blocks/text-content/config.ts +0 -1
- package/dist/templates/blocks/text-content/thumbnail.png +0 -0
- package/dist/templates/ci-workflows/README.md +4 -5
- package/dist/templates/ci-workflows/github/cypress-regression.yml +7 -14
- package/dist/templates/ci-workflows/github/cypress-smoke.yml +3 -5
- package/dist/templates/eslint.config.mjs +3 -3
- package/dist/templates/features/blog/blocks/post-content/config.ts +0 -1
- package/dist/templates/features/blog/entities/posts/posts.config.ts +1 -1
- package/dist/templates/features/pages/blocks/hero/config.ts +0 -1
- package/dist/templates/features/pages/entities/pages/pages.config.ts +1 -1
- package/dist/templates/instrumentation.ts +9 -0
- package/dist/templates/migrations/README.md +2 -2
- package/dist/templates/next.config.mjs +34 -8
- package/dist/templates/plugins/README.md +42 -0
- package/dist/templates/plugins/starter/plugin/README.md.template +97 -0
- package/dist/templates/plugins/starter/plugin/api/example/route.ts.template +94 -0
- package/dist/templates/plugins/starter/plugin/hooks/usePlugin.ts.template +102 -0
- package/dist/templates/pnpm-workspace.yaml +3 -5
- package/dist/templates/projects/blog/README.md +62 -0
- package/dist/templates/projects/blog/about.md +93 -0
- package/dist/templates/projects/blog/api/authors/[username]/route.ts +153 -0
- package/dist/templates/projects/blog/api/authors/docs.md +135 -0
- package/dist/templates/projects/blog/api/authors/presets.ts +45 -0
- package/dist/templates/projects/blog/api/authors/route.ts +66 -0
- package/dist/templates/projects/blog/api/posts/public/docs.md +124 -0
- package/dist/templates/projects/blog/api/posts/public/presets.ts +65 -0
- package/dist/templates/projects/blog/api/posts/public/route.ts +154 -0
- package/dist/templates/projects/blog/components/ExportPostsButton.tsx +103 -0
- package/dist/templates/projects/blog/components/ImportPostsDialog.tsx +285 -0
- package/dist/templates/projects/blog/components/PostsToolbar.tsx +24 -0
- package/dist/templates/projects/blog/components/editor/FeaturedImageUpload.tsx +186 -0
- package/dist/templates/projects/blog/components/editor/WysiwygEditor.tsx +389 -0
- package/dist/templates/projects/blog/components/index.ts +4 -0
- package/dist/templates/projects/blog/components/public/AuthorBio.tsx +106 -0
- package/dist/templates/projects/blog/components/public/AuthorCard.tsx +131 -0
- package/dist/templates/projects/blog/components/public/BlogFooter.tsx +186 -0
- package/dist/templates/projects/blog/components/public/BlogNavbar.tsx +201 -0
- package/dist/templates/projects/blog/components/public/PostCard.tsx +307 -0
- package/dist/templates/projects/blog/components/public/ReadingProgress.tsx +70 -0
- package/dist/templates/projects/blog/components/public/RelatedPosts.tsx +79 -0
- package/dist/templates/projects/blog/config/app.config.ts +193 -0
- package/dist/templates/projects/blog/config/billing.config.ts +143 -0
- package/dist/templates/projects/blog/config/dashboard.config.ts +346 -0
- package/dist/templates/projects/blog/config/dev.config.ts +48 -0
- package/dist/templates/projects/blog/config/features.config.ts +196 -0
- package/dist/templates/projects/blog/config/flows.config.ts +333 -0
- package/dist/templates/projects/blog/config/permissions.config.ts +112 -0
- package/dist/templates/projects/blog/config/theme.config.ts +128 -0
- package/dist/templates/projects/blog/entities/categories/api/docs.md +119 -0
- package/dist/templates/projects/blog/entities/categories/api/presets.ts +67 -0
- package/dist/templates/projects/blog/entities/categories/categories.config.ts +60 -0
- package/dist/templates/projects/blog/entities/categories/categories.fields.ts +115 -0
- package/dist/templates/projects/blog/entities/categories/categories.service.ts +333 -0
- package/dist/templates/projects/blog/entities/categories/categories.types.ts +58 -0
- package/dist/templates/projects/blog/entities/categories/messages/en.json +33 -0
- package/dist/templates/projects/blog/entities/categories/messages/es.json +33 -0
- package/dist/templates/projects/blog/entities/posts/api/docs.md +174 -0
- package/dist/templates/projects/blog/entities/posts/api/presets.ts +137 -0
- package/dist/templates/projects/blog/entities/posts/messages/en.json +100 -0
- package/dist/templates/projects/blog/entities/posts/messages/es.json +100 -0
- package/dist/templates/projects/blog/entities/posts/migrations/001_posts_table.sql +110 -0
- package/dist/templates/projects/blog/entities/posts/migrations/002_add_featured.sql +19 -0
- package/dist/templates/projects/blog/entities/posts/migrations/003_post_categories_pivot.sql +47 -0
- package/dist/templates/projects/blog/entities/posts/posts.config.ts +61 -0
- package/dist/templates/projects/blog/entities/posts/posts.fields.ts +234 -0
- package/dist/templates/projects/blog/entities/posts/posts.service.ts +464 -0
- package/dist/templates/projects/blog/entities/posts/posts.types.ts +80 -0
- package/dist/templates/projects/blog/lib/sanitize-post-html.ts +52 -0
- package/dist/templates/projects/blog/lib/selectors.ts +178 -0
- package/dist/templates/projects/blog/messages/en.json +113 -0
- package/dist/templates/projects/blog/messages/es.json +113 -0
- package/dist/templates/projects/blog/migrations/002_author_profile_fields.sql +37 -0
- package/dist/templates/projects/blog/migrations/003_categories_table.sql +90 -0
- package/dist/templates/projects/blog/migrations/090_billing_sample_data.sql +99 -0
- package/dist/templates/projects/blog/migrations/999_sample_data.sql +412 -0
- package/dist/templates/projects/blog/migrations/999_theme_sample_data.sql +1070 -0
- package/dist/templates/projects/blog/package.json +30 -0
- package/dist/templates/projects/blog/permissions-matrix.md +63 -0
- package/dist/templates/projects/blog/styles/article.css +333 -0
- package/dist/templates/projects/blog/styles/components.css +204 -0
- package/dist/templates/projects/blog/styles/globals.css +384 -0
- package/dist/templates/projects/blog/styles/theme.css +167 -0
- package/dist/templates/projects/blog/templates/(public)/author/[username]/page.tsx +248 -0
- package/dist/templates/projects/blog/templates/(public)/authors/page.tsx +162 -0
- package/dist/templates/projects/blog/templates/(public)/layout.tsx +44 -0
- package/dist/templates/projects/blog/templates/(public)/page.tsx +277 -0
- package/dist/templates/projects/blog/templates/(public)/posts/[slug]/page.tsx +344 -0
- package/dist/templates/projects/blog/templates/dashboard/(main)/page.tsx +386 -0
- package/dist/templates/projects/blog/templates/dashboard/(main)/posts/[id]/edit/page.tsx +530 -0
- package/dist/templates/projects/blog/templates/dashboard/(main)/posts/[id]/page.tsx +33 -0
- package/dist/templates/projects/blog/templates/dashboard/(main)/posts/create/page.tsx +354 -0
- package/dist/templates/projects/blog/templates/dashboard/(main)/posts/page.tsx +834 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/README.md +170 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.cy.ts +322 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.md +73 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.cy.ts +460 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.md +115 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.cy.ts +290 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.md +139 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.cy.ts +302 -0
- package/dist/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.md +83 -0
- package/dist/templates/projects/blog/tests/cypress/fixtures/blocks.json +9 -0
- package/dist/templates/projects/blog/tests/cypress/fixtures/entities.json +51 -0
- package/dist/templates/projects/blog/tests/cypress/src/FeaturedImageUpload.js +131 -0
- package/dist/templates/projects/blog/tests/cypress/src/PostEditor.js +386 -0
- package/dist/templates/projects/blog/tests/cypress/src/PostsList.js +350 -0
- package/dist/templates/projects/blog/tests/cypress/src/WysiwygEditor.js +373 -0
- package/dist/templates/projects/blog/tests/cypress/src/components/EntityForm.ts +378 -0
- package/dist/templates/projects/blog/tests/cypress/src/components/EntityList.ts +378 -0
- package/dist/templates/projects/blog/tests/cypress/src/components/PostEditorPOM.ts +447 -0
- package/dist/templates/projects/blog/tests/cypress/src/components/PostsPOM.ts +362 -0
- package/dist/templates/projects/blog/tests/cypress/src/components/index.ts +18 -0
- package/dist/templates/projects/blog/tests/cypress/src/index.js +33 -0
- package/dist/templates/projects/blog/tests/cypress/src/selectors.ts +49 -0
- package/dist/templates/projects/blog/tests/cypress/src/session-helpers.ts +151 -0
- package/dist/templates/projects/blog/tests/cypress/support/e2e.ts +90 -0
- package/dist/templates/projects/blog/tests/cypress.config.ts +149 -0
- package/dist/templates/projects/blog/tests/jest/components/WysiwygEditor.test.tsx +118 -0
- package/dist/templates/projects/blog/tests/jest/jest.config.cjs +104 -0
- package/dist/templates/projects/blog/tests/jest/lib/sanitize-post-html.test.ts +48 -0
- package/dist/templates/projects/blog/tests/jest/setup.ts +170 -0
- package/dist/templates/projects/blog/tests/jest/tsconfig.jest.json +6 -0
- package/dist/templates/projects/blog/tests/tsconfig.json +7 -0
- package/dist/templates/projects/crm/CRM_PLAN.md +343 -0
- package/dist/templates/projects/crm/about.md +122 -0
- package/dist/templates/projects/crm/config/app.config.ts +178 -0
- package/dist/templates/projects/crm/config/billing.config.ts +184 -0
- package/dist/templates/projects/crm/config/dashboard.config.ts +385 -0
- package/dist/templates/projects/crm/config/dev.config.ts +55 -0
- package/dist/templates/projects/crm/config/features.config.ts +336 -0
- package/dist/templates/projects/crm/config/flows.config.ts +511 -0
- package/dist/templates/projects/crm/config/permissions.config.ts +308 -0
- package/dist/templates/projects/crm/config/theme.config.ts +111 -0
- package/dist/templates/projects/crm/entities/activities/activities.config.ts +61 -0
- package/dist/templates/projects/crm/entities/activities/activities.fields.ts +362 -0
- package/dist/templates/projects/crm/entities/activities/activities.service.ts +503 -0
- package/dist/templates/projects/crm/entities/activities/activities.types.ts +117 -0
- package/dist/templates/projects/crm/entities/activities/api/docs.md +146 -0
- package/dist/templates/projects/crm/entities/activities/api/presets.ts +132 -0
- package/dist/templates/projects/crm/entities/activities/messages/en.json +123 -0
- package/dist/templates/projects/crm/entities/activities/messages/es.json +123 -0
- package/dist/templates/projects/crm/entities/activities/migrations/020_activities_table.sql +123 -0
- package/dist/templates/projects/crm/entities/activities/migrations/021_activities_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/activities/migrations/022_activities_sample_data.sql +420 -0
- package/dist/templates/projects/crm/entities/campaigns/api/docs.md +140 -0
- package/dist/templates/projects/crm/entities/campaigns/api/presets.ts +147 -0
- package/dist/templates/projects/crm/entities/campaigns/campaigns.config.ts +61 -0
- package/dist/templates/projects/crm/entities/campaigns/campaigns.fields.ts +413 -0
- package/dist/templates/projects/crm/entities/campaigns/campaigns.service.ts +426 -0
- package/dist/templates/projects/crm/entities/campaigns/campaigns.types.ts +124 -0
- package/dist/templates/projects/crm/entities/campaigns/messages/en.json +145 -0
- package/dist/templates/projects/crm/entities/campaigns/messages/es.json +145 -0
- package/dist/templates/projects/crm/entities/campaigns/migrations/001_campaigns_table.sql +127 -0
- package/dist/templates/projects/crm/entities/campaigns/migrations/002_campaigns_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/campaigns/migrations/003_campaigns_sample_data.sql +364 -0
- package/dist/templates/projects/crm/entities/companies/api/docs.md +139 -0
- package/dist/templates/projects/crm/entities/companies/api/presets.ts +107 -0
- package/dist/templates/projects/crm/entities/companies/companies.config.ts +61 -0
- package/dist/templates/projects/crm/entities/companies/companies.fields.ts +429 -0
- package/dist/templates/projects/crm/entities/companies/companies.service.ts +566 -0
- package/dist/templates/projects/crm/entities/companies/companies.types.ts +125 -0
- package/dist/templates/projects/crm/entities/companies/messages/en.json +146 -0
- package/dist/templates/projects/crm/entities/companies/messages/es.json +146 -0
- package/dist/templates/projects/crm/entities/companies/migrations/001_companies_table.sql +150 -0
- package/dist/templates/projects/crm/entities/companies/migrations/002_companies_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/companies/migrations/003_companies_sample_data.sql +246 -0
- package/dist/templates/projects/crm/entities/contacts/api/docs.md +139 -0
- package/dist/templates/projects/crm/entities/contacts/api/presets.ts +98 -0
- package/dist/templates/projects/crm/entities/contacts/contacts.config.ts +61 -0
- package/dist/templates/projects/crm/entities/contacts/contacts.fields.ts +359 -0
- package/dist/templates/projects/crm/entities/contacts/contacts.service.ts +509 -0
- package/dist/templates/projects/crm/entities/contacts/contacts.types.ts +108 -0
- package/dist/templates/projects/crm/entities/contacts/messages/en.json +117 -0
- package/dist/templates/projects/crm/entities/contacts/messages/es.json +117 -0
- package/dist/templates/projects/crm/entities/contacts/migrations/001_contacts_table.sql +134 -0
- package/dist/templates/projects/crm/entities/contacts/migrations/002_contacts_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/contacts/migrations/003_contacts_sample_data.sql +421 -0
- package/dist/templates/projects/crm/entities/leads/api/docs.md +132 -0
- package/dist/templates/projects/crm/entities/leads/api/presets.ts +109 -0
- package/dist/templates/projects/crm/entities/leads/leads.config.ts +61 -0
- package/dist/templates/projects/crm/entities/leads/leads.fields.ts +336 -0
- package/dist/templates/projects/crm/entities/leads/leads.service.ts +496 -0
- package/dist/templates/projects/crm/entities/leads/leads.types.ts +114 -0
- package/dist/templates/projects/crm/entities/leads/messages/en.json +132 -0
- package/dist/templates/projects/crm/entities/leads/messages/es.json +132 -0
- package/dist/templates/projects/crm/entities/leads/migrations/001_leads_table.sql +150 -0
- package/dist/templates/projects/crm/entities/leads/migrations/002_leads_metas.sql +120 -0
- package/dist/templates/projects/crm/entities/leads/migrations/003_leads_sample_data.sql +242 -0
- package/dist/templates/projects/crm/entities/notes/api/docs.md +135 -0
- package/dist/templates/projects/crm/entities/notes/api/presets.ts +115 -0
- package/dist/templates/projects/crm/entities/notes/messages/en.json +114 -0
- package/dist/templates/projects/crm/entities/notes/messages/es.json +114 -0
- package/dist/templates/projects/crm/entities/notes/migrations/020_notes_table.sql +118 -0
- package/dist/templates/projects/crm/entities/notes/migrations/021_notes_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/notes/migrations/022_notes_sample_data.sql +275 -0
- package/dist/templates/projects/crm/entities/notes/notes.config.ts +61 -0
- package/dist/templates/projects/crm/entities/notes/notes.fields.ts +283 -0
- package/dist/templates/projects/crm/entities/notes/notes.service.ts +320 -0
- package/dist/templates/projects/crm/entities/notes/notes.types.ts +102 -0
- package/dist/templates/projects/crm/entities/opportunities/api/docs.md +151 -0
- package/dist/templates/projects/crm/entities/opportunities/api/presets.ts +151 -0
- package/dist/templates/projects/crm/entities/opportunities/messages/en.json +107 -0
- package/dist/templates/projects/crm/entities/opportunities/messages/es.json +107 -0
- package/dist/templates/projects/crm/entities/opportunities/migrations/010_opportunities_table.sql +145 -0
- package/dist/templates/projects/crm/entities/opportunities/migrations/011_opportunities_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/opportunities/migrations/012_opportunities_sample_data.sql +438 -0
- package/dist/templates/projects/crm/entities/opportunities/opportunities.config.ts +61 -0
- package/dist/templates/projects/crm/entities/opportunities/opportunities.fields.ts +416 -0
- package/dist/templates/projects/crm/entities/opportunities/opportunities.service.ts +525 -0
- package/dist/templates/projects/crm/entities/opportunities/opportunities.types.ts +135 -0
- package/dist/templates/projects/crm/entities/pipelines/api/docs.md +145 -0
- package/dist/templates/projects/crm/entities/pipelines/api/presets.ts +118 -0
- package/dist/templates/projects/crm/entities/pipelines/messages/en.json +115 -0
- package/dist/templates/projects/crm/entities/pipelines/messages/es.json +115 -0
- package/dist/templates/projects/crm/entities/pipelines/migrations/001_pipelines_table.sql +106 -0
- package/dist/templates/projects/crm/entities/pipelines/migrations/002_pipelines_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/pipelines/migrations/003_pipelines_sample_data.sql +91 -0
- package/dist/templates/projects/crm/entities/pipelines/pipelines.config.ts +62 -0
- package/dist/templates/projects/crm/entities/pipelines/pipelines.fields.ts +193 -0
- package/dist/templates/projects/crm/entities/pipelines/pipelines.service.ts +383 -0
- package/dist/templates/projects/crm/entities/pipelines/pipelines.types.ts +78 -0
- package/dist/templates/projects/crm/entities/products/api/docs.md +137 -0
- package/dist/templates/projects/crm/entities/products/api/presets.ts +132 -0
- package/dist/templates/projects/crm/entities/products/messages/en.json +135 -0
- package/dist/templates/projects/crm/entities/products/messages/es.json +135 -0
- package/dist/templates/projects/crm/entities/products/migrations/001_products_table.sql +117 -0
- package/dist/templates/projects/crm/entities/products/migrations/002_products_metas.sql +114 -0
- package/dist/templates/projects/crm/entities/products/migrations/003_products_sample_data.sql +247 -0
- package/dist/templates/projects/crm/entities/products/products.config.ts +62 -0
- package/dist/templates/projects/crm/entities/products/products.fields.ts +361 -0
- package/dist/templates/projects/crm/entities/products/products.service.ts +437 -0
- package/dist/templates/projects/crm/entities/products/products.types.ts +125 -0
- package/dist/templates/projects/crm/lib/crm-constants.ts +77 -0
- package/dist/templates/projects/crm/lib/crm-utils.ts +185 -0
- package/dist/templates/projects/crm/lib/selectors.ts +332 -0
- package/dist/templates/projects/crm/messages/en.json +131 -0
- package/dist/templates/projects/crm/messages/es.json +131 -0
- package/dist/templates/projects/crm/migrations/090_billing_sample_data.sql +99 -0
- package/dist/templates/projects/crm/migrations/999_theme_sample_data.sql +473 -0
- package/dist/templates/projects/crm/package.json +26 -0
- package/dist/templates/projects/crm/pendings.md +204 -0
- package/dist/templates/projects/crm/permissions-matrix.md +216 -0
- package/dist/templates/projects/crm/styles/components.css +414 -0
- package/dist/templates/projects/crm/styles/crm-theme.css +358 -0
- package/dist/templates/projects/crm/styles/globals.css +624 -0
- package/dist/templates/projects/crm/styles/variables.css +111 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityCard.tsx +169 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityTimeline.tsx +165 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/activities/page.tsx +297 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/campaigns/page.tsx +373 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/companies/page.tsx +296 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/contacts/page.tsx +347 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/layout.tsx +98 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/leads/page.tsx +335 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/[id]/edit/page.tsx +95 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/create/page.tsx +94 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/opportunities/page.tsx +350 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/edit/page.tsx +95 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/page.tsx +143 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/create/page.tsx +94 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/pipelines/page.tsx +235 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/products/[id]/edit/page.tsx +97 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/products/[id]/page.tsx +510 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/products/create/page.tsx +96 -0
- package/dist/templates/projects/crm/templates/dashboard/(main)/products/page.tsx +308 -0
- package/dist/templates/projects/crm/templates/shared/ActionButtons.tsx +41 -0
- package/dist/templates/projects/crm/templates/shared/CRMDashboard.tsx +519 -0
- package/dist/templates/projects/crm/templates/shared/CRMDataTable.tsx +441 -0
- package/dist/templates/projects/crm/templates/shared/CRMMetricCard.tsx +76 -0
- package/dist/templates/projects/crm/templates/shared/CRMMobileNav.tsx +172 -0
- package/dist/templates/projects/crm/templates/shared/CRMSidebar.tsx +347 -0
- package/dist/templates/projects/crm/templates/shared/CRMTopBar.tsx +266 -0
- package/dist/templates/projects/crm/templates/shared/DealCard.tsx +123 -0
- package/dist/templates/projects/crm/templates/shared/EntityCard.tsx +58 -0
- package/dist/templates/projects/crm/templates/shared/OpportunityForm.tsx +649 -0
- package/dist/templates/projects/crm/templates/shared/PipelineForm.tsx +367 -0
- package/dist/templates/projects/crm/templates/shared/PipelineKanban.tsx +194 -0
- package/dist/templates/projects/crm/templates/shared/QuickFilters.tsx +47 -0
- package/dist/templates/projects/crm/templates/shared/StageColumn.tsx +175 -0
- package/dist/templates/projects/crm/templates/shared/StageSelect.tsx +177 -0
- package/dist/templates/projects/crm/templates/shared/StagesRepeater.tsx +317 -0
- package/dist/templates/projects/crm/templates/shared/index.ts +9 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/activities/activities-crud.cy.ts +686 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/campaigns/campaigns-crud.cy.ts +592 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/companies/companies-crud.cy.ts +682 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/contacts/contacts-crud.cy.ts +668 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/leads/leads-crud.cy.ts +648 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/notes/notes-crud.cy.ts +424 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/opportunities/opportunities-crud.cy.ts +865 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/pipelines/pipelines-crud.cy.ts +545 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/api/products/products-crud.cy.ts +447 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-admin.cy.ts +268 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-member.cy.ts +257 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-owner.cy.ts +268 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-admin.cy.ts +188 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-member.cy.ts +166 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-owner.cy.ts +189 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-admin.cy.ts +252 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-member.cy.ts +224 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-owner.cy.ts +236 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-admin.cy.ts +286 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-member.cy.ts +193 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-owner.cy.ts +210 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-admin.cy.ts +197 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-member.cy.ts +229 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-owner.cy.ts +196 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-admin.cy.ts +320 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-member.cy.ts +262 -0
- package/dist/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-owner.cy.ts +282 -0
- package/dist/templates/projects/crm/tests/cypress/fixtures/blocks.json +9 -0
- package/dist/templates/projects/crm/tests/cypress/fixtures/entities.json +240 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/CRMDataTable.js +223 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/CRMMobileNav.js +138 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/CRMSidebar.js +145 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/CRMTopBar.js +194 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/DealCard.js +197 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/EntityDetail.ts +290 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/EntityForm.ts +357 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/EntityList.ts +360 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/PipelineKanban.js +204 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/StageColumn.js +196 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/index.js +13 -0
- package/dist/templates/projects/crm/tests/cypress/src/components/index.ts +22 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/ActivityAPIController.ts +113 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/BaseAPIController.ts +307 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/CampaignAPIController.ts +114 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/CompanyAPIController.ts +112 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/ContactAPIController.ts +104 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/LeadAPIController.ts +96 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/NoteAPIController.ts +130 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/OpportunityAPIController.ts +134 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/PipelineAPIController.ts +116 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/ProductAPIController.ts +113 -0
- package/dist/templates/projects/crm/tests/cypress/src/controllers/index.ts +35 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/ActivitiesPOM.ts +130 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/CompaniesPOM.ts +117 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/ContactsPOM.ts +117 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/LeadsPOM.ts +129 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/OpportunitiesPOM.ts +178 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/PipelinesPOM.ts +341 -0
- package/dist/templates/projects/crm/tests/cypress/src/entities/index.ts +31 -0
- package/dist/templates/projects/crm/tests/cypress/src/forms/OpportunityForm.js +316 -0
- package/dist/templates/projects/crm/tests/cypress/src/forms/PipelineForm.js +243 -0
- package/dist/templates/projects/crm/tests/cypress/src/forms/index.js +8 -0
- package/dist/templates/projects/crm/tests/cypress/src/index.js +22 -0
- package/dist/templates/projects/crm/tests/cypress/src/index.ts +68 -0
- package/dist/templates/projects/crm/tests/cypress/src/selectors.ts +50 -0
- package/dist/templates/projects/crm/tests/cypress/src/session-helpers.ts +176 -0
- package/dist/templates/projects/crm/tests/cypress/support/e2e.ts +90 -0
- package/dist/templates/projects/crm/tests/cypress.config.ts +149 -0
- package/dist/templates/projects/crm/tests/tsconfig.json +7 -0
- package/dist/templates/projects/productivity/README.md +73 -0
- package/dist/templates/projects/productivity/about.md +123 -0
- package/dist/templates/projects/productivity/components/CardDetailModal.tsx +318 -0
- package/dist/templates/projects/productivity/components/KanbanBoard.tsx +613 -0
- package/dist/templates/projects/productivity/components/KanbanCard.tsx +218 -0
- package/dist/templates/projects/productivity/components/KanbanColumn.tsx +264 -0
- package/dist/templates/projects/productivity/components/SortableList.tsx +46 -0
- package/dist/templates/projects/productivity/components/index.ts +4 -0
- package/dist/templates/projects/productivity/config/app.config.ts +165 -0
- package/dist/templates/projects/productivity/config/billing.config.ts +184 -0
- package/dist/templates/projects/productivity/config/dashboard.config.ts +370 -0
- package/dist/templates/projects/productivity/config/dev.config.ts +55 -0
- package/dist/templates/projects/productivity/config/features.config.ts +256 -0
- package/dist/templates/projects/productivity/config/flows.config.ts +484 -0
- package/dist/templates/projects/productivity/config/permissions.config.ts +178 -0
- package/dist/templates/projects/productivity/config/theme.config.ts +106 -0
- package/dist/templates/projects/productivity/entities/boards/api/docs.md +131 -0
- package/dist/templates/projects/productivity/entities/boards/api/presets.ts +113 -0
- package/dist/templates/projects/productivity/entities/boards/boards.config.ts +61 -0
- package/dist/templates/projects/productivity/entities/boards/boards.fields.ts +154 -0
- package/dist/templates/projects/productivity/entities/boards/boards.service.ts +256 -0
- package/dist/templates/projects/productivity/entities/boards/boards.types.ts +57 -0
- package/dist/templates/projects/productivity/entities/boards/messages/en.json +80 -0
- package/dist/templates/projects/productivity/entities/boards/messages/es.json +80 -0
- package/dist/templates/projects/productivity/entities/boards/migrations/001_boards_table.sql +83 -0
- package/dist/templates/projects/productivity/entities/cards/api/docs.md +162 -0
- package/dist/templates/projects/productivity/entities/cards/api/presets.ts +172 -0
- package/dist/templates/projects/productivity/entities/cards/cards.config.ts +61 -0
- package/dist/templates/projects/productivity/entities/cards/cards.fields.ts +242 -0
- package/dist/templates/projects/productivity/entities/cards/cards.service.ts +336 -0
- package/dist/templates/projects/productivity/entities/cards/cards.types.ts +79 -0
- package/dist/templates/projects/productivity/entities/cards/messages/en.json +114 -0
- package/dist/templates/projects/productivity/entities/cards/messages/es.json +114 -0
- package/dist/templates/projects/productivity/entities/cards/migrations/020_cards_table.sql +92 -0
- package/dist/templates/projects/productivity/entities/lists/api/docs.md +143 -0
- package/dist/templates/projects/productivity/entities/lists/api/presets.ts +81 -0
- package/dist/templates/projects/productivity/entities/lists/lists.config.ts +61 -0
- package/dist/templates/projects/productivity/entities/lists/lists.fields.ts +105 -0
- package/dist/templates/projects/productivity/entities/lists/lists.service.ts +252 -0
- package/dist/templates/projects/productivity/entities/lists/lists.types.ts +55 -0
- package/dist/templates/projects/productivity/entities/lists/messages/en.json +60 -0
- package/dist/templates/projects/productivity/entities/lists/messages/es.json +60 -0
- package/dist/templates/projects/productivity/entities/lists/migrations/010_lists_table.sql +79 -0
- package/dist/templates/projects/productivity/lib/selectors.ts +205 -0
- package/dist/templates/projects/productivity/messages/en.json +79 -0
- package/dist/templates/projects/productivity/messages/es.json +79 -0
- package/dist/templates/projects/productivity/migrations/090_billing_sample_data.sql +100 -0
- package/dist/templates/projects/productivity/migrations/999_theme_sample_data.sql +922 -0
- package/dist/templates/projects/productivity/migrations/999a_initial_sample_data.sql +377 -0
- package/dist/templates/projects/productivity/migrations/999b_abundant_sample_data.sql +346 -0
- package/dist/templates/projects/productivity/package.json +29 -0
- package/dist/templates/projects/productivity/permissions-matrix.md +122 -0
- package/dist/templates/projects/productivity/styles/components.css +460 -0
- package/dist/templates/projects/productivity/styles/globals.css +608 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/[cardId]/page.tsx +239 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/edit/page.tsx +391 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/page.tsx +237 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/create/page.tsx +237 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/boards/page.tsx +336 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/layout.tsx +32 -0
- package/dist/templates/projects/productivity/templates/dashboard/(main)/page.tsx +593 -0
- package/dist/templates/projects/productivity/templates/shared/ProductivityMobileNav.tsx +411 -0
- package/dist/templates/projects/productivity/templates/shared/ProductivitySidebar.tsx +539 -0
- package/dist/templates/projects/productivity/templates/shared/ProductivityTopBar.tsx +318 -0
- package/dist/templates/projects/productivity/tests/cypress/e2e/ui/boards/boards-owner.cy.ts +349 -0
- package/dist/templates/projects/productivity/tests/cypress/e2e/ui/cards/cards-modal.cy.ts +369 -0
- package/dist/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-cards.cy.ts +280 -0
- package/dist/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-columns.cy.ts +243 -0
- package/dist/templates/projects/productivity/tests/cypress/fixtures/blocks.json +9 -0
- package/dist/templates/projects/productivity/tests/cypress/fixtures/entities.json +60 -0
- package/dist/templates/projects/productivity/tests/cypress/src/components/BoardsPOM.ts +353 -0
- package/dist/templates/projects/productivity/tests/cypress/src/components/CardsPOM.ts +383 -0
- package/dist/templates/projects/productivity/tests/cypress/src/components/KanbanPOM.ts +399 -0
- package/dist/templates/projects/productivity/tests/cypress/src/components/index.ts +9 -0
- package/dist/templates/projects/productivity/tests/cypress/src/controllers/BoardsAPIController.js +302 -0
- package/dist/templates/projects/productivity/tests/cypress/src/controllers/CardsAPIController.js +406 -0
- package/dist/templates/projects/productivity/tests/cypress/src/controllers/ListsAPIController.js +299 -0
- package/dist/templates/projects/productivity/tests/cypress/src/index.ts +25 -0
- package/dist/templates/projects/productivity/tests/cypress/src/selectors.ts +50 -0
- package/dist/templates/projects/productivity/tests/cypress/src/session-helpers.ts +176 -0
- package/dist/templates/projects/productivity/tests/cypress/support/e2e.ts +90 -0
- package/dist/templates/projects/productivity/tests/cypress.config.ts +149 -0
- package/dist/templates/projects/productivity/tests/tsconfig.json +7 -0
- package/dist/templates/projects/starter/blocks/cta-section/config.ts +10 -0
- package/dist/templates/projects/starter/blocks/features-grid/config.ts +10 -0
- package/dist/templates/projects/starter/blocks/hero/config.ts +10 -0
- package/dist/templates/projects/starter/blocks/testimonials/config.ts +10 -0
- package/dist/templates/projects/starter/blocks/text-content/config.ts +10 -0
- package/dist/templates/projects/starter/emails/_README.md +69 -0
- package/dist/templates/projects/starter/entities/pages/pages.config.ts +95 -0
- package/dist/templates/projects/starter/entities/posts/posts.config.ts +102 -0
- package/dist/templates/projects/starter/entities/tasks/tasks.config.ts +82 -0
- package/dist/templates/projects/starter/styles/globals.css +213 -0
- package/dist/templates/projects/starter/templates/(public)/page.tsx +49 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/docs/README.md +215 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +491 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +147 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +76 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +326 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +388 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +266 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +78 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +129 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +82 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +77 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +130 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +261 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +593 -0
- package/dist/templates/projects/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +278 -0
- package/dist/templates/projects/starter/tests/cypress/src/session-helpers.ts +548 -0
- package/dist/templates/projects/starter/tests/cypress.config.ts +215 -0
- package/dist/templates/projects/starter/tests/jest/example.test.tsx +87 -0
- package/dist/templates/projects/starter/tests/jest/jest.config.cjs +92 -0
- package/dist/templates/projects/starter/tests/jest/services/tasks.service.test.ts +547 -0
- package/dist/templates/projects/starter/tests/jest/tsconfig.jest.json +8 -0
- package/dist/templates/projects/starter/tests/tsconfig.json +7 -0
- package/dist/templates/proxy.ts +366 -107
- package/dist/templates/public/uploads/README.md +1 -1
- package/dist/templates/scripts/cy-run-prod.cjs +6 -34
- package/dist/templates/tsconfig.cypress.json +4 -5
- package/dist/templates/tsconfig.json +8 -16
- package/dist/types/api-presets.d.ts +2 -2
- package/dist/types/blocks.d.ts +15 -18
- package/dist/types/blocks.d.ts.map +1 -1
- package/dist/types/blocks.js +1 -8
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -0
- package/dist/types/plugin.d.ts +40 -0
- package/dist/types/plugin.d.ts.map +1 -1
- package/dist/types/plugin.js +23 -0
- package/dist/types/theme.d.ts +0 -25
- package/dist/types/theme.d.ts.map +1 -1
- package/dist/types/user.types.d.ts +3 -3
- package/dist/types/user.types.d.ts.map +1 -1
- package/dist/types/user.types.js +6 -6
- package/globals.css +5 -7
- package/migrations/028_api_audit_log_insert_policy.sql +18 -0
- package/migrations/090_sample_data.sql +2 -2
- package/migrations/README.md +7 -7
- package/package.json +14 -20
- package/scripts/build/auth-readiness-load.mjs +57 -0
- package/scripts/build/auth-readiness.mjs +210 -0
- package/scripts/build/config-loader.mjs +36 -60
- package/scripts/build/docs-registry.mjs +6 -84
- package/scripts/build/mobile-boundary.mjs +525 -0
- package/scripts/build/registry/__tests__/api-docs-colocated.test.mjs +105 -0
- package/scripts/build/registry/__tests__/billing-registry.test.mjs +8 -4
- package/scripts/build/registry/__tests__/block-registry.test.mjs +101 -5
- package/scripts/build/registry/__tests__/build-output.test.mjs +12 -87
- package/scripts/build/registry/__tests__/config-loader-root-first.test.mjs +33 -0
- package/scripts/build/registry/__tests__/icons-discovery.test.mjs +99 -29
- package/scripts/build/registry/__tests__/mcp-registry.test.mjs +6 -6
- package/scripts/build/registry/__tests__/packaged-plugin-discovery.test.mjs +42 -0
- package/scripts/build/registry/__tests__/plugin-capabilities.test.mjs +1030 -0
- package/scripts/build/registry/__tests__/plugin-registry-types.test.mjs +69 -0
- package/scripts/build/registry/__tests__/project-mode-root-first.test.mjs +175 -0
- package/scripts/build/registry/__tests__/safe-fs.test.mjs +5 -29
- package/scripts/build/registry/__tests__/scheduled-actions-registry.test.mjs +2 -2
- package/scripts/build/registry/__tests__/theme-registry.test.mjs +117 -0
- package/scripts/build/registry/__tests__/translation-registry-root-first.test.mjs +38 -0
- package/scripts/build/registry/__tests__/write-places.test.mjs +35 -128
- package/scripts/build/registry/config.mjs +29 -167
- package/scripts/build/registry/contracts/README.md +120 -0
- package/scripts/build/registry/contracts/__tests__/contracts-wire.test.mjs +168 -0
- package/scripts/build/registry/contracts/__tests__/contracts.test.mjs +590 -0
- package/scripts/build/registry/contracts/index.mjs +162 -0
- package/scripts/build/registry/contracts/portable.mjs +58 -0
- package/scripts/build/registry/contracts/publish.mjs +191 -0
- package/scripts/build/registry/contracts/read-columns.mjs +96 -0
- package/scripts/build/registry/contracts/read-entities.mjs +418 -0
- package/scripts/build/registry/contracts/render.mjs +341 -0
- package/scripts/build/registry/discovery/all-entities.mjs +57 -0
- package/scripts/build/registry/discovery/api-presets.mjs +23 -46
- package/scripts/build/registry/discovery/auth.mjs +3 -4
- package/scripts/build/registry/discovery/blocks.mjs +126 -17
- package/scripts/build/registry/discovery/core-routes.mjs +23 -73
- package/scripts/build/registry/discovery/emails.mjs +14 -19
- package/scripts/build/registry/discovery/entities.mjs +14 -18
- package/scripts/build/registry/discovery/icons.mjs +6 -15
- package/scripts/build/registry/discovery/index.mjs +0 -1
- package/scripts/build/registry/discovery/mcp-overrides.mjs +6 -12
- package/scripts/build/registry/discovery/mcp-overrides.test.mjs +24 -63
- package/scripts/build/registry/discovery/middlewares.mjs +21 -82
- package/scripts/build/registry/discovery/parent-child.mjs +2 -6
- package/scripts/build/registry/discovery/permissions.mjs +8 -13
- package/scripts/build/registry/discovery/plugin-capabilities.mjs +912 -0
- package/scripts/build/registry/discovery/plugins.mjs +55 -90
- package/scripts/build/registry/discovery/themes.mjs +79 -385
- package/scripts/build/registry/generators/api-presets-registry.mjs +4 -4
- package/scripts/build/registry/generators/billing-registry.mjs +17 -40
- package/scripts/build/registry/generators/block-registry.mjs +42 -3
- package/scripts/build/registry/generators/docs-registry.mjs +11 -30
- package/scripts/build/registry/generators/email-registry.mjs +4 -4
- package/scripts/build/registry/generators/entity-registry.mjs +3 -3
- package/scripts/build/registry/generators/feature-registry.mjs +5 -7
- package/scripts/build/registry/generators/index.mjs +2 -2
- package/scripts/build/registry/generators/middleware-registry.mjs +2 -2
- package/scripts/build/registry/generators/permissions-registry.mjs +5 -11
- package/scripts/build/registry/generators/plugin-catalog.mjs +73 -0
- package/scripts/build/registry/generators/plugin-registry.mjs +3 -1
- package/scripts/build/registry/generators/route-handlers.mjs +11 -105
- package/scripts/build/registry/generators/theme-registry.mjs +170 -1
- package/scripts/build/registry/generators/translation-registry.mjs +37 -71
- package/scripts/build/registry/generators/unified-registry.mjs +4 -10
- package/scripts/build/registry/host/README.md +296 -0
- package/scripts/build/registry/host/__tests__/diag-write-child.mjs +6 -0
- package/scripts/build/registry/host/__tests__/facade-emitter.test.mjs +659 -0
- package/scripts/build/registry/host/__tests__/host-area-access.test.mjs +278 -0
- package/scripts/build/registry/host/__tests__/host-composition.test.mjs +286 -0
- package/scripts/build/registry/host/__tests__/host-entities.test.mjs +886 -0
- package/scripts/build/registry/host/__tests__/host-generation.test.mjs +382 -0
- package/scripts/build/registry/host/__tests__/host-helpers.mjs +88 -0
- package/scripts/build/registry/host/__tests__/host-mode.test.mjs +153 -0
- package/scripts/build/registry/host/__tests__/host-plan.test.mjs +362 -0
- package/scripts/build/registry/host/__tests__/host-project-composition.test.mjs +269 -0
- package/scripts/build/registry/host/__tests__/host-project.test.mjs +80 -0
- package/scripts/build/registry/host/__tests__/host-proxy-areas.test.mjs +69 -0
- package/scripts/build/registry/host/__tests__/host-robustness.test.mjs +525 -0
- package/scripts/build/registry/host/__tests__/host-watch.test.mjs +162 -0
- package/scripts/build/registry/host/__tests__/lock-race-child.mjs +19 -0
- package/scripts/build/registry/host/__tests__/publish-crash-child.mjs +6 -0
- package/scripts/build/registry/host/__tests__/static-imports.test.mjs +254 -0
- package/scripts/build/registry/host/core-routes.mjs +307 -0
- package/scripts/build/registry/host/entity-routes.mjs +392 -0
- package/scripts/build/registry/host/facade-emitter.mjs +666 -0
- package/scripts/build/registry/host/generation.mjs +723 -0
- package/scripts/build/registry/host/mode.mjs +57 -0
- package/scripts/build/registry/host/next-literal.mjs +87 -0
- package/scripts/build/registry/host/next-route-exports.json +366 -0
- package/scripts/build/registry/host/plan.mjs +668 -0
- package/scripts/build/registry/host/prepare-cli.mjs +191 -0
- package/scripts/build/registry/host/prepare.mjs +722 -0
- package/scripts/build/registry/host/proxy-areas.mjs +56 -0
- package/scripts/build/registry/host/render.mjs +437 -0
- package/scripts/build/registry/host/static-imports.mjs +317 -0
- package/scripts/build/registry/host/webhooks.mjs +93 -0
- package/scripts/build/registry/index.mjs +4 -13
- package/scripts/build/registry/post-build/index.mjs +1 -8
- package/scripts/build/registry/post-build/own-gitignores.mjs +3 -4
- package/scripts/build/registry/post-build/test-fixtures.mjs +20 -30
- package/scripts/build/registry/post-build/tree-display.mjs +6 -6
- package/scripts/build/registry/project-mode.mjs +224 -51
- package/scripts/build/registry/validate-env.test.mjs +4 -89
- package/scripts/build/registry/validation/entity-validator.mjs +5 -6
- package/scripts/build/registry/write-places.mjs +26 -85
- package/scripts/build/registry.mjs +54 -195
- package/scripts/build/routes-manifest.mjs +214 -0
- package/scripts/build/safe-fs.mjs +1 -2
- package/scripts/build/update-tsconfig.mjs +26 -204
- package/scripts/create-plugin.mjs +10 -8
- package/scripts/create-theme.mjs +2 -305
- package/scripts/db/run-migrations.mjs +24 -86
- package/scripts/db/theme-location.mjs +23 -44
- package/scripts/db/verify-theme-migrations.mjs +16 -5
- package/scripts/deploy/vercel-deploy.mjs +8 -10
- package/scripts/dev/watch-plugins.mjs +39 -130
- package/scripts/maintenance/core-updater.mjs +29 -36
- package/scripts/maintenance/step-guard.mjs +1 -1
- package/scripts/postinstall.mjs +25 -43
- package/scripts/setup/setup-ci.mjs +2 -3
- package/scripts/test/build-entities.mjs +27 -107
- package/scripts/test/cy.mjs +29 -125
- package/scripts/test/jest.mjs +22 -50
- package/scripts/update-registry-imports.mjs +0 -1
- package/scripts/validation/check-imports.sh +33 -213
- package/src/lib/entities/portable/media-ref.ts +24 -0
- package/src/lib/entities/portable/response-shape.ts +80 -0
- package/src/lib/entities/portable/schema-generator.ts +965 -0
- package/src/lib/entities/portable/system-fields.ts +11 -0
- package/src/lib/entities/portable/types.ts +71 -0
- package/templates/blocks/README.md +6 -12
- package/templates/blocks/cta-section/config.ts +0 -1
- package/templates/blocks/cta-section/thumbnail.png +0 -0
- package/templates/blocks/features-grid/config.ts +0 -1
- package/templates/blocks/features-grid/thumbnail.png +0 -0
- package/templates/blocks/hero/config.ts +0 -1
- package/templates/blocks/hero/thumbnail.png +0 -0
- package/templates/blocks/testimonials/config.ts +0 -1
- package/templates/blocks/testimonials/thumbnail.png +0 -0
- package/templates/blocks/text-content/config.ts +0 -1
- package/templates/blocks/text-content/thumbnail.png +0 -0
- package/templates/ci-workflows/README.md +4 -5
- package/templates/ci-workflows/github/cypress-regression.yml +7 -14
- package/templates/ci-workflows/github/cypress-smoke.yml +3 -5
- package/templates/eslint.config.mjs +3 -3
- package/templates/features/blog/blocks/post-content/config.ts +0 -1
- package/templates/features/blog/entities/posts/posts.config.ts +1 -1
- package/templates/features/pages/blocks/hero/config.ts +0 -1
- package/templates/features/pages/entities/pages/pages.config.ts +1 -1
- package/templates/instrumentation.ts +9 -0
- package/templates/migrations/README.md +2 -2
- package/templates/next.config.mjs +34 -8
- package/templates/plugins/README.md +42 -0
- package/templates/plugins/starter/plugin/README.md.template +97 -0
- package/templates/plugins/starter/plugin/api/example/route.ts.template +94 -0
- package/templates/plugins/starter/plugin/hooks/usePlugin.ts.template +102 -0
- package/templates/pnpm-workspace.yaml +3 -5
- package/templates/projects/blog/README.md +62 -0
- package/templates/projects/blog/about.md +93 -0
- package/templates/projects/blog/api/authors/[username]/route.ts +153 -0
- package/templates/projects/blog/api/authors/docs.md +135 -0
- package/templates/projects/blog/api/authors/presets.ts +45 -0
- package/templates/projects/blog/api/authors/route.ts +66 -0
- package/templates/projects/blog/api/posts/public/docs.md +124 -0
- package/templates/projects/blog/api/posts/public/presets.ts +65 -0
- package/templates/projects/blog/api/posts/public/route.ts +154 -0
- package/templates/projects/blog/components/ExportPostsButton.tsx +103 -0
- package/templates/projects/blog/components/ImportPostsDialog.tsx +285 -0
- package/templates/projects/blog/components/PostsToolbar.tsx +24 -0
- package/templates/projects/blog/components/editor/FeaturedImageUpload.tsx +186 -0
- package/templates/projects/blog/components/editor/WysiwygEditor.tsx +389 -0
- package/templates/projects/blog/components/index.ts +4 -0
- package/templates/projects/blog/components/public/AuthorBio.tsx +106 -0
- package/templates/projects/blog/components/public/AuthorCard.tsx +131 -0
- package/templates/projects/blog/components/public/BlogFooter.tsx +186 -0
- package/templates/projects/blog/components/public/BlogNavbar.tsx +201 -0
- package/templates/projects/blog/components/public/PostCard.tsx +307 -0
- package/templates/projects/blog/components/public/ReadingProgress.tsx +70 -0
- package/templates/projects/blog/components/public/RelatedPosts.tsx +79 -0
- package/templates/projects/blog/config/app.config.ts +193 -0
- package/templates/projects/blog/config/billing.config.ts +143 -0
- package/templates/projects/blog/config/dashboard.config.ts +346 -0
- package/templates/projects/blog/config/dev.config.ts +48 -0
- package/templates/projects/blog/config/features.config.ts +196 -0
- package/templates/projects/blog/config/flows.config.ts +333 -0
- package/templates/projects/blog/config/permissions.config.ts +112 -0
- package/templates/projects/blog/config/theme.config.ts +128 -0
- package/templates/projects/blog/entities/categories/api/docs.md +119 -0
- package/templates/projects/blog/entities/categories/api/presets.ts +67 -0
- package/templates/projects/blog/entities/categories/categories.config.ts +60 -0
- package/templates/projects/blog/entities/categories/categories.fields.ts +115 -0
- package/templates/projects/blog/entities/categories/categories.service.ts +333 -0
- package/templates/projects/blog/entities/categories/categories.types.ts +58 -0
- package/templates/projects/blog/entities/categories/messages/en.json +33 -0
- package/templates/projects/blog/entities/categories/messages/es.json +33 -0
- package/templates/projects/blog/entities/posts/api/docs.md +174 -0
- package/templates/projects/blog/entities/posts/api/presets.ts +137 -0
- package/templates/projects/blog/entities/posts/messages/en.json +100 -0
- package/templates/projects/blog/entities/posts/messages/es.json +100 -0
- package/templates/projects/blog/entities/posts/migrations/001_posts_table.sql +110 -0
- package/templates/projects/blog/entities/posts/migrations/002_add_featured.sql +19 -0
- package/templates/projects/blog/entities/posts/migrations/003_post_categories_pivot.sql +47 -0
- package/templates/projects/blog/entities/posts/posts.config.ts +61 -0
- package/templates/projects/blog/entities/posts/posts.fields.ts +234 -0
- package/templates/projects/blog/entities/posts/posts.service.ts +464 -0
- package/templates/projects/blog/entities/posts/posts.types.ts +80 -0
- package/templates/projects/blog/lib/sanitize-post-html.ts +52 -0
- package/templates/projects/blog/lib/selectors.ts +178 -0
- package/templates/projects/blog/messages/en.json +113 -0
- package/templates/projects/blog/messages/es.json +113 -0
- package/templates/projects/blog/migrations/002_author_profile_fields.sql +37 -0
- package/templates/projects/blog/migrations/003_categories_table.sql +90 -0
- package/templates/projects/blog/migrations/090_billing_sample_data.sql +99 -0
- package/templates/projects/blog/migrations/999_sample_data.sql +412 -0
- package/templates/projects/blog/migrations/999_theme_sample_data.sql +1070 -0
- package/templates/projects/blog/package.json +30 -0
- package/templates/projects/blog/permissions-matrix.md +63 -0
- package/templates/projects/blog/styles/article.css +333 -0
- package/templates/projects/blog/styles/components.css +204 -0
- package/templates/projects/blog/styles/globals.css +384 -0
- package/templates/projects/blog/styles/theme.css +167 -0
- package/templates/projects/blog/templates/(public)/author/[username]/page.tsx +248 -0
- package/templates/projects/blog/templates/(public)/authors/page.tsx +162 -0
- package/templates/projects/blog/templates/(public)/layout.tsx +44 -0
- package/templates/projects/blog/templates/(public)/page.tsx +277 -0
- package/templates/projects/blog/templates/(public)/posts/[slug]/page.tsx +344 -0
- package/templates/projects/blog/templates/dashboard/(main)/page.tsx +386 -0
- package/templates/projects/blog/templates/dashboard/(main)/posts/[id]/edit/page.tsx +530 -0
- package/templates/projects/blog/templates/dashboard/(main)/posts/[id]/page.tsx +33 -0
- package/templates/projects/blog/templates/dashboard/(main)/posts/create/page.tsx +354 -0
- package/templates/projects/blog/templates/dashboard/(main)/posts/page.tsx +834 -0
- package/templates/projects/blog/tests/cypress/e2e/README.md +170 -0
- package/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.cy.ts +322 -0
- package/templates/projects/blog/tests/cypress/e2e/categories/categories-crud.md +73 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.cy.ts +460 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-crud.md +115 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.cy.ts +290 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-editor.md +139 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.cy.ts +302 -0
- package/templates/projects/blog/tests/cypress/e2e/posts/posts-status-workflow.md +83 -0
- package/templates/projects/blog/tests/cypress/fixtures/blocks.json +9 -0
- package/templates/projects/blog/tests/cypress/fixtures/entities.json +51 -0
- package/templates/projects/blog/tests/cypress/src/FeaturedImageUpload.js +131 -0
- package/templates/projects/blog/tests/cypress/src/PostEditor.js +386 -0
- package/templates/projects/blog/tests/cypress/src/PostsList.js +350 -0
- package/templates/projects/blog/tests/cypress/src/WysiwygEditor.js +373 -0
- package/templates/projects/blog/tests/cypress/src/components/EntityForm.ts +378 -0
- package/templates/projects/blog/tests/cypress/src/components/EntityList.ts +378 -0
- package/templates/projects/blog/tests/cypress/src/components/PostEditorPOM.ts +447 -0
- package/templates/projects/blog/tests/cypress/src/components/PostsPOM.ts +362 -0
- package/templates/projects/blog/tests/cypress/src/components/index.ts +18 -0
- package/templates/projects/blog/tests/cypress/src/index.js +33 -0
- package/templates/projects/blog/tests/cypress/src/selectors.ts +49 -0
- package/templates/projects/blog/tests/cypress/src/session-helpers.ts +151 -0
- package/templates/projects/blog/tests/cypress/support/e2e.ts +90 -0
- package/templates/projects/blog/tests/cypress.config.ts +149 -0
- package/templates/projects/blog/tests/jest/__mocks__/jose.js +22 -0
- package/templates/projects/blog/tests/jest/__mocks__/next-server.js +56 -0
- package/templates/projects/blog/tests/jest/components/WysiwygEditor.test.tsx +118 -0
- package/templates/projects/blog/tests/jest/jest.config.cjs +104 -0
- package/templates/projects/blog/tests/jest/lib/sanitize-post-html.test.ts +48 -0
- package/templates/projects/blog/tests/jest/setup.ts +170 -0
- package/templates/projects/blog/tests/jest/tsconfig.jest.json +6 -0
- package/templates/projects/blog/tests/tsconfig.json +7 -0
- package/templates/projects/crm/CRM_PLAN.md +343 -0
- package/templates/projects/crm/about.md +122 -0
- package/templates/projects/crm/config/app.config.ts +178 -0
- package/templates/projects/crm/config/billing.config.ts +184 -0
- package/templates/projects/crm/config/dashboard.config.ts +385 -0
- package/templates/projects/crm/config/dev.config.ts +55 -0
- package/templates/projects/crm/config/features.config.ts +336 -0
- package/templates/projects/crm/config/flows.config.ts +511 -0
- package/templates/projects/crm/config/permissions.config.ts +308 -0
- package/templates/projects/crm/config/theme.config.ts +111 -0
- package/templates/projects/crm/entities/activities/activities.config.ts +61 -0
- package/templates/projects/crm/entities/activities/activities.fields.ts +362 -0
- package/templates/projects/crm/entities/activities/activities.service.ts +503 -0
- package/templates/projects/crm/entities/activities/activities.types.ts +117 -0
- package/templates/projects/crm/entities/activities/api/docs.md +146 -0
- package/templates/projects/crm/entities/activities/api/presets.ts +132 -0
- package/templates/projects/crm/entities/activities/messages/en.json +123 -0
- package/templates/projects/crm/entities/activities/messages/es.json +123 -0
- package/templates/projects/crm/entities/activities/migrations/020_activities_table.sql +123 -0
- package/templates/projects/crm/entities/activities/migrations/021_activities_metas.sql +114 -0
- package/templates/projects/crm/entities/activities/migrations/022_activities_sample_data.sql +420 -0
- package/templates/projects/crm/entities/campaigns/api/docs.md +140 -0
- package/templates/projects/crm/entities/campaigns/api/presets.ts +147 -0
- package/templates/projects/crm/entities/campaigns/campaigns.config.ts +61 -0
- package/templates/projects/crm/entities/campaigns/campaigns.fields.ts +413 -0
- package/templates/projects/crm/entities/campaigns/campaigns.service.ts +426 -0
- package/templates/projects/crm/entities/campaigns/campaigns.types.ts +124 -0
- package/templates/projects/crm/entities/campaigns/messages/en.json +145 -0
- package/templates/projects/crm/entities/campaigns/messages/es.json +145 -0
- package/templates/projects/crm/entities/campaigns/migrations/001_campaigns_table.sql +127 -0
- package/templates/projects/crm/entities/campaigns/migrations/002_campaigns_metas.sql +114 -0
- package/templates/projects/crm/entities/campaigns/migrations/003_campaigns_sample_data.sql +364 -0
- package/templates/projects/crm/entities/companies/api/docs.md +139 -0
- package/templates/projects/crm/entities/companies/api/presets.ts +107 -0
- package/templates/projects/crm/entities/companies/companies.config.ts +61 -0
- package/templates/projects/crm/entities/companies/companies.fields.ts +429 -0
- package/templates/projects/crm/entities/companies/companies.service.ts +566 -0
- package/templates/projects/crm/entities/companies/companies.types.ts +125 -0
- package/templates/projects/crm/entities/companies/messages/en.json +146 -0
- package/templates/projects/crm/entities/companies/messages/es.json +146 -0
- package/templates/projects/crm/entities/companies/migrations/001_companies_table.sql +150 -0
- package/templates/projects/crm/entities/companies/migrations/002_companies_metas.sql +114 -0
- package/templates/projects/crm/entities/companies/migrations/003_companies_sample_data.sql +246 -0
- package/templates/projects/crm/entities/contacts/api/docs.md +139 -0
- package/templates/projects/crm/entities/contacts/api/presets.ts +98 -0
- package/templates/projects/crm/entities/contacts/contacts.config.ts +61 -0
- package/templates/projects/crm/entities/contacts/contacts.fields.ts +359 -0
- package/templates/projects/crm/entities/contacts/contacts.service.ts +509 -0
- package/templates/projects/crm/entities/contacts/contacts.types.ts +108 -0
- package/templates/projects/crm/entities/contacts/messages/en.json +117 -0
- package/templates/projects/crm/entities/contacts/messages/es.json +117 -0
- package/templates/projects/crm/entities/contacts/migrations/001_contacts_table.sql +134 -0
- package/templates/projects/crm/entities/contacts/migrations/002_contacts_metas.sql +114 -0
- package/templates/projects/crm/entities/contacts/migrations/003_contacts_sample_data.sql +421 -0
- package/templates/projects/crm/entities/leads/api/docs.md +132 -0
- package/templates/projects/crm/entities/leads/api/presets.ts +109 -0
- package/templates/projects/crm/entities/leads/leads.config.ts +61 -0
- package/templates/projects/crm/entities/leads/leads.fields.ts +336 -0
- package/templates/projects/crm/entities/leads/leads.service.ts +496 -0
- package/templates/projects/crm/entities/leads/leads.types.ts +114 -0
- package/templates/projects/crm/entities/leads/messages/en.json +132 -0
- package/templates/projects/crm/entities/leads/messages/es.json +132 -0
- package/templates/projects/crm/entities/leads/migrations/001_leads_table.sql +150 -0
- package/templates/projects/crm/entities/leads/migrations/002_leads_metas.sql +120 -0
- package/templates/projects/crm/entities/leads/migrations/003_leads_sample_data.sql +242 -0
- package/templates/projects/crm/entities/notes/api/docs.md +135 -0
- package/templates/projects/crm/entities/notes/api/presets.ts +115 -0
- package/templates/projects/crm/entities/notes/messages/en.json +114 -0
- package/templates/projects/crm/entities/notes/messages/es.json +114 -0
- package/templates/projects/crm/entities/notes/migrations/020_notes_table.sql +118 -0
- package/templates/projects/crm/entities/notes/migrations/021_notes_metas.sql +114 -0
- package/templates/projects/crm/entities/notes/migrations/022_notes_sample_data.sql +275 -0
- package/templates/projects/crm/entities/notes/notes.config.ts +61 -0
- package/templates/projects/crm/entities/notes/notes.fields.ts +283 -0
- package/templates/projects/crm/entities/notes/notes.service.ts +320 -0
- package/templates/projects/crm/entities/notes/notes.types.ts +102 -0
- package/templates/projects/crm/entities/opportunities/api/docs.md +151 -0
- package/templates/projects/crm/entities/opportunities/api/presets.ts +151 -0
- package/templates/projects/crm/entities/opportunities/messages/en.json +107 -0
- package/templates/projects/crm/entities/opportunities/messages/es.json +107 -0
- package/templates/projects/crm/entities/opportunities/migrations/010_opportunities_table.sql +145 -0
- package/templates/projects/crm/entities/opportunities/migrations/011_opportunities_metas.sql +114 -0
- package/templates/projects/crm/entities/opportunities/migrations/012_opportunities_sample_data.sql +438 -0
- package/templates/projects/crm/entities/opportunities/opportunities.config.ts +61 -0
- package/templates/projects/crm/entities/opportunities/opportunities.fields.ts +416 -0
- package/templates/projects/crm/entities/opportunities/opportunities.service.ts +525 -0
- package/templates/projects/crm/entities/opportunities/opportunities.types.ts +135 -0
- package/templates/projects/crm/entities/pipelines/api/docs.md +145 -0
- package/templates/projects/crm/entities/pipelines/api/presets.ts +118 -0
- package/templates/projects/crm/entities/pipelines/messages/en.json +115 -0
- package/templates/projects/crm/entities/pipelines/messages/es.json +115 -0
- package/templates/projects/crm/entities/pipelines/migrations/001_pipelines_table.sql +106 -0
- package/templates/projects/crm/entities/pipelines/migrations/002_pipelines_metas.sql +114 -0
- package/templates/projects/crm/entities/pipelines/migrations/003_pipelines_sample_data.sql +91 -0
- package/templates/projects/crm/entities/pipelines/pipelines.config.ts +62 -0
- package/templates/projects/crm/entities/pipelines/pipelines.fields.ts +193 -0
- package/templates/projects/crm/entities/pipelines/pipelines.service.ts +383 -0
- package/templates/projects/crm/entities/pipelines/pipelines.types.ts +78 -0
- package/templates/projects/crm/entities/products/api/docs.md +137 -0
- package/templates/projects/crm/entities/products/api/presets.ts +132 -0
- package/templates/projects/crm/entities/products/messages/en.json +135 -0
- package/templates/projects/crm/entities/products/messages/es.json +135 -0
- package/templates/projects/crm/entities/products/migrations/001_products_table.sql +117 -0
- package/templates/projects/crm/entities/products/migrations/002_products_metas.sql +114 -0
- package/templates/projects/crm/entities/products/migrations/003_products_sample_data.sql +247 -0
- package/templates/projects/crm/entities/products/products.config.ts +62 -0
- package/templates/projects/crm/entities/products/products.fields.ts +361 -0
- package/templates/projects/crm/entities/products/products.service.ts +437 -0
- package/templates/projects/crm/entities/products/products.types.ts +125 -0
- package/templates/projects/crm/lib/crm-constants.ts +77 -0
- package/templates/projects/crm/lib/crm-utils.ts +185 -0
- package/templates/projects/crm/lib/selectors.ts +332 -0
- package/templates/projects/crm/messages/en.json +131 -0
- package/templates/projects/crm/messages/es.json +131 -0
- package/templates/projects/crm/migrations/090_billing_sample_data.sql +99 -0
- package/templates/projects/crm/migrations/999_theme_sample_data.sql +473 -0
- package/templates/projects/crm/package.json +26 -0
- package/templates/projects/crm/pendings.md +204 -0
- package/templates/projects/crm/permissions-matrix.md +216 -0
- package/templates/projects/crm/styles/components.css +414 -0
- package/templates/projects/crm/styles/crm-theme.css +358 -0
- package/templates/projects/crm/styles/globals.css +624 -0
- package/templates/projects/crm/styles/variables.css +111 -0
- package/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityCard.tsx +169 -0
- package/templates/projects/crm/templates/dashboard/(main)/activities/components/ActivityTimeline.tsx +165 -0
- package/templates/projects/crm/templates/dashboard/(main)/activities/page.tsx +297 -0
- package/templates/projects/crm/templates/dashboard/(main)/campaigns/page.tsx +373 -0
- package/templates/projects/crm/templates/dashboard/(main)/companies/page.tsx +296 -0
- package/templates/projects/crm/templates/dashboard/(main)/contacts/page.tsx +347 -0
- package/templates/projects/crm/templates/dashboard/(main)/layout.tsx +98 -0
- package/templates/projects/crm/templates/dashboard/(main)/leads/page.tsx +335 -0
- package/templates/projects/crm/templates/dashboard/(main)/opportunities/[id]/edit/page.tsx +95 -0
- package/templates/projects/crm/templates/dashboard/(main)/opportunities/create/page.tsx +94 -0
- package/templates/projects/crm/templates/dashboard/(main)/opportunities/page.tsx +350 -0
- package/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/edit/page.tsx +95 -0
- package/templates/projects/crm/templates/dashboard/(main)/pipelines/[id]/page.tsx +143 -0
- package/templates/projects/crm/templates/dashboard/(main)/pipelines/create/page.tsx +94 -0
- package/templates/projects/crm/templates/dashboard/(main)/pipelines/page.tsx +235 -0
- package/templates/projects/crm/templates/dashboard/(main)/products/[id]/edit/page.tsx +97 -0
- package/templates/projects/crm/templates/dashboard/(main)/products/[id]/page.tsx +510 -0
- package/templates/projects/crm/templates/dashboard/(main)/products/create/page.tsx +96 -0
- package/templates/projects/crm/templates/dashboard/(main)/products/page.tsx +308 -0
- package/templates/projects/crm/templates/shared/ActionButtons.tsx +41 -0
- package/templates/projects/crm/templates/shared/CRMDashboard.tsx +519 -0
- package/templates/projects/crm/templates/shared/CRMDataTable.tsx +441 -0
- package/templates/projects/crm/templates/shared/CRMMetricCard.tsx +76 -0
- package/templates/projects/crm/templates/shared/CRMMobileNav.tsx +172 -0
- package/templates/projects/crm/templates/shared/CRMSidebar.tsx +347 -0
- package/templates/projects/crm/templates/shared/CRMTopBar.tsx +266 -0
- package/templates/projects/crm/templates/shared/DealCard.tsx +123 -0
- package/templates/projects/crm/templates/shared/EntityCard.tsx +58 -0
- package/templates/projects/crm/templates/shared/OpportunityForm.tsx +649 -0
- package/templates/projects/crm/templates/shared/PipelineForm.tsx +367 -0
- package/templates/projects/crm/templates/shared/PipelineKanban.tsx +194 -0
- package/templates/projects/crm/templates/shared/QuickFilters.tsx +47 -0
- package/templates/projects/crm/templates/shared/StageColumn.tsx +175 -0
- package/templates/projects/crm/templates/shared/StageSelect.tsx +177 -0
- package/templates/projects/crm/templates/shared/StagesRepeater.tsx +317 -0
- package/templates/projects/crm/templates/shared/index.ts +9 -0
- package/templates/projects/crm/tests/cypress/e2e/api/activities/activities-crud.cy.ts +686 -0
- package/templates/projects/crm/tests/cypress/e2e/api/campaigns/campaigns-crud.cy.ts +592 -0
- package/templates/projects/crm/tests/cypress/e2e/api/companies/companies-crud.cy.ts +682 -0
- package/templates/projects/crm/tests/cypress/e2e/api/contacts/contacts-crud.cy.ts +668 -0
- package/templates/projects/crm/tests/cypress/e2e/api/leads/leads-crud.cy.ts +648 -0
- package/templates/projects/crm/tests/cypress/e2e/api/notes/notes-crud.cy.ts +424 -0
- package/templates/projects/crm/tests/cypress/e2e/api/opportunities/opportunities-crud.cy.ts +865 -0
- package/templates/projects/crm/tests/cypress/e2e/api/pipelines/pipelines-crud.cy.ts +545 -0
- package/templates/projects/crm/tests/cypress/e2e/api/products/products-crud.cy.ts +447 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-admin.cy.ts +268 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-member.cy.ts +257 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/activities/activities-owner.cy.ts +268 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-admin.cy.ts +188 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-member.cy.ts +166 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/companies/companies-owner.cy.ts +189 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-admin.cy.ts +252 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-member.cy.ts +224 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/contacts/contacts-owner.cy.ts +236 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-admin.cy.ts +286 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-member.cy.ts +193 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/leads/leads-owner.cy.ts +210 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-admin.cy.ts +197 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-member.cy.ts +229 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/opportunities/opportunities-owner.cy.ts +196 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-admin.cy.ts +320 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-member.cy.ts +262 -0
- package/templates/projects/crm/tests/cypress/e2e/ui/pipelines/pipelines-owner.cy.ts +282 -0
- package/templates/projects/crm/tests/cypress/fixtures/blocks.json +9 -0
- package/templates/projects/crm/tests/cypress/fixtures/entities.json +240 -0
- package/templates/projects/crm/tests/cypress/src/components/CRMDataTable.js +223 -0
- package/templates/projects/crm/tests/cypress/src/components/CRMMobileNav.js +138 -0
- package/templates/projects/crm/tests/cypress/src/components/CRMSidebar.js +145 -0
- package/templates/projects/crm/tests/cypress/src/components/CRMTopBar.js +194 -0
- package/templates/projects/crm/tests/cypress/src/components/DealCard.js +197 -0
- package/templates/projects/crm/tests/cypress/src/components/EntityDetail.ts +290 -0
- package/templates/projects/crm/tests/cypress/src/components/EntityForm.ts +357 -0
- package/templates/projects/crm/tests/cypress/src/components/EntityList.ts +360 -0
- package/templates/projects/crm/tests/cypress/src/components/PipelineKanban.js +204 -0
- package/templates/projects/crm/tests/cypress/src/components/StageColumn.js +196 -0
- package/templates/projects/crm/tests/cypress/src/components/index.js +13 -0
- package/templates/projects/crm/tests/cypress/src/components/index.ts +22 -0
- package/templates/projects/crm/tests/cypress/src/controllers/ActivityAPIController.ts +113 -0
- package/templates/projects/crm/tests/cypress/src/controllers/BaseAPIController.ts +307 -0
- package/templates/projects/crm/tests/cypress/src/controllers/CampaignAPIController.ts +114 -0
- package/templates/projects/crm/tests/cypress/src/controllers/CompanyAPIController.ts +112 -0
- package/templates/projects/crm/tests/cypress/src/controllers/ContactAPIController.ts +104 -0
- package/templates/projects/crm/tests/cypress/src/controllers/LeadAPIController.ts +96 -0
- package/templates/projects/crm/tests/cypress/src/controllers/NoteAPIController.ts +130 -0
- package/templates/projects/crm/tests/cypress/src/controllers/OpportunityAPIController.ts +134 -0
- package/templates/projects/crm/tests/cypress/src/controllers/PipelineAPIController.ts +116 -0
- package/templates/projects/crm/tests/cypress/src/controllers/ProductAPIController.ts +113 -0
- package/templates/projects/crm/tests/cypress/src/controllers/index.ts +35 -0
- package/templates/projects/crm/tests/cypress/src/entities/ActivitiesPOM.ts +130 -0
- package/templates/projects/crm/tests/cypress/src/entities/CompaniesPOM.ts +117 -0
- package/templates/projects/crm/tests/cypress/src/entities/ContactsPOM.ts +117 -0
- package/templates/projects/crm/tests/cypress/src/entities/LeadsPOM.ts +129 -0
- package/templates/projects/crm/tests/cypress/src/entities/OpportunitiesPOM.ts +178 -0
- package/templates/projects/crm/tests/cypress/src/entities/PipelinesPOM.ts +341 -0
- package/templates/projects/crm/tests/cypress/src/entities/index.ts +31 -0
- package/templates/projects/crm/tests/cypress/src/forms/OpportunityForm.js +316 -0
- package/templates/projects/crm/tests/cypress/src/forms/PipelineForm.js +243 -0
- package/templates/projects/crm/tests/cypress/src/forms/index.js +8 -0
- package/templates/projects/crm/tests/cypress/src/index.js +22 -0
- package/templates/projects/crm/tests/cypress/src/index.ts +68 -0
- package/templates/projects/crm/tests/cypress/src/selectors.ts +50 -0
- package/templates/projects/crm/tests/cypress/src/session-helpers.ts +176 -0
- package/templates/projects/crm/tests/cypress/support/e2e.ts +90 -0
- package/templates/projects/crm/tests/cypress.config.ts +149 -0
- package/templates/projects/crm/tests/tsconfig.json +7 -0
- package/templates/projects/productivity/README.md +73 -0
- package/templates/projects/productivity/about.md +123 -0
- package/templates/projects/productivity/components/CardDetailModal.tsx +318 -0
- package/templates/projects/productivity/components/KanbanBoard.tsx +613 -0
- package/templates/projects/productivity/components/KanbanCard.tsx +218 -0
- package/templates/projects/productivity/components/KanbanColumn.tsx +264 -0
- package/templates/projects/productivity/components/SortableList.tsx +46 -0
- package/templates/projects/productivity/components/index.ts +4 -0
- package/templates/projects/productivity/config/app.config.ts +165 -0
- package/templates/projects/productivity/config/billing.config.ts +184 -0
- package/templates/projects/productivity/config/dashboard.config.ts +370 -0
- package/templates/projects/productivity/config/dev.config.ts +55 -0
- package/templates/projects/productivity/config/features.config.ts +256 -0
- package/templates/projects/productivity/config/flows.config.ts +484 -0
- package/templates/projects/productivity/config/permissions.config.ts +178 -0
- package/templates/projects/productivity/config/theme.config.ts +106 -0
- package/templates/projects/productivity/entities/boards/api/docs.md +131 -0
- package/templates/projects/productivity/entities/boards/api/presets.ts +113 -0
- package/templates/projects/productivity/entities/boards/boards.config.ts +61 -0
- package/templates/projects/productivity/entities/boards/boards.fields.ts +154 -0
- package/templates/projects/productivity/entities/boards/boards.service.ts +256 -0
- package/templates/projects/productivity/entities/boards/boards.types.ts +57 -0
- package/templates/projects/productivity/entities/boards/messages/en.json +80 -0
- package/templates/projects/productivity/entities/boards/messages/es.json +80 -0
- package/templates/projects/productivity/entities/boards/migrations/001_boards_table.sql +83 -0
- package/templates/projects/productivity/entities/cards/api/docs.md +162 -0
- package/templates/projects/productivity/entities/cards/api/presets.ts +172 -0
- package/templates/projects/productivity/entities/cards/cards.config.ts +61 -0
- package/templates/projects/productivity/entities/cards/cards.fields.ts +242 -0
- package/templates/projects/productivity/entities/cards/cards.service.ts +336 -0
- package/templates/projects/productivity/entities/cards/cards.types.ts +79 -0
- package/templates/projects/productivity/entities/cards/messages/en.json +114 -0
- package/templates/projects/productivity/entities/cards/messages/es.json +114 -0
- package/templates/projects/productivity/entities/cards/migrations/020_cards_table.sql +92 -0
- package/templates/projects/productivity/entities/lists/api/docs.md +143 -0
- package/templates/projects/productivity/entities/lists/api/presets.ts +81 -0
- package/templates/projects/productivity/entities/lists/lists.config.ts +61 -0
- package/templates/projects/productivity/entities/lists/lists.fields.ts +105 -0
- package/templates/projects/productivity/entities/lists/lists.service.ts +252 -0
- package/templates/projects/productivity/entities/lists/lists.types.ts +55 -0
- package/templates/projects/productivity/entities/lists/messages/en.json +60 -0
- package/templates/projects/productivity/entities/lists/messages/es.json +60 -0
- package/templates/projects/productivity/entities/lists/migrations/010_lists_table.sql +79 -0
- package/templates/projects/productivity/lib/selectors.ts +205 -0
- package/templates/projects/productivity/messages/en.json +79 -0
- package/templates/projects/productivity/messages/es.json +79 -0
- package/templates/projects/productivity/migrations/090_billing_sample_data.sql +100 -0
- package/templates/projects/productivity/migrations/999_theme_sample_data.sql +922 -0
- package/templates/projects/productivity/migrations/999a_initial_sample_data.sql +377 -0
- package/templates/projects/productivity/migrations/999b_abundant_sample_data.sql +346 -0
- package/templates/projects/productivity/package.json +29 -0
- package/templates/projects/productivity/permissions-matrix.md +122 -0
- package/templates/projects/productivity/styles/components.css +460 -0
- package/templates/projects/productivity/styles/globals.css +608 -0
- package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/[cardId]/page.tsx +239 -0
- package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/edit/page.tsx +391 -0
- package/templates/projects/productivity/templates/dashboard/(main)/boards/[id]/page.tsx +237 -0
- package/templates/projects/productivity/templates/dashboard/(main)/boards/create/page.tsx +237 -0
- package/templates/projects/productivity/templates/dashboard/(main)/boards/page.tsx +336 -0
- package/templates/projects/productivity/templates/dashboard/(main)/layout.tsx +32 -0
- package/templates/projects/productivity/templates/dashboard/(main)/page.tsx +593 -0
- package/templates/projects/productivity/templates/shared/ProductivityMobileNav.tsx +411 -0
- package/templates/projects/productivity/templates/shared/ProductivitySidebar.tsx +539 -0
- package/templates/projects/productivity/templates/shared/ProductivityTopBar.tsx +318 -0
- package/templates/projects/productivity/tests/cypress/e2e/ui/boards/boards-owner.cy.ts +349 -0
- package/templates/projects/productivity/tests/cypress/e2e/ui/cards/cards-modal.cy.ts +369 -0
- package/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-cards.cy.ts +280 -0
- package/templates/projects/productivity/tests/cypress/e2e/ui/kanban/kanban-columns.cy.ts +243 -0
- package/templates/projects/productivity/tests/cypress/fixtures/blocks.json +9 -0
- package/templates/projects/productivity/tests/cypress/fixtures/entities.json +60 -0
- package/templates/projects/productivity/tests/cypress/src/components/BoardsPOM.ts +353 -0
- package/templates/projects/productivity/tests/cypress/src/components/CardsPOM.ts +383 -0
- package/templates/projects/productivity/tests/cypress/src/components/KanbanPOM.ts +399 -0
- package/templates/projects/productivity/tests/cypress/src/components/index.ts +9 -0
- package/templates/projects/productivity/tests/cypress/src/controllers/BoardsAPIController.js +302 -0
- package/templates/projects/productivity/tests/cypress/src/controllers/CardsAPIController.js +406 -0
- package/templates/projects/productivity/tests/cypress/src/controllers/ListsAPIController.js +299 -0
- package/templates/projects/productivity/tests/cypress/src/index.ts +25 -0
- package/templates/projects/productivity/tests/cypress/src/selectors.ts +50 -0
- package/templates/projects/productivity/tests/cypress/src/session-helpers.ts +176 -0
- package/templates/projects/productivity/tests/cypress/support/e2e.ts +90 -0
- package/templates/projects/productivity/tests/cypress.config.ts +149 -0
- package/templates/projects/productivity/tests/tsconfig.json +7 -0
- package/templates/projects/starter/blocks/cta-section/config.ts +10 -0
- package/templates/projects/starter/blocks/features-grid/config.ts +10 -0
- package/templates/projects/starter/blocks/hero/config.ts +10 -0
- package/templates/projects/starter/blocks/testimonials/config.ts +10 -0
- package/templates/projects/starter/blocks/text-content/config.ts +10 -0
- package/templates/projects/starter/emails/_README.md +69 -0
- package/templates/projects/starter/entities/pages/pages.config.ts +95 -0
- package/templates/projects/starter/entities/posts/posts.config.ts +102 -0
- package/templates/projects/starter/entities/tasks/tasks.config.ts +82 -0
- package/templates/projects/starter/styles/globals.css +213 -0
- package/templates/projects/starter/templates/(public)/page.tsx +49 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/docs/README.md +215 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +491 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +147 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +76 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +326 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +388 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +266 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +78 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +129 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +82 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +77 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +130 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +261 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +593 -0
- package/templates/projects/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +278 -0
- package/templates/projects/starter/tests/cypress/src/session-helpers.ts +548 -0
- package/templates/projects/starter/tests/cypress.config.ts +215 -0
- package/templates/projects/starter/tests/jest/__mocks__/jose.js +22 -0
- package/templates/projects/starter/tests/jest/__mocks__/next-server.js +56 -0
- package/templates/projects/starter/tests/jest/example.test.tsx +87 -0
- package/templates/projects/starter/tests/jest/jest.config.cjs +92 -0
- package/templates/projects/starter/tests/jest/services/tasks.service.test.ts +547 -0
- package/templates/projects/starter/tests/jest/tsconfig.jest.json +8 -0
- package/templates/projects/starter/tests/tsconfig.json +7 -0
- package/templates/proxy.ts +366 -107
- package/templates/public/uploads/README.md +1 -1
- package/templates/scripts/cy-run-prod.cjs +6 -34
- package/templates/tsconfig.cypress.json +4 -5
- package/templates/tsconfig.json +8 -16
- package/tests/jest/__mocks__/@nextsparkjs/registries/app-config.client.ts +3 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/block-schemas.ts +5 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/dashboard-config.client.ts +2 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/dev-keyring.client.ts +2 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/docs-registry.ts +7 -7
- package/tests/jest/__mocks__/@nextsparkjs/registries/plugin-catalog.ts +21 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/plugin-registry.client.ts +9 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/route-handlers.ts +1 -11
- package/tests/jest/__mocks__/@nextsparkjs/registries/theme-registry.client.ts +41 -0
- package/tests/jest/__mocks__/@nextsparkjs/registries/theme-registry.ts +2 -3
- package/tests/jest/__mocks__/@nextsparkjs/registries/translation-registry.ts +6 -0
- package/dist/lib/api/entity/public-resolver.d.ts +0 -28
- package/dist/lib/api/entity/public-resolver.d.ts.map +0 -1
- package/dist/lib/api/entity/public-resolver.js +0 -95
- package/dist/lib/services/middleware.service.d.ts +0 -66
- package/dist/lib/services/middleware.service.d.ts.map +0 -1
- package/dist/lib/services/middleware.service.js +0 -111
- package/dist/lib/services/route-handler.service.d.ts +0 -155
- package/dist/lib/services/route-handler.service.d.ts.map +0 -1
- package/dist/lib/services/route-handler.service.js +0 -160
- package/dist/lib/services/template.service.d.ts +0 -148
- package/dist/lib/services/template.service.d.ts.map +0 -1
- package/dist/lib/services/template.service.js +0 -184
- package/dist/lib/template-resolver.d.ts +0 -103
- package/dist/lib/template-resolver.d.ts.map +0 -1
- package/dist/lib/template-resolver.js +0 -120
- package/dist/lib/theme/theme-loader.d.ts +0 -59
- package/dist/lib/theme/theme-loader.d.ts.map +0 -1
- package/dist/lib/theme/theme-loader.js +0 -191
- package/dist/templates/app/(auth)/accept-invite/[token]/page.tsx +0 -339
- package/dist/templates/app/(auth)/auth-error/page.tsx +0 -25
- package/dist/templates/app/(auth)/forgot-password/page.tsx +0 -215
- package/dist/templates/app/(auth)/layout.tsx +0 -54
- package/dist/templates/app/(auth)/login/page.tsx +0 -22
- package/dist/templates/app/(auth)/reset-password/page.tsx +0 -211
- package/dist/templates/app/(auth)/signup/page.tsx +0 -63
- package/dist/templates/app/(auth)/verify-email/page.tsx +0 -190
- package/dist/templates/app/(public)/[...slug]/page.tsx +0 -386
- package/dist/templates/app/(public)/docs/[section]/[page]/page.tsx +0 -101
- package/dist/templates/app/(public)/docs/layout.tsx +0 -25
- package/dist/templates/app/(public)/docs/page.tsx +0 -81
- package/dist/templates/app/(public)/layout.tsx +0 -44
- package/dist/templates/app/(public)/page.tsx +0 -19
- package/dist/templates/app/403/page.tsx +0 -89
- package/dist/templates/app/api/auth/[...all]/route.ts +0 -214
- package/dist/templates/app/api/cron/billing/lifecycle/route.ts +0 -98
- package/dist/templates/app/api/csp-report/route.ts +0 -181
- package/dist/templates/app/api/devtools/config/entities/route.ts +0 -115
- package/dist/templates/app/api/devtools/config/theme/route.ts +0 -67
- package/dist/templates/app/api/devtools/tests/[...path]/route.ts +0 -131
- package/dist/templates/app/api/devtools/tests/route.ts +0 -135
- package/dist/templates/app/api/health/route.ts +0 -53
- package/dist/templates/app/api/internal/user-metadata/route.ts +0 -47
- package/dist/templates/app/api/mcp/route.ts +0 -176
- package/dist/templates/app/api/superadmin/subscriptions/route.ts +0 -315
- package/dist/templates/app/api/superadmin/teams/[teamId]/route.ts +0 -292
- package/dist/templates/app/api/superadmin/teams/route.ts +0 -187
- package/dist/templates/app/api/superadmin/users/[userId]/route.ts +0 -542
- package/dist/templates/app/api/superadmin/users/route.ts +0 -322
- package/dist/templates/app/api/user/delete-account/route.ts +0 -58
- package/dist/templates/app/api/user/plan-flags/route.ts +0 -270
- package/dist/templates/app/api/user/profile/route.ts +0 -129
- package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +0 -208
- package/dist/templates/app/api/v1/[entity]/[id]/child/[childType]/route.ts +0 -329
- package/dist/templates/app/api/v1/[entity]/[id]/route.ts +0 -33
- package/dist/templates/app/api/v1/[entity]/route.ts +0 -29
- package/dist/templates/app/api/v1/api-keys/[id]/route.ts +0 -283
- package/dist/templates/app/api/v1/api-keys/route.ts +0 -241
- package/dist/templates/app/api/v1/auth/signup-with-invite/route.ts +0 -243
- package/dist/templates/app/api/v1/billing/cancel/route.ts +0 -206
- package/dist/templates/app/api/v1/billing/change-plan/route.ts +0 -99
- package/dist/templates/app/api/v1/billing/check-action/route.ts +0 -85
- package/dist/templates/app/api/v1/billing/checkout/route.ts +0 -153
- package/dist/templates/app/api/v1/billing/plans/route.ts +0 -82
- package/dist/templates/app/api/v1/billing/portal/route.ts +0 -93
- package/dist/templates/app/api/v1/billing/webhooks/polar/route.ts +0 -495
- package/dist/templates/app/api/v1/billing/webhooks/stripe/route.ts +0 -34
- package/dist/templates/app/api/v1/blocks/[slug]/route.ts +0 -30
- package/dist/templates/app/api/v1/blocks/docs.md +0 -173
- package/dist/templates/app/api/v1/blocks/route.ts +0 -46
- package/dist/templates/app/api/v1/blocks/validate/route.ts +0 -47
- package/dist/templates/app/api/v1/cron/process/route.ts +0 -106
- package/dist/templates/app/api/v1/devtools/blocks/route.ts +0 -84
- package/dist/templates/app/api/v1/devtools/docs/route.ts +0 -153
- package/dist/templates/app/api/v1/devtools/docs.md +0 -204
- package/dist/templates/app/api/v1/devtools/features/route.ts +0 -63
- package/dist/templates/app/api/v1/devtools/flows/route.ts +0 -63
- package/dist/templates/app/api/v1/devtools/presets.ts +0 -113
- package/dist/templates/app/api/v1/devtools/scheduled-actions/route.ts +0 -244
- package/dist/templates/app/api/v1/devtools/scheduled-actions/run/route.ts +0 -111
- package/dist/templates/app/api/v1/devtools/testing/route.ts +0 -84
- package/dist/templates/app/api/v1/media/[id]/route.ts +0 -168
- package/dist/templates/app/api/v1/media/[id]/tags/route.ts +0 -212
- package/dist/templates/app/api/v1/media/check-duplicates/route.ts +0 -66
- package/dist/templates/app/api/v1/media/route.ts +0 -64
- package/dist/templates/app/api/v1/media/upload/route.ts +0 -274
- package/dist/templates/app/api/v1/media-tags/route.ts +0 -81
- package/dist/templates/app/api/v1/patterns/[id]/usages/route.ts +0 -108
- package/dist/templates/app/api/v1/plugin/[...path]/route.ts +0 -374
- package/dist/templates/app/api/v1/plugin/docs.md +0 -79
- package/dist/templates/app/api/v1/plugin/presets.ts +0 -21
- package/dist/templates/app/api/v1/plugin/route.ts +0 -97
- package/dist/templates/app/api/v1/post-categories/[id]/route.ts +0 -258
- package/dist/templates/app/api/v1/post-categories/route.ts +0 -121
- package/dist/templates/app/api/v1/team-invitations/[token]/accept/route.ts +0 -177
- package/dist/templates/app/api/v1/team-invitations/[token]/decline/route.ts +0 -118
- package/dist/templates/app/api/v1/team-invitations/[token]/route.ts +0 -90
- package/dist/templates/app/api/v1/team-invitations/route.ts +0 -113
- package/dist/templates/app/api/v1/teams/[teamId]/invitations/route.ts +0 -181
- package/dist/templates/app/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.ts +0 -105
- package/dist/templates/app/api/v1/teams/[teamId]/invoices/route.ts +0 -125
- package/dist/templates/app/api/v1/teams/[teamId]/members/[memberId]/route.ts +0 -260
- package/dist/templates/app/api/v1/teams/[teamId]/members/route.ts +0 -350
- package/dist/templates/app/api/v1/teams/[teamId]/route.ts +0 -289
- package/dist/templates/app/api/v1/teams/[teamId]/subscription/route.ts +0 -51
- package/dist/templates/app/api/v1/teams/[teamId]/usage/[limitSlug]/route.ts +0 -96
- package/dist/templates/app/api/v1/teams/route.ts +0 -305
- package/dist/templates/app/api/v1/teams/switch/route.ts +0 -106
- package/dist/templates/app/api/v1/theme/[...path]/route.ts +0 -383
- package/dist/templates/app/api/v1/theme/docs.md +0 -74
- package/dist/templates/app/api/v1/theme/presets.ts +0 -21
- package/dist/templates/app/api/v1/theme/route.ts +0 -97
- package/dist/templates/app/api/v1/users/[id]/meta/[key]/route.ts +0 -313
- package/dist/templates/app/api/v1/users/[id]/route.ts +0 -270
- package/dist/templates/app/api/v1/users/route.ts +0 -194
- package/dist/templates/app/dashboard/(main)/[entity]/[id]/edit/page.tsx +0 -117
- package/dist/templates/app/dashboard/(main)/[entity]/[id]/page.tsx +0 -85
- package/dist/templates/app/dashboard/(main)/[entity]/create/page.tsx +0 -95
- package/dist/templates/app/dashboard/(main)/[entity]/error.tsx +0 -51
- package/dist/templates/app/dashboard/(main)/[entity]/layout.tsx +0 -115
- package/dist/templates/app/dashboard/(main)/[entity]/loading.tsx +0 -64
- package/dist/templates/app/dashboard/(main)/[entity]/page.tsx +0 -71
- package/dist/templates/app/dashboard/(main)/layout.tsx +0 -99
- package/dist/templates/app/dashboard/(main)/loading.tsx +0 -8
- package/dist/templates/app/dashboard/(main)/media/page.tsx +0 -621
- package/dist/templates/app/dashboard/(main)/page.tsx +0 -201
- package/dist/templates/app/dashboard/(main)/patterns/[id]/edit/page.tsx +0 -117
- package/dist/templates/app/dashboard/(main)/patterns/[id]/page.tsx +0 -23
- package/dist/templates/app/dashboard/(main)/patterns/[id]/reports/page.tsx +0 -174
- package/dist/templates/app/dashboard/(main)/patterns/create/page.tsx +0 -89
- package/dist/templates/app/dashboard/(main)/patterns/page.tsx +0 -447
- package/dist/templates/app/dashboard/features/analytics/page.tsx +0 -38
- package/dist/templates/app/dashboard/features/automation/page.tsx +0 -38
- package/dist/templates/app/dashboard/features/layout.tsx +0 -16
- package/dist/templates/app/dashboard/features/loading.tsx +0 -8
- package/dist/templates/app/dashboard/features/webhooks/page.tsx +0 -38
- package/dist/templates/app/dashboard/layout.tsx +0 -87
- package/dist/templates/app/dashboard/permission-denied/page.tsx +0 -32
- package/dist/templates/app/dashboard/settings/api-keys/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/api-keys/page.tsx +0 -516
- package/dist/templates/app/dashboard/settings/billing/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/billing/page.tsx +0 -289
- package/dist/templates/app/dashboard/settings/invoices/[invoiceNumber]/page.tsx +0 -222
- package/dist/templates/app/dashboard/settings/invoices/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/invoices/page.tsx +0 -82
- package/dist/templates/app/dashboard/settings/layout.tsx +0 -151
- package/dist/templates/app/dashboard/settings/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/notifications/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/notifications/page.tsx +0 -462
- package/dist/templates/app/dashboard/settings/page.tsx +0 -93
- package/dist/templates/app/dashboard/settings/password/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/password/page.tsx +0 -305
- package/dist/templates/app/dashboard/settings/plans/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/plans/page.tsx +0 -62
- package/dist/templates/app/dashboard/settings/profile/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/profile/page.tsx +0 -688
- package/dist/templates/app/dashboard/settings/security/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/security/page.tsx +0 -506
- package/dist/templates/app/dashboard/settings/teams/loading.tsx +0 -8
- package/dist/templates/app/dashboard/settings/teams/page.tsx +0 -272
- package/dist/templates/app/dashboard/settings/teams/permissions/page.tsx +0 -95
- package/dist/templates/app/devtools/api/[[...endpoint]]/page.tsx +0 -33
- package/dist/templates/app/devtools/api/layout.tsx +0 -23
- package/dist/templates/app/devtools/blocks/[slug]/page.tsx +0 -39
- package/dist/templates/app/devtools/blocks/page.tsx +0 -40
- package/dist/templates/app/devtools/config/page.tsx +0 -40
- package/dist/templates/app/devtools/features/page.tsx +0 -40
- package/dist/templates/app/devtools/flows/page.tsx +0 -40
- package/dist/templates/app/devtools/layout.tsx +0 -66
- package/dist/templates/app/devtools/page.tsx +0 -130
- package/dist/templates/app/devtools/plugins/[plugin]/page.tsx +0 -17
- package/dist/templates/app/devtools/scheduled-actions/page.tsx +0 -158
- package/dist/templates/app/devtools/style/page.tsx +0 -330
- package/dist/templates/app/devtools/tags/page.tsx +0 -40
- package/dist/templates/app/devtools/tests/[[...path]]/page.tsx +0 -56
- package/dist/templates/app/favicon.ico +0 -0
- package/dist/templates/app/globals.css +0 -12
- package/dist/templates/app/layout.ppr.tsx +0 -105
- package/dist/templates/app/layout.tsx +0 -118
- package/dist/templates/app/public/page.tsx +0 -30
- package/dist/templates/app/superadmin/docs/[section]/[page]/page.tsx +0 -93
- package/dist/templates/app/superadmin/docs/page.tsx +0 -75
- package/dist/templates/app/superadmin/layout.tsx +0 -96
- package/dist/templates/app/superadmin/page.tsx +0 -149
- package/dist/templates/app/superadmin/plugins/[plugin]/page.tsx +0 -17
- package/dist/templates/app/superadmin/subscriptions/page.tsx +0 -658
- package/dist/templates/app/superadmin/team-roles/page.tsx +0 -493
- package/dist/templates/app/superadmin/teams/[teamId]/page.tsx +0 -691
- package/dist/templates/app/superadmin/teams/page.tsx +0 -302
- package/dist/templates/app/superadmin/users/[userId]/page.tsx +0 -549
- package/dist/templates/app/superadmin/users/page.tsx +0 -529
- package/dist/templates/contents/plugins/README.md +0 -42
- package/dist/templates/contents/plugins/starter/plugin/README.md.template +0 -97
- package/dist/templates/contents/plugins/starter/plugin/api/example/route.ts.template +0 -94
- package/dist/templates/contents/plugins/starter/plugin/hooks/usePlugin.ts.template +0 -102
- package/dist/templates/contents/themes/starter/blocks/cta-section/config.ts +0 -11
- package/dist/templates/contents/themes/starter/blocks/features-grid/config.ts +0 -11
- package/dist/templates/contents/themes/starter/blocks/hero/config.ts +0 -11
- package/dist/templates/contents/themes/starter/blocks/testimonials/config.ts +0 -11
- package/dist/templates/contents/themes/starter/blocks/text-content/config.ts +0 -11
- package/dist/templates/contents/themes/starter/emails/_README.md +0 -69
- package/dist/templates/contents/themes/starter/entities/pages/pages.config.ts +0 -95
- package/dist/templates/contents/themes/starter/entities/posts/posts.config.ts +0 -102
- package/dist/templates/contents/themes/starter/entities/tasks/tasks.config.ts +0 -82
- package/dist/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +0 -1
- package/dist/templates/contents/themes/starter/styles/globals.css +0 -214
- package/dist/templates/contents/themes/starter/templates/(public)/loading.tsx +0 -5
- package/dist/templates/contents/themes/starter/templates/(public)/page.tsx +0 -37
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/docs/README.md +0 -215
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +0 -491
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +0 -147
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +0 -76
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +0 -326
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +0 -388
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +0 -266
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +0 -78
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +0 -129
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +0 -82
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +0 -77
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +0 -130
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +0 -261
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +0 -593
- package/dist/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +0 -278
- package/dist/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +0 -549
- package/dist/templates/contents/themes/starter/tests/cypress.config.ts +0 -220
- package/dist/templates/contents/themes/starter/tests/jest/example.test.tsx +0 -87
- package/dist/templates/contents/themes/starter/tests/jest/jest.config.cjs +0 -95
- package/dist/templates/contents/themes/starter/tests/jest/services/tasks.service.test.ts +0 -547
- package/dist/templates/contents/themes/starter/tests/jest/tsconfig.jest.json +0 -8
- package/dist/templates/contents/themes/starter/tests/tsconfig.json +0 -15
- package/dist/templates/public/theme/blocks/cta-section/thumbnail.png +0 -1
- package/dist/templates/public/theme/blocks/features-grid/thumbnail.png +0 -1
- package/dist/templates/public/theme/blocks/hero/thumbnail.png +0 -1
- package/dist/templates/public/theme/blocks/testimonials/thumbnail.png +0 -1
- package/dist/templates/public/theme/blocks/text-content/thumbnail.png +0 -1
- package/scripts/build/registry/__tests__/globals-css-tag.test.mjs +0 -66
- package/scripts/build/registry/__tests__/page-generator.test.mjs +0 -604
- package/scripts/build/registry/__tests__/published-signatures.test.mjs +0 -239
- package/scripts/build/registry/__tests__/route-file-rule.test.mjs +0 -170
- package/scripts/build/registry/__tests__/template-analysis.test.mjs +0 -142
- package/scripts/build/registry/__tests__/template-registry.test.mjs +0 -693
- package/scripts/build/registry/__tests__/templates-plan.test.mjs +0 -128
- package/scripts/build/registry/__tests__/templates-tree.test.mjs +0 -367
- package/scripts/build/registry/discovery/templates.mjs +0 -250
- package/scripts/build/registry/generators/template-registry.mjs +0 -560
- package/scripts/build/registry/post-build/page-generator.mjs +0 -1066
- package/scripts/build/registry/post-build/route-cleanup.mjs +0 -199
- package/scripts/build/registry/watch.mjs +0 -80
- package/scripts/build/templates-plan.mjs +0 -44
- package/scripts/build/theme.mjs +0 -452
- package/scripts/generate-app.mjs +0 -190
- package/scripts/setup/npm-postinstall.mjs +0 -193
- package/scripts/setup/postinstall.mjs +0 -155
- package/scripts/test/jest-theme.mjs +0 -65
- package/scripts/utils/generated-tag.mjs +0 -66
- package/templates/app/(auth)/accept-invite/[token]/page.tsx +0 -339
- package/templates/app/(auth)/auth-error/page.tsx +0 -25
- package/templates/app/(auth)/forgot-password/page.tsx +0 -215
- package/templates/app/(auth)/layout.tsx +0 -54
- package/templates/app/(auth)/login/page.tsx +0 -22
- package/templates/app/(auth)/reset-password/page.tsx +0 -211
- package/templates/app/(auth)/signup/page.tsx +0 -63
- package/templates/app/(auth)/verify-email/page.tsx +0 -190
- package/templates/app/(public)/[...slug]/page.tsx +0 -386
- package/templates/app/(public)/docs/[section]/[page]/page.tsx +0 -101
- package/templates/app/(public)/docs/layout.tsx +0 -25
- package/templates/app/(public)/docs/page.tsx +0 -81
- package/templates/app/(public)/layout.tsx +0 -44
- package/templates/app/(public)/page.tsx +0 -19
- package/templates/app/403/page.tsx +0 -89
- package/templates/app/api/auth/[...all]/route.ts +0 -214
- package/templates/app/api/cron/billing/lifecycle/route.ts +0 -98
- package/templates/app/api/csp-report/route.ts +0 -181
- package/templates/app/api/devtools/config/entities/route.ts +0 -115
- package/templates/app/api/devtools/config/theme/route.ts +0 -67
- package/templates/app/api/devtools/tests/[...path]/route.ts +0 -131
- package/templates/app/api/devtools/tests/route.ts +0 -135
- package/templates/app/api/health/route.ts +0 -53
- package/templates/app/api/internal/user-metadata/route.ts +0 -47
- package/templates/app/api/mcp/route.ts +0 -176
- package/templates/app/api/superadmin/subscriptions/route.ts +0 -315
- package/templates/app/api/superadmin/teams/[teamId]/route.ts +0 -292
- package/templates/app/api/superadmin/teams/route.ts +0 -187
- package/templates/app/api/superadmin/users/[userId]/route.ts +0 -542
- package/templates/app/api/superadmin/users/route.ts +0 -322
- package/templates/app/api/user/delete-account/route.ts +0 -58
- package/templates/app/api/user/plan-flags/route.ts +0 -270
- package/templates/app/api/user/profile/route.ts +0 -129
- package/templates/app/api/v1/[entity]/[id]/child/[childType]/[childId]/route.ts +0 -208
- package/templates/app/api/v1/[entity]/[id]/child/[childType]/route.ts +0 -329
- package/templates/app/api/v1/[entity]/[id]/route.ts +0 -33
- package/templates/app/api/v1/[entity]/docs.md +0 -369
- package/templates/app/api/v1/[entity]/presets.ts +0 -194
- package/templates/app/api/v1/[entity]/route.ts +0 -29
- package/templates/app/api/v1/api-keys/[id]/route.ts +0 -283
- package/templates/app/api/v1/api-keys/docs.md +0 -101
- package/templates/app/api/v1/api-keys/presets.ts +0 -31
- package/templates/app/api/v1/api-keys/route.ts +0 -241
- package/templates/app/api/v1/auth/docs.md +0 -184
- package/templates/app/api/v1/auth/presets.ts +0 -44
- package/templates/app/api/v1/auth/signup-with-invite/route.ts +0 -243
- package/templates/app/api/v1/billing/cancel/route.ts +0 -206
- package/templates/app/api/v1/billing/change-plan/route.ts +0 -99
- package/templates/app/api/v1/billing/check-action/route.ts +0 -85
- package/templates/app/api/v1/billing/checkout/route.ts +0 -153
- package/templates/app/api/v1/billing/docs.md +0 -209
- package/templates/app/api/v1/billing/plans/route.ts +0 -82
- package/templates/app/api/v1/billing/portal/route.ts +0 -93
- package/templates/app/api/v1/billing/presets.ts +0 -121
- package/templates/app/api/v1/billing/webhooks/polar/route.ts +0 -495
- package/templates/app/api/v1/billing/webhooks/stripe/route.ts +0 -34
- package/templates/app/api/v1/blocks/[slug]/route.ts +0 -30
- package/templates/app/api/v1/blocks/docs.md +0 -173
- package/templates/app/api/v1/blocks/presets.ts +0 -121
- package/templates/app/api/v1/blocks/route.ts +0 -46
- package/templates/app/api/v1/blocks/validate/route.ts +0 -47
- package/templates/app/api/v1/cron/docs.md +0 -116
- package/templates/app/api/v1/cron/presets.ts +0 -26
- package/templates/app/api/v1/cron/process/route.ts +0 -106
- package/templates/app/api/v1/devtools/blocks/route.ts +0 -84
- package/templates/app/api/v1/devtools/docs/route.ts +0 -153
- package/templates/app/api/v1/devtools/docs.md +0 -204
- package/templates/app/api/v1/devtools/features/route.ts +0 -63
- package/templates/app/api/v1/devtools/flows/route.ts +0 -63
- package/templates/app/api/v1/devtools/presets.ts +0 -113
- package/templates/app/api/v1/devtools/scheduled-actions/route.ts +0 -244
- package/templates/app/api/v1/devtools/scheduled-actions/run/route.ts +0 -111
- package/templates/app/api/v1/devtools/testing/route.ts +0 -84
- package/templates/app/api/v1/media/[id]/route.ts +0 -168
- package/templates/app/api/v1/media/[id]/tags/route.ts +0 -212
- package/templates/app/api/v1/media/check-duplicates/route.ts +0 -66
- package/templates/app/api/v1/media/docs.md +0 -117
- package/templates/app/api/v1/media/presets.ts +0 -24
- package/templates/app/api/v1/media/route.ts +0 -64
- package/templates/app/api/v1/media/upload/route.ts +0 -274
- package/templates/app/api/v1/media-tags/route.ts +0 -81
- package/templates/app/api/v1/patterns/[id]/usages/route.ts +0 -108
- package/templates/app/api/v1/plugin/[...path]/route.ts +0 -374
- package/templates/app/api/v1/plugin/docs.md +0 -79
- package/templates/app/api/v1/plugin/presets.ts +0 -21
- package/templates/app/api/v1/plugin/route.ts +0 -97
- package/templates/app/api/v1/post-categories/[id]/route.ts +0 -258
- package/templates/app/api/v1/post-categories/docs.md +0 -134
- package/templates/app/api/v1/post-categories/presets.ts +0 -78
- package/templates/app/api/v1/post-categories/route.ts +0 -121
- package/templates/app/api/v1/team-invitations/[token]/accept/route.ts +0 -177
- package/templates/app/api/v1/team-invitations/[token]/decline/route.ts +0 -118
- package/templates/app/api/v1/team-invitations/[token]/route.ts +0 -90
- package/templates/app/api/v1/team-invitations/docs.md +0 -88
- package/templates/app/api/v1/team-invitations/presets.ts +0 -43
- package/templates/app/api/v1/team-invitations/route.ts +0 -113
- package/templates/app/api/v1/teams/[teamId]/invitations/route.ts +0 -181
- package/templates/app/api/v1/teams/[teamId]/invoices/[invoiceNumber]/route.ts +0 -105
- package/templates/app/api/v1/teams/[teamId]/invoices/route.ts +0 -125
- package/templates/app/api/v1/teams/[teamId]/members/[memberId]/route.ts +0 -260
- package/templates/app/api/v1/teams/[teamId]/members/route.ts +0 -350
- package/templates/app/api/v1/teams/[teamId]/route.ts +0 -289
- package/templates/app/api/v1/teams/[teamId]/subscription/route.ts +0 -51
- package/templates/app/api/v1/teams/[teamId]/usage/[limitSlug]/route.ts +0 -96
- package/templates/app/api/v1/teams/docs.md +0 -315
- package/templates/app/api/v1/teams/presets.ts +0 -178
- package/templates/app/api/v1/teams/route.ts +0 -305
- package/templates/app/api/v1/teams/switch/route.ts +0 -106
- package/templates/app/api/v1/theme/[...path]/route.ts +0 -383
- package/templates/app/api/v1/theme/docs.md +0 -74
- package/templates/app/api/v1/theme/presets.ts +0 -21
- package/templates/app/api/v1/theme/route.ts +0 -97
- package/templates/app/api/v1/users/[id]/meta/[key]/route.ts +0 -313
- package/templates/app/api/v1/users/[id]/route.ts +0 -270
- package/templates/app/api/v1/users/docs.md +0 -93
- package/templates/app/api/v1/users/presets.ts +0 -59
- package/templates/app/api/v1/users/route.ts +0 -194
- package/templates/app/dashboard/(main)/[entity]/[id]/edit/page.tsx +0 -117
- package/templates/app/dashboard/(main)/[entity]/[id]/page.tsx +0 -85
- package/templates/app/dashboard/(main)/[entity]/create/page.tsx +0 -95
- package/templates/app/dashboard/(main)/[entity]/error.tsx +0 -51
- package/templates/app/dashboard/(main)/[entity]/layout.tsx +0 -115
- package/templates/app/dashboard/(main)/[entity]/loading.tsx +0 -64
- package/templates/app/dashboard/(main)/[entity]/page.tsx +0 -71
- package/templates/app/dashboard/(main)/layout.tsx +0 -99
- package/templates/app/dashboard/(main)/loading.tsx +0 -8
- package/templates/app/dashboard/(main)/media/page.tsx +0 -621
- package/templates/app/dashboard/(main)/page.tsx +0 -201
- package/templates/app/dashboard/(main)/patterns/[id]/edit/page.tsx +0 -117
- package/templates/app/dashboard/(main)/patterns/[id]/page.tsx +0 -23
- package/templates/app/dashboard/(main)/patterns/[id]/reports/page.tsx +0 -174
- package/templates/app/dashboard/(main)/patterns/create/page.tsx +0 -89
- package/templates/app/dashboard/(main)/patterns/page.tsx +0 -447
- package/templates/app/dashboard/features/analytics/page.tsx +0 -38
- package/templates/app/dashboard/features/automation/page.tsx +0 -38
- package/templates/app/dashboard/features/layout.tsx +0 -16
- package/templates/app/dashboard/features/loading.tsx +0 -8
- package/templates/app/dashboard/features/webhooks/page.tsx +0 -38
- package/templates/app/dashboard/layout.tsx +0 -87
- package/templates/app/dashboard/permission-denied/page.tsx +0 -32
- package/templates/app/dashboard/settings/api-keys/loading.tsx +0 -8
- package/templates/app/dashboard/settings/api-keys/page.tsx +0 -516
- package/templates/app/dashboard/settings/billing/loading.tsx +0 -8
- package/templates/app/dashboard/settings/billing/page.tsx +0 -289
- package/templates/app/dashboard/settings/invoices/[invoiceNumber]/page.tsx +0 -222
- package/templates/app/dashboard/settings/invoices/loading.tsx +0 -8
- package/templates/app/dashboard/settings/invoices/page.tsx +0 -82
- package/templates/app/dashboard/settings/layout.tsx +0 -151
- package/templates/app/dashboard/settings/loading.tsx +0 -8
- package/templates/app/dashboard/settings/notifications/loading.tsx +0 -8
- package/templates/app/dashboard/settings/notifications/page.tsx +0 -462
- package/templates/app/dashboard/settings/page.tsx +0 -93
- package/templates/app/dashboard/settings/password/loading.tsx +0 -8
- package/templates/app/dashboard/settings/password/page.tsx +0 -305
- package/templates/app/dashboard/settings/plans/loading.tsx +0 -8
- package/templates/app/dashboard/settings/plans/page.tsx +0 -62
- package/templates/app/dashboard/settings/profile/loading.tsx +0 -8
- package/templates/app/dashboard/settings/profile/page.tsx +0 -688
- package/templates/app/dashboard/settings/security/loading.tsx +0 -8
- package/templates/app/dashboard/settings/security/page.tsx +0 -506
- package/templates/app/dashboard/settings/teams/loading.tsx +0 -8
- package/templates/app/dashboard/settings/teams/page.tsx +0 -272
- package/templates/app/dashboard/settings/teams/permissions/page.tsx +0 -95
- package/templates/app/devtools/api/[[...endpoint]]/page.tsx +0 -33
- package/templates/app/devtools/api/layout.tsx +0 -23
- package/templates/app/devtools/blocks/[slug]/page.tsx +0 -39
- package/templates/app/devtools/blocks/page.tsx +0 -40
- package/templates/app/devtools/config/page.tsx +0 -40
- package/templates/app/devtools/features/page.tsx +0 -40
- package/templates/app/devtools/flows/page.tsx +0 -40
- package/templates/app/devtools/layout.tsx +0 -66
- package/templates/app/devtools/page.tsx +0 -130
- package/templates/app/devtools/plugins/[plugin]/page.tsx +0 -17
- package/templates/app/devtools/scheduled-actions/page.tsx +0 -158
- package/templates/app/devtools/style/page.tsx +0 -330
- package/templates/app/devtools/tags/page.tsx +0 -40
- package/templates/app/devtools/tests/[[...path]]/page.tsx +0 -56
- package/templates/app/favicon.ico +0 -0
- package/templates/app/globals.css +0 -12
- package/templates/app/layout.ppr.tsx +0 -105
- package/templates/app/layout.tsx +0 -118
- package/templates/app/public/page.tsx +0 -30
- package/templates/app/superadmin/docs/[section]/[page]/page.tsx +0 -93
- package/templates/app/superadmin/docs/page.tsx +0 -75
- package/templates/app/superadmin/layout.tsx +0 -96
- package/templates/app/superadmin/page.tsx +0 -149
- package/templates/app/superadmin/plugins/[plugin]/page.tsx +0 -17
- package/templates/app/superadmin/subscriptions/page.tsx +0 -658
- package/templates/app/superadmin/team-roles/page.tsx +0 -493
- package/templates/app/superadmin/teams/[teamId]/page.tsx +0 -691
- package/templates/app/superadmin/teams/page.tsx +0 -302
- package/templates/app/superadmin/users/[userId]/page.tsx +0 -549
- package/templates/app/superadmin/users/page.tsx +0 -529
- package/templates/contents/plugins/README.md +0 -42
- package/templates/contents/plugins/starter/plugin/README.md.template +0 -97
- package/templates/contents/plugins/starter/plugin/api/example/route.ts.template +0 -94
- package/templates/contents/plugins/starter/plugin/hooks/usePlugin.ts.template +0 -102
- package/templates/contents/themes/.gitkeep +0 -0
- package/templates/contents/themes/starter/blocks/.gitkeep +0 -0
- package/templates/contents/themes/starter/blocks/cta-section/config.ts +0 -11
- package/templates/contents/themes/starter/blocks/features-grid/config.ts +0 -11
- package/templates/contents/themes/starter/blocks/hero/config.ts +0 -11
- package/templates/contents/themes/starter/blocks/testimonials/config.ts +0 -11
- package/templates/contents/themes/starter/blocks/text-content/config.ts +0 -11
- package/templates/contents/themes/starter/emails/_README.md +0 -69
- package/templates/contents/themes/starter/entities/pages/pages.config.ts +0 -95
- package/templates/contents/themes/starter/entities/posts/posts.config.ts +0 -102
- package/templates/contents/themes/starter/entities/tasks/tasks.config.ts +0 -82
- package/templates/contents/themes/starter/public/brand/.gitkeep +0 -0
- package/templates/contents/themes/starter/public/theme/blocks/hero/thumbnail.png +0 -1
- package/templates/contents/themes/starter/styles/globals.css +0 -214
- package/templates/contents/themes/starter/templates/(public)/loading.tsx +0 -5
- package/templates/contents/themes/starter/templates/(public)/page.tsx +0 -37
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/docs/README.md +0 -215
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/block-editor.bdd.md +0 -491
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.bdd.md +0 -147
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.bdd.md +0 -76
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.bdd.md +0 -326
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/patterns.bdd.md +0 -388
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.bdd.md +0 -266
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-billing.bdd.md +0 -78
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-layout.bdd.md +0 -129
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-password.bdd.md +0 -82
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-profile.bdd.md +0 -77
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/settings-teams.bdd.md +0 -130
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/superadmin.bdd.md +0 -261
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/tasks.bdd.md +0 -593
- package/templates/contents/themes/starter/tests/cypress/e2e/_utils/selectors/teams.bdd.md +0 -278
- package/templates/contents/themes/starter/tests/cypress/src/session-helpers.ts +0 -549
- package/templates/contents/themes/starter/tests/cypress.config.ts +0 -220
- package/templates/contents/themes/starter/tests/jest/example.test.tsx +0 -87
- package/templates/contents/themes/starter/tests/jest/jest.config.cjs +0 -95
- package/templates/contents/themes/starter/tests/jest/services/tasks.service.test.ts +0 -547
- package/templates/contents/themes/starter/tests/jest/tsconfig.jest.json +0 -8
- package/templates/contents/themes/starter/tests/tsconfig.json +0 -15
- package/templates/public/theme/blocks/cta-section/thumbnail.png +0 -1
- package/templates/public/theme/blocks/features-grid/thumbnail.png +0 -1
- package/templates/public/theme/blocks/hero/thumbnail.png +0 -1
- package/templates/public/theme/blocks/testimonials/thumbnail.png +0 -1
- package/templates/public/theme/blocks/text-content/thumbnail.png +0 -1
- package/tests/jest/__mocks__/@nextsparkjs/registries/template-registry.client.ts +0 -11
- package/tests/jest/__mocks__/@nextsparkjs/registries/template-registry.ts +0 -11
- package/tests/jest/__mocks__/@nextsparkjs/registries/template-scopes/client.ts +0 -21
- package/tests/jest/__mocks__/@nextsparkjs/registries/template-scopes/server.ts +0 -23
- /package/dist/{templates/contents/plugins/.gitkeep → lib/entities/portable/types.js} +0 -0
- /package/dist/{templates/app → routes}/api/v1/[entity]/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/[entity]/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/api-keys/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/api-keys/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/auth/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/auth/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/billing/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/billing/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/blocks/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/cron/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/cron/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/media/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/media/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/post-categories/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/post-categories/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/team-invitations/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/team-invitations/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/teams/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/teams/presets.ts +0 -0
- /package/dist/{templates/app → routes}/api/v1/users/docs.md +0 -0
- /package/dist/{templates/app → routes}/api/v1/users/presets.ts +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/components/ExampleWidget.tsx.template +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/entities/.gitkeep +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/lib/core.ts.template +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/lib/types.ts.template +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/de.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/en.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/es.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/fr.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/it.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/messages/pt.json +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/migrations/README.md +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/plugin.config.ts.template +0 -0
- /package/dist/templates/{contents/plugins → plugins}/starter/plugin/tests/plugin.test.ts.template +0 -0
- /package/dist/templates/{contents/themes/starter → projects/blog}/tests/jest/__mocks__/jose.js +0 -0
- /package/dist/templates/{contents/themes/starter → projects/blog}/tests/jest/__mocks__/next-server.js +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/README.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/about/business.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/about/features.json +0 -0
- /package/dist/templates/{contents/themes → projects/starter/blocks}/.gitkeep +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/component.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/schema.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/cta-section/thumbnail.png +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/component.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/schema.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/features-grid/thumbnail.png +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/component.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/schema.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/hero/thumbnail.png +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/component.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/schema.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/testimonials/thumbnail.png +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/component.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/schema.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/blocks/text-content/thumbnail.png +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/components/.gitkeep +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/components/analytics/RecentActivity.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/components/analytics/StatsCard.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/components/analytics/TasksChart.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/components/analytics/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/app.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/billing.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/dashboard.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/dev.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/features.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/permissions.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/config/theme.config.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/docs/public/01-overview/01-introduction.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/docs/public/01-overview/02-customization.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/docs/superadmin/01-setup/01-configuration.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/docs/superadmin/02-entities/01-tasks.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/emails/verify-email.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/api/docs.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/api/presets.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/messages/en.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/messages/es.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/001_pages_table.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/002_pages_metas.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/migrations/003_add_status.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages-management.service.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.service.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/pages/pages.types.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/api/docs.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/api/presets.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/components/post-header.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/messages/en.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/messages/es.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/001_posts_table.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/003_add_status.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/004_entity_taxonomy_relations.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/migrations/006_posts_metas.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.service.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/posts/posts.types.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/api/docs.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/api/presets.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/de.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/en.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/es.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/fr.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/it.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/messages/pt.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/migrations/001_tasks_table.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/migrations/002_task_metas.sql +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.fields.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.service.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/entities/tasks/tasks.types.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/.gitkeep +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/useAnalyticsData.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/hooks/useTaskStats.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/selectors.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/lib/utils.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/de/public.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/en/public.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/es/public.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/fr/public.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/it/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/analytics.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/common.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/dev.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/features.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/home.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/messages/pt/navigation.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/migrations/README.md +0 -0
- /package/dist/templates/{contents/themes/starter/blocks → projects/starter/public/brand}/.gitkeep +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/styles/components.css +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/templates/(public)/layout.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/templates/(public)/support/page.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/loading.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/page.tsx +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/block-editor.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-container.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/patterns.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-billing.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-layout.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-password.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-profile.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-teams.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/superadmin.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/tasks.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/teams.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/api/entities/tasks/TaskAPIController.js +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.bdd.md +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.cy.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/fixtures/entities.json +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/DevKeyringPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityForm.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityList.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/TeamSwitcherPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/components/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/BaseAPIController.js +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/index.js +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/AuthPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BasePOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BlockEditorBasePOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/DashboardEntityPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/core/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PagesPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PatternsPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/TasksPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/BillingPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DashboardPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DevtoolsPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PageBuilderPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PostEditorPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/ScheduledActionsPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SettingsPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminTeamRolesPOM.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/features/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/helpers/ApiInterceptor.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/index.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/src/selectors.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/commands.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/doc-commands.ts +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/cypress/support/e2e.ts +0 -0
- /package/{templates/contents/themes → dist/templates/projects}/starter/tests/jest/__mocks__/jose.js +0 -0
- /package/{templates/contents/themes → dist/templates/projects}/starter/tests/jest/__mocks__/next-server.js +0 -0
- /package/dist/templates/{contents/themes → projects}/starter/tests/jest/setup.ts +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/components/ExampleWidget.tsx.template +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/entities/.gitkeep +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/lib/core.ts.template +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/lib/types.ts.template +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/de.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/en.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/es.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/fr.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/it.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/messages/pt.json +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/migrations/README.md +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/plugin.config.ts.template +0 -0
- /package/templates/{contents/plugins → plugins}/starter/plugin/tests/plugin.test.ts.template +0 -0
- /package/templates/{contents/themes → projects}/starter/README.md +0 -0
- /package/templates/{contents/themes → projects}/starter/about/business.md +0 -0
- /package/templates/{contents/themes → projects}/starter/about/features.json +0 -0
- /package/{dist/templates/contents/themes/starter/public/brand → templates/projects/starter/blocks}/.gitkeep +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/cta-section/component.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/cta-section/fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/cta-section/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/cta-section/schema.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/cta-section/thumbnail.png +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/features-grid/component.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/features-grid/fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/features-grid/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/features-grid/schema.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/features-grid/thumbnail.png +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/hero/component.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/hero/fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/hero/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/hero/schema.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/hero/thumbnail.png +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/testimonials/component.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/testimonials/fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/testimonials/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/testimonials/schema.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/testimonials/thumbnail.png +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/text-content/component.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/text-content/fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/text-content/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/text-content/schema.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/blocks/text-content/thumbnail.png +0 -0
- /package/templates/{contents/themes → projects}/starter/components/.gitkeep +0 -0
- /package/templates/{contents/themes → projects}/starter/components/analytics/RecentActivity.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/components/analytics/StatsCard.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/components/analytics/TasksChart.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/components/analytics/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/app.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/billing.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/dashboard.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/dev.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/features.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/permissions.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/config/theme.config.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/docs/public/01-overview/01-introduction.md +0 -0
- /package/templates/{contents/themes → projects}/starter/docs/public/01-overview/02-customization.md +0 -0
- /package/templates/{contents/themes → projects}/starter/docs/superadmin/01-setup/01-configuration.md +0 -0
- /package/templates/{contents/themes → projects}/starter/docs/superadmin/02-entities/01-tasks.md +0 -0
- /package/templates/{contents/themes → projects}/starter/emails/verify-email.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/api/docs.md +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/api/presets.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/messages/en.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/messages/es.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/001_pages_table.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/002_pages_metas.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/migrations/003_add_status.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/pages-management.service.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/pages.fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/pages.service.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/pages/pages.types.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/api/docs.md +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/api/presets.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/components/post-header.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/messages/en.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/messages/es.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/001_posts_table.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/003_add_status.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/004_entity_taxonomy_relations.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/migrations/006_posts_metas.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/posts.fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/posts.service.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/posts/posts.types.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/api/docs.md +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/api/presets.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/de.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/en.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/es.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/fr.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/it.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/messages/pt.json +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/migrations/001_tasks_table.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/migrations/002_task_metas.sql +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.fields.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.service.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/entities/tasks/tasks.types.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/.gitkeep +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/hooks/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/hooks/useAnalyticsData.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/hooks/useTaskStats.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/selectors.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/lib/utils.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/de/public.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/en/public.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/es/public.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/fr/public.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/it/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/analytics.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/common.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/dev.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/features.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/home.json +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/messages/pt/navigation.json +0 -0
- /package/templates/{contents/themes → projects}/starter/migrations/README.md +0 -0
- /package/templates/{contents/plugins → projects/starter/public/brand}/.gitkeep +0 -0
- /package/templates/{contents/themes → projects}/starter/styles/components.css +0 -0
- /package/templates/{contents/themes → projects}/starter/templates/(public)/layout.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/templates/(public)/support/page.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/loading.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/templates/dashboard/analytics/page.tsx +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/access.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/navigation.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/devtools/pages.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/auth.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/billing.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/block-editor.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-container.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-mobile.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-navigation.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-sidebar.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/dashboard-topnav.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/devtools.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/global-search.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/patterns.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-api-keys.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-billing.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-layout.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-password.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-profile.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/settings-teams.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/superadmin.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/tasks.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/selectors/teams.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-teams.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/all-users.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/dashboard.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/_utils/superadmin/subscriptions-overview.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/api/entities/tasks/TaskAPIController.js +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.bdd.md +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/e2e/uat/entities/tasks/tasks-crud.cy.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/fixtures/entities.json +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/DevKeyringPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityForm.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/EntityList.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/TeamSwitcherPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/components/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/BaseAPIController.js +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/controllers/index.js +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/AuthPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BasePOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/BlockEditorBasePOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/DashboardEntityPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/core/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PagesPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/PatternsPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/TasksPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/entities/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/BillingPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DashboardPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/DevtoolsPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PageBuilderPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/PostEditorPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/ScheduledActionsPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SettingsPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/SuperadminTeamRolesPOM.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/features/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/helpers/ApiInterceptor.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/index.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/src/selectors.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/support/commands.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/support/doc-commands.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/cypress/support/e2e.ts +0 -0
- /package/templates/{contents/themes → projects}/starter/tests/jest/setup.ts +0 -0
|
@@ -0,0 +1,666 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Route Facade Emitter
|
|
3
|
+
*
|
|
4
|
+
* Emits one thin `src/app` route file (a "facade") for the generated host
|
|
5
|
+
* (#203): given the Next.js file kind, the target path under `src/app`, and
|
|
6
|
+
* the module that implements the route (a package subpath such as
|
|
7
|
+
* `@nextsparkjs/core/...` or a project alias such as `@/templates/...`), it
|
|
8
|
+
* reads that module's exports and writes a file that
|
|
9
|
+
*
|
|
10
|
+
* - re-exports the default and every runtime export Next.js supports for the
|
|
11
|
+
* kind, by name and from a fixed specifier (no lookup by variable), and
|
|
12
|
+
* - re-declares the segment config Next.js reads statically as a literal
|
|
13
|
+
* `export const`, because Next.js ignores segment config that is
|
|
14
|
+
* re-exported (`next/dist/build/analysis/get-page-static-info`).
|
|
15
|
+
*
|
|
16
|
+
* What each kind supports, and in which form, is the versioned table in
|
|
17
|
+
* `next-route-exports.json` (rendered in README.md). Anything the table does
|
|
18
|
+
* not allow, or that the emitter cannot read, is a fatal diagnostic naming the
|
|
19
|
+
* source file and export: no export is ever dropped silently.
|
|
20
|
+
*
|
|
21
|
+
* Used by the conformance fixture's driver today and meant for
|
|
22
|
+
* `nextspark prepare` later.
|
|
23
|
+
*
|
|
24
|
+
* @module core/scripts/build/registry/host/facade-emitter
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
import { readFileSync } from 'node:fs'
|
|
28
|
+
import { readFile } from 'node:fs/promises'
|
|
29
|
+
import { createRequire } from 'node:module'
|
|
30
|
+
import { basename, dirname, isAbsolute, join, posix } from 'node:path'
|
|
31
|
+
import { fileURLToPath } from 'node:url'
|
|
32
|
+
|
|
33
|
+
import { loadTypeScriptFor } from '../shared/typescript-compiler.mjs'
|
|
34
|
+
import { evaluateNextLiteral, renderLiteral } from './next-literal.mjs'
|
|
35
|
+
import { validateGeneratedModule } from './static-imports.mjs'
|
|
36
|
+
|
|
37
|
+
const HERE = dirname(fileURLToPath(import.meta.url))
|
|
38
|
+
|
|
39
|
+
/** The route export table, parsed once. */
|
|
40
|
+
export const ROUTE_EXPORT_TABLE = JSON.parse(readFileSync(join(HERE, 'next-route-exports.json'), 'utf8'))
|
|
41
|
+
|
|
42
|
+
export const ROUTE_KINDS = Object.keys(ROUTE_EXPORT_TABLE.kinds)
|
|
43
|
+
|
|
44
|
+
const SEGMENT_CONFIG_NAMES = new Set([...ROUTE_EXPORT_TABLE.segmentConfig.keys, ...ROUTE_EXPORT_TABLE.segmentConfig.legacyKeys])
|
|
45
|
+
const METADATA_FAMILY = new Set(['metadata', 'generateMetadata', 'viewport', 'generateViewport'])
|
|
46
|
+
/**
|
|
47
|
+
* Exports whose presence Next.js reads statically from the route file, through
|
|
48
|
+
* `specifier.orig` for `export { a as b }` (get-page-static-info `checkExports`).
|
|
49
|
+
*/
|
|
50
|
+
const STATICALLY_DETECTED = new Set(['generateStaticParams', 'generateSitemaps', 'generateImageMetadata'])
|
|
51
|
+
const IDENTIFIER = /^[A-Za-z_$][\w$]*$/
|
|
52
|
+
|
|
53
|
+
/** Diagnostic codes, one per kind of problem a facade cannot be emitted with. */
|
|
54
|
+
export const DIAGNOSTICS = Object.freeze({
|
|
55
|
+
PARSE_ERROR: 'NS_HOST_PARSE_ERROR',
|
|
56
|
+
UNKNOWN_KIND: 'NS_HOST_UNKNOWN_KIND',
|
|
57
|
+
TARGET_MISMATCH: 'NS_HOST_TARGET_MISMATCH',
|
|
58
|
+
INVALID_SPECIFIER: 'NS_HOST_INVALID_SPECIFIER',
|
|
59
|
+
NON_LITERAL_SEGMENT_CONFIG: 'NS_HOST_NON_LITERAL_SEGMENT_CONFIG',
|
|
60
|
+
INVALID_SEGMENT_CONFIG_VALUE: 'NS_HOST_INVALID_SEGMENT_CONFIG_VALUE',
|
|
61
|
+
CACHE_COMPONENTS_CONFLICT: 'NS_HOST_CACHE_COMPONENTS_CONFLICT',
|
|
62
|
+
CLIENT_SERVER_ONLY_EXPORT: 'NS_HOST_CLIENT_SERVER_ONLY_EXPORT',
|
|
63
|
+
CLIENT_REQUIRED: 'NS_HOST_CLIENT_REQUIRED',
|
|
64
|
+
SERVER_ACTIONS_MODULE: 'NS_HOST_SERVER_ACTIONS_MODULE',
|
|
65
|
+
ROUTE_DEFAULT_EXPORT: 'NS_HOST_ROUTE_DEFAULT_EXPORT',
|
|
66
|
+
ROUTE_NO_METHODS: 'NS_HOST_ROUTE_NO_METHODS',
|
|
67
|
+
MISSING_DEFAULT: 'NS_HOST_MISSING_DEFAULT',
|
|
68
|
+
UNSUPPORTED_EXPORT: 'NS_HOST_UNSUPPORTED_EXPORT',
|
|
69
|
+
UNCLASSIFIABLE_EXPORT: 'NS_HOST_UNCLASSIFIABLE_EXPORT',
|
|
70
|
+
UNSUPPORTED_NEXT_VERSION: 'NS_HOST_UNSUPPORTED_NEXT_VERSION',
|
|
71
|
+
VARIABLE_LOOKUP: 'NS_HOST_VARIABLE_LOOKUP',
|
|
72
|
+
})
|
|
73
|
+
|
|
74
|
+
/** Thrown with every fatal diagnostic found for one facade. */
|
|
75
|
+
export class FacadeEmitError extends Error {
|
|
76
|
+
constructor(diagnostics) {
|
|
77
|
+
super(
|
|
78
|
+
'Cannot emit the generated route file:\n' +
|
|
79
|
+
diagnostics.map(d => ` - [${d.code}] ${d.file}${d.line ? `:${d.line}` : ''}${d.exportName ? ` (export "${d.exportName}")` : ''}: ${d.message}`).join('\n')
|
|
80
|
+
)
|
|
81
|
+
this.name = 'FacadeEmitError'
|
|
82
|
+
this.diagnostics = diagnostics
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// Literal evaluation lives in next-literal.mjs (the static-imports gate needs it too).
|
|
87
|
+
export { evaluateNextLiteral, renderLiteral } from './next-literal.mjs'
|
|
88
|
+
|
|
89
|
+
// ---------------------------------------------------------------------------
|
|
90
|
+
// Source analysis
|
|
91
|
+
// ---------------------------------------------------------------------------
|
|
92
|
+
|
|
93
|
+
function hasModifier(node, kind) {
|
|
94
|
+
return Boolean(node.modifiers?.some(modifier => modifier.kind === kind))
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Leading string-literal statements, as Next.js reads directives
|
|
99
|
+
* (`checkExports`): only before the first statement that isn't one.
|
|
100
|
+
*/
|
|
101
|
+
function readDirectives(sourceFile, ts) {
|
|
102
|
+
const directives = []
|
|
103
|
+
for (const statement of sourceFile.statements) {
|
|
104
|
+
if (ts.isExpressionStatement(statement) && ts.isStringLiteral(statement.expression)) {
|
|
105
|
+
directives.push(statement.expression.text)
|
|
106
|
+
} else {
|
|
107
|
+
break
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
return directives
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Classify every export of a parsed module.
|
|
115
|
+
*
|
|
116
|
+
* Each runtime export becomes `{ name, form, line, literal? }` where `form` is
|
|
117
|
+
* one of: `const-literal` (an `export const` whose initializer Next.js can
|
|
118
|
+
* read), `const-nonliteral`, `let`, `function`, `class`, `export-clause`
|
|
119
|
+
* (`export { a as b }` of a local binding), `reexport` (`export { a } from`),
|
|
120
|
+
* `namespace-reexport` (`export * as a from`), `default`. Type-only exports
|
|
121
|
+
* are listed separately; they have no runtime value to forward.
|
|
122
|
+
* Constructs whose exported names cannot be read statically are returned as
|
|
123
|
+
* `unclassifiable` entries.
|
|
124
|
+
*/
|
|
125
|
+
export function classifyExports(sourceFile, ts) {
|
|
126
|
+
const exports = []
|
|
127
|
+
const typeOnly = []
|
|
128
|
+
const unclassifiable = []
|
|
129
|
+
const lineOf = node => sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile)).line + 1
|
|
130
|
+
const K = ts.SyntaxKind
|
|
131
|
+
|
|
132
|
+
for (const statement of sourceFile.statements) {
|
|
133
|
+
if (ts.isExportAssignment(statement)) {
|
|
134
|
+
if (statement.isExportEquals) {
|
|
135
|
+
unclassifiable.push({ name: 'export =', line: lineOf(statement), reason: '`export =` is CommonJS, not an ES module export' })
|
|
136
|
+
} else {
|
|
137
|
+
exports.push({ name: 'default', form: 'default', line: lineOf(statement) })
|
|
138
|
+
}
|
|
139
|
+
continue
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
if (ts.isExportDeclaration(statement)) {
|
|
143
|
+
const fromModule = Boolean(statement.moduleSpecifier)
|
|
144
|
+
if (!statement.exportClause) {
|
|
145
|
+
if (statement.isTypeOnly) {
|
|
146
|
+
typeOnly.push({ name: '*', line: lineOf(statement) })
|
|
147
|
+
} else {
|
|
148
|
+
unclassifiable.push({
|
|
149
|
+
name: '*',
|
|
150
|
+
line: lineOf(statement),
|
|
151
|
+
reason: `\`export * from ${statement.moduleSpecifier.getText(sourceFile)}\` hides which names the module exports; list them explicitly`,
|
|
152
|
+
})
|
|
153
|
+
}
|
|
154
|
+
continue
|
|
155
|
+
}
|
|
156
|
+
if (ts.isNamespaceExport(statement.exportClause)) {
|
|
157
|
+
const name = statement.exportClause.name.text
|
|
158
|
+
;(statement.isTypeOnly ? typeOnly : exports).push({ name, form: 'namespace-reexport', line: lineOf(statement) })
|
|
159
|
+
continue
|
|
160
|
+
}
|
|
161
|
+
for (const element of statement.exportClause.elements) {
|
|
162
|
+
const name = element.name.text
|
|
163
|
+
if (statement.isTypeOnly || element.isTypeOnly) {
|
|
164
|
+
typeOnly.push({ name, line: lineOf(element) })
|
|
165
|
+
continue
|
|
166
|
+
}
|
|
167
|
+
const form = name === 'default' ? 'default' : fromModule ? 'reexport' : 'export-clause'
|
|
168
|
+
// The name the module binds before `as` - what Next.js reads as `specifier.orig`.
|
|
169
|
+
exports.push({ name, form, line: lineOf(element), localName: element.propertyName?.text ?? name })
|
|
170
|
+
}
|
|
171
|
+
continue
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
const exported = hasModifier(statement, K.ExportKeyword)
|
|
175
|
+
if (!exported) continue
|
|
176
|
+
const isDefault = hasModifier(statement, K.DefaultKeyword)
|
|
177
|
+
|
|
178
|
+
if (ts.isInterfaceDeclaration(statement) || ts.isTypeAliasDeclaration(statement)) {
|
|
179
|
+
typeOnly.push({ name: statement.name.text, line: lineOf(statement) })
|
|
180
|
+
continue
|
|
181
|
+
}
|
|
182
|
+
if (hasModifier(statement, K.DeclareKeyword)) {
|
|
183
|
+
const names = ts.isVariableStatement(statement)
|
|
184
|
+
? statement.declarationList.declarations.map(declaration => declaration.name.getText(sourceFile))
|
|
185
|
+
: [statement.name?.getText(sourceFile) ?? K[statement.kind]]
|
|
186
|
+
for (const name of names) typeOnly.push({ name, line: lineOf(statement) })
|
|
187
|
+
continue
|
|
188
|
+
}
|
|
189
|
+
if (ts.isFunctionDeclaration(statement) || ts.isClassDeclaration(statement)) {
|
|
190
|
+
if (isDefault) {
|
|
191
|
+
exports.push({ name: 'default', form: 'default', line: lineOf(statement) })
|
|
192
|
+
} else if (statement.name) {
|
|
193
|
+
exports.push({ name: statement.name.text, form: ts.isFunctionDeclaration(statement) ? 'function' : 'class', line: lineOf(statement) })
|
|
194
|
+
}
|
|
195
|
+
continue
|
|
196
|
+
}
|
|
197
|
+
if (ts.isVariableStatement(statement)) {
|
|
198
|
+
const isConst = (statement.declarationList.flags & ts.NodeFlags.Const) !== 0
|
|
199
|
+
for (const declaration of statement.declarationList.declarations) {
|
|
200
|
+
if (!ts.isIdentifier(declaration.name)) {
|
|
201
|
+
unclassifiable.push({
|
|
202
|
+
name: declaration.name.getText(sourceFile),
|
|
203
|
+
line: lineOf(declaration),
|
|
204
|
+
reason: 'a destructuring export hides which names it declares; export each name on its own',
|
|
205
|
+
})
|
|
206
|
+
continue
|
|
207
|
+
}
|
|
208
|
+
const name = declaration.name.text
|
|
209
|
+
if (!isConst) {
|
|
210
|
+
exports.push({ name, form: 'let', line: lineOf(declaration) })
|
|
211
|
+
continue
|
|
212
|
+
}
|
|
213
|
+
if (!declaration.initializer) {
|
|
214
|
+
exports.push({ name, form: 'const-nonliteral', line: lineOf(declaration), reason: 'has no initializer' })
|
|
215
|
+
continue
|
|
216
|
+
}
|
|
217
|
+
const literal = evaluateNextLiteral(declaration.initializer, ts)
|
|
218
|
+
if ('unsupported' in literal) {
|
|
219
|
+
exports.push({ name, form: 'const-nonliteral', line: lineOf(declaration), reason: literal.unsupported })
|
|
220
|
+
} else {
|
|
221
|
+
exports.push({ name, form: 'const-literal', line: lineOf(declaration), literal: literal.value })
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
continue
|
|
225
|
+
}
|
|
226
|
+
// `export enum`, `export import a = b.c`, `export module`, ...
|
|
227
|
+
unclassifiable.push({
|
|
228
|
+
name: statement.name?.getText?.(sourceFile) ?? K[statement.kind],
|
|
229
|
+
line: lineOf(statement),
|
|
230
|
+
reason: `\`${K[statement.kind]}\` is not an export form a route module can forward`,
|
|
231
|
+
})
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
return { exports, typeOnly, unclassifiable }
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Parse a route source module with the registry build's TypeScript compiler.
|
|
239
|
+
* A module TypeScript cannot parse is reported rather than read in part: the
|
|
240
|
+
* recovered tree could be missing exports.
|
|
241
|
+
*/
|
|
242
|
+
export async function analyzeRouteSource({ source, file, projectRoot = process.cwd() }) {
|
|
243
|
+
const ts = await loadTypeScriptFor(projectRoot)
|
|
244
|
+
const sourceFile = ts.createSourceFile(file, source, ts.ScriptTarget.Latest, true, ts.getScriptKindFromFileName(file))
|
|
245
|
+
const [parseError] = sourceFile.parseDiagnostics ?? []
|
|
246
|
+
if (parseError) {
|
|
247
|
+
const { line } = sourceFile.getLineAndCharacterOfPosition(parseError.start ?? 0)
|
|
248
|
+
return {
|
|
249
|
+
parseError: { line: line + 1, message: ts.flattenDiagnosticMessageText(parseError.messageText, ' ') },
|
|
250
|
+
directives: [],
|
|
251
|
+
exports: [],
|
|
252
|
+
typeOnly: [],
|
|
253
|
+
unclassifiable: [],
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
return { directives: readDirectives(sourceFile, ts), ...classifyExports(sourceFile, ts) }
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
// ---------------------------------------------------------------------------
|
|
260
|
+
// Next.js's own segment config validation
|
|
261
|
+
// ---------------------------------------------------------------------------
|
|
262
|
+
|
|
263
|
+
const nextModules = new Map()
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
* The Next.js installation the host builds with: `next/package.json` resolved
|
|
267
|
+
* once, from the project and then from core, so the version and every internal
|
|
268
|
+
* loaded afterwards come from the same package root.
|
|
269
|
+
*/
|
|
270
|
+
export function resolveNextPackage(projectRoot = process.cwd()) {
|
|
271
|
+
for (const from of [join(projectRoot, 'package.json'), fileURLToPath(import.meta.url)]) {
|
|
272
|
+
let packageJsonPath
|
|
273
|
+
try {
|
|
274
|
+
packageJsonPath = createRequire(from).resolve('next/package.json')
|
|
275
|
+
} catch {
|
|
276
|
+
continue
|
|
277
|
+
}
|
|
278
|
+
const { version } = JSON.parse(readFileSync(packageJsonPath, 'utf8'))
|
|
279
|
+
return { root: dirname(packageJsonPath), packageJsonPath, version }
|
|
280
|
+
}
|
|
281
|
+
return null
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
/**
|
|
285
|
+
* Whether `version` is a Next.js the table applies to: the table's `next` is the verified
|
|
286
|
+
* baseline, and core pins `next` to `~<baseline>`, so any stable patch of the same minor at or
|
|
287
|
+
* above the baseline is accepted (16.3.5, 16.3.9, 16.3.5+build.1), while other minors/majors, lower
|
|
288
|
+
* patches and prereleases (16.3.6-canary.0) are refused.
|
|
289
|
+
*/
|
|
290
|
+
export function isSupportedNextVersion(version, baseline = ROUTE_EXPORT_TABLE.next) {
|
|
291
|
+
// Stable versions only; build metadata (`+build.1`) is allowed, as npm's `~` range allows it.
|
|
292
|
+
const parse = value => /^(\d+)\.(\d+)\.(\d+)(?:\+[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/.exec(String(value))?.slice(1).map(Number)
|
|
293
|
+
const [major, minor, patch] = parse(version) ?? []
|
|
294
|
+
const [baseMajor, baseMinor, basePatch] = parse(baseline) ?? []
|
|
295
|
+
return major !== undefined && baseMajor !== undefined && major === baseMajor && minor === baseMinor && patch >= basePatch
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
/**
|
|
299
|
+
* Next.js's segment config schema, loaded from the resolved Next.js package
|
|
300
|
+
* root, but only when that Next.js is one the export table applies to
|
|
301
|
+
* (`isSupportedNextVersion`). Otherwise the result carries an `error` and nothing is
|
|
302
|
+
* loaded: facades emitted from a stale table could silently diverge.
|
|
303
|
+
* `next/dist/build/...` is a Next.js internal; the tests pin its key list to
|
|
304
|
+
* the table.
|
|
305
|
+
*/
|
|
306
|
+
export function loadNextSegmentConfig(projectRoot = process.cwd()) {
|
|
307
|
+
if (!nextModules.has(projectRoot)) {
|
|
308
|
+
const next = resolveNextPackage(projectRoot)
|
|
309
|
+
let loaded
|
|
310
|
+
if (!next) {
|
|
311
|
+
loaded = { error: `Next.js is not resolvable from ${projectRoot}; the route export table is for next@${ROUTE_EXPORT_TABLE.next}` }
|
|
312
|
+
} else if (!isSupportedNextVersion(next.version)) {
|
|
313
|
+
loaded = {
|
|
314
|
+
...next,
|
|
315
|
+
error:
|
|
316
|
+
`the project resolves next@${next.version} (${next.packageJsonPath}) but the route export table applies to ` +
|
|
317
|
+
`next@~${ROUTE_EXPORT_TABLE.next} only (verified on ${ROUTE_EXPORT_TABLE.next}); install next@~${ROUTE_EXPORT_TABLE.next} ` +
|
|
318
|
+
'or re-verify next-route-exports.json for the new version',
|
|
319
|
+
}
|
|
320
|
+
} else {
|
|
321
|
+
try {
|
|
322
|
+
loaded = { ...next, ...createRequire(next.packageJsonPath)(join(next.root, 'dist/build/segment-config/app/app-segment-config.js')) }
|
|
323
|
+
} catch (error) {
|
|
324
|
+
loaded = { ...next, error: `next@${next.version} at ${next.root} has no segment config schema (${error.message.split('\n')[0]})` }
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
nextModules.set(projectRoot, loaded)
|
|
328
|
+
}
|
|
329
|
+
return nextModules.get(projectRoot)
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
// ---------------------------------------------------------------------------
|
|
333
|
+
// Facade planning and rendering
|
|
334
|
+
// ---------------------------------------------------------------------------
|
|
335
|
+
|
|
336
|
+
function stemOf(target) {
|
|
337
|
+
const name = basename(target)
|
|
338
|
+
return name.slice(0, name.indexOf('.') === -1 ? name.length : name.indexOf('.'))
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
/** Whether `stem` names a file of this kind: `icon`, or a one-digit variant (`icon1`) where Next allows it. */
|
|
342
|
+
function stemMatches(stem, spec) {
|
|
343
|
+
return stem === spec.file || (spec.numberedVariants && stem.length === spec.file.length + 1 && stem.startsWith(spec.file) && /\d$/.test(stem))
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
/** The route kind of a file stem (`page`, `icon`, `opengraph-image2`, ...), or null. */
|
|
347
|
+
export function kindForFileStem(stem) {
|
|
348
|
+
return ROUTE_KINDS.find(kind => stemMatches(stem, ROUTE_EXPORT_TABLE.kinds[kind])) ?? null
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
/**
|
|
352
|
+
* Decide the facade for one route file. Pure: takes the analysis of the
|
|
353
|
+
* source instead of reading it, so tests can drive every row of the table.
|
|
354
|
+
*
|
|
355
|
+
* @param {object} input
|
|
356
|
+
* @param {string} input.kind - a key of the export table (`page`, `route`, `sitemap`, ...)
|
|
357
|
+
* @param {string} input.target - path of the generated file relative to `src/app`
|
|
358
|
+
* @param {string} input.specifier - module specifier the facade imports from
|
|
359
|
+
* @param {string} input.file - the source file on disk (for diagnostics)
|
|
360
|
+
* @param {object} input.analysis - result of `analyzeRouteSource`
|
|
361
|
+
* @param {boolean} [input.cacheComponents] - the host's `cacheComponents`; unchecked when undefined
|
|
362
|
+
* @param {string[]} [input.pageExtensions] - the host's `pageExtensions` (default tsx, ts, jsx, js)
|
|
363
|
+
* @param {object} [input.nextSegmentConfig] - `loadNextSegmentConfig()`; values are only schema-checked when given
|
|
364
|
+
*/
|
|
365
|
+
export function planFacade({ kind, target, specifier, file, analysis, cacheComponents, pageExtensions = ['tsx', 'ts', 'jsx', 'js'], nextSegmentConfig }) {
|
|
366
|
+
const diagnostics = []
|
|
367
|
+
const report = (code, message, exportName, line) => diagnostics.push({ code, file, exportName, line, message })
|
|
368
|
+
|
|
369
|
+
const spec = ROUTE_EXPORT_TABLE.kinds[kind]
|
|
370
|
+
if (!spec) {
|
|
371
|
+
report(DIAGNOSTICS.UNKNOWN_KIND, `"${kind}" is not a route file kind; expected one of ${ROUTE_KINDS.join(', ')}`)
|
|
372
|
+
return { diagnostics }
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
const targetName = basename(target)
|
|
376
|
+
const normalizedTarget = target.split('\\').join('/')
|
|
377
|
+
const stem = stemOf(target)
|
|
378
|
+
if (
|
|
379
|
+
isAbsolute(target) ||
|
|
380
|
+
normalizedTarget.split('/').includes('..') ||
|
|
381
|
+
!stemMatches(stem, spec) ||
|
|
382
|
+
!pageExtensions.some(extension => targetName === `${stem}.${extension}`)
|
|
383
|
+
) {
|
|
384
|
+
report(
|
|
385
|
+
DIAGNOSTICS.TARGET_MISMATCH,
|
|
386
|
+
`target "${target}" must be a relative path under src/app named ${spec.file}${spec.numberedVariants ? '[0-9]' : ''}.{${pageExtensions.join(',')}} for kind "${kind}"`
|
|
387
|
+
)
|
|
388
|
+
}
|
|
389
|
+
if (nextSegmentConfig?.error) {
|
|
390
|
+
report(DIAGNOSTICS.UNSUPPORTED_NEXT_VERSION, nextSegmentConfig.error)
|
|
391
|
+
return { diagnostics }
|
|
392
|
+
}
|
|
393
|
+
if (typeof specifier !== 'string' || specifier.length === 0 || /[\s'"`\\]/.test(specifier) || specifier.startsWith('.')) {
|
|
394
|
+
report(
|
|
395
|
+
DIAGNOSTICS.INVALID_SPECIFIER,
|
|
396
|
+
`source specifier ${JSON.stringify(specifier)} must be a bare package subpath or a project alias (no relative paths, quotes or whitespace)`
|
|
397
|
+
)
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
if (analysis.parseError) {
|
|
401
|
+
report(DIAGNOSTICS.PARSE_ERROR, `the module does not parse (${analysis.parseError.message}), so its exports cannot be read`, undefined, analysis.parseError.line)
|
|
402
|
+
return { diagnostics }
|
|
403
|
+
}
|
|
404
|
+
|
|
405
|
+
const isClient = analysis.directives.includes('use client')
|
|
406
|
+
if (analysis.directives.includes('use server')) {
|
|
407
|
+
report(
|
|
408
|
+
DIAGNOSTICS.SERVER_ACTIONS_MODULE,
|
|
409
|
+
`a 'use server' module only exports Server Actions and cannot implement a ${kind} file`
|
|
410
|
+
)
|
|
411
|
+
return { diagnostics }
|
|
412
|
+
}
|
|
413
|
+
if (spec.sourceMustBeClient && !isClient) {
|
|
414
|
+
report(
|
|
415
|
+
DIAGNOSTICS.CLIENT_REQUIRED,
|
|
416
|
+
`a ${kind} file must be a Client Component; add 'use client' to the top of the source module`
|
|
417
|
+
)
|
|
418
|
+
}
|
|
419
|
+
if (isClient && spec.serverOnly) {
|
|
420
|
+
report(DIAGNOSTICS.CLIENT_SERVER_ONLY_EXPORT, `a ${kind} file runs on the server; remove 'use client' from the source module`)
|
|
421
|
+
}
|
|
422
|
+
|
|
423
|
+
for (const entry of analysis.unclassifiable) {
|
|
424
|
+
report(DIAGNOSTICS.UNCLASSIFIABLE_EXPORT, `cannot classify this export: ${entry.reason}`, entry.name, entry.line)
|
|
425
|
+
}
|
|
426
|
+
|
|
427
|
+
const defaults = []
|
|
428
|
+
const reexports = []
|
|
429
|
+
const aliases = {}
|
|
430
|
+
const literals = []
|
|
431
|
+
const seen = new Set()
|
|
432
|
+
|
|
433
|
+
for (const entry of analysis.exports) {
|
|
434
|
+
const { name, line } = entry
|
|
435
|
+
if (seen.has(name)) continue
|
|
436
|
+
seen.add(name)
|
|
437
|
+
|
|
438
|
+
if (name === 'default' && kind === 'route') {
|
|
439
|
+
report(
|
|
440
|
+
DIAGNOSTICS.ROUTE_DEFAULT_EXPORT,
|
|
441
|
+
'a Route Handler must not export a default; export a named function for each HTTP method (GET, POST, ...)',
|
|
442
|
+
name,
|
|
443
|
+
line
|
|
444
|
+
)
|
|
445
|
+
continue
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
const form = spec.exports[name]
|
|
449
|
+
if (!form) {
|
|
450
|
+
report(
|
|
451
|
+
DIAGNOSTICS.UNSUPPORTED_EXPORT,
|
|
452
|
+
`Next.js ${ROUTE_EXPORT_TABLE.next} does not support a "${name}" export in a ${kind} file` +
|
|
453
|
+
` (supported: ${Object.keys(spec.exports).join(', ')}); move it to another module`,
|
|
454
|
+
name,
|
|
455
|
+
line
|
|
456
|
+
)
|
|
457
|
+
continue
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
if (isClient && (METADATA_FAMILY.has(name) || name === 'generateStaticParams' || SEGMENT_CONFIG_NAMES.has(name))) {
|
|
461
|
+
report(
|
|
462
|
+
DIAGNOSTICS.CLIENT_SERVER_ONLY_EXPORT,
|
|
463
|
+
`"${name}" is exported from a 'use client' module; Next.js resolves it on the server only (metadata and ` +
|
|
464
|
+
'generateStaticParams are rejected, segment config of a client segment is ignored), so move it to a Server Component module',
|
|
465
|
+
name,
|
|
466
|
+
line
|
|
467
|
+
)
|
|
468
|
+
continue
|
|
469
|
+
}
|
|
470
|
+
|
|
471
|
+
if (form === 'default') {
|
|
472
|
+
defaults.push(name)
|
|
473
|
+
continue
|
|
474
|
+
}
|
|
475
|
+
|
|
476
|
+
if (form === 'reexport') {
|
|
477
|
+
reexports.push(name)
|
|
478
|
+
// `export { makeParams as generateStaticParams }`: Next.js does not detect the export
|
|
479
|
+
// statically in the source, so the facade keeps the same local name to be read the same way.
|
|
480
|
+
if (STATICALLY_DETECTED.has(name) && entry.localName && entry.localName !== name) {
|
|
481
|
+
aliases[name] = IDENTIFIER.test(entry.localName) && entry.localName !== 'default' ? entry.localName : `${name}FromSource`
|
|
482
|
+
}
|
|
483
|
+
continue
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
// form === 'literal': segment config Next.js reads statically.
|
|
487
|
+
if (entry.form !== 'const-literal') {
|
|
488
|
+
const why = {
|
|
489
|
+
'const-nonliteral': `its initializer is not a literal Next.js can read (${entry.reason})`,
|
|
490
|
+
let: 'it is declared with let/var',
|
|
491
|
+
function: 'it is a function',
|
|
492
|
+
class: 'it is a class',
|
|
493
|
+
'export-clause': 'it is exported through `export { }` instead of an inline `export const`',
|
|
494
|
+
reexport: 'it is re-exported from another module',
|
|
495
|
+
'namespace-reexport': 'it is a namespace re-export',
|
|
496
|
+
}[entry.form]
|
|
497
|
+
report(
|
|
498
|
+
DIAGNOSTICS.NON_LITERAL_SEGMENT_CONFIG,
|
|
499
|
+
`segment config "${name}" is not a literal: ${why}. Next.js only reads segment config written as ` +
|
|
500
|
+
`\`export const ${name} = <literal>\` and silently uses the default otherwise`,
|
|
501
|
+
name,
|
|
502
|
+
line
|
|
503
|
+
)
|
|
504
|
+
continue
|
|
505
|
+
}
|
|
506
|
+
|
|
507
|
+
if (cacheComponents === true && ROUTE_EXPORT_TABLE.segmentConfig.invalidWithCacheComponents.includes(name)) {
|
|
508
|
+
report(
|
|
509
|
+
DIAGNOSTICS.CACHE_COMPONENTS_CONFLICT,
|
|
510
|
+
`segment config "${name}" is not compatible with cacheComponents (Next.js fails the build); remove it or use 'use cache' / cacheLife`,
|
|
511
|
+
name,
|
|
512
|
+
line
|
|
513
|
+
)
|
|
514
|
+
continue
|
|
515
|
+
}
|
|
516
|
+
if (cacheComponents === false && ROUTE_EXPORT_TABLE.segmentConfig.requireCacheComponents.includes(name)) {
|
|
517
|
+
report(DIAGNOSTICS.CACHE_COMPONENTS_CONFLICT, `segment config "${name}" requires cacheComponents (Next.js fails the build without it)`, name, line)
|
|
518
|
+
continue
|
|
519
|
+
}
|
|
520
|
+
|
|
521
|
+
if (nextSegmentConfig && ROUTE_EXPORT_TABLE.segmentConfig.keys.includes(name)) {
|
|
522
|
+
try {
|
|
523
|
+
nextSegmentConfig.parseAppSegmentConfig({ [name]: entry.literal }, target)
|
|
524
|
+
} catch (error) {
|
|
525
|
+
report(DIAGNOSTICS.INVALID_SEGMENT_CONFIG_VALUE, `Next.js rejects the value ${renderLiteral(entry.literal)}: ${error.message.split('\n').slice(1).join(' ').trim() || error.message}`, name, line)
|
|
526
|
+
continue
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
literals.push({ name, value: entry.literal })
|
|
531
|
+
}
|
|
532
|
+
|
|
533
|
+
if (spec.requiresDefault && !seen.has('default')) {
|
|
534
|
+
report(DIAGNOSTICS.MISSING_DEFAULT, `a ${kind} file needs a default export and the source module has none`)
|
|
535
|
+
}
|
|
536
|
+
if (kind === 'route' && !reexports.some(name => /^[A-Z]+$/.test(name))) {
|
|
537
|
+
report(DIAGNOSTICS.ROUTE_NO_METHODS, 'the Route Handler source exports no HTTP method (GET, HEAD, OPTIONS, POST, PUT, DELETE, PATCH)')
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
const order = Object.keys(spec.exports)
|
|
541
|
+
const byTableOrder = (a, b) => order.indexOf(a) - order.indexOf(b)
|
|
542
|
+
return {
|
|
543
|
+
diagnostics,
|
|
544
|
+
facade: {
|
|
545
|
+
directive: spec.facadeDirective,
|
|
546
|
+
defaultExport: defaults.length > 0,
|
|
547
|
+
reexports: reexports.sort(byTableOrder),
|
|
548
|
+
aliases,
|
|
549
|
+
literals: literals.sort((a, b) => byTableOrder(a.name, b.name)),
|
|
550
|
+
typeOnly: analysis.typeOnly.map(entry => entry.name),
|
|
551
|
+
},
|
|
552
|
+
}
|
|
553
|
+
}
|
|
554
|
+
|
|
555
|
+
/** The names of the export family Next.js reads a route's metadata from. */
|
|
556
|
+
const METADATA_EXPORTS = ['metadata', 'generateMetadata']
|
|
557
|
+
|
|
558
|
+
/**
|
|
559
|
+
* Render a planned facade as source text.
|
|
560
|
+
*
|
|
561
|
+
* @param {object} input
|
|
562
|
+
* @param {string} input.specifier - the module the facade forwards
|
|
563
|
+
* @param {object} input.facade - `planFacade().facade`
|
|
564
|
+
* @param {string} [input.stylesheet] - a project stylesheet specifier to import (the root layout's `styles/globals.css`)
|
|
565
|
+
* @param {{ wrapper: { name: string, specifier: string }, metadata?: { name: string, specifier: string }, fallback?: { specifier: string, names: string[] } }} [input.composition] -
|
|
566
|
+
* compose the module's default export with a core wrapper (`export default wrapper(Template)`) instead of
|
|
567
|
+
* forwarding it; `metadata` composes its `generateMetadata` the same way; `handler` composes each HTTP method of a
|
|
568
|
+
* Route Handler but OPTIONS (a CORS preflight carries no credentials); `fallback` names a core module whose
|
|
569
|
+
* metadata is forwarded when the module has none
|
|
570
|
+
*/
|
|
571
|
+
export function renderFacade({ specifier, facade, stylesheet, composition }) {
|
|
572
|
+
const from = JSON.stringify(specifier)
|
|
573
|
+
const lines = [`// Generated by NextSpark from ${specifier}. Do not edit: regenerated on every build.`]
|
|
574
|
+
if (facade.directive) lines.push(`'${facade.directive}'`, '')
|
|
575
|
+
if (stylesheet) lines.push(`import ${JSON.stringify(stylesheet)}`)
|
|
576
|
+
const composed = Boolean(composition?.wrapper && facade.defaultExport)
|
|
577
|
+
if (composed) {
|
|
578
|
+
lines.push(
|
|
579
|
+
`import ${COMPOSED_TEMPLATE} from ${from}`,
|
|
580
|
+
`import { ${composition.wrapper.name} } from ${JSON.stringify(composition.wrapper.specifier)}`,
|
|
581
|
+
`export default ${composition.wrapper.name}(${COMPOSED_TEMPLATE})`
|
|
582
|
+
)
|
|
583
|
+
} else if (facade.defaultExport) {
|
|
584
|
+
lines.push(`export { default } from ${from}`)
|
|
585
|
+
}
|
|
586
|
+
const aliases = facade.aliases ?? {}
|
|
587
|
+
const wrapsMetadata = Boolean(composed && composition.metadata && facade.reexports.includes('generateMetadata'))
|
|
588
|
+
const handlers = composition?.handler ? facade.reexports.filter(name => GUARDED_METHODS.includes(name)) : []
|
|
589
|
+
const forwarded = facade.reexports.filter(name => !(wrapsMetadata && name === 'generateMetadata') && !handlers.includes(name))
|
|
590
|
+
const direct = forwarded.filter(name => !aliases[name])
|
|
591
|
+
if (direct.length > 0) lines.push(`export { ${direct.join(', ')} } from ${from}`)
|
|
592
|
+
for (const name of forwarded.filter(name => aliases[name])) {
|
|
593
|
+
lines.push(`import { ${name} as ${aliases[name]} } from ${from}`, `export { ${aliases[name]} as ${name} }`)
|
|
594
|
+
}
|
|
595
|
+
if (wrapsMetadata) {
|
|
596
|
+
lines.push(
|
|
597
|
+
`import { generateMetadata as ${COMPOSED_METADATA} } from ${from}`,
|
|
598
|
+
`import { ${composition.metadata.name} } from ${JSON.stringify(composition.metadata.specifier)}`,
|
|
599
|
+
`export const generateMetadata = ${composition.metadata.name}(${COMPOSED_METADATA})`
|
|
600
|
+
)
|
|
601
|
+
}
|
|
602
|
+
if (handlers.length > 0) {
|
|
603
|
+
lines.push(`import { ${handlers.map(name => `${name} as ${COMPOSED_HANDLER}${name}`).join(', ')} } from ${from}`)
|
|
604
|
+
lines.push(`import { ${composition.handler.name} } from ${JSON.stringify(composition.handler.specifier)}`)
|
|
605
|
+
for (const name of handlers) lines.push(`export const ${name} = ${composition.handler.name}(${COMPOSED_HANDLER}${name})`)
|
|
606
|
+
}
|
|
607
|
+
// A composed layout that has no metadata of its own keeps core's.
|
|
608
|
+
if (composed && composition.fallback && !facade.reexports.some(name => METADATA_EXPORTS.includes(name)) && !facade.literals.some(({ name }) => METADATA_EXPORTS.includes(name))) {
|
|
609
|
+
const names = composition.fallback.names.filter(name => METADATA_EXPORTS.includes(name))
|
|
610
|
+
if (names.length > 0) lines.push(`export { ${names.join(', ')} } from ${JSON.stringify(composition.fallback.specifier)}`)
|
|
611
|
+
}
|
|
612
|
+
for (const { name, value } of facade.literals) lines.push(`export const ${name} = ${renderLiteral(value)}`)
|
|
613
|
+
return lines.join('\n') + '\n'
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
/** The local name a composed facade gives the module it wraps. */
|
|
617
|
+
export const COMPOSED_TEMPLATE = 'NextSparkTemplate'
|
|
618
|
+
/** The local name a composed facade gives the `generateMetadata` it wraps. */
|
|
619
|
+
export const COMPOSED_METADATA = 'NextSparkGenerateMetadata'
|
|
620
|
+
/** The local name prefix a composed facade gives the Route Handler methods it wraps (`NextSparkGET`). */
|
|
621
|
+
const COMPOSED_HANDLER = 'NextSpark'
|
|
622
|
+
/** The Route Handler methods an area check wraps: every HTTP method but OPTIONS. */
|
|
623
|
+
const GUARDED_METHODS = ['GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'PATCH']
|
|
624
|
+
|
|
625
|
+
/**
|
|
626
|
+
* Read the source module and return the facade for one route file.
|
|
627
|
+
*
|
|
628
|
+
* @param {object} input - see `planFacade`; `source` may be passed instead of reading `file`
|
|
629
|
+
* @returns {Promise<{ target: string, content: string, facade: object }>}
|
|
630
|
+
* @throws {FacadeEmitError} with every diagnostic when the facade cannot be emitted
|
|
631
|
+
*/
|
|
632
|
+
export async function emitFacade({ kind, target, specifier, file, source, projectRoot = process.cwd(), cacheComponents, pageExtensions, stylesheet, composition, wrappers }) {
|
|
633
|
+
const text = source ?? (await readFile(file, 'utf8'))
|
|
634
|
+
const analysis = await analyzeRouteSource({ source: text, file, projectRoot })
|
|
635
|
+
const nextSegmentConfig = loadNextSegmentConfig(projectRoot)
|
|
636
|
+
const { diagnostics, facade } = planFacade({ kind, target, specifier, file, analysis, cacheComponents, pageExtensions, nextSegmentConfig })
|
|
637
|
+
if (diagnostics.length > 0) throw new FacadeEmitError(diagnostics)
|
|
638
|
+
const content = renderFacade({ specifier, facade, stylesheet, composition })
|
|
639
|
+
// Guard on the output itself: a facade must stay inside the allowed facade grammar
|
|
640
|
+
// (fixed imports/re-exports and literal segment config only - static-imports.mjs), and a
|
|
641
|
+
// composed one inside the composed-facade grammar.
|
|
642
|
+
const violations = validateGeneratedModule({ ts: await loadTypeScriptFor(projectRoot), source: content, file: target, grammar: composition ? 'composed-facade' : 'facade', wrappers })
|
|
643
|
+
if (violations.length > 0) {
|
|
644
|
+
throw new FacadeEmitError(
|
|
645
|
+
violations.map(violation => ({ code: DIAGNOSTICS.VARIABLE_LOOKUP, file: target, line: violation.line, message: `the emitted facade leaves the allowed grammar (${violation.kind}): ${violation.text}` }))
|
|
646
|
+
)
|
|
647
|
+
}
|
|
648
|
+
return { target: posix.normalize(target.split('\\').join('/')), content, facade, grammar: composition && content !== renderFacade({ specifier, facade, stylesheet }) ? 'composed-facade' : 'facade' }
|
|
649
|
+
}
|
|
650
|
+
|
|
651
|
+
// ---------------------------------------------------------------------------
|
|
652
|
+
// Table rendering (README.md is checked against this by the tests)
|
|
653
|
+
// ---------------------------------------------------------------------------
|
|
654
|
+
|
|
655
|
+
/** Render the export table as the Markdown README.md embeds. */
|
|
656
|
+
export function renderExportTableMarkdown(table = ROUTE_EXPORT_TABLE) {
|
|
657
|
+
const rows = ['| Kind | File | Default | Re-exported | Literal segment config | Facade directive |', '| --- | --- | --- | --- | --- | --- |']
|
|
658
|
+
for (const [kind, spec] of Object.entries(table.kinds)) {
|
|
659
|
+
const names = form => Object.entries(spec.exports).filter(([, f]) => f === form).map(([name]) => `\`${name}\``).join(', ') || '-'
|
|
660
|
+
const defaultCell = spec.exports.default ? (spec.requiresDefault ? 'required' : 'optional') : 'forbidden'
|
|
661
|
+
const directive = spec.facadeDirective ? `'${spec.facadeDirective}' (source must be client)` : '-'
|
|
662
|
+
const fileCell = spec.numberedVariants ? `\`${spec.file}\`, \`${spec.file}0\`-\`${spec.file}9\`` : `\`${spec.file}\``
|
|
663
|
+
rows.push(`| ${kind} | ${fileCell} | ${defaultCell} | ${names('reexport')} | ${names('literal')} | ${directive} |`)
|
|
664
|
+
}
|
|
665
|
+
return rows.join('\n')
|
|
666
|
+
}
|