@flatbiz/antd 4.4.26 → 4.4.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/esm/ace-editor-groovy/index.js +1 -1
  2. package/esm/ace-editor-groovy/index.js.map +1 -1
  3. package/esm/ace-editor-java/index.js +1 -1
  4. package/esm/ace-editor-java/index.js.map +1 -1
  5. package/esm/ace-editor-json/index.js +1 -1
  6. package/esm/ace-editor-json/index.js.map +1 -1
  7. package/esm/ace-editor-mysql/index.js +1 -1
  8. package/esm/ace-editor-mysql/index.js.map +1 -1
  9. package/esm/ace-editor-xml/index.js +1 -1
  10. package/esm/ace-editor-xml/index.js.map +1 -1
  11. package/esm/dialog-drawer/index.js +1 -1
  12. package/esm/dialog-drawer/index.js.map +1 -1
  13. package/esm/drag-form-list/index.js +1 -1
  14. package/esm/editable-field/index.js +1 -1
  15. package/esm/editable-field-provider/index.js +1 -1
  16. package/esm/fba-app/index.js +1 -1
  17. package/esm/fba-app/index.js.map +1 -1
  18. package/esm/fba-hooks/index.js +1 -1
  19. package/esm/form-item-text/index.js +1 -1
  20. package/esm/index.js +1 -1
  21. package/esm/input-search-wrapper/index.js +1 -1
  22. package/esm/json-editor/index.js +1 -1
  23. package/esm/json-editor/index.js.map +1 -1
  24. package/esm/mention-editor/index.js +1 -1
  25. package/esm/mentions-wrapper/index.js +1 -1
  26. package/esm/selector-wrapper/index.js +1 -1
  27. package/esm/selector-wrapper-search/index.js +1 -1
  28. package/esm/selector-wrapper-simple/index.js +1 -1
  29. package/esm/switch-confirm-wrapper/index.js +1 -1
  30. package/esm/table-cell-render/index.js +1 -1
  31. package/esm/table-scrollbar/index.js +1 -1
  32. package/esm/tag-wrapper/index.js +1 -1
  33. package/esm/upload-wrapper/index.js +1 -1
  34. package/index.d.ts +4 -0
  35. package/package.json +3 -1
  36. package/esm/ext-language_tools-0c27f877.js +0 -3
  37. package/esm/ext-language_tools-0c27f877.js.map +0 -1
  38. package/esm/mode-json-062fdb24.js +0 -3
  39. package/esm/mode-json-062fdb24.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/ace-editor-xml/validate-xml.ts","@flatbiz/antd/node_modules/ace-builds/src-noconflict/mode-xml.js","@flatbiz/antd/node_modules/ace-builds/src-noconflict/snippets/xml.js","@flatbiz/antd/src/ace-editor-xml/editor.tsx"],"sourcesContent":["/**\n * 验证xml格式的正确性\n * ```\n * result / true 验证通过\n * result / false 验证不通过,message为失败描述(使用富文本渲染)\n * ```\n */\nexport const validateXML = (xmlContent: string) => {\n // errorCode 0是xml正确,1是xml错误,2是无法验证\n let errorCode = 0;\n let errorMessage;\n // code for IE\n if (window['ActiveXObject']) {\n const xmlDoc = new window['ActiveXObject']('Microsoft.XMLDOM');\n xmlDoc.async = 'false';\n xmlDoc.loadXML(xmlContent);\n\n if (xmlDoc.parseError.errorCode != 0) {\n errorMessage = `错误code: ${xmlDoc.parseError.errorCode} \\n`;\n errorMessage = `${errorMessage} 错误原因: ${xmlDoc.parseError.reason} \\n`;\n errorMessage = `${errorMessage} 错误位置: ${xmlDoc.parseError.line}`;\n errorCode = 1;\n } else {\n errorMessage = '格式正确';\n }\n }\n // code for Mozilla, Firefox, Opera, chrome, safari,etc.\n else if (document.implementation['createDocument']) {\n const parser = new DOMParser();\n const xmlDoc = parser.parseFromString(xmlContent, 'text/xml');\n const error = xmlDoc.getElementsByTagName('parsererror');\n if (error.length > 0) {\n if (xmlDoc.documentElement.nodeName == 'parsererror') {\n errorCode = 1;\n errorMessage = xmlDoc.documentElement.childNodes[0].nodeValue;\n } else {\n errorCode = 1;\n console.log(xmlDoc.getElementsByTagName('parsererror'));\n errorMessage = xmlDoc.getElementsByTagName('parsererror')[0].innerHTML;\n }\n } else {\n errorMessage = '格式正确';\n }\n } else {\n errorCode = 2;\n errorMessage = '浏览器不支持验证,无法验证xml正确性';\n }\n return {\n message: errorMessage,\n result: errorCode == 0 ? true : false,\n };\n};\n","ace.define(\"ace/mode/xml_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar TextHighlightRules = require(\"./text_highlight_rules\").TextHighlightRules;\nvar XmlHighlightRules = function (normalize) {\n var tagRegex = \"[_:a-zA-Z\\xc0-\\uffff][-_:.a-zA-Z0-9\\xc0-\\uffff]*\";\n this.$rules = {\n start: [\n { token: \"string.cdata.xml\", regex: \"<\\\\!\\\\[CDATA\\\\[\", next: \"cdata\" },\n {\n token: [\"punctuation.instruction.xml\", \"keyword.instruction.xml\"],\n regex: \"(<\\\\?)(\" + tagRegex + \")\", next: \"processing_instruction\"\n },\n { token: \"comment.start.xml\", regex: \"<\\\\!--\", next: \"comment\" },\n {\n token: [\"xml-pe.doctype.xml\", \"xml-pe.doctype.xml\"],\n regex: \"(<\\\\!)(DOCTYPE)(?=[\\\\s])\", next: \"doctype\", caseInsensitive: true\n },\n { include: \"tag\" },\n { token: \"text.end-tag-open.xml\", regex: \"</\" },\n { token: \"text.tag-open.xml\", regex: \"<\" },\n { include: \"reference\" },\n { defaultToken: \"text.xml\" }\n ],\n processing_instruction: [{\n token: \"entity.other.attribute-name.decl-attribute-name.xml\",\n regex: tagRegex\n }, {\n token: \"keyword.operator.decl-attribute-equals.xml\",\n regex: \"=\"\n }, {\n include: \"whitespace\"\n }, {\n include: \"string\"\n }, {\n token: \"punctuation.xml-decl.xml\",\n regex: \"\\\\?>\",\n next: \"start\"\n }],\n doctype: [\n { include: \"whitespace\" },\n { include: \"string\" },\n { token: \"xml-pe.doctype.xml\", regex: \">\", next: \"start\" },\n { token: \"xml-pe.xml\", regex: \"[-_a-zA-Z0-9:]+\" },\n { token: \"punctuation.int-subset\", regex: \"\\\\[\", push: \"int_subset\" }\n ],\n int_subset: [{\n token: \"text.xml\",\n regex: \"\\\\s+\"\n }, {\n token: \"punctuation.int-subset.xml\",\n regex: \"]\",\n next: \"pop\"\n }, {\n token: [\"punctuation.markup-decl.xml\", \"keyword.markup-decl.xml\"],\n regex: \"(<\\\\!)(\" + tagRegex + \")\",\n push: [{\n token: \"text\",\n regex: \"\\\\s+\"\n },\n {\n token: \"punctuation.markup-decl.xml\",\n regex: \">\",\n next: \"pop\"\n },\n { include: \"string\" }]\n }],\n cdata: [\n { token: \"string.cdata.xml\", regex: \"\\\\]\\\\]>\", next: \"start\" },\n { token: \"text.xml\", regex: \"\\\\s+\" },\n { token: \"text.xml\", regex: \"(?:[^\\\\]]|\\\\](?!\\\\]>))+\" }\n ],\n comment: [\n { token: \"comment.end.xml\", regex: \"-->\", next: \"start\" },\n { defaultToken: \"comment.xml\" }\n ],\n reference: [{\n token: \"constant.language.escape.reference.xml\",\n regex: \"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\\\.-]+;)\"\n }],\n attr_reference: [{\n token: \"constant.language.escape.reference.attribute-value.xml\",\n regex: \"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\\\.-]+;)\"\n }],\n tag: [{\n token: [\"meta.tag.punctuation.tag-open.xml\", \"meta.tag.punctuation.end-tag-open.xml\", \"meta.tag.tag-name.xml\"],\n regex: \"(?:(<)|(</))((?:\" + tagRegex + \":)?\" + tagRegex + \")\",\n next: [\n { include: \"attributes\" },\n { token: \"meta.tag.punctuation.tag-close.xml\", regex: \"/?>\", next: \"start\" }\n ]\n }],\n tag_whitespace: [\n { token: \"text.tag-whitespace.xml\", regex: \"\\\\s+\" }\n ],\n whitespace: [\n { token: \"text.whitespace.xml\", regex: \"\\\\s+\" }\n ],\n string: [{\n token: \"string.xml\",\n regex: \"'\",\n push: [\n { token: \"string.xml\", regex: \"'\", next: \"pop\" },\n { defaultToken: \"string.xml\" }\n ]\n }, {\n token: \"string.xml\",\n regex: '\"',\n push: [\n { token: \"string.xml\", regex: '\"', next: \"pop\" },\n { defaultToken: \"string.xml\" }\n ]\n }],\n attributes: [{\n token: \"entity.other.attribute-name.xml\",\n regex: tagRegex\n }, {\n token: \"keyword.operator.attribute-equals.xml\",\n regex: \"=\"\n }, {\n include: \"tag_whitespace\"\n }, {\n include: \"attribute_value\"\n }],\n attribute_value: [{\n token: \"string.attribute-value.xml\",\n regex: \"'\",\n push: [\n { token: \"string.attribute-value.xml\", regex: \"'\", next: \"pop\" },\n { include: \"attr_reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n }, {\n token: \"string.attribute-value.xml\",\n regex: '\"',\n push: [\n { token: \"string.attribute-value.xml\", regex: '\"', next: \"pop\" },\n { include: \"attr_reference\" },\n { defaultToken: \"string.attribute-value.xml\" }\n ]\n }]\n };\n if (this.constructor === XmlHighlightRules)\n this.normalizeRules();\n};\n(function () {\n this.embedTagRules = function (HighlightRules, prefix, tag) {\n this.$rules.tag.unshift({\n token: [\"meta.tag.punctuation.tag-open.xml\", \"meta.tag.\" + tag + \".tag-name.xml\"],\n regex: \"(<)(\" + tag + \"(?=\\\\s|>|$))\",\n next: [\n { include: \"attributes\" },\n { token: \"meta.tag.punctuation.tag-close.xml\", regex: \"/?>\", next: prefix + \"start\" }\n ]\n });\n this.$rules[tag + \"-end\"] = [\n { include: \"attributes\" },\n { token: \"meta.tag.punctuation.tag-close.xml\", regex: \"/?>\", next: \"start\",\n onMatch: function (value, currentState, stack) {\n stack.splice(0);\n return this.token;\n } }\n ];\n this.embedRules(HighlightRules, prefix, [{\n token: [\"meta.tag.punctuation.end-tag-open.xml\", \"meta.tag.\" + tag + \".tag-name.xml\"],\n regex: \"(</)(\" + tag + \"(?=\\\\s|>|$))\",\n next: tag + \"-end\"\n }, {\n token: \"string.cdata.xml\",\n regex: \"<\\\\!\\\\[CDATA\\\\[\"\n }, {\n token: \"string.cdata.xml\",\n regex: \"\\\\]\\\\]>\"\n }]);\n };\n}).call(TextHighlightRules.prototype);\noop.inherits(XmlHighlightRules, TextHighlightRules);\nexports.XmlHighlightRules = XmlHighlightRules;\n\n});\n\nace.define(\"ace/mode/behaviour/xml\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/behaviour\",\"ace/token_iterator\",\"ace/lib/lang\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar Behaviour = require(\"../behaviour\").Behaviour;\nvar TokenIterator = require(\"../../token_iterator\").TokenIterator;\nvar lang = require(\"../../lib/lang\");\nfunction is(token, type) {\n return token && token.type.lastIndexOf(type + \".xml\") > -1;\n}\nvar XmlBehaviour = function () {\n this.add(\"string_dquotes\", \"insertion\", function (state, action, editor, session, text) {\n if (text == '\"' || text == \"'\") {\n var quote = text;\n var selected = session.doc.getTextRange(editor.getSelectionRange());\n if (selected !== \"\" && selected !== \"'\" && selected != '\"' && editor.getWrapBehavioursEnabled()) {\n return {\n text: quote + selected + quote,\n selection: false\n };\n }\n var cursor = editor.getCursorPosition();\n var line = session.doc.getLine(cursor.row);\n var rightChar = line.substring(cursor.column, cursor.column + 1);\n var iterator = new TokenIterator(session, cursor.row, cursor.column);\n var token = iterator.getCurrentToken();\n if (rightChar == quote && (is(token, \"attribute-value\") || is(token, \"string\"))) {\n return {\n text: \"\",\n selection: [1, 1]\n };\n }\n if (!token)\n token = iterator.stepBackward();\n if (!token)\n return;\n while (is(token, \"tag-whitespace\") || is(token, \"whitespace\")) {\n token = iterator.stepBackward();\n }\n var rightSpace = !rightChar || rightChar.match(/\\s/);\n if (is(token, \"attribute-equals\") && (rightSpace || rightChar == '>') || (is(token, \"decl-attribute-equals\") && (rightSpace || rightChar == '?'))) {\n return {\n text: quote + quote,\n selection: [1, 1]\n };\n }\n }\n });\n this.add(\"string_dquotes\", \"deletion\", function (state, action, editor, session, range) {\n var selected = session.doc.getTextRange(range);\n if (!range.isMultiLine() && (selected == '\"' || selected == \"'\")) {\n var line = session.doc.getLine(range.start.row);\n var rightChar = line.substring(range.start.column + 1, range.start.column + 2);\n if (rightChar == selected) {\n range.end.column++;\n return range;\n }\n }\n });\n this.add(\"autoclosing\", \"insertion\", function (state, action, editor, session, text) {\n if (text == '>') {\n var position = editor.getSelectionRange().start;\n var iterator = new TokenIterator(session, position.row, position.column);\n var token = iterator.getCurrentToken() || iterator.stepBackward();\n if (!token || !(is(token, \"tag-name\") || is(token, \"tag-whitespace\") || is(token, \"attribute-name\") || is(token, \"attribute-equals\") || is(token, \"attribute-value\")))\n return;\n if (is(token, \"reference.attribute-value\"))\n return;\n if (is(token, \"attribute-value\")) {\n var tokenEndColumn = iterator.getCurrentTokenColumn() + token.value.length;\n if (position.column < tokenEndColumn)\n return;\n if (position.column == tokenEndColumn) {\n var nextToken = iterator.stepForward();\n if (nextToken && is(nextToken, \"attribute-value\"))\n return;\n iterator.stepBackward();\n }\n }\n if (/^\\s*>/.test(session.getLine(position.row).slice(position.column)))\n return;\n while (!is(token, \"tag-name\")) {\n token = iterator.stepBackward();\n if (token.value == \"<\") {\n token = iterator.stepForward();\n break;\n }\n }\n var tokenRow = iterator.getCurrentTokenRow();\n var tokenColumn = iterator.getCurrentTokenColumn();\n if (is(iterator.stepBackward(), \"end-tag-open\"))\n return;\n var element = token.value;\n if (tokenRow == position.row)\n element = element.substring(0, position.column - tokenColumn);\n if (this.voidElements.hasOwnProperty(element.toLowerCase()))\n return;\n return {\n text: \">\" + \"</\" + element + \">\",\n selection: [1, 1]\n };\n }\n });\n this.add(\"autoindent\", \"insertion\", function (state, action, editor, session, text) {\n if (text == \"\\n\") {\n var cursor = editor.getCursorPosition();\n var line = session.getLine(cursor.row);\n var iterator = new TokenIterator(session, cursor.row, cursor.column);\n var token = iterator.getCurrentToken();\n if (token && token.type.indexOf(\"tag-close\") !== -1) {\n if (token.value == \"/>\")\n return;\n while (token && token.type.indexOf(\"tag-name\") === -1) {\n token = iterator.stepBackward();\n }\n if (!token) {\n return;\n }\n var tag = token.value;\n var row = iterator.getCurrentTokenRow();\n token = iterator.stepBackward();\n if (!token || token.type.indexOf(\"end-tag\") !== -1) {\n return;\n }\n if (this.voidElements && !this.voidElements[tag]) {\n var nextToken = session.getTokenAt(cursor.row, cursor.column + 1);\n var line = session.getLine(row);\n var nextIndent = this.$getIndent(line);\n var indent = nextIndent + session.getTabString();\n if (nextToken && nextToken.value === \"</\") {\n return {\n text: \"\\n\" + indent + \"\\n\" + nextIndent,\n selection: [1, indent.length, 1, indent.length]\n };\n }\n else {\n return {\n text: \"\\n\" + indent\n };\n }\n }\n }\n }\n });\n};\noop.inherits(XmlBehaviour, Behaviour);\nexports.XmlBehaviour = XmlBehaviour;\n\n});\n\nace.define(\"ace/mode/folding/xml\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/range\",\"ace/mode/folding/fold_mode\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../../lib/oop\");\nvar Range = require(\"../../range\").Range;\nvar BaseFoldMode = require(\"./fold_mode\").FoldMode;\nvar FoldMode = exports.FoldMode = function (voidElements, optionalEndTags) {\n BaseFoldMode.call(this);\n this.voidElements = voidElements || {};\n this.optionalEndTags = oop.mixin({}, this.voidElements);\n if (optionalEndTags)\n oop.mixin(this.optionalEndTags, optionalEndTags);\n};\noop.inherits(FoldMode, BaseFoldMode);\nvar Tag = function () {\n this.tagName = \"\";\n this.closing = false;\n this.selfClosing = false;\n this.start = { row: 0, column: 0 };\n this.end = { row: 0, column: 0 };\n};\nfunction is(token, type) {\n return token.type.lastIndexOf(type + \".xml\") > -1;\n}\n(function () {\n this.getFoldWidget = function (session, foldStyle, row) {\n var tag = this._getFirstTagInLine(session, row);\n if (!tag)\n return this.getCommentFoldWidget(session, row);\n if (tag.closing || (!tag.tagName && tag.selfClosing))\n return foldStyle === \"markbeginend\" ? \"end\" : \"\";\n if (!tag.tagName || tag.selfClosing || this.voidElements.hasOwnProperty(tag.tagName.toLowerCase()))\n return \"\";\n if (this._findEndTagInLine(session, row, tag.tagName, tag.end.column))\n return \"\";\n return \"start\";\n };\n this.getCommentFoldWidget = function (session, row) {\n if (/comment/.test(session.getState(row)) && /<!-/.test(session.getLine(row)))\n return \"start\";\n return \"\";\n };\n this._getFirstTagInLine = function (session, row) {\n var tokens = session.getTokens(row);\n var tag = new Tag();\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n if (is(token, \"tag-open\")) {\n tag.end.column = tag.start.column + token.value.length;\n tag.closing = is(token, \"end-tag-open\");\n token = tokens[++i];\n if (!token)\n return null;\n tag.tagName = token.value;\n tag.end.column += token.value.length;\n for (i++; i < tokens.length; i++) {\n token = tokens[i];\n tag.end.column += token.value.length;\n if (is(token, \"tag-close\")) {\n tag.selfClosing = token.value == '/>';\n break;\n }\n }\n return tag;\n }\n else if (is(token, \"tag-close\")) {\n tag.selfClosing = token.value == '/>';\n return tag;\n }\n tag.start.column += token.value.length;\n }\n return null;\n };\n this._findEndTagInLine = function (session, row, tagName, startColumn) {\n var tokens = session.getTokens(row);\n var column = 0;\n for (var i = 0; i < tokens.length; i++) {\n var token = tokens[i];\n column += token.value.length;\n if (column < startColumn)\n continue;\n if (is(token, \"end-tag-open\")) {\n token = tokens[i + 1];\n if (token && token.value == tagName)\n return true;\n }\n }\n return false;\n };\n this.getFoldWidgetRange = function (session, foldStyle, row) {\n var tags = session.getMatchingTags({ row: row, column: 0 });\n if (tags) {\n return new Range(tags.openTag.end.row, tags.openTag.end.column, tags.closeTag.start.row, tags.closeTag.start.column);\n }\n else {\n return this.getCommentFoldWidget(session, row)\n && session.getCommentFoldRange(row, session.getLine(row).length);\n }\n };\n}).call(FoldMode.prototype);\n\n});\n\nace.define(\"ace/mode/xml\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text\",\"ace/mode/xml_highlight_rules\",\"ace/mode/behaviour/xml\",\"ace/mode/folding/xml\",\"ace/worker/worker_client\"], function(require, exports, module){\"use strict\";\nvar oop = require(\"../lib/oop\");\nvar lang = require(\"../lib/lang\");\nvar TextMode = require(\"./text\").Mode;\nvar XmlHighlightRules = require(\"./xml_highlight_rules\").XmlHighlightRules;\nvar XmlBehaviour = require(\"./behaviour/xml\").XmlBehaviour;\nvar XmlFoldMode = require(\"./folding/xml\").FoldMode;\nvar WorkerClient = require(\"../worker/worker_client\").WorkerClient;\nvar Mode = function () {\n this.HighlightRules = XmlHighlightRules;\n this.$behaviour = new XmlBehaviour();\n this.foldingRules = new XmlFoldMode();\n};\noop.inherits(Mode, TextMode);\n(function () {\n this.voidElements = lang.arrayToMap([]);\n this.blockComment = { start: \"<!--\", end: \"-->\" };\n this.createWorker = function (session) {\n var worker = new WorkerClient([\"ace\"], \"ace/mode/xml_worker\", \"Worker\");\n worker.attachToDocument(session.getDocument());\n worker.on(\"error\", function (e) {\n session.setAnnotations(e.data);\n });\n worker.on(\"terminate\", function () {\n session.clearAnnotations();\n });\n return worker;\n };\n this.$id = \"ace/mode/xml\";\n}).call(Mode.prototype);\nexports.Mode = Mode;\n\n}); (function() {\n ace.require([\"ace/mode/xml\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","\n; (function() {\n ace.require([\"ace/snippets/xml\"], function(m) {\n if (typeof module == \"object\" && typeof exports == \"object\" && module) {\n module.exports = m;\n }\n });\n })();\n ","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nimport { Space } from 'antd';\nimport { CSSProperties, ReactElement, useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\nimport xmlFormat from 'xml-formatter';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\nimport { FlexLayout } from '../flex-layout';\nimport { validateXML } from './validate-xml';\n\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-xml';\nimport 'ace-builds/src-noconflict/snippets/xml';\n\nexport type AceEditorXmlProps = Omit<IAceEditorProps, 'mode' | 'value' | 'onChange' | 'theme'> & {\n /** 编辑器高度,默认值:100%,可输入值例如 300px、100% */\n height?: string;\n value?: string | TPlainObject | TPlainObject[];\n onChange?: (value?: string | TPlainObject | TPlainObject[]) => void;\n /** 配置输入自动提示关键字 */\n autoCompleterList?: { name: string; desc?: string }[];\n /** 隐藏【验证数据】按钮 */\n hiddenVerifyBtn?: boolean;\n /** 隐藏【美化】按钮 */\n hiddenFormatterBtn?: boolean;\n /**\n * 编辑器主题配置,例如:github、terminal、xcode\n * ```\n * 1. 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 2. 配置 theme = xxxx\n * ```\n */\n theme?: string;\n /** 底部额外布局 */\n footerExtraRender?: (children: ReactElement) => ReactElement;\n footerStyle?: CSSProperties;\n};\n\n/**\n * xml编辑器\n * ```\n * 1. 受控组件,需要使用value、onChange配合显示数据\n * 2. heigth 默认为100%,如果外层无高度,需要自定义设置height属性\n * 3. 通过 autoCompleterList 配置自动提示关键字\n * 4. 通过 hiddenVerifyBtn、hiddenFormatterBtn可隐藏底部操作按钮\n * 5. 通过 theme 配置编辑器主题,例如:\n * 5.1 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 5.2 配置 theme = xxxx\n * ```\n */\nexport const AceEditorXml = (props: AceEditorXmlProps) => {\n const {\n value,\n onChange,\n height,\n hiddenVerifyBtn,\n hiddenFormatterBtn,\n autoCompleterList,\n onLoad,\n ...otherProps\n } = props;\n const heightFt = isUndefinedOrNull(height) ? '100%' : height;\n\n const [rootNodekey, setRootNodekey] = useState(Date.now());\n const [errorMsg, setErrorMsg] = useState<string>();\n\n const editorRef = useRef<TAny>();\n\n const valueNew = useMemo(() => {\n if (isObject(value)) {\n return JSON.stringify(value, null, 2);\n }\n return value as string | undefined;\n }, [value]);\n\n const handleChange = hooks.useCallbackRef((content: string) => {\n if (errorMsg) {\n setErrorMsg(undefined);\n }\n onChange?.(content);\n });\n\n const getCompletions = hooks.useCallbackRef((_a, _b, _c, _d, callback) => {\n callback(\n null,\n autoCompleterList?.map((item) => ({\n name: item.name,\n value: item.name,\n // score: 100,\n meta: item.desc,\n })),\n );\n });\n\n const onLoadHandle = (editor) => {\n editorRef.current = editor;\n /** 向编辑器中添加自动补全列表 */\n const findIndex = editor.completers.findIndex((item) => item.id === 'custom');\n if (findIndex >= 0) {\n editor.completers[findIndex] = { getCompletions, id: 'custom' };\n } else {\n editor.completers.push({ getCompletions, id: 'custom' });\n }\n onLoad?.(editor);\n };\n\n const inputValueVerify = (inputValue: string) => {\n const result = validateXML(inputValue);\n if (result.result) {\n onChange?.(inputValue);\n } else {\n setErrorMsg(result.message);\n }\n };\n\n const footer = (\n <Space style={{ alignItems: 'flex-start' }}>\n <ButtonWrapper\n hidden={hiddenFormatterBtn === true}\n type=\"primary\"\n ghost\n onClick={() => {\n const currentValue = editorRef.current?.getValue();\n onChange?.(xmlFormat(currentValue || ''));\n }}\n >\n 美化\n </ButtonWrapper>\n <ButtonWrapper\n hidden={hiddenVerifyBtn === true}\n type=\"primary\"\n ghost\n onClick={() => {\n const currentValue = editorRef.current?.getValue();\n if (!currentValue) {\n onChange?.(currentValue);\n return;\n }\n inputValueVerify(currentValue);\n }}\n >\n 验证数据\n </ButtonWrapper>\n {errorMsg ? (\n <span style={{ color: 'red' }} dangerouslySetInnerHTML={{ __html: errorMsg }}></span>\n ) : null}\n </Space>\n );\n\n return (\n <FlexLayout fullIndex={0} className=\"ace-editor-xml\" key={rootNodekey} style={{ height: heightFt }}>\n <div className=\"aex-content\">\n <ErrorBoundaryWrapper\n onRenderReset={() => {\n onChange?.(undefined);\n setRootNodekey(Date.now());\n }}\n >\n <Ace\n fontSize={14}\n showPrintMargin={true}\n showGutter={true}\n highlightActiveLine={true}\n height=\"100%\"\n width=\"auto\"\n placeholder=\"请输入\"\n {...otherProps}\n setOptions={{\n useWorker: false,\n enableBasicAutocompletion: false,\n enableLiveAutocompletion: true,\n enableSnippets: false,\n showLineNumbers: true,\n tabSize: 2,\n ...otherProps.setOptions,\n }}\n mode=\"xml\"\n onLoad={onLoadHandle}\n onChange={handleChange}\n onBlur={(_event, editor) => {\n const value = editor?.getValue();\n if (value) {\n inputValueVerify(value);\n }\n }}\n value={valueNew}\n />\n </ErrorBoundaryWrapper>\n </div>\n <div className=\"ace-editor-xml-footer\" style={{ marginTop: 10, ...props.footerStyle }}>\n {props.footerExtraRender ? props.footerExtraRender(footer) : footer}\n </div>\n </FlexLayout>\n );\n};\n"],"names":["validateXML","xmlContent","errorCode","errorMessage","window","xmlDoc","async","loadXML","parseError","reason","line","document","implementation","parser","DOMParser","parseFromString","error","getElementsByTagName","length","documentElement","nodeName","childNodes","nodeValue","console","log","innerHTML","message","result","ace","define","require","exports","module","oop","TextHighlightRules","XmlHighlightRules","normalize","tagRegex","this","$rules","start","token","regex","next","caseInsensitive","include","defaultToken","processing_instruction","doctype","push","int_subset","cdata","comment","reference","attr_reference","tag","tag_whitespace","whitespace","string","attributes","attribute_value","constructor","normalizeRules","embedTagRules","HighlightRules","prefix","unshift","onMatch","value","currentState","stack","splice","embedRules","call","prototype","inherits","Behaviour","TokenIterator","is","type","lastIndexOf","XmlBehaviour","add","state","action","editor","session","text","quote","selected","doc","getTextRange","getSelectionRange","getWrapBehavioursEnabled","selection","cursor","getCursorPosition","getLine","row","rightChar","substring","column","iterator","getCurrentToken","stepBackward","rightSpace","match","range","isMultiLine","end","position","tokenEndColumn","getCurrentTokenColumn","nextToken","stepForward","test","slice","tokenRow","getCurrentTokenRow","tokenColumn","element","voidElements","hasOwnProperty","toLowerCase","indexOf","getTokenAt","nextIndent","$getIndent","indent","getTabString","Range","BaseFoldMode","FoldMode","optionalEndTags","mixin","Tag","tagName","closing","selfClosing","getFoldWidget","foldStyle","_getFirstTagInLine","getCommentFoldWidget","_findEndTagInLine","getState","tokens","getTokens","i","startColumn","getFoldWidgetRange","tags","getMatchingTags","openTag","closeTag","getCommentFoldRange","lang","TextMode","Mode","XmlFoldMode","WorkerClient","$behaviour","foldingRules","arrayToMap","blockComment","createWorker","worker","attachToDocument","getDocument","on","e","setAnnotations","data","clearAnnotations","$id","m","AceEditorXml","props","onChange","height","hiddenVerifyBtn","hiddenFormatterBtn","autoCompleterList","onLoad","otherProps","_objectWithoutPropertiesLoose","_excluded","heightFt","isUndefinedOrNull","_useState","useState","Date","now","rootNodekey","setRootNodekey","_useState2","errorMsg","setErrorMsg","editorRef","useRef","valueNew","useMemo","_isObject","JSON","stringify","handleChange","_hooks","useCallbackRef","content","undefined","getCompletions","_a","_b","_c","_d","callback","map","item","name","meta","desc","onLoadHandle","current","findIndex","completers","id","inputValueVerify","inputValue","footer","_jsxs","Space","style","alignItems","children","_jsx","ButtonWrapper","hidden","ghost","onClick","_editorRef$current","currentValue","getValue","xmlFormat","_editorRef$current2","color","dangerouslySetInnerHTML","__html","FlexLayout","fullIndex","className","ErrorBoundaryWrapper","onRenderReset","Ace","_extends","fontSize","showPrintMargin","showGutter","highlightActiveLine","width","placeholder","setOptions","useWorker","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","showLineNumbers","tabSize","mode","onBlur","_event","marginTop","footerStyle","footerExtraRender"],"mappings":"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","x_google_ignoreList":[1,2]}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/ace-editor-xml/validate-xml.ts","@flatbiz/antd/src/ace-editor-xml/editor.tsx"],"sourcesContent":["/**\n * 验证xml格式的正确性\n * ```\n * result / true 验证通过\n * result / false 验证不通过,message为失败描述(使用富文本渲染)\n * ```\n */\nexport const validateXML = (xmlContent: string) => {\n // errorCode 0是xml正确,1是xml错误,2是无法验证\n let errorCode = 0;\n let errorMessage;\n // code for IE\n if (window['ActiveXObject']) {\n const xmlDoc = new window['ActiveXObject']('Microsoft.XMLDOM');\n xmlDoc.async = 'false';\n xmlDoc.loadXML(xmlContent);\n\n if (xmlDoc.parseError.errorCode != 0) {\n errorMessage = `错误code: ${xmlDoc.parseError.errorCode} \\n`;\n errorMessage = `${errorMessage} 错误原因: ${xmlDoc.parseError.reason} \\n`;\n errorMessage = `${errorMessage} 错误位置: ${xmlDoc.parseError.line}`;\n errorCode = 1;\n } else {\n errorMessage = '格式正确';\n }\n }\n // code for Mozilla, Firefox, Opera, chrome, safari,etc.\n else if (document.implementation['createDocument']) {\n const parser = new DOMParser();\n const xmlDoc = parser.parseFromString(xmlContent, 'text/xml');\n const error = xmlDoc.getElementsByTagName('parsererror');\n if (error.length > 0) {\n if (xmlDoc.documentElement.nodeName == 'parsererror') {\n errorCode = 1;\n errorMessage = xmlDoc.documentElement.childNodes[0].nodeValue;\n } else {\n errorCode = 1;\n console.log(xmlDoc.getElementsByTagName('parsererror'));\n errorMessage = xmlDoc.getElementsByTagName('parsererror')[0].innerHTML;\n }\n } else {\n errorMessage = '格式正确';\n }\n } else {\n errorCode = 2;\n errorMessage = '浏览器不支持验证,无法验证xml正确性';\n }\n return {\n message: errorMessage,\n result: errorCode == 0 ? true : false,\n };\n};\n","import { isObject } from '@dimjs/lang';\nimport { isUndefinedOrNull, type TAny, type TPlainObject } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\n\nimport { Space } from 'antd';\nimport { CSSProperties, ReactElement, useMemo, useRef, useState } from 'react';\nimport Ace, { type IAceEditorProps } from 'react-ace';\nimport xmlFormat from 'xml-formatter';\nimport { ButtonWrapper } from '../button-wrapper';\nimport { ErrorBoundaryWrapper } from '../error-boundary-wrapper';\nimport { FlexLayout } from '../flex-layout';\nimport { validateXML } from './validate-xml';\n\nimport 'ace-builds/src-noconflict/ext-language_tools';\nimport 'ace-builds/src-noconflict/mode-xml';\nimport 'ace-builds/src-noconflict/snippets/xml';\n\nexport type AceEditorXmlProps = Omit<IAceEditorProps, 'mode' | 'value' | 'onChange' | 'theme'> & {\n /** 编辑器高度,默认值:100%,可输入值例如 300px、100% */\n height?: string;\n value?: string | TPlainObject | TPlainObject[];\n onChange?: (value?: string | TPlainObject | TPlainObject[]) => void;\n /** 配置输入自动提示关键字 */\n autoCompleterList?: { name: string; desc?: string }[];\n /** 隐藏【验证数据】按钮 */\n hiddenVerifyBtn?: boolean;\n /** 是否隐藏内部验证异常文案 */\n hiddenErrorMsg?: boolean;\n /** 隐藏【美化】按钮 */\n hiddenFormatterBtn?: boolean;\n /**\n * 编辑器主题配置,例如:github、terminal、xcode\n * ```\n * 1. 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 2. 配置 theme = xxxx\n * ```\n */\n theme?: string;\n /** 底部额外布局 */\n footerExtraRender?: (children: ReactElement) => ReactElement;\n footerStyle?: CSSProperties;\n};\n\n/**\n * xml编辑器\n * ```\n * 1. 受控组件,需要使用value、onChange配合显示数据\n * 2. heigth 默认为100%,如果外层无高度,需要自定义设置height属性\n * 3. 通过 autoCompleterList 配置自动提示关键字\n * 4. 通过 hiddenVerifyBtn、hiddenFormatterBtn可隐藏底部操作按钮\n * 5. 通过 theme 配置编辑器主题,例如:\n * 5.1 顶部引入 import 'ace-builds/src-noconflict/theme-xxxx';\n * 5.2 配置 theme = xxxx\n * ```\n */\nexport const AceEditorXml = (props: AceEditorXmlProps) => {\n const {\n value,\n onChange,\n height,\n hiddenVerifyBtn,\n hiddenFormatterBtn,\n autoCompleterList,\n onLoad,\n hiddenErrorMsg,\n ...otherProps\n } = props;\n const heightFt = isUndefinedOrNull(height) ? '100%' : height;\n\n const [rootNodekey, setRootNodekey] = useState(Date.now());\n const [errorMsg, setErrorMsg] = useState<string>();\n\n const editorRef = useRef<TAny>();\n\n const valueNew = useMemo(() => {\n if (isObject(value)) {\n return JSON.stringify(value, null, 2);\n }\n return value as string | undefined;\n }, [value]);\n\n const handleChange = hooks.useCallbackRef((content: string) => {\n if (errorMsg) {\n setErrorMsg(undefined);\n }\n onChange?.(content);\n });\n\n const getCompletions = hooks.useCallbackRef((_a, _b, _c, _d, callback) => {\n callback(\n null,\n autoCompleterList?.map((item) => ({\n name: item.name,\n value: item.name,\n // score: 100,\n meta: item.desc,\n })),\n );\n });\n\n const onLoadHandle = (editor) => {\n editorRef.current = editor;\n /** 向编辑器中添加自动补全列表 */\n const findIndex = editor.completers.findIndex((item) => item.id === 'custom');\n if (findIndex >= 0) {\n editor.completers[findIndex] = { getCompletions, id: 'custom' };\n } else {\n editor.completers.push({ getCompletions, id: 'custom' });\n }\n onLoad?.(editor);\n };\n\n const inputValueVerify = (inputValue: string) => {\n const result = validateXML(inputValue);\n if (result.result) {\n onChange?.(inputValue);\n } else {\n setErrorMsg(result.message);\n }\n };\n\n const footer = (\n <Space style={{ alignItems: 'flex-start' }}>\n <ButtonWrapper\n hidden={hiddenFormatterBtn === true}\n type=\"primary\"\n ghost\n onClick={() => {\n const currentValue = editorRef.current?.getValue();\n onChange?.(xmlFormat(currentValue || ''));\n }}\n >\n 美化\n </ButtonWrapper>\n <ButtonWrapper\n hidden={hiddenVerifyBtn === true}\n type=\"primary\"\n ghost\n onClick={() => {\n const currentValue = editorRef.current?.getValue();\n if (!currentValue) {\n onChange?.(currentValue);\n return;\n }\n inputValueVerify(currentValue);\n }}\n >\n 验证&格式化数据\n </ButtonWrapper>\n {!hiddenErrorMsg && errorMsg ? (\n <span style={{ color: 'red' }} dangerouslySetInnerHTML={{ __html: errorMsg }}></span>\n ) : null}\n </Space>\n );\n\n return (\n <FlexLayout fullIndex={0} className=\"ace-editor-xml\" key={rootNodekey} style={{ height: heightFt }}>\n <div className=\"aex-content\">\n <ErrorBoundaryWrapper\n onRenderReset={() => {\n onChange?.(undefined);\n setRootNodekey(Date.now());\n }}\n >\n <Ace\n fontSize={14}\n showPrintMargin={true}\n showGutter={true}\n highlightActiveLine={true}\n height=\"100%\"\n width=\"auto\"\n placeholder=\"请输入\"\n {...otherProps}\n setOptions={{\n useWorker: false,\n enableBasicAutocompletion: false,\n enableLiveAutocompletion: true,\n enableSnippets: false,\n showLineNumbers: true,\n tabSize: 2,\n ...otherProps.setOptions,\n }}\n mode=\"xml\"\n onLoad={onLoadHandle}\n onChange={handleChange}\n onBlur={(_event, editor) => {\n const value = editor?.getValue();\n if (value) {\n inputValueVerify(value);\n }\n }}\n value={valueNew}\n />\n </ErrorBoundaryWrapper>\n </div>\n <div className=\"ace-editor-xml-footer\" style={{ marginTop: 10, ...props.footerStyle }}>\n {props.footerExtraRender ? props.footerExtraRender(footer) : footer}\n </div>\n </FlexLayout>\n );\n};\n"],"names":["validateXML","xmlContent","errorCode","errorMessage","window","xmlDoc","async","loadXML","parseError","reason","line","document","implementation","parser","DOMParser","parseFromString","error","getElementsByTagName","length","documentElement","nodeName","childNodes","nodeValue","console","log","innerHTML","message","result","AceEditorXml","props","value","onChange","height","hiddenVerifyBtn","hiddenFormatterBtn","autoCompleterList","onLoad","hiddenErrorMsg","otherProps","_objectWithoutPropertiesLoose","_excluded","heightFt","isUndefinedOrNull","_useState","useState","Date","now","rootNodekey","setRootNodekey","_useState2","errorMsg","setErrorMsg","editorRef","useRef","valueNew","useMemo","_isObject","JSON","stringify","handleChange","_hooks","useCallbackRef","content","undefined","getCompletions","_a","_b","_c","_d","callback","map","item","name","meta","desc","onLoadHandle","editor","current","findIndex","completers","id","push","inputValueVerify","inputValue","footer","_jsxs","Space","style","alignItems","children","_jsx","ButtonWrapper","hidden","type","ghost","onClick","_editorRef$current","currentValue","getValue","xmlFormat","_editorRef$current2","color","dangerouslySetInnerHTML","__html","FlexLayout","fullIndex","className","ErrorBoundaryWrapper","onRenderReset","Ace","_extends","fontSize","showPrintMargin","showGutter","highlightActiveLine","width","placeholder","setOptions","useWorker","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets","showLineNumbers","tabSize","mode","onBlur","_event","marginTop","footerStyle","footerExtraRender"],"mappings":";63CAOO,IAAMA,EAAc,SAAdA,EAAeC,GAE1B,IAAIC,EAAY,EAChB,IAAIC,EAEJ,GAAIC,OAAO,iBAAkB,CAC3B,IAAMC,EAAS,IAAID,OAAO,iBAAiB,oBAC3CC,EAAOC,MAAQ,QACfD,EAAOE,QAAQN,GAEf,GAAII,EAAOG,WAAWN,WAAa,EAAG,CACpCC,aAA0BE,EAAOG,WAAWN,UAAc,MAC1DC,EAAkBA,EAAsBE,UAAAA,EAAOG,WAAWC,OAAW,MACrEN,EAAkBA,EAAY,UAAUE,EAAOG,WAAWE,KAC1DR,EAAY,CACd,KAAO,CACLC,EAAe,MACjB,CACF,MAEK,GAAIQ,SAASC,eAAe,kBAAmB,CAClD,IAAMC,EAAS,IAAIC,UACnB,IAAMT,EAASQ,EAAOE,gBAAgBd,EAAY,YAClD,IAAMe,EAAQX,EAAOY,qBAAqB,eAC1C,GAAID,EAAME,OAAS,EAAG,CACpB,GAAIb,EAAOc,gBAAgBC,UAAY,cAAe,CACpDlB,EAAY,EACZC,EAAeE,EAAOc,gBAAgBE,WAAW,GAAGC,SACtD,KAAO,CACLpB,EAAY,EACZqB,QAAQC,IAAInB,EAAOY,qBAAqB,gBACxCd,EAAeE,EAAOY,qBAAqB,eAAe,GAAGQ,SAC/D,CACF,KAAO,CACLtB,EAAe,MACjB,CACF,KAAO,CACLD,EAAY,EACZC,EAAe,qBACjB,CACA,MAAO,CACLuB,QAASvB,EACTwB,OAAQzB,GAAa,EAAI,KAAO,MAEpC,+HCIa0B,EAAe,SAAfA,EAAgBC,GAC3B,IACEC,EASED,EATFC,MACAC,EAQEF,EARFE,SACAC,EAOEH,EAPFG,OACAC,EAMEJ,EANFI,gBACAC,EAKEL,EALFK,mBACAC,EAIEN,EAJFM,kBACAC,EAGEP,EAHFO,OACAC,EAEER,EAFFQ,eACGC,EAAUC,EACXV,EAAKW,GACT,IAAMC,EAAWC,EAAkBV,GAAU,OAASA,EAEtD,IAAAW,EAAsCC,EAASC,KAAKC,OAA7CC,EAAWJ,EAAA,GAAEK,EAAcL,EAAA,GAClC,IAAAM,EAAgCL,IAAzBM,EAAQD,EAAA,GAAEE,EAAWF,EAAA,GAE5B,IAAMG,EAAYC,IAElB,IAAMC,EAAWC,GAAQ,WACvB,GAAIC,EAAS1B,GAAQ,CACnB,OAAO2B,KAAKC,UAAU5B,EAAO,KAAM,EACrC,CACA,OAAOA,CACT,GAAG,CAACA,IAEJ,IAAM6B,EAAeC,EAAMC,gBAAe,SAACC,GACzC,GAAIZ,EAAU,CACZC,EAAYY,UACd,CACAhC,GAAAA,UAAAA,EAAAA,EAAW+B,EACb,IAEA,IAAME,EAAiBJ,EAAMC,gBAAe,SAACI,EAAIC,EAAIC,EAAIC,EAAIC,GAC3DA,EACE,KACAlC,GAAiB,UAAA,EAAjBA,EAAmBmC,KAAI,SAACC,GAAI,MAAM,CAChCC,KAAMD,EAAKC,KACX1C,MAAOyC,EAAKC,KAEZC,KAAMF,EAAKG,KACX,IAEN,IAEA,IAAMC,EAAe,SAAfA,EAAgBC,GACpBxB,EAAUyB,QAAUD,EAEpB,IAAME,EAAYF,EAAOG,WAAWD,WAAU,SAACP,GAAI,OAAKA,EAAKS,KAAO,YACpE,GAAIF,GAAa,EAAG,CAClBF,EAAOG,WAAWD,GAAa,CAAEd,eAAAA,EAAgBgB,GAAI,SACvD,KAAO,CACLJ,EAAOG,WAAWE,KAAK,CAAEjB,eAAAA,EAAgBgB,GAAI,UAC/C,CACA5C,GAAAA,UAAAA,EAAAA,EAASwC,IAGX,IAAMM,EAAmB,SAAnBA,EAAoBC,GACxB,IAAMxD,EAAS3B,EAAYmF,GAC3B,GAAIxD,EAAOA,OAAQ,CACjBI,GAAAA,UAAAA,EAAAA,EAAWoD,EACb,KAAO,CACLhC,EAAYxB,EAAOD,QACrB,GAGF,IAAM0D,EACJC,EAACC,EAAK,CAACC,MAAO,CAAEC,WAAY,cAAeC,SAAA,CACzCC,EAACC,EAAa,CACZC,OAAQ1D,IAAuB,KAC/B2D,KAAK,UACLC,MAAK,KACLC,QAAS,SAAAA,IAAM,IAAAC,EACb,IAAMC,GAAYD,EAAG5C,EAAUyB,UAAO,UAAA,EAAjBmB,EAAmBE,WACxCnE,GAAQ,UAAA,EAARA,EAAWoE,EAAUF,GAAgB,IACrC,EAAAR,SACH,OAGDC,EAACC,EAAa,CACZC,OAAQ3D,IAAoB,KAC5B4D,KAAK,UACLC,MAAK,KACLC,QAAS,SAAAA,IAAM,IAAAK,EACb,IAAMH,GAAYG,EAAGhD,EAAUyB,UAAO,UAAA,EAAjBuB,EAAmBF,WACxC,IAAKD,EAAc,CACjBlE,GAAAA,UAAAA,EAAAA,EAAWkE,GACX,MACF,CACAf,EAAiBe,EACjB,EAAAR,SACH,cAGCpD,GAAkBa,EAClBwC,EAAA,OAAA,CAAMH,MAAO,CAAEc,MAAO,OAASC,wBAAyB,CAAEC,OAAQrD,KAChE,QAIR,OACEmC,EAACmB,EAAU,CAACC,UAAW,EAAGC,UAAU,iBAAmCnB,MAAO,CAAEvD,OAAQS,GAAWgD,UACjGC,EAAA,MAAA,CAAKgB,UAAU,cAAajB,SAC1BC,EAACiB,EAAoB,CACnBC,cAAe,SAAAA,IACb7E,GAAAA,UAAAA,EAAAA,EAAWgC,WACXf,EAAeH,KAAKC,MACpB,EAAA2C,SAEFC,EAACmB,EAAGC,EAAA,CACFC,SAAU,GACVC,gBAAiB,KACjBC,WAAY,KACZC,oBAAqB,KACrBlF,OAAO,OACPmF,MAAM,OACNC,YAAY,OACR9E,EAAU,CACd+E,WAAUP,EAAA,CACRQ,UAAW,MACXC,0BAA2B,MAC3BC,yBAA0B,KAC1BC,eAAgB,MAChBC,gBAAiB,KACjBC,QAAS,GACNrF,EAAW+E,YAEhBO,KAAK,MACLxF,OAAQuC,EACR5C,SAAU4B,EACVkE,OAAQ,SAAAA,EAACC,EAAQlD,GACf,IAAM9C,EAAQ8C,GAAM,UAAA,EAANA,EAAQsB,WACtB,GAAIpE,EAAO,CACToD,EAAiBpD,EACnB,CACA,EACFA,MAAOwB,SAIboC,EAAA,MAAA,CAAKgB,UAAU,wBAAwBnB,MAAKuB,EAAA,CAAIiB,UAAW,IAAOlG,EAAMmG,aAAcvC,SACnF5D,EAAMoG,kBAAoBpG,EAAMoG,kBAAkB7C,GAAUA,MAxCPrC,EA4C9D"}
@@ -6,5 +6,5 @@ import './../types/index.css';
6
6
  import './../fba-utils/index.css';
7
7
  import './index.css';
8
8
  /*! @flatjs/forge MIT @flatbiz/antd */
9
- import{isString as e}from"@dimjs/lang/cjs/is-string";import{_ as t,a as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isPromise as o}from"@dimjs/lang/cjs/is-promise";import{hooks as n}from"@wove/react/cjs/hooks";import{dom as i}from"@flatbiz/utils";import{Form as a,Space as l,Drawer as d}from"antd";import{useState as s,useMemo as c}from"react";import{createRoot as m}from"react-dom/client";import{ButtonWrapper as u}from"../button-wrapper/index.js";import{C as p}from"../index-7f4ad045.js";import{fbaHooks as f}from"../fba-hooks/index.js";import{C as v}from"../context-1f2093c6.js";import{jsx as j,jsxs as h}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/utils/cjs/class-names";import"../fba-utils/index.js";import"@dimjs/lang/cjs/is-array";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@wove/react/cjs/create-ctx";var x=["divElement","elementId","onOk","onCancel","content","configProviderProps","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","operatePosition","operateRender","width","okHidden","cancelHidden","extra"];var y=function e(i){var m;var y=i.divElement,w=i.elementId,g=i.onOk,k=i.onCancel,C=i.content,b=i.configProviderProps,P=i.okText,_=i.cancelText,E=i.okButtonExtraProps,B=i.cancelButtonExtraProps,I=i.operatePosition,R=I===void 0?"footer":I,W=i.operateRender,H=i.width,O=i.okHidden,T=i.cancelHidden,z=i.extra,F=r(i,x);var S=s(true),D=S[0],Y=S[1];var A=s(),L=A[0],N=A[1];var U=a.useForm(),q=U[0];var G=f.useResponsivePoint()||"";var J=n.useCallbackRef((function(){try{delete window[w]}catch(e){}Y(false)}));f.useEffectCustom((function(){window[w]=J}),[J]);var K=n.useCallbackRef((function(e){if(k){var t=k(q,e);if(t&&o(t)){return t.then(J)}}return J()}));var M=n.useCallbackRef((function(e){if(g){var t=g(q,e);if(t&&o(t)){return t.then(J)}}return J()}));var Q=h(l,{children:[T||B!=null&&B.hidden?null:j(u,t({},B,{onClick:K,children:_||"取消"})),O||E!=null&&E.hidden?null:j(u,t({type:"primary"},E,{onClick:M,children:P||"提交"}))]});var V=function e(){if(W){return W(q)}if(!O||!T){return Q}return null};var X=typeof z==="function"?z(q):z;var Z=function e(t){N(t)};var $=c((function(){if(!G)return undefined;if(["xs","sm"].includes(G)){return{width:"90%",maxWidth:"90%"}}if(H){return{width:H,maxWidth:"calc(100% - 200px)"}}return{width:"40%",maxWidth:"calc(100% - 200px)"}}),[G,H]);return j(v,{value:{onClose:J,updateBodyStyle:Z},children:j(p,t({},b,{children:j(d,t({maskClosable:true,destroyOnClose:true,onClose:J,width:$==null?void 0:$.width,contentWrapperStyle:{maxWidth:$==null?void 0:$.maxWidth},footer:R==="footer"?V():null},F,{styles:t({},F.styles,{body:t({},L,(m=F.styles)==null?void 0:m.body)}),extra:R==="header"?V():X,open:D,getContainer:y,children:typeof C==="function"?C(q,{onClose:J}):C}))}))})};var w={open:function e(r){var o=i.bodyAppendDivElement(),n=o.divElement,a=o.elementId;window["__dialog_drawer_elementId"]=a;var l=m(n);l.render(j(y,t({},r,{divElement:n,elementId:a})));return{close:function e(){var t,r;(t=(r=window)[a])==null?void 0:t.call(r)}}},close:function t(){try{var r,o;var n=window["__dialog_drawer_elementId"];if(e(n))(r=(o=window)[n])==null?void 0:r.call(o)}catch(e){}}};export{w as dialogDrawer};
9
+ import{isString as e}from"@dimjs/lang/cjs/is-string";import{_ as t,a as r}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isPromise as o}from"@dimjs/lang/cjs/is-promise";import{hooks as n}from"@wove/react/cjs/hooks";import{dom as i}from"@flatbiz/utils";import{Form as a,Space as l,Drawer as d}from"antd";import{useState as s,useMemo as c}from"react";import{createRoot as m}from"react-dom/client";import{ButtonWrapper as u}from"../button-wrapper/index.js";import{C as p}from"../index-7f4ad045.js";import{fbaHooks as f}from"../fba-hooks/index.js";import{C as v}from"../context-1f2093c6.js";import{jsx as j,jsxs as h}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/utils/cjs/class-names";import"../fba-utils/index.js";import"@dimjs/lang/cjs/is-array";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";import"../use-responsive-point-21b8c601.js";import"@wove/react/cjs/create-ctx";var x=["divElement","elementId","onOk","onCancel","content","configProviderProps","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","operatePosition","operateRender","width","okHidden","cancelHidden","extra"];var y=function e(i){var m;var y=i.divElement,w=i.elementId,g=i.onOk,k=i.onCancel,C=i.content,P=i.configProviderProps,b=i.okText,_=i.cancelText,E=i.okButtonExtraProps,B=i.cancelButtonExtraProps,I=i.operatePosition,R=I===void 0?"footer":I,W=i.operateRender,H=i.width,O=i.okHidden,T=i.cancelHidden,z=i.extra,F=r(i,x);var S=s(true),D=S[0],Y=S[1];var A=s(),L=A[0],N=A[1];var U=a.useForm(),q=U[0];var G=f.useResponsivePoint()||"";var J=n.useCallbackRef((function(){try{delete window[w]}catch(e){}Y(false)}));f.useEffectCustom((function(){window[w]=J}),[J]);var K=n.useCallbackRef((function(e){if(k){var t=k(q,e);if(t&&o(t)){return t.then(J)}}return J()}));var M=n.useCallbackRef((function(e){if(g){var t=g(q,e);if(t&&o(t)){return t.then(J)}}return J()}));var Q=h(l,{children:[T||B!=null&&B.hidden?null:j(u,t({},B,{onClick:K,children:_||"取消"})),O||E!=null&&E.hidden?null:j(u,t({type:"primary"},E,{onClick:M,children:b||"提交"}))]});var V=function e(){if(W){return W(q)}if(!O||!T){return Q}return null};var X=typeof z==="function"?z(q):z;var Z=function e(t){N(t)};var $=c((function(){if(!G)return undefined;if(["xs","sm"].includes(G)){return{width:"90%",maxWidth:"90%"}}if(H){return{width:H,maxWidth:"calc(100% - 200px)"}}return{width:"40%",maxWidth:"calc(100% - 200px)"}}),[G,H]);return j(v,{value:{onClose:J,updateBodyStyle:Z},children:j(p,t({},P,{children:j(d,t({maskClosable:true,destroyOnClose:true,onClose:J,contentWrapperStyle:{maxWidth:$==null?void 0:$.maxWidth},footer:R==="footer"?V():null},F,{width:$==null?void 0:$.width,styles:t({},F.styles,{body:t({},L,(m=F.styles)==null?void 0:m.body)}),extra:R==="header"?V():X,open:D,getContainer:y,children:typeof C==="function"?C(q,{onClose:J}):C}))}))})};var w={open:function e(r){var o=i.bodyAppendDivElement(),n=o.divElement,a=o.elementId;window["__dialog_drawer_elementId"]=a;var l=m(n);l.render(j(y,t({},r,{divElement:n,elementId:a})));return{close:function e(){var t,r;(t=(r=window)[a])==null?void 0:t.call(r)}}},close:function t(){try{var r,o;var n=window["__dialog_drawer_elementId"];if(e(n))(r=(o=window)[n])==null?void 0:r.call(o)}catch(e){}}};export{w as dialogDrawer};
10
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-drawer/dialog-drawer.tsx"],"sourcesContent":["import { isPromise, isString } from '@dimjs/lang';\nimport { dom, TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { CSSProperties, ReactElement, ReactNode, useMemo, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { ConfigProviderWrapper, ConfigProviderWrapperProps } from '../config-provider-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport { BodyAppendDivElementProps } from '../_utils/dom';\nimport { CtxProvider } from './context';\n\nexport type DialogDrawerProps = Omit<\n DrawerProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'open' | 'open' | 'footer' | 'extra'\n> & {\n okText?: string | ReactElement;\n cancelText?: string | ReactElement;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n configProviderProps?: ConfigProviderWrapperProps;\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => ReactElement);\n};\n\nconst ModalRender = (props: BodyAppendDivElementProps & DialogDrawerProps) => {\n const {\n divElement,\n elementId,\n onOk,\n onCancel,\n content,\n configProviderProps,\n okText,\n cancelText,\n okButtonExtraProps,\n cancelButtonExtraProps,\n operatePosition = 'footer',\n operateRender,\n width,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [open, setOpen] = useState(true);\n const [innerBodyStyle, setInnerBodyStyle] = useState<CSSProperties>();\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n window[elementId] = onClose;\n }, [onClose]);\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const operateGroup = (\n <Space>\n {cancelHidden || cancelButtonExtraProps?.hidden ? null : (\n <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n {cancelText || '取消'}\n </ButtonWrapper>\n )}\n {okHidden || okButtonExtraProps?.hidden ? null : (\n <ButtonWrapper type=\"primary\" {...okButtonExtraProps} onClick={onOkHandle}>\n {okText || '提交'}\n </ButtonWrapper>\n )}\n </Space>\n );\n\n const operateRenderHandle = () => {\n if (operateRender) {\n return operateRender(form);\n }\n if (!okHidden || !cancelHidden) {\n return operateGroup;\n }\n return null;\n };\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n\n const updateBodyStyle = (bodyStyle?: CSSProperties) => {\n setInnerBodyStyle(bodyStyle);\n };\n\n const customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n if (width) {\n return { width: width, maxWidth: 'calc(100% - 200px)' };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType, width]);\n\n return (\n <CtxProvider value={{ onClose, updateBodyStyle }}>\n <ConfigProviderWrapper {...configProviderProps}>\n <Drawer\n maskClosable={true}\n destroyOnClose\n onClose={onClose}\n width={customSize?.width}\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\n styles={{\n ...otherProps.styles,\n body: { ...innerBodyStyle, ...otherProps.styles?.body },\n // wrapper: {\n // maxWidth: customSize?.maxWidth,\n // ...otherProps.styles?.wrapper,\n // },\n }}\n extra={operatePosition === 'header' ? operateRenderHandle() : extraRender}\n open={open}\n getContainer={divElement}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n </ConfigProviderWrapper>\n </CtxProvider>\n );\n};\n\n/**\n * 抽屉弹框\n * ```\n * 1. 可嵌套使用\n * 2. 为什么不推荐使用\n * dialogDrawer.open 打开的内容无法适配兼容自定义主题、无法适配兼容旧版浏览器、无法兼容国际化\n * 适配兼容旧版浏览器(https://ant-design.antgroup.com/docs/react/compatible-style-cn)\n * 3. 需要修改默认主题风格的场景,请使用\n * const { appDialogDrawer } = FbaApp.useDialogDrawer();\n * appDialogDrawer.open({})\n * 4. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const dialogDrawer = {\n open: (props: DialogDrawerProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_drawer_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(<ModalRender {...props} divElement={divElement} elementId={elementId} />);\n return {\n close: () => {\n window[elementId]?.();\n },\n };\n },\n /**\n * ```\n * 1. 关闭最新弹框,如果有多个弹框只能关闭最后一个\n * 2. 多个弹框主动关闭,只能使用 dialogDrawer.open()返回值中的close\n * ```\n */\n close: () => {\n try {\n const elementId = window['__dialog_drawer_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","_otherProps$styles","divElement","elementId","onOk","onCancel","content","configProviderProps","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","width","okHidden","cancelHidden","extra","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","open","setOpen","_useState2","innerBodyStyle","setInnerBodyStyle","_Form$useForm","Form","useForm","form","screenType","fbaHooks","useResponsivePoint","onClose","_hooks","useCallbackRef","window","error","useEffectCustom","onCancelHandle","e","response","_isPromise","then","onOkHandle","operateGroup","_jsxs","Space","children","hidden","_jsx","ButtonWrapper","_extends","onClick","type","operateRenderHandle","extraRender","updateBodyStyle","bodyStyle","customSize","useMemo","undefined","includes","maxWidth","CtxProvider","value","ConfigProviderWrapper","Drawer","maskClosable","destroyOnClose","contentWrapperStyle","footer","styles","body","getContainer","dialogDrawer","_dom$bodyAppendDivEle","dom","bodyAppendDivElement","root","createRoot","render","close","_window$elementId","_window","call","_window$elementId2","_window2","_isString"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/dialog-drawer/dialog-drawer.tsx"],"sourcesContent":["import { isPromise, isString } from '@dimjs/lang';\nimport { dom, TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { CSSProperties, ReactElement, ReactNode, useMemo, useState } from 'react';\nimport { createRoot } from 'react-dom/client';\nimport { ButtonWrapper, ButtonWrapperProps } from '../button-wrapper';\nimport { ConfigProviderWrapper, ConfigProviderWrapperProps } from '../config-provider-wrapper';\nimport { fbaHooks } from '../fba-hooks';\nimport { BodyAppendDivElementProps } from '../_utils/dom';\nimport { CtxProvider } from './context';\n\nexport type DialogDrawerProps = Omit<\n DrawerProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'open' | 'open' | 'footer' | 'extra'\n> & {\n okText?: string | ReactElement;\n cancelText?: string | ReactElement;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n configProviderProps?: ConfigProviderWrapperProps;\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => ReactElement);\n};\n\nconst ModalRender = (props: BodyAppendDivElementProps & DialogDrawerProps) => {\n const {\n divElement,\n elementId,\n onOk,\n onCancel,\n content,\n configProviderProps,\n okText,\n cancelText,\n okButtonExtraProps,\n cancelButtonExtraProps,\n operatePosition = 'footer',\n operateRender,\n width,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [open, setOpen] = useState(true);\n const [innerBodyStyle, setInnerBodyStyle] = useState<CSSProperties>();\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const onClose = hooks.useCallbackRef(() => {\n try {\n delete window[elementId];\n } catch (error) {\n //\n }\n setOpen(false);\n });\n\n fbaHooks.useEffectCustom(() => {\n window[elementId] = onClose;\n }, [onClose]);\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n return onClose();\n });\n\n const operateGroup = (\n <Space>\n {cancelHidden || cancelButtonExtraProps?.hidden ? null : (\n <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n {cancelText || '取消'}\n </ButtonWrapper>\n )}\n {okHidden || okButtonExtraProps?.hidden ? null : (\n <ButtonWrapper type=\"primary\" {...okButtonExtraProps} onClick={onOkHandle}>\n {okText || '提交'}\n </ButtonWrapper>\n )}\n </Space>\n );\n\n const operateRenderHandle = () => {\n if (operateRender) {\n return operateRender(form);\n }\n if (!okHidden || !cancelHidden) {\n return operateGroup;\n }\n return null;\n };\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n\n const updateBodyStyle = (bodyStyle?: CSSProperties) => {\n setInnerBodyStyle(bodyStyle);\n };\n\n const customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n if (width) {\n return { width: width, maxWidth: 'calc(100% - 200px)' };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType, width]);\n\n return (\n <CtxProvider value={{ onClose, updateBodyStyle }}>\n <ConfigProviderWrapper {...configProviderProps}>\n <Drawer\n maskClosable={true}\n destroyOnClose\n onClose={onClose}\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\n width={customSize?.width}\n styles={{\n ...otherProps.styles,\n body: { ...innerBodyStyle, ...otherProps.styles?.body },\n // wrapper: {\n // maxWidth: customSize?.maxWidth,\n // ...otherProps.styles?.wrapper,\n // },\n }}\n extra={operatePosition === 'header' ? operateRenderHandle() : extraRender}\n open={open}\n getContainer={divElement}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n </ConfigProviderWrapper>\n </CtxProvider>\n );\n};\n\n/**\n * 抽屉弹框\n * ```\n * 1. 可嵌套使用\n * 2. 为什么不推荐使用\n * dialogDrawer.open 打开的内容无法适配兼容自定义主题、无法适配兼容旧版浏览器、无法兼容国际化\n * 适配兼容旧版浏览器(https://ant-design.antgroup.com/docs/react/compatible-style-cn)\n * 3. 需要修改默认主题风格的场景,请使用\n * const { appDialogDrawer } = FbaApp.useDialogDrawer();\n * appDialogDrawer.open({})\n * 4. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const dialogDrawer = {\n open: (props: DialogDrawerProps) => {\n const { divElement, elementId } = dom.bodyAppendDivElement();\n window['__dialog_drawer_elementId'] = elementId;\n const root = createRoot(divElement);\n root.render(<ModalRender {...props} divElement={divElement} elementId={elementId} />);\n return {\n close: () => {\n window[elementId]?.();\n },\n };\n },\n /**\n * ```\n * 1. 关闭最新弹框,如果有多个弹框只能关闭最后一个\n * 2. 多个弹框主动关闭,只能使用 dialogDrawer.open()返回值中的close\n * ```\n */\n close: () => {\n try {\n const elementId = window['__dialog_drawer_elementId'] as string;\n if (isString(elementId)) window[elementId]?.();\n } catch (error) {\n //\n }\n },\n};\n"],"names":["ModalRender","props","_otherProps$styles","divElement","elementId","onOk","onCancel","content","configProviderProps","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","width","okHidden","cancelHidden","extra","otherProps","_objectWithoutPropertiesLoose","_excluded","_useState","useState","open","setOpen","_useState2","innerBodyStyle","setInnerBodyStyle","_Form$useForm","Form","useForm","form","screenType","fbaHooks","useResponsivePoint","onClose","_hooks","useCallbackRef","window","error","useEffectCustom","onCancelHandle","e","response","_isPromise","then","onOkHandle","operateGroup","_jsxs","Space","children","hidden","_jsx","ButtonWrapper","_extends","onClick","type","operateRenderHandle","extraRender","updateBodyStyle","bodyStyle","customSize","useMemo","undefined","includes","maxWidth","CtxProvider","value","ConfigProviderWrapper","Drawer","maskClosable","destroyOnClose","contentWrapperStyle","footer","styles","body","getContainer","dialogDrawer","_dom$bodyAppendDivEle","dom","bodyAppendDivElement","root","createRoot","render","close","_window$elementId","_window","call","_window$elementId2","_window2","_isString"],"mappings":"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"}
@@ -9,5 +9,5 @@ import './../flex-layout/index.css';
9
9
  import './../text-symbol-wrapper/index.css';
