sanity 6.7.0 → 6.8.0-next.13

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 (140) hide show
  1. package/lib/{AddonDatasetProvider-DGvQRg0M.js → AddonDatasetProvider-j4tCiH3e.js} +2 -2
  2. package/lib/{AddonDatasetProvider-DGvQRg0M.js.map → AddonDatasetProvider-j4tCiH3e.js.map} +1 -1
  3. package/lib/{CalendarFilter-Cz5HCFLA.js → CalendarFilter-D7qsXo8l.js} +3 -3
  4. package/lib/{CalendarFilter-Cz5HCFLA.js.map → CalendarFilter-D7qsXo8l.js.map} +1 -1
  5. package/lib/{CommentsDocumentLayout-C8D--w7w.js → CommentsDocumentLayout-DdqM0Xva.js} +2 -2
  6. package/lib/{CommentsDocumentLayout-C8D--w7w.js.map → CommentsDocumentLayout-DdqM0Xva.js.map} +1 -1
  7. package/lib/{CommentsField-01fndj6n.js → CommentsField-boIeJpD6.js} +3 -3
  8. package/lib/{CommentsField-01fndj6n.js.map → CommentsField-boIeJpD6.js.map} +1 -1
  9. package/lib/{CommentsInput-DEXCCEGP.js → CommentsInput-CXUjX47s.js} +5 -5
  10. package/lib/{CommentsInput-DEXCCEGP.js.map → CommentsInput-CXUjX47s.js.map} +1 -1
  11. package/lib/{CommentsInspector-DBY7KD3P.js → CommentsInspector-DnhaBRvP.js} +5 -5
  12. package/lib/{CommentsInspector-DBY7KD3P.js.map → CommentsInspector-DnhaBRvP.js.map} +1 -1
  13. package/lib/{CommentsListItem-BEGOSIY0.js → CommentsListItem-Dn3MXuMi.js} +3 -3
  14. package/lib/{CommentsListItem-BEGOSIY0.js.map → CommentsListItem-Dn3MXuMi.js.map} +1 -1
  15. package/lib/{CommentsSelectedPathProvider-Clvemp0W.js → CommentsSelectedPathProvider-jbvY-MJ0.js} +3 -3
  16. package/lib/{CommentsSelectedPathProvider-Clvemp0W.js.map → CommentsSelectedPathProvider-jbvY-MJ0.js.map} +1 -1
  17. package/lib/{CommentsStudioLayout-D1kFwOni.js → CommentsStudioLayout-jxq4yKzW.js} +4 -4
  18. package/lib/{CommentsStudioLayout-D1kFwOni.js.map → CommentsStudioLayout-jxq4yKzW.js.map} +1 -1
  19. package/lib/{PaneContainer-QCEhEyzd.js → PaneContainer-BtFBEWLZ.js} +5 -6
  20. package/lib/PaneContainer-BtFBEWLZ.js.map +1 -0
  21. package/lib/{PresentationToolGrantsCheck-CxqDuu8I.js → PresentationToolGrantsCheck-CITNu5DG.js} +14 -6
  22. package/lib/PresentationToolGrantsCheck-CITNu5DG.js.map +1 -0
  23. package/lib/{ReleasesMetadataProvider-DH9ZPiY1.js → ReleasesMetadataProvider-16P_iZKZ.js} +2 -2
  24. package/lib/{ReleasesMetadataProvider-DH9ZPiY1.js.map → ReleasesMetadataProvider-16P_iZKZ.js.map} +1 -1
  25. package/lib/{ReleasesNav-DIkvTixA.js → ReleasesNav-BzrUhOoJ.js} +59 -19
  26. package/lib/ReleasesNav-BzrUhOoJ.js.map +1 -0
  27. package/lib/{ReleasesStudioLayout-KuVpj5_v.js → ReleasesStudioLayout-DEWAqdmR.js} +8 -8
  28. package/lib/{ReleasesStudioLayout-KuVpj5_v.js.map → ReleasesStudioLayout-DEWAqdmR.js.map} +1 -1
  29. package/lib/{ReleasesTool-DN5FBLWz.js → ReleasesTool-DJhN0bPA.js} +14 -14
  30. package/lib/{ReleasesTool-DN5FBLWz.js.map → ReleasesTool-DJhN0bPA.js.map} +1 -1
  31. package/lib/{SchedulePublishingStudioLayout-B5K8nqiH.js → SchedulePublishingStudioLayout-B3d-Pcp4.js} +3 -3
  32. package/lib/{SchedulePublishingStudioLayout-B5K8nqiH.js.map → SchedulePublishingStudioLayout-B3d-Pcp4.js.map} +1 -1
  33. package/lib/{SchedulePublishingUpsellProvider-CSMocuXk.js → SchedulePublishingUpsellProvider-tHnK31n0.js} +2 -2
  34. package/lib/{SchedulePublishingUpsellProvider-CSMocuXk.js.map → SchedulePublishingUpsellProvider-tHnK31n0.js.map} +1 -1
  35. package/lib/{ScheduledPublishingEnabledProvider-DGpt_kKu.js → ScheduledPublishingEnabledProvider-CzQXgTsk.js} +3 -3
  36. package/lib/{ScheduledPublishingEnabledProvider-DGpt_kKu.js.map → ScheduledPublishingEnabledProvider-CzQXgTsk.js.map} +1 -1
  37. package/lib/{SearchProvider-Iy4-6hcz.js → SearchProvider-D_Y0UV_W.js} +24 -24
  38. package/lib/SearchProvider-D_Y0UV_W.js.map +1 -0
  39. package/lib/{SingleDocReleaseLayout-CRJT6Vu9.js → SingleDocReleaseLayout-BCJmxy5s.js} +2 -2
  40. package/lib/{SingleDocReleaseLayout-CRJT6Vu9.js.map → SingleDocReleaseLayout-BCJmxy5s.js.map} +1 -1
  41. package/lib/{SingleDocReleaseUpsellProvider-BRUYOryN.js → SingleDocReleaseUpsellProvider-CpUQPbkP.js} +4 -4
  42. package/lib/{SingleDocReleaseUpsellProvider-BRUYOryN.js.map → SingleDocReleaseUpsellProvider-CpUQPbkP.js.map} +1 -1
  43. package/lib/{TasksStudioActiveToolLayout-BUnLMMYi.js → TasksStudioActiveToolLayout-uoPm3E0Y.js} +11 -11
  44. package/lib/{TasksStudioActiveToolLayout-BUnLMMYi.js.map → TasksStudioActiveToolLayout-uoPm3E0Y.js.map} +1 -1
  45. package/lib/{TasksStudioLayout-ClMZ9sWa.js → TasksStudioLayout-CFRlrtHs.js} +5 -5
  46. package/lib/{TasksStudioLayout-ClMZ9sWa.js.map → TasksStudioLayout-CFRlrtHs.js.map} +1 -1
  47. package/lib/{Tool-CGMUCSOs.js → Tool-CjZmRZ_L.js} +12 -12
  48. package/lib/{Tool-CGMUCSOs.js.map → Tool-CjZmRZ_L.js.map} +1 -1
  49. package/lib/{UnpublishVersionDialog-DnGH3SLI.js → UnpublishVersionDialog-dJM5TcRn.js} +4 -4
  50. package/lib/{UnpublishVersionDialog-DnGH3SLI.js.map → UnpublishVersionDialog-dJM5TcRn.js.map} +1 -1
  51. package/lib/{UpsellDialog-Dcjf8OuF.js → UpsellDialog-2urLJ5H5.js} +2 -2
  52. package/lib/{UpsellDialog-Dcjf8OuF.js.map → UpsellDialog-2urLJ5H5.js.map} +1 -1
  53. package/lib/{VariantsStudioNavbar-D8L9UWqH.js → VariantsStudioNavbar-BbpP-SV6.js} +7 -27
  54. package/lib/VariantsStudioNavbar-BbpP-SV6.js.map +1 -0
  55. package/lib/{VariantsTool-JHeKZHcr.js → VariantsTool-BpDy94Yo.js} +7 -7
  56. package/lib/{VariantsTool-JHeKZHcr.js.map → VariantsTool-BpDy94Yo.js.map} +1 -1
  57. package/lib/{WorkspaceLoader-CtnP9tNF.js → WorkspaceLoader-COkgKUSq.js} +25 -25
  58. package/lib/{WorkspaceLoader-CtnP9tNF.js.map → WorkspaceLoader-COkgKUSq.js.map} +1 -1
  59. package/lib/_createContext.js +1 -1
  60. package/lib/_singletons.d.ts +1 -1
  61. package/lib/{buildTextSelectionFromFragment-k_rh1KNa.js → buildTextSelectionFromFragment-DkScjl9L.js} +3 -3
  62. package/lib/{buildTextSelectionFromFragment-k_rh1KNa.js.map → buildTextSelectionFromFragment-DkScjl9L.js.map} +1 -1
  63. package/lib/{datastores-X2znh4zT.js → datastores-BKRF0Q9p.js} +16 -5
  64. package/lib/datastores-BKRF0Q9p.js.map +1 -0
  65. package/lib/desk.d.ts +1 -1
  66. package/lib/desk.js +2 -2
  67. package/lib/{index-Z0jxEn8U.d.ts → index-CnGXln7W.d.ts} +62 -12
  68. package/lib/index.d.ts +2 -2
  69. package/lib/index.js +640 -257
  70. package/lib/index.js.map +1 -1
  71. package/lib/{inputResolver-CwZU1DyA.js → inputResolver-BxWoGLcP.js} +4 -4
  72. package/lib/{inputResolver-CwZU1DyA.js.map → inputResolver-BxWoGLcP.js.map} +1 -1
  73. package/lib/{list-CQ5wYKGN.js → list-BqCyKicl.js} +2 -2
  74. package/lib/{list-CQ5wYKGN.js.map → list-BqCyKicl.js.map} +1 -1
  75. package/lib/{navigation.telemetry-Poh1ANIW.js → navigation.telemetry-BdALj7hP.js} +7 -7
  76. package/lib/{navigation.telemetry-Poh1ANIW.js.map → navigation.telemetry-BdALj7hP.js.map} +1 -1
  77. package/lib/pane-8ExVl8qY.js +2 -0
  78. package/lib/pane-wKH9j_H3.js +2 -0
  79. package/lib/{plugin-CNhX_Tb7.js → plugin-BQpcUNhw.js} +6 -6
  80. package/lib/{plugin-CNhX_Tb7.js.map → plugin-BQpcUNhw.js.map} +1 -1
  81. package/lib/{plugin-CXnu--df.js → plugin-CWQXnaVS.js} +5 -5
  82. package/lib/{plugin-CXnu--df.js.map → plugin-CWQXnaVS.js.map} +1 -1
  83. package/lib/{plugin-WOJhZc9d.js → plugin-DbF85jWy.js} +4 -4
  84. package/lib/{plugin-WOJhZc9d.js.map → plugin-DbF85jWy.js.map} +1 -1
  85. package/lib/{plugin-C220AR82.js → plugin-QIqhqpZS.js} +3 -3
  86. package/lib/{plugin-C220AR82.js.map → plugin-QIqhqpZS.js.map} +1 -1
  87. package/lib/presentation.js +1 -1
  88. package/lib/{scheduleItem-DvRHEFEW.js → scheduleItem-CBN6T3h1.js} +8 -8
  89. package/lib/{scheduleItem-DvRHEFEW.js.map → scheduleItem-CBN6T3h1.js.map} +1 -1
  90. package/lib/{schedules-pdE6eEGn.js → schedules-ORlte5Aq.js} +3 -3
  91. package/lib/{schedules-pdE6eEGn.js.map → schedules-ORlte5Aq.js.map} +1 -1
  92. package/lib/structure.js +2 -2
  93. package/lib/{structureTool-BwC_ba3R.js → structureTool-CB6Y6xfI.js} +6 -6
  94. package/lib/{structureTool-BwC_ba3R.js.map → structureTool-CB6Y6xfI.js.map} +1 -1
  95. package/lib/{structureTool-BRYk4qG7.js → structureTool-CupaRvVm.js} +68 -68
  96. package/lib/structureTool-CupaRvVm.js.map +1 -0
  97. package/lib/{studioClient--dm-G_7a.js → studioClient-CJOrhmsT.js} +2 -2
  98. package/lib/{studioClient--dm-G_7a.js.map → studioClient-CJOrhmsT.js.map} +1 -1
  99. package/lib/{useBundleDocuments-oAq5rEkm.js → useBundleDocuments-Bhs3f0QF.js} +15 -13
  100. package/lib/useBundleDocuments-Bhs3f0QF.js.map +1 -0
  101. package/lib/{useComments-DYQ9xguT.js → useComments-b_kg13ZL.js} +2 -2
  102. package/lib/{useComments-DYQ9xguT.js.map → useComments-b_kg13ZL.js.map} +1 -1
  103. package/lib/{useCommentsTelemetry-BoYJL3eG.js → useCommentsTelemetry-BFtot5ib.js} +3 -3
  104. package/lib/{useCommentsTelemetry-BoYJL3eG.js.map → useCommentsTelemetry-BFtot5ib.js.map} +1 -1
  105. package/lib/{useDocumentPreviewValues-v43xdQrb.js → useDocumentPreviewValues-Cp12V_zK.js} +3 -3
  106. package/lib/{useDocumentPreviewValues-v43xdQrb.js.map → useDocumentPreviewValues-Cp12V_zK.js.map} +1 -1
  107. package/lib/{useFeatureEnabled-4gSsu40G.js → useFeatureEnabled-CKA9SpR4.js} +2 -2
  108. package/lib/{useFeatureEnabled-4gSsu40G.js.map → useFeatureEnabled-CKA9SpR4.js.map} +1 -1
  109. package/lib/{useFieldActions-BKWh56GI.js → useFieldActions-BT0dmvAk.js} +2 -2
  110. package/lib/{useFieldActions-BKWh56GI.js.map → useFieldActions-BT0dmvAk.js.map} +1 -1
  111. package/lib/{useReleasesToolAvailable-5DSPa2Gx.js → useReleasesToolAvailable-BtNPK1ns.js} +3 -3
  112. package/lib/{useReleasesToolAvailable-5DSPa2Gx.js.map → useReleasesToolAvailable-BtNPK1ns.js.map} +1 -1
  113. package/lib/{useScheduledDraftMenuActions-BxKkDOS8.js → useScheduledDraftMenuActions-Btn2NKF9.js} +38 -21
  114. package/lib/useScheduledDraftMenuActions-Btn2NKF9.js.map +1 -0
  115. package/lib/{useSetVariant-C6TkfVCm.js → useSetVariant-D6nDqKeX.js} +3 -3
  116. package/lib/{useSetVariant-C6TkfVCm.js.map → useSetVariant-D6nDqKeX.js.map} +1 -1
  117. package/lib/{useStudioUrl-CGakngEM.js → useStudioUrl-DFBaha5x.js} +5 -5
  118. package/lib/{useStudioUrl-CGakngEM.js.map → useStudioUrl-DFBaha5x.js.map} +1 -1
  119. package/lib/{useTimeZone-BoKWaSj6.js → useTimeZone-DceoecRg.js} +2 -2
  120. package/lib/{useTimeZone-BoKWaSj6.js.map → useTimeZone-DceoecRg.js.map} +1 -1
  121. package/lib/{userComponent-DIoiRgtl.js → userComponent-DBLembOH.js} +2 -2
  122. package/lib/{userComponent-DIoiRgtl.js.map → userComponent-DBLembOH.js.map} +1 -1
  123. package/lib/{validationUtils-CX9mO1s1.js → validationUtils-BefUKU_E.js} +4 -4
  124. package/lib/{validationUtils-CX9mO1s1.js.map → validationUtils-BefUKU_E.js.map} +1 -1
  125. package/lib/{version-CUL0S-Ix.js → version-D8FgjwBF.js} +2 -2
  126. package/lib/{version-CUL0S-Ix.js.map → version-D8FgjwBF.js.map} +1 -1
  127. package/package.json +10 -10
  128. package/lib/Delay-DjgiAi06.js +0 -21
  129. package/lib/Delay-DjgiAi06.js.map +0 -1
  130. package/lib/PaneContainer-QCEhEyzd.js.map +0 -1
  131. package/lib/PresentationToolGrantsCheck-CxqDuu8I.js.map +0 -1
  132. package/lib/ReleasesNav-DIkvTixA.js.map +0 -1
  133. package/lib/SearchProvider-Iy4-6hcz.js.map +0 -1
  134. package/lib/VariantsStudioNavbar-D8L9UWqH.js.map +0 -1
  135. package/lib/datastores-X2znh4zT.js.map +0 -1
  136. package/lib/pane-CoSiSpvR.js +0 -2
  137. package/lib/pane-ptq8ykm7.js +0 -2
  138. package/lib/structureTool-BRYk4qG7.js.map +0 -1
  139. package/lib/useBundleDocuments-oAq5rEkm.js.map +0 -1
  140. package/lib/useScheduledDraftMenuActions-BxKkDOS8.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { t as useTimeZone } from "./useTimeZone-BoKWaSj6.js";
