@gooddata/sdk-ui-kit 11.43.0-alpha.0 → 11.43.0-alpha.2
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/esm/@ui/@types/icon.d.ts +1 -1
- package/esm/@ui/@types/icon.d.ts.map +1 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.d.ts +3 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.d.ts.map +1 -1
- package/esm/@ui/UiGeneralAccessRadio/UiGeneralAccessRadio.js +2 -2
- package/esm/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.d.ts.map +1 -1
- package/esm/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.js +7 -4
- package/esm/@ui/UiGranteeRow/UiGranteeRow.d.ts +3 -1
- package/esm/@ui/UiGranteeRow/UiGranteeRow.d.ts.map +1 -1
- package/esm/@ui/UiGranteeRow/UiGranteeRow.js +2 -2
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.d.ts +15 -15
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.d.ts.map +1 -1
- package/esm/@ui/UiGranteeRowControls/UiGranteeRowControls.js +20 -18
- package/esm/@ui/UiIcon/icons.d.ts.map +1 -1
- package/esm/@ui/UiIcon/icons.js +1 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.d.ts +44 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.d.ts.map +1 -0
- package/esm/@ui/UiLabelsChecklist/UiLabelsChecklist.js +58 -0
- package/esm/@ui/UiLabelsList/UiLabelsList.d.ts +6 -1
- package/esm/@ui/UiLabelsList/UiLabelsList.d.ts.map +1 -1
- package/esm/@ui/UiLabelsList/UiLabelsList.js +2 -3
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.d.ts +23 -0
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.d.ts.map +1 -0
- package/esm/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.js +83 -0
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.d.ts +14 -1
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.d.ts.map +1 -1
- package/esm/@ui/UiObjectShareDialog/UiObjectShareDialogCard.js +5 -3
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.d.ts +4 -15
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.d.ts.map +1 -1
- package/esm/@ui/UiPermissionMenu/UiPermissionMenu.js +11 -23
- package/esm/@ui/UiPopover/UiPopover.d.ts +29 -1
- package/esm/@ui/UiPopover/UiPopover.d.ts.map +1 -1
- package/esm/@ui/UiPopover/UiPopover.js +4 -4
- package/esm/@ui/UiTag/UiTag.d.ts +1 -0
- package/esm/@ui/UiTag/UiTag.d.ts.map +1 -1
- package/esm/@ui/UiTag/UiTag.js +10 -4
- package/esm/@ui/UiTags/UiTag.d.ts +0 -2
- package/esm/@ui/UiTags/UiTag.d.ts.map +1 -1
- package/esm/@ui/UiTags/UiTag.js +14 -9
- package/esm/@ui/UiTags/UiTags.d.ts.map +1 -1
- package/esm/@ui/UiTags/UiTags.js +38 -24
- package/esm/@ui/UiTags/interactions.d.ts +4 -9
- package/esm/@ui/UiTags/interactions.d.ts.map +1 -1
- package/esm/@ui/UiTags/interactions.js +58 -228
- package/esm/@ui/UiTooltip/UiTooltip.d.ts +1 -1
- package/esm/@ui/UiTooltip/UiTooltip.d.ts.map +1 -1
- package/esm/@ui/UiTooltip/UiTooltip.js +17 -9
- package/esm/@ui/UiTooltip/types.d.ts +10 -1
- package/esm/@ui/UiTooltip/types.d.ts.map +1 -1
- package/esm/Button/Button.d.ts.map +1 -1
- package/esm/Button/Button.js +2 -2
- package/esm/Datepicker/Datepicker.d.ts.map +1 -1
- package/esm/Datepicker/Datepicker.js +1 -1
- package/esm/Icon/icons/InsightIcons/Radar.d.ts.map +1 -1
- package/esm/Icon/icons/InsightIcons/Radar.js +3 -1
- package/esm/List/MenuList.d.ts +2 -1
- package/esm/List/MenuList.d.ts.map +1 -1
- package/esm/List/MenuList.js +2 -2
- package/esm/index.d.ts +2 -1
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +2 -1
- package/esm/locales.d.ts +11 -4
- package/esm/locales.d.ts.map +1 -1
- package/esm/locales.js +5 -4
- package/esm/sdk-ui-kit.d.ts +139 -85
- package/esm/tsdoc-metadata.json +1 -1
- package/package.json +11 -11
- package/src/@ui/UiGranteeAsyncPicker/UiGranteeAsyncPicker.scss +12 -0
- package/src/@ui/UiGranteeRow/UiGranteeRow.scss +5 -0
- package/src/@ui/UiGranteeRowControls/UiGranteeRowControls.scss +7 -0
- package/src/@ui/UiLabelsChecklist/UiLabelsChecklist.scss +31 -0
- package/src/@ui/UiLabelsList/UiLabelsList.scss +3 -0
- package/src/@ui/UiModalDialog/UiModalDialog.scss +11 -1
- package/src/@ui/UiMoreOptionsMenu/UiMoreOptionsMenu.scss +10 -0
- package/src/@ui/UiObjectShareDialog/UiObjectShareDialog.scss +7 -0
- package/src/@ui/UiPermissionMenu/UiPermissionMenu.scss +0 -7
- package/src/@ui/UiPopover/UiPopover.scss +7 -0
- package/src/@ui/UiTabs/UiTabs.scss +0 -1
- package/src/@ui/UiTag/UiTag.scss +4 -0
- package/src/@ui/UiTags/UiTags.scss +5 -1
- package/src/@ui/index.scss +2 -1
- package/styles/css/main.css +66 -21
- package/styles/css/main.css.map +1 -1
- package/styles/images/visualization-types/radar-active.svg +10 -6
- package/styles/images/visualization-types/radar.svg +16 -5
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.d.ts +0 -64
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.d.ts.map +0 -1
- package/esm/@ui/UiLabelsPicker/UiLabelsPicker.js +0 -89
- package/src/@ui/UiLabelsPicker/UiLabelsPicker.scss +0 -29
package/esm/sdk-ui-kit.d.ts
CHANGED
|
@@ -2599,7 +2599,7 @@ export declare function IconTreeMap({ className, width, height, color, ariaHidde
|
|
|
2599
2599
|
/**
|
|
2600
2600
|
* @internal
|
|
2601
2601
|
*/
|
|
2602
|
-
export declare type IconType = "aiAgent" | "aiAgentDisabled" | "brain" | "brainDisabled" | "check" | "checkCircle" | "certification" | "plus" | "plusCircle" | "sync" | "alert" | "alertPaused" | "close" | "cross" | "edit" | "crossCircle" | "question" | "chevronUp" | "chevronRight" | "chevronDown" | "chevronLeft" | "date" | "navigateUp" | "navigateDown" | "navigateRight" | "navigateLeft" | "download" | "slack" | "expand" | "exclamationCircle" | "infoCircle" | "book" | "visible" | "invisible" | "lock" | "unlock" | "ai" | "aiFill" | "drawer" | "drawerEmpty" | "prohibited" | "dropDown" | "dropRight" | "clock" | "clockPaused" | "questionMark" | "upload" | "expandRectangle" | "file" | "number" | "code" | "user" | "userPlus" | "users" | "magic" | "tab" | "pauseCircle" | "filter" | "timer" | "mail" | "envelope" | "copy" | "rain" | "earth" | "geoCollection" | "geoCollectionUpload" | "minimize" | "shrink" | "copyright" | "ellipsis" | "pencil" | "folder" | "folderSmall" | "folderPlus" | "trash" | "arrowUp" | "arrowRight" | "arrowDown" | "arrowLeft" | "undo" | "redo" | "trendDown" | "trendUp" | "save" | "minus" | "minusCircle" | "percent" | "enter" | "enterRight" | "money" | "ghost" | "warning" | "home" | "settings" | "search" | "university" | "printer" | "picture" | "visualization" | "dashboard" | "metric" | "fact" | "ldmAttribute" | "ldmKey" | "ldmLabel" | "sharp" | "attribute" | "horn" | "cw" | "ccw" | "table" | "directionColumn" | "directionRow" | "header" | "genai" | "genai2" | "explainai" | "hiddenForAi" | "box" | "ellipsisVertical" | "list" | "drillTo" | "hierarchy" | "history" | "history2" | "thumbsUp" | "thumbsDown" | "send" | "visualizationArea" | "visualizationTable" | "visualizationTreemap" | "visualizationScatter" | "visualizationDonut" | "visualizationHeadline" | "visualizationColumn" | "visualizationLine" | "visualizationPyramid" | "visualizationFunnel" | "visualizationHeatmap" | "visualizationBubble" | "visualizationPie" | "visualizationBar" | "visualizationCombo" | "visualizationBullet" | "visualizationWaterfall" | "visualizationDependencywheel" | "visualizationSankey" | "visualizationPushpin" | "visualizationRepeater" | "visualizationXirr" | "link" | "externalLink" | "click" | "fileXlsx" | "filePptx" | "filePdf" | "fileImage" | "fileCsvFormatted" | "fileCsvRaw" | "aiDocument" | "recommendation" | "streamUp" | "streamDown" | "stream" | "density" | "parameter" | "pin" | "unpin" | "speechBubble" | "pieChart";
|
|
2602
|
+
export declare type IconType = "aiAgent" | "aiAgentDisabled" | "brain" | "brainDisabled" | "check" | "checkCircle" | "certification" | "plus" | "plusCircle" | "sync" | "alert" | "alertPaused" | "close" | "cross" | "edit" | "crossCircle" | "question" | "chevronUp" | "chevronRight" | "chevronDown" | "chevronLeft" | "date" | "navigateUp" | "navigateDown" | "navigateRight" | "navigateLeft" | "download" | "slack" | "expand" | "exclamationCircle" | "infoCircle" | "book" | "visible" | "invisible" | "lock" | "unlock" | "ai" | "aiFill" | "drawer" | "drawerEmpty" | "prohibited" | "dropDown" | "dropRight" | "clock" | "clockPaused" | "questionMark" | "upload" | "expandRectangle" | "file" | "number" | "code" | "user" | "userPlus" | "users" | "magic" | "tab" | "pauseCircle" | "filter" | "timer" | "mail" | "envelope" | "copy" | "rain" | "earth" | "geoCollection" | "geoCollectionUpload" | "minimize" | "shrink" | "copyright" | "ellipsis" | "pencil" | "folder" | "folderSmall" | "folderPlus" | "trash" | "arrowUp" | "arrowRight" | "arrowDown" | "arrowLeft" | "undo" | "redo" | "trendDown" | "trendUp" | "save" | "minus" | "minusCircle" | "percent" | "enter" | "enterRight" | "money" | "ghost" | "warning" | "home" | "settings" | "search" | "university" | "building" | "printer" | "picture" | "visualization" | "dashboard" | "metric" | "fact" | "ldmAttribute" | "ldmKey" | "ldmLabel" | "sharp" | "attribute" | "horn" | "cw" | "ccw" | "table" | "directionColumn" | "directionRow" | "header" | "genai" | "genai2" | "explainai" | "hiddenForAi" | "box" | "ellipsisVertical" | "list" | "drillTo" | "hierarchy" | "history" | "history2" | "thumbsUp" | "thumbsDown" | "send" | "visualizationArea" | "visualizationTable" | "visualizationTreemap" | "visualizationScatter" | "visualizationDonut" | "visualizationHeadline" | "visualizationColumn" | "visualizationLine" | "visualizationPyramid" | "visualizationFunnel" | "visualizationHeatmap" | "visualizationBubble" | "visualizationPie" | "visualizationBar" | "visualizationCombo" | "visualizationBullet" | "visualizationWaterfall" | "visualizationDependencywheel" | "visualizationSankey" | "visualizationPushpin" | "visualizationRepeater" | "visualizationXirr" | "link" | "externalLink" | "click" | "fileXlsx" | "filePptx" | "filePdf" | "fileImage" | "fileCsvFormatted" | "fileCsvRaw" | "aiDocument" | "recommendation" | "streamUp" | "streamDown" | "stream" | "density" | "parameter" | "pin" | "unpin" | "speechBubble" | "pieChart";
|
|
2603
2603
|
|
|
2604
2604
|
/**
|
|
2605
2605
|
* @internal
|
|
@@ -4444,6 +4444,7 @@ export declare interface IItemProps {
|
|
|
4444
4444
|
children: ReactNode;
|
|
4445
4445
|
className?: string;
|
|
4446
4446
|
style?: CSSProperties;
|
|
4447
|
+
testId?: string;
|
|
4447
4448
|
onClick?: (e: MouseEvent_2<HTMLDivElement>) => void;
|
|
4448
4449
|
}
|
|
4449
4450
|
|
|
@@ -5961,14 +5962,12 @@ export declare interface ISingleSelectListItemProps {
|
|
|
5961
5962
|
}
|
|
5962
5963
|
|
|
5963
5964
|
/**
|
|
5964
|
-
*
|
|
5965
|
-
*
|
|
5966
|
-
* `selected` set. Exported so consumers (e.g. the grantee row counter) can
|
|
5967
|
-
* apply the same rule without re-encoding it.
|
|
5965
|
+
* Whether an item counts as selected: locked items always do, otherwise
|
|
5966
|
+
* membership in `selectedIds`. Exported so callers apply the same rule.
|
|
5968
5967
|
*
|
|
5969
5968
|
* @internal
|
|
5970
5969
|
*/
|
|
5971
|
-
export declare const
|
|
5970
|
+
export declare const isLabelsChecklistItemChecked: (item: IUiLabelsChecklistItem, selectedIds: readonly string[]) => boolean;
|
|
5972
5971
|
|
|
5973
5972
|
/**
|
|
5974
5973
|
* @internal
|
|
@@ -6185,7 +6184,7 @@ export declare interface ITabsState {
|
|
|
6185
6184
|
/**
|
|
6186
6185
|
* @internal
|
|
6187
6186
|
*/
|
|
6188
|
-
export declare function Item({ checked, subMenu, disabled, className, children, style, onClick }: IItemProps): JSX.Element;
|
|
6187
|
+
export declare function Item({ checked, subMenu, disabled, className, children, style, testId, onClick }: IItemProps): JSX.Element;
|
|
6189
6188
|
|
|
6190
6189
|
/**
|
|
6191
6190
|
* Base template definition without localized name.
|
|
@@ -7283,6 +7282,8 @@ export declare interface IUiGeneralAccessRadioProps {
|
|
|
7283
7282
|
value: GeneralAccessValue;
|
|
7284
7283
|
/** Fired when the user picks a different option. */
|
|
7285
7284
|
onChange: (value: GeneralAccessValue) => void;
|
|
7285
|
+
/** Disables both rows — e.g. while the access list is still loading. */
|
|
7286
|
+
disabled?: boolean;
|
|
7286
7287
|
/**
|
|
7287
7288
|
* Optional slot rendered to the right of the `All workspace members`
|
|
7288
7289
|
* row — typically the `UiGranteeRowControls` pair that lets the
|
|
@@ -7367,21 +7368,21 @@ export declare interface IUiGranteeAvatarProps {
|
|
|
7367
7368
|
* @internal
|
|
7368
7369
|
*/
|
|
7369
7370
|
export declare interface IUiGranteeRowControlsProps {
|
|
7370
|
-
/**
|
|
7371
|
-
labels: ReadonlyArray<
|
|
7372
|
-
/** Currently selected label ids. Locked items are always treated as selected. */
|
|
7371
|
+
/** Locked items are always treated as selected. */
|
|
7372
|
+
labels: ReadonlyArray<IUiLabelsChecklistItem>;
|
|
7373
7373
|
selectedLabelIds: ReadonlyArray<string>;
|
|
7374
|
-
/** Current permission level for the grantee. */
|
|
7375
7374
|
permissionLevel: PermissionMenuLevel;
|
|
7376
|
-
/**
|
|
7375
|
+
/**
|
|
7376
|
+
* Set only when the grantee inherits a higher permission than `permissionLevel`
|
|
7377
|
+
* (e.g. from a group); drives the warning badge. Undefined when not elevated.
|
|
7378
|
+
*/
|
|
7379
|
+
effectivePermission?: PermissionMenuLevel;
|
|
7377
7380
|
onLabelsChange: (selectedIds: string[]) => void;
|
|
7378
|
-
/** Fires when the user picks a new permission level. */
|
|
7379
7381
|
onPermissionChange: (level: PermissionMenuLevel) => void;
|
|
7380
|
-
/** Fires when the user picks Transfer ownership in the permission menu. */
|
|
7381
7382
|
onTransferOwnership?: () => void;
|
|
7382
|
-
/** Fires when the user picks Remove access in the permission menu. */
|
|
7383
7383
|
onRemoveAccess?: () => void;
|
|
7384
|
-
/**
|
|
7384
|
+
/** Disables both triggers, e.g. while the row's change is saving. */
|
|
7385
|
+
isDisabled?: boolean;
|
|
7385
7386
|
dataTestId?: string;
|
|
7386
7387
|
}
|
|
7387
7388
|
|
|
@@ -7397,6 +7398,8 @@ export declare interface IUiGranteeRowProps {
|
|
|
7397
7398
|
email?: string;
|
|
7398
7399
|
/** When true, an "Owner" tag is rendered between the text block and the controls slot. */
|
|
7399
7400
|
isOwner?: boolean;
|
|
7401
|
+
/** When true, the row is visually muted to signal an in-flight save. */
|
|
7402
|
+
isPending?: boolean;
|
|
7400
7403
|
/** Trailing controls slot — typically the `UiGranteeRowControls` trigger pair. */
|
|
7401
7404
|
controls?: ReactNode;
|
|
7402
7405
|
/** Test id forwarded to the root element. */
|
|
@@ -7539,71 +7542,60 @@ export declare interface IUiLabelRowProps {
|
|
|
7539
7542
|
}
|
|
7540
7543
|
|
|
7541
7544
|
/**
|
|
7542
|
-
* One label entry in the
|
|
7545
|
+
* One label entry in the checklist.
|
|
7543
7546
|
*
|
|
7544
7547
|
* @internal
|
|
7545
7548
|
*/
|
|
7546
|
-
export declare interface
|
|
7547
|
-
/** Stable identifier for React keys. */
|
|
7549
|
+
export declare interface IUiLabelsChecklistItem {
|
|
7548
7550
|
id: string;
|
|
7549
|
-
/** Label text. */
|
|
7550
7551
|
label: string;
|
|
7551
|
-
/** Drives the icon + suffix. Omit for a regular label. */
|
|
7552
7552
|
kind?: LabelRowKind;
|
|
7553
|
+
/** Locked rows render checked + disabled and are always included (the primary key). */
|
|
7554
|
+
locked?: boolean;
|
|
7553
7555
|
}
|
|
7554
7556
|
|
|
7555
7557
|
/**
|
|
7556
7558
|
* @internal
|
|
7557
7559
|
*/
|
|
7558
|
-
export declare interface
|
|
7559
|
-
|
|
7560
|
-
items
|
|
7561
|
-
|
|
7560
|
+
export declare interface IUiLabelsChecklistProps {
|
|
7561
|
+
items: ReadonlyArray<IUiLabelsChecklistItem>;
|
|
7562
|
+
/** Locked items are always selected regardless of this. */
|
|
7563
|
+
defaultSelectedIds: ReadonlyArray<string>;
|
|
7564
|
+
/** Fires on Apply with the locked-augmented selection (staged internally until then). */
|
|
7565
|
+
onApply: (selectedIds: string[]) => void;
|
|
7566
|
+
/** Back arrow — returns to the parent view. */
|
|
7567
|
+
onBack: () => void;
|
|
7568
|
+
/** Dismisses the menu; Cancel and (post-commit) Apply both call it. */
|
|
7569
|
+
onClose: () => void;
|
|
7562
7570
|
dataTestId?: string;
|
|
7563
7571
|
}
|
|
7564
7572
|
|
|
7565
7573
|
/**
|
|
7566
|
-
* One label entry in the
|
|
7574
|
+
* One label entry in the list.
|
|
7567
7575
|
*
|
|
7568
7576
|
* @internal
|
|
7569
7577
|
*/
|
|
7570
|
-
export declare interface
|
|
7571
|
-
/** Stable identifier
|
|
7578
|
+
export declare interface IUiLabelsListItem {
|
|
7579
|
+
/** Stable identifier for React keys. */
|
|
7572
7580
|
id: string;
|
|
7573
7581
|
/** Label text. */
|
|
7574
7582
|
label: string;
|
|
7575
7583
|
/** Drives the icon + suffix. Omit for a regular label. */
|
|
7576
7584
|
kind?: LabelRowKind;
|
|
7577
|
-
/**
|
|
7578
|
-
* When true the item is rendered locked (checked + disabled). Used for
|
|
7579
|
-
* the primary-key row, which is always included.
|
|
7580
|
-
*/
|
|
7581
|
-
locked?: boolean;
|
|
7582
7585
|
}
|
|
7583
7586
|
|
|
7584
7587
|
/**
|
|
7585
7588
|
* @internal
|
|
7586
7589
|
*/
|
|
7587
|
-
export declare interface
|
|
7588
|
-
/**
|
|
7589
|
-
|
|
7590
|
-
/** All available label items, in source order. */
|
|
7591
|
-
items: ReadonlyArray<IUiLabelsPickerItem>;
|
|
7592
|
-
/**
|
|
7593
|
-
* Initial set of selected item ids. Locked items are always treated as
|
|
7594
|
-
* selected regardless of what's passed here. Consumers that need to
|
|
7595
|
-
* reset the staged state when switching contexts (e.g. picking labels
|
|
7596
|
-
* for a different grantee) should pass `key={contextId}` so React
|
|
7597
|
-
* remounts the picker body.
|
|
7598
|
-
*/
|
|
7599
|
-
defaultSelectedIds: ReadonlyArray<string>;
|
|
7590
|
+
export declare interface IUiLabelsListProps {
|
|
7591
|
+
/** Label items to render in source order. */
|
|
7592
|
+
items: ReadonlyArray<IUiLabelsListItem>;
|
|
7600
7593
|
/**
|
|
7601
|
-
*
|
|
7602
|
-
*
|
|
7603
|
-
* notified only on commit.
|
|
7594
|
+
* Whether to render the uppercase "LABELS" heading. Defaults to `true`.
|
|
7595
|
+
* Set `false` when a wrapping popover already supplies the title.
|
|
7604
7596
|
*/
|
|
7605
|
-
|
|
7606
|
-
/** Test id forwarded to the
|
|
7597
|
+
showHeading?: boolean;
|
|
7598
|
+
/** Test id forwarded to the root element. */
|
|
7607
7599
|
dataTestId?: string;
|
|
7608
7600
|
}
|
|
7609
7601
|
|
|
@@ -7972,6 +7964,21 @@ export declare interface IUiModalDialogProps {
|
|
|
7972
7964
|
dataTestId?: string;
|
|
7973
7965
|
}
|
|
7974
7966
|
|
|
7967
|
+
/**
|
|
7968
|
+
* @internal
|
|
7969
|
+
*/
|
|
7970
|
+
export declare interface IUiMoreOptionsMenuProps {
|
|
7971
|
+
/** Empty/omitted hides the "Manage labels access" row (e.g. facts have no labels). */
|
|
7972
|
+
labels?: ReadonlyArray<IUiLabelsChecklistItem>;
|
|
7973
|
+
/** Locked items are always treated as selected. */
|
|
7974
|
+
selectedLabelIds?: ReadonlyArray<string>;
|
|
7975
|
+
onLabelsChange?: (selectedIds: string[]) => void;
|
|
7976
|
+
/** Omit to hide the row (Transfer ownership is gated until wired). */
|
|
7977
|
+
onTransferOwnership?: () => void;
|
|
7978
|
+
isDisabled?: boolean;
|
|
7979
|
+
dataTestId?: string;
|
|
7980
|
+
}
|
|
7981
|
+
|
|
7975
7982
|
/**
|
|
7976
7983
|
* @internal
|
|
7977
7984
|
*/
|
|
@@ -8004,16 +8011,27 @@ export declare interface IUiObjectShareDialogCardProps {
|
|
|
8004
8011
|
grantees: IUiObjectShareDialogGrantee[];
|
|
8005
8012
|
/** Fires when the user clicks the + Add link in the SHARED WITH heading. */
|
|
8006
8013
|
onAddClick: () => void;
|
|
8014
|
+
/** Disables the + Add action — e.g. while the object's labels are still loading. */
|
|
8015
|
+
isAddDisabled?: boolean;
|
|
8007
8016
|
/** Selected general-access option. */
|
|
8008
8017
|
generalAccess: GeneralAccessValue;
|
|
8009
8018
|
/** Fires when the user picks a different general-access option. */
|
|
8010
8019
|
onGeneralAccessChange: (value: GeneralAccessValue) => void;
|
|
8020
|
+
/** Disables the general-access radio — e.g. while the access list is still loading. */
|
|
8021
|
+
isGeneralAccessDisabled?: boolean;
|
|
8011
8022
|
/**
|
|
8012
8023
|
* Optional slot rendered next to the "All workspace members" row — typically a
|
|
8013
8024
|
* `UiGranteeRowControls` pair for the workspace-wide labels picker
|
|
8014
8025
|
* and permission level.
|
|
8015
8026
|
*/
|
|
8016
8027
|
workspaceControls?: ReactNode;
|
|
8028
|
+
/**
|
|
8029
|
+
* Optional error notice. When set, it replaces the grantee list and
|
|
8030
|
+
* general-access sections (which can't reflect a real policy on a failed
|
|
8031
|
+
* load), so the dialog shows why it's empty instead of a misleading
|
|
8032
|
+
* "restricted, no one has access".
|
|
8033
|
+
*/
|
|
8034
|
+
error?: ReactNode;
|
|
8017
8035
|
/** Test id forwarded to the root element. */
|
|
8018
8036
|
dataTestId?: string;
|
|
8019
8037
|
}
|
|
@@ -8036,6 +8054,8 @@ export declare interface IUiObjectShareDialogGrantee {
|
|
|
8036
8054
|
email?: string;
|
|
8037
8055
|
/** When true, the row is rendered with the "Owner" tag instead of controls. */
|
|
8038
8056
|
isOwner?: boolean;
|
|
8057
|
+
/** When true, the row is visually muted to signal an in-flight save. */
|
|
8058
|
+
isPending?: boolean;
|
|
8039
8059
|
/** Per-row controls — usually `UiGranteeRowControls`. Owner rows leave this empty. */
|
|
8040
8060
|
controls?: ReactNode;
|
|
8041
8061
|
}
|
|
@@ -8180,18 +8200,6 @@ export declare interface IUiPermissionMenuProps {
|
|
|
8180
8200
|
selectedLevel?: PermissionMenuLevel;
|
|
8181
8201
|
/** Fires when the user picks a permission level. */
|
|
8182
8202
|
onPermissionChange: (level: PermissionMenuLevel) => void;
|
|
8183
|
-
/** Fires when the user picks Transfer ownership. */
|
|
8184
|
-
onTransferOwnership?: () => void;
|
|
8185
|
-
/**
|
|
8186
|
-
* Fires when the user picks the Labels entry. Display the count via
|
|
8187
|
-
* `labelsCounter`.
|
|
8188
|
-
*/
|
|
8189
|
-
onLabelsClick?: () => void;
|
|
8190
|
-
/**
|
|
8191
|
-
* Counter shown next to the Labels row (e.g. `"4/4"`). Hidden
|
|
8192
|
-
* if omitted.
|
|
8193
|
-
*/
|
|
8194
|
-
labelsCounter?: string;
|
|
8195
8203
|
/** Fires when the user picks Remove access. */
|
|
8196
8204
|
onRemoveAccess?: () => void;
|
|
8197
8205
|
/** Test id forwarded to the menu body. */
|
|
@@ -8234,10 +8242,29 @@ export declare interface IUiPopoverProps {
|
|
|
8234
8242
|
content?: ReactNode | ((args: {
|
|
8235
8243
|
onClose: () => void;
|
|
8236
8244
|
}) => ReactNode);
|
|
8245
|
+
/**
|
|
8246
|
+
* Padding around the content surface. Defaults to `"default"`. Use `"none"`
|
|
8247
|
+
* for edge-to-edge content whose own children carry their inset (e.g. a list
|
|
8248
|
+
* of full-bleed rows); the surface then also stretches the content to its
|
|
8249
|
+
* full width.
|
|
8250
|
+
*/
|
|
8251
|
+
contentPadding?: "default" | "none";
|
|
8237
8252
|
footer?: ReactNode | ((args: {
|
|
8238
8253
|
onClose: () => void;
|
|
8239
8254
|
}) => ReactNode);
|
|
8240
8255
|
triggerBy?: IUiTooltipProps["triggerBy"];
|
|
8256
|
+
/**
|
|
8257
|
+
* Where the popover sits relative to its anchor (the arrow side; the panel
|
|
8258
|
+
* opens on the opposite side). Defaults to `"top-start"` — i.e. the panel
|
|
8259
|
+
* opens below the anchor, left-aligned.
|
|
8260
|
+
*/
|
|
8261
|
+
arrowPlacement?: IUiTooltipProps["arrowPlacement"];
|
|
8262
|
+
/**
|
|
8263
|
+
* Allow the popover to flip to the opposite side when the preferred side
|
|
8264
|
+
* would overflow. Defaults to `true`. Set `false` to pin it to
|
|
8265
|
+
* `arrowPlacement` (e.g. an anchor that should always open downward).
|
|
8266
|
+
*/
|
|
8267
|
+
optimalPlacement?: boolean;
|
|
8241
8268
|
closeText?: string;
|
|
8242
8269
|
closeVisible?: boolean;
|
|
8243
8270
|
initialFocus?: RefObject<HTMLElement> | string;
|
|
@@ -8253,6 +8280,15 @@ export declare interface IUiPopoverProps {
|
|
|
8253
8280
|
* When true, uses UiFocusManager's focus trap instead of tabOutHandler
|
|
8254
8281
|
*/
|
|
8255
8282
|
enableFocusTrap?: boolean;
|
|
8283
|
+
/**
|
|
8284
|
+
* Controls the open state. When set, the popover ignores anchor clicks and
|
|
8285
|
+
* opens/closes purely from this prop; pair with `onOpenChange` to
|
|
8286
|
+
* react to outside-click / Escape. When omitted the popover stays
|
|
8287
|
+
* uncontrolled and opens on anchor click as before.
|
|
8288
|
+
*/
|
|
8289
|
+
isOpen?: boolean;
|
|
8290
|
+
/** Fires when an interaction (outside-click, Escape) requests an open-state change. */
|
|
8291
|
+
onOpenChange?: (open: boolean) => void;
|
|
8256
8292
|
onOpen?: () => void;
|
|
8257
8293
|
onClose?: () => void;
|
|
8258
8294
|
}
|
|
@@ -8823,9 +8859,18 @@ export declare interface IUiTooltipProps {
|
|
|
8823
8859
|
*/
|
|
8824
8860
|
onClose?: () => void;
|
|
8825
8861
|
/**
|
|
8826
|
-
* Controls the open state of the tooltip, overrides the triggerBy prop if set
|
|
8862
|
+
* Controls the open state of the tooltip, overrides the triggerBy prop if set.
|
|
8863
|
+
* In controlled mode the anchor's own hover/focus/click triggers are
|
|
8864
|
+
* suppressed — open state is driven solely by this prop — but outside-click
|
|
8865
|
+
* and Escape still request a close via `onOpenChange`.
|
|
8827
8866
|
*/
|
|
8828
8867
|
isOpen?: boolean;
|
|
8868
|
+
/**
|
|
8869
|
+
* Fires whenever an interaction requests an open-state change (anchor
|
|
8870
|
+
* triggers when uncontrolled, outside-click / Escape always). Pair with
|
|
8871
|
+
* `isOpen` to drive the tooltip from the parent.
|
|
8872
|
+
*/
|
|
8873
|
+
onOpenChange?: (open: boolean) => void;
|
|
8829
8874
|
/**
|
|
8830
8875
|
* Custom styles for the anchor wrapper element
|
|
8831
8876
|
*/
|
|
@@ -10586,7 +10631,7 @@ export declare function UiFocusTrap({ root, children, focusCheckFn }: {
|
|
|
10586
10631
|
*
|
|
10587
10632
|
* @internal
|
|
10588
10633
|
*/
|
|
10589
|
-
export declare function UiGeneralAccessRadio({ value, onChange, workspaceControls, dataTestId }: IUiGeneralAccessRadioProps): JSX.Element;
|
|
10634
|
+
export declare function UiGeneralAccessRadio({ value, onChange, disabled, workspaceControls, dataTestId }: IUiGeneralAccessRadioProps): JSX.Element;
|
|
10590
10635
|
|
|
10591
10636
|
/**
|
|
10592
10637
|
* Sectioned async grantee picker — specialization of `UiAutocomplete` for the
|
|
@@ -10615,17 +10660,17 @@ export declare function UiGranteeAvatar({ kind, decorative, dataTestId }: IUiGra
|
|
|
10615
10660
|
*
|
|
10616
10661
|
* @internal
|
|
10617
10662
|
*/
|
|
10618
|
-
export declare function UiGranteeRow({ kind, name, email, isOwner, controls, dataTestId }: IUiGranteeRowProps): JSX.Element;
|
|
10663
|
+
export declare function UiGranteeRow({ kind, name, email, isOwner, isPending, controls, dataTestId }: IUiGranteeRowProps): JSX.Element;
|
|
10619
10664
|
|
|
10620
10665
|
/**
|
|
10621
|
-
*
|
|
10622
|
-
*
|
|
10623
|
-
*
|
|
10624
|
-
*
|
|
10666
|
+
* Per-row controls in the OLP share dialog: a permission trigger
|
|
10667
|
+
* ({@link UiPermissionMenu}) plus a "⋯" menu ({@link UiMoreOptionsMenu}) for
|
|
10668
|
+
* labels access and Transfer ownership, with an optional inherited-permission
|
|
10669
|
+
* warning badge.
|
|
10625
10670
|
*
|
|
10626
10671
|
* @internal
|
|
10627
10672
|
*/
|
|
10628
|
-
export declare function UiGranteeRowControls({ labels, selectedLabelIds, permissionLevel, onLabelsChange, onPermissionChange, onTransferOwnership, onRemoveAccess, dataTestId }: IUiGranteeRowControlsProps): JSX.Element;
|
|
10673
|
+
export declare function UiGranteeRowControls({ labels, selectedLabelIds, permissionLevel, effectivePermission, onLabelsChange, onPermissionChange, onTransferOwnership, onRemoveAccess, isDisabled, dataTestId }: IUiGranteeRowControlsProps): JSX.Element;
|
|
10629
10674
|
|
|
10630
10675
|
/**
|
|
10631
10676
|
* @internal
|
|
@@ -10668,22 +10713,21 @@ export declare function UiLabelChecklistRow({ label, kind, suffix, checked, disa
|
|
|
10668
10713
|
export declare function UiLabelRow({ label, kind, suffix, leading, labelId, onClick, dataTestId }: IUiLabelRowProps): JSX.Element;
|
|
10669
10714
|
|
|
10670
10715
|
/**
|
|
10671
|
-
*
|
|
10672
|
-
*
|
|
10716
|
+
* Per-label checklist drill-in for the grantee "⋯" menu. Stages selection
|
|
10717
|
+
* internally, commits via `onApply`, and renders its own back-only header so it
|
|
10718
|
+
* slots into {@link UiMenu} as a `showComponentOnly` content item.
|
|
10673
10719
|
*
|
|
10674
10720
|
* @internal
|
|
10675
10721
|
*/
|
|
10676
|
-
export declare function
|
|
10722
|
+
export declare function UiLabelsChecklist({ items, defaultSelectedIds, onApply, onBack, onClose, dataTestId }: IUiLabelsChecklistProps): JSX.Element;
|
|
10677
10723
|
|
|
10678
10724
|
/**
|
|
10679
|
-
*
|
|
10680
|
-
*
|
|
10681
|
-
* — at render time via {@link isLabelsPickerItemChecked} and again at
|
|
10682
|
-
* commit via the locked-aware filter.
|
|
10725
|
+
* Read-only list of labels — uppercase heading + N `UiLabelRow`s.
|
|
10726
|
+
* Renders only the panel content; whoever needs a popover wraps it.
|
|
10683
10727
|
*
|
|
10684
10728
|
* @internal
|
|
10685
10729
|
*/
|
|
10686
|
-
export declare function
|
|
10730
|
+
export declare function UiLabelsList({ items, showHeading, dataTestId }: IUiLabelsListProps): JSX.Element;
|
|
10687
10731
|
|
|
10688
10732
|
/**
|
|
10689
10733
|
* @internal
|
|
@@ -10740,6 +10784,14 @@ export declare function UiMenu<T extends IUiMenuItemData = object, M extends obj
|
|
|
10740
10784
|
*/
|
|
10741
10785
|
export declare function UiModalDialog({ children, isOpen, onClose, width, accessibilityConfig, dataTestId }: IUiModalDialogProps): JSX.Element | null;
|
|
10742
10786
|
|
|
10787
|
+
/**
|
|
10788
|
+
* Per-grantee "⋯" menu: "Manage labels access" (drills into {@link UiLabelsChecklist})
|
|
10789
|
+
* and "Transfer ownership". Each row shows only when its data/handler is given.
|
|
10790
|
+
*
|
|
10791
|
+
* @internal
|
|
10792
|
+
*/
|
|
10793
|
+
export declare function UiMoreOptionsMenu({ labels, selectedLabelIds, onLabelsChange, onTransferOwnership, isDisabled, dataTestId }: IUiMoreOptionsMenuProps): JSX.Element;
|
|
10794
|
+
|
|
10743
10795
|
/**
|
|
10744
10796
|
* @internal
|
|
10745
10797
|
*/
|
|
@@ -10762,7 +10814,7 @@ export declare function UiObjectShareDialog({ isOpen, ...cardProps }: IUiObjectS
|
|
|
10762
10814
|
*
|
|
10763
10815
|
* @internal
|
|
10764
10816
|
*/
|
|
10765
|
-
export declare function UiObjectShareDialogCard({ objectTitle, onClose, grantees, onAddClick, generalAccess, onGeneralAccessChange, workspaceControls, dataTestId }: IUiObjectShareDialogCardProps): JSX.Element;
|
|
10817
|
+
export declare function UiObjectShareDialogCard({ objectTitle, onClose, grantees, onAddClick, isAddDisabled, generalAccess, onGeneralAccessChange, isGeneralAccessDisabled, workspaceControls, error, dataTestId }: IUiObjectShareDialogCardProps): JSX.Element;
|
|
10766
10818
|
|
|
10767
10819
|
/**
|
|
10768
10820
|
* @internal
|
|
@@ -10797,17 +10849,18 @@ export declare type UiPaginationButtonSize = "small" | "large";
|
|
|
10797
10849
|
/**
|
|
10798
10850
|
* Per-grantee permission popover. Renders a fixed set of rows — two
|
|
10799
10851
|
* permission levels (Can view & share / Can view), an optional divider,
|
|
10800
|
-
* and optional
|
|
10801
|
-
*
|
|
10852
|
+
* and an optional Remove access action row. Each level row carries an
|
|
10853
|
+
* `infoCircle` tooltip. Labels and Transfer ownership live in the separate
|
|
10854
|
+
* {@link UiMoreOptionsMenu}.
|
|
10802
10855
|
*
|
|
10803
10856
|
* @internal
|
|
10804
10857
|
*/
|
|
10805
|
-
export declare function UiPermissionMenu({ anchor, selectedLevel, onPermissionChange,
|
|
10858
|
+
export declare function UiPermissionMenu({ anchor, selectedLevel, onPermissionChange, onRemoveAccess, dataTestId }: IUiPermissionMenuProps): JSX.Element;
|
|
10806
10859
|
|
|
10807
10860
|
/**
|
|
10808
10861
|
* @internal
|
|
10809
10862
|
*/
|
|
10810
|
-
export declare function UiPopover({ id, accessibilityConfig, anchor, anchorAccessibilityConfig, width, title, tabIndex, disabled, content, footer, closeText, closeVisible, initialFocus, returnFocusTo, triggerBy, returnFocusAfterClose, focusCheckFn, enableFocusTrap, onOpen, onClose }: IUiPopoverProps): JSX.Element;
|
|
10863
|
+
export declare function UiPopover({ id, accessibilityConfig, anchor, anchorAccessibilityConfig, width, title, tabIndex, disabled, content, contentPadding, footer, closeText, closeVisible, initialFocus, returnFocusTo, triggerBy, arrowPlacement, optimalPlacement, returnFocusAfterClose, focusCheckFn, enableFocusTrap, isOpen, onOpenChange, onOpen, onClose }: IUiPopoverProps): JSX.Element;
|
|
10811
10864
|
|
|
10812
10865
|
/**
|
|
10813
10866
|
* Standalone radio control — renders a native `<input type="radio">` for
|
|
@@ -10927,6 +10980,7 @@ export declare type UiTagProps = {
|
|
|
10927
10980
|
onDeleteKeyDown?: (event: KeyboardEvent_2<HTMLButtonElement>) => void;
|
|
10928
10981
|
tabIndex?: number;
|
|
10929
10982
|
deleteTabIndex?: number;
|
|
10983
|
+
labelAs?: "button" | "span";
|
|
10930
10984
|
};
|
|
10931
10985
|
|
|
10932
10986
|
/**
|
|
@@ -11010,7 +11064,7 @@ export declare function UiToastsContainer({ dataTestId }: IUiToastsContainerProp
|
|
|
11010
11064
|
/**
|
|
11011
11065
|
* @internal
|
|
11012
11066
|
*/
|
|
11013
|
-
export declare function UiTooltip({ id, anchor, content, behaviour, arrowPlacement, triggerBy, hoverOpenDelay, hoverCloseDelay, showArrow, width, offset: offsetProp, optimalPlacement, accessibilityConfig, variant, disabled, isOpen: isOpenProp, onOpen, onClose, anchorWrapperStyles }: IUiTooltipProps): JSX.Element;
|
|
11067
|
+
export declare function UiTooltip({ id, anchor, content, behaviour, arrowPlacement, triggerBy, hoverOpenDelay, hoverCloseDelay, showArrow, width, offset: offsetProp, optimalPlacement, accessibilityConfig, variant, disabled, isOpen: isOpenProp, onOpen, onClose, onOpenChange, anchorWrapperStyles }: IUiTooltipProps): JSX.Element;
|
|
11014
11068
|
|
|
11015
11069
|
/**
|
|
11016
11070
|
* @internal
|
package/esm/tsdoc-metadata.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gooddata/sdk-ui-kit",
|
|
3
|
-
"version": "11.43.0-alpha.
|
|
3
|
+
"version": "11.43.0-alpha.2",
|
|
4
4
|
"description": "GoodData SDK - UI Building Components",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "GoodData Corporation",
|
|
@@ -75,11 +75,11 @@
|
|
|
75
75
|
"tslib": "2.8.1",
|
|
76
76
|
"unified": "^11.0.5",
|
|
77
77
|
"uuid": "11.1.1",
|
|
78
|
-
"@gooddata/sdk-backend-spi": "11.43.0-alpha.
|
|
79
|
-
"@gooddata/sdk-model": "11.43.0-alpha.
|
|
80
|
-
"@gooddata/sdk-ui": "11.43.0-alpha.
|
|
81
|
-
"@gooddata/
|
|
82
|
-
"@gooddata/
|
|
78
|
+
"@gooddata/sdk-backend-spi": "11.43.0-alpha.2",
|
|
79
|
+
"@gooddata/sdk-model": "11.43.0-alpha.2",
|
|
80
|
+
"@gooddata/sdk-ui": "11.43.0-alpha.2",
|
|
81
|
+
"@gooddata/sdk-ui-theme-provider": "11.43.0-alpha.2",
|
|
82
|
+
"@gooddata/util": "11.43.0-alpha.2"
|
|
83
83
|
},
|
|
84
84
|
"devDependencies": {
|
|
85
85
|
"@microsoft/api-documenter": "^7.17.0",
|
|
@@ -128,11 +128,11 @@
|
|
|
128
128
|
"typescript": "5.9.3",
|
|
129
129
|
"vitest": "4.1.8",
|
|
130
130
|
"vitest-dom": "0.1.1",
|
|
131
|
-
"@gooddata/eslint-config": "11.43.0-alpha.
|
|
132
|
-
"@gooddata/oxlint-config": "11.43.0-alpha.
|
|
133
|
-
"@gooddata/reference-workspace": "11.43.0-alpha.
|
|
134
|
-
"@gooddata/sdk-backend-mockingbird": "11.43.0-alpha.
|
|
135
|
-
"@gooddata/stylelint-config": "11.43.0-alpha.
|
|
131
|
+
"@gooddata/eslint-config": "11.43.0-alpha.2",
|
|
132
|
+
"@gooddata/oxlint-config": "11.43.0-alpha.2",
|
|
133
|
+
"@gooddata/reference-workspace": "11.43.0-alpha.2",
|
|
134
|
+
"@gooddata/sdk-backend-mockingbird": "11.43.0-alpha.2",
|
|
135
|
+
"@gooddata/stylelint-config": "11.43.0-alpha.2"
|
|
136
136
|
},
|
|
137
137
|
"peerDependencies": {
|
|
138
138
|
"react": "^18.0.0 || ^19.0.0",
|
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
flex-direction: column;
|
|
4
4
|
gap: 12px;
|
|
5
5
|
|
|
6
|
+
&__field {
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
gap: var(--gd-spacing-5px);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
&__field-label {
|
|
13
|
+
font-size: 14px;
|
|
14
|
+
line-height: 21px;
|
|
15
|
+
color: var(--gd-palette-complementary-7);
|
|
16
|
+
}
|
|
17
|
+
|
|
6
18
|
&__empty-state {
|
|
7
19
|
min-height: 50px;
|
|
8
20
|
display: flex;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
|
|
3
|
+
// Rendered as a UiMenu content view — its parent (UiMoreOptionsMenu) already
|
|
4
|
+
// cancels the popover padding, so this lays out normally (no negative margin).
|
|
5
|
+
|
|
6
|
+
.gd-ui-kit-labels-checklist {
|
|
7
|
+
align-self: stretch;
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: column;
|
|
10
|
+
|
|
11
|
+
// The submenu header is width:100% + content-box, so its 10px side padding
|
|
12
|
+
// would overflow the column by 20px. Make it border-box so it lines up with
|
|
13
|
+
// the rows and the actions strip below.
|
|
14
|
+
.gd-ui-kit-submenu-header {
|
|
15
|
+
box-sizing: border-box;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
&__items {
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
padding: var(--gd-spacing-5px) 0;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
&__actions {
|
|
25
|
+
display: flex;
|
|
26
|
+
justify-content: flex-end;
|
|
27
|
+
gap: var(--gd-spacing-10px);
|
|
28
|
+
padding: var(--gd-spacing-10px);
|
|
29
|
+
border-top: 1px solid var(--gd-palette-complementary-3);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -4,9 +4,19 @@
|
|
|
4
4
|
display: flex;
|
|
5
5
|
align-items: center;
|
|
6
6
|
justify-content: center;
|
|
7
|
-
|
|
7
|
+
|
|
8
|
+
// Dimmed backdrop on a pseudo-element so the overlay tint never bleeds onto
|
|
9
|
+
// the card. Matches the legacy `.modalityPlugin-mask` (outside colour at 0.9).
|
|
10
|
+
&::before {
|
|
11
|
+
content: "";
|
|
12
|
+
position: absolute;
|
|
13
|
+
inset: 0;
|
|
14
|
+
background: var(--gd-modal-outsideBackgroundColor);
|
|
15
|
+
opacity: 0.9;
|
|
16
|
+
}
|
|
8
17
|
|
|
9
18
|
&__card {
|
|
19
|
+
position: relative;
|
|
10
20
|
display: flex;
|
|
11
21
|
flex-direction: column;
|
|
12
22
|
max-height: calc(100vh - 80px);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// (C) 2026 GoodData Corporation
|
|
2
|
+
|
|
3
|
+
// Cancel UiPopover.__content's 10px padding so the menu spans edge-to-edge.
|
|
4
|
+
|
|
5
|
+
.gd-ui-kit-more-options-menu {
|
|
6
|
+
align-self: stretch;
|
|
7
|
+
display: flex;
|
|
8
|
+
flex-direction: column;
|
|
9
|
+
margin: calc(-1 * var(--gd-spacing-10px));
|
|
10
|
+
}
|