botframework-webchat-component 4.19.0 → 4.19.1-main.20260529.6bcfcee
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_dtsroll-chunks/CwOuXmoL-botframework-webchat-styles.react.d.ts +68 -0
- package/dist/botframework-webchat-component.component.d.mts +1 -1
- package/dist/botframework-webchat-component.component.d.ts +1 -1
- package/dist/botframework-webchat-component.component.js +1 -1
- package/dist/botframework-webchat-component.component.mjs +1 -1
- package/dist/botframework-webchat-component.d.mts +1 -3
- package/dist/botframework-webchat-component.d.ts +1 -3
- package/dist/botframework-webchat-component.decorator.js +1 -1
- package/dist/botframework-webchat-component.decorator.js.map +1 -1
- package/dist/botframework-webchat-component.decorator.mjs +1 -1
- package/dist/botframework-webchat-component.decorator.mjs.map +1 -1
- package/dist/botframework-webchat-component.hook.js +1 -1
- package/dist/botframework-webchat-component.hook.mjs +1 -1
- package/dist/botframework-webchat-component.internal.d.mts +2 -6
- package/dist/botframework-webchat-component.internal.d.ts +2 -6
- package/dist/botframework-webchat-component.internal.js +1 -1
- package/dist/botframework-webchat-component.internal.js.map +1 -1
- package/dist/botframework-webchat-component.internal.mjs +1 -1
- package/dist/botframework-webchat-component.js +1 -1
- package/dist/botframework-webchat-component.js.map +1 -1
- package/dist/botframework-webchat-component.mjs +1 -1
- package/dist/botframework-webchat-component.mjs.map +1 -1
- package/dist/chunk-4EA5WZBJ.mjs +80 -0
- package/dist/chunk-4EA5WZBJ.mjs.map +1 -0
- package/dist/{chunk-H5YR7OLF.js → chunk-B2XHGOQH.js} +2 -2
- package/dist/{chunk-H5YR7OLF.js.map → chunk-B2XHGOQH.js.map} +1 -1
- package/dist/chunk-C2RHHZZQ.mjs +2 -0
- package/dist/chunk-C2RHHZZQ.mjs.map +1 -0
- package/dist/{chunk-TYPS3H4I.mjs → chunk-FIPA3BLZ.mjs} +2 -2
- package/dist/{chunk-TYPS3H4I.mjs.map → chunk-FIPA3BLZ.mjs.map} +1 -1
- package/dist/{chunk-LVVCSDZ4.mjs → chunk-HWDSXHRJ.mjs} +2 -2
- package/dist/chunk-JCX7GSY7.js +2 -0
- package/dist/{chunk-2R7BJ63Z.js.map → chunk-JCX7GSY7.js.map} +1 -1
- package/dist/{chunk-U6OWCHTQ.js → chunk-K4QNZHM5.js} +2 -2
- package/dist/chunk-K4QNZHM5.js.map +1 -0
- package/dist/{chunk-MOJMHOVH.js → chunk-OJOV52AD.js} +2 -2
- package/dist/{chunk-MOJMHOVH.js.map → chunk-OJOV52AD.js.map} +1 -1
- package/dist/{chunk-GTOP3WPD.mjs → chunk-WPWJFSZC.mjs} +2 -2
- package/dist/chunk-WPWJFSZC.mjs.map +1 -0
- package/dist/chunk-ZUKHLDZN.js +80 -0
- package/dist/chunk-ZUKHLDZN.js.map +1 -0
- package/dist/{component-BtSxgJS5.d.mts → component-BeCWAilk.d.mts} +34 -43
- package/dist/{component-Fyy8iCRE.d.ts → component-BtDQyqSP.d.ts} +34 -43
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/package.json +12 -14
- package/src/ActivityStatus/SendStatus/private/SendFailedRetry.tsx +31 -0
- package/src/BasicToast.js +4 -5
- package/src/BasicToaster.js +2 -3
- package/src/Composer.tsx +0 -20
- package/src/Utils/InlineMarkdown.tsx +121 -0
- package/src/Utils/LocalizedString.tsx +123 -124
- package/src/Utils/addTargetBlankToHyperlinks.spec.ts +52 -0
- package/src/Utils/addTargetBlankToHyperlinks.ts +14 -0
- package/src/boot/internal.ts +7 -2
- package/src/hooks/internal/WebChatUIContext.ts +0 -2
- package/src/hooks/useRenderMarkdownAsHTML.ts +5 -3
- package/src/hooks/useStreamingMarkdownWithDefinitions.ts +2 -2
- package/src/private/renderMarkdownInline.ts +19 -0
- package/src/providers/CustomElements/customElements/CodeBlock.ts +2 -2
- package/dist/_dtsroll-chunks/Cha1SOtx-botframework-webchat-styles.react.d.ts +0 -38
- package/dist/chunk-2R7BJ63Z.js +0 -2
- package/dist/chunk-A4NDFSZM.mjs +0 -77
- package/dist/chunk-A4NDFSZM.mjs.map +0 -1
- package/dist/chunk-CNTMOACS.mjs +0 -2
- package/dist/chunk-CNTMOACS.mjs.map +0 -1
- package/dist/chunk-GTOP3WPD.mjs.map +0 -1
- package/dist/chunk-U6OWCHTQ.js.map +0 -1
- package/dist/chunk-VDF6GQAL.js +0 -77
- package/dist/chunk-VDF6GQAL.js.map +0 -1
- package/src/ActivityStatus/SendStatus/private/SendFailedRetry.js +0 -28
- package/src/Utils/InlineMarkdown.js +0 -154
- package/src/Utils/addTargetBlankToHyperlinksMarkdown.js +0 -28
- package/src/Utils/addTargetBlankToHyperlinksMarkdown.spec.js +0 -45
- package/src/Utils/betterLinks.ts +0 -157
- package/src/Utils/parseDocumentFragmentFromString.ts +0 -9
- package/src/Utils/serializeDocumentFragmentIntoString.ts +0 -3
- package/src/Utils/updateMarkdownAttrs.js +0 -10
- package/src/Utils/updateMarkdownAttrs.spec.js +0 -71
- package/src/Utils/walkMarkdownTokens.js +0 -15
- package/src/Utils/walkMarkdownTokens.spec.js +0 -18
- package/src/hooks/internal/useInternalMarkdownIt.js +0 -7
- package/src/hooks/internal/useInternalRenderMarkdownInline.js +0 -9
- /package/dist/{chunk-LVVCSDZ4.mjs.map → chunk-HWDSXHRJ.mjs.map} +0 -0
package/dist/chunk-CNTMOACS.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{c as u,f as C}from"./chunk-I6DJ35K3.mjs";import re from"classnames";import{object as ce,optional as se,picklist as me,pipe as le,readonly as pe}from"valibot";import de from"react";function he(e,i){let o=Object.keys(e).reduce((t,s)=>{let[m,c]=s.split("--");if(!c)return t;let p=m;if(!i.includes(p))return t;let l=t.get(p);return l||(l=new Set,t.set(p,l)),l.add(c),t},new Map),n=Array.from(o.entries()).reduce((t,[s,m])=>{let c=Array.from(m);return c.length&&(t[s]=se(me(c))),t},{}),r=ce(n);return le(r,pe())}function k(e,i,o){let n=he(e,i);return{component:(t=>{let{className:s,...m}=t,c=u(n,t),p=C(e),l=Object.entries(c).map(([_,f])=>p[`${_}--${f}`]);return de.createElement(o,{className:re(s,l),...m})}),modifierPropsSchema:n}}function ue(e){let o=new DOMParser().parseFromString(e,"text/html"),n=o.createDocumentFragment();return n.append(...o.body.childNodes),n}function fe(e){return new XMLSerializer().serializeToString(e)}import{useMemo as Oe}from"react";import{useRefFrom as Ne}from"use-ref-from";import{useContext as Ve}from"react";import{createContext as Ae}from"react";import{hooks as be}from"botframework-webchat-api";import H,{memo as Te,useCallback as F,useEffect as ke,useMemo as D,useRef as $,useState as Me}from"react";import{useRefFrom as q}from"use-ref-from";import R,{Fragment as ge}from"react";import{literal as B,object as ve,optional as w,pipe as _e,readonly as xe,string as g,union as ye}from"valibot";import{useEffect as we}from"react";function M(){let{markAllAsRendered:e}=h();we(e)}function E(){return h().staticElementEntriesState}var Ce=_e(ve({"aria-label":w(g()),"aria-live":ye([B("assertive"),B("polite")]),"aria-roledescription":w(g()),className:w(g()),role:w(g()),textElementClassName:w(g())}),xe());function Se(e){let{"aria-label":i,"aria-live":o,"aria-roledescription":n,className:r,role:t,textElementClassName:s}=u(Ce,e),[m]=E();return M(),R.createElement("div",{"aria-label":i,"aria-live":o,"aria-roledescription":n,className:r,role:t},m.map(({element:c,key:p})=>typeof c=="string"?R.createElement("div",{"aria-atomic":!0,className:s,key:p},c):R.createElement(ge,{key:p},c)))}var z=Se;var{usePonyfill:Ee}=be,Re="polite",Pe=1e3,Le=({Provider:e})=>{let i=({"aria-label":o,"aria-live":n=Re,"aria-roledescription":r,children:t,className:s,fadeAfter:m=Pe,role:c,textElementClassName:p})=>{let[{clearTimeout:l,setTimeout:_}]=Ee(),[f,x]=Me([]),V=q(m),d=$(),y=$(1),T=q(f),O=F(()=>{T.current.length&&(d.current&&l(d.current),d.current=_(()=>{T.current.length&&x([])},V.current))},[l,V,d,x,_,T]);ke(()=>()=>d.current&&l(d.current),[l,d]);let N=F(ne=>{let ae=y.current;y.current=y.current+1,x(ie=>[...ie,{element:ne,key:ae}])},[y,x]),j=D(()=>Object.freeze([Object.freeze(f)]),[f]),te=D(()=>({markAllAsRendered:O,queueStaticElement:N,staticElementEntriesState:j}),[O,N,j]);return H.createElement(e,{value:te},H.createElement(z,{"aria-label":o,"aria-live":n,"aria-roledescription":r,className:s,role:c,textElementClassName:p}),t)};return i.displayName="LiveRegionTwinComposer",Te(i)},K=Le;var P=Ae(new Proxy({},{get(e,i){throw new Error(`botframework-webchat: LiveRegionTwinContext.${i} can only be used inside of <LiveRegionTwinComposer>.`)}})),Ie=K(P),Ze=Ie;function h(){return Ve(P)}function S(){return h().queueStaticElement}function Q(e,i){let o=Ne(e),n=S();Oe(()=>{let r=o?.current();r&&n(r)},[...i,o,n])}import{createContext as Ue,createRef as Xe,useContext as Ge,memo as Je}from"react";import Fe,{useCallback as De}from"react";import{useRefFrom as $e}from"use-ref-from";import Be from"@emotion/css/create-instance";import{useEffect as ze,useMemo as He}from"react";import je from"math-random";function L(){return je().toString(26).substr(2,5).replace(/\d/gu,e=>String.fromCharCode(e.charCodeAt(0)+65))}var v=[];function A(e,i){let o=He(()=>{let r=v.find(({sheet:t})=>t.nonce===e&&t.container===i)??Be({container:i,key:`webchat--css-${L()}`,nonce:e});return v.push(r),r},[i,e]);return ze(()=>()=>{let n=v.lastIndexOf(o);if(~n&&v.splice(n,1),!v.includes(o)&&o.sheet?.tags)for(let r of o.sheet.tags)r.remove()},[o]),o}import{hooks as qe}from"botframework-webchat-api";var{useStyleOptions:Ke}=qe,Qe=({Provider:e})=>({children:i,nonce:o})=>{let[{stylesRoot:n}]=Ke(),r=A(o,n),t=De(m=>r.css(m),[r]),s=$e(t);return Fe.createElement(e,{value:s},t&&i)},U=Qe;var X=Ue(new Proxy(Xe(),{get(){throw new Error("StyleToEmotionObjectContext was used without StyleToEmotionObjectComposer")}}));function We(){return Ge(X).current}var G=Je(U(X));G.displayName="StyleToEmotionObjectComposer";import Ye from"classnames";import eo,{memo as oo}from"react";import{literal as to,object as J,optional as b,pipe as W,readonly as Y,string as Z}from"valibot";var a={"icon--copy-code-checkmark":"w61aa0a_icon--copy-code-checkmark","icon--thumb-up":"w61aa0a_icon--thumb-up","icon--attachment-checkmark":"w61aa0a_icon--attachment-checkmark","appearance--text":"w61aa0a_appearance--text","component-icon":"w61aa0a_component-icon","icon--send":"w61aa0a_icon--send","icon--thumb-down-filled":"w61aa0a_icon--thumb-down-filled","icon--unchecked-circle":"w61aa0a_icon--unchecked-circle","icon--thumb-down":"w61aa0a_icon--thumb-down","direction--follow":"w61aa0a_direction--follow","icon--dismiss":"w61aa0a_icon--dismiss","icon--copy-code":"w61aa0a_icon--copy-code","icon--thumb-up-filled":"w61aa0a_icon--thumb-up-filled","icon--download":"w61aa0a_icon--download","icon--view-code":"w61aa0a_icon--view-code","icon--attachment":"w61aa0a_icon--attachment","icon--checkmark-circle":"w61aa0a_icon--checkmark-circle","icon--chevron":"w61aa0a_icon--chevron","direction--rtl":"w61aa0a_direction--rtl","icon--copy":"w61aa0a_icon--copy","icon--microphone":"w61aa0a_icon--microphone"},I=a,ht=a["icon--copy-code-checkmark"];var ut=a["icon--thumb-up"];var ft=a["icon--attachment-checkmark"];var wt=a["appearance--text"];var gt=a["component-icon"];var vt=a["icon--send"];var _t=a["icon--thumb-down-filled"];var xt=a["icon--unchecked-circle"];var yt=a["icon--thumb-down"];var Ct=a["direction--follow"];var St=a["icon--dismiss"];var bt=a["icon--copy-code"];var Tt=a["icon--thumb-up-filled"];var kt=a["icon--download"];var Mt=a["icon--view-code"];var Et=a["icon--attachment"];var Rt=a["icon--checkmark-circle"];var Pt=a["icon--chevron"];var Lt=a["direction--rtl"];var At=a["icon--copy"];var It=a["icon--microphone"];var ee=W(J({"aria-hidden":b(to("true")),"aria-label":b(Z()),className:b(Z()),role:b(Z())}),Y());function no(e){let{className:i,"aria-hidden":o,"aria-label":n,role:r}=u(ee,e),t=C(I);return eo.createElement("div",{"aria-hidden":o,"aria-label":n,className:Ye(t["component-icon"],i),role:r})}var{component:oe,modifierPropsSchema:ao}=k(I,["appearance","direction","icon"],no);oe.displayName="ComponentIcon";var io=W(J({...ee.entries,...ao.entries}),Y()),ro=oo(oe);export{We as a,G as b,k as c,io as d,ro as e,ue as f,fe as g,Ze as h,S as i,Q as j};
|
|
2
|
-
//# sourceMappingURL=chunk-CNTMOACS.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/Utils/createIconComponent.tsx","../src/Utils/parseDocumentFragmentFromString.ts","../src/Utils/serializeDocumentFragmentIntoString.ts","../src/providers/LiveRegionTwin/useLiveRegion.ts","../src/providers/LiveRegionTwin/private/useContext.ts","../src/providers/LiveRegionTwin/private/LiveRegionTwinComposer.ts","../src/providers/LiveRegionTwin/private/createLiveRegionTwinComposer.tsx","../src/providers/LiveRegionTwin/private/LiveRegionTwinContainer.tsx","../src/providers/LiveRegionTwin/private/useMarkAllAsRenderedEffect.ts","../src/providers/LiveRegionTwin/private/useStaticElementEntries.ts","../src/providers/LiveRegionTwin/useQueueStaticElement.ts","../src/hooks/internal/styleToEmotionObject/private/StyleToEmotionObjectComposer.tsx","../src/hooks/internal/styleToEmotionObject/private/createStyleToEmotionObjectComposer.tsx","../src/hooks/internal/useEmotion.ts","../src/Utils/createCSSKey.js","../src/Icon/ComponentIcon.tsx","unplugin-lightningcss:/__w/1/s/BotFramework-WebChat/packages/component/src/Icon/ComponentIcon.module.css?css_module"],"sourcesContent":["import { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport cx from 'classnames';\nimport {\n object,\n optional,\n picklist,\n pipe,\n readonly,\n type BaseIssue,\n type BaseSchema,\n type OptionalSchema,\n type PicklistSchema\n} from 'valibot';\nimport React, { type ComponentType } from 'react';\n\ntype CSSModuleClasses = { readonly [key: string]: any };\n\ntype Prefixes<T> = T extends `${infer P}--${string}` ? P : never;\n\ntype SuffixesOf<Prefix extends string, T> = T extends `${Prefix}--${infer S}` ? S : never;\n\ntype ModifierMap<T> = {\n [P in Prefixes<keyof T>]?: SuffixesOf<P, keyof T>;\n};\n\ntype SafeModifierList<TCSSModuleClasses> = keyof ModifierMap<TCSSModuleClasses> extends never\n ? string\n : keyof ModifierMap<TCSSModuleClasses>;\n\ntype ModifierSchemaEntry = OptionalSchema<PicklistSchema<readonly [string, ...string[]], undefined>, undefined>;\n\nexport type IconModifierPropsSchema<TModifiers extends string> = BaseSchema<\n Partial<Record<TModifiers, string>>,\n Readonly<Partial<Record<TModifiers, string>>>,\n BaseIssue<unknown>\n> & {\n readonly entries: Partial<Record<TModifiers, ModifierSchemaEntry>>;\n};\n\nfunction createPropsSchema<\n const TCSSModuleClasses extends CSSModuleClasses,\n const TModifiers extends SafeModifierList<TCSSModuleClasses>\n>(styles: TCSSModuleClasses, modifiers: TModifiers[]): IconModifierPropsSchema<TModifiers> {\n const props = Object.keys(styles).reduce((acc, key) => {\n const [rawBase, modifier] = key.split('--') as [string, string | undefined];\n\n if (!modifier) {\n return acc;\n }\n\n const base = rawBase as TModifiers;\n\n if (!modifiers.includes(base)) {\n return acc;\n }\n\n let modifierSet = acc.get(base);\n\n if (!modifierSet) {\n modifierSet = new Set<string>();\n acc.set(base, modifierSet);\n }\n\n modifierSet.add(modifier);\n\n return acc;\n }, new Map<TModifiers, Set<string>>());\n\n const schemaEntries = Array.from(props.entries()).reduce<Partial<Record<TModifiers, ModifierSchemaEntry>>>(\n (acc, [base, modifierSet]) => {\n const values = Array.from(modifierSet);\n\n if (values.length) {\n // eslint-disable-next-line security/detect-object-injection\n acc[base] = optional(picklist(values as unknown as readonly [string, ...string[]])) as ModifierSchemaEntry;\n }\n\n return acc;\n },\n {}\n );\n\n const schema = object(schemaEntries as Partial<Record<TModifiers, ModifierSchemaEntry>>);\n\n return pipe(schema, readonly()) as IconModifierPropsSchema<TModifiers>;\n}\n\nexport default function createIconComponent<\n const TProps extends { className?: string | undefined },\n const TModifiers extends SafeModifierList<TCSSModuleClasses>,\n const TCSSModuleClasses extends CSSModuleClasses\n>(\n styles: TCSSModuleClasses,\n modifiers: TModifiers[],\n BaseIcon: ComponentType<TProps>\n): {\n component: ComponentType<\n (TModifiers extends Prefixes<keyof TCSSModuleClasses>\n ? Pick<ModifierMap<TCSSModuleClasses>, TModifiers>\n : Partial<Record<TModifiers, string>>) &\n TProps\n >;\n modifierPropsSchema: IconModifierPropsSchema<TModifiers>;\n} {\n type CSSModuleModifiers = ModifierMap<TCSSModuleClasses>;\n\n // Do not bail if no CSS modules TypeScript plugin is provided.\n type FinalCSSModuleModifiers = TModifiers extends keyof CSSModuleModifiers\n ? Pick<CSSModuleModifiers, TModifiers>\n : Partial<Record<TModifiers, string>>;\n\n const modifierPropsSchema = createPropsSchema(styles, modifiers);\n\n const component = (props => {\n const { className, ...rest } = props;\n const validatedProps = validateProps(modifierPropsSchema, props);\n const classNames = useStyles(styles);\n\n const classes = Object.entries(validatedProps).map(([key, value]) => classNames[`${key}--${value}`]);\n\n return <BaseIcon className={cx(className, classes)} {...(rest as TProps)} />;\n }) as ComponentType<FinalCSSModuleModifiers & TProps>;\n\n return { component, modifierPropsSchema };\n}\n","export default function parseDocumentFragmentFromString(html: string): DocumentFragment {\n const parser = new DOMParser();\n const parsedDocument = parser.parseFromString(html, 'text/html');\n const fragment = parsedDocument.createDocumentFragment();\n\n fragment.append(...parsedDocument.body.childNodes);\n\n return fragment;\n}\n","export default function serializeDocumentFragmentIntoString(documentFragment: DocumentFragment): string {\n return new XMLSerializer().serializeToString(documentFragment);\n}\n","import { useMemo, type DependencyList, type ReactElement } from 'react';\nimport { useRefFrom } from 'use-ref-from';\n\nimport useQueueStaticElement from './useQueueStaticElement';\n\n/**\n * Pushes a node to the live region.\n *\n * Once the node is pushed, it cannot be undoed.\n *\n * @param createNode Create node to be pushed to the live region.\n * @param deps Will push a new node if the values in the list change.\n */\nexport default function useLiveRegion(\n createNode: () => false | null | ReactElement | string | undefined,\n deps: DependencyList\n) {\n const createNodeRef = useRefFrom(createNode);\n const queueStaticElement = useQueueStaticElement();\n\n useMemo(() => {\n const node = createNodeRef?.current();\n\n node && queueStaticElement(node);\n // eslint-disable-next-line react-hooks/exhaustive-deps, react-hooks/use-memo\n }, [...deps, createNodeRef, queueStaticElement]);\n}\n","import { useContext } from 'react';\n\nimport { LiveRegionTwinContext, type LiveRegionTwinContextType } from './LiveRegionTwinComposer';\n\nexport default function useLiveRegionTwinContext(): LiveRegionTwinContextType {\n const contextValue = useContext(LiveRegionTwinContext);\n\n return contextValue;\n}\n","import { createContext } from 'react';\nimport createLiveRegionTwinComposer from './createLiveRegionTwinComposer';\n\nimport type { StaticElement, StaticElementEntry } from './types';\n\nexport type LiveRegionTwinContextType = {\n markAllAsRendered: () => void;\n queueStaticElement: (element: StaticElement) => void;\n staticElementEntriesState: readonly [readonly StaticElementEntry[]];\n};\n\nexport const LiveRegionTwinContext = createContext<LiveRegionTwinContextType>(\n new Proxy(\n {},\n {\n get(_target, key: string) {\n throw new Error(\n `botframework-webchat: LiveRegionTwinContext.${key} can only be used inside of <LiveRegionTwinComposer>.`\n );\n }\n }\n ) as unknown as LiveRegionTwinContextType\n);\n\nconst LiveRegionTwinComposer = createLiveRegionTwinComposer(LiveRegionTwinContext);\n\nexport default LiveRegionTwinComposer;\n","import { hooks } from 'botframework-webchat-api';\nimport React, { memo, useCallback, useEffect, useMemo, useRef, useState, type Context, type ReactNode } from 'react';\nimport { useRefFrom } from 'use-ref-from';\n\nimport { type LiveRegionTwinContextType } from './LiveRegionTwinComposer';\nimport LiveRegionTwinContainer from './LiveRegionTwinContainer';\n\nimport type { StaticElement, StaticElementEntry } from './types';\n\nconst { usePonyfill } = hooks;\n\nconst DEFAULT_ARIA_LIVE = 'polite';\nconst DEFAULT_FADE_AFTER = 1000;\n\ntype LiveRegionTwinComposerProps = Readonly<{\n /** Optional \"aria-label\" attribute for the live region twin container. */\n 'aria-label'?: string;\n\n /** \"aria-live\" attribute for the live region twin container, defaults to `'polite'`. */\n 'aria-live'?: 'assertive' | 'polite';\n\n /** Optional \"aria-roledescription\" attribute for the live region twin container. */\n 'aria-roledescription'?: string;\n\n /** Optional \"className\" attribute for the live region twin container. */\n className?: string;\n\n /**\n * Static elements will fade out after this timeout value specified in milliseconds, defaults to `1000`.\n *\n * When lowering this value, make sure screen reader can continue to pick up new static elements before fading out.\n *\n * If this prop is updated, it will be reflected in next queueing elements.\n */\n fadeAfter?: number;\n\n /** Optional \"role\" attribute for the live region twin container. */\n role?: string;\n\n /** Optional \"className\" attribute for static text element. */\n textElementClassName?: string;\n\n children?: ReactNode | undefined;\n}>;\n\n/**\n * Live region twin is an UI component for queueing texts or elements to the screen reader using\n * a container element with `aria-live` attribute set.\n *\n * After the text is rendered and queued, it will be removed to reduce burden on the DOM tree.\n * Currently, we assume the assistive technologies should pick up the text within 1 second of rendering.\n * This value is configurable.\n *\n * By default, the live region is visible. If is is not desirable, the caller can use `className` prop to\n * hide its visuals.\n */\nconst createLiveRegionTwinComposer = ({ Provider }: Context<LiveRegionTwinContextType>) => {\n const LiveRegionTwinComposer = ({\n 'aria-label': ariaLabel,\n 'aria-live': ariaLive = DEFAULT_ARIA_LIVE,\n 'aria-roledescription': ariaRoleDescription,\n children,\n className,\n fadeAfter = DEFAULT_FADE_AFTER,\n role,\n textElementClassName\n }: LiveRegionTwinComposerProps) => {\n const [{ clearTimeout, setTimeout }] = usePonyfill();\n const [staticElementEntries, setStaticElementEntries] = useState<StaticElementEntry[]>([]);\n const fadeAfterRef = useRefFrom(fadeAfter);\n const markAllAsRenderedTimeoutIdRef = useRef<any>();\n const nextKeyRef = useRef<number>(1);\n\n const staticElementEntriesRef = useRefFrom(staticElementEntries);\n\n // This function is called by an effect hook `useMarkAllAsRenderedEffect`, it must be designed with converging in mind.\n // To prevent infinite render loop, after multiple calls to this function, it should eventually no-op.\n const markAllAsRendered = useCallback<() => void>(() => {\n if (!staticElementEntriesRef.current.length) {\n // Nothing to remove.\n return;\n }\n\n // When removing each element one-by-one based on an individual timeout, Narrator would narrate them twice occasionally.\n // Possibly it think some elements that is not removed during the current cycle, are new elements and queued them twice.\n // Thus, we are removing all at once to prevent bugs in Narrator.\n markAllAsRenderedTimeoutIdRef.current && clearTimeout(markAllAsRenderedTimeoutIdRef.current);\n\n markAllAsRenderedTimeoutIdRef.current = setTimeout(() => {\n // We are playing safe by using value ref to check its length here.\n // If we are certain that `setStaticElements(emptyArray => emptyArray)` is a no-op,\n // we could replace it with just the setter function.\n staticElementEntriesRef.current.length && setStaticElementEntries([]);\n }, fadeAfterRef.current);\n }, [\n clearTimeout,\n fadeAfterRef,\n markAllAsRenderedTimeoutIdRef,\n setStaticElementEntries,\n setTimeout,\n staticElementEntriesRef\n ]);\n\n // When this component is unmounting, make sure all future `setTimeout` are cleared and should not be fired.\n useEffect(\n () => () => markAllAsRenderedTimeoutIdRef.current && clearTimeout(markAllAsRenderedTimeoutIdRef.current),\n [clearTimeout, markAllAsRenderedTimeoutIdRef]\n );\n\n const queueStaticElement = useCallback<(staticElement: StaticElement) => void>(\n (element: StaticElement): void => {\n const key = nextKeyRef.current;\n\n nextKeyRef.current = nextKeyRef.current + 1;\n\n setStaticElementEntries(entries => [...entries, { element, key }]);\n },\n [nextKeyRef, setStaticElementEntries]\n );\n\n const staticElementEntriesState = useMemo<readonly [readonly StaticElementEntry[]]>(\n () => Object.freeze([Object.freeze(staticElementEntries)]) as readonly [readonly StaticElementEntry[]],\n [staticElementEntries]\n );\n\n const context = useMemo(\n () => ({\n markAllAsRendered,\n queueStaticElement,\n staticElementEntriesState\n }),\n [markAllAsRendered, queueStaticElement, staticElementEntriesState]\n );\n\n return (\n <Provider value={context}>\n <LiveRegionTwinContainer\n aria-label={ariaLabel}\n aria-live={ariaLive}\n aria-roledescription={ariaRoleDescription}\n className={className}\n role={role}\n textElementClassName={textElementClassName}\n />\n {children}\n </Provider>\n );\n };\n\n LiveRegionTwinComposer.displayName = 'LiveRegionTwinComposer';\n\n return memo(LiveRegionTwinComposer);\n};\n\nexport default createLiveRegionTwinComposer;\n","import { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport React, { Fragment } from 'react';\nimport { literal, object, optional, pipe, readonly, string, union, type InferInput } from 'valibot';\n\nimport useMarkAllAsRenderedEffect from './useMarkAllAsRenderedEffect';\nimport useStaticElementEntries from './useStaticElementEntries';\n\nconst liveRegionTwinContainerPropsSchema = pipe(\n object({\n 'aria-label': optional(string()),\n 'aria-live': union([literal('assertive'), literal('polite')]),\n 'aria-roledescription': optional(string()),\n className: optional(string()),\n role: optional(string()),\n textElementClassName: optional(string())\n }),\n readonly()\n);\n\ntype LiveRegionTwinContainerProps = InferInput<typeof liveRegionTwinContainerPropsSchema>;\n\n// This container is marked as private because we assume there is only one instance under the <LiveRegionTwinContext>.\nfunction LiveRegionTwinContainer(props: LiveRegionTwinContainerProps) {\n const {\n 'aria-label': ariaLabel,\n 'aria-live': ariaLive,\n 'aria-roledescription': ariaRoleDescription,\n className,\n role,\n textElementClassName\n } = validateProps(liveRegionTwinContainerPropsSchema, props);\n\n const [staticElementEntries] = useStaticElementEntries();\n\n // We assume there is only one instance under the <LiveRegionTwinContext>.\n // The assumption made us safe to mark everything is rendered.\n // In contrary, if we have 0-to-many at different time, we may falsely mark something as rendered.\n useMarkAllAsRenderedEffect();\n\n return (\n <div\n aria-label={ariaLabel}\n aria-live={ariaLive}\n aria-roledescription={ariaRoleDescription}\n className={className}\n role={role}\n >\n {staticElementEntries.map(({ element, key }) => {\n if (typeof element === 'string') {\n return (\n <div aria-atomic={true} className={textElementClassName} key={key}>\n {element}\n </div>\n );\n }\n\n return <Fragment key={key}>{element}</Fragment>;\n })}\n </div>\n );\n}\n\nexport default LiveRegionTwinContainer;\nexport { liveRegionTwinContainerPropsSchema, type LiveRegionTwinContainerProps };\n","import { useEffect } from 'react';\n\nimport useLiveRegionTwinContext from './useContext';\n\n// After calling `markAllAsRendered`, it will cause a re-render.\n// Since `markAllAsRendered` is a converging function, it will eventually stop re-rendering.\n// We call this hook `useXXXEffect` for us to abstract the business logic here.\nexport default function useMarkAllAsRenderedEffect(): void {\n const { markAllAsRendered } = useLiveRegionTwinContext();\n\n // We did not set the `deps` argument as we want to run this function on every render.\n useEffect(markAllAsRendered);\n}\n","import useLiveRegionTwinContext from './useContext';\n\nimport type { StaticElementEntry } from './types';\n\nexport default function useStaticElementEntries(): readonly [readonly StaticElementEntry[]] {\n return useLiveRegionTwinContext().staticElementEntriesState;\n}\n","import useLiveRegionTwinContext from './private/useContext';\n\nimport type { StaticElement } from './private/types';\n\n/**\n * Queues a static element to the live region.\n *\n * After the element is queued, screen reader will eventually narrate it and it cannot be changed.\n */\nexport default function useQueueStaticElement(): (element: StaticElement) => void {\n return useLiveRegionTwinContext().queueStaticElement;\n}\n","import { createContext, createRef, type RefObject, useContext, memo } from 'react';\nimport createStyleToEmotionObjectComposer from './createStyleToEmotionObjectComposer';\n\nexport type StyleToEmotionObjectContextType = RefObject<(...args: unknown[]) => string>;\n\nconst styleToEmotionObjectContext = createContext<StyleToEmotionObjectContextType>(\n new Proxy(createRef(), {\n get() {\n throw new Error('StyleToEmotionObjectContext was used without StyleToEmotionObjectComposer');\n }\n })\n);\n\nexport function useStyleToEmotionObject() {\n return useContext(styleToEmotionObjectContext).current;\n}\n\nexport const StyleToEmotionObjectComposer = memo(createStyleToEmotionObjectComposer(styleToEmotionObjectContext));\n\nStyleToEmotionObjectComposer.displayName = 'StyleToEmotionObjectComposer';\n","import React, { type ReactNode, useCallback } from 'react';\nimport { useRefFrom } from 'use-ref-from';\nimport useEmotion from '../../useEmotion';\nimport { type StyleToEmotionObjectContextType } from './StyleToEmotionObjectComposer';\nimport { hooks } from 'botframework-webchat-api';\n\nconst { useStyleOptions } = hooks;\n\nconst createStyleToEmotionObjectComposer =\n ({ Provider }: React.Context<StyleToEmotionObjectContextType>) =>\n ({ children, nonce }: Readonly<{ children: ReactNode; nonce: string }>) => {\n const [{ stylesRoot }] = useStyleOptions();\n\n const emotion = useEmotion(nonce, stylesRoot);\n const styleToEmotionObject = useCallback(style => emotion.css(style), [emotion]);\n\n const styleToEmotionObjectRef = useRefFrom(styleToEmotionObject);\n\n return <Provider value={styleToEmotionObjectRef}>{styleToEmotionObject && children}</Provider>;\n };\n\nexport default createStyleToEmotionObjectComposer;\n","import createEmotion from '@emotion/css/create-instance';\nimport { useEffect, useMemo } from 'react';\nimport createCSSKey from '../../Utils/createCSSKey';\n\nconst sharedEmotionInstances = [];\n\nexport default function useEmotion(nonce?: string, container?: Node) {\n const emotion = useMemo(() => {\n const sharedEmotion = sharedEmotionInstances.find(\n ({ sheet }) => sheet.nonce === nonce && sheet.container === container\n );\n const emotion = sharedEmotion ?? createEmotion({ container, key: `webchat--css-${createCSSKey()}`, nonce });\n\n sharedEmotionInstances.push(emotion);\n\n return emotion;\n }, [container, nonce]);\n\n useEffect(\n () => () => {\n const index = sharedEmotionInstances.lastIndexOf(emotion);\n\n // Reduce ref count for the specific emotion instance.\n ~index && sharedEmotionInstances.splice(index, 1);\n\n if (!sharedEmotionInstances.includes(emotion) && emotion.sheet?.tags) {\n // No more hooks use this emotion object, we can clean up the container for stuff we added.\n for (const child of emotion.sheet.tags) {\n child.remove();\n }\n }\n },\n [emotion]\n );\n\n return emotion;\n}\n","/* eslint no-magic-numbers: [\"error\", { \"ignore\": [0, 2, 5, 26, 65] }] */\n\nimport random from 'math-random';\n\nexport default function useCSSKey() {\n return random()\n .toString(26)\n .substr(2, 5)\n .replace(/\\d/gu, value => String.fromCharCode(value.charCodeAt(0) + 65));\n}\n","import { validateProps } from '@msinternal/botframework-webchat-react-valibot';\nimport { useStyles } from '@msinternal/botframework-webchat-styles/react';\nimport cx from 'classnames';\nimport React, { memo } from 'react';\nimport { literal, object, optional, pipe, readonly, string, type InferInput } from 'valibot';\n\nimport createIconComponent from '../Utils/createIconComponent';\nimport styles from './ComponentIcon.module.css';\n\nconst baseComponentIconPropsSchema = pipe(\n object({\n 'aria-hidden': optional(literal('true')),\n 'aria-label': optional(string()),\n className: optional(string()),\n role: optional(string())\n }),\n readonly()\n);\n\nfunction BaseComponentIcon(props: InferInput<typeof baseComponentIconPropsSchema>) {\n const {\n className,\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n role\n } = validateProps(baseComponentIconPropsSchema, props);\n\n const classNames = useStyles(styles);\n\n return (\n <div\n aria-hidden={ariaHidden}\n aria-label={ariaLabel}\n className={cx(classNames['component-icon'], className)}\n role={role}\n />\n );\n}\n\nconst { component: ComponentIcon, modifierPropsSchema: componentIconModifiersPropsSchema } = createIconComponent(\n styles,\n ['appearance', 'direction', 'icon'],\n BaseComponentIcon\n);\n\nComponentIcon.displayName = 'ComponentIcon';\n\nconst componentIconPropsSchema = pipe(\n object({\n ...baseComponentIconPropsSchema.entries,\n ...componentIconModifiersPropsSchema.entries\n }),\n readonly()\n);\n\ntype ComponentIconProps = InferInput<typeof componentIconPropsSchema>;\n\nexport default memo(ComponentIcon);\nexport { componentIconPropsSchema, type ComponentIconProps };\n","import \"/__w/1/s/BotFramework-WebChat/packages/component/src/Icon/ComponentIcon.module_built.css\";\nconst classes = {\"icon--copy-code-checkmark\":\"w61aa0a_icon--copy-code-checkmark\",\"icon--thumb-up\":\"w61aa0a_icon--thumb-up\",\"icon--attachment-checkmark\":\"w61aa0a_icon--attachment-checkmark\",\"appearance--text\":\"w61aa0a_appearance--text\",\"component-icon\":\"w61aa0a_component-icon\",\"icon--send\":\"w61aa0a_icon--send\",\"icon--thumb-down-filled\":\"w61aa0a_icon--thumb-down-filled\",\"icon--unchecked-circle\":\"w61aa0a_icon--unchecked-circle\",\"icon--thumb-down\":\"w61aa0a_icon--thumb-down\",\"direction--follow\":\"w61aa0a_direction--follow\",\"icon--dismiss\":\"w61aa0a_icon--dismiss\",\"icon--copy-code\":\"w61aa0a_icon--copy-code\",\"icon--thumb-up-filled\":\"w61aa0a_icon--thumb-up-filled\",\"icon--download\":\"w61aa0a_icon--download\",\"icon--view-code\":\"w61aa0a_icon--view-code\",\"icon--attachment\":\"w61aa0a_icon--attachment\",\"icon--checkmark-circle\":\"w61aa0a_icon--checkmark-circle\",\"icon--chevron\":\"w61aa0a_icon--chevron\",\"direction--rtl\":\"w61aa0a_direction--rtl\",\"icon--copy\":\"w61aa0a_icon--copy\",\"icon--microphone\":\"w61aa0a_icon--microphone\"}\nexport default classes\n\nconst _icon__copy_code_checkmark0 = classes[\"icon--copy-code-checkmark\"]\nexport { _icon__copy_code_checkmark0 as \"icon--copy-code-checkmark\" }\n\nconst _icon__thumb_up0 = classes[\"icon--thumb-up\"]\nexport { _icon__thumb_up0 as \"icon--thumb-up\" }\n\nconst _icon__attachment_checkmark0 = classes[\"icon--attachment-checkmark\"]\nexport { _icon__attachment_checkmark0 as \"icon--attachment-checkmark\" }\n\nconst _appearance__text0 = classes[\"appearance--text\"]\nexport { _appearance__text0 as \"appearance--text\" }\n\nconst _component_icon0 = classes[\"component-icon\"]\nexport { _component_icon0 as \"component-icon\" }\n\nconst _icon__send0 = classes[\"icon--send\"]\nexport { _icon__send0 as \"icon--send\" }\n\nconst _icon__thumb_down_filled0 = classes[\"icon--thumb-down-filled\"]\nexport { _icon__thumb_down_filled0 as \"icon--thumb-down-filled\" }\n\nconst _icon__unchecked_circle0 = classes[\"icon--unchecked-circle\"]\nexport { _icon__unchecked_circle0 as \"icon--unchecked-circle\" }\n\nconst _icon__thumb_down0 = classes[\"icon--thumb-down\"]\nexport { _icon__thumb_down0 as \"icon--thumb-down\" }\n\nconst _direction__follow0 = classes[\"direction--follow\"]\nexport { _direction__follow0 as \"direction--follow\" }\n\nconst _icon__dismiss0 = classes[\"icon--dismiss\"]\nexport { _icon__dismiss0 as \"icon--dismiss\" }\n\nconst _icon__copy_code0 = classes[\"icon--copy-code\"]\nexport { _icon__copy_code0 as \"icon--copy-code\" }\n\nconst _icon__thumb_up_filled0 = classes[\"icon--thumb-up-filled\"]\nexport { _icon__thumb_up_filled0 as \"icon--thumb-up-filled\" }\n\nconst _icon__download0 = classes[\"icon--download\"]\nexport { _icon__download0 as \"icon--download\" }\n\nconst _icon__view_code0 = classes[\"icon--view-code\"]\nexport { _icon__view_code0 as \"icon--view-code\" }\n\nconst _icon__attachment0 = classes[\"icon--attachment\"]\nexport { _icon__attachment0 as \"icon--attachment\" }\n\nconst _icon__checkmark_circle0 = classes[\"icon--checkmark-circle\"]\nexport { _icon__checkmark_circle0 as \"icon--checkmark-circle\" }\n\nconst _icon__chevron0 = classes[\"icon--chevron\"]\nexport { _icon__chevron0 as \"icon--chevron\" }\n\nconst _direction__rtl0 = classes[\"direction--rtl\"]\nexport { _direction__rtl0 as \"direction--rtl\" }\n\nconst _icon__copy0 = classes[\"icon--copy\"]\nexport { _icon__copy0 as \"icon--copy\" }\n\nconst _icon__microphone0 = classes[\"icon--microphone\"]\nexport { _icon__microphone0 as \"icon--microphone\" }\n"],"mappings":"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","names":["cx","object","optional","picklist","pipe","readonly","React","createPropsSchema","styles","modifiers","props","acc","key","rawBase","modifier","base","modifierSet","schemaEntries","values","schema","createIconComponent","BaseIcon","modifierPropsSchema","className","rest","validatedProps","o","classNames","St","classes","value","parseDocumentFragmentFromString","html","parsedDocument","fragment","serializeDocumentFragmentIntoString","documentFragment","useMemo","useRefFrom","useContext","createContext","hooks","React","memo","useCallback","useEffect","useMemo","useRef","useState","useRefFrom","React","Fragment","literal","object","optional","pipe","readonly","string","union","useEffect","useMarkAllAsRenderedEffect","markAllAsRendered","useLiveRegionTwinContext","useEffect","useStaticElementEntries","useLiveRegionTwinContext","liveRegionTwinContainerPropsSchema","pipe","object","optional","string","union","literal","readonly","LiveRegionTwinContainer","props","ariaLabel","ariaLive","ariaRoleDescription","className","role","textElementClassName","o","staticElementEntries","useStaticElementEntries","useMarkAllAsRenderedEffect","React","element","key","Fragment","LiveRegionTwinContainer_default","usePonyfill","hooks","DEFAULT_ARIA_LIVE","DEFAULT_FADE_AFTER","createLiveRegionTwinComposer","Provider","LiveRegionTwinComposer","ariaLabel","ariaLive","ariaRoleDescription","children","className","fadeAfter","role","textElementClassName","clearTimeout","setTimeout","staticElementEntries","setStaticElementEntries","useState","fadeAfterRef","useRefFrom","markAllAsRenderedTimeoutIdRef","useRef","nextKeyRef","staticElementEntriesRef","markAllAsRendered","useCallback","useEffect","queueStaticElement","element","key","entries","staticElementEntriesState","useMemo","context","React","LiveRegionTwinContainer_default","memo","createLiveRegionTwinComposer_default","LiveRegionTwinContext","createContext","_target","key","LiveRegionTwinComposer","createLiveRegionTwinComposer_default","LiveRegionTwinComposer_default","useLiveRegionTwinContext","useContext","LiveRegionTwinContext","useQueueStaticElement","useLiveRegionTwinContext","useLiveRegion","createNode","deps","createNodeRef","useRefFrom","queueStaticElement","useQueueStaticElement","useMemo","node","createContext","createRef","useContext","memo","React","useCallback","useRefFrom","createEmotion","useEffect","useMemo","random","useCSSKey","value","sharedEmotionInstances","useEmotion","nonce","container","emotion","useMemo","sheet","createEmotion","useCSSKey","useEffect","index","child","hooks","useStyleOptions","createStyleToEmotionObjectComposer","Provider","children","nonce","stylesRoot","emotion","useEmotion","styleToEmotionObject","useCallback","style","styleToEmotionObjectRef","useRefFrom","React","createStyleToEmotionObjectComposer_default","styleToEmotionObjectContext","createContext","createRef","useStyleToEmotionObject","useContext","StyleToEmotionObjectComposer","memo","createStyleToEmotionObjectComposer_default","cx","React","memo","literal","object","optional","pipe","readonly","string","classes","ComponentIcon_module_default","_icon__copy_code_checkmark0","_icon__thumb_up0","classes","_icon__attachment_checkmark0","classes","_appearance__text0","classes","_component_icon0","classes","_icon__send0","classes","_icon__thumb_down_filled0","classes","_icon__unchecked_circle0","classes","_icon__thumb_down0","classes","_direction__follow0","classes","_icon__dismiss0","classes","_icon__copy_code0","classes","_icon__thumb_up_filled0","classes","_icon__download0","classes","_icon__view_code0","classes","_icon__attachment0","classes","_icon__checkmark_circle0","classes","_icon__chevron0","classes","_direction__rtl0","classes","_icon__copy0","classes","_icon__microphone0","classes","baseComponentIconPropsSchema","pipe","object","optional","literal","string","readonly","BaseComponentIcon","props","className","ariaHidden","ariaLabel","role","o","classNames","St","ComponentIcon_module_default","React","cx","ComponentIcon","componentIconModifiersPropsSchema","createIconComponent","componentIconPropsSchema","ComponentIcon_default","memo"]}
|