ag-common 0.0.186 → 0.0.189
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.
|
@@ -5,4 +5,10 @@ export declare const addMinutes: (date: Date, minutes: number) => Date;
|
|
|
5
5
|
export declare const lastDayInMonth: (date: Date) => Date;
|
|
6
6
|
export declare const dateDiffDays: (date1: Date, date2: Date) => number;
|
|
7
7
|
export declare const CSharpToJs: (charpTicks: number) => Date;
|
|
8
|
+
/**
|
|
9
|
+
*
|
|
10
|
+
* @param minutes
|
|
11
|
+
* @param date default = now
|
|
12
|
+
* @returns
|
|
13
|
+
*/
|
|
8
14
|
export declare const dateTimeToNearestMinute: (minutes: number, date?: Date | undefined) => Date;
|
|
@@ -35,6 +35,12 @@ const CSharpToJs = (charpTicks) => {
|
|
|
35
35
|
return tickDate;
|
|
36
36
|
};
|
|
37
37
|
exports.CSharpToJs = CSharpToJs;
|
|
38
|
+
/**
|
|
39
|
+
*
|
|
40
|
+
* @param minutes
|
|
41
|
+
* @param date default = now
|
|
42
|
+
* @returns
|
|
43
|
+
*/
|
|
38
44
|
const dateTimeToNearestMinute = (minutes, date) => {
|
|
39
45
|
const coeff = 1000 * 60 * minutes;
|
|
40
46
|
if (!date) {
|
|
@@ -8,6 +8,7 @@ const styled_components_1 = __importDefault(require("styled-components"));
|
|
|
8
8
|
const react_1 = __importDefault(require("react"));
|
|
9
9
|
const SClose = styled_components_1.default.div `
|
|
10
10
|
position: absolute;
|
|
11
|
+
z-index: 1;
|
|
11
12
|
width: 32px;
|
|
12
13
|
height: 32px;
|
|
13
14
|
opacity: 0.3;
|
|
@@ -19,4 +19,13 @@ export interface ISearchDialog<T> {
|
|
|
19
19
|
*/
|
|
20
20
|
getKeyF: (i: T) => string;
|
|
21
21
|
}
|
|
22
|
-
export declare
|
|
22
|
+
export declare type TSearchModalRes<T> = undefined | {
|
|
23
|
+
foundItem: T;
|
|
24
|
+
searchText: string;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* opens a searchmodal programatically, and resolves to either undefined, or the selected item
|
|
28
|
+
* @param p
|
|
29
|
+
* @returns
|
|
30
|
+
*/
|
|
31
|
+
export declare const searchDialog: <T>(p: ISearchDialog<T>) => Promise<TSearchModalRes<T>>;
|
|
@@ -44,6 +44,8 @@ const styled_components_1 = __importDefault(require("styled-components"));
|
|
|
44
44
|
const react_dom_1 = __importDefault(require("react-dom"));
|
|
45
45
|
const react_1 = __importStar(require("react"));
|
|
46
46
|
const ModalStyled = (0, styled_components_1.default)(Modal_1.Modal) `
|
|
47
|
+
display: flex;
|
|
48
|
+
flex-flow: column;
|
|
47
49
|
top: 10rem;
|
|
48
50
|
@media ${media_1.bigScreen} {
|
|
49
51
|
width: 50vw;
|
|
@@ -104,25 +106,35 @@ const SearchModal = ({ res, wrapper, placeholderText, closeText, renderItem, dis
|
|
|
104
106
|
document.body.style.overflow = 'hidden';
|
|
105
107
|
}
|
|
106
108
|
}, []);
|
|
107
|
-
const
|
|
109
|
+
const [searchText, setSearchText] = (0, react_1.useState)('');
|
|
110
|
+
const resWrap = (foundItem) => {
|
|
108
111
|
try {
|
|
109
112
|
document.body.style.overflow = originalStyle || '';
|
|
110
|
-
|
|
113
|
+
if (!foundItem) {
|
|
114
|
+
res(undefined);
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
res({ foundItem, searchText });
|
|
118
|
+
}
|
|
111
119
|
}
|
|
112
120
|
finally {
|
|
113
121
|
wrapper.remove();
|
|
114
122
|
}
|
|
115
123
|
};
|
|
116
|
-
const [searchText, setSearchText] = (0, react_1.useState)('');
|
|
117
124
|
const filteredItems = displayItems.filter((i) => willDisplayItem(searchText, i));
|
|
118
|
-
return (react_1.default.createElement(ModalStyled, { position: "center", topPosition: "center", open: true, setOpen: () =>
|
|
125
|
+
return (react_1.default.createElement(ModalStyled, { position: "center", topPosition: "center", open: true, setOpen: () => resWrap(undefined), showCloseButton: false, closeOnClickOutside: true },
|
|
119
126
|
react_1.default.createElement(SearchBox, null,
|
|
120
127
|
react_1.default.createElement(TextEdit_1.TextEdit, { placeholder: placeholderText, defaultValue: "", onSubmit: (v) => (0, debounce_1.debounce)(() => {
|
|
121
128
|
setSearchText(v);
|
|
122
129
|
}, { key: 'pagesearch', time: 200 }), defaultEditing: { focus: true }, singleLine: true, leftContent: react_1.default.createElement(Icon, null, MagnifyIconSvg), noGrow: true, allowUndo: false }),
|
|
123
|
-
react_1.default.createElement(CloseButton, { onClick: () =>
|
|
124
|
-
react_1.default.createElement(Content, null, filteredItems.map((i) => (react_1.default.createElement(Row, { key: getKeyF(i), onClick: () =>
|
|
130
|
+
react_1.default.createElement(CloseButton, { onClick: () => resWrap(undefined) }, closeText)),
|
|
131
|
+
react_1.default.createElement(Content, null, filteredItems.map((i) => (react_1.default.createElement(Row, { key: getKeyF(i), onClick: () => resWrap(i) }, renderItem(searchText, i)))))));
|
|
125
132
|
};
|
|
133
|
+
/**
|
|
134
|
+
* opens a searchmodal programatically, and resolves to either undefined, or the selected item
|
|
135
|
+
* @param p
|
|
136
|
+
* @returns
|
|
137
|
+
*/
|
|
126
138
|
const searchDialog = (p) => __awaiter(void 0, void 0, void 0, function* () {
|
|
127
139
|
const placeholderText = p.placeholderText || '';
|
|
128
140
|
const closeText = p.closeText || 'CLOSE';
|