@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.
Files changed (179) hide show
  1. package/dist/__mocks__/common/value.d.ts +1 -2
  2. package/dist/__mocks__/common/value.js +0 -11
  3. package/dist/__mocks__/common/value.js.map +1 -1
  4. package/dist/components/Explorer/DataView.js +10 -3
  5. package/dist/components/Explorer/DataView.js.map +1 -1
  6. package/dist/components/Explorer/Explorer.js +2 -0
  7. package/dist/components/Explorer/Explorer.js.map +1 -1
  8. package/dist/components/Explorer/TableTagGroup.d.ts +0 -1
  9. package/dist/components/Explorer/TableTagGroup.js +3 -16
  10. package/dist/components/Explorer/TableTagGroup.js.map +1 -1
  11. package/dist/components/Explorer/_constants.d.ts +3 -0
  12. package/dist/components/Explorer/_constants.js +3 -0
  13. package/dist/components/Explorer/_constants.js.map +1 -1
  14. package/dist/components/Explorer/actions-item/useEditItemAction.js +2 -1
  15. package/dist/components/Explorer/actions-item/useEditItemAction.js.map +1 -1
  16. package/dist/components/Explorer/actions-item/useReplaceItemAction.js +1 -1
  17. package/dist/components/Explorer/actions-item/useReplaceItemAction.js.map +1 -1
  18. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js +3 -3
  19. package/dist/components/Explorer/actions-mass/useDeleteLinkValues.js.map +1 -1
  20. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js +2 -1
  21. package/dist/components/Explorer/actions-primary/useCreatePrimaryAction.js.map +1 -1
  22. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.d.ts +4 -2
  23. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js +19 -3
  24. package/dist/components/Explorer/actions-primary/useLinkPrimaryAction.js.map +1 -1
  25. package/dist/components/Explorer/link-item/LinkModal.js +2 -1
  26. package/dist/components/Explorer/link-item/LinkModal.js.map +1 -1
  27. package/dist/components/Explorer/useViewSettingsReducer.js +9 -6
  28. package/dist/components/Explorer/useViewSettingsReducer.js.map +1 -1
  29. package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.d.ts +4 -0
  30. package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.js +4 -1
  31. package/dist/components/LibraryItemsList/LibraryItemsListTable/Cell/typeGuards.js.map +1 -1
  32. package/dist/components/RecordEdition/EditRecord/EditRecord.d.ts +1 -0
  33. package/dist/components/RecordEdition/EditRecord/EditRecord.js +24 -13
  34. package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
  35. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.d.ts +3 -1
  36. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +3 -3
  37. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
  38. package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +5 -0
  39. package/dist/components/RecordEdition/EditRecordContent/_types.js.map +1 -1
  40. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.d.ts +1 -1
  41. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js +2 -2
  42. package/dist/components/RecordEdition/EditRecordContent/uiElements/Container/Container.js.map +1 -1
  43. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.d.ts +7 -1
  44. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js +100 -92
  45. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/LinkField.js.map +1 -1
  46. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.d.ts +5 -0
  47. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js +39 -0
  48. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useEditRecord.js.map +1 -0
  49. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.d.ts +8 -0
  50. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js +23 -0
  51. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-item/useUnselectRecord.js.map +1 -0
  52. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.d.ts +9 -0
  53. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js +23 -0
  54. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-mass/useUnselectAllRecords.js.map +1 -0
  55. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.d.ts +8 -0
  56. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js +26 -0
  57. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useCreateRecord.js.map +1 -0
  58. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.d.ts +12 -0
  59. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js +24 -0
  60. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/action-primary/useRecordSelector.js.map +1 -0
  61. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.d.ts +19 -0
  62. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js +103 -0
  63. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecords.js.map +1 -0
  64. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.d.ts +22 -0
  65. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js +104 -0
  66. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-creation/useLinkRecordsInCreation.js.map +1 -0
  67. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.d.ts +22 -0
  68. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.js +85 -0
  69. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecords.js.map +1 -0
  70. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.d.ts +26 -0
  71. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js +106 -0
  72. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/link-record-in-edition/useLinkRecordsInEdition.js.map +1 -0
  73. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.d.ts +265 -0
  74. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js +12 -0
  75. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/ExplorerWrapper.js.map +1 -0
  76. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.d.ts +9 -0
  77. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js +15 -0
  78. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/LinkActionsButtons.js.map +1 -0
  79. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.d.ts +4 -0
  80. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js +22 -0
  81. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/shared/utils.js.map +1 -0
  82. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js +32 -46
  83. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardField.js.map +1 -1
  84. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js +1 -2
  85. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js.map +1 -1
  86. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js +1 -2
  87. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js.map +1 -1
  88. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js +1 -2
  89. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js.map +1 -1
  90. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js +2 -5
  91. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js.map +1 -1
  92. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js +1 -2
  93. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputNumberWrapper.js.map +1 -1
  94. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js +1 -2
  95. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js.map +1 -1
  96. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js +1 -2
  97. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js.map +1 -1
  98. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js +1 -2
  99. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js.map +1 -1
  100. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.d.ts +2 -3
  101. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js +2 -3
  102. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValue.js.map +1 -1
  103. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js +2 -5
  104. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/DSListSelect.js.map +1 -1
  105. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/_types.d.ts +1 -2
  106. package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/ComputeIndicator.d.ts +4 -2
  107. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/ComputeIndicator.js.map +1 -0
  108. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.d.ts +8 -0
  109. package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/DeleteAllValuesButton.js +2 -2
  110. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/DeleteAllValuesButton.js.map +1 -0
  111. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/calculatedInheritedFlags.js.map +1 -0
  112. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.d.ts +17 -0
  113. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js +76 -0
  114. package/dist/components/RecordEdition/EditRecordContent/uiElements/shared/useOutsideInteractionDetector.js.map +1 -0
  115. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.d.ts +1 -0
  116. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js +5 -3
  117. package/dist/components/RecordEdition/EditRecordModal/EditRecordModal.js.map +1 -1
  118. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js +4 -2
  119. package/dist/components/RecordEdition/EditRecordPage/EditRecordPage.js.map +1 -1
  120. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js +3 -0
  121. package/dist/components/RecordEdition/EditRecordSidebar/ValuesSummary/ValuesSummary.js.map +1 -1
  122. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.d.ts +2 -2
  123. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js +22 -3
  124. package/dist/components/RecordEdition/editRecordReducer/editRecordReducer.js.map +1 -1
  125. package/dist/components/RecordEdition/hooks/useGetSubmitButtons.d.ts +1 -1
  126. package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js +3 -3
  127. package/dist/components/RecordEdition/hooks/useGetSubmitButtons.js.map +1 -1
  128. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.d.ts +1 -0
  129. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js +3 -3
  130. package/dist/components/SelectRecordForLinkModal/SelectRecordForLinkModal.js.map +1 -1
  131. package/dist/constants.d.ts +2 -1
  132. package/dist/constants.js +2 -1
  133. package/dist/constants.js.map +1 -1
  134. package/dist/locales/en/shared.json +2 -1
  135. package/dist/locales/fr/shared.json +2 -1
  136. package/package.json +1 -1
  137. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.d.ts +0 -14
  138. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.js +0 -29
  139. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/FloatingMenuHandler.js.map +0 -1
  140. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.d.ts +0 -2
  141. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.js +0 -6
  142. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/FloatingMenuHandler/index.js.map +0 -1
  143. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.d.ts +0 -20
  144. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.js +0 -53
  145. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/MonoValueSelect.js.map +0 -1
  146. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.d.ts +0 -19
  147. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.js +0 -111
  148. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MonoValueSelect/useGetOptionsQuery.js.map +0 -1
  149. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.d.ts +0 -20
  150. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.js +0 -71
  151. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/MultiValueSelect.js.map +0 -1
  152. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.d.ts +0 -14
  153. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.js +0 -58
  154. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/MultiValueSelect/useGetOptionsQuery.js.map +0 -1
  155. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.d.ts +0 -6
  156. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.js +0 -11
  157. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/RecordIdentityCell.js.map +0 -1
  158. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.d.ts +0 -2
  159. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.js +0 -6
  160. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/RecordIdentityCell/index.js.map +0 -1
  161. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.d.ts +0 -13
  162. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.js +0 -50
  163. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/QuickSearch.js.map +0 -1
  164. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.d.ts +0 -2
  165. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.js +0 -6
  166. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/QuickSearch/index.js.map +0 -1
  167. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.d.ts +0 -9
  168. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.js +0 -215
  169. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/ValuesAdd.js.map +0 -1
  170. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.d.ts +0 -2
  171. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.js +0 -6
  172. package/dist/components/RecordEdition/EditRecordContent/uiElements/LinkField/ValuesAdd/index.js.map +0 -1
  173. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/ComputeIndicator.js.map +0 -1
  174. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/DeleteAllValuesButton.d.ts +0 -4
  175. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/DeleteAllValuesButton.js.map +0 -1
  176. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/calculatedInheritedFlags.js.map +0 -1
  177. /package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/ComputeIndicator.js +0 -0
  178. /package/dist/components/RecordEdition/EditRecordContent/uiElements/{StandardField → shared}/calculatedInheritedFlags.d.ts +0 -0
  179. /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":"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"}
@@ -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,2 +0,0 @@
1
- import RecordIdentityCell from './RecordIdentityCell';
2
- export default RecordIdentityCell;
@@ -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,2 +0,0 @@
1
- import QuickSearch from './QuickSearch';
2
- export default QuickSearch;
@@ -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;