@stack-spot/ai-chat-widget 1.0.0-dev.1768586708953 → 1.0.0-dev.1768590034766

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stack-spot/ai-chat-widget",
3
- "version": "1.0.0-dev.1768586708953",
4
- "date": "Fri Jan 16 2026 18:05:14 GMT+0000 (Coordinated Universal Time)",
3
+ "version": "1.0.0-dev.1768590034766",
4
+ "date": "Fri Jan 16 2026 19:00:40 GMT+0000 (Coordinated Universal Time)",
5
5
  "dependencies": [
6
6
  {
7
7
  "name": "@stack-spot/app-metadata",
@@ -1 +1 @@
1
- {"version":3,"file":"TabManager.d.ts","sourceRoot":"","sources":["../../src/components/TabManager.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAGvC,UAAU,KAAK,CAAC,CAAC,EAAE,GAAG,SAAS,KAAK,CAAC,GAAG;IACtC;;OAEG;IACH,IAAI,EAAE,CAAC,EAAE,CAAC;IACV;;OAEG;IACH,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC;IACxB;;OAEG;IACH,MAAM,EAAE,GAAG,CAAC;IACZ;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB;;OAEG;IACH,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;CAC7C;AAqGD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,SAAS,KAAK,CAAC,GAAG,EACjD,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAY,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,2CAuEvF"}
1
+ {"version":3,"file":"TabManager.d.ts","sourceRoot":"","sources":["../../src/components/TabManager.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAGvC,UAAU,KAAK,CAAC,CAAC,EAAE,GAAG,SAAS,KAAK,CAAC,GAAG;IACtC;;OAEG;IACH,IAAI,EAAE,CAAC,EAAE,CAAC;IACV;;OAEG;IACH,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC;IACxB;;OAEG;IACH,MAAM,EAAE,GAAG,CAAC;IACZ;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;IACzB;;OAEG;IACH,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;CAC7C;AAqGD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,GAAG,SAAS,KAAK,CAAC,GAAG,EACjD,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAY,EAAE,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,2CAgFvF"}
@@ -5,7 +5,7 @@ import { Button, IconButton } from '@stack-spot/citric-react';
5
5
  import { listToClass, theme } from '@stack-spot/portal-theme';
6
6
  import { useTranslate } from '@stack-spot/portal-translate';
7
7
  import { last } from 'lodash';
8
- import { useCallback, useEffect, useMemo, useRef } from 'react';
8
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
9
9
  import { styled } from 'styled-components';
10
10
  import { FadingOverflow } from './FadingOverflow.js';
11
11
  // The size of extra buttons placed after the tabs.
@@ -115,6 +115,7 @@ export function TabManager({ active, tabs, keygen, onRemove, onSelect, renderLab
115
115
  const t = useTranslate(dictionary);
116
116
  const tabList = useRef(null);
117
117
  const lastNumberOfTabs = useRef(tabs.length);
118
+ const [ariaMessage, setAriaMessage] = useState('');
118
119
  const onClickTab = useCallback((event) => {
119
120
  const target = event.target;
120
121
  if (target.tagName === 'LI')
@@ -125,7 +126,11 @@ export function TabManager({ active, tabs, keygen, onRemove, onSelect, renderLab
125
126
  ? renderLabel(tab)
126
127
  : `${t.tab} ${idx + 1}`;
127
128
  return (_jsxs("li", { className: keygen(tab) === active ? 'active' : undefined, onClick: onClickTab, children: [_jsx("button", { className: "label", "aria-label": `${t.chat} ${tabLabel}`, onClick: () => onSelect(tab), children: _jsx(FadingOverflow, { children: renderLabel(tab) }) }), tabs.length > 1 &&
128
- _jsx(IconButton, { appearance: "text", icon: "TimesMini", "aria-label": `${tabLabel}`, title: t.close, onClick: () => onRemove(tab) })] }, keygen(tab)));
129
+ _jsx(IconButton, { appearance: "text", icon: "TimesMini", "aria-label": `${tabLabel}`, title: t.close, onClick: () => {
130
+ onRemove(tab), setAriaMessage(`${t.chat} ${tabLabel} ${t.closed}`);
131
+ // Clears the message after a short time to prevent it from repeating
132
+ setTimeout(() => setAriaMessage(''), 1000);
133
+ } })] }, keygen(tab)));
129
134
  }), [tabs, active]);
130
135
  const extras = useMemo(() => buttons.map(({ ariaLabel, title, label, onClick, group, icon, appearance, size, className, style, disabled }) => label
131
136
  ? _jsxs(Button, { style: { marginRight: '4px', ...style }, colorScheme: "light", size: "md", title: title || label, onClick: onClick, disabled: disabled, children: [_jsx(Icon, { group: group, icon: icon }), label] }, ariaLabel)
@@ -138,18 +143,20 @@ export function TabManager({ active, tabs, keygen, onRemove, onSelect, renderLab
138
143
  }
139
144
  lastNumberOfTabs.current = tabs.length;
140
145
  }, [tabs]);
141
- return (_jsxs(Tabs, { "$numberOfExtraButtons": buttons.length, className: "tabs", children: [_jsx(FadingOverflow, { className: "list-overflow", scroll: "arrows", enableHorizontalScrollWithVerticalWheel: true, children: _jsx("ul", { ref: tabList, children: tabItems }) }), extras] }));
146
+ return (_jsxs(Tabs, { "$numberOfExtraButtons": buttons.length, className: "tabs", children: [_jsx("div", { "aria-live": "polite", "aria-atomic": "true", style: { position: 'absolute', left: '-9999px', width: '1px', height: '1px', overflow: 'hidden' }, children: ariaMessage }), _jsx(FadingOverflow, { className: "list-overflow", scroll: "arrows", enableHorizontalScrollWithVerticalWheel: true, children: _jsx("ul", { ref: tabList, children: tabItems }) }), extras] }));
142
147
  }
143
148
  const dictionary = {
144
149
  en: {
145
150
  close: 'Close',
146
151
  tab: 'Tab',
147
152
  chat: 'Chat',
153
+ closed: 'Closed',
148
154
  },
149
155
  pt: {
150
156
  close: 'Fechar',
151
157
  tab: 'Aba',
152
158
  chat: 'Chat',
159
+ closed: 'Fechado',
153
160
  },
154
161
  };
155
162
  //# sourceMappingURL=TabManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabManager.js","sourceRoot":"","sources":["../../src/components/TabManager.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TabManager.js","sourceRoot":"","sources":["../../src/components/TabManager.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stack-spot/ai-chat-widget",
3
- "version": "1.0.0-dev.1768586708953",
3
+ "version": "1.0.0-dev.1768590034766",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stack-spot/ai-chat-widget",
3
- "version": "1.0.0-dev.1768586708953",
4
- "date": "Fri Jan 16 2026 18:05:14 GMT+0000 (Coordinated Universal Time)",
3
+ "version": "1.0.0-dev.1768590034766",
4
+ "date": "Fri Jan 16 2026 19:00:40 GMT+0000 (Coordinated Universal Time)",
5
5
  "dependencies": [
6
6
  {
7
7
  "name": "@stack-spot/app-metadata",
@@ -5,7 +5,7 @@ import { Button, IconButton } from '@stack-spot/citric-react'
5
5
  import { listToClass, theme } from '@stack-spot/portal-theme'
6
6
  import { Dictionary, useTranslate } from '@stack-spot/portal-translate'
7
7
  import { last } from 'lodash'
8
- import { useCallback, useEffect, useMemo, useRef } from 'react'
8
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react'
9
9
  import { styled } from 'styled-components'
10
10
  import { ButtonAction } from '../types'
11
11
  import { FadingOverflow } from './FadingOverflow'
@@ -152,6 +152,7 @@ export function TabManager<T, Key extends React.Key>(
152
152
  const t = useTranslate(dictionary)
153
153
  const tabList = useRef<HTMLUListElement>(null)
154
154
  const lastNumberOfTabs = useRef(tabs.length)
155
+ const [ariaMessage, setAriaMessage] = useState('')
155
156
 
156
157
  const onClickTab = useCallback((event: React.MouseEvent<HTMLElement, MouseEvent>) => {
157
158
  const target = event.target as HTMLElement
@@ -170,7 +171,10 @@ export function TabManager<T, Key extends React.Key>(
170
171
  </button>
171
172
  {tabs.length > 1 &&
172
173
  <IconButton appearance="text" icon="TimesMini" aria-label={`${tabLabel}`}
173
- title={t.close} onClick={() => onRemove(tab)} />}
174
+ title={t.close} onClick={() => { onRemove(tab), setAriaMessage(`${t.chat} ${tabLabel} ${t.closed}`)
175
+
176
+ // Clears the message after a short time to prevent it from repeating
177
+ setTimeout(() => setAriaMessage(''), 1000)}} />}
174
178
  </li>
175
179
  )}), [tabs, active])
176
180
 
@@ -212,6 +216,11 @@ export function TabManager<T, Key extends React.Key>(
212
216
 
213
217
  return (
214
218
  <Tabs $numberOfExtraButtons={buttons.length} className="tabs">
219
+ <div
220
+ aria-live="polite" aria-atomic="true"
221
+ style={{ position: 'absolute', left: '-9999px', width: '1px', height: '1px', overflow: 'hidden' }}>
222
+ {ariaMessage}
223
+ </div>
215
224
  <FadingOverflow className="list-overflow" scroll="arrows" enableHorizontalScrollWithVerticalWheel>
216
225
  <ul ref={tabList}>{tabItems}</ul>
217
226
  </FadingOverflow>
@@ -225,11 +234,13 @@ const dictionary = {
225
234
  close: 'Close',
226
235
  tab: 'Tab',
227
236
  chat: 'Chat',
237
+ closed: 'Closed',
228
238
  },
229
239
  pt: {
230
240
  close: 'Fechar',
231
241
  tab: 'Aba',
232
242
  chat: 'Chat',
243
+ closed: 'Fechado',
233
244
  },
234
245
  } satisfies Dictionary
235
246