{"version":3,"sources":["../../../src/lib/domain-actions.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { DotsHorizontalIcon, TrashIcon } from \"@radix-ui/react-icons\";\nimport { OrganizationDomain } from \"../api/endpoint.js\";\nimport { ViewDnsRecordDialog } from \"./view-dns-record-dialog.js\";\nimport { DeleteDomainDialog } from \"./delete-domain-dialog.js\";\nimport { DropdownMenu, IconButton } from \"./elements.js\";\nimport { Translation } from \"./i18n/translation.js\";\nimport { useTranslation } from \"./i18n/use-translation.js\";\n\ninterface DomainActionsProps {\n  domain: OrganizationDomain;\n  onDeleteDomain: (domainId: string) => void;\n  onReverifyDomain: (domainId: string) => void;\n}\n\nexport const DomainActions = ({\n  domain,\n  onDeleteDomain,\n  onReverifyDomain,\n}: DomainActionsProps) => {\n  const [viewDnsDialogOpen, setViewDnsDialogOpen] = React.useState(false);\n  const [deleteDialogOpen, setDeleteDialogOpen] = React.useState(false);\n  const translate = useTranslation();\n\n  const removeDomainTitle = translate({\n    defaultMessage: \"Remove domain\",\n    id: \"Cf+uSR\",\n    description: \"Title for remove domain button\",\n  });\n\n  const domainActionsTitle = translate({\n    defaultMessage: \"Domain actions\",\n    id: \"l1mz5q\",\n    description: \"Title for domain actions dropdown button\",\n  });\n\n  if (domain.state === \"Verified\") {\n    return (\n      <>\n        <DeleteDomainDialog\n          domain={domain}\n          onDeleteDomain={onDeleteDomain}\n          open={deleteDialogOpen}\n          onOpenChange={setDeleteDialogOpen}\n        >\n          <IconButton title={removeDomainTitle}>\n            <TrashIcon />\n          </IconButton>\n        </DeleteDomainDialog>\n      </>\n    );\n  }\n\n  return (\n    <>\n      <DropdownMenu.Root>\n        <DropdownMenu.Trigger>\n          <IconButton title={domainActionsTitle}>\n            <DotsHorizontalIcon />\n          </IconButton>\n        </DropdownMenu.Trigger>\n        <DropdownMenu.Content side=\"bottom\" align=\"end\">\n          <DropdownMenu.Item onClick={() => setViewDnsDialogOpen(true)}>\n            {domain.state === \"Failed\" ? (\n              <Translation\n                defaultMessage=\"Restart verification\"\n                id=\"ZJYAji\"\n                description=\"Menu option to restart domain verification\"\n              />\n            ) : (\n              <Translation\n                defaultMessage=\"View DNS record\"\n                id=\"74JScV\"\n                description=\"Menu option to view DNS record\"\n              />\n            )}\n          </DropdownMenu.Item>\n          <DropdownMenu.Item\n            variant=\"destructive\"\n            onClick={() => setDeleteDialogOpen(true)}\n          >\n            <Translation\n              defaultMessage=\"Remove domain\"\n              id=\"cO5+D2\"\n              description=\"Menu option to remove a domain\"\n            />\n          </DropdownMenu.Item>\n        </DropdownMenu.Content>\n      </DropdownMenu.Root>\n\n      <ViewDnsRecordDialog\n        domain={domain}\n        onReverifyDomain={onReverifyDomain}\n        open={viewDnsDialogOpen}\n        onOpenChange={setViewDnsDialogOpen}\n      />\n\n      <DeleteDomainDialog\n        domain={domain}\n        onDeleteDomain={onDeleteDomain}\n        open={deleteDialogOpen}\n        onOpenChange={setDeleteDialogOpen}\n      />\n    </>\n  );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAwCM;AAtCN,YAAuB;AACvB,yBAA8C;AAE9C,oCAAoC;AACpC,kCAAmC;AACnC,sBAAyC;AACzC,yBAA4B;AAC5B,6BAA+B;AAQxB,MAAM,gBAAgB,CAAC;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AACF,MAA0B;AACxB,QAAM,CAAC,mBAAmB,oBAAoB,IAAI,MAAM,SAAS,KAAK;AACtE,QAAM,CAAC,kBAAkB,mBAAmB,IAAI,MAAM,SAAS,KAAK;AACpE,QAAM,gBAAY,uCAAe;AAEjC,QAAM,oBAAoB,UAAU;AAAA,IAClC,gBAAgB;AAAA,IAChB,IAAI;AAAA,IACJ,aAAa;AAAA,EACf,CAAC;AAED,QAAM,qBAAqB,UAAU;AAAA,IACnC,gBAAgB;AAAA,IAChB,IAAI;AAAA,IACJ,aAAa;AAAA,EACf,CAAC;AAED,MAAI,OAAO,UAAU,YAAY;AAC/B,WACE,2EACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,cAAc;AAAA,QAEd,sDAAC,8BAAW,OAAO,mBACjB,sDAAC,gCAAU,GACb;AAAA;AAAA,IACF,GACF;AAAA,EAEJ;AAEA,SACE,4EACE;AAAA,iDAAC,6BAAa,MAAb,EACC;AAAA,kDAAC,6BAAa,SAAb,EACC,sDAAC,8BAAW,OAAO,oBACjB,sDAAC,yCAAmB,GACtB,GACF;AAAA,MACA,6CAAC,6BAAa,SAAb,EAAqB,MAAK,UAAS,OAAM,OACxC;AAAA,oDAAC,6BAAa,MAAb,EAAkB,SAAS,MAAM,qBAAqB,IAAI,GACxD,iBAAO,UAAU,WAChB;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd,IAEA;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd,GAEJ;AAAA,QACA;AAAA,UAAC,6BAAa;AAAA,UAAb;AAAA,YACC,SAAQ;AAAA,YACR,SAAS,MAAM,oBAAoB,IAAI;AAAA,YAEvC;AAAA,cAAC;AAAA;AAAA,gBACC,gBAAe;AAAA,gBACf,IAAG;AAAA,gBACH,aAAY;AAAA;AAAA,YACd;AAAA;AAAA,QACF;AAAA,SACF;AAAA,OACF;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,cAAc;AAAA;AAAA,IAChB;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA,MAAM;AAAA,QACN,cAAc;AAAA;AAAA,IAChB;AAAA,KACF;AAEJ;","names":[]}