10
10
  import './index.css';
11
11
  /*! @flatjs/forge MIT @flatbiz/antd */
12
- import{classNames as e}from"@dimjs/utils/cjs/class-names";import{hooks as r}from"@wove/react/cjs/hooks";import{_ as t}from"../_rollupPluginBabelHelpers-a0769acd.js";import{DndContext as i,closestCenter as n,DragOverlay as a}from"@dnd-kit/core";import{useSortable as o,SortableContext as d,verticalListSortingStrategy as l,arrayMove as m}from"@dnd-kit/sortable";import{toArray as s,getUuid as u}from"@flatbiz/utils";import{Form as p,Empty as c}from"antd";import{Fragment as f,useState as g,useRef as v,useMemo as h}from"react";import{B as y}from"../index-1f45bfd5.js";import{ButtonWrapper as I}from"../button-wrapper/index.js";import{FormItemGroup as x}from"../form-item-group/index.js";import{TextSymbolWrapper as j}from"../text-symbol-wrapper/index.js";import D from"@ant-design/icons/es/icons/DragOutlined";import{CSS as b}from"@dnd-kit/utilities";import{jsx as L,jsxs as N}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-7f4ad045.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"../flex-layout/index.js";function C(i){var n=p.useFormInstance();var a=i.isOverlay?false:i.getItemDragDisabled==null?void 0:i.getItemDragDisabled(i.uid,i.index);var d=o({id:i.uid,disabled:a}),l=d.listeners,m=d.setNodeRef,s=d.transform,u=d.transition;var c=r.useCallbackRef((function(){var e=i.dragIcon?i.dragIcon:L(D,{});return i.dragDisabled?L(f,{}):L("span",t({className:"drag-form-list-item-trigger"},l,{children:L("span",{children:e})}))}));var g=t({transform:b.Transform.toString(s),transition:u},i.style);var v=e("drag-form-list-item",{"drag-form-list-item-grap":i.isGray,"drag-form-list-item-disabled":a},i.className);return N("div",{style:t({},g),ref:m,className:v,children:[L(p.Item,{noStyle:true,children:c()}),L("div",{className:"drag-form-list-item-content",children:i.children({formListFieldData:i.formListFieldData,operation:i.formListOperate,formStageCompleteName:i.formStageCompleteName,index:i.index,getInsideFormItemName:function e(r){return[i.formListFieldData.name,r]},getInsideFormItemData:function e(){return n.getFieldValue(i.formStageCompleteName)||{}},prevCompleteName:i.prevCompleteName,uidKey:i.uidFieldName})})]})}var w=function e(r){if(r.wrapper)return r.wrapper({children:r.children});return r.children};var F=function e(r){var i,n,a;var o=(i=r.formListItemTitleHProps)==null?void 0:i.gap;var d=r.dragDisabled?[]:[{width:35,mainItem:L("div",{style:{marginRight:o===undefined?-15:-o}})}];return L(x.HorizontalUnion,t({},r.formListItemTitleHProps,{style:t({marginBottom:10},(n=r.formListItemTitleHProps)==null?void 0:n.style),groupConfigList:d.concat(((a=r.formListItemTitleList)==null?void 0:a.map((function(e){if(e.required){return{width:e.width,mainItem:L("div",{style:{textAlign:"center"},children:L(j,{text:e.title,symbolType:"required"})})}}return{width:e.width,mainItem:L("div",{style:{textAlign:"center"},children:e.title})}})))||[])}))};var k=function o(x){var j=[].concat(x.prevCompleteName,s(x.name));var D=g(),b=D[0],k=D[1];var R=p.useFormInstance();var S=v([]);var T=x.uidFieldName||"uid";var A=p.useWatch(j,R);var P=r.useCallbackRef((function(e){return e==null?void 0:e[T]}));function E(e){var r=e.active;k(r.id)}var O=r.useCallbackRef((function(){return R.getFieldValue(j)||[]}));function H(e){var r=e.active,t=e.over;var i=O();if(r.id!==t.id){var n=i.findIndex((function(e){return P(e)===r.id}));var a=i.findIndex((function(e){return P(e)===t.id}));var o=m(i,n,a);R.setFields([{name:x.name,value:o}]);x.onDropChange==null?void 0:x.onDropChange(o)}k(undefined)}var B=h((function(){if(!b)return undefined;var e=O();var r=e.findIndex((function(e){return P(e)===b}));return S.current.find((function(e){return e.name===r}))}),[b,O,P]);var _=x.itemGap?x.itemGap/2:8;return L(y,{className:e("drag-form-list",x.className),style:x.style,children:L(i,{collisionDetection:n,onDragStart:E,onDragEnd:H,children:L(p.List,{name:x.name,rules:x.rules,children:function e(r,i,n){var o;var m=n.errors;S.current=r;return N("div",{style:{borderRadius:"6px",border:m!=null&&m.length?"1px solid #ff4d4f":"1px solid transparent"},children:[(o=x.formListItemTitleList)!=null&&o.length?L(F,{formListItemTitleList:x.formListItemTitleList,formListItemTitleHProps:x.formListItemTitleHorizontalUnionProps,dragDisabled:x.dragDisabled}):null,!x.hiddenEmptyRender&&!(A!=null&&A.length)?L(c,{image:c.PRESENTED_IMAGE_SIMPLE,style:{margin:"15px 0"}}):null,L(w,{wrapper:x.formListChildrenWrapper,children:N(f,{children:[L(d,{items:O().map((function(e){return P(e)})),strategy:l,children:N(f,{children:[r.map((function(e,r){var n=P(O()[r]);if(!n)return null;return L(C,{formListOperate:i,formListFieldData:e,uid:n,dragIcon:x.dragIcon,getItemDragDisabled:x.getItemDragDisabled,dragDisabled:x.dragDisabled,isGray:!!n&&n===b,index:r,formStageCompleteName:[].concat(j,[e.name]),prevCompleteName:j,uidFieldName:T,style:t({},x.itemStyle,{padding:_+"px 0 "+_+"px 0"}),children:x.children},n+"-"+e.key)})),x.onCustomAddRowButton?x.onCustomAddRowButton(i):L(I,{hidden:x.hiddenAddRowButton,type:"dashed",block:true,onClick:function e(){var r;return i.add(t((r={},r[T]=u(),r),x.getAddRowDefaultValues==null?void 0:x.getAddRowDefaultValues()))},children:"添加"})]})}),L(a,{dropAnimation:{duration:0},children:b&&B?L(C,{isOverlay:true,uid:b,className:"drag-form-list-overlay",formListFieldData:B,dragIcon:x.dragIcon,formListOperate:null,index:0,formStageCompleteName:[].concat(j,[B.name]),prevCompleteName:j,uidFieldName:T,children:x.children},b):null}),L(p.ErrorList,{errors:m?[L("div",{style:{color:"#ff4d4f",padding:"5px"},children:m})]:undefined})]})})]})}})})})};export{k as DragFormList};
12
+ import{classNames as e}from"@dimjs/utils/cjs/class-names";import{hooks as r}from"@wove/react/cjs/hooks";import{_ as t}from"../_rollupPluginBabelHelpers-a0769acd.js";import{DndContext as i,closestCenter as n,DragOverlay as a}from"@dnd-kit/core";import{useSortable as o,SortableContext as d,verticalListSortingStrategy as l,arrayMove as m}from"@dnd-kit/sortable";import{toArray as s,getUuid as u}from"@flatbiz/utils";import{Form as p,Empty as c}from"antd";import{Fragment as f,useState as g,useRef as v,useMemo as h}from"react";import{B as y}from"../index-1f45bfd5.js";import{ButtonWrapper as I}from"../button-wrapper/index.js";import{FormItemGroup as x}from"../form-item-group/index.js";import{TextSymbolWrapper as j}from"../text-symbol-wrapper/index.js";import D from"@ant-design/icons/es/icons/DragOutlined";import{CSS as L}from"@dnd-kit/utilities";import{jsx as b,jsxs as N}from"react/jsx-runtime";import"@ant-design/icons/es/icons/LoadingOutlined";import"@dimjs/lang/cjs/is-promise";import"../index-7f4ad045.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"../fba-hooks/index.js";import"@dimjs/lang/cjs/is-array";import"../use-responsive-point-21b8c601.js";import"@dimjs/utils/cjs/extend";import"../fba-utils/index.js";import"../flex-layout/index.js";function C(i){var n=p.useFormInstance();var a=i.isOverlay?false:i.getItemDragDisabled==null?void 0:i.getItemDragDisabled(i.uid,i.index);var d=o({id:i.uid,disabled:a}),l=d.listeners,m=d.setNodeRef,s=d.transform,u=d.transition;var c=r.useCallbackRef((function(){var e=i.dragIcon?i.dragIcon:b(D,{});return i.dragDisabled?b(f,{}):b("span",t({className:"drag-form-list-item-trigger"},l,{children:b("span",{children:e})}))}));var g=t({transform:L.Transform.toString(s),transition:u},i.style);var v=e("drag-form-list-item",{"drag-form-list-item-grap":i.isGray,"drag-form-list-item-disabled":a},i.className);return N("div",{style:t({},g),ref:m,className:v,children:[b(p.Item,{noStyle:true,children:c()}),b("div",{className:"drag-form-list-item-content",children:i.children({formListFieldData:i.formListFieldData,operation:i.formListOperate,formStageCompleteName:i.formStageCompleteName,index:i.index,getInsideFormItemName:function e(r){return[i.formListFieldData.name,r]},getInsideFormItemData:function e(){return n.getFieldValue(i.formStageCompleteName)||{}},prevCompleteName:i.prevCompleteName,uidKey:i.uidFieldName})})]})}var w=function e(r){if(r.wrapper)return r.wrapper({children:r.children});return r.children};var F=function e(r){var i,n,a;var o=(i=r.formListItemTitleHProps)==null?void 0:i.gap;var d=r.dragDisabled?[]:[{width:35,mainItem:b("div",{style:{marginRight:o===undefined?-15:-o}})}];return b(x.HorizontalUnion,t({},r.formListItemTitleHProps,{style:t({marginBottom:10},(n=r.formListItemTitleHProps)==null?void 0:n.style),groupConfigList:d.concat(((a=r.formListItemTitleList)==null?void 0:a.map((function(e){if(e.required){return{width:e.width,mainItem:b("div",{style:{textAlign:"center"},children:b(j,{text:e.title,symbolType:"required"})})}}return{width:e.width,mainItem:b("div",{style:{textAlign:"center"},children:e.title})}})))||[])}))};var k=function o(x){var j=[].concat(x.prevCompleteName,s(x.name));var D=g(),L=D[0],k=D[1];var R=p.useFormInstance();var S=v([]);var T=x.uidFieldName||"uid";var A=p.useWatch(j,R);var P=r.useCallbackRef((function(e){return e==null?void 0:e[T]}));function E(e){var r=e.active;k(r.id)}var O=r.useCallbackRef((function(){return R.getFieldValue(j)||[]}));function H(e){var r=e.active,t=e.over;var i=O();if(r.id!==t.id){var n=i.findIndex((function(e){return P(e)===r.id}));var a=i.findIndex((function(e){return P(e)===t.id}));var o=m(i,n,a);R.setFields([{name:x.name,value:o}]);x.onDropChange==null?void 0:x.onDropChange(o)}k(undefined)}var B=h((function(){if(!L)return undefined;var e=O();var r=e.findIndex((function(e){return P(e)===L}));return S.current.find((function(e){return e.name===r}))}),[L,O,P]);var _=x.itemGap?x.itemGap/2:8;return b(y,{className:e("drag-form-list",x.className),style:x.style,children:b(i,{collisionDetection:n,onDragStart:E,onDragEnd:H,children:b(p.List,{name:x.name,rules:x.rules,children:function e(r,i,n){var o;var m=n.errors;S.current=r;return N("div",{style:{borderRadius:"6px",border:m!=null&&m.length?"1px solid #ff4d4f":"1px solid transparent"},children:[(o=x.formListItemTitleList)!=null&&o.length?b(F,{formListItemTitleList:x.formListItemTitleList,formListItemTitleHProps:x.formListItemTitleHorizontalUnionProps,dragDisabled:x.dragDisabled}):null,!x.hiddenEmptyRender&&!(A!=null&&A.length)?b(c,{image:c.PRESENTED_IMAGE_SIMPLE,style:{margin:"15px 0"}}):null,b(w,{wrapper:x.formListChildrenWrapper,children:N(f,{children:[b(d,{items:O().map((function(e){return P(e)})),strategy:l,children:N(f,{children:[r.map((function(e,r){var n=P(O()[r]);if(!n)return null;return b(C,{formListOperate:i,formListFieldData:e,uid:n,dragIcon:x.dragIcon,getItemDragDisabled:x.getItemDragDisabled,dragDisabled:x.dragDisabled,isGray:!!n&&n===L,index:r,formStageCompleteName:[].concat(j,[e.name]),prevCompleteName:j,uidFieldName:T,style:t({},x.itemStyle,{padding:_+"px 0 "+_+"px 0"}),children:x.children},n+"-"+e.key)})),x.onCustomAddRowButton?x.onCustomAddRowButton(i):b(I,{hidden:x.hiddenAddRowButton,type:"dashed",block:true,onClick:function e(){var r;return i.add(t((r={},r[T]=u(),r),x.getAddRowDefaultValues==null?void 0:x.getAddRowDefaultValues()))},children:"添加"})]})}),b(a,{dropAnimation:{duration:0},children:L&&B?b(C,{isOverlay:true,uid:L,className:"drag-form-list-overlay",formListFieldData:B,dragIcon:x.dragIcon,formListOperate:null,index:0,formStageCompleteName:[].concat(j,[B.name]),prevCompleteName:j,uidFieldName:T,children:x.children},L):null}),b(p.ErrorList,{errors:m?[b("div",{style:{color:"#ff4d4f",padding:"5px"},children:m})]:undefined})]})})]})}})})})};export{k as DragFormList};
13
13
  //# sourceMappingURL=index.js.map
