pne-ui 3.0.26 → 3.0.27

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 (38) hide show
  1. package/README.md +115 -0
  2. package/cjs/component/widget-board/WidgetBoard.js +117 -190
  3. package/cjs/component/widget-board/WidgetBoard.js.map +1 -1
  4. package/cjs/component/widget-board/WidgetLayoutsPanel.d.ts +18 -0
  5. package/cjs/component/widget-board/WidgetLayoutsPanel.js +98 -0
  6. package/cjs/component/widget-board/WidgetLayoutsPanel.js.map +1 -0
  7. package/cjs/component/widget-board/index.d.ts +4 -1
  8. package/cjs/component/widget-board/index.js +4 -1
  9. package/cjs/component/widget-board/index.js.map +1 -1
  10. package/cjs/component/widget-board/layoutPersistence.d.ts +38 -0
  11. package/cjs/component/widget-board/layoutPersistence.js +188 -0
  12. package/cjs/component/widget-board/layoutPersistence.js.map +1 -0
  13. package/cjs/component/widget-board/types.d.ts +5 -24
  14. package/cjs/component/widget-board/useWidgetLayoutsManager.d.ts +24 -0
  15. package/cjs/component/widget-board/useWidgetLayoutsManager.js +91 -0
  16. package/cjs/component/widget-board/useWidgetLayoutsManager.js.map +1 -0
  17. package/cjs/component/widget-board/widgetLayoutsPanelStore.d.ts +14 -0
  18. package/cjs/component/widget-board/widgetLayoutsPanelStore.js +22 -0
  19. package/cjs/component/widget-board/widgetLayoutsPanelStore.js.map +1 -0
  20. package/esm/component/widget-board/WidgetBoard.js +117 -190
  21. package/esm/component/widget-board/WidgetBoard.js.map +1 -1
  22. package/esm/component/widget-board/WidgetLayoutsPanel.d.ts +18 -0
  23. package/esm/component/widget-board/WidgetLayoutsPanel.js +93 -0
  24. package/esm/component/widget-board/WidgetLayoutsPanel.js.map +1 -0
  25. package/esm/component/widget-board/index.d.ts +4 -1
  26. package/esm/component/widget-board/index.js +4 -1
  27. package/esm/component/widget-board/index.js.map +1 -1
  28. package/esm/component/widget-board/layoutPersistence.d.ts +38 -0
  29. package/esm/component/widget-board/layoutPersistence.js +181 -0
  30. package/esm/component/widget-board/layoutPersistence.js.map +1 -0
  31. package/esm/component/widget-board/types.d.ts +5 -24
  32. package/esm/component/widget-board/useWidgetLayoutsManager.d.ts +24 -0
  33. package/esm/component/widget-board/useWidgetLayoutsManager.js +87 -0
  34. package/esm/component/widget-board/useWidgetLayoutsManager.js.map +1 -0
  35. package/esm/component/widget-board/widgetLayoutsPanelStore.d.ts +14 -0
  36. package/esm/component/widget-board/widgetLayoutsPanelStore.js +16 -0
  37. package/esm/component/widget-board/widgetLayoutsPanelStore.js.map +1 -0
  38. package/package.json +1 -1
