d2coreui 21.0.15 → 21.0.16
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.d.ts +1 -1
- package/components/clipboard/clipboardUtils.js +1 -18
- 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.js.map +1 -1
- package/components/color/colorSwatch.js.map +1 -1
- package/components/color/colorUtils.js.map +1 -1
- package/components/date/dateRangeInput.d.ts +3 -2
- package/components/date/dateRangeInput.js +34 -20
- 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 +15 -9
- 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 +14 -0
- package/components/form/NiceFormItem.js +32 -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 +2 -2
- 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 +2 -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/detail/detailHeaderPanel.d.ts +13 -0
- package/components/grid/detail/detailHeaderPanel.js +26 -0
- package/components/grid/detail/detailHeaderPanel.js.map +1 -0
- package/components/grid/export/contextMenu.d.ts +2 -1
- package/components/grid/export/contextMenu.js +4 -4
- 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/components.uk.json +100 -0
- 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 +299 -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,23 +1,6 @@
|
|
|
1
1
|
export class ClipboardUtils {
|
|
2
2
|
static copyToClipboard(text) {
|
|
3
|
-
|
|
4
|
-
var textarea = document.createElement("textarea");
|
|
5
|
-
textarea.textContent = text;
|
|
6
|
-
textarea.style.position = "fixed";
|
|
7
|
-
document.body.appendChild(textarea);
|
|
8
|
-
textarea.select();
|
|
9
|
-
try {
|
|
10
|
-
return document.execCommand("copy");
|
|
11
|
-
}
|
|
12
|
-
catch (ex) {
|
|
13
|
-
console.warn("Copy to clipboard failed.", ex);
|
|
14
|
-
return false;
|
|
15
|
-
}
|
|
16
|
-
finally {
|
|
17
|
-
document.body.removeChild(textarea);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
return false;
|
|
3
|
+
navigator.clipboard.writeText(text);
|
|
21
4
|
}
|
|
22
5
|
}
|
|
23
6
|
//# sourceMappingURL=clipboardUtils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clipboardUtils.js","sourceRoot":"","sources":["../../../../components/clipboard/clipboardUtils.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IAQvB,MAAM,CAAC,eAAe,CAAC,IAAY;QAC/B,
|
|
1
|
+
{"version":3,"file":"clipboardUtils.js","sourceRoot":"","sources":["../../../../components/clipboard/clipboardUtils.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IAQvB,MAAM,CAAC,eAAe,CAAC,IAAY;QAC/B,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAiBxC,CAAC;CACJ","sourcesContent":["export class ClipboardUtils {\n // Copies a string to the clipboard. Must be called from within an\n // event handler such as click. May return false if it failed, but\n // this is not always possible. Browser support for Chrome 43+,\n // Firefox 42+, Safari 10+, Edge and IE 10+.\n // IE: The clipboard feature may be disabled by an administrator. By\n // default a prompt is shown the first time the clipboard is\n // used (per session).\n static copyToClipboard(text: string) {\n navigator.clipboard.writeText(text);\n // if (document.queryCommandSupported && document.queryCommandSupported(\"copy\")) {\n // var textarea = document.createElement(\"textarea\");\n // textarea.textContent = text;\n // textarea.style.position = \"fixed\"; // Prevent scrolling to bottom of page in MS Edge.\n // document.body.appendChild(textarea);\n // textarea.select();\n // try {\n // return document.execCommand(\"copy\"); // Security exception may be thrown by some browsers.\n // } catch (ex) {\n // console.warn(\"Copy to clipboard failed.\", ex);\n // return false;\n // } finally {\n // document.body.removeChild(textarea);\n // }\n // }\n // return false;\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SyntaxHighlighter.js","sourceRoot":"","sources":["../../../../components/codemirror/SyntaxHighlighter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,kCAAkC,CAAA;AACzC,OAAO,sBAAsB,CAAA;AAa7B,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAMlF,YAAY,KAAuC;QAC/C,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED,MAAM;QACF,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAA;QAC3E,MAAM,QAAQ,GAAsB,EAAE,CAAA;QACtC,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,SAAS,GAA8B,IAAI,CAAA;QAC/C,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE;YAC/B,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;SACnD;QACD,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACpD,IAAI,SAAS,KAAK,KAAK,EAAE;gBACrB,QAAQ,IAAI,KAAK,CAAA;gBACjB,SAAS,GAAG,KAAK,CAAA;aACpB;iBAAM;gBACH,IAAI,QAAQ,EAAE;oBACV,QAAQ,CAAC,IAAI,CAAC,8BAAM,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,IAAG,QAAQ,CAAQ,CAAC,CAAC;iBACxG;gBACD,QAAQ,GAAG,KAAK,CAAA;gBAChB,SAAS,GAAG,KAAK,CAAA;aACpB;QACL,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,IAAI,CAAC,8BAAM,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,IAAG,QAAQ,CAAQ,CAAC,CAAC;QAErG,IAAI,WAAW,GAAuB,SAAS,CAAC;QAChD,IAAG,OAAO,IAAI,YAAY,KAAK,KAAK,EAAE;YAClC,WAAW,GAAG,KAAK,CAAC;SACvB;QACD,MAAM,IAAI,GAAG,CAAC,8BAAM,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAG,QAAQ,CAAQ,CAAC,CAAC;QAClH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,6BAAK,SAAS,EAAE,GAAG,SAAS,IAAI,MAAM,KAAK,KAAK,EAAE,IAAG,IAAI,CAAO,CAAC,CAAC;IAChG,CAAC;;AAvCM,8BAAY,GAAG;IAClB,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,KAAK;CAChB,CAAA","sourcesContent":["import React from 'react'\
|
|
1
|
+
{"version":3,"file":"SyntaxHighlighter.js","sourceRoot":"","sources":["../../../../components/codemirror/SyntaxHighlighter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,kCAAkC,CAAA;AACzC,OAAO,sBAAsB,CAAA;AAa7B,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,KAAK,CAAC,SAAiC;IAMlF,YAAY,KAAuC;QAC/C,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED,MAAM;QACF,MAAM,EAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAC,GAAG,IAAI,CAAC,KAAK,CAAA;QAC3E,MAAM,QAAQ,GAAsB,EAAE,CAAA;QACtC,IAAI,KAAK,GAAG,CAAC,CAAA;QACb,IAAI,SAAS,GAA8B,IAAI,CAAA;QAC/C,IAAI,QAAQ,GAAG,EAAE,CAAA;QACjB,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,EAAE;YAC/B,YAAY,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC;SACnD;QACD,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YACpD,IAAI,SAAS,KAAK,KAAK,EAAE;gBACrB,QAAQ,IAAI,KAAK,CAAA;gBACjB,SAAS,GAAG,KAAK,CAAA;aACpB;iBAAM;gBACH,IAAI,QAAQ,EAAE;oBACV,QAAQ,CAAC,IAAI,CAAC,8BAAM,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,IAAG,QAAQ,CAAQ,CAAC,CAAC;iBACxG;gBACD,QAAQ,GAAG,KAAK,CAAA;gBAChB,SAAS,GAAG,KAAK,CAAA;aACpB;QACL,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,IAAI,CAAC,8BAAM,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,KAAK,IAAG,QAAQ,CAAQ,CAAC,CAAC;QAErG,IAAI,WAAW,GAAuB,SAAS,CAAC;QAChD,IAAG,OAAO,IAAI,YAAY,KAAK,KAAK,EAAE;YAClC,WAAW,GAAG,KAAK,CAAC;SACvB;QACD,MAAM,IAAI,GAAG,CAAC,8BAAM,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,IAAG,QAAQ,CAAQ,CAAC,CAAC;QAClH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,6BAAK,SAAS,EAAE,GAAG,SAAS,IAAI,MAAM,KAAK,KAAK,EAAE,IAAG,IAAI,CAAO,CAAC,CAAC;IAChG,CAAC;;AAvCM,8BAAY,GAAG;IAClB,SAAS,EAAE,EAAE;IACb,MAAM,EAAE,KAAK;CAChB,CAAA","sourcesContent":["import React from 'react'\nimport CodeMirror from 'codemirror';\nimport 'codemirror/addon/runmode/runmode'\nimport 'codemirror/mode/meta'\n\ninterface SyntaxHighlighterProps {\n // codeMirror: typeof CodeMirror\n className?: string\n theme?: string\n inline?: boolean\n mode: string\n prefix?: string\n value: string\n tooltip?:boolean\n}\n\nexport default class SyntaxHighlighter extends React.Component<SyntaxHighlighterProps> {\n static defaultProps = {\n className: '',\n prefix: 'cm-'\n }\n\n constructor(props: Readonly<SyntaxHighlighterProps>) {\n super(props);\n }\n\n render() {\n const {inline, value, mode, className, prefix, theme, tooltip} = this.props\n const elements: React.ReactNode[] = []\n let index = 0\n let lastStyle: string | null | undefined = null\n let tokenBuf = ''\n let trimmedValue = value;\n if( tooltip && value.length > 100) {\n trimmedValue = value.substring(0, 100) + \" ...\";\n }\n CodeMirror.runMode(trimmedValue, mode, (token, style) => {\n if (lastStyle === style) {\n tokenBuf += token\n lastStyle = style\n } else {\n if (tokenBuf) {\n elements.push(<span className={lastStyle ? prefix + lastStyle : ''} key={++index}>{tokenBuf}</span>);\n }\n tokenBuf = token\n lastStyle = style\n }\n })\n elements.push(<span className={lastStyle ? prefix + lastStyle : ''} key={++index}>{tokenBuf}</span>);\n\n let tooltipText: undefined | string = undefined;\n if(tooltip && trimmedValue !== value) {\n tooltipText = value;//.replace(\"\\t\",\"	\").replace(\"\\n\",\"
\");\n }\n const code = (<code title={tooltipText} className={inline ? `inline ${prefix}s-${theme}` : ''}>{elements}</code>);\n return inline ? (code) : (<pre className={`${className} ${prefix}s-${theme}`}>{code}</pre>);\n }\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expandable.js","sourceRoot":"","sources":["../../../../components/collapse/expandable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAUxC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK,CAAC,SAA0B;IACpE,YAAY,KAAgC;QACxC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED,MAAM;QACF,OAAO,CACH,6BAAK,KAAK,EAAE,EAAC,UAAU,EAAE,YAAY,EAAC;YAClC,oCACK,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf;YACT,oBAAC,QAAQ,IAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACrC,iCAAS,KAAK,EAAE,EAAC,SAAS,EAAE,CAAC,EAAC,IACzB,IAAI,CAAC,KAAK,CAAC,YAAY,CAClB,CACH;YACX,oBAAC,OAAO,IACJ,KAAK,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAC,EAC5D,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,kBAAkB,EACtF,KAAK,UAEJ,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,oBAAC,mBAAmB,IAC5C,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACtC,OAAO,EAAE,GAAG,EAAE;;oBACV,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;oBACtC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,CAAC,CAAC;gBACpC,CAAC,GACH,CACI,CACR,CACT,CAAA;IACL,CAAC;CAEJ","sourcesContent":["import React from \"react\";\
|
|
1
|
+
{"version":3,"file":"expandable.js","sourceRoot":"","sources":["../../../../components/collapse/expandable.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,OAAO,EAAC,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAC,mBAAmB,EAAC,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,gBAAgB,CAAC;AAUxC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK,CAAC,SAA0B;IACpE,YAAY,KAAgC;QACxC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED,MAAM;QACF,OAAO,CACH,6BAAK,KAAK,EAAE,EAAC,UAAU,EAAE,YAAY,EAAC;YAClC,oCACK,IAAI,CAAC,KAAK,CAAC,QAAQ,CACf;YACT,oBAAC,QAAQ,IAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;gBACrC,iCAAS,KAAK,EAAE,EAAC,SAAS,EAAE,CAAC,EAAC,IACzB,IAAI,CAAC,KAAK,CAAC,YAAY,CAClB,CACH;YACX,oBAAC,OAAO,IACJ,KAAK,EAAE,EAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAC,EAC5D,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,kBAAkB,EACtF,KAAK,UAEJ,IAAI,CAAC,KAAK,CAAC,YAAY,IAAI,oBAAC,mBAAmB,IAC5C,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EACtC,OAAO,EAAE,GAAG,EAAE;;oBACV,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;oBACtC,MAAA,MAAA,IAAI,CAAC,KAAK,EAAC,QAAQ,mDAAG,QAAQ,CAAC,CAAC;gBACpC,CAAC,GACH,CACI,CACR,CACT,CAAA;IACL,CAAC;CAEJ","sourcesContent":["import React from \"react\";\nimport {Divider} from \"antd\";\nimport {DoubleRightOutlined} from \"@ant-design/icons\";\nimport {Collapse} from 'react-collapse';\n\ninterface ExpandableProps {\n extraContent?: React.ReactNode\n expanded?: boolean\n compact?: boolean\n\n onExpand?(expanded: boolean): void\n}\n\nexport default class Expandable extends React.Component<ExpandableProps> {\n constructor(props: Readonly<ExpandableProps>) {\n super(props);\n }\n\n render(): React.ReactNode {\n return (\n <div style={{transition: \"height .5s\"}}>\n <header>\n {this.props.children}\n </header>\n <Collapse isOpened={!!this.props.expanded}>\n <section style={{marginTop: 5}}>\n {this.props.extraContent}\n </section>\n </Collapse>\n <Divider\n style={{margin: this.props.compact ? \"8px 0px\" : \"20px 0px\"}}\n className={this.props.extraContent ? \"stronger-divider-with-text\" : \"stronger-divider\"}\n plain\n >\n {this.props.extraContent && <DoubleRightOutlined\n rotate={this.props.expanded ? -90 : 90}\n onClick={() => {\n const expanded = !this.props.expanded;\n this.props.onExpand?.(expanded);\n }}\n />}\n </Divider>\n </div>\n )\n }\n\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorPicker.js","sourceRoot":"","sources":["../../../../components/color/colorPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\
|
|
1
|
+
{"version":3,"file":"colorPicker.js","sourceRoot":"","sources":["../../../../components/color/colorPicker.tsx"],"names":[],"mappings":"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","sourcesContent":["import React from \"react\";\nimport i18n from \"d2core/i18n/i18n\";\nimport {Badge, Button, Popover} from \"antd\";\nimport {CloseOutlined, StopOutlined} from \"@ant-design/icons\";\nimport {RGBColor, SketchPicker} from \"react-color\";\nimport {SketchPickerProps} from \"react-color/lib/components/sketch/Sketch\";\nimport {TooltipPlacement} from \"antd/lib/tooltip\";\n\nconst transparentBackgroundStyle = \"url(\\\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAMUlEQVQ4T2NkYGAQYcAP3uCTZhw1gGGYhAGBZIA/nYDCgBDAm9BGDWAAJyRCgLaBCAAgXwixzAS0pgAAAABJRU5ErkJggg==\\\") left center\"\nconst presetColors = [\n \"#fff1f0\", \"#ffccc7\", \"#ffa39e\", \"#ff7875\", \"#ff4d4f\", \"#f5222d\", \"#cf1322\", \"#a8071a\", \"#820014\", \"#5c0011\",\n \"#fff2e8\", \"#ffd8bf\", \"#ffbb96\", \"#ff9c6e\", \"#ff7a45\", \"#fa541c\", \"#d4380d\", \"#ad2102\", \"#871400\", \"#610b00\",\n \"#fff7e6\", \"#ffe7ba\", \"#ffd591\", \"#ffc069\", \"#ffa940\", \"#fa8c16\", \"#d46b08\", \"#ad4e00\", \"#873800\", \"#612500\",\n \"#feffe6\", \"#ffffb8\", \"#fffb8f\", \"#fff566\", \"#ffec3d\", \"#fadb14\", \"#d4b106\", \"#ad8b00\", \"#876800\", \"#614700\",\n \"#f6ffed\", \"#d9f7be\", \"#b7eb8f\", \"#95de64\", \"#73d13d\", \"#52c41a\", \"#389e0d\", \"#237804\", \"#135200\", \"#092b00\",\n \"#e6fffb\", \"#b5f5ec\", \"#87e8de\", \"#5cdbd3\", \"#36cfc9\", \"#13c2c2\", \"#08979c\", \"#006d75\", \"#00474f\", \"#002329\",\n \"#e6f7ff\", \"#bae7ff\", \"#91d5ff\", \"#69c0ff\", \"#40a9ff\", \"#1890ff\", \"#096dd9\", \"#0050b3\", \"#003a8c\", \"#002766\",\n \"#ffffff\", \"#fafafa\", \"#f5f5f5\", \"#e8e8e8\", \"#d9d9d9\", \"#bfbfbf\", \"#8c8c8c\", \"#595959\", \"#262626\", \"#000000\",\n];\n\ninterface ColorPickerProps extends SketchPickerProps {\n badgeIcon?: React.ReactNode\n title: string\n placement?: TooltipPlacement\n disabled?: boolean\n transparentColorAllowed?: boolean\n\n onResetColor(): void\n}\n\ninterface ColorPickerState {\n popupVisible: boolean\n}\n\nexport default class ColorPicker extends React.Component<ColorPickerProps, ColorPickerState> {\n constructor(props: Readonly<ColorPickerProps>) {\n super(props);\n\n this.state = {\n popupVisible: false,\n }\n }\n\n private getColorString(color: RGBColor | string | undefined): string | undefined {\n if (typeof color === \"object\") {\n return `rgba(${color.r},${color.g},${color.b},${color.a})`;\n } else {\n return color;\n }\n }\n\n render() {\n return (\n <Popover\n placement={this.props.placement}\n trigger={this.props.disabled ? \"\" : \"click\"}\n visible={this.state.popupVisible}\n onVisibleChange={(visible) => {\n this.setState({popupVisible: visible});\n }}\n title={\n <div>\n {this.props.title}\n <Button\n style={{float: \"right\", paddingLeft: 8, border: \"none\"}}\n size=\"small\"\n title={i18n(\"Close\")}\n onClick={() => {\n this.setState({popupVisible: false});\n }}\n >\n <CloseOutlined/>\n </Button>\n <Button\n style={{background: transparentBackgroundStyle, float: \"right\"}}\n size=\"small\"\n title={i18n(\"Set No Color\")}\n onClick={() => {\n this.props.onResetColor();\n this.setState({popupVisible: false});\n }}\n >\n <StopOutlined style={{color: \"rgba(0,0,0,0.85)\"}}/>\n </Button>\n </div>\n }\n content={\n <SketchPicker\n color={this.props.color}\n width={\"250px\"}\n presetColors={this.props.transparentColorAllowed ? [...presetColors, \"transparent\"] : presetColors}\n onChange={this.props.onChange}\n onChangeComplete={this.props.onChangeComplete}\n />\n }\n >\n <Badge\n count={this.props.badgeIcon ?\n <span\n className=\"ant-badge-count\"\n style={{color: \"#1890ff\", background: \"#e6f7ff\", borderColor: \"#91d5ff\"}}\n >\n {this.props.badgeIcon}\n </span>\n : undefined\n }\n >\n <Button\n style={{background: this.getColorString(this.props.color as RGBColor | string | undefined) ?? transparentBackgroundStyle}}\n disabled={this.props.disabled}\n title={this.props.title}\n >\n <span role=\"img\" className=\"anticon\"/>\n </Button>\n </Badge>\n </Popover>\n );\n }\n\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorSwatch.js","sourceRoot":"","sources":["../../../../components/color/colorSwatch.jsx"],"names":[],"mappings":"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","sourcesContent":["import React from 'react'\
|
|
1
|
+
{"version":3,"file":"colorSwatch.js","sourceRoot":"","sources":["../../../../components/color/colorSwatch.jsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,EAAE,EAAC,WAAW,EAAC,MAAM,UAAU,CAAA;AAC9C,OAAO,EAAC,MAAM,EAAC,MAAM,0CAA0C,CAAA;AAE/D,SAAS,WAAW,CAAC,GAAG,EAAE,EAAE;IACxB,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACxB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACtB;IAED,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QAClB,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;KAC7D;IACD,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;KACzC;IACD,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EACjC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EACjC,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtC,IAAI,EAAE,EAAE;QAEJ,OAAO,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,GAAG;YAC5C,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,SAAS,CAAC;KACnB;IAED,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAE3B,OAAO,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAC,EAAE,EAAE;IAC/F,MAAM,WAAW,GAAG;QAChB,SAAS,EAAE,YAAY;QACvB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,GAAG;KACd,CAAA;IACD,MAAM,WAAW,GAAG;QAChB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,GAAG;QACX,SAAS,EAAE,YAAY;QACvB,SAAS,EAAE,8BAA8B;QACzC,MAAM,EAAC,SAAS;KACnB,CAAA;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC;QACpB,SAAS,EAAE;YACP,MAAM,EAAE;gBACJ,OAAO,EAAE,cAAc;gBACvB,SAAS,EAAE,UAAU;gBACrB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBAChC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBACjC,MAAM,EAAE,KAAK;gBACb,SAAS,EAAE,CAAC;gBACZ,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,GAAG;aAChB;SACJ;QACD,OAAO,EAAE;YACL,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW;SACnC;KACJ,EAAE,EAAC,KAAK,EAAC,CAAC,CAAA;IAGX,OAAO,CACH,6BAAK,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,MAAM;YACP,6BAAK,KAAK,EAAE,EAAC,IAAI,EAAE,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,GAAE;gBAC5F,6BAAK,OAAO,EAAC,WAAW,EAAC,KAAK,EAAE,EAAC,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAC;oBACnD,8BAAM,CAAC,EAAC,yDAAyD,GAAE,CACjE,CACJ;QACN,oBAAC,MAAM,IACH,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,WAAW,EACvB,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,GACd,CACA,CACT,CAAA;AACL,CAAC,CAAA;AAED,eAAe,WAAW,CAAC,WAAW,CAAC,CAAA","sourcesContent":["import React from 'react'\nimport reactCSS, {handleHover} from 'reactcss'\nimport {Swatch} from 'react-color/lib/components/common/Swatch'\n\nfunction invertColor(hex, bw) {\n if (hex.indexOf('#') === 0) {\n hex = hex.slice(1);\n }\n // convert 3-digit hex to 6-digits.\n if (hex.length === 3) {\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];\n }\n if (hex.length !== 6) {\n throw new Error('Invalid HEX color.');\n }\n var r = parseInt(hex.slice(0, 2), 16),\n g = parseInt(hex.slice(2, 4), 16),\n b = parseInt(hex.slice(4, 6), 16);\n if (bw) {\n // http://stackoverflow.com/a/3943023/112731\n return (r * 0.299 + g * 0.587 + b * 0.114) > 186\n ? '#000000'\n : '#FFFFFF';\n }\n // invert color components\n r = (255 - r).toString(16);\n g = (255 - g).toString(16);\n b = (255 - b).toString(16);\n // pad each with zeros and return\n return \"#\" + padZero(r) + padZero(g) + padZero(b);\n}\n\nexport const ColorSwatch = ({hover, color, onClick, onSwatchHover, style, title, active, small}) => {\n const hoverSwatch = {\n transform: \"scale(1.5)\",\n position: 'relative',\n zIndex: '3',\n }\n const focusSwatch = {\n position: 'relative',\n zIndex: '2',\n transform: \"scale(1.2)\",\n boxShadow: '0 0 5px 2px rgba(0,0,0,0.25)',\n cursor:\"pointer\"\n }\n\n const styles = reactCSS({\n 'default': {\n swatch: {\n display: \"inline-block\",\n transform: \"scale(1)\",\n width: !!small ? '15px' : '22px',\n height: !!small ? '15px' : '22px',\n margin: '2px',\n marginTop: 0,\n marginBottom: 0,\n fontSize: '0',\n },\n },\n 'hover': {\n swatch: small ? {} : hoverSwatch,\n },\n }, {hover})\n\n\n return (\n <div style={styles.swatch}>\n {active &&\n <div style={{fill: invertColor(color, true), position: \"absolute\", left: 1, top: 1, zIndex: 10,}}>\n <svg viewBox=\"0 0 24 24\" style={{width: 20, height: 20}}>\n <path d=\"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z\"/>\n </svg>\n </div>}\n <Swatch\n color={color}\n onClick={onClick}\n onHover={onSwatchHover}\n focus={active}\n focusStyle={focusSwatch}\n style={style}\n title={title}\n />\n </div>\n )\n}\n\nexport default handleHover(ColorSwatch)"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"colorUtils.js","sourceRoot":"","sources":["../../../../components/color/colorUtils.ts"],"names":[],"mappings":"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","sourcesContent":["export default class ColorUtils {\
|
|
1
|
+
{"version":3,"file":"colorUtils.js","sourceRoot":"","sources":["../../../../components/color/colorUtils.ts"],"names":[],"mappings":"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","sourcesContent":["export default class ColorUtils {\n static d2IntToRGB(num: number): string {\n // d2000 posiela farbu vo formate bgr\n const b = (num & 0xFF0000) >>> 16,\n g = (num & 0xFF00) >>> 8,\n r = num & 0xFF;\n return \"rgb(\" + [r, g, b].join(\",\") + \")\";\n }\n\n static d2IntToHex(num: number): string {\n // d2000 posiela farbu vo formate bgr\n const b = (num & 0xFF0000) >>> 16,\n g = (num & 0xFF00) >>> 8,\n r = num & 0xFF;\n return \"#\" + r.toString(16).padStart(2, '0') + g.toString(16).padStart(2, '0') + b.toString(16).padStart(2, '0');\n }\n\n static hexToD2Int(hex: string): number {\n const r = parseInt(hex.substr(1, 2), 16),\n g = (parseInt(hex.substr(3, 2), 16) << 8),\n b = (parseInt(hex.substr(5, 2), 16) << 16);\n\n return r + g + b;\n }\n\n private static padZero(s: string, length: number = 2) {\n while (s.length < length) {\n s = '0' + s;\n }\n return s;\n }\n\n static invertColor(hex: string, bw: boolean) {\n if (hex.indexOf('#') === 0) {\n hex = hex.slice(1);\n }\n // convert 3-digit hex to 6-digits.\n if (hex.length === 3) {\n hex = hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];\n }\n if (hex.length !== 6) {\n throw new Error('Invalid HEX color.');\n }\n const r = parseInt(hex.slice(0, 2), 16);\n const g = parseInt(hex.slice(2, 4), 16);\n const b = parseInt(hex.slice(4, 6), 16);\n if (bw) {\n // http://stackoverflow.com/a/3943023/112731\n return (r * 0.299 + g * 0.587 + b * 0.114) > 186\n ? '#000000'\n : '#FFFFFF';\n }\n // invert color components\n const rString = (255 - r).toString(16);\n const gString = (255 - g).toString(16);\n const bString = (255 - b).toString(16);\n // pad each with zeros and return\n return \"#\" + this.padZero(rString) + this.padZero(gString) + this.padZero(bString);\n }\n}"]}
|
|
@@ -12,8 +12,8 @@ export interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>
|
|
|
12
12
|
onChange?: (fromValue: Moment | null, toValue: Moment | null) => void;
|
|
13
13
|
onInvalidValue?: (input: string) => void;
|
|
14
14
|
disabled?: boolean;
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
minDateTime?: Moment;
|
|
16
|
+
maxDateTime?: Moment;
|
|
17
17
|
allowClear?: boolean;
|
|
18
18
|
ranges?: {
|
|
19
19
|
[rangeName: string]: () => [Moment, Moment];
|
|
@@ -54,6 +54,7 @@ export default class DateRangeInput extends React.Component<DateRangeInputProps,
|
|
|
54
54
|
private getFromValue;
|
|
55
55
|
private getToValue;
|
|
56
56
|
closePopup(): void;
|
|
57
|
+
private onChange;
|
|
57
58
|
private renderSimplePart;
|
|
58
59
|
private renderAdvancedPart;
|
|
59
60
|
renderPopup(): React.ReactElement;
|
|
@@ -60,8 +60,18 @@ export default class DateRangeInput extends React.Component {
|
|
|
60
60
|
closePopup() {
|
|
61
61
|
this.setState({ popupKeyIndex: this.state.popupKeyIndex + 1, popupVisible: false });
|
|
62
62
|
}
|
|
63
|
+
onChange(fromValue, toValue) {
|
|
64
|
+
var _a, _b;
|
|
65
|
+
if (this.props.minDateTime && (fromValue === null || fromValue === void 0 ? void 0 : fromValue.isBefore(this.props.minDateTime))) {
|
|
66
|
+
fromValue = this.props.minDateTime;
|
|
67
|
+
}
|
|
68
|
+
if (this.props.maxDateTime && (toValue === null || toValue === void 0 ? void 0 : toValue.isAfter(this.props.maxDateTime))) {
|
|
69
|
+
toValue = this.props.maxDateTime;
|
|
70
|
+
}
|
|
71
|
+
(_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, fromValue, toValue);
|
|
72
|
+
}
|
|
63
73
|
renderSimplePart() {
|
|
64
|
-
const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align"]);
|
|
74
|
+
const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, defaultMode, onModeChange, confirmButtonsRenderer, onPopupVisibleChange } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "defaultMode", "onModeChange", "confirmButtonsRenderer", "onPopupVisibleChange"]);
|
|
65
75
|
const markedDateInterval = this.props.fromValue && this.props.toValue ? [this.props.fromValue, this.props.toValue] : undefined;
|
|
66
76
|
return (React.createElement("div", null,
|
|
67
77
|
React.createElement("div", { style: { display: "flex" } },
|
|
@@ -146,40 +156,43 @@ export default class DateRangeInput extends React.Component {
|
|
|
146
156
|
})))));
|
|
147
157
|
}
|
|
148
158
|
renderAdvancedPart() {
|
|
159
|
+
const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, defaultMode, onModeChange, confirmButtonsRenderer, onPopupVisibleChange } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "defaultMode", "onModeChange", "confirmButtonsRenderer", "onPopupVisibleChange"]);
|
|
149
160
|
return (React.createElement("div", null,
|
|
150
161
|
React.createElement("div", { style: { display: "flex" } },
|
|
151
|
-
React.createElement(DateTimeInput, { style: { width: "47%" },
|
|
162
|
+
React.createElement(DateTimeInput, Object.assign({}, props, { style: { width: "47%" }, value: toValue, onChange: (value) => {
|
|
152
163
|
var _a, _b;
|
|
153
164
|
(_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, value, this.props.toValue);
|
|
154
|
-
} }),
|
|
165
|
+
} })),
|
|
155
166
|
React.createElement("span", { style: { width: "6%", paddingTop: 4, color: "rgba(0, 0, 0, 0.65)", textAlign: "center" } }, "\u27F7"),
|
|
156
|
-
React.createElement(DateTimeInput, { style: { width: "47%" },
|
|
167
|
+
React.createElement(DateTimeInput, Object.assign({}, props, { style: { width: "47%" }, value: toValue, onChange: (value) => {
|
|
157
168
|
var _a, _b;
|
|
158
169
|
(_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, this.props.fromValue, value);
|
|
159
|
-
} })),
|
|
170
|
+
} }))),
|
|
160
171
|
React.createElement(DateRangeInputAdvancedPanel, { onBeginIntervalChange: unit => {
|
|
161
|
-
|
|
172
|
+
let from;
|
|
162
173
|
if (unit === "15minutes") {
|
|
163
174
|
const roundedMinutes = Math.floor(moment().minute() / 15) * 15;
|
|
164
|
-
|
|
175
|
+
from = moment().startOf("hour").minute(roundedMinutes);
|
|
165
176
|
}
|
|
166
177
|
else {
|
|
167
|
-
|
|
178
|
+
from = moment().startOf(unit);
|
|
168
179
|
}
|
|
180
|
+
this.onChange(from, this.props.toValue);
|
|
169
181
|
}, onIntervalDurationChange: unitOfTime => {
|
|
170
|
-
var _a, _b, _c, _d;
|
|
171
182
|
if (this.props.fromValue) {
|
|
183
|
+
let to;
|
|
172
184
|
if (unitOfTime === "4years") {
|
|
173
|
-
|
|
185
|
+
to = this.props.fromValue.clone().add(4, "year").subtract(1, "minute");
|
|
174
186
|
}
|
|
175
187
|
else {
|
|
176
|
-
|
|
188
|
+
to = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, "minute");
|
|
177
189
|
}
|
|
190
|
+
this.onChange(this.props.fromValue, to);
|
|
178
191
|
}
|
|
179
192
|
}, onTimeShift: (shiftBegin, shiftEnd, unitOfTime, type) => {
|
|
180
193
|
var _a, _b, _c, _d;
|
|
181
|
-
let fromValue = (_a = this.props.fromValue) === null || _a === void 0 ? void 0 : _a.clone();
|
|
182
|
-
let toValue = (
|
|
194
|
+
let fromValue = (_b = (_a = this.props.fromValue) === null || _a === void 0 ? void 0 : _a.clone()) !== null && _b !== void 0 ? _b : null;
|
|
195
|
+
let toValue = (_d = (_c = this.props.toValue) === null || _c === void 0 ? void 0 : _c.clone()) !== null && _d !== void 0 ? _d : null;
|
|
183
196
|
if (shiftBegin && fromValue) {
|
|
184
197
|
if (type === TimeShiftDirection.INCREMENT) {
|
|
185
198
|
fromValue.add(1, unitOfTime);
|
|
@@ -196,16 +209,17 @@ export default class DateRangeInput extends React.Component {
|
|
|
196
209
|
toValue.subtract(1, unitOfTime);
|
|
197
210
|
}
|
|
198
211
|
}
|
|
199
|
-
|
|
212
|
+
this.onChange(fromValue, toValue);
|
|
200
213
|
}, onEndIntervalChange: unit => {
|
|
201
|
-
|
|
214
|
+
let to;
|
|
202
215
|
if (unit === "15minutes") {
|
|
203
216
|
const roundedMinutes = Math.floor(moment().minute() / 15) * 15;
|
|
204
|
-
|
|
217
|
+
to = moment().startOf("hour").minute(roundedMinutes).subtract(1, "minute");
|
|
205
218
|
}
|
|
206
219
|
else {
|
|
207
|
-
|
|
220
|
+
to = moment().startOf(unit).subtract(1, "minute");
|
|
208
221
|
}
|
|
222
|
+
this.onChange(this.props.fromValue, to);
|
|
209
223
|
} })));
|
|
210
224
|
}
|
|
211
225
|
renderPopup() {
|
|
@@ -223,10 +237,10 @@ export default class DateRangeInput extends React.Component {
|
|
|
223
237
|
_b.call(_a))));
|
|
224
238
|
}
|
|
225
239
|
renderInput() {
|
|
226
|
-
const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, disabled } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "disabled"]);
|
|
240
|
+
const _a = this.props, { fromValue, toValue, onChange, style, allowClear, renderAsCalendar, hidePopup, align, disabled, defaultMode, onModeChange, confirmButtonsRenderer, onPopupVisibleChange } = _a, props = __rest(_a, ["fromValue", "toValue", "onChange", "style", "allowClear", "renderAsCalendar", "hidePopup", "align", "disabled", "defaultMode", "onModeChange", "confirmButtonsRenderer", "onPopupVisibleChange"]);
|
|
227
241
|
const className = (disabled || this.state.popupVisible) ? "readonly" : undefined;
|
|
228
242
|
return (React.createElement("div", { style: Object.assign(Object.assign({}, style), { padding: 0 }), className: "ant-input", onFocus: this.props.onFocus, onBlur: this.props.onBlur },
|
|
229
|
-
React.createElement("div", { style: { display: "flex", width: "calc(100% - 27px)" } },
|
|
243
|
+
React.createElement("div", { style: { display: "flex", width: (!hidePopup && !renderAsCalendar) ? "calc(100% - 27px)" : "100%" } },
|
|
230
244
|
React.createElement(DateTimeInput, Object.assign({ value: fromValue }, props, { disabled: disabled, inputDisabled: this.state.popupVisible, allowClear: allowClear, bordered: false, hidePopup: true, style: { width: "auto" }, inputStyle: { paddingRight: 2 }, onChange: (value) => {
|
|
231
245
|
var _a, _b;
|
|
232
246
|
(_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, value, this.props.toValue);
|
|
@@ -236,7 +250,7 @@ export default class DateRangeInput extends React.Component {
|
|
|
236
250
|
var _a, _b;
|
|
237
251
|
(_b = (_a = this.props).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, this.props.fromValue, value);
|
|
238
252
|
} }))),
|
|
239
|
-
React.createElement("div", { className: "ant-input-number-handler-wrap " + className, style: {
|
|
253
|
+
!hidePopup && !renderAsCalendar && React.createElement("div", { className: "ant-input-number-handler-wrap " + className, style: {
|
|
240
254
|
width: 28,
|
|
241
255
|
opacity: 1,
|
|
242
256
|
height: "100%",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dateRangeInput.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {HTMLAttributes} from \"react\";\r\nimport moment, {Moment} from \"moment\";\r\nimport {CalendarOutlined} from \"@ant-design/icons\";\r\nimport {Divider, Switch, Tooltip} from \"antd\";\r\nimport DateTimeInput from \"./dateTimeInput\";\r\nimport memoizeOne from \"memoize-one\";\r\nimport {TooltipPlacement} from \"antd/es/tooltip\";\r\nimport KeyboardUtils from \"../keyboard/keyboardUtils\";\r\nimport i18n from \"d2core/i18n/i18n\";\r\nimport DateRangeInputAdvancedPanel, {TimeShiftDirection} from \"./dateRangeInputAdvancedPanel\";\r\n\r\nexport enum DateRangeInputMode {\r\n SIMPLE,\r\n ADVANCED,\r\n}\r\n\r\nexport interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\r\n mask: string\r\n fromValue: Moment | null\r\n toValue: Moment | null\r\n onChange?: (fromValue: Moment | null, toValue: Moment | null) => void\r\n onInvalidValue?: (input: string) => void\r\n disabled?: boolean\r\n minDate?: Moment\r\n maxDate?: Moment\r\n // allows to set no (null) date by datepicker\r\n allowClear?: boolean\r\n ranges?: { [rangeName: string]: () => [Moment, Moment] }\r\n\r\n hidePopup?: boolean\r\n renderAsCalendar?: boolean\r\n placement?: TooltipPlacement\r\n align?: {\r\n points?: [string, string];\r\n offset?: [number, number];\r\n targetOffset?: [number, number];\r\n overflow?: {\r\n adjustX?: boolean;\r\n adjustY?: boolean;\r\n };\r\n useCssRight?: boolean;\r\n useCssBottom?: boolean;\r\n useCssTransform?: boolean;\r\n }\r\n\r\n defaultMode?: DateRangeInputMode\r\n\r\n onModeChange?(mode: DateRangeInputMode): void\r\n\r\n onFocus?(): void\r\n\r\n onBlur?(): void\r\n\r\n confirmButtonsRenderer?(): React.ReactNode\r\n\r\n onPopupVisibleChange?(visible: boolean): void\r\n}\r\n\r\ninterface DateRangeInputState {\r\n valid: boolean\r\n selectionStartDate: Moment | null\r\n popupKeyIndex: number\r\n popupVisible: boolean\r\n\r\n mode: DateRangeInputMode\r\n}\r\n\r\nexport default class DateRangeInput extends React.Component<DateRangeInputProps, DateRangeInputState> {\r\n constructor(props: Readonly<DateRangeInputProps>) {\r\n super(props);\r\n this.state = {\r\n valid: !!props.fromValue && props.fromValue.isValid() && !!props.toValue && props.toValue.isValid(),\r\n selectionStartDate: null,\r\n popupKeyIndex: 0,\r\n popupVisible: false,\r\n\r\n mode: props.defaultMode ?? DateRangeInputMode.SIMPLE,\r\n };\r\n this.getDefaultSelectedDateForFromPanel = memoizeOne(this.getDefaultSelectedDateForFromPanel.bind(this));\r\n }\r\n\r\n componentDidUpdate(_prevProps: Readonly<DateRangeInputProps>, prevState: Readonly<DateRangeInputState>) {\r\n if (prevState.popupVisible !== this.state.popupVisible && this.props.onPopupVisibleChange) {\r\n this.props.onPopupVisibleChange(this.state.popupVisible);\r\n }\r\n }\r\n\r\n getDefaultSelectedDateForFromPanel(fromDate: Moment | null, toDate: Moment | null): Moment {\r\n if (!!fromDate && !!toDate && fromDate.isSame(toDate, \"date\")) {\r\n return fromDate.clone().subtract(1, \"month\");\r\n } else {\r\n return fromDate ?? moment().startOf(\"day\").subtract(1, \"month\");\r\n }\r\n }\r\n\r\n private getFromValue(date: moment.Moment) {\r\n return (this.props.fromValue?.clone() ?? moment().startOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n private getToValue(date: moment.Moment) {\r\n return (this.props.toValue?.clone() ?? moment().endOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\r\n }\r\n\r\n closePopup() {\r\n // close tooltip\r\n this.setState({popupKeyIndex: this.state.popupKeyIndex + 1, popupVisible: false});\r\n }\r\n\r\n private renderSimplePart() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n ...props\r\n } = this.props;\r\n const markedDateInterval: [Moment, Moment] | undefined = this.props.fromValue && this.props.toValue ? [this.props.fromValue, this.props.toValue] : undefined;\r\n\r\n return (\r\n <div>\r\n <div style={{display: \"flex\"}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n allowClear={allowClear}\r\n renderAsCalendar\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n defaultSelectedDate={this.getDefaultSelectedDateForFromPanel(fromValue, toValue)}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Moment;\r\n let dateTo: Moment;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n <Divider type=\"vertical\" style={{height: \"auto\"}}/>\r\n <DateTimeInput value={toValue} {...props}\r\n renderAsCalendar\r\n allowClear={allowClear}\r\n style={{width: \"100%\"}}\r\n onChange={(date) => {\r\n if (date) {\r\n const fromValue = this.getFromValue(date);\r\n const toValue = this.getToValue(date);\r\n this.props.onChange?.(fromValue, toValue);\r\n }\r\n }}\r\n markedDateInterval={markedDateInterval}\r\n onDateItemMouseDown={(date) => {\r\n this.setState({selectionStartDate: date});\r\n const dateFrom = this.getFromValue(date);\r\n const dateTo = this.getToValue(date);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }}\r\n onDateItemMouseOver={(date) => {\r\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\r\n let dateFrom: Moment;\r\n let dateTo: Moment;\r\n if (this.state.selectionStartDate.isBefore(date)) {\r\n dateFrom = this.state.selectionStartDate;\r\n dateTo = date;\r\n } else {\r\n dateFrom = date;\r\n dateTo = this.state.selectionStartDate;\r\n }\r\n dateFrom = this.getFromValue(dateFrom);\r\n dateTo = this.getToValue(dateTo);\r\n this.props.onChange?.(dateFrom, dateTo);\r\n }\r\n }}\r\n onDateItemMouseUp={(_date) => {\r\n this.setState({selectionStartDate: null});\r\n }}\r\n ignoreKeyStrokes\r\n />\r\n </div>\r\n <div className=\"ant-picker-footer\">\r\n <ul className=\"ant-picker-ranges\" style={{padding: 0, borderTop: \"1px solid #ddd\"}}>\r\n {\r\n this.props.ranges && Object.keys(this.props.ranges).map((rangeName, index) => {\r\n return (<li className=\"ant-picker-preset\"\r\n key={`range-${index}`}\r\n onClick={() => {\r\n const rangeFunction = this.props.ranges?.[rangeName];\r\n if (rangeFunction) {\r\n const range = rangeFunction();\r\n this.props.onChange?.(range[0], range[1]);\r\n }\r\n }}>\r\n <span className=\"ant-tag ant-tag-blue\"\r\n style={{userSelect: \"none\"}}>{rangeName}</span>\r\n </li>);\r\n })\r\n }\r\n </ul>\r\n </div>\r\n </div>\r\n )\r\n }\r\n\r\n private renderAdvancedPart() {\r\n return (\r\n <div>\r\n <div style={{display: \"flex\"}}>\r\n <DateTimeInput\r\n style={{width: \"47%\"}}\r\n mask={this.props.mask}\r\n value={this.props.fromValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n <span style={{width: \"6%\", paddingTop: 4, color: \"rgba(0, 0, 0, 0.65)\", textAlign: \"center\"}}>\r\n {\"\\u27F7\"}\r\n </span>\r\n <DateTimeInput\r\n style={{width: \"47%\"}}\r\n mask={this.props.mask}\r\n value={this.props.toValue}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}\r\n />\r\n </div>\r\n <DateRangeInputAdvancedPanel\r\n onBeginIntervalChange={unit => {\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(moment().minute() / 15) * 15;\r\n this.props.onChange?.(moment().startOf(\"hour\").minute(roundedMinutes), this.props.toValue);\r\n } else {\r\n this.props.onChange?.(moment().startOf(unit), this.props.toValue);\r\n }\r\n }}\r\n onIntervalDurationChange={unitOfTime => {\r\n if (this.props.fromValue) {\r\n if (unitOfTime === \"4years\") {\r\n this.props.onChange?.(this.props.fromValue, this.props.fromValue.clone().add(4, \"year\").subtract(1, \"minute\"));\r\n } else {\r\n this.props.onChange?.(this.props.fromValue, this.props.fromValue.clone().add(1, unitOfTime).subtract(1, \"minute\"));\r\n }\r\n }\r\n }}\r\n onTimeShift={(shiftBegin, shiftEnd, unitOfTime, type) => {\r\n let fromValue = this.props.fromValue?.clone();\r\n let toValue = this.props.toValue?.clone();\r\n\r\n if (shiftBegin && fromValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n fromValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n fromValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n if (shiftEnd && toValue) {\r\n if (type === TimeShiftDirection.INCREMENT) {\r\n toValue.add(1, unitOfTime);\r\n } else if (type === TimeShiftDirection.DECREMENT) {\r\n toValue.subtract(1, unitOfTime);\r\n }\r\n }\r\n\r\n this.props.onChange?.(fromValue ?? null, toValue ?? null);\r\n }}\r\n onEndIntervalChange={unit => {\r\n if (unit === \"15minutes\") {\r\n const roundedMinutes = Math.floor(moment().minute() / 15) * 15;\r\n this.props.onChange?.(this.props.fromValue, moment().startOf(\"hour\").minute(roundedMinutes).subtract(1, \"minute\"));\r\n } else {\r\n this.props.onChange?.(this.props.fromValue, moment().startOf(unit).subtract(1, \"minute\"));\r\n }\r\n }}\r\n />\r\n </div>\r\n )\r\n }\r\n\r\n renderPopup(): React.ReactElement {\r\n return (\r\n <div onFocus={this.props.onFocus} onBlur={this.props.onBlur}>\r\n {this.state.mode === DateRangeInputMode.SIMPLE && this.renderSimplePart()}\r\n {this.state.mode === DateRangeInputMode.ADVANCED && this.renderAdvancedPart()}\r\n <div style={{display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-end\"}}>\r\n <Switch\r\n style={{float: \"right\", marginTop: 8}}\r\n checked={this.state.mode === DateRangeInputMode.ADVANCED}\r\n onChange={checked => {\r\n const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;\r\n this.setState({mode: mode});\r\n this.props.onModeChange?.(mode);\r\n }}\r\n checkedChildren={i18n(\"Advanced Mode\")}\r\n unCheckedChildren={i18n(\"Simple Mode\")}\r\n />\r\n {this.props.confirmButtonsRenderer?.()}\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n renderInput() {\r\n const {\r\n fromValue,\r\n toValue,\r\n onChange,\r\n style,\r\n allowClear,\r\n renderAsCalendar,\r\n hidePopup,\r\n align,\r\n disabled,\r\n ...props\r\n } = this.props;\r\n const className = (disabled || this.state.popupVisible) ? \"readonly\" : undefined;\r\n return (\r\n <div style={{...style, padding: 0}} className={\"ant-input\"} onFocus={this.props.onFocus}\r\n onBlur={this.props.onBlur}>\r\n <div style={{display: \"flex\", width: \"calc(100% - 27px)\"}}>\r\n <DateTimeInput value={fromValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingRight: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(value, this.props.toValue);\r\n }}\r\n />\r\n <span style={{paddingTop: 4}} className={className}>{\"\\u27F7\"}</span>\r\n <DateTimeInput value={toValue} {...props}\r\n disabled={disabled}\r\n inputDisabled={this.state.popupVisible}\r\n allowClear={allowClear}\r\n bordered={false}\r\n hidePopup={true}\r\n style={{width: \"auto\"}}\r\n inputStyle={{paddingLeft: 2}}\r\n onChange={(value) => {\r\n this.props.onChange?.(this.props.fromValue, value);\r\n }}/>\r\n </div>\r\n <div className={\"ant-input-number-handler-wrap \" + className}\r\n style={{\r\n width: 28,\r\n opacity: 1,\r\n height: \"100%\",\r\n textAlign: \"center\",\r\n cursor: disabled ? \"not-allowed\" : \"pointer\"\r\n }}\r\n onClick={(event) => {\r\n if (!disabled && document.createEvent) {\r\n if (this.state.popupVisible) {\r\n this.closePopup();\r\n } else {\r\n var ev = document.createEvent('HTMLEvents');\r\n ev.initEvent('contextmenu', true, false);\r\n event.target.dispatchEvent(ev);\r\n this.props.onFocus?.();\r\n }\r\n }\r\n }}\r\n >\r\n <CalendarOutlined style={{color: \"rgba(0,0,0,0.65)\", verticalAlign: \"middle\", marginTop: 2}}/>\r\n </div>\r\n </div>\r\n );\r\n }\r\n\r\n render(): any {\r\n if (this.props.renderAsCalendar) {\r\n return this.renderPopup();\r\n } else if (this.props.hidePopup) {\r\n return this.renderInput();\r\n } else {\r\n return (\r\n <Tooltip color={\"white\"}\r\n key={\"date-range-popup-\" + this.state.popupKeyIndex}\r\n trigger={this.props.disabled ? [] : [\"contextMenu\"]}\r\n align={this.props.align}\r\n placement={this.props.placement}\r\n overlayInnerStyle={{maxHeight: \"100vh\", overflowY: \"auto\", overflowX: \"hidden\"}}\r\n onVisibleChange={(visible) => {\r\n if (visible) {\r\n this.props.onFocus?.();\r\n } else {\r\n this.props.onBlur?.();\r\n }\r\n this.setState({popupVisible: visible});\r\n }}\r\n overlayClassName={\"date-range-picker-popup\"}\r\n title={this.renderPopup()}>\r\n {this.renderInput()}\r\n </Tooltip>\r\n );\r\n }\r\n }\r\n}"]}
|
|
1
|
+
{"version":3,"file":"dateRangeInput.js","sourceRoot":"","sources":["../../../../components/date/dateRangeInput.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, {HTMLAttributes} from \"react\";\nimport moment, {Moment} from \"moment\";\nimport {CalendarOutlined} from \"@ant-design/icons\";\nimport {Divider, Switch, Tooltip} from \"antd\";\nimport DateTimeInput from \"./dateTimeInput\";\nimport memoizeOne from \"memoize-one\";\nimport {TooltipPlacement} from \"antd/es/tooltip\";\nimport KeyboardUtils from \"../keyboard/keyboardUtils\";\nimport i18n from \"d2core/i18n/i18n\";\nimport DateRangeInputAdvancedPanel, {TimeShiftDirection} from \"./dateRangeInputAdvancedPanel\";\n\nexport enum DateRangeInputMode {\n SIMPLE,\n ADVANCED,\n}\n\nexport interface DateRangeInputProps extends Omit<HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n mask: string\n fromValue: Moment | null\n toValue: Moment | null\n onChange?: (fromValue: Moment | null, toValue: Moment | null) => void\n onInvalidValue?: (input: string) => void\n disabled?: boolean\n minDateTime?: Moment\n maxDateTime?: Moment\n // allows to set no (null) date by datepicker\n allowClear?: boolean\n ranges?: { [rangeName: string]: () => [Moment, Moment] }\n\n hidePopup?: boolean\n renderAsCalendar?: boolean\n placement?: TooltipPlacement\n align?: {\n points?: [string, string];\n offset?: [number, number];\n targetOffset?: [number, number];\n overflow?: {\n adjustX?: boolean;\n adjustY?: boolean;\n };\n useCssRight?: boolean;\n useCssBottom?: boolean;\n useCssTransform?: boolean;\n }\n\n defaultMode?: DateRangeInputMode\n\n onModeChange?(mode: DateRangeInputMode): void\n\n onFocus?(): void\n\n onBlur?(): void\n\n confirmButtonsRenderer?(): React.ReactNode\n\n onPopupVisibleChange?(visible: boolean): void\n}\n\ninterface DateRangeInputState {\n valid: boolean\n selectionStartDate: Moment | null\n popupKeyIndex: number\n popupVisible: boolean\n\n mode: DateRangeInputMode\n}\n\nexport default class DateRangeInput extends React.Component<DateRangeInputProps, DateRangeInputState> {\n constructor(props: Readonly<DateRangeInputProps>) {\n super(props);\n this.state = {\n valid: !!props.fromValue && props.fromValue.isValid() && !!props.toValue && props.toValue.isValid(),\n selectionStartDate: null,\n popupKeyIndex: 0,\n popupVisible: false,\n\n mode: props.defaultMode ?? DateRangeInputMode.SIMPLE,\n };\n this.getDefaultSelectedDateForFromPanel = memoizeOne(this.getDefaultSelectedDateForFromPanel.bind(this));\n }\n\n componentDidUpdate(_prevProps: Readonly<DateRangeInputProps>, prevState: Readonly<DateRangeInputState>) {\n if (prevState.popupVisible !== this.state.popupVisible && this.props.onPopupVisibleChange) {\n this.props.onPopupVisibleChange(this.state.popupVisible);\n }\n }\n\n getDefaultSelectedDateForFromPanel(fromDate: Moment | null, toDate: Moment | null): Moment {\n if (!!fromDate && !!toDate && fromDate.isSame(toDate, \"date\")) {\n return fromDate.clone().subtract(1, \"month\");\n } else {\n return fromDate ?? moment().startOf(\"day\").subtract(1, \"month\");\n }\n }\n\n private getFromValue(date: moment.Moment) {\n return (this.props.fromValue?.clone() ?? moment().startOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\n }\n\n private getToValue(date: moment.Moment) {\n return (this.props.toValue?.clone() ?? moment().endOf(\"day\")).year(date.year()).month(date.month()).date(date.date());\n }\n\n closePopup() {\n // close tooltip\n this.setState({popupKeyIndex: this.state.popupKeyIndex + 1, popupVisible: false});\n }\n\n private onChange(fromValue: Moment | null, toValue: Moment | null) {\n if (this.props.minDateTime && fromValue?.isBefore(this.props.minDateTime)) {\n fromValue = this.props.minDateTime;\n }\n if (this.props.maxDateTime && toValue?.isAfter(this.props.maxDateTime)) {\n toValue = this.props.maxDateTime;\n }\n this.props.onChange?.(fromValue, toValue);\n }\n\n private renderSimplePart() {\n const {\n fromValue,\n toValue,\n onChange,\n style,\n allowClear,\n renderAsCalendar,\n hidePopup,\n align,\n defaultMode,\n onModeChange,\n confirmButtonsRenderer,\n onPopupVisibleChange,\n ...props\n } = this.props;\n const markedDateInterval: [Moment, Moment] | undefined = this.props.fromValue && this.props.toValue ? [this.props.fromValue, this.props.toValue] : undefined;\n\n return (\n <div>\n <div style={{display: \"flex\"}}>\n <DateTimeInput value={fromValue} {...props}\n allowClear={allowClear}\n renderAsCalendar\n style={{width: \"100%\"}}\n onChange={(date) => {\n if (date) {\n const fromValue = this.getFromValue(date);\n const toValue = this.getToValue(date);\n this.props.onChange?.(fromValue, toValue);\n }\n }}\n defaultSelectedDate={this.getDefaultSelectedDateForFromPanel(fromValue, toValue)}\n markedDateInterval={markedDateInterval}\n onDateItemMouseDown={(date) => {\n this.setState({selectionStartDate: date});\n const dateFrom = this.getFromValue(date);\n const dateTo = this.getToValue(date);\n this.props.onChange?.(dateFrom, dateTo);\n }}\n onDateItemMouseOver={(date) => {\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\n let dateFrom: Moment;\n let dateTo: Moment;\n if (this.state.selectionStartDate.isBefore(date)) {\n dateFrom = this.state.selectionStartDate;\n dateTo = date;\n } else {\n dateFrom = date;\n dateTo = this.state.selectionStartDate;\n }\n dateFrom = this.getFromValue(dateFrom);\n dateTo = this.getToValue(dateTo);\n this.props.onChange?.(dateFrom, dateTo);\n }\n }}\n onDateItemMouseUp={(_date) => {\n this.setState({selectionStartDate: null});\n }}\n ignoreKeyStrokes\n />\n <Divider type=\"vertical\" style={{height: \"auto\"}}/>\n <DateTimeInput value={toValue} {...props}\n renderAsCalendar\n allowClear={allowClear}\n style={{width: \"100%\"}}\n onChange={(date) => {\n if (date) {\n const fromValue = this.getFromValue(date);\n const toValue = this.getToValue(date);\n this.props.onChange?.(fromValue, toValue);\n }\n }}\n markedDateInterval={markedDateInterval}\n onDateItemMouseDown={(date) => {\n this.setState({selectionStartDate: date});\n const dateFrom = this.getFromValue(date);\n const dateTo = this.getToValue(date);\n this.props.onChange?.(dateFrom, dateTo);\n }}\n onDateItemMouseOver={(date) => {\n if (KeyboardUtils.isMouseDown() && !!this.state.selectionStartDate) {\n let dateFrom: Moment;\n let dateTo: Moment;\n if (this.state.selectionStartDate.isBefore(date)) {\n dateFrom = this.state.selectionStartDate;\n dateTo = date;\n } else {\n dateFrom = date;\n dateTo = this.state.selectionStartDate;\n }\n dateFrom = this.getFromValue(dateFrom);\n dateTo = this.getToValue(dateTo);\n this.props.onChange?.(dateFrom, dateTo);\n }\n }}\n onDateItemMouseUp={(_date) => {\n this.setState({selectionStartDate: null});\n }}\n ignoreKeyStrokes\n />\n </div>\n <div className=\"ant-picker-footer\">\n <ul className=\"ant-picker-ranges\" style={{padding: 0, borderTop: \"1px solid #ddd\"}}>\n {\n this.props.ranges && Object.keys(this.props.ranges).map((rangeName, index) => {\n return (<li className=\"ant-picker-preset\"\n key={`range-${index}`}\n onClick={() => {\n const rangeFunction = this.props.ranges?.[rangeName];\n if (rangeFunction) {\n const range = rangeFunction();\n this.props.onChange?.(range[0], range[1]);\n }\n }}>\n <span className=\"ant-tag ant-tag-blue\"\n style={{userSelect: \"none\"}}>{rangeName}</span>\n </li>);\n })\n }\n </ul>\n </div>\n </div>\n )\n }\n\n private renderAdvancedPart() {\n const {\n fromValue,\n toValue,\n onChange,\n style,\n allowClear,\n renderAsCalendar,\n hidePopup,\n align,\n defaultMode,\n onModeChange,\n confirmButtonsRenderer,\n onPopupVisibleChange,\n ...props\n } = this.props;\n return (\n <div>\n <div style={{display: \"flex\"}}>\n <DateTimeInput\n {...props}\n style={{width: \"47%\"}}\n value={toValue}\n onChange={(value) => {\n this.props.onChange?.(value, this.props.toValue);\n }}\n />\n <span style={{width: \"6%\", paddingTop: 4, color: \"rgba(0, 0, 0, 0.65)\", textAlign: \"center\"}}>\n {\"\\u27F7\"}\n </span>\n <DateTimeInput\n {...props}\n style={{width: \"47%\"}}\n value={toValue}\n onChange={(value) => {\n this.props.onChange?.(this.props.fromValue, value);\n }}\n />\n </div>\n <DateRangeInputAdvancedPanel\n onBeginIntervalChange={unit => {\n let from: Moment;\n if (unit === \"15minutes\") {\n const roundedMinutes = Math.floor(moment().minute() / 15) * 15;\n from = moment().startOf(\"hour\").minute(roundedMinutes);\n } else {\n from = moment().startOf(unit);\n }\n this.onChange(from, this.props.toValue);\n }}\n onIntervalDurationChange={unitOfTime => {\n if (this.props.fromValue) {\n let to: Moment;\n if (unitOfTime === \"4years\") {\n to = this.props.fromValue.clone().add(4, \"year\").subtract(1, \"minute\");\n } else {\n to = this.props.fromValue.clone().add(1, unitOfTime).subtract(1, \"minute\")\n }\n this.onChange(this.props.fromValue, to);\n }\n }}\n onTimeShift={(shiftBegin, shiftEnd, unitOfTime, type) => {\n let fromValue = this.props.fromValue?.clone() ?? null;\n let toValue = this.props.toValue?.clone() ?? null;\n\n if (shiftBegin && fromValue) {\n if (type === TimeShiftDirection.INCREMENT) {\n fromValue.add(1, unitOfTime);\n } else if (type === TimeShiftDirection.DECREMENT) {\n fromValue.subtract(1, unitOfTime);\n }\n }\n\n if (shiftEnd && toValue) {\n if (type === TimeShiftDirection.INCREMENT) {\n toValue.add(1, unitOfTime);\n } else if (type === TimeShiftDirection.DECREMENT) {\n toValue.subtract(1, unitOfTime);\n }\n }\n\n this.onChange(fromValue, toValue);\n }}\n onEndIntervalChange={unit => {\n let to: Moment;\n if (unit === \"15minutes\") {\n const roundedMinutes = Math.floor(moment().minute() / 15) * 15;\n to = moment().startOf(\"hour\").minute(roundedMinutes).subtract(1, \"minute\");\n } else {\n to = moment().startOf(unit).subtract(1, \"minute\");\n }\n this.onChange(this.props.fromValue, to);\n }}\n />\n </div>\n )\n }\n\n renderPopup(): React.ReactElement {\n return (\n <div onFocus={this.props.onFocus} onBlur={this.props.onBlur}>\n {this.state.mode === DateRangeInputMode.SIMPLE && this.renderSimplePart()}\n {this.state.mode === DateRangeInputMode.ADVANCED && this.renderAdvancedPart()}\n <div style={{display: \"flex\", justifyContent: \"space-between\", alignItems: \"flex-end\"}}>\n <Switch\n style={{float: \"right\", marginTop: 8}}\n checked={this.state.mode === DateRangeInputMode.ADVANCED}\n onChange={checked => {\n const mode = checked ? DateRangeInputMode.ADVANCED : DateRangeInputMode.SIMPLE;\n this.setState({mode: mode});\n this.props.onModeChange?.(mode);\n }}\n checkedChildren={i18n(\"Advanced Mode\")}\n unCheckedChildren={i18n(\"Simple Mode\")}\n />\n {this.props.confirmButtonsRenderer?.()}\n </div>\n </div>\n );\n }\n\n renderInput() {\n const {\n fromValue,\n toValue,\n onChange,\n style,\n allowClear,\n renderAsCalendar,\n hidePopup,\n align,\n disabled,\n defaultMode,\n onModeChange,\n confirmButtonsRenderer,\n onPopupVisibleChange,\n ...props\n } = this.props;\n const className = (disabled || this.state.popupVisible) ? \"readonly\" : undefined;\n return (\n <div style={{...style, padding: 0}} className={\"ant-input\"} onFocus={this.props.onFocus}\n onBlur={this.props.onBlur}>\n <div style={{display: \"flex\", width: (!hidePopup && !renderAsCalendar) ? \"calc(100% - 27px)\" : \"100%\"}}>\n <DateTimeInput value={fromValue} {...props}\n disabled={disabled}\n inputDisabled={this.state.popupVisible}\n allowClear={allowClear}\n bordered={false}\n hidePopup={true}\n style={{width: \"auto\"}}\n inputStyle={{paddingRight: 2}}\n onChange={(value) => {\n this.props.onChange?.(value, this.props.toValue);\n }}\n />\n <span style={{paddingTop: 4}} className={className}>{\"\\u27F7\"}</span>\n <DateTimeInput value={toValue} {...props}\n disabled={disabled}\n inputDisabled={this.state.popupVisible}\n allowClear={allowClear}\n bordered={false}\n hidePopup={true}\n style={{width: \"auto\"}}\n inputStyle={{paddingLeft: 2}}\n onChange={(value) => {\n this.props.onChange?.(this.props.fromValue, value);\n }}/>\n </div>\n {!hidePopup && !renderAsCalendar && <div className={\"ant-input-number-handler-wrap \" + className}\n style={{\n width: 28,\n opacity: 1,\n height: \"100%\",\n textAlign: \"center\",\n cursor: disabled ? \"not-allowed\" : \"pointer\"\n }}\n onClick={(event) => {\n if (!disabled && document.createEvent) {\n if (this.state.popupVisible) {\n this.closePopup();\n } else {\n var ev = document.createEvent('HTMLEvents');\n ev.initEvent('contextmenu', true, false);\n event.target.dispatchEvent(ev);\n this.props.onFocus?.();\n }\n }\n }}\n >\n <CalendarOutlined style={{color: \"rgba(0,0,0,0.65)\", verticalAlign: \"middle\", marginTop: 2}}/>\n </div>}\n </div>\n );\n }\n\n render(): any {\n if (this.props.renderAsCalendar) {\n return this.renderPopup();\n } else if (this.props.hidePopup) {\n return this.renderInput();\n } else {\n return (\n <Tooltip color={\"white\"}\n key={\"date-range-popup-\" + this.state.popupKeyIndex}\n trigger={this.props.disabled ? [] : [\"contextMenu\"]}\n align={this.props.align}\n placement={this.props.placement}\n overlayInnerStyle={{maxHeight: \"100vh\", overflowY: \"auto\", overflowX: \"hidden\"}}\n onVisibleChange={(visible) => {\n if (visible) {\n this.props.onFocus?.();\n } else {\n this.props.onBlur?.();\n }\n this.setState({popupVisible: visible});\n }}\n overlayClassName={\"date-range-picker-popup\"}\n title={this.renderPopup()}>\n {this.renderInput()}\n </Tooltip>\n );\n }\n }\n}"]}
|