@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.
Files changed (278) hide show
  1. package/README.md +22 -0
  2. package/dist/dev/main.d.ts +2 -0
  3. package/dist/dev/main.d.ts.map +1 -0
  4. package/dist/eventfullymanaged/EventfullyManagedRoot.d.ts +4 -0
  5. package/dist/eventfullymanaged/EventfullyManagedRoot.d.ts.map +1 -0
  6. package/dist/eventfullymanaged/EventfullyManagedRoot.js +73 -0
  7. package/dist/eventfullymanaged/EventfullyManagedRoot.js.map +1 -0
  8. package/dist/eventfullymanaged/EventfullyManagedRoutes.d.ts +2 -0
  9. package/dist/eventfullymanaged/EventfullyManagedRoutes.d.ts.map +1 -0
  10. package/dist/eventfullymanaged/EventfullyManagedRoutes.js +297 -0
  11. package/dist/eventfullymanaged/EventfullyManagedRoutes.js.map +1 -0
  12. package/dist/eventfullymanaged/api/eventApi.d.ts +657 -0
  13. package/dist/eventfullymanaged/api/eventApi.d.ts.map +1 -0
  14. package/dist/eventfullymanaged/api/eventApi.js +630 -0
  15. package/dist/eventfullymanaged/api/eventApi.js.map +1 -0
  16. package/dist/eventfullymanaged/components/PageLayout.d.ts +12 -0
  17. package/dist/eventfullymanaged/components/PageLayout.d.ts.map +1 -0
  18. package/dist/eventfullymanaged/components/PageLayout.js +53 -0
  19. package/dist/eventfullymanaged/components/PageLayout.js.map +1 -0
  20. package/dist/eventfullymanaged/context/EventfullyManagedContext.d.ts +25 -0
  21. package/dist/eventfullymanaged/context/EventfullyManagedContext.d.ts.map +1 -0
  22. package/dist/eventfullymanaged/context/EventfullyManagedContext.js +46 -0
  23. package/dist/eventfullymanaged/context/EventfullyManagedContext.js.map +1 -0
  24. package/dist/eventfullymanaged/hooks/index.d.ts +3 -0
  25. package/dist/eventfullymanaged/hooks/index.d.ts.map +1 -0
  26. package/dist/eventfullymanaged/index.d.ts +27 -0
  27. package/dist/eventfullymanaged/index.d.ts.map +1 -0
  28. package/dist/eventfullymanaged/pages/dashboard/DashboardPage.d.ts +2 -0
  29. package/dist/eventfullymanaged/pages/dashboard/DashboardPage.d.ts.map +1 -0
  30. package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js +79 -0
  31. package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js.map +1 -0
  32. package/dist/eventfullymanaged/pages/modules/AnalyticsPage.d.ts +2 -0
  33. package/dist/eventfullymanaged/pages/modules/AnalyticsPage.d.ts.map +1 -0
  34. package/dist/eventfullymanaged/pages/modules/AnalyticsPage.js +62 -0
  35. package/dist/eventfullymanaged/pages/modules/AnalyticsPage.js.map +1 -0
  36. package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.d.ts +2 -0
  37. package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.d.ts.map +1 -0
  38. package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.js +89 -0
  39. package/dist/eventfullymanaged/pages/modules/AttendeeProfilePage.js.map +1 -0
  40. package/dist/eventfullymanaged/pages/modules/CommunicationPage.d.ts +2 -0
  41. package/dist/eventfullymanaged/pages/modules/CommunicationPage.d.ts.map +1 -0
  42. package/dist/eventfullymanaged/pages/modules/CommunicationPage.js +81 -0
  43. package/dist/eventfullymanaged/pages/modules/CommunicationPage.js.map +1 -0
  44. package/dist/eventfullymanaged/pages/modules/EntityListSection.d.ts +14 -0
  45. package/dist/eventfullymanaged/pages/modules/EntityListSection.d.ts.map +1 -0
  46. package/dist/eventfullymanaged/pages/modules/EntityListSection.js +36 -0
  47. package/dist/eventfullymanaged/pages/modules/EntityListSection.js.map +1 -0
  48. package/dist/eventfullymanaged/pages/modules/EventsPage.d.ts +2 -0
  49. package/dist/eventfullymanaged/pages/modules/EventsPage.d.ts.map +1 -0
  50. package/dist/eventfullymanaged/pages/modules/EventsPage.js +91 -0
  51. package/dist/eventfullymanaged/pages/modules/EventsPage.js.map +1 -0
  52. package/dist/eventfullymanaged/pages/modules/KioskPage.d.ts +2 -0
  53. package/dist/eventfullymanaged/pages/modules/KioskPage.d.ts.map +1 -0
  54. package/dist/eventfullymanaged/pages/modules/KioskPage.js +52 -0
  55. package/dist/eventfullymanaged/pages/modules/KioskPage.js.map +1 -0
  56. package/dist/eventfullymanaged/pages/modules/NetworkingPage.d.ts +2 -0
  57. package/dist/eventfullymanaged/pages/modules/NetworkingPage.d.ts.map +1 -0
  58. package/dist/eventfullymanaged/pages/modules/NetworkingPage.js +65 -0
  59. package/dist/eventfullymanaged/pages/modules/NetworkingPage.js.map +1 -0
  60. package/dist/eventfullymanaged/pages/modules/OperationsHubPage.d.ts +9 -0
  61. package/dist/eventfullymanaged/pages/modules/OperationsHubPage.d.ts.map +1 -0
  62. package/dist/eventfullymanaged/pages/modules/OperationsHubPage.js +309 -0
  63. package/dist/eventfullymanaged/pages/modules/OperationsHubPage.js.map +1 -0
  64. package/dist/eventfullymanaged/pages/modules/RegistrationPage.d.ts +2 -0
  65. package/dist/eventfullymanaged/pages/modules/RegistrationPage.d.ts.map +1 -0
  66. package/dist/eventfullymanaged/pages/modules/RegistrationPage.js +73 -0
  67. package/dist/eventfullymanaged/pages/modules/RegistrationPage.js.map +1 -0
  68. package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.d.ts +2 -0
  69. package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.d.ts.map +1 -0
  70. package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.js +88 -0
  71. package/dist/eventfullymanaged/pages/modules/SponsorDetailsPage.js.map +1 -0
  72. package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.d.ts +2 -0
  73. package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.d.ts.map +1 -0
  74. package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.js +55 -0
  75. package/dist/eventfullymanaged/pages/modules/SponsorLeadsPage.js.map +1 -0
  76. package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.d.ts +2 -0
  77. package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.d.ts.map +1 -0
  78. package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.js +93 -0
  79. package/dist/eventfullymanaged/pages/modules/VenueResourcesPage.js.map +1 -0
  80. package/dist/eventfullymanaged/pages/modules/WorkflowsPage.d.ts +2 -0
  81. package/dist/eventfullymanaged/pages/modules/WorkflowsPage.d.ts.map +1 -0
  82. package/dist/eventfullymanaged/pages/modules/WorkflowsPage.js +93 -0
  83. package/dist/eventfullymanaged/pages/modules/WorkflowsPage.js.map +1 -0
  84. package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.d.ts +2 -0
  85. package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.d.ts.map +1 -0
  86. package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.js +257 -0
  87. package/dist/eventfullymanaged/pages/sponsors/SponsorFormPage.js.map +1 -0
  88. package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.d.ts +2 -0
  89. package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.d.ts.map +1 -0
  90. package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.js +131 -0
  91. package/dist/eventfullymanaged/pages/sponsors/SponsorsListPage.js.map +1 -0
  92. package/dist/eventfullymanaged/pages/venues/FloorPlansPage.d.ts +2 -0
  93. package/dist/eventfullymanaged/pages/venues/FloorPlansPage.d.ts.map +1 -0
  94. package/dist/eventfullymanaged/pages/venues/FloorPlansPage.js +91 -0
  95. package/dist/eventfullymanaged/pages/venues/FloorPlansPage.js.map +1 -0
  96. package/dist/eventfullymanaged/pages/venues/VenueDetailPage.d.ts +2 -0
  97. package/dist/eventfullymanaged/pages/venues/VenueDetailPage.d.ts.map +1 -0
  98. package/dist/eventfullymanaged/pages/venues/VenueDetailPage.js +142 -0
  99. package/dist/eventfullymanaged/pages/venues/VenueDetailPage.js.map +1 -0
  100. package/dist/eventfullymanaged/pages/venues/VenueFormPage.d.ts +2 -0
  101. package/dist/eventfullymanaged/pages/venues/VenueFormPage.d.ts.map +1 -0
  102. package/dist/eventfullymanaged/pages/venues/VenueFormPage.js +250 -0
  103. package/dist/eventfullymanaged/pages/venues/VenueFormPage.js.map +1 -0
  104. package/dist/eventfullymanaged/pages/venues/VenueListPage.d.ts +2 -0
  105. package/dist/eventfullymanaged/pages/venues/VenueListPage.d.ts.map +1 -0
  106. package/dist/eventfullymanaged/pages/venues/VenueListPage.js +94 -0
  107. package/dist/eventfullymanaged/pages/venues/VenueListPage.js.map +1 -0
  108. package/dist/eventfullymanaged/store/eventfullyManagedStore.d.ts +47 -0
  109. package/dist/eventfullymanaged/store/eventfullyManagedStore.d.ts.map +1 -0
  110. package/dist/eventfullymanaged/types/index.d.ts +3649 -0
  111. package/dist/eventfullymanaged/types/index.d.ts.map +1 -0
  112. package/dist/eventfullymanaged/utils/cn.d.ts +2 -0
  113. package/dist/eventfullymanaged/utils/cn.d.ts.map +1 -0
  114. package/dist/eventfullymanaged/utils/cn.js +2 -0
  115. package/dist/eventfullymanaged/utils/constants.d.ts +3 -0
  116. package/dist/eventfullymanaged/utils/constants.d.ts.map +1 -0
  117. package/dist/eventfullymanaged/utils/navigation.d.ts +2 -0
  118. package/dist/eventfullymanaged/utils/navigation.d.ts.map +1 -0
  119. package/dist/generated/global-operations.d.ts +2 -0
  120. package/dist/generated/global-operations.d.ts.map +1 -0
  121. package/dist/generated/global-types.d.ts +20716 -0
  122. package/dist/generated/global-types.d.ts.map +1 -0
  123. package/dist/generated/wspace-operations.d.ts +2 -0
  124. package/dist/generated/wspace-operations.d.ts.map +1 -0
  125. package/dist/generated/wspace-types.d.ts +53363 -0
  126. package/dist/generated/wspace-types.d.ts.map +1 -0
  127. package/dist/index.d.ts +8 -0
  128. package/dist/index.d.ts.map +1 -0
  129. package/dist/index.js +2 -0
  130. package/dist/node_modules/@apollo/client/core/networkStatus.js +9 -0
  131. package/dist/node_modules/@apollo/client/core/networkStatus.js.map +1 -0
  132. package/dist/node_modules/@apollo/client/react/context/ApolloContext.js +18 -0
  133. package/dist/node_modules/@apollo/client/react/context/ApolloContext.js.map +1 -0
  134. package/dist/node_modules/@apollo/client/react/hooks/constants.js +6 -0
  135. package/dist/node_modules/@apollo/client/react/hooks/constants.js.map +1 -0
  136. package/dist/node_modules/@apollo/client/react/hooks/internal/useDeepMemo.js +14 -0
  137. package/dist/node_modules/@apollo/client/react/hooks/internal/useDeepMemo.js.map +1 -0
  138. package/dist/node_modules/@apollo/client/react/hooks/internal/useIsomorphicLayoutEffect.js +8 -0
  139. package/dist/node_modules/@apollo/client/react/hooks/internal/useIsomorphicLayoutEffect.js.map +1 -0
  140. package/dist/node_modules/@apollo/client/react/hooks/internal/wrapHook.js +16 -0
  141. package/dist/node_modules/@apollo/client/react/hooks/internal/wrapHook.js.map +1 -0
  142. package/dist/node_modules/@apollo/client/react/hooks/useApolloClient.js +12 -0
  143. package/dist/node_modules/@apollo/client/react/hooks/useApolloClient.js.map +1 -0
  144. package/dist/node_modules/@apollo/client/react/hooks/useMutation.js +99 -0
  145. package/dist/node_modules/@apollo/client/react/hooks/useMutation.js.map +1 -0
  146. package/dist/node_modules/@apollo/client/react/hooks/useQuery.js +129 -0
  147. package/dist/node_modules/@apollo/client/react/hooks/useQuery.js.map +1 -0
  148. package/dist/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js +37 -0
  149. package/dist/node_modules/@apollo/client/react/hooks/useSyncExternalStore.js.map +1 -0
  150. package/dist/node_modules/@apollo/client/react/internal/index.js +6 -0
  151. package/dist/node_modules/@apollo/client/react/internal/index.js.map +1 -0
  152. package/dist/node_modules/@apollo/client/utilities/internal/canUseDOM.js +7 -0
  153. package/dist/node_modules/@apollo/client/utilities/internal/canUseDOM.js.map +1 -0
  154. package/dist/node_modules/@apollo/client/utilities/internal/compact.js +14 -0
  155. package/dist/node_modules/@apollo/client/utilities/internal/compact.js.map +1 -0
  156. package/dist/node_modules/@apollo/client/utilities/internal/constants.js +6 -0
  157. package/dist/node_modules/@apollo/client/utilities/internal/constants.js.map +1 -0
  158. package/dist/node_modules/@apollo/client/utilities/internal/deepFreeze.js +17 -0
  159. package/dist/node_modules/@apollo/client/utilities/internal/deepFreeze.js.map +1 -0
  160. package/dist/node_modules/@apollo/client/utilities/internal/globals/global.js +9 -0
  161. package/dist/node_modules/@apollo/client/utilities/internal/globals/global.js.map +1 -0
  162. package/dist/node_modules/@apollo/client/utilities/internal/globals/maybe.js +10 -0
  163. package/dist/node_modules/@apollo/client/utilities/internal/globals/maybe.js.map +1 -0
  164. package/dist/node_modules/@apollo/client/utilities/internal/isNonNullObject.js +8 -0
  165. package/dist/node_modules/@apollo/client/utilities/internal/isNonNullObject.js.map +1 -0
  166. package/dist/node_modules/@apollo/client/utilities/internal/makeUniqueId.js +10 -0
  167. package/dist/node_modules/@apollo/client/utilities/internal/makeUniqueId.js.map +1 -0
  168. package/dist/node_modules/@apollo/client/utilities/internal/maybeDeepFreeze.js +9 -0
  169. package/dist/node_modules/@apollo/client/utilities/internal/maybeDeepFreeze.js.map +1 -0
  170. package/dist/node_modules/@apollo/client/utilities/internal/mergeOptions.js +12 -0
  171. package/dist/node_modules/@apollo/client/utilities/internal/mergeOptions.js.map +1 -0
  172. package/dist/node_modules/@apollo/client/utilities/internal/preventUnhandledRejection.js +8 -0
  173. package/dist/node_modules/@apollo/client/utilities/internal/preventUnhandledRejection.js.map +1 -0
  174. package/dist/node_modules/@apollo/client/utilities/internal/stringifyForDisplay.js +10 -0
  175. package/dist/node_modules/@apollo/client/utilities/internal/stringifyForDisplay.js.map +1 -0
  176. package/dist/node_modules/@apollo/client/utilities/invariant/index.js +57 -0
  177. package/dist/node_modules/@apollo/client/utilities/invariant/index.js.map +1 -0
  178. package/dist/node_modules/@apollo/client/version.js +6 -0
  179. package/dist/node_modules/@apollo/client/version.js.map +1 -0
  180. package/dist/node_modules/@wry/equality/lib/index.js +89 -0
  181. package/dist/node_modules/@wry/equality/lib/index.js.map +1 -0
  182. package/dist/node_modules/graphql/error/GraphQLError.js +65 -0
  183. package/dist/node_modules/graphql/error/GraphQLError.js.map +1 -0
  184. package/dist/node_modules/graphql/error/syntaxError.js +12 -0
  185. package/dist/node_modules/graphql/error/syntaxError.js.map +1 -0
  186. package/dist/node_modules/graphql/jsutils/devAssert.js +8 -0
  187. package/dist/node_modules/graphql/jsutils/devAssert.js.map +1 -0
  188. package/dist/node_modules/graphql/jsutils/inspect.js +49 -0
  189. package/dist/node_modules/graphql/jsutils/inspect.js.map +1 -0
  190. package/dist/node_modules/graphql/jsutils/instanceOf.js +29 -0
  191. package/dist/node_modules/graphql/jsutils/instanceOf.js.map +1 -0
  192. package/dist/node_modules/graphql/jsutils/invariant.js +8 -0
  193. package/dist/node_modules/graphql/jsutils/invariant.js.map +1 -0
  194. package/dist/node_modules/graphql/jsutils/isObjectLike.js +8 -0
  195. package/dist/node_modules/graphql/jsutils/isObjectLike.js.map +1 -0
  196. package/dist/node_modules/graphql/language/ast.js +201 -0
  197. package/dist/node_modules/graphql/language/ast.js.map +1 -0
  198. package/dist/node_modules/graphql/language/blockString.js +19 -0
  199. package/dist/node_modules/graphql/language/blockString.js.map +1 -0
  200. package/dist/node_modules/graphql/language/characterClasses.js +20 -0
  201. package/dist/node_modules/graphql/language/characterClasses.js.map +1 -0
  202. package/dist/node_modules/graphql/language/directiveLocation.js +9 -0
  203. package/dist/node_modules/graphql/language/directiveLocation.js.map +1 -0
  204. package/dist/node_modules/graphql/language/kinds.js +9 -0
  205. package/dist/node_modules/graphql/language/kinds.js.map +1 -0
  206. package/dist/node_modules/graphql/language/lexer.js +248 -0
  207. package/dist/node_modules/graphql/language/lexer.js.map +1 -0
  208. package/dist/node_modules/graphql/language/location.js +18 -0
  209. package/dist/node_modules/graphql/language/location.js.map +1 -0
  210. package/dist/node_modules/graphql/language/parser.js +688 -0
  211. package/dist/node_modules/graphql/language/parser.js.map +1 -0
  212. package/dist/node_modules/graphql/language/printLocation.js +32 -0
  213. package/dist/node_modules/graphql/language/printLocation.js.map +1 -0
  214. package/dist/node_modules/graphql/language/source.js +22 -0
  215. package/dist/node_modules/graphql/language/source.js.map +1 -0
  216. package/dist/node_modules/graphql/language/tokenKind.js +9 -0
  217. package/dist/node_modules/graphql/language/tokenKind.js.map +1 -0
  218. package/dist/node_modules/graphql-tag/lib/index.js +76 -0
  219. package/dist/node_modules/graphql-tag/lib/index.js.map +1 -0
  220. package/dist/node_modules/graphql-tag/node_modules/tslib/tslib.es6.js +11 -0
  221. package/dist/node_modules/graphql-tag/node_modules/tslib/tslib.es6.js.map +1 -0
  222. package/dist/node_modules/rxjs/dist/esm5/internal/NotificationFactories.js +21 -0
  223. package/dist/node_modules/rxjs/dist/esm5/internal/NotificationFactories.js.map +1 -0
  224. package/dist/node_modules/rxjs/dist/esm5/internal/Scheduler.js +14 -0
  225. package/dist/node_modules/rxjs/dist/esm5/internal/Scheduler.js.map +1 -0
  226. package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js +117 -0
  227. package/dist/node_modules/rxjs/dist/esm5/internal/Subscriber.js.map +1 -0
  228. package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js +93 -0
  229. package/dist/node_modules/rxjs/dist/esm5/internal/Subscription.js.map +1 -0
  230. package/dist/node_modules/rxjs/dist/esm5/internal/config.js +12 -0
  231. package/dist/node_modules/rxjs/dist/esm5/internal/config.js.map +1 -0
  232. package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js +46 -0
  233. package/dist/node_modules/rxjs/dist/esm5/internal/operators/OperatorSubscriber.js.map +1 -0
  234. package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js +25 -0
  235. package/dist/node_modules/rxjs/dist/esm5/internal/operators/observeOn.js.map +1 -0
  236. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/Action.js +16 -0
  237. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/Action.js.map +1 -0
  238. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapAction.js +22 -0
  239. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapAction.js.map +1 -0
  240. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapScheduler.js +27 -0
  241. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsapScheduler.js.map +1 -0
  242. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js +46 -0
  243. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncAction.js.map +1 -0
  244. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js +31 -0
  245. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/AsyncScheduler.js.map +1 -0
  246. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/asap.js +8 -0
  247. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/asap.js.map +1 -0
  248. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js +11 -0
  249. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/dateTimestampProvider.js.map +1 -0
  250. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/immediateProvider.js +17 -0
  251. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/immediateProvider.js.map +1 -0
  252. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js +16 -0
  253. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/intervalProvider.js.map +1 -0
  254. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js +16 -0
  255. package/dist/node_modules/rxjs/dist/esm5/internal/scheduler/timeoutProvider.js.map +1 -0
  256. package/dist/node_modules/rxjs/dist/esm5/internal/util/Immediate.js +20 -0
  257. package/dist/node_modules/rxjs/dist/esm5/internal/util/Immediate.js.map +1 -0
  258. package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js +13 -0
  259. package/dist/node_modules/rxjs/dist/esm5/internal/util/UnsubscriptionError.js.map +1 -0
  260. package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js +11 -0
  261. package/dist/node_modules/rxjs/dist/esm5/internal/util/arrRemove.js.map +1 -0
  262. package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js +11 -0
  263. package/dist/node_modules/rxjs/dist/esm5/internal/util/createErrorClass.js.map +1 -0
  264. package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js +10 -0
  265. package/dist/node_modules/rxjs/dist/esm5/internal/util/errorContext.js.map +1 -0
  266. package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js +12 -0
  267. package/dist/node_modules/rxjs/dist/esm5/internal/util/executeSchedule.js.map +1 -0
  268. package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js +8 -0
  269. package/dist/node_modules/rxjs/dist/esm5/internal/util/isFunction.js.map +1 -0
  270. package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js +21 -0
  271. package/dist/node_modules/rxjs/dist/esm5/internal/util/lift.js.map +1 -0
  272. package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js +6 -0
  273. package/dist/node_modules/rxjs/dist/esm5/internal/util/noop.js.map +1 -0
  274. package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js +14 -0
  275. package/dist/node_modules/rxjs/dist/esm5/internal/util/reportUnhandledError.js.map +1 -0
  276. package/dist/node_modules/rxjs/node_modules/tslib/tslib.es6.js +52 -0
  277. package/dist/node_modules/rxjs/node_modules/tslib/tslib.es6.js.map +1 -0
  278. package/package.json +97 -0
