@etsoo/shared 1.1.2 → 1.1.6

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/README.md CHANGED
@@ -18,6 +18,16 @@ $ yarn add @etsoo/shared
18
18
  ## storage
19
19
  Storage interface and browser storage implementation
20
20
 
21
+ ## Keyboard
22
+ Keyboard keys and codes
23
+
24
+ |Name|Description|
25
+ |---:|---|
26
+ |Keys|KeyboardEvent.key constants|
27
+ |Codes|KeyboardEvent.code constants|
28
+
29
+ |isTypingContent|Is typing content or press command key|
30
+
21
31
  ## DataTypes
22
32
  Data type definitions and type safe functions
23
33
 
@@ -36,6 +46,7 @@ Data type definitions and type safe functions
36
46
  |EnumBase|Enum base type|
37
47
  |EnumValue|Enum value type|
38
48
  |ExtendedEnum|Extended type enum|
49
+ |Func<R>|Function type, R is return type|
39
50
  |HAlign|Horizontal align|
40
51
  |HAlignEnum|Horizontal align enum|
41
52
  |IdType|Number and string combination id type|
@@ -72,6 +72,9 @@ test('Tests for getEnumKeys', () => {
72
72
  GRAM = 'GRAM33'
73
73
  }
74
74
  expect(DataTypes.getEnumKeys(ProductUnit)).toContainEqual('GRAM');
75
+
76
+ const keys = DataTypes.getEnumKeys(DataTypes.CombinedEnum);
77
+ expect(keys).toContainEqual('Unkwown');
75
78
  });
76
79
 
