@bigbinary/neeto-molecules 3.9.5 → 3.9.7

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/dist/AuditLogs.js CHANGED
@@ -67,7 +67,7 @@ var DATE_FORMATS = {
67
67
  "%Y/%m/%d": "YYYY/MM/DD"
68
68
  };
69
69
  var DETAILS_KEYS = {
70
- CHANGES_MADE_BY: "changesMadeBy",
70
+ AFFECTED_EMAIL: "affectedEmail",
71
71
  ERROR_MESSAGE: "errorMessage",
72
72
  NAME: "name",
73
73
  ORGANIZATION_ROLE: "organizationRole",
@@ -177,7 +177,7 @@ var GenericChangelog = function GenericChangelog(_ref) {
177
177
  status = details.status;
178
178
  return /*#__PURE__*/jsxs("div", {
179
179
  children: [/*#__PURE__*/jsx(LabelledDetail, {
180
- label: DETAILS_KEYS.CHANGES_MADE_BY,
180
+ label: DETAILS_KEYS.AFFECTED_EMAIL,
181
181
  value: email
182
182
  }), isNotEmpty(changes) && status === "success" ? /*#__PURE__*/jsx(Table, {
183
183
  columnData: CHANGELOG_COLUMN_DATA,
@@ -470,6 +470,7 @@ var AuditLogs = function AuditLogs() {
470
470
  currentPageNumber: parseInt(page),
471
471
  "data-testid": "audit-logs-table",
472
472
  defaultPageSize: DEFAULT_PAGE_SIZE,
473
+ enableColumnFreeze: false,
473
474
  loading: isFetching,
474
475
  rowData: transformLogsForTable(auditLogs)
475
476
  }) : /*#__PURE__*/jsx("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"AuditLogs.js","sources":["../src/components/AuditLogs/LabelledDetail.jsx","../src/components/AuditLogs/Details/constants.js","../src/components/AuditLogs/Details/utils.js","../src/components/AuditLogs/Details/Changelog/Generic.jsx","../src/components/AuditLogs/Details/Changelog/Permissions.jsx","../src/components/AuditLogs/Details/Emails.jsx","../src/components/AuditLogs/Details/Generic.jsx","../src/components/AuditLogs/constants.js","../src/components/AuditLogs/utils.jsx","../src/components/AuditLogs/AddtionalDetails.jsx","../src/components/AuditLogs/api.js","../src/components/AuditLogs/useAuditLogsApi.js","../src/components/AuditLogs/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LabelledDetail = ({ label, value }) => (\n <Typography className=\"mb-2\" style=\"body1\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey={`neetoMolecules.auditLogs.additionalDetails.${label}`}\n values={{ value }}\n />\n </Typography>\n);\n\nexport default LabelledDetail;\n","import { t } from \"i18next\";\n\nexport const DATE_FORMATS = {\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const DETAILS_KEYS = {\n CHANGES_MADE_BY: \"changesMadeBy\",\n ERROR_MESSAGE: \"errorMessage\",\n NAME: \"name\",\n ORGANIZATION_ROLE: \"organizationRole\",\n GENERIC_DETAILS: \"details\",\n ADDED_PERMISSIONS: \"addedPermissions\",\n REMOVED_PERMISSIONS: \"removedPermissions\",\n};\n\nexport const EMAILS_TABLE_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.emails.title\"),\n key: \"email\",\n dataIndex: \"email\",\n },\n];\n\nexport const CHANGELOG_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.field\"),\n key: \"field\",\n dataIndex: \"field\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.from\"),\n key: \"from\",\n dataIndex: \"from\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.to\"),\n key: \"to\",\n dataIndex: \"to\",\n },\n];\n","import { t } from \"i18next\";\nimport { _humanize } from \"neetocist\";\n\nimport { DATE_FORMATS, DETAILS_KEYS } from \"./constants\";\n\nconst formatToFromValue = value => {\n if (value === true) {\n return t(\"neetoMolecules.auditLogs.details.changelog.true\");\n }\n\n if (value === false) {\n return t(\"neetoMolecules.auditLogs.details.changelog.false\");\n }\n\n if (value === null) return \"-\";\n\n return value;\n};\n\nconst transformDateFormat = rawDateFormat => DATE_FORMATS[rawDateFormat];\n\nconst getFormattedValue = (field, value) =>\n field === \"dateFormat\"\n ? transformDateFormat(value)\n : formatToFromValue(value);\n\nexport const formatEmails = emails => emails.map(email => ({ email }));\n\nexport const formatChangeLog = changes =>\n Object.entries(changes).map(([field, { from, to }]) => {\n const formattedField = _humanize(field);\n\n return {\n field: formattedField,\n from: getFormattedValue(field, from),\n to: getFormattedValue(field, to),\n };\n });\n\nexport const getFullName = (firstName, lastName = \"\") =>\n `${firstName} ${lastName}`.trim();\n\nexport const getLabel = ({ firstName, lastName, organizationRole }) => {\n if (firstName || lastName) {\n return DETAILS_KEYS.NAME;\n }\n\n if (organizationRole) {\n return DETAILS_KEYS.ORGANIZATION_ROLE;\n }\n\n return DETAILS_KEYS.GENERIC_DETAILS;\n};\n\nexport const formatPermissionsChangeLog = ({ from, to }) => [\n {\n field: t(\"neetoMolecules.auditLogs.details.permissions.description\"),\n from: getFormattedValue(\"description\", from),\n to: getFormattedValue(\"description\", to),\n },\n];\n\nexport const transformPermissions = permissions =>\n permissions\n .map(permission => {\n const humanizedParts = permission.split(\".\").map(_humanize);\n\n return humanizedParts.join(\" - \");\n })\n .join(\", \");\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { CHANGELOG_COLUMN_DATA, DETAILS_KEYS } from \"../constants\";\nimport { formatChangeLog } from \"../utils\";\n\nconst GenericChangelog = ({ details }) => {\n const { t } = useTranslation();\n\n const { email = \"\", changes = {}, errorMessage = \"\", status } = details;\n\n return (\n <div>\n <LabelledDetail label={DETAILS_KEYS.CHANGES_MADE_BY} value={email} />\n {isNotEmpty(changes) && status === \"success\" ? (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatChangeLog(changes)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </div>\n );\n};\n\nexport default GenericChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { DETAILS_KEYS, CHANGELOG_COLUMN_DATA } from \"../constants\";\nimport { formatPermissionsChangeLog, transformPermissions } from \"../utils\";\n\nconst PermissionsChangelog = ({ details }) => {\n const {\n description = {},\n organizationRole = \"\",\n addedPermissions = [],\n removedPermissions = [],\n } = details;\n\n return (\n <div>\n <LabelledDetail\n label={DETAILS_KEYS.ORGANIZATION_ROLE}\n value={organizationRole}\n />\n {isNotEmpty(addedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.ADDED_PERMISSIONS}\n value={transformPermissions(addedPermissions)}\n />\n )}\n {isNotEmpty(removedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.REMOVED_PERMISSIONS}\n value={transformPermissions(removedPermissions)}\n />\n )}\n {isNotEmpty(description) && (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatPermissionsChangeLog(description)}\n />\n )}\n </div>\n );\n};\n\nexport default PermissionsChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DETAILS_KEYS, EMAILS_TABLE_COLUMN_DATA } from \"./constants\";\nimport { formatEmails } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst Emails = ({ details }) => {\n const { t } = useTranslation();\n\n const { emails = [], status, errorMessage = \"\" } = details;\n\n return (\n <>\n {isNotEmpty(emails) && status === \"success\" ? (\n <Table\n columns={EMAILS_TABLE_COLUMN_DATA}\n loading={false}\n rowData={formatEmails(emails)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </>\n );\n};\n\nexport default Emails;\n","import { getLabel, getFullName } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst GenericDetails = ({ details }) => {\n const { firstName = \"\", lastName = \"\", organizationRole = \"\" } = details;\n\n const name = getFullName(firstName, lastName);\n const label = getLabel({ firstName, lastName, organizationRole });\n const value = name || organizationRole || JSON.stringify(details);\n\n return <LabelledDetail {...{ label, value }} />;\n};\n\nexport default GenericDetails;\n","import GenericChangelog from \"./Details/Changelog/Generic\";\nimport PermissionsChangelog from \"./Details/Changelog/Permissions\";\nimport Emails from \"./Details/Emails\";\nimport GenericDetails from \"./Details/Generic\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n};\n\nexport const ADDITIONAL_DETAILS_KEYS = {\n ACTION: \"action\",\n PERFORMED_BY: \"performedBy\",\n PERFORMED_AT: \"performedAt\",\n PRODUCT: \"product\",\n};\n\nexport const DETAILS_COMPONENT_MAP = {\n [ACTIONS.INVITED_USERS]: Emails,\n [ACTIONS.BULK_UPDATE_USERS]: Emails,\n [ACTIONS.USER_SIGNED_UP]: GenericDetails,\n [ACTIONS.UPDATED_USER]: GenericChangelog,\n [ACTIONS.UPDATED_USER_PROFILE]: GenericChangelog,\n [ACTIONS.CREATED_ROLE]: GenericDetails,\n [ACTIONS.UPDATED_ROLE]: PermissionsChangelog,\n [ACTIONS.DELETED_ROLE]: GenericDetails,\n};\n","import { t } from \"i18next\";\nimport { capitalize, snakeToCamelCase } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\n\nimport { DETAILS_COMPONENT_MAP } from \"./constants\";\nimport GenericDetails from \"./Details/Generic\";\n\nconst transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const transformLogsForTable = logs =>\n logs.map(\n ({\n id,\n key: action,\n metadata: { status, ...restOfMetadata },\n performer: { name: performedBy = \"\" },\n updatedAt: performedAt,\n }) => {\n const transformedAction = transformAction(action);\n const formattedPerformedAt = dateFormat.dateTime(performedAt);\n\n return {\n id,\n action: transformedAction,\n status: capitalize(status),\n performedAt: formattedPerformedAt,\n performedBy,\n additionalDetails: {\n ...restOfMetadata,\n action: transformedAction,\n performedAt: formattedPerformedAt,\n performedBy,\n status,\n },\n };\n }\n );\n\nexport const getColumnData = handleClick => [\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.action\", SINGULAR),\n key: \"action\",\n dataIndex: \"action\",\n render: (action, { additionalDetails }) => (\n <Button\n data-testid=\"action-link-button\"\n label={t(`neetoMolecules.auditLogs.actions.${action}`)}\n style=\"link\"\n onClick={() => handleClick(additionalDetails)}\n />\n ),\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.status\"),\n key: \"status\",\n dataIndex: \"status\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedBy\"),\n key: \"performedBy\",\n dataIndex: \"performedBy\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedAt\"),\n key: \"performedAt\",\n dataIndex: \"performedAt\",\n },\n];\n\nexport const getComponentForDetail = action =>\n DETAILS_COMPONENT_MAP[action] || GenericDetails;\n","import { _capitalize } from \"neetocist\";\nimport { Typography, Modal } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADDITIONAL_DETAILS_KEYS } from \"./constants\";\nimport LabelledDetail from \"./LabelledDetail\";\nimport { getComponentForDetail } from \"./utils\";\n\nconst AdditionalDetails = ({ additionalDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const {\n message,\n action: defaultAction,\n performedBy,\n performedAt,\n via: product,\n ...details\n } = additionalDetails;\n\n const action =\n message || t(`neetoMolecules.auditLogs.actions.${defaultAction}`);\n\n const DetailComponent = getComponentForDetail(defaultAction);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"additional-details-modal\"\n size=\"large\"\n >\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.auditLogs.additionalDetails.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <>\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.ACTION}\n value={action}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_BY}\n value={performedBy}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_AT}\n value={performedAt}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PRODUCT}\n value={_capitalize(product)}\n />\n <DetailComponent {...{ details }} />\n </>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default AdditionalDetails;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport AdditionalDetails from \"./AddtionalDetails\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { transformLogsForTable, getColumnData } from \"./utils\";\n\nconst AuditLogs = () => {\n const [isAdditionalDetailsModalOpen, setIsAdditionalDetailsModalOpen] =\n useState(false);\n const [additionalDetails, setAdditionalDetails] = useState({});\n\n const { t } = useTranslation();\n\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const {\n data: { auditLogs = [], totalCount = 0 } = {},\n isLoading,\n isFetching,\n } = useFetchAuditLogs({ params: { page } });\n\n const handleClick = additionalDetails => {\n setIsAdditionalDetailsModalOpen(true);\n setAdditionalDetails(additionalDetails);\n };\n\n const handleClose = () => {\n setIsAdditionalDetailsModalOpen(false);\n setAdditionalDetails({});\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"neetoMolecules.auditLogs.title\")} />\n <TableWrapper\n className=\"mt-5\"\n hasPagination={totalCount > DEFAULT_PAGE_SIZE}\n >\n {isPresent(auditLogs) ? (\n <Table\n {...{ totalCount }}\n fixedHeight\n columnData={getColumnData(handleClick)}\n currentPageNumber={parseInt(page)}\n data-testid=\"audit-logs-table\"\n defaultPageSize={DEFAULT_PAGE_SIZE}\n loading={isFetching}\n rowData={transformLogsForTable(auditLogs)}\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.auditLogs.noData\")} />\n </div>\n )}\n </TableWrapper>\n <AdditionalDetails\n {...{ additionalDetails }}\n isOpen={isAdditionalDetailsModalOpen}\n onClose={handleClose}\n />\n </Container>\n );\n};\n\nexport default AuditLogs;\n"],"names":["LabelledDetail","_ref","label","value","_jsx","Typography","className","style","children","Trans","components","strong","i18nKey","concat","values","DATE_FORMATS","DETAILS_KEYS","CHANGES_MADE_BY","ERROR_MESSAGE","NAME","ORGANIZATION_ROLE","GENERIC_DETAILS","ADDED_PERMISSIONS","REMOVED_PERMISSIONS","EMAILS_TABLE_COLUMN_DATA","title","t","key","dataIndex","CHANGELOG_COLUMN_DATA","formatToFromValue","transformDateFormat","rawDateFormat","getFormattedValue","field","formatEmails","emails","map","email","formatChangeLog","changes","Object","entries","_ref2","_slicedToArray","_ref2$","from","to","formattedField","_humanize","getFullName","firstName","lastName","arguments","length","undefined","trim","getLabel","_ref3","organizationRole","formatPermissionsChangeLog","_ref4","transformPermissions","permissions","permission","humanizedParts","split","join","GenericChangelog","details","_useTranslation","useTranslation","_details$email","_details$changes","_details$errorMessage","errorMessage","status","_jsxs","isNotEmpty","Table","columnData","enableColumnFreeze","rowData","PermissionsChangelog","_details$description","description","_details$organization","_details$addedPermiss","addedPermissions","_details$removedPermi","removedPermissions","Emails","_details$emails","_Fragment","columns","loading","GenericDetails","_details$firstName","_details$lastName","name","JSON","stringify","AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","ADDITIONAL_DETAILS_KEYS","ACTION","PERFORMED_BY","PERFORMED_AT","PRODUCT","DETAILS_COMPONENT_MAP","_defineProperty","transformAction","action","snakeToCamelCase","replace","transformLogsForTable","logs","id","_ref$metadata","metadata","restOfMetadata","_objectWithoutProperties","_excluded","_ref$performer$name","performer","performedBy","performedAt","updatedAt","transformedAction","formattedPerformedAt","dateFormat","dateTime","capitalize","additionalDetails","_objectSpread","getColumnData","handleClick","SINGULAR","render","Button","onClick","getComponentForDetail","AdditionalDetails","isOpen","onClose","message","defaultAction","product","via","DetailComponent","Modal","size","Header","Body","_capitalize","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","_useState","useState","_useState2","isAdditionalDetailsModalOpen","setIsAdditionalDetailsModalOpen","_useState3","_useState4","setAdditionalDetails","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","totalCount","isLoading","isFetching","handleClose","PageLoader","Container","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","isPresent","fixedHeight","currentPageNumber","parseInt","defaultPageSize","NoData"],"mappings":"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"}
1
+ {"version":3,"file":"AuditLogs.js","sources":["../src/components/AuditLogs/LabelledDetail.jsx","../src/components/AuditLogs/Details/constants.js","../src/components/AuditLogs/Details/utils.js","../src/components/AuditLogs/Details/Changelog/Generic.jsx","../src/components/AuditLogs/Details/Changelog/Permissions.jsx","../src/components/AuditLogs/Details/Emails.jsx","../src/components/AuditLogs/Details/Generic.jsx","../src/components/AuditLogs/constants.js","../src/components/AuditLogs/utils.jsx","../src/components/AuditLogs/AddtionalDetails.jsx","../src/components/AuditLogs/api.js","../src/components/AuditLogs/useAuditLogsApi.js","../src/components/AuditLogs/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LabelledDetail = ({ label, value }) => (\n <Typography className=\"mb-2\" style=\"body1\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey={`neetoMolecules.auditLogs.additionalDetails.${label}`}\n values={{ value }}\n />\n </Typography>\n);\n\nexport default LabelledDetail;\n","import { t } from \"i18next\";\n\nexport const DATE_FORMATS = {\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const DETAILS_KEYS = {\n AFFECTED_EMAIL: \"affectedEmail\",\n ERROR_MESSAGE: \"errorMessage\",\n NAME: \"name\",\n ORGANIZATION_ROLE: \"organizationRole\",\n GENERIC_DETAILS: \"details\",\n ADDED_PERMISSIONS: \"addedPermissions\",\n REMOVED_PERMISSIONS: \"removedPermissions\",\n};\n\nexport const EMAILS_TABLE_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.emails.title\"),\n key: \"email\",\n dataIndex: \"email\",\n },\n];\n\nexport const CHANGELOG_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.field\"),\n key: \"field\",\n dataIndex: \"field\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.from\"),\n key: \"from\",\n dataIndex: \"from\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.to\"),\n key: \"to\",\n dataIndex: \"to\",\n },\n];\n","import { t } from \"i18next\";\nimport { _humanize } from \"neetocist\";\n\nimport { DATE_FORMATS, DETAILS_KEYS } from \"./constants\";\n\nconst formatToFromValue = value => {\n if (value === true) {\n return t(\"neetoMolecules.auditLogs.details.changelog.true\");\n }\n\n if (value === false) {\n return t(\"neetoMolecules.auditLogs.details.changelog.false\");\n }\n\n if (value === null) return \"-\";\n\n return value;\n};\n\nconst transformDateFormat = rawDateFormat => DATE_FORMATS[rawDateFormat];\n\nconst getFormattedValue = (field, value) =>\n field === \"dateFormat\"\n ? transformDateFormat(value)\n : formatToFromValue(value);\n\nexport const formatEmails = emails => emails.map(email => ({ email }));\n\nexport const formatChangeLog = changes =>\n Object.entries(changes).map(([field, { from, to }]) => {\n const formattedField = _humanize(field);\n\n return {\n field: formattedField,\n from: getFormattedValue(field, from),\n to: getFormattedValue(field, to),\n };\n });\n\nexport const getFullName = (firstName, lastName = \"\") =>\n `${firstName} ${lastName}`.trim();\n\nexport const getLabel = ({ firstName, lastName, organizationRole }) => {\n if (firstName || lastName) {\n return DETAILS_KEYS.NAME;\n }\n\n if (organizationRole) {\n return DETAILS_KEYS.ORGANIZATION_ROLE;\n }\n\n return DETAILS_KEYS.GENERIC_DETAILS;\n};\n\nexport const formatPermissionsChangeLog = ({ from, to }) => [\n {\n field: t(\"neetoMolecules.auditLogs.details.permissions.description\"),\n from: getFormattedValue(\"description\", from),\n to: getFormattedValue(\"description\", to),\n },\n];\n\nexport const transformPermissions = permissions =>\n permissions\n .map(permission => {\n const humanizedParts = permission.split(\".\").map(_humanize);\n\n return humanizedParts.join(\" - \");\n })\n .join(\", \");\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { CHANGELOG_COLUMN_DATA, DETAILS_KEYS } from \"../constants\";\nimport { formatChangeLog } from \"../utils\";\n\nconst GenericChangelog = ({ details }) => {\n const { t } = useTranslation();\n\n const { email = \"\", changes = {}, errorMessage = \"\", status } = details;\n\n return (\n <div>\n <LabelledDetail label={DETAILS_KEYS.AFFECTED_EMAIL} value={email} />\n {isNotEmpty(changes) && status === \"success\" ? (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatChangeLog(changes)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </div>\n );\n};\n\nexport default GenericChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { DETAILS_KEYS, CHANGELOG_COLUMN_DATA } from \"../constants\";\nimport { formatPermissionsChangeLog, transformPermissions } from \"../utils\";\n\nconst PermissionsChangelog = ({ details }) => {\n const {\n description = {},\n organizationRole = \"\",\n addedPermissions = [],\n removedPermissions = [],\n } = details;\n\n return (\n <div>\n <LabelledDetail\n label={DETAILS_KEYS.ORGANIZATION_ROLE}\n value={organizationRole}\n />\n {isNotEmpty(addedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.ADDED_PERMISSIONS}\n value={transformPermissions(addedPermissions)}\n />\n )}\n {isNotEmpty(removedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.REMOVED_PERMISSIONS}\n value={transformPermissions(removedPermissions)}\n />\n )}\n {isNotEmpty(description) && (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatPermissionsChangeLog(description)}\n />\n )}\n </div>\n );\n};\n\nexport default PermissionsChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DETAILS_KEYS, EMAILS_TABLE_COLUMN_DATA } from \"./constants\";\nimport { formatEmails } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst Emails = ({ details }) => {\n const { t } = useTranslation();\n\n const { emails = [], status, errorMessage = \"\" } = details;\n\n return (\n <>\n {isNotEmpty(emails) && status === \"success\" ? (\n <Table\n columns={EMAILS_TABLE_COLUMN_DATA}\n loading={false}\n rowData={formatEmails(emails)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </>\n );\n};\n\nexport default Emails;\n","import { getLabel, getFullName } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst GenericDetails = ({ details }) => {\n const { firstName = \"\", lastName = \"\", organizationRole = \"\" } = details;\n\n const name = getFullName(firstName, lastName);\n const label = getLabel({ firstName, lastName, organizationRole });\n const value = name || organizationRole || JSON.stringify(details);\n\n return <LabelledDetail {...{ label, value }} />;\n};\n\nexport default GenericDetails;\n","import GenericChangelog from \"./Details/Changelog/Generic\";\nimport PermissionsChangelog from \"./Details/Changelog/Permissions\";\nimport Emails from \"./Details/Emails\";\nimport GenericDetails from \"./Details/Generic\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n};\n\nexport const ADDITIONAL_DETAILS_KEYS = {\n ACTION: \"action\",\n PERFORMED_BY: \"performedBy\",\n PERFORMED_AT: \"performedAt\",\n PRODUCT: \"product\",\n};\n\nexport const DETAILS_COMPONENT_MAP = {\n [ACTIONS.INVITED_USERS]: Emails,\n [ACTIONS.BULK_UPDATE_USERS]: Emails,\n [ACTIONS.USER_SIGNED_UP]: GenericDetails,\n [ACTIONS.UPDATED_USER]: GenericChangelog,\n [ACTIONS.UPDATED_USER_PROFILE]: GenericChangelog,\n [ACTIONS.CREATED_ROLE]: GenericDetails,\n [ACTIONS.UPDATED_ROLE]: PermissionsChangelog,\n [ACTIONS.DELETED_ROLE]: GenericDetails,\n};\n","import { t } from \"i18next\";\nimport { capitalize, snakeToCamelCase } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\n\nimport { DETAILS_COMPONENT_MAP } from \"./constants\";\nimport GenericDetails from \"./Details/Generic\";\n\nconst transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const transformLogsForTable = logs =>\n logs.map(\n ({\n id,\n key: action,\n metadata: { status, ...restOfMetadata },\n performer: { name: performedBy = \"\" },\n updatedAt: performedAt,\n }) => {\n const transformedAction = transformAction(action);\n const formattedPerformedAt = dateFormat.dateTime(performedAt);\n\n return {\n id,\n action: transformedAction,\n status: capitalize(status),\n performedAt: formattedPerformedAt,\n performedBy,\n additionalDetails: {\n ...restOfMetadata,\n action: transformedAction,\n performedAt: formattedPerformedAt,\n performedBy,\n status,\n },\n };\n }\n );\n\nexport const getColumnData = handleClick => [\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.action\", SINGULAR),\n key: \"action\",\n dataIndex: \"action\",\n render: (action, { additionalDetails }) => (\n <Button\n data-testid=\"action-link-button\"\n label={t(`neetoMolecules.auditLogs.actions.${action}`)}\n style=\"link\"\n onClick={() => handleClick(additionalDetails)}\n />\n ),\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.status\"),\n key: \"status\",\n dataIndex: \"status\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedBy\"),\n key: \"performedBy\",\n dataIndex: \"performedBy\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedAt\"),\n key: \"performedAt\",\n dataIndex: \"performedAt\",\n },\n];\n\nexport const getComponentForDetail = action =>\n DETAILS_COMPONENT_MAP[action] || GenericDetails;\n","import { _capitalize } from \"neetocist\";\nimport { Typography, Modal } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADDITIONAL_DETAILS_KEYS } from \"./constants\";\nimport LabelledDetail from \"./LabelledDetail\";\nimport { getComponentForDetail } from \"./utils\";\n\nconst AdditionalDetails = ({ additionalDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const {\n message,\n action: defaultAction,\n performedBy,\n performedAt,\n via: product,\n ...details\n } = additionalDetails;\n\n const action =\n message || t(`neetoMolecules.auditLogs.actions.${defaultAction}`);\n\n const DetailComponent = getComponentForDetail(defaultAction);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"additional-details-modal\"\n size=\"large\"\n >\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.auditLogs.additionalDetails.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <>\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.ACTION}\n value={action}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_BY}\n value={performedBy}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_AT}\n value={performedAt}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PRODUCT}\n value={_capitalize(product)}\n />\n <DetailComponent {...{ details }} />\n </>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default AdditionalDetails;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport AdditionalDetails from \"./AddtionalDetails\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { transformLogsForTable, getColumnData } from \"./utils\";\n\nconst AuditLogs = () => {\n const [isAdditionalDetailsModalOpen, setIsAdditionalDetailsModalOpen] =\n useState(false);\n const [additionalDetails, setAdditionalDetails] = useState({});\n\n const { t } = useTranslation();\n\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const {\n data: { auditLogs = [], totalCount = 0 } = {},\n isLoading,\n isFetching,\n } = useFetchAuditLogs({ params: { page } });\n\n const handleClick = additionalDetails => {\n setIsAdditionalDetailsModalOpen(true);\n setAdditionalDetails(additionalDetails);\n };\n\n const handleClose = () => {\n setIsAdditionalDetailsModalOpen(false);\n setAdditionalDetails({});\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"neetoMolecules.auditLogs.title\")} />\n <TableWrapper\n className=\"mt-5\"\n hasPagination={totalCount > DEFAULT_PAGE_SIZE}\n >\n {isPresent(auditLogs) ? (\n <Table\n {...{ totalCount }}\n fixedHeight\n columnData={getColumnData(handleClick)}\n currentPageNumber={parseInt(page)}\n data-testid=\"audit-logs-table\"\n defaultPageSize={DEFAULT_PAGE_SIZE}\n enableColumnFreeze={false}\n loading={isFetching}\n rowData={transformLogsForTable(auditLogs)}\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.auditLogs.noData\")} />\n </div>\n )}\n </TableWrapper>\n <AdditionalDetails\n {...{ additionalDetails }}\n isOpen={isAdditionalDetailsModalOpen}\n onClose={handleClose}\n />\n </Container>\n );\n};\n\nexport default AuditLogs;\n"],"names":["LabelledDetail","_ref","label","value","_jsx","Typography","className","style","children","Trans","components","strong","i18nKey","concat","values","DATE_FORMATS","DETAILS_KEYS","AFFECTED_EMAIL","ERROR_MESSAGE","NAME","ORGANIZATION_ROLE","GENERIC_DETAILS","ADDED_PERMISSIONS","REMOVED_PERMISSIONS","EMAILS_TABLE_COLUMN_DATA","title","t","key","dataIndex","CHANGELOG_COLUMN_DATA","formatToFromValue","transformDateFormat","rawDateFormat","getFormattedValue","field","formatEmails","emails","map","email","formatChangeLog","changes","Object","entries","_ref2","_slicedToArray","_ref2$","from","to","formattedField","_humanize","getFullName","firstName","lastName","arguments","length","undefined","trim","getLabel","_ref3","organizationRole","formatPermissionsChangeLog","_ref4","transformPermissions","permissions","permission","humanizedParts","split","join","GenericChangelog","details","_useTranslation","useTranslation","_details$email","_details$changes","_details$errorMessage","errorMessage","status","_jsxs","isNotEmpty","Table","columnData","enableColumnFreeze","rowData","PermissionsChangelog","_details$description","description","_details$organization","_details$addedPermiss","addedPermissions","_details$removedPermi","removedPermissions","Emails","_details$emails","_Fragment","columns","loading","GenericDetails","_details$firstName","_details$lastName","name","JSON","stringify","AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","ADDITIONAL_DETAILS_KEYS","ACTION","PERFORMED_BY","PERFORMED_AT","PRODUCT","DETAILS_COMPONENT_MAP","_defineProperty","transformAction","action","snakeToCamelCase","replace","transformLogsForTable","logs","id","_ref$metadata","metadata","restOfMetadata","_objectWithoutProperties","_excluded","_ref$performer$name","performer","performedBy","performedAt","updatedAt","transformedAction","formattedPerformedAt","dateFormat","dateTime","capitalize","additionalDetails","_objectSpread","getColumnData","handleClick","SINGULAR","render","Button","onClick","getComponentForDetail","AdditionalDetails","isOpen","onClose","message","defaultAction","product","via","DetailComponent","Modal","size","Header","Body","_capitalize","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","_useState","useState","_useState2","isAdditionalDetailsModalOpen","setIsAdditionalDetailsModalOpen","_useState3","_useState4","setAdditionalDetails","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","totalCount","isLoading","isFetching","handleClose","PageLoader","Container","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","isPresent","fixedHeight","currentPageNumber","parseInt","defaultPageSize","NoData"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAMA,cAAc,GAAG,SAAjBA,cAAcA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK,CAAA;EAAA,oBACpCC,GAAA,CAACC,UAAU,EAAA;AAACC,IAAAA,SAAS,EAAC,MAAM;AAACC,IAAAA,KAAK,EAAC,OAAO;IAAAC,QAAA,eACxCJ,GAAA,CAACK,KAAK,EAAA;AACJC,MAAAA,UAAU,EAAE;QAAEC,MAAM,eAAEP,GAAA,CAAS,QAAA,EAAA,EAAA,CAAA;OAAI;AACnCQ,MAAAA,OAAO,EAAAC,6CAAAA,CAAAA,MAAA,CAAgDX,KAAK,CAAG;AAC/DY,MAAAA,MAAM,EAAE;AAAEX,QAAAA,KAAK,EAALA,KAAAA;AAAM,OAAA;KACjB,CAAA;AAAC,GACQ,CAAC,CAAA;AAAA,CACd;;ACTM,IAAMY,YAAY,GAAG;AAC1B,EAAA,UAAU,EAAE,YAAY;AACxB,EAAA,UAAU,EAAE,YAAY;AACxB,EAAA,UAAU,EAAE,YAAA;AACd,CAAC,CAAA;AAEM,IAAMC,YAAY,GAAG;AAC1BC,EAAAA,cAAc,EAAE,eAAe;AAC/BC,EAAAA,aAAa,EAAE,cAAc;AAC7BC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,iBAAiB,EAAE,kBAAkB;AACrCC,EAAAA,eAAe,EAAE,SAAS;AAC1BC,EAAAA,iBAAiB,EAAE,kBAAkB;AACrCC,EAAAA,mBAAmB,EAAE,oBAAA;AACvB,CAAC,CAAA;AAEM,IAAMC,wBAAwB,GAAG,CACtC;AACEC,EAAAA,KAAK,EAAEC,CAAC,CAAC,+CAA+C,CAAC;AACzDC,EAAAA,GAAG,EAAE,OAAO;AACZC,EAAAA,SAAS,EAAE,OAAA;AACb,CAAC,CACF,CAAA;AAEM,IAAMC,qBAAqB,GAAG,CACnC;AACEJ,EAAAA,KAAK,EAAEC,CAAC,CAAC,kDAAkD,CAAC;AAC5DC,EAAAA,GAAG,EAAE,OAAO;AACZC,EAAAA,SAAS,EAAE,OAAA;AACb,CAAC,EACD;AACEH,EAAAA,KAAK,EAAEC,CAAC,CAAC,iDAAiD,CAAC;AAC3DC,EAAAA,GAAG,EAAE,MAAM;AACXC,EAAAA,SAAS,EAAE,MAAA;AACb,CAAC,EACD;AACEH,EAAAA,KAAK,EAAEC,CAAC,CAAC,+CAA+C,CAAC;AACzDC,EAAAA,GAAG,EAAE,IAAI;AACTC,EAAAA,SAAS,EAAE,IAAA;AACb,CAAC,CACF;;ACrCD,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAG3B,KAAK,EAAI;EACjC,IAAIA,KAAK,KAAK,IAAI,EAAE;IAClB,OAAOuB,CAAC,CAAC,iDAAiD,CAAC,CAAA;AAC7D,GAAA;EAEA,IAAIvB,KAAK,KAAK,KAAK,EAAE;IACnB,OAAOuB,CAAC,CAAC,kDAAkD,CAAC,CAAA;AAC9D,GAAA;AAEA,EAAA,IAAIvB,KAAK,KAAK,IAAI,EAAE,OAAO,GAAG,CAAA;AAE9B,EAAA,OAAOA,KAAK,CAAA;AACd,CAAC,CAAA;AAED,IAAM4B,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,aAAa,EAAA;EAAA,OAAIjB,YAAY,CAACiB,aAAa,CAAC,CAAA;AAAA,CAAA,CAAA;AAExE,IAAMC,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,KAAK,EAAE/B,KAAK,EAAA;AAAA,EAAA,OACrC+B,KAAK,KAAK,YAAY,GAClBH,mBAAmB,CAAC5B,KAAK,CAAC,GAC1B2B,iBAAiB,CAAC3B,KAAK,CAAC,CAAA;AAAA,CAAA,CAAA;AAEvB,IAAMgC,YAAY,GAAG,SAAfA,YAAYA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIA,MAAM,CAACC,GAAG,CAAC,UAAAC,KAAK,EAAA;IAAA,OAAK;AAAEA,MAAAA,KAAK,EAALA,KAAAA;KAAO,CAAA;AAAA,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE/D,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,OAAO,EAAA;EAAA,OACpCC,MAAM,CAACC,OAAO,CAACF,OAAO,CAAC,CAACH,GAAG,CAAC,UAAApC,IAAA,EAA2B;AAAA,IAAA,IAAA0C,KAAA,GAAAC,cAAA,CAAA3C,IAAA,EAAA,CAAA,CAAA;AAAzBiC,MAAAA,KAAK,GAAAS,KAAA,CAAA,CAAA,CAAA;AAAAE,MAAAA,MAAA,GAAAF,KAAA,CAAA,CAAA,CAAA;MAAIG,IAAI,GAAAD,MAAA,CAAJC,IAAI;MAAEC,EAAE,GAAAF,MAAA,CAAFE,EAAE,CAAA;AAC7C,IAAA,IAAMC,cAAc,GAAGC,SAAS,CAACf,KAAK,CAAC,CAAA;IAEvC,OAAO;AACLA,MAAAA,KAAK,EAAEc,cAAc;AACrBF,MAAAA,IAAI,EAAEb,iBAAiB,CAACC,KAAK,EAAEY,IAAI,CAAC;AACpCC,MAAAA,EAAE,EAAEd,iBAAiB,CAACC,KAAK,EAAEa,EAAE,CAAA;KAChC,CAAA;AACH,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAEG,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAIC,SAAS,EAAA;AAAA,EAAA,IAAEC,QAAQ,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,EAAE,CAAA;EAAA,OAClD,EAAA,CAAAxC,MAAA,CAAGsC,SAAS,EAAA,GAAA,CAAA,CAAAtC,MAAA,CAAIuC,QAAQ,CAAA,CAAGI,IAAI,EAAE,CAAA;AAAA,CAAA,CAAA;AAE5B,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,KAAA,EAAkD;AAAA,EAAA,IAA5CP,SAAS,GAAAO,KAAA,CAATP,SAAS;IAAEC,QAAQ,GAAAM,KAAA,CAARN,QAAQ;IAAEO,gBAAgB,GAAAD,KAAA,CAAhBC,gBAAgB,CAAA;EAC9D,IAAIR,SAAS,IAAIC,QAAQ,EAAE;IACzB,OAAOpC,YAAY,CAACG,IAAI,CAAA;AAC1B,GAAA;AAEA,EAAA,IAAIwC,gBAAgB,EAAE;IACpB,OAAO3C,YAAY,CAACI,iBAAiB,CAAA;AACvC,GAAA;EAEA,OAAOJ,YAAY,CAACK,eAAe,CAAA;AACrC,CAAC,CAAA;AAEM,IAAMuC,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAC,KAAA,EAAA;AAAA,EAAA,IAAMf,IAAI,GAAAe,KAAA,CAAJf,IAAI;IAAEC,EAAE,GAAAc,KAAA,CAAFd,EAAE,CAAA;AAAA,EAAA,OAAO,CAC1D;AACEb,IAAAA,KAAK,EAAER,CAAC,CAAC,0DAA0D,CAAC;AACpEoB,IAAAA,IAAI,EAAEb,iBAAiB,CAAC,aAAa,EAAEa,IAAI,CAAC;AAC5CC,IAAAA,EAAE,EAAEd,iBAAiB,CAAC,aAAa,EAAEc,EAAE,CAAA;AACzC,GAAC,CACF,CAAA;AAAA,CAAA,CAAA;AAEM,IAAMe,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,WAAW,EAAA;AAAA,EAAA,OAC7CA,WAAW,CACR1B,GAAG,CAAC,UAAA2B,UAAU,EAAI;AACjB,IAAA,IAAMC,cAAc,GAAGD,UAAU,CAACE,KAAK,CAAC,GAAG,CAAC,CAAC7B,GAAG,CAACY,SAAS,CAAC,CAAA;AAE3D,IAAA,OAAOgB,cAAc,CAACE,IAAI,CAAC,KAAK,CAAC,CAAA;AACnC,GAAC,CAAC,CACDA,IAAI,CAAC,IAAI,CAAC,CAAA;AAAA,CAAA;;AC5Df,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAnE,IAAA,EAAoB;AAAA,EAAA,IAAdoE,OAAO,GAAApE,IAAA,CAAPoE,OAAO,CAAA;AACjC,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtB7C,CAAC,GAAA4C,eAAA,CAAD5C,CAAC,CAAA;AAET,EAAA,IAAA8C,cAAA,GAAgEH,OAAO,CAA/D/B,KAAK;AAALA,IAAAA,KAAK,GAAAkC,cAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,cAAA;IAAAC,gBAAA,GAA8CJ,OAAO,CAAnD7B,OAAO;AAAPA,IAAAA,OAAO,GAAAiC,gBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAC,qBAAA,GAAgCL,OAAO,CAArCM,YAAY;AAAZA,IAAAA,YAAY,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAEE,MAAM,GAAKP,OAAO,CAAlBO,MAAM,CAAA;AAE3D,EAAA,oBACEC,IAAA,CAAA,KAAA,EAAA;IAAArE,QAAA,EAAA,cACEJ,GAAA,CAACJ,cAAc,EAAA;MAACE,KAAK,EAAEc,YAAY,CAACC,cAAe;AAACd,MAAAA,KAAK,EAAEmC,KAAAA;AAAM,KAAE,CAAC,EACnEwC,UAAU,CAACtC,OAAO,CAAC,IAAIoC,MAAM,KAAK,SAAS,gBAC1CxE,GAAA,CAAC2E,KAAK,EAAA;AACJC,MAAAA,UAAU,EAAEnD,qBAAsB;AAClCoD,MAAAA,kBAAkB,EAAE,KAAM;MAC1BC,OAAO,EAAE3C,eAAe,CAACC,OAAO,CAAA;AAAE,KACnC,CAAC,gBAEFpC,GAAA,CAACJ,cAAc,EAAA;MACbE,KAAK,EAAEc,YAAY,CAACE,aAAc;AAClCf,MAAAA,KAAK,EAAEwE,YAAY,IAAIjD,CAAC,CAAC,kCAAkC,CAAA;AAAE,KAC9D,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC;;ACvBD,IAAMyD,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAlF,IAAA,EAAoB;AAAA,EAAA,IAAdoE,OAAO,GAAApE,IAAA,CAAPoE,OAAO,CAAA;AACrC,EAAA,IAAAe,oBAAA,GAKIf,OAAO,CAJTgB,WAAW;AAAXA,IAAAA,WAAW,GAAAD,oBAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,oBAAA;IAAAE,qBAAA,GAIdjB,OAAO,CAHTV,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA2B,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAGnBlB,OAAO,CAFTmB,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAEnBpB,OAAO,CADTqB,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA,CAAA;AAGzB,EAAA,oBACEZ,IAAA,CAAA,KAAA,EAAA;IAAArE,QAAA,EAAA,cACEJ,GAAA,CAACJ,cAAc,EAAA;MACbE,KAAK,EAAEc,YAAY,CAACI,iBAAkB;AACtCjB,MAAAA,KAAK,EAAEwD,gBAAAA;KACR,CAAC,EACDmB,UAAU,CAACU,gBAAgB,CAAC,iBAC3BpF,GAAA,CAACJ,cAAc,EAAA;MACbE,KAAK,EAAEc,YAAY,CAACM,iBAAkB;MACtCnB,KAAK,EAAE2D,oBAAoB,CAAC0B,gBAAgB,CAAA;KAC7C,CACF,EACAV,UAAU,CAACY,kBAAkB,CAAC,iBAC7BtF,GAAA,CAACJ,cAAc,EAAA;MACbE,KAAK,EAAEc,YAAY,CAACO,mBAAoB;MACxCpB,KAAK,EAAE2D,oBAAoB,CAAC4B,kBAAkB,CAAA;KAC/C,CACF,EACAZ,UAAU,CAACO,WAAW,CAAC,iBACtBjF,GAAA,CAAC2E,KAAK,EAAA;AACJC,MAAAA,UAAU,EAAEnD,qBAAsB;AAClCoD,MAAAA,kBAAkB,EAAE,KAAM;MAC1BC,OAAO,EAAEtB,0BAA0B,CAACyB,WAAW,CAAA;AAAE,KAClD,CACF,CAAA;AAAA,GACE,CAAC,CAAA;AAEV,CAAC;;AClCD,IAAMM,MAAM,GAAG,SAATA,MAAMA,CAAA1F,IAAA,EAAoB;AAAA,EAAA,IAAdoE,OAAO,GAAApE,IAAA,CAAPoE,OAAO,CAAA;AACvB,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtB7C,CAAC,GAAA4C,eAAA,CAAD5C,CAAC,CAAA;AAET,EAAA,IAAAkE,eAAA,GAAmDvB,OAAO,CAAlDjC,MAAM;AAANA,IAAAA,MAAM,GAAAwD,eAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,eAAA;IAAEhB,MAAM,GAAwBP,OAAO,CAArCO,MAAM;IAAAF,qBAAA,GAAwBL,OAAO,CAA7BM,YAAY;AAAZA,IAAAA,YAAY,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA,CAAA;EAE9C,oBACEtE,GAAA,CAAAyF,QAAA,EAAA;AAAArF,IAAAA,QAAA,EACGsE,UAAU,CAAC1C,MAAM,CAAC,IAAIwC,MAAM,KAAK,SAAS,gBACzCxE,GAAA,CAAC2E,KAAK,EAAA;AACJe,MAAAA,OAAO,EAAEtE,wBAAyB;AAClCuE,MAAAA,OAAO,EAAE,KAAM;MACfb,OAAO,EAAE/C,YAAY,CAACC,MAAM,CAAA;AAAE,KAC/B,CAAC,gBAEFhC,GAAA,CAACJ,cAAc,EAAA;MACbE,KAAK,EAAEc,YAAY,CAACE,aAAc;AAClCf,MAAAA,KAAK,EAAEwE,YAAY,IAAIjD,CAAC,CAAC,kCAAkC,CAAA;KAC5D,CAAA;AACF,GACD,CAAC,CAAA;AAEP,CAAC;;AC1BD,IAAMsE,cAAc,GAAG,SAAjBA,cAAcA,CAAA/F,IAAA,EAAoB;AAAA,EAAA,IAAdoE,OAAO,GAAApE,IAAA,CAAPoE,OAAO,CAAA;AAC/B,EAAA,IAAA4B,kBAAA,GAAiE5B,OAAO,CAAhElB,SAAS;AAATA,IAAAA,SAAS,GAAA8C,kBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,kBAAA;IAAAC,iBAAA,GAA2C7B,OAAO,CAAhDjB,QAAQ;AAARA,IAAAA,QAAQ,GAAA8C,iBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,iBAAA;IAAAZ,qBAAA,GAA4BjB,OAAO,CAAjCV,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAA2B,qBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,qBAAA,CAAA;AAE5D,EAAA,IAAMa,IAAI,GAAGjD,WAAW,CAACC,SAAS,EAAEC,QAAQ,CAAC,CAAA;EAC7C,IAAMlD,KAAK,GAAGuD,QAAQ,CAAC;AAAEN,IAAAA,SAAS,EAATA,SAAS;AAAEC,IAAAA,QAAQ,EAARA,QAAQ;AAAEO,IAAAA,gBAAgB,EAAhBA,gBAAAA;AAAiB,GAAC,CAAC,CAAA;EACjE,IAAMxD,KAAK,GAAGgG,IAAI,IAAIxC,gBAAgB,IAAIyC,IAAI,CAACC,SAAS,CAAChC,OAAO,CAAC,CAAA;EAEjE,oBAAOjE,GAAA,CAACJ,cAAc,EAAA;AAAOE,IAAAA,KAAK,EAALA,KAAK;AAAEC,IAAAA,KAAK,EAALA,KAAAA;AAAK,GAAK,CAAC,CAAA;AACjD,CAAC;;ACPM,IAAMmG,oBAAoB,GAAG,YAAY,CAAA;AAEzC,IAAMC,OAAO,GAAG;AACrBC,EAAAA,aAAa,EAAE,cAAc;AAC7BC,EAAAA,cAAc,EAAE,cAAc;AAC9BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,iBAAiB,EAAE,iBAAiB;AACpCC,EAAAA,oBAAoB,EAAE,oBAAoB;AAC1CC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,YAAY,EAAE,aAAA;AAChB,CAAC,CAAA;AAEM,IAAMC,uBAAuB,GAAG;AACrCC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,OAAO,EAAE,SAAA;AACX,CAAC,CAAA;AAEM,IAAMC,qBAAqB,GAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EAC/Bf,OAAO,CAACC,aAAa,EAAGb,MAAM,CAC9BY,EAAAA,OAAO,CAACI,iBAAiB,EAAGhB,MAAM,GAClCY,OAAO,CAACE,cAAc,EAAGT,cAAc,CAAA,EACvCO,OAAO,CAACG,YAAY,EAAGtC,gBAAgB,CAAA,EACvCmC,OAAO,CAACK,oBAAoB,EAAGxC,gBAAgB,CAC/CmC,EAAAA,OAAO,CAACM,YAAY,EAAGb,cAAc,CACrCO,EAAAA,OAAO,CAACO,YAAY,EAAG3B,oBAAoB,CAAA,EAC3CoB,OAAO,CAACQ,YAAY,EAAGf,cAAc,CACvC;;;;;ACzBD,IAAMuB,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,MAAM,EAAA;EAAA,OAC5BC,gBAAgB,CAACD,MAAM,CAACE,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE3D,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,IAAI,EAAA;AAAA,EAAA,OACvCA,IAAI,CAACvF,GAAG,CACN,UAAApC,IAAA,EAMM;AAAA,IAAA,IALJ4H,EAAE,GAAA5H,IAAA,CAAF4H,EAAE;MACGL,MAAM,GAAAvH,IAAA,CAAX0B,GAAG;MAAAmG,aAAA,GAAA7H,IAAA,CACH8H,QAAQ;MAAInD,MAAM,GAAAkD,aAAA,CAANlD,MAAM;AAAKoD,MAAAA,cAAc,GAAAC,wBAAA,CAAAH,aAAA,EAAAI,WAAA,CAAA;AAAAC,MAAAA,mBAAA,GAAAlI,IAAA,CACrCmI,SAAS,CAAIjC,IAAI;AAAEkC,MAAAA,WAAW,GAAAF,mBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,mBAAA;MACxBG,WAAW,GAAArI,IAAA,CAAtBsI,SAAS,CAAA;AAET,IAAA,IAAMC,iBAAiB,GAAGjB,eAAe,CAACC,MAAM,CAAC,CAAA;AACjD,IAAA,IAAMiB,oBAAoB,GAAGC,UAAU,CAACC,QAAQ,CAACL,WAAW,CAAC,CAAA;IAE7D,OAAO;AACLT,MAAAA,EAAE,EAAFA,EAAE;AACFL,MAAAA,MAAM,EAAEgB,iBAAiB;AACzB5D,MAAAA,MAAM,EAAEgE,UAAU,CAAChE,MAAM,CAAC;AAC1B0D,MAAAA,WAAW,EAAEG,oBAAoB;AACjCJ,MAAAA,WAAW,EAAXA,WAAW;AACXQ,MAAAA,iBAAiB,EAAAC,eAAA,CAAAA,eAAA,KACZd,cAAc,CAAA,EAAA,EAAA,EAAA;AACjBR,QAAAA,MAAM,EAAEgB,iBAAiB;AACzBF,QAAAA,WAAW,EAAEG,oBAAoB;AACjCJ,QAAAA,WAAW,EAAXA,WAAW;AACXzD,QAAAA,MAAM,EAANA,MAAAA;AAAM,OAAA,CAAA;KAET,CAAA;AACH,GACF,CAAC,CAAA;AAAA,CAAA,CAAA;AAEI,IAAMmE,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,WAAW,EAAA;AAAA,EAAA,OAAI,CAC1C;AACEvH,IAAAA,KAAK,EAAEC,CAAC,CAAC,+CAA+C,EAAEuH,QAAQ,CAAC;AACnEtH,IAAAA,GAAG,EAAE,QAAQ;AACbC,IAAAA,SAAS,EAAE,QAAQ;AACnBsH,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAG1B,MAAM,EAAA7E,KAAA,EAAA;AAAA,MAAA,IAAIkG,iBAAiB,GAAAlG,KAAA,CAAjBkG,iBAAiB,CAAA;MAAA,oBAClCzI,GAAA,CAAC+I,MAAM,EAAA;AACL,QAAA,aAAA,EAAY,oBAAoB;AAChCjJ,QAAAA,KAAK,EAAEwB,CAAC,CAAA,mCAAA,CAAAb,MAAA,CAAqC2G,MAAM,CAAE,CAAE;AACvDjH,QAAAA,KAAK,EAAC,MAAM;QACZ6I,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQJ,WAAW,CAACH,iBAAiB,CAAC,CAAA;AAAA,SAAA;AAAC,OAC/C,CAAC,CAAA;AAAA,KAAA;AAEN,GAAC,EACD;AACEpH,IAAAA,KAAK,EAAEC,CAAC,CAAC,+CAA+C,CAAC;AACzDC,IAAAA,GAAG,EAAE,QAAQ;AACbC,IAAAA,SAAS,EAAE,QAAA;AACb,GAAC,EACD;AACEH,IAAAA,KAAK,EAAEC,CAAC,CAAC,oDAAoD,CAAC;AAC9DC,IAAAA,GAAG,EAAE,aAAa;AAClBC,IAAAA,SAAS,EAAE,aAAA;AACb,GAAC,EACD;AACEH,IAAAA,KAAK,EAAEC,CAAC,CAAC,oDAAoD,CAAC;AAC9DC,IAAAA,GAAG,EAAE,aAAa;AAClBC,IAAAA,SAAS,EAAE,aAAA;AACb,GAAC,CACF,CAAA;AAAA,CAAA,CAAA;AAEM,IAAMyH,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAG7B,MAAM,EAAA;AAAA,EAAA,OACzCH,qBAAqB,CAACG,MAAM,CAAC,IAAIxB,cAAc,CAAA;AAAA,CAAA;;;ACjEjD,IAAMsD,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAArJ,IAAA,EAA+C;AAAA,EAAA,IAAzC4I,iBAAiB,GAAA5I,IAAA,CAAjB4I,iBAAiB;IAAEU,MAAM,GAAAtJ,IAAA,CAANsJ,MAAM;IAAEC,OAAO,GAAAvJ,IAAA,CAAPuJ,OAAO,CAAA;AAC7D,EAAA,IAAAlF,eAAA,GAAcC,cAAc,EAAE;IAAtB7C,CAAC,GAAA4C,eAAA,CAAD5C,CAAC,CAAA;AAET,EAAA,IACE+H,OAAO,GAMLZ,iBAAiB,CANnBY,OAAO;IACCC,aAAa,GAKnBb,iBAAiB,CALnBrB,MAAM;IACNa,WAAW,GAITQ,iBAAiB,CAJnBR,WAAW;IACXC,WAAW,GAGTO,iBAAiB,CAHnBP,WAAW;IACNqB,OAAO,GAEVd,iBAAiB,CAFnBe,GAAG;AACAvF,IAAAA,OAAO,GAAA4D,wBAAA,CACRY,iBAAiB,EAAAX,SAAA,CAAA,CAAA;EAErB,IAAMV,MAAM,GACViC,OAAO,IAAI/H,CAAC,qCAAAb,MAAA,CAAqC6I,aAAa,CAAE,CAAC,CAAA;AAEnE,EAAA,IAAMG,eAAe,GAAGR,qBAAqB,CAACK,aAAa,CAAC,CAAA;EAE5D,oBACE7E,IAAA,CAACiF,KAAK,EAAA;AACEP,IAAAA,MAAM,EAANA,MAAM;AAAEC,IAAAA,OAAO,EAAPA,OAAO;AACrB,IAAA,aAAA,EAAY,0BAA0B;AACtCO,IAAAA,IAAI,EAAC,OAAO;AAAAvJ,IAAAA,QAAA,EAEZJ,cAAAA,GAAA,CAAC0J,KAAK,CAACE,MAAM,EAAA;MAAAxJ,QAAA,eACXJ,GAAA,CAACC,UAAU,EAAA;AAACE,QAAAA,KAAK,EAAC,IAAI;QAAAC,QAAA,EACnBkB,CAAC,CAAC,kDAAkD,CAAA;OAC3C,CAAA;AAAC,KACD,CAAC,eACftB,GAAA,CAAC0J,KAAK,CAACG,IAAI,EAAA;MAAAzJ,QAAA,eACTqE,IAAA,CAAAgB,QAAA,EAAA;QAAArF,QAAA,EAAA,cACEJ,GAAA,CAACJ,cAAc,EAAA;UACbE,KAAK,EAAE8G,uBAAuB,CAACC,MAAO;AACtC9G,UAAAA,KAAK,EAAEqH,MAAAA;AAAO,SACf,CAAC,eACFpH,GAAA,CAACJ,cAAc,EAAA;UACbE,KAAK,EAAE8G,uBAAuB,CAACE,YAAa;AAC5C/G,UAAAA,KAAK,EAAEkI,WAAAA;AAAY,SACpB,CAAC,eACFjI,GAAA,CAACJ,cAAc,EAAA;UACbE,KAAK,EAAE8G,uBAAuB,CAACG,YAAa;AAC5ChH,UAAAA,KAAK,EAAEmI,WAAAA;AAAY,SACpB,CAAC,eACFlI,GAAA,CAACJ,cAAc,EAAA;UACbE,KAAK,EAAE8G,uBAAuB,CAACI,OAAQ;UACvCjH,KAAK,EAAE+J,WAAW,CAACP,OAAO,CAAA;AAAE,SAC7B,CAAC,eACFvJ,GAAA,CAACyJ,eAAe,EAAA;AAAOxF,UAAAA,OAAO,EAAPA,OAAAA;AAAO,SAAK,CAAC,CAAA;OACpC,CAAA;AAAC,KACO,CAAC,CAAA;AAAA,GACR,CAAC,CAAA;AAEZ,CAAC;;ACzDD,IAAM8F,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,GAAG,CAAC,mBAAmB,EAAE;AAAEF,IAAAA,MAAM,EAANA,MAAAA;AAAO,GAAC,CAAC,CAAA;AAAA,CAAA,CAAA;AAE3E,IAAMG,YAAY,GAAG;AAAEJ,EAAAA,cAAc,EAAdA,cAAAA;AAAe,CAAC;;;;ACChC,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAvK,IAAA,EAAA;AAAA,EAAA,IAAMmK,MAAM,GAAAnK,IAAA,CAANmK,MAAM;IAAAK,YAAA,GAAAxK,IAAA,CAAEyK,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,YAAA,CAAA;EAAA,OACtDE,QAAQ,CAAA7B,aAAA,CAAA;AACN8B,IAAAA,QAAQ,EAAE,CAACtE,oBAAoB,EAAE8D,MAAM,CAAC;IACxCS,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQN,YAAY,CAACJ,cAAc,CAACC,MAAM,CAAC,CAAA;AAAA,KAAA;GAC/CM,EAAAA,OAAO,CACX,CAAC,CAAA;AAAA,CAAA;;ACOJ,IAAMI,SAAS,GAAG,SAAZA,SAASA,GAAS;AACtB,EAAA,IAAAC,SAAA,GACEC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAArI,cAAA,CAAAmI,SAAA,EAAA,CAAA,CAAA;AADVG,IAAAA,4BAA4B,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,+BAA+B,GAAAF,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpE,EAAA,IAAAG,UAAA,GAAkDJ,QAAQ,CAAC,EAAE,CAAC;IAAAK,UAAA,GAAAzI,cAAA,CAAAwI,UAAA,EAAA,CAAA,CAAA;AAAvDvC,IAAAA,iBAAiB,GAAAwC,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,oBAAoB,GAAAD,UAAA,CAAA,CAAA,CAAA,CAAA;AAE9C,EAAA,IAAA/G,eAAA,GAAcC,cAAc,EAAE;IAAtB7C,CAAC,GAAA4C,eAAA,CAAD5C,CAAC,CAAA;AAET,EAAA,IAAA6J,eAAA,GAAsCC,cAAc,EAAE;IAAAC,oBAAA,GAAAF,eAAA,CAA9CG,IAAI;AAAJA,IAAAA,IAAI,GAAAD,oBAAA,KAAGE,KAAAA,CAAAA,GAAAA,kBAAkB,GAAAF,oBAAA,CAAA;EAEjC,IAAAG,kBAAA,GAIIpB,iBAAiB,CAAC;AAAEJ,MAAAA,MAAM,EAAE;AAAEsB,QAAAA,IAAI,EAAJA,IAAAA;AAAK,OAAA;AAAE,KAAC,CAAC;IAAAG,qBAAA,GAAAD,kBAAA,CAHzCE,IAAI;AAAAC,IAAAA,sBAAA,GAAAF,qBAAA,KAAA,KAAA,CAAA,GAAuC,EAAE,GAAAA,qBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAArCE,SAAS;AAATA,IAAAA,SAAS,GAAAD,sBAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,sBAAA;IAAAE,sBAAA,GAAAH,sBAAA,CAAEI,UAAU;AAAVA,IAAAA,UAAU,GAAAD,sBAAA,KAAG,KAAA,CAAA,GAAA,CAAC,GAAAA,sBAAA;IACtCE,SAAS,GAAAR,kBAAA,CAATQ,SAAS;IACTC,UAAU,GAAAT,kBAAA,CAAVS,UAAU,CAAA;AAGZ,EAAA,IAAMrD,WAAW,GAAG,SAAdA,WAAWA,CAAGH,iBAAiB,EAAI;IACvCsC,+BAA+B,CAAC,IAAI,CAAC,CAAA;IACrCG,oBAAoB,CAACzC,iBAAiB,CAAC,CAAA;GACxC,CAAA;AAED,EAAA,IAAMyD,WAAW,GAAG,SAAdA,WAAWA,GAAS;IACxBnB,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACtCG,oBAAoB,CAAC,EAAE,CAAC,CAAA;GACzB,CAAA;AAED,EAAA,IAAIc,SAAS,EAAE;AACb,IAAA,oBACEhM,GAAA,CAAA,KAAA,EAAA;AAAKE,MAAAA,SAAS,EAAC,gDAAgD;AAAAE,MAAAA,QAAA,eAC7DJ,GAAA,CAACmM,UAAU,EAAE,EAAA,CAAA;AAAC,KACX,CAAC,CAAA;AAEV,GAAA;EAEA,oBACE1H,IAAA,CAAC2H,SAAS,EAAA;IAAAhM,QAAA,EAAA,cACRJ,GAAA,CAAC4J,MAAM,EAAA;MAACvI,KAAK,EAAEC,CAAC,CAAC,gCAAgC,CAAA;AAAE,KAAE,CAAC,eACtDtB,GAAA,CAACqM,YAAY,EAAA;AACXnM,MAAAA,SAAS,EAAC,MAAM;MAChBoM,aAAa,EAAEP,UAAU,GAAGQ,iBAAkB;MAAAnM,QAAA,EAE7CoM,SAAS,CAACX,SAAS,CAAC,gBACnB7L,GAAA,CAAC2E,KAAK,EAAA;AACEoH,QAAAA,UAAU,EAAVA,UAAU;QAChBU,WAAW,EAAA,IAAA;AACX7H,QAAAA,UAAU,EAAE+D,aAAa,CAACC,WAAW,CAAE;AACvC8D,QAAAA,iBAAiB,EAAEC,QAAQ,CAACrB,IAAI,CAAE;AAClC,QAAA,aAAA,EAAY,kBAAkB;AAC9BsB,QAAAA,eAAe,EAAEL,iBAAkB;AACnC1H,QAAAA,kBAAkB,EAAE,KAAM;AAC1Bc,QAAAA,OAAO,EAAEsG,UAAW;QACpBnH,OAAO,EAAEyC,qBAAqB,CAACsE,SAAS,CAAA;OACzC,CAAC,gBAEF7L,GAAA,CAAA,KAAA,EAAA;AAAKE,QAAAA,SAAS,EAAC,gDAAgD;QAAAE,QAAA,eAC7DJ,GAAA,CAAC6M,MAAM,EAAA;UAACxL,KAAK,EAAEC,CAAC,CAAC,iCAAiC,CAAA;SAAI,CAAA;OACnD,CAAA;AACN,KACW,CAAC,eACftB,GAAA,CAACkJ,iBAAiB,EAAA;AACVT,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACvBU,MAAAA,MAAM,EAAE2B,4BAA6B;AACrC1B,MAAAA,OAAO,EAAE8C,WAAAA;AAAY,KACtB,CAAC,CAAA;AAAA,GACO,CAAC,CAAA;AAEhB;;;;"}
@@ -11,7 +11,7 @@ import { useTranslation, Trans } from 'react-i18next';
11
11
  import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
12
12
  import Delete from '@bigbinary/neeto-icons/Delete';
13
13
  import Edit from '@bigbinary/neeto-icons/Edit';
14
- import Reorder from '@bigbinary/neeto-icons/Reorder';
14
+ import Drag from '@bigbinary/neeto-icons/Drag';
15
15
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
16
16
  import Modal from '@bigbinary/neetoui/Modal';
17
17
  import Textarea from '@bigbinary/neetoui/Textarea';
@@ -24,12 +24,12 @@ function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
24
24
  function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
25
25
  var DragHandle = function DragHandle(props) {
26
26
  return /*#__PURE__*/jsx("div", _objectSpread$4(_objectSpread$4({
27
- className: "neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100",
27
+ className: "neeto-ui-text-gray-500 flex h-8 flex-shrink-0 cursor-grab items-center",
28
28
  "data-cy": "drag-handle",
29
29
  "data-testid": "drag-handle"
30
30
  }, props), {}, {
31
- children: /*#__PURE__*/jsx(Reorder, {
32
- size: 24,
31
+ children: /*#__PURE__*/jsx(Drag, {
32
+ size: 16,
33
33
  strokeWidth: 2
34
34
  })
35
35
  }));
@@ -330,7 +330,7 @@ var InputOption = function InputOption(_ref) {
330
330
  }, _objectSpread$1(_objectSpread$1({}, draggableProps), dragHandleProps)), {}, {
331
331
  "data-cy": "form-block-options",
332
332
  children: /*#__PURE__*/jsxs("div", {
333
- className: "nf-input-options group relative mb-2 flex items-center gap-2",
333
+ className: "nf-input-options group relative mb-2 flex items-start gap-1",
334
334
  children: [/*#__PURE__*/jsx(DragHandle, _objectSpread$1({}, dragHandleProps)), isPictureChoice && /*#__PURE__*/jsx(Fragment, {
335
335
  children: index === 0 ? /*#__PURE__*/jsx("img", {
336
336
  className: "neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover",
@@ -1 +1 @@
1
- {"version":3,"file":"OptionFields.js","sources":["../src/components/OptionFields/DragHandle.jsx","../src/components/OptionFields/BlockOption.jsx","../src/components/OptionFields/BulkOptionModal.jsx","../src/components/OptionFields/constants.js","../src/components/OptionFields/utils.js","../src/components/OptionFields/hooks/useOptionFields.js","../src/components/OptionFields/InputOption.jsx","../src/components/OptionFields/index.jsx"],"sourcesContent":["import { Reorder } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Reorder size={24} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n id,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => handleDeleteClick({ index, id })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getOrderedVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useRef, useState } from \"react\";\n\nimport { isNotEmpty, findIndexById } from \"neetocist\";\nimport { pluck, append, assocPath, move, remove, isEmpty, prop } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n const editingOptionDetailsRef = useRef({ id: \"\", value: \"\" });\n\n const handleChange = (id, value, isOnBlur = false) => {\n // Ignores onBlur events if the value in the input field is not cleared.\n // The value will be reset to the initial value if user clicks outside after clearing the value.\n if (isOnBlur && !isEmpty(value)) return;\n\n const index = findIndexById(id, options);\n if (editingOptionDetailsRef.current.id !== id) {\n editingOptionDetailsRef.current = {\n id,\n value: options[index].label,\n };\n }\n\n // Resets the value to initial value if the user cleared and blurred the input field.\n const valueToUpdate = isOnBlur\n ? editingOptionDetailsRef.current.value\n : value;\n\n onChange(assocPath([index, \"label\"], valueToUpdate, options));\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = (_, id) => {\n let nextOptions;\n\n const indexToDelete = findIndexById(id, options);\n if (shouldDestroy) {\n nextOptions = assocPath([indexToDelete, \"deleted\"], true, options);\n } else {\n nextOptions = attachPosition(remove(indexToDelete, 1, options));\n }\n onChange(nextOptions);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const deletedOptions = options.filter(prop(\"deleted\"));\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position: options.length,\n };\n setShouldFocus(true);\n onChange(append(newOption, options));\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n id,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...{ ...draggableProps, ...dragHandleProps }}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-center gap-2\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onDelete({ index, id })}\n />\n )\n }\n onBlur={({ target }) => onChange(id, target.value, true)}\n onChange={({ target }) => onChange(id, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { slugify, noop } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getOrderedVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index, id }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index, id);\n };\n const orderedVisibleOptions = getOrderedVisibleOptions(options);\n const hideDeleteOption = orderedVisibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {orderedVisibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n dataKey={getUniqueOptionId(option)}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n id={option.id}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n id={option.id}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","_jsx","_objectSpread","className","children","Reorder","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","id","ref","_jsxs","Typography","style","Button","icon","Edit","tooltipProps","content","position","touch","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getOrderedVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","useOptionFields","shouldDestroy","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","editingOptionDetailsRef","useRef","handleChange","isOnBlur","isEmpty","findIndexById","current","valueToUpdate","assocPath","generateLabel","opts","count","labelCount","tempLabel","concat","isDuplicateLabel","pluck","includes","handleDelete","_","nextOptions","indexToDelete","remove","handleDragEnd","_ref2","source","destination","deletedOptions","filteredOptions","move","finalOptions","_toConsumableArray","handleAddOption","newOption","altId","append","handleBulkAddOption","newOptions","trim","split","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","_Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","name","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","orderedVisibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","_createElement","Draggable","dataKey","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
1
+ {"version":3,"file":"OptionFields.js","sources":["../src/components/OptionFields/DragHandle.jsx","../src/components/OptionFields/BlockOption.jsx","../src/components/OptionFields/BulkOptionModal.jsx","../src/components/OptionFields/constants.js","../src/components/OptionFields/utils.js","../src/components/OptionFields/hooks/useOptionFields.js","../src/components/OptionFields/InputOption.jsx","../src/components/OptionFields/index.jsx"],"sourcesContent":["import { Drag } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-500 flex h-8 flex-shrink-0 cursor-grab items-center\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Drag size={16} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n id,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => handleDeleteClick({ index, id })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getOrderedVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useRef, useState } from \"react\";\n\nimport { isNotEmpty, findIndexById } from \"neetocist\";\nimport { pluck, append, assocPath, move, remove, isEmpty, prop } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n const editingOptionDetailsRef = useRef({ id: \"\", value: \"\" });\n\n const handleChange = (id, value, isOnBlur = false) => {\n // Ignores onBlur events if the value in the input field is not cleared.\n // The value will be reset to the initial value if user clicks outside after clearing the value.\n if (isOnBlur && !isEmpty(value)) return;\n\n const index = findIndexById(id, options);\n if (editingOptionDetailsRef.current.id !== id) {\n editingOptionDetailsRef.current = {\n id,\n value: options[index].label,\n };\n }\n\n // Resets the value to initial value if the user cleared and blurred the input field.\n const valueToUpdate = isOnBlur\n ? editingOptionDetailsRef.current.value\n : value;\n\n onChange(assocPath([index, \"label\"], valueToUpdate, options));\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = (_, id) => {\n let nextOptions;\n\n const indexToDelete = findIndexById(id, options);\n if (shouldDestroy) {\n nextOptions = assocPath([indexToDelete, \"deleted\"], true, options);\n } else {\n nextOptions = attachPosition(remove(indexToDelete, 1, options));\n }\n onChange(nextOptions);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const deletedOptions = options.filter(prop(\"deleted\"));\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position: options.length,\n };\n setShouldFocus(true);\n onChange(append(newOption, options));\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n id,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...{ ...draggableProps, ...dragHandleProps }}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-start gap-1\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onDelete({ index, id })}\n />\n )\n }\n onBlur={({ target }) => onChange(id, target.value, true)}\n onChange={({ target }) => onChange(id, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { slugify, noop } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getOrderedVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index, id }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index, id);\n };\n const orderedVisibleOptions = getOrderedVisibleOptions(options);\n const hideDeleteOption = orderedVisibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {orderedVisibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n dataKey={getUniqueOptionId(option)}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n id={option.id}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n id={option.id}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","_jsx","_objectSpread","className","children","Drag","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","id","ref","_jsxs","Typography","style","Button","icon","Edit","tooltipProps","content","position","touch","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getOrderedVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","useOptionFields","shouldDestroy","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","editingOptionDetailsRef","useRef","handleChange","isOnBlur","isEmpty","findIndexById","current","valueToUpdate","assocPath","generateLabel","opts","count","labelCount","tempLabel","concat","isDuplicateLabel","pluck","includes","handleDelete","_","nextOptions","indexToDelete","remove","handleDragEnd","_ref2","source","destination","deletedOptions","filteredOptions","move","finalOptions","_toConsumableArray","handleAddOption","newOption","altId","append","handleBulkAddOption","newOptions","trim","split","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","_Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","name","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","orderedVisibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","_createElement","Draggable","dataKey","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
@@ -69,7 +69,7 @@ var DATE_FORMATS = {
69
69
  "%Y/%m/%d": "YYYY/MM/DD"
70
70
  };
71
71
  var DETAILS_KEYS = {
72
- CHANGES_MADE_BY: "changesMadeBy",
72
+ AFFECTED_EMAIL: "affectedEmail",
73
73
  ERROR_MESSAGE: "errorMessage",
74
74
  NAME: "name",
75
75
  ORGANIZATION_ROLE: "organizationRole",
@@ -179,7 +179,7 @@ var GenericChangelog = function GenericChangelog(_ref) {
179
179
  status = details.status;
180
180
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
181
181
  children: [/*#__PURE__*/jsxRuntime.jsx(LabelledDetail, {
182
- label: DETAILS_KEYS.CHANGES_MADE_BY,
182
+ label: DETAILS_KEYS.AFFECTED_EMAIL,
183
183
  value: email
184
184
  }), neetoCist.isNotEmpty(changes) && status === "success" ? /*#__PURE__*/jsxRuntime.jsx(Table, {
185
185
  columnData: CHANGELOG_COLUMN_DATA,
@@ -472,6 +472,7 @@ var AuditLogs = function AuditLogs() {
472
472
  currentPageNumber: parseInt(page),
473
473
  "data-testid": "audit-logs-table",
474
474
  defaultPageSize: constants.DEFAULT_PAGE_SIZE,
475
+ enableColumnFreeze: false,
475
476
  loading: isFetching,
476
477
  rowData: transformLogsForTable(auditLogs)
477
478
  }) : /*#__PURE__*/jsxRuntime.jsx("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"AuditLogs.js","sources":["../../src/components/AuditLogs/LabelledDetail.jsx","../../src/components/AuditLogs/Details/constants.js","../../src/components/AuditLogs/Details/utils.js","../../src/components/AuditLogs/Details/Changelog/Generic.jsx","../../src/components/AuditLogs/Details/Changelog/Permissions.jsx","../../src/components/AuditLogs/Details/Emails.jsx","../../src/components/AuditLogs/Details/Generic.jsx","../../src/components/AuditLogs/constants.js","../../src/components/AuditLogs/utils.jsx","../../src/components/AuditLogs/AddtionalDetails.jsx","../../src/components/AuditLogs/api.js","../../src/components/AuditLogs/useAuditLogsApi.js","../../src/components/AuditLogs/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LabelledDetail = ({ label, value }) => (\n <Typography className=\"mb-2\" style=\"body1\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey={`neetoMolecules.auditLogs.additionalDetails.${label}`}\n values={{ value }}\n />\n </Typography>\n);\n\nexport default LabelledDetail;\n","import { t } from \"i18next\";\n\nexport const DATE_FORMATS = {\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const DETAILS_KEYS = {\n CHANGES_MADE_BY: \"changesMadeBy\",\n ERROR_MESSAGE: \"errorMessage\",\n NAME: \"name\",\n ORGANIZATION_ROLE: \"organizationRole\",\n GENERIC_DETAILS: \"details\",\n ADDED_PERMISSIONS: \"addedPermissions\",\n REMOVED_PERMISSIONS: \"removedPermissions\",\n};\n\nexport const EMAILS_TABLE_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.emails.title\"),\n key: \"email\",\n dataIndex: \"email\",\n },\n];\n\nexport const CHANGELOG_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.field\"),\n key: \"field\",\n dataIndex: \"field\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.from\"),\n key: \"from\",\n dataIndex: \"from\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.to\"),\n key: \"to\",\n dataIndex: \"to\",\n },\n];\n","import { t } from \"i18next\";\nimport { _humanize } from \"neetocist\";\n\nimport { DATE_FORMATS, DETAILS_KEYS } from \"./constants\";\n\nconst formatToFromValue = value => {\n if (value === true) {\n return t(\"neetoMolecules.auditLogs.details.changelog.true\");\n }\n\n if (value === false) {\n return t(\"neetoMolecules.auditLogs.details.changelog.false\");\n }\n\n if (value === null) return \"-\";\n\n return value;\n};\n\nconst transformDateFormat = rawDateFormat => DATE_FORMATS[rawDateFormat];\n\nconst getFormattedValue = (field, value) =>\n field === \"dateFormat\"\n ? transformDateFormat(value)\n : formatToFromValue(value);\n\nexport const formatEmails = emails => emails.map(email => ({ email }));\n\nexport const formatChangeLog = changes =>\n Object.entries(changes).map(([field, { from, to }]) => {\n const formattedField = _humanize(field);\n\n return {\n field: formattedField,\n from: getFormattedValue(field, from),\n to: getFormattedValue(field, to),\n };\n });\n\nexport const getFullName = (firstName, lastName = \"\") =>\n `${firstName} ${lastName}`.trim();\n\nexport const getLabel = ({ firstName, lastName, organizationRole }) => {\n if (firstName || lastName) {\n return DETAILS_KEYS.NAME;\n }\n\n if (organizationRole) {\n return DETAILS_KEYS.ORGANIZATION_ROLE;\n }\n\n return DETAILS_KEYS.GENERIC_DETAILS;\n};\n\nexport const formatPermissionsChangeLog = ({ from, to }) => [\n {\n field: t(\"neetoMolecules.auditLogs.details.permissions.description\"),\n from: getFormattedValue(\"description\", from),\n to: getFormattedValue(\"description\", to),\n },\n];\n\nexport const transformPermissions = permissions =>\n permissions\n .map(permission => {\n const humanizedParts = permission.split(\".\").map(_humanize);\n\n return humanizedParts.join(\" - \");\n })\n .join(\", \");\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { CHANGELOG_COLUMN_DATA, DETAILS_KEYS } from \"../constants\";\nimport { formatChangeLog } from \"../utils\";\n\nconst GenericChangelog = ({ details }) => {\n const { t } = useTranslation();\n\n const { email = \"\", changes = {}, errorMessage = \"\", status } = details;\n\n return (\n <div>\n <LabelledDetail label={DETAILS_KEYS.CHANGES_MADE_BY} value={email} />\n {isNotEmpty(changes) && status === \"success\" ? (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatChangeLog(changes)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </div>\n );\n};\n\nexport default GenericChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { DETAILS_KEYS, CHANGELOG_COLUMN_DATA } from \"../constants\";\nimport { formatPermissionsChangeLog, transformPermissions } from \"../utils\";\n\nconst PermissionsChangelog = ({ details }) => {\n const {\n description = {},\n organizationRole = \"\",\n addedPermissions = [],\n removedPermissions = [],\n } = details;\n\n return (\n <div>\n <LabelledDetail\n label={DETAILS_KEYS.ORGANIZATION_ROLE}\n value={organizationRole}\n />\n {isNotEmpty(addedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.ADDED_PERMISSIONS}\n value={transformPermissions(addedPermissions)}\n />\n )}\n {isNotEmpty(removedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.REMOVED_PERMISSIONS}\n value={transformPermissions(removedPermissions)}\n />\n )}\n {isNotEmpty(description) && (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatPermissionsChangeLog(description)}\n />\n )}\n </div>\n );\n};\n\nexport default PermissionsChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DETAILS_KEYS, EMAILS_TABLE_COLUMN_DATA } from \"./constants\";\nimport { formatEmails } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst Emails = ({ details }) => {\n const { t } = useTranslation();\n\n const { emails = [], status, errorMessage = \"\" } = details;\n\n return (\n <>\n {isNotEmpty(emails) && status === \"success\" ? (\n <Table\n columns={EMAILS_TABLE_COLUMN_DATA}\n loading={false}\n rowData={formatEmails(emails)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </>\n );\n};\n\nexport default Emails;\n","import { getLabel, getFullName } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst GenericDetails = ({ details }) => {\n const { firstName = \"\", lastName = \"\", organizationRole = \"\" } = details;\n\n const name = getFullName(firstName, lastName);\n const label = getLabel({ firstName, lastName, organizationRole });\n const value = name || organizationRole || JSON.stringify(details);\n\n return <LabelledDetail {...{ label, value }} />;\n};\n\nexport default GenericDetails;\n","import GenericChangelog from \"./Details/Changelog/Generic\";\nimport PermissionsChangelog from \"./Details/Changelog/Permissions\";\nimport Emails from \"./Details/Emails\";\nimport GenericDetails from \"./Details/Generic\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n};\n\nexport const ADDITIONAL_DETAILS_KEYS = {\n ACTION: \"action\",\n PERFORMED_BY: \"performedBy\",\n PERFORMED_AT: \"performedAt\",\n PRODUCT: \"product\",\n};\n\nexport const DETAILS_COMPONENT_MAP = {\n [ACTIONS.INVITED_USERS]: Emails,\n [ACTIONS.BULK_UPDATE_USERS]: Emails,\n [ACTIONS.USER_SIGNED_UP]: GenericDetails,\n [ACTIONS.UPDATED_USER]: GenericChangelog,\n [ACTIONS.UPDATED_USER_PROFILE]: GenericChangelog,\n [ACTIONS.CREATED_ROLE]: GenericDetails,\n [ACTIONS.UPDATED_ROLE]: PermissionsChangelog,\n [ACTIONS.DELETED_ROLE]: GenericDetails,\n};\n","import { t } from \"i18next\";\nimport { capitalize, snakeToCamelCase } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\n\nimport { DETAILS_COMPONENT_MAP } from \"./constants\";\nimport GenericDetails from \"./Details/Generic\";\n\nconst transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const transformLogsForTable = logs =>\n logs.map(\n ({\n id,\n key: action,\n metadata: { status, ...restOfMetadata },\n performer: { name: performedBy = \"\" },\n updatedAt: performedAt,\n }) => {\n const transformedAction = transformAction(action);\n const formattedPerformedAt = dateFormat.dateTime(performedAt);\n\n return {\n id,\n action: transformedAction,\n status: capitalize(status),\n performedAt: formattedPerformedAt,\n performedBy,\n additionalDetails: {\n ...restOfMetadata,\n action: transformedAction,\n performedAt: formattedPerformedAt,\n performedBy,\n status,\n },\n };\n }\n );\n\nexport const getColumnData = handleClick => [\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.action\", SINGULAR),\n key: \"action\",\n dataIndex: \"action\",\n render: (action, { additionalDetails }) => (\n <Button\n data-testid=\"action-link-button\"\n label={t(`neetoMolecules.auditLogs.actions.${action}`)}\n style=\"link\"\n onClick={() => handleClick(additionalDetails)}\n />\n ),\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.status\"),\n key: \"status\",\n dataIndex: \"status\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedBy\"),\n key: \"performedBy\",\n dataIndex: \"performedBy\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedAt\"),\n key: \"performedAt\",\n dataIndex: \"performedAt\",\n },\n];\n\nexport const getComponentForDetail = action =>\n DETAILS_COMPONENT_MAP[action] || GenericDetails;\n","import { _capitalize } from \"neetocist\";\nimport { Typography, Modal } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADDITIONAL_DETAILS_KEYS } from \"./constants\";\nimport LabelledDetail from \"./LabelledDetail\";\nimport { getComponentForDetail } from \"./utils\";\n\nconst AdditionalDetails = ({ additionalDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const {\n message,\n action: defaultAction,\n performedBy,\n performedAt,\n via: product,\n ...details\n } = additionalDetails;\n\n const action =\n message || t(`neetoMolecules.auditLogs.actions.${defaultAction}`);\n\n const DetailComponent = getComponentForDetail(defaultAction);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"additional-details-modal\"\n size=\"large\"\n >\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.auditLogs.additionalDetails.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <>\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.ACTION}\n value={action}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_BY}\n value={performedBy}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_AT}\n value={performedAt}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PRODUCT}\n value={_capitalize(product)}\n />\n <DetailComponent {...{ details }} />\n </>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default AdditionalDetails;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport AdditionalDetails from \"./AddtionalDetails\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { transformLogsForTable, getColumnData } from \"./utils\";\n\nconst AuditLogs = () => {\n const [isAdditionalDetailsModalOpen, setIsAdditionalDetailsModalOpen] =\n useState(false);\n const [additionalDetails, setAdditionalDetails] = useState({});\n\n const { t } = useTranslation();\n\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const {\n data: { auditLogs = [], totalCount = 0 } = {},\n isLoading,\n isFetching,\n } = useFetchAuditLogs({ params: { page } });\n\n const handleClick = additionalDetails => {\n setIsAdditionalDetailsModalOpen(true);\n setAdditionalDetails(additionalDetails);\n };\n\n const handleClose = () => {\n setIsAdditionalDetailsModalOpen(false);\n setAdditionalDetails({});\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"neetoMolecules.auditLogs.title\")} />\n <TableWrapper\n className=\"mt-5\"\n hasPagination={totalCount > DEFAULT_PAGE_SIZE}\n >\n {isPresent(auditLogs) ? (\n <Table\n {...{ totalCount }}\n fixedHeight\n columnData={getColumnData(handleClick)}\n currentPageNumber={parseInt(page)}\n data-testid=\"audit-logs-table\"\n defaultPageSize={DEFAULT_PAGE_SIZE}\n loading={isFetching}\n rowData={transformLogsForTable(auditLogs)}\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.auditLogs.noData\")} />\n </div>\n )}\n </TableWrapper>\n <AdditionalDetails\n {...{ additionalDetails }}\n isOpen={isAdditionalDetailsModalOpen}\n onClose={handleClose}\n />\n </Container>\n );\n};\n\nexport default AuditLogs;\n"],"names":["LabelledDetail","_ref","label","value","_jsx","Typography","className","style","children","Trans","components","strong","i18nKey","concat","values","DATE_FORMATS","DETAILS_KEYS","CHANGES_MADE_BY","ERROR_MESSAGE","NAME","ORGANIZATION_ROLE","GENERIC_DETAILS","ADDED_PERMISSIONS","REMOVED_PERMISSIONS","EMAILS_TABLE_COLUMN_DATA","title","t","key","dataIndex","CHANGELOG_COLUMN_DATA","formatToFromValue","transformDateFormat","rawDateFormat","getFormattedValue","field","formatEmails","emails","map","email","formatChangeLog","changes","Object","entries","_ref2","_slicedToArray","_ref2$","from","to","formattedField","_humanize","getFullName","firstName","lastName","arguments","length","undefined","trim","getLabel","_ref3","organizationRole","formatPermissionsChangeLog","_ref4","transformPermissions","permissions","permission","humanizedParts","split","join","GenericChangelog","details","_useTranslation","useTranslation","_details$email","_details$changes","_details$errorMessage","errorMessage","status","_jsxs","isNotEmpty","Table","columnData","enableColumnFreeze","rowData","PermissionsChangelog","_details$description","description","_details$organization","_details$addedPermiss","addedPermissions","_details$removedPermi","removedPermissions","Emails","_details$emails","_Fragment","columns","loading","GenericDetails","_details$firstName","_details$lastName","name","JSON","stringify","AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","ADDITIONAL_DETAILS_KEYS","ACTION","PERFORMED_BY","PERFORMED_AT","PRODUCT","DETAILS_COMPONENT_MAP","_defineProperty","transformAction","action","snakeToCamelCase","replace","transformLogsForTable","logs","id","_ref$metadata","metadata","restOfMetadata","_objectWithoutProperties","_excluded","_ref$performer$name","performer","performedBy","performedAt","updatedAt","transformedAction","formattedPerformedAt","dateFormat","dateTime","capitalize","additionalDetails","_objectSpread","getColumnData","handleClick","SINGULAR","render","Button","onClick","getComponentForDetail","AdditionalDetails","isOpen","onClose","message","defaultAction","product","via","DetailComponent","Modal","size","Header","Body","_capitalize","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","_useState","useState","_useState2","isAdditionalDetailsModalOpen","setIsAdditionalDetailsModalOpen","_useState3","_useState4","setAdditionalDetails","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","totalCount","isLoading","isFetching","handleClose","PageLoader","Container","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","isPresent","fixedHeight","currentPageNumber","parseInt","defaultPageSize","NoData"],"mappings":"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"}
1
+ {"version":3,"file":"AuditLogs.js","sources":["../../src/components/AuditLogs/LabelledDetail.jsx","../../src/components/AuditLogs/Details/constants.js","../../src/components/AuditLogs/Details/utils.js","../../src/components/AuditLogs/Details/Changelog/Generic.jsx","../../src/components/AuditLogs/Details/Changelog/Permissions.jsx","../../src/components/AuditLogs/Details/Emails.jsx","../../src/components/AuditLogs/Details/Generic.jsx","../../src/components/AuditLogs/constants.js","../../src/components/AuditLogs/utils.jsx","../../src/components/AuditLogs/AddtionalDetails.jsx","../../src/components/AuditLogs/api.js","../../src/components/AuditLogs/useAuditLogsApi.js","../../src/components/AuditLogs/index.jsx"],"sourcesContent":["import { Typography } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nconst LabelledDetail = ({ label, value }) => (\n <Typography className=\"mb-2\" style=\"body1\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey={`neetoMolecules.auditLogs.additionalDetails.${label}`}\n values={{ value }}\n />\n </Typography>\n);\n\nexport default LabelledDetail;\n","import { t } from \"i18next\";\n\nexport const DATE_FORMATS = {\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const DETAILS_KEYS = {\n AFFECTED_EMAIL: \"affectedEmail\",\n ERROR_MESSAGE: \"errorMessage\",\n NAME: \"name\",\n ORGANIZATION_ROLE: \"organizationRole\",\n GENERIC_DETAILS: \"details\",\n ADDED_PERMISSIONS: \"addedPermissions\",\n REMOVED_PERMISSIONS: \"removedPermissions\",\n};\n\nexport const EMAILS_TABLE_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.emails.title\"),\n key: \"email\",\n dataIndex: \"email\",\n },\n];\n\nexport const CHANGELOG_COLUMN_DATA = [\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.field\"),\n key: \"field\",\n dataIndex: \"field\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.from\"),\n key: \"from\",\n dataIndex: \"from\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.details.changelog.to\"),\n key: \"to\",\n dataIndex: \"to\",\n },\n];\n","import { t } from \"i18next\";\nimport { _humanize } from \"neetocist\";\n\nimport { DATE_FORMATS, DETAILS_KEYS } from \"./constants\";\n\nconst formatToFromValue = value => {\n if (value === true) {\n return t(\"neetoMolecules.auditLogs.details.changelog.true\");\n }\n\n if (value === false) {\n return t(\"neetoMolecules.auditLogs.details.changelog.false\");\n }\n\n if (value === null) return \"-\";\n\n return value;\n};\n\nconst transformDateFormat = rawDateFormat => DATE_FORMATS[rawDateFormat];\n\nconst getFormattedValue = (field, value) =>\n field === \"dateFormat\"\n ? transformDateFormat(value)\n : formatToFromValue(value);\n\nexport const formatEmails = emails => emails.map(email => ({ email }));\n\nexport const formatChangeLog = changes =>\n Object.entries(changes).map(([field, { from, to }]) => {\n const formattedField = _humanize(field);\n\n return {\n field: formattedField,\n from: getFormattedValue(field, from),\n to: getFormattedValue(field, to),\n };\n });\n\nexport const getFullName = (firstName, lastName = \"\") =>\n `${firstName} ${lastName}`.trim();\n\nexport const getLabel = ({ firstName, lastName, organizationRole }) => {\n if (firstName || lastName) {\n return DETAILS_KEYS.NAME;\n }\n\n if (organizationRole) {\n return DETAILS_KEYS.ORGANIZATION_ROLE;\n }\n\n return DETAILS_KEYS.GENERIC_DETAILS;\n};\n\nexport const formatPermissionsChangeLog = ({ from, to }) => [\n {\n field: t(\"neetoMolecules.auditLogs.details.permissions.description\"),\n from: getFormattedValue(\"description\", from),\n to: getFormattedValue(\"description\", to),\n },\n];\n\nexport const transformPermissions = permissions =>\n permissions\n .map(permission => {\n const humanizedParts = permission.split(\".\").map(_humanize);\n\n return humanizedParts.join(\" - \");\n })\n .join(\", \");\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { CHANGELOG_COLUMN_DATA, DETAILS_KEYS } from \"../constants\";\nimport { formatChangeLog } from \"../utils\";\n\nconst GenericChangelog = ({ details }) => {\n const { t } = useTranslation();\n\n const { email = \"\", changes = {}, errorMessage = \"\", status } = details;\n\n return (\n <div>\n <LabelledDetail label={DETAILS_KEYS.AFFECTED_EMAIL} value={email} />\n {isNotEmpty(changes) && status === \"success\" ? (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatChangeLog(changes)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </div>\n );\n};\n\nexport default GenericChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\n\nimport LabelledDetail from \"components/AuditLogs/LabelledDetail\";\n\nimport { DETAILS_KEYS, CHANGELOG_COLUMN_DATA } from \"../constants\";\nimport { formatPermissionsChangeLog, transformPermissions } from \"../utils\";\n\nconst PermissionsChangelog = ({ details }) => {\n const {\n description = {},\n organizationRole = \"\",\n addedPermissions = [],\n removedPermissions = [],\n } = details;\n\n return (\n <div>\n <LabelledDetail\n label={DETAILS_KEYS.ORGANIZATION_ROLE}\n value={organizationRole}\n />\n {isNotEmpty(addedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.ADDED_PERMISSIONS}\n value={transformPermissions(addedPermissions)}\n />\n )}\n {isNotEmpty(removedPermissions) && (\n <LabelledDetail\n label={DETAILS_KEYS.REMOVED_PERMISSIONS}\n value={transformPermissions(removedPermissions)}\n />\n )}\n {isNotEmpty(description) && (\n <Table\n columnData={CHANGELOG_COLUMN_DATA}\n enableColumnFreeze={false}\n rowData={formatPermissionsChangeLog(description)}\n />\n )}\n </div>\n );\n};\n\nexport default PermissionsChangelog;\n","import { isNotEmpty } from \"neetocist\";\nimport { Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DETAILS_KEYS, EMAILS_TABLE_COLUMN_DATA } from \"./constants\";\nimport { formatEmails } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst Emails = ({ details }) => {\n const { t } = useTranslation();\n\n const { emails = [], status, errorMessage = \"\" } = details;\n\n return (\n <>\n {isNotEmpty(emails) && status === \"success\" ? (\n <Table\n columns={EMAILS_TABLE_COLUMN_DATA}\n loading={false}\n rowData={formatEmails(emails)}\n />\n ) : (\n <LabelledDetail\n label={DETAILS_KEYS.ERROR_MESSAGE}\n value={errorMessage || t(\"neetoMolecules.auditLogs.noError\")}\n />\n )}\n </>\n );\n};\n\nexport default Emails;\n","import { getLabel, getFullName } from \"./utils\";\n\nimport LabelledDetail from \"../LabelledDetail\";\n\nconst GenericDetails = ({ details }) => {\n const { firstName = \"\", lastName = \"\", organizationRole = \"\" } = details;\n\n const name = getFullName(firstName, lastName);\n const label = getLabel({ firstName, lastName, organizationRole });\n const value = name || organizationRole || JSON.stringify(details);\n\n return <LabelledDetail {...{ label, value }} />;\n};\n\nexport default GenericDetails;\n","import GenericChangelog from \"./Details/Changelog/Generic\";\nimport PermissionsChangelog from \"./Details/Changelog/Permissions\";\nimport Emails from \"./Details/Emails\";\nimport GenericDetails from \"./Details/Generic\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n};\n\nexport const ADDITIONAL_DETAILS_KEYS = {\n ACTION: \"action\",\n PERFORMED_BY: \"performedBy\",\n PERFORMED_AT: \"performedAt\",\n PRODUCT: \"product\",\n};\n\nexport const DETAILS_COMPONENT_MAP = {\n [ACTIONS.INVITED_USERS]: Emails,\n [ACTIONS.BULK_UPDATE_USERS]: Emails,\n [ACTIONS.USER_SIGNED_UP]: GenericDetails,\n [ACTIONS.UPDATED_USER]: GenericChangelog,\n [ACTIONS.UPDATED_USER_PROFILE]: GenericChangelog,\n [ACTIONS.CREATED_ROLE]: GenericDetails,\n [ACTIONS.UPDATED_ROLE]: PermissionsChangelog,\n [ACTIONS.DELETED_ROLE]: GenericDetails,\n};\n","import { t } from \"i18next\";\nimport { capitalize, snakeToCamelCase } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\n\nimport { DETAILS_COMPONENT_MAP } from \"./constants\";\nimport GenericDetails from \"./Details/Generic\";\n\nconst transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const transformLogsForTable = logs =>\n logs.map(\n ({\n id,\n key: action,\n metadata: { status, ...restOfMetadata },\n performer: { name: performedBy = \"\" },\n updatedAt: performedAt,\n }) => {\n const transformedAction = transformAction(action);\n const formattedPerformedAt = dateFormat.dateTime(performedAt);\n\n return {\n id,\n action: transformedAction,\n status: capitalize(status),\n performedAt: formattedPerformedAt,\n performedBy,\n additionalDetails: {\n ...restOfMetadata,\n action: transformedAction,\n performedAt: formattedPerformedAt,\n performedBy,\n status,\n },\n };\n }\n );\n\nexport const getColumnData = handleClick => [\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.action\", SINGULAR),\n key: \"action\",\n dataIndex: \"action\",\n render: (action, { additionalDetails }) => (\n <Button\n data-testid=\"action-link-button\"\n label={t(`neetoMolecules.auditLogs.actions.${action}`)}\n style=\"link\"\n onClick={() => handleClick(additionalDetails)}\n />\n ),\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.status\"),\n key: \"status\",\n dataIndex: \"status\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedBy\"),\n key: \"performedBy\",\n dataIndex: \"performedBy\",\n },\n {\n title: t(\"neetoMolecules.auditLogs.table.headers.performedAt\"),\n key: \"performedAt\",\n dataIndex: \"performedAt\",\n },\n];\n\nexport const getComponentForDetail = action =>\n DETAILS_COMPONENT_MAP[action] || GenericDetails;\n","import { _capitalize } from \"neetocist\";\nimport { Typography, Modal } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADDITIONAL_DETAILS_KEYS } from \"./constants\";\nimport LabelledDetail from \"./LabelledDetail\";\nimport { getComponentForDetail } from \"./utils\";\n\nconst AdditionalDetails = ({ additionalDetails, isOpen, onClose }) => {\n const { t } = useTranslation();\n\n const {\n message,\n action: defaultAction,\n performedBy,\n performedAt,\n via: product,\n ...details\n } = additionalDetails;\n\n const action =\n message || t(`neetoMolecules.auditLogs.actions.${defaultAction}`);\n\n const DetailComponent = getComponentForDetail(defaultAction);\n\n return (\n <Modal\n {...{ isOpen, onClose }}\n data-testid=\"additional-details-modal\"\n size=\"large\"\n >\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.auditLogs.additionalDetails.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <>\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.ACTION}\n value={action}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_BY}\n value={performedBy}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PERFORMED_AT}\n value={performedAt}\n />\n <LabelledDetail\n label={ADDITIONAL_DETAILS_KEYS.PRODUCT}\n value={_capitalize(product)}\n />\n <DetailComponent {...{ details }} />\n </>\n </Modal.Body>\n </Modal>\n );\n};\n\nexport default AdditionalDetails;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Table } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport TableWrapper from \"components/TableWrapper\";\n\nimport AdditionalDetails from \"./AddtionalDetails\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { transformLogsForTable, getColumnData } from \"./utils\";\n\nconst AuditLogs = () => {\n const [isAdditionalDetailsModalOpen, setIsAdditionalDetailsModalOpen] =\n useState(false);\n const [additionalDetails, setAdditionalDetails] = useState({});\n\n const { t } = useTranslation();\n\n const { page = DEFAULT_PAGE_INDEX } = useQueryParams();\n\n const {\n data: { auditLogs = [], totalCount = 0 } = {},\n isLoading,\n isFetching,\n } = useFetchAuditLogs({ params: { page } });\n\n const handleClick = additionalDetails => {\n setIsAdditionalDetailsModalOpen(true);\n setAdditionalDetails(additionalDetails);\n };\n\n const handleClose = () => {\n setIsAdditionalDetailsModalOpen(false);\n setAdditionalDetails({});\n };\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <PageLoader />\n </div>\n );\n }\n\n return (\n <Container>\n <Header title={t(\"neetoMolecules.auditLogs.title\")} />\n <TableWrapper\n className=\"mt-5\"\n hasPagination={totalCount > DEFAULT_PAGE_SIZE}\n >\n {isPresent(auditLogs) ? (\n <Table\n {...{ totalCount }}\n fixedHeight\n columnData={getColumnData(handleClick)}\n currentPageNumber={parseInt(page)}\n data-testid=\"audit-logs-table\"\n defaultPageSize={DEFAULT_PAGE_SIZE}\n enableColumnFreeze={false}\n loading={isFetching}\n rowData={transformLogsForTable(auditLogs)}\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData title={t(\"neetoMolecules.auditLogs.noData\")} />\n </div>\n )}\n </TableWrapper>\n <AdditionalDetails\n {...{ additionalDetails }}\n isOpen={isAdditionalDetailsModalOpen}\n onClose={handleClose}\n />\n </Container>\n );\n};\n\nexport default AuditLogs;\n"],"names":["LabelledDetail","_ref","label","value","_jsx","Typography","className","style","children","Trans","components","strong","i18nKey","concat","values","DATE_FORMATS","DETAILS_KEYS","AFFECTED_EMAIL","ERROR_MESSAGE","NAME","ORGANIZATION_ROLE","GENERIC_DETAILS","ADDED_PERMISSIONS","REMOVED_PERMISSIONS","EMAILS_TABLE_COLUMN_DATA","title","t","key","dataIndex","CHANGELOG_COLUMN_DATA","formatToFromValue","transformDateFormat","rawDateFormat","getFormattedValue","field","formatEmails","emails","map","email","formatChangeLog","changes","Object","entries","_ref2","_slicedToArray","_ref2$","from","to","formattedField","_humanize","getFullName","firstName","lastName","arguments","length","undefined","trim","getLabel","_ref3","organizationRole","formatPermissionsChangeLog","_ref4","transformPermissions","permissions","permission","humanizedParts","split","join","GenericChangelog","details","_useTranslation","useTranslation","_details$email","_details$changes","_details$errorMessage","errorMessage","status","_jsxs","isNotEmpty","Table","columnData","enableColumnFreeze","rowData","PermissionsChangelog","_details$description","description","_details$organization","_details$addedPermiss","addedPermissions","_details$removedPermi","removedPermissions","Emails","_details$emails","_Fragment","columns","loading","GenericDetails","_details$firstName","_details$lastName","name","JSON","stringify","AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","ADDITIONAL_DETAILS_KEYS","ACTION","PERFORMED_BY","PERFORMED_AT","PRODUCT","DETAILS_COMPONENT_MAP","_defineProperty","transformAction","action","snakeToCamelCase","replace","transformLogsForTable","logs","id","_ref$metadata","metadata","restOfMetadata","_objectWithoutProperties","_excluded","_ref$performer$name","performer","performedBy","performedAt","updatedAt","transformedAction","formattedPerformedAt","dateFormat","dateTime","capitalize","additionalDetails","_objectSpread","getColumnData","handleClick","SINGULAR","render","Button","onClick","getComponentForDetail","AdditionalDetails","isOpen","onClose","message","defaultAction","product","via","DetailComponent","Modal","size","Header","Body","_capitalize","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","_useState","useState","_useState2","isAdditionalDetailsModalOpen","setIsAdditionalDetailsModalOpen","_useState3","_useState4","setAdditionalDetails","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","totalCount","isLoading","isFetching","handleClose","PageLoader","Container","TableWrapper","hasPagination","DEFAULT_PAGE_SIZE","isPresent","fixedHeight","currentPageNumber","parseInt","defaultPageSize","NoData"],"mappings":"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"}
@@ -13,7 +13,7 @@ var reactI18next = require('react-i18next');
13
13
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
14
14
  var Delete = require('@bigbinary/neeto-icons/Delete');
15
15
  var Edit = require('@bigbinary/neeto-icons/Edit');
16
- var Reorder = require('@bigbinary/neeto-icons/Reorder');
16
+ var Drag = require('@bigbinary/neeto-icons/Drag');
17
17
  var jsxRuntime = require('react/jsx-runtime');
18
18
  var Modal = require('@bigbinary/neetoui/Modal');
19
19
  var Textarea = require('@bigbinary/neetoui/Textarea');
@@ -26,12 +26,12 @@ function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
26
26
  function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
27
27
  var DragHandle = function DragHandle(props) {
28
28
  return /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread$4(_objectSpread$4({
29
- className: "neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100",
29
+ className: "neeto-ui-text-gray-500 flex h-8 flex-shrink-0 cursor-grab items-center",
30
30
  "data-cy": "drag-handle",
31
31
  "data-testid": "drag-handle"
32
32
  }, props), {}, {
33
- children: /*#__PURE__*/jsxRuntime.jsx(Reorder, {
34
- size: 24,
33
+ children: /*#__PURE__*/jsxRuntime.jsx(Drag, {
34
+ size: 16,
35
35
  strokeWidth: 2
36
36
  })
37
37
  }));
@@ -332,7 +332,7 @@ var InputOption = function InputOption(_ref) {
332
332
  }, _objectSpread$1(_objectSpread$1({}, draggableProps), dragHandleProps)), {}, {
333
333
  "data-cy": "form-block-options",
334
334
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
335
- className: "nf-input-options group relative mb-2 flex items-center gap-2",
335
+ className: "nf-input-options group relative mb-2 flex items-start gap-1",
336
336
  children: [/*#__PURE__*/jsxRuntime.jsx(DragHandle, _objectSpread$1({}, dragHandleProps)), isPictureChoice && /*#__PURE__*/jsxRuntime.jsx(jsxRuntime.Fragment, {
337
337
  children: index === 0 ? /*#__PURE__*/jsxRuntime.jsx("img", {
338
338
  className: "neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover",
@@ -1 +1 @@
1
- {"version":3,"file":"OptionFields.js","sources":["../../src/components/OptionFields/DragHandle.jsx","../../src/components/OptionFields/BlockOption.jsx","../../src/components/OptionFields/BulkOptionModal.jsx","../../src/components/OptionFields/constants.js","../../src/components/OptionFields/utils.js","../../src/components/OptionFields/hooks/useOptionFields.js","../../src/components/OptionFields/InputOption.jsx","../../src/components/OptionFields/index.jsx"],"sourcesContent":["import { Reorder } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-400 absolute bottom-0 left-0 top-0 my-auto -ml-6 h-6 cursor-grab opacity-0 transition-opacity duration-300 ease-in-out group-hover:opacity-100\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Reorder size={24} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n id,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => handleDeleteClick({ index, id })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getOrderedVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useRef, useState } from \"react\";\n\nimport { isNotEmpty, findIndexById } from \"neetocist\";\nimport { pluck, append, assocPath, move, remove, isEmpty, prop } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n const editingOptionDetailsRef = useRef({ id: \"\", value: \"\" });\n\n const handleChange = (id, value, isOnBlur = false) => {\n // Ignores onBlur events if the value in the input field is not cleared.\n // The value will be reset to the initial value if user clicks outside after clearing the value.\n if (isOnBlur && !isEmpty(value)) return;\n\n const index = findIndexById(id, options);\n if (editingOptionDetailsRef.current.id !== id) {\n editingOptionDetailsRef.current = {\n id,\n value: options[index].label,\n };\n }\n\n // Resets the value to initial value if the user cleared and blurred the input field.\n const valueToUpdate = isOnBlur\n ? editingOptionDetailsRef.current.value\n : value;\n\n onChange(assocPath([index, \"label\"], valueToUpdate, options));\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = (_, id) => {\n let nextOptions;\n\n const indexToDelete = findIndexById(id, options);\n if (shouldDestroy) {\n nextOptions = assocPath([indexToDelete, \"deleted\"], true, options);\n } else {\n nextOptions = attachPosition(remove(indexToDelete, 1, options));\n }\n onChange(nextOptions);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const deletedOptions = options.filter(prop(\"deleted\"));\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position: options.length,\n };\n setShouldFocus(true);\n onChange(append(newOption, options));\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n id,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...{ ...draggableProps, ...dragHandleProps }}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-center gap-2\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onDelete({ index, id })}\n />\n )\n }\n onBlur={({ target }) => onChange(id, target.value, true)}\n onChange={({ target }) => onChange(id, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { slugify, noop } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getOrderedVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index, id }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index, id);\n };\n const orderedVisibleOptions = getOrderedVisibleOptions(options);\n const hideDeleteOption = orderedVisibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {orderedVisibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n dataKey={getUniqueOptionId(option)}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n id={option.id}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n id={option.id}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","_jsx","_objectSpread","className","children","Reorder","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","id","ref","_jsxs","Typography","style","Button","icon","Edit","tooltipProps","content","position","touch","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getOrderedVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","useOptionFields","shouldDestroy","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","editingOptionDetailsRef","useRef","handleChange","isOnBlur","isEmpty","findIndexById","current","valueToUpdate","assocPath","generateLabel","opts","count","labelCount","tempLabel","concat","isDuplicateLabel","pluck","includes","handleDelete","_","nextOptions","indexToDelete","remove","handleDragEnd","_ref2","source","destination","deletedOptions","filteredOptions","move","finalOptions","_toConsumableArray","handleAddOption","newOption","altId","append","handleBulkAddOption","newOptions","trim","split","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","_Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","name","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","orderedVisibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","_createElement","Draggable","dataKey","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
1
+ {"version":3,"file":"OptionFields.js","sources":["../../src/components/OptionFields/DragHandle.jsx","../../src/components/OptionFields/BlockOption.jsx","../../src/components/OptionFields/BulkOptionModal.jsx","../../src/components/OptionFields/constants.js","../../src/components/OptionFields/utils.js","../../src/components/OptionFields/hooks/useOptionFields.js","../../src/components/OptionFields/InputOption.jsx","../../src/components/OptionFields/index.jsx"],"sourcesContent":["import { Drag } from \"neetoicons\";\n\nconst DragHandle = props => (\n <div\n className=\"neeto-ui-text-gray-500 flex h-8 flex-shrink-0 cursor-grab items-center\"\n data-cy=\"drag-handle\"\n data-testid=\"drag-handle\"\n {...props}\n >\n <Drag size={16} strokeWidth={2} />\n </div>\n);\n\nexport default DragHandle;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Delete, Edit } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst BlockOption = withT(\n ({\n t,\n innerRef,\n hideDeleteOption = false,\n draggableProps,\n dragHandleProps,\n label,\n index,\n onEdit,\n handleDeleteClick,\n id,\n }) => (\n <div ref={innerRef} {...draggableProps} {...dragHandleProps}>\n <div\n className=\"neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out\"\n data-cy=\"address-field-block\"\n >\n <DragHandle {...dragHandleProps} />\n <Typography\n className=\"flex-grow leading-4\"\n data-cy=\"address-text-field\"\n data-testid=\"address-text-field\"\n style=\"body2\"\n >\n {label}\n </Typography>\n <div className=\"flex items-center justify-end gap-2 opacity-0 group-hover:opacity-100\">\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-edit-button\"\n data-testid=\"address-field-edit-button\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.edit\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onEdit(index)}\n />\n {!hideDeleteOption && (\n <Button\n className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-400 p-1\"\n data-cy=\"address-field-delete-button\"\n data-testid=\"address-field-delete-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => handleDeleteClick({ index, id })}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nexport default BlockOption;\n","import { useState } from \"react\";\n\nimport { Button, Modal, Textarea, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nconst BulkOptionModal = ({\n isOpen,\n onClose,\n handleBulkAdd,\n bulkAddHelpDocUrl,\n}) => {\n const { t } = useTranslation();\n const [optionsString, setOptionsString] = useState(\"\");\n\n const handleSave = () => {\n handleBulkAdd(optionsString);\n handleClose();\n };\n\n const handleClose = () => {\n setOptionsString(\"\");\n onClose();\n };\n\n return (\n <Modal {...{ isOpen }} onClose={handleClose}>\n <Modal.Header>\n <Typography style=\"h3\">\n {t(\"neetoMolecules.optionFields.bulkOption.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Textarea\n className=\"my-2\"\n data-cy=\"bulk-add-options-textarea\"\n data-testid=\"bulk-add-options-textarea\"\n label={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n placeholder={t(\"neetoMolecules.optionFields.bulkOption.label\")}\n rows={8}\n value={optionsString}\n helpText={\n <Trans\n i18nKey=\"neetoMolecules.optionFields.bulkOption.helpText\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={bulkAddHelpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n }\n onChange={e => setOptionsString(e.target.value)}\n />\n </Modal.Body>\n <Modal.Footer className=\"gap-x-2\">\n <Button\n data-cy=\"bulk-add-options-done-button\"\n data-testid=\"bulk-add-options-done-button\"\n label={t(\"neetoMolecules.common.actions.submit\")}\n onClick={handleSave}\n />\n <Button\n data-cy=\"bulk-add-options-cancel-button\"\n data-testid=\"bulk-add-options-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={handleClose}\n />\n </Modal.Footer>\n </Modal>\n );\n};\n\nexport default BulkOptionModal;\n","import i18next from \"i18next\";\n\nexport const DEFAULT_OPTION_LABEL = i18next.t(\n \"neetoMolecules.optionFields.defaultOption\"\n);\n","import { prop, reject } from \"ramda\";\n\nexport const getOrderedVisibleOptions = (options = []) =>\n options\n .filter(option => !option.deleted)\n .sort((a, b) => a.position - b.position);\n\nexport const filterDeletedRecords = reject(prop(\"deleted\"));\n\nexport const randomId = () => Math.random().toString(36).substring(2, 13);\n","import { useRef, useState } from \"react\";\n\nimport { isNotEmpty, findIndexById } from \"neetocist\";\nimport { pluck, append, assocPath, move, remove, isEmpty, prop } from \"ramda\";\n\nimport { DEFAULT_OPTION_LABEL } from \"../constants\";\nimport { filterDeletedRecords, randomId } from \"../utils\";\n\nconst attachPosition = options =>\n options.map((option, index) => ({ ...option, position: index }));\n\nconst useOptionFields = ({\n options,\n onChange,\n shouldDestroy,\n itemLabel = DEFAULT_OPTION_LABEL,\n}) => {\n const [shouldFocus, setShouldFocus] = useState(false);\n const editingOptionDetailsRef = useRef({ id: \"\", value: \"\" });\n\n const handleChange = (id, value, isOnBlur = false) => {\n // Ignores onBlur events if the value in the input field is not cleared.\n // The value will be reset to the initial value if user clicks outside after clearing the value.\n if (isOnBlur && !isEmpty(value)) return;\n\n const index = findIndexById(id, options);\n if (editingOptionDetailsRef.current.id !== id) {\n editingOptionDetailsRef.current = {\n id,\n value: options[index].label,\n };\n }\n\n // Resets the value to initial value if the user cleared and blurred the input field.\n const valueToUpdate = isOnBlur\n ? editingOptionDetailsRef.current.value\n : value;\n\n onChange(assocPath([index, \"label\"], valueToUpdate, options));\n };\n\n const generateLabel = (opts, count) => {\n const labelCount = count || opts.length + 1;\n const tempLabel = `${itemLabel} ${labelCount}`;\n const isDuplicateLabel = pluck(\"label\", opts).includes(tempLabel);\n\n return isDuplicateLabel ? generateLabel(opts, labelCount + 1) : tempLabel;\n };\n\n const handleDelete = (_, id) => {\n let nextOptions;\n\n const indexToDelete = findIndexById(id, options);\n if (shouldDestroy) {\n nextOptions = assocPath([indexToDelete, \"deleted\"], true, options);\n } else {\n nextOptions = attachPosition(remove(indexToDelete, 1, options));\n }\n onChange(nextOptions);\n };\n\n const handleDragEnd = ({ source, destination }) => {\n // When dragged outside of draggable\n if (destination === null) return;\n\n const deletedOptions = options.filter(prop(\"deleted\"));\n const filteredOptions = filterDeletedRecords(options);\n const nextOptions = move(source.index, destination.index, filteredOptions);\n const finalOptions = attachPosition(nextOptions);\n onChange([...deletedOptions, ...finalOptions]);\n };\n\n const handleAddOption = () => {\n const id = randomId();\n const newOption = {\n id: `draft-${id}`,\n altId: `alt-${id}`,\n label: generateLabel(options, null),\n position: options.length,\n };\n setShouldFocus(true);\n onChange(append(newOption, options));\n };\n\n const handleBulkAddOption = optionsString => {\n setShouldFocus(true);\n const position = filterDeletedRecords(options).length;\n const newOptions = optionsString\n .trim()\n .split(/\\r?\\n|,/)\n .filter(isNotEmpty)\n .map((option, index) => ({\n id: `draft-${randomId()}`,\n altId: `alt-${randomId()}`,\n label: option.trim(),\n position: position + index,\n }));\n onChange([...options, ...newOptions]);\n };\n\n const handleKeyDown = () => event => {\n if (event.key !== \"Enter\") return;\n const form = event.target.form;\n const inputs = Array.from(form.querySelectorAll(\"input\"));\n const currentInput = inputs.indexOf(event.target);\n\n if (currentInput >= inputs.length - 1) {\n handleAddOption();\n } else {\n inputs[currentInput + 1]?.focus();\n event.preventDefault();\n }\n event.stopPropagation();\n };\n\n return {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n };\n};\n\nexport default useOptionFields;\n","import { ImageUpload, Delete } from \"neetoicons\";\nimport { Button, Input, Textarea } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DragHandle from \"./DragHandle\";\n\nconst InputOption = ({\n shouldFocus,\n hideDeleteOption = false,\n innerRef,\n draggableProps,\n dragHandleProps,\n isPictureChoice,\n onKeyDown,\n onDelete,\n onChange,\n label,\n index,\n disabled,\n isTextArea,\n id,\n}) => {\n const { t } = useTranslation();\n\n const Component = isTextArea ? Textarea : Input;\n\n return (\n <div\n ref={innerRef}\n {...{ ...draggableProps, ...dragHandleProps }}\n data-cy=\"form-block-options\"\n >\n <div className=\"nf-input-options group relative mb-2 flex items-start gap-1\">\n <DragHandle {...dragHandleProps} />\n {isPictureChoice && (\n <>\n {index === 0 ? (\n <img\n className=\"neeto-ui-rounded-sm h-8 w-8 cursor-pointer overflow-hidden object-cover\"\n data-testid=\"picture-choice-option\"\n src=\"https://i.pravatar.cc/300\"\n />\n ) : (\n <div className=\"hover:neeto-ui-bg-gray-100 neeto-ui-border-primary-600 neeto-ui-text-primary-800 neeto-ui-rounded-sm flex h-8 w-8 cursor-pointer items-center justify-center border border-dashed transition-all duration-300 ease-in-out\">\n <ImageUpload size={16} />\n </div>\n )}\n </>\n )}\n <Component\n {...{ disabled }}\n autoFocus={shouldFocus}\n data-cy={`option-input-${index}`}\n data-testid={isTextArea ? \"textarea-option\" : \"input-option\"}\n placeholder={t(\"neetoMolecules.optionFields.optionName\")}\n value={label}\n suffix={\n !hideDeleteOption && (\n <Button\n {...{ disabled }}\n className=\"p-0.5\"\n data-cy={`delete-option-button-${index}`}\n data-testid=\"delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.delete\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n onClick={() => onDelete({ index, id })}\n />\n )\n }\n onBlur={({ target }) => onChange(id, target.value, true)}\n onChange={({ target }) => onChange(id, target.value)}\n onFocus={({ target }) => target.select()}\n onKeyDown={onKeyDown(index)}\n />\n </div>\n </div>\n );\n};\n\nexport default InputOption;\n","import { useState } from \"react\";\n\nimport { DragDropContext, Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { slugify, noop } from \"neetocist\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BlockOption from \"./BlockOption\";\nimport BulkOptionModal from \"./BulkOptionModal\";\nimport useOptionFields from \"./hooks/useOptionFields\";\nimport InputOption from \"./InputOption\";\nimport { getOrderedVisibleOptions } from \"./utils\";\n\nconst OptionFields = ({\n options,\n error,\n onChange,\n name,\n onDelete,\n itemLabel,\n onEdit = noop,\n buttonProps = {},\n minOptions = 0,\n draggable = false,\n editable = true,\n isPictureChoice = false,\n isTextArea = false,\n shouldDestroy = false,\n bulkActionProps = { enabled: false, bulkAddHelpDocUrl: \"\" },\n}) => {\n const { t } = useTranslation();\n const [isBulkOptionModalOpen, setIsBulkOptionModalOpen] = useState(false);\n\n const {\n shouldFocus,\n handleAddOption,\n handleBulkAddOption,\n handleChange,\n handleKeyDown,\n handleDelete,\n handleDragEnd,\n } = useOptionFields({\n options,\n onChange,\n shouldDestroy,\n itemLabel,\n });\n\n // Temporarily disables the modifications to options when changed are getting saved to server\n // This condition only needed for server id generated types\n let isEditable = true;\n if (shouldDestroy) {\n isEditable =\n options.every(prop(\"id\") || error) && !options.some(prop(\"_destroy\"));\n }\n\n const handleDeleteClick = ({ index, id }) => {\n const deleteFunction = onDelete ?? handleDelete;\n deleteFunction(index, id);\n };\n const orderedVisibleOptions = getOrderedVisibleOptions(options);\n const hideDeleteOption = orderedVisibleOptions.length <= minOptions;\n\n const getUniqueOptionId = option =>\n option.altId ||\n option.id?.toString() ||\n option.position?.toString() ||\n slugify(option.label);\n\n return (\n <form onSubmit={e => e.preventDefault()}>\n <DragDropContext onDragEnd={handleDragEnd}>\n <Droppable\n droppableId={`neeto-molecules-option-fields-${name}`}\n isDropDisabled={!draggable}\n >\n {({ innerRef, droppableProps, placeholder }) => (\n <div ref={innerRef} {...droppableProps}>\n {orderedVisibleOptions.map((option, index) => (\n <Draggable\n {...{ index }}\n dataKey={getUniqueOptionId(option)}\n draggableId={getUniqueOptionId(option)}\n isDragDisabled={!draggable}\n key={getUniqueOptionId(option)}\n >\n {({ innerRef, draggableProps, dragHandleProps }) =>\n editable ? (\n <InputOption\n {...{\n dragHandleProps,\n draggableProps,\n hideDeleteOption,\n index,\n innerRef,\n isPictureChoice,\n isTextArea,\n name,\n shouldFocus,\n }}\n disabled={!isEditable}\n id={option.id}\n label={option.label}\n onChange={handleChange}\n onDelete={handleDeleteClick}\n onKeyDown={handleKeyDown}\n />\n ) : (\n <BlockOption\n {...{\n dragHandleProps,\n draggableProps,\n handleDeleteClick,\n hideDeleteOption,\n index,\n innerRef,\n onEdit,\n }}\n id={option.id}\n label={option.label}\n />\n )\n }\n </Draggable>\n ))}\n {error && (\n <Typography\n className=\"neeto-ui-input__error\"\n data-testid=\"validation-error-container\"\n style=\"body3\"\n >\n {error}\n </Typography>\n )}\n {placeholder}\n </div>\n )}\n </Droppable>\n <div className=\"mt-4 flex items-center justify-between\">\n <Button\n data-cy=\"add-option-link\"\n data-testid=\"add-option-link\"\n disabled={!isEditable}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.optionFields.addOption\")}\n size=\"small\"\n style=\"link\"\n onClick={handleAddOption}\n {...buttonProps}\n />\n {bulkActionProps.enabled && (\n <Button\n data-cy=\"add-bulk-option-link\"\n data-testid=\"add-bulk-option-link\"\n disabled={!isEditable}\n label={t(\"neetoMolecules.optionFields.addBulk\")}\n size=\"small\"\n style=\"text\"\n onClick={() => setIsBulkOptionModalOpen(true)}\n />\n )}\n </div>\n </DragDropContext>\n <BulkOptionModal\n bulkAddHelpDocUrl={bulkActionProps.bulkAddHelpDocUrl}\n handleBulkAdd={handleBulkAddOption}\n isOpen={isBulkOptionModalOpen}\n onClose={() => setIsBulkOptionModalOpen(false)}\n />\n </form>\n );\n};\n\nOptionFields.propTypes = {\n /**\n * Props to be passed to the add option button\n */\n buttonProps: PropTypes.object,\n\n /**\n * Enable drag and drop functionality\n */\n draggable: PropTypes.bool,\n\n /**\n * Enable edit functionality\n */\n editable: PropTypes.bool,\n\n /**\n * Error message to be displayed\n */\n error: PropTypes.string,\n\n /**\n * The field name in Formik state.\n */\n name: PropTypes.string,\n\n /**\n * Function to handle option deletion\n */\n onDelete: PropTypes.func,\n\n /**\n * Function to handle option edit\n *\n */\n onEdit: PropTypes.func,\n\n /**\n * Minimum number of options required\n */\n minOptions: PropTypes.number,\n\n /**\n * Options array\n */\n options: PropTypes.array,\n\n /**\n * Prop to switch between Input and Textarea\n */\n isTextArea: PropTypes.bool,\n\n /**\n * Function to handle options change\n */\n onChange: PropTypes.func,\n\n /**\n * Prop to switch between PictureChoice and normal options\n * */\n isPictureChoice: PropTypes.bool,\n\n /**\n * Prop to destroy options\n * */\n shouldDestroy: PropTypes.bool,\n\n /**\n * Prop to set the item label\n * */\n\n itemLabel: PropTypes.string,\n\n /**\n * Props for bulk action\n */\n bulkActionProps: PropTypes.shape({\n enabled: PropTypes.bool,\n bulkAddHelpDocUrl: PropTypes.string,\n }),\n};\nexport default OptionFields;\n"],"names":["DragHandle","props","_jsx","_objectSpread","className","children","Drag","size","strokeWidth","BlockOption","withT","_ref","t","innerRef","_ref$hideDeleteOption","hideDeleteOption","draggableProps","dragHandleProps","label","index","onEdit","handleDeleteClick","id","ref","_jsxs","Typography","style","Button","icon","Edit","tooltipProps","content","position","touch","onClick","Delete","BulkOptionModal","isOpen","onClose","handleBulkAdd","bulkAddHelpDocUrl","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","optionsString","setOptionsString","handleSave","handleClose","Modal","Header","Body","Textarea","placeholder","rows","value","helpText","Trans","i18nKey","components","Link","href","target","onChange","e","Footer","DEFAULT_OPTION_LABEL","i18next","getOrderedVisibleOptions","options","arguments","length","undefined","filter","option","deleted","sort","a","b","filterDeletedRecords","reject","prop","randomId","Math","random","toString","substring","attachPosition","map","useOptionFields","shouldDestroy","_ref$itemLabel","itemLabel","shouldFocus","setShouldFocus","editingOptionDetailsRef","useRef","handleChange","isOnBlur","isEmpty","findIndexById","current","valueToUpdate","assocPath","generateLabel","opts","count","labelCount","tempLabel","concat","isDuplicateLabel","pluck","includes","handleDelete","_","nextOptions","indexToDelete","remove","handleDragEnd","_ref2","source","destination","deletedOptions","filteredOptions","move","finalOptions","_toConsumableArray","handleAddOption","newOption","altId","append","handleBulkAddOption","newOptions","trim","split","isNotEmpty","handleKeyDown","event","key","form","inputs","Array","from","querySelectorAll","currentInput","indexOf","_inputs","focus","preventDefault","stopPropagation","InputOption","isPictureChoice","onKeyDown","onDelete","disabled","isTextArea","Component","Input","_Fragment","src","ImageUpload","autoFocus","suffix","onBlur","_ref3","onFocus","_ref4","select","OptionFields","error","name","_ref$onEdit","noop","_ref$buttonProps","buttonProps","_ref$minOptions","minOptions","_ref$draggable","draggable","_ref$editable","editable","_ref$isPictureChoice","_ref$isTextArea","_ref$shouldDestroy","_ref$bulkActionProps","bulkActionProps","enabled","isBulkOptionModalOpen","setIsBulkOptionModalOpen","_useOptionFields","isEditable","every","some","deleteFunction","orderedVisibleOptions","getUniqueOptionId","_option$id","_option$position","slugify","onSubmit","DragDropContext","onDragEnd","Droppable","droppableId","isDropDisabled","droppableProps","_createElement","Draggable","dataKey","draggableId","isDragDisabled","Plus","iconPosition"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.9.5",
3
+ "version": "3.9.7",
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>",
@@ -361,7 +361,7 @@
361
361
  "performedBy": "<strong>Performed by:</strong> {{value, anyCase}}",
362
362
  "performedAt": "<strong>Performed at:</strong> {{value, anyCase}}",
363
363
  "product": "<strong>Product:</strong> {{value, anyCase}}",
364
- "changesMadeBy": "<strong>Changes made by:</strong> {{value, anyCase}}",
364
+ "affectedEmail": "<strong>Affected email:</strong> {{value, anyCase}}",
365
365
  "name": "<strong>New user name:</strong> {{value, anyCase}}",
366
366
  "organizationRole": "<strong>Organization role:</strong> {{value, anyCase}}",
367
367
  "addedPermissions": "<strong>Permissions added:</strong> {{value, anyCase}}",