d2coreui 21.0.15 → 21.0.17
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/components/clipboard/clipboardUtils.js.map +1 -1
- package/components/codemirror/SyntaxHighlighter.js.map +1 -1
- package/components/collapse/expandable.js.map +1 -1
- package/components/color/colorPicker.d.ts +1 -0
- package/components/color/colorPicker.js +1 -1
- package/components/color/colorPicker.js.map +1 -1
- package/components/color/colorSwatch.js.map +1 -1
- package/components/color/colorUtils.js.map +1 -1
- package/components/date/dateRangeInput.js +2 -2
- package/components/date/dateRangeInput.js.map +1 -1
- package/components/date/dateRangeInputAdvancedPanel.js.map +1 -1
- package/components/date/dateRangeInputConfirm.js.map +1 -1
- package/components/date/dateTimeInput.d.ts +2 -0
- package/components/date/dateTimeInput.js +10 -4
- package/components/date/dateTimeInput.js.map +1 -1
- package/components/date/durationInput.d.ts +7 -7
- package/components/date/durationInput.js +128 -75
- package/components/date/durationInput.js.map +1 -1
- package/components/form/NiceFormItem.d.ts +13 -0
- package/components/form/NiceFormItem.js +29 -0
- package/components/form/NiceFormItem.js.map +1 -0
- package/components/grid/cell/cellEditorUtils.js.map +1 -1
- package/components/grid/cell/customEnumCellEditor.js.map +1 -1
- package/components/grid/cell/dateCellEditor.js +1 -1
- package/components/grid/cell/dateCellEditor.js.map +1 -1
- package/components/grid/cell/durationCellEditor.js.map +1 -1
- package/components/grid/cell/hexaOctetStringCellEditor.js.map +1 -1
- package/components/grid/cell/hexaValueCellEditor.js.map +1 -1
- package/components/grid/cell/numberCellEditor.js.map +1 -1
- package/components/grid/cell/rangeSelector.js.map +1 -1
- package/components/grid/cell/simpleStatusTextCellEditor.js.map +1 -1
- package/components/grid/cell/statusTextCellEditor.js.map +1 -1
- package/components/grid/cell/tableDefaultRowStyleRules.js.map +1 -1
- package/components/grid/cell/textCellEditor.js +5 -1
- package/components/grid/cell/textCellEditor.js.map +1 -1
- package/components/grid/cell/wildcardQuickFilter.js.map +1 -1
- package/components/grid/columnUtils.js.map +1 -1
- package/components/grid/config/columnTransfer.js.map +1 -1
- package/components/grid/config/dataGridEditor.js.map +1 -1
- package/components/grid/config/rowStylePicker.js.map +1 -1
- package/components/grid/dataGrid.d.ts +3 -2
- package/components/grid/dataGrid.js +51 -54
- package/components/grid/dataGrid.js.map +1 -1
- package/components/grid/export/contextMenu.d.ts +2 -1
- package/components/grid/export/contextMenu.js +3 -3
- package/components/grid/export/contextMenu.js.map +1 -1
- package/components/grid/export/progressPopup.js.map +1 -1
- package/components/grid/export/worker/clipboardExport.js.map +1 -1
- package/components/grid/export/worker/csvExport.js.map +1 -1
- package/components/grid/export/worker/pdfExport.js.map +1 -1
- package/components/grid/export/worker/txtExport.js.map +1 -1
- package/components/grid/extendedDataGrid.d.ts +1 -0
- package/components/grid/extendedDataGrid.js +6 -2
- package/components/grid/extendedDataGrid.js.map +1 -1
- package/components/grid/filter/customColumnFilter.js.map +1 -1
- package/components/grid/filter/dateColumnFilter.js.map +1 -1
- package/components/grid/filter/textColumnFilter.js.map +1 -1
- package/components/grid/header/simpleHeader.js.map +1 -1
- package/components/grid/panel/dataGridPagination.d.ts +16 -0
- package/components/grid/panel/dataGridPagination.js +59 -0
- package/components/grid/panel/dataGridPagination.js.map +1 -0
- package/components/grid/panel/loadingOverlay.js.map +1 -1
- package/components/grid/panel/noRecordsOverlay.js.map +1 -1
- package/components/grid/panel/tablePagination.js.map +1 -1
- package/components/icons/ant-design-double-right-outline.svg +5 -5
- package/components/icons/ant-design_close-outline.svg +5 -5
- package/components/icons/undoIcon.js.map +1 -1
- package/components/input/autoCompleteInput.js.map +1 -1
- package/components/input/draftUtils.js.map +1 -1
- package/components/input/draftail.js.map +1 -1
- package/components/input/hexaFormattedInput.js.map +1 -1
- package/components/input/mask/helpers.js.map +1 -1
- package/components/input/mask/inputMaskCore.js.map +1 -1
- package/components/input/mask/pattern.js.map +1 -1
- package/components/input/maskedInput.d.ts +2 -2
- package/components/input/maskedInput.js.map +1 -1
- package/components/input/passwordInput.js.map +1 -1
- package/components/input/simpleAutoComplete.js.map +1 -1
- package/components/input/textarea/extractSpansOfClasses.js.map +1 -1
- package/components/input/textarea/getRanges.js.map +1 -1
- package/components/input/textarea/getType.js.map +1 -1
- package/components/input/textarea/highlighedContents.js.map +1 -1
- package/components/input/textarea/mentionsWithHighlighting.js +1 -1
- package/components/input/textarea/mentionsWithHighlighting.js.map +1 -1
- package/components/keyboard/keyboardUtils.js.map +1 -1
- package/components/modal/draggableModalProvider.js.map +1 -1
- package/components/modal/impl/clamp.js.map +1 -1
- package/components/modal/impl/draggableModal.js.map +1 -1
- package/components/modal/impl/draggableModalContext.js.map +1 -1
- package/components/modal/impl/draggableModalInner.js.map +1 -1
- package/components/modal/impl/draggableModalReducer.js.map +1 -1
- package/components/modal/impl/getWindowSize.js.map +1 -1
- package/components/modal/impl/index.js.map +1 -1
- package/components/modal/impl/resizeHandle.js.map +1 -1
- package/components/modal/impl/useDrag.js.map +1 -1
- package/components/modal/impl/usePrevious.js.map +1 -1
- package/components/modal/impl/useResize.js.map +1 -1
- package/components/modal/modalDialog.js.map +1 -1
- package/components/picker/enumValuePicker.js.map +1 -1
- package/components/platformSpecific.js.map +1 -1
- package/components/scrollTo/onlyText.js.map +1 -1
- package/components/scrollTo/scrollTo.js.map +1 -1
- package/components/table/dataTable.d.ts +1 -0
- package/components/table/dataTable.js.map +1 -1
- package/components/table/dragSortingTable.js.map +1 -1
- package/components/text/impl/innerSize.js.map +1 -1
- package/components/text/impl/series.js.map +1 -1
- package/components/text/impl/shallowEqual.js.map +1 -1
- package/components/text/impl/uniqueId.js.map +1 -1
- package/components/text/impl/whilst.js.map +1 -1
- package/components/text/textFit.js.map +1 -1
- package/i18n/components.cs.json +100 -0
- package/i18n/components.sk.json +5 -1
- package/i18n/componentsLocaleHolder.d.ts +1 -1
- package/i18n/componentsLocaleHolder.js +6 -4
- package/i18n/componentsLocaleHolder.js.map +1 -1
- package/package.json +70 -70
- package/style/ag-grid/_ag-theme-antd-vars.scss +194 -194
- package/style/ag-grid/ag-theme-antd.scss +87 -87
- package/style/ag-grid/aggrid-adaptations.css +42 -42
- package/style/ag-grid/aggrid.scss +11 -11
- package/style/antd/antd-tree-showline.css +24 -24
- package/style/antd/full-height-tabs.scss +62 -62
- package/style/draftail/draftail-editor.css +179 -179
- package/style/flexLayout/flexLayout.scss +130 -130
- package/style/flexLayout/flexLayoutBase.scss +623 -623
- package/style/flexLayout/new/flexLayoutBase.scss +621 -621
- package/style/form/niceFormItem.css +39 -0
- package/style/index.less +291 -291
- package/style/loading.css +31 -31
- package/style/modal/DraggableModal.css +40 -40
- package/style/modal/ResizeHandle.css +19 -19
- package/style/splitPane/splitPane.css +48 -48
- package/style/table/dragSortingTable.css +6 -6
- package/components/date/millisecondDatePicker.d.ts +0 -16
- package/components/date/millisecondDatePicker.js +0 -56
- package/components/date/millisecondDatePicker.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inputMaskCore.js","sourceRoot":"","sources":["../../../../../components/input/mask/inputMaskCore.ts"],"names":[],"mappings":"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","sourcesContent":["import {DEFAULT_PLACEHOLDER_CHAR, FormatCharacters, mergeFormatCharacters} from './helpers';\r\nimport {Pattern} from './pattern';\r\n\r\ntype SelectionObject = { start: number; end: number };\r\n\r\ntype Options = {\r\n formatCharacters: FormatCharacters;\r\n pattern: string;\r\n isRevealingMask: boolean;\r\n placeholderChar: string;\r\n selection: SelectionObject;\r\n value: string;\r\n};\r\n\r\nexport class InputMask {\r\n static Pattern = Pattern;\r\n\r\n formatCharacters!: FormatCharacters;\r\n pattern!: Pattern;\r\n isRevealingMask!: boolean;\r\n placeholderChar!: string;\r\n selection!: SelectionObject;\r\n value!: string[];\r\n emptyValue = '';\r\n\r\n _history: {\r\n value: string;\r\n selection: SelectionObject;\r\n lastOp: string | null;\r\n startUndo?: boolean;\r\n }[] = [];\r\n\r\n _historyIndex: null | number = null;\r\n _lastOp: null | string = null;\r\n _lastSelection: null | SelectionObject = null;\r\n\r\n constructor(options: Partial<Options>) {\r\n const mergedOptions: Options = {\r\n ...{\r\n isRevealingMask: false,\r\n placeholderChar: DEFAULT_PLACEHOLDER_CHAR,\r\n selection: {start: 0, end: 0},\r\n value: ''\r\n },\r\n ...options\r\n } as Options;\r\n\r\n if (!mergedOptions.pattern) {\r\n throw new Error('InputMask: you must provide a pattern.');\r\n }\r\n\r\n if (\r\n typeof mergedOptions.placeholderChar !== 'string' ||\r\n mergedOptions.placeholderChar.length > 1\r\n ) {\r\n throw new Error(\r\n 'InputMask: placeholderChar should be a single character or an empty string.'\r\n );\r\n }\r\n\r\n this.placeholderChar = mergedOptions.placeholderChar;\r\n this.formatCharacters = mergeFormatCharacters(\r\n mergedOptions.formatCharacters\r\n );\r\n\r\n this.setPattern(mergedOptions.pattern, {\r\n value: mergedOptions.value,\r\n selection: mergedOptions.selection,\r\n isRevealingMask: mergedOptions.isRevealingMask\r\n });\r\n }\r\n\r\n setPattern(patternSource: string, options: Partial<Options>) {\r\n const merged = {\r\n selection: {start: 0, end: 0},\r\n value: '',\r\n ...options\r\n };\r\n\r\n this.pattern = new Pattern(\r\n patternSource,\r\n this.formatCharacters,\r\n this.placeholderChar,\r\n merged.isRevealingMask\r\n );\r\n\r\n this.setValue(merged.value);\r\n\r\n this.emptyValue = this.pattern.formatValue([]).join('');\r\n this.selection = merged.selection;\r\n this._resetHistory();\r\n }\r\n\r\n setValue(value?: string) {\r\n if (value == null) {\r\n value = '';\r\n }\r\n this.value = this.pattern.formatValue((value || '').split(''));\r\n }\r\n\r\n _resetHistory() {\r\n this._history = [];\r\n this._historyIndex = null;\r\n this._lastOp = null;\r\n this._lastSelection = {...this.selection};\r\n }\r\n\r\n getValue(): string {\r\n if (this.pattern.isRevealingMask) {\r\n this.value = this.pattern.formatValue(\r\n (this.getRawValue() || '').split('')\r\n );\r\n }\r\n return (this.value || []).join('');\r\n }\r\n\r\n getRawValue(): string {\r\n var rawValue = [];\r\n for (var i = 0; i < this.value.length; i++) {\r\n if (this.pattern._editableIndices[i] === true) {\r\n rawValue.push(this.value[i]);\r\n }\r\n }\r\n return rawValue.join('');\r\n }\r\n\r\n /**\r\n * Applies a single character of input based on the current selection.\r\n * @param {string} char\r\n * @return {boolean} true if a change has been made to value or selection as a\r\n * result of the input, false otherwise.\r\n */\r\n input(char: string) {\r\n // Ignore additional input if the cursor's at the end of the pattern\r\n if (\r\n this.selection.start === this.selection.end &&\r\n this.selection.start === this.pattern.length\r\n ) {\r\n return false;\r\n }\r\n\r\n const selectionBefore = copy(this.selection);\r\n const valueBefore = this.getValue();\r\n\r\n let inputIndex = this.selection.start;\r\n\r\n // If the cursor or selection is prior to the first editable character, make\r\n // sure any input given is applied to it.\r\n if (this.pattern.firstEditableIndex && inputIndex < this.pattern.firstEditableIndex) {\r\n inputIndex = this.pattern.firstEditableIndex;\r\n }\r\n\r\n // Bail out or add the character to input\r\n if (this.pattern.isEditableIndex(inputIndex)) {\r\n if (!this.pattern.isValidAtIndex(char, inputIndex)) {\r\n return false;\r\n }\r\n this.value[inputIndex] = this.pattern.transform(char, inputIndex);\r\n } else {\r\n console.log('not editable');\r\n }\r\n\r\n // If multiple characters were selected, blank the remainder out based on the\r\n // pattern.\r\n let end = this.selection.end - 1;\r\n while (end > inputIndex) {\r\n if (this.pattern.isEditableIndex(end)) {\r\n this.value[end] = this.placeholderChar;\r\n }\r\n end--;\r\n }\r\n\r\n // Advance the cursor to the next character\r\n this.selection.start = this.selection.end = inputIndex + 1;\r\n\r\n // Skip over any subsequent static characters\r\n while (\r\n this.pattern.length > this.selection.start &&\r\n !this.pattern.isEditableIndex(this.selection.start)\r\n ) {\r\n this.selection.start++;\r\n this.selection.end++;\r\n }\r\n\r\n // History\r\n if (this._historyIndex != null) {\r\n // Took more input after undoing, so blow any subsequent history away\r\n this._history.splice(\r\n this._historyIndex,\r\n this._history.length - this._historyIndex\r\n );\r\n this._historyIndex = null;\r\n }\r\n if (\r\n this._lastOp !== 'input' ||\r\n selectionBefore.start !== selectionBefore.end ||\r\n (this._lastSelection !== null &&\r\n selectionBefore.start !== this._lastSelection.start)\r\n ) {\r\n this._history.push({\r\n value: valueBefore,\r\n selection: selectionBefore,\r\n lastOp: this._lastOp\r\n });\r\n }\r\n this._lastOp = 'input';\r\n this._lastSelection = copy(this.selection);\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Attempts to delete from the value based on the current cursor position or\r\n * selection.\r\n * @return {boolean} true if the value or selection changed as the result of\r\n * backspacing, false otherwise.\r\n */\r\n backspace() {\r\n // If the cursor is at the start there's nothing to do\r\n if (this.selection.start === 0 && this.selection.end === 0) {\r\n return false;\r\n }\r\n\r\n var selectionBefore = {...this.selection};\r\n var valueBefore = this.getValue();\r\n\r\n // No range selected - work on the character preceding the cursor\r\n if (this.selection.start === this.selection.end) {\r\n if (this.pattern.isEditableIndex(this.selection.start - 1)) {\r\n if (this.pattern.isRevealingMask) {\r\n this.value.splice(this.selection.start - 1);\r\n } else {\r\n this.value[this.selection.start - 1] = this.placeholderChar;\r\n }\r\n }\r\n this.selection.start--;\r\n this.selection.end--;\r\n }\r\n // Range selected - delete characters and leave the cursor at the start of the selection\r\n else {\r\n var end = this.selection.end - 1;\r\n while (end >= this.selection.start) {\r\n if (this.pattern.isEditableIndex(end)) {\r\n this.value[end] = this.placeholderChar;\r\n }\r\n end--;\r\n }\r\n this.selection.end = this.selection.start;\r\n }\r\n\r\n // History\r\n if (this._historyIndex != null) {\r\n // Took more input after undoing, so blow any subsequent history away\r\n this._history.splice(\r\n this._historyIndex,\r\n this._history.length - this._historyIndex\r\n );\r\n }\r\n if (\r\n this._lastOp !== 'backspace' ||\r\n selectionBefore.start !== selectionBefore.end ||\r\n (this._lastSelection !== null &&\r\n selectionBefore.start !== this._lastSelection.start)\r\n ) {\r\n this._history.push({\r\n value: valueBefore,\r\n selection: selectionBefore,\r\n lastOp: this._lastOp\r\n });\r\n }\r\n this._lastOp = 'backspace';\r\n this._lastSelection = {...this.selection};\r\n\r\n return true;\r\n }\r\n\r\n /**\r\n * Attempts to paste a string of input at the current cursor position or over\r\n * the top of the current selection.\r\n * Invalid content at any position will cause the paste to be rejected, and it\r\n * may contain static parts of the mask's pattern.\r\n * @param {string} input\r\n * @return {boolean} true if the paste was successful, false otherwise.\r\n */\r\n paste(input: string) {\r\n // This is necessary because we're just calling input() with each character\r\n // and rolling back if any were invalid, rather than checking up-front.\r\n var initialState = {\r\n value: this.value.slice(),\r\n selection: {...this.selection},\r\n _lastOp: this._lastOp,\r\n _history: this._history.slice(),\r\n _historyIndex: this._historyIndex,\r\n _lastSelection: {...this._lastSelection}\r\n };\r\n\r\n // If there are static characters at the start of the pattern and the cursor\r\n // or selection is within them, the static characters must match for a valid\r\n // paste.\r\n if (this.selection.start < this.pattern.firstEditableIndex!) {\r\n for (\r\n var i = 0, l = this.pattern.firstEditableIndex! - this.selection.start;\r\n i < l;\r\n i++\r\n ) {\r\n if (input.charAt(i) !== this.pattern.pattern[i]) {\r\n return false;\r\n }\r\n }\r\n\r\n // Continue as if the selection and input started from the editable part of\r\n // the pattern.\r\n input = input.substring(\r\n this.pattern.firstEditableIndex! - this.selection.start\r\n );\r\n this.selection.start = this.pattern.firstEditableIndex!;\r\n }\r\n\r\n for (\r\n i = 0, l = input.length;\r\n i < l && this.selection.start <= this.pattern.lastEditableIndex!;\r\n i++\r\n ) {\r\n var valid = this.input(input.charAt(i));\r\n // Allow static parts of the pattern to appear in pasted input - they will\r\n // already have been stepped over by input(), so verify that the value\r\n // deemed invalid by input() was the expected static character.\r\n if (!valid) {\r\n if (this.selection.start > 0) {\r\n // XXX This only allows for one static character to be skipped\r\n var patternIndex = this.selection.start - 1;\r\n if (\r\n !this.pattern.isEditableIndex(patternIndex) &&\r\n input.charAt(i) === this.pattern.pattern[patternIndex]\r\n ) {\r\n continue;\r\n }\r\n }\r\n\r\n Object.keys(initialState).forEach(key => {\r\n // @ts-ignore\r\n this[key] = initialState[key];\r\n });\r\n\r\n return false;\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n\r\n undo() {\r\n // If there is no history, or nothing more on the history stack, we can't undo\r\n if (this._history.length === 0 || this._historyIndex === 0) {\r\n return false;\r\n }\r\n\r\n var historyItem;\r\n if (this._historyIndex == null) {\r\n // Not currently undoing, set up the initial history index\r\n this._historyIndex = this._history.length - 1;\r\n historyItem = this._history[this._historyIndex];\r\n // Add a new history entry if anything has changed since the last one, so we\r\n // can redo back to the initial state we started undoing from.\r\n var value = this.getValue();\r\n if (\r\n historyItem.value !== value ||\r\n historyItem.selection.start !== this.selection.start ||\r\n historyItem.selection.end !== this.selection.end\r\n ) {\r\n this._history.push({\r\n value: value,\r\n selection: {...this.selection},\r\n lastOp: this._lastOp,\r\n startUndo: true\r\n });\r\n }\r\n } else {\r\n historyItem = this._history[--this._historyIndex];\r\n }\r\n\r\n this.value = historyItem.value.split('');\r\n this.selection = historyItem.selection;\r\n this._lastOp = historyItem.lastOp;\r\n return true;\r\n }\r\n\r\n redo() {\r\n if (this._history.length === 0 || this._historyIndex == null) {\r\n return false;\r\n }\r\n var historyItem = this._history[++this._historyIndex];\r\n // If this is the last history item, we're done redoing\r\n if (this._historyIndex === this._history.length - 1) {\r\n this._historyIndex = null;\r\n // If the last history item was only added to start undoing, remove it\r\n if (historyItem.startUndo) {\r\n this._history.pop();\r\n }\r\n }\r\n this.value = historyItem.value.split('');\r\n this.selection = historyItem.selection;\r\n this._lastOp = historyItem.lastOp;\r\n return true;\r\n }\r\n\r\n setSelection(selection: SelectionObject) {\r\n this.selection = {...selection};\r\n\r\n if (this.selection.start === this.selection.end) {\r\n if (this.selection.start < this.pattern.firstEditableIndex!) {\r\n this.selection!.start = this.selection!.end = this.pattern\r\n .firstEditableIndex as number;\r\n return true;\r\n }\r\n // Set selection to the first editable, non-placeholder character before the selection\r\n // OR to the beginning of the pattern\r\n var index = this.selection.start;\r\n while (index >= this.pattern.firstEditableIndex!) {\r\n if (\r\n (this.pattern.isEditableIndex(index - 1) &&\r\n this.value[index - 1] !== this.placeholderChar) ||\r\n index === this.pattern.firstEditableIndex\r\n ) {\r\n this.selection.start = this.selection.end = index;\r\n break;\r\n }\r\n index--;\r\n }\r\n return true;\r\n }\r\n return false;\r\n }\r\n}\r\n\r\nfunction extend(dest: any, src: any) {\r\n if (src) {\r\n let props = Object.keys(src);\r\n\r\n for (var i = 0, l = props.length; i < l; i++) {\r\n dest[props[i]] = src[props[i]];\r\n }\r\n }\r\n\r\n return dest;\r\n}\r\n\r\nfunction copy<T = any>(obj: T): T {\r\n return extend({}, obj);\r\n}\r\n\r\nexport default InputMask;"]}
|
|
1
|
+
{"version":3,"file":"inputMaskCore.js","sourceRoot":"","sources":["../../../../../components/input/mask/inputMaskCore.ts"],"names":[],"mappings":"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","sourcesContent":["import {DEFAULT_PLACEHOLDER_CHAR, FormatCharacters, mergeFormatCharacters} from './helpers';\nimport {Pattern} from './pattern';\n\ntype SelectionObject = { start: number; end: number };\n\ntype Options = {\n formatCharacters: FormatCharacters;\n pattern: string;\n isRevealingMask: boolean;\n placeholderChar: string;\n selection: SelectionObject;\n value: string;\n};\n\nexport class InputMask {\n static Pattern = Pattern;\n\n formatCharacters!: FormatCharacters;\n pattern!: Pattern;\n isRevealingMask!: boolean;\n placeholderChar!: string;\n selection!: SelectionObject;\n value!: string[];\n emptyValue = '';\n\n _history: {\n value: string;\n selection: SelectionObject;\n lastOp: string | null;\n startUndo?: boolean;\n }[] = [];\n\n _historyIndex: null | number = null;\n _lastOp: null | string = null;\n _lastSelection: null | SelectionObject = null;\n\n constructor(options: Partial<Options>) {\n const mergedOptions: Options = {\n ...{\n isRevealingMask: false,\n placeholderChar: DEFAULT_PLACEHOLDER_CHAR,\n selection: {start: 0, end: 0},\n value: ''\n },\n ...options\n } as Options;\n\n if (!mergedOptions.pattern) {\n throw new Error('InputMask: you must provide a pattern.');\n }\n\n if (\n typeof mergedOptions.placeholderChar !== 'string' ||\n mergedOptions.placeholderChar.length > 1\n ) {\n throw new Error(\n 'InputMask: placeholderChar should be a single character or an empty string.'\n );\n }\n\n this.placeholderChar = mergedOptions.placeholderChar;\n this.formatCharacters = mergeFormatCharacters(\n mergedOptions.formatCharacters\n );\n\n this.setPattern(mergedOptions.pattern, {\n value: mergedOptions.value,\n selection: mergedOptions.selection,\n isRevealingMask: mergedOptions.isRevealingMask\n });\n }\n\n setPattern(patternSource: string, options: Partial<Options>) {\n const merged = {\n selection: {start: 0, end: 0},\n value: '',\n ...options\n };\n\n this.pattern = new Pattern(\n patternSource,\n this.formatCharacters,\n this.placeholderChar,\n merged.isRevealingMask\n );\n\n this.setValue(merged.value);\n\n this.emptyValue = this.pattern.formatValue([]).join('');\n this.selection = merged.selection;\n this._resetHistory();\n }\n\n setValue(value?: string) {\n if (value == null) {\n value = '';\n }\n this.value = this.pattern.formatValue((value || '').split(''));\n }\n\n _resetHistory() {\n this._history = [];\n this._historyIndex = null;\n this._lastOp = null;\n this._lastSelection = {...this.selection};\n }\n\n getValue(): string {\n if (this.pattern.isRevealingMask) {\n this.value = this.pattern.formatValue(\n (this.getRawValue() || '').split('')\n );\n }\n return (this.value || []).join('');\n }\n\n getRawValue(): string {\n var rawValue = [];\n for (var i = 0; i < this.value.length; i++) {\n if (this.pattern._editableIndices[i] === true) {\n rawValue.push(this.value[i]);\n }\n }\n return rawValue.join('');\n }\n\n /**\n * Applies a single character of input based on the current selection.\n * @param {string} char\n * @return {boolean} true if a change has been made to value or selection as a\n * result of the input, false otherwise.\n */\n input(char: string) {\n // Ignore additional input if the cursor's at the end of the pattern\n if (\n this.selection.start === this.selection.end &&\n this.selection.start === this.pattern.length\n ) {\n return false;\n }\n\n const selectionBefore = copy(this.selection);\n const valueBefore = this.getValue();\n\n let inputIndex = this.selection.start;\n\n // If the cursor or selection is prior to the first editable character, make\n // sure any input given is applied to it.\n if (this.pattern.firstEditableIndex && inputIndex < this.pattern.firstEditableIndex) {\n inputIndex = this.pattern.firstEditableIndex;\n }\n\n // Bail out or add the character to input\n if (this.pattern.isEditableIndex(inputIndex)) {\n if (!this.pattern.isValidAtIndex(char, inputIndex)) {\n return false;\n }\n this.value[inputIndex] = this.pattern.transform(char, inputIndex);\n } else {\n console.log('not editable');\n }\n\n // If multiple characters were selected, blank the remainder out based on the\n // pattern.\n let end = this.selection.end - 1;\n while (end > inputIndex) {\n if (this.pattern.isEditableIndex(end)) {\n this.value[end] = this.placeholderChar;\n }\n end--;\n }\n\n // Advance the cursor to the next character\n this.selection.start = this.selection.end = inputIndex + 1;\n\n // Skip over any subsequent static characters\n while (\n this.pattern.length > this.selection.start &&\n !this.pattern.isEditableIndex(this.selection.start)\n ) {\n this.selection.start++;\n this.selection.end++;\n }\n\n // History\n if (this._historyIndex != null) {\n // Took more input after undoing, so blow any subsequent history away\n this._history.splice(\n this._historyIndex,\n this._history.length - this._historyIndex\n );\n this._historyIndex = null;\n }\n if (\n this._lastOp !== 'input' ||\n selectionBefore.start !== selectionBefore.end ||\n (this._lastSelection !== null &&\n selectionBefore.start !== this._lastSelection.start)\n ) {\n this._history.push({\n value: valueBefore,\n selection: selectionBefore,\n lastOp: this._lastOp\n });\n }\n this._lastOp = 'input';\n this._lastSelection = copy(this.selection);\n\n return true;\n }\n\n /**\n * Attempts to delete from the value based on the current cursor position or\n * selection.\n * @return {boolean} true if the value or selection changed as the result of\n * backspacing, false otherwise.\n */\n backspace() {\n // If the cursor is at the start there's nothing to do\n if (this.selection.start === 0 && this.selection.end === 0) {\n return false;\n }\n\n var selectionBefore = {...this.selection};\n var valueBefore = this.getValue();\n\n // No range selected - work on the character preceding the cursor\n if (this.selection.start === this.selection.end) {\n if (this.pattern.isEditableIndex(this.selection.start - 1)) {\n if (this.pattern.isRevealingMask) {\n this.value.splice(this.selection.start - 1);\n } else {\n this.value[this.selection.start - 1] = this.placeholderChar;\n }\n }\n this.selection.start--;\n this.selection.end--;\n }\n // Range selected - delete characters and leave the cursor at the start of the selection\n else {\n var end = this.selection.end - 1;\n while (end >= this.selection.start) {\n if (this.pattern.isEditableIndex(end)) {\n this.value[end] = this.placeholderChar;\n }\n end--;\n }\n this.selection.end = this.selection.start;\n }\n\n // History\n if (this._historyIndex != null) {\n // Took more input after undoing, so blow any subsequent history away\n this._history.splice(\n this._historyIndex,\n this._history.length - this._historyIndex\n );\n }\n if (\n this._lastOp !== 'backspace' ||\n selectionBefore.start !== selectionBefore.end ||\n (this._lastSelection !== null &&\n selectionBefore.start !== this._lastSelection.start)\n ) {\n this._history.push({\n value: valueBefore,\n selection: selectionBefore,\n lastOp: this._lastOp\n });\n }\n this._lastOp = 'backspace';\n this._lastSelection = {...this.selection};\n\n return true;\n }\n\n /**\n * Attempts to paste a string of input at the current cursor position or over\n * the top of the current selection.\n * Invalid content at any position will cause the paste to be rejected, and it\n * may contain static parts of the mask's pattern.\n * @param {string} input\n * @return {boolean} true if the paste was successful, false otherwise.\n */\n paste(input: string) {\n // This is necessary because we're just calling input() with each character\n // and rolling back if any were invalid, rather than checking up-front.\n var initialState = {\n value: this.value.slice(),\n selection: {...this.selection},\n _lastOp: this._lastOp,\n _history: this._history.slice(),\n _historyIndex: this._historyIndex,\n _lastSelection: {...this._lastSelection}\n };\n\n // If there are static characters at the start of the pattern and the cursor\n // or selection is within them, the static characters must match for a valid\n // paste.\n if (this.selection.start < this.pattern.firstEditableIndex!) {\n for (\n var i = 0, l = this.pattern.firstEditableIndex! - this.selection.start;\n i < l;\n i++\n ) {\n if (input.charAt(i) !== this.pattern.pattern[i]) {\n return false;\n }\n }\n\n // Continue as if the selection and input started from the editable part of\n // the pattern.\n input = input.substring(\n this.pattern.firstEditableIndex! - this.selection.start\n );\n this.selection.start = this.pattern.firstEditableIndex!;\n }\n\n for (\n i = 0, l = input.length;\n i < l && this.selection.start <= this.pattern.lastEditableIndex!;\n i++\n ) {\n var valid = this.input(input.charAt(i));\n // Allow static parts of the pattern to appear in pasted input - they will\n // already have been stepped over by input(), so verify that the value\n // deemed invalid by input() was the expected static character.\n if (!valid) {\n if (this.selection.start > 0) {\n // XXX This only allows for one static character to be skipped\n var patternIndex = this.selection.start - 1;\n if (\n !this.pattern.isEditableIndex(patternIndex) &&\n input.charAt(i) === this.pattern.pattern[patternIndex]\n ) {\n continue;\n }\n }\n\n Object.keys(initialState).forEach(key => {\n // @ts-ignore\n this[key] = initialState[key];\n });\n\n return false;\n }\n }\n\n return true;\n }\n\n undo() {\n // If there is no history, or nothing more on the history stack, we can't undo\n if (this._history.length === 0 || this._historyIndex === 0) {\n return false;\n }\n\n var historyItem;\n if (this._historyIndex == null) {\n // Not currently undoing, set up the initial history index\n this._historyIndex = this._history.length - 1;\n historyItem = this._history[this._historyIndex];\n // Add a new history entry if anything has changed since the last one, so we\n // can redo back to the initial state we started undoing from.\n var value = this.getValue();\n if (\n historyItem.value !== value ||\n historyItem.selection.start !== this.selection.start ||\n historyItem.selection.end !== this.selection.end\n ) {\n this._history.push({\n value: value,\n selection: {...this.selection},\n lastOp: this._lastOp,\n startUndo: true\n });\n }\n } else {\n historyItem = this._history[--this._historyIndex];\n }\n\n this.value = historyItem.value.split('');\n this.selection = historyItem.selection;\n this._lastOp = historyItem.lastOp;\n return true;\n }\n\n redo() {\n if (this._history.length === 0 || this._historyIndex == null) {\n return false;\n }\n var historyItem = this._history[++this._historyIndex];\n // If this is the last history item, we're done redoing\n if (this._historyIndex === this._history.length - 1) {\n this._historyIndex = null;\n // If the last history item was only added to start undoing, remove it\n if (historyItem.startUndo) {\n this._history.pop();\n }\n }\n this.value = historyItem.value.split('');\n this.selection = historyItem.selection;\n this._lastOp = historyItem.lastOp;\n return true;\n }\n\n setSelection(selection: SelectionObject) {\n this.selection = {...selection};\n\n if (this.selection.start === this.selection.end) {\n if (this.selection.start < this.pattern.firstEditableIndex!) {\n this.selection!.start = this.selection!.end = this.pattern\n .firstEditableIndex as number;\n return true;\n }\n // Set selection to the first editable, non-placeholder character before the selection\n // OR to the beginning of the pattern\n var index = this.selection.start;\n while (index >= this.pattern.firstEditableIndex!) {\n if (\n (this.pattern.isEditableIndex(index - 1) &&\n this.value[index - 1] !== this.placeholderChar) ||\n index === this.pattern.firstEditableIndex\n ) {\n this.selection.start = this.selection.end = index;\n break;\n }\n index--;\n }\n return true;\n }\n return false;\n }\n}\n\nfunction extend(dest: any, src: any) {\n if (src) {\n let props = Object.keys(src);\n\n for (var i = 0, l = props.length; i < l; i++) {\n dest[props[i]] = src[props[i]];\n }\n }\n\n return dest;\n}\n\nfunction copy<T = any>(obj: T): T {\n return extend({}, obj);\n}\n\nexport default InputMask;"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../../../components/input/mask/pattern.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,yBAAyB,EAAE,wBAAwB,EAAE,WAAW,GAAoB,MAAM,WAAW,CAAC;AAE9G,MAAM,OAAO,OAAO;IAuBhB,YACI,MAAc,EACd,gBAAkC,EAClC,eAAuB,EACvB,eAAe,GAAG,KAAK;QArB3B,YAAO,GAAG,EAAE,CAAC;QAGb,WAAM,GAAG,CAAC,CAAC;QAGX,uBAAkB,GAAkB,IAAI,CAAC;QAGzC,sBAAiB,GAAkB,IAAI,CAAC;QAGxC,qBAAgB,GAA+B,EAAE,CAAC;QAY9C,IAAI,CAAC,eAAe,GAAG,eAAe,IAAI,wBAAwB,CAAC;QAEnE,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,IAAI,yBAAyB,CAAC;QAEtE,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,MAAM;QACF,IAAI,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,OAAO,GAAa,EAAE,CAAC;QAE3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,IAAI,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,IAAI,KAAK,WAAW,EAAE;gBACtB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;oBACb,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,WAAW,CAAC,CAAC;iBACxE;gBACD,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;aAC3B;iBAAM,IAAI,IAAI,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACtC,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE;oBAClC,IAAI,CAAC,kBAAkB,GAAG,YAAY,CAAC;iBAC1C;gBACD,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC;gBACtC,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;aAC9C;YAED,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,YAAY,EAAE,CAAC;SAClB;QAED,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE;YAClC,MAAM,IAAI,KAAK,CACX,sBAAsB,GAAG,IAAI,CAAC,MAAM,GAAG,6CAA6C,CACvF,CAAC;SACL;QAGD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,WAAW,CAAC,KAAe;QACvB,IAAI,WAAW,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,UAAU,GAAG,CAAC,CAAC;QAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE;gBACzB,IACI,IAAI,CAAC,eAAe;oBACpB,KAAK,CAAC,MAAM,IAAI,UAAU;oBAC1B,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAC5C;oBACE,MAAM;iBACT;gBACD,WAAW,CAAC,CAAC,CAAC;oBACV,KAAK,CAAC,MAAM,GAAG,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;wBAClE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;wBACtC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;gBAC/B,UAAU,EAAE,CAAC;aAChB;iBAAM;gBACH,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAGjC,IAAI,KAAK,CAAC,MAAM,GAAG,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACpE,UAAU,EAAE,CAAC;iBAChB;aACJ;SACJ;QAED,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,eAAe,CAAC,KAAa;QACzB,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,cAAc,CAAC,IAAY,EAAE,KAAa;QACtC,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrE,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,KAAa;QACjC,IAAI,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACxD,OAAO,OAAO,MAAM,CAAC,SAAS,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,CAAC;CACJ","sourcesContent":["import {DEFAULT_FORMAT_CHARACTERS, DEFAULT_PLACEHOLDER_CHAR, ESCAPE_CHAR, FormatCharacters,} from './helpers';\
|
|
1
|
+
{"version":3,"file":"pattern.js","sourceRoot":"","sources":["../../../../../components/input/mask/pattern.ts"],"names":[],"mappings":"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","sourcesContent":["import {DEFAULT_FORMAT_CHARACTERS, DEFAULT_PLACEHOLDER_CHAR, ESCAPE_CHAR, FormatCharacters,} from './helpers';\n\nexport class Pattern {\n placeholderChar: string;\n formatCharacters: FormatCharacters;\n source: string;\n\n /** Pattern characters after escape characters have been processed. */\n pattern = [];\n\n /** Length of the pattern after escape characters have been processed. */\n length = 0;\n\n /** Index of the first editable character. */\n firstEditableIndex: null | number = null;\n\n /** Index of the last editable character. */\n lastEditableIndex: null | number = null;\n\n /** Lookup for indices of editable characters in the pattern. */\n _editableIndices: { [key: number]: boolean } = {};\n\n /** If true, only the pattern before the last valid value character shows. */\n isRevealingMask: boolean;\n\n constructor(\n source: string,\n formatCharacters: FormatCharacters,\n placeholderChar: string,\n isRevealingMask = false,\n ) {\n /** Placeholder character */\n this.placeholderChar = placeholderChar || DEFAULT_PLACEHOLDER_CHAR;\n /** Format character definitions. */\n this.formatCharacters = formatCharacters || DEFAULT_FORMAT_CHARACTERS;\n /** Pattern definition string with escape characters. */\n this.source = source;\n\n this.isRevealingMask = isRevealingMask;\n\n this._parse();\n }\n\n _parse() {\n var sourceChars = this.source.split('');\n var patternIndex = 0;\n var pattern: string[] = [];\n\n for (var i = 0, l = sourceChars.length; i < l; i++) {\n var char = sourceChars[i];\n if (char === ESCAPE_CHAR) {\n if (i === l - 1) {\n throw new Error('InputMask: pattern ends with a raw ' + ESCAPE_CHAR);\n }\n char = sourceChars[++i];\n } else if (char in this.formatCharacters) {\n if (this.firstEditableIndex === null) {\n this.firstEditableIndex = patternIndex;\n }\n this.lastEditableIndex = patternIndex;\n this._editableIndices[patternIndex] = true;\n }\n\n pattern.push(char);\n patternIndex++;\n }\n\n if (this.firstEditableIndex === null) {\n throw new Error(\n 'InputMask: pattern \"' + this.source + '\" does not contain any editable characters.',\n );\n }\n\n // @ts-ignore\n this.pattern = pattern;\n this.length = pattern.length;\n }\n\n formatValue(value: string[]): string[] {\n var valueBuffer = new Array(this.length);\n var valueIndex = 0;\n\n for (var i = 0, l = this.length; i < l; i++) {\n if (this.isEditableIndex(i)) {\n if (\n this.isRevealingMask &&\n value.length <= valueIndex &&\n !this.isValidAtIndex(value[valueIndex], i)\n ) {\n break;\n }\n valueBuffer[i] =\n value.length > valueIndex && this.isValidAtIndex(value[valueIndex], i)\n ? this.transform(value[valueIndex], i)\n : this.placeholderChar;\n valueIndex++;\n } else {\n valueBuffer[i] = this.pattern[i];\n // Also allow the value to contain static values from the pattern by\n // advancing its index.\n if (value.length > valueIndex && value[valueIndex] === this.pattern[i]) {\n valueIndex++;\n }\n }\n }\n\n return valueBuffer;\n }\n\n isEditableIndex(index: number) {\n return !!this._editableIndices[index];\n }\n\n isValidAtIndex(char: string, index: number) {\n return this.formatCharacters[this.pattern[index]].validate(char);\n }\n\n transform(char: string, index: number) {\n var format = this.formatCharacters[this.pattern[index]];\n return typeof format.transform == 'function' ? format.transform(char) : char;\n }\n}"]}
|
|
@@ -43,8 +43,8 @@ export default class MaskedInput extends Component<MaskedInputProps> {
|
|
|
43
43
|
onChange: (e: TChangeEvent) => void;
|
|
44
44
|
onKeyDown: (e: TKeyboardEvent) => void;
|
|
45
45
|
onPaste: (e: TClipboardEvent) => void;
|
|
46
|
-
onBeforeInput?: React.FormEventHandler<HTMLInputElement> |
|
|
47
|
-
onKeyPress?: React.KeyboardEventHandler<HTMLInputElement> |
|
|
46
|
+
onBeforeInput?: React.FormEventHandler<HTMLInputElement> | undefined;
|
|
47
|
+
onKeyPress?: React.KeyboardEventHandler<HTMLInputElement> | undefined;
|
|
48
48
|
prefixCls?: string | undefined;
|
|
49
49
|
size?: import("antd/lib/button").ButtonSize;
|
|
50
50
|
type?: import("antd/lib/_util/type").LiteralUnion<"number" | "button" | "time" | "search" | "image" | "text" | "hidden" | "color" | "checkbox" | "radio" | "tel" | "url" | "email" | "date" | "datetime-local" | "file" | "month" | "password" | "range" | "reset" | "submit" | "week", string> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"maskedInput.js","sourceRoot":"","sources":["../../../../components/input/maskedInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {ChangeEvent, ClipboardEvent, Component, KeyboardEvent} from 'react';\r\nimport {Input} from 'antd';\r\nimport InputMask from 'd2coreui/components/input/mask/inputMaskCore';\r\nimport {getSelection, isRedo, isUndo, setSelection} from 'd2coreui/components/input/mask/helpers';\r\nimport {InputProps} from 'antd/lib/input';\r\n\r\nexport type MaskedInputProps = InputProps & {\r\n mask: string;\r\n formatCharacters?: object;\r\n placeholderChar?: string;\r\n value?: string;\r\n};\r\n\r\ntype TChangeEvent = ChangeEvent<HTMLInputElement>;\r\ntype TKeyboardEvent = KeyboardEvent<HTMLInputElement>;\r\ntype TClipboardEvent = ClipboardEvent<any>;\r\n\r\nexport default class MaskedInput extends Component<MaskedInputProps> {\r\n mask: InputMask;\r\n input!: HTMLInputElement;\r\n\r\n constructor(props: MaskedInputProps) {\r\n super(props);\r\n\r\n let options: any = {\r\n pattern: this.props.mask,\r\n value: this.props.value,\r\n formatCharacters: this.props.formatCharacters\r\n };\r\n\r\n if (this.props.placeholderChar) {\r\n options.placeholderChar = this.props.placeholderChar;\r\n }\r\n\r\n this.mask = new InputMask(options);\r\n }\r\n\r\n componentDidMount() {\r\n this.setInputValue(this._getDisplayValue());\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: MaskedInputProps) {\r\n if (\r\n this.props.mask !== nextProps.mask &&\r\n this.props.value !== nextProps.mask\r\n ) {\r\n // if we get a new value and a new mask at the same time\r\n // check if the mask.value is still the initial value\r\n // - if so use the nextProps value\r\n // - otherwise the `this.mask` has a value for us (most likely from paste action)\r\n if (this.mask.getValue() === this.mask.emptyValue) {\r\n this.mask.setPattern(nextProps.mask, {value: nextProps.value});\r\n } else {\r\n this.mask.setPattern(nextProps.mask, {\r\n value: this.mask.getRawValue()\r\n });\r\n }\r\n } else if (this.props.mask !== nextProps.mask) {\r\n this.mask.setPattern(nextProps.mask, {value: this.mask.getRawValue()});\r\n }\r\n\r\n if (this.props.value !== nextProps.value) {\r\n this.mask.setValue(nextProps.value);\r\n this.setInputValue(this._getDisplayValue());\r\n }\r\n }\r\n\r\n UNSAFE_componentWillUpdate(nextProps: MaskedInputProps) {\r\n if (!this.props.mask) return null;\r\n if (nextProps.mask !== this.props.mask) {\r\n this._updatePattern(nextProps);\r\n }\r\n return;\r\n }\r\n\r\n componentDidUpdate(prevProps: MaskedInputProps) {\r\n if (!this.props.mask) return null;\r\n if (prevProps.mask !== this.props.mask && this.mask.selection.start) {\r\n this._updateInputSelection();\r\n }\r\n return;\r\n }\r\n\r\n _updatePattern(props: MaskedInputProps) {\r\n this.mask.setPattern(props.mask, {\r\n value: this.mask.getRawValue(),\r\n selection: getSelection(this.input)\r\n });\r\n }\r\n\r\n _updateMaskSelection() {\r\n this.mask.selection = getSelection(this.input);\r\n }\r\n\r\n _updateInputSelection() {\r\n setSelection(this.input, this.mask.selection);\r\n }\r\n\r\n _onChange = (e: TChangeEvent) => {\r\n let maskValue = this.mask.getValue();\r\n let incomingValue = e.target.value;\r\n if (incomingValue !== maskValue) {\r\n // only modify mask if form contents actually changed\r\n this._updateMaskSelection();\r\n this.mask.setValue(incomingValue); // write the whole updated value into the mask\r\n this.setInputValue(this._getDisplayValue()); // update the form with pattern applied to the value\r\n this._updateInputSelection();\r\n }\r\n\r\n if (this.props.onChange) {\r\n this.props.onChange(e);\r\n }\r\n };\r\n\r\n _onKeyDown = (e: TKeyboardEvent) => {\r\n setTimeout(() => {\r\n this.input.classList[this.input.value ? 'add' : 'remove']('has-value');\r\n }, 100);\r\n\r\n if (isUndo(e)) {\r\n e.preventDefault();\r\n if (this.mask.undo()) {\r\n this.setInputValue(this._getDisplayValue());\r\n this._updateInputSelection();\r\n if (this.props.onChange) {\r\n this.props.onChange(e as unknown as TChangeEvent);\r\n }\r\n }\r\n return;\r\n } else if (isRedo(e)) {\r\n e.preventDefault();\r\n if (this.mask.redo()) {\r\n this.setInputValue(this._getDisplayValue());\r\n this._updateInputSelection();\r\n if (this.props.onChange) {\r\n this.props.onChange(e as unknown as TChangeEvent);\r\n }\r\n }\r\n return;\r\n }\r\n\r\n if (e.key === 'Backspace') {\r\n e.preventDefault();\r\n this._updateMaskSelection();\r\n if (this.mask.backspace()) {\r\n let value = this._getDisplayValue();\r\n this.setInputValue(value);\r\n if (value) {\r\n this._updateInputSelection();\r\n }\r\n if (this.props.onChange) {\r\n this.props.onChange(e as unknown as TChangeEvent);\r\n }\r\n }\r\n }\r\n };\r\n\r\n _onKeyPress = (e: TKeyboardEvent) => {\r\n // Ignore modified key presses\r\n // Ignore enter key to allow form submission\r\n if (e.metaKey || e.altKey || e.ctrlKey || e.key === 'Enter') {\r\n return;\r\n }\r\n\r\n e.preventDefault();\r\n this._updateMaskSelection();\r\n if (this.mask.input(e.key /*|| e.data*/)) {\r\n this.setInputValue(this.mask.getValue());\r\n this._updateInputSelection();\r\n if (this.props.onChange) {\r\n this.props.onChange(e as unknown as TChangeEvent);\r\n }\r\n }\r\n };\r\n\r\n _onPaste = (e: TClipboardEvent) => {\r\n e.preventDefault();\r\n this._updateMaskSelection();\r\n // getData value needed for IE also works in FF & Chrome\r\n if (this.mask.paste(e.clipboardData.getData('Text'))) {\r\n // @ts-ignore\r\n this.setInputValue(this.mask.getValue());\r\n // Timeout needed for IE\r\n setTimeout(() => this._updateInputSelection(), 0);\r\n if (this.props.onChange) {\r\n // @ts-ignore\r\n this.props.onChange(e);\r\n }\r\n }\r\n };\r\n\r\n _getDisplayValue() {\r\n let value = this.mask.getValue();\r\n return value === this.mask.emptyValue ? '' : value;\r\n }\r\n\r\n _keyPressPropName() {\r\n if (typeof navigator !== 'undefined') {\r\n return navigator.userAgent.match(/Android/i)\r\n ? 'onBeforeInput'\r\n : 'onKeyPress';\r\n }\r\n return 'onKeyPress';\r\n }\r\n\r\n _getEventHandlers(): {\r\n onChange: (e: TChangeEvent) => void;\r\n onKeyDown: (e: TKeyboardEvent) => void;\r\n onPaste: (e: TClipboardEvent) => void;\r\n onBeforeInput?: (e: TChangeEvent) => void;\r\n onKeyPress?: (e: TKeyboardEvent) => void;\r\n } {\r\n return {\r\n onChange: this._onChange,\r\n onKeyDown: this._onKeyDown,\r\n onPaste: this._onPaste,\r\n [this._keyPressPropName()]: this._onKeyPress\r\n };\r\n }\r\n\r\n focus() {\r\n this.input.focus();\r\n }\r\n\r\n blur() {\r\n this.input.blur();\r\n }\r\n\r\n getInputProps = () => {\r\n let maxLength = this.mask.pattern.length;\r\n let eventHandlers = this._getEventHandlers();\r\n let {placeholder = this.mask.emptyValue} = this.props;\r\n\r\n let {placeholderChar, formatCharacters, ...cleanedProps} = this.props;\r\n const props = {...cleanedProps, ...eventHandlers, maxLength, placeholder};\r\n delete props.value;\r\n return props;\r\n };\r\n\r\n _lastValue = null as any;\r\n setInputValue = (value: string) => {\r\n if (!this._Input) return;\r\n if (value === this._lastValue) return;\r\n\r\n this._lastValue = value;\r\n this._Input.setState({value});\r\n this._Input.input.value = value;\r\n };\r\n\r\n _Input: Input | null = null;\r\n handleInputRef = (ref: Input) => {\r\n if (!ref) return;\r\n this._Input = ref;\r\n this.input = ref.input;\r\n\r\n if (\r\n this._lastValue === null &&\r\n typeof this.props.defaultValue === 'string'\r\n ) {\r\n this.mask.setValue(this.props.defaultValue); // write the whole updated value into the mask\r\n this.setInputValue(this._getDisplayValue()); // update the form with pattern applied to the value\r\n }\r\n };\r\n\r\n render() {\r\n return <Input {...this.getInputProps()} ref={this.handleInputRef}/>;\r\n }\r\n}"]}
|
|
1
|
+
{"version":3,"file":"maskedInput.js","sourceRoot":"","sources":["../../../../components/input/maskedInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {ChangeEvent, ClipboardEvent, Component, KeyboardEvent} from 'react';\nimport {Input} from 'antd';\nimport InputMask from 'd2coreui/components/input/mask/inputMaskCore';\nimport {getSelection, isRedo, isUndo, setSelection} from 'd2coreui/components/input/mask/helpers';\nimport {InputProps} from 'antd/lib/input';\n\nexport type MaskedInputProps = InputProps & {\n mask: string;\n formatCharacters?: object;\n placeholderChar?: string;\n value?: string;\n};\n\ntype TChangeEvent = ChangeEvent<HTMLInputElement>;\ntype TKeyboardEvent = KeyboardEvent<HTMLInputElement>;\ntype TClipboardEvent = ClipboardEvent<any>;\n\nexport default class MaskedInput extends Component<MaskedInputProps> {\n mask: InputMask;\n input!: HTMLInputElement;\n\n constructor(props: MaskedInputProps) {\n super(props);\n\n let options: any = {\n pattern: this.props.mask,\n value: this.props.value,\n formatCharacters: this.props.formatCharacters\n };\n\n if (this.props.placeholderChar) {\n options.placeholderChar = this.props.placeholderChar;\n }\n\n this.mask = new InputMask(options);\n }\n\n componentDidMount() {\n this.setInputValue(this._getDisplayValue());\n }\n\n UNSAFE_componentWillReceiveProps(nextProps: MaskedInputProps) {\n if (\n this.props.mask !== nextProps.mask &&\n this.props.value !== nextProps.mask\n ) {\n // if we get a new value and a new mask at the same time\n // check if the mask.value is still the initial value\n // - if so use the nextProps value\n // - otherwise the `this.mask` has a value for us (most likely from paste action)\n if (this.mask.getValue() === this.mask.emptyValue) {\n this.mask.setPattern(nextProps.mask, {value: nextProps.value});\n } else {\n this.mask.setPattern(nextProps.mask, {\n value: this.mask.getRawValue()\n });\n }\n } else if (this.props.mask !== nextProps.mask) {\n this.mask.setPattern(nextProps.mask, {value: this.mask.getRawValue()});\n }\n\n if (this.props.value !== nextProps.value) {\n this.mask.setValue(nextProps.value);\n this.setInputValue(this._getDisplayValue());\n }\n }\n\n UNSAFE_componentWillUpdate(nextProps: MaskedInputProps) {\n if (!this.props.mask) return null;\n if (nextProps.mask !== this.props.mask) {\n this._updatePattern(nextProps);\n }\n return;\n }\n\n componentDidUpdate(prevProps: MaskedInputProps) {\n if (!this.props.mask) return null;\n if (prevProps.mask !== this.props.mask && this.mask.selection.start) {\n this._updateInputSelection();\n }\n return;\n }\n\n _updatePattern(props: MaskedInputProps) {\n this.mask.setPattern(props.mask, {\n value: this.mask.getRawValue(),\n selection: getSelection(this.input)\n });\n }\n\n _updateMaskSelection() {\n this.mask.selection = getSelection(this.input);\n }\n\n _updateInputSelection() {\n setSelection(this.input, this.mask.selection);\n }\n\n _onChange = (e: TChangeEvent) => {\n let maskValue = this.mask.getValue();\n let incomingValue = e.target.value;\n if (incomingValue !== maskValue) {\n // only modify mask if form contents actually changed\n this._updateMaskSelection();\n this.mask.setValue(incomingValue); // write the whole updated value into the mask\n this.setInputValue(this._getDisplayValue()); // update the form with pattern applied to the value\n this._updateInputSelection();\n }\n\n if (this.props.onChange) {\n this.props.onChange(e);\n }\n };\n\n _onKeyDown = (e: TKeyboardEvent) => {\n setTimeout(() => {\n this.input.classList[this.input.value ? 'add' : 'remove']('has-value');\n }, 100);\n\n if (isUndo(e)) {\n e.preventDefault();\n if (this.mask.undo()) {\n this.setInputValue(this._getDisplayValue());\n this._updateInputSelection();\n if (this.props.onChange) {\n this.props.onChange(e as unknown as TChangeEvent);\n }\n }\n return;\n } else if (isRedo(e)) {\n e.preventDefault();\n if (this.mask.redo()) {\n this.setInputValue(this._getDisplayValue());\n this._updateInputSelection();\n if (this.props.onChange) {\n this.props.onChange(e as unknown as TChangeEvent);\n }\n }\n return;\n }\n\n if (e.key === 'Backspace') {\n e.preventDefault();\n this._updateMaskSelection();\n if (this.mask.backspace()) {\n let value = this._getDisplayValue();\n this.setInputValue(value);\n if (value) {\n this._updateInputSelection();\n }\n if (this.props.onChange) {\n this.props.onChange(e as unknown as TChangeEvent);\n }\n }\n }\n };\n\n _onKeyPress = (e: TKeyboardEvent) => {\n // Ignore modified key presses\n // Ignore enter key to allow form submission\n if (e.metaKey || e.altKey || e.ctrlKey || e.key === 'Enter') {\n return;\n }\n\n e.preventDefault();\n this._updateMaskSelection();\n if (this.mask.input(e.key /*|| e.data*/)) {\n this.setInputValue(this.mask.getValue());\n this._updateInputSelection();\n if (this.props.onChange) {\n this.props.onChange(e as unknown as TChangeEvent);\n }\n }\n };\n\n _onPaste = (e: TClipboardEvent) => {\n e.preventDefault();\n this._updateMaskSelection();\n // getData value needed for IE also works in FF & Chrome\n if (this.mask.paste(e.clipboardData.getData('Text'))) {\n // @ts-ignore\n this.setInputValue(this.mask.getValue());\n // Timeout needed for IE\n setTimeout(() => this._updateInputSelection(), 0);\n if (this.props.onChange) {\n // @ts-ignore\n this.props.onChange(e);\n }\n }\n };\n\n _getDisplayValue() {\n let value = this.mask.getValue();\n return value === this.mask.emptyValue ? '' : value;\n }\n\n _keyPressPropName() {\n if (typeof navigator !== 'undefined') {\n return navigator.userAgent.match(/Android/i)\n ? 'onBeforeInput'\n : 'onKeyPress';\n }\n return 'onKeyPress';\n }\n\n _getEventHandlers(): {\n onChange: (e: TChangeEvent) => void;\n onKeyDown: (e: TKeyboardEvent) => void;\n onPaste: (e: TClipboardEvent) => void;\n onBeforeInput?: (e: TChangeEvent) => void;\n onKeyPress?: (e: TKeyboardEvent) => void;\n } {\n return {\n onChange: this._onChange,\n onKeyDown: this._onKeyDown,\n onPaste: this._onPaste,\n [this._keyPressPropName()]: this._onKeyPress\n };\n }\n\n focus() {\n this.input.focus();\n }\n\n blur() {\n this.input.blur();\n }\n\n getInputProps = () => {\n let maxLength = this.mask.pattern.length;\n let eventHandlers = this._getEventHandlers();\n let {placeholder = this.mask.emptyValue} = this.props;\n\n let {placeholderChar, formatCharacters, ...cleanedProps} = this.props;\n const props = {...cleanedProps, ...eventHandlers, maxLength, placeholder};\n delete props.value;\n return props;\n };\n\n _lastValue = null as any;\n setInputValue = (value: string) => {\n if (!this._Input) return;\n if (value === this._lastValue) return;\n\n this._lastValue = value;\n this._Input.setState({value});\n this._Input.input.value = value;\n };\n\n _Input: Input | null = null;\n handleInputRef = (ref: Input) => {\n if (!ref) return;\n this._Input = ref;\n this.input = ref.input;\n\n if (\n this._lastValue === null &&\n typeof this.props.defaultValue === 'string'\n ) {\n this.mask.setValue(this.props.defaultValue); // write the whole updated value into the mask\n this.setInputValue(this._getDisplayValue()); // update the form with pattern applied to the value\n }\n };\n\n render() {\n return <Input {...this.getInputProps()} ref={this.handleInputRef}/>;\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"passwordInput.js","sourceRoot":"","sources":["../../../../components/input/passwordInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAC,oBAAoB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAC,KAAK,EAAC,MAAM,MAAM,CAAC;AAE3B,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiC;IAG9E,YAAY,KAA8B;QACtC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHT,cAAS,GAAe,IAAI,CAAC;QAUrC,YAAO,GAAG,CAAC,OAAgB,EAAE,EAAE;YAC3B,MAAM,YAAY,GAAG,MAAM,QAAS,SAAQ,KAAK,CAAC,SAAmB;gBACjE,MAAM;oBACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC/D,OAAO,CAAC,oBAAC,SAAS,IACd,GAAG,EAAC,eAAe,EACnB,SAAS,EAAC,yBAAyB,EACnC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;;4BAChB,CAAC,CAAC,cAAc,EAAE,CAAC;4BACnB,IAAI,CAAC,OAAO,EAAE;gCACV,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,UAAU,EAAE,GAAG,EAAE;;4BACb,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;;4BACf,CAAC,CAAC,cAAc,EAAE,CAAC;4BACnB,IAAI,CAAC,OAAO,EAAE;gCACV,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,SAAS,EAAE,GAAG,EAAE;;4BACZ,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,YAAY,EAAE,GAAG,EAAE;;4BACf,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,GACH,CAAC,CAAC;gBACR,CAAC;gBAAA,CAAC;aACL,CAAC;YACF,OAAO,oBAAC,YAAY,OAAE,CAAC;QAC3B,CAAC,CAAA;IA5CD,CAAC;IAED,KAAK;;QACD,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,kDAAI,CAAC;IAC9B,CAAC;IA0CD,MAAM;QACF,OAAO,oBAAC,KAAK,CAAC,QAAQ,oBAAK,IAAI,CAAC,KAAK,IAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE;gBACxG,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC/B,CAAC,IAAG,CAAA;IACR,CAAC;CACJ","sourcesContent":["import React from \"react\"\
|
|
1
|
+
{"version":3,"file":"passwordInput.js","sourceRoot":"","sources":["../../../../components/input/passwordInput.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAC,oBAAoB,EAAE,WAAW,EAAC,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAC,KAAK,EAAC,MAAM,MAAM,CAAC;AAE3B,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,KAAK,CAAC,SAAiC;IAG9E,YAAY,KAA8B;QACtC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHT,cAAS,GAAe,IAAI,CAAC;QAUrC,YAAO,GAAG,CAAC,OAAgB,EAAE,EAAE;YAC3B,MAAM,YAAY,GAAG,MAAM,QAAS,SAAQ,KAAK,CAAC,SAAmB;gBACjE,MAAM;oBACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,oBAAoB,CAAC;oBAC/D,OAAO,CAAC,oBAAC,SAAS,IACd,GAAG,EAAC,eAAe,EACnB,SAAS,EAAC,yBAAyB,EACnC,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE;;4BAChB,CAAC,CAAC,cAAc,EAAE,CAAC;4BACnB,IAAI,CAAC,OAAO,EAAE;gCACV,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,UAAU,EAAE,GAAG,EAAE;;4BACb,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,WAAW,EAAE,CAAC,CAAC,EAAE,EAAE;;4BACf,CAAC,CAAC,cAAc,EAAE,CAAC;4BACnB,IAAI,CAAC,OAAO,EAAE;gCACV,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,SAAS,EAAE,GAAG,EAAE;;4BACZ,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,EACD,YAAY,EAAE,GAAG,EAAE;;4BACf,IAAI,OAAO,EAAE;gCACT,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,OAAO,kDAAI,CAAC;6BAC1B;wBACL,CAAC,GACH,CAAC,CAAC;gBACR,CAAC;gBAAA,CAAC;aACL,CAAC;YACF,OAAO,oBAAC,YAAY,OAAE,CAAC;QAC3B,CAAC,CAAA;IA5CD,CAAC;IAED,KAAK;;QACD,MAAA,MAAA,IAAI,CAAC,SAAS,0CAAE,KAAK,kDAAI,CAAC;IAC9B,CAAC;IA0CD,MAAM;QACF,OAAO,oBAAC,KAAK,CAAC,QAAQ,oBAAK,IAAI,CAAC,KAAK,IAAE,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE;gBACxG,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC/B,CAAC,IAAG,CAAA;IACR,CAAC;CACJ","sourcesContent":["import React from \"react\"\nimport {PasswordProps} from \"antd/lib/input/Password\";\nimport {EyeInvisibleOutlined, EyeOutlined} from \"@ant-design/icons\";\nimport {Input} from \"antd\";\n\nexport default class PasswordInput extends React.Component<PasswordProps, unknown> {\n private component: any | null = null;\n\n constructor(props: Readonly<PasswordProps>) {\n super(props);\n }\n\n focus() {\n this.component?.focus?.();\n }\n\n getIcon = (visible: boolean) => {\n const IconRenderer = class IconRend extends React.Component<any, any> {\n render() {\n const IconClass = visible ? EyeOutlined : EyeInvisibleOutlined;\n return (<IconClass\n key=\"password-icon\"\n className=\"ant-input-password-icon\"\n onTouchStart={(e) => {\n e.preventDefault();\n if (!visible) {\n this.props.onClick?.();\n }\n }}\n onTouchEnd={() => {\n if (visible) {\n this.props.onClick?.();\n }\n }}\n onMouseDown={(e) => {\n e.preventDefault();\n if (!visible) {\n this.props.onClick?.();\n }\n }}\n onMouseUp={() => {\n if (visible) {\n this.props.onClick?.();\n }\n }}\n onMouseLeave={() => {\n if (visible) {\n this.props.onClick?.();\n }\n }}\n />);\n };\n };\n return <IconRenderer/>;\n }\n\n render() {\n return <Input.Password {...this.props} iconRender={this.getIcon} visibilityToggle={true} ref={(component) => {\n this.component = component;\n }}/>\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simpleAutoComplete.js","sourceRoot":"","sources":["../../../../components/input/simpleAutoComplete.tsx"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,YAAY,EAAE,KAAK,EAAC,MAAM,MAAM,CAAC;AACzC,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAO/C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,KAAK,CAAC,SAAqD;IAIvG,YAAY,KAAkC;QAC1C,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACT,MAAM,EAAE,KAAK;SAChB,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK;;QACD,MAAA,IAAI,CAAC,YAAY,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;IACvC,CAAC;IAED,MAAM;QACF,IAAI,KAAqC,IAAI,CAAC,KAAK,EAA/C,EAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,OAAuB,EAAlB,IAAI,cAAjC,+BAAkC,CAAa,CAAC;QACpD,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACjF,OAAO,CACH,oBAAC,YAAY,kBACT,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EACvD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EACzC,KAAK,EAAE,EAAC,KAAK,EAAE,GAAG,EAAC,EACnB,WAAW,EAAE,KAAK,EAClB,wBAAwB,EAAE,KAAK,EAC/B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,CAAC,IACG,IAAI;YAER,oBAAC,KAAK,IACF,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,CAAC,QAAQ,EACrB,MAAM,EACF,oBAAoB,IAAI,8BAAM,SAAS,EAAC,gBAAgB;oBACpD,oBAAC,YAAY,IACT,SAAS,EAAC,0CAA0C,EACpD,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC,EAC1B,OAAO,EAAE,GAAG,EAAE;4BACV,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gCACtB,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAC,CAAC,CAAC;6BAC/C;wBACL,CAAC,GAAG,CACD,EAEf,QAAQ,EAAE,QAAQ,GAAI,CACf,CAClB,CAAC;IACN,CAAC;CACJ","sourcesContent":["import {AutoCompleteProps} from \"antd/es/auto-complete\";\
|
|
1
|
+
{"version":3,"file":"simpleAutoComplete.js","sourceRoot":"","sources":["../../../../components/input/simpleAutoComplete.tsx"],"names":[],"mappings":";;;;;;;;;;;AACA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,YAAY,EAAE,KAAK,EAAC,MAAM,MAAM,CAAC;AACzC,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAC;AAO/C,MAAM,CAAC,OAAO,OAAO,kBAAmB,SAAQ,KAAK,CAAC,SAAqD;IAIvG,YAAY,KAAkC;QAC1C,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG;YACT,MAAM,EAAE,KAAK;SAChB,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAED,KAAK;;QACD,MAAA,IAAI,CAAC,YAAY,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;IACvC,CAAC;IAED,MAAM;QACF,IAAI,KAAqC,IAAI,CAAC,KAAK,EAA/C,EAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,OAAuB,EAAlB,IAAI,cAAjC,+BAAkC,CAAa,CAAC;QACpD,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACjF,OAAO,CACH,oBAAC,YAAY,kBACT,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EACvD,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EACzC,KAAK,EAAE,EAAC,KAAK,EAAE,GAAG,EAAC,EACnB,WAAW,EAAE,KAAK,EAClB,wBAAwB,EAAE,KAAK,EAC/B,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,GAAG,EAAE;gBACX,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,CAAC,EACD,MAAM,EAAE,GAAG,EAAE;gBACT,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;YACnC,CAAC,IACG,IAAI;YAER,oBAAC,KAAK,IACF,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,CAAC,QAAQ,EACrB,MAAM,EACF,oBAAoB,IAAI,8BAAM,SAAS,EAAC,gBAAgB;oBACpD,oBAAC,YAAY,IACT,SAAS,EAAC,0CAA0C,EACpD,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,CAAC,EAC1B,OAAO,EAAE,GAAG,EAAE;4BACV,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;gCACtB,IAAI,CAAC,QAAQ,CAAC,EAAC,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAC,CAAC,CAAC;6BAC/C;wBACL,CAAC,GAAG,CACD,EAEf,QAAQ,EAAE,QAAQ,GAAI,CACf,CAClB,CAAC;IACN,CAAC;CACJ","sourcesContent":["import {AutoCompleteProps} from \"antd/es/auto-complete\";\nimport React from \"react\";\nimport {AutoComplete, Input} from \"antd\";\nimport {DownOutlined} from \"@ant-design/icons\";\nimport {RefSelectProps} from \"antd/es/select\";\n\ninterface SimpleAutoCompleteState {\n opened: boolean\n}\n\nexport default class SimpleAutoComplete extends React.Component<AutoCompleteProps, SimpleAutoCompleteState> {\n\n private autocomplete: React.RefObject<RefSelectProps>;\n\n constructor(props: Readonly<AutoCompleteProps>) {\n super(props);\n this.state = {\n opened: false,\n };\n\n this.autocomplete = React.createRef();\n this.focus = this.focus.bind(this);\n }\n\n focus() {\n this.autocomplete.current?.focus();\n }\n\n render() {\n let {disabled, options, size, ...rest} = this.props;\n const searchHistoryPresent = this.props.options && this.props.options.length > 0;\n return (\n <AutoComplete\n className={this.state.opened ? \"autocomplete-open\" : \"\"}\n options={this.state.opened ? options : []}\n style={{width: 200}}\n defaultOpen={false}\n defaultActiveFirstOption={false}\n disabled={disabled}\n onSelect={() => {\n this.setState({opened: false});\n }}\n onBlur={() => {\n this.setState({opened: false});\n }}\n {...rest}\n >\n <Input\n size={size}\n allowClear={!disabled}\n suffix={\n searchHistoryPresent && <span className=\"dropdown-arrow\">\n <DownOutlined\n className=\"dropdown-arrow-icon ant-input-clear-icon\"\n role=\"button\" tabIndex={-1}\n onClick={() => {\n if (!this.props.disabled) {\n this.setState({opened: !this.state.opened});\n }\n }}/>\n </span>\n }\n disabled={disabled} />\n </AutoComplete>\n );\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extractSpansOfClasses.js","sourceRoot":"","sources":["../../../../../components/input/textarea/extractSpansOfClasses.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\
|
|
1
|
+
{"version":3,"file":"extractSpansOfClasses.js","sourceRoot":"","sources":["../../../../../components/input/textarea/extractSpansOfClasses.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react';\n\nclass Span {\n beginIndex: number\n endIndex: number\n text: string\n isMark: boolean\n markClasses: Set<string>\n\n constructor(text:string, beginIndex:number) {\n this.beginIndex = beginIndex;\n this.endIndex = beginIndex + text.length; // Like String.slice, it is inclusive.\n this.text = text;\n this.isMark = false;\n this.markClasses = new Set();\n }\n\n setMark(className: string) {\n this.isMark = true;\n if (className) {\n for (let c of className.split(' ')) {\n this.markClasses.add(c);\n }\n }\n }\n\n carve(beginIndex2: number) {\n // Carves self to take a bit off the right and returns that carving.\n let rightText = this.text.slice(beginIndex2 - this.beginIndex);\n this.text = this.text.slice(0, beginIndex2 - this.beginIndex);\n this.endIndex = beginIndex2;\n\n let right = new Span(rightText, beginIndex2);\n right.isMark = this.isMark;\n right.markClasses = new Set([...this.markClasses]);\n\n return right;\n }\n\n get className() {\n if (this.markClasses && this.markClasses.size > 0) {\n return [...this.markClasses].sort().join(\" \");\n } else {\n return \"\";\n }\n }\n\n render() {\n if (this.isMark) {\n let className = this.className;\n if (className) {\n return(\n <mark key={this.beginIndex} className={className} title={this.text}>\n {this.text}\n </mark>\n );\n } else {\n return(<mark key={this.beginIndex} title={this.text}>{this.text}</mark>);\n }\n } else {\n return(<span key={this.beginIndex} title={this.text}>{this.text}</span>);\n }\n }\n}\n\nexport default function extractSpansOfClasses(value:string, ranges:number[][]) {\n /* Returns value broken into a series of Span classes. These\n * can be converted to JSX via the render command.\n */\n \n let spans = [new Span(value, 0)];\n\n for (let range of ranges) {\n let beginIndex = range[0];\n let endIndex = range[1];\n let className = (range as any).className as string;\n\n for (let i = 0; i < spans.length; i++) {\n let span = spans[i];\n\n // since spans are sorted, So this is always true: beginIndex >= span.beginIndex.\n if (beginIndex < span.endIndex) {\n if (beginIndex == span.beginIndex) {\n if (endIndex < span.endIndex) {\n // [range]\n // [s p a n]\n let span2 = span.carve(endIndex);\n span.setMark(className);\n spans.splice(i + 1, 0, span2);\n beginIndex = endIndex;\n i += 1;\n } else {\n // [range] or [r a n g e]\n // [span-] [span]\n span.setMark(className);\n beginIndex = span.endIndex;\n }\n } else {\n if (endIndex < span.endIndex) {\n // [range]\n // [s p a n]\n let span2 = span.carve(beginIndex);\n let span3 = span2.carve(endIndex);\n span2.setMark(className);\n spans.splice(i + 1, 0, span2, span3);\n beginIndex = endIndex;\n i += 2;\n } else {\n // [range] or [range]\n // [s p a n] [span]\n let span2 = span.carve(beginIndex);\n span2.setMark(className);\n spans.splice(i + 1, 0, span2);\n beginIndex = span2.endIndex;\n i += 1;\n }\n }\n }\n if (beginIndex == endIndex) {\n break;\n }\n }\n }\n return spans;\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getRanges.js","sourceRoot":"","sources":["../../../../../components/input/textarea/getRanges.ts"],"names":[],"mappings":"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","sourcesContent":["import getType from './getType';\
|
|
1
|
+
{"version":3,"file":"getRanges.js","sourceRoot":"","sources":["../../../../../components/input/textarea/getRanges.ts"],"names":[],"mappings":"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","sourcesContent":["import getType from './getType';\n\nexport default function getRanges(input: any, highlight: any): number[][] {\n let type = getType(highlight);\n switch (type) {\n case 'array':\n return getArrayRanges(input, highlight);\n case 'function':\n return getFunctionRanges(input, highlight);\n case 'regexp':\n return getRegExpRanges(input, highlight);\n case 'string':\n return getStringRanges(input, highlight);\n case 'range':\n return getRangeRanges(input, highlight);\n case 'custom':\n return getCustomRanges(input, highlight);\n default:\n if (!highlight) {\n // do nothing for falsey values\n return [];\n } else {\n console.error('unrecognized highlight type');\n return [];\n }\n }\n}\n\nfunction getArrayRanges(input: any[], arr: any[]): number[][] {\n let ranges = arr.map(getRanges.bind(null, input));\n return Array.prototype.concat.apply([], ranges);\n}\n\nfunction getFunctionRanges(input: string, func: (input: string) => string): number[][] {\n return getRanges(input, func(input));\n}\n\nfunction getRegExpRanges(input: string, regex: RegExp) {\n let ranges = [];\n let match;\n while (match = regex.exec(input), match !== null) {\n ranges.push([match.index, match.index + match[0].length]);\n if (!regex.global) {\n // non-global regexes do not increase lastIndex, causing an infinite loop,\n // but we can just break manually after the first match\n break;\n }\n }\n return ranges;\n}\n\nfunction getStringRanges(input: string, str: string): number[][] {\n let ranges = [];\n let inputLower = input.toLowerCase();\n let strLower = str.toLowerCase();\n let index = 0;\n while (index = inputLower.indexOf(strLower, index), index !== -1) {\n ranges.push([index, index + strLower.length]);\n index += strLower.length;\n }\n return ranges;\n}\n\nfunction getRangeRanges(_input: string, range: number[]): number[][] {\n return [range];\n}\n\nfunction getCustomRanges(input: string, custom: { className?: string, highlight: any }): number[][] {\n let ranges = getRanges(input, custom.highlight);\n if (custom.className) {\n ranges.forEach(function (range) {\n // persist class name as a property of the array\n let customRange = range as any;\n if (customRange.className) {\n customRange.className = custom.className + ' ' + customRange.className;\n } else {\n customRange.className = custom.className;\n }\n });\n }\n return ranges;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getType.js","sourceRoot":"","sources":["../../../../../components/input/textarea/getType.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,QAAY;IACxC,IAAI,IAAI,GAAG,OAAO,QAAQ,CAAC;IAC3B,IAAI,CAAC,QAAQ,EAAE;QACX,OAAO,QAAQ,CAAC;KACnB;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC7F,OAAO,OAAO,CAAC;SAClB;aAAM;YACH,OAAO,OAAO,CAAC;SAClB;KACJ;SAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;QAC1B,IAAI,QAAQ,YAAY,MAAM,EAAE;YAC5B,OAAO,QAAQ,CAAC;SACnB;aAAM,IAAI,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;YAC7C,OAAO,QAAQ,CAAC;SACnB;KACJ;SAAM,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,EAAE;QACjD,OAAO,IAAI,CAAC;KACf;IAED,OAAO,OAAO,CAAC;AACnB,CAAC","sourcesContent":["// returns identifier strings that aren't necessarily \"real\" JavaScript types\
|
|
1
|
+
{"version":3,"file":"getType.js","sourceRoot":"","sources":["../../../../../components/input/textarea/getType.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,QAAY;IACxC,IAAI,IAAI,GAAG,OAAO,QAAQ,CAAC;IAC3B,IAAI,CAAC,QAAQ,EAAE;QACX,OAAO,QAAQ,CAAC;KACnB;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAChC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;YAC7F,OAAO,OAAO,CAAC;SAClB;aAAM;YACH,OAAO,OAAO,CAAC;SAClB;KACJ;SAAM,IAAI,IAAI,KAAK,QAAQ,EAAE;QAC1B,IAAI,QAAQ,YAAY,MAAM,EAAE;YAC5B,OAAO,QAAQ,CAAC;SACnB;aAAM,IAAI,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;YAC7C,OAAO,QAAQ,CAAC;SACnB;KACJ;SAAM,IAAI,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,QAAQ,EAAE;QACjD,OAAO,IAAI,CAAC;KACf;IAED,OAAO,OAAO,CAAC;AACnB,CAAC","sourcesContent":["// returns identifier strings that aren't necessarily \"real\" JavaScript types\nexport default function getType(instance:any):string {\n let type = typeof instance;\n if (!instance) {\n return 'falsey';\n } else if (Array.isArray(instance)) {\n if (instance.length === 2 && typeof instance[0] === 'number' && typeof instance[1] === 'number') {\n return 'range';\n } else {\n return 'array';\n }\n } else if (type === 'object') {\n if (instance instanceof RegExp) {\n return 'regexp';\n } else if (instance.hasOwnProperty('highlight')) {\n return 'custom';\n }\n } else if (type === 'function' || type === 'string') {\n return type;\n }\n\n return 'other';\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"highlighedContents.js","sourceRoot":"","sources":["../../../../../components/input/textarea/highlighedContents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAG5D,MAAM,kBAAkB,GAAG,CAAC,EAAC,KAAK,EAAE,SAAS,EAAC,EAAE,EAAE;IAE9C,IAAI,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzC,IAAI,KAAK,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEjD,OAAO,CACH;QACI,6BAAK,SAAS,EAAE,wCAAwC,IACnD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAC9B,CACL,CACT,CAAC;AACN,CAAC,CAAA;AAED,eAAe,kBAAkB,CAAA","sourcesContent":["import React from 'react';\
|
|
1
|
+
{"version":3,"file":"highlighedContents.js","sourceRoot":"","sources":["../../../../../components/input/textarea/highlighedContents.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAG5D,MAAM,kBAAkB,GAAG,CAAC,EAAC,KAAK,EAAE,SAAS,EAAC,EAAE,EAAE;IAE9C,IAAI,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACzC,IAAI,KAAK,GAAG,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEjD,OAAO,CACH;QACI,6BAAK,SAAS,EAAE,wCAAwC,IACnD,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAC9B,CACL,CACT,CAAC;AACN,CAAC,CAAA;AAED,eAAe,kBAAkB,CAAA","sourcesContent":["import React from 'react';\nimport getRanges from './getRanges';\nimport extractSpansOfClasses from './extractSpansOfClasses';\n\n// @ts-ignore\nconst HighlighedContents = ({value, highlight}) => {\n \n let ranges = getRanges(value, highlight);\n let parts = extractSpansOfClasses(value, ranges);\n\n return (\n <div>\n <div className={`highlight-highlights highlight-content`} >\n {parts.map(part => part.render())}\n </div>\n </div>\n ); \n}\n\nexport default HighlighedContents"]}
|
|
@@ -44,7 +44,7 @@ export class MentionsWithHighlighting extends React.Component {
|
|
|
44
44
|
}
|
|
45
45
|
render() {
|
|
46
46
|
let _a = this.props, { value, onChange, highlight = {}, className = "", style = {}, containerStyle = {}, containerClassName = "", onScroll } = _a, restProps = __rest(_a, ["value", "onChange", "highlight", "className", "style", "containerStyle", "containerClassName", "onScroll"]);
|
|
47
|
-
className = `highlight-input highlight-content ${className}`;
|
|
47
|
+
className = `highlight-input ${!this.props.disabled ? "highlight-content" : ""} ${className}`;
|
|
48
48
|
containerClassName = `highlight-container ${containerClassName}`;
|
|
49
49
|
style.resize = "none";
|
|
50
50
|
style.wordWrap = "break-word";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mentionsWithHighlighting.js","sourceRoot":"","sources":["../../../../../components/input/textarea/mentionsWithHighlighting.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,2BAA2B,CAAC;AACnC,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAC;AA8B9B,MAAM,OAAO,wBAAyB,SAAQ,KAAK,CAAC,SAAuE;IAIvH,YAAY,KAA8C;;QACtD,KAAK,CAAC,KAAK,CAAC,CAAC;QAJjB,sBAAiB,GAAe,IAAI,CAAC;QACrC,sBAAiB,GAA0B,IAAI,CAAC;QAShD,iBAAY,GAAG,GAAG,EAAE;YAChB,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBACxB,IAAI,IAAI,CAAC,iBAAiB,EAAE;oBACxB,MAAM,QAAQ,GAAI,IAAI,CAAC,iBAAyB,CAAC,QAA+B,CAAA;oBAChF,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;oBACtD,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;iBAC3D;aACJ;QACL,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAEzB,IAAI,KAAK,IAAI,SAAS,EAAE;gBACpB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;aAChC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC,CAAC;QACtC,CAAC,CAAC;QArBE,IAAI,CAAC,KAAK,GAAG;YACT,SAAS,EAAE,MAAA,KAAK,CAAC,KAAK,mCAAI,EAAE;SAC/B,CAAA;IACL,CAAC;IAoBD,IAAI,QAAQ;;QACR,OAAO,MAAC,IAAI,CAAC,iBAAyB,0CAAE,QAA+B,CAAC;IAC5E,CAAC;IAED,MAAM;QACF,IAAI,KAAsI,IAAI,CAAC,KAAK,EAAhJ,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,cAAc,GAAG,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,QAAQ,OAA4B,EAAvB,SAAS,cAAlI,4GAAmI,CAAa,CAAC;QAErJ,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"mentionsWithHighlighting.js","sourceRoot":"","sources":["../../../../../components/input/textarea/mentionsWithHighlighting.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAC3C,OAAO,2BAA2B,CAAC;AACnC,OAAO,kBAAkB,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAC;AA8B9B,MAAM,OAAO,wBAAyB,SAAQ,KAAK,CAAC,SAAuE;IAIvH,YAAY,KAA8C;;QACtD,KAAK,CAAC,KAAK,CAAC,CAAC;QAJjB,sBAAiB,GAAe,IAAI,CAAC;QACrC,sBAAiB,GAA0B,IAAI,CAAC;QAShD,iBAAY,GAAG,GAAG,EAAE;YAChB,IAAI,IAAI,CAAC,iBAAiB,EAAE;gBACxB,IAAI,IAAI,CAAC,iBAAiB,EAAE;oBACxB,MAAM,QAAQ,GAAI,IAAI,CAAC,iBAAyB,CAAC,QAA+B,CAAA;oBAChF,IAAI,CAAC,iBAAiB,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;oBACtD,IAAI,CAAC,iBAAiB,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;iBAC3D;aACJ;QACL,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;YAEzB,IAAI,KAAK,IAAI,SAAS,EAAE;gBACpB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;aAChC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAC,SAAS,EAAE,KAAK,EAAC,CAAC,CAAC;QACtC,CAAC,CAAC;QArBE,IAAI,CAAC,KAAK,GAAG;YACT,SAAS,EAAE,MAAA,KAAK,CAAC,KAAK,mCAAI,EAAE;SAC/B,CAAA;IACL,CAAC;IAoBD,IAAI,QAAQ;;QACR,OAAO,MAAC,IAAI,CAAC,iBAAyB,0CAAE,QAA+B,CAAC;IAC5E,CAAC;IAED,MAAM;QACF,IAAI,KAAsI,IAAI,CAAC,KAAK,EAAhJ,EAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,cAAc,GAAG,EAAE,EAAE,kBAAkB,GAAG,EAAE,EAAE,QAAQ,OAA4B,EAAvB,SAAS,cAAlI,4GAAmI,CAAa,CAAC;QAErJ,SAAS,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAA,CAAC,CAAC,EAAE,IAAI,SAAS,EAAE,CAAC;QAC7F,kBAAkB,GAAG,uBAAuB,kBAAkB,EAAE,CAAC;QAGjE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,KAAK,CAAC,QAAQ,GAAG,YAAY,CAAC;QAI9B,OAAO,CACH,6BAAK,SAAS,EAAE,kBAAkB,EAAE,KAAK,EAAE,cAAc;YACrD,6BAAK,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,CAAC,SAAS,EAAC,EAAE;oBACpD,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;gBACvC,CAAC;gBACG,oBAAC,kBAAkB,IAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,GAAG,CACvD;YACN,oBAAC,QAAQ,kBAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,oBAAM,KAAK,GAAG,SAAS,EAAE,SAAS,IAAM,SAAS,IACxF,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE;oBAC5C,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAA;gBAChD,CAAC,IACU,CACT,CACT,CAAC;IACN,CAAC;CACJ","sourcesContent":["import React, {CSSProperties} from 'react';\nimport './highlightedTextarea.css';\nimport HighlighedContents from './highlighedContents';\nimport {MentionProps} from \"antd/lib/mentions\";\nimport {Mentions} from \"antd\";\n\nexport interface HighlightItem {\n highlight: HighlightType\n className: string\n}\n\nexport type AssignHighlightFunction = (value: string) => HighlightType;\nexport type HighlightType =\n boolean\n | string\n | RegExp\n | [number, number]\n | HighlightType[]\n | AssignHighlightFunction\n | HighlightItem[];\n\ninterface MentionsWithHighlightingProps extends MentionProps {\n highlight?: HighlightType\n containerStyle?: CSSProperties\n containerClassName?: string\n}\n\ninterface MentionsWithHighlightingState {\n fakeValue: string\n}\n\n/**\n * Merged antd Mentions component with code from https://github.com/bonafideduck/react-highlight-within-textarea\n */\nexport class MentionsWithHighlighting extends React.Component<MentionsWithHighlightingProps, MentionsWithHighlightingState> {\n mentionsComponent: any | null = null;\n backdropComponent: HTMLDivElement | null = null;\n\n constructor(props: Readonly<MentionsWithHighlightingProps>) {\n super(props);\n this.state = {\n fakeValue: props.value ?? \"\"\n }\n }\n\n handleScroll = () => {\n if (this.backdropComponent) {\n if (this.mentionsComponent) {\n const textArea = (this.mentionsComponent as any).textarea as HTMLTextAreaElement\n this.backdropComponent.scrollTop = textArea.scrollTop;\n this.backdropComponent.scrollLeft = textArea.scrollLeft;\n }\n }\n };\n\n onChange = (value?:string) => {\n // To properly work, value and onChange must be supplied. Give a hint for new users.\n if (value == undefined) {\n value = this.state.fakeValue;\n }\n this.setState({fakeValue: value});\n };\n\n get textarea() : HTMLTextAreaElement | undefined {\n return (this.mentionsComponent as any)?.textarea as HTMLTextAreaElement;\n }\n\n render() {\n let {value, onChange, highlight = {}, className = \"\", style = {}, containerStyle = {}, containerClassName = \"\", onScroll, ...restProps} = this.props;\n\n className = `highlight-input ${!this.props.disabled ? \"highlight-content\": \"\"} ${className}`;\n containerClassName = `highlight-container ${containerClassName}`;\n\n // Resizing is currently not supported\n style.resize = \"none\";\n style.wordWrap = \"break-word\";\n\n\n\n return (\n <div className={containerClassName} style={containerStyle}>\n <div className={\"highlight-backdrop\"} ref={(component)=> {\n this.backdropComponent = component;\n }}>\n <HighlighedContents value={value} highlight={highlight}/>\n </div>\n <Mentions value={value} onChange={onChange} style={{...style}} className={className} {...restProps}\n onScroll={this.handleScroll} ref={(component) => {\n this.mentionsComponent = component\n }}>\n </Mentions>\n </div>\n );\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keyboardUtils.js","sourceRoot":"","sources":["../../../../components/keyboard/keyboardUtils.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAQ,EAAE,CAAC;AAC5B,IAAI,SAAS,GAAW,CAAC,CAAC;AAE1B,SAAS,OAAO,CAAC,CAAgB;IAC7B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,KAAK,CAAC,CAAgB;IAC3B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC/B,CAAC;AAED,SAAS,KAAK;IACV,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC7B,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,WAAW;IAChB,SAAS,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,SAAS;IACd,SAAS,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC5C,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACxC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACvC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAClD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,YAAY,CAAC,GAAQ;QACxB,OAAO,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,WAAW;QACd,OAAO,SAAS,GAAG,CAAC,CAAC;IACzB,CAAC;CACJ","sourcesContent":["import {Key} from \"ts-key-enum\";\
|
|
1
|
+
{"version":3,"file":"keyboardUtils.js","sourceRoot":"","sources":["../../../../components/keyboard/keyboardUtils.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,GAAQ,EAAE,CAAC;AAC5B,IAAI,SAAS,GAAW,CAAC,CAAC;AAE1B,SAAS,OAAO,CAAC,CAAgB;IAC7B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;AAC9B,CAAC;AAED,SAAS,KAAK,CAAC,CAAgB;IAC3B,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAC/B,CAAC;AAED,SAAS,KAAK;IACV,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC7B,CAAC,CAAC,CAAC;AACP,CAAC;AAED,SAAS,WAAW;IAChB,SAAS,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,SAAS;IACd,SAAS,EAAE,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC5C,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACxC,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACvC,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AAClD,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,YAAY,CAAC,GAAQ;QACxB,OAAO,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,WAAW;QACd,OAAO,SAAS,GAAG,CAAC,CAAC;IACzB,CAAC;CACJ","sourcesContent":["import {Key} from \"ts-key-enum\";\n\nconst pressedKeys: any = {};\nlet mouseDown: number = 0;\n\nfunction keyDown(e: KeyboardEvent) {\n pressedKeys[e.key] = true;\n}\n\nfunction keyUp(e: KeyboardEvent) {\n pressedKeys[e.key] = false;\n}\n\nfunction reset() {\n Object.keys(pressedKeys).forEach((key) => {\n pressedKeys[key] = false;\n });\n}\n\nfunction onMouseDown() {\n mouseDown++;\n}\n\nfunction onMouseUp() {\n mouseDown--;\n}\n\nwindow.addEventListener(\"keydown\", keyDown);\nwindow.addEventListener(\"keyup\", keyUp);\nwindow.addEventListener(\"blur\", reset);\nwindow.addEventListener(\"mousedown\", onMouseDown);\nwindow.addEventListener(\"mouseup\", onMouseUp);\n\nexport default class KeyboardUtils {\n static isKeyPressed(key: Key): boolean {\n return !!pressedKeys[key];\n }\n\n static isMouseDown() :boolean {\n return mouseDown > 0;\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draggableModalProvider.js","sourceRoot":"","sources":["../../../../components/modal/draggableModalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAC,SAAS,EAAE,UAAU,EAAC,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAC,qBAAqB,EAAC,MAAM,sDAAsD,CAAA;AAC1F,OAAO,EAAC,aAAa,EAAC,MAAM,8CAA8C,CAAA;AAC1E,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,sDAAsD,CAAA;AAE9G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACnC,QAAQ,GAGX,EAAsB,EAAE;IACrB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAA;IAE/E,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAE5B,OAAO;SACV;QACD,MAAM,QAAQ,GAAG,GAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;QACtF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC3C,QAAQ,EAAE,CAAA;QACV,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,CACH,oBAAC,qBAAqB,CAAC,QAAQ,IAC3B,KAAK,EAAE;YACH,KAAK;YACL,QAAQ;SACX,IAEA,QAAQ,CACoB,CACpC,CAAA;AACL,CAAC,CAAA","sourcesContent":["import * as React from 'react'\
|
|
1
|
+
{"version":3,"file":"draggableModalProvider.js","sourceRoot":"","sources":["../../../../components/modal/draggableModalProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAC,SAAS,EAAE,UAAU,EAAC,MAAM,OAAO,CAAA;AAC3C,OAAO,EAAC,qBAAqB,EAAC,MAAM,sDAAsD,CAAA;AAC1F,OAAO,EAAC,aAAa,EAAC,MAAM,8CAA8C,CAAA;AAC1E,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,sDAAsD,CAAA;AAE9G,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACnC,QAAQ,GAGX,EAAsB,EAAE;IACrB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,UAAU,CAAC,qBAAqB,EAAE,kBAAkB,CAAC,CAAA;IAE/E,SAAS,CAAC,GAAG,EAAE;QACX,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAE5B,OAAO;SACV;QACD,MAAM,QAAQ,GAAG,GAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;QACtF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAC3C,QAAQ,EAAE,CAAA;QACV,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC/D,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,OAAO,CACH,oBAAC,qBAAqB,CAAC,QAAQ,IAC3B,KAAK,EAAE;YACH,KAAK;YACL,QAAQ;SACX,IAEA,QAAQ,CACoB,CACpC,CAAA;AACL,CAAC,CAAA","sourcesContent":["import * as React from 'react'\nimport {useEffect, useReducer} from 'react'\nimport {DraggableModalContext} from 'd2coreui/components/modal/impl/draggableModalContext'\nimport {getWindowSize} from 'd2coreui/components/modal/impl/getWindowSize'\nimport {draggableModalReducer, initialModalsState} from 'd2coreui/components/modal/impl/draggableModalReducer'\n\nexport const DraggableModalProvider = ({\n children,\n}: {\n children: React.ReactNode\n}): React.ReactElement => {\n const [state, dispatch] = useReducer(draggableModalReducer, initialModalsState)\n\n useEffect(() => {\n if (typeof window !== 'object') {\n // @ts-ignore\n return;\n }\n const onResize = (): void => dispatch({ type: 'windowResize', size: getWindowSize() })\n window.addEventListener('resize', onResize)\n onResize()\n return () => window.removeEventListener('resize', onResize)\n }, [dispatch])\n\n return (\n <DraggableModalContext.Provider\n value={{\n state,\n dispatch,\n }}\n >\n {children}\n </DraggableModalContext.Provider>\n )\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../../../../components/modal/impl/clamp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,KAAa,EAAU,EAAE,CACrE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC","sourcesContent":["export const clamp = (min: number, max: number, value: number): number =>\
|
|
1
|
+
{"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../../../../components/modal/impl/clamp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,GAAW,EAAE,GAAW,EAAE,KAAa,EAAU,EAAE,CACrE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC","sourcesContent":["export const clamp = (min: number, max: number, value: number): number =>\n Math.max(min, Math.min(max, value));\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draggableModal.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,OAAO,CAAA;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAA;AAChC,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAA;AAE7D,OAAO,yCAAyC,CAAA;AAShD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAsB,EAAE;IAE7E,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAGpB,MAAM,aAAa,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACxD,IAAI,CAAC,aAAa,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;KACjC;IAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAC,GAAG,aAAa,CAAC;IACxC,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAK7F,OAAO,oBAAC,mBAAmB,kBAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAM,KAAK,EAAI,CAAA;AACjG,CAAC,CAAC","sourcesContent":["import * as React from 'react'\
|
|
1
|
+
{"version":3,"file":"draggableModal.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,OAAO,CAAA;AAChC,OAAO,EAAC,MAAM,EAAC,MAAM,WAAW,CAAA;AAChC,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAA;AAC7D,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,qBAAqB,EAAC,MAAM,yBAAyB,CAAA;AAE7D,OAAO,yCAAyC,CAAA;AAShD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAA0B,EAAsB,EAAE;IAE7E,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC;IAGpB,MAAM,aAAa,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IACxD,IAAI,CAAC,aAAa,EAAE;QAChB,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;KACjC;IAED,MAAM,EAAC,QAAQ,EAAE,KAAK,EAAC,GAAG,aAAa,CAAC;IACxC,MAAM,UAAU,GAAG,qBAAqB,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAK7F,OAAO,oBAAC,mBAAmB,kBAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAM,KAAK,EAAI,CAAA;AACjG,CAAC,CAAC","sourcesContent":["import * as React from 'react'\nimport {useContext} from 'react'\nimport {useUID} from 'react-uid'\nimport {DraggableModalContext} from './draggableModalContext'\nimport {DraggableModalInner} from './draggableModalInner'\nimport {getOrCreateModalState} from './draggableModalReducer'\nimport {ModalProps} from 'antd/lib/modal'\nimport '../../../style/modal/DraggableModal.css'\n\nexport interface DraggableModalProps extends Omit<ModalProps, \"width\"> {\n initialWidth?: number,\n initialHeight?: number\n // resize dialog handler\n onResize?(size: { width: number, height: number }): void\n}\n\nexport const DraggableModal = (props: DraggableModalProps): React.ReactElement => {\n // Get the unique ID of this modal.\n const id = useUID();\n\n // Get modal provider.\n const modalProvider = useContext(DraggableModalContext);\n if (!modalProvider) {\n throw new Error('No Provider')\n }\n\n const {dispatch, state} = modalProvider;\n const modalState = getOrCreateModalState(state, id, props.initialWidth, props.initialHeight);\n\n // We do this so that we don't re-render all modals for every state change.\n // DraggableModalInner uses React.memo, so it only re-renders if\n // if props change (e.g. modalState).\n return <DraggableModalInner id={id} dispatch={dispatch} modalState={modalState} {...props} />\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draggableModalContext.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModalContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAAoC,IAAI,CAAC,CAAA","sourcesContent":["import * as React from 'react'\
|
|
1
|
+
{"version":3,"file":"draggableModalContext.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModalContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAW9B,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC,aAAa,CAAoC,IAAI,CAAC,CAAA","sourcesContent":["import * as React from 'react'\nimport {Action, ModalsState} from './draggableModalReducer'\n\nexport interface DraggableModalContextMethods {\n dispatch: (action: Action) => void\n}\n\nexport interface DraggableModalContextValue extends DraggableModalContextMethods {\n state: ModalsState\n}\n\nexport const DraggableModalContext = React.createContext<DraggableModalContextValue | null>(null)\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draggableModalInner.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModalInner.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react'\
|
|
1
|
+
{"version":3,"file":"draggableModalInner.js","sourceRoot":"","sources":["../../../../../components/modal/impl/draggableModalInner.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react'\nimport {memo, useCallback, useEffect, useMemo} from 'react'\nimport {Modal} from 'antd'\nimport {ResizeHandle} from './resizeHandle'\nimport {useDrag} from './useDrag'\nimport {DraggableModalContextMethods} from './draggableModalContext'\nimport {usePrevious} from './usePrevious'\nimport {ModalID, ModalState} from './draggableModalReducer'\nimport {useResize} from './useResize'\nimport {DraggableModalProps} from \"./draggableModal\";\n\nconst modalStyle: React.CSSProperties = {margin: 0, paddingBottom: 0, pointerEvents: 'auto'}\n\ninterface ContextProps extends DraggableModalContextMethods {\n id: ModalID\n modalState: ModalState\n}\n\n//export type DraggableModalInnerProps = ModalProps & { children?: React.ReactNode } & ContextProps\nexport interface DraggableModalInnerProps extends DraggableModalProps, ContextProps {\n children?: React.ReactNode\n}\n\nexport const DraggableModalInner = memo(\n ({\n id,\n modalState,\n dispatch,\n visible,\n children,\n title,\n onResize,\n ...otherProps\n }: DraggableModalInnerProps) => {\n // Call on mount and unmount.\n useEffect(() => {\n dispatch({type: 'mount', id, size: {width: otherProps.initialWidth, height: otherProps.initialHeight}});\n return () => dispatch({type: 'unmount', id})\n }, [dispatch, id]);\n\n // Bring this to the front if it's been opened with props.\n const visiblePrevious = usePrevious(visible);\n useEffect(() => {\n if (visible !== visiblePrevious) {\n if (visible) {\n dispatch({type: 'show', id})\n } else {\n dispatch({type: 'hide', id})\n }\n }\n }, [visible, visiblePrevious, id, dispatch]);\n\n const {zIndex, x, y, width, height} = modalState;\n\n const style: React.CSSProperties = useMemo(\n () => ({...modalStyle, top: y, left: x, height}),\n [y, x, height],\n );\n\n const onFocus = useCallback(() => dispatch({type: 'focus', id}), [id, dispatch])\n\n const onDragWithID = useCallback(args => dispatch({type: 'drag', id, ...args}), [\n dispatch,\n id,\n ]);\n\n const onResizeWithID = useCallback((args) => {\n onResize?.({width: args.width, height: args.height});\n return dispatch({type: 'resize', id, ...args});\n }, [dispatch, id,]);\n\n const onMouseDrag = useDrag(x, y, onDragWithID);\n const onMouseResize = useResize(x, y, width, height, onResizeWithID);\n\n const titleElement = useMemo(\n () => (\n <div\n className=\"ant-design-draggable-modal-title\"\n onMouseDown={onMouseDrag}\n onClick={onFocus}\n >\n {title}\n </div>\n ),\n [onMouseDrag, onFocus, title],\n );\n\n return (\n <Modal\n wrapClassName=\"ant-design-draggable-modal\"\n style={style}\n destroyOnClose={true}\n width={width}\n zIndex={zIndex}\n title={titleElement}\n visible={visible}\n {...otherProps}\n >\n {children}\n <ResizeHandle onMouseDown={onMouseResize}/>\n </Modal>\n )\n },\n);\n\nDraggableModalInner.displayName = 'DraggableModalInner';\n"]}
|