77
80
  test('Tests for getItemId', () => {
@@ -0,0 +1,8 @@
1
+ import { Keyboard } from '../src/Keyboard';
2
+
3
+ test('Tests for isTypingContent', () => {
4
+ expect(Keyboard.isTypingContent(Keyboard.Keys.A)).toBeTruthy();
5
+ expect(Keyboard.isTypingContent(Keyboard.Keys.Ampersand)).toBeTruthy();
6
+ expect(Keyboard.isTypingContent(Keyboard.Keys.Shift)).toBeFalsy();
7
+ expect(Keyboard.isTypingContent(Keyboard.Keys.PrintScreen)).toBeFalsy();
8
+ });
@@ -141,7 +141,10 @@ test('Tests for getResult', () => {
141
141
  const inputNumber: test = 5;
142
142
 
143
143
  // Act & assert
144
- expect(Utils.getResult(input, true)).toBe(1);
144
+ const result = Utils.getResult(input, true);
145
+ expect(result).toBe(1);
145
146
  expect(Utils.getResult(input, false)).toBe(0);
146
- expect(Utils.getResult(inputNumber)).toBe(5);
147
+
148
+ const valueResult = Utils.getResult(inputNumber);
149
+ expect(valueResult).toBe(5);
147
150
  });
@@ -128,6 +128,10 @@ export declare namespace DataTypes {
128
128
  * Enum base type
129
129
  */
130
130
  type EnumBase = Record<string, EnumValue>;
131
+ /**
132
+ * Function type
133
+ */
134
+ type Func<R> = (...args: any[]) => R;
131
135
  /**
132
136
  * String key, unknown value Record
133
137
  */
@@ -251,7 +255,7 @@ export declare namespace DataTypes {
251
255
  * @param input Input Enum
252
256
  * @returns Keys
253
257
  */
254
- function getEnumKeys<T extends EnumBase, K extends keyof T>(input: T): K[];
258
+ function getEnumKeys<T extends EnumBase, K extends keyof T & string>(input: T): K[];
255
259
  /**
256
260
  * Get object id field value
257
261
  * @param data Data
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Keyboard functions
3
+ */
4
+ export declare namespace Keyboard {
5
+ /**
6
+ * Keys for KeyboardEvent.key
7
+ */
8
+ enum Keys {
9
+ Backspace = "Backspace",
10
+ Tab = "Tab",
11
+ Enter = "Enter",
12
+ Shift = "Shift",
13
+ Control = "Control",
14
+ Alt = "Alt",
15
+ Pause = "Pause",
16
+ CapsLock = "CapsLock",
17
+ Escape = "Escape",
18
+ Space = "",
19
+ PageUp = "PageUp",
20
+ PageDown = "PageDown",
21
+ End = "End",
22
+ Home = "Home",
23
+ ArrowLeft = "ArrowLeft",
24
+ ArrowUp = "ArrowUp",
25
+ ArrowRight = "ArrowRight",
26
+ ArrowDown = "ArrowDown",
27
+ PrintScreen = "PrintScreen",
28
+ Insert = "Insert",
29
+ Delete = "Delete",
30
+ Digit0 = "0",
31
+ Digit1 = "1",
32
+ Digit2 = "2",
33
+ Digit3 = "3",
34
+ Digit4 = "4",
35
+ Digit5 = "5",
36
+ Digit6 = "6",
37
+ Digit7 = "7",
38
+ Digit8 = "8",
39
+ Digit9 = "9",
40
+ A = "A",
41
+ B = "B",
42
+ C = "C",
43
+ D = "D",
44
+ E = "E",
45
+ F = "F",
46
+ G = "G",
47
+ H = "H",
48
+ I = "I",
49
+ J = "J",
50
+ K = "K",
51
+ L = "L",
52
+ M = "M",
53
+ N = "N",
54
+ O = "O",
55
+ P = "P",
56
+ Q = "Q",
57
+ R = "R",
58
+ S = "S",
59
+ T = "T",
60
+ U = "U",
61
+ V = "V",
62
+ W = "W",
63
+ X = "X",
64
+ Y = "Y",
65
+ Z = "Z",
66
+ a = "a",
67
+ b = "b",
68
+ c = "c",
69
+ d = "d",
70
+ e = "e",
71
+ f = "f",
72
+ g = "g",
73
+ h = "h",
74
+ i = "i",
75
+ j = "j",
76
+ k = "k",
77
+ l = "l",
78
+ m = "m",
79
+ n = "n",
80
+ o = "o",
81
+ p = "p",
82
+ q = "q",
83
+ r = "r",
84
+ s = "s",
85
+ t = "t",
86
+ u = "u",
87
+ v = "v",
88
+ w = "w",
89
+ x = "x",
90
+ y = "y",
91
+ z = "z",
92
+ Meta = "Meta",
93
+ ContextMenu = "ContextMenu",
94
+ AudioVolumeMute = "AudioVolumeMute",
95
+ AudioVolumeDown = "AudioVolumeDown",
96
+ AudioVolumeUp = "AudioVolumeUp",
97
+ F1 = "F1",
98
+ F2 = "F2",
99
+ F3 = "F3",
100
+ F4 = "F4",
101
+ F5 = "F5",
102
+ F6 = "F6",
103
+ F7 = "F7",
104
+ F8 = "F8",
105
+ F9 = "F9",
106
+ F10 = "F10",
107
+ F11 = "F11",
108
+ F12 = "F12",
109
+ NumLock = "NumLock",
110
+ ScrollLock = "ScrollLock",
111
+ Semicolon = ";",
112
+ Equal = "=",
113
+ Comma = ",",
114
+ Minus = "-",
115
+ Period = ".",
116
+ Slash = "/",
117
+ Backquote = "`",
118
+ BracketLeft = "[",
119
+ Backslash = "\\",
120
+ BracketRight = "]",
121
+ Quote = "'",
122
+ Tilde = "~",
123
+ Exclamation = "!",
124
+ At = "@",
125
+ Sharp = "#",
126
+ Dollar = "$",
127
+ Percent = "%",
128
+ Caret = "^",
129
+ Ampersand = "&",
130
+ Asterisk = "*",
131
+ ParenthesisLeft = "(",
132
+ ParenthesisRight = ")",
133
+ Underscore = "_",
134
+ Plus = "+",
135
+ OpenBrace = "{",
136
+ CloseBrace = "}",
137
+ Pipe = "|",
138
+ Colon = ":",
139
+ Quote2 = "\"",
140
+ AngleBracketLeft = "<",
141
+ AngleBracketRight = ">",
142
+ QuestionMark = "?"
143
+ }
144
+ /**
145
+ * Codes for KeyboardEvent.code
146
+ */
147
+ enum Codes {
148
+ Backspace = "Backspace",
149
+ Tab = "Tab",
150
+ Enter = "Enter",
151
+ ShiftLeft = "ShiftLeft",
152
+ ShiftRight = "ShiftRight",
153
+ ControlLeft = "ControlLeft",
154
+ ControlRight = "ControlRight",
155
+ AltLeft = "AltLeft",
156
+ AltRight = "AltRight",
157
+ Pause = "Pause",
158
+ CapsLock = "CapsLock",
159
+ Escape = "Escape",
160
+ Space = "Space",
161
+ PageUp = "PageUp",
162
+ PageDown = "PageDown",
163
+ End = "End",
164
+ Home = "Home",
165
+ ArrowLeft = "ArrowLeft",
166
+ ArrowUp = "ArrowUp",
167
+ ArrowRight = "ArrowRight",
168
+ ArrowDown = "ArrowDown",
169
+ PrintScreen = "PrintScreen",
170
+ Insert = "Insert",
171
+ Delete = "Delete",
172
+ Digit0 = "Digit0",
173
+ Digit1 = "Digit1",
174
+ Digit2 = "Digit2",
175
+ Digit3 = "Digit3",
176
+ Digit4 = "Digit4",
177
+ Digit5 = "Digit5",
178
+ Digit6 = "Digit6",
179
+ Digit7 = "Digit7",
180
+ Digit8 = "Digit8",
181
+ Digit9 = "Digit9",
182
+ AudioVolumeMute = "AudioVolumeMute",
183
+ AudioVolumeDown = "AudioVolumeDown",
184
+ AudioVolumeUp = "AudioVolumeUp",
185
+ KeyA = "KeyA",
186
+ KeyB = "KeyB",
187
+ KeyC = "KeyC",
188
+ KeyD = "KeyD",
189
+ KeyE = "KeyE",
190
+ KeyF = "KeyF",
191
+ KeyG = "KeyG",
192
+ KeyH = "KeyH",
193
+ KeyI = "KeyI",
194
+ KeyJ = "KeyJ",
195
+ KeyK = "KeyK",
196
+ KeyL = "KeyL",
197
+ KeyM = "KeyM",
198
+ KeyN = "KeyN",
199
+ KeyO = "KeyO",
200
+ KeyP = "KeyP",
201
+ KeyQ = "KeyQ",
202
+ KeyR = "KeyR",
203
+ KeyS = "KeyS",
204
+ KeyT = "KeyT",
205
+ KeyU = "KeyU",
206
+ KeyV = "KeyV",
207
+ KeyW = "KeyW",
208
+ KeyX = "KeyX",
209
+ KeyY = "KeyY",
210
+ KeyZ = "KeyZ",
211
+ MetaLeft = "MetaLeft",
212
+ MetaRight = "MetaRight",
213
+ ContextMenu = "ContextMenu",
214
+ Numpad0 = "Numpad0",
215
+ Numpad1 = "Numpad1",
216
+ Numpad2 = "Numpad2",
217
+ Numpad3 = "Numpad3",
218
+ Numpad4 = "Numpad4",
219
+ Numpad5 = "Numpad5",
220
+ Numpad6 = "Numpad6",
221
+ Numpad7 = "Numpad7",
222
+ Numpad8 = "Numpad8",
223
+ Numpad9 = "Numpad9",
224
+ NumpadMultiply = "NumpadMultiply",
225
+ NumpadAdd = "NumpadAdd",
226
+ NumpadSubtract = "NumpadSubtract",
227
+ NumpadDecimal = "NumpadDecimal",
228
+ NumpadDivide = "NumpadDivide",
229
+ F1 = "F1",
230
+ F2 = "F2",
231
+ F3 = "F3",
232
+ F4 = "F4",
233
+ F5 = "F5",
234
+ F6 = "F6",
235
+ F7 = "F7",
236
+ F8 = "F8",
237
+ F9 = "F9",
238
+ F10 = "F10",
239
+ F11 = "F11",
240
+ F12 = "F12",
241
+ NumLock = "NumLock",
242
+ ScrollLock = "ScrollLock",
243
+ Semicolon = "Semicolon",
244
+ Equal = "Equal",
245
+ Comma = "Comma",
246
+ Minus = "Minus",
247
+ Period = "Period",
248
+ Slash = "Slash",
249
+ Backquote = "Backquote",
250
+ BracketLeft = "BracketLeft",
251
+ Backslash = "Backslash",
252
+ BracketRight = "BracketRight",
253
+ Quote = "Quote"
254
+ }
255
+ /**
256
+ * Is typing content or press command key
257
+ * @param input Input key
258
+ * @returns Result
259
+ */
260
+ function isTypingContent(input: Keys | string): boolean;
261
+ }
@@ -0,0 +1,270 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Keyboard = void 0;
4
+ /**
5
+ * Keyboard functions
6
+ */
7
+ var Keyboard;
8
+ (function (Keyboard) {
9
+ /**
10
+ * Keys for KeyboardEvent.key
11
+ */
12
+ let Keys;
13
+ (function (Keys) {
14
+ Keys["Backspace"] = "Backspace";
15
+ Keys["Tab"] = "Tab";
16
+ Keys["Enter"] = "Enter";
17
+ Keys["Shift"] = "Shift";
18
+ Keys["Control"] = "Control";
19
+ Keys["Alt"] = "Alt";
20
+ Keys["Pause"] = "Pause";
21
+ Keys["CapsLock"] = "CapsLock";
22
+ Keys["Escape"] = "Escape";
23
+ Keys["Space"] = "";
24
+ Keys["PageUp"] = "PageUp";
25
+ Keys["PageDown"] = "PageDown";
26
+ Keys["End"] = "End";
27
+ Keys["Home"] = "Home";
28
+ Keys["ArrowLeft"] = "ArrowLeft";
29
+ Keys["ArrowUp"] = "ArrowUp";
30
+ Keys["ArrowRight"] = "ArrowRight";
31
+ Keys["ArrowDown"] = "ArrowDown";
32
+ Keys["PrintScreen"] = "PrintScreen";
33
+ Keys["Insert"] = "Insert";
34
+ Keys["Delete"] = "Delete";
35
+ Keys["Digit0"] = "0";
36
+ Keys["Digit1"] = "1";
37
+ Keys["Digit2"] = "2";
38
+ Keys["Digit3"] = "3";
39
+ Keys["Digit4"] = "4";
40
+ Keys["Digit5"] = "5";
41
+ Keys["Digit6"] = "6";
42
+ Keys["Digit7"] = "7";
43
+ Keys["Digit8"] = "8";
44
+ Keys["Digit9"] = "9";
45
+ Keys["A"] = "A";
46
+ Keys["B"] = "B";
47
+ Keys["C"] = "C";
48
+ Keys["D"] = "D";
49
+ Keys["E"] = "E";
50
+ Keys["F"] = "F";
51
+ Keys["G"] = "G";
52
+ Keys["H"] = "H";
53
+ Keys["I"] = "I";
54
+ Keys["J"] = "J";
55
+ Keys["K"] = "K";
56
+ Keys["L"] = "L";
57
+ Keys["M"] = "M";
58
+ Keys["N"] = "N";
59
+ Keys["O"] = "O";
60
+ Keys["P"] = "P";
61
+ Keys["Q"] = "Q";
62
+ Keys["R"] = "R";
63
+ Keys["S"] = "S";
64
+ Keys["T"] = "T";
65
+ Keys["U"] = "U";
66
+ Keys["V"] = "V";
67
+ Keys["W"] = "W";
68
+ Keys["X"] = "X";
69
+ Keys["Y"] = "Y";
70
+ Keys["Z"] = "Z";
71
+ Keys["a"] = "a";
72
+ Keys["b"] = "b";
73
+ Keys["c"] = "c";
74
+ Keys["d"] = "d";
75
+ Keys["e"] = "e";
76
+ Keys["f"] = "f";
77
+ Keys["g"] = "g";
78
+ Keys["h"] = "h";
79
+ Keys["i"] = "i";
80
+ Keys["j"] = "j";
81
+ Keys["k"] = "k";
82
+ Keys["l"] = "l";
83
+ Keys["m"] = "m";
84
+ Keys["n"] = "n";
85
+ Keys["o"] = "o";
86
+ Keys["p"] = "p";
87
+ Keys["q"] = "q";
88
+ Keys["r"] = "r";
89
+ Keys["s"] = "s";
90
+ Keys["t"] = "t";
91
+ Keys["u"] = "u";
92
+ Keys["v"] = "v";
93
+ Keys["w"] = "w";
94
+ Keys["x"] = "x";
95
+ Keys["y"] = "y";
96
+ Keys["z"] = "z";
97
+ Keys["Meta"] = "Meta";
98
+ Keys["ContextMenu"] = "ContextMenu";
99
+ Keys["AudioVolumeMute"] = "AudioVolumeMute";
100
+ Keys["AudioVolumeDown"] = "AudioVolumeDown";
101
+ Keys["AudioVolumeUp"] = "AudioVolumeUp";
102
+ Keys["F1"] = "F1";
103
+ Keys["F2"] = "F2";
104
+ Keys["F3"] = "F3";
105
+ Keys["F4"] = "F4";
106
+ Keys["F5"] = "F5";
107
+ Keys["F6"] = "F6";
108
+ Keys["F7"] = "F7";
109
+ Keys["F8"] = "F8";
110
+ Keys["F9"] = "F9";
111
+ Keys["F10"] = "F10";
112
+ Keys["F11"] = "F11";
113
+ Keys["F12"] = "F12";
114
+ Keys["NumLock"] = "NumLock";
115
+ Keys["ScrollLock"] = "ScrollLock";
116
+ Keys["Semicolon"] = ";";
117
+ Keys["Equal"] = "=";
118
+ Keys["Comma"] = ",";
119
+ Keys["Minus"] = "-";
120
+ Keys["Period"] = ".";
121
+ Keys["Slash"] = "/";
122
+ Keys["Backquote"] = "`";
123
+ Keys["BracketLeft"] = "[";
124
+ Keys["Backslash"] = "\\";
125
+ Keys["BracketRight"] = "]";
126
+ Keys["Quote"] = "'";
127
+ Keys["Tilde"] = "~";
128
+ Keys["Exclamation"] = "!";
129
+ Keys["At"] = "@";
130
+ Keys["Sharp"] = "#";
131
+ Keys["Dollar"] = "$";
132
+ Keys["Percent"] = "%";
133
+ Keys["Caret"] = "^";
134
+ Keys["Ampersand"] = "&";
135
+ Keys["Asterisk"] = "*";
136
+ Keys["ParenthesisLeft"] = "(";
137
+ Keys["ParenthesisRight"] = ")";
138
+ Keys["Underscore"] = "_";
139
+ Keys["Plus"] = "+";
140
+ Keys["OpenBrace"] = "{";
141
+ Keys["CloseBrace"] = "}";
142
+ Keys["Pipe"] = "|";
143
+ Keys["Colon"] = ":";
144
+ Keys["Quote2"] = "\"";
145
+ Keys["AngleBracketLeft"] = "<";
146
+ Keys["AngleBracketRight"] = ">";
147
+ Keys["QuestionMark"] = "?";
148
+ })(Keys = Keyboard.Keys || (Keyboard.Keys = {}));
149
+ /**
150
+ * Codes for KeyboardEvent.code
151
+ */
152
+ let Codes;
153
+ (function (Codes) {
154
+ Codes["Backspace"] = "Backspace";
155
+ Codes["Tab"] = "Tab";
156
+ Codes["Enter"] = "Enter";
157
+ Codes["ShiftLeft"] = "ShiftLeft";
158
+ Codes["ShiftRight"] = "ShiftRight";
159
+ Codes["ControlLeft"] = "ControlLeft";
160
+ Codes["ControlRight"] = "ControlRight";
161
+ Codes["AltLeft"] = "AltLeft";
162
+ Codes["AltRight"] = "AltRight";
163
+ Codes["Pause"] = "Pause";
164
+ Codes["CapsLock"] = "CapsLock";
165
+ Codes["Escape"] = "Escape";
166
+ Codes["Space"] = "Space";
167
+ Codes["PageUp"] = "PageUp";
168
+ Codes["PageDown"] = "PageDown";
169
+ Codes["End"] = "End";
170
+ Codes["Home"] = "Home";
171
+ Codes["ArrowLeft"] = "ArrowLeft";
172
+ Codes["ArrowUp"] = "ArrowUp";
173
+ Codes["ArrowRight"] = "ArrowRight";
174
+ Codes["ArrowDown"] = "ArrowDown";
175
+ Codes["PrintScreen"] = "PrintScreen";
176
+ Codes["Insert"] = "Insert";
177
+ Codes["Delete"] = "Delete";
178
+ Codes["Digit0"] = "Digit0";
179
+ Codes["Digit1"] = "Digit1";
180
+ Codes["Digit2"] = "Digit2";
181
+ Codes["Digit3"] = "Digit3";
182
+ Codes["Digit4"] = "Digit4";
183
+ Codes["Digit5"] = "Digit5";
184
+ Codes["Digit6"] = "Digit6";
185
+ Codes["Digit7"] = "Digit7";
186
+ Codes["Digit8"] = "Digit8";
187
+ Codes["Digit9"] = "Digit9";
188
+ Codes["AudioVolumeMute"] = "AudioVolumeMute";
189
+ Codes["AudioVolumeDown"] = "AudioVolumeDown";
190
+ Codes["AudioVolumeUp"] = "AudioVolumeUp";
191
+ Codes["KeyA"] = "KeyA";
192
+ Codes["KeyB"] = "KeyB";
193
+ Codes["KeyC"] = "KeyC";
194
+ Codes["KeyD"] = "KeyD";
195
+ Codes["KeyE"] = "KeyE";
196
+ Codes["KeyF"] = "KeyF";
197
+ Codes["KeyG"] = "KeyG";
198
+ Codes["KeyH"] = "KeyH";
199
+ Codes["KeyI"] = "KeyI";
200
+ Codes["KeyJ"] = "KeyJ";
201
+ Codes["KeyK"] = "KeyK";
202
+ Codes["KeyL"] = "KeyL";
203
+ Codes["KeyM"] = "KeyM";
204
+ Codes["KeyN"] = "KeyN";
205
+ Codes["KeyO"] = "KeyO";
206
+ Codes["KeyP"] = "KeyP";
207
+ Codes["KeyQ"] = "KeyQ";
208
+ Codes["KeyR"] = "KeyR";
209
+ Codes["KeyS"] = "KeyS";
210
+ Codes["KeyT"] = "KeyT";
211
+ Codes["KeyU"] = "KeyU";
212
+ Codes["KeyV"] = "KeyV";
213
+ Codes["KeyW"] = "KeyW";
214
+ Codes["KeyX"] = "KeyX";
215
+ Codes["KeyY"] = "KeyY";
216
+ Codes["KeyZ"] = "KeyZ";
217
+ Codes["MetaLeft"] = "MetaLeft";
218
+ Codes["MetaRight"] = "MetaRight";
219
+ Codes["ContextMenu"] = "ContextMenu";
220
+ Codes["Numpad0"] = "Numpad0";
221
+ Codes["Numpad1"] = "Numpad1";
222
+ Codes["Numpad2"] = "Numpad2";
223
+ Codes["Numpad3"] = "Numpad3";
224
+ Codes["Numpad4"] = "Numpad4";
225
+ Codes["Numpad5"] = "Numpad5";
226
+ Codes["Numpad6"] = "Numpad6";
227
+ Codes["Numpad7"] = "Numpad7";
228
+ Codes["Numpad8"] = "Numpad8";
229
+ Codes["Numpad9"] = "Numpad9";
230
+ Codes["NumpadMultiply"] = "NumpadMultiply";
231
+ Codes["NumpadAdd"] = "NumpadAdd";
232
+ Codes["NumpadSubtract"] = "NumpadSubtract";
233
+ Codes["NumpadDecimal"] = "NumpadDecimal";
234
+ Codes["NumpadDivide"] = "NumpadDivide";
235
+ Codes["F1"] = "F1";
236
+ Codes["F2"] = "F2";
237
+ Codes["F3"] = "F3";
238
+ Codes["F4"] = "F4";
239
+ Codes["F5"] = "F5";
240
+ Codes["F6"] = "F6";
241
+ Codes["F7"] = "F7";
242
+ Codes["F8"] = "F8";
243
+ Codes["F9"] = "F9";
244
+ Codes["F10"] = "F10";
245
+ Codes["F11"] = "F11";
246
+ Codes["F12"] = "F12";
247
+ Codes["NumLock"] = "NumLock";
248
+ Codes["ScrollLock"] = "ScrollLock";
249
+ Codes["Semicolon"] = "Semicolon";
250
+ Codes["Equal"] = "Equal";
251
+ Codes["Comma"] = "Comma";
252
+ Codes["Minus"] = "Minus";
253
+ Codes["Period"] = "Period";
254
+ Codes["Slash"] = "Slash";
255
+ Codes["Backquote"] = "Backquote";
256
+ Codes["BracketLeft"] = "BracketLeft";
257
+ Codes["Backslash"] = "Backslash";
258
+ Codes["BracketRight"] = "BracketRight";
259
+ Codes["Quote"] = "Quote";
260
+ })(Codes = Keyboard.Codes || (Keyboard.Codes = {}));
261
+ /**
262
+ * Is typing content or press command key
263
+ * @param input Input key
264
+ * @returns Result
265
+ */
266
+ function isTypingContent(input) {
267
+ return input.length === 1;
268
+ }
269
+ Keyboard.isTypingContent = isTypingContent;
270
+ })(Keyboard = exports.Keyboard || (exports.Keyboard = {}));
@@ -75,7 +75,7 @@ export declare namespace Utils {
75
75
  * @param args Arguments
76
76
  * @returns Result
77
77
  */
78
- const getResult: <R extends DataTypes.Simple, F extends (...args: any[]) => R>(input: R | F, ...args: Parameters<F>) => R;
78
+ const getResult: <R, T = R | DataTypes.Func<R>>(input: T, ...args: T extends DataTypes.Func<R> ? Parameters<T> : never) => T extends DataTypes.Func<R> ? ReturnType<T> : T;
79
79
  /**
80
80
  * Get time zone
81
81
  * @returns Timezone
@@ -5,6 +5,7 @@ export * from './DataTypes';
5
5
  export * from './DateUtils';
6
6
  export * from './DomUtils';
7
7
  export * from './ExtendUtils';
8
+ export * from './Keyboard';
8
9
  export * from './NumberUtils';
9
10
  export * from './StorageUtils';
10
11
  export * from './Utils';
package/lib/cjs/index.js CHANGED
@@ -17,6 +17,7 @@ __exportStar(require("./DataTypes"), exports);
17
17
  __exportStar(require("./DateUtils"), exports);
18
18
  __exportStar(require("./DomUtils"), exports);
19
19
  __exportStar(require("./ExtendUtils"), exports);
20
+ __exportStar(require("./Keyboard"), exports);
20
21
  __exportStar(require("./NumberUtils"), exports);
21
22
  __exportStar(require("./StorageUtils"), exports);
22
23
  __exportStar(require("./Utils"), exports);
@@ -128,6 +128,10 @@ export declare namespace DataTypes {
128
128
  * Enum base type
129
129
  */
130
130
  type EnumBase = Record<string, EnumValue>;
131
+ /**
132
+ * Function type
133
+ */
134
+ type Func<R> = (...args: any[]) => R;
131
135
  /**
132
136
  * String key, unknown value Record
133
137
  */
@@ -251,7 +255,7 @@ export declare namespace DataTypes {
251
255
  * @param input Input Enum
252
256
  * @returns Keys
253
257
  */
254
- function getEnumKeys<T extends EnumBase, K extends keyof T>(input: T): K[];
258
+ function getEnumKeys<T extends EnumBase, K extends keyof T & string>(input: T): K[];
255
259
  /**
256
260
  * Get object id field value
257
261
  * @param data Data