{"version":3,"sources":["../../../src/lib/domain-item.tsx"],"sourcesContent":["\"use client\";\n\nimport { Flex, Text } from \"@radix-ui/themes\";\nimport { OrganizationDomain } from \"../api/endpoint.js\";\nimport { IconPanel } from \"./icon-panel.js\";\nimport { getComparativeReadableDate } from \"./utils.js\";\nimport { Status } from \"./status.js\";\nimport { NameServerIcon } from \"./name-server-icon.js\";\nimport { DomainActions } from \"./domain-actions.js\";\nimport { Translation } from \"./i18n/translation.js\";\nimport { useLocale } from \"./i18n/use-locale.js\";\n\ninterface DomainItemProps {\n  domain: OrganizationDomain;\n  onDeleteDomain: (domainId: string) => void;\n  onReverifyDomain: (domainId: string) => void;\n}\n\nexport const DomainItem = ({\n  domain,\n  onDeleteDomain,\n  onReverifyDomain,\n}: DomainItemProps) => {\n  const locale = useLocale();\n\n  return (\n    <Flex gap=\"4\" align=\"center\">\n      <IconPanel color={domain.nameServer === \"Other\" ? \"gray\" : \"panel\"}>\n        <NameServerIcon provider={domain.nameServer} />\n      </IconPanel>\n\n      <Flex direction=\"column\">\n        <Text size=\"2\" highContrast weight=\"bold\" as=\"p\">\n          {domain.domain}\n        </Text>\n\n        <Text size=\"2\" color=\"gray\" as=\"p\">\n          <Translation\n            defaultMessage=\"Added {timeAgo}\"\n            id=\"DtZ2fb\"\n            description=\"Label showing when the domain was added\"\n            values={{\n              timeAgo: getComparativeReadableDate(\n                new Date(),\n                new Date(domain.createdAt),\n                { locale },\n              ),\n            }}\n          />\n        </Text>\n      </Flex>\n\n      <Flex ml=\"auto\" mr=\"2\" gap=\"4\" align=\"center\">\n        <Flex gap=\"1\" align=\"center\">\n          <Status state={getDomainStatus(domain)}>\n            {domainStateToLabel(domain)}\n          </Status>\n        </Flex>\n\n        <DomainActions\n          domain={domain}\n          onDeleteDomain={onDeleteDomain}\n          onReverifyDomain={onReverifyDomain}\n        />\n      </Flex>\n    </Flex>\n  );\n};\n\nconst domainStateToLabel = (domain: OrganizationDomain) => {\n  switch (domain.state) {\n    case \"Verified\":\n    case \"LegacyVerified\":\n      return (\n        <Translation\n          defaultMessage=\"Verified\"\n          id=\"T7rpHw\"\n          description=\"Domain verification status indicating the domain is verified\"\n        />\n      );\n    case \"Pending\":\n      return (\n        <Translation\n          defaultMessage=\"Verification pending\"\n          id=\"gc1yge\"\n          description=\"Domain verification status indicating verification is in progress\"\n        />\n      );\n    case \"Failed\":\n      return (\n        <Translation\n          defaultMessage=\"Verification failed\"\n          id=\"cbbwqK\"\n          description=\"Domain verification status indicating verification has failed\"\n        />\n      );\n  }\n};\n\nconst getDomainStatus = (domain: OrganizationDomain) => {\n  switch (domain.state) {\n    case \"Verified\":\n    case \"LegacyVerified\":\n      return \"success\";\n    case \"Pending\":\n      return \"waiting\";\n    case \"Failed\":\n      return \"error\";\n  }\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AA4BQ;AA1BR,oBAA2B;AAE3B,wBAA0B;AAC1B,mBAA2C;AAC3C,oBAAuB;AACvB,8BAA+B;AAC/B,4BAA8B;AAC9B,yBAA4B;AAC5B,wBAA0B;AAQnB,MAAM,aAAa,CAAC;AAAA,EACzB;AAAA,EACA;AAAA,EACA;AACF,MAAuB;AACrB,QAAM,aAAS,6BAAU;AAEzB,SACE,6CAAC,sBAAK,KAAI,KAAI,OAAM,UAClB;AAAA,gDAAC,+BAAU,OAAO,OAAO,eAAe,UAAU,SAAS,SACzD,sDAAC,0CAAe,UAAU,OAAO,YAAY,GAC/C;AAAA,IAEA,6CAAC,sBAAK,WAAU,UACd;AAAA,kDAAC,sBAAK,MAAK,KAAI,cAAY,MAAC,QAAO,QAAO,IAAG,KAC1C,iBAAO,QACV;AAAA,MAEA,4CAAC,sBAAK,MAAK,KAAI,OAAM,QAAO,IAAG,KAC7B;AAAA,QAAC;AAAA;AAAA,UACC,gBAAe;AAAA,UACf,IAAG;AAAA,UACH,aAAY;AAAA,UACZ,QAAQ;AAAA,YACN,aAAS;AAAA,cACP,oBAAI,KAAK;AAAA,cACT,IAAI,KAAK,OAAO,SAAS;AAAA,cACzB,EAAE,OAAO;AAAA,YACX;AAAA,UACF;AAAA;AAAA,MACF,GACF;AAAA,OACF;AAAA,IAEA,6CAAC,sBAAK,IAAG,QAAO,IAAG,KAAI,KAAI,KAAI,OAAM,UACnC;AAAA,kDAAC,sBAAK,KAAI,KAAI,OAAM,UAClB,sDAAC,wBAAO,OAAO,gBAAgB,MAAM,GAClC,6BAAmB,MAAM,GAC5B,GACF;AAAA,MAEA;AAAA,QAAC;AAAA;AAAA,UACC;AAAA,UACA;AAAA,UACA;AAAA;AAAA,MACF;AAAA,OACF;AAAA,KACF;AAEJ;AAEA,MAAM,qBAAqB,CAAC,WAA+B;AACzD,UAAQ,OAAO,OAAO;AAAA,IACpB,KAAK;AAAA,IACL,KAAK;AACH,aACE;AAAA,QAAC;AAAA;AAAA,UACC,gBAAe;AAAA,UACf,IAAG;AAAA,UACH,aAAY;AAAA;AAAA,MACd;AAAA,IAEJ,KAAK;AACH,aACE;AAAA,QAAC;AAAA;AAAA,UACC,gBAAe;AAAA,UACf,IAAG;AAAA,UACH,aAAY;AAAA;AAAA,MACd;AAAA,IAEJ,KAAK;AACH,aACE;AAAA,QAAC;AAAA;AAAA,UACC,gBAAe;AAAA,UACf,IAAG;AAAA,UACH,aAAY;AAAA;AAAA,MACd;AAAA,EAEN;AACF;AAEA,MAAM,kBAAkB,CAAC,WAA+B;AACtD,UAAQ,OAAO,OAAO;AAAA,IACpB,KAAK;AAAA,IACL,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,IACT,KAAK;AACH,aAAO;AAAA,EACX;AACF;","names":[]}