@revenexx/studio-shared 0.3.2 → 0.4.0
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/dist/module.d.mts +6 -0
- package/dist/module.json +1 -1
- package/dist/module.mjs +12 -1
- package/dist/runtime/components/Dashboard/DashboardConfirmDialog.d.vue.ts +16 -0
- package/dist/runtime/components/Dashboard/DashboardConfirmDialog.vue +39 -0
- package/dist/runtime/components/Dashboard/DashboardConfirmDialog.vue.d.ts +16 -0
- package/dist/runtime/components/Dashboard/DashboardControls.d.vue.ts +58 -0
- package/dist/runtime/components/Dashboard/DashboardControls.vue +209 -0
- package/dist/runtime/components/Dashboard/DashboardControls.vue.d.ts +58 -0
- package/dist/runtime/components/Dashboard/DashboardGrid.d.vue.ts +17 -0
- package/dist/runtime/components/Dashboard/DashboardGrid.vue +87 -0
- package/dist/runtime/components/Dashboard/DashboardGrid.vue.d.ts +17 -0
- package/dist/runtime/components/Dashboard/DashboardNameDialog.d.vue.ts +19 -0
- package/dist/runtime/components/Dashboard/DashboardNameDialog.vue +61 -0
- package/dist/runtime/components/Dashboard/DashboardNameDialog.vue.d.ts +19 -0
- package/dist/runtime/components/Dashboard/DashboardPickerDialog.d.vue.ts +15 -0
- package/dist/runtime/components/Dashboard/DashboardPickerDialog.vue +100 -0
- package/dist/runtime/components/Dashboard/DashboardPickerDialog.vue.d.ts +15 -0
- package/dist/runtime/components/Dashboard/DashboardShareDialog.d.vue.ts +28 -0
- package/dist/runtime/components/Dashboard/DashboardShareDialog.vue +155 -0
- package/dist/runtime/components/Dashboard/DashboardShareDialog.vue.d.ts +28 -0
- package/dist/runtime/components/Dashboard/DashboardTopBar.d.vue.ts +64 -0
- package/dist/runtime/components/Dashboard/DashboardTopBar.vue +79 -0
- package/dist/runtime/components/Dashboard/DashboardTopBar.vue.d.ts +64 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetConfigDialog.d.vue.ts +44 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetConfigDialog.vue +153 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetConfigDialog.vue.d.ts +44 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetFrame.d.vue.ts +28 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetFrame.vue +80 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetFrame.vue.d.ts +28 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetHost.d.vue.ts +7 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetHost.vue +30 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetHost.vue.d.ts +7 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetIcon.d.vue.ts +9 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetIcon.vue +13 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetIcon.vue.d.ts +9 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetLibrary.d.vue.ts +24 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetLibrary.vue +140 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetLibrary.vue.d.ts +24 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetPreview.d.vue.ts +23 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetPreview.vue +124 -0
- package/dist/runtime/components/Dashboard/DashboardWidgetPreview.vue.d.ts +23 -0
- package/dist/runtime/components/DataTable/ColumnsMenu.d.vue.ts +2 -1
- package/dist/runtime/components/DataTable/ColumnsMenu.vue.d.ts +2 -1
- package/dist/runtime/components/DataTable/DataTable.d.vue.ts +105 -28
- package/dist/runtime/components/DataTable/DataTable.vue +403 -38
- package/dist/runtime/components/DataTable/DataTable.vue.d.ts +105 -28
- package/dist/runtime/components/DataTable/FacetChips.d.vue.ts +17 -0
- package/dist/runtime/components/DataTable/FacetChips.vue +72 -0
- package/dist/runtime/components/DataTable/FacetChips.vue.d.ts +17 -0
- package/dist/runtime/components/DataTable/FacetPanel.d.vue.ts +21 -0
- package/dist/runtime/components/DataTable/FacetPanel.vue +359 -0
- package/dist/runtime/components/DataTable/FacetPanel.vue.d.ts +21 -0
- package/dist/runtime/components/DataTable/FilterMenu.d.vue.ts +6 -5
- package/dist/runtime/components/DataTable/FilterMenu.vue.d.ts +6 -5
- package/dist/runtime/components/DataTable/SavedViewsMenu.d.vue.ts +6 -1
- package/dist/runtime/components/DataTable/SavedViewsMenu.vue +83 -63
- package/dist/runtime/components/DataTable/SavedViewsMenu.vue.d.ts +6 -1
- package/dist/runtime/components/DataTable/SortMenu.d.vue.ts +9 -3
- package/dist/runtime/components/DataTable/SortMenu.vue +40 -12
- package/dist/runtime/components/DataTable/SortMenu.vue.d.ts +9 -3
- package/dist/runtime/components/DataTable/ViewModeSwitch.d.vue.ts +4 -2
- package/dist/runtime/components/DataTable/ViewModeSwitch.vue.d.ts +4 -2
- package/dist/runtime/components/Form/FieldCell.d.vue.ts +32 -0
- package/dist/runtime/components/Form/FieldCell.vue +46 -0
- package/dist/runtime/components/Form/FieldCell.vue.d.ts +32 -0
- package/dist/runtime/components/Form/FieldGrid.d.vue.ts +13 -0
- package/dist/runtime/components/Form/FieldGrid.vue +11 -0
- package/dist/runtime/components/Form/FieldGrid.vue.d.ts +13 -0
- package/dist/runtime/components/Form/FormContextCard.d.vue.ts +33 -0
- package/dist/runtime/components/Form/FormContextCard.vue +56 -0
- package/dist/runtime/components/Form/FormContextCard.vue.d.ts +33 -0
- package/dist/runtime/components/Form/FormLayout.d.vue.ts +47 -0
- package/dist/runtime/components/Form/FormLayout.vue +169 -0
- package/dist/runtime/components/Form/FormLayout.vue.d.ts +47 -0
- package/dist/runtime/components/Form/FormSection.d.vue.ts +25 -0
- package/dist/runtime/components/Form/FormSection.vue +48 -0
- package/dist/runtime/components/Form/FormSection.vue.d.ts +25 -0
- package/dist/runtime/components/Form/SaveBar.d.vue.ts +44 -0
- package/dist/runtime/components/Form/SaveBar.vue +71 -0
- package/dist/runtime/components/Form/SaveBar.vue.d.ts +44 -0
- package/dist/runtime/components/Media/MediaFolderTree.d.vue.ts +2 -1
- package/dist/runtime/components/Media/MediaFolderTree.vue.d.ts +2 -1
- package/dist/runtime/components/Media/MediaPickerDialog.d.vue.ts +4 -3
- package/dist/runtime/components/Media/MediaPickerDialog.vue.d.ts +4 -3
- package/dist/runtime/components/Media/MediaUploader.d.vue.ts +4 -3
- package/dist/runtime/components/Media/MediaUploader.vue.d.ts +4 -3
- package/dist/runtime/components/Shared/AppIcon.d.vue.ts +21 -0
- package/dist/runtime/components/Shared/AppIcon.vue +47 -0
- package/dist/runtime/components/Shared/AppIcon.vue.d.ts +21 -0
- package/dist/runtime/components/Shared/BuildLogsFlyout.d.vue.ts +2 -1
- package/dist/runtime/components/Shared/BuildLogsFlyout.vue.d.ts +2 -1
- package/dist/runtime/components/Shared/DetailSheet.d.vue.ts +60 -0
- package/dist/runtime/components/Shared/DetailSheet.vue +207 -0
- package/dist/runtime/components/Shared/DetailSheet.vue.d.ts +60 -0
- package/dist/runtime/components/Shared/FloatingPanel.d.vue.ts +7 -6
- package/dist/runtime/components/Shared/FloatingPanel.vue.d.ts +7 -6
- package/dist/runtime/components/Shared/GitDeploymentSettings.d.vue.ts +2 -1
- package/dist/runtime/components/Shared/GitDeploymentSettings.vue.d.ts +2 -1
- package/dist/runtime/components/Shared/KpiTile.d.vue.ts +2 -1
- package/dist/runtime/components/Shared/KpiTile.vue.d.ts +2 -1
- package/dist/runtime/components/Shared/ListSurface.d.vue.ts +3 -2
- package/dist/runtime/components/Shared/ListSurface.vue.d.ts +3 -2
- package/dist/runtime/components/Shared/PageHeader.d.vue.ts +7 -6
- package/dist/runtime/components/Shared/PageHeader.vue.d.ts +7 -6
- package/dist/runtime/components/Shared/RecordLayout.d.vue.ts +8 -7
- package/dist/runtime/components/Shared/RecordLayout.vue.d.ts +8 -7
- package/dist/runtime/components/Shared/RecordRailCard.d.vue.ts +3 -2
- package/dist/runtime/components/Shared/RecordRailCard.vue.d.ts +3 -2
- package/dist/runtime/components/Shared/SidebarNav.d.vue.ts +3 -2
- package/dist/runtime/components/Shared/SidebarNav.vue.d.ts +3 -2
- package/dist/runtime/components/Shared/SidebarNavLink.d.vue.ts +2 -1
- package/dist/runtime/components/Shared/SidebarNavLink.vue.d.ts +2 -1
- package/dist/runtime/components/Shared/SortHeader.d.vue.ts +3 -2
- package/dist/runtime/components/Shared/SortHeader.vue +6 -2
- package/dist/runtime/components/Shared/SortHeader.vue.d.ts +3 -2
- package/dist/runtime/components/Shared/StateCard.d.vue.ts +6 -5
- package/dist/runtime/components/Shared/StateCard.vue.d.ts +6 -5
- package/dist/runtime/components/Shared/StudioCard.d.vue.ts +5 -4
- package/dist/runtime/components/Shared/StudioCard.vue.d.ts +5 -4
- package/dist/runtime/components/Shared/TabBar.d.vue.ts +9 -10
- package/dist/runtime/components/Shared/TabBar.vue +26 -7
- package/dist/runtime/components/Shared/TabBar.vue.d.ts +9 -10
- package/dist/runtime/components/Shared/ViewTab.d.vue.ts +2 -1
- package/dist/runtime/components/Shared/ViewTab.vue.d.ts +2 -1
- package/dist/runtime/components/Shared/Wizard.d.vue.ts +10 -7
- package/dist/runtime/components/Shared/Wizard.vue.d.ts +10 -7
- package/dist/runtime/composables/useDashboards.d.ts +27 -0
- package/dist/runtime/composables/useDashboards.js +143 -0
- package/dist/runtime/composables/useDetailSheet.d.ts +20 -0
- package/dist/runtime/composables/useDetailSheet.js +50 -0
- package/dist/runtime/composables/usePlatformTenant.d.ts +6 -0
- package/dist/runtime/composables/useSavedViews.d.ts +44 -0
- package/dist/runtime/composables/useSavedViews.js +44 -0
- package/dist/runtime/composables/useStickyListView.d.ts +60 -0
- package/dist/runtime/composables/useStickyListView.js +32 -0
- package/dist/runtime/lib/activeTenant.d.ts +58 -0
- package/dist/runtime/lib/activeTenant.js +45 -0
- package/dist/runtime/lib/appIcon.d.ts +48 -0
- package/dist/runtime/lib/appIcon.js +27 -0
- package/dist/runtime/lib/canonicalJson.d.ts +43 -0
- package/dist/runtime/lib/canonicalJson.js +38 -0
- package/dist/runtime/lib/dashboardIcons.d.ts +4 -0
- package/dist/runtime/lib/dashboardIcons.js +50 -0
- package/dist/runtime/lib/detailSheet.d.ts +43 -0
- package/dist/runtime/lib/detailSheet.js +34 -0
- package/dist/runtime/lib/facets.d.ts +200 -0
- package/dist/runtime/lib/facets.js +171 -0
- package/dist/runtime/lib/formLayout.d.ts +94 -0
- package/dist/runtime/lib/formLayout.js +70 -0
- package/dist/runtime/lib/formLayoutContext.d.ts +26 -0
- package/dist/runtime/lib/formLayoutContext.js +1 -0
- package/dist/runtime/lib/gridTracks.d.ts +55 -0
- package/dist/runtime/lib/gridTracks.js +29 -0
- package/dist/runtime/lib/rowMove.d.ts +38 -0
- package/dist/runtime/lib/rowMove.js +20 -0
- package/dist/runtime/lib/solarIconMap.d.ts +15 -0
- package/dist/runtime/lib/solarIconMap.js +280 -0
- package/dist/runtime/lib/solarIcons.d.ts +37 -0
- package/dist/runtime/lib/solarIcons.js +25 -0
- package/dist/runtime/lib/widgetRegistry.d.ts +124 -0
- package/dist/runtime/lib/widgetRegistry.js +66 -0
- package/dist/runtime/types/dashboard.d.ts +95 -0
- package/dist/runtime/types/dashboard.js +2 -0
- package/dist/types.d.mts +12 -0
- package/package.json +3 -2
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The picture on a widget's library card (PE-480).
|
|
3
|
+
*
|
|
4
|
+
* A schematic, not a screenshot and not the live widget. The Integration
|
|
5
|
+
* Studio's template gallery draws its preview from the workflow definition for
|
|
6
|
+
* the same reason: a maintained screenshot goes stale the first time the widget
|
|
7
|
+
* changes and nobody notices. Rendering the real widget instead would be
|
|
8
|
+
* accurate but would fire every widget's queries the moment the library opens.
|
|
9
|
+
*
|
|
10
|
+
* So each widget declares a `preview` shape, and this draws it — pure layout,
|
|
11
|
+
* no data, no requests. It says what the widget *looks* like, which is what a
|
|
12
|
+
* person picking from a list actually needs.
|
|
13
|
+
*/
|
|
14
|
+
import type { WidgetPreviewShape } from '../../lib/widgetRegistry.js';
|
|
15
|
+
type __VLS_Props = {
|
|
16
|
+
shape: WidgetPreviewShape;
|
|
17
|
+
dimmed?: boolean;
|
|
18
|
+
};
|
|
19
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
20
|
+
dimmed: boolean;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
declare const _default: typeof __VLS_export;
|
|
23
|
+
export default _default;
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
defineProps({
|
|
3
|
+
shape: { type: String, required: true },
|
|
4
|
+
dimmed: { type: Boolean, required: false, default: false }
|
|
5
|
+
});
|
|
6
|
+
const BARS = [38, 62, 45, 80, 55, 92, 48, 70, 60, 85, 52, 74];
|
|
7
|
+
const RANKS = [100, 72, 54, 38, 26];
|
|
8
|
+
const FUNNEL = [100, 68, 34];
|
|
9
|
+
</script>
|
|
10
|
+
|
|
11
|
+
<template>
|
|
12
|
+
<div
|
|
13
|
+
class="pointer-events-none flex h-24 w-full flex-col justify-center gap-1.5 overflow-hidden rounded-md border border-black/[0.06] bg-gradient-to-b from-white to-black/[0.02] px-3 py-2.5"
|
|
14
|
+
:class="dimmed ? 'opacity-40 grayscale' : ''"
|
|
15
|
+
aria-hidden="true"
|
|
16
|
+
>
|
|
17
|
+
<!-- One number on a card — what a manifest `EntityCount` draws (PE-618). -->
|
|
18
|
+
<div v-if="shape === 'count'" class="flex h-full flex-col justify-center px-1">
|
|
19
|
+
<div class="h-1 w-1/3 rounded-full bg-black/10" />
|
|
20
|
+
<div class="mt-2 h-5 w-1/2 rounded-sm bg-black/25" />
|
|
21
|
+
<div class="mt-2 h-1 w-2/5 rounded-full bg-black/10" />
|
|
22
|
+
</div>
|
|
23
|
+
|
|
24
|
+
<!-- Four tiles with a number and a spark under each. -->
|
|
25
|
+
<div v-else-if="shape === 'kpi-row'" class="grid grid-cols-4 gap-1.5">
|
|
26
|
+
<div v-for="n in 4" :key="n" class="rounded border border-black/[0.06] bg-white px-1.5 py-1">
|
|
27
|
+
<div class="h-1 w-3/4 rounded-full bg-black/10" />
|
|
28
|
+
<div class="mt-1 h-2 w-2/3 rounded-sm bg-black/25" />
|
|
29
|
+
<div class="mt-1 h-0.5 w-full rounded-full bg-violet-400/60" />
|
|
30
|
+
</div>
|
|
31
|
+
</div>
|
|
32
|
+
|
|
33
|
+
<!-- Daily bars. -->
|
|
34
|
+
<div v-else-if="shape === 'bar-chart'" class="flex h-full items-end gap-[3px]">
|
|
35
|
+
<div
|
|
36
|
+
v-for="(h, i) in BARS"
|
|
37
|
+
:key="i"
|
|
38
|
+
class="flex-1 rounded-t-[2px] bg-violet-500/70"
|
|
39
|
+
:style="{ height: `${h}%` }"
|
|
40
|
+
/>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<!-- Label + value + proportional bar, repeated. -->
|
|
44
|
+
<div v-else-if="shape === 'ranked-list'" class="flex flex-col gap-1.5">
|
|
45
|
+
<div v-for="(w, i) in RANKS.slice(0, 4)" :key="i">
|
|
46
|
+
<div class="flex items-center justify-between gap-2">
|
|
47
|
+
<div class="h-1 rounded-full bg-black/15" :style="{ width: `${30 + i % 3 * 14}%` }" />
|
|
48
|
+
<div class="h-1 w-5 rounded-full bg-black/20" />
|
|
49
|
+
</div>
|
|
50
|
+
<div class="mt-0.5 h-1 rounded-full bg-black/[0.06]">
|
|
51
|
+
<div class="h-full rounded-full bg-violet-500/70" :style="{ width: `${w}%` }" />
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
<!-- Narrowing stages. -->
|
|
57
|
+
<div v-else-if="shape === 'funnel'" class="flex flex-col gap-2">
|
|
58
|
+
<div v-for="(w, i) in FUNNEL" :key="i" class="flex items-center gap-2">
|
|
59
|
+
<div class="h-1 w-8 rounded-full bg-black/15" />
|
|
60
|
+
<div class="h-2 flex-1 rounded-full bg-black/[0.06]">
|
|
61
|
+
<div class="h-full rounded-full" :class="i === 2 ? 'bg-emerald-500/70' : 'bg-violet-500/70'" :style="{ width: `${w}%` }" />
|
|
62
|
+
</div>
|
|
63
|
+
</div>
|
|
64
|
+
</div>
|
|
65
|
+
|
|
66
|
+
<!-- Two or four big figures side by side. -->
|
|
67
|
+
<div v-else-if="shape === 'stat-split'" class="grid grid-cols-2 gap-2">
|
|
68
|
+
<div v-for="n in 4" :key="n" class="flex flex-col gap-1">
|
|
69
|
+
<div class="h-1 w-2/3 rounded-full bg-black/10" />
|
|
70
|
+
<div class="h-2.5 w-1/2 rounded-sm bg-black/25" />
|
|
71
|
+
</div>
|
|
72
|
+
</div>
|
|
73
|
+
|
|
74
|
+
<!-- Rows with an icon chip, two lines and a time on the right. -->
|
|
75
|
+
<div v-else-if="shape === 'feed'" class="flex flex-col gap-1.5">
|
|
76
|
+
<div v-for="n in 4" :key="n" class="flex items-center gap-2">
|
|
77
|
+
<div class="size-3.5 shrink-0 rounded bg-violet-400/40" />
|
|
78
|
+
<div class="min-w-0 flex-1">
|
|
79
|
+
<div class="h-1 rounded-full bg-black/15" :style="{ width: `${52 + n % 3 * 14}%` }" />
|
|
80
|
+
<div class="mt-0.5 h-1 w-1/3 rounded-full bg-black/[0.08]" />
|
|
81
|
+
</div>
|
|
82
|
+
<div class="h-1 w-3 shrink-0 rounded-full bg-black/10" />
|
|
83
|
+
</div>
|
|
84
|
+
</div>
|
|
85
|
+
|
|
86
|
+
<!-- Tiles with a state dot. -->
|
|
87
|
+
<div v-else-if="shape === 'status-grid'" class="grid grid-cols-2 gap-1.5">
|
|
88
|
+
<div v-for="n in 4" :key="n" class="flex items-center gap-1.5 rounded border border-black/[0.06] bg-white px-1.5 py-1.5">
|
|
89
|
+
<span class="size-1.5 rounded-full" :class="n === 3 ? 'bg-amber-500' : 'bg-emerald-500'" />
|
|
90
|
+
<div class="h-1 flex-1 rounded-full bg-black/12" />
|
|
91
|
+
</div>
|
|
92
|
+
</div>
|
|
93
|
+
|
|
94
|
+
<!-- Paragraph. -->
|
|
95
|
+
<div v-else-if="shape === 'text'" class="flex flex-col gap-1.5">
|
|
96
|
+
<div v-for="(w, i) in [96, 88, 92, 54]" :key="i" class="h-1.5 rounded-full bg-black/[0.10]" :style="{ width: `${w}%` }" />
|
|
97
|
+
</div>
|
|
98
|
+
|
|
99
|
+
<!-- Link rows with a chevron. -->
|
|
100
|
+
<div v-else-if="shape === 'links'" class="flex flex-col gap-1.5">
|
|
101
|
+
<div v-for="n in 4" :key="n" class="flex items-center justify-between gap-2 rounded px-1 py-1" :class="n === 1 ? 'bg-black/[0.03]' : ''">
|
|
102
|
+
<div class="h-1 rounded-full bg-black/15" :style="{ width: `${34 + n % 3 * 16}%` }" />
|
|
103
|
+
<div class="size-1.5 rotate-45 border-r border-t border-black/20" />
|
|
104
|
+
</div>
|
|
105
|
+
</div>
|
|
106
|
+
|
|
107
|
+
<!-- A greeting line with a row of action chips. -->
|
|
108
|
+
<div v-else-if="shape === 'greeting'" class="flex flex-col gap-2">
|
|
109
|
+
<div class="h-1 w-1/4 rounded-full bg-black/10" />
|
|
110
|
+
<div class="h-3 w-2/3 rounded-sm bg-black/20" />
|
|
111
|
+
<div class="flex gap-1.5">
|
|
112
|
+
<div v-for="n in 5" :key="n" class="size-4 rounded bg-black/[0.06]" />
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
|
|
116
|
+
<!-- Fallback: small multiples. -->
|
|
117
|
+
<div v-else class="grid grid-cols-3 gap-1.5">
|
|
118
|
+
<div v-for="n in 3" :key="n" class="rounded border border-black/[0.06] bg-white p-1.5">
|
|
119
|
+
<div class="h-1 w-2/3 rounded-full bg-black/10" />
|
|
120
|
+
<div class="mt-1 h-1 w-full rounded-full bg-violet-400/50" />
|
|
121
|
+
</div>
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
</template>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The picture on a widget's library card (PE-480).
|
|
3
|
+
*
|
|
4
|
+
* A schematic, not a screenshot and not the live widget. The Integration
|
|
5
|
+
* Studio's template gallery draws its preview from the workflow definition for
|
|
6
|
+
* the same reason: a maintained screenshot goes stale the first time the widget
|
|
7
|
+
* changes and nobody notices. Rendering the real widget instead would be
|
|
8
|
+
* accurate but would fire every widget's queries the moment the library opens.
|
|
9
|
+
*
|
|
10
|
+
* So each widget declares a `preview` shape, and this draws it — pure layout,
|
|
11
|
+
* no data, no requests. It says what the widget *looks* like, which is what a
|
|
12
|
+
* person picking from a list actually needs.
|
|
13
|
+
*/
|
|
14
|
+
import type { WidgetPreviewShape } from '../../lib/widgetRegistry.js';
|
|
15
|
+
type __VLS_Props = {
|
|
16
|
+
shape: WidgetPreviewShape;
|
|
17
|
+
dimmed?: boolean;
|
|
18
|
+
};
|
|
19
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
20
|
+
dimmed: boolean;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
|
+
declare const _default: typeof __VLS_export;
|
|
23
|
+
export default _default;
|
|
@@ -4,11 +4,12 @@ type __VLS_Props = {
|
|
|
4
4
|
/** Set of currently visible column keys. */
|
|
5
5
|
visible: Set<string>;
|
|
6
6
|
};
|
|
7
|
-
declare const
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
8
|
toggle: (key: string) => any;
|
|
9
9
|
reorder: (from: number, to: number) => any;
|
|
10
10
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
11
11
|
onToggle?: ((key: string) => any) | undefined;
|
|
12
12
|
onReorder?: ((from: number, to: number) => any) | undefined;
|
|
13
13
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
14
15
|
export default _default;
|
|
@@ -4,11 +4,12 @@ type __VLS_Props = {
|
|
|
4
4
|
/** Set of currently visible column keys. */
|
|
5
5
|
visible: Set<string>;
|
|
6
6
|
};
|
|
7
|
-
declare const
|
|
7
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
8
|
toggle: (key: string) => any;
|
|
9
9
|
reorder: (from: number, to: number) => any;
|
|
10
10
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
11
11
|
onToggle?: ((key: string) => any) | undefined;
|
|
12
12
|
onReorder?: ((from: number, to: number) => any) | undefined;
|
|
13
13
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
|
+
declare const _default: typeof __VLS_export;
|
|
14
15
|
export default _default;
|
|
@@ -1,16 +1,9 @@
|
|
|
1
|
-
import
|
|
2
|
-
declare const
|
|
3
|
-
props:
|
|
4
|
-
readonly "onUpdate:sort"?: ((value: SortState) => any) | undefined;
|
|
5
|
-
readonly "onUpdate:page"?: ((value: number) => any) | undefined;
|
|
6
|
-
readonly "onUpdate:viewMode"?: ((value: string) => any) | undefined;
|
|
7
|
-
readonly "onUpdate:railOpen"?: ((value: boolean) => any) | undefined;
|
|
8
|
-
readonly onRowClick?: ((row: T) => any) | undefined;
|
|
9
|
-
readonly onStateChange?: ((state: DataTableState) => any) | undefined;
|
|
10
|
-
} & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, never>, "onUpdate:sort" | "onUpdate:page" | "onUpdate:viewMode" | "onUpdate:railOpen" | "onRowClick" | "onStateChange"> & ({
|
|
1
|
+
import { Eye } from '#solar-icons';
|
|
2
|
+
declare const __VLS_export: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
|
|
3
|
+
props: import("vue").PublicProps & __VLS_PrettifyLocal<({
|
|
11
4
|
data: T[];
|
|
12
|
-
columns:
|
|
13
|
-
rowKey:
|
|
5
|
+
columns: Eye<T>[];
|
|
6
|
+
rowKey: Eye<T>;
|
|
14
7
|
/** `label` is the field's accessible name; it defaults to the placeholder
|
|
15
8
|
* where the surface wrote one (see `searchLabel`). */
|
|
16
9
|
search?: boolean | {
|
|
@@ -27,15 +20,34 @@ declare const _default: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>
|
|
|
27
20
|
};
|
|
28
21
|
/** Built-in status/dimension filter pills (static mode). One dimension, or
|
|
29
22
|
* several (each renders as its own sub-menu). */
|
|
30
|
-
filterTabs?:
|
|
23
|
+
filterTabs?: Eye<T> | Eye<T>[];
|
|
24
|
+
/**
|
|
25
|
+
* The surface's declared dimensions, as one facet model (PE-6xx).
|
|
26
|
+
*
|
|
27
|
+
* The THIRD filter path, and the one the others are being folded into. It
|
|
28
|
+
* differs from `filterTabs` in who does the work: those are filtered in
|
|
29
|
+
* memory here, which a server-paged list cannot use — a facet count taken
|
|
30
|
+
* over one page of fifty rows out of twenty-three thousand is a number
|
|
31
|
+
* nobody can reconcile with the table under it. Here the surface owns the
|
|
32
|
+
* query and the counts, and this component only draws the control and hands
|
|
33
|
+
* back a committed selection (`v-model:facet-selection`).
|
|
34
|
+
*
|
|
35
|
+
* EVERY declared dimension lives in this one panel, committed together, and
|
|
36
|
+
* reads back in one chip strip under the toolbar. There is deliberately no
|
|
37
|
+
* second placement: a tree pinned in a left column beside a panel is two
|
|
38
|
+
* places to look and two commit rules for one question.
|
|
39
|
+
*/
|
|
40
|
+
facets?: Eye[];
|
|
41
|
+
/** Say which facet each chip belongs to (see `FacetChips.showFacet`). */
|
|
42
|
+
chipFacetLabels?: boolean;
|
|
31
43
|
/** Saved views control — the surface supplies snapshot/apply, the table
|
|
32
44
|
* owns the control, the storage and the dialogs. */
|
|
33
|
-
savedViews?:
|
|
45
|
+
savedViews?: Eye | null;
|
|
34
46
|
/** View-mode switch (e.g. List | Gallery). Any mode other than `list`
|
|
35
47
|
* renders the `#view` slot in place of the table body. */
|
|
36
|
-
viewModes?:
|
|
48
|
+
viewModes?: Eye[] | null;
|
|
37
49
|
/** Collapse handle for the surface's left rail (see `ListSurface`). */
|
|
38
|
-
rail?: boolean |
|
|
50
|
+
rail?: boolean | Eye;
|
|
39
51
|
/**
|
|
40
52
|
* Scroll the ROWS inside the table instead of the page.
|
|
41
53
|
*
|
|
@@ -52,8 +64,13 @@ declare const _default: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>
|
|
|
52
64
|
* sitting above it. That is not a detail: a scrollbar takes width from the
|
|
53
65
|
* scrolling box, so a header outside it stays wider than the rows and every
|
|
54
66
|
* column drifts by however wide the scrollbar is.
|
|
67
|
+
*
|
|
68
|
+
* `'fit'` measures instead of guessing: the rows get whatever height is left
|
|
69
|
+
* in the surrounding scroll container, so the table ends where the page ends
|
|
70
|
+
* and nothing below it is pushed out of sight. A short list still ends after
|
|
71
|
+
* its last row — the measurement is a MAXIMUM, not a height.
|
|
55
72
|
*/
|
|
56
|
-
scrollBody?: boolean | {
|
|
73
|
+
scrollBody?: boolean | "fit" | {
|
|
57
74
|
maxHeight?: string;
|
|
58
75
|
};
|
|
59
76
|
pagination?: boolean | {
|
|
@@ -69,18 +86,66 @@ declare const _default: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>
|
|
|
69
86
|
emptyText?: string;
|
|
70
87
|
groupBy?: ((row: T) => string[]) | null;
|
|
71
88
|
groupEmptyLabel?: string;
|
|
89
|
+
/** The row whose record is open beside the table (a DetailSheet), marked so
|
|
90
|
+
* reading down the list keeps the place visible (PE-690). */
|
|
91
|
+
activeRowKey?: string | number | null;
|
|
92
|
+
/**
|
|
93
|
+
* A row's own tint — a quantity tier set apart under the SKU it belongs to.
|
|
94
|
+
* Replaces the row's default ground rather than stacking on it: two
|
|
95
|
+
* translucent backgrounds on one element are whichever Tailwind emitted last.
|
|
96
|
+
*/
|
|
97
|
+
rowClass?: ((row: T) => string | null | undefined) | null;
|
|
98
|
+
/**
|
|
99
|
+
* Rows the operator orders by dragging (PE-952). Draws a handle in a leading
|
|
100
|
+
* column; a drop — or the arrow keys on a focused handle — emits `rowMove`
|
|
101
|
+
* with the new order. The table writes nothing: what a position MEANS, and
|
|
102
|
+
* which rows have to be written for it, is the surface's to decide.
|
|
103
|
+
*/
|
|
104
|
+
reorderable?: boolean;
|
|
105
|
+
/**
|
|
106
|
+
* Why the handles are off right now, or null when they are on. The surface
|
|
107
|
+
* knows the cases this component cannot see — a sort that is not the
|
|
108
|
+
* sequence, a write still in flight. The table adds its own: a search, a
|
|
109
|
+
* filter or a grouping, under any of which "the row above" is not the row
|
|
110
|
+
* above in the sequence.
|
|
111
|
+
*/
|
|
112
|
+
reorderDisabled?: string | null;
|
|
72
113
|
} & {
|
|
73
|
-
sort?:
|
|
114
|
+
sort?: Eye;
|
|
74
115
|
page?: number;
|
|
75
116
|
viewMode?: string;
|
|
76
117
|
railOpen?: boolean;
|
|
77
|
-
|
|
78
|
-
|
|
118
|
+
/**
|
|
119
|
+
* The committed facet selection. Two-way so a chip removed under the toolbar,
|
|
120
|
+
* a facet picked in the surface's pinned rail and the panel's own Apply all
|
|
121
|
+
* write to one place — and so the surface can seed it from a saved view or a
|
|
122
|
+
* URL without this component holding a second copy to drift from.
|
|
123
|
+
*/
|
|
124
|
+
facetSelection?: Eye;
|
|
125
|
+
}) & {
|
|
126
|
+
onRowClick?: ((row: T) => any) | undefined;
|
|
127
|
+
onStateChange?: ((state: DataTableState) => any) | undefined;
|
|
128
|
+
onOrderChange?: ((keys: (string | number)[]) => any) | undefined;
|
|
129
|
+
onRowMove?: ((move: {
|
|
130
|
+
key: string | number;
|
|
131
|
+
from: number;
|
|
132
|
+
to: number;
|
|
133
|
+
keys: (string | number)[];
|
|
134
|
+
}) => any) | undefined;
|
|
135
|
+
"onUpdate:sort"?: ((value: SortState) => any) | undefined;
|
|
136
|
+
"onUpdate:page"?: ((value: number) => any) | undefined;
|
|
137
|
+
"onUpdate:viewMode"?: ((value: string) => any) | undefined;
|
|
138
|
+
"onUpdate:railOpen"?: ((value: boolean) => any) | undefined;
|
|
139
|
+
"onUpdate:facetSelection"?: ((value: FacetSelection) => any) | undefined;
|
|
140
|
+
}> & (typeof globalThis extends {
|
|
141
|
+
__VLS_PROPS_FALLBACK: infer P;
|
|
142
|
+
} ? P : {});
|
|
143
|
+
expose: (exposed: {}) => void;
|
|
79
144
|
attrs: any;
|
|
80
145
|
slots: {
|
|
81
|
-
[x:
|
|
146
|
+
[x: `header-${any}`]: ((props: {}) => any) | undefined;
|
|
82
147
|
} & {
|
|
83
|
-
[x:
|
|
148
|
+
[x: `cell-${any}`]: ((props: {
|
|
84
149
|
row: any;
|
|
85
150
|
}) => any) | undefined;
|
|
86
151
|
} & {
|
|
@@ -96,16 +161,28 @@ declare const _default: <T>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>
|
|
|
96
161
|
} & {
|
|
97
162
|
view?: (props: {
|
|
98
163
|
rows: any;
|
|
99
|
-
loading:
|
|
164
|
+
loading: boolean;
|
|
100
165
|
}) => any;
|
|
101
166
|
} & {
|
|
102
|
-
empty?: (props: {
|
|
167
|
+
empty?: (props: {
|
|
168
|
+
query: any;
|
|
169
|
+
filters: any;
|
|
170
|
+
clear: () => void;
|
|
171
|
+
}) => any;
|
|
103
172
|
};
|
|
104
|
-
emit: (((evt: "rowClick", row: T) => void) & ((evt: "stateChange", state: DataTableState) => void)
|
|
173
|
+
emit: (((evt: "rowClick", row: T) => void) & ((evt: "stateChange", state: DataTableState) => void) & ((evt: "orderChange", keys: (string | number)[]) => void) & ((evt: "rowMove", move: {
|
|
174
|
+
key: string | number;
|
|
175
|
+
from: number;
|
|
176
|
+
to: number;
|
|
177
|
+
keys: (string | number)[];
|
|
178
|
+
}) => void)) & (((event: "update:sort", value: SortState) => void) & ((event: "update:page", value: number) => void) & ((event: "update:viewMode", value: string) => void) & ((event: "update:railOpen", value: boolean) => void) & ((event: "update:facetSelection", value: FacetSelection) => void));
|
|
105
179
|
}>) => import("vue").VNode & {
|
|
106
|
-
__ctx?: Awaited<typeof __VLS_setup
|
|
180
|
+
__ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
|
|
107
181
|
};
|
|
182
|
+
declare const _default: typeof __VLS_export;
|
|
108
183
|
export default _default;
|
|
109
|
-
type __VLS_PrettifyLocal<T> = {
|
|
184
|
+
type __VLS_PrettifyLocal<T> = (T extends any ? {
|
|
110
185
|
[K in keyof T]: T[K];
|
|
111
|
-
}
|
|
186
|
+
} : {
|
|
187
|
+
[K in keyof T as K]: T[K];
|
|
188
|
+
}) & {};
|