@bit.rhplus/ui.f7.detail-item 0.0.106 → 0.0.107

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 (53) hide show
  1. package/package.json +13 -12
  2. package/dist/components/Calendar.d.ts +0 -18
  3. package/dist/components/Calendar.js +0 -367
  4. package/dist/components/Calendar.js.map +0 -1
  5. package/dist/components/Category.d.ts +0 -14
  6. package/dist/components/Category.js +0 -90
  7. package/dist/components/Category.js.map +0 -1
  8. package/dist/components/Contact.d.ts +0 -12
  9. package/dist/components/Contact.js +0 -90
  10. package/dist/components/Contact.js.map +0 -1
  11. package/dist/components/CountryFlag.d.ts +0 -12
  12. package/dist/components/CountryFlag.js +0 -76
  13. package/dist/components/CountryFlag.js.map +0 -1
  14. package/dist/components/Custom.d.ts +0 -22
  15. package/dist/components/Custom.js +0 -146
  16. package/dist/components/Custom.js.map +0 -1
  17. package/dist/components/Download.d.ts +0 -12
  18. package/dist/components/Download.js +0 -48
  19. package/dist/components/Download.js.map +0 -1
  20. package/dist/components/Grid.d.ts +0 -20
  21. package/dist/components/Grid.js +0 -147
  22. package/dist/components/Grid.js.map +0 -1
  23. package/dist/components/InputNumber.d.ts +0 -16
  24. package/dist/components/InputNumber.js +0 -78
  25. package/dist/components/InputNumber.js.map +0 -1
  26. package/dist/components/InputText.d.ts +0 -13
  27. package/dist/components/InputText.js +0 -61
  28. package/dist/components/InputText.js.map +0 -1
  29. package/dist/components/List.d.ts +0 -29
  30. package/dist/components/List.js +0 -269
  31. package/dist/components/List.js.map +0 -1
  32. package/dist/components/Project.d.ts +0 -31
  33. package/dist/components/Project.js +0 -575
  34. package/dist/components/Project.js.map +0 -1
  35. package/dist/components/Select.d.ts +0 -14
  36. package/dist/components/Select.js +0 -105
  37. package/dist/components/Select.js.map +0 -1
  38. package/dist/components/Switch.d.ts +0 -12
  39. package/dist/components/Switch.js +0 -26
  40. package/dist/components/Switch.js.map +0 -1
  41. package/dist/components/Text.d.ts +0 -11
  42. package/dist/components/Text.js +0 -30
  43. package/dist/components/Text.js.map +0 -1
  44. package/dist/components/index.d.ts +0 -14
  45. package/dist/components/index.js +0 -15
  46. package/dist/components/index.js.map +0 -1
  47. package/dist/index.d.ts +0 -17
  48. package/dist/index.js +0 -41
  49. package/dist/index.js.map +0 -1
  50. package/dist/preview-1773675952518.js +0 -7
  51. package/dist/style.css +0 -113
  52. package/types/asset.d.ts +0 -43
  53. package/types/style.d.ts +0 -42
