d2coreui 21.0.33 → 23.0.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.
Files changed (295) hide show
  1. package/components/clipboard/clipboardUtils.d.ts +4 -3
  2. package/components/clipboard/clipboardUtils.js +47 -22
  3. package/components/clipboard/clipboardUtils.js.map +1 -1
  4. package/components/codemirror/SyntaxHighlighter.d.ts +21 -21
  5. package/components/codemirror/SyntaxHighlighter.js +45 -44
  6. package/components/codemirror/SyntaxHighlighter.js.map +1 -1
  7. package/components/collapse/expandable.d.ts +13 -12
  8. package/components/collapse/expandable.js +20 -20
  9. package/components/collapse/expandable.js.map +1 -1
  10. package/components/color/colorPicker.d.ts +20 -20
  11. package/components/color/colorPicker.js +53 -53
  12. package/components/color/colorPicker.js.map +1 -1
  13. package/components/color/colorSwatch.d.ts +13 -12
  14. package/components/color/colorSwatch.js +62 -62
  15. package/components/color/colorSwatch.js.map +1 -1
  16. package/components/color/colorUtils.d.ts +7 -7
  17. package/components/color/colorUtils.js +43 -43
  18. package/components/color/colorUtils.js.map +1 -1
  19. package/components/date/dateRangeInput.d.ts +66 -64
  20. package/components/date/dateRangeInput.js +292 -297
  21. package/components/date/dateRangeInput.js.map +1 -1
  22. package/components/date/dateRangeInputAdvancedPanel.d.ts +27 -26
  23. package/components/date/dateRangeInputAdvancedPanel.js +130 -115
  24. package/components/date/dateRangeInputAdvancedPanel.js.map +1 -1
  25. package/components/date/dateRangeInputConfirm.d.ts +31 -29
  26. package/components/date/dateRangeInputConfirm.js +132 -121
  27. package/components/date/dateRangeInputConfirm.js.map +1 -1
  28. package/components/date/dateTimeInput.d.ts +72 -69
  29. package/components/date/dateTimeInput.js +440 -412
  30. package/components/date/dateTimeInput.js.map +1 -1
  31. package/components/date/durationInput.d.ts +59 -56
  32. package/components/date/durationInput.js +269 -280
  33. package/components/date/durationInput.js.map +1 -1
  34. package/components/form/NiceFormItem.d.ts +14 -14
  35. package/components/form/NiceFormItem.js +28 -31
  36. package/components/form/NiceFormItem.js.map +1 -1
  37. package/components/grid/cell/beanAccessor.d.ts +9 -0
  38. package/components/grid/cell/beanAccessor.js +13 -0
  39. package/components/grid/cell/beanAccessor.js.map +1 -0
  40. package/components/grid/cell/cellEditorUtils.d.ts +4 -4
  41. package/components/grid/cell/cellEditorUtils.js +8 -8
  42. package/components/grid/cell/customEnumCellEditor.d.ts +4 -26
  43. package/components/grid/cell/customEnumCellEditor.js +82 -91
  44. package/components/grid/cell/customEnumCellEditor.js.map +1 -1
  45. package/components/grid/cell/dataGridCellEditorComponent.d.ts +14 -0
  46. package/components/grid/cell/dataGridCellEditorComponent.js +49 -0
  47. package/components/grid/cell/dataGridCellEditorComponent.js.map +1 -0
  48. package/components/grid/cell/dateCellEditor.d.ts +4 -25
  49. package/components/grid/cell/dateCellEditor.js +53 -72
  50. package/components/grid/cell/dateCellEditor.js.map +1 -1
  51. package/components/grid/cell/durationCellEditor.d.ts +4 -24
  52. package/components/grid/cell/durationCellEditor.js +74 -97
  53. package/components/grid/cell/durationCellEditor.js.map +1 -1
  54. package/components/grid/cell/hexaOctetStringCellEditor.d.ts +4 -24
  55. package/components/grid/cell/hexaOctetStringCellEditor.js +70 -94
  56. package/components/grid/cell/hexaOctetStringCellEditor.js.map +1 -1
  57. package/components/grid/cell/hexaValueCellEditor.d.ts +4 -24
  58. package/components/grid/cell/hexaValueCellEditor.js +65 -89
  59. package/components/grid/cell/hexaValueCellEditor.js.map +1 -1
  60. package/components/grid/cell/numberCellEditor.d.ts +4 -27
  61. package/components/grid/cell/numberCellEditor.js +73 -95
  62. package/components/grid/cell/numberCellEditor.js.map +1 -1
  63. package/components/grid/cell/rangeSelector.d.ts +78 -78
  64. package/components/grid/cell/rangeSelector.js +526 -518
  65. package/components/grid/cell/rangeSelector.js.map +1 -1
  66. package/components/grid/cell/simpleStatusTextCellEditor.d.ts +4 -32
  67. package/components/grid/cell/simpleStatusTextCellEditor.js +106 -116
  68. package/components/grid/cell/simpleStatusTextCellEditor.js.map +1 -1
  69. package/components/grid/cell/statusTextCellEditor.d.ts +4 -32
  70. package/components/grid/cell/statusTextCellEditor.js +136 -159
  71. package/components/grid/cell/statusTextCellEditor.js.map +1 -1
  72. package/components/grid/cell/tableDefaultRowStyleRules.d.ts +20 -20
  73. package/components/grid/cell/tableDefaultRowStyleRules.js +29 -18
  74. package/components/grid/cell/tableDefaultRowStyleRules.js.map +1 -1
  75. package/components/grid/cell/textCellEditor.d.ts +4 -21
  76. package/components/grid/cell/textCellEditor.js +63 -85
  77. package/components/grid/cell/textCellEditor.js.map +1 -1
  78. package/components/grid/cell/withAgGridHooks.d.ts +3 -0
  79. package/components/grid/cell/withAgGridHooks.js +15 -0
  80. package/components/grid/cell/withAgGridHooks.js.map +1 -0
  81. package/components/grid/columnUtils.d.ts +5 -5
  82. package/components/grid/columnUtils.js +26 -26
  83. package/components/grid/columnUtils.js.map +1 -1
  84. package/components/grid/config/columnTransfer.d.ts +21 -22
  85. package/components/grid/config/columnTransfer.js +205 -201
  86. package/components/grid/config/columnTransfer.js.map +1 -1
  87. package/components/grid/config/dataGridEditor.d.ts +41 -41
  88. package/components/grid/config/dataGridEditor.js +181 -160
  89. package/components/grid/config/dataGridEditor.js.map +1 -1
  90. package/components/grid/config/rowHeightCalculator.d.ts +8 -0
  91. package/components/grid/config/rowHeightCalculator.js +20 -0
  92. package/components/grid/config/rowHeightCalculator.js.map +1 -0
  93. package/components/grid/config/rowStylePicker.d.ts +27 -25
  94. package/components/grid/config/rowStylePicker.js +127 -109
  95. package/components/grid/config/rowStylePicker.js.map +1 -1
  96. package/components/grid/dataGrid.d.ts +218 -206
  97. package/components/grid/dataGrid.js +1629 -1538
  98. package/components/grid/dataGrid.js.map +1 -1
  99. package/components/grid/detail/detailHeaderPanel.d.ts +13 -13
  100. package/components/grid/detail/detailHeaderPanel.js +25 -25
  101. package/components/grid/detail/detailHeaderPanel.js.map +1 -1
  102. package/components/grid/export/contextMenu.d.ts +18 -24
  103. package/components/grid/export/contextMenu.js +116 -113
  104. package/components/grid/export/contextMenu.js.map +1 -1
  105. package/components/grid/export/progressPopup.d.ts +29 -29
  106. package/components/grid/export/progressPopup.js +93 -93
  107. package/components/grid/export/progressPopup.js.map +1 -1
  108. package/components/grid/export/worker/clipboardExport.d.ts +1 -1
  109. package/components/grid/export/worker/clipboardExport.js +8 -8
  110. package/components/grid/export/worker/csvExport.d.ts +1 -1
  111. package/components/grid/export/worker/csvExport.js +8 -8
  112. package/components/grid/export/worker/pdfExport.d.ts +1 -1
  113. package/components/grid/export/worker/pdfExport.js +81 -81
  114. package/components/grid/export/worker/pdfExport.js.map +1 -1
  115. package/components/grid/export/worker/txtExport.d.ts +1 -1
  116. package/components/grid/export/worker/txtExport.js +19 -19
  117. package/components/grid/extendedDataGrid.d.ts +140 -140
  118. package/components/grid/extendedDataGrid.js +704 -695
  119. package/components/grid/extendedDataGrid.js.map +1 -1
  120. package/components/grid/filter/customColumnFilter.d.ts +5 -21
  121. package/components/grid/filter/customColumnFilter.js +11 -82
  122. package/components/grid/filter/customColumnFilter.js.map +1 -1
  123. package/components/grid/filter/dataGridColumnFilter.d.ts +17 -0
  124. package/components/grid/filter/dataGridColumnFilter.js +49 -0
  125. package/components/grid/filter/dataGridColumnFilter.js.map +1 -0
  126. package/components/grid/filter/dateColumnFilter.d.ts +7 -11
  127. package/components/grid/filter/dateColumnFilter.js +22 -56
  128. package/components/grid/filter/dateColumnFilter.js.map +1 -1
  129. package/components/grid/filter/textColumnFilter.d.ts +8 -20
  130. package/components/grid/filter/textColumnFilter.js +24 -76
  131. package/components/grid/filter/textColumnFilter.js.map +1 -1
  132. package/components/grid/filter/wildcardQuickFilterEngine.d.ts +7 -0
  133. package/components/grid/filter/wildcardQuickFilterEngine.js +48 -0
  134. package/components/grid/filter/wildcardQuickFilterEngine.js.map +1 -0
  135. package/components/grid/header/simpleHeader.d.ts +17 -16
  136. package/components/grid/header/simpleHeader.js +230 -186
  137. package/components/grid/header/simpleHeader.js.map +1 -1
  138. package/components/grid/panel/dataGridPagination.d.ts +16 -16
  139. package/components/grid/panel/dataGridPagination.js +58 -58
  140. package/components/grid/panel/dataGridPagination.js.map +1 -1
  141. package/components/grid/panel/loadingOverlay.d.ts +6 -6
  142. package/components/grid/panel/loadingOverlay.js +10 -10
  143. package/components/grid/panel/loadingOverlay.js.map +1 -1
  144. package/components/grid/panel/noRecordsOverlay.d.ts +6 -6
  145. package/components/grid/panel/noRecordsOverlay.js +10 -10
  146. package/components/grid/panel/noRecordsOverlay.js.map +1 -1
  147. package/components/grid/panel/tablePagination.d.ts +10 -10
  148. package/components/grid/panel/tablePagination.js +45 -45
  149. package/components/grid/panel/tablePagination.js.map +1 -1
  150. package/components/icons/dropdownArrow.d.ts +8 -0
  151. package/components/icons/dropdownArrow.js +59 -0
  152. package/components/icons/dropdownArrow.js.map +1 -0
  153. package/components/icons/undoIcon.d.ts +8 -8
  154. package/components/icons/undoIcon.js +6 -6
  155. package/components/input/autoCompleteInput.d.ts +35 -35
  156. package/components/input/autoCompleteInput.js +122 -121
  157. package/components/input/autoCompleteInput.js.map +1 -1
  158. package/components/input/draftUtils.d.ts +4 -4
  159. package/components/input/draftUtils.js +48 -48
  160. package/components/input/draftUtils.js.map +1 -1
  161. package/components/input/draftail.d.ts +1 -1
  162. package/components/input/draftail.js +1 -1
  163. package/components/input/hexaFormattedInput.d.ts +16 -16
  164. package/components/input/hexaFormattedInput.js +54 -54
  165. package/components/input/hexaFormattedInput.js.map +1 -1
  166. package/components/input/mask/helpers.d.ts +28 -28
  167. package/components/input/mask/helpers.js +112 -112
  168. package/components/input/mask/helpers.js.map +1 -1
  169. package/components/input/mask/inputMaskCore.d.ts +46 -46
  170. package/components/input/mask/inputMaskCore.js +278 -278
  171. package/components/input/mask/inputMaskCore.js.map +1 -1
  172. package/components/input/mask/pattern.d.ts +20 -20
  173. package/components/input/mask/pattern.js +78 -78
  174. package/components/input/mask/pattern.js.map +1 -1
  175. package/components/input/maskedInput.d.ts +373 -351
  176. package/components/input/maskedInput.js +224 -224
  177. package/components/input/maskedInput.js.map +1 -1
  178. package/components/input/passwordInput.d.ts +9 -9
  179. package/components/input/passwordInput.js +55 -55
  180. package/components/input/passwordInput.js.map +1 -1
  181. package/components/input/simpleAutoComplete.d.ts +12 -12
  182. package/components/input/simpleAutoComplete.js +41 -43
  183. package/components/input/simpleAutoComplete.js.map +1 -1
  184. package/components/input/textarea/extractSpansOfClasses.d.ts +15 -15
  185. package/components/input/textarea/extractSpansOfClasses.js +96 -96
  186. package/components/input/textarea/extractSpansOfClasses.js.map +1 -1
  187. package/components/input/textarea/getRanges.d.ts +1 -1
  188. package/components/input/textarea/getRanges.js +73 -73
  189. package/components/input/textarea/getRanges.js.map +1 -1
  190. package/components/input/textarea/getType.d.ts +1 -1
  191. package/components/input/textarea/getType.js +26 -26
  192. package/components/input/textarea/getType.js.map +1 -1
  193. package/components/input/textarea/highlighedContents.d.ts +6 -6
  194. package/components/input/textarea/highlighedContents.js +10 -10
  195. package/components/input/textarea/mentionsWithHighlighting.d.ts +27 -27
  196. package/components/input/textarea/mentionsWithHighlighting.js +60 -60
  197. package/components/input/textarea/mentionsWithHighlighting.js.map +1 -1
  198. package/components/keyboard/keyboardUtils.d.ts +5 -5
  199. package/components/keyboard/keyboardUtils.js +32 -32
  200. package/components/modal/draggableModalProvider.d.ts +4 -4
  201. package/components/modal/draggableModalProvider.js +21 -21
  202. package/components/modal/draggableModalProvider.js.map +1 -1
  203. package/components/modal/impl/clamp.d.ts +1 -1
  204. package/components/modal/impl/clamp.js +1 -1
  205. package/components/modal/impl/clamp.js.map +1 -1
  206. package/components/modal/impl/draggableModal.d.ts +12 -12
  207. package/components/modal/impl/draggableModal.js +17 -17
  208. package/components/modal/impl/draggableModal.js.map +1 -1
  209. package/components/modal/impl/draggableModalContext.d.ts +9 -9
  210. package/components/modal/impl/draggableModalContext.js +2 -2
  211. package/components/modal/impl/draggableModalContext.js.map +1 -1
  212. package/components/modal/impl/draggableModalInner.d.ts +15 -13
  213. package/components/modal/impl/draggableModalInner.js +57 -55
  214. package/components/modal/impl/draggableModalInner.js.map +1 -1
  215. package/components/modal/impl/draggableModalReducer.d.ts +66 -62
  216. package/components/modal/impl/draggableModalReducer.js +77 -78
  217. package/components/modal/impl/draggableModalReducer.js.map +1 -1
  218. package/components/modal/impl/getWindowSize.d.ts +4 -4
  219. package/components/modal/impl/getWindowSize.js +4 -4
  220. package/components/modal/impl/getWindowSize.js.map +1 -1
  221. package/components/modal/impl/index.d.ts +3 -3
  222. package/components/modal/impl/index.js +3 -3
  223. package/components/modal/impl/index.js.map +1 -1
  224. package/components/modal/impl/resizeHandle.d.ts +3 -3
  225. package/components/modal/impl/resizeHandle.js +4 -4
  226. package/components/modal/impl/resizeHandle.js.map +1 -1
  227. package/components/modal/impl/useDrag.d.ts +5 -5
  228. package/components/modal/impl/useDrag.js +42 -42
  229. package/components/modal/impl/useDrag.js.map +1 -1
  230. package/components/modal/impl/usePrevious.d.ts +1 -1
  231. package/components/modal/impl/usePrevious.js +8 -8
  232. package/components/modal/impl/usePrevious.js.map +1 -1
  233. package/components/modal/impl/useResize.d.ts +7 -7
  234. package/components/modal/impl/useResize.js +46 -46
  235. package/components/modal/impl/useResize.js.map +1 -1
  236. package/components/modal/modalDialog.d.ts +49 -49
  237. package/components/modal/modalDialog.js +152 -152
  238. package/components/modal/modalDialog.js.map +1 -1
  239. package/components/picker/enumValuePicker.d.ts +16 -16
  240. package/components/picker/enumValuePicker.js +34 -34
  241. package/components/picker/enumValuePicker.js.map +1 -1
  242. package/components/platformSpecific.d.ts +10 -10
  243. package/components/platformSpecific.js +27 -27
  244. package/components/scrollTo/onlyText.d.ts +4 -4
  245. package/components/scrollTo/onlyText.js +30 -30
  246. package/components/scrollTo/onlyText.js.map +1 -1
  247. package/components/scrollTo/scrollTo.d.ts +41 -39
  248. package/components/scrollTo/scrollTo.js +264 -264
  249. package/components/scrollTo/scrollTo.js.map +1 -1
  250. package/components/style/withCss.d.ts +9 -0
  251. package/components/style/withCss.js +6 -0
  252. package/components/style/withCss.js.map +1 -0
  253. package/components/style/withInputNumberCss.d.ts +6 -0
  254. package/components/style/withInputNumberCss.js +13 -0
  255. package/components/style/withInputNumberCss.js.map +1 -0
  256. package/components/table/dragSortingTable.d.ts +13 -14
  257. package/components/table/dragSortingTable.js +96 -82
  258. package/components/table/dragSortingTable.js.map +1 -1
  259. package/components/text/impl/innerSize.d.ts +2 -2
  260. package/components/text/impl/innerSize.js +12 -12
  261. package/components/text/impl/series.d.ts +1 -1
  262. package/components/text/impl/series.js +28 -28
  263. package/components/text/impl/shallowEqual.d.ts +1 -1
  264. package/components/text/impl/shallowEqual.js +18 -18
  265. package/components/text/impl/shallowEqual.js.map +1 -1
  266. package/components/text/impl/uniqueId.d.ts +1 -1
  267. package/components/text/impl/uniqueId.js +4 -4
  268. package/components/text/impl/whilst.d.ts +1 -1
  269. package/components/text/impl/whilst.js +19 -19
  270. package/components/text/impl/whilst.js.map +1 -1
  271. package/components/text/textFit.d.ts +38 -38
  272. package/components/text/textFit.js +165 -168
  273. package/components/text/textFit.js.map +1 -1
  274. package/i18n/components.cs.json +101 -100
  275. package/i18n/components.sk.json +101 -100
  276. package/i18n/components.uk.json +101 -100
  277. package/i18n/componentsLocaleHolder.d.ts +3 -3
  278. package/i18n/componentsLocaleHolder.js +28 -28
  279. package/i18n/componentsLocaleHolder.js.map +1 -1
  280. package/package.json +71 -70
  281. package/style/index.less +274 -298
  282. package/style/modal/DraggableModal.css +43 -40
  283. package/style/modal/ResizeHandle.css +27 -19
  284. package/tsconfig.build.json +24 -24
  285. package/tsconfig.json +11 -11
  286. package/components/grid/cell/wildcardQuickFilter.d.ts +0 -11
  287. package/components/grid/cell/wildcardQuickFilter.js +0 -61
  288. package/components/grid/cell/wildcardQuickFilter.js.map +0 -1
  289. package/components/table/dataTable.d.ts +0 -17
  290. package/components/table/dataTable.js +0 -79
  291. package/components/table/dataTable.js.map +0 -1
  292. package/style/antd/antd-tree-showline.css +0 -25
  293. package/style/antd/full-height-tabs.scss +0 -63
  294. package/style/draftail/draftail-editor.css +0 -179
  295. package/style/table/dragSortingTable.css +0 -7
