@leav/ui 1.14.0-3c4d7f0f → 1.14.0-58e3a5ef

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.
Files changed (55) hide show
  1. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js +1 -1
  2. package/dist/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.js.map +1 -1
  3. package/dist/components/Explorer/ExplorerTitle.js +1 -1
  4. package/dist/components/Explorer/ExplorerTitle.js.map +1 -1
  5. package/dist/components/Explorer/TableNameCell.js +2 -3
  6. package/dist/components/Explorer/TableNameCell.js.map +1 -1
  7. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js +1 -1
  8. package/dist/components/Explorer/actions-item/useEditStatusItemAction.js.map +1 -1
  9. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js +1 -1
  10. package/dist/components/Explorer/actions-mass/useDeactivateMassAction.js.map +1 -1
  11. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +1 -1
  12. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
  13. package/dist/components/ImportModal/ImportModalConfigStep/ImportSheetSettings/ImportSheetSettings.js +1 -1
  14. package/dist/components/ImportModal/ImportModalConfigStep/ImportSheetSettings/ImportSheetSettings.js.map +1 -1
  15. package/dist/components/RecordCard/RecordCard.js +1 -1
  16. package/dist/components/RecordCard/RecordCard.js.map +1 -1
  17. package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js +1 -1
  18. package/dist/components/RecordEdition/EditRecordButtons/SidebarButton.js.map +1 -1
  19. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.js +1 -2
  20. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.js.map +1 -1
  21. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js +1 -2
  22. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -1
  23. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.js +1 -1
  24. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.js.map +1 -1
  25. package/dist/components/RecordEdition/hooks/useCreateCancelConfirm/useCreateCancelConfirm.js +1 -1
  26. package/dist/components/RecordEdition/hooks/useCreateCancelConfirm/useCreateCancelConfirm.js.map +1 -1
  27. package/dist/components/SelectTreeNode/SelectTreeNode.js +1 -1
  28. package/dist/components/SelectTreeNode/SelectTreeNode.js.map +1 -1
  29. package/dist/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.js +1 -1
  30. package/dist/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.js.map +1 -1
  31. package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js +1 -1
  32. package/dist/components/ValuesVersionConfigurator/VersionTree/VersionTree.js.map +1 -1
  33. package/dist/constants.d.ts +0 -1
  34. package/dist/constants.js +0 -1
  35. package/dist/constants.js.map +1 -1
  36. package/dist/hooks/index.d.ts +2 -2
  37. package/dist/hooks/index.js +2 -2
  38. package/dist/hooks/index.js.map +1 -1
  39. package/dist/hooks/useLang/__mocks__/useLang.js.map +1 -1
  40. package/dist/hooks/useLang/useLang.js.map +1 -1
  41. package/dist/testing/MockedLangContextProvider/MockedLangContextProvider.js +1 -1
  42. package/dist/testing/MockedLangContextProvider/MockedLangContextProvider.js.map +1 -1
  43. package/package.json +7 -7
  44. package/dist/hooks/useConfirmModal/__mocks__/index.d.ts +0 -1
  45. package/dist/hooks/useConfirmModal/__mocks__/index.js +0 -2
  46. package/dist/hooks/useConfirmModal/__mocks__/index.js.map +0 -1
  47. package/dist/hooks/useConfirmModal/index.d.ts +0 -1
  48. package/dist/hooks/useConfirmModal/index.js +0 -2
  49. package/dist/hooks/useConfirmModal/index.js.map +0 -1
  50. package/dist/hooks/useLang/__mocks__/index.d.ts +0 -2
  51. package/dist/hooks/useLang/__mocks__/index.js +0 -3
  52. package/dist/hooks/useLang/__mocks__/index.js.map +0 -1
  53. package/dist/hooks/useLang/index.d.ts +0 -2
  54. package/dist/hooks/useLang/index.js +0 -3
  55. package/dist/hooks/useLang/index.js.map +0 -1
@@ -5,7 +5,7 @@ import { Button, Collapse, Form, List, Select, Space, Switch } from 'antd';
5
5
  import { useState } from 'react';
6
6
  import styled from 'styled-components';
7
7
  import { PreviewSize } from '../../../../../../constants';
8
- import useLang from '../../../../../../hooks/useLang';
8
+ import useLang from '../../../../../../hooks/useLang/useLang';
9
9
  import { useSharedTranslation } from '../../../../../../hooks/useSharedTranslation';
10
10
  import { EntityCard } from '../../../../../EntityCard';
11
11
  import FieldsGroup from '../../../../../FieldsGroup';
@@ -1 +1 @@
1
- {"version":3,"file":"TreeLibrariesForm.js","sourceRoot":"","sources":["../../../../../../../src/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import {CloseOutlined, PlusOutlined} from '@ant-design/icons';\nimport {localizedTranslation} from '@leav/utils';\nimport {Button, Collapse, Form, List, Select, Space, Switch} from 'antd';\nimport {type ComponentProps, type ReactNode, useState} from 'react';\nimport styled, {type CSSObject} from 'styled-components';\nimport {type LibraryLightFragment, type TreeDetailsFragment} from '../../../../../../_gqlTypes';\nimport {PreviewSize} from '../../../../../../constants';\nimport useLang from '../../../../../../hooks/useLang';\nimport {useSharedTranslation} from '../../../../../../hooks/useSharedTranslation';\nimport {EntityCard, type IEntityData} from '../../../../../EntityCard';\nimport FieldsGroup from '../../../../../FieldsGroup';\nimport {LibraryPicker} from '../../../../../LibraryPicker';\n\nconst RemoveButton = styled(CloseOutlined)`\n cursor: pointer;\n align-self: flex-start;\n`;\n\nconst ListItemPart = styled.div<{style?: CSSObject}>`\n display: flex;\n padding: 0.5rem;\n width: 100%;\n gap: 1rem;\n\n ${props => props.style}\n`;\n\nconst ALL_CHILDREN_ALLOWED_KEY = '__all__';\n\ninterface ITreeLibrariesFormProps {\n onChange: (libraries: TreeDetailsFragment['libraries']) => void;\n readOnly?: boolean;\n extra?: ReactNode;\n}\n\nfunction TreeLibrariesForm({onChange, extra, readOnly}: ITreeLibrariesFormProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n const form = Form.useFormInstance();\n const libraries: TreeDetailsFragment['libraries'] = form.getFieldValue('libraries') ?? [];\n const [isLibraryPickerOpen, setIsLibraryPickerOpen] = useState(false);\n\n const _handleLibrariesChange = (newLibraries: TreeDetailsFragment['libraries']) => {\n form.setFieldValue('libraries', newLibraries);\n onChange(newLibraries);\n };\n\n const _handleAddLibrary = () => {\n setIsLibraryPickerOpen(true);\n };\n const _handleCloseLibraryPicker = () => setIsLibraryPickerOpen(false);\n const _handleSubmitLibraryPicker = (selectedLibraries: LibraryLightFragment[]) => {\n const addedLibraries = selectedLibraries.map(library => ({\n library: {id: library.id, label: library.label},\n settings: {allowMultiplePositions: false, allowedAtRoot: true, allowedChildren: [ALL_CHILDREN_ALLOWED_KEY]},\n }));\n\n const newLibraries = [...libraries, ...addedLibraries];\n _handleLibrariesChange(newLibraries);\n };\n const _handleRemoveLibrary = (libraryId: string) => () => {\n const newLibraries = libraries.filter(library => library.library.id !== libraryId);\n _handleLibrariesChange(newLibraries);\n };\n\n const _handleSwitchChange = (libraryId: string, field: string) => (checked: boolean) => {\n const newLibraries = libraries.map(library => {\n if (library.library.id === libraryId) {\n return {\n ...library,\n settings: {...library.settings, [field]: checked},\n };\n }\n\n return library;\n });\n\n _handleLibrariesChange(newLibraries);\n };\n\n const _handleAllowedChildrenChange = (libraryId: string, index: number) => (allowedChildren: string[]) => {\n const previousValue =\n libraries.find(library => library.library.id === libraryId)?.settings.allowedChildren ?? [];\n\n let selectedChildren = allowedChildren;\n const didAllowAllChildren = previousValue.includes(ALL_CHILDREN_ALLOWED_KEY);\n const nowAllowAllChildren = allowedChildren.includes(ALL_CHILDREN_ALLOWED_KEY);\n if (!nowAllowAllChildren && didAllowAllChildren) {\n selectedChildren = allowedChildren.filter(child => child !== ALL_CHILDREN_ALLOWED_KEY);\n }\n\n if (nowAllowAllChildren && !didAllowAllChildren) {\n selectedChildren = [ALL_CHILDREN_ALLOWED_KEY];\n }\n\n const newLibraries = libraries.map(library => {\n if (library.library.id === libraryId) {\n return {\n ...library,\n settings: {...library.settings, allowedChildren: selectedChildren},\n };\n }\n\n return library;\n });\n\n _handleLibrariesChange(newLibraries);\n form.setFieldValue(['libraries', index, 'settings', 'allowedChildren'], selectedChildren);\n };\n\n const groupLabel = (\n <Space>\n {t('trees.linked_libraries')}\n {extra}\n </Space>\n );\n\n const renderListItem = (item: TreeDetailsFragment['libraries'][number], index: number) => {\n const itemIdentity: IEntityData = {\n label: localizedTranslation(item.library.label, lang),\n subLabel: item.library.id,\n color: null,\n preview: null,\n };\n\n const allowedChildrenOptions = [\n {key: ALL_CHILDREN_ALLOWED_KEY, value: ALL_CHILDREN_ALLOWED_KEY, label: t('trees.all_children_allowed')},\n {\n key: 'libraries',\n label: t('trees.libraries'),\n options: libraries.map(library => ({\n key: library.library.id,\n value: library.library.id,\n label: localizedTranslation(library.library.label, lang),\n disabled: form\n .getFieldValue(['libraries', index, 'settings', 'allowedChildren'])\n .includes(ALL_CHILDREN_ALLOWED_KEY),\n })),\n },\n ];\n\n const collapseItems: ComponentProps<typeof Collapse>['items'] = [\n {\n key: 'settings',\n label: t('trees.advanced_settings'),\n children: (\n <>\n <ListItemPart>\n <Form.Item\n name={['libraries', index, 'settings', 'allowMultiplePositions']}\n label={t('trees.allowed_multiple_positions')}\n valuePropName=\"checked\"\n style={{margin: 0}}\n >\n <Switch\n disabled={readOnly}\n onChange={_handleSwitchChange(item.library.id, 'allowMultiplePositions')}\n />\n </Form.Item>\n <Form.Item\n name={['libraries', index, 'settings', 'allowedAtRoot']}\n label={t('trees.allowed_at_root')}\n valuePropName=\"checked\"\n style={{margin: 0}}\n >\n <Switch\n disabled={readOnly}\n onChange={_handleSwitchChange(item.library.id, 'allowedAtRoot')}\n />\n </Form.Item>\n </ListItemPart>\n <ListItemPart>\n <Form.Item\n name={['libraries', index, 'settings', 'allowedChildren']}\n label={t('trees.allowed_children')}\n style={{margin: 0}}\n >\n <Select\n options={allowedChildrenOptions}\n onChange={_handleAllowedChildrenChange(item.library.id, index)}\n placeholder={t('trees.no_children_allowed')}\n mode=\"multiple\"\n allowClear\n disabled={readOnly}\n style={{minWidth: '15rem'}}\n aria-label=\"\"\n />\n </Form.Item>\n </ListItemPart>\n </>\n ),\n },\n ];\n\n return (\n <List.Item style={{flexDirection: 'column', padding: '5px 1rem'}}>\n <ListItemPart style={{justifyContent: 'space-between'}}>\n <EntityCard entity={itemIdentity} size={PreviewSize.SMALL} />\n {!readOnly && (\n <RemoveButton\n role=\"button\"\n aria-label=\"delete-library\"\n onClick={_handleRemoveLibrary(item.library.id)}\n />\n )}\n </ListItemPart>\n <Collapse size=\"small\" style={{width: '100%', margin: '0.5rem'}} items={collapseItems} />\n </List.Item>\n );\n };\n\n const listFooter = !readOnly ? (\n <Button icon={<PlusOutlined />} style={{border: 'none', boxShadow: 'none'}} onClick={_handleAddLibrary}>\n {t('trees.add_libraries')}\n </Button>\n ) : null;\n const selectedLibraries = libraries.map(library => library.library.id);\n\n return (\n <>\n <FieldsGroup label={groupLabel} style={{padding: 0}}>\n <List\n dataSource={libraries}\n renderItem={renderListItem}\n footer={listFooter}\n locale={{emptyText: t('trees.no_linked_libraries')}}\n style={{padding: 0}}\n />\n </FieldsGroup>\n {isLibraryPickerOpen && (\n <LibraryPicker\n onClose={_handleCloseLibraryPicker}\n open={isLibraryPickerOpen}\n onSubmit={_handleSubmitLibraryPicker}\n multiple\n selected={selectedLibraries}\n showSelected={false}\n />\n )}\n </>\n );\n}\n\nexport default TreeLibrariesForm;\n"]}
1
+ {"version":3,"file":"TreeLibrariesForm.js","sourceRoot":"","sources":["../../../../../../../src/components/EditTreeModal/EditTree/EditTreeInfo/EditTreeInfoForm/TreeLibrariesForm/TreeLibrariesForm.tsx"],"names":[],"mappings":"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","sourcesContent":["import {CloseOutlined, PlusOutlined} from '@ant-design/icons';\nimport {localizedTranslation} from '@leav/utils';\nimport {Button, Collapse, Form, List, Select, Space, Switch} from 'antd';\nimport {type ComponentProps, type ReactNode, useState} from 'react';\nimport styled, {type CSSObject} from 'styled-components';\nimport {type LibraryLightFragment, type TreeDetailsFragment} from '../../../../../../_gqlTypes';\nimport {PreviewSize} from '../../../../../../constants';\nimport useLang from '../../../../../../hooks/useLang/useLang';\nimport {useSharedTranslation} from '../../../../../../hooks/useSharedTranslation';\nimport {EntityCard, type IEntityData} from '../../../../../EntityCard';\nimport FieldsGroup from '../../../../../FieldsGroup';\nimport {LibraryPicker} from '../../../../../LibraryPicker';\n\nconst RemoveButton = styled(CloseOutlined)`\n cursor: pointer;\n align-self: flex-start;\n`;\n\nconst ListItemPart = styled.div<{style?: CSSObject}>`\n display: flex;\n padding: 0.5rem;\n width: 100%;\n gap: 1rem;\n\n ${props => props.style}\n`;\n\nconst ALL_CHILDREN_ALLOWED_KEY = '__all__';\n\ninterface ITreeLibrariesFormProps {\n onChange: (libraries: TreeDetailsFragment['libraries']) => void;\n readOnly?: boolean;\n extra?: ReactNode;\n}\n\nfunction TreeLibrariesForm({onChange, extra, readOnly}: ITreeLibrariesFormProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n const form = Form.useFormInstance();\n const libraries: TreeDetailsFragment['libraries'] = form.getFieldValue('libraries') ?? [];\n const [isLibraryPickerOpen, setIsLibraryPickerOpen] = useState(false);\n\n const _handleLibrariesChange = (newLibraries: TreeDetailsFragment['libraries']) => {\n form.setFieldValue('libraries', newLibraries);\n onChange(newLibraries);\n };\n\n const _handleAddLibrary = () => {\n setIsLibraryPickerOpen(true);\n };\n const _handleCloseLibraryPicker = () => setIsLibraryPickerOpen(false);\n const _handleSubmitLibraryPicker = (selectedLibraries: LibraryLightFragment[]) => {\n const addedLibraries = selectedLibraries.map(library => ({\n library: {id: library.id, label: library.label},\n settings: {allowMultiplePositions: false, allowedAtRoot: true, allowedChildren: [ALL_CHILDREN_ALLOWED_KEY]},\n }));\n\n const newLibraries = [...libraries, ...addedLibraries];\n _handleLibrariesChange(newLibraries);\n };\n const _handleRemoveLibrary = (libraryId: string) => () => {\n const newLibraries = libraries.filter(library => library.library.id !== libraryId);\n _handleLibrariesChange(newLibraries);\n };\n\n const _handleSwitchChange = (libraryId: string, field: string) => (checked: boolean) => {\n const newLibraries = libraries.map(library => {\n if (library.library.id === libraryId) {\n return {\n ...library,\n settings: {...library.settings, [field]: checked},\n };\n }\n\n return library;\n });\n\n _handleLibrariesChange(newLibraries);\n };\n\n const _handleAllowedChildrenChange = (libraryId: string, index: number) => (allowedChildren: string[]) => {\n const previousValue =\n libraries.find(library => library.library.id === libraryId)?.settings.allowedChildren ?? [];\n\n let selectedChildren = allowedChildren;\n const didAllowAllChildren = previousValue.includes(ALL_CHILDREN_ALLOWED_KEY);\n const nowAllowAllChildren = allowedChildren.includes(ALL_CHILDREN_ALLOWED_KEY);\n if (!nowAllowAllChildren && didAllowAllChildren) {\n selectedChildren = allowedChildren.filter(child => child !== ALL_CHILDREN_ALLOWED_KEY);\n }\n\n if (nowAllowAllChildren && !didAllowAllChildren) {\n selectedChildren = [ALL_CHILDREN_ALLOWED_KEY];\n }\n\n const newLibraries = libraries.map(library => {\n if (library.library.id === libraryId) {\n return {\n ...library,\n settings: {...library.settings, allowedChildren: selectedChildren},\n };\n }\n\n return library;\n });\n\n _handleLibrariesChange(newLibraries);\n form.setFieldValue(['libraries', index, 'settings', 'allowedChildren'], selectedChildren);\n };\n\n const groupLabel = (\n <Space>\n {t('trees.linked_libraries')}\n {extra}\n </Space>\n );\n\n const renderListItem = (item: TreeDetailsFragment['libraries'][number], index: number) => {\n const itemIdentity: IEntityData = {\n label: localizedTranslation(item.library.label, lang),\n subLabel: item.library.id,\n color: null,\n preview: null,\n };\n\n const allowedChildrenOptions = [\n {key: ALL_CHILDREN_ALLOWED_KEY, value: ALL_CHILDREN_ALLOWED_KEY, label: t('trees.all_children_allowed')},\n {\n key: 'libraries',\n label: t('trees.libraries'),\n options: libraries.map(library => ({\n key: library.library.id,\n value: library.library.id,\n label: localizedTranslation(library.library.label, lang),\n disabled: form\n .getFieldValue(['libraries', index, 'settings', 'allowedChildren'])\n .includes(ALL_CHILDREN_ALLOWED_KEY),\n })),\n },\n ];\n\n const collapseItems: ComponentProps<typeof Collapse>['items'] = [\n {\n key: 'settings',\n label: t('trees.advanced_settings'),\n children: (\n <>\n <ListItemPart>\n <Form.Item\n name={['libraries', index, 'settings', 'allowMultiplePositions']}\n label={t('trees.allowed_multiple_positions')}\n valuePropName=\"checked\"\n style={{margin: 0}}\n >\n <Switch\n disabled={readOnly}\n onChange={_handleSwitchChange(item.library.id, 'allowMultiplePositions')}\n />\n </Form.Item>\n <Form.Item\n name={['libraries', index, 'settings', 'allowedAtRoot']}\n label={t('trees.allowed_at_root')}\n valuePropName=\"checked\"\n style={{margin: 0}}\n >\n <Switch\n disabled={readOnly}\n onChange={_handleSwitchChange(item.library.id, 'allowedAtRoot')}\n />\n </Form.Item>\n </ListItemPart>\n <ListItemPart>\n <Form.Item\n name={['libraries', index, 'settings', 'allowedChildren']}\n label={t('trees.allowed_children')}\n style={{margin: 0}}\n >\n <Select\n options={allowedChildrenOptions}\n onChange={_handleAllowedChildrenChange(item.library.id, index)}\n placeholder={t('trees.no_children_allowed')}\n mode=\"multiple\"\n allowClear\n disabled={readOnly}\n style={{minWidth: '15rem'}}\n aria-label=\"\"\n />\n </Form.Item>\n </ListItemPart>\n </>\n ),\n },\n ];\n\n return (\n <List.Item style={{flexDirection: 'column', padding: '5px 1rem'}}>\n <ListItemPart style={{justifyContent: 'space-between'}}>\n <EntityCard entity={itemIdentity} size={PreviewSize.SMALL} />\n {!readOnly && (\n <RemoveButton\n role=\"button\"\n aria-label=\"delete-library\"\n onClick={_handleRemoveLibrary(item.library.id)}\n />\n )}\n </ListItemPart>\n <Collapse size=\"small\" style={{width: '100%', margin: '0.5rem'}} items={collapseItems} />\n </List.Item>\n );\n };\n\n const listFooter = !readOnly ? (\n <Button icon={<PlusOutlined />} style={{border: 'none', boxShadow: 'none'}} onClick={_handleAddLibrary}>\n {t('trees.add_libraries')}\n </Button>\n ) : null;\n const selectedLibraries = libraries.map(library => library.library.id);\n\n return (\n <>\n <FieldsGroup label={groupLabel} style={{padding: 0}}>\n <List\n dataSource={libraries}\n renderItem={renderListItem}\n footer={listFooter}\n locale={{emptyText: t('trees.no_linked_libraries')}}\n style={{padding: 0}}\n />\n </FieldsGroup>\n {isLibraryPickerOpen && (\n <LibraryPicker\n onClose={_handleCloseLibraryPicker}\n open={isLibraryPickerOpen}\n onSubmit={_handleSubmitLibraryPicker}\n multiple\n selected={selectedLibraries}\n showSelected={false}\n />\n )}\n </>\n );\n}\n\nexport default TreeLibrariesForm;\n"]}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { localizedTranslation } from '@leav/utils';
3
3
  import { useExplorerLibraryDetailsQuery, useExplorerLinkAttributeQuery } from '../../_gqlTypes';
4
- import useLang from '../../hooks/useLang';
4
+ import useLang from '../../hooks/useLang/useLang';
5
5
  import { AntSkeleton } from 'aristid-ds';
6
6
  // TODO: use <h1 /> tag
