create-mithaq 0.0.0-stage → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/LICENSES/openstatus-time-picker.txt +21 -0
- package/LICENSES/payload.txt +22 -0
- package/LICENSES/ponytail.txt +21 -0
- package/index.js +521 -0
- package/package.json +19 -4
- package/template/apps/asas-backoffice/components.json +25 -0
- package/template/apps/asas-backoffice/gitignore +3 -0
- package/template/apps/asas-backoffice/package.json +57 -0
- package/template/apps/asas-backoffice/public/favicon.svg +1 -0
- package/template/apps/asas-backoffice/src/api.ts +147 -0
- package/template/apps/asas-backoffice/src/auth-frame.tsx +150 -0
- package/template/apps/asas-backoffice/src/components/ui/accordion.tsx +74 -0
- package/template/apps/asas-backoffice/src/components/ui/alert-dialog.tsx +185 -0
- package/template/apps/asas-backoffice/src/components/ui/avatar.tsx +106 -0
- package/template/apps/asas-backoffice/src/components/ui/badge.tsx +48 -0
- package/template/apps/asas-backoffice/src/components/ui/breadcrumb.tsx +124 -0
- package/template/apps/asas-backoffice/src/components/ui/button-group.tsx +87 -0
- package/template/apps/asas-backoffice/src/components/ui/button.tsx +55 -0
- package/template/apps/asas-backoffice/src/components/ui/calendar.tsx +223 -0
- package/template/apps/asas-backoffice/src/components/ui/card.tsx +102 -0
- package/template/apps/asas-backoffice/src/components/ui/chart.tsx +371 -0
- package/template/apps/asas-backoffice/src/components/ui/checkbox.tsx +28 -0
- package/template/apps/asas-backoffice/src/components/ui/collapsible.tsx +19 -0
- package/template/apps/asas-backoffice/src/components/ui/combobox.tsx +308 -0
- package/template/apps/asas-backoffice/src/components/ui/dialog.tsx +158 -0
- package/template/apps/asas-backoffice/src/components/ui/direction.tsx +6 -0
- package/template/apps/asas-backoffice/src/components/ui/directional-icon.tsx +20 -0
- package/template/apps/asas-backoffice/src/components/ui/dropdown-menu.tsx +267 -0
- package/template/apps/asas-backoffice/src/components/ui/field.tsx +236 -0
- package/template/apps/asas-backoffice/src/components/ui/input-group.tsx +155 -0
- package/template/apps/asas-backoffice/src/components/ui/input-otp.tsx +84 -0
- package/template/apps/asas-backoffice/src/components/ui/input.tsx +19 -0
- package/template/apps/asas-backoffice/src/components/ui/label.tsx +19 -0
- package/template/apps/asas-backoffice/src/components/ui/popover.tsx +90 -0
- package/template/apps/asas-backoffice/src/components/ui/radio-group.tsx +37 -0
- package/template/apps/asas-backoffice/src/components/ui/resizable.tsx +47 -0
- package/template/apps/asas-backoffice/src/components/ui/scroll-area.tsx +54 -0
- package/template/apps/asas-backoffice/src/components/ui/select.tsx +204 -0
- package/template/apps/asas-backoffice/src/components/ui/separator.tsx +24 -0
- package/template/apps/asas-backoffice/src/components/ui/sheet.tsx +139 -0
- package/template/apps/asas-backoffice/src/components/ui/sidebar.tsx +714 -0
- package/template/apps/asas-backoffice/src/components/ui/skeleton.tsx +13 -0
- package/template/apps/asas-backoffice/src/components/ui/slider.tsx +55 -0
- package/template/apps/asas-backoffice/src/components/ui/spinner.tsx +10 -0
- package/template/apps/asas-backoffice/src/components/ui/switch.tsx +29 -0
- package/template/apps/asas-backoffice/src/components/ui/table.tsx +115 -0
- package/template/apps/asas-backoffice/src/components/ui/tabs.tsx +79 -0
- package/template/apps/asas-backoffice/src/components/ui/textarea.tsx +17 -0
- package/template/apps/asas-backoffice/src/components/ui/toggle-group.tsx +89 -0
- package/template/apps/asas-backoffice/src/components/ui/toggle.tsx +44 -0
- package/template/apps/asas-backoffice/src/components/ui/tooltip.tsx +63 -0
- package/template/apps/asas-backoffice/src/components.ts +35 -0
- package/template/apps/asas-backoffice/src/copy.ts +1 -0
- package/template/apps/asas-backoffice/src/first-user.ts +14 -0
- package/template/apps/asas-backoffice/src/hooks/use-mobile.ts +19 -0
- package/template/apps/asas-backoffice/src/lib/utils.ts +1 -0
- package/template/apps/asas-backoffice/src/links.ts +38 -0
- package/template/apps/asas-backoffice/src/locale-switch.tsx +28 -0
- package/template/apps/asas-backoffice/src/no-organization.tsx +5 -0
- package/template/apps/asas-backoffice/src/redirect.ts +1 -0
- package/template/apps/asas-backoffice/src/request-headers.ts +11 -0
- package/template/apps/asas-backoffice/src/routeTree.gen.ts +206 -0
- package/template/apps/asas-backoffice/src/router.tsx +18 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice/files.ts +10 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice/screen.json +3971 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice/types.ts +163 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice.$.tsx +17 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice.index.tsx +10 -0
- package/template/apps/asas-backoffice/src/routes/(screens)/backoffice.tsx +13 -0
- package/template/apps/asas-backoffice/src/routes/__root.tsx +95 -0
- package/template/apps/asas-backoffice/src/routes/api/$.ts +34 -0
- package/template/apps/asas-backoffice/src/routes/auth.create-first-user.tsx +113 -0
- package/template/apps/asas-backoffice/src/routes/auth.sign-in.tsx +77 -0
- package/template/apps/asas-backoffice/src/routes/unauthorized.tsx +134 -0
- package/template/apps/asas-backoffice/src/screen-form.tsx +36 -0
- package/template/apps/asas-backoffice/src/screen-list.tsx +140 -0
- package/template/apps/asas-backoffice/src/screen-names.ts +10 -0
- package/template/apps/asas-backoffice/src/screens.tsx +888 -0
- package/template/apps/asas-backoffice/src/server.ts +30 -0
- package/template/apps/asas-backoffice/src/slide.ts +22 -0
- package/template/apps/asas-backoffice/src/start.ts +42 -0
- package/template/apps/asas-backoffice/src/styles.css +202 -0
- package/template/apps/asas-backoffice/src/theme.ts +2 -0
- package/template/apps/asas-backoffice/tsconfig.json +19 -0
- package/template/apps/asas-backoffice/vite.config.ts +32 -0
- package/template/apps/asas-tanstack/components.json +25 -0
- package/template/apps/asas-tanstack/gitignore +3 -0
- package/template/apps/asas-tanstack/package.json +58 -0
- package/template/apps/asas-tanstack/public/favicon.svg +1 -0
- package/template/apps/asas-tanstack/src/api.ts +147 -0
- package/template/apps/asas-tanstack/src/auth-frame.tsx +150 -0
- package/template/apps/asas-tanstack/src/choose-password.tsx +150 -0
- package/template/apps/asas-tanstack/src/components/ui/accordion.tsx +10 -0
- package/template/apps/asas-tanstack/src/components/ui/alert-dialog.tsx +173 -0
- package/template/apps/asas-tanstack/src/components/ui/avatar.tsx +104 -0
- package/template/apps/asas-tanstack/src/components/ui/badge.tsx +48 -0
- package/template/apps/asas-tanstack/src/components/ui/breadcrumb.tsx +125 -0
- package/template/apps/asas-tanstack/src/components/ui/button-group.tsx +87 -0
- package/template/apps/asas-tanstack/src/components/ui/button.tsx +56 -0
- package/template/apps/asas-tanstack/src/components/ui/calendar.tsx +223 -0
- package/template/apps/asas-tanstack/src/components/ui/card.tsx +94 -0
- package/template/apps/asas-tanstack/src/components/ui/chart.tsx +369 -0
- package/template/apps/asas-tanstack/src/components/ui/checkbox.tsx +27 -0
- package/template/apps/asas-tanstack/src/components/ui/collapsible.tsx +19 -0
- package/template/apps/asas-tanstack/src/components/ui/combobox.tsx +300 -0
- package/template/apps/asas-tanstack/src/components/ui/dialog.tsx +149 -0
- package/template/apps/asas-tanstack/src/components/ui/direction.tsx +5 -0
- package/template/apps/asas-tanstack/src/components/ui/directional-icon.tsx +20 -0
- package/template/apps/asas-tanstack/src/components/ui/dropdown-menu.tsx +267 -0
- package/template/apps/asas-tanstack/src/components/ui/field.tsx +225 -0
- package/template/apps/asas-tanstack/src/components/ui/input-group.tsx +147 -0
- package/template/apps/asas-tanstack/src/components/ui/input-otp.tsx +20 -0
- package/template/apps/asas-tanstack/src/components/ui/input.tsx +20 -0
- package/template/apps/asas-tanstack/src/components/ui/label.tsx +18 -0
- package/template/apps/asas-tanstack/src/components/ui/popover.tsx +50 -0
- package/template/apps/asas-tanstack/src/components/ui/radio-group.tsx +10 -0
- package/template/apps/asas-tanstack/src/components/ui/resizable.tsx +47 -0
- package/template/apps/asas-tanstack/src/components/ui/scroll-area.tsx +52 -0
- package/template/apps/asas-tanstack/src/components/ui/select.tsx +190 -0
- package/template/apps/asas-tanstack/src/components/ui/separator.tsx +23 -0
- package/template/apps/asas-tanstack/src/components/ui/sheet.tsx +127 -0
- package/template/apps/asas-tanstack/src/components/ui/sidebar.tsx +716 -0
- package/template/apps/asas-tanstack/src/components/ui/skeleton.tsx +13 -0
- package/template/apps/asas-tanstack/src/components/ui/slider.tsx +13 -0
- package/template/apps/asas-tanstack/src/components/ui/spinner.tsx +11 -0
- package/template/apps/asas-tanstack/src/components/ui/switch.tsx +8 -0
- package/template/apps/asas-tanstack/src/components/ui/table.tsx +119 -0
- package/template/apps/asas-tanstack/src/components/ui/tabs.tsx +80 -0
- package/template/apps/asas-tanstack/src/components/ui/textarea.tsx +18 -0
- package/template/apps/asas-tanstack/src/components/ui/toggle-group.tsx +8 -0
- package/template/apps/asas-tanstack/src/components/ui/toggle.tsx +44 -0
- package/template/apps/asas-tanstack/src/components/ui/tooltip.tsx +68 -0
- package/template/apps/asas-tanstack/src/components.ts +35 -0
- package/template/apps/asas-tanstack/src/copy.ts +1207 -0
- package/template/apps/asas-tanstack/src/first-run.ts +16 -0
- package/template/apps/asas-tanstack/src/hooks/use-mobile.ts +19 -0
- package/template/apps/asas-tanstack/src/lib/utils.ts +6 -0
- package/template/apps/asas-tanstack/src/links.ts +38 -0
- package/template/apps/asas-tanstack/src/locale-switch.tsx +28 -0
- package/template/apps/asas-tanstack/src/no-organization.tsx +108 -0
- package/template/apps/asas-tanstack/src/quiet-abort.ts +25 -0
- package/template/apps/asas-tanstack/src/redirect.ts +39 -0
- package/template/apps/asas-tanstack/src/request-headers.ts +11 -0
- package/template/apps/asas-tanstack/src/routeTree.gen.ts +424 -0
- package/template/apps/asas-tanstack/src/router.tsx +18 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/files.ts +11 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/screen.json +4242 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard/types.ts +160 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.$.tsx +17 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.index.tsx +10 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/dashboard.tsx +13 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal/files.ts +9 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal/screen.json +1564 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal/types.ts +94 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal.$.tsx +17 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal.index.tsx +10 -0
- package/template/apps/asas-tanstack/src/routes/(screens)/portal.tsx +13 -0
- package/template/apps/asas-tanstack/src/routes/__root.tsx +99 -0
- package/template/apps/asas-tanstack/src/routes/api/$.ts +11 -0
- package/template/apps/asas-tanstack/src/routes/auth.accept-invitation.tsx +108 -0
- package/template/apps/asas-tanstack/src/routes/auth.first-run.tsx +114 -0
- package/template/apps/asas-tanstack/src/routes/auth.forgot-password.tsx +94 -0
- package/template/apps/asas-tanstack/src/routes/auth.handoff.ts +39 -0
- package/template/apps/asas-tanstack/src/routes/auth.reset-password.tsx +16 -0
- package/template/apps/asas-tanstack/src/routes/auth.set-password.tsx +16 -0
- package/template/apps/asas-tanstack/src/routes/auth.sign-in.tsx +98 -0
- package/template/apps/asas-tanstack/src/routes/auth.sign-up.tsx +143 -0
- package/template/apps/asas-tanstack/src/routes/index.tsx +146 -0
- package/template/apps/asas-tanstack/src/routes/unauthorized.tsx +134 -0
- package/template/apps/asas-tanstack/src/screen-form.tsx +36 -0
- package/template/apps/asas-tanstack/src/screen-list.tsx +140 -0
- package/template/apps/asas-tanstack/src/screen-names.ts +10 -0
- package/template/apps/asas-tanstack/src/screens.tsx +888 -0
- package/template/apps/asas-tanstack/src/server.ts +26 -0
- package/template/apps/asas-tanstack/src/slide.ts +22 -0
- package/template/apps/asas-tanstack/src/start.ts +57 -0
- package/template/apps/asas-tanstack/src/styles.css +163 -0
- package/template/apps/asas-tanstack/src/theme.ts +5 -0
- package/template/apps/asas-tanstack/tsconfig.json +19 -0
- package/template/apps/asas-tanstack/vite.config.ts +34 -0
- package/template/package.json +16 -0
- package/template/templates/asas/.claude/skills/add-field/SKILL.md +27 -0
- package/template/templates/asas/.claude/skills/add-kayan/SKILL.md +26 -0
- package/template/templates/asas/.claude/skills/eject-admin-piece/SKILL.md +28 -0
- package/template/templates/asas/.claude/skills/upgrade-mithaq/SKILL.md +35 -0
- package/template/templates/asas/.env.example +33 -0
- package/template/templates/asas/AGENTS.md +101 -0
- package/template/templates/asas/CLAUDE.md +1 -0
- package/template/templates/asas/README.md +1056 -0
- package/template/templates/asas/mithaq.hints.json +25 -0
- package/template/templates/asas/package.json +53 -0
- package/template/templates/asas/src/asas.ts +118 -0
- package/template/templates/asas/src/backoffice-http.ts +117 -0
- package/template/templates/asas/src/dev-setup.ts +112 -0
- package/template/templates/asas/src/local-database.ts +22 -0
- package/template/templates/asas/src/messages/account.json +132 -0
- package/template/templates/asas/src/messages/auditLog.json +304 -0
- package/template/templates/asas/src/messages/backofficeLog.json +132 -0
- package/template/templates/asas/src/messages/courses.json +312 -0
- package/template/templates/asas/src/messages/enrollments.json +60 -0
- package/template/templates/asas/src/messages/invitation.json +82 -0
- package/template/templates/asas/src/messages/localUsers.json +48 -0
- package/template/templates/asas/src/messages/media.json +76 -0
- package/template/templates/asas/src/messages/member.json +62 -0
- package/template/templates/asas/src/messages/memberRoles.json +48 -0
- package/template/templates/asas/src/messages/mithaq.json +214 -0
- package/template/templates/asas/src/messages/organization.json +72 -0
- package/template/templates/asas/src/messages/organizationRole.json +62 -0
- package/template/templates/asas/src/messages/roles.json +72 -0
- package/template/templates/asas/src/messages/session.json +102 -0
- package/template/templates/asas/src/messages/sessions.json +136 -0
- package/template/templates/asas/src/messages/settings.json +64 -0
- package/template/templates/asas/src/messages/tags.json +48 -0
- package/template/templates/asas/src/messages/user.json +112 -0
- package/template/templates/asas/src/messages/verification.json +62 -0
- package/template/templates/asas/src/migrations/20260920080701_parched_tombstone/migration.sql +177 -0
- package/template/templates/asas/src/migrations/20260920080701_parched_tombstone/snapshot.json +2169 -0
- package/template/templates/asas/src/migrations/20260920230505_zippy_ben_urich/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20260920230505_zippy_ben_urich/snapshot.json +2182 -0
- package/template/templates/asas/src/migrations/20260920231219_slim_retro_girl/migration.sql +20 -0
- package/template/templates/asas/src/migrations/20260920231219_slim_retro_girl/snapshot.json +2409 -0
- package/template/templates/asas/src/migrations/20260922082945_military_ironclad/migration.sql +15 -0
- package/template/templates/asas/src/migrations/20260922082945_military_ironclad/snapshot.json +2627 -0
- package/template/templates/asas/src/migrations/20260922112630_bitter_chat/migration.sql +5 -0
- package/template/templates/asas/src/migrations/20260922112630_bitter_chat/snapshot.json +2691 -0
- package/template/templates/asas/src/migrations/20260923235915_foamy_rachel_grey/migration.sql +8 -0
- package/template/templates/asas/src/migrations/20260923235915_foamy_rachel_grey/snapshot.json +2795 -0
- package/template/templates/asas/src/migrations/20260926145709_clean_the_initiative/migration.sql +3 -0
- package/template/templates/asas/src/migrations/20260926145709_clean_the_initiative/snapshot.json +2834 -0
- package/template/templates/asas/src/migrations/20260927212525_bent_prowler/migration.sql +9 -0
- package/template/templates/asas/src/migrations/20260927212525_bent_prowler/snapshot.json +2870 -0
- package/template/templates/asas/src/migrations/20260927223441_tranquil_bromley/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20260927223441_tranquil_bromley/snapshot.json +2881 -0
- package/template/templates/asas/src/migrations/20260928030047_outgoing_wraith/migration.sql +15 -0
- package/template/templates/asas/src/migrations/20260928030047_outgoing_wraith/snapshot.json +3073 -0
- package/template/templates/asas/src/migrations/20260929024407_grey_morlun/migration.sql +21 -0
- package/template/templates/asas/src/migrations/20260929024407_grey_morlun/snapshot.json +3098 -0
- package/template/templates/asas/src/migrations/20260929130530_bored_jackal/migration.sql +21 -0
- package/template/templates/asas/src/migrations/20260929130530_bored_jackal/snapshot.json +3124 -0
- package/template/templates/asas/src/migrations/20260930102924_material_newton_destine/migration.sql +32 -0
- package/template/templates/asas/src/migrations/20260930102924_material_newton_destine/snapshot.json +3324 -0
- package/template/templates/asas/src/migrations/20261003022353_clumsy_taskmaster/migration.sql +2 -0
- package/template/templates/asas/src/migrations/20261003022353_clumsy_taskmaster/snapshot.json +3350 -0
- package/template/templates/asas/src/migrations/20261003143249_premium_red_shift/migration.sql +21 -0
- package/template/templates/asas/src/migrations/20261003143249_premium_red_shift/snapshot.json +3635 -0
- package/template/templates/asas/src/migrations/20261008215349_square_norrin_radd/migration.sql +8 -0
- package/template/templates/asas/src/migrations/20261008215349_square_norrin_radd/snapshot.json +3635 -0
- package/template/templates/asas/src/migrations/20261008230204_many_scarecrow/migration.sql +18 -0
- package/template/templates/asas/src/migrations/20261008230204_many_scarecrow/snapshot.json +3635 -0
- package/template/templates/asas/src/migrations/20261010005521_elite_giant_girl/migration.sql +18 -0
- package/template/templates/asas/src/migrations/20261010005521_elite_giant_girl/snapshot.json +3635 -0
- package/template/templates/asas/src/migrations/20261010120822_needy_thunderbolt/migration.sql +11 -0
- package/template/templates/asas/src/migrations/20261010120822_needy_thunderbolt/snapshot.json +3667 -0
- package/template/templates/asas/src/migrations/20261012000752_organization_ownership/migration.sql +48 -0
- package/template/templates/asas/src/migrations/20261012000752_organization_ownership/snapshot.json +3891 -0
- package/template/templates/asas/src/migrations/20261014221355_tags_restrict/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261014221355_tags_restrict/snapshot.json +3881 -0
- package/template/templates/asas/src/migrations/20261014222218_one_seat_per_session/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261014222218_one_seat_per_session/snapshot.json +3894 -0
- package/template/templates/asas/src/migrations/20261014223522_session_archive_reason/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261014223522_session_archive_reason/snapshot.json +3907 -0
- package/template/templates/asas/src/migrations/20261014225728_course_archive_by_operation/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261014225728_course_archive_by_operation/snapshot.json +3907 -0
- package/template/templates/asas/src/migrations/20261015042444_organization_names/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261015042444_organization_names/snapshot.json +3920 -0
- package/template/templates/asas/src/migrations/20261015053212_member_last_seen/migration.sql +1 -0
- package/template/templates/asas/src/migrations/20261015053212_member_last_seen/snapshot.json +3933 -0
- package/template/templates/asas/src/migrations/20261015093203_activity_and_staff_history/migration.sql +15 -0
- package/template/templates/asas/src/migrations/20261015093203_activity_and_staff_history/snapshot.json +4113 -0
- package/template/templates/asas/src/migrations/20261015095752_portal/migration.sql +2 -0
- package/template/templates/asas/src/migrations/20261015095752_portal/snapshot.json +4113 -0
- package/template/templates/asas/src/migrations/20261015135529_better_auth_indexes/migration.sql +9 -0
- package/template/templates/asas/src/migrations/20261015135529_better_auth_indexes/snapshot.json +4302 -0
- package/template/templates/asas/src/migrations/20261015162438_audit_changes_json/migration.sql +27 -0
- package/template/templates/asas/src/migrations/20261015162438_audit_changes_json/snapshot.json +4289 -0
- package/template/templates/asas/src/migrations/drizzle.config.ts +11 -0
- package/template/templates/asas/src/migrations/schema.ts +30 -0
- package/template/templates/asas/src/mithaq.ts +4 -0
- package/template/templates/asas/src/organizations.ts +3 -0
- package/template/templates/asas/src/seed.ts +427 -0
- package/template/templates/asas/src/ui-backoffice/home.tsx +63 -0
- package/template/templates/asas/src/ui-backoffice/organization-actions.tsx +121 -0
- package/template/templates/asas/src/ui-backoffice/record-page.tsx +30 -0
- package/template/templates/asas/src/ui-backoffice/role-cells.tsx +59 -0
- package/template/templates/asas/src/ui-backoffice/user-actions.tsx +249 -0
- package/template/templates/asas/src/ui-dashboard/dashboard.tsx +300 -0
- package/template/templates/asas/src/ui-dashboard/home.tsx +73 -0
- package/template/templates/asas/src/ui-dashboard/members-card.tsx +147 -0
- package/template/templates/asas/src/ui-dashboard/members.tsx +829 -0
- package/template/templates/asas/src/ui-dashboard/theme-provider.tsx +10 -0
- package/template/templates/asas/src/ui-dashboard/versions.tsx +446 -0
- package/template/templates/asas/src/ui-portal/courses-home.tsx +96 -0
- package/template/templates/asas/src/ui-portal/home.tsx +73 -0
- package/template/templates/asas/src/ui-portal/page.tsx +11 -0
- package/template/templates/features/audit-log/audit-log/audit-log.ts +284 -0
- package/template/templates/features/audit-log/backoffice-log/backoffice-log.ts +67 -0
- package/template/templates/features/audit-log/index.ts +4 -0
- package/template/templates/features/audit-log/package.json +13 -0
- package/template/templates/features/auth/index.ts +11 -0
- package/template/templates/features/auth/local-users/local-users.ts +143 -0
- package/template/templates/features/auth/package.json +13 -0
- package/template/templates/features/auth/user/account.access.ts +8 -0
- package/template/templates/features/auth/user/account.ts +31 -0
- package/template/templates/features/auth/user/index.ts +18 -0
- package/template/templates/features/auth/user/invitation.access.ts +4 -0
- package/template/templates/features/auth/user/invitation.ts +27 -0
- package/template/templates/features/auth/user/member.access.ts +10 -0
- package/template/templates/features/auth/user/member.screens.ts +37 -0
- package/template/templates/features/auth/user/member.ts +26 -0
- package/template/templates/features/auth/user/organization.access.ts +20 -0
- package/template/templates/features/auth/user/organization.screens.ts +37 -0
- package/template/templates/features/auth/user/organization.ts +25 -0
- package/template/templates/features/auth/user/organizationRole.access.ts +8 -0
- package/template/templates/features/auth/user/organizationRole.ts +25 -0
- package/template/templates/features/auth/user/session.access.ts +8 -0
- package/template/templates/features/auth/user/session.ts +28 -0
- package/template/templates/features/auth/user/user.access.ts +30 -0
- package/template/templates/features/auth/user/user.screens.ts +45 -0
- package/template/templates/features/auth/user/user.ts +31 -0
- package/template/templates/features/auth/user/verification.access.ts +8 -0
- package/template/templates/features/auth/user/verification.ts +23 -0
- package/template/templates/features/courses/courses/courses.ts +601 -0
- package/template/templates/features/courses/courses/cover-reads.ts +33 -0
- package/template/templates/features/courses/courses/ui/archived-badge.tsx +9 -0
- package/template/templates/features/courses/courses/ui/fee-cell.tsx +19 -0
- package/template/templates/features/courses/courses/ui/no-courses.tsx +13 -0
- package/template/templates/features/courses/courses/ui/status-cell.tsx +33 -0
- package/template/templates/features/courses/courses/ui/unpublish-button.tsx +15 -0
- package/template/templates/features/courses/domain/archive.ts +39 -0
- package/template/templates/features/courses/domain/on-offer.ts +6 -0
- package/template/templates/features/courses/enrollments/enrollments.ts +309 -0
- package/template/templates/features/courses/enrollments/ui/session-cell.tsx +75 -0
- package/template/templates/features/courses/enrollments/ui/session-labels.tsx +36 -0
- package/template/templates/features/courses/index.ts +8 -0
- package/template/templates/features/courses/package.json +24 -0
- package/template/templates/features/courses/portal/ui/catalogue.tsx +86 -0
- package/template/templates/features/courses/portal/ui/course.tsx +176 -0
- package/template/templates/features/courses/portal/ui/enrollments.tsx +170 -0
- package/template/templates/features/courses/portal/ui/parts.tsx +95 -0
- package/template/templates/features/courses/portal/ui/reads.ts +76 -0
- package/template/templates/features/courses/portal/ui/rules.ts +87 -0
- package/template/templates/features/courses/portal/ui/shell.tsx +194 -0
- package/template/templates/features/courses/sessions/seats.ts +42 -0
- package/template/templates/features/courses/sessions/sessions.ts +186 -0
- package/template/templates/features/media/index.ts +10 -0
- package/template/templates/features/media/media/media.ts +131 -0
- package/template/templates/features/media/media/ui/preview.tsx +143 -0
- package/template/templates/features/media/package.json +19 -0
- package/template/templates/features/roles/index.ts +4 -0
- package/template/templates/features/roles/member-roles/member-roles.ts +207 -0
- package/template/templates/features/roles/package.json +21 -0
- package/template/templates/features/roles/roles/roles.ts +184 -0
- package/template/templates/features/roles/roles/ui/role-form.tsx +267 -0
- package/template/templates/features/roles/roles/ui/roles.tsx +190 -0
- package/template/templates/features/settings/index.ts +3 -0
- package/template/templates/features/settings/package.json +13 -0
- package/template/templates/features/settings/settings/settings.ts +64 -0
- package/template/templates/features/tags/index.ts +3 -0
- package/template/templates/features/tags/package.json +14 -0
- package/template/templates/features/tags/tags/tags.ts +80 -0
- package/template/templates/mithaq/components.json +22 -0
- package/template/templates/mithaq/package.json +33 -0
- package/template/templates/mithaq/src/mail/index.ts +32 -0
- package/template/templates/mithaq/src/mail/mailers.ts +36 -0
- package/template/templates/mithaq/src/mithaq/audit-sink.ts +111 -0
- package/template/templates/mithaq/src/mithaq/auth/backoffice-roles.ts +108 -0
- package/template/templates/mithaq/src/mithaq/auth/index.ts +1859 -0
- package/template/templates/mithaq/src/mithaq/auth/organizations.ts +80 -0
- package/template/templates/mithaq/src/mithaq/pages.ts +83 -0
- package/template/templates/mithaq/src/mithaq/rich-text-nodes.ts +19 -0
- package/template/templates/mithaq/src/mithaq.ts +593 -0
- package/template/templates/mithaq/src/roles/default-member-roles.ts +29 -0
- package/template/templates/mithaq/src/roles/grants.ts +47 -0
- package/template/templates/mithaq/src/roles/member-access.ts +11 -0
- package/template/templates/mithaq/src/roles/statements.ts +13 -0
- package/template/templates/mithaq/src/roles/system-roles.ts +16 -0
- package/template/templates/mithaq/src/roles/tenant-access.ts +260 -0
- package/template/templates/mithaq/src/roles/tenant-roles.ts +321 -0
- package/template/templates/mithaq/src/steps/expected-updated-at.ts +41 -0
- package/template/templates/mithaq/src/storage/defaults.ts +156 -0
- package/template/templates/mithaq/src/storage/index.ts +97 -0
- package/template/templates/mithaq/src/storage/local.ts +143 -0
- package/template/templates/mithaq/src/storage/r2.ts +5 -0
- package/template/templates/mithaq/src/storage/s3.ts +91 -0
- package/template/templates/mithaq/src/storage/uploadthing.ts +59 -0
- package/template/templates/mithaq/src/ui/activity-page.tsx +33 -0
- package/template/templates/mithaq/src/ui/activity.tsx +527 -0
- package/template/templates/mithaq/src/ui/app-shell.tsx +268 -0
- package/template/templates/mithaq/src/ui/kpi-card.tsx +25 -0
- package/template/templates/mithaq/src/ui/record-page.tsx +50 -0
- package/template/templates/mithaq/src/ui/rich-text-nodes.tsx +33 -0
- package/template/templates/mithaq/src/ui/screen-nav.tsx +28 -0
- package/template/templates/mithaq/src/ui/table-page.tsx +9 -0
- package/template/templates/mithaq/src/ui/top-shell.tsx +60 -0
- package/README.md +0 -3
|
@@ -0,0 +1,424 @@
|
|
|
1
|
+
/* eslint-disable */
|
|
2
|
+
|
|
3
|
+
// @ts-nocheck
|
|
4
|
+
|
|
5
|
+
// noinspection JSUnusedGlobalSymbols
|
|
6
|
+
|
|
7
|
+
// This file was automatically generated by TanStack Router.
|
|
8
|
+
// You should NOT make any changes in this file as it will be overwritten.
|
|
9
|
+
// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.
|
|
10
|
+
|
|
11
|
+
import { Route as rootRouteImport } from './routes/__root'
|
|
12
|
+
import { Route as IndexRouteImport } from './routes/index'
|
|
13
|
+
import { Route as UnauthorizedRouteImport } from './routes/unauthorized'
|
|
14
|
+
import { Route as screensDashboardRouteImport } from './routes/(screens)/dashboard'
|
|
15
|
+
import { Route as screensPortalRouteImport } from './routes/(screens)/portal'
|
|
16
|
+
import { Route as ApiSplatRouteImport } from './routes/api/$'
|
|
17
|
+
import { Route as AuthAcceptInvitationRouteImport } from './routes/auth.accept-invitation'
|
|
18
|
+
import { Route as AuthFirstRunRouteImport } from './routes/auth.first-run'
|
|
19
|
+
import { Route as AuthForgotPasswordRouteImport } from './routes/auth.forgot-password'
|
|
20
|
+
import { Route as AuthHandoffRouteImport } from './routes/auth.handoff'
|
|
21
|
+
import { Route as AuthResetPasswordRouteImport } from './routes/auth.reset-password'
|
|
22
|
+
import { Route as AuthSetPasswordRouteImport } from './routes/auth.set-password'
|
|
23
|
+
import { Route as AuthSignInRouteImport } from './routes/auth.sign-in'
|
|
24
|
+
import { Route as AuthSignUpRouteImport } from './routes/auth.sign-up'
|
|
25
|
+
import { Route as screensDashboardIndexRouteImport } from './routes/(screens)/dashboard.index'
|
|
26
|
+
import { Route as screensDashboardSplatRouteImport } from './routes/(screens)/dashboard.$'
|
|
27
|
+
import { Route as screensPortalIndexRouteImport } from './routes/(screens)/portal.index'
|
|
28
|
+
import { Route as screensPortalSplatRouteImport } from './routes/(screens)/portal.$'
|
|
29
|
+
|
|
30
|
+
const IndexRoute = IndexRouteImport.update({
|
|
31
|
+
id: '/',
|
|
32
|
+
path: '/',
|
|
33
|
+
getParentRoute: () => rootRouteImport,
|
|
34
|
+
} as any)
|
|
35
|
+
const UnauthorizedRoute = UnauthorizedRouteImport.update({
|
|
36
|
+
id: '/unauthorized',
|
|
37
|
+
path: '/unauthorized',
|
|
38
|
+
getParentRoute: () => rootRouteImport,
|
|
39
|
+
} as any)
|
|
40
|
+
const screensDashboardRoute = screensDashboardRouteImport.update({
|
|
41
|
+
id: '/(screens)/dashboard',
|
|
42
|
+
path: '/dashboard',
|
|
43
|
+
getParentRoute: () => rootRouteImport,
|
|
44
|
+
} as any)
|
|
45
|
+
const screensPortalRoute = screensPortalRouteImport.update({
|
|
46
|
+
id: '/(screens)/portal',
|
|
47
|
+
path: '/portal',
|
|
48
|
+
getParentRoute: () => rootRouteImport,
|
|
49
|
+
} as any)
|
|
50
|
+
const ApiSplatRoute = ApiSplatRouteImport.update({
|
|
51
|
+
id: '/api/$',
|
|
52
|
+
path: '/api/$',
|
|
53
|
+
getParentRoute: () => rootRouteImport,
|
|
54
|
+
} as any)
|
|
55
|
+
const AuthAcceptInvitationRoute = AuthAcceptInvitationRouteImport.update({
|
|
56
|
+
id: '/auth/accept-invitation',
|
|
57
|
+
path: '/auth/accept-invitation',
|
|
58
|
+
getParentRoute: () => rootRouteImport,
|
|
59
|
+
} as any)
|
|
60
|
+
const AuthFirstRunRoute = AuthFirstRunRouteImport.update({
|
|
61
|
+
id: '/auth/first-run',
|
|
62
|
+
path: '/auth/first-run',
|
|
63
|
+
getParentRoute: () => rootRouteImport,
|
|
64
|
+
} as any)
|
|
65
|
+
const AuthForgotPasswordRoute = AuthForgotPasswordRouteImport.update({
|
|
66
|
+
id: '/auth/forgot-password',
|
|
67
|
+
path: '/auth/forgot-password',
|
|
68
|
+
getParentRoute: () => rootRouteImport,
|
|
69
|
+
} as any)
|
|
70
|
+
const AuthHandoffRoute = AuthHandoffRouteImport.update({
|
|
71
|
+
id: '/auth/handoff',
|
|
72
|
+
path: '/auth/handoff',
|
|
73
|
+
getParentRoute: () => rootRouteImport,
|
|
74
|
+
} as any)
|
|
75
|
+
const AuthResetPasswordRoute = AuthResetPasswordRouteImport.update({
|
|
76
|
+
id: '/auth/reset-password',
|
|
77
|
+
path: '/auth/reset-password',
|
|
78
|
+
getParentRoute: () => rootRouteImport,
|
|
79
|
+
} as any)
|
|
80
|
+
const AuthSetPasswordRoute = AuthSetPasswordRouteImport.update({
|
|
81
|
+
id: '/auth/set-password',
|
|
82
|
+
path: '/auth/set-password',
|
|
83
|
+
getParentRoute: () => rootRouteImport,
|
|
84
|
+
} as any)
|
|
85
|
+
const AuthSignInRoute = AuthSignInRouteImport.update({
|
|
86
|
+
id: '/auth/sign-in',
|
|
87
|
+
path: '/auth/sign-in',
|
|
88
|
+
getParentRoute: () => rootRouteImport,
|
|
89
|
+
} as any)
|
|
90
|
+
const AuthSignUpRoute = AuthSignUpRouteImport.update({
|
|
91
|
+
id: '/auth/sign-up',
|
|
92
|
+
path: '/auth/sign-up',
|
|
93
|
+
getParentRoute: () => rootRouteImport,
|
|
94
|
+
} as any)
|
|
95
|
+
const screensDashboardIndexRoute = screensDashboardIndexRouteImport.update({
|
|
96
|
+
id: '/',
|
|
97
|
+
path: '/',
|
|
98
|
+
getParentRoute: () => screensDashboardRoute,
|
|
99
|
+
} as any)
|
|
100
|
+
const screensDashboardSplatRoute = screensDashboardSplatRouteImport.update({
|
|
101
|
+
id: '/$',
|
|
102
|
+
path: '/$',
|
|
103
|
+
getParentRoute: () => screensDashboardRoute,
|
|
104
|
+
} as any)
|
|
105
|
+
const screensPortalIndexRoute = screensPortalIndexRouteImport.update({
|
|
106
|
+
id: '/',
|
|
107
|
+
path: '/',
|
|
108
|
+
getParentRoute: () => screensPortalRoute,
|
|
109
|
+
} as any)
|
|
110
|
+
const screensPortalSplatRoute = screensPortalSplatRouteImport.update({
|
|
111
|
+
id: '/$',
|
|
112
|
+
path: '/$',
|
|
113
|
+
getParentRoute: () => screensPortalRoute,
|
|
114
|
+
} as any)
|
|
115
|
+
|
|
116
|
+
export interface FileRoutesByFullPath {
|
|
117
|
+
'/': typeof IndexRoute
|
|
118
|
+
'/unauthorized': typeof UnauthorizedRoute
|
|
119
|
+
'/dashboard': typeof screensDashboardRouteWithChildren
|
|
120
|
+
'/portal': typeof screensPortalRouteWithChildren
|
|
121
|
+
'/api/$': typeof ApiSplatRoute
|
|
122
|
+
'/auth/accept-invitation': typeof AuthAcceptInvitationRoute
|
|
123
|
+
'/auth/first-run': typeof AuthFirstRunRoute
|
|
124
|
+
'/auth/forgot-password': typeof AuthForgotPasswordRoute
|
|
125
|
+
'/auth/handoff': typeof AuthHandoffRoute
|
|
126
|
+
'/auth/reset-password': typeof AuthResetPasswordRoute
|
|
127
|
+
'/auth/set-password': typeof AuthSetPasswordRoute
|
|
128
|
+
'/auth/sign-in': typeof AuthSignInRoute
|
|
129
|
+
'/auth/sign-up': typeof AuthSignUpRoute
|
|
130
|
+
'/dashboard/$': typeof screensDashboardSplatRoute
|
|
131
|
+
'/portal/$': typeof screensPortalSplatRoute
|
|
132
|
+
'/dashboard/': typeof screensDashboardIndexRoute
|
|
133
|
+
'/portal/': typeof screensPortalIndexRoute
|
|
134
|
+
}
|
|
135
|
+
export interface FileRoutesByTo {
|
|
136
|
+
'/': typeof IndexRoute
|
|
137
|
+
'/unauthorized': typeof UnauthorizedRoute
|
|
138
|
+
'/api/$': typeof ApiSplatRoute
|
|
139
|
+
'/auth/accept-invitation': typeof AuthAcceptInvitationRoute
|
|
140
|
+
'/auth/first-run': typeof AuthFirstRunRoute
|
|
141
|
+
'/auth/forgot-password': typeof AuthForgotPasswordRoute
|
|
142
|
+
'/auth/handoff': typeof AuthHandoffRoute
|
|
143
|
+
'/auth/reset-password': typeof AuthResetPasswordRoute
|
|
144
|
+
'/auth/set-password': typeof AuthSetPasswordRoute
|
|
145
|
+
'/auth/sign-in': typeof AuthSignInRoute
|
|
146
|
+
'/auth/sign-up': typeof AuthSignUpRoute
|
|
147
|
+
'/dashboard/$': typeof screensDashboardSplatRoute
|
|
148
|
+
'/portal/$': typeof screensPortalSplatRoute
|
|
149
|
+
'/dashboard': typeof screensDashboardIndexRoute
|
|
150
|
+
'/portal': typeof screensPortalIndexRoute
|
|
151
|
+
}
|
|
152
|
+
export interface FileRoutesById {
|
|
153
|
+
__root__: typeof rootRouteImport
|
|
154
|
+
'/': typeof IndexRoute
|
|
155
|
+
'/unauthorized': typeof UnauthorizedRoute
|
|
156
|
+
'/(screens)/dashboard': typeof screensDashboardRouteWithChildren
|
|
157
|
+
'/(screens)/portal': typeof screensPortalRouteWithChildren
|
|
158
|
+
'/api/$': typeof ApiSplatRoute
|
|
159
|
+
'/auth/accept-invitation': typeof AuthAcceptInvitationRoute
|
|
160
|
+
'/auth/first-run': typeof AuthFirstRunRoute
|
|
161
|
+
'/auth/forgot-password': typeof AuthForgotPasswordRoute
|
|
162
|
+
'/auth/handoff': typeof AuthHandoffRoute
|
|
163
|
+
'/auth/reset-password': typeof AuthResetPasswordRoute
|
|
164
|
+
'/auth/set-password': typeof AuthSetPasswordRoute
|
|
165
|
+
'/auth/sign-in': typeof AuthSignInRoute
|
|
166
|
+
'/auth/sign-up': typeof AuthSignUpRoute
|
|
167
|
+
'/(screens)/dashboard/$': typeof screensDashboardSplatRoute
|
|
168
|
+
'/(screens)/portal/$': typeof screensPortalSplatRoute
|
|
169
|
+
'/(screens)/dashboard/': typeof screensDashboardIndexRoute
|
|
170
|
+
'/(screens)/portal/': typeof screensPortalIndexRoute
|
|
171
|
+
}
|
|
172
|
+
export interface FileRouteTypes {
|
|
173
|
+
fileRoutesByFullPath: FileRoutesByFullPath
|
|
174
|
+
fullPaths:
|
|
175
|
+
| '/'
|
|
176
|
+
| '/unauthorized'
|
|
177
|
+
| '/dashboard'
|
|
178
|
+
| '/portal'
|
|
179
|
+
| '/api/$'
|
|
180
|
+
| '/auth/accept-invitation'
|
|
181
|
+
| '/auth/first-run'
|
|
182
|
+
| '/auth/forgot-password'
|
|
183
|
+
| '/auth/handoff'
|
|
184
|
+
| '/auth/reset-password'
|
|
185
|
+
| '/auth/set-password'
|
|
186
|
+
| '/auth/sign-in'
|
|
187
|
+
| '/auth/sign-up'
|
|
188
|
+
| '/dashboard/$'
|
|
189
|
+
| '/portal/$'
|
|
190
|
+
| '/dashboard/'
|
|
191
|
+
| '/portal/'
|
|
192
|
+
fileRoutesByTo: FileRoutesByTo
|
|
193
|
+
to:
|
|
194
|
+
| '/'
|
|
195
|
+
| '/unauthorized'
|
|
196
|
+
| '/api/$'
|
|
197
|
+
| '/auth/accept-invitation'
|
|
198
|
+
| '/auth/first-run'
|
|
199
|
+
| '/auth/forgot-password'
|
|
200
|
+
| '/auth/handoff'
|
|
201
|
+
| '/auth/reset-password'
|
|
202
|
+
| '/auth/set-password'
|
|
203
|
+
| '/auth/sign-in'
|
|
204
|
+
| '/auth/sign-up'
|
|
205
|
+
| '/dashboard/$'
|
|
206
|
+
| '/portal/$'
|
|
207
|
+
| '/dashboard'
|
|
208
|
+
| '/portal'
|
|
209
|
+
id:
|
|
210
|
+
| '__root__'
|
|
211
|
+
| '/'
|
|
212
|
+
| '/unauthorized'
|
|
213
|
+
| '/(screens)/dashboard'
|
|
214
|
+
| '/(screens)/portal'
|
|
215
|
+
| '/api/$'
|
|
216
|
+
| '/auth/accept-invitation'
|
|
217
|
+
| '/auth/first-run'
|
|
218
|
+
| '/auth/forgot-password'
|
|
219
|
+
| '/auth/handoff'
|
|
220
|
+
| '/auth/reset-password'
|
|
221
|
+
| '/auth/set-password'
|
|
222
|
+
| '/auth/sign-in'
|
|
223
|
+
| '/auth/sign-up'
|
|
224
|
+
| '/(screens)/dashboard/$'
|
|
225
|
+
| '/(screens)/portal/$'
|
|
226
|
+
| '/(screens)/dashboard/'
|
|
227
|
+
| '/(screens)/portal/'
|
|
228
|
+
fileRoutesById: FileRoutesById
|
|
229
|
+
}
|
|
230
|
+
export interface RootRouteChildren {
|
|
231
|
+
IndexRoute: typeof IndexRoute
|
|
232
|
+
UnauthorizedRoute: typeof UnauthorizedRoute
|
|
233
|
+
screensDashboardRoute: typeof screensDashboardRouteWithChildren
|
|
234
|
+
screensPortalRoute: typeof screensPortalRouteWithChildren
|
|
235
|
+
ApiSplatRoute: typeof ApiSplatRoute
|
|
236
|
+
AuthAcceptInvitationRoute: typeof AuthAcceptInvitationRoute
|
|
237
|
+
AuthFirstRunRoute: typeof AuthFirstRunRoute
|
|
238
|
+
AuthForgotPasswordRoute: typeof AuthForgotPasswordRoute
|
|
239
|
+
AuthHandoffRoute: typeof AuthHandoffRoute
|
|
240
|
+
AuthResetPasswordRoute: typeof AuthResetPasswordRoute
|
|
241
|
+
AuthSetPasswordRoute: typeof AuthSetPasswordRoute
|
|
242
|
+
AuthSignInRoute: typeof AuthSignInRoute
|
|
243
|
+
AuthSignUpRoute: typeof AuthSignUpRoute
|
|
244
|
+
}
|
|
245
|
+
|
|
246
|
+
declare module '@tanstack/react-router' {
|
|
247
|
+
interface FileRoutesByPath {
|
|
248
|
+
'/': {
|
|
249
|
+
id: '/'
|
|
250
|
+
path: '/'
|
|
251
|
+
fullPath: '/'
|
|
252
|
+
preLoaderRoute: typeof IndexRouteImport
|
|
253
|
+
parentRoute: typeof rootRouteImport
|
|
254
|
+
}
|
|
255
|
+
'/unauthorized': {
|
|
256
|
+
id: '/unauthorized'
|
|
257
|
+
path: '/unauthorized'
|
|
258
|
+
fullPath: '/unauthorized'
|
|
259
|
+
preLoaderRoute: typeof UnauthorizedRouteImport
|
|
260
|
+
parentRoute: typeof rootRouteImport
|
|
261
|
+
}
|
|
262
|
+
'/(screens)/dashboard': {
|
|
263
|
+
id: '/(screens)/dashboard'
|
|
264
|
+
path: '/dashboard'
|
|
265
|
+
fullPath: '/dashboard'
|
|
266
|
+
preLoaderRoute: typeof screensDashboardRouteImport
|
|
267
|
+
parentRoute: typeof rootRouteImport
|
|
268
|
+
}
|
|
269
|
+
'/(screens)/portal': {
|
|
270
|
+
id: '/(screens)/portal'
|
|
271
|
+
path: '/portal'
|
|
272
|
+
fullPath: '/portal'
|
|
273
|
+
preLoaderRoute: typeof screensPortalRouteImport
|
|
274
|
+
parentRoute: typeof rootRouteImport
|
|
275
|
+
}
|
|
276
|
+
'/api/$': {
|
|
277
|
+
id: '/api/$'
|
|
278
|
+
path: '/api/$'
|
|
279
|
+
fullPath: '/api/$'
|
|
280
|
+
preLoaderRoute: typeof ApiSplatRouteImport
|
|
281
|
+
parentRoute: typeof rootRouteImport
|
|
282
|
+
}
|
|
283
|
+
'/auth/accept-invitation': {
|
|
284
|
+
id: '/auth/accept-invitation'
|
|
285
|
+
path: '/auth/accept-invitation'
|
|
286
|
+
fullPath: '/auth/accept-invitation'
|
|
287
|
+
preLoaderRoute: typeof AuthAcceptInvitationRouteImport
|
|
288
|
+
parentRoute: typeof rootRouteImport
|
|
289
|
+
}
|
|
290
|
+
'/auth/first-run': {
|
|
291
|
+
id: '/auth/first-run'
|
|
292
|
+
path: '/auth/first-run'
|
|
293
|
+
fullPath: '/auth/first-run'
|
|
294
|
+
preLoaderRoute: typeof AuthFirstRunRouteImport
|
|
295
|
+
parentRoute: typeof rootRouteImport
|
|
296
|
+
}
|
|
297
|
+
'/auth/forgot-password': {
|
|
298
|
+
id: '/auth/forgot-password'
|
|
299
|
+
path: '/auth/forgot-password'
|
|
300
|
+
fullPath: '/auth/forgot-password'
|
|
301
|
+
preLoaderRoute: typeof AuthForgotPasswordRouteImport
|
|
302
|
+
parentRoute: typeof rootRouteImport
|
|
303
|
+
}
|
|
304
|
+
'/auth/handoff': {
|
|
305
|
+
id: '/auth/handoff'
|
|
306
|
+
path: '/auth/handoff'
|
|
307
|
+
fullPath: '/auth/handoff'
|
|
308
|
+
preLoaderRoute: typeof AuthHandoffRouteImport
|
|
309
|
+
parentRoute: typeof rootRouteImport
|
|
310
|
+
}
|
|
311
|
+
'/auth/reset-password': {
|
|
312
|
+
id: '/auth/reset-password'
|
|
313
|
+
path: '/auth/reset-password'
|
|
314
|
+
fullPath: '/auth/reset-password'
|
|
315
|
+
preLoaderRoute: typeof AuthResetPasswordRouteImport
|
|
316
|
+
parentRoute: typeof rootRouteImport
|
|
317
|
+
}
|
|
318
|
+
'/auth/set-password': {
|
|
319
|
+
id: '/auth/set-password'
|
|
320
|
+
path: '/auth/set-password'
|
|
321
|
+
fullPath: '/auth/set-password'
|
|
322
|
+
preLoaderRoute: typeof AuthSetPasswordRouteImport
|
|
323
|
+
parentRoute: typeof rootRouteImport
|
|
324
|
+
}
|
|
325
|
+
'/auth/sign-in': {
|
|
326
|
+
id: '/auth/sign-in'
|
|
327
|
+
path: '/auth/sign-in'
|
|
328
|
+
fullPath: '/auth/sign-in'
|
|
329
|
+
preLoaderRoute: typeof AuthSignInRouteImport
|
|
330
|
+
parentRoute: typeof rootRouteImport
|
|
331
|
+
}
|
|
332
|
+
'/auth/sign-up': {
|
|
333
|
+
id: '/auth/sign-up'
|
|
334
|
+
path: '/auth/sign-up'
|
|
335
|
+
fullPath: '/auth/sign-up'
|
|
336
|
+
preLoaderRoute: typeof AuthSignUpRouteImport
|
|
337
|
+
parentRoute: typeof rootRouteImport
|
|
338
|
+
}
|
|
339
|
+
'/(screens)/dashboard/': {
|
|
340
|
+
id: '/(screens)/dashboard/'
|
|
341
|
+
path: '/'
|
|
342
|
+
fullPath: '/dashboard/'
|
|
343
|
+
preLoaderRoute: typeof screensDashboardIndexRouteImport
|
|
344
|
+
parentRoute: typeof screensDashboardRoute
|
|
345
|
+
}
|
|
346
|
+
'/(screens)/dashboard/$': {
|
|
347
|
+
id: '/(screens)/dashboard/$'
|
|
348
|
+
path: '/$'
|
|
349
|
+
fullPath: '/dashboard/$'
|
|
350
|
+
preLoaderRoute: typeof screensDashboardSplatRouteImport
|
|
351
|
+
parentRoute: typeof screensDashboardRoute
|
|
352
|
+
}
|
|
353
|
+
'/(screens)/portal/': {
|
|
354
|
+
id: '/(screens)/portal/'
|
|
355
|
+
path: '/'
|
|
356
|
+
fullPath: '/portal/'
|
|
357
|
+
preLoaderRoute: typeof screensPortalIndexRouteImport
|
|
358
|
+
parentRoute: typeof screensPortalRoute
|
|
359
|
+
}
|
|
360
|
+
'/(screens)/portal/$': {
|
|
361
|
+
id: '/(screens)/portal/$'
|
|
362
|
+
path: '/$'
|
|
363
|
+
fullPath: '/portal/$'
|
|
364
|
+
preLoaderRoute: typeof screensPortalSplatRouteImport
|
|
365
|
+
parentRoute: typeof screensPortalRoute
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
|
|
370
|
+
interface screensDashboardRouteChildren {
|
|
371
|
+
screensDashboardSplatRoute: typeof screensDashboardSplatRoute
|
|
372
|
+
screensDashboardIndexRoute: typeof screensDashboardIndexRoute
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
const screensDashboardRouteChildren: screensDashboardRouteChildren = {
|
|
376
|
+
screensDashboardSplatRoute: screensDashboardSplatRoute,
|
|
377
|
+
screensDashboardIndexRoute: screensDashboardIndexRoute,
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
const screensDashboardRouteWithChildren =
|
|
381
|
+
screensDashboardRoute._addFileChildren(screensDashboardRouteChildren)
|
|
382
|
+
|
|
383
|
+
interface screensPortalRouteChildren {
|
|
384
|
+
screensPortalSplatRoute: typeof screensPortalSplatRoute
|
|
385
|
+
screensPortalIndexRoute: typeof screensPortalIndexRoute
|
|
386
|
+
}
|
|
387
|
+
|
|
388
|
+
const screensPortalRouteChildren: screensPortalRouteChildren = {
|
|
389
|
+
screensPortalSplatRoute: screensPortalSplatRoute,
|
|
390
|
+
screensPortalIndexRoute: screensPortalIndexRoute,
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
const screensPortalRouteWithChildren = screensPortalRoute._addFileChildren(
|
|
394
|
+
screensPortalRouteChildren,
|
|
395
|
+
)
|
|
396
|
+
|
|
397
|
+
const rootRouteChildren: RootRouteChildren = {
|
|
398
|
+
IndexRoute: IndexRoute,
|
|
399
|
+
UnauthorizedRoute: UnauthorizedRoute,
|
|
400
|
+
screensDashboardRoute: screensDashboardRouteWithChildren,
|
|
401
|
+
screensPortalRoute: screensPortalRouteWithChildren,
|
|
402
|
+
ApiSplatRoute: ApiSplatRoute,
|
|
403
|
+
AuthAcceptInvitationRoute: AuthAcceptInvitationRoute,
|
|
404
|
+
AuthFirstRunRoute: AuthFirstRunRoute,
|
|
405
|
+
AuthForgotPasswordRoute: AuthForgotPasswordRoute,
|
|
406
|
+
AuthHandoffRoute: AuthHandoffRoute,
|
|
407
|
+
AuthResetPasswordRoute: AuthResetPasswordRoute,
|
|
408
|
+
AuthSetPasswordRoute: AuthSetPasswordRoute,
|
|
409
|
+
AuthSignInRoute: AuthSignInRoute,
|
|
410
|
+
AuthSignUpRoute: AuthSignUpRoute,
|
|
411
|
+
}
|
|
412
|
+
export const routeTree = rootRouteImport
|
|
413
|
+
._addFileChildren(rootRouteChildren)
|
|
414
|
+
._addFileTypes<FileRouteTypes>()
|
|
415
|
+
|
|
416
|
+
import type { getRouter } from './router.tsx'
|
|
417
|
+
import type { startInstance } from './start.ts'
|
|
418
|
+
declare module '@tanstack/react-start' {
|
|
419
|
+
interface Register {
|
|
420
|
+
ssr: true
|
|
421
|
+
router: Awaited<ReturnType<typeof getRouter>>
|
|
422
|
+
config: Awaited<ReturnType<typeof startInstance.getOptions>>
|
|
423
|
+
}
|
|
424
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { createRouter } from '@tanstack/react-router'
|
|
2
|
+
import { routeTree } from './routeTree.gen'
|
|
3
|
+
import { flatSearch } from './screen-list.tsx'
|
|
4
|
+
import { ComponentsProvider, RouteError } from 'mithaq-admin/components.tsx'
|
|
5
|
+
import { components } from './components.ts'
|
|
6
|
+
|
|
7
|
+
// The search is read and written as the URL's own pairs, one string each, because a list
|
|
8
|
+
// keeps its `qs` query there.
|
|
9
|
+
export const getRouter = () =>
|
|
10
|
+
createRouter({
|
|
11
|
+
routeTree,
|
|
12
|
+
scrollRestoration: true,
|
|
13
|
+
...flatSearch,
|
|
14
|
+
// Around every route, so each screen draws its controls from this map.
|
|
15
|
+
Wrap: ({ children }) => <ComponentsProvider components={components}>{children}</ComponentsProvider>,
|
|
16
|
+
// Drawn in place of the route that threw, so the shell around it stays.
|
|
17
|
+
defaultErrorComponent: RouteError,
|
|
18
|
+
})
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// Written by `mithaq generate screens`. Do not edit.
|
|
2
|
+
/// <reference types="vite/client" />
|
|
3
|
+
// Every file the `dashboard` screen's references name, each loaded when a page draws it, keyed as the reference prints it.
|
|
4
|
+
const named = (name: string, files: Record<string, () => Promise<unknown>>) => Object.fromEntries(Object.entries(files).map(([file, load]) => [`${name}:${file}`, load]))
|
|
5
|
+
export const files = {
|
|
6
|
+
...import.meta.glob(['./src/ui-dashboard/dashboard.tsx', './src/ui-dashboard/members.tsx', './src/ui-dashboard/theme-provider.tsx', './src/ui-dashboard/versions.tsx'], { base: '../../../../../../templates/asas/', exhaustive: true }),
|
|
7
|
+
...named('@asas/courses', import.meta.glob(['./courses/ui/archived-badge.tsx', './courses/ui/fee-cell.tsx', './courses/ui/no-courses.tsx', './courses/ui/status-cell.tsx', './courses/ui/unpublish-button.tsx', './enrollments/ui/session-cell.tsx', './enrollments/ui/session-labels.tsx'], { base: '../../../../../../templates/features/courses/', exhaustive: true })),
|
|
8
|
+
...named('@asas/media', import.meta.glob(['./media/ui/preview.tsx'], { base: '../../../../../../templates/features/media/', exhaustive: true })),
|
|
9
|
+
...named('@asas/mithaq', import.meta.glob(['./src/ui/activity-page.tsx', './src/ui/activity.tsx', './src/ui/app-shell.tsx', './src/ui/record-page.tsx', './src/ui/rich-text-nodes.tsx', './src/ui/table-page.tsx', './src/ui/top-shell.tsx'], { base: '../../../../../../templates/mithaq/', exhaustive: true })),
|
|
10
|
+
...named('@asas/roles', import.meta.glob(['./roles/ui/role-form.tsx', './roles/ui/roles.tsx'], { base: '../../../../../../templates/features/roles/', exhaustive: true })),
|
|
11
|
+
}
|