{"version":3,"sources":["../../../../src/lib/api-keys/revoke-api-key-dialog.tsx"],"sourcesContent":["import { Flex, Callout } from \"@radix-ui/themes\";\nimport { ApiKeyDetailsCard } from \"./api-key-details-card.js\";\nimport {\n  getListOrganizationApiKeysQueryKey,\n  ListOrganizationApiKeysResponseData,\n} from \"../../api/endpoint.js\";\nimport { useDeleteOrganizationApiKey } from \"../../api/endpoint.js\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { ExclamationTriangleIcon } from \"@radix-ui/react-icons\";\nimport { AlertDialog, Button } from \"../elements.js\";\nimport { Translation } from \"../i18n/translation.js\";\n\nexport function RevokeApiKeyDialog({\n  apiKey,\n  open,\n  onOpenChange,\n}: {\n  apiKey: ListOrganizationApiKeysResponseData;\n  open: boolean;\n  onOpenChange: (open: boolean) => void;\n}) {\n  const queryClient = useQueryClient();\n  const {\n    mutate: deleteOrganizationApiKey,\n    isPending,\n    error,\n    isSuccess,\n  } = useDeleteOrganizationApiKey({\n    mutation: {\n      onSuccess: () => {\n        queryClient.invalidateQueries({\n          queryKey: getListOrganizationApiKeysQueryKey(),\n        });\n        onOpenChange(false);\n      },\n    },\n  });\n\n  return (\n    <AlertDialog.Root open={open} onOpenChange={onOpenChange}>\n      <AlertDialog.Content maxWidth=\"529px\">\n        <AlertDialog.Title mb=\"2\">\n          <Translation\n            defaultMessage=\"Revoke API key?\"\n            id=\"e18ZsK\"\n            description=\"Dialog title for confirming API key revocation\"\n          />\n        </AlertDialog.Title>\n        <Flex direction=\"column\" gap=\"5\">\n          <AlertDialog.Description>\n            <Translation\n              defaultMessage=\"This API key will be immediately disabled. API request made using this key will be rejected, which could cause any systems still depending on it to break.\"\n              id=\"GLPUiU\"\n              description=\"Warning about revoking API key\"\n            />\n            <strong>\n              <Translation\n                defaultMessage=\"This action cannot be undone.\"\n                id=\"PTbRJT\"\n                description=\"Warning that API key revocation is permanent\"\n              />\n            </strong>\n          </AlertDialog.Description>\n          {error && (\n            <Callout.Root color=\"red\" role=\"alert\">\n              <Callout.Icon>\n                <ExclamationTriangleIcon />\n              </Callout.Icon>\n              <Callout.Text>\n                <Translation\n                  defaultMessage=\"An error occurred while revoking the API key.\"\n                  id=\"edrdLd\"\n                  description=\"Error message when API key revocation fails\"\n                />\n              </Callout.Text>\n            </Callout.Root>\n          )}\n          <ApiKeyDetailsCard apiKey={apiKey} />\n          <Flex justify=\"end\" gap=\"2\">\n            <AlertDialog.Cancel>\n              <Button variant=\"secondary\">\n                <Translation\n                  defaultMessage=\"Cancel\"\n                  id=\"EKf0ES\"\n                  description=\"Button to cancel API key revocation\"\n                />\n              </Button>\n            </AlertDialog.Cancel>\n            <Button\n              variant=\"destructive\"\n              disabled={isPending || isSuccess}\n              loading={isPending || isSuccess}\n              onClick={() => deleteOrganizationApiKey({ apiKeyId: apiKey.id })}\n            >\n              <Translation\n                defaultMessage=\"Revoke key\"\n                id=\"KSosDD\"\n                description=\"Button to confirm API key revocation\"\n              />\n            </Button>\n          </Flex>\n        </Flex>\n      </AlertDialog.Content>\n    </AlertDialog.Root>\n  );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA0CU;AA1CV,oBAA8B;AAC9B,kCAAkC;AAClC,sBAGO;AACP,IAAAA,mBAA4C;AAC5C,yBAA+B;AAC/B,yBAAwC;AACxC,sBAAoC;AACpC,yBAA4B;AAErB,SAAS,mBAAmB;AAAA,EACjC;AAAA,EACA;AAAA,EACA;AACF,GAIG;AACD,QAAM,kBAAc,mCAAe;AACnC,QAAM;AAAA,IACJ,QAAQ;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,EACF,QAAI,8CAA4B;AAAA,IAC9B,UAAU;AAAA,MACR,WAAW,MAAM;AACf,oBAAY,kBAAkB;AAAA,UAC5B,cAAU,oDAAmC;AAAA,QAC/C,CAAC;AACD,qBAAa,KAAK;AAAA,MACpB;AAAA,IACF;AAAA,EACF,CAAC;AAED,SACE,4CAAC,4BAAY,MAAZ,EAAiB,MAAY,cAC5B,uDAAC,4BAAY,SAAZ,EAAoB,UAAS,SAC5B;AAAA,gDAAC,4BAAY,OAAZ,EAAkB,IAAG,KACpB;AAAA,MAAC;AAAA;AAAA,QACC,gBAAe;AAAA,QACf,IAAG;AAAA,QACH,aAAY;AAAA;AAAA,IACd,GACF;AAAA,IACA,6CAAC,sBAAK,WAAU,UAAS,KAAI,KAC3B;AAAA,mDAAC,4BAAY,aAAZ,EACC;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd;AAAA,QACA,4CAAC,YACC;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd,GACF;AAAA,SACF;AAAA,MACC,SACC,6CAAC,sBAAQ,MAAR,EAAa,OAAM,OAAM,MAAK,SAC7B;AAAA,oDAAC,sBAAQ,MAAR,EACC,sDAAC,8CAAwB,GAC3B;AAAA,QACA,4CAAC,sBAAQ,MAAR,EACC;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd,GACF;AAAA,SACF;AAAA,MAEF,4CAAC,iDAAkB,QAAgB;AAAA,MACnC,6CAAC,sBAAK,SAAQ,OAAM,KAAI,KACtB;AAAA,oDAAC,4BAAY,QAAZ,EACC,sDAAC,0BAAO,SAAQ,aACd;AAAA,UAAC;AAAA;AAAA,YACC,gBAAe;AAAA,YACf,IAAG;AAAA,YACH,aAAY;AAAA;AAAA,QACd,GACF,GACF;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,SAAQ;AAAA,YACR,UAAU,aAAa;AAAA,YACvB,SAAS,aAAa;AAAA,YACtB,SAAS,MAAM,yBAAyB,EAAE,UAAU,OAAO,GAAG,CAAC;AAAA,YAE/D;AAAA,cAAC;AAAA;AAAA,gBACC,gBAAe;AAAA,gBACf,IAAG;AAAA,gBACH,aAAY;AAAA;AAAA,YACd;AAAA;AAAA,QACF;AAAA,SACF;AAAA,OACF;AAAA,KACF,GACF;AAEJ;","names":["import_endpoint"]}