2
- import { o as sortByExecuteDate, s as getLastExecuteDate } from "./validationUtils-CX9mO1s1.js";
1
+ import { t as useTimeZone } from "./useTimeZone-DceoecRg.js";
2
+ import { o as sortByExecuteDate, s as getLastExecuteDate } from "./validationUtils-BefUKU_E.js";
3
3
  import { useContext, useState } from "react";
4
4
  import { c } from "react/compiler-runtime";
5
5
  import { jsx } from "react/jsx-runtime";
@@ -48,4 +48,4 @@ function useSchedules() {
48
48
  }
49
49
  export { SchedulesProvider as n, useSchedules as r, SchedulesContext as t };
50
50
 
51
- //# sourceMappingURL=schedules-pdE6eEGn.js.map
51
+ //# sourceMappingURL=schedules-ORlte5Aq.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schedules-pdE6eEGn.js","names":["isSameDay","ReactNode","useCallback","useContext","useMemo","useState","SchedulesContext","useTimeZone","Schedule","ScheduleSort","ScheduleState","getLastExecuteDate","sortByExecuteDate","EMPTY_SCHEDULE","SchedulesProvider","t0","$","_c","children","value","sortBy","setSortBy","t1","Symbol","for","type","utcToCurrentZoneDate","t2","wallDate","schedule","executeDate","scheduleDate","Date","zonedScheduleDate","filterByDate","filterByState","_temp","t3","scheduleState","schedules","selectedDate","filter","scheduleState_0","sort","a","b","reverseOrder","activeSchedules","t4","wallDate_0","schedulesByDate","t5","t6","context","t7","schedule_0","state","useSchedules","undefined","Error"],"sources":["../src/core/scheduled-publishing/tool/contexts/schedules.tsx"],"sourcesContent":["import {isSameDay} from 'date-fns/isSameDay'\nimport {type ReactNode, useCallback, useContext, useMemo, useState} from 'react'\nimport {SchedulesContext} from 'sanity/_singletons'\n\nimport {useTimeZone} from '../../../hooks/useTimeZone'\nimport {type Schedule, type ScheduleSort, type ScheduleState} from '../../types'\nimport {getLastExecuteDate} from '../../utils/scheduleUtils'\nimport {sortByExecuteDate} from '../../utils/sortByExecuteDate'\n\n// re-exported here so the public entry can surface the context without\n// depending on sanity/_singletons directly (boundaries policy)\nexport {SchedulesContext}\n\nconst EMPTY_SCHEDULE: Schedule[] = []\n\nfunction SchedulesProvider({\n children,\n value,\n}: {\n children: ReactNode\n value: {\n schedules: Schedule[]\n scheduleState: ScheduleState\n selectedDate?: Date\n sortBy?: ScheduleSort\n }\n}) {\n const [sortBy, setSortBy] = useState<ScheduleSort>(value.sortBy || 'executeAt')\n const {utcToCurrentZoneDate} = useTimeZone({type: 'scheduledPublishing'})\n\n const filterByDate = useCallback(\n (wallDate: Date) => {\n return function (schedule: Schedule) {\n const executeDate = getLastExecuteDate(schedule)\n if (!executeDate) {\n return false\n }\n const scheduleDate = new Date(executeDate) // UTC\n const zonedScheduleDate = utcToCurrentZoneDate(scheduleDate)\n return isSameDay(zonedScheduleDate, wallDate)\n }\n },\n [utcToCurrentZoneDate],\n )\n\n const filterByState = useCallback((scheduleState: ScheduleState) => {\n return function (schedule: Schedule) {\n return schedule.state === scheduleState\n }\n }, [])\n\n /**\n * Return all schedules if no date is currently selected, otherwise return all schedules for the\n * selected calendar date.\n *\n * By default, all schedules are displayed in reverse chronlogical order\n * except when filtering by upcoming schedules, or a date has been selected in the calendar.\n *\n * If a schedule as an `executedAt` date, sort by that instead.\n * This is because schedules may have differing values for `executeAt` and `executedAt` if\n * they've been force-published ahead of time, and we only care about the final execution date.\n *\n * Schedules with a null value for `executeAt` (possible if created externally via the Scheduling API)\n * should always be placed after all other results.\n */\n const activeSchedules = useMemo(() => {\n return (\n value.schedules\n .filter((scheduleState) => {\n if (value.selectedDate) {\n return filterByDate(value.selectedDate)(scheduleState)\n }\n return filterByState(value.scheduleState)(scheduleState)\n })\n .sort((a, b) => {\n if (sortBy === 'createdAt') {\n return a[sortBy] < b[sortBy] ? 1 : -1\n }\n if (sortBy === 'executeAt') {\n const reverseOrder = !(value.scheduleState === 'scheduled' || value.selectedDate)\n return sortByExecuteDate({reverseOrder})(a, b)\n }\n return 1\n }) || []\n )\n }, [\n filterByState,\n value.schedules,\n value.scheduleState,\n value.selectedDate,\n sortBy,\n filterByDate,\n ])\n\n /**\n * Return all matching schedules with specified date (in clock time).\n *\n * Scheduled are sorted chronologically by executed + execute date.\n *\n * Schedules with a null value for `executeAt` (possible if created externally via the Scheduling API)\n * should always be placed after all other results.\n */\n const schedulesByDate = useCallback(\n (wallDate: Date) => {\n return value.schedules\n .filter(filterByDate(wallDate)) //\n .sort(sortByExecuteDate())\n },\n [value.schedules, filterByDate],\n )\n\n const context = useMemo(\n () => ({\n activeSchedules,\n schedules: value.schedules || EMPTY_SCHEDULE,\n schedulesByDate,\n scheduleState: value.scheduleState,\n selectedDate: value.selectedDate,\n setSortBy,\n sortBy,\n }),\n [\n activeSchedules,\n schedulesByDate,\n sortBy,\n value.scheduleState,\n value.schedules,\n value.selectedDate,\n ],\n )\n\n return <SchedulesContext.Provider value={context}>{children}</SchedulesContext.Provider>\n}\n\nfunction useSchedules() {\n const context = useContext(SchedulesContext)\n if (context === undefined) {\n throw new Error('useSchedules must be used within a SchedulesProvider')\n }\n return context\n}\n\nexport {SchedulesProvider, useSchedules}\n"],"mappings":"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"}
1
+ {"version":3,"file":"schedules-ORlte5Aq.js","names":["isSameDay","ReactNode","useCallback","useContext","useMemo","useState","SchedulesContext","useTimeZone","Schedule","ScheduleSort","ScheduleState","getLastExecuteDate","sortByExecuteDate","EMPTY_SCHEDULE","SchedulesProvider","t0","$","_c","children","value","sortBy","setSortBy","t1","Symbol","for","type","utcToCurrentZoneDate","t2","wallDate","schedule","executeDate","scheduleDate","Date","zonedScheduleDate","filterByDate","filterByState","_temp","t3","scheduleState","schedules","selectedDate","filter","scheduleState_0","sort","a","b","reverseOrder","activeSchedules","t4","wallDate_0","schedulesByDate","t5","t6","context","t7","schedule_0","state","useSchedules","undefined","Error"],"sources":["../src/core/scheduled-publishing/tool/contexts/schedules.tsx"],"sourcesContent":["import {isSameDay} from 'date-fns/isSameDay'\nimport {type ReactNode, useCallback, useContext, useMemo, useState} from 'react'\nimport {SchedulesContext} from 'sanity/_singletons'\n\nimport {useTimeZone} from '../../../hooks/useTimeZone'\nimport {type Schedule, type ScheduleSort, type ScheduleState} from '../../types'\nimport {getLastExecuteDate} from '../../utils/scheduleUtils'\nimport {sortByExecuteDate} from '../../utils/sortByExecuteDate'\n\n// re-exported here so the public entry can surface the context without\n// depending on sanity/_singletons directly (boundaries policy)\nexport {SchedulesContext}\n\nconst EMPTY_SCHEDULE: Schedule[] = []\n\nfunction SchedulesProvider({\n children,\n value,\n}: {\n children: ReactNode\n value: {\n schedules: Schedule[]\n scheduleState: ScheduleState\n selectedDate?: Date\n sortBy?: ScheduleSort\n }\n}) {\n const [sortBy, setSortBy] = useState<ScheduleSort>(value.sortBy || 'executeAt')\n const {utcToCurrentZoneDate} = useTimeZone({type: 'scheduledPublishing'})\n\n const filterByDate = useCallback(\n (wallDate: Date) => {\n return function (schedule: Schedule) {\n const executeDate = getLastExecuteDate(schedule)\n if (!executeDate) {\n return false\n }\n const scheduleDate = new Date(executeDate) // UTC\n const zonedScheduleDate = utcToCurrentZoneDate(scheduleDate)\n return isSameDay(zonedScheduleDate, wallDate)\n }\n },\n [utcToCurrentZoneDate],\n )\n\n const filterByState = useCallback((scheduleState: ScheduleState) => {\n return function (schedule: Schedule) {\n return schedule.state === scheduleState\n }\n }, [])\n\n /**\n * Return all schedules if no date is currently selected, otherwise return all schedules for the\n * selected calendar date.\n *\n * By default, all schedules are displayed in reverse chronlogical order\n * except when filtering by upcoming schedules, or a date has been selected in the calendar.\n *\n * If a schedule as an `executedAt` date, sort by that instead.\n * This is because schedules may have differing values for `executeAt` and `executedAt` if\n * they've been force-published ahead of time, and we only care about the final execution date.\n *\n * Schedules with a null value for `executeAt` (possible if created externally via the Scheduling API)\n * should always be placed after all other results.\n */\n const activeSchedules = useMemo(() => {\n return (\n value.schedules\n .filter((scheduleState) => {\n if (value.selectedDate) {\n return filterByDate(value.selectedDate)(scheduleState)\n }\n return filterByState(value.scheduleState)(scheduleState)\n })\n .sort((a, b) => {\n if (sortBy === 'createdAt') {\n return a[sortBy] < b[sortBy] ? 1 : -1\n }\n if (sortBy === 'executeAt') {\n const reverseOrder = !(value.scheduleState === 'scheduled' || value.selectedDate)\n return sortByExecuteDate({reverseOrder})(a, b)\n }\n return 1\n }) || []\n )\n }, [\n filterByState,\n value.schedules,\n value.scheduleState,\n value.selectedDate,\n sortBy,\n filterByDate,\n ])\n\n /**\n * Return all matching schedules with specified date (in clock time).\n *\n * Scheduled are sorted chronologically by executed + execute date.\n *\n * Schedules with a null value for `executeAt` (possible if created externally via the Scheduling API)\n * should always be placed after all other results.\n */\n const schedulesByDate = useCallback(\n (wallDate: Date) => {\n return value.schedules\n .filter(filterByDate(wallDate)) //\n .sort(sortByExecuteDate())\n },\n [value.schedules, filterByDate],\n )\n\n const context = useMemo(\n () => ({\n activeSchedules,\n schedules: value.schedules || EMPTY_SCHEDULE,\n schedulesByDate,\n scheduleState: value.scheduleState,\n selectedDate: value.selectedDate,\n setSortBy,\n sortBy,\n }),\n [\n activeSchedules,\n schedulesByDate,\n sortBy,\n value.scheduleState,\n value.schedules,\n value.selectedDate,\n ],\n )\n\n return <SchedulesContext.Provider value={context}>{children}</SchedulesContext.Provider>\n}\n\nfunction useSchedules() {\n const context = useContext(SchedulesContext)\n if (context === undefined) {\n throw new Error('useSchedules must be used within a SchedulesProvider')\n }\n return context\n}\n\nexport {SchedulesProvider, useSchedules}\n"],"mappings":";;;;;;;AAaA,MAAMa,iBAA6B,CAAA;AAEnC,SAAAC,kBAAAC,IAAA;CAAA,IAAAC,IAAAC,EAAA,EAAA,GAA2B,EAAAC,UAAAC,UAAAJ,IAYzB,CAAAK,QAAAC,aAA4BhB,SAAuBc,MAAKC,UAAL,WAA2B,GAACE;CAAA,AAAAN,EAAA,OAAAO,OAAAC,IAAA,2BAAA,KACpCF,KAAA,EAAAG,MAAO,sBAAqB,GAACT,EAAA,KAAAM,MAAAA,KAAAN,EAAA;CAAxE,IAAA,EAAAU,yBAA+BnB,YAAYe,EAA6B,GAACK;CAAA,AAAAX,EAAA,OAAAU,uBAatEC,KAAAX,EAAA,MAVDW,MAAAC,aACS,SAAAC,UAAA;EACL,IAAAC,cAAoBnB,mBAAmBkB,QAAQ;EAC/C,IAAI,CAACC,aAAW,OACP;EAET,IAAAC,eAAqB,IAAIC,KAAKF,WAAW;EACmB,OACrD9B,UADmB0B,qBAAqBK,YAC9BE,GAAmBL,QAAQ;CAAC,GAEhDZ,EAAA,KAAAU,sBAAAV,EAAA,KAAAW;CAXH,IAAAO,eAAqBP,IAerBQ,gBAAsBC,OAIhBC;CAAA,AAAArB,EAAA,OAAAkB,gBAAAlB,EAAA,OAAAI,UAAAJ,EAAA,OAAAG,MAAAmB,iBAAAtB,EAAA,OAAAG,MAAAoB,aAAAvB,EAAA,OAAAG,MAAAqB,gBAkBFH,KAAAlB,MAAKoB,UAAUE,QACLC,oBACFvB,MAAKqB,eACAN,aAAaf,MAAKqB,YAAa,CAAC,CAACF,eAAa,IAEhDH,cAAchB,MAAKmB,aAAc,CAAC,CAACA,eAAa,CACxD,CAAC,CAAAK,MACIC,GAAAC,MACAzB,WAAW,cACNwB,EAAExB,UAAUyB,EAAEzB,UAAd,IAAA,KAELA,WAAW,cAENR,kBAAkB,EAAAkC,cAAAA,EADF3B,MAAKmB,kBAAmB,eAAenB,MAAKqB,cAC7B,CAAC,CAAC,CAACI,GAAGC,CAAC,IAExC,CACF,KAhBT,CAAA,GAgBU7B,EAAA,KAAAkB,cAAAlB,EAAA,KAAAI,QAAAJ,EAAA,KAAAG,MAAAmB,eAAAtB,EAAA,KAAAG,MAAAoB,WAAAvB,EAAA,KAAAG,MAAAqB,cAAAxB,EAAA,KAAAqB,MAAAA,KAAArB,EAAA;CAlBd,IAAA+B,kBACEV,IA0BAW;CAAA,AAAAhC,EAAA,OAAAkB,gBAAAlB,EAAA,QAAAG,MAAAoB,aAWAS,MAAAC,eACS9B,MAAKoB,UAAUE,OACZP,aAAaN,UAAQ,CAAC,CAAC,CAAAe,KACzB/B,kBAAkB,CAAC,GAC5BI,EAAA,KAAAkB,cAAAlB,EAAA,MAAAG,MAAAoB,WAAAvB,EAAA,MAAAgC,MAAAA,KAAAhC,EAAA;CALH,IAAAkC,kBAAwBF,IAYTG,KAAAhC,MAAKoB,aAAL1B,gBAAiCuC;CAAA,AAAApC,EAAA,QAAA+B,mBAAA/B,EAAA,QAAAkC,mBAAAlC,EAAA,QAAAI,UAAAJ,EAAA,QAAAmC,MAAAnC,EAAA,QAAAG,MAAAmB,iBAAAtB,EAAA,QAAAG,MAAAqB,gBAFvCY,KAAA;EAAAL;EAAAR,WAEMY;EAAiCD;EAAAZ,eAE7BnB,MAAKmB;EAAcE,cACpBrB,MAAKqB;EAAanB;EAAAD;CAGlC,GAACJ,EAAA,MAAA+B,iBAAA/B,EAAA,MAAAkC,iBAAAlC,EAAA,MAAAI,QAAAJ,EAAA,MAAAmC,IAAAnC,EAAA,MAAAG,MAAAmB,eAAAtB,EAAA,MAAAG,MAAAqB,cAAAxB,EAAA,MAAAoC,MAAAA,KAAApC,EAAA;CATH,IAAAqC,UACSD,IAiBRE;CAEuF,OAFvFtC,EAAA,QAAAE,YAAAF,EAAA,QAAAqC,WAEMC,KAAA,oBAAA,iBAAA,UAAA;EAAkCD,OAAAA;EAAUnC;CAAS,CAAA,GAA4BF,EAAA,MAAAE,UAAAF,EAAA,MAAAqC,SAAArC,EAAA,MAAAsC,MAAAA,KAAAtC,EAAA,KAAjFsC;AAAiF;AApH1F,SAAAlB,MAAAE,eAAA;CAAA,OA+BW,SAAAiB,YAAA;EAAA,OACE1B,WAAQ2B,UAAWlB;CAAa;AACxC;AAsFL,SAAAmB,eAAA;CACE,IAAAJ,UAAgBlD,WAAWG,gBAAgB;CAC3C,IAAI+C,YAAYK,KAAAA,GACd,MAAUC,MAAM,sDAAsD;CACvE,OACMN;AAAO"}
package/lib/structure.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import "sanity/bundle.css";
2
2
  import { A as MenuItemBuilder, C as FormViewBuilder, D as ComponentBuilder, E as maybeSerializeView, F as SerializeError, I as structureLocaleNamespace, M as getOrderingMenuItemsForSchemaType, N as maybeSerializeMenuItem, O as MenuItemGroupBuilder, P as HELP_URL, S as form, T as GenericViewBuilder, _ as menuItemsFromInitialValueTemplateItems, a as isDocumentListItem, b as documentFromEditorWithInitialValue, c as DocumentListBuilder, d as shallowIntentChecker, f as DEFAULT_INTENT_HANDLER, g as maybeSerializeInitialValueTemplateItem, h as defaultInitialValueTemplateItems, i as DocumentListItemBuilder, j as getOrderingMenuItem, k as maybeSerializeMenuItemGroup, l as getTypeNamesFromFilter, m as InitialValueTemplateItemBuilder, n as createStructureBuilder, o as ListItemBuilder, p as defaultIntentChecker, r as DocumentTypeListBuilder, s as ListBuilder, t as StructureToolProvider, u as GenericListBuilder, v as DocumentBuilder, w as ComponentViewBuilder, x as component, y as documentFromEditor } from "./StructureToolProvider-bqgHqZki.js";
