@fluid-app/portal-sdk 0.1.131 → 0.1.133

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 (146) hide show
  1. package/dist/{AlertWidget-WQ_XPDRo.mjs → AlertWidget-BYbcGyNr.mjs} +3 -3
  2. package/dist/{AlertWidget-WQ_XPDRo.mjs.map → AlertWidget-BYbcGyNr.mjs.map} +1 -1
  3. package/dist/{AppDownloadScreen-zNP4k8ht.cjs → AppDownloadScreen-B-i6Rydi.cjs} +1 -1
  4. package/dist/{AppDownloadScreen-BOfG3cqC.mjs → AppDownloadScreen-BpExiJat.mjs} +3 -3
  5. package/dist/{AppDownloadScreen-BOfG3cqC.mjs.map → AppDownloadScreen-BpExiJat.mjs.map} +1 -1
  6. package/dist/{AppDownloadScreen-BjCtTMPU.cjs → AppDownloadScreen-CIqSvpV0.cjs} +1 -1
  7. package/dist/{AppDownloadScreen-BjCtTMPU.cjs.map → AppDownloadScreen-CIqSvpV0.cjs.map} +1 -1
  8. package/dist/{BulletListWidget-BYcaQnVH.mjs → BulletListWidget-Bo5Kj1W-.mjs} +2 -2
  9. package/dist/{BulletListWidget-BYcaQnVH.mjs.map → BulletListWidget-Bo5Kj1W-.mjs.map} +1 -1
  10. package/dist/{CalendarWidget-Qb-utCFD.mjs → CalendarWidget-CCsceh_0.mjs} +2 -2
  11. package/dist/{CalendarWidget-Qb-utCFD.mjs.map → CalendarWidget-CCsceh_0.mjs.map} +1 -1
  12. package/dist/{CardWidget-zVxobZDH.mjs → CardWidget-BkOMSBQ-.mjs} +2 -2
  13. package/dist/{CardWidget-zVxobZDH.mjs.map → CardWidget-BkOMSBQ-.mjs.map} +1 -1
  14. package/dist/{CarouselWidget-dpRCljEx.mjs → CarouselWidget-B9LsTYUF.mjs} +2 -2
  15. package/dist/{CarouselWidget-dpRCljEx.mjs.map → CarouselWidget-B9LsTYUF.mjs.map} +1 -1
  16. package/dist/{CatchUpWidget-CSIXsR82.mjs → CatchUpWidget-CSJdJgs-.mjs} +2 -2
  17. package/dist/{CatchUpWidget-CSIXsR82.mjs.map → CatchUpWidget-CSJdJgs-.mjs.map} +1 -1
  18. package/dist/{ChartWidget-88hpX7ft.mjs → ChartWidget-Cpzqi6W4.mjs} +2 -2
  19. package/dist/{ChartWidget-88hpX7ft.mjs.map → ChartWidget-Cpzqi6W4.mjs.map} +1 -1
  20. package/dist/{ContactsScreen-BvoMicyB.mjs → ContactsScreen-BRmYDosJ.mjs} +5 -5
  21. package/dist/{ContactsScreen-BvoMicyB.mjs.map → ContactsScreen-BRmYDosJ.mjs.map} +1 -1
  22. package/dist/{ContainerWidget-DNS7ynby.mjs → ContainerWidget-DTchKDKw.mjs} +3 -3
  23. package/dist/{ContainerWidget-DNS7ynby.mjs.map → ContainerWidget-DTchKDKw.mjs.map} +1 -1
  24. package/dist/{CustomersScreen-xAauAB-B.mjs → CustomersScreen-Cnn-Wcza.mjs} +2 -2
  25. package/dist/{CustomersScreen-xAauAB-B.mjs.map → CustomersScreen-Cnn-Wcza.mjs.map} +1 -1
  26. package/dist/{EmbedWidget-BQYixJLj.mjs → EmbedWidget-Du9DMpSo.mjs} +2 -2
  27. package/dist/{EmbedWidget-BQYixJLj.mjs.map → EmbedWidget-Du9DMpSo.mjs.map} +1 -1
  28. package/dist/{FluidProvider-B-f_JVal.mjs → FluidProvider-BUdNsR8f.mjs} +49 -49
  29. package/dist/{FluidProvider-B-f_JVal.mjs.map → FluidProvider-BUdNsR8f.mjs.map} +1 -1
  30. package/dist/FluidProvider-CQoQjYxU.cjs.map +1 -1
  31. package/dist/{ImageWidget-DE9Fp_oH.mjs → ImageWidget-B1Mx3qKN.mjs} +2 -2
  32. package/dist/{ImageWidget-DE9Fp_oH.mjs.map → ImageWidget-B1Mx3qKN.mjs.map} +1 -1
  33. package/dist/{LayoutWidget-BFO_PHWw.mjs → LayoutWidget-Bgodl7eR.mjs} +2 -2
  34. package/dist/{LayoutWidget-BFO_PHWw.mjs.map → LayoutWidget-Bgodl7eR.mjs.map} +1 -1
  35. package/dist/{LinkWidget-JSoDi-ag.mjs → LinkWidget-B5PlWJHe.mjs} +2 -2
  36. package/dist/{LinkWidget-JSoDi-ag.mjs.map → LinkWidget-B5PlWJHe.mjs.map} +1 -1
  37. package/dist/{ListWidget-CBLZ8CjD.mjs → ListWidget-BWfsmVoc.mjs} +2 -2
  38. package/dist/{ListWidget-CBLZ8CjD.mjs.map → ListWidget-BWfsmVoc.mjs.map} +1 -1
  39. package/dist/{MessagingScreen-COWASb0E.mjs → MessagingScreen-CQwR5WA1.mjs} +9 -6
  40. package/dist/{MessagingScreen-COWASb0E.mjs.map → MessagingScreen-CQwR5WA1.mjs.map} +1 -1
  41. package/dist/{MySiteScreen-BasZFpx7.cjs → MySiteScreen-C00HjZdl.cjs} +1 -1
  42. package/dist/{MySiteScreen-B5-bV1-O.mjs → MySiteScreen-CcxWz0IH.mjs} +4 -4
  43. package/dist/{MySiteScreen-B5-bV1-O.mjs.map → MySiteScreen-CcxWz0IH.mjs.map} +1 -1
  44. package/dist/{MySiteScreen-DURa034X.cjs → MySiteScreen-D56qESn0.cjs} +1 -1
  45. package/dist/{MySiteScreen-DURa034X.cjs.map → MySiteScreen-D56qESn0.cjs.map} +1 -1
  46. package/dist/{MySiteWidget-BqtLSExC.mjs → MySiteWidget-mK0Mj3DS.mjs} +2 -2
  47. package/dist/{MySiteWidget-BqtLSExC.mjs.map → MySiteWidget-mK0Mj3DS.mjs.map} +1 -1
  48. package/dist/{NestedWidget-DIwW-wM7.mjs → NestedWidget-B6cUOyI3.mjs} +2 -2
  49. package/dist/{NestedWidget-DIwW-wM7.mjs.map → NestedWidget-B6cUOyI3.mjs.map} +1 -1
  50. package/dist/{OrdersScreen-BcFvAtJ_.mjs → OrdersScreen-CpOywVHJ.mjs} +4 -4
  51. package/dist/{OrdersScreen-BcFvAtJ_.mjs.map → OrdersScreen-CpOywVHJ.mjs.map} +1 -1
  52. package/dist/{PointsWidget-DgLGU995.mjs → PointsWidget-BlEzqgbK.mjs} +2 -2
  53. package/dist/{PointsWidget-DgLGU995.mjs.map → PointsWidget-BlEzqgbK.mjs.map} +1 -1
  54. package/dist/{ProductsScreen-Mu8doz5F.cjs → ProductsScreen-BPNdpsYm.cjs} +2 -2
  55. package/dist/{src-CMByt6YP.cjs → ProductsScreen-BY285fh-.cjs} +90 -31
  56. package/dist/ProductsScreen-BY285fh-.cjs.map +1 -0
  57. package/dist/ProductsScreen-DMldTDPg.mjs +42 -0
  58. package/dist/{src-DryOJTBW.mjs → ProductsScreen-jdy2j9_J.mjs} +86 -28
  59. package/dist/ProductsScreen-jdy2j9_J.mjs.map +1 -0
  60. package/dist/{ProfileScreen-CnQqdYBE.mjs → ProfileScreen-mAUuAFhe.mjs} +5 -5
  61. package/dist/{ProfileScreen-CnQqdYBE.mjs.map → ProfileScreen-mAUuAFhe.mjs.map} +1 -1
  62. package/dist/{QuickShareWidget-CajKauDa.mjs → QuickShareWidget-Lpox79Cq.mjs} +2 -2
  63. package/dist/{QuickShareWidget-CajKauDa.mjs.map → QuickShareWidget-Lpox79Cq.mjs.map} +1 -1
  64. package/dist/{RecentActivityWidget-BZYB21eR.mjs → RecentActivityWidget-BdPmAQq4.mjs} +2 -2
  65. package/dist/{RecentActivityWidget-BZYB21eR.mjs.map → RecentActivityWidget-BdPmAQq4.mjs.map} +1 -1
  66. package/dist/{SeparatorWidget-Lsd6juu7.mjs → SeparatorWidget-BS966Lk4.mjs} +2 -2
  67. package/dist/{SeparatorWidget-Lsd6juu7.mjs.map → SeparatorWidget-BS966Lk4.mjs.map} +1 -1
  68. package/dist/ShareablesScreen-B6tMQzuX.mjs +1314 -0
  69. package/dist/ShareablesScreen-B6tMQzuX.mjs.map +1 -0
  70. package/dist/{ShareablesScreen-oZhW2jGu.cjs → ShareablesScreen-DMBXIMMj.cjs} +2 -2
  71. package/dist/ShareablesScreen-d_ThfnNQ.mjs +42 -0
  72. package/dist/ShareablesScreen-znVUD_OK.cjs +1332 -0
  73. package/dist/ShareablesScreen-znVUD_OK.cjs.map +1 -0
  74. package/dist/{ShopScreen-B1UzSmK8.cjs → ShopScreen-BVIT_QS-.cjs} +6 -4
  75. package/dist/ShopScreen-BVIT_QS-.cjs.map +1 -0
  76. package/dist/{ShopScreen-7HWz_B6R.cjs → ShopScreen-Bsjdn-E9.cjs} +1 -1
  77. package/dist/{ShopScreen-D1N3RWm9.mjs → ShopScreen-C1bnhxpj.mjs} +9 -7
  78. package/dist/ShopScreen-C1bnhxpj.mjs.map +1 -0
  79. package/dist/{SpacerWidget-B3zkEePP.mjs → SpacerWidget-BimE1fjJ.mjs} +2 -2
  80. package/dist/{SpacerWidget-B3zkEePP.mjs.map → SpacerWidget-BimE1fjJ.mjs.map} +1 -1
  81. package/dist/{SubscriptionsScreen-Bw3xkq7t.mjs → SubscriptionsScreen-QHf54yD7.mjs} +5 -5
  82. package/dist/{SubscriptionsScreen-Bw3xkq7t.mjs.map → SubscriptionsScreen-QHf54yD7.mjs.map} +1 -1
  83. package/dist/{TableWidget-Xz0d4UH5.mjs → TableWidget-CfSqeNQj.mjs} +2 -2
  84. package/dist/{TableWidget-Xz0d4UH5.mjs.map → TableWidget-CfSqeNQj.mjs.map} +1 -1
  85. package/dist/{TextWidget-CzUlNmCl.mjs → TextWidget-DYpbUtQh.mjs} +2 -2
  86. package/dist/{TextWidget-CzUlNmCl.mjs.map → TextWidget-DYpbUtQh.mjs.map} +1 -1
  87. package/dist/{ToDoWidget-qyFLHU_o.mjs → ToDoWidget-DaxkgCEl.mjs} +2 -2
  88. package/dist/{ToDoWidget-qyFLHU_o.mjs.map → ToDoWidget-DaxkgCEl.mjs.map} +1 -1
  89. package/dist/{UpgradeScreen-CIiEjeTZ.cjs → UpgradeScreen--eiiE1rX.cjs} +1 -1
  90. package/dist/{UpgradeScreen-IaYxGm7M.cjs → UpgradeScreen-7on9GOgu.cjs} +1 -1
  91. package/dist/{UpgradeScreen-IaYxGm7M.cjs.map → UpgradeScreen-7on9GOgu.cjs.map} +1 -1
  92. package/dist/{UpgradeScreen-BZdJQxb9.mjs → UpgradeScreen-p7aAXWFM.mjs} +2 -2
  93. package/dist/{UpgradeScreen-BZdJQxb9.mjs.map → UpgradeScreen-p7aAXWFM.mjs.map} +1 -1
  94. package/dist/{VideoWidget-CpUPsOI7.mjs → VideoWidget-CHktk3hs.mjs} +2 -2
  95. package/dist/{VideoWidget-CpUPsOI7.mjs.map → VideoWidget-CHktk3hs.mjs.map} +1 -1
  96. package/dist/{dist-B1HwSrso.mjs → dist-CayuD99K.mjs} +1 -1
  97. package/dist/{dist-B1HwSrso.mjs.map → dist-CayuD99K.mjs.map} +1 -1
  98. package/dist/{es-BcjHf1ZX.mjs → es-CTLNkiWp.mjs} +38 -3
  99. package/dist/{es-BcjHf1ZX.mjs.map → es-CTLNkiWp.mjs.map} +1 -1
  100. package/dist/index.cjs +19 -19
  101. package/dist/index.d.cts.map +1 -1
  102. package/dist/index.d.mts.map +1 -1
  103. package/dist/index.mjs +70 -70
  104. package/dist/index.mjs.map +1 -1
  105. package/dist/{order-status-badge-OZ1InBwZ.mjs → order-status-badge-Bt2gMEPZ.mjs} +1 -1
  106. package/dist/{order-status-badge-OZ1InBwZ.mjs.map → order-status-badge-Bt2gMEPZ.mjs.map} +1 -1
  107. package/dist/{sortable.esm-DSrWP4x9.mjs → sortable.esm-BzPsVjTI.mjs} +1 -1
  108. package/dist/{sortable.esm-DSrWP4x9.mjs.map → sortable.esm-BzPsVjTI.mjs.map} +1 -1
  109. package/dist/{src-DIcd2_ex.cjs → src-C5GUPE_i.cjs} +37 -26
  110. package/dist/src-C5GUPE_i.cjs.map +1 -0
  111. package/dist/{src-k03GJfKt.mjs → src-DcIV4Mpe.mjs} +41 -30
  112. package/dist/src-DcIV4Mpe.mjs.map +1 -0
  113. package/dist/{use-account-clients-CZw8FqxD.mjs → use-account-clients-BjK5QVYl.mjs} +2 -2
  114. package/dist/{use-account-clients-CZw8FqxD.mjs.map → use-account-clients-BjK5QVYl.mjs.map} +1 -1
  115. package/dist/{use-current-user-C6af9r0B.mjs → use-current-user-BP_GJuQe.mjs} +3 -3
  116. package/dist/{use-current-user-C6af9r0B.mjs.map → use-current-user-BP_GJuQe.mjs.map} +1 -1
  117. package/dist/{use-fluid-api-R0Qybt_F.mjs → use-fluid-api-UtVBk6E-.mjs} +2 -2
  118. package/dist/{use-fluid-api-R0Qybt_F.mjs.map → use-fluid-api-UtVBk6E-.mjs.map} +1 -1
  119. package/dist/{use-fluid-auth-_pnjCu2c.mjs → use-fluid-auth-DrPeCmW-.mjs} +2 -2
  120. package/dist/{use-fluid-auth-_pnjCu2c.mjs.map → use-fluid-auth-DrPeCmW-.mjs.map} +1 -1
  121. package/dist/{use-portal-products-client-Bl-yd0Tl.cjs → use-portal-products-client-CIrRGIxC.cjs} +5 -14
  122. package/dist/use-portal-products-client-CIrRGIxC.cjs.map +1 -0
  123. package/dist/{use-portal-products-client-tJi4q54S.mjs → use-portal-products-client-dV5jIXpp.mjs} +6 -15
  124. package/dist/use-portal-products-client-dV5jIXpp.mjs.map +1 -0
  125. package/package.json +18 -18
  126. package/dist/MessagingScreen-CWm4iQnk.mjs +0 -38
  127. package/dist/ProductsScreen-BHeRiKUM.cjs +0 -101
  128. package/dist/ProductsScreen-BHeRiKUM.cjs.map +0 -1
  129. package/dist/ProductsScreen-C_1ghW3w.mjs +0 -42
  130. package/dist/ProductsScreen-DJOPzE9v.mjs +0 -89
  131. package/dist/ProductsScreen-DJOPzE9v.mjs.map +0 -1
  132. package/dist/ShareablesScreen-BSRbPf6u.cjs +0 -414
  133. package/dist/ShareablesScreen-BSRbPf6u.cjs.map +0 -1
  134. package/dist/ShareablesScreen-COyBtpDy.mjs +0 -42
  135. package/dist/ShareablesScreen-kBJFUklJ.mjs +0 -396
  136. package/dist/ShareablesScreen-kBJFUklJ.mjs.map +0 -1
  137. package/dist/ShopScreen-B1UzSmK8.cjs.map +0 -1
  138. package/dist/ShopScreen-D1N3RWm9.mjs.map +0 -1
  139. package/dist/chunk-ByhMGyNw.mjs +0 -37
  140. package/dist/src-CMByt6YP.cjs.map +0 -1
  141. package/dist/src-DIcd2_ex.cjs.map +0 -1
  142. package/dist/src-DryOJTBW.mjs.map +0 -1
  143. package/dist/src-k03GJfKt.mjs.map +0 -1
  144. package/dist/use-portal-products-client-Bl-yd0Tl.cjs.map +0 -1
  145. package/dist/use-portal-products-client-tJi4q54S.mjs.map +0 -1
  146. /package/dist/{src-DAC9DwXZ.mjs → src-6SxtfYk9.mjs} +0 -0
