@bigbinary/neeto-api-keys-frontend 2.2.7 → 2.3.0
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.
- package/README.md +1 -0
- package/app/javascript/src/translations/en.json +8 -3
- package/dist/ApiKeys.js +132 -54
- package/dist/ApiKeys.js.map +1 -1
- package/dist/cjs/ApiKeys.js +130 -52
- package/dist/cjs/ApiKeys.js.map +1 -1
- package/dist/cjs/index.js +3 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/index.js +3 -2
- package/dist/index.js.map +1 -1
- package/package.json +10 -10
package/dist/ApiKeys.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiKeys.js","sources":["../app/javascript/src/utils/pagination.js","../app/javascript/src/hooks/usePagination.js","../app/javascript/src/constants/index.js","../app/javascript/src/apis/api_keys.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useApiKeysApi.js","../app/javascript/src/components/ApiKeys/constants.js","../app/javascript/src/components/ApiKeys/utils.jsx","../app/javascript/src/components/ApiKeys/Form/DatePicker.jsx","../app/javascript/src/components/ApiKeys/Form/index.jsx","../app/javascript/src/components/ApiKeys/Panes/Create.jsx","../app/javascript/src/components/ApiKeys/Panes/Update.jsx","../app/javascript/src/components/ApiKeys/Table.jsx","../app/javascript/src/components/ApiKeys/index.jsx"],"sourcesContent":["import { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\n\nexport const getPageFromSearchParams = () => {\n const { page } = getQueryParams();\n\n return parseInt(page) || DEFAULT_PAGE_INDEX;\n};\n\nexport const setPageSearchParam = ({ page, history }) => {\n const searchParams = page !== DEFAULT_PAGE_INDEX && buildUrl(\"\", { page });\n\n history.push({ search: searchParams });\n};\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { isEmpty } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getPageFromSearchParams, setPageSearchParam } from \"utils/pagination\";\n\nconst usePagination = ({ searchTerm }) => {\n const [currentPage, setCurrentPage] = useState(getPageFromSearchParams);\n\n const history = useHistory();\n\n useEffect(() => {\n handlePageChange(getPageFromSearchParams());\n }, []);\n\n useEffect(() => {\n if (isNotEmpty(searchTerm) && currentPage !== DEFAULT_PAGE_INDEX) {\n handlePageChange(DEFAULT_PAGE_INDEX);\n }\n }, [searchTerm]);\n\n const handlePageChange = page => {\n setCurrentPage(page);\n setPageSearchParam({ page, history });\n };\n\n const onFetchSuccess = ({ totalCount, apiKeys }) => {\n if (totalCount !== 0 && isEmpty(apiKeys)) {\n handlePageChange(DEFAULT_PAGE_INDEX);\n }\n };\n\n return { currentPage, handlePageChange, onFetchSuccess };\n};\n\nexport default usePagination;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const API_KEYS_BASE_URL = \"/neeto_api_keys_engine/api/v1/api_keys\";\nexport const HELP_DOC_URL = `https://help.${globalProps.appName.toLowerCase()}.com/articles/api-keys`;\n","import axios from \"axios\";\n\nimport { API_KEYS_BASE_URL } from \"src/constants\";\n\nconst fetch = params => axios.get(API_KEYS_BASE_URL, { params });\n\nconst create = payload => axios.post(API_KEYS_BASE_URL, { apiKey: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${API_KEYS_BASE_URL}/${id}`, { apiKey: payload });\n\nconst destroy = id => axios.delete(`${API_KEYS_BASE_URL}/${id}`);\n\nconst apiKeysApi = { fetch, create, update, destroy };\n\nexport default apiKeysApi;\n","export const QUERY_KEYS = { API_KEYS: \"api-keys\" };\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport apiKeysApi from \"apis/api_keys\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useFetchApiKeys = ({ params, options = {} }) =>\n useQuery({\n queryKey: [QUERY_KEYS.API_KEYS, params],\n queryFn: () => apiKeysApi.fetch(params),\n ...options,\n });\n\nexport const useCreateApiKey = onSuccess =>\n useMutationWithInvalidation(apiKeysApi.create, {\n keysToInvalidate: [[QUERY_KEYS.API_KEYS]],\n onSuccess,\n });\n\nexport const useUpdateApiKey = onSuccess =>\n useMutationWithInvalidation(\n ({ id, payload }) => apiKeysApi.update({ id, payload }),\n { keysToInvalidate: [[QUERY_KEYS.API_KEYS]], onSuccess }\n );\n\nexport const useDeleteApiKey = onSuccess =>\n useMutationWithInvalidation(apiKeysApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.API_KEYS]],\n onSuccess,\n });\n","import dayjs from \"dayjs\";\nimport { t } from \"i18next\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport * as yup from \"yup\";\n\nexport const INITIAL_VALUES = { expiresAt: null, label: \"\", hasNoExpiry: true };\n\nexport const NEXT_DAY = dayjs().add(1, \"day\").startOf(\"day\");\n\nexport const VALIDATION_SCHEMA = yup.object({\n expiresAt: yup.date().when(\"hasNoExpiry\", (hasNoExpiry, field) =>\n hasNoExpiry\n ? field.nullable()\n : field\n .nullable()\n .required(\n t(\"neetoApiKeys.validations.required\", {\n entity: t(\"neetoApiKeys.fields.expiryDate\"),\n })\n )\n .min(\n NEXT_DAY,\n t(\"neetoApiKeys.validations.expiry\", {\n date: dateFormat.date(NEXT_DAY),\n })\n )\n ),\n label: yup.string().required(\n t(\"neetoApiKeys.validations.required\", {\n entity: t(\"neetoApiKeys.fields.label\"),\n })\n ),\n});\n\nexport const MENU_ITEMS = { EDIT: \"edit\", DELETE: \"delete\" };\n","import dayjs from \"dayjs\";\nimport { t } from \"i18next\";\nimport { isPresent } from \"neetocist\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tag, Typography } from \"neetoui\";\n\nimport { MENU_ITEMS } from \"./constants\";\n\nconst isInPast = date => dayjs(date).isBefore(dayjs());\nconst partlyHideToken = key => key.slice(-4).padStart(20, \"*\");\nconst formatExpiry = date =>\n dayjs(date).diff(dayjs(), \"day\") <= 2\n ? dateFormat.fromNow(date)\n : dateFormat.date(date);\n\nconst getMenuItems = ({ onEdit, onDelete }) => [\n {\n key: MENU_ITEMS.EDIT,\n label: t(\"neetoApiKeys.buttons.edit\"),\n onClick: onEdit,\n },\n {\n key: MENU_ITEMS.DELETE,\n label: t(\"neetoApiKeys.buttons.delete\"),\n onClick: onDelete,\n },\n];\n\nexport const buildColumnData = ({ handleDelete, handleEdit }) => [\n {\n title: t(\"neetoApiKeys.table.headers.label\"),\n key: \"label\",\n dataIndex: \"label\",\n width: 400,\n render: (label, apiKey) => (\n <div className=\"flex items-center justify-between space-x-3\">\n <Typography style=\"body2\">{label}</Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={getMenuItems({\n onEdit: () => handleEdit(apiKey),\n onDelete: () => handleDelete(apiKey),\n })}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.token\"),\n key: \"token\",\n dataIndex: \"token\",\n width: 400,\n render: token => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">{partlyHideToken(token)}</Typography>\n <CopyToClipboardButton style=\"text\" value={token} />\n </div>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.status\"),\n key: \"status\",\n width: 144,\n render: (_, { expiresAt }) =>\n isPresent(expiresAt) && isInPast(expiresAt) ? (\n <Tag style=\"warning\">{t(\"neetoApiKeys.tags.expired\")}</Tag>\n ) : (\n <Tag style=\"success\">{t(\"neetoApiKeys.tags.active\")}</Tag>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.expiresAt\"),\n key: \"expiresAt\",\n dataIndex: \"expiresAt\",\n width: 200,\n render: expiresAt =>\n isPresent(expiresAt) ? (\n formatExpiry(expiresAt)\n ) : (\n <Typography style=\"body2\">{t(\"neetoApiKeys.common.never\")}</Typography>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.createdAt\"),\n key: \"createdAt\",\n dataIndex: \"createdAt\",\n width: 200,\n render: createdAt =>\n isPresent(createdAt) ? (\n dateFormat.dateTime(createdAt)\n ) : (\n <Typography style=\"body2\">{t(\"neetoApiKeys.common.never\")}</Typography>\n ),\n },\n];\n\nexport const getStartOfTime = (time, unit) => dayjs(time).startOf(unit);\n","import { Field } from \"formik\";\nimport { DatePicker as NeetoUIDatePicker } from \"neetoui\";\nimport { prop } from \"ramda\";\n\nimport { getStartOfTime } from \"../utils\";\n\nconst DatePicker = ({\n defaultValue,\n disabledDate,\n label,\n placeholder,\n name,\n disabled = false,\n}) => (\n <Field {...{ name }}>\n {({ field, meta, form: { setFieldValue } }) => (\n <NeetoUIDatePicker\n {...{ defaultValue, disabled, disabledDate, label, placeholder }}\n allowClear={false}\n className=\"w-full\"\n error={meta.touched && meta.error}\n format={globalProps?.user?.dateFormat}\n getPopupContainer={prop(\"parentNode\")}\n {...field}\n onChange={date => {\n setFieldValue(field.name, getStartOfTime(date, \"day\"));\n }}\n />\n )}\n </Field>\n);\n\nexport default DatePicker;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Pane } from \"neetoui\";\nimport {\n Form as NeetoUIForm,\n Input,\n Checkbox,\n ActionBlock,\n} from \"neetoui/formik\";\n\nimport DatePicker from \"./DatePicker\";\n\nimport { VALIDATION_SCHEMA, INITIAL_VALUES, NEXT_DAY } from \"../constants\";\n\nconst Form = withT(\n ({\n t,\n initialValues = INITIAL_VALUES,\n isSubmitting,\n onClose,\n onSubmit,\n initialFocusRef,\n }) => (\n <NeetoUIForm\n formikProps={{\n validationSchema: VALIDATION_SCHEMA,\n initialValues,\n onSubmit,\n }}\n >\n {({ setFieldValue, values: { hasNoExpiry, expiresAt } = {} }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Input\n autoFocus\n label={t(\"neetoApiKeys.fields.label\")}\n name=\"label\"\n placeholder={t(\"neetoApiKeys.placeholders.label\")}\n ref={initialFocusRef}\n />\n <div className=\"space-y-2\">\n {!hasNoExpiry && (\n <DatePicker\n defaultValue={expiresAt}\n disabledDate={date => date < NEXT_DAY}\n label={t(\"neetoApiKeys.fields.expiryDate\")}\n name=\"expiresAt\"\n placeholder={t(\n \"neetoApiKeys.placeholders.selectExpiryDate\"\n )}\n />\n )}\n <Checkbox\n checked={hasNoExpiry}\n label={t(\"neetoApiKeys.fields.neverExpire\")}\n name=\"hasNoExpiry\"\n onChange={() => {\n setFieldValue(\"expiresAt\", null);\n setFieldValue(\"hasNoExpiry\", !hasNoExpiry);\n }}\n />\n </div>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n />\n </Pane.Footer>\n </>\n )}\n </NeetoUIForm>\n )\n);\n\nexport default Form;\n","import { useRef } from \"react\";\n\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateApiKey } from \"hooks/reactQuery/useApiKeysApi\";\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport Form from \"../Form\";\n\nconst Create = ({ onClose, isOpen }) => {\n const initialFocusRef = useRef(null);\n const { mutate: createApiKey, isPending: isCreating } =\n useCreateApiKey(onClose);\n const { t } = useTranslation();\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoApiKeys.headers.createApiKey\")}\n <HelpPopover\n className=\"ml-2\"\n description={t(\"neetoApiKeys.tooltips.apiKeysDescription\")}\n helpLinkProps={{ href: HELP_DOC_URL }}\n title={t(\"neetoApiKeys.tooltips.apiKeys\")}\n />\n </Typography>\n </Pane.Header>\n <Form\n {...{ initialFocusRef, onClose }}\n isSubmitting={isCreating}\n onSubmit={createApiKey}\n />\n </Pane>\n );\n};\n\nexport default Create;\n","import { useRef } from \"react\";\n\nimport { isNotEmpty, isNotPresent } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateApiKey } from \"hooks/reactQuery/useApiKeysApi\";\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport Form from \"../Form\";\n\nconst Update = ({ onClose, apiKey }) => {\n const initialFocusRef = useRef(null);\n const { mutate: updateApiKey, isPending: isUpdating } =\n useUpdateApiKey(onClose);\n const { t } = useTranslation();\n\n const handleUpdate = values => {\n updateApiKey({ id: apiKey.id, payload: values });\n };\n\n const initialValues = {\n ...apiKey,\n hasNoExpiry: isNotPresent(apiKey.expiresAt),\n };\n\n return (\n <Pane {...{ initialFocusRef, onClose }} isOpen={isNotEmpty(apiKey)}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoApiKeys.headers.updateApiKey\")}\n <HelpPopover\n className=\"ml-2\"\n description={t(\"neetoApiKeys.tooltips.apiKeysDescription\")}\n helpLinkProps={{ href: HELP_DOC_URL }}\n title={t(\"neetoApiKeys.tooltips.apiKeys\")}\n />\n </Typography>\n </Pane.Header>\n <Form\n {...{ initialFocusRef, initialValues, onClose }}\n isSubmitting={isUpdating}\n onSubmit={handleUpdate}\n />\n </Pane>\n );\n};\n\nexport default Update;\n","import { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport { buildColumnData } from \"./utils\";\n\nconst Table = ({\n handleDelete,\n handleEdit,\n currentPage,\n setIsCreatePaneOpen,\n noDataProps = {},\n data,\n isLoading,\n isFetching,\n handlePageChange,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) return <PageLoader />;\n\n if (isEmpty(data?.apiKeys)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n className=\"w-full\"\n title={t(\"neetoApiKeys.noData.title\")}\n helpText={\n <Trans\n i18nKey=\"neetoApiKeys.noData.helpText\"\n components={{\n helpLink: (\n <Button href={HELP_DOC_URL} style=\"link\" target=\"_blank\" />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoApiKeys.buttons.addApiKey\"),\n onClick: () => setIsCreatePaneOpen(true),\n }}\n {...noDataProps}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={data?.totalCount > DEFAULT_PAGE_SIZE}>\n <NeetoUITable\n {...{ handlePageChange }}\n fixedHeight\n columnData={buildColumnData({ handleDelete, handleEdit })}\n currentPageNumber={currentPage}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n loading={isFetching}\n rowData={data?.apiKeys}\n totalCount={data?.totalCount}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import { useEffect, useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport {\n useDebounce,\n useQueryParams,\n withTitle,\n} from \"neetocommons/react-utils\";\nimport Header from \"neetomolecules/Header\";\nimport { Alert, Button } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport usePagination from \"hooks/usePagination\";\nimport { HELP_DOC_URL } from \"src/constants\";\nimport {\n useDeleteApiKey,\n useFetchApiKeys,\n} from \"src/hooks/reactQuery/useApiKeysApi\";\n\nimport Create from \"./Panes/Create\";\nimport Update from \"./Panes/Update\";\nimport Table from \"./Table\";\n\nconst ApiKeys = ({ noDataProps, headerProps, titleHelpPopoverProps }) => {\n const [apiKeyToBeDeleted, setApiKeyToBeDeleted] = useState({});\n const [apiKeyToBeEdited, setApiKeyToBeEdited] = useState({});\n const [isCreatePaneOpen, setIsCreatePaneOpen] = useState(false);\n\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n\n const { mutate: deleteApiKey, isPending: isDeleting } = useDeleteApiKey(() =>\n setApiKeyToBeDeleted({})\n );\n\n const debouncedSearchTerm = useDebounce(searchTerm);\n\n const { currentPage, handlePageChange, onFetchSuccess } = usePagination({\n searchTerm: debouncedSearchTerm,\n });\n\n const queryParams = {\n searchTerm: debouncedSearchTerm,\n page: currentPage,\n pageSize: DEFAULT_PAGE_SIZE,\n };\n\n const { data, isLoading, isFetching } = useFetchApiKeys({\n params: queryParams,\n });\n\n const showFilters = isPresent(debouncedSearchTerm) || data?.totalCount > 0;\n\n useEffect(() => {\n if (!data) return;\n onFetchSuccess(data);\n }, [data]);\n\n return (\n <div className=\"flex h-full w-full flex-col\">\n <Header\n title={t(\"neetoApiKeys.common.apiKey\", PLURAL)}\n actionBlock={\n <Button\n label={t(\"neetoApiKeys.buttons.addApiKey\")}\n onClick={() => setIsCreatePaneOpen(true)}\n />\n }\n searchProps={\n showFilters && {\n placeholder: t(\"neetoApiKeys.placeholders.search\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoApiKeys.tooltips.apiKeysDescription\"),\n helpLinkProps: { href: HELP_DOC_URL },\n title: t(\"neetoApiKeys.tooltips.apiKeys\"),\n ...titleHelpPopoverProps,\n }}\n {...headerProps}\n />\n <Table\n {...{\n currentPage,\n data,\n handlePageChange,\n isFetching,\n isLoading,\n noDataProps,\n setIsCreatePaneOpen,\n }}\n handleDelete={setApiKeyToBeDeleted}\n handleEdit={setApiKeyToBeEdited}\n />\n <Alert\n isOpen={isNotEmpty(apiKeyToBeDeleted)}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApiKeys.buttons.delete\")}\n title={t(\"neetoApiKeys.alert.titles.deleteApiKey\")}\n message={\n <Trans\n components={{ bold: <strong /> }}\n i18nKey=\"neetoApiKeys.alert.descriptions.deleteApiKey\"\n values={{ name: apiKeyToBeDeleted.label }}\n />\n }\n onClose={() => setApiKeyToBeDeleted({})}\n onSubmit={() => deleteApiKey(apiKeyToBeDeleted.id)}\n />\n <Create\n isOpen={isCreatePaneOpen}\n onClose={() => setIsCreatePaneOpen(false)}\n />\n <Update\n apiKey={apiKeyToBeEdited}\n onClose={() => setApiKeyToBeEdited({})}\n />\n </div>\n );\n};\nexport default withTitle(ApiKeys, t(\"neetoApiKeys.common.apiKey\", PLURAL));\n"],"names":["getPageFromSearchParams","_getQueryParams","getQueryParams","page","parseInt","DEFAULT_PAGE_INDEX","setPageSearchParam","_ref","history","searchParams","buildUrl","push","search","usePagination","searchTerm","_useState","useState","_useState2","_slicedToArray","currentPage","setCurrentPage","useHistory","useEffect","handlePageChange","isNotEmpty","onFetchSuccess","_ref2","totalCount","apiKeys","isEmpty","API_KEYS_BASE_URL","HELP_DOC_URL","concat","globalProps","appName","toLowerCase","fetch","params","axios","get","create","payload","post","apiKey","update","id","put","destroy","apiKeysApi","QUERY_KEYS","API_KEYS","useFetchApiKeys","_ref$options","options","useQuery","_objectSpread","queryKey","queryFn","useCreateApiKey","onSuccess","useMutationWithInvalidation","keysToInvalidate","useUpdateApiKey","useDeleteApiKey","INITIAL_VALUES","expiresAt","label","hasNoExpiry","NEXT_DAY","dayjs","add","startOf","VALIDATION_SCHEMA","yup","object","date","when","field","nullable","required","t","entity","min","dateFormat","string","MENU_ITEMS","EDIT","DELETE","isInPast","isBefore","partlyHideToken","key","slice","padStart","formatExpiry","diff","fromNow","getMenuItems","onEdit","onDelete","onClick","buildColumnData","handleDelete","handleEdit","title","dataIndex","width","render","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownProps","strategy","menuItems","token","CopyToClipboardButton","value","_","_ref3","isPresent","Tag","createdAt","dateTime","getStartOfTime","time","unit","DatePicker","defaultValue","disabledDate","placeholder","name","_ref$disabled","disabled","Field","_globalProps","meta","setFieldValue","form","NeetoUIDatePicker","allowClear","error","touched","format","user","getPopupContainer","prop","onChange","Form","withT","_ref$initialValues","initialValues","isSubmitting","onClose","onSubmit","initialFocusRef","NeetoUIForm","formikProps","validationSchema","_ref2$values","values","_ref2$values2","_Fragment","Pane","Body","Input","autoFocus","ref","Checkbox","checked","Footer","ActionBlock","cancelButtonProps","Create","isOpen","useRef","_useCreateApiKey","createApiKey","mutate","isCreating","isPending","_useTranslation","useTranslation","Header","HelpPopover","description","helpLinkProps","href","Update","_useUpdateApiKey","updateApiKey","isUpdating","handleUpdate","isNotPresent","Table","setIsCreatePaneOpen","_ref$noDataProps","noDataProps","data","isLoading","isFetching","PageLoader","NoData","helpText","Trans","i18nKey","components","helpLink","Button","target","primaryButtonProps","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","NeetoUITable","fixedHeight","columnData","currentPageNumber","defaultPageSize","loading","rowData","ApiKeys","headerProps","titleHelpPopoverProps","apiKeyToBeDeleted","setApiKeyToBeDeleted","_useState3","_useState4","apiKeyToBeEdited","setApiKeyToBeEdited","_useState5","_useState6","isCreatePaneOpen","_useQueryParams","useQueryParams","_useQueryParams$searc","_useDeleteApiKey","deleteApiKey","isDeleting","debouncedSearchTerm","useDebounce","_usePagination","queryParams","pageSize","_useFetchApiKeys","showFilters","PLURAL","actionBlock","searchProps","Alert","submitButtonLabel","message","bold","withTitle"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApiKeys.js","sources":["../app/javascript/src/utils/pagination.js","../app/javascript/src/hooks/usePagination.js","../app/javascript/src/constants/index.js","../app/javascript/src/apis/api_keys.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/useApiKeysApi.js","../app/javascript/src/components/ApiKeys/constants.js","../app/javascript/src/components/ApiKeys/utils.jsx","../app/javascript/src/components/ApiKeys/Form/DatePicker.jsx","../app/javascript/src/components/ApiKeys/Form/index.jsx","../app/javascript/src/components/ApiKeys/Panes/Create.jsx","../app/javascript/src/components/ApiKeys/Panes/Update.jsx","../app/javascript/src/components/ApiKeys/Table.jsx","../app/javascript/src/components/ApiKeys/index.jsx"],"sourcesContent":["import { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { buildUrl, getQueryParams } from \"neetocommons/utils\";\n\nexport const getPageFromSearchParams = () => {\n const { page } = getQueryParams();\n\n return parseInt(page) || DEFAULT_PAGE_INDEX;\n};\n\nexport const setPageSearchParam = ({ page, history }) => {\n const searchParams = page !== DEFAULT_PAGE_INDEX && buildUrl(\"\", { page });\n\n history.push({ search: searchParams });\n};\n","import { useEffect, useState } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { isEmpty } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getPageFromSearchParams, setPageSearchParam } from \"utils/pagination\";\n\nconst usePagination = ({ searchTerm }) => {\n const [currentPage, setCurrentPage] = useState(getPageFromSearchParams);\n\n const history = useHistory();\n\n useEffect(() => {\n handlePageChange(getPageFromSearchParams());\n }, []);\n\n useEffect(() => {\n if (isNotEmpty(searchTerm) && currentPage !== DEFAULT_PAGE_INDEX) {\n handlePageChange(DEFAULT_PAGE_INDEX);\n }\n }, [searchTerm]);\n\n const handlePageChange = page => {\n setCurrentPage(page);\n setPageSearchParam({ page, history });\n };\n\n const onFetchSuccess = ({ totalCount, apiKeys }) => {\n if (totalCount !== 0 && isEmpty(apiKeys)) {\n handlePageChange(DEFAULT_PAGE_INDEX);\n }\n };\n\n return { currentPage, handlePageChange, onFetchSuccess };\n};\n\nexport default usePagination;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const API_KEYS_BASE_URL = \"/neeto_api_keys_engine/api/v1/api_keys\";\nexport const HELP_DOC_URL = `https://help.${globalProps.appName.toLowerCase()}.com/articles/api-keys`;\n","import axios from \"axios\";\n\nimport { API_KEYS_BASE_URL } from \"src/constants\";\n\nconst fetch = params => axios.get(API_KEYS_BASE_URL, { params });\n\nconst create = payload => axios.post(API_KEYS_BASE_URL, { apiKey: payload });\n\nconst update = ({ id, payload }) =>\n axios.put(`${API_KEYS_BASE_URL}/${id}`, { apiKey: payload });\n\nconst destroy = ({ id, params }) =>\n axios.delete(`${API_KEYS_BASE_URL}/${id}`, { params });\n\nconst apiKeysApi = { fetch, create, update, destroy };\n\nexport default apiKeysApi;\n","export const QUERY_KEYS = { API_KEYS: \"api-keys\" };\n","import { useQuery } from \"@tanstack/react-query\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport apiKeysApi from \"apis/api_keys\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useFetchApiKeys = ({ params, options = {} }) =>\n useQuery({\n queryKey: [QUERY_KEYS.API_KEYS, params],\n queryFn: () => apiKeysApi.fetch(params),\n ...options,\n });\n\nexport const useCreateApiKey = onSuccess =>\n useMutationWithInvalidation(apiKeysApi.create, {\n keysToInvalidate: [[QUERY_KEYS.API_KEYS]],\n onSuccess,\n });\n\nexport const useUpdateApiKey = onSuccess =>\n useMutationWithInvalidation(\n ({ id, payload }) => apiKeysApi.update({ id, payload }),\n { keysToInvalidate: [[QUERY_KEYS.API_KEYS]], onSuccess }\n );\n\nexport const useDeleteApiKey = onSuccess =>\n useMutationWithInvalidation(apiKeysApi.destroy, {\n keysToInvalidate: [[QUERY_KEYS.API_KEYS]],\n onSuccess,\n });\n","import dayjs from \"dayjs\";\nimport { t } from \"i18next\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport * as yup from \"yup\";\n\nexport const API_KEY_TYPES = { GENERAL: \"general\", ZAPIER: \"zapier\" };\n\nexport const INITIAL_VALUES = {\n expiresAt: null,\n label: \"\",\n hasNoExpiry: true,\n type: API_KEY_TYPES.GENERAL,\n};\n\nexport const NEXT_DAY = dayjs().add(1, \"day\").startOf(\"day\");\n\nexport const VALIDATION_SCHEMA = yup.object({\n expiresAt: yup.date().when(\"hasNoExpiry\", (hasNoExpiry, field) =>\n hasNoExpiry\n ? field.nullable()\n : field\n .nullable()\n .required(\n t(\"neetoApiKeys.validations.required\", {\n entity: t(\"neetoApiKeys.fields.expiryDate\"),\n })\n )\n .min(\n NEXT_DAY,\n t(\"neetoApiKeys.validations.expiry\", {\n date: dateFormat.date(NEXT_DAY),\n })\n )\n ),\n label: yup.string().required(\n t(\"neetoApiKeys.validations.required\", {\n entity: t(\"neetoApiKeys.fields.label\"),\n })\n ),\n});\n\nexport const MENU_ITEMS = { EDIT: \"edit\", DELETE: \"delete\" };\n","import { t } from \"i18next\";\nimport { isPresent, humanize } from \"neetocist\";\nimport { dayjs, dateFormat } from \"neetocommons/utils\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tag, Typography } from \"neetoui\";\n\nimport { MENU_ITEMS, API_KEY_TYPES } from \"./constants\";\n\nconst isInPast = date => dayjs(date).isBefore(dayjs());\nconst partlyHideToken = key => key.slice(-4).padStart(20, \"*\");\nconst formatExpiry = date =>\n dayjs(date).diff(dayjs(), \"day\") <= 2\n ? dateFormat.fromNow(date)\n : dateFormat.date(date);\n\nconst getMenuItems = ({ onEdit, onDelete, isEditVisible }) => [\n {\n key: MENU_ITEMS.EDIT,\n label: t(\"neetoApiKeys.buttons.edit\"),\n isVisible: isEditVisible,\n \"data-cy\": \"api-key-edit-button\",\n onClick: onEdit,\n },\n {\n key: MENU_ITEMS.DELETE,\n label: t(\"neetoApiKeys.buttons.delete\"),\n \"data-cy\": \"api-key-delete-button\",\n onClick: onDelete,\n },\n];\n\nexport const buildColumnData = ({\n handleDelete,\n handleEdit,\n isZapierAvailable,\n}) => {\n const columns = [\n {\n title: t(\"neetoApiKeys.table.headers.label\"),\n key: \"label\",\n dataIndex: \"label\",\n width: 200,\n render: (label, apiKey) => (\n <div className=\"flex items-center justify-between space-x-3\">\n <Typography data-cy=\"api-keys-label-field\" style=\"body2\">\n {label}\n </Typography>\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={getMenuItems({\n onEdit: () => handleEdit(apiKey),\n onDelete: () => handleDelete(apiKey),\n isEditVisible: apiKey.type === API_KEY_TYPES.GENERAL,\n })}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.token\"),\n key: \"token\",\n dataIndex: \"token\",\n width: 300,\n render: token => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography data-cy=\"api-keys-token-field\" style=\"body2\">\n {partlyHideToken(token)}\n </Typography>\n <CopyToClipboardButton style=\"text\" value={token} />\n </div>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.status\"),\n key: \"status\",\n width: 144,\n render: (_, { expiresAt }) =>\n isPresent(expiresAt) && isInPast(expiresAt) ? (\n <Tag style=\"warning\">{t(\"neetoApiKeys.tags.expired\")}</Tag>\n ) : (\n <Tag style=\"success\">{t(\"neetoApiKeys.tags.active\")}</Tag>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.expiresAt\"),\n key: \"expiresAt\",\n dataIndex: \"expiresAt\",\n width: 150,\n render: expiresAt => (\n <span data-cy=\"api-keys-expires-at-field\">\n {isPresent(expiresAt) ? (\n formatExpiry(expiresAt)\n ) : (\n <Typography style=\"body2\">\n {t(\"neetoApiKeys.common.never\")}\n </Typography>\n )}\n </span>\n ),\n },\n {\n title: t(\"neetoApiKeys.table.headers.createdAt\"),\n key: \"createdAt\",\n dataIndex: \"createdAt\",\n width: 200,\n render: createdAt => (\n <span data-cy=\"api-keys-created-at-field\">\n {isPresent(createdAt) ? (\n dateFormat.dateTime(createdAt)\n ) : (\n <Typography style=\"body2\">\n {t(\"neetoApiKeys.common.never\")}\n </Typography>\n )}\n </span>\n ),\n },\n ];\n\n if (isZapierAvailable) {\n columns.splice(2, 0, {\n title: t(\"neetoApiKeys.table.headers.type\"),\n key: \"type\",\n dataIndex: \"type\",\n width: 144,\n render: type => <Typography style=\"body2\">{humanize(type)}</Typography>,\n });\n }\n\n return columns;\n};\n\nexport const getStartOfTime = (time, unit) => dayjs(time).startOf(unit);\n","import { Field } from \"formik\";\nimport { DatePicker as NeetoUIDatePicker } from \"neetoui\";\nimport { prop } from \"ramda\";\n\nimport { getStartOfTime } from \"../utils\";\n\nconst DatePicker = ({\n defaultValue,\n disabledDate,\n label,\n placeholder,\n name,\n disabled = false,\n}) => (\n <Field {...{ name }}>\n {({ field, meta, form: { setFieldValue } }) => (\n <NeetoUIDatePicker\n {...{ defaultValue, disabled, disabledDate, label, placeholder }}\n allowClear={false}\n className=\"w-full\"\n error={meta.touched && meta.error}\n format={globalProps?.user?.dateFormat}\n getPopupContainer={prop(\"parentNode\")}\n {...field}\n onChange={date => {\n setFieldValue(field.name, getStartOfTime(date, \"day\"));\n }}\n />\n )}\n </Field>\n);\n\nexport default DatePicker;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Pane } from \"neetoui\";\nimport {\n Form as NeetoUIForm,\n Input,\n Radio,\n Checkbox,\n ActionBlock,\n} from \"neetoui/formik\";\n\nimport DatePicker from \"./DatePicker\";\n\nimport {\n VALIDATION_SCHEMA,\n INITIAL_VALUES,\n NEXT_DAY,\n API_KEY_TYPES,\n} from \"../constants\";\n\nconst Form = withT(\n ({\n t,\n initialValues = INITIAL_VALUES,\n isSubmitting,\n onClose,\n onSubmit,\n initialFocusRef,\n isEdit = false,\n isZapierAvailable = false,\n }) => (\n <NeetoUIForm\n formikProps={{\n validationSchema: VALIDATION_SCHEMA,\n initialValues,\n onSubmit,\n }}\n >\n {({ setFieldValue, values: { hasNoExpiry, expiresAt, type } = {} }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Input\n autoFocus\n label={t(\"neetoApiKeys.fields.label\")}\n name=\"label\"\n placeholder={t(\"neetoApiKeys.placeholders.label\")}\n ref={initialFocusRef}\n />\n <div className=\"space-y-4\">\n {!isEdit && isZapierAvailable && (\n <Radio label={t(\"neetoApiKeys.common.type\")} name=\"type\">\n <Radio.Item\n label={t(\"neetoApiKeys.common.general\")}\n name=\"type\"\n value={API_KEY_TYPES.GENERAL}\n />\n <Radio.Item\n label={t(\"neetoApiKeys.common.zapier\")}\n name=\"type\"\n value={API_KEY_TYPES.ZAPIER}\n />\n </Radio>\n )}\n {type === API_KEY_TYPES.GENERAL && (\n <>\n {!hasNoExpiry && (\n <DatePicker\n defaultValue={expiresAt}\n disabledDate={date => date < NEXT_DAY}\n label={t(\"neetoApiKeys.fields.expiryDate\")}\n name=\"expiresAt\"\n placeholder={t(\n \"neetoApiKeys.placeholders.selectExpiryDate\"\n )}\n />\n )}\n <Checkbox\n checked={hasNoExpiry}\n label={t(\"neetoApiKeys.fields.neverExpire\")}\n name=\"hasNoExpiry\"\n onChange={() => {\n setFieldValue(\"expiresAt\", null);\n setFieldValue(\"hasNoExpiry\", !hasNoExpiry);\n }}\n />\n </>\n )}\n </div>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{ onClick: onClose }}\n />\n </Pane.Footer>\n </>\n )}\n </NeetoUIForm>\n )\n);\n\nexport default Form;\n","import { useRef } from \"react\";\n\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateApiKey } from \"hooks/reactQuery/useApiKeysApi\";\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport Form from \"../Form\";\n\nconst Create = ({ onClose, isOpen, isZapierAvailable = false }) => {\n const initialFocusRef = useRef(null);\n const { mutate: createApiKey, isPending: isCreating } =\n useCreateApiKey(onClose);\n const { t } = useTranslation();\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoApiKeys.headers.createApiKey\")}\n <HelpPopover\n className=\"ml-2\"\n description={t(\"neetoApiKeys.tooltips.apiKeysDescription\")}\n helpLinkProps={{ href: HELP_DOC_URL }}\n title={t(\"neetoApiKeys.tooltips.apiKeys\")}\n />\n </Typography>\n </Pane.Header>\n <Form\n {...{ initialFocusRef, isZapierAvailable, onClose }}\n isSubmitting={isCreating}\n onSubmit={createApiKey}\n />\n </Pane>\n );\n};\n\nexport default Create;\n","import { useRef } from \"react\";\n\nimport { isNotEmpty, isNotPresent } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateApiKey } from \"hooks/reactQuery/useApiKeysApi\";\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport Form from \"../Form\";\n\nconst Update = ({ onClose, apiKey }) => {\n const initialFocusRef = useRef(null);\n const { mutate: updateApiKey, isPending: isUpdating } =\n useUpdateApiKey(onClose);\n const { t } = useTranslation();\n\n const handleUpdate = values => {\n updateApiKey({ id: apiKey.id, payload: values });\n };\n\n const initialValues = {\n ...apiKey,\n hasNoExpiry: isNotPresent(apiKey.expiresAt),\n };\n\n return (\n <Pane {...{ initialFocusRef, onClose }} isOpen={isNotEmpty(apiKey)}>\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoApiKeys.headers.updateApiKey\")}\n <HelpPopover\n className=\"ml-2\"\n description={t(\"neetoApiKeys.tooltips.apiKeysDescription\")}\n helpLinkProps={{ href: HELP_DOC_URL }}\n title={t(\"neetoApiKeys.tooltips.apiKeys\")}\n />\n </Typography>\n </Pane.Header>\n <Form\n {...{ initialFocusRef, initialValues, onClose }}\n isEdit\n isSubmitting={isUpdating}\n onSubmit={handleUpdate}\n />\n </Pane>\n );\n};\n\nexport default Update;\n","import { DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Button, Table as NeetoUITable, NoData } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { HELP_DOC_URL } from \"src/constants\";\n\nimport { buildColumnData } from \"./utils\";\n\nconst Table = ({\n handleDelete,\n handleEdit,\n currentPage,\n setIsCreatePaneOpen,\n noDataProps = {},\n data,\n isLoading,\n isFetching,\n handlePageChange,\n isZapierAvailable,\n}) => {\n const { t } = useTranslation();\n\n if (isLoading) return <PageLoader />;\n\n if (isEmpty(data?.apiKeys)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData\n className=\"w-full\"\n title={t(\"neetoApiKeys.noData.title\")}\n helpText={\n <Trans\n i18nKey=\"neetoApiKeys.noData.helpText\"\n components={{\n helpLink: (\n <Button href={HELP_DOC_URL} style=\"link\" target=\"_blank\" />\n ),\n }}\n />\n }\n primaryButtonProps={{\n label: t(\"neetoApiKeys.buttons.addApiKey\"),\n onClick: () => setIsCreatePaneOpen(true),\n }}\n {...noDataProps}\n />\n </div>\n );\n }\n\n return (\n <TableWrapper hasPagination={data?.totalCount > DEFAULT_PAGE_SIZE}>\n <NeetoUITable\n {...{ handlePageChange }}\n fixedHeight\n currentPageNumber={currentPage}\n defaultPageSize={DEFAULT_PAGE_SIZE}\n loading={isFetching}\n rowData={data?.apiKeys}\n totalCount={data?.totalCount}\n columnData={buildColumnData({\n handleDelete,\n handleEdit,\n isZapierAvailable,\n })}\n />\n </TableWrapper>\n );\n};\n\nexport default Table;\n","import { useEffect, useState } from \"react\";\n\nimport { t } from \"i18next\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport { DEFAULT_PAGE_SIZE, PLURAL } from \"neetocommons/constants\";\nimport {\n useDebounce,\n useQueryParams,\n withTitle,\n} from \"neetocommons/react-utils\";\nimport Header from \"neetomolecules/Header\";\nimport { Alert, Button } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport usePagination from \"hooks/usePagination\";\nimport { HELP_DOC_URL } from \"src/constants\";\nimport {\n useDeleteApiKey,\n useFetchApiKeys,\n} from \"src/hooks/reactQuery/useApiKeysApi\";\n\nimport { API_KEY_TYPES } from \"./constants\";\nimport Create from \"./Panes/Create\";\nimport Update from \"./Panes/Update\";\nimport Table from \"./Table\";\n\nconst ApiKeys = ({\n noDataProps,\n headerProps,\n titleHelpPopoverProps,\n zapierIntegrableType = \"Organization\",\n}) => {\n const [apiKeyToBeDeleted, setApiKeyToBeDeleted] = useState({});\n const [apiKeyToBeEdited, setApiKeyToBeEdited] = useState({});\n const [isCreatePaneOpen, setIsCreatePaneOpen] = useState(false);\n\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n\n const { mutate: deleteApiKey, isPending: isDeleting } = useDeleteApiKey(() =>\n setApiKeyToBeDeleted({})\n );\n\n const debouncedSearchTerm = useDebounce(searchTerm);\n\n const { currentPage, handlePageChange, onFetchSuccess } = usePagination({\n searchTerm: debouncedSearchTerm,\n });\n\n const queryParams = {\n searchTerm: debouncedSearchTerm,\n page: currentPage,\n pageSize: DEFAULT_PAGE_SIZE,\n };\n\n const { data, isLoading, isFetching } = useFetchApiKeys({\n params: { ...queryParams, zapierIntegrableType },\n });\n\n const showFilters = isPresent(debouncedSearchTerm) || data?.totalCount > 0;\n\n useEffect(() => {\n if (!data) return;\n onFetchSuccess(data);\n }, [data]);\n\n const { isZapierAvailable = false } = data || {};\n\n return (\n <div className=\"flex h-full w-full flex-col\">\n <Header\n title={t(\"neetoApiKeys.common.apiKey\", PLURAL)}\n actionBlock={\n <Button\n label={t(\"neetoApiKeys.buttons.addApiKey\")}\n onClick={() => setIsCreatePaneOpen(true)}\n />\n }\n searchProps={\n showFilters && {\n placeholder: t(\"neetoApiKeys.placeholders.search\"),\n }\n }\n titleHelpPopoverProps={{\n description: t(\"neetoApiKeys.tooltips.apiKeysDescription\"),\n helpLinkProps: { href: HELP_DOC_URL },\n title: t(\"neetoApiKeys.tooltips.apiKeys\"),\n ...titleHelpPopoverProps,\n }}\n {...headerProps}\n />\n <Table\n {...{\n currentPage,\n data,\n handlePageChange,\n isFetching,\n isLoading,\n isZapierAvailable,\n noDataProps,\n setIsCreatePaneOpen,\n }}\n handleDelete={setApiKeyToBeDeleted}\n handleEdit={setApiKeyToBeEdited}\n />\n <Alert\n isOpen={isNotEmpty(apiKeyToBeDeleted)}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoApiKeys.buttons.delete\")}\n title={t(\"neetoApiKeys.alert.titles.deleteApiKey\")}\n message={\n <Trans\n components={{ bold: <strong /> }}\n values={{ name: apiKeyToBeDeleted.label }}\n i18nKey={\n apiKeyToBeDeleted.type === API_KEY_TYPES.ZAPIER\n ? \"neetoApiKeys.alert.descriptions.deleteZapierApiKey\"\n : \"neetoApiKeys.alert.descriptions.deleteApiKey\"\n }\n />\n }\n onClose={() => setApiKeyToBeDeleted({})}\n onSubmit={() =>\n deleteApiKey({\n id: apiKeyToBeDeleted.id,\n params: { type: apiKeyToBeDeleted.type },\n })\n }\n />\n <Create\n {...{ isZapierAvailable }}\n isOpen={isCreatePaneOpen}\n onClose={() => setIsCreatePaneOpen(false)}\n />\n <Update\n apiKey={apiKeyToBeEdited}\n onClose={() => setApiKeyToBeEdited({})}\n />\n </div>\n );\n};\nexport default withTitle(ApiKeys, t(\"neetoApiKeys.common.apiKey\", PLURAL));\n"],"names":["getPageFromSearchParams","_getQueryParams","getQueryParams","page","parseInt","DEFAULT_PAGE_INDEX","setPageSearchParam","_ref","history","searchParams","buildUrl","push","search","usePagination","searchTerm","_useState","useState","_useState2","_slicedToArray","currentPage","setCurrentPage","useHistory","useEffect","handlePageChange","isNotEmpty","onFetchSuccess","_ref2","totalCount","apiKeys","isEmpty","API_KEYS_BASE_URL","HELP_DOC_URL","concat","globalProps","appName","toLowerCase","fetch","params","axios","get","create","payload","post","apiKey","update","id","put","destroy","apiKeysApi","QUERY_KEYS","API_KEYS","useFetchApiKeys","_ref$options","options","useQuery","_objectSpread","queryKey","queryFn","useCreateApiKey","onSuccess","useMutationWithInvalidation","keysToInvalidate","useUpdateApiKey","useDeleteApiKey","API_KEY_TYPES","GENERAL","ZAPIER","INITIAL_VALUES","expiresAt","label","hasNoExpiry","type","NEXT_DAY","dayjs","add","startOf","VALIDATION_SCHEMA","yup","object","date","when","field","nullable","required","t","entity","min","dateFormat","string","MENU_ITEMS","EDIT","DELETE","isInPast","isBefore","partlyHideToken","key","slice","padStart","formatExpiry","diff","fromNow","getMenuItems","onEdit","onDelete","isEditVisible","isVisible","onClick","buildColumnData","handleDelete","handleEdit","isZapierAvailable","columns","title","dataIndex","width","render","_jsxs","className","children","_jsx","Typography","style","MoreDropdown","dropdownProps","strategy","menuItems","token","CopyToClipboardButton","value","_","_ref3","isPresent","Tag","createdAt","dateTime","splice","humanize","getStartOfTime","time","unit","DatePicker","defaultValue","disabledDate","placeholder","name","_ref$disabled","disabled","Field","_globalProps","meta","setFieldValue","form","NeetoUIDatePicker","allowClear","error","touched","format","user","getPopupContainer","prop","onChange","Form","withT","_ref$initialValues","initialValues","isSubmitting","onClose","onSubmit","initialFocusRef","_ref$isEdit","isEdit","_ref$isZapierAvailabl","NeetoUIForm","formikProps","validationSchema","_ref2$values","values","_ref2$values2","_Fragment","Pane","Body","Input","autoFocus","ref","Radio","Item","Checkbox","checked","Footer","ActionBlock","cancelButtonProps","Create","isOpen","useRef","_useCreateApiKey","createApiKey","mutate","isCreating","isPending","_useTranslation","useTranslation","Header","HelpPopover","description","helpLinkProps","href","Update","_useUpdateApiKey","updateApiKey","isUpdating","handleUpdate","isNotPresent","Table","setIsCreatePaneOpen","_ref$noDataProps","noDataProps","data","isLoading","isFetching","PageLoader","NoData","helpText","Trans","i18nKey","components","helpLink","Button","target","primaryButtonProps","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","NeetoUITable","fixedHeight","currentPageNumber","defaultPageSize","loading","rowData","columnData","ApiKeys","headerProps","titleHelpPopoverProps","_ref$zapierIntegrable","zapierIntegrableType","apiKeyToBeDeleted","setApiKeyToBeDeleted","_useState3","_useState4","apiKeyToBeEdited","setApiKeyToBeEdited","_useState5","_useState6","isCreatePaneOpen","_useQueryParams","useQueryParams","_useQueryParams$searc","_useDeleteApiKey","deleteApiKey","isDeleting","debouncedSearchTerm","useDebounce","_usePagination","queryParams","pageSize","_useFetchApiKeys","showFilters","_ref2$isZapierAvailab","PLURAL","actionBlock","searchProps","Alert","submitButtonLabel","message","bold","withTitle"],"mappings":"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"}
|
package/dist/cjs/ApiKeys.js
CHANGED
|
@@ -17,20 +17,21 @@ var utils = require('@bigbinary/neeto-commons-frontend/utils');
|
|
|
17
17
|
var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
|
|
18
18
|
var reactQuery = require('@tanstack/react-query');
|
|
19
19
|
var axios = require('axios');
|
|
20
|
+
var dayjs = require('dayjs');
|
|
21
|
+
var yup = require('yup');
|
|
20
22
|
var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
|
|
21
23
|
var Pane = require('@bigbinary/neetoui/Pane');
|
|
22
24
|
var Typography = require('@bigbinary/neetoui/Typography');
|
|
23
25
|
var NeetoUIForm = require('@bigbinary/neetoui/formik/Form');
|
|
24
26
|
var Input = require('@bigbinary/neetoui/formik/Input');
|
|
27
|
+
var Radio = require('@bigbinary/neetoui/formik/Radio');
|
|
25
28
|
var Checkbox = require('@bigbinary/neetoui/formik/Checkbox');
|
|
26
29
|
var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
|
|
27
30
|
var formik = require('formik');
|
|
28
31
|
var NeetoUIDatePicker = require('@bigbinary/neetoui/DatePicker');
|
|
29
|
-
var dayjs = require('dayjs');
|
|
30
32
|
var CopyToClipboardButton = require('@bigbinary/neeto-molecules/CopyToClipboardButton');
|
|
31
33
|
var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
|
|
32
34
|
var Tag = require('@bigbinary/neetoui/Tag');
|
|
33
|
-
var yup = require('yup');
|
|
34
35
|
var jsxRuntime = require('react/jsx-runtime');
|
|
35
36
|
var PageLoader = require('@bigbinary/neeto-molecules/PageLoader');
|
|
36
37
|
var TableWrapper = require('@bigbinary/neeto-molecules/TableWrapper');
|
|
@@ -128,8 +129,12 @@ var update = function update(_ref) {
|
|
|
128
129
|
apiKey: payload
|
|
129
130
|
});
|
|
130
131
|
};
|
|
131
|
-
var destroy = function destroy(
|
|
132
|
-
|
|
132
|
+
var destroy = function destroy(_ref2) {
|
|
133
|
+
var id = _ref2.id,
|
|
134
|
+
params = _ref2.params;
|
|
135
|
+
return axios["delete"]("".concat(API_KEYS_BASE_URL, "/").concat(id), {
|
|
136
|
+
params: params
|
|
137
|
+
});
|
|
133
138
|
};
|
|
134
139
|
var apiKeysApi = {
|
|
135
140
|
fetch: fetch,
|
|
@@ -181,10 +186,15 @@ var useDeleteApiKey = function useDeleteApiKey(onSuccess) {
|
|
|
181
186
|
});
|
|
182
187
|
};
|
|
183
188
|
|
|
189
|
+
var API_KEY_TYPES = {
|
|
190
|
+
GENERAL: "general",
|
|
191
|
+
ZAPIER: "zapier"
|
|
192
|
+
};
|
|
184
193
|
var INITIAL_VALUES = {
|
|
185
194
|
expiresAt: null,
|
|
186
195
|
label: "",
|
|
187
|
-
hasNoExpiry: true
|
|
196
|
+
hasNoExpiry: true,
|
|
197
|
+
type: API_KEY_TYPES.GENERAL
|
|
188
198
|
};
|
|
189
199
|
var NEXT_DAY = dayjs().add(1, "day").startOf("day");
|
|
190
200
|
var VALIDATION_SCHEMA = yup__namespace.object({
|
|
@@ -205,39 +215,45 @@ var MENU_ITEMS = {
|
|
|
205
215
|
};
|
|
206
216
|
|
|
207
217
|
var isInPast = function isInPast(date) {
|
|
208
|
-
return dayjs(date).isBefore(dayjs());
|
|
218
|
+
return utils.dayjs(date).isBefore(utils.dayjs());
|
|
209
219
|
};
|
|
210
220
|
var partlyHideToken = function partlyHideToken(key) {
|
|
211
221
|
return key.slice(-4).padStart(20, "*");
|
|
212
222
|
};
|
|
213
223
|
var formatExpiry = function formatExpiry(date) {
|
|
214
|
-
return dayjs(date).diff(dayjs(), "day") <= 2 ? utils.dateFormat.fromNow(date) : utils.dateFormat.date(date);
|
|
224
|
+
return utils.dayjs(date).diff(utils.dayjs(), "day") <= 2 ? utils.dateFormat.fromNow(date) : utils.dateFormat.date(date);
|
|
215
225
|
};
|
|
216
226
|
var getMenuItems = function getMenuItems(_ref) {
|
|
217
227
|
var onEdit = _ref.onEdit,
|
|
218
|
-
onDelete = _ref.onDelete
|
|
228
|
+
onDelete = _ref.onDelete,
|
|
229
|
+
isEditVisible = _ref.isEditVisible;
|
|
219
230
|
return [{
|
|
220
231
|
key: MENU_ITEMS.EDIT,
|
|
221
232
|
label: i18next.t("neetoApiKeys.buttons.edit"),
|
|
233
|
+
isVisible: isEditVisible,
|
|
234
|
+
"data-cy": "api-key-edit-button",
|
|
222
235
|
onClick: onEdit
|
|
223
236
|
}, {
|
|
224
237
|
key: MENU_ITEMS.DELETE,
|
|
225
238
|
label: i18next.t("neetoApiKeys.buttons.delete"),
|
|
239
|
+
"data-cy": "api-key-delete-button",
|
|
226
240
|
onClick: onDelete
|
|
227
241
|
}];
|
|
228
242
|
};
|
|
229
243
|
var buildColumnData = function buildColumnData(_ref2) {
|
|
230
244
|
var handleDelete = _ref2.handleDelete,
|
|
231
|
-
handleEdit = _ref2.handleEdit
|
|
232
|
-
|
|
245
|
+
handleEdit = _ref2.handleEdit,
|
|
246
|
+
isZapierAvailable = _ref2.isZapierAvailable;
|
|
247
|
+
var columns = [{
|
|
233
248
|
title: i18next.t("neetoApiKeys.table.headers.label"),
|
|
234
249
|
key: "label",
|
|
235
250
|
dataIndex: "label",
|
|
236
|
-
width:
|
|
251
|
+
width: 200,
|
|
237
252
|
render: function render(label, apiKey) {
|
|
238
253
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
239
254
|
className: "flex items-center justify-between space-x-3",
|
|
240
255
|
children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
256
|
+
"data-cy": "api-keys-label-field",
|
|
241
257
|
style: "body2",
|
|
242
258
|
children: label
|
|
243
259
|
}), /*#__PURE__*/jsxRuntime.jsx(MoreDropdown, {
|
|
@@ -250,7 +266,8 @@ var buildColumnData = function buildColumnData(_ref2) {
|
|
|
250
266
|
},
|
|
251
267
|
onDelete: function onDelete() {
|
|
252
268
|
return handleDelete(apiKey);
|
|
253
|
-
}
|
|
269
|
+
},
|
|
270
|
+
isEditVisible: apiKey.type === API_KEY_TYPES.GENERAL
|
|
254
271
|
})
|
|
255
272
|
})]
|
|
256
273
|
});
|
|
@@ -259,11 +276,12 @@ var buildColumnData = function buildColumnData(_ref2) {
|
|
|
259
276
|
title: i18next.t("neetoApiKeys.table.headers.token"),
|
|
260
277
|
key: "token",
|
|
261
278
|
dataIndex: "token",
|
|
262
|
-
width:
|
|
279
|
+
width: 300,
|
|
263
280
|
render: function render(token) {
|
|
264
281
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
265
282
|
className: "flex items-center justify-between gap-x-3",
|
|
266
283
|
children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
284
|
+
"data-cy": "api-keys-token-field",
|
|
267
285
|
style: "body2",
|
|
268
286
|
children: partlyHideToken(token)
|
|
269
287
|
}), /*#__PURE__*/jsxRuntime.jsx(CopyToClipboardButton, {
|
|
@@ -290,11 +308,14 @@ var buildColumnData = function buildColumnData(_ref2) {
|
|
|
290
308
|
title: i18next.t("neetoApiKeys.table.headers.expiresAt"),
|
|
291
309
|
key: "expiresAt",
|
|
292
310
|
dataIndex: "expiresAt",
|
|
293
|
-
width:
|
|
311
|
+
width: 150,
|
|
294
312
|
render: function render(expiresAt) {
|
|
295
|
-
return
|
|
296
|
-
|
|
297
|
-
children:
|
|
313
|
+
return /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
314
|
+
"data-cy": "api-keys-expires-at-field",
|
|
315
|
+
children: neetoCist.isPresent(expiresAt) ? formatExpiry(expiresAt) : /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
316
|
+
style: "body2",
|
|
317
|
+
children: i18next.t("neetoApiKeys.common.never")
|
|
318
|
+
})
|
|
298
319
|
});
|
|
299
320
|
}
|
|
300
321
|
}, {
|
|
@@ -303,15 +324,33 @@ var buildColumnData = function buildColumnData(_ref2) {
|
|
|
303
324
|
dataIndex: "createdAt",
|
|
304
325
|
width: 200,
|
|
305
326
|
render: function render(createdAt) {
|
|
306
|
-
return
|
|
307
|
-
|
|
308
|
-
children:
|
|
327
|
+
return /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
328
|
+
"data-cy": "api-keys-created-at-field",
|
|
329
|
+
children: neetoCist.isPresent(createdAt) ? utils.dateFormat.dateTime(createdAt) : /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
330
|
+
style: "body2",
|
|
331
|
+
children: i18next.t("neetoApiKeys.common.never")
|
|
332
|
+
})
|
|
309
333
|
});
|
|
310
334
|
}
|
|
311
335
|
}];
|
|
336
|
+
if (isZapierAvailable) {
|
|
337
|
+
columns.splice(2, 0, {
|
|
338
|
+
title: i18next.t("neetoApiKeys.table.headers.type"),
|
|
339
|
+
key: "type",
|
|
340
|
+
dataIndex: "type",
|
|
341
|
+
width: 144,
|
|
342
|
+
render: function render(type) {
|
|
343
|
+
return /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
344
|
+
style: "body2",
|
|
345
|
+
children: neetoCist.humanize(type)
|
|
346
|
+
});
|
|
347
|
+
}
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
return columns;
|
|
312
351
|
};
|
|
313
352
|
var getStartOfTime = function getStartOfTime(time, unit) {
|
|
314
|
-
return dayjs(time).startOf(unit);
|
|
353
|
+
return utils.dayjs(time).startOf(unit);
|
|
315
354
|
};
|
|
316
355
|
|
|
317
356
|
function ownKeys$3(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; }
|
|
@@ -358,7 +397,11 @@ var Form = reactUtils.withT(function (_ref) {
|
|
|
358
397
|
isSubmitting = _ref.isSubmitting,
|
|
359
398
|
onClose = _ref.onClose,
|
|
360
399
|
onSubmit = _ref.onSubmit,
|
|
361
|
-
initialFocusRef = _ref.initialFocusRef
|
|
400
|
+
initialFocusRef = _ref.initialFocusRef,
|
|
401
|
+
_ref$isEdit = _ref.isEdit,
|
|
402
|
+
isEdit = _ref$isEdit === void 0 ? false : _ref$isEdit,
|
|
403
|
+
_ref$isZapierAvailabl = _ref.isZapierAvailable,
|
|
404
|
+
isZapierAvailable = _ref$isZapierAvailabl === void 0 ? false : _ref$isZapierAvailabl;
|
|
362
405
|
return /*#__PURE__*/jsxRuntime.jsx(NeetoUIForm, {
|
|
363
406
|
formikProps: {
|
|
364
407
|
validationSchema: VALIDATION_SCHEMA,
|
|
@@ -370,7 +413,8 @@ var Form = reactUtils.withT(function (_ref) {
|
|
|
370
413
|
_ref2$values = _ref2.values,
|
|
371
414
|
_ref2$values2 = _ref2$values === void 0 ? {} : _ref2$values,
|
|
372
415
|
hasNoExpiry = _ref2$values2.hasNoExpiry,
|
|
373
|
-
expiresAt = _ref2$values2.expiresAt
|
|
416
|
+
expiresAt = _ref2$values2.expiresAt,
|
|
417
|
+
type = _ref2$values2.type;
|
|
374
418
|
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
375
419
|
children: [/*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
|
|
376
420
|
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
@@ -382,23 +426,37 @@ var Form = reactUtils.withT(function (_ref) {
|
|
|
382
426
|
placeholder: t("neetoApiKeys.placeholders.label"),
|
|
383
427
|
ref: initialFocusRef
|
|
384
428
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
385
|
-
className: "space-y-
|
|
386
|
-
children: [!
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
429
|
+
className: "space-y-4",
|
|
430
|
+
children: [!isEdit && isZapierAvailable && /*#__PURE__*/jsxRuntime.jsxs(Radio, {
|
|
431
|
+
label: t("neetoApiKeys.common.type"),
|
|
432
|
+
name: "type",
|
|
433
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(Radio.Item, {
|
|
434
|
+
label: t("neetoApiKeys.common.general"),
|
|
435
|
+
name: "type",
|
|
436
|
+
value: API_KEY_TYPES.GENERAL
|
|
437
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Radio.Item, {
|
|
438
|
+
label: t("neetoApiKeys.common.zapier"),
|
|
439
|
+
name: "type",
|
|
440
|
+
value: API_KEY_TYPES.ZAPIER
|
|
441
|
+
})]
|
|
442
|
+
}), type === API_KEY_TYPES.GENERAL && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
443
|
+
children: [!hasNoExpiry && /*#__PURE__*/jsxRuntime.jsx(DatePicker, {
|
|
444
|
+
defaultValue: expiresAt,
|
|
445
|
+
disabledDate: function disabledDate(date) {
|
|
446
|
+
return date < NEXT_DAY;
|
|
447
|
+
},
|
|
448
|
+
label: t("neetoApiKeys.fields.expiryDate"),
|
|
449
|
+
name: "expiresAt",
|
|
450
|
+
placeholder: t("neetoApiKeys.placeholders.selectExpiryDate")
|
|
451
|
+
}), /*#__PURE__*/jsxRuntime.jsx(Checkbox, {
|
|
452
|
+
checked: hasNoExpiry,
|
|
453
|
+
label: t("neetoApiKeys.fields.neverExpire"),
|
|
454
|
+
name: "hasNoExpiry",
|
|
455
|
+
onChange: function onChange() {
|
|
456
|
+
setFieldValue("expiresAt", null);
|
|
457
|
+
setFieldValue("hasNoExpiry", !hasNoExpiry);
|
|
458
|
+
}
|
|
459
|
+
})]
|
|
402
460
|
})]
|
|
403
461
|
})]
|
|
404
462
|
})
|
|
@@ -417,7 +475,9 @@ var Form = reactUtils.withT(function (_ref) {
|
|
|
417
475
|
|
|
418
476
|
var Create = function Create(_ref) {
|
|
419
477
|
var onClose = _ref.onClose,
|
|
420
|
-
isOpen = _ref.isOpen
|
|
478
|
+
isOpen = _ref.isOpen,
|
|
479
|
+
_ref$isZapierAvailabl = _ref.isZapierAvailable,
|
|
480
|
+
isZapierAvailable = _ref$isZapierAvailabl === void 0 ? false : _ref$isZapierAvailabl;
|
|
421
481
|
var initialFocusRef = react.useRef(null);
|
|
422
482
|
var _useCreateApiKey = useCreateApiKey(onClose),
|
|
423
483
|
createApiKey = _useCreateApiKey.mutate,
|
|
@@ -442,6 +502,7 @@ var Create = function Create(_ref) {
|
|
|
442
502
|
})
|
|
443
503
|
}), /*#__PURE__*/jsxRuntime.jsx(Form, {
|
|
444
504
|
initialFocusRef: initialFocusRef,
|
|
505
|
+
isZapierAvailable: isZapierAvailable,
|
|
445
506
|
onClose: onClose,
|
|
446
507
|
isSubmitting: isCreating,
|
|
447
508
|
onSubmit: createApiKey
|
|
@@ -489,6 +550,7 @@ var Update = function Update(_ref) {
|
|
|
489
550
|
initialFocusRef: initialFocusRef,
|
|
490
551
|
initialValues: initialValues,
|
|
491
552
|
onClose: onClose,
|
|
553
|
+
isEdit: true,
|
|
492
554
|
isSubmitting: isUpdating,
|
|
493
555
|
onSubmit: handleUpdate
|
|
494
556
|
})]
|
|
@@ -507,7 +569,8 @@ var Table = function Table(_ref) {
|
|
|
507
569
|
data = _ref.data,
|
|
508
570
|
isLoading = _ref.isLoading,
|
|
509
571
|
isFetching = _ref.isFetching,
|
|
510
|
-
handlePageChange = _ref.handlePageChange
|
|
572
|
+
handlePageChange = _ref.handlePageChange,
|
|
573
|
+
isZapierAvailable = _ref.isZapierAvailable;
|
|
511
574
|
var _useTranslation = reactI18next.useTranslation(),
|
|
512
575
|
t = _useTranslation.t;
|
|
513
576
|
if (isLoading) return /*#__PURE__*/jsxRuntime.jsx(PageLoader, {});
|
|
@@ -541,15 +604,16 @@ var Table = function Table(_ref) {
|
|
|
541
604
|
children: /*#__PURE__*/jsxRuntime.jsx(NeetoUITable, {
|
|
542
605
|
handlePageChange: handlePageChange,
|
|
543
606
|
fixedHeight: true,
|
|
544
|
-
columnData: buildColumnData({
|
|
545
|
-
handleDelete: handleDelete,
|
|
546
|
-
handleEdit: handleEdit
|
|
547
|
-
}),
|
|
548
607
|
currentPageNumber: currentPage,
|
|
549
608
|
defaultPageSize: constants.DEFAULT_PAGE_SIZE,
|
|
550
609
|
loading: isFetching,
|
|
551
610
|
rowData: data === null || data === void 0 ? void 0 : data.apiKeys,
|
|
552
|
-
totalCount: data === null || data === void 0 ? void 0 : data.totalCount
|
|
611
|
+
totalCount: data === null || data === void 0 ? void 0 : data.totalCount,
|
|
612
|
+
columnData: buildColumnData({
|
|
613
|
+
handleDelete: handleDelete,
|
|
614
|
+
handleEdit: handleEdit,
|
|
615
|
+
isZapierAvailable: isZapierAvailable
|
|
616
|
+
})
|
|
553
617
|
})
|
|
554
618
|
});
|
|
555
619
|
};
|
|
@@ -559,7 +623,9 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
|
|
|
559
623
|
var ApiKeys = function ApiKeys(_ref) {
|
|
560
624
|
var noDataProps = _ref.noDataProps,
|
|
561
625
|
headerProps = _ref.headerProps,
|
|
562
|
-
titleHelpPopoverProps = _ref.titleHelpPopoverProps
|
|
626
|
+
titleHelpPopoverProps = _ref.titleHelpPopoverProps,
|
|
627
|
+
_ref$zapierIntegrable = _ref.zapierIntegrableType,
|
|
628
|
+
zapierIntegrableType = _ref$zapierIntegrable === void 0 ? "Organization" : _ref$zapierIntegrable;
|
|
563
629
|
var _useState = react.useState({}),
|
|
564
630
|
_useState2 = _slicedToArray(_useState, 2),
|
|
565
631
|
apiKeyToBeDeleted = _useState2[0],
|
|
@@ -595,7 +661,9 @@ var ApiKeys = function ApiKeys(_ref) {
|
|
|
595
661
|
pageSize: constants.DEFAULT_PAGE_SIZE
|
|
596
662
|
};
|
|
597
663
|
var _useFetchApiKeys = useFetchApiKeys({
|
|
598
|
-
params: queryParams
|
|
664
|
+
params: _objectSpread(_objectSpread({}, queryParams), {}, {
|
|
665
|
+
zapierIntegrableType: zapierIntegrableType
|
|
666
|
+
})
|
|
599
667
|
}),
|
|
600
668
|
data = _useFetchApiKeys.data,
|
|
601
669
|
isLoading = _useFetchApiKeys.isLoading,
|
|
@@ -605,6 +673,9 @@ var ApiKeys = function ApiKeys(_ref) {
|
|
|
605
673
|
if (!data) return;
|
|
606
674
|
onFetchSuccess(data);
|
|
607
675
|
}, [data]);
|
|
676
|
+
var _ref2 = data || {},
|
|
677
|
+
_ref2$isZapierAvailab = _ref2.isZapierAvailable,
|
|
678
|
+
isZapierAvailable = _ref2$isZapierAvailab === void 0 ? false : _ref2$isZapierAvailab;
|
|
608
679
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
609
680
|
className: "flex h-full w-full flex-col",
|
|
610
681
|
children: [/*#__PURE__*/jsxRuntime.jsx(Header, _objectSpread({
|
|
@@ -631,6 +702,7 @@ var ApiKeys = function ApiKeys(_ref) {
|
|
|
631
702
|
handlePageChange: handlePageChange,
|
|
632
703
|
isFetching: isFetching,
|
|
633
704
|
isLoading: isLoading,
|
|
705
|
+
isZapierAvailable: isZapierAvailable,
|
|
634
706
|
noDataProps: noDataProps,
|
|
635
707
|
setIsCreatePaneOpen: setIsCreatePaneOpen,
|
|
636
708
|
handleDelete: setApiKeyToBeDeleted,
|
|
@@ -644,18 +716,24 @@ var ApiKeys = function ApiKeys(_ref) {
|
|
|
644
716
|
components: {
|
|
645
717
|
bold: /*#__PURE__*/jsxRuntime.jsx("strong", {})
|
|
646
718
|
},
|
|
647
|
-
i18nKey: "neetoApiKeys.alert.descriptions.deleteApiKey",
|
|
648
719
|
values: {
|
|
649
720
|
name: apiKeyToBeDeleted.label
|
|
650
|
-
}
|
|
721
|
+
},
|
|
722
|
+
i18nKey: apiKeyToBeDeleted.type === API_KEY_TYPES.ZAPIER ? "neetoApiKeys.alert.descriptions.deleteZapierApiKey" : "neetoApiKeys.alert.descriptions.deleteApiKey"
|
|
651
723
|
}),
|
|
652
724
|
onClose: function onClose() {
|
|
653
725
|
return setApiKeyToBeDeleted({});
|
|
654
726
|
},
|
|
655
727
|
onSubmit: function onSubmit() {
|
|
656
|
-
return deleteApiKey(
|
|
728
|
+
return deleteApiKey({
|
|
729
|
+
id: apiKeyToBeDeleted.id,
|
|
730
|
+
params: {
|
|
731
|
+
type: apiKeyToBeDeleted.type
|
|
732
|
+
}
|
|
733
|
+
});
|
|
657
734
|
}
|
|
658
735
|
}), /*#__PURE__*/jsxRuntime.jsx(Create, {
|
|
736
|
+
isZapierAvailable: isZapierAvailable,
|
|
659
737
|
isOpen: isCreatePaneOpen,
|
|
660
738
|
onClose: function onClose() {
|
|
661
739
|
return setIsCreatePaneOpen(false);
|