@@ -1,28 +1,28 @@
1
- import { KeyboardEvent } from 'react';
2
- export declare function isUndo(e: KeyboardEvent): boolean;
3
- export declare function isRedo(e: KeyboardEvent): boolean;
4
- declare type GetSelectionResult = {
5
- start: number;
6
- end: number;
7
- };
8
- export declare function getSelection(el: HTMLInputElement): GetSelectionResult;
9
- export declare function setSelection(el: HTMLInputElement, selection: GetSelectionResult): void;
10
- export declare function mergeFormatCharacters(formatCharacters: FormatCharacters): {
11
- [x: string]: {
12
- transform?(str: string): string;
13
- validate(str: string): boolean;
14
- };
15
- };
16
- export declare const ESCAPE_CHAR = "\\";
17
- export declare const DIGIT_RE: RegExp;
18
- export declare const LETTER_RE: RegExp;
19
- export declare const ALPHANNUMERIC_RE: RegExp;
20
- export declare const DEFAULT_PLACEHOLDER_CHAR = "_";
21
- export declare const DEFAULT_FORMAT_CHARACTERS: FormatCharacters;
22
- export declare type FormatCharacters = {
23
- [key: string]: {
24
- transform?(str: string): string;
25
- validate(str: string): boolean;
26
- };
27
- };
28
- export {};
1
+ import { KeyboardEvent } from 'react';
2
+ export declare function isUndo(e: KeyboardEvent): boolean;
3
+ export declare function isRedo(e: KeyboardEvent): boolean;
4
+ type GetSelectionResult = {
5
+ start: number;
6
+ end: number;
7
+ };
8
+ export declare function getSelection(el: HTMLInputElement): GetSelectionResult;
9
+ export declare function setSelection(el: HTMLInputElement, selection: GetSelectionResult): void;
10
+ export declare function mergeFormatCharacters(formatCharacters: FormatCharacters): {
11
+ [x: string]: {
12
+ transform?(str: string): string;
13
+ validate(str: string): boolean;
14
+ };
15
+ };
16
+ export declare const ESCAPE_CHAR = "\\";
17
+ export declare const DIGIT_RE: RegExp;
18
+ export declare const LETTER_RE: RegExp;
19
+ export declare const ALPHANNUMERIC_RE: RegExp;
20
+ export declare const DEFAULT_PLACEHOLDER_CHAR = "_";
21
+ export declare const DEFAULT_FORMAT_CHARACTERS: FormatCharacters;
22
+ export type FormatCharacters = {
23
+ [key: string]: {
24
+ transform?(str: string): string;
25
+ validate(str: string): boolean;
26
+ };
27
+ };
28
+ export {};
@@ -1,113 +1,113 @@
1
- let KEYCODE_Z = 90;
2
- let KEYCODE_Y = 89;
3
- export function isUndo(e) {
4
- return ((e.ctrlKey || e.metaKey) &&
5
- e.keyCode === (e.shiftKey ? KEYCODE_Y : KEYCODE_Z));
6
- }
7
- export function isRedo(e) {
8
- return ((e.ctrlKey || e.metaKey) &&
9
- e.keyCode === (e.shiftKey ? KEYCODE_Z : KEYCODE_Y));
10
- }
11
- export function getSelection(el) {
12
- let start, end;
13
- if (el.selectionStart !== undefined) {
14
- start = el.selectionStart;
15
- end = el.selectionEnd;
16
- }
17
- else {
18
- try {
19
- el.focus();
20
- let rangeEl = el.createTextRange();
21
- let clone = rangeEl.duplicate();
22
- rangeEl.moveToBookmark(document.selection.createRange().getBookmark());
23
- clone.setEndPoint('EndToStart', rangeEl);
24
- start = clone.text.length;
25
- end = start + rangeEl.text.length;
26
- }
27
- catch (e) {
28
- }
29
- }
30
- return { start, end };
31
- }
32
- let selectionTimeout;
33
- export function setSelection(el, selection) {
34
- clearTimeout(selectionTimeout);
35
- try {
36
- if (el.selectionStart === selection.start &&
37
- el.selectionEnd === selection.end) {
38
- return;
39
- }
40
- if (el.selectionStart !== undefined) {
41
- el.focus();
42
- el.setSelectionRange(selection.start, selection.end);
43
- selectionTimeout = setTimeout(() => {
44
- setSelection(el, selection);
45
- }, 0);
46
- }
47
- else {
48
- el.focus();
49
- let rangeEl = el.createTextRange();
50
- rangeEl.collapse(true);
51
- rangeEl.moveStart('character', selection.start);
52
- rangeEl.moveEnd('character', selection.end - selection.start);
53
- rangeEl.select();
54
- }
55
- }
56
- catch (e) {
57
- }
58
- }
59
- export function mergeFormatCharacters(formatCharacters) {
60
- var merged = Object.assign({}, DEFAULT_FORMAT_CHARACTERS);
61
- if (formatCharacters) {
62
- var chars = Object.keys(formatCharacters);
63
- for (var i = 0, l = chars.length; i < l; i++) {
64
- var char = chars[i];
65
- if (formatCharacters[char] == null) {
66
- delete merged[char];
67
- }
68
- else {
69
- merged[char] = formatCharacters[char];
70
- }
71
- }
72
- }
73
- return merged;
74
- }
75
- export const ESCAPE_CHAR = '\\';
76
- export const DIGIT_RE = /^\d$/;
77
- export const LETTER_RE = /^[A-Za-z]$/;
78
- export const ALPHANNUMERIC_RE = /^[\dA-Za-z]$/;
79
- export const DEFAULT_PLACEHOLDER_CHAR = '_';
80
- export const DEFAULT_FORMAT_CHARACTERS = {
81
- '*': {
82
- validate: function (char) {
83
- return ALPHANNUMERIC_RE.test(char);
84
- }
85
- },
86
- '1': {
87
- validate: function (char) {
88
- return DIGIT_RE.test(char);
89
- }
90
- },
91
- a: {
92
- validate: function (char) {
93
- return LETTER_RE.test(char);
94
- }
95
- },
96
- A: {
97
- validate: function (char) {
98
- return LETTER_RE.test(char);
99
- },
100
- transform: function (char) {
101
- return char.toUpperCase();
102
- }
103
- },
104
- '#': {
105
- validate: function (char) {
106
- return ALPHANNUMERIC_RE.test(char);
107
- },
108
- transform: function (char) {
109
- return char.toUpperCase();
110
- }
111
- }
112
- };
1
+ let KEYCODE_Z = "KeyZ";
2
+ let KEYCODE_Y = "KeyY";
3
+ export function isUndo(e) {
4
+ return ((e.ctrlKey || e.metaKey) &&
5
+ e.code === (e.shiftKey ? KEYCODE_Y : KEYCODE_Z));
6
+ }
7
+ export function isRedo(e) {
8
+ return ((e.ctrlKey || e.metaKey) &&
9
+ e.code === (e.shiftKey ? KEYCODE_Z : KEYCODE_Y));
10
+ }
11
+ export function getSelection(el) {
12
+ let start, end;
13
+ if (el.selectionStart !== undefined) {
14
+ start = el.selectionStart;
15
+ end = el.selectionEnd;
16
+ }
17
+ else {
18
+ try {
19
+ el.focus();
20
+ let rangeEl = el.createTextRange();
21
+ let clone = rangeEl.duplicate();
22
+ rangeEl.moveToBookmark(document.selection.createRange().getBookmark());
23
+ clone.setEndPoint('EndToStart', rangeEl);
24
+ start = clone.text.length;
25
+ end = start + rangeEl.text.length;
26
+ }
27
+ catch (e) {
28
+ }
29
+ }
30
+ return { start, end };
31
+ }
32
+ let selectionTimeout;
33
+ export function setSelection(el, selection) {
34
+ clearTimeout(selectionTimeout);
35
+ try {
36
+ if (el.selectionStart === selection.start &&
37
+ el.selectionEnd === selection.end) {
38
+ return;
39
+ }
40
+ if (el.selectionStart !== undefined) {
41
+ el.focus();
42
+ el.setSelectionRange(selection.start, selection.end);
43
+ selectionTimeout = setTimeout(() => {
44
+ setSelection(el, selection);
45
+ }, 0);
46
+ }
47
+ else {
48
+ el.focus();
49
+ let rangeEl = el.createTextRange();
50
+ rangeEl.collapse(true);
51
+ rangeEl.moveStart('character', selection.start);
52
+ rangeEl.moveEnd('character', selection.end - selection.start);
53
+ rangeEl.select();
54
+ }
55
+ }
56
+ catch (e) {
57
+ }
58
+ }
59
+ export function mergeFormatCharacters(formatCharacters) {
60
+ var merged = Object.assign({}, DEFAULT_FORMAT_CHARACTERS);
61
+ if (formatCharacters) {
62
+ var chars = Object.keys(formatCharacters);
63
+ for (var i = 0, l = chars.length; i < l; i++) {
64
+ var char = chars[i];
65
+ if (formatCharacters[char] == null) {
66
+ delete merged[char];
67
+ }
68
+ else {
69
+ merged[char] = formatCharacters[char];
70
+ }
71
+ }
72
+ }
73
+ return merged;
74
+ }
75
+ export const ESCAPE_CHAR = '\\';
76
+ export const DIGIT_RE = /^\d$/;
77
+ export const LETTER_RE = /^[A-Za-z]$/;
78
+ export const ALPHANNUMERIC_RE = /^[\dA-Za-z]$/;
79
+ export const DEFAULT_PLACEHOLDER_CHAR = '_';
80
+ export const DEFAULT_FORMAT_CHARACTERS = {
81
+ '*': {
82
+ validate: function (char) {
83
+ return ALPHANNUMERIC_RE.test(char);
84
+ }
85
+ },
86
+ '1': {
87
+ validate: function (char) {
88
+ return DIGIT_RE.test(char);
89
+ }
90
+ },
91
+ a: {
92
+ validate: function (char) {
93
+ return LETTER_RE.test(char);
94
+ }
95
+ },
96
+ A: {
97
+ validate: function (char) {
98
+ return LETTER_RE.test(char);
99
+ },
100
+ transform: function (char) {
101
+ return char.toUpperCase();
102
+ }
103
+ },
104
+ '#': {
105
+ validate: function (char) {
106
+ return ALPHANNUMERIC_RE.test(char);
107
+ },
108
+ transform: function (char) {
109
+ return char.toUpperCase();
110
+ }
111
+ }
112
+ };
113
113
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../components/input/mask/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import {KeyboardEvent} from 'react';\n\nlet KEYCODE_Z = 90;\nlet KEYCODE_Y = 89;\n\nexport function isUndo(e: KeyboardEvent): boolean {\n return (\n (e.ctrlKey || e.metaKey) &&\n e.keyCode === (e.shiftKey ? KEYCODE_Y : KEYCODE_Z)\n );\n}\n\nexport function isRedo(e: KeyboardEvent): boolean {\n return (\n (e.ctrlKey || e.metaKey) &&\n e.keyCode === (e.shiftKey ? KEYCODE_Z : KEYCODE_Y)\n );\n}\n\ntype GetSelectionResult = { start: number; end: number };\n\nexport function getSelection(el: HTMLInputElement): GetSelectionResult {\n let start, end;\n if (el.selectionStart !== undefined) {\n start = el.selectionStart;\n end = el.selectionEnd;\n } else {\n try {\n el.focus();\n // @ts-ignore (IE only)\n let rangeEl = el.createTextRange();\n let clone = rangeEl.duplicate();\n\n // @ts-ignore (IE only)\n rangeEl.moveToBookmark(document.selection.createRange().getBookmark());\n clone.setEndPoint('EndToStart', rangeEl);\n\n start = clone.text.length;\n end = start + rangeEl.text.length;\n } catch (e) {\n /* not focused or not visible */\n }\n }\n\n return { start, end };\n}\n\nlet selectionTimeout: any;\nexport function setSelection(\n el: HTMLInputElement,\n selection: GetSelectionResult\n) {\n clearTimeout(selectionTimeout);\n\n try {\n if (\n el.selectionStart === selection.start &&\n el.selectionEnd === selection.end\n ) {\n return;\n }\n\n if (el.selectionStart !== undefined) {\n el.focus();\n el.setSelectionRange(selection.start, selection.end);\n\n // fix https://bugs.chromium.org/p/chromium/issues/detail?id=32865\n selectionTimeout = setTimeout(() => {\n setSelection(el, selection);\n }, 0);\n\n } else {\n el.focus();\n // @ts-ignore (IE only)\n let rangeEl = el.createTextRange();\n rangeEl.collapse(true);\n rangeEl.moveStart('character', selection.start);\n rangeEl.moveEnd('character', selection.end - selection.start);\n rangeEl.select();\n }\n } catch (e) {\n /* not focused or not visible */\n }\n}\n\n/**\n * Merge an object defining format characters into the defaults.\n * Passing null/undefined for en existing format character removes it.\n * Passing a definition for an existing format character overrides it.\n */\nexport function mergeFormatCharacters(formatCharacters: FormatCharacters) {\n var merged = { ...DEFAULT_FORMAT_CHARACTERS };\n if (formatCharacters) {\n var chars = Object.keys(formatCharacters);\n for (var i = 0, l = chars.length; i < l; i++) {\n var char = chars[i];\n if (formatCharacters[char] == null) {\n delete merged[char];\n } else {\n merged[char] = formatCharacters[char];\n }\n }\n }\n return merged;\n}\n\nexport const ESCAPE_CHAR = '\\\\';\n\nexport const DIGIT_RE = /^\\d$/;\nexport const LETTER_RE = /^[A-Za-z]$/;\nexport const ALPHANNUMERIC_RE = /^[\\dA-Za-z]$/;\n\nexport const DEFAULT_PLACEHOLDER_CHAR = '_';\n\nexport const DEFAULT_FORMAT_CHARACTERS: FormatCharacters = {\n '*': {\n validate: function(char: string) {\n return ALPHANNUMERIC_RE.test(char);\n }\n },\n '1': {\n validate: function(char: string) {\n return DIGIT_RE.test(char);\n }\n },\n a: {\n validate: function(char: string) {\n return LETTER_RE.test(char);\n }\n },\n A: {\n validate: function(char: string) {\n return LETTER_RE.test(char);\n },\n transform: function(char: string) {\n return char.toUpperCase();\n }\n },\n '#': {\n validate: function(char: string) {\n return ALPHANNUMERIC_RE.test(char);\n },\n transform: function(char: string) {\n return char.toUpperCase();\n }\n }\n};\n\nexport type FormatCharacters = {\n [key: string]: {\n transform?(str: string): string;\n validate(str: string): boolean;\n };\n};"]}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../../../components/input/mask/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["import {KeyboardEvent} from 'react';\r\n\r\nlet KEYCODE_Z = \"KeyZ\";\r\nlet KEYCODE_Y = \"KeyY\";\r\n\r\nexport function isUndo(e: KeyboardEvent): boolean {\r\n return (\r\n (e.ctrlKey || e.metaKey) &&\r\n e.code === (e.shiftKey ? KEYCODE_Y : KEYCODE_Z)\r\n );\r\n}\r\n\r\nexport function isRedo(e: KeyboardEvent): boolean {\r\n return (\r\n (e.ctrlKey || e.metaKey) &&\r\n e.code === (e.shiftKey ? KEYCODE_Z : KEYCODE_Y)\r\n );\r\n}\r\n\r\ntype GetSelectionResult = { start: number; end: number };\r\n\r\nexport function getSelection(el: HTMLInputElement): GetSelectionResult {\r\n let start, end;\r\n if (el.selectionStart !== undefined) {\r\n start = el.selectionStart;\r\n end = el.selectionEnd;\r\n } else {\r\n try {\r\n el.focus();\r\n // @ts-ignore (IE only)\r\n let rangeEl = el.createTextRange();\r\n let clone = rangeEl.duplicate();\r\n\r\n // @ts-ignore (IE only)\r\n rangeEl.moveToBookmark(document.selection.createRange().getBookmark());\r\n clone.setEndPoint('EndToStart', rangeEl);\r\n\r\n start = clone.text.length;\r\n end = start + rangeEl.text.length;\r\n } catch (e) {\r\n /* not focused or not visible */\r\n }\r\n }\r\n\r\n return { start, end };\r\n}\r\n\r\nlet selectionTimeout: any;\r\nexport function setSelection(\r\n el: HTMLInputElement,\r\n selection: GetSelectionResult\r\n) {\r\n clearTimeout(selectionTimeout);\r\n\r\n try {\r\n if (\r\n el.selectionStart === selection.start &&\r\n el.selectionEnd === selection.end\r\n ) {\r\n return;\r\n }\r\n\r\n if (el.selectionStart !== undefined) {\r\n el.focus();\r\n el.setSelectionRange(selection.start, selection.end);\r\n\r\n // fix https://bugs.chromium.org/p/chromium/issues/detail?id=32865\r\n selectionTimeout = setTimeout(() => {\r\n setSelection(el, selection);\r\n }, 0);\r\n\r\n } else {\r\n el.focus();\r\n // @ts-ignore (IE only)\r\n let rangeEl = el.createTextRange();\r\n rangeEl.collapse(true);\r\n rangeEl.moveStart('character', selection.start);\r\n rangeEl.moveEnd('character', selection.end - selection.start);\r\n rangeEl.select();\r\n }\r\n } catch (e) {\r\n /* not focused or not visible */\r\n }\r\n}\r\n\r\n/**\r\n * Merge an object defining format characters into the defaults.\r\n * Passing null/undefined for en existing format character removes it.\r\n * Passing a definition for an existing format character overrides it.\r\n */\r\nexport function mergeFormatCharacters(formatCharacters: FormatCharacters) {\r\n var merged = { ...DEFAULT_FORMAT_CHARACTERS };\r\n if (formatCharacters) {\r\n var chars = Object.keys(formatCharacters);\r\n for (var i = 0, l = chars.length; i < l; i++) {\r\n var char = chars[i];\r\n if (formatCharacters[char] == null) {\r\n delete merged[char];\r\n } else {\r\n merged[char] = formatCharacters[char];\r\n }\r\n }\r\n }\r\n return merged;\r\n}\r\n\r\nexport const ESCAPE_CHAR = '\\\\';\r\n\r\nexport const DIGIT_RE = /^\\d$/;\r\nexport const LETTER_RE = /^[A-Za-z]$/;\r\nexport const ALPHANNUMERIC_RE = /^[\\dA-Za-z]$/;\r\n\r\nexport const DEFAULT_PLACEHOLDER_CHAR = '_';\r\n\r\nexport const DEFAULT_FORMAT_CHARACTERS: FormatCharacters = {\r\n '*': {\r\n validate: function(char: string) {\r\n return ALPHANNUMERIC_RE.test(char);\r\n }\r\n },\r\n '1': {\r\n validate: function(char: string) {\r\n return DIGIT_RE.test(char);\r\n }\r\n },\r\n a: {\r\n validate: function(char: string) {\r\n return LETTER_RE.test(char);\r\n }\r\n },\r\n A: {\r\n validate: function(char: string) {\r\n return LETTER_RE.test(char);\r\n },\r\n transform: function(char: string) {\r\n return char.toUpperCase();\r\n }\r\n },\r\n '#': {\r\n validate: function(char: string) {\r\n return ALPHANNUMERIC_RE.test(char);\r\n },\r\n transform: function(char: string) {\r\n return char.toUpperCase();\r\n }\r\n }\r\n};\r\n\r\nexport type FormatCharacters = {\r\n [key: string]: {\r\n transform?(str: string): string;\r\n validate(str: string): boolean;\r\n };\r\n};"]}
@@ -1,46 +1,46 @@
1
- import { FormatCharacters } from './helpers';
2
- import { Pattern } from './pattern';
3
- declare type SelectionObject = {
4
- start: number;
5
- end: number;
6
- };
7
- declare type Options = {
8
- formatCharacters: FormatCharacters;
9
- pattern: string;
10
- isRevealingMask: boolean;
11
- placeholderChar: string;
12
- selection: SelectionObject;
13
- value: string;
14
- };
15
- export declare class InputMask {
16
- static Pattern: typeof Pattern;
17
- formatCharacters: FormatCharacters;
18
- pattern: Pattern;
19
- isRevealingMask: boolean;
20
- placeholderChar: string;
21
- selection: SelectionObject;
22
- value: string[];
23
- emptyValue: string;
24
- _history: {
25
- value: string;
26
- selection: SelectionObject;
27
- lastOp: string | null;
28
- startUndo?: boolean;
29
- }[];
30
- _historyIndex: null | number;
31
- _lastOp: null | string;
32
- _lastSelection: null | SelectionObject;
33
- constructor(options: Partial<Options>);
34
- setPattern(patternSource: string, options: Partial<Options>): void;
35
- setValue(value?: string): void;
36
- _resetHistory(): void;
37
- getValue(): string;
38
- getRawValue(): string;
39
- input(char: string): boolean;
40
- backspace(): boolean;
41
- paste(input: string): boolean;
42
- undo(): boolean;
43
- redo(): boolean;
44
- setSelection(selection: SelectionObject): boolean;
45
- }
46
- export default InputMask;
1
+ import { FormatCharacters } from './helpers';
2
+ import { Pattern } from './pattern';
3
+ type SelectionObject = {
4
+ start: number;
5
+ end: number;
6
+ };
7
+ type Options = {
8
+ formatCharacters: FormatCharacters;
9
+ pattern: string;
10
+ isRevealingMask: boolean;
11
+ placeholderChar: string;
12
+ selection: SelectionObject;
13
+ value: string;
14
+ };
15
+ export declare class InputMask {
16
+ static Pattern: typeof Pattern;
17
+ formatCharacters: FormatCharacters;
18
+ pattern: Pattern;
19
+ isRevealingMask: boolean;
20
+ placeholderChar: string;
21
+ selection: SelectionObject;
22
+ value: string[];
23
+ emptyValue: string;
24
+ _history: {
25
+ value: string;
26
+ selection: SelectionObject;
27
+ lastOp: string | null;
28
+ startUndo?: boolean;
29
+ }[];
30
+ _historyIndex: null | number;
31
+ _lastOp: null | string;
32
+ _lastSelection: null | SelectionObject;
33
+ constructor(options: Partial<Options>);
34
+ setPattern(patternSource: string, options: Partial<Options>): void;
35
+ setValue(value?: string): void;
36
+ _resetHistory(): void;
37
+ getValue(): string;
38
+ getRawValue(): string;
39
+ input(char: string): boolean;
40
+ backspace(): boolean;
41
+ paste(input: string): boolean;
42
+ undo(): boolean;
43
+ redo(): boolean;
44
+ setSelection(selection: SelectionObject): boolean;
45
+ }
46
+ export default InputMask;