@fayz-ai/admin 0.10.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 +21 -0
- package/README.md +44 -0
- package/dist/CommandPalette-2AL327XQ.js +258 -0
- package/dist/CommandPalette-2AL327XQ.js.map +1 -0
- package/dist/ImportWizard-CISHGNQC.js +3 -0
- package/dist/ImportWizard-CISHGNQC.js.map +1 -0
- package/dist/ScheduleEditor-BSFF7LME.js +1040 -0
- package/dist/ScheduleEditor-BSFF7LME.js.map +1 -0
- package/dist/SubscriptionPage-NLZAZO4P.js +7 -0
- package/dist/SubscriptionPage-NLZAZO4P.js.map +1 -0
- package/dist/access/context.d.ts +47 -0
- package/dist/access/context.d.ts.map +1 -0
- package/dist/access/headless.d.ts +21 -0
- package/dist/access/headless.d.ts.map +1 -0
- package/dist/access/index.d.ts +12 -0
- package/dist/access/index.d.ts.map +1 -0
- package/dist/access/limits-registry.d.ts +33 -0
- package/dist/access/limits-registry.d.ts.map +1 -0
- package/dist/access/module-nav.d.ts +15 -0
- package/dist/access/module-nav.d.ts.map +1 -0
- package/dist/access/resolver.d.ts +2 -0
- package/dist/access/resolver.d.ts.map +1 -0
- package/dist/access/types.d.ts +43 -0
- package/dist/access/types.d.ts.map +1 -0
- package/dist/access/upgrade-modal-store.d.ts +23 -0
- package/dist/access/upgrade-modal-store.d.ts.map +1 -0
- package/dist/app/AdminShell.d.ts +65 -0
- package/dist/app/AdminShell.d.ts.map +1 -0
- package/dist/app/LoginPage.d.ts +3 -0
- package/dist/app/LoginPage.d.ts.map +1 -0
- package/dist/app/admin-app.d.ts +23 -0
- package/dist/app/admin-app.d.ts.map +1 -0
- package/dist/app/config.d.ts +277 -0
- package/dist/app/config.d.ts.map +1 -0
- package/dist/app/core-entities.d.ts +25 -0
- package/dist/app/core-entities.d.ts.map +1 -0
- package/dist/app/derive-contract.d.ts +8 -0
- package/dist/app/derive-contract.d.ts.map +1 -0
- package/dist/app/nav-contributions.store.d.ts +17 -0
- package/dist/app/nav-contributions.store.d.ts.map +1 -0
- package/dist/app/routing.d.ts +10 -0
- package/dist/app/routing.d.ts.map +1 -0
- package/dist/app/scaffold.d.ts +17 -0
- package/dist/app/scaffold.d.ts.map +1 -0
- package/dist/billing/index.d.ts +5 -0
- package/dist/billing/index.d.ts.map +1 -0
- package/dist/billing/index.js +3 -0
- package/dist/billing/index.js.map +1 -0
- package/dist/billing/plan-badge.d.ts +17 -0
- package/dist/billing/plan-badge.d.ts.map +1 -0
- package/dist/billing/store.d.ts +40 -0
- package/dist/billing/store.d.ts.map +1 -0
- package/dist/chunk-5O2UJAQ7.js +534 -0
- package/dist/chunk-5O2UJAQ7.js.map +1 -0
- package/dist/chunk-PNAJODZM.js +315 -0
- package/dist/chunk-PNAJODZM.js.map +1 -0
- package/dist/chunk-RKXZ7RUG.js +20 -0
- package/dist/chunk-RKXZ7RUG.js.map +1 -0
- package/dist/chunk-TNTZHUL6.js +817 -0
- package/dist/chunk-TNTZHUL6.js.map +1 -0
- package/dist/chunk-UMRN6427.js +510 -0
- package/dist/chunk-UMRN6427.js.map +1 -0
- package/dist/chunk-VN5NTK26.js +36 -0
- package/dist/chunk-VN5NTK26.js.map +1 -0
- package/dist/chunk-VTEP2AQX.js +101 -0
- package/dist/chunk-VTEP2AQX.js.map +1 -0
- package/dist/chunk-YUHCC7JY.js +11 -0
- package/dist/chunk-YUHCC7JY.js.map +1 -0
- package/dist/components/RightRail.d.ts +8 -0
- package/dist/components/RightRail.d.ts.map +1 -0
- package/dist/components/auth/CenteredLogin.d.ts +13 -0
- package/dist/components/auth/CenteredLogin.d.ts.map +1 -0
- package/dist/components/auth/LoginForm.d.ts +12 -0
- package/dist/components/auth/LoginForm.d.ts.map +1 -0
- package/dist/components/auth/LoginPage.d.ts +15 -0
- package/dist/components/auth/LoginPage.d.ts.map +1 -0
- package/dist/components/auth/OAuthButtons.d.ts +10 -0
- package/dist/components/auth/OAuthButtons.d.ts.map +1 -0
- package/dist/components/auth/ProtectedRoute.d.ts +11 -0
- package/dist/components/auth/ProtectedRoute.d.ts.map +1 -0
- package/dist/components/auth/RecoveryForm.d.ts +9 -0
- package/dist/components/auth/RecoveryForm.d.ts.map +1 -0
- package/dist/components/auth/SignupForm.d.ts +10 -0
- package/dist/components/auth/SignupForm.d.ts.map +1 -0
- package/dist/components/auth/SplitLogin.d.ts +14 -0
- package/dist/components/auth/SplitLogin.d.ts.map +1 -0
- package/dist/components/auth/index.d.ts +7 -0
- package/dist/components/auth/index.d.ts.map +1 -0
- package/dist/components/billing/InvoiceList.d.ts +9 -0
- package/dist/components/billing/InvoiceList.d.ts.map +1 -0
- package/dist/components/billing/PlanSelector.d.ts +13 -0
- package/dist/components/billing/PlanSelector.d.ts.map +1 -0
- package/dist/components/billing/SoftLimitBanner.d.ts +5 -0
- package/dist/components/billing/SoftLimitBanner.d.ts.map +1 -0
- package/dist/components/billing/SubscriptionCard.d.ts +12 -0
- package/dist/components/billing/SubscriptionCard.d.ts.map +1 -0
- package/dist/components/billing/SubscriptionPage.d.ts +5 -0
- package/dist/components/billing/SubscriptionPage.d.ts.map +1 -0
- package/dist/components/billing/UpgradeModal.d.ts +3 -0
- package/dist/components/billing/UpgradeModal.d.ts.map +1 -0
- package/dist/components/billing/UpgradeOverlay.d.ts +15 -0
- package/dist/components/billing/UpgradeOverlay.d.ts.map +1 -0
- package/dist/components/billing/UpgradePrompt.d.ts +10 -0
- package/dist/components/billing/UpgradePrompt.d.ts.map +1 -0
- package/dist/components/billing/access-contract.d.ts +18 -0
- package/dist/components/billing/access-contract.d.ts.map +1 -0
- package/dist/components/billing/gates.d.ts +14 -0
- package/dist/components/billing/gates.d.ts.map +1 -0
- package/dist/components/billing/index.d.ts +15 -0
- package/dist/components/billing/index.d.ts.map +1 -0
- package/dist/components/billing/plan-feature.d.ts +11 -0
- package/dist/components/billing/plan-feature.d.ts.map +1 -0
- package/dist/components/chat/ChatAttachments.d.ts +23 -0
- package/dist/components/chat/ChatAttachments.d.ts.map +1 -0
- package/dist/components/chat/ChatComposer.d.ts +21 -0
- package/dist/components/chat/ChatComposer.d.ts.map +1 -0
- package/dist/components/chat/ChatConversation.d.ts +20 -0
- package/dist/components/chat/ChatConversation.d.ts.map +1 -0
- package/dist/components/chat/ChatFab.d.ts +17 -0
- package/dist/components/chat/ChatFab.d.ts.map +1 -0
- package/dist/components/chat/ChatHistory.d.ts +16 -0
- package/dist/components/chat/ChatHistory.d.ts.map +1 -0
- package/dist/components/chat/ChatMessages.d.ts +16 -0
- package/dist/components/chat/ChatMessages.d.ts.map +1 -0
- package/dist/components/chat/ChatSuggestions.d.ts +17 -0
- package/dist/components/chat/ChatSuggestions.d.ts.map +1 -0
- package/dist/components/chat/ConfirmActionCard.d.ts +19 -0
- package/dist/components/chat/ConfirmActionCard.d.ts.map +1 -0
- package/dist/components/chat/RecordChip.d.ts +12 -0
- package/dist/components/chat/RecordChip.d.ts.map +1 -0
- package/dist/components/chat/index.d.ts +4 -0
- package/dist/components/chat/index.d.ts.map +1 -0
- package/dist/components/chat/markdown.d.ts +5 -0
- package/dist/components/chat/markdown.d.ts.map +1 -0
- package/dist/components/connect/AddConnectorPanel.d.ts +32 -0
- package/dist/components/connect/AddConnectorPanel.d.ts.map +1 -0
- package/dist/components/connect/ConnectConsentPage.d.ts +12 -0
- package/dist/components/connect/ConnectConsentPage.d.ts.map +1 -0
- package/dist/components/connect/ConnectorDetail.d.ts +29 -0
- package/dist/components/connect/ConnectorDetail.d.ts.map +1 -0
- package/dist/components/connect/ConnectorMark.d.ts +20 -0
- package/dist/components/connect/ConnectorMark.d.ts.map +1 -0
- package/dist/components/connect/ConnectorRow.d.ts +33 -0
- package/dist/components/connect/ConnectorRow.d.ts.map +1 -0
- package/dist/components/connect/ConnectorsPanel.d.ts +40 -0
- package/dist/components/connect/ConnectorsPanel.d.ts.map +1 -0
- package/dist/components/connect/ConnectorsTab.d.ts +16 -0
- package/dist/components/connect/ConnectorsTab.d.ts.map +1 -0
- package/dist/components/connect/client-marks.d.ts +31 -0
- package/dist/components/connect/client-marks.d.ts.map +1 -0
- package/dist/components/connect/index.d.ts +12 -0
- package/dist/components/connect/index.d.ts.map +1 -0
- package/dist/components/connect/model.d.ts +151 -0
- package/dist/components/connect/model.d.ts.map +1 -0
- package/dist/components/connect/useConnectors.d.ts +24 -0
- package/dist/components/connect/useConnectors.d.ts.map +1 -0
- package/dist/components/layout/BottomNav.d.ts +24 -0
- package/dist/components/layout/BottomNav.d.ts.map +1 -0
- package/dist/components/layout/CommandPalette.d.ts +23 -0
- package/dist/components/layout/CommandPalette.d.ts.map +1 -0
- package/dist/components/layout/LocationSwitchOverlay.d.ts +3 -0
- package/dist/components/layout/LocationSwitchOverlay.d.ts.map +1 -0
- package/dist/components/layout/MockModeBanner.d.ts +3 -0
- package/dist/components/layout/MockModeBanner.d.ts.map +1 -0
- package/dist/components/layout/PrintChrome.d.ts +10 -0
- package/dist/components/layout/PrintChrome.d.ts.map +1 -0
- package/dist/components/layout/index.d.ts +6 -0
- package/dist/components/layout/index.d.ts.map +1 -0
- package/dist/components/notes/NotesPanel.d.ts +13 -0
- package/dist/components/notes/NotesPanel.d.ts.map +1 -0
- package/dist/components/notifications/ChangelogFeed.d.ts +8 -0
- package/dist/components/notifications/ChangelogFeed.d.ts.map +1 -0
- package/dist/components/notifications/NotificationBell.d.ts +9 -0
- package/dist/components/notifications/NotificationBell.d.ts.map +1 -0
- package/dist/components/notifications/NotificationInbox.d.ts +13 -0
- package/dist/components/notifications/NotificationInbox.d.ts.map +1 -0
- package/dist/components/notifications/ToastProvider.d.ts +2 -0
- package/dist/components/notifications/ToastProvider.d.ts.map +1 -0
- package/dist/components/notifications/index.d.ts +5 -0
- package/dist/components/notifications/index.d.ts.map +1 -0
- package/dist/components/organization/InviteMemberDialog.d.ts +10 -0
- package/dist/components/organization/InviteMemberDialog.d.ts.map +1 -0
- package/dist/components/organization/OrgInitializer.d.ts +7 -0
- package/dist/components/organization/OrgInitializer.d.ts.map +1 -0
- package/dist/components/organization/OrgSwitcher.d.ts +7 -0
- package/dist/components/organization/OrgSwitcher.d.ts.map +1 -0
- package/dist/components/organization/PermissionMatrixEditor.d.ts +22 -0
- package/dist/components/organization/PermissionMatrixEditor.d.ts.map +1 -0
- package/dist/components/organization/PermissionProfilesTab.d.ts +3 -0
- package/dist/components/organization/PermissionProfilesTab.d.ts.map +1 -0
- package/dist/components/organization/TeamTab.d.ts +3 -0
- package/dist/components/organization/TeamTab.d.ts.map +1 -0
- package/dist/components/organization/TenantOnboarding.d.ts +9 -0
- package/dist/components/organization/TenantOnboarding.d.ts.map +1 -0
- package/dist/components/organization/index.d.ts +7 -0
- package/dist/components/organization/index.d.ts.map +1 -0
- package/dist/components/plugins/ConnectorsHub.d.ts +5 -0
- package/dist/components/plugins/ConnectorsHub.d.ts.map +1 -0
- package/dist/components/plugins/PluginSettingsPanel.d.ts +28 -0
- package/dist/components/plugins/PluginSettingsPanel.d.ts.map +1 -0
- package/dist/components/right-rail.d.ts +58 -0
- package/dist/components/right-rail.d.ts.map +1 -0
- package/dist/components/settings/BrandingSettings.d.ts +12 -0
- package/dist/components/settings/BrandingSettings.d.ts.map +1 -0
- package/dist/components/settings/CompanySettings.d.ts +13 -0
- package/dist/components/settings/CompanySettings.d.ts.map +1 -0
- package/dist/components/settings/ConnectedBrandingSettings.d.ts +2 -0
- package/dist/components/settings/ConnectedBrandingSettings.d.ts.map +1 -0
- package/dist/components/settings/ConnectedCompanySettings.d.ts +2 -0
- package/dist/components/settings/ConnectedCompanySettings.d.ts.map +1 -0
- package/dist/components/settings/ConnectedFieldRulesSettings.d.ts +2 -0
- package/dist/components/settings/ConnectedFieldRulesSettings.d.ts.map +1 -0
- package/dist/components/settings/ConnectedSecuritySettings.d.ts +2 -0
- package/dist/components/settings/ConnectedSecuritySettings.d.ts.map +1 -0
- package/dist/components/settings/ConnectedUserProfile.d.ts +3 -0
- package/dist/components/settings/ConnectedUserProfile.d.ts.map +1 -0
- package/dist/components/settings/FieldRulesSettings.d.ts +11 -0
- package/dist/components/settings/FieldRulesSettings.d.ts.map +1 -0
- package/dist/components/settings/HolidaysSettings.d.ts +21 -0
- package/dist/components/settings/HolidaysSettings.d.ts.map +1 -0
- package/dist/components/settings/LocationsCrudPage.d.ts +6 -0
- package/dist/components/settings/LocationsCrudPage.d.ts.map +1 -0
- package/dist/components/settings/LocationsOverview.d.ts +19 -0
- package/dist/components/settings/LocationsOverview.d.ts.map +1 -0
- package/dist/components/settings/SecuritySettings.d.ts +17 -0
- package/dist/components/settings/SecuritySettings.d.ts.map +1 -0
- package/dist/components/settings/SettingsPage.d.ts +46 -0
- package/dist/components/settings/SettingsPage.d.ts.map +1 -0
- package/dist/components/settings/UserProfile.d.ts +12 -0
- package/dist/components/settings/UserProfile.d.ts.map +1 -0
- package/dist/components/settings/index.d.ts +11 -0
- package/dist/components/settings/index.d.ts.map +1 -0
- package/dist/components/shared/ContactPicker.d.ts +92 -0
- package/dist/components/shared/ContactPicker.d.ts.map +1 -0
- package/dist/components/shared/PersonLink.d.ts +29 -0
- package/dist/components/shared/PersonLink.d.ts.map +1 -0
- package/dist/components/shared/create-person.d.ts +20 -0
- package/dist/components/shared/create-person.d.ts.map +1 -0
- package/dist/crud/CrudCardGrid.d.ts +13 -0
- package/dist/crud/CrudCardGrid.d.ts.map +1 -0
- package/dist/crud/CrudDetailPage.d.ts +23 -0
- package/dist/crud/CrudDetailPage.d.ts.map +1 -0
- package/dist/crud/CrudFormPage.d.ts +18 -0
- package/dist/crud/CrudFormPage.d.ts.map +1 -0
- package/dist/crud/CrudListView.d.ts +92 -0
- package/dist/crud/CrudListView.d.ts.map +1 -0
- package/dist/crud/CrudPage.d.ts +27 -0
- package/dist/crud/CrudPage.d.ts.map +1 -0
- package/dist/crud/CrudSkeletons.d.ts +21 -0
- package/dist/crud/CrudSkeletons.d.ts.map +1 -0
- package/dist/crud/DeleteConfirmDialog.d.ts +11 -0
- package/dist/crud/DeleteConfirmDialog.d.ts.map +1 -0
- package/dist/crud/EntityOverview.d.ts +14 -0
- package/dist/crud/EntityOverview.d.ts.map +1 -0
- package/dist/crud/ImportWizard.d.ts +18 -0
- package/dist/crud/ImportWizard.d.ts.map +1 -0
- package/dist/crud/archetype-lookup.d.ts +30 -0
- package/dist/crud/archetype-lookup.d.ts.map +1 -0
- package/dist/crud/archetypes/ActiveToggle.d.ts +8 -0
- package/dist/crud/archetypes/ActiveToggle.d.ts.map +1 -0
- package/dist/crud/archetypes/AddressesTab.d.ts +21 -0
- package/dist/crud/archetypes/AddressesTab.d.ts.map +1 -0
- package/dist/crud/archetypes/ArchetypeStatusBar.d.ts +11 -0
- package/dist/crud/archetypes/ArchetypeStatusBar.d.ts.map +1 -0
- package/dist/crud/archetypes/BlockSettingsPopover.d.ts +15 -0
- package/dist/crud/archetypes/BlockSettingsPopover.d.ts.map +1 -0
- package/dist/crud/archetypes/ClientOrdersTab.d.ts +18 -0
- package/dist/crud/archetypes/ClientOrdersTab.d.ts.map +1 -0
- package/dist/crud/archetypes/EntityLink.d.ts +32 -0
- package/dist/crud/archetypes/EntityLink.d.ts.map +1 -0
- package/dist/crud/archetypes/LocationDetailTabs.d.ts +11 -0
- package/dist/crud/archetypes/LocationDetailTabs.d.ts.map +1 -0
- package/dist/crud/archetypes/LocationFormLayout.d.ts +12 -0
- package/dist/crud/archetypes/LocationFormLayout.d.ts.map +1 -0
- package/dist/crud/archetypes/OrderDetailView.d.ts +115 -0
- package/dist/crud/archetypes/OrderDetailView.d.ts.map +1 -0
- package/dist/crud/archetypes/OrderFormView.d.ts +112 -0
- package/dist/crud/archetypes/OrderFormView.d.ts.map +1 -0
- package/dist/crud/archetypes/OrderListView.d.ts +36 -0
- package/dist/crud/archetypes/OrderListView.d.ts.map +1 -0
- package/dist/crud/archetypes/PersonDetailTabs.d.ts +35 -0
- package/dist/crud/archetypes/PersonDetailTabs.d.ts.map +1 -0
- package/dist/crud/archetypes/PersonFormLayout.d.ts +13 -0
- package/dist/crud/archetypes/PersonFormLayout.d.ts.map +1 -0
- package/dist/crud/archetypes/PersonPicker.d.ts +23 -0
- package/dist/crud/archetypes/PersonPicker.d.ts.map +1 -0
- package/dist/crud/archetypes/ProductDetailTabs.d.ts +11 -0
- package/dist/crud/archetypes/ProductDetailTabs.d.ts.map +1 -0
- package/dist/crud/archetypes/ProductFormLayout.d.ts +12 -0
- package/dist/crud/archetypes/ProductFormLayout.d.ts.map +1 -0
- package/dist/crud/archetypes/ScheduleEditor.d.ts +7 -0
- package/dist/crud/archetypes/ScheduleEditor.d.ts.map +1 -0
- package/dist/crud/archetypes/ServiceDetailTabs.d.ts +10 -0
- package/dist/crud/archetypes/ServiceDetailTabs.d.ts.map +1 -0
- package/dist/crud/archetypes/ServiceFormLayout.d.ts +12 -0
- package/dist/crud/archetypes/ServiceFormLayout.d.ts.map +1 -0
- package/dist/crud/archetypes/SubjectDetailTabs.d.ts +12 -0
- package/dist/crud/archetypes/SubjectDetailTabs.d.ts.map +1 -0
- package/dist/crud/archetypes/SubjectFormLayout.d.ts +14 -0
- package/dist/crud/archetypes/SubjectFormLayout.d.ts.map +1 -0
- package/dist/crud/createCrudPage.d.ts +34 -0
- package/dist/crud/createCrudPage.d.ts.map +1 -0
- package/dist/crud/csv-export.d.ts +3 -0
- package/dist/crud/csv-export.d.ts.map +1 -0
- package/dist/crud/fieldToColumn.d.ts +14 -0
- package/dist/crud/fieldToColumn.d.ts.map +1 -0
- package/dist/crud/index.d.ts +16 -0
- package/dist/crud/index.d.ts.map +1 -0
- package/dist/crud/placeholder.d.ts +7 -0
- package/dist/crud/placeholder.d.ts.map +1 -0
- package/dist/crud/relation-field.d.ts +28 -0
- package/dist/crud/relation-field.d.ts.map +1 -0
- package/dist/data/client.d.ts +14 -0
- package/dist/data/client.d.ts.map +1 -0
- package/dist/db.cjs +14 -0
- package/dist/db.cjs.map +1 -0
- package/dist/db.d.ts +2 -0
- package/dist/db.d.ts.map +1 -0
- package/dist/db.js +3 -0
- package/dist/db.js.map +1 -0
- package/dist/hooks/index.d.ts +20 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/useAITools.d.ts +23 -0
- package/dist/hooks/useAITools.d.ts.map +1 -0
- package/dist/hooks/useAgentSurface.d.ts +15 -0
- package/dist/hooks/useAgentSurface.d.ts.map +1 -0
- package/dist/hooks/useAuth.d.ts +16 -0
- package/dist/hooks/useAuth.d.ts.map +1 -0
- package/dist/hooks/useChat.d.ts +38 -0
- package/dist/hooks/useChat.d.ts.map +1 -0
- package/dist/hooks/useDictation.d.ts +31 -0
- package/dist/hooks/useDictation.d.ts.map +1 -0
- package/dist/hooks/useFieldRules.d.ts +6 -0
- package/dist/hooks/useFieldRules.d.ts.map +1 -0
- package/dist/hooks/useFormatters.d.ts +7 -0
- package/dist/hooks/useFormatters.d.ts.map +1 -0
- package/dist/hooks/useGlobalSearch.d.ts +10 -0
- package/dist/hooks/useGlobalSearch.d.ts.map +1 -0
- package/dist/hooks/useLayout.d.ts +16 -0
- package/dist/hooks/useLayout.d.ts.map +1 -0
- package/dist/hooks/useMicLevels.d.ts +10 -0
- package/dist/hooks/useMicLevels.d.ts.map +1 -0
- package/dist/hooks/useModuleNavigation.d.ts +27 -0
- package/dist/hooks/useModuleNavigation.d.ts.map +1 -0
- package/dist/hooks/useNotifications.d.ts +11 -0
- package/dist/hooks/useNotifications.d.ts.map +1 -0
- package/dist/hooks/usePluginPrefs.d.ts +23 -0
- package/dist/hooks/usePluginPrefs.d.ts.map +1 -0
- package/dist/hooks/usePlugins.d.ts +5 -0
- package/dist/hooks/usePlugins.d.ts.map +1 -0
- package/dist/hooks/useSystemPermission.d.ts +3 -0
- package/dist/hooks/useSystemPermission.d.ts.map +1 -0
- package/dist/hooks/useTenant.d.ts +23 -0
- package/dist/hooks/useTenant.d.ts.map +1 -0
- package/dist/hooks/useTenantPluginSettings.d.ts +12 -0
- package/dist/hooks/useTenantPluginSettings.d.ts.map +1 -0
- package/dist/hooks/useTenantPlugins.d.ts +10 -0
- package/dist/hooks/useTenantPlugins.d.ts.map +1 -0
- package/dist/hooks/useTranslation.d.ts +5 -0
- package/dist/hooks/useTranslation.d.ts.map +1 -0
- package/dist/index.d.ts +93 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17207 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/agent-approvals.d.ts +27 -0
- package/dist/lib/agent-approvals.d.ts.map +1 -0
- package/dist/lib/agent-surface.d.ts +78 -0
- package/dist/lib/agent-surface.d.ts.map +1 -0
- package/dist/lib/ai-tool-handlers.d.ts +154 -0
- package/dist/lib/ai-tool-handlers.d.ts.map +1 -0
- package/dist/lib/apply-field-rules.d.ts +4 -0
- package/dist/lib/apply-field-rules.d.ts.map +1 -0
- package/dist/lib/assistant-delegation.d.ts +5 -0
- package/dist/lib/assistant-delegation.d.ts.map +1 -0
- package/dist/lib/assistant-feature.d.ts +8 -0
- package/dist/lib/assistant-feature.d.ts.map +1 -0
- package/dist/lib/attachments.d.ts +95 -0
- package/dist/lib/attachments.d.ts.map +1 -0
- package/dist/lib/auth-context.d.ts +5 -0
- package/dist/lib/auth-context.d.ts.map +1 -0
- package/dist/lib/cache.d.ts +18 -0
- package/dist/lib/cache.d.ts.map +1 -0
- package/dist/lib/cn.d.ts +2 -0
- package/dist/lib/cn.d.ts.map +1 -0
- package/dist/lib/core-ai-tools.d.ts +49 -0
- package/dist/lib/core-ai-tools.d.ts.map +1 -0
- package/dist/lib/create-client-orders-provider.d.ts +3 -0
- package/dist/lib/create-client-orders-provider.d.ts.map +1 -0
- package/dist/lib/csv.d.ts +14 -0
- package/dist/lib/csv.d.ts.map +1 -0
- package/dist/lib/currency.d.ts +7 -0
- package/dist/lib/currency.d.ts.map +1 -0
- package/dist/lib/dedup.d.ts +2 -0
- package/dist/lib/dedup.d.ts.map +1 -0
- package/dist/lib/entity-registry.d.ts +19 -0
- package/dist/lib/entity-registry.d.ts.map +1 -0
- package/dist/lib/entity-routes.d.ts +48 -0
- package/dist/lib/entity-routes.d.ts.map +1 -0
- package/dist/lib/fayz-agent.d.ts +23 -0
- package/dist/lib/fayz-agent.d.ts.map +1 -0
- package/dist/lib/format.d.ts +7 -0
- package/dist/lib/format.d.ts.map +1 -0
- package/dist/lib/locale-config.d.ts +8 -0
- package/dist/lib/locale-config.d.ts.map +1 -0
- package/dist/lib/notes-tasks-bridge.d.ts +28 -0
- package/dist/lib/notes-tasks-bridge.d.ts.map +1 -0
- package/dist/lib/org-context.d.ts +5 -0
- package/dist/lib/org-context.d.ts.map +1 -0
- package/dist/lib/plugins.d.ts +2 -0
- package/dist/lib/plugins.d.ts.map +1 -0
- package/dist/lib/record-refs.d.ts +31 -0
- package/dist/lib/record-refs.d.ts.map +1 -0
- package/dist/lib/router.d.ts +15 -0
- package/dist/lib/router.d.ts.map +1 -0
- package/dist/lib/schedule-config.d.ts +32 -0
- package/dist/lib/schedule-config.d.ts.map +1 -0
- package/dist/lib/schedule-service.d.ts +76 -0
- package/dist/lib/schedule-service.d.ts.map +1 -0
- package/dist/lib/search-targets.d.ts +12 -0
- package/dist/lib/search-targets.d.ts.map +1 -0
- package/dist/lib/speech.d.ts +36 -0
- package/dist/lib/speech.d.ts.map +1 -0
- package/dist/lib/supabase.d.ts +10 -0
- package/dist/lib/supabase.d.ts.map +1 -0
- package/dist/org/adapters/mock.d.ts +4 -0
- package/dist/org/adapters/mock.d.ts.map +1 -0
- package/dist/org/adapters/supabase.d.ts +33 -0
- package/dist/org/adapters/supabase.d.ts.map +1 -0
- package/dist/org/cache.d.ts +29 -0
- package/dist/org/cache.d.ts.map +1 -0
- package/dist/org/context.d.ts +36 -0
- package/dist/org/context.d.ts.map +1 -0
- package/dist/org/index.d.ts +10 -0
- package/dist/org/index.d.ts.map +1 -0
- package/dist/org/index.js +5 -0
- package/dist/org/index.js.map +1 -0
- package/dist/org/store.d.ts +20 -0
- package/dist/org/store.d.ts.map +1 -0
- package/dist/org/team-rows.d.ts +45 -0
- package/dist/org/team-rows.d.ts.map +1 -0
- package/dist/permissions/PermissionGate.d.ts +12 -0
- package/dist/permissions/PermissionGate.d.ts.map +1 -0
- package/dist/permissions/context.d.ts +39 -0
- package/dist/permissions/context.d.ts.map +1 -0
- package/dist/permissions/index.d.ts +5 -0
- package/dist/permissions/index.d.ts.map +1 -0
- package/dist/permissions/index.js +3 -0
- package/dist/permissions/index.js.map +1 -0
- package/dist/permissions/roles.d.ts +7 -0
- package/dist/permissions/roles.d.ts.map +1 -0
- package/dist/permissions/store.d.ts +21 -0
- package/dist/permissions/store.d.ts.map +1 -0
- package/dist/plugins/ModuleActionBar.d.ts +27 -0
- package/dist/plugins/ModuleActionBar.d.ts.map +1 -0
- package/dist/plugins/PluginRegistryManager.d.ts +13 -0
- package/dist/plugins/PluginRegistryManager.d.ts.map +1 -0
- package/dist/plugins/QuickActionsButton.d.ts +12 -0
- package/dist/plugins/QuickActionsButton.d.ts.map +1 -0
- package/dist/plugins/SettingsGroup.d.ts +25 -0
- package/dist/plugins/SettingsGroup.d.ts.map +1 -0
- package/dist/plugins/WidgetSlot.d.ts +8 -0
- package/dist/plugins/WidgetSlot.d.ts.map +1 -0
- package/dist/plugins/createPluginContext.d.ts +28 -0
- package/dist/plugins/createPluginContext.d.ts.map +1 -0
- package/dist/plugins/createViewRouter.d.ts +38 -0
- package/dist/plugins/createViewRouter.d.ts.map +1 -0
- package/dist/projects/ProjectsSettings.d.ts +3 -0
- package/dist/projects/ProjectsSettings.d.ts.map +1 -0
- package/dist/projects/SeuSiteWidget.d.ts +7 -0
- package/dist/projects/SeuSiteWidget.d.ts.map +1 -0
- package/dist/projects/provider.d.ts +8 -0
- package/dist/projects/provider.d.ts.map +1 -0
- package/dist/projects/store.d.ts +16 -0
- package/dist/projects/store.d.ts.map +1 -0
- package/dist/projects/types.d.ts +46 -0
- package/dist/projects/types.d.ts.map +1 -0
- package/dist/stores/auth.store.d.ts +12 -0
- package/dist/stores/auth.store.d.ts.map +1 -0
- package/dist/stores/billing.store.d.ts +2 -0
- package/dist/stores/billing.store.d.ts.map +1 -0
- package/dist/stores/chat.store.d.ts +208 -0
- package/dist/stores/chat.store.d.ts.map +1 -0
- package/dist/stores/createCrudStore.d.ts +54 -0
- package/dist/stores/createCrudStore.d.ts.map +1 -0
- package/dist/stores/index.d.ts +13 -0
- package/dist/stores/index.d.ts.map +1 -0
- package/dist/stores/invite.store.d.ts +11 -0
- package/dist/stores/invite.store.d.ts.map +1 -0
- package/dist/stores/layout.store.d.ts +2 -0
- package/dist/stores/layout.store.d.ts.map +1 -0
- package/dist/stores/locale.store.d.ts +17 -0
- package/dist/stores/locale.store.d.ts.map +1 -0
- package/dist/stores/location.store.d.ts +20 -0
- package/dist/stores/location.store.d.ts.map +1 -0
- package/dist/stores/notifications.store.d.ts +12 -0
- package/dist/stores/notifications.store.d.ts.map +1 -0
- package/dist/stores/organization.store.d.ts +2 -0
- package/dist/stores/organization.store.d.ts.map +1 -0
- package/dist/stores/permissions.store.d.ts +2 -0
- package/dist/stores/permissions.store.d.ts.map +1 -0
- package/dist/stores/plugin.store.d.ts +24 -0
- package/dist/stores/plugin.store.d.ts.map +1 -0
- package/dist/stores/tenant.store.d.ts +11 -0
- package/dist/stores/tenant.store.d.ts.map +1 -0
- package/dist/stores/theme.store.d.ts +17 -0
- package/dist/stores/theme.store.d.ts.map +1 -0
- package/dist/theme/dark.d.ts +3 -0
- package/dist/theme/dark.d.ts.map +1 -0
- package/dist/theme/index.d.ts +8 -0
- package/dist/theme/index.d.ts.map +1 -0
- package/dist/theme/light.d.ts +3 -0
- package/dist/theme/light.d.ts.map +1 -0
- package/dist/theme/tailwind-preset.d.ts +4 -0
- package/dist/theme/tailwind-preset.d.ts.map +1 -0
- package/dist/theme/tokens.d.ts +119 -0
- package/dist/theme/tokens.d.ts.map +1 -0
- package/dist/theme/utils.d.ts +31 -0
- package/dist/theme/utils.d.ts.map +1 -0
- package/dist/types/auth-adapter.d.ts +14 -0
- package/dist/types/auth-adapter.d.ts.map +1 -0
- package/dist/types/auth.d.ts +34 -0
- package/dist/types/auth.d.ts.map +1 -0
- package/dist/types/billing.d.ts +81 -0
- package/dist/types/billing.d.ts.map +1 -0
- package/dist/types/client-orders.d.ts +47 -0
- package/dist/types/client-orders.d.ts.map +1 -0
- package/dist/types/crud.d.ts +137 -0
- package/dist/types/crud.d.ts.map +1 -0
- package/dist/types/entities.d.ts +150 -0
- package/dist/types/entities.d.ts.map +1 -0
- package/dist/types/entity-lookup.d.ts +18 -0
- package/dist/types/entity-lookup.d.ts.map +1 -0
- package/dist/types/index.d.ts +17 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/integrations.d.ts +48 -0
- package/dist/types/integrations.d.ts.map +1 -0
- package/dist/types/invite.d.ts +23 -0
- package/dist/types/invite.d.ts.map +1 -0
- package/dist/types/layout.d.ts +26 -0
- package/dist/types/layout.d.ts.map +1 -0
- package/dist/types/notifications.d.ts +31 -0
- package/dist/types/notifications.d.ts.map +1 -0
- package/dist/types/org-adapter.d.ts +92 -0
- package/dist/types/org-adapter.d.ts.map +1 -0
- package/dist/types/permissions.d.ts +39 -0
- package/dist/types/permissions.d.ts.map +1 -0
- package/dist/types/platform.d.ts +25 -0
- package/dist/types/platform.d.ts.map +1 -0
- package/dist/types/plugins.d.ts +269 -0
- package/dist/types/plugins.d.ts.map +1 -0
- package/dist/types/tenant.d.ts +74 -0
- package/dist/types/tenant.d.ts.map +1 -0
- package/dist/ui.d.ts +2 -0
- package/dist/ui.d.ts.map +1 -0
- package/dist/ui.js +3 -0
- package/dist/ui.js.map +1 -0
- package/package.json +94 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"admin-app.d.ts","sourceRoot":"","sources":["../../src/app/admin-app.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAU9B,OAAO,EAGL,KAAK,UAAU,EAGf,KAAK,eAAe,EACrB,MAAM,sBAAsB,CAAA;AAyB7B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAyC7C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG;IAC9D,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC3B,WAAW,CAAC,EAAE,UAAU,CAAA;IACxB,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAA;IACpC,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,cAAc,CAAC,EAAE,OAAO,CAAC,OAAO,eAAe,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,CAAA;CAC1E,CA0BA;AAqMD,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,qBAyGxG;yBAzGe,cAAc;;;AAqH9B,wBAAgB,aAAa,CAAC,MAAM,EAAE,aAAa,GAAG,KAAK,CAAC,aAAa,CA6BxE"}
|
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
import type { ComponentType, ReactNode } from 'react';
|
|
2
|
+
import type { AuthProvider, OrgAdapter, PluginManifest, ThemeMode, LocaleConfig, PermissionsConfig, LimitDeclaration, AgentDomainKnowledge, AgentRpcDeclaration, EntityDef } from '@fayz-ai/core';
|
|
3
|
+
import type { AuthPluginOptions, ResolvedAuthPlugin, LoginAmbassador } from '@fayz-ai/plugin-auth';
|
|
4
|
+
import type { BottomNavItem, MobileHeaderVariant } from '@fayz-ai/ui';
|
|
5
|
+
import type { SaasTheme } from '../theme/tokens';
|
|
6
|
+
import type { CreateThemeOptions } from '../theme/utils';
|
|
7
|
+
import type { PlanConfig } from '../types/billing';
|
|
8
|
+
import type { FayzAgentConnectionConfig } from '../lib/fayz-agent';
|
|
9
|
+
export type PageSection = 'main' | 'secondary' | 'settings';
|
|
10
|
+
export interface CustomPage {
|
|
11
|
+
/** Route path, e.g. '/reports' */
|
|
12
|
+
path: string;
|
|
13
|
+
/** Display label in navigation */
|
|
14
|
+
label?: string;
|
|
15
|
+
/** Lucide icon name or any string identifier */
|
|
16
|
+
icon?: string;
|
|
17
|
+
component?: ComponentType;
|
|
18
|
+
section?: PageSection;
|
|
19
|
+
position?: number;
|
|
20
|
+
badge?: string | number;
|
|
21
|
+
/** Sales-channel / external link. When set, this entry opens the URL in a new
|
|
22
|
+
* tab instead of routing to `component`; no internal route is registered. */
|
|
23
|
+
href?: string;
|
|
24
|
+
permission?: {
|
|
25
|
+
feature: string;
|
|
26
|
+
action: 'read' | 'create' | 'edit' | 'delete';
|
|
27
|
+
};
|
|
28
|
+
/** Show this page in the sidebar/topbar navigation. Default: true. Set `false`
|
|
29
|
+
* for mobile-only pages reachable via bottomNav/avatar (e.g. a "Mais" overflow
|
|
30
|
+
* hub or a "Perfil" avatar target): the route still works, but the entry is
|
|
31
|
+
* hidden from desktop navigation where those mobile constructs are meaningless. */
|
|
32
|
+
nav?: boolean;
|
|
33
|
+
children?: CustomPage[];
|
|
34
|
+
}
|
|
35
|
+
/** A statically-declared fayz site for an app (see FayzAppConfig.site). Used as
|
|
36
|
+
* the "Seu site" widget's fallback when the tenant has no DB project. */
|
|
37
|
+
export interface AppSiteConfig {
|
|
38
|
+
name: string;
|
|
39
|
+
/**
|
|
40
|
+
* Heading above the widget in the sidebar footer. Defaults to "Seu site" —
|
|
41
|
+
* override it when the app's word for the thing isn't "site" ("Sua loja" for
|
|
42
|
+
* a store admin, "Seu portal", …).
|
|
43
|
+
*/
|
|
44
|
+
label?: string;
|
|
45
|
+
/** Live/preview site URL (the "Abrir" action). */
|
|
46
|
+
previewUrl?: string;
|
|
47
|
+
/** Explicit editor URL; otherwise derived from fayzProjectId (fayz.ai/editor/{id}). */
|
|
48
|
+
editorUrl?: string;
|
|
49
|
+
/** Platform project id — used to derive the editor URL. */
|
|
50
|
+
fayzProjectId?: string;
|
|
51
|
+
kind?: 'site' | 'storefront' | 'landing_page' | 'other';
|
|
52
|
+
/**
|
|
53
|
+
* In-app route the "Editar" action navigates to INSTEAD of opening the
|
|
54
|
+
* external fayz editor. For apps that own their storefront screen (theme,
|
|
55
|
+
* channels, domain) inside the admin: sending a merchant out to a separate
|
|
56
|
+
* editor to change their own store is a context switch they didn't ask for.
|
|
57
|
+
* Takes precedence over `editorUrl` / `fayzProjectId`.
|
|
58
|
+
*/
|
|
59
|
+
editRoute?: string;
|
|
60
|
+
}
|
|
61
|
+
export interface AuthConfig {
|
|
62
|
+
/** 'supabase' | 'mock' or bring your own AuthAdapter */
|
|
63
|
+
adapter?: AuthPluginOptions['adapter'];
|
|
64
|
+
/** New plugin-auth provider selector. Existing apps may keep using adapter. */
|
|
65
|
+
provider?: AuthPluginOptions['provider'];
|
|
66
|
+
/** Redirect to login when no session is found (default: true) */
|
|
67
|
+
requireAuth?: boolean;
|
|
68
|
+
/** New plugin-auth route and provider options. */
|
|
69
|
+
routes?: AuthPluginOptions['routes'];
|
|
70
|
+
supabase?: AuthPluginOptions['supabase'];
|
|
71
|
+
oauth?: AuthPluginOptions['oauth'];
|
|
72
|
+
layout?: AuthPluginOptions['layout'];
|
|
73
|
+
logo?: ReactNode;
|
|
74
|
+
tagline?: string;
|
|
75
|
+
description?: string;
|
|
76
|
+
loginLogo?: ReactNode;
|
|
77
|
+
loginLayout?: 'split' | 'centered';
|
|
78
|
+
loginTagline?: string;
|
|
79
|
+
loginDescription?: string;
|
|
80
|
+
/** Product ambassadors shown as a small social-proof avatar strip above the
|
|
81
|
+
* tagline on the split-login brand panel. Each needs a local `image` path;
|
|
82
|
+
* degrades to nothing when omitted. */
|
|
83
|
+
loginAmbassadors?: LoginAmbassador[];
|
|
84
|
+
/** Optional microtext beside the ambassador strip, e.g. "+2 mil profissionais". */
|
|
85
|
+
loginAmbassadorsLabel?: string;
|
|
86
|
+
showOAuth?: boolean;
|
|
87
|
+
oauthProviders?: Exclude<AuthProvider, 'email'>[];
|
|
88
|
+
}
|
|
89
|
+
export type AppAuthConfig = AuthConfig | ResolvedAuthPlugin;
|
|
90
|
+
export interface OrgConfig {
|
|
91
|
+
/** 'supabase' | 'mock' or bring your own OrgAdapter */
|
|
92
|
+
adapter?: 'supabase' | 'mock' | OrgAdapter;
|
|
93
|
+
/** Support multiple orgs per user (default: true) */
|
|
94
|
+
multiOrg?: boolean;
|
|
95
|
+
/** Auto-create an org when the user has none (default: true) */
|
|
96
|
+
autoCreate?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* How long the org bootstrap (org + memberships + members + roles) is served
|
|
99
|
+
* from cache before the provider goes back to the network. Default 5 min;
|
|
100
|
+
* `0` fetches on every load.
|
|
101
|
+
*/
|
|
102
|
+
cacheTtlMs?: number;
|
|
103
|
+
}
|
|
104
|
+
export interface TeamConfig {
|
|
105
|
+
/**
|
|
106
|
+
* Which person `kind`s make up the "team" (shown on /settings/team).
|
|
107
|
+
* Person-first model: the Team screen is driven by people of these kinds;
|
|
108
|
+
* `tenant_members` (login + role) is an optional access overlay per person.
|
|
109
|
+
* e.g. beauty-saas: ['staff'] · school-saas: ['teacher', 'staff'].
|
|
110
|
+
* When empty/undefined, the Team screen falls back to membership-only (legacy).
|
|
111
|
+
*/
|
|
112
|
+
personKinds?: string[];
|
|
113
|
+
}
|
|
114
|
+
export interface ChatConfig {
|
|
115
|
+
enabled?: boolean;
|
|
116
|
+
title?: string;
|
|
117
|
+
/** `'dock'` (default) mounts the assistant in the shell's right rail.
|
|
118
|
+
* `'none'` mounts no surface — the engine stays available to the app. */
|
|
119
|
+
surface?: 'dock' | 'none';
|
|
120
|
+
/** Extra guidance appended to the agent's own instructions. */
|
|
121
|
+
systemPrompt?: string;
|
|
122
|
+
/**
|
|
123
|
+
* Bring-your-own chat backend. Leave unset to use the Fayz agent configured
|
|
124
|
+
* for this project — the container injects the connection env, so no key or
|
|
125
|
+
* URL needs to live in app config.
|
|
126
|
+
*/
|
|
127
|
+
apiEndpoint?: string;
|
|
128
|
+
/**
|
|
129
|
+
* Overrides for the Fayz agent connection, for apps built outside a Fayz
|
|
130
|
+
* container. `false` opts out of the Fayz agent entirely.
|
|
131
|
+
*/
|
|
132
|
+
agent?: FayzAgentConnectionConfig | false;
|
|
133
|
+
/** Speaking and listening. Sensible defaults; no config needed to get a mic. */
|
|
134
|
+
voice?: ChatVoiceConfig;
|
|
135
|
+
/**
|
|
136
|
+
* "Continuar no WhatsApp" — a discreet hand-off under the composer that
|
|
137
|
+
* opens wa.me with a prefilled message. Set the business number (digits,
|
|
138
|
+
* with country code) to enable; omit to hide.
|
|
139
|
+
*/
|
|
140
|
+
whatsapp?: {
|
|
141
|
+
number: string;
|
|
142
|
+
message?: string;
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
export interface ChatVoiceConfig {
|
|
146
|
+
/** `false` hides the microphone entirely. */
|
|
147
|
+
input?: boolean;
|
|
148
|
+
/** Recognition language (BCP-47). Defaults to the browser's. */
|
|
149
|
+
locale?: string;
|
|
150
|
+
/**
|
|
151
|
+
* Endpoint that takes an audio clip (multipart `file`) and answers
|
|
152
|
+
* `{ text }`. This is the seam for Whisper or any other STT service — set it
|
|
153
|
+
* and the mic stops using the browser's recognizer. Left unset (the default)
|
|
154
|
+
* the assistant listens with the browser's own engine: no key, no backend.
|
|
155
|
+
*/
|
|
156
|
+
transcribeEndpoint?: string;
|
|
157
|
+
/** Send the transcript without review. Default false — dictation fills the
|
|
158
|
+
* composer and the user presses send. */
|
|
159
|
+
autoSend?: boolean;
|
|
160
|
+
/** Offer the spoken-replies toggle (default `true`). */
|
|
161
|
+
replies?: boolean;
|
|
162
|
+
/** Start with spoken replies ON. Off by default — a back-office app that
|
|
163
|
+
* starts talking on its own is a support ticket, not a feature. */
|
|
164
|
+
repliesDefaultOn?: boolean;
|
|
165
|
+
}
|
|
166
|
+
export interface FayzBillingConfig {
|
|
167
|
+
plans: PlanConfig[];
|
|
168
|
+
stripePublishableKey?: string;
|
|
169
|
+
portalUrl?: string;
|
|
170
|
+
/**
|
|
171
|
+
* Payment-gateway seam. When defined, the shell's Subscription page calls this
|
|
172
|
+
* with the target plan id INSTEAD of writing `plan` straight onto the org — this
|
|
173
|
+
* is where Stripe Checkout / Pix / Mercado Pago plug in (create the intent,
|
|
174
|
+
* redirect, let the webhook persist the plan). Left undefined, changing plan is
|
|
175
|
+
* an optimistic `adapter.updateOrg(orgId, { plan })`.
|
|
176
|
+
*/
|
|
177
|
+
onCheckout?: (planId: string) => Promise<void> | void;
|
|
178
|
+
/**
|
|
179
|
+
* App-level limit declarations layered on top of the plugins' `declaredLimits`
|
|
180
|
+
* (app wins on key collision). Use to add limits for app-local tables the
|
|
181
|
+
* plugins don't know about, or to re-point a key at a different table.
|
|
182
|
+
*/
|
|
183
|
+
limitDeclarations?: LimitDeclaration[];
|
|
184
|
+
}
|
|
185
|
+
export interface FayzAppConfig {
|
|
186
|
+
/** Application display name */
|
|
187
|
+
name: string;
|
|
188
|
+
logo?: string | ReactNode;
|
|
189
|
+
/**
|
|
190
|
+
* Icon-only mark, for square contexts (the connect/consent badge).
|
|
191
|
+
*
|
|
192
|
+
* `logo` is usually a wordmark, and a wordmark in a 48px square is cropped or
|
|
193
|
+
* illegible. Apps that have a standalone icon should pass it here; without
|
|
194
|
+
* it, those contexts fall back to the app's initial.
|
|
195
|
+
*/
|
|
196
|
+
markLogo?: ReactNode;
|
|
197
|
+
supabaseUrl?: string;
|
|
198
|
+
supabaseAnonKey?: string;
|
|
199
|
+
auth?: AppAuthConfig;
|
|
200
|
+
org?: OrgConfig;
|
|
201
|
+
team?: TeamConfig;
|
|
202
|
+
plugins?: PluginManifest[];
|
|
203
|
+
pages?: CustomPage[];
|
|
204
|
+
/** Components mounted once inside the authenticated shell, rendering nothing
|
|
205
|
+
* visible. Escape hatch for app-level behavior that must run while the shell
|
|
206
|
+
* is open — e.g. contributing runtime nav entries via `useNavContribution`
|
|
207
|
+
* (sales channels and other per-tenant, data-driven menu items the static
|
|
208
|
+
* plugin/pages config cannot express). Keeps such wiring out of the SDK: the
|
|
209
|
+
* shell just mounts them and resolves whatever they contribute. */
|
|
210
|
+
shellMounts?: ComponentType[];
|
|
211
|
+
/** Extra content rendered in the sidebar bottom region, directly above the
|
|
212
|
+
* user row (below the built-in "Seu site" project widget). Use for app-level
|
|
213
|
+
* footer affordances. */
|
|
214
|
+
sidebarFooter?: ReactNode;
|
|
215
|
+
/**
|
|
216
|
+
* Render nav-group children as bare labels with an elbow (↳) marking the
|
|
217
|
+
* active one, instead of an icon per child. An icon on every child makes a
|
|
218
|
+
* group read as a second flat menu; the elbow says "you are inside this one"
|
|
219
|
+
* with one mark. Off by default — it restyles every existing rail.
|
|
220
|
+
*/
|
|
221
|
+
navChildConnector?: boolean;
|
|
222
|
+
/** The app's own fayz site, shown by the "Seu site" widget when the tenant has
|
|
223
|
+
* no per-tenant project in the DB (mock/standalone apps with no supabase pool
|
|
224
|
+
* to seed). Ignored once real fayz_projects rows exist for the tenant. */
|
|
225
|
+
site?: AppSiteConfig;
|
|
226
|
+
theme?: CreateThemeOptions | SaasTheme;
|
|
227
|
+
defaultThemeMode?: ThemeMode;
|
|
228
|
+
/** Shell layout variant (default: 'sidebar') */
|
|
229
|
+
layout?: 'sidebar' | 'topbar' | 'minimal';
|
|
230
|
+
/** Mobile bottom tab bar. Rendered by AppShell on small screens (md:hidden)
|
|
231
|
+
* for every layout variant. Route items map a lucide icon name to a route; an
|
|
232
|
+
* `{ kind: 'action', id, icon }` item renders as a raised center button
|
|
233
|
+
* (Mobills style) that fires `onBottomNavAction(id)` instead of navigating. */
|
|
234
|
+
bottomNav?: BottomNavItem[];
|
|
235
|
+
/** Fired when a bottom-nav `action` item (e.g. the center "+") is tapped. */
|
|
236
|
+
onBottomNavAction?: (id: string) => void;
|
|
237
|
+
/** Mobile header treatment (<md), default 'minimal'. 'transparent' renders no
|
|
238
|
+
* header bar (edge-to-edge content) with a floating profile avatar top-right;
|
|
239
|
+
* 'hidden' renders neither. Desktop keeps its sidebar + user menu. */
|
|
240
|
+
mobileHeader?: MobileHeaderVariant;
|
|
241
|
+
/** Wrap the main content in an inset "framed" card (default: true). The
|
|
242
|
+
* sidebar itself is always flush/full-height. */
|
|
243
|
+
contentFrame?: boolean;
|
|
244
|
+
/** How module-internal navigation renders. Defaults to 'tabs' for the
|
|
245
|
+
* 'sidebar' layout and 'rail' for 'topbar'. 'sidebar' renders no sub-nav in
|
|
246
|
+
* the page — the shell's sidebar carries the module's views as children. */
|
|
247
|
+
moduleNav?: 'rail' | 'tabs' | 'sidebar';
|
|
248
|
+
/** Page navigation animation applied to all nested navigations (route + module
|
|
249
|
+
* view changes). Default: 'slide'. Set per repo/app for a different feel. */
|
|
250
|
+
navTransition?: 'slide' | 'fade' | 'none';
|
|
251
|
+
locale?: LocaleConfig;
|
|
252
|
+
/** Show org-level settings tabs (Equipe/Permissões/Localizações/Regras).
|
|
253
|
+
* Defaults to `Boolean(org)` for back-compat. B2C/personal apps that still
|
|
254
|
+
* need an org for the workspace can set `false` to hide these ERP tabs. */
|
|
255
|
+
orgSettings?: boolean;
|
|
256
|
+
/** Show the branding ("Identidade Visual") + company "Geral" settings tabs.
|
|
257
|
+
* Default: `true`. B2C apps set `false` to drop org-identity settings, leaving
|
|
258
|
+
* Perfil + Segurança + plugin settings only. */
|
|
259
|
+
branding?: boolean;
|
|
260
|
+
permissions?: PermissionsConfig;
|
|
261
|
+
billing?: FayzBillingConfig;
|
|
262
|
+
chat?: ChatConfig;
|
|
263
|
+
agentContract?: {
|
|
264
|
+
/** 'server' flips data tools to broker-side execution for this app. */
|
|
265
|
+
executionPlane?: 'client' | 'server';
|
|
266
|
+
knowledge?: AgentDomainKnowledge;
|
|
267
|
+
/** RPCs the app itself ships (vertical-specific, e.g. pricing quote). */
|
|
268
|
+
rpcs?: AgentRpcDeclaration[];
|
|
269
|
+
/** App-level read-models for the agent's data primitives (same contract
|
|
270
|
+
* as PluginManifest.queryEntities — stable ASCII keys). */
|
|
271
|
+
queryEntities?: Array<{
|
|
272
|
+
key: string;
|
|
273
|
+
entity: EntityDef;
|
|
274
|
+
}>;
|
|
275
|
+
};
|
|
276
|
+
}
|
|
277
|
+
//# sourceMappingURL=config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/app/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { EntityDef } from '@fayz-ai/core';
|
|
2
|
+
export interface CoreQueryEntity {
|
|
3
|
+
key: string;
|
|
4
|
+
entity: EntityDef;
|
|
5
|
+
writable?: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* How this entity attaches to another record — appended to the descriptions
|
|
8
|
+
* of the data primitives that can act on it. These entities do NOT stand
|
|
9
|
+
* alone, and nothing in a flat enum of ~37 keys conveys that.
|
|
10
|
+
*
|
|
11
|
+
* Both directions matter, and each fails differently without it. On WRITE the
|
|
12
|
+
* model reaches for `updateRecord` on the parent, is told the fields do not
|
|
13
|
+
* exist, and then gives up or buries the data in a free-text column. On READ
|
|
14
|
+
* it searches the parent, finds no address on it, and confidently answers
|
|
15
|
+
* "this contact has no address registered" — a falsehood, since the row is
|
|
16
|
+
* one filtered query away.
|
|
17
|
+
*
|
|
18
|
+
* Stated here rather than inferred at failure time on purpose: guessing the
|
|
19
|
+
* intended entity from rejected FIELD NAMES points "add an address to this
|
|
20
|
+
* contact" at the business-locations table, which declares the same columns.
|
|
21
|
+
*/
|
|
22
|
+
agentHint?: string;
|
|
23
|
+
}
|
|
24
|
+
export declare const CORE_QUERY_ENTITIES: CoreQueryEntity[];
|
|
25
|
+
//# sourceMappingURL=core-entities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-entities.d.ts","sourceRoot":"","sources":["../../src/app/core-entities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AA4E9C,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,SAAS,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB;;;;;;;;;;;;;;;OAeG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,mBAAmB,EAAE,eAAe,EAUhD,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { AgentContract, LimitDeclaration, RegisteredEntity } from '@fayz-ai/core';
|
|
2
|
+
import type { FayzAppConfig } from './config';
|
|
3
|
+
export interface DerivedAgentSections {
|
|
4
|
+
agent: AgentContract;
|
|
5
|
+
limitDeclarations: LimitDeclaration[];
|
|
6
|
+
}
|
|
7
|
+
export declare function deriveAgentContract(config: FayzAppConfig, entities?: RegisteredEntity[]): DerivedAgentSections;
|
|
8
|
+
//# sourceMappingURL=derive-contract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-contract.d.ts","sourceRoot":"","sources":["../../src/app/derive-contract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAKb,gBAAgB,EAGhB,gBAAgB,EACjB,MAAM,eAAe,CAAA;AAMtB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAkF7C,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,aAAa,CAAA;IACpB,iBAAiB,EAAE,gBAAgB,EAAE,CAAA;CACtC;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,aAAa,EACrB,QAAQ,GAAE,gBAAgB,EAAqB,GAC9C,oBAAoB,CA2GtB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { PluginNavigationEntry } from '@fayz-ai/core';
|
|
2
|
+
interface NavContributionsState {
|
|
3
|
+
contributions: Record<string, PluginNavigationEntry[]>;
|
|
4
|
+
setContribution: (id: string, entries: PluginNavigationEntry[]) => void;
|
|
5
|
+
clearContribution: (id: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare const useNavContributionsStore: import("zustand").UseBoundStore<import("zustand").StoreApi<NavContributionsState>>;
|
|
8
|
+
/**
|
|
9
|
+
* Contribute runtime nav entries under a stable `id`. Reactive: whenever
|
|
10
|
+
* `entries` changes the shell rebuilds the sidebar. Entries participate in the
|
|
11
|
+
* same route-prefix nesting as plugin/page nav — so children whose route is a
|
|
12
|
+
* sub-path of an existing entry (e.g. `/channels/…` under a static `/channels`)
|
|
13
|
+
* nest under it automatically. Contribution is cleared on unmount.
|
|
14
|
+
*/
|
|
15
|
+
export declare function useNavContribution(id: string, entries: PluginNavigationEntry[]): void;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=nav-contributions.store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nav-contributions.store.d.ts","sourceRoot":"","sources":["../../src/app/nav-contributions.store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAiB1D,UAAU,qBAAqB;IAC7B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAA;IACtD,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,KAAK,IAAI,CAAA;IACvE,iBAAiB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,eAAO,MAAM,wBAAwB,oFAWlC,CAAA;AAEH;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,EAAE,GAAG,IAAI,CAWrF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function normalizeAdminPath(path: string): string;
|
|
2
|
+
export declare function navigateTo(to: string): void;
|
|
3
|
+
export declare function useAdminPath(): string;
|
|
4
|
+
/** Match '/courses/:id' against '/courses/abc' → { id: 'abc' }; supports a
|
|
5
|
+
* trailing '/*' wildcard (matches the base and any deeper path). */
|
|
6
|
+
export declare function matchRoute(pattern: string, path: string): Record<string, string> | null;
|
|
7
|
+
/** Score a route pattern for specificity so the most specific match wins
|
|
8
|
+
* (static segments beat params; longer beats shorter; wildcard loses). */
|
|
9
|
+
export declare function routeScore(pattern: string): number;
|
|
10
|
+
//# sourceMappingURL=routing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../src/app/routing.tsx"],"names":[],"mappings":"AAYA,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGvD;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED,wBAAgB,YAAY,IAAI,MAAM,CASrC;AAED;qEACqE;AACrE,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAkBvF;AAED;2EAC2E;AAC3E,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQlD"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import type { AppManifest } from '@fayz-ai/core';
|
|
3
|
+
import type { FayzAppConfig } from './config';
|
|
4
|
+
/** Fayz/Saas config → AppManifest (sugar → data). During the Beauty/Resto
|
|
5
|
+
* migration, config-authored apps keep a live config ref so renderApp can
|
|
6
|
+
* preserve code-backed plugins and custom pages while the JSON manifest path
|
|
7
|
+
* matures. Serialized manifests still resolve through plugin/page registries. */
|
|
8
|
+
export declare function defineSaas(config: FayzAppConfig): AppManifest;
|
|
9
|
+
export declare function AdminScaffold({ manifest, surface }: {
|
|
10
|
+
manifest: AppManifest;
|
|
11
|
+
surface: string;
|
|
12
|
+
}): React.JSX.Element;
|
|
13
|
+
export declare namespace AdminScaffold {
|
|
14
|
+
var displayName: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function registerAdminScaffold(): void;
|
|
17
|
+
//# sourceMappingURL=scaffold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/app/scaffold.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAO9B,OAAO,KAAK,EACV,WAAW,EAKZ,MAAM,eAAe,CAAA;AAItB,OAAO,KAAK,EAAE,aAAa,EAAc,MAAM,UAAU,CAAA;AA2BzD;;;iFAGiF;AACjF,wBAAgB,UAAU,CAAC,MAAM,EAAE,aAAa,GAAG,WAAW,CA6B7D;AA6DD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE;IAAE,QAAQ,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,qBAkC9F;yBAlCe,aAAa;;;AAwC7B,wBAAgB,qBAAqB,IAAI,IAAI,CAI5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/billing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AACzC,YAAY,EACV,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,OAAO,GACR,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAC/C,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Plan } from '@fayz-ai/core';
|
|
2
|
+
export interface PlanBadgeInfo {
|
|
3
|
+
/** Display label, e.g. 'Free' or 'Pro'. */
|
|
4
|
+
label: string;
|
|
5
|
+
/** Resolved plan id (falls back to the raw org.plan string). */
|
|
6
|
+
planId: string;
|
|
7
|
+
/** Paid plan (price > 0) — drives the Crown icon + gold styling in the menus. */
|
|
8
|
+
paid: boolean;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Resolve an org's `plan` string against the configured billing plans into the
|
|
12
|
+
* badge shown next to the user in both menus. Falls back to a capitalized
|
|
13
|
+
* version of the raw string when the id isn't in config (defensive — e.g. a
|
|
14
|
+
* legacy 'free' tenant before billing was wired).
|
|
15
|
+
*/
|
|
16
|
+
export declare function resolvePlanBadge(planId: string | undefined | null, plans: Plan[]): PlanBadgeInfo;
|
|
17
|
+
//# sourceMappingURL=plan-badge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan-badge.d.ts","sourceRoot":"","sources":["../../src/billing/plan-badge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AAEzC,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAA;IACd,iFAAiF;IACjF,IAAI,EAAE,OAAO,CAAA;CACd;AAMD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EACjC,KAAK,EAAE,IAAI,EAAE,GACZ,aAAa,CAOf"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Plan, BillingCheckoutFn } from '@fayz-ai/core';
|
|
2
|
+
export interface Subscription {
|
|
3
|
+
id: string;
|
|
4
|
+
orgId: string;
|
|
5
|
+
planId: string;
|
|
6
|
+
status: 'active' | 'trialing' | 'past_due' | 'canceled' | 'incomplete';
|
|
7
|
+
currentPeriodStart: string;
|
|
8
|
+
currentPeriodEnd: string;
|
|
9
|
+
cancelAtPeriodEnd?: boolean;
|
|
10
|
+
stripeSubscriptionId?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface Invoice {
|
|
13
|
+
id: string;
|
|
14
|
+
orgId: string;
|
|
15
|
+
amount: number;
|
|
16
|
+
currency: string;
|
|
17
|
+
status: 'paid' | 'open' | 'void' | 'uncollectible';
|
|
18
|
+
pdfUrl?: string;
|
|
19
|
+
createdAt: string;
|
|
20
|
+
}
|
|
21
|
+
export interface BillingState {
|
|
22
|
+
subscription: Subscription | null;
|
|
23
|
+
invoices: Invoice[];
|
|
24
|
+
plans: Plan[];
|
|
25
|
+
loading: boolean;
|
|
26
|
+
/** Payment-gateway seam seeded from `config.billing.onCheckout` (see core
|
|
27
|
+
* BillingConfig). When set, the Subscription page routes plan changes through
|
|
28
|
+
* it instead of writing `plan` straight onto the org. */
|
|
29
|
+
checkout: BillingCheckoutFn | null;
|
|
30
|
+
}
|
|
31
|
+
export interface BillingStore extends BillingState {
|
|
32
|
+
setSubscription: (subscription: Subscription | null) => void;
|
|
33
|
+
setInvoices: (invoices: Invoice[]) => void;
|
|
34
|
+
setPlans: (plans: Plan[]) => void;
|
|
35
|
+
setLoading: (loading: boolean) => void;
|
|
36
|
+
setCheckout: (checkout: BillingCheckoutFn | null) => void;
|
|
37
|
+
reset: () => void;
|
|
38
|
+
}
|
|
39
|
+
export declare const useBillingStore: import("zustand").UseBoundStore<import("zustand").StoreApi<BillingStore>>;
|
|
40
|
+
//# sourceMappingURL=store.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/billing/store.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAM5D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,UAAU,GAAG,UAAU,GAAG,YAAY,CAAA;IACtE,kBAAkB,EAAE,MAAM,CAAA;IAC1B,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,YAAY,GAAG,IAAI,CAAA;IACjC,QAAQ,EAAE,OAAO,EAAE,CAAA;IACnB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB;;8DAE0D;IAC1D,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAA;CACnC;AAMD,MAAM,WAAW,YAAa,SAAQ,YAAY;IAChD,eAAe,EAAE,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAA;IAC5D,WAAW,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,IAAI,CAAA;IAC1C,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,CAAA;IACjC,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,WAAW,EAAE,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI,KAAK,IAAI,CAAA;IACzD,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB;AAUD,eAAO,MAAM,eAAe,2EAQzB,CAAA"}
|