@epam/ai-dial-settings-panel 1.3.0-dev.32 → 1.3.0-dev.322

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.
@@ -0,0 +1,13 @@
1
+ import { FC } from 'react';
2
+ import { ExtensionServiceItem, ExtensionsTypography } from '../../models/extensions-props';
3
+ export declare const EXTENSIONS_GRID_COLUMNS = "desktop:grid-cols-[minmax(12rem,1.25fr)_minmax(0,1fr)_minmax(8rem,10rem)]";
4
+ /** Props for `ExtensionServiceRow`. */
5
+ export interface ExtensionServiceRowProps {
6
+ /** The service rendered by this row. */
7
+ row: ExtensionServiceItem;
8
+ /** Typography class overrides. */
9
+ typography: ExtensionsTypography;
10
+ }
11
+ /** One service row of the Extensions table: an avatar with an optional corner warning badge, the service name, the description, and the host-supplied trailing action or limited-access badge. */
12
+ export declare const ExtensionServiceRow: FC<ExtensionServiceRowProps>;
13
+ //# sourceMappingURL=ExtensionServiceRow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtensionServiceRow.d.ts","sourceRoot":"","sources":["../../../src/components/ExtensionsSection/ExtensionServiceRow.tsx"],"names":[],"mappings":"AASA,OAAO,EAAS,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AACvC,OAAO,KAAK,EACV,oBAAoB,EACpB,oBAAoB,EACrB,MAAM,+BAA+B,CAAC;AASvC,eAAO,MAAM,uBAAuB,8EACyC,CAAC;AAI9E,uCAAuC;AACvC,MAAM,WAAW,wBAAwB;IACvC,wCAAwC;IACxC,GAAG,EAAE,oBAAoB,CAAC;IAC1B,kCAAkC;IAClC,UAAU,EAAE,oBAAoB,CAAC;CAClC;AAED,kMAAkM;AAClM,eAAO,MAAM,mBAAmB,EAAE,EAAE,CAAC,wBAAwB,CAyH5D,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { FC } from 'react';
2
+ import { ExtensionsSectionProps } from '../../models/extensions-props';
3
+ /** Extensions settings table: a Name / Description / sr-only Actions header row plus one row per service. */
4
+ export declare const ExtensionsSection: FC<ExtensionsSectionProps>;
5
+ //# sourceMappingURL=ExtensionsSection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExtensionsSection.d.ts","sourceRoot":"","sources":["../../../src/components/ExtensionsSection/ExtensionsSection.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAO5E,6GAA6G;AAC7G,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,sBAAsB,CAuExD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SettingsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SettingsPanel/SettingsPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,kFAAkF;AAClF,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CAwChD,CAAC"}
1
+ {"version":3,"file":"SettingsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/SettingsPanel/SettingsPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAG5E,kFAAkF;AAClF,eAAO,MAAM,aAAa,EAAE,EAAE,CAAC,kBAAkB,CA+ChD,CAAC"}
package/index.css CHANGED
@@ -1 +1,3 @@
1
- .flex{display:flex}.min-h-0{min-height:0}.grow{flex-grow:1}.flex-col{flex-direction:column}.bg-layer-raised{background-color:var(--bg-layer-raised,#fcfcfc)}
1
+ ._container_1a0g4_1{background:var(--ext-container-bg,var(--bg-layer-raised,#fcfcfc))}._columnHeader_1a0g4_5{color:var(--ext-column-header,var(--text-secondary,#57647a))}._headerRow_1a0g4_9{border-block-end:.5px solid var(--ext-row-divider,var(--stroke-tertiary,#e0e6f0))}._row_1a0g4_16{border-block-start:.5px solid var(--ext-row-divider,var(--stroke-tertiary,#e0e6f0))}._name_1a0g4_20{color:var(--ext-name,var(--text-primary,#161b2d))}._description_1a0g4_24{color:var(--ext-description,var(--text-secondary,#57647a))}._limitedAccessDescription_1a0g4_28{color:var(--ext-description,var(--text-primary,#161b2d))}._warningBadge_1a0g4_32{color:var(--ext-warning-badge,var(--text-warning-icon,#eec840))}._panel_12dqa_1{background:var(--sp-bg,var(--bg-layer-raised,#fcfcfc))}
2
+ /*$vite$:1*//*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
3
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.inset-e-\[-10px\]{inset-inline-end:-10px}.bottom-\[-3px\]{bottom:-3px}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.min-h-0{min-height:0}.min-w-0{min-width:0}.flex-1{flex:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.rounded-xl{border-radius:.75rem}.px-4{padding-inline:1rem}.px-6{padding-inline:1.5rem}.py-3{padding-block:.75rem}.text-end{text-align:end}.text-start{text-align:start}.wrap-break-word{overflow-wrap:break-word}.shadow-md{--tw-shadow:0 10px 30px 9px var(--tw-shadow-color,var(--shadow-md-2,var(--shadow-md,#2764d90f))), 0 0 8px 2px var(--tw-shadow-color,var(--shadow-md-1,#2764d90a));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}@media (min-width:1280px){.desktop\:grid{display:grid}.desktop\:min-h-16{min-height:4rem}.desktop\:grid-cols-\[minmax\(12rem\,1\.25fr\)_minmax\(0\,1fr\)_minmax\(8rem\,10rem\)\]{grid-template-columns:minmax(12rem,1.25fr) minmax(0,1fr) minmax(8rem,10rem)}.desktop\:items-center{align-items:center}.desktop\:gap-4{gap:1rem}.desktop\:px-6{padding-inline:1.5rem}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}
package/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
+ export { ExtensionsSection } from './components/ExtensionsSection/ExtensionsSection';
2
+ export type { ExtensionServiceItem, ExtensionsColors, ExtensionsLabels, ExtensionsSectionProps, ExtensionsStyles, ExtensionsTypography, } from './models/extensions-props';
1
3
  export { SettingsPanel } from './components/SettingsPanel/SettingsPanel';
2
- export type { SettingsPanelItem, SettingsPanelProps, SettingsPanelStyles, SettingsPanelTypography, } from './models/settings-panel-props';
4
+ export type { SettingsPanelItem, SettingsPanelProps, SettingsPanelColors, SettingsPanelStyles, SettingsPanelTypography, } from './models/settings-panel-props';
3
5
  export { SETTINGS_PANEL_CLASS } from './constants/public-class-names';
4
6
  //# sourceMappingURL=index.d.ts.map
package/index.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACrF,YAAY,EACV,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,GACrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,YAAY,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC"}
package/index.js CHANGED
@@ -1,29 +1,155 @@
1
- import { mergeClasses as e } from "@epam/ai-dial-chat-shared";
2
- import { TabOrientation as t, Tabs as n } from "@epam/ai-dial-ui-kit";
3
- import { jsx as r } from "react/jsx-runtime";
4
- //#region src/constants/public-class-names.ts
5
- var i = {
1
+ import { InitialsAvatar as e, buildCssVars as t, mergeClasses as n } from "@epam/ai-dial-chat-shared";
2
+ import { Badge as r, BadgeColor as i, BadgeVariant as a, DIAL_ICON_SIZE as o, TabOrientation as s, Tabs as c, Tooltip as l } from "@epam/ai-dial-ui-kit";
3
+ import { IconAlertTriangleFilled as u } from "@tabler/icons-react";
4
+ import { useId as d } from "react";
5
+ import { jsx as f, jsxs as p } from "react/jsx-runtime";
6
+ var m = {
7
+ container: "_container_1a0g4_1",
8
+ columnHeader: "_columnHeader_1a0g4_5",
9
+ headerRow: "_headerRow_1a0g4_9",
10
+ row: "_row_1a0g4_16",
11
+ name: "_name_1a0g4_20",
12
+ description: "_description_1a0g4_24",
13
+ limitedAccessDescription: "_limitedAccessDescription_1a0g4_28",
14
+ warningBadge: "_warningBadge_1a0g4_32"
15
+ }, h = "desktop:grid-cols-[minmax(12rem,1.25fr)_minmax(0,1fr)_minmax(8rem,10rem)]", g = 40, _ = ({ row: t, typography: s }) => {
16
+ let { nameClassName: c = "dial-small-semi-text", descriptionClassName: _ = "dial-small-text", tooltipTitleClassName: v = "dial-small-semi-text", tooltipDescriptionClassName: y = "dial-small-text", avatarInitialsClassName: b = "dial-h2-text" } = s, { displayName: x, description: S, avatarColor: C, isWarningVisible: w, limitedAccessLabel: T, limitedAccessTooltipTitle: E, limitedAccessTooltipDescription: D, action: O } = t, k = T != null, A = d();
17
+ return /* @__PURE__ */ p("div", {
18
+ role: "row",
19
+ className: n("grid grid-cols-1 gap-2 px-4 py-3 desktop:min-h-16 desktop:items-center desktop:gap-4 desktop:px-6", h, m.row),
20
+ children: [
21
+ /* @__PURE__ */ p("div", {
22
+ role: "cell",
23
+ className: "flex min-w-0 items-center gap-3",
24
+ children: [/* @__PURE__ */ p("div", {
25
+ className: "relative shrink-0",
26
+ children: [/* @__PURE__ */ f(e, {
27
+ name: x,
28
+ size: g,
29
+ color: C,
30
+ textClassName: b
31
+ }), w && /* @__PURE__ */ f("span", {
32
+ className: n("absolute inset-e-[-10px] bottom-[-3px] flex", m.warningBadge),
33
+ children: /* @__PURE__ */ f(u, {
34
+ size: o.MD,
35
+ "aria-hidden": !0
36
+ })
37
+ })]
38
+ }), /* @__PURE__ */ f("span", {
39
+ className: n(c, "min-w-0 flex-1 truncate", m.name),
40
+ children: x
41
+ })]
42
+ }),
43
+ /* @__PURE__ */ f("div", {
44
+ role: "cell",
45
+ className: "flex min-w-0 items-center",
46
+ children: /* @__PURE__ */ f("span", {
47
+ className: n(_, "min-w-0 wrap-break-word", m.description),
48
+ children: S
49
+ })
50
+ }),
51
+ /* @__PURE__ */ f("div", {
52
+ role: "cell",
53
+ className: "flex min-w-0 items-center justify-end",
54
+ children: k ? /* @__PURE__ */ p("div", {
55
+ className: "flex min-w-0 flex-col items-end gap-1",
56
+ children: [/* @__PURE__ */ f(l, {
57
+ tooltip: /* @__PURE__ */ p("span", {
58
+ className: "flex flex-col gap-1 text-start",
59
+ children: [/* @__PURE__ */ f("span", {
60
+ className: v,
61
+ children: E
62
+ }), /* @__PURE__ */ f("span", {
63
+ className: y,
64
+ children: D
65
+ })]
66
+ }),
67
+ children: /* @__PURE__ */ f(r, {
68
+ label: T,
69
+ variant: a.Filled,
70
+ color: i.Red,
71
+ "aria-describedby": A
72
+ })
73
+ }), /* @__PURE__ */ f("span", {
74
+ id: A,
75
+ className: n(_, "min-w-0 text-end wrap-break-word", m.limitedAccessDescription),
76
+ children: D
77
+ })]
78
+ }) : O
79
+ })
80
+ ]
81
+ });
82
+ }, v = ({ rows: e, labels: r, styles: i }) => {
83
+ let { colors: a } = i ?? {}, o = {
84
+ columnHeaderClassName: "dial-caption-lead-semi-text",
85
+ ...i?.typography
86
+ }, s = t({
87
+ "--ext-container-bg": a?.containerBackground,
88
+ "--ext-column-header": a?.columnHeaderColor,
89
+ "--ext-row-divider": a?.rowDividerColor,
90
+ "--ext-name": a?.nameColor,
91
+ "--ext-description": a?.descriptionColor,
92
+ "--ext-warning-badge": a?.warningBadgeColor
93
+ });
94
+ return /* @__PURE__ */ p("div", {
95
+ role: "table",
96
+ "aria-label": r.tableAriaLabel,
97
+ className: n("overflow-hidden rounded-xl shadow-md", m.container),
98
+ style: s,
99
+ children: [/* @__PURE__ */ p("div", {
100
+ role: "row",
101
+ className: n("hidden gap-4 px-6 py-3 desktop:grid desktop:items-center", h, m.headerRow),
102
+ children: [
103
+ /* @__PURE__ */ f("span", {
104
+ role: "columnheader",
105
+ className: n("text-start", o.columnHeaderClassName, m.columnHeader),
106
+ children: r.nameColumnLabel
107
+ }),
108
+ /* @__PURE__ */ f("span", {
109
+ role: "columnheader",
110
+ className: n("text-start", o.columnHeaderClassName, m.columnHeader),
111
+ children: r.descriptionColumnLabel
112
+ }),
113
+ /* @__PURE__ */ f("span", {
114
+ role: "columnheader",
115
+ children: /* @__PURE__ */ f("span", {
116
+ className: "sr-only",
117
+ children: r.actionsColumnLabel
118
+ })
119
+ })
120
+ ]
121
+ }), /* @__PURE__ */ f("div", {
122
+ role: "rowgroup",
123
+ children: e.map((e) => /* @__PURE__ */ f(_, {
124
+ row: e,
125
+ typography: o
126
+ }, e.id))
127
+ })]
128
+ });
129
+ }, y = {
6
130
  panel: "dial-settings-panel-panel",
7
131
  tabList: "dial-settings-panel-tab-list",
8
132
  tab: "dial-settings-panel-tab"
9
- }, a = ({ items: a, activeId: o, onSelect: s, sectionLabel: c, styles: l, className: u }) => {
10
- let { sectionLabelClassName: d = "dial-h1-text" } = l?.typography ?? {};
11
- return /* @__PURE__ */ r("div", {
12
- className: e("flex min-h-0 flex-col bg-layer-raised", u, i.panel),
13
- children: /* @__PURE__ */ r(n, {
14
- orientation: t.Vertical,
15
- sectionLabel: c,
16
- tabs: a,
17
- activeTabId: o,
133
+ }, b = { panel: "_panel_12dqa_1" }, x = ({ items: e, activeId: r, onSelect: i, sectionLabel: a, ariaLabel: o, styles: l, className: u }) => {
134
+ let { sectionLabelClassName: d = "dial-h1-text" } = l?.typography ?? {}, p = t({ "--sp-bg": l?.colors?.background });
135
+ return /* @__PURE__ */ f("div", {
136
+ style: p,
137
+ className: n("flex min-h-0 flex-col", b.panel, u, y.panel),
138
+ children: /* @__PURE__ */ f(c, {
139
+ orientation: s.Vertical,
140
+ sectionLabel: a,
141
+ ariaLabel: o,
142
+ tabs: e,
143
+ activeTabId: r,
18
144
  onTabChange: (e) => {
19
- e !== o && s(e);
145
+ e !== r && i(e);
20
146
  },
21
147
  className: "min-h-0 grow",
22
- tabListClassName: i.tabList,
23
- tabClassName: i.tab,
148
+ tabListClassName: y.tabList,
149
+ tabClassName: y.tab,
24
150
  sectionLabelClassName: d
25
151
  })
26
152
  });
27
153
  };
28
154
  //#endregion
29
- export { i as SETTINGS_PANEL_CLASS, a as SettingsPanel };
155
+ export { v as ExtensionsSection, y as SETTINGS_PANEL_CLASS, x as SettingsPanel };
@@ -0,0 +1,81 @@
1
+ import { AvatarColorClasses } from '@epam/ai-dial-ui-kit';
2
+ import { ReactNode } from 'react';
3
+ /** One extension service rendered as one row of the Extensions table. */
4
+ export interface ExtensionServiceItem {
5
+ /** Stable identifier for the row. */
6
+ id: string;
7
+ /** Service display name shown beside the avatar and used for its initials. */
8
+ displayName: string;
9
+ /** Explicit avatar colour pair (an `AVATAR_PALETTE` entry from the host) overriding the name-derived colour; omitted keeps the deterministic pick. */
10
+ avatarColor?: AvatarColorClasses;
11
+ /** Localized service description shown in the Description cell. */
12
+ description: string;
13
+ /** Whether the disconnected-state warning badge renders on the avatar's corner. */
14
+ isWarningVisible: boolean;
15
+ /** Label of the red limited-access `Badge` that replaces the row's action while the host reports limited access; the row renders no badge when omitted. */
16
+ limitedAccessLabel?: string;
17
+ /** Bold title line of the limited-access badge's tooltip. */
18
+ limitedAccessTooltipTitle?: string;
19
+ /** Explanation shown below the limited-access badge and repeated in its tooltip; also referenced by the badge's aria-describedby. */
20
+ limitedAccessTooltipDescription?: string;
21
+ /** The row's trailing action (e.g. a Log in / Log out button), owned by the host; ignored while `limitedAccessLabel` is set. */
22
+ action: ReactNode;
23
+ }
24
+ /** Localized strings shared by the Extensions table shell. */
25
+ export interface ExtensionsLabels {
26
+ /** Accessible name of the table. */
27
+ tableAriaLabel: string;
28
+ /** Column header text for the Name column. */
29
+ nameColumnLabel: string;
30
+ /** Column header text for the Description column. */
31
+ descriptionColumnLabel: string;
32
+ /** Screen-reader-only column header text for the visually empty Actions column. */
33
+ actionsColumnLabel: string;
34
+ }
35
+ /** Color overrides for `ExtensionsSection`, applied as CSS custom properties. */
36
+ export interface ExtensionsColors {
37
+ /** Table container background. Fallback: `--bg-layer-raised`. */
38
+ containerBackground?: string;
39
+ /** Column header text color. Fallback: `--text-secondary`. */
40
+ columnHeaderColor?: string;
41
+ /** Row divider color. Fallback: `--stroke-tertiary`. */
42
+ rowDividerColor?: string;
43
+ /** Service name text color. Fallback: `--text-primary`. */
44
+ nameColor?: string;
45
+ /** Service and limited-access description text color. Fallback: `--text-secondary` for the service description, `--text-primary` for the limited-access explanation. */
46
+ descriptionColor?: string;
47
+ /** Warning badge color. Fallback: `--text-warning-icon`. */
48
+ warningBadgeColor?: string;
49
+ }
50
+ /** Typography class overrides for `ExtensionsSection`. */
51
+ export interface ExtensionsTypography {
52
+ /** CSS class for the column headers. Defaults to `'dial-caption-lead-semi-text'`. */
53
+ columnHeaderClassName?: string;
54
+ /** CSS class for the service name. Defaults to `'dial-small-semi-text'`. */
55
+ nameClassName?: string;
56
+ /** CSS class for the service description and limited-access explanation. Defaults to `'dial-small-text'`. */
57
+ descriptionClassName?: string;
58
+ /** CSS class for the limited-access tooltip title. Defaults to `'dial-small-semi-text'`. */
59
+ tooltipTitleClassName?: string;
60
+ /** CSS class for the limited-access tooltip description. Defaults to `'dial-small-text'`. */
61
+ tooltipDescriptionClassName?: string;
62
+ /** CSS class for the initials in a service avatar without an icon. Defaults to `'dial-h2-text'`. */
63
+ avatarInitialsClassName?: string;
64
+ }
65
+ /** Style overrides accepted by `ExtensionsSection`. */
66
+ export interface ExtensionsStyles {
67
+ /** Color overrides applied as CSS custom properties. */
68
+ colors?: ExtensionsColors;
69
+ /** Typography class overrides. */
70
+ typography?: ExtensionsTypography;
71
+ }
72
+ /** Props for `ExtensionsSection`. */
73
+ export interface ExtensionsSectionProps {
74
+ /** Services to render, in display order. Each renders as one table row. */
75
+ rows: ExtensionServiceItem[];
76
+ /** Localized strings shared by the table shell. */
77
+ labels: ExtensionsLabels;
78
+ /** Style overrides applied as CSS custom properties and typography class overrides. */
79
+ styles?: ExtensionsStyles;
80
+ }
81
+ //# sourceMappingURL=extensions-props.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extensions-props.d.ts","sourceRoot":"","sources":["../../src/models/extensions-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,8EAA8E;IAC9E,WAAW,EAAE,MAAM,CAAC;IACpB,sJAAsJ;IACtJ,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,mEAAmE;IACnE,WAAW,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,gBAAgB,EAAE,OAAO,CAAC;IAC1B,2JAA2J;IAC3J,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,6DAA6D;IAC7D,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,qIAAqI;IACrI,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,gIAAgI;IAChI,MAAM,EAAE,SAAS,CAAC;CACnB;AAED,8DAA8D;AAC9D,MAAM,WAAW,gBAAgB;IAC/B,oCAAoC;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,qDAAqD;IACrD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,mFAAmF;IACnF,kBAAkB,EAAE,MAAM,CAAC;CAC5B;AAED,iFAAiF;AACjF,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8DAA8D;IAC9D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wKAAwK;IACxK,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4DAA4D;IAC5D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,0DAA0D;AAC1D,MAAM,WAAW,oBAAoB;IACnC,qFAAqF;IACrF,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6GAA6G;IAC7G,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,4FAA4F;IAC5F,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,6FAA6F;IAC7F,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,oGAAoG;IACpG,uBAAuB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,uDAAuD;AACvD,MAAM,WAAW,gBAAgB;IAC/B,wDAAwD;IACxD,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,kCAAkC;IAClC,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAED,qCAAqC;AACrC,MAAM,WAAW,sBAAsB;IACrC,2EAA2E;IAC3E,IAAI,EAAE,oBAAoB,EAAE,CAAC;IAC7B,mDAAmD;IACnD,MAAM,EAAE,gBAAgB,CAAC;IACzB,uFAAuF;IACvF,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B"}
@@ -15,8 +15,15 @@ export interface SettingsPanelTypography {
15
15
  /** Typography class applied to the section header. Defaults to `'dial-h1-text'`. */
16
16
  sectionLabelClassName?: string;
17
17
  }
18
+ /** Color overrides for the {@link SettingsPanel} component, applied as CSS custom properties. */
19
+ export interface SettingsPanelColors {
20
+ /** Panel background color. Defaults to `--bg-layer-raised`. */
21
+ background?: string;
22
+ }
18
23
  /** Style overrides for the {@link SettingsPanel} component. */
19
24
  export interface SettingsPanelStyles {
25
+ /** Color overrides. */
26
+ colors?: SettingsPanelColors;
20
27
  /** Typography overrides. */
21
28
  typography?: SettingsPanelTypography;
22
29
  }
@@ -30,6 +37,8 @@ export interface SettingsPanelProps {
30
37
  onSelect: (id: string) => void;
31
38
  /** Already-localized header text rendered above the item list. Omit to render no header. */
32
39
  sectionLabel?: string;
40
+ /** Already-localized accessible name for the item list, for a panel rendered without `sectionLabel`. */
41
+ ariaLabel?: string;
33
42
  /** Style overrides. */
34
43
  styles?: SettingsPanelStyles;
35
44
  /** Additional CSS class applied to the root element. */
@@ -1 +1 @@
1
- {"version":3,"file":"settings-panel-props.d.ts","sourceRoot":"","sources":["../../src/models/settings-panel-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2IAA2I;IAC3I,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,oEAAoE;AACpE,MAAM,WAAW,uBAAuB;IACtC,oFAAoF;IACpF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IAClC,4BAA4B;IAC5B,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC;AAED,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,iGAAiG;IACjG,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uBAAuB;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
1
+ {"version":3,"file":"settings-panel-props.d.ts","sourceRoot":"","sources":["../../src/models/settings-panel-props.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,iDAAiD;AACjD,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,EAAE,EAAE,MAAM,CAAC;IACX,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,2IAA2I;IAC3I,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,oEAAoE;AACpE,MAAM,WAAW,uBAAuB;IACtC,oFAAoF;IACpF,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,iGAAiG;AACjG,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,+DAA+D;AAC/D,MAAM,WAAW,mBAAmB;IAClC,uBAAuB;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,4BAA4B;IAC5B,UAAU,CAAC,EAAE,uBAAuB,CAAC;CACtC;AAED,uCAAuC;AACvC,MAAM,WAAW,kBAAkB;IACjC,qCAAqC;IACrC,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,2CAA2C;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,iGAAiG;IACjG,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,4FAA4F;IAC5F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wGAAwG;IACxG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uBAAuB;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,wDAAwD;IACxD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@epam/ai-dial-settings-panel",
3
- "description": "Presentational vertical settings navigation panel with icon-labeled rows and active-row highlighting",
4
- "version": "1.3.0-dev.32",
3
+ "description": "Presentational settings surfaces: a vertical settings navigation panel and the Extensions services table",
4
+ "version": "1.3.0-dev.322",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
7
7
  "main": "./index.js",
@@ -16,9 +16,12 @@
16
16
  "default": "./index.js"
17
17
  }
18
18
  },
19
+ "dependencies": {
20
+ "@tabler/icons-react": "^3.50.0"
21
+ },
19
22
  "peerDependencies": {
20
- "@epam/ai-dial-chat-shared": "1.3.0-dev.32",
21
- "@epam/ai-dial-ui-kit": "^0.15.3",
23
+ "@epam/ai-dial-chat-shared": "1.3.0-dev.322",
24
+ "@epam/ai-dial-ui-kit": "^0.16.0-dev.72",
22
25
  "react": "^19.2.8"
23
26
  },
24
27
  "repository": {