3
3
  import { a as Button$1, r as MenuButton$1, t as MenuItem$1 } from "./MenuItem-B0ry3E4J.js";
4
- import { C as PaneRouterContext, E as useDocumentPane, S as ConfirmDeleteDialogContainer, T as useDocumentTitle, _ as ActionStateDialog, a as getIncomingReferences, b as DocumentInspectorHeader, h as DocumentPaneProviderWrapper, i as INITIAL_STATE, m as usePaneOptions, n as IncomingReferencePreview, o as getCrossDatasetIncomingReferences, p as DocumentPane, r as IncomingReferencesListContainer, s as CrossDatasetIncomingReferenceDocumentPreview, t as structureTool, w as usePaneRouter, x as PaneLayout } from "./structureTool-BRYk4qG7.js";
4
+ import { C as PaneRouterContext, E as useDocumentPane, S as ConfirmDeleteDialogContainer, T as useDocumentTitle, _ as ActionStateDialog, a as getIncomingReferences, b as DocumentInspectorHeader, h as DocumentPaneProviderWrapper, i as INITIAL_STATE, m as usePaneOptions, n as IncomingReferencePreview, o as getCrossDatasetIncomingReferences, p as DocumentPane, r as IncomingReferencesListContainer, s as CrossDatasetIncomingReferenceDocumentPreview, t as structureTool, w as usePaneRouter, x as PaneLayout } from "./structureTool-CupaRvVm.js";
5
5
  import { i as Pane, t as useStructureTool } from "./useStructureTool-CX6y4EKI.js";