@@ -1,11 +1,11 @@
1
+ import { t as useDropzone } from "./es-CTLNkiWp.mjs";
1
2
  import { $ as Dialog, A as SelectContent, B as FormItem, G as DropdownMenuContent, Gt as BreadcrumbItem, H as FormMessage, J as DropdownMenuSeparator, Jt as BreadcrumbPage, K as DropdownMenuItem, Kt as BreadcrumbLink, L as Form, M as SelectTrigger, N as SelectValue, O as Separator, P as Input, Q as DropdownMenuTrigger, R as FormControl, Tt as Checkbox, U as Label, V as FormLabel, W as DropdownMenu, Wt as Breadcrumb, X as DropdownMenuSubContent, Xt as Badge, Y as DropdownMenuSub, Yt as BreadcrumbSeparator, Z as DropdownMenuSubTrigger, _n as cn, at as DialogOverlay, b as Slider, ct as Popover, g as Switch, gn as useZodForm, i as TooltipTrigger, it as DialogHeader, j as SelectItem, k as Select, ln as Button, lt as PopoverContent, n as TooltipContent, nt as DialogDescription, ot as DialogPortal, qt as BreadcrumbList, r as TooltipProvider, rt as DialogFooter, st as DialogTitle, t as Tooltip, tt as DialogContent, un as Content, ut as PopoverTrigger, v as Spinner, x as Skeleton, xt as CardContent, yt as Card, z as FormField } from "./src-Duo2Iuw-.mjs";
