@12-apps/ui 6.23.0 → 6.24.1
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/NATIVE.md +2 -1
- package/dist/_internal/components/data-display/Avatar/Avatar.js +3 -3
- package/dist/_internal/components/data-display/Avatar/Avatar.view.js +2 -2
- package/dist/_internal/components/data-display/Badge/Badge.js +2 -2
- package/dist/_internal/components/data-display/Chart/Chart.js +3 -3
- package/dist/_internal/components/data-display/Chart/SpecChart.js +6 -6
- package/dist/_internal/components/data-display/Chart/chart-renderers.js +2 -2
- package/dist/_internal/components/data-display/Chart/chart-spec.js +2 -2
- package/dist/_internal/components/data-display/Chip/Chip.js +3 -3
- package/dist/_internal/components/data-display/Chip/Chip.styles.js +2 -2
- package/dist/_internal/components/data-display/DataGrid/DataGrid.js +6 -4
- package/dist/_internal/components/data-display/DataViews/DataViewsGrid.js +24 -24
- package/dist/_internal/components/data-display/DataViews/DataViewsTableBase.js +30 -30
- package/dist/_internal/components/data-display/DataViews/base-list-card-geometry.js +4 -4
- package/dist/_internal/components/data-display/DataViews/base-list-card-slots.js +3 -3
- package/dist/_internal/components/data-display/DataViews/base-list-card.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-display-panel.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-filter-panel.js +4 -4
- package/dist/_internal/components/data-display/DataViews/data-views-grid-bodies.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-grid-parts.js +21 -21
- package/dist/_internal/components/data-display/DataViews/data-views-inline-bar.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-more-fields.js +4 -4
- package/dist/_internal/components/data-display/DataViews/data-views-more-filters.js +5 -5
- package/dist/_internal/components/data-display/DataViews/data-views-range-pill.js +3 -3
- package/dist/_internal/components/data-display/DataViews/data-views-scope-tabs.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-shell-toolbar.js +6 -6
- package/dist/_internal/components/data-display/DataViews/data-views-table-parts.js +2 -2
- package/dist/_internal/components/data-display/DataViews/data-views-toolbar.js +5 -5
- package/dist/_internal/components/data-display/DataViews/list-card-rails.js +2 -2
- package/dist/_internal/components/data-display/DataViews/use-data-views-state.js +2 -2
- package/dist/_internal/components/data-display/FleetMap/FleetBody.js +4 -3
- package/dist/_internal/components/data-display/FleetMap/FleetMap.base.js +1 -0
- package/dist/_internal/components/data-display/FleetMap/FleetMap.base.js.map +1 -0
- package/dist/_internal/components/data-display/FleetMap/FleetMap.helpers.js +1 -1
- package/dist/_internal/components/data-display/FleetMap/FleetMap.hooks.js +2 -2
- package/dist/_internal/components/data-display/FleetMap/FleetMap.js +6 -5
- package/dist/_internal/components/data-display/FleetMap/FleetMap.metrics.js +20 -0
- package/dist/_internal/components/data-display/FleetMap/FleetMap.metrics.js.map +1 -0
- package/dist/_internal/components/data-display/FleetMap/FleetRoster.js +3 -2
- package/dist/_internal/components/data-display/index.js +26 -25
- package/dist/_internal/components/index.js +26 -25
- package/dist/_internal/platform/aria.js.map +1 -1
- package/dist/_internal/user-avatar/user-avatar.js +4 -4
- package/dist/charts.js +10 -10
- package/dist/{chunk-WGRS4PGY.js → chunk-2C47DEVU.js} +4 -4
- package/dist/{chunk-KHWCX4LI.js → chunk-6LGWJFQK.js} +2 -2
- package/dist/{chunk-XSF6AXEU.js → chunk-6RZDDUSM.js} +2 -2
- package/dist/{chunk-3FLVIVOK.js → chunk-BHIGHSXA.js} +2 -2
- package/dist/{chunk-VNNG46TS.js → chunk-BPLFM2GL.js} +6 -6
- package/dist/chunk-BTQZ3EX3.js +45 -0
- package/dist/chunk-BTQZ3EX3.js.map +1 -0
- package/dist/{chunk-LYSSO6WC.js → chunk-CZPU5TW3.js} +4 -4
- package/dist/{chunk-BZTFPSWT.js → chunk-DFLTUI7W.js} +7 -7
- package/dist/{chunk-URXT5TOY.js → chunk-E46PG577.js} +4 -4
- package/dist/{chunk-X5MPHXG5.js → chunk-EZ5Z5UFI.js} +9 -7
- package/dist/{chunk-X5MPHXG5.js.map → chunk-EZ5Z5UFI.js.map} +1 -1
- package/dist/{chunk-DRHIIUDO.js → chunk-FPWB5ILF.js} +5 -5
- package/dist/{chunk-R6SBP5M5.js → chunk-GOWBYHYW.js} +4 -4
- package/dist/{chunk-MQNKRIGC.js → chunk-HMV4QMXS.js} +25 -11
- package/dist/chunk-HMV4QMXS.js.map +1 -0
- package/dist/{chunk-N2TUX4A5.js → chunk-I3E2QHTH.js} +3 -3
- package/dist/{chunk-4XZXLB4I.js → chunk-JQ45NDBS.js} +3 -3
- package/dist/{chunk-I7HYGIEJ.js → chunk-JUHUKZGU.js} +2 -2
- package/dist/{chunk-TWQYDKCA.js → chunk-JZXWCEH5.js} +12 -9
- package/dist/chunk-JZXWCEH5.js.map +1 -0
- package/dist/{chunk-WQA4LIIK.js → chunk-KT6HWAEN.js} +4 -4
- package/dist/{chunk-2UGJIKVA.js → chunk-MZQTHSLN.js} +3 -3
- package/dist/{chunk-4SQFO4GW.js → chunk-NA7MIEG6.js} +7 -7
- package/dist/{chunk-MYGNIFZC.js → chunk-O4VCZTK4.js} +2 -2
- package/dist/{chunk-LS4FMSHY.js → chunk-OAYX4XN7.js} +4 -4
- package/dist/{chunk-Y5UCOBQN.js → chunk-OGGHD64H.js} +4 -4
- package/dist/{chunk-CBTY36TU.js → chunk-OH3YGJT5.js} +2 -2
- package/dist/{chunk-VON4BFK4.js → chunk-PN5CQKA2.js} +2 -2
- package/dist/{chunk-CF3FAAPC.js → chunk-RP5FK3SO.js} +2 -2
- package/dist/{chunk-L4U23SBX.js → chunk-TSYWI3NP.js} +13 -13
- package/dist/{chunk-YQ6TNHAC.js → chunk-TTLI6PF7.js} +5 -5
- package/dist/{chunk-OIKQO73C.js → chunk-TX5V42AY.js} +5 -5
- package/dist/{chunk-AJGYHDA5.js → chunk-U2YJCNRU.js} +4 -4
- package/dist/{chunk-W7Y6RA6W.js → chunk-WR5JFDQ5.js} +4 -4
- package/dist/{chunk-ACFGEZ4Q.js → chunk-XO753WHD.js} +3 -3
- package/dist/{chunk-5V4UPOWK.js → chunk-XPMGFAJ3.js} +1 -1
- package/dist/chunk-XPMGFAJ3.js.map +1 -0
- package/dist/{chunk-AEGXHZQT.js → chunk-YW5T6KZ5.js} +7 -7
- package/dist/{chunk-F7VBGS4C.js → chunk-ZCPSND5Y.js} +2 -2
- package/dist/chunk-ZCPSND5Y.js.map +1 -0
- package/dist/{chunk-4LRFGB3K.js → chunk-ZRPGVHTR.js} +2 -2
- package/dist/data-display/Avatar.js +3 -3
- package/dist/data-display/Badge.js +2 -2
- package/dist/data-display/CardKit.js +10 -10
- package/dist/data-display/Chart.js +10 -10
- package/dist/data-display/Chip.js +3 -3
- package/dist/data-display/DataGrid.js +2 -2
- package/dist/data-display/DataViews.js +48 -48
- package/dist/data-display/FleetMap.js +6 -5
- package/dist/native/chunks/{chunk-T6BJPP3E.js → chunk-DN73KYIZ.js} +1 -1
- package/dist/native/chunks/chunk-DN73KYIZ.js.map +1 -0
- package/dist/native/chunks/chunk-GW7TQ7HO.js +215 -0
- package/dist/native/chunks/chunk-GW7TQ7HO.js.map +1 -0
- package/dist/native/chunks/chunk-MJVSQXOD.js +9 -0
- package/dist/native/chunks/chunk-MJVSQXOD.js.map +1 -0
- package/dist/native/chunks/chunk-ZAQ3AZJM.js +292 -0
- package/dist/native/chunks/chunk-ZAQ3AZJM.js.map +1 -0
- package/dist/native/data-display/Alert.js +4 -4
- package/dist/native/data-display/Avatar.js +3 -3
- package/dist/native/data-display/Badge.js +4 -4
- package/dist/native/data-display/Chip.js +3 -5
- package/dist/native/data-display/Chip.js.map +1 -1
- package/dist/native/data-display/EmptyState.js +9 -286
- package/dist/native/data-display/EmptyState.js.map +1 -1
- package/dist/native/data-display/ErrorState.js +6 -6
- package/dist/native/data-display/FleetMap.js +498 -0
- package/dist/native/data-display/FleetMap.js.map +1 -0
- package/dist/native/data-display/LoadingState.js +3 -3
- package/dist/native/feedback/Dialog.js +3 -3
- package/dist/native/form/Checkbox.js +1 -1
- package/dist/native/form/Input.js +1 -1
- package/dist/native/form/Select.js +1 -1
- package/dist/native/form/Switch.js +1 -1
- package/dist/native/layout/Card.js +3 -3
- package/dist/native/layout/Skeleton.js +6 -209
- package/dist/native/layout/Skeleton.js.map +1 -1
- package/dist/types/components/data-display/DataGrid/DataGrid.d.ts +11 -0
- package/dist/types/components/data-display/DataGrid/DataGrid.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.base.d.ts +141 -0
- package/dist/types/components/data-display/FleetMap/FleetMap.base.d.ts.map +1 -0
- package/dist/types/components/data-display/FleetMap/FleetMap.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.helpers.d.ts +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.helpers.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.hooks.d.ts +20 -3
- package/dist/types/components/data-display/FleetMap/FleetMap.hooks.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetMap.metrics.d.ts +76 -0
- package/dist/types/components/data-display/FleetMap/FleetMap.metrics.d.ts.map +1 -0
- package/dist/types/components/data-display/FleetMap/FleetMap.types.d.ts +13 -113
- package/dist/types/components/data-display/FleetMap/FleetMap.types.d.ts.map +1 -1
- package/dist/types/components/data-display/FleetMap/FleetRoster.d.ts.map +1 -1
- package/dist/types/platform/aria.d.ts +13 -0
- package/dist/types/platform/aria.d.ts.map +1 -1
- package/dist/types-native/components/data-display/FleetMap/FleetMap.base.d.ts +141 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.base.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.helpers.d.ts +45 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.helpers.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.hooks.d.ts +71 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.hooks.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.metrics.d.ts +76 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.metrics.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.native.d.ts +30 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.native.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.types.native.d.ts +36 -0
- package/dist/types-native/components/data-display/FleetMap/FleetMap.types.native.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/FleetRoster.native.d.ts +17 -0
- package/dist/types-native/components/data-display/FleetMap/FleetRoster.native.d.ts.map +1 -0
- package/dist/types-native/components/data-display/FleetMap/index.native.d.ts +4 -0
- package/dist/types-native/components/data-display/FleetMap/index.native.d.ts.map +1 -0
- package/dist/types-native/platform/aria.d.ts +13 -0
- package/dist/types-native/platform/aria.d.ts.map +1 -1
- package/dist/user-avatar.js +4 -4
- package/package.json +5 -1
- package/src/components/data-display/DataGrid/DataGrid.tsx +5 -1
- package/src/components/data-display/FleetMap/FleetMap.base.ts +144 -0
- package/src/components/data-display/FleetMap/FleetMap.helpers.ts +1 -1
- package/src/components/data-display/FleetMap/FleetMap.hooks.ts +23 -4
- package/src/components/data-display/FleetMap/FleetMap.md +15 -8
- package/src/components/data-display/FleetMap/FleetMap.metrics.ts +81 -0
- package/src/components/data-display/FleetMap/FleetMap.native.tsx +185 -0
- package/src/components/data-display/FleetMap/FleetMap.tsx +8 -14
- package/src/components/data-display/FleetMap/FleetMap.types.native.ts +44 -0
- package/src/components/data-display/FleetMap/FleetMap.types.ts +19 -114
- package/src/components/data-display/FleetMap/FleetRoster.native.tsx +382 -0
- package/src/components/data-display/FleetMap/FleetRoster.tsx +17 -11
- package/src/components/data-display/FleetMap/NATIVE-NOTES.md +14 -0
- package/src/components/data-display/FleetMap/index.native.ts +10 -0
- package/src/components/data-display/FleetMap/tests.md +6 -1
- package/src/platform/aria.ts +13 -0
- package/dist/chunk-5V4UPOWK.js.map +0 -1
- package/dist/chunk-F7VBGS4C.js.map +0 -1
- package/dist/chunk-MQNKRIGC.js.map +0 -1
- package/dist/chunk-TWQYDKCA.js.map +0 -1
- package/dist/native/chunks/chunk-T6BJPP3E.js.map +0 -1
- /package/dist/{chunk-WGRS4PGY.js.map → chunk-2C47DEVU.js.map} +0 -0
- /package/dist/{chunk-KHWCX4LI.js.map → chunk-6LGWJFQK.js.map} +0 -0
- /package/dist/{chunk-XSF6AXEU.js.map → chunk-6RZDDUSM.js.map} +0 -0
- /package/dist/{chunk-3FLVIVOK.js.map → chunk-BHIGHSXA.js.map} +0 -0
- /package/dist/{chunk-VNNG46TS.js.map → chunk-BPLFM2GL.js.map} +0 -0
- /package/dist/{chunk-LYSSO6WC.js.map → chunk-CZPU5TW3.js.map} +0 -0
- /package/dist/{chunk-BZTFPSWT.js.map → chunk-DFLTUI7W.js.map} +0 -0
- /package/dist/{chunk-URXT5TOY.js.map → chunk-E46PG577.js.map} +0 -0
- /package/dist/{chunk-DRHIIUDO.js.map → chunk-FPWB5ILF.js.map} +0 -0
- /package/dist/{chunk-R6SBP5M5.js.map → chunk-GOWBYHYW.js.map} +0 -0
- /package/dist/{chunk-N2TUX4A5.js.map → chunk-I3E2QHTH.js.map} +0 -0
- /package/dist/{chunk-4XZXLB4I.js.map → chunk-JQ45NDBS.js.map} +0 -0
- /package/dist/{chunk-I7HYGIEJ.js.map → chunk-JUHUKZGU.js.map} +0 -0
- /package/dist/{chunk-WQA4LIIK.js.map → chunk-KT6HWAEN.js.map} +0 -0
- /package/dist/{chunk-2UGJIKVA.js.map → chunk-MZQTHSLN.js.map} +0 -0
- /package/dist/{chunk-4SQFO4GW.js.map → chunk-NA7MIEG6.js.map} +0 -0
- /package/dist/{chunk-MYGNIFZC.js.map → chunk-O4VCZTK4.js.map} +0 -0
- /package/dist/{chunk-LS4FMSHY.js.map → chunk-OAYX4XN7.js.map} +0 -0
- /package/dist/{chunk-Y5UCOBQN.js.map → chunk-OGGHD64H.js.map} +0 -0
- /package/dist/{chunk-CBTY36TU.js.map → chunk-OH3YGJT5.js.map} +0 -0
- /package/dist/{chunk-VON4BFK4.js.map → chunk-PN5CQKA2.js.map} +0 -0
- /package/dist/{chunk-CF3FAAPC.js.map → chunk-RP5FK3SO.js.map} +0 -0
- /package/dist/{chunk-L4U23SBX.js.map → chunk-TSYWI3NP.js.map} +0 -0
- /package/dist/{chunk-YQ6TNHAC.js.map → chunk-TTLI6PF7.js.map} +0 -0
- /package/dist/{chunk-OIKQO73C.js.map → chunk-TX5V42AY.js.map} +0 -0
- /package/dist/{chunk-AJGYHDA5.js.map → chunk-U2YJCNRU.js.map} +0 -0
- /package/dist/{chunk-W7Y6RA6W.js.map → chunk-WR5JFDQ5.js.map} +0 -0
- /package/dist/{chunk-ACFGEZ4Q.js.map → chunk-XO753WHD.js.map} +0 -0
- /package/dist/{chunk-AEGXHZQT.js.map → chunk-YW5T6KZ5.js.map} +0 -0
- /package/dist/{chunk-4LRFGB3K.js.map → chunk-ZRPGVHTR.js.map} +0 -0
|
@@ -1,292 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
|
-
|
|
3
|
-
} from "../chunks/chunk-
|
|
4
|
-
import
|
|
5
|
-
|
|
6
|
-
} from "../chunks/chunk-T6BJPP3E.js";
|
|
2
|
+
EmptyState
|
|
3
|
+
} from "../chunks/chunk-ZAQ3AZJM.js";
|
|
4
|
+
import "../chunks/chunk-ATS7STZJ.js";
|
|
5
|
+
import "../chunks/chunk-DN73KYIZ.js";
|
|
7
6
|
import "../chunks/chunk-5GJ5OG5R.js";
|
|
8
|
-
import
|
|
9
|
-
|
|
10
|
-
} from "../chunks/chunk-QYUD3S6F.js";
|
|
7
|
+
import "../chunks/chunk-QYUD3S6F.js";
|
|
8
|
+
import "../chunks/chunk-2UFNPDYT.js";
|
|
11
9
|
import "../chunks/chunk-5WLOVHKK.js";
|
|
12
|
-
import
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
} from "../chunks/chunk-AR5O4BEY.js";
|
|
16
|
-
import {
|
|
17
|
-
MUI_FONT_WEIGHT_MEDIUM,
|
|
18
|
-
MUI_TYPE,
|
|
19
|
-
muiTypeStyle
|
|
20
|
-
} from "../chunks/chunk-2UFNPDYT.js";
|
|
21
|
-
import {
|
|
22
|
-
useUiTheme
|
|
23
|
-
} from "../chunks/chunk-GWGIWQO7.js";
|
|
24
|
-
import {
|
|
25
|
-
alpha
|
|
26
|
-
} from "../chunks/chunk-LEMMXZFN.js";
|
|
27
|
-
|
|
28
|
-
// src/components/data-display/EmptyState/EmptyState.native.tsx
|
|
29
|
-
import * as React from "react";
|
|
30
|
-
import {
|
|
31
|
-
Linking,
|
|
32
|
-
Platform,
|
|
33
|
-
StyleSheet,
|
|
34
|
-
Text as RNText,
|
|
35
|
-
useWindowDimensions,
|
|
36
|
-
View
|
|
37
|
-
} from "react-native";
|
|
38
|
-
|
|
39
|
-
// src/components/data-display/EmptyState/EmptyState.helpers.ts
|
|
40
|
-
var makeTestId = (dataTestId) => (suffix) => dataTestId ? `${dataTestId}-${suffix}` : `empty-state-${suffix}`;
|
|
41
|
-
var actionsOf = (props, refreshLabel, createLabel) => {
|
|
42
|
-
const { primaryAction, secondaryAction, onCreate, onRefresh } = props;
|
|
43
|
-
const specs = [];
|
|
44
|
-
if (primaryAction) {
|
|
45
|
-
specs.push({
|
|
46
|
-
key: "primary-action",
|
|
47
|
-
variant: "contained",
|
|
48
|
-
onClick: primaryAction.onClick,
|
|
49
|
-
label: primaryAction.label
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
if (onCreate) {
|
|
53
|
-
specs.push({
|
|
54
|
-
key: "create-button",
|
|
55
|
-
variant: "contained",
|
|
56
|
-
onClick: onCreate,
|
|
57
|
-
label: createLabel,
|
|
58
|
-
icon: "Add"
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
if (secondaryAction) {
|
|
62
|
-
specs.push({
|
|
63
|
-
key: "secondary-action",
|
|
64
|
-
variant: "outlined",
|
|
65
|
-
onClick: secondaryAction.onClick,
|
|
66
|
-
label: secondaryAction.label
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
if (onRefresh) {
|
|
70
|
-
specs.push({
|
|
71
|
-
key: "refresh-button",
|
|
72
|
-
variant: "outlined",
|
|
73
|
-
onClick: onRefresh,
|
|
74
|
-
label: refreshLabel,
|
|
75
|
-
icon: "Refresh"
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
return specs;
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
// src/components/data-display/EmptyState/EmptyState.metrics.ts
|
|
82
|
-
var EMPTY_STATE_PADDING_UNITS = 6;
|
|
83
|
-
var EMPTY_STATE_MIN_HEIGHT = 200;
|
|
84
|
-
var EMPTY_STATE_GAP_UNITS = 3;
|
|
85
|
-
var ILLUSTRATION_MAX_WIDTH = { illustrated: 240, other: 120 };
|
|
86
|
-
var ILLUSTRATION_OPACITY = { minimal: 0.6, other: 0.8 };
|
|
87
|
-
var illustrationMaxWidth = (variant) => variant === "illustrated" ? ILLUSTRATION_MAX_WIDTH.illustrated : ILLUSTRATION_MAX_WIDTH.other;
|
|
88
|
-
var illustrationOpacity = (variant) => variant === "minimal" ? ILLUSTRATION_OPACITY.minimal : ILLUSTRATION_OPACITY.other;
|
|
89
|
-
var CONTENT_GAP_UNITS = 2;
|
|
90
|
-
var TITLE_MAX_WIDTH = 400;
|
|
91
|
-
var DESCRIPTION_MAX_WIDTH = 480;
|
|
92
|
-
var DESCRIPTION_LINE_HEIGHT = 1.6;
|
|
93
|
-
var ACTIONS_MARGIN_TOP_UNITS = 2;
|
|
94
|
-
var ACTIONS_GAP_UNITS = 2;
|
|
95
|
-
var ACTIONS_ROW_FROM = 600;
|
|
96
|
-
var ACTION_MIN_WIDTH = 120;
|
|
97
|
-
var ACTION_BUTTON = {
|
|
98
|
-
contained: { paddingVertical: 6, paddingHorizontal: 16 },
|
|
99
|
-
outlined: { paddingVertical: 5, paddingHorizontal: 15 },
|
|
100
|
-
iconSize: 20,
|
|
101
|
-
outlinedBorderAlpha: 0.5
|
|
102
|
-
};
|
|
103
|
-
var MUI_CONTAINED_SHADOW = "0px 3px 1px -2px rgba(0,0,0,0.2), 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 1px 5px 0px rgba(0,0,0,0.12)";
|
|
104
|
-
var HELP_LINK_MARGIN_TOP_UNITS = 1;
|
|
105
|
-
var EXTERNAL_LINK_MARK = " \u2197";
|
|
106
|
-
|
|
107
|
-
// src/components/data-display/EmptyState/EmptyState.native.tsx
|
|
108
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
109
|
-
function titleStyle(theme) {
|
|
110
|
-
return {
|
|
111
|
-
...muiTypeStyle(theme, "h6"),
|
|
112
|
-
fontWeight: `${MUI_FONT_WEIGHT_MEDIUM}`,
|
|
113
|
-
color: theme.palette.text.primary,
|
|
114
|
-
maxWidth: TITLE_MAX_WIDTH,
|
|
115
|
-
textAlign: "center"
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
function descriptionStyle(theme) {
|
|
119
|
-
return {
|
|
120
|
-
...muiTypeStyle(theme, "body2"),
|
|
121
|
-
lineHeight: MUI_TYPE.body2.fontSize * DESCRIPTION_LINE_HEIGHT,
|
|
122
|
-
color: theme.palette.text.secondary,
|
|
123
|
-
maxWidth: DESCRIPTION_MAX_WIDTH,
|
|
124
|
-
textAlign: "center"
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
function helpLinkStyle(theme) {
|
|
128
|
-
return {
|
|
129
|
-
...muiTypeStyle(theme, "body1"),
|
|
130
|
-
color: theme.palette.primary.main,
|
|
131
|
-
textDecorationLine: "none",
|
|
132
|
-
marginTop: theme.spacing(HELP_LINK_MARGIN_TOP_UNITS),
|
|
133
|
-
textAlign: "center"
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
function illustrationStyle(variant) {
|
|
137
|
-
return {
|
|
138
|
-
maxWidth: illustrationMaxWidth(variant),
|
|
139
|
-
width: "100%",
|
|
140
|
-
opacity: illustrationOpacity(variant),
|
|
141
|
-
display: variant === "minimal" ? "none" : "flex"
|
|
142
|
-
};
|
|
143
|
-
}
|
|
144
|
-
function actionStyle(theme, variant) {
|
|
145
|
-
const padding = ACTION_BUTTON[variant];
|
|
146
|
-
return {
|
|
147
|
-
minWidth: ACTION_MIN_WIDTH,
|
|
148
|
-
borderRadius: theme.radius.md,
|
|
149
|
-
paddingVertical: padding.paddingVertical,
|
|
150
|
-
paddingHorizontal: padding.paddingHorizontal,
|
|
151
|
-
...variant === "contained" ? { boxShadow: MUI_CONTAINED_SHADOW, overflow: "visible" } : { borderColor: alpha(theme.palette.primary.main, ACTION_BUTTON.outlinedBorderAlpha) }
|
|
152
|
-
};
|
|
153
|
-
}
|
|
154
|
-
var actionsDirection = (windowWidth) => windowWidth >= ACTIONS_ROW_FROM ? "row" : "column";
|
|
155
|
-
function anchorProps(href, external) {
|
|
156
|
-
if (Platform.OS !== "web") return {};
|
|
157
|
-
return { href, hrefAttrs: external ? { target: "_blank", rel: "noopener noreferrer" } : void 0 };
|
|
158
|
-
}
|
|
159
|
-
function ActionButton({ spec, testID }) {
|
|
160
|
-
const theme = useUiTheme();
|
|
161
|
-
const contained = spec.variant === "contained";
|
|
162
|
-
const glyph = spec.icon ? /* @__PURE__ */ jsx(
|
|
163
|
-
Icon,
|
|
164
|
-
{
|
|
165
|
-
name: spec.icon,
|
|
166
|
-
size: ACTION_BUTTON.iconSize,
|
|
167
|
-
color: contained ? theme.palette.primary.contrastText : "primary"
|
|
168
|
-
}
|
|
169
|
-
) : void 0;
|
|
170
|
-
return /* @__PURE__ */ jsx(
|
|
171
|
-
Button,
|
|
172
|
-
{
|
|
173
|
-
variant: contained ? "solid" : "outline",
|
|
174
|
-
color: "primary",
|
|
175
|
-
size: "sm",
|
|
176
|
-
icon: glyph,
|
|
177
|
-
onClick: spec.onClick,
|
|
178
|
-
testID,
|
|
179
|
-
style: actionStyle(theme, spec.variant),
|
|
180
|
-
children: spec.label
|
|
181
|
-
}
|
|
182
|
-
);
|
|
183
|
-
}
|
|
184
|
-
function Actions({ specs, testId }) {
|
|
185
|
-
const theme = useUiTheme();
|
|
186
|
-
const { width } = useWindowDimensions();
|
|
187
|
-
return /* @__PURE__ */ jsx(
|
|
188
|
-
View,
|
|
189
|
-
{
|
|
190
|
-
style: [
|
|
191
|
-
styles.actions,
|
|
192
|
-
{
|
|
193
|
-
flexDirection: actionsDirection(width),
|
|
194
|
-
gap: theme.spacing(ACTIONS_GAP_UNITS),
|
|
195
|
-
marginTop: theme.spacing(ACTIONS_MARGIN_TOP_UNITS)
|
|
196
|
-
}
|
|
197
|
-
],
|
|
198
|
-
children: specs.map((spec) => /* @__PURE__ */ jsx(ActionButton, { spec, testID: testId(spec.key) }, spec.key))
|
|
199
|
-
}
|
|
200
|
-
);
|
|
201
|
-
}
|
|
202
|
-
function HelpLink({ helpLink, testId }) {
|
|
203
|
-
const theme = useUiTheme();
|
|
204
|
-
const external = helpLink.external === true;
|
|
205
|
-
const open = Platform.OS === "web" ? void 0 : () => void Linking.openURL(helpLink.href);
|
|
206
|
-
return /* @__PURE__ */ jsxs(RNText, { role: "link", testID: testId, style: helpLinkStyle(theme), onPress: open, ...anchorProps(helpLink.href, external), children: [
|
|
207
|
-
helpLink.label,
|
|
208
|
-
external ? EXTERNAL_LINK_MARK : null
|
|
209
|
-
] });
|
|
210
|
-
}
|
|
211
|
-
function Content({ title, description, titleId, testId, actions, showActions, helpLink }) {
|
|
212
|
-
const theme = useUiTheme();
|
|
213
|
-
return /* @__PURE__ */ jsxs(View, { style: [styles.content, { gap: theme.spacing(CONTENT_GAP_UNITS) }], children: [
|
|
214
|
-
/* @__PURE__ */ jsx(RNText, { id: titleId, role: "heading", ...webAria({ "aria-level": 3 }), testID: testId("title"), style: titleStyle(theme), children: title }),
|
|
215
|
-
description ? /* @__PURE__ */ jsx(RNText, { testID: testId("description"), style: descriptionStyle(theme), children: description }) : null,
|
|
216
|
-
showActions ? /* @__PURE__ */ jsx(Actions, { specs: actions, testId }) : null,
|
|
217
|
-
helpLink ? /* @__PURE__ */ jsx(HelpLink, { helpLink, testId: testId("help-link") }) : null
|
|
218
|
-
] });
|
|
219
|
-
}
|
|
220
|
-
var EmptyState = React.memo(function EmptyState2(props) {
|
|
221
|
-
const {
|
|
222
|
-
variant = "default",
|
|
223
|
-
title,
|
|
224
|
-
description,
|
|
225
|
-
illustration,
|
|
226
|
-
helpLink,
|
|
227
|
-
refreshLabel = "Refresh",
|
|
228
|
-
createLabel = "Create New",
|
|
229
|
-
primaryAction: _primary,
|
|
230
|
-
secondaryAction: _secondary,
|
|
231
|
-
onCreate: _onCreate,
|
|
232
|
-
onRefresh: _onRefresh,
|
|
233
|
-
style,
|
|
234
|
-
...others
|
|
235
|
-
} = props;
|
|
236
|
-
const theme = useUiTheme();
|
|
237
|
-
const titleId = React.useId();
|
|
238
|
-
const dataTestId = resolveTestId(others);
|
|
239
|
-
const testId = makeTestId(dataTestId);
|
|
240
|
-
const rest = withoutTestIdProps(others);
|
|
241
|
-
const actions = actionsOf(props, refreshLabel, createLabel);
|
|
242
|
-
const showActions = variant === "action" || actions.length > 0;
|
|
243
|
-
return /* @__PURE__ */ jsxs(
|
|
244
|
-
View,
|
|
245
|
-
{
|
|
246
|
-
role: "region",
|
|
247
|
-
"aria-labelledby": titleId,
|
|
248
|
-
testID: dataTestId || "empty-state",
|
|
249
|
-
style: [
|
|
250
|
-
styles.root,
|
|
251
|
-
{
|
|
252
|
-
padding: theme.spacing(EMPTY_STATE_PADDING_UNITS),
|
|
253
|
-
minHeight: EMPTY_STATE_MIN_HEIGHT,
|
|
254
|
-
gap: theme.spacing(EMPTY_STATE_GAP_UNITS)
|
|
255
|
-
},
|
|
256
|
-
style
|
|
257
|
-
],
|
|
258
|
-
...rest,
|
|
259
|
-
children: [
|
|
260
|
-
illustration ? /* @__PURE__ */ jsx(View, { testID: testId("icon"), style: illustrationStyle(variant), children: illustration }) : null,
|
|
261
|
-
/* @__PURE__ */ jsx(
|
|
262
|
-
Content,
|
|
263
|
-
{
|
|
264
|
-
title,
|
|
265
|
-
description,
|
|
266
|
-
titleId,
|
|
267
|
-
testId,
|
|
268
|
-
actions,
|
|
269
|
-
showActions,
|
|
270
|
-
helpLink
|
|
271
|
-
}
|
|
272
|
-
)
|
|
273
|
-
]
|
|
274
|
-
}
|
|
275
|
-
);
|
|
276
|
-
});
|
|
277
|
-
EmptyState.displayName = "EmptyState";
|
|
278
|
-
var styles = StyleSheet.create({
|
|
279
|
-
root: {
|
|
280
|
-
alignItems: "center",
|
|
281
|
-
justifyContent: "center"
|
|
282
|
-
},
|
|
283
|
-
content: {
|
|
284
|
-
alignItems: "center"
|
|
285
|
-
},
|
|
286
|
-
actions: {
|
|
287
|
-
alignItems: "center"
|
|
288
|
-
}
|
|
289
|
-
});
|
|
10
|
+
import "../chunks/chunk-AR5O4BEY.js";
|
|
11
|
+
import "../chunks/chunk-GWGIWQO7.js";
|
|
12
|
+
import "../chunks/chunk-LEMMXZFN.js";
|
|
290
13
|
export {
|
|
291
14
|
EmptyState
|
|
292
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/data-display/EmptyState/EmptyState.native.tsx","../../../src/components/data-display/EmptyState/EmptyState.helpers.ts","../../../src/components/data-display/EmptyState/EmptyState.metrics.ts"],"sourcesContent":["import * as React from 'react';\nimport {\n Linking,\n Platform,\n StyleSheet,\n Text as RNText,\n useWindowDimensions,\n View,\n type TextStyle,\n type ViewStyle,\n} from 'react-native';\n\nimport { type ActionSpec, actionsOf, makeTestId } from './EmptyState.helpers';\nimport {\n ACTION_BUTTON,\n ACTION_MIN_WIDTH,\n ACTIONS_GAP_UNITS,\n ACTIONS_MARGIN_TOP_UNITS,\n ACTIONS_ROW_FROM,\n CONTENT_GAP_UNITS,\n DESCRIPTION_LINE_HEIGHT,\n DESCRIPTION_MAX_WIDTH,\n EMPTY_STATE_GAP_UNITS,\n EMPTY_STATE_MIN_HEIGHT,\n EMPTY_STATE_PADDING_UNITS,\n EXTERNAL_LINK_MARK,\n HELP_LINK_MARGIN_TOP_UNITS,\n illustrationMaxWidth,\n illustrationOpacity,\n MUI_CONTAINED_SHADOW,\n TITLE_MAX_WIDTH,\n} from './EmptyState.metrics';\nimport type { EmptyStateHelpLink, EmptyStateProps, EmptyStateVariant } from './EmptyState.types.native';\nimport { Icon } from '../../../icons/Icon.native';\nimport { webAria } from '../../../platform/aria';\nimport { resolveTestId, withoutTestIdProps } from '../../../platform/test-id';\nimport { useUiTheme } from '../../../provider/use-ui-theme.native';\nimport { alpha } from '../../../tokens/color';\nimport { MUI_FONT_WEIGHT_MEDIUM, MUI_TYPE, muiTypeStyle } from '../../../tokens/mui-type';\nimport type { UiTheme } from '../../../tokens/theme';\nimport { Button } from '../../form/Button/Button.native';\n\n/** MUI's `h6` as an `h3`, medium weight, in the body ink, wrapping at 400px. */\nexport function titleStyle(theme: UiTheme): TextStyle {\n return {\n ...muiTypeStyle(theme, 'h6'),\n fontWeight: `${MUI_FONT_WEIGHT_MEDIUM}`,\n color: theme.palette.text.primary,\n maxWidth: TITLE_MAX_WIDTH,\n textAlign: 'center',\n };\n}\n\n/** MUI's `body2` on a 1.6 line height, muted, wrapping at 480px. */\nexport function descriptionStyle(theme: UiTheme): TextStyle {\n return {\n ...muiTypeStyle(theme, 'body2'),\n lineHeight: MUI_TYPE.body2.fontSize * DESCRIPTION_LINE_HEIGHT,\n color: theme.palette.text.secondary,\n maxWidth: DESCRIPTION_MAX_WIDTH,\n textAlign: 'center',\n };\n}\n\n/** The web `Link` inherits the page's `body1`; primary ink, no underline until hovered. */\nexport function helpLinkStyle(theme: UiTheme): TextStyle {\n return {\n ...muiTypeStyle(theme, 'body1'),\n color: theme.palette.primary.main,\n textDecorationLine: 'none',\n marginTop: theme.spacing(HELP_LINK_MARGIN_TOP_UNITS),\n textAlign: 'center',\n };\n}\n\nexport function illustrationStyle(variant: EmptyStateVariant): ViewStyle {\n return {\n maxWidth: illustrationMaxWidth(variant),\n width: '100%',\n opacity: illustrationOpacity(variant),\n display: variant === 'minimal' ? 'none' : 'flex',\n };\n}\n\n/**\n * The web actions are MUI's medium contained/outlined buttons; the house\n * `Button` is sized to them here. The shadow needs the button's overflow\n * visible — a view clips its own shadow otherwise.\n */\nexport function actionStyle(theme: UiTheme, variant: ActionSpec['variant']): ViewStyle {\n const padding = ACTION_BUTTON[variant];\n return {\n minWidth: ACTION_MIN_WIDTH,\n borderRadius: theme.radius.md,\n paddingVertical: padding.paddingVertical,\n paddingHorizontal: padding.paddingHorizontal,\n ...(variant === 'contained'\n ? { boxShadow: MUI_CONTAINED_SHADOW, overflow: 'visible' }\n : { borderColor: alpha(theme.palette.primary.main, ACTION_BUTTON.outlinedBorderAlpha) }),\n };\n}\n\n/** MUI's `sm` breakpoint decides the action row's axis: a row from 600px up, a column below. */\nexport const actionsDirection = (windowWidth: number): 'row' | 'column' =>\n windowWidth >= ACTIONS_ROW_FROM ? 'row' : 'column';\n\n/** react-native-web's anchor props for a `Text`, which React Native's `TextProps` do not declare. */\nfunction anchorProps(href: string, external: boolean): object {\n if (Platform.OS !== 'web') return {};\n return { href, hrefAttrs: external ? { target: '_blank', rel: 'noopener noreferrer' } : undefined };\n}\n\nfunction ActionButton({ spec, testID }: { spec: ActionSpec; testID: string }): React.JSX.Element {\n const theme = useUiTheme();\n const contained = spec.variant === 'contained';\n const glyph = spec.icon ? (\n <Icon\n name={spec.icon}\n size={ACTION_BUTTON.iconSize}\n color={contained ? theme.palette.primary.contrastText : 'primary'}\n />\n ) : undefined;\n return (\n <Button\n variant={contained ? 'solid' : 'outline'}\n color=\"primary\"\n size=\"sm\"\n icon={glyph}\n onClick={spec.onClick}\n testID={testID}\n style={actionStyle(theme, spec.variant)}\n >\n {spec.label}\n </Button>\n );\n}\n\nfunction Actions({ specs, testId }: { specs: ActionSpec[]; testId: (suffix: string) => string }): React.JSX.Element {\n const theme = useUiTheme();\n const { width } = useWindowDimensions();\n return (\n <View\n style={[\n styles.actions,\n {\n flexDirection: actionsDirection(width),\n gap: theme.spacing(ACTIONS_GAP_UNITS),\n marginTop: theme.spacing(ACTIONS_MARGIN_TOP_UNITS),\n },\n ]}\n >\n {specs.map((spec) => (\n <ActionButton key={spec.key} spec={spec} testID={testId(spec.key)} />\n ))}\n </View>\n );\n}\n\nfunction HelpLink({ helpLink, testId }: { helpLink: EmptyStateHelpLink; testId: string }): React.JSX.Element {\n const theme = useUiTheme();\n const external = helpLink.external === true;\n // On the web the anchor navigates by itself; a device has no anchor and opens the URL.\n const open = Platform.OS === 'web' ? undefined : () => void Linking.openURL(helpLink.href);\n return (\n <RNText role=\"link\" testID={testId} style={helpLinkStyle(theme)} onPress={open} {...anchorProps(helpLink.href, external)}>\n {helpLink.label}\n {external ? EXTERNAL_LINK_MARK : null}\n </RNText>\n );\n}\n\ninterface ContentProps {\n title: string;\n description?: string;\n titleId: string;\n testId: (suffix: string) => string;\n actions: ActionSpec[];\n showActions: boolean;\n helpLink?: EmptyStateHelpLink;\n}\n\nfunction Content({ title, description, titleId, testId, actions, showActions, helpLink }: ContentProps): React.JSX.Element {\n const theme = useUiTheme();\n return (\n <View style={[styles.content, { gap: theme.spacing(CONTENT_GAP_UNITS) }]}>\n <RNText id={titleId} role=\"heading\" {...webAria({ 'aria-level': 3 })} testID={testId('title')} style={titleStyle(theme)}>\n {title}\n </RNText>\n\n {description ? (\n <RNText testID={testId('description')} style={descriptionStyle(theme)}>\n {description}\n </RNText>\n ) : null}\n\n {showActions ? <Actions specs={actions} testId={testId} /> : null}\n\n {helpLink ? <HelpLink helpLink={helpLink} testId={testId('help-link')} /> : null}\n </View>\n );\n}\n\nexport const EmptyState: React.FC<EmptyStateProps> = React.memo(function EmptyState(props) {\n const {\n variant = 'default',\n title,\n description,\n illustration,\n helpLink,\n refreshLabel = 'Refresh',\n createLabel = 'Create New',\n primaryAction: _primary,\n secondaryAction: _secondary,\n onCreate: _onCreate,\n onRefresh: _onRefresh,\n style,\n ...others\n } = props;\n const theme = useUiTheme();\n const titleId = React.useId();\n const dataTestId = resolveTestId(others);\n const testId = makeTestId(dataTestId);\n const rest = withoutTestIdProps(others);\n\n const actions = actionsOf(props, refreshLabel, createLabel);\n // The `action` variant reserves the action row even when nothing fills it.\n const showActions = variant === 'action' || actions.length > 0;\n\n return (\n <View\n role=\"region\"\n aria-labelledby={titleId}\n testID={dataTestId || 'empty-state'}\n style={[\n styles.root,\n {\n padding: theme.spacing(EMPTY_STATE_PADDING_UNITS),\n minHeight: EMPTY_STATE_MIN_HEIGHT,\n gap: theme.spacing(EMPTY_STATE_GAP_UNITS),\n },\n style,\n ]}\n {...rest}\n >\n {illustration ? (\n <View testID={testId('icon')} style={illustrationStyle(variant)}>\n {illustration}\n </View>\n ) : null}\n\n <Content\n title={title}\n description={description}\n titleId={titleId}\n testId={testId}\n actions={actions}\n showActions={showActions}\n helpLink={helpLink}\n />\n </View>\n );\n});\n\nEmptyState.displayName = 'EmptyState';\n\nconst styles = StyleSheet.create({\n root: {\n alignItems: 'center',\n justifyContent: 'center',\n },\n content: {\n alignItems: 'center',\n },\n actions: {\n alignItems: 'center',\n },\n});\n","import type { EmptyStateBaseProps } from './EmptyState.base';\n\nexport const makeTestId =\n (dataTestId?: string) =>\n (suffix: string): string =>\n dataTestId ? `${dataTestId}-${suffix}` : `empty-state-${suffix}`;\n\n/** The glyph an action carries, by the shared icon set's name; each renderer draws it its own way. */\nexport type ActionIconName = 'Add' | 'Refresh';\n\nexport interface ActionSpec {\n key: 'primary-action' | 'create-button' | 'secondary-action' | 'refresh-button';\n variant: 'contained' | 'outlined';\n onClick: () => void;\n label: string;\n icon?: ActionIconName;\n}\n\n// The four buttons are one button with different props. Listing them keeps their\n// order — primary, create, secondary, refresh — visible in one place, and both\n// renderers read this one list.\nexport const actionsOf = (\n props: EmptyStateBaseProps,\n refreshLabel: string,\n createLabel: string,\n): ActionSpec[] => {\n const { primaryAction, secondaryAction, onCreate, onRefresh } = props;\n const specs: ActionSpec[] = [];\n\n if (primaryAction) {\n specs.push({\n key: 'primary-action',\n variant: 'contained',\n onClick: primaryAction.onClick,\n label: primaryAction.label,\n });\n }\n if (onCreate) {\n specs.push({\n key: 'create-button',\n variant: 'contained',\n onClick: onCreate,\n label: createLabel,\n icon: 'Add',\n });\n }\n if (secondaryAction) {\n specs.push({\n key: 'secondary-action',\n variant: 'outlined',\n onClick: secondaryAction.onClick,\n label: secondaryAction.label,\n });\n }\n if (onRefresh) {\n specs.push({\n key: 'refresh-button',\n variant: 'outlined',\n onClick: onRefresh,\n label: refreshLabel,\n icon: 'Refresh',\n });\n }\n\n return specs;\n};\n","import type { EmptyStateVariant } from './EmptyState.base';\n\n/**\n * THE NUMBERS BOTH `EmptyState` RENDERERS DRAW WITH.\n *\n * `EmptyState.tsx` (MUI) and `EmptyState.native.tsx` (React Native) read\n * this one table. Spacing is in SPACING UNITS where the web writes\n * `theme.spacing(n)`; everything else is px or a ratio.\n */\n\n/** The region: a centred column, `theme.spacing(6)` of padding, at least 200px tall, its parts 24px apart. */\nexport const EMPTY_STATE_PADDING_UNITS = 6;\nexport const EMPTY_STATE_MIN_HEIGHT = 200;\nexport const EMPTY_STATE_GAP_UNITS = 3;\n\n/** The illustration: wider when it is the point, faded a little always, hidden in `minimal`. */\nexport const ILLUSTRATION_MAX_WIDTH = { illustrated: 240, other: 120 } as const;\nexport const ILLUSTRATION_OPACITY = { minimal: 0.6, other: 0.8 } as const;\n\nexport const illustrationMaxWidth = (variant: EmptyStateVariant): number =>\n variant === 'illustrated' ? ILLUSTRATION_MAX_WIDTH.illustrated : ILLUSTRATION_MAX_WIDTH.other;\nexport const illustrationOpacity = (variant: EmptyStateVariant): number =>\n variant === 'minimal' ? ILLUSTRATION_OPACITY.minimal : ILLUSTRATION_OPACITY.other;\n\n/** Title, description, actions and link are 16px apart; the title wraps at 400px, the description at 480px on a 1.6 line height. */\nexport const CONTENT_GAP_UNITS = 2;\nexport const TITLE_MAX_WIDTH = 400;\nexport const DESCRIPTION_MAX_WIDTH = 480;\nexport const DESCRIPTION_LINE_HEIGHT = 1.6;\n\n/** The action row: 16px below the text, buttons 16px apart, stacked below MUI's `sm` breakpoint. */\nexport const ACTIONS_MARGIN_TOP_UNITS = 2;\nexport const ACTIONS_GAP_UNITS = 2;\nexport const ACTIONS_ROW_FROM = 600;\nexport const ACTION_MIN_WIDTH = 120;\n/**\n * The web actions ARE MUI's medium `contained` and `outlined` buttons: 6px\n * 16px, or 5px 15px inside a 1px border at half alpha, 14px type, the\n * theme's radius, a 20px start icon. The native side sizes the house\n * `Button` to these.\n */\nexport const ACTION_BUTTON = {\n contained: { paddingVertical: 6, paddingHorizontal: 16 },\n outlined: { paddingVertical: 5, paddingHorizontal: 15 },\n iconSize: 20,\n outlinedBorderAlpha: 0.5,\n} as const;\n/** MUI's `theme.shadows[2]`, the elevation a contained button rests at. */\nexport const MUI_CONTAINED_SHADOW =\n '0px 3px 1px -2px rgba(0,0,0,0.2), 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 1px 5px 0px rgba(0,0,0,0.12)';\n\n/** The help link: 8px below whatever precedes it, marked when it leaves the app. */\nexport const HELP_LINK_MARGIN_TOP_UNITS = 1;\nexport const EXTERNAL_LINK_MARK = ' ↗';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,YAAY,WAAW;AACvB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA,QAAQ;AAAA,EACR;AAAA,EACA;AAAA,OAGK;;;ACRA,IAAM,aACX,CAAC,eACD,CAAC,WACC,aAAa,GAAG,UAAU,IAAI,MAAM,KAAK,eAAe,MAAM;AAgB3D,IAAM,YAAY,CACvB,OACA,cACA,gBACiB;AACjB,QAAM,EAAE,eAAe,iBAAiB,UAAU,UAAU,IAAI;AAChE,QAAM,QAAsB,CAAC;AAE7B,MAAI,eAAe;AACjB,UAAM,KAAK;AAAA,MACT,KAAK;AAAA,MACL,SAAS;AAAA,MACT,SAAS,cAAc;AAAA,MACvB,OAAO,cAAc;AAAA,IACvB,CAAC;AAAA,EACH;AACA,MAAI,UAAU;AACZ,UAAM,KAAK;AAAA,MACT,KAAK;AAAA,MACL,SAAS;AAAA,MACT,SAAS;AAAA,MACT,OAAO;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,EACH;AACA,MAAI,iBAAiB;AACnB,UAAM,KAAK;AAAA,MACT,KAAK;AAAA,MACL,SAAS;AAAA,MACT,SAAS,gBAAgB;AAAA,MACzB,OAAO,gBAAgB;AAAA,IACzB,CAAC;AAAA,EACH;AACA,MAAI,WAAW;AACb,UAAM,KAAK;AAAA,MACT,KAAK;AAAA,MACL,SAAS;AAAA,MACT,SAAS;AAAA,MACT,OAAO;AAAA,MACP,MAAM;AAAA,IACR,CAAC;AAAA,EACH;AAEA,SAAO;AACT;;;ACtDO,IAAM,4BAA4B;AAClC,IAAM,yBAAyB;AAC/B,IAAM,wBAAwB;AAG9B,IAAM,yBAAyB,EAAE,aAAa,KAAK,OAAO,IAAI;AAC9D,IAAM,uBAAuB,EAAE,SAAS,KAAK,OAAO,IAAI;AAExD,IAAM,uBAAuB,CAAC,YACnC,YAAY,gBAAgB,uBAAuB,cAAc,uBAAuB;AACnF,IAAM,sBAAsB,CAAC,YAClC,YAAY,YAAY,qBAAqB,UAAU,qBAAqB;AAGvE,IAAM,oBAAoB;AAC1B,IAAM,kBAAkB;AACxB,IAAM,wBAAwB;AAC9B,IAAM,0BAA0B;AAGhC,IAAM,2BAA2B;AACjC,IAAM,oBAAoB;AAC1B,IAAM,mBAAmB;AACzB,IAAM,mBAAmB;AAOzB,IAAM,gBAAgB;AAAA,EAC3B,WAAW,EAAE,iBAAiB,GAAG,mBAAmB,GAAG;AAAA,EACvD,UAAU,EAAE,iBAAiB,GAAG,mBAAmB,GAAG;AAAA,EACtD,UAAU;AAAA,EACV,qBAAqB;AACvB;AAEO,IAAM,uBACX;AAGK,IAAM,6BAA6B;AACnC,IAAM,qBAAqB;;;AF+D9B,cAgDA,YAhDA;AAzEG,SAAS,WAAW,OAA2B;AACpD,SAAO;AAAA,IACL,GAAG,aAAa,OAAO,IAAI;AAAA,IAC3B,YAAY,GAAG,sBAAsB;AAAA,IACrC,OAAO,MAAM,QAAQ,KAAK;AAAA,IAC1B,UAAU;AAAA,IACV,WAAW;AAAA,EACb;AACF;AAGO,SAAS,iBAAiB,OAA2B;AAC1D,SAAO;AAAA,IACL,GAAG,aAAa,OAAO,OAAO;AAAA,IAC9B,YAAY,SAAS,MAAM,WAAW;AAAA,IACtC,OAAO,MAAM,QAAQ,KAAK;AAAA,IAC1B,UAAU;AAAA,IACV,WAAW;AAAA,EACb;AACF;AAGO,SAAS,cAAc,OAA2B;AACvD,SAAO;AAAA,IACL,GAAG,aAAa,OAAO,OAAO;AAAA,IAC9B,OAAO,MAAM,QAAQ,QAAQ;AAAA,IAC7B,oBAAoB;AAAA,IACpB,WAAW,MAAM,QAAQ,0BAA0B;AAAA,IACnD,WAAW;AAAA,EACb;AACF;AAEO,SAAS,kBAAkB,SAAuC;AACvE,SAAO;AAAA,IACL,UAAU,qBAAqB,OAAO;AAAA,IACtC,OAAO;AAAA,IACP,SAAS,oBAAoB,OAAO;AAAA,IACpC,SAAS,YAAY,YAAY,SAAS;AAAA,EAC5C;AACF;AAOO,SAAS,YAAY,OAAgB,SAA2C;AACrF,QAAM,UAAU,cAAc,OAAO;AACrC,SAAO;AAAA,IACL,UAAU;AAAA,IACV,cAAc,MAAM,OAAO;AAAA,IAC3B,iBAAiB,QAAQ;AAAA,IACzB,mBAAmB,QAAQ;AAAA,IAC3B,GAAI,YAAY,cACZ,EAAE,WAAW,sBAAsB,UAAU,UAAU,IACvD,EAAE,aAAa,MAAM,MAAM,QAAQ,QAAQ,MAAM,cAAc,mBAAmB,EAAE;AAAA,EAC1F;AACF;AAGO,IAAM,mBAAmB,CAAC,gBAC/B,eAAe,mBAAmB,QAAQ;AAG5C,SAAS,YAAY,MAAc,UAA2B;AAC5D,MAAI,SAAS,OAAO,MAAO,QAAO,CAAC;AACnC,SAAO,EAAE,MAAM,WAAW,WAAW,EAAE,QAAQ,UAAU,KAAK,sBAAsB,IAAI,OAAU;AACpG;AAEA,SAAS,aAAa,EAAE,MAAM,OAAO,GAA4D;AAC/F,QAAM,QAAQ,WAAW;AACzB,QAAM,YAAY,KAAK,YAAY;AACnC,QAAM,QAAQ,KAAK,OACjB;AAAA,IAAC;AAAA;AAAA,MACC,MAAM,KAAK;AAAA,MACX,MAAM,cAAc;AAAA,MACpB,OAAO,YAAY,MAAM,QAAQ,QAAQ,eAAe;AAAA;AAAA,EAC1D,IACE;AACJ,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS,YAAY,UAAU;AAAA,MAC/B,OAAM;AAAA,MACN,MAAK;AAAA,MACL,MAAM;AAAA,MACN,SAAS,KAAK;AAAA,MACd;AAAA,MACA,OAAO,YAAY,OAAO,KAAK,OAAO;AAAA,MAErC,eAAK;AAAA;AAAA,EACR;AAEJ;AAEA,SAAS,QAAQ,EAAE,OAAO,OAAO,GAAmF;AAClH,QAAM,QAAQ,WAAW;AACzB,QAAM,EAAE,MAAM,IAAI,oBAAoB;AACtC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAO;AAAA,QACL,OAAO;AAAA,QACP;AAAA,UACE,eAAe,iBAAiB,KAAK;AAAA,UACrC,KAAK,MAAM,QAAQ,iBAAiB;AAAA,UACpC,WAAW,MAAM,QAAQ,wBAAwB;AAAA,QACnD;AAAA,MACF;AAAA,MAEC,gBAAM,IAAI,CAAC,SACV,oBAAC,gBAA4B,MAAY,QAAQ,OAAO,KAAK,GAAG,KAA7C,KAAK,GAA2C,CACpE;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,SAAS,EAAE,UAAU,OAAO,GAAwE;AAC3G,QAAM,QAAQ,WAAW;AACzB,QAAM,WAAW,SAAS,aAAa;AAEvC,QAAM,OAAO,SAAS,OAAO,QAAQ,SAAY,MAAM,KAAK,QAAQ,QAAQ,SAAS,IAAI;AACzF,SACE,qBAAC,UAAO,MAAK,QAAO,QAAQ,QAAQ,OAAO,cAAc,KAAK,GAAG,SAAS,MAAO,GAAG,YAAY,SAAS,MAAM,QAAQ,GACpH;AAAA,aAAS;AAAA,IACT,WAAW,qBAAqB;AAAA,KACnC;AAEJ;AAYA,SAAS,QAAQ,EAAE,OAAO,aAAa,SAAS,QAAQ,SAAS,aAAa,SAAS,GAAoC;AACzH,QAAM,QAAQ,WAAW;AACzB,SACE,qBAAC,QAAK,OAAO,CAAC,OAAO,SAAS,EAAE,KAAK,MAAM,QAAQ,iBAAiB,EAAE,CAAC,GACrE;AAAA,wBAAC,UAAO,IAAI,SAAS,MAAK,WAAW,GAAG,QAAQ,EAAE,cAAc,EAAE,CAAC,GAAG,QAAQ,OAAO,OAAO,GAAG,OAAO,WAAW,KAAK,GACnH,iBACH;AAAA,IAEC,cACC,oBAAC,UAAO,QAAQ,OAAO,aAAa,GAAG,OAAO,iBAAiB,KAAK,GACjE,uBACH,IACE;AAAA,IAEH,cAAc,oBAAC,WAAQ,OAAO,SAAS,QAAgB,IAAK;AAAA,IAE5D,WAAW,oBAAC,YAAS,UAAoB,QAAQ,OAAO,WAAW,GAAG,IAAK;AAAA,KAC9E;AAEJ;AAEO,IAAM,aAA8C,WAAK,SAASA,YAAW,OAAO;AACzF,QAAM;AAAA,IACJ,UAAU;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,eAAe;AAAA,IACf,cAAc;AAAA,IACd,eAAe;AAAA,IACf,iBAAiB;AAAA,IACjB,UAAU;AAAA,IACV,WAAW;AAAA,IACX;AAAA,IACA,GAAG;AAAA,EACL,IAAI;AACJ,QAAM,QAAQ,WAAW;AACzB,QAAM,UAAgB,YAAM;AAC5B,QAAM,aAAa,cAAc,MAAM;AACvC,QAAM,SAAS,WAAW,UAAU;AACpC,QAAM,OAAO,mBAAmB,MAAM;AAEtC,QAAM,UAAU,UAAU,OAAO,cAAc,WAAW;AAE1D,QAAM,cAAc,YAAY,YAAY,QAAQ,SAAS;AAE7D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,mBAAiB;AAAA,MACjB,QAAQ,cAAc;AAAA,MACtB,OAAO;AAAA,QACL,OAAO;AAAA,QACP;AAAA,UACE,SAAS,MAAM,QAAQ,yBAAyB;AAAA,UAChD,WAAW;AAAA,UACX,KAAK,MAAM,QAAQ,qBAAqB;AAAA,QAC1C;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA,uBACC,oBAAC,QAAK,QAAQ,OAAO,MAAM,GAAG,OAAO,kBAAkB,OAAO,GAC3D,wBACH,IACE;AAAA,QAEJ;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,QACF;AAAA;AAAA;AAAA,EACF;AAEJ,CAAC;AAED,WAAW,cAAc;AAEzB,IAAM,SAAS,WAAW,OAAO;AAAA,EAC/B,MAAM;AAAA,IACJ,YAAY;AAAA,IACZ,gBAAgB;AAAA,EAClB;AAAA,EACA,SAAS;AAAA,IACP,YAAY;AAAA,EACd;AAAA,EACA,SAAS;AAAA,IACP,YAAY;AAAA,EACd;AACF,CAAC;","names":["EmptyState"]}
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -3,21 +3,21 @@ import {
|
|
|
3
3
|
} from "../chunks/chunk-ATS7STZJ.js";
|
|
4
4
|
import {
|
|
5
5
|
webAria
|
|
6
|
-
} from "../chunks/chunk-
|
|
6
|
+
} from "../chunks/chunk-DN73KYIZ.js";
|
|
7
7
|
import "../chunks/chunk-5GJ5OG5R.js";
|
|
8
8
|
import {
|
|
9
9
|
Icon
|
|
10
10
|
} from "../chunks/chunk-QYUD3S6F.js";
|
|
11
|
-
import "../chunks/chunk-5WLOVHKK.js";
|
|
12
|
-
import {
|
|
13
|
-
resolveTestId,
|
|
14
|
-
withoutTestIdProps
|
|
15
|
-
} from "../chunks/chunk-AR5O4BEY.js";
|
|
16
11
|
import {
|
|
17
12
|
MUI_FONT_WEIGHT_MEDIUM,
|
|
18
13
|
MUI_TYPE,
|
|
19
14
|
muiTypeStyle
|
|
20
15
|
} from "../chunks/chunk-2UFNPDYT.js";
|
|
16
|
+
import "../chunks/chunk-5WLOVHKK.js";
|
|
17
|
+
import {
|
|
18
|
+
resolveTestId,
|
|
19
|
+
withoutTestIdProps
|
|
20
|
+
} from "../chunks/chunk-AR5O4BEY.js";
|
|
21
21
|
import {
|
|
22
22
|
useUiTheme
|
|
23
23
|
} from "../chunks/chunk-GWGIWQO7.js";
|