@nlxai/touchpoint-ui 1.2.6 → 1.2.7-alpha.0

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 (76) hide show
  1. package/build/App.d.ts +20 -0
  2. package/build/ProviderStack.d.ts +10 -0
  3. package/build/assets/index-B9Yzt2if.js +233 -0
  4. package/build/assets/index-BbXI3y3Q.css +1 -0
  5. package/build/bidirectional/analyzePageForms.d.ts +35 -0
  6. package/build/bidirectional/automaticContext.d.ts +12 -0
  7. package/build/bidirectional/commandHandler.d.ts +5 -0
  8. package/build/bidirectional/debug.d.ts +1 -0
  9. package/build/components/ErrorMessage.d.ts +4 -0
  10. package/build/components/FeedbackComment.d.ts +6 -0
  11. package/build/components/FullscreenError.d.ts +2 -0
  12. package/build/components/FullscreenVoice.d.ts +32 -0
  13. package/build/components/Header.d.ts +20 -0
  14. package/build/components/Input.d.ts +14 -0
  15. package/build/components/Layout.d.ts +23 -0
  16. package/build/components/Messages.d.ts +33 -0
  17. package/build/components/Notice.d.ts +4 -0
  18. package/build/components/Ripple.d.ts +9 -0
  19. package/build/components/RiveAnimation.d.ts +4 -0
  20. package/build/components/SafeMarkdown.d.ts +4 -0
  21. package/build/components/Settings.d.ts +10 -0
  22. package/build/components/Theme.d.ts +4 -0
  23. package/build/components/VoiceMini.d.ts +13 -0
  24. package/build/components/VoiceModalities.d.ts +11 -0
  25. package/build/components/defaultModalities/DefaultCard.d.ts +3 -0
  26. package/build/components/defaultModalities/DefaultCarousel.d.ts +6 -0
  27. package/build/components/defaultModalities/DefaultDateInput.d.ts +5 -0
  28. package/build/components/defaultModalities/shared.d.ts +20 -0
  29. package/build/components/ui/Carousel.d.ts +26 -0
  30. package/build/components/ui/CustomCard.d.ts +101 -0
  31. package/build/components/ui/DateInput.d.ts +30 -0
  32. package/build/components/ui/IconButton.d.ts +68 -0
  33. package/build/components/ui/Icons.d.ts +63 -0
  34. package/build/components/ui/LaunchButton.d.ts +13 -0
  35. package/build/components/ui/LightDarkToggle.d.ts +47 -0
  36. package/build/components/ui/Loader.d.ts +7 -0
  37. package/build/components/ui/MessageButton.d.ts +58 -0
  38. package/build/components/ui/PicturesContainer.d.ts +9 -0
  39. package/build/components/ui/Radio.d.ts +14 -0
  40. package/build/components/ui/TextButton.d.ts +46 -0
  41. package/build/components/ui/Typography.d.ts +29 -0
  42. package/build/components/ui/ViewMediaModal.d.ts +8 -0
  43. package/build/design-system.d.ts +1 -0
  44. package/build/favicon.ico +0 -0
  45. package/build/feedback.d.ts +38 -0
  46. package/build/index.d.ts +63 -0
  47. package/build/index.html +13 -0
  48. package/build/interface.d.ts +569 -0
  49. package/build/mocks/MockText.d.ts +10 -0
  50. package/build/mocks/MockVoice.d.ts +10 -0
  51. package/build/mocks/MockVoiceMini.d.ts +8 -0
  52. package/build/mocks/shared.d.ts +5 -0
  53. package/build/preview.d.ts +10 -0
  54. package/build/types.d.ts +5 -0
  55. package/build/utils/useAppRoot.d.ts +3 -0
  56. package/build/utils/useCopy.d.ts +4 -0
  57. package/build/utils/useTailwindMediaQuery.d.ts +1 -0
  58. package/build/voice.d.ts +70 -0
  59. package/index.html +43 -47
  60. package/lib/ProviderStack.d.ts +0 -21
  61. package/lib/components/FullscreenVoice.d.ts +4 -6
  62. package/lib/components/Layout.d.ts +23 -0
  63. package/lib/components/VoiceModalities.d.ts +11 -0
  64. package/lib/components/defaultModalities/index.d.ts +2 -0
  65. package/lib/components/ui/Radio.d.ts +14 -0
  66. package/lib/design-system/LightDarkToggle.d.ts +50 -0
  67. package/lib/design-system/index.d.ts +1 -0
  68. package/lib/index.js +11516 -11445
  69. package/lib/index.umd.js +82 -82
  70. package/lib/mocks/MockText.d.ts +10 -0
  71. package/lib/mocks/MockVoice.d.ts +10 -0
  72. package/lib/mocks/MockVoiceMini.d.ts +8 -0
  73. package/lib/mocks/shared.d.ts +5 -0
  74. package/package.json +3 -2
  75. package/vite.config.ts +61 -32
  76. package/lib/design-system.d.ts +0 -0
