@bit.rhplus/ui2.module-dropdown-list 0.1.112 → 0.1.114

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/index.d.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  export default ModuleDropdownList;
2
- declare function ModuleDropdownList({ value, onChange, onFreeTextCommit, placeholder, disabled, style, allowFreeText, createNewOnMismatch, showArrow, showAddButton, getContainer, moduleDefinition, }: {
2
+ declare function ModuleDropdownList({ value, onChange, onFreeTextCommit, placeholder, disabled, readOnly, style, allowFreeText, createNewOnMismatch, showArrow, showAddButton, getContainer, moduleDefinition, dropdownZIndex, currentUserKey, }: {
3
3
  value: any;
4
4
  onChange: any;
5
5
  onFreeTextCommit: any;
6
6
  placeholder?: string;
7
7
  disabled?: boolean;
8
+ readOnly?: boolean;
8
9
  style?: {};
9
10
  allowFreeText?: boolean;
10
11
  createNewOnMismatch?: boolean;
@@ -12,4 +13,6 @@ declare function ModuleDropdownList({ value, onChange, onFreeTextCommit, placeho
12
13
  showAddButton?: boolean;
13
14
  getContainer?: () => HTMLElement;
14
15
  moduleDefinition: any;
16
+ dropdownZIndex?: number;
17
+ currentUserKey?: any;
15
18
  }): import("react/jsx-runtime").JSX.Element;
package/dist/index.js CHANGED
@@ -39,7 +39,7 @@ const DetailPanel = ({ definition, item }) => {
39
39
  color: item[f.key] ? 'inherit' : '#bfbfbf',
40
40
  }, children: item[f.key] ?? '—' })] }, f.key))) }));
41
41
  };
42
- const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = 'Vyberte', disabled = false, style = {}, allowFreeText = true, createNewOnMismatch = false, showArrow = true, showAddButton = true, getContainer = () => document.body, moduleDefinition, }) => {
42
+ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = 'Vyberte', disabled = false, readOnly = false, style = {}, allowFreeText = true, createNewOnMismatch = false, showArrow = true, showAddButton = true, getContainer = () => document.body, moduleDefinition, dropdownZIndex = 9999, currentUserKey = null, }) => {
43
43
  const moduleName = moduleDefinition?.moduleName;
44
44
  const { fetchDataUIAsync } = useData();
45
45
  const { accessToken } = useOidcAccessToken();
@@ -65,6 +65,13 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
65
65
  .catch(() => setAllItems([]))
66
66
  .finally(() => setAllItemsLoading(false));
67
67
  }, []); // pouze při mount
68
+ // ─── Pomocná funkce: display text s podporou "Já" ────────────────────────────
69
+ const resolveDisplayText = useCallback((item) => {
70
+ const vf = moduleDefinition?.valueField || 'id';
71
+ if (currentUserKey && item && String(item[vf]) === String(currentUserKey))
72
+ return 'Já';
73
+ return moduleDefinition?.getDisplayValue?.(item) || item?.code || item?.name || '';
74
+ }, [currentUserKey, moduleDefinition]);
68
75
  // ─── Free-text stav ──────────────────────────────────────────────────────────
69
76
  const initialText = useMemo(() => {
70
77
  if (!allowFreeText)
@@ -79,8 +86,29 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
79
86
  const [isLinked, setIsLinked] = useState(null);
80
87
  const [selectedItem, setSelectedItem] = useState(null);
81
88
  const [detailOpen, setDetailOpen] = useState(false);
89
+ const selectedItemIcon = useMemo(() => {
90
+ if (isLinked !== true || !selectedItem || !moduleDefinition?.getItemIcon)
91
+ return null;
92
+ return moduleDefinition.getItemIcon(selectedItem);
93
+ }, [isLinked, selectedItem, moduleDefinition]);
94
+ // Posun textu doprava o skutečnou šířku ikony
95
+ useEffect(() => {
96
+ const input = freeTextWrapperRef.current?.querySelector('input');
97
+ if (!input)
98
+ return;
99
+ if (!selectedItemIcon) {
100
+ input.style.paddingLeft = '';
101
+ return;
102
+ }
103
+ const iconEl = iconWrapperRef.current;
104
+ if (!iconEl)
105
+ return;
106
+ const width = iconEl.getBoundingClientRect().width;
107
+ input.style.paddingLeft = `${width + 8 + 4}px`; // 8px left offset + 4px mezera
108
+ }, [selectedItemIcon]);
82
109
  const justSelectedRef = useRef(false);
83
110
  const freeTextWrapperRef = useRef(null);
111
+ const iconWrapperRef = useRef(null);
84
112
  const inputTextRef = useRef(initialText);
85
113
  inputTextRef.current = inputText;
86
114
  const isLinkedRef = useRef(null);
@@ -102,7 +130,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
102
130
  const vf = moduleDefinition?.valueField || 'id';
103
131
  const showItem = (item) => {
104
132
  console.log('[ModuleDropdownList] showItem:', { id: item?.[vf], displayValue: moduleDefinition?.getDisplayValue?.(item) });
105
- const displayText = moduleDefinition?.getDisplayValue?.(item) || item.code || item.name || '';
133
+ const displayText = resolveDisplayText(item);
106
134
  setInputText(displayText);
107
135
  setIsLinked(true);
108
136
  setSelectedItem(item);
@@ -147,27 +175,31 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
147
175
  '';
148
176
  return label.toLowerCase().includes(inputText.toLowerCase());
149
177
  });
150
- return source.slice(0, 15).map((item) => ({
151
- value: String(item[vf]),
152
- label: moduleDefinition?.getDisplayValue?.(item) ||
153
- item.code ||
154
- item.name ||
155
- '',
156
- item,
157
- }));
158
- }, [allItems, inputText, moduleDefinition]);
178
+ // Vyfiltruj aktuálně vybraný item je již zobrazen přes selectedItemIcon v inputu,
179
+ // zobrazení ve výsledcích by způsobilo zdánlivý duplikát (jednou s fotkou, jednou s iniciálami).
180
+ const filtered = isLinked === true && selectedItem
181
+ ? source.filter((item) => String(item[vf]) !== String(selectedItem[vf]))
182
+ : source;
183
+ return filtered.map((item) => {
184
+ const displayText = resolveDisplayText(item);
185
+ return {
186
+ value: String(item[vf]),
187
+ label: moduleDefinition?.renderOption
188
+ ? moduleDefinition.renderOption(item, displayText)
189
+ : displayText,
190
+ item,
191
+ };
192
+ });
193
+ }, [allItems, inputText, moduleDefinition, isLinked, selectedItem, resolveDisplayText]);
159
194
  suggestionsRef.current = suggestions;
160
195
  // Catalog-only: options pro Select
161
196
  const catalogOptions = useMemo(() => {
162
197
  const vf = moduleDefinition?.valueField || 'id';
163
198
  return allItems.map((item) => ({
164
199
  value: item[vf],
165
- label: moduleDefinition?.getDisplayValue?.(item) ||
166
- item.code ||
167
- item.name ||
168
- String(item[vf]),
200
+ label: resolveDisplayText(item) || String(item[vf]),
169
201
  }));
170
- }, [allItems, moduleDefinition]);
202
+ }, [allItems, moduleDefinition, resolveDisplayText]);
171
203
  // ─── Výběr z katalogu (shared) ────────────────────────────────────────────────