package/README.md CHANGED
@@ -164,6 +164,121 @@ export const App = () => (
164
164
  тему MUI (тип `ThemeOptions`). Обёрнутые компоненты получают как базовые цвета skin, так и кастомные
165
165
  color overrides (`pneNeutral`, `pnePrimaryLight`, `pneAccentuated` и др.), объявленные в `src/index.ts`.
166
166
 
167
+ ## WidgetBoard и работа с лейаутами
168
+
169
+ `WidgetBoard` — дашборд с драгабл-виджетами и встраиваемой панелью лейаутов. Компонент инкапсулирует состояние:
170
+ выбор лейаута, CRUD кастомных схем и сохранение/загрузку лежат внутри `WidgetBoard`; снаружи достаточно передать
171
+ источники данных. Панель (`WidgetLayoutsPanel`) автоматически подключается к борду (по умолчанию без пропсов).
172
+
173
+ Основные пропсы:
174
+ - `widgets`: список `{ id, title, render }` — содержимое виджетов.
175
+ - `layoutByBreakpoint`: базовый пресет для дефолтного лейаута.
176
+ - `loadLayouts(): Promise<{ options; selectedId? } | null>`: обязательная функция загрузки пользовательских схем (вызывается при маунте). Верните хотя бы дефолтный пресет, если удаленное хранилище пустое.
177
+ - `saveLayouts(options, selectedId?)`: обязательная функция сохранения пользовательских схем (дергается после add/update/delete).
178
+
179
+ Панель `WidgetLayoutsPanel` — отдельный компонент, который слушает активный `WidgetBoard` без пропсов. Можно размещать в любом месте дерева (включая FAB) или передать свои `items/onSelect/...` при необходимости.
180
+
181
+ ### Структура данных для лейаутов
182
+
183
+ `loadLayouts` и `saveLayouts` работают с массивом `WidgetBoardLayoutOption`:
184
+
185
+ - `id: string`: уникальный идентификатор лейаута (можно `uuid` или любое значение бэка).
186
+ - `name: string`: отображаемое имя пресета.
187
+ - `layoutByBreakpoint: Record<number | string, BreakpointLayoutConfig>`: карта брейкпоинтов (ключ — число или строка, обычно `12`, `1280`, `1600` и т.д.).
188
+ - `BreakpointLayoutConfig`: `{ columns: number; widgets: Record<widgetId, WidgetLayoutConfig> }`.
189
+ - `WidgetLayoutConfig`: `{ defaultSize: { columnSpan; rowSpan; columnOffset? }; limits?; initialState? }`.
190
+ - `initialState` поддерживает `isHidden` и `isCollapsed`.
191
+
192
+ Формат функции `loadLayouts`:
193
+
194
+ ```ts
195
+ type LoadLayoutsResult = {
196
+ options: WidgetBoardLayoutOption[]
197
+ selectedId?: string // id активного лейаута, если его нет в options — упадет на первый элемент
198
+ } | null
199
+ ```
200
+
201
+ `saveLayouts` получает тот же `options` (уже с последними изменениями) и `selectedId`. При необходимости можно сохранить в API в виде:
202
+
203
+ ```ts
204
+ type PersistedLayout = {
205
+ id: string
206
+ name?: string
207
+ layoutByBreakpoint: Record<number | string, { columns?: number; widgets?: Record<string, {
208
+ columnSpan?: number
209
+ rowSpan?: number
210
+ columnOffset?: number
211
+ isHidden?: boolean
212
+ isCollapsed?: boolean
213
+ }> }>
214
+ }
215
+
216
+ type PersistedPayload = {
217
+ layouts: PersistedLayout[]
218
+ selectedLayoutId?: string
219
+ }
220
+ ```
221
+
222
+ Это соответствует формату, который использует хелпер `buildLayoutSettingsPayload` в `src/component/widget-board/layoutPersistence.ts`.
223
+
224
+ ### Пример использования
225
+
226
+ ```tsx
227
+ import { Box, Stack } from '@mui/material'
228
+ import { WidgetBoard, WidgetLayoutsPanel, type WidgetDefinition, type WidgetBoardLayoutOption } from 'pne-ui'
229
+
230
+ const widgets: WidgetDefinition[] = [
231
+ { id: 'traffic', title: 'Traffic', render: () => <div>Traffic content</div> },
232
+ { id: 'sales', title: 'Sales', render: () => <div>Sales content</div> },
233
+ ]
234
+
235
+ const baseLayoutByBreakpoint = {
236
+ 12: {
237
+ columns: 12,
238
+ widgets: {
239
+ traffic: { defaultSize: { columnSpan: 6, rowSpan: 2 } },
240
+ sales: { defaultSize: { columnSpan: 6, rowSpan: 2 } },
241
+ },
242
+ },
243
+ }
244
+
245
+ // Загрузка/сохранение пресетов
246
+ const loadLayouts = async (): Promise<{ options: WidgetBoardLayoutOption[]; selectedId?: string }> => {
247
+ const response = await api.getUserLayouts() // верните { options, selectedId }
248
+ // Если API пустой, вернем дефолтный пресет
249
+ return (
250
+ response ?? {
251
+ options: [{ id: 'default', name: 'Default', layoutByBreakpoint: baseLayoutByBreakpoint }],
252
+ selectedId: 'default',
253
+ }
254
+ )
255
+ }
256
+ const saveLayouts = async (options: WidgetBoardLayoutOption[], selectedId?: string) => {
257
+ await api.saveUserLayouts({ options, selectedId })
258
+ }
259
+
260
+ export const Dashboard = () => (
261
+ <Box sx={{ p: 2 }}>
262
+ <Stack direction={{ xs: 'column', md: 'row' }} spacing={2} alignItems={{ xs: 'stretch', md: 'flex-start' }}>
263
+ <Box sx={{ minWidth: 260 }}>
264
+ <WidgetLayoutsPanel />
265
+ </Box>
266
+ <Box sx={{ flex: 1 }}>
267
+ <WidgetBoard
268
+ widgets={widgets}
269
+ layoutByBreakpoint={baseLayoutByBreakpoint}
270
+ loadLayouts={loadLayouts}
271
+ saveLayouts={saveLayouts}
272
+ />
273
+ </Box>
274
+ </Stack>
275
+ </Box>
276
+ )
277
+ ```
278
+
279
+ `WidgetBoard` сам обновляет выбранный лейаут, следит за состоянием виджетов и при изменениях дергает `saveLayouts`
280
+ с актуальным набором опций.
281
+
167
282
  [npm-url]: https://www.npmjs.com/package/pne-ui
168
283
 
169
284
  [npm-image]: https://img.shields.io/npm/v/pne-ui
@@ -12,7 +12,15 @@ const material_1 = require("@mui/material");
12
12
  const CloudscapeBoardStyles_1 = require("../cloudscape/CloudscapeBoardStyles");
13
13
  const CloudscapeThemeProvider_1 = require("../cloudscape/CloudscapeThemeProvider");
14
14
  const boardI18n_1 = require("../cloudscape/boardI18n");
15
+ const layoutPersistence_1 = require("./layoutPersistence");
16
+ const widgetLayoutsPanelStore_1 = require("./widgetLayoutsPanelStore");
15
17
  const fallbackLayout = { defaultSize: { columnSpan: 1, rowSpan: 2 } };
18
+ const createLayoutId = () => {
19
+ if (typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function') {
20
+ return crypto.randomUUID();
21
+ }
22
+ return `layout-${Date.now()}`;
23
+ };
16
24
  const withLayout = (definitions, layout) => definitions.map(definition => ({
17
25
  ...definition,
18
26
  layout: layout.widgets[definition.id] ?? fallbackLayout,
@@ -94,150 +102,62 @@ const getLayoutConfigForWidth = (width, layoutMap, breakpoints) => {
94
102
  const breakpoint = resolveBreakpoint(width, breakpoints);
95
103
  return { breakpoint, layout: layoutMap[breakpoint] };
96
104
  };
97
- const buildStoragePayload = (state) => ({
98
- items: state.items.map(({ id, columnSpan, columnOffset, rowSpan }) => ({ id, columnSpan, columnOffset, rowSpan })),
99
- hidden: state.hidden,
100
- collapsed: state.collapsed,
101
- sizeMemory: state.sizeMemory,
102
- layoutMemory: state.layoutMemory,
103
- });
104
- const hydrateStoragePayload = (raw) => (typeof raw === 'string' ? JSON.parse(raw) : raw);
105
- const readPersistedLayouts = (storageKey) => {
106
- if (typeof window === 'undefined')
107
- return null;
108
- const raw = window.localStorage.getItem(storageKey);
109
- if (!raw)
110
- return null;
111
- try {
112
- const parsed = JSON.parse(raw);
113
- if (parsed && typeof parsed === 'object' && 'layouts' in parsed) {
114
- const layouts = parsed.layouts ?? {};
115
- const selectedLayoutId = parsed.selectedLayoutId;
116
- return { layouts, selectedLayoutId };
117
- }
118
- if (parsed && typeof parsed === 'object' && 'items' in parsed) {
119
- return {
120
- layouts: { __legacy: parsed },
121
- selectedLayoutId: '__legacy',
122
- };
123
- }
124
- }
125
- catch {
126
- // ignore corrupt storage payloads
127
- }
128
- return null;
129
- };
130
- const buildLayoutOptions = (options, layoutByBreakpoint) => {
105
+ const buildLayoutOptions = (options, fallback) => {
131
106
  if (options?.length) {
132
107
  return options.map(option => ({
133
108
  ...option,
134
- preset: option.preset ?? {
135
- layoutByBreakpoint,
136
- source: 'static',
137
- },
109
+ layoutByBreakpoint: option.layoutByBreakpoint ?? fallback.layoutByBreakpoint,
138
110
  }));
139
111
  }
140
- return [
141
- {
142
- id: 'default',
143
- name: 'Default layout',
144
- preset: {
145
- layoutByBreakpoint,
146
- source: 'static',
147
- },
148
- },
149
- ];
112
+ return [fallback];
150
113
  };
151
- const layoutOptionsEqual = (a, b) => a.length === b.length && a.every((option, index) => option.id === b[index]?.id && option.name === b[index]?.name && option.preset === b[index]?.preset);
152
- exports.WidgetBoard = (0, react_1.forwardRef)(function WidgetBoard({ widgets, layoutByBreakpoint, breakpoints: customBreakpoints, storageKey = 'pne-widget-board-layout', loadLayouts, layouts, empty, hideNavigationArrows = true, onLayoutPersist, isWidgetEnabled, className, }, ref) {
153
- const initialPersistedLayouts = typeof window !== 'undefined' ? readPersistedLayouts(storageKey) : null;
154
- const persistedLayoutsRef = (0, react_1.useRef)(initialPersistedLayouts ?? { layouts: {} });
155
- const [layoutOptions, setLayoutOptions] = (0, react_1.useState)(() => buildLayoutOptions(layouts?.options, layoutByBreakpoint));
156
- (0, react_1.useEffect)(() => {
157
- if (loadLayouts)
158
- return;
159
- const nextOptions = buildLayoutOptions(layouts?.options, layoutByBreakpoint);
160
- setLayoutOptions(prev => (layoutOptionsEqual(prev, nextOptions) ? prev : nextOptions));
161
- }, [layoutByBreakpoint, layouts?.options, loadLayouts]);
162
- const layoutOptionsMap = (0, react_1.useMemo)(() => new Map(layoutOptions.map(option => [option.id, option])), [layoutOptions]);
163
- const initialLayoutId = (0, react_1.useMemo)(() => {
164
- const fromLayouts = layouts?.selectedId;
165
- if (fromLayouts && layoutOptionsMap.has(fromLayouts))
166
- return fromLayouts;
167
- const persistedId = persistedLayoutsRef.current.selectedLayoutId;
168
- if (persistedId && layoutOptionsMap.has(persistedId))
169
- return persistedId;
170
- if (layouts?.initialSelectedId && layoutOptionsMap.has(layouts.initialSelectedId))
171
- return layouts.initialSelectedId;
172
- return layoutOptions[0]?.id;
173
- }, [layoutOptions, layoutOptionsMap, layouts?.initialSelectedId, layouts?.selectedId]);
174
- const [layoutSource, setLayoutSource] = (0, react_1.useState)(() => ({
175
- ...(layoutOptionsMap.get(initialLayoutId ?? '')?.preset ?? { layoutByBreakpoint, source: 'static' }),
176
- }));
177
- const breakpoints = (0, react_1.useMemo)(() => customBreakpoints ?? Object.keys(layoutSource.layoutByBreakpoint).map(Number).sort((a, b) => a - b), [customBreakpoints, layoutSource.layoutByBreakpoint]);
178
- const [layoutPreset, setLayoutPreset] = (0, react_1.useState)(() => getLayoutConfigForWidth(typeof window !== 'undefined' ? window.innerWidth : undefined, layoutSource.layoutByBreakpoint, breakpoints));
179
- (0, react_1.useEffect)(() => {
180
- setLayoutPreset(getLayoutConfigForWidth(typeof window !== 'undefined' ? window.innerWidth : undefined, layoutSource.layoutByBreakpoint, breakpoints));
181
- }, [breakpoints, layoutSource.layoutByBreakpoint]);
182
- const currentBreakpointKey = (0, react_1.useMemo)(() => String(layoutPreset.breakpoint ?? breakpoints[0]), [breakpoints, layoutPreset.breakpoint]);
183
- const [selectedLayoutId, setSelectedLayoutId] = (0, react_1.useState)(initialLayoutId);
184
- const selectedLayoutRef = (0, react_1.useRef)(initialLayoutId);
114
+ const layoutOptionsEqual = (a, b) => a.length === b.length &&
115
+ a.every((option, index) => option.id === b[index]?.id && option.name === b[index]?.name && option.layoutByBreakpoint === b[index]?.layoutByBreakpoint);
116
+ exports.WidgetBoard = (0, react_1.forwardRef)(function WidgetBoard({ widgets, layoutByBreakpoint, loadLayouts, saveLayouts, }, ref) {
117
+ const defaultOption = (0, react_1.useMemo)(() => ({
118
+ id: 'default',
119
+ name: 'Default layout',
120
+ layoutByBreakpoint,
121
+ }), [layoutByBreakpoint]);
122
+ const initialOptions = (0, react_1.useMemo)(() => buildLayoutOptions(undefined, defaultOption), [defaultOption]);
123
+ const [layoutOptions, setLayoutOptions] = (0, react_1.useState)(initialOptions);
124
+ const [selectedLayoutId, setSelectedLayoutId] = (0, react_1.useState)(initialOptions[0]?.id);
125
+ const selectedLayoutRef = (0, react_1.useRef)(initialOptions[0]?.id);
126
+ const lockedLayoutIdRef = (0, react_1.useRef)(defaultOption.id);
127
+ const loadRequestIdRef = (0, react_1.useRef)(0);
185
128
  (0, react_1.useEffect)(() => {
186
129
  selectedLayoutRef.current = selectedLayoutId;
187
130
  }, [selectedLayoutId]);
131
+ const layoutOptionsMap = (0, react_1.useMemo)(() => new Map(layoutOptions.map(option => [option.id, option])), [layoutOptions]);
188
132
  (0, react_1.useEffect)(() => {
189
133
  if (!selectedLayoutId || layoutOptionsMap.has(selectedLayoutId))
190
134
  return;
191
135
  const fallbackId = layoutOptions[0]?.id;
192
136
  if (fallbackId && fallbackId !== selectedLayoutId) {
193
137
  setSelectedLayoutId(fallbackId);
194
- layouts?.onSelect?.(fallbackId);
195
- }
196
- }, [layoutOptions, layoutOptionsMap, layouts?.onSelect, selectedLayoutId]);
197
- (0, react_1.useEffect)(() => {
198
- const externalSelected = layouts?.selectedId;
199
- if (!externalSelected)
200
- return;
201
- if (!layoutOptionsMap.has(externalSelected))
202
- return;
203
- if (externalSelected !== selectedLayoutId) {
204
- setSelectedLayoutId(externalSelected);
205
138
  }
206
- }, [layoutOptionsMap, layouts?.selectedId, selectedLayoutId]);
139
+ }, [layoutOptions, layoutOptionsMap, selectedLayoutId]);
140
+ const [layoutSource, setLayoutSource] = (0, react_1.useState)(() => layoutOptionsMap.get(selectedLayoutId ?? '')?.layoutByBreakpoint ?? defaultOption.layoutByBreakpoint);
141
+ const breakpoints = (0, react_1.useMemo)(() => Object.keys(layoutSource).map(Number).sort((a, b) => a - b), [layoutSource]);
142
+ const [layoutPreset, setLayoutPreset] = (0, react_1.useState)(() => getLayoutConfigForWidth(typeof window !== 'undefined' ? window.innerWidth : undefined, layoutSource, breakpoints));
207
143
  (0, react_1.useEffect)(() => {
208
- if (!selectedLayoutId || !layouts?.onSelect)
209
- return;
210
- if (layouts.selectedId === selectedLayoutId)
211
- return;
212
- layouts.onSelect(selectedLayoutId);
213
- }, [layouts?.onSelect, layouts?.selectedId, selectedLayoutId]);
144
+ setLayoutPreset(getLayoutConfigForWidth(typeof window !== 'undefined' ? window.innerWidth : undefined, layoutSource, breakpoints));
145
+ }, [breakpoints, layoutSource]);
146
+ const currentBreakpointKey = (0, react_1.useMemo)(() => String(layoutPreset.breakpoint ?? breakpoints[0]), [breakpoints, layoutPreset.breakpoint]);
214
147
  (0, react_1.useEffect)(() => {
215
- const nextSource = layoutOptionsMap.get(selectedLayoutId ?? '')?.preset ?? {
216
- layoutByBreakpoint,
217
- source: 'static',
218
- };
148
+ const nextSource = layoutOptionsMap.get(selectedLayoutId ?? '')?.layoutByBreakpoint ?? defaultOption.layoutByBreakpoint;
219
149
  setLayoutSource(prev => (prev === nextSource ? prev : nextSource));
220
- }, [layoutByBreakpoint, layoutOptionsMap, selectedLayoutId]);
221
- (0, react_1.useEffect)(() => {
222
- if (typeof window === 'undefined')
223
- return;
224
- const nextPersisted = readPersistedLayouts(storageKey) ?? { layouts: {} };
225
- persistedLayoutsRef.current = nextPersisted;
226
- if (nextPersisted.selectedLayoutId &&
227
- layoutOptionsMap.has(nextPersisted.selectedLayoutId) &&
228
- nextPersisted.selectedLayoutId !== selectedLayoutId) {
229
- setSelectedLayoutId(nextPersisted.selectedLayoutId);
230
- }
231
- }, [layoutOptionsMap, selectedLayoutId, storageKey]);
150
+ }, [defaultOption.layoutByBreakpoint, layoutOptionsMap, selectedLayoutId]);
232
151
  (0, react_1.useEffect)(() => {
233
152
  let cancelled = false;
234
- if (!loadLayouts)
235
- return undefined;
236
- loadLayouts().then(result => {
237
- if (cancelled || !result?.options)
153
+ const requestId = ++loadRequestIdRef.current;
154
+ loadLayouts()
155
+ .then(result => {
156
+ if (cancelled || loadRequestIdRef.current !== requestId || !result?.options)
238
157
  return;
239
- const nextOptions = buildLayoutOptions(result.options, layoutByBreakpoint);
158
+ const nextOptions = buildLayoutOptions(result.options, defaultOption);
240
159
  setLayoutOptions(prev => (layoutOptionsEqual(prev, nextOptions) ? prev : nextOptions));
160
+ lockedLayoutIdRef.current = defaultOption.id;
241
161
  const currentSelected = selectedLayoutRef.current;
242
162
  let nextSelected = currentSelected && nextOptions.some(option => option.id === currentSelected) ? currentSelected : undefined;
243
163
  if (result.selectedId && nextOptions.some(option => option.id === result.selectedId)) {
@@ -248,89 +168,95 @@ exports.WidgetBoard = (0, react_1.forwardRef)(function WidgetBoard({ widgets, la
248
168
  }
249
169
  if (nextSelected && nextSelected !== currentSelected) {
250
170
  setSelectedLayoutId(nextSelected);
251
- layouts?.onSelect?.(nextSelected);
252
171
  }
253
172
  else if (!currentSelected && nextSelected) {
254
173
  setSelectedLayoutId(nextSelected);
255
174
  }
175
+ })
176
+ .catch(error => {
177
+ console.warn('Failed to load widget layouts', error);
256
178
  });
257
179
  return () => {
258
180
  cancelled = true;
259
181
  };
260
- }, [layoutByBreakpoint, loadLayouts, layouts?.onSelect]);
182
+ }, [defaultOption, loadLayouts]);
261
183
  const fallbackLayoutConfig = (0, react_1.useMemo)(() => {
262
184
  const firstKey = breakpoints[0];
263
- return layoutSource.layoutByBreakpoint[firstKey] ?? Object.values(layoutSource.layoutByBreakpoint)[0];
264
- }, [breakpoints, layoutSource.layoutByBreakpoint]);
185
+ return layoutSource[firstKey] ?? Object.values(layoutSource)[0];
186
+ }, [breakpoints, layoutSource]);
265
187
  const definitionsWithLayout = (0, react_1.useMemo)(() => withLayout(widgets, layoutPreset.layout ?? fallbackLayoutConfig ?? { columns: 12, widgets: {} }), [fallbackLayoutConfig, layoutPreset.layout, widgets]);
266
- const activeDefinitions = (0, react_1.useMemo)(() => definitionsWithLayout.filter(def => (isWidgetEnabled ? isWidgetEnabled(def) : true)), [definitionsWithLayout, isWidgetEnabled]);
267
- const definitionsMap = (0, react_1.useMemo)(() => new Map(activeDefinitions.map(def => [def.id, def])), [activeDefinitions]);
268
- const [layoutState, setLayoutState] = (0, react_1.useState)(() => buildDefaultState(activeDefinitions));
188
+ const definitionsMap = (0, react_1.useMemo)(() => new Map(definitionsWithLayout.map(def => [def.id, def])), [definitionsWithLayout]);
189
+ const [layoutState, setLayoutState] = (0, react_1.useState)(() => buildDefaultState(definitionsWithLayout));
269
190
  (0, react_1.useEffect)(() => {
270
- const storagePayload = (selectedLayoutId && persistedLayoutsRef.current.layouts[selectedLayoutId]) ??
271
- persistedLayoutsRef.current.layouts.__legacy;
272
- if (storagePayload) {
273
- try {
274
- const parsed = hydrateStoragePayload(storagePayload);
275
- const items = (parsed.items || []).flatMap(item => {
276
- const definition = definitionsMap.get(item.id);
277
- if (!definition)
278
- return [];
279
- return [toBoardItem(definition, item)];
280
- });
281
- const hidden = (parsed.hidden || []).filter(id => definitionsMap.has(id));
282
- const collapsed = (parsed.collapsed || []).filter(id => definitionsMap.has(id));
283
- const sizeMemoryEntries = Object.entries(parsed.sizeMemory || {}).filter(([id]) => definitionsMap.has(id));
284
- const sizeMemory = Object.fromEntries(sizeMemoryEntries);
285
- const layoutMemory = parsed.layoutMemory ?? {};
286
- const missingItems = activeDefinitions
287
- .filter(def => !hidden.includes(def.id) && !items.some(item => item.id === def.id))
288
- .map(definition => toBoardItem(definition));
289
- const allItems = [...items, ...missingItems];
290
- const itemsWithCollapse = applyCollapsedState(allItems, collapsed, definitionsMap, sizeMemory);
291
- setLayoutState({
292
- items: itemsWithCollapse,
293
- hidden,
294
- collapsed,
295
- sizeMemory,
296
- layoutMemory,
297
- });
298
- return;
299
- }
300
- catch (e) {
301
- console.warn('Failed to parse saved widget layout', e);
302
- }
303
- }
304
- setLayoutState(buildDefaultState(activeDefinitions));
305
- }, [activeDefinitions, definitionsMap, selectedLayoutId]);
191
+ setLayoutState(buildDefaultState(definitionsWithLayout));
192
+ }, [definitionsWithLayout]);
306
193
  (0, react_1.useEffect)(() => {
307
194
  if (typeof window === 'undefined')
308
195
  return;
309
- const handleResize = () => setLayoutPreset(getLayoutConfigForWidth(window.innerWidth, layoutSource.layoutByBreakpoint, breakpoints));
196
+ const handleResize = () => setLayoutPreset(getLayoutConfigForWidth(window.innerWidth, layoutSource, breakpoints));
310
197
  window.addEventListener('resize', handleResize);
311
198
  return () => window.removeEventListener('resize', handleResize);
312
- }, [breakpoints, layoutSource.layoutByBreakpoint]);
313
- (0, react_1.useEffect)(() => {
314
- if (typeof window === 'undefined' || !selectedLayoutId)
199
+ }, [breakpoints, layoutSource]);
200
+ const ensureSelected = (0, react_1.useCallback)((options, candidate) => {
201
+ if (candidate && options.some(option => option.id === candidate))
202
+ return candidate;
203
+ return options[0]?.id;
204
+ }, []);
205
+ const buildCurrentPreset = (0, react_1.useCallback)(() => (0, layoutPersistence_1.buildPresetFromState)(layoutState, layoutSource, breakpoints), [breakpoints, layoutSource, layoutState]);
206
+ const selectLayout = (0, react_1.useCallback)((id) => {
207
+ if (!id || id === selectedLayoutId || !layoutOptionsMap.has(id))
315
208
  return;
316
- try {
317
- const payload = buildStoragePayload(layoutState);
318
- const nextPersisted = {
319
- ...persistedLayoutsRef.current,
320
- selectedLayoutId,
321
- layouts: {
322
- ...persistedLayoutsRef.current.layouts,
323
- [selectedLayoutId]: payload,
324
- },
325
- };
326
- persistedLayoutsRef.current = nextPersisted;
327
- window.localStorage.setItem(storageKey, JSON.stringify(nextPersisted));
328
- onLayoutPersist?.(layoutState);
329
- }
330
- catch {
331
- // ignore storage failures
332
- }
333
- }, [layoutState, onLayoutPersist, selectedLayoutId, storageKey]);
209
+ setSelectedLayoutId(id);
210
+ saveLayouts(layoutOptions, id);
211
+ }, [layoutOptions, layoutOptionsMap, saveLayouts, selectedLayoutId]);
212
+ const addLayout = (0, react_1.useCallback)((name) => {
213
+ const layoutByBreakpoint = buildCurrentPreset();
214
+ const option = {
215
+ id: createLayoutId(),
216
+ name: name.trim() || 'Custom layout',
217
+ layoutByBreakpoint,
218
+ };
219
+ const nextOptions = [...layoutOptions, option];
220
+ setLayoutOptions(nextOptions);
221
+ setSelectedLayoutId(option.id);
222
+ saveLayouts(nextOptions, option.id);
223
+ }, [buildCurrentPreset, layoutOptions, saveLayouts]);
224
+ const updateLayout = (0, react_1.useCallback)((id) => {
225
+ if (!layoutOptionsMap.has(id))
226
+ return;
227
+ if (lockedLayoutIdRef.current && id === lockedLayoutIdRef.current)
228
+ return;
229
+ const layoutByBreakpoint = buildCurrentPreset();
230
+ const nextOptions = layoutOptions.map(option => (option.id === id ? { ...option, layoutByBreakpoint } : option));
231
+ setLayoutOptions(nextOptions);
232
+ saveLayouts(nextOptions, selectedLayoutId);
233
+ }, [buildCurrentPreset, layoutOptions, layoutOptionsMap, saveLayouts, selectedLayoutId]);
234
+ const deleteLayout = (0, react_1.useCallback)((id) => {
235
+ if (!layoutOptionsMap.has(id))
236
+ return;
237
+ if (lockedLayoutIdRef.current && id === lockedLayoutIdRef.current)
238
+ return;
239
+ const nextOptions = layoutOptions.filter(option => option.id !== id);
240
+ const nextSelected = id === selectedLayoutId ? ensureSelected(nextOptions) : selectedLayoutId;
241
+ setLayoutOptions(nextOptions);
242
+ setSelectedLayoutId(nextSelected);
243
+ saveLayouts(nextOptions, nextSelected);
244
+ }, [ensureSelected, layoutOptions, layoutOptionsMap, saveLayouts, selectedLayoutId]);
245
+ (0, react_1.useEffect)(() => {
246
+ const panelProps = {
247
+ items: layoutOptions,
248
+ selectedId: selectedLayoutId,
249
+ onSelect: selectLayout,
250
+ onAdd: addLayout,
251
+ onUpdate: updateLayout,
252
+ onDelete: deleteLayout,
253
+ lockedIds: lockedLayoutIdRef.current ? [lockedLayoutIdRef.current] : [],
254
+ };
255
+ (0, widgetLayoutsPanelStore_1.setWidgetLayoutsPanelBridge)(panelProps);
256
+ return () => {
257
+ (0, widgetLayoutsPanelStore_1.setWidgetLayoutsPanelBridge)(null);
258
+ };
259
+ }, [addLayout, deleteLayout, layoutOptions, selectLayout, selectedLayoutId, updateLayout]);
334
260
  const hideItem = (0, react_1.useCallback)((id) => {
335
261
  setLayoutState(prev => {
336
262
  const definition = definitionsMap.get(id);
@@ -374,7 +300,7 @@ exports.WidgetBoard = (0, react_1.forwardRef)(function WidgetBoard({ widgets, la
374
300
  };
375
301
  });
376
302
  }, [currentBreakpointKey, definitionsMap]);
377
- const resetLayout = (0, react_1.useCallback)(() => setLayoutState(buildDefaultState(activeDefinitions)), [activeDefinitions]);
303
+ const resetLayout = (0, react_1.useCallback)(() => setLayoutState(buildDefaultState(definitionsWithLayout)), [definitionsWithLayout]);
378
304
  const handleItemsChange = ({ detail }) => {
379
305
  setLayoutState(prev => ({
380
306
  ...prev,
@@ -475,9 +401,10 @@ exports.WidgetBoard = (0, react_1.forwardRef)(function WidgetBoard({ widgets, la
475
401
  return (react_1.default.createElement(board_item_1.default, { key: item.id, i18nStrings: boardI18n_1.boardItemI18nStrings, header: headerElement, settings: settingsElement, disableContentPaddings: true },
476
402
  react_1.default.createElement(material_1.Box, { sx: { p: 2, height: '100%', boxSizing: 'border-box', overflow: 'hidden' } }, isCollapsed ? react_1.default.createElement(material_1.Typography, { sx: { color: 'text.secondary', fontSize: 14 } }, "Collapsed") : definition.render())));
477
403
  };
404
+ const boardElement = (react_1.default.createElement(material_1.Box, null,
405
+ react_1.default.createElement(board_1.default, { items: visibleItems, renderItem: renderItem, i18nStrings: boardI18nStrings, onItemsChange: handleItemsChange, empty: react_1.default.createElement(material_1.Box, { sx: { p: 2, color: 'text.secondary' } }, "No widgets available") })));
478
406
  return (react_1.default.createElement(CloudscapeThemeProvider_1.CloudscapeThemeProvider, null,
479
- react_1.default.createElement(CloudscapeBoardStyles_1.CloudscapeBoardStyles, { hideNavigationArrows: hideNavigationArrows }),
480
- react_1.default.createElement(material_1.Box, { className: className },
481
- react_1.default.createElement(board_1.default, { items: visibleItems, renderItem: renderItem, i18nStrings: boardI18nStrings, onItemsChange: handleItemsChange, empty: empty ?? react_1.default.createElement(material_1.Box, { sx: { p: 2, color: 'text.secondary' } }, "No widgets available") }))));
407
+ react_1.default.createElement(CloudscapeBoardStyles_1.CloudscapeBoardStyles, { hideNavigationArrows: true }),
408
+ boardElement));
482
409
  });
483
410
  //# sourceMappingURL=WidgetBoard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WidgetBoard.js","sourceRoot":"","sources":["../../../src/component/widget-board/WidgetBoard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WidgetBoard.js","sourceRoot":"","sources":["../../../src/component/widget-board/WidgetBoard.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ export type WidgetLayoutOption = {
3
+ id: string;
4
+ name: string;
5
+ };
6
+ export type WidgetLayoutsPanelProps = {
7
+ items?: WidgetLayoutOption[];
8
+ selectedId?: string;
9
+ onSelect?: (id: string) => void;
10
+ onDelete?: (id: string) => void;
11
+ onUpdate?: (id: string) => void;
12
+ onAdd?: (name: string) => void;
13
+ addLabel?: React.ReactNode;
14
+ className?: string;
15
+ lockedIds?: string[];
16
+ };
17
+ export declare const WidgetLayoutsPanel: React.FC<WidgetLayoutsPanelProps>;
18
+ export default WidgetLayoutsPanel;