mirror of
https://github.com/OpenCut-app/OpenCut.git
synced 2026-07-13 21:52:53 +02:00
persist snapping + ripple
This commit is contained in:
@@ -4,6 +4,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { create } from "zustand";
|
import { create } from "zustand";
|
||||||
|
import { persist } from "zustand/middleware";
|
||||||
import type { ClipboardItem } from "@/types/timeline";
|
import type { ClipboardItem } from "@/types/timeline";
|
||||||
|
|
||||||
interface TimelineStore {
|
interface TimelineStore {
|
||||||
@@ -21,7 +22,9 @@ interface TimelineStore {
|
|||||||
) => void;
|
) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export const useTimelineStore = create<TimelineStore>((set) => ({
|
export const useTimelineStore = create<TimelineStore>()(
|
||||||
|
persist(
|
||||||
|
(set) => ({
|
||||||
snappingEnabled: true,
|
snappingEnabled: true,
|
||||||
|
|
||||||
toggleSnapping: () => {
|
toggleSnapping: () => {
|
||||||
@@ -41,4 +44,13 @@ export const useTimelineStore = create<TimelineStore>((set) => ({
|
|||||||
setClipboard: (clipboard) => {
|
setClipboard: (clipboard) => {
|
||||||
set({ clipboard });
|
set({ clipboard });
|
||||||
},
|
},
|
||||||
}));
|
}),
|
||||||
|
{
|
||||||
|
name: "timeline-store",
|
||||||
|
partialize: (state) => ({
|
||||||
|
snappingEnabled: state.snappingEnabled,
|
||||||
|
rippleEditingEnabled: state.rippleEditingEnabled,
|
||||||
|
}),
|
||||||
|
},
|
||||||
|
),
|
||||||
|
);
|
||||||
|
|||||||
Reference in New Issue
Block a user