1 2!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="4e248efc-8332-57d0-8917-a4c293c13ab2")}catch(e){}}(); 3import{a as B,b as R}from"./chunk-67LANPY6.js";import{a as N}from"./chunk-EMOYAK6Z.js";import{a as F}from"./chunk-3I2R76UU.js";import"./chunk-SMVKOGRJ.js";import{a as U}from"./chunk-ZSFXLLKG.js";import"./chunk-I5TYGA5O.js";import{Ib as A,Id as j,Jb as te,Jd as oe,Pd as H,Qd as ie,ae as L,be as ne,da as E,ha as Q,ia as z,la as ee}from"./chunk-3DSPHW6V.js";import{O as V,P as J}from"./chunk-63QE6F3C.js";import{n as W,r as K}from"./chunk-J3ZCYF7X.js";import"./chunk-N6HKC5YM.js";import"./chunk-EHPICUXU.js";import{Db as I,Eb as O,Sb as T,Wb as D,rc as Y}from"./chunk-NZAURXIC.js";import{D as S,l as M,y as P}from"./chunk-PDBQSBW2.js";import{Ib as s,Ja as v,Jb as m,Lc as b,Nc as c,Va as h,Wa as p,Zc as d,Zd as q,ec as f,gd as C,hc as r,jc as y,tc as a,uc as n,vc as k,zc as u}from"./chunk-RX45F3VG.js";import"./chunk-XTLLHG7S.js";import"./chunk-3YV6UUBL.js";import"./chunk-JLENAXOB.js";import"./chunk-2QIXGXOC.js";import"./chunk-SNF2N7IK.js";import"./chunk-NM7LVQTP.js";import"./chunk-IK6B3JC3.js";import{a as w,b as x,m as g}from"./chunk-C6VPWJCA.js";S();Y();Q();ee();q();ne();oe();J();ie();te();K();S();function ae(i,_){i&1&&(a(0,"div",9),k(1,"div",10),n())}function re(i,_){if(i&1){let e=u();a(0,"div",11)(1,"div",12),k(2,"img",13),n(),a(3,"div",14)(4,"h1",15),d(5,"Unlock API access with AI Max"),n(),a(6,"p",16),d(7," Integrate BIGVU with your preferred workflow tools, such as Zapier, Make, or Airtable. "),n()(),a(8,"div",17)(9,"p"),d(10,"Your BIGVU API keys allow access to the API and any videos generated
3will be under your workspace."),n()(),a(11,"div",18)(12,"lib-button",19),b("clicked",function(){h(e);let t=c();return p(t.openDocumentation())}),d(13," See documentation "),n(),a(14,"lib-button",20),b("clicked",function(){h(e);let t=c();return p(t.upgradeToAIMax())}),d(15," Upgrade to AI MAX "),n()()()}i&2&&(s(12),r("variant","ghost")("size","md")("rightIconContent","/img/icon-library/basic-ui/external-link.svg"),s(2),r("variant","primary")("size","md")("leftIconContent","img/profile/ai-max-diamond.svg")("preserveIconColor",!0))}function se(i,_){if(i&1){let e=u();a(0,"div",11)(1,"div",21),k(2,"img",22),n(),a(3,"div",14)(4,"h1",15),d(5,"No webhooks yet"),n(),a(6,"p",16),d(7," Integrate BIGVU with your preferred workflow tools, such as Zapier, Make, or Airtable. "),n()(),a(8,"div",18)(9,"lib-button",19),b("clicked",function(){h(e);let t=c();return p(t.openDocumentation())}),d(10," See documentation "),n(),a(11,"lib-button",23),b("clicked",function(){h(e);let t=c();return p(t.addWebhook())}),d(12," Add webhook "),n()()()}i&2&&(s(9),r("variant","ghost")("size","md")("rightIconContent","/img/icon-library/basic-ui/external-link.svg"),s(2),r("variant","primary")("size","md")("leftIconContent","icon-add-white-webhooks"))}function ce(i,_){if(i&1){let e=u();a(0,"lib-dropdown",34),b("valueChange",function(t){h(e);let l=c(2);return p(l.onWorkspaceChange(t))}),n()}if(i&2){let e=c(2);r("options",e.workspaceOptions)("value",e.selectedWorkspaceId)("placeholder",e.selectedWorkspaceName)}}function le(i,_){i&1&&k(0,"webhooks-table-shimmer",35),i&2&&r("rowCount",3)}function de(i,_){if(i&1){let e=u();a(0,"webhooks-table",36),b("onToggle",function(t){h(e);let l=c(2);return p(l.onToggleWebhook(t))})("onCopyUrl",function(t){h(e);let l=c(2);return p(l.onCopyUrl(t))})("onDelete",function(t){h(e);let l=c(2);return p(l.onDeleteWebhook(t))})("onResync",function(t){h(e);let l=c(2);return p(l.onResyncWebhook(t))})("onEdit",function(t){h(e);let l=c(2);return p(l.onEditWebhook(t))})("onTest",function(t){h(e);let l=c(2);return p(l.onTestWebhook(t))}),n()}if(i&2){let e=c(2);r("webhooks",e.webhooks)("isLoading",e.isLoading)}}function he(i,_){if(i&1){let e=u();a(0,"div",37)(1,"div",21),k(2,"img",22),n(),a(3,"div",14)(4,"h2",15),d(5,"No webhooks yet"),n(),a(6,"p",16),d(7," Integrate BIGVU with your preferred workflow tools, such as Zapier, Make, or Airtable. "),n()(),a(8,"lib-button",19),b("clicked",function(){h(e);let t=c(2);return p(t.openDocumentation())}),d(9," See documentation "),n()()}i&2&&(s(8),r("variant","ghost")("size","md")("rightIconContent","/img/icon-library/basic-ui/external-link.svg"))}function pe(i,_){if(i&1){let e=u();a(0,"div",24)(1,"div",25)(2,"div",26)(3,"h1",27),d(4,"Webhooks"),n(),a(5,"p",28),d(6," Add a webhook to get notified when a video is ready. We'll POST to each active webhook. "),n()(),a(7,"div",29)(8,"lib-button",23),b("clicked",function(){h(e);let t=c();return p(t.addWebhook())}),d(9," Add webhook "),n(),f(10,ce,1,3,"lib-dropdown",30),n()(),f(11,le,1,1,"webhooks-table-shimmer",31)(12,de,1,2,"webhooks-table",32)(13,he,10,3,"div",33),n()}if(i&2){let e=c();s(8),r("variant","primary")("size","md")("leftIconContent","icon-add-white-webhooks"),s(2),r("ngIf",e.workspaces.length>1),s(),r("ngIf",e.isLoading),s(),r("ngIf",!e.isLoading&&e.hasWebhooks),s(),r("ngIf",!e.isLoading&&!e.hasWebhooks)}}var Oe=(()=>{class i{constructor(e,o,t,l,$,G,Z,X){this.navigationHelperService=e,this.planHelperService=o,this.premiumPlanService=t,this.notificationsService=l,this.dialogHelperService=$,this.deskManagerHelperService=G,this.router=Z,this.webhooksService=X,this.isLoading=!0,this.isAIMaxPlan=!1,this.isInitialized=!1,this.webhooks=[],this.workspaces=[],this.selectedWorkspaceId=""}ngOnInit(){return g(this,null,function*(){this.navigationHelperService.hideNavigationMenu=!0,yield this.checkPlanStatus(),this.subscribeToPlanChanges(),yield this.loadWorkspaces(),yield this.loadWebhooks(),this.subscribeToWorkspaceChanges()})}ngOnDestroy(){this.navigationHelperService.hideNavigationMenu=!1,this.planSubscription?.unsubscribe(),this.workspaceSubscription?.unsubscribe()}checkPlanStatus(){return g(this,null,function*(){try{this.isAIMaxPlan=yield this.planHelperService.isAIMaxPlanByCurrentPlan()}catch(e){console.error("Failed to check plan status:",e),this.isAIMaxPlan=!1}})}loadWebhooks(){return g(this,null,function*(){try{let e=yield this.webhooksService.getWebhooks();this.webhooks=e,this.hasWebhooks&&(this.isInitialized=!0)}catch(e){console.error("Failed to load webhooks:",e),this.webhooks=[]}finally{this.isLoading=!1}})}loadWorkspaces(){return g(this,null,function*(){try{let e=yield this.deskManagerHelperService.getOrganizationData();this.workspaces=e.desks||[],this.selectedWorkspaceId=this.deskManagerHelperService.getSelectedWorkspaceId()||""}
3catch(e){console.error("Failed to load workspaces:",e),this.workspaces=[]}})}subscribeToWorkspaceChanges(){this.workspaceSubscription=this.deskManagerHelperService.workspaceChanged.subscribe(e=>{e&&e.workspaceId!==this.selectedWorkspaceId&&(this.selectedWorkspaceId=e.workspaceId,this.isLoading=!0,this.loadWebhooks())})}get workspaceOptions(){return this.workspaces.map(e=>({name:e.name,value:e.id||e.deskId}))}onWorkspaceChange(e){if(e===this.selectedWorkspaceId)return;let o=this.workspaces.find(t=>(t.id||t.deskId)===e);o&&(this.deskManagerHelperService.setSelectedWorkspace({workspaceId:o.id||o.deskId,workspaceName:o.name,workspaceIcon:o.logo?.resource?.url||"",workspaceType:o.type}),this.selectedWorkspaceId=e,this.webhooks=[],this.isLoading=!0,this.loadWebhooks())}subscribeToPlanChanges(){this.planSubscription=this.planHelperService.organizationPlan$.subscribe(e=>{e&&(this.isAIMaxPlan=this.planHelperService.isAIMaxPlan(e.display?.name||e.genericName))})}get hasWebhooks(){return this.webhooks.length>0}get showTableLayout(){return this.isInitialized||this.hasWebhooks}get selectedWorkspaceName(){return this.workspaces.find(o=>(o.id||o.deskId)===this.selectedWorkspaceId)?.name||"Select workspace"}goBack(){this.navigationHelperService.back()}openDocumentation(){window.open("https://faq.bigvu.tv/","_blank")}addWebhook(){this.webhooksService.openCreateWebhookDialog(e=>g(this,null,function*(){this.notificationsService.loading(`Adding ${e.name}...`,{duration:3e4});try{yield this.webhooksService.addWebhook(e.name,e.url),this.notificationsService.success("Webhook added successfully"),yield this.loadWebhooks()}catch(o){console.error("Failed to add webhook:",o),this.notificationsService.error(N())}}))}onToggleWebhook(e){return g(this,null,function*(){let o=e.newStatus?"active":"inactive";this.webhooks=this.webhooks.map(t=>t.id===e.webhook.id?x(w({},t),{status:o}):t);try{yield this.webhooksService.toggleWebhookStatus(e.webhook,e.newStatus)}finally{yield this.loadWebhooks()}})}onCopyUrl(e){this.webhooksService.copyUrlToClipboard(e.url)}onDeleteWebhook(e){let o=e.name||"webhook";this.dialogHelperService.showUiConfirmationDialog({title:"Delete Webhook",msg:`Are you sure you want to delete <strong>${o}</strong>?`,confirmationText:"Delete",cancellationText:"Cancel",confirmButtonVariant:"half-filled-red",cancelButtonVariant:"text-royal",closable:!0,onSubmit:()=>g(this,null,function*(){this.dialogHelperService.close();try{yield this.webhooksService.removeWebhook(e.id),this.notificationsService.success("Webhook deleted successfully"),yield this.loadWebhooks()}catch(t){console.error("Failed to delete webhook:",t),this.notificationsService.error("Failed to delete webhook")}}),onClose:()=>{this.dialogHelperService.close()}})}onResyncWebhook(e){return g(this,null,function*(){try{yield this.webhooksService.updateWebhookStatus(e.id,"active"),yield this.loadWebhooks(),yield this.webhooksService.waitForWebhookSync(e.id,e.name||"Webhook"),yield this.loadWebhooks()}catch(o){console.error("Failed to resync webhook:",o),this.notificationsService.error("Failed to resync webhook")}})}onEditWebhook(e){this.webhooksService.openEditWebhookDialog(e,o=>g(this,null,function*(){try{this.notificationsService.info("Updating webhook..."),o.webhookId&&(yield this.webhooksService.updateWebhook(o.webhookId,o.name)),this.notificationsService.success("Webhook updated successfully"),yield this.loadWebhooks()}catch(t){console.error("Failed to update webhook:",t),this.notificationsService.error("Failed to update webhook")}}))}onTestWebhook(e){return g(this,null,function*(){let o=e.name||"webhook";this.notificationsService.loading(`Testing ${o}...`,{duration:1e4});try{(yield this.webhooksService.testWebhook(e.id)).status==="success"?this.notificationsService.success(`${o} test delivered`):this.notificationsService.error(`${o} failed to deliver the test`)}catch(t){console.error("Failed to test webhook:",t),this.notificationsService.error(`${o} failed to deliver the test`)}})}upgradeToAIMax(){let e=this.router.url;this.premiumPlanService.openPricingDialog(E.AI_MAX,e,e,z.webhooks)}static{this.\u0275fac=function(o){return new(o||i)(m(U),m(L),m(j),m(V),m(H),m(A),m(W),m(F))}}static{this.\u0275cmp=v({type:i,selectors:[["webhook-dashboard"]],standalone:!0,features:[C],decls:10,vars:8,consts:[[1,"webhook-dashboard"],[1,"header"],[1,"header-left"],[3,"clicked","variant","iconContent"],["type","text","color","blue"],[1,"main-content"],["class","loading-container",4,"ngIf"],["class","empty-state-container",4,"ngIf"],["class","webhooks-content",4,"ngIf"],[1,"loading-container"],[1,"loading-spinner"],[1,"empty-state-container"],[1,"integration-illustration"],["src","img/webhooks-dashboard/webhook-upsell-table-logo.svg","alt","Webhooks Illustration"],[1,"empty-state-text"],[1,"empty-state-title"],[1,"empty-state-description"],[1,"api-description"],[1,"button-container"],[3,"clicked","variant","size","rightIconContent"],[3,"clicked","variant","size","leftIconContent","preserveIconColor"],[1,"empty-state-icon"],["src","/img/icon-library/basic-ui/empty-state-icon.svg","alt","empty state icon"],[3,"clicked","variant","size","leftIconContent"],[1,"webhooks-content"],[1,"page-header"],[1,"page-header-text"],[1,"page-title"],[1,"page-description"],[1,"page-header-actions"],["variant","button","buttonStyle","primary","buttonSize","regular","labelText","Workspace",3,"options","value","placeholder","valueChange",4,"ngIf"],[3,"rowCount",4,"ngIf"],[3,"webhooks","isLoading","onToggle","onCopyUrl","onDelete","onResync","onEdit","onTest",4,"ngIf"],["class","table-empty-state",4,"ngIf"],["variant","button","buttonStyle","primary","buttonSize","regular","labelText","Workspace",3,"valueChange","options","value","placeholder"],[3,"rowCount"],[3,"onToggle","onCopyUrl","onDelete","onResync","onEdit","onTest","webhooks","isLoading"],[1,"table-empty-state"]],template:function(o,t){o&1&&(a(0,"div",0)(1,"header",1)(2,"div",2)(3,"lib-button-icon",3),b("clicked",function(){return t.goBack()}),n(),k(4,"lib-logo",4),n()(),a(5,"main",5),f(6,ae,2,0,"div",6)(7,re,16,7,"div",7)(8,se,13,6,"div",7)(9,pe,14,7,"div",8),n()()),o&2&&(s(3),r("variant","ghost")("iconContent","/img/icon-library/symbols/chevron-left.svg"),s(2),y("has-webhooks",t.showTableLayout&&t.isAIMaxPlan),s(),r("ngIf",t.isLoading&&!t.isInitialized&&!t.isAIMaxPlan),s(),r("ngIf",!t.isLoading&&!t.isAIMaxPlan),s(),r("ngIf",!t.isLoading&&t.isAIMaxPlan&&!t.hasWebhooks&&!t.isInitialized),s(),r("ngIf",t.isAIMaxPlan&&(t.isLoading||t.showTableLayout)))},dependencies:[P,M,D,I,O,T,B,R],styles:[".webhook-dashboard[_ngcontent-%COMP%]{display:flex;flex-direction:column;min-height:100vh;width:100%;background-color:#fff}.header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;
3height:56px;padding:0 24px;background-color:#fff}.header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;flex:1;min-width:0;height:100%}.back-button[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:6px;border:none;background:transparent;border-radius:8px;cursor:pointer;transition:background-color .2s ease}.back-button[_ngcontent-%COMP%]:hover{background-color:#f9fafb}.back-button[_ngcontent-%COMP%]:active{background-color:#f3f4f6}.back-button[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:#253658}lib-logo[_ngcontent-%COMP%]{height:36px;width:auto}.main-content[_ngcontent-%COMP%]{display:flex;flex:1;align-items:center;justify-content:center;padding:24px}.main-content.has-webhooks[_ngcontent-%COMP%]{align-items:flex-start;justify-content:flex-start}.empty-state-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:24px;max-width:734px;text-align:center}.empty-state-icon[_ngcontent-%COMP%]{width:127px;height:112px;display:flex;align-items:center;justify-content:center}.empty-state-icon[_ngcontent-%COMP%] svg[_ngcontent-%COMP%]{width:100%;height:100%}.empty-state-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:8px;width:100%}.empty-state-title[_ngcontent-%COMP%]{margin:0;font-family:Inter,sans-serif;font-weight:600;font-size:20px;line-height:1.4;color:#253658}.empty-state-description[_ngcontent-%COMP%]{margin:0;font-family:Inter,sans-serif;font-weight:500;font-size:16px;line-height:1.4;letter-spacing:-.16px;color:#4b5563;text-align:center}.button-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.loading-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center}.loading-spinner[_ngcontent-%COMP%]{width:40px;height:40px;border:3px solid #E5E7EB;border-top-color:#4481fd;border-radius:50%;animation:_ngcontent-%COMP%_spin 1s linear infinite}@keyframes _ngcontent-%COMP%_spin{to{transform:rotate(360deg)}}.integration-illustration[_ngcontent-%COMP%]{position:relative;width:543px;height:317px;display:flex;align-items:center;justify-content:center}.laptop-illustration[_ngcontent-%COMP%]{position:absolute;width:260px;height:199px;top:110px;left:50%;transform:translate(-50%)}.laptop-illustration[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:contain}.integration-logo[_ngcontent-%COMP%]{position:absolute;width:134px;height:134px;background:#fff;border-radius:100px;box-shadow:0 18px 44.1px #00000014;display:flex;align-items:center;justify-content:center;padding:24px}.integration-logo[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{width:100%;height:100%;object-fit:contain}.integration-logo.zapier[_ngcontent-%COMP%]{top:4px;left:50%;transform:translate(-50%)}.integration-logo.airtable[_ngcontent-%COMP%]{top:151px;right:60px}.integration-logo.make[_ngcontent-%COMP%]{top:124px;left:46px}.api-description[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-family:Inter,sans-serif;font-weight:400;font-size:12px;line-height:1.4;letter-spacing:-.12px;color:#6b7280;text-align:center} .icon-add-white-webhooks{width:24px;height:24px;background-image:url(/img/icon-library/symbols/add-small.svg);background-size:contain;background-repeat:no-repeat;background-position:center;filter:brightness(0) invert(1)}.webhooks-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:20px;width:100%}.page-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;width:100%}.page-header-text[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:4px}.page-header-actions[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.page-header-actions[_ngcontent-%COMP%] lib-dropdown[_ngcontent-%COMP%]{min-width:200
3px}[_nghost-%COMP%] .page-header-actions lib-dropdown button{width:100%;justify-content:space-between}.table-empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:60px 24px;text-align:center;margin-top:20px}.table-empty-state[_ngcontent-%COMP%] .empty-state-icon[_ngcontent-%COMP%]{width:80px;height:80px}.table-empty-state[_ngcontent-%COMP%] .empty-state-title[_ngcontent-%COMP%]{font-size:18px}.table-empty-state[_ngcontent-%COMP%] .empty-state-description[_ngcontent-%COMP%]{font-size:14px;max-width:400px}.page-title[_ngcontent-%COMP%]{margin:0;font-family:Inter,sans-serif;font-weight:600;font-size:24px;line-height:1.2;letter-spacing:-.96px;color:#253658}.page-description[_ngcontent-%COMP%]{margin:0;font-family:Inter,sans-serif;font-weight:400;font-size:16px;line-height:1.4;letter-spacing:-.16px;color:#6b7280}@media (max-width: 600px){.header[_ngcontent-%COMP%]{padding:0 16px}.main-content[_ngcontent-%COMP%]{padding:16px}.empty-state-container[_ngcontent-%COMP%]{gap:20px;max-width:100%}.empty-state-title[_ngcontent-%COMP%]{font-size:18px}.empty-state-description[_ngcontent-%COMP%]{font-size:14px}.button-container[_ngcontent-%COMP%]{flex-direction:column;width:100%}.button-container[_ngcontent-%COMP%] lib-button[_ngcontent-%COMP%]{width:100%}.integration-illustration[_ngcontent-%COMP%]{width:100%;height:220px;transform:scale(.7);transform-origin:center center}.page-header[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:16px}.page-header-actions[_ngcontent-%COMP%]{width:100%;flex-direction:column}.page-header-actions[_ngcontent-%COMP%] lib-button[_ngcontent-%COMP%], .page-header-actions[_ngcontent-%COMP%] lib-dropdown[_ngcontent-%COMP%]{width:100%}.page-title[_ngcontent-%COMP%]{font-size:20px}.page-description[_ngcontent-%COMP%]{font-size:14px}.table-empty-state[_ngcontent-%COMP%]{padding:40px 16px}.table-empty-state[_ngcontent-%COMP%] .empty-state-icon[_ngcontent-%COMP%]{width:60px;height:60px}}"]})}}return i})();export{Oe as WebhookDashboardComponent}; 4/**i18n:e059b5419240afef74436eb5a1887102ff8937e043a8d48b1423a03649476971*/ 5 6//# debugId=4e248efc-8332-57d0-8917-a4c293c13ab2
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.