@bigbinary/neeto-molecules 4.0.113 → 4.0.115

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/AuditLogs.js CHANGED
@@ -378,6 +378,7 @@ var Card = function Card(_ref) {
378
378
  }, metadata));
379
379
  var Icon = AUDIT_ICON_MAP[action];
380
380
  return /*#__PURE__*/jsxs("div", {
381
+ "data-cy": "audit-log-card",
381
382
  className: classnames("align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3", {
382
383
  "rounded-t-md border-t": index === 0,
383
384
  "rounded-b-md": index === totalCount - 1
@@ -390,13 +391,16 @@ var Card = function Card(_ref) {
390
391
  })
391
392
  }), /*#__PURE__*/jsxs("div", {
392
393
  className: "flex flex-col gap-y-2",
394
+ "data-cy": "audit-log-content",
393
395
  children: [/*#__PURE__*/jsx(Typography, {
394
396
  component: "span",
397
+ "data-cy": "audit-log-text",
395
398
  lineHeight: "normal",
396
399
  style: "body2",
397
400
  children: auditText
398
401
  }), /*#__PURE__*/jsx(Typography, {
399
402
  className: "neeto-ui-text-gray-500 m-0",
403
+ "data-cy": "audit-log-timestamp",
400
404
  style: "body3",
401
405
  children: performedAt
402
406
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"AuditLogs.js","sources":["../src/components/AuditLogs/constants.js","../src/components/AuditLogs/Trans.jsx","../src/components/AuditLogs/utils.jsx","../src/components/AuditLogs/Card.jsx","../src/components/AuditLogs/api.js","../src/components/AuditLogs/useAuditLogsApi.js","../src/components/AuditLogs/index.jsx"],"sourcesContent":["import {\n User,\n UserAdd,\n UserCircle,\n UserRemove,\n UserSettings,\n CustomDomain,\n} from \"neetoicons\";\nimport { GoogleCalendar, Zoom, Stripe, StripeTypeface } from \"neetoicons/misc\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n CONNECTED_GOOGLE_CALENDER: \"connectedGoogleCalendar\",\n DISCONNECTED_GOOGLE_CALENDER: \"disconnectedGoogleCalendar\",\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};\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]: UserCircle,\n [ACTIONS.USER_SIGNED_UP]: UserAdd,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserSettings,\n [ACTIONS.CREATED_ROLE]: UserAdd,\n [ACTIONS.UPDATED_ROLE]: UserSettings,\n [ACTIONS.DELETED_ROLE]: UserRemove,\n [ACTIONS.CONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\n [ACTIONS.DISCONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\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]: CustomDomain,\n};\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { Typography } from \"neetoui\";\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 Code: (\n <Typography\n className=\"neeto-ui-rounded-md neeto-ui-bg-gray-100 p-1\"\n component=\"code\"\n style=\"body3\"\n />\n ),\n Semibold: (\n <Typography\n className=\"n inline-block text-sm font-medium\"\n component=\"p\"\n />\n ),\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 { values } from \"ramda\";\n\nimport { ACTIONS } from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatChangedFields = changes => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n let element;\n\n if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: humanize(field),\n from: change.from,\n to: change.to,\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: humanize(field), to: change.to }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\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 action,\n performedBy,\n emails = [],\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n addedPermissions,\n}) => {\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 changedFields = formatChangedFields(changes);\n const affectedUser = email || \"user\";\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser, changedFields }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\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);\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 roleName = organizationRole || \"role\";\n const permissionsArray = values(addedPermissions).map(permission =>\n humanize(permission.split(\".\")[1])\n );\n const addedPermissionsText = permissionsArray.join(\", \");\n\n return (\n // Disabling as we're using the same key for both singular and plural cases\n // eslint-disable-next-line @bigbinary/neeto/no-missing-localization\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedRole\"\n additionalValues={{\n performedBy,\n roleName,\n addedPermissionsText,\n count: permissionsArray.length,\n }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedGoogleCalender\"\n additionalValues={{\n performedBy,\n emailAddress: changes.emailAddress,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedGoogleCalender\"\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 default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n","import classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nimport { AUDIT_ICON_MAP } from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({ auditLog, index, totalCount }) => {\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 action,\n performedBy,\n ...metadata,\n });\n\n const Icon = AUDIT_ICON_MAP[action];\n\n return (\n <div\n className={classnames(\n \"align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-100 flex size-10 flex-shrink-0 items-center justify-center\">\n <Icon className=\"neeto-ui-text-gray-600 flex-shrink-0\" size={22} />\n </div>\n <div className=\"flex flex-col gap-y-2\">\n <Typography component=\"span\" lineHeight=\"normal\" style=\"body2\">\n {auditText}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-500 m-0\" style=\"body3\">\n {performedAt}\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 auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Spinner, Pagination } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\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 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 className=\"relative\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, index }}\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 <NoData\n helpText={noDataHelpText}\n title={noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n />\n </div>\n )}\n <Pagination\n className=\"neeto-ui-bg-white fixed bottom-5 right-6\"\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\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 to the `NoData` component when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be passed to the `NoData` component when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","CONNECTED_GOOGLE_CALENDER","DISCONNECTED_GOOGLE_CALENDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","UserCircle","UserAdd","User","UserSettings","UserRemove","GoogleCalendar","StripeTypeface","Stripe","Zoom","CustomDomain","AUDIT_LOGS_PAGE_SIZE","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Code","Typography","className","component","style","Semibold","values","productSuffix","globalProps","appName","formatChangedFields","changes","fields","Object","keys","map","field","index","change","element","isPresent","from","children","humanize","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","performedBy","_ref$emails","emails","firstName","lastName","organizationRole","email","_ref$changes","status","message","errorMessage","addedPermissions","isNotEmpty","emailList","join","name","filter","Boolean","userIdentifier","changedFields","affectedUser","ChangedFields","_Fragment","roleName","permissionsArray","permission","split","addedPermissionsText","count","length","emailAddress","stripeAccountId","zoomAccountId","hostname","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","Icon","_jsxs","classnames","size","lineHeight","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","pageSize","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","Spinner","Container","Header","title","_createElement","id","NoData","helpText","Pagination","pageNo","parseInt"],"mappings":"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"}
1
+ {"version":3,"file":"AuditLogs.js","sources":["../src/components/AuditLogs/constants.js","../src/components/AuditLogs/Trans.jsx","../src/components/AuditLogs/utils.jsx","../src/components/AuditLogs/Card.jsx","../src/components/AuditLogs/api.js","../src/components/AuditLogs/useAuditLogsApi.js","../src/components/AuditLogs/index.jsx"],"sourcesContent":["import {\n User,\n UserAdd,\n UserCircle,\n UserRemove,\n UserSettings,\n CustomDomain,\n} from \"neetoicons\";\nimport { GoogleCalendar, Zoom, Stripe, StripeTypeface } from \"neetoicons/misc\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n CONNECTED_GOOGLE_CALENDER: \"connectedGoogleCalendar\",\n DISCONNECTED_GOOGLE_CALENDER: \"disconnectedGoogleCalendar\",\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};\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]: UserCircle,\n [ACTIONS.USER_SIGNED_UP]: UserAdd,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserSettings,\n [ACTIONS.CREATED_ROLE]: UserAdd,\n [ACTIONS.UPDATED_ROLE]: UserSettings,\n [ACTIONS.DELETED_ROLE]: UserRemove,\n [ACTIONS.CONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\n [ACTIONS.DISCONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\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]: CustomDomain,\n};\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { Typography } from \"neetoui\";\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 Code: (\n <Typography\n className=\"neeto-ui-rounded-md neeto-ui-bg-gray-100 p-1\"\n component=\"code\"\n style=\"body3\"\n />\n ),\n Semibold: (\n <Typography\n className=\"n inline-block text-sm font-medium\"\n component=\"p\"\n />\n ),\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 { values } from \"ramda\";\n\nimport { ACTIONS } from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatChangedFields = changes => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n let element;\n\n if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: humanize(field),\n from: change.from,\n to: change.to,\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: humanize(field), to: change.to }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\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 action,\n performedBy,\n emails = [],\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n addedPermissions,\n}) => {\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 changedFields = formatChangedFields(changes);\n const affectedUser = email || \"user\";\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser, changedFields }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\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);\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 roleName = organizationRole || \"role\";\n const permissionsArray = values(addedPermissions).map(permission =>\n humanize(permission.split(\".\")[1])\n );\n const addedPermissionsText = permissionsArray.join(\", \");\n\n return (\n // Disabling as we're using the same key for both singular and plural cases\n // eslint-disable-next-line @bigbinary/neeto/no-missing-localization\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedRole\"\n additionalValues={{\n performedBy,\n roleName,\n addedPermissionsText,\n count: permissionsArray.length,\n }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedGoogleCalender\"\n additionalValues={{\n performedBy,\n emailAddress: changes.emailAddress,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedGoogleCalender\"\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 default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n","import classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nimport { AUDIT_ICON_MAP } from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({ auditLog, index, totalCount }) => {\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 action,\n performedBy,\n ...metadata,\n });\n\n const Icon = AUDIT_ICON_MAP[action];\n\n return (\n <div\n data-cy=\"audit-log-card\"\n className={classnames(\n \"align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-100 flex size-10 flex-shrink-0 items-center justify-center\">\n <Icon className=\"neeto-ui-text-gray-600 flex-shrink-0\" size={22} />\n </div>\n <div className=\"flex flex-col gap-y-2\" data-cy=\"audit-log-content\">\n <Typography\n component=\"span\"\n data-cy=\"audit-log-text\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {auditText}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-500 m-0\"\n data-cy=\"audit-log-timestamp\"\n style=\"body3\"\n >\n {performedAt}\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 auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Spinner, Pagination } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\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 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 className=\"relative\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, index }}\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 <NoData\n helpText={noDataHelpText}\n title={noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n />\n </div>\n )}\n <Pagination\n className=\"neeto-ui-bg-white fixed bottom-5 right-6\"\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\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 to the `NoData` component when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be passed to the `NoData` component when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","CONNECTED_GOOGLE_CALENDER","DISCONNECTED_GOOGLE_CALENDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","UserCircle","UserAdd","User","UserSettings","UserRemove","GoogleCalendar","StripeTypeface","Stripe","Zoom","CustomDomain","AUDIT_LOGS_PAGE_SIZE","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Code","Typography","className","component","style","Semibold","values","productSuffix","globalProps","appName","formatChangedFields","changes","fields","Object","keys","map","field","index","change","element","isPresent","from","children","humanize","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","performedBy","_ref$emails","emails","firstName","lastName","organizationRole","email","_ref$changes","status","message","errorMessage","addedPermissions","isNotEmpty","emailList","join","name","filter","Boolean","userIdentifier","changedFields","affectedUser","ChangedFields","_Fragment","roleName","permissionsArray","permission","split","addedPermissionsText","count","length","emailAddress","stripeAccountId","zoomAccountId","hostname","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","Icon","_jsxs","classnames","size","lineHeight","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","pageSize","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","Spinner","Container","Header","title","_createElement","id","NoData","helpText","Pagination","pageNo","parseInt"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUO,IAAMA,oBAAoB,GAAG,YAAY;AAEzC,IAAMC,OAAO,GAAG;AACrBC,EAAAA,aAAa,EAAE,cAAc;AAC7BC,EAAAA,cAAc,EAAE,cAAc;AAC9BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,iBAAiB,EAAE,iBAAiB;AACpCC,EAAAA,oBAAoB,EAAE,oBAAoB;AAC1CC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,YAAY,EAAE,aAAa;AAC3BC,EAAAA,yBAAyB,EAAE,yBAAyB;AACpDC,EAAAA,4BAA4B,EAAE,4BAA4B;AAC1DC,EAAAA,wBAAwB,EAAE,wBAAwB;AAClDC,EAAAA,2BAA2B,EAAE,2BAA2B;AACxDC,EAAAA,0BAA0B,EAAE,0BAA0B;AACtDC,EAAAA,6BAA6B,EAAE,6BAA6B;AAC5DC,EAAAA,uBAAuB,EAAE;AAC3B,CAAC;AASM,IAAMC,cAAc,IAAAC,eAAA,GAAA,EAAA,EAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAD,eAAA,EACxBjB,OAAO,CAACC,aAAa,EAAGkB,UAAU,CAAA,EAClCnB,OAAO,CAACE,cAAc,EAAGkB,OAAO,CAAA,EAChCpB,OAAO,CAACG,YAAY,EAAGkB,IAAI,CAAA,EAC3BrB,OAAO,CAACI,iBAAiB,EAAGiB,IAAI,CAAA,EAChCrB,OAAO,CAACK,oBAAoB,EAAGiB,YAAY,CAAA,EAC3CtB,OAAO,CAACM,YAAY,EAAGc,OAAO,CAAA,EAC9BpB,OAAO,CAACO,YAAY,EAAGe,YAAY,CAAA,EACnCtB,OAAO,CAACQ,YAAY,EAAGe,UAAU,CAAA,EACjCvB,OAAO,CAACS,yBAAyB,EAAGe,cAAc,CAAA,EAClDxB,OAAO,CAACU,4BAA4B,EAAGc,cAAc,CAAA,EAAAN,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAAD,eAAA,EACrDjB,OAAO,CAACW,wBAAwB,EAAGc,cAAc,CAAA,EACjDzB,OAAO,CAACY,2BAA2B,EAAGc,MAAM,CAAA,EAC5C1B,OAAO,CAACa,0BAA0B,EAAGc,IAAI,CAAA,EACzC3B,OAAO,CAACc,6BAA6B,EAAGa,IAAI,CAAA,EAC5C3B,OAAO,CAACe,uBAAuB,EAAGa,YAAY,CAAA,CAChD;AAEM,IAAMC,oBAAoB,GAAG,EAAE;;;;AClDtC,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACTC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAAC,qBAAA,GAAAF,IAAA,CACPG,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAE,qBAAA,GAAAJ,IAAA,CACrBK,oBAAoB;AAApBA,IAAAA,oBAAoB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;EAAA,oBAEzBE,GAAA,CAACC,OAAU,EAAA;AACHN,IAAAA,OAAO,EAAPA,OAAO;AACbO,IAAAA,UAAU,EAAAC,eAAA,CAAA;MACRC,IAAI,eACFJ,GAAA,CAACK,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,8CAA8C;AACxDC,QAAAA,SAAS,EAAC,MAAM;AAChBC,QAAAA,KAAK,EAAC;AAAO,OACd,CACF;MACDC,QAAQ,eACNT,GAAA,CAACK,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,oCAAoC;AAC9CC,QAAAA,SAAS,EAAC;OACX;AACF,KAAA,EACER,oBAAoB,CACvB;AACFW,IAAAA,MAAM,EAAAP,eAAA,CAAA;MACJQ,aAAa,EAAEC,WAAW,CAACC;AAAO,KAAA,EAC/BhB,gBAAgB;AACnB,GACH,CAAC;AAAA,CACH;;AC3BD,IAAMiB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,OAAO,EAAI;AACrC,EAAA,IAAMC,MAAM,GAAGC,MAAM,CAACC,IAAI,CAACH,OAAO,CAAC,CAACI,GAAG,CAAC,UAACC,KAAK,EAAEC,KAAK,EAAK;AACxD,IAAA,IAAMC,MAAM,GAAGP,OAAO,CAACK,KAAK,CAAC;AAC7B,IAAA,IAAIG,OAAO;IAEX,IAAID,MAAM,IAAIE,SAAS,CAACF,MAAM,CAACG,IAAI,CAAC,EAAE;AACpCF,MAAAA,OAAO,gBACLvB,GAAA,CAAA,MAAA,EAAA;QAAA0B,QAAA,eACE1B,GAAA,CAACP,KAAK,EAAA;AACJE,UAAAA,OAAO,EAAC,8DAA8D;AACtEE,UAAAA,gBAAgB,EAAE;AAChBuB,YAAAA,KAAK,EAAEO,QAAQ,CAACP,KAAK,CAAC;YACtBK,IAAI,EAAEH,MAAM,CAACG,IAAI;YACjBG,EAAE,EAAEN,MAAM,CAACM;AACb;SACD;AAAC,OAAA,EAROR,KASL,CACP;AACH,IAAA,CAAC,MAAM;AACLG,MAAAA,OAAO,gBACLvB,GAAA,CAAA,MAAA,EAAA;QAAA0B,QAAA,eACE1B,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuB,YAAAA,KAAK,EAAEO,QAAQ,CAACP,KAAK,CAAC;YAAEQ,EAAE,EAAEN,MAAM,CAACM;WAAK;AAC5DjC,UAAAA,OAAO,EAAC;SACT;AAAC,OAAA,EAJOyB,KAKL,CACP;AACH,IAAA;AAEA,IAAA,OAAOC,KAAK,GAAG,CAAC,GACZ,cAACrB,GAAA,CAAA,MAAA,EAAA;AAAA0B,MAAAA,QAAA,EAA2B;KAAE,EAAA,MAAA,CAAAG,MAAA,CAAXT,KAAK,CAAY,CAAC,EAAEG,OAAO,CAAC,GAC/CA,OAAO;AACb,EAAA,CAAC,CAAC;AAEF,EAAA,OAAOP,MAAM,CAACc,IAAI,EAAE;AACtB,CAAC;AAEM,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,MAAM,EAAA;EAAA,OACnCC,gBAAgB,CAACD,MAAM,CAACE,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAAC;AAAA,CAAA;AAE3D,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAzC,IAAA,EAa5B;AAAA,EAAA,IAZJsC,MAAM,GAAAtC,IAAA,CAANsC,MAAM;IACNI,WAAW,GAAA1C,IAAA,CAAX0C,WAAW;IAAAC,WAAA,GAAA3C,IAAA,CACX4C,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IACXE,SAAS,GAAA7C,IAAA,CAAT6C,SAAS;IACTC,QAAQ,GAAA9C,IAAA,CAAR8C,QAAQ;IACRC,gBAAgB,GAAA/C,IAAA,CAAhB+C,gBAAgB;IAChBC,KAAK,GAAAhD,IAAA,CAALgD,KAAK;IAAAC,YAAA,GAAAjD,IAAA,CACLqB,OAAO;AAAPA,IAAAA,OAAO,GAAA4B,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IACZC,MAAM,GAAAlD,IAAA,CAANkD,MAAM;IACNC,OAAO,GAAAnD,IAAA,CAAPmD,OAAO;IACPC,YAAY,GAAApD,IAAA,CAAZoD,YAAY;IACZC,gBAAgB,GAAArD,IAAA,CAAhBqD,gBAAgB;AAEhB,EAAA,QAAQf,MAAM;IACZ,KAAKrE,OAAO,CAACC,aAAa;AAAE,MAAA;QAC1B,IAAIgF,MAAM,KAAK,SAAS,IAAII,UAAU,CAACV,MAAM,CAAC,EAAE;AAC9C,UAAA,IAAMW,SAAS,GAAGX,MAAM,CAACY,IAAI,CAAC,IAAI,CAAC;UAEnC,oBACElD,GAAA,CAACP,KAAK,EAAA;AACJI,YAAAA,gBAAgB,EAAE;AAAEuC,cAAAA,WAAW,EAAXA,WAAW;AAAEa,cAAAA,SAAS,EAATA;aAAY;AAC7CtD,YAAAA,OAAO,EAAC;AAA4C,WACrD,CAAC;AAEN,QAAA;QAEA,oBACEK,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;AAAEU,YAAAA,YAAY,EAAZA;WAAe;AAChDnD,UAAAA,OAAO,EAAC;AAAkD,SAC3D,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACE,cAAc;AAAE,MAAA;AAC3B,QAAA,IAAMsF,IAAI,GAAG,CAACZ,SAAS,EAAEC,QAAQ,CAAC,CAACY,MAAM,CAACC,OAAO,CAAC,CAACH,IAAI,CAAC,GAAG,CAAC;QAC5D,IAAMI,cAAc,GAAGH,IAAI,IAAIV,gBAAgB,IAAIC,KAAK,IAAI,MAAM;QAElE,oBACE1C,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEyD,YAAAA,cAAc,EAAdA;WAAiB;AACrC3D,UAAAA,OAAO,EAAC;AAA4C,SACrD,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACG,YAAY;AAAE,MAAA;AACzB,QAAA,IAAMyF,aAAa,GAAGzC,mBAAmB,CAACC,OAAO,CAAC;AAClD,QAAA,IAAMyC,YAAY,GAAGd,KAAK,IAAI,MAAM;QAEpC,oBACE1C,GAAA,CAACP,KAAK,EAAA;AACJM,UAAAA,oBAAoB,EAAE;YAAE0D,aAAa,eAAEzD,GAAA,CAAA0D,QAAA,EAAA;AAAAhC,cAAAA,QAAA,EAAG6B;aAAgB;WAAI;AAC9D1D,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;AAAEoB,YAAAA,YAAY,EAAZA,YAAY;AAAED,YAAAA,aAAa,EAAbA;WAAgB;AAC/D5D,UAAAA,OAAO,EAAC;AAA2C,SACpD,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACI,iBAAiB;AAAE,MAAA;QAC9B,IAAI6E,MAAM,KAAK,SAAS,IAAII,UAAU,CAACV,MAAM,CAAC,EAAE;AAC9C,UAAA,IAAMW,UAAS,GAAGX,MAAM,CAACY,IAAI,CAAC,IAAI,CAAC;UAEnC,oBACElD,GAAA,CAACP,KAAK,EAAA;AACJI,YAAAA,gBAAgB,EAAE;AAAEuC,cAAAA,WAAW,EAAXA,WAAW;AAAEa,cAAAA,SAAS,EAATA,UAAS;AAAEJ,cAAAA,OAAO,EAAPA;aAAU;AACtDlD,YAAAA,OAAO,EAAC;AAA+C,WACxD,CAAC;AAEN,QAAA;QAEA,oBACEK,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;AAAEU,YAAAA,YAAY,EAAZA;WAAe;AAChDnD,UAAAA,OAAO,EAAC;AAAqD,SAC9D,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACK,oBAAoB;AAAE,MAAA;AACjC,QAAA,IAAMuF,cAAa,GAAGzC,mBAAmB,CAACC,OAAO,CAAC;QAElD,oBACEf,GAAA,CAACP,KAAK,EAAA;AACJM,UAAAA,oBAAoB,EAAE;YAAE0D,aAAa,eAAEzD,GAAA,CAAA0D,QAAA,EAAA;AAAAhC,cAAAA,QAAA,EAAG6B;aAAgB;WAAI;AAC9D1D,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA;WAAc;AAClCzC,UAAAA,OAAO,EAAC;AAAkD,SAC3D,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACM,YAAY;AAAE,MAAA;AACzB,QAAA,IAAM0F,QAAQ,GAAGlB,gBAAgB,IAAI,MAAM;QAE3C,oBACEzC,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;AAAEuB,YAAAA,QAAQ,EAARA;WAAW;AAC5ChE,UAAAA,OAAO,EAAC;AAA2C,SACpD,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACO,YAAY;AAAE,MAAA;AACzB,QAAA,IAAMyF,SAAQ,GAAGlB,gBAAgB,IAAI,MAAM;QAC3C,IAAMmB,gBAAgB,GAAGlD,MAAM,CAACqC,gBAAgB,CAAC,CAAC5B,GAAG,CAAC,UAAA0C,UAAU,EAAA;UAAA,OAC9DlC,QAAQ,CAACkC,UAAU,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAAA,QAAA,CACpC,CAAC;AACD,QAAA,IAAMC,oBAAoB,GAAGH,gBAAgB,CAACV,IAAI,CAAC,IAAI,CAAC;AAExD,QAAA;AAAA;AACE;AACA;AACAlD,UAAAA,GAAA,CAACP,KAAK,EAAA;AACJE,YAAAA,OAAO,EAAC,2CAA2C;AACnDE,YAAAA,gBAAgB,EAAE;AAChBuC,cAAAA,WAAW,EAAXA,WAAW;AACXuB,cAAAA,QAAQ,EAARA,SAAQ;AACRI,cAAAA,oBAAoB,EAApBA,oBAAoB;cACpBC,KAAK,EAAEJ,gBAAgB,CAACK;AAC1B;WACD;AAAC;AAEN,MAAA;IAEA,KAAKtG,OAAO,CAACS,yBAAyB;AAAE,MAAA;QACtC,oBACE4B,GAAA,CAACP,KAAK,EAAA;AACJE,UAAAA,OAAO,EAAC,uDAAuD;AAC/DE,UAAAA,gBAAgB,EAAE;AAChBuC,YAAAA,WAAW,EAAXA,WAAW;YACX8B,YAAY,EAAEnD,OAAO,CAACmD;AACxB;AAAE,SACH,CAAC;AAEN,MAAA;IAEA,KAAKvG,OAAO,CAACU,4BAA4B;AAAE,MAAA;QACzC,oBACE2B,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA;WAAc;AAClCzC,UAAAA,OAAO,EAAC;AAA0D,SACnE,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACW,wBAAwB;AAAE,MAAA;QACrC,oBACE0B,GAAA,CAACP,KAAK,EAAA;AACJE,UAAAA,OAAO,EAAC,sDAAsD;AAC9DE,UAAAA,gBAAgB,EAAE;AAChBuC,YAAAA,WAAW,EAAXA,WAAW;YACX+B,eAAe,EAAEpD,OAAO,CAACoD;AAC3B;AAAE,SACH,CAAC;AAEN,MAAA;IAEA,KAAKxG,OAAO,CAACY,2BAA2B;AAAE,MAAA;QACxC,oBACEyB,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA;WAAc;AAClCzC,UAAAA,OAAO,EAAC;AAAyD,SAClE,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACa,0BAA0B;AAAE,MAAA;QACvC,oBACEwB,GAAA,CAACP,KAAK,EAAA;AACJE,UAAAA,OAAO,EAAC,oDAAoD;AAC5DE,UAAAA,gBAAgB,EAAE;AAChBuC,YAAAA,WAAW,EAAXA,WAAW;YACXgC,aAAa,EAAErD,OAAO,CAACqD;AACzB;AAAE,SACH,CAAC;AAEN,MAAA;IAEA,KAAKzG,OAAO,CAACc,6BAA6B;AAAE,MAAA;QAC1C,oBACEuB,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA;WAAc;AAClCzC,UAAAA,OAAO,EAAC;AAAuD,SAChE,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACe,uBAAuB;AAAE,MAAA;QACpC,oBACEsB,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;YAAEiC,QAAQ,EAAEtD,OAAO,CAACsD;WAAW;AAC9D1E,UAAAA,OAAO,EAAC;AAAqD,SAC9D,CAAC;AAEN,MAAA;IAEA,KAAKhC,OAAO,CAACQ,YAAY;AAAE,MAAA;AACzB,QAAA,IAAMwF,UAAQ,GAAGlB,gBAAgB,IAAI,MAAM;QAE3C,oBACEzC,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA,WAAW;AAAEuB,YAAAA,QAAQ,EAARA;WAAW;AAC5ChE,UAAAA,OAAO,EAAC;AAA2C,SACpD,CAAC;AAEN,MAAA;AAEA,IAAA;AAAS,MAAA;QACP,oBACEK,GAAA,CAACP,KAAK,EAAA;AACJI,UAAAA,gBAAgB,EAAE;AAAEuC,YAAAA,WAAW,EAAXA;WAAc;AAClCzC,UAAAA,OAAO,EAAC;AAA+C,SACxD,CAAC;AAEN,MAAA;AACF;AACF,CAAC;;;;AChQD,IAAM2E,IAAI,GAAG,SAAPA,IAAIA,CAAA5E,IAAA,EAAwC;AAAA,EAAA,IAAlC6E,QAAQ,GAAA7E,IAAA,CAAR6E,QAAQ;IAAElD,KAAK,GAAA3B,IAAA,CAAL2B,KAAK;IAAEmD,UAAU,GAAA9E,IAAA,CAAV8E,UAAU;AACzC,EAAA,IAAQC,GAAG,GAAqCF,QAAQ,CAAhDE,GAAG;IAAEC,QAAQ,GAA2BH,QAAQ,CAA3CG,QAAQ;IAAEC,SAAS,GAAgBJ,QAAQ,CAAjCI,SAAS;IAAEC,SAAS,GAAKL,QAAQ,CAAtBK,SAAS;AAE3C,EAAA,IAAM5C,MAAM,GAAGD,eAAe,CAAC0C,GAAG,CAAC;EACnC,IAAMrC,WAAW,GAAG,CAAAuC,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAExB,IAAI,KAAI,EAAE;AACzC,EAAA,IAAM0B,WAAW,GAAGC,UAAU,CAACC,QAAQ,CAACH,SAAS,CAAC;AAElD,EAAA,IAAMI,SAAS,GAAG7C,qBAAqB,CAAAhC,eAAA,CAAA;AACrC6B,IAAAA,MAAM,EAANA,MAAM;AACNI,IAAAA,WAAW,EAAXA;GAAW,EACRsC,QAAQ,CACZ,CAAC;AAEF,EAAA,IAAMO,IAAI,GAAGtG,cAAc,CAACqD,MAAM,CAAC;AAEnC,EAAA,oBACEkD,IAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAA,EAAQ,gBAAgB;AACxB5E,IAAAA,SAAS,EAAE6E,UAAU,CACnB,gGAAgG,EAChG;MACE,uBAAuB,EAAE9D,KAAK,KAAK,CAAC;AACpC,MAAA,cAAc,EAAEA,KAAK,KAAKmD,UAAU,GAAG;AACzC,KACF,CAAE;AAAA9C,IAAAA,QAAA,gBAEF1B,GAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,mGAAmG;MAAAoB,QAAA,eAChH1B,GAAA,CAACiF,IAAI,EAAA;AAAC3E,QAAAA,SAAS,EAAC,sCAAsC;AAAC8E,QAAAA,IAAI,EAAE;OAAK;KAC/D,CAAC,eACNF,IAAA,CAAA,KAAA,EAAA;AAAK5E,MAAAA,SAAS,EAAC,uBAAuB;AAAC,MAAA,SAAA,EAAQ,mBAAmB;MAAAoB,QAAA,EAAA,cAChE1B,GAAA,CAACK,UAAU,EAAA;AACTE,QAAAA,SAAS,EAAC,MAAM;AAChB,QAAA,SAAA,EAAQ,gBAAgB;AACxB8E,QAAAA,UAAU,EAAC,QAAQ;AACnB7E,QAAAA,KAAK,EAAC,OAAO;AAAAkB,QAAAA,QAAA,EAEZsD;AAAS,OACA,CAAC,eACbhF,GAAA,CAACK,UAAU,EAAA;AACTC,QAAAA,SAAS,EAAC,4BAA4B;AACtC,QAAA,SAAA,EAAQ,qBAAqB;AAC7BE,QAAAA,KAAK,EAAC,OAAO;AAAAkB,QAAAA,QAAA,EAEZmD;AAAW,OACF,CAAC;AAAA,KACV,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;;ACrDD,IAAMS,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,MAAM,EAAA;AAAA,EAAA,OAAIC,KAAK,CAACC,GAAG,CAAC,mBAAmB,EAAE;AAAEF,IAAAA,MAAM,EAANA;AAAO,GAAC,CAAC;AAAA,CAAA;AAE3E,IAAMG,YAAY,GAAG;AAAEJ,EAAAA,cAAc,EAAdA;AAAe,CAAC;;;;ACChC,IAAMK,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAAjG,IAAA,EAAA;AAAA,EAAA,IAAM6F,MAAM,GAAA7F,IAAA,CAAN6F,MAAM;IAAAK,YAAA,GAAAlG,IAAA,CAAEmG,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;EAAA,OACtDE,QAAQ,CAAA3F,eAAA,CAAA;AACN4F,IAAAA,QAAQ,EAAE,CAACrI,oBAAoB,EAAE6H,MAAM,CAAC;IACxCS,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQN,YAAY,CAACJ,cAAc,CAACC,MAAM,CAAC;AAAA,IAAA;GAAA,EAC/CM,OAAO,CACX,CAAC;AAAA,CAAA;;;;ACIJ,IAAMI,SAAS,GAAG,SAAZA,SAASA,CAAAvG,IAAA,EAAqD;AAAA,EAAA,IAA/CwG,WAAW,GAAAxG,IAAA,CAAXwG,WAAW;IAAEC,cAAc,GAAAzG,IAAA,CAAdyG,cAAc;IAAEC,WAAW,GAAA1G,IAAA,CAAX0G,WAAW;AAC3D,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAC,eAAA,GAAsCC,cAAc,EAAE;IAAAC,oBAAA,GAAAF,eAAA,CAA9CG,IAAI;AAAJA,IAAAA,IAAI,GAAAD,oBAAA,KAAA,MAAA,GAAGE,kBAAkB,GAAAF,oBAAA;EAEjC,IAAAG,kBAAA,GAIIlB,iBAAiB,CAAC;AAAEJ,MAAAA,MAAM,EAAE;AAAEoB,QAAAA,IAAI,EAAJA,IAAI;AAAEG,QAAAA,QAAQ,EAAEtH;AAAqB;AAAE,KAAC,CAAC;IAAAuH,qBAAA,GAAAF,kBAAA,CAHzEG,IAAI;AAAAC,IAAAA,sBAAA,GAAAF,qBAAA,KAAA,MAAA,GAAuC,EAAE,GAAAA,qBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAArCE,SAAS;AAATA,IAAAA,SAAS,GAAAD,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAAAE,sBAAA,GAAAH,sBAAA,CAAEzC,UAAU;AAAVA,IAAAA,UAAU,GAAA4C,sBAAA,KAAA,MAAA,GAAG,CAAC,GAAAA,sBAAA;IACtCC,SAAS,GAAAR,kBAAA,CAATQ,SAAS;IACTC,UAAU,GAAAT,kBAAA,CAAVS,UAAU;EAGZ,IAAID,SAAS,IAAIC,UAAU,EAAE;AAC3B,IAAA,oBACEtH,GAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,gDAAgD;AAAAoB,MAAAA,QAAA,eAC7D1B,GAAA,CAACuH,OAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,oBACErC,IAAA,CAACsC,SAAS,EAAA;AAAClH,IAAAA,SAAS,EAAC,UAAU;AAAAoB,IAAAA,QAAA,EAAA,cAC7B1B,GAAA,CAACyH,MAAM,EAAAtH,aAAA,CAAA;MAACuH,KAAK,EAAEnB,CAAC,CAAC,gCAAgC;KAAE,EAAKL,WAAW,CAAG,CAAC,EACtE1E,SAAS,CAAC2F,SAAS,CAAC,gBACnBnH,GAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,QAAQ;MAAAoB,QAAA,EACpByF,SAAS,CAAChG,GAAG,CAAC,UAACoD,QAAQ,EAAElD,KAAK,EAAA;QAAA,oBAC7BsG,aAAA,CAACrD,IAAI,EAAA;AACGC,UAAAA,QAAQ,EAARA,QAAQ;AAAElD,UAAAA,KAAK,EAALA,KAAK;UACrBoD,GAAG,EAAEF,QAAQ,CAACqD,EAAG;UACjBpD,UAAU,EAAE2C,SAAS,CAAClD;AAAO,SAC9B,CAAC;MAAA,CACH;KACE,CAAC,gBAENjE,GAAA,CAAA,KAAA,EAAA;AAAKM,MAAAA,SAAS,EAAC,gDAAgD;MAAAoB,QAAA,eAC7D1B,GAAA,CAAC6H,MAAM,EAAA;AACLC,QAAAA,QAAQ,EAAE3B,cAAe;AACzBuB,QAAAA,KAAK,EAAEtB,WAAW,IAAIG,CAAC,CAAC,iCAAiC;OAC1D;AAAC,KACC,CACN,eACDvG,GAAA,CAAC+H,UAAU,EAAA;AACTzH,MAAAA,SAAS,EAAC,0CAA0C;AACpD0D,MAAAA,KAAK,EAAEQ,UAAW;AAClBwD,MAAAA,MAAM,EAAEC,QAAQ,CAACtB,IAAI,CAAE;AACvBG,MAAAA,QAAQ,EAAEtH;AAAqB,KAChC,CAAC;AAAA,GACO,CAAC;AAEhB;;;;"}
@@ -41,6 +41,7 @@ import '@bigbinary/neetoui/Pane';
41
41
  import '@bigbinary/neeto-team-members-frontend/Profile';
42
42
  import '@bigbinary/neetoui/DatePicker';
43
43
  import '@bigbinary/neeto-commons-frontend/initializers';
44
+ import '@bigbinary/neetoui/Label';
44
45
 
45
46
  var DEFAULT_HOME_BUTTON_PROPS = {
46
47
  tooltip: {
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationHeader.js","sources":["../src/components/NavigationHeader/constants.jsx","../src/components/NavigationHeader/LeftBlock.jsx","../src/components/NavigationHeader/OverflowLinks.jsx","../src/components/NavigationHeader/Navigation.jsx","../src/components/NavigationHeader/utils.js","../src/components/NavigationHeader/RightBlock.jsx","../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n const menuButton = (\n <MenuItem.Button\n {...{ isActive, to }}\n data-cy={`${joinHyphenCase(key)}-more-tab`}\n isDisabled={disabled}\n key={key}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </MenuItem.Button>\n );\n\n if (\n isActive &&\n rest.moreOptions &&\n isNotEmpty(rest.moreOptions.menuItems)\n ) {\n return (\n <Dropdown\n customTarget={menuButton}\n key={`${key}-nested-dropdown`}\n position=\"right-start\"\n trigger=\"hover\"\n >\n <Menu>\n {rest.moreOptions.menuItems.map(\n ({ key, label, ...itemProps }) => (\n <MenuItem.Button key={key} {...itemProps}>\n {label}\n </MenuItem.Button>\n )\n )}\n </Menu>\n </Dropdown>\n );\n }\n\n return menuButton;\n })}\n </Menu>\n </Dropdown>\n );\n};\n\nOverflowLinks.propTypes = {\n /**\n * Array of overflow links to be displayed in the more dropdown\n */\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n moreOptions: PropTypes.shape({\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n};\n\nexport default OverflowLinks;\n","import classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { NavLink } from \"react-router-dom\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport OverflowLinks from \"./OverflowLinks\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <NavLink\n activeClassName=\"active\"\n data-cy={`${joinHyphenCase(key)}-tab`}\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n className={classNames(\n \"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\",\n className,\n { disabled }\n )}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n {...(labelProps || {})}\n >\n {label}\n </Typography>\n {/*\n TODO: In future, render this MoreDropdown only for Active links\n Ref: https://github.com/neetozone/neeto-molecules/issues/2610\n */}\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </NavLink>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.shape({ lineHeight: PropTypes.string }),\n moreOptions: PropTypes.shape({\n isVertical: PropTypes.bool,\n dropdownButtonProps: PropTypes.shape({\n size: PropTypes.string,\n className: PropTypes.string,\n }),\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","buttonStyle","label","buttonProps","classNames","active","map","_ref2","key","disabled","rest","_objectWithoutProperties","_excluded","isActive","menuButton","_createElement","Button","concat","joinHyphenCase","isDisabled","onClick","e","preventDefault","moreOptions","menuItems","customTarget","trigger","_ref3","itemProps","_excluded2","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","_ref2$className","labelProps","NavLink","activeClassName","Typography","component","lineHeight","style","weight","MoreDropdown","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridStyle","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGO,IAAMA,yBAAyB,GAAG;AACvCC,EAAAA,OAAO,EAAE;AACPC,IAAAA,OAAO,EAAEC,CAAC,CAAC,sCAAsC,CAAC;AAClDC,IAAAA,QAAQ,EAAE;GACX;AACDC,EAAAA,OAAO,EAAE,GAAG;AACZC,EAAAA,IAAI,eAAEC,GAAA,CAACC,IAAI,EAAA,EAAE;AACf,CAAC;;;;ACAD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAKT;AAAA,EAAA,IAJaC,qBAAqB,GAAAD,IAAA,CAAtCE,eAAe;IACfP,OAAO,GAAAK,IAAA,CAAPL,OAAO;IACPQ,WAAW,GAAAH,IAAA,CAAXG,WAAW;IACXC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;AAER,EAAA,IAAMF,eAAe,GAAGG,cAAc,CACpCf,yBAAyB,EACzBW,qBACF,CAAC;AAED,EAAA,oBACEK,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,kCAAkC;AAC5C,IAAA,SAAA,EAAQ,8BAA8B;AACtC,IAAA,aAAA,EAAY,8BAA8B;IAAAH,QAAA,EAAA,cAE1CP,GAAA,CAACW,OAAO,EAAA;AACNhB,MAAAA,OAAO,EAAEU,eAAe,CAACX,OAAO,CAACC,OAAQ;AACzCE,MAAAA,QAAQ,EAAEQ,eAAe,CAACX,OAAO,CAACG,QAAS;AAC3Ce,MAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAE;MAAAL,QAAA,eAErBP,GAAA,CAACa,IAAI,EAAA;AAAC,QAAA,SAAA,EAAQ,aAAa;AAAC,QAAA,aAAA,EAAY,aAAa;AAACC,QAAAA,EAAE,EAAEhB,OAAQ;AAAAS,QAAAA,QAAA,eAChEP,GAAA,CAAA,KAAA,EAAA;AAAKU,UAAAA,SAAS,EAAC,iDAAiD;UAAAH,QAAA,EAC7DF,eAAe,CAACN;SACd;OACD;KACC,CAAC,EACTgB,SAAS,CAACT,WAAW,CAAC,iBACrBN,GAAA,CAACgB,MAAM,EAAAC,eAAA,CAAA;MACLC,aAAa,EAAEZ,WAAW,CAACY,aAAc;MACzCC,KAAK,EAAEb,WAAW,CAACa;AAAM,KAAA,EACrBb,WAAW,CAChB,CACF,EACAC,QAAQ;AAAA,GACN,CAAC;AAEV,CAAC;;;;;;ACxCD,IAAQa,IAAI,GAAeC,QAAQ,CAA3BD,IAAI;EAAEE,QAAQ,GAAKD,QAAQ,CAArBC,QAAQ;AAEtB,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAApB,IAAA,EAA0B;AAAA,EAAA,IAApBqB,aAAa,GAAArB,IAAA,CAAbqB,aAAa;AACpC,EAAA,IAAAC,YAAA,GAAqBC,WAAW,EAAE;IAA1BC,QAAQ,GAAAF,YAAA,CAARE,QAAQ;AAChB,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBjC,CAAC,GAAAgC,eAAA,CAADhC,CAAC;EAET,IAAMkC,kBAAkB,GAAGC,QAAQ,CAAC;AAAEjB,IAAAA,EAAE,EAAEa;GAAU,EAAEH,aAAa,CAAC;AAEpE,EAAA,IAAI,CAACQ,UAAU,CAACR,aAAa,CAAC,EAAE;AAC9B,IAAA,OAAO,IAAI;AACb,EAAA;EAEA,oBACExB,GAAA,CAACqB,QAAQ,EAAA;AACPY,IAAAA,WAAW,EAAC,MAAM;AAClBC,IAAAA,KAAK,EAAEtC,CAAC,CAAC,sCAAsC,CAAE;AACjDC,IAAAA,QAAQ,EAAC,YAAY;AACrBsC,IAAAA,WAAW,EAAE;AACXzB,MAAAA,SAAS,EAAE0B,UAAU,CACnB,gNAAgN,EAChN;AAAEC,QAAAA,MAAM,EAAEP;OACZ;KACA;IAAAvB,QAAA,eAEFP,GAAA,CAACoB,IAAI,EAAA;AAAAb,MAAAA,QAAA,EACFiB,aAAa,CAACc,GAAG,CAAC,UAAAC,KAAA,EAA2C;AAAA,QAAA,IAAxCC,GAAG,GAAAD,KAAA,CAAHC,GAAG;UAAE1B,EAAE,GAAAyB,KAAA,CAAFzB,EAAE;UAAEoB,KAAK,GAAAK,KAAA,CAALL,KAAK;UAAEO,QAAQ,GAAAF,KAAA,CAARE,QAAQ;AAAKC,UAAAA,IAAI,GAAAC,wBAAA,CAAAJ,KAAA,EAAAK,WAAA,CAAA;AACrD,QAAA,IAAMC,QAAQ,GAAG/B,EAAE,KAAKa,QAAQ;QAChC,IAAMmB,UAAU,gBACdC,aAAA,CAACzB,QAAQ,CAAC0B,MAAM,EAAA/B,eAAA,CAAA;AACR4B,UAAAA,QAAQ,EAARA,QAAQ;AAAE/B,UAAAA,EAAE,EAAFA,EAAE;AAClB,UAAA,SAAA,EAAA,EAAA,CAAAmC,MAAA,CAAYC,cAAc,CAACV,GAAG,CAAC,EAAA,WAAA,CAAY;AAC3CW,UAAAA,UAAU,EAAEV,QAAS;AACrBD,UAAAA,GAAG,EAAEA,GAAI;AACTY,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,CAAC,EAAA;AAAA,YAAA,OAAIZ,QAAQ,IAAIY,CAAC,CAACC,cAAc,EAAE;AAAA,UAAA;SAAC,EACzCZ,IAAI,CAAA,EAEPR,KACc,CAClB;AAED,QAAA,IACEW,QAAQ,IACRH,IAAI,CAACa,WAAW,IAChBvB,UAAU,CAACU,IAAI,CAACa,WAAW,CAACC,SAAS,CAAC,EACtC;UACA,oBACExD,GAAA,CAACqB,QAAQ,EAAA;AACPoC,YAAAA,YAAY,EAAEX,UAAW;AAEzBjD,YAAAA,QAAQ,EAAC,aAAa;AACtB6D,YAAAA,OAAO,EAAC,OAAO;YAAAnD,QAAA,eAEfP,GAAA,CAACoB,IAAI,EAAA;cAAAb,QAAA,EACFmC,IAAI,CAACa,WAAW,CAACC,SAAS,CAAClB,GAAG,CAC7B,UAAAqB,KAAA,EAAA;AAAA,gBAAA,IAAGnB,GAAG,GAAAmB,KAAA,CAAHnB,GAAG;kBAAEN,KAAK,GAAAyB,KAAA,CAALzB,KAAK;AAAK0B,kBAAAA,SAAS,GAAAjB,wBAAA,CAAAgB,KAAA,EAAAE,UAAA,CAAA;gBAAA,oBACzB7D,GAAA,CAACsB,QAAQ,CAAC0B,MAAM,EAAA/B,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAe2C,SAAS,CAAA,EAAA,EAAA,EAAA;AAAArD,kBAAAA,QAAA,EACrC2B;AAAK,iBAAA,CAAA,EADcM,GAEL,CAAC;cAAA,CAEtB;aACI;AAAC,WAAA,EAAA,EAAA,CAAAS,MAAA,CAZCT,GAAG,EAAA,kBAAA,CAaH,CAAC;AAEf,QAAA;AAEA,QAAA,OAAOM,UAAU;MACnB,CAAC;KACG;AAAC,GACC,CAAC;AAEf,CAAC;;;;;ACpED,IAAMgB,eAAe,GAAG,SAAlBA,eAAeA,CAAA3D,IAAA,EAA6C;AAAA,EAAA,IAAvC4D,WAAW,GAAA5D,IAAA,CAAX4D,WAAW;IAAAC,oBAAA,GAAA7D,IAAA,CAAE8D,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,CAAC,GAAAA,oBAAA;EACzD,IAAME,YAAY,GAAGH,WAAW,CAACI,KAAK,CAAC,CAAC,EAAEF,eAAe,CAAC;AAC1D,EAAA,IAAMzC,aAAa,GAAGuC,WAAW,CAACI,KAAK,CAACF,eAAe,CAAC;AAExD,EAAA,oBACExD,IAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,0FAA0F;AACpG,IAAA,SAAA,EAAQ,oCAAoC;AAC5C,IAAA,aAAA,EAAY,oCAAoC;AAAAH,IAAAA,QAAA,GAE/C2D,YAAY,CAAC5B,GAAG,CACf,UAAAC,KAAA,EAAA;AAAA,MAAA,IAAA6B,eAAA,GAAA7B,KAAA,CACE7B,SAAS;AAATA,QAAAA,SAAS,GAAA0D,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;QACd5B,GAAG,GAAAD,KAAA,CAAHC,GAAG;QACHN,KAAK,GAAAK,KAAA,CAALL,KAAK;QACLO,QAAQ,GAAAF,KAAA,CAARE,QAAQ;QACR4B,UAAU,GAAA9B,KAAA,CAAV8B,UAAU;QACVd,WAAW,GAAAhB,KAAA,CAAXgB,WAAW;AACRb,QAAAA,IAAI,GAAAC,wBAAA,CAAAJ,KAAA,EAAAK,SAAA,CAAA;AAAA,MAAA,oBAEPnC,IAAA,CAAC6D,OAAO,EAAArD,eAAA,CAAAA,eAAA,CAAA;AACNsD,QAAAA,eAAe,EAAC,QAAQ;AACxB,QAAA,SAAA,EAAA,EAAA,CAAAtB,MAAA,CAAYC,cAAc,CAACV,GAAG,CAAC,EAAA,MAAA,CAAO;AACtC,QAAA,aAAA,EAAA,EAAA,CAAAS,MAAA,CAAgBC,cAAc,CAACV,GAAG,CAAC,EAAA,MAAA,CAAO;AAE1C9B,QAAAA,SAAS,EAAE0B,UAAU,CACnB,8EAA8E,EAC9E1B,SAAS,EACT;AAAE+B,UAAAA,QAAQ,EAARA;AAAS,SACb,CAAE;AACFW,QAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,CAAC,EAAA;AAAA,UAAA,OAAIZ,QAAQ,IAAIY,CAAC,CAACC,cAAc,EAAE;AAAA,QAAA;AAAC,OAAA,EACzCZ,IAAI,CAAA,EAAA,EAAA,EAAA;AAAAnC,QAAAA,QAAA,gBAERP,GAAA,CAACwE,UAAU,EAAAvD,eAAA,CAAAA,eAAA,CAAA;AACTwD,UAAAA,SAAS,EAAC,MAAM;AAChBC,UAAAA,UAAU,EAAC,QAAQ;AACnBC,UAAAA,KAAK,EAAC,IAAI;AACVC,UAAAA,MAAM,EAAC;SAAU,EACZP,UAAU,IAAI,EAAE,CAAA,EAAA,EAAA,EAAA;AAAA9D,UAAAA,QAAA,EAEpB2B;AAAK,SAAA,CACI,CAAC,EAKZqB,WAAW,iBAAIvD,GAAA,CAAC6E,YAAY,EAAA5D,eAAA,CAAA,EAAA,EAAKsC,WAAW,CAAG,CAAC;AAAA,OAAA,CAAA,EAtB5Cf,GAuBE,CAAC;AAAA,IAAA,CAEd,CAAC,eACDxC,GAAA,CAACuB,aAAa,EAAA;AAAOC,MAAAA,aAAa,EAAbA;AAAa,KAAK,CAAC;AAAA,GACrC,CAAC;AAEV,CAAC;;;;;AC/DM,IAAMsD,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,GAAG,EAAA;AAAA,EAAA,OAAI,cAAc,CAACC,IAAI,CAACD,GAAG,CAAC;AAAA,CAAA;;;;ACS5D,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAA9E,IAAA,EAkBV;AAAA,EAAA,IAjBJ+E,kBAAkB,GAAA/E,IAAA,CAAlB+E,kBAAkB;IAClBC,eAAe,GAAAhF,IAAA,CAAfgF,eAAe;IACfC,yBAAyB,GAAAjF,IAAA,CAAzBiF,yBAAyB;IACzBC,YAAY,GAAAlF,IAAA,CAAZkF,YAAY;IACZC,WAAW,GAAAnF,IAAA,CAAXmF,WAAW;IACXC,iBAAiB,GAAApF,IAAA,CAAjBoF,iBAAiB;IACjBC,YAAY,GAAArF,IAAA,CAAZqF,YAAY;IACZC,aAAa,GAAAtF,IAAA,CAAbsF,aAAa;IACbC,wBAAwB,GAAAvF,IAAA,CAAxBuF,wBAAwB;IACxBC,mBAAmB,GAAAxF,IAAA,CAAnBwF,mBAAmB;IACnBC,sBAAsB,GAAAzF,IAAA,CAAtByF,sBAAsB;IACtBC,gBAAgB,GAAA1F,IAAA,CAAhB0F,gBAAgB;IAChBC,mBAAmB,GAAA3F,IAAA,CAAnB2F,mBAAmB;IACnBC,WAAW,GAAA5F,IAAA,CAAX4F,WAAW;IACXC,iBAAiB,GAAA7F,IAAA,CAAjB6F,iBAAiB;IACjBC,uBAAuB,GAAA9F,IAAA,CAAvB8F,uBAAuB;IAAAC,qBAAA,GAAA/F,IAAA,CACvBgG,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAAtE,eAAA,GAAcC,cAAc,EAAE;IAAtBjC,CAAC,GAAAgC,eAAA,CAADhC,CAAC;AAET,EAAA,IAAMwG,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAA7D,KAAA,EAAA;AAAA,IAAA,IAAM8D,eAAe,GAAA9D,KAAA,CAAf8D,eAAe;MAAEC,gBAAgB,GAAA/D,KAAA,CAAhB+D,gBAAgB;AAAA,IAAA,OAC7D,CAACpB,kBAAkB,iBACjBzE,IAAA,CAAA8F,QAAA,EAAA;MAAAhG,QAAA,EAAA,cACEP,GAAA,CAACqG,eAAe,EAAApF,aAAA,CAAA,EAAA,EACT6D,aAAa,CAACK,eAAe,CAAC,GAC/B;AAAEqB,QAAAA,IAAI,EAAErB;AAAgB,OAAC,GACzB;AAAErE,QAAAA,EAAE,EAAEqE;AAAgB,OAAC,CAC5B,CAAC,EACDC,yBAAyB,iBACxBpF,GAAA,CAACsG,gBAAgB,EAAA;AACfG,QAAAA,OAAO,EAAEnB,WAAY;QACrBlC,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQiC,YAAY,EAAE;AAAA,QAAA;AAAC,OAC/B,CACF;AAAA,KACD,CACH;AAAA,EAAA,CAAA;AAEH,EAAA,IAAMqB,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAA/C,KAAA,EAAA;AAAA,IAAA,IAAMgD,aAAa,GAAAhD,KAAA,CAAbgD,aAAa;MAAEC,oBAAoB,GAAAjD,KAAA,CAApBiD,oBAAoB;IAAA,oBACjEnG,IAAA,CAAA8F,QAAA,EAAA;AAAAhG,MAAAA,QAAA,GACGqF,sBAAsB,iBACrB5F,GAAA,CAAC2G,aAAa,EAAA1F,aAAA,CAAA;AACZwB,QAAAA,QAAQ,EAAE8C,iBAAkB;AAC5BkB,QAAAA,OAAO,EAAEjB,YAAa;QACtBpC,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQqC,aAAa,EAAE;AAAA,QAAA;AAAC,OAAA,EAC3BU,kBAAkB,CACvB,CACF,eACDnG,GAAA,CAAC4G,oBAAoB,EAAA3F,aAAA,CAAAA,aAAA,CAAA,EAAA,EACd6D,aAAa,CAACa,mBAAmB,CAAC,GACnC;AAAEa,QAAAA,IAAI,EAAEb;AAAoB,OAAC,GAC7B;AAAE7E,QAAAA,EAAE,EAAE6E;OAAqB,CAAA,EAAA,EAAA,EAAA;AAC/BlD,QAAAA,QAAQ,EAAEiD,wBAAyB;QACnChF,SAAS,EAAE0B,UAAU,CAAC;AACpB,UAAA,mCAAmC,EAAE,CAACwD;SACvC;AAAE,OAAA,CACJ,CAAC;AAAA,KACF,CAAC;EAAA,CACJ;EAED,oBACEnF,IAAA,CAAA8F,QAAA,EAAA;IAAAhG,QAAA,EAAA,cACEP,GAAA,CAAC6G,YAAY,EAAA;AAAOT,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAAEM,MAAAA,oBAAoB,EAApBA;AAAoB,KAAK,CAAC,eAClE1G,GAAA,CAAC6G,YAAY,CAACC,KAAK,EAAA;AACjBC,MAAAA,MAAM,EAAElB,gBAAiB;AACzBmB,MAAAA,YAAY,EAAE1B,WAAY;AAC1B2B,MAAAA,OAAO,EACLhB,uBAAuB,IACvBrG,CAAC,CAAC,kDAAkD,CACrD;AACDsH,MAAAA,KAAK,EACHlB,iBAAiB,IAAIpG,CAAC,CAAC,4CAA4C,CACpE;MACDuH,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQrB,mBAAmB,CAAC,KAAK,CAAC;MAAA,CAAC;AAC1CsB,MAAAA,QAAQ,EAAErB;AAAY,KACvB,CAAC;AAAA,GACF,CAAC;AAEP,CAAC;;AC9ED,IAAMsB,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAlH,IAAA,EAIhB;AAAA,EAAA,IAHJmH,eAAe,GAAAnH,IAAA,CAAfmH,eAAe;IACfC,eAAe,GAAApH,IAAA,CAAfoH,eAAe;IACfC,gBAAgB,GAAArH,IAAA,CAAhBqH,gBAAgB;AAEhB,EAAA,IAAAC,eAAA,GAAmBC,cAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AACd,EAAA,IAAMC,QAAQ,GAAGD,MAAM,CAAC,QAAQ,CAAC;AAEjC,EAAA,IAAME,gBAAgB,GAAGC,MAAM,CAC7BC,MAAM,CAAChH,SAAS,EAAE,CAACuG,eAAe,EAAEC,eAAe,EAAEC,gBAAgB,CAAC,CACxE,CAAC;AAED,EAAA,IAAMQ,SAAS,GAAG;AAChBC,IAAAA,mBAAmB,EAAEL,QAAQ,GAAA,SAAA,CAAA3E,MAAA,CAEvBsE,eAAe,GAAGM,gBAAgB,GAAG,CAAC,GAAGA,gBAAgB,EAAA,SAAA,CAAA,GAAA,SAAA,CAAA5E,MAAA,CAEjD4E,gBAAgB,EAAA,QAAA;GAC/B;AAED,EAAA,oBACEpH,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,QAAQ;AAAAH,IAAAA,QAAA,gBACrBP,GAAA,CAAA,KAAA,EAAA;AACEU,MAAAA,SAAS,EAAC,6KAA6K;AACvL,MAAA,SAAA,EAAQ,mBAAmB;AAC3B,MAAA,aAAA,EAAY,mBAAmB;AAAAH,MAAAA,QAAA,eAE/BE,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,mBAAmB;AAACiE,QAAAA,KAAK,EAAEqD,SAAU;QAAAzH,QAAA,EAAA,CACjD+G,eAAe,EACf,CAACM,QAAQ,IAAIL,eAAe,EAC5BC,gBAAgB;OACd;AAAC,KACH,CAAC,EACLI,QAAQ,iBACP5H,GAAA,CAAA,KAAA,EAAA;AAAKU,MAAAA,SAAS,EAAC,yJAAyJ;AAAAH,MAAAA,QAAA,EACrKgH;AAAe,KACb,CACN;AAAA,GACE,CAAC;AAEV;AAEAF,gBAAgB,CAACa,eAAe,GAAGhI,SAAS;AAC5CmH,gBAAgB,CAACvD,eAAe,GAAGA,eAAe;AAClDuD,gBAAgB,CAACc,gBAAgB,GAAGlD,UAAU;;;;"}
1
+ {"version":3,"file":"NavigationHeader.js","sources":["../src/components/NavigationHeader/constants.jsx","../src/components/NavigationHeader/LeftBlock.jsx","../src/components/NavigationHeader/OverflowLinks.jsx","../src/components/NavigationHeader/Navigation.jsx","../src/components/NavigationHeader/utils.js","../src/components/NavigationHeader/RightBlock.jsx","../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n const menuButton = (\n <MenuItem.Button\n {...{ isActive, to }}\n data-cy={`${joinHyphenCase(key)}-more-tab`}\n isDisabled={disabled}\n key={key}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </MenuItem.Button>\n );\n\n if (\n isActive &&\n rest.moreOptions &&\n isNotEmpty(rest.moreOptions.menuItems)\n ) {\n return (\n <Dropdown\n customTarget={menuButton}\n key={`${key}-nested-dropdown`}\n position=\"right-start\"\n trigger=\"hover\"\n >\n <Menu>\n {rest.moreOptions.menuItems.map(\n ({ key, label, ...itemProps }) => (\n <MenuItem.Button key={key} {...itemProps}>\n {label}\n </MenuItem.Button>\n )\n )}\n </Menu>\n </Dropdown>\n );\n }\n\n return menuButton;\n })}\n </Menu>\n </Dropdown>\n );\n};\n\nOverflowLinks.propTypes = {\n /**\n * Array of overflow links to be displayed in the more dropdown\n */\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n moreOptions: PropTypes.shape({\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n};\n\nexport default OverflowLinks;\n","import classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { NavLink } from \"react-router-dom\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport OverflowLinks from \"./OverflowLinks\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <NavLink\n activeClassName=\"active\"\n data-cy={`${joinHyphenCase(key)}-tab`}\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n className={classNames(\n \"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\",\n className,\n { disabled }\n )}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n {...(labelProps || {})}\n >\n {label}\n </Typography>\n {/*\n TODO: In future, render this MoreDropdown only for Active links\n Ref: https://github.com/neetozone/neeto-molecules/issues/2610\n */}\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </NavLink>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.shape({ lineHeight: PropTypes.string }),\n moreOptions: PropTypes.shape({\n isVertical: PropTypes.bool,\n dropdownButtonProps: PropTypes.shape({\n size: PropTypes.string,\n className: PropTypes.string,\n }),\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","buttonStyle","label","buttonProps","classNames","active","map","_ref2","key","disabled","rest","_objectWithoutProperties","_excluded","isActive","menuButton","_createElement","Button","concat","joinHyphenCase","isDisabled","onClick","e","preventDefault","moreOptions","menuItems","customTarget","trigger","_ref3","itemProps","_excluded2","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","_ref2$className","labelProps","NavLink","activeClassName","Typography","component","lineHeight","style","weight","MoreDropdown","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridStyle","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":"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"}
@@ -22,6 +22,7 @@ import Pane from '@bigbinary/neetoui/Pane';
22
22
  import Profile from '@bigbinary/neeto-team-members-frontend/Profile';
23
23
  import DatePicker from '@bigbinary/neetoui/DatePicker';
24
24
  import { globalProps as globalProps$1 } from '@bigbinary/neeto-commons-frontend/initializers';
25
+ import Label from '@bigbinary/neetoui/Label';
25
26
 
26
27
  var _excluded$1 = ["t"];
27
28
  function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -134,28 +135,27 @@ var PublishPreview = function PublishPreview(_ref) {
134
135
  t = _useTranslation.t;
135
136
  if (!title) return null;
136
137
  return /*#__PURE__*/jsxs("div", {
137
- className: "flex flex-col gap-y-1",
138
- children: [/*#__PURE__*/jsx(Typography, {
139
- className: "neeto-ui-label mb-2",
140
- style: "body2",
138
+ className: "flex flex-col",
139
+ children: [/*#__PURE__*/jsx(Label, {
140
+ className: "mb-2",
141
141
  children: t("neetoMolecules.publishBlock.preview")
142
142
  }), /*#__PURE__*/jsx("div", {
143
143
  className: "neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4",
144
144
  children: /*#__PURE__*/jsxs("div", {
145
- className: "flex flex-col items-start gap-4",
145
+ className: "flex flex-col items-start gap-3",
146
146
  children: [coverImageUrl && /*#__PURE__*/jsx("div", {
147
- className: "flex-shrink-0",
147
+ className: "w-full flex-shrink-0",
148
148
  children: /*#__PURE__*/jsx("img", {
149
149
  alt: title,
150
- className: "neeto-ui-rounded h-24 w-40 object-cover",
150
+ className: "neeto-ui-rounded h-52 w-full object-cover",
151
151
  src: coverImageUrl
152
152
  })
153
153
  }), /*#__PURE__*/jsxs("div", {
154
- className: "flex w-full min-w-0 flex-col items-start gap-4",
154
+ className: "flex w-full min-w-0 flex-col items-start gap-1",
155
155
  children: [/*#__PURE__*/jsx(Typography, {
156
156
  className: "break-words",
157
157
  style: "h4",
158
- weight: "semibold",
158
+ weight: "medium",
159
159
  children: title
160
160
  }), publicUrl && /*#__PURE__*/jsx("a", {
161
161
  className: "neeto-ui-text-info-600 break-all",
@@ -197,7 +197,7 @@ var PublishSettings = withT(function (_ref) {
197
197
  })
198
198
  }), /*#__PURE__*/jsx(Pane.Body, {
199
199
  children: /*#__PURE__*/jsxs("div", {
200
- className: "flex h-full w-full flex-col gap-y-8",
200
+ className: "flex w-full flex-col gap-y-6 pb-6",
201
201
  children: [/*#__PURE__*/jsx(Form, {
202
202
  datetimeValue: datetimeValue,
203
203
  onClose: onClose,
@@ -1 +1 @@
1
- {"version":3,"file":"PublishBlock.js","sources":["../src/components/PublishBlock/AlertBlock.jsx","../src/components/PublishBlock/PublishSettings/constants.js","../src/components/PublishBlock/PublishSettings/utils.js","../src/components/PublishBlock/PublishSettings/Form.jsx","../src/components/PublishBlock/PublishSettings/PublishPreview.jsx","../src/components/PublishBlock/PublishSettings/index.jsx","../src/components/PublishBlock/PublishSchedulePane.jsx","../src/components/PublishBlock/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Alert } from \"neetoui\";\n\nconst AlertBlock = withT(({ t, ...props }) => (\n <Alert\n data-cy=\"reset-alert\"\n data-testid=\"reset-alert\"\n submitButtonLabel={t(\"neetoMolecules.common.actions.reset\")}\n {...props}\n />\n));\n\nexport default AlertBlock;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const TIME_FORMAT = \"h A\";\n\nexport const DATE_FORMAT = globalProps.user?.dateFormat || \"DD/MM/YYYY\";\n","import { dynamicArray } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const disabledDate = current =>\n current && current < dayjs().startOf(\"day\");\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return { disabledHours: () => dynamicArray(24, i => i) };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n\n return {\n disabledHours: () => dynamicArray(currentTime.hour() + 1, i => i),\n };\n }\n\n return {};\n};\n\nexport const getDefaultDate = () => {\n let currDate = dayjs();\n currDate = currDate.hour(currDate.hour() + 1);\n\n if (currDate.minute() > 30) {\n currDate = currDate.hour(currDate.hour() + 1);\n }\n\n return currDate;\n};\n","import { dayjs } from \"neetocommons/utils\";\nimport { Profile } from \"neetoteam\";\nimport { Button, DatePicker, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT, TIME_FORMAT } from \"./constants\";\nimport { disabledDate, disabledTime } from \"./utils\";\n\nconst Form = ({ datetimeValue, setDatetimeValue, onClose }) => {\n const { t } = useTranslation();\n const [_, setIsProfilePaneOpen] = Profile.usePaneState();\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <DatePicker\n {...{ disabledDate }}\n required\n showTime\n allowClear={false}\n data-cy=\"publish-later-datepicker-input-field\"\n data-testid=\"publish-later-datepicker-input-field\"\n dateFormat={DATE_FORMAT}\n label={t(\"neetoMolecules.publishBlock.dateTime\")}\n timeFormat={TIME_FORMAT}\n value={datetimeValue}\n timePickerProps={{\n \"data-cy\": \"publish-later-timepicker-input-field\",\n \"data-testid\": \"publish-later-timepicker-input-field\",\n clearIcon: false,\n disabledTime,\n }}\n onChange={date => {\n setDatetimeValue(date.startOf(\"hour\"));\n }}\n />\n <Typography style=\"body3\">\n <Trans\n i18nKey=\"neetoMolecules.publishBlock.timezoneDescription\"\n values={{ timezone: globalProps.user?.timeZone ?? dayjs.tz.guess() }}\n components={{\n button: (\n <Button\n size=\"small\"\n style=\"link\"\n onClick={() => {\n onClose();\n setIsProfilePaneOpen(true);\n }}\n />\n ),\n }}\n />\n </Typography>\n </div>\n );\n};\nexport default Form;\n","import { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PublishPreview = ({ coverImageUrl, title, publicUrl }) => {\n const { t } = useTranslation();\n\n if (!title) return null;\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <Typography className=\"neeto-ui-label mb-2\" style=\"body2\">\n {t(\"neetoMolecules.publishBlock.preview\")}\n </Typography>\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4\">\n <div className=\"flex flex-col items-start gap-4\">\n {coverImageUrl && (\n <div className=\"flex-shrink-0\">\n <img\n alt={title}\n className=\"neeto-ui-rounded h-24 w-40 object-cover\"\n src={coverImageUrl}\n />\n </div>\n )}\n <div className=\"flex w-full min-w-0 flex-col items-start gap-4\">\n <Typography className=\"break-words\" style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {publicUrl && (\n <a\n className=\"neeto-ui-text-info-600 break-all\"\n href={publicUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {publicUrl}\n </a>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default PublishPreview;\n","import { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography, Button, Pane } from \"neetoui\";\n\nimport Form from \"./Form\";\nimport PublishPreview from \"./PublishPreview\";\n\nconst PublishSettings = withT(\n ({\n t,\n isOpen,\n onClose,\n isSubmitting = false,\n onPublish = noop,\n datetimeValue,\n setDatetimeValue,\n previewProps,\n }) => (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography\n data-cy=\"publish-pane-heading\"\n data-testid=\"publish-pane-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"flex h-full w-full flex-col gap-y-8\">\n <Form {...{ datetimeValue, onClose, setDatetimeValue }} />\n {previewProps && <PublishPreview {...previewProps} />}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"publish-submit-button\"\n data-testid=\"publish-submit-button\"\n disabled={isSubmitting}\n label={t(\"neetoMolecules.publishBlock.publishLater\")}\n loading={isSubmitting}\n onClick={() => onPublish({ datetimeValue })}\n />\n <Button\n data-cy=\"publish-cancel-button\"\n data-testid=\"publish-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Pane>\n )\n);\n\nexport default PublishSettings;\n","import { useEffect, useState } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport PublishSettings from \"./PublishSettings\";\n\nconst PublishSchedulePane = ({\n onPublish,\n onClose,\n isSubmitting,\n datetime,\n isOpen,\n previewProps,\n}) => {\n const [datetimeValue, setDatetimeValue] = useState(datetime);\n\n useEffect(() => {\n setDatetimeValue(datetime);\n }, [datetime]);\n\n return (\n <PublishSettings\n {...{\n datetimeValue,\n isOpen,\n isSubmitting,\n onClose,\n onPublish,\n previewProps,\n setDatetimeValue,\n }}\n />\n );\n};\n\nPublishSchedulePane.propTypes = {\n onPublish: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n isSubmitting: PropTypes.bool,\n datetime: PropTypes.string,\n isOpen: PropTypes.bool,\n previewProps: PropTypes.shape({\n coverImageUrl: PropTypes.string,\n title: PropTypes.string,\n publicUrl: PropTypes.string,\n }),\n};\n\nexport default PublishSchedulePane;\n","import classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { ExternalLink, Delete, Clock } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AlertBlock from \"./AlertBlock\";\nimport \"./publish-block.scss\";\nimport PublishSchedulePane from \"./PublishSchedulePane\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst ViewDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"view-draft-button\"\n data-testid=\"view-draft-button\"\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst ResetDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"draft-button\"\n data-testid=\"draft-button\"\n icon={Delete}\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.deleteDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishButton = withT(\n ({\n t,\n tooltipProps,\n showTooltipWhenDisabled = false,\n disabled = false,\n ...props\n }) => (\n <Tooltip\n {...tooltipProps}\n disabled={!tooltipProps || (!showTooltipWhenDisabled && disabled)}\n >\n <div>\n <Button\n data-cy=\"publish-button\"\n data-testid=\"publish-button\"\n label={t(\"neetoMolecules.common.actions.publish\")}\n {...{ disabled, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n </Tooltip>\n )\n);\n\nconst PublishPreviewButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"publish-preview-button\"\n data-testid=\"publish-preview-button\"\n icon={ExternalLink}\n target=\"_blank\"\n className={classnames(\n { \"pointer-events-none\": props.disabled },\n props.className\n )}\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewPublishedVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishBlock = ({\n renderDraftButtons,\n renderPublishButtons,\n datetime,\n}) => {\n const { t } = useTranslation();\n\n const draftBlockButtons = renderDraftButtons({\n ViewDraftButton,\n ResetDraftButton,\n });\n\n return (\n <div\n className=\"neeto-molecules-publish-block\"\n data-cy=\"neeto-molecules-publish-block\"\n data-testid=\"neeto-molecules-publish-block\"\n >\n {isPresent(datetime) && (\n <Tooltip\n position=\"bottom\"\n content={t(\"neetoMolecules.publishBlock.tooltip.publishLater\", {\n date: dateFormat.dateTime(datetime),\n })}\n >\n <div>\n <Clock />\n </div>\n </Tooltip>\n )}\n {draftBlockButtons && (\n <>\n <div className=\"flex items-center gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"publish-block-draft-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.common.actions.draft\")}\n </Typography>\n <div className=\"flex items-center gap-1\">{draftBlockButtons}</div>\n </div>\n <div className=\"neeto-ui-bg-gray-300 h-full w-px\" />\n </>\n )}\n <div className=\"neeto-molecules-publish-block__action-btn\">\n {renderPublishButtons({ PublishButton, PublishPreviewButton })}\n </div>\n </div>\n );\n};\n\nPublishBlock.Alert = AlertBlock;\nPublishBlock.SchedulePane = PublishSchedulePane;\n\nPublishBlock.propTypes = {\n /**\n * The function to render the draft buttons. It provides the `ViewDraftButton` and `ResetDraftButton` components as arguments.\n */\n renderDraftButtons: PropTypes.func,\n /**\n * The function to render the publish buttons. It provides the `PublishButton` and `PublishPreviewButton` components as arguments.\n */\n renderPublishButtons: PropTypes.func,\n};\nexport default PublishBlock;\n"],"names":["AlertBlock","withT","_ref","t","props","_objectWithoutProperties","_excluded","_jsx","Alert","_objectSpread","submitButtonLabel","TIME_FORMAT","DATE_FORMAT","_globalProps$user","globalProps","user","dateFormat","disabledDate","current","dayjs","startOf","disabledTime","selectedDate","today","isBefore","disabledHours","dynamicArray","i","isSame","currentTime","hour","Form","_globalProps$user$tim","datetimeValue","setDatetimeValue","onClose","_useTranslation","useTranslation","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","_slicedToArray","_","setIsProfilePaneOpen","_jsxs","className","children","DatePicker","required","showTime","allowClear","label","timeFormat","value","timePickerProps","clearIcon","onChange","date","Typography","style","Trans","i18nKey","values","timezone","timeZone","tz","guess","components","button","Button","size","onClick","PublishPreview","coverImageUrl","title","publicUrl","alt","src","weight","href","rel","target","PublishSettings","isOpen","_ref$isSubmitting","isSubmitting","_ref$onPublish","onPublish","noop","previewProps","Pane","Header","lineHeight","Body","Footer","disabled","loading","PublishSchedulePane","datetime","_useState","useState","_useState2","useEffect","unUsedI18nProps","ViewDraftButton","icon","ExternalLink","tooltipProps","content","position","touch","omit","ResetDraftButton","_ref2","_excluded2","Delete","PublishButton","_ref3","_ref3$showTooltipWhen","showTooltipWhenDisabled","_ref3$disabled","_excluded3","Tooltip","PublishPreviewButton","_ref4","_excluded4","classnames","PublishBlock","_ref5","renderDraftButtons","renderPublishButtons","draftBlockButtons","isPresent","dateTime","Clock","_Fragment","SchedulePane"],"mappings":"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"}
1
+ {"version":3,"file":"PublishBlock.js","sources":["../src/components/PublishBlock/AlertBlock.jsx","../src/components/PublishBlock/PublishSettings/constants.js","../src/components/PublishBlock/PublishSettings/utils.js","../src/components/PublishBlock/PublishSettings/Form.jsx","../src/components/PublishBlock/PublishSettings/PublishPreview.jsx","../src/components/PublishBlock/PublishSettings/index.jsx","../src/components/PublishBlock/PublishSchedulePane.jsx","../src/components/PublishBlock/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Alert } from \"neetoui\";\n\nconst AlertBlock = withT(({ t, ...props }) => (\n <Alert\n data-cy=\"reset-alert\"\n data-testid=\"reset-alert\"\n submitButtonLabel={t(\"neetoMolecules.common.actions.reset\")}\n {...props}\n />\n));\n\nexport default AlertBlock;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const TIME_FORMAT = \"h A\";\n\nexport const DATE_FORMAT = globalProps.user?.dateFormat || \"DD/MM/YYYY\";\n","import { dynamicArray } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const disabledDate = current =>\n current && current < dayjs().startOf(\"day\");\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return { disabledHours: () => dynamicArray(24, i => i) };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n\n return {\n disabledHours: () => dynamicArray(currentTime.hour() + 1, i => i),\n };\n }\n\n return {};\n};\n\nexport const getDefaultDate = () => {\n let currDate = dayjs();\n currDate = currDate.hour(currDate.hour() + 1);\n\n if (currDate.minute() > 30) {\n currDate = currDate.hour(currDate.hour() + 1);\n }\n\n return currDate;\n};\n","import { dayjs } from \"neetocommons/utils\";\nimport { Profile } from \"neetoteam\";\nimport { Button, DatePicker, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT, TIME_FORMAT } from \"./constants\";\nimport { disabledDate, disabledTime } from \"./utils\";\n\nconst Form = ({ datetimeValue, setDatetimeValue, onClose }) => {\n const { t } = useTranslation();\n const [_, setIsProfilePaneOpen] = Profile.usePaneState();\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <DatePicker\n {...{ disabledDate }}\n required\n showTime\n allowClear={false}\n data-cy=\"publish-later-datepicker-input-field\"\n data-testid=\"publish-later-datepicker-input-field\"\n dateFormat={DATE_FORMAT}\n label={t(\"neetoMolecules.publishBlock.dateTime\")}\n timeFormat={TIME_FORMAT}\n value={datetimeValue}\n timePickerProps={{\n \"data-cy\": \"publish-later-timepicker-input-field\",\n \"data-testid\": \"publish-later-timepicker-input-field\",\n clearIcon: false,\n disabledTime,\n }}\n onChange={date => {\n setDatetimeValue(date.startOf(\"hour\"));\n }}\n />\n <Typography style=\"body3\">\n <Trans\n i18nKey=\"neetoMolecules.publishBlock.timezoneDescription\"\n values={{ timezone: globalProps.user?.timeZone ?? dayjs.tz.guess() }}\n components={{\n button: (\n <Button\n size=\"small\"\n style=\"link\"\n onClick={() => {\n onClose();\n setIsProfilePaneOpen(true);\n }}\n />\n ),\n }}\n />\n </Typography>\n </div>\n );\n};\nexport default Form;\n","import { Label, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PublishPreview = ({ coverImageUrl, title, publicUrl }) => {\n const { t } = useTranslation();\n\n if (!title) return null;\n\n return (\n <div className=\"flex flex-col\">\n <Label className=\"mb-2\">{t(\"neetoMolecules.publishBlock.preview\")}</Label>\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4\">\n <div className=\"flex flex-col items-start gap-3\">\n {coverImageUrl && (\n <div className=\"w-full flex-shrink-0\">\n <img\n alt={title}\n className=\"neeto-ui-rounded h-52 w-full object-cover\"\n src={coverImageUrl}\n />\n </div>\n )}\n <div className=\"flex w-full min-w-0 flex-col items-start gap-1\">\n <Typography className=\"break-words\" style=\"h4\" weight=\"medium\">\n {title}\n </Typography>\n {publicUrl && (\n <a\n className=\"neeto-ui-text-info-600 break-all\"\n href={publicUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {publicUrl}\n </a>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default PublishPreview;\n","import { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography, Button, Pane } from \"neetoui\";\n\nimport Form from \"./Form\";\nimport PublishPreview from \"./PublishPreview\";\n\nconst PublishSettings = withT(\n ({\n t,\n isOpen,\n onClose,\n isSubmitting = false,\n onPublish = noop,\n datetimeValue,\n setDatetimeValue,\n previewProps,\n }) => (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography\n data-cy=\"publish-pane-heading\"\n data-testid=\"publish-pane-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"flex w-full flex-col gap-y-6 pb-6\">\n <Form {...{ datetimeValue, onClose, setDatetimeValue }} />\n {previewProps && <PublishPreview {...previewProps} />}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"publish-submit-button\"\n data-testid=\"publish-submit-button\"\n disabled={isSubmitting}\n label={t(\"neetoMolecules.publishBlock.publishLater\")}\n loading={isSubmitting}\n onClick={() => onPublish({ datetimeValue })}\n />\n <Button\n data-cy=\"publish-cancel-button\"\n data-testid=\"publish-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Pane>\n )\n);\n\nexport default PublishSettings;\n","import { useEffect, useState } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport PublishSettings from \"./PublishSettings\";\n\nconst PublishSchedulePane = ({\n onPublish,\n onClose,\n isSubmitting,\n datetime,\n isOpen,\n previewProps,\n}) => {\n const [datetimeValue, setDatetimeValue] = useState(datetime);\n\n useEffect(() => {\n setDatetimeValue(datetime);\n }, [datetime]);\n\n return (\n <PublishSettings\n {...{\n datetimeValue,\n isOpen,\n isSubmitting,\n onClose,\n onPublish,\n previewProps,\n setDatetimeValue,\n }}\n />\n );\n};\n\nPublishSchedulePane.propTypes = {\n onPublish: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n isSubmitting: PropTypes.bool,\n datetime: PropTypes.string,\n isOpen: PropTypes.bool,\n previewProps: PropTypes.shape({\n coverImageUrl: PropTypes.string,\n title: PropTypes.string,\n publicUrl: PropTypes.string,\n }),\n};\n\nexport default PublishSchedulePane;\n","import classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { ExternalLink, Delete, Clock } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AlertBlock from \"./AlertBlock\";\nimport \"./publish-block.scss\";\nimport PublishSchedulePane from \"./PublishSchedulePane\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst ViewDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"view-draft-button\"\n data-testid=\"view-draft-button\"\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst ResetDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"draft-button\"\n data-testid=\"draft-button\"\n icon={Delete}\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.deleteDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishButton = withT(\n ({\n t,\n tooltipProps,\n showTooltipWhenDisabled = false,\n disabled = false,\n ...props\n }) => (\n <Tooltip\n {...tooltipProps}\n disabled={!tooltipProps || (!showTooltipWhenDisabled && disabled)}\n >\n <div>\n <Button\n data-cy=\"publish-button\"\n data-testid=\"publish-button\"\n label={t(\"neetoMolecules.common.actions.publish\")}\n {...{ disabled, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n </Tooltip>\n )\n);\n\nconst PublishPreviewButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"publish-preview-button\"\n data-testid=\"publish-preview-button\"\n icon={ExternalLink}\n target=\"_blank\"\n className={classnames(\n { \"pointer-events-none\": props.disabled },\n props.className\n )}\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewPublishedVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishBlock = ({\n renderDraftButtons,\n renderPublishButtons,\n datetime,\n}) => {\n const { t } = useTranslation();\n\n const draftBlockButtons = renderDraftButtons({\n ViewDraftButton,\n ResetDraftButton,\n });\n\n return (\n <div\n className=\"neeto-molecules-publish-block\"\n data-cy=\"neeto-molecules-publish-block\"\n data-testid=\"neeto-molecules-publish-block\"\n >\n {isPresent(datetime) && (\n <Tooltip\n position=\"bottom\"\n content={t(\"neetoMolecules.publishBlock.tooltip.publishLater\", {\n date: dateFormat.dateTime(datetime),\n })}\n >\n <div>\n <Clock />\n </div>\n </Tooltip>\n )}\n {draftBlockButtons && (\n <>\n <div className=\"flex items-center gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"publish-block-draft-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.common.actions.draft\")}\n </Typography>\n <div className=\"flex items-center gap-1\">{draftBlockButtons}</div>\n </div>\n <div className=\"neeto-ui-bg-gray-300 h-full w-px\" />\n </>\n )}\n <div className=\"neeto-molecules-publish-block__action-btn\">\n {renderPublishButtons({ PublishButton, PublishPreviewButton })}\n </div>\n </div>\n );\n};\n\nPublishBlock.Alert = AlertBlock;\nPublishBlock.SchedulePane = PublishSchedulePane;\n\nPublishBlock.propTypes = {\n /**\n * The function to render the draft buttons. It provides the `ViewDraftButton` and `ResetDraftButton` components as arguments.\n */\n renderDraftButtons: PropTypes.func,\n /**\n * The function to render the publish buttons. It provides the `PublishButton` and `PublishPreviewButton` components as arguments.\n */\n renderPublishButtons: PropTypes.func,\n};\nexport default PublishBlock;\n"],"names":["AlertBlock","withT","_ref","t","props","_objectWithoutProperties","_excluded","_jsx","Alert","_objectSpread","submitButtonLabel","TIME_FORMAT","DATE_FORMAT","_globalProps$user","globalProps","user","dateFormat","disabledDate","current","dayjs","startOf","disabledTime","selectedDate","today","isBefore","disabledHours","dynamicArray","i","isSame","currentTime","hour","Form","_globalProps$user$tim","datetimeValue","setDatetimeValue","onClose","_useTranslation","useTranslation","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","_slicedToArray","_","setIsProfilePaneOpen","_jsxs","className","children","DatePicker","required","showTime","allowClear","label","timeFormat","value","timePickerProps","clearIcon","onChange","date","Typography","style","Trans","i18nKey","values","timezone","timeZone","tz","guess","components","button","Button","size","onClick","PublishPreview","coverImageUrl","title","publicUrl","Label","alt","src","weight","href","rel","target","PublishSettings","isOpen","_ref$isSubmitting","isSubmitting","_ref$onPublish","onPublish","noop","previewProps","Pane","Header","lineHeight","Body","Footer","disabled","loading","PublishSchedulePane","datetime","_useState","useState","_useState2","useEffect","unUsedI18nProps","ViewDraftButton","icon","ExternalLink","tooltipProps","content","position","touch","omit","ResetDraftButton","_ref2","_excluded2","Delete","PublishButton","_ref3","_ref3$showTooltipWhen","showTooltipWhenDisabled","_ref3$disabled","_excluded3","Tooltip","PublishPreviewButton","_ref4","_excluded4","classnames","PublishBlock","_ref5","renderDraftButtons","renderPublishButtons","draftBlockButtons","isPresent","dateTime","Clock","_Fragment","SchedulePane"],"mappings":"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"}
@@ -380,6 +380,7 @@ var Card = function Card(_ref) {
380
380
  }, metadata));
381
381
  var Icon = AUDIT_ICON_MAP[action];
382
382
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
383
+ "data-cy": "audit-log-card",
383
384
  className: classnames("align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3", {
384
385
  "rounded-t-md border-t": index === 0,
385
386
  "rounded-b-md": index === totalCount - 1
@@ -392,13 +393,16 @@ var Card = function Card(_ref) {
392
393
  })
393
394
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
394
395
  className: "flex flex-col gap-y-2",
396
+ "data-cy": "audit-log-content",
395
397
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
396
398
  component: "span",
399
+ "data-cy": "audit-log-text",
397
400
  lineHeight: "normal",
398
401
  style: "body2",
399
402
  children: auditText
400
403
  }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
401
404
  className: "neeto-ui-text-gray-500 m-0",
405
+ "data-cy": "audit-log-timestamp",
402
406
  style: "body3",
403
407
  children: performedAt
404
408
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"AuditLogs.js","sources":["../../src/components/AuditLogs/constants.js","../../src/components/AuditLogs/Trans.jsx","../../src/components/AuditLogs/utils.jsx","../../src/components/AuditLogs/Card.jsx","../../src/components/AuditLogs/api.js","../../src/components/AuditLogs/useAuditLogsApi.js","../../src/components/AuditLogs/index.jsx"],"sourcesContent":["import {\n User,\n UserAdd,\n UserCircle,\n UserRemove,\n UserSettings,\n CustomDomain,\n} from \"neetoicons\";\nimport { GoogleCalendar, Zoom, Stripe, StripeTypeface } from \"neetoicons/misc\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n CONNECTED_GOOGLE_CALENDER: \"connectedGoogleCalendar\",\n DISCONNECTED_GOOGLE_CALENDER: \"disconnectedGoogleCalendar\",\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};\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]: UserCircle,\n [ACTIONS.USER_SIGNED_UP]: UserAdd,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserSettings,\n [ACTIONS.CREATED_ROLE]: UserAdd,\n [ACTIONS.UPDATED_ROLE]: UserSettings,\n [ACTIONS.DELETED_ROLE]: UserRemove,\n [ACTIONS.CONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\n [ACTIONS.DISCONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\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]: CustomDomain,\n};\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { Typography } from \"neetoui\";\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 Code: (\n <Typography\n className=\"neeto-ui-rounded-md neeto-ui-bg-gray-100 p-1\"\n component=\"code\"\n style=\"body3\"\n />\n ),\n Semibold: (\n <Typography\n className=\"n inline-block text-sm font-medium\"\n component=\"p\"\n />\n ),\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 { values } from \"ramda\";\n\nimport { ACTIONS } from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatChangedFields = changes => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n let element;\n\n if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: humanize(field),\n from: change.from,\n to: change.to,\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: humanize(field), to: change.to }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\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 action,\n performedBy,\n emails = [],\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n addedPermissions,\n}) => {\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 changedFields = formatChangedFields(changes);\n const affectedUser = email || \"user\";\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser, changedFields }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\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);\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 roleName = organizationRole || \"role\";\n const permissionsArray = values(addedPermissions).map(permission =>\n humanize(permission.split(\".\")[1])\n );\n const addedPermissionsText = permissionsArray.join(\", \");\n\n return (\n // Disabling as we're using the same key for both singular and plural cases\n // eslint-disable-next-line @bigbinary/neeto/no-missing-localization\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedRole\"\n additionalValues={{\n performedBy,\n roleName,\n addedPermissionsText,\n count: permissionsArray.length,\n }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedGoogleCalender\"\n additionalValues={{\n performedBy,\n emailAddress: changes.emailAddress,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedGoogleCalender\"\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 default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n","import classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nimport { AUDIT_ICON_MAP } from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({ auditLog, index, totalCount }) => {\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 action,\n performedBy,\n ...metadata,\n });\n\n const Icon = AUDIT_ICON_MAP[action];\n\n return (\n <div\n className={classnames(\n \"align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-100 flex size-10 flex-shrink-0 items-center justify-center\">\n <Icon className=\"neeto-ui-text-gray-600 flex-shrink-0\" size={22} />\n </div>\n <div className=\"flex flex-col gap-y-2\">\n <Typography component=\"span\" lineHeight=\"normal\" style=\"body2\">\n {auditText}\n </Typography>\n <Typography className=\"neeto-ui-text-gray-500 m-0\" style=\"body3\">\n {performedAt}\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 auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Spinner, Pagination } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\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 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 className=\"relative\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, index }}\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 <NoData\n helpText={noDataHelpText}\n title={noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n />\n </div>\n )}\n <Pagination\n className=\"neeto-ui-bg-white fixed bottom-5 right-6\"\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\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 to the `NoData` component when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be passed to the `NoData` component when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","CONNECTED_GOOGLE_CALENDER","DISCONNECTED_GOOGLE_CALENDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","UserCircle","UserAdd","User","UserSettings","UserRemove","GoogleCalendar","StripeTypeface","Stripe","Zoom","CustomDomain","AUDIT_LOGS_PAGE_SIZE","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Code","Typography","className","component","style","Semibold","values","productSuffix","globalProps","appName","formatChangedFields","changes","fields","Object","keys","map","field","index","change","element","isPresent","from","children","humanize","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","performedBy","_ref$emails","emails","firstName","lastName","organizationRole","email","_ref$changes","status","message","errorMessage","addedPermissions","isNotEmpty","emailList","join","name","filter","Boolean","userIdentifier","changedFields","affectedUser","ChangedFields","_Fragment","roleName","permissionsArray","permission","split","addedPermissionsText","count","length","emailAddress","stripeAccountId","zoomAccountId","hostname","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","Icon","_jsxs","classnames","size","lineHeight","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","pageSize","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","Spinner","Container","Header","title","_createElement","id","NoData","helpText","Pagination","pageNo","parseInt"],"mappings":"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"}
1
+ {"version":3,"file":"AuditLogs.js","sources":["../../src/components/AuditLogs/constants.js","../../src/components/AuditLogs/Trans.jsx","../../src/components/AuditLogs/utils.jsx","../../src/components/AuditLogs/Card.jsx","../../src/components/AuditLogs/api.js","../../src/components/AuditLogs/useAuditLogsApi.js","../../src/components/AuditLogs/index.jsx"],"sourcesContent":["import {\n User,\n UserAdd,\n UserCircle,\n UserRemove,\n UserSettings,\n CustomDomain,\n} from \"neetoicons\";\nimport { GoogleCalendar, Zoom, Stripe, StripeTypeface } from \"neetoicons/misc\";\n\nexport const AUDIT_LOGS_QUERY_KEY = \"audit-logs\";\n\nexport const ACTIONS = {\n INVITED_USERS: \"invitedUsers\",\n USER_SIGNED_UP: \"userSignedUp\",\n UPDATED_USER: \"updatedUser\",\n BULK_UPDATE_USERS: \"bulkUpdateUsers\",\n UPDATED_USER_PROFILE: \"updatedUserProfile\",\n CREATED_ROLE: \"createdRole\",\n UPDATED_ROLE: \"updatedRole\",\n DELETED_ROLE: \"deletedRole\",\n CONNECTED_GOOGLE_CALENDER: \"connectedGoogleCalendar\",\n DISCONNECTED_GOOGLE_CALENDER: \"disconnectedGoogleCalendar\",\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};\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]: UserCircle,\n [ACTIONS.USER_SIGNED_UP]: UserAdd,\n [ACTIONS.UPDATED_USER]: User,\n [ACTIONS.BULK_UPDATE_USERS]: User,\n [ACTIONS.UPDATED_USER_PROFILE]: UserSettings,\n [ACTIONS.CREATED_ROLE]: UserAdd,\n [ACTIONS.UPDATED_ROLE]: UserSettings,\n [ACTIONS.DELETED_ROLE]: UserRemove,\n [ACTIONS.CONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\n [ACTIONS.DISCONNECTED_GOOGLE_CALENDER]: GoogleCalendar,\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]: CustomDomain,\n};\n\nexport const AUDIT_LOGS_PAGE_SIZE = 12;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { Typography } from \"neetoui\";\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 Code: (\n <Typography\n className=\"neeto-ui-rounded-md neeto-ui-bg-gray-100 p-1\"\n component=\"code\"\n style=\"body3\"\n />\n ),\n Semibold: (\n <Typography\n className=\"n inline-block text-sm font-medium\"\n component=\"p\"\n />\n ),\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 { values } from \"ramda\";\n\nimport { ACTIONS } from \"./constants\";\nimport Trans from \"./Trans\";\n\nconst formatChangedFields = changes => {\n const fields = Object.keys(changes).map((field, index) => {\n const change = changes[field];\n let element;\n\n if (change && isPresent(change.from)) {\n element = (\n <span key={field}>\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithPreviousValue\"\n additionalValues={{\n field: humanize(field),\n from: change.from,\n to: change.to,\n }}\n />\n </span>\n );\n } else {\n element = (\n <span key={field}>\n <Trans\n additionalValues={{ field: humanize(field), to: change.to }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedFieldsWithNewValue\"\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 action,\n performedBy,\n emails = [],\n firstName,\n lastName,\n organizationRole,\n email,\n changes = {},\n status,\n message,\n errorMessage,\n addedPermissions,\n}) => {\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 changedFields = formatChangedFields(changes);\n const affectedUser = email || \"user\";\n\n return (\n <Trans\n additionalComponents={{ ChangedFields: <>{changedFields}</> }}\n additionalValues={{ performedBy, affectedUser, changedFields }}\n i18nKey=\"neetoMolecules.auditLogs.text.updatedUser\"\n />\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);\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 roleName = organizationRole || \"role\";\n const permissionsArray = values(addedPermissions).map(permission =>\n humanize(permission.split(\".\")[1])\n );\n const addedPermissionsText = permissionsArray.join(\", \");\n\n return (\n // Disabling as we're using the same key for both singular and plural cases\n // eslint-disable-next-line @bigbinary/neeto/no-missing-localization\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.updatedRole\"\n additionalValues={{\n performedBy,\n roleName,\n addedPermissionsText,\n count: permissionsArray.length,\n }}\n />\n );\n }\n\n case ACTIONS.CONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n i18nKey=\"neetoMolecules.auditLogs.text.connectedGoogleCalender\"\n additionalValues={{\n performedBy,\n emailAddress: changes.emailAddress,\n }}\n />\n );\n }\n\n case ACTIONS.DISCONNECTED_GOOGLE_CALENDER: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.disconnectedGoogleCalender\"\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 default: {\n return (\n <Trans\n additionalValues={{ performedBy }}\n i18nKey=\"neetoMolecules.auditLogs.text.performedAction\"\n />\n );\n }\n }\n};\n","import classnames from \"classnames\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { Typography } from \"neetoui\";\n\nimport { AUDIT_ICON_MAP } from \"./constants\";\nimport { constructAuditLogText, transformAction } from \"./utils\";\n\nconst Card = ({ auditLog, index, totalCount }) => {\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 action,\n performedBy,\n ...metadata,\n });\n\n const Icon = AUDIT_ICON_MAP[action];\n\n return (\n <div\n data-cy=\"audit-log-card\"\n className={classnames(\n \"align-items-center neeto-ui-border-gray-200 flex w-full gap-x-4 border-b border-l border-r p-3\",\n {\n \"rounded-t-md border-t\": index === 0,\n \"rounded-b-md\": index === totalCount - 1,\n }\n )}\n >\n <div className=\"neeto-ui-rounded-full neeto-ui-bg-gray-100 flex size-10 flex-shrink-0 items-center justify-center\">\n <Icon className=\"neeto-ui-text-gray-600 flex-shrink-0\" size={22} />\n </div>\n <div className=\"flex flex-col gap-y-2\" data-cy=\"audit-log-content\">\n <Typography\n component=\"span\"\n data-cy=\"audit-log-text\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {auditText}\n </Typography>\n <Typography\n className=\"neeto-ui-text-gray-500 m-0\"\n data-cy=\"audit-log-timestamp\"\n style=\"body3\"\n >\n {performedAt}\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 auditLogsApi = { fetchAuditLogs };\n\nexport default auditLogsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport auditLogsApi from \"./api\";\nimport { AUDIT_LOGS_QUERY_KEY } from \"./constants\";\n\nexport const useFetchAuditLogs = ({ params, options = {} }) =>\n useQuery({\n queryKey: [AUDIT_LOGS_QUERY_KEY, params],\n queryFn: () => auditLogsApi.fetchAuditLogs(params),\n ...options,\n });\n","import { isPresent } from \"neetocist\";\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { NoData, Spinner, Pagination } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\n\nimport Card from \"./Card\";\nimport { AUDIT_LOGS_PAGE_SIZE } from \"./constants\";\nimport { useFetchAuditLogs } from \"./useAuditLogsApi\";\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 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 className=\"relative\">\n <Header title={t(\"neetoMolecules.auditLogs.title\")} {...headerProps} />\n {isPresent(auditLogs) ? (\n <div className=\"w-full\">\n {auditLogs.map((auditLog, index) => (\n <Card\n {...{ auditLog, index }}\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 <NoData\n helpText={noDataHelpText}\n title={noDataTitle || t(\"neetoMolecules.auditLogs.noData\")}\n />\n </div>\n )}\n <Pagination\n className=\"neeto-ui-bg-white fixed bottom-5 right-6\"\n count={totalCount}\n pageNo={parseInt(page)}\n pageSize={AUDIT_LOGS_PAGE_SIZE}\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 to the `NoData` component when there are no audit logs.\n */\n noDataHelpText: propTypes.string,\n /**\n * Title to be passed to the `NoData` component when there are no audit logs.\n */\n noDataTitle: propTypes.string,\n};\n\nexport default AuditLogs;\n"],"names":["AUDIT_LOGS_QUERY_KEY","ACTIONS","INVITED_USERS","USER_SIGNED_UP","UPDATED_USER","BULK_UPDATE_USERS","UPDATED_USER_PROFILE","CREATED_ROLE","UPDATED_ROLE","DELETED_ROLE","CONNECTED_GOOGLE_CALENDER","DISCONNECTED_GOOGLE_CALENDER","CONNECTED_STRIPE_ACCOUNT","DISCONNECTED_STRIPE_ACCOUNT","CONNECTED_ZOOM_INTEGRATION","DISCONNECTED_ZOOM_INTEGRATION","CONNECTED_CUSTOM_DOMAIN","AUDIT_ICON_MAP","_AUDIT_ICON_MAP","_defineProperty","UserCircle","UserAdd","User","UserSettings","UserRemove","GoogleCalendar","StripeTypeface","Stripe","Zoom","CustomDomain","AUDIT_LOGS_PAGE_SIZE","Trans","_ref","i18nKey","_ref$additionalValues","additionalValues","_ref$additionalCompon","additionalComponents","_jsx","ReactTrans","components","_objectSpread","Code","Typography","className","component","style","Semibold","values","productSuffix","globalProps","appName","formatChangedFields","changes","fields","Object","keys","map","field","index","change","element","isPresent","from","children","humanize","to","concat","flat","transformAction","action","snakeToCamelCase","replace","constructAuditLogText","performedBy","_ref$emails","emails","firstName","lastName","organizationRole","email","_ref$changes","status","message","errorMessage","addedPermissions","isNotEmpty","emailList","join","name","filter","Boolean","userIdentifier","changedFields","affectedUser","ChangedFields","_Fragment","roleName","permissionsArray","permission","split","addedPermissionsText","count","length","emailAddress","stripeAccountId","zoomAccountId","hostname","Card","auditLog","totalCount","key","metadata","performer","updatedAt","performedAt","dateFormat","dateTime","auditText","Icon","_jsxs","classnames","size","lineHeight","fetchAuditLogs","params","axios","get","auditLogsApi","useFetchAuditLogs","_ref$options","options","useQuery","queryKey","queryFn","AuditLogs","headerProps","noDataHelpText","noDataTitle","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$page","page","DEFAULT_PAGE_INDEX","_useFetchAuditLogs","pageSize","_useFetchAuditLogs$da","data","_useFetchAuditLogs$da2","_useFetchAuditLogs$da3","auditLogs","_useFetchAuditLogs$da4","isLoading","isFetching","Spinner","Container","Header","title","_createElement","id","NoData","helpText","Pagination","pageNo","parseInt"],"mappings":"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"}
@@ -43,6 +43,7 @@ require('@bigbinary/neetoui/Pane');
43
43
  require('@bigbinary/neeto-team-members-frontend/Profile');
44
44
  require('@bigbinary/neetoui/DatePicker');
45
45
  require('@bigbinary/neeto-commons-frontend/initializers');
46
+ require('@bigbinary/neetoui/Label');
46
47
 
47
48
  var DEFAULT_HOME_BUTTON_PROPS = {
48
49
  tooltip: {
@@ -1 +1 @@
1
- {"version":3,"file":"NavigationHeader.js","sources":["../../src/components/NavigationHeader/constants.jsx","../../src/components/NavigationHeader/LeftBlock.jsx","../../src/components/NavigationHeader/OverflowLinks.jsx","../../src/components/NavigationHeader/Navigation.jsx","../../src/components/NavigationHeader/utils.js","../../src/components/NavigationHeader/RightBlock.jsx","../../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n const menuButton = (\n <MenuItem.Button\n {...{ isActive, to }}\n data-cy={`${joinHyphenCase(key)}-more-tab`}\n isDisabled={disabled}\n key={key}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </MenuItem.Button>\n );\n\n if (\n isActive &&\n rest.moreOptions &&\n isNotEmpty(rest.moreOptions.menuItems)\n ) {\n return (\n <Dropdown\n customTarget={menuButton}\n key={`${key}-nested-dropdown`}\n position=\"right-start\"\n trigger=\"hover\"\n >\n <Menu>\n {rest.moreOptions.menuItems.map(\n ({ key, label, ...itemProps }) => (\n <MenuItem.Button key={key} {...itemProps}>\n {label}\n </MenuItem.Button>\n )\n )}\n </Menu>\n </Dropdown>\n );\n }\n\n return menuButton;\n })}\n </Menu>\n </Dropdown>\n );\n};\n\nOverflowLinks.propTypes = {\n /**\n * Array of overflow links to be displayed in the more dropdown\n */\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n moreOptions: PropTypes.shape({\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n};\n\nexport default OverflowLinks;\n","import classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { NavLink } from \"react-router-dom\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport OverflowLinks from \"./OverflowLinks\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <NavLink\n activeClassName=\"active\"\n data-cy={`${joinHyphenCase(key)}-tab`}\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n className={classNames(\n \"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\",\n className,\n { disabled }\n )}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n {...(labelProps || {})}\n >\n {label}\n </Typography>\n {/*\n TODO: In future, render this MoreDropdown only for Active links\n Ref: https://github.com/neetozone/neeto-molecules/issues/2610\n */}\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </NavLink>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.shape({ lineHeight: PropTypes.string }),\n moreOptions: PropTypes.shape({\n isVertical: PropTypes.bool,\n dropdownButtonProps: PropTypes.shape({\n size: PropTypes.string,\n className: PropTypes.string,\n }),\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","buttonStyle","label","buttonProps","classNames","active","map","_ref2","key","disabled","rest","_objectWithoutProperties","_excluded","isActive","menuButton","_createElement","Button","concat","joinHyphenCase","isDisabled","onClick","e","preventDefault","moreOptions","menuItems","customTarget","trigger","_ref3","itemProps","_excluded2","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","_ref2$className","labelProps","NavLink","activeClassName","Typography","component","lineHeight","style","weight","MoreDropdown","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridStyle","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":"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"}
1
+ {"version":3,"file":"NavigationHeader.js","sources":["../../src/components/NavigationHeader/constants.jsx","../../src/components/NavigationHeader/LeftBlock.jsx","../../src/components/NavigationHeader/OverflowLinks.jsx","../../src/components/NavigationHeader/Navigation.jsx","../../src/components/NavigationHeader/utils.js","../../src/components/NavigationHeader/RightBlock.jsx","../../src/components/NavigationHeader/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { Home } from \"neetoicons\";\n\nexport const DEFAULT_HOME_BUTTON_PROPS = {\n tooltip: {\n content: t(\"neetoMolecules.navigationHeader.home\"),\n position: \"bottom\",\n },\n homeUrl: \"/\",\n icon: <Home />,\n};\n","import { isPresent } from \"neetocist\";\nimport { Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeDeepRight } from \"ramda\";\nimport { Link } from \"react-router-dom\";\n\nimport Rename from \"components/Rename\";\n\nimport { DEFAULT_HOME_BUTTON_PROPS } from \"./constants\";\n\nconst LeftBlock = ({\n homeButtonProps: customHomeButtonProps,\n homeUrl,\n renameProps,\n children,\n}) => {\n const homeButtonProps = mergeDeepRight(\n DEFAULT_HOME_BUTTON_PROPS,\n customHomeButtonProps\n );\n\n return (\n <div\n className=\"flex items-center gap-1 md:gap-2\"\n data-cy=\"navigation-header-left-block\"\n data-testid=\"navigation-header-left-block\"\n >\n <Tooltip\n content={homeButtonProps.tooltip.content}\n position={homeButtonProps.tooltip.position}\n touch={[\"hold\", 500]}\n >\n <Link data-cy=\"home-button\" data-testid=\"home-button\" to={homeUrl}>\n <div className=\"neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1\">\n {homeButtonProps.icon}\n </div>\n </Link>\n </Tooltip>\n {isPresent(renameProps) && (\n <Rename\n dropdownItems={renameProps.dropdownItems}\n value={renameProps.value}\n {...renameProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nLeftBlock.propTypes = {\n /**\n * Object containing the home button icon and the props to be passed to the tooltip of the home button.\n */\n homeButtonProps: PropTypes.shape({\n tooltip: PropTypes.shape({\n content: PropTypes.string,\n postition: PropTypes.string,\n }),\n icon: PropTypes.node,\n }),\n /**\n * URL to navigate when the home button is clicked.\n */\n homeUrl: PropTypes.string.isRequired,\n /**\n * Props to be passed to the `Rename` component. Please check the `Rename` component props for more details\n */\n renameProps: PropTypes.object,\n /**\n * To render extra content in the block.\n */\n children: PropTypes.node,\n};\n\nexport default LeftBlock;\n","import classNames from \"classnames\";\nimport { existsBy, isNotEmpty } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Dropdown } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst OverflowLinks = ({ overflowLinks }) => {\n const { pathname } = useLocation();\n const { t } = useTranslation();\n\n const isMoreButtonActive = existsBy({ to: pathname }, overflowLinks);\n\n if (!isNotEmpty(overflowLinks)) {\n return null;\n }\n\n return (\n <Dropdown\n buttonStyle=\"text\"\n label={t(\"neetoMolecules.navigationHeader.more\")}\n position=\"bottom-end\"\n buttonProps={{\n className: classNames(\n \"neeto-molecules-navigation-header__link neeto-molecules-navigation-header__link--more neeto-ui-typography neeto-ui-text-h4 neeto-ui-font-semibold neeto-ui-leading-normal px-2 capitalize no-underline md:px-0\",\n { active: isMoreButtonActive }\n ),\n }}\n >\n <Menu>\n {overflowLinks.map(({ key, to, label, disabled, ...rest }) => {\n const isActive = to === pathname;\n const menuButton = (\n <MenuItem.Button\n {...{ isActive, to }}\n data-cy={`${joinHyphenCase(key)}-more-tab`}\n isDisabled={disabled}\n key={key}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n {label}\n </MenuItem.Button>\n );\n\n if (\n isActive &&\n rest.moreOptions &&\n isNotEmpty(rest.moreOptions.menuItems)\n ) {\n return (\n <Dropdown\n customTarget={menuButton}\n key={`${key}-nested-dropdown`}\n position=\"right-start\"\n trigger=\"hover\"\n >\n <Menu>\n {rest.moreOptions.menuItems.map(\n ({ key, label, ...itemProps }) => (\n <MenuItem.Button key={key} {...itemProps}>\n {label}\n </MenuItem.Button>\n )\n )}\n </Menu>\n </Dropdown>\n );\n }\n\n return menuButton;\n })}\n </Menu>\n </Dropdown>\n );\n};\n\nOverflowLinks.propTypes = {\n /**\n * Array of overflow links to be displayed in the more dropdown\n */\n overflowLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n disabled: PropTypes.bool,\n moreOptions: PropTypes.shape({\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n};\n\nexport default OverflowLinks;\n","import classNames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { NavLink } from \"react-router-dom\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport OverflowLinks from \"./OverflowLinks\";\n\nconst NavigationLinks = ({ headerLinks, maxVisibleLinks = 5 }) => {\n const visibleLinks = headerLinks.slice(0, maxVisibleLinks);\n const overflowLinks = headerLinks.slice(maxVisibleLinks);\n\n return (\n <div\n className=\"font- flex w-full items-center justify-between gap-4 md:justify-center md:gap-3 lg:gap-6\"\n data-cy=\"navigation-header-navigation-links\"\n data-testid=\"navigation-header-navigation-links\"\n >\n {visibleLinks.map(\n ({\n className = \"\",\n key,\n label,\n disabled,\n labelProps,\n moreOptions,\n ...rest\n }) => (\n <NavLink\n activeClassName=\"active\"\n data-cy={`${joinHyphenCase(key)}-tab`}\n data-testid={`${joinHyphenCase(key)}-tab`}\n key={key}\n className={classNames(\n \"neeto-molecules-navigation-header__link px-2 capitalize no-underline md:px-0\",\n className,\n { disabled }\n )}\n onClick={e => disabled && e.preventDefault()}\n {...rest}\n >\n <Typography\n component=\"span\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n {...(labelProps || {})}\n >\n {label}\n </Typography>\n {/*\n TODO: In future, render this MoreDropdown only for Active links\n Ref: https://github.com/neetozone/neeto-molecules/issues/2610\n */}\n {moreOptions && <MoreDropdown {...moreOptions} />}\n </NavLink>\n )\n )}\n <OverflowLinks {...{ overflowLinks }} />\n </div>\n );\n};\n\nNavigationLinks.propTypes = {\n /**\n * Links to be rendered in the center of the navigation header. It is an array of objects.\n * Each object should have the properties `key`, `to` and `label`. Other props will be passed on to the `Navlink` component from\n `react-router-dom`.\n */\n headerLinks: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n to: PropTypes.string,\n label: PropTypes.string,\n className: PropTypes.string,\n labelProps: PropTypes.shape({ lineHeight: PropTypes.string }),\n moreOptions: PropTypes.shape({\n isVertical: PropTypes.bool,\n dropdownButtonProps: PropTypes.shape({\n size: PropTypes.string,\n className: PropTypes.string,\n }),\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n disabled: PropTypes.bool,\n isDisabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.string,\n }),\n })\n ),\n }),\n })\n ),\n /**\n * Maximum number of links to be visible in the navigation header. Remaining links will be shown in a more dropdown.\n */\n maxVisibleLinks: PropTypes.number,\n};\n\nexport default NavigationLinks;\n","export const isAbsoluteUrl = url => /^https?:\\/\\//.test(url);\n","import classNames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport PublishBlock from \"components/PublishBlock\";\n\nimport \"./navigation-header.scss\";\nimport { isAbsoluteUrl } from \"./utils\";\n\nconst RightBlock = ({\n isDraftBlockHidden,\n previewDraftUrl,\n isResetDraftButtonVisible,\n onResetClick,\n isResetting,\n isPublishDisabled,\n isPublishing,\n handlePublish,\n isPublishPreviewDisabled,\n previewPublishedUrl,\n isPublishButtonVisible,\n isResetAlertOpen,\n setIsResetAlertOpen,\n handleReset,\n publishAlertTitle,\n publishAlertDescription,\n publishButtonProps = {},\n}) => {\n const { t } = useTranslation();\n\n const renderDraftButtons = ({ ViewDraftButton, ResetDraftButton }) =>\n !isDraftBlockHidden && (\n <>\n <ViewDraftButton\n {...(isAbsoluteUrl(previewDraftUrl)\n ? { href: previewDraftUrl }\n : { to: previewDraftUrl })}\n />\n {isResetDraftButtonVisible && (\n <ResetDraftButton\n loading={isResetting}\n onClick={() => onResetClick()}\n />\n )}\n </>\n );\n\n const renderPublishButtons = ({ PublishButton, PublishPreviewButton }) => (\n <>\n {isPublishButtonVisible && (\n <PublishButton\n disabled={isPublishDisabled}\n loading={isPublishing}\n onClick={() => handlePublish()}\n {...publishButtonProps}\n />\n )}\n <PublishPreviewButton\n {...(isAbsoluteUrl(previewPublishedUrl)\n ? { href: previewPublishedUrl }\n : { to: previewPublishedUrl })}\n disabled={isPublishPreviewDisabled}\n className={classNames({\n \"standalone-publish-preview-button\": !isPublishButtonVisible,\n })}\n />\n </>\n );\n\n return (\n <>\n <PublishBlock {...{ renderDraftButtons, renderPublishButtons }} />\n <PublishBlock.Alert\n isOpen={isResetAlertOpen}\n isSubmitting={isResetting}\n message={\n publishAlertDescription ||\n t(\"neetoMolecules.navigationHeader.resetDescription\")\n }\n title={\n publishAlertTitle || t(\"neetoMolecules.navigationHeader.resetTitle\")\n }\n onClose={() => setIsResetAlertOpen(false)}\n onSubmit={handleReset}\n />\n </>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * To show/hide the draft block.\n */\n isDraftBlockHidden: PropTypes.bool,\n /**\n * Draft preview URL, when the draft button is clicked user will be redirected to this URL.\n */\n previewDraftUrl: PropTypes.string,\n /**\n * Boolean to control the visibility of reset draft button.\n */\n isResetDraftButtonVisible: PropTypes.bool,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n onResetClick: PropTypes.func,\n /**\n * Setting this to `true` will show a spinner on the reset button. Use when the reset process is in progress.\n */\n isResetting: PropTypes.bool,\n /**\n * To disable the publish button.\n */\n isPublishDisabled: PropTypes.bool,\n /**\n * Setting this to `true` will show a spinner on the publish button. Use when the publish process is in progress.\n */\n isPublishing: PropTypes.bool,\n /**\n * Callback function that will be called when the publish button is clicked.\n */\n handlePublish: PropTypes.func,\n /**\n * To disable the publish preview button.\n */\n isPublishPreviewDisabled: PropTypes.bool,\n /**\n * Publish preview URL, when the preview publish button is clicked user will be redirected to this URL.\n */\n previewPublishedUrl: PropTypes.string,\n /**\n * Boolean to control whether the user have the ability to publish.\n */\n isPublishButtonVisible: PropTypes.bool,\n /**\n * Boolean to control whether the reset alert is open.\n */\n isResetAlertOpen: PropTypes.bool,\n /**\n * Handler to control the `isResetAlert` state variable.\n */\n setIsResetAlertOpen: PropTypes.func,\n /**\n * Callback function that will be called when the reset button is clicked.\n */\n handleReset: PropTypes.func,\n /**\n * Description to be shown in the publish alert\n */\n publishAlertDescription: PropTypes.string,\n /**\n * Title of the publish alert\n */\n publishAlertTitle: PropTypes.string,\n /**\n * Props to be passed to the publish button\n */\n publishButtonProps: PropTypes.object,\n};\n\nexport default RightBlock;\n","import { isPresent } from \"neetocist\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport { filter, length } from \"ramda\";\n\nimport LeftBlock from \"./LeftBlock\";\nimport NavigationLinks from \"./Navigation\";\nimport RightBlock from \"./RightBlock\";\n\nconst NavigationHeader = ({\n leftActionBlock,\n navigationLinks,\n rightActionBlock,\n}) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n const numberOfChildren = length(\n filter(isPresent, [leftActionBlock, navigationLinks, rightActionBlock])\n );\n\n const gridStyle = {\n gridTemplateColumns: isMobile\n ? `repeat(${\n navigationLinks ? numberOfChildren - 1 : numberOfChildren\n }, auto)`\n : `repeat(${numberOfChildren}, 1fr)`,\n };\n\n return (\n <div className=\"w-full\">\n <div\n className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6\"\n data-cy=\"navigation-header\"\n data-testid=\"navigation-header\"\n >\n <div className=\"grid w-full gap-4\" style={gridStyle}>\n {leftActionBlock}\n {!isMobile && navigationLinks}\n {rightActionBlock}\n </div>\n </div>\n {isMobile && (\n <div className=\"neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex flex-shrink-0 items-center overflow-x-auto border-b px-4 py-2 lg:px-6\">\n {navigationLinks}\n </div>\n )}\n </div>\n );\n};\n\nNavigationHeader.LeftActionBlock = LeftBlock;\nNavigationHeader.NavigationLinks = NavigationLinks;\nNavigationHeader.RightActionBlock = RightBlock;\n\nNavigationHeader.propTypes = {\n /**\n * To specify the content to be rendered in the left side of the `NavigationHeader`.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered at the center of the `NavigationHeader`.\n */\n navigationLinks: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `NavigationHeader`.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default NavigationHeader;\n"],"names":["DEFAULT_HOME_BUTTON_PROPS","tooltip","content","t","position","homeUrl","icon","_jsx","Home","LeftBlock","_ref","customHomeButtonProps","homeButtonProps","renameProps","children","mergeDeepRight","_jsxs","className","Tooltip","touch","Link","to","isPresent","Rename","_objectSpread","dropdownItems","value","Menu","Dropdown","MenuItem","OverflowLinks","overflowLinks","_useLocation","useLocation","pathname","_useTranslation","useTranslation","isMoreButtonActive","existsBy","isNotEmpty","buttonStyle","label","buttonProps","classNames","active","map","_ref2","key","disabled","rest","_objectWithoutProperties","_excluded","isActive","menuButton","_createElement","Button","concat","joinHyphenCase","isDisabled","onClick","e","preventDefault","moreOptions","menuItems","customTarget","trigger","_ref3","itemProps","_excluded2","NavigationLinks","headerLinks","_ref$maxVisibleLinks","maxVisibleLinks","visibleLinks","slice","_ref2$className","labelProps","NavLink","activeClassName","Typography","component","lineHeight","style","weight","MoreDropdown","isAbsoluteUrl","url","test","RightBlock","isDraftBlockHidden","previewDraftUrl","isResetDraftButtonVisible","onResetClick","isResetting","isPublishDisabled","isPublishing","handlePublish","isPublishPreviewDisabled","previewPublishedUrl","isPublishButtonVisible","isResetAlertOpen","setIsResetAlertOpen","handleReset","publishAlertTitle","publishAlertDescription","_ref$publishButtonPro","publishButtonProps","renderDraftButtons","ViewDraftButton","ResetDraftButton","_Fragment","href","loading","renderPublishButtons","PublishButton","PublishPreviewButton","PublishBlock","Alert","isOpen","isSubmitting","message","title","onClose","onSubmit","NavigationHeader","leftActionBlock","navigationLinks","rightActionBlock","_useBreakpoints","useBreakpoints","isSize","isMobile","numberOfChildren","length","filter","gridStyle","gridTemplateColumns","LeftActionBlock","RightActionBlock"],"mappings":"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"}
@@ -24,6 +24,7 @@ var Pane = require('@bigbinary/neetoui/Pane');
24
24
  var Profile = require('@bigbinary/neeto-team-members-frontend/Profile');
25
25
  var DatePicker = require('@bigbinary/neetoui/DatePicker');
26
26
  var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
27
+ var Label = require('@bigbinary/neetoui/Label');
27
28
 
28
29
  var _excluded$1 = ["t"];
29
30
  function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -136,28 +137,27 @@ var PublishPreview = function PublishPreview(_ref) {
136
137
  t = _useTranslation.t;
137
138
  if (!title) return null;
138
139
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
139
- className: "flex flex-col gap-y-1",
140
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
141
- className: "neeto-ui-label mb-2",
142
- style: "body2",
140
+ className: "flex flex-col",
141
+ children: [/*#__PURE__*/jsxRuntime.jsx(Label, {
142
+ className: "mb-2",
143
143
  children: t("neetoMolecules.publishBlock.preview")
144
144
  }), /*#__PURE__*/jsxRuntime.jsx("div", {
145
145
  className: "neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4",
146
146
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
147
- className: "flex flex-col items-start gap-4",
147
+ className: "flex flex-col items-start gap-3",
148
148
  children: [coverImageUrl && /*#__PURE__*/jsxRuntime.jsx("div", {
149
- className: "flex-shrink-0",
149
+ className: "w-full flex-shrink-0",
150
150
  children: /*#__PURE__*/jsxRuntime.jsx("img", {
151
151
  alt: title,
152
- className: "neeto-ui-rounded h-24 w-40 object-cover",
152
+ className: "neeto-ui-rounded h-52 w-full object-cover",
153
153
  src: coverImageUrl
154
154
  })
155
155
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
156
- className: "flex w-full min-w-0 flex-col items-start gap-4",
156
+ className: "flex w-full min-w-0 flex-col items-start gap-1",
157
157
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
158
158
  className: "break-words",
159
159
  style: "h4",
160
- weight: "semibold",
160
+ weight: "medium",
161
161
  children: title
162
162
  }), publicUrl && /*#__PURE__*/jsxRuntime.jsx("a", {
163
163
  className: "neeto-ui-text-info-600 break-all",
@@ -199,7 +199,7 @@ var PublishSettings = reactUtils.withT(function (_ref) {
199
199
  })
200
200
  }), /*#__PURE__*/jsxRuntime.jsx(Pane.Body, {
201
201
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
202
- className: "flex h-full w-full flex-col gap-y-8",
202
+ className: "flex w-full flex-col gap-y-6 pb-6",
203
203
  children: [/*#__PURE__*/jsxRuntime.jsx(Form, {
204
204
  datetimeValue: datetimeValue,
205
205
  onClose: onClose,
@@ -1 +1 @@
1
- {"version":3,"file":"PublishBlock.js","sources":["../../src/components/PublishBlock/AlertBlock.jsx","../../src/components/PublishBlock/PublishSettings/constants.js","../../src/components/PublishBlock/PublishSettings/utils.js","../../src/components/PublishBlock/PublishSettings/Form.jsx","../../src/components/PublishBlock/PublishSettings/PublishPreview.jsx","../../src/components/PublishBlock/PublishSettings/index.jsx","../../src/components/PublishBlock/PublishSchedulePane.jsx","../../src/components/PublishBlock/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Alert } from \"neetoui\";\n\nconst AlertBlock = withT(({ t, ...props }) => (\n <Alert\n data-cy=\"reset-alert\"\n data-testid=\"reset-alert\"\n submitButtonLabel={t(\"neetoMolecules.common.actions.reset\")}\n {...props}\n />\n));\n\nexport default AlertBlock;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const TIME_FORMAT = \"h A\";\n\nexport const DATE_FORMAT = globalProps.user?.dateFormat || \"DD/MM/YYYY\";\n","import { dynamicArray } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const disabledDate = current =>\n current && current < dayjs().startOf(\"day\");\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return { disabledHours: () => dynamicArray(24, i => i) };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n\n return {\n disabledHours: () => dynamicArray(currentTime.hour() + 1, i => i),\n };\n }\n\n return {};\n};\n\nexport const getDefaultDate = () => {\n let currDate = dayjs();\n currDate = currDate.hour(currDate.hour() + 1);\n\n if (currDate.minute() > 30) {\n currDate = currDate.hour(currDate.hour() + 1);\n }\n\n return currDate;\n};\n","import { dayjs } from \"neetocommons/utils\";\nimport { Profile } from \"neetoteam\";\nimport { Button, DatePicker, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT, TIME_FORMAT } from \"./constants\";\nimport { disabledDate, disabledTime } from \"./utils\";\n\nconst Form = ({ datetimeValue, setDatetimeValue, onClose }) => {\n const { t } = useTranslation();\n const [_, setIsProfilePaneOpen] = Profile.usePaneState();\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <DatePicker\n {...{ disabledDate }}\n required\n showTime\n allowClear={false}\n data-cy=\"publish-later-datepicker-input-field\"\n data-testid=\"publish-later-datepicker-input-field\"\n dateFormat={DATE_FORMAT}\n label={t(\"neetoMolecules.publishBlock.dateTime\")}\n timeFormat={TIME_FORMAT}\n value={datetimeValue}\n timePickerProps={{\n \"data-cy\": \"publish-later-timepicker-input-field\",\n \"data-testid\": \"publish-later-timepicker-input-field\",\n clearIcon: false,\n disabledTime,\n }}\n onChange={date => {\n setDatetimeValue(date.startOf(\"hour\"));\n }}\n />\n <Typography style=\"body3\">\n <Trans\n i18nKey=\"neetoMolecules.publishBlock.timezoneDescription\"\n values={{ timezone: globalProps.user?.timeZone ?? dayjs.tz.guess() }}\n components={{\n button: (\n <Button\n size=\"small\"\n style=\"link\"\n onClick={() => {\n onClose();\n setIsProfilePaneOpen(true);\n }}\n />\n ),\n }}\n />\n </Typography>\n </div>\n );\n};\nexport default Form;\n","import { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PublishPreview = ({ coverImageUrl, title, publicUrl }) => {\n const { t } = useTranslation();\n\n if (!title) return null;\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <Typography className=\"neeto-ui-label mb-2\" style=\"body2\">\n {t(\"neetoMolecules.publishBlock.preview\")}\n </Typography>\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4\">\n <div className=\"flex flex-col items-start gap-4\">\n {coverImageUrl && (\n <div className=\"flex-shrink-0\">\n <img\n alt={title}\n className=\"neeto-ui-rounded h-24 w-40 object-cover\"\n src={coverImageUrl}\n />\n </div>\n )}\n <div className=\"flex w-full min-w-0 flex-col items-start gap-4\">\n <Typography className=\"break-words\" style=\"h4\" weight=\"semibold\">\n {title}\n </Typography>\n {publicUrl && (\n <a\n className=\"neeto-ui-text-info-600 break-all\"\n href={publicUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {publicUrl}\n </a>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default PublishPreview;\n","import { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography, Button, Pane } from \"neetoui\";\n\nimport Form from \"./Form\";\nimport PublishPreview from \"./PublishPreview\";\n\nconst PublishSettings = withT(\n ({\n t,\n isOpen,\n onClose,\n isSubmitting = false,\n onPublish = noop,\n datetimeValue,\n setDatetimeValue,\n previewProps,\n }) => (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography\n data-cy=\"publish-pane-heading\"\n data-testid=\"publish-pane-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"flex h-full w-full flex-col gap-y-8\">\n <Form {...{ datetimeValue, onClose, setDatetimeValue }} />\n {previewProps && <PublishPreview {...previewProps} />}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"publish-submit-button\"\n data-testid=\"publish-submit-button\"\n disabled={isSubmitting}\n label={t(\"neetoMolecules.publishBlock.publishLater\")}\n loading={isSubmitting}\n onClick={() => onPublish({ datetimeValue })}\n />\n <Button\n data-cy=\"publish-cancel-button\"\n data-testid=\"publish-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Pane>\n )\n);\n\nexport default PublishSettings;\n","import { useEffect, useState } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport PublishSettings from \"./PublishSettings\";\n\nconst PublishSchedulePane = ({\n onPublish,\n onClose,\n isSubmitting,\n datetime,\n isOpen,\n previewProps,\n}) => {\n const [datetimeValue, setDatetimeValue] = useState(datetime);\n\n useEffect(() => {\n setDatetimeValue(datetime);\n }, [datetime]);\n\n return (\n <PublishSettings\n {...{\n datetimeValue,\n isOpen,\n isSubmitting,\n onClose,\n onPublish,\n previewProps,\n setDatetimeValue,\n }}\n />\n );\n};\n\nPublishSchedulePane.propTypes = {\n onPublish: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n isSubmitting: PropTypes.bool,\n datetime: PropTypes.string,\n isOpen: PropTypes.bool,\n previewProps: PropTypes.shape({\n coverImageUrl: PropTypes.string,\n title: PropTypes.string,\n publicUrl: PropTypes.string,\n }),\n};\n\nexport default PublishSchedulePane;\n","import classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { ExternalLink, Delete, Clock } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AlertBlock from \"./AlertBlock\";\nimport \"./publish-block.scss\";\nimport PublishSchedulePane from \"./PublishSchedulePane\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst ViewDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"view-draft-button\"\n data-testid=\"view-draft-button\"\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst ResetDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"draft-button\"\n data-testid=\"draft-button\"\n icon={Delete}\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.deleteDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishButton = withT(\n ({\n t,\n tooltipProps,\n showTooltipWhenDisabled = false,\n disabled = false,\n ...props\n }) => (\n <Tooltip\n {...tooltipProps}\n disabled={!tooltipProps || (!showTooltipWhenDisabled && disabled)}\n >\n <div>\n <Button\n data-cy=\"publish-button\"\n data-testid=\"publish-button\"\n label={t(\"neetoMolecules.common.actions.publish\")}\n {...{ disabled, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n </Tooltip>\n )\n);\n\nconst PublishPreviewButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"publish-preview-button\"\n data-testid=\"publish-preview-button\"\n icon={ExternalLink}\n target=\"_blank\"\n className={classnames(\n { \"pointer-events-none\": props.disabled },\n props.className\n )}\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewPublishedVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishBlock = ({\n renderDraftButtons,\n renderPublishButtons,\n datetime,\n}) => {\n const { t } = useTranslation();\n\n const draftBlockButtons = renderDraftButtons({\n ViewDraftButton,\n ResetDraftButton,\n });\n\n return (\n <div\n className=\"neeto-molecules-publish-block\"\n data-cy=\"neeto-molecules-publish-block\"\n data-testid=\"neeto-molecules-publish-block\"\n >\n {isPresent(datetime) && (\n <Tooltip\n position=\"bottom\"\n content={t(\"neetoMolecules.publishBlock.tooltip.publishLater\", {\n date: dateFormat.dateTime(datetime),\n })}\n >\n <div>\n <Clock />\n </div>\n </Tooltip>\n )}\n {draftBlockButtons && (\n <>\n <div className=\"flex items-center gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"publish-block-draft-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.common.actions.draft\")}\n </Typography>\n <div className=\"flex items-center gap-1\">{draftBlockButtons}</div>\n </div>\n <div className=\"neeto-ui-bg-gray-300 h-full w-px\" />\n </>\n )}\n <div className=\"neeto-molecules-publish-block__action-btn\">\n {renderPublishButtons({ PublishButton, PublishPreviewButton })}\n </div>\n </div>\n );\n};\n\nPublishBlock.Alert = AlertBlock;\nPublishBlock.SchedulePane = PublishSchedulePane;\n\nPublishBlock.propTypes = {\n /**\n * The function to render the draft buttons. It provides the `ViewDraftButton` and `ResetDraftButton` components as arguments.\n */\n renderDraftButtons: PropTypes.func,\n /**\n * The function to render the publish buttons. It provides the `PublishButton` and `PublishPreviewButton` components as arguments.\n */\n renderPublishButtons: PropTypes.func,\n};\nexport default PublishBlock;\n"],"names":["AlertBlock","withT","_ref","t","props","_objectWithoutProperties","_excluded","_jsx","Alert","_objectSpread","submitButtonLabel","TIME_FORMAT","DATE_FORMAT","_globalProps$user","globalProps","user","dateFormat","disabledDate","current","dayjs","startOf","disabledTime","selectedDate","today","isBefore","disabledHours","dynamicArray","i","isSame","currentTime","hour","Form","_globalProps$user$tim","datetimeValue","setDatetimeValue","onClose","_useTranslation","useTranslation","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","_slicedToArray","_","setIsProfilePaneOpen","_jsxs","className","children","DatePicker","required","showTime","allowClear","label","timeFormat","value","timePickerProps","clearIcon","onChange","date","Typography","style","Trans","i18nKey","values","timezone","timeZone","tz","guess","components","button","Button","size","onClick","PublishPreview","coverImageUrl","title","publicUrl","alt","src","weight","href","rel","target","PublishSettings","isOpen","_ref$isSubmitting","isSubmitting","_ref$onPublish","onPublish","noop","previewProps","Pane","Header","lineHeight","Body","Footer","disabled","loading","PublishSchedulePane","datetime","_useState","useState","_useState2","useEffect","unUsedI18nProps","ViewDraftButton","icon","ExternalLink","tooltipProps","content","position","touch","omit","ResetDraftButton","_ref2","_excluded2","Delete","PublishButton","_ref3","_ref3$showTooltipWhen","showTooltipWhenDisabled","_ref3$disabled","_excluded3","Tooltip","PublishPreviewButton","_ref4","_excluded4","classnames","PublishBlock","_ref5","renderDraftButtons","renderPublishButtons","draftBlockButtons","isPresent","dateTime","Clock","_Fragment","SchedulePane"],"mappings":"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"}
1
+ {"version":3,"file":"PublishBlock.js","sources":["../../src/components/PublishBlock/AlertBlock.jsx","../../src/components/PublishBlock/PublishSettings/constants.js","../../src/components/PublishBlock/PublishSettings/utils.js","../../src/components/PublishBlock/PublishSettings/Form.jsx","../../src/components/PublishBlock/PublishSettings/PublishPreview.jsx","../../src/components/PublishBlock/PublishSettings/index.jsx","../../src/components/PublishBlock/PublishSchedulePane.jsx","../../src/components/PublishBlock/index.jsx"],"sourcesContent":["import { withT } from \"neetocommons/react-utils\";\nimport { Alert } from \"neetoui\";\n\nconst AlertBlock = withT(({ t, ...props }) => (\n <Alert\n data-cy=\"reset-alert\"\n data-testid=\"reset-alert\"\n submitButtonLabel={t(\"neetoMolecules.common.actions.reset\")}\n {...props}\n />\n));\n\nexport default AlertBlock;\n","import { globalProps } from \"neetocommons/initializers\";\n\nexport const TIME_FORMAT = \"h A\";\n\nexport const DATE_FORMAT = globalProps.user?.dateFormat || \"DD/MM/YYYY\";\n","import { dynamicArray } from \"neetocist\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const disabledDate = current =>\n current && current < dayjs().startOf(\"day\");\n\nexport const disabledTime = selectedDate => {\n const current = dayjs(selectedDate).startOf(\"day\");\n const today = dayjs().startOf(\"day\");\n\n if (current.isBefore(today)) {\n return { disabledHours: () => dynamicArray(24, i => i) };\n }\n\n if (current.isSame(today)) {\n const currentTime = dayjs();\n\n return {\n disabledHours: () => dynamicArray(currentTime.hour() + 1, i => i),\n };\n }\n\n return {};\n};\n\nexport const getDefaultDate = () => {\n let currDate = dayjs();\n currDate = currDate.hour(currDate.hour() + 1);\n\n if (currDate.minute() > 30) {\n currDate = currDate.hour(currDate.hour() + 1);\n }\n\n return currDate;\n};\n","import { dayjs } from \"neetocommons/utils\";\nimport { Profile } from \"neetoteam\";\nimport { Button, DatePicker, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT, TIME_FORMAT } from \"./constants\";\nimport { disabledDate, disabledTime } from \"./utils\";\n\nconst Form = ({ datetimeValue, setDatetimeValue, onClose }) => {\n const { t } = useTranslation();\n const [_, setIsProfilePaneOpen] = Profile.usePaneState();\n\n return (\n <div className=\"flex flex-col gap-y-1\">\n <DatePicker\n {...{ disabledDate }}\n required\n showTime\n allowClear={false}\n data-cy=\"publish-later-datepicker-input-field\"\n data-testid=\"publish-later-datepicker-input-field\"\n dateFormat={DATE_FORMAT}\n label={t(\"neetoMolecules.publishBlock.dateTime\")}\n timeFormat={TIME_FORMAT}\n value={datetimeValue}\n timePickerProps={{\n \"data-cy\": \"publish-later-timepicker-input-field\",\n \"data-testid\": \"publish-later-timepicker-input-field\",\n clearIcon: false,\n disabledTime,\n }}\n onChange={date => {\n setDatetimeValue(date.startOf(\"hour\"));\n }}\n />\n <Typography style=\"body3\">\n <Trans\n i18nKey=\"neetoMolecules.publishBlock.timezoneDescription\"\n values={{ timezone: globalProps.user?.timeZone ?? dayjs.tz.guess() }}\n components={{\n button: (\n <Button\n size=\"small\"\n style=\"link\"\n onClick={() => {\n onClose();\n setIsProfilePaneOpen(true);\n }}\n />\n ),\n }}\n />\n </Typography>\n </div>\n );\n};\nexport default Form;\n","import { Label, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst PublishPreview = ({ coverImageUrl, title, publicUrl }) => {\n const { t } = useTranslation();\n\n if (!title) return null;\n\n return (\n <div className=\"flex flex-col\">\n <Label className=\"mb-2\">{t(\"neetoMolecules.publishBlock.preview\")}</Label>\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 w-full p-4\">\n <div className=\"flex flex-col items-start gap-3\">\n {coverImageUrl && (\n <div className=\"w-full flex-shrink-0\">\n <img\n alt={title}\n className=\"neeto-ui-rounded h-52 w-full object-cover\"\n src={coverImageUrl}\n />\n </div>\n )}\n <div className=\"flex w-full min-w-0 flex-col items-start gap-1\">\n <Typography className=\"break-words\" style=\"h4\" weight=\"medium\">\n {title}\n </Typography>\n {publicUrl && (\n <a\n className=\"neeto-ui-text-info-600 break-all\"\n href={publicUrl}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {publicUrl}\n </a>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default PublishPreview;\n","import { noop } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Typography, Button, Pane } from \"neetoui\";\n\nimport Form from \"./Form\";\nimport PublishPreview from \"./PublishPreview\";\n\nconst PublishSettings = withT(\n ({\n t,\n isOpen,\n onClose,\n isSubmitting = false,\n onPublish = noop,\n datetimeValue,\n setDatetimeValue,\n previewProps,\n }) => (\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography\n data-cy=\"publish-pane-heading\"\n data-testid=\"publish-pane-heading\"\n lineHeight=\"normal\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.publishBlock.publishLater\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"flex w-full flex-col gap-y-6 pb-6\">\n <Form {...{ datetimeValue, onClose, setDatetimeValue }} />\n {previewProps && <PublishPreview {...previewProps} />}\n </div>\n </Pane.Body>\n <Pane.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"publish-submit-button\"\n data-testid=\"publish-submit-button\"\n disabled={isSubmitting}\n label={t(\"neetoMolecules.publishBlock.publishLater\")}\n loading={isSubmitting}\n onClick={() => onPublish({ datetimeValue })}\n />\n <Button\n data-cy=\"publish-cancel-button\"\n data-testid=\"publish-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n style=\"text\"\n onClick={onClose}\n />\n </Pane.Footer>\n </Pane>\n )\n);\n\nexport default PublishSettings;\n","import { useEffect, useState } from \"react\";\n\nimport PropTypes from \"prop-types\";\n\nimport PublishSettings from \"./PublishSettings\";\n\nconst PublishSchedulePane = ({\n onPublish,\n onClose,\n isSubmitting,\n datetime,\n isOpen,\n previewProps,\n}) => {\n const [datetimeValue, setDatetimeValue] = useState(datetime);\n\n useEffect(() => {\n setDatetimeValue(datetime);\n }, [datetime]);\n\n return (\n <PublishSettings\n {...{\n datetimeValue,\n isOpen,\n isSubmitting,\n onClose,\n onPublish,\n previewProps,\n setDatetimeValue,\n }}\n />\n );\n};\n\nPublishSchedulePane.propTypes = {\n onPublish: PropTypes.func.isRequired,\n onClose: PropTypes.func.isRequired,\n isSubmitting: PropTypes.bool,\n datetime: PropTypes.string,\n isOpen: PropTypes.bool,\n previewProps: PropTypes.shape({\n coverImageUrl: PropTypes.string,\n title: PropTypes.string,\n publicUrl: PropTypes.string,\n }),\n};\n\nexport default PublishSchedulePane;\n","import classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport withT from \"neetocommons/react-utils/withT\";\nimport { dateFormat } from \"neetocommons/utils\";\nimport { ExternalLink, Delete, Clock } from \"neetoicons\";\nimport { Button, Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport AlertBlock from \"./AlertBlock\";\nimport \"./publish-block.scss\";\nimport PublishSchedulePane from \"./PublishSchedulePane\";\n\nconst unUsedI18nProps = [\"tReady\", \"i18n\"];\n\nconst ViewDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"view-draft-button\"\n data-testid=\"view-draft-button\"\n icon={ExternalLink}\n style=\"secondary\"\n target=\"_blank\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst ResetDraftButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"draft-button\"\n data-testid=\"draft-button\"\n icon={Delete}\n style=\"secondary\"\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.deleteDraftVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishButton = withT(\n ({\n t,\n tooltipProps,\n showTooltipWhenDisabled = false,\n disabled = false,\n ...props\n }) => (\n <Tooltip\n {...tooltipProps}\n disabled={!tooltipProps || (!showTooltipWhenDisabled && disabled)}\n >\n <div>\n <Button\n data-cy=\"publish-button\"\n data-testid=\"publish-button\"\n label={t(\"neetoMolecules.common.actions.publish\")}\n {...{ disabled, ...omit(unUsedI18nProps, props) }}\n />\n </div>\n </Tooltip>\n )\n);\n\nconst PublishPreviewButton = withT(({ t, ...props }) => (\n <Button\n data-cy=\"publish-preview-button\"\n data-testid=\"publish-preview-button\"\n icon={ExternalLink}\n target=\"_blank\"\n className={classnames(\n { \"pointer-events-none\": props.disabled },\n props.className\n )}\n tooltipProps={{\n content: t(\"neetoMolecules.publishBlock.viewPublishedVersion\"),\n position: \"top\",\n touch: [\"hold\", 500],\n }}\n {...omit(unUsedI18nProps, props)}\n />\n));\n\nconst PublishBlock = ({\n renderDraftButtons,\n renderPublishButtons,\n datetime,\n}) => {\n const { t } = useTranslation();\n\n const draftBlockButtons = renderDraftButtons({\n ViewDraftButton,\n ResetDraftButton,\n });\n\n return (\n <div\n className=\"neeto-molecules-publish-block\"\n data-cy=\"neeto-molecules-publish-block\"\n data-testid=\"neeto-molecules-publish-block\"\n >\n {isPresent(datetime) && (\n <Tooltip\n position=\"bottom\"\n content={t(\"neetoMolecules.publishBlock.tooltip.publishLater\", {\n date: dateFormat.dateTime(datetime),\n })}\n >\n <div>\n <Clock />\n </div>\n </Tooltip>\n )}\n {draftBlockButtons && (\n <>\n <div className=\"flex items-center gap-2\">\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"publish-block-draft-label\"\n lineHeight=\"normal\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.common.actions.draft\")}\n </Typography>\n <div className=\"flex items-center gap-1\">{draftBlockButtons}</div>\n </div>\n <div className=\"neeto-ui-bg-gray-300 h-full w-px\" />\n </>\n )}\n <div className=\"neeto-molecules-publish-block__action-btn\">\n {renderPublishButtons({ PublishButton, PublishPreviewButton })}\n </div>\n </div>\n );\n};\n\nPublishBlock.Alert = AlertBlock;\nPublishBlock.SchedulePane = PublishSchedulePane;\n\nPublishBlock.propTypes = {\n /**\n * The function to render the draft buttons. It provides the `ViewDraftButton` and `ResetDraftButton` components as arguments.\n */\n renderDraftButtons: PropTypes.func,\n /**\n * The function to render the publish buttons. It provides the `PublishButton` and `PublishPreviewButton` components as arguments.\n */\n renderPublishButtons: PropTypes.func,\n};\nexport default PublishBlock;\n"],"names":["AlertBlock","withT","_ref","t","props","_objectWithoutProperties","_excluded","_jsx","Alert","_objectSpread","submitButtonLabel","TIME_FORMAT","DATE_FORMAT","_globalProps$user","globalProps","user","dateFormat","disabledDate","current","dayjs","startOf","disabledTime","selectedDate","today","isBefore","disabledHours","dynamicArray","i","isSame","currentTime","hour","Form","_globalProps$user$tim","datetimeValue","setDatetimeValue","onClose","_useTranslation","useTranslation","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","_slicedToArray","_","setIsProfilePaneOpen","_jsxs","className","children","DatePicker","required","showTime","allowClear","label","timeFormat","value","timePickerProps","clearIcon","onChange","date","Typography","style","Trans","i18nKey","values","timezone","timeZone","tz","guess","components","button","Button","size","onClick","PublishPreview","coverImageUrl","title","publicUrl","Label","alt","src","weight","href","rel","target","PublishSettings","isOpen","_ref$isSubmitting","isSubmitting","_ref$onPublish","onPublish","noop","previewProps","Pane","Header","lineHeight","Body","Footer","disabled","loading","PublishSchedulePane","datetime","_useState","useState","_useState2","useEffect","unUsedI18nProps","ViewDraftButton","icon","ExternalLink","tooltipProps","content","position","touch","omit","ResetDraftButton","_ref2","_excluded2","Delete","PublishButton","_ref3","_ref3$showTooltipWhen","showTooltipWhenDisabled","_ref3$disabled","_excluded3","Tooltip","PublishPreviewButton","_ref4","_excluded4","classnames","PublishBlock","_ref5","renderDraftButtons","renderPublishButtons","draftBlockButtons","isPresent","dateTime","Clock","_Fragment","SchedulePane"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "4.0.113",
3
+ "version": "4.0.115",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",