@leav/ui 0.4.0-049caba → 0.4.0-083a2b3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__mocks__/common/value.d.ts +1 -2
- package/dist/__mocks__/common/value.js +0 -11
- package/dist/__mocks__/common/value.js.map +1 -1
- package/dist/components/Explorer/DataView.js +10 -3
- package/dist/components/Explorer/DataView.js.map +1 -1
- package/dist/components/Explorer/Explorer.js +2 -0
- package/dist/components/Explorer/Explorer.js.map +1 -1
- package/dist/components/Explorer/TableTagGroup.d.ts +0 -1
- package/dist/components/Explorer/TableTagGroup.js +3 -16
- package/dist/components/Explorer/TableTagGroup.js.map +1 -1
- package/dist/components/Explorer/_constants.d.ts +3 -0
- package/dist/components/Explorer/_constants.js +3 -0
- package/dist/components/Explorer/_constants.js.map +1 -1
- package/dist/components/Explorer/actions-item/useEditItemAction.js +2 -1
- package/dist/components/Explorer/actions-item/useEditItemAction.js.map +1 -1
- package/dist/components/Explorer/actions-item/useReplaceItemAction.js +1 -1
- package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
- package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +3 -3
- package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
- package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +2 -1
- package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +4 -2
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +19 -3
- package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
- package/dist/components/Explorer/link-item/LinkModal.js +2 -1
- package/dist/components/Explorer/link-item/LinkModal.js.map +1 -1
- package/dist/components/Explorer/useViewSettingsReducer.js +9 -6
- package/dist/components/Explorer/useViewSettingsReducer.js.map +1 -1
- package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.d.ts +4 -0
- package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.js +4 -1
- package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.js.map +1 -1
- package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +1 -0
- package/dist/components/RecordEdition/EditRecord/EditRecord.js +24 -13
- package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.d.ts +3 -1
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +3 -3
- package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +5 -0
- package/dist/components/RecordEdition/EditRecordContent/_types.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.d.ts +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.d.ts +7 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +100 -92
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.d.ts +5 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js +39 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.d.ts +8 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js +23 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.d.ts +9 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js +23 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.d.ts +8 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js +26 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.d.ts +12 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js +24 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.d.ts +19 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js +103 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.d.ts +22 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js +104 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.d.ts +22 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.js +85 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.d.ts +26 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js +106 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.d.ts +265 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js +12 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.d.ts +9 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js +15 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.d.ts +4 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js +22 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +32 -46
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js +2 -5
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.d.ts +2 -3
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js +2 -3
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js +2 -5
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/_types.d.ts +1 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/ComputeIndicator.d.ts +4 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.d.ts +8 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/DeleteAllValuesButton.js +2 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/calculatedInheritedFlags.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.d.ts +17 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js +76 -0
- package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js.map +1 -0
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.d.ts +1 -0
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js +5 -3
- package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +4 -2
- package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
- package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +3 -0
- package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -1
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.d.ts +2 -2
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js +22 -3
- package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js.map +1 -1
- package/dist/components/RecordEdition/hooks/useGetSubmitButtons.d.ts +1 -1
- package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js +3 -3
- package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js.map +1 -1
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +1 -0
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +3 -3
- package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
- package/dist/constants.d.ts +2 -1
- package/dist/constants.js +2 -1
- package/dist/constants.js.map +1 -1
- package/dist/locales/en/shared.json +2 -1
- package/dist/locales/fr/shared.json +2 -1
- package/package.json +1 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.d.ts +0 -14
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.js +0 -29
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.d.ts +0 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.js +0 -6
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.d.ts +0 -20
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.js +0 -53
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.d.ts +0 -19
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.js +0 -111
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.d.ts +0 -20
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.js +0 -71
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.d.ts +0 -14
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.js +0 -58
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.d.ts +0 -6
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.js +0 -11
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.d.ts +0 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.js +0 -6
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.d.ts +0 -13
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.js +0 -50
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.d.ts +0 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.js +0 -6
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.d.ts +0 -9
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.js +0 -215
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.d.ts +0 -2
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.js +0 -6
- package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/ComputeIndicator.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/DeleteAllValuesButton.d.ts +0 -4
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/DeleteAllValuesButton.js.map +0 -1
- package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/calculatedInheritedFlags.js.map +0 -1
- /package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/ComputeIndicator.js +0 -0
- /package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/calculatedInheritedFlags.d.ts +0 -0
- /package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/calculatedInheritedFlags.js +0 -0
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
-
// This file is released under LGPL V3
|
|
4
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
-
import { useEffect, useState } from 'react';
|
|
6
|
-
import { AntForm, KitSelect, KitTypography } from 'aristid-ds';
|
|
7
|
-
import useSharedTranslation from '../../../../../../hooks/useSharedTranslation/useSharedTranslation';
|
|
8
|
-
import { useGetOptionsQuery } from './useGetOptionsQuery';
|
|
9
|
-
import { useDebouncedValue } from '../../../../../../hooks/useDebouncedValue/useDebouncedValue';
|
|
10
|
-
import styled from 'styled-components';
|
|
11
|
-
const ResultsCount = styled(KitTypography.Text) `
|
|
12
|
-
margin-bottom: calc(var(--general-spacing-s) * 1px);
|
|
13
|
-
`;
|
|
14
|
-
export const MonoValueSelect = ({ value, onChange, activeValue, attribute, label, onSelectChange, onSelectClear, required = false }) => {
|
|
15
|
-
if (!onChange) {
|
|
16
|
-
throw Error('MonoValueSelect should be used inside a antd Form.Item');
|
|
17
|
-
}
|
|
18
|
-
const { t } = useSharedTranslation();
|
|
19
|
-
const { errors } = AntForm.Item.useStatus();
|
|
20
|
-
const form = AntForm.useFormInstance();
|
|
21
|
-
const [searchInput, setSearchInput] = useState('');
|
|
22
|
-
const debouncedSearchInput = useDebouncedValue(searchInput, 300);
|
|
23
|
-
const { loading, selectOptions, updateLeavField, runFullTextSearch, searchResultCount, suggestionsCount, optionsType } = useGetOptionsQuery({
|
|
24
|
-
activeValue,
|
|
25
|
-
linkedLibraryId: attribute.linked_library.id,
|
|
26
|
-
onSelectChange
|
|
27
|
-
});
|
|
28
|
-
const handleSelect = async (optionValue, ...antOnChangeParams) => {
|
|
29
|
-
onChange(optionValue, antOnChangeParams);
|
|
30
|
-
await form.validateFields([attribute.id]);
|
|
31
|
-
updateLeavField(optionValue);
|
|
32
|
-
};
|
|
33
|
-
const handleClear = async () => {
|
|
34
|
-
form.setFieldValue(attribute.id, undefined);
|
|
35
|
-
onSelectClear(activeValue);
|
|
36
|
-
};
|
|
37
|
-
const handleSearch = async (val) => setSearchInput(val);
|
|
38
|
-
useEffect(() => {
|
|
39
|
-
runFullTextSearch(debouncedSearchInput);
|
|
40
|
-
}, [debouncedSearchInput]);
|
|
41
|
-
return (_jsx(KitSelect, { htmlFor: attribute.id, loading: loading, value: value, required: required, label: label, options: selectOptions, status: errors.length > 0 && 'error', showSearch: true, optionFilterProp: "label", placeholder: t('record_edition.placeholder.record_select'), onSelect: handleSelect, onChange: onChange, onClear: required ? undefined : handleClear, allowClear: !required, onSearch: handleSearch, filterOption: false, dropdownRender: menu => {
|
|
42
|
-
if (loading) {
|
|
43
|
-
return menu;
|
|
44
|
-
}
|
|
45
|
-
return (_jsxs(_Fragment, { children: [_jsx(ResultsCount, { weight: "bold", children: optionsType === 'search'
|
|
46
|
-
? t('record_edition.link_search_result_count', {
|
|
47
|
-
count: searchResultCount > suggestionsCount ? suggestionsCount : searchResultCount,
|
|
48
|
-
total: searchResultCount
|
|
49
|
-
})
|
|
50
|
-
: t('record_edition.suggestions_count', { count: suggestionsCount }) }), menu] }));
|
|
51
|
-
} }));
|
|
52
|
-
};
|
|
53
|
-
//# sourceMappingURL=MonoValueSelect.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MonoValueSelect.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { RecordFormElementsValueLinkValue } from '../../../../../../hooks/useGetRecordForm';
|
|
2
|
-
import { IRecordIdentity } from '../../../../../../types';
|
|
3
|
-
export declare const useGetOptionsQuery: ({ activeValue, linkedLibraryId, onSelectChange }: {
|
|
4
|
-
activeValue: RecordFormElementsValueLinkValue | undefined;
|
|
5
|
-
linkedLibraryId: string;
|
|
6
|
-
onSelectChange: (values: Array<{
|
|
7
|
-
value: IRecordIdentity;
|
|
8
|
-
idValue: string;
|
|
9
|
-
}>) => void;
|
|
10
|
-
}) => {
|
|
11
|
-
loading: boolean;
|
|
12
|
-
selectOptions: import("aristid-ds/dist/Kit/DataEntry/Select/types").IKitOption[];
|
|
13
|
-
updateLeavField: (value: string) => void;
|
|
14
|
-
runFullTextSearch: (searchText: string) => Promise<void>;
|
|
15
|
-
totalCount: number;
|
|
16
|
-
searchResultCount: number;
|
|
17
|
-
suggestionsCount: number;
|
|
18
|
-
optionsType: "search" | "suggestions";
|
|
19
|
-
};
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
-
// This file is released under LGPL V3
|
|
4
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
-
import { useQuery } from '@apollo/client';
|
|
6
|
-
import { SortOrder } from '../../../../../../_gqlTypes';
|
|
7
|
-
import { getRecordsFromLibraryQuery } from '../../../../../../_queries/records/getRecordsFromLibraryQuery';
|
|
8
|
-
import sortBy from 'lodash/sortBy';
|
|
9
|
-
import { AntSkeleton } from 'aristid-ds';
|
|
10
|
-
import { useState, useMemo } from 'react';
|
|
11
|
-
const RECORDS_LIMIT = 20; // TODO: should be configurable
|
|
12
|
-
const MINIMAL_SEARCH_LENGTH = 2;
|
|
13
|
-
export const useGetOptionsQuery = ({ activeValue, linkedLibraryId, onSelectChange }) => {
|
|
14
|
-
const initialSearchVariables = {
|
|
15
|
-
library: linkedLibraryId,
|
|
16
|
-
limit: RECORDS_LIMIT,
|
|
17
|
-
sort: {
|
|
18
|
-
field: 'created_at',
|
|
19
|
-
order: SortOrder.desc
|
|
20
|
-
}
|
|
21
|
-
};
|
|
22
|
-
const [isSearchLoading, setIsSearchLoading] = useState(false);
|
|
23
|
-
const [initialQueryTotalCount, setInitialQueryTotalCount] = useState(0);
|
|
24
|
-
const [optionsType, setOptionsType] = useState('suggestions');
|
|
25
|
-
const { loading: isQueryLoading, data, refetch } = useQuery(getRecordsFromLibraryQuery([], true), {
|
|
26
|
-
fetchPolicy: 'network-only',
|
|
27
|
-
variables: initialSearchVariables,
|
|
28
|
-
onCompleted: queryData => {
|
|
29
|
-
// This is called only after the first fetch, so we can store the total count without searching.
|
|
30
|
-
setInitialQueryTotalCount(queryData?.records?.totalCount ?? 0);
|
|
31
|
-
}
|
|
32
|
-
});
|
|
33
|
-
// const recordList = useMemo(() => data?.records?.list.toSorted() ?? [], [data]); // TODO: when toSorted method available (ie. TS >= 5.2.0)
|
|
34
|
-
const recordList = useMemo(() => sortBy(data?.records?.list, 'whoAmI.label'), [data]);
|
|
35
|
-
const selectOptions = useMemo(() => isSearchLoading // Might become unnecessary when DS handles loading better
|
|
36
|
-
? Array.from({ length: 10 }).map((_, index) => ({
|
|
37
|
-
value: `skeleton-${index}`,
|
|
38
|
-
idCard: {
|
|
39
|
-
//@ts-expect-error KitIdCard doesn't allow a ReactNode as title, but it's fine at runtime
|
|
40
|
-
title: _jsx(AntSkeleton.Input, { active: true }),
|
|
41
|
-
avatarProps: {
|
|
42
|
-
src: _jsx(AntSkeleton.Avatar, { active: true })
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}))
|
|
46
|
-
: recordList.map(recordItem => {
|
|
47
|
-
const recordLabel = recordItem.whoAmI.label ?? recordItem.whoAmI.id;
|
|
48
|
-
return {
|
|
49
|
-
value: recordItem.whoAmI.id,
|
|
50
|
-
label: recordLabel,
|
|
51
|
-
idCard: {
|
|
52
|
-
title: recordLabel,
|
|
53
|
-
avatarProps: {
|
|
54
|
-
size: 'small',
|
|
55
|
-
shape: 'square',
|
|
56
|
-
imageFit: 'contain',
|
|
57
|
-
src: recordItem.whoAmI.preview?.small,
|
|
58
|
-
label: recordLabel
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
}), [recordList, isSearchLoading]);
|
|
63
|
-
const augmentedSelectOptionsWithActive = [...selectOptions];
|
|
64
|
-
if (activeValue && recordList.findIndex(record => record.id === activeValue.linkValue.id) === -1) {
|
|
65
|
-
augmentedSelectOptionsWithActive.push({
|
|
66
|
-
value: activeValue.linkValue.whoAmI.id,
|
|
67
|
-
label: activeValue.linkValue.whoAmI.label,
|
|
68
|
-
idCard: {
|
|
69
|
-
title: activeValue.linkValue.whoAmI.label,
|
|
70
|
-
avatarProps: {
|
|
71
|
-
size: 'small',
|
|
72
|
-
shape: 'square',
|
|
73
|
-
imageFit: 'contain',
|
|
74
|
-
src: activeValue.linkValue.whoAmI.preview?.small,
|
|
75
|
-
label: activeValue.linkValue.whoAmI.label
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
const updateLeavField = (value) => {
|
|
81
|
-
const selectedLinkValue = recordList.find(record => record.id === value);
|
|
82
|
-
return onSelectChange([{ value: selectedLinkValue ?? activeValue.linkValue, idValue: null }]);
|
|
83
|
-
};
|
|
84
|
-
const runFullTextSearch = async (searchText) => {
|
|
85
|
-
const isSearchTextEmpty = searchText === '';
|
|
86
|
-
if (!isSearchTextEmpty && searchText.length < MINIMAL_SEARCH_LENGTH) {
|
|
87
|
-
return;
|
|
88
|
-
}
|
|
89
|
-
setIsSearchLoading(true);
|
|
90
|
-
await refetch(isSearchTextEmpty
|
|
91
|
-
? { ...initialSearchVariables, fullText: undefined }
|
|
92
|
-
: {
|
|
93
|
-
...initialSearchVariables,
|
|
94
|
-
sort: undefined,
|
|
95
|
-
fullText: searchText
|
|
96
|
-
});
|
|
97
|
-
setOptionsType(isSearchTextEmpty ? 'suggestions' : 'search');
|
|
98
|
-
setIsSearchLoading(false);
|
|
99
|
-
};
|
|
100
|
-
return {
|
|
101
|
-
loading: isQueryLoading || isSearchLoading,
|
|
102
|
-
selectOptions: augmentedSelectOptionsWithActive,
|
|
103
|
-
updateLeavField,
|
|
104
|
-
runFullTextSearch,
|
|
105
|
-
totalCount: initialQueryTotalCount,
|
|
106
|
-
searchResultCount: data?.records?.totalCount ?? 0,
|
|
107
|
-
suggestionsCount: Math.min(RECORDS_LIMIT, initialQueryTotalCount),
|
|
108
|
-
optionsType
|
|
109
|
-
};
|
|
110
|
-
};
|
|
111
|
-
//# sourceMappingURL=useGetOptionsQuery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetOptionsQuery.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { FunctionComponent } from 'react';
|
|
2
|
-
import { RecordFormElementsValueLinkValue } from '../../../../../../hooks/useGetRecordForm';
|
|
3
|
-
import { RecordFormAttributeLinkAttributeFragment } from '../../../../../../_gqlTypes';
|
|
4
|
-
import { SelectProps } from 'antd';
|
|
5
|
-
import { IRecordIdentity } from '../../../../../../types';
|
|
6
|
-
import { IRecordPropertyLink } from '../../../../../../_queries/records/getRecordPropertiesQuery';
|
|
7
|
-
import { IProvidedByAntFormItem } from '../../../../../../components/RecordEdition/EditRecordContent/_types';
|
|
8
|
-
interface IMultiValueSelectProps extends IProvidedByAntFormItem<SelectProps<string[]>, SelectProps> {
|
|
9
|
-
activeValues: RecordFormElementsValueLinkValue[] | undefined;
|
|
10
|
-
attribute: RecordFormAttributeLinkAttributeFragment;
|
|
11
|
-
label: string;
|
|
12
|
-
onValueDeselect: (value: IRecordPropertyLink) => void;
|
|
13
|
-
onSelectChange: (values: Array<{
|
|
14
|
-
value: IRecordIdentity;
|
|
15
|
-
idValue: string;
|
|
16
|
-
}>) => void;
|
|
17
|
-
required?: boolean;
|
|
18
|
-
}
|
|
19
|
-
export declare const MultiValueSelect: FunctionComponent<IMultiValueSelectProps>;
|
|
20
|
-
export {};
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
-
// This file is released under LGPL V3
|
|
4
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
-
import { useState } from 'react';
|
|
6
|
-
import { AntForm, KitSelect } from 'aristid-ds';
|
|
7
|
-
import useSharedTranslation from '../../../../../../hooks/useSharedTranslation/useSharedTranslation';
|
|
8
|
-
import { useGetOptionsQuery } from './useGetOptionsQuery';
|
|
9
|
-
export const MultiValueSelect = ({ value, onChange, activeValues, attribute, label, onValueDeselect, onSelectChange, required = false }) => {
|
|
10
|
-
if (!onChange) {
|
|
11
|
-
throw Error('MultiValueSelect should be used inside a antd Form.Item');
|
|
12
|
-
}
|
|
13
|
-
const { t } = useSharedTranslation();
|
|
14
|
-
const form = AntForm.useFormInstance();
|
|
15
|
-
const [addedValues, setAddedValues] = useState([]);
|
|
16
|
-
const [clearedValues, setClearedValues] = useState([]);
|
|
17
|
-
const { loading, selectOptions, updateLeavField } = useGetOptionsQuery({
|
|
18
|
-
attribute,
|
|
19
|
-
onSelectChange
|
|
20
|
-
});
|
|
21
|
-
const _handleSelect = (optionValue, ...antOnChangeParams) => {
|
|
22
|
-
const newValues = Array.isArray(value) ? [...value, optionValue] : [optionValue];
|
|
23
|
-
onChange(newValues, antOnChangeParams);
|
|
24
|
-
if (antOnChangeParams.find(optionType => optionType.value === optionValue && !optionType.disabled)) {
|
|
25
|
-
_addValue(optionValue);
|
|
26
|
-
}
|
|
27
|
-
};
|
|
28
|
-
const _addValue = (valueToAdd) => {
|
|
29
|
-
setAddedValues(values => Array.from(new Set([...values, valueToAdd])));
|
|
30
|
-
setClearedValues(values => values.filter(v => v !== valueToAdd));
|
|
31
|
-
};
|
|
32
|
-
const _deleteValue = (valueToDelete, clear) => {
|
|
33
|
-
setAddedValues(values => values.filter(v => v !== valueToDelete));
|
|
34
|
-
if (clear) {
|
|
35
|
-
setClearedValues(values => Array.from(new Set([...values, valueToDelete])));
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
const _clearValues = () => {
|
|
39
|
-
value.forEach(v => _deleteValue(v, true));
|
|
40
|
-
form.setFieldValue(attribute.id, undefined);
|
|
41
|
-
};
|
|
42
|
-
const _handleBlur = () => {
|
|
43
|
-
const activeValuesId = activeValues.map(av => av.linkValue.id);
|
|
44
|
-
const combinedValues = required && !addedValues.length ? clearedValues : addedValues;
|
|
45
|
-
const valuesToAdd = combinedValues.filter(v => !activeValuesId.includes(v));
|
|
46
|
-
const shouldRemoveNone = required &&
|
|
47
|
-
!addedValues.length &&
|
|
48
|
-
clearedValues.length === activeValues.length &&
|
|
49
|
-
clearedValues.every(e => activeValuesId.includes(e));
|
|
50
|
-
const valuesToRemove = shouldRemoveNone
|
|
51
|
-
? []
|
|
52
|
-
: activeValues.filter(av => clearedValues.includes(av.linkValue.id));
|
|
53
|
-
if (valuesToAdd.length || valuesToRemove.length) {
|
|
54
|
-
updateLeavField(valuesToAdd, valuesToRemove);
|
|
55
|
-
}
|
|
56
|
-
};
|
|
57
|
-
const _handleDeselect = (valueToDeselect) => {
|
|
58
|
-
if (value.length === 1 && required) {
|
|
59
|
-
return _deleteValue(valueToDeselect, true);
|
|
60
|
-
}
|
|
61
|
-
_deleteValue(valueToDeselect, false);
|
|
62
|
-
const newValues = value.filter(val => val !== valueToDeselect);
|
|
63
|
-
form.setFieldValue(attribute.id, newValues);
|
|
64
|
-
const activeLinkValueToDeselect = activeValues.find(val => val.linkValue.id === valueToDeselect);
|
|
65
|
-
if (activeLinkValueToDeselect) {
|
|
66
|
-
onValueDeselect(activeLinkValueToDeselect);
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
return (_jsx(KitSelect, { htmlFor: attribute.id, loading: loading, value: value, required: required, mode: "multiple", label: label, options: selectOptions, showSearch: true, optionFilterProp: "label", placeholder: t('record_edition.placeholder.record_select'), onSelect: _handleSelect, onClear: _clearValues, onBlur: _handleBlur, onDeselect: _handleDeselect, onChange: onChange }));
|
|
70
|
-
};
|
|
71
|
-
//# sourceMappingURL=MultiValueSelect.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MultiValueSelect.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAoB,QAAQ,EAAC,MAAM,OAAO,CAAC;AAClD,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,MAAM,YAAY,CAAC;AAE9C,OAAO,oBAAoB,MAAM,qDAAqD,CAAC;AAIvF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAC;AAcxD,MAAM,CAAC,MAAM,gBAAgB,GAA8C,CAAC,EACxE,KAAK,EACL,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,KAAK,EACL,eAAe,EACf,cAAc,EACd,QAAQ,GAAG,KAAK,EACnB,EAAE,EAAE;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAEvC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAC7D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IAEjE,MAAM,EAAC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAC,GAAG,kBAAkB,CAAC;QACjE,SAAS;QACT,cAAc;KACjB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,CAAC,WAAmB,EAAE,GAAG,iBAAsC,EAAE,EAAE;QACrF,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAEjF,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;QAEvC,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,KAAK,WAAW,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACjG,SAAS,CAAC,WAAW,CAAC,CAAC;QAC3B,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,CAAC,UAAkB,EAAE,EAAE;QACrC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QACvE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC;IACrE,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,CAAC,aAAqB,EAAE,KAAe,EAAE,EAAE;QAC5D,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,CAAC;QAElE,IAAI,KAAK,EAAE,CAAC;YACR,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE;QACtB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC/D,MAAM,cAAc,GAAG,QAAQ,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;QACrF,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,MAAM,gBAAgB,GAClB,QAAQ;YACR,CAAC,WAAW,CAAC,MAAM;YACnB,aAAa,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;YAC5C,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,cAAc,GAAG,gBAAgB;YACnC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzE,IAAI,WAAW,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,CAAC;YAC9C,eAAe,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACjD,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,eAAuB,EAAE,EAAE;QAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;YACjC,OAAO,YAAY,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;QAED,YAAY,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAErC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,eAAe,CAAC,CAAC;QAC/D,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAE5C,MAAM,yBAAyB,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,KAAK,eAAe,CAAC,CAAC;QACjG,IAAI,yBAAyB,EAAE,CAAC;YAC5B,eAAe,CAAC,yBAAyB,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC,CAAC;IAEF,OAAO,CACH,KAAC,SAAS,IACN,OAAO,EAAE,SAAS,CAAC,EAAE,EACrB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAC,UAAU,EACf,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,aAAa,EACtB,UAAU,QACV,gBAAgB,EAAC,OAAO,EACxB,WAAW,EAAE,CAAC,CAAC,0CAA0C,CAAC,EAC1D,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,WAAW,EACnB,UAAU,EAAE,eAAe,EAC3B,QAAQ,EAAE,QAAQ,GACpB,CACL,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { RecordFormAttributeLinkAttributeFragment } from '../../../../../../_gqlTypes';
|
|
2
|
-
import { RecordFormElementsValueLinkValue } from '../../../../../../hooks/useGetRecordForm';
|
|
3
|
-
import { IRecordIdentity } from '../../../../../../types';
|
|
4
|
-
export declare const useGetOptionsQuery: ({ attribute, onSelectChange }: {
|
|
5
|
-
attribute: RecordFormAttributeLinkAttributeFragment;
|
|
6
|
-
onSelectChange: (values: Array<{
|
|
7
|
-
value: IRecordIdentity;
|
|
8
|
-
idValue: string;
|
|
9
|
-
}>) => void;
|
|
10
|
-
}) => {
|
|
11
|
-
loading: boolean;
|
|
12
|
-
selectOptions: import("aristid-ds/dist/Kit/DataEntry/Select/types").IKitOption[];
|
|
13
|
-
updateLeavField: (valuesToAdd: string[], valuesToRemove: RecordFormElementsValueLinkValue[]) => void;
|
|
14
|
-
};
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
2
|
-
// This file is released under LGPL V3
|
|
3
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
4
|
-
import { useQuery } from '@apollo/client';
|
|
5
|
-
import { SortOrder } from '../../../../../../_gqlTypes';
|
|
6
|
-
import { getRecordsFromLibraryQuery } from '../../../../../../_queries/records/getRecordsFromLibraryQuery';
|
|
7
|
-
import { useMemo } from 'react';
|
|
8
|
-
export const useGetOptionsQuery = ({ attribute, onSelectChange }) => {
|
|
9
|
-
let loading;
|
|
10
|
-
let data;
|
|
11
|
-
if (attribute.linkValuesList?.enable) {
|
|
12
|
-
loading = false;
|
|
13
|
-
data = { records: { list: attribute.linkValuesList.values, totalCount: attribute.linkValuesList.values.length } };
|
|
14
|
-
}
|
|
15
|
-
else {
|
|
16
|
-
({ loading, data } = useQuery(getRecordsFromLibraryQuery(), {
|
|
17
|
-
fetchPolicy: 'network-only',
|
|
18
|
-
variables: {
|
|
19
|
-
library: attribute.linked_library.id,
|
|
20
|
-
limit: 1000,
|
|
21
|
-
sort: {
|
|
22
|
-
field: 'label',
|
|
23
|
-
order: SortOrder.asc
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}));
|
|
27
|
-
}
|
|
28
|
-
const recordList = useMemo(() => data?.records?.list ?? [], [data]);
|
|
29
|
-
const selectOptions = useMemo(() => recordList.map(recordItem => {
|
|
30
|
-
const recordLabel = recordItem.whoAmI.label ?? recordItem.whoAmI.id;
|
|
31
|
-
return {
|
|
32
|
-
value: recordItem.whoAmI.id,
|
|
33
|
-
label: recordLabel,
|
|
34
|
-
idCard: {
|
|
35
|
-
description: recordLabel,
|
|
36
|
-
avatarProps: {
|
|
37
|
-
size: 'small',
|
|
38
|
-
shape: 'square',
|
|
39
|
-
imageFit: 'contain',
|
|
40
|
-
src: recordItem.whoAmI.preview?.small,
|
|
41
|
-
label: recordLabel
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
};
|
|
45
|
-
}), [recordList]);
|
|
46
|
-
const updateLeavField = (valuesToAdd, valuesToRemove) => {
|
|
47
|
-
const formattedValuesToAdd = recordList
|
|
48
|
-
.filter(record => valuesToAdd.includes(record.id))
|
|
49
|
-
.map(value => ({ value, idValue: null }));
|
|
50
|
-
const formattedValuesToRemove = valuesToRemove.map(cv => ({
|
|
51
|
-
idValue: cv.id_value,
|
|
52
|
-
value: null
|
|
53
|
-
}));
|
|
54
|
-
return onSelectChange([...formattedValuesToAdd, ...formattedValuesToRemove]);
|
|
55
|
-
};
|
|
56
|
-
return { loading, selectOptions, updateLeavField };
|
|
57
|
-
};
|
|
58
|
-
//# sourceMappingURL=useGetOptionsQuery.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useGetOptionsQuery.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.tsx"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAA2C,SAAS,EAAC,MAAM,eAAe,CAAC;AAClF,OAAO,EAGH,0BAA0B,EAC7B,MAAM,iDAAiD,CAAC;AAIzD,OAAO,EAAiB,OAAO,EAAC,MAAM,OAAO,CAAC;AAE9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAC/B,SAAS,EACT,cAAc,EAIjB,EAAE,EAAE;IACD,IAAI,OAAgB,CAAC;IACrB,IAAI,IAAiC,CAAC;IAEtC,IAAI,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC;QACnC,OAAO,GAAG,KAAK,CAAC;QAChB,IAAI,GAAG,EAAC,OAAO,EAAE,EAAC,IAAI,EAAE,SAAS,CAAC,cAAc,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,EAAC,EAAC,CAAC;IAClH,CAAC;SAAM,CAAC;QACJ,CAAC,EAAC,OAAO,EAAE,IAAI,EAAC,GAAG,QAAQ,CACvB,0BAA0B,EAAE,EAC5B;YACI,WAAW,EAAE,cAAc;YAC3B,SAAS,EAAE;gBACP,OAAO,EAAE,SAAS,CAAC,cAAc,CAAC,EAAE;gBACpC,KAAK,EAAE,IAAK;gBACZ,IAAI,EAAE;oBACF,KAAK,EAAE,OAAO;oBACd,KAAK,EAAE,SAAS,CAAC,GAAG;iBACvB;aACJ;SACJ,CACJ,CAAC,CAAC;IACP,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpE,MAAM,aAAa,GAAG,OAAO,CACzB,GAAG,EAAE,CACD,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE;QACxB,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAEpE,OAAO;YACH,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE;YAC3B,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE;gBACJ,WAAW,EAAE,WAAW;gBACxB,WAAW,EAAE;oBACT,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE,QAAQ;oBACf,QAAQ,EAAE,SAAS;oBACnB,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK;oBACrC,KAAK,EAAE,WAAW;iBACrB;aACJ;SACJ,CAAC;IACN,CAAC,CAAC,EACN,CAAC,UAAU,CAAC,CACf,CAAC;IAEF,MAAM,eAAe,GAAG,CAAC,WAAqB,EAAE,cAAkD,EAAE,EAAE;QAClG,MAAM,oBAAoB,GAAG,UAAU;aAClC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aACjD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC;QAE5C,MAAM,uBAAuB,GAAG,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACtD,OAAO,EAAE,EAAE,CAAC,QAAQ;YACpB,KAAK,EAAE,IAAI;SACd,CAAC,CAAC,CAAC;QAEJ,OAAO,cAAc,CAAC,CAAC,GAAG,oBAAoB,EAAE,GAAG,uBAAuB,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC;IAEF,OAAO,EAAC,OAAO,EAAE,aAAa,EAAE,eAAe,EAAC,CAAC;AACrD,CAAC,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { IRecordIdentityWhoAmI } from '../../../../../../types/records';
|
|
2
|
-
interface IRecordIdentityCellProps {
|
|
3
|
-
record: IRecordIdentityWhoAmI;
|
|
4
|
-
}
|
|
5
|
-
declare function RecordIdentityCell({ record }: IRecordIdentityCellProps): JSX.Element;
|
|
6
|
-
export default RecordIdentityCell;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
-
// This file is released under LGPL V3
|
|
4
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
-
import { RecordCard } from '../../../../../../components';
|
|
6
|
-
import { PreviewSize } from '../../../../../../constants';
|
|
7
|
-
function RecordIdentityCell({ record }) {
|
|
8
|
-
return _jsx(RecordCard, { record: record, size: PreviewSize.small });
|
|
9
|
-
}
|
|
10
|
-
export default RecordIdentityCell;
|
|
11
|
-
//# sourceMappingURL=RecordIdentityCell.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RecordIdentityCell.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,UAAU,EAAC,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAO1C,SAAS,kBAAkB,CAAC,EAAC,MAAM,EAA2B;IAC1D,OAAO,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,GAAI,CAAC;AACnE,CAAC;AAED,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
2
|
-
// This file is released under LGPL V3
|
|
3
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
4
|
-
import RecordIdentityCell from './RecordIdentityCell';
|
|
5
|
-
export default RecordIdentityCell;
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AACtD,eAAe,kBAAkB,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { RecordFormAttributeLinkAttributeFragment } from '../../../../../../../_gqlTypes';
|
|
2
|
-
import { IGetRecordsFromLibraryQueryElement } from '../../../../../../../_queries/records/getRecordsFromLibraryQuery';
|
|
3
|
-
interface IQuickSearchProps {
|
|
4
|
-
library: RecordFormAttributeLinkAttributeFragment['linked_library'];
|
|
5
|
-
onResult: (elements: IGetRecordsFromLibraryQueryElement[], totalCount: number) => void;
|
|
6
|
-
onClear: () => void;
|
|
7
|
-
pagination?: {
|
|
8
|
-
limit: number;
|
|
9
|
-
offset: number;
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
declare function QuickSearch({ library, onResult, onClear, pagination }: IQuickSearchProps): JSX.Element;
|
|
13
|
-
export default QuickSearch;
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
3
|
-
// This file is released under LGPL V3
|
|
4
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
5
|
-
import { useLazyQuery } from '@apollo/client';
|
|
6
|
-
import { Input } from 'antd';
|
|
7
|
-
import { useEffect, useRef, useState } from 'react';
|
|
8
|
-
import { ErrorDisplay } from '../../../../../../../components';
|
|
9
|
-
import { useSharedTranslation } from '../../../../../../../hooks/useSharedTranslation';
|
|
10
|
-
import { getRecordsFromLibraryQuery } from '../../../../../../../_queries/records/getRecordsFromLibraryQuery';
|
|
11
|
-
function QuickSearch({ library, onResult, onClear, pagination }) {
|
|
12
|
-
const { t } = useSharedTranslation();
|
|
13
|
-
const searchInputRef = useRef();
|
|
14
|
-
const [search, setSearch] = useState('');
|
|
15
|
-
const [runSearch, { loading, error }] = useLazyQuery(getRecordsFromLibraryQuery([], true), {
|
|
16
|
-
onCompleted: searchResult => {
|
|
17
|
-
const { totalCount, list } = searchResult.records;
|
|
18
|
-
onResult(list, totalCount);
|
|
19
|
-
}
|
|
20
|
-
});
|
|
21
|
-
const _handleSearchSubmit = (submittedSearch) => {
|
|
22
|
-
if (!submittedSearch) {
|
|
23
|
-
setSearch('');
|
|
24
|
-
return onClear();
|
|
25
|
-
}
|
|
26
|
-
setSearch(submittedSearch);
|
|
27
|
-
};
|
|
28
|
-
useEffect(() => {
|
|
29
|
-
searchInputRef.current?.focus();
|
|
30
|
-
}, []);
|
|
31
|
-
useEffect(() => {
|
|
32
|
-
if (!search) {
|
|
33
|
-
return;
|
|
34
|
-
}
|
|
35
|
-
runSearch({
|
|
36
|
-
variables: {
|
|
37
|
-
library: library.id,
|
|
38
|
-
fullText: search,
|
|
39
|
-
limit: pagination.limit ?? null,
|
|
40
|
-
offset: pagination.offset ?? null
|
|
41
|
-
}
|
|
42
|
-
});
|
|
43
|
-
}, [search, pagination, runSearch]);
|
|
44
|
-
if (error) {
|
|
45
|
-
return _jsx(ErrorDisplay, { message: error.message });
|
|
46
|
-
}
|
|
47
|
-
return (_jsx(Input.Search, { placeholder: t('record_edition.search_elements'), onSearch: _handleSearchSubmit, loading: loading, allowClear: true, ref: searchInputRef, "aria-label": t('record_edition.search_elements') }));
|
|
48
|
-
}
|
|
49
|
-
export default QuickSearch;
|
|
50
|
-
//# sourceMappingURL=QuickSearch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"QuickSearch.js","sourceRoot":"","sources":["../../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,KAAK,EAAU,MAAM,MAAM,CAAC;AACpC,OAAO,EAAC,SAAS,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAM,OAAO,CAAC;AAChD,OAAO,EAAC,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAEpE,OAAO,EACH,0BAA0B,EAI7B,MAAM,iDAAiD,CAAC;AASzD,SAAS,WAAW,CAAC,EAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAoB;IAC5E,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,cAAc,GAAG,MAAM,EAAY,CAAC;IAC1C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAS,EAAE,CAAC,CAAC;IAEjD,MAAM,CAAC,SAAS,EAAE,EAAC,OAAO,EAAE,KAAK,EAAC,CAAC,GAAG,YAAY,CAGhD,0BAA0B,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE;QACpC,WAAW,EAAE,YAAY,CAAC,EAAE;YACxB,MAAM,EAAC,UAAU,EAAE,IAAI,EAAC,GAAG,YAAY,CAAC,OAAO,CAAC;YAChD,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAC/B,CAAC;KACJ,CAAC,CAAC;IAEH,MAAM,mBAAmB,GAAG,CAAC,eAAuB,EAAE,EAAE;QACpD,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,SAAS,CAAC,EAAE,CAAC,CAAC;YACd,OAAO,OAAO,EAAE,CAAC;QACrB,CAAC;QAED,SAAS,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACX,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;IACpC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO;QACX,CAAC;QAED,SAAS,CAAC;YACN,SAAS,EAAE;gBACP,OAAO,EAAE,OAAO,CAAC,EAAE;gBACnB,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,IAAI;gBAC/B,MAAM,EAAE,UAAU,CAAC,MAAM,IAAI,IAAI;aACpC;SACJ,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;IAEpC,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,KAAC,YAAY,IAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAI,CAAC;IACpD,CAAC;IAED,OAAO,CACH,KAAC,KAAK,CAAC,MAAM,IACT,WAAW,EAAE,CAAC,CAAC,gCAAgC,CAAC,EAChD,QAAQ,EAAE,mBAAmB,EAC7B,OAAO,EAAE,OAAO,EAChB,UAAU,QACV,GAAG,EAAE,cAAc,gBACP,CAAC,CAAC,gCAAgC,CAAC,GACjD,CACL,CAAC;AACN,CAAC;AAED,eAAe,WAAW,CAAC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
// Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
|
|
2
|
-
// This file is released under LGPL V3
|
|
3
|
-
// License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
|
|
4
|
-
import QuickSearch from './QuickSearch';
|
|
5
|
-
export default QuickSearch;
|
|
6
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../src/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,eAAe,WAAW,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { IRecordIdentity } from '../../../../../../types/records';
|
|
2
|
-
import { RecordFormAttributeLinkAttributeFragment } from '../../../../../../_gqlTypes';
|
|
3
|
-
interface IValuesAddProps {
|
|
4
|
-
attribute: RecordFormAttributeLinkAttributeFragment;
|
|
5
|
-
onAdd: (values: IRecordIdentity[]) => void;
|
|
6
|
-
onClose: () => void;
|
|
7
|
-
}
|
|
8
|
-
declare function ValuesAdd({ attribute, onAdd, onClose }: IValuesAddProps): JSX.Element;
|
|
9
|
-
export default ValuesAdd;
|