@bigbinary/neeto-team-members-frontend 5.0.28 → 5.0.30
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/app/javascript/src/translations/ar.json +6 -4
- package/app/javascript/src/translations/bg.json +6 -4
- package/app/javascript/src/translations/ca.json +8 -6
- package/app/javascript/src/translations/cs.json +4 -2
- package/app/javascript/src/translations/da.json +4 -2
- package/app/javascript/src/translations/de.json +4 -2
- package/app/javascript/src/translations/en.json +8 -6
- package/app/javascript/src/translations/es-MX.json +8 -6
- package/app/javascript/src/translations/es.json +8 -6
- package/app/javascript/src/translations/et.json +6 -4
- package/app/javascript/src/translations/fi.json +4 -2
- package/app/javascript/src/translations/fil.json +9 -7
- package/app/javascript/src/translations/fr.json +5 -3
- package/app/javascript/src/translations/he.json +5 -3
- package/app/javascript/src/translations/hi.json +7 -5
- package/app/javascript/src/translations/hr.json +4 -2
- package/app/javascript/src/translations/hu.json +4 -2
- package/app/javascript/src/translations/id.json +10 -8
- package/app/javascript/src/translations/it.json +8 -6
- package/app/javascript/src/translations/ja.json +6 -4
- package/app/javascript/src/translations/ko.json +4 -2
- package/app/javascript/src/translations/nl.json +7 -5
- package/app/javascript/src/translations/pl.json +5 -3
- package/app/javascript/src/translations/pt-BR.json +10 -8
- package/app/javascript/src/translations/pt.json +10 -8
- package/app/javascript/src/translations/ro.json +9 -7
- package/app/javascript/src/translations/ru.json +5 -3
- package/app/javascript/src/translations/sk.json +6 -4
- package/app/javascript/src/translations/sl.json +7 -5
- package/app/javascript/src/translations/sv.json +4 -2
- package/app/javascript/src/translations/th.json +5 -3
- package/app/javascript/src/translations/tr.json +10 -8
- package/app/javascript/src/translations/uk.json +7 -5
- package/app/javascript/src/translations/vi.json +7 -5
- package/app/javascript/src/translations/zh-CN.json +6 -4
- package/app/javascript/src/translations/zh-TW.json +5 -3
- package/dist/.ready +1 -1
- package/dist/ActionBlock-C9Iy0jGZ.js +53 -0
- package/dist/ActionBlock-C9Iy0jGZ.js.map +1 -0
- package/dist/ActionBlock-jgw1N-As.js +46 -0
- package/dist/ActionBlock-jgw1N-As.js.map +1 -0
- package/dist/Groups.js +1 -0
- package/dist/Groups.js.map +1 -1
- package/dist/InviteLinkError-AphtWLhe.js +63 -0
- package/dist/InviteLinkError-AphtWLhe.js.map +1 -0
- package/dist/InviteLinkError-C6OLGrD0.js +41 -0
- package/dist/InviteLinkError-C6OLGrD0.js.map +1 -0
- package/dist/ManageMember.js +3 -2
- package/dist/ManageMember.js.map +1 -1
- package/dist/MembersInvite.js +1 -38
- package/dist/MembersInvite.js.map +1 -1
- package/dist/Permissions-Bd6kLoPt.js +233 -0
- package/dist/Permissions-Bd6kLoPt.js.map +1 -0
- package/dist/Permissions-Bn862irP.js +244 -0
- package/dist/Permissions-Bn862irP.js.map +1 -0
- package/dist/Profile.js +125 -106
- package/dist/Profile.js.map +1 -1
- package/dist/{ProfileImage-Cpprgo-V.js → ProfileImage-QeSzsfzl.js} +1 -7
- package/dist/{ProfileImage-B_gfcE6b.js.map → ProfileImage-QeSzsfzl.js.map} +1 -1
- package/dist/{ProfileImage-B_gfcE6b.js → ProfileImage-Ypf3HreX.js} +2 -7
- package/dist/{ProfileImage-Cpprgo-V.js.map → ProfileImage-Ypf3HreX.js.map} +1 -1
- package/dist/Roles.js +3 -1398
- package/dist/Roles.js.map +1 -1
- package/dist/RolesRadioGroup-fBmS68cW.js +393 -0
- package/dist/RolesRadioGroup-fBmS68cW.js.map +1 -0
- package/dist/RolesRadioGroup-tSNC-Wtu.js +352 -0
- package/dist/RolesRadioGroup-tSNC-Wtu.js.map +1 -0
- package/dist/Select-CshPoN2b.js +119 -0
- package/dist/Select-CshPoN2b.js.map +1 -0
- package/dist/Select-DZ56UG-l.js +109 -0
- package/dist/Select-DZ56UG-l.js.map +1 -0
- package/dist/TeamMembers.js +3 -2
- package/dist/TeamMembers.js.map +1 -1
- package/dist/cjs/Groups.js +1 -0
- package/dist/cjs/Groups.js.map +1 -1
- package/dist/cjs/ManageMember.js +3 -2
- package/dist/cjs/ManageMember.js.map +1 -1
- package/dist/cjs/MembersInvite.js +2 -39
- package/dist/cjs/MembersInvite.js.map +1 -1
- package/dist/cjs/Profile.js +125 -104
- package/dist/cjs/Profile.js.map +1 -1
- package/dist/cjs/Roles.js +6 -1402
- package/dist/cjs/Roles.js.map +1 -1
- package/dist/cjs/TeamMembers.js +3 -2
- package/dist/cjs/TeamMembers.js.map +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +3 -512
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/v2/Groups.js +781 -0
- package/dist/cjs/v2/Groups.js.map +1 -0
- package/dist/cjs/v2/ManageMember.js +49 -0
- package/dist/cjs/v2/ManageMember.js.map +1 -0
- package/dist/cjs/v2/MembersDropdown.js +200 -0
- package/dist/cjs/v2/MembersDropdown.js.map +1 -0
- package/dist/cjs/v2/MembersInvite.js +270 -0
- package/dist/cjs/v2/MembersInvite.js.map +1 -0
- package/dist/cjs/v2/Permissions.js +19 -0
- package/dist/cjs/v2/Permissions.js.map +1 -0
- package/dist/cjs/v2/Profile.js +686 -0
- package/dist/cjs/v2/Profile.js.map +1 -0
- package/dist/cjs/v2/Roles.js +1258 -0
- package/dist/cjs/v2/Roles.js.map +1 -0
- package/dist/cjs/v2/RolesRadioGroup.js +26 -0
- package/dist/cjs/v2/RolesRadioGroup.js.map +1 -0
- package/dist/cjs/v2/TeamMembers.js +949 -0
- package/dist/cjs/v2/TeamMembers.js.map +1 -0
- package/dist/cjs/v2/TeamsAndMembersDropdown.js +438 -0
- package/dist/cjs/v2/TeamsAndMembersDropdown.js.map +1 -0
- package/dist/cjs/v2/TeamsDropdown.js +112 -0
- package/dist/cjs/v2/TeamsDropdown.js.map +1 -0
- package/dist/cjs/v2/constants.js +28 -0
- package/dist/cjs/v2/constants.js.map +1 -0
- package/dist/cjs/v2/hooks.js +33 -0
- package/dist/cjs/v2/hooks.js.map +1 -0
- package/dist/cjs/v2/utils.js +34 -0
- package/dist/cjs/v2/utils.js.map +1 -0
- package/dist/constants-B1L6arSR.js +49 -0
- package/dist/constants-B1L6arSR.js.map +1 -0
- package/dist/constants-CMNbKvoF.js +61 -0
- package/dist/constants-CMNbKvoF.js.map +1 -0
- package/dist/index-BkEJugj1.js +184 -0
- package/dist/index-BkEJugj1.js.map +1 -0
- package/dist/index-C6ph58Vg.js +169 -0
- package/dist/index-C6ph58Vg.js.map +1 -0
- package/dist/{index-C26Vdbk5.js → index-DFFRcH_S.js} +2 -2
- package/dist/{index-C26Vdbk5.js.map → index-DFFRcH_S.js.map} +1 -1
- package/dist/{index-CeAVMlhg.js → index-DTONHIze.js} +2 -2
- package/dist/{index-CeAVMlhg.js.map → index-DTONHIze.js.map} +1 -1
- package/dist/index-DeYRFiJy.js +119 -0
- package/dist/index-DeYRFiJy.js.map +1 -0
- package/dist/index-DgxgaCRt.js +1317 -0
- package/dist/index-DgxgaCRt.js.map +1 -0
- package/dist/index-DqqXniGT.js +126 -0
- package/dist/index-DqqXniGT.js.map +1 -0
- package/dist/index-Dus0cbgo.js +1407 -0
- package/dist/index-Dus0cbgo.js.map +1 -0
- package/dist/index-aJIUa1Bd.js +1342 -0
- package/dist/index-aJIUa1Bd.js.map +1 -0
- package/dist/index-ureO6U2w.js +1401 -0
- package/dist/index-ureO6U2w.js.map +1 -0
- package/dist/index.js +6 -2
- package/dist/index.js.map +1 -1
- package/dist/pluralize-BoSEafiC.js +514 -0
- package/dist/pluralize-BoSEafiC.js.map +1 -0
- package/dist/pluralize-CFlSRsRn.js +516 -0
- package/dist/pluralize-CFlSRsRn.js.map +1 -0
- package/dist/queryClient-B-JFya8X.js +16 -0
- package/dist/queryClient-B-JFya8X.js.map +1 -0
- package/dist/queryClient-BncpekSV.js +14 -0
- package/dist/queryClient-BncpekSV.js.map +1 -0
- package/dist/useCountries-CQdvJz0R.js +249 -0
- package/dist/useCountries-CQdvJz0R.js.map +1 -0
- package/dist/useCountries-DePOPtue.js +235 -0
- package/dist/useCountries-DePOPtue.js.map +1 -0
- package/dist/useTeamsApi-CWp4G7JZ.js +179 -0
- package/dist/useTeamsApi-CWp4G7JZ.js.map +1 -0
- package/dist/useTeamsApi-Ch5sHR2_.js +197 -0
- package/dist/useTeamsApi-Ch5sHR2_.js.map +1 -0
- package/dist/utils.js +2 -511
- package/dist/utils.js.map +1 -1
- package/dist/v2/Groups.js +749 -0
- package/dist/v2/Groups.js.map +1 -0
- package/dist/v2/ManageMember.js +43 -0
- package/dist/v2/ManageMember.js.map +1 -0
- package/dist/v2/MembersDropdown.js +193 -0
- package/dist/v2/MembersDropdown.js.map +1 -0
- package/dist/v2/MembersInvite.js +242 -0
- package/dist/v2/MembersInvite.js.map +1 -0
- package/dist/v2/Permissions.js +13 -0
- package/dist/v2/Permissions.js.map +1 -0
- package/dist/v2/Profile.js +656 -0
- package/dist/v2/Profile.js.map +1 -0
- package/dist/v2/Roles.js +1242 -0
- package/dist/v2/Roles.js.map +1 -0
- package/dist/v2/RolesRadioGroup.js +20 -0
- package/dist/v2/RolesRadioGroup.js.map +1 -0
- package/dist/v2/TeamMembers.js +937 -0
- package/dist/v2/TeamMembers.js.map +1 -0
- package/dist/v2/TeamsAndMembersDropdown.js +430 -0
- package/dist/v2/TeamsAndMembersDropdown.js.map +1 -0
- package/dist/v2/TeamsDropdown.js +106 -0
- package/dist/v2/TeamsDropdown.js.map +1 -0
- package/dist/v2/constants.js +21 -0
- package/dist/v2/constants.js.map +1 -0
- package/dist/v2/hooks.js +29 -0
- package/dist/v2/hooks.js.map +1 -0
- package/dist/v2/utils.js +30 -0
- package/dist/v2/utils.js.map +1 -0
- package/dist/withReactQuery-CSuiy5RK.js +20 -0
- package/dist/withReactQuery-CSuiy5RK.js.map +1 -0
- package/dist/withReactQuery-DvSkXhEx.js +26 -0
- package/dist/withReactQuery-DvSkXhEx.js.map +1 -0
- package/package.json +31 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TeamMembers.js","sources":["../../app/javascript/src/components/v2/hooks/useFilters.js","../../app/javascript/src/components/v2/hooks/useTeams.js","../../app/javascript/src/components/v2/TeamMembers/ActionBlock/constants.js","../../app/javascript/src/components/v2/TeamMembers/ActionBlock/Header.jsx","../../app/javascript/src/components/v2/TeamMembers/ActionBlock/utils.js","../../app/javascript/src/components/v2/TeamMembers/ActionBlock/RolesDropdown.jsx","../../app/javascript/src/components/v2/TeamMembers/ActionBlock/SubHeader.jsx","../../app/javascript/src/components/v2/TeamMembers/ExportPane/constants.js","../../app/javascript/src/components/v2/TeamMembers/ExportPane/index.jsx","../../app/javascript/src/components/v2/TeamMembers/Header.jsx","../../app/javascript/src/components/v2/TeamMembers/index.jsx"],"sourcesContent":["import { useMemo, useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport {\n useDebounce,\n useFuncDebounce,\n useQueryParams,\n} from \"neetocommons/react-utils\";\nimport { buildFiltersFromURL } from \"neetofilters\";\nimport { isNil, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchFilterOptions } from \"v2/hooks/teams/useTeamsApi\";\n\nimport { DEFAULT_FILTER_VALUES } from \"../TeamMembers/constants\";\nimport {\n buildFilterColumns,\n defaultNeetoFiltersColumns,\n} from \"../TeamMembers/utils\";\n\nconst useFilters = ({ config }) => {\n const { t } = useTranslation();\n const { searchTerm = \"\" } = useQueryParams();\n const searchKeywordProps = {\n node: \"first_name,last_name,email\",\n value: searchTerm,\n key: \"search_term\",\n };\n\n const [emailSearchTerm, setEmailSearchTerm] = useState(\"\");\n const defaultNeetoFilters = buildFiltersFromURL([\n ...(config?.filterColumns ?? defaultNeetoFiltersColumns()),\n searchKeywordProps,\n ]);\n\n const [filters, setFilters] = useState({\n ...DEFAULT_FILTER_VALUES,\n ...config?.defaultFilterValues,\n neetoFilters: defaultNeetoFilters,\n });\n\n const resetPage = useFuncDebounce(() =>\n setFilters(mergeLeft({ page: DEFAULT_PAGE_INDEX }))\n );\n const debouncedEmailSearchTerm = useDebounce(emailSearchTerm, 750);\n\n const shouldFetchFilterOptions = isNil(config?.filterColumns);\n const { data: filterOptions = {}, isLoading: isFilterOptionsLoading } =\n useFetchFilterOptions({\n params: { emailSearchTerm: debouncedEmailSearchTerm },\n options: { enabled: shouldFetchFilterOptions },\n });\n\n const filterColumns = shouldFetchFilterOptions\n ? buildFilterColumns({\n options: filterOptions,\n emailConfig: {\n setSearchTerm: setEmailSearchTerm,\n isLoading: isFilterOptionsLoading,\n },\n })\n : config?.filterColumns;\n\n const searchProps = useMemo(\n () => ({\n \"data-testid\": \"ntm-search-members-input\",\n placeholder: t(\"neetoTeamMembers.common.search_\", {\n what: taxonomies.member.plural,\n }),\n onChange: resetPage,\n }),\n []\n );\n\n return {\n filters,\n setFilters,\n filterColumns,\n searchProps,\n searchKeywordProps,\n };\n};\n\nexport default useFilters;\n","import { useState } from \"react\";\n\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { assoc, mergeLeft, pluck } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport {\n DEFAULT_IS_OPEN_VALUES,\n DEFAULT_SELECTED_ROWS,\n} from \"../TeamMembers/constants\";\nimport { handlePageChange } from \"../TeamMembers/utils\";\n\nconst useTeams = ({ config, filters, setFilters, updateMember }) => {\n const history = useHistory();\n const [selectedMember, setSelectedMember] = useState(null);\n const [isOpen, setIsOpen] = useState(DEFAULT_IS_OPEN_VALUES);\n const [selectedRows, setSelectedRows] = useState(DEFAULT_SELECTED_ROWS);\n\n const handleRemoveMember = () => {\n if (!selectedMember) return;\n\n const { id } = selectedMember;\n const payload = { active: false };\n updateMember({ id, payload });\n };\n\n const handleUpdateStatus = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"alert\", true));\n };\n\n const handleUpdateRole = user => {\n setSelectedMember(user);\n setIsOpen(assoc(\"manageMember\", true));\n };\n\n const handleAlertClose = () => {\n setIsOpen(assoc(\"alert\", false));\n setSelectedMember(null);\n };\n\n const handlePaneClose = () => {\n setIsOpen(assoc(\"manageMember\", false));\n setSelectedMember(null);\n };\n\n const resetSelectedRows = () => setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n const handleMemberFilterChange = () => {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n );\n };\n\n const handleTableChange = (_, __, sorter) => {\n setFilters(mergeLeft({ sortBy: sorter.field, orderBy: sorter.order }));\n };\n\n const handleRowSelect = (keys, rowData) => {\n const rows = {\n active: pluck(\"active\", rowData),\n displayNames: pluck(\"displayName\", rowData),\n emails: pluck(\"email\", rowData),\n keys,\n };\n setSelectedRows({ ...rows });\n config?.table?.onRowSelect?.({ rows, resetSelectedRows, rowData });\n };\n\n return {\n handleAlertClose,\n handleMemberFilterChange,\n handlePaneClose,\n handleRowSelect,\n handleTableChange,\n handleRemoveMember,\n handleUpdateRole,\n handleUpdateStatus,\n isOpen,\n selectedMember,\n selectedRows,\n setIsOpen,\n setSelectedRows,\n };\n};\n\nexport default useTeams;\n","import { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/constants\";\n\nexport const FIXED_COLUMNS = [\"name\", \"actions\"];\n\nexport const MANAGE_ROLES_BUTTON_LABEL = t(\n \"neetoTeamMembers.labels.manageRole\",\n PLURAL\n);\n","import { memo } from \"react\";\n\nimport { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { MANAGE_ROLES_BUTTON_LABEL } from \"./constants\";\n\nconst Header = ({\n isCreatePermissionGranted,\n otherActionBlock,\n onClick = noop,\n rolesButtonProps,\n}) => {\n const { t } = useTranslation();\n\n const isRolesButtonVisible = !!rolesButtonProps;\n const isOtherActionBlockVisible = !!otherActionBlock;\n\n return (\n <>\n {isOtherActionBlockVisible && otherActionBlock()}\n {isRolesButtonVisible ? (\n <Button\n data-testid=\"ntm-manage-roles-button\"\n variant=\"outline\"\n {...rolesButtonProps}\n >\n {MANAGE_ROLES_BUTTON_LABEL}\n </Button>\n ) : null}\n <Tooltip\n content={\n !isCreatePermissionGranted\n ? t(\"neetoTeamMembers.tooltips.noPermissionToAddMember\")\n : null\n }\n >\n <span>\n <Button\n {...{ onClick }}\n data-testid=\"ntm-add-member-button\"\n disabled={!isCreatePermissionGranted}\n >\n {t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular,\n })}\n </Button>\n </span>\n </Tooltip>\n </>\n );\n};\n\nexport default memo(Header);\n","import { filter, includes, toLower, trim } from \"ramda\";\n\nexport const filterBySearchTerm = (searchTerm, roles) =>\n filter(\n ({ name }) => includes(trim(toLower(searchTerm)), trim(toLower(name))),\n roles\n );\n\nexport const getDeactivatedButtonVisible = (selectedRows, config) =>\n selectedRows.active.some(active => active === true) &&\n !config?.hiddenBulkActions?.includes(\"remove\");\n","import { useState } from \"react\";\n\nimport {\n DropdownMenu,\n Input,\n Tooltip,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { Search } from \"lucide-react\";\nimport { isNotEmpty, hyphenate } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { filterBySearchTerm } from \"./utils\";\n\nconst RolesDropdown = ({\n disabled = false,\n hasUpdatePermission,\n isSearchable = false,\n roles = [],\n selectedMembersCount = 0,\n setAlertType,\n setBulkUpdateRole,\n}) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const filteredRoles = filterBySearchTerm(searchTerm, roles);\n const isUpdatingAllowed = hasUpdatePermission && !disabled;\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n const handleSelectRole = role => {\n setBulkUpdateRole(role);\n setAlertType(\"role\");\n };\n\n return (\n <Tooltip\n content={\n !isUpdatingAllowed\n ? t(\"neetoTeamMembers.tooltips.activateUserToEdit\", {\n count: selectedMembersCount,\n })\n : null\n }\n >\n <span>\n <DropdownMenu.SubMenu\n contentProps={{ align: \"end\" }}\n label={t(\"neetoTeamMembers.buttons.changeRole\")}\n triggerProps={{ disabled: !isUpdatingAllowed }}\n >\n {isSearchable && (\n <div className=\"px-3 py-2\" onClick={e => e.stopPropagation()}>\n <div className=\"relative\">\n <Search className=\"absolute left-2 top-1/2 size-4 -translate-y-1/2 text-muted-foreground\" />\n <Input\n className=\"ps-8\"\n data-testid=\"ntm-members-roles-search-input\"\n type=\"search\"\n value={searchTerm}\n placeholder={t(\n \"neetoTeamMembers.placeholders.searchRole\",\n PLURAL\n )}\n onChange={handleSearch}\n />\n </div>\n </div>\n )}\n {isNotEmpty(filteredRoles) ? (\n filteredRoles.map(({ id, name }) => (\n <DropdownMenu.MenuItem key={id}>\n <DropdownMenu.MenuItem.Button\n data-testid={`change-role-${hyphenate(name)}-button`}\n onClick={() => handleSelectRole(name)}\n >\n {name}\n </DropdownMenu.MenuItem.Button>\n </DropdownMenu.MenuItem>\n ))\n ) : (\n <div className=\"flex justify-center p-1\">\n <Typography className=\"text-muted-foreground text-sm\">\n {t(\"neetoTeamMembers.helpers.noRolesFound\")}\n </Typography>\n </div>\n )}\n </DropdownMenu.SubMenu>\n </span>\n </Tooltip>\n );\n};\n\nexport default RolesDropdown;\n","import { useState } from \"react\";\n\nimport {\n Alert,\n DropdownMenu,\n Tooltip,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { findBy, isNotEmpty } from \"neetocist\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport { withT } from \"neetocommons/react-utils\";\nimport SubHeaderMolecule from \"neetomolecules/v2/SubHeader\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useBulkUpdateMembers } from \"v2/hooks/teams/useTeamsApi\";\n\nimport { FIXED_COLUMNS } from \"./constants\";\nimport RolesDropdown from \"./RolesDropdown\";\nimport { getDeactivatedButtonVisible } from \"./utils\";\n\nimport { TABLE_KEYS } from \"../../constants\";\nimport { DEFAULT_SELECTED_ROWS } from \"../constants\";\n\nconst Left = ({\n config,\n filteredCount,\n resetToFirstPage,\n roles,\n selectedRows,\n setSelectedRows,\n selectedRowsCount,\n bulkParams,\n}) => {\n const { t } = useTranslation();\n\n const isUpdatePermissionGranted = config.permissions.update;\n\n const [alertType, setAlertType] = useState(\"\");\n const [bulkUpdateRole, setBulkUpdateRole] = useState(\"\");\n const hasSelectedRows = isNotEmpty(selectedRows?.keys);\n\n const selectedMembersCountValues = {\n count:\n (selectedRowsCount || selectedRows?.keys?.length || filteredCount) ?? 0,\n metaName:\n hasSelectedRows && selectedRows?.keys.length > 1\n ? taxonomies.member.plural\n : taxonomies.member.singular,\n totalCount: filteredCount ?? 0,\n };\n\n const hasDeactivateMembers = selectedRows?.active?.some(active => !active);\n\n const { mutate: bulkUpdateMember } = useBulkUpdateMembers({\n onSuccess: () => {\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n resetToFirstPage();\n config?.bulkUpdateMembers?.onSuccess?.callback();\n },\n });\n\n const handleDeactivateMembers = () => {\n bulkUpdateMember({\n users: { active: false, emails: selectedRows?.emails },\n filterParams: bulkParams,\n });\n };\n\n const resetSelectedRows = () => setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n const handleRoleChange = role => {\n bulkUpdateMember({\n users: {\n active: true,\n emails: selectedRows?.emails,\n organization_role: role,\n },\n filterParams: bulkParams,\n });\n };\n\n const alertTypes = [\n {\n message: \"neetoTeamMembers.alerts.messages.removeMember\",\n onSubmit: handleDeactivateMembers,\n title: t(\"neetoTeamMembers.common.remove_\", {\n what: selectedMembersCountValues?.metaName,\n }),\n type: \"remove\",\n },\n {\n message: \"neetoTeamMembers.alerts.messages.changeRole\",\n onSubmit: handleRoleChange,\n title: t(\"neetoTeamMembers.common.changeRole\"),\n type: \"role\",\n },\n ];\n\n const selectedAlert = findBy({ type: alertType }, alertTypes);\n\n const handleAlertClose = () => {\n selectedAlert.onSubmit(bulkUpdateRole);\n setAlertType(\"\");\n };\n\n const getButtonLabel = type => {\n if (type === \"role\") {\n return t(\"neetoTeamMembers.buttons.changeRole\");\n }\n\n return t(\"neetoTeamMembers.buttons.remove\");\n };\n\n return (\n <div className=\"flex items-center gap-4\">\n <Typography data-testid=\"ntm-filtered-members-count\">\n <Trans\n components={{ span: <span className=\"text-muted-foreground\" /> }}\n values={selectedMembersCountValues}\n i18nKey={\n hasSelectedRows\n ? \"neetoTeamMembers.helpers.selectedMembersCount\"\n : \"neetoTeamMembers.helpers.metaNameWithCount\"\n }\n />\n </Typography>\n {hasSelectedRows && (\n <Tooltip\n content={\n !isUpdatePermissionGranted\n ? t(\"neetoTeamMembers.tooltips.noPermissionToEditMembers\")\n : null\n }\n >\n <span>\n <DropdownMenu\n buttonStyle=\"tertiary\"\n disabled={!isUpdatePermissionGranted}\n label={t(\"neetoTeamMembers.common.takeAction\")}\n buttonProps={{\n \"data-testid\": \"ntm-members-take-action-dropdown-button\",\n }}\n >\n {!config?.hiddenBulkActions?.includes(\"role\") && (\n <RolesDropdown\n {...{ roles, setAlertType, setBulkUpdateRole }}\n disabled={hasDeactivateMembers}\n hasUpdatePermission={isUpdatePermissionGranted}\n selectedMembersCount={selectedMembersCountValues?.count}\n />\n )}\n {config?.otherBulkActions?.(resetSelectedRows, selectedRows)}\n {getDeactivatedButtonVisible(selectedRows, config) && (\n <DropdownMenu.MenuItem>\n <DropdownMenu.MenuItem.Button\n data-testid=\"ntm-deactivate-members-button\"\n isDisabled={!isUpdatePermissionGranted}\n onClick={() => setAlertType(\"remove\")}\n >\n {t(\"neetoTeamMembers.common.remove\")}\n </DropdownMenu.MenuItem.Button>\n </DropdownMenu.MenuItem>\n )}\n </DropdownMenu>\n </span>\n </Tooltip>\n )}\n <Alert\n cancelButtonLabel={t(\"neetoTeamMembers.buttons.cancel\")}\n isOpen={!!selectedAlert}\n submitButtonLabel={getButtonLabel(selectedAlert?.type)}\n title={selectedAlert?.title}\n message={\n <Trans\n i18nKey={selectedAlert?.message}\n values={{\n ...selectedMembersCountValues,\n person: selectedRows.displayNames[0],\n role: bulkUpdateRole,\n }}\n />\n }\n onClose={() => setAlertType(\"\")}\n onSubmit={handleAlertClose}\n />\n </div>\n );\n};\n\nconst Right = withT(\n ({\n t,\n columns,\n filterColumns,\n handleNeetoFilterChange,\n isFiltersPaneOpen,\n searchKeywordProps,\n setIsDownloadPaneOpen,\n setIsFiltersPaneOpen,\n }) => (\n <SubHeaderMolecule.RightBlock\n columnsButtonProps={{\n columnData: columns,\n fixedColumns: FIXED_COLUMNS,\n tableKey: TABLE_KEYS.TEAM_MEMBERS_TABLE,\n noColumnMessage: t(\"neetoTeamMembers.columns.noColumnsFound\"),\n searchProps: { placeholder: t(\"neetoTeamMembers.columns.search\") },\n }}\n downloadButtonProps={{\n isVisible: true,\n tooltipProps: { content: t(\"neetoTeamMembers.buttons.export\") },\n onClick: () => setIsDownloadPaneOpen(true),\n }}\n filterProps={{\n columns: filterColumns,\n isOpen: isFiltersPaneOpen,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleNeetoFilterChange,\n keyword: searchKeywordProps,\n }}\n />\n )\n);\n\nconst SubHeader = { Left, Right };\n\nexport default SubHeader;\n","import { t } from \"i18next\";\n\nconst EXPORT_TYPES = { PDF: \"pdf\", CSV: \"csv\", EXCEL: \"xlsx\" };\n\nexport const DEFAULT_EXPORT_OPTIONS = {\n exportType: EXPORT_TYPES.EXCEL,\n};\n\nexport const EXPORT_OPTIONS = [\n {\n type: EXPORT_TYPES.EXCEL,\n individualExportLabel: t(\"neetoTeamMembers.labels.exports.xlsx\"),\n bulkExportLabel: t(\"neetoTeamMembers.labels.exportAs\", {\n format: t(\"neetoTeamMembers.labels.exports.xlsx\"),\n }),\n dataTestid: \"download-as-excel-radio-item\",\n },\n {\n type: EXPORT_TYPES.CSV,\n individualExportLabel: t(\"neetoTeamMembers.labels.exports.csv\"),\n bulkExportLabel: t(\"neetoTeamMembers.labels.exportAs\", {\n format: t(\"neetoTeamMembers.labels.exports.csv\"),\n }),\n dataTestid: \"download-as-csv-radio-item\",\n },\n {\n type: EXPORT_TYPES.PDF,\n individualExportLabel: t(\"neetoTeamMembers.labels.exports.pdf\"),\n bulkExportLabel: t(\"neetoTeamMembers.labels.exportAs\", {\n format: t(\"neetoTeamMembers.labels.exports.pdf\"),\n }),\n dataTestid: \"download-as-pdf-radio-item\",\n },\n];\n","import { useState } from \"react\";\n\nimport { Button, RadioGroup, Sheet, Typography } from \"@bigbinary/neeto-atoms\";\nimport { isNotEmpty } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { captureAnalyticsEvent } from \"neetocommons/utils\";\nimport { mergeLeft } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { toast } from \"sonner\";\n\nimport { useExportMembers } from \"v2/hooks/teams/useTeamsApi\";\n\nimport { DEFAULT_EXPORT_OPTIONS, EXPORT_OPTIONS } from \"./constants\";\n\nimport { EVENTS } from \"../../constants\";\n\nconst ExportPane = ({\n isOpen,\n onClose,\n appliedFilters,\n hasBulkSelectedAllRows,\n selectedMemberIds,\n selectedRowsCount,\n}) => {\n const [exportOptions, setExportOptions] = useState(DEFAULT_EXPORT_OPTIONS);\n\n const { t } = useTranslation();\n\n const setExportOption = options => setExportOptions(mergeLeft(options));\n\n const { exportType } = exportOptions;\n\n const getParams = () => ({\n ...exportOptions,\n filters: appliedFilters || undefined,\n considerAllMembers: hasBulkSelectedAllRows,\n memberIds: hasBulkSelectedAllRows ? undefined : selectedMemberIds,\n });\n\n const { mutate: exportMembers } = useExportMembers({\n onSuccess: () => {\n onClose();\n setExportOptions(DEFAULT_EXPORT_OPTIONS);\n\n toast.success(\n <Trans\n i18nKey=\"toastr.success.exportMembers\"\n values={{ email: globalProps.user?.email }}\n />\n );\n\n captureAnalyticsEvent(EVENTS.TEAM_MEMBERS_DOWNLOADED, {\n ...exportOptions,\n });\n },\n onError: error => toast.error(error.message),\n });\n\n const description =\n isNotEmpty(selectedMemberIds) || hasBulkSelectedAllRows\n ? t(\"neetoTeamMembers.exportPane.description.selectedMembers\", {\n count: selectedRowsCount,\n })\n : t(\"neetoTeamMembers.exportPane.description.allMembers\");\n\n return (\n <Sheet {...{ isOpen, onClose }}>\n <Sheet.Header>\n <Sheet.Title data-testid=\"export-member-heading\">\n {t(\"neetoTeamMembers.exportPane.title\")}\n </Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <div className=\"space-y-4\">\n <Typography className=\"text-sm\">{description}</Typography>\n <RadioGroup\n value={exportType}\n onValueChange={type => setExportOption({ exportType: type })}\n >\n {EXPORT_OPTIONS.map(({ type, bulkExportLabel, dataTestid }) => (\n <RadioGroup.Item\n data-testid={dataTestid}\n id={type}\n key={type}\n label={bulkExportLabel}\n value={type}\n />\n ))}\n </RadioGroup>\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"gap-x-2\">\n <Button\n data-testid=\"export-submit-button\"\n onClick={() => exportMembers({ export: getParams() })}\n >\n {t(\"neetoTeamMembers.buttons.export\")}\n </Button>\n <Button\n data-testid=\"export-cancel-button\"\n variant=\"ghost\"\n onClick={onClose}\n >\n {t(\"neetoTeamMembers.buttons.cancel\")}\n </Button>\n </Sheet.Footer>\n </Sheet>\n );\n};\n\nexport default ExportPane;\n","import { memo } from \"react\";\n\nimport { taxonomies } from \"neetocommons/initializers\";\nimport NeetoHeader from \"neetomolecules/v2/Header\";\nimport { assoc } from \"ramda\";\n\nimport { Header as HeaderActionBlock } from \"./ActionBlock\";\n\nconst Header = ({ config, setIsOpen, searchProps }) => (\n <NeetoHeader\n {...{ searchProps }}\n title={taxonomies.member.plural}\n actionBlock={\n <HeaderActionBlock\n isCreatePermissionGranted={config.permissions.create}\n otherActionBlock={config.header?.otherActionBlock}\n rolesButtonProps={config.rolesButtonProps}\n onClick={() => setIsOpen(assoc(\"manageMember\", true))}\n />\n }\n {...config?.header?.otherProps}\n />\n);\n\nexport default memo(Header);\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport {\n Alert,\n Button,\n Empty,\n Spinner,\n DataTable,\n} from \"@bigbinary/neeto-atoms\";\nimport { DEFAULT_PAGE_INDEX, DEFAULT_PAGE_SIZE } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\nimport {\n withTitle,\n useBreakpoints,\n useQueryParams,\n} from \"neetocommons/react-utils\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Bar as FiltersBar } from \"neetofilters\";\nimport { useTableConfigurations } from \"neetomolecules/v2/Columns\";\nimport Container from \"neetomolecules/v2/Container\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { assoc, mergeLeft, reverse } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport withReactQuery from \"v2/common/withReactQuery\";\nimport { useFetchRoles } from \"v2/hooks/roles/useRolesApi\";\nimport { useFetchMembers, useUpdateMember } from \"v2/hooks/teams/useTeamsApi\";\nimport useFilters from \"v2/hooks/useFilters\";\nimport useTeams from \"v2/hooks/useTeams\";\n\nimport { SubHeader as SubHeaderActionBlock } from \"./ActionBlock\";\nimport { DEFAULT_RADIX, DEFAULT_SELECTED_ROWS } from \"./constants\";\nimport ExportPane from \"./ExportPane\";\nimport Header from \"./Header\";\nimport ManageMember from \"./ManageMember\";\nimport {\n generateNoDataContent,\n getColumnData,\n getFilteredRoles,\n handlePageChange,\n renderUpdateAlert,\n} from \"./utils\";\n\nimport { TABLE_KEYS } from \"../constants\";\n\nconst TeamMembers = ({ config }) => {\n const { t } = useTranslation();\n const history = useHistory();\n const { isSize } = useBreakpoints();\n const queryParams = useQueryParams();\n\n const isViewPermissionGranted = config.permissions.view;\n const isCreatePermissionGranted = config.permissions.create;\n\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [isDownloadPaneOpen, setIsDownloadPaneOpen] = useState(false);\n const [hasBulkSelectedAllRows, setHasBulkSelectedAllRows] = useState(false);\n\n useEffect(() => {\n handleMemberFilterChange();\n }, []);\n\n const {\n filters,\n setFilters,\n filterColumns,\n searchProps,\n searchKeywordProps,\n } = useFilters({ config });\n\n const {\n data: team,\n isLoading: isMembersLoading,\n isFetching: isMembersFetching,\n } = useFetchMembers({ ...filters }, { enabled: isViewPermissionGranted });\n\n const bulkParams = {\n neetoFilters: filters[\"neetoFilters\"],\n considerAllTeamMembers: hasBulkSelectedAllRows,\n };\n\n const { data: roles, isLoading: isRolesLoading } = useFetchRoles({\n select: response => reverse(response?.organizationRoles ?? []),\n enabled: isViewPermissionGranted,\n });\n\n const { mutate: updateMember, isPending: isUpdatingMember } = useUpdateMember(\n {\n onSuccess: () => {\n handleAlertClose();\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n );\n config?.updateMember?.onSuccess?.callback();\n },\n }\n );\n\n const filteredRoles = getFilteredRoles(roles, config);\n\n const {\n handleAlertClose,\n handleMemberFilterChange,\n handlePaneClose,\n handleRowSelect,\n handleRemoveMember,\n handleUpdateRole,\n handleUpdateStatus,\n isOpen,\n selectedMember,\n selectedRows,\n setIsOpen,\n setSelectedRows,\n } = useTeams({ config, filters, setFilters, updateMember });\n\n const selectedRowsCount = hasBulkSelectedAllRows\n ? team?.membersCount\n : selectedRows.keys.length;\n\n config?.fetchApiResponse?.({ team });\n\n const hasMembers = team?.activeUsersCount > 0;\n\n const updateMemberAlertProps = { member: selectedMember, config };\n\n config?.table?.onDropdownClick?.({ handleUpdateRole, handleUpdateStatus });\n\n const columns = useMemo(\n () =>\n getColumnData({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n isSize,\n }),\n [config.table?.dropdownProps] // eslint-disable-line react-hooks/exhaustive-deps\n );\n\n const { isTableConfigurationLoading, customizedColumns, hideColumn } =\n useTableConfigurations(TABLE_KEYS.TEAM_MEMBERS_TABLE, columns);\n\n const handleNeetoFilterChange = filters => {\n setFilters(mergeLeft({ neetoFilters: filters, page: DEFAULT_PAGE_INDEX }));\n setSelectedRows(DEFAULT_SELECTED_ROWS);\n\n history.push(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page: DEFAULT_PAGE_INDEX }, queryParams)\n )\n );\n };\n\n const { noDataTitle, noDataButtonProps } = generateNoDataContent({\n buttonProps: {\n onClick: () => setIsOpen(assoc(\"manageMember\", true)),\n disabled: !isCreatePermissionGranted,\n },\n });\n\n if (isRolesLoading || isMembersLoading) {\n return (\n <div className=\"flex h-full min-h-screen w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n <Container>\n <Header\n {...{ config, setIsOpen }}\n searchProps={hasMembers ? searchProps : null}\n />\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n hasMembers && (\n <SubHeaderActionBlock.Left\n {...{\n bulkParams,\n config,\n selectedRows,\n selectedRowsCount,\n setSelectedRows,\n }}\n filteredCount={team?.membersCount}\n roles={filteredRoles}\n resetToFirstPage={() =>\n handlePageChange(setFilters, history)(\n DEFAULT_PAGE_INDEX,\n filters.pageSize ?? DEFAULT_PAGE_SIZE\n )\n }\n />\n )\n }\n rightActionBlock={\n hasMembers && (\n <SubHeaderActionBlock.Right\n {...{\n columns,\n filterColumns,\n handleNeetoFilterChange,\n isFiltersPaneOpen,\n searchKeywordProps,\n setIsDownloadPaneOpen,\n setIsFiltersPaneOpen,\n }}\n />\n )\n }\n />\n <FiltersBar\n className=\"mb-4\"\n columns={filterColumns}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFiltersPaneOpen}\n onChange={handleNeetoFilterChange}\n />\n <ExportPane\n {...{ hasBulkSelectedAllRows, selectedRowsCount }}\n appliedFilters={filters}\n isOpen={isDownloadPaneOpen}\n selectedMemberIds={selectedRows.keys}\n onClose={() => setIsDownloadPaneOpen(false)}\n />\n {team?.membersCount !== 0 ? (\n <DataTable\n fixedHeight\n allowRowClick={false}\n columns={customizedColumns}\n currentPage={parseInt(filters.page, DEFAULT_RADIX)}\n data={team?.members || []}\n data-testid=\"ntm-members-table\"\n loading={isMembersFetching || isTableConfigurationLoading}\n pageSize={filters.pageSize ?? DEFAULT_PAGE_SIZE}\n selectedRowKeys={selectedRows.keys}\n totalCount={team?.membersCount}\n bulkSelectAllRowsProps={{\n selectAllRowMessage: t(\n \"neetoTeamMembers.helpers.selectedMembers\",\n { count: selectedRowsCount }\n ),\n selectAllRowButtonLabel: t(\"neetoTeamMembers.helpers.selectAll\", {\n count: team?.membersCount,\n }),\n setBulkSelectedAllRows: setHasBulkSelectedAllRows,\n }}\n onColumnHide={({ key }) => hideColumn(key)}\n onPageChange={handlePageChange(setFilters, history)}\n onRowSelect={handleRowSelect}\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty title={noDataTitle}>\n <Button\n data-testid={noDataButtonProps[\"data-testid\"]}\n disabled={noDataButtonProps.disabled}\n onClick={noDataButtonProps.onClick}\n >\n {noDataButtonProps.label}\n </Button>\n </Empty>\n </div>\n )}\n </Container>\n <ManageMember\n {...{ config, selectedMember }}\n componentConfig={{ isOpen: isOpen.manageMember }}\n roles={filteredRoles}\n onComplete={handlePaneClose}\n />\n <Alert\n cancelButtonLabel={t(\"neetoTeamMembers.buttons.cancel\")}\n isOpen={isOpen.alert}\n isSubmitting={isUpdatingMember}\n message={renderUpdateAlert(\"message\", updateMemberAlertProps)}\n submitButtonLabel={t(\"neetoTeamMembers.buttons.remove\")}\n title={renderUpdateAlert(\"title\", updateMemberAlertProps)}\n onClose={handleAlertClose}\n onSubmit={handleRemoveMember}\n />\n </>\n );\n};\n\nexport default withTitle(withReactQuery(TeamMembers), taxonomies.member.plural);\n"],"names":["useFilters","_ref","_config$filterColumns","config","_useTranslation","useTranslation","t","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","key","_useState","useState","_useState2","_slicedToArray","emailSearchTerm","setEmailSearchTerm","defaultNeetoFilters","buildFiltersFromURL","concat","_toConsumableArray","filterColumns","defaultNeetoFiltersColumns","_useState3","_objectSpread","DEFAULT_FILTER_VALUES","defaultFilterValues","neetoFilters","_useState4","filters","setFilters","resetPage","useFuncDebounce","mergeLeft","page","DEFAULT_PAGE_INDEX","debouncedEmailSearchTerm","useDebounce","shouldFetchFilterOptions","isNil","_useFetchFilterOption","useFetchFilterOptions","params","options","enabled","_useFetchFilterOption2","data","filterOptions","isFilterOptionsLoading","isLoading","buildFilterColumns","emailConfig","setSearchTerm","searchProps","useMemo","placeholder","what","taxonomies","member","plural","onChange","useTeams","updateMember","history","useHistory","selectedMember","setSelectedMember","DEFAULT_IS_OPEN_VALUES","isOpen","setIsOpen","_useState5","DEFAULT_SELECTED_ROWS","_useState6","selectedRows","setSelectedRows","handleRemoveMember","id","payload","active","handleUpdateStatus","user","assoc","handleUpdateRole","handleAlertClose","handlePaneClose","resetSelectedRows","handleMemberFilterChange","_filters$pageSize","handlePageChange","pageSize","DEFAULT_PAGE_SIZE","handleTableChange","_","__","sorter","sortBy","field","orderBy","order","handleRowSelect","keys","rowData","_config$table","_config$table$onRowSe","rows","pluck","displayNames","emails","table","onRowSelect","call","FIXED_COLUMNS","MANAGE_ROLES_BUTTON_LABEL","PLURAL","Header","isCreatePermissionGranted","otherActionBlock","_ref$onClick","onClick","noop","rolesButtonProps","isRolesButtonVisible","isOtherActionBlockVisible","_jsxs","_Fragment","children","_jsx","Button","variant","Tooltip","content","disabled","singular","memo","filterBySearchTerm","roles","filter","name","includes","trim","toLower","getDeactivatedButtonVisible","_config$hiddenBulkAct","some","hiddenBulkActions","RolesDropdown","_ref$disabled","hasUpdatePermission","_ref$isSearchable","isSearchable","_ref$roles","_ref$selectedMembersC","selectedMembersCount","setAlertType","setBulkUpdateRole","filteredRoles","isUpdatingAllowed","handleSearch","_ref2","target","handleSelectRole","role","count","DropdownMenu","SubMenu","contentProps","align","label","triggerProps","className","e","stopPropagation","Search","Input","type","isNotEmpty","map","_ref3","MenuItem","hyphenate","Typography","Left","_selectedRows$keys","_selectedRows$active","_config$otherBulkActi","filteredCount","resetToFirstPage","selectedRowsCount","bulkParams","isUpdatePermissionGranted","permissions","update","alertType","bulkUpdateRole","hasSelectedRows","selectedMembersCountValues","length","metaName","totalCount","hasDeactivateMembers","_useBulkUpdateMembers","useBulkUpdateMembers","onSuccess","_config$bulkUpdateMem","bulkUpdateMembers","callback","bulkUpdateMember","mutate","handleDeactivateMembers","users","filterParams","handleRoleChange","organization_role","alertTypes","message","onSubmit","title","selectedAlert","findBy","getButtonLabel","Trans","components","span","values","i18nKey","buttonStyle","buttonProps","otherBulkActions","isDisabled","Alert","cancelButtonLabel","submitButtonLabel","person","onClose","Right","withT","columns","handleNeetoFilterChange","isFiltersPaneOpen","setIsDownloadPaneOpen","setIsFiltersPaneOpen","SubHeaderMolecule","RightBlock","columnsButtonProps","columnData","fixedColumns","tableKey","TABLE_KEYS","TEAM_MEMBERS_TABLE","noColumnMessage","downloadButtonProps","isVisible","tooltipProps","filterProps","keyword","SubHeader","EXPORT_TYPES","PDF","CSV","EXCEL","DEFAULT_EXPORT_OPTIONS","exportType","EXPORT_OPTIONS","individualExportLabel","bulkExportLabel","format","dataTestid","ExportPane","appliedFilters","hasBulkSelectedAllRows","selectedMemberIds","exportOptions","setExportOptions","setExportOption","getParams","undefined","considerAllMembers","memberIds","_useExportMembers","useExportMembers","_globalProps$user","toast","success","email","globalProps","captureAnalyticsEvent","EVENTS","TEAM_MEMBERS_DOWNLOADED","onError","error","exportMembers","description","Sheet","Title","Body","RadioGroup","onValueChange","Item","Footer","_config$header","_config$header2","NeetoHeader","actionBlock","HeaderActionBlock","create","header","otherProps","TeamMembers","_config$fetchApiRespo","_config$table$onDropd","_config$table2","_filters$pageSize3","_useBreakpoints","useBreakpoints","isSize","queryParams","isViewPermissionGranted","view","isDownloadPaneOpen","setHasBulkSelectedAllRows","useEffect","_useFilters","_useFetchMembers","useFetchMembers","team","isMembersLoading","isMembersFetching","isFetching","considerAllTeamMembers","_useFetchRoles","useFetchRoles","select","response","_response$organizatio","reverse","organizationRoles","isRolesLoading","_useUpdateMember","useUpdateMember","_config$updateMember","isUpdatingMember","isPending","getFilteredRoles","_useTeams","membersCount","fetchApiResponse","hasMembers","activeUsersCount","updateMemberAlertProps","onDropdownClick","getColumnData","dropdownProps","_useTableConfiguratio","useTableConfigurations","isTableConfigurationLoading","customizedColumns","hideColumn","push","buildUrl","window","location","pathname","_generateNoDataConten","generateNoDataContent","noDataTitle","noDataButtonProps","Spinner","Container","leftActionBlock","SubHeaderActionBlock","_filters$pageSize2","rightActionBlock","FiltersBar","setIsPaneOpen","DataTable","fixedHeight","allowRowClick","currentPage","parseInt","DEFAULT_RADIX","members","loading","selectedRowKeys","bulkSelectAllRowsProps","selectAllRowMessage","selectAllRowButtonLabel","setBulkSelectedAllRows","onColumnHide","onPageChange","Empty","ManageMember","componentConfig","manageMember","onComplete","alert","isSubmitting","renderUpdateAlert","withTitle","withReactQuery"],"mappings":"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"}
|
|
@@ -0,0 +1,430 @@
|
|
|
1
|
+
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
|
+
import { useState, useEffect, useMemo, memo } from 'react';
|
|
3
|
+
import { Typography, Input, Button as Button$1, Tooltip, DropdownMenu } from '@bigbinary/neeto-atoms';
|
|
4
|
+
import { filter, prop } from 'ramda';
|
|
5
|
+
import { isNotEmpty, noop } from '@bigbinary/neeto-cist';
|
|
6
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
7
|
+
import { useTranslation } from 'react-i18next';
|
|
8
|
+
import classnames from 'classnames';
|
|
9
|
+
import { withT } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
10
|
+
import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
|
|
11
|
+
import { XCircle, ChevronDown } from 'lucide-react';
|
|
12
|
+
|
|
13
|
+
var TABS = {
|
|
14
|
+
TEAMS_TAB: "teams",
|
|
15
|
+
MEMBERS_TAB: "members"
|
|
16
|
+
};
|
|
17
|
+
|
|
18
|
+
var SelectMember = withT(function (_ref) {
|
|
19
|
+
var t = _ref.t,
|
|
20
|
+
members = _ref.members,
|
|
21
|
+
setMember = _ref.setMember,
|
|
22
|
+
selectedMember = _ref.selectedMember,
|
|
23
|
+
loadingMember = _ref.loadingMember;
|
|
24
|
+
return /*#__PURE__*/jsx(Fragment, {
|
|
25
|
+
children: isNotEmpty(members) ? members === null || members === void 0 ? void 0 : members.map(function (member) {
|
|
26
|
+
return /*#__PURE__*/jsx("li", {
|
|
27
|
+
"data-testid": "agent-options",
|
|
28
|
+
className: classnames({
|
|
29
|
+
active: selectedMember && selectedMember.value === member.value,
|
|
30
|
+
loading: loadingMember && loadingMember === member.value
|
|
31
|
+
}),
|
|
32
|
+
onClick: function onClick(event) {
|
|
33
|
+
event.preventDefault();
|
|
34
|
+
if (!loadingMember) {
|
|
35
|
+
setMember(member);
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
children: /*#__PURE__*/jsx("span", {
|
|
39
|
+
className: "truncate",
|
|
40
|
+
children: member.label
|
|
41
|
+
})
|
|
42
|
+
}, member.value);
|
|
43
|
+
}) : /*#__PURE__*/jsx("li", {
|
|
44
|
+
className: "flex justify-center",
|
|
45
|
+
children: /*#__PURE__*/jsx(Typography, {
|
|
46
|
+
className: "px-3",
|
|
47
|
+
children: t("neetoTeamMembers.helpers.noRecords")
|
|
48
|
+
})
|
|
49
|
+
})
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
|
|
53
|
+
var SelectTeam = function SelectTeam(_ref) {
|
|
54
|
+
var teams = _ref.teams,
|
|
55
|
+
setTeam = _ref.setTeam,
|
|
56
|
+
selectedTeam = _ref.selectedTeam,
|
|
57
|
+
loadingTeam = _ref.loadingTeam;
|
|
58
|
+
return /*#__PURE__*/jsx(Fragment, {
|
|
59
|
+
children: teams === null || teams === void 0 ? void 0 : teams.map(function (group) {
|
|
60
|
+
return /*#__PURE__*/jsx("li", {
|
|
61
|
+
"data-testid": "group-options",
|
|
62
|
+
className: classnames({
|
|
63
|
+
active: selectedTeam && selectedTeam.value === group.value,
|
|
64
|
+
loading: loadingTeam && loadingTeam === group.value
|
|
65
|
+
}),
|
|
66
|
+
onClick: function onClick(event) {
|
|
67
|
+
event.preventDefault();
|
|
68
|
+
if (!loadingTeam) {
|
|
69
|
+
setTeam(group);
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
children: group.label
|
|
73
|
+
}, group.value);
|
|
74
|
+
})
|
|
75
|
+
});
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
function ownKeys(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; }
|
|
79
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
80
|
+
var TabBody = function TabBody(_ref) {
|
|
81
|
+
var selectedTab = _ref.selectedTab,
|
|
82
|
+
teams = _ref.teams,
|
|
83
|
+
teamTitle = _ref.teamTitle,
|
|
84
|
+
members = _ref.members,
|
|
85
|
+
setMember = _ref.setMember,
|
|
86
|
+
setTeam = _ref.setTeam,
|
|
87
|
+
selectedMember = _ref.selectedMember,
|
|
88
|
+
selectedTeam = _ref.selectedTeam,
|
|
89
|
+
loading = _ref.loading,
|
|
90
|
+
memberTitle = _ref.memberTitle,
|
|
91
|
+
showTeams = _ref.showTeams;
|
|
92
|
+
var _useState = useState(""),
|
|
93
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
94
|
+
memberString = _useState2[0],
|
|
95
|
+
setMemberString = _useState2[1];
|
|
96
|
+
var _useState3 = useState(""),
|
|
97
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
98
|
+
teamString = _useState4[0],
|
|
99
|
+
setTeamString = _useState4[1];
|
|
100
|
+
var _useTranslation = useTranslation(),
|
|
101
|
+
t = _useTranslation.t;
|
|
102
|
+
useEffect(function () {
|
|
103
|
+
setMemberString("");
|
|
104
|
+
}, [selectedMember]);
|
|
105
|
+
useEffect(function () {
|
|
106
|
+
setTeamString("");
|
|
107
|
+
}, [selectedTeam]);
|
|
108
|
+
var filteredMembers = useMemo(function () {
|
|
109
|
+
return members === null || members === void 0 ? void 0 : members.filter(function (member) {
|
|
110
|
+
var _member$label;
|
|
111
|
+
return ((_member$label = member.label) === null || _member$label === void 0 ? void 0 : _member$label.toLowerCase().indexOf(memberString.toLowerCase())) > -1;
|
|
112
|
+
});
|
|
113
|
+
}, [members, memberString]);
|
|
114
|
+
var filteredTeams = useMemo(function () {
|
|
115
|
+
return teams === null || teams === void 0 ? void 0 : teams.filter(function (team) {
|
|
116
|
+
var _team$label;
|
|
117
|
+
return ((_team$label = team.label) === null || _team$label === void 0 ? void 0 : _team$label.toLowerCase().indexOf(teamString.toLowerCase())) > -1;
|
|
118
|
+
});
|
|
119
|
+
}, [teams, teamString]);
|
|
120
|
+
var teamInputProps = {
|
|
121
|
+
value: teamString,
|
|
122
|
+
placeholder: t("neetoTeamMembers.placeholders.searchEntity", {
|
|
123
|
+
entity: teamTitle
|
|
124
|
+
}),
|
|
125
|
+
onChange: function onChange(event) {
|
|
126
|
+
return setTeamString(event.target.value.trimStart());
|
|
127
|
+
}
|
|
128
|
+
};
|
|
129
|
+
var memberInputProps = {
|
|
130
|
+
value: memberString,
|
|
131
|
+
placeholder: t("neetoTeamMembers.placeholders.searchEntity", {
|
|
132
|
+
entity: memberTitle
|
|
133
|
+
}),
|
|
134
|
+
onChange: function onChange(event) {
|
|
135
|
+
return setMemberString(event.target.value.trimStart());
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
var isTeamTab = useMemo(function () {
|
|
139
|
+
return selectedTab === TABS.TEAMS_TAB && showTeams;
|
|
140
|
+
}, [selectedTab]);
|
|
141
|
+
var inputProps = isTeamTab ? teamInputProps : memberInputProps;
|
|
142
|
+
return /*#__PURE__*/jsxs(Fragment, {
|
|
143
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
144
|
+
className: "px-4 py-2",
|
|
145
|
+
children: /*#__PURE__*/jsx(Input, _objectSpread({}, inputProps))
|
|
146
|
+
}), /*#__PURE__*/jsx("div", {
|
|
147
|
+
className: "max-h-56 w-72 overflow-y-auto",
|
|
148
|
+
children: isTeamTab ? /*#__PURE__*/jsx(SelectTeam, {
|
|
149
|
+
selectedTeam: selectedTeam,
|
|
150
|
+
setTeam: setTeam,
|
|
151
|
+
loadingTeam: loading.team,
|
|
152
|
+
teams: filteredTeams
|
|
153
|
+
}) : /*#__PURE__*/jsx(SelectMember, {
|
|
154
|
+
selectedMember: selectedMember,
|
|
155
|
+
setMember: setMember,
|
|
156
|
+
loadingMember: loading.member,
|
|
157
|
+
members: filteredMembers
|
|
158
|
+
})
|
|
159
|
+
})]
|
|
160
|
+
});
|
|
161
|
+
};
|
|
162
|
+
|
|
163
|
+
var Tab = withT(function (_ref) {
|
|
164
|
+
var t = _ref.t,
|
|
165
|
+
title = _ref.title,
|
|
166
|
+
value = _ref.value,
|
|
167
|
+
onClick = _ref.onClick,
|
|
168
|
+
active = _ref.active,
|
|
169
|
+
removeValue = _ref.removeValue,
|
|
170
|
+
loading = _ref.loading;
|
|
171
|
+
return /*#__PURE__*/jsx("div", {
|
|
172
|
+
className: "w-1/2 cursor-pointer",
|
|
173
|
+
children: /*#__PURE__*/jsxs("div", {
|
|
174
|
+
onClick: onClick,
|
|
175
|
+
className: classnames(["text-muted-foreground border-b-2 px-4 py-4"], {
|
|
176
|
+
"text-foreground border-primary bg-background": active
|
|
177
|
+
}),
|
|
178
|
+
children: [/*#__PURE__*/jsx("div", {
|
|
179
|
+
className: "mb-1.5 text-xs font-semibold uppercase tracking-wide text-foreground",
|
|
180
|
+
"data-testid": "select-group-or-agent",
|
|
181
|
+
children: title
|
|
182
|
+
}), /*#__PURE__*/jsxs("div", {
|
|
183
|
+
className: "flex flex-row items-center justify-start text-sm font-normal text-muted-foreground",
|
|
184
|
+
"data-testid": "ticket-table-assignee-or-group",
|
|
185
|
+
children: [loading && /*#__PURE__*/jsx("span", {
|
|
186
|
+
className: "bp3-skeleton flex justify-center",
|
|
187
|
+
children: t("neetoTeamMembers.common.loading")
|
|
188
|
+
}), !loading && (value ? /*#__PURE__*/jsxs(Fragment, {
|
|
189
|
+
children: [/*#__PURE__*/jsx(Button$1, {
|
|
190
|
+
className: "shrink-0 text-destructive",
|
|
191
|
+
size: "icon-xs",
|
|
192
|
+
variant: "ghost",
|
|
193
|
+
onClick: removeValue,
|
|
194
|
+
children: /*#__PURE__*/jsx(XCircle, {
|
|
195
|
+
size: 16
|
|
196
|
+
})
|
|
197
|
+
}), /*#__PURE__*/jsx("span", {
|
|
198
|
+
className: "ms-1 truncate font-medium text-foreground",
|
|
199
|
+
children: value
|
|
200
|
+
})]
|
|
201
|
+
}) : /*#__PURE__*/jsx("span", {
|
|
202
|
+
className: "py-1.5 text-muted-foreground",
|
|
203
|
+
children: "--"
|
|
204
|
+
}))]
|
|
205
|
+
})]
|
|
206
|
+
})
|
|
207
|
+
});
|
|
208
|
+
});
|
|
209
|
+
var TabHeader = function TabHeader(_ref2) {
|
|
210
|
+
var selectedTab = _ref2.selectedTab,
|
|
211
|
+
setSelectedTab = _ref2.setSelectedTab,
|
|
212
|
+
selectedMember = _ref2.selectedMember,
|
|
213
|
+
selectedTeam = _ref2.selectedTeam,
|
|
214
|
+
onClearMember = _ref2.onClearMember,
|
|
215
|
+
onClearTeam = _ref2.onClearTeam,
|
|
216
|
+
loading = _ref2.loading,
|
|
217
|
+
showTeams = _ref2.showTeams,
|
|
218
|
+
teamTitle = _ref2.teamTitle,
|
|
219
|
+
memberTitle = _ref2.memberTitle;
|
|
220
|
+
var teamTab = selectedTab === TABS.TEAMS_TAB;
|
|
221
|
+
var memberTab = selectedTab === TABS.MEMBERS_TAB;
|
|
222
|
+
return /*#__PURE__*/jsxs("div", {
|
|
223
|
+
className: "-mt-2 flex w-72 flex-row items-center justify-start bg-muted",
|
|
224
|
+
children: [showTeams && /*#__PURE__*/jsx(Tab, {
|
|
225
|
+
active: teamTab,
|
|
226
|
+
loading: !!loading.team,
|
|
227
|
+
removeValue: onClearTeam,
|
|
228
|
+
title: teamTitle,
|
|
229
|
+
value: selectedTeam !== null && selectedTeam !== void 0 && selectedTeam.value ? selectedTeam.label : null,
|
|
230
|
+
onClick: function onClick() {
|
|
231
|
+
return setSelectedTab(TABS.TEAMS_TAB);
|
|
232
|
+
}
|
|
233
|
+
}), /*#__PURE__*/jsx(Tab, {
|
|
234
|
+
active: memberTab,
|
|
235
|
+
loading: !!loading.member,
|
|
236
|
+
removeValue: onClearMember,
|
|
237
|
+
title: memberTitle,
|
|
238
|
+
value: selectedMember !== null && selectedMember !== void 0 && selectedMember.value ? selectedMember.label : null,
|
|
239
|
+
onClick: function onClick() {
|
|
240
|
+
return setSelectedTab(TABS.MEMBERS_TAB);
|
|
241
|
+
}
|
|
242
|
+
})]
|
|
243
|
+
});
|
|
244
|
+
};
|
|
245
|
+
|
|
246
|
+
var DropDownContent = function DropDownContent(_ref) {
|
|
247
|
+
var selectedMember = _ref.selectedMember,
|
|
248
|
+
selectedTeam = _ref.selectedTeam,
|
|
249
|
+
setSelectedTeam = _ref.setSelectedTeam,
|
|
250
|
+
setSelectedMember = _ref.setSelectedMember,
|
|
251
|
+
members = _ref.members,
|
|
252
|
+
teams = _ref.teams,
|
|
253
|
+
filterMembersBy = _ref.filterMembersBy,
|
|
254
|
+
loading = _ref.loading,
|
|
255
|
+
teamTitle = _ref.teamTitle,
|
|
256
|
+
memberTitle = _ref.memberTitle;
|
|
257
|
+
var _useState = useState(TABS.TEAMS_TAB),
|
|
258
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
259
|
+
selectedTab = _useState2[0],
|
|
260
|
+
setSelectedTab = _useState2[1];
|
|
261
|
+
var showTeams = useMemo(function () {
|
|
262
|
+
return isNotEmpty(teams);
|
|
263
|
+
}, [teams]);
|
|
264
|
+
var handleSelectTeam = function handleSelectTeam(team) {
|
|
265
|
+
setSelectedTeam(team);
|
|
266
|
+
setSelectedTab(TABS.MEMBERS_TAB);
|
|
267
|
+
};
|
|
268
|
+
var handleSelectMember = function handleSelectMember(member) {
|
|
269
|
+
setSelectedMember(member);
|
|
270
|
+
};
|
|
271
|
+
var filterMembers = function filterMembers(members) {
|
|
272
|
+
if (filterMembersBy === null) {
|
|
273
|
+
return members;
|
|
274
|
+
}
|
|
275
|
+
return filter(prop(filterMembersBy), members);
|
|
276
|
+
};
|
|
277
|
+
return /*#__PURE__*/jsxs(Fragment, {
|
|
278
|
+
children: [/*#__PURE__*/jsx(TabHeader, {
|
|
279
|
+
loading: loading,
|
|
280
|
+
memberTitle: memberTitle,
|
|
281
|
+
selectedMember: selectedMember,
|
|
282
|
+
selectedTab: selectedTab,
|
|
283
|
+
selectedTeam: selectedTeam,
|
|
284
|
+
setSelectedTab: setSelectedTab,
|
|
285
|
+
showTeams: showTeams,
|
|
286
|
+
teamTitle: teamTitle,
|
|
287
|
+
onClearMember: function onClearMember() {
|
|
288
|
+
return setSelectedMember({
|
|
289
|
+
id: null
|
|
290
|
+
});
|
|
291
|
+
},
|
|
292
|
+
onClearTeam: function onClearTeam() {
|
|
293
|
+
return setSelectedTeam({
|
|
294
|
+
id: null
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
}), /*#__PURE__*/jsx(TabBody, {
|
|
298
|
+
loading: loading,
|
|
299
|
+
memberTitle: memberTitle,
|
|
300
|
+
selectedMember: selectedMember,
|
|
301
|
+
selectedTab: selectedTab,
|
|
302
|
+
selectedTeam: selectedTeam,
|
|
303
|
+
showTeams: showTeams,
|
|
304
|
+
teamTitle: teamTitle,
|
|
305
|
+
teams: teams,
|
|
306
|
+
setMember: handleSelectMember,
|
|
307
|
+
setTeam: handleSelectTeam,
|
|
308
|
+
members: selectedTeam !== null && selectedTeam !== void 0 && selectedTeam.members ? filterMembers(selectedTeam.members) : members
|
|
309
|
+
})]
|
|
310
|
+
});
|
|
311
|
+
};
|
|
312
|
+
|
|
313
|
+
var Button = function Button(_ref) {
|
|
314
|
+
var label = _ref.label,
|
|
315
|
+
_ref$disabled = _ref.disabled,
|
|
316
|
+
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
317
|
+
_ref$handleClick = _ref.handleClick,
|
|
318
|
+
handleClick = _ref$handleClick === void 0 ? noop : _ref$handleClick;
|
|
319
|
+
return /*#__PURE__*/jsx("button", {
|
|
320
|
+
className: "w-full text-start",
|
|
321
|
+
onClick: handleClick,
|
|
322
|
+
children: /*#__PURE__*/jsxs("a", {
|
|
323
|
+
className: classnames([{
|
|
324
|
+
"cursor-not-allowed opacity-50": disabled
|
|
325
|
+
}, "neeto-ui-btn neeto-ui-btn--style-text neeto-ui-btn--width-full neeto-ui-btn--size-medium justify-start"]),
|
|
326
|
+
children: [/*#__PURE__*/jsx("span", {
|
|
327
|
+
className: "neeto-ui-btn__label overflow-hidden text-ellipsis whitespace-nowrap",
|
|
328
|
+
style: {
|
|
329
|
+
width: label !== "--" ? "calc(100% - 24px)" : "15%"
|
|
330
|
+
},
|
|
331
|
+
children: label
|
|
332
|
+
}), /*#__PURE__*/jsx(ChevronDown, {
|
|
333
|
+
className: "neeto-ui-btn__icon",
|
|
334
|
+
size: 16
|
|
335
|
+
})]
|
|
336
|
+
})
|
|
337
|
+
});
|
|
338
|
+
};
|
|
339
|
+
|
|
340
|
+
var Target$1 = function Target(_ref) {
|
|
341
|
+
var isOpen = _ref.isOpen,
|
|
342
|
+
setIsOpen = _ref.setIsOpen,
|
|
343
|
+
selectedTeam = _ref.selectedTeam,
|
|
344
|
+
selectedMember = _ref.selectedMember,
|
|
345
|
+
canManageTicket = _ref.canManageTicket,
|
|
346
|
+
module = _ref.module;
|
|
347
|
+
var isChatModule = module === "chats";
|
|
348
|
+
var clippedString = function clippedString(string) {
|
|
349
|
+
var cap = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
350
|
+
return string && cap && string.length > cap ? "".concat(string.substring(0, cap), "...") : string;
|
|
351
|
+
};
|
|
352
|
+
var renderContent = function renderContent() {
|
|
353
|
+
var charLimit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
354
|
+
if (selectedTeam !== null && selectedTeam !== void 0 && selectedTeam.label && selectedMember !== null && selectedMember !== void 0 && selectedMember.label) {
|
|
355
|
+
return "".concat(clippedString(selectedTeam.label, charLimit), "/").concat(clippedString(selectedMember.label, charLimit));
|
|
356
|
+
}
|
|
357
|
+
if (selectedTeam !== null && selectedTeam !== void 0 && selectedTeam.label) {
|
|
358
|
+
return "".concat(clippedString(selectedTeam.label, charLimit), "/--");
|
|
359
|
+
}
|
|
360
|
+
return (selectedMember === null || selectedMember === void 0 ? void 0 : selectedMember.label) || "--";
|
|
361
|
+
};
|
|
362
|
+
return /*#__PURE__*/jsx(Tooltip, {
|
|
363
|
+
content: renderContent(),
|
|
364
|
+
children: /*#__PURE__*/jsx("span", {
|
|
365
|
+
children: canManageTicket || isChatModule ? /*#__PURE__*/jsx(Button, {
|
|
366
|
+
handleClick: function handleClick() {
|
|
367
|
+
return setIsOpen(!isOpen);
|
|
368
|
+
},
|
|
369
|
+
label: renderContent(isChatModule ? 20 : 8)
|
|
370
|
+
}) : /*#__PURE__*/jsx(Button, {
|
|
371
|
+
disabled: true,
|
|
372
|
+
label: renderContent(isChatModule ? 20 : 8)
|
|
373
|
+
})
|
|
374
|
+
})
|
|
375
|
+
});
|
|
376
|
+
};
|
|
377
|
+
var Target = /*#__PURE__*/memo(Target$1);
|
|
378
|
+
|
|
379
|
+
var TeamsAndMembersDropdown = function TeamsAndMembersDropdown(_ref) {
|
|
380
|
+
var config = _ref.config;
|
|
381
|
+
var _useState = useState(false),
|
|
382
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
383
|
+
isOpen = _useState2[0],
|
|
384
|
+
setIsOpen = _useState2[1];
|
|
385
|
+
useEffect(function () {
|
|
386
|
+
if (config !== null && config !== void 0 && config.loading.member) return;
|
|
387
|
+
setIsOpen(false);
|
|
388
|
+
}, [config === null || config === void 0 ? void 0 : config.loading.member]);
|
|
389
|
+
return /*#__PURE__*/jsx("div", {
|
|
390
|
+
className: "inline",
|
|
391
|
+
children: /*#__PURE__*/jsx("div", {
|
|
392
|
+
className: "max-w-40",
|
|
393
|
+
children: /*#__PURE__*/jsx(DropdownMenu, {
|
|
394
|
+
isOpen: isOpen,
|
|
395
|
+
closeOnSelect: false,
|
|
396
|
+
dropdownProps: {
|
|
397
|
+
className: "w-72 p-0"
|
|
398
|
+
},
|
|
399
|
+
customTarget: /*#__PURE__*/jsx("div", {
|
|
400
|
+
children: /*#__PURE__*/jsx(Target, {
|
|
401
|
+
isOpen: isOpen,
|
|
402
|
+
setIsOpen: setIsOpen,
|
|
403
|
+
canManageTicket: config === null || config === void 0 ? void 0 : config.canManageTicket,
|
|
404
|
+
module: config === null || config === void 0 ? void 0 : config.module,
|
|
405
|
+
selectedMember: config === null || config === void 0 ? void 0 : config.selectedMember,
|
|
406
|
+
selectedTeam: config === null || config === void 0 ? void 0 : config.selectedTeam
|
|
407
|
+
})
|
|
408
|
+
}),
|
|
409
|
+
onClose: function onClose() {
|
|
410
|
+
return setIsOpen(false);
|
|
411
|
+
},
|
|
412
|
+
children: /*#__PURE__*/jsx(DropDownContent, {
|
|
413
|
+
filterMembersBy: config === null || config === void 0 ? void 0 : config.filterMembersBy,
|
|
414
|
+
loading: config === null || config === void 0 ? void 0 : config.loading,
|
|
415
|
+
memberTitle: config === null || config === void 0 ? void 0 : config.memberTitle,
|
|
416
|
+
selectedMember: config === null || config === void 0 ? void 0 : config.selectedMember,
|
|
417
|
+
selectedTeam: config === null || config === void 0 ? void 0 : config.selectedTeam,
|
|
418
|
+
setSelectedMember: config === null || config === void 0 ? void 0 : config.setSelectedMember,
|
|
419
|
+
setSelectedTeam: config === null || config === void 0 ? void 0 : config.setSelectedTeam,
|
|
420
|
+
teamTitle: config === null || config === void 0 ? void 0 : config.teamTitle,
|
|
421
|
+
teams: config === null || config === void 0 ? void 0 : config.teams,
|
|
422
|
+
members: config !== null && config !== void 0 && config.filterMembersBy ? filter(prop(config === null || config === void 0 ? void 0 : config.filterMembersBy), config === null || config === void 0 ? void 0 : config.members) : config === null || config === void 0 ? void 0 : config.members
|
|
423
|
+
})
|
|
424
|
+
})
|
|
425
|
+
})
|
|
426
|
+
});
|
|
427
|
+
};
|
|
428
|
+
|
|
429
|
+
export { TeamsAndMembersDropdown as default };
|
|
430
|
+
//# sourceMappingURL=TeamsAndMembersDropdown.js.map
|