@bigbinary/neeto-molecules 1.1.22 → 1.1.23

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.
@@ -12,7 +12,8 @@ import { t } from 'i18next';
12
12
  import { mergeRight } from 'ramda';
13
13
  import classnames from 'classnames';
14
14
  import * as Yup from 'yup';
15
- import { useQueryClient, useMutation, useQuery } from 'react-query';
15
+ import { useMutationWithInvalidation } from '@bigbinary/neeto-commons-frontend/react-utils';
16
+ import { useQuery } from 'react-query';
16
17
  import axios from 'axios';
17
18
 
18
19
  function _arrayWithHoles(arr) {
@@ -457,74 +458,54 @@ var customDomainApi = {
457
458
  updateCustomDomain: updateCustomDomain
458
459
  };
459
460
 
460
- var DEFAULT_STALE_TIME = 60 * 60 * 1000;
461
461
  var DOMAIN_QUERY_KEY = "custom-domain";
462
462
 
463
463
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
464
464
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
465
465
  var useCreateCustomDomain = function useCreateCustomDomain(url) {
466
466
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
467
- var queryClient = useQueryClient();
468
- return useMutation(function (payload) {
467
+ return useMutationWithInvalidation(function (payload) {
469
468
  return customDomainApi.createCustomDomain(url, payload);
470
- }, _objectSpread(_objectSpread({}, options), {}, {
471
- onSuccess: function onSuccess() {
472
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
473
- }
474
- }));
469
+ }, _objectSpread({
470
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
471
+ }, options));
475
472
  };
476
473
  var useDeleteCustomDomain = function useDeleteCustomDomain(url) {
477
474
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
478
- var queryClient = useQueryClient();
479
- return useMutation(function (id) {
475
+ return useMutationWithInvalidation(function (id) {
480
476
  return customDomainApi.deleteCustomDomain(url, id);
481
- }, _objectSpread(_objectSpread({}, options), {}, {
482
- onSuccess: function onSuccess(result) {
483
- var _options$onSuccess;
484
- (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 ? void 0 : _options$onSuccess.call(options, result);
485
- queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
486
- }
487
- }));
477
+ }, _objectSpread({
478
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
479
+ }, options));
488
480
  };
489
481
  var useFetchCustomDomains = function useFetchCustomDomains(params) {
490
482
  return useQuery([DOMAIN_QUERY_KEY, _objectSpread({}, params)], function () {
491
483
  return customDomainApi.fetchCustomDomains(params);
492
- }, {
493
- staleTime: DEFAULT_STALE_TIME
494
484
  });
495
485
  };
496
486
  var useValidateDomain = function useValidateDomain(url) {
497
487
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
498
- var queryClient = useQueryClient();
499
- return useMutation(function (id) {
488
+ return useMutationWithInvalidation(function (id) {
500
489
  return customDomainApi.validateDomain(url, id);
501
- }, _objectSpread(_objectSpread({}, options), {}, {
502
- onSuccess: function onSuccess() {
503
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
504
- }
505
- }));
490
+ }, _objectSpread({
491
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
492
+ }, options));
506
493
  };
507
494
  var useValidateCname = function useValidateCname(url) {
508
495
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
509
- var queryClient = useQueryClient();
510
- return useMutation(function (id) {
496
+ return useMutationWithInvalidation(function (id) {
511
497
  return customDomainApi.validateCname(url, id);
512
- }, _objectSpread(_objectSpread({}, options), {}, {
513
- onSuccess: function onSuccess() {
514
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
515
- }
516
- }));
498
+ }, _objectSpread({
499
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
500
+ }, options));
517
501
  };
518
502
  var useUpdateCustomDomain = function useUpdateCustomDomain(url) {
519
503
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
520
- var queryClient = useQueryClient();
521
- return useMutation(function (id) {
504
+ return useMutationWithInvalidation(function (id) {
522
505
  return customDomainApi.updateCustomDomain(url, id);
523
- }, _objectSpread(_objectSpread({}, options), {}, {
524
- onSuccess: function onSuccess() {
525
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
526
- }
527
- }));
506
+ }, _objectSpread({
507
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
508
+ }, options));
528
509
  };
529
510
 
530
511
  var Manage = function Manage(_ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"CustomDomain.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/CustomDomainDashboard/DeleteAlert.jsx","../src/components/CustomDomainDashboard/Manage/constants.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../src/components/MoreDropdown/constants.js","../src/components/MoreDropdown/Submenu.jsx","../src/components/MoreDropdown/MenuItem.jsx","../src/components/MoreDropdown/index.jsx","../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../src/components/CustomDomainDashboard/utils.jsx","../src/components/CustomDomainDashboard/Manage/Record.jsx","../src/components/CustomDomainDashboard/Manage/StatusInfo.jsx","../src/components/CustomDomainDashboard/Manage/utils.js","../src/components/CustomDomainDashboard/api.js","../src/components/CustomDomainDashboard/constants.js","../src/components/CustomDomainDashboard/useCustomDomainApi.js","../src/components/CustomDomainDashboard/Manage/index.jsx","../src/components/CustomDomain/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport { Alert } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nconst DeleteAlert = ({ onClose, onSubmit, isOpen, isSubmitting, hostname }) => {\n const { t } = useTranslation();\n\n return (\n <Alert\n cancelButtonLabel={t(\"neetoMolecules.common.actions.cancel\")}\n isOpen={isOpen}\n isSubmitting={isSubmitting}\n submitButtonLabel={t(\"neetoMolecules.common.actions.delete\")}\n title={t(\"neetoMolecules.customDomain.delete\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.alertMessage\"\n values={{ hostname }}\n />\n }\n onClose={onClose}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","export const HOSTNAME_REGEX =\n /^(?!-)[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+/;\n\nexport const INITIAL_VALUES = { hostname: \"\" };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export const BUTTON_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n danger: \"danger\",\n danger_text: \"danger-text\",\n text: \"text\",\n link: \"link\",\n};\n\nexport const SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nexport const STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nexport const MENU_ITEM_TYPES = {\n menuItem: \"menuItem\",\n divider: \"divider\",\n};\n\nexport const DEFAULT_TOOLTIP_PROPS = {\n disabled: true,\n position: \"bottom\",\n};\n","import React from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nimport MoreDropdownMenuItem from \"./MenuItem\";\n\nconst { MenuItem, Menu } = Dropdown;\n\nconst Submenu = ({ label, key, ...menuItemProps }) => (\n <Dropdown\n customTarget={<MenuItem.Button>{label}</MenuItem.Button>}\n key={key}\n position=\"left\"\n trigger=\"hover\"\n {...menuItemProps.dropdownProps}\n >\n <Menu>\n {menuItemProps.menuItems.map(\n ({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return <MoreDropdownMenuItem key={key} {...menuItemProps} />;\n }\n )}\n </Menu>\n </Dropdown>\n);\n\nexport default Submenu;\n","import React from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nimport { MENU_ITEM_TYPES } from \"./constants\";\nimport Submenu from \"./Submenu\";\n\nconst { MenuItem, Divider } = Dropdown;\n\nconst MoreDropdownMenuItem = ({\n onClick,\n label,\n type = MENU_ITEM_TYPES.menuItem,\n hasSubItems = false,\n ...menuItemProps\n}) => {\n if (type === MENU_ITEM_TYPES.divider) {\n return <Divider />;\n }\n\n if (hasSubItems) {\n return <Submenu {...{ label, ...menuItemProps }} />;\n }\n\n return (\n <MenuItem.Button {...{ onClick, ...menuItemProps }}>\n {label}\n </MenuItem.Button>\n );\n};\n\nexport default MoreDropdownMenuItem;\n","import React from \"react\";\n\nimport { MenuHorizontal, MenuVertical } from \"neetoicons\";\nimport { Button, Dropdown, Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\n\nimport {\n BUTTON_STYLES,\n DEFAULT_TOOLTIP_PROPS,\n MENU_ITEM_TYPES,\n SIZES,\n STRATEGY,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst { Menu } = Dropdown;\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const tooltipProps = mergeRight(\n DEFAULT_TOOLTIP_PROPS,\n dropdownButtonProps.tooltipProps\n );\n\n const targetIcon = isVertical ? MenuVertical : MenuHorizontal;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip {...tooltipProps}>\n <span>\n <Button\n disabled\n data-testid=\"nui-dropdown-button\"\n icon={targetIcon}\n iconPosition=\"right\"\n size=\"medium\"\n style=\"text\"\n {...dropdownButtonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <Dropdown\n autoWidth\n className=\"flex\"\n disabled={isDisabled}\n icon={targetIcon}\n buttonProps={{\n className: \"min-h-0 flex-shrink-0\",\n style: \"text\",\n ...dropdownButtonProps,\n }}\n {...dropdownProps}\n >\n <Menu>\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return <MenuItem key={key} {...menuItemProps} />;\n })}\n {menuBottomChildren}\n </Menu>\n </Dropdown>\n );\n};\n\nMoreDropdown.propTypes = {\n /*\n * This props will be passed to the target button of the dropdown.\n */\n dropdownButtonProps: PropTypes.shape({\n style: PropTypes.oneOf(Object.values(BUTTON_STYLES)),\n size: PropTypes.oneOf(Object.values(SIZES)),\n iconSize: PropTypes.number,\n disabled: PropTypes.bool,\n }),\n /*\n * Whether to show a MenuVertical icon. By default the icon will be MenuHorizontal.\n */\n isVertical: PropTypes.bool,\n /*\n * Whether the dropdown is disabled or not.\n */\n isDisabled: PropTypes.bool,\n /*\n * This props will be passed to the dropdown.\n */\n dropdownProps: PropTypes.shape({\n strategy: PropTypes.oneOf(Object.values(STRATEGY)),\n }),\n /*\n * This children will be rendered on top of the dropdown menu.\n */\n menuTopChildren: PropTypes.node,\n /*\n * This children will be rendered on bottom of the dropdown menu.\n */\n menuBottomChildren: PropTypes.node,\n /*\n * Menu items inside the dropdown. Each item needs to have a `label`, `onClick` and `key`.\n */\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n key: PropTypes.string,\n type: PropTypes.oneOf(Object.values(MENU_ITEM_TYPES)),\n isVisible: PropTypes.bool,\n hasSubItems: PropTypes.bool,\n dropdownProps: PropTypes.shape({\n position: PropTypes.string,\n trigger: PropTypes.string,\n }),\n })\n ),\n};\n\nexport default MoreDropdown;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n indicatorStyle=\"danger\"\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"secondary\"\n />\n ) : (\n <>\n <Tag\n indicatorStyle={isDomainValidated ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n indicatorStyle={status === \"active\" ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default React.memo(TagBlock);\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n width: \"60%\",\n render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">{hostName}</Typography>\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\n autoWidth: true,\n }}\n menuItems={[\n {\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => enableManagePane(customDomain),\n key: \"edit-custom-domain-button\",\n },\n {\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => enableDeleteAlert(customDomain),\n key: \"delete-custom-domain\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n];\n\nexport const recordData = customDomain => {\n const { status, hostname, dnsTarget, cnameValidationParams } = customDomain;\n\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n\n const recordName = isDomainValidated ? hostname : cnameValidationParams?.name;\n\n const recordValue = isDomainValidated\n ? dnsTarget\n : cnameValidationParams?.value;\n\n const recordType = isDomainValidated\n ? t(\"neetoMolecules.customDomain.cname\")\n : t(\"neetoMolecules.customDomain.domainValidationCname\");\n\n const recordDescription = isDomainValidated\n ? t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n })\n : t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n proxyMessage: t(\"neetoMolecules.customDomain.validation.proxyMessage\"),\n });\n\n const recordNameLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.name\"),\n });\n\n const recordValueLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.value\"),\n });\n\n return {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n };\n};\n","import React from \"react\";\n\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Info } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Input, Callout } from \"neetoui\";\n\nimport { recordData } from \"../utils\";\n\nconst Record = ({ customDomain }) => {\n const {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n } = recordData(customDomain);\n\n return (\n <div className=\"mt-6 grid gap-4\">\n {customDomain.status !== \"active\" && (\n <Callout icon={Info} style=\"info\">\n {recordDescription}\n </Callout>\n )}\n <Input\n disabled\n data-cy={joinHyphenCase(recordNameLabel)}\n label={recordNameLabel}\n value={recordName}\n suffix={\n <CopyToClipboardButton size=\"small\" style=\"text\" value={recordName} />\n }\n />\n <Input\n disabled\n data-cy={joinHyphenCase(recordValueLabel)}\n label={recordValueLabel}\n value={recordValue}\n suffix={\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={recordValue}\n />\n }\n />\n </div>\n );\n};\n\nexport default React.memo(Record);\n","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\n\nconst StatusInfo = () => {\n const helpUrl = `https://help.${globalProps.appName.toLowerCase()}.com/articles/custom-domains`;\n\n return (\n <div className=\"space-y-6\">\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 neeto-ui-text-gray-700 space-y-3 p-4\">\n <Trans\n i18nKey=\"neetoMolecules.customDomain.messageBlock.dnsStatus\"\n components={{\n a: (\n <a\n className=\"neeto-ui-btn--style-link\"\n href={helpUrl}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default React.memo(StatusInfo);\n","import { t } from \"i18next\";\nimport * as Yup from \"yup\";\n\nimport { HOSTNAME_REGEX } from \"./constants\";\n\nexport const getCustomDomainValidationSchema = () =>\n Yup.object().shape({\n hostname: Yup.string()\n .required(t(\"neetoMolecules.customDomain.formikValidation.required\"))\n .matches(\n HOSTNAME_REGEX,\n t(\"neetoMolecules.customDomain.formikValidation.valid\")\n ),\n });\n","import axios from \"axios\";\n\nconst getUrlwithId = (url, id) => (id ? `${url}/${id}` : url);\n\nconst fetchCustomDomains = ({ url, params }) => axios.get(url, { params });\n\nconst updateCustomDomain = (url, id) => axios.patch(getUrlwithId(url, id));\n\nconst createCustomDomain = (url, payload) => axios.post(url, payload);\nconst deleteCustomDomain = (url, id) => axios.delete(getUrlwithId(url, id));\n\nconst validateDomain = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_domain`);\n\nconst validateCname = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_cname`);\n\nconst customDomainApi = {\n createCustomDomain,\n deleteCustomDomain,\n validateDomain,\n fetchCustomDomains,\n validateCname,\n updateCustomDomain,\n};\n\nexport default customDomainApi;\n","export const DEFAULT_STALE_TIME = 60 * 60 * 1000;\n\nexport const DOMAIN_QUERY_KEY = \"custom-domain\";\n","import { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nimport customDomainApi from \"./api\";\nimport { DEFAULT_STALE_TIME, DOMAIN_QUERY_KEY } from \"./constants\";\n\nconst useCreateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(\n payload => customDomainApi.createCustomDomain(url, payload),\n {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n }\n );\n};\n\nconst useDeleteCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.deleteCustomDomain(url, id), {\n ...options,\n onSuccess: result => {\n options.onSuccess?.(result);\n queryClient.invalidateQueries(DOMAIN_QUERY_KEY);\n },\n });\n};\n\nconst useFetchCustomDomains = params =>\n useQuery(\n [DOMAIN_QUERY_KEY, { ...params }],\n () => customDomainApi.fetchCustomDomains(params),\n { staleTime: DEFAULT_STALE_TIME }\n );\n\nconst useValidateDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useValidateCname = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateCname(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useUpdateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.updateCustomDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nexport {\n useCreateCustomDomain,\n useDeleteCustomDomain,\n useValidateDomain,\n useFetchCustomDomains,\n useValidateCname,\n useUpdateCustomDomain,\n};\n","import React, { useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Check } from \"neetoicons\";\nimport { Label, Pane, Typography, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Record from \"./Record\";\nimport StatusInfo from \"./StatusInfo\";\nimport TagBlock from \"./TagBlock\";\nimport { getCustomDomainValidationSchema } from \"./utils\";\n\nimport {\n useCreateCustomDomain,\n useValidateDomain,\n useValidateCname,\n useUpdateCustomDomain,\n} from \"../useCustomDomainApi\";\n\nconst Manage = ({\n isOpen,\n onClose,\n customDomain,\n setCustomDomain,\n url,\n hasOne,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const customDomainId = hasOne ? null : customDomain?.id;\n\n const { mutate: createCustomDomain, isLoading: isCreating } =\n useCreateCustomDomain(url);\n\n const { mutate: validateDomain, isLoading: isValidating } =\n useValidateDomain(url);\n\n const { mutate: validateCname, isLoading: isCnameValidating } =\n useValidateCname(url);\n\n const { mutate: updateCustomDomain, isLoading: isUpdating } =\n useUpdateCustomDomain(url);\n\n const handleSubmit = values =>\n createCustomDomain(values, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateDomain = () =>\n validateDomain(customDomainId, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateCname = () => {\n validateCname(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n const handleUpdateCname = () => {\n updateCustomDomain(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Formik\n enableReinitialize\n initialValues={customDomain || INITIAL_VALUES}\n validationSchema={getCustomDomainValidationSchema()}\n onSubmit={handleSubmit}\n >\n {({ dirty }) => (\n <Form>\n <Pane.Header>\n <Typography\n data-cy=\"add-custom-domain-pane-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.edit\")\n : t(\"neetoMolecules.customDomain.addNew\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {isNotEmpty(customDomain) && (\n <TagBlock\n stacked\n {...{ handleValidateCname }}\n isCnameRecordsAdded={customDomain.addedCnameAt}\n status={customDomain.status}\n />\n )}\n <div className=\"space-y-2\">\n <Label required htmlFor=\"hostname\">\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.customDomain\", SINGULAR)\n : t(\"neetoMolecules.customDomain.label\")}\n </Label>\n <div className=\"flex items-start gap-2\">\n <Input\n data-cy=\"custom-domain-input-field\"\n disabled={isNotEmpty(customDomain)}\n name=\"hostname\"\n placeholder={t(\"neetoMolecules.customDomain.placeholder\")}\n ref={initialFocusRef}\n />\n {!isNotEmpty(customDomain) && (\n <Button\n data-cy=\"submit-custom-domain-button\"\n data-testid=\"submit-custom-domain-button\"\n disabled={!dirty || isCreating}\n icon={Check}\n loading={isCreating}\n style=\"primary\"\n type=\"submit\"\n />\n )}\n </div>\n </div>\n {isNotEmpty(customDomain) && (\n <>\n <Record {...{ customDomain }} />\n {customDomain.status === \"pending_domain_validation\" && (\n <Button\n data-cy=\"validate-domain-button\"\n disabled={isValidating}\n loading={isValidating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.domain\"\n )}\n onClick={handleValidateDomain}\n />\n )}\n {customDomain.status === \"pending_cname_validation\" && (\n <Button\n data-cy=\"validate-cname-record-button\"\n loading={isCnameValidating || isUpdating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.cnameAdded\"\n )}\n onClick={handleUpdateCname}\n />\n )}\n <StatusInfo />\n </>\n )}\n </div>\n </Pane.Body>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default Manage;\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { CustomDomain as NeetoUICustomDomainIcon } from \"neetoicons\";\nimport { Button, Tag, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DeleteAlert from \"components/CustomDomainDashboard/DeleteAlert\";\nimport ManageDomain from \"components/CustomDomainDashboard/Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"components/CustomDomainDashboard/useCustomDomainApi\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CustomDomain = ({ url, iconOnly }) => {\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n\n const { data: customDomain, isLoading } = useFetchCustomDomains({ url });\n\n const { mutate: deleteCustomDomain, isLoading: isDeleting } =\n useDeleteCustomDomain(url, { onSettled: () => setIsAlertOpen(false) });\n\n const actions = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => setIsPaneOpen(true),\n },\n {\n key: \"delete\",\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => setIsAlertOpen(true),\n },\n ];\n\n if (isLoading) return <Spinner />;\n\n return (\n <div>\n {isNotEmpty(customDomain) ? (\n <div className=\"flex flex-row items-center\">\n <Tag\n label={customDomain?.hostname}\n style={customDomain.status === \"active\" ? \"success\" : \"warning\"}\n />\n <MoreDropdown\n dropdownProps={{ autoWidth: true }}\n menuItems={actions}\n dropdownButtonProps={{\n \"data-testid\": \"nui-dropdown-icon\",\n strategy: \"fixed\",\n }}\n />\n </div>\n ) : (\n <Button\n icon={iconOnly && NeetoUICustomDomainIcon}\n style=\"text\"\n label={\n iconOnly\n ? \"\"\n : t(\"neetoMolecules.common.actions.add\", {\n entity: t(\n \"neetoMolecules.customDomain.customDomain\",\n SINGULAR\n ).toLowerCase(),\n })\n }\n tooltipProps={\n iconOnly && {\n content: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n }\n }\n onClick={() => setIsPaneOpen(true)}\n />\n )}\n <ManageDomain\n hasOne\n {...{ customDomain, url }}\n isOpen={isPaneOpen}\n setCustomDomain={noop}\n onClose={() => setIsPaneOpen(false)}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() => deleteCustomDomain()}\n />\n </div>\n );\n};\n\nCustomDomain.propTypes = {\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Pass this prop if you need a icon button without label.\n */\n iconOnly: PropTypes.bool,\n};\n\nexport default CustomDomain;\n"],"names":["arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","DeleteAlert","_ref","onClose","onSubmit","isOpen","isSubmitting","hostname","_useTranslation","useTranslation","t","React","createElement","Alert","cancelButtonLabel","submitButtonLabel","title","message","Trans","i18nKey","values","HOSTNAME_REGEX","INITIAL_VALUES","objectWithoutPropertiesLoose","toPrimitive","toPropertyKey","MENU_ITEM_TYPES","menuItem","divider","DEFAULT_TOOLTIP_PROPS","disabled","position","MenuItem","Dropdown","Menu","Submenu","label","key","menuItemProps","_objectWithoutProperties","_excluded","_extends","customTarget","Button","trigger","dropdownProps","menuItems","map","_ref2","_ref2$isVisible","isVisible","_excluded2","MoreDropdownMenuItem","Divider","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","_objectSpread","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_ref$menuItems","tooltipProps","mergeRight","targetIcon","MenuVertical","MenuHorizontal","isDropdownDisabled","Tooltip","icon","iconPosition","size","style","autoWidth","className","buttonProps","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","Tag","indicatorStyle","concat","Fragment","memo","recordData","customDomain","dnsTarget","cnameValidationParams","recordName","name","recordValue","value","recordType","recordDescription","record","proxyMessage","recordNameLabel","recordValueLabel","Record","_recordData","Callout","Info","Input","joinHyphenCase","suffix","CopyToClipboardButton","StatusInfo","helpUrl","globalProps","appName","toLowerCase","components","a","href","rel","target","getCustomDomainValidationSchema","Yup","object","shape","string","required","matches","getUrlwithId","url","id","fetchCustomDomains","params","axios","get","updateCustomDomain","patch","createCustomDomain","payload","post","deleteCustomDomain","validateDomain","validateCname","customDomainApi","DEFAULT_STALE_TIME","DOMAIN_QUERY_KEY","useCreateCustomDomain","options","arguments","length","undefined","queryClient","useQueryClient","useMutation","onSuccess","invalidateQueries","useDeleteCustomDomain","result","_options$onSuccess","call","useFetchCustomDomains","useQuery","staleTime","useValidateDomain","useValidateCname","useUpdateCustomDomain","Manage","setCustomDomain","hasOne","initialFocusRef","useRef","customDomainId","_useCreateCustomDomai","mutate","isCreating","isLoading","_useValidateDomain","isValidating","_useValidateCname","isCnameValidating","_useUpdateCustomDomai","isUpdating","handleSubmit","handleValidateDomain","handleValidateCname","data","handleUpdateCname","Pane","Formik","enableReinitialize","initialValues","validationSchema","dirty","Form","Header","Typography","weight","isNotEmpty","Body","isCnameRecordsAdded","addedCnameAt","Label","htmlFor","SINGULAR","placeholder","ref","Check","loading","CustomDomain","iconOnly","_useState","useState","_useState2","_slicedToArray","isPaneOpen","setIsPaneOpen","_useState3","_useState4","isAlertOpen","setIsAlertOpen","_useFetchCustomDomain","_useDeleteCustomDomai","onSettled","isDeleting","actions","Spinner","strategy","NeetoUICustomDomainIcon","entity","content","ManageDomain","noop"],"mappings":"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"}
1
+ {"version":3,"file":"CustomDomain.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/CustomDomainDashboard/DeleteAlert.jsx","../src/components/CustomDomainDashboard/Manage/constants.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../src/components/MoreDropdown/constants.js","../src/components/MoreDropdown/Submenu.jsx","../src/components/MoreDropdown/MenuItem.jsx","../src/components/MoreDropdown/index.jsx","../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../src/components/CustomDomainDashboard/utils.jsx","../src/components/CustomDomainDashboard/Manage/Record.jsx","../src/components/CustomDomainDashboard/Manage/StatusInfo.jsx","../src/components/CustomDomainDashboard/Manage/utils.js","../src/components/CustomDomainDashboard/api.js","../src/components/CustomDomainDashboard/constants.js","../src/components/CustomDomainDashboard/useCustomDomainApi.js","../src/components/CustomDomainDashboard/Manage/index.jsx","../src/components/CustomDomain/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport { Alert } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nconst DeleteAlert = ({ onClose, onSubmit, isOpen, isSubmitting, hostname }) => {\n const { t } = useTranslation();\n\n return (\n <Alert\n cancelButtonLabel={t(\"neetoMolecules.common.actions.cancel\")}\n isOpen={isOpen}\n isSubmitting={isSubmitting}\n submitButtonLabel={t(\"neetoMolecules.common.actions.delete\")}\n title={t(\"neetoMolecules.customDomain.delete\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.alertMessage\"\n values={{ hostname }}\n />\n }\n onClose={onClose}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","export const HOSTNAME_REGEX =\n /^(?!-)[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+/;\n\nexport const INITIAL_VALUES = { hostname: \"\" };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export const BUTTON_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n danger: \"danger\",\n danger_text: \"danger-text\",\n text: \"text\",\n link: \"link\",\n};\n\nexport const SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nexport const STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nexport const MENU_ITEM_TYPES = {\n menuItem: \"menuItem\",\n divider: \"divider\",\n};\n\nexport const DEFAULT_TOOLTIP_PROPS = {\n disabled: true,\n position: \"bottom\",\n};\n","import React from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nimport MoreDropdownMenuItem from \"./MenuItem\";\n\nconst { MenuItem, Menu } = Dropdown;\n\nconst Submenu = ({ label, key, ...menuItemProps }) => (\n <Dropdown\n customTarget={<MenuItem.Button>{label}</MenuItem.Button>}\n key={key}\n position=\"left\"\n trigger=\"hover\"\n {...menuItemProps.dropdownProps}\n >\n <Menu>\n {menuItemProps.menuItems.map(\n ({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return <MoreDropdownMenuItem key={key} {...menuItemProps} />;\n }\n )}\n </Menu>\n </Dropdown>\n);\n\nexport default Submenu;\n","import React from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nimport { MENU_ITEM_TYPES } from \"./constants\";\nimport Submenu from \"./Submenu\";\n\nconst { MenuItem, Divider } = Dropdown;\n\nconst MoreDropdownMenuItem = ({\n onClick,\n label,\n type = MENU_ITEM_TYPES.menuItem,\n hasSubItems = false,\n ...menuItemProps\n}) => {\n if (type === MENU_ITEM_TYPES.divider) {\n return <Divider />;\n }\n\n if (hasSubItems) {\n return <Submenu {...{ label, ...menuItemProps }} />;\n }\n\n return (\n <MenuItem.Button {...{ onClick, ...menuItemProps }}>\n {label}\n </MenuItem.Button>\n );\n};\n\nexport default MoreDropdownMenuItem;\n","import React from \"react\";\n\nimport { MenuHorizontal, MenuVertical } from \"neetoicons\";\nimport { Button, Dropdown, Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\n\nimport {\n BUTTON_STYLES,\n DEFAULT_TOOLTIP_PROPS,\n MENU_ITEM_TYPES,\n SIZES,\n STRATEGY,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst { Menu } = Dropdown;\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const tooltipProps = mergeRight(\n DEFAULT_TOOLTIP_PROPS,\n dropdownButtonProps.tooltipProps\n );\n\n const targetIcon = isVertical ? MenuVertical : MenuHorizontal;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip {...tooltipProps}>\n <span>\n <Button\n disabled\n data-testid=\"nui-dropdown-button\"\n icon={targetIcon}\n iconPosition=\"right\"\n size=\"medium\"\n style=\"text\"\n {...dropdownButtonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <Dropdown\n autoWidth\n className=\"flex\"\n disabled={isDisabled}\n icon={targetIcon}\n buttonProps={{\n className: \"min-h-0 flex-shrink-0\",\n style: \"text\",\n ...dropdownButtonProps,\n }}\n {...dropdownProps}\n >\n <Menu>\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return <MenuItem key={key} {...menuItemProps} />;\n })}\n {menuBottomChildren}\n </Menu>\n </Dropdown>\n );\n};\n\nMoreDropdown.propTypes = {\n /*\n * This props will be passed to the target button of the dropdown.\n */\n dropdownButtonProps: PropTypes.shape({\n style: PropTypes.oneOf(Object.values(BUTTON_STYLES)),\n size: PropTypes.oneOf(Object.values(SIZES)),\n iconSize: PropTypes.number,\n disabled: PropTypes.bool,\n }),\n /*\n * Whether to show a MenuVertical icon. By default the icon will be MenuHorizontal.\n */\n isVertical: PropTypes.bool,\n /*\n * Whether the dropdown is disabled or not.\n */\n isDisabled: PropTypes.bool,\n /*\n * This props will be passed to the dropdown.\n */\n dropdownProps: PropTypes.shape({\n strategy: PropTypes.oneOf(Object.values(STRATEGY)),\n }),\n /*\n * This children will be rendered on top of the dropdown menu.\n */\n menuTopChildren: PropTypes.node,\n /*\n * This children will be rendered on bottom of the dropdown menu.\n */\n menuBottomChildren: PropTypes.node,\n /*\n * Menu items inside the dropdown. Each item needs to have a `label`, `onClick` and `key`.\n */\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n key: PropTypes.string,\n type: PropTypes.oneOf(Object.values(MENU_ITEM_TYPES)),\n isVisible: PropTypes.bool,\n hasSubItems: PropTypes.bool,\n dropdownProps: PropTypes.shape({\n position: PropTypes.string,\n trigger: PropTypes.string,\n }),\n })\n ),\n};\n\nexport default MoreDropdown;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n indicatorStyle=\"danger\"\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"secondary\"\n />\n ) : (\n <>\n <Tag\n indicatorStyle={isDomainValidated ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n indicatorStyle={status === \"active\" ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default React.memo(TagBlock);\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n width: \"60%\",\n render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">{hostName}</Typography>\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\n autoWidth: true,\n }}\n menuItems={[\n {\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => enableManagePane(customDomain),\n key: \"edit-custom-domain-button\",\n },\n {\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => enableDeleteAlert(customDomain),\n key: \"delete-custom-domain\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n];\n\nexport const recordData = customDomain => {\n const { status, hostname, dnsTarget, cnameValidationParams } = customDomain;\n\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n\n const recordName = isDomainValidated ? hostname : cnameValidationParams?.name;\n\n const recordValue = isDomainValidated\n ? dnsTarget\n : cnameValidationParams?.value;\n\n const recordType = isDomainValidated\n ? t(\"neetoMolecules.customDomain.cname\")\n : t(\"neetoMolecules.customDomain.domainValidationCname\");\n\n const recordDescription = isDomainValidated\n ? t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n })\n : t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n proxyMessage: t(\"neetoMolecules.customDomain.validation.proxyMessage\"),\n });\n\n const recordNameLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.name\"),\n });\n\n const recordValueLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.value\"),\n });\n\n return {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n };\n};\n","import React from \"react\";\n\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Info } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Input, Callout } from \"neetoui\";\n\nimport { recordData } from \"../utils\";\n\nconst Record = ({ customDomain }) => {\n const {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n } = recordData(customDomain);\n\n return (\n <div className=\"mt-6 grid gap-4\">\n {customDomain.status !== \"active\" && (\n <Callout icon={Info} style=\"info\">\n {recordDescription}\n </Callout>\n )}\n <Input\n disabled\n data-cy={joinHyphenCase(recordNameLabel)}\n label={recordNameLabel}\n value={recordName}\n suffix={\n <CopyToClipboardButton size=\"small\" style=\"text\" value={recordName} />\n }\n />\n <Input\n disabled\n data-cy={joinHyphenCase(recordValueLabel)}\n label={recordValueLabel}\n value={recordValue}\n suffix={\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={recordValue}\n />\n }\n />\n </div>\n );\n};\n\nexport default React.memo(Record);\n","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\n\nconst StatusInfo = () => {\n const helpUrl = `https://help.${globalProps.appName.toLowerCase()}.com/articles/custom-domains`;\n\n return (\n <div className=\"space-y-6\">\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 neeto-ui-text-gray-700 space-y-3 p-4\">\n <Trans\n i18nKey=\"neetoMolecules.customDomain.messageBlock.dnsStatus\"\n components={{\n a: (\n <a\n className=\"neeto-ui-btn--style-link\"\n href={helpUrl}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default React.memo(StatusInfo);\n","import { t } from \"i18next\";\nimport * as Yup from \"yup\";\n\nimport { HOSTNAME_REGEX } from \"./constants\";\n\nexport const getCustomDomainValidationSchema = () =>\n Yup.object().shape({\n hostname: Yup.string()\n .required(t(\"neetoMolecules.customDomain.formikValidation.required\"))\n .matches(\n HOSTNAME_REGEX,\n t(\"neetoMolecules.customDomain.formikValidation.valid\")\n ),\n });\n","import axios from \"axios\";\n\nconst getUrlwithId = (url, id) => (id ? `${url}/${id}` : url);\n\nconst fetchCustomDomains = ({ url, params }) => axios.get(url, { params });\n\nconst updateCustomDomain = (url, id) => axios.patch(getUrlwithId(url, id));\n\nconst createCustomDomain = (url, payload) => axios.post(url, payload);\nconst deleteCustomDomain = (url, id) => axios.delete(getUrlwithId(url, id));\n\nconst validateDomain = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_domain`);\n\nconst validateCname = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_cname`);\n\nconst customDomainApi = {\n createCustomDomain,\n deleteCustomDomain,\n validateDomain,\n fetchCustomDomains,\n validateCname,\n updateCustomDomain,\n};\n\nexport default customDomainApi;\n","export const DOMAIN_QUERY_KEY = \"custom-domain\";\n","import { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { useQuery } from \"react-query\";\n\nimport customDomainApi from \"./api\";\nimport { DOMAIN_QUERY_KEY } from \"./constants\";\n\nconst useCreateCustomDomain = (url, options = {}) =>\n useMutationWithInvalidation(\n payload => customDomainApi.createCustomDomain(url, payload),\n { keysToInvalidate: [DOMAIN_QUERY_KEY], ...options }\n );\n\nconst useDeleteCustomDomain = (url, options = {}) =>\n useMutationWithInvalidation(\n id => customDomainApi.deleteCustomDomain(url, id),\n { keysToInvalidate: [DOMAIN_QUERY_KEY], ...options }\n );\n\nconst useFetchCustomDomains = params =>\n useQuery([DOMAIN_QUERY_KEY, { ...params }], () =>\n customDomainApi.fetchCustomDomains(params)\n );\n\nconst useValidateDomain = (url, options = {}) =>\n useMutationWithInvalidation(id => customDomainApi.validateDomain(url, id), {\n keysToInvalidate: [DOMAIN_QUERY_KEY],\n ...options,\n });\n\nconst useValidateCname = (url, options = {}) =>\n useMutationWithInvalidation(id => customDomainApi.validateCname(url, id), {\n keysToInvalidate: [DOMAIN_QUERY_KEY],\n ...options,\n });\n\nconst useUpdateCustomDomain = (url, options = {}) =>\n useMutationWithInvalidation(\n id => customDomainApi.updateCustomDomain(url, id),\n { keysToInvalidate: [DOMAIN_QUERY_KEY], ...options }\n );\n\nexport {\n useCreateCustomDomain,\n useDeleteCustomDomain,\n useValidateDomain,\n useFetchCustomDomains,\n useValidateCname,\n useUpdateCustomDomain,\n};\n","import React, { useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Check } from \"neetoicons\";\nimport { Label, Pane, Typography, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Record from \"./Record\";\nimport StatusInfo from \"./StatusInfo\";\nimport TagBlock from \"./TagBlock\";\nimport { getCustomDomainValidationSchema } from \"./utils\";\n\nimport {\n useCreateCustomDomain,\n useValidateDomain,\n useValidateCname,\n useUpdateCustomDomain,\n} from \"../useCustomDomainApi\";\n\nconst Manage = ({\n isOpen,\n onClose,\n customDomain,\n setCustomDomain,\n url,\n hasOne,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const customDomainId = hasOne ? null : customDomain?.id;\n\n const { mutate: createCustomDomain, isLoading: isCreating } =\n useCreateCustomDomain(url);\n\n const { mutate: validateDomain, isLoading: isValidating } =\n useValidateDomain(url);\n\n const { mutate: validateCname, isLoading: isCnameValidating } =\n useValidateCname(url);\n\n const { mutate: updateCustomDomain, isLoading: isUpdating } =\n useUpdateCustomDomain(url);\n\n const handleSubmit = values =>\n createCustomDomain(values, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateDomain = () =>\n validateDomain(customDomainId, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateCname = () => {\n validateCname(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n const handleUpdateCname = () => {\n updateCustomDomain(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Formik\n enableReinitialize\n initialValues={customDomain || INITIAL_VALUES}\n validationSchema={getCustomDomainValidationSchema()}\n onSubmit={handleSubmit}\n >\n {({ dirty }) => (\n <Form>\n <Pane.Header>\n <Typography\n data-cy=\"add-custom-domain-pane-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.edit\")\n : t(\"neetoMolecules.customDomain.addNew\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {isNotEmpty(customDomain) && (\n <TagBlock\n stacked\n {...{ handleValidateCname }}\n isCnameRecordsAdded={customDomain.addedCnameAt}\n status={customDomain.status}\n />\n )}\n <div className=\"space-y-2\">\n <Label required htmlFor=\"hostname\">\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.customDomain\", SINGULAR)\n : t(\"neetoMolecules.customDomain.label\")}\n </Label>\n <div className=\"flex items-start gap-2\">\n <Input\n data-cy=\"custom-domain-input-field\"\n disabled={isNotEmpty(customDomain)}\n name=\"hostname\"\n placeholder={t(\"neetoMolecules.customDomain.placeholder\")}\n ref={initialFocusRef}\n />\n {!isNotEmpty(customDomain) && (\n <Button\n data-cy=\"submit-custom-domain-button\"\n data-testid=\"submit-custom-domain-button\"\n disabled={!dirty || isCreating}\n icon={Check}\n loading={isCreating}\n style=\"primary\"\n type=\"submit\"\n />\n )}\n </div>\n </div>\n {isNotEmpty(customDomain) && (\n <>\n <Record {...{ customDomain }} />\n {customDomain.status === \"pending_domain_validation\" && (\n <Button\n data-cy=\"validate-domain-button\"\n disabled={isValidating}\n loading={isValidating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.domain\"\n )}\n onClick={handleValidateDomain}\n />\n )}\n {customDomain.status === \"pending_cname_validation\" && (\n <Button\n data-cy=\"validate-cname-record-button\"\n loading={isCnameValidating || isUpdating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.cnameAdded\"\n )}\n onClick={handleUpdateCname}\n />\n )}\n <StatusInfo />\n </>\n )}\n </div>\n </Pane.Body>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default Manage;\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { CustomDomain as NeetoUICustomDomainIcon } from \"neetoicons\";\nimport { Button, Tag, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DeleteAlert from \"components/CustomDomainDashboard/DeleteAlert\";\nimport ManageDomain from \"components/CustomDomainDashboard/Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"components/CustomDomainDashboard/useCustomDomainApi\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CustomDomain = ({ url, iconOnly }) => {\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n\n const { data: customDomain, isLoading } = useFetchCustomDomains({ url });\n\n const { mutate: deleteCustomDomain, isLoading: isDeleting } =\n useDeleteCustomDomain(url, { onSettled: () => setIsAlertOpen(false) });\n\n const actions = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => setIsPaneOpen(true),\n },\n {\n key: \"delete\",\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => setIsAlertOpen(true),\n },\n ];\n\n if (isLoading) return <Spinner />;\n\n return (\n <div>\n {isNotEmpty(customDomain) ? (\n <div className=\"flex flex-row items-center\">\n <Tag\n label={customDomain?.hostname}\n style={customDomain.status === \"active\" ? \"success\" : \"warning\"}\n />\n <MoreDropdown\n dropdownProps={{ autoWidth: true }}\n menuItems={actions}\n dropdownButtonProps={{\n \"data-testid\": \"nui-dropdown-icon\",\n strategy: \"fixed\",\n }}\n />\n </div>\n ) : (\n <Button\n icon={iconOnly && NeetoUICustomDomainIcon}\n style=\"text\"\n label={\n iconOnly\n ? \"\"\n : t(\"neetoMolecules.common.actions.add\", {\n entity: t(\n \"neetoMolecules.customDomain.customDomain\",\n SINGULAR\n ).toLowerCase(),\n })\n }\n tooltipProps={\n iconOnly && {\n content: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n }\n }\n onClick={() => setIsPaneOpen(true)}\n />\n )}\n <ManageDomain\n hasOne\n {...{ customDomain, url }}\n isOpen={isPaneOpen}\n setCustomDomain={noop}\n onClose={() => setIsPaneOpen(false)}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() => deleteCustomDomain()}\n />\n </div>\n );\n};\n\nCustomDomain.propTypes = {\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Pass this prop if you need a icon button without label.\n */\n iconOnly: PropTypes.bool,\n};\n\nexport default CustomDomain;\n"],"names":["arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","DeleteAlert","_ref","onClose","onSubmit","isOpen","isSubmitting","hostname","_useTranslation","useTranslation","t","React","createElement","Alert","cancelButtonLabel","submitButtonLabel","title","message","Trans","i18nKey","values","HOSTNAME_REGEX","INITIAL_VALUES","objectWithoutPropertiesLoose","toPrimitive","toPropertyKey","MENU_ITEM_TYPES","menuItem","divider","DEFAULT_TOOLTIP_PROPS","disabled","position","MenuItem","Dropdown","Menu","Submenu","label","key","menuItemProps","_objectWithoutProperties","_excluded","_extends","customTarget","Button","trigger","dropdownProps","menuItems","map","_ref2","_ref2$isVisible","isVisible","_excluded2","MoreDropdownMenuItem","Divider","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","_objectSpread","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_ref$menuItems","tooltipProps","mergeRight","targetIcon","MenuVertical","MenuHorizontal","isDropdownDisabled","Tooltip","icon","iconPosition","size","style","autoWidth","className","buttonProps","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","Tag","indicatorStyle","concat","Fragment","memo","recordData","customDomain","dnsTarget","cnameValidationParams","recordName","name","recordValue","value","recordType","recordDescription","record","proxyMessage","recordNameLabel","recordValueLabel","Record","_recordData","Callout","Info","Input","joinHyphenCase","suffix","CopyToClipboardButton","StatusInfo","helpUrl","globalProps","appName","toLowerCase","components","a","href","rel","target","getCustomDomainValidationSchema","Yup","object","shape","string","required","matches","getUrlwithId","url","id","fetchCustomDomains","params","axios","get","updateCustomDomain","patch","createCustomDomain","payload","post","deleteCustomDomain","validateDomain","validateCname","customDomainApi","DOMAIN_QUERY_KEY","useCreateCustomDomain","options","arguments","length","undefined","useMutationWithInvalidation","keysToInvalidate","useDeleteCustomDomain","useFetchCustomDomains","useQuery","useValidateDomain","useValidateCname","useUpdateCustomDomain","Manage","setCustomDomain","hasOne","initialFocusRef","useRef","customDomainId","_useCreateCustomDomai","mutate","isCreating","isLoading","_useValidateDomain","isValidating","_useValidateCname","isCnameValidating","_useUpdateCustomDomai","isUpdating","handleSubmit","onSuccess","handleValidateDomain","handleValidateCname","data","handleUpdateCname","Pane","Formik","enableReinitialize","initialValues","validationSchema","dirty","Form","Header","Typography","weight","isNotEmpty","Body","isCnameRecordsAdded","addedCnameAt","Label","htmlFor","SINGULAR","placeholder","ref","Check","loading","CustomDomain","iconOnly","_useState","useState","_useState2","_slicedToArray","isPaneOpen","setIsPaneOpen","_useState3","_useState4","isAlertOpen","setIsAlertOpen","_useFetchCustomDomain","_useDeleteCustomDomai","onSettled","isDeleting","actions","Spinner","strategy","NeetoUICustomDomainIcon","entity","content","ManageDomain","noop"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { forwardRef, useRef, useState } from 'react';
3
3
  import { isNotPresent, isNotEmpty, noop, snakeToCamelCase } from '@bigbinary/neeto-cist';
4
- import { withT, useDebounce } from '@bigbinary/neeto-commons-frontend/react-utils';
4
+ import { withT, useMutationWithInvalidation, useDebounce } from '@bigbinary/neeto-commons-frontend/react-utils';
5
5
  import { Typography, Button, Alert, Dropdown as Dropdown$1, Input, Tooltip, Tag, Callout, Pane, Label, Table, NoData } from '@bigbinary/neetoui';
6
6
  import { useTranslation, Trans } from 'react-i18next';
7
7
  import classnames from 'classnames';
@@ -17,7 +17,7 @@ import { Input as Input$1 } from '@bigbinary/neetoui/formik';
17
17
  import CopyToClipboardButton from '@bigbinary/neeto-molecules/CopyToClipboardButton';
18
18
  import { t as t$1 } from 'i18next';
19
19
  import * as Yup from 'yup';
20
- import { useQueryClient, useMutation, useQuery } from 'react-query';
20
+ import { useQuery } from 'react-query';
21
21
  import axios from 'axios';
22
22
 
23
23
  function _arrayWithHoles(arr) {
@@ -2035,74 +2035,54 @@ var customDomainApi = {
2035
2035
  updateCustomDomain: updateCustomDomain
2036
2036
  };
2037
2037
 
2038
- var DEFAULT_STALE_TIME = 60 * 60 * 1000;
2039
2038
  var DOMAIN_QUERY_KEY = "custom-domain";
2040
2039
 
2041
2040
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
2042
2041
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
2043
2042
  var useCreateCustomDomain = function useCreateCustomDomain(url) {
2044
2043
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2045
- var queryClient = useQueryClient();
2046
- return useMutation(function (payload) {
2044
+ return useMutationWithInvalidation(function (payload) {
2047
2045
  return customDomainApi.createCustomDomain(url, payload);
2048
- }, _objectSpread(_objectSpread({}, options), {}, {
2049
- onSuccess: function onSuccess() {
2050
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
2051
- }
2052
- }));
2046
+ }, _objectSpread({
2047
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
2048
+ }, options));
2053
2049
  };
2054
2050
  var useDeleteCustomDomain = function useDeleteCustomDomain(url) {
2055
2051
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2056
- var queryClient = useQueryClient();
2057
- return useMutation(function (id) {
2052
+ return useMutationWithInvalidation(function (id) {
2058
2053
  return customDomainApi.deleteCustomDomain(url, id);
2059
- }, _objectSpread(_objectSpread({}, options), {}, {
2060
- onSuccess: function onSuccess(result) {
2061
- var _options$onSuccess;
2062
- (_options$onSuccess = options.onSuccess) === null || _options$onSuccess === void 0 ? void 0 : _options$onSuccess.call(options, result);
2063
- queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
2064
- }
2065
- }));
2054
+ }, _objectSpread({
2055
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
2056
+ }, options));
2066
2057
  };
2067
2058
  var useFetchCustomDomains = function useFetchCustomDomains(params) {
2068
2059
  return useQuery([DOMAIN_QUERY_KEY, _objectSpread({}, params)], function () {
2069
2060
  return customDomainApi.fetchCustomDomains(params);
2070
- }, {
2071
- staleTime: DEFAULT_STALE_TIME
2072
2061
  });
2073
2062
  };
2074
2063
  var useValidateDomain = function useValidateDomain(url) {
2075
2064
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2076
- var queryClient = useQueryClient();
2077
- return useMutation(function (id) {
2065
+ return useMutationWithInvalidation(function (id) {
2078
2066
  return customDomainApi.validateDomain(url, id);
2079
- }, _objectSpread(_objectSpread({}, options), {}, {
2080
- onSuccess: function onSuccess() {
2081
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
2082
- }
2083
- }));
2067
+ }, _objectSpread({
2068
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
2069
+ }, options));
2084
2070
  };
2085
2071
  var useValidateCname = function useValidateCname(url) {
2086
2072
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2087
- var queryClient = useQueryClient();
2088
- return useMutation(function (id) {
2073
+ return useMutationWithInvalidation(function (id) {
2089
2074
  return customDomainApi.validateCname(url, id);
2090
- }, _objectSpread(_objectSpread({}, options), {}, {
2091
- onSuccess: function onSuccess() {
2092
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
2093
- }
2094
- }));
2075
+ }, _objectSpread({
2076
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
2077
+ }, options));
2095
2078
  };
2096
2079
  var useUpdateCustomDomain = function useUpdateCustomDomain(url) {
2097
2080
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
2098
- var queryClient = useQueryClient();
2099
- return useMutation(function (id) {
2081
+ return useMutationWithInvalidation(function (id) {
2100
2082
  return customDomainApi.updateCustomDomain(url, id);
2101
- }, _objectSpread(_objectSpread({}, options), {}, {
2102
- onSuccess: function onSuccess() {
2103
- return queryClient.invalidateQueries(DOMAIN_QUERY_KEY);
2104
- }
2105
- }));
2083
+ }, _objectSpread({
2084
+ keysToInvalidate: [DOMAIN_QUERY_KEY]
2085
+ }, options));
2106
2086
  };
2107
2087
 
2108
2088
  var Manage = function Manage(_ref) {