@fluid-app/rep-widgets 0.1.8 → 0.1.10
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/dist/AlertWidget-3Q4AK7PE.js +5 -0
- package/dist/{AlertWidget-2JHMNYIY.js.map → AlertWidget-3Q4AK7PE.js.map} +1 -1
- package/dist/AlertWidget-C3YMPF7Y.cjs +18 -0
- package/dist/{AlertWidget-VHXWOKM4.cjs.map → AlertWidget-C3YMPF7Y.cjs.map} +1 -1
- package/dist/CalendarWidget-3FLYUVHK.js +5 -0
- package/dist/{CalendarWidget-ZSAZG2NA.js.map → CalendarWidget-3FLYUVHK.js.map} +1 -1
- package/dist/CalendarWidget-MQ2ID7YS.cjs +18 -0
- package/dist/{CalendarWidget-3QAGQHSO.cjs.map → CalendarWidget-MQ2ID7YS.cjs.map} +1 -1
- package/dist/CarouselWidget-KJZHB6XK.cjs +19 -0
- package/dist/{CarouselWidget-ORPCX6CM.cjs.map → CarouselWidget-KJZHB6XK.cjs.map} +1 -1
- package/dist/CarouselWidget-M3CEN3HQ.js +6 -0
- package/dist/{CarouselWidget-AYDQROQ7.js.map → CarouselWidget-M3CEN3HQ.js.map} +1 -1
- package/dist/CatchUpWidget-ADY4ZUDD.cjs +18 -0
- package/dist/{CatchUpWidget-3BMRWSA7.cjs.map → CatchUpWidget-ADY4ZUDD.cjs.map} +1 -1
- package/dist/CatchUpWidget-PJNNL5GI.js +5 -0
- package/dist/{CatchUpWidget-YKKUJT4H.js.map → CatchUpWidget-PJNNL5GI.js.map} +1 -1
- package/dist/ChartWidget-463QVROY.cjs +17 -0
- package/dist/{ChartWidget-ETZEURVU.cjs.map → ChartWidget-463QVROY.cjs.map} +1 -1
- package/dist/ChartWidget-554S2GQF.js +4 -0
- package/dist/{ChartWidget-QTYGMAEV.js.map → ChartWidget-554S2GQF.js.map} +1 -1
- package/dist/ContainerWidget-IOXW77X7.cjs +21 -0
- package/dist/{ContainerWidget-WYTZPJSE.cjs.map → ContainerWidget-IOXW77X7.cjs.map} +1 -1
- package/dist/ContainerWidget-OLQPEXDT.js +8 -0
- package/dist/{ContainerWidget-CYAHQDTH.js.map → ContainerWidget-OLQPEXDT.js.map} +1 -1
- package/dist/EmbedWidget-ATU2WS2X.js +3 -0
- package/dist/{EmbedWidget-B3JEXJWZ.js.map → EmbedWidget-ATU2WS2X.js.map} +1 -1
- package/dist/EmbedWidget-X7FB7C45.cjs +16 -0
- package/dist/{EmbedWidget-CWK3I5G5.cjs.map → EmbedWidget-X7FB7C45.cjs.map} +1 -1
- package/dist/ImageWidget-6ATLD5II.cjs +17 -0
- package/dist/{ImageWidget-RSBFNR5J.cjs.map → ImageWidget-6ATLD5II.cjs.map} +1 -1
- package/dist/ImageWidget-BBLG66SD.js +4 -0
- package/dist/{ImageWidget-A5DBWFUT.js.map → ImageWidget-BBLG66SD.js.map} +1 -1
- package/dist/LayoutWidget-F3BDSGDP.cjs +20 -0
- package/dist/{LayoutWidget-VCOKZJV3.cjs.map → LayoutWidget-F3BDSGDP.cjs.map} +1 -1
- package/dist/{LayoutWidget-BHM4HFRZ.js → LayoutWidget-MBUJVGKA.js} +4 -4
- package/dist/{LayoutWidget-BHM4HFRZ.js.map → LayoutWidget-MBUJVGKA.js.map} +1 -1
- package/dist/ListWidget-LZ77ZSBT.js +6 -0
- package/dist/{ListWidget-I7I7FAW5.js.map → ListWidget-LZ77ZSBT.js.map} +1 -1
- package/dist/ListWidget-Q2MXWXKA.cjs +19 -0
- package/dist/{ListWidget-7HUFB5JZ.cjs.map → ListWidget-Q2MXWXKA.cjs.map} +1 -1
- package/dist/MySiteWidget-2XUSXN5I.cjs +18 -0
- package/dist/{MySiteWidget-JP2NWOOI.cjs.map → MySiteWidget-2XUSXN5I.cjs.map} +1 -1
- package/dist/MySiteWidget-L37MCRTV.js +5 -0
- package/dist/{MySiteWidget-RPIPPRRN.js.map → MySiteWidget-L37MCRTV.js.map} +1 -1
- package/dist/NestedWidget-JKEJ5ZCV.cjs +19 -0
- package/dist/{NestedWidget-T5MRGLSP.cjs.map → NestedWidget-JKEJ5ZCV.cjs.map} +1 -1
- package/dist/NestedWidget-N6V5LT4B.js +6 -0
- package/dist/{NestedWidget-KH7QSXN7.js.map → NestedWidget-N6V5LT4B.js.map} +1 -1
- package/dist/QuickShareWidget-B6TOLKM7.cjs +17 -0
- package/dist/{QuickShareWidget-47OABEXI.cjs.map → QuickShareWidget-B6TOLKM7.cjs.map} +1 -1
- package/dist/QuickShareWidget-TNW4ILJ2.js +4 -0
- package/dist/{QuickShareWidget-S2LJDLLJ.js.map → QuickShareWidget-TNW4ILJ2.js.map} +1 -1
- package/dist/RecentActivityWidget-USXCTA5W.js +5 -0
- package/dist/{RecentActivityWidget-FI72KYRL.js.map → RecentActivityWidget-USXCTA5W.js.map} +1 -1
- package/dist/RecentActivityWidget-ZYOFEB5R.cjs +18 -0
- package/dist/{RecentActivityWidget-CFYQ32LN.cjs.map → RecentActivityWidget-ZYOFEB5R.cjs.map} +1 -1
- package/dist/SpacerWidget-7KQ6UPRH.js +3 -0
- package/dist/{SpacerWidget-ZEHGXKOH.js.map → SpacerWidget-7KQ6UPRH.js.map} +1 -1
- package/dist/SpacerWidget-APJKG3DG.cjs +16 -0
- package/dist/{SpacerWidget-OUFZRSIN.cjs.map → SpacerWidget-APJKG3DG.cjs.map} +1 -1
- package/dist/TableWidget-HVBEVBC6.cjs +18 -0
- package/dist/{TableWidget-ZX5A4IFW.cjs.map → TableWidget-HVBEVBC6.cjs.map} +1 -1
- package/dist/TableWidget-PMQFL7VC.js +5 -0
- package/dist/{TableWidget-VMPYQU7I.js.map → TableWidget-PMQFL7VC.js.map} +1 -1
- package/dist/TextWidget-GNUQBLDJ.js +4 -0
- package/dist/{TextWidget-D72TL53O.js.map → TextWidget-GNUQBLDJ.js.map} +1 -1
- package/dist/TextWidget-PUZPMPOC.cjs +17 -0
- package/dist/{TextWidget-DYINWJGB.cjs.map → TextWidget-PUZPMPOC.cjs.map} +1 -1
- package/dist/ToDoWidget-5EXKPVSO.cjs +18 -0
- package/dist/{ToDoWidget-Y7W6TFL7.cjs.map → ToDoWidget-5EXKPVSO.cjs.map} +1 -1
- package/dist/ToDoWidget-MI3K365J.js +5 -0
- package/dist/{ToDoWidget-XQPQBDZE.js.map → ToDoWidget-MI3K365J.js.map} +1 -1
- package/dist/VideoWidget-DYPFWIZX.cjs +17 -0
- package/dist/{VideoWidget-R6WKIZFN.cjs.map → VideoWidget-DYPFWIZX.cjs.map} +1 -1
- package/dist/VideoWidget-KY3VZHYD.js +4 -0
- package/dist/{VideoWidget-OMF2XWAI.js.map → VideoWidget-KY3VZHYD.js.map} +1 -1
- package/dist/{chunk-B5S5Q57S.cjs → chunk-2KV26SKG.cjs} +26 -26
- package/dist/chunk-2KV26SKG.cjs.map +1 -0
- package/dist/{chunk-25GBJPZQ.js → chunk-2NPVYROG.js} +3 -3
- package/dist/{chunk-25GBJPZQ.js.map → chunk-2NPVYROG.js.map} +1 -1
- package/dist/{chunk-AJ2ZDCQU.js → chunk-2YQKGRGW.js} +3 -3
- package/dist/{chunk-AJ2ZDCQU.js.map → chunk-2YQKGRGW.js.map} +1 -1
- package/dist/{chunk-WGQS7RB4.js → chunk-3CAOLNTX.js} +3 -3
- package/dist/{chunk-WGQS7RB4.js.map → chunk-3CAOLNTX.js.map} +1 -1
- package/dist/{chunk-ER6NFOID.cjs → chunk-4Y3HAK22.cjs} +11 -12
- package/dist/chunk-4Y3HAK22.cjs.map +1 -0
- package/dist/{chunk-MNWWZGL2.js → chunk-57ZUEL25.js} +3 -3
- package/dist/{chunk-MNWWZGL2.js.map → chunk-57ZUEL25.js.map} +1 -1
- package/dist/{chunk-7B5RPA6J.js → chunk-6EKEDQJB.js} +4 -4
- package/dist/chunk-6EKEDQJB.js.map +1 -0
- package/dist/chunk-6ZECDBGI.js +3 -0
- package/dist/{chunk-ZS7C474P.js.map → chunk-6ZECDBGI.js.map} +1 -1
- package/dist/{chunk-YBTY4OMP.cjs → chunk-A5AVY3ML.cjs} +8 -10
- package/dist/chunk-A5AVY3ML.cjs.map +1 -0
- package/dist/{chunk-KVGWMJZB.js → chunk-AWEFCI4H.js} +3 -3
- package/dist/{chunk-KVGWMJZB.js.map → chunk-AWEFCI4H.js.map} +1 -1
- package/dist/{chunk-IM3VCKTO.js → chunk-BYGUUGSO.js} +10 -10
- package/dist/chunk-BYGUUGSO.js.map +1 -0
- package/dist/{chunk-3NB2PJR5.js → chunk-DPPFLZ7G.js} +12 -13
- package/dist/chunk-DPPFLZ7G.js.map +1 -0
- package/dist/{chunk-DPNUNERL.js → chunk-E5ERYB7Q.js} +4 -4
- package/dist/{chunk-DPNUNERL.js.map → chunk-E5ERYB7Q.js.map} +1 -1
- package/dist/{chunk-HLXL56YT.js → chunk-EBYQ6EXT.js} +9 -11
- package/dist/chunk-EBYQ6EXT.js.map +1 -0
- package/dist/{chunk-OFRCK7WR.js → chunk-EL6H7WGK.js} +3 -3
- package/dist/{chunk-OFRCK7WR.js.map → chunk-EL6H7WGK.js.map} +1 -1
- package/dist/{chunk-Y657NN2D.js → chunk-G45UWQDF.js} +3 -3
- package/dist/{chunk-Y657NN2D.js.map → chunk-G45UWQDF.js.map} +1 -1
- package/dist/{chunk-YRZ4AHQC.js → chunk-GWICPGTA.js} +29 -17
- package/dist/chunk-GWICPGTA.js.map +1 -0
- package/dist/{chunk-U5HD3GJ7.cjs → chunk-HA7IVIPJ.cjs} +36 -24
- package/dist/chunk-HA7IVIPJ.cjs.map +1 -0
- package/dist/{chunk-K4T2XGCW.cjs → chunk-HF7QCK7D.cjs} +9 -9
- package/dist/{chunk-K4T2XGCW.cjs.map → chunk-HF7QCK7D.cjs.map} +1 -1
- package/dist/{chunk-PEBYBSSB.cjs → chunk-HREBEVS5.cjs} +7 -7
- package/dist/{chunk-PEBYBSSB.cjs.map → chunk-HREBEVS5.cjs.map} +1 -1
- package/dist/{chunk-CM7D7WGL.cjs → chunk-J6HCPXT5.cjs} +6 -2
- package/dist/{chunk-CM7D7WGL.cjs.map → chunk-J6HCPXT5.cjs.map} +1 -1
- package/dist/{chunk-IC66PSKF.cjs → chunk-JS4NC5JR.cjs} +9 -9
- package/dist/{chunk-IC66PSKF.cjs.map → chunk-JS4NC5JR.cjs.map} +1 -1
- package/dist/{chunk-RMZFC7HF.cjs → chunk-KYCPG2DN.cjs} +5 -5
- package/dist/{chunk-RMZFC7HF.cjs.map → chunk-KYCPG2DN.cjs.map} +1 -1
- package/dist/{chunk-MUFXAD45.cjs → chunk-OGV2OPY7.cjs} +12 -12
- package/dist/chunk-OGV2OPY7.cjs.map +1 -0
- package/dist/{chunk-SDTP4TVD.cjs → chunk-OZBZOHR4.cjs} +8 -10
- package/dist/chunk-OZBZOHR4.cjs.map +1 -0
- package/dist/{chunk-PHI5YY5E.cjs → chunk-P6AKK6TA.cjs} +28 -26
- package/dist/chunk-P6AKK6TA.cjs.map +1 -0
- package/dist/{chunk-M3DV7TXA.cjs → chunk-PK7Y3Q6A.cjs} +10 -10
- package/dist/chunk-PK7Y3Q6A.cjs.map +1 -0
- package/dist/{chunk-DW6V4ZCT.cjs → chunk-PLXOZ5BH.cjs} +9 -9
- package/dist/{chunk-DW6V4ZCT.cjs.map → chunk-PLXOZ5BH.cjs.map} +1 -1
- package/dist/{chunk-VU3NEDUQ.js → chunk-QLXZEIFC.js} +17 -17
- package/dist/chunk-QLXZEIFC.js.map +1 -0
- package/dist/{chunk-VDHV7FEJ.cjs → chunk-RPNLSRUS.cjs} +7 -7
- package/dist/{chunk-VDHV7FEJ.cjs.map → chunk-RPNLSRUS.cjs.map} +1 -1
- package/dist/{chunk-BZQW7APC.cjs → chunk-SH2YPW2J.cjs} +23 -23
- package/dist/{chunk-BZQW7APC.cjs.map → chunk-SH2YPW2J.cjs.map} +1 -1
- package/dist/{chunk-QSMGUAYP.cjs → chunk-STGAGLIG.cjs} +9 -9
- package/dist/{chunk-QSMGUAYP.cjs.map → chunk-STGAGLIG.cjs.map} +1 -1
- package/dist/{chunk-Y6OP3XEQ.cjs → chunk-TMG7H4K5.cjs} +9 -9
- package/dist/{chunk-Y6OP3XEQ.cjs.map → chunk-TMG7H4K5.cjs.map} +1 -1
- package/dist/{chunk-J2FIIZSN.js → chunk-UXFD52LT.js} +3 -3
- package/dist/{chunk-J2FIIZSN.js.map → chunk-UXFD52LT.js.map} +1 -1
- package/dist/{chunk-NYL2AQJ2.js → chunk-UZF75XZJ.js} +10 -8
- package/dist/chunk-UZF75XZJ.js.map +1 -0
- package/dist/{chunk-W2U27MK2.cjs → chunk-XCHMHDYQ.cjs} +9 -9
- package/dist/{chunk-W2U27MK2.cjs.map → chunk-XCHMHDYQ.cjs.map} +1 -1
- package/dist/{chunk-LFYELLIM.cjs → chunk-XCJUKCGP.cjs} +9 -9
- package/dist/{chunk-LFYELLIM.cjs.map → chunk-XCJUKCGP.cjs.map} +1 -1
- package/dist/{chunk-GAYZNBS4.js → chunk-XX2N55EZ.js} +3 -3
- package/dist/{chunk-GAYZNBS4.js.map → chunk-XX2N55EZ.js.map} +1 -1
- package/dist/{chunk-PXWG3SDJ.js → chunk-YGATS7HW.js} +3 -3
- package/dist/{chunk-PXWG3SDJ.js.map → chunk-YGATS7HW.js.map} +1 -1
- package/dist/{chunk-SB2EVEDN.js → chunk-ZDWZKRJ4.js} +9 -11
- package/dist/chunk-ZDWZKRJ4.js.map +1 -0
- package/dist/components/index.cjs +6 -6
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +8 -1
- package/dist/components/index.js.map +1 -1
- package/dist/contexts/index.d.cts +3 -3
- package/dist/contexts/index.d.ts +3 -3
- package/dist/core/index.cjs +8 -8
- package/dist/core/index.js +1 -1
- package/dist/ui/index.cjs +23 -26
- package/dist/ui/index.cjs.map +1 -1
- package/dist/ui/index.d.cts +2 -61
- package/dist/ui/index.d.ts +2 -61
- package/dist/ui/index.js +1 -4
- package/dist/ui/index.js.map +1 -1
- package/dist/widgets/index.cjs +78 -82
- package/dist/widgets/index.cjs.map +1 -1
- package/dist/widgets/index.d.cts +209 -8
- package/dist/widgets/index.d.ts +209 -8
- package/dist/widgets/index.js +39 -43
- package/dist/widgets/index.js.map +1 -1
- package/package.json +5 -4
- package/dist/AlertWidget-2JHMNYIY.js +0 -5
- package/dist/AlertWidget-VHXWOKM4.cjs +0 -18
- package/dist/CalendarWidget-3QAGQHSO.cjs +0 -18
- package/dist/CalendarWidget-ZSAZG2NA.js +0 -5
- package/dist/CarouselWidget-AYDQROQ7.js +0 -8
- package/dist/CarouselWidget-ORPCX6CM.cjs +0 -21
- package/dist/CatchUpWidget-3BMRWSA7.cjs +0 -18
- package/dist/CatchUpWidget-YKKUJT4H.js +0 -5
- package/dist/ChartWidget-ETZEURVU.cjs +0 -19
- package/dist/ChartWidget-QTYGMAEV.js +0 -6
- package/dist/ContainerWidget-CYAHQDTH.js +0 -8
- package/dist/ContainerWidget-WYTZPJSE.cjs +0 -21
- package/dist/EmbedWidget-B3JEXJWZ.js +0 -3
- package/dist/EmbedWidget-CWK3I5G5.cjs +0 -16
- package/dist/ImageWidget-A5DBWFUT.js +0 -4
- package/dist/ImageWidget-RSBFNR5J.cjs +0 -17
- package/dist/LayoutWidget-VCOKZJV3.cjs +0 -20
- package/dist/ListWidget-7HUFB5JZ.cjs +0 -19
- package/dist/ListWidget-I7I7FAW5.js +0 -6
- package/dist/MySiteWidget-JP2NWOOI.cjs +0 -18
- package/dist/MySiteWidget-RPIPPRRN.js +0 -5
- package/dist/NestedWidget-KH7QSXN7.js +0 -6
- package/dist/NestedWidget-T5MRGLSP.cjs +0 -19
- package/dist/QuickShareWidget-47OABEXI.cjs +0 -17
- package/dist/QuickShareWidget-S2LJDLLJ.js +0 -4
- package/dist/RecentActivityWidget-CFYQ32LN.cjs +0 -18
- package/dist/RecentActivityWidget-FI72KYRL.js +0 -5
- package/dist/SpacerWidget-OUFZRSIN.cjs +0 -16
- package/dist/SpacerWidget-ZEHGXKOH.js +0 -3
- package/dist/TableWidget-VMPYQU7I.js +0 -7
- package/dist/TableWidget-ZX5A4IFW.cjs +0 -20
- package/dist/TextWidget-D72TL53O.js +0 -4
- package/dist/TextWidget-DYINWJGB.cjs +0 -17
- package/dist/ToDoWidget-XQPQBDZE.js +0 -5
- package/dist/ToDoWidget-Y7W6TFL7.cjs +0 -18
- package/dist/VideoWidget-OMF2XWAI.js +0 -4
- package/dist/VideoWidget-R6WKIZFN.cjs +0 -17
- package/dist/chunk-3NB2PJR5.js.map +0 -1
- package/dist/chunk-5HHN5MRZ.js +0 -11
- package/dist/chunk-5HHN5MRZ.js.map +0 -1
- package/dist/chunk-6U2FEES5.js +0 -55
- package/dist/chunk-6U2FEES5.js.map +0 -1
- package/dist/chunk-7B5RPA6J.js.map +0 -1
- package/dist/chunk-B5S5Q57S.cjs.map +0 -1
- package/dist/chunk-ER6NFOID.cjs.map +0 -1
- package/dist/chunk-HDA2ZOV2.cjs +0 -13
- package/dist/chunk-HDA2ZOV2.cjs.map +0 -1
- package/dist/chunk-HLXL56YT.js.map +0 -1
- package/dist/chunk-IJHUIM34.cjs +0 -58
- package/dist/chunk-IJHUIM34.cjs.map +0 -1
- package/dist/chunk-IM3VCKTO.js.map +0 -1
- package/dist/chunk-IY3BNQ5Y.js +0 -24
- package/dist/chunk-IY3BNQ5Y.js.map +0 -1
- package/dist/chunk-JSC4GMQG.js +0 -318
- package/dist/chunk-JSC4GMQG.js.map +0 -1
- package/dist/chunk-M3DV7TXA.cjs.map +0 -1
- package/dist/chunk-MUFXAD45.cjs.map +0 -1
- package/dist/chunk-NOZVVD6G.cjs +0 -26
- package/dist/chunk-NOZVVD6G.cjs.map +0 -1
- package/dist/chunk-NYL2AQJ2.js.map +0 -1
- package/dist/chunk-PHI5YY5E.cjs.map +0 -1
- package/dist/chunk-SB2EVEDN.js.map +0 -1
- package/dist/chunk-SDTP4TVD.cjs.map +0 -1
- package/dist/chunk-U5HD3GJ7.cjs.map +0 -1
- package/dist/chunk-UH3FAS2R.cjs +0 -353
- package/dist/chunk-UH3FAS2R.cjs.map +0 -1
- package/dist/chunk-VU3NEDUQ.js.map +0 -1
- package/dist/chunk-YBTY4OMP.cjs.map +0 -1
- package/dist/chunk-YRZ4AHQC.js.map +0 -1
- package/dist/chunk-ZS7C474P.js +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/hooks/use-activities.ts","../src/widgets/RecentActivityWidget.tsx"],"names":[],"mappings":"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","file":"chunk-PXWG3SDJ.js","sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\nimport { useDataSourceConfig } from \"@fluid-app/rep-core/data-sources/context\";\n\n// API types\nexport type ActivityContact = {\n id: number;\n token: string | null;\n first_name: string | null;\n last_name: string | null;\n avatar_url: string | null;\n full_name: string | null;\n email: string | null;\n phone: string | null;\n city: string | null;\n state: string | null;\n};\n\nexport type ActivityVisitor = {\n id: number;\n ip_address: string | null;\n city: string | null;\n state: string | null;\n country: string | null;\n utm_source: string | null;\n utm_campaign: string | null;\n};\n\nexport type ActivitySlug =\n | \"abandoned_cart\"\n | \"announcements\"\n | \"cart_items_added\"\n | \"comment_reply\"\n | \"direct_message\"\n | \"fantasy_point\"\n | \"new_lead\"\n | \"order_placed\"\n | \"page_views\"\n | \"page_views_contact\"\n | \"tasks\"\n | \"upcoming_event\"\n | \"video\"\n | \"video_complete\"\n | \"video_complete_contact\"\n | \"video_contact\"\n | \"message_received\"\n | \"message_sent\"\n | \"new_cart_items_added\"\n | \"smart_link_clicked\"\n | \"review_left\";\n\nexport type ApiActivity = {\n id: number;\n user_id: number;\n title: string;\n description: string | null;\n read_at: string | null;\n created_at: string;\n relation_type: string;\n company_id: number;\n state: \"new\" | \"earlier\";\n slug: ActivitySlug;\n relation: Record<string, unknown>;\n contact: ActivityContact | null;\n visitor: ActivityVisitor | null;\n};\n\ntype PaginationInfo = {\n current: number;\n previous: number | null;\n next: number | null;\n per_page: number;\n pages: number;\n count: number;\n};\n\ntype ApiResponse = [{ pagination: PaginationInfo }, { items: ApiActivity[] }];\n\n// Transformed activity for display\nexport type Activity = {\n id: number;\n userName: string;\n avatarUrl: string | null;\n activityType: string;\n targetName: string;\n timestamp: string;\n slug: ActivitySlug;\n};\n\nexport function useActivities() {\n const { baseUrl, getApiHeaders } = useDataSourceConfig();\n\n return useQuery({\n queryKey: [\"rep-widget-use\", \"activities\", baseUrl] as const,\n queryFn: async ({ signal }): Promise<Activity[]> => {\n const url = baseUrl\n ? `${baseUrl}/v2/activities.json`\n : \"/v2/activities.json\";\n const response = await fetch(url, {\n headers: {\n \"content-type\": \"application/json\",\n ...getApiHeaders?.(),\n },\n signal,\n });\n\n if (!response.ok) {\n throw new Error(`Failed to fetch activities: ${response.status}`);\n }\n\n const data: ApiResponse = await response.json();\n return transformActivities(data);\n },\n });\n}\n\n// Transform and format helpers\nfunction getUserName(\n contact: ActivityContact | null,\n visitor: ActivityVisitor | null,\n): string {\n if (contact?.full_name) {\n return contact.full_name;\n }\n if (contact?.first_name && contact?.last_name) {\n return `${contact.first_name} ${contact.last_name}`;\n }\n if (visitor?.city && visitor?.state) {\n return `Visitor from ${visitor.city}, ${visitor.state}`;\n }\n return \"Unknown Visitor\";\n}\n\nfunction transformActivities(rawData: ApiResponse): Activity[] {\n const itemsObj = rawData[1];\n if (!itemsObj?.items) return [];\n\n return itemsObj.items\n .map((activity) => ({\n id: activity.id,\n userName: getUserName(activity.contact, activity.visitor),\n avatarUrl: activity.contact?.avatar_url ?? null,\n activityType: formatActivityType(activity.slug),\n targetName: activity.description || activity.title,\n timestamp: activity.created_at,\n slug: activity.slug,\n }))\n .sort(\n (a, b) =>\n new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime(),\n );\n}\n\nfunction formatActivityType(slug: string): string {\n return slug\n .split(\"_\")\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n}\n","import { useMemo, type ComponentProps } from \"react\";\nimport type {\n BackgroundValue,\n BorderRadiusOptions,\n ColorOptions,\n FontSizeOptions,\n PaddingOptions,\n} from \"@fluid-app/rep-core/types\";\nimport type { WidgetPropertySchema } from \"@fluid-app/rep-core/registries\";\nimport {\n getBorderRadiusField,\n getColorField,\n getFontSizeField,\n getPaddingField,\n} from \"../core/fields\";\nimport {\n useActivities,\n type Activity,\n type ActivitySlug,\n} from \"../hooks/use-activities\";\nimport { ErrorState } from \"../components/error-state\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport type { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport {\n faBell,\n faCalendar,\n faSquareCheck,\n faEye,\n faComment,\n faPlay,\n faCartShopping,\n faStar,\n faTrophy,\n faUser,\n faUserPlus,\n} from \"@fortawesome/pro-regular-svg-icons\";\n\n// Format timestamp to time string\nconst formatTimestamp = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toLocaleTimeString(\"en-US\", {\n hour: \"numeric\",\n minute: \"2-digit\",\n hour12: true,\n });\n};\n\n// Format date for grouping header\nconst formatDateHeader = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n });\n};\n\n// Get date string for grouping (without time)\nconst getDateKey = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toISOString().split(\"T\")[0] ?? timestamp;\n};\n\n// Group activities by date\nconst groupActivitiesByDate = (\n activities: Activity[],\n): Map<string, Activity[]> => {\n const grouped = new Map<string, Activity[]>();\n\n for (const activity of activities) {\n const dateKey = getDateKey(activity.timestamp);\n const existing = grouped.get(dateKey);\n if (existing) {\n existing.push(activity);\n } else {\n grouped.set(dateKey, [activity]);\n }\n }\n\n return grouped;\n};\n\n// Activity slug to icon mapping\nconst ACTIVITY_ICON_MAP: Record<ActivitySlug, IconDefinition> = {\n // Orders/Cart\n order_placed: faCartShopping,\n abandoned_cart: faCartShopping,\n cart_items_added: faCartShopping,\n new_cart_items_added: faCartShopping,\n // Messages\n direct_message: faComment,\n comment_reply: faComment,\n message_received: faComment,\n message_sent: faComment,\n // Video\n video: faPlay,\n video_complete: faPlay,\n video_contact: faPlay,\n video_complete_contact: faPlay,\n // Leads\n new_lead: faUserPlus,\n page_views_contact: faUserPlus,\n smart_link_clicked: faUserPlus,\n // Page Views\n page_views: faEye,\n // Events\n upcoming_event: faCalendar,\n // Reviews\n review_left: faStar,\n // Tasks\n tasks: faSquareCheck,\n // Announcements\n announcements: faBell,\n // Fantasy\n fantasy_point: faTrophy,\n};\n\nconst getActivityIcon = (slug: ActivitySlug) =>\n ACTIVITY_ICON_MAP[slug] ?? faUser;\n\n// Activity feed item component\ntype ActivityFeedItemProps = {\n activity: Activity;\n accentColor: ColorOptions;\n textColor: ColorOptions;\n};\n\nfunction ActivityFeedItem({\n activity,\n accentColor,\n textColor,\n}: ActivityFeedItemProps) {\n const icon = getActivityIcon(activity.slug);\n\n return (\n <div className=\"flex w-full items-start gap-1.5\">\n {/* Avatar */}\n <div className=\"shrink-0\">\n {activity.avatarUrl ? (\n <div className=\"relative size-8 overflow-hidden rounded-full\">\n <img\n src={activity.avatarUrl}\n alt={activity.userName}\n className=\"size-full object-cover\"\n />\n <div className=\"absolute inset-0 rounded-full border border-foreground/[0.08]\" />\n </div>\n ) : (\n <div\n className={`flex size-8 items-center justify-center rounded-full bg-muted`}\n >\n <FontAwesomeIcon\n icon={icon}\n className={`size-3.5 text-${textColor} opacity-60`}\n />\n </div>\n )}\n </div>\n\n {/* Content */}\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex w-full items-center gap-1.5\">\n <p\n className={`flex-1 text-base font-semibold text-${textColor} truncate`}\n >\n {activity.activityType}\n </p>\n <p className={`text-xs text-${textColor} shrink-0 opacity-50`}>\n {formatTimestamp(activity.timestamp)}\n </p>\n </div>\n <p className={`text-sm text-${textColor} opacity-80`}>\n <span className={`font-medium text-${accentColor}`}>\n {activity.userName}\n </span>{\" \"}\n {activity.targetName}\n </p>\n </div>\n </div>\n );\n}\n\ntype RecentActivityWidgetProps = ComponentProps<\"div\"> & {\n // Title\n titleEnabled?: boolean;\n titleText?: string;\n titleFontSize?: FontSizeOptions;\n titleColor?: ColorOptions;\n\n // Styling\n background?: BackgroundValue;\n textColor?: ColorOptions;\n accentColor?: ColorOptions;\n padding?: PaddingOptions;\n borderRadius?: BorderRadiusOptions;\n\n // Activity settings\n maxItemsToShow?: number;\n};\n\nexport function RecentActivityWidget({\n // Title defaults\n titleEnabled = true,\n titleText = \"Recent Activity\",\n titleFontSize = \"lg\",\n titleColor = \"foreground\",\n\n // Styling defaults\n background = {\n type: \"solid\",\n color: \"background\",\n },\n textColor = \"foreground\",\n accentColor = \"primary\",\n padding = 4,\n borderRadius = \"md\",\n\n // Activity defaults\n maxItemsToShow = 5,\n\n className,\n ...props\n}: RecentActivityWidgetProps) {\n const backgroundColor = background.color || \"background\";\n const backgroundImage =\n (background.resource?.image_url || background.resource?.imageUrl) &&\n background.type === \"image\"\n ? `url(${background.resource.image_url || background.resource.imageUrl})`\n : \"none\";\n const { data: activities = [], isLoading, isError } = useActivities();\n\n const groupedActivities = useMemo(\n () => groupActivitiesByDate(activities),\n [activities],\n );\n\n const totalCount = Math.min(activities.length, maxItemsToShow);\n\n // Get activities to display (limited by maxItemsToShow)\n const activitiesToShow = useMemo(() => {\n const result: { date: string; items: Activity[] }[] = [];\n let count = 0;\n\n for (const [dateKey, items] of groupedActivities) {\n if (count >= maxItemsToShow) break;\n\n const remainingSlots = maxItemsToShow - count;\n const itemsToAdd = items.slice(0, remainingSlots);\n\n if (itemsToAdd.length > 0) {\n result.push({\n date: formatDateHeader(items[0]?.timestamp ?? dateKey),\n items: itemsToAdd,\n });\n count += itemsToAdd.length;\n }\n }\n\n return result;\n }, [groupedActivities, maxItemsToShow]);\n\n return (\n <div\n className={`@container overflow-hidden rounded-${borderRadius} bg-${backgroundColor} text-${textColor} border border-muted ${className}`}\n style={{ backgroundImage }}\n {...props}\n >\n <div className={`p-${padding} flex flex-col gap-2`}>\n {/* Header */}\n {titleEnabled && titleText && (\n <div className=\"flex w-full items-start gap-2\">\n <h2\n className={`flex-1 text-${titleFontSize} font-bold text-${titleColor}`}\n >\n {titleText}\n </h2>\n {!isLoading && (\n <span\n className={`text-4xl font-bold text-${textColor} leading-none`}\n >\n {totalCount.toString().padStart(2, \"0\")}\n </span>\n )}\n </div>\n )}\n\n {/* Loading state */}\n {isLoading ? (\n <div className=\"flex min-h-[200px] items-center justify-center\">\n <div className=\"h-8 w-8 animate-spin rounded-full border-2 border-current border-t-transparent\" />\n </div>\n ) : isError ? (\n /* Error state */\n <ErrorState />\n ) : activities.length === 0 ? (\n /* Empty state */\n <div className=\"flex min-h-[200px] flex-col items-center justify-center gap-2\">\n <FontAwesomeIcon\n icon={faUser}\n className={`size-12 text-${textColor} opacity-30`}\n />\n <p\n className={`text-base font-semibold text-${textColor} opacity-50`}\n >\n No Activity To Report\n </p>\n <p className={`text-sm text-${textColor} opacity-40`}>\n You'll Do Great!\n </p>\n </div>\n ) : (\n /* Activity list */\n <div className=\"flex flex-col gap-4\">\n {activitiesToShow.map((group, groupIndex) => (\n <div key={groupIndex} className=\"flex flex-col gap-4\">\n {/* Date header */}\n <p className={`text-base font-semibold text-${textColor}`}>\n {group.date}\n </p>\n\n {/* Activity items */}\n <div className=\"flex flex-col gap-4\">\n {group.items.map((activity) => (\n <ActivityFeedItem\n key={activity.id}\n activity={activity}\n accentColor={accentColor}\n textColor={textColor}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n );\n}\n\nexport const recentActivityWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"RecentActivityWidget\",\n displayName: \"Recent Activity Widget\",\n tabsConfig: [{ id: \"styling\", label: \"Styling\" }],\n fields: [\n // Styling Tab - Title Group\n {\n key: \"titleEnabled\",\n label: \"Widget Title\",\n type: \"boolean\",\n description: \"Enable the title displayed above the activity feed\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Title\",\n },\n {\n key: \"titleText\",\n label: \"Title\",\n type: \"text\",\n description: \"Title text displayed above the activity feed\",\n defaultValue: \"Recent Activity\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n },\n getFontSizeField({\n key: \"titleFontSize\",\n label: \"Title Font Size\",\n description: \"Font size for the widget title\",\n defaultValue: \"xl\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n getColorField({\n key: \"titleColor\",\n label: \"Title Color\",\n description: \"Color for the widget title\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n\n // Styling Tab - Design Group\n {\n type: \"background\",\n key: \"background\",\n label: \"Background\",\n description: \"Background for the widget container\",\n defaultValue: \"background\",\n tab: \"styling\",\n group: \"Design\",\n },\n getColorField({\n key: \"textColor\",\n label: \"Text Color\",\n description: \"Default text color for activity content\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Design\",\n }),\n getColorField({\n key: \"accentColor\",\n label: \"Accent Color\",\n description: \"Color used for links and highlights\",\n defaultValue: \"primary\",\n tab: \"styling\",\n group: \"Design\",\n }),\n {\n key: \"separator\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Design\",\n },\n getPaddingField({\n key: \"padding\",\n label: \"Padding\",\n description: \"Padding around the widget container\",\n defaultValue: 4,\n tab: \"styling\",\n group: \"Design\",\n }),\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Border radius for the widget container\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n\n // Styling Tab - Display Group\n {\n key: \"maxItemsToShow\",\n label: \"Max Items\",\n type: \"number\",\n description: \"Maximum number of activity items to display\",\n defaultValue: 5,\n tab: \"styling\",\n group: \"Display\",\n },\n ],\n} as const satisfies WidgetPropertySchema;\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/hooks/use-activities.ts","../src/widgets/RecentActivityWidget.tsx"],"names":[],"mappings":"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","file":"chunk-YGATS7HW.js","sourcesContent":["import { useQuery } from \"@tanstack/react-query\";\nimport { useDataSourceConfig } from \"@fluid-app/rep-core/data-sources/context\";\n\n// API types\nexport type ActivityContact = {\n id: number;\n token: string | null;\n first_name: string | null;\n last_name: string | null;\n avatar_url: string | null;\n full_name: string | null;\n email: string | null;\n phone: string | null;\n city: string | null;\n state: string | null;\n};\n\nexport type ActivityVisitor = {\n id: number;\n ip_address: string | null;\n city: string | null;\n state: string | null;\n country: string | null;\n utm_source: string | null;\n utm_campaign: string | null;\n};\n\nexport type ActivitySlug =\n | \"abandoned_cart\"\n | \"announcements\"\n | \"cart_items_added\"\n | \"comment_reply\"\n | \"direct_message\"\n | \"fantasy_point\"\n | \"new_lead\"\n | \"order_placed\"\n | \"page_views\"\n | \"page_views_contact\"\n | \"tasks\"\n | \"upcoming_event\"\n | \"video\"\n | \"video_complete\"\n | \"video_complete_contact\"\n | \"video_contact\"\n | \"message_received\"\n | \"message_sent\"\n | \"new_cart_items_added\"\n | \"smart_link_clicked\"\n | \"review_left\";\n\nexport type ApiActivity = {\n id: number;\n user_id: number;\n title: string;\n description: string | null;\n read_at: string | null;\n created_at: string;\n relation_type: string;\n company_id: number;\n state: \"new\" | \"earlier\";\n slug: ActivitySlug;\n relation: Record<string, unknown>;\n contact: ActivityContact | null;\n visitor: ActivityVisitor | null;\n};\n\ntype PaginationInfo = {\n current: number;\n previous: number | null;\n next: number | null;\n per_page: number;\n pages: number;\n count: number;\n};\n\ntype ApiResponse = [{ pagination: PaginationInfo }, { items: ApiActivity[] }];\n\n// Transformed activity for display\nexport type Activity = {\n id: number;\n userName: string;\n avatarUrl: string | null;\n activityType: string;\n targetName: string;\n timestamp: string;\n slug: ActivitySlug;\n};\n\nexport function useActivities() {\n const { baseUrl, getApiHeaders } = useDataSourceConfig();\n\n return useQuery({\n queryKey: [\"rep-widget-use\", \"activities\", baseUrl] as const,\n queryFn: async ({ signal }): Promise<Activity[]> => {\n const url = baseUrl\n ? `${baseUrl}/v2/activities.json`\n : \"/v2/activities.json\";\n const response = await fetch(url, {\n headers: {\n \"content-type\": \"application/json\",\n ...getApiHeaders?.(),\n },\n signal,\n });\n\n if (!response.ok) {\n throw new Error(`Failed to fetch activities: ${response.status}`);\n }\n\n const data: ApiResponse = await response.json();\n return transformActivities(data);\n },\n });\n}\n\n// Transform and format helpers\nfunction getUserName(\n contact: ActivityContact | null,\n visitor: ActivityVisitor | null,\n): string {\n if (contact?.full_name) {\n return contact.full_name;\n }\n if (contact?.first_name && contact?.last_name) {\n return `${contact.first_name} ${contact.last_name}`;\n }\n if (visitor?.city && visitor?.state) {\n return `Visitor from ${visitor.city}, ${visitor.state}`;\n }\n return \"Unknown Visitor\";\n}\n\nfunction transformActivities(rawData: ApiResponse): Activity[] {\n const itemsObj = rawData[1];\n if (!itemsObj?.items) return [];\n\n return itemsObj.items\n .map((activity) => ({\n id: activity.id,\n userName: getUserName(activity.contact, activity.visitor),\n avatarUrl: activity.contact?.avatar_url ?? null,\n activityType: formatActivityType(activity.slug),\n targetName: activity.description || activity.title,\n timestamp: activity.created_at,\n slug: activity.slug,\n }))\n .sort(\n (a, b) =>\n new Date(b.timestamp).getTime() - new Date(a.timestamp).getTime(),\n );\n}\n\nfunction formatActivityType(slug: string): string {\n return slug\n .split(\"_\")\n .map((word) => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n}\n","import { useMemo, type ComponentProps } from \"react\";\nimport type {\n BackgroundValue,\n BorderRadiusOptions,\n ColorOptions,\n FontSizeOptions,\n PaddingOptions,\n} from \"@fluid-app/rep-core/types\";\nimport type { WidgetPropertySchema } from \"@fluid-app/rep-core/registries\";\nimport {\n getBorderRadiusField,\n getColorField,\n getFontSizeField,\n getPaddingField,\n} from \"../core/fields\";\nimport {\n useActivities,\n type Activity,\n type ActivitySlug,\n} from \"../hooks/use-activities\";\nimport { ErrorState } from \"../components/error-state\";\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\nimport type { IconDefinition } from \"@fortawesome/fontawesome-svg-core\";\nimport {\n faBell,\n faCalendar,\n faSquareCheck,\n faEye,\n faComment,\n faPlay,\n faCartShopping,\n faStar,\n faTrophy,\n faUser,\n faUserPlus,\n} from \"@fortawesome/pro-regular-svg-icons\";\n\n// Format timestamp to time string\nconst formatTimestamp = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toLocaleTimeString(\"en-US\", {\n hour: \"numeric\",\n minute: \"2-digit\",\n hour12: true,\n });\n};\n\n// Format date for grouping header\nconst formatDateHeader = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toLocaleDateString(\"en-US\", {\n month: \"long\",\n day: \"numeric\",\n });\n};\n\n// Get date string for grouping (without time)\nconst getDateKey = (timestamp: string): string => {\n const date = new Date(timestamp);\n return date.toISOString().split(\"T\")[0] ?? timestamp;\n};\n\n// Group activities by date\nconst groupActivitiesByDate = (\n activities: Activity[],\n): Map<string, Activity[]> => {\n const grouped = new Map<string, Activity[]>();\n\n for (const activity of activities) {\n const dateKey = getDateKey(activity.timestamp);\n const existing = grouped.get(dateKey);\n if (existing) {\n existing.push(activity);\n } else {\n grouped.set(dateKey, [activity]);\n }\n }\n\n return grouped;\n};\n\n// Activity slug to icon mapping\nconst ACTIVITY_ICON_MAP: Record<ActivitySlug, IconDefinition> = {\n // Orders/Cart\n order_placed: faCartShopping,\n abandoned_cart: faCartShopping,\n cart_items_added: faCartShopping,\n new_cart_items_added: faCartShopping,\n // Messages\n direct_message: faComment,\n comment_reply: faComment,\n message_received: faComment,\n message_sent: faComment,\n // Video\n video: faPlay,\n video_complete: faPlay,\n video_contact: faPlay,\n video_complete_contact: faPlay,\n // Leads\n new_lead: faUserPlus,\n page_views_contact: faUserPlus,\n smart_link_clicked: faUserPlus,\n // Page Views\n page_views: faEye,\n // Events\n upcoming_event: faCalendar,\n // Reviews\n review_left: faStar,\n // Tasks\n tasks: faSquareCheck,\n // Announcements\n announcements: faBell,\n // Fantasy\n fantasy_point: faTrophy,\n};\n\nconst getActivityIcon = (slug: ActivitySlug) =>\n ACTIVITY_ICON_MAP[slug] ?? faUser;\n\n// Activity feed item component\ntype ActivityFeedItemProps = {\n activity: Activity;\n accentColor: ColorOptions;\n textColor: ColorOptions;\n};\n\nfunction ActivityFeedItem({\n activity,\n accentColor,\n textColor,\n}: ActivityFeedItemProps) {\n const icon = getActivityIcon(activity.slug);\n\n return (\n <div className=\"flex w-full items-start gap-1.5\">\n {/* Avatar */}\n <div className=\"shrink-0\">\n {activity.avatarUrl ? (\n <div className=\"relative size-8 overflow-hidden rounded-full\">\n <img\n src={activity.avatarUrl}\n alt={activity.userName}\n className=\"size-full object-cover\"\n />\n <div className=\"absolute inset-0 rounded-full border border-foreground/[0.08]\" />\n </div>\n ) : (\n <div\n className={`flex size-8 items-center justify-center rounded-full bg-muted`}\n >\n <FontAwesomeIcon\n icon={icon}\n className={`size-3.5 text-${textColor} opacity-60`}\n />\n </div>\n )}\n </div>\n\n {/* Content */}\n <div className=\"min-w-0 flex-1\">\n <div className=\"flex w-full items-center gap-1.5\">\n <p\n className={`flex-1 text-base font-semibold text-${textColor} truncate`}\n >\n {activity.activityType}\n </p>\n <p className={`text-xs text-${textColor} shrink-0 opacity-50`}>\n {formatTimestamp(activity.timestamp)}\n </p>\n </div>\n <p className={`text-sm text-${textColor} opacity-80`}>\n <span className={`font-medium text-${accentColor}`}>\n {activity.userName}\n </span>{\" \"}\n {activity.targetName}\n </p>\n </div>\n </div>\n );\n}\n\ntype RecentActivityWidgetProps = ComponentProps<\"div\"> & {\n // Title\n titleEnabled?: boolean;\n titleText?: string;\n titleFontSize?: FontSizeOptions;\n titleColor?: ColorOptions;\n\n // Styling\n background?: BackgroundValue;\n textColor?: ColorOptions;\n accentColor?: ColorOptions;\n padding?: PaddingOptions;\n borderRadius?: BorderRadiusOptions;\n\n // Activity settings\n maxItemsToShow?: number;\n};\n\nexport function RecentActivityWidget({\n // Title defaults\n titleEnabled = true,\n titleText = \"Recent Activity\",\n titleFontSize = \"lg\",\n titleColor = \"foreground\",\n\n // Styling defaults\n background = {\n type: \"solid\",\n color: \"background\",\n },\n textColor = \"foreground\",\n accentColor = \"primary\",\n padding = 4,\n borderRadius = \"md\",\n\n // Activity defaults\n maxItemsToShow = 5,\n\n className,\n ...props\n}: RecentActivityWidgetProps) {\n const backgroundColor = background.color || \"background\";\n const backgroundImage =\n (background.resource?.image_url || background.resource?.imageUrl) &&\n background.type === \"image\"\n ? `url(${background.resource.image_url || background.resource.imageUrl})`\n : \"none\";\n const { data: activities = [], isLoading, isError } = useActivities();\n\n const groupedActivities = useMemo(\n () => groupActivitiesByDate(activities),\n [activities],\n );\n\n const totalCount = Math.min(activities.length, maxItemsToShow);\n\n // Get activities to display (limited by maxItemsToShow)\n const activitiesToShow = useMemo(() => {\n const result: { date: string; items: Activity[] }[] = [];\n let count = 0;\n\n for (const [dateKey, items] of groupedActivities) {\n if (count >= maxItemsToShow) break;\n\n const remainingSlots = maxItemsToShow - count;\n const itemsToAdd = items.slice(0, remainingSlots);\n\n if (itemsToAdd.length > 0) {\n result.push({\n date: formatDateHeader(items[0]?.timestamp ?? dateKey),\n items: itemsToAdd,\n });\n count += itemsToAdd.length;\n }\n }\n\n return result;\n }, [groupedActivities, maxItemsToShow]);\n\n return (\n <div\n className={`@container overflow-hidden rounded-${borderRadius} bg-${backgroundColor} text-${textColor} border border-muted ${className}`}\n style={{ backgroundImage }}\n {...props}\n >\n <div className={`p-${padding} flex flex-col gap-2`}>\n {/* Header */}\n {titleEnabled && titleText && (\n <div className=\"flex w-full items-start gap-2\">\n <h2\n className={`flex-1 text-${titleFontSize} font-bold text-${titleColor}`}\n >\n {titleText}\n </h2>\n {!isLoading && (\n <span\n className={`text-4xl font-bold text-${textColor} leading-none`}\n >\n {totalCount.toString().padStart(2, \"0\")}\n </span>\n )}\n </div>\n )}\n\n {/* Loading state */}\n {isLoading ? (\n <div className=\"flex min-h-[200px] items-center justify-center\">\n <div className=\"h-8 w-8 animate-spin rounded-full border-2 border-current border-t-transparent\" />\n </div>\n ) : isError ? (\n /* Error state */\n <ErrorState />\n ) : activities.length === 0 ? (\n /* Empty state */\n <div className=\"flex min-h-[200px] flex-col items-center justify-center gap-2\">\n <FontAwesomeIcon\n icon={faUser}\n className={`size-12 text-${textColor} opacity-30`}\n />\n <p\n className={`text-base font-semibold text-${textColor} opacity-50`}\n >\n No Activity To Report\n </p>\n <p className={`text-sm text-${textColor} opacity-40`}>\n You'll Do Great!\n </p>\n </div>\n ) : (\n /* Activity list */\n <div className=\"flex flex-col gap-4\">\n {activitiesToShow.map((group, groupIndex) => (\n <div key={groupIndex} className=\"flex flex-col gap-4\">\n {/* Date header */}\n <p className={`text-base font-semibold text-${textColor}`}>\n {group.date}\n </p>\n\n {/* Activity items */}\n <div className=\"flex flex-col gap-4\">\n {group.items.map((activity) => (\n <ActivityFeedItem\n key={activity.id}\n activity={activity}\n accentColor={accentColor}\n textColor={textColor}\n />\n ))}\n </div>\n </div>\n ))}\n </div>\n )}\n </div>\n </div>\n );\n}\n\nexport const recentActivityWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"RecentActivityWidget\",\n displayName: \"Recent Activity Widget\",\n tabsConfig: [{ id: \"styling\", label: \"Styling\" }],\n fields: [\n // Styling Tab - Title Group\n {\n key: \"titleEnabled\",\n label: \"Widget Title\",\n type: \"boolean\",\n description: \"Enable the title displayed above the activity feed\",\n defaultValue: true,\n tab: \"styling\",\n group: \"Title\",\n },\n {\n key: \"titleText\",\n label: \"Title\",\n type: \"text\",\n description: \"Title text displayed above the activity feed\",\n defaultValue: \"Recent Activity\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n },\n getFontSizeField({\n key: \"titleFontSize\",\n label: \"Title Font Size\",\n description: \"Font size for the widget title\",\n defaultValue: \"xl\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n getColorField({\n key: \"titleColor\",\n label: \"Title Color\",\n description: \"Color for the widget title\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Title\",\n requiresKeyToBeTrue: \"titleEnabled\",\n }),\n\n // Styling Tab - Design Group\n {\n type: \"background\",\n key: \"background\",\n label: \"Background\",\n description: \"Background for the widget container\",\n defaultValue: \"background\",\n tab: \"styling\",\n group: \"Design\",\n },\n getColorField({\n key: \"textColor\",\n label: \"Text Color\",\n description: \"Default text color for activity content\",\n defaultValue: \"foreground\",\n tab: \"styling\",\n group: \"Design\",\n }),\n getColorField({\n key: \"accentColor\",\n label: \"Accent Color\",\n description: \"Color used for links and highlights\",\n defaultValue: \"primary\",\n tab: \"styling\",\n group: \"Design\",\n }),\n {\n key: \"separator\",\n type: \"separator\",\n label: \"Separator\",\n tab: \"styling\",\n group: \"Design\",\n },\n getPaddingField({\n key: \"padding\",\n label: \"Padding\",\n description: \"Padding around the widget container\",\n defaultValue: 4,\n tab: \"styling\",\n group: \"Design\",\n }),\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Border radius for the widget container\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n\n // Styling Tab - Display Group\n {\n key: \"maxItemsToShow\",\n label: \"Max Items\",\n type: \"number\",\n description: \"Maximum number of activity items to display\",\n defaultValue: 5,\n tab: \"styling\",\n group: \"Display\",\n },\n ],\n} as const satisfies WidgetPropertySchema;\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { MediaRenderer } from './chunk-T6BC5TUS.js';
|
|
2
|
-
import { getBorderRadiusField } from '@fluid-app/rep-core/registries';
|
|
2
|
+
import { getBorderRadiusField, getHeightField } from '@fluid-app/rep-core/registries';
|
|
3
3
|
import { jsx } from 'react/jsx-runtime';
|
|
4
4
|
|
|
5
5
|
function VideoWidget({
|
|
@@ -111,20 +111,18 @@ var videoWidgetPropertySchema = {
|
|
|
111
111
|
tab: "styling",
|
|
112
112
|
group: "Design"
|
|
113
113
|
},
|
|
114
|
-
{
|
|
114
|
+
getHeightField({
|
|
115
115
|
key: "fixedHeight",
|
|
116
116
|
label: "Height",
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
max: 500,
|
|
117
|
+
description: "Fixed height of the video container",
|
|
118
|
+
min: 10,
|
|
119
|
+
max: 1200,
|
|
121
120
|
step: 10,
|
|
122
|
-
defaultValue:
|
|
123
|
-
unit: "px",
|
|
121
|
+
defaultValue: "200px",
|
|
124
122
|
tab: "styling",
|
|
125
123
|
group: "Design",
|
|
126
124
|
requiresKeyValue: { key: "verticalSizing", value: "fixed" }
|
|
127
|
-
},
|
|
125
|
+
}),
|
|
128
126
|
{
|
|
129
127
|
key: "displayFit",
|
|
130
128
|
label: "Display Fit",
|
|
@@ -190,5 +188,5 @@ var videoWidgetPropertySchema = {
|
|
|
190
188
|
};
|
|
191
189
|
|
|
192
190
|
export { VideoWidget, videoWidgetPropertySchema };
|
|
193
|
-
//# sourceMappingURL=chunk-
|
|
194
|
-
//# sourceMappingURL=chunk-
|
|
191
|
+
//# sourceMappingURL=chunk-ZDWZKRJ4.js.map
|
|
192
|
+
//# sourceMappingURL=chunk-ZDWZKRJ4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/widgets/VideoWidget.tsx"],"names":[],"mappings":"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","file":"chunk-ZDWZKRJ4.js","sourcesContent":["import type { ComponentProps } from \"react\";\nimport {\n getBorderRadiusField,\n getHeightField,\n type WidgetPropertySchema,\n} from \"@fluid-app/rep-core/registries\";\nimport type {\n BorderRadiusOptions,\n ShareableItem,\n} from \"@fluid-app/rep-core/types\";\nimport { MediaRenderer } from \"../components/MediaRenderer\";\n\ntype VideoWidgetProps = ComponentProps<\"div\"> & {\n src?: string;\n poster?: string;\n borderRadius?: BorderRadiusOptions;\n verticalSizing?: \"auto\" | \"fixed\";\n fixedHeight?: string;\n displayFit?: \"cover\" | \"contain\";\n focusPoint?: string;\n controls?: boolean;\n autoplay?: boolean;\n loop?: boolean;\n muted?: boolean;\n resource?: ShareableItem;\n useCustomUrl?: boolean;\n};\n\nexport function VideoWidget({\n src = \"\",\n poster = \"\",\n borderRadius = \"md\",\n verticalSizing = \"auto\",\n fixedHeight = \"200px\",\n displayFit = \"cover\",\n focusPoint,\n controls = true,\n autoplay = false,\n loop = false,\n muted = false,\n resource,\n useCustomUrl,\n}: VideoWidgetProps) {\n const effectiveSrc = useCustomUrl ? src : (resource?.videoUrl ?? src);\n const effectivePoster = useCustomUrl\n ? poster\n : (resource?.imageUrl ?? poster);\n\n const isFixed = verticalSizing === \"fixed\";\n\n return (\n <div\n className={`relative w-full overflow-hidden rounded-${borderRadius}`}\n style={isFixed ? { height: fixedHeight } : undefined}\n >\n <MediaRenderer\n mediaType=\"video\"\n src={effectiveSrc}\n poster={effectivePoster}\n objectFit={isFixed ? displayFit : undefined}\n focusPoint={isFixed ? focusPoint : undefined}\n controls={controls}\n autoplay={autoplay}\n loop={loop}\n muted={muted}\n />\n </div>\n );\n}\n\nexport const videoWidgetPropertySchema: WidgetPropertySchema = {\n widgetType: \"VideoWidget\",\n displayName: \"Video\",\n tabsConfig: [\n { id: \"styling\", label: \"Styling\" },\n { id: \"behavior\", label: \"Behavior\" },\n ],\n fields: [\n // Styling tab - Content group\n {\n key: \"resource\",\n label: \"Select Video\",\n type: \"resource\",\n description: \"Browse and select a video\",\n allowedTypes: [\"Medium\"],\n tab: \"styling\",\n group: \"Content\",\n },\n {\n key: \"useCustomUrl\",\n label: \"Use Custom URL\",\n type: \"boolean\",\n description: \"Enter a custom video URL instead of selecting media\",\n defaultValue: false,\n tab: \"styling\",\n group: \"Content\",\n },\n {\n key: \"src\",\n label: \"Video URL\",\n type: \"text\",\n description: \"The source URL of the video\",\n defaultValue: \"\",\n tab: \"styling\",\n group: \"Content\",\n requiresKeyToBeTrue: \"useCustomUrl\",\n },\n {\n key: \"poster\",\n label: \"Poster Image URL\",\n type: \"text\",\n description: \"Thumbnail image displayed before video plays\",\n defaultValue: \"\",\n tab: \"styling\",\n group: \"Content\",\n requiresKeyToBeTrue: \"useCustomUrl\",\n },\n\n // Styling tab - Design group\n getBorderRadiusField({\n key: \"borderRadius\",\n label: \"Border Radius\",\n description: \"Border radius for the calendar container\",\n defaultValue: \"md\",\n tab: \"styling\",\n group: \"Design\",\n }),\n {\n key: \"verticalSizing\",\n label: \"Vertical Sizing\",\n type: \"buttonGroup\",\n description: \"How the video height is determined\",\n options: [\n { label: \"Auto\", value: \"auto\" },\n { label: \"Fixed\", value: \"fixed\" },\n ],\n defaultValue: \"auto\",\n tab: \"styling\",\n group: \"Design\",\n },\n getHeightField({\n key: \"fixedHeight\",\n label: \"Height\",\n description: \"Fixed height of the video container\",\n min: 10,\n max: 1200,\n step: 10,\n defaultValue: \"200px\",\n tab: \"styling\",\n group: \"Design\",\n requiresKeyValue: { key: \"verticalSizing\", value: \"fixed\" },\n }),\n {\n key: \"displayFit\",\n label: \"Display Fit\",\n type: \"buttonGroup\",\n description: \"How the video fills its container\",\n options: [\n { label: \"Cover\", value: \"cover\" },\n { label: \"Contain\", value: \"contain\" },\n ],\n defaultValue: \"cover\",\n tab: \"styling\",\n group: \"Design\",\n requiresKeyValue: { key: \"verticalSizing\", value: \"fixed\" },\n },\n {\n key: \"focusPoint\",\n label: \"Focus Point\",\n type: \"contentPosition\",\n description: \"The focal point of the video within its container\",\n defaultValue: \"center\",\n tab: \"styling\",\n group: \"Design\",\n requiresKeyValue: { key: \"verticalSizing\", value: \"fixed\" },\n },\n\n // Behavior tab\n {\n key: \"controls\",\n label: \"Show Controls\",\n type: \"boolean\",\n description: \"Display video playback controls\",\n defaultValue: true,\n tab: \"behavior\",\n group: \"Behavior\",\n },\n {\n key: \"autoplay\",\n label: \"Autoplay\",\n type: \"boolean\",\n description: \"Automatically start playing the video\",\n defaultValue: false,\n tab: \"behavior\",\n group: \"Behavior\",\n },\n {\n key: \"loop\",\n label: \"Loop\",\n type: \"boolean\",\n description: \"Repeat the video when it ends\",\n defaultValue: false,\n tab: \"behavior\",\n group: \"Behavior\",\n },\n {\n key: \"muted\",\n label: \"Muted\",\n type: \"boolean\",\n description: \"Start with audio muted\",\n defaultValue: false,\n tab: \"behavior\",\n group: \"Behavior\",\n },\n ],\n};\n"]}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var chunkHDA2ZOV2_cjs = require('../chunk-HDA2ZOV2.cjs');
|
|
4
3
|
var chunk3CUVGQQI_cjs = require('../chunk-3CUVGQQI.cjs');
|
|
4
|
+
var clsx = require('clsx');
|
|
5
|
+
var tailwindMerge = require('tailwind-merge');
|
|
5
6
|
|
|
7
|
+
function cn(...inputs) {
|
|
8
|
+
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
9
|
+
}
|
|
6
10
|
|
|
7
|
-
|
|
8
|
-
Object.defineProperty(exports, "cn", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function () { return chunkHDA2ZOV2_cjs.cn; }
|
|
11
|
-
});
|
|
12
11
|
Object.defineProperty(exports, "ErrorState", {
|
|
13
12
|
enumerable: true,
|
|
14
13
|
get: function () { return chunk3CUVGQQI_cjs.ErrorState; }
|
|
15
14
|
});
|
|
15
|
+
exports.cn = cn;
|
|
16
16
|
//# sourceMappingURL=index.cjs.map
|
|
17
17
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
|
1
|
+
{"version":3,"sources":["../../src/lib/utils.ts"],"names":["twMerge","clsx"],"mappings":";;;;;;AAGO,SAAS,MAAM,MAAA,EAA+B;AACnD,EAAA,OAAOA,qBAAA,CAAQC,SAAA,CAAK,MAAM,CAAC,CAAA;AAC7B","file":"index.cjs","sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: readonly ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"]}
|
package/dist/components/index.js
CHANGED
|
@@ -1,4 +1,11 @@
|
|
|
1
|
-
export { cn } from '../chunk-5HHN5MRZ.js';
|
|
2
1
|
export { ErrorState } from '../chunk-GRFCSQ2M.js';
|
|
2
|
+
import { clsx } from 'clsx';
|
|
3
|
+
import { twMerge } from 'tailwind-merge';
|
|
4
|
+
|
|
5
|
+
function cn(...inputs) {
|
|
6
|
+
return twMerge(clsx(inputs));
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export { cn };
|
|
3
10
|
//# sourceMappingURL=index.js.map
|
|
4
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/lib/utils.ts"],"names":[],"mappings":";;;;AAGO,SAAS,MAAM,MAAA,EAA+B;AACnD,EAAA,OAAO,OAAA,CAAQ,IAAA,CAAK,MAAM,CAAC,CAAA;AAC7B","file":"index.js","sourcesContent":["import { type ClassValue, clsx } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: readonly ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import * as
|
|
2
|
+
import * as react from 'react';
|
|
3
3
|
import { ComponentType, ReactNode } from 'react';
|
|
4
4
|
import { WidgetSchema } from '@fluid-app/rep-core/types';
|
|
5
5
|
|
|
@@ -28,7 +28,7 @@ type WidgetRegistry = Readonly<Record<string, WidgetComponent<any>>>;
|
|
|
28
28
|
*
|
|
29
29
|
* Default to undefined - registry must be provided by a RegistryProvider.
|
|
30
30
|
*/
|
|
31
|
-
declare const RegistryContext:
|
|
31
|
+
declare const RegistryContext: react.Context<Readonly<Record<string, WidgetComponent<any>>> | undefined>;
|
|
32
32
|
interface RegistryProviderProps {
|
|
33
33
|
registry?: WidgetRegistry;
|
|
34
34
|
children: ReactNode;
|
|
@@ -63,7 +63,7 @@ interface ScreenRendererComponentProps {
|
|
|
63
63
|
*
|
|
64
64
|
* Default is undefined — container widgets fall back to the local ScreenRenderer import.
|
|
65
65
|
*/
|
|
66
|
-
declare const ScreenRendererContext:
|
|
66
|
+
declare const ScreenRendererContext: react.Context<ComponentType<ScreenRendererComponentProps> | undefined>;
|
|
67
67
|
/**
|
|
68
68
|
* Hook to get the ScreenRenderer component from context.
|
|
69
69
|
* Returns undefined if no override has been provided.
|
package/dist/contexts/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import * as
|
|
2
|
+
import * as react from 'react';
|
|
3
3
|
import { ComponentType, ReactNode } from 'react';
|
|
4
4
|
import { WidgetSchema } from '@fluid-app/rep-core/types';
|
|
5
5
|
|
|
@@ -28,7 +28,7 @@ type WidgetRegistry = Readonly<Record<string, WidgetComponent<any>>>;
|
|
|
28
28
|
*
|
|
29
29
|
* Default to undefined - registry must be provided by a RegistryProvider.
|
|
30
30
|
*/
|
|
31
|
-
declare const RegistryContext:
|
|
31
|
+
declare const RegistryContext: react.Context<Readonly<Record<string, WidgetComponent<any>>> | undefined>;
|
|
32
32
|
interface RegistryProviderProps {
|
|
33
33
|
registry?: WidgetRegistry;
|
|
34
34
|
children: ReactNode;
|
|
@@ -63,7 +63,7 @@ interface ScreenRendererComponentProps {
|
|
|
63
63
|
*
|
|
64
64
|
* Default is undefined — container widgets fall back to the local ScreenRenderer import.
|
|
65
65
|
*/
|
|
66
|
-
declare const ScreenRendererContext:
|
|
66
|
+
declare const ScreenRendererContext: react.Context<ComponentType<ScreenRendererComponentProps> | undefined>;
|
|
67
67
|
/**
|
|
68
68
|
* Hook to get the ScreenRenderer component from context.
|
|
69
69
|
* Returns undefined if no override has been provided.
|
package/dist/core/index.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var chunkFSLUSFJ2_cjs = require('../chunk-FSLUSFJ2.cjs');
|
|
4
4
|
var chunkLOXFR6XC_cjs = require('../chunk-LOXFR6XC.cjs');
|
|
5
5
|
require('../chunk-JYWKXNUO.cjs');
|
|
6
|
-
var
|
|
6
|
+
var chunkJ6HCPXT5_cjs = require('../chunk-J6HCPXT5.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
@@ -25,31 +25,31 @@ Object.defineProperty(exports, "getMediaPropsFromWidgetSchema", {
|
|
|
25
25
|
});
|
|
26
26
|
Object.defineProperty(exports, "gapValues", {
|
|
27
27
|
enumerable: true,
|
|
28
|
-
get: function () { return
|
|
28
|
+
get: function () { return chunkJ6HCPXT5_cjs.gapValues; }
|
|
29
29
|
});
|
|
30
30
|
Object.defineProperty(exports, "getBorderRadiusField", {
|
|
31
31
|
enumerable: true,
|
|
32
|
-
get: function () { return
|
|
32
|
+
get: function () { return chunkJ6HCPXT5_cjs.getBorderRadiusField; }
|
|
33
33
|
});
|
|
34
34
|
Object.defineProperty(exports, "getButtonSizeField", {
|
|
35
35
|
enumerable: true,
|
|
36
|
-
get: function () { return
|
|
36
|
+
get: function () { return chunkJ6HCPXT5_cjs.getButtonSizeField; }
|
|
37
37
|
});
|
|
38
38
|
Object.defineProperty(exports, "getColorField", {
|
|
39
39
|
enumerable: true,
|
|
40
|
-
get: function () { return
|
|
40
|
+
get: function () { return chunkJ6HCPXT5_cjs.getColorField; }
|
|
41
41
|
});
|
|
42
42
|
Object.defineProperty(exports, "getFontSizeField", {
|
|
43
43
|
enumerable: true,
|
|
44
|
-
get: function () { return
|
|
44
|
+
get: function () { return chunkJ6HCPXT5_cjs.getFontSizeField; }
|
|
45
45
|
});
|
|
46
46
|
Object.defineProperty(exports, "getGapField", {
|
|
47
47
|
enumerable: true,
|
|
48
|
-
get: function () { return
|
|
48
|
+
get: function () { return chunkJ6HCPXT5_cjs.getGapField; }
|
|
49
49
|
});
|
|
50
50
|
Object.defineProperty(exports, "getPaddingField", {
|
|
51
51
|
enumerable: true,
|
|
52
|
-
get: function () { return
|
|
52
|
+
get: function () { return chunkJ6HCPXT5_cjs.getPaddingField; }
|
|
53
53
|
});
|
|
54
54
|
//# sourceMappingURL=index.cjs.map
|
|
55
55
|
//# sourceMappingURL=index.cjs.map
|
package/dist/core/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export { ScreenRenderer } from '../chunk-RKDOQV4T.js';
|
|
2
2
|
export { MediaRenderer, getMediaPropsFromShareable, getMediaPropsFromWidgetSchema } from '../chunk-T6BC5TUS.js';
|
|
3
3
|
import '../chunk-6GF46P3S.js';
|
|
4
|
-
export { gapValues, getBorderRadiusField, getButtonSizeField, getColorField, getFontSizeField, getGapField, getPaddingField } from '../chunk-
|
|
4
|
+
export { gapValues, getBorderRadiusField, getButtonSizeField, getColorField, getFontSizeField, getGapField, getPaddingField } from '../chunk-6ZECDBGI.js';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/ui/index.cjs
CHANGED
|
@@ -1,80 +1,77 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var chunkNOZVVD6G_cjs = require('../chunk-NOZVVD6G.cjs');
|
|
4
|
-
var chunkIJHUIM34_cjs = require('../chunk-IJHUIM34.cjs');
|
|
5
|
-
var chunkUH3FAS2R_cjs = require('../chunk-UH3FAS2R.cjs');
|
|
6
3
|
var chunkQV3OAAEQ_cjs = require('../chunk-QV3OAAEQ.cjs');
|
|
7
|
-
require('
|
|
4
|
+
var uiPrimitives = require('@fluid-app/ui-primitives');
|
|
8
5
|
|
|
9
6
|
|
|
10
7
|
|
|
11
|
-
Object.defineProperty(exports, "
|
|
8
|
+
Object.defineProperty(exports, "ScrollArrows", {
|
|
12
9
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkQV3OAAEQ_cjs.ScrollArrows; }
|
|
14
11
|
});
|
|
15
12
|
Object.defineProperty(exports, "Button", {
|
|
16
13
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
18
|
-
});
|
|
19
|
-
Object.defineProperty(exports, "buttonVariants", {
|
|
20
|
-
enumerable: true,
|
|
21
|
-
get: function () { return chunkIJHUIM34_cjs.buttonVariants; }
|
|
14
|
+
get: function () { return uiPrimitives.Button; }
|
|
22
15
|
});
|
|
23
16
|
Object.defineProperty(exports, "Card", {
|
|
24
17
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
18
|
+
get: function () { return uiPrimitives.Card; }
|
|
26
19
|
});
|
|
27
20
|
Object.defineProperty(exports, "CardAction", {
|
|
28
21
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
22
|
+
get: function () { return uiPrimitives.CardAction; }
|
|
30
23
|
});
|
|
31
24
|
Object.defineProperty(exports, "CardContent", {
|
|
32
25
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
26
|
+
get: function () { return uiPrimitives.CardContent; }
|
|
34
27
|
});
|
|
35
28
|
Object.defineProperty(exports, "CardDescription", {
|
|
36
29
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
30
|
+
get: function () { return uiPrimitives.CardDescription; }
|
|
38
31
|
});
|
|
39
32
|
Object.defineProperty(exports, "CardFooter", {
|
|
40
33
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
34
|
+
get: function () { return uiPrimitives.CardFooter; }
|
|
42
35
|
});
|
|
43
36
|
Object.defineProperty(exports, "CardHeader", {
|
|
44
37
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
38
|
+
get: function () { return uiPrimitives.CardHeader; }
|
|
46
39
|
});
|
|
47
40
|
Object.defineProperty(exports, "CardTitle", {
|
|
48
41
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
42
|
+
get: function () { return uiPrimitives.CardTitle; }
|
|
50
43
|
});
|
|
51
44
|
Object.defineProperty(exports, "ChartContainer", {
|
|
52
45
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
46
|
+
get: function () { return uiPrimitives.ChartContainer; }
|
|
54
47
|
});
|
|
55
48
|
Object.defineProperty(exports, "ChartLegend", {
|
|
56
49
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
50
|
+
get: function () { return uiPrimitives.ChartLegend; }
|
|
58
51
|
});
|
|
59
52
|
Object.defineProperty(exports, "ChartLegendContent", {
|
|
60
53
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
54
|
+
get: function () { return uiPrimitives.ChartLegendContent; }
|
|
62
55
|
});
|
|
63
56
|
Object.defineProperty(exports, "ChartStyle", {
|
|
64
57
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
58
|
+
get: function () { return uiPrimitives.ChartStyle; }
|
|
66
59
|
});
|
|
67
60
|
Object.defineProperty(exports, "ChartTooltip", {
|
|
68
61
|
enumerable: true,
|
|
69
|
-
get: function () { return
|
|
62
|
+
get: function () { return uiPrimitives.ChartTooltip; }
|
|
70
63
|
});
|
|
71
64
|
Object.defineProperty(exports, "ChartTooltipContent", {
|
|
72
65
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
66
|
+
get: function () { return uiPrimitives.ChartTooltipContent; }
|
|
74
67
|
});
|
|
75
|
-
Object.defineProperty(exports, "
|
|
68
|
+
Object.defineProperty(exports, "Input", {
|
|
76
69
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
70
|
+
get: function () { return uiPrimitives.Input; }
|
|
71
|
+
});
|
|
72
|
+
Object.defineProperty(exports, "buttonVariants", {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function () { return uiPrimitives.buttonVariants; }
|
|
78
75
|
});
|
|
79
76
|
//# sourceMappingURL=index.cjs.map
|
|
80
77
|
//# sourceMappingURL=index.cjs.map
|
package/dist/ui/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs","sourcesContent":[]}
|
package/dist/ui/index.d.cts
CHANGED
|
@@ -1,64 +1,5 @@
|
|
|
1
|
+
export { Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Input, buttonVariants } from '@fluid-app/ui-primitives';
|
|
1
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
|
-
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import * as RechartsPrimitive from 'recharts';
|
|
6
|
-
|
|
7
|
-
declare const buttonVariants: (props?: ({
|
|
8
|
-
variant?: "link" | "secondary" | "destructive" | "default" | "ghost" | "outline" | null | undefined;
|
|
9
|
-
size?: "icon" | "xl" | "lg" | "sm" | "default" | "icon-sm" | "icon-lg" | null | undefined;
|
|
10
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
11
|
-
declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
|
|
12
|
-
asChild?: boolean;
|
|
13
|
-
}): react_jsx_runtime.JSX.Element;
|
|
14
|
-
|
|
15
|
-
declare function Card({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
16
|
-
declare function CardHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
17
|
-
declare function CardTitle({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
18
|
-
declare function CardDescription({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
19
|
-
declare function CardAction({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
20
|
-
declare function CardContent({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
21
|
-
declare function CardFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
22
|
-
|
|
23
|
-
declare const THEMES: {
|
|
24
|
-
readonly light: "";
|
|
25
|
-
readonly dark: ".dark";
|
|
26
|
-
};
|
|
27
|
-
type ChartConfig = {
|
|
28
|
-
[k in string]: {
|
|
29
|
-
label?: React.ReactNode;
|
|
30
|
-
icon?: React.ComponentType;
|
|
31
|
-
} & ({
|
|
32
|
-
color?: string;
|
|
33
|
-
theme?: never;
|
|
34
|
-
} | {
|
|
35
|
-
color?: never;
|
|
36
|
-
theme: Record<keyof typeof THEMES, string>;
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
|
-
declare function ChartContainer({ id, className, children, config, ...props }: React.ComponentProps<"div"> & {
|
|
40
|
-
config: ChartConfig;
|
|
41
|
-
children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
|
|
42
|
-
}): react_jsx_runtime.JSX.Element;
|
|
43
|
-
declare const ChartStyle: ({ id, config }: {
|
|
44
|
-
id: string;
|
|
45
|
-
config: ChartConfig;
|
|
46
|
-
}) => react_jsx_runtime.JSX.Element | null;
|
|
47
|
-
declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
48
|
-
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React.ComponentProps<typeof RechartsPrimitive.Tooltip> & React.ComponentProps<"div"> & {
|
|
49
|
-
hideLabel?: boolean;
|
|
50
|
-
hideIndicator?: boolean;
|
|
51
|
-
indicator?: "line" | "dot" | "dashed";
|
|
52
|
-
nameKey?: string;
|
|
53
|
-
labelKey?: string;
|
|
54
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
55
|
-
declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
56
|
-
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
|
|
57
|
-
hideIcon?: boolean;
|
|
58
|
-
nameKey?: string;
|
|
59
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
60
|
-
|
|
61
|
-
declare function Input({ className, type, ...props }: React.ComponentProps<"input">): react_jsx_runtime.JSX.Element;
|
|
62
3
|
|
|
63
4
|
type ScrollArrowsProps = {
|
|
64
5
|
onPrevious: () => void;
|
|
@@ -66,4 +7,4 @@ type ScrollArrowsProps = {
|
|
|
66
7
|
};
|
|
67
8
|
declare function ScrollArrows({ onPrevious, onNext }: ScrollArrowsProps): react_jsx_runtime.JSX.Element;
|
|
68
9
|
|
|
69
|
-
export {
|
|
10
|
+
export { ScrollArrows };
|
package/dist/ui/index.d.ts
CHANGED
|
@@ -1,64 +1,5 @@
|
|
|
1
|
+
export { Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, ChartConfig, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Input, buttonVariants } from '@fluid-app/ui-primitives';
|
|
1
2
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
|
-
import * as class_variance_authority_types from 'class-variance-authority/types';
|
|
3
|
-
import { VariantProps } from 'class-variance-authority';
|
|
4
|
-
import * as React from 'react';
|
|
5
|
-
import * as RechartsPrimitive from 'recharts';
|
|
6
|
-
|
|
7
|
-
declare const buttonVariants: (props?: ({
|
|
8
|
-
variant?: "link" | "secondary" | "destructive" | "default" | "ghost" | "outline" | null | undefined;
|
|
9
|
-
size?: "icon" | "xl" | "lg" | "sm" | "default" | "icon-sm" | "icon-lg" | null | undefined;
|
|
10
|
-
} & class_variance_authority_types.ClassProp) | undefined) => string;
|
|
11
|
-
declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
|
|
12
|
-
asChild?: boolean;
|
|
13
|
-
}): react_jsx_runtime.JSX.Element;
|
|
14
|
-
|
|
15
|
-
declare function Card({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
16
|
-
declare function CardHeader({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
17
|
-
declare function CardTitle({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
18
|
-
declare function CardDescription({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
19
|
-
declare function CardAction({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
20
|
-
declare function CardContent({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
21
|
-
declare function CardFooter({ className, ...props }: React.ComponentProps<"div">): react_jsx_runtime.JSX.Element;
|
|
22
|
-
|
|
23
|
-
declare const THEMES: {
|
|
24
|
-
readonly light: "";
|
|
25
|
-
readonly dark: ".dark";
|
|
26
|
-
};
|
|
27
|
-
type ChartConfig = {
|
|
28
|
-
[k in string]: {
|
|
29
|
-
label?: React.ReactNode;
|
|
30
|
-
icon?: React.ComponentType;
|
|
31
|
-
} & ({
|
|
32
|
-
color?: string;
|
|
33
|
-
theme?: never;
|
|
34
|
-
} | {
|
|
35
|
-
color?: never;
|
|
36
|
-
theme: Record<keyof typeof THEMES, string>;
|
|
37
|
-
});
|
|
38
|
-
};
|
|
39
|
-
declare function ChartContainer({ id, className, children, config, ...props }: React.ComponentProps<"div"> & {
|
|
40
|
-
config: ChartConfig;
|
|
41
|
-
children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
|
|
42
|
-
}): react_jsx_runtime.JSX.Element;
|
|
43
|
-
declare const ChartStyle: ({ id, config }: {
|
|
44
|
-
id: string;
|
|
45
|
-
config: ChartConfig;
|
|
46
|
-
}) => react_jsx_runtime.JSX.Element | null;
|
|
47
|
-
declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
48
|
-
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: React.ComponentProps<typeof RechartsPrimitive.Tooltip> & React.ComponentProps<"div"> & {
|
|
49
|
-
hideLabel?: boolean;
|
|
50
|
-
hideIndicator?: boolean;
|
|
51
|
-
indicator?: "line" | "dot" | "dashed";
|
|
52
|
-
nameKey?: string;
|
|
53
|
-
labelKey?: string;
|
|
54
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
55
|
-
declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
56
|
-
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
|
|
57
|
-
hideIcon?: boolean;
|
|
58
|
-
nameKey?: string;
|
|
59
|
-
}): react_jsx_runtime.JSX.Element | null;
|
|
60
|
-
|
|
61
|
-
declare function Input({ className, type, ...props }: React.ComponentProps<"input">): react_jsx_runtime.JSX.Element;
|
|
62
3
|
|
|
63
4
|
type ScrollArrowsProps = {
|
|
64
5
|
onPrevious: () => void;
|
|
@@ -66,4 +7,4 @@ type ScrollArrowsProps = {
|
|
|
66
7
|
};
|
|
67
8
|
declare function ScrollArrows({ onPrevious, onNext }: ScrollArrowsProps): react_jsx_runtime.JSX.Element;
|
|
68
9
|
|
|
69
|
-
export {
|
|
10
|
+
export { ScrollArrows };
|