@bigbinary/neeto-molecules 3.15.31 → 3.15.32

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.
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomDomainDashboard.js","sources":["../src/components/CustomDomainDashboard/Header.jsx","../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../src/components/CustomDomainDashboard/utils.jsx","../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NeetoHeader from \"components/Header\";\n\nimport { DEFAULT_HELP_POPOVER_PROPS } from \"./constants\";\n\nconst Header = ({\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps = {},\n isFiltersVisible,\n}) => {\n const { t } = useTranslation();\n\n const { titleHelpPopoverProps = {}, ...restHeaderProps } = headerProps;\n\n const updatedTitleHelpPopoverProps = mergeRight(\n DEFAULT_HELP_POPOVER_PROPS,\n titleHelpPopoverProps\n );\n\n return (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\n titleHelpPopoverProps={updatedTitleHelpPopoverProps}\n actionBlock={\n <Button\n data-cy=\"add-new-custom-domain-button\"\n label={t(\"neetoMolecules.customDomain.addNew\")}\n onClick={() => setIsPaneOpen(true)}\n />\n }\n searchProps={\n isFiltersVisible && {\n value: searchTerm,\n onChange: withEventTargetValue(setSearchTerm),\n placeholder: t(\"neetoMolecules.customDomain.search\"),\n \"data-cy\": \"custom-domain-search-field\",\n className: \"w-56\",\n }\n }\n {...restHeaderProps}\n />\n );\n};\n\nexport default memo(Header);\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils/general\";\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 label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"danger\"\n />\n ) : (\n <>\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={isDomainValidated ? \"success\" : \"warning\"}\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 data-cy={`${hyphenize(status)}-tag-container`}\n style={status === \"active\" ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default memo(TagBlock);\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Button } 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 render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-cy=\"hostname-button\"\n label={hostName}\n style=\"link\"\n onClick={() => enableManagePane(customDomain)}\n />\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\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 },\n];\n","import { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { path } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport Manage from \"./Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"./useCustomDomainApi\";\nimport { renderColumnData } from \"./utils\";\n\nconst CustomDomainDashboard = ({ headerProps, url, onCreate }) => {\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [customDomain, setCustomDomain] = useState({});\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n\n const { data: data, isLoading } = useFetchCustomDomains({\n url,\n params: { searchTerm: debouncedSearchTerm },\n });\n\n const isFiltersVisible =\n isNotEmpty(data?.customDomains) || isPresent(searchTerm);\n\n const helpLink =\n path([\"titleHelpPopoverProps\", \"helpLinkProps\", \"href\"], headerProps) ||\n \"https://help.neetosite.com/p/a-95ad5b03\";\n\n const { mutate: deleteCustomDomain, isPending: isDeleting } =\n useDeleteCustomDomain(url, {\n onSettled: () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n },\n });\n\n const enableManagePane = customDomain => {\n setCustomDomain(customDomain);\n setIsPaneOpen(true);\n };\n\n const enableDeleteAlert = customDomain => {\n setCustomDomain(customDomain);\n setIsAlertOpen(true);\n };\n\n const disableManagePane = () => {\n setIsPaneOpen(false);\n setCustomDomain({});\n };\n\n const disableDeleteAlert = () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n };\n\n return (\n <>\n <Container>\n <Header\n {...{\n headerProps,\n isFiltersVisible,\n searchTerm,\n setIsPaneOpen,\n setSearchTerm,\n }}\n />\n {isLoading && (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\n !!data?.customDomains?.length && (\n <Typography\n className=\"neeto-ui-gray-800 font-semibold\"\n component=\"h4\"\n >\n {t(\"neetoMolecules.customDomain.customDomainWithCount\", {\n count: data?.customDomains?.length,\n })}\n </Typography>\n )\n }\n />\n {isNotEmpty(data?.customDomains) ? (\n <TableWrapper>\n <Table\n fixedHeight\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoMolecules.customDomain.notFound\")}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.learnMoreMessage\"\n components={{\n button: (\n <Button\n href={helpLink}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoMolecules.customDomain.addNew\"),\n onClick: () => setIsPaneOpen(true),\n }}\n />\n </div>\n )}\n </>\n )}\n </Container>\n <Manage\n {...{ customDomain, onCreate, setCustomDomain, url }}\n hasOne={false}\n isOpen={isPaneOpen}\n onClose={disableManagePane}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={disableDeleteAlert}\n onSubmit={() => deleteCustomDomain(customDomain?.id)}\n />\n </>\n );\n};\n\nCustomDomainDashboard.propTypes = {\n /**\n * The props to be passed to the `CustomDomain` page header. Accepts all props that can be passed to the `Header` component.\n */\n headerProps: PropTypes.object,\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Callback function will be invoked with new domain values after successfully creating the domain.\n */\n onCreate: PropTypes.func,\n};\n\nexport default CustomDomainDashboard;\n"],"names":["Header","_ref","setIsPaneOpen","searchTerm","setSearchTerm","_ref$headerProps","headerProps","isFiltersVisible","_useTranslation","useTranslation","t","_headerProps$titleHel","titleHelpPopoverProps","restHeaderProps","_objectWithoutProperties","_excluded","updatedTitleHelpPopoverProps","mergeRight","DEFAULT_HELP_POPOVER_PROPS","_jsx","NeetoHeader","_objectSpread","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","children","Tag","concat","style","_jsxs","_Fragment","hyphenize","renderColumnData","enableManagePane","enableDeleteAlert","SINGULAR","dataIndex","key","render","hostName","customDomain","MoreDropdown","dropdownButtonProps","id","dropdownProps","position","strategy","menuItems","CustomDomainDashboard","_data$customDomains","_data$customDomains2","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","helpLink","path","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","isPending","disableManagePane","disableDeleteAlert","Container","Spinner","SubHeader","leftActionBlock","length","Typography","component","count","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","NoData","helpText","Trans","i18nKey","components","button","href","target","primaryButtonProps","Manage","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit"],"mappings":"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"}
@@ -1,139 +0,0 @@
1
- 'use strict';
2
-
3
- var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
4
- var React = require('react');
5
- var neetoCist = require('@bigbinary/neeto-cist');
6
- var constants = require('@bigbinary/neeto-commons-frontend/constants');
7
- var general = require('@bigbinary/neeto-commons-frontend/utils/general');
8
- var NeetoUICustomDomainIcon = require('@bigbinary/neeto-icons/CustomDomain');
9
- var Button = require('@bigbinary/neetoui/Button');
10
- var Tag = require('@bigbinary/neetoui/Tag');
11
- var Spinner = require('@bigbinary/neetoui/Spinner');
12
- var reactI18next = require('react-i18next');
13
- var index = require('./index-CQS1l-EP.js');
14
- var MoreDropdown = require('./MoreDropdown.js');
15
- var jsxRuntime = require('react/jsx-runtime');
16
- require('@bigbinary/neeto-commons-frontend/react-utils');
17
- require('@bigbinary/neetoui/Alert');
18
- require('@bigbinary/neetoui/Pane');
19
- require('./inject-css-vQvjPR2x.js');
20
- require('@bigbinary/neetoui/Typography');
21
- require('@bigbinary/neetoui/formik/ActionBlock');
22
- require('@bigbinary/neetoui/formik/Input');
23
- require('@bigbinary/neetoui/formik/Form');
24
- require('i18next');
25
- require('yup');
26
- require('@babel/runtime/helpers/defineProperty');
27
- require('@tanstack/react-query');
28
- require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
29
- require('axios');
30
- require('@bigbinary/neetoui/Table');
31
- require('@bigbinary/neetoui/Checkbox');
32
- require('@bigbinary/neetoui/Callout');
33
- require('./TableWrapper.js');
34
- require('classnames');
35
- require('@bigbinary/neetoui/Stepper');
36
- require('./CopyToClipboardButton.js');
37
- require('@babel/runtime/helpers/objectWithoutProperties');
38
- require('@bigbinary/neeto-icons/Copy');
39
- require('@bigbinary/neeto-icons/Check');
40
- require('ramda');
41
- require('@bigbinary/neetoui/Toastr');
42
- require('@bigbinary/neeto-icons/MenuHorizontal');
43
- require('@bigbinary/neeto-icons/MenuVertical');
44
- require('@bigbinary/neetoui/Dropdown');
45
- require('@bigbinary/neetoui/Tooltip');
46
-
47
- var CustomDomain = function CustomDomain(_ref) {
48
- var url = _ref.url,
49
- iconOnly = _ref.iconOnly,
50
- onCreate = _ref.onCreate;
51
- var _useState = React.useState(false),
52
- _useState2 = _slicedToArray(_useState, 2),
53
- isPaneOpen = _useState2[0],
54
- setIsPaneOpen = _useState2[1];
55
- var _useState3 = React.useState(false),
56
- _useState4 = _slicedToArray(_useState3, 2),
57
- isAlertOpen = _useState4[0],
58
- setIsAlertOpen = _useState4[1];
59
- var _useTranslation = reactI18next.useTranslation(),
60
- t = _useTranslation.t;
61
- var _useFetchCustomDomain = index.useFetchCustomDomains({
62
- url: url
63
- }),
64
- customDomain = _useFetchCustomDomain.data,
65
- isLoading = _useFetchCustomDomain.isLoading;
66
- var _useDeleteCustomDomai = index.useDeleteCustomDomain(url, {
67
- onSettled: function onSettled() {
68
- return setIsAlertOpen(false);
69
- }
70
- }),
71
- deleteCustomDomain = _useDeleteCustomDomai.mutate,
72
- isDeleting = _useDeleteCustomDomai.isPending;
73
- var actions = [{
74
- key: "edit",
75
- label: t("neetoMolecules.common.actions.edit"),
76
- onClick: function onClick() {
77
- return setIsPaneOpen(true);
78
- }
79
- }, {
80
- key: "delete",
81
- label: t("neetoMolecules.common.actions.delete"),
82
- onClick: function onClick() {
83
- return setIsAlertOpen(true);
84
- }
85
- }];
86
- if (isLoading) return /*#__PURE__*/jsxRuntime.jsx(Spinner, {});
87
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
88
- children: [neetoCist.isNotEmpty(customDomain) ? /*#__PURE__*/jsxRuntime.jsxs("div", {
89
- className: "flex flex-row items-center",
90
- children: [/*#__PURE__*/jsxRuntime.jsx(Tag, {
91
- "data-cy": "".concat(general.hyphenize(customDomain.status), "-tag-container"),
92
- label: customDomain === null || customDomain === void 0 ? void 0 : customDomain.hostname,
93
- style: customDomain.status === "active" ? "success" : "warning"
94
- }), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
95
- menuItems: actions,
96
- dropdownButtonProps: {
97
- "data-testid": "nui-dropdown-icon",
98
- strategy: "fixed",
99
- "data-cy": "custom-domain-menu-button"
100
- }
101
- })]
102
- }) : /*#__PURE__*/jsxRuntime.jsx(Button, {
103
- icon: iconOnly && NeetoUICustomDomainIcon,
104
- style: "text",
105
- label: iconOnly ? "" : t("neetoMolecules.common.actions.add", {
106
- entity: t("neetoMolecules.customDomain.customDomain", constants.SINGULAR)
107
- }),
108
- tooltipProps: iconOnly && {
109
- content: t("neetoMolecules.customDomain.customDomain", constants.SINGULAR)
110
- },
111
- onClick: function onClick() {
112
- return setIsPaneOpen(true);
113
- }
114
- }), /*#__PURE__*/jsxRuntime.jsx(index.Manage, {
115
- customDomain: customDomain,
116
- onCreate: onCreate,
117
- url: url,
118
- hasOne: true,
119
- isOpen: isPaneOpen,
120
- setCustomDomain: neetoCist.noop,
121
- onClose: function onClose() {
122
- return setIsPaneOpen(false);
123
- }
124
- }), /*#__PURE__*/jsxRuntime.jsx(index.DeleteAlert, {
125
- hostname: customDomain === null || customDomain === void 0 ? void 0 : customDomain.hostname,
126
- isOpen: isAlertOpen,
127
- isSubmitting: isDeleting,
128
- onClose: function onClose() {
129
- return setIsAlertOpen(false);
130
- },
131
- onSubmit: function onSubmit() {
132
- return deleteCustomDomain();
133
- }
134
- })]
135
- });
136
- };
137
-
138
- module.exports = CustomDomain;
139
- //# sourceMappingURL=CustomDomain.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomDomain.js","sources":["../../src/components/CustomDomain/index.jsx"],"sourcesContent":["import { useState } from \"react\";\n\nimport { isNotEmpty, noop } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { hyphenize } from \"neetocommons/utils/general\";\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, onCreate }) => {\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, isPending: 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 data-cy={`${hyphenize(customDomain.status)}-tag-container`}\n label={customDomain?.hostname}\n style={customDomain.status === \"active\" ? \"success\" : \"warning\"}\n />\n <MoreDropdown\n menuItems={actions}\n dropdownButtonProps={{\n \"data-testid\": \"nui-dropdown-icon\",\n strategy: \"fixed\",\n \"data-cy\": \"custom-domain-menu-button\",\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 ),\n })\n }\n tooltipProps={\n iconOnly && {\n content: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n }\n }\n onClick={() => setIsPaneOpen(true)}\n />\n )}\n <ManageDomain\n {...{ customDomain, onCreate, url }}\n hasOne\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 * Callback function will be invoked with new domain values after successfully creating the domain.\n */\n onCreate: PropTypes.func,\n};\n\nexport default CustomDomain;\n"],"names":["CustomDomain","_ref","url","iconOnly","onCreate","_useState","useState","_useState2","_slicedToArray","isPaneOpen","setIsPaneOpen","_useState3","_useState4","isAlertOpen","setIsAlertOpen","_useTranslation","useTranslation","t","_useFetchCustomDomain","useFetchCustomDomains","customDomain","data","isLoading","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","isPending","actions","key","label","onClick","_jsx","Spinner","_jsxs","children","isNotEmpty","className","Tag","concat","hyphenize","status","hostname","style","MoreDropdown","menuItems","dropdownButtonProps","strategy","Button","icon","NeetoUICustomDomainIcon","entity","SINGULAR","tooltipProps","content","ManageDomain","hasOne","isOpen","setCustomDomain","noop","onClose","DeleteAlert","isSubmitting","onSubmit"],"mappings":"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"}
@@ -1,327 +0,0 @@
1
- 'use strict';
2
-
3
- var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
4
- var React = require('react');
5
- var neetoCist = require('@bigbinary/neeto-cist');
6
- var useDebounce = require('@bigbinary/neeto-commons-frontend/react-utils/useDebounce');
7
- var Table = require('@bigbinary/neetoui/Table');
8
- var Typography = require('@bigbinary/neetoui/Typography');
9
- var NoData = require('@bigbinary/neetoui/NoData');
10
- var Button = require('@bigbinary/neetoui/Button');
11
- var Spinner = require('@bigbinary/neetoui/Spinner');
12
- var ramda = require('ramda');
13
- var reactI18next = require('react-i18next');
14
- var Container = require('./Container.js');
15
- var SubHeader = require('./SubHeader.js');
16
- var TableWrapper = require('./TableWrapper.js');
17
- var index = require('./index-CQS1l-EP.js');
18
- var _defineProperty = require('@babel/runtime/helpers/defineProperty');
19
- var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
20
- var constants = require('@bigbinary/neeto-commons-frontend/constants');
21
- var general = require('@bigbinary/neeto-commons-frontend/utils/general');
22
- var Header$2 = require('./Header.js');
23
- var jsxRuntime = require('react/jsx-runtime');
24
- var i18next = require('i18next');
25
- var MoreDropdown = require('./MoreDropdown.js');
26
- var classnames = require('classnames');
27
- var Tag = require('@bigbinary/neetoui/Tag');
28
- require('./index-JY2zVpnv.js');
29
- require('./_commonjsHelpers-BJu3ubxk.js');
30
- require('./inject-css-vQvjPR2x.js');
31
- require('@bigbinary/neeto-icons/Column');
32
- require('./useColumns-BP8c4PV-.js');
33
- require('@bigbinary/neeto-icons/Search');
34
- require('@bigbinary/neetoui/Checkbox');
35
- require('@bigbinary/neetoui/Dropdown');
36
- require('@bigbinary/neetoui/Input');
37
- require('@bigbinary/neetoui/Label');
38
- require('zustand');
39
- require('zustand/middleware');
40
- require('@bigbinary/neeto-commons-frontend/react-utils');
41
- require('@bigbinary/neeto-icons/Download');
42
- require('@bigbinary/neeto-filters-frontend/Filters');
43
- require('@bigbinary/neeto-icons/Filter');
44
- require('@bigbinary/neetoui/Alert');
45
- require('@bigbinary/neetoui/Pane');
46
- require('@bigbinary/neetoui/formik/ActionBlock');
47
- require('@bigbinary/neetoui/formik/Input');
48
- require('@bigbinary/neetoui/formik/Form');
49
- require('yup');
50
- require('@tanstack/react-query');
51
- require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
52
- require('axios');
53
- require('@bigbinary/neetoui/Callout');
54
- require('@bigbinary/neetoui/Stepper');
55
- require('./CopyToClipboardButton.js');
56
- require('@bigbinary/neeto-icons/Copy');
57
- require('@bigbinary/neeto-icons/Check');
58
- require('@bigbinary/neetoui/Toastr');
59
- require('./Breadcrumbs.js');
60
- require('react-router-dom');
61
- require('./HelpPopover.js');
62
- require('@bigbinary/neeto-icons/Help');
63
- require('@bigbinary/neetoui/Popover');
64
- require('./Search.js');
65
- require('@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce');
66
- require('@bigbinary/neeto-commons-frontend/react-utils/useQueryParams');
67
- require('@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect');
68
- require('@bigbinary/neeto-commons-frontend/utils');
69
- require('@bigbinary/neeto-icons/MenuHorizontal');
70
- require('@bigbinary/neeto-icons/MenuVertical');
71
- require('@bigbinary/neetoui/Tooltip');
72
-
73
- var _excluded = ["titleHelpPopoverProps"];
74
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
75
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
76
- var Header = function Header(_ref) {
77
- var setIsPaneOpen = _ref.setIsPaneOpen,
78
- searchTerm = _ref.searchTerm,
79
- setSearchTerm = _ref.setSearchTerm,
80
- _ref$headerProps = _ref.headerProps,
81
- headerProps = _ref$headerProps === void 0 ? {} : _ref$headerProps,
82
- isFiltersVisible = _ref.isFiltersVisible;
83
- var _useTranslation = reactI18next.useTranslation(),
84
- t = _useTranslation.t;
85
- var _headerProps$titleHel = headerProps.titleHelpPopoverProps,
86
- titleHelpPopoverProps = _headerProps$titleHel === void 0 ? {} : _headerProps$titleHel,
87
- restHeaderProps = _objectWithoutProperties(headerProps, _excluded);
88
- var updatedTitleHelpPopoverProps = ramda.mergeRight(index.DEFAULT_HELP_POPOVER_PROPS, titleHelpPopoverProps);
89
- return /*#__PURE__*/jsxRuntime.jsx(Header$2, _objectSpread({
90
- "data-testid": "custom-domain-header",
91
- title: t("neetoMolecules.customDomain.customDomain", constants.PLURAL),
92
- titleHelpPopoverProps: updatedTitleHelpPopoverProps,
93
- actionBlock: /*#__PURE__*/jsxRuntime.jsx(Button, {
94
- "data-cy": "add-new-custom-domain-button",
95
- label: t("neetoMolecules.customDomain.addNew"),
96
- onClick: function onClick() {
97
- return setIsPaneOpen(true);
98
- }
99
- }),
100
- searchProps: isFiltersVisible && {
101
- value: searchTerm,
102
- onChange: general.withEventTargetValue(setSearchTerm),
103
- placeholder: t("neetoMolecules.customDomain.search"),
104
- "data-cy": "custom-domain-search-field",
105
- className: "w-56"
106
- }
107
- }, restHeaderProps));
108
- };
109
- var Header$1 = /*#__PURE__*/React.memo(Header);
110
-
111
- var TagBlock = function TagBlock(_ref) {
112
- var status = _ref.status,
113
- _ref$stacked = _ref.stacked,
114
- stacked = _ref$stacked === void 0 ? false : _ref$stacked;
115
- var _useTranslation = reactI18next.useTranslation(),
116
- t = _useTranslation.t;
117
- var isDomainValidated = status === "active" || status === "pending_cname_validation";
118
- var camelCasedStatus = neetoCist.snakeToCamelCase(status || "");
119
- return /*#__PURE__*/jsxRuntime.jsx("div", {
120
- className: classnames("flex gap-2", {
121
- "flex-col items-start": stacked
122
- }),
123
- children: status === "failed" ? /*#__PURE__*/jsxRuntime.jsx(Tag, {
124
- label: t("neetoMolecules.customDomain.status.".concat(camelCasedStatus)),
125
- style: "danger"
126
- }) : /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
127
- children: [/*#__PURE__*/jsxRuntime.jsx(Tag, {
128
- "data-cy": "".concat(general.hyphenize(status), "-tag-container"),
129
- style: isDomainValidated ? "success" : "warning",
130
- label: t("neetoMolecules.customDomain.status.domain.".concat(camelCasedStatus))
131
- }), isDomainValidated && /*#__PURE__*/jsxRuntime.jsx("div", {
132
- className: classnames("flex items-center justify-between gap-2", {
133
- "w-full": stacked
134
- }),
135
- children: /*#__PURE__*/jsxRuntime.jsx(Tag, {
136
- "data-cy": "".concat(general.hyphenize(status), "-tag-container"),
137
- style: status === "active" ? "success" : "warning",
138
- label: t("neetoMolecules.customDomain.status.cname.".concat(camelCasedStatus))
139
- })
140
- })]
141
- })
142
- });
143
- };
144
- var TagBlock$1 = /*#__PURE__*/React.memo(TagBlock);
145
-
146
- var renderColumnData = function renderColumnData(enableManagePane, enableDeleteAlert) {
147
- return [{
148
- title: i18next.t("neetoMolecules.customDomain.customDomain", constants.SINGULAR),
149
- dataIndex: "hostname",
150
- key: "hostname",
151
- render: function render(hostName, customDomain) {
152
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
153
- className: "flex items-center justify-between gap-x-3",
154
- children: [/*#__PURE__*/jsxRuntime.jsx(Button, {
155
- "data-cy": "hostname-button",
156
- label: hostName,
157
- style: "link",
158
- onClick: function onClick() {
159
- return enableManagePane(customDomain);
160
- }
161
- }), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
162
- dropdownButtonProps: {
163
- "data-testid": "nui-dropdown-icon-".concat(customDomain.id)
164
- },
165
- dropdownProps: {
166
- position: "bottom-end",
167
- strategy: "fixed"
168
- },
169
- menuItems: [{
170
- label: i18next.t("neetoMolecules.common.actions.edit"),
171
- onClick: function onClick() {
172
- return enableManagePane(customDomain);
173
- },
174
- key: "edit-custom-domain-button"
175
- }, {
176
- label: i18next.t("neetoMolecules.common.actions.delete"),
177
- onClick: function onClick() {
178
- return enableDeleteAlert(customDomain);
179
- },
180
- key: "delete-custom-domain"
181
- }]
182
- })]
183
- });
184
- }
185
- }, {
186
- title: i18next.t("neetoMolecules.common.status"),
187
- dataIndex: "status",
188
- key: "status",
189
- render: function render(status) {
190
- return /*#__PURE__*/jsxRuntime.jsx(TagBlock$1, {
191
- status: status
192
- });
193
- }
194
- }];
195
- };
196
-
197
- var CustomDomainDashboard = function CustomDomainDashboard(_ref) {
198
- var _data$customDomains, _data$customDomains2;
199
- var headerProps = _ref.headerProps,
200
- url = _ref.url,
201
- onCreate = _ref.onCreate;
202
- var _useState = React.useState(""),
203
- _useState2 = _slicedToArray(_useState, 2),
204
- searchTerm = _useState2[0],
205
- setSearchTerm = _useState2[1];
206
- var _useState3 = React.useState(false),
207
- _useState4 = _slicedToArray(_useState3, 2),
208
- isPaneOpen = _useState4[0],
209
- setIsPaneOpen = _useState4[1];
210
- var _useState5 = React.useState({}),
211
- _useState6 = _slicedToArray(_useState5, 2),
212
- customDomain = _useState6[0],
213
- setCustomDomain = _useState6[1];
214
- var _useState7 = React.useState(false),
215
- _useState8 = _slicedToArray(_useState7, 2),
216
- isAlertOpen = _useState8[0],
217
- setIsAlertOpen = _useState8[1];
218
- var _useTranslation = reactI18next.useTranslation(),
219
- t = _useTranslation.t;
220
- var debouncedSearchTerm = useDebounce(searchTerm, 500);
221
- var _useFetchCustomDomain = index.useFetchCustomDomains({
222
- url: url,
223
- params: {
224
- searchTerm: debouncedSearchTerm
225
- }
226
- }),
227
- data = _useFetchCustomDomain.data,
228
- isLoading = _useFetchCustomDomain.isLoading;
229
- var isFiltersVisible = neetoCist.isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) || neetoCist.isPresent(searchTerm);
230
- var helpLink = ramda.path(["titleHelpPopoverProps", "helpLinkProps", "href"], headerProps) || "https://help.neetosite.com/p/a-95ad5b03";
231
- var _useDeleteCustomDomai = index.useDeleteCustomDomain(url, {
232
- onSettled: function onSettled() {
233
- setIsAlertOpen(false);
234
- setCustomDomain({});
235
- }
236
- }),
237
- deleteCustomDomain = _useDeleteCustomDomai.mutate,
238
- isDeleting = _useDeleteCustomDomai.isPending;
239
- var enableManagePane = function enableManagePane(customDomain) {
240
- setCustomDomain(customDomain);
241
- setIsPaneOpen(true);
242
- };
243
- var enableDeleteAlert = function enableDeleteAlert(customDomain) {
244
- setCustomDomain(customDomain);
245
- setIsAlertOpen(true);
246
- };
247
- var disableManagePane = function disableManagePane() {
248
- setIsPaneOpen(false);
249
- setCustomDomain({});
250
- };
251
- var disableDeleteAlert = function disableDeleteAlert() {
252
- setIsAlertOpen(false);
253
- setCustomDomain({});
254
- };
255
- return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
256
- children: [/*#__PURE__*/jsxRuntime.jsxs(Container, {
257
- children: [/*#__PURE__*/jsxRuntime.jsx(Header$1, {
258
- headerProps: headerProps,
259
- isFiltersVisible: isFiltersVisible,
260
- searchTerm: searchTerm,
261
- setIsPaneOpen: setIsPaneOpen,
262
- setSearchTerm: setSearchTerm
263
- }), isLoading && /*#__PURE__*/jsxRuntime.jsx("div", {
264
- className: "flex h-full w-full items-center justify-center",
265
- children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
266
- }), !isLoading && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
267
- children: [/*#__PURE__*/jsxRuntime.jsx(SubHeader, {
268
- leftActionBlock: !!(data !== null && data !== void 0 && (_data$customDomains = data.customDomains) !== null && _data$customDomains !== void 0 && _data$customDomains.length) && /*#__PURE__*/jsxRuntime.jsx(Typography, {
269
- className: "neeto-ui-gray-800 font-semibold",
270
- component: "h4",
271
- children: t("neetoMolecules.customDomain.customDomainWithCount", {
272
- count: data === null || data === void 0 || (_data$customDomains2 = data.customDomains) === null || _data$customDomains2 === void 0 ? void 0 : _data$customDomains2.length
273
- })
274
- })
275
- }), neetoCist.isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) ? /*#__PURE__*/jsxRuntime.jsx(TableWrapper, {
276
- children: /*#__PURE__*/jsxRuntime.jsx(Table, {
277
- fixedHeight: true,
278
- allowRowClick: false,
279
- rowData: data === null || data === void 0 ? void 0 : data.customDomains,
280
- rowSelection: false,
281
- columnData: renderColumnData(enableManagePane, enableDeleteAlert)
282
- })
283
- }) : /*#__PURE__*/jsxRuntime.jsx("div", {
284
- className: "flex h-full w-full flex-grow items-center justify-center",
285
- children: /*#__PURE__*/jsxRuntime.jsx(NoData, {
286
- title: t("neetoMolecules.customDomain.notFound"),
287
- helpText: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
288
- i18nKey: "neetoMolecules.customDomain.learnMoreMessage",
289
- components: {
290
- button: /*#__PURE__*/jsxRuntime.jsx(Button, {
291
- href: helpLink,
292
- style: "link",
293
- target: "_blank"
294
- })
295
- }
296
- }),
297
- primaryButtonProps: {
298
- label: t("neetoMolecules.customDomain.addNew"),
299
- onClick: function onClick() {
300
- return setIsPaneOpen(true);
301
- }
302
- }
303
- })
304
- })]
305
- })]
306
- }), /*#__PURE__*/jsxRuntime.jsx(index.Manage, {
307
- customDomain: customDomain,
308
- onCreate: onCreate,
309
- setCustomDomain: setCustomDomain,
310
- url: url,
311
- hasOne: false,
312
- isOpen: isPaneOpen,
313
- onClose: disableManagePane
314
- }), /*#__PURE__*/jsxRuntime.jsx(index.DeleteAlert, {
315
- hostname: customDomain === null || customDomain === void 0 ? void 0 : customDomain.hostname,
316
- isOpen: isAlertOpen,
317
- isSubmitting: isDeleting,
318
- onClose: disableDeleteAlert,
319
- onSubmit: function onSubmit() {
320
- return deleteCustomDomain(customDomain === null || customDomain === void 0 ? void 0 : customDomain.id);
321
- }
322
- })]
323
- });
324
- };
325
-
326
- module.exports = CustomDomainDashboard;
327
- //# sourceMappingURL=CustomDomainDashboard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomDomainDashboard.js","sources":["../../src/components/CustomDomainDashboard/Header.jsx","../../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../../src/components/CustomDomainDashboard/utils.jsx","../../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NeetoHeader from \"components/Header\";\n\nimport { DEFAULT_HELP_POPOVER_PROPS } from \"./constants\";\n\nconst Header = ({\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps = {},\n isFiltersVisible,\n}) => {\n const { t } = useTranslation();\n\n const { titleHelpPopoverProps = {}, ...restHeaderProps } = headerProps;\n\n const updatedTitleHelpPopoverProps = mergeRight(\n DEFAULT_HELP_POPOVER_PROPS,\n titleHelpPopoverProps\n );\n\n return (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\n titleHelpPopoverProps={updatedTitleHelpPopoverProps}\n actionBlock={\n <Button\n data-cy=\"add-new-custom-domain-button\"\n label={t(\"neetoMolecules.customDomain.addNew\")}\n onClick={() => setIsPaneOpen(true)}\n />\n }\n searchProps={\n isFiltersVisible && {\n value: searchTerm,\n onChange: withEventTargetValue(setSearchTerm),\n placeholder: t(\"neetoMolecules.customDomain.search\"),\n \"data-cy\": \"custom-domain-search-field\",\n className: \"w-56\",\n }\n }\n {...restHeaderProps}\n />\n );\n};\n\nexport default memo(Header);\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils/general\";\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 label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"danger\"\n />\n ) : (\n <>\n <Tag\n data-cy={`${hyphenize(status)}-tag-container`}\n style={isDomainValidated ? \"success\" : \"warning\"}\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 data-cy={`${hyphenize(status)}-tag-container`}\n style={status === \"active\" ? \"success\" : \"warning\"}\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default memo(TagBlock);\n","import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Button } 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 render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-cy=\"hostname-button\"\n label={hostName}\n style=\"link\"\n onClick={() => enableManagePane(customDomain)}\n />\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\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 },\n];\n","import { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { path } from \"ramda\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport Manage from \"./Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"./useCustomDomainApi\";\nimport { renderColumnData } from \"./utils\";\n\nconst CustomDomainDashboard = ({ headerProps, url, onCreate }) => {\n const [searchTerm, setSearchTerm] = useState(\"\");\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [customDomain, setCustomDomain] = useState({});\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n const debouncedSearchTerm = useDebounce(searchTerm, 500);\n\n const { data: data, isLoading } = useFetchCustomDomains({\n url,\n params: { searchTerm: debouncedSearchTerm },\n });\n\n const isFiltersVisible =\n isNotEmpty(data?.customDomains) || isPresent(searchTerm);\n\n const helpLink =\n path([\"titleHelpPopoverProps\", \"helpLinkProps\", \"href\"], headerProps) ||\n \"https://help.neetosite.com/p/a-95ad5b03\";\n\n const { mutate: deleteCustomDomain, isPending: isDeleting } =\n useDeleteCustomDomain(url, {\n onSettled: () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n },\n });\n\n const enableManagePane = customDomain => {\n setCustomDomain(customDomain);\n setIsPaneOpen(true);\n };\n\n const enableDeleteAlert = customDomain => {\n setCustomDomain(customDomain);\n setIsAlertOpen(true);\n };\n\n const disableManagePane = () => {\n setIsPaneOpen(false);\n setCustomDomain({});\n };\n\n const disableDeleteAlert = () => {\n setIsAlertOpen(false);\n setCustomDomain({});\n };\n\n return (\n <>\n <Container>\n <Header\n {...{\n headerProps,\n isFiltersVisible,\n searchTerm,\n setIsPaneOpen,\n setSearchTerm,\n }}\n />\n {isLoading && (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\n !!data?.customDomains?.length && (\n <Typography\n className=\"neeto-ui-gray-800 font-semibold\"\n component=\"h4\"\n >\n {t(\"neetoMolecules.customDomain.customDomainWithCount\", {\n count: data?.customDomains?.length,\n })}\n </Typography>\n )\n }\n />\n {isNotEmpty(data?.customDomains) ? (\n <TableWrapper>\n <Table\n fixedHeight\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full flex-grow items-center justify-center\">\n <NoData\n title={t(\"neetoMolecules.customDomain.notFound\")}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.learnMoreMessage\"\n components={{\n button: (\n <Button\n href={helpLink}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoMolecules.customDomain.addNew\"),\n onClick: () => setIsPaneOpen(true),\n }}\n />\n </div>\n )}\n </>\n )}\n </Container>\n <Manage\n {...{ customDomain, onCreate, setCustomDomain, url }}\n hasOne={false}\n isOpen={isPaneOpen}\n onClose={disableManagePane}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={disableDeleteAlert}\n onSubmit={() => deleteCustomDomain(customDomain?.id)}\n />\n </>\n );\n};\n\nCustomDomainDashboard.propTypes = {\n /**\n * The props to be passed to the `CustomDomain` page header. Accepts all props that can be passed to the `Header` component.\n */\n headerProps: PropTypes.object,\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Callback function will be invoked with new domain values after successfully creating the domain.\n */\n onCreate: PropTypes.func,\n};\n\nexport default CustomDomainDashboard;\n"],"names":["Header","_ref","setIsPaneOpen","searchTerm","setSearchTerm","_ref$headerProps","headerProps","isFiltersVisible","_useTranslation","useTranslation","t","_headerProps$titleHel","titleHelpPopoverProps","restHeaderProps","_objectWithoutProperties","_excluded","updatedTitleHelpPopoverProps","mergeRight","DEFAULT_HELP_POPOVER_PROPS","_jsx","NeetoHeader","_objectSpread","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","children","Tag","concat","style","_jsxs","_Fragment","hyphenize","renderColumnData","enableManagePane","enableDeleteAlert","SINGULAR","dataIndex","key","render","hostName","customDomain","MoreDropdown","dropdownButtonProps","id","dropdownProps","position","strategy","menuItems","CustomDomainDashboard","_data$customDomains","_data$customDomains2","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","helpLink","path","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","isPending","disableManagePane","disableDeleteAlert","Container","Spinner","SubHeader","leftActionBlock","length","Typography","component","count","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","NoData","helpText","Trans","i18nKey","components","button","href","target","primaryButtonProps","Manage","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit"],"mappings":"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"}