2
3
  import { n as useScreenHeaderActions, r as useScreenHeaderBreadcrumbs } from "./ScreenHeaderContext-CrdfLGKk.mjs";
3
4
  import { a as useEditor, o as Placeholder, r as EditorContent, t as StarterKit } from "./dist-CMGXkSgZ.mjs";
4
- import { t as useDropzone } from "./es-BcjHf1ZX.mjs";
5
- import { n as TextAlign, t as Underline } from "./dist-B1HwSrso.mjs";
6
- import { a as verticalListSortingStrategy, c as PointerSensor, d as useSensors, f as CSS, i as useSortable, l as closestCenter, n as arrayMove, o as DndContext, r as sortableKeyboardCoordinates, s as KeyboardSensor, t as SortableContext, u as useSensor } from "./sortable.esm-DSrWP4x9.mjs";
5
+ import { n as TextAlign, t as Underline } from "./dist-CayuD99K.mjs";
6
+ import { a as verticalListSortingStrategy, c as PointerSensor, d as useSensors, f as CSS, i as useSortable, l as closestCenter, n as arrayMove, o as DndContext, r as sortableKeyboardCoordinates, s as KeyboardSensor, t as SortableContext, u as useSensor } from "./sortable.esm-BzPsVjTI.mjs";
7
7
  import React, { PureComponent, createContext, createRef, forwardRef, useCallback, useContext, useEffect, useImperativeHandle, useMemo, useRef, useState } from "react";