@@ -1,90 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- /* eslint-disable */
3
- import React from 'react';
4
- import { ListInput, Block, List } from 'framework7-react';
5
- import { UserCheck } from 'lucide-react';
6
- import { Custom } from './Custom';
7
- // Renderer pro Contact formulář
8
- const ContactRenderer = ({ fields, formData, onChange }) => {
9
- const handleInputChange = (fieldKey, event) => {
10
- const newValue = event.target.value;
11
- onChange(fieldKey, newValue);
12
- };
13
- return (_jsx(Block, { inset: true, children: _jsx(List, { children: fields.map((field, index) => (_jsx(ListInput, { type: field.type || 'text', label: field.label, placeholder: field.placeholder, value: formData[field.key] || '', onInput: (e) => handleInputChange(field.key, e), clearButton: true, style: { fontSize: '18px' }, ...(field.type === 'email' && {
14
- inputMode: 'email',
15
- autoComplete: 'email'
16
- }), ...(field.type === 'tel' && {
17
- inputMode: 'tel',
18
- autoComplete: 'tel'
19
- }), ...(field.type === 'textarea' && {
20
- type: 'textarea',
21
- resizable: false,
22
- inputStyle: { minHeight: '60px', resize: 'none' }
23
- }) }, field.key || index))) }) }));
24
- };
25
- // Externí PM komponenta s předdefinovanými poli
26
- export const Contact = ({ value, onSave, onChange, title = 'Kontakt', placeholder = 'Zadej kontakt', color = '#6887d3', size = 16, field = null, // Pole pro výběr konkrétní vlastnosti objektu
27
- visibleFields = ['name', 'email', 'phone', 'position'], // Pole k zobrazení v popup
28
- ...restProps }) => {
29
- // Předdefinovaná pole pro Externí PM
30
- const allFields = [
31
- {
32
- key: 'fullName',
33
- label: 'Jméno',
34
- type: 'text',
35
- placeholder: 'Zadejte jméno'
36
- },
37
- {
38
- key: 'email',
39
- label: 'Email',
40
- type: 'email',
41
- placeholder: 'Zadejte email'
42
- },
43
- {
44
- key: 'phone',
45
- label: 'Telefon',
46
- type: 'tel',
47
- placeholder: 'Zadejte telefon'
48
- },
49
- {
50
- key: 'position',
51
- label: 'Pozice',
52
- type: 'text',
53
- placeholder: 'Zadejte pozici'
54
- },
55
- {
56
- key: 'note',
57
- label: 'Poznámka',
58
- type: 'textarea',
59
- placeholder: 'Zadejte poznámku'
60
- }
61
- ];
62
- // Filtrování polí podle visibleFields
63
- const pmFields = allFields.filter(field => visibleFields.includes(field.key));
64
- // Funkce pro generování zobrazovaného textu
65
- const getContactDisplayText = (contactData) => {
66
- if (!contactData || typeof contactData !== 'object') {
67
- return placeholder;
68
- }
69
- // Priorita: fullName > firstName + lastName > email > phone > position
70
- if (contactData.fullName) {
71
- return contactData.fullName + (contactData.position ? ` - ${contactData.position}` : '');
72
- }
73
- if (contactData.firstName || contactData.lastName) {
74
- const name = [contactData.firstName, contactData.lastName].filter(Boolean).join(' ');
75
- return name + (contactData.position ? ` - ${contactData.position}` : '');
76
- }
77
- if (contactData.email) {
78
- return contactData.email + (contactData.position ? ` - ${contactData.position}` : '');
79
- }
80
- if (contactData.phone) {
81
- return contactData.phone + (contactData.position ? ` - ${contactData.position}` : '');
82
- }
83
- if (contactData.position) {
84
- return contactData.position;
85
- }
86
- return placeholder;
87
- };
88
- return (_jsx(Custom, { value: value, onSave: onSave, onChange: onChange, title: title, placeholder: placeholder, color: color, size: size, lucideIcon: UserCheck, FormRenderer: ContactRenderer, fields: pmFields, getDisplayText: getContactDisplayText, field: field, ...restProps }));
89
- };
90
- //# sourceMappingURL=Contact.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Contact.js","sourceRoot":"","sources":["../../components/Contact.jsx"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- export function CountryFlag({ children, value, country, countryCode, countryName, size, style, showName, field, ...restProps }: {
2
- [x: string]: any;
3
- children: any;
4
- value: any;
5
- country: any;
6
- countryCode: any;
7
- countryName: any;
8
- size?: number | undefined;
9
- style: any;
10
- showName?: boolean | undefined;
11
- field?: null | undefined;
12
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,76 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /* eslint-disable */
3
- import React from 'react';
4
- import { Globe } from 'lucide-react';
5
- export const CountryFlag = ({ children, value, country, // Objekt s country.code a country.name nebo jen string s kódem
6
- countryCode, // Alternativně jen kód země
7
- countryName, // Alternativně jen název země
8
- size = 20, style, showName = true, field = null, // Pole pro výběr konkrétní vlastnosti objektu (pro konzistenci, ale CountryFlag nepoužívá objekty)
9
- ...restProps }) => {
10
- // Pro Form.Item kompatibilitu - zobraz value pokud je poskytnut, jinak children
11
- const displayText = value !== undefined ? value : children;
12
- // Určení kódu a názvu země z různých zdrojů
13
- const getCountryInfo = () => {
14
- if (country && typeof country === 'object') {
15
- return {
16
- code: country.code,
17
- name: country.name || countryName || country.code
18
- };
19
- }
20
- if (country && typeof country === 'string') {
21
- return {
22
- code: country,
23
- name: countryName || country
24
- };
25
- }
26
- if (countryCode) {
27
- return {
28
- code: countryCode,
29
- name: countryName || countryCode
30
- };
31
- }
32
- return null;
33
- };
34
- const countryInfo = getCountryInfo();
35
- const containerStyle = {
36
- display: 'flex',
37
- alignItems: 'center',
38
- gap: '8px',
39
- ...style
40
- };
41
- const renderFlag = () => {
42
- if (!countryInfo?.code) {
43
- return (_jsx("div", { style: {
44
- width: `${size}px`,
45
- height: `${size}px`,
46
- borderRadius: '50%',
47
- overflow: 'hidden',
48
- flexShrink: 0,
49
- backgroundColor: '#f5f5f5',
50
- display: 'flex',
51
- alignItems: 'center',
52
- justifyContent: 'center',
53
- }, children: _jsx(Globe, { size: size * 0.6, color: "#666" }) }));
54
- }
55
- return (_jsxs("div", { style: {
56
- width: `${size}px`,
57
- height: `${size}px`,
58
- borderRadius: '50%',
59
- overflow: 'hidden',
60
- flexShrink: 0,
61
- backgroundColor: '#f5f5f5',
62
- display: 'flex',
63
- alignItems: 'center',
64
- justifyContent: 'center',
65
- }, children: [_jsx("img", { src: `https://flagcdn.com/w40/${countryInfo.code.toLowerCase()}.png`, srcSet: `https://flagcdn.com/w40/${countryInfo.code.toLowerCase()}.png 1x, https://flagcdn.com/w80/${countryInfo.code.toLowerCase()}.png 2x`, alt: countryInfo.name, style: {
66
- width: `${size}px`,
67
- height: `${size}px`,
68
- objectFit: 'cover',
69
- objectPosition: 'center',
70
- }, onError: (e) => {
71
- e.target.style.display = 'none';
72
- } }), _jsx(Globe, { size: size * 0.6, color: "#666" })] }));
73
- };
74
- return (_jsxs("div", { style: containerStyle, ...restProps, children: [renderFlag(), showName && (_jsx("span", { children: displayText || countryInfo?.name || 'N/A' }))] }));
75
- };
76
- //# sourceMappingURL=CountryFlag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CountryFlag.js","sourceRoot":"","sources":["../../components/CountryFlag.jsx"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- export function Custom({ value, onSave, onChange, title, placeholder, color, size, lucideIcon, icon, FormRenderer, fields, displayFields, getDisplayText, field, ...restProps }: {
2
- [x: string]: any;
3
- value: any;
4
- onSave: any;
5
- onChange: any;
6
- title?: string | undefined;
7
- placeholder?: string | undefined;
8
- color?: string | undefined;
9
- size?: number | undefined;
10
- lucideIcon: any;
11
- icon: any;
12
- FormRenderer: any;
13
- fields?: {
14
- key: string;
15
- label: string;
16
- type: string;
17
- placeholder: string;
18
- }[] | undefined;
19
- displayFields?: string[] | undefined;
20
- getDisplayText?: null | undefined;
21
- field?: null | undefined;
22
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,146 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /* eslint-disable */
3
- import React, { useState, useEffect } from 'react';
4
- import { Link, Icon, Popup, Navbar, NavLeft, NavTitle, NavTitleLarge, Page, Block, List, ListInput } from 'framework7-react';
5
- import { User } from 'lucide-react';
6
- import SaveButton from '@bit.rhplus/ui.f7.save-button';
7
- // External Contact komponenta - formulář pro zadání externího kontaktu
8
- export const Custom = ({ value, onSave, onChange, title = 'Externí kontakt', placeholder = 'Zadejte kontakt', color = '#6887d3', size = 16, lucideIcon, icon, FormRenderer, // Custom komponenta pro renderování formuláře
9
- fields = [
10
- { key: 'firstName', label: 'Jméno', type: 'text', placeholder: 'Zadejte jméno' },
11
- { key: 'lastName', label: 'Příjmení', type: 'text', placeholder: 'Zadejte příjmení' },
12
- { key: 'phone', label: 'Telefon', type: 'tel', placeholder: 'Zadejte telefon' },
13
- { key: 'email', label: 'Email', type: 'email', placeholder: 'Zadejte email' },
14
- { key: 'position', label: 'Pozice', type: 'text', placeholder: 'Zadejte pozici' }
15
- ], displayFields = ['firstName', 'lastName', 'position'], // Pole pro zobrazení v linku
16
- getDisplayText = null, // Custom funkce pro generování zobrazovaného textu
17
- field = null, // Pole pro výběr konkrétní vlastnosti objektu
18
- ...restProps }) => {
19
- const [popupOpened, setPopupOpened] = useState(false);
20
- // Dynamicky inicializuj formData na základě fields
21
- const getInitialFormData = () => {
22
- const initialData = {};
23
- fields.forEach(field => {
24
- initialData[field.key] = '';
25
- });
26
- return initialData;
27
- };
28
- const [formData, setFormData] = useState(getInitialFormData());
29
- // Najdi objekt na základě value (pokud je field nastaven, value může být jen konkrétní vlastnost)
30
- const findObjectByValue = (val) => {
31
- if (!val)
32
- return null;
33
- if (field) {
34
- // Pokud je field nastaven, value je konkrétní vlastnost - musíme najít objekt jiným způsobem
35
- // Pro Custom komponentu to není možné, protože nemáme seznam objektů k prohledání
36
- // V tomto případě očekáváme, že value bude stále celý objekt
37
- console.warn('Custom komponenta s field parametrem vyžaduje, aby value byl stále celý objekt');
38
- return val;
39
- }
40
- else {
41
- // Pokud field není nastaven, očekáváme celý objekt
42
- return val;
43
- }
44
- };
45
- // Aktualizuj formData když se změní value prop nebo fields (ale ne když je popup otevřený)
46
- useEffect(() => {
47
- if (popupOpened)
48
- return; // Neaktualizuj formData když je popup otevřený
49
- const newFormData = {};
50
- fields.forEach(field => {
51
- newFormData[field.key] = '';
52
- });
53
- const currentObject = findObjectByValue(value);
54
- if (currentObject && typeof currentObject === 'object') {
55
- fields.forEach(field => {
56
- newFormData[field.key] = currentObject[field.key] || '';
57
- });
58
- }
59
- setFormData(newFormData);
60
- }, [value, fields, popupOpened, field]);
61
- const linkStyle = {
62
- color,
63
- cursor: 'pointer',
64
- display: 'flex',
65
- alignItems: 'center',
66
- gap: '6px'
67
- };
68
- const handleSave = () => {
69
- const result = { ...formData };
70
- // Rozhodni jakou hodnotu vrátit podle field parametru
71
- const returnValue = field ? result[field] : result;
72
- if (onChange) {
73
- onChange(returnValue);
74
- }
75
- else if (onSave) {
76
- onSave(returnValue);
77
- }
78
- setPopupOpened(false);
79
- };
80
- const handleCancel = () => {
81
- const newFormData = {};
82
- fields.forEach(field => {
83
- newFormData[field.key] = '';
84
- });
85
- const currentObject = findObjectByValue(value);
86
- if (currentObject && typeof currentObject === 'object') {
87
- fields.forEach(field => {
88
- newFormData[field.key] = currentObject[field.key] || '';
89
- });
90
- }
91
- setFormData(newFormData);
92
- setPopupOpened(false);
93
- };
94
- const handleInputChange = (field, newValue) => {
95
- setFormData(prev => ({
96
- ...prev,
97
- [field]: newValue
98
- }));
99
- };
100
- const handleOpenPopup = () => {
101
- // Před otevřením popupu nastav aktuální hodnoty do formData
102
- const newFormData = {};
103
- fields.forEach(field => {
104
- newFormData[field.key] = '';
105
- });
106
- const currentObject = findObjectByValue(value);
107
- if (currentObject && typeof currentObject === 'object') {
108
- fields.forEach(field => {
109
- newFormData[field.key] = currentObject[field.key] || '';
110
- });
111
- }
112
- setFormData(newFormData);
113
- setPopupOpened(true);
114
- };
115
- // Určí jakou ikonu použít - priorita: icon > lucideIcon > výchozí User
116
- const renderIcon = () => {
117
- if (icon) {
118
- return React.cloneElement(icon, { size, color, ...icon.props });
119
- }
120
- if (lucideIcon) {
121
- const LucideIcon = lucideIcon;
122
- return _jsx(LucideIcon, { size: size, color: color });
123
- }
124
- return _jsx(User, { size: size, color: color });
125
- };
126
- // Zobrazí text v linku podle vyplněných dat
127
- const getDisplayTextInternal = () => {
128
- const currentObject = findObjectByValue(value);
129
- // Pokud je poskytnut custom getDisplayText, použij ho
130
- if (getDisplayText && typeof getDisplayText === 'function') {
131
- return getDisplayText(currentObject);
132
- }
133
- // Jinak použij defaultní logiku
134
- if (currentObject && typeof currentObject === 'object') {
135
- const displayValues = displayFields
136
- .map(fieldKey => currentObject[fieldKey])
137
- .filter(Boolean);
138
- if (displayValues.length > 0) {
139
- return displayValues.join(' - ');
140
- }
141
- }
142
- return placeholder;
143
- };
144
- return (_jsxs("div", { ...restProps, children: [_jsxs(Link, { onClick: handleOpenPopup, className: "link", style: linkStyle, children: [renderIcon(), getDisplayTextInternal()] }), _jsx(Popup, { opened: popupOpened, onPopupClosed: () => setPopupOpened(false), animate: true, backdrop: true, className: "f7-parallax", children: _jsxs(Page, { children: [_jsxs(Navbar, { large: true, children: [_jsx(NavLeft, { children: _jsx(Link, { onClick: handleCancel, children: _jsx(Icon, { f7: "arrow_left", style: { fontWeight: 'bold' } }) }) }), _jsx(NavTitle, { children: title }), _jsx(NavTitleLarge, { children: title })] }), _jsx(Block, { style: { marginTop: '20px' }, children: _jsx(List, { children: FormRenderer ? (_jsx(FormRenderer, { fields: fields, formData: formData, onChange: handleInputChange })) : (fields.map((field, index) => (_jsx(ListInput, { type: field.type || 'text', label: field.label, placeholder: field.placeholder, value: formData[field.key], onInput: (e) => handleInputChange(field.key, e.target.value), clearButton: true, style: { fontSize: '18px' } }, field.key || index)))) }) }), _jsx(SaveButton, { onClick: handleSave, variant: "black" })] }) })] }));
145
- };
146
- //# sourceMappingURL=Custom.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Custom.js","sourceRoot":"","sources":["../../components/Custom.jsx"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- export function Download({ children, href, onClick, color, size, value, lucideIcon, icon, field, ...restProps }: {
2
- [x: string]: any;
3
- children: any;
4
- href: any;
5
- onClick: any;
6
- color?: string | undefined;
7
- size?: number | undefined;
8
- value: any;
9
- lucideIcon: any;
10
- icon: any;
11
- field?: null | undefined;
12
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,48 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /* eslint-disable */
3
- import React, { useState } from 'react';
4
- import { Link, Icon, Preloader } from 'framework7-react';
5
- import { Download as DownloadIcon } from 'lucide-react';
6
- // Download komponenta s loading stavem
7
- export const Download = ({ children, href, onClick, color = '#6887d3', size = 16, value, lucideIcon, // Lucide React ikona
8
- icon, // Jakákoliv React komponenta ikony
9
- field = null, // Pole pro výběr konkrétní vlastnosti objektu (pro konzistenci, ale Download nepoužívá objekty)
10
- ...restProps }) => {
11
- // Pro Form.Item kompatibilitu - zobraz value pokud je poskytnut, jinak children
12
- const displayText = value !== undefined ? value : children;
13
- const [isLoading, setIsLoading] = useState(false);
14
- const handleClick = async (e) => {
15
- if (onClick) {
16
- setIsLoading(true);
17
- try {
18
- await onClick(e);
19
- }
20
- finally {
21
- setIsLoading(false);
22
- }
23
- }
24
- };
25
- const linkStyle = {
26
- color,
27
- cursor: 'pointer',
28
- display: 'flex',
29
- alignItems: 'center',
30
- gap: '6px'
31
- };
32
- // Určí jakou ikonu použít - priorita: icon > lucideIcon > výchozí DownloadIcon
33
- const renderIcon = () => {
34
- if (icon) {
35
- return React.cloneElement(icon, { size, color, ...icon.props });
36
- }
37
- if (lucideIcon) {
38
- const LucideIcon = lucideIcon;
39
- return _jsx(LucideIcon, { size: size, color: color });
40
- }
41
- return _jsx(DownloadIcon, { size: size, color: color });
42
- };
43
- if (href) {
44
- return (_jsxs(Link, { href: href, className: "link", style: linkStyle, ...restProps, children: [isLoading ? (_jsx(Preloader, { size: size })) : (renderIcon()), displayText] }));
45
- }
46
- return (_jsxs(Link, { onClick: handleClick, className: "link", style: linkStyle, ...restProps, children: [isLoading ? (_jsx(Preloader, { size: size })) : (renderIcon()), displayText] }));
47
- };
48
- //# sourceMappingURL=Download.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Download.js","sourceRoot":"","sources":["../../components/Download.jsx"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,cAAc,CAAC;AAExD,uCAAuC;AACvC,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,EACvB,QAAQ,EACR,IAAI,EACJ,OAAO,EACP,KAAK,GAAG,SAAS,EACjB,IAAI,GAAG,EAAE,EACT,KAAK,EACL,UAAU,EAAE,qBAAqB;AACjC,IAAI,EAAE,mCAAmC;AACzC,KAAK,GAAG,IAAI,EAAE,gGAAgG;AAC9G,GAAG,SAAS,EACb,EAAE,EAAE;IACH,gFAAgF;IAChF,MAAM,WAAW,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC3D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElD,MAAM,WAAW,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9B,IAAI,OAAO,EAAE,CAAC;YACZ,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC;oBAAS,CAAC;gBACT,YAAY,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG;QAChB,KAAK;QACL,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,QAAQ;QACpB,GAAG,EAAE,KAAK;KACX,CAAC;IAEF,+EAA+E;IAC/E,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,IAAI,EAAE,CAAC;YACT,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,UAAU,GAAG,UAAU,CAAC;YAC9B,OAAO,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;QAClD,CAAC;QACD,OAAO,KAAC,YAAY,IAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAI,CAAC;IACpD,CAAC,CAAC;IAEF,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,MAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,SAAS,KAAM,SAAS,aAC/D,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAC1B,CAAC,CAAC,CAAC,CACF,UAAU,EAAE,CACb,EACA,WAAW,IACP,CACR,CAAC;IACJ,CAAC;IAED,OAAO,CACL,MAAC,IAAI,IAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,EAAC,KAAK,EAAE,SAAS,KAAM,SAAS,aACzE,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAC1B,CAAC,CAAC,CAAC,CACF,UAAU,EAAE,CACb,EACA,WAAW,IACP,CACR,CAAC;AACJ,CAAC,CAAC"}
@@ -1,20 +0,0 @@
1
- export function Grid({ children, value, onSave, onChange, title, placeholder, color, size, lucideIcon, icon, rowData, columnDefs, gridOptions, onRowDoubleClicked, gridHeight, selectionMode, displayField, field }: {
2
- children: any;
3
- value: any;
4
- onSave: any;
5
- onChange: any;
6
- title?: string | undefined;
7
- placeholder?: string | undefined;
8
- color?: string | undefined;
9
- size?: number | undefined;
10
- lucideIcon: any;
11
- icon: any;
12
- rowData?: never[] | undefined;
13
- columnDefs?: never[] | undefined;
14
- gridOptions?: {} | undefined;
15
- onRowDoubleClicked: any;
16
- gridHeight?: string | undefined;
17
- selectionMode?: string | undefined;
18
- displayField?: string | undefined;
19
- field?: null | undefined;
20
- }): import("react/jsx-runtime").JSX.Element;
@@ -1,147 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /* eslint-disable */
3
- import React, { useState, useEffect, useMemo } from 'react';
4
- import { Link, Icon, Popup, Navbar, NavLeft, NavTitle, NavTitleLarge, NavRight, Page, Block, List, ListInput, Button } from 'framework7-react';
5
- import { Table } from 'lucide-react';
6
- import AgGrid from '@bit.rhplus/ui.grid';
7
- import SaveButton from '@bit.rhplus/ui.f7.save-button';
8
- // Grid komponenta s modální editací - zobrazuje AG Grid pro výběr položky
9
- export const Grid = ({ children, value, onSave, onChange, // Přidáno pro Form.Item kompatibilitu
10
- title = 'Editace výběru', placeholder = 'Vyberte položku', color = '#6887d3', size = 16, lucideIcon, // Lucide React ikona (např. Table)
11
- icon, // Jakákoliv React komponenta ikony
12
- rowData = [], // Array dat pro grid
13
- columnDefs = [], // Definice sloupců pro AG Grid
14
- gridOptions = {}, // Dodatečné možnosti pro AG Grid
15
- onRowDoubleClicked, // Callback pro double click na řádek
16
- gridHeight = '400px', // Výška gridu
17
- selectionMode = 'single', // 'single' nebo 'multiple'
18
- displayField = 'name', // Pole, které se zobrazí v detail-item při výběru
19
- field = null // Pole pro výběr konkrétní vlastnosti objektu
20
- }) => {
21
- const [popupOpened, setPopupOpened] = useState(false);
22
- // Najíst objekty na základě value (pokud je field nastaven, value může být jen pole konkrétních vlastností)
23
- const findRowsByValue = (val) => {
24
- if (!val || !rowData.length)
25
- return [];
26
- const valueArray = Array.isArray(val) ? val : [val];
27
- if (field) {
28
- // Pokud je field nastaven, hledej objekty podle této vlastnosti
29
- return valueArray.map(v => rowData.find(row => row[field] === v)).filter(Boolean);
30
- }
31
- else {
32
- // Pokud field není nastaven, očekáváme objekty
33
- return valueArray;
34
- }
35
- };
36
- // Inicializuj selectedRows pouze jednou při mount
37
- const initialSelectedRows = useMemo(() => {
38
- return findRowsByValue(value);
39
- }, []); // Prázdné dependency array - pouze při mount
40
- const [selectedRows, setSelectedRows] = useState(initialSelectedRows);
41
- const linkStyle = {
42
- color,
43
- cursor: 'pointer',
44
- display: 'flex',
45
- alignItems: 'center',
46
- gap: '6px'
47
- };
48
- const handleCancel = () => {
49
- // Při zrušení resetuj na původní hodnoty
50
- setSelectedRows(findRowsByValue(value));
51
- setPopupOpened(false);
52
- };
53
- const handleOpenPopup = () => {
54
- // Při otevření nastav aktuální hodnotu
55
- setSelectedRows(findRowsByValue(value));
56
- setPopupOpened(true);
57
- };
58
- const handleRowSelection = (event) => {
59
- if (event && event.api) {
60
- const selectedNodes = event.api.getSelectedNodes();
61
- const selectedData = selectedNodes.map(node => node.data);
62
- // Pro oba režimy pouze aktualizujeme stav - uložení bude přes Save button
63
- setSelectedRows(selectedData);
64
- }
65
- };
66
- const handleSaveSelection = () => {
67
- // Uložení vybraných položek pro oba režimy
68
- let result;
69
- if (selectionMode === 'single') {
70
- result = selectedRows.length > 0 ? selectedRows[0] : null;
71
- }
72
- else {
73
- result = selectedRows.length === 1 ? selectedRows[0] : selectedRows;
74
- }
75
- // Rozhodni jakou hodnotu vrátit podle field parametru
76
- const returnValue = field && result ? (Array.isArray(result) ? result.map(item => item[field]) : result[field]) : result;
77
- // Debug pouze při uložení
78
- if (onChange) {
79
- onChange(returnValue);
80
- }
81
- else if (onSave) {
82
- onSave(returnValue);
83
- }
84
- setPopupOpened(false);
85
- };
86
- // Určí jakou ikonu použít - priorita: icon > lucideIcon > výchozí Table
87
- const renderIcon = () => {
88
- if (icon) {
89
- return React.cloneElement(icon, { size, color, ...icon.props });
90
- }
91
- if (lucideIcon) {
92
- const LucideIcon = lucideIcon;
93
- return _jsx(LucideIcon, { size: size, color: color });
94
- }
95
- return _jsx(Table, { size: size, color: color });
96
- };
97
- // Kombinované grid options
98
- const combinedGridOptions = {
99
- rowSelection: selectionMode,
100
- onSelectionChanged: handleRowSelection,
101
- onRowDoubleClicked: onRowDoubleClicked,
102
- suppressRowClickSelection: false, // Umožní výběr kliknutím na řádek pro oba režimy
103
- ...gridOptions
104
- };
105
- return (_jsxs(_Fragment, { children: [_jsxs(Link, { onClick: handleOpenPopup, className: "link", style: linkStyle, children: [renderIcon(), (() => {
106
- // Použij objekty pro zobrazení (převedené z value)
107
- const currentRows = findRowsByValue(value);
108
- if (currentRows.length === 1) {
109
- // Pokud je vybraná jedna položka, zobraz hodnotu z displayField
110
- const item = currentRows[0];
111
- return item[displayField] || item.name || item.title || item.id || 'Vybraná položka';
112
- }
113
- else if (currentRows.length > 1) {
114
- return `${currentRows.length} vybraných položek`;
115
- }
116
- return placeholder;
117
- })()] }), _jsx(Popup, { opened: popupOpened, onPopupClosed: () => setPopupOpened(false), animate: true, backdrop: true, push: false, className: "f7-parallax grid-popup", style: {
118
- '--f7-popup-tablet-width': '90vw',
119
- '--f7-popup-tablet-height': '90vh'
120
- }, children: _jsx("div", { className: "view view-init", children: _jsxs("div", { className: "page page-with-navbar-large", children: [_jsxs(Navbar, { large: true, children: [_jsx(NavLeft, { children: _jsx(Link, { onClick: handleCancel, children: _jsx(Icon, { f7: "arrow_left", style: { fontWeight: 'bold' } }) }) }), _jsx(NavTitle, { children: title }), _jsx(NavTitleLarge, { children: title })] }), _jsxs("div", { className: "page-content", children: [_jsx(Block, { style: {
121
- flex: 1,
122
- display: 'flex',
123
- flexDirection: 'column',
124
- height: 'calc(100vh - 230px)', // Více prostoru pro SaveButton
125
- padding: '0'
126
- }, children: _jsx("div", { className: "ag-theme-quartz", style: {
127
- height: '100%',
128
- width: '100%',
129
- flex: 1,
130
- '--ag-background-color': 'transparent',
131
- '--ag-odd-row-background-color': 'transparent'
132
- }, children: _jsx(AgGrid, { columnDefs: columnDefs, rowData: rowData, gridOptions: {
133
- ...combinedGridOptions,
134
- popupParent: document.body, // Popup menu se zobrazí v body, ne v popup
135
- rowHeight: 48, // Explicitní výška řádku
136
- headerHeight: 56 // Explicitní výška hlavičky
137
- }, height: "100%",
138
- // appearance="ag-theme-quartz"
139
- defaultColDef: {
140
- sortable: true,
141
- filter: true,
142
- resizable: true,
143
- minWidth: 100, // Minimální šířka sloupců pro mobil
144
- ...gridOptions.defaultColDef
145
- } }) }) }), _jsx(SaveButton, { onClick: handleSaveSelection, variant: "black" })] })] }) }) })] }));
146
- };
147
- //# sourceMappingURL=Grid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../components/Grid.jsx"],"names":[],"mappings":"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"}