@staylift-tech/conv-widget 0.0.17 → 0.0.18

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.
@@ -26057,12 +26057,11 @@ function s(){return s=Object.assign?Object.assign.bind():function(e){for(var t=1
26057
26057
 
26058
26058
  const stayliftWidgetCss = () => `:host{--sl-primary:#6366f1;--sl-bg:#18181b;--sl-text:#ffffff;--sl-muted:#a1a1aa;--sl-border:#27272a;--sl-surface:#27272a;--sl-success:#22c55e;--sl-danger:#ef4444;font-family:-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;font-size:14px;line-height:1.5;color:var(--sl-text)}.sl-widget *{box-sizing:border-box}.sl-floating{position:fixed;z-index:999999}.sl-x-left{left:40px;right:auto}.sl-x-center{left:50%;right:auto;transform:translateX(-50%)}.sl-x-right{right:40px;left:auto}.sl-y-top{top:40px;bottom:auto}.sl-y-bottom{bottom:40px;top:auto}.sl-fab{width:64px;height:64px;border-radius:50%;border:1px solid var(--sl-border);background:var(--sl-bg);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px rgba(0, 0, 0, 0.4);transition:transform 0.2s, box-shadow 0.2s;padding:8px}.sl-fab:hover{transform:scale(1.05);box-shadow:0 12px 40px rgba(0, 0, 0, 0.5)}.sl-fab-pill{display:flex;align-items:center;gap:16px;padding:12px 16px 12px 12px;background:var(--sl-bg);border:1px solid var(--sl-border);border-radius:32px;box-shadow:0 8px 32px rgba(0, 0, 0, 0.4);animation:sl-fade-in 0.2s ease}.sl-fab-avatar{width:48px;height:48px;border-radius:50%;overflow:hidden;flex-shrink:0;border:1px solid var(--sl-border)}.sl-fab-avatar-img{width:100%;height:100%;object-fit:cover}.sl-fab-content{display:flex;flex-direction:column;gap:8px}.sl-fab-prompt{font-size:14px;font-weight:500;color:var(--sl-text);white-space:nowrap}.sl-fab-btn{display:flex;align-items:center;gap:6px;padding:8px 20px;border:none;border-radius:20px;background:var(--sl-primary);color:white;font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s}.sl-fab-btn:hover{filter:brightness(1.1);transform:translateY(-1px)}.sl-card{width:440px;height:440px;max-height:calc(100vh - 100px);background:var(--sl-bg);border-radius:16px;border:1px solid var(--sl-border);box-shadow:0 20px 60px rgba(0, 0, 0, 0.5);display:flex;flex-direction:column;overflow:hidden;animation:sl-fade-in 0.2s ease}.sl-inline{width:100%;max-width:540px;height:440px;background:var(--sl-bg);border-radius:16px;border:1px solid var(--sl-border);display:flex;flex-direction:column;overflow:hidden}@keyframes sl-fade-in{from{opacity:0;transform:translateY(10px) scale(0.98)}to{opacity:1;transform:translateY(0) scale(1)}}.sl-header{display:flex;align-items:center;justify-content:space-between;padding:16px;flex-shrink:0;border-bottom:1px solid var(--sl-border)}.sl-header-left{display:flex;align-items:center;gap:16px}.sl-orb-ring{width:40px;height:40px;border-radius:50%;border:1px solid var(--sl-border);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center}.sl-header-avatar-img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}.sl-header-text{display:flex;flex-direction:column;gap:2px}.sl-title{font-size:14px;font-weight:500;color:var(--sl-text);line-height:1.2}.sl-subtitle{font-size:12px;color:var(--sl-muted);line-height:1.2}.sl-error{color:var(--sl-danger)}.sl-connected{color:var(--sl-success)}.sl-shimmer{background:linear-gradient(90deg, var(--sl-muted) 0%, var(--sl-text) 50%, var(--sl-muted) 100%);background-size:200% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:sl-shimmer 1.5s infinite;text-transform:capitalize}@keyframes sl-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.sl-header-right{display:flex;align-items:center;gap:12px}.sl-dot{width:8px;height:8px;border-radius:50%;background:var(--sl-muted);opacity:0.4;transition:all 0.3s}.sl-dot--active{background:var(--sl-success);opacity:1;box-shadow:0 0 8px rgba(34, 197, 94, 0.5)}.sl-dot--pulse{background:var(--sl-text);opacity:0.4;animation:sl-pulse 1s infinite}@keyframes sl-pulse{0%,100%{opacity:0.4}50%{opacity:0.8}}.sl-close{width:32px;height:32px;border-radius:50%;border:none;background:transparent;color:var(--sl-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s}.sl-close:hover{background:var(--sl-surface);color:var(--sl-text)}.sl-content{flex:1;overflow-y:auto;padding:12px 24px 24px;display:flex;flex-direction:column;gap:8px}.sl-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.sl-empty-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1px solid var(--sl-border)}.sl-empty-title{margin:0;font-size:15px;font-weight:500;color:var(--sl-text)}.sl-empty-desc{margin:0;font-size:13px;color:var(--sl-muted)}.sl-mode-toggle{display:flex;gap:8px;margin-bottom:12px;padding:4px;background:var(--sl-surface);border-radius:10px}.sl-mode-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;background:transparent;color:var(--sl-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all 0.2s}.sl-mode-btn:hover{color:var(--sl-text)}.sl-mode-btn--active{background:var(--sl-bg);color:var(--sl-text);box-shadow:0 1px 3px rgba(0, 0, 0, 0.2)}.sl-voice-controls{display:flex;justify-content:center}.sl-voice-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:14px 24px;border:none;border-radius:12px;background:var(--sl-primary);color:white;font-size:14px;font-weight:500;cursor:pointer;transition:all 0.2s}.sl-voice-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.sl-voice-btn:disabled{opacity:0.6;cursor:not-allowed}.sl-voice-btn--end{background:var(--sl-danger)}.sl-voice-btn--end:hover:not(:disabled){filter:brightness(1.1)}.sl-msg{display:flex;flex-direction:column;gap:4px}.sl-msg-row{display:flex;align-items:flex-end;gap:8px}.sl-msg--user .sl-msg-row{justify-content:flex-end}.sl-msg--assistant .sl-msg-row{justify-content:flex-start}.sl-msg-bubble{max-width:85%;padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.sl-msg--user .sl-msg-bubble{background:var(--sl-primary);color:white;border-bottom-right-radius:4px}.sl-msg--assistant .sl-msg-bubble{background:var(--sl-surface);color:var(--sl-text);border-bottom-left-radius:4px}.sl-msg-actions{display:flex;gap:4px;padding-left:32px}.sl-action{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--sl-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s}.sl-action:hover{background:var(--sl-surface);color:var(--sl-text)}.sl-offer-card{display:flex;flex-direction:row;gap:0;border-radius:12px;overflow:hidden;border:1px solid var(--sl-border);background:var(--sl-surface);text-decoration:none;color:inherit;cursor:pointer;transition:border-color 0.2s, box-shadow 0.2s;min-height:80px}.sl-offer-card:hover{border-color:var(--sl-primary);box-shadow:0 2px 8px rgba(0,0,0,0.12)}.sl-offer-img{width:80px;min-height:80px;height:auto;object-fit:cover;flex-shrink:0;background:var(--sl-border)}.sl-offer-body{display:flex;flex-direction:column;gap:2px;padding:8px 12px;min-width:0;justify-content:center}.sl-offer-title{font-size:13px;font-weight:600;color:var(--sl-text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sl-offer-desc{font-size:12px;color:var(--sl-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sl-offer-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:var(--sl-primary);margin-top:2px}.sl-offers-carousel{display:flex;flex-direction:column;gap:6px;max-width:85%}.sl-offers-nav{display:flex;align-items:center;justify-content:center;gap:8px}.sl-offers-nav-btn{width:28px;height:28px;border-radius:50%;border:1px solid var(--sl-border);background:var(--sl-surface);color:var(--sl-text);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all 0.2s}.sl-offers-nav-btn:hover:not(:disabled){border-color:var(--sl-primary);color:var(--sl-primary)}.sl-offers-nav-btn:disabled{opacity:0.3;cursor:default}.sl-offers-counter{font-size:12px;color:var(--sl-muted);min-width:40px;text-align:center}.sl-footer{padding:16px;border-top:1px solid var(--sl-border);flex-shrink:0}.sl-branding{text-align:center;margin-top:8px;padding-top:8px}.sl-branding a{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--sl-muted);text-decoration:none;opacity:0.6;transition:opacity 0.2s}.sl-branding a:hover{opacity:1}.sl-branding-logo{width:16px;height:16px;border-radius:3px;object-fit:cover}.sl-input-row{display:flex;align-items:center;gap:8px}.sl-input{flex:1;height:36px;padding:0 12px;border:none;border-radius:8px;background:transparent;color:var(--sl-text);font-size:14px;outline:none}.sl-input::placeholder{color:var(--sl-muted)}.sl-input:disabled{opacity:0.5;cursor:not-allowed}.sl-btn{width:36px;height:36px;border-radius:50%;border:none;background:transparent;color:var(--sl-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0}.sl-btn:hover:not(:disabled){background:var(--sl-surface);color:var(--sl-text)}.sl-btn:disabled{opacity:0.3;cursor:not-allowed}.sl-btn--end{background:var(--sl-surface);color:var(--sl-text)}.sl-btn--end:hover:not(:disabled){background:var(--sl-danger);color:white}.sl-terms{display:flex;flex-direction:column;height:100%;padding:24px}.sl-terms-content{flex:1;display:flex;flex-direction:column;justify-content:center;gap:16px}.sl-terms-title{margin:0;font-size:18px;font-weight:600;color:var(--sl-text)}.sl-terms-text{margin:0;font-size:14px;line-height:1.6;color:var(--sl-text)}.sl-terms-warning{margin:0;font-size:13px;line-height:1.5;color:var(--sl-muted);font-style:italic}.sl-terms-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid var(--sl-border)}.sl-terms-btn{flex:1;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all 0.2s}.sl-terms-btn--decline{background:var(--sl-surface);color:var(--sl-muted)}.sl-terms-btn--decline:hover{background:var(--sl-border);color:var(--sl-text)}.sl-terms-btn--agree{background:var(--sl-primary);color:white}.sl-terms-btn--agree:hover{filter:brightness(1.1)}@media (max-width: 480px){.sl-card{width:calc(100vw - 32px);max-width:400px}.sl-floating.sl-x-left,.sl-floating.sl-x-right{left:16px;right:16px}.sl-floating.sl-x-center{left:16px;right:16px;transform:none}.sl-floating.sl-y-bottom{bottom:16px}.sl-floating.sl-y-top{top:16px}}`;
26059
26059
 
26060
- // Blocked agent IDs (unpaid/inactive subscriptions)
26061
- const BLOCKED_AGENT_IDS = [
26062
- // Add agent IDs here to block them, e.g.:
26060
+ // Allowed agent IDs (active subscriptions)
26061
+ const ALLOWED_AGENT_IDS = [
26062
+ // Add agent IDs here to allow them, e.g.:
26063
26063
  // 'agent_abc123',
26064
- 'agent_7701ke555bnjedaacb1w0x9q3c5p',
26065
- 'agent_2801kfn62tyye3mv2enkv3btar6k'
26064
+ 'agent_1801kfc3vgc7fa3r8r39nev2jstj'
26066
26065
  ];
26067
26066
  const StayliftWidget = class {
26068
26067
  constructor(hostRef) {
@@ -26506,8 +26505,8 @@ const StayliftWidget = class {
26506
26505
  };
26507
26506
  }
26508
26507
  render() {
26509
- // Block rendering for unpaid/inactive agent IDs
26510
- if (BLOCKED_AGENT_IDS.includes(this.agentId))
26508
+ // Only render for allowed agent IDs
26509
+ if (!ALLOWED_AGENT_IDS.includes(this.agentId))
26511
26510
  return null;
26512
26511
  const isTransitioning = this.status === 'connecting' || this.status === 'disconnecting';
26513
26512
  const isCallActive = this.status === 'connected' && !this.isTextOnlyMode;
@@ -1,11 +1,10 @@
1
1
  import { h } from "@stencil/core";
2
2
  import { TextConversation, VoiceConversation } from "@elevenlabs/client";
3
- // Blocked agent IDs (unpaid/inactive subscriptions)
4
- const BLOCKED_AGENT_IDS = [
5
- // Add agent IDs here to block them, e.g.:
3
+ // Allowed agent IDs (active subscriptions)
4
+ const ALLOWED_AGENT_IDS = [
5
+ // Add agent IDs here to allow them, e.g.:
6
6
  // 'agent_abc123',
7
- 'agent_7701ke555bnjedaacb1w0x9q3c5p',
8
- 'agent_2801kfn62tyye3mv2enkv3btar6k'
7
+ 'agent_1801kfc3vgc7fa3r8r39nev2jstj'
9
8
  ];
10
9
  export class StayliftWidget {
11
10
  constructor() {
@@ -443,8 +442,8 @@ export class StayliftWidget {
443
442
  };
444
443
  }
445
444
  render() {
446
- // Block rendering for unpaid/inactive agent IDs
447
- if (BLOCKED_AGENT_IDS.includes(this.agentId))
445
+ // Only render for allowed agent IDs
446
+ if (!ALLOWED_AGENT_IDS.includes(this.agentId))
448
447
  return null;
449
448
  const isTransitioning = this.status === 'connecting' || this.status === 'disconnecting';
450
449
  const isCallActive = this.status === 'connected' && !this.isTextOnlyMode;