172
204
  const commitCatalogItem = useCallback((item) => {
173
205
  if (!item)
@@ -208,11 +240,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
208
240
  return;
209
241
  const item = params.data;
210
242
  if (allowFreeText) {
211
- const displayText = moduleDefinition?.getDisplayValue?.(item) ||
212
- item.code ||
213
- item.name ||
214
- '';
215
- setInputText(displayText);
243
+ setInputText(resolveDisplayText(item));
216
244
  }
217
245
  isLinkedRef.current = true; // synchronní update před zavřením modalu (onCancel race condition)
218
246
  setIsLinked(true);
@@ -223,10 +251,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
223
251
  const handleAutoCompleteSelect = useCallback((optionValue, option) => {
224
252
  justSelectedRef.current = true;
225
253
  const item = option.item;
226
- const displayText = moduleDefinition?.getDisplayValue?.(item) ||
227
- item.code ||
228
- item.name ||
229
- '';
254
+ const displayText = resolveDisplayText(item);
230
255
  setInputText(displayText);
231
256
  setDropdownOpen(false);
232
257
  setIsLinked(true);
@@ -273,11 +298,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
273
298
  else if (localMatches.length === 1) {
274
299
  // Přesná jedna shoda → auto-výběr
275
300
  const item = localMatches[0];
276
- const displayText = moduleDefinition?.getDisplayValue?.(item) ||
277
- item.code ||
278
- item.name ||
279
- text.trim();
280
- setInputText(displayText);
301
+ setInputText(resolveDisplayText(item) || text.trim());
281
302
  setIsLinked(true);
282
303
  commitCatalogItem(item);
283
304
  }
@@ -306,11 +327,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
306
327
  if (!params.data)
307
328
  return;
308
329
  const item = params.data;
309
- const displayText = moduleDefinition?.getDisplayValue?.(item) ||
310
- item.code ||
311
- item.name ||
312
- '';
313
- setInputText(displayText);
330
+ setInputText(resolveDisplayText(item));
314
331
  isLinkedRef.current = true; // synchronní update před zavřením modalu (onCancel race condition)
315
332
  setIsLinked(true);
316
333
  setMultiMatchModalOpen(false);
@@ -356,19 +373,20 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
356
373
  return () => input.removeEventListener('keydown', handler, true);
357
374
  }, [allowFreeText, handleFreeTextCommit]);
358
375
  // ─── Shared: create-new modal ────────────────────────────────────────────────
359
- const createNewModalContent = moduleDefinition?.createFormComponent ? (_jsx(DraggableModal, { open: createNewModalOpen, title: moduleDefinition.createModalTitle || 'Nový záznam', width: moduleDefinition.createModalWidth || 600, onCancel: () => setCreateNewModalOpen(false), maskClosable: false, getContainer: getContainer, zIndex: 99999999, footer: null, children: React.createElement(moduleDefinition.createFormComponent, {
376
+ const createNewModalContent = moduleDefinition?.createFormComponent ? (_jsx(DraggableModal, { open: createNewModalOpen, title: moduleDefinition.createModalTitle || 'Nový záznam', width: moduleDefinition.createModalWidth || 600, onCancel: () => setCreateNewModalOpen(false), maskClosable: false, getContainer: getContainer, zIndex: dropdownZIndex + 1, footer: null, children: React.createElement(moduleDefinition.createFormComponent, {
360
377
  initialName: createNewInitialName,
361
378
  onSuccess: handleCreateSuccess,
362
379
  onCancel: () => setCreateNewModalOpen(false),
363
380
  fetchDataUIAsync,
364
381
  accessToken,
365
382
  createRecord: moduleDefinition.createRecord,
383
+ ...(moduleDefinition.createFormComponentProps || {}),
366
384
  }) })) : null;
367
385
  const addButton = showAddButton && moduleDefinition?.createFormComponent ? (_jsx(Button, { icon: _jsx(PlusOutlined, {}), onMouseDown: (e) => e.preventDefault(), onClick: () => {
368
386
  setCreateNewInitialName('');
369
387
  setCreateNewModalOpen(true);
370
- }, disabled: disabled })) : null;
371
- const searchButton = (onClickFn) => (_jsx(Button, { icon: _jsx(SearchOutlined, {}), onMouseDown: (e) => e.preventDefault(), onClick: onClickFn, disabled: disabled }));
388
+ }, disabled: disabled || readOnly })) : null;
389
+ const searchButton = (onClickFn) => (_jsx(Button, { icon: _jsx(SearchOutlined, {}), onMouseDown: (e) => e.preventDefault(), onClick: onClickFn, disabled: disabled || readOnly }));
372
390
  // ─── Shared: catalog modal ────────────────────────────────────────────────────
373
391
  const catalogModalContent = (_jsx(DraggableModal, { open: catalogModalOpen, title: moduleDefinition?.modalTitle ||
374
392
  `Vybrat z modulu: ${moduleDefinition?.moduleName}`, width: moduleDefinition?.modalWidth || 800, onCancel: () => {
@@ -378,7 +396,7 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
378
396
  if (allowFreeText && inputTextRef.current && isLinkedRef.current !== true) {
379
397
  setTimeout(() => handleFreeTextCommit(inputTextRef.current), 0);
380
398
  }
381
- }, maskClosable: false, getContainer: getContainer, zIndex: 99999999, footer: null, children: allItemsLoading ? (_jsx("div", { style: { padding: 24, textAlign: 'center' }, children: "Na\u010D\u00EDt\u00E1n\u00ED..." })) : (_jsxs(_Fragment, { children: [_jsx(Input, { prefix: _jsx(SearchOutlined, { style: { color: '#bfbfbf' } }), placeholder: "Hledat...", value: catalogFilter, onChange: (e) => setCatalogFilter(e.target.value), allowClear: true, style: { marginBottom: 8 } }), _jsx("div", { className: "ag-theme-alpine", style: { height: 400, width: '100%' }, children: _jsx(AgGridReact, { columnDefs: moduleDefinition?.columnDefs || [], rowData: allItems, quickFilterText: catalogFilter, onRowDoubleClicked: (params) => {
399
+ }, maskClosable: false, getContainer: getContainer, zIndex: dropdownZIndex + 1, footer: null, children: allItemsLoading ? (_jsx("div", { style: { padding: 24, textAlign: 'center' }, children: "Na\u010D\u00EDt\u00E1n\u00ED..." })) : (_jsxs(_Fragment, { children: [_jsx(Input, { prefix: _jsx(SearchOutlined, { style: { color: '#bfbfbf' } }), placeholder: "Hledat...", value: catalogFilter, onChange: (e) => setCatalogFilter(e.target.value), allowClear: true, style: { marginBottom: 8 } }), _jsx("div", { className: "ag-theme-alpine", style: { height: 400, width: '100%' }, children: _jsx(AgGridReact, { columnDefs: moduleDefinition?.columnDefs || [], rowData: allItems, quickFilterText: catalogFilter, onRowDoubleClicked: (params) => {
382
400
  handleCatalogModalSelect(params);
383
401
  setCatalogFilter('');
384
402
  } }) })] })) }));
@@ -386,26 +404,26 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
386
404
  if (!allowFreeText) {
387
405
  const vf = moduleDefinition?.valueField || 'id';
388
406
  const currentId = value && typeof value === 'object' ? value[vf] : value;
389
- return (_jsxs("div", { style: { display: 'flex', gap: 4, ...style }, children: [_jsx(Select, { style: { flex: 1 }, value: currentId, options: catalogOptions, loading: allItemsLoading, showSearch: true, filterOption: (input, option) => String(option?.label || '')
390
- .toLowerCase()
391
- .includes(input.toLowerCase()), onChange: handleCatalogSelectChange, getPopupContainer: () => document.body, dropdownStyle: { zIndex: 9999 }, placeholder: placeholder, disabled: disabled }), addButton, searchButton(() => {
392
- catalogModalOpenRef.current = true;
393
- setCatalogModalOpen(true);
394
- }), catalogModalContent, createNewModalContent] }));
407
+ return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 4 }, children: [_jsxs("div", { style: { display: 'flex', gap: 4, ...style }, children: [_jsx(Select, { style: { flex: 1 }, value: currentId, options: catalogOptions, loading: allItemsLoading, showSearch: !readOnly, filterOption: (input, option) => String(option?.label || '')
408
+ .toLowerCase()
409
+ .includes(input.toLowerCase()), onChange: readOnly ? undefined : handleCatalogSelectChange, open: readOnly ? false : undefined, getPopupContainer: () => document.body, placeholder: placeholder, disabled: disabled }), addButton, searchButton(() => {
410
+ catalogModalOpenRef.current = true;
411
+ setCatalogModalOpen(true);
412
+ }), moduleDefinition?.detailPanel && showArrow && (_jsx(Button, { icon: _jsx(DownOutlined, { style: {
413
+ transition: 'transform 0.2s',
414
+ transform: detailOpen ? 'rotate(180deg)' : 'rotate(0deg)',
415
+ } }), onMouseDown: (e) => e.preventDefault(), onClick: () => setDetailOpen((v) => !v), disabled: disabled || !selectedItem })), catalogModalContent, createNewModalContent] }), moduleDefinition?.detailPanel && detailOpen && selectedItem && (_jsx(DetailPanel, { definition: moduleDefinition.detailPanel, item: selectedItem }))] }));
395
416
  }
396
417
  // ─── Render: free-text mód ────────────────────────────────────────────────────
397
- return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 4 }, children: [_jsxs("div", { style: { display: 'flex', gap: 4, alignItems: 'center', ...style }, children: [_jsxs("div", { ref: freeTextWrapperRef, style: { flex: 1, position: 'relative' }, children: [moduleDefinition?.detailPanel && showArrow && (_jsx(DownOutlined, { onMouseDown: (e) => e.preventDefault(), onClick: () => selectedItem && setDetailOpen((v) => !v), style: {
418
+ return (_jsxs("div", { style: { display: 'flex', flexDirection: 'column', gap: 4 }, children: [_jsxs("div", { style: { display: 'flex', gap: 4, alignItems: 'center', ...style }, children: [_jsxs("div", { ref: freeTextWrapperRef, style: { flex: 1, position: 'relative' }, children: [selectedItemIcon && (_jsx("span", { ref: iconWrapperRef, style: {
398
419
  position: 'absolute',
399
- left: -18,
420
+ left: 8,
400
421
  top: '50%',
401
- transform: `translateY(-50%) rotate(${detailOpen ? 180 : 0}deg)`,
402
- transition: 'transform 0.2s',
403
- fontSize: 11,
404
- cursor: selectedItem ? 'pointer' : 'default',
405
- color: selectedItem ? 'rgba(0,0,0,0.45)' : '#d9d9d9',
422
+ transform: 'translateY(-50%)',
406
423
  zIndex: 1,
407
- pointerEvents: selectedItem ? 'auto' : 'none',
408
- } })), _jsx(AutoComplete, { style: { width: '100%' }, value: inputText, options: suggestions, open: dropdownOpen && suggestions.length > 0, defaultActiveFirstOption: false, allowClear: true, onChange: (text) => {
424
+ lineHeight: 0,
425
+ pointerEvents: 'none',
426
+ }, children: selectedItemIcon })), _jsx(AutoComplete, { style: { width: '100%' }, value: inputText, options: suggestions, open: dropdownOpen && suggestions.length > 0, defaultActiveFirstOption: false, allowClear: true, onChange: (text) => {
409
427
  setInputText(text || '');
410
428
  setIsLinked(null);
411
429
  setSelectedItem(null);
@@ -413,10 +431,18 @@ const ModuleDropdownList = ({ value, onChange, onFreeTextCommit, placeholder = '
413
431
  }, onSelect: handleAutoCompleteSelect, onFocus: () => setDropdownOpen(true), onBlur: () => {
414
432
  setTimeout(() => setDropdownOpen(false), 150);
415
433
  handleBlur();
416
- }, notFoundContent: allItemsLoading ? 'Načítání...' : null, placeholder: placeholder, disabled: disabled, getPopupContainer: () => document.body, dropdownStyle: { zIndex: 9999 } })] }), !createNewOnMismatch && isLinked === true && (_jsx(LinkOutlined, { style: { color: '#52c41a', alignSelf: 'center', fontSize: 14, flexShrink: 0 } })), !createNewOnMismatch && isLinked === false && inputText && (_jsx(EditOutlined, { style: { color: '#faad14', alignSelf: 'center', fontSize: 14, flexShrink: 0 } })), addButton, searchButton(() => {
434
+ }, notFoundContent: allItemsLoading ? 'Načítání...' : null, placeholder: placeholder, disabled: disabled, getPopupContainer: () => document.body }), readOnly && (_jsx("div", { style: {
435
+ position: 'absolute',
436
+ inset: 0,
437
+ zIndex: 1,
438
+ cursor: 'default',
439
+ } }))] }), !createNewOnMismatch && isLinked === true && (_jsx(LinkOutlined, { style: { color: '#52c41a', alignSelf: 'center', fontSize: 14, flexShrink: 0 } })), !createNewOnMismatch && isLinked === false && inputText && (_jsx(EditOutlined, { style: { color: '#faad14', alignSelf: 'center', fontSize: 14, flexShrink: 0 } })), addButton, searchButton(() => {
417
440
  catalogModalOpenRef.current = true;
418
441
  setCatalogModalOpen(true);
419
- })] }), moduleDefinition?.detailPanel && detailOpen && selectedItem && (_jsx(DetailPanel, { definition: moduleDefinition.detailPanel, item: selectedItem })), catalogModalContent, createNewModalContent, _jsx(DraggableModal, { open: multiMatchModalOpen, title: "Nalezeno v\u00EDce shod", width: moduleDefinition?.modalWidth || 800, onCancel: () => setMultiMatchModalOpen(false), maskClosable: false, getContainer: getContainer, zIndex: 99999999, footer: null, children: _jsx("div", { className: "ag-theme-alpine", style: { height: 400, width: '100%' }, children: _jsx(AgGridReact, { columnDefs: moduleDefinition?.columnDefs || [], rowData: multiMatchData, onRowDoubleClicked: handleMultiMatchSelect }) }) })] }));
442
+ }), moduleDefinition?.detailPanel && showArrow && (_jsx(Button, { icon: _jsx(DownOutlined, { style: {
443
+ transition: 'transform 0.2s',
444
+ transform: detailOpen ? 'rotate(180deg)' : 'rotate(0deg)',
445
+ } }), onMouseDown: (e) => e.preventDefault(), onClick: () => setDetailOpen((v) => !v), disabled: disabled || !selectedItem }))] }), moduleDefinition?.detailPanel && detailOpen && selectedItem && (_jsx(DetailPanel, { definition: moduleDefinition.detailPanel, item: selectedItem })), catalogModalContent, createNewModalContent, _jsx(DraggableModal, { open: multiMatchModalOpen, title: "Nalezeno v\u00EDce shod", width: moduleDefinition?.modalWidth || 800, onCancel: () => setMultiMatchModalOpen(false), maskClosable: false, getContainer: getContainer, zIndex: dropdownZIndex + 1, footer: null, children: _jsx("div", { className: "ag-theme-alpine", style: { height: 400, width: '100%' }, children: _jsx(AgGridReact, { columnDefs: moduleDefinition?.columnDefs || [], rowData: multiMatchData, onRowDoubleClicked: handleMultiMatchSelect }) }) })] }));
420
446
  };
421
447
  export default ModuleDropdownList;
422
448
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AACjF,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,MAAM,MAAM,gBAAgB,CAAC;AACpC,OAAO,MAAM,MAAM,gBAAgB,CAAC;AACpC,OAAO,KAAK,MAAM,eAAe,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC3G,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,cAAc,MAAM,6BAA6B,CAAC;AACzD,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,uEAAuE;AACvE,MAAM,MAAM,GAAG,EAAE,CAAC;AAElB,iFAAiF;AACjF,MAAM,WAAW,GAAG,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;IAC3C,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACtC,IAAI,OAAO,UAAU,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC5E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAC3C,OAAO,CACL,cACE,KAAK,EAAE;YACL,UAAU,EAAE,SAAS;YACrB,MAAM,EAAE,mBAAmB;YAC3B,YAAY,EAAE,CAAC;YACf,OAAO,EAAE,UAAU;YACnB,OAAO,EAAE,MAAM;YACf,mBAAmB,EAAE,SAAS;YAC9B,GAAG,EAAE,UAAU;YACf,QAAQ,EAAE,EAAE;SACb,YAEA,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAC5B,eAAiB,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,aAC9D,gBAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,EAAE,aAAG,CAAC,CAAC,KAAK,SAAS,EACnE,eACE,KAAK,EAAE;wBACL,UAAU,EAAE,GAAG;wBACf,QAAQ,EAAE,QAAQ;wBAClB,YAAY,EAAE,UAAU;wBACxB,UAAU,EAAE,QAAQ;wBACpB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;qBAC3C,YAEA,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GACd,KAZC,CAAC,CAAC,GAAG,CAaT,CACP,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,EAC1B,KAAK,EACL,QAAQ,EACR,gBAAgB,EAChB,WAAW,GAAG,SAAS,EACvB,QAAQ,GAAG,KAAK,EAChB,KAAK,GAAG,EAAE,EACV,aAAa,GAAG,IAAI,EACpB,mBAAmB,GAAG,KAAK,EAC3B,SAAS,GAAG,IAAI,EAChB,aAAa,GAAG,IAAI,EACpB,YAAY,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAClC,gBAAgB,GACjB,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,gBAAgB,EAAE,UAAU,CAAC;IAEhD,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,EAAE,CAAC;IACvC,MAAM,EAAE,WAAW,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAE7C,iFAAiF;IACjF,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAE5E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAC7C,IAAI,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;YACvB,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;YAChC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,gBAAgB;aACb,SAAS,CAAC,EAAE,EAAE,gBAAgB,EAAE,WAAW,CAAC;aAC5C,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACb,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC;YAC3B,WAAW,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;aAC5B,OAAO,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9C,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB;IAE1B,gFAAgF;IAChF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,IAAI,CAAC,aAAa;YAAE,OAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB;IAE1B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,qEAAqE;IACrE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/C,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACzC,YAAY,CAAC,OAAO,GAAG,SAAS,CAAC;IACjC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACjC,WAAW,CAAC,OAAO,GAAG,QAAQ,CAAC;IAC/B,+EAA+E;IAC/E,MAAM,cAAc,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC;IAClC,mFAAmF;IACnF,MAAM,2BAA2B,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEjD,gFAAgF;IAChF,iFAAiF;IACjF,2DAA2D;IAC3D,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,CAAC;QACxH,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,qDAAqD;QACrD,IAAI,eAAe;YAAE,OAAO;QAE5B,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAEhD,MAAM,QAAQ,GAAG,CAAC,IAAI,EAAE,EAAE;YACxB,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3H,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YAC5E,YAAY,CAAC,WAAW,CAAC,CAAC;YAC1B,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,eAAe,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC;QAEF,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACnE,IAAI,IAAI,EAAE,CAAC;gBACT,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;QACH,CAAC;QAED,0DAA0D;QAC1D,IAAI,gBAAgB,EAAE,SAAS,EAAE,CAAC;YAChC,gBAAgB,CAAC,SAAS,CAAC,KAAK,EAAE,gBAAgB,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC7E,IAAI,IAAI,EAAE,CAAC;oBACT,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,kDAAkD;IAE1F,iFAAiF;IACjF,MAAM,CAAC,kBAAkB,EAAE,qBAAqB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpE,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAErE,iFAAiF;IACjF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChE,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACzD,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,mBAAmB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1C,mBAAmB,CAAC,OAAO,GAAG,gBAAgB,CAAC;IAC/C,MAAM,sBAAsB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,sBAAsB,CAAC,OAAO,GAAG,mBAAmB,CAAC;IAErD,iFAAiF;IACjF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE;QAC/B,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,MAAM,MAAM,GACV,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;YAC7B,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;gBACvB,MAAM,KAAK,GACT,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;oBACzC,IAAI,CAAC,IAAI;oBACT,IAAI,CAAC,IAAI;oBACT,EAAE,CAAC;gBACL,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACT,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACxC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvB,KAAK,EACH,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;gBACzC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;gBACT,EAAE;YACJ,IAAI;SACL,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAC5C,cAAc,CAAC,OAAO,GAAG,WAAW,CAAC;IAErC,mCAAmC;IACnC,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC7B,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YACf,KAAK,EACH,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;gBACzC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;gBACT,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACnB,CAAC,CAAC,CAAC;IACN,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC,CAAC;IAEjC,iFAAiF;IACjF,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,IAAI,EAAE,EAAE;QACP,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,eAAe,CAAC,IAAI,CAAC,CAAC;QACtB,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;YACnC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACrB,CAAC;IACH,CAAC,EACD,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAC7B,CAAC;IAEF,MAAM,mBAAmB,GAAG,WAAW,CACrC,CAAC,OAAO,EAAE,EAAE;QACV,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;YAC9D,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAC1C,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;YACrE,YAAY,CAAC,WAAW,CAAC,CAAC;YAC1B,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QACD,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC,EACD,CAAC,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAClD,CAAC;IAEF,gFAAgF;IAChF,MAAM,yBAAyB,GAAG,WAAW,CAC3C,CAAC,UAAU,EAAE,EAAE;QACb,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,IAAI,OAAO,QAAQ,KAAK,UAAU;gBAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QACD,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACxE,IAAI,IAAI;YAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC,EACD,CAAC,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,QAAQ,CAAC,CAC1D,CAAC;IAEF,iFAAiF;IACjF,MAAM,wBAAwB,GAAG,WAAW,CAC1C,CAAC,MAAM,EAAE,EAAE;QACT,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO;QACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;gBACzC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;gBACT,EAAE,CAAC;YACL,YAAY,CAAC,WAAW,CAAC,CAAC;QAC5B,CAAC;QACD,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,mEAAmE;QAC/F,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,EACD,CAAC,aAAa,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CACrD,CAAC;IAEF,iFAAiF;IACjF,MAAM,wBAAwB,GAAG,WAAW,CAC1C,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE;QACtB,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC;QAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;YACzC,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,IAAI;YACT,EAAE,CAAC;QACL,YAAY,CAAC,WAAW,CAAC,CAAC;QAC1B,eAAe,CAAC,KAAK,CAAC,CAAC;QACvB,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACxB,mCAAmC;QACnC,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;IAC7D,CAAC,EACD,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CACtC,CAAC;IACF,2BAA2B,CAAC,OAAO,GAAG,wBAAwB,CAAC;IAE/D,iFAAiF;IACjF,MAAM,oBAAoB,GAAG,WAAW,CACtC,CAAC,IAAI,EAAE,EAAE;QACP,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC1B,IAAI,OAAO,QAAQ,KAAK,UAAU;gBAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC5C,MAAM,KAAK,GACT,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;gBACzC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;gBACT,EAAE,CAAC;YACL,OAAO,KAAK,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,IAAI,mBAAmB,IAAI,gBAAgB,EAAE,mBAAmB,EAAE,CAAC;gBACjE,iEAAiE;gBACjE,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACrC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;iBAAM,CAAC;gBACN,sCAAsC;gBACtC,WAAW,CAAC,KAAK,CAAC,CAAC;gBACnB,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,aAAa,CAAC,KAAK,CAAC,CAAC;gBACrB,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;oBAC3C,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAChC,CAAC;gBACD,IAAI,OAAO,QAAQ,KAAK,UAAU;oBAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACzD,kBAAkB,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;YAC7D,CAAC;QACH,CAAC;aAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,kCAAkC;YAClC,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC7B,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;gBACzC,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI;gBACT,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,YAAY,CAAC,WAAW,CAAC,CAAC;YAC1B,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,gCAAgC;YAChC,iBAAiB,CAAC,YAAY,CAAC,CAAC;YAChC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC,EACD,CAAC,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAC5E,CAAC;IAEF,iFAAiF;IACjF,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;YAC5B,eAAe,CAAC,OAAO,GAAG,KAAK,CAAC;YAChC,OAAO;QACT,CAAC;QACD,4EAA4E;QAC5E,IAAI,WAAW,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO;QACzC,uEAAuE;QACvE,IAAI,YAAY,CAAC,OAAO,IAAI,CAAC,sBAAsB,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;YAC5F,oBAAoB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;IACH,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC;IAE3B,iFAAiF;IACjF,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,MAAM,EAAE,EAAE;QACT,IAAI,CAAC,MAAM,CAAC,IAAI;YAAE,OAAO;QACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,MAAM,WAAW,GACf,gBAAgB,EAAE,eAAe,EAAE,CAAC,IAAI,CAAC;YACzC,IAAI,CAAC,IAAI;YACT,IAAI,CAAC,IAAI;YACT,EAAE,CAAC;QACL,YAAY,CAAC,WAAW,CAAC,CAAC;QAC1B,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,mEAAmE;QAC/F,WAAW,CAAC,IAAI,CAAC,CAAC;QAClB,sBAAsB,CAAC,KAAK,CAAC,CAAC;QAC9B,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC,EACD,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CACtC,CAAC;IAEF,gFAAgF;IAChF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,aAAa;YAAE,OAAO;QAC3B,MAAM,EAAE,GAAG,kBAAkB,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,MAAM,KAAK,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;YACpB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;gBAAE,OAAO;YAE9B,iEAAiE;YACjE,MAAM,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,gCAAgC,CAAC,CAAC;YAChF,IAAI,cAAc,EAAE,CAAC;gBACnB,CAAC,CAAC,wBAAwB,EAAE,CAAC;gBAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;gBACnB,MAAM,SAAS,GAAG,cAAc,CAAC,aAAa,CAAC,iCAAiC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;gBACvG,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;oBAC1E,IAAI,OAAO,EAAE,CAAC;wBACZ,2BAA2B,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;wBAC5D,OAAO;oBACT,CAAC;gBACH,CAAC;gBACD,OAAO;YACT,CAAC;YAED,qCAAqC;YACrC,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;gBAAE,OAAO;YACzB,CAAC,CAAC,wBAAwB,EAAE,CAAC;YAC7B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC;QAEF,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACjD,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IACnE,CAAC,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE1C,gFAAgF;IAChF,MAAM,qBAAqB,GAAG,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CACpE,KAAC,cAAc,IACb,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,IAAI,aAAa,EACzD,KAAK,EAAE,gBAAgB,CAAC,gBAAgB,IAAI,GAAG,EAC/C,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC,EAC5C,YAAY,EAAE,KAAK,EACnB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,IAAI,YAEX,KAAK,CAAC,aAAa,CAAC,gBAAgB,CAAC,mBAAmB,EAAE;YACzD,WAAW,EAAE,oBAAoB;YACjC,SAAS,EAAE,mBAAmB;YAC9B,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,CAAC;YAC5C,gBAAgB;YAChB,WAAW;YACX,YAAY,EAAE,gBAAgB,CAAC,YAAY;SAC5C,CAAC,GACa,CAClB,CAAC,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,SAAS,GAAG,aAAa,IAAI,gBAAgB,EAAE,mBAAmB,CAAC,CAAC,CAAC,CACzE,KAAC,MAAM,IACL,IAAI,EAAE,KAAC,YAAY,KAAG,EACtB,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACtC,OAAO,EAAE,GAAG,EAAE;YACZ,uBAAuB,CAAC,EAAE,CAAC,CAAC;YAC5B,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC,EACD,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,YAAY,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAClC,KAAC,MAAM,IACL,IAAI,EAAE,KAAC,cAAc,KAAG,EACxB,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACtC,OAAO,EAAE,SAAS,EAClB,QAAQ,EAAE,QAAQ,GAClB,CACH,CAAC;IAEF,iFAAiF;IACjF,MAAM,mBAAmB,GAAG,CAC1B,KAAC,cAAc,IACb,IAAI,EAAE,gBAAgB,EACtB,KAAK,EACH,gBAAgB,EAAE,UAAU;YAC5B,oBAAoB,gBAAgB,EAAE,UAAU,EAAE,EAEpD,KAAK,EAAE,gBAAgB,EAAE,UAAU,IAAI,GAAG,EAC1C,QAAQ,EAAE,GAAG,EAAE;YACb,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC3B,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACrB,uFAAuF;YACvF,IAAI,aAAa,IAAI,YAAY,CAAC,OAAO,IAAI,WAAW,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;gBAC1E,UAAU,CAAC,GAAG,EAAE,CAAC,oBAAoB,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,EACD,YAAY,EAAE,KAAK,EACnB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,IAAI,YAEX,eAAe,CAAC,CAAC,CAAC,CACjB,cAAK,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,gDAAmB,CACpE,CAAC,CAAC,CAAC,CACF,8BACE,KAAC,KAAK,IACJ,MAAM,EAAE,KAAC,cAAc,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,GAAI,EACvD,WAAW,EAAC,WAAW,EACvB,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACjD,UAAU,QACV,KAAK,EAAE,EAAE,YAAY,EAAE,CAAC,EAAE,GAC1B,EACF,cAAK,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,YACpE,KAAC,WAAW,IACV,UAAU,EAAE,gBAAgB,EAAE,UAAU,IAAI,EAAE,EAC9C,OAAO,EAAE,QAAQ,EACjB,eAAe,EAAE,aAAa,EAC9B,kBAAkB,EAAE,CAAC,MAAM,EAAE,EAAE;4BAC7B,wBAAwB,CAAC,MAAM,CAAC,CAAC;4BACjC,gBAAgB,CAAC,EAAE,CAAC,CAAC;wBACvB,CAAC,GACD,GACE,IACL,CACJ,GACc,CAClB,CAAC;IAEF,iFAAiF;IACjF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,MAAM,EAAE,GAAG,gBAAgB,EAAE,UAAU,IAAI,IAAI,CAAC;QAChD,MAAM,SAAS,GACb,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAEzD,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,aAC/C,KAAC,MAAM,IACL,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,EAClB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,eAAe,EACxB,UAAU,QACV,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAC9B,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE,CAAC;yBACxB,WAAW,EAAE;yBACb,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAElC,QAAQ,EAAE,yBAAyB,EACnC,iBAAiB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EACtC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAC/B,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,GAClB,EACD,SAAS,EACT,YAAY,CAAC,GAAG,EAAE;oBACjB,mBAAmB,CAAC,OAAO,GAAG,IAAI,CAAC;oBACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC,CAAC,EACD,mBAAmB,EACnB,qBAAqB,IAClB,CACP,CAAC;IACJ,CAAC;IAED,iFAAiF;IACjF,OAAO,CACL,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,aAE9D,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,aACrE,eAAK,GAAG,EAAE,kBAAkB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,aACnE,gBAAgB,EAAE,WAAW,IAAI,SAAS,IAAI,CAC7C,KAAC,YAAY,IACX,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,EAAE,EACtC,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EACvD,KAAK,EAAE;oCACL,QAAQ,EAAE,UAAU;oCACpB,IAAI,EAAE,CAAC,EAAE;oCACT,GAAG,EAAE,KAAK;oCACV,SAAS,EAAE,2BAA2B,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM;oCAChE,UAAU,EAAE,gBAAgB;oCAC5B,QAAQ,EAAE,EAAE;oCACZ,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oCAC5C,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;oCACpD,MAAM,EAAE,CAAC;oCACT,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;iCAC9C,GACD,CACH,EACD,KAAC,YAAY,IACX,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EACxB,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE,YAAY,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAC5C,wBAAwB,EAAE,KAAK,EAC/B,UAAU,QACV,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;oCACjB,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;oCACzB,WAAW,CAAC,IAAI,CAAC,CAAC;oCAClB,eAAe,CAAC,IAAI,CAAC,CAAC;oCACtB,aAAa,CAAC,KAAK,CAAC,CAAC;gCACvB,CAAC,EACD,QAAQ,EAAE,wBAAwB,EAClC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,EACpC,MAAM,EAAE,GAAG,EAAE;oCACX,UAAU,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;oCAC9C,UAAU,EAAE,CAAC;gCACf,CAAC,EACD,eAAe,EAAE,eAAe,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EACvD,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,iBAAiB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EACtC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAC/B,IACE,EAEL,CAAC,mBAAmB,IAAI,QAAQ,KAAK,IAAI,IAAI,CAC5C,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,GAAI,CAChG,EACA,CAAC,mBAAmB,IAAI,QAAQ,KAAK,KAAK,IAAI,SAAS,IAAI,CAC1D,KAAC,YAAY,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,GAAI,CAChG,EAEA,SAAS,EACT,YAAY,CAAC,GAAG,EAAE;wBACjB,mBAAmB,CAAC,OAAO,GAAG,IAAI,CAAC;wBACnC,mBAAmB,CAAC,IAAI,CAAC,CAAC;oBAC5B,CAAC,CAAC,IACE,EAGL,gBAAgB,EAAE,WAAW,IAAI,UAAU,IAAI,YAAY,IAAI,CAC9D,KAAC,WAAW,IAAC,UAAU,EAAE,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,YAAY,GAAI,CAC9E,EAEA,mBAAmB,EACnB,qBAAqB,EAGtB,KAAC,cAAc,IACb,IAAI,EAAE,mBAAmB,EACzB,KAAK,EAAC,yBAAoB,EAC1B,KAAK,EAAE,gBAAgB,EAAE,UAAU,IAAI,GAAG,EAC1C,QAAQ,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAC7C,YAAY,EAAE,KAAK,EACnB,YAAY,EAAE,YAAY,EAC1B,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,IAAI,YAEZ,cAAK,SAAS,EAAC,iBAAiB,EAAC,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,YACpE,KAAC,WAAW,IACV,UAAU,EAAE,gBAAgB,EAAE,UAAU,IAAI,EAAE,EAC9C,OAAO,EAAE,cAAc,EACvB,kBAAkB,EAAE,sBAAsB,GAC1C,GACE,GACS,IAEb,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.jsx"],"names":[],"mappings":"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"}
package/index.jsx CHANGED
@@ -58,6 +58,7 @@ const ModuleDropdownList = ({
58
58
  onFreeTextCommit,
59
59
  placeholder = 'Vyberte',
60
60
  disabled = false,
61
+ readOnly = false,
61
62
  style = {},
62
63
  allowFreeText = true,
63
64
  createNewOnMismatch = false,
@@ -65,6 +66,8 @@ const ModuleDropdownList = ({
65
66
  showAddButton = true,
66
67
  getContainer = () => document.body,
67
68
  moduleDefinition,
69
+ dropdownZIndex = 9999,
70
+ currentUserKey = null,
68
71
  }) => {
69
72
  const moduleName = moduleDefinition?.moduleName;
70
73
 
@@ -94,6 +97,13 @@ const ModuleDropdownList = ({
94
97
  .finally(() => setAllItemsLoading(false));
95
98
  }, []); // pouze při mount
96
99
 
100
+ // ─── Pomocná funkce: display text s podporou "Já" ────────────────────────────
101
+ const resolveDisplayText = useCallback((item) => {
102
+ const vf = moduleDefinition?.valueField || 'id';
103
+ if (currentUserKey && item && String(item[vf]) === String(currentUserKey)) return 'Já';
104
+ return moduleDefinition?.getDisplayValue?.(item) || item?.code || item?.name || '';
105
+ }, [currentUserKey, moduleDefinition]);
106
+
97
107
  // ─── Free-text stav ──────────────────────────────────────────────────────────
98
108
  const initialText = useMemo(() => {
99
109
  if (!allowFreeText) return '';
@@ -107,8 +117,28 @@ const ModuleDropdownList = ({
107
117
  const [isLinked, setIsLinked] = useState(null);
108
118
  const [selectedItem, setSelectedItem] = useState(null);
109
119
  const [detailOpen, setDetailOpen] = useState(false);
120
+ const selectedItemIcon = useMemo(() => {
121
+ if (isLinked !== true || !selectedItem || !moduleDefinition?.getItemIcon) return null;
122
+ return moduleDefinition.getItemIcon(selectedItem);
123
+ }, [isLinked, selectedItem, moduleDefinition]);
124
+
125
+ // Posun textu doprava o skutečnou šířku ikony
126
+ useEffect(() => {
127
+ const input = freeTextWrapperRef.current?.querySelector('input');
128
+ if (!input) return;
129
+ if (!selectedItemIcon) {
130
+ input.style.paddingLeft = '';
131
+ return;
132
+ }
133
+ const iconEl = iconWrapperRef.current;
134
+ if (!iconEl) return;
135
+ const width = iconEl.getBoundingClientRect().width;
136
+ input.style.paddingLeft = `${width + 8 + 4}px`; // 8px left offset + 4px mezera
137
+ }, [selectedItemIcon]);
138
+
110
139
  const justSelectedRef = useRef(false);
111
140
  const freeTextWrapperRef = useRef(null);
141
+ const iconWrapperRef = useRef(null);
112
142
  const inputTextRef = useRef(initialText);
113
143
  inputTextRef.current = inputText;
114
144
  const isLinkedRef = useRef(null);
@@ -131,8 +161,7 @@ const ModuleDropdownList = ({
131
161
 
132
162
  const showItem = (item) => {
133
163
  console.log('[ModuleDropdownList] showItem:', { id: item?.[vf], displayValue: moduleDefinition?.getDisplayValue?.(item) });
134
- const displayText =
135
- moduleDefinition?.getDisplayValue?.(item) || item.code || item.name || '';
164
+ const displayText = resolveDisplayText(item);
136
165
  setInputText(displayText);
137
166
  setIsLinked(true);
138
167
  setSelectedItem(item);
@@ -184,16 +213,25 @@ const ModuleDropdownList = ({
184
213
  '';
185
214
  return label.toLowerCase().includes(inputText.toLowerCase());
186
215
  });
187
- return source.slice(0, 15).map((item) => ({
188
- value: String(item[vf]),
189
- label:
190
- moduleDefinition?.getDisplayValue?.(item) ||
191
- item.code ||
192
- item.name ||
193
- '',
194
- item,
195
- }));
196
- }, [allItems, inputText, moduleDefinition]);
216
+
217
+ // Vyfiltruj aktuálně vybraný item – je již zobrazen přes selectedItemIcon v inputu,
218
+ // zobrazení ve výsledcích by způsobilo zdánlivý duplikát (jednou s fotkou, jednou s iniciálami).
219
+ const filtered =
220
+ isLinked === true && selectedItem
221
+ ? source.filter((item) => String(item[vf]) !== String(selectedItem[vf]))
222
+ : source;
223
+
224
+ return filtered.map((item) => {
225
+ const displayText = resolveDisplayText(item);
226
+ return {
227
+ value: String(item[vf]),
228
+ label: moduleDefinition?.renderOption
229
+ ? moduleDefinition.renderOption(item, displayText)
230
+ : displayText,
231
+ item,
232
+ };
233
+ });
234
+ }, [allItems, inputText, moduleDefinition, isLinked, selectedItem, resolveDisplayText]);
197
235
  suggestionsRef.current = suggestions;
198
236
 
199
237
  // Catalog-only: options pro Select
@@ -201,13 +239,9 @@ const ModuleDropdownList = ({
201
239
  const vf = moduleDefinition?.valueField || 'id';
202
240
  return allItems.map((item) => ({
203
241
  value: item[vf],
204
- label:
205
- moduleDefinition?.getDisplayValue?.(item) ||
206
- item.code ||
207
- item.name ||
208
- String(item[vf]),
242
+ label: resolveDisplayText(item) || String(item[vf]),
209
243
  }));
210
- }, [allItems, moduleDefinition]);
244
+ }, [allItems, moduleDefinition, resolveDisplayText]);
211
245
 
212
246
  // ─── Výběr z katalogu (shared) ────────────────────────────────────────────────
213
247
  const commitCatalogItem = useCallback(
@@ -259,12 +293,7 @@ const ModuleDropdownList = ({
259
293
  if (!params.data) return;
260
294
  const item = params.data;
261
295
  if (allowFreeText) {
262
- const displayText =
263
- moduleDefinition?.getDisplayValue?.(item) ||
264
- item.code ||
265
- item.name ||
266
- '';
267
- setInputText(displayText);
296
+ setInputText(resolveDisplayText(item));
268
297
  }
269
298
  isLinkedRef.current = true; // synchronní update před zavřením modalu (onCancel race condition)
270
299
  setIsLinked(true);
@@ -279,11 +308,7 @@ const ModuleDropdownList = ({
279
308
  (optionValue, option) => {
280
309
  justSelectedRef.current = true;
281
310
  const item = option.item;
282
- const displayText =
283
- moduleDefinition?.getDisplayValue?.(item) ||
284
- item.code ||
285
- item.name ||
286
- '';
311
+ const displayText = resolveDisplayText(item);
287
312
  setInputText(displayText);
288
313
  setDropdownOpen(false);
289
314
  setIsLinked(true);
@@ -333,12 +358,7 @@ const ModuleDropdownList = ({
333
358
  } else if (localMatches.length === 1) {
334
359
  // Přesná jedna shoda → auto-výběr
335
360
  const item = localMatches[0];
336
- const displayText =
337
- moduleDefinition?.getDisplayValue?.(item) ||
338
- item.code ||
339
- item.name ||
340
- text.trim();
341
- setInputText(displayText);
361
+ setInputText(resolveDisplayText(item) || text.trim());
342
362
  setIsLinked(true);
343
363
  commitCatalogItem(item);
344
364
  } else {
@@ -369,12 +389,7 @@ const ModuleDropdownList = ({
369
389
  (params) => {
370
390
  if (!params.data) return;
371
391
  const item = params.data;
372
- const displayText =
373
- moduleDefinition?.getDisplayValue?.(item) ||
374
- item.code ||
375
- item.name ||
376
- '';
377
- setInputText(displayText);
392
+ setInputText(resolveDisplayText(item));
378
393
  isLinkedRef.current = true; // synchronní update před zavřením modalu (onCancel race condition)
379
394
  setIsLinked(true);
380
395
  setMultiMatchModalOpen(false);
@@ -431,7 +446,7 @@ const ModuleDropdownList = ({
431
446
  onCancel={() => setCreateNewModalOpen(false)}
432
447
  maskClosable={false}
433
448
  getContainer={getContainer}
434
- zIndex={99999999}
449
+ zIndex={dropdownZIndex + 1}
435
450
  footer={null}
436
451
  >
437
452
  {React.createElement(moduleDefinition.createFormComponent, {
@@ -441,6 +456,7 @@ const ModuleDropdownList = ({
441
456
  fetchDataUIAsync,
442
457
  accessToken,
443
458
  createRecord: moduleDefinition.createRecord,
459
+ ...(moduleDefinition.createFormComponentProps || {}),
444
460
  })}
445
461
  </DraggableModal>
446
462
  ) : null;
@@ -453,7 +469,7 @@ const ModuleDropdownList = ({
453
469
  setCreateNewInitialName('');
454
470
  setCreateNewModalOpen(true);
455
471
  }}
456
- disabled={disabled}
472
+ disabled={disabled || readOnly}
457
473
  />
458
474
  ) : null;
459
475
 
@@ -462,7 +478,7 @@ const ModuleDropdownList = ({
462
478
  icon={<SearchOutlined />}
463
479
  onMouseDown={(e) => e.preventDefault()}
464
480
  onClick={onClickFn}
465
- disabled={disabled}
481
+ disabled={disabled || readOnly}
466
482
  />
467
483
  );
468
484
 
@@ -485,7 +501,7 @@ const ModuleDropdownList = ({
485
501
  }}
486
502
  maskClosable={false}
487
503
  getContainer={getContainer}
488
- zIndex={99999999}
504
+ zIndex={dropdownZIndex + 1}
489
505
  footer={null}
490
506
  >
491
507
  {allItemsLoading ? (
@@ -523,31 +539,51 @@ const ModuleDropdownList = ({
523
539
  value && typeof value === 'object' ? value[vf] : value;
524
540
 
525
541
  return (
526
- <div style={{ display: 'flex', gap: 4, ...style }}>
527
- <Select
528
- style={{ flex: 1 }}
529
- value={currentId}
530
- options={catalogOptions}
531
- loading={allItemsLoading}
532
- showSearch
533
- filterOption={(input, option) =>
534
- String(option?.label || '')
535
- .toLowerCase()
536
- .includes(input.toLowerCase())
537
- }
538
- onChange={handleCatalogSelectChange}
539
- getPopupContainer={() => document.body}
540
- dropdownStyle={{ zIndex: 9999 }}
541
- placeholder={placeholder}
542
- disabled={disabled}
543
- />
544
- {addButton}
545
- {searchButton(() => {
546
- catalogModalOpenRef.current = true;
547
- setCatalogModalOpen(true);
548
- })}
549
- {catalogModalContent}
550
- {createNewModalContent}
542
+ <div style={{ display: 'flex', flexDirection: 'column', gap: 4 }}>
543
+ <div style={{ display: 'flex', gap: 4, ...style }}>
544
+ <Select
545
+ style={{ flex: 1 }}
546
+ value={currentId}
547
+ options={catalogOptions}
548
+ loading={allItemsLoading}
549
+ showSearch={!readOnly}
550
+ filterOption={(input, option) =>
551
+ String(option?.label || '')
552
+ .toLowerCase()
553
+ .includes(input.toLowerCase())
554
+ }
555
+ onChange={readOnly ? undefined : handleCatalogSelectChange}
556
+ open={readOnly ? false : undefined}
557
+ getPopupContainer={() => document.body}
558
+ placeholder={placeholder}
559
+ disabled={disabled}
560
+ />
561
+ {addButton}
562
+ {searchButton(() => {
563
+ catalogModalOpenRef.current = true;
564
+ setCatalogModalOpen(true);
565
+ })}
566
+ {moduleDefinition?.detailPanel && showArrow && (
567
+ <Button
568
+ icon={
569
+ <DownOutlined
570
+ style={{
571
+ transition: 'transform 0.2s',
572
+ transform: detailOpen ? 'rotate(180deg)' : 'rotate(0deg)',
573
+ }}
574
+ />
575
+ }
576
+ onMouseDown={(e) => e.preventDefault()}
577
+ onClick={() => setDetailOpen((v) => !v)}
578
+ disabled={disabled || !selectedItem}
579
+ />
580
+ )}
581
+ {catalogModalContent}
582
+ {createNewModalContent}
583
+ </div>
584
+ {moduleDefinition?.detailPanel && detailOpen && selectedItem && (
585
+ <DetailPanel definition={moduleDefinition.detailPanel} item={selectedItem} />
586
+ )}
551
587
  </div>
552
588
  );
553
589
  }
@@ -558,23 +594,18 @@ const ModuleDropdownList = ({
558
594
  {/* Hlavní řádek — omezený stylem z props */}
559
595
  <div style={{ display: 'flex', gap: 4, alignItems: 'center', ...style }}>
560
596
  <div ref={freeTextWrapperRef} style={{ flex: 1, position: 'relative' }}>
561
- {moduleDefinition?.detailPanel && showArrow && (
562
- <DownOutlined
563
- onMouseDown={(e) => e.preventDefault()}
564
- onClick={() => selectedItem && setDetailOpen((v) => !v)}
565
- style={{
566
- position: 'absolute',
567
- left: -18,
568
- top: '50%',
569
- transform: `translateY(-50%) rotate(${detailOpen ? 180 : 0}deg)`,
570
- transition: 'transform 0.2s',
571
- fontSize: 11,
572
- cursor: selectedItem ? 'pointer' : 'default',
573
- color: selectedItem ? 'rgba(0,0,0,0.45)' : '#d9d9d9',
574
- zIndex: 1,
575
- pointerEvents: selectedItem ? 'auto' : 'none',
576
- }}
577
- />
597
+ {selectedItemIcon && (
598
+ <span ref={iconWrapperRef} style={{
599
+ position: 'absolute',
600
+ left: 8,
601
+ top: '50%',
602
+ transform: 'translateY(-50%)',
603
+ zIndex: 1,
604
+ lineHeight: 0,
605
+ pointerEvents: 'none',
606
+ }}>
607
+ {selectedItemIcon}
608
+ </span>
578
609
  )}
579
610
  <AutoComplete
580
611
  style={{ width: '100%' }}
@@ -599,8 +630,15 @@ const ModuleDropdownList = ({
599
630
  placeholder={placeholder}
600
631
  disabled={disabled}
601
632
  getPopupContainer={() => document.body}
602
- dropdownStyle={{ zIndex: 9999 }}
603
633
  />
634
+ {readOnly && (
635
+ <div style={{
636
+ position: 'absolute',
637
+ inset: 0,
638
+ zIndex: 1,
639
+ cursor: 'default',
640
+ }} />
641
+ )}
604
642
  </div>
605
643
 
606
644
  {!createNewOnMismatch && isLinked === true && (
@@ -615,6 +653,21 @@ const ModuleDropdownList = ({
615
653
  catalogModalOpenRef.current = true;
616
654
  setCatalogModalOpen(true);
617
655
  })}
656
+ {moduleDefinition?.detailPanel && showArrow && (
657
+ <Button
658
+ icon={
659
+ <DownOutlined
660
+ style={{
661
+ transition: 'transform 0.2s',
662
+ transform: detailOpen ? 'rotate(180deg)' : 'rotate(0deg)',
663
+ }}
664
+ />
665
+ }
666
+ onMouseDown={(e) => e.preventDefault()}
667
+ onClick={() => setDetailOpen((v) => !v)}
668
+ disabled={disabled || !selectedItem}
669
+ />
670
+ )}
618
671
  </div>
619
672
 
620
673
  {/* Detail panel — 100% šířky parent containeru, nezávisle na šířce inputu */}
@@ -633,7 +686,7 @@ const ModuleDropdownList = ({
633
686
  onCancel={() => setMultiMatchModalOpen(false)}
634
687
  maskClosable={false}
635
688
  getContainer={getContainer}
636
- zIndex={99999999}
689
+ zIndex={dropdownZIndex + 1}
637
690
  footer={null}
638
691
  >
639
692
  <div className="ag-theme-alpine" style={{ height: 400, width: '100%' }}>
package/package.json CHANGED
@@ -1,20 +1,20 @@
1
1
  {
2
2
  "name": "@bit.rhplus/ui2.module-dropdown-list",
3
- "version": "0.1.112",
3
+ "version": "0.1.114",
4
4
  "homepage": "https://bit.cloud/remote-scope/ui2/module-dropdown-list",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "remote-scope",
8
8
  "name": "ui2/module-dropdown-list",
9
- "version": "0.1.112"
9
+ "version": "0.1.114"
10
10
  },
11
11
  "dependencies": {
12
12
  "@ant-design/icons": "^5.4.0",
13
13
  "@axa-fr/react-oidc": "7.25.13",
14
14
  "ag-grid-react": "^35.0.0",
15
15
  "antd": "^5.20.6",
16
- "@bit.rhplus/data": "0.0.89",
17
- "@bit.rhplus/draggable-modal": "0.0.17"
16
+ "@bit.rhplus/data": "0.0.90",
17
+ "@bit.rhplus/draggable-modal": "0.0.18"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@bitdev/react.react-env": "5.0.5"