@gooddata/sdk-ui-ext 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.
Files changed (45) hide show
  1. package/NOTICE +130 -130
  2. package/esm/index.d.ts +4 -0
  3. package/esm/index.d.ts.map +1 -1
  4. package/esm/index.js +2 -0
  5. package/esm/internal/assets/radar/bucket-title-measures.svg +1 -1
  6. package/esm/internal/assets/radar/bucket-title-segment.svg +1 -1
  7. package/esm/internal/assets/radar/bucket-title-trend.svg +1 -1
  8. package/esm/internal/components/configurationControls/customTooltip/CustomTooltipSection.d.ts.map +1 -1
  9. package/esm/internal/components/configurationControls/customTooltip/CustomTooltipSection.js +3 -2
  10. package/esm/internal/translations/en-US.localization-bundle.d.ts +44 -0
  11. package/esm/internal/translations/en-US.localization-bundle.d.ts.map +1 -1
  12. package/esm/internal/translations/en-US.localization-bundle.js +44 -0
  13. package/esm/sdk-ui-ext.d.ts +274 -0
  14. package/esm/share/ObjectShareDialog.d.ts +67 -0
  15. package/esm/share/ObjectShareDialog.d.ts.map +1 -0
  16. package/esm/share/ObjectShareDialog.js +102 -0
  17. package/esm/share/accessSummary.d.ts +20 -0
  18. package/esm/share/accessSummary.d.ts.map +1 -0
  19. package/esm/share/accessSummary.js +26 -0
  20. package/esm/share/messages.d.ts +44 -0
  21. package/esm/share/messages.d.ts.map +1 -0
  22. package/esm/share/messages.js +23 -0
  23. package/esm/share/objectShareController.helpers.d.ts +80 -0
  24. package/esm/share/objectShareController.helpers.d.ts.map +1 -0
  25. package/esm/share/objectShareController.helpers.js +152 -0
  26. package/esm/share/objectShareController.types.d.ts +110 -0
  27. package/esm/share/objectShareController.types.d.ts.map +1 -0
  28. package/esm/share/objectShareController.types.js +2 -0
  29. package/esm/share/types.d.ts +47 -0
  30. package/esm/share/types.d.ts.map +1 -0
  31. package/esm/share/types.js +2 -0
  32. package/esm/share/useAccessList.d.ts +51 -0
  33. package/esm/share/useAccessList.d.ts.map +1 -0
  34. package/esm/share/useAccessList.js +263 -0
  35. package/esm/share/useLabelScope.d.ts +54 -0
  36. package/esm/share/useLabelScope.d.ts.map +1 -0
  37. package/esm/share/useLabelScope.js +160 -0
  38. package/esm/share/useObjectShare.d.ts +50 -0
  39. package/esm/share/useObjectShare.d.ts.map +1 -0
  40. package/esm/share/useObjectShare.js +17 -0
  41. package/esm/share/useObjectShareController.d.ts +24 -0
  42. package/esm/share/useObjectShareController.d.ts.map +1 -0
  43. package/esm/share/useObjectShareController.js +347 -0
  44. package/esm/tsdoc-metadata.json +1 -1
  45. package/package.json +21 -21
package/esm/index.d.ts CHANGED
@@ -75,4 +75,8 @@ export type { INotificationsPanelView } from "./notificationsPanel/types.js";
75
75
  */
76
76
  export declare function provideCreateRoot(_fn: any): void;
77
77
  export { useInsightPagedList, type IUsePagedDropdownConfig, type IUsePagedDropdownResult, type ITabsIds, type InsightListSortBy, type InsightListSortDirection, } from "./internal/components/insightList/useInsightPagedList.js";
78
+ export { ObjectShareDialog, type IObjectShareDialogProps } from "./share/ObjectShareDialog.js";
79
+ export { useObjectShare, type IUseObjectShareOptions } from "./share/useObjectShare.js";
80
+ export type { IObjectAccessSummary, IObjectShareLabel } from "./share/types.js";
81
+ export type { IObjectShareController, IObjectShareControllerActions, IObjectShareControllerState, IObjectShareGrantee, ObjectSharePermissionLevel, } from "./share/objectShareController.types.js";
78
82
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/esm/index.js CHANGED
@@ -69,3 +69,5 @@ export function provideCreateRoot(_fn) {
69
69
  // no-op, kept for backward compatibility
70
70
  }
71
71
  export { useInsightPagedList, } from "./internal/components/insightList/useInsightPagedList.js";