7
7
  export const ExplorerTitle = ({ title, library, entrypoint }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ExplorerTitle.js","sourceRoot":"","sources":["../../../src/components/Explorer/ExplorerTitle.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,8BAA8B,EAAE,6BAA6B,EAAC,MAAM,eAAe,CAAC;AAC5F,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AAUvC,uBAAuB;AACvB,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAC,EAAE,EAAE;IAClG,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAC,GAAG,8BAA8B,CAAC,EAAC,SAAS,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;IAChH,MAAM,EACF,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,cAAc,GACxB,GAAG,6BAA6B,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM;QAC3C,SAAS,EAAE;YACP,EAAE,EAAG,UAA8B,CAAC,eAAe;SACtD;KACJ,CAAC,CAAC;IAEH,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IAEzB,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,yBAAO,KAAK,GAAQ,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAC9B,OAAO,KAAC,WAAW,CAAC,KAAK,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,GAAG,EAAC,EAAE,MAAM,SAAG,CAAC;IAC7D,CAAC;IAED,wCAAwC;IACxC,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;QAC1B,OAAO,yBAAO,KAAK,EAAE,OAAO,IAAI,cAAc,EAAE,OAAO,GAAQ,CAAC;IACpE,CAAC;IAED,IAAI,KAAK,CAAC;IAEV,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE7C,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,qBAAqB;YACrB,OAAO,6CAA4B,CAAC;QACxC,CAAC;QAED,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAC9B,CAAC;SAAM,CAAC;QACJ,MAAM,iBAAiB,GAAG,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE7D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrB,OAAO,oDAAmC,CAAC;QAC/C,CAAC;QAED,KAAK,GAAG,OAAO,IAAI,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,CAAC;IAED,OAAO,yBAAO,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,GAAQ,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {useExplorerLibraryDetailsQuery, useExplorerLinkAttributeQuery} from '_ui/_gqlTypes';\nimport useLang from '_ui/hooks/useLang';\nimport {AntSkeleton} from 'aristid-ds';\nimport {type FunctionComponent} from 'react';\nimport {type Entrypoint, type IEntrypointLink} from './_types';\n\ninterface IExplorerTitleProps {\n title?: string;\n library: string;\n entrypoint: Entrypoint;\n}\n\n// TODO: use <h1 /> tag\nexport const ExplorerTitle: FunctionComponent<IExplorerTitleProps> = ({title, library, entrypoint}) => {\n const {data, loading, error} = useExplorerLibraryDetailsQuery({variables: {libraryId: library}, skip: !!title});\n const {\n data: attributeData,\n loading: attributeLoading,\n error: attributeError,\n } = useExplorerLinkAttributeQuery({\n skip: !!title || entrypoint.type !== 'link',\n variables: {\n id: (entrypoint as IEntrypointLink).linkAttributeId,\n },\n });\n\n const {lang} = useLang();\n\n if (title) {\n return <span>{title}</span>;\n }\n\n if (loading || attributeLoading) {\n return <AntSkeleton.Input style={{width: 400}} active />;\n }\n\n // TODO: handle error and bad library ID\n if (error || attributeError) {\n return <span>{error?.message ?? attributeError?.message}</span>;\n }\n\n let label;\n\n if (entrypoint.type === 'library') {\n const libraryData = data?.libraries?.list[0];\n\n if (!libraryData) {\n // TODO: make it i18n\n return <span>Unknown library</span>;\n }\n\n label = libraryData.label;\n } else {\n const linkAttributeData = attributeData?.attributes?.list[0];\n\n if (!linkAttributeData) {\n return <span>Unknown link attribute</span>;\n }\n\n label = 'label' in linkAttributeData ? linkAttributeData.label : null;\n }\n\n return <span>{localizedTranslation(label, lang)}</span>;\n};\n"]}
1
+ {"version":3,"file":"ExplorerTitle.js","sourceRoot":"","sources":["../../../src/components/Explorer/ExplorerTitle.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,8BAA8B,EAAE,6BAA6B,EAAC,MAAM,eAAe,CAAC;AAC5F,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AAUvC,uBAAuB;AACvB,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAC,EAAE,EAAE;IAClG,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAC,GAAG,8BAA8B,CAAC,EAAC,SAAS,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;IAChH,MAAM,EACF,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,gBAAgB,EACzB,KAAK,EAAE,cAAc,GACxB,GAAG,6BAA6B,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM;QAC3C,SAAS,EAAE;YACP,EAAE,EAAG,UAA8B,CAAC,eAAe;SACtD;KACJ,CAAC,CAAC;IAEH,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IAEzB,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,yBAAO,KAAK,GAAQ,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAC9B,OAAO,KAAC,WAAW,CAAC,KAAK,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,GAAG,EAAC,EAAE,MAAM,SAAG,CAAC;IAC7D,CAAC;IAED,wCAAwC;IACxC,IAAI,KAAK,IAAI,cAAc,EAAE,CAAC;QAC1B,OAAO,yBAAO,KAAK,EAAE,OAAO,IAAI,cAAc,EAAE,OAAO,GAAQ,CAAC;IACpE,CAAC;IAED,IAAI,KAAK,CAAC;IAEV,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,WAAW,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE7C,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,qBAAqB;YACrB,OAAO,6CAA4B,CAAC;QACxC,CAAC;QAED,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;IAC9B,CAAC;SAAM,CAAC;QACJ,MAAM,iBAAiB,GAAG,aAAa,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QAE7D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACrB,OAAO,oDAAmC,CAAC;QAC/C,CAAC;QAED,KAAK,GAAG,OAAO,IAAI,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1E,CAAC;IAED,OAAO,yBAAO,oBAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,GAAQ,CAAC;AAC5D,CAAC,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {useExplorerLibraryDetailsQuery, useExplorerLinkAttributeQuery} from '_ui/_gqlTypes';\nimport useLang from '_ui/hooks/useLang/useLang';\nimport {AntSkeleton} from 'aristid-ds';\nimport {type FunctionComponent} from 'react';\nimport {type Entrypoint, type IEntrypointLink} from './_types';\n\ninterface IExplorerTitleProps {\n title?: string;\n library: string;\n entrypoint: Entrypoint;\n}\n\n// TODO: use <h1 /> tag\nexport const ExplorerTitle: FunctionComponent<IExplorerTitleProps> = ({title, library, entrypoint}) => {\n const {data, loading, error} = useExplorerLibraryDetailsQuery({variables: {libraryId: library}, skip: !!title});\n const {\n data: attributeData,\n loading: attributeLoading,\n error: attributeError,\n } = useExplorerLinkAttributeQuery({\n skip: !!title || entrypoint.type !== 'link',\n variables: {\n id: (entrypoint as IEntrypointLink).linkAttributeId,\n },\n });\n\n const {lang} = useLang();\n\n if (title) {\n return <span>{title}</span>;\n }\n\n if (loading || attributeLoading) {\n return <AntSkeleton.Input style={{width: 400}} active />;\n }\n\n // TODO: handle error and bad library ID\n if (error || attributeError) {\n return <span>{error?.message ?? attributeError?.message}</span>;\n }\n\n let label;\n\n if (entrypoint.type === 'library') {\n const libraryData = data?.libraries?.list[0];\n\n if (!libraryData) {\n // TODO: make it i18n\n return <span>Unknown library</span>;\n }\n\n label = libraryData.label;\n } else {\n const linkAttributeData = attributeData?.attributes?.list[0];\n\n if (!linkAttributeData) {\n return <span>Unknown link attribute</span>;\n }\n\n label = 'label' in linkAttributeData ? linkAttributeData.label : null;\n }\n\n return <span>{localizedTranslation(label, lang)}</span>;\n};\n"]}
@@ -4,7 +4,6 @@ import { cloneElement, useRef } from 'react';
4
4
  import { KitButton, KitDropDown, KitTooltip } from 'aristid-ds';
5
5
  import styled from 'styled-components';
6
6
  import { useSharedTranslation } from '../../hooks/useSharedTranslation';
7
- import { TOOLTIP_DEFAULT_DELAY_IN_SECONDS } from '../../constants';
8
7
  import { faEllipsisH } from '@fortawesome/free-solid-svg-icons';
9
8
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
10
9
  const StyledTableNameCellContainer = styled.div `
@@ -44,7 +43,7 @@ export const TableNameCell = ({ item, itemActions }) => {
44
43
  const disabledButton = useItemDeletePermission
45
44
  ? !item.canDelete
46
45
  : resolveItemActionProp(item, disabled);
47
- return (_jsx(KitTooltip, { title: resolveItemActionProp(item, label), mouseEnterDelay: TOOLTIP_DEFAULT_DELAY_IN_SECONDS, children: _jsx(KitButton, { size: "m", "aria-label": resolveItemActionProp(item, label), icon: resolveItemActionProp(item, icon), onClick: event => _handleButtonClick(event, callback), danger: resolveItemActionProp(item, isDanger), disabled: disabledButton }) }, actionIndex));
46
+ return (_jsx(KitTooltip, { title: resolveItemActionProp(item, label), children: _jsx(KitButton, { size: "m", "aria-label": resolveItemActionProp(item, label), icon: resolveItemActionProp(item, icon), onClick: event => _handleButtonClick(event, callback), danger: resolveItemActionProp(item, isDanger), disabled: disabledButton }) }, actionIndex));
48
47
  }), isMoreThanThreeActions && (_jsx(KitDropDown, { placement: "bottomRight", getPopupContainer: () => containerRef.current || document.body, destroyPopupOnHide: true, menu: {
49
48
  items: itemActionsWithCallback
50
49
  .slice(2)
@@ -60,6 +59,6 @@ export const TableNameCell = ({ item, itemActions }) => {
60
59
  : null, // TODO: find better tuning
61
60
  onClick: callback,
62
61
  })),
63
- }, children: _jsx(KitTooltip, { title: t('explorer.more-actions'), mouseEnterDelay: TOOLTIP_DEFAULT_DELAY_IN_SECONDS, children: _jsx(KitButton, { size: "m", "aria-label": t('explorer.more-actions') ?? undefined, icon: _jsx(FontAwesomeIcon, { icon: faEllipsisH }), onClick: event => event.stopPropagation() }) }) }))] })] }));
62
+ }, children: _jsx(KitTooltip, { title: t('explorer.more-actions'), children: _jsx(KitButton, { size: "m", "aria-label": t('explorer.more-actions') ?? undefined, icon: _jsx(FontAwesomeIcon, { icon: faEllipsisH }), onClick: event => event.stopPropagation() }) }) }))] })] }));
64
63
  };
65
64
  //# sourceMappingURL=TableNameCell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TableNameCell.js","sourceRoot":"","sources":["../../../src/components/Explorer/TableNameCell.tsx"],"names":[],"mappings":"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","sourcesContent":["import {IdCard} from './IdCard';\nimport {type IItemAction, type IItemData} from './_types';\nimport {cloneElement, useRef} from 'react';\nimport {KitButton, KitDropDown, KitTooltip} from 'aristid-ds';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {TOOLTIP_DEFAULT_DELAY_IN_SECONDS} from '_ui/constants';\nimport {faEllipsisH} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\n\nconst StyledTableNameCellContainer = styled.div`\n position: relative;\n display: inline-flex;\n align-items: center;\n width: 100%;\n`;\n\nconst StyledActionsList = styled.div`\n /* Action are displayed when the user hover the table row (CSS in DataView.tsx) */\n display: none;\n gap: calc(var(--general-spacing-xxs) * 1px);\n transition:\n display 0.2s ease-in-out,\n align-items: center;\n justify-content: center;\n margin-left: calc(var(--general-spacing-xs) * 1px);\n`;\n\ntype ResolvedItemActionProp<T> = T extends (item: IItemData) => infer R ? R : T;\n\nconst resolveItemActionProp = <T extends IItemAction[keyof IItemAction]>(\n itemData: IItemData,\n itemActionProp: T,\n): ResolvedItemActionProp<T> =>\n (typeof itemActionProp === 'function' ? itemActionProp(itemData) : itemActionProp) as ResolvedItemActionProp<T>;\n\ninterface ITableNameCellProps {\n item: IItemData;\n itemActions: IItemAction[];\n}\n\nexport const TableNameCell = ({item, itemActions}: ITableNameCellProps) => {\n const {t} = useSharedTranslation();\n const containerRef = useRef<HTMLDivElement>(null);\n\n const itemActionsWithCallback = itemActions.map(action => ({\n ...action,\n callback: () => action.callback(item),\n }));\n\n const isMoreThanThreeActions = itemActionsWithCallback.length > 3;\n\n const itemsActionsWithCallbackToDisplay = isMoreThanThreeActions\n ? itemActionsWithCallback.slice(0, 2)\n : itemActionsWithCallback;\n\n const _handleButtonClick = (event: MouseEvent, callback: () => void) => {\n // Stop event propagation to avoid the row click event to be triggered\n event.stopPropagation();\n callback();\n };\n\n return (\n <StyledTableNameCellContainer ref={containerRef}>\n <IdCard item={item.whoAmI} />\n <StyledActionsList className=\"actions-list\">\n {itemsActionsWithCallbackToDisplay.map(\n ({label, icon, isDanger, callback, disabled, useItemDeletePermission}, actionIndex) => {\n const disabledButton = useItemDeletePermission\n ? !item.canDelete\n : resolveItemActionProp(item, disabled);\n\n return (\n <KitTooltip\n key={actionIndex}\n title={resolveItemActionProp(item, label)}\n mouseEnterDelay={TOOLTIP_DEFAULT_DELAY_IN_SECONDS}\n >\n <KitButton\n size=\"m\"\n aria-label={resolveItemActionProp(item, label)}\n icon={resolveItemActionProp(item, icon)}\n onClick={event => _handleButtonClick(event, callback)}\n danger={resolveItemActionProp(item, isDanger)}\n disabled={disabledButton}\n />\n </KitTooltip>\n );\n },\n )}\n {isMoreThanThreeActions && (\n <KitDropDown\n placement=\"bottomRight\"\n getPopupContainer={() => containerRef.current || document.body}\n destroyPopupOnHide={true}\n menu={{\n items: itemActionsWithCallback\n .slice(2)\n .map(({callback, icon, label, isDanger, disabled}) => ({\n key: resolveItemActionProp(item, label),\n danger: resolveItemActionProp(item, isDanger),\n disabled: resolveItemActionProp(item, disabled),\n label: resolveItemActionProp(item, label),\n icon: icon\n ? cloneElement(resolveItemActionProp(item, icon), {\n size: '2em',\n })\n : null, // TODO: find better tuning\n onClick: callback,\n })),\n }}\n >\n <KitTooltip\n title={t('explorer.more-actions')}\n mouseEnterDelay={TOOLTIP_DEFAULT_DELAY_IN_SECONDS}\n >\n <KitButton\n size=\"m\"\n aria-label={t('explorer.more-actions') ?? undefined}\n icon={<FontAwesomeIcon icon={faEllipsisH} />}\n onClick={event => event.stopPropagation()}\n />\n </KitTooltip>\n </KitDropDown>\n )}\n </StyledActionsList>\n </StyledTableNameCellContainer>\n );\n};\n"]}
1
+ {"version":3,"file":"TableNameCell.js","sourceRoot":"","sources":["../../../src/components/Explorer/TableNameCell.tsx"],"names":[],"mappings":"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","sourcesContent":["import {IdCard} from './IdCard';\nimport {type IItemAction, type IItemData} from './_types';\nimport {cloneElement, useRef} from 'react';\nimport {KitButton, KitDropDown, KitTooltip} from 'aristid-ds';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {faEllipsisH} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\n\nconst StyledTableNameCellContainer = styled.div`\n position: relative;\n display: inline-flex;\n align-items: center;\n width: 100%;\n`;\n\nconst StyledActionsList = styled.div`\n /* Action are displayed when the user hover the table row (CSS in DataView.tsx) */\n display: none;\n gap: calc(var(--general-spacing-xxs) * 1px);\n transition:\n display 0.2s ease-in-out,\n align-items: center;\n justify-content: center;\n margin-left: calc(var(--general-spacing-xs) * 1px);\n`;\n\ntype ResolvedItemActionProp<T> = T extends (item: IItemData) => infer R ? R : T;\n\nconst resolveItemActionProp = <T extends IItemAction[keyof IItemAction]>(\n itemData: IItemData,\n itemActionProp: T,\n): ResolvedItemActionProp<T> =>\n (typeof itemActionProp === 'function' ? itemActionProp(itemData) : itemActionProp) as ResolvedItemActionProp<T>;\n\ninterface ITableNameCellProps {\n item: IItemData;\n itemActions: IItemAction[];\n}\n\nexport const TableNameCell = ({item, itemActions}: ITableNameCellProps) => {\n const {t} = useSharedTranslation();\n const containerRef = useRef<HTMLDivElement>(null);\n\n const itemActionsWithCallback = itemActions.map(action => ({\n ...action,\n callback: () => action.callback(item),\n }));\n\n const isMoreThanThreeActions = itemActionsWithCallback.length > 3;\n\n const itemsActionsWithCallbackToDisplay = isMoreThanThreeActions\n ? itemActionsWithCallback.slice(0, 2)\n : itemActionsWithCallback;\n\n const _handleButtonClick = (event: MouseEvent, callback: () => void) => {\n // Stop event propagation to avoid the row click event to be triggered\n event.stopPropagation();\n callback();\n };\n\n return (\n <StyledTableNameCellContainer ref={containerRef}>\n <IdCard item={item.whoAmI} />\n <StyledActionsList className=\"actions-list\">\n {itemsActionsWithCallbackToDisplay.map(\n ({label, icon, isDanger, callback, disabled, useItemDeletePermission}, actionIndex) => {\n const disabledButton = useItemDeletePermission\n ? !item.canDelete\n : resolveItemActionProp(item, disabled);\n\n return (\n <KitTooltip key={actionIndex} title={resolveItemActionProp(item, label)}>\n <KitButton\n size=\"m\"\n aria-label={resolveItemActionProp(item, label)}\n icon={resolveItemActionProp(item, icon)}\n onClick={event => _handleButtonClick(event, callback)}\n danger={resolveItemActionProp(item, isDanger)}\n disabled={disabledButton}\n />\n </KitTooltip>\n );\n },\n )}\n {isMoreThanThreeActions && (\n <KitDropDown\n placement=\"bottomRight\"\n getPopupContainer={() => containerRef.current || document.body}\n destroyPopupOnHide={true}\n menu={{\n items: itemActionsWithCallback\n .slice(2)\n .map(({callback, icon, label, isDanger, disabled}) => ({\n key: resolveItemActionProp(item, label),\n danger: resolveItemActionProp(item, isDanger),\n disabled: resolveItemActionProp(item, disabled),\n label: resolveItemActionProp(item, label),\n icon: icon\n ? cloneElement(resolveItemActionProp(item, icon), {\n size: '2em',\n })\n : null, // TODO: find better tuning\n onClick: callback,\n })),\n }}\n >\n <KitTooltip title={t('explorer.more-actions')}>\n <KitButton\n size=\"m\"\n aria-label={t('explorer.more-actions') ?? undefined}\n icon={<FontAwesomeIcon icon={faEllipsisH} />}\n onClick={event => event.stopPropagation()}\n />\n </KitTooltip>\n </KitDropDown>\n )}\n </StyledActionsList>\n </StyledTableNameCellContainer>\n );\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useMemo } from 'react';
3
- import { useConfirmModal } from '../../../hooks/useConfirmModal';
3
+ import { useConfirmModal } from '../../../hooks/useConfirmModal/useConfirmModal';
4
4
  import { useActivateRecordsMutation, useDeactivateRecordsMutation, useDeleteValueMutation, } from '../../../_gqlTypes';
5
5
  import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
6
6
  import { useValuesCacheUpdate } from '../../../hooks/useValuesCacheUpdate';
@@ -1 +1 @@
1
- {"version":3,"file":"useEditStatusItemAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-item/useEditStatusItemAction.tsx"],"names":[],"mappings":"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","sourcesContent":["import {type Dispatch, useMemo} from 'react';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal';\nimport {\n type ActivateRecordsMutation,\n type DeactivateRecordsMutation,\n useActivateRecordsMutation,\n useDeactivateRecordsMutation,\n useDeleteValueMutation,\n} from '_ui/_gqlTypes';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useValuesCacheUpdate} from '_ui/hooks/useValuesCacheUpdate';\nimport {type FeatureHook, type Entrypoint, type IEntrypointLink, type IItemAction, type IItemData} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {BREAK_TWO_LINES, ERROR_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION} from '_ui/constants';\nimport {type FetchResult} from '@apollo/client';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash, faTrashRestore} from '@fortawesome/free-solid-svg-icons';\nimport {KitAlert} from 'aristid-ds';\n\n/**\n * Hook used to get the action for `<DataView />` component.\n *\n * When the mutation for removing is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)\n * from removed record.\n *\n * @param isEnabled - whether the action is present\n * @param view - represent the current view\n * @param dispatch - method to change the current view\n * @param entrypoint - represent the current entrypoint\n * @param canDeleteLinkValues - check permission to delete link values\n */\nexport const useEditStatusItemAction = ({\n isEnabled,\n canDeleteLinkValues,\n store: {view, dispatch},\n onRemove,\n entrypoint,\n}: FeatureHook<{\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n canDeleteLinkValues: boolean;\n onRemove?: IItemAction['callback'];\n entrypoint: Entrypoint;\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n const updateValuesCache = useValuesCacheUpdate();\n\n const [deactivateRecordsMutation] = useDeactivateRecordsMutation({\n update(cache, deactivatedRecords) {\n deactivatedRecords.data?.deactivateRecords.forEach(record => {\n cache.evict({\n id: cache.identify(record),\n });\n });\n cache.modify({\n fields: {\n records: prev => ({\n ...prev,\n totalCount: prev.totalCount - 1,\n }),\n },\n broadcast: false,\n });\n cache.gc();\n },\n });\n\n const [activateRecordsMutation] = useActivateRecordsMutation({\n update(cache, activatedRecords) {\n activatedRecords.data?.activateRecords.forEach(record => {\n cache.evict({\n id: cache.identify(record),\n });\n });\n cache.modify({\n fields: {\n records: prev => ({\n ...prev,\n totalCount: prev.totalCount - 1,\n }),\n },\n broadcast: false,\n });\n cache.gc();\n },\n });\n\n const [deleteRecordLinkMutation] = useDeleteValueMutation({\n update: (_, deletedRecord) => {\n const parentRecord = {\n id: (entrypoint as IEntrypointLink).parentRecordId,\n library: {\n id: (entrypoint as IEntrypointLink).parentLibraryId,\n },\n };\n updateValuesCache(parentRecord, deletedRecord.data?.deleteValue ?? []);\n },\n });\n\n const displayAlert = ({type}: {type: 'success' | 'error'}) => {\n KitAlert[type]({\n showIcon: true,\n duration: type === 'success' ? SUCCESS_NOTIFICATION_DURATION : ERROR_NOTIFICATION_DURATION,\n closable: true,\n message: t(`explorer.item_deleted_${type}`),\n description: null,\n });\n };\n\n const _deactivateItem = async (item: IItemData): Promise<FetchResult<DeactivateRecordsMutation>> => {\n const libRes = await deactivateRecordsMutation({\n variables: {\n libraryId: item.libraryId,\n recordsIds: [item.itemId],\n },\n });\n\n if (view.massSelection !== MASS_SELECTION_ALL) {\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: view.massSelection.filter(key => key !== item.itemId),\n });\n }\n\n if ((libRes.data?.deactivateRecords ?? []).length > 0) {\n displayAlert({type: 'success'});\n onRemove?.(item);\n } else {\n displayAlert({type: 'error'});\n }\n return libRes;\n };\n\n const _activateItem = async (item: IItemData): Promise<FetchResult<ActivateRecordsMutation>> => {\n const libRes = await activateRecordsMutation({\n variables: {\n libraryId: item.libraryId,\n recordsIds: [item.itemId],\n },\n });\n\n if (view.massSelection !== MASS_SELECTION_ALL) {\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: view.massSelection.filter(key => key !== item.itemId),\n });\n }\n\n return libRes;\n };\n\n const _editStatusItemAction: IItemAction = useMemo(\n () => ({\n label: (item: IItemData) =>\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate-item')\n : t('explorer.activate-item')\n : t('explorer.delete-item'),\n icon: (item: IItemData) => (\n <FontAwesomeIcon icon={entrypoint.type === 'library' && !item.active ? faTrashRestore : faTrash} />\n ),\n isDanger: true,\n disabled: (item: IItemData) =>\n entrypoint.type === 'link' ? !canDeleteLinkValues : item.active ? !item.canDelete : !item.canActivate,\n callback: item => {\n const {itemId, id_value} = item;\n\n const title =\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate_item_one')\n : t('explorer.activate_item_one')\n : t('explorer.delete_link_one');\n\n const content =\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate_item_description_one')\n : t('explorer.activate_item_description_one')\n : t('explorer.delete_link_description_one');\n\n openConfirmModal({\n title,\n content: content + BREAK_TWO_LINES + t('global.are_you_sure'),\n onOk: async () => {\n switch (entrypoint.type) {\n case 'library':\n if (item.active) {\n return _deactivateItem(item);\n }\n\n return _activateItem(item);\n case 'link':\n const linkRes = await deleteRecordLinkMutation({\n variables: {\n library: entrypoint.parentLibraryId,\n attribute: entrypoint.linkAttributeId,\n recordId: entrypoint.parentRecordId,\n value: {\n payload: itemId,\n id_value,\n },\n },\n });\n onRemove?.(item);\n return linkRes;\n default:\n return;\n }\n },\n });\n },\n }),\n [\n t,\n deactivateRecordsMutation,\n deleteRecordLinkMutation,\n activateRecordsMutation,\n canDeleteLinkValues,\n entrypoint.type,\n view.massSelection,\n dispatch,\n ],\n );\n\n return {\n editStatusItemAction: isEnabled ? _editStatusItemAction : null,\n };\n};\n"]}
1
+ {"version":3,"file":"useEditStatusItemAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-item/useEditStatusItemAction.tsx"],"names":[],"mappings":"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","sourcesContent":["import {type Dispatch, useMemo} from 'react';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal/useConfirmModal';\nimport {\n type ActivateRecordsMutation,\n type DeactivateRecordsMutation,\n useActivateRecordsMutation,\n useDeactivateRecordsMutation,\n useDeleteValueMutation,\n} from '_ui/_gqlTypes';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useValuesCacheUpdate} from '_ui/hooks/useValuesCacheUpdate';\nimport {type FeatureHook, type Entrypoint, type IEntrypointLink, type IItemAction, type IItemData} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {BREAK_TWO_LINES, ERROR_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION} from '_ui/constants';\nimport {type FetchResult} from '@apollo/client';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash, faTrashRestore} from '@fortawesome/free-solid-svg-icons';\nimport {KitAlert} from 'aristid-ds';\n\n/**\n * Hook used to get the action for `<DataView />` component.\n *\n * When the mutation for removing is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)\n * from removed record.\n *\n * @param isEnabled - whether the action is present\n * @param view - represent the current view\n * @param dispatch - method to change the current view\n * @param entrypoint - represent the current entrypoint\n * @param canDeleteLinkValues - check permission to delete link values\n */\nexport const useEditStatusItemAction = ({\n isEnabled,\n canDeleteLinkValues,\n store: {view, dispatch},\n onRemove,\n entrypoint,\n}: FeatureHook<{\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n canDeleteLinkValues: boolean;\n onRemove?: IItemAction['callback'];\n entrypoint: Entrypoint;\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n const updateValuesCache = useValuesCacheUpdate();\n\n const [deactivateRecordsMutation] = useDeactivateRecordsMutation({\n update(cache, deactivatedRecords) {\n deactivatedRecords.data?.deactivateRecords.forEach(record => {\n cache.evict({\n id: cache.identify(record),\n });\n });\n cache.modify({\n fields: {\n records: prev => ({\n ...prev,\n totalCount: prev.totalCount - 1,\n }),\n },\n broadcast: false,\n });\n cache.gc();\n },\n });\n\n const [activateRecordsMutation] = useActivateRecordsMutation({\n update(cache, activatedRecords) {\n activatedRecords.data?.activateRecords.forEach(record => {\n cache.evict({\n id: cache.identify(record),\n });\n });\n cache.modify({\n fields: {\n records: prev => ({\n ...prev,\n totalCount: prev.totalCount - 1,\n }),\n },\n broadcast: false,\n });\n cache.gc();\n },\n });\n\n const [deleteRecordLinkMutation] = useDeleteValueMutation({\n update: (_, deletedRecord) => {\n const parentRecord = {\n id: (entrypoint as IEntrypointLink).parentRecordId,\n library: {\n id: (entrypoint as IEntrypointLink).parentLibraryId,\n },\n };\n updateValuesCache(parentRecord, deletedRecord.data?.deleteValue ?? []);\n },\n });\n\n const displayAlert = ({type}: {type: 'success' | 'error'}) => {\n KitAlert[type]({\n showIcon: true,\n duration: type === 'success' ? SUCCESS_NOTIFICATION_DURATION : ERROR_NOTIFICATION_DURATION,\n closable: true,\n message: t(`explorer.item_deleted_${type}`),\n description: null,\n });\n };\n\n const _deactivateItem = async (item: IItemData): Promise<FetchResult<DeactivateRecordsMutation>> => {\n const libRes = await deactivateRecordsMutation({\n variables: {\n libraryId: item.libraryId,\n recordsIds: [item.itemId],\n },\n });\n\n if (view.massSelection !== MASS_SELECTION_ALL) {\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: view.massSelection.filter(key => key !== item.itemId),\n });\n }\n\n if ((libRes.data?.deactivateRecords ?? []).length > 0) {\n displayAlert({type: 'success'});\n onRemove?.(item);\n } else {\n displayAlert({type: 'error'});\n }\n return libRes;\n };\n\n const _activateItem = async (item: IItemData): Promise<FetchResult<ActivateRecordsMutation>> => {\n const libRes = await activateRecordsMutation({\n variables: {\n libraryId: item.libraryId,\n recordsIds: [item.itemId],\n },\n });\n\n if (view.massSelection !== MASS_SELECTION_ALL) {\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: view.massSelection.filter(key => key !== item.itemId),\n });\n }\n\n return libRes;\n };\n\n const _editStatusItemAction: IItemAction = useMemo(\n () => ({\n label: (item: IItemData) =>\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate-item')\n : t('explorer.activate-item')\n : t('explorer.delete-item'),\n icon: (item: IItemData) => (\n <FontAwesomeIcon icon={entrypoint.type === 'library' && !item.active ? faTrashRestore : faTrash} />\n ),\n isDanger: true,\n disabled: (item: IItemData) =>\n entrypoint.type === 'link' ? !canDeleteLinkValues : item.active ? !item.canDelete : !item.canActivate,\n callback: item => {\n const {itemId, id_value} = item;\n\n const title =\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate_item_one')\n : t('explorer.activate_item_one')\n : t('explorer.delete_link_one');\n\n const content =\n entrypoint.type === 'library'\n ? item.active\n ? t('explorer.deactivate_item_description_one')\n : t('explorer.activate_item_description_one')\n : t('explorer.delete_link_description_one');\n\n openConfirmModal({\n title,\n content: content + BREAK_TWO_LINES + t('global.are_you_sure'),\n onOk: async () => {\n switch (entrypoint.type) {\n case 'library':\n if (item.active) {\n return _deactivateItem(item);\n }\n\n return _activateItem(item);\n case 'link':\n const linkRes = await deleteRecordLinkMutation({\n variables: {\n library: entrypoint.parentLibraryId,\n attribute: entrypoint.linkAttributeId,\n recordId: entrypoint.parentRecordId,\n value: {\n payload: itemId,\n id_value,\n },\n },\n });\n onRemove?.(item);\n return linkRes;\n default:\n return;\n }\n },\n });\n },\n }),\n [\n t,\n deactivateRecordsMutation,\n deleteRecordLinkMutation,\n activateRecordsMutation,\n canDeleteLinkValues,\n entrypoint.type,\n view.massSelection,\n dispatch,\n ],\n );\n\n return {\n editStatusItemAction: isEnabled ? _editStatusItemAction : null,\n };\n};\n"]}
@@ -3,7 +3,7 @@ import { useMemo } from 'react';
3
3
  import { KitAlert } from 'aristid-ds';
4
4
  import { useDeactivateRecordsMutation } from '../../../_gqlTypes';
5
5
  import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
6
- import { useConfirmModal } from '../../../hooks/useConfirmModal';
6
+ import { useConfirmModal } from '../../../hooks/useConfirmModal/useConfirmModal';
7
7
  import { ViewSettingsActionTypes } from '../manage-view-settings';
8
8
  import { MASS_SELECTION_ALL } from '../_constants';
9
9
  import { SUCCESS_ALERT_DURATION, BREAK_TWO_LINES } from '../../../constants';
@@ -1 +1 @@
1
- {"version":3,"file":"useDeactivateMassAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeactivateMassAction.tsx"],"names":[],"mappings":"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","sourcesContent":["import {type Dispatch, useMemo} from 'react';\nimport {KitAlert} from 'aristid-ds';\nimport {useDeactivateRecordsMutation} from '_ui/_gqlTypes';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal';\nimport {type FeatureHook, type IMassActions} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {type useExplorerData} from '../_queries/useExplorerData';\nimport {SUCCESS_ALERT_DURATION, BREAK_TWO_LINES} from '_ui/constants';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash} from '@fortawesome/free-solid-svg-icons';\n\n/**\n * Hook used to get the action for mass actions only available on selection.\n *\n * When the mutation for deactivation is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)\n * from deactivated record.\n *\n * @param isEnabled - whether the action is present\n * @param view - represent the current view\n * @param dispatch - method to change the current view\n * @param libraryId - concerned library\n * @param allVisibleKeys - list of all visible keys used to know if we need to change page\n * @param refetch - method to get fresh data when we delete last page\n */\nexport const useDeactivateMassAction = ({\n isEnabled,\n store: {view, dispatch},\n allVisibleKeys,\n totalCount,\n onDeactivate,\n refetch,\n}: FeatureHook<{\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n allVisibleKeys: string[];\n totalCount: number;\n onDeactivate?: IMassActions['callback'];\n refetch: ReturnType<typeof useExplorerData>['refetch'];\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const [deactivateRecordsMutation] = useDeactivateRecordsMutation();\n\n const _deactivateMassAction: IMassActions = useMemo(\n () => ({\n label: t('explorer.massAction.deactivate'),\n icon: <FontAwesomeIcon icon={faTrash} />,\n deselectAll: true,\n callback: massSelectionFilter => {\n openConfirmModal({\n title:\n t('explorer.deactivate_item', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) ?? undefined,\n content:\n t('explorer.deactivate_item_description', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) +\n BREAK_TWO_LINES +\n t('global.are_you_sure'),\n onOk: async () => {\n const {data} = await deactivateRecordsMutation({\n variables: {\n libraryId: view.libraryId,\n filters: massSelectionFilter,\n },\n });\n const total =\n view.massSelection === MASS_SELECTION_ALL ? totalCount : view.massSelection.length;\n KitAlert.success({\n showIcon: true,\n duration: SUCCESS_ALERT_DURATION,\n message: t('explorer.massAction.deactivate_message'),\n description: t('explorer.massAction.deactivate_description', {\n count: data?.deactivateRecords.length,\n total,\n }),\n closable: true,\n });\n if (\n view.massSelection === MASS_SELECTION_ALL ||\n allVisibleKeys.every(key => view.massSelection.includes(key))\n ) {\n await refetch({\n pagination: {\n limit: view.pageSize,\n offset: 0,\n },\n });\n } else {\n await refetch();\n }\n onDeactivate?.(massSelectionFilter, view.massSelection);\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: [],\n });\n },\n });\n },\n }),\n [t, deactivateRecordsMutation, view.massSelection, dispatch, view.libraryId, allVisibleKeys, refetch],\n );\n\n return {\n deactivateMassAction: isEnabled ? _deactivateMassAction : null,\n };\n};\n"]}
1
+ {"version":3,"file":"useDeactivateMassAction.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeactivateMassAction.tsx"],"names":[],"mappings":"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","sourcesContent":["import {type Dispatch, useMemo} from 'react';\nimport {KitAlert} from 'aristid-ds';\nimport {useDeactivateRecordsMutation} from '_ui/_gqlTypes';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal/useConfirmModal';\nimport {type FeatureHook, type IMassActions} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {type useExplorerData} from '../_queries/useExplorerData';\nimport {SUCCESS_ALERT_DURATION, BREAK_TWO_LINES} from '_ui/constants';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash} from '@fortawesome/free-solid-svg-icons';\n\n/**\n * Hook used to get the action for mass actions only available on selection.\n *\n * When the mutation for deactivation is done, the Apollo cache will be clean (`Record` and `RecordIdentity`)\n * from deactivated record.\n *\n * @param isEnabled - whether the action is present\n * @param view - represent the current view\n * @param dispatch - method to change the current view\n * @param libraryId - concerned library\n * @param allVisibleKeys - list of all visible keys used to know if we need to change page\n * @param refetch - method to get fresh data when we delete last page\n */\nexport const useDeactivateMassAction = ({\n isEnabled,\n store: {view, dispatch},\n allVisibleKeys,\n totalCount,\n onDeactivate,\n refetch,\n}: FeatureHook<{\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n allVisibleKeys: string[];\n totalCount: number;\n onDeactivate?: IMassActions['callback'];\n refetch: ReturnType<typeof useExplorerData>['refetch'];\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const [deactivateRecordsMutation] = useDeactivateRecordsMutation();\n\n const _deactivateMassAction: IMassActions = useMemo(\n () => ({\n label: t('explorer.massAction.deactivate'),\n icon: <FontAwesomeIcon icon={faTrash} />,\n deselectAll: true,\n callback: massSelectionFilter => {\n openConfirmModal({\n title:\n t('explorer.deactivate_item', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) ?? undefined,\n content:\n t('explorer.deactivate_item_description', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) +\n BREAK_TWO_LINES +\n t('global.are_you_sure'),\n onOk: async () => {\n const {data} = await deactivateRecordsMutation({\n variables: {\n libraryId: view.libraryId,\n filters: massSelectionFilter,\n },\n });\n const total =\n view.massSelection === MASS_SELECTION_ALL ? totalCount : view.massSelection.length;\n KitAlert.success({\n showIcon: true,\n duration: SUCCESS_ALERT_DURATION,\n message: t('explorer.massAction.deactivate_message'),\n description: t('explorer.massAction.deactivate_description', {\n count: data?.deactivateRecords.length,\n total,\n }),\n closable: true,\n });\n if (\n view.massSelection === MASS_SELECTION_ALL ||\n allVisibleKeys.every(key => view.massSelection.includes(key))\n ) {\n await refetch({\n pagination: {\n limit: view.pageSize,\n offset: 0,\n },\n });\n } else {\n await refetch();\n }\n onDeactivate?.(massSelectionFilter, view.massSelection);\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: [],\n });\n },\n });\n },\n }),\n [t, deactivateRecordsMutation, view.massSelection, dispatch, view.libraryId, allVisibleKeys, refetch],\n );\n\n return {\n deactivateMassAction: isEnabled ? _deactivateMassAction : null,\n };\n};\n"]}
@@ -4,7 +4,7 @@ import { ViewSettingsActionTypes } from '../manage-view-settings';
4
4
  import { useMemo } from 'react';
5
5
  import { useExplorerData } from '../_queries/useExplorerData';
6
6
  import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
7
- import { useConfirmModal } from '../../../hooks/useConfirmModal';
7
+ import { useConfirmModal } from '../../../hooks/useConfirmModal/useConfirmModal';
8
8
  import { MASS_SELECTION_ALL } from '../_constants';
9
9
  import { BREAK_TWO_LINES } from '../../../constants';
10
10
  import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
@@ -1 +1 @@
1
- {"version":3,"file":"useDeleteLinkValues.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeleteLinkValues.tsx"],"names":[],"mappings":";AAAA,OAAO,yBAAyB,MAAM,uFAAuF,CAAC;AAE9H,OAAO,EAAoD,uBAAuB,EAAC,MAAM,yBAAyB,CAAC;AACnH,OAAO,EAA0B,OAAO,EAAC,MAAM,OAAO,CAAC;AACvD,OAAO,EAAC,eAAe,EAAC,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,eAAe,CAAC;AACjD,OAAO,EAAC,eAAe,EAAC,MAAM,eAAe,CAAC;AAG9C,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,OAAO,EAAC,MAAM,mCAAmC,CAAC;AAE1D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAChC,SAAS,EACT,KAAK,EAAE,EAAC,IAAI,EAAE,QAAQ,EAAC,EACvB,YAAY,EAAE,EAAC,OAAO,EAAE,eAAe,EAAC,EACxC,UAAU,EACV,cAAc,EACd,QAAQ,EACR,OAAO,GAWT,EAAE,EAAE;IACF,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,gBAAgB,EAAC,GAAG,eAAe,EAAE,CAAC;IAC7C,MAAM,EAAC,UAAU,EAAC,GAAG,yBAAyB,EAAE,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,MAAM,CAAC;IAC/C,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAE,0BAA0B,EAAE,eAAe,EAAC,GAAG,eAAe,CAAC;QAClF,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,YAAY,EAAE,IAAI,CAAC,aAAa;QAChC,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,UAAU;QACV,KAAK,EAAE,IAAI,CAAC,IAAI;QAChB,eAAe;QACf,OAAO;QACP,IAAI,EAAE,CAAC,MAAM;KAChB,CAAC,CAAC;IAEH,MAAM,iBAAiB,GAAiB,OAAO,CAC3C,GAAG,EAAE,CAAC,CAAC;QACH,KAAK,EAAE,CAAC,CAAC,gCAAgC,CAAC;QAC1C,IAAI,EAAE,KAAC,eAAe,IAAC,IAAI,EAAE,OAAO,GAAI;QACxC,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,mBAAmB,CAAC,EAAE;YAC5B,gBAAgB,CAAC;gBACb,KAAK,EACD,CAAC,CAAC,sBAAsB,EAAE;oBACtB,KAAK,EAAE,IAAI,CAAC,aAAa,KAAK,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;iBAC1F,CAAC,IAAI,SAAS;gBACnB,OAAO,EACH,CAAC,CAAC,kCAAkC,EAAE;oBAClC,KAAK,EAAE,IAAI,CAAC,aAAa,KAAK,kBAAkB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;iBAC1F,CAAC;oBACF,eAAe;oBACf,CAAC,CAAC,qBAAqB,CAAC;gBAC5B,MAAM,EAAE,CAAC,CAAC,eAAe,CAAC,IAAI,SAAS;gBACvC,IAAI,EAAE,KAAK,IAAI,EAAE;oBACb,MAAM,UAAU,GAAG,IAAI,CAAC,UAA6B,CAAC;oBACtD,IAAI,MAAwB,CAAC;oBAC7B,IACI,IAAI,CAAC,aAAa,KAAK,kBAAkB;wBACzC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAC/D,CAAC;wBACC,MAAM;4BACF,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAC,QAAQ,EAAC,EAAE,EAAE,CAAC,CAAC;gCAC3C,SAAS,EAAE,UAAU,CAAC,eAAe;gCACrC,OAAO,EAAE,QAAQ,IAAI,IAAI;gCACzB,KAAK,EAAE,IAAI;6BACd,CAAC,CAAC,IAAI,EAAE,CAAC;oBAClB,CAAC;yBAAM,CAAC;wBACJ,MAAM,GAAG,CAAC,QAAQ,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,MAAM,CAAmB,CAAC,GAAG,EAAE,EAAC,QAAQ,EAAE,GAAG,EAAC,EAAE,EAAE;4BACjF,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gCACnC,GAAG,CAAC,IAAI,CAAC;oCACL,SAAS,EAAE,UAAU,CAAC,eAAe;oCACrC,OAAO,EAAE,QAAQ,IAAI,IAAI;oCACzB,KAAK,EAAE,IAAI;iCACd,CAAC,CAAC;4BACP,CAAC;4BACD,OAAO,GAAG,CAAC;wBACf,CAAC,EAAE,EAAE,CAAC,CAAC;oBACX,CAAC;oBAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpB,MAAM,UAAU,CACZ;4BACI,EAAE,EAAE,UAAU,CAAC,cAAc;4BAC7B,OAAO,EAAE;gCACL,EAAE,EAAE,UAAU,CAAC,eAAe;6BACjC;yBACJ,EACD,MAAM,EACN,SAAS,EACT,IAAI,CACP,CAAC;wBAEF,QAAQ,EAAE,CACN,mBAAmB,EACnB,MAAM,CAAC,GAAG,CAAC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE,CAAC,OAAc,CAAC,CAC5C,CAAC;wBACF,MAAM,OAAO,EAAE,CAAC;oBACpB,CAAC;oBACD,QAAQ,CAAC;wBACL,IAAI,EAAE,uBAAuB,CAAC,iBAAiB;wBAC/C,OAAO,EAAE,EAAE;qBACd,CAAC,CAAC;gBACP,CAAC;aACJ,CAAC,CAAC;QACP,CAAC;KACJ,CAAC,EACF,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,CAChF,CAAC;IAEF,OAAO;QACH,gBAAgB,EAAE,SAAS,IAAI,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI;KAC5E,CAAC;AACN,CAAC,CAAC","sourcesContent":["import useSaveValueBatchMutation from '_ui/components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation';\nimport {type FeatureHook, type IEntrypointLink, type IMassActions} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {type Dispatch, type Key, useMemo} from 'react';\nimport {useExplorerData} from '../_queries/useExplorerData';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {BREAK_TWO_LINES} from '_ui/constants';\nimport {type IValueToSubmit} from '_ui/components/RecordEdition/EditRecordContent/_types';\nimport {type IUIFiltersState} from '_ui/components/Filters/context/filtersReducer';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash} from '@fortawesome/free-solid-svg-icons';\n\nexport const useDeleteLinkValues = ({\n isEnabled,\n store: {view, dispatch},\n filtersStore: {filters, filtersOperator},\n pagination,\n allVisibleKeys,\n onDelete,\n refetch,\n}: FeatureHook<{\n pagination: null | {limit: number; offset: number};\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n filtersStore: IUIFiltersState;\n allVisibleKeys: string[];\n onDelete?: IMassActions['callback'];\n refetch: ReturnType<typeof useExplorerData>['refetch'];\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n const {saveValues} = useSaveValueBatchMutation();\n\n const isLink = view.entrypoint.type === 'link';\n const {data: linkData, canEditLinkAttributeValues: canUnlinkValues} = useExplorerData({\n entrypoint: view.entrypoint,\n libraryId: view.libraryId,\n attributeIds: view.attributesIds,\n fulltextSearch: view.fulltextSearch,\n pagination,\n sorts: view.sort,\n filtersOperator,\n filters,\n skip: !isLink,\n });\n\n const _unlinkMassAction: IMassActions = useMemo(\n () => ({\n label: t('explorer.massAction.deactivate'),\n icon: <FontAwesomeIcon icon={faTrash} />,\n deselectAll: true,\n callback: massSelectionFilter => {\n openConfirmModal({\n title:\n t('explorer.delete_link', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) ?? undefined,\n content:\n t('explorer.delete_link_description', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) +\n BREAK_TWO_LINES +\n t('global.are_you_sure'),\n okText: t('global.submit') ?? undefined,\n onOk: async () => {\n const entrypoint = view.entrypoint as IEntrypointLink;\n let values: IValueToSubmit[];\n if (\n view.massSelection === MASS_SELECTION_ALL ||\n allVisibleKeys.every(key => view.massSelection.includes(key))\n ) {\n values =\n (linkData?.records ?? []).map(({id_value}) => ({\n attribute: entrypoint.linkAttributeId,\n idValue: id_value ?? null,\n value: null,\n })) ?? [];\n } else {\n values = (linkData?.records ?? []).reduce<IValueToSubmit[]>((acc, {id_value, key}) => {\n if (view.massSelection.includes(key)) {\n acc.push({\n attribute: entrypoint.linkAttributeId,\n idValue: id_value ?? null,\n value: null,\n });\n }\n return acc;\n }, []);\n }\n\n if (values.length > 0) {\n await saveValues(\n {\n id: entrypoint.parentRecordId,\n library: {\n id: entrypoint.parentLibraryId,\n },\n },\n values,\n undefined,\n true,\n );\n\n onDelete?.(\n massSelectionFilter,\n values.map(({idValue}) => idValue as Key),\n );\n await refetch();\n }\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: [],\n });\n },\n });\n },\n }),\n [t, saveValues, view.massSelection, dispatch, view.libraryId, allVisibleKeys],\n );\n\n return {\n unlinkMassAction: isEnabled && canUnlinkValues ? _unlinkMassAction : null,\n };\n};\n"]}
1
+ {"version":3,"file":"useDeleteLinkValues.js","sourceRoot":"","sources":["../../../../src/components/Explorer/actions-mass/useDeleteLinkValues.tsx"],"names":[],"mappings":"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","sourcesContent":["import useSaveValueBatchMutation from '_ui/components/RecordEdition/EditRecordContent/hooks/useExecuteSaveValueBatchMutation';\nimport {type FeatureHook, type IEntrypointLink, type IMassActions} from '../_types';\nimport {type IViewSettingsAction, type IViewSettingsState, ViewSettingsActionTypes} from '../manage-view-settings';\nimport {type Dispatch, type Key, useMemo} from 'react';\nimport {useExplorerData} from '../_queries/useExplorerData';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal/useConfirmModal';\nimport {MASS_SELECTION_ALL} from '../_constants';\nimport {BREAK_TWO_LINES} from '_ui/constants';\nimport {type IValueToSubmit} from '_ui/components/RecordEdition/EditRecordContent/_types';\nimport {type IUIFiltersState} from '_ui/components/Filters/context/filtersReducer';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faTrash} from '@fortawesome/free-solid-svg-icons';\n\nexport const useDeleteLinkValues = ({\n isEnabled,\n store: {view, dispatch},\n filtersStore: {filters, filtersOperator},\n pagination,\n allVisibleKeys,\n onDelete,\n refetch,\n}: FeatureHook<{\n pagination: null | {limit: number; offset: number};\n store: {\n view: IViewSettingsState;\n dispatch: Dispatch<IViewSettingsAction>;\n };\n filtersStore: IUIFiltersState;\n allVisibleKeys: string[];\n onDelete?: IMassActions['callback'];\n refetch: ReturnType<typeof useExplorerData>['refetch'];\n}>) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n const {saveValues} = useSaveValueBatchMutation();\n\n const isLink = view.entrypoint.type === 'link';\n const {data: linkData, canEditLinkAttributeValues: canUnlinkValues} = useExplorerData({\n entrypoint: view.entrypoint,\n libraryId: view.libraryId,\n attributeIds: view.attributesIds,\n fulltextSearch: view.fulltextSearch,\n pagination,\n sorts: view.sort,\n filtersOperator,\n filters,\n skip: !isLink,\n });\n\n const _unlinkMassAction: IMassActions = useMemo(\n () => ({\n label: t('explorer.massAction.deactivate'),\n icon: <FontAwesomeIcon icon={faTrash} />,\n deselectAll: true,\n callback: massSelectionFilter => {\n openConfirmModal({\n title:\n t('explorer.delete_link', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) ?? undefined,\n content:\n t('explorer.delete_link_description', {\n count: view.massSelection === MASS_SELECTION_ALL ? Infinity : view.massSelection.length,\n }) +\n BREAK_TWO_LINES +\n t('global.are_you_sure'),\n okText: t('global.submit') ?? undefined,\n onOk: async () => {\n const entrypoint = view.entrypoint as IEntrypointLink;\n let values: IValueToSubmit[];\n if (\n view.massSelection === MASS_SELECTION_ALL ||\n allVisibleKeys.every(key => view.massSelection.includes(key))\n ) {\n values =\n (linkData?.records ?? []).map(({id_value}) => ({\n attribute: entrypoint.linkAttributeId,\n idValue: id_value ?? null,\n value: null,\n })) ?? [];\n } else {\n values = (linkData?.records ?? []).reduce<IValueToSubmit[]>((acc, {id_value, key}) => {\n if (view.massSelection.includes(key)) {\n acc.push({\n attribute: entrypoint.linkAttributeId,\n idValue: id_value ?? null,\n value: null,\n });\n }\n return acc;\n }, []);\n }\n\n if (values.length > 0) {\n await saveValues(\n {\n id: entrypoint.parentRecordId,\n library: {\n id: entrypoint.parentLibraryId,\n },\n },\n values,\n undefined,\n true,\n );\n\n onDelete?.(\n massSelectionFilter,\n values.map(({idValue}) => idValue as Key),\n );\n await refetch();\n }\n dispatch({\n type: ViewSettingsActionTypes.SET_SELECTED_KEYS,\n payload: [],\n });\n },\n });\n },\n }),\n [t, saveValues, view.massSelection, dispatch, view.libraryId, allVisibleKeys],\n );\n\n return {\n unlinkMassAction: isEnabled && canUnlinkValues ? _unlinkMassAction : null,\n };\n};\n"]}
@@ -3,7 +3,7 @@ import { localizedTranslation } from '@leav/utils';
3
3
  import { Form, Space } from 'antd';
4
4
  import { KitSelect } from 'aristid-ds';
5
5
  import styled from 'styled-components';
6
- import useLang from '../../../../hooks/useLang';
6
+ import useLang from '../../../../hooks/useLang/useLang';
7
7
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
8
8
  import { AttributeType, ImportMode, ImportType, } from '../../../../_gqlTypes';
9
9
  import { useImportReducerContext } from '../../importReducer/ImportReducerContext';
@@ -1 +1 @@
1
- {"version":3,"file":"ImportSheetSettings.js","sourceRoot":"","sources":["../../../../../src/components/ImportModal/ImportModalConfigStep/ImportSheetSettings/ImportSheetSettings.tsx"],"names":[],"mappings":"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","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {Form, Space} from 'antd';\nimport {KitSelect} from 'aristid-ds';\nimport styled from 'styled-components';\nimport useLang from '_ui/hooks/useLang';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type AttributesByLibAttributeFragment,\n type AttributesByLibAttributeTreeAttributeFragment,\n AttributeType,\n ImportMode,\n ImportType,\n type LibraryLightFragment,\n} from '_ui/_gqlTypes';\nimport {useImportReducerContext} from '../../importReducer/ImportReducerContext';\n\ninterface IImportSettingsProps {\n sheetIndex: number;\n libraries: LibraryLightFragment[];\n onLibrarySelect: (sheetIndex: number, library: string) => void;\n onImportTypeSelect: (sheetIndex: number, type: ImportType) => void;\n onImportModeSelect: (sheetIndex: number, mode: ImportMode) => void;\n onLinkAttributeSelect: (sheetIndex: number, attribute: string) => void;\n onTreeLinkLibrarySelect: (sheetIndex: number, library: string) => void;\n}\n\nconst isLinkAttribute = (attribute: AttributesByLibAttributeFragment): boolean =>\n attribute.type === AttributeType.simple_link ||\n attribute.type === AttributeType.advanced_link ||\n attribute.type === AttributeType.tree;\n\nconst SettingsWrapper = styled(Space)`\n && .ant-form-item-label {\n padding: 0;\n font-weight: bold;\n }\n`;\n\nfunction ImportSheetSettings({\n sheetIndex,\n libraries,\n onLibrarySelect,\n onImportTypeSelect,\n onImportModeSelect,\n onLinkAttributeSelect,\n onTreeLinkLibrarySelect,\n}: IImportSettingsProps): JSX.Element {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {state} = useImportReducerContext();\n const sheet = state.sheets[sheetIndex];\n const isSheetIgnored = sheet.type === ImportType.IGNORE;\n\n const selectTreeLinkLibraryOptions =\n sheet.type === ImportType.LINK && sheet.linkAttributeProps?.type === AttributeType.tree\n ? (\n (sheet.linkAttributeProps as AttributesByLibAttributeTreeAttributeFragment)?.linked_tree?.libraries ??\n []\n ).map(treeLib => ({\n key: treeLib.library.id,\n value: treeLib.library.id,\n label: localizedTranslation(treeLib.library.label, lang),\n }))\n : null;\n\n const typeOptions = Object.values(ImportType).map(type => ({\n key: type,\n value: type,\n label: t(`import.types.${type}`),\n }));\n\n const modeOptions = Object.values(ImportMode).map(mode => ({\n key: mode,\n value: mode,\n label: t(`import.modes.${mode}`),\n }));\n\n const librariesOptions = libraries.map(l => ({\n key: l.id,\n value: l.id,\n label: localizedTranslation(l.label, lang) || l.id,\n }));\n\n const linkAttributeOptions = sheet.attributes.filter(isLinkAttribute).map(a => ({\n key: a.id,\n value: a.id,\n label: localizedTranslation(a.label, lang) || a.id,\n }));\n\n return (\n <Form layout=\"vertical\">\n <SettingsWrapper direction=\"horizontal\" size=\"middle\" wrap>\n <Form.Item label={t('import.type')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.type}\n placeholder={t('import.select_type')}\n onChange={value => onImportTypeSelect(sheetIndex, value)}\n options={typeOptions}\n />\n </Form.Item>\n {!isSheetIgnored && (\n <>\n <Form.Item label={t('import.mode')} required>\n <KitSelect\n style={{minWidth: 240}}\n defaultValue={sheet.mode}\n placeholder={t('import.select_mode')}\n onChange={value => onImportModeSelect(sheetIndex, value)}\n options={modeOptions}\n />\n </Form.Item>\n <Form.Item label={t('import.library')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.library ?? state.defaultLibrary}\n placeholder={t('import.select_library')}\n onChange={value => onLibrarySelect(sheetIndex, value)}\n options={librariesOptions}\n />\n </Form.Item>\n {sheet.type === ImportType.LINK && sheet.library && (\n <Form.Item label={t('import.link_attribute')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.linkAttribute}\n value={sheet.linkAttribute}\n placeholder={t('import.select_link_attribute')}\n onChange={value => onLinkAttributeSelect(sheetIndex, value)}\n options={linkAttributeOptions}\n />\n </Form.Item>\n )}\n {sheet.type === ImportType.LINK && sheet.linkAttributeProps?.type === AttributeType.tree && (\n <Form.Item label={t('import.tree_link_library')} required>\n <KitSelect\n style={{minWidth: 200}}\n value={sheet.treeLinkLibrary}\n placeholder={t('import.select_library')}\n onChange={value => onTreeLinkLibrarySelect(sheetIndex, value)}\n options={selectTreeLinkLibraryOptions}\n />\n </Form.Item>\n )}\n </>\n )}\n </SettingsWrapper>\n </Form>\n );\n}\n\nexport default ImportSheetSettings;\n"]}
1
+ {"version":3,"file":"ImportSheetSettings.js","sourceRoot":"","sources":["../../../../../src/components/ImportModal/ImportModalConfigStep/ImportSheetSettings/ImportSheetSettings.tsx"],"names":[],"mappings":"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","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {Form, Space} from 'antd';\nimport {KitSelect} from 'aristid-ds';\nimport styled from 'styled-components';\nimport useLang from '_ui/hooks/useLang/useLang';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type AttributesByLibAttributeFragment,\n type AttributesByLibAttributeTreeAttributeFragment,\n AttributeType,\n ImportMode,\n ImportType,\n type LibraryLightFragment,\n} from '_ui/_gqlTypes';\nimport {useImportReducerContext} from '../../importReducer/ImportReducerContext';\n\ninterface IImportSettingsProps {\n sheetIndex: number;\n libraries: LibraryLightFragment[];\n onLibrarySelect: (sheetIndex: number, library: string) => void;\n onImportTypeSelect: (sheetIndex: number, type: ImportType) => void;\n onImportModeSelect: (sheetIndex: number, mode: ImportMode) => void;\n onLinkAttributeSelect: (sheetIndex: number, attribute: string) => void;\n onTreeLinkLibrarySelect: (sheetIndex: number, library: string) => void;\n}\n\nconst isLinkAttribute = (attribute: AttributesByLibAttributeFragment): boolean =>\n attribute.type === AttributeType.simple_link ||\n attribute.type === AttributeType.advanced_link ||\n attribute.type === AttributeType.tree;\n\nconst SettingsWrapper = styled(Space)`\n && .ant-form-item-label {\n padding: 0;\n font-weight: bold;\n }\n`;\n\nfunction ImportSheetSettings({\n sheetIndex,\n libraries,\n onLibrarySelect,\n onImportTypeSelect,\n onImportModeSelect,\n onLinkAttributeSelect,\n onTreeLinkLibrarySelect,\n}: IImportSettingsProps): JSX.Element {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {state} = useImportReducerContext();\n const sheet = state.sheets[sheetIndex];\n const isSheetIgnored = sheet.type === ImportType.IGNORE;\n\n const selectTreeLinkLibraryOptions =\n sheet.type === ImportType.LINK && sheet.linkAttributeProps?.type === AttributeType.tree\n ? (\n (sheet.linkAttributeProps as AttributesByLibAttributeTreeAttributeFragment)?.linked_tree?.libraries ??\n []\n ).map(treeLib => ({\n key: treeLib.library.id,\n value: treeLib.library.id,\n label: localizedTranslation(treeLib.library.label, lang),\n }))\n : null;\n\n const typeOptions = Object.values(ImportType).map(type => ({\n key: type,\n value: type,\n label: t(`import.types.${type}`),\n }));\n\n const modeOptions = Object.values(ImportMode).map(mode => ({\n key: mode,\n value: mode,\n label: t(`import.modes.${mode}`),\n }));\n\n const librariesOptions = libraries.map(l => ({\n key: l.id,\n value: l.id,\n label: localizedTranslation(l.label, lang) || l.id,\n }));\n\n const linkAttributeOptions = sheet.attributes.filter(isLinkAttribute).map(a => ({\n key: a.id,\n value: a.id,\n label: localizedTranslation(a.label, lang) || a.id,\n }));\n\n return (\n <Form layout=\"vertical\">\n <SettingsWrapper direction=\"horizontal\" size=\"middle\" wrap>\n <Form.Item label={t('import.type')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.type}\n placeholder={t('import.select_type')}\n onChange={value => onImportTypeSelect(sheetIndex, value)}\n options={typeOptions}\n />\n </Form.Item>\n {!isSheetIgnored && (\n <>\n <Form.Item label={t('import.mode')} required>\n <KitSelect\n style={{minWidth: 240}}\n defaultValue={sheet.mode}\n placeholder={t('import.select_mode')}\n onChange={value => onImportModeSelect(sheetIndex, value)}\n options={modeOptions}\n />\n </Form.Item>\n <Form.Item label={t('import.library')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.library ?? state.defaultLibrary}\n placeholder={t('import.select_library')}\n onChange={value => onLibrarySelect(sheetIndex, value)}\n options={librariesOptions}\n />\n </Form.Item>\n {sheet.type === ImportType.LINK && sheet.library && (\n <Form.Item label={t('import.link_attribute')} required>\n <KitSelect\n style={{minWidth: 200}}\n defaultValue={sheet.linkAttribute}\n value={sheet.linkAttribute}\n placeholder={t('import.select_link_attribute')}\n onChange={value => onLinkAttributeSelect(sheetIndex, value)}\n options={linkAttributeOptions}\n />\n </Form.Item>\n )}\n {sheet.type === ImportType.LINK && sheet.linkAttributeProps?.type === AttributeType.tree && (\n <Form.Item label={t('import.tree_link_library')} required>\n <KitSelect\n style={{minWidth: 200}}\n value={sheet.treeLinkLibrary}\n placeholder={t('import.select_library')}\n onChange={value => onTreeLinkLibrarySelect(sheetIndex, value)}\n options={selectTreeLinkLibraryOptions}\n />\n </Form.Item>\n )}\n </>\n )}\n </SettingsWrapper>\n </Form>\n );\n}\n\nexport default ImportSheetSettings;\n"]}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { localizedTranslation } from '@leav/utils';
3
- import useLang from '../../hooks/useLang';
3
+ import useLang from '../../hooks/useLang/useLang';
4
4
  import { PreviewSize } from '../../constants';
5
5
  import { EntityCard } from '../EntityCard';
6
6
  const _getPreviewBySize = (preview, size) => {
@@ -1 +1 @@
1
- {"version":3,"file":"RecordCard.js","sourceRoot":"","sources":["../../../src/components/RecordCard/RecordCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAC,UAAU,EAAmB,MAAM,eAAe,CAAC;AAG3D,MAAM,iBAAiB,GAAG,CAAC,OAA0C,EAAE,IAAkB,EAAE,EAAE;IACzF,MAAM,qBAAqB,GAAoC;QAC3D,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM;QAC1B,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM;QAC3B,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO;QAC7B,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ;KAC9B,CAAC;IAEF,MAAM,WAAW,GAAW,CAAC,OAAO,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO,EAAE,KAAK,CAAW,CAAC;IAEjG,OAAO,WAAW,IAAI,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAChB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,WAAW,GAAG,IAAI,EAClB,WAAW,GAAG,IAAI,EAClB,SAAS,GAAG,IAAI,EAChB,IAAI,GAAG,KAAK,EACZ,UAAU,GAAG,KAAK,GACH,EAAe,EAAE;IAChC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ;QAC5B,CAAC,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;IAE1F,MAAM,cAAc,GAAgB;QAChC,KAAK;QACL,QAAQ;QACR,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;QAChD,KAAK,EAAE,MAAM,CAAC,KAAK;KACtB,CAAC;IAEF,OAAO,CACH,KAAC,UAAU,IACP,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,GAC5B,CACL,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport useLang from '_ui/hooks/useLang';\nimport {PreviewSize} from '../../constants';\nimport {type IRecordIdentityWhoAmI} from '../../types/records';\nimport {EntityCard, type IEntityData} from '../EntityCard';\nimport {type IRecordCardProps} from './_types';\n\nconst _getPreviewBySize = (preview?: IRecordIdentityWhoAmI['preview'], size?: PreviewSize) => {\n const fileSizeByPreviewSize: {[size in PreviewSize]: string} = {\n [PreviewSize.TINY]: 'tiny',\n [PreviewSize.SMALL]: 'tiny',\n [PreviewSize.MEDIUM]: 'small',\n [PreviewSize.BIG]: 'medium',\n };\n\n const previewPath: string = (preview?.[fileSizeByPreviewSize[size]] ?? preview?.small) as string;\n\n return previewPath ?? '';\n};\n\nconst RecordCard = ({\n record,\n size,\n style,\n previewStyle,\n lang,\n withPreview = true,\n withLibrary = true,\n withColor = true,\n tile = false,\n simplistic = false,\n}: IRecordCardProps): JSX.Element => {\n const {lang: userLang} = useLang();\n const label = record.label || record.id;\n const subLabel = record.subLabel\n ? record.subLabel\n : localizedTranslation(record.library?.label, lang ?? userLang) || record.library?.id;\n\n const recordIdentity: IEntityData = {\n label,\n subLabel,\n preview: _getPreviewBySize(record.preview, size),\n color: record.color,\n };\n\n return (\n <EntityCard\n entity={recordIdentity}\n style={style}\n size={size}\n withPreview={withPreview}\n withSubLabel={withLibrary}\n tile={tile}\n simplistic={simplistic}\n withColor={withColor}\n previewStyle={previewStyle}\n />\n );\n};\n\nexport default RecordCard;\n"]}
1
+ {"version":3,"file":"RecordCard.js","sourceRoot":"","sources":["../../../src/components/RecordCard/RecordCard.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,OAAO,MAAM,2BAA2B,CAAC;AAChD,OAAO,EAAC,WAAW,EAAC,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAC,UAAU,EAAmB,MAAM,eAAe,CAAC;AAG3D,MAAM,iBAAiB,GAAG,CAAC,OAA0C,EAAE,IAAkB,EAAE,EAAE;IACzF,MAAM,qBAAqB,GAAoC;QAC3D,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM;QAC1B,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM;QAC3B,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,OAAO;QAC7B,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,QAAQ;KAC9B,CAAC;IAEF,MAAM,WAAW,GAAW,CAAC,OAAO,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO,EAAE,KAAK,CAAW,CAAC;IAEjG,OAAO,WAAW,IAAI,EAAE,CAAC;AAC7B,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,EAChB,MAAM,EACN,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,IAAI,EACJ,WAAW,GAAG,IAAI,EAClB,WAAW,GAAG,IAAI,EAClB,SAAS,GAAG,IAAI,EAChB,IAAI,GAAG,KAAK,EACZ,UAAU,GAAG,KAAK,GACH,EAAe,EAAE;IAChC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,OAAO,EAAE,CAAC;IACnC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ;QAC5B,CAAC,CAAC,MAAM,CAAC,QAAQ;QACjB,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,IAAI,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;IAE1F,MAAM,cAAc,GAAgB;QAChC,KAAK;QACL,QAAQ;QACR,OAAO,EAAE,iBAAiB,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC;QAChD,KAAK,EAAE,MAAM,CAAC,KAAK;KACtB,CAAC;IAEF,OAAO,CACH,KAAC,UAAU,IACP,MAAM,EAAE,cAAc,EACtB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,WAAW,EACzB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,YAAY,GAC5B,CACL,CAAC;AACN,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport useLang from '_ui/hooks/useLang/useLang';\nimport {PreviewSize} from '../../constants';\nimport {type IRecordIdentityWhoAmI} from '../../types/records';\nimport {EntityCard, type IEntityData} from '../EntityCard';\nimport {type IRecordCardProps} from './_types';\n\nconst _getPreviewBySize = (preview?: IRecordIdentityWhoAmI['preview'], size?: PreviewSize) => {\n const fileSizeByPreviewSize: {[size in PreviewSize]: string} = {\n [PreviewSize.TINY]: 'tiny',\n [PreviewSize.SMALL]: 'tiny',\n [PreviewSize.MEDIUM]: 'small',\n [PreviewSize.BIG]: 'medium',\n };\n\n const previewPath: string = (preview?.[fileSizeByPreviewSize[size]] ?? preview?.small) as string;\n\n return previewPath ?? '';\n};\n\nconst RecordCard = ({\n record,\n size,\n style,\n previewStyle,\n lang,\n withPreview = true,\n withLibrary = true,\n withColor = true,\n tile = false,\n simplistic = false,\n}: IRecordCardProps): JSX.Element => {\n const {lang: userLang} = useLang();\n const label = record.label || record.id;\n const subLabel = record.subLabel\n ? record.subLabel\n : localizedTranslation(record.library?.label, lang ?? userLang) || record.library?.id;\n\n const recordIdentity: IEntityData = {\n label,\n subLabel,\n preview: _getPreviewBySize(record.preview, size),\n color: record.color,\n };\n\n return (\n <EntityCard\n entity={recordIdentity}\n style={style}\n size={size}\n withPreview={withPreview}\n withSubLabel={withLibrary}\n tile={tile}\n simplistic={simplistic}\n withColor={withColor}\n previewStyle={previewStyle}\n />\n );\n};\n\nexport default RecordCard;\n"]}
@@ -20,6 +20,6 @@ export const ToggleSidebarButton = () => {
20
20
  if (!state.enableSidebar) {
21
21
  return null;
22
22
  }
23
- return (_jsx(KitTooltip, { title: buttonLabel, mouseEnterDelay: 1, children: _jsx(KitButton, { id: EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID, type: "secondary", size: "m", active: isOpen, icon: _jsx(FontAwesomeIcon, { icon: faInfo }), onClick: toggleSidebar, "aria-label": buttonLabel }) }));
23
+ return (_jsx(KitTooltip, { title: buttonLabel, children: _jsx(KitButton, { id: EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID, type: "secondary", size: "m", active: isOpen, icon: _jsx(FontAwesomeIcon, { icon: faInfo }), onClick: toggleSidebar, "aria-label": buttonLabel }) }));
24
24
  };
25
25
  //# sourceMappingURL=SidebarButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SidebarButton.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordButtons/SidebarButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,SAAS,EAAE,UAAU,EAAC,MAAM,YAAY,CAAC;AACjD,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAC,6BAA6B,EAAC,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,mCAAmC,EAAC,MAAM,cAAc,CAAC;AAEjE,MAAM,CAAC,MAAM,mBAAmB,GAAsB,GAAG,EAAE;IACvD,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC;IAE5C,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,QAAQ,CAAC;YACL,IAAI,EAAE,6BAA6B,CAAC,mBAAmB;YACvD,MAAM,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;IAElG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,KAAC,UAAU,IAAC,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,CAAC,YAC9C,KAAC,SAAS,IACN,EAAE,EAAE,mCAAmC,EACvC,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,GAAG,EACR,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,KAAC,eAAe,IAAC,IAAI,EAAE,MAAM,GAAI,EACvC,OAAO,EAAE,aAAa,gBACV,WAAW,GACzB,GACO,CAChB,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {type FunctionComponent} from 'react';\nimport {KitButton, KitTooltip} from 'aristid-ds';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faInfo} from '@fortawesome/free-solid-svg-icons';\nimport {useEditRecordReducer} from '../editRecordReducer/useEditRecordReducer';\nimport {EditRecordReducerActionsTypes} from '../editRecordReducer/editRecordReducer';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID} from '../constants';\n\nexport const ToggleSidebarButton: FunctionComponent = () => {\n const {t} = useSharedTranslation();\n const {state, dispatch} = useEditRecordReducer();\n const isOpen = state.isOpenSidebar ?? false;\n\n const toggleSidebar = () => {\n dispatch({\n type: EditRecordReducerActionsTypes.SET_SIDEBAR_IS_OPEN,\n isOpen: !isOpen,\n });\n };\n\n const buttonLabel = isOpen ? t('record_edition.close_sidebar') : t('record_edition.open_sidebar');\n\n if (!state.enableSidebar) {\n return null;\n }\n\n return (\n <KitTooltip title={buttonLabel} mouseEnterDelay={1}>\n <KitButton\n id={EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID}\n type=\"secondary\"\n size=\"m\"\n active={isOpen}\n icon={<FontAwesomeIcon icon={faInfo} />}\n onClick={toggleSidebar}\n aria-label={buttonLabel}\n />\n </KitTooltip>\n );\n};\n"]}
1
+ {"version":3,"file":"SidebarButton.js","sourceRoot":"","sources":["../../../../src/components/RecordEdition/EditRecordButtons/SidebarButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAC,SAAS,EAAE,UAAU,EAAC,MAAM,YAAY,CAAC;AACjD,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,MAAM,EAAC,MAAM,mCAAmC,CAAC;AACzD,OAAO,EAAC,oBAAoB,EAAC,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAC,6BAA6B,EAAC,MAAM,wCAAwC,CAAC;AACrF,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,mCAAmC,EAAC,MAAM,cAAc,CAAC;AAEjE,MAAM,CAAC,MAAM,mBAAmB,GAAsB,GAAG,EAAE;IACvD,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,KAAK,EAAE,QAAQ,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC;IAE5C,MAAM,aAAa,GAAG,GAAG,EAAE;QACvB,QAAQ,CAAC;YACL,IAAI,EAAE,6BAA6B,CAAC,mBAAmB;YACvD,MAAM,EAAE,CAAC,MAAM;SAClB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;IAElG,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,CACH,KAAC,UAAU,IAAC,KAAK,EAAE,WAAW,YAC1B,KAAC,SAAS,IACN,EAAE,EAAE,mCAAmC,EACvC,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,GAAG,EACR,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,KAAC,eAAe,IAAC,IAAI,EAAE,MAAM,GAAI,EACvC,OAAO,EAAE,aAAa,gBACV,WAAW,GACzB,GACO,CAChB,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {type FunctionComponent} from 'react';\nimport {KitButton, KitTooltip} from 'aristid-ds';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faInfo} from '@fortawesome/free-solid-svg-icons';\nimport {useEditRecordReducer} from '../editRecordReducer/useEditRecordReducer';\nimport {EditRecordReducerActionsTypes} from '../editRecordReducer/editRecordReducer';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID} from '../constants';\n\nexport const ToggleSidebarButton: FunctionComponent = () => {\n const {t} = useSharedTranslation();\n const {state, dispatch} = useEditRecordReducer();\n const isOpen = state.isOpenSidebar ?? false;\n\n const toggleSidebar = () => {\n dispatch({\n type: EditRecordReducerActionsTypes.SET_SIDEBAR_IS_OPEN,\n isOpen: !isOpen,\n });\n };\n\n const buttonLabel = isOpen ? t('record_edition.close_sidebar') : t('record_edition.open_sidebar');\n\n if (!state.enableSidebar) {\n return null;\n }\n\n return (\n <KitTooltip title={buttonLabel}>\n <KitButton\n id={EDIT_RECORD_SIDEBAR_TOGGLE_BUTON_ID}\n type=\"secondary\"\n size=\"m\"\n active={isOpen}\n icon={<FontAwesomeIcon icon={faInfo} />}\n onClick={toggleSidebar}\n aria-label={buttonLabel}\n />\n </KitTooltip>\n );\n};\n"]}
@@ -4,7 +4,6 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
4
4
  import { LINK_RECORDS_MODAL_CLASSNAME } from '../../../../../../../components/Explorer/_constants';
5
5
  import { APICallStatus, } from '../../../../../../../components/RecordEdition/EditRecordContent/_types';
6
6
  import { SelectRecordForLinkModal } from '../../../../../../../components/SelectRecordForLinkModal';
7
- import { TOOLTIP_DEFAULT_DELAY_IN_SECONDS } from '../../../../../../../constants';
8
7
  import { AntForm, KitButton, KitTooltip } from 'aristid-ds';
9
8
  import { useState } from 'react';
10
9
  import { useSharedTranslation } from '../../../../../../../hooks/useSharedTranslation';
@@ -60,7 +59,7 @@ export const useLinkRecord = ({ attribute, isReadOnly, onValueSubmit, backendVal
60
59
  const valuesList = isValuesListEnabled ? attribute.linkValuesList?.values?.map(value => value.id) : undefined;
61
60
  const allowFreeEntry = isValuesListEnabled ? Boolean(attribute.linkValuesList?.allowFreeEntry) : true;
62
61
  return {
63
- LinkRecordButton: !isReadOnly ? (_jsxs(_Fragment, { children: [_jsx(KitTooltip, { title: isReplacementMode ? t('global.replace') : t('global.add'), mouseEnterDelay: TOOLTIP_DEFAULT_DELAY_IN_SECONDS, children: _jsx(KitButton, { type: "secondary", size: "m", icon: _jsx(FontAwesomeIcon, { icon: faPlus }), onClick: () => {
62
+ LinkRecordButton: !isReadOnly ? (_jsxs(_Fragment, { children: [_jsx(KitTooltip, { title: isReplacementMode ? t('global.replace') : t('global.add'), children: _jsx(KitButton, { type: "secondary", size: "m", icon: _jsx(FontAwesomeIcon, { icon: faPlus }), onClick: () => {
64
63
  setIsModalOpen(true);
65
64
  } }) }), linkedTreeId ? (_jsx(SelectTreeNodeModal, { open: isModalOpen, attribute: {
66
65
  multiple_values: attribute.multiple_values,
@@ -1 +1 @@
1
- {"version":3,"file":"useLinkRecord.js","sourceRoot":"","sources":["../../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.tsx"],"names":[],"mappings":"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","sourcesContent":["import {faPlus} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {\n type JoinLibraryContextFragment,\n type ExplorerSelectionIdsQuery,\n type RecordFormAttributeLinkAttributeFragment,\n} from '_ui/_gqlTypes';\nimport {LINK_RECORDS_MODAL_CLASSNAME} from '_ui/components/Explorer/_constants';\nimport {\n APICallStatus,\n type ISubmitMultipleResult,\n type SubmitValueFunc,\n} from '_ui/components/RecordEdition/EditRecordContent/_types';\nimport {SelectRecordForLinkModal} from '_ui/components/SelectRecordForLinkModal';\nimport {TOOLTIP_DEFAULT_DELAY_IN_SECONDS} from '_ui/constants';\nimport {AntForm, KitButton, KitTooltip} from 'aristid-ds';\nimport {type Dispatch, type SetStateAction, useState} from 'react';\nimport {type RecordFormElementsValueLinkValue} from '_ui/hooks/useGetRecordForm';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {SelectTreeNodeModal} from '../../../TreeField/manage-tree-node-selection/SelectTreeNodeModal';\n\ninterface IUseLinkRecordProps {\n attribute: RecordFormAttributeLinkAttributeFragment;\n isReadOnly: boolean;\n onValueSubmit: SubmitValueFunc;\n backendValues: RecordFormElementsValueLinkValue[];\n setBackendValues: Dispatch<SetStateAction<RecordFormElementsValueLinkValue[]>>;\n joinLibraryContext?: JoinLibraryContextFragment;\n}\n\nexport const useLinkRecord = ({\n attribute,\n isReadOnly,\n onValueSubmit,\n backendValues,\n setBackendValues,\n joinLibraryContext,\n}: IUseLinkRecordProps) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const {t} = useSharedTranslation();\n const antdForm = AntForm.useFormInstance();\n\n const _buildValueToSubmit = (recordId: string) => ({\n id: recordId,\n whoAmI: {id: recordId, library: {id: attribute.linked_library?.id}},\n });\n\n const _handleLinkRecord = async (data: ExplorerSelectionIdsQuery) => {\n let submitRes: ISubmitMultipleResult;\n\n if (attribute.multiple_values) {\n submitRes = await onValueSubmit(\n data.records.list.map(record => ({value: _buildValueToSubmit(record.id), idValue: null, attribute})),\n null,\n );\n } else {\n submitRes = await onValueSubmit(\n [\n {\n value: _buildValueToSubmit(data.records.list[0].id),\n idValue: backendValues[0]?.id_value ?? null,\n attribute,\n },\n ],\n null,\n );\n }\n\n if (submitRes.status === APICallStatus.SUCCESS) {\n const linkValues = submitRes.values as unknown as RecordFormElementsValueLinkValue[];\n\n if (attribute.multiple_values) {\n setBackendValues(previousBackendValues => [...previousBackendValues, ...linkValues]);\n } else {\n setBackendValues([linkValues[0]]);\n }\n }\n\n if (submitRes.status === APICallStatus.ERROR) {\n antdForm.setFields([\n {\n name: attribute.id,\n errors: [submitRes.error],\n },\n ]);\n }\n };\n\n const isReplacementMode = backendValues.length > 0 && !attribute.multiple_values;\n\n const linkedLibraryId =\n joinLibraryContext &&\n 'linked_library' in joinLibraryContext.mandatoryAttribute &&\n joinLibraryContext.mandatoryAttribute.linked_library?.id;\n\n const linkedTreeId =\n joinLibraryContext &&\n 'linked_tree' in joinLibraryContext.mandatoryAttribute &&\n joinLibraryContext.mandatoryAttribute.linked_tree?.id;\n\n const isValuesListEnabled = attribute.linkValuesList?.enable;\n\n const valuesList = isValuesListEnabled ? attribute.linkValuesList?.values?.map(value => value.id) : undefined;\n\n const allowFreeEntry = isValuesListEnabled ? Boolean(attribute.linkValuesList?.allowFreeEntry) : true;\n\n return {\n LinkRecordButton: !isReadOnly ? (\n <>\n <KitTooltip\n title={isReplacementMode ? t('global.replace') : t('global.add')}\n mouseEnterDelay={TOOLTIP_DEFAULT_DELAY_IN_SECONDS}\n >\n <KitButton\n type=\"secondary\"\n size=\"m\"\n icon={<FontAwesomeIcon icon={faPlus} />}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </KitTooltip>\n {linkedTreeId ? (\n <SelectTreeNodeModal\n open={isModalOpen}\n attribute={{\n multiple_values: attribute.multiple_values,\n linked_tree: {\n id: linkedTreeId,\n },\n }}\n title={t(\n attribute.multiple_values ? 'tree-node-selection.title_many' : 'tree-node-selection.title',\n )}\n // We can select new node(s), ignoring current value(s).\n // Selected element might be duplicated in link attribute in backend for now.\n backendValues={[]}\n onClose={() => setIsModalOpen(false)}\n onConfirm={async selectedNodes => {\n const nodeIds = selectedNodes.map(node => node.id);\n await _handleLinkRecord({records: {list: nodeIds.map(id => ({id}))}});\n }}\n />\n ) : (\n <SelectRecordForLinkModal\n className={LINK_RECORDS_MODAL_CLASSNAME}\n open={isModalOpen}\n childLibraryId={linkedLibraryId || attribute.linked_library?.id}\n onSelectionCompleted={async data => {\n await _handleLinkRecord(data);\n setIsModalOpen(false);\n }}\n columnsToDisplay={[]} // TODO: One day, we should be able to choose the columns to display from a given viewId\n replacementMode={isReplacementMode}\n selectionMode={!attribute.multiple_values ? 'simple' : 'multiple'}\n hideSelectAllAction={!attribute.multiple_values}\n valuesList={valuesList}\n allowFreeEntry={allowFreeEntry}\n isMultivalue={attribute.multiple_values}\n onClose={() => setIsModalOpen(false)}\n joinLibraryContext={joinLibraryContext}\n />\n )}\n </>\n ) : undefined,\n };\n};\n"]}
1
+ {"version":3,"file":"useLinkRecord.js","sourceRoot":"","sources":["../../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/tag/link-record/useLinkRecord.tsx"],"names":[],"mappings":"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","sourcesContent":["import {faPlus} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {\n type JoinLibraryContextFragment,\n type ExplorerSelectionIdsQuery,\n type RecordFormAttributeLinkAttributeFragment,\n} from '_ui/_gqlTypes';\nimport {LINK_RECORDS_MODAL_CLASSNAME} from '_ui/components/Explorer/_constants';\nimport {\n APICallStatus,\n type ISubmitMultipleResult,\n type SubmitValueFunc,\n} from '_ui/components/RecordEdition/EditRecordContent/_types';\nimport {SelectRecordForLinkModal} from '_ui/components/SelectRecordForLinkModal';\nimport {AntForm, KitButton, KitTooltip} from 'aristid-ds';\nimport {type Dispatch, type SetStateAction, useState} from 'react';\nimport {type RecordFormElementsValueLinkValue} from '_ui/hooks/useGetRecordForm';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {SelectTreeNodeModal} from '../../../TreeField/manage-tree-node-selection/SelectTreeNodeModal';\n\ninterface IUseLinkRecordProps {\n attribute: RecordFormAttributeLinkAttributeFragment;\n isReadOnly: boolean;\n onValueSubmit: SubmitValueFunc;\n backendValues: RecordFormElementsValueLinkValue[];\n setBackendValues: Dispatch<SetStateAction<RecordFormElementsValueLinkValue[]>>;\n joinLibraryContext?: JoinLibraryContextFragment;\n}\n\nexport const useLinkRecord = ({\n attribute,\n isReadOnly,\n onValueSubmit,\n backendValues,\n setBackendValues,\n joinLibraryContext,\n}: IUseLinkRecordProps) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const {t} = useSharedTranslation();\n const antdForm = AntForm.useFormInstance();\n\n const _buildValueToSubmit = (recordId: string) => ({\n id: recordId,\n whoAmI: {id: recordId, library: {id: attribute.linked_library?.id}},\n });\n\n const _handleLinkRecord = async (data: ExplorerSelectionIdsQuery) => {\n let submitRes: ISubmitMultipleResult;\n\n if (attribute.multiple_values) {\n submitRes = await onValueSubmit(\n data.records.list.map(record => ({value: _buildValueToSubmit(record.id), idValue: null, attribute})),\n null,\n );\n } else {\n submitRes = await onValueSubmit(\n [\n {\n value: _buildValueToSubmit(data.records.list[0].id),\n idValue: backendValues[0]?.id_value ?? null,\n attribute,\n },\n ],\n null,\n );\n }\n\n if (submitRes.status === APICallStatus.SUCCESS) {\n const linkValues = submitRes.values as unknown as RecordFormElementsValueLinkValue[];\n\n if (attribute.multiple_values) {\n setBackendValues(previousBackendValues => [...previousBackendValues, ...linkValues]);\n } else {\n setBackendValues([linkValues[0]]);\n }\n }\n\n if (submitRes.status === APICallStatus.ERROR) {\n antdForm.setFields([\n {\n name: attribute.id,\n errors: [submitRes.error],\n },\n ]);\n }\n };\n\n const isReplacementMode = backendValues.length > 0 && !attribute.multiple_values;\n\n const linkedLibraryId =\n joinLibraryContext &&\n 'linked_library' in joinLibraryContext.mandatoryAttribute &&\n joinLibraryContext.mandatoryAttribute.linked_library?.id;\n\n const linkedTreeId =\n joinLibraryContext &&\n 'linked_tree' in joinLibraryContext.mandatoryAttribute &&\n joinLibraryContext.mandatoryAttribute.linked_tree?.id;\n\n const isValuesListEnabled = attribute.linkValuesList?.enable;\n\n const valuesList = isValuesListEnabled ? attribute.linkValuesList?.values?.map(value => value.id) : undefined;\n\n const allowFreeEntry = isValuesListEnabled ? Boolean(attribute.linkValuesList?.allowFreeEntry) : true;\n\n return {\n LinkRecordButton: !isReadOnly ? (\n <>\n <KitTooltip title={isReplacementMode ? t('global.replace') : t('global.add')}>\n <KitButton\n type=\"secondary\"\n size=\"m\"\n icon={<FontAwesomeIcon icon={faPlus} />}\n onClick={() => {\n setIsModalOpen(true);\n }}\n />\n </KitTooltip>\n {linkedTreeId ? (\n <SelectTreeNodeModal\n open={isModalOpen}\n attribute={{\n multiple_values: attribute.multiple_values,\n linked_tree: {\n id: linkedTreeId,\n },\n }}\n title={t(\n attribute.multiple_values ? 'tree-node-selection.title_many' : 'tree-node-selection.title',\n )}\n // We can select new node(s), ignoring current value(s).\n // Selected element might be duplicated in link attribute in backend for now.\n backendValues={[]}\n onClose={() => setIsModalOpen(false)}\n onConfirm={async selectedNodes => {\n const nodeIds = selectedNodes.map(node => node.id);\n await _handleLinkRecord({records: {list: nodeIds.map(id => ({id}))}});\n }}\n />\n ) : (\n <SelectRecordForLinkModal\n className={LINK_RECORDS_MODAL_CLASSNAME}\n open={isModalOpen}\n childLibraryId={linkedLibraryId || attribute.linked_library?.id}\n onSelectionCompleted={async data => {\n await _handleLinkRecord(data);\n setIsModalOpen(false);\n }}\n columnsToDisplay={[]} // TODO: One day, we should be able to choose the columns to display from a given viewId\n replacementMode={isReplacementMode}\n selectionMode={!attribute.multiple_values ? 'simple' : 'multiple'}\n hideSelectAllAction={!attribute.multiple_values}\n valuesList={valuesList}\n allowFreeEntry={allowFreeEntry}\n isMultivalue={attribute.multiple_values}\n onClose={() => setIsModalOpen(false)}\n joinLibraryContext={joinLibraryContext}\n />\n )}\n </>\n ) : undefined,\n };\n};\n"]}
@@ -4,7 +4,6 @@ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
4
4
  import { faLayerGroup, faSquareRootAlt } from '@fortawesome/free-solid-svg-icons';
5
5
  import styled from 'styled-components';
6
6
  import { useSharedTranslation } from '../../../../../hooks/useSharedTranslation';
7
- import { TOOLTIP_DEFAULT_DELAY_IN_SECONDS } from '../../../../../constants';
8
7
  const ComputeIndicatorWrapper = styled.div `
9
8
  font-size: calc(var(--general-typography-fontSize7) * 1px);
10
9
  `;
@@ -12,6 +11,6 @@ export const ComputeIndicator = ({ calculatedFlags, inheritedFlags }) => {
12
11
  const { t } = useSharedTranslation();
13
12
  const shouldDisplayComputedIcon = calculatedFlags.isCalculatedNotOverrideValues || inheritedFlags.isInheritedNotOverrideValues;
14
13
  const shouldDisplayOverridedIcon = calculatedFlags.isCalculatedOverrideValues || inheritedFlags.isInheritedOverrideValues;
15
- return (_jsxs(ComputeIndicatorWrapper, { children: [shouldDisplayComputedIcon && (_jsx(KitTooltip, { title: t('record_edition.calculated_value'), mouseEnterDelay: TOOLTIP_DEFAULT_DELAY_IN_SECONDS, children: _jsx(FontAwesomeIcon, { icon: faSquareRootAlt }) })), shouldDisplayOverridedIcon && (_jsx(KitTooltip, { title: t('record_edition.overrided_value'), mouseEnterDelay: TOOLTIP_DEFAULT_DELAY_IN_SECONDS, children: _jsx(FontAwesomeIcon, { icon: faLayerGroup }) }))] }));
14
+ return (_jsxs(ComputeIndicatorWrapper, { children: [shouldDisplayComputedIcon && (_jsx(KitTooltip, { title: t('record_edition.calculated_value'), children: _jsx(FontAwesomeIcon, { icon: faSquareRootAlt }) })), shouldDisplayOverridedIcon && (_jsx(KitTooltip, { title: t('record_edition.overrided_value'), children: _jsx(FontAwesomeIcon, { icon: faLayerGroup }) }))] }));
16
15
  };
17
16
  //# sourceMappingURL=ComputeIndicator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComputeIndicator.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AACtC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAE,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAChF,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,gCAAgC,EAAC,MAAM,eAAe,CAAC;AAE/D,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAA;;CAEzC,CAAC;AAOF,MAAM,CAAC,MAAM,gBAAgB,GAA8C,CAAC,EAAC,eAAe,EAAE,cAAc,EAAC,EAAE,EAAE;IAC7G,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,MAAM,yBAAyB,GAC3B,eAAe,CAAC,6BAA6B,IAAI,cAAc,CAAC,4BAA4B,CAAC;IACjG,MAAM,0BAA0B,GAC5B,eAAe,CAAC,0BAA0B,IAAI,cAAc,CAAC,yBAAyB,CAAC;IAE3F,OAAO,CACH,MAAC,uBAAuB,eACnB,yBAAyB,IAAI,CAC1B,KAAC,UAAU,IACP,KAAK,EAAE,CAAC,CAAC,iCAAiC,CAAC,EAC3C,eAAe,EAAE,gCAAgC,YAEjD,KAAC,eAAe,IAAC,IAAI,EAAE,eAAe,GAAI,GACjC,CAChB,EACA,0BAA0B,IAAI,CAC3B,KAAC,UAAU,IACP,KAAK,EAAE,CAAC,CAAC,gCAAgC,CAAC,EAC1C,eAAe,EAAE,gCAAgC,YAEjD,KAAC,eAAe,IAAC,IAAI,EAAE,YAAY,GAAI,GAC9B,CAChB,IACqB,CAC7B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {type FunctionComponent} from 'react';\nimport {type CalculatedFlags, type InheritedFlags} from './calculatedInheritedFlags';\nimport {KitTooltip} from 'aristid-ds';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faLayerGroup, faSquareRootAlt} from '@fortawesome/free-solid-svg-icons';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {TOOLTIP_DEFAULT_DELAY_IN_SECONDS} from '_ui/constants';\n\nconst ComputeIndicatorWrapper = styled.div`\n font-size: calc(var(--general-typography-fontSize7) * 1px);\n`;\n\ninterface IComputeIndicatorProps {\n calculatedFlags: CalculatedFlags;\n inheritedFlags: InheritedFlags;\n}\n\nexport const ComputeIndicator: FunctionComponent<IComputeIndicatorProps> = ({calculatedFlags, inheritedFlags}) => {\n const {t} = useSharedTranslation();\n\n const shouldDisplayComputedIcon =\n calculatedFlags.isCalculatedNotOverrideValues || inheritedFlags.isInheritedNotOverrideValues;\n const shouldDisplayOverridedIcon =\n calculatedFlags.isCalculatedOverrideValues || inheritedFlags.isInheritedOverrideValues;\n\n return (\n <ComputeIndicatorWrapper>\n {shouldDisplayComputedIcon && (\n <KitTooltip\n title={t('record_edition.calculated_value')}\n mouseEnterDelay={TOOLTIP_DEFAULT_DELAY_IN_SECONDS}\n >\n <FontAwesomeIcon icon={faSquareRootAlt} />\n </KitTooltip>\n )}\n {shouldDisplayOverridedIcon && (\n <KitTooltip\n title={t('record_edition.overrided_value')}\n mouseEnterDelay={TOOLTIP_DEFAULT_DELAY_IN_SECONDS}\n >\n <FontAwesomeIcon icon={faLayerGroup} />\n </KitTooltip>\n )}\n </ComputeIndicatorWrapper>\n );\n};\n"]}
1
+ {"version":3,"file":"ComputeIndicator.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAC,UAAU,EAAC,MAAM,YAAY,CAAC;AACtC,OAAO,EAAC,eAAe,EAAC,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAC,YAAY,EAAE,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAChF,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAEpE,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAA;;CAEzC,CAAC;AAOF,MAAM,CAAC,MAAM,gBAAgB,GAA8C,CAAC,EAAC,eAAe,EAAE,cAAc,EAAC,EAAE,EAAE;IAC7G,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,MAAM,yBAAyB,GAC3B,eAAe,CAAC,6BAA6B,IAAI,cAAc,CAAC,4BAA4B,CAAC;IACjG,MAAM,0BAA0B,GAC5B,eAAe,CAAC,0BAA0B,IAAI,cAAc,CAAC,yBAAyB,CAAC;IAE3F,OAAO,CACH,MAAC,uBAAuB,eACnB,yBAAyB,IAAI,CAC1B,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,iCAAiC,CAAC,YACnD,KAAC,eAAe,IAAC,IAAI,EAAE,eAAe,GAAI,GACjC,CAChB,EACA,0BAA0B,IAAI,CAC3B,KAAC,UAAU,IAAC,KAAK,EAAE,CAAC,CAAC,gCAAgC,CAAC,YAClD,KAAC,eAAe,IAAC,IAAI,EAAE,YAAY,GAAI,GAC9B,CAChB,IACqB,CAC7B,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {type FunctionComponent} from 'react';\nimport {type CalculatedFlags, type InheritedFlags} from './calculatedInheritedFlags';\nimport {KitTooltip} from 'aristid-ds';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {faLayerGroup, faSquareRootAlt} from '@fortawesome/free-solid-svg-icons';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\n\nconst ComputeIndicatorWrapper = styled.div`\n font-size: calc(var(--general-typography-fontSize7) * 1px);\n`;\n\ninterface IComputeIndicatorProps {\n calculatedFlags: CalculatedFlags;\n inheritedFlags: InheritedFlags;\n}\n\nexport const ComputeIndicator: FunctionComponent<IComputeIndicatorProps> = ({calculatedFlags, inheritedFlags}) => {\n const {t} = useSharedTranslation();\n\n const shouldDisplayComputedIcon =\n calculatedFlags.isCalculatedNotOverrideValues || inheritedFlags.isInheritedNotOverrideValues;\n const shouldDisplayOverridedIcon =\n calculatedFlags.isCalculatedOverrideValues || inheritedFlags.isInheritedOverrideValues;\n\n return (\n <ComputeIndicatorWrapper>\n {shouldDisplayComputedIcon && (\n <KitTooltip title={t('record_edition.calculated_value')}>\n <FontAwesomeIcon icon={faSquareRootAlt} />\n </KitTooltip>\n )}\n {shouldDisplayOverridedIcon && (\n <KitTooltip title={t('record_edition.overrided_value')}>\n <FontAwesomeIcon icon={faLayerGroup} />\n </KitTooltip>\n )}\n </ComputeIndicatorWrapper>\n );\n};\n"]}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
2
  import { useSharedTranslation } from '../../../../../hooks/useSharedTranslation';
3
- import { useConfirmModal } from '../../../../../hooks/useConfirmModal';
3
+ import { useConfirmModal } from '../../../../../hooks/useConfirmModal/useConfirmModal';
4
4
  import { KitButton } from 'aristid-ds';
5
5
  export const DeleteAllValuesButton = ({ handleDelete, disabled, danger, }) => {
6
6
  const { t } = useSharedTranslation();
@@ -1 +1 @@
1
- {"version":3,"file":"DeleteAllValuesButton.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AASrC,MAAM,CAAC,MAAM,qBAAqB,GAAmD,CAAC,EAClF,YAAY,EACZ,QAAQ,EACR,MAAM,GACT,EAAE,EAAE;IACD,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,gBAAgB,EAAC,GAAG,eAAe,EAAE,CAAC;IAE7C,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACjC,gBAAgB,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,kCAAkC,CAAC;YAC5C,OAAO,EAAE,CAAC,CAAC,0CAA0C,CAAC;YACtD,aAAa,EAAE,IAAI;YACnB,IAAI,EAAE,YAAY;SACrB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,SAAS,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YACnG,CAAC,CAAC,2BAA2B,CAAC,GACvB,CACf,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal';\nimport {KitButton} from 'aristid-ds';\nimport {type FunctionComponent} from 'react';\n\ninterface IDeleteAllValuesButtonProps {\n handleDelete: () => void;\n disabled?: boolean;\n danger?: boolean;\n}\n\nexport const DeleteAllValuesButton: FunctionComponent<IDeleteAllValuesButtonProps> = ({\n handleDelete,\n disabled,\n danger,\n}) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const _confirmDeleteAllValues = () => {\n openConfirmModal({\n title: t('record_edition.delete_all_values'),\n content: t('record_edition.delete_all_values_confirm'),\n dangerConfirm: true,\n onOk: handleDelete,\n });\n };\n\n return (\n <KitButton type=\"tertiary\" size=\"s\" onClick={_confirmDeleteAllValues} disabled={disabled} danger={danger}>\n {t('record_edition.delete_all')}\n </KitButton>\n );\n};\n"]}
1
+ {"version":3,"file":"DeleteAllValuesButton.js","sourceRoot":"","sources":["../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,2CAA2C,CAAC;AAC1E,OAAO,EAAC,SAAS,EAAC,MAAM,YAAY,CAAC;AASrC,MAAM,CAAC,MAAM,qBAAqB,GAAmD,CAAC,EAClF,YAAY,EACZ,QAAQ,EACR,MAAM,GACT,EAAE,EAAE;IACD,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,gBAAgB,EAAC,GAAG,eAAe,EAAE,CAAC;IAE7C,MAAM,uBAAuB,GAAG,GAAG,EAAE;QACjC,gBAAgB,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,kCAAkC,CAAC;YAC5C,OAAO,EAAE,CAAC,CAAC,0CAA0C,CAAC;YACtD,aAAa,EAAE,IAAI;YACnB,IAAI,EAAE,YAAY;SACrB,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,SAAS,IAAC,IAAI,EAAC,UAAU,EAAC,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,YACnG,CAAC,CAAC,2BAA2B,CAAC,GACvB,CACf,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal/useConfirmModal';\nimport {KitButton} from 'aristid-ds';\nimport {type FunctionComponent} from 'react';\n\ninterface IDeleteAllValuesButtonProps {\n handleDelete: () => void;\n disabled?: boolean;\n danger?: boolean;\n}\n\nexport const DeleteAllValuesButton: FunctionComponent<IDeleteAllValuesButtonProps> = ({\n handleDelete,\n disabled,\n danger,\n}) => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const _confirmDeleteAllValues = () => {\n openConfirmModal({\n title: t('record_edition.delete_all_values'),\n content: t('record_edition.delete_all_values_confirm'),\n dangerConfirm: true,\n onOk: handleDelete,\n });\n };\n\n return (\n <KitButton type=\"tertiary\" size=\"s\" onClick={_confirmDeleteAllValues} disabled={disabled} danger={danger}>\n {t('record_edition.delete_all')}\n </KitButton>\n );\n};\n"]}
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { KitSpace, KitTypography } from 'aristid-ds';
3
3
  import { useSharedTranslation } from '../../../../hooks/useSharedTranslation';
4
- import { useConfirmModal } from '../../../../hooks/useConfirmModal';
4
+ import { useConfirmModal } from '../../../../hooks/useConfirmModal/useConfirmModal';
5
5
  export const useCreateCancelConfirm = onConfirm => {
6
6
  const { t } = useSharedTranslation();
7
7
  const { openConfirmModal } = useConfirmModal();
@@ -1 +1 @@
1
- {"version":3,"file":"useCreateCancelConfirm.js","sourceRoot":"","sources":["../../../../../src/components/RecordEdition/hooks/useCreateCancelConfirm/useCreateCancelConfirm.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AACnD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,2BAA2B,CAAC;AAI1D,MAAM,CAAC,MAAM,sBAAsB,GAA+B,SAAS,CAAC,EAAE;IAC1E,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,gBAAgB,EAAC,GAAG,eAAe,EAAE,CAAC;IAE7C,MAAM,cAAc,GAAG,CACnB,MAAC,QAAQ,IAAC,SAAS,EAAC,UAAU,aAC1B,yBAAO,CAAC,CAAC,6CAA6C,CAAC,GAAQ,EAC/D,KAAC,aAAa,CAAC,IAAI,IAAC,MAAM,EAAC,QAAQ,YAAE,CAAC,CAAC,8CAA8C,CAAC,GAAsB,IACrG,CACd,CAAC;IAEF,OAAO,GAAG,EAAE;QACR,gBAAgB,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,2CAA2C,CAAC;YACrD,OAAO,EAAE,cAAc;YACvB,aAAa,EAAE,IAAI;YACnB,IAAI,EAAE,SAAS;SAClB,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {KitSpace, KitTypography} from 'aristid-ds';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal';\n\nexport type UseCreateCancelConfirmHook = (onConfirm: () => void) => () => void;\n\nexport const useCreateCancelConfirm: UseCreateCancelConfirmHook = onConfirm => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const confirmContent = (\n <KitSpace direction=\"vertical\">\n <span>{t('record_edition.cancel_confirm_modal_content')}</span>\n <KitTypography.Text weight=\"medium\">{t('record_edition.cancel_confirm_modal_question')}</KitTypography.Text>\n </KitSpace>\n );\n\n return () => {\n openConfirmModal({\n title: t('record_edition.cancel_confirm_modal_title'),\n content: confirmContent,\n dangerConfirm: true,\n onOk: onConfirm,\n });\n };\n};\n"]}
1
+ {"version":3,"file":"useCreateCancelConfirm.js","sourceRoot":"","sources":["../../../../../src/components/RecordEdition/hooks/useCreateCancelConfirm/useCreateCancelConfirm.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,QAAQ,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AACnD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,eAAe,EAAC,MAAM,2CAA2C,CAAC;AAI1E,MAAM,CAAC,MAAM,sBAAsB,GAA+B,SAAS,CAAC,EAAE;IAC1E,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,gBAAgB,EAAC,GAAG,eAAe,EAAE,CAAC;IAE7C,MAAM,cAAc,GAAG,CACnB,MAAC,QAAQ,IAAC,SAAS,EAAC,UAAU,aAC1B,yBAAO,CAAC,CAAC,6CAA6C,CAAC,GAAQ,EAC/D,KAAC,aAAa,CAAC,IAAI,IAAC,MAAM,EAAC,QAAQ,YAAE,CAAC,CAAC,8CAA8C,CAAC,GAAsB,IACrG,CACd,CAAC;IAEF,OAAO,GAAG,EAAE;QACR,gBAAgB,CAAC;YACb,KAAK,EAAE,CAAC,CAAC,2CAA2C,CAAC;YACrD,OAAO,EAAE,cAAc;YACvB,aAAa,EAAE,IAAI;YACnB,IAAI,EAAE,SAAS;SAClB,CAAC,CAAC;IACP,CAAC,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {KitSpace, KitTypography} from 'aristid-ds';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {useConfirmModal} from '_ui/hooks/useConfirmModal/useConfirmModal';\n\nexport type UseCreateCancelConfirmHook = (onConfirm: () => void) => () => void;\n\nexport const useCreateCancelConfirm: UseCreateCancelConfirmHook = onConfirm => {\n const {t} = useSharedTranslation();\n const {openConfirmModal} = useConfirmModal();\n\n const confirmContent = (\n <KitSpace direction=\"vertical\">\n <span>{t('record_edition.cancel_confirm_modal_content')}</span>\n <KitTypography.Text weight=\"medium\">{t('record_edition.cancel_confirm_modal_question')}</KitTypography.Text>\n </KitSpace>\n );\n\n return () => {\n openConfirmModal({\n title: t('record_edition.cancel_confirm_modal_title'),\n content: confirmContent,\n dangerConfirm: true,\n onOk: onConfirm,\n });\n };\n};\n"]}
@@ -3,7 +3,7 @@ import { localizedTranslation } from '@leav/utils';
3
3
  import { useSharedTranslation } from '../../hooks/useSharedTranslation';
4
4
  import { useTreeDataQueryQuery, } from '../../_gqlTypes';
5
5
  import { ErrorDisplay } from '../..';
6
- import useLang from '../../hooks/useLang';
6
+ import useLang from '../../hooks/useLang/useLang';
7
7
  import { SelectTreeNodeContent } from './SelectTreeNodeContent';
8
8
  import { SelectTreeNodeContentSkeleton } from './SelectTreeNodeContentSkeleton';
9
9
  export const SelectTreeNode = ({ treeId, childrenAsRecordValuePermissionFilter, dependentValuesPermissionFilter, onSelect, onCheck, selectedNodes, disabledNodes, selectableLibraries, multiple = false, checkStrictly = true, checkable = false, canSelectRoot = false, showSelectChildrenButton = false, }) => {
@@ -1 +1 @@
1
- {"version":3,"file":"SelectTreeNode.js","sourceRoot":"","sources":["../../../src/components/SelectTreeNode/SelectTreeNode.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAGH,qBAAqB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,YAAY,EAAC,MAAM,OAAO,CAAC;AACnC,OAAO,OAAO,MAAM,qBAAqB,CAAC;AAE1C,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,6BAA6B,EAAC,MAAM,iCAAiC,CAAC;AAkB9E,MAAM,CAAC,MAAM,cAAc,GAA4C,CAAC,EACpE,MAAM,EACN,qCAAqC,EACrC,+BAA+B,EAC/B,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,QAAQ,GAAG,KAAK,EAChB,aAAa,GAAG,IAAI,EACpB,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,wBAAwB,GAAG,KAAK,GACnC,EAAE,EAAE;IACD,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IACzB,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,GAAG,qBAAqB,CAAC;QACjD,SAAS,EAAE,EAAC,MAAM,EAAC;KACtB,CAAC,CAAC;IAEH,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,KAAC,6BAA6B,KAAG,CAAC;IAC7C,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAC,MAAM,EAAC,CAAC,GAAI,CAAC;IACxE,CAAC;IAED,OAAO,CACH,KAAC,qBAAqB,IAClB,QAAQ,EAAE,EAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,EAAC,EAC7F,qCAAqC,EAAE,qCAAqC,EAC5E,+BAA+B,EAAE,+BAA+B,EAChE,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,wBAAwB,EAAE,wBAAwB,GACpD,CACL,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {type FunctionComponent} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type ChildrenAsRecordValuePermissionFilterInput,\n type DependentValuesPermissionFilterInput,\n useTreeDataQueryQuery,\n} from '_ui/_gqlTypes';\nimport {ErrorDisplay} from '../..';\nimport useLang from '../../hooks/useLang';\nimport {type ITreeNodeWithRecord} from '../../types/trees';\nimport {SelectTreeNodeContent} from './SelectTreeNodeContent';\nimport {SelectTreeNodeContentSkeleton} from './SelectTreeNodeContentSkeleton';\n\ninterface ISelectTreeNodeProps {\n treeId: string;\n childrenAsRecordValuePermissionFilter?: ChildrenAsRecordValuePermissionFilterInput;\n dependentValuesPermissionFilter?: DependentValuesPermissionFilterInput;\n onSelect: (node: ITreeNodeWithRecord, selected: boolean) => void;\n onCheck?: (selection: ITreeNodeWithRecord[]) => void;\n selectedNodes?: string[];\n disabledNodes?: string[];\n selectableLibraries?: string[]; // all by default\n multiple?: boolean;\n checkStrictly?: boolean;\n checkable?: boolean;\n canSelectRoot?: boolean;\n showSelectChildrenButton?: boolean;\n}\n\nexport const SelectTreeNode: FunctionComponent<ISelectTreeNodeProps> = ({\n treeId,\n childrenAsRecordValuePermissionFilter,\n dependentValuesPermissionFilter,\n onSelect,\n onCheck,\n selectedNodes,\n disabledNodes,\n selectableLibraries,\n multiple = false,\n checkStrictly = true,\n checkable = false,\n canSelectRoot = false,\n showSelectChildrenButton = false,\n}) => {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {loading, error, data} = useTreeDataQueryQuery({\n variables: {treeId},\n });\n\n if (loading) {\n return <SelectTreeNodeContentSkeleton />;\n }\n\n if (error) {\n return <ErrorDisplay message={error.message} />;\n }\n\n if (!data?.trees.list[0]) {\n return <ErrorDisplay message={t('error.unknown_tree', {treeId})} />;\n }\n\n return (\n <SelectTreeNodeContent\n treeData={{id: treeId, label: localizedTranslation(data.trees.list[0].label, lang) || treeId}}\n childrenAsRecordValuePermissionFilter={childrenAsRecordValuePermissionFilter}\n dependentValuesPermissionFilter={dependentValuesPermissionFilter}\n onCheck={onCheck}\n onSelect={onSelect}\n multiple={multiple}\n checkable={checkable}\n checkStrictly={checkStrictly}\n selectedNodes={selectedNodes}\n disabledNodes={disabledNodes}\n canSelectRoot={canSelectRoot}\n selectableLibraries={selectableLibraries}\n showSelectChildrenButton={showSelectChildrenButton}\n />\n );\n};\n"]}
1
+ {"version":3,"file":"SelectTreeNode.js","sourceRoot":"","sources":["../../../src/components/SelectTreeNode/SelectTreeNode.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAGH,qBAAqB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,YAAY,EAAC,MAAM,OAAO,CAAC;AACnC,OAAO,OAAO,MAAM,6BAA6B,CAAC;AAElD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,6BAA6B,EAAC,MAAM,iCAAiC,CAAC;AAkB9E,MAAM,CAAC,MAAM,cAAc,GAA4C,CAAC,EACpE,MAAM,EACN,qCAAqC,EACrC,+BAA+B,EAC/B,QAAQ,EACR,OAAO,EACP,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,QAAQ,GAAG,KAAK,EAChB,aAAa,GAAG,IAAI,EACpB,SAAS,GAAG,KAAK,EACjB,aAAa,GAAG,KAAK,EACrB,wBAAwB,GAAG,KAAK,GACnC,EAAE,EAAE;IACD,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IACzB,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,GAAG,qBAAqB,CAAC;QACjD,SAAS,EAAE,EAAC,MAAM,EAAC;KACtB,CAAC,CAAC;IAEH,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,KAAC,6BAA6B,KAAG,CAAC;IAC7C,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC;IACpD,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,CAAC,CAAC,oBAAoB,EAAE,EAAC,MAAM,EAAC,CAAC,GAAI,CAAC;IACxE,CAAC;IAED,OAAO,CACH,KAAC,qBAAqB,IAClB,QAAQ,EAAE,EAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,EAAC,EAC7F,qCAAqC,EAAE,qCAAqC,EAC5E,+BAA+B,EAAE,+BAA+B,EAChE,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,aAAa,EAC5B,mBAAmB,EAAE,mBAAmB,EACxC,wBAAwB,EAAE,wBAAwB,GACpD,CACL,CAAC;AACN,CAAC,CAAC","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {type FunctionComponent} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type ChildrenAsRecordValuePermissionFilterInput,\n type DependentValuesPermissionFilterInput,\n useTreeDataQueryQuery,\n} from '_ui/_gqlTypes';\nimport {ErrorDisplay} from '../..';\nimport useLang from '../../hooks/useLang/useLang';\nimport {type ITreeNodeWithRecord} from '../../types/trees';\nimport {SelectTreeNodeContent} from './SelectTreeNodeContent';\nimport {SelectTreeNodeContentSkeleton} from './SelectTreeNodeContentSkeleton';\n\ninterface ISelectTreeNodeProps {\n treeId: string;\n childrenAsRecordValuePermissionFilter?: ChildrenAsRecordValuePermissionFilterInput;\n dependentValuesPermissionFilter?: DependentValuesPermissionFilterInput;\n onSelect: (node: ITreeNodeWithRecord, selected: boolean) => void;\n onCheck?: (selection: ITreeNodeWithRecord[]) => void;\n selectedNodes?: string[];\n disabledNodes?: string[];\n selectableLibraries?: string[]; // all by default\n multiple?: boolean;\n checkStrictly?: boolean;\n checkable?: boolean;\n canSelectRoot?: boolean;\n showSelectChildrenButton?: boolean;\n}\n\nexport const SelectTreeNode: FunctionComponent<ISelectTreeNodeProps> = ({\n treeId,\n childrenAsRecordValuePermissionFilter,\n dependentValuesPermissionFilter,\n onSelect,\n onCheck,\n selectedNodes,\n disabledNodes,\n selectableLibraries,\n multiple = false,\n checkStrictly = true,\n checkable = false,\n canSelectRoot = false,\n showSelectChildrenButton = false,\n}) => {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {loading, error, data} = useTreeDataQueryQuery({\n variables: {treeId},\n });\n\n if (loading) {\n return <SelectTreeNodeContentSkeleton />;\n }\n\n if (error) {\n return <ErrorDisplay message={error.message} />;\n }\n\n if (!data?.trees.list[0]) {\n return <ErrorDisplay message={t('error.unknown_tree', {treeId})} />;\n }\n\n return (\n <SelectTreeNodeContent\n treeData={{id: treeId, label: localizedTranslation(data.trees.list[0].label, lang) || treeId}}\n childrenAsRecordValuePermissionFilter={childrenAsRecordValuePermissionFilter}\n dependentValuesPermissionFilter={dependentValuesPermissionFilter}\n onCheck={onCheck}\n onSelect={onSelect}\n multiple={multiple}\n checkable={checkable}\n checkStrictly={checkStrictly}\n selectedNodes={selectedNodes}\n disabledNodes={disabledNodes}\n canSelectRoot={canSelectRoot}\n selectableLibraries={selectableLibraries}\n showSelectChildrenButton={showSelectChildrenButton}\n />\n );\n};\n"]}
@@ -5,7 +5,7 @@ import { KitNotification } from 'aristid-ds';
5
5
  import { useState } from 'react';
6
6
  import { useSharedTranslation } from '../../hooks/useSharedTranslation';
7
7
  import { useForcePreviewsGenerationMutation, useGetLibraryPreviewsSettingsQuery, } from '../../_gqlTypes';
8
- import useLang from '../../hooks/useLang';
8
+ import useLang from '../../hooks/useLang/useLang';
9
9
  import { ErrorDisplay } from '../ErrorDisplay';
10
10
  import { Loading } from '../Loading';
11
11
  import { INFO_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION } from '../../constants';
@@ -1 +1 @@
1
- {"version":3,"file":"TriggerPreviewsGenerationModal.js","sourceRoot":"","sources":["../../../src/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {Checkbox, Divider, Modal, Tree} from 'antd';\nimport {KitNotification} from 'aristid-ds';\nimport {useState} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type RecordFilterInput,\n useForcePreviewsGenerationMutation,\n useGetLibraryPreviewsSettingsQuery,\n} from '_ui/_gqlTypes';\nimport useLang from '../../hooks/useLang';\nimport {ErrorDisplay} from '../ErrorDisplay';\nimport {Loading} from '../Loading';\nimport {INFO_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION} from '_ui/constants';\n\ninterface ITriggerPreviewsGenerationModalProps {\n libraryId: string;\n filesLibraryId?: string;\n recordIds?: string[];\n filters?: RecordFilterInput[];\n onClose: () => void;\n}\n\nfunction TriggerPreviewsGenerationModal({\n libraryId,\n filesLibraryId,\n recordIds,\n filters,\n onClose,\n}: ITriggerPreviewsGenerationModalProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const [isFailedOnlyChecked, setIsFailedOnlyChecked] = useState(false);\n const [checkedSizes, setCheckedSizes] = useState<string[]>([]);\n const [treeData, setTreeData] = useState([]);\n const [allSizes, setAllSizes] = useState<string[]>([]);\n\n const [startPreviewsGeneration, {loading}] = useForcePreviewsGenerationMutation();\n\n const {error: getLibrariesError, loading: getLibrariesLoading} = useGetLibraryPreviewsSettingsQuery({\n variables: {id: filesLibraryId || libraryId},\n onCompleted: getLibrariesData => {\n const previewSettings = getLibrariesData.libraries.list?.[0].previewsSettings || [];\n const sizes = [];\n\n const td = previewSettings.map(s => {\n const children = s.versions.sizes.map(vs => ({title: `${vs.name} (${vs.size}px)`, key: vs.name}));\n sizes.push(...children.map(c => c.key));\n\n return {\n title: localizedTranslation(s.label, lang),\n key: localizedTranslation(s.label, lang),\n children,\n };\n });\n\n setTreeData(td);\n setAllSizes(sizes);\n },\n });\n\n const _triggerPreviewsGeneration = async () => {\n try {\n const result = await startPreviewsGeneration({\n variables: {\n libraryId,\n recordIds,\n filters: filters ?? null,\n failedOnly: isFailedOnlyChecked,\n previewVersionSizeNames: checkedSizes,\n },\n });\n\n const isSuccess = result.data?.forcePreviewsGeneration ?? false;\n\n if (isSuccess) {\n KitNotification.success({\n closable: true,\n description: null,\n message: t('files.previews_generation_success'),\n duration: SUCCESS_NOTIFICATION_DURATION,\n });\n } else {\n KitNotification.info({\n closable: true,\n description: null,\n message: t('files.previews_generation_nothing_to_do'),\n duration: INFO_NOTIFICATION_DURATION,\n });\n }\n\n onClose();\n } catch (e) {\n // Nothing to do here, error should be handled globally by Apollo. Uncomment next line for easier debugging\n // console.error(e);\n }\n };\n\n const _handleFailedOnlyChange = () => {\n setIsFailedOnlyChecked(!isFailedOnlyChecked);\n };\n\n const onCheck = (_, {checkedNodes}) => {\n const checked = checkedNodes.filter(n => !n.children).map(n => n.key) as string[]; // we keep only sizes name\n\n setCheckedSizes(checked);\n };\n\n const onChange = () => {\n if (checkedSizes.length === allSizes.length) {\n setCheckedSizes([]);\n } else {\n setCheckedSizes(allSizes);\n }\n };\n\n return (\n <Modal\n open\n title={t('files.generate_previews')}\n cancelText={t('global.cancel')}\n okText={t('global.submit')}\n onCancel={onClose}\n width={600}\n onOk={_triggerPreviewsGeneration}\n okButtonProps={{\n disabled: !checkedSizes.length,\n }}\n confirmLoading={loading}\n >\n {getLibrariesLoading && <Loading />}\n {!getLibrariesLoading && getLibrariesError && <ErrorDisplay message={getLibrariesError.message} />}\n {!getLibrariesLoading && !getLibrariesError && (\n <>\n <Checkbox onChange={onChange} checked={checkedSizes.length === allSizes.length}>\n {t('files.previews_generation_select_all')}\n </Checkbox>\n <Tree\n checkable\n onCheck={onCheck}\n checkedKeys={checkedSizes}\n selectable={false}\n treeData={treeData}\n />\n <Divider />\n <Checkbox onChange={_handleFailedOnlyChange} checked={isFailedOnlyChecked} aria-label=\"failed-only\">\n {t('files.previews_generation_failed_only')}\n </Checkbox>\n </>\n )}\n </Modal>\n );\n}\n\nexport default TriggerPreviewsGenerationModal;\n"]}
1
+ {"version":3,"file":"TriggerPreviewsGenerationModal.js","sourceRoot":"","sources":["../../../src/components/TriggerPreviewsGenerationModal/TriggerPreviewsGenerationModal.tsx"],"names":[],"mappings":"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","sourcesContent":["import {localizedTranslation} from '@leav/utils';\nimport {Checkbox, Divider, Modal, Tree} from 'antd';\nimport {KitNotification} from 'aristid-ds';\nimport {useState} from 'react';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {\n type RecordFilterInput,\n useForcePreviewsGenerationMutation,\n useGetLibraryPreviewsSettingsQuery,\n} from '_ui/_gqlTypes';\nimport useLang from '../../hooks/useLang/useLang';\nimport {ErrorDisplay} from '../ErrorDisplay';\nimport {Loading} from '../Loading';\nimport {INFO_NOTIFICATION_DURATION, SUCCESS_NOTIFICATION_DURATION} from '_ui/constants';\n\ninterface ITriggerPreviewsGenerationModalProps {\n libraryId: string;\n filesLibraryId?: string;\n recordIds?: string[];\n filters?: RecordFilterInput[];\n onClose: () => void;\n}\n\nfunction TriggerPreviewsGenerationModal({\n libraryId,\n filesLibraryId,\n recordIds,\n filters,\n onClose,\n}: ITriggerPreviewsGenerationModalProps): JSX.Element {\n const {t} = useSharedTranslation();\n const {lang} = useLang();\n\n const [isFailedOnlyChecked, setIsFailedOnlyChecked] = useState(false);\n const [checkedSizes, setCheckedSizes] = useState<string[]>([]);\n const [treeData, setTreeData] = useState([]);\n const [allSizes, setAllSizes] = useState<string[]>([]);\n\n const [startPreviewsGeneration, {loading}] = useForcePreviewsGenerationMutation();\n\n const {error: getLibrariesError, loading: getLibrariesLoading} = useGetLibraryPreviewsSettingsQuery({\n variables: {id: filesLibraryId || libraryId},\n onCompleted: getLibrariesData => {\n const previewSettings = getLibrariesData.libraries.list?.[0].previewsSettings || [];\n const sizes = [];\n\n const td = previewSettings.map(s => {\n const children = s.versions.sizes.map(vs => ({title: `${vs.name} (${vs.size}px)`, key: vs.name}));\n sizes.push(...children.map(c => c.key));\n\n return {\n title: localizedTranslation(s.label, lang),\n key: localizedTranslation(s.label, lang),\n children,\n };\n });\n\n setTreeData(td);\n setAllSizes(sizes);\n },\n });\n\n const _triggerPreviewsGeneration = async () => {\n try {\n const result = await startPreviewsGeneration({\n variables: {\n libraryId,\n recordIds,\n filters: filters ?? null,\n failedOnly: isFailedOnlyChecked,\n previewVersionSizeNames: checkedSizes,\n },\n });\n\n const isSuccess = result.data?.forcePreviewsGeneration ?? false;\n\n if (isSuccess) {\n KitNotification.success({\n closable: true,\n description: null,\n message: t('files.previews_generation_success'),\n duration: SUCCESS_NOTIFICATION_DURATION,\n });\n } else {\n KitNotification.info({\n closable: true,\n description: null,\n message: t('files.previews_generation_nothing_to_do'),\n duration: INFO_NOTIFICATION_DURATION,\n });\n }\n\n onClose();\n } catch (e) {\n // Nothing to do here, error should be handled globally by Apollo. Uncomment next line for easier debugging\n // console.error(e);\n }\n };\n\n const _handleFailedOnlyChange = () => {\n setIsFailedOnlyChecked(!isFailedOnlyChecked);\n };\n\n const onCheck = (_, {checkedNodes}) => {\n const checked = checkedNodes.filter(n => !n.children).map(n => n.key) as string[]; // we keep only sizes name\n\n setCheckedSizes(checked);\n };\n\n const onChange = () => {\n if (checkedSizes.length === allSizes.length) {\n setCheckedSizes([]);\n } else {\n setCheckedSizes(allSizes);\n }\n };\n\n return (\n <Modal\n open\n title={t('files.generate_previews')}\n cancelText={t('global.cancel')}\n okText={t('global.submit')}\n onCancel={onClose}\n width={600}\n onOk={_triggerPreviewsGeneration}\n okButtonProps={{\n disabled: !checkedSizes.length,\n }}\n confirmLoading={loading}\n >\n {getLibrariesLoading && <Loading />}\n {!getLibrariesLoading && getLibrariesError && <ErrorDisplay message={getLibrariesError.message} />}\n {!getLibrariesLoading && !getLibrariesError && (\n <>\n <Checkbox onChange={onChange} checked={checkedSizes.length === allSizes.length}>\n {t('files.previews_generation_select_all')}\n </Checkbox>\n <Tree\n checkable\n onCheck={onCheck}\n checkedKeys={checkedSizes}\n selectable={false}\n treeData={treeData}\n />\n <Divider />\n <Checkbox onChange={_handleFailedOnlyChange} checked={isFailedOnlyChecked} aria-label=\"failed-only\">\n {t('files.previews_generation_failed_only')}\n </Checkbox>\n </>\n )}\n </Modal>\n );\n}\n\nexport default TriggerPreviewsGenerationModal;\n"]}
@@ -8,7 +8,7 @@ import React from 'react';
8
8
  import styled from 'styled-components';
9
9
  import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
10
10
  import { themeVars } from '../../../antdTheme';
11
- import useLang from '../../../hooks/useLang';
11
+ import useLang from '../../../hooks/useLang/useLang';
12
12
  import { SelectTreeNodeModalOld } from '../../SelectTreeNodeModalOld';
13
13
  const Wrapper = styled.div `
14
14
  background: ${themeVars.lightBg};
@@ -1 +1 @@
1
- {"version":3,"file":"VersionTree.js","sourceRoot":"","sources":["../../../../src/components/ValuesVersionConfigurator/VersionTree/VersionTree.tsx"],"names":[],"mappings":"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","sourcesContent":["import {CloseCircleFilled} from '@ant-design/icons';\nimport {faFolderTree} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {localizedTranslation} from '@leav/utils';\nimport {Button, Space, theme} from 'antd';\nimport {type GlobalToken} from 'antd/lib/theme/interface';\nimport React, {type SyntheticEvent} from 'react';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {themeVars} from '../../../antdTheme';\nimport useLang from '../../../hooks/useLang';\nimport {type ITreeNode} from '../../../types/trees';\nimport {type GetVersionableAttributesByLibraryQuery} from '../../../_gqlTypes';\nimport {SelectTreeNodeModalOld} from '../../SelectTreeNodeModalOld';\n\nconst Wrapper = styled.div`\n background: ${themeVars.lightBg};\n padding: 1rem;\n border-radius: 3px;\n margin-bottom: 8px;\n border: 2px solid transparent;\n`;\n\nconst TreeLabel = styled(Space)`\n font-weight: bold;\n font-size: 1em;\n`;\n\nconst SelectedNodeTitle = styled(Button)<{$hasSelection: boolean; $themeToken: GlobalToken}>`\n && {\n width: 100%;\n margin-top: 0.5rem;\n padding: 0.5rem;\n background: ${themeVars.defaultBg};\n border: 1px solid ${themeVars.borderColor};\n border-radius: ${p => p.$themeToken.borderRadius}px;\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n color: ${props => (props.$hasSelection ? themeVars.defaultTextColor : themeVars.secondaryTextColor)};\n align-items: center;\n }\n`;\n\nconst ClearSelectionBtn = styled(CloseCircleFilled)`\n && {\n cursor: pointer;\n color: ${themeVars.secondaryTextColor};\n font-size: 0.8em;\n display: none;\n\n ${SelectedNodeTitle}:hover & {\n display: block;\n }\n }\n`;\n\ninterface IVersionTreeProps {\n tree: GetVersionableAttributesByLibraryQuery['attributes']['list'][0]['versions_conf']['profile']['trees'][0];\n selectedNode: ITreeNode | null;\n readOnly: boolean;\n onNodeChange: (node: ITreeNode | null) => void;\n}\n\nfunction VersionTree({tree, selectedNode, readOnly, onNodeChange}: IVersionTreeProps): JSX.Element {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {token} = theme.useToken();\n\n const [isTreeNodeSelectorOpen, setIsTreeNodeSelectorOpen] = React.useState(false);\n\n const _handleTreeSelect = (node: ITreeNode) => {\n onNodeChange(node);\n };\n\n const _handleClickSelectedNode = () => {\n setIsTreeNodeSelectorOpen(true);\n };\n\n const _handleCloseTreeSelector = () => {\n setIsTreeNodeSelectorOpen(false);\n };\n\n const _handleClearSelection = (e: SyntheticEvent) => {\n e.stopPropagation();\n onNodeChange(null);\n };\n\n const treeLabel = localizedTranslation(tree.label, lang);\n const hasSelection = !!selectedNode;\n\n return (\n <>\n <Wrapper>\n <TreeLabel>\n <FontAwesomeIcon icon={faFolderTree} />\n {treeLabel}\n </TreeLabel>\n <SelectedNodeTitle\n disabled={readOnly}\n onClick={_handleClickSelectedNode}\n $hasSelection={hasSelection}\n $themeToken={token}\n >\n {selectedNode?.title || t('values_version.select_version') + '...'}\n {hasSelection && <ClearSelectionBtn onClick={_handleClearSelection} />}\n </SelectedNodeTitle>\n </Wrapper>\n {isTreeNodeSelectorOpen && (\n <SelectTreeNodeModalOld\n treeId={tree.id}\n onClose={_handleCloseTreeSelector}\n isVisible={isTreeNodeSelectorOpen}\n onSubmit={_handleTreeSelect}\n selectedNodeKey={selectedNode?.id}\n />\n )}\n </>\n );\n}\n\nexport default VersionTree;\n"]}
1
+ {"version":3,"file":"VersionTree.js","sourceRoot":"","sources":["../../../../src/components/ValuesVersionConfigurator/VersionTree/VersionTree.tsx"],"names":[],"mappings":"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","sourcesContent":["import {CloseCircleFilled} from '@ant-design/icons';\nimport {faFolderTree} from '@fortawesome/free-solid-svg-icons';\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome';\nimport {localizedTranslation} from '@leav/utils';\nimport {Button, Space, theme} from 'antd';\nimport {type GlobalToken} from 'antd/lib/theme/interface';\nimport React, {type SyntheticEvent} from 'react';\nimport styled from 'styled-components';\nimport {useSharedTranslation} from '_ui/hooks/useSharedTranslation';\nimport {themeVars} from '../../../antdTheme';\nimport useLang from '../../../hooks/useLang/useLang';\nimport {type ITreeNode} from '../../../types/trees';\nimport {type GetVersionableAttributesByLibraryQuery} from '../../../_gqlTypes';\nimport {SelectTreeNodeModalOld} from '../../SelectTreeNodeModalOld';\n\nconst Wrapper = styled.div`\n background: ${themeVars.lightBg};\n padding: 1rem;\n border-radius: 3px;\n margin-bottom: 8px;\n border: 2px solid transparent;\n`;\n\nconst TreeLabel = styled(Space)`\n font-weight: bold;\n font-size: 1em;\n`;\n\nconst SelectedNodeTitle = styled(Button)<{$hasSelection: boolean; $themeToken: GlobalToken}>`\n && {\n width: 100%;\n margin-top: 0.5rem;\n padding: 0.5rem;\n background: ${themeVars.defaultBg};\n border: 1px solid ${themeVars.borderColor};\n border-radius: ${p => p.$themeToken.borderRadius}px;\n cursor: pointer;\n display: flex;\n justify-content: space-between;\n color: ${props => (props.$hasSelection ? themeVars.defaultTextColor : themeVars.secondaryTextColor)};\n align-items: center;\n }\n`;\n\nconst ClearSelectionBtn = styled(CloseCircleFilled)`\n && {\n cursor: pointer;\n color: ${themeVars.secondaryTextColor};\n font-size: 0.8em;\n display: none;\n\n ${SelectedNodeTitle}:hover & {\n display: block;\n }\n }\n`;\n\ninterface IVersionTreeProps {\n tree: GetVersionableAttributesByLibraryQuery['attributes']['list'][0]['versions_conf']['profile']['trees'][0];\n selectedNode: ITreeNode | null;\n readOnly: boolean;\n onNodeChange: (node: ITreeNode | null) => void;\n}\n\nfunction VersionTree({tree, selectedNode, readOnly, onNodeChange}: IVersionTreeProps): JSX.Element {\n const {lang} = useLang();\n const {t} = useSharedTranslation();\n const {token} = theme.useToken();\n\n const [isTreeNodeSelectorOpen, setIsTreeNodeSelectorOpen] = React.useState(false);\n\n const _handleTreeSelect = (node: ITreeNode) => {\n onNodeChange(node);\n };\n\n const _handleClickSelectedNode = () => {\n setIsTreeNodeSelectorOpen(true);\n };\n\n const _handleCloseTreeSelector = () => {\n setIsTreeNodeSelectorOpen(false);\n };\n\n const _handleClearSelection = (e: SyntheticEvent) => {\n e.stopPropagation();\n onNodeChange(null);\n };\n\n const treeLabel = localizedTranslation(tree.label, lang);\n const hasSelection = !!selectedNode;\n\n return (\n <>\n <Wrapper>\n <TreeLabel>\n <FontAwesomeIcon icon={faFolderTree} />\n {treeLabel}\n </TreeLabel>\n <SelectedNodeTitle\n disabled={readOnly}\n onClick={_handleClickSelectedNode}\n $hasSelection={hasSelection}\n $themeToken={token}\n >\n {selectedNode?.title || t('values_version.select_version') + '...'}\n {hasSelection && <ClearSelectionBtn onClick={_handleClearSelection} />}\n </SelectedNodeTitle>\n </Wrapper>\n {isTreeNodeSelectorOpen && (\n <SelectTreeNodeModalOld\n treeId={tree.id}\n onClose={_handleCloseTreeSelector}\n isVisible={isTreeNodeSelectorOpen}\n onSubmit={_handleTreeSelect}\n selectedNodeKey={selectedNode?.id}\n />\n )}\n </>\n );\n}\n\nexport default VersionTree;\n"]}
@@ -30,7 +30,6 @@ export declare const defaultPaginationPageSize = 20;
30
30
  export declare const GLOBAL_BASE_URL: string;
31
31
  export declare const PREFIX_USER_VIEWS_ORDER_KEY = "user_views_order_";
32
32
  export declare const PREFIX_SHARED_VIEWS_ORDER_KEY = "shared_views_order_";
33
- export declare const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;
34
33
  export declare const INFO_NOTIFICATION_DURATION = 5000;
35
34
  export declare const ERROR_NOTIFICATION_DURATION = 5000;
36
35
  export declare const SUCCESS_NOTIFICATION_DURATION = 5000;
package/dist/constants.js CHANGED
@@ -38,7 +38,6 @@ export const defaultPaginationPageSize = 20;
38
38
  export const GLOBAL_BASE_URL = window.__global_base_url__ || '';
39
39
  export const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';
40
40
  export const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';
41
- export const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;
42
41
  export const INFO_NOTIFICATION_DURATION = 5000;
43
42
  export const ERROR_NOTIFICATION_DURATION = 5000;
44
43
  export const SUCCESS_NOTIFICATION_DURATION = 5000;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017\n// This file is released under LGPL V3\nimport {AttributeFormat, AttributeType} from './_gqlTypes';\n\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nexport enum PreviewSize {\n TINY = 'tiny',\n SMALL = 'small',\n MEDIUM = 'medium',\n BIG = 'big',\n}\n\nexport const ACTIVE_ATTRIBUTE_ID = 'active';\n\nexport const tagColorByAttributeType: {[key in AttributeType]: [border: string, background: string]} = {\n [AttributeType.simple]: ['purple', '#ffe5ff'],\n [AttributeType.simple_link]: ['blue', '#e5e5ff'],\n [AttributeType.advanced]: ['orange', '#fff6e5'],\n [AttributeType.advanced_link]: ['#d4380d', '#fde4dd'],\n [AttributeType.tree]: ['green', '#e5ffe5'],\n};\n\nexport const tagColorByAttributeFormat: {[key in AttributeFormat]: [border: string, background: string]} = {\n [AttributeFormat.boolean]: ['gold', '#fff099'],\n [AttributeFormat.date]: ['blue', '#e5e5ff'],\n [AttributeFormat.date_range]: ['#1d39c4', '#e9ecfc'],\n [AttributeFormat.encrypted]: ['red', '#ffe5e5'],\n [AttributeFormat.extended]: ['magenta', '#ffe5e5'],\n [AttributeFormat.numeric]: ['orange', '#fff6e5'],\n [AttributeFormat.text]: ['green', '#e5ffe5'],\n [AttributeFormat.color]: ['purple', '#ffe5ff'],\n [AttributeFormat.rich_text]: ['#d4380d', '#fde4dd'],\n};\n\nexport enum ErrorDisplayTypes {\n ERROR = 'error',\n PERMISSION_ERROR = 'permission_error',\n PAGE_NOT_FOUND = 'page_not_found_error',\n}\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n interface Window {\n __dynamic_base__?: string;\n __global_base_url__?: string;\n __bugsnag_api_key__?: string;\n __bugsnag_app_version__?: string;\n __bugsnag_release_stage__?: string;\n }\n}\n\nexport const defaultPaginationPageSize = 20;\n\nexport const GLOBAL_BASE_URL = window.__global_base_url__ || '';\n\nexport const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';\nexport const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';\n\nexport const TOOLTIP_DEFAULT_DELAY_IN_SECONDS = 0.5;\n\nexport const INFO_NOTIFICATION_DURATION = 5_000;\nexport const ERROR_NOTIFICATION_DURATION = 5_000;\nexport const SUCCESS_NOTIFICATION_DURATION = 5_000;\nexport const SUBSCRIPTION_NOTIFICATION_DURATION = 10_000;\n\nexport const SUCCESS_ALERT_DURATION = 3_000;\nexport const ERROR_ALERT_DURATION = 5_000;\n\nexport const EDIT_RECORD_SIDEBAR_ID = 'edit_record_sidebar';\n\nexport const STANDARD_FIELD_ID_PREFIX = 'standardfield-';\n\nexport const LINK_FIELD_ID_PREFIX = 'linkfield-';\n\nexport const TREE_FIELD_ID_PREFIX = 'treefield-';\n\nexport const SUBMIT_BUTTONS_PORTAL = 'submit_buttons_portal';\nexport const NEW_RECORD_ID = 'newRecord';\n\nexport const BREAK_TWO_LINES = '\\n\\n';\n"]}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright LEAV Solutions 2017\n// This file is released under LGPL V3\nimport {AttributeFormat, AttributeType} from './_gqlTypes';\n\n// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt\nexport enum PreviewSize {\n TINY = 'tiny',\n SMALL = 'small',\n MEDIUM = 'medium',\n BIG = 'big',\n}\n\nexport const ACTIVE_ATTRIBUTE_ID = 'active';\n\nexport const tagColorByAttributeType: {[key in AttributeType]: [border: string, background: string]} = {\n [AttributeType.simple]: ['purple', '#ffe5ff'],\n [AttributeType.simple_link]: ['blue', '#e5e5ff'],\n [AttributeType.advanced]: ['orange', '#fff6e5'],\n [AttributeType.advanced_link]: ['#d4380d', '#fde4dd'],\n [AttributeType.tree]: ['green', '#e5ffe5'],\n};\n\nexport const tagColorByAttributeFormat: {[key in AttributeFormat]: [border: string, background: string]} = {\n [AttributeFormat.boolean]: ['gold', '#fff099'],\n [AttributeFormat.date]: ['blue', '#e5e5ff'],\n [AttributeFormat.date_range]: ['#1d39c4', '#e9ecfc'],\n [AttributeFormat.encrypted]: ['red', '#ffe5e5'],\n [AttributeFormat.extended]: ['magenta', '#ffe5e5'],\n [AttributeFormat.numeric]: ['orange', '#fff6e5'],\n [AttributeFormat.text]: ['green', '#e5ffe5'],\n [AttributeFormat.color]: ['purple', '#ffe5ff'],\n [AttributeFormat.rich_text]: ['#d4380d', '#fde4dd'],\n};\n\nexport enum ErrorDisplayTypes {\n ERROR = 'error',\n PERMISSION_ERROR = 'permission_error',\n PAGE_NOT_FOUND = 'page_not_found_error',\n}\n\ndeclare global {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n interface Window {\n __dynamic_base__?: string;\n __global_base_url__?: string;\n __bugsnag_api_key__?: string;\n __bugsnag_app_version__?: string;\n __bugsnag_release_stage__?: string;\n }\n}\n\nexport const defaultPaginationPageSize = 20;\n\nexport const GLOBAL_BASE_URL = window.__global_base_url__ || '';\n\nexport const PREFIX_USER_VIEWS_ORDER_KEY = 'user_views_order_';\nexport const PREFIX_SHARED_VIEWS_ORDER_KEY = 'shared_views_order_';\n\nexport const INFO_NOTIFICATION_DURATION = 5_000;\nexport const ERROR_NOTIFICATION_DURATION = 5_000;\nexport const SUCCESS_NOTIFICATION_DURATION = 5_000;\nexport const SUBSCRIPTION_NOTIFICATION_DURATION = 10_000;\n\nexport const SUCCESS_ALERT_DURATION = 3_000;\nexport const ERROR_ALERT_DURATION = 5_000;\n\nexport const EDIT_RECORD_SIDEBAR_ID = 'edit_record_sidebar';\n\nexport const STANDARD_FIELD_ID_PREFIX = 'standardfield-';\n\nexport const LINK_FIELD_ID_PREFIX = 'linkfield-';\n\nexport const TREE_FIELD_ID_PREFIX = 'treefield-';\n\nexport const SUBMIT_BUTTONS_PORTAL = 'submit_buttons_portal';\nexport const NEW_RECORD_ID = 'newRecord';\n\nexport const BREAK_TWO_LINES = '\\n\\n';\n"]}
@@ -4,7 +4,7 @@ export { default as useAppLang } from './useAppLang';
4
4
  export { default as useAuth } from './useAuth';
5
5
  export { default as useGetRecordForm } from './useGetRecordForm';
6
6
  export { useGetRecordUpdatesSubscription } from './useGetRecordUpdatesSubscription';
7
- export { default as useLang } from './useLang';
7
+ export { default as useLang } from './useLang/useLang';
8
8
  export { default as useLocalStorage } from './useLocalStorage';
9
9
  export { default as useRecordsConsultationHistory } from './useRecordsConsultationHistory';
10
10
  export { useRefreshFieldValues } from './useRefreshFieldValues';
@@ -19,5 +19,5 @@ export { creationPanelSchema } from './useIFrameMessenger/schema';
19
19
  export { useIFrameMessengerHandlers } from './useIFrameMessenger/useIFrameMessengerHandlers';
20
20
  export { IFrameMessengerProvider } from './useIFrameMessenger/useIFrameMessengerContext';
21
21
  export { useGetRecordIdCard } from './useGetRecordIdCard';
22
- export { useConfirmModal } from './useConfirmModal';
22
+ export { useConfirmModal } from './useConfirmModal/useConfirmModal';
23
23
  export { useDelayedLoading } from './useDelayedLoading';
@@ -4,7 +4,7 @@ export { default as useAppLang } from './useAppLang';
4
4
  export { default as useAuth } from './useAuth';
5
5
  export { default as useGetRecordForm } from './useGetRecordForm';
6
6
  export { useGetRecordUpdatesSubscription } from './useGetRecordUpdatesSubscription';
7
- export { default as useLang } from './useLang';
7
+ export { default as useLang } from './useLang/useLang';
8
8
  export { default as useLocalStorage } from './useLocalStorage';
9
9
  export { default as useRecordsConsultationHistory } from './useRecordsConsultationHistory';
10
10
  export { useRefreshFieldValues } from './useRefreshFieldValues';
@@ -19,6 +19,6 @@ export { creationPanelSchema } from './useIFrameMessenger/schema';
19
19
  export { useIFrameMessengerHandlers } from './useIFrameMessenger/useIFrameMessengerHandlers';
20
20
  export { IFrameMessengerProvider } from './useIFrameMessenger/useIFrameMessengerContext';
21
21
  export { useGetRecordIdCard } from './useGetRecordIdCard';
22
- export { useConfirmModal } from './useConfirmModal';
22
+ export { useConfirmModal } from './useConfirmModal/useConfirmModal';
23
23
  export { useDelayedLoading } from './useDelayedLoading';
24
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,cAAc,CAAC;AACxD,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAC,+BAA+B,EAAC,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAC,OAAO,IAAI,6BAA6B,EAAC,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAC,wBAAwB,EAAC,MAAM,qDAAqD,CAAC;AAC7F,OAAO,EAAC,qBAAqB,EAAC,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAC,mBAAmB,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,0BAA0B,EAAC,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAC,uBAAuB,EAAC,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC","sourcesContent":["export {useSaveApplicationMutation} from '../_gqlTypes';\nexport {useAntdLocale} from './useAntdLocale';\nexport {default as useAppLang} from './useAppLang';\nexport {default as useAuth} from './useAuth';\nexport {default as useGetRecordForm} from './useGetRecordForm';\nexport {useGetRecordUpdatesSubscription} from './useGetRecordUpdatesSubscription';\nexport {default as useLang} from './useLang';\nexport {default as useLocalStorage} from './useLocalStorage';\nexport {default as useRecordsConsultationHistory} from './useRecordsConsultationHistory';\nexport {useRefreshFieldValues} from './useRefreshFieldValues';\nexport {default as useLoginChecker} from './useLoginChecker';\nexport {default as useRedirectToLogin} from './useRedirectToLogin';\nexport {useUser} from './useUser';\nexport {useValuesCacheUpdate} from './useValuesCacheUpdate';\nexport {useIFrameMessenger} from './useIFrameMessenger/useIFrameMessenger';\nexport {useIFrameMessengerClient} from './useIFrameMessengerClient/useIFrameMessengerClient';\nexport {IFrameMessengerClient} from './useIFrameMessengerClient/IFrameMessengerClient';\nexport {creationPanelSchema} from './useIFrameMessenger/schema';\nexport {useIFrameMessengerHandlers} from './useIFrameMessenger/useIFrameMessengerHandlers';\nexport {IFrameMessengerProvider} from './useIFrameMessenger/useIFrameMessengerContext';\nexport {useGetRecordIdCard} from './useGetRecordIdCard';\nexport {useConfirmModal} from './useConfirmModal';\nexport {useDelayedLoading} from './useDelayedLoading';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,0BAA0B,EAAC,MAAM,cAAc,CAAC;AACxD,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,OAAO,IAAI,UAAU,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAC,OAAO,IAAI,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AAC/D,OAAO,EAAC,+BAA+B,EAAC,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAC,OAAO,IAAI,OAAO,EAAC,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAC,OAAO,IAAI,6BAA6B,EAAC,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAC,OAAO,IAAI,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACnE,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,oBAAoB,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAC,kBAAkB,EAAC,MAAM,yCAAyC,CAAC;AAC3E,OAAO,EAAC,wBAAwB,EAAC,MAAM,qDAAqD,CAAC;AAC7F,OAAO,EAAC,qBAAqB,EAAC,MAAM,kDAAkD,CAAC;AACvF,OAAO,EAAC,mBAAmB,EAAC,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAC,0BAA0B,EAAC,MAAM,iDAAiD,CAAC;AAC3F,OAAO,EAAC,uBAAuB,EAAC,MAAM,gDAAgD,CAAC;AACvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAC,eAAe,EAAC,MAAM,mCAAmC,CAAC;AAClE,OAAO,EAAC,iBAAiB,EAAC,MAAM,qBAAqB,CAAC","sourcesContent":["export {useSaveApplicationMutation} from '../_gqlTypes';\nexport {useAntdLocale} from './useAntdLocale';\nexport {default as useAppLang} from './useAppLang';\nexport {default as useAuth} from './useAuth';\nexport {default as useGetRecordForm} from './useGetRecordForm';\nexport {useGetRecordUpdatesSubscription} from './useGetRecordUpdatesSubscription';\nexport {default as useLang} from './useLang/useLang';\nexport {default as useLocalStorage} from './useLocalStorage';\nexport {default as useRecordsConsultationHistory} from './useRecordsConsultationHistory';\nexport {useRefreshFieldValues} from './useRefreshFieldValues';\nexport {default as useLoginChecker} from './useLoginChecker';\nexport {default as useRedirectToLogin} from './useRedirectToLogin';\nexport {useUser} from './useUser';\nexport {useValuesCacheUpdate} from './useValuesCacheUpdate';\nexport {useIFrameMessenger} from './useIFrameMessenger/useIFrameMessenger';\nexport {useIFrameMessengerClient} from './useIFrameMessengerClient/useIFrameMessengerClient';\nexport {IFrameMessengerClient} from './useIFrameMessengerClient/IFrameMessengerClient';\nexport {creationPanelSchema} from './useIFrameMessenger/schema';\nexport {useIFrameMessengerHandlers} from './useIFrameMessenger/useIFrameMessengerHandlers';\nexport {IFrameMessengerProvider} from './useIFrameMessenger/useIFrameMessengerContext';\nexport {useGetRecordIdCard} from './useGetRecordIdCard';\nexport {useConfirmModal} from './useConfirmModal/useConfirmModal';\nexport {useDelayedLoading} from './useDelayedLoading';\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useLang.js","sourceRoot":"","sources":["../../../../src/hooks/useLang/__mocks__/useLang.tsx"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAClB,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAC5B,WAAW,EAAE,IAAI;CACpB,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC","sourcesContent":["const mockUseLang = () => ({\n lang: ['fr', 'en'],\n availableLangs: ['fr', 'en'],\n defaultLang: 'fr',\n});\n\nexport default mockUseLang;\n"]}
1
+ {"version":3,"file":"useLang.js","sourceRoot":"","sources":["../../../../src/hooks/useLang/__mocks__/useLang.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,CAAC;IACvB,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAClB,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;IAC5B,WAAW,EAAE,IAAI;CACpB,CAAC,CAAC;AAEH,eAAe,WAAW,CAAC","sourcesContent":["const mockUseLang = () => ({\n lang: ['fr', 'en'],\n availableLangs: ['fr', 'en'],\n defaultLang: 'fr',\n});\n\nexport default mockUseLang;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"useLang.js","sourceRoot":"","sources":["../../../src/hooks/useLang/useLang.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,OAAO,CAAC;AACjC,OAAO,EAAoB,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAE1E,MAAM,OAAO,GAAG,GAAiB,EAAE;IAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAErC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import {useContext} from 'react';\nimport {type ILangContext, LangContext} from '../../contexts/LangContext';\n\nconst useLang = (): ILangContext => {\n const lang = useContext(LangContext);\n\n if (!lang) {\n throw new Error('useLang must be used inside a <LangContext.Provider />');\n }\n\n return lang;\n};\n\nexport default useLang;\n"]}
1
+ {"version":3,"file":"useLang.js","sourceRoot":"","sources":["../../../src/hooks/useLang/useLang.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,OAAO,CAAC;AACjC,OAAO,EAAoB,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAE1E,MAAM,OAAO,GAAG,GAAiB,EAAE;IAC/B,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAErC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC9E,CAAC;IAED,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC;AAEF,eAAe,OAAO,CAAC","sourcesContent":["import {useContext} from 'react';\nimport {type ILangContext, LangContext} from '../../contexts/LangContext';\n\nconst useLang = (): ILangContext => {\n const lang = useContext(LangContext);\n\n if (!lang) {\n throw new Error('useLang must be used inside a <LangContext.Provider />');\n }\n\n return lang;\n};\n\nexport default useLang;\n"]}
@@ -5,7 +5,7 @@ function MockedLangContextProvider({ children }) {
5
5
  lang: ['fr'],
6
6
  availableLangs: ['fr', 'en'],
7
7
  defaultLang: 'fr',
8
- setLang: jest.fn(),
8
+ setLang: () => undefined,
9
9
  };
10
10
  return _jsx(LangContext.Provider, { value: mockLangs, children: children });
11
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MockedLangContextProvider.js","sourceRoot":"","sources":["../../../src/testing/MockedLangContextProvider/MockedLangContextProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAoB,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAE1E,SAAS,yBAAyB,CAAC,EAAC,QAAQ,EAAC;IACzC,MAAM,SAAS,GAAiB;QAC5B,IAAI,EAAE,CAAC,IAAI,CAAC;QACZ,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5B,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE;KACrB,CAAC;IAEF,OAAO,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS,YAAG,QAAQ,GAAwB,CAAC;AACrF,CAAC;AAED,eAAe,yBAAyB,CAAC","sourcesContent":["import {type ILangContext, LangContext} from '../../contexts/LangContext';\n\nfunction MockedLangContextProvider({children}) {\n const mockLangs: ILangContext = {\n lang: ['fr'],\n availableLangs: ['fr', 'en'],\n defaultLang: 'fr',\n setLang: jest.fn(),\n };\n\n return <LangContext.Provider value={mockLangs}>{children}</LangContext.Provider>;\n}\n\nexport default MockedLangContextProvider;\n"]}
1
+ {"version":3,"file":"MockedLangContextProvider.js","sourceRoot":"","sources":["../../../src/testing/MockedLangContextProvider/MockedLangContextProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAoB,WAAW,EAAC,MAAM,4BAA4B,CAAC;AAE1E,SAAS,yBAAyB,CAAC,EAAC,QAAQ,EAAC;IACzC,MAAM,SAAS,GAAiB;QAC5B,IAAI,EAAE,CAAC,IAAI,CAAC;QACZ,cAAc,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC;QAC5B,WAAW,EAAE,IAAI;QACjB,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS;KAC3B,CAAC;IAEF,OAAO,KAAC,WAAW,CAAC,QAAQ,IAAC,KAAK,EAAE,SAAS,YAAG,QAAQ,GAAwB,CAAC;AACrF,CAAC;AAED,eAAe,yBAAyB,CAAC","sourcesContent":["import {type ILangContext, LangContext} from '../../contexts/LangContext';\n\nfunction MockedLangContextProvider({children}) {\n const mockLangs: ILangContext = {\n lang: ['fr'],\n availableLangs: ['fr', 'en'],\n defaultLang: 'fr',\n setLang: () => undefined,\n };\n\n return <LangContext.Provider value={mockLangs}>{children}</LangContext.Provider>;\n}\n\nexport default MockedLangContextProvider;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leav/ui",
3
- "version": "1.14.0-3c4d7f0f",
3
+ "version": "1.14.0-58e3a5ef",
4
4
  "description": "Shared React components and hooks",
5
5
  "scripts": {
6
6
  "prepublishOnly": "yarn build",
@@ -26,8 +26,8 @@
26
26
  "repository": "https://github.com/leav-solutions/leav-engine",
27
27
  "devDependencies": {
28
28
  "@apollo/client": "3.14.1",
29
- "@babel/preset-env": "7.29.5",
30
- "@babel/preset-react": "7.28.5",
29
+ "@babel/preset-env": "7.29.7",
30
+ "@babel/preset-react": "7.29.7",
31
31
  "@graphql-codegen/add": "5.0.3",
32
32
  "@graphql-codegen/cli": "6.3.1",
33
33
  "@graphql-codegen/typescript": "5.0.10",
@@ -41,7 +41,7 @@
41
41
  "@types/jest": "29.5.14",
42
42
  "@types/react": "18.2.14",
43
43
  "@types/react-dom": "18.2.6",
44
- "aristid-ds": "15.3.1-77762e7",
44
+ "aristid-ds": "15.3.1-2d7a4f8",
45
45
  "babel-jest": "29.7.0",
46
46
  "graphql": "16.14.0",
47
47
  "i18next": "22.5.1",
@@ -51,7 +51,7 @@
51
51
  "react": "18.2.0",
52
52
  "react-dom": "18.2.0",
53
53
  "react-i18next": "12",
54
- "react-router-dom": "6.22.0",
54
+ "react-router-dom": "6.30.4",
55
55
  "ts-jest": "29.4.11",
56
56
  "tsc-alias": "1.8.17",
57
57
  "typescript": "5.9.3",
@@ -59,7 +59,7 @@
59
59
  },
60
60
  "peerDependencies": {
61
61
  "@apollo/client": ">=3.8.1",
62
- "aristid-ds": "15.3.1-77762e7",
62
+ "aristid-ds": "15.3.1-2d7a4f8",
63
63
  "i18next": ">=22.5.1",
64
64
  "react": "^18.2.0",
65
65
  "react-dom": "^18.2.0",
@@ -74,7 +74,7 @@
74
74
  "@leav/utils": "1.14.0",
75
75
  "@uidotdev/usehooks": "2.4.1",
76
76
  "dayjs": "^1.11.13",
77
- "dompurify": "3.4.5",
77
+ "dompurify": "3.4.7",
78
78
  "html-react-parser": "4.2.10",
79
79
  "i18next-resources-to-backend": "1.2.1",
80
80
  "react-markdown": "5.0.3",
@@ -1 +0,0 @@
1
- export { useConfirmModal } from './useConfirmModal';
@@ -1,2 +0,0 @@
1
- export { useConfirmModal } from './useConfirmModal';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/useConfirmModal/__mocks__/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC","sourcesContent":["export {useConfirmModal} from './useConfirmModal';\n"]}
@@ -1 +0,0 @@
1
- export { useConfirmModal } from './useConfirmModal';
@@ -1,2 +0,0 @@
1
- export { useConfirmModal } from './useConfirmModal';
2
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/useConfirmModal/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC","sourcesContent":["export {useConfirmModal} from './useConfirmModal';\n"]}
@@ -1,2 +0,0 @@
1
- import useLang from './useLang';
2
- export default useLang;
@@ -1,3 +0,0 @@
1
- import useLang from './useLang';
2
- export default useLang;
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/hooks/useLang/__mocks__/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,eAAe,OAAO,CAAC","sourcesContent":["import useLang from './useLang';\n\nexport default useLang;\n"]}
@@ -1,2 +0,0 @@
1
- import useLang from './useLang';
2
- export default useLang;
@@ -1,3 +0,0 @@
1
- import useLang from './useLang';
2
- export default useLang;
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/useLang/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,WAAW,CAAC;AAEhC,eAAe,OAAO,CAAC","sourcesContent":["import useLang from './useLang';\n\nexport default useLang;\n"]}