@notis_ai/cli 0.2.0-beta.1793038587372.1 → 0.2.0-beta.1793098247207.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/dist/sdk/src/components/MultiSelectActionBar.tsx +16 -5
- package/dist/space-harness/host.js +42 -37
- package/dist/space-sdk/dist/index.js +8 -3
- package/dist/space-sdk/src/components/MultiSelectActionBar.d.ts +5 -1
- package/dist/space-sdk/src/tailwind-candidates.d.ts +31 -1
- package/dist/view-renderer/dist/host.js +9 -4
- package/package.json +3 -3
|
@@ -27,6 +27,10 @@ export interface MultiSelectActionBarProps {
|
|
|
27
27
|
actions: MultiSelectAction[];
|
|
28
28
|
/** Override the "{count} selected" label units. Default: "selected" with no item word. */
|
|
29
29
|
itemLabel?: { singular: string; plural: string };
|
|
30
|
+
/** Complete count text in the caller's language, including plural agreement. */
|
|
31
|
+
selectionLabel?: string;
|
|
32
|
+
/** Accessible toolbar name in the caller's language. */
|
|
33
|
+
toolbarLabel?: string;
|
|
30
34
|
/** Optional extra class on the outer container (composed alongside the inline styles). */
|
|
31
35
|
className?: string;
|
|
32
36
|
/** Optional override for the bar's positioning style. Defaults to bottom-center floating. */
|
|
@@ -125,6 +129,8 @@ export function MultiSelectActionBar({
|
|
|
125
129
|
selectedCount,
|
|
126
130
|
actions,
|
|
127
131
|
itemLabel,
|
|
132
|
+
selectionLabel,
|
|
133
|
+
toolbarLabel,
|
|
128
134
|
className,
|
|
129
135
|
style,
|
|
130
136
|
shortcutsEnabled = true,
|
|
@@ -196,9 +202,9 @@ export function MultiSelectActionBar({
|
|
|
196
202
|
? itemLabel.singular
|
|
197
203
|
: itemLabel.plural
|
|
198
204
|
: 'selected';
|
|
199
|
-
const countLabel = itemLabel
|
|
205
|
+
const countLabel = selectionLabel ?? (itemLabel
|
|
200
206
|
? `${selectedCount} ${countWord} selected`
|
|
201
|
-
: `${selectedCount} selected
|
|
207
|
+
: `${selectedCount} selected`);
|
|
202
208
|
|
|
203
209
|
const composedStyle: CSSProperties = { ...containerBaseStyle, ...(style || {}) };
|
|
204
210
|
|
|
@@ -215,7 +221,7 @@ export function MultiSelectActionBar({
|
|
|
215
221
|
onClearSelection();
|
|
216
222
|
}}
|
|
217
223
|
role="toolbar"
|
|
218
|
-
aria-label={`Bulk actions for ${selectedCount} selected ${countWord}`}
|
|
224
|
+
aria-label={toolbarLabel ?? `Bulk actions for ${selectedCount} selected ${countWord}`}
|
|
219
225
|
className={className}
|
|
220
226
|
style={composedStyle}
|
|
221
227
|
>
|
|
@@ -225,8 +231,13 @@ export function MultiSelectActionBar({
|
|
|
225
231
|
[data-notis-bulk-actions] { flex-wrap: wrap; width: calc(100% - 2rem) !important; }
|
|
226
232
|
[data-notis-bulk-count] { flex-basis: 100%; padding: 0.375rem 0.5rem !important; font-size: 14px !important; }
|
|
227
233
|
[data-notis-bulk-divider] { display: none; }
|
|
228
|
-
|
|
229
|
-
|
|
234
|
+
/* Every action gets an equal column, icon over label, so none is cut off at the edge
|
|
235
|
+
(longer labels such as French ones wrap inside their column instead). */
|
|
236
|
+
[data-notis-bulk-action-list] { display: grid !important; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); width: 100%; overflow: visible !important; }
|
|
237
|
+
[data-notis-bulk-actions] button { flex-direction: column; justify-content: flex-start; gap: 4px !important; min-width: 0; min-height: 56px; padding: 8px 4px 6px !important; font-size: 12px !important; line-height: 1.25; white-space: normal !important; text-align: center; }
|
|
238
|
+
[data-notis-bulk-actions] kbd { display: none !important; }
|
|
239
|
+
[data-notis-bulk-action-icon][data-has-shortcut] { display: inline-flex !important; }
|
|
240
|
+
[data-notis-bulk-action-icon] svg { width: 18px; height: 18px; }
|
|
230
241
|
}
|
|
231
242
|
@media (hover: none) and (pointer: coarse) {
|
|
232
243
|
[data-notis-bulk-actions] kbd { display: none !important; }
|