tia-gpc-widget 1.0.7 → 1.0.9

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/tia-gpc.css CHANGED
@@ -1 +1 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.gpc-widget .gpc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.gpc-widget .gpc-transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--gpc-color-primary: #2563eb;--gpc-color-primary-dark: #1e40af;--gpc-color-primary-light: #60a5fa;--gpc-bg-primary: #ffffff;--gpc-bg-secondary: #f8fafc;--gpc-bg-tertiary: #f1f5f9;--gpc-bg-hover: #e2e8f0;--gpc-text-primary: #0f172a;--gpc-text-secondary: #475569;--gpc-text-tertiary: #94a3b8;--gpc-border-light: #e2e8f0;--gpc-border-medium: #cbd5e1;--gpc-border-dark: #94a3b8;--gpc-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--gpc-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--gpc-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--gpc-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--gpc-success: #10b981;--gpc-error: #ef4444;--gpc-warning: #f59e0b;--gpc-info: #3b82f6}.gpc-dark{--gpc-color-primary: #3b82f6;--gpc-color-primary-dark: #2563eb;--gpc-color-primary-light: #60a5fa;--gpc-bg-primary: #1e293b;--gpc-bg-secondary: #0f172a;--gpc-bg-tertiary: #334155;--gpc-bg-hover: #475569;--gpc-text-primary: #f8fafc;--gpc-text-secondary: #cbd5e1;--gpc-text-tertiary: #94a3b8;--gpc-border-light: #334155;--gpc-border-medium: #475569;--gpc-border-dark: #64748b;--gpc-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .5);--gpc-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5);--gpc-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -4px rgb(0 0 0 / .5);--gpc-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .5)}.gpc-widget{margin:0!important;padding:0!important;border:none!important;background:none!important;color:inherit!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;line-height:1.5!important;box-sizing:border-box!important}.gpc-widget *,.gpc-widget *:before,.gpc-widget *:after{box-sizing:border-box}.gpc-widget,.gpc-widget *{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;margin:0;padding:0}.gpc-widget button,.gpc-widget input,.gpc-widget textarea{font-family:inherit;font-size:100%}.gpc-smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.gpc-scrollbar::-webkit-scrollbar{width:6px;height:6px}.gpc-scrollbar::-webkit-scrollbar-track{background:transparent}.gpc-scrollbar::-webkit-scrollbar-thumb{background:var(--gpc-border-medium);border-radius:3px}.gpc-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--gpc-border-dark)}@keyframes gpc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gpc-slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes gpc-pulse{0%,to{opacity:1}50%{opacity:.5}}.gpc-animate-fade-in{animation:gpc-fade-in .2s ease-in-out}.gpc-animate-slide-up{animation:gpc-slide-up .3s ease-out}.gpc-animate-pulse{animation:gpc-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.gpc-focus-visible:focus-visible{outline:2px solid var(--gpc-color-primary);outline-offset:2px}.gpc-transition{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gpc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.gpc-widget-container{position:fixed!important;z-index:9999!important;display:flex;flex-direction:column;pointer-events:none}.gpc-widget-container>*{pointer-events:auto}.gpc-position-bottom-right{bottom:20px!important;right:20px!important}.gpc-position-bottom-left{bottom:20px!important;left:20px!important}.gpc-position-top-right{top:20px!important;right:20px!important}.gpc-position-top-left{top:20px!important;left:20px!important}.gpc-floating-button{width:60px;height:60px;border-radius:50%;background:var(--gpc-color-primary);color:#fff;border:none;cursor:pointer;box-shadow:var(--gpc-shadow-lg);display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative;z-index:1}.gpc-floating-button:hover{background:var(--gpc-color-primary-dark);box-shadow:var(--gpc-shadow-xl);transform:scale(1.05)}.gpc-floating-button:active{transform:scale(.95)}.gpc-floating-icon{width:24px;height:24px}.gpc-chat-window{width:var(--gpc-widget-width, 400px);height:var(--gpc-widget-height, 600px);background:var(--gpc-bg-primary);border-radius:16px;box-shadow:var(--gpc-shadow-xl);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--gpc-border-light)}.gpc-chat-header{background:var(--gpc-color-primary);color:#fff;padding:16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.gpc-header-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.gpc-header-logo{width:58px;height:58px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.gpc-company-logo{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;border-radius:10px}.gpc-header-text{flex:1;min-width:0;text-align:left}.gpc-header-title{font-size:16px;font-weight:600;color:#fff;margin:0;line-height:1.3;text-align:left}.gpc-header-subtitle{font-size:12px;color:#fff;opacity:.9;margin:0;line-height:1.2}.gpc-header-actions{display:flex;align-items:center;gap:8px}.gpc-header-button{padding:8px;border-radius:8px;border:none;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.gpc-header-button:hover{background:#ffffff1a}.gpc-icon{width:20px;height:20px}.gpc-messages-container{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--gpc-bg-secondary)}.gpc-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:16px}.gpc-empty-icon{width:64px;height:64px;color:var(--gpc-text-tertiary);margin-bottom:16px}.gpc-empty-title{font-size:18px;font-weight:600;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-empty-text{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-message{width:85%;padding:12px 16px;border-radius:12px;animation:gpc-slide-up .3s ease-out}.gpc-message-user{align-self:center;background:var(--gpc-color-primary);color:#fff;border-bottom-right-radius:4px;padding:12px 20px}.gpc-message-assistant{align-self:center;background:var(--gpc-bg-primary);color:var(--gpc-text-primary);border:1px solid var(--gpc-border-light);border-bottom-left-radius:4px}.gpc-message-content{word-break:break-word;text-align:left}.gpc-message-user .gpc-message-content,.gpc-message-assistant .gpc-message-content{white-space:normal}.gpc-message-content h1,.gpc-message-content h2,.gpc-message-content h3{font-weight:600;margin-top:12px;margin-bottom:8px;line-height:1.3}.gpc-message-content h1{font-size:1.25em}.gpc-message-content h2{font-size:1.15em}.gpc-message-content h3{font-size:1.05em}.gpc-message-content h1:first-child,.gpc-message-content h2:first-child,.gpc-message-content h3:first-child{margin-top:0}.gpc-message-content p{margin:0 0 4px;line-height:1.5}.gpc-message-content p:last-child{margin-bottom:0}.gpc-message-content strong{font-weight:600}.gpc-message-content em{font-style:italic}.gpc-message-content ul,.gpc-message-content ol{margin:4px 0;padding-left:20px}.gpc-message-content li{margin:2px 0;line-height:1.4}.gpc-message-content code{background:#0000000d;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.gpc-message-content pre{background:#0000000d;padding:12px;border-radius:6px;overflow-x:auto;margin:8px 0}.gpc-message-content pre code{background:none;padding:0}.gpc-message-timestamp{font-size:11px;color:var(--gpc-text-tertiary);margin-top:4px;text-align:right}.gpc-message-timestamp-user{color:#ffffffb3}.gpc-message-metadata{font-size:11px;color:var(--gpc-text-tertiary);margin-top:8px;padding-top:8px;border-top:1px solid var(--gpc-border-light)}.gpc-metadata-item{margin-bottom:4px}.gpc-metadata-item:last-child{margin-bottom:0}.gpc-input-container{padding:16px;background:var(--gpc-bg-primary);border-top:1px solid var(--gpc-border-light);display:flex;gap:8px;align-items:center}.gpc-input{flex:1;padding:12px 16px;border:1px solid var(--gpc-border-medium);border-radius:24px;background:var(--gpc-bg-secondary);color:var(--gpc-text-primary);font-size:14px;outline:none;transition:all .2s}.gpc-input:focus{border-color:var(--gpc-color-primary);background:var(--gpc-bg-primary)}.gpc-input:disabled{opacity:.5;cursor:not-allowed}.gpc-input::-moz-placeholder{color:var(--gpc-text-tertiary)}.gpc-input::placeholder{color:var(--gpc-text-tertiary)}.gpc-send-button{width:40px;height:40px;border-radius:50%;background:var(--gpc-color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.gpc-send-button:hover:not(:disabled){background:var(--gpc-color-primary-dark);transform:scale(1.05)}.gpc-send-button:disabled{opacity:.5;cursor:not-allowed}.gpc-typing-indicator{display:flex;gap:4px}.gpc-typing-dot{width:8px;height:8px;border-radius:50%;background:var(--gpc-text-tertiary);animation:gpc-pulse 1.5s ease-in-out infinite}.gpc-typing-dot:nth-child(2){animation-delay:.2s}.gpc-typing-dot:nth-child(3){animation-delay:.4s}.gpc-spinner{width:20px;height:20px;border:2px solid var(--gpc-border-light);border-top-color:var(--gpc-color-primary);border-radius:50%;animation:gpc-spin .8s linear infinite}@keyframes gpc-spin{to{transform:rotate(360deg)}}.gpc-notification-badge{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--gpc-error);color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:600}.gpc-validator-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:16px;flex:1}.gpc-validator-header{text-align:center;margin-bottom:16px}.gpc-validator-title{font-size:18px;font-weight:600;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-validator-subtitle{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-validator-loading{display:flex;flex-direction:column;align-items:center;gap:8px}.gpc-validator-text{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-validator-error{background:var(--gpc-bg-tertiary);border:1px solid var(--gpc-border-medium);border-radius:12px;padding:16px;display:flex;align-items:flex-start;gap:12px;max-width:400px}.gpc-dark .gpc-validator-error{background:var(--gpc-bg-tertiary);border-color:var(--gpc-border-medium)}.gpc-error-icon{width:20px;height:20px;color:var(--gpc-error);flex-shrink:0;margin-top:2px}.gpc-error-content{flex:1}.gpc-error-title{font-size:14px;font-weight:600;color:var(--gpc-error);margin-bottom:4px}.gpc-error-message{font-size:14px;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-error-button{font-size:14px;font-weight:500;color:var(--gpc-error);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.gpc-error-button:hover{opacity:.8}.gpc-button{display:inline-flex;align-items:center;justify-content:center;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .15s ease}.gpc-button:disabled{opacity:.5;cursor:not-allowed}.gpc-button:focus-visible{outline:2px solid var(--gpc-color-primary);outline-offset:2px}.gpc-button-primary{background:var(--gpc-color-primary);color:#fff}.gpc-button-primary:hover:not(:disabled){background:var(--gpc-color-primary-dark)}.gpc-button-primary:active:not(:disabled){transform:scale(.95)}.gpc-button-secondary{background:var(--gpc-bg-tertiary);color:var(--gpc-text-primary);border:1px solid var(--gpc-border-medium)}.gpc-button-secondary:hover:not(:disabled){background:var(--gpc-bg-hover)}.gpc-button-ghost{background:transparent;color:var(--gpc-text-secondary)}.gpc-button-ghost:hover:not(:disabled){background:var(--gpc-bg-hover)}.gpc-button-sm{padding:6px 12px;font-size:14px}.gpc-button-md{padding:8px 16px;font-size:16px}.gpc-button-lg{padding:12px 24px;font-size:18px}.gpc-button-spinner{margin-right:8px}.gpc-language-selector{position:relative}.gpc-language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--gpc-bg-primary);border:1px solid var(--gpc-border-medium);border-radius:8px;box-shadow:var(--gpc-shadow-lg);min-width:150px;z-index:1000;overflow:hidden;animation:gpc-slide-down .2s ease-out}.gpc-language-option{width:100%;padding:10px 12px;border:none;background:transparent;color:var(--gpc-text-primary);font-size:14px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s}.gpc-language-option:hover{background:var(--gpc-bg-secondary)}.gpc-language-option-active{background:var(--gpc-bg-tertiary);font-weight:600}.gpc-language-flag{font-size:18px}.gpc-language-label{flex:1}@keyframes gpc-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.gpc-welcome-logo{margin-bottom:24px}.gpc-welcome-company-logo{width:120px;height:120px;-o-object-fit:contain;object-fit:contain;border-radius:12px}.gpc-footer{padding:6px 12px;text-align:left;background:var(--gpc-bg-secondary);border-top:1px solid var(--gpc-border-light);flex-shrink:0}.gpc-footer-text{font-size:9px;color:var(--gpc-text-tertiary);opacity:.6;font-weight:400}@media(max-width:639px){.gpc-chat-window{position:fixed;inset:0;width:100vw!important;height:100vh!important;border-radius:0;max-width:none;max-height:none}.gpc-floating-button{width:56px;height:56px;bottom:16px;right:16px}.gpc-chat-window{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.gpc-messages-container{padding:12px}.gpc-message{max-width:85%}.gpc-input-container{padding:12px}.gpc-input{min-height:44px;font-size:16px}.gpc-send-button{min-width:44px;min-height:44px}.gpc-chat-header{padding:12px 16px}}@media(min-width:640px)and (max-width:1023px){.gpc-chat-window{width:380px;height:500px}.gpc-message{max-width:75%}}@media(min-width:1024px){.gpc-chat-window{width:400px;height:600px}.gpc-message-assistant:hover{box-shadow:var(--gpc-shadow-sm)}}@media(max-width:639px)and (orientation:landscape){.gpc-chat-window{max-height:100vh}.gpc-messages-container{flex:1;min-height:0}}@media(hover:none)and (pointer:coarse){.gpc-button,.gpc-icon-button{min-width:44px;min-height:44px}.gpc-message-assistant:hover{box-shadow:none}.gpc-messages-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media(prefers-contrast:high){.gpc-widget{--gpc-border-light: currentColor;--gpc-border-medium: currentColor}.gpc-message{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.gpc-widget *,.gpc-widget *:before,.gpc-widget *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.gpc-widget{display:none!important}}
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.gpc-widget .gpc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.gpc-widget .gpc-transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}:root{--gpc-color-primary: #2563eb;--gpc-color-primary-dark: #1e40af;--gpc-color-primary-light: #60a5fa;--gpc-bg-primary: #ffffff;--gpc-bg-secondary: #f8fafc;--gpc-bg-tertiary: #f1f5f9;--gpc-bg-hover: #e2e8f0;--gpc-text-primary: #0f172a;--gpc-text-secondary: #475569;--gpc-text-tertiary: #94a3b8;--gpc-border-light: #e2e8f0;--gpc-border-medium: #cbd5e1;--gpc-border-dark: #94a3b8;--gpc-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--gpc-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--gpc-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--gpc-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--gpc-success: #10b981;--gpc-error: #ef4444;--gpc-warning: #f59e0b;--gpc-info: #3b82f6}.gpc-dark{--gpc-color-primary: #3b82f6;--gpc-color-primary-dark: #2563eb;--gpc-color-primary-light: #60a5fa;--gpc-bg-primary: #1e293b;--gpc-bg-secondary: #0f172a;--gpc-bg-tertiary: #334155;--gpc-bg-hover: #475569;--gpc-text-primary: #f8fafc;--gpc-text-secondary: #cbd5e1;--gpc-text-tertiary: #94a3b8;--gpc-border-light: #334155;--gpc-border-medium: #475569;--gpc-border-dark: #64748b;--gpc-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .5);--gpc-shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5);--gpc-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -4px rgb(0 0 0 / .5);--gpc-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 8px 10px -6px rgb(0 0 0 / .5)}.gpc-widget{margin:0!important;padding:0!important;border:none!important;background:none!important;color:inherit!important;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif!important;line-height:1.5!important;box-sizing:border-box!important}.gpc-widget *,.gpc-widget *:before,.gpc-widget *:after{box-sizing:border-box}.gpc-widget,.gpc-widget *{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5;margin:0;padding:0}.gpc-widget button,.gpc-widget input,.gpc-widget textarea{font-family:inherit;font-size:100%}.gpc-smooth-scroll{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.gpc-scrollbar::-webkit-scrollbar{width:6px;height:6px}.gpc-scrollbar::-webkit-scrollbar-track{background:transparent}.gpc-scrollbar::-webkit-scrollbar-thumb{background:var(--gpc-border-medium);border-radius:3px}.gpc-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--gpc-border-dark)}@keyframes gpc-fade-in{0%{opacity:0}to{opacity:1}}@keyframes gpc-slide-up{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes gpc-pulse{0%,to{opacity:1}50%{opacity:.5}}.gpc-animate-fade-in{animation:gpc-fade-in .2s ease-in-out}.gpc-animate-slide-up{animation:gpc-slide-up .3s ease-out}.gpc-animate-pulse{animation:gpc-pulse 2s cubic-bezier(.4,0,.6,1) infinite}.gpc-focus-visible:focus-visible{outline:2px solid var(--gpc-color-primary);outline-offset:2px}.gpc-transition{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.gpc-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.gpc-widget-container{position:fixed!important;z-index:9999!important;display:flex;flex-direction:column;pointer-events:none}.gpc-widget-container>*{pointer-events:auto}.gpc-position-bottom-right{bottom:20px!important;right:20px!important}.gpc-position-bottom-left{bottom:20px!important;left:20px!important}.gpc-position-top-right{top:20px!important;right:20px!important}.gpc-position-top-left{top:20px!important;left:20px!important}.gpc-floating-button{width:60px;height:60px;border-radius:50%;background:var(--gpc-color-primary);color:#fff;border:none;cursor:pointer;box-shadow:var(--gpc-shadow-lg);display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative;z-index:1}.gpc-floating-button-with-text{width:auto;min-width:60px;height:60px;padding:0 20px;border-radius:30px;animation:gpc-bounce 2s ease-in-out infinite}.gpc-floating-content{display:flex;align-items:center;gap:12px}.gpc-floating-text{font-size:16px;font-weight:600;white-space:nowrap;animation:gpc-text-shimmer 3s ease-in-out infinite}.gpc-floating-button:hover{background:var(--gpc-color-primary-dark);box-shadow:var(--gpc-shadow-xl);transform:scale(1.05);animation:none}.gpc-floating-button:active{transform:scale(.95)}.gpc-floating-icon{width:24px;height:24px;flex-shrink:0}@keyframes gpc-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes gpc-text-shimmer{0%,to{opacity:1}50%{opacity:.7}}.gpc-chat-window{width:var(--gpc-widget-width, 400px);height:var(--gpc-widget-height, 600px);background:var(--gpc-bg-primary);border-radius:16px;box-shadow:var(--gpc-shadow-xl);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--gpc-border-light)}.gpc-chat-header{background:var(--gpc-color-primary);color:#fff;padding:16px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.gpc-header-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.gpc-header-logo{width:58px;height:58px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.gpc-company-logo{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;border-radius:10px}.gpc-header-text{flex:1;min-width:0;text-align:left}.gpc-header-title{font-size:16px;font-weight:600;color:#fff;margin:0;line-height:1.3;text-align:left}.gpc-header-subtitle{font-size:12px;color:#fff;opacity:.9;margin:0;line-height:1.2}.gpc-header-actions{display:flex;align-items:center;gap:8px}.gpc-header-button{padding:8px;border-radius:8px;border:none;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center}.gpc-header-button:hover{background:#ffffff1a}.gpc-icon{width:20px;height:20px}.gpc-messages-container{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:var(--gpc-bg-secondary)}.gpc-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:16px}.gpc-empty-icon{width:64px;height:64px;color:var(--gpc-text-tertiary);margin-bottom:16px}.gpc-empty-title{font-size:18px;font-weight:600;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-empty-text{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-message{width:85%;padding:12px 16px;border-radius:12px;animation:gpc-slide-up .3s ease-out}.gpc-message-user{align-self:center;background:var(--gpc-color-primary);color:#fff;border-bottom-right-radius:4px;padding:12px 20px}.gpc-message-assistant{align-self:center;background:var(--gpc-bg-primary);color:var(--gpc-text-primary);border:1px solid var(--gpc-border-light);border-bottom-left-radius:4px}.gpc-message-content{word-break:break-word;text-align:left}.gpc-message-user .gpc-message-content,.gpc-message-assistant .gpc-message-content{white-space:normal}.gpc-message-content h1,.gpc-message-content h2,.gpc-message-content h3{font-weight:600;margin-top:12px;margin-bottom:8px;line-height:1.3}.gpc-message-content h1{font-size:1.25em}.gpc-message-content h2{font-size:1.15em}.gpc-message-content h3{font-size:1.05em}.gpc-message-content h1:first-child,.gpc-message-content h2:first-child,.gpc-message-content h3:first-child{margin-top:0}.gpc-message-content p{margin:0 0 4px;line-height:1.5}.gpc-message-content p:last-child{margin-bottom:0}.gpc-message-content strong{font-weight:600}.gpc-message-content em{font-style:italic}.gpc-message-content ul,.gpc-message-content ol{margin:4px 0;padding-left:20px}.gpc-message-content li{margin:2px 0;line-height:1.4}.gpc-message-content code{background:#0000000d;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.gpc-message-content pre{background:#0000000d;padding:12px;border-radius:6px;overflow-x:auto;margin:8px 0}.gpc-message-content pre code{background:none;padding:0}.gpc-message-timestamp{font-size:11px;color:var(--gpc-text-tertiary);margin-top:4px;text-align:right}.gpc-message-timestamp-user{color:#ffffffb3}.gpc-message-metadata{font-size:11px;color:var(--gpc-text-tertiary);margin-top:8px;padding-top:8px;border-top:1px solid var(--gpc-border-light)}.gpc-metadata-item{margin-bottom:4px}.gpc-metadata-item:last-child{margin-bottom:0}.gpc-input-container{padding:16px;background:var(--gpc-bg-primary);border-top:1px solid var(--gpc-border-light);display:flex;gap:8px;align-items:center}.gpc-input{flex:1;padding:12px 16px;border:1px solid var(--gpc-border-medium);border-radius:24px;background:var(--gpc-bg-secondary);color:var(--gpc-text-primary);font-size:14px;outline:none;transition:all .2s}.gpc-input:focus{border-color:var(--gpc-color-primary);background:var(--gpc-bg-primary)}.gpc-input:disabled{opacity:.5;cursor:not-allowed}.gpc-input::-moz-placeholder{color:var(--gpc-text-tertiary)}.gpc-input::placeholder{color:var(--gpc-text-tertiary)}.gpc-send-button{width:40px;height:40px;border-radius:50%;background:var(--gpc-color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.gpc-send-button:hover:not(:disabled){background:var(--gpc-color-primary-dark);transform:scale(1.05)}.gpc-send-button:disabled{opacity:.5;cursor:not-allowed}.gpc-typing-indicator{display:flex;gap:4px}.gpc-typing-dot{width:8px;height:8px;border-radius:50%;background:var(--gpc-text-tertiary);animation:gpc-pulse 1.5s ease-in-out infinite}.gpc-typing-dot:nth-child(2){animation-delay:.2s}.gpc-typing-dot:nth-child(3){animation-delay:.4s}.gpc-spinner{width:20px;height:20px;border:2px solid var(--gpc-border-light);border-top-color:var(--gpc-color-primary);border-radius:50%;animation:gpc-spin .8s linear infinite}@keyframes gpc-spin{to{transform:rotate(360deg)}}.gpc-notification-badge{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--gpc-error);color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;font-weight:600}.gpc-validator-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;gap:16px;flex:1}.gpc-validator-header{text-align:center;margin-bottom:16px}.gpc-validator-title{font-size:18px;font-weight:600;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-validator-subtitle{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-validator-loading{display:flex;flex-direction:column;align-items:center;gap:8px}.gpc-validator-text{font-size:14px;color:var(--gpc-text-secondary);margin:0}.gpc-validator-error{background:var(--gpc-bg-tertiary);border:1px solid var(--gpc-border-medium);border-radius:12px;padding:16px;display:flex;align-items:flex-start;gap:12px;max-width:400px}.gpc-dark .gpc-validator-error{background:var(--gpc-bg-tertiary);border-color:var(--gpc-border-medium)}.gpc-error-icon{width:20px;height:20px;color:var(--gpc-error);flex-shrink:0;margin-top:2px}.gpc-error-content{flex:1}.gpc-error-title{font-size:14px;font-weight:600;color:var(--gpc-error);margin-bottom:4px}.gpc-error-message{font-size:14px;color:var(--gpc-text-primary);margin-bottom:8px}.gpc-error-button{font-size:14px;font-weight:500;color:var(--gpc-error);background:none;border:none;cursor:pointer;text-decoration:underline;padding:0}.gpc-error-button:hover{opacity:.8}.gpc-button{display:inline-flex;align-items:center;justify-content:center;font-weight:500;border-radius:8px;border:none;cursor:pointer;transition:all .15s ease}.gpc-button:disabled{opacity:.5;cursor:not-allowed}.gpc-button:focus-visible{outline:2px solid var(--gpc-color-primary);outline-offset:2px}.gpc-button-primary{background:var(--gpc-color-primary);color:#fff}.gpc-button-primary:hover:not(:disabled){background:var(--gpc-color-primary-dark)}.gpc-button-primary:active:not(:disabled){transform:scale(.95)}.gpc-button-secondary{background:var(--gpc-bg-tertiary);color:var(--gpc-text-primary);border:1px solid var(--gpc-border-medium)}.gpc-button-secondary:hover:not(:disabled){background:var(--gpc-bg-hover)}.gpc-button-ghost{background:transparent;color:var(--gpc-text-secondary)}.gpc-button-ghost:hover:not(:disabled){background:var(--gpc-bg-hover)}.gpc-button-sm{padding:6px 12px;font-size:14px}.gpc-button-md{padding:8px 16px;font-size:16px}.gpc-button-lg{padding:12px 24px;font-size:18px}.gpc-button-spinner{margin-right:8px}.gpc-language-selector{position:relative}.gpc-language-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--gpc-bg-primary);border:1px solid var(--gpc-border-medium);border-radius:8px;box-shadow:var(--gpc-shadow-lg);min-width:150px;z-index:1000;overflow:hidden;animation:gpc-slide-down .2s ease-out}.gpc-language-option{width:100%;padding:10px 12px;border:none;background:transparent;color:var(--gpc-text-primary);font-size:14px;text-align:left;cursor:pointer;display:flex;align-items:center;gap:8px;transition:background-color .2s}.gpc-language-option:hover{background:var(--gpc-bg-secondary)}.gpc-language-option-active{background:var(--gpc-bg-tertiary);font-weight:600}.gpc-language-flag{font-size:18px}.gpc-language-label{flex:1}@keyframes gpc-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.gpc-welcome-logo{margin-bottom:24px}.gpc-welcome-company-logo{width:120px;height:120px;-o-object-fit:contain;object-fit:contain;border-radius:12px}.gpc-footer{padding:6px 12px;text-align:left;background:var(--gpc-bg-secondary);border-top:1px solid var(--gpc-border-light);flex-shrink:0}.gpc-footer-text{font-size:9px;color:var(--gpc-text-tertiary);opacity:.6;font-weight:400}@media(max-width:639px){.gpc-chat-window{position:fixed;inset:0;width:100vw!important;height:100vh!important;border-radius:0;max-width:none;max-height:none}.gpc-floating-button{width:56px;height:56px;bottom:16px;right:16px}.gpc-chat-window{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.gpc-messages-container{padding:12px}.gpc-message{max-width:85%}.gpc-input-container{padding:12px}.gpc-input{min-height:44px;font-size:16px}.gpc-send-button{min-width:44px;min-height:44px}.gpc-chat-header{padding:12px 16px}}@media(min-width:640px)and (max-width:1023px){.gpc-chat-window{width:380px;height:500px}.gpc-message{max-width:75%}}@media(min-width:1024px){.gpc-chat-window{width:400px;height:600px}.gpc-message-assistant:hover{box-shadow:var(--gpc-shadow-sm)}}@media(max-width:639px)and (orientation:landscape){.gpc-chat-window{max-height:100vh}.gpc-messages-container{flex:1;min-height:0}}@media(hover:none)and (pointer:coarse){.gpc-button,.gpc-icon-button{min-width:44px;min-height:44px}.gpc-message-assistant:hover{box-shadow:none}.gpc-messages-container{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}@media(prefers-contrast:high){.gpc-widget{--gpc-border-light: currentColor;--gpc-border-medium: currentColor}.gpc-message{border:2px solid currentColor}}@media(prefers-reduced-motion:reduce){.gpc-widget *,.gpc-widget *:before,.gpc-widget *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media print{.gpc-widget{display:none!important}}
@@ -1,4 +1,4 @@
1
- import { jsxs as H, jsx as I, Fragment as Bt } from "react/jsx-runtime";
1
+ import { jsxs as V, jsx as I, Fragment as Bt } from "react/jsx-runtime";
2
2
  import { useState as Q, useRef as Ve, useEffect as xe, useCallback as en, useMemo as zr } from "react";
3
3
  import { useTranslation as fe, initReactI18next as Or, I18nextProvider as Rr } from "react-i18next";
4
4
  import { MessageCircle as Dr, Moon as Mr, Sun as Fr, Globe as Br, ChevronDown as Ur, MessageSquare as jr, Send as Vr, AlertCircle as Hr } from "lucide-react";
@@ -7,17 +7,24 @@ import { Turnstile as $r } from "@marsidev/react-turnstile";
7
7
  import Gr from "axios";
8
8
  import nn from "i18next";
9
9
  import Wr from "i18next-browser-languagedetector";
10
- const Kr = ({ onClick: e, unreadCount: n = 0 }) => {
11
- const { t } = fe();
12
- return /* @__PURE__ */ H(
10
+ const Kr = ({ onClick: e, unreadCount: n = 0, widgetConfig: t }) => {
11
+ const { t: r } = fe(), i = t?.company_name || r("widget.title");
12
+ return /* @__PURE__ */ V(
13
13
  "button",
14
14
  {
15
15
  onClick: e,
16
- className: "gpc-floating-button gpc-animate-fade-in",
17
- "aria-label": t("chat.title"),
18
- title: t("chat.title"),
16
+ className: "gpc-floating-button gpc-floating-button-with-text gpc-animate-fade-in",
17
+ "aria-label": r("chat.title"),
18
+ title: r("chat.title"),
19
19
  children: [
20
- /* @__PURE__ */ I(Dr, { className: "gpc-floating-icon" }),
20
+ /* @__PURE__ */ V("div", { className: "gpc-floating-content", children: [
21
+ /* @__PURE__ */ I(Dr, { className: "gpc-floating-icon" }),
22
+ /* @__PURE__ */ V("span", { className: "gpc-floating-text", children: [
23
+ r("widget.questionsTo"),
24
+ " ",
25
+ i
26
+ ] })
27
+ ] }),
21
28
  n > 0 && /* @__PURE__ */ I("span", { className: "gpc-notification-badge", children: n > 9 ? "9+" : n })
22
29
  ]
23
30
  }
@@ -49,7 +56,7 @@ const Kr = ({ onClick: e, unreadCount: n = 0 }) => {
49
56
  return n && document.addEventListener("mousedown", o), () => {
50
57
  document.removeEventListener("mousedown", o);
51
58
  };
52
- }, [n]), /* @__PURE__ */ H("div", { className: "gpc-language-selector", ref: r, children: [
59
+ }, [n]), /* @__PURE__ */ V("div", { className: "gpc-language-selector", ref: r, children: [
53
60
  /* @__PURE__ */ I(
54
61
  "button",
55
62
  {
@@ -60,7 +67,7 @@ const Kr = ({ onClick: e, unreadCount: n = 0 }) => {
60
67
  children: /* @__PURE__ */ I(Br, { className: "gpc-icon" })
61
68
  }
62
69
  ),
63
- n && /* @__PURE__ */ I("div", { className: "gpc-language-dropdown", children: un.map((o) => /* @__PURE__ */ H(
70
+ n && /* @__PURE__ */ I("div", { className: "gpc-language-dropdown", children: un.map((o) => /* @__PURE__ */ V(
64
71
  "button",
65
72
  {
66
73
  onClick: () => l(o.code),
@@ -81,12 +88,12 @@ const Kr = ({ onClick: e, unreadCount: n = 0 }) => {
81
88
  widgetConfig: i = null
82
89
  }) => {
83
90
  const { t: l } = fe(), o = i?.company_name || l("widget.title"), a = i?.company_logo_base64, c = a?.startsWith("data:") ? a : a ? `data:image/png;base64,${a}` : null;
84
- return /* @__PURE__ */ H("div", { className: "gpc-chat-header", children: [
85
- /* @__PURE__ */ H("div", { className: "gpc-header-content", children: [
91
+ return /* @__PURE__ */ V("div", { className: "gpc-chat-header", children: [
92
+ /* @__PURE__ */ V("div", { className: "gpc-header-content", children: [
86
93
  c && /* @__PURE__ */ I("div", { className: "gpc-header-logo", children: /* @__PURE__ */ I("img", { src: c, alt: o, className: "gpc-company-logo" }) }),
87
94
  /* @__PURE__ */ I("div", { className: "gpc-header-text", children: /* @__PURE__ */ I("h2", { className: "gpc-header-title", children: o }) })
88
95
  ] }),
89
- /* @__PURE__ */ H("div", { className: "gpc-header-actions", children: [
96
+ /* @__PURE__ */ V("div", { className: "gpc-header-actions", children: [
90
97
  /* @__PURE__ */ I(Xr, {}),
91
98
  /* @__PURE__ */ I(Yr, { theme: n, onToggle: t }),
92
99
  /* @__PURE__ */ I(
@@ -1309,7 +1316,7 @@ function mi() {
1309
1316
  function D() {
1310
1317
  var v = { line: y, column: E };
1311
1318
  return function(P) {
1312
- return P.position = new M(v), V(), P;
1319
+ return P.position = new M(v), H(), P;
1313
1320
  };
1314
1321
  }
1315
1322
  function M(v) {
@@ -1329,7 +1336,7 @@ function mi() {
1329
1336
  return k(L), b = b.slice(L.length), P;
1330
1337
  }
1331
1338
  }
1332
- function V() {
1339
+ function H() {
1333
1340
  O(t);
1334
1341
  }
1335
1342
  function B(v) {
@@ -1371,7 +1378,7 @@ function mi() {
1371
1378
  P !== !1 && (v.push(P), B(v));
1372
1379
  return v;
1373
1380
  }
1374
- return V(), T();
1381
+ return H(), T();
1375
1382
  };
1376
1383
  function w(b) {
1377
1384
  return b ? b.replace(a, h) : h;
@@ -2132,11 +2139,11 @@ function tl(e) {
2132
2139
  )
2133
2140
  return;
2134
2141
  const O = n.events.length;
2135
- let V = O, B, j;
2136
- for (; V--; )
2137
- if (n.events[V][0] === "exit" && n.events[V][1].type === "chunkFlow") {
2142
+ let H = O, B, j;
2143
+ for (; H--; )
2144
+ if (n.events[H][0] === "exit" && n.events[H][1].type === "chunkFlow") {
2138
2145
  if (B) {
2139
- j = n.events[V][1].end;
2146
+ j = n.events[H][1].end;
2140
2147
  break;
2141
2148
  }
2142
2149
  B = !0;
@@ -2145,7 +2152,7 @@ function tl(e) {
2145
2152
  n.events[x][1].end = {
2146
2153
  ...j
2147
2154
  }, x++;
2148
- he(n.events, V + 1, 0, n.events.slice(O)), n.events.length = x;
2155
+ he(n.events, H + 1, 0, n.events.slice(O)), n.events.length = x;
2149
2156
  }
2150
2157
  }
2151
2158
  function y(k) {
@@ -2441,7 +2448,7 @@ function dl(e, n, t) {
2441
2448
  function D(x) {
2442
2449
  return e.exit("codeFenced"), n(x);
2443
2450
  }
2444
- function M(x, O, V) {
2451
+ function M(x, O, H) {
2445
2452
  let B = 0;
2446
2453
  return j;
2447
2454
  function j(L) {
@@ -2451,13 +2458,13 @@ function dl(e, n, t) {
2451
2458
  return x.enter("codeFencedFence"), U(L) ? G(x, T, "linePrefix", r.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(L) : T(L);
2452
2459
  }
2453
2460
  function T(L) {
2454
- return L === a ? (x.enter("codeFencedFenceSequence"), v(L)) : V(L);
2461
+ return L === a ? (x.enter("codeFencedFenceSequence"), v(L)) : H(L);
2455
2462
  }
2456
2463
  function v(L) {
2457
- return L === a ? (B++, x.consume(L), v) : B >= o ? (x.exit("codeFencedFenceSequence"), U(L) ? G(x, P, "whitespace")(L) : P(L)) : V(L);
2464
+ return L === a ? (B++, x.consume(L), v) : B >= o ? (x.exit("codeFencedFenceSequence"), U(L) ? G(x, P, "whitespace")(L) : P(L)) : H(L);
2458
2465
  }
2459
2466
  function P(L) {
2460
- return L === null || _(L) ? (x.exit("codeFencedFence"), O(L)) : V(L);
2467
+ return L === null || _(L) ? (x.exit("codeFencedFence"), O(L)) : H(L);
2461
2468
  }
2462
2469
  }
2463
2470
  }
@@ -3147,13 +3154,13 @@ function ql(e, n, t) {
3147
3154
  return m === 61 ? (e.consume(m), x) : U(m) ? (e.consume(m), M) : k(m);
3148
3155
  }
3149
3156
  function x(m) {
3150
- return m === null || m === 60 || m === 61 || m === 62 || m === 96 ? t(m) : m === 34 || m === 39 ? (e.consume(m), c = m, O) : U(m) ? (e.consume(m), x) : V(m);
3157
+ return m === null || m === 60 || m === 61 || m === 62 || m === 96 ? t(m) : m === 34 || m === 39 ? (e.consume(m), c = m, O) : U(m) ? (e.consume(m), x) : H(m);
3151
3158
  }
3152
3159
  function O(m) {
3153
3160
  return m === c ? (e.consume(m), c = null, B) : m === null || _(m) ? t(m) : (e.consume(m), O);
3154
3161
  }
3155
- function V(m) {
3156
- return m === null || m === 34 || m === 39 || m === 47 || m === 60 || m === 61 || m === 62 || m === 96 || ee(m) ? M(m) : (e.consume(m), V);
3162
+ function H(m) {
3163
+ return m === null || m === 34 || m === 39 || m === 47 || m === 60 || m === 61 || m === 62 || m === 96 || ee(m) ? M(m) : (e.consume(m), H);
3157
3164
  }
3158
3165
  function B(m) {
3159
3166
  return m === 47 || m === 62 || U(m) ? k(m) : t(m);
@@ -3230,7 +3237,7 @@ function Kl(e, n, t) {
3230
3237
  return e.enter("htmlText"), e.enter("htmlTextData"), e.consume(d), c;
3231
3238
  }
3232
3239
  function c(d) {
3233
- return d === 33 ? (e.consume(d), s) : d === 47 ? (e.consume(d), M) : d === 63 ? (e.consume(d), k) : pe(d) ? (e.consume(d), V) : t(d);
3240
+ return d === 33 ? (e.consume(d), s) : d === 47 ? (e.consume(d), M) : d === 63 ? (e.consume(d), k) : pe(d) ? (e.consume(d), H) : t(d);
3234
3241
  }
3235
3242
  function s(d) {
3236
3243
  return d === 45 ? (e.consume(d), u) : d === 91 ? (e.consume(d), l = 0, w) : pe(d) ? (e.consume(d), E) : t(d);
@@ -3278,8 +3285,8 @@ function Kl(e, n, t) {
3278
3285
  function O(d) {
3279
3286
  return _(d) ? (o = O, Y(d)) : U(d) ? (e.consume(d), O) : K(d);
3280
3287
  }
3281
- function V(d) {
3282
- return d === 45 || ie(d) ? (e.consume(d), V) : d === 47 || d === 62 || ee(d) ? B(d) : t(d);
3288
+ function H(d) {
3289
+ return d === 45 || ie(d) ? (e.consume(d), H) : d === 47 || d === 62 || ee(d) ? B(d) : t(d);
3283
3290
  }
3284
3291
  function B(d) {
3285
3292
  return d === 47 ? (e.consume(d), K) : d === 58 || d === 95 || pe(d) ? (e.consume(d), j) : _(d) ? (o = B, Y(d)) : U(d) ? (e.consume(d), B) : K(d);
@@ -3869,7 +3876,7 @@ function Do(e, n, t) {
3869
3876
  let u = n.tokenize.call(s, c);
3870
3877
  return n.resolveAll && l.push(n), s;
3871
3878
  function h(N) {
3872
- return o = le(o, N), A(), o[o.length - 1] !== null ? [] : (V(n, 0), s.events = jn(l, s.events, s), s.events);
3879
+ return o = le(o, N), A(), o[o.length - 1] !== null ? [] : (H(n, 0), s.events = jn(l, s.events, s), s.events);
3873
3880
  }
3874
3881
  function f(N, T) {
3875
3882
  return Fo(p(N), T);
@@ -3925,7 +3932,7 @@ function Do(e, n, t) {
3925
3932
  return T.end = w(), s.events.push(["exit", T, s]), T;
3926
3933
  }
3927
3934
  function M(N, T) {
3928
- V(N, T.from);
3935
+ H(N, T.from);
3929
3936
  }
3930
3937
  function x(N, T) {
3931
3938
  T.restore();
@@ -3981,7 +3988,7 @@ function Do(e, n, t) {
3981
3988
  }
3982
3989
  }
3983
3990
  }
3984
- function V(N, T) {
3991
+ function H(N, T) {
3985
3992
  N.resolveAll && !l.includes(N) && l.push(N), N.resolve && he(s.events, T, s.events.length - T, N.resolve(s.events.slice(T), s)), N.resolveTo && (s.events = N.resolveTo(s.events, s));
3986
3993
  }
3987
3994
  function B() {
@@ -4224,7 +4231,7 @@ function Go(e) {
4224
4231
  resourceDestinationString: d,
4225
4232
  resourceTitleString: ae,
4226
4233
  resource: me,
4227
- setextHeading: c(V),
4234
+ setextHeading: c(H),
4228
4235
  setextHeadingLineSequence: O,
4229
4236
  setextHeadingText: x,
4230
4237
  strong: c(),
@@ -4425,7 +4432,7 @@ function Go(e) {
4425
4432
  const C = this.stack[this.stack.length - 1];
4426
4433
  C.depth = this.sliceSerialize(g).codePointAt(0) === 61 ? 1 : 2;
4427
4434
  }
4428
- function V() {
4435
+ function H() {
4429
4436
  this.data.setextHeadingSlurpLineEnding = void 0;
4430
4437
  }
4431
4438
  function B(g) {
@@ -6820,7 +6827,7 @@ function ys(e, n) {
6820
6827
  components: i,
6821
6828
  ignoreInvalidStyle: !0,
6822
6829
  jsx: I,
6823
- jsxs: H,
6830
+ jsxs: V,
6824
6831
  passKeys: !0,
6825
6832
  passNode: !0
6826
6833
  });
@@ -6901,7 +6908,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
6901
6908
  "aria-label": "Cargando",
6902
6909
  children: /* @__PURE__ */ I("span", { className: "sr-only", children: "Cargando..." })
6903
6910
  }
6904
- ), _s = () => /* @__PURE__ */ H("div", { className: "gpc-typing-indicator", role: "status", "aria-label": "Escribiendo", children: [
6911
+ ), _s = () => /* @__PURE__ */ V("div", { className: "gpc-typing-indicator", role: "status", "aria-label": "Escribiendo", children: [
6905
6912
  /* @__PURE__ */ I("span", { className: "gpc-typing-dot" }),
6906
6913
  /* @__PURE__ */ I("span", { className: "gpc-typing-dot" }),
6907
6914
  /* @__PURE__ */ I("span", { className: "gpc-typing-dot" })
@@ -6911,7 +6918,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
6911
6918
  messageRef: t = null
6912
6919
  }) => {
6913
6920
  const { t: r } = fe(), i = e.role === "user", l = !i && e.isStreaming && !e.content;
6914
- return /* @__PURE__ */ H(
6921
+ return /* @__PURE__ */ V(
6915
6922
  "div",
6916
6923
  {
6917
6924
  ref: t,
@@ -6927,25 +6934,25 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
6927
6934
  children: Is(e.timestamp)
6928
6935
  }
6929
6936
  ),
6930
- !i && n && e.metadata && /* @__PURE__ */ H("div", { className: "gpc-message-metadata", children: [
6931
- e.metadata.tokensUsed && /* @__PURE__ */ H("div", { className: "gpc-metadata-item", children: [
6932
- /* @__PURE__ */ H("strong", { children: [
6937
+ !i && n && e.metadata && /* @__PURE__ */ V("div", { className: "gpc-message-metadata", children: [
6938
+ e.metadata.tokensUsed && /* @__PURE__ */ V("div", { className: "gpc-metadata-item", children: [
6939
+ /* @__PURE__ */ V("strong", { children: [
6933
6940
  r("metadata.tokensUsed"),
6934
6941
  ":"
6935
6942
  ] }),
6936
6943
  " ",
6937
6944
  e.metadata.tokensUsed
6938
6945
  ] }),
6939
- e.metadata.responseTimeMs && /* @__PURE__ */ H("div", { className: "gpc-metadata-item", children: [
6940
- /* @__PURE__ */ H("strong", { children: [
6946
+ e.metadata.responseTimeMs && /* @__PURE__ */ V("div", { className: "gpc-metadata-item", children: [
6947
+ /* @__PURE__ */ V("strong", { children: [
6941
6948
  r("metadata.responseTime"),
6942
6949
  ":"
6943
6950
  ] }),
6944
6951
  " ",
6945
6952
  vs(e.metadata.responseTimeMs)
6946
6953
  ] }),
6947
- e.metadata.model && /* @__PURE__ */ H("div", { className: "gpc-metadata-item", children: [
6948
- /* @__PURE__ */ H("strong", { children: [
6954
+ e.metadata.model && /* @__PURE__ */ V("div", { className: "gpc-metadata-item", children: [
6955
+ /* @__PURE__ */ V("strong", { children: [
6949
6956
  r("metadata.model"),
6950
6957
  ":"
6951
6958
  ] }),
@@ -6973,7 +6980,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
6973
6980
  }, 100)), a.current = e.length;
6974
6981
  }, [e]);
6975
6982
  const c = r?.company_name || "TIA GPC", s = r?.company_logo_base64, u = s?.startsWith("data:") ? s : s ? `data:image/png;base64,${s}` : null;
6976
- return e.length === 0 && !n ? /* @__PURE__ */ I("div", { className: "gpc-messages-container", children: /* @__PURE__ */ H("div", { className: "gpc-empty-state", children: [
6983
+ return e.length === 0 && !n ? /* @__PURE__ */ I("div", { className: "gpc-messages-container", children: /* @__PURE__ */ V("div", { className: "gpc-empty-state", children: [
6977
6984
  u ? /* @__PURE__ */ I("div", { className: "gpc-welcome-logo", children: /* @__PURE__ */ I(
6978
6985
  "img",
6979
6986
  {
@@ -6984,7 +6991,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
6984
6991
  ) }) : /* @__PURE__ */ I(jr, { className: "gpc-empty-icon" }),
6985
6992
  /* @__PURE__ */ I("h3", { className: "gpc-empty-title", children: i("chat.welcome", { companyName: c }) }),
6986
6993
  /* @__PURE__ */ I("p", { className: "gpc-empty-text", children: i("chat.emptyState") })
6987
- ] }) }) : /* @__PURE__ */ H("div", { className: "gpc-messages-container gpc-scrollbar gpc-smooth-scroll", children: [
6994
+ ] }) }) : /* @__PURE__ */ V("div", { className: "gpc-messages-container gpc-scrollbar gpc-smooth-scroll", children: [
6988
6995
  e.map((h, f) => /* @__PURE__ */ I(
6989
6996
  Ls,
6990
6997
  {
@@ -7013,7 +7020,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7013
7020
  }, c = (u) => {
7014
7021
  u.key === "Enter" && !u.shiftKey && (u.preventDefault(), a(u));
7015
7022
  }, s = i.trim().length > 0 && !n && !t;
7016
- return /* @__PURE__ */ H("form", { onSubmit: a, className: "gpc-input-container", children: [
7023
+ return /* @__PURE__ */ V("form", { onSubmit: a, className: "gpc-input-container", children: [
7017
7024
  /* @__PURE__ */ I(
7018
7025
  "input",
7019
7026
  {
@@ -7041,7 +7048,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7041
7048
  children: n ? /* @__PURE__ */ I("span", { className: "gpc-spinner" }) : /* @__PURE__ */ I(Vr, { className: "gpc-icon" })
7042
7049
  }
7043
7050
  ),
7044
- /* @__PURE__ */ H("span", { id: "chat-input-help", className: "gpc-sr-only", children: [
7051
+ /* @__PURE__ */ V("span", { id: "chat-input-help", className: "gpc-sr-only", children: [
7045
7052
  r("chat.placeholder"),
7046
7053
  ". Máximo ",
7047
7054
  Ft.MAX_LENGTH,
@@ -7061,8 +7068,8 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7061
7068
  }, s = (u) => {
7062
7069
  console.error("Turnstile widget error:", u), a(r("turnstile.error")), t?.(new Error(r("turnstile.error")));
7063
7070
  };
7064
- return /* @__PURE__ */ H("div", { className: "gpc-validator-container", children: [
7065
- /* @__PURE__ */ H("div", { className: "gpc-validator-header", children: [
7071
+ return /* @__PURE__ */ V("div", { className: "gpc-validator-container", children: [
7072
+ /* @__PURE__ */ V("div", { className: "gpc-validator-header", children: [
7066
7073
  /* @__PURE__ */ I("h3", { className: "gpc-validator-title", children: r("chat.validation") }),
7067
7074
  /* @__PURE__ */ I("p", { className: "gpc-validator-subtitle", children: r("turnstile.verifying") })
7068
7075
  ] }),
@@ -7078,13 +7085,13 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7078
7085
  }
7079
7086
  }
7080
7087
  ) }),
7081
- i && /* @__PURE__ */ H("div", { className: "gpc-validator-loading", children: [
7088
+ i && /* @__PURE__ */ V("div", { className: "gpc-validator-loading", children: [
7082
7089
  /* @__PURE__ */ I(Ns, { size: "md" }),
7083
7090
  /* @__PURE__ */ I("p", { className: "gpc-validator-text", children: r("chat.validation") })
7084
7091
  ] }),
7085
- o && /* @__PURE__ */ H("div", { className: "gpc-validator-error", children: [
7092
+ o && /* @__PURE__ */ V("div", { className: "gpc-validator-error", children: [
7086
7093
  /* @__PURE__ */ I(Hr, { className: "gpc-error-icon" }),
7087
- /* @__PURE__ */ H("div", { className: "gpc-error-content", children: [
7094
+ /* @__PURE__ */ V("div", { className: "gpc-error-content", children: [
7088
7095
  /* @__PURE__ */ I("p", { className: "gpc-error-title", children: r("errors.validation") }),
7089
7096
  /* @__PURE__ */ I("p", { className: "gpc-error-message", children: o }),
7090
7097
  /* @__PURE__ */ I(
@@ -7154,7 +7161,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7154
7161
  )
7155
7162
  );
7156
7163
  } catch (y) {
7157
- l((O) => O.filter((V) => V.id !== b));
7164
+ l((O) => O.filter((H) => H.id !== b));
7158
7165
  let E;
7159
7166
  try {
7160
7167
  E = JSON.parse(y.message);
@@ -7257,13 +7264,13 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7257
7264
  e && e.hasValidCachedSession() && (p(!0), h("CACHED_SESSION"));
7258
7265
  }, [e]);
7259
7266
  const D = (M) => {
7260
- h(M), p(!0);
7267
+ h(M), p(!0), e && e.validateSession();
7261
7268
  };
7262
7269
  return xe(() => () => {
7263
7270
  e && e.releaseSession().catch((M) => {
7264
7271
  console.error("Failed to release session:", M);
7265
7272
  });
7266
- }, [e]), /* @__PURE__ */ H(
7273
+ }, [e]), /* @__PURE__ */ V(
7267
7274
  "div",
7268
7275
  {
7269
7276
  className: `gpc-chat-window gpc-animate-fade-in ${w === "dark" ? "gpc-dark" : ""}`,
@@ -7278,7 +7285,7 @@ const Sr = "https://www.tiagpctest.softiabot.com", ks = "0x4AAAAAAB-BKyDZcYYqCbi
7278
7285
  widgetConfig: t
7279
7286
  }
7280
7287
  ),
7281
- f ? /* @__PURE__ */ H(Bt, { children: [
7288
+ f ? /* @__PURE__ */ V(Bt, { children: [
7282
7289
  /* @__PURE__ */ I(
7283
7290
  zs,
7284
7291
  {
@@ -7331,40 +7338,40 @@ class Cr {
7331
7338
  try {
7332
7339
  const i = localStorage.getItem(t);
7333
7340
  if (i) {
7334
- const { sessionToken: l, timestamp: o } = JSON.parse(i), a = Date.now(), c = 1440 * 60 * 1e3;
7335
- if (a - o < c)
7341
+ const { sessionToken: l, timestamp: o, validated: a } = JSON.parse(i), c = Date.now(), s = 1440 * 60 * 1e3;
7342
+ if (a && c - o < s)
7336
7343
  return l;
7337
7344
  localStorage.removeItem(t);
7338
7345
  }
7339
7346
  } catch (i) {
7340
7347
  console.warn("[TIA GPC] Error leyendo sesión de localStorage:", i);
7341
7348
  }
7342
- const r = this._generateSessionToken();
7343
- return this._saveSessionToken(n, r), r;
7349
+ return this._generateSessionToken();
7344
7350
  }
7345
7351
  hasValidCachedSession() {
7346
7352
  const n = this._getStorageKey(this.licenseToken);
7347
7353
  try {
7348
7354
  const t = localStorage.getItem(n);
7349
7355
  if (t) {
7350
- const { sessionToken: r, timestamp: i } = JSON.parse(t), l = Date.now(), o = 1440 * 60 * 1e3;
7351
- return l - i < o;
7356
+ const { sessionToken: r, timestamp: i, validated: l } = JSON.parse(t), o = Date.now(), a = 1440 * 60 * 1e3;
7357
+ return l && o - i < a;
7352
7358
  }
7353
7359
  } catch (t) {
7354
7360
  console.warn("[TIA GPC] Error verificando sesión:", t);
7355
7361
  }
7356
7362
  return !1;
7357
7363
  }
7358
- _saveSessionToken(n, t) {
7359
- const r = this._getStorageKey(n);
7364
+ _saveSessionToken(n, t, r = !1) {
7365
+ const i = this._getStorageKey(n);
7360
7366
  try {
7361
- const i = {
7367
+ const l = {
7362
7368
  sessionToken: t,
7363
- timestamp: Date.now()
7369
+ timestamp: Date.now(),
7370
+ validated: r
7364
7371
  };
7365
- localStorage.setItem(r, JSON.stringify(i));
7366
- } catch (i) {
7367
- console.warn("[TIA GPC] Error guardando sesión en localStorage:", i);
7372
+ localStorage.setItem(i, JSON.stringify(l));
7373
+ } catch (l) {
7374
+ console.warn("[TIA GPC] Error guardando sesión en localStorage:", l);
7368
7375
  }
7369
7376
  }
7370
7377
  _clearSessionToken(n) {
@@ -7503,6 +7510,9 @@ class Cr {
7503
7510
  const n = this._generateSessionToken();
7504
7511
  this.sessionToken = n, this._saveSessionToken(this.licenseToken, n);
7505
7512
  }
7513
+ validateSession() {
7514
+ this._saveSessionToken(this.licenseToken, this.sessionToken, !0);
7515
+ }
7506
7516
  _handleError(n) {
7507
7517
  if (n.response) {
7508
7518
  const t = n.response.data, i = {
@@ -7530,21 +7540,21 @@ class Cr {
7530
7540
  }
7531
7541
  }
7532
7542
  let Ze = null;
7533
- const gu = (e, n) => ((!Ze || n && Ze.licenseToken !== n) && (Ze = new Cr(e, n)), Ze), Bs = { title: "TIA GPC", poweredBy: "Desarrollado por TIA GPC" }, Us = { title: "Asistente", placeholder: "Escribe tu pregunta...", send: "Enviar", close: "Cerrar", welcome: "¡Hola! Bienvenido a {{companyName}}. ¿En qué puedo ayudarte hoy?", emptyState: "Inicia una conversación escribiendo tu pregunta", validation: "Verificando seguridad...", retry: "Reintentar" }, js = { light: "Claro", dark: "Oscuro", toggle: "Cambiar tema" }, Vs = { unauthorized: "Autenticación fallida. Por favor, verifica tu token de licencia e intenta nuevamente.", validation: "Verificación anti-bot fallida. Por favor, recarga la página e intenta nuevamente.", network: "No se pudo conectar al servidor. Verifica tu conexión a internet.", rateLimit: "Has realizado demasiadas consultas o se alcanzó el límite de usuarios concurrentes. Por favor, espera un momento antes de continuar.", session: "Tu sesión ha expirado por inactividad. Por favor, recarga la página para continuar.", insufficientCredits: "Créditos insuficientes. Por favor, recarga créditos desde tu panel de administración para continuar usando TIA GPC.", generic: "Ha ocurrido un error inesperado. Por favor, intenta nuevamente.", aiServiceUnavailable: "El asistente está temporalmente no disponible. Por favor, intenta de nuevo en unos momentos.", serverError: "El servidor encontró un problema. Por favor, intenta de nuevo más tarde.", domainUnauthorized: "Este dominio no está autorizado para usar este widget. Por favor, contacta a tu administrador." }, Hs = { verifying: "Verificando que eres humano...", error: "No se pudo completar la verificación de seguridad. Por favor, recarga la página e intenta nuevamente." }, qs = { tokensUsed: "Tokens usados", responseTime: "Tiempo de respuesta", model: "Modelo" }, $s = {
7543
+ const gu = (e, n) => ((!Ze || n && Ze.licenseToken !== n) && (Ze = new Cr(e, n)), Ze), Bs = { title: "TIA GPC", poweredBy: "Desarrollado por TIA GPC", questionsTo: "Preguntas a" }, Us = { title: "Asistente", placeholder: "Escribe tu pregunta...", send: "Enviar", close: "Cerrar", welcome: "¡Hola! Bienvenido a {{companyName}}. ¿En qué puedo ayudarte hoy?", emptyState: "Inicia una conversación escribiendo tu pregunta", validation: "Verificando seguridad...", retry: "Reintentar" }, js = { light: "Claro", dark: "Oscuro", toggle: "Cambiar tema" }, Vs = { unauthorized: "Autenticación fallida. Por favor, verifica tu token de licencia e intenta nuevamente.", validation: "Verificación anti-bot fallida. Por favor, recarga la página e intenta nuevamente.", network: "No se pudo conectar al servidor. Verifica tu conexión a internet.", rateLimit: "Has realizado demasiadas consultas o se alcanzó el límite de usuarios concurrentes. Por favor, espera un momento antes de continuar.", session: "Tu sesión ha expirado por inactividad. Por favor, recarga la página para continuar.", insufficientCredits: "Créditos insuficientes. Por favor, recarga créditos desde tu panel de administración para continuar usando TIA GPC.", generic: "Ha ocurrido un error inesperado. Por favor, intenta nuevamente.", aiServiceUnavailable: "El asistente está temporalmente no disponible. Por favor, intenta de nuevo en unos momentos.", serverError: "El servidor encontró un problema. Por favor, intenta de nuevo más tarde.", domainUnauthorized: "Este dominio no está autorizado para usar este widget. Por favor, contacta a tu administrador." }, Hs = { verifying: "Verificando que eres humano...", error: "No se pudo completar la verificación de seguridad. Por favor, recarga la página e intenta nuevamente." }, qs = { tokensUsed: "Tokens usados", responseTime: "Tiempo de respuesta", model: "Modelo" }, $s = {
7534
7544
  widget: Bs,
7535
7545
  chat: Us,
7536
7546
  theme: js,
7537
7547
  errors: Vs,
7538
7548
  turnstile: Hs,
7539
7549
  metadata: qs
7540
- }, Gs = { title: "TIA GPC", poweredBy: "Powered by TIA GPC" }, Ws = { title: "Assistant", placeholder: "Type your question...", send: "Send", close: "Close", welcome: "Hello! Welcome to {{companyName}}. How can I help you today?", emptyState: "Start a conversation by typing your question", validation: "Verifying security...", retry: "Retry" }, Ks = { light: "Light", dark: "Dark", toggle: "Toggle theme" }, Ys = { unauthorized: "Authentication failed. Please check your license token and try again.", validation: "Bot verification failed. Please reload the page and try again.", network: "Unable to connect to the server. Please check your internet connection.", rateLimit: "You've made too many requests or the concurrent user limit has been reached. Please wait a moment before continuing.", session: "Your session has expired due to inactivity. Please reload the page to continue.", insufficientCredits: "Insufficient credits. Please reload credits from your admin panel to continue using TIA GPC.", generic: "An unexpected error has occurred. Please try again.", aiServiceUnavailable: "The assistant is temporarily unavailable. Please try again in a few moments.", serverError: "The server encountered a problem. Please try again later.", domainUnauthorized: "This domain is not authorized to use this widget. Please contact your administrator." }, Xs = { verifying: "Verifying you're human...", error: "Security verification could not be completed. Please reload the page and try again." }, Js = { tokensUsed: "Tokens used", responseTime: "Response time", model: "Model" }, Qs = {
7550
+ }, Gs = { title: "TIA GPC", poweredBy: "Powered by TIA GPC", questionsTo: "Questions to" }, Ws = { title: "Assistant", placeholder: "Type your question...", send: "Send", close: "Close", welcome: "Hello! Welcome to {{companyName}}. How can I help you today?", emptyState: "Start a conversation by typing your question", validation: "Verifying security...", retry: "Retry" }, Ks = { light: "Light", dark: "Dark", toggle: "Toggle theme" }, Ys = { unauthorized: "Authentication failed. Please check your license token and try again.", validation: "Bot verification failed. Please reload the page and try again.", network: "Unable to connect to the server. Please check your internet connection.", rateLimit: "You've made too many requests or the concurrent user limit has been reached. Please wait a moment before continuing.", session: "Your session has expired due to inactivity. Please reload the page to continue.", insufficientCredits: "Insufficient credits. Please reload credits from your admin panel to continue using TIA GPC.", generic: "An unexpected error has occurred. Please try again.", aiServiceUnavailable: "The assistant is temporarily unavailable. Please try again in a few moments.", serverError: "The server encountered a problem. Please try again later.", domainUnauthorized: "This domain is not authorized to use this widget. Please contact your administrator." }, Xs = { verifying: "Verifying you're human...", error: "Security verification could not be completed. Please reload the page and try again." }, Js = { tokensUsed: "Tokens used", responseTime: "Response time", model: "Model" }, Qs = {
7541
7551
  widget: Gs,
7542
7552
  chat: Ws,
7543
7553
  theme: Ks,
7544
7554
  errors: Ys,
7545
7555
  turnstile: Xs,
7546
7556
  metadata: Js
7547
- }, Zs = { title: "TIA GPC", poweredBy: "Propulsé par TIA GPC" }, eu = { title: "Assistant", placeholder: "Tapez votre question...", send: "Envoyer", close: "Fermer", welcome: "Bonjour ! Bienvenue à {{companyName}}. Comment puis-je vous aider aujourd'hui ?", emptyState: "Commencez une conversation en tapant votre question", validation: "Vérification de sécurité...", retry: "Réessayer" }, nu = { light: "Clair", dark: "Sombre", toggle: "Changer de thème" }, tu = { unauthorized: "Échec de l'authentification. Veuillez vérifier votre jeton de licence et réessayer.", validation: "La vérification anti-bot a échoué. Veuillez recharger la page et réessayer.", network: "Impossible de se connecter au serveur. Veuillez vérifier votre connexion internet.", rateLimit: "Vous avez fait trop de demandes ou la limite d'utilisateurs concurrents a été atteinte. Veuillez patienter un moment avant de continuer.", session: "Votre session a expiré en raison d'inactivité. Veuillez recharger la page pour continuer.", insufficientCredits: "Crédits insuffisants. Veuillez recharger des crédits depuis votre panneau d'administration pour continuer à utiliser TIA GPC.", generic: "Une erreur inattendue s'est produite. Veuillez réessayer.", aiServiceUnavailable: "L'assistant est temporairement indisponible. Veuillez réessayer dans quelques instants.", serverError: "Le serveur a rencontré un problème. Veuillez réessayer plus tard.", domainUnauthorized: "Ce domaine n'est pas autorisé à utiliser ce widget. Veuillez contacter votre administrateur." }, ru = { verifying: "Vérification que vous êtes humain...", error: "La vérification de sécurité n'a pas pu être complétée. Veuillez recharger la page et réessayer." }, iu = { tokensUsed: "Tokens utilisés", responseTime: "Temps de réponse", model: "Modèle" }, lu = {
7557
+ }, Zs = { title: "TIA GPC", poweredBy: "Propulsé par TIA GPC", questionsTo: "Questions à" }, eu = { title: "Assistant", placeholder: "Tapez votre question...", send: "Envoyer", close: "Fermer", welcome: "Bonjour ! Bienvenue à {{companyName}}. Comment puis-je vous aider aujourd'hui ?", emptyState: "Commencez une conversation en tapant votre question", validation: "Vérification de sécurité...", retry: "Réessayer" }, nu = { light: "Clair", dark: "Sombre", toggle: "Changer de thème" }, tu = { unauthorized: "Échec de l'authentification. Veuillez vérifier votre jeton de licence et réessayer.", validation: "La vérification anti-bot a échoué. Veuillez recharger la page et réessayer.", network: "Impossible de se connecter au serveur. Veuillez vérifier votre connexion internet.", rateLimit: "Vous avez fait trop de demandes ou la limite d'utilisateurs concurrents a été atteinte. Veuillez patienter un moment avant de continuer.", session: "Votre session a expiré en raison d'inactivité. Veuillez recharger la page pour continuer.", insufficientCredits: "Crédits insuffisants. Veuillez recharger des crédits depuis votre panneau d'administration pour continuer à utiliser TIA GPC.", generic: "Une erreur inattendue s'est produite. Veuillez réessayer.", aiServiceUnavailable: "L'assistant est temporairement indisponible. Veuillez réessayer dans quelques instants.", serverError: "Le serveur a rencontré un problème. Veuillez réessayer plus tard.", domainUnauthorized: "Ce domaine n'est pas autorisé à utiliser ce widget. Veuillez contacter votre administrateur." }, ru = { verifying: "Vérification que vous êtes humain...", error: "La vérification de sécurité n'a pas pu être complétée. Veuillez recharger la page et réessayer." }, iu = { tokensUsed: "Tokens utilisés", responseTime: "Temps de réponse", model: "Modèle" }, lu = {
7548
7558
  widget: Zs,
7549
7559
  chat: eu,
7550
7560
  theme: nu,
@@ -7586,7 +7596,7 @@ const ou = ({
7586
7596
  mobileFullscreen: w = we.mobileFullscreen,
7587
7597
  ...b
7588
7598
  }) => {
7589
- const [A, y] = Q(f), [E, k] = Q(!1), [D, M] = Q(null), [x, O] = Q(!0), V = zr(() => new Cr(c, e), [c, e]);
7599
+ const [A, y] = Q(f), [E, k] = Q(!1), [D, M] = Q(null), [x, O] = Q(!0), H = zr(() => new Cr(c, e), [c, e]);
7590
7600
  if (xe(() => {
7591
7601
  const T = () => {
7592
7602
  k(Ts());
@@ -7601,7 +7611,7 @@ const ou = ({
7601
7611
  return;
7602
7612
  }
7603
7613
  try {
7604
- const v = await V.getInitConfig();
7614
+ const v = await H.getInitConfig();
7605
7615
  v.success && (M(v.data), s && s(v.data));
7606
7616
  } catch (v) {
7607
7617
  console.error("[TIA GPC Widget] Error loading config:", v), u && u(v);
@@ -7609,7 +7619,7 @@ const ou = ({
7609
7619
  O(!1);
7610
7620
  }
7611
7621
  })();
7612
- }, [e, V, s, u]), !e)
7622
+ }, [e, H, s, u]), !e)
7613
7623
  return console.error('[TIA GPC Widget] Error: "token" prop is required'), null;
7614
7624
  const B = () => {
7615
7625
  y(!1), h?.();
@@ -7617,17 +7627,17 @@ const ou = ({
7617
7627
  const T = {};
7618
7628
  return l && (T["--gpc-color-primary"] = l), (!E || !w) && (o && (T["--gpc-widget-width"] = o), a && (T["--gpc-widget-height"] = a)), T;
7619
7629
  };
7620
- return /* @__PURE__ */ I(Rr, { i18n: nn, children: /* @__PURE__ */ H(
7630
+ return /* @__PURE__ */ I(Rr, { i18n: nn, children: /* @__PURE__ */ V(
7621
7631
  "div",
7622
7632
  {
7623
7633
  className: `gpc-widget gpc-widget-container ${j()} ${t === "dark" ? "gpc-dark" : ""}`,
7624
7634
  style: N(),
7625
7635
  children: [
7626
- !A && /* @__PURE__ */ I(Kr, { onClick: () => y(!0) }),
7636
+ !A && /* @__PURE__ */ I(Kr, { onClick: () => y(!0), widgetConfig: D }),
7627
7637
  A && !x && /* @__PURE__ */ I(
7628
7638
  Fs,
7629
7639
  {
7630
- gpcService: V,
7640
+ gpcService: H,
7631
7641
  licenseToken: e,
7632
7642
  widgetConfig: D,
7633
7643
  turnstileSiteKey: n,