@plurid/plurid-ui-state-react 0.0.0-5 → 0.0.0-6

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.
@@ -1,7 +1,10 @@
1
+ import { ActionCreatorWithPayload, ActionCreatorWithoutPayload } from '@reduxjs/toolkit';
1
2
  export interface StateOfAny {
2
3
  [key: string]: any;
3
4
  }
4
5
  export declare type StateWithSlice<Key extends string, State = any> = StateOfAny & Record<Key, State>;
6
+ export declare type DispatchAction<A> = A extends ActionCreatorWithPayload<infer P, infer T> ? P extends void ? () => ReturnType<ActionCreatorWithoutPayload<T>> : (payload: P) => ReturnType<ActionCreatorWithPayload<P, T>> : A extends ActionCreatorWithoutPayload<infer T> ? () => ReturnType<ActionCreatorWithoutPayload<T>> : void;
7
+ export declare type DispatchActionWithoutPayload<A> = A extends ActionCreatorWithoutPayload<infer T> ? () => ReturnType<ActionCreatorWithoutPayload<T>> : void;
5
8
  export interface Notification {
6
9
  id: string;
7
10
  text: string;
@@ -16,8 +16,10 @@ const initialState$4 = {
16
16
  scripts: []
17
17
  };
18
18
 
19
+ const name$4 = "head";
20
+
19
21
  const factory$4 = (state = initialState$4) => createSlice({
20
- name: "head",
22
+ name: name$4,
21
23
  initialState: state,
22
24
  reducers: {
23
25
  setHead: (state, action) => {
@@ -50,8 +52,10 @@ var index$4 = Object.freeze({
50
52
 
51
53
  const initialState$3 = [];
52
54
 
55
+ const name$3 = "notifications";
56
+
53
57
  const factory$3 = (state = initialState$3) => createSlice({
54
- name: "notifications",
58
+ name: name$3,
55
59
  initialState: state,
56
60
  reducers: {
57
61
  addNotification: (state, action) => {
@@ -108,12 +112,17 @@ const initialState$2 = {
108
112
  global: true
109
113
  };
110
114
 
115
+ const name$2 = "shortcuts";
116
+
111
117
  const factory$2 = (state = initialState$2) => createSlice({
112
- name: "shortcuts",
118
+ name: name$2,
113
119
  initialState: state,
114
120
  reducers: {
115
- toggleGlobalShortcuts: (state, action) => {
116
- state.global = typeof action.payload === "boolean" ? action.payload : !state.global;
121
+ setGlobalShortcuts: (state, action) => {
122
+ state.global = action.payload;
123
+ },
124
+ toggleGlobalShortcuts: (state, _action) => {
125
+ state.global = !state.global;
117
126
  }
118
127
  }
119
128
  });
@@ -144,8 +153,10 @@ const initialState$1 = {
144
153
  tray: false
145
154
  };
146
155
 
156
+ const name$1 = "sitting";
157
+
147
158
  const factory$1 = (state = initialState$1) => createSlice({
148
- name: "sitting",
159
+ name: name$1,
149
160
  initialState: state,
150
161
  reducers: {
151
162
  setSittingCurrentLink: (state, action) => {
@@ -154,8 +165,11 @@ const factory$1 = (state = initialState$1) => createSlice({
154
165
  currentLink: currentLink
155
166
  });
156
167
  },
157
- toggleSittingTray: (state, action) => {
158
- state.tray = typeof action.payload === "boolean" ? action.payload : !state.tray;
168
+ setSittingTray: (state, action) => {
169
+ state.tray = action.payload;
170
+ },
171
+ toggleSittingTray: (state, _action) => {
172
+ state.tray = !state.tray;
159
173
  }
160
174
  }
161
175
  });
@@ -189,8 +203,10 @@ const initialState = {
189
203
  interaction: Object.assign({}, plurid)
190
204
  };
191
205
 
206
+ const name = "themes";
207
+
192
208
  const factory = (state = initialState) => createSlice({
193
- name: "themes",
209
+ name: name,
194
210
  initialState: state,
195
211
  reducers: {
196
212
  setTheme: (state, action) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../source/modules/head/index.ts","../source/modules/notifications/index.ts","../source/modules/shortcuts/index.ts","../source/modules/sitting/index.ts","../source/modules/themes/index.ts"],"sourcesContent":["// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface HeadState {\n title: string;\n description: string;\n canonicalURL: string;\n ogTitle: string;\n ogImage: string;\n ogURL: string;\n ogDescription: string;\n styles: string[];\n scripts: string[];\n}\n\n\nconst initialState: HeadState = {\n title: '',\n description: '',\n ogTitle: '',\n ogImage: '',\n ogURL: '',\n ogDescription: '',\n canonicalURL: '',\n styles: [],\n scripts: [],\n};\n\n\nexport const factory = (\n state: HeadState = initialState,\n) => createSlice({\n name: 'head',\n initialState: state,\n reducers: {\n setHead: (\n state,\n action: PayloadAction<Partial<HeadState>>,\n ) => {\n state = {\n ...state,\n ...action,\n };\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nexport const getHead = (\n state: StateWithSlice<'head', HeadState>,\n): HeadState => state.head;\n\nexport const selectors = {\n getHead,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n Notification,\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport type NotificationsState = Notification[];\n\n\nconst initialState: NotificationsState = [];\n\n\nexport const factory = (\n state: NotificationsState = initialState,\n) => createSlice({\n name: 'notifications',\n initialState: state,\n reducers: {\n addNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n const newNotification: Notification = {\n ...action.payload,\n };\n\n const existingNotification = state.find(\n notification => notification.id === newNotification.id,\n );\n\n if (existingNotification) {\n state = state.map(notification => {\n if (notification.id === newNotification.id) {\n return newNotification;\n }\n\n return notification;\n });\n\n return;\n }\n\n state = [\n ...state,\n newNotification,\n ];\n },\n updateNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n state = state.map(message => {\n if (message.id === action.payload.id) {\n const newNotification: Notification = {\n ...action.payload,\n };\n return newNotification;\n }\n\n return {\n ...message,\n };\n });\n },\n removeNotification: (\n state,\n action: PayloadAction<string>,\n ) => {\n state = state.filter(\n message => message.id !== action.payload,\n );\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getAll = (\n state: StateWithSlice<'notifications', NotificationsState>,\n) => state.notifications;\n\nexport const selectors = {\n getAll,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ShortcutsState {\n global: boolean;\n}\n\n\nconst initialState: ShortcutsState = {\n global: true,\n};\n\n\nexport const factory = (\n state: ShortcutsState = initialState,\n) => createSlice({\n name: 'shortcuts',\n initialState: state,\n reducers: {\n toggleGlobalShortcuts: (\n state,\n action: PayloadAction<boolean> | PayloadAction<void>,\n ) => {\n state.global = typeof action.payload === 'boolean'\n ? action.payload\n : !state.global;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGlobal = (\n state: StateWithSlice<'shortcuts', ShortcutsState>,\n) => state.shortcuts.global;\n\nexport const selectors = {\n getGlobal,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface SittingState {\n currentLink: string;\n tray: boolean;\n}\n\n\nconst initialState: SittingState = {\n currentLink: '',\n tray: false,\n};\n\n\nexport const factory = (\n state: SittingState = initialState,\n) => createSlice({\n name: 'sitting',\n initialState: state,\n reducers: {\n setSittingCurrentLink: (\n state,\n action: PayloadAction<string>,\n ) => {\n const currentLink = action.payload;\n\n return {\n ...state,\n currentLink,\n };\n },\n toggleSittingTray: (\n state,\n action: PayloadAction<boolean> | PayloadAction<void>,\n ) => {\n state.tray = typeof action.payload === 'boolean'\n ? action.payload\n : !state.tray;\n }\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getCurrentLink = (\n state: StateWithSlice<'sitting', SittingState>,\n) => state.sitting.currentLink;\nconst getTray = (\n state: StateWithSlice<'sitting', SittingState>,\n) => state.sitting.tray;\n\nexport const selectors = {\n getCurrentLink,\n getTray,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n\n\n import {\n Theme,\n plurid,\n } from '@plurid/plurid-themes';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ThemesState {\n general: Theme;\n interaction: Theme;\n}\n\n\nconst initialState: ThemesState = {\n general: {\n ...plurid,\n },\n interaction: {\n ...plurid,\n },\n};\n\n\nexport interface SetThemePayload {\n type: 'general' | 'interaction';\n theme: Theme;\n}\n\n\nexport const factory = (\n state: ThemesState = initialState,\n) => createSlice({\n name: 'themes',\n initialState: state,\n reducers: {\n setTheme: (\n state,\n action: PayloadAction<SetThemePayload>,\n ) => {\n const {\n type,\n theme,\n } = action.payload;\n\n state[type] = theme;\n },\n setGeneralTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.general = action.payload;\n },\n setInteractionTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.interaction = action.payload;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGeneralTheme = (\n state: StateWithSlice<'themes', ThemesState>,\n) => state.themes.general;\nconst getInteractionTheme = (\n state: StateWithSlice<'themes', ThemesState>,\n) => state.themes.interaction;\n\nexport const selectors = {\n getGeneralTheme,\n getInteractionTheme,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n"],"names":["initialState","title","description","ogTitle","ogImage","ogURL","ogDescription","canonicalURL","styles","scripts","factory","state","createSlice","name","reducers","setHead","action","Object","assign","slice","actions","getHead","head","selectors","reducer","addNotification","newNotification","payload","existingNotification","find","notification","id","map","updateNotification","message","removeNotification","filter","getAll","notifications","global","toggleGlobalShortcuts","getGlobal","shortcuts","currentLink","tray","setSittingCurrentLink","toggleSittingTray","getCurrentLink","sitting","getTray","general","plurid","interaction","setTheme","type","theme","setGeneralTheme","setInteractionTheme","getGeneralTheme","themes","getInteractionTheme"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../source/modules/head/index.ts","../source/modules/notifications/index.ts","../source/modules/shortcuts/index.ts","../source/modules/sitting/index.ts","../source/modules/themes/index.ts"],"sourcesContent":["// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface HeadState {\n title: string;\n description: string;\n canonicalURL: string;\n ogTitle: string;\n ogImage: string;\n ogURL: string;\n ogDescription: string;\n styles: string[];\n scripts: string[];\n}\n\n\nconst initialState: HeadState = {\n title: '',\n description: '',\n ogTitle: '',\n ogImage: '',\n ogURL: '',\n ogDescription: '',\n canonicalURL: '',\n styles: [],\n scripts: [],\n};\n\nconst name = 'head' as const;\n\n\nexport const factory = (\n state: HeadState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setHead: (\n state,\n action: PayloadAction<Partial<HeadState>>,\n ) => {\n state = {\n ...state,\n ...action,\n };\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nexport const getHead = (\n state: StateWithSlice<typeof name, HeadState>,\n): HeadState => state.head;\n\nexport const selectors = {\n getHead,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n Notification,\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport type NotificationsState = Notification[];\n\n\nconst initialState: NotificationsState = [];\n\nconst name = 'notifications' as const;\n\n\nexport const factory = (\n state: NotificationsState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n addNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n const newNotification: Notification = {\n ...action.payload,\n };\n\n const existingNotification = state.find(\n notification => notification.id === newNotification.id,\n );\n\n if (existingNotification) {\n state = state.map(notification => {\n if (notification.id === newNotification.id) {\n return newNotification;\n }\n\n return notification;\n });\n\n return;\n }\n\n state = [\n ...state,\n newNotification,\n ];\n },\n updateNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n state = state.map(message => {\n if (message.id === action.payload.id) {\n const newNotification: Notification = {\n ...action.payload,\n };\n return newNotification;\n }\n\n return {\n ...message,\n };\n });\n },\n removeNotification: (\n state,\n action: PayloadAction<string>,\n ) => {\n state = state.filter(\n message => message.id !== action.payload,\n );\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getAll = (\n state: StateWithSlice<typeof name, NotificationsState>,\n) => state.notifications;\n\nexport const selectors = {\n getAll,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ShortcutsState {\n global: boolean;\n}\n\n\nconst initialState: ShortcutsState = {\n global: true,\n};\n\nconst name = 'shortcuts' as const;\n\n\nexport const factory = (\n state: ShortcutsState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setGlobalShortcuts: (\n state,\n action: PayloadAction<boolean>,\n ) => {\n state.global = action.payload;\n },\n toggleGlobalShortcuts: (\n state,\n _action: PayloadAction<void>,\n ) => {\n state.global = !state.global;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGlobal = (\n state: StateWithSlice<typeof name, ShortcutsState>,\n) => state.shortcuts.global;\n\nexport const selectors = {\n getGlobal,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface SittingState {\n currentLink: string;\n tray: boolean;\n}\n\n\nconst initialState: SittingState = {\n currentLink: '',\n tray: false,\n};\n\nconst name = 'sitting' as const;\n\n\nexport const factory = (\n state: SittingState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setSittingCurrentLink: (\n state,\n action: PayloadAction<string>,\n ) => {\n const currentLink = action.payload;\n\n return {\n ...state,\n currentLink,\n };\n },\n setSittingTray: (\n state,\n action: PayloadAction<boolean>,\n ) => {\n state.tray = action.payload;\n },\n toggleSittingTray: (\n state,\n _action: PayloadAction<void>,\n ) => {\n state.tray = !state.tray;\n }\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getCurrentLink = (\n state: StateWithSlice<typeof name, SittingState>,\n) => state.sitting.currentLink;\nconst getTray = (\n state: StateWithSlice<typeof name, SittingState>,\n) => state.sitting.tray;\n\nexport const selectors = {\n getCurrentLink,\n getTray,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n\n\n import {\n Theme,\n plurid,\n } from '@plurid/plurid-themes';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ThemesState {\n general: Theme;\n interaction: Theme;\n}\n\n\nconst initialState: ThemesState = {\n general: {\n ...plurid,\n },\n interaction: {\n ...plurid,\n },\n};\n\nconst name = 'themes' as const;\n\n\nexport interface SetThemePayload {\n type: 'general' | 'interaction';\n theme: Theme;\n}\n\n\nexport const factory = (\n state: ThemesState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setTheme: (\n state,\n action: PayloadAction<SetThemePayload>,\n ) => {\n const {\n type,\n theme,\n } = action.payload;\n\n state[type] = theme;\n },\n setGeneralTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.general = action.payload;\n },\n setInteractionTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.interaction = action.payload;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGeneralTheme = (\n state: StateWithSlice<typeof name, ThemesState>,\n) => state.themes.general;\nconst getInteractionTheme = (\n state: StateWithSlice<typeof name, ThemesState>,\n) => state.themes.interaction;\n\nexport const selectors = {\n getGeneralTheme,\n getInteractionTheme,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n"],"names":["initialState","title","description","ogTitle","ogImage","ogURL","ogDescription","canonicalURL","styles","scripts","name","factory","state","createSlice","reducers","setHead","action","Object","assign","slice","actions","getHead","head","selectors","reducer","addNotification","newNotification","payload","existingNotification","find","notification","id","map","updateNotification","message","removeNotification","filter","getAll","notifications","global","setGlobalShortcuts","toggleGlobalShortcuts","_action","getGlobal","shortcuts","currentLink","tray","setSittingCurrentLink","setSittingTray","toggleSittingTray","getCurrentLink","sitting","getTray","general","plurid","interaction","setTheme","type","theme","setGeneralTheme","setInteractionTheme","getGeneralTheme","themes","getInteractionTheme"],"mappings":"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"}
@@ -22,8 +22,10 @@ const initialState$4 = {
22
22
  scripts: []
23
23
  };
24
24
 
25
+ const name$4 = "head";
26
+
25
27
  const factory$4 = (state = initialState$4) => toolkit.createSlice({
26
- name: "head",
28
+ name: name$4,
27
29
  initialState: state,
28
30
  reducers: {
29
31
  setHead: (state, action) => {
@@ -56,8 +58,10 @@ var index$4 = Object.freeze({
56
58
 
57
59
  const initialState$3 = [];
58
60
 
61
+ const name$3 = "notifications";
62
+
59
63
  const factory$3 = (state = initialState$3) => toolkit.createSlice({
60
- name: "notifications",
64
+ name: name$3,
61
65
  initialState: state,
62
66
  reducers: {
63
67
  addNotification: (state, action) => {
@@ -114,12 +118,17 @@ const initialState$2 = {
114
118
  global: true
115
119
  };
116
120
 
121
+ const name$2 = "shortcuts";
122
+
117
123
  const factory$2 = (state = initialState$2) => toolkit.createSlice({
118
- name: "shortcuts",
124
+ name: name$2,
119
125
  initialState: state,
120
126
  reducers: {
121
- toggleGlobalShortcuts: (state, action) => {
122
- state.global = typeof action.payload === "boolean" ? action.payload : !state.global;
127
+ setGlobalShortcuts: (state, action) => {
128
+ state.global = action.payload;
129
+ },
130
+ toggleGlobalShortcuts: (state, _action) => {
131
+ state.global = !state.global;
123
132
  }
124
133
  }
125
134
  });
@@ -150,8 +159,10 @@ const initialState$1 = {
150
159
  tray: false
151
160
  };
152
161
 
162
+ const name$1 = "sitting";
163
+
153
164
  const factory$1 = (state = initialState$1) => toolkit.createSlice({
154
- name: "sitting",
165
+ name: name$1,
155
166
  initialState: state,
156
167
  reducers: {
157
168
  setSittingCurrentLink: (state, action) => {
@@ -160,8 +171,11 @@ const factory$1 = (state = initialState$1) => toolkit.createSlice({
160
171
  currentLink: currentLink
161
172
  });
162
173
  },
163
- toggleSittingTray: (state, action) => {
164
- state.tray = typeof action.payload === "boolean" ? action.payload : !state.tray;
174
+ setSittingTray: (state, action) => {
175
+ state.tray = action.payload;
176
+ },
177
+ toggleSittingTray: (state, _action) => {
178
+ state.tray = !state.tray;
165
179
  }
166
180
  }
167
181
  });
@@ -195,8 +209,10 @@ const initialState = {
195
209
  interaction: Object.assign({}, pluridThemes.plurid)
196
210
  };
197
211
 
212
+ const name = "themes";
213
+
198
214
  const factory = (state = initialState) => toolkit.createSlice({
199
- name: "themes",
215
+ name: name,
200
216
  initialState: state,
201
217
  reducers: {
202
218
  setTheme: (state, action) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../source/modules/head/index.ts","../source/modules/notifications/index.ts","../source/modules/shortcuts/index.ts","../source/modules/sitting/index.ts","../source/modules/themes/index.ts"],"sourcesContent":["// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface HeadState {\n title: string;\n description: string;\n canonicalURL: string;\n ogTitle: string;\n ogImage: string;\n ogURL: string;\n ogDescription: string;\n styles: string[];\n scripts: string[];\n}\n\n\nconst initialState: HeadState = {\n title: '',\n description: '',\n ogTitle: '',\n ogImage: '',\n ogURL: '',\n ogDescription: '',\n canonicalURL: '',\n styles: [],\n scripts: [],\n};\n\n\nexport const factory = (\n state: HeadState = initialState,\n) => createSlice({\n name: 'head',\n initialState: state,\n reducers: {\n setHead: (\n state,\n action: PayloadAction<Partial<HeadState>>,\n ) => {\n state = {\n ...state,\n ...action,\n };\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nexport const getHead = (\n state: StateWithSlice<'head', HeadState>,\n): HeadState => state.head;\n\nexport const selectors = {\n getHead,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n Notification,\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport type NotificationsState = Notification[];\n\n\nconst initialState: NotificationsState = [];\n\n\nexport const factory = (\n state: NotificationsState = initialState,\n) => createSlice({\n name: 'notifications',\n initialState: state,\n reducers: {\n addNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n const newNotification: Notification = {\n ...action.payload,\n };\n\n const existingNotification = state.find(\n notification => notification.id === newNotification.id,\n );\n\n if (existingNotification) {\n state = state.map(notification => {\n if (notification.id === newNotification.id) {\n return newNotification;\n }\n\n return notification;\n });\n\n return;\n }\n\n state = [\n ...state,\n newNotification,\n ];\n },\n updateNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n state = state.map(message => {\n if (message.id === action.payload.id) {\n const newNotification: Notification = {\n ...action.payload,\n };\n return newNotification;\n }\n\n return {\n ...message,\n };\n });\n },\n removeNotification: (\n state,\n action: PayloadAction<string>,\n ) => {\n state = state.filter(\n message => message.id !== action.payload,\n );\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getAll = (\n state: StateWithSlice<'notifications', NotificationsState>,\n) => state.notifications;\n\nexport const selectors = {\n getAll,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ShortcutsState {\n global: boolean;\n}\n\n\nconst initialState: ShortcutsState = {\n global: true,\n};\n\n\nexport const factory = (\n state: ShortcutsState = initialState,\n) => createSlice({\n name: 'shortcuts',\n initialState: state,\n reducers: {\n toggleGlobalShortcuts: (\n state,\n action: PayloadAction<boolean> | PayloadAction<void>,\n ) => {\n state.global = typeof action.payload === 'boolean'\n ? action.payload\n : !state.global;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGlobal = (\n state: StateWithSlice<'shortcuts', ShortcutsState>,\n) => state.shortcuts.global;\n\nexport const selectors = {\n getGlobal,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface SittingState {\n currentLink: string;\n tray: boolean;\n}\n\n\nconst initialState: SittingState = {\n currentLink: '',\n tray: false,\n};\n\n\nexport const factory = (\n state: SittingState = initialState,\n) => createSlice({\n name: 'sitting',\n initialState: state,\n reducers: {\n setSittingCurrentLink: (\n state,\n action: PayloadAction<string>,\n ) => {\n const currentLink = action.payload;\n\n return {\n ...state,\n currentLink,\n };\n },\n toggleSittingTray: (\n state,\n action: PayloadAction<boolean> | PayloadAction<void>,\n ) => {\n state.tray = typeof action.payload === 'boolean'\n ? action.payload\n : !state.tray;\n }\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getCurrentLink = (\n state: StateWithSlice<'sitting', SittingState>,\n) => state.sitting.currentLink;\nconst getTray = (\n state: StateWithSlice<'sitting', SittingState>,\n) => state.sitting.tray;\n\nexport const selectors = {\n getCurrentLink,\n getTray,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n\n\n import {\n Theme,\n plurid,\n } from '@plurid/plurid-themes';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ThemesState {\n general: Theme;\n interaction: Theme;\n}\n\n\nconst initialState: ThemesState = {\n general: {\n ...plurid,\n },\n interaction: {\n ...plurid,\n },\n};\n\n\nexport interface SetThemePayload {\n type: 'general' | 'interaction';\n theme: Theme;\n}\n\n\nexport const factory = (\n state: ThemesState = initialState,\n) => createSlice({\n name: 'themes',\n initialState: state,\n reducers: {\n setTheme: (\n state,\n action: PayloadAction<SetThemePayload>,\n ) => {\n const {\n type,\n theme,\n } = action.payload;\n\n state[type] = theme;\n },\n setGeneralTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.general = action.payload;\n },\n setInteractionTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.interaction = action.payload;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGeneralTheme = (\n state: StateWithSlice<'themes', ThemesState>,\n) => state.themes.general;\nconst getInteractionTheme = (\n state: StateWithSlice<'themes', ThemesState>,\n) => state.themes.interaction;\n\nexport const selectors = {\n getGeneralTheme,\n getInteractionTheme,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n"],"names":["initialState","title","description","ogTitle","ogImage","ogURL","ogDescription","canonicalURL","styles","scripts","factory","state","createSlice","name","reducers","setHead","action","Object","assign","slice","actions","getHead","head","selectors","reducer","addNotification","newNotification","payload","existingNotification","find","notification","id","map","updateNotification","message","removeNotification","filter","getAll","notifications","global","toggleGlobalShortcuts","getGlobal","shortcuts","currentLink","tray","setSittingCurrentLink","toggleSittingTray","getCurrentLink","sitting","getTray","general","plurid","interaction","setTheme","type","theme","setGeneralTheme","setInteractionTheme","getGeneralTheme","themes","getInteractionTheme"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../source/modules/head/index.ts","../source/modules/notifications/index.ts","../source/modules/shortcuts/index.ts","../source/modules/sitting/index.ts","../source/modules/themes/index.ts"],"sourcesContent":["// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface HeadState {\n title: string;\n description: string;\n canonicalURL: string;\n ogTitle: string;\n ogImage: string;\n ogURL: string;\n ogDescription: string;\n styles: string[];\n scripts: string[];\n}\n\n\nconst initialState: HeadState = {\n title: '',\n description: '',\n ogTitle: '',\n ogImage: '',\n ogURL: '',\n ogDescription: '',\n canonicalURL: '',\n styles: [],\n scripts: [],\n};\n\nconst name = 'head' as const;\n\n\nexport const factory = (\n state: HeadState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setHead: (\n state,\n action: PayloadAction<Partial<HeadState>>,\n ) => {\n state = {\n ...state,\n ...action,\n };\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nexport const getHead = (\n state: StateWithSlice<typeof name, HeadState>,\n): HeadState => state.head;\n\nexport const selectors = {\n getHead,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n Notification,\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport type NotificationsState = Notification[];\n\n\nconst initialState: NotificationsState = [];\n\nconst name = 'notifications' as const;\n\n\nexport const factory = (\n state: NotificationsState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n addNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n const newNotification: Notification = {\n ...action.payload,\n };\n\n const existingNotification = state.find(\n notification => notification.id === newNotification.id,\n );\n\n if (existingNotification) {\n state = state.map(notification => {\n if (notification.id === newNotification.id) {\n return newNotification;\n }\n\n return notification;\n });\n\n return;\n }\n\n state = [\n ...state,\n newNotification,\n ];\n },\n updateNotification: (\n state,\n action: PayloadAction<Notification>,\n ) => {\n state = state.map(message => {\n if (message.id === action.payload.id) {\n const newNotification: Notification = {\n ...action.payload,\n };\n return newNotification;\n }\n\n return {\n ...message,\n };\n });\n },\n removeNotification: (\n state,\n action: PayloadAction<string>,\n ) => {\n state = state.filter(\n message => message.id !== action.payload,\n );\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getAll = (\n state: StateWithSlice<typeof name, NotificationsState>,\n) => state.notifications;\n\nexport const selectors = {\n getAll,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ShortcutsState {\n global: boolean;\n}\n\n\nconst initialState: ShortcutsState = {\n global: true,\n};\n\nconst name = 'shortcuts' as const;\n\n\nexport const factory = (\n state: ShortcutsState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setGlobalShortcuts: (\n state,\n action: PayloadAction<boolean>,\n ) => {\n state.global = action.payload;\n },\n toggleGlobalShortcuts: (\n state,\n _action: PayloadAction<void>,\n ) => {\n state.global = !state.global;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGlobal = (\n state: StateWithSlice<typeof name, ShortcutsState>,\n) => state.shortcuts.global;\n\nexport const selectors = {\n getGlobal,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface SittingState {\n currentLink: string;\n tray: boolean;\n}\n\n\nconst initialState: SittingState = {\n currentLink: '',\n tray: false,\n};\n\nconst name = 'sitting' as const;\n\n\nexport const factory = (\n state: SittingState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setSittingCurrentLink: (\n state,\n action: PayloadAction<string>,\n ) => {\n const currentLink = action.payload;\n\n return {\n ...state,\n currentLink,\n };\n },\n setSittingTray: (\n state,\n action: PayloadAction<boolean>,\n ) => {\n state.tray = action.payload;\n },\n toggleSittingTray: (\n state,\n _action: PayloadAction<void>,\n ) => {\n state.tray = !state.tray;\n }\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getCurrentLink = (\n state: StateWithSlice<typeof name, SittingState>,\n) => state.sitting.currentLink;\nconst getTray = (\n state: StateWithSlice<typeof name, SittingState>,\n) => state.sitting.tray;\n\nexport const selectors = {\n getCurrentLink,\n getTray,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n","// #region imports\n // #region libraries\n import {\n createSlice,\n PayloadAction,\n } from '@reduxjs/toolkit';\n\n\n import {\n Theme,\n plurid,\n } from '@plurid/plurid-themes';\n // #endregion libraries\n\n\n // #region external\n import {\n StateWithSlice,\n } from '~data/interfaces';\n // #endregion external\n// #endregion imports\n\n\n\n// #region module\nexport interface ThemesState {\n general: Theme;\n interaction: Theme;\n}\n\n\nconst initialState: ThemesState = {\n general: {\n ...plurid,\n },\n interaction: {\n ...plurid,\n },\n};\n\nconst name = 'themes' as const;\n\n\nexport interface SetThemePayload {\n type: 'general' | 'interaction';\n theme: Theme;\n}\n\n\nexport const factory = (\n state: ThemesState = initialState,\n) => createSlice({\n name,\n initialState: state,\n reducers: {\n setTheme: (\n state,\n action: PayloadAction<SetThemePayload>,\n ) => {\n const {\n type,\n theme,\n } = action.payload;\n\n state[type] = theme;\n },\n setGeneralTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.general = action.payload;\n },\n setInteractionTheme: (\n state,\n action: PayloadAction<Theme>,\n ) => {\n state.interaction = action.payload;\n },\n },\n});\n\nexport const slice = factory();\n// #endregion module\n\n\n\n// #region exports\nexport const actions = slice.actions;\n\n\nconst getGeneralTheme = (\n state: StateWithSlice<typeof name, ThemesState>,\n) => state.themes.general;\nconst getInteractionTheme = (\n state: StateWithSlice<typeof name, ThemesState>,\n) => state.themes.interaction;\n\nexport const selectors = {\n getGeneralTheme,\n getInteractionTheme,\n};\n\n\nexport const reducer = slice.reducer;\n// #endregion exports\n"],"names":["initialState","title","description","ogTitle","ogImage","ogURL","ogDescription","canonicalURL","styles","scripts","name","factory","state","createSlice","reducers","setHead","action","Object","assign","slice","actions","getHead","head","selectors","reducer","addNotification","newNotification","payload","existingNotification","find","notification","id","map","updateNotification","message","removeNotification","filter","getAll","notifications","global","setGlobalShortcuts","toggleGlobalShortcuts","_action","getGlobal","shortcuts","currentLink","tray","setSittingCurrentLink","setSittingTray","toggleSittingTray","getCurrentLink","sitting","getTray","general","plurid","interaction","setTheme","type","theme","setGeneralTheme","setInteractionTheme","getGeneralTheme","themes","getInteractionTheme"],"mappings":"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"}
@@ -11,6 +11,7 @@ export interface HeadState {
11
11
  styles: string[];
12
12
  scripts: string[];
13
13
  }
14
+ declare const name: "head";
14
15
  export declare const factory: (state?: HeadState) => import("@reduxjs/toolkit").Slice<HeadState, {
15
16
  setHead: (state: import("immer/dist/internal").WritableDraft<HeadState>, action: PayloadAction<Partial<HeadState>>) => void;
16
17
  }, "head">;
@@ -20,8 +21,9 @@ export declare const slice: import("@reduxjs/toolkit").Slice<HeadState, {
20
21
  export declare const actions: import("@reduxjs/toolkit").CaseReducerActions<{
21
22
  setHead: (state: import("immer/dist/internal").WritableDraft<HeadState>, action: PayloadAction<Partial<HeadState>>) => void;
22
23
  }>;
23
- export declare const getHead: (state: StateWithSlice<'head', HeadState>) => HeadState;
24
+ export declare const getHead: (state: StateWithSlice<typeof name, HeadState>) => HeadState;
24
25
  export declare const selectors: {
25
- getHead: (state: StateWithSlice<'head', HeadState>) => HeadState;
26
+ getHead: (state: StateWithSlice<typeof name, HeadState>) => HeadState;
26
27
  };
27
28
  export declare const reducer: import("@reduxjs/toolkit").Reducer<HeadState, import("@reduxjs/toolkit").AnyAction>;
29
+ export {};
@@ -1,6 +1,7 @@
1
1
  import { PayloadAction } from '@reduxjs/toolkit';
2
2
  import { Notification, StateWithSlice } from "../../data/interfaces";
3
3
  export declare type NotificationsState = Notification[];
4
+ declare const name: "notifications";
4
5
  export declare const factory: (state?: NotificationsState) => import("@reduxjs/toolkit").Slice<NotificationsState, {
5
6
  addNotification: (state: import("immer/dist/internal").WritableDraft<Notification>[], action: PayloadAction<Notification>) => void;
6
7
  updateNotification: (state: import("immer/dist/internal").WritableDraft<Notification>[], action: PayloadAction<Notification>) => void;
@@ -17,6 +18,7 @@ export declare const actions: import("@reduxjs/toolkit").CaseReducerActions<{
17
18
  removeNotification: (state: import("immer/dist/internal").WritableDraft<Notification>[], action: PayloadAction<string>) => void;
18
19
  }>;
19
20
  export declare const selectors: {
20
- getAll: (state: StateWithSlice<'notifications', NotificationsState>) => NotificationsState;
21
+ getAll: (state: StateWithSlice<typeof name, NotificationsState>) => NotificationsState;
21
22
  };
22
23
  export declare const reducer: import("@reduxjs/toolkit").Reducer<NotificationsState, import("@reduxjs/toolkit").AnyAction>;
24
+ export {};
@@ -3,16 +3,21 @@ import { StateWithSlice } from "../../data/interfaces";
3
3
  export interface ShortcutsState {
4
4
  global: boolean;
5
5
  }
6
+ declare const name: "shortcuts";
6
7
  export declare const factory: (state?: ShortcutsState) => import("@reduxjs/toolkit").Slice<ShortcutsState, {
7
- toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
8
+ setGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean>) => void;
9
+ toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, _action: PayloadAction<void>) => void;
8
10
  }, "shortcuts">;
9
11
  export declare const slice: import("@reduxjs/toolkit").Slice<ShortcutsState, {
10
- toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
12
+ setGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean>) => void;
13
+ toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, _action: PayloadAction<void>) => void;
11
14
  }, "shortcuts">;
12
15
  export declare const actions: import("@reduxjs/toolkit").CaseReducerActions<{
13
- toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
16
+ setGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, action: PayloadAction<boolean>) => void;
17
+ toggleGlobalShortcuts: (state: import("immer/dist/internal").WritableDraft<ShortcutsState>, _action: PayloadAction<void>) => void;
14
18
  }>;
15
19
  export declare const selectors: {
16
- getGlobal: (state: StateWithSlice<'shortcuts', ShortcutsState>) => boolean;
20
+ getGlobal: (state: StateWithSlice<typeof name, ShortcutsState>) => boolean;
17
21
  };
18
22
  export declare const reducer: import("@reduxjs/toolkit").Reducer<ShortcutsState, import("@reduxjs/toolkit").AnyAction>;
23
+ export {};
@@ -4,29 +4,34 @@ export interface SittingState {
4
4
  currentLink: string;
5
5
  tray: boolean;
6
6
  }
7
+ declare const name: "sitting";
7
8
  export declare const factory: (state?: SittingState) => import("@reduxjs/toolkit").Slice<SittingState, {
8
9
  setSittingCurrentLink: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<string>) => {
9
10
  currentLink: string;
10
11
  tray: boolean;
11
12
  };
12
- toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
13
+ setSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean>) => void;
14
+ toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, _action: PayloadAction<void>) => void;
13
15
  }, "sitting">;
14
16
  export declare const slice: import("@reduxjs/toolkit").Slice<SittingState, {
15
17
  setSittingCurrentLink: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<string>) => {
16
18
  currentLink: string;
17
19
  tray: boolean;
18
20
  };
19
- toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
21
+ setSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean>) => void;
22
+ toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, _action: PayloadAction<void>) => void;
20
23
  }, "sitting">;
21
24
  export declare const actions: import("@reduxjs/toolkit").CaseReducerActions<{
22
25
  setSittingCurrentLink: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<string>) => {
23
26
  currentLink: string;
24
27
  tray: boolean;
25
28
  };
26
- toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean> | PayloadAction<void>) => void;
29
+ setSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, action: PayloadAction<boolean>) => void;
30
+ toggleSittingTray: (state: import("immer/dist/internal").WritableDraft<SittingState>, _action: PayloadAction<void>) => void;
27
31
  }>;
28
32
  export declare const selectors: {
29
- getCurrentLink: (state: StateWithSlice<'sitting', SittingState>) => string;
30
- getTray: (state: StateWithSlice<'sitting', SittingState>) => boolean;
33
+ getCurrentLink: (state: StateWithSlice<typeof name, SittingState>) => string;
34
+ getTray: (state: StateWithSlice<typeof name, SittingState>) => boolean;
31
35
  };
32
36
  export declare const reducer: import("@reduxjs/toolkit").Reducer<SittingState, import("@reduxjs/toolkit").AnyAction>;
37
+ export {};
@@ -5,6 +5,7 @@ export interface ThemesState {
5
5
  general: Theme;
6
6
  interaction: Theme;
7
7
  }
8
+ declare const name: "themes";
8
9
  export interface SetThemePayload {
9
10
  type: 'general' | 'interaction';
10
11
  theme: Theme;
@@ -25,7 +26,8 @@ export declare const actions: import("@reduxjs/toolkit").CaseReducerActions<{
25
26
  setInteractionTheme: (state: import("immer/dist/internal").WritableDraft<ThemesState>, action: PayloadAction<Theme>) => void;
26
27
  }>;
27
28
  export declare const selectors: {
28
- getGeneralTheme: (state: StateWithSlice<'themes', ThemesState>) => Theme;
29
- getInteractionTheme: (state: StateWithSlice<'themes', ThemesState>) => Theme;
29
+ getGeneralTheme: (state: StateWithSlice<typeof name, ThemesState>) => Theme;
30
+ getInteractionTheme: (state: StateWithSlice<typeof name, ThemesState>) => Theme;
30
31
  };
31
32
  export declare const reducer: import("@reduxjs/toolkit").Reducer<ThemesState, import("@reduxjs/toolkit").AnyAction>;
33
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurid/plurid-ui-state-react",
3
- "version": "0.0.0-5",
3
+ "version": "0.0.0-6",
4
4
  "description": "Plurid User Interface State for React",
5
5
  "keywords": [
6
6
  "plurid",