@bigbinary/neeto-molecules 5.1.2 → 5.1.4
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 +3 -2
- package/dist/AuditLogs.js.map +1 -1
- package/dist/InlineInput.js +6 -1
- package/dist/InlineInput.js.map +1 -1
- package/dist/cjs/AuditLogs.js +3 -2
- package/dist/cjs/AuditLogs.js.map +1 -1
- package/dist/cjs/InlineInput.js +6 -1
- package/dist/cjs/InlineInput.js.map +1 -1
- package/dist/cjs/v2/AuditLogs.js +37 -21
- package/dist/cjs/v2/AuditLogs.js.map +1 -1
- package/dist/cjs/v2/InlineInput.js +6 -1
- package/dist/cjs/v2/InlineInput.js.map +1 -1
- package/dist/v2/AuditLogs.js +38 -22
- package/dist/v2/AuditLogs.js.map +1 -1
- package/dist/v2/InlineInput.js +6 -1
- package/dist/v2/InlineInput.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuditLogs.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/circle-user.js","../../../node_modules/lucide-react/dist/esm/icons/globe.js","../../../node_modules/lucide-react/dist/esm/icons/key.js","../../../node_modules/lucide-react/dist/esm/icons/user-cog.js","../../../node_modules/lucide-react/dist/esm/icons/user-minus.js","../../../node_modules/lucide-react/dist/esm/icons/user-plus.js","../../../src/v2/components/AuditLogs/constants.js","../../../src/v2/components/AuditLogs/Trans.jsx","../../../src/v2/components/AuditLogs/utils.jsx","../../../src/v2/components/AuditLogs/Card.jsx","../../../src/v2/components/AuditLogs/api.js","../../../src/v2/components/AuditLogs/useAuditLogsApi.js","../../../src/v2/components/AuditLogs/useCountriesApi.js","../../../src/v2/components/AuditLogs/usePermissionsApi.js","../../../src/v2/components/AuditLogs/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }],\n [\"path\", { d: \"M7 20.662V19a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v1.662\", key: \"154egf\" }]\n];\nconst CircleUser = createLucideIcon(\"circle-user\", __iconNode);\n\nexport { __iconNode, CircleUser as default };\n//# sourceMappingURL=circle-user.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20\", key: \"13o1zl\" }],\n [\"path\", { d: \"M2 12h20\", key: \"9i4pu4\" }]\n];\nconst Globe = createLucideIcon(\"globe\", __iconNode);\n\nexport { __iconNode, Globe as default };\n//# sourceMappingURL=globe.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4\", key: \"g0fldk\" }],\n [\"path\", { d: \"m21 2-9.6 9.6\", key: \"1j0ho8\" }],\n [\"circle\", { cx: \"7.5\", cy: \"15.5\", r: \"5.5\", key: \"yqb3hr\" }]\n];\nconst Key = createLucideIcon(\"key\", __iconNode);\n\nexport { __iconNode, Key as default };\n//# sourceMappingURL=key.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 15H6a4 4 0 0 0-4 4v2\", key: \"1nfge6\" }],\n [\"path\", { d: \"m14.305 16.53.923-.382\", key: \"1itpsq\" }],\n [\"path\", { d: \"m15.228 13.852-.923-.383\", key: \"eplpkm\" }],\n [\"path\", { d: \"m16.852 12.228-.383-.923\", key: \"13v3q0\" }],\n [\"path\", { d: \"m16.852 17.772-.383.924\", key: \"1i8mnm\" }],\n [\"path\", { d: \"m19.148 12.228.383-.923\", key: \"1q8j1v\" }],\n [\"path\", { d: \"m19.53 18.696-.382-.924\", key: \"vk1qj3\" }],\n [\"path\", { d: \"m20.772 13.852.924-.383\", key: \"n880s0\" }],\n [\"path\", { d: \"m20.772 16.148.924.383\", key: \"1g6xey\" }],\n [\"circle\", { cx: \"18\", cy: \"15\", r: \"3\", key: \"gjjjvw\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }]\n];\nconst UserCog = createLucideIcon(\"user-cog\", __iconNode);\n\nexport { __iconNode, UserCog as default };\n//# sourceMappingURL=user-cog.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\", key: \"1yyitq\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }],\n [\"line\", { x1: \"22\", x2: \"16\", y1: \"11\", y2: \"11\", key: \"1shjgl\" }]\n];\nconst UserMinus = createLucideIcon(\"user-minus\", __iconNode);\n\nexport { __iconNode, UserMinus as default };\n//# sourceMappingURL=user-minus.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\", key: \"1yyitq\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }],\n [\"line\", { x1: \"19\", x2: \"19\", y1: \"8\", y2: \"14\", key: \"1bvyxn\" }],\n [\"line\", { x1: \"22\", x2: \"16\", y1: \"11\", y2: \"11\", key: \"1shjgl\" }]\n];\nconst UserPlus = createLucideIcon(\"user-plus\", __iconNode);\n\nexport { __iconNode, UserPlus as default };\n//# sourceMappingURL=user-plus.js.map\n","import {\n CircleUser,\n Globe,\n Key,\n User,\n UserCog,\n UserMinus,\n UserPlus,\n} from \"lucide-react\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/v2/constants\";\nimport {\n Apple,\n GoogleCalendar,\n GoogleMeet,\n Outlook,\n Slack,\n Stripe,\n StripeTypeface,\n Teams,\n Twilio,\n Zoom,\n} from \"neetoicons/misc\";\nimport { indexBy, prop } from \"ramda\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\nexport const COUNTRIES_LIST_QUERY_KEY = \"countries-list\"; // Same key as that used in \"neeto-team-members\" for cache reuse.\nexport const PERMISSIONS_LIST_QUERY_KEY = \"neeto-team-members-permissions\"; // Same key as that used in \"neeto-team-members\" for cache reuse.\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 INTEGRATION_CONNECTED: \"integration.connected\",\n INTEGRATION_DISCONNECTED: \"integration.disconnected\",\n INTEGRATION_DISCONNECTED_BY_PROVIDER: \"integration.disconnectedByProvider\",\n CONNECTED_STRIPE_ACCOUNT: \"connectedStripeAccount\",\n DISCONNECTED_STRIPE_ACCOUNT: \"disconnectedStripeAccount\",\n CONNECTED_ZOOM_INTEGRATION: \"connectedZoomIntegration\",\n DISCONNECTED_ZOOM_INTEGRATION: \"disconnectedZoomIntegration\",\n CONNECTED_CUSTOM_DOMAIN: \"connectedCustomDomain\",\n CREATED_API_KEY: \"createdApiKey\",\n DELETED_API_KEY: \"deletedApiKey\",\n UPDATED_API_KEY: \"updatedApiKey\",\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 AUDIT_ICON_MAP = {\n [ACTIONS.INVITED_USERS]: CircleUser,\n [ACTIONS.USER_SIGNED_UP]: UserPlus,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserCog,\n [ACTIONS.CREATED_ROLE]: UserPlus,\n [ACTIONS.UPDATED_ROLE]: UserCog,\n [ACTIONS.DELETED_ROLE]: UserMinus,\n [ACTIONS.INTEGRATION_CONNECTED]: UserCog,\n [ACTIONS.INTEGRATION_DISCONNECTED]: UserCog,\n [ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER]: UserCog,\n [ACTIONS.CONNECTED_STRIPE_ACCOUNT]: StripeTypeface,\n [ACTIONS.DISCONNECTED_STRIPE_ACCOUNT]: Stripe,\n [ACTIONS.CONNECTED_ZOOM_INTEGRATION]: Zoom,\n [ACTIONS.DISCONNECTED_ZOOM_INTEGRATION]: Zoom,\n [ACTIONS.CONNECTED_CUSTOM_DOMAIN]: Globe,\n [ACTIONS.CREATED_API_KEY]: Key,\n [ACTIONS.DELETED_API_KEY]: Key,\n [ACTIONS.UPDATED_API_KEY]: Key,\n};\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n\nexport const LANGUAGE_OPTIONS_MAP = indexBy(prop(\"value\"), LANGUAGE_OPTIONS);\n\nexport const DATE_FORMAT_OPTIONS_MAP = {\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const FIELD_NAME_MAP = { organizationRole: \"role\" };\n\nexport const INTEGRATION_ICON_MAP = {\n google_calendar: GoogleCalendar,\n google_meet: GoogleMeet,\n icloud_calendar: Apple,\n outlook: Outlook,\n slack: Slack,\n teams: Teams,\n twilio: Twilio,\n zoom: Zoom,\n};\n\nexport const INTEGRATION_DISPLAY_NAME_MAP = {\n google_calendar: \"Google Calendar\",\n google_meet: \"Google Meet\",\n icloud_calendar: \"iCloud Calendar\",\n outlook: \"Outlook\",\n slack: \"Slack\",\n teams: \"Microsoft Teams\",\n twilio: \"Twilio\",\n zoom: \"Zoom\",\n};\n","import { globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { Trans as ReactTrans } from \"react-i18next\";\n\nconst Trans = ({\n i18nKey,\n additionalValues = {},\n additionalComponents = {},\n}) => (\n <ReactTrans\n {...{ i18nKey }}\n components={{\n Bold: <span className=\"font-semibold\" />,\n Code: (\n <code className=\"bg-muted/70 rounded px-1.5 py-px font-mono text-xs\" />\n ),\n Semibold: <span />,\n ...additionalComponents,\n }}\n values={{\n productSuffix: globalProps.appName,\n ...additionalValues,\n }}\n />\n);\n\nTrans.propTypes = {\n i18nKey: PropTypes.string.isRequired,\n additionalValues: PropTypes.object,\n additionalComponents: PropTypes.objectOf(PropTypes.element),\n};\n\nexport default Trans;\n","import { snakeToCamelCase, isNotEmpty, isPresent, humanize } from \"neetocist\";\nimport { identity, isEmpty, indexBy, omit, prop } from \"ramda\";\n\nimport {\n ACTIONS,\n DATE_FORMAT_OPTIONS_MAP,\n FIELD_NAME_MAP,\n INTEGRATION_DISPLAY_NAME_MAP,\n LANGUAGE_OPTIONS_MAP,\n} from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatFieldName = field => FIELD_NAME_MAP[field] || humanize(field);\n\nconst createFieldValueFormatter = ({ field, countriesMap }) => {\n switch (field) {\n case \"language\":\n return value => LANGUAGE_OPTIONS_MAP[value]?.label || value;\n case \"dateFormat\":\n return value => DATE_FORMAT_OPTIONS_MAP[value] || value;\n case \"countryIdentifier\":\n return value => countriesMap[value]?.name || value;\n default:\n return identity;\n }\n};\n\nconst formatChangedFields = ({ changes, countriesMap }) => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n const valueFormatter = createFieldValueFormatter({ field, countriesMap });\n let element;\n\n if (field === \"profileImage\") {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: formatFieldName(field) }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFields\"\n />\n </span>\n );\n } else if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: formatFieldName(field),\n from: valueFormatter(change.from),\n to: valueFormatter(change.to),\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\n additionalValues={{\n field: formatFieldName(field),\n to: valueFormatter(change.to),\n }}\n />\n </span>\n );\n }\n\n return index > 0\n ? [<span key={`sep-${field}`}>, </span>, element]\n : element;\n });\n\n return fields.flat();\n};\n\nexport const transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const constructAuditLogText = ({\n countriesMap = {},\n permissionsMap = {},\n action,\n performedBy,\n emails: emailsProp,\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n ...rest\n}) => {\n const emails = emailsProp ?? [];\n switch (action) {\n case ACTIONS.INVITED_USERS: {\n if (status === \"success\" && isNotEmpty(emails)) {\n const emailList = emails.join(\", \");\n\n return (\n <Trans\n additionalValues={{ performedBy, emailList }}\n i18nKey=\"neetoMolecules.auditLogs.text.invitedUsers\"\n />\n );\n }\n\n return (\n <Trans\n additionalValues={{ performedBy, errorMessage }}\n i18nKey=\"neetoMolecules.auditLogs.text.invitedUsersFailed\"\n />\n );\n }\n\n case ACTIONS.USER_SIGNED_UP: {\n const name = [firstName, lastName].filter(Boolean).join(\" \");\n const userIdentifier = name || organizationRole || email || \"User\";\n\n return (\n <Trans\n additionalValues={{ userIdentifier }}\n i18nKey=\"neetoMolecules.auditLogs.text.userSignedUp\"\n />\n );\n }\n\n case ACTIONS.UPDATED_USER: {\n const affectedUser = email || \"user\";\n const isUserDeactivated = changes?.active?.to === false;\n const otherChanges = isUserDeactivated\n ? omit([\"active\"], changes)\n : changes;\n\n const removedText = isUserDeactivated ? (\n <Trans\n additionalValues={{ performedBy, affectedUser }}\n i18nKey=\"neetoMolecules.auditLogs.text.removedUser\"\n />\n ) : null;\n\n if (isUserDeactivated && isEmpty(otherChanges)) return removedText;\n\n const changedFields = formatChangedFields({\n changes: otherChanges,\n countriesMap,\n });\n\n const updatedUserText = (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\n );\n\n return removedText ? (\n <>\n {removedText} {updatedUserText}\n </>\n ) : (\n updatedUserText\n );\n }\n\n case ACTIONS.BULK_UPDATE_USERS: {\n if (status === \"success\" && isNotEmpty(emails)) {\n const emailList = emails.join(\", \");\n\n return (\n <Trans\n additionalValues={{ performedBy, emailList, message }}\n i18nKey=\"neetoMolecules.auditLogs.text.bulkUpdateUsers\"\n />\n );\n }\n\n return (\n <Trans\n additionalValues={{ performedBy, errorMessage }}\n i18nKey=\"neetoMolecules.auditLogs.text.bulkUpdateUsersFailed\"\n />\n );\n }\n\n case ACTIONS.UPDATED_USER_PROFILE: {\n const changedFields = formatChangedFields({ changes, countriesMap });\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUserProfile\"\n />\n );\n }\n\n case ACTIONS.CREATED_ROLE: {\n const roleName = organizationRole || \"role\";\n\n return (\n <Trans\n additionalValues={{ performedBy, roleName }}\n i18nKey=\"neetoMolecules.auditLogs.text.createdRole\"\n />\n );\n }\n\n case ACTIONS.UPDATED_ROLE: {\n const { addedPermissions = [], removedPermissions = [], name } = rest;\n\n const permissionsToText = permissions =>\n permissions\n .map(\n permission =>\n permissionsMap[permission]?.description ||\n humanize(permission.split(\".\")[1])\n )\n .join(\", \");\n\n let i18nKey = \"neetoMolecules.auditLogs.text.updatedRole\";\n\n if (name) {\n i18nKey = \"neetoMolecules.auditLogs.text.updatedRoleName\";\n } else if (isPresent(addedPermissions) && isPresent(removedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.modifiedRolePermission\";\n } else if (isPresent(addedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.addedRolePermission\";\n } else if (isPresent(removedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.removedRolePermission\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n roleName: organizationRole || \"role\",\n name,\n addedPermissionsText: permissionsToText(addedPermissions),\n removedPermissionsText: permissionsToText(removedPermissions),\n addedPermissionsCount: addedPermissions.length,\n removedPermissionsCount: removedPermissions.length,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_CONNECTED: {\n const { integrationName: rawName, integrationOwner } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n let i18nKey;\n\n if (integrationOwner && detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationConnectedOnBehalf\";\n } else if (integrationOwner) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationConnectedOnBehalfWithoutDetail\";\n } else if (detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationConnected\";\n } else {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationConnectedWithoutDetail\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n integrationName,\n detail,\n integrationOwner,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_DISCONNECTED: {\n const { integrationName: rawName, integrationOwner } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n let i18nKey;\n\n if (integrationOwner && detail) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedOnBehalf\";\n } else if (integrationOwner) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedOnBehalfWithoutDetail\";\n } else if (detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationDisconnected\";\n } else {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedWithoutDetail\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n integrationName,\n detail,\n integrationOwner,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER: {\n const { integrationName: rawName } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n const i18nKey = detail\n ? \"neetoMolecules.auditLogs.text.integrationDisconnectedByProvider\"\n : \"neetoMolecules.auditLogs.text.integrationDisconnectedByProviderWithoutDetail\";\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{ performedBy, integrationName, detail }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_STRIPE_ACCOUNT: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedStripeAccount\"\n additionalValues={{\n performedBy,\n stripeAccountId: changes.stripeAccountId,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_STRIPE_ACCOUNT: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedStripeAccount\"\n />\n );\n }\n\n case ACTIONS.CONNECTED_ZOOM_INTEGRATION: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedZoomAccount\"\n additionalValues={{\n performedBy,\n zoomAccountId: changes.zoomAccountId,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_ZOOM_INTEGRATION: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedZoomAccount\"\n />\n );\n }\n\n case ACTIONS.CONNECTED_CUSTOM_DOMAIN: {\n return (\n <Trans\n additionalValues={{ performedBy, hostname: changes.hostname }}\n i18nKey=\"neetoMolecules.auditLogs.text.connectedCustomDomain\"\n />\n );\n }\n\n case ACTIONS.DELETED_ROLE: {\n const roleName = organizationRole || \"role\";\n\n return (\n <Trans\n additionalValues={{ performedBy, roleName }}\n i18nKey=\"neetoMolecules.auditLogs.text.deletedRole\"\n />\n );\n }\n\n case ACTIONS.CREATED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.createdApiKey\"\n />\n );\n }\n\n case ACTIONS.DELETED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.deletedApiKey\"\n />\n );\n }\n\n case ACTIONS.UPDATED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedApiKey\"\n />\n );\n }\n\n default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n\nexport const indexById = indexBy(prop(\"id\"));\n\nexport const indexByPermissionName = indexBy(prop(\"name\"));\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/v2/utils\";\n\nimport { ACTIONS, AUDIT_ICON_MAP, INTEGRATION_ICON_MAP } from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({\n auditLog,\n countriesMap,\n index,\n permissionsMap,\n totalCount,\n}) => {\n const { key, metadata, performer, updatedAt } = auditLog;\n\n const action = transformAction(key);\n const performedBy = performer?.name || \"\";\n const performedAt = dateFormat.dateTime(updatedAt);\n\n const auditText = constructAuditLogText({\n countriesMap,\n action,\n performedBy,\n permissionsMap,\n ...metadata,\n });\n\n const isIntegrationAction =\n action === ACTIONS.INTEGRATION_CONNECTED ||\n action === ACTIONS.INTEGRATION_DISCONNECTED ||\n action === ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER;\n\n const Icon = isIntegrationAction\n ? INTEGRATION_ICON_MAP[metadata?.integrationName] || AUDIT_ICON_MAP[action]\n : AUDIT_ICON_MAP[action];\n\n return (\n <div\n data-testid=\"audit-log-card\"\n className={classnames(\n \"border-border flex w-full items-start gap-x-3 border-r border-b border-l px-4 py-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"bg-muted mt-0.5 flex size-9 shrink-0 items-center justify-center rounded-full\">\n <Icon className=\"text-muted-foreground\" size={18} />\n </div>\n <div\n className=\"flex min-w-0 flex-col gap-y-1\"\n data-testid=\"audit-log-content\"\n >\n <Typography asChild variant=\"body2\">\n <span className=\"leading-snug\" data-testid=\"audit-log-text\">\n {auditText}\n </span>\n </Typography>\n <Typography asChild color=\"muted\" variant=\"nano\">\n <span data-testid=\"audit-log-timestamp\">{performedAt}</span>\n </Typography>\n </div>\n </div>\n );\n};\n\nexport default Card;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst fetchCountries = () => axios.get(\"neeto_team_members/profile/countries\");\n\nconst fetchPermissions = () => axios.get(\"neeto_team_members/permissions\");\n\nconst auditLogsApi = { fetchAuditLogs, fetchCountries, fetchPermissions };\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 { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/v2/constants\";\n\nimport auditLogsApi from \"./api\";\nimport { COUNTRIES_LIST_QUERY_KEY } from \"./constants\";\n\nexport const useFetchCountries = () =>\n useQuery({\n queryKey: [COUNTRIES_LIST_QUERY_KEY],\n queryFn: auditLogsApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n });\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/v2/constants\";\n\nimport auditLogsApi from \"./api\";\nimport { PERMISSIONS_LIST_QUERY_KEY } from \"./constants\";\n\nexport const useFetchPermissions = () =>\n useQuery({\n queryKey: [PERMISSIONS_LIST_QUERY_KEY],\n queryFn: auditLogsApi.fetchPermissions,\n staleTime: DEFAULT_STALE_TIME,\n });\n","import { useMemo } from \"react\";\n\nimport { Spinner, Typography, Pagination } from \"@bigbinary/neeto-atoms\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils/general\";\nimport propTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { useFetchCountries } from \"./useCountriesApi\";\nimport { useFetchPermissions } from \"./usePermissionsApi\";\nimport { indexById, indexByPermissionName } from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\n\nconst AuditLogsPagination = ({ count, pageNo, pageSize }) => {\n const history = useHistory();\n const { pathname } = useLocation();\n const queryParams = useQueryParams();\n\n const navigateToPage = page => {\n history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)));\n };\n\n return (\n <Pagination {...{ count, pageNo, pageSize }} navigate={navigateToPage} />\n );\n};\n\nconst AuditLogs = ({ headerProps, noDataHelpText, noDataTitle }) => {\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, pageSize: AUDIT_LOGS_PAGE_SIZE } });\n\n const { data: countriesData } = useFetchCountries();\n\n const { data: permissionsData } = useFetchPermissions();\n\n const countriesList = countriesData?.countries;\n const permissionsList = permissionsData?.permissions;\n\n const permissionsMap = useMemo(\n () => (permissionsList ? indexByPermissionName(permissionsList) : {}),\n [permissionsList]\n );\n\n const countriesMap = useMemo(\n () => (countriesList ? indexById(countriesList) : {}),\n [countriesList]\n );\n\n if (isLoading || isFetching) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container isHeaderFixed className=\"overflow-hidden\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full grow overflow-y-auto\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, countriesMap, index, permissionsMap }}\n key={auditLog.id}\n totalCount={auditLogs.length}\n />\n ))}\n </div>\n ) : (\n <div className=\"flex h-full w-full flex-col items-center justify-center gap-1 text-center\">\n <Typography variant=\"h3\" weight=\"semibold\">\n {noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n </Typography>\n {noDataHelpText && (\n <Typography asChild color=\"muted\" variant=\"body2\">\n <p>{noDataHelpText}</p>\n </Typography>\n )}\n </div>\n )}\n {totalCount > 0 && (\n <div className=\"flex w-full justify-end py-4\">\n <div className=\"w-auto\">\n <AuditLogsPagination\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\n />\n </div>\n </div>\n )}\n </Container>\n );\n};\n\nAuditLogs.propTypes = {\n /**\n * Props to be passed to the `Header` component.\n */\n headerProps: propTypes.object,\n /**\n * Help text to be displayed when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be displayed when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["__iconNode","createLucideIcon","AUDIT_LOGS_QUERY_KEY","COUNTRIES_LIST_QUERY_KEY","PERMISSIONS_LIST_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","INTEGRATION_CONNECTED","INTEGRATION_DISCONNECTED","INTEGRATION_DISCONNECTED_BY_PROVIDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","CREATED_API_KEY","DELETED_API_KEY","UPDATED_API_KEY","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","CircleUser","UserPlus","User","UserCog","UserMinus","StripeTypeface","Stripe","Zoom","Globe","Key","AUDIT_LOGS_PAGE_SIZE","LANGUAGE_OPTIONS_MAP","indexBy","prop","LANGUAGE_OPTIONS","DATE_FORMAT_OPTIONS_MAP","FIELD_NAME_MAP","organizationRole","INTEGRATION_ICON_MAP","google_calendar","GoogleCalendar","google_meet","GoogleMeet","icloud_calendar","Apple","outlook","Outlook","slack","Slack","teams","Teams","twilio","Twilio","zoom","INTEGRATION_DISPLAY_NAME_MAP","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Bold","className","Code","Semibold","values","productSuffix","globalProps","appName","formatFieldName","field","humanize","createFieldValueFormatter","countriesMap","value","_LANGUAGE_OPTIONS_MAP","label","_countriesMap$value","name","identity","formatChangedFields","_ref2","changes","fields","Object","keys","map","index","change","valueFormatter","element","children","isPresent","from","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","_ref3","_ref3$countriesMap","_ref3$permissionsMap","permissionsMap","performedBy","emailsProp","emails","firstName","lastName","email","_ref3$changes","status","message","errorMessage","rest","_objectWithoutProperties","_excluded","isNotEmpty","emailList","join","filter","Boolean","userIdentifier","_changes$active","affectedUser","isUserDeactivated","active","otherChanges","omit","removedText","isEmpty","changedFields","updatedUserText","ChangedFields","_Fragment","_jsxs","roleName","_rest$addedPermission","addedPermissions","_rest$removedPermissi","removedPermissions","permissionsToText","permissions","permission","_permissionsMap$permi","description","split","addedPermissionsText","removedPermissionsText","addedPermissionsCount","length","removedPermissionsCount","rawName","integrationName","integrationOwner","detail","stripeAccountId","zoomAccountId","hostname","indexById","indexByPermissionName","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","isIntegrationAction","Icon","classnames","size","Typography","asChild","variant","color","fetchAuditLogs","params","axios","get","fetchCountries","fetchPermissions","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","useFetchCountries","staleTime","DEFAULT_STALE_TIME","useFetchPermissions","AuditLogsPagination","count","pageNo","pageSize","history","useHistory","_useLocation","useLocation","pathname","queryParams","useQueryParams","navigateToPage","page","push","buildUrl","mergeLeft","Pagination","navigate","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","_useQueryParams$page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","_useFetchCountries","countriesData","_useFetchPermissions","permissionsData","countriesList","countries","permissionsList","useMemo","Spinner","Container","isHeaderFixed","Header","title","_createElement","id","weight","parseInt"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5]}
|
|
1
|
+
{"version":3,"file":"AuditLogs.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/circle-user.js","../../../node_modules/lucide-react/dist/esm/icons/globe.js","../../../node_modules/lucide-react/dist/esm/icons/key.js","../../../node_modules/lucide-react/dist/esm/icons/scroll-text.js","../../../node_modules/lucide-react/dist/esm/icons/user-cog.js","../../../node_modules/lucide-react/dist/esm/icons/user-minus.js","../../../node_modules/lucide-react/dist/esm/icons/user-plus.js","../../../src/v2/components/AuditLogs/constants.js","../../../src/v2/components/AuditLogs/Trans.jsx","../../../src/v2/components/AuditLogs/utils.jsx","../../../src/v2/components/AuditLogs/Card.jsx","../../../src/v2/components/AuditLogs/api.js","../../../src/v2/components/AuditLogs/useAuditLogsApi.js","../../../src/v2/components/AuditLogs/useCountriesApi.js","../../../src/v2/components/AuditLogs/usePermissionsApi.js","../../../src/v2/components/AuditLogs/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }],\n [\"path\", { d: \"M7 20.662V19a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v1.662\", key: \"154egf\" }]\n];\nconst CircleUser = createLucideIcon(\"circle-user\", __iconNode);\n\nexport { __iconNode, CircleUser as default };\n//# sourceMappingURL=circle-user.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"10\", key: \"1mglay\" }],\n [\"path\", { d: \"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20\", key: \"13o1zl\" }],\n [\"path\", { d: \"M2 12h20\", key: \"9i4pu4\" }]\n];\nconst Globe = createLucideIcon(\"globe\", __iconNode);\n\nexport { __iconNode, Globe as default };\n//# sourceMappingURL=globe.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4\", key: \"g0fldk\" }],\n [\"path\", { d: \"m21 2-9.6 9.6\", key: \"1j0ho8\" }],\n [\"circle\", { cx: \"7.5\", cy: \"15.5\", r: \"5.5\", key: \"yqb3hr\" }]\n];\nconst Key = createLucideIcon(\"key\", __iconNode);\n\nexport { __iconNode, Key as default };\n//# sourceMappingURL=key.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M15 12h-5\", key: \"r7krc0\" }],\n [\"path\", { d: \"M15 8h-5\", key: \"1khuty\" }],\n [\"path\", { d: \"M19 17V5a2 2 0 0 0-2-2H4\", key: \"zz82l3\" }],\n [\n \"path\",\n {\n d: \"M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3\",\n key: \"1ph1d7\"\n }\n ]\n];\nconst ScrollText = createLucideIcon(\"scroll-text\", __iconNode);\n\nexport { __iconNode, ScrollText as default };\n//# sourceMappingURL=scroll-text.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M10 15H6a4 4 0 0 0-4 4v2\", key: \"1nfge6\" }],\n [\"path\", { d: \"m14.305 16.53.923-.382\", key: \"1itpsq\" }],\n [\"path\", { d: \"m15.228 13.852-.923-.383\", key: \"eplpkm\" }],\n [\"path\", { d: \"m16.852 12.228-.383-.923\", key: \"13v3q0\" }],\n [\"path\", { d: \"m16.852 17.772-.383.924\", key: \"1i8mnm\" }],\n [\"path\", { d: \"m19.148 12.228.383-.923\", key: \"1q8j1v\" }],\n [\"path\", { d: \"m19.53 18.696-.382-.924\", key: \"vk1qj3\" }],\n [\"path\", { d: \"m20.772 13.852.924-.383\", key: \"n880s0\" }],\n [\"path\", { d: \"m20.772 16.148.924.383\", key: \"1g6xey\" }],\n [\"circle\", { cx: \"18\", cy: \"15\", r: \"3\", key: \"gjjjvw\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }]\n];\nconst UserCog = createLucideIcon(\"user-cog\", __iconNode);\n\nexport { __iconNode, UserCog as default };\n//# sourceMappingURL=user-cog.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\", key: \"1yyitq\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }],\n [\"line\", { x1: \"22\", x2: \"16\", y1: \"11\", y2: \"11\", key: \"1shjgl\" }]\n];\nconst UserMinus = createLucideIcon(\"user-minus\", __iconNode);\n\nexport { __iconNode, UserMinus as default };\n//# sourceMappingURL=user-minus.js.map\n","/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\", key: \"1yyitq\" }],\n [\"circle\", { cx: \"9\", cy: \"7\", r: \"4\", key: \"nufk8\" }],\n [\"line\", { x1: \"19\", x2: \"19\", y1: \"8\", y2: \"14\", key: \"1bvyxn\" }],\n [\"line\", { x1: \"22\", x2: \"16\", y1: \"11\", y2: \"11\", key: \"1shjgl\" }]\n];\nconst UserPlus = createLucideIcon(\"user-plus\", __iconNode);\n\nexport { __iconNode, UserPlus as default };\n//# sourceMappingURL=user-plus.js.map\n","import {\n CircleUser,\n Globe,\n Key,\n User,\n UserCog,\n UserMinus,\n UserPlus,\n} from \"lucide-react\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/v2/constants\";\nimport {\n Apple,\n GoogleCalendar,\n GoogleMeet,\n Outlook,\n Slack,\n Stripe,\n StripeTypeface,\n Teams,\n Twilio,\n Zoom,\n} from \"neetoicons/misc\";\nimport { indexBy, prop } from \"ramda\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\nexport const COUNTRIES_LIST_QUERY_KEY = \"countries-list\"; // Same key as that used in \"neeto-team-members\" for cache reuse.\nexport const PERMISSIONS_LIST_QUERY_KEY = \"neeto-team-members-permissions\"; // Same key as that used in \"neeto-team-members\" for cache reuse.\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 INTEGRATION_CONNECTED: \"integration.connected\",\n INTEGRATION_DISCONNECTED: \"integration.disconnected\",\n INTEGRATION_DISCONNECTED_BY_PROVIDER: \"integration.disconnectedByProvider\",\n CONNECTED_STRIPE_ACCOUNT: \"connectedStripeAccount\",\n DISCONNECTED_STRIPE_ACCOUNT: \"disconnectedStripeAccount\",\n CONNECTED_ZOOM_INTEGRATION: \"connectedZoomIntegration\",\n DISCONNECTED_ZOOM_INTEGRATION: \"disconnectedZoomIntegration\",\n CONNECTED_CUSTOM_DOMAIN: \"connectedCustomDomain\",\n CREATED_API_KEY: \"createdApiKey\",\n DELETED_API_KEY: \"deletedApiKey\",\n UPDATED_API_KEY: \"updatedApiKey\",\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 AUDIT_ICON_MAP = {\n [ACTIONS.INVITED_USERS]: CircleUser,\n [ACTIONS.USER_SIGNED_UP]: UserPlus,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserCog,\n [ACTIONS.CREATED_ROLE]: UserPlus,\n [ACTIONS.UPDATED_ROLE]: UserCog,\n [ACTIONS.DELETED_ROLE]: UserMinus,\n [ACTIONS.INTEGRATION_CONNECTED]: UserCog,\n [ACTIONS.INTEGRATION_DISCONNECTED]: UserCog,\n [ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER]: UserCog,\n [ACTIONS.CONNECTED_STRIPE_ACCOUNT]: StripeTypeface,\n [ACTIONS.DISCONNECTED_STRIPE_ACCOUNT]: Stripe,\n [ACTIONS.CONNECTED_ZOOM_INTEGRATION]: Zoom,\n [ACTIONS.DISCONNECTED_ZOOM_INTEGRATION]: Zoom,\n [ACTIONS.CONNECTED_CUSTOM_DOMAIN]: Globe,\n [ACTIONS.CREATED_API_KEY]: Key,\n [ACTIONS.DELETED_API_KEY]: Key,\n [ACTIONS.UPDATED_API_KEY]: Key,\n};\n\nexport const DEFAULT_AUDIT_ICON = User;\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n\nexport const LANGUAGE_OPTIONS_MAP = indexBy(prop(\"value\"), LANGUAGE_OPTIONS);\n\nexport const DATE_FORMAT_OPTIONS_MAP = {\n \"%m/%d/%Y\": \"MM/DD/YYYY\",\n \"%d/%m/%Y\": \"DD/MM/YYYY\",\n \"%Y/%m/%d\": \"YYYY/MM/DD\",\n};\n\nexport const FIELD_NAME_MAP = { organizationRole: \"role\" };\n\nexport const INTEGRATION_ICON_MAP = {\n google_calendar: GoogleCalendar,\n google_meet: GoogleMeet,\n icloud_calendar: Apple,\n outlook: Outlook,\n slack: Slack,\n teams: Teams,\n twilio: Twilio,\n zoom: Zoom,\n};\n\nexport const INTEGRATION_DISPLAY_NAME_MAP = {\n google_calendar: \"Google Calendar\",\n google_meet: \"Google Meet\",\n icloud_calendar: \"iCloud Calendar\",\n outlook: \"Outlook\",\n slack: \"Slack\",\n teams: \"Microsoft Teams\",\n twilio: \"Twilio\",\n zoom: \"Zoom\",\n};\n","import { globalProps } from \"neetocommons/v2/initializers\";\nimport PropTypes from \"prop-types\";\nimport { Trans as ReactTrans } from \"react-i18next\";\n\nconst Trans = ({\n i18nKey,\n additionalValues = {},\n additionalComponents = {},\n}) => (\n <ReactTrans\n {...{ i18nKey }}\n components={{\n Bold: <span className=\"font-semibold\" />,\n Code: (\n <code className=\"bg-muted/70 rounded px-1.5 py-px font-mono text-xs\" />\n ),\n Semibold: <span />,\n ...additionalComponents,\n }}\n values={{\n productSuffix: globalProps.appName,\n ...additionalValues,\n }}\n />\n);\n\nTrans.propTypes = {\n i18nKey: PropTypes.string.isRequired,\n additionalValues: PropTypes.object,\n additionalComponents: PropTypes.objectOf(PropTypes.element),\n};\n\nexport default Trans;\n","import { snakeToCamelCase, isNotEmpty, isPresent, humanize } from \"neetocist\";\nimport { identity, isEmpty, indexBy, omit, prop } from \"ramda\";\n\nimport {\n ACTIONS,\n DATE_FORMAT_OPTIONS_MAP,\n FIELD_NAME_MAP,\n INTEGRATION_DISPLAY_NAME_MAP,\n LANGUAGE_OPTIONS_MAP,\n} from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatFieldName = field => FIELD_NAME_MAP[field] || humanize(field);\n\nconst createFieldValueFormatter = ({ field, countriesMap }) => {\n switch (field) {\n case \"language\":\n return value => LANGUAGE_OPTIONS_MAP[value]?.label || value;\n case \"dateFormat\":\n return value => DATE_FORMAT_OPTIONS_MAP[value] || value;\n case \"countryIdentifier\":\n return value => countriesMap[value]?.name || value;\n default:\n return identity;\n }\n};\n\nconst formatChangedFields = ({ changes, countriesMap }) => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n const valueFormatter = createFieldValueFormatter({ field, countriesMap });\n let element;\n\n if (field === \"profileImage\") {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: formatFieldName(field) }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFields\"\n />\n </span>\n );\n } else if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: formatFieldName(field),\n from: valueFormatter(change.from),\n to: valueFormatter(change.to),\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\n additionalValues={{\n field: formatFieldName(field),\n to: valueFormatter(change.to),\n }}\n />\n </span>\n );\n }\n\n return index > 0\n ? [<span key={`sep-${field}`}>, </span>, element]\n : element;\n });\n\n return fields.flat();\n};\n\nexport const transformAction = action =>\n snakeToCamelCase(action.replace(\"audit_logs.organization.\", \"\"));\n\nexport const constructAuditLogText = ({\n countriesMap = {},\n permissionsMap = {},\n action,\n performedBy,\n emails: emailsProp,\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n ...rest\n}) => {\n const emails = emailsProp ?? [];\n switch (action) {\n case ACTIONS.INVITED_USERS: {\n if (status === \"success\" && isNotEmpty(emails)) {\n const emailList = emails.join(\", \");\n\n return (\n <Trans\n additionalValues={{ performedBy, emailList }}\n i18nKey=\"neetoMolecules.auditLogs.text.invitedUsers\"\n />\n );\n }\n\n return (\n <Trans\n additionalValues={{ performedBy, errorMessage }}\n i18nKey=\"neetoMolecules.auditLogs.text.invitedUsersFailed\"\n />\n );\n }\n\n case ACTIONS.USER_SIGNED_UP: {\n const name = [firstName, lastName].filter(Boolean).join(\" \");\n const userIdentifier = name || organizationRole || email || \"User\";\n\n return (\n <Trans\n additionalValues={{ userIdentifier }}\n i18nKey=\"neetoMolecules.auditLogs.text.userSignedUp\"\n />\n );\n }\n\n case ACTIONS.UPDATED_USER: {\n const affectedUser = email || \"user\";\n const isUserDeactivated = changes?.active?.to === false;\n const otherChanges = isUserDeactivated\n ? omit([\"active\"], changes)\n : changes;\n\n const removedText = isUserDeactivated ? (\n <Trans\n additionalValues={{ performedBy, affectedUser }}\n i18nKey=\"neetoMolecules.auditLogs.text.removedUser\"\n />\n ) : null;\n\n if (isUserDeactivated && isEmpty(otherChanges)) return removedText;\n\n const changedFields = formatChangedFields({\n changes: otherChanges,\n countriesMap,\n });\n\n const updatedUserText = (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\n );\n\n return removedText ? (\n <>\n {removedText} {updatedUserText}\n </>\n ) : (\n updatedUserText\n );\n }\n\n case ACTIONS.BULK_UPDATE_USERS: {\n if (status === \"success\" && isNotEmpty(emails)) {\n const emailList = emails.join(\", \");\n\n return (\n <Trans\n additionalValues={{ performedBy, emailList, message }}\n i18nKey=\"neetoMolecules.auditLogs.text.bulkUpdateUsers\"\n />\n );\n }\n\n return (\n <Trans\n additionalValues={{ performedBy, errorMessage }}\n i18nKey=\"neetoMolecules.auditLogs.text.bulkUpdateUsersFailed\"\n />\n );\n }\n\n case ACTIONS.UPDATED_USER_PROFILE: {\n const changedFields = formatChangedFields({ changes, countriesMap });\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUserProfile\"\n />\n );\n }\n\n case ACTIONS.CREATED_ROLE: {\n const roleName = organizationRole || \"role\";\n\n return (\n <Trans\n additionalValues={{ performedBy, roleName }}\n i18nKey=\"neetoMolecules.auditLogs.text.createdRole\"\n />\n );\n }\n\n case ACTIONS.UPDATED_ROLE: {\n const { addedPermissions = [], removedPermissions = [], name } = rest;\n\n const permissionsToText = permissions =>\n permissions\n .map(\n permission =>\n permissionsMap[permission]?.description ||\n humanize(permission.split(\".\")[1])\n )\n .join(\", \");\n\n let i18nKey = \"neetoMolecules.auditLogs.text.updatedRole\";\n\n if (name) {\n i18nKey = \"neetoMolecules.auditLogs.text.updatedRoleName\";\n } else if (isPresent(addedPermissions) && isPresent(removedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.modifiedRolePermission\";\n } else if (isPresent(addedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.addedRolePermission\";\n } else if (isPresent(removedPermissions)) {\n i18nKey = \"neetoMolecules.auditLogs.text.removedRolePermission\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n roleName: organizationRole || \"role\",\n name,\n addedPermissionsText: permissionsToText(addedPermissions),\n removedPermissionsText: permissionsToText(removedPermissions),\n addedPermissionsCount: addedPermissions.length,\n removedPermissionsCount: removedPermissions.length,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_CONNECTED: {\n const { integrationName: rawName, integrationOwner } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n let i18nKey;\n\n if (integrationOwner && detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationConnectedOnBehalf\";\n } else if (integrationOwner) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationConnectedOnBehalfWithoutDetail\";\n } else if (detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationConnected\";\n } else {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationConnectedWithoutDetail\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n integrationName,\n detail,\n integrationOwner,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_DISCONNECTED: {\n const { integrationName: rawName, integrationOwner } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n let i18nKey;\n\n if (integrationOwner && detail) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedOnBehalf\";\n } else if (integrationOwner) {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedOnBehalfWithoutDetail\";\n } else if (detail) {\n i18nKey = \"neetoMolecules.auditLogs.text.integrationDisconnected\";\n } else {\n i18nKey =\n \"neetoMolecules.auditLogs.text.integrationDisconnectedWithoutDetail\";\n }\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{\n performedBy,\n integrationName,\n detail,\n integrationOwner,\n }}\n />\n );\n }\n\n case ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER: {\n const { integrationName: rawName } = rest;\n const integrationName =\n INTEGRATION_DISPLAY_NAME_MAP[rawName] || humanize(rawName);\n const detail = changes?.detail;\n const i18nKey = detail\n ? \"neetoMolecules.auditLogs.text.integrationDisconnectedByProvider\"\n : \"neetoMolecules.auditLogs.text.integrationDisconnectedByProviderWithoutDetail\";\n\n return (\n <Trans\n {...{ i18nKey }}\n additionalValues={{ performedBy, integrationName, detail }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_STRIPE_ACCOUNT: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedStripeAccount\"\n additionalValues={{\n performedBy,\n stripeAccountId: changes.stripeAccountId,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_STRIPE_ACCOUNT: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedStripeAccount\"\n />\n );\n }\n\n case ACTIONS.CONNECTED_ZOOM_INTEGRATION: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedZoomAccount\"\n additionalValues={{\n performedBy,\n zoomAccountId: changes.zoomAccountId,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_ZOOM_INTEGRATION: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedZoomAccount\"\n />\n );\n }\n\n case ACTIONS.CONNECTED_CUSTOM_DOMAIN: {\n return (\n <Trans\n additionalValues={{ performedBy, hostname: changes.hostname }}\n i18nKey=\"neetoMolecules.auditLogs.text.connectedCustomDomain\"\n />\n );\n }\n\n case ACTIONS.DELETED_ROLE: {\n const roleName = organizationRole || \"role\";\n\n return (\n <Trans\n additionalValues={{ performedBy, roleName }}\n i18nKey=\"neetoMolecules.auditLogs.text.deletedRole\"\n />\n );\n }\n\n case ACTIONS.CREATED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.createdApiKey\"\n />\n );\n }\n\n case ACTIONS.DELETED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.deletedApiKey\"\n />\n );\n }\n\n case ACTIONS.UPDATED_API_KEY: {\n return (\n <Trans\n additionalValues={{ performedBy, ...rest }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedApiKey\"\n />\n );\n }\n\n default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n\nexport const indexById = indexBy(prop(\"id\"));\n\nexport const indexByPermissionName = indexBy(prop(\"name\"));\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/v2/utils\";\n\nimport {\n ACTIONS,\n AUDIT_ICON_MAP,\n DEFAULT_AUDIT_ICON,\n INTEGRATION_ICON_MAP,\n} from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({\n auditLog,\n countriesMap,\n index,\n permissionsMap,\n totalCount,\n}) => {\n const { key, metadata, performer, updatedAt } = auditLog;\n\n const action = transformAction(key);\n const performedBy = performer?.name || \"\";\n const performedAt = dateFormat.dateTime(updatedAt);\n\n const auditText = constructAuditLogText({\n countriesMap,\n action,\n performedBy,\n permissionsMap,\n ...metadata,\n });\n\n const isIntegrationAction =\n action === ACTIONS.INTEGRATION_CONNECTED ||\n action === ACTIONS.INTEGRATION_DISCONNECTED ||\n action === ACTIONS.INTEGRATION_DISCONNECTED_BY_PROVIDER;\n\n const Icon =\n (isIntegrationAction\n ? INTEGRATION_ICON_MAP[metadata?.integrationName] ||\n AUDIT_ICON_MAP[action]\n : AUDIT_ICON_MAP[action]) || DEFAULT_AUDIT_ICON;\n\n return (\n <div\n data-testid=\"audit-log-card\"\n className={classnames(\n \"border-border flex w-full items-start gap-x-3 border-r border-b border-l px-4 py-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"bg-muted mt-0.5 flex size-9 shrink-0 items-center justify-center rounded-full\">\n <Icon className=\"text-muted-foreground\" size={18} />\n </div>\n <div\n className=\"flex min-w-0 flex-col gap-y-1\"\n data-testid=\"audit-log-content\"\n >\n <Typography asChild variant=\"body2\">\n <span className=\"leading-snug\" data-testid=\"audit-log-text\">\n {auditText}\n </span>\n </Typography>\n <Typography asChild color=\"muted\" variant=\"nano\">\n <span data-testid=\"audit-log-timestamp\">{performedAt}</span>\n </Typography>\n </div>\n </div>\n );\n};\n\nexport default Card;\n","import axios from \"axios\";\n\nconst fetchAuditLogs = params => axios.get(\"api/v1/audit_logs\", { params });\n\nconst fetchCountries = () => axios.get(\"neeto_team_members/profile/countries\");\n\nconst fetchPermissions = () => axios.get(\"neeto_team_members/permissions\");\n\nconst auditLogsApi = { fetchAuditLogs, fetchCountries, fetchPermissions };\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 { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/v2/constants\";\n\nimport auditLogsApi from \"./api\";\nimport { COUNTRIES_LIST_QUERY_KEY } from \"./constants\";\n\nexport const useFetchCountries = () =>\n useQuery({\n queryKey: [COUNTRIES_LIST_QUERY_KEY],\n queryFn: auditLogsApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n });\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/v2/constants\";\n\nimport auditLogsApi from \"./api\";\nimport { PERMISSIONS_LIST_QUERY_KEY } from \"./constants\";\n\nexport const useFetchPermissions = () =>\n useQuery({\n queryKey: [PERMISSIONS_LIST_QUERY_KEY],\n queryFn: auditLogsApi.fetchPermissions,\n staleTime: DEFAULT_STALE_TIME,\n });\n","import { useMemo } from \"react\";\n\nimport { Empty, Spinner, Pagination } from \"@bigbinary/neeto-atoms\";\nimport { ScrollText } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/v2/constants\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { buildUrl } from \"neetocommons/v2/utils/general\";\nimport propTypes from \"prop-types\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory, useLocation } from \"react-router-dom\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\nimport { useFetchCountries } from \"./useCountriesApi\";\nimport { useFetchPermissions } from \"./usePermissionsApi\";\nimport { indexById, indexByPermissionName } from \"./utils\";\n\nimport Container from \"../Container\";\nimport Header from \"../Header\";\n\nconst AuditLogsPagination = ({ count, pageNo, pageSize }) => {\n const history = useHistory();\n const { pathname } = useLocation();\n const queryParams = useQueryParams();\n\n const navigateToPage = page => {\n history.push(buildUrl(pathname, mergeLeft({ page }, queryParams)));\n };\n\n return (\n <Pagination {...{ count, pageNo, pageSize }} navigate={navigateToPage} />\n );\n};\n\nconst AuditLogs = ({ headerProps, noDataHelpText, noDataTitle }) => {\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, pageSize: AUDIT_LOGS_PAGE_SIZE } });\n\n const { data: countriesData } = useFetchCountries();\n\n const { data: permissionsData } = useFetchPermissions();\n\n const countriesList = countriesData?.countries;\n const permissionsList = permissionsData?.permissions;\n\n const permissionsMap = useMemo(\n () => (permissionsList ? indexByPermissionName(permissionsList) : {}),\n [permissionsList]\n );\n\n const countriesMap = useMemo(\n () => (countriesList ? indexById(countriesList) : {}),\n [countriesList]\n );\n\n if (isLoading || isFetching) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Container isHeaderFixed className=\"overflow-hidden\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full grow overflow-y-auto\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, countriesMap, index, permissionsMap }}\n key={auditLog.id}\n totalCount={auditLogs.length}\n />\n ))}\n </div>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty\n description={noDataHelpText}\n icon={ScrollText}\n title={noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n />\n </div>\n )}\n {totalCount > 0 && (\n <div className=\"flex w-full justify-end py-4\">\n <div className=\"w-auto\">\n <AuditLogsPagination\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\n />\n </div>\n </div>\n )}\n </Container>\n );\n};\n\nAuditLogs.propTypes = {\n /**\n * Props to be passed to the `Header` component.\n */\n headerProps: propTypes.object,\n /**\n * Help text to be displayed when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be displayed when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["__iconNode","createLucideIcon","AUDIT_LOGS_QUERY_KEY","COUNTRIES_LIST_QUERY_KEY","PERMISSIONS_LIST_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","INTEGRATION_CONNECTED","INTEGRATION_DISCONNECTED","INTEGRATION_DISCONNECTED_BY_PROVIDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","CREATED_API_KEY","DELETED_API_KEY","UPDATED_API_KEY","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","CircleUser","UserPlus","User","UserCog","UserMinus","StripeTypeface","Stripe","Zoom","Globe","Key","DEFAULT_AUDIT_ICON","AUDIT_LOGS_PAGE_SIZE","LANGUAGE_OPTIONS_MAP","indexBy","prop","LANGUAGE_OPTIONS","DATE_FORMAT_OPTIONS_MAP","FIELD_NAME_MAP","organizationRole","INTEGRATION_ICON_MAP","google_calendar","GoogleCalendar","google_meet","GoogleMeet","icloud_calendar","Apple","outlook","Outlook","slack","Slack","teams","Teams","twilio","Twilio","zoom","INTEGRATION_DISPLAY_NAME_MAP","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Bold","className","Code","Semibold","values","productSuffix","globalProps","appName","formatFieldName","field","humanize","createFieldValueFormatter","countriesMap","value","_LANGUAGE_OPTIONS_MAP","label","_countriesMap$value","name","identity","formatChangedFields","_ref2","changes","fields","Object","keys","map","index","change","valueFormatter","element","children","isPresent","from","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","_ref3","_ref3$countriesMap","_ref3$permissionsMap","permissionsMap","performedBy","emailsProp","emails","firstName","lastName","email","_ref3$changes","status","message","errorMessage","rest","_objectWithoutProperties","_excluded","isNotEmpty","emailList","join","filter","Boolean","userIdentifier","_changes$active","affectedUser","isUserDeactivated","active","otherChanges","omit","removedText","isEmpty","changedFields","updatedUserText","ChangedFields","_Fragment","_jsxs","roleName","_rest$addedPermission","addedPermissions","_rest$removedPermissi","removedPermissions","permissionsToText","permissions","permission","_permissionsMap$permi","description","split","addedPermissionsText","removedPermissionsText","addedPermissionsCount","length","removedPermissionsCount","rawName","integrationName","integrationOwner","detail","stripeAccountId","zoomAccountId","hostname","indexById","indexByPermissionName","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","isIntegrationAction","Icon","classnames","size","Typography","asChild","variant","color","fetchAuditLogs","params","axios","get","fetchCountries","fetchPermissions","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","useFetchCountries","staleTime","DEFAULT_STALE_TIME","useFetchPermissions","AuditLogsPagination","count","pageNo","pageSize","history","useHistory","_useLocation","useLocation","pathname","queryParams","useQueryParams","navigateToPage","page","push","buildUrl","mergeLeft","Pagination","navigate","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","_useQueryParams$page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","_useFetchCountries","countriesData","_useFetchPermissions","permissionsData","countriesList","countries","permissionsList","useMemo","Spinner","Container","isHeaderFixed","Header","title","_createElement","id","Empty","icon","ScrollText","parseInt"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}
|
|
@@ -113,6 +113,7 @@ var InlineInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
113
113
|
setInternalValue = _useStateWithDependen2[1];
|
|
114
114
|
var inputRef = React.useRef(null);
|
|
115
115
|
var inputWrapperRef = React.useRef(null);
|
|
116
|
+
var wasSubmittingRef = React.useRef(isSubmitting);
|
|
116
117
|
var trimmedValue = internalValue.trim();
|
|
117
118
|
var isValidValue = nullable || neetoCist.isNotEmpty(trimmedValue) && ramda.isNotNil(trimmedValue);
|
|
118
119
|
var isDirty = internalValue !== value || dirty;
|
|
@@ -178,7 +179,11 @@ var InlineInput = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
178
179
|
mergeRefs(inputRef, closeRef, submitRef)(inputElement);
|
|
179
180
|
}, [multiline]);
|
|
180
181
|
React.useEffect(function () {
|
|
181
|
-
|
|
182
|
+
if (wasSubmittingRef.current && !isSubmitting) {
|
|
183
|
+
var _inputRef$current;
|
|
184
|
+
(_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
|
|
185
|
+
}
|
|
186
|
+
wasSubmittingRef.current = isSubmitting;
|
|
182
187
|
}, [isSubmitting]);
|
|
183
188
|
var suffixContent = /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
184
189
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Tooltip, _objectSpread$1(_objectSpread$1({}, TOOLTIP_PROPS.save), {}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InlineInput.js","sources":["../../../src/v2/components/InlineInput/constants.js","../../../src/v2/components/InlineInput/utils.js","../../../src/v2/components/InlineInput/InlineInput.jsx","../../../src/v2/components/InlineInput/FormikInlineInput.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TOOLTIP_PROPS = {\n save: {\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n delay: 300,\n },\n cancel: {\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n delay: 300,\n },\n};\n\nexport const BUTTON_SIZE_BY_INPUT_SIZE = {\n small: \"icon-xs\",\n medium: \"icon-sm\",\n large: \"icon\",\n};\n\n// Used only when `textClassName` is set, to keep size baseline while letting\n// the box grow with bigger fonts. Mirrors atoms Input's h-* per size.\nexport const INPUT_MIN_HEIGHT_BY_SIZE = {\n small: \"min-h-8 md:min-h-7\",\n medium: \"min-h-8\",\n large: \"min-h-10\",\n};\n\n// Descendant selector targeting the inner <textarea> (atoms applies its own\n// min-h-20/28 directly to the element; consumer className lands on outer div).\nexport const TEXTAREA_DESCENDANT_MIN_H_BY_SIZE = {\n small: \"[&_textarea]:!min-h-8 md:[&_textarea]:!min-h-7\",\n medium: \"[&_textarea]:!min-h-8\",\n large: \"[&_textarea]:!min-h-10\",\n};\n","export const mergeRefs =\n (...refs) =>\n node =>\n refs.forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import {\n forwardRef,\n useEffect,\n useLayoutEffect,\n useState,\n useRef,\n} from \"react\";\n\nimport { Button, Input, Textarea, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Check, X } from \"lucide-react\";\nimport { isNotEmpty, noop } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useStateWithDependency from \"neetocommons/v2/react-utils/useStateWithDependency\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n BUTTON_SIZE_BY_INPUT_SIZE,\n INPUT_MIN_HEIGHT_BY_SIZE,\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE,\n TOOLTIP_PROPS,\n} from \"./constants\";\nimport { mergeRefs } from \"./utils\";\n\nconst InlineInput = forwardRef((props, ref) => {\n const { t } = useTranslation();\n const {\n saveOnBlur = false,\n clearOnSave = false,\n nullable = false,\n value = \"\",\n isSaving,\n className = \"\",\n handleSubmit = noop,\n handleCancel = noop,\n submitButtonProps = {},\n cancelButtonProps = {},\n dirty,\n onInlineInputBlur = noop,\n size = \"medium\",\n multiline = false,\n textClassName = \"\",\n ...otherProps\n } = props;\n\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [internalValue, setInternalValue] = useStateWithDependency(\n String(value ?? \"\")\n );\n const inputRef = useRef(null);\n const inputWrapperRef = useRef(null);\n const trimmedValue = internalValue.trim();\n const isValidValue =\n nullable || (isNotEmpty(trimmedValue) && isNotNil(trimmedValue));\n\n const isDirty = internalValue !== value || dirty;\n const saveDisabled =\n !isValidValue ||\n isSubmitting ||\n isSaving ||\n submitButtonProps.disabled ||\n !isDirty;\n\n const buttonSize = BUTTON_SIZE_BY_INPUT_SIZE[size] ?? \"icon\";\n const hasCustomText = isNotEmpty(textClassName);\n const inputMinHeight =\n INPUT_MIN_HEIGHT_BY_SIZE[size] ?? INPUT_MIN_HEIGHT_BY_SIZE.medium;\n\n const textareaDescendantMinH =\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE[size] ??\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE.medium;\n\n const handleFocusOut = () => {\n if (!isValidValue || isSubmitting) return;\n\n onInlineInputBlur(trimmedValue);\n\n if (saveOnBlur && isDirty) {\n onSubmit();\n\n return;\n }\n\n onCancel();\n };\n\n useOnClickOutside(inputWrapperRef, handleFocusOut);\n\n const onSubmit = async () => {\n setIsSubmitting(true);\n try {\n await handleSubmit(trimmedValue);\n clearOnSave && setInternalValue(\"\");\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const onCancel = () => {\n handleCancel(trimmedValue);\n };\n\n const closeRef = useHotkeys(\n \"escape\",\n event => {\n event.stopPropagation();\n onCancel();\n },\n { mode: \"scoped\" }\n );\n\n const submitHotkey = multiline\n ? \"command+return\"\n : [\"command+return\", \"return\"];\n\n const submitRef = useHotkeys(submitHotkey, () => onSubmit(), {\n mode: \"scoped\",\n enabled: isValidValue,\n });\n\n useLayoutEffect(() => {\n const selector = multiline ? \"textarea\" : \"input\";\n const inputElement = inputWrapperRef.current?.querySelector(selector);\n mergeRefs(inputRef, closeRef, submitRef)(inputElement);\n }, [multiline]);\n\n useEffect(() => inputRef.current && inputRef.current.focus(), [isSubmitting]);\n\n const suffixContent = (\n <>\n <Tooltip {...TOOLTIP_PROPS.save}>\n <Button\n aria-label={t(\"neetoMolecules.common.actions.save\")}\n data-testid=\"neeto-molecules-autosave-input-save\"\n icon={Check}\n loading={isSubmitting || isSaving}\n size={buttonSize}\n variant=\"ghost\"\n onClick={onSubmit}\n {...submitButtonProps}\n disabled={saveDisabled}\n />\n </Tooltip>\n <Tooltip {...TOOLTIP_PROPS.cancel}>\n <Button\n {...{ ref }}\n aria-label={t(\"neetoMolecules.common.actions.cancel\")}\n data-testid=\"neeto-molecules-autosave-input-cancel\"\n icon={X}\n size={buttonSize}\n variant=\"ghost\"\n onClick={onCancel}\n {...cancelButtonProps}\n disabled={isSubmitting || isSaving || cancelButtonProps.disabled}\n />\n </Tooltip>\n </>\n );\n\n const wrapperClassName = classnames(\n \"flex flex-grow\",\n \"[&_[data-slot=input-group-addon]>span]:!gap-0.5 [&_[data-slot=input-group-addon]>span]:!text-foreground\",\n {\n [className]: className,\n [textClassName]: hasCustomText,\n \"[&_input]:![font-size:inherit] [&_input]:![font-weight:inherit] [&_input]:![font-family:inherit] [&_input]:![line-height:inherit]\":\n hasCustomText && !multiline,\n \"[&_textarea]:![field-sizing:content] [&_textarea]:![font-size:inherit] [&_textarea]:![font-weight:inherit] [&_textarea]:![font-family:inherit] [&_textarea]:![line-height:inherit]\":\n hasCustomText && multiline,\n },\n hasCustomText && multiline && textareaDescendantMinH\n );\n\n const inputCustomClassName =\n hasCustomText && !multiline\n ? classnames(\"h-auto py-1.5\", inputMinHeight)\n : \"\";\n\n const inheritFontStyle = hasCustomText\n ? {\n fontSize: \"inherit\",\n fontWeight: \"inherit\",\n fontFamily: \"inherit\",\n lineHeight: \"inherit\",\n }\n : undefined;\n\n const SharedProps = {\n \"aria-label\": t(\"neetoMolecules.inlineInput.editableField\"),\n \"data-testid\": \"neeto-molecules-autosave-input\",\n disabled: isSubmitting,\n disableTrimOnBlur: true,\n size,\n suffix: suffixContent,\n value: internalValue,\n onChange: e => {\n otherProps?.onChange?.(e);\n setInternalValue(e.target.value);\n },\n };\n\n return (\n <div className={wrapperClassName} ref={inputWrapperRef}>\n {multiline ? (\n <Textarea\n {...SharedProps}\n {...otherProps}\n resize=\"none\"\n style={\n inheritFontStyle\n ? { ...inheritFontStyle, ...(otherProps.style || {}) }\n : otherProps.style\n }\n />\n ) : (\n <Input\n {...SharedProps}\n {...otherProps}\n className={classnames(inputCustomClassName, otherProps.className)}\n style={\n inheritFontStyle\n ? { ...inheritFontStyle, ...(otherProps.style || {}) }\n : otherProps.style\n }\n />\n )}\n </div>\n );\n});\n\nInlineInput.displayName = \"InlineInput\";\n\nInlineInput.propTypes = {\n className: PropTypes.string,\n value: PropTypes.string,\n nullable: PropTypes.bool,\n isSaving: PropTypes.bool,\n saveOnBlur: PropTypes.bool,\n clearOnSave: PropTypes.bool,\n submitButtonProps: PropTypes.object,\n cancelButtonProps: PropTypes.object,\n handleSubmit: PropTypes.func,\n handleCancel: PropTypes.func,\n size: PropTypes.oneOf([\"small\", \"medium\", \"large\"]),\n multiline: PropTypes.bool,\n textClassName: PropTypes.string,\n dirty: PropTypes.bool,\n onInlineInputBlur: PropTypes.func,\n};\n\nexport default InlineInput;\n","import { useField, useFormikContext } from \"formik\";\nimport { omit } from \"ramda\";\n\nimport InlineInput from \"./InlineInput\";\n\nconst FormikInlineInput = ({ name, ...props }) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n const { submitForm, isSubmitting, resetForm, dirty } = useFormikContext();\n\n const handleSubmit = value => {\n setValue(value);\n\n props.handleSubmit?.(value);\n\n return submitForm();\n };\n\n return (\n <InlineInput\n error={meta.touched ? meta.error : \"\"}\n isSaving={isSubmitting}\n {...props}\n handleCancel={() => {\n resetForm();\n props.handleCancel?.();\n }}\n {...{ handleSubmit, ...omit([\"onBlur\"], field), dirty }}\n onInlineInputBlur={trimmedValue => {\n setValue(trimmedValue);\n setTouched(true);\n }}\n />\n );\n};\n\nexport default FormikInlineInput;\n"],"names":["TOOLTIP_PROPS","save","content","t","position","delay","cancel","BUTTON_SIZE_BY_INPUT_SIZE","small","medium","large","INPUT_MIN_HEIGHT_BY_SIZE","TEXTAREA_DESCENDANT_MIN_H_BY_SIZE","mergeRefs","_len","arguments","length","refs","Array","_key","node","forEach","ref","current","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","InlineInput","forwardRef","props","_BUTTON_SIZE_BY_INPUT","_INPUT_MIN_HEIGHT_BY_","_TEXTAREA_DESCENDANT_","_useTranslation","useTranslation","_props$saveOnBlur","saveOnBlur","_props$clearOnSave","clearOnSave","_props$nullable","nullable","_props$value","isSaving","_props$className","className","_props$handleSubmit","handleSubmit","noop","_props$handleCancel","handleCancel","_props$submitButtonPr","submitButtonProps","_props$cancelButtonPr","cancelButtonProps","dirty","_props$onInlineInputB","onInlineInputBlur","_props$size","size","_props$multiline","multiline","_props$textClassName","textClassName","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useStateWithDependen","useStateWithDependency","String","_useStateWithDependen2","internalValue","setInternalValue","inputRef","useRef","inputWrapperRef","trimmedValue","trim","isValidValue","isNotEmpty","isNotNil","isDirty","saveDisabled","disabled","buttonSize","hasCustomText","inputMinHeight","textareaDescendantMinH","handleFocusOut","onSubmit","onCancel","useOnClickOutside","_ref","_asyncToGenerator","_callee","_context","apply","closeRef","useHotkeys","event","stopPropagation","mode","submitHotkey","submitRef","enabled","useLayoutEffect","_inputWrapperRef$curr","selector","inputElement","querySelector","useEffect","focus","suffixContent","_jsxs","_Fragment","children","_jsx","Tooltip","_objectSpread","Button","icon","Check","loading","variant","onClick","X","wrapperClassName","classnames","_defineProperty","inputCustomClassName","inheritFontStyle","fontSize","fontWeight","fontFamily","lineHeight","undefined","SharedProps","disableTrimOnBlur","suffix","onChange","_otherProps$onChange","target","Textarea","resize","style","Input","FormikInlineInput","name","_useField","useField","_useField2","field","meta","_useField2$","setValue","setTouched","_useFormikContext","useFormikContext","submitForm","resetForm","error","touched","omit"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,aAAa,GAAG;AAC3BC,EAAAA,IAAI,EAAE;AACJC,IAAAA,OAAO,EAAEC,SAAC,CAAC,oCAAoC,CAAC;AAChDC,IAAAA,QAAQ,EAAE,KAAK;AACfC,IAAAA,KAAK,EAAE;GACR;AACDC,EAAAA,MAAM,EAAE;AACNJ,IAAAA,OAAO,EAAEC,SAAC,CAAC,sCAAsC,CAAC;AAClDC,IAAAA,QAAQ,EAAE,KAAK;AACfC,IAAAA,KAAK,EAAE;AACT;AACF,CAAC;AAEM,IAAME,yBAAyB,GAAG;AACvCC,EAAAA,KAAK,EAAE,SAAS;AAChBC,EAAAA,MAAM,EAAE,SAAS;AACjBC,EAAAA,KAAK,EAAE;AACT,CAAC;;AAED;AACA;AACO,IAAMC,wBAAwB,GAAG;AACtCH,EAAAA,KAAK,EAAE,oBAAoB;AAC3BC,EAAAA,MAAM,EAAE,SAAS;AACjBC,EAAAA,KAAK,EAAE;AACT,CAAC;;AAED;AACA;AACO,IAAME,iCAAiC,GAAG;AAC/CJ,EAAAA,KAAK,EAAE,gDAAgD;AACvDC,EAAAA,MAAM,EAAE,uBAAuB;AAC/BC,EAAAA,KAAK,EAAE;AACT,CAAC;;ACnCM,IAAMG,SAAS,GACpB,SADWA,SAASA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAChBC,IAAI,GAAA,IAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAJF,IAAAA,IAAI,CAAAE,IAAA,CAAA,GAAAJ,SAAA,CAAAI,IAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OACR,UAAAC,IAAI,EAAA;AAAA,IAAA,OACFH,IAAI,CAACI,OAAO,CAAC,UAAAC,GAAG,EAAA;AAAA,MAAA,OACd,OAAOA,GAAG,KAAK,UAAU,GAAGA,GAAG,CAACF,IAAI,CAAC,GAAIE,GAAG,CAACC,OAAO,GAAGH,IAAK;AAAA,IAAA,CAC9D,CAAC;AAAA,EAAA,CAAA;AAAA,CAAA;;;;;ACJL,SAAA,YAAA,GAAA,qKAAA,IAAAI,CAAA,EAAArB,CAAA,EAAAsB,CAAA,GAAA,UAAA,IAAA,OAAAC,MAAA,GAAAA,MAAA,GAAA,EAAA,EAAAC,CAAA,GAAAF,CAAA,CAAAG,QAAA,IAAA,YAAA,EAAAC,CAAA,GAAAJ,CAAA,CAAAK,WAAA,IAAA,eAAA,CAAA,CAAA,SAAAC,EAAAN,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAC,CAAA,GAAAL,CAAA,IAAAA,CAAA,CAAAM,SAAA,YAAAC,SAAA,GAAAP,CAAA,GAAAO,SAAA,EAAAC,CAAA,GAAAC,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAAC,SAAA,CAAA,CAAA,CAAA,OAAAK,mBAAA,CAAAH,CAAA,EAAA,SAAA,EAAA,UAAAV,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAE,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAI,CAAA,GAAA,CAAA,EAAAC,CAAA,GAAAX,CAAA,IAAA,EAAA,EAAAY,CAAA,GAAA,KAAA,EAAAC,CAAA,GAAA,EAAAF,CAAA,EAAA,CAAA,EAAAb,CAAA,EAAA,CAAA,EAAAgB,CAAA,EAAAnB,CAAA,EAAAoB,CAAA,EAAAC,CAAA,EAAAN,CAAA,EAAAM,CAAA,CAAAC,IAAA,CAAAtB,CAAA,EAAA,CAAA,CAAA,EAAAqB,CAAA,WAAAA,CAAAA,CAAA1C,CAAA,EAAAsB,CAAA,WAAAM,CAAA,GAAA5B,CAAA,EAAA6B,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAX,CAAA,EAAAkB,CAAA,CAAAf,CAAA,GAAAF,CAAA,EAAAmB,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,SAAAC,EAAApB,CAAA,EAAAE,CAAA,EAAA,EAAA,KAAAK,CAAA,GAAAP,CAAA,EAAAU,CAAA,GAAAR,CAAA,EAAAxB,CAAA,OAAAsC,CAAA,IAAAF,CAAA,IAAA,CAAAV,CAAA,IAAA1B,CAAA,GAAAqC,CAAA,CAAAxB,MAAA,EAAAb,CAAA,UAAA0B,CAAA,EAAAE,CAAA,GAAAS,CAAA,CAAArC,CAAA,CAAA,EAAA0C,CAAA,GAAAH,CAAA,CAAAF,CAAA,EAAAO,CAAA,GAAAhB,CAAA,KAAAN,CAAA,GAAA,CAAA,GAAA,CAAAI,CAAA,GAAAkB,CAAA,KAAApB,CAAA,MAAAQ,CAAA,GAAAJ,CAAA,CAAA,CAAAC,CAAA,GAAAD,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,IAAAC,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAAD,CAAA,CAAA,CAAA,CAAA,GAAAA,CAAA,CAAA,CAAA,CAAA,GAAAP,CAAA,IAAAO,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,KAAA,CAAAhB,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAoB,CAAA,GAAAd,CAAA,CAAA,CAAA,CAAA,KAAAC,CAAA,MAAAU,CAAA,CAAAC,CAAA,GAAAhB,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAI,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,GAAAE,CAAA,KAAAlB,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,IAAAA,CAAA,GAAAoB,CAAA,MAAAhB,CAAA,CAAA,CAAA,CAAA,GAAAN,CAAA,EAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAoB,CAAA,EAAAf,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAH,CAAA,IAAAJ,CAAA,GAAA,CAAA,EAAA,OAAAmB,CAAA,CAAA,CAAA,MAAAH,CAAA,GAAA,IAAA,EAAAd,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,UAAAE,CAAA,EAAAW,CAAA,EAAAO,CAAA,EAAA,EAAA,IAAAR,CAAA,GAAA,CAAA,EAAA,MAAAS,SAAA,CAAA,8BAAA,CAAA,CAAA,CAAA,KAAAP,CAAA,UAAAD,CAAA,IAAAK,CAAA,CAAAL,CAAA,EAAAO,CAAA,CAAA,EAAAf,CAAA,GAAAQ,CAAA,EAAAL,CAAA,GAAAY,CAAA,EAAA,CAAA5C,CAAA,GAAA6B,CAAA,GAAA,CAAA,GAAAR,CAAA,GAAAW,CAAA,KAAA,CAAAM,CAAA,GAAA,EAAAV,CAAA,KAAAC,CAAA,GAAAA,CAAA,GAAA,CAAA,IAAAA,CAAA,GAAA,CAAA,KAAAU,CAAA,CAAAf,CAAA,GAAA,EAAA,CAAA,EAAAkB,CAAA,CAAAb,CAAA,EAAAG,CAAA,CAAA,IAAAO,CAAA,CAAAf,CAAA,GAAAQ,CAAA,GAAAO,CAAA,CAAAC,CAAA,GAAAR,CAAA,aAAAI,CAAA,GAAA,CAAA,EAAAR,CAAA,EAAA,EAAA,IAAAC,CAAA,KAAAH,CAAA,GAAA,MAAA,CAAA,EAAA1B,CAAA,GAAA4B,CAAA,CAAAF,CAAA,WAAA1B,CAAA,GAAAA,CAAA,CAAA8C,IAAA,CAAAlB,CAAA,EAAAI,CAAA,CAAA,CAAA,EAAA,MAAAa,SAAA,CAAA,kCAAA,CAAA,CAAA,CAAA,IAAA,CAAA7C,CAAA,CAAA+C,IAAA,EAAA,OAAA/C,CAAA,CAAA,CAAAgC,CAAA,GAAAhC,CAAA,CAAAgD,KAAA,EAAAnB,CAAA,GAAA,CAAA,KAAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,KAAAA,CAAA,KAAA7B,CAAA,GAAA4B,CAAA,CAAA,QAAA,CAAA,CAAA,IAAA5B,CAAA,CAAA8C,IAAA,CAAAlB,CAAA,CAAA,EAAAC,CAAA,SAAAG,CAAA,GAAAa,SAAA,CAAA,mCAAA,GAAAnB,CAAA,GAAA,UAAA,CAAA,EAAAG,CAAA,GAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,GAAAP,CAAA,CAAA,CAAA,CAAA,MAAA,IAAA,CAAArB,CAAA,IAAAsC,CAAA,GAAAC,CAAA,CAAAf,CAAA,GAAA,CAAA,IAAAQ,CAAA,GAAAV,CAAA,CAAAwB,IAAA,CAAAtB,CAAA,EAAAe,CAAA,CAAA,MAAAE,CAAA,EAAA,MAAA,CAAA,CAAA,CAAA,OAAAzC,CAAA,EAAA,EAAA4B,CAAA,GAAAP,CAAA,EAAAQ,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAhC,CAAA,CAAA,CAAA,CAAA,SAAA,EAAAoC,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAAY,KAAA,EAAAhD,CAAA,EAAA+C,IAAA,EAAAT,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhB,CAAA,EAAAI,CAAA,EAAAE,CAAA,CAAA,EAAA,IAAA,CAAA,EAAAI,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAS,CAAA,GAAA,EAAA,CAAA,CAAA,SAAAV,SAAAA,eAAAkB,iBAAAA,GAAA,CAAA,CAAA,CAAA,SAAAC,0BAAAA,GAAA,CAAA,CAAA,CAAAlD,CAAA,GAAAiC,MAAA,CAAAkB,cAAA,CAAA,CAAA,IAAAtB,CAAA,GAAA,EAAA,CAAAL,CAAA,CAAA,GAAAxB,CAAA,CAAAA,CAAA,IAAAwB,CAAA,CAAA,EAAA,CAAA,CAAA,IAAAW,mBAAA,CAAAnC,CAAA,GAAA,EAAA,EAAAwB,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAxB,CAAA,GAAAgC,CAAA,GAAAkB,0BAAA,CAAApB,SAAA,GAAAC,SAAA,CAAAD,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAA,CAAA,CAAA,SAAAO,CAAAA,CAAAf,CAAA,WAAAY,MAAA,CAAAmB,cAAA,GAAAnB,MAAA,CAAAmB,cAAA,CAAA/B,CAAA,EAAA6B,0BAAA,CAAA,IAAA7B,CAAA,CAAAgC,SAAA,GAAAH,0BAAA,EAAAf,mBAAA,CAAAd,CAAA,EAAAK,CAAA,EAAA,mBAAA,CAAA,CAAA,EAAAL,CAAA,CAAAS,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAF,CAAA,CAAA,EAAAX,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA4B,iBAAA,CAAAnB,SAAA,GAAAoB,0BAAA,EAAAf,mBAAA,CAAAH,CAAA,iBAAAkB,0BAAA,CAAA,EAAAf,mBAAA,CAAAe,0BAAA,EAAA,aAAA,EAAAD,iBAAA,CAAA,EAAAA,iBAAA,CAAAK,WAAA,GAAA,mBAAA,EAAAnB,mBAAA,CAAAe,0BAAA,EAAAxB,CAAA,EAAA,mBAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,CAAA,EAAAG,mBAAA,CAAAH,CAAA,EAAAN,CAAA,EAAA,WAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,EAAAR,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAW,mBAAA,CAAAH,CAAA,8DAAAuB,YAAA,GAAA,SAAAA,YAAAA,GAAA,EAAA,OAAA,EAAAC,CAAA,EAAA5B,CAAA,EAAA6B,CAAA,EAAArB,CAAA,EAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA;AAAA,SAAAD,mBAAAA,CAAAd,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAAxB,CAAA,EAAA,EAAA,IAAA4B,CAAA,GAAAK,MAAA,CAAAyB,cAAA,CAAA,CAAA,IAAA,EAAA9B,CAAA,uBAAAP,CAAA,EAAA,EAAAO,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,mBAAA,GAAA,SAAAwB,mBAAAtC,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAAxB,CAAA,EAAA,EAAA,SAAA0B,CAAAA,CAAAJ,CAAA,EAAAE,CAAA,IAAAW,mBAAA,CAAAd,CAAA,EAAAC,CAAA,YAAAD,CAAA,EAAA,EAAA,OAAA,IAAA,CAAAuC,OAAA,CAAAtC,CAAA,EAAAE,CAAA,EAAAH,CAAA,SAAAC,CAAA,GAAAM,CAAA,GAAAA,CAAA,CAAAP,CAAA,EAAAC,CAAA,IAAA0B,KAAA,EAAAxB,CAAA,EAAAqC,UAAA,GAAA7D,CAAA,EAAA8D,YAAA,EAAA,CAAA9D,CAAA,EAAA+D,QAAA,EAAA,CAAA/D,CAAA,MAAAqB,CAAA,CAAAC,CAAA,CAAA,GAAAE,CAAA,IAAAE,CAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAAA,CAAA,cAAAA,CAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAAS,mBAAA,CAAAd,CAAA,EAAAC,CAAA,EAAAE,CAAA,EAAAxB,CAAA,CAAA,CAAA,CAAA;AA0BA,IAAMgE,WAAW,gBAAGC,gBAAU,CAAC,UAACC,KAAK,EAAE/C,GAAG,EAAK;AAAA,EAAA,IAAAgD,qBAAA,EAAAC,qBAAA,EAAAC,qBAAA;AAC7C,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBvE,CAAC,GAAAsE,eAAA,CAADtE,CAAC;AACT,EAAA,IAAAwE,iBAAA,GAiBIN,KAAK,CAhBPO,UAAU;AAAVA,IAAAA,UAAU,GAAAD,iBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,iBAAA;IAAAE,kBAAA,GAgBhBR,KAAK,CAfPS,WAAW;AAAXA,IAAAA,WAAW,GAAAD,kBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,kBAAA;IAAAE,eAAA,GAejBV,KAAK,CAdPW,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,eAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,eAAA;IAAAE,YAAA,GAcdZ,KAAK,CAbPlB,KAAK;AAALA,IAAAA,KAAK,GAAA8B,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IACVC,QAAQ,GAYNb,KAAK,CAZPa,QAAQ;IAAAC,gBAAA,GAYNd,KAAK,CAXPe,SAAS;AAATA,IAAAA,SAAS,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAE,mBAAA,GAWZhB,KAAK,CAVPiB,YAAY;AAAZA,IAAAA,YAAY,GAAAD,mBAAA,KAAA,MAAA,GAAGE,cAAI,GAAAF,mBAAA;IAAAG,mBAAA,GAUjBnB,KAAK,CATPoB,YAAY;AAAZA,IAAAA,YAAY,GAAAD,mBAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,mBAAA;IAAAE,qBAAA,GASjBrB,KAAK,CARPsB,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAQpBvB,KAAK,CAPPwB,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IACtBE,KAAK,GAMHzB,KAAK,CANPyB,KAAK;IAAAC,qBAAA,GAMH1B,KAAK,CALP2B,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAGR,cAAI,GAAAQ,qBAAA;IAAAE,WAAA,GAKtB5B,KAAK,CAJP6B,IAAI;AAAJA,IAAAA,IAAI,GAAAD,WAAA,KAAA,MAAA,GAAG,QAAQ,GAAAA,WAAA;IAAAE,gBAAA,GAIb9B,KAAK,CAHP+B,SAAS;AAATA,IAAAA,SAAS,GAAAD,gBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,gBAAA;IAAAE,oBAAA,GAGfhC,KAAK,CAFPiC,aAAa;AAAbA,IAAAA,aAAa,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;AACfE,IAAAA,UAAU,GAAAC,wBAAA,CACXnC,KAAK,EAAAoC,WAAA,CAAA;AAET,EAAA,IAAAC,SAAA,GAAwCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAhDI,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,eAAe,GAAAH,UAAA,CAAA,CAAA,CAAA;AACpC,EAAA,IAAAI,qBAAA,GAA0CC,sBAAsB,CAC9DC,MAAM,CAAC/D,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAALA,KAAK,GAAI,EAAE,CACpB,CAAC;IAAAgE,sBAAA,GAAAN,cAAA,CAAAG,qBAAA,EAAA,CAAA,CAAA;AAFMI,IAAAA,aAAa,GAAAD,sBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,sBAAA,CAAA,CAAA,CAAA;AAGtC,EAAA,IAAMG,QAAQ,GAAGC,YAAM,CAAC,IAAI,CAAC;AAC7B,EAAA,IAAMC,eAAe,GAAGD,YAAM,CAAC,IAAI,CAAC;AACpC,EAAA,IAAME,YAAY,GAAGL,aAAa,CAACM,IAAI,EAAE;AACzC,EAAA,IAAMC,YAAY,GAChB3C,QAAQ,IAAK4C,oBAAU,CAACH,YAAY,CAAC,IAAII,cAAQ,CAACJ,YAAY,CAAE;AAElE,EAAA,IAAMK,OAAO,GAAGV,aAAa,KAAKjE,KAAK,IAAI2C,KAAK;AAChD,EAAA,IAAMiC,YAAY,GAChB,CAACJ,YAAY,IACbb,YAAY,IACZ5B,QAAQ,IACRS,iBAAiB,CAACqC,QAAQ,IAC1B,CAACF,OAAO;AAEV,EAAA,IAAMG,UAAU,GAAA,CAAA3D,qBAAA,GAAG/D,yBAAyB,CAAC2F,IAAI,CAAC,MAAA,IAAA,IAAA5B,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,MAAM;AAC5D,EAAA,IAAM4D,aAAa,GAAGN,oBAAU,CAACtB,aAAa,CAAC;AAC/C,EAAA,IAAM6B,cAAc,GAAA,CAAA5D,qBAAA,GAClB5D,wBAAwB,CAACuF,IAAI,CAAC,MAAA,IAAA,IAAA3B,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI5D,wBAAwB,CAACF,MAAM;AAEnE,EAAA,IAAM2H,sBAAsB,GAAA,CAAA5D,qBAAA,GAC1B5D,iCAAiC,CAACsF,IAAI,CAAC,MAAA,IAAA,IAAA1B,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GACvC5D,iCAAiC,CAACH,MAAM;AAE1C,EAAA,IAAM4H,cAAc,GAAG,SAAjBA,cAAcA,GAAS;AAC3B,IAAA,IAAI,CAACV,YAAY,IAAIb,YAAY,EAAE;IAEnCd,iBAAiB,CAACyB,YAAY,CAAC;IAE/B,IAAI7C,UAAU,IAAIkD,OAAO,EAAE;AACzBQ,MAAAA,QAAQ,EAAE;AAEV,MAAA;AACF,IAAA;AAEAC,IAAAA,QAAQ,EAAE;EACZ,CAAC;AAEDC,EAAAA,iBAAiB,CAAChB,eAAe,EAAEa,cAAc,CAAC;AAElD,EAAA,IAAMC,QAAQ,gBAAA,YAAA;IAAA,IAAAG,IAAA,GAAAC,iBAAA,cAAAhF,YAAA,EAAA,CAAAE,CAAA,CAAG,SAAA+E,OAAAA,GAAA;AAAA,MAAA,OAAAjF,YAAA,EAAA,CAAAC,CAAA,CAAA,UAAAiF,QAAA,EAAA;AAAA,QAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAApG,CAAA,GAAAoG,QAAA,CAAAjH,CAAA;AAAA,UAAA,KAAA,CAAA;YACfoF,eAAe,CAAC,IAAI,CAAC;AAAC6B,YAAAA,QAAA,CAAApG,CAAA,GAAA,CAAA;AAAAoG,YAAAA,QAAA,CAAAjH,CAAA,GAAA,CAAA;YAAA,OAEd2D,YAAY,CAACmC,YAAY,CAAC;AAAA,UAAA,KAAA,CAAA;AAChC3C,YAAAA,WAAW,IAAIuC,gBAAgB,CAAC,EAAE,CAAC;AAAC,UAAA,KAAA,CAAA;AAAAuB,YAAAA,QAAA,CAAApG,CAAA,GAAA,CAAA;YAEpCuE,eAAe,CAAC,KAAK,CAAC;YAAC,OAAA6B,QAAA,CAAArG,CAAA,CAAA,CAAA,CAAA;AAAA,UAAA,KAAA,CAAA;YAAA,OAAAqG,QAAA,CAAAhG,CAAA,CAAA,CAAA,CAAA;AAAA;AAAA,MAAA,CAAA,EAAA+F,OAAA,EAAA,IAAA,EAAA,CAAA,CAAA,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA;IAAA,CAE1B,CAAA,CAAA;AAAA,IAAA,OAAA,SARKL,QAAQA,GAAA;AAAA,MAAA,OAAAG,IAAA,CAAAI,KAAA,CAAA,IAAA,EAAA9H,SAAA,CAAA;AAAA,IAAA,CAAA;EAAA,CAAA,EAQb;AAED,EAAA,IAAMwH,QAAQ,GAAG,SAAXA,QAAQA,GAAS;IACrB9C,YAAY,CAACgC,YAAY,CAAC;EAC5B,CAAC;EAED,IAAMqB,QAAQ,GAAGC,UAAU,CACzB,QAAQ,EACR,UAAAC,KAAK,EAAI;IACPA,KAAK,CAACC,eAAe,EAAE;AACvBV,IAAAA,QAAQ,EAAE;AACZ,EAAA,CAAC,EACD;AAAEW,IAAAA,IAAI,EAAE;AAAS,GACnB,CAAC;EAED,IAAMC,YAAY,GAAG/C,SAAS,GAC1B,gBAAgB,GAChB,CAAC,gBAAgB,EAAE,QAAQ,CAAC;AAEhC,EAAA,IAAMgD,SAAS,GAAGL,UAAU,CAACI,YAAY,EAAE,YAAA;IAAA,OAAMb,QAAQ,EAAE;EAAA,CAAA,EAAE;AAC3DY,IAAAA,IAAI,EAAE,QAAQ;AACdG,IAAAA,OAAO,EAAE1B;AACX,GAAC,CAAC;AAEF2B,EAAAA,qBAAe,CAAC,YAAM;AAAA,IAAA,IAAAC,qBAAA;AACpB,IAAA,IAAMC,QAAQ,GAAGpD,SAAS,GAAG,UAAU,GAAG,OAAO;AACjD,IAAA,IAAMqD,YAAY,GAAA,CAAAF,qBAAA,GAAG/B,eAAe,CAACjG,OAAO,MAAA,IAAA,IAAAgI,qBAAA,uBAAvBA,qBAAA,CAAyBG,aAAa,CAACF,QAAQ,CAAC;IACrE3I,SAAS,CAACyG,QAAQ,EAAEwB,QAAQ,EAAEM,SAAS,CAAC,CAACK,YAAY,CAAC;AACxD,EAAA,CAAC,EAAE,CAACrD,SAAS,CAAC,CAAC;AAEfuD,EAAAA,eAAS,CAAC,YAAA;IAAA,OAAMrC,QAAQ,CAAC/F,OAAO,IAAI+F,QAAQ,CAAC/F,OAAO,CAACqI,KAAK,EAAE;EAAA,CAAA,EAAE,CAAC9C,YAAY,CAAC,CAAC;AAE7E,EAAA,IAAM+C,aAAa,gBACjBC,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEC,cAAA,CAACC,kBAAO,EAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAKnK,aAAa,CAACC,IAAI,CAAA,EAAA,EAAA,EAAA;AAAA+J,MAAAA,QAAA,eAC7BC,cAAA,CAACG,iBAAM,EAAAD,eAAA,CAAAA,eAAA,CAAA;QACL,YAAA,EAAYhK,CAAC,CAAC,oCAAoC,CAAE;AACpD,QAAA,aAAA,EAAY,qCAAqC;AACjDkK,QAAAA,IAAI,EAAEC,WAAM;QACZC,OAAO,EAAEzD,YAAY,IAAI5B,QAAS;AAClCgB,QAAAA,IAAI,EAAE+B,UAAW;AACjBuC,QAAAA,OAAO,EAAC,OAAO;AACfC,QAAAA,OAAO,EAAEnC;AAAS,OAAA,EACd3C,iBAAiB,CAAA,EAAA,EAAA,EAAA;AACrBqC,QAAAA,QAAQ,EAAED;OAAa,CACxB;AAAC,KAAA,CACK,CAAC,eACVkC,cAAA,CAACC,kBAAO,EAAAC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAKnK,aAAa,CAACM,MAAM,CAAA,EAAA,EAAA,EAAA;AAAA0J,MAAAA,QAAA,eAC/BC,cAAA,CAACG,iBAAM,EAAAD,eAAA,CAAAA,eAAA,CAAA;AACC7I,QAAAA,GAAG,EAAHA,GAAG;QACT,YAAA,EAAYnB,CAAC,CAAC,sCAAsC,CAAE;AACtD,QAAA,aAAA,EAAY,uCAAuC;AACnDkK,QAAAA,IAAI,EAAEK,GAAE;AACRxE,QAAAA,IAAI,EAAE+B,UAAW;AACjBuC,QAAAA,OAAO,EAAC,OAAO;AACfC,QAAAA,OAAO,EAAElC;AAAS,OAAA,EACd1C,iBAAiB,CAAA,EAAA,EAAA,EAAA;AACrBmC,QAAAA,QAAQ,EAAElB,YAAY,IAAI5B,QAAQ,IAAIW,iBAAiB,CAACmC;OAAS,CAClE;AAAC,KAAA,CACK,CAAC;AAAA,GACV,CACH;AAED,EAAA,IAAM2C,gBAAgB,GAAGC,UAAU,CACjC,gBAAgB,EAChB,yGAAyG,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,KAEtGzF,SAAS,EAAGA,SAAS,CAAA,EACrBkB,aAAa,EAAG4B,aAAa,GAC9B,mIAAmI,EACjIA,aAAa,IAAI,CAAC9B,SAAS,CAAA,EAC7B,oLAAoL,EAClL8B,aAAa,IAAI9B,SAAS,CAAA,EAE9B8B,aAAa,IAAI9B,SAAS,IAAIgC,sBAChC,CAAC;AAED,EAAA,IAAM0C,oBAAoB,GACxB5C,aAAa,IAAI,CAAC9B,SAAS,GACvBwE,UAAU,CAAC,eAAe,EAAEzC,cAAc,CAAC,GAC3C,EAAE;EAER,IAAM4C,gBAAgB,GAAG7C,aAAa,GAClC;AACE8C,IAAAA,QAAQ,EAAE,SAAS;AACnBC,IAAAA,UAAU,EAAE,SAAS;AACrBC,IAAAA,UAAU,EAAE,SAAS;AACrBC,IAAAA,UAAU,EAAE;AACd,GAAC,GACDC,SAAS;AAEb,EAAA,IAAMC,WAAW,GAAG;AAClB,IAAA,YAAY,EAAElL,CAAC,CAAC,0CAA0C,CAAC;AAC3D,IAAA,aAAa,EAAE,gCAAgC;AAC/C6H,IAAAA,QAAQ,EAAElB,YAAY;AACtBwE,IAAAA,iBAAiB,EAAE,IAAI;AACvBpF,IAAAA,IAAI,EAAJA,IAAI;AACJqF,IAAAA,MAAM,EAAE1B,aAAa;AACrB1G,IAAAA,KAAK,EAAEiE,aAAa;AACpBoE,IAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEhK,CAAC,EAAI;AAAA,MAAA,IAAAiK,oBAAA;AACblF,MAAAA,UAAU,aAAVA,UAAU,KAAA,MAAA,IAAA,CAAAkF,oBAAA,GAAVlF,UAAU,CAAEiF,QAAQ,MAAA,IAAA,IAAAC,oBAAA,KAAA,MAAA,IAApBA,oBAAA,CAAAxI,IAAA,CAAAsD,UAAU,EAAa/E,CAAC,CAAC;AACzB6F,MAAAA,gBAAgB,CAAC7F,CAAC,CAACkK,MAAM,CAACvI,KAAK,CAAC;AAClC,IAAA;GACD;AAED,EAAA,oBACE8G,cAAA,CAAA,KAAA,EAAA;AAAK7E,IAAAA,SAAS,EAAEuF,gBAAiB;AAACrJ,IAAAA,GAAG,EAAEkG,eAAgB;AAAAwC,IAAAA,QAAA,EACpD5D,SAAS,gBACR6D,cAAA,CAAC0B,mBAAQ,EAAAxB,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACHkB,WAAW,GACX9E,UAAU,CAAA,EAAA,EAAA,EAAA;AACdqF,MAAAA,MAAM,EAAC,MAAM;AACbC,MAAAA,KAAK,EACHd,gBAAgB,GAAAZ,eAAA,CAAAA,eAAA,CAAA,EAAA,EACPY,gBAAgB,CAAA,EAAMxE,UAAU,CAACsF,KAAK,IAAI,EAAE,CAAA,GACjDtF,UAAU,CAACsF;AAChB,KAAA,CACF,CAAC,gBAEF5B,cAAA,CAAC6B,gBAAK,EAAA3B,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EACAkB,WAAW,GACX9E,UAAU,CAAA,EAAA,EAAA,EAAA;MACdnB,SAAS,EAAEwF,UAAU,CAACE,oBAAoB,EAAEvE,UAAU,CAACnB,SAAS,CAAE;AAClEyG,MAAAA,KAAK,EACHd,gBAAgB,GAAAZ,eAAA,CAAAA,eAAA,CAAA,EAAA,EACPY,gBAAgB,CAAA,EAAMxE,UAAU,CAACsF,KAAK,IAAI,EAAE,CAAA,GACjDtF,UAAU,CAACsF;KAChB,CACF;AACF,GACE,CAAC;AAEV,CAAC;AAED1H,WAAW,CAACV,WAAW,GAAG,aAAa;;;;;ACpOvC,IAAMsI,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAtD,IAAA,EAA2B;AAAA,EAAA,IAArBuD,IAAI,GAAAvD,IAAA,CAAJuD,IAAI;AAAK3H,IAAAA,KAAK,GAAAmC,wBAAA,CAAAiC,IAAA,EAAAhC,SAAA,CAAA;AACzC,EAAA,IAAAwF,SAAA,GAAgDC,eAAQ,CAACF,IAAI,CAAC;IAAAG,UAAA,GAAAtF,cAAA,CAAAoF,SAAA,EAAA,CAAA,CAAA;AAAvDG,IAAAA,KAAK,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,IAAI,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAAG,IAAAA,WAAA,GAAAH,UAAA,CAAA,CAAA,CAAA;IAAII,QAAQ,GAAAD,WAAA,CAARC,QAAQ;IAAEC,UAAU,GAAAF,WAAA,CAAVE,UAAU;AAE1C,EAAA,IAAAC,iBAAA,GAAuDC,uBAAgB,EAAE;IAAjEC,UAAU,GAAAF,iBAAA,CAAVE,UAAU;IAAE7F,YAAY,GAAA2F,iBAAA,CAAZ3F,YAAY;IAAE8F,SAAS,GAAAH,iBAAA,CAATG,SAAS;IAAE9G,KAAK,GAAA2G,iBAAA,CAAL3G,KAAK;AAElD,EAAA,IAAMR,YAAY,GAAG,SAAfA,YAAYA,CAAGnC,KAAK,EAAI;AAAA,IAAA,IAAAkC,mBAAA;IAC5BkH,QAAQ,CAACpJ,KAAK,CAAC;AAEf,IAAA,CAAAkC,mBAAA,GAAAhB,KAAK,CAACiB,YAAY,MAAA,IAAA,IAAAD,mBAAA,KAAA,MAAA,IAAlBA,mBAAA,CAAApC,IAAA,CAAAoB,KAAK,EAAgBlB,KAAK,CAAC;IAE3B,OAAOwJ,UAAU,EAAE;EACrB,CAAC;EAED,oBACE1C,cAAA,CAAC9F,WAAW,EAAAgG,aAAA,CAAAA,aAAA,CAAAA,aAAA,CAAA;IACV0C,KAAK,EAAER,IAAI,CAACS,OAAO,GAAGT,IAAI,CAACQ,KAAK,GAAG,EAAG;AACtC3H,IAAAA,QAAQ,EAAE4B;AAAa,GAAA,EACnBzC,KAAK,CAAA,EAAA,EAAA,EAAA;AACToB,IAAAA,YAAY,EAAE,SAAdA,YAAYA,GAAQ;AAAA,MAAA,IAAAD,mBAAA;AAClBoH,MAAAA,SAAS,EAAE;AACX,MAAA,CAAApH,mBAAA,GAAAnB,KAAK,CAACoB,YAAY,MAAA,IAAA,IAAAD,mBAAA,KAAA,MAAA,IAAlBA,mBAAA,CAAAvC,IAAA,CAAAoB,KAAqB,CAAC;AACxB,IAAA;GAAE,EAAA8F,aAAA,CAAAA,aAAA,CAAA;AACI7E,IAAAA,YAAY,EAAZA;AAAY,GAAA,EAAKyH,UAAI,CAAC,CAAC,QAAQ,CAAC,EAAEX,KAAK,CAAC,CAAA,EAAA,EAAA,EAAA;AAAEtG,IAAAA,KAAK,EAALA;AAAK,GAAA,CAAA,CAAA,EAAA,EAAA,EAAA;AACrDE,IAAAA,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAEyB,YAAY,EAAI;MACjC8E,QAAQ,CAAC9E,YAAY,CAAC;MACtB+E,UAAU,CAAC,IAAI,CAAC;AAClB,IAAA;AAAE,GAAA,CACH,CAAC;AAEN;;;;;"}
|
|
1
|
+
{"version":3,"file":"InlineInput.js","sources":["../../../src/v2/components/InlineInput/constants.js","../../../src/v2/components/InlineInput/utils.js","../../../src/v2/components/InlineInput/InlineInput.jsx","../../../src/v2/components/InlineInput/FormikInlineInput.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const TOOLTIP_PROPS = {\n save: {\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n delay: 300,\n },\n cancel: {\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n delay: 300,\n },\n};\n\nexport const BUTTON_SIZE_BY_INPUT_SIZE = {\n small: \"icon-xs\",\n medium: \"icon-sm\",\n large: \"icon\",\n};\n\n// Used only when `textClassName` is set, to keep size baseline while letting\n// the box grow with bigger fonts. Mirrors atoms Input's h-* per size.\nexport const INPUT_MIN_HEIGHT_BY_SIZE = {\n small: \"min-h-8 md:min-h-7\",\n medium: \"min-h-8\",\n large: \"min-h-10\",\n};\n\n// Descendant selector targeting the inner <textarea> (atoms applies its own\n// min-h-20/28 directly to the element; consumer className lands on outer div).\nexport const TEXTAREA_DESCENDANT_MIN_H_BY_SIZE = {\n small: \"[&_textarea]:!min-h-8 md:[&_textarea]:!min-h-7\",\n medium: \"[&_textarea]:!min-h-8\",\n large: \"[&_textarea]:!min-h-10\",\n};\n","export const mergeRefs =\n (...refs) =>\n node =>\n refs.forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import {\n forwardRef,\n useEffect,\n useLayoutEffect,\n useState,\n useRef,\n} from \"react\";\n\nimport { Button, Input, Textarea, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Check, X } from \"lucide-react\";\nimport { isNotEmpty, noop } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/v2/react-utils/useOnClickOutside\";\nimport useStateWithDependency from \"neetocommons/v2/react-utils/useStateWithDependency\";\nimport useHotkeys from \"neetohotkeys\";\nimport PropTypes from \"prop-types\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n BUTTON_SIZE_BY_INPUT_SIZE,\n INPUT_MIN_HEIGHT_BY_SIZE,\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE,\n TOOLTIP_PROPS,\n} from \"./constants\";\nimport { mergeRefs } from \"./utils\";\n\nconst InlineInput = forwardRef((props, ref) => {\n const { t } = useTranslation();\n const {\n saveOnBlur = false,\n clearOnSave = false,\n nullable = false,\n value = \"\",\n isSaving,\n className = \"\",\n handleSubmit = noop,\n handleCancel = noop,\n submitButtonProps = {},\n cancelButtonProps = {},\n dirty,\n onInlineInputBlur = noop,\n size = \"medium\",\n multiline = false,\n textClassName = \"\",\n ...otherProps\n } = props;\n\n const [isSubmitting, setIsSubmitting] = useState(false);\n const [internalValue, setInternalValue] = useStateWithDependency(\n String(value ?? \"\")\n );\n const inputRef = useRef(null);\n const inputWrapperRef = useRef(null);\n const wasSubmittingRef = useRef(isSubmitting);\n const trimmedValue = internalValue.trim();\n const isValidValue =\n nullable || (isNotEmpty(trimmedValue) && isNotNil(trimmedValue));\n\n const isDirty = internalValue !== value || dirty;\n const saveDisabled =\n !isValidValue ||\n isSubmitting ||\n isSaving ||\n submitButtonProps.disabled ||\n !isDirty;\n\n const buttonSize = BUTTON_SIZE_BY_INPUT_SIZE[size] ?? \"icon\";\n const hasCustomText = isNotEmpty(textClassName);\n const inputMinHeight =\n INPUT_MIN_HEIGHT_BY_SIZE[size] ?? INPUT_MIN_HEIGHT_BY_SIZE.medium;\n\n const textareaDescendantMinH =\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE[size] ??\n TEXTAREA_DESCENDANT_MIN_H_BY_SIZE.medium;\n\n const handleFocusOut = () => {\n if (!isValidValue || isSubmitting) return;\n\n onInlineInputBlur(trimmedValue);\n\n if (saveOnBlur && isDirty) {\n onSubmit();\n\n return;\n }\n\n onCancel();\n };\n\n useOnClickOutside(inputWrapperRef, handleFocusOut);\n\n const onSubmit = async () => {\n setIsSubmitting(true);\n try {\n await handleSubmit(trimmedValue);\n clearOnSave && setInternalValue(\"\");\n } finally {\n setIsSubmitting(false);\n }\n };\n\n const onCancel = () => {\n handleCancel(trimmedValue);\n };\n\n const closeRef = useHotkeys(\n \"escape\",\n event => {\n event.stopPropagation();\n onCancel();\n },\n { mode: \"scoped\" }\n );\n\n const submitHotkey = multiline\n ? \"command+return\"\n : [\"command+return\", \"return\"];\n\n const submitRef = useHotkeys(submitHotkey, () => onSubmit(), {\n mode: \"scoped\",\n enabled: isValidValue,\n });\n\n useLayoutEffect(() => {\n const selector = multiline ? \"textarea\" : \"input\";\n const inputElement = inputWrapperRef.current?.querySelector(selector);\n mergeRefs(inputRef, closeRef, submitRef)(inputElement);\n }, [multiline]);\n\n useEffect(() => {\n if (wasSubmittingRef.current && !isSubmitting) {\n inputRef.current?.focus();\n }\n wasSubmittingRef.current = isSubmitting;\n }, [isSubmitting]);\n\n const suffixContent = (\n <>\n <Tooltip {...TOOLTIP_PROPS.save}>\n <Button\n aria-label={t(\"neetoMolecules.common.actions.save\")}\n data-testid=\"neeto-molecules-autosave-input-save\"\n icon={Check}\n loading={isSubmitting || isSaving}\n size={buttonSize}\n variant=\"ghost\"\n onClick={onSubmit}\n {...submitButtonProps}\n disabled={saveDisabled}\n />\n </Tooltip>\n <Tooltip {...TOOLTIP_PROPS.cancel}>\n <Button\n {...{ ref }}\n aria-label={t(\"neetoMolecules.common.actions.cancel\")}\n data-testid=\"neeto-molecules-autosave-input-cancel\"\n icon={X}\n size={buttonSize}\n variant=\"ghost\"\n onClick={onCancel}\n {...cancelButtonProps}\n disabled={isSubmitting || isSaving || cancelButtonProps.disabled}\n />\n </Tooltip>\n </>\n );\n\n const wrapperClassName = classnames(\n \"flex flex-grow\",\n \"[&_[data-slot=input-group-addon]>span]:!gap-0.5 [&_[data-slot=input-group-addon]>span]:!text-foreground\",\n {\n [className]: className,\n [textClassName]: hasCustomText,\n \"[&_input]:![font-size:inherit] [&_input]:![font-weight:inherit] [&_input]:![font-family:inherit] [&_input]:![line-height:inherit]\":\n hasCustomText && !multiline,\n \"[&_textarea]:![field-sizing:content] [&_textarea]:![font-size:inherit] [&_textarea]:![font-weight:inherit] [&_textarea]:![font-family:inherit] [&_textarea]:![line-height:inherit]\":\n hasCustomText && multiline,\n },\n hasCustomText && multiline && textareaDescendantMinH\n );\n\n const inputCustomClassName =\n hasCustomText && !multiline\n ? classnames(\"h-auto py-1.5\", inputMinHeight)\n : \"\";\n\n const inheritFontStyle = hasCustomText\n ? {\n fontSize: \"inherit\",\n fontWeight: \"inherit\",\n fontFamily: \"inherit\",\n lineHeight: \"inherit\",\n }\n : undefined;\n\n const SharedProps = {\n \"aria-label\": t(\"neetoMolecules.inlineInput.editableField\"),\n \"data-testid\": \"neeto-molecules-autosave-input\",\n disabled: isSubmitting,\n disableTrimOnBlur: true,\n size,\n suffix: suffixContent,\n value: internalValue,\n onChange: e => {\n otherProps?.onChange?.(e);\n setInternalValue(e.target.value);\n },\n };\n\n return (\n <div className={wrapperClassName} ref={inputWrapperRef}>\n {multiline ? (\n <Textarea\n {...SharedProps}\n {...otherProps}\n resize=\"none\"\n style={\n inheritFontStyle\n ? { ...inheritFontStyle, ...(otherProps.style || {}) }\n : otherProps.style\n }\n />\n ) : (\n <Input\n {...SharedProps}\n {...otherProps}\n className={classnames(inputCustomClassName, otherProps.className)}\n style={\n inheritFontStyle\n ? { ...inheritFontStyle, ...(otherProps.style || {}) }\n : otherProps.style\n }\n />\n )}\n </div>\n );\n});\n\nInlineInput.displayName = \"InlineInput\";\n\nInlineInput.propTypes = {\n className: PropTypes.string,\n value: PropTypes.string,\n nullable: PropTypes.bool,\n isSaving: PropTypes.bool,\n saveOnBlur: PropTypes.bool,\n clearOnSave: PropTypes.bool,\n submitButtonProps: PropTypes.object,\n cancelButtonProps: PropTypes.object,\n handleSubmit: PropTypes.func,\n handleCancel: PropTypes.func,\n size: PropTypes.oneOf([\"small\", \"medium\", \"large\"]),\n multiline: PropTypes.bool,\n textClassName: PropTypes.string,\n dirty: PropTypes.bool,\n onInlineInputBlur: PropTypes.func,\n};\n\nexport default InlineInput;\n","import { useField, useFormikContext } from \"formik\";\nimport { omit } from \"ramda\";\n\nimport InlineInput from \"./InlineInput\";\n\nconst FormikInlineInput = ({ name, ...props }) => {\n const [field, meta, { setValue, setTouched }] = useField(name);\n\n const { submitForm, isSubmitting, resetForm, dirty } = useFormikContext();\n\n const handleSubmit = value => {\n setValue(value);\n\n props.handleSubmit?.(value);\n\n return submitForm();\n };\n\n return (\n <InlineInput\n error={meta.touched ? meta.error : \"\"}\n isSaving={isSubmitting}\n {...props}\n handleCancel={() => {\n resetForm();\n props.handleCancel?.();\n }}\n {...{ handleSubmit, ...omit([\"onBlur\"], field), dirty }}\n onInlineInputBlur={trimmedValue => {\n setValue(trimmedValue);\n setTouched(true);\n }}\n />\n );\n};\n\nexport default FormikInlineInput;\n"],"names":["TOOLTIP_PROPS","save","content","t","position","delay","cancel","BUTTON_SIZE_BY_INPUT_SIZE","small","medium","large","INPUT_MIN_HEIGHT_BY_SIZE","TEXTAREA_DESCENDANT_MIN_H_BY_SIZE","mergeRefs","_len","arguments","length","refs","Array","_key","node","forEach","ref","current","e","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","InlineInput","forwardRef","props","_BUTTON_SIZE_BY_INPUT","_INPUT_MIN_HEIGHT_BY_","_TEXTAREA_DESCENDANT_","_useTranslation","useTranslation","_props$saveOnBlur","saveOnBlur","_props$clearOnSave","clearOnSave","_props$nullable","nullable","_props$value","isSaving","_props$className","className","_props$handleSubmit","handleSubmit","noop","_props$handleCancel","handleCancel","_props$submitButtonPr","submitButtonProps","_props$cancelButtonPr","cancelButtonProps","dirty","_props$onInlineInputB","onInlineInputBlur","_props$size","size","_props$multiline","multiline","_props$textClassName","textClassName","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useStateWithDependen","useStateWithDependency","String","_useStateWithDependen2","internalValue","setInternalValue","inputRef","useRef","inputWrapperRef","wasSubmittingRef","trimmedValue","trim","isValidValue","isNotEmpty","isNotNil","isDirty","saveDisabled","disabled","buttonSize","hasCustomText","inputMinHeight","textareaDescendantMinH","handleFocusOut","onSubmit","onCancel","useOnClickOutside","_ref","_asyncToGenerator","_callee","_context","apply","closeRef","useHotkeys","event","stopPropagation","mode","submitHotkey","submitRef","enabled","useLayoutEffect","_inputWrapperRef$curr","selector","inputElement","querySelector","useEffect","_inputRef$current","focus","suffixContent","_jsxs","_Fragment","children","_jsx","Tooltip","_objectSpread","Button","icon","Check","loading","variant","onClick","X","wrapperClassName","classnames","_defineProperty","inputCustomClassName","inheritFontStyle","fontSize","fontWeight","fontFamily","lineHeight","undefined","SharedProps","disableTrimOnBlur","suffix","onChange","_otherProps$onChange","target","Textarea","resize","style","Input","FormikInlineInput","name","_useField","useField","_useField2","field","meta","_useField2$","setValue","setTouched","_useFormikContext","useFormikContext","submitForm","resetForm","error","touched","omit"],"mappings":"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"}
|