PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.13.0
Code Block Pro – Beautiful Syntax Highlighting v1.13.0
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
← All changes | src/state/global.ts +32 -12 1.27.71.13.0 View file →
@@ -1,19 +1,39 @@
1 -import { create } from 'zustand';
2 -import { devtools } from 'zustand/middleware';
1 +import create from 'zustand';
2 +import { devtools, persist } from 'zustand/middleware';
3 3
4 4 type GlobalTypes = {
5 - bringAttentionToPanel: false | string;
6 - setBringAttentionToPanel: (b: false | string) => void;
5 + previousSettings: {
6 + copyButton: boolean;
7 + };
8 + setPreviousSettings: (
9 + settings: Partial<GlobalTypes['previousSettings']>,
10 + ) => void;
7 11 };
8 12
9 13 export const useGlobalStore = create<GlobalTypes>()(
10 - devtools(
11 - (set) => ({
12 - bringAttentionToPanel: false,
13 - setBringAttentionToPanel: (bringAttentionToPanel) => {
14 - set(() => ({ bringAttentionToPanel }));
15 - },
16 - }),
17 - { name: 'Code Block Pro Globals' },
14 + persist(
15 + devtools(
16 + (set) => ({
17 + previousSettings: {
18 + // This should go into settings.tsx and persist to the db
19 + copyButton: true,
20 + },
21 + setPreviousSettings(
22 + s: Partial<GlobalTypes['previousSettings']>,
23 + ) {
24 + set((state) => ({
25 + previousSettings: { ...state.previousSettings, ...s },
26 + }));
27 + },
28 + }),
29 + { name: 'Code Block Pro Globals' },
30 + ),
31 + {
32 + name: 'code-block-pro-last-globals',
33 + getStorage: () => localStorage,
34 + partialize: (state) => ({
35 + previousSettings: state?.previousSettings ?? {},
36 + }),
37 + },
18 38 ),
19 39 );