@@ -3,5 +3,5 @@ import './../fba-hooks/index.css';
3
3
  import './../icon-wrapper/index.css';
4
4
  import './index.css';
5
5
  /*! @flatjs/forge MIT @flatbiz/antd */
6
- import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{_ as i}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as d,useEffect as m,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{IconWrapper as b}from"../icon-wrapper/index.js";import{jsx as C,jsxs as j}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-undefined";var g=function g(k){var y=k.value,I=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,O=k.onClickEditIconPre,R=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,_=k.onConfirmCallback;var B=u(false),F=B[0],H=B[1];var V=f(p);var q=d(y);var A=function(){if(V.isCtx){return k.showEditableIcon===undefined?V.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(V.isCtx){return k.editable===undefined?V.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();m((function(){H(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(y)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=y;H(true);T==null?void 0:T(y);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):C(b,{size:"small",icon:C(a,{}),onClick:J});if(!F){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return j(s,{size:8,children:[C("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(y!==q.current){I==null?void 0:I(q.current)}H(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&r!==null&&!o(r)&&r.target){var i;var a=(i=r.target)==null?void 0:i.value;if(l(a)||t(a)||c(a)){var s;e=(s=r.target)==null?void 0:s.value}}I==null?void 0:I(e)};var S=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(y,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){H(false);_==null?void 0:_(y,q.current);return n()}return e.call(this)}))};var U=typeof x==="function"?x({value:y,onChange:Q}):x;if(!A){return C(U.type,i({value:y,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):C(b,{size:"small",icon:C(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):C(b,{size:"small",icon:C(r,{style:{color:G.colorPrimary}}),onClick:M});return j(s,{direction:"horizontal",size:12,style:k.style,className:n("editable-field",{"editable-field-full":z},k.className),children:[C(U.type,i({value:y,onChange:Q},U.props)),W,X]})};export{g as EditableField};
6
+ import{classNames as n}from"@dimjs/utils/cjs/class-names";import r from"@ant-design/icons/es/icons/CloseOutlined";import e from"@ant-design/icons/es/icons/CheckOutlined";import{_ as i}from"../_rollupPluginBabelHelpers-a0769acd.js";import{isArray as o}from"@dimjs/lang/cjs/is-array";import{isNumber as t}from"@dimjs/lang/cjs/is-number";import{isString as l}from"@dimjs/lang/cjs/is-string";import a from"@ant-design/icons/es/icons/EditOutlined";import{isUndefinedOrNull as c}from"@flatbiz/utils";import{Space as s}from"antd";import{useState as u,useContext as f,useRef as d,useEffect as m,isValidElement as v}from"react";import{E as p}from"../context-25d0b686.js";import{fbaHooks as h}from"../fba-hooks/index.js";import{IconWrapper as C}from"../icon-wrapper/index.js";import{jsx as b,jsxs as j}from"react/jsx-runtime";import"@wove/react/cjs/hooks";import"../use-responsive-point-21b8c601.js";import"@dimjs/lang/cjs/is-undefined";var g=function g(k){var y=k.value,I=k.onChange,w=k.viewRender,E=k.placeholderValue,P=E===void 0?"-":E,x=k.editRender,z=k.isEditFull,O=k.onClickEditIconPre,R=k.onClickConfirmIconPre,N=k.iconConfig,T=k.onEditCallback,_=k.onConfirmCallback;var B=u(false),F=B[0],H=B[1];var V=f(p);var q=d(y);var A=function(){if(V.isCtx){return k.showEditableIcon===undefined?V.showEditableIcon:k.showEditableIcon}return k.showEditableIcon===undefined?true:k.showEditableIcon}();var D=function(){if(V.isCtx){return k.editable===undefined?V.editable:k.editable}return k.editable||false}();var G=h.useThemeToken();m((function(){H(D)}),[D]);var J=function n(){return new Promise((function(n,r){if(O){return Promise.resolve(O(y)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){q.current=y;H(true);T==null?void 0:T(y);return n()}return e.call(this)}))};var K=N!=null&&N.editIcon?N.editIcon({onClick:J}):b(C,{size:"small",icon:b(a,{}),onClick:J});if(!F){var L=(w?w(k.value):k.value)||P;if(l(L)||t(L)||c(L)||v(L)){if(!A){return L}return j(s,{size:8,children:[b("span",{children:L}),K]})}console.warn("对象作为React子对象无效",L)}var M=function n(){if(y!==q.current){I==null?void 0:I(q.current)}H(false)};var Q=function n(r){var e=r;if(typeof r==="object"&&r!==null&&!o(r)&&r.target){var i;var a=(i=r.target)==null?void 0:i.value;if(l(a)||t(a)||c(a)){var s;e=(s=r.target)==null?void 0:s.value}}I==null?void 0:I(e)};var S=function n(){return new Promise((function(n,r){if(R){return Promise.resolve(R(y,q.current)).then(function(n){try{return e.call(this)}catch(n){return r(n)}}.bind(this),r)}function e(){H(false);_==null?void 0:_(y,q.current);return n()}return e.call(this)}))};var U=typeof x==="function"?x({value:y,onChange:Q}):x;if(!A){return b(U.type,i({value:y,onChange:Q},U.props))}var W=N!=null&&N.confirmIcon?N.confirmIcon({onClick:S}):b(C,{size:"small",icon:b(e,{style:{color:G.colorPrimary}}),onClick:S});var X=N!=null&&N.cancelIcon?N.cancelIcon({onClick:M}):b(C,{size:"small",icon:b(r,{style:{color:G.colorPrimary}}),onClick:M});return j(s,{direction:"horizontal",size:12,style:k.style,className:n("editable-field",{"editable-field-full":z},k.className),children:[b(U.type,i({value:y,onChange:Q},U.props)),W,X]})};export{g as EditableField};
7
7
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  /* eslint-disable */
2
2
  import './index.css';
3
3
  /*! @flatjs/forge MIT @flatbiz/antd */
4
- import{E as e}from"../context-25d0b686.js";import{jsx as r}from"react/jsx-runtime";import"react";var t=function t(i){var a=i.editable===undefined?true:i.editable;var o=i.showEditableIcon===undefined?false:i.showEditableIcon;return r(e.Provider,{value:{editable:a,isCtx:true,showEditableIcon:o},children:i.children})};export{t as EditableFieldProvider};
4
+ import{E as e}from"../context-25d0b686.js";import{jsx as r}from"react/jsx-runtime";import"react";var t=function t(i){var o=i.editable===undefined?true:i.editable;var a=i.showEditableIcon===undefined?false:i.showEditableIcon;return r(e.Provider,{value:{editable:o,isCtx:true,showEditableIcon:a},children:i.children})};export{t as EditableFieldProvider};
5
5
  //# sourceMappingURL=index.js.map
@@ -7,5 +7,5 @@ import './../types/index.css';
7
7
  import './../flex-layout/index.css';
8
8
  import './index.css';
9
9
  /*! @flatjs/forge MIT @flatbiz/antd */
10
- import{fbaUtils as e}from"../fba-utils/index.js";import{hooks as o}from"@wove/react/cjs/hooks";import{a as n,_ as l}from"../_rollupPluginBabelHelpers-a0769acd.js";import{getUuid as a}from"@flatbiz/utils";import{createContext as r,useMemo as i,useContext as t,useState as s,createElement as d}from"react";import{classNames as u}from"@dimjs/utils/cjs/class-names";import{isNull as c}from"@dimjs/lang/cjs/is-null";import{isPromise as f}from"@dimjs/lang/cjs/is-promise";import{useSize as v}from"ahooks";import{Form as p,Modal as m,Space as g,Drawer as C,theme as h}from"antd";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{fbaHooks as x}from"../fba-hooks/index.js";import{FlexLayout as y}from"../flex-layout/index.js";import{g as b}from"../index-7f4ad045.js";import{jsx as w,jsxs as D}from"react/jsx-runtime";import{B as O}from"../index-1f45bfd5.js";import"@dimjs/lang/cjs/is-array";import"@ant-design/icons/es/icons/LoadingOutlined";import"../use-responsive-point-21b8c601.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";var j=r({});var R=["titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size"];var P=function e(a){var r,t,s;var d=a.titleExtra,g=a.title,C=a.onOk,h=a.onCancel,O=a.okButtonProps,j=a.cancelButtonProps,P=a.content,T=a.className,M=a.okHidden,N=a.cancelHidden,H=a.footer,B=a.cancelText,L=a.okText,A=a.size,z=n(a,R);var E=p.useForm(),F=E[0];var W=v(document.querySelector("html"));var _=b();var S=x.useResponsivePoint()||"";var Y=A===null?undefined:A===undefined?"middle":A;var q=o.useCallbackRef((function(){a.onClose==null?void 0:a.onClose()}));var I=o.useCallbackRef((function(e){if(h){var o=h(F,e);if(o&&f(o)){return o.then(q)}}q();return Promise.resolve()}));var U=o.useCallbackRef((function(e){if(C){var o=C(F,e);if(o&&f(o)){return o.then(q)}}q();return Promise.resolve()}));var G=[w(k,l({},j,{onClick:I,hidden:N,children:B||((r=_.FbaDialogModal)==null?void 0:r.cancelText)}),"0"),w(k,l({type:"primary"},O,{onClick:U,hidden:M,children:L||"提交"}),"1")];var J=c(H)?null:G;var K=i((function(){if(!(W!=null&&W.height)||!S)return undefined;if(["xs","sm"].includes(S)){return{height:(W==null?void 0:W.height)*.7}}if(Y=="large"){return{height:(W==null?void 0:W.height)*.7,width:W.width*.6}}if(Y=="small"){var e=W.width*.3;return{height:(W==null?void 0:W.height)*.4,width:e<470?470:e}}if(Y=="middle"){return{height:(W==null?void 0:W.height)*.55,width:W.width*.5}}return undefined}),[W==null?void 0:W.height,Y,(t=z.styles)==null||(t=t.body)==null?void 0:t.height,z.width,S]);return w(m,l({maskClosable:true,title:d?D(y,{direction:"horizontal",fullIndex:0,children:[w("span",{children:g}),d]}):g,centered:true,onCancel:q,destroyOnClose:true,width:K==null?void 0:K.width},z,{styles:l({},z.styles,{body:l({height:K==null?void 0:K.height,maxHeight:"calc(100vh - 200px)"},(s=z.styles)==null?void 0:s.body)}),className:u("fba-dialog-modal",{"fba-dialog-modal-title-extra":!!d},T),open:a.open,footer:J,children:typeof P==="function"?P(F,{onClose:q}):P}))};var T=function e(o){var n=u("fba-dialog-confirm",o.className);return w(P,l({okText:"确定",size:null,width:350,cancelText:"取消",maskClosable:true},o,{className:n}))};var M=function e(o){return w(T,l({okText:"确定",cancelHidden:true,maskClosable:false},o,{onOk:function e(n,l){return o.onClick==null?void 0:o.onClick(l)}}))};var N=["onOk","onCancel","content","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","operatePosition","operateRender","width","okHidden","cancelHidden","extra"];var H=function e(a){var r=a.onOk,t=a.onCancel,s=a.content,d=a.okText,c=a.cancelText,v=a.okButtonExtraProps,m=a.cancelButtonExtraProps,h=a.operatePosition,y=h===void 0?"footer":h,b=a.operateRender;a.width;var O=a.okHidden,j=a.cancelHidden,R=a.extra,P=n(a,N);var T=p.useForm(),M=T[0];var H=x.useResponsivePoint()||"";var B=o.useCallbackRef((function(e){a.onClose==null?void 0:a.onClose(e)}));var L=o.useCallbackRef((function(e){if(t){var o=t(M,e);if(o&&f(o)){return o.then(B)}}B(e);return Promise.resolve()}));var A=o.useCallbackRef((function(e){if(r){var o=r(M,e);if(o&&f(o)){return o.then(B)}}B(e);return Promise.resolve()}));var z=D(g,{children:[j||m!=null&&m.hidden?null:w(k,l({},m,{onClick:L,children:c||"取消"})),O||v!=null&&v.hidden?null:w(k,l({type:"primary"},v,{onClick:A,children:d||"提交"}))]});var E=function e(){if(b){return b(M)}if(!O||!j){return z}return null};var F=i((function(){if(!H)return undefined;if(["xs","sm"].includes(H)){return{width:"90%",maxWidth:"90%"}}return{width:"40%",maxWidth:"calc(100% - 200px)"}}),[H]);var W=typeof R==="function"?R(M):R;return w(C,l({maskClosable:true,destroyOnClose:true,width:F==null?void 0:F.width,contentWrapperStyle:{maxWidth:F==null?void 0:F.maxWidth},footer:y==="footer"?E():null},P,{styles:l({},P.styles),className:u("app-dialog-drawer",P.className),extra:y==="header"?E():W,open:a.open,onClose:B,children:typeof s==="function"?s(M,{onClose:B}):s}))};var B=function e(o){var n=o.className,l=o.message,a=o.mask;var r=h.useToken(),i=r.token;var t=i.colorPrimary;return w(m,{maskClosable:false,centered:true,destroyOnClose:true,className:u("fba-dialog-loading",n),open:o.open,footer:null,closable:false,style:{"--fba-loading-color":t},mask:a,children:w(O,{className:u("fba-dialog-loading-content"),children:D("div",{className:"loader-wrapper",children:[w("div",{className:"loader-inner"}),w("div",{className:"loader-text",children:l||"处理中"})]})})})};var L=function e(){var o=t(j);var n=function e(){o.dialogDrawerClose==null?void 0:o.dialogDrawerClose()};return{appDialogDrawer:{open:function e(a){o.dialogDrawerOpen==null?void 0:o.dialogDrawerOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var A=function e(){var o=t(j);var n=function e(){o.dialogDrawerClose2==null?void 0:o.dialogDrawerClose2()};return{appDialogDrawer2:{open:function e(a){o.dialogDrawerOpen2==null?void 0:o.dialogDrawerOpen2(l({},a,{open:true}));return{onClose:n}},close:n}}};var z=function e(){var o=t(j);var n=function e(){o.dialogModalClose==null?void 0:o.dialogModalClose()};return{appDialogModal:{open:function e(a){o.dialogModalOpen==null?void 0:o.dialogModalOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var E=function e(){var o=t(j);var n=function e(){o.dialogModalClose2==null?void 0:o.dialogModalClose2()};return{appDialogModal2:{open:function e(a){o.dialogModalOpen2==null?void 0:o.dialogModalOpen2(l({},a,{open:true}));return{onClose:n}},close:n}}};var F=function e(){var o=t(j);var n=function e(){o.dialogAlertClose==null?void 0:o.dialogAlertClose()};return{appDialogAlert:{open:function e(a){o.dialogAlertOpen==null?void 0:o.dialogAlertOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var W=function e(){var o=t(j);var n=function e(){o.dialogConfirmClose==null?void 0:o.dialogConfirmClose()};return{appDialogConfirm:{open:function e(a){o.dialogConfirmOpen==null?void 0:o.dialogConfirmOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var _=function e(){var o=t(j);var n=function e(){o.dialogLoadingClose==null?void 0:o.dialogLoadingClose()};return{appDialogLoading:{open:function e(a){o.dialogLoadingOpen==null?void 0:o.dialogLoadingOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var S=function e(n){var r=s({}),i=r[0],t=r[1];var u=s(a()),c=u[0],f=u[1];var v=s({}),p=v[0],m=v[1];var g=s(a()),C=g[0],h=g[1];var k=s({}),x=k[0],y=k[1];var b=s(a()),w=b[0],O=b[1];var R=s({}),N=R[0],L=R[1];var A=s(a()),z=A[0],E=A[1];var F=s({}),W=F[0],_=F[1];var S=s({}),Y=S[0],q=S[1];var I=s(),U=I[0],G=I[1];var J=s(a()),K=J[0],Q=J[1];var V=s(a()),X=V[0],Z=V[1];var $=s(a()),ee=$[0],oe=$[1];var ne=o.useCallbackRef((function(e){t(e)}));var le=o.useCallbackRef((function(e){t(l({},i,{open:false}));i.onClose==null?void 0:i.onClose(e);setTimeout((function(){f(a())}),200)}));var ae=o.useCallbackRef((function(e){m(e)}));var re=o.useCallbackRef((function(e){m(l({},p,{open:false}));p.onClose==null?void 0:p.onClose(e);setTimeout((function(){h(a())}),200)}));var ie=o.useCallbackRef((function(e){y(e)}));var te=o.useCallbackRef((function(){y(l({},x,{open:false}));x.onClose==null?void 0:x.onClose();setTimeout((function(){O(a())}),200)}));var se=o.useCallbackRef((function(e){L(e)}));var de=o.useCallbackRef((function(){L(l({},N,{open:false}));N.onClose==null?void 0:N.onClose();setTimeout((function(){E(a())}),200)}));var ue=o.useCallbackRef((function(e){_(e)}));var ce=o.useCallbackRef((function(){_(l({},W,{open:false}));W.onClose==null?void 0:W.onClose();setTimeout((function(){Q(a())}),200)}));var fe=o.useCallbackRef((function(e){q(e)}));var ve=o.useCallbackRef((function(){q(l({},Y,{open:false}));Y.onClose==null?void 0:Y.onClose();setTimeout((function(){Z(a())}),200)}));var pe=o.useCallbackRef((function(e){G(e)}));var me=o.useCallbackRef((function(){G(l({},U,{open:false}));setTimeout((function(){oe(a())}),200)}));return D(j.Provider,{value:{dialogDrawerOpen:ne,dialogDrawerClose:le,dialogDrawerOpen2:ae,dialogDrawerClose2:re,dialogModalOpen:ie,dialogModalClose:te,dialogModalOpen2:se,dialogModalClose2:de,dialogAlertOpen:ue,dialogAlertClose:ce,dialogConfirmOpen:fe,dialogConfirmClose:ve,dialogLoadingOpen:pe,dialogLoadingClose:me},children:[d(H,l({},i,{onClose:le,key:c})),d(H,l({},p,{onClose:re,key:C})),d(P,l({},x,{onClose:te,key:w})),d(P,l({},N,{onClose:de,key:z})),d(M,l({},W,{onClose:ce,key:K})),d(T,l({},Y,{onClose:ve,key:X})),d(B,l({},U,{key:ee})),n.children]})};var Y=e.attachPropertiesToComponent(S,{useDialogDrawer:L,useDialogDrawer2:A,useDialogModal:z,useDialogModal2:E,useDialogConfirm:W,useDialogAlert:F,useDialogLoading:_});export{Y as FbaApp};
10
+ import{fbaUtils as e}from"../fba-utils/index.js";import{hooks as o}from"@wove/react/cjs/hooks";import{a as n,_ as l}from"../_rollupPluginBabelHelpers-a0769acd.js";import{getUuid as a}from"@flatbiz/utils";import{createContext as r,useMemo as i,useContext as t,useState as s,createElement as d}from"react";import{classNames as u}from"@dimjs/utils/cjs/class-names";import{isNull as c}from"@dimjs/lang/cjs/is-null";import{isPromise as f}from"@dimjs/lang/cjs/is-promise";import{useSize as p}from"ahooks";import{Form as v,Modal as m,Space as g,Drawer as C,theme as h}from"antd";import{ButtonWrapper as k}from"../button-wrapper/index.js";import{fbaHooks as x}from"../fba-hooks/index.js";import{FlexLayout as y}from"../flex-layout/index.js";import{g as b}from"../index-7f4ad045.js";import{jsx as w,jsxs as D}from"react/jsx-runtime";import{B as O}from"../index-1f45bfd5.js";import"@dimjs/lang/cjs/is-array";import"@ant-design/icons/es/icons/LoadingOutlined";import"../use-responsive-point-21b8c601.js";import"antd/es/locale/en_US";import"antd/es/locale/zh_CN";import"dayjs";import"dayjs/locale/en";import"dayjs/locale/zh-cn";import"dayjs/plugin/advancedFormat";import"dayjs/plugin/customParseFormat";import"dayjs/plugin/localeData";import"dayjs/plugin/utc";import"dayjs/plugin/weekday";import"dayjs/plugin/weekOfYear";import"dayjs/plugin/weekYear";import"@dimjs/utils/cjs/extend";var j=r({});var R=["titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size"];var P=function e(a){var r,t,s;var d=a.titleExtra,g=a.title,C=a.onOk,h=a.onCancel,O=a.okButtonProps,j=a.cancelButtonProps,P=a.content,T=a.className,M=a.okHidden,N=a.cancelHidden,H=a.footer,B=a.cancelText,L=a.okText,A=a.size,z=n(a,R);var E=v.useForm(),W=E[0];var F=p(document.querySelector("html"));var _=b();var S=x.useResponsivePoint()||"";var Y=A===null?undefined:A===undefined?"middle":A;var q=o.useCallbackRef((function(){a.onClose==null?void 0:a.onClose()}));var I=o.useCallbackRef((function(e){if(h){var o=h(W,e);if(o&&f(o)){return o.then(q)}}q();return Promise.resolve()}));var U=o.useCallbackRef((function(e){if(C){var o=C(W,e);if(o&&f(o)){return o.then(q)}}q();return Promise.resolve()}));var G=[w(k,l({},j,{onClick:I,hidden:N,children:B||((r=_.FbaDialogModal)==null?void 0:r.cancelText)}),"0"),w(k,l({type:"primary"},O,{onClick:U,hidden:M,children:L||"提交"}),"1")];var J=c(H)?null:G;var K=i((function(){if(!(F!=null&&F.height)||!S)return undefined;if(["xs","sm"].includes(S)){return{height:(F==null?void 0:F.height)*.7}}if(Y=="large"){return{height:(F==null?void 0:F.height)*.7,width:F.width*.6}}if(Y=="small"){var e=F.width*.3;return{height:(F==null?void 0:F.height)*.4,width:e<470?470:e}}if(Y=="middle"){return{height:(F==null?void 0:F.height)*.55,width:F.width*.5}}return undefined}),[F==null?void 0:F.height,Y,(t=z.styles)==null||(t=t.body)==null?void 0:t.height,z.width,S]);return w(m,l({maskClosable:true,title:d?D(y,{direction:"horizontal",fullIndex:0,children:[w("span",{children:g}),d]}):g,centered:true,onCancel:q,destroyOnClose:true,width:K==null?void 0:K.width},z,{styles:l({},z.styles,{body:l({height:K==null?void 0:K.height,maxHeight:"calc(100vh - 200px)"},(s=z.styles)==null?void 0:s.body)}),className:u("fba-dialog-modal",{"fba-dialog-modal-title-extra":!!d},T),open:a.open,footer:J,children:typeof P==="function"?P(W,{onClose:q}):P}))};var T=function e(o){var n=u("fba-dialog-confirm",o.className);return w(P,l({okText:"确定",size:null,width:350,cancelText:"取消",maskClosable:true},o,{className:n}))};var M=function e(o){return w(T,l({okText:"确定",cancelHidden:true,maskClosable:false},o,{onOk:function e(n,l){return o.onClick==null?void 0:o.onClick(l)}}))};var N=["onOk","onCancel","content","okText","cancelText","okButtonExtraProps","cancelButtonExtraProps","operatePosition","operateRender","width","okHidden","cancelHidden","extra"];var H=function e(a){var r=a.onOk,t=a.onCancel,s=a.content,d=a.okText,c=a.cancelText,p=a.okButtonExtraProps,m=a.cancelButtonExtraProps,h=a.operatePosition,y=h===void 0?"footer":h,b=a.operateRender,O=a.width,j=a.okHidden,R=a.cancelHidden,P=a.extra,T=n(a,N);var M=v.useForm(),H=M[0];var B=x.useResponsivePoint()||"";var L=o.useCallbackRef((function(e){a.onClose==null?void 0:a.onClose(e)}));var A=o.useCallbackRef((function(e){if(t){var o=t(H,e);if(o&&f(o)){return o.then(L)}}L(e);return Promise.resolve()}));var z=o.useCallbackRef((function(e){if(r){var o=r(H,e);if(o&&f(o)){return o.then(L)}}L(e);return Promise.resolve()}));var E=D(g,{children:[R||m!=null&&m.hidden?null:w(k,l({},m,{onClick:A,children:c||"取消"})),j||p!=null&&p.hidden?null:w(k,l({type:"primary"},p,{onClick:z,children:d||"提交"}))]});var W=function e(){if(b){return b(H)}if(!j||!R){return E}return null};var F=i((function(){if(!B)return undefined;if(["xs","sm"].includes(B)){return{width:"90%",maxWidth:"90%"}}if(O){return{width:O,maxWidth:"calc(100% - 200px)"}}return{width:"40%",maxWidth:"calc(100% - 200px)"}}),[B,O]);var _=typeof P==="function"?P(H):P;return w(C,l({maskClosable:true,destroyOnClose:true,contentWrapperStyle:{maxWidth:F==null?void 0:F.maxWidth},footer:y==="footer"?W():null},T,{width:F==null?void 0:F.width,styles:l({},T.styles),className:u("app-dialog-drawer",T.className),extra:y==="header"?W():_,open:a.open,onClose:L,children:typeof s==="function"?s(H,{onClose:L}):s}))};var B=function e(o){var n=o.className,l=o.message,a=o.mask;var r=h.useToken(),i=r.token;var t=i.colorPrimary;return w(m,{maskClosable:false,centered:true,destroyOnClose:true,className:u("fba-dialog-loading",n),open:o.open,footer:null,closable:false,style:{"--fba-loading-color":t},mask:a,children:w(O,{className:u("fba-dialog-loading-content"),children:D("div",{className:"loader-wrapper",children:[w("div",{className:"loader-inner"}),w("div",{className:"loader-text",children:l||"处理中"})]})})})};var L=function e(){var o=t(j);var n=function e(){o.dialogDrawerClose==null?void 0:o.dialogDrawerClose()};return{appDialogDrawer:{open:function e(a){o.dialogDrawerOpen==null?void 0:o.dialogDrawerOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var A=function e(){var o=t(j);var n=function e(){o.dialogDrawerClose2==null?void 0:o.dialogDrawerClose2()};return{appDialogDrawer2:{open:function e(a){o.dialogDrawerOpen2==null?void 0:o.dialogDrawerOpen2(l({},a,{open:true}));return{onClose:n}},close:n}}};var z=function e(){var o=t(j);var n=function e(){o.dialogModalClose==null?void 0:o.dialogModalClose()};return{appDialogModal:{open:function e(a){o.dialogModalOpen==null?void 0:o.dialogModalOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var E=function e(){var o=t(j);var n=function e(){o.dialogModalClose2==null?void 0:o.dialogModalClose2()};return{appDialogModal2:{open:function e(a){o.dialogModalOpen2==null?void 0:o.dialogModalOpen2(l({},a,{open:true}));return{onClose:n}},close:n}}};var W=function e(){var o=t(j);var n=function e(){o.dialogAlertClose==null?void 0:o.dialogAlertClose()};return{appDialogAlert:{open:function e(a){o.dialogAlertOpen==null?void 0:o.dialogAlertOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var F=function e(){var o=t(j);var n=function e(){o.dialogConfirmClose==null?void 0:o.dialogConfirmClose()};return{appDialogConfirm:{open:function e(a){o.dialogConfirmOpen==null?void 0:o.dialogConfirmOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var _=function e(){var o=t(j);var n=function e(){o.dialogLoadingClose==null?void 0:o.dialogLoadingClose()};return{appDialogLoading:{open:function e(a){o.dialogLoadingOpen==null?void 0:o.dialogLoadingOpen(l({},a,{open:true}));return{onClose:n}},close:n}}};var S=function e(n){var r=s({}),i=r[0],t=r[1];var u=s(a()),c=u[0],f=u[1];var p=s({}),v=p[0],m=p[1];var g=s(a()),C=g[0],h=g[1];var k=s({}),x=k[0],y=k[1];var b=s(a()),w=b[0],O=b[1];var R=s({}),N=R[0],L=R[1];var A=s(a()),z=A[0],E=A[1];var W=s({}),F=W[0],_=W[1];var S=s({}),Y=S[0],q=S[1];var I=s(),U=I[0],G=I[1];var J=s(a()),K=J[0],Q=J[1];var V=s(a()),X=V[0],Z=V[1];var $=s(a()),ee=$[0],oe=$[1];var ne=o.useCallbackRef((function(e){t(e)}));var le=o.useCallbackRef((function(e){t(l({},i,{open:false}));i.onClose==null?void 0:i.onClose(e);setTimeout((function(){f(a())}),200)}));var ae=o.useCallbackRef((function(e){m(e)}));var re=o.useCallbackRef((function(e){m(l({},v,{open:false}));v.onClose==null?void 0:v.onClose(e);setTimeout((function(){h(a())}),200)}));var ie=o.useCallbackRef((function(e){y(e)}));var te=o.useCallbackRef((function(){y(l({},x,{open:false}));x.onClose==null?void 0:x.onClose();setTimeout((function(){O(a())}),200)}));var se=o.useCallbackRef((function(e){L(e)}));var de=o.useCallbackRef((function(){L(l({},N,{open:false}));N.onClose==null?void 0:N.onClose();setTimeout((function(){E(a())}),200)}));var ue=o.useCallbackRef((function(e){_(e)}));var ce=o.useCallbackRef((function(){_(l({},F,{open:false}));F.onClose==null?void 0:F.onClose();setTimeout((function(){Q(a())}),200)}));var fe=o.useCallbackRef((function(e){q(e)}));var pe=o.useCallbackRef((function(){q(l({},Y,{open:false}));Y.onClose==null?void 0:Y.onClose();setTimeout((function(){Z(a())}),200)}));var ve=o.useCallbackRef((function(e){G(e)}));var me=o.useCallbackRef((function(){G(l({},U,{open:false}));setTimeout((function(){oe(a())}),200)}));return D(j.Provider,{value:{dialogDrawerOpen:ne,dialogDrawerClose:le,dialogDrawerOpen2:ae,dialogDrawerClose2:re,dialogModalOpen:ie,dialogModalClose:te,dialogModalOpen2:se,dialogModalClose2:de,dialogAlertOpen:ue,dialogAlertClose:ce,dialogConfirmOpen:fe,dialogConfirmClose:pe,dialogLoadingOpen:ve,dialogLoadingClose:me},children:[d(H,l({},i,{onClose:le,key:c})),d(H,l({},v,{onClose:re,key:C})),d(P,l({},x,{onClose:te,key:w})),d(P,l({},N,{onClose:de,key:z})),d(M,l({},F,{onClose:ce,key:K})),d(T,l({},Y,{onClose:pe,key:X})),d(B,l({},U,{key:ee})),n.children]})};var Y=e.attachPropertiesToComponent(S,{useDialogDrawer:L,useDialogDrawer2:A,useDialogModal:z,useDialogModal2:E,useDialogConfirm:F,useDialogAlert:W,useDialogLoading:_});export{Y as FbaApp};
11
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/context.ts","@flatbiz/antd/src/fba-app/dialog-modal/index.tsx","@flatbiz/antd/src/fba-app/dialog-confirm/index.tsx","@flatbiz/antd/src/fba-app/dialog-alert/index.tsx","@flatbiz/antd/src/fba-app/dialog-drawer/index.tsx","@flatbiz/antd/src/fba-app/dialog-loading/index.tsx","@flatbiz/antd/src/fba-app/fba-app.tsx","@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { createContext } from 'react';\nimport { FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModalProps } from './dialog-modal';\n\nexport type FbaAppContextApi = {\n dialogDrawerOpen?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose?: (e?) => void;\n\n dialogDrawerOpen2?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose2?: (e?) => void;\n\n dialogModalOpen?: (data: FbaAppModalProps) => void;\n dialogModalClose?: () => void;\n\n dialogModalOpen2?: (data: FbaAppModalProps) => void;\n dialogModalClose2?: () => void;\n\n dialogAlertOpen?: (data: FbaAppAlertProps) => void;\n dialogAlertClose?: () => void;\n\n dialogConfirmOpen?: (data: FbaAppConfirmProps) => void;\n dialogConfirmClose?: () => void;\n\n dialogLoadingOpen?: (data?: FbaAppLoadingProps & { open?: boolean }) => void;\n dialogLoadingClose?: () => void;\n};\n\nexport const FbaAppContext = createContext<FbaAppContextApi>({});\n","import { isNull, isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport { FlexLayout } from '../../flex-layout';\nimport { getFbaLocaleMessage } from '../../_utils/i18n';\nimport './style.less';\n\nexport type FbaAppModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'okButtonProps' | 'cancelButtonProps' | 'footer'\n> & {\n /**\n * 内置尺寸,根据比例固定高度、宽度,默认:middle\n * ```\n * 1. 如果自定义了width、styles.body.height属性,size中的height、width将对应失效\n * 2. 可传 null 值,取消内置尺寸\n * ```\n */\n size?: 'small' | 'middle' | 'large' | null;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onClose?: () => void;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * @deprecated 已失效,可通过size属性设置\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n\n titleExtra?: ReactElement;\n /** null则隐藏footer */\n footer?: null | ReactElement | ReactElement[];\n};\n\nexport const FbaAppModal = (props: FbaAppModalProps) => {\n const {\n titleExtra,\n title,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n size,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const htmlSize = useSize(document.querySelector('html'));\n const localMessage = getFbaLocaleMessage();\n const screenType = fbaHooks.useResponsivePoint() || '';\n const sizeFt = size === null ? undefined : size === undefined ? 'middle' : size;\n\n const onClose = hooks.useCallbackRef(() => {\n props.onClose?.();\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || localMessage.FbaDialogModal?.cancelText}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = isNull(footer) ? null : operateGroup;\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n height: (htmlSize?.height as number) * 0.7,\n };\n }\n if (sizeFt == 'large') {\n return {\n height: (htmlSize?.height as number) * 0.7,\n width: htmlSize.width * 0.6,\n };\n }\n if (sizeFt == 'small') {\n const width = htmlSize.width * 0.3;\n return {\n height: (htmlSize?.height as number) * 0.4,\n width: width < 470 ? 470 : width,\n };\n }\n\n if (sizeFt == 'middle') {\n return {\n height: (htmlSize?.height as number) * 0.55,\n width: htmlSize.width * 0.5,\n };\n }\n return undefined;\n }, [htmlSize?.height, sizeFt, otherProps.styles?.body?.height, otherProps.width, screenType]);\n\n return (\n <Modal\n maskClosable={true}\n title={\n titleExtra ? (\n <FlexLayout direction=\"horizontal\" fullIndex={0}>\n <span>{title}</span>\n {titleExtra}\n </FlexLayout>\n ) : (\n title\n )\n }\n centered={true}\n onCancel={onClose}\n destroyOnClose\n width={customSize?.width}\n {...otherProps}\n styles={{\n ...otherProps.styles,\n body: {\n height: customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n ...otherProps.styles?.body,\n },\n }}\n className={classNames('fba-dialog-modal', { 'fba-dialog-modal-title-extra': !!titleExtra }, className)}\n open={props.open}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { FbaAppModal, FbaAppModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport type FbaAppConfirmProps = FbaAppModalProps;\n\nexport const FbaAppConfirm = (props: FbaAppConfirmProps) => {\n const className = classNames('fba-dialog-confirm', props.className);\n return (\n <FbaAppModal\n okText=\"确定\"\n size={null}\n width={350}\n cancelText=\"取消\"\n maskClosable={true}\n {...props}\n className={className}\n />\n );\n};\n","import { FbaAppConfirm } from '../dialog-confirm';\nimport { FbaAppModalProps } from '../dialog-modal';\n\n// export type DialogAlertProps = Omit<\n// DialogModalProps,\n// 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n// > & {\n// onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n// };\n\n// export const dialogAlert = {\n// open: (props: DialogAlertProps) => {\n// return dialogConfirm.open({\n// okText: '确定',\n// cancelHidden: true,\n// maskClosable: false,\n// ...props,\n// onOk: props.onClick,\n// } as DialogModalProps);\n// },\n// };\n\nexport type FbaAppAlertProps = Omit<\n FbaAppModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const FbaAppAlert = (props: FbaAppAlertProps) => {\n return (\n <FbaAppConfirm\n okText=\"确定\"\n cancelHidden={true}\n maskClosable={false}\n {...props}\n onOk={(_form, e) => {\n return props.onClick?.(e);\n }}\n />\n );\n};\n","import { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { ReactElement, ReactNode, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport './style.less';\n\nexport type FbaAppDrawerProps = Omit<\n DrawerProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'footer' | 'extra'\n> & {\n okText?: string | ReactElement;\n cancelText?: string | ReactElement;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content:\n | string\n | ReactElement\n | ((form: FormInstance, operate: { onClose: DrawerProps['onClose'] }) => ReactElement);\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => ReactElement);\n};\n\nexport const FbaAppDrawer = (props: FbaAppDrawerProps) => {\n const {\n onOk,\n onCancel,\n content,\n okText,\n cancelText,\n okButtonExtraProps,\n cancelButtonExtraProps,\n operatePosition = 'footer',\n operateRender,\n width = 600,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const onClose = hooks.useCallbackRef((e) => {\n props.onClose?.(e);\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n const operateGroup = (\n <Space>\n {cancelHidden || cancelButtonExtraProps?.hidden ? null : (\n <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n {cancelText || '取消'}\n </ButtonWrapper>\n )}\n {okHidden || okButtonExtraProps?.hidden ? null : (\n <ButtonWrapper type=\"primary\" {...okButtonExtraProps} onClick={onOkHandle}>\n {okText || '提交'}\n </ButtonWrapper>\n )}\n </Space>\n );\n\n const operateRenderHandle = () => {\n if (operateRender) {\n return operateRender(form);\n }\n if (!okHidden || !cancelHidden) {\n return operateGroup;\n }\n return null;\n };\n\n const customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType]);\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n return (\n <Drawer\n maskClosable={true}\n destroyOnClose\n width={customSize?.width}\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\n styles={{\n ...otherProps.styles,\n // wrapper: {\n // maxWidth: customSize?.maxWidth,\n // ...otherProps.styles?.wrapper,\n // },\n }}\n className={classNames('app-dialog-drawer', otherProps.className)}\n extra={operatePosition === 'header' ? operateRenderHandle() : extraRender}\n open={props.open}\n onClose={onClose}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Modal, theme } from 'antd';\nimport { CSSProperties } from 'react';\nimport { BlockLayout } from '../../block-layout';\nimport './style.less';\n\nexport type FbaAppLoadingProps = {\n className?: string;\n message?: string;\n mask?: boolean;\n};\n\nexport const FbaAppLoading = (props: FbaAppLoadingProps & { open?: boolean }) => {\n const { className, message, mask } = props;\n const { token } = theme.useToken();\n const colorPrimary = token.colorPrimary;\n\n return (\n <Modal\n maskClosable={false}\n centered={true}\n destroyOnClose\n className={classNames('fba-dialog-loading', className)}\n open={props.open}\n footer={null}\n closable={false}\n style={{ '--fba-loading-color': colorPrimary } as CSSProperties}\n mask={mask}\n >\n <BlockLayout className={classNames('fba-dialog-loading-content')}>\n <div className=\"loader-wrapper\">\n <div className=\"loader-inner\" />\n <div className=\"loader-text\">{message || '处理中'}</div>\n </div>\n </BlockLayout>\n </Modal>\n );\n};\n","import { getUuid } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { ReactNode, useContext, useState } from 'react';\nimport { FbaAppContext, FbaAppContextApi } from './context';\nimport { FbaAppAlert, FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirm, FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawer, FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoading, FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModal, FbaAppModalProps } from './dialog-modal';\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogDrawer = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose?.();\n };\n\n return {\n appDialogDrawer: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogDrawer2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose2?.();\n };\n\n return {\n appDialogDrawer2: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogModal2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose?.();\n };\n\n return {\n appDialogModal: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose2?.();\n };\n\n return {\n appDialogModal2: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogAlert = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogAlertClose?.();\n };\n\n return {\n appDialogAlert: {\n open: (data: FbaAppAlertProps) => {\n ctx.dialogAlertOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogConfirm = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogConfirmClose?.();\n };\n\n return {\n appDialogConfirm: {\n open: (data: FbaAppConfirmProps) => {\n ctx.dialogConfirmOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogLoading = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogLoadingClose?.();\n };\n\n return {\n appDialogLoading: {\n open: (data?: FbaAppLoadingProps) => {\n ctx.dialogLoadingOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\nexport const FbaApp = (props: { children: ReactNode }) => {\n const [drawerProps, setDrawerProps] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey, setDrawerKey] = useState(getUuid());\n\n const [drawerProps2, setDrawerProps2] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey2, setDrawerKey2] = useState(getUuid());\n\n const [modalProps, setModalProps] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey, setModalKey] = useState(getUuid());\n\n const [modalProps2, setModalProps2] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey2, setModalKey2] = useState(getUuid());\n\n const [alertProps, setAlertProps] = useState<FbaAppAlertProps>({} as FbaAppAlertProps);\n const [confirmProps, setConfirmProps] = useState<FbaAppConfirmProps>({} as FbaAppConfirmProps);\n const [loadingProps, setLoadingProps] = useState<FbaAppLoadingProps>();\n\n const [alertKey, setAlertKey] = useState(getUuid());\n const [confirmKey, setConfirmKey] = useState(getUuid());\n const [loadingKey, setLoadingKey] = useState(getUuid());\n\n const dialogDrawerOpen: FbaAppContextApi['dialogDrawerOpen'] = hooks.useCallbackRef((data) => {\n setDrawerProps(data);\n });\n const dialogDrawerClose = hooks.useCallbackRef((e) => {\n setDrawerProps({ ...drawerProps, open: false } as FbaAppDrawerProps);\n drawerProps.onClose?.(e);\n setTimeout(() => {\n setDrawerKey(getUuid());\n }, 200);\n });\n\n const dialogDrawerOpen2: FbaAppContextApi['dialogDrawerOpen2'] = hooks.useCallbackRef((data) => {\n setDrawerProps2(data);\n });\n\n const dialogDrawerClose2 = hooks.useCallbackRef((e) => {\n setDrawerProps2({ ...drawerProps2, open: false } as FbaAppDrawerProps);\n drawerProps2.onClose?.(e);\n setTimeout(() => {\n setDrawerKey2(getUuid());\n }, 200);\n });\n\n const dialogModalOpen: FbaAppContextApi['dialogModalOpen'] = hooks.useCallbackRef((data) => {\n setModalProps(data);\n });\n\n const dialogModalClose = hooks.useCallbackRef(() => {\n setModalProps({ ...modalProps, open: false } as FbaAppModalProps);\n modalProps.onClose?.();\n setTimeout(() => {\n setModalKey(getUuid());\n }, 200);\n });\n\n const dialogModalOpen2: FbaAppContextApi['dialogModalOpen2'] = hooks.useCallbackRef((data) => {\n setModalProps2(data);\n });\n\n const dialogModalClose2 = hooks.useCallbackRef(() => {\n setModalProps2({ ...modalProps2, open: false } as FbaAppModalProps);\n modalProps2.onClose?.();\n setTimeout(() => {\n setModalKey2(getUuid());\n }, 200);\n });\n\n const dialogAlertOpen: FbaAppContextApi['dialogAlertOpen'] = hooks.useCallbackRef((data) => {\n setAlertProps(data);\n });\n\n const dialogAlertClose = hooks.useCallbackRef(() => {\n setAlertProps({ ...alertProps, open: false } as FbaAppAlertProps);\n alertProps.onClose?.();\n setTimeout(() => {\n setAlertKey(getUuid());\n }, 200);\n });\n\n const dialogConfirmOpen: FbaAppContextApi['dialogConfirmOpen'] = hooks.useCallbackRef((data) => {\n setConfirmProps(data);\n });\n\n const dialogConfirmClose = hooks.useCallbackRef(() => {\n setConfirmProps({ ...confirmProps, open: false } as FbaAppConfirmProps);\n confirmProps.onClose?.();\n setTimeout(() => {\n setConfirmKey(getUuid());\n }, 200);\n });\n\n const dialogLoadingOpen: FbaAppContextApi['dialogLoadingOpen'] = hooks.useCallbackRef((data) => {\n setLoadingProps(data);\n });\n\n const dialogLoadingClose = hooks.useCallbackRef(() => {\n setLoadingProps({ ...loadingProps, open: false } as FbaAppLoadingProps);\n setTimeout(() => {\n setLoadingKey(getUuid());\n }, 200);\n });\n\n return (\n <FbaAppContext.Provider\n value={{\n dialogDrawerOpen,\n dialogDrawerClose,\n dialogDrawerOpen2,\n dialogDrawerClose2,\n dialogModalOpen,\n dialogModalClose,\n dialogModalOpen2,\n dialogModalClose2,\n dialogAlertOpen,\n dialogAlertClose,\n dialogConfirmOpen,\n dialogConfirmClose,\n dialogLoadingOpen,\n dialogLoadingClose,\n }}\n >\n <FbaAppDrawer {...drawerProps} onClose={dialogDrawerClose} key={drawerKey}></FbaAppDrawer>\n <FbaAppDrawer {...drawerProps2} onClose={dialogDrawerClose2} key={drawerKey2}></FbaAppDrawer>\n <FbaAppModal {...modalProps} onClose={dialogModalClose} key={modalKey}></FbaAppModal>\n <FbaAppModal {...modalProps2} onClose={dialogModalClose2} key={modalKey2}></FbaAppModal>\n <FbaAppAlert {...alertProps} onClose={dialogAlertClose} key={alertKey}></FbaAppAlert>\n <FbaAppConfirm {...confirmProps} onClose={dialogConfirmClose} key={confirmKey}></FbaAppConfirm>\n <FbaAppLoading {...loadingProps} key={loadingKey}></FbaAppLoading>\n {props.children}\n </FbaAppContext.Provider>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaAppContext","createContext","FbaAppModal","props","_localMessage$FbaDial","_otherProps$styles","_otherProps$styles2","titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size","otherProps","_objectWithoutPropertiesLoose","_excluded","_Form$useForm","Form","useForm","form","htmlSize","useSize","document","querySelector","localMessage","getFbaLocaleMessage","screenType","fbaHooks","useResponsivePoint","sizeFt","undefined","onClose","_hooks","useCallbackRef","onCancelHandle","e","response","_isPromise","then","Promise","resolve","onOkHandle","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","FbaDialogModal","type","footerNew","_isNull","customSize","useMemo","height","includes","width","styles","body","Modal","maskClosable","_jsxs","FlexLayout","direction","fullIndex","centered","destroyOnClose","maxHeight","_classNames","open","FbaAppConfirm","FbaAppAlert","_form","FbaAppDrawer","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","extra","Space","operateRenderHandle","maxWidth","extraRender","Drawer","contentWrapperStyle","FbaAppLoading","message","mask","_theme$useToken","theme","useToken","token","colorPrimary","closable","style","BlockLayout","useDialogDrawer","ctx","useContext","dialogDrawerClose","appDialogDrawer","data","dialogDrawerOpen","close","useDialogDrawer2","dialogDrawerClose2","appDialogDrawer2","dialogDrawerOpen2","useDialogModal","dialogModalClose","appDialogModal","dialogModalOpen","useDialogModal2","dialogModalClose2","appDialogModal2","dialogModalOpen2","useDialogAlert","dialogAlertClose","appDialogAlert","dialogAlertOpen","useDialogConfirm","dialogConfirmClose","appDialogConfirm","dialogConfirmOpen","useDialogLoading","dialogLoadingClose","appDialogLoading","dialogLoadingOpen","FbaApp","_useState","useState","drawerProps","setDrawerProps","_useState2","getUuid","drawerKey","setDrawerKey","_useState3","drawerProps2","setDrawerProps2","_useState4","drawerKey2","setDrawerKey2","_useState5","modalProps","setModalProps","_useState6","modalKey","setModalKey","_useState7","modalProps2","setModalProps2","_useState8","modalKey2","setModalKey2","_useState9","alertProps","setAlertProps","_useState10","confirmProps","setConfirmProps","_useState11","loadingProps","setLoadingProps","_useState12","alertKey","setAlertKey","_useState13","confirmKey","setConfirmKey","_useState14","loadingKey","setLoadingKey","setTimeout","Provider","value","_createElement","key","fbaUtils","attachPropertiesToComponent","FbaAppInner"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["@flatbiz/antd/src/fba-app/context.ts","@flatbiz/antd/src/fba-app/dialog-modal/index.tsx","@flatbiz/antd/src/fba-app/dialog-confirm/index.tsx","@flatbiz/antd/src/fba-app/dialog-alert/index.tsx","@flatbiz/antd/src/fba-app/dialog-drawer/index.tsx","@flatbiz/antd/src/fba-app/dialog-loading/index.tsx","@flatbiz/antd/src/fba-app/fba-app.tsx","@flatbiz/antd/src/fba-app/index.ts"],"sourcesContent":["import { createContext } from 'react';\nimport { FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModalProps } from './dialog-modal';\n\nexport type FbaAppContextApi = {\n dialogDrawerOpen?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose?: (e?) => void;\n\n dialogDrawerOpen2?: (data: FbaAppDrawerProps) => void;\n dialogDrawerClose2?: (e?) => void;\n\n dialogModalOpen?: (data: FbaAppModalProps) => void;\n dialogModalClose?: () => void;\n\n dialogModalOpen2?: (data: FbaAppModalProps) => void;\n dialogModalClose2?: () => void;\n\n dialogAlertOpen?: (data: FbaAppAlertProps) => void;\n dialogAlertClose?: () => void;\n\n dialogConfirmOpen?: (data: FbaAppConfirmProps) => void;\n dialogConfirmClose?: () => void;\n\n dialogLoadingOpen?: (data?: FbaAppLoadingProps & { open?: boolean }) => void;\n dialogLoadingClose?: () => void;\n};\n\nexport const FbaAppContext = createContext<FbaAppContextApi>({});\n","import { isNull, isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\n\nimport { TNoopDefine } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { useSize } from 'ahooks';\nimport { Form, FormInstance, Modal, ModalProps } from 'antd';\nimport { ReactElement, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport { FlexLayout } from '../../flex-layout';\nimport { getFbaLocaleMessage } from '../../_utils/i18n';\nimport './style.less';\n\nexport type FbaAppModalProps = Omit<\n ModalProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'okButtonProps' | 'cancelButtonProps' | 'footer'\n> & {\n /**\n * 内置尺寸,根据比例固定高度、宽度,默认:middle\n * ```\n * 1. 如果自定义了width、styles.body.height属性,size中的height、width将对应失效\n * 2. 可传 null 值,取消内置尺寸\n * ```\n */\n size?: 'small' | 'middle' | 'large' | null;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onClose?: () => void;\n content: string | ReactElement | ((form: FormInstance, operate: { onClose: TNoopDefine }) => ReactElement);\n okHidden?: boolean;\n cancelHidden?: boolean;\n okButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n cancelButtonProps?: Omit<ButtonWrapperProps, 'hidden' | 'children' | 'onClick'>;\n /**\n * 设置modal body height 为当前窗口height的百分比,例如:30\n * @deprecated 已失效,可通过size属性设置\n * ```\n * 1. 最大值:80\n * 1. 设置bodyStyle.height 后,bodyHeightPercent失效\n * ```\n */\n bodyHeightPercent?: number;\n\n titleExtra?: ReactElement;\n /** null则隐藏footer */\n footer?: null | ReactElement | ReactElement[];\n};\n\nexport const FbaAppModal = (props: FbaAppModalProps) => {\n const {\n titleExtra,\n title,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps,\n content,\n className,\n okHidden,\n cancelHidden,\n footer,\n cancelText,\n okText,\n size,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const htmlSize = useSize(document.querySelector('html'));\n const localMessage = getFbaLocaleMessage();\n const screenType = fbaHooks.useResponsivePoint() || '';\n const sizeFt = size === null ? undefined : size === undefined ? 'middle' : size;\n\n const onClose = hooks.useCallbackRef(() => {\n props.onClose?.();\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose();\n return Promise.resolve();\n });\n\n const operateGroup = [\n <ButtonWrapper key=\"0\" {...cancelButtonProps} onClick={onCancelHandle} hidden={cancelHidden}>\n {cancelText || localMessage.FbaDialogModal?.cancelText}\n </ButtonWrapper>,\n <ButtonWrapper key=\"1\" type=\"primary\" {...okButtonProps} onClick={onOkHandle} hidden={okHidden}>\n {okText || '提交'}\n </ButtonWrapper>,\n ];\n\n const footerNew = isNull(footer) ? null : operateGroup;\n\n const customSize = useMemo(() => {\n if (!htmlSize?.height || !screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n height: (htmlSize?.height as number) * 0.7,\n };\n }\n if (sizeFt == 'large') {\n return {\n height: (htmlSize?.height as number) * 0.7,\n width: htmlSize.width * 0.6,\n };\n }\n if (sizeFt == 'small') {\n const width = htmlSize.width * 0.3;\n return {\n height: (htmlSize?.height as number) * 0.4,\n width: width < 470 ? 470 : width,\n };\n }\n\n if (sizeFt == 'middle') {\n return {\n height: (htmlSize?.height as number) * 0.55,\n width: htmlSize.width * 0.5,\n };\n }\n return undefined;\n }, [htmlSize?.height, sizeFt, otherProps.styles?.body?.height, otherProps.width, screenType]);\n\n return (\n <Modal\n maskClosable={true}\n title={\n titleExtra ? (\n <FlexLayout direction=\"horizontal\" fullIndex={0}>\n <span>{title}</span>\n {titleExtra}\n </FlexLayout>\n ) : (\n title\n )\n }\n centered={true}\n onCancel={onClose}\n destroyOnClose\n width={customSize?.width}\n {...otherProps}\n styles={{\n ...otherProps.styles,\n body: {\n height: customSize?.height,\n maxHeight: 'calc(100vh - 200px)',\n ...otherProps.styles?.body,\n },\n }}\n className={classNames('fba-dialog-modal', { 'fba-dialog-modal-title-extra': !!titleExtra }, className)}\n open={props.open}\n footer={footerNew}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Modal>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { FbaAppModal, FbaAppModalProps } from '../dialog-modal';\nimport './style.less';\n\nexport type FbaAppConfirmProps = FbaAppModalProps;\n\nexport const FbaAppConfirm = (props: FbaAppConfirmProps) => {\n const className = classNames('fba-dialog-confirm', props.className);\n return (\n <FbaAppModal\n okText=\"确定\"\n size={null}\n width={350}\n cancelText=\"取消\"\n maskClosable={true}\n {...props}\n className={className}\n />\n );\n};\n","import { FbaAppConfirm } from '../dialog-confirm';\nimport { FbaAppModalProps } from '../dialog-modal';\n\n// export type DialogAlertProps = Omit<\n// DialogModalProps,\n// 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n// > & {\n// onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n// };\n\n// export const dialogAlert = {\n// open: (props: DialogAlertProps) => {\n// return dialogConfirm.open({\n// okText: '确定',\n// cancelHidden: true,\n// maskClosable: false,\n// ...props,\n// onOk: props.onClick,\n// } as DialogModalProps);\n// },\n// };\n\nexport type FbaAppAlertProps = Omit<\n FbaAppModalProps,\n 'onOk' | 'cancelHidden' | 'cancelButtonProps' | 'onCancel' | 'onClick'\n> & {\n onClick?: (e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n};\n\nexport const FbaAppAlert = (props: FbaAppAlertProps) => {\n return (\n <FbaAppConfirm\n okText=\"确定\"\n cancelHidden={true}\n maskClosable={false}\n {...props}\n onOk={(_form, e) => {\n return props.onClick?.(e);\n }}\n />\n );\n};\n","import { isPromise } from '@dimjs/lang';\nimport { classNames } from '@dimjs/utils';\nimport { hooks } from '@wove/react';\nimport { Drawer, DrawerProps, Form, FormInstance, Space } from 'antd';\nimport { ReactElement, ReactNode, useMemo } from 'react';\nimport { ButtonWrapper, ButtonWrapperProps } from '../../button-wrapper';\nimport { fbaHooks } from '../../fba-hooks';\nimport './style.less';\n\nexport type FbaAppDrawerProps = Omit<\n DrawerProps,\n 'onOk' | 'onCancel' | 'getContainer' | 'footer' | 'extra'\n> & {\n okText?: string | ReactElement;\n cancelText?: string | ReactElement;\n onOk?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n onCancel?: (form: FormInstance, e: React.MouseEvent<HTMLElement>) => void | Promise<void>;\n content:\n | string\n | ReactElement\n | ((form: FormInstance, operate: { onClose: DrawerProps['onClose'] }) => ReactElement);\n okButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children' | 'loading'>;\n cancelButtonExtraProps?: Omit<ButtonWrapperProps, 'onClick' | 'children'>;\n operatePosition?: 'header' | 'footer';\n operateRender?: (form: FormInstance) => ReactElement;\n okHidden?: boolean;\n cancelHidden?: boolean;\n extra?: ReactNode | ((form: FormInstance) => ReactElement);\n};\n\nexport const FbaAppDrawer = (props: FbaAppDrawerProps) => {\n const {\n onOk,\n onCancel,\n content,\n okText,\n cancelText,\n okButtonExtraProps,\n cancelButtonExtraProps,\n operatePosition = 'footer',\n operateRender,\n width,\n okHidden,\n cancelHidden,\n extra,\n ...otherProps\n } = props;\n const [form] = Form.useForm();\n const screenType = fbaHooks.useResponsivePoint() || '';\n\n const onClose = hooks.useCallbackRef((e) => {\n props.onClose?.(e);\n });\n\n const onCancelHandle = hooks.useCallbackRef((e) => {\n if (onCancel) {\n const response = onCancel(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n const onOkHandle = hooks.useCallbackRef((e) => {\n if (onOk) {\n const response = onOk(form, e);\n if (response && isPromise(response)) {\n return response.then(onClose);\n }\n }\n onClose(e);\n return Promise.resolve();\n });\n\n const operateGroup = (\n <Space>\n {cancelHidden || cancelButtonExtraProps?.hidden ? null : (\n <ButtonWrapper {...cancelButtonExtraProps} onClick={onCancelHandle}>\n {cancelText || '取消'}\n </ButtonWrapper>\n )}\n {okHidden || okButtonExtraProps?.hidden ? null : (\n <ButtonWrapper type=\"primary\" {...okButtonExtraProps} onClick={onOkHandle}>\n {okText || '提交'}\n </ButtonWrapper>\n )}\n </Space>\n );\n\n const operateRenderHandle = () => {\n if (operateRender) {\n return operateRender(form);\n }\n if (!okHidden || !cancelHidden) {\n return operateGroup;\n }\n return null;\n };\n\n const customSize = useMemo(() => {\n if (!screenType) return undefined;\n if (['xs', 'sm'].includes(screenType)) {\n return {\n width: '90%',\n maxWidth: '90%',\n };\n }\n if (width) {\n return { width: width, maxWidth: 'calc(100% - 200px)' };\n }\n return { width: '40%', maxWidth: 'calc(100% - 200px)' };\n }, [screenType, width]);\n\n const extraRender = typeof extra === 'function' ? extra(form) : extra;\n return (\n <Drawer\n maskClosable={true}\n destroyOnClose\n // 5.13.0 新增 styles.wrapper,并废弃 contentWrapperStyle drawerStyle maskStyle 属性\n contentWrapperStyle={{ maxWidth: customSize?.maxWidth }}\n footer={operatePosition === 'footer' ? operateRenderHandle() : null}\n {...otherProps}\n width={customSize?.width}\n styles={{\n ...otherProps.styles,\n // wrapper: {\n // maxWidth: customSize?.maxWidth,\n // ...otherProps.styles?.wrapper,\n // },\n }}\n className={classNames('app-dialog-drawer', otherProps.className)}\n extra={operatePosition === 'header' ? operateRenderHandle() : extraRender}\n open={props.open}\n onClose={onClose}\n >\n {typeof content === 'function' ? content(form, { onClose }) : content}\n </Drawer>\n );\n};\n","import { classNames } from '@dimjs/utils';\nimport { Modal, theme } from 'antd';\nimport { CSSProperties } from 'react';\nimport { BlockLayout } from '../../block-layout';\nimport './style.less';\n\nexport type FbaAppLoadingProps = {\n className?: string;\n message?: string;\n mask?: boolean;\n};\n\nexport const FbaAppLoading = (props: FbaAppLoadingProps & { open?: boolean }) => {\n const { className, message, mask } = props;\n const { token } = theme.useToken();\n const colorPrimary = token.colorPrimary;\n\n return (\n <Modal\n maskClosable={false}\n centered={true}\n destroyOnClose\n className={classNames('fba-dialog-loading', className)}\n open={props.open}\n footer={null}\n closable={false}\n style={{ '--fba-loading-color': colorPrimary } as CSSProperties}\n mask={mask}\n >\n <BlockLayout className={classNames('fba-dialog-loading-content')}>\n <div className=\"loader-wrapper\">\n <div className=\"loader-inner\" />\n <div className=\"loader-text\">{message || '处理中'}</div>\n </div>\n </BlockLayout>\n </Modal>\n );\n};\n","import { getUuid } from '@flatbiz/utils';\nimport { hooks } from '@wove/react';\nimport { ReactNode, useContext, useState } from 'react';\nimport { FbaAppContext, FbaAppContextApi } from './context';\nimport { FbaAppAlert, FbaAppAlertProps } from './dialog-alert';\nimport { FbaAppConfirm, FbaAppConfirmProps } from './dialog-confirm';\nimport { FbaAppDrawer, FbaAppDrawerProps } from './dialog-drawer';\nimport { FbaAppLoading, FbaAppLoadingProps } from './dialog-loading';\nimport { FbaAppModal, FbaAppModalProps } from './dialog-modal';\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogDrawer = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose?.();\n };\n\n return {\n appDialogDrawer: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogDrawer2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogDrawer2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogDrawerClose2?.();\n };\n\n return {\n appDialogDrawer2: {\n open: (data: FbaAppDrawerProps) => {\n ctx.dialogDrawerOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框,第二个弹框可使用useDialogModal2\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose?.();\n };\n\n return {\n appDialogModal: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * ```\n * 1. 配置size属性可使用预设的弹窗尺寸,如果不使用内置尺寸可设置 size = null\n * ```\n */\nexport const useDialogModal2 = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogModalClose2?.();\n };\n\n return {\n appDialogModal2: {\n open: (data: FbaAppModalProps) => {\n ctx.dialogModalOpen2?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogAlert = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogAlertClose?.();\n };\n\n return {\n appDialogAlert: {\n open: (data: FbaAppAlertProps) => {\n ctx.dialogAlertOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogConfirm = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogConfirmClose?.();\n };\n\n return {\n appDialogConfirm: {\n open: (data: FbaAppConfirmProps) => {\n ctx.dialogConfirmOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n/**\n * 不支持多个弹框\n * @returns\n */\nexport const useDialogLoading = () => {\n const ctx = useContext(FbaAppContext);\n\n const onClose = () => {\n ctx.dialogLoadingClose?.();\n };\n\n return {\n appDialogLoading: {\n open: (data?: FbaAppLoadingProps) => {\n ctx.dialogLoadingOpen?.({ ...data, open: true });\n return { onClose };\n },\n close: onClose,\n },\n };\n};\n\nexport const FbaApp = (props: { children: ReactNode }) => {\n const [drawerProps, setDrawerProps] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey, setDrawerKey] = useState(getUuid());\n\n const [drawerProps2, setDrawerProps2] = useState<FbaAppDrawerProps>({} as FbaAppDrawerProps);\n const [drawerKey2, setDrawerKey2] = useState(getUuid());\n\n const [modalProps, setModalProps] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey, setModalKey] = useState(getUuid());\n\n const [modalProps2, setModalProps2] = useState<FbaAppModalProps>({} as FbaAppModalProps);\n const [modalKey2, setModalKey2] = useState(getUuid());\n\n const [alertProps, setAlertProps] = useState<FbaAppAlertProps>({} as FbaAppAlertProps);\n const [confirmProps, setConfirmProps] = useState<FbaAppConfirmProps>({} as FbaAppConfirmProps);\n const [loadingProps, setLoadingProps] = useState<FbaAppLoadingProps>();\n\n const [alertKey, setAlertKey] = useState(getUuid());\n const [confirmKey, setConfirmKey] = useState(getUuid());\n const [loadingKey, setLoadingKey] = useState(getUuid());\n\n const dialogDrawerOpen: FbaAppContextApi['dialogDrawerOpen'] = hooks.useCallbackRef((data) => {\n setDrawerProps(data);\n });\n const dialogDrawerClose = hooks.useCallbackRef((e) => {\n setDrawerProps({ ...drawerProps, open: false } as FbaAppDrawerProps);\n drawerProps.onClose?.(e);\n setTimeout(() => {\n setDrawerKey(getUuid());\n }, 200);\n });\n\n const dialogDrawerOpen2: FbaAppContextApi['dialogDrawerOpen2'] = hooks.useCallbackRef((data) => {\n setDrawerProps2(data);\n });\n\n const dialogDrawerClose2 = hooks.useCallbackRef((e) => {\n setDrawerProps2({ ...drawerProps2, open: false } as FbaAppDrawerProps);\n drawerProps2.onClose?.(e);\n setTimeout(() => {\n setDrawerKey2(getUuid());\n }, 200);\n });\n\n const dialogModalOpen: FbaAppContextApi['dialogModalOpen'] = hooks.useCallbackRef((data) => {\n setModalProps(data);\n });\n\n const dialogModalClose = hooks.useCallbackRef(() => {\n setModalProps({ ...modalProps, open: false } as FbaAppModalProps);\n modalProps.onClose?.();\n setTimeout(() => {\n setModalKey(getUuid());\n }, 200);\n });\n\n const dialogModalOpen2: FbaAppContextApi['dialogModalOpen2'] = hooks.useCallbackRef((data) => {\n setModalProps2(data);\n });\n\n const dialogModalClose2 = hooks.useCallbackRef(() => {\n setModalProps2({ ...modalProps2, open: false } as FbaAppModalProps);\n modalProps2.onClose?.();\n setTimeout(() => {\n setModalKey2(getUuid());\n }, 200);\n });\n\n const dialogAlertOpen: FbaAppContextApi['dialogAlertOpen'] = hooks.useCallbackRef((data) => {\n setAlertProps(data);\n });\n\n const dialogAlertClose = hooks.useCallbackRef(() => {\n setAlertProps({ ...alertProps, open: false } as FbaAppAlertProps);\n alertProps.onClose?.();\n setTimeout(() => {\n setAlertKey(getUuid());\n }, 200);\n });\n\n const dialogConfirmOpen: FbaAppContextApi['dialogConfirmOpen'] = hooks.useCallbackRef((data) => {\n setConfirmProps(data);\n });\n\n const dialogConfirmClose = hooks.useCallbackRef(() => {\n setConfirmProps({ ...confirmProps, open: false } as FbaAppConfirmProps);\n confirmProps.onClose?.();\n setTimeout(() => {\n setConfirmKey(getUuid());\n }, 200);\n });\n\n const dialogLoadingOpen: FbaAppContextApi['dialogLoadingOpen'] = hooks.useCallbackRef((data) => {\n setLoadingProps(data);\n });\n\n const dialogLoadingClose = hooks.useCallbackRef(() => {\n setLoadingProps({ ...loadingProps, open: false } as FbaAppLoadingProps);\n setTimeout(() => {\n setLoadingKey(getUuid());\n }, 200);\n });\n\n return (\n <FbaAppContext.Provider\n value={{\n dialogDrawerOpen,\n dialogDrawerClose,\n dialogDrawerOpen2,\n dialogDrawerClose2,\n dialogModalOpen,\n dialogModalClose,\n dialogModalOpen2,\n dialogModalClose2,\n dialogAlertOpen,\n dialogAlertClose,\n dialogConfirmOpen,\n dialogConfirmClose,\n dialogLoadingOpen,\n dialogLoadingClose,\n }}\n >\n <FbaAppDrawer {...drawerProps} onClose={dialogDrawerClose} key={drawerKey}></FbaAppDrawer>\n <FbaAppDrawer {...drawerProps2} onClose={dialogDrawerClose2} key={drawerKey2}></FbaAppDrawer>\n <FbaAppModal {...modalProps} onClose={dialogModalClose} key={modalKey}></FbaAppModal>\n <FbaAppModal {...modalProps2} onClose={dialogModalClose2} key={modalKey2}></FbaAppModal>\n <FbaAppAlert {...alertProps} onClose={dialogAlertClose} key={alertKey}></FbaAppAlert>\n <FbaAppConfirm {...confirmProps} onClose={dialogConfirmClose} key={confirmKey}></FbaAppConfirm>\n <FbaAppLoading {...loadingProps} key={loadingKey}></FbaAppLoading>\n {props.children}\n </FbaAppContext.Provider>\n );\n};\n","import { fbaUtils } from '../fba-utils';\nimport {\n FbaApp as FbaAppInner,\n useDialogAlert,\n useDialogConfirm,\n useDialogDrawer,\n useDialogDrawer2,\n useDialogLoading,\n useDialogModal,\n useDialogModal2,\n} from './fba-app';\n\nexport const FbaApp = fbaUtils.attachPropertiesToComponent(FbaAppInner, {\n /** 不支持多次弹框,第二个弹框可使用useDialogDrawer2 */\n useDialogDrawer,\n useDialogDrawer2,\n /** 不支持多次弹框,第二个弹框可使用useDialogModal2 */\n useDialogModal,\n useDialogModal2,\n /** 不支持多次弹框 */\n useDialogConfirm,\n /** 不支持多次弹框 */\n useDialogAlert,\n /** 不支持多次弹框 */\n useDialogLoading,\n});\n"],"names":["FbaAppContext","createContext","FbaAppModal","props","_localMessage$FbaDial","_otherProps$styles","_otherProps$styles2","titleExtra","title","onOk","onCancel","okButtonProps","cancelButtonProps","content","className","okHidden","cancelHidden","footer","cancelText","okText","size","otherProps","_objectWithoutPropertiesLoose","_excluded","_Form$useForm","Form","useForm","form","htmlSize","useSize","document","querySelector","localMessage","getFbaLocaleMessage","screenType","fbaHooks","useResponsivePoint","sizeFt","undefined","onClose","_hooks","useCallbackRef","onCancelHandle","e","response","_isPromise","then","Promise","resolve","onOkHandle","operateGroup","_jsx","ButtonWrapper","_extends","onClick","hidden","children","FbaDialogModal","type","footerNew","_isNull","customSize","useMemo","height","includes","width","styles","body","Modal","maskClosable","_jsxs","FlexLayout","direction","fullIndex","centered","destroyOnClose","maxHeight","_classNames","open","FbaAppConfirm","FbaAppAlert","_form","FbaAppDrawer","okButtonExtraProps","cancelButtonExtraProps","_props$operatePositio","operatePosition","operateRender","extra","Space","operateRenderHandle","maxWidth","extraRender","Drawer","contentWrapperStyle","FbaAppLoading","message","mask","_theme$useToken","theme","useToken","token","colorPrimary","closable","style","BlockLayout","useDialogDrawer","ctx","useContext","dialogDrawerClose","appDialogDrawer","data","dialogDrawerOpen","close","useDialogDrawer2","dialogDrawerClose2","appDialogDrawer2","dialogDrawerOpen2","useDialogModal","dialogModalClose","appDialogModal","dialogModalOpen","useDialogModal2","dialogModalClose2","appDialogModal2","dialogModalOpen2","useDialogAlert","dialogAlertClose","appDialogAlert","dialogAlertOpen","useDialogConfirm","dialogConfirmClose","appDialogConfirm","dialogConfirmOpen","useDialogLoading","dialogLoadingClose","appDialogLoading","dialogLoadingOpen","FbaApp","_useState","useState","drawerProps","setDrawerProps","_useState2","getUuid","drawerKey","setDrawerKey","_useState3","drawerProps2","setDrawerProps2","_useState4","drawerKey2","setDrawerKey2","_useState5","modalProps","setModalProps","_useState6","modalKey","setModalKey","_useState7","modalProps2","setModalProps2","_useState8","modalKey2","setModalKey2","_useState9","alertProps","setAlertProps","_useState10","confirmProps","setConfirmProps","_useState11","loadingProps","setLoadingProps","_useState12","alertKey","setAlertKey","_useState13","confirmKey","setConfirmKey","_useState14","loadingKey","setLoadingKey","setTimeout","Provider","value","_createElement","key","fbaUtils","attachPropertiesToComponent","FbaAppInner"],"mappings":"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"}