@rolster/react-components 18.21.45 → 18.22.0
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/cjs/assets/{index-CaA_sxmM.css → index-PeMi6MeC.css} +197 -0
- package/dist/cjs/index.js +516 -76
- package/dist/cjs/index.js.map +1 -1
- package/dist/es/assets/{index-CaA_sxmM.css → index-PeMi6MeC.css} +197 -0
- package/dist/es/index.js +512 -77
- package/dist/es/index.js.map +1 -1
- package/dist/esm/components/molecules/PickerDay/PickerDay.js +13 -13
- package/dist/esm/components/molecules/PickerDay/PickerDay.js.map +1 -1
- package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js +12 -12
- package/dist/esm/components/molecules/PickerDayRange/PickerDayRange.js.map +1 -1
- package/dist/esm/components/molecules/PickerMonth/PickerMonth.js +10 -10
- package/dist/esm/components/molecules/PickerMonth/PickerMonth.js.map +1 -1
- package/dist/esm/components/molecules/PickerYear/PickerYear.js +11 -11
- package/dist/esm/components/molecules/PickerYear/PickerYear.js.map +1 -1
- package/dist/esm/components/molecules/Slider/Slider.css +60 -0
- package/dist/esm/components/molecules/Slider/Slider.css.map +1 -0
- package/dist/esm/components/molecules/Slider/Slider.d.ts +14 -0
- package/dist/esm/components/molecules/Slider/Slider.js +60 -0
- package/dist/esm/components/molecules/Slider/Slider.js.map +1 -0
- package/dist/esm/components/molecules/index.d.ts +1 -0
- package/dist/esm/components/molecules/index.js +1 -0
- package/dist/esm/components/molecules/index.js.map +1 -1
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocomplete.js +1 -1
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js +5 -2
- package/dist/esm/components/organisms/FieldAutocomplete/FieldAutocompleteController.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js +3 -3
- package/dist/esm/components/organisms/FieldSelect/FieldSelect.js.map +1 -1
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js +7 -3
- package/dist/esm/components/organisms/FieldSelect/FieldSelectController.js.map +1 -1
- package/dist/esm/components/organisms/ImageChooser/ImageChooser.css +37 -0
- package/dist/esm/components/organisms/ImageChooser/ImageChooser.css.map +1 -0
- package/dist/esm/components/organisms/ImageChooser/ImageChooser.d.ts +11 -0
- package/dist/esm/components/organisms/ImageChooser/ImageChooser.js +62 -0
- package/dist/esm/components/organisms/ImageChooser/ImageChooser.js.map +1 -0
- package/dist/esm/components/organisms/ImageEditor/ImageEditor.css +97 -0
- package/dist/esm/components/organisms/ImageEditor/ImageEditor.css.map +1 -0
- package/dist/esm/components/organisms/ImageEditor/ImageEditor.d.ts +20 -0
- package/dist/esm/components/organisms/ImageEditor/ImageEditor.js +201 -0
- package/dist/esm/components/organisms/ImageEditor/ImageEditor.js.map +1 -0
- package/dist/esm/components/organisms/Modal/Modal.d.ts +2 -1
- package/dist/esm/components/organisms/Modal/Modal.js +5 -5
- package/dist/esm/components/organisms/Modal/Modal.js.map +1 -1
- package/dist/esm/components/organisms/PickerDate/PickerDate.js +1 -1
- package/dist/esm/components/organisms/PickerDate/PickerDate.js.map +1 -1
- package/dist/esm/components/organisms/index.d.ts +2 -0
- package/dist/esm/components/organisms/index.js +2 -0
- package/dist/esm/components/organisms/index.js.map +1 -1
- package/dist/esm/controllers/ListController.d.ts +3 -3
- package/dist/esm/controllers/ListController.js +16 -16
- package/dist/esm/controllers/ListController.js.map +1 -1
- package/dist/esm/controllers/RelocationOnComponentController.d.ts +8 -0
- package/dist/esm/controllers/RelocationOnComponentController.js +93 -0
- package/dist/esm/controllers/RelocationOnComponentController.js.map +1 -0
- package/dist/esm/controllers/ResizeController.d.ts +15 -0
- package/dist/esm/controllers/ResizeController.js +29 -0
- package/dist/esm/controllers/ResizeController.js.map +1 -0
- package/dist/esm/controllers/index.d.ts +2 -0
- package/dist/esm/controllers/index.js +2 -0
- package/dist/esm/controllers/index.js.map +1 -1
- package/dist/esm/definitions.d.ts +3 -3
- package/dist/esm/i18n.d.ts +3 -0
- package/dist/esm/i18n.js +6 -0
- package/dist/esm/i18n.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,12 +8,12 @@ interface ListControllerState {
|
|
|
8
8
|
value: string;
|
|
9
9
|
}
|
|
10
10
|
export interface ListController<T = any> extends ListControllerState {
|
|
11
|
-
contentRef: RefObject<HTMLDivElement>;
|
|
12
|
-
inputRef: RefObject<HTMLInputElement>;
|
|
13
|
-
listRef: RefObject<HTMLUListElement>;
|
|
14
11
|
navigationElement: (event: KeyboardEvent) => void;
|
|
15
12
|
navigationInput: (event: KeyboardEvent) => void;
|
|
16
13
|
setFormValue(element?: AbstractListElement<T>): void;
|
|
14
|
+
refContent: RefObject<HTMLDivElement>;
|
|
15
|
+
refInput: RefObject<HTMLInputElement>;
|
|
16
|
+
refList: RefObject<HTMLUListElement>;
|
|
17
17
|
setState: (state: Partial<ListControllerState>) => void;
|
|
18
18
|
}
|
|
19
19
|
interface ListControllerProps<T = any, K = string> {
|
|
@@ -5,23 +5,23 @@ function calculateMinHeightList(count, height) {
|
|
|
5
5
|
}
|
|
6
6
|
export function useListController(props) {
|
|
7
7
|
const { count, suggestions, automatic, formControl, lineHeight, reference } = props;
|
|
8
|
+
const refContent = useRef(null);
|
|
9
|
+
const refList = useRef(null);
|
|
10
|
+
const refInput = useRef(null);
|
|
8
11
|
const listIsOpen = useRef(false);
|
|
9
|
-
const contentRef = useRef(null);
|
|
10
|
-
const listRef = useRef(null);
|
|
11
|
-
const inputRef = useRef(null);
|
|
12
12
|
const [collection, setCollection] = useState(new ListCollection(suggestions));
|
|
13
13
|
const [state, refreshState] = useState({
|
|
14
14
|
focused: false,
|
|
15
15
|
higher: false,
|
|
16
|
-
|
|
17
|
-
|
|
16
|
+
modalIsVisible: false,
|
|
17
|
+
value: ''
|
|
18
18
|
});
|
|
19
|
+
const changeValueInternal = useRef(false);
|
|
19
20
|
const position = useRef(0);
|
|
20
21
|
const valueProtected = useRef();
|
|
21
|
-
const changeValueInternal = useRef(false);
|
|
22
22
|
useEffect(() => {
|
|
23
23
|
function onCloseSuggestions({ target }) {
|
|
24
|
-
!
|
|
24
|
+
!refContent?.current?.contains(target) &&
|
|
25
25
|
refreshState((state) => ({ ...state, modalIsVisible: false }));
|
|
26
26
|
}
|
|
27
27
|
document.addEventListener('click', onCloseSuggestions);
|
|
@@ -71,7 +71,7 @@ export function useListController(props) {
|
|
|
71
71
|
const _state = state.modalIsVisible
|
|
72
72
|
? {
|
|
73
73
|
...state,
|
|
74
|
-
higher: locationListCanTop(
|
|
74
|
+
higher: locationListCanTop(refContent.current, refList.current, minHeightList)
|
|
75
75
|
}
|
|
76
76
|
: state;
|
|
77
77
|
refreshState((state) => ({ ...state, ..._state }));
|
|
@@ -89,29 +89,29 @@ export function useListController(props) {
|
|
|
89
89
|
const navigationInput = useCallback((event) => {
|
|
90
90
|
if (state.modalIsVisible) {
|
|
91
91
|
const _position = navigationListFromInput({
|
|
92
|
-
content:
|
|
92
|
+
content: refContent.current,
|
|
93
93
|
event: event,
|
|
94
|
-
list:
|
|
94
|
+
list: refList.current
|
|
95
95
|
});
|
|
96
96
|
position.current = _position ?? 0;
|
|
97
97
|
}
|
|
98
98
|
}, [state.modalIsVisible]);
|
|
99
99
|
const navigationElement = useCallback((event) => {
|
|
100
100
|
position.current = navigationListFromElement({
|
|
101
|
-
content:
|
|
101
|
+
content: refContent.current,
|
|
102
102
|
event: event,
|
|
103
|
-
input:
|
|
104
|
-
list:
|
|
103
|
+
input: refInput.current,
|
|
104
|
+
list: refList.current,
|
|
105
105
|
position: position.current
|
|
106
106
|
});
|
|
107
107
|
}, [state.modalIsVisible]);
|
|
108
108
|
return {
|
|
109
109
|
...state,
|
|
110
|
-
contentRef,
|
|
111
|
-
inputRef,
|
|
112
|
-
listRef,
|
|
113
110
|
navigationElement,
|
|
114
111
|
navigationInput,
|
|
112
|
+
refContent,
|
|
113
|
+
refInput,
|
|
114
|
+
refList,
|
|
115
115
|
setFormValue,
|
|
116
116
|
setState
|
|
117
117
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListController.js","sourceRoot":"","sources":["../../../src/controllers/ListController.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,kBAAkB,EAClB,yBAAyB,EACzB,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAGL,WAAW,EACX,SAAS,EACT,MAAM,EACN,QAAQ,EACT,MAAM,OAAO,CAAC;AA+Bf,SAAS,sBAAsB,CAAC,KAAa,EAAE,MAAc;IAC3D,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,KAAgC;IAEhC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GACzE,KAAK,CAAC;IAER,MAAM,UAAU,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"ListController.js","sourceRoot":"","sources":["../../../src/controllers/ListController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { MutableRefObject } from 'react';
|
|
2
|
+
interface RelocationOnComponentProps {
|
|
3
|
+
container: MutableRefObject<HTMLElement>;
|
|
4
|
+
element: MutableRefObject<HTMLElement>;
|
|
5
|
+
onDrag?: () => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function useRelocationOnComponent({ container, element, onDrag }: RelocationOnComponentProps): void;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef } from 'react';
|
|
2
|
+
export function useRelocationOnComponent({ container, element, onDrag }) {
|
|
3
|
+
const position = useRef({ x: 0, y: 0 });
|
|
4
|
+
const dragOffset = useRef({ x: 0, y: 0 });
|
|
5
|
+
const dragging = useRef(false);
|
|
6
|
+
const getClientX = useCallback((positionX) => {
|
|
7
|
+
let clientX = position.current.x + positionX - dragOffset.current.x;
|
|
8
|
+
if (clientX < 0) {
|
|
9
|
+
clientX = 0;
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
const width = clientX + element.current.offsetWidth;
|
|
13
|
+
if (width > container.current.offsetWidth) {
|
|
14
|
+
clientX = container.current.offsetWidth - element.current.offsetWidth;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
return clientX;
|
|
18
|
+
}, []);
|
|
19
|
+
const getClientY = useCallback((positionY) => {
|
|
20
|
+
let clientY = position.current.y + positionY - dragOffset.current.y;
|
|
21
|
+
if (clientY < 0) {
|
|
22
|
+
clientY = 0;
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
const height = clientY + element.current.offsetHeight;
|
|
26
|
+
if (height > container.current.offsetHeight) {
|
|
27
|
+
clientY = container.current.offsetHeight - element.current.offsetHeight;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return clientY;
|
|
31
|
+
}, []);
|
|
32
|
+
const start = useCallback((positionX, positionY) => {
|
|
33
|
+
dragOffset.current = {
|
|
34
|
+
x: positionX,
|
|
35
|
+
y: positionY
|
|
36
|
+
};
|
|
37
|
+
position.current = {
|
|
38
|
+
x: element.current.offsetLeft,
|
|
39
|
+
y: element.current.offsetTop
|
|
40
|
+
};
|
|
41
|
+
dragging.current = true;
|
|
42
|
+
}, []);
|
|
43
|
+
const relocation = useCallback((positionX, positionY) => {
|
|
44
|
+
const clientX = getClientX(positionX);
|
|
45
|
+
const clientY = getClientY(positionY);
|
|
46
|
+
element.current.style.top = `${clientY}px`;
|
|
47
|
+
element.current.style.left = `${clientX}px`;
|
|
48
|
+
onDrag && onDrag();
|
|
49
|
+
}, []);
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
const mousedown = (event) => {
|
|
52
|
+
start(event.clientX, event.clientY);
|
|
53
|
+
};
|
|
54
|
+
const mousemove = (event) => {
|
|
55
|
+
if (dragging.current) {
|
|
56
|
+
relocation(event.clientX, event.clientY);
|
|
57
|
+
event.preventDefault();
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const mouseup = () => {
|
|
61
|
+
dragging.current = false;
|
|
62
|
+
};
|
|
63
|
+
const touchstart = (event) => {
|
|
64
|
+
if (event.touches[0]) {
|
|
65
|
+
start(event.touches[0].clientX, event.touches[0].clientY);
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const touchmove = (event) => {
|
|
69
|
+
if (event.touches[0] && dragging.current) {
|
|
70
|
+
relocation(event.touches[0].clientX, event.touches[0].clientY);
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
const touchend = () => {
|
|
75
|
+
dragging.current = false;
|
|
76
|
+
};
|
|
77
|
+
element.current.addEventListener('mousedown', mousedown);
|
|
78
|
+
element.current.addEventListener('mousemove', mousemove);
|
|
79
|
+
element.current.addEventListener('mouseup', mouseup);
|
|
80
|
+
element.current.addEventListener('touchstart', touchstart);
|
|
81
|
+
element.current.addEventListener('touchmove', touchmove);
|
|
82
|
+
element.current.addEventListener('touchend', touchend);
|
|
83
|
+
return () => {
|
|
84
|
+
element.current?.removeEventListener('mousedown', mousedown);
|
|
85
|
+
element.current?.removeEventListener('mousemove', mousemove);
|
|
86
|
+
element.current?.removeEventListener('mouseup', mouseup);
|
|
87
|
+
element.current?.removeEventListener('touchstart', touchstart);
|
|
88
|
+
element.current?.removeEventListener('touchmove', touchmove);
|
|
89
|
+
element.current?.removeEventListener('touchend', touchend);
|
|
90
|
+
};
|
|
91
|
+
}, []);
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=RelocationOnComponentController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RelocationOnComponentController.js","sourceRoot":"","sources":["../../../src/controllers/RelocationOnComponentController.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { MutableRefObject } from 'react';
|
|
2
|
+
interface ResizeDimensionEvent {
|
|
3
|
+
height: number;
|
|
4
|
+
width: number;
|
|
5
|
+
}
|
|
6
|
+
interface ResizeEvent {
|
|
7
|
+
current: ResizeDimensionEvent;
|
|
8
|
+
dimension: ResizeDimensionEvent;
|
|
9
|
+
}
|
|
10
|
+
interface ResizeProps {
|
|
11
|
+
refElement: MutableRefObject<HTMLElement>;
|
|
12
|
+
onResize?: (event: ResizeEvent) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare function useResize(props: ResizeProps): void;
|
|
15
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef } from 'react';
|
|
2
|
+
export function useResize(props) {
|
|
3
|
+
const { refElement, onResize } = props;
|
|
4
|
+
const dimension = useRef({ height: 0, width: 0 });
|
|
5
|
+
const observer = useCallback((entries) => {
|
|
6
|
+
const { height, width } = entries[0].contentRect;
|
|
7
|
+
onResize &&
|
|
8
|
+
onResize({
|
|
9
|
+
current: dimension.current,
|
|
10
|
+
dimension: {
|
|
11
|
+
height,
|
|
12
|
+
width
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
dimension.current = { height, width };
|
|
16
|
+
}, []);
|
|
17
|
+
useEffect(() => {
|
|
18
|
+
dimension.current = {
|
|
19
|
+
height: refElement.current.offsetHeight,
|
|
20
|
+
width: refElement.current.offsetWidth
|
|
21
|
+
};
|
|
22
|
+
const resizeObserver = new ResizeObserver(observer);
|
|
23
|
+
resizeObserver.observe(refElement.current);
|
|
24
|
+
return () => {
|
|
25
|
+
resizeObserver.disconnect();
|
|
26
|
+
};
|
|
27
|
+
}, []);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=ResizeController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResizeController.js","sourceRoot":"","sources":["../../../src/controllers/ResizeController.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAiBzE,MAAM,UAAU,SAAS,CAAC,KAAkB;IAC1C,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAEvC,MAAM,SAAS,GAAG,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAElD,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,OAA8B,EAAE,EAAE;QAC9D,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAEjD,QAAQ;YACN,QAAQ,CAAC;gBACP,OAAO,EAAE,SAAS,CAAC,OAAO;gBAC1B,SAAS,EAAE;oBACT,MAAM;oBACN,KAAK;iBACN;aACF,CAAC,CAAC;QAEL,SAAS,CAAC,OAAO,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACxC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,CAAC,OAAO,GAAG;YAClB,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,YAAY;YACvC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW;SACtC,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC;QACpD,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE3C,OAAO,GAAG,EAAE;YACV,cAAc,CAAC,UAAU,EAAE,CAAC;QAC9B,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/controllers/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mCAAmC,CAAC;AAClD,cAAc,oBAAoB,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { RefObject } from 'react';
|
|
2
2
|
export interface ListControllerState {
|
|
3
|
-
contentRef: RefObject<HTMLDivElement>;
|
|
4
3
|
focused: boolean;
|
|
5
4
|
higher: boolean;
|
|
6
|
-
inputRef: RefObject<HTMLInputElement>;
|
|
7
|
-
listRef: RefObject<HTMLUListElement>;
|
|
8
5
|
modalIsVisible: boolean;
|
|
6
|
+
refContent: RefObject<HTMLDivElement>;
|
|
7
|
+
refInput: RefObject<HTMLInputElement>;
|
|
8
|
+
refList: RefObject<HTMLUListElement>;
|
|
9
9
|
value: string;
|
|
10
10
|
}
|
package/dist/esm/i18n.d.ts
CHANGED
|
@@ -3,6 +3,9 @@ export declare const reactI18n: import("@rolster/i18n").I18nTranslate<{
|
|
|
3
3
|
dateActionCancel: string;
|
|
4
4
|
dateActionSelect: string;
|
|
5
5
|
dateActionToday: string;
|
|
6
|
+
chooserImageActionCancel: string;
|
|
7
|
+
editorImageActionRestore: string;
|
|
8
|
+
editorImageActionSelect: string;
|
|
6
9
|
listEmptyDescription: string;
|
|
7
10
|
listEmptyTitle: string;
|
|
8
11
|
listInputPlaceholder: string;
|
package/dist/esm/i18n.js
CHANGED
|
@@ -5,6 +5,9 @@ export const reactI18n = i18n({
|
|
|
5
5
|
dateActionCancel: 'Cancelar',
|
|
6
6
|
dateActionSelect: 'Establecer',
|
|
7
7
|
dateActionToday: 'Hoy',
|
|
8
|
+
chooserImageActionCancel: 'Cancelar',
|
|
9
|
+
editorImageActionRestore: 'Restaurar',
|
|
10
|
+
editorImageActionSelect: 'Seleccionar',
|
|
8
11
|
listEmptyDescription: 'Lo sentimos, en el momento no hay elementos en el listado',
|
|
9
12
|
listEmptyTitle: 'Selección no disponible',
|
|
10
13
|
listInputPlaceholder: 'Escriba palabre clave para filtrar...'
|
|
@@ -14,6 +17,9 @@ export const reactI18n = i18n({
|
|
|
14
17
|
dateActionCancel: 'Cancel',
|
|
15
18
|
dateActionSelect: 'Select',
|
|
16
19
|
dateActionToday: 'Today',
|
|
20
|
+
chooserImageActionCancel: 'Cancel',
|
|
21
|
+
editorImageActionRestore: 'Restore',
|
|
22
|
+
editorImageActionSelect: 'Select',
|
|
17
23
|
listEmptyDescription: 'Sorry, there are currently no items in the list',
|
|
18
24
|
listEmptyTitle: 'Selection not available',
|
|
19
25
|
listInputPlaceholder: 'Enter keyword to filter...'
|
package/dist/esm/i18n.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC;IAC5B,EAAE,EAAE;QACF,0BAA0B,EAAE,SAAS;QACrC,gBAAgB,EAAE,UAAU;QAC5B,gBAAgB,EAAE,YAAY;QAC9B,eAAe,EAAE,KAAK;QACtB,oBAAoB,EAClB,2DAA2D;QAC7D,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,uCAAuC;KAC9D;IACD,EAAE,EAAE;QACF,0BAA0B,EAAE,UAAU;QACtC,gBAAgB,EAAE,QAAQ;QAC1B,gBAAgB,EAAE,QAAQ;QAC1B,eAAe,EAAE,OAAO;QACxB,oBAAoB,EAAE,iDAAiD;QACvE,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,4BAA4B;KACnD;CACF,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"i18n.js","sourceRoot":"","sources":["../../src/i18n.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,CAAC;IAC5B,EAAE,EAAE;QACF,0BAA0B,EAAE,SAAS;QACrC,gBAAgB,EAAE,UAAU;QAC5B,gBAAgB,EAAE,YAAY;QAC9B,eAAe,EAAE,KAAK;QACtB,wBAAwB,EAAE,UAAU;QACpC,wBAAwB,EAAE,WAAW;QACrC,uBAAuB,EAAE,aAAa;QACtC,oBAAoB,EAClB,2DAA2D;QAC7D,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,uCAAuC;KAC9D;IACD,EAAE,EAAE;QACF,0BAA0B,EAAE,UAAU;QACtC,gBAAgB,EAAE,QAAQ;QAC1B,gBAAgB,EAAE,QAAQ;QAC1B,eAAe,EAAE,OAAO;QACxB,wBAAwB,EAAE,QAAQ;QAClC,wBAAwB,EAAE,SAAS;QACnC,uBAAuB,EAAE,QAAQ;QACjC,oBAAoB,EAAE,iDAAiD;QACvE,cAAc,EAAE,yBAAyB;QACzC,oBAAoB,EAAE,4BAA4B;KACnD;CACF,CAAC,CAAC"}
|