@@ -0,0 +1 @@
1
+ /*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */@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-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--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;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-content:"";--glow-opacity:0%}}}@layer theme{:root,:host{--color-gray-200:oklch(92.8% .006 264.531);--color-black:#000;--spacing:.25rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--font-weight-normal:400;--font-weight-semibold:600;--font-weight-bold:700;--radius-2xl:1rem;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--blur-sm:8px;--blur-md:12px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--font-sans:inherit;--backdrop-blur-overlay:48px;--container-content:640px;--radius-inner:inherit;--radius-outer:inherit;--z-index-touchpoint:1000;--z-index-launch-button:100;--color-primary:inherit;--color-primary-90:inherit;--color-primary-80:inherit;--color-primary-60:inherit;--color-primary-40:inherit;--color-primary-20:inherit;--color-primary-10:inherit;--color-primary-5:inherit;--color-primary-1:inherit;--color-secondary:inherit;--color-secondary-90:inherit;--color-secondary-80:inherit;--color-secondary-60:inherit;--color-secondary-40:inherit;--color-secondary-20:inherit;--color-secondary-10:inherit;--color-secondary-5:inherit;--color-secondary-1:inherit;--color-accent:inherit;--color-accent-20:inherit;--color-background:inherit;--color-overlay:inherit;--color-warning-primary:inherit;--color-warning-secondary:inherit;--color-error-primary:inherit;--color-error-secondary:inherit;--animate-shimmer:shimmer 1.5s linear infinite}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before,::backdrop{border-color:var(--color-gray-200,currentcolor)}::file-selector-button{border-color:var(--color-gray-200,currentcolor)}button:not(:disabled),[role=button]:not(:disabled){cursor:pointer}*{font-family:var(--font-family)!important}}@layer components;@layer utilities{.\@container\/main{container:main/inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.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}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:calc(var(--spacing)*0)}.inset-x-0{inset-inline:calc(var(--spacing)*0)}.-top-2{top:calc(var(--spacing)*-2)}.top-0{top:calc(var(--spacing)*0)}.top-1\/2{top:50%}.right-0{right:calc(var(--spacing)*0)}.right-2{right:calc(var(--spacing)*2)}.bottom-2{bottom:calc(var(--spacing)*2)}.left-1{left:calc(var(--spacing)*1)}.left-1\/2{left:50%}.z-10{z-index:10}.z-\[-1\]{z-index:-1}.z-launch-button{z-index:var(--z-index-launch-button)}.z-touchpoint{z-index:var(--z-index-touchpoint)}.col-span-2{grid-column:span 2/span 2}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.-mx-2{margin-inline:calc(var(--spacing)*-2)}.mx-2{margin-inline:calc(var(--spacing)*2)}.mx-auto{margin-inline:auto}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-4{margin-top:calc(var(--spacing)*4)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-10{margin-right:calc(var(--spacing)*10)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-3{margin-left:calc(var(--spacing)*3)}.ml-auto{margin-left:auto}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.h-3{height:calc(var(--spacing)*3)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-20{height:calc(var(--spacing)*20)}.h-24{height:calc(var(--spacing)*24)}.h-52{height:calc(var(--spacing)*52)}.h-64{height:calc(var(--spacing)*64)}.h-72{height:calc(var(--spacing)*72)}.h-\[1px\]{height:1px}.h-\[128px\]{height:128px}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-\[40vh\]{max-height:40vh}.max-h-\[360px\]{max-height:360px}.min-h-full{min-height:100%}.w-3{width:calc(var(--spacing)*3)}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-8{width:calc(var(--spacing)*8)}.w-10{width:calc(var(--spacing)*10)}.w-14{width:calc(var(--spacing)*14)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-72{width:calc(var(--spacing)*72)}.w-80{width:calc(var(--spacing)*80)}.w-\[128px\]{width:128px}.w-\[calc\(100vw-16px\)\]{width:calc(100vw - 16px)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[220px\]{max-width:220px}.max-w-\[360px\]{max-width:360px}.max-w-content{max-width:var(--container-content)}.max-w-sm{max-width:var(--container-sm)}.flex-none{flex:none}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-7{--tw-translate-x:calc(var(--spacing)*7);translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-8{grid-template-columns:repeat(8,minmax(0,1fr))}.grid-cols-\[1fr_auto_1fr\]{grid-template-columns:1fr auto 1fr}.grid-cols-\[320px_1fr\]{grid-template-columns:320px 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0\.5{gap:calc(var(--spacing)*.5)}.gap-1{gap:calc(var(--spacing)*1)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-px>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(1px*var(--tw-space-y-reverse));margin-block-end:calc(1px*calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing)*2)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[calc\(var\(--radius-inner\)\*0\.6667\)\]{border-radius:calc(var(--radius-inner)*.6667)}.rounded-full{border-radius:3.40282e38px}.rounded-inner{border-radius:var(--radius-inner)}.rounded-outer{border-radius:var(--radius-outer)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-solid{--tw-border-style:solid;border-style:solid}.border-background{border-color:var(--color-background)}.border-primary-10{border-color:var(--color-primary-10)}.border-primary-60{border-color:var(--color-primary-60)}.bg-\[rgb\(40\,41\,47\)\]{background-color:#28292f}.bg-\[rgb\(175\,175\,175\)\]{background-color:#afafaf}.bg-accent{background-color:var(--color-accent)}.bg-background{background-color:var(--color-background)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-current{background-color:currentColor}.bg-error-primary{background-color:var(--color-error-primary)}.bg-error-secondary{background-color:var(--color-error-secondary)}.bg-overlay{background-color:var(--color-overlay)}.bg-primary-5{background-color:var(--color-primary-5)}.bg-primary-10{background-color:var(--color-primary-10)}.bg-primary-80{background-color:var(--color-primary-80)}.bg-primary-90{background-color:var(--color-primary-90)}.bg-secondary-40{background-color:var(--color-secondary-40)}.bg-secondary-60{background-color:var(--color-secondary-60)}.bg-secondary-80{background-color:var(--color-secondary-80)}.bg-transparent{background-color:#0000}.bg-cover{background-size:cover}.bg-center{background-position:50%}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.object-center{object-position:center}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-5{padding-inline:calc(var(--spacing)*5)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-4{padding-block:calc(var(--spacing)*4)}.pt-4{padding-top:calc(var(--spacing)*4)}.pr-2{padding-right:calc(var(--spacing)*2)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-sans{font-family:var(--font-sans)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-pre-wrap{white-space:pre-wrap}.text-accent{color:var(--color-accent)}.text-accent-20{color:var(--color-accent-20)}.text-error-primary{color:var(--color-error-primary)}.text-primary-20{color:var(--color-primary-20)}.text-primary-40{color:var(--color-primary-40)}.text-primary-60{color:var(--color-primary-60)}.text-primary-80{color:var(--color-primary-80)}.text-secondary-80{color:var(--color-secondary-80)}.text-secondary-90{color:var(--color-secondary-90)}.placeholder-primary-20::placeholder{color:var(--color-primary-20)}.placeholder-primary-40::placeholder{color:var(--color-primary-40)}.caret-accent{caret-color:var(--color-accent)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.opacity-\[0\.01\]{opacity:.01}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline-0{outline-style:var(--tw-outline-style);outline-width:0}.outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.outline-accent{outline-color:var(--color-accent)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-overlay{--tw-backdrop-blur:blur(var(--backdrop-blur-overlay));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-500{--tw-duration:.5s;transition-duration:.5s}.outline-solid{--tw-outline-style:solid;outline-style:solid}.placeholder\:text-primary-40::placeholder{color:var(--color-primary-40)}.before\:absolute:before{content:var(--tw-content);position:absolute}.before\:inset-0:before{content:var(--tw-content);inset:calc(var(--spacing)*0)}.before\:-z-10:before{content:var(--tw-content);z-index:-10}.before\:bg-transparent:before{content:var(--tw-content);background-color:#0000}.before\:transition-colors:before{content:var(--tw-content);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.before\:content-\[\'\'\]:before{--tw-content:"";content:var(--tw-content)}.after\:pointer-events-none:after{content:var(--tw-content);pointer-events:none}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-0:after{content:var(--tw-content);inset:calc(var(--spacing)*0)}.after\:rounded-outer:after{content:var(--tw-content);border-radius:var(--radius-outer)}.after\:content-\[\'\'\]:after{--tw-content:"";content:var(--tw-content)}@media (hover:hover){.hover\:bg-primary-5:hover{background-color:var(--color-primary-5)}.hover\:bg-primary-10:hover{background-color:var(--color-primary-10)}.hover\:bg-primary-80:hover{background-color:var(--color-primary-80)}.hover\:bg-secondary-20:hover{background-color:var(--color-secondary-20)}.hover\:text-primary-80:hover{color:var(--color-primary-80)}.hover\:after\:bg-primary-10:hover:after{content:var(--tw-content);background-color:var(--color-primary-10)}}.focus\:bg-primary-10:focus{background-color:var(--color-primary-10)}.focus\:outline-0:focus{outline-style:var(--tw-outline-style);outline-width:0}.focus\:before\:bg-primary-5:focus:before{content:var(--tw-content);background-color:var(--color-primary-5)}.focus\:before\:bg-primary-10:focus:before{content:var(--tw-content);background-color:var(--color-primary-10)}.focus\:before\:bg-primary-40:focus:before{content:var(--tw-content);background-color:var(--color-primary-40)}.focus\:before\:bg-primary-80:focus:before{content:var(--tw-content);background-color:var(--color-primary-80)}.active\:bg-secondary-20:active{background-color:var(--color-secondary-20)}@media (hover:hover){.enabled\:hover\:before\:bg-primary-5:enabled:hover:before{content:var(--tw-content);background-color:var(--color-primary-5)}.enabled\:hover\:before\:bg-primary-10:enabled:hover:before{content:var(--tw-content);background-color:var(--color-primary-10)}.enabled\:hover\:before\:bg-primary-40:enabled:hover:before{content:var(--tw-content);background-color:var(--color-primary-40)}.enabled\:hover\:before\:bg-primary-80:enabled:hover:before{content:var(--tw-content);background-color:var(--color-primary-80)}}.enabled\:active\:before\:bg-secondary-10:enabled:active:before{content:var(--tw-content);background-color:var(--color-secondary-10)}.disabled\:bg-accent-20:disabled{background-color:var(--color-accent-20)}.disabled\:bg-primary-5:disabled{background-color:var(--color-primary-5)}.disabled\:bg-primary-10:disabled{background-color:var(--color-primary-10)}.disabled\:bg-secondary-20:disabled{background-color:var(--color-secondary-20)}.disabled\:text-primary-20:disabled{color:var(--color-primary-20)}.disabled\:text-primary-40:disabled{color:var(--color-primary-40)}.disabled\:text-secondary-40:disabled{color:var(--color-secondary-40)}@media (min-width:48rem){.md\:absolute{position:absolute}.md\:left-0{left:calc(var(--spacing)*0)}.md\:-order-1{order:-1}.md\:col-span-1{grid-column:span 1/span 1}.md\:mx-auto{margin-inline:auto}.md\:block{display:block}.md\:w-fit{width:fit-content}.md\:max-w-content{max-width:var(--container-content)}.md\:-translate-x-full{--tw-translate-x:-100%;translate:var(--tw-translate-x)var(--tw-translate-y)}.md\:translate-y-0{--tw-translate-y:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.md\:transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.md\:flex-col{flex-direction:column}.md\:p-3{padding:calc(var(--spacing)*3)}.md\:pb-3{padding-bottom:calc(var(--spacing)*3)}}@media (min-width:80rem){.xl\:grid-cols-\[1fr_632px\]{grid-template-columns:1fr 632px}}@container main (min-width:48rem){.\@3xl\/main\:absolute{position:absolute}.\@3xl\/main\:top-0{top:calc(var(--spacing)*0)}.\@3xl\/main\:right-0{right:calc(var(--spacing)*0)}.\@3xl\/main\:left-0{left:calc(var(--spacing)*0)}}}.shimmer{background-image:linear-gradient(90deg,var(--color-primary-1)0%,var(--color-primary-40)50%,var(--color-primary-1)100%);animation:var(--animate-shimmer);background-repeat:no-repeat;background-size:80px 100%;-webkit-background-clip:text;background-clip:text}@property --glow-opacity{syntax:"<percentage>";inherits:false;initial-value:0%}.fullscreen-error svg{--glow-opacity:0%;filter:drop-shadow(0 0 6px #0000);animation:3s infinite error-glow}@supports (color:color-mix(in lab,red,red)){.fullscreen-error svg{filter:drop-shadow(0 0 6px color-mix(in srgb,transparent,var(--accent)var(--glow-opacity)))}}@keyframes error-glow{0%{color:var(--primary);fill-opacity:.08;--glow-opacity:0%}22%{color:var(--primary);fill-opacity:.08;--glow-opacity:0%}35%{color:var(--accent);fill-opacity:.8;--glow-opacity:60%}45%{color:var(--accent);fill-opacity:.7;--glow-opacity:30%}55%{color:var(--accent);fill-opacity:.6;--glow-opacity:60%}60%{color:var(--primary);fill-opacity:.08;--glow-opacity:0%}to{color:var(--primary);fill-opacity:.08;--glow-opacity:0%}}.markdown ul{list-style-type:disc;list-style-position:inside}.markdown ol{list-style-type:decimal;list-style-position:inside}.markdown hr{--tw-border-style:solid;border-style:solid;border-color:var(--color-primary-20)}.markdown a{text-decoration-line:underline}.markdown h1,.markdown h2,.markdown h3{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@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}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes shimmer{0%{background-position:-80px 0}to{background-position:calc(100% + 80px) 0}}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Accessibility information
3
+ * @inline @hidden
4
+ */
5
+ export type AccessibilityInformation = Record<string, any>;
6
+ /**
7
+ * Accessibility information with ID
8
+ * @category Bidirectional Voice+
9
+ */
10
+ export interface InteractiveElementInfo extends AccessibilityInformation {
11
+ /**
12
+ * Form element ID (assigned by the analysis logic, not necessarily equal to the DOM ID)
13
+ */
14
+ id: string;
15
+ }
16
+ /**
17
+ * Page forms with elements
18
+ * @category Bidirectional Voice+
19
+ */
20
+ export interface PageForms {
21
+ /**
22
+ * Page context
23
+ */
24
+ context: InteractiveElementInfo[];
25
+ /**
26
+ * Form element references
27
+ */
28
+ formElements: Record<string, Element>;
29
+ }
30
+ /**
31
+ * Analyze page forms
32
+ * @returns Context and state about all the form elements detected on the page using accessibility APIs.
33
+ * @category Bidirectional Voice+
34
+ */
35
+ export declare const analyzePageForms: () => PageForms;
@@ -0,0 +1,12 @@
1
+ import { ConversationHandler } from '@nlxai/core';
2
+ import { BidirectionalContext, BidirectionalCustomCommand, PageState } from '../interface';
3
+ export declare const gatherAutomaticContext: (handler: ConversationHandler, customCommands: BidirectionalCustomCommand[], override: (arg: {
4
+ context: BidirectionalContext;
5
+ state: PageState;
6
+ }) => {
7
+ context: BidirectionalContext;
8
+ state: PageState;
9
+ }, setPageState: (state: PageState) => void) => {
10
+ teardown: () => void;
11
+ onCustomCommandsChange: (commands: BidirectionalCustomCommand[]) => void;
12
+ };
@@ -0,0 +1,5 @@
1
+ import { ConversationHandler } from '@nlxai/core';
2
+ import { PageState, BidirectionalConfig } from '../interface';
3
+ export declare const commandHandler: (handler: ConversationHandler, bidirectional: BidirectionalConfig, pageState: {
4
+ current: PageState;
5
+ }) => () => void;
@@ -0,0 +1 @@
1
+ export declare const debug: (message: string, ...args: unknown[]) => void;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ export declare const ErrorMessage: FC<{
3
+ message: string;
4
+ }>;
@@ -0,0 +1,6 @@
1
+ import { FC } from 'react';
2
+ import type * as Feedback from "../feedback";
3
+ export declare const FeedbackComment: FC<{
4
+ feedbackState: Feedback.State;
5
+ feedbackActions: Feedback.Actions;
6
+ }>;
@@ -0,0 +1,2 @@
1
+ import { FC } from 'react';
2
+ export declare const FullscreenError: FC<unknown>;
@@ -0,0 +1,32 @@
1
+ import { FC, Dispatch, SetStateAction } from 'react';
2
+ import { Context, ConversationHandler, Response } from '@nlxai/core';
3
+ import { ColorMode, CustomModalityComponent } from '../interface';
4
+ import { VoiceHandler, VoiceState } from '../voice';
5
+ interface Props {
6
+ colorMode: ColorMode;
7
+ handler: ConversationHandler;
8
+ responses: Response[];
9
+ speakersEnabled: boolean;
10
+ showTranscript: boolean;
11
+ brandIcon?: string;
12
+ className?: string;
13
+ context?: Context;
14
+ modalityComponents: Record<string, CustomModalityComponent<unknown>>;
15
+ }
16
+ export type WidgetVoiceState = null | "loading" | {
17
+ type: "error";
18
+ error: string;
19
+ } | {
20
+ type: "success";
21
+ handler: VoiceHandler;
22
+ state?: VoiceState;
23
+ };
24
+ export declare const useWidgetVoiceState: () => [WidgetVoiceState, Dispatch<SetStateAction<WidgetVoiceState>>];
25
+ export declare const VoiceIcon: FC<{
26
+ brandIcon?: string;
27
+ colorMode: ColorMode;
28
+ addRipple: boolean;
29
+ className?: string;
30
+ }>;
31
+ export declare const FullscreenVoice: FC<Props>;
32
+ export {};
@@ -0,0 +1,20 @@
1
+ import { SetStateAction, Dispatch, FC } from 'react';
2
+ import { WindowSize, ColorMode } from '../interface';
3
+ interface HeaderProps {
4
+ windowSize: WindowSize | "embedded";
5
+ colorMode: ColorMode;
6
+ errorThemedCloseButton?: boolean;
7
+ speakerControls?: {
8
+ enabled: boolean;
9
+ setEnabled: Dispatch<SetStateAction<boolean>>;
10
+ };
11
+ brandIcon?: string;
12
+ renderCollapse: boolean;
13
+ collapse: (event: Event) => void;
14
+ reset: () => void;
15
+ toggleSettings?: () => void;
16
+ isSettingsOpen: boolean;
17
+ enabled: boolean;
18
+ }
19
+ export declare const Header: FC<HeaderProps>;
20
+ export {};
@@ -0,0 +1,14 @@
1
+ import { FC } from 'react';
2
+ import { ConversationHandler, UploadUrl } from '@nlxai/core';
3
+ interface InputProps {
4
+ className?: string;
5
+ handler: ConversationHandler;
6
+ uploadUrl?: UploadUrl;
7
+ onFileUpload: (val: {
8
+ uploadId: string;
9
+ file: File;
10
+ }) => void;
11
+ enabled: boolean;
12
+ }
13
+ export declare const Input: FC<InputProps>;
14
+ export {};
@@ -0,0 +1,23 @@
1
+ import { FC, ReactNode } from 'react';
2
+ import { WindowSize } from '../interface';
3
+ export declare const Main: FC<{
4
+ windowSize: WindowSize;
5
+ children: ReactNode;
6
+ }>;
7
+ export declare const HeaderContainer: FC<{
8
+ leftColumn: boolean;
9
+ children: ReactNode;
10
+ }>;
11
+ export declare const InputContainer: FC<{
12
+ windowSize: WindowSize;
13
+ children: ReactNode;
14
+ }>;
15
+ export declare const VoiceMiniControls: FC<{
16
+ children: ReactNode;
17
+ className?: string;
18
+ }>;
19
+ export declare const voiceMiniPanelClass = "bg-background backdrop-blur-overlay text-primary-80 rounded-outer p-2 w-[calc(100vw-16px)] max-w-[360px] space-y-4";
20
+ export declare const VoiceMiniPanel: FC<{
21
+ children: ReactNode;
22
+ onClose?: () => void;
23
+ }>;
@@ -0,0 +1,33 @@
1
+ import { FC } from 'react';
2
+ import { Response, ConversationHandler, ApplicationMessage } from '@nlxai/core';
3
+ import { CustomModalityComponent, ColorMode } from '../interface';
4
+ import * as Feedback from "../feedback";
5
+ export interface MessagesProps {
6
+ isWaiting: boolean;
7
+ interimMessage?: string;
8
+ handler: ConversationHandler;
9
+ responses: Response[];
10
+ userMessageBubble: boolean;
11
+ agentMessageBubble: boolean;
12
+ chatMode: boolean;
13
+ colorMode: ColorMode;
14
+ uploadedFiles: Record<string, File>;
15
+ lastApplicationResponseIndex?: number;
16
+ modalityComponents: Record<string, CustomModalityComponent<unknown>>;
17
+ className?: string;
18
+ enabled: boolean;
19
+ feedbackState: Feedback.State;
20
+ feedbackActions: Feedback.Actions;
21
+ }
22
+ export declare const MessageChoices: FC<{
23
+ handler: ConversationHandler;
24
+ message: ApplicationMessage;
25
+ responseIndex: number;
26
+ messageIndex: number;
27
+ }>;
28
+ export declare const UserMessage: FC<{
29
+ text: string;
30
+ files?: File[];
31
+ bubble: boolean;
32
+ }>;
33
+ export declare const Messages: FC<MessagesProps>;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ export declare const Notice: FC<{
3
+ text: string;
4
+ }>;
@@ -0,0 +1,9 @@
1
+ import { FC, CSSProperties } from 'react';
2
+ /**
3
+ * A ripple effect composed of expanding circles.
4
+ * @category Modality components
5
+ */
6
+ export declare const Ripple: FC<{
7
+ className?: string;
8
+ style?: CSSProperties;
9
+ }>;
@@ -0,0 +1,4 @@
1
+ import { FC } from 'react';
2
+ export declare const RiveAnimation: FC<{
3
+ restored: boolean;
4
+ }>;
@@ -0,0 +1,4 @@
1
+ import { FC, DetailedHTMLProps } from 'react';
2
+ export declare const SafeMarkdown: FC<{
3
+ contents: string;
4
+ } & DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>>;
@@ -0,0 +1,10 @@
1
+ import { FC } from 'react';
2
+ import { ConversationHandler } from '@nlxai/core';
3
+ interface SettingsProps {
4
+ onClose: () => void;
5
+ reset: () => void;
6
+ handler: ConversationHandler;
7
+ className?: string;
8
+ }
9
+ export declare const Settings: FC<SettingsProps>;
10
+ export {};
@@ -0,0 +1,4 @@
1
+ import { CSSProperties } from 'react';
2
+ import { Theme } from '../interface';
3
+ export declare const toCustomProperties: (theme: Theme) => CSSProperties;
4
+ export declare const intelligentMerge: (theme: Partial<Theme>) => Theme;
@@ -0,0 +1,13 @@
1
+ import { Context, ConversationHandler, Response } from '@nlxai/core';
2
+ import { FC } from 'react';
3
+ import { CustomModalityComponent } from '../interface';
4
+ export declare const VoiceMini: FC<{
5
+ modalityComponents: Record<string, CustomModalityComponent<unknown>>;
6
+ showTranscript: boolean;
7
+ responses: Response[];
8
+ handler: ConversationHandler;
9
+ brandIcon?: string;
10
+ renderCollapse: boolean;
11
+ onClose: (event: Event) => void;
12
+ context?: Context;
13
+ }>;
@@ -0,0 +1,11 @@
1
+ import { FC } from 'react';
2
+ import { CustomModalityComponent } from '../interface';
3
+ import { Response, ConversationHandler } from '@nlxai/core';
4
+ export declare const VoiceModalities: FC<{
5
+ className?: string;
6
+ responses: Response[];
7
+ modalityComponents: Record<string, CustomModalityComponent<unknown>>;
8
+ renderedAsOverlay: boolean;
9
+ showTranscript: boolean;
10
+ handler: ConversationHandler;
11
+ }>;
@@ -0,0 +1,3 @@
1
+ import { CustomModalityComponent } from '../../interface';
2
+ import { CardData } from './shared';
3
+ export declare const DefaultCard: CustomModalityComponent<CardData>;
@@ -0,0 +1,6 @@
1
+ import { CustomModalityComponent } from '../../interface';
2
+ import { SaveAs, CardData } from './shared';
3
+ export declare const DefaultCarousel: CustomModalityComponent<{
4
+ cards: CardData[];
5
+ $saveAs: SaveAs;
6
+ }>;
@@ -0,0 +1,5 @@
1
+ import { SaveAs } from './shared';
2
+ import { CustomModalityComponent } from '../../interface';
3
+ export declare const DefaultDateInput: CustomModalityComponent<{
4
+ $saveAs: SaveAs;
5
+ }>;
@@ -0,0 +1,20 @@
1
+ import { ConversationHandler } from '@nlxai/core';
2
+ import { CustomModalityComponent } from '../../interface';
3
+ export interface SaveAs {
4
+ type: "slot" | "context" | "choiceId";
5
+ id: string;
6
+ }
7
+ export declare const defaultModalities: Record<string, CustomModalityComponent<unknown>>;
8
+ export interface CardRow {
9
+ label: string;
10
+ value: string;
11
+ }
12
+ export interface CardData {
13
+ id?: string;
14
+ thumbnail?: string;
15
+ thumbnailAlt?: string;
16
+ rows?: CardRow[];
17
+ label?: string;
18
+ value?: string;
19
+ }
20
+ export declare const saveFn: ($saveAs: SaveAs, conversationHandler: ConversationHandler) => ((val: any) => void);
@@ -0,0 +1,26 @@
1
+ import { FC, ReactNode } from 'react';
2
+ export declare const CarouselContext: import('react').Context<{
3
+ recentlyEndedScrolling: boolean;
4
+ }>;
5
+ /**
6
+ * Renders a carousel of cards.
7
+ * @example
8
+ * ```tsx
9
+ * import { Carousel, CustomCard, CustomCardImageRow, React } from '@nlx/touchpoint-ui';
10
+ *
11
+ * const MyCarousel = ({ data }) => (
12
+ * <Carousel>
13
+ * {data.map((item) => (
14
+ * <CustomCard key={item.id}>
15
+ * <CustomCardImageRow src={item.image} alt={item.description} />
16
+ * </CustomCard>
17
+ * ))}
18
+ * </Carousel>
19
+ * );
20
+ * ```
21
+ * @category Modality components
22
+ */
23
+ export declare const Carousel: FC<{
24
+ className?: string;
25
+ children?: ReactNode;
26
+ }>;
@@ -0,0 +1,101 @@
1
+ import { FC, ReactNode } from 'react';
2
+ import { Icon } from '../ui/Icons';
3
+ /**
4
+ * Props for the CustomCard component
5
+ * @inline
6
+ * @hidden
7
+ */
8
+ export interface CustomCardProps {
9
+ /**
10
+ * Class name
11
+ */
12
+ className?: string;
13
+ /**
14
+ * Content to be rendered inside the card.
15
+ */
16
+ children: ReactNode;
17
+ /**
18
+ * Whether the card is in a selected state. Used to highlight the card.
19
+ */
20
+ selected?: boolean;
21
+ /**
22
+ * Handler function for when the card is clicked
23
+ */
24
+ onClick?: () => void;
25
+ /**
26
+ * Transform the card into an anchor tag with the href specified
27
+ */
28
+ href?: string;
29
+ /**
30
+ * Specify whether the URL should take the user to a new tab
31
+ */
32
+ newTab?: boolean;
33
+ }
34
+ /**
35
+ * A customizable card component that can function as a button or link.
36
+ * @example
37
+ * ```tsx
38
+ * import { CustomCard, CustomCardImageRow, CustomCardRow, React } from '@nlx/touchpoint-ui';
39
+ *
40
+ * const MyCard = ({data}) => (
41
+ * <CustomCard selected={data.active} onClick={() => alert('Card clicked!')}>
42
+ * <CustomCardImageRow src="https://example.com/image.jpg" alt="Example Image" />
43
+ * <CustomCardRow
44
+ * left={<div>Left Content</div>}
45
+ * right={<div>Right Content</div>}
46
+ * icon={MyIcon}
47
+ * />
48
+ * </CustomCard>
49
+ * );
50
+ * ```
51
+ * @category Modality components
52
+ */
53
+ export declare const CustomCard: FC<CustomCardProps>;
54
+ /**
55
+ * A row within a CustomCard that displays an image.
56
+ * @category Modality components
57
+ */
58
+ export declare const CustomCardImageRow: FC<{
59
+ src: string;
60
+ alt?: string;
61
+ }>;
62
+ /**
63
+ * Props for the CustomCardRow component
64
+ * @inline
65
+ * @hidden
66
+ */
67
+ export interface CustomCardRowProps {
68
+ /**
69
+ * Content to be displayed on the left side of the row
70
+ */
71
+ left: ReactNode;
72
+ /**
73
+ * Content to be displayed on the right side of the row
74
+ */
75
+ right: ReactNode;
76
+ /**
77
+ * Optional icon to be displayed in the center of the row
78
+ */
79
+ icon?: Icon;
80
+ /**
81
+ * Class name
82
+ */
83
+ className?: string;
84
+ }
85
+ /**
86
+ * A row within a CustomCard that displays left and right content, with an optional centered icon.
87
+ * @example
88
+ * ```tsx
89
+ * import { CustomCardRow, Icons, BaseText, React } from '@nlx/touchpoint-ui';
90
+ *
91
+ * const MyCardRow = () => (
92
+ * <CustomCardRow
93
+ * left={<BaseText>Left Content</BaseText>}
94
+ * right={<BaseText>Right Content</BaseText>}
95
+ * icon={Icons.ArrowRight}
96
+ * />
97
+ * );
98
+ * ```
99
+ * @category Modality components
100
+ */
101
+ export declare const CustomCardRow: FC<CustomCardRowProps>;
@@ -0,0 +1,30 @@
1
+ import { FC } from 'react';
2
+ /**
3
+ * Props for the DateInput component
4
+ * @inline
5
+ * @hidden
6
+ */
7
+ export interface DateInputProps {
8
+ /**
9
+ * Handler function called when the date is submitted
10
+ * @param date - The submitted date in YYYY-MM-DD format
11
+ */
12
+ onSubmit?: (date: string) => void;
13
+ /**
14
+ * Custom CSS class name
15
+ */
16
+ className?: string;
17
+ }
18
+ /**
19
+ * A date input
20
+ * @example
21
+ * ```tsx
22
+ * import { DateInput, React } from '@nlx/touchpoint-ui';
23
+ *
24
+ * const MyDateInput = ({conversationHandler}) => (
25
+ * <DateInput onSubmit={(date) => conversationHandler.sendContext({myDate: date}) } />
26
+ * );
27
+ * ```
28
+ * @category Modality components
29
+ */
30
+ export declare const DateInput: FC<DateInputProps>;
@@ -0,0 +1,68 @@
1
+ import { MouseEventHandler, FC } from 'react';
2
+ import { IconProps } from './Icons';
3
+ /**
4
+ * Represents the different types of icon buttons available in the application.
5
+ *
6
+ * - `main`: The primary icon button.
7
+ * - `ghost`: A transparent or less prominent icon button.
8
+ * - `activated`: An icon button that indicates an active state.
9
+ * - `coverup`: An icon button used to cover up or mask something.
10
+ * - `overlay`: An icon button that appears over other content.
11
+ * @category Modality components
12
+ */
13
+ export type IconButtonType = "main" | "ghost" | "activated" | "coverup" | "error" | "overlay";
14
+ /**
15
+ * Props for the IconButton component
16
+ * @inline
17
+ * @hidden
18
+ */
19
+ export interface IconButtonProps {
20
+ /**
21
+ * Handler function called when the button is clicked
22
+ */
23
+ onClick?: MouseEventHandler<HTMLButtonElement>;
24
+ /**
25
+ * Accessible label for the button
26
+ */
27
+ label: string;
28
+ /**
29
+ * Additional CSS classes to apply to the button
30
+ */
31
+ className?: string;
32
+ /**
33
+ * Visual style variant of the button. One of IconButtonType.
34
+ */
35
+ type: IconButtonType;
36
+ /**
37
+ * Icon component to display inside the button
38
+ */
39
+ Icon: FC<IconProps>;
40
+ }
41
+ export declare const UnsemanticIconButton: FC<{
42
+ type: IconButtonType;
43
+ Icon: FC<IconProps>;
44
+ }>;
45
+ export declare const HeadlessIconButton: FC<{
46
+ onClick?: MouseEventHandler<HTMLButtonElement>;
47
+ label: string;
48
+ className?: string;
49
+ children: React.ReactNode;
50
+ }>;
51
+ /**
52
+ * A button showing only an icon (textual label is provided for accessibility)
53
+ * @example
54
+ * ```tsx
55
+ * import { IconButton, Icons, React } from '@nlx/touchpoint-ui';
56
+ *
57
+ * const MyIconButton = () => (
58
+ * <IconButton
59
+ * label="Send message"
60
+ * onClick={() => alert('Icon button clicked!')}
61
+ * type="main"
62
+ * Icon={Icons.ArrowForward}
63
+ * />
64
+ * );
65
+ * ```
66
+ * @category Modality components
67
+ */
68
+ export declare const IconButton: FC<IconButtonProps>;