@bigbinary/neeto-molecules 1.15.66 → 1.15.67
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,12 +1,13 @@
|
|
|
1
1
|
import { _ as _slicedToArray } from './slicedToArray-b4278ecd.js';
|
|
2
2
|
import React__default, { useState } from 'react';
|
|
3
|
-
import { isNotEmpty } from '@bigbinary/neeto-cist';
|
|
3
|
+
import { isNotEmpty, isPresent } from '@bigbinary/neeto-cist';
|
|
4
4
|
import useDebounce from '@bigbinary/neeto-commons-frontend/react-utils/useDebounce';
|
|
5
5
|
import { Button, Typography, Table, NoData } from '@bigbinary/neetoui';
|
|
6
6
|
import { useTranslation, Trans } from 'react-i18next';
|
|
7
7
|
import Container from './Container.js';
|
|
8
8
|
import PageLoader from './PageLoader.js';
|
|
9
9
|
import SubHeader from './SubHeader.js';
|
|
10
|
+
import TableWrapper from './TableWrapper.js';
|
|
10
11
|
import { u as useFetchCustomDomains, a as useDeleteCustomDomain, r as renderColumnData, M as Manage, D as DeleteAlert } from './index-cab4f809.js';
|
|
11
12
|
import { _ as _extends } from './extends-093996c9.js';
|
|
12
13
|
import { PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
|
|
@@ -47,7 +48,8 @@ var Header = withT(function (_ref) {
|
|
|
47
48
|
setIsPaneOpen = _ref.setIsPaneOpen,
|
|
48
49
|
searchTerm = _ref.searchTerm,
|
|
49
50
|
setSearchTerm = _ref.setSearchTerm,
|
|
50
|
-
headerProps = _ref.headerProps
|
|
51
|
+
headerProps = _ref.headerProps,
|
|
52
|
+
isFiltersVisible = _ref.isFiltersVisible;
|
|
51
53
|
return /*#__PURE__*/React__default.createElement(Header$2, _extends({
|
|
52
54
|
"data-testid": "custom-domain-header",
|
|
53
55
|
title: t("neetoMolecules.customDomain.customDomain", PLURAL),
|
|
@@ -58,7 +60,7 @@ var Header = withT(function (_ref) {
|
|
|
58
60
|
return setIsPaneOpen(true);
|
|
59
61
|
}
|
|
60
62
|
}),
|
|
61
|
-
searchProps: {
|
|
63
|
+
searchProps: isFiltersVisible && {
|
|
62
64
|
value: searchTerm,
|
|
63
65
|
onChange: withEventTargetValue(setSearchTerm),
|
|
64
66
|
placeholder: t("neetoMolecules.customDomain.search"),
|
|
@@ -101,6 +103,7 @@ var CustomDomainDashboard = function CustomDomainDashboard(_ref) {
|
|
|
101
103
|
}),
|
|
102
104
|
data = _useFetchCustomDomain.data,
|
|
103
105
|
isLoading = _useFetchCustomDomain.isLoading;
|
|
106
|
+
var isFiltersVisible = isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) || isPresent(searchTerm);
|
|
104
107
|
var _useDeleteCustomDomai = useDeleteCustomDomain(url, {
|
|
105
108
|
onSettled: function onSettled() {
|
|
106
109
|
setIsAlertOpen(false);
|
|
@@ -127,26 +130,26 @@ var CustomDomainDashboard = function CustomDomainDashboard(_ref) {
|
|
|
127
130
|
};
|
|
128
131
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Container, null, /*#__PURE__*/React__default.createElement(Header$1, {
|
|
129
132
|
headerProps: headerProps,
|
|
133
|
+
isFiltersVisible: isFiltersVisible,
|
|
130
134
|
searchTerm: searchTerm,
|
|
131
135
|
setIsPaneOpen: setIsPaneOpen,
|
|
132
136
|
setSearchTerm: setSearchTerm
|
|
133
137
|
}), isLoading && /*#__PURE__*/React__default.createElement("div", {
|
|
134
138
|
className: "h-screen w-full"
|
|
135
|
-
}, /*#__PURE__*/React__default.createElement(PageLoader, null)), !isLoading && (
|
|
136
|
-
className: "w-full flex-grow"
|
|
137
|
-
}, /*#__PURE__*/React__default.createElement(SubHeader, {
|
|
139
|
+
}, /*#__PURE__*/React__default.createElement(PageLoader, null)), !isLoading && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(SubHeader, {
|
|
138
140
|
leftActionBlock: /*#__PURE__*/React__default.createElement(Typography, {
|
|
139
141
|
className: "neeto-ui-gray-800 font-semibold",
|
|
140
142
|
component: "h4"
|
|
141
143
|
}, t("neetoMolecules.customDomain.customDomainWithCount", {
|
|
142
144
|
count: data === null || data === void 0 ? void 0 : (_data$customDomains = data.customDomains) === null || _data$customDomains === void 0 ? void 0 : _data$customDomains.length
|
|
143
145
|
}))
|
|
144
|
-
}), /*#__PURE__*/React__default.createElement(
|
|
146
|
+
}), isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) ? /*#__PURE__*/React__default.createElement(TableWrapper, null, /*#__PURE__*/React__default.createElement(Table, {
|
|
147
|
+
fixedHeight: true,
|
|
145
148
|
allowRowClick: false,
|
|
146
149
|
rowData: data === null || data === void 0 ? void 0 : data.customDomains,
|
|
147
150
|
rowSelection: false,
|
|
148
151
|
columnData: renderColumnData(enableManagePane, enableDeleteAlert)
|
|
149
|
-
}))
|
|
152
|
+
})) : /*#__PURE__*/React__default.createElement("div", {
|
|
150
153
|
className: "flex h-full w-full flex-grow items-center justify-center"
|
|
151
154
|
}, /*#__PURE__*/React__default.createElement(NoData, {
|
|
152
155
|
title: t("neetoMolecules.customDomain.notFound"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomDomainDashboard.js","sources":["../src/components/CustomDomainDashboard/Header.jsx","../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({ t, setIsPaneOpen, searchTerm, setSearchTerm, headerProps }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\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 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 {...headerProps}\n />\n )\n);\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport ManageDomain 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 { mutate: deleteCustomDomain, isLoading: 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 {...{ headerProps, searchTerm, setIsPaneOpen, setSearchTerm }}\n />\n {isLoading && (\n <div className=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading &&\n (isNotEmpty(data?.customDomains) ? (\n <div className=\"w-full flex-grow\">\n <SubHeader\n leftActionBlock={\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 <div>\n <Table\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </div>\n </div>\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=\"https://help.neetosite.com/p/a-95ad5b03\"\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 </Container>\n <ManageDomain\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","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","React","createElement","NeetoHeader","_extends","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","CustomDomainDashboard","_data$customDomains","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","customDomain","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","_useTranslation","useTranslation","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","enableManagePane","enableDeleteAlert","disableManagePane","disableDeleteAlert","Fragment","Container","PageLoader","isNotEmpty","customDomains","SubHeader","leftActionBlock","Typography","component","count","length","Table","allowRowClick","rowData","rowSelection","columnData","renderColumnData","NoData","helpText","Trans","i18nKey","components","button","href","style","target","primaryButtonProps","ManageDomain","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit","id"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CustomDomainDashboard.js","sources":["../src/components/CustomDomainDashboard/Header.jsx","../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({\n t,\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps,\n isFiltersVisible,\n }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\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 {...headerProps}\n />\n )\n);\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport ManageDomain 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 { mutate: deleteCustomDomain, isLoading: 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=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\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 {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=\"https://help.neetosite.com/p/a-95ad5b03\"\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 <ManageDomain\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","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","isFiltersVisible","React","createElement","NeetoHeader","_extends","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","CustomDomainDashboard","_data$customDomains","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","customDomain","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","_useTranslation","useTranslation","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","enableManagePane","enableDeleteAlert","disableManagePane","disableDeleteAlert","Fragment","Container","PageLoader","SubHeader","leftActionBlock","Typography","component","count","length","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","renderColumnData","NoData","helpText","Trans","i18nKey","components","button","href","style","target","primaryButtonProps","ManageDomain","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit","id"],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ var reactI18next = require('react-i18next');
|
|
|
9
9
|
var Container = require('./Container.js');
|
|
10
10
|
var PageLoader = require('./PageLoader.js');
|
|
11
11
|
var SubHeader = require('./SubHeader.js');
|
|
12
|
+
var TableWrapper = require('./TableWrapper.js');
|
|
12
13
|
var index = require('./index-cdef39a4.js');
|
|
13
14
|
var _extends = require('./extends-1b35a664.js');
|
|
14
15
|
var constants = require('@bigbinary/neeto-commons-frontend/constants');
|
|
@@ -55,7 +56,8 @@ var Header = withT__default["default"](function (_ref) {
|
|
|
55
56
|
setIsPaneOpen = _ref.setIsPaneOpen,
|
|
56
57
|
searchTerm = _ref.searchTerm,
|
|
57
58
|
setSearchTerm = _ref.setSearchTerm,
|
|
58
|
-
headerProps = _ref.headerProps
|
|
59
|
+
headerProps = _ref.headerProps,
|
|
60
|
+
isFiltersVisible = _ref.isFiltersVisible;
|
|
59
61
|
return /*#__PURE__*/React__default["default"].createElement(Header$2, _extends._extends({
|
|
60
62
|
"data-testid": "custom-domain-header",
|
|
61
63
|
title: t("neetoMolecules.customDomain.customDomain", constants.PLURAL),
|
|
@@ -66,7 +68,7 @@ var Header = withT__default["default"](function (_ref) {
|
|
|
66
68
|
return setIsPaneOpen(true);
|
|
67
69
|
}
|
|
68
70
|
}),
|
|
69
|
-
searchProps: {
|
|
71
|
+
searchProps: isFiltersVisible && {
|
|
70
72
|
value: searchTerm,
|
|
71
73
|
onChange: general.withEventTargetValue(setSearchTerm),
|
|
72
74
|
placeholder: t("neetoMolecules.customDomain.search"),
|
|
@@ -109,6 +111,7 @@ var CustomDomainDashboard = function CustomDomainDashboard(_ref) {
|
|
|
109
111
|
}),
|
|
110
112
|
data = _useFetchCustomDomain.data,
|
|
111
113
|
isLoading = _useFetchCustomDomain.isLoading;
|
|
114
|
+
var isFiltersVisible = neetoCist.isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) || neetoCist.isPresent(searchTerm);
|
|
112
115
|
var _useDeleteCustomDomai = index.useDeleteCustomDomain(url, {
|
|
113
116
|
onSettled: function onSettled() {
|
|
114
117
|
setIsAlertOpen(false);
|
|
@@ -135,26 +138,26 @@ var CustomDomainDashboard = function CustomDomainDashboard(_ref) {
|
|
|
135
138
|
};
|
|
136
139
|
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Container, null, /*#__PURE__*/React__default["default"].createElement(Header$1, {
|
|
137
140
|
headerProps: headerProps,
|
|
141
|
+
isFiltersVisible: isFiltersVisible,
|
|
138
142
|
searchTerm: searchTerm,
|
|
139
143
|
setIsPaneOpen: setIsPaneOpen,
|
|
140
144
|
setSearchTerm: setSearchTerm
|
|
141
145
|
}), isLoading && /*#__PURE__*/React__default["default"].createElement("div", {
|
|
142
146
|
className: "h-screen w-full"
|
|
143
|
-
}, /*#__PURE__*/React__default["default"].createElement(PageLoader, null)), !isLoading && (
|
|
144
|
-
className: "w-full flex-grow"
|
|
145
|
-
}, /*#__PURE__*/React__default["default"].createElement(SubHeader, {
|
|
147
|
+
}, /*#__PURE__*/React__default["default"].createElement(PageLoader, null)), !isLoading && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(SubHeader, {
|
|
146
148
|
leftActionBlock: /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
147
149
|
className: "neeto-ui-gray-800 font-semibold",
|
|
148
150
|
component: "h4"
|
|
149
151
|
}, t("neetoMolecules.customDomain.customDomainWithCount", {
|
|
150
152
|
count: data === null || data === void 0 ? void 0 : (_data$customDomains = data.customDomains) === null || _data$customDomains === void 0 ? void 0 : _data$customDomains.length
|
|
151
153
|
}))
|
|
152
|
-
}), /*#__PURE__*/React__default["default"].createElement(
|
|
154
|
+
}), neetoCist.isNotEmpty(data === null || data === void 0 ? void 0 : data.customDomains) ? /*#__PURE__*/React__default["default"].createElement(TableWrapper, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Table, {
|
|
155
|
+
fixedHeight: true,
|
|
153
156
|
allowRowClick: false,
|
|
154
157
|
rowData: data === null || data === void 0 ? void 0 : data.customDomains,
|
|
155
158
|
rowSelection: false,
|
|
156
159
|
columnData: index.renderColumnData(enableManagePane, enableDeleteAlert)
|
|
157
|
-
}))
|
|
160
|
+
})) : /*#__PURE__*/React__default["default"].createElement("div", {
|
|
158
161
|
className: "flex h-full w-full flex-grow items-center justify-center"
|
|
159
162
|
}, /*#__PURE__*/React__default["default"].createElement(neetoui.NoData, {
|
|
160
163
|
title: t("neetoMolecules.customDomain.notFound"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CustomDomainDashboard.js","sources":["../../src/components/CustomDomainDashboard/Header.jsx","../../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({ t, setIsPaneOpen, searchTerm, setSearchTerm, headerProps }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\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 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 {...headerProps}\n />\n )\n);\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport ManageDomain 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 { mutate: deleteCustomDomain, isLoading: 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 {...{ headerProps, searchTerm, setIsPaneOpen, setSearchTerm }}\n />\n {isLoading && (\n <div className=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading &&\n (isNotEmpty(data?.customDomains) ? (\n <div className=\"w-full flex-grow\">\n <SubHeader\n leftActionBlock={\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 <div>\n <Table\n allowRowClick={false}\n rowData={data?.customDomains}\n rowSelection={false}\n columnData={renderColumnData(\n enableManagePane,\n enableDeleteAlert\n )}\n />\n </div>\n </div>\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=\"https://help.neetosite.com/p/a-95ad5b03\"\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 </Container>\n <ManageDomain\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","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","React","createElement","NeetoHeader","_extends","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","CustomDomainDashboard","_data$customDomains","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","customDomain","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","_useTranslation","useTranslation","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","enableManagePane","enableDeleteAlert","disableManagePane","disableDeleteAlert","Fragment","Container","PageLoader","isNotEmpty","customDomains","SubHeader","leftActionBlock","Typography","component","count","length","Table","allowRowClick","rowData","rowSelection","columnData","renderColumnData","NoData","helpText","Trans","i18nKey","components","button","href","style","target","primaryButtonProps","ManageDomain","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit","id"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CustomDomainDashboard.js","sources":["../../src/components/CustomDomainDashboard/Header.jsx","../../src/components/CustomDomainDashboard/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { PLURAL } from \"neetocommons/constants\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { withEventTargetValue } from \"neetocommons/utils/general\";\nimport { Button } from \"neetoui\";\n\nimport NeetoHeader from \"components/Header\";\n\nconst Header = withT(\n ({\n t,\n setIsPaneOpen,\n searchTerm,\n setSearchTerm,\n headerProps,\n isFiltersVisible,\n }) => (\n <NeetoHeader\n data-testid=\"custom-domain-header\"\n title={t(\"neetoMolecules.customDomain.customDomain\", PLURAL)}\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 {...headerProps}\n />\n )\n);\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport { isNotEmpty, isPresent } from \"neetocist\";\nimport useDebounce from \"neetocommons/react-utils/useDebounce\";\nimport { Table, Typography, NoData, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport PageLoader from \"components/PageLoader\";\nimport SubHeader from \"components/SubHeader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport Header from \"./Header\";\nimport ManageDomain 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 { mutate: deleteCustomDomain, isLoading: 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=\"h-screen w-full\">\n <PageLoader />\n </div>\n )}\n {!isLoading && (\n <>\n <SubHeader\n leftActionBlock={\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 {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=\"https://help.neetosite.com/p/a-95ad5b03\"\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 <ManageDomain\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","withT","_ref","t","setIsPaneOpen","searchTerm","setSearchTerm","headerProps","isFiltersVisible","React","createElement","NeetoHeader","_extends","title","PLURAL","actionBlock","Button","label","onClick","searchProps","value","onChange","withEventTargetValue","placeholder","className","memo","CustomDomainDashboard","_data$customDomains","url","onCreate","_useState","useState","_useState2","_slicedToArray","_useState3","_useState4","isPaneOpen","_useState5","_useState6","customDomain","setCustomDomain","_useState7","_useState8","isAlertOpen","setIsAlertOpen","_useTranslation","useTranslation","debouncedSearchTerm","useDebounce","_useFetchCustomDomain","useFetchCustomDomains","params","data","isLoading","isNotEmpty","customDomains","isPresent","_useDeleteCustomDomai","useDeleteCustomDomain","onSettled","deleteCustomDomain","mutate","isDeleting","enableManagePane","enableDeleteAlert","disableManagePane","disableDeleteAlert","Fragment","Container","PageLoader","SubHeader","leftActionBlock","Typography","component","count","length","TableWrapper","Table","fixedHeight","allowRowClick","rowData","rowSelection","columnData","renderColumnData","NoData","helpText","Trans","i18nKey","components","button","href","style","target","primaryButtonProps","ManageDomain","hasOne","isOpen","onClose","DeleteAlert","hostname","isSubmitting","onSubmit","id"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "1.15.
|
|
3
|
+
"version": "1.15.67",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|