@@ -0,0 +1,257 @@
1
+ import { useEventfullyManaged as e } from "../../context/EventfullyManagedContext.js";
2
+ import { useCreateSponsorMutation as t, useEventsQuery as n, useSponsorsQuery as r, useUpdateSponsorMutation as i } from "../../api/eventApi.js";
3
+ import { useEffect as a, useMemo as o, useState as s } from "react";
4
+ import { useParams as c } from "react-router-dom";
5
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
6
+ import { ArrowLeft as d, Save as f } from "lucide-react";
7
+ //#region src/eventfullymanaged/pages/sponsors/SponsorFormPage.tsx
8
+ var p = {
9
+ eventId: "",
10
+ name: "",
11
+ level: "BRONZE",
12
+ website: "",
13
+ contactName: "",
14
+ contactEmail: "",
15
+ contactPhone: "",
16
+ value: "0",
17
+ leads: "0"
18
+ };
19
+ function m() {
20
+ let { id: m = "" } = c(), h = o(() => !!m, [m]), { navigate: g } = e(), { data: _ } = n({
21
+ limit: 100,
22
+ offset: 0
23
+ }), { data: v } = r({
24
+ limit: 100,
25
+ offset: 0
26
+ }), y = o(() => (v?.sponsors?.items ?? []).find((e) => e.id === m), [m, v]), [b, { loading: x }] = t(), [S, { loading: C }] = i(), [w, T] = s(() => y ? {
27
+ eventId: y.eventId ?? "",
28
+ name: y.name ?? "",
29
+ level: y.level ?? "BRONZE",
30
+ website: y.website ?? "",
31
+ contactName: y.contactName ?? "",
32
+ contactEmail: y.contactEmail ?? "",
33
+ contactPhone: y.contactPhone ?? "",
34
+ value: String(y.metrics?.value ?? 0),
35
+ leads: String(y.metrics?.leads ?? 0)
36
+ } : p);
37
+ a(() => {
38
+ y && T({
39
+ eventId: y.eventId ?? "",
40
+ name: y.name ?? "",
41
+ level: y.level ?? "BRONZE",
42
+ website: y.website ?? "",
43
+ contactName: y.contactName ?? "",
44
+ contactEmail: y.contactEmail ?? "",
45
+ contactPhone: y.contactPhone ?? "",
46
+ value: String(y.metrics?.value ?? 0),
47
+ leads: String(y.metrics?.leads ?? 0)
48
+ });
49
+ }, [y]);
50
+ let E = (e, t) => {
51
+ T((n) => ({
52
+ ...n,
53
+ [e]: t
54
+ }));
55
+ }, D = async (e) => {
56
+ e.preventDefault();
57
+ let t = {
58
+ eventId: w.eventId,
59
+ name: w.name,
60
+ level: w.level,
61
+ website: w.website,
62
+ contactName: w.contactName,
63
+ contactEmail: w.contactEmail,
64
+ contactPhone: w.contactPhone,
65
+ metrics: {
66
+ value: Number(w.value || 0),
67
+ leads: Number(w.leads || 0)
68
+ },
69
+ metadata: {}
70
+ };
71
+ if (h) {
72
+ await S({ variables: {
73
+ id: m,
74
+ input: t
75
+ } }), g("/sponsors");
76
+ return;
77
+ }
78
+ await b({ variables: { input: t } }), g("/sponsors");
79
+ }, O = x || C, k = _?.events?.items ?? [];
80
+ return /* @__PURE__ */ u("div", {
81
+ className: "space-y-6 p-6",
82
+ children: [/* @__PURE__ */ u("div", { children: [/* @__PURE__ */ u("button", {
83
+ type: "button",
84
+ onClick: () => g("/sponsors"),
85
+ className: "inline-flex items-center gap-2 text-sm text-text-secondary hover:text-text-primary",
86
+ children: [/* @__PURE__ */ l(d, { className: "h-4 w-4" }), "Back to Sponsors"]
87
+ }), /* @__PURE__ */ l("h1", {
88
+ className: "mt-3 text-2xl font-bold text-text-primary",
89
+ children: h ? "Edit Sponsor" : "Create Sponsor"
90
+ })] }), /* @__PURE__ */ u("form", {
91
+ onSubmit: D,
92
+ className: "space-y-4 rounded-lg border border-border-default bg-bg-surface p-5",
93
+ children: [
94
+ /* @__PURE__ */ u("div", {
95
+ className: "grid grid-cols-1 gap-4 md:grid-cols-2",
96
+ children: [/* @__PURE__ */ u("label", {
97
+ className: "space-y-1 text-sm",
98
+ children: [/* @__PURE__ */ l("span", {
99
+ className: "font-medium text-text-primary",
100
+ children: "Event"
101
+ }), /* @__PURE__ */ u("select", {
102
+ value: w.eventId,
103
+ onChange: (e) => E("eventId", e.target.value),
104
+ required: !0,
105
+ className: "w-full rounded-md border border-border-default px-3 py-2",
106
+ children: [/* @__PURE__ */ l("option", {
107
+ value: "",
108
+ children: "Select Event"
109
+ }), k.map((e) => /* @__PURE__ */ l("option", {
110
+ value: e.id,
111
+ children: e.name
112
+ }, e.id))]
113
+ })]
114
+ }), /* @__PURE__ */ u("label", {
115
+ className: "space-y-1 text-sm",
116
+ children: [/* @__PURE__ */ l("span", {
117
+ className: "font-medium text-text-primary",
118
+ children: "Sponsor Name"
119
+ }), /* @__PURE__ */ l("input", {
120
+ value: w.name,
121
+ onChange: (e) => E("name", e.target.value),
122
+ required: !0,
123
+ className: "w-full rounded-md border border-border-default px-3 py-2"
124
+ })]
125
+ })]
126
+ }),
127
+ /* @__PURE__ */ u("div", {
128
+ className: "grid grid-cols-1 gap-4 md:grid-cols-3",
129
+ children: [
130
+ /* @__PURE__ */ u("label", {
131
+ className: "space-y-1 text-sm",
132
+ children: [/* @__PURE__ */ l("span", {
133
+ className: "font-medium text-text-primary",
134
+ children: "Level"
135
+ }), /* @__PURE__ */ u("select", {
136
+ value: w.level,
137
+ onChange: (e) => E("level", e.target.value),
138
+ className: "w-full rounded-md border border-border-default px-3 py-2",
139
+ children: [
140
+ /* @__PURE__ */ l("option", {
141
+ value: "PLATINUM",
142
+ children: "Platinum"
143
+ }),
144
+ /* @__PURE__ */ l("option", {
145
+ value: "GOLD",
146
+ children: "Gold"
147
+ }),
148
+ /* @__PURE__ */ l("option", {
149
+ value: "SILVER",
150
+ children: "Silver"
151
+ }),
152
+ /* @__PURE__ */ l("option", {
153
+ value: "BRONZE",
154
+ children: "Bronze"
155
+ }),
156
+ /* @__PURE__ */ l("option", {
157
+ value: "COMMUNITY",
158
+ children: "Community"
159
+ })
160
+ ]
161
+ })]
162
+ }),
163
+ /* @__PURE__ */ u("label", {
164
+ className: "space-y-1 text-sm",
165
+ children: [/* @__PURE__ */ l("span", {
166
+ className: "font-medium text-text-primary",
167
+ children: "Value"
168
+ }), /* @__PURE__ */ l("input", {
169
+ type: "number",
170
+ min: "0",
171
+ value: w.value,
172
+ onChange: (e) => E("value", e.target.value),
173
+ className: "w-full rounded-md border border-border-default px-3 py-2"
174
+ })]
175
+ }),
176
+ /* @__PURE__ */ u("label", {
177
+ className: "space-y-1 text-sm",
178
+ children: [/* @__PURE__ */ l("span", {
179
+ className: "font-medium text-text-primary",
180
+ children: "Leads"
181
+ }), /* @__PURE__ */ l("input", {
182
+ type: "number",
183
+ min: "0",
184
+ value: w.leads,
185
+ onChange: (e) => E("leads", e.target.value),
186
+ className: "w-full rounded-md border border-border-default px-3 py-2"
187
+ })]
188
+ })
189
+ ]
190
+ }),
191
+ /* @__PURE__ */ u("label", {
192
+ className: "block space-y-1 text-sm",
193
+ children: [/* @__PURE__ */ l("span", {
194
+ className: "font-medium text-text-primary",
195
+ children: "Website"
196
+ }), /* @__PURE__ */ l("input", {
197
+ value: w.website,
198
+ onChange: (e) => E("website", e.target.value),
199
+ className: "w-full rounded-md border border-border-default px-3 py-2"
200
+ })]
201
+ }),
202
+ /* @__PURE__ */ u("div", {
203
+ className: "grid grid-cols-1 gap-4 md:grid-cols-3",
204
+ children: [
205
+ /* @__PURE__ */ u("label", {
206
+ className: "space-y-1 text-sm",
207
+ children: [/* @__PURE__ */ l("span", {
208
+ className: "font-medium text-text-primary",
209
+ children: "Contact Name"
210
+ }), /* @__PURE__ */ l("input", {
211
+ value: w.contactName,
212
+ onChange: (e) => E("contactName", e.target.value),
213
+ className: "w-full rounded-md border border-border-default px-3 py-2"
214
+ })]
215
+ }),
216
+ /* @__PURE__ */ u("label", {
217
+ className: "space-y-1 text-sm",
218
+ children: [/* @__PURE__ */ l("span", {
219
+ className: "font-medium text-text-primary",
220
+ children: "Contact Email"
221
+ }), /* @__PURE__ */ l("input", {
222
+ type: "email",
223
+ value: w.contactEmail,
224
+ onChange: (e) => E("contactEmail", e.target.value),
225
+ className: "w-full rounded-md border border-border-default px-3 py-2"
226
+ })]
227
+ }),
228
+ /* @__PURE__ */ u("label", {
229
+ className: "space-y-1 text-sm",
230
+ children: [/* @__PURE__ */ l("span", {
231
+ className: "font-medium text-text-primary",
232
+ children: "Contact Phone"
233
+ }), /* @__PURE__ */ l("input", {
234
+ value: w.contactPhone,
235
+ onChange: (e) => E("contactPhone", e.target.value),
236
+ className: "w-full rounded-md border border-border-default px-3 py-2"
237
+ })]
238
+ })
239
+ ]
240
+ }),
241
+ /* @__PURE__ */ l("div", {
242
+ className: "flex justify-end",
243
+ children: /* @__PURE__ */ u("button", {
244
+ type: "submit",
245
+ disabled: O,
246
+ 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",
247
+ children: [/* @__PURE__ */ l(f, { className: "mr-2 h-4 w-4" }), O ? "Saving..." : "Save Sponsor"]
248
+ })
249
+ })
250
+ ]
251
+ })]
252
+ });
253
+ }
254
+ //#endregion
255
+ export { m as default };
256
+
257
+ //# sourceMappingURL=SponsorFormPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SponsorFormPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/sponsors/SponsorFormPage.tsx"],"sourcesContent":["/* eslint-disable react-hooks/set-state-in-effect */\nimport { ArrowLeft, Save } from 'lucide-react';\nimport { useEffect, useMemo, useState } from 'react';\nimport { useParams } from 'react-router-dom';\n\nimport {\n useCreateSponsorMutation,\n useEventsQuery,\n useSponsorsQuery,\n useUpdateSponsorMutation,\n} from '../../api/eventApi';\nimport { useEventfullyManaged } from '../../context/EventfullyManagedContext';\n\ntype SponsorFormState = {\n eventId: string;\n name: string;\n level: string;\n website: string;\n contactName: string;\n contactEmail: string;\n contactPhone: string;\n value: string;\n leads: string;\n};\n\nconst initialState: SponsorFormState = {\n eventId: '',\n name: '',\n level: 'BRONZE',\n website: '',\n contactName: '',\n contactEmail: '',\n contactPhone: '',\n value: '0',\n leads: '0',\n};\n\nexport default function SponsorFormPage() {\n const { id = '' } = useParams<{ id: string }>();\n const isEdit = useMemo(() => Boolean(id), [id]);\n const { navigate } = useEventfullyManaged();\n\n const { data: eventsData } = useEventsQuery({ limit: 100, offset: 0 });\n const { data: sponsorsData } = useSponsorsQuery({ limit: 100, offset: 0 });\n\n const existingSponsor = useMemo(\n () => (sponsorsData?.sponsors?.items ?? []).find((item: { id: string }) => item.id === id),\n [id, sponsorsData]\n );\n\n const [createSponsor, { loading: creating }] = useCreateSponsorMutation();\n const [updateSponsor, { loading: updating }] = useUpdateSponsorMutation();\n const [form, setForm] = useState<SponsorFormState>(() => {\n if (!existingSponsor) {\n return initialState;\n }\n return {\n eventId: existingSponsor.eventId ?? '',\n name: existingSponsor.name ?? '',\n level: existingSponsor.level ?? 'BRONZE',\n website: existingSponsor.website ?? '',\n contactName: existingSponsor.contactName ?? '',\n contactEmail: existingSponsor.contactEmail ?? '',\n contactPhone: existingSponsor.contactPhone ?? '',\n value: String(existingSponsor.metrics?.value ?? 0),\n leads: String(existingSponsor.metrics?.leads ?? 0),\n };\n });\n\n useEffect(() => {\n if (!existingSponsor) {\n return;\n }\n setForm({\n eventId: existingSponsor.eventId ?? '',\n name: existingSponsor.name ?? '',\n level: existingSponsor.level ?? 'BRONZE',\n website: existingSponsor.website ?? '',\n contactName: existingSponsor.contactName ?? '',\n contactEmail: existingSponsor.contactEmail ?? '',\n contactPhone: existingSponsor.contactPhone ?? '',\n value: String(existingSponsor.metrics?.value ?? 0),\n leads: String(existingSponsor.metrics?.leads ?? 0),\n });\n }, [existingSponsor]);\n\n const onChange = (field: keyof SponsorFormState, value: string) => {\n setForm((prev) => ({ ...prev, [field]: value }));\n };\n\n const onSubmit = async (event: React.FormEvent<HTMLFormElement>) => {\n event.preventDefault();\n const input = {\n eventId: form.eventId,\n name: form.name,\n level: form.level,\n website: form.website,\n contactName: form.contactName,\n contactEmail: form.contactEmail,\n contactPhone: form.contactPhone,\n metrics: {\n value: Number(form.value || 0),\n leads: Number(form.leads || 0),\n },\n metadata: {},\n };\n\n if (isEdit) {\n await updateSponsor({ variables: { id, input } });\n navigate('/sponsors');\n return;\n }\n\n await createSponsor({ variables: { input } });\n navigate('/sponsors');\n };\n\n const saving = creating || updating;\n const events = eventsData?.events?.items ?? [];\n\n return (\n <div className=\"space-y-6 p-6\">\n <div>\n <button\n type=\"button\"\n onClick={() => navigate('/sponsors')}\n className=\"inline-flex items-center gap-2 text-sm text-text-secondary hover:text-text-primary\"\n >\n <ArrowLeft className=\"h-4 w-4\" />\n Back to Sponsors\n </button>\n <h1 className=\"mt-3 text-2xl font-bold text-text-primary\">{isEdit ? 'Edit Sponsor' : 'Create Sponsor'}</h1>\n </div>\n\n <form onSubmit={onSubmit} className=\"space-y-4 rounded-lg border border-border-default bg-bg-surface p-5\">\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-2\">\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Event</span>\n <select\n value={form.eventId}\n onChange={(e) => onChange('eventId', e.target.value)}\n required\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n >\n <option value=\"\">Select Event</option>\n {events.map((eventItem: { id: string; name: string }) => (\n <option key={eventItem.id} value={eventItem.id}>\n {eventItem.name}\n </option>\n ))}\n </select>\n </label>\n\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Sponsor Name</span>\n <input\n value={form.name}\n onChange={(e) => onChange('name', e.target.value)}\n required\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n </div>\n\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-3\">\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Level</span>\n <select\n value={form.level}\n onChange={(e) => onChange('level', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n >\n <option value=\"PLATINUM\">Platinum</option>\n <option value=\"GOLD\">Gold</option>\n <option value=\"SILVER\">Silver</option>\n <option value=\"BRONZE\">Bronze</option>\n <option value=\"COMMUNITY\">Community</option>\n </select>\n </label>\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Value</span>\n <input\n type=\"number\"\n min=\"0\"\n value={form.value}\n onChange={(e) => onChange('value', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Leads</span>\n <input\n type=\"number\"\n min=\"0\"\n value={form.leads}\n onChange={(e) => onChange('leads', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n </div>\n\n <label className=\"block space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Website</span>\n <input\n value={form.website}\n onChange={(e) => onChange('website', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-3\">\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Contact Name</span>\n <input\n value={form.contactName}\n onChange={(e) => onChange('contactName', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Contact Email</span>\n <input\n type=\"email\"\n value={form.contactEmail}\n onChange={(e) => onChange('contactEmail', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n <label className=\"space-y-1 text-sm\">\n <span className=\"font-medium text-text-primary\">Contact Phone</span>\n <input\n value={form.contactPhone}\n onChange={(e) => onChange('contactPhone', e.target.value)}\n className=\"w-full rounded-md border border-border-default px-3 py-2\"\n />\n </label>\n </div>\n\n <div className=\"flex justify-end\">\n <button\n type=\"submit\"\n disabled={saving}\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 <Save className=\"mr-2 h-4 w-4\" />\n {saving ? 'Saving...' : 'Save Sponsor'}\n </button>\n </div>\n </form>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export default function SponsorsListPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=SponsorsListPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SponsorsListPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/sponsors/SponsorsListPage.tsx"],"names":[],"mappings":"AAkBA,MAAM,CAAC,OAAO,UAAU,gBAAgB,4CAoHvC"}
@@ -0,0 +1,131 @@
1
+ import { useEventfullyManaged as e } from "../../context/EventfullyManagedContext.js";
2
+ import { useSponsorsQuery as t } from "../../api/eventApi.js";
3
+ import { useMemo as n, useState as r } from "react";
4
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
5
+ import { Building2 as o, Mail as s, Phone as c, Plus as l, Search as u } from "lucide-react";
6
+ //#region src/eventfullymanaged/pages/sponsors/SponsorsListPage.tsx
7
+ function d() {
8
+ let { navigate: d } = e(), [f, p] = r(""), { data: m, loading: h } = t({
9
+ search: f,
10
+ limit: 100,
11
+ offset: 0
12
+ }), g = n(() => m?.sponsors?.items ?? [], [m]), _ = g.reduce((e, t) => e + Number(t.metrics?.value ?? 0), 0), v = g.reduce((e, t) => e + Number(t.metrics?.leads ?? 0), 0);
13
+ return /* @__PURE__ */ a("div", {
14
+ className: "space-y-6 p-6",
15
+ children: [
16
+ /* @__PURE__ */ a("div", {
17
+ className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
18
+ children: [/* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("h1", {
19
+ className: "text-2xl font-bold text-text-primary",
20
+ children: "Sponsors"
21
+ }), /* @__PURE__ */ i("p", {
22
+ className: "mt-1 text-sm text-text-secondary",
23
+ children: "Manage event sponsors with live API data."
24
+ })] }), /* @__PURE__ */ a("button", {
25
+ type: "button",
26
+ onClick: () => d("/sponsors/create"),
27
+ 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",
28
+ children: [/* @__PURE__ */ i(l, { className: "mr-2 h-4 w-4" }), "Add Sponsor"]
29
+ })]
30
+ }),
31
+ /* @__PURE__ */ a("div", {
32
+ className: "grid grid-cols-1 gap-4 md:grid-cols-3",
33
+ children: [
34
+ /* @__PURE__ */ a("div", {
35
+ className: "rounded-lg border border-border-default bg-bg-surface p-4",
36
+ children: [/* @__PURE__ */ i("p", {
37
+ className: "text-sm text-text-secondary",
38
+ children: "Total Sponsors"
39
+ }), /* @__PURE__ */ i("p", {
40
+ className: "mt-1 text-2xl font-bold text-text-primary",
41
+ children: g.length
42
+ })]
43
+ }),
44
+ /* @__PURE__ */ a("div", {
45
+ className: "rounded-lg border border-border-default bg-bg-surface p-4",
46
+ children: [/* @__PURE__ */ i("p", {
47
+ className: "text-sm text-text-secondary",
48
+ children: "Total Contract Value"
49
+ }), /* @__PURE__ */ a("p", {
50
+ className: "mt-1 text-2xl font-bold text-text-primary",
51
+ children: ["$", _.toLocaleString()]
52
+ })]
53
+ }),
54
+ /* @__PURE__ */ a("div", {
55
+ className: "rounded-lg border border-border-default bg-bg-surface p-4",
56
+ children: [/* @__PURE__ */ i("p", {
57
+ className: "text-sm text-text-secondary",
58
+ children: "Total Leads"
59
+ }), /* @__PURE__ */ i("p", {
60
+ className: "mt-1 text-2xl font-bold text-text-primary",
61
+ children: v.toLocaleString()
62
+ })]
63
+ })
64
+ ]
65
+ }),
66
+ /* @__PURE__ */ a("div", {
67
+ className: "relative",
68
+ children: [/* @__PURE__ */ i(u, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-muted" }), /* @__PURE__ */ i("input", {
69
+ type: "text",
70
+ value: f,
71
+ onChange: (e) => p(e.target.value),
72
+ placeholder: "Search sponsors",
73
+ className: "w-full rounded-md border border-border-default bg-bg-surface py-2 pl-10 pr-4 text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-action-primary-bg"
74
+ })]
75
+ }),
76
+ h ? /* @__PURE__ */ i("div", {
77
+ className: "rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary",
78
+ children: "Loading sponsors..."
79
+ }) : /* @__PURE__ */ a("div", {
80
+ className: "space-y-4",
81
+ children: [g.map((e) => /* @__PURE__ */ a("div", {
82
+ className: "rounded-lg border border-border-default bg-bg-surface p-5",
83
+ children: [/* @__PURE__ */ a("div", {
84
+ className: "flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",
85
+ children: [/* @__PURE__ */ a("div", { children: [/* @__PURE__ */ i("button", {
86
+ type: "button",
87
+ onClick: () => d(`/sponsors/${e.id}/edit`),
88
+ className: "text-left text-lg font-semibold text-text-primary hover:text-blue-600",
89
+ children: e.name
90
+ }), /* @__PURE__ */ a("div", {
91
+ className: "mt-1 flex items-center gap-2 text-sm text-text-secondary",
92
+ children: [/* @__PURE__ */ i(o, { className: "h-4 w-4" }), /* @__PURE__ */ i("span", {
93
+ className: "uppercase",
94
+ children: e.level
95
+ })]
96
+ })] }), /* @__PURE__ */ a("div", {
97
+ className: "text-sm text-text-secondary",
98
+ children: [/* @__PURE__ */ a("p", { children: ["Value: $", Number(e.metrics?.value ?? 0).toLocaleString()] }), /* @__PURE__ */ a("p", { children: ["Leads: ", Number(e.metrics?.leads ?? 0).toLocaleString()] })]
99
+ })]
100
+ }), /* @__PURE__ */ a("div", {
101
+ className: "mt-4 grid grid-cols-1 gap-2 text-sm text-text-secondary sm:grid-cols-3",
102
+ children: [
103
+ /* @__PURE__ */ a("div", {
104
+ className: "flex items-center gap-2",
105
+ children: [/* @__PURE__ */ i(s, { className: "h-4 w-4" }), /* @__PURE__ */ i("span", { children: e.contactEmail ?? "No email" })]
106
+ }),
107
+ /* @__PURE__ */ a("div", {
108
+ className: "flex items-center gap-2",
109
+ children: [/* @__PURE__ */ i(c, { className: "h-4 w-4" }), /* @__PURE__ */ i("span", { children: e.contactPhone ?? "No phone" })]
110
+ }),
111
+ /* @__PURE__ */ i("div", { children: e.website ? /* @__PURE__ */ i("a", {
112
+ href: e.website,
113
+ target: "_blank",
114
+ rel: "noreferrer",
115
+ className: "text-blue-600 hover:underline",
116
+ children: e.website
117
+ }) : "No website" })
118
+ ]
119
+ })]
120
+ }, e.id)), g.length === 0 && /* @__PURE__ */ i("div", {
121
+ className: "rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary",
122
+ children: "No sponsors found."
123
+ })]
124
+ })
125
+ ]
126
+ });
127
+ }
128
+ //#endregion
129
+ export { d as default };
130
+
131
+ //# sourceMappingURL=SponsorsListPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SponsorsListPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/sponsors/SponsorsListPage.tsx"],"sourcesContent":["import { Building2, Mail, Phone, Plus, Search } from 'lucide-react';\nimport { useMemo, useState } from 'react';\n\nimport { useSponsorsQuery } from '../../api/eventApi';\nimport { useEventfullyManaged } from '../../context/EventfullyManagedContext';\n\ntype SponsorItem = {\n id: string;\n eventId: string;\n name: string;\n level: string;\n website?: string | null;\n contactName?: string | null;\n contactEmail?: string | null;\n contactPhone?: string | null;\n metrics?: { value?: number; leads?: number } | null;\n};\n\nexport default function SponsorsListPage() {\n const { navigate } = useEventfullyManaged();\n const [search, setSearch] = useState('');\n const { data, loading } = useSponsorsQuery({ search, limit: 100, offset: 0 });\n\n const sponsors = useMemo(() => (data?.sponsors?.items ?? []) as SponsorItem[], [data]);\n\n const totalValue = sponsors.reduce((sum, sponsor) => sum + Number(sponsor.metrics?.value ?? 0), 0);\n const totalLeads = sponsors.reduce((sum, sponsor) => sum + Number(sponsor.metrics?.leads ?? 0), 0);\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between\">\n <div>\n <h1 className=\"text-2xl font-bold text-text-primary\">Sponsors</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">Manage event sponsors with live API data.</p>\n </div>\n <button\n type=\"button\"\n onClick={() => navigate('/sponsors/create')}\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\"\n >\n <Plus className=\"mr-2 h-4 w-4\" />\n Add Sponsor\n </button>\n </div>\n\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-3\">\n <div className=\"rounded-lg border border-border-default bg-bg-surface p-4\">\n <p className=\"text-sm text-text-secondary\">Total Sponsors</p>\n <p className=\"mt-1 text-2xl font-bold text-text-primary\">{sponsors.length}</p>\n </div>\n <div className=\"rounded-lg border border-border-default bg-bg-surface p-4\">\n <p className=\"text-sm text-text-secondary\">Total Contract Value</p>\n <p className=\"mt-1 text-2xl font-bold text-text-primary\">${totalValue.toLocaleString()}</p>\n </div>\n <div className=\"rounded-lg border border-border-default bg-bg-surface p-4\">\n <p className=\"text-sm text-text-secondary\">Total Leads</p>\n <p className=\"mt-1 text-2xl font-bold text-text-primary\">{totalLeads.toLocaleString()}</p>\n </div>\n </div>\n\n <div className=\"relative\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-muted\" />\n <input\n type=\"text\"\n value={search}\n onChange={(event) => setSearch(event.target.value)}\n placeholder=\"Search sponsors\"\n className=\"w-full rounded-md border border-border-default bg-bg-surface py-2 pl-10 pr-4 text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-action-primary-bg\"\n />\n </div>\n\n {loading ? (\n <div className=\"rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary\">\n Loading sponsors...\n </div>\n ) : (\n <div className=\"space-y-4\">\n {sponsors.map((sponsor) => (\n <div key={sponsor.id} className=\"rounded-lg border border-border-default bg-bg-surface p-5\">\n <div className=\"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between\">\n <div>\n <button\n type=\"button\"\n onClick={() => navigate(`/sponsors/${sponsor.id}/edit`)}\n className=\"text-left text-lg font-semibold text-text-primary hover:text-blue-600\"\n >\n {sponsor.name}\n </button>\n <div className=\"mt-1 flex items-center gap-2 text-sm text-text-secondary\">\n <Building2 className=\"h-4 w-4\" />\n <span className=\"uppercase\">{sponsor.level}</span>\n </div>\n </div>\n <div className=\"text-sm text-text-secondary\">\n <p>Value: ${Number(sponsor.metrics?.value ?? 0).toLocaleString()}</p>\n <p>Leads: {Number(sponsor.metrics?.leads ?? 0).toLocaleString()}</p>\n </div>\n </div>\n\n <div className=\"mt-4 grid grid-cols-1 gap-2 text-sm text-text-secondary sm:grid-cols-3\">\n <div className=\"flex items-center gap-2\">\n <Mail className=\"h-4 w-4\" />\n <span>{sponsor.contactEmail ?? 'No email'}</span>\n </div>\n <div className=\"flex items-center gap-2\">\n <Phone className=\"h-4 w-4\" />\n <span>{sponsor.contactPhone ?? 'No phone'}</span>\n </div>\n <div>\n {sponsor.website ? (\n <a\n href={sponsor.website}\n target=\"_blank\"\n rel=\"noreferrer\"\n className=\"text-blue-600 hover:underline\"\n >\n {sponsor.website}\n </a>\n ) : (\n 'No website'\n )}\n </div>\n </div>\n </div>\n ))}\n {sponsors.length === 0 && (\n <div className=\"rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary\">\n No sponsors found.\n </div>\n )}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export default function FloorPlansPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=FloorPlansPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FloorPlansPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/venues/FloorPlansPage.tsx"],"names":[],"mappings":"AAgBA,MAAM,CAAC,OAAO,UAAU,cAAc,4CA+FrC"}
@@ -0,0 +1,91 @@
1
+ import { useEventfullyManaged as e } from "../../context/EventfullyManagedContext.js";
2
+ import { useCreateFloorPlanMutation as t, useVenueQuery as n } from "../../api/eventApi.js";
3
+ import { useState 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
+ import { ArrowLeft as s, Plus as c, SquareStack as l } from "lucide-react";
7
+ //#region src/eventfullymanaged/pages/venues/FloorPlansPage.tsx
8
+ function u() {
9
+ let { id: u = "" } = i(), { navigate: d } = e(), { data: f, loading: p, refetch: m } = n(u), [h, { loading: g }] = t(), [_, v] = r(""), y = f?.venue, b = f?.floorPlans?.items ?? [];
10
+ return /* @__PURE__ */ o("div", {
11
+ className: "space-y-6 p-6",
12
+ children: [
13
+ /* @__PURE__ */ o("div", {
14
+ className: "space-y-3",
15
+ children: [/* @__PURE__ */ o("button", {
16
+ type: "button",
17
+ onClick: () => d(`/venues/${u}`),
18
+ className: "inline-flex items-center gap-2 text-sm text-text-secondary hover:text-text-primary",
19
+ children: [/* @__PURE__ */ a(s, { className: "h-4 w-4" }), "Back to Venue"]
20
+ }), /* @__PURE__ */ o("div", { children: [/* @__PURE__ */ a("h1", {
21
+ className: "text-2xl font-bold text-text-primary",
22
+ children: "Floor Plans"
23
+ }), /* @__PURE__ */ a("p", {
24
+ className: "mt-1 text-sm text-text-secondary",
25
+ children: y?.name ?? "Venue"
26
+ })] })]
27
+ }),
28
+ /* @__PURE__ */ o("div", {
29
+ className: "rounded-lg border border-border-default bg-bg-surface p-4",
30
+ children: [/* @__PURE__ */ a("h2", {
31
+ className: "mb-3 text-sm font-semibold text-text-primary",
32
+ children: "Create floor plan"
33
+ }), /* @__PURE__ */ o("div", {
34
+ className: "flex flex-col gap-3 sm:flex-row",
35
+ children: [/* @__PURE__ */ a("input", {
36
+ type: "text",
37
+ value: _,
38
+ onChange: (e) => v(e.target.value),
39
+ placeholder: "Main Hall Layout",
40
+ className: "flex-1 rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-action-primary-bg"
41
+ }), /* @__PURE__ */ o("button", {
42
+ type: "button",
43
+ onClick: async () => {
44
+ !_.trim() || !u || (await h({ variables: { input: {
45
+ venueId: u,
46
+ name: _.trim(),
47
+ imageUrl: "",
48
+ dimensions: {},
49
+ interactiveAreas: {}
50
+ } } }), v(""), await m());
51
+ },
52
+ disabled: g,
53
+ 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",
54
+ children: [/* @__PURE__ */ a(c, { className: "mr-2 h-4 w-4" }), g ? "Creating..." : "Create"]
55
+ })]
56
+ })]
57
+ }),
58
+ p ? /* @__PURE__ */ a("div", {
59
+ className: "rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary",
60
+ children: "Loading floor plans..."
61
+ }) : /* @__PURE__ */ o("div", {
62
+ className: "grid grid-cols-1 gap-4 md:grid-cols-2",
63
+ children: [b.map((e) => /* @__PURE__ */ o("div", {
64
+ className: "rounded-lg border border-border-default bg-bg-surface p-4",
65
+ children: [/* @__PURE__ */ o("div", {
66
+ className: "flex items-center gap-2 text-text-primary",
67
+ children: [/* @__PURE__ */ a(l, { className: "h-4 w-4" }), /* @__PURE__ */ a("h3", {
68
+ className: "font-semibold",
69
+ children: e.name
70
+ })]
71
+ }), /* @__PURE__ */ o("p", {
72
+ className: "mt-2 text-sm text-text-secondary",
73
+ children: [
74
+ e.imageUrl ? "Image available" : "No image uploaded",
75
+ " |",
76
+ " ",
77
+ e.dimensions ? "Dimensions configured" : "No dimensions configured"
78
+ ]
79
+ })]
80
+ }, e.id)), b.length === 0 && /* @__PURE__ */ a("div", {
81
+ className: "rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary",
82
+ children: "No floor plans found. Create one to start mapping your venue."
83
+ })]
84
+ })
85
+ ]
86
+ });
87
+ }
88
+ //#endregion
89
+ export { u as default };
90
+
91
+ //# sourceMappingURL=FloorPlansPage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FloorPlansPage.js","names":[],"sources":["../../../../src/eventfullymanaged/pages/venues/FloorPlansPage.tsx"],"sourcesContent":["import { ArrowLeft, Plus, SquareStack } from 'lucide-react';\nimport { useState } from 'react';\nimport { useParams } from 'react-router-dom';\n\nimport { useCreateFloorPlanMutation, useVenueQuery } from '../../api/eventApi';\nimport { useEventfullyManaged } from '../../context/EventfullyManagedContext';\n\ntype FloorPlan = {\n id: string;\n venueId: string;\n name: string;\n imageUrl?: string | null;\n dimensions?: Record<string, unknown> | null;\n interactiveAreas?: Record<string, unknown> | null;\n};\n\nexport default function FloorPlansPage() {\n const { id = '' } = useParams<{ id: string }>();\n const { navigate } = useEventfullyManaged();\n const { data, loading, refetch } = useVenueQuery(id);\n const [createFloorPlan, { loading: creating }] = useCreateFloorPlanMutation();\n const [name, setName] = useState('');\n\n const venue = data?.venue;\n const floorPlans = (data?.floorPlans?.items ?? []) as FloorPlan[];\n\n const handleCreate = async () => {\n if (!name.trim() || !id) {\n return;\n }\n await createFloorPlan({\n variables: {\n input: {\n venueId: id,\n name: name.trim(),\n imageUrl: '',\n dimensions: {},\n interactiveAreas: {},\n },\n },\n });\n setName('');\n await refetch();\n };\n\n return (\n <div className=\"space-y-6 p-6\">\n <div className=\"space-y-3\">\n <button\n type=\"button\"\n onClick={() => navigate(`/venues/${id}`)}\n className=\"inline-flex items-center gap-2 text-sm text-text-secondary hover:text-text-primary\"\n >\n <ArrowLeft className=\"h-4 w-4\" />\n Back to Venue\n </button>\n <div>\n <h1 className=\"text-2xl font-bold text-text-primary\">Floor Plans</h1>\n <p className=\"mt-1 text-sm text-text-secondary\">{venue?.name ?? 'Venue'}</p>\n </div>\n </div>\n\n <div className=\"rounded-lg border border-border-default bg-bg-surface p-4\">\n <h2 className=\"mb-3 text-sm font-semibold text-text-primary\">Create floor plan</h2>\n <div className=\"flex flex-col gap-3 sm:flex-row\">\n <input\n type=\"text\"\n value={name}\n onChange={(event) => setName(event.target.value)}\n placeholder=\"Main Hall Layout\"\n className=\"flex-1 rounded-md border border-border-default bg-bg-surface px-3 py-2 text-sm text-text-primary placeholder:text-text-muted focus:outline-none focus:ring-2 focus:ring-action-primary-bg\"\n />\n <button\n type=\"button\"\n onClick={handleCreate}\n disabled={creating}\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 <Plus className=\"mr-2 h-4 w-4\" />\n {creating ? 'Creating...' : 'Create'}\n </button>\n </div>\n </div>\n\n {loading ? (\n <div className=\"rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary\">\n Loading floor plans...\n </div>\n ) : (\n <div className=\"grid grid-cols-1 gap-4 md:grid-cols-2\">\n {floorPlans.map((plan) => (\n <div key={plan.id} className=\"rounded-lg border border-border-default bg-bg-surface p-4\">\n <div className=\"flex items-center gap-2 text-text-primary\">\n <SquareStack className=\"h-4 w-4\" />\n <h3 className=\"font-semibold\">{plan.name}</h3>\n </div>\n <p className=\"mt-2 text-sm text-text-secondary\">\n {plan.imageUrl ? 'Image available' : 'No image uploaded'} |{' '}\n {plan.dimensions ? 'Dimensions configured' : 'No dimensions configured'}\n </p>\n </div>\n ))}\n {floorPlans.length === 0 && (\n <div className=\"rounded-md border border-border-default bg-bg-surface p-8 text-center text-sm text-text-secondary\">\n No floor plans found. Create one to start mapping your venue.\n </div>\n )}\n </div>\n )}\n </div>\n );\n}\n"],"mappings":";;;;;;;AAgBA,SAAwB,IAAiB;CACvC,IAAM,EAAE,QAAK,OAAO,GAA2B,EACzC,EAAE,gBAAa,GAAsB,EACrC,EAAE,SAAM,YAAS,eAAY,EAAc,EAAG,EAC9C,CAAC,GAAiB,EAAE,SAAS,OAAc,GAA4B,EACvE,CAAC,GAAM,KAAW,EAAS,GAAG,EAE9B,IAAQ,GAAM,OACd,IAAc,GAAM,YAAY,SAAS,EAAE;AAqBjD,QACE,kBAAC,OAAD;EAAK,WAAU;YAAf;GACE,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,UAAD;KACE,MAAK;KACL,eAAe,EAAS,WAAW,IAAK;KACxC,WAAU;eAHZ,CAKE,kBAAC,GAAD,EAAW,WAAU,WAAY,CAAA,EAAA,gBAE1B;QACT,kBAAC,OAAD,EAAA,UAAA,CACE,kBAAC,MAAD;KAAI,WAAU;eAAuC;KAAgB,CAAA,EACrE,kBAAC,KAAD;KAAG,WAAU;eAAoC,GAAO,QAAQ;KAAY,CAAA,CACxE,EAAA,CAAA,CACF;;GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACE,kBAAC,MAAD;KAAI,WAAU;eAA+C;KAAsB,CAAA,EACnF,kBAAC,OAAD;KAAK,WAAU;eAAf,CACE,kBAAC,SAAD;MACE,MAAK;MACL,OAAO;MACP,WAAW,MAAU,EAAQ,EAAM,OAAO,MAAM;MAChD,aAAY;MACZ,WAAU;MACV,CAAA,EACF,kBAAC,UAAD;MACE,MAAK;MACL,SAhDW,YAAY;AAC3B,QAAC,EAAK,MAAM,IAAI,CAAC,MAGrB,MAAM,EAAgB,EACpB,WAAW,EACT,OAAO;QACL,SAAS;QACT,MAAM,EAAK,MAAM;QACjB,UAAU;QACV,YAAY,EAAE;QACd,kBAAkB,EAAE;QACrB,EACF,EACF,CAAC,EACF,EAAQ,GAAG,EACX,MAAM,GAAS;;MAiCP,UAAU;MACV,WAAU;gBAJZ,CAME,kBAAC,GAAD,EAAM,WAAU,gBAAiB,CAAA,EAChC,IAAW,gBAAgB,SACrB;QACL;OACF;;GAEL,IACC,kBAAC,OAAD;IAAK,WAAU;cAAoG;IAE7G,CAAA,GAEN,kBAAC,OAAD;IAAK,WAAU;cAAf,CACG,EAAW,KAAK,MACf,kBAAC,OAAD;KAAmB,WAAU;eAA7B,CACE,kBAAC,OAAD;MAAK,WAAU;gBAAf,CACE,kBAAC,GAAD,EAAa,WAAU,WAAY,CAAA,EACnC,kBAAC,MAAD;OAAI,WAAU;iBAAiB,EAAK;OAAU,CAAA,CAC1C;SACN,kBAAC,KAAD;MAAG,WAAU;gBAAb;OACG,EAAK,WAAW,oBAAoB;OAAoB;OAAG;OAC3D,EAAK,aAAa,0BAA0B;OAC3C;QACA;OATI,EAAK,GAST,CACN,EACD,EAAW,WAAW,KACrB,kBAAC,OAAD;KAAK,WAAU;eAAoG;KAE7G,CAAA,CAEJ;;GAEJ"}
@@ -0,0 +1,2 @@
1
+ export default function VenueDetailPage(): import("react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=VenueDetailPage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"VenueDetailPage.d.ts","sourceRoot":"","sources":["../../../../src/eventfullymanaged/pages/venues/VenueDetailPage.tsx"],"names":[],"mappings":"AA8BA,MAAM,CAAC,OAAO,UAAU,eAAe,4CAiItC"}