8
- import { useInfiniteQuery, useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
8
+ import { keepPreviousData, useInfiniteQuery, useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
9
9
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
10
10
  import * as z$1 from "zod";
11
11
  import { z } from "zod";
@@ -1371,15 +1371,20 @@ function MediaListingScreen({ onNavigate }) {
1371
1371
  const { data, isLoading, isFetchingNextPage, hasNextPage, fetchNextPage, error } = useInfiniteQuery({
1372
1372
  queryKey: shareablesKeys.media.list(debouncedSearch, sortDesc, repContext),
1373
1373
  queryFn: async ({ pageParam = 1 }) => {
1374
- return (await api.media.getMedia({
1374
+ const response = await api.media.getMedia({
1375
1375
  page: pageParam,
1376
1376
  per_page: PAGE_SIZE$2,
1377
1377
  search_query: debouncedSearch || void 0,
1378
1378
  sorted_by: sortDesc ? "title_desc" : "title_asc"
1379
- })).media;
1379
+ });
1380
+ return {
1381
+ media: response.media,
1382
+ nextPage: response.meta?.next ?? null
1383
+ };
1380
1384
  },
1381
- getNextPageParam: (lastPage, allPages) => lastPage.length === PAGE_SIZE$2 ? allPages.length + 1 : void 0,
1382
- initialPageParam: 1
1385
+ getNextPageParam: (lastPage) => lastPage.nextPage ?? void 0,
1386
+ initialPageParam: 1,
1387
+ placeholderData: keepPreviousData
1383
1388
  });
1384
1389
  const handleIntersect = useCallback((entries) => {
1385
1390
  if (entries[0]?.isIntersecting && hasNextPage && !isFetchingNextPage) fetchNextPage();
@@ -1398,7 +1403,7 @@ function MediaListingScreen({ onNavigate }) {
1398
1403
  observer.observe(target);
1399
1404
  return () => observer.disconnect();
1400
1405
  }, [handleIntersect]);
1401
- const mediaItems = data?.pages.flat() ?? [];
1406
+ const mediaItems = data?.pages.flatMap((page) => page.media) ?? [];
1402
1407
  if (isLoading) return /* @__PURE__ */ jsxs("div", {
1403
1408
  className: "space-y-6 px-4 py-4 md:px-10 md:py-6",
1404
1409
  children: [/* @__PURE__ */ jsxs("div", {
@@ -6823,7 +6828,8 @@ function PlaylistsListingScreen(_props) {
6823
6828
  const observerTarget = useRef(null);
6824
6829
  const sortParam = currentSort.sortDirection === "desc" ? `-${currentSort.sortBy}` : currentSort.sortBy;
6825
6830
  const queryKey = [
6826
- "shareables-playlists",
6831
+ ...shareablesKeys.playlists.all,
6832
+ "list",
6827
6833
  debouncedSearch,
6828
6834
  sortParam
6829
6835
  ];
@@ -6842,7 +6848,8 @@ function PlaylistsListingScreen(_props) {
6842
6848
  };
6843
6849
  },
6844
6850
  getNextPageParam: (lastPage) => lastPage.nextCursor ?? void 0,
6845
- initialPageParam: void 0
6851
+ initialPageParam: void 0,
6852
+ placeholderData: keepPreviousData
6846
6853
  });
6847
6854
  const allPlaylists = useMemo(() => data?.pages.flatMap((page) => page.playlists) ?? [], [data?.pages]);
6848
6855
  useEffect(() => {
@@ -6920,7 +6927,7 @@ function PlaylistsListingScreen(_props) {
6920
6927
  });
6921
6928
  },
6922
6929
  onSettled: () => {
6923
- queryClient.invalidateQueries({ queryKey: ["shareables-playlists"] });
6930
+ queryClient.invalidateQueries({ queryKey: shareablesKeys.playlists.all });
6924
6931
  }
6925
6932
  });
6926
6933
  const handleFavorite = useCallback((playlistId) => {
@@ -6939,7 +6946,7 @@ function PlaylistsListingScreen(_props) {
6939
6946
  if (!window.confirm("Are you sure you want to delete this playlist?")) return;
6940
6947
  try {
6941
6948
  await onDeletePlaylist(playlistId);
6942
- queryClient.invalidateQueries({ queryKey: ["shareables-playlists"] });
6949
+ queryClient.invalidateQueries({ queryKey: shareablesKeys.playlists.all });
6943
6950
  showToast({
6944
6951
  title: "Playlist deleted",
6945
6952
  type: "success"
@@ -6999,8 +7006,8 @@ function PlaylistsListingScreen(_props) {
6999
7006
  className: GRID_CLASS$1,
7000
7007
  children: allPlaylists.map((playlist) => {
7001
7008
  const firstItem = playlist.items?.[0];
7002
- const imageUrl = playlist.image_url || firstItem?.relateable?.image_url || firstItem?.relateable?.compressed_image_url;
7003
- const itemCount = playlist.items?.length ?? 0;
7009
+ const imageUrl = playlist.image_url ?? firstItem?.image_url ?? firstItem?.relateable?.image_url ?? firstItem?.relateable?.compressed_image_url;
7010
+ const itemCount = playlist.items_count ?? playlist.items?.length ?? 0;
7004
7011
  const canEdit = !readOnly && playlist.user_id === user?.id;
7005
7012
  return /* @__PURE__ */ jsx(PlaylistCard, {
7006
7013
  title: playlist.title || "Untitled Playlist",
@@ -7209,17 +7216,18 @@ function PlaylistItemsList({ items, onSelectItem, selectedItemIndex = 0, onNavig
7209
7216
  className: "space-y-3",
7210
7217
  children: items.map((item, index) => {
7211
7218
  const relateable = item.relateable;
7212
- const imageUrl = relateable?.image_url || relateable?.compressed_image_url || DEFAULT_IMAGE$2;
7213
- const title = relateable?.title || "Untitled";
7219
+ const imageUrl = item.image_url ?? relateable?.image_url ?? relateable?.compressed_image_url ?? DEFAULT_IMAGE$2;
7220
+ const title = item.title ?? relateable?.title ?? "Untitled";
7214
7221
  const rawPrice = relateable?.display_price || relateable?.price;
7215
7222
  const price = rawPrice && parseFloat(rawPrice.replace(/[^0-9.-]/g, "")) > 0 ? rawPrice : null;
7216
- const itemType = getItemType(item.relateable_type, relateable?.kind);
7217
- const isVideo = relateable?.kind === "video";
7218
- const isImage = relateable?.kind === "image";
7223
+ const kind = item.kind ?? relateable?.kind;
7224
+ const itemType = getItemType(item.relateable_type, kind);
7225
+ const isVideo = kind === "video";
7226
+ const isImage = kind === "image";
7219
7227
  const isProduct = item.relateable_type === "Product";
7220
7228
  const isNavigable = NAVIGABLE_RELATEABLE_TYPES.has(item.relateable_type ?? "");
7221
- const videoLength = formatVideoLength(relateable?.duration);
7222
- const fileType = getFileType(relateable?.media_format, relateable?.image_url);
7229
+ const videoLength = formatVideoLength(item.duration ?? relateable?.duration);
7230
+ const fileType = getFileType(item.media_format ?? relateable?.media_format, item.image_url ?? relateable?.image_url);
7223
7231
  return /* @__PURE__ */ jsxs("div", {
7224
7232
  onClick: () => handleCardClick(index),
7225
7233
  className: `hover:bg-muted-600 flex w-full cursor-pointer items-start gap-3 rounded-lg p-3 text-left transition-all ${index === selectedItemIndex ? "bg-muted-600" : "bg-muted"}`,
@@ -7381,11 +7389,12 @@ function PlaylistDetailScreen({ playlistId, onNavigate }) {
7381
7389
  navigate
7382
7390
  ]);
7383
7391
  const selectedPlaylistItem = playlist?.items?.[selectedPlaylistItemIndex];
7384
- const displayImage = selectedPlaylistItem?.relateable?.image_url || selectedPlaylistItem?.relateable?.compressed_image_url || DEFAULT_IMAGE$1;
7392
+ const displayImage = selectedPlaylistItem?.image_url ?? selectedPlaylistItem?.relateable?.image_url ?? selectedPlaylistItem?.relateable?.compressed_image_url ?? DEFAULT_IMAGE$1;
7385
7393
  const strippedDescription = stripTags(playlist?.description || playlist?.search_engine_optimizer?.description || "");
7386
7394
  const shouldShowReadMore = strippedDescription.length > 150;
7387
- const displayVideo = selectedPlaylistItem?.relateable?.kind === "video" ? selectedPlaylistItem?.relateable?.video_url || void 0 : void 0;
7388
- const isVideo = selectedPlaylistItem?.relateable?.kind === "video" && !!displayVideo;
7395
+ const selectedKind = selectedPlaylistItem?.kind ?? selectedPlaylistItem?.relateable?.kind;
7396
+ const displayVideo = selectedKind === "video" ? selectedPlaylistItem?.video_url ?? selectedPlaylistItem?.relateable?.video_url ?? void 0 : void 0;
7397
+ const isVideo = selectedKind === "video" && !!displayVideo;
7389
7398
  const taggedProducts = playlist?.items?.filter((item) => item.relateable_type === "Product").map((item) => item.relateable).filter((p) => !!p) || [];
7390
7399
  if (isLoading) return /* @__PURE__ */ jsx("div", {
7391
7400
  className: "flex items-center justify-center py-16",
@@ -8014,7 +8023,9 @@ function SortableTable({ items, setItems, onDeleteItem, isDeletePending, enableR
8014
8023
  relateable_id: item.relateable?.id,
8015
8024
  relateable: item.relateable,
8016
8025
  order: index + 1,
8017
- title: item.relateable?.title || `${item.relateable_type} #${item.relateable?.id}`
8026
+ title: item.title ?? item.relateable?.title ?? `${item.relateable_type} #${item.relateable?.id}`,
8027
+ image_url: item.image_url ?? item.relateable?.image_url ?? null,
8028
+ kind: item.kind ?? item.relateable?.kind ?? null
8018
8029
  }));
8019
8030
  const tableContent = /* @__PURE__ */ jsx("div", {
8020
8031
  className: "border-border w-full overflow-x-auto rounded-lg border",
@@ -8065,8 +8076,8 @@ function SortableTable({ items, setItems, onDeleteItem, isDeletePending, enableR
8065
8076
  className: "flex min-w-0 items-center gap-3",
8066
8077
  children: [/* @__PURE__ */ jsx("div", {
8067
8078
  className: "bg-muted flex h-8 w-8 shrink-0 items-center justify-center overflow-hidden rounded",
8068
- children: row.relateable?.image_url ? /* @__PURE__ */ jsx("img", {
8069
- src: String(row.relateable.image_url),
8079
+ children: row.image_url ? /* @__PURE__ */ jsx("img", {
8080
+ src: String(row.image_url),
8070
8081
  alt: String(row.title),
8071
8082
  className: "h-full w-full object-cover"
8072
8083
  }) : getItemIcon(row.relateable_type || "")
@@ -8083,7 +8094,7 @@ function SortableTable({ items, setItems, onDeleteItem, isDeletePending, enableR
8083
8094
  className: "px-6 py-4 whitespace-nowrap",
8084
8095
  children: /* @__PURE__ */ jsx("div", {
8085
8096
  className: "bg-muted text-foreground inline-flex items-center gap-1 rounded-full px-2 py-1 text-xs",
8086
- children: /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(typeBadgeIcon(row.relateable_type || "", row.relateable?.kind || ""), { className: "h-3 w-3 shrink-0" }), getTypeDisplay(row.relateable_type || "", row.relateable?.kind || "")] })
8097
+ children: /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(typeBadgeIcon(row.relateable_type || "", row.kind || ""), { className: "h-3 w-3 shrink-0" }), getTypeDisplay(row.relateable_type || "", row.kind || "")] })
8087
8098
  })
8088
8099
  }),
8089
8100
  /* @__PURE__ */ jsx("td", {
@@ -8879,4 +8890,4 @@ function ProductsApp({ countryCode, companyLogoUrl, fetchProducts, fetchProduct,
8879
8890
  //#endregion
8880
8891
  export { ShareablesApiProvider as a, ShareablesUIProvider as i, ShareablesApp as n, ShareablesCoreProvider as o, getFileMimeType as r, ProductsApp as t };
8881
8892
 
8882
- //# sourceMappingURL=src-k03GJfKt.mjs.map
8893
+ //# sourceMappingURL=src-DcIV4Mpe.mjs.map