6
6
  import { i as PaneContent } from "./constants-CEn05wvv.js";
7
- import { n as ORDER_BY_IDS_PARAM_FIELD, t as PaneContainer } from "./PaneContainer-QCEhEyzd.js";
7
+ import { n as ORDER_BY_IDS_PARAM_FIELD, t as PaneContainer } from "./PaneContainer-BtFBEWLZ.js";
8
8
  import { useCallback, useEffect, useMemo, useState } from "react";
9
9
  import { catchError, concat, filter, map, of, scan, switchMap, tap } from "rxjs";
10
10
  import { c } from "react/compiler-runtime";
@@ -1,6 +1,6 @@
1
1
  import { F as SerializeError, I as structureLocaleNamespace, t as StructureToolProvider } from "./StructureToolProvider-bqgHqZki.js";
2
2
  import { a as Button$1, c as ErrorBoundary$1 } from "./MenuItem-B0ry3E4J.js";
3
- import { c as setActivePanes, f as assignId, g as StructureTitle, l as BackLink, x as PaneLayout, y as LoadingPane } from "./structureTool-BRYk4qG7.js";
3
+ import { c as setActivePanes, f as assignId, g as StructureTitle, l as BackLink, x as PaneLayout, y as LoadingPane } from "./structureTool-CupaRvVm.js";
4
4
  import { a as usePaneLayout, i as Pane, n as PaneHeader, t as useStructureTool } from "./useStructureTool-CX6y4EKI.js";
