@burdenoff/microfe-eventfullymanaged 2026.510.105
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -0
- package/dist/dev/main.d.ts +2 -0
- package/dist/dev/main.d.ts.map +1 -0
- package/dist/eventfullymanaged/EventfullyManagedRoot.d.ts +4 -0
- package/dist/eventfullymanaged/EventfullyManagedRoot.d.ts.map +1 -0
- package/dist/eventfullymanaged/EventfullyManagedRoot.js +73 -0
- package/dist/eventfullymanaged/EventfullyManagedRoot.js.map +1 -0
- package/dist/eventfullymanaged/EventfullyManagedRoutes.d.ts +2 -0
- package/dist/eventfullymanaged/EventfullyManagedRoutes.d.ts.map +1 -0
- package/dist/eventfullymanaged/EventfullyManagedRoutes.js +297 -0
- package/dist/eventfullymanaged/EventfullyManagedRoutes.js.map +1 -0
- package/dist/eventfullymanaged/api/eventApi.d.ts +657 -0
- package/dist/eventfullymanaged/api/eventApi.d.ts.map +1 -0
- package/dist/eventfullymanaged/api/eventApi.js +630 -0
- package/dist/eventfullymanaged/api/eventApi.js.map +1 -0
- package/dist/eventfullymanaged/components/PageLayout.d.ts +12 -0
- package/dist/eventfullymanaged/components/PageLayout.d.ts.map +1 -0
- package/dist/eventfullymanaged/components/PageLayout.js +53 -0
- package/dist/eventfullymanaged/components/PageLayout.js.map +1 -0
- package/dist/eventfullymanaged/context/EventfullyManagedContext.d.ts +25 -0
- package/dist/eventfullymanaged/context/EventfullyManagedContext.d.ts.map +1 -0
- package/dist/eventfullymanaged/context/EventfullyManagedContext.js +46 -0
- package/dist/eventfullymanaged/context/EventfullyManagedContext.js.map +1 -0
- package/dist/eventfullymanaged/hooks/index.d.ts +3 -0
- package/dist/eventfullymanaged/hooks/index.d.ts.map +1 -0
- package/dist/eventfullymanaged/index.d.ts +27 -0
- package/dist/eventfullymanaged/index.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js +79 -0
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/AnalyticsPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/AnalyticsPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/AnalyticsPage.js +62 -0
- package/dist/eventfullymanaged/pages/modules/AnalyticsPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.js +89 -0
- package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/CommunicationPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/CommunicationPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/CommunicationPage.js +81 -0
- package/dist/eventfullymanaged/pages/modules/CommunicationPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/EntityListSection.d.ts +14 -0
- package/dist/eventfullymanaged/pages/modules/EntityListSection.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/EntityListSection.js +36 -0
- package/dist/eventfullymanaged/pages/modules/EntityListSection.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/EventsPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/EventsPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/EventsPage.js +91 -0
- package/dist/eventfullymanaged/pages/modules/EventsPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/KioskPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/KioskPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/KioskPage.js +52 -0
- package/dist/eventfullymanaged/pages/modules/KioskPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/NetworkingPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/NetworkingPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/NetworkingPage.js +65 -0
- package/dist/eventfullymanaged/pages/modules/NetworkingPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/OperationsHubPage.d.ts +9 -0
- package/dist/eventfullymanaged/pages/modules/OperationsHubPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/OperationsHubPage.js +309 -0
- package/dist/eventfullymanaged/pages/modules/OperationsHubPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/RegistrationPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/RegistrationPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/RegistrationPage.js +73 -0
- package/dist/eventfullymanaged/pages/modules/RegistrationPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.js +88 -0
- package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.js +55 -0
- package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.js +93 -0
- package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/modules/WorkflowsPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/modules/WorkflowsPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/modules/WorkflowsPage.js +93 -0
- package/dist/eventfullymanaged/pages/modules/WorkflowsPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.js +257 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.js +131 -0
- package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/venues/FloorPlansPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/venues/FloorPlansPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/venues/FloorPlansPage.js +91 -0
- package/dist/eventfullymanaged/pages/venues/FloorPlansPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueDetailPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/venues/VenueDetailPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueDetailPage.js +142 -0
- package/dist/eventfullymanaged/pages/venues/VenueDetailPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueFormPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/venues/VenueFormPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueFormPage.js +250 -0
- package/dist/eventfullymanaged/pages/venues/VenueFormPage.js.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueListPage.d.ts +2 -0
- package/dist/eventfullymanaged/pages/venues/VenueListPage.d.ts.map +1 -0
- package/dist/eventfullymanaged/pages/venues/VenueListPage.js +94 -0
- package/dist/eventfullymanaged/pages/venues/VenueListPage.js.map +1 -0
- package/dist/eventfullymanaged/store/eventfullyManagedStore.d.ts +47 -0
- package/dist/eventfullymanaged/store/eventfullyManagedStore.d.ts.map +1 -0
- package/dist/eventfullymanaged/types/index.d.ts +3649 -0
- package/dist/eventfullymanaged/types/index.d.ts.map +1 -0
- package/dist/eventfullymanaged/utils/cn.d.ts +2 -0
- package/dist/eventfullymanaged/utils/cn.d.ts.map +1 -0
- package/dist/eventfullymanaged/utils/cn.js +2 -0
- package/dist/eventfullymanaged/utils/constants.d.ts +3 -0
- package/dist/eventfullymanaged/utils/constants.d.ts.map +1 -0
- package/dist/eventfullymanaged/utils/navigation.d.ts +2 -0
- package/dist/eventfullymanaged/utils/navigation.d.ts.map +1 -0
- package/dist/generated/global-operations.d.ts +2 -0
- package/dist/generated/global-operations.d.ts.map +1 -0
- package/dist/generated/global-types.d.ts +20716 -0
- package/dist/generated/global-types.d.ts.map +1 -0
- package/dist/generated/wspace-operations.d.ts +2 -0
- package/dist/generated/wspace-operations.d.ts.map +1 -0
- package/dist/generated/wspace-types.d.ts +53363 -0
- package/dist/generated/wspace-types.d.ts.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/node_modules/@apollo/client/core/networkStatus.js +9 -0
- package/dist/node_modules/@apollo/client/core/networkStatus.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/context/ApolloContext.js +18 -0
- package/dist/node_modules/@apollo/client/react/context/ApolloContext.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/constants.js +6 -0
- package/dist/node_modules/@apollo/client/react/hooks/constants.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/useDeepMemo.js +14 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/useDeepMemo.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/useIsomorphicLayoutEffect.js +8 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/wrapHook.js +16 -0
- package/dist/node_modules/@apollo/client/react/hooks/internal/wrapHook.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/useApolloClient.js +12 -0
- package/dist/node_modules/@apollo/client/react/hooks/useApolloClient.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/useMutation.js +99 -0
- package/dist/node_modules/@apollo/client/react/hooks/useMutation.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/useQuery.js +129 -0
- package/dist/node_modules/@apollo/client/react/hooks/useQuery.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js +37 -0
- package/dist/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js.map +1 -0
- package/dist/node_modules/@apollo/client/react/internal/index.js +6 -0
- package/dist/node_modules/@apollo/client/react/internal/index.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/canUseDOM.js +7 -0
- package/dist/node_modules/@apollo/client/utilities/internal/canUseDOM.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/compact.js +14 -0
- package/dist/node_modules/@apollo/client/utilities/internal/compact.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/constants.js +6 -0
- package/dist/node_modules/@apollo/client/utilities/internal/constants.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/deepFreeze.js +17 -0
- package/dist/node_modules/@apollo/client/utilities/internal/deepFreeze.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/globals/global.js +9 -0
- package/dist/node_modules/@apollo/client/utilities/internal/globals/global.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/globals/maybe.js +10 -0
- package/dist/node_modules/@apollo/client/utilities/internal/globals/maybe.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/isNonNullObject.js +8 -0
- package/dist/node_modules/@apollo/client/utilities/internal/isNonNullObject.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/makeUniqueId.js +10 -0
- package/dist/node_modules/@apollo/client/utilities/internal/makeUniqueId.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/maybeDeepFreeze.js +9 -0
- package/dist/node_modules/@apollo/client/utilities/internal/maybeDeepFreeze.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/mergeOptions.js +12 -0
- package/dist/node_modules/@apollo/client/utilities/internal/mergeOptions.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/preventUnhandledRejection.js +8 -0
- package/dist/node_modules/@apollo/client/utilities/internal/preventUnhandledRejection.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/internal/stringifyForDisplay.js +10 -0
- package/dist/node_modules/@apollo/client/utilities/internal/stringifyForDisplay.js.map +1 -0
- package/dist/node_modules/@apollo/client/utilities/invariant/index.js +57 -0
- package/dist/node_modules/@apollo/client/utilities/invariant/index.js.map +1 -0
- package/dist/node_modules/@apollo/client/version.js +6 -0
- package/dist/node_modules/@apollo/client/version.js.map +1 -0
- package/dist/node_modules/@wry/equality/lib/index.js +89 -0
- package/dist/node_modules/@wry/equality/lib/index.js.map +1 -0
- package/dist/node_modules/graphql/error/GraphQLError.js +65 -0
- package/dist/node_modules/graphql/error/GraphQLError.js.map +1 -0
- package/dist/node_modules/graphql/error/syntaxError.js +12 -0
- package/dist/node_modules/graphql/error/syntaxError.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/devAssert.js +8 -0
- package/dist/node_modules/graphql/jsutils/devAssert.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/inspect.js +49 -0
- package/dist/node_modules/graphql/jsutils/inspect.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/instanceOf.js +29 -0
- package/dist/node_modules/graphql/jsutils/instanceOf.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/invariant.js +8 -0
- package/dist/node_modules/graphql/jsutils/invariant.js.map +1 -0
- package/dist/node_modules/graphql/jsutils/isObjectLike.js +8 -0
- package/dist/node_modules/graphql/jsutils/isObjectLike.js.map +1 -0
- package/dist/node_modules/graphql/language/ast.js +201 -0
- package/dist/node_modules/graphql/language/ast.js.map +1 -0
- package/dist/node_modules/graphql/language/blockString.js +19 -0
- package/dist/node_modules/graphql/language/blockString.js.map +1 -0
- package/dist/node_modules/graphql/language/characterClasses.js +20 -0
- package/dist/node_modules/graphql/language/characterClasses.js.map +1 -0
- package/dist/node_modules/graphql/language/directiveLocation.js +9 -0
- package/dist/node_modules/graphql/language/directiveLocation.js.map +1 -0
- package/dist/node_modules/graphql/language/kinds.js +9 -0
- package/dist/node_modules/graphql/language/kinds.js.map +1 -0
- package/dist/node_modules/graphql/language/lexer.js +248 -0
- package/dist/node_modules/graphql/language/lexer.js.map +1 -0
- package/dist/node_modules/graphql/language/location.js +18 -0
- package/dist/node_modules/graphql/language/location.js.map +1 -0
- package/dist/node_modules/graphql/language/parser.js +688 -0
- package/dist/node_modules/graphql/language/parser.js.map +1 -0
- package/dist/node_modules/graphql/language/printLocation.js +32 -0
- package/dist/node_modules/graphql/language/printLocation.js.map +1 -0
- package/dist/node_modules/graphql/language/source.js +22 -0
- package/dist/node_modules/graphql/language/source.js.map +1 -0
- package/dist/node_modules/graphql/language/tokenKind.js +9 -0
- package/dist/node_modules/graphql/language/tokenKind.js.map +1 -0
- package/dist/node_modules/graphql-tag/lib/index.js +76 -0
- package/dist/node_modules/graphql-tag/lib/index.js.map +1 -0
- package/dist/node_modules/graphql-tag/node_modules/tslib/tslib.es6.js +11 -0
- package/dist/node_modules/graphql-tag/node_modules/tslib/tslib.es6.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/NotificationFactories.js +21 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/NotificationFactories.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Scheduler.js +14 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Scheduler.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js +117 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js +93 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/config.js +12 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/config.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +46 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js +25 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/Action.js +16 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/Action.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapAction.js +22 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapAction.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapScheduler.js +27 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapScheduler.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js +46 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js +31 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/asap.js +8 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/asap.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js +11 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/immediateProvider.js +17 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/immediateProvider.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js +16 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +16 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/Immediate.js +20 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/Immediate.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +13 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js +11 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js +11 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js +10 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js +12 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js +8 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js +21 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js +6 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js.map +1 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js +14 -0
- package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js.map +1 -0
- package/dist/node_modules/rxjs/node_modules/tslib/tslib.es6.js +52 -0
- package/dist/node_modules/rxjs/node_modules/tslib/tslib.es6.js.map +1 -0
- package/package.json +97 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OperationsHubPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/OperationsHubPage.tsx"],"sourcesContent":["import { useMemo } from 'react';\n\nimport {\n useExhibitorsQuery,\n useLeadsQuery,\n useCheckInRecordsQuery,\n useNetworkingProfilesQuery,\n usePromoCodesQuery,\n useTicketTypesQuery,\n useAnalyticsSnapshotsQuery,\n useAnnouncementsQuery,\n useAutomationRulesQuery,\n useCommunicationCampaignsQuery,\n useDashboardSummaryQuery,\n useEventSessionsQuery,\n useRegistrationsQuery,\n useSponsorsQuery,\n useVenuesQuery,\n useWorkflowTemplatesQuery,\n} from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype SectionKey =\n | 'announcements'\n | 'campaigns'\n | 'templates'\n | 'rules'\n | 'snapshots'\n | 'registrations'\n | 'ticketTypes'\n | 'promoCodes'\n | 'sponsors'\n | 'exhibitors'\n | 'leads'\n | 'venues'\n | 'sessions'\n | 'checkInRecords'\n | 'networkingProfiles';\n\ninterface OperationsHubPageProps {\n title: string;\n description: string;\n sectionKeys: SectionKey[];\n}\n\ntype NamedEntity = {\n id: string;\n name?: string | null;\n title?: string | null;\n status?: string | null;\n};\n\ntype RegistrationEntity = {\n id: string;\n attendeeId?: string | null;\n status?: string | null;\n totalAmount?: string | null;\n currency?: string | null;\n};\n\ntype SponsorEntity = {\n id: string;\n name: string;\n level: string;\n};\n\ntype VenueEntity = {\n id: string;\n name: string;\n city?: string | null;\n status: string;\n};\n\ntype SessionEntity = {\n id: string;\n title?: string | null;\n sessionType?: string | null;\n status?: string | null;\n};\n\ntype ExhibitorEntity = {\n id: string;\n name: string;\n boothCode?: string | null;\n category?: string | null;\n status: string;\n};\n\ntype LeadEntity = {\n id: string;\n attendeeName: string;\n attendeeEmail: string;\n status: string;\n score?: number | null;\n};\n\nexport default function OperationsHubPage({ title, description, sectionKeys }: OperationsHubPageProps) {\n const summaryQuery = useDashboardSummaryQuery();\n const announcementsQuery = useAnnouncementsQuery({ limit: 100, offset: 0 });\n const campaignsQuery = useCommunicationCampaignsQuery({ limit: 100, offset: 0 });\n const templatesQuery = useWorkflowTemplatesQuery({ limit: 100, offset: 0 });\n const rulesQuery = useAutomationRulesQuery({ limit: 100, offset: 0 });\n const snapshotsQuery = useAnalyticsSnapshotsQuery({ limit: 100, offset: 0 });\n const registrationsQuery = useRegistrationsQuery({ limit: 100, offset: 0 });\n const ticketTypesQuery = useTicketTypesQuery({ limit: 100, offset: 0 });\n const promoCodesQuery = usePromoCodesQuery({ limit: 100, offset: 0 });\n const sponsorsQuery = useSponsorsQuery({ limit: 100, offset: 0 });\n const exhibitorsQuery = useExhibitorsQuery({ limit: 100, offset: 0 });\n const leadsQuery = useLeadsQuery({ limit: 100, offset: 0 });\n const venuesQuery = useVenuesQuery({ limit: 100, offset: 0 });\n const sessionsQuery = useEventSessionsQuery({ limit: 100, offset: 0 });\n const checkInRecordsQuery = useCheckInRecordsQuery({ limit: 100, offset: 0 });\n const networkingProfilesQuery = useNetworkingProfilesQuery({ limit: 100, offset: 0 });\n\n const summary = summaryQuery.data?.dashboardSummary;\n\n const registrations = useMemo(\n () => (registrationsQuery.data?.registrations.items ?? []) as RegistrationEntity[],\n [registrationsQuery.data]\n );\n\n const trackedRevenue = useMemo(\n () =>\n registrations.reduce((total, registration) => {\n const value = Number(registration.totalAmount ?? 0);\n return Number.isFinite(value) ? total + value : total;\n }, 0),\n [registrations]\n );\n\n const cards = [\n { label: 'Events', value: summary?.totalEvents ?? 0 },\n { label: 'Active', value: summary?.activeEvents ?? 0 },\n { label: 'Registrations', value: summary?.totalRegistrations ?? 0 },\n { label: 'Attendees', value: summary?.totalAttendees ?? 0 },\n { label: 'Venues', value: summary?.totalVenues ?? 0 },\n { label: 'Sponsors', value: summary?.totalSponsors ?? 0 },\n { label: 'Tracked Revenue', value: trackedRevenue.toFixed(2) },\n ];\n\n const renderSection = (sectionKey: SectionKey) => {\n if (sectionKey === 'announcements') {\n const rows = (announcementsQuery.data?.announcements.items ?? []) as NamedEntity[];\n return (\n <EntityListSection\n heading={announcementsQuery.loading ? 'Loading announcements...' : `Announcements (${rows.length})`}\n emptyLabel=\"No announcements recorded.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? row.name ?? `Announcement ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'campaigns') {\n const rows = (campaignsQuery.data?.communicationCampaigns.items ?? []) as NamedEntity[];\n return (\n <EntityListSection\n heading={campaignsQuery.loading ? 'Loading campaigns...' : `Campaigns (${rows.length})`}\n emptyLabel=\"No communication campaigns available.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? row.name ?? `Campaign ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'templates') {\n const rows = (templatesQuery.data?.workflowTemplates.items ?? []) as NamedEntity[];\n return (\n <EntityListSection\n heading={templatesQuery.loading ? 'Loading templates...' : `Workflow Templates (${rows.length})`}\n emptyLabel=\"No workflow templates configured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? row.name ?? `Template ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'rules') {\n const rows = (rulesQuery.data?.automationRules.items ?? []) as NamedEntity[];\n return (\n <EntityListSection\n heading={rulesQuery.loading ? 'Loading rules...' : `Automation Rules (${rows.length})`}\n emptyLabel=\"No automation rules configured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? row.name ?? `Rule ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'snapshots') {\n const rows = (snapshotsQuery.data?.analyticsSnapshots.items ?? []) as NamedEntity[];\n return (\n <EntityListSection\n heading={snapshotsQuery.loading ? 'Loading analytics snapshots...' : `Snapshots (${rows.length})`}\n emptyLabel=\"No analytics snapshots generated.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? row.name ?? `Snapshot ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'registrations') {\n return (\n <EntityListSection\n heading={registrationsQuery.loading ? 'Loading registrations...' : `Registrations (${registrations.length})`}\n emptyLabel=\"No registrations available.\"\n rows={registrations.map((row) => ({\n id: row.id,\n title: row.attendeeId ? `Attendee ${row.attendeeId}` : `Registration ${row.id}`,\n subtitle: row.totalAmount ? `${row.totalAmount} ${row.currency ?? ''}`.trim() : undefined,\n status: row.status ?? undefined,\n }))}\n />\n );\n }\n\n if (sectionKey === 'ticketTypes') {\n const rows = ticketTypesQuery.data?.ticketTypes.items ?? [];\n return (\n <EntityListSection\n heading={ticketTypesQuery.loading ? 'Loading ticket types...' : `Ticket Types (${rows.length})`}\n emptyLabel=\"No ticket types configured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.name,\n subtitle: `${row.price} ${row.currency} • Sold ${row.soldCount}`,\n status: row.isActive ? 'active' : 'inactive',\n }))}\n />\n );\n }\n\n if (sectionKey === 'promoCodes') {\n const rows = promoCodesQuery.data?.promoCodes.items ?? [];\n return (\n <EntityListSection\n heading={promoCodesQuery.loading ? 'Loading promo codes...' : `Promo Codes (${rows.length})`}\n emptyLabel=\"No promo codes configured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.code,\n subtitle: `${row.discountType} ${row.discountValue}`,\n status: row.isActive ? 'active' : 'inactive',\n }))}\n />\n );\n }\n\n if (sectionKey === 'sponsors') {\n const rows = (sponsorsQuery.data?.sponsors.items ?? []) as SponsorEntity[];\n return (\n <EntityListSection\n heading={sponsorsQuery.loading ? 'Loading sponsors...' : `Sponsors (${rows.length})`}\n emptyLabel=\"No sponsors onboarded.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.name,\n subtitle: row.level,\n }))}\n />\n );\n }\n\n if (sectionKey === 'exhibitors') {\n const rows = (exhibitorsQuery.data?.exhibitors.items ?? []) as ExhibitorEntity[];\n return (\n <EntityListSection\n heading={exhibitorsQuery.loading ? 'Loading exhibitors...' : `Exhibitors (${rows.length})`}\n emptyLabel=\"No exhibitors onboarded.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.name,\n subtitle: [row.boothCode, row.category].filter(Boolean).join(' • '),\n status: row.status,\n }))}\n />\n );\n }\n\n if (sectionKey === 'leads') {\n const rows = (leadsQuery.data?.leads.items ?? []) as LeadEntity[];\n return (\n <EntityListSection\n heading={leadsQuery.loading ? 'Loading leads...' : `Leads (${rows.length})`}\n emptyLabel=\"No leads captured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.attendeeName,\n subtitle: [row.attendeeEmail, row.score != null ? `Score ${row.score}` : undefined]\n .filter(Boolean)\n .join(' • '),\n status: row.status,\n }))}\n />\n );\n }\n\n if (sectionKey === 'venues') {\n const rows = (venuesQuery.data?.venues.items ?? []) as VenueEntity[];\n return (\n <EntityListSection\n heading={venuesQuery.loading ? 'Loading venues...' : `Venues (${rows.length})`}\n emptyLabel=\"No venues configured.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.name,\n subtitle: row.city ?? undefined,\n status: row.status,\n }))}\n />\n );\n }\n\n if (sectionKey === 'checkInRecords') {\n const rows = checkInRecordsQuery.data?.checkInRecords.items ?? [];\n return (\n <EntityListSection\n heading={checkInRecordsQuery.loading ? 'Loading check-in records...' : `Check-In Records (${rows.length})`}\n emptyLabel=\"No check-in records found.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.attendeeId ? `Attendee ${row.attendeeId}` : `Record ${row.id}`,\n subtitle: `${row.method} • ${row.direction}`,\n status: row.status,\n }))}\n />\n );\n }\n\n if (sectionKey === 'networkingProfiles') {\n const rows = networkingProfilesQuery.data?.networkingProfiles.items ?? [];\n return (\n <EntityListSection\n heading={networkingProfilesQuery.loading ? 'Loading networking profiles...' : `Profiles (${rows.length})`}\n emptyLabel=\"No networking profiles available.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.attendeeId ? `Attendee ${row.attendeeId}` : `Profile ${row.id}`,\n subtitle: [row.role, row.industry].filter(Boolean).join(' • '),\n status: row.visibility,\n }))}\n />\n );\n }\n\n const rows = (sessionsQuery.data?.eventSessions.items ?? []) as SessionEntity[];\n return (\n <EntityListSection\n heading={sessionsQuery.loading ? 'Loading sessions...' : `Sessions (${rows.length})`}\n emptyLabel=\"No sessions scheduled.\"\n rows={rows.map((row) => ({\n id: row.id,\n title: row.title ?? `Session ${row.id}`,\n subtitle: row.sessionType ?? undefined,\n status: row.status ?? undefined,\n }))}\n />\n );\n };\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">{title}</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">{description}</p>\n </section>\n\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h2 className=\"text-lg font-semibold text-text-primary\">Operational Metrics</h2>\n <div className=\"mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2 xl:grid-cols-4\">\n {cards.map((card) => (\n <div key={card.label} className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">{card.label}</p>\n <p className=\"mt-1 text-xl font-semibold text-text-primary\">{card.value}</p>\n </div>\n ))}\n </div>\n </section>\n\n {sectionKeys.map((sectionKey) => (\n <div key={sectionKey}>{renderSection(sectionKey)}</div>\n ))}\n </div>\n );\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegistrationPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/modules/RegistrationPage.tsx"],"names":[],"mappings":"AAuBA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CAqFvC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { useAttendeesQuery as e, usePromoCodesQuery as t, useRegistrationsQuery as n } from "../../api/eventApi.js";
|
|
2
|
+
import { EntityListSection as r } from "./EntityListSection.js";
|
|
3
|
+
import { useMemo as i } from "react";
|
|
4
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
+
import { useI18n as s } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
6
|
+
//#region src/eventfullymanaged/pages/modules/RegistrationPage.tsx
|
|
7
|
+
function c() {
|
|
8
|
+
let { t: c } = s(), l = (e, t) => {
|
|
9
|
+
let n = c(e);
|
|
10
|
+
return n === e ? t : n;
|
|
11
|
+
}, u = n({
|
|
12
|
+
limit: 100,
|
|
13
|
+
offset: 0
|
|
14
|
+
}), d = e({
|
|
15
|
+
limit: 100,
|
|
16
|
+
offset: 0
|
|
17
|
+
}), f = t({
|
|
18
|
+
limit: 100,
|
|
19
|
+
offset: 0
|
|
20
|
+
}), p = i(() => u.data?.registrations.items ?? [], [u.data]), m = i(() => d.data?.attendees.items ?? [], [d.data]), h = i(() => f.data?.promoCodes.items ?? [], [f.data]);
|
|
21
|
+
return /* @__PURE__ */ o("div", {
|
|
22
|
+
className: "space-y-6 p-6",
|
|
23
|
+
children: [
|
|
24
|
+
/* @__PURE__ */ o("section", {
|
|
25
|
+
className: "rounded-lg border border-border-default bg-bg-surface p-5",
|
|
26
|
+
children: [/* @__PURE__ */ a("h1", {
|
|
27
|
+
className: "text-2xl font-bold text-text-primary",
|
|
28
|
+
children: l("eventfullymanaged.registration.title", "Registration")
|
|
29
|
+
}), /* @__PURE__ */ a("p", {
|
|
30
|
+
className: "mt-1 text-sm text-text-secondary",
|
|
31
|
+
children: l("eventfullymanaged.registration.description", "Track registrations and attendee profiles via backend GraphQL APIs.")
|
|
32
|
+
})]
|
|
33
|
+
}),
|
|
34
|
+
/* @__PURE__ */ a(r, {
|
|
35
|
+
heading: u.loading ? l("eventfullymanaged.registration.registrations.loading", "Loading registrations...") : `${l("eventfullymanaged.registration.registrations.heading", "Registrations")} (${p.length})`,
|
|
36
|
+
emptyLabel: l("eventfullymanaged.registration.registrations.empty", "No registrations found."),
|
|
37
|
+
rows: p.map((e) => ({
|
|
38
|
+
id: e.id,
|
|
39
|
+
title: e.attendeeId ? `${l("eventfullymanaged.registration.registrations.attendeePrefix", "Attendee")} ${e.attendeeId}` : `${l("eventfullymanaged.registration.registrations.itemPrefix", "Registration")} ${e.id}`,
|
|
40
|
+
subtitle: [e.quantity ? `${l("eventfullymanaged.registration.registrations.quantityPrefix", "Qty")} ${e.quantity}` : void 0, e.totalAmount ? `${e.totalAmount} ${e.currency ?? ""}` : void 0].filter(Boolean).join(" • "),
|
|
41
|
+
status: e.status
|
|
42
|
+
}))
|
|
43
|
+
}),
|
|
44
|
+
/* @__PURE__ */ a(r, {
|
|
45
|
+
heading: d.loading ? l("eventfullymanaged.registration.attendees.loading", "Loading attendees...") : `${l("eventfullymanaged.registration.attendees.heading", "Attendees")} (${m.length})`,
|
|
46
|
+
emptyLabel: l("eventfullymanaged.registration.attendees.empty", "No attendees found."),
|
|
47
|
+
rows: m.map((e) => ({
|
|
48
|
+
id: e.id,
|
|
49
|
+
title: e.fullName ?? e.id,
|
|
50
|
+
subtitle: [
|
|
51
|
+
e.email,
|
|
52
|
+
e.company,
|
|
53
|
+
e.role
|
|
54
|
+
].filter(Boolean).join(" • ")
|
|
55
|
+
}))
|
|
56
|
+
}),
|
|
57
|
+
/* @__PURE__ */ a(r, {
|
|
58
|
+
heading: f.loading ? l("eventfullymanaged.registration.promoCodes.loading", "Loading promo codes...") : `${l("eventfullymanaged.registration.promoCodes.heading", "Promo Codes")} (${h.length})`,
|
|
59
|
+
emptyLabel: l("eventfullymanaged.registration.promoCodes.empty", "No promo codes configured."),
|
|
60
|
+
rows: h.map((e) => ({
|
|
61
|
+
id: e.id,
|
|
62
|
+
title: e.code,
|
|
63
|
+
subtitle: `${e.discountType} ${e.discountValue}`,
|
|
64
|
+
status: e.isActive ? "active" : "inactive"
|
|
65
|
+
}))
|
|
66
|
+
})
|
|
67
|
+
]
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
export { c as default };
|
|
72
|
+
|
|
73
|
+
//# sourceMappingURL=RegistrationPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RegistrationPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/RegistrationPage.tsx"],"sourcesContent":["import { useI18n } from '@burdenoff/fe-libs/shared/providers/shell/I18nProvider';\nimport { useMemo } from 'react';\n\nimport { useAttendeesQuery, usePromoCodesQuery, useRegistrationsQuery } from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype RegistrationRow = {\n id: string;\n attendeeId?: string;\n status?: string;\n quantity?: number;\n currency?: string;\n totalAmount?: string;\n};\n\ntype AttendeeRow = {\n id: string;\n fullName?: string;\n email?: string;\n company?: string;\n role?: string;\n};\n\nexport default function RegistrationPage() {\n const { t: translate } = useI18n();\n const t = (key: string, fallback: string) => {\n const value = translate(key);\n return value === key ? fallback : value;\n };\n const registrationsQuery = useRegistrationsQuery({ limit: 100, offset: 0 });\n const attendeesQuery = useAttendeesQuery({ limit: 100, offset: 0 });\n const promoCodesQuery = usePromoCodesQuery({ limit: 100, offset: 0 });\n\n const registrations = useMemo(\n () => (registrationsQuery.data?.registrations.items ?? []) as RegistrationRow[],\n [registrationsQuery.data]\n );\n const attendees = useMemo(() => (attendeesQuery.data?.attendees.items ?? []) as AttendeeRow[], [attendeesQuery.data]);\n const promoCodes = useMemo(() => promoCodesQuery.data?.promoCodes.items ?? [], [promoCodesQuery.data]);\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">\n {t('eventfullymanaged.registration.title', 'Registration')}\n </h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n {t(\n 'eventfullymanaged.registration.description',\n 'Track registrations and attendee profiles via backend GraphQL APIs.'\n )}\n </p>\n </section>\n\n <EntityListSection\n heading={\n registrationsQuery.loading\n ? t('eventfullymanaged.registration.registrations.loading', 'Loading registrations...')\n : `${t('eventfullymanaged.registration.registrations.heading', 'Registrations')} (${registrations.length})`\n }\n emptyLabel={t('eventfullymanaged.registration.registrations.empty', 'No registrations found.')}\n rows={registrations.map((row) => ({\n id: row.id,\n title: row.attendeeId\n ? `${t('eventfullymanaged.registration.registrations.attendeePrefix', 'Attendee')} ${row.attendeeId}`\n : `${t('eventfullymanaged.registration.registrations.itemPrefix', 'Registration')} ${row.id}`,\n subtitle: [\n row.quantity\n ? `${t('eventfullymanaged.registration.registrations.quantityPrefix', 'Qty')} ${row.quantity}`\n : undefined,\n row.totalAmount ? `${row.totalAmount} ${row.currency ?? ''}` : undefined,\n ]\n .filter(Boolean)\n .join(' • '),\n status: row.status,\n }))}\n />\n\n <EntityListSection\n heading={\n attendeesQuery.loading\n ? t('eventfullymanaged.registration.attendees.loading', 'Loading attendees...')\n : `${t('eventfullymanaged.registration.attendees.heading', 'Attendees')} (${attendees.length})`\n }\n emptyLabel={t('eventfullymanaged.registration.attendees.empty', 'No attendees found.')}\n rows={attendees.map((row) => ({\n id: row.id,\n title: row.fullName ?? row.id,\n subtitle: [row.email, row.company, row.role].filter(Boolean).join(' • '),\n }))}\n />\n\n <EntityListSection\n heading={\n promoCodesQuery.loading\n ? t('eventfullymanaged.registration.promoCodes.loading', 'Loading promo codes...')\n : `${t('eventfullymanaged.registration.promoCodes.heading', 'Promo Codes')} (${promoCodes.length})`\n }\n emptyLabel={t('eventfullymanaged.registration.promoCodes.empty', 'No promo codes configured.')}\n rows={promoCodes.map((row) => ({\n id: row.id,\n title: row.code,\n subtitle: `${row.discountType} ${row.discountValue}`,\n status: row.isActive ? 'active' : 'inactive',\n }))}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAuBA,SAAwB,IAAmB;CACzC,IAAM,EAAE,GAAG,MAAc,GAAS,EAC5B,KAAK,GAAa,MAAqB;EAC3C,IAAM,IAAQ,EAAU,EAAI;AAC5B,SAAO,MAAU,IAAM,IAAW;IAE9B,IAAqB,EAAsB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EACrE,IAAiB,EAAkB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAC7D,IAAkB,EAAmB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAE/D,IAAgB,QACb,EAAmB,MAAM,cAAc,SAAS,EAAE,EACzD,CAAC,EAAmB,KAAK,CAC1B,EACK,IAAY,QAAe,EAAe,MAAM,UAAU,SAAS,EAAE,EAAoB,CAAC,EAAe,KAAK,CAAC,EAC/G,IAAa,QAAc,EAAgB,MAAM,WAAW,SAAS,EAAE,EAAE,CAAC,EAAgB,KAAK,CAAC;AAEtG,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,WAAD;IAAS,WAAU;cAAnB,CACE,kBAAC,MAAD;KAAI,WAAU;eACX,EAAE,wCAAwC,eAAe;KACvD,CAAA,EACL,kBAAC,KAAD;KAAG,WAAU;eACV,EACC,8CACA,sEACD;KACC,CAAA,CACI;;GAEV,kBAAC,GAAD;IACE,SACE,EAAmB,UACf,EAAE,wDAAwD,2BAA2B,GACrF,GAAG,EAAE,wDAAwD,gBAAgB,CAAC,IAAI,EAAc,OAAO;IAE7G,YAAY,EAAE,sDAAsD,0BAA0B;IAC9F,MAAM,EAAc,KAAK,OAAS;KAChC,IAAI,EAAI;KACR,OAAO,EAAI,aACP,GAAG,EAAE,+DAA+D,WAAW,CAAC,GAAG,EAAI,eACvF,GAAG,EAAE,2DAA2D,eAAe,CAAC,GAAG,EAAI;KAC3F,UAAU,CACR,EAAI,WACA,GAAG,EAAE,+DAA+D,MAAM,CAAC,GAAG,EAAI,aAClF,KAAA,GACJ,EAAI,cAAc,GAAG,EAAI,YAAY,GAAG,EAAI,YAAY,OAAO,KAAA,EAChE,CACE,OAAO,QAAQ,CACf,KAAK,MAAM;KACd,QAAQ,EAAI;KACb,EAAE;IACH,CAAA;GAEF,kBAAC,GAAD;IACE,SACE,EAAe,UACX,EAAE,oDAAoD,uBAAuB,GAC7E,GAAG,EAAE,oDAAoD,YAAY,CAAC,IAAI,EAAU,OAAO;IAEjG,YAAY,EAAE,kDAAkD,sBAAsB;IACtF,MAAM,EAAU,KAAK,OAAS;KAC5B,IAAI,EAAI;KACR,OAAO,EAAI,YAAY,EAAI;KAC3B,UAAU;MAAC,EAAI;MAAO,EAAI;MAAS,EAAI;MAAK,CAAC,OAAO,QAAQ,CAAC,KAAK,MAAM;KACzE,EAAE;IACH,CAAA;GAEF,kBAAC,GAAD;IACE,SACE,EAAgB,UACZ,EAAE,qDAAqD,yBAAyB,GAChF,GAAG,EAAE,qDAAqD,cAAc,CAAC,IAAI,EAAW,OAAO;IAErG,YAAY,EAAE,mDAAmD,6BAA6B;IAC9F,MAAM,EAAW,KAAK,OAAS;KAC7B,IAAI,EAAI;KACR,OAAO,EAAI;KACX,UAAU,GAAG,EAAI,aAAa,GAAG,EAAI;KACrC,QAAQ,EAAI,WAAW,WAAW;KACnC,EAAE;IACH,CAAA;GACE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SponsorDetailsPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/modules/SponsorDetailsPage.tsx"],"names":[],"mappings":"AAsBA,MAAM,CAAC,OAAO,UAAU,kBAAkB,4CA0DzC"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { useCommunicationCampaignsQuery as e, useSponsorsQuery as t } from "../../api/eventApi.js";
|
|
2
|
+
import { EntityListSection as n } from "./EntityListSection.js";
|
|
3
|
+
import { useMemo as r } from "react";
|
|
4
|
+
import { useParams as i } from "react-router-dom";
|
|
5
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
6
|
+
//#region src/eventfullymanaged/pages/modules/SponsorDetailsPage.tsx
|
|
7
|
+
function s() {
|
|
8
|
+
let { id: s = "" } = i(), c = t({
|
|
9
|
+
limit: 100,
|
|
10
|
+
offset: 0
|
|
11
|
+
}), l = e({
|
|
12
|
+
limit: 100,
|
|
13
|
+
offset: 0
|
|
14
|
+
}), u = r(() => (c.data?.sponsors.items ?? []).find((e) => e.id === s), [s, c.data]), d = r(() => l.data?.communicationCampaigns.items ?? [], [l.data]);
|
|
15
|
+
return /* @__PURE__ */ o("div", {
|
|
16
|
+
className: "space-y-6 p-6",
|
|
17
|
+
children: [/* @__PURE__ */ o("section", {
|
|
18
|
+
className: "rounded-lg border border-border-default bg-bg-surface p-5",
|
|
19
|
+
children: [
|
|
20
|
+
/* @__PURE__ */ a("h1", {
|
|
21
|
+
className: "text-2xl font-bold text-text-primary",
|
|
22
|
+
children: "Sponsor Details"
|
|
23
|
+
}),
|
|
24
|
+
/* @__PURE__ */ a("p", {
|
|
25
|
+
className: "mt-1 text-sm text-text-secondary",
|
|
26
|
+
children: c.loading ? "Loading sponsor details..." : u ? `Live sponsor profile for ${u.name}.` : "Sponsor not found in current query scope."
|
|
27
|
+
}),
|
|
28
|
+
u ? /* @__PURE__ */ o("div", {
|
|
29
|
+
className: "mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",
|
|
30
|
+
children: [
|
|
31
|
+
/* @__PURE__ */ o("div", {
|
|
32
|
+
className: "rounded-md border border-border-default p-3",
|
|
33
|
+
children: [/* @__PURE__ */ a("p", {
|
|
34
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
35
|
+
children: "Level"
|
|
36
|
+
}), /* @__PURE__ */ a("p", {
|
|
37
|
+
className: "mt-1 font-medium text-text-primary",
|
|
38
|
+
children: u.level
|
|
39
|
+
})]
|
|
40
|
+
}),
|
|
41
|
+
/* @__PURE__ */ o("div", {
|
|
42
|
+
className: "rounded-md border border-border-default p-3",
|
|
43
|
+
children: [/* @__PURE__ */ a("p", {
|
|
44
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
45
|
+
children: "Contact"
|
|
46
|
+
}), /* @__PURE__ */ a("p", {
|
|
47
|
+
className: "mt-1 font-medium text-text-primary",
|
|
48
|
+
children: u.contactName ?? "Unassigned"
|
|
49
|
+
})]
|
|
50
|
+
}),
|
|
51
|
+
/* @__PURE__ */ o("div", {
|
|
52
|
+
className: "rounded-md border border-border-default p-3",
|
|
53
|
+
children: [/* @__PURE__ */ a("p", {
|
|
54
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
55
|
+
children: "Email"
|
|
56
|
+
}), /* @__PURE__ */ a("p", {
|
|
57
|
+
className: "mt-1 font-medium text-text-primary",
|
|
58
|
+
children: u.contactEmail ?? "Unavailable"
|
|
59
|
+
})]
|
|
60
|
+
}),
|
|
61
|
+
/* @__PURE__ */ o("div", {
|
|
62
|
+
className: "rounded-md border border-border-default p-3",
|
|
63
|
+
children: [/* @__PURE__ */ a("p", {
|
|
64
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
65
|
+
children: "Website"
|
|
66
|
+
}), /* @__PURE__ */ a("p", {
|
|
67
|
+
className: "mt-1 truncate font-medium text-text-primary",
|
|
68
|
+
children: u.website ?? "Unavailable"
|
|
69
|
+
})]
|
|
70
|
+
})
|
|
71
|
+
]
|
|
72
|
+
}) : null
|
|
73
|
+
]
|
|
74
|
+
}), /* @__PURE__ */ a(n, {
|
|
75
|
+
heading: l.loading ? "Loading campaigns..." : `Campaign Activity (${d.length})`,
|
|
76
|
+
emptyLabel: "No communication campaigns available for sponsor tracking.",
|
|
77
|
+
rows: d.map((e) => ({
|
|
78
|
+
id: e.id,
|
|
79
|
+
title: e.title ?? e.name ?? `Campaign ${e.id}`,
|
|
80
|
+
status: e.status
|
|
81
|
+
}))
|
|
82
|
+
})]
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
//#endregion
|
|
86
|
+
export { s as default };
|
|
87
|
+
|
|
88
|
+
//# sourceMappingURL=SponsorDetailsPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SponsorDetailsPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/SponsorDetailsPage.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { useParams } from 'react-router-dom';\n\nimport { useCommunicationCampaignsQuery, useSponsorsQuery } from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype SponsorRow = {\n id: string;\n name: string;\n level: string;\n website?: string | null;\n contactName?: string | null;\n contactEmail?: string | null;\n};\n\ntype CampaignRow = {\n id: string;\n name?: string;\n title?: string;\n status?: string;\n};\n\nexport default function SponsorDetailsPage() {\n const { id = '' } = useParams();\n const sponsorsQuery = useSponsorsQuery({ limit: 100, offset: 0 });\n const campaignsQuery = useCommunicationCampaignsQuery({ limit: 100, offset: 0 });\n\n const sponsor = useMemo(\n () => ((sponsorsQuery.data?.sponsors.items ?? []) as SponsorRow[]).find((item) => item.id === id),\n [id, sponsorsQuery.data]\n );\n const campaigns = useMemo(\n () => (campaignsQuery.data?.communicationCampaigns.items ?? []) as CampaignRow[],\n [campaignsQuery.data]\n );\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">Sponsor Details</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n {sponsorsQuery.loading\n ? 'Loading sponsor details...'\n : sponsor\n ? `Live sponsor profile for ${sponsor.name}.`\n : 'Sponsor not found in current query scope.'}\n </p>\n {sponsor ? (\n <div className=\"mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4\">\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Level</p>\n <p className=\"mt-1 font-medium text-text-primary\">{sponsor.level}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Contact</p>\n <p className=\"mt-1 font-medium text-text-primary\">{sponsor.contactName ?? 'Unassigned'}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Email</p>\n <p className=\"mt-1 font-medium text-text-primary\">{sponsor.contactEmail ?? 'Unavailable'}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Website</p>\n <p className=\"mt-1 truncate font-medium text-text-primary\">{sponsor.website ?? 'Unavailable'}</p>\n </div>\n </div>\n ) : null}\n </section>\n\n <EntityListSection\n heading={campaignsQuery.loading ? 'Loading campaigns...' : `Campaign Activity (${campaigns.length})`}\n emptyLabel=\"No communication campaigns available for sponsor tracking.\"\n rows={campaigns.map((campaign) => ({\n id: campaign.id,\n title: campaign.title ?? campaign.name ?? `Campaign ${campaign.id}`,\n status: campaign.status,\n }))}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAsBA,SAAwB,IAAqB;CAC3C,IAAM,EAAE,QAAK,OAAO,GAAW,EACzB,IAAgB,EAAiB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAC3D,IAAiB,EAA+B;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAE1E,IAAU,SACN,EAAc,MAAM,SAAS,SAAS,EAAE,EAAmB,MAAM,MAAS,EAAK,OAAO,EAAG,EACjG,CAAC,GAAI,EAAc,KAAK,CACzB,EACK,IAAY,QACT,EAAe,MAAM,uBAAuB,SAAS,EAAE,EAC9D,CAAC,EAAe,KAAK,CACtB;AAED,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf,CACE,kBAAC,WAAD;GAAS,WAAU;aAAnB;IACE,kBAAC,MAAD;KAAI,WAAU;eAAuC;KAAoB,CAAA;IACzE,kBAAC,KAAD;KAAG,WAAU;eACV,EAAc,UACX,+BACA,IACE,4BAA4B,EAAQ,KAAK,KACzC;KACJ,CAAA;IACH,IACC,kBAAC,OAAD;KAAK,WAAU;eAAf;MACE,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,KAAD;QAAG,WAAU;kBAAsD;QAAS,CAAA,EAC5E,kBAAC,KAAD;QAAG,WAAU;kBAAsC,EAAQ;QAAU,CAAA,CACjE;;MACN,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,KAAD;QAAG,WAAU;kBAAsD;QAAW,CAAA,EAC9E,kBAAC,KAAD;QAAG,WAAU;kBAAsC,EAAQ,eAAe;QAAiB,CAAA,CACvF;;MACN,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,KAAD;QAAG,WAAU;kBAAsD;QAAS,CAAA,EAC5E,kBAAC,KAAD;QAAG,WAAU;kBAAsC,EAAQ,gBAAgB;QAAkB,CAAA,CACzF;;MACN,kBAAC,OAAD;OAAK,WAAU;iBAAf,CACE,kBAAC,KAAD;QAAG,WAAU;kBAAsD;QAAW,CAAA,EAC9E,kBAAC,KAAD;QAAG,WAAU;kBAA+C,EAAQ,WAAW;QAAkB,CAAA,CAC7F;;MACF;SACJ;IACI;MAEV,kBAAC,GAAD;GACE,SAAS,EAAe,UAAU,yBAAyB,sBAAsB,EAAU,OAAO;GAClG,YAAW;GACX,MAAM,EAAU,KAAK,OAAc;IACjC,IAAI,EAAS;IACb,OAAO,EAAS,SAAS,EAAS,QAAQ,YAAY,EAAS;IAC/D,QAAQ,EAAS;IAClB,EAAE;GACH,CAAA,CACE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SponsorLeadsPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/modules/SponsorLeadsPage.tsx"],"names":[],"mappings":"AAmBA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CA6CvC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { useMeetingsQuery as e, useNetworkingMatchesQuery as t, useSponsorsQuery as n } from "../../api/eventApi.js";
|
|
2
|
+
import { EntityListSection as r } from "./EntityListSection.js";
|
|
3
|
+
import { useMemo as i } from "react";
|
|
4
|
+
import { useParams as a } from "react-router-dom";
|
|
5
|
+
import { jsx as o, jsxs as s } from "react/jsx-runtime";
|
|
6
|
+
//#region src/eventfullymanaged/pages/modules/SponsorLeadsPage.tsx
|
|
7
|
+
function c() {
|
|
8
|
+
let { id: c = "" } = a(), l = n({
|
|
9
|
+
limit: 100,
|
|
10
|
+
offset: 0
|
|
11
|
+
}), u = t({
|
|
12
|
+
limit: 100,
|
|
13
|
+
offset: 0
|
|
14
|
+
}), d = e({
|
|
15
|
+
limit: 100,
|
|
16
|
+
offset: 0
|
|
17
|
+
}), f = i(() => (l.data?.sponsors.items ?? []).find((e) => e.id === c), [c, l.data]), p = i(() => u.data?.networkingMatches.items ?? [], [u.data]), m = i(() => d.data?.meetings.items ?? [], [d.data]);
|
|
18
|
+
return /* @__PURE__ */ s("div", {
|
|
19
|
+
className: "space-y-6 p-6",
|
|
20
|
+
children: [
|
|
21
|
+
/* @__PURE__ */ s("section", {
|
|
22
|
+
className: "rounded-lg border border-border-default bg-bg-surface p-5",
|
|
23
|
+
children: [/* @__PURE__ */ o("h1", {
|
|
24
|
+
className: "text-2xl font-bold text-text-primary",
|
|
25
|
+
children: "Sponsor Leads"
|
|
26
|
+
}), /* @__PURE__ */ o("p", {
|
|
27
|
+
className: "mt-1 text-sm text-text-secondary",
|
|
28
|
+
children: f ? `${f.name} lead funnel sourced from networking and meeting streams.` : "Lead funnel sourced from networking and meeting streams."
|
|
29
|
+
})]
|
|
30
|
+
}),
|
|
31
|
+
/* @__PURE__ */ o(r, {
|
|
32
|
+
heading: u.loading ? "Loading networking matches..." : `Potential Leads (${p.length})`,
|
|
33
|
+
emptyLabel: "No networking leads found.",
|
|
34
|
+
rows: p.map((e) => ({
|
|
35
|
+
id: e.id,
|
|
36
|
+
title: e.title ?? e.name ?? `Lead ${e.id}`,
|
|
37
|
+
status: e.status
|
|
38
|
+
}))
|
|
39
|
+
}),
|
|
40
|
+
/* @__PURE__ */ o(r, {
|
|
41
|
+
heading: d.loading ? "Loading meetings..." : `Sponsor Meetings (${m.length})`,
|
|
42
|
+
emptyLabel: "No sponsor meetings recorded.",
|
|
43
|
+
rows: m.map((e) => ({
|
|
44
|
+
id: e.id,
|
|
45
|
+
title: e.title ?? e.name ?? `Meeting ${e.id}`,
|
|
46
|
+
status: e.status
|
|
47
|
+
}))
|
|
48
|
+
})
|
|
49
|
+
]
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
//#endregion
|
|
53
|
+
export { c as default };
|
|
54
|
+
|
|
55
|
+
//# sourceMappingURL=SponsorLeadsPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SponsorLeadsPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/SponsorLeadsPage.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { useParams } from 'react-router-dom';\n\nimport { useMeetingsQuery, useNetworkingMatchesQuery, useSponsorsQuery } from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype SponsorRow = {\n id: string;\n name: string;\n level: string;\n};\n\ntype SimpleRow = {\n id: string;\n name?: string;\n title?: string;\n status?: string;\n};\n\nexport default function SponsorLeadsPage() {\n const { id = '' } = useParams();\n const sponsorsQuery = useSponsorsQuery({ limit: 100, offset: 0 });\n const matchesQuery = useNetworkingMatchesQuery({ limit: 100, offset: 0 });\n const meetingsQuery = useMeetingsQuery({ limit: 100, offset: 0 });\n\n const sponsor = useMemo(\n () => ((sponsorsQuery.data?.sponsors.items ?? []) as SponsorRow[]).find((item) => item.id === id),\n [id, sponsorsQuery.data]\n );\n const matches = useMemo(() => (matchesQuery.data?.networkingMatches.items ?? []) as SimpleRow[], [matchesQuery.data]);\n const meetings = useMemo(() => (meetingsQuery.data?.meetings.items ?? []) as SimpleRow[], [meetingsQuery.data]);\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">Sponsor Leads</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n {sponsor\n ? `${sponsor.name} lead funnel sourced from networking and meeting streams.`\n : 'Lead funnel sourced from networking and meeting streams.'}\n </p>\n </section>\n\n <EntityListSection\n heading={matchesQuery.loading ? 'Loading networking matches...' : `Potential Leads (${matches.length})`}\n emptyLabel=\"No networking leads found.\"\n rows={matches.map((match) => ({\n id: match.id,\n title: match.title ?? match.name ?? `Lead ${match.id}`,\n status: match.status,\n }))}\n />\n\n <EntityListSection\n heading={meetingsQuery.loading ? 'Loading meetings...' : `Sponsor Meetings (${meetings.length})`}\n emptyLabel=\"No sponsor meetings recorded.\"\n rows={meetings.map((meeting) => ({\n id: meeting.id,\n title: meeting.title ?? meeting.name ?? `Meeting ${meeting.id}`,\n status: meeting.status,\n }))}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAmBA,SAAwB,IAAmB;CACzC,IAAM,EAAE,QAAK,OAAO,GAAW,EACzB,IAAgB,EAAiB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAC3D,IAAe,EAA0B;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EACnE,IAAgB,EAAiB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAE3D,IAAU,SACN,EAAc,MAAM,SAAS,SAAS,EAAE,EAAmB,MAAM,MAAS,EAAK,OAAO,EAAG,EACjG,CAAC,GAAI,EAAc,KAAK,CACzB,EACK,IAAU,QAAe,EAAa,MAAM,kBAAkB,SAAS,EAAE,EAAkB,CAAC,EAAa,KAAK,CAAC,EAC/G,IAAW,QAAe,EAAc,MAAM,SAAS,SAAS,EAAE,EAAkB,CAAC,EAAc,KAAK,CAAC;AAE/G,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,WAAD;IAAS,WAAU;cAAnB,CACE,kBAAC,MAAD;KAAI,WAAU;eAAuC;KAAkB,CAAA,EACvE,kBAAC,KAAD;KAAG,WAAU;eACV,IACG,GAAG,EAAQ,KAAK,6DAChB;KACF,CAAA,CACI;;GAEV,kBAAC,GAAD;IACE,SAAS,EAAa,UAAU,kCAAkC,oBAAoB,EAAQ,OAAO;IACrG,YAAW;IACX,MAAM,EAAQ,KAAK,OAAW;KAC5B,IAAI,EAAM;KACV,OAAO,EAAM,SAAS,EAAM,QAAQ,QAAQ,EAAM;KAClD,QAAQ,EAAM;KACf,EAAE;IACH,CAAA;GAEF,kBAAC,GAAD;IACE,SAAS,EAAc,UAAU,wBAAwB,qBAAqB,EAAS,OAAO;IAC9F,YAAW;IACX,MAAM,EAAS,KAAK,OAAa;KAC/B,IAAI,EAAQ;KACZ,OAAO,EAAQ,SAAS,EAAQ,QAAQ,WAAW,EAAQ;KAC3D,QAAQ,EAAQ;KACjB,EAAE;IACH,CAAA;GACE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VenueResourcesPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/modules/VenueResourcesPage.tsx"],"names":[],"mappings":"AAYA,MAAM,CAAC,OAAO,UAAU,kBAAkB,4CAuDzC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { useVenueQuery as e } from "../../api/eventApi.js";
|
|
2
|
+
import { EntityListSection as t } from "./EntityListSection.js";
|
|
3
|
+
import { useMemo as n } from "react";
|
|
4
|
+
import { useParams as r } from "react-router-dom";
|
|
5
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
6
|
+
//#region src/eventfullymanaged/pages/modules/VenueResourcesPage.tsx
|
|
7
|
+
function o() {
|
|
8
|
+
let { id: o = "" } = r(), s = e(o), c = s.data?.venue, l = n(() => s.data?.floorPlans.items ?? [], [s.data]);
|
|
9
|
+
return /* @__PURE__ */ a("div", {
|
|
10
|
+
className: "space-y-6 p-6",
|
|
11
|
+
children: [
|
|
12
|
+
/* @__PURE__ */ a("section", {
|
|
13
|
+
className: "rounded-lg border border-border-default bg-bg-surface p-5",
|
|
14
|
+
children: [
|
|
15
|
+
/* @__PURE__ */ i("h1", {
|
|
16
|
+
className: "text-2xl font-bold text-text-primary",
|
|
17
|
+
children: "Venue Resources"
|
|
18
|
+
}),
|
|
19
|
+
/* @__PURE__ */ i("p", {
|
|
20
|
+
className: "mt-1 text-sm text-text-secondary",
|
|
21
|
+
children: s.loading ? "Loading venue resources..." : `Resource view for ${c?.name ?? "selected venue"} from live backend data.`
|
|
22
|
+
}),
|
|
23
|
+
/* @__PURE__ */ a("div", {
|
|
24
|
+
className: "mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4",
|
|
25
|
+
children: [
|
|
26
|
+
/* @__PURE__ */ a("div", {
|
|
27
|
+
className: "rounded-md border border-border-default p-3",
|
|
28
|
+
children: [/* @__PURE__ */ i("p", {
|
|
29
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
30
|
+
children: "Status"
|
|
31
|
+
}), /* @__PURE__ */ i("p", {
|
|
32
|
+
className: "mt-1 font-medium text-text-primary",
|
|
33
|
+
children: c?.status ?? "unknown"
|
|
34
|
+
})]
|
|
35
|
+
}),
|
|
36
|
+
/* @__PURE__ */ a("div", {
|
|
37
|
+
className: "rounded-md border border-border-default p-3",
|
|
38
|
+
children: [/* @__PURE__ */ i("p", {
|
|
39
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
40
|
+
children: "Capacity"
|
|
41
|
+
}), /* @__PURE__ */ i("p", {
|
|
42
|
+
className: "mt-1 font-medium text-text-primary",
|
|
43
|
+
children: c?.capacity?.toLocaleString() ?? 0
|
|
44
|
+
})]
|
|
45
|
+
}),
|
|
46
|
+
/* @__PURE__ */ a("div", {
|
|
47
|
+
className: "rounded-md border border-border-default p-3",
|
|
48
|
+
children: [/* @__PURE__ */ i("p", {
|
|
49
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
50
|
+
children: "Amenities"
|
|
51
|
+
}), /* @__PURE__ */ i("p", {
|
|
52
|
+
className: "mt-1 font-medium text-text-primary",
|
|
53
|
+
children: c?.amenities.length ?? 0
|
|
54
|
+
})]
|
|
55
|
+
}),
|
|
56
|
+
/* @__PURE__ */ a("div", {
|
|
57
|
+
className: "rounded-md border border-border-default p-3",
|
|
58
|
+
children: [/* @__PURE__ */ i("p", {
|
|
59
|
+
className: "text-xs uppercase tracking-wide text-text-secondary",
|
|
60
|
+
children: "Floor Plans"
|
|
61
|
+
}), /* @__PURE__ */ i("p", {
|
|
62
|
+
className: "mt-1 font-medium text-text-primary",
|
|
63
|
+
children: l.length
|
|
64
|
+
})]
|
|
65
|
+
})
|
|
66
|
+
]
|
|
67
|
+
})
|
|
68
|
+
]
|
|
69
|
+
}),
|
|
70
|
+
/* @__PURE__ */ i(t, {
|
|
71
|
+
heading: s.loading ? "Loading floor plans..." : `Floor Plans (${l.length})`,
|
|
72
|
+
emptyLabel: "No floor plans configured for this venue.",
|
|
73
|
+
rows: l.map((e) => ({
|
|
74
|
+
id: e.id,
|
|
75
|
+
title: e.name,
|
|
76
|
+
subtitle: e.imageUrl ?? void 0
|
|
77
|
+
}))
|
|
78
|
+
}),
|
|
79
|
+
/* @__PURE__ */ i(t, {
|
|
80
|
+
heading: "Amenities",
|
|
81
|
+
emptyLabel: "No amenities listed.",
|
|
82
|
+
rows: (c?.amenities ?? []).map((e) => ({
|
|
83
|
+
id: e,
|
|
84
|
+
title: e
|
|
85
|
+
}))
|
|
86
|
+
})
|
|
87
|
+
]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
//#endregion
|
|
91
|
+
export { o as default };
|
|
92
|
+
|
|
93
|
+
//# sourceMappingURL=VenueResourcesPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VenueResourcesPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/VenueResourcesPage.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { useParams } from 'react-router-dom';\n\nimport { useVenueQuery } from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype FloorPlanRow = {\n id: string;\n name: string;\n imageUrl?: string | null;\n};\n\nexport default function VenueResourcesPage() {\n const { id = '' } = useParams();\n const venueQuery = useVenueQuery(id);\n const venue = venueQuery.data?.venue;\n const floorPlans = useMemo(() => (venueQuery.data?.floorPlans.items ?? []) as FloorPlanRow[], [venueQuery.data]);\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">Venue Resources</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n {venueQuery.loading\n ? 'Loading venue resources...'\n : `Resource view for ${venue?.name ?? 'selected venue'} from live backend data.`}\n </p>\n <div className=\"mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4\">\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Status</p>\n <p className=\"mt-1 font-medium text-text-primary\">{venue?.status ?? 'unknown'}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Capacity</p>\n <p className=\"mt-1 font-medium text-text-primary\">{venue?.capacity?.toLocaleString() ?? 0}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Amenities</p>\n <p className=\"mt-1 font-medium text-text-primary\">{venue?.amenities.length ?? 0}</p>\n </div>\n <div className=\"rounded-md border border-border-default p-3\">\n <p className=\"text-xs uppercase tracking-wide text-text-secondary\">Floor Plans</p>\n <p className=\"mt-1 font-medium text-text-primary\">{floorPlans.length}</p>\n </div>\n </div>\n </section>\n\n <EntityListSection\n heading={venueQuery.loading ? 'Loading floor plans...' : `Floor Plans (${floorPlans.length})`}\n emptyLabel=\"No floor plans configured for this venue.\"\n rows={floorPlans.map((floorPlan) => ({\n id: floorPlan.id,\n title: floorPlan.name,\n subtitle: floorPlan.imageUrl ?? undefined,\n }))}\n />\n\n <EntityListSection\n heading=\"Amenities\"\n emptyLabel=\"No amenities listed.\"\n rows={(venue?.amenities ?? []).map((amenity) => ({\n id: amenity,\n title: amenity,\n }))}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAYA,SAAwB,IAAqB;CAC3C,IAAM,EAAE,QAAK,OAAO,GAAW,EACzB,IAAa,EAAc,EAAG,EAC9B,IAAQ,EAAW,MAAM,OACzB,IAAa,QAAe,EAAW,MAAM,WAAW,SAAS,EAAE,EAAqB,CAAC,EAAW,KAAK,CAAC;AAEhH,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,WAAD;IAAS,WAAU;cAAnB;KACE,kBAAC,MAAD;MAAI,WAAU;gBAAuC;MAAoB,CAAA;KACzE,kBAAC,KAAD;MAAG,WAAU;gBACV,EAAW,UACR,+BACA,qBAAqB,GAAO,QAAQ,iBAAiB;MACvD,CAAA;KACJ,kBAAC,OAAD;MAAK,WAAU;gBAAf;OACE,kBAAC,OAAD;QAAK,WAAU;kBAAf,CACE,kBAAC,KAAD;SAAG,WAAU;mBAAsD;SAAU,CAAA,EAC7E,kBAAC,KAAD;SAAG,WAAU;mBAAsC,GAAO,UAAU;SAAc,CAAA,CAC9E;;OACN,kBAAC,OAAD;QAAK,WAAU;kBAAf,CACE,kBAAC,KAAD;SAAG,WAAU;mBAAsD;SAAY,CAAA,EAC/E,kBAAC,KAAD;SAAG,WAAU;mBAAsC,GAAO,UAAU,gBAAgB,IAAI;SAAM,CAAA,CAC1F;;OACN,kBAAC,OAAD;QAAK,WAAU;kBAAf,CACE,kBAAC,KAAD;SAAG,WAAU;mBAAsD;SAAa,CAAA,EAChF,kBAAC,KAAD;SAAG,WAAU;mBAAsC,GAAO,UAAU,UAAU;SAAM,CAAA,CAChF;;OACN,kBAAC,OAAD;QAAK,WAAU;kBAAf,CACE,kBAAC,KAAD;SAAG,WAAU;mBAAsD;SAAe,CAAA,EAClF,kBAAC,KAAD;SAAG,WAAU;mBAAsC,EAAW;SAAW,CAAA,CACrE;;OACF;;KACE;;GAEV,kBAAC,GAAD;IACE,SAAS,EAAW,UAAU,2BAA2B,gBAAgB,EAAW,OAAO;IAC3F,YAAW;IACX,MAAM,EAAW,KAAK,OAAe;KACnC,IAAI,EAAU;KACd,OAAO,EAAU;KACjB,UAAU,EAAU,YAAY,KAAA;KACjC,EAAE;IACH,CAAA;GAEF,kBAAC,GAAD;IACE,SAAQ;IACR,YAAW;IACX,OAAO,GAAO,aAAa,EAAE,EAAE,KAAK,OAAa;KAC/C,IAAI;KACJ,OAAO;KACR,EAAE;IACH,CAAA;GACE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowsPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/modules/WorkflowsPage.tsx"],"names":[],"mappings":"AAkBA,MAAM,CAAC,OAAO,UAAU,aAAa,4CA8FpC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { useAutomationRulesQuery as e, useUpsertAutomationRuleMutation as t, useUpsertWorkflowTemplateMutation as n, useWorkflowTemplatesQuery as r } from "../../api/eventApi.js";
|
|
2
|
+
import { EntityListSection as i } from "./EntityListSection.js";
|
|
3
|
+
import { useMemo as a, useState as o } from "react";
|
|
4
|
+
import { jsx as s, jsxs as c } from "react/jsx-runtime";
|
|
5
|
+
import { Play as l } from "lucide-react";
|
|
6
|
+
//#region src/eventfullymanaged/pages/modules/WorkflowsPage.tsx
|
|
7
|
+
function u() {
|
|
8
|
+
let u = r({
|
|
9
|
+
limit: 100,
|
|
10
|
+
offset: 0
|
|
11
|
+
}), d = e({
|
|
12
|
+
limit: 100,
|
|
13
|
+
offset: 0
|
|
14
|
+
}), [f, { loading: p }] = n(), [m, { loading: h }] = t(), [g, _] = o("Post-event follow-up"), v = a(() => u.data?.workflowTemplates.items ?? [], [u.data]), y = a(() => d.data?.automationRules.items ?? [], [d.data]);
|
|
15
|
+
return /* @__PURE__ */ c("div", {
|
|
16
|
+
className: "space-y-6 p-6",
|
|
17
|
+
children: [
|
|
18
|
+
/* @__PURE__ */ c("section", {
|
|
19
|
+
className: "rounded-lg border border-border-default bg-bg-surface p-5",
|
|
20
|
+
children: [
|
|
21
|
+
/* @__PURE__ */ s("h1", {
|
|
22
|
+
className: "text-2xl font-bold text-text-primary",
|
|
23
|
+
children: "Workflows"
|
|
24
|
+
}),
|
|
25
|
+
/* @__PURE__ */ s("p", {
|
|
26
|
+
className: "mt-1 text-sm text-text-secondary",
|
|
27
|
+
children: "Manage event workflow templates and automation rules. Execution is delegated to workflow services."
|
|
28
|
+
}),
|
|
29
|
+
/* @__PURE__ */ c("div", {
|
|
30
|
+
className: "mt-4 flex flex-col gap-3 sm:flex-row",
|
|
31
|
+
children: [
|
|
32
|
+
/* @__PURE__ */ s("input", {
|
|
33
|
+
value: g,
|
|
34
|
+
onChange: (e) => _(e.target.value),
|
|
35
|
+
className: "flex-1 rounded-md border border-border-default px-3 py-2"
|
|
36
|
+
}),
|
|
37
|
+
/* @__PURE__ */ c("button", {
|
|
38
|
+
type: "button",
|
|
39
|
+
onClick: async () => {
|
|
40
|
+
g.trim() && await f({ variables: { input: {
|
|
41
|
+
name: g,
|
|
42
|
+
title: g,
|
|
43
|
+
status: "active",
|
|
44
|
+
metadata: {}
|
|
45
|
+
} } });
|
|
46
|
+
},
|
|
47
|
+
disabled: p,
|
|
48
|
+
className: "inline-flex items-center rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:opacity-90 disabled:opacity-60",
|
|
49
|
+
children: [/* @__PURE__ */ s(l, { className: "mr-2 h-4 w-4" }), p ? "Saving..." : "Add Template"]
|
|
50
|
+
}),
|
|
51
|
+
/* @__PURE__ */ s("button", {
|
|
52
|
+
type: "button",
|
|
53
|
+
onClick: async () => {
|
|
54
|
+
await m({ variables: { input: {
|
|
55
|
+
name: `${g} Rule`,
|
|
56
|
+
title: `${g} Rule`,
|
|
57
|
+
status: "active",
|
|
58
|
+
metadata: {}
|
|
59
|
+
} } });
|
|
60
|
+
},
|
|
61
|
+
disabled: h,
|
|
62
|
+
className: "inline-flex items-center rounded-md border border-border-default px-4 py-2 text-sm font-medium text-text-primary hover:bg-bg-elevated disabled:opacity-60",
|
|
63
|
+
children: h ? "Saving..." : "Add Rule"
|
|
64
|
+
})
|
|
65
|
+
]
|
|
66
|
+
})
|
|
67
|
+
]
|
|
68
|
+
}),
|
|
69
|
+
/* @__PURE__ */ s(i, {
|
|
70
|
+
heading: u.loading ? "Loading templates..." : `Templates (${v.length})`,
|
|
71
|
+
emptyLabel: "No workflow templates configured.",
|
|
72
|
+
rows: v.map((e) => ({
|
|
73
|
+
id: e.id,
|
|
74
|
+
title: e.name ?? e.title ?? `Template ${e.id}`,
|
|
75
|
+
status: e.status ?? void 0
|
|
76
|
+
}))
|
|
77
|
+
}),
|
|
78
|
+
/* @__PURE__ */ s(i, {
|
|
79
|
+
heading: d.loading ? "Loading automation rules..." : `Automation Rules (${y.length})`,
|
|
80
|
+
emptyLabel: "No automation rules configured.",
|
|
81
|
+
rows: y.map((e) => ({
|
|
82
|
+
id: e.id,
|
|
83
|
+
title: e.name ?? e.title ?? `Rule ${e.id}`,
|
|
84
|
+
status: e.status ?? void 0
|
|
85
|
+
}))
|
|
86
|
+
})
|
|
87
|
+
]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
//#endregion
|
|
91
|
+
export { u as default };
|
|
92
|
+
|
|
93
|
+
//# sourceMappingURL=WorkflowsPage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowsPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/modules/WorkflowsPage.tsx"],"sourcesContent":["import { Play } from 'lucide-react';\nimport { useMemo, useState } from 'react';\n\nimport {\n useAutomationRulesQuery,\n useUpsertAutomationRuleMutation,\n useUpsertWorkflowTemplateMutation,\n useWorkflowTemplatesQuery,\n} from '../../api/eventApi';\nimport { EntityListSection } from './EntityListSection';\n\ntype SimpleRow = {\n id: string;\n name?: string;\n title?: string;\n status?: string;\n};\n\nexport default function WorkflowsPage() {\n const templatesQuery = useWorkflowTemplatesQuery({ limit: 100, offset: 0 });\n const rulesQuery = useAutomationRulesQuery({ limit: 100, offset: 0 });\n const [upsertTemplate, { loading: creatingTemplate }] = useUpsertWorkflowTemplateMutation();\n const [upsertRule, { loading: creatingRule }] = useUpsertAutomationRuleMutation();\n const [templateName, setTemplateName] = useState('Post-event follow-up');\n\n const templates = useMemo(\n () => (templatesQuery.data?.workflowTemplates.items ?? []) as SimpleRow[],\n [templatesQuery.data]\n );\n const rules = useMemo(() => (rulesQuery.data?.automationRules.items ?? []) as SimpleRow[], [rulesQuery.data]);\n\n const onCreateTemplate = async () => {\n if (!templateName.trim()) return;\n await upsertTemplate({\n variables: {\n input: {\n name: templateName,\n title: templateName,\n status: 'active',\n metadata: {},\n },\n },\n });\n };\n\n const onCreateRule = async () => {\n await upsertRule({\n variables: {\n input: {\n name: `${templateName} Rule`,\n title: `${templateName} Rule`,\n status: 'active',\n metadata: {},\n },\n },\n });\n };\n\n return (\n <div className=\"space-y-6 p-6\">\n <section className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <h1 className=\"text-2xl font-bold text-text-primary\">Workflows</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">\n Manage event workflow templates and automation rules. Execution is delegated to workflow services.\n </p>\n <div className=\"mt-4 flex flex-col gap-3 sm:flex-row\">\n <input\n value={templateName}\n onChange={(e) => setTemplateName(e.target.value)}\n className=\"flex-1 rounded-md border border-border-default px-3 py-2\"\n />\n <button\n type=\"button\"\n onClick={onCreateTemplate}\n disabled={creatingTemplate}\n className=\"inline-flex items-center rounded-md bg-action-primary-bg px-4 py-2 text-sm font-medium text-action-primary-text hover:opacity-90 disabled:opacity-60\"\n >\n <Play className=\"mr-2 h-4 w-4\" />\n {creatingTemplate ? 'Saving...' : 'Add Template'}\n </button>\n <button\n type=\"button\"\n onClick={onCreateRule}\n disabled={creatingRule}\n className=\"inline-flex items-center rounded-md border border-border-default px-4 py-2 text-sm font-medium text-text-primary hover:bg-bg-elevated disabled:opacity-60\"\n >\n {creatingRule ? 'Saving...' : 'Add Rule'}\n </button>\n </div>\n </section>\n\n <EntityListSection\n heading={templatesQuery.loading ? 'Loading templates...' : `Templates (${templates.length})`}\n emptyLabel=\"No workflow templates configured.\"\n rows={templates.map((row) => ({\n id: row.id,\n title: row.name ?? row.title ?? `Template ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n\n <EntityListSection\n heading={rulesQuery.loading ? 'Loading automation rules...' : `Automation Rules (${rules.length})`}\n emptyLabel=\"No automation rules configured.\"\n rows={rules.map((row) => ({\n id: row.id,\n title: row.name ?? row.title ?? `Rule ${row.id}`,\n status: row.status ?? undefined,\n }))}\n />\n </div>\n );\n}\n"],"mappings":";;;;;;AAkBA,SAAwB,IAAgB;CACtC,IAAM,IAAiB,EAA0B;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EACrE,IAAa,EAAwB;EAAE,OAAO;EAAK,QAAQ;EAAG,CAAC,EAC/D,CAAC,GAAgB,EAAE,SAAS,OAAsB,GAAmC,EACrF,CAAC,GAAY,EAAE,SAAS,OAAkB,GAAiC,EAC3E,CAAC,GAAc,KAAmB,EAAS,uBAAuB,EAElE,IAAY,QACT,EAAe,MAAM,kBAAkB,SAAS,EAAE,EACzD,CAAC,EAAe,KAAK,CACtB,EACK,IAAQ,QAAe,EAAW,MAAM,gBAAgB,SAAS,EAAE,EAAkB,CAAC,EAAW,KAAK,CAAC;AA6B7G,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,WAAD;IAAS,WAAU;cAAnB;KACE,kBAAC,MAAD;MAAI,WAAU;gBAAuC;MAAc,CAAA;KACnE,kBAAC,KAAD;MAAG,WAAU;gBAAmC;MAE5C,CAAA;KACJ,kBAAC,OAAD;MAAK,WAAU;gBAAf;OACE,kBAAC,SAAD;QACE,OAAO;QACP,WAAW,MAAM,EAAgB,EAAE,OAAO,MAAM;QAChD,WAAU;QACV,CAAA;OACF,kBAAC,UAAD;QACE,MAAK;QACL,SA1Ce,YAAY;AAC9B,WAAa,MAAM,IACxB,MAAM,EAAe,EACnB,WAAW,EACT,OAAO;UACL,MAAM;UACN,OAAO;UACP,QAAQ;UACR,UAAU,EAAE;UACb,EACF,EACF,CAAC;;QAgCM,UAAU;QACV,WAAU;kBAJZ,CAME,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAChC,IAAmB,cAAc,eAC3B;;OACT,kBAAC,UAAD;QACE,MAAK;QACL,SArCW,YAAY;AAC/B,eAAM,EAAW,EACf,WAAW,EACT,OAAO;UACL,MAAM,GAAG,EAAa;UACtB,OAAO,GAAG,EAAa;UACvB,QAAQ;UACR,UAAU,EAAE;UACb,EACF,EACF,CAAC;;QA4BM,UAAU;QACV,WAAU;kBAET,IAAe,cAAc;QACvB,CAAA;OACL;;KACE;;GAEV,kBAAC,GAAD;IACE,SAAS,EAAe,UAAU,yBAAyB,cAAc,EAAU,OAAO;IAC1F,YAAW;IACX,MAAM,EAAU,KAAK,OAAS;KAC5B,IAAI,EAAI;KACR,OAAO,EAAI,QAAQ,EAAI,SAAS,YAAY,EAAI;KAChD,QAAQ,EAAI,UAAU,KAAA;KACvB,EAAE;IACH,CAAA;GAEF,kBAAC,GAAD;IACE,SAAS,EAAW,UAAU,gCAAgC,qBAAqB,EAAM,OAAO;IAChG,YAAW;IACX,MAAM,EAAM,KAAK,OAAS;KACxB,IAAI,EAAI;KACR,OAAO,EAAI,QAAQ,EAAI,SAAS,QAAQ,EAAI;KAC5C,QAAQ,EAAI,UAAU,KAAA;KACvB,EAAE;IACH,CAAA;GACE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SponsorFormPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/sponsors/SponsorFormPage.tsx"],"names":[],"mappings":"AAqCA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAsNtC"}
|