pne-ui 3.0.56 → 3.0.58
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.
- package/README.md +6 -12
- package/cjs/component/cloudscape/CloudscapeBoardStyles.js +2 -2
- package/cjs/component/cloudscape/CloudscapeBoardStyles.js.map +1 -1
- package/cjs/component/widget-board/WidgetBoard.js +64 -600
- package/cjs/component/widget-board/WidgetBoard.js.map +1 -1
- package/cjs/component/widget-board/WidgetBoardItem.d.ts +16 -0
- package/cjs/component/widget-board/WidgetBoardItem.js +59 -0
- package/cjs/component/widget-board/WidgetBoardItem.js.map +1 -0
- package/cjs/component/widget-board/WidgetLayoutsPanel.d.ts +0 -1
- package/cjs/component/widget-board/WidgetLayoutsPanel.js +1 -8
- package/cjs/component/widget-board/WidgetLayoutsPanel.js.map +1 -1
- package/cjs/component/widget-board/layoutPersistence.d.ts +1 -1
- package/cjs/component/widget-board/layoutPersistence.js +4 -3
- package/cjs/component/widget-board/layoutPersistence.js.map +1 -1
- package/cjs/component/widget-board/useWidgetBoardAutosize.d.ts +17 -0
- package/cjs/component/widget-board/useWidgetBoardAutosize.js +165 -0
- package/cjs/component/widget-board/useWidgetBoardAutosize.js.map +1 -0
- package/cjs/component/widget-board/useWidgetBoardInteractionLock.d.ts +1 -0
- package/cjs/component/widget-board/useWidgetBoardInteractionLock.js +29 -0
- package/cjs/component/widget-board/useWidgetBoardInteractionLock.js.map +1 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutActions.d.ts +21 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutActions.js +114 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutActions.js.map +1 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutSource.d.ts +30 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutSource.js +70 -0
- package/cjs/component/widget-board/useWidgetBoardLayoutSource.js.map +1 -0
- package/cjs/component/widget-board/useWidgetBoardStateActions.d.ts +20 -0
- package/cjs/component/widget-board/useWidgetBoardStateActions.js +165 -0
- package/cjs/component/widget-board/useWidgetBoardStateActions.js.map +1 -0
- package/cjs/component/widget-board/widgetBoardLayoutUtils.d.ts +18 -0
- package/cjs/component/widget-board/widgetBoardLayoutUtils.js +116 -0
- package/cjs/component/widget-board/widgetBoardLayoutUtils.js.map +1 -0
- package/cjs/component/widget-board/widgetLayoutsPanelStore.d.ts +0 -1
- package/cjs/component/widget-board/widgetLayoutsPanelStore.js.map +1 -1
- package/esm/component/cloudscape/CloudscapeBoardStyles.js +2 -2
- package/esm/component/cloudscape/CloudscapeBoardStyles.js.map +1 -1
- package/esm/component/widget-board/WidgetBoard.js +58 -594
- package/esm/component/widget-board/WidgetBoard.js.map +1 -1
- package/esm/component/widget-board/WidgetBoardItem.d.ts +16 -0
- package/esm/component/widget-board/WidgetBoardItem.js +54 -0
- package/esm/component/widget-board/WidgetBoardItem.js.map +1 -0
- package/esm/component/widget-board/WidgetLayoutsPanel.d.ts +0 -1
- package/esm/component/widget-board/WidgetLayoutsPanel.js +1 -8
- package/esm/component/widget-board/WidgetLayoutsPanel.js.map +1 -1
- package/esm/component/widget-board/layoutPersistence.d.ts +1 -1
- package/esm/component/widget-board/layoutPersistence.js +4 -3
- package/esm/component/widget-board/layoutPersistence.js.map +1 -1
- package/esm/component/widget-board/useWidgetBoardAutosize.d.ts +17 -0
- package/esm/component/widget-board/useWidgetBoardAutosize.js +161 -0
- package/esm/component/widget-board/useWidgetBoardAutosize.js.map +1 -0
- package/esm/component/widget-board/useWidgetBoardInteractionLock.d.ts +1 -0
- package/esm/component/widget-board/useWidgetBoardInteractionLock.js +25 -0
- package/esm/component/widget-board/useWidgetBoardInteractionLock.js.map +1 -0
- package/esm/component/widget-board/useWidgetBoardLayoutActions.d.ts +21 -0
- package/esm/component/widget-board/useWidgetBoardLayoutActions.js +110 -0
- package/esm/component/widget-board/useWidgetBoardLayoutActions.js.map +1 -0
- package/esm/component/widget-board/useWidgetBoardLayoutSource.d.ts +30 -0
- package/esm/component/widget-board/useWidgetBoardLayoutSource.js +66 -0
- package/esm/component/widget-board/useWidgetBoardLayoutSource.js.map +1 -0
- package/esm/component/widget-board/useWidgetBoardStateActions.d.ts +20 -0
- package/esm/component/widget-board/useWidgetBoardStateActions.js +161 -0
- package/esm/component/widget-board/useWidgetBoardStateActions.js.map +1 -0
- package/esm/component/widget-board/widgetBoardLayoutUtils.d.ts +18 -0
- package/esm/component/widget-board/widgetBoardLayoutUtils.js +105 -0
- package/esm/component/widget-board/widgetBoardLayoutUtils.js.map +1 -0
- package/esm/component/widget-board/widgetLayoutsPanelStore.d.ts +0 -1
- package/esm/component/widget-board/widgetLayoutsPanelStore.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -195,8 +195,8 @@ color overrides (`pneNeutral`, `pnePrimaryLight`, `pneAccentuated` и др.), о
|
|
|
195
195
|
Основные пропсы:
|
|
196
196
|
- `widgets`: список `{ id, title, render }` — содержимое виджетов.
|
|
197
197
|
- `layoutByBreakpoint`: базовый пресет для дефолтного лейаута.
|
|
198
|
-
- `loadLayouts(): Promise<{ options; selectedId? } | null>`: обязательная функция загрузки пользовательских схем (вызывается при маунте).
|
|
199
|
-
- `saveLayouts(options, selectedId?)`: обязательная функция сохранения пользовательских схем (
|
|
198
|
+
- `loadLayouts(): Promise<{ options; selectedId? } | null>`: обязательная функция загрузки пользовательских схем (вызывается при маунте). `WidgetBoard` сам добавляет и блокирует встроенный `default`-лейаут.
|
|
199
|
+
- `saveLayouts(options, selectedId?)`: обязательная функция сохранения пользовательских схем (вызывается при select/add/delete и автосохранении изменений в выбранном пользовательском лейауте).
|
|
200
200
|
|
|
201
201
|
Панель `WidgetLayoutsPanel` — отдельный компонент, который слушает активный `WidgetBoard` без пропсов. Можно размещать в любом месте дерева (включая FAB) или передать свои `items/onSelect/...` при необходимости.
|
|
202
202
|
|
|
@@ -207,8 +207,8 @@ color overrides (`pneNeutral`, `pnePrimaryLight`, `pneAccentuated` и др.), о
|
|
|
207
207
|
- `id: string`: уникальный идентификатор лейаута (можно `uuid` или любое значение бэка).
|
|
208
208
|
- `name: string`: отображаемое имя пресета.
|
|
209
209
|
- `layoutByBreakpoint: Record<number | string, BreakpointLayoutConfig>`: карта брейкпоинтов (ключ — число или строка, обычно `12`, `1280`, `1600` и т.д.).
|
|
210
|
-
- `BreakpointLayoutConfig`: `{
|
|
211
|
-
- `WidgetLayoutConfig`: `{ defaultSize: { columnSpan; rowSpan; columnOffset? }; limits?; initialState? }`.
|
|
210
|
+
- `BreakpointLayoutConfig`: `{ widgets: Record<widgetId, WidgetLayoutConfig> }`.
|
|
211
|
+
- `WidgetLayoutConfig`: `{ defaultSize: { columnSpan; rowSpan; columnOffset? }; limits?; initialState?; heightMode? }`.
|
|
212
212
|
- `initialState` поддерживает `isHidden` и `isCollapsed`.
|
|
213
213
|
|
|
214
214
|
Формат функции `loadLayouts`:
|
|
@@ -235,7 +235,6 @@ const widgets: WidgetDefinition[] = [
|
|
|
235
235
|
|
|
236
236
|
const baseLayoutByBreakpoint = {
|
|
237
237
|
12: {
|
|
238
|
-
columns: 12,
|
|
239
238
|
widgets: {
|
|
240
239
|
traffic: { defaultSize: { columnSpan: 6, rowSpan: 2 } },
|
|
241
240
|
sales: { defaultSize: { columnSpan: 6, rowSpan: 2 } },
|
|
@@ -246,13 +245,8 @@ const baseLayoutByBreakpoint = {
|
|
|
246
245
|
// Загрузка/сохранение пресетов
|
|
247
246
|
const loadLayouts = async (): Promise<{ options: WidgetBoardLayoutOption[]; selectedId?: string }> => {
|
|
248
247
|
const response = await api.getUserLayouts() // верните { options, selectedId }
|
|
249
|
-
// Если API пустой, вернем
|
|
250
|
-
return
|
|
251
|
-
response ?? {
|
|
252
|
-
options: [{ id: 'default', name: 'Default', layoutByBreakpoint: baseLayoutByBreakpoint }],
|
|
253
|
-
selectedId: 'default',
|
|
254
|
-
}
|
|
255
|
-
)
|
|
248
|
+
// Если API пустой, вернем пустой набор: WidgetBoard добавит встроенный default сам
|
|
249
|
+
return response ?? { options: [], selectedId: 'default' }
|
|
256
250
|
}
|
|
257
251
|
const saveLayouts = async (options: WidgetBoardLayoutOption[], selectedId?: string) => {
|
|
258
252
|
await api.saveUserLayouts({ options, selectedId })
|
|
@@ -35,8 +35,8 @@ function CloudscapeBoardStyles({ hideNavigationArrows = true }) {
|
|
|
35
35
|
'[data-item-id] [data-height-mode="auto"] [class*="content-wrapper-fit-height"]': {
|
|
36
36
|
overflow: 'hidden !important',
|
|
37
37
|
},
|
|
38
|
-
'@media (pointer: coarse)': {
|
|
39
|
-
'[data-
|
|
38
|
+
'@media (hover: none), (pointer: coarse)': {
|
|
39
|
+
'[data-item-id]': {
|
|
40
40
|
touchAction: 'manipulation !important',
|
|
41
41
|
},
|
|
42
42
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CloudscapeBoardStyles.js","sourceRoot":"","sources":["../../../src/component/cloudscape/CloudscapeBoardStyles.tsx"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,0DAAyB;AAMzB;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAA8B;IAC7F,MAAM,gBAAgB,GAAG,oBAAoB;QACzC,CAAC,CAAC;YACE,sEAAsE,EAAE;gBACpE,OAAO,EAAE,iBAAiB;gBAC1B,UAAU,EAAE,mBAAmB;gBAC/B,OAAO,EAAE,cAAc;gBACvB,aAAa,EAAE,iBAAiB;aACnC;SACJ;QACD,CAAC,CAAC,EAAE,CAAA;IAER,OAAO,CACH,8BAAC,uBAAY,IACT,MAAM,EAAE;YACJ,2EAA2E,EAAE;gBACzE,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,8BAA8B;gBACtC,YAAY,EAAE,cAAc;aAC/B;YACD,iDAAiD,EAAE;gBAC/C,SAAS,EAAE,iBAAiB;gBAC5B,YAAY,EAAE,cAAc;aAC/B;YACD,wEAAwE,EAAE;gBACtE,QAAQ,EAAE,mBAAmB;aAChC;YACD,gFAAgF,EAAE;gBAC9E,QAAQ,EAAE,mBAAmB;aAChC;YACD,
|
|
1
|
+
{"version":3,"file":"CloudscapeBoardStyles.js","sourceRoot":"","sources":["../../../src/component/cloudscape/CloudscapeBoardStyles.tsx"],"names":[],"mappings":";;;;AAAA,4CAA4C;AAC5C,0DAAyB;AAMzB;;;GAGG;AACH,SAAgB,qBAAqB,CAAC,EAAE,oBAAoB,GAAG,IAAI,EAA8B;IAC7F,MAAM,gBAAgB,GAAG,oBAAoB;QACzC,CAAC,CAAC;YACE,sEAAsE,EAAE;gBACpE,OAAO,EAAE,iBAAiB;gBAC1B,UAAU,EAAE,mBAAmB;gBAC/B,OAAO,EAAE,cAAc;gBACvB,aAAa,EAAE,iBAAiB;aACnC;SACJ;QACD,CAAC,CAAC,EAAE,CAAA;IAER,OAAO,CACH,8BAAC,uBAAY,IACT,MAAM,EAAE;YACJ,2EAA2E,EAAE;gBACzE,SAAS,EAAE,iBAAiB;gBAC5B,MAAM,EAAE,8BAA8B;gBACtC,YAAY,EAAE,cAAc;aAC/B;YACD,iDAAiD,EAAE;gBAC/C,SAAS,EAAE,iBAAiB;gBAC5B,YAAY,EAAE,cAAc;aAC/B;YACD,wEAAwE,EAAE;gBACtE,QAAQ,EAAE,mBAAmB;aAChC;YACD,gFAAgF,EAAE;gBAC9E,QAAQ,EAAE,mBAAmB;aAChC;YACD,yCAAyC,EAAE;gBACvC,gBAAgB,EAAE;oBACd,WAAW,EAAE,yBAAyB;iBACzC;aACJ;YACD,GAAG,gBAAgB;YACnB,2BAA2B,EAAE;gBACzB,oBAAoB,EAAE;oBAClB,WAAW,EAAE,cAAc;oBAC3B,YAAY,EAAE,cAAc;iBAC/B;gBACD,yBAAyB,EAAE;oBACvB,UAAU,EAAE,cAAc;oBAC1B,WAAW,EAAE,cAAc;iBAC9B;aACJ;SACJ,GACH,CACL,CAAA;AACL,CAAC;AAjDD,sDAiDC"}
|