5
5
  import { i as PaneContent, r as LOADING_PANE } from "./constants-CEn05wvv.js";
6
6
  import { Fragment, Suspense, forwardRef, lazy, memo, useContext, useEffect, useRef, useState } from "react";
@@ -568,10 +568,10 @@ function UnknownPane(props) {
568
568
  }), $[9] = isSelected, $[10] = paneKey, $[11] = t2, $[12] = t3, $[13] = t4) : t4 = $[13], t4;
569
569
  }
570
570
  const paneMap = {
571
- component: lazy(() => import("./userComponent-DIoiRgtl.js")),
572
- document: lazy(() => import("./pane-ptq8ykm7.js")),
573
- documentList: lazy(() => import("./pane-CoSiSpvR.js")),
574
- list: lazy(() => import("./list-CQ5wYKGN.js"))
571
+ component: lazy(() => import("./userComponent-DBLembOH.js")),
572
+ document: lazy(() => import("./pane-wKH9j_H3.js")),
573
+ documentList: lazy(() => import("./pane-8ExVl8qY.js")),
574
+ list: lazy(() => import("./list-BqCyKicl.js"))
575
575
  }, StructureToolPane = memo(function StructureToolPane(props) {
576
576
  let $ = c(25), { active, childItemId, groupIndex, index, itemId, pane, paneKey, params, payload, path, selected, siblingIndex, maximized, onSetMaximizedPane } = props, PaneComponent = paneMap[pane.type] || UnknownPane, t0;
577
577
  $[0] !== paneKey || $[1] !== path || $[2] !== selected ? (t0 = /* @__PURE__ */ jsx(LoadingPane, {
@@ -1162,4 +1162,4 @@ function _temp() {
1162
1162
  }
1163
1163
  export { StructureToolBoundary as default };
1164
1164
 
1165
- //# sourceMappingURL=structureTool-BwC_ba3R.js.map
1165
+ //# sourceMappingURL=structureTool-CB6Y6xfI.js.map