72
+ export { ObjectShareDialog } from "./share/ObjectShareDialog.js";
73
+ export { useObjectShare } from "./share/useObjectShare.js";
@@ -1 +1 @@
1
- <svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><path fill="none" stroke="#94A1AD" stroke-width="1.5" d="m8 1 7 5-3 8H4L1 6z"/><path fill="none" stroke="#B0BECA" d="m8 4 4 3-2 5H6L4 7z"/><path stroke="#B0BECA" d="M8 1v7m7-2L8 8m4 6L8 8m-4 6 4-6M1 6l7 2"/></svg>
1
+ <svg width="18" height="18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m17 7-3 9H4L1 7l8-6 8 6Zm-13.647.734L5.44 14h7.118l2.088-6.266L9 3.5 3.353 7.734Z" fill="#B0BECA"/><path d="m12.552 8.389-1.277 3.83h-4.55L5.447 8.39 9 5.725l3.552 2.664Zm-5.014.652.468 1.401h1.988l.466-1.401-1.461-1.096-1.46 1.096Z" fill="#DDE4EB"/></svg>
@@ -1 +1 @@
1
- <svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><path fill="#B0BECA" fill-opacity=".4" stroke="#B0BECA" d="m8 1 7 5-3 8H4L1 6z"/><path fill="#94A1AD" fill-opacity=".4" stroke="#94A1AD" d="m8 3 5 4-2 6H5L3 7z"/></svg>
1
+ <svg width="18" height="18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m17 7-3 9H4L1 7l8-6 8 6Zm-13.647.734L5.44 14h7.118l2.088-6.266L9 3.5 3.353 7.734Z" fill="#DDE4EB"/><path d="m12.552 8.389-1.277 3.83h-4.55L5.447 8.39 9 5.725l3.552 2.664Z" fill="#B0BECA"/></svg>
@@ -1 +1 @@
1
- <svg width="16" height="16" xmlns="http://www.w3.org/2000/svg"><path stroke="#94A1AD" stroke-width="1.5" d="M8 8V1m0 7 7-2M8 8l4 6M8 8l-4 6m4-6L1 6"/><circle cx="8" cy="1" r="1.5" fill="#B0BECA"/><circle cx="15" cy="6" r="1.5" fill="#B0BECA"/><circle cx="12" cy="14" r="1.5" fill="#B0BECA"/><circle cx="4" cy="14" r="1.5" fill="#B0BECA"/><circle cx="1" cy="6" r="1.5" fill="#B0BECA"/></svg>
1
+ <svg width="18" height="18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="m17 7-3 9H4L1 7l8-6 8 6Zm-13.647.734L5.44 14h7.118l2.088-6.266L9 3.5 3.353 7.734Z" fill="#DDE4EB"/><path d="M10 1.75v6.361l5.872-1.957L17 7l-.333.996-6.019 2.007 3.733 4.852L14 16h-1.262L9 11.14 5.262 16H4l-.382-1.145 3.733-4.853-6.019-2.006L1 7l1.127-.846L8 8.111V1.75L9 1l1 .75Z" fill="#B0BECA"/></svg>
@@ -1 +1 @@
1
- {"version":3,"file":"CustomTooltipSection.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/configurationControls/customTooltip/CustomTooltipSection.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAarF,MAAM,WAAW,0BAA0B;IACvC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAClC;AAED,wBAAgB,oBAAoB,CAAC,EACjC,gBAAwB,EACxB,UAAe,EACf,cAAmB,EACnB,QAAmB,EACtB,EAAE,0BAA0B,2CAyH5B"}
1
+ {"version":3,"file":"CustomTooltipSection.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/configurationControls/customTooltip/CustomTooltipSection.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AAarF,MAAM,WAAW,0BAA0B;IACvC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,wBAAwB,CAAC;IACtC,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,IAAI,CAAC;CAClC;AAED,wBAAgB,oBAAoB,CAAC,EACjC,gBAAwB,EACxB,UAAe,EACf,cAAmB,EACnB,QAAmB,EACtB,EAAE,0BAA0B,2CA2H5B"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  // (C) 2026 GoodData Corporation
3
- import { useEffect, useRef, useState } from "react";
3
+ import { useEffect, useId, useRef, useState } from "react";
4
4
  import { cloneDeep, set } from "lodash-es";
5
5
  import { FormattedMessage, useIntl } from "react-intl";
6
6
  import { useDebounce } from "@gooddata/sdk-ui";
@@ -71,9 +71,10 @@ export function CustomTooltipSection({ controlsDisabled = false, properties = {}
71
71
  const onContentBlur = () => {
72
72
  debouncedPushContent.flush();
73
73
  };
74
+ const textareaId = useId();
74
75
  const placementItems = getTranslatedDropdownItems(customTooltipPlacementDropdownItems, intl);
75
76
  return (_jsxs(ConfigSection, { id: "custom_tooltip_section", valuePath: "customTooltip.enabled", className: "gd-custom-tooltip-section", title: messages.customTooltipTitle.id, propertiesMeta: propertiesMeta, properties: properties, canBeToggled: true, toggleDisabled: toggleDisabled, toggledOn: enabled, pushData: pushData, children: [
76
- _jsx(DropdownControl, { value: placement, valuePath: "customTooltip.placement", labelText: messages.customTooltipPlacement.id, disabled: contentDisabled, showDisabledMessage: contentDisabled, properties: properties, pushData: pushData, items: placementItems, width: 220 }), _jsx("span", { className: "input-label-text", children: _jsx(FormattedMessage, { id: messages.customTooltipContentLabel.id }) }), _jsx(DisabledBubbleMessage, { showDisabledMessage: contentDisabled, children: _jsx("textarea", { className: "gd-input-field gd-custom-tooltip-textarea s-custom-tooltip-textarea", value: localContent, onChange: onContentChange, onBlur: onContentBlur, disabled: contentDisabled, placeholder: intl.formatMessage({ id: messages.customTooltipPlaceholder.id }), rows: 8 }) }), _jsx("div", { className: "gd-custom-tooltip-formatting-link", children: _jsxs(UiLink, { variant: "secondary", href: FORMATTING_OPTIONS_DOC_URL, rel: "noopener noreferrer", target: "_blank", children: [
77
+ _jsx(DropdownControl, { value: placement, valuePath: "customTooltip.placement", labelText: messages.customTooltipPlacement.id, disabled: contentDisabled, showDisabledMessage: contentDisabled, properties: properties, pushData: pushData, items: placementItems, width: 220 }), _jsx("label", { className: "input-label-text", htmlFor: textareaId, children: _jsx(FormattedMessage, { id: messages.customTooltipContentLabel.id }) }), _jsx(DisabledBubbleMessage, { showDisabledMessage: contentDisabled, children: _jsx("textarea", { id: textareaId, className: "gd-input-field gd-custom-tooltip-textarea s-custom-tooltip-textarea", value: localContent, onChange: onContentChange, onBlur: onContentBlur, disabled: contentDisabled, placeholder: intl.formatMessage({ id: messages.customTooltipPlaceholder.id }), rows: 8 }) }), _jsx("div", { className: "gd-custom-tooltip-formatting-link", children: _jsxs(UiLink, { variant: "secondary", href: FORMATTING_OPTIONS_DOC_URL, rel: "noopener noreferrer", target: "_blank", children: [
77
78
  _jsx(UiIcon, { type: "question", size: 12, color: "currentColor" }), _jsx(FormattedMessage, { id: messages.customTooltipFormattingOptions.id })
78
79
  ] }) })
79
80
  ] }));
@@ -2375,5 +2375,49 @@ export declare const en_US: {
2375
2375
  text: string;
2376
2376
  crowdinContext: string;
2377
2377
  };
2378
+ "objectShare.confirm.restrict.title": {
2379
+ text: string;
2380
+ crowdinContext: string;
2381
+ };
2382
+ "objectShare.confirm.restrict.description": {
2383
+ text: string;
2384
+ crowdinContext: string;
2385
+ };
2386
+ "objectShare.confirm.grantWorkspace.title": {
2387
+ text: string;
2388
+ crowdinContext: string;
2389
+ };
2390
+ "objectShare.confirm.grantWorkspace.description": {
2391
+ text: string;
2392
+ crowdinContext: string;
2393
+ };
2394
+ "objectShare.confirm.button": {
2395
+ text: string;
2396
+ crowdinContext: string;
2397
+ };
2398
+ "objectShare.toast.granteeAdded": {
2399
+ text: string;
2400
+ crowdinContext: string;
2401
+ };
2402
+ "objectShare.toast.accessUpdated": {
2403
+ text: string;
2404
+ crowdinContext: string;
2405
+ };
2406
+ "objectShare.toast.generalAccessUpdated": {
2407
+ text: string;
2408
+ crowdinContext: string;
2409
+ };
2410
+ "objectShare.toast.error": {
2411
+ text: string;
2412
+ crowdinContext: string;
2413
+ };
2414
+ "objectShare.toast.labelScopePartial": {
2415
+ text: string;
2416
+ crowdinContext: string;
2417
+ };
2418
+ "objectShare.loadError": {
2419
+ text: string;
2420
+ crowdinContext: string;
2421
+ };
2378
2422
  };
2379
2423
  //# sourceMappingURL=en-US.localization-bundle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/internal/translations/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAy0EjB,CAAC"}
1
+ {"version":3,"file":"en-US.localization-bundle.d.ts","sourceRoot":"","sources":["../../../src/internal/translations/en-US.localization-bundle.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAq3EjB,CAAC"}
@@ -2376,5 +2376,49 @@ export const en_US = {
2376
2376
  "insightPicker.resetFilters": {
2377
2377
  "text": "Reset filters",
2378
2378
  "crowdinContext": "Button/tooltip to reset all filters in the insight picker to their defaults."
2379
+ },
2380
+ "objectShare.confirm.restrict.title": {
2381
+ "text": "Restrict access?",
2382
+ "crowdinContext": "Title of the confirm dialog shown when the user is about to switch general access from workspace-wide to restricted."
2383
+ },
2384
+ "objectShare.confirm.restrict.description": {
2385
+ "text": "This will restrict access to only the people and groups listed above.",
2386
+ "crowdinContext": "Body text of the confirm dialog explaining what restricting access does."
2387
+ },
2388
+ "objectShare.confirm.grantWorkspace.title": {
2389
+ "text": "Grant workspace-wide access?",
2390
+ "crowdinContext": "Title of the confirm dialog shown when the user is about to switch general access from restricted to workspace-wide."
2391
+ },
2392
+ "objectShare.confirm.grantWorkspace.description": {
2393
+ "text": "This will grant all workspace members access to \"{title}\".",
2394
+ "crowdinContext": "Body text of the confirm dialog explaining what granting workspace-wide access does. Placeholder is the object's title."
2395
+ },
2396
+ "objectShare.confirm.button": {
2397
+ "text": "Confirm",
2398
+ "crowdinContext": "Primary action label in the general-access confirm dialog."
2399
+ },
2400
+ "objectShare.toast.granteeAdded": {
2401
+ "text": "Access added.",
2402
+ "crowdinContext": "Toast shown after a new user or group is granted access via the share dialog."
2403
+ },
2404
+ "objectShare.toast.accessUpdated": {
2405
+ "text": "Access updated.",
2406
+ "crowdinContext": "Toast shown after a grantee's permission level was changed or the grantee was removed."
2407
+ },
2408
+ "objectShare.toast.generalAccessUpdated": {
2409
+ "text": "General access updated.",
2410
+ "crowdinContext": "Toast shown after toggling general access between restricted and all workspace members."
2411
+ },
2412
+ "objectShare.toast.error": {
2413
+ "text": "Access could not be updated.",
2414
+ "crowdinContext": "Toast shown when an access change fails."
2415
+ },
2416
+ "objectShare.toast.labelScopePartial": {
2417
+ "text": "Some label access could not be saved.",
2418
+ "crowdinContext": "Warning toast when sharing an attribute succeeded but one or more of its per-label permission writes failed."
2419
+ },
2420
+ "objectShare.loadError": {
2421
+ "text": "Sharing settings couldn't be loaded. Please close and try again.",
2422
+ "crowdinContext": "Shown inside the share dialog when the object's access list failed to load, so the empty state isn't mistaken for a real policy."
2379
2423
  }
2380
2424
  };
@@ -17,6 +17,7 @@ import { CopyCodeOriginType } from '@gooddata/sdk-ui-kit';
17
17
  import { Dispatch } from 'react';
18
18
  import { EmbedType } from '@gooddata/sdk-ui-kit';
19
19
  import { ExplicitDrill } from '@gooddata/sdk-ui';
20
+ import type { GeneralAccessValue } from '@gooddata/sdk-ui-kit';
20
21
  import { GoodDataSdkError } from '@gooddata/sdk-ui';
21
22
  import { IAlertComparisonOperator } from '@gooddata/sdk-model';
22
23
  import { IAlertRelativeArithmeticOperator } from '@gooddata/sdk-model';
@@ -40,10 +41,13 @@ import { ILoadingProps } from '@gooddata/sdk-ui';
40
41
  import { ILocale } from '@gooddata/sdk-ui';
41
42
  import { INotification } from '@gooddata/sdk-model';
42
43
  import { IntlShape } from 'react-intl';
44
+ import type { IObjectPermissionsObject } from '@gooddata/sdk-backend-spi';
43
45
  import { IPivotTableConfig } from '@gooddata/sdk-ui-pivot';
44
46
  import { ISettings } from '@gooddata/sdk-model';
45
47
  import { ITab } from '@gooddata/sdk-ui-kit';
46
48
  import { ITheme } from '@gooddata/sdk-model';
49
+ import type { IUiGranteeAsyncOptions } from '@gooddata/sdk-ui-kit';
50
+ import type { IUiPickedGrantee } from '@gooddata/sdk-ui-kit';
47
51
  import { IUserWorkspaceSettings } from '@gooddata/sdk-backend-spi';
48
52
  import { IVisualizationCallbacks } from '@gooddata/sdk-ui';
49
53
  import { IWidgetUrlBuilder } from '@gooddata/sdk-ui';
@@ -1411,6 +1415,201 @@ export declare function InsightRenderer(props: IInsightRendererProps): JSX.Eleme
1411
1415
  */
1412
1416
  export declare function InsightView(props: IInsightViewProps): JSX.Element;
1413
1417
 
1418
+ /**
1419
+ * Aggregated, read-only access state for an object — what the inline access row
1420
+ * in a host UI needs to render the current sharing state without opening the
1421
+ * full share dialog.
1422
+ *
1423
+ * - `generalAccess` — `RESTRICTED` if only named grantees can access the object;
1424
+ * `WORKSPACE` if the workspace-wide rule grant is present with non-empty permissions.
1425
+ * - `workspaceLevel` — the rule grant's permission level; `VIEW` by default,
1426
+ * `SHARE` when the rule explicitly permits `SHARE`. EDIT is intentionally not
1427
+ * surfaced (the UI caps at VIEW/SHARE).
1428
+ * - `granteeCount` — number of named grantees (users + groups). Excludes the
1429
+ * workspace-wide rule grant itself.
1430
+ *
1431
+ * @internal
1432
+ */
1433
+ export declare interface IObjectAccessSummary {
1434
+ generalAccess: GeneralAccessValue;
1435
+ workspaceLevel: "VIEW" | "SHARE";
1436
+ granteeCount: number;
1437
+ }
1438
+
1439
+ /**
1440
+ * @internal
1441
+ */
1442
+ export declare interface IObjectShareController {
1443
+ state: IObjectShareControllerState;
1444
+ actions: IObjectShareControllerActions;
1445
+ }
1446
+
1447
+ /**
1448
+ * @internal
1449
+ */
1450
+ export declare interface IObjectShareControllerActions {
1451
+ /** Reset transient dialog state (subview + pending buffers). Call on dialog close. */
1452
+ reset: () => void;
1453
+ openAddGrantee: () => void;
1454
+ closeAddGrantee: () => void;
1455
+ setPendingGrantees: (next: IUiPickedGrantee[]) => void;
1456
+ /**
1457
+ * Loader for the add-grantee picker. Wraps `getAvailableAssignees` with
1458
+ * client-side search + already-picked filtering, returning the picker's
1459
+ * `{ groups, users }` shape.
1460
+ */
1461
+ loadOptions: (search: string) => Promise<IUiGranteeAsyncOptions>;
1462
+ /** Commit all pending grantees to the backend. */
1463
+ confirmAddGrantees: () => Promise<void>;
1464
+ /** Change the permission level for a single grantee. Auto-saves. */
1465
+ changePermissionLevel: (granteeId: string, level: ObjectSharePermissionLevel) => Promise<void>;
1466
+ /** Remove a grantee. Auto-saves. */
1467
+ removeGrantee: (granteeId: string) => Promise<void>;
1468
+ /**
1469
+ * Scope a grantee's access to the given label ids (the primary label is always
1470
+ * kept). Sends a per-label VIEW/none grant for each label that changed. Auto-saves.
1471
+ */
1472
+ changeGranteeLabels: (granteeId: string, selectedLabelIds: string[]) => Promise<void>;
1473
+ /** Stage a general access change; opens the confirm dialog. */
1474
+ requestGeneralAccessChange: (next: GeneralAccessValue) => void;
1475
+ cancelGeneralAccessChange: () => void;
1476
+ /** Commit the pending general access change. Auto-saves. */
1477
+ confirmGeneralAccessChange: () => Promise<void>;
1478
+ }
1479
+
1480
+ /**
1481
+ * @internal
1482
+ */
1483
+ export declare interface IObjectShareControllerState {
1484
+ subview: "main" | "addGrantee";
1485
+ status: "idle" | "loading" | "success" | "error" | "saving";
1486
+ error?: Error;
1487
+ summary: IObjectAccessSummary | undefined;
1488
+ grantees: IObjectShareGrantee[];
1489
+ generalAccess: GeneralAccessValue;
1490
+ /**
1491
+ * Labels (display forms) of the shared attribute, in source order. Empty for
1492
+ * objects without labels (e.g. facts) — the labels picker is then hidden.
1493
+ */
1494
+ labels: IObjectShareLabel[];
1495
+ /**
1496
+ * Whether per-label scope resolution has finished. While false, a grantee's
1497
+ * label scope is not yet known: consumers must not treat a missing
1498
+ * `selectedLabelIdsByGrantee` entry as "all selected" for editing, and should
1499
+ * keep the Add action disabled.
1500
+ */
1501
+ labelsResolved: boolean;
1502
+ /**
1503
+ * Per-grantee label scope: grantee id → the label ids that grantee can access.
1504
+ * The primary label is always included. Empty entry means "all labels" has not
1505
+ * yet been resolved; consumers should treat a missing entry as all-selected.
1506
+ */
1507
+ selectedLabelIdsByGrantee: Record<string, string[]>;
1508
+ /** Pending confirm — when set, the confirm dialog is visible. */
1509
+ pendingGeneralAccess?: GeneralAccessValue;
1510
+ /** Grantees staged in the add-grantee dialog before confirmation. */
1511
+ pendingGrantees: IUiPickedGrantee[];
1512
+ }
1513
+
1514
+ /**
1515
+ * Props for {@link ObjectShareDialog}.
1516
+ *
1517
+ * @internal
1518
+ */
1519
+ export declare interface IObjectShareDialogProps {
1520
+ /** The object whose access is being managed. */
1521
+ target: IObjectPermissionsObject | undefined;
1522
+ /** Object title rendered in the dialog header ('Share "\{title\}"'). */
1523
+ objectTitle: string;
1524
+ /** Whether the dialog is shown. Owned by the consumer. */
1525
+ isOpen: boolean;
1526
+ /** Called when the dialog requests to close (backdrop, close button, after share). */
1527
+ onClose: () => void;
1528
+ /** Fires after each successful access mutation — e.g. to refresh an inline access row. */
1529
+ onSaved?: () => void;
1530
+ /**
1531
+ * Labels (display forms) of the shared attribute, enabling the per-grantee
1532
+ * label-scope picker. Omit for objects without labels (e.g. facts). Ignored
1533
+ * when `controller` is supplied (pass `labels` to {@link useObjectShare} instead).
1534
+ */
1535
+ labels?: IObjectShareLabel[];
1536
+ /**
1537
+ * Whether the object's labels are still loading. While true the Add action is
1538
+ * disabled, so a grantee can't be added before its labels are known (a new
1539
+ * grantee defaults to all labels, which can't be written until they resolve).
1540
+ * Omit for objects without labels (e.g. facts).
1541
+ */
1542
+ labelsLoading?: boolean;
1543
+ /**
1544
+ * Whether loading the object's labels failed. While true every access-changing
1545
+ * control (Add, row controls, general access) is disabled: the label set is
1546
+ * unknown, so any access change would diff against an empty scope and silently
1547
+ * orphan real per-label grants. Omit for objects without labels (e.g. facts).
1548
+ * Ignored when `controller` is supplied (pass `labelsError` to
1549
+ * {@link useObjectShare} instead).
1550
+ */
1551
+ labelsError?: boolean;
1552
+ /**
1553
+ * Escape hatch: supply a controller from {@link useObjectShare} to share its
1554
+ * single access-list fetch with an inline summary row. When omitted, the
1555
+ * dialog manages its own controller from `target`/`onSaved`/`labels`.
1556
+ */
1557
+ controller?: IObjectShareController;
1558
+ }
1559
+
1560
+ /**
1561
+ * Dialog row derived from a backend grant.
1562
+ *
1563
+ * @internal
1564
+ */
1565
+ export declare interface IObjectShareGrantee {
1566
+ /** Stable id used as the dialog row's React key. `user:<ref>` / `group:<ref>`. */
1567
+ id: string;
1568
+ kind: "user" | "group";
1569
+ granteeRef: ObjRef;
1570
+ name: string;
1571
+ email?: string;
1572
+ level: ObjectSharePermissionLevel;
1573
+ /**
1574
+ * Effective permission when it is *higher* than the directly-granted `level`
1575
+ * because the grantee inherits a stronger permission (e.g. via a group).
1576
+ * Undefined when the direct grant already is the effective permission. Drives
1577
+ * the row's "effective permission" warning badge.
1578
+ */
1579
+ effectivePermission?: ObjectSharePermissionLevel;
1580
+ /**
1581
+ * Row-level in-flight state for optimistic updates: `"saving"` while a level
1582
+ * change or freshly-added grant is being committed, `"removing"` while a
1583
+ * removal is in flight. Undefined when the row reflects committed state.
1584
+ */
1585
+ pending?: "saving" | "removing";
1586
+ }
1587
+
1588
+ /**
1589
+ * A label (attribute display form) of the shared attribute. The share dialog
1590
+ * scopes a grantee's access to a subset of these via per-label permission grants.
1591
+ *
1592
+ * @internal
1593
+ */
1594
+ export declare interface IObjectShareLabel {
1595
+ /** Backend ref of the label, used as the `kind: "label"` permission target. */
1596
+ ref: ObjRef;
1597
+ /** Stable id (serialized ref) — the picker's item id and selection key. */
1598
+ id: string;
1599
+ /** Display title shown in the labels picker. */
1600
+ title: string;
1601
+ /**
1602
+ * The primary (key) label. It is always accessible and cannot be unchecked —
1603
+ * rendered locked in the picker. Sharing an attribute always includes it.
1604
+ */
1605
+ isPrimary: boolean;
1606
+ /**
1607
+ * The default display label — the one shown by default in visualizations.
1608
+ * At most one label is the default. Distinct from the primary (key) label.
1609
+ */
1610
+ isDefault: boolean;
1611
+ }
1612
+
1414
1613
  /**
1415
1614
  * Type-guard testing whether the provided object is an instance of {@link IDrillDownDefinition}.
1416
1615
  * @beta
@@ -1498,6 +1697,40 @@ export declare interface ITabsIds {
1498
1697
  all: string;
1499
1698
  }
1500
1699
 
1700
+ /**
1701
+ * Options for {@link useObjectShare}.
1702
+ *
1703
+ * @internal
1704
+ */
1705
+ export declare interface IUseObjectShareOptions {
1706
+ /**
1707
+ * Fires after each successful access mutation (add grantee, change level,
1708
+ * remove, general access toggle). Use it to keep UI outside the dialog in
1709
+ * sync with edits made inside it (e.g. refresh an inline access row).
1710
+ */
1711
+ onSaved?: () => void;
1712
+ /**
1713
+ * Labels (display forms) of the shared attribute, enabling the per-grantee
1714
+ * label-scope picker. Omit for objects without labels (e.g. facts).
1715
+ */
1716
+ labels?: IObjectShareLabel[];
1717
+ /**
1718
+ * Whether loading the object's labels failed. While true the controller stays
1719
+ * label-unresolved so every access-changing control is disabled: with the
1720
+ * label set unknown, reconciling access would diff against an empty set and
1721
+ * silently orphan any real per-label grants. Distinct from an object that
1722
+ * genuinely has no labels (omit `labels`), where editing is safe.
1723
+ */
1724
+ labelsError?: boolean;
1725
+ /**
1726
+ * Whether the object's labels are still loading. While true the controller stays
1727
+ * label-unresolved (same gating as `labelsError`): the labels aren't passed yet,
1728
+ * so an empty list must not be mistaken for a label-free object — otherwise row
1729
+ * controls would reconcile against an empty set and orphan real per-label grants.
1730
+ */
1731
+ labelsLoading?: boolean;
1732
+ }
1733
+
1501
1734
  /**
1502
1735
  * Config for useInsightPagedList hook
1503
1736
  * @internal
@@ -1662,6 +1895,33 @@ export declare const MIN_VISUALIZATION_WIDTH = 2;
1662
1895
  */
1663
1896
  export declare function NotificationsPanel(props: INotificationsPanelProps): JSX.Element;
1664
1897
 
1898
+ /**
1899
+ * Connected share dialog. Renders the main share modal, the add-grantee
1900
+ * sub-dialog and the general-access confirm dialog, all driven by one
1901
+ * controller. Each underlying dialog manages its own open state, so they can
1902
+ * be safely co-mounted; focus, backdrop and portal lifecycles are owned by
1903
+ * `UiModalDialog` inside the kit.
1904
+ *
1905
+ * Mount unconditionally and toggle via `isOpen`; the contents stay invisible
1906
+ * while closed. For the common case pass plain props and let the dialog own its
1907
+ * controller:
1908
+ *
1909
+ * ```tsx
1910
+ * <ObjectShareDialog target={ref} objectTitle={title} isOpen={open} onClose={close} />
1911
+ * ```
1912
+ *
1913
+ * @internal
1914
+ */
1915
+ export declare function ObjectShareDialog({ target, objectTitle, isOpen, onClose, onSaved, labels, labelsLoading, labelsError, controller }: IObjectShareDialogProps): JSX.Element;
1916
+
1917
+ /**
1918
+ * Permission level surfaced in the share dialog. `EDIT` is intentionally
1919
+ * not represented — the underlying permission menu caps at VIEW/SHARE.
1920
+ *
1921
+ * @internal
1922
+ */
1923
+ export declare type ObjectSharePermissionLevel = "VIEW" | "SHARE";
1924
+
1665
1925
  /**
1666
1926
  * @alpha
1667
1927
  */
@@ -1767,6 +2027,20 @@ export declare function useInsightPickerState(author?: string): {
1767
2027
  onTagFilterChange: Dispatch<SetStateAction<string[]>>;
1768
2028
  };
1769
2029
 
2030
+ /**
2031
+ * Connected controller hook backing {@link ObjectShareDialog}. Most consumers
2032
+ * do not need this — render `ObjectShareDialog` with plain props and it owns
2033
+ * its controller. Use this hook directly only to share a single access-list
2034
+ * fetch between the dialog and an inline summary row: call it once, read
2035
+ * `state.summary` for the row, and pass the controller into the dialog.
2036
+ *
2037
+ * The hook eagerly fetches the access list on mount so `state.summary` is
2038
+ * usable while the dialog is closed.
2039
+ *
2040
+ * @internal
2041
+ */
2042
+ export declare function useObjectShare(target: IObjectPermissionsObject | undefined, options?: IUseObjectShareOptions): IObjectShareController;
2043
+
1770
2044
  /**
1771
2045
  * @internal
1772
2046
  */
@@ -0,0 +1,67 @@
1
+ import type { IObjectPermissionsObject } from "@gooddata/sdk-backend-spi";
2
+ import type { IObjectShareController } from "./objectShareController.types.js";
3
+ import type { IObjectShareLabel } from "./types.js";
4
+ /**
5
+ * Props for {@link ObjectShareDialog}.
6
+ *
7
+ * @internal
8
+ */
9
+ export interface IObjectShareDialogProps {
10
+ /** The object whose access is being managed. */
11
+ target: IObjectPermissionsObject | undefined;
12
+ /** Object title rendered in the dialog header ('Share "\{title\}"'). */
13
+ objectTitle: string;
14
+ /** Whether the dialog is shown. Owned by the consumer. */
15
+ isOpen: boolean;
16
+ /** Called when the dialog requests to close (backdrop, close button, after share). */
17
+ onClose: () => void;
18
+ /** Fires after each successful access mutation — e.g. to refresh an inline access row. */
19
+ onSaved?: () => void;
20
+ /**
21
+ * Labels (display forms) of the shared attribute, enabling the per-grantee
22
+ * label-scope picker. Omit for objects without labels (e.g. facts). Ignored
23
+ * when `controller` is supplied (pass `labels` to {@link useObjectShare} instead).
24
+ */
25
+ labels?: IObjectShareLabel[];
26
+ /**
27
+ * Whether the object's labels are still loading. While true the Add action is
28
+ * disabled, so a grantee can't be added before its labels are known (a new
29
+ * grantee defaults to all labels, which can't be written until they resolve).
30
+ * Omit for objects without labels (e.g. facts).
31
+ */
32
+ labelsLoading?: boolean;
33
+ /**
34
+ * Whether loading the object's labels failed. While true every access-changing
35
+ * control (Add, row controls, general access) is disabled: the label set is
36
+ * unknown, so any access change would diff against an empty scope and silently
37
+ * orphan real per-label grants. Omit for objects without labels (e.g. facts).
38
+ * Ignored when `controller` is supplied (pass `labelsError` to
39
+ * {@link useObjectShare} instead).
40
+ */
41
+ labelsError?: boolean;
42
+ /**
43
+ * Escape hatch: supply a controller from {@link useObjectShare} to share its
44
+ * single access-list fetch with an inline summary row. When omitted, the
45
+ * dialog manages its own controller from `target`/`onSaved`/`labels`.
46
+ */
47
+ controller?: IObjectShareController;
48
+ }
49
+ /**
50
+ * Connected share dialog. Renders the main share modal, the add-grantee
51
+ * sub-dialog and the general-access confirm dialog, all driven by one
52
+ * controller. Each underlying dialog manages its own open state, so they can
53
+ * be safely co-mounted; focus, backdrop and portal lifecycles are owned by
54
+ * `UiModalDialog` inside the kit.
55
+ *
56
+ * Mount unconditionally and toggle via `isOpen`; the contents stay invisible
57
+ * while closed. For the common case pass plain props and let the dialog own its
58
+ * controller:
59
+ *
60
+ * ```tsx
61
+ * <ObjectShareDialog target={ref} objectTitle={title} isOpen={open} onClose={close} />
62
+ * ```
63
+ *
64
+ * @internal
65
+ */
66
+ export declare function ObjectShareDialog({ target, objectTitle, isOpen, onClose, onSaved, labels, labelsLoading, labelsError, controller }: IObjectShareDialogProps): import("react/jsx-runtime").JSX.Element;
67
+ //# sourceMappingURL=ObjectShareDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectShareDialog.d.ts","sourceRoot":"","sources":["../../src/share/ObjectShareDialog.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AAS1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAGpD;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACpC,gDAAgD;IAChD,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAC7C,wEAAwE;IACxE,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,MAAM,EAAE,OAAO,CAAC;IAChB,sFAAsF;IACtF,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,4FAA0F;IAC1F,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB;;;;OAIG;IACH,MAAM,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC7B;;;;;OAKG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACvC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAAC,EAC9B,MAAM,EACN,WAAW,EACX,MAAM,EACN,OAAO,EACP,OAAO,EACP,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACb,EAAE,uBAAuB,2CAwIzB"}