# code-block-pro/1.1.0/src/state/language.ts

Code Block Pro – Beautiful Syntax Highlighting, version 1.1.0. 29 lines.

- Page: https://pluginprobe.com/plugins/code-block-pro/1.1.0/code/src/state/language.ts
- Raw: https://pluginprobe.com/plugins/code-block-pro/1.1.0/raw/src/state/language.ts
- Modified: 2022-08-22T22:25:46+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/code-block-pro/1.1.0/code/src/state/language.ts#L10-L20`.

```typescript
import { Lang } from 'shiki';
import create from 'zustand';
import { devtools, persist } from 'zustand/middleware';

type LanguageType = {
    previousLanguage: Lang;
    setPreviousLanguage: (language: Lang) => void;
};
export const useLanguageStore = create<LanguageType>()(
    persist(
        devtools(
            (set) => ({
                previousLanguage: 'javascript',
                setPreviousLanguage(language: Lang) {
                    set({ previousLanguage: language });
                },
            }),
            { name: 'Code Block Pro Language' },
        ),
        {
            name: 'code-block-pro-last-language',
            getStorage: () => localStorage,
            partialize: (state) => ({
                previousLanguage: state?.previousLanguage ?? null,
            }),
        },
    ),
);

```
