tntd 2.7.6 → 2.7.8

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 (69) hide show
  1. package/es/button/button.js +46 -0
  2. package/es/button/button.js.map +1 -0
  3. package/es/button/index.js +2 -2
  4. package/es/button/index.js.map +1 -1
  5. package/es/form/form.js +55 -0
  6. package/es/form/form.js.map +1 -0
  7. package/es/form/index.js +2 -2
  8. package/es/form/index.js.map +1 -1
  9. package/es/handle/index.js +30 -0
  10. package/es/handle/index.js.map +1 -1
  11. package/es/tabs/index.js +2 -2
  12. package/es/tabs/index.js.map +1 -1
  13. package/es/tabs/tabPane.js +2 -0
  14. package/es/tabs/tabPane.js.map +1 -0
  15. package/es/tabs/tabs.js +51 -0
  16. package/es/tabs/tabs.js.map +1 -0
  17. package/es/tntd-modal/index.js +21 -54
  18. package/es/tntd-modal/index.js.map +1 -1
  19. package/es/tntd-modal/index.less +66 -82
  20. package/lib/button/button.d.ts +9 -0
  21. package/lib/button/button.d.ts.map +1 -0
  22. package/lib/button/button.js +67 -0
  23. package/lib/button/button.js.map +1 -0
  24. package/lib/button/index.d.ts +2 -2
  25. package/lib/button/index.d.ts.map +1 -1
  26. package/lib/button/index.js +3 -6
  27. package/lib/button/index.js.map +1 -1
  28. package/lib/form/form.d.ts +11 -0
  29. package/lib/form/form.d.ts.map +1 -0
  30. package/lib/form/form.js +76 -0
  31. package/lib/form/form.js.map +1 -0
  32. package/lib/form/index.d.ts +2 -2
  33. package/lib/form/index.d.ts.map +1 -1
  34. package/lib/form/index.js +3 -6
  35. package/lib/form/index.js.map +1 -1
  36. package/lib/handle/index.d.ts.map +1 -1
  37. package/lib/handle/index.js +30 -0
  38. package/lib/handle/index.js.map +1 -1
  39. package/lib/segmented/index.d.ts +1 -1
  40. package/lib/svg-components/illustration-403.d.ts +1 -1
  41. package/lib/svg-components/illustration-404.d.ts +1 -1
  42. package/lib/svg-components/illustration-500.d.ts +1 -1
  43. package/lib/svg-components/illustration-empty.d.ts +1 -1
  44. package/lib/svg-components/illustration-failure.d.ts +1 -1
  45. package/lib/svg-components/illustration-no-access.d.ts +1 -1
  46. package/lib/svg-components/illustration-no-chart.d.ts +1 -1
  47. package/lib/svg-components/illustration-no-result.d.ts +1 -1
  48. package/lib/svg-components/illustration-offline.d.ts +1 -1
  49. package/lib/svg-components/illustration-success.d.ts +1 -1
  50. package/lib/table/assets/image-loading-background.d.ts +1 -1
  51. package/lib/table/assets/image-loading.d.ts +1 -1
  52. package/lib/tabs/index.d.ts +2 -2
  53. package/lib/tabs/index.d.ts.map +1 -1
  54. package/lib/tabs/index.js +3 -6
  55. package/lib/tabs/index.js.map +1 -1
  56. package/lib/tabs/tabPane.d.ts +1 -0
  57. package/lib/tabs/tabPane.d.ts.map +1 -0
  58. package/lib/tabs/tabPane.js +2 -0
  59. package/lib/tabs/tabPane.js.map +1 -0
  60. package/lib/tabs/tabs.d.ts +11 -0
  61. package/lib/tabs/tabs.d.ts.map +1 -0
  62. package/lib/tabs/tabs.js +72 -0
  63. package/lib/tabs/tabs.js.map +1 -0
  64. package/lib/tntd-modal/index.d.ts +2 -15
  65. package/lib/tntd-modal/index.d.ts.map +1 -1
  66. package/lib/tntd-modal/index.js +23 -58
  67. package/lib/tntd-modal/index.js.map +1 -1
  68. package/lib/tntd-modal/index.less +66 -82
  69. package/package.json +1 -1
@@ -0,0 +1,46 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React from 'react';
13
+ import { ConfigConsumer } from 'antd/es/config-provider';
14
+ import { default as AntdButton } from 'antd/es/button';
15
+ export * from 'antd/es/button';
16
+ export {} from 'antd/es/button';
17
+ export function Button(_a) {
18
+ var { children } = _a, rest = __rest(_a, ["children"]);
19
+ const titleHandle = (str) => {
20
+ if (!str) {
21
+ return;
22
+ }
23
+ if (typeof str === 'string') {
24
+ const words = str.split(' ');
25
+ const capitalizedWords = words.map((word) => {
26
+ return word.charAt(0).toUpperCase() + word.slice(1);
27
+ });
28
+ str = capitalizedWords.join(' ');
29
+ }
30
+ return str;
31
+ };
32
+ let newChildren = children;
33
+ if (newChildren) {
34
+ if (typeof newChildren === 'string') {
35
+ newChildren = titleHandle(newChildren);
36
+ }
37
+ else if (Array.isArray(newChildren)) {
38
+ newChildren = [...newChildren].map((subChild) => titleHandle(subChild));
39
+ }
40
+ }
41
+ return (React.createElement(ConfigConsumer, null, ({ getPrefixCls }) => {
42
+ return React.createElement(AntdButton, Object.assign({}, rest, { children: newChildren }));
43
+ }));
44
+ }
45
+ Button.Group = AntdButton.Group;
46
+ //# sourceMappingURL=button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.js","sourceRoot":"","sources":["../../src/button/button.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEtD,cAAc,gBAAgB,CAAA;AAC9B,OAAO,EAAyD,MAAM,gBAAgB,CAAA;AAEtF,MAAM,UAAU,MAAM,CAAC,EAAsC;QAAtC,EAAE,QAAQ,OAA4B,EAAvB,IAAI,cAAnB,YAAqB,CAAF;IACxC,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE;QAClC,IAAI,CAAC,GAAG,EAAE;YACR,OAAM;SACP;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,KAAK,GAAa,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACtC,MAAM,gBAAgB,GAAa,KAAK,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;gBAC5D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACrD,CAAC,CAAC,CAAA;YACF,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACjC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IAED,IAAI,WAAW,GAAG,QAAQ,CAAA;IAC1B,IAAI,WAAW,EAAE;QACf,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,WAAW,GAAG,WAAW,CAAC,WAAW,CAAC,CAAA;SACvC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;YACrC,WAAW,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAA;SACxE;KACF;IAED,OAAO,CACL,oBAAC,cAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,OAAO,oBAAC,UAAU,oBAAK,IAAI,IAAE,QAAQ,EAAE,WAAW,IAAI,CAAA;IACxD,CAAC,CACc,CAClB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAA","sourcesContent":["import React from 'react'\nimport type { ButtonProps as AntdButtonProps } from 'antd/es/button'\nimport { ConfigConsumer } from 'antd/es/config-provider'\n\nimport { default as AntdButton } from 'antd/es/button'\n\nexport * from 'antd/es/button'\nexport { ButtonShape, ButtonSize, ButtonType, ButtonGroupProps } from 'antd/es/button'\n\nexport function Button({ children, ...rest }: AntdButtonProps): JSX.Element {\n const titleHandle = (str: string) => {\n if (!str) {\n return\n }\n if (typeof str === 'string') {\n const words: string[] = str.split(' ')\n const capitalizedWords: string[] = words.map((word: string) => {\n return word.charAt(0).toUpperCase() + word.slice(1)\n })\n str = capitalizedWords.join(' ')\n }\n return str\n }\n\n let newChildren = children\n if (newChildren) {\n if (typeof newChildren === 'string') {\n newChildren = titleHandle(newChildren)\n } else if (Array.isArray(newChildren)) {\n newChildren = [...newChildren].map((subChild) => titleHandle(subChild))\n }\n }\n\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n return <AntdButton {...rest} children={newChildren} />\n }}\n </ConfigConsumer>\n )\n}\n\nButton.Group = AntdButton.Group\n"]}
@@ -1,5 +1,5 @@
1
- import Button from 'antd/es/button';
2
1
  import 'antd/es/button/style';
3
- export * from 'antd/es/button';
2
+ import { Button } from './button';
3
+ export * from './button';
4
4
  export default Button;
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,gBAAgB,CAAA;AAEnC,OAAO,sBAAsB,CAAA;AAE7B,cAAc,gBAAgB,CAAA;AAE9B,eAAe,MAAM,CAAA","sourcesContent":["import Button from 'antd/es/button'\n\nimport 'antd/es/button/style'\n\nexport * from 'antd/es/button'\n\nexport default Button\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/button/index.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,cAAc,UAAU,CAAA;AAExB,eAAe,MAAM,CAAA","sourcesContent":["import 'antd/es/button/style'\nimport { Button } from './button'\n\nexport * from './button'\n\nexport default Button\n"]}
@@ -0,0 +1,55 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React from 'react';
13
+ import { ConfigConsumer } from 'antd/es/config-provider';
14
+ import { default as AntdForm } from 'antd/es/form';
15
+ export * from 'antd/es/form';
16
+ export function Form(_a) {
17
+ var rest = __rest(_a, []);
18
+ return (React.createElement(ConfigConsumer, null, ({ getPrefixCls }) => {
19
+ return React.createElement(AntdForm, Object.assign({}, rest));
20
+ }));
21
+ }
22
+ Form.Item = function (_a) {
23
+ var { label } = _a, rest = __rest(_a, ["label"]);
24
+ const titleHandle = (label) => {
25
+ var _a, _b, _c, _d, _e, _f;
26
+ if (!label) {
27
+ return label;
28
+ }
29
+ if (typeof label === 'string') {
30
+ const words = label.split(' ');
31
+ const capitalizedWords = words.map((word) => {
32
+ return word.charAt(0).toUpperCase() + word.slice(1);
33
+ });
34
+ label = capitalizedWords.join(' ');
35
+ }
36
+ if (React.isValidElement(label)) {
37
+ if (((_a = label === null || label === void 0 ? void 0 : label.props) === null || _a === void 0 ? void 0 : _a.children) && Array.isArray((_b = label === null || label === void 0 ? void 0 : label.props) === null || _b === void 0 ? void 0 : _b.children)) {
38
+ return Object.assign(Object.assign({}, label), { props: Object.assign(Object.assign({}, label.props), { children: (_d = (_c = label === null || label === void 0 ? void 0 : label.props) === null || _c === void 0 ? void 0 : _c.children) === null || _d === void 0 ? void 0 : _d.map((subLabel) => {
39
+ return titleHandle(subLabel);
40
+ }) }) });
41
+ }
42
+ else if (typeof ((_e = label === null || label === void 0 ? void 0 : label.props) === null || _e === void 0 ? void 0 : _e.children) === 'string') {
43
+ label = titleHandle((_f = label === null || label === void 0 ? void 0 : label.props) === null || _f === void 0 ? void 0 : _f.children);
44
+ }
45
+ }
46
+ return label;
47
+ };
48
+ const curLabel = titleHandle(label);
49
+ return (React.createElement(ConfigConsumer, null, ({ getPrefixCls }) => {
50
+ return React.createElement(AntdForm.Item, Object.assign({}, rest, { label: curLabel }));
51
+ }));
52
+ };
53
+ Form.createFormField = AntdForm.createFormField;
54
+ Form.create = AntdForm.create;
55
+ //# sourceMappingURL=form.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/form/form.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAA;AAElD,cAAc,cAAc,CAAA;AAE5B,MAAM,UAAU,IAAI,CAAC,EAA0B;QAArB,IAAI,cAAT,EAAW,CAAF;IAC5B,OAAO,CACL,oBAAC,cAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,OAAO,oBAAC,QAAQ,oBAAK,IAAI,EAAI,CAAA;IAC/B,CAAC,CACc,CAClB,CAAA;AACH,CAAC;AAED,IAAI,CAAC,IAAI,GAAG,UAAU,EAAqC;QAArC,EAAE,KAAK,OAA8B,EAAzB,IAAI,cAAhB,SAAkB,CAAF;IACpC,MAAM,WAAW,GAAG,CAAC,KAA+B,EAAO,EAAE;;QAC3D,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,KAAK,CAAA;SACb;QACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,KAAK,GAAa,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACxC,MAAM,gBAAgB,GAAa,KAAK,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;gBAC5D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACrD,CAAC,CAAC,CAAA;YACF,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACnC;QACD,IAAI,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE;YAC/B,IAAI,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,QAAQ,KAAI,KAAK,CAAC,OAAO,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,QAAQ,CAAC,EAAE;gBACnE,uCACK,KAAK,KACR,KAAK,kCACA,KAAK,CAAC,KAAK,KACd,QAAQ,EAAE,MAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,QAAQ,0CAAE,GAAG,CAAC,CAAC,QAAkC,EAAE,EAAE;4BAC3E,OAAO,WAAW,CAAC,QAAQ,CAAC,CAAA;wBAC9B,CAAC,CAAC,OAEL;aACF;iBAAM,IAAI,OAAO,CAAA,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,QAAQ,CAAA,KAAK,QAAQ,EAAE;gBACrD,KAAK,GAAG,WAAW,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,QAAQ,CAAC,CAAA;aAC5C;SACF;QACD,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;IACnC,OAAO,CACL,oBAAC,cAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,OAAO,oBAAC,QAAQ,CAAC,IAAI,oBAAK,IAAI,IAAE,KAAK,EAAE,QAAQ,IAAI,CAAA;IACrD,CAAC,CACc,CAClB,CAAA;AACH,CAAC,CAAA;AAED,IAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,eAAe,CAAA;AAC/C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAA","sourcesContent":["import React from 'react'\nimport type { FormProps as AntdFormProps } from 'antd/es/form'\nimport type { FormItemProps as AntdFormItemProps } from 'antd/es/form'\nimport { ConfigConsumer } from 'antd/es/config-provider'\n\nimport { default as AntdForm } from 'antd/es/form'\n\nexport * from 'antd/es/form'\n\nexport function Form({ ...rest }: AntdFormProps): JSX.Element {\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n return <AntdForm {...rest} />\n }}\n </ConfigConsumer>\n )\n}\n\nForm.Item = function ({ label, ...rest }: AntdFormItemProps) {\n const titleHandle = (label: string | React.ReactNode): any => {\n if (!label) {\n return label\n }\n if (typeof label === 'string') {\n const words: string[] = label.split(' ')\n const capitalizedWords: string[] = words.map((word: string) => {\n return word.charAt(0).toUpperCase() + word.slice(1)\n })\n label = capitalizedWords.join(' ')\n }\n if (React.isValidElement(label)) {\n if (label?.props?.children && Array.isArray(label?.props?.children)) {\n return {\n ...label,\n props: {\n ...label.props,\n children: label?.props?.children?.map((subLabel: string | React.ReactNode) => {\n return titleHandle(subLabel)\n }),\n },\n }\n } else if (typeof label?.props?.children === 'string') {\n label = titleHandle(label?.props?.children)\n }\n }\n return label\n }\n\n const curLabel = titleHandle(label)\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n return <AntdForm.Item {...rest} label={curLabel} />\n }}\n </ConfigConsumer>\n )\n}\n\nForm.createFormField = AntdForm.createFormField\nForm.create = AntdForm.create\n"]}
package/es/form/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import Form from 'antd/es/form';
2
1
  import 'antd/es/form/style';
3
- export * from 'antd/es/form';
2
+ import { Form } from './form';
3
+ export * from './form';
4
4
  export default Form;
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAE/B,OAAO,oBAAoB,CAAA;AAE3B,cAAc,cAAc,CAAA;AAE5B,eAAe,IAAI,CAAA","sourcesContent":["import Form from 'antd/es/form'\n\nimport 'antd/es/form/style'\n\nexport * from 'antd/es/form'\n\nexport default Form\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/form/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,cAAc,QAAQ,CAAA;AAEtB,eAAe,IAAI,CAAA","sourcesContent":["import 'antd/es/form/style'\nimport { Form } from './form'\n\nexport * from './form'\n\nexport default Form\n"]}
@@ -32,6 +32,36 @@ export default (props) => {
32
32
  else if (children) {
33
33
  newChildren.push(children);
34
34
  }
35
+ // 非中文 且非 icon图标
36
+ if (!isCn && !isIconBtn) {
37
+ const titleHandle = (handle) => {
38
+ var _a, _b, _c, _d, _e, _f;
39
+ if (!handle) {
40
+ return handle;
41
+ }
42
+ if (typeof handle === 'string') {
43
+ const words = handle.split(' ');
44
+ const capitalizedWords = words.map((word) => {
45
+ return word.charAt(0).toUpperCase() + word.slice(1);
46
+ });
47
+ handle = capitalizedWords.join(' ');
48
+ }
49
+ if (React.isValidElement(handle)) {
50
+ if (((_a = handle === null || handle === void 0 ? void 0 : handle.props) === null || _a === void 0 ? void 0 : _a.children) && Array.isArray((_b = handle === null || handle === void 0 ? void 0 : handle.props) === null || _b === void 0 ? void 0 : _b.children)) {
51
+ return Object.assign(Object.assign({}, handle), { props: Object.assign(Object.assign({}, handle.props), { children: (_d = (_c = handle === null || handle === void 0 ? void 0 : handle.props) === null || _c === void 0 ? void 0 : _c.children) === null || _d === void 0 ? void 0 : _d.map((subHandle) => {
52
+ return titleHandle(subHandle);
53
+ }) }) });
54
+ }
55
+ else if (typeof ((_e = handle === null || handle === void 0 ? void 0 : handle.props) === null || _e === void 0 ? void 0 : _e.children) === 'string') {
56
+ handle = titleHandle((_f = handle === null || handle === void 0 ? void 0 : handle.props) === null || _f === void 0 ? void 0 : _f.children);
57
+ }
58
+ }
59
+ return handle;
60
+ };
61
+ newChildren === null || newChildren === void 0 ? void 0 : newChildren.forEach((v, i) => {
62
+ newChildren[i] = React.cloneElement(v, Object.assign(Object.assign({}, ((v === null || v === void 0 ? void 0 : v.props) || {})), { children: titleHandle(v.props.children) }));
63
+ });
64
+ }
35
65
  // 子元素大于1个,且不是 icon元素
36
66
  const specialSceneDefaultShow = (newChildren === null || newChildren === void 0 ? void 0 : newChildren.length) > 1 && !isIconBtn;
37
67
  if (specialSceneDefaultShow && (!isCn || popConfirmHandle)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handle/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport Icon from '../tntd-icon'\n\nimport Divider from '../divider'\nimport Dropdown from '../dropdown'\nimport Menu from '../menu'\nimport './index.less'\n\nconst clsPrefix = 'tntd-more-menus'\nexport default (props) => {\n return (\n <LocaleReceiver componentName=\"Handle\">\n {(locale, localeCode) => {\n const {\n children = [],\n type,\n num = 3,\n lang,\n divider = true,\n lessOneMoreFit,\n popConfirmHandle,\n isIconBtn,\n stopPropagation=true,\n ...rest\n } = props || {}\n\n // 非中文\n let isCn = lang === 'cn'\n if (!lang) {\n isCn = localeCode === 'zh-cn'\n }\n\n let newChildren = []\n if (Array.isArray(children)) {\n newChildren = children?.filter((item) => !!item) || []\n } else if (children) {\n newChildren.push(children)\n }\n // 子元素大于1个,且不是 icon元素\n const specialSceneDefaultShow = newChildren?.length > 1 && !isIconBtn\n\n if (specialSceneDefaultShow && (!isCn || popConfirmHandle)) {\n newChildren?.forEach((v, i) => {\n const { type, props } = v\n if (\n type?.name === 'Popconfirm' ||\n (props.hasOwnProperty('onConfirm') && typeof props?.onConfirm === 'function')\n ) {\n let placement = {}\n if (\n !isCn ||\n (num &&\n !isNaN(num) &&\n i + 1 > num &&\n !(lessOneMoreFit && newChildren.length - num === 1))\n ) {\n placement = {\n placement: 'left',\n }\n }\n newChildren[i] = React.cloneElement(v, {\n overlayStyle: { width: 180 },\n ...(v?.props || {}),\n onClick: (e) => e.stopPropagation(),\n ...placement,\n trigger: 'hover',\n getPopupContainer: (trigger) => trigger.parentNode,\n })\n }\n })\n }\n\n let [preChildPart, lastChildPart] = [newChildren, null]\n\n // 只有1个时不适配\n if (lessOneMoreFit && newChildren.length - num === 1) {\n preChildPart = newChildren\n } else if (newChildren && num && !isNaN(num) && newChildren.length > num) {\n preChildPart = newChildren.slice(0, num)\n lastChildPart = newChildren.slice(num)\n }\n\n if (divider && preChildPart) {\n const preChildLen = preChildPart.length\n preChildPart = preChildPart.map((dom, i) => (\n <Fragment key={i}>\n {dom}\n {!(\n (i === preChildLen - 1 && !lastChildPart?.length) // 没有更多 且 是最后一个时 不显示 Divider\n ) && <Divider type=\"vertical\" />}\n </Fragment>\n ))\n }\n const menu = (childArr)=>(\n <Menu className=\"org-pop-opera-btn\">\n {\n childArr?.map(\n (child,i) => (\n <Menu.Item key={i}>\n {child}\n </Menu.Item>\n )\n )\n }\n </Menu>\n );\n\n\n if(!isCn && specialSceneDefaultShow ){\n return (\n <Dropdown overlay={menu(newChildren||[])} arrow onClick={(e)=>{\n if(stopPropagation){\n e.stopPropagation()\n }\n }}>\n {\n type === 'icon' ?\n <Icon type=\"more\" /> :\n <a className=\"ant-dropdown-more\">\n {locale?.more}\n <i className={`${clsPrefix}-dropdown-icon`}>\n <Icon type=\"down\" />\n </i>\n </a>\n }\n </Dropdown>\n );\n }\n\n return (\n <div\n onClick={(e) => {\n if(stopPropagation){\n e.stopPropagation()\n }\n }}\n {...rest}\n >\n {preChildPart}\n {!!lastChildPart?.length && (\n <Dropdown overlay={menu(lastChildPart || [])} arrow>\n {type === 'icon' ? (\n <Icon type=\"more\" />\n ) : (\n <a className=\"ant-dropdown-more\">\n {locale?.more}\n <i className={`${clsPrefix}-dropdown-icon`}>\n <Icon type=\"down\" />\n </i>\n </a>\n )}\n </Dropdown>\n )}\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handle/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, { Fragment } from 'react'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport Icon from '../tntd-icon'\n\nimport Divider from '../divider'\nimport Dropdown from '../dropdown'\nimport Menu from '../menu'\nimport './index.less'\n\nconst clsPrefix = 'tntd-more-menus'\nexport default (props) => {\n \n \n return (\n <LocaleReceiver componentName=\"Handle\">\n {(locale, localeCode) => {\n const {\n children = [],\n type,\n num = 3,\n lang,\n divider = true,\n lessOneMoreFit,\n popConfirmHandle,\n isIconBtn,\n stopPropagation=true,\n ...rest\n } = props || {}\n\n // 非中文\n let isCn = lang === 'cn'\n if (!lang) {\n isCn = localeCode === 'zh-cn'\n }\n\n \n\n let newChildren = []\n if (Array.isArray(children)) {\n newChildren = children?.filter((item) => !!item) || []\n } else if (children) {\n newChildren.push(children)\n }\n\n \n // 非中文 且非 icon图标\n if(!isCn && !isIconBtn){\n const titleHandle = (handle) => {\n if (!handle) {\n return handle\n }\n if (typeof handle === 'string') {\n const words = handle.split(' ')\n const capitalizedWords= words.map((word) => {\n return word.charAt(0).toUpperCase() + word.slice(1)\n })\n handle = capitalizedWords.join(' ')\n }\n if (React.isValidElement(handle)) {\n if (handle?.props?.children && Array.isArray(handle?.props?.children)) {\n return {\n ...handle,\n props: {\n ...handle.props,\n children: handle?.props?.children?.map((subHandle) => {\n return titleHandle(subHandle)\n }),\n },\n }\n }else if(typeof handle?.props?.children === 'string' ){\n handle = titleHandle(handle?.props?.children);\n }\n }\n return handle\n };\n\n newChildren?.forEach((v,i)=>{\n newChildren[i] = React.cloneElement(v, {\n ...(v?.props || {}),\n children:titleHandle(v.props.children)\n })\n })\n }\n\n // 子元素大于1个,且不是 icon元素\n const specialSceneDefaultShow = newChildren?.length > 1 && !isIconBtn\n\n if (specialSceneDefaultShow && (!isCn || popConfirmHandle)) {\n newChildren?.forEach((v, i) => {\n const { type, props } = v\n if (\n type?.name === 'Popconfirm' ||\n (props.hasOwnProperty('onConfirm') && typeof props?.onConfirm === 'function')\n ) {\n let placement = {}\n if (\n !isCn ||\n (num &&\n !isNaN(num) &&\n i + 1 > num &&\n !(lessOneMoreFit && newChildren.length - num === 1))\n ) {\n placement = {\n placement: 'left',\n }\n }\n newChildren[i] = React.cloneElement(v, {\n overlayStyle: { width: 180 },\n ...(v?.props || {}),\n onClick: (e) => e.stopPropagation(),\n ...placement,\n trigger: 'hover',\n getPopupContainer: (trigger) => trigger.parentNode,\n })\n }\n })\n }\n\n let [preChildPart, lastChildPart] = [newChildren, null]\n\n // 只有1个时不适配\n if (lessOneMoreFit && newChildren.length - num === 1) {\n preChildPart = newChildren\n } else if (newChildren && num && !isNaN(num) && newChildren.length > num) {\n preChildPart = newChildren.slice(0, num)\n lastChildPart = newChildren.slice(num)\n }\n\n if (divider && preChildPart) {\n const preChildLen = preChildPart.length\n preChildPart = preChildPart.map((dom, i) => (\n <Fragment key={i}>\n {dom}\n {!(\n (i === preChildLen - 1 && !lastChildPart?.length) // 没有更多 且 是最后一个时 不显示 Divider\n ) && <Divider type=\"vertical\" />}\n </Fragment>\n ))\n }\n const menu = (childArr)=>(\n <Menu className=\"org-pop-opera-btn\">\n {\n childArr?.map(\n (child,i) => (\n <Menu.Item key={i}>\n {child}\n </Menu.Item>\n )\n )\n }\n </Menu>\n );\n\n\n if(!isCn && specialSceneDefaultShow ){\n return (\n <Dropdown overlay={menu(newChildren||[])} arrow onClick={(e)=>{\n if(stopPropagation){\n e.stopPropagation()\n }\n }}>\n {\n type === 'icon' ?\n <Icon type=\"more\" /> :\n <a className=\"ant-dropdown-more\">\n {locale?.more}\n <i className={`${clsPrefix}-dropdown-icon`}>\n <Icon type=\"down\" />\n </i>\n </a>\n }\n </Dropdown>\n );\n }\n\n return (\n <div\n onClick={(e) => {\n if(stopPropagation){\n e.stopPropagation()\n }\n }}\n {...rest}\n >\n {preChildPart}\n {!!lastChildPart?.length && (\n <Dropdown overlay={menu(lastChildPart || [])} arrow>\n {type === 'icon' ? (\n <Icon type=\"more\" />\n ) : (\n <a className=\"ant-dropdown-more\">\n {locale?.more}\n <i className={`${clsPrefix}-dropdown-icon`}>\n <Icon type=\"down\" />\n </i>\n </a>\n )}\n </Dropdown>\n )}\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\n"]}
package/es/tabs/index.js CHANGED
@@ -1,5 +1,5 @@
1
- import Tabs from 'antd/es/tabs';
2
1
  import 'antd/es/tabs/style';
3
- export * from 'antd/es/tabs';
2
+ import { Tabs } from './tabs';
3
+ export * from './tabs';
4
4
  export default Tabs;
5
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,cAAc,CAAA;AAE/B,OAAO,oBAAoB,CAAA;AAE3B,cAAc,cAAc,CAAA;AAE5B,eAAe,IAAI,CAAA","sourcesContent":["import Tabs from 'antd/es/tabs'\n\nimport 'antd/es/tabs/style'\n\nexport * from 'antd/es/tabs'\n\nexport default Tabs\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tabs/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAE7B,cAAc,QAAQ,CAAA;AAEtB,eAAe,IAAI,CAAA","sourcesContent":["import 'antd/es/tabs/style'\nimport { Tabs } from './tabs'\n\nexport * from './tabs'\n\nexport default Tabs\n"]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=tabPane.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabPane.js","sourceRoot":"","sources":["../../src/tabs/tabPane.tsx"],"names":[],"mappings":"","sourcesContent":[""]}
@@ -0,0 +1,51 @@
1
+ var __rest = (this && this.__rest) || function (s, e) {
2
+ var t = {};
3
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
+ t[p] = s[p];
5
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
+ t[p[i]] = s[p[i]];
9
+ }
10
+ return t;
11
+ };
12
+ import React from 'react';
13
+ import { ConfigConsumer } from 'antd/es/config-provider';
14
+ import { default as AntdTabs } from 'antd/es/tabs';
15
+ export * from 'antd/es/tabs';
16
+ export function Tabs(_a) {
17
+ var { children } = _a, rest = __rest(_a, ["children"]);
18
+ const titleHandle = (tab) => {
19
+ var _a, _b, _c, _d, _e, _f;
20
+ if (!tab) {
21
+ return tab;
22
+ }
23
+ if (typeof tab === 'string') {
24
+ const words = tab.split(' ');
25
+ const capitalizedWords = words.map((word) => {
26
+ return word.charAt(0).toUpperCase() + word.slice(1);
27
+ });
28
+ tab = capitalizedWords.join(' ');
29
+ }
30
+ if (React.isValidElement(tab)) {
31
+ if (((_a = tab === null || tab === void 0 ? void 0 : tab.props) === null || _a === void 0 ? void 0 : _a.children) && Array.isArray((_b = tab === null || tab === void 0 ? void 0 : tab.props) === null || _b === void 0 ? void 0 : _b.children)) {
32
+ return Object.assign(Object.assign({}, tab), { props: Object.assign(Object.assign({}, tab.props), { children: (_d = (_c = tab === null || tab === void 0 ? void 0 : tab.props) === null || _c === void 0 ? void 0 : _c.children) === null || _d === void 0 ? void 0 : _d.map((subTab) => {
33
+ return titleHandle(subTab);
34
+ }) }) });
35
+ }
36
+ else if (typeof ((_e = tab === null || tab === void 0 ? void 0 : tab.props) === null || _e === void 0 ? void 0 : _e.children) === 'string') {
37
+ tab = titleHandle((_f = tab === null || tab === void 0 ? void 0 : tab.props) === null || _f === void 0 ? void 0 : _f.children);
38
+ }
39
+ }
40
+ return tab;
41
+ };
42
+ const newChildren = children === null || children === void 0 ? void 0 : children.map((child) => {
43
+ var _a;
44
+ return Object.assign(Object.assign({}, child), { props: Object.assign(Object.assign({}, child.props), { tab: titleHandle((_a = child === null || child === void 0 ? void 0 : child.props) === null || _a === void 0 ? void 0 : _a.tab) }) });
45
+ });
46
+ return (React.createElement(ConfigConsumer, null, ({ getPrefixCls }) => {
47
+ return React.createElement(AntdTabs, Object.assign({}, rest, { children: newChildren }));
48
+ }));
49
+ }
50
+ Tabs.TabPane = AntdTabs.TabPane;
51
+ //# sourceMappingURL=tabs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../src/tabs/tabs.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAExD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,cAAc,CAAA;AAElD,cAAc,cAAc,CAAA;AAK5B,MAAM,UAAU,IAAI,CAAC,EAAmC;QAAnC,EAAE,QAAQ,OAAyB,EAApB,IAAI,cAAnB,YAAqB,CAAF;IACtC,MAAM,WAAW,GAAG,CAAC,GAA6B,EAAO,EAAE;;QACzD,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,GAAG,CAAA;SACX;QACD,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAC3B,MAAM,KAAK,GAAa,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YACtC,MAAM,gBAAgB,GAAa,KAAK,CAAC,GAAG,CAAC,CAAC,IAAY,EAAE,EAAE;gBAC5D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACrD,CAAC,CAAC,CAAA;YACF,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;SACjC;QACD,IAAI,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;YAC7B,IAAI,CAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,QAAQ,KAAI,KAAK,CAAC,OAAO,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,QAAQ,CAAC,EAAE;gBAC/D,uCACK,GAAG,KACN,KAAK,kCACA,GAAG,CAAC,KAAK,KACZ,QAAQ,EAAE,MAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,QAAQ,0CAAE,GAAG,CAAC,CAAC,MAAgC,EAAE,EAAE;4BACvE,OAAO,WAAW,CAAC,MAAM,CAAC,CAAA;wBAC5B,CAAC,CAAC,OAEL;aACF;iBAAM,IAAI,OAAO,CAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,QAAQ,CAAA,KAAK,QAAQ,EAAE;gBACnD,GAAG,GAAG,WAAW,CAAC,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,KAAK,0CAAE,QAAQ,CAAC,CAAA;aACxC;SACF;QACD,OAAO,GAAG,CAAA;IACZ,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;;QAC1C,uCACK,KAAK,KACR,KAAK,kCACA,KAAK,CAAC,KAAK,KACd,GAAG,EAAE,WAAW,CAAC,MAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,0CAAE,GAAG,CAAC,OAEtC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,CACL,oBAAC,cAAc,QACZ,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE;QACpB,OAAO,oBAAC,QAAQ,oBAAK,IAAI,IAAE,QAAQ,EAAE,WAAW,IAAI,CAAA;IACtD,CAAC,CACc,CAClB,CAAA;AACH,CAAC;AAED,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA","sourcesContent":["import React from 'react'\nimport type { TabsProps as AntdTabsProps } from 'antd/es/tabs'\nimport type { TabPaneProps as AntdTabPaneProps } from 'antd/es/tabs'\n\nimport { ConfigConsumer } from 'antd/es/config-provider'\n\nimport { default as AntdTabs } from 'antd/es/tabs'\n\nexport * from 'antd/es/tabs'\n\nexport interface TabPaneProps extends AntdTabPaneProps {\n children?: Array<React.ReactElement>\n}\nexport function Tabs({ children, ...rest }: TabPaneProps): JSX.Element {\n const titleHandle = (tab: string | React.ReactNode): any => {\n if (!tab) {\n return tab\n }\n if (typeof tab === 'string') {\n const words: string[] = tab.split(' ')\n const capitalizedWords: string[] = words.map((word: string) => {\n return word.charAt(0).toUpperCase() + word.slice(1)\n })\n tab = capitalizedWords.join(' ')\n }\n if (React.isValidElement(tab)) {\n if (tab?.props?.children && Array.isArray(tab?.props?.children)) {\n return {\n ...tab,\n props: {\n ...tab.props,\n children: tab?.props?.children?.map((subTab: string | React.ReactNode) => {\n return titleHandle(subTab)\n }),\n },\n }\n } else if (typeof tab?.props?.children === 'string') {\n tab = titleHandle(tab?.props?.children)\n }\n }\n return tab\n }\n\n const newChildren = children?.map((child) => {\n return {\n ...child,\n props: {\n ...child.props,\n tab: titleHandle(child?.props?.tab),\n },\n }\n })\n\n return (\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n return <AntdTabs {...rest} children={newChildren} />\n }}\n </ConfigConsumer>\n )\n}\n\nTabs.TabPane = AntdTabs.TabPane\n"]}
@@ -9,64 +9,31 @@ var __rest = (this && this.__rest) || function (s, e) {
9
9
  }
10
10
  return t;
11
11
  };
12
- import { Close, FullScreen as FullScreenIcon, OffScreen } from '@icon-park/react';
13
12
  import cn from 'classnames';
14
13
  import React, { Fragment, useEffect, useState } from 'react';
15
- import { Modal as AntdModal } from 'antd';
16
- import { isArray } from 'lodash';
14
+ import Modal from '../modal';
15
+ import Icon from '../tntd-icon';
17
16
  import './index.less';
18
- export const Modal = (_a) => {
19
- var { visible, className, title, width, style = {}, children, onCancel, hasFooter = true, footer, config = {
20
- width: 'auto',
21
- height: 'auto',
22
- } } = _a, rest = __rest(_a, ["visible", "className", "title", "width", "style", "children", "onCancel", "hasFooter", "footer", "config"]);
23
- const [fullscreen, setFullscreen] = useState(false);
24
- const supportFullscreen = config.fullScreen;
17
+ const Title = ({ title, logo, fullscreen, supportFullscreen = true, onToggleFullscreen, onClose, }) => {
18
+ return (React.createElement(Fragment, null,
19
+ React.createElement("div", null,
20
+ logo && React.createElement("img", { src: logo }),
21
+ React.createElement("span", null, title)),
22
+ React.createElement("div", { className: "tnt-modal-header-actions" },
23
+ supportFullscreen && (React.createElement(Icon, { className: "fullscreen", type: fullscreen ? 'fullscreen-exit' : 'fullscreen', onClick: onToggleFullscreen })),
24
+ React.createElement(Icon, { className: "close", type: "close", onClick: onClose }))));
25
+ };
26
+ export default (props) => {
27
+ const { visible, children, logo, title, height = '90vh', width = '85%', className, supportFullscreen, onToggleFullscreen, onCancel } = props, rest = __rest(props, ["visible", "children", "logo", "title", "height", "width", "className", "supportFullscreen", "onToggleFullscreen", "onCancel"]);
28
+ const [fullscreen, setFullscreen] = useState(rest.fullscreen || false);
25
29
  useEffect(() => {
26
- return () => {
27
- setFullscreen(false);
28
- };
29
- }, [visible]);
30
- const Title = ({ title, logo, fullscreen, onToggleFullscreen, onClose, }) => {
31
- return (React.createElement(Fragment, null,
32
- React.createElement("div", { className: "ant-modal-header-title" },
33
- logo && logo,
34
- React.createElement("span", null, title)),
35
- React.createElement("div", { className: "ant-modal-header-actions" },
36
- React.createElement("a", { className: "modal-fullscreen-wrap", onClick: onToggleFullscreen }, fullscreen ? React.createElement(OffScreen, null) : React.createElement(FullScreenIcon, null)),
37
- React.createElement("a", { className: "modal-close-wrap", onClick: onClose },
38
- React.createElement(Close, { theme: "outline" })))));
39
- };
40
- const computeWidth = supportFullscreen
41
- ? fullscreen
42
- ? '100vw'
43
- : width || config.width
44
- : width || config.width;
45
- const computeHeight = supportFullscreen ? (fullscreen ? '100vh' : config.height) : 'inherit';
46
- style.height = computeHeight;
47
- if (supportFullscreen && fullscreen) {
48
- style.top = 0;
49
- }
50
- else {
51
- delete style.top;
52
- }
53
- const footerConfig = hasFooter
54
- ? (isArray(footer) ? footer.length > 0 : footer)
55
- ? footer
56
- : undefined
57
- : null;
58
- return (React.createElement(AntdModal, Object.assign({ visible: visible, title: supportFullscreen ? (React.createElement(Title, { logo: config.logo, title: title, fullscreen: fullscreen, supportFullscreen: supportFullscreen, onClose: onCancel, onToggleFullscreen: () => {
30
+ setFullscreen(rest.fullscreen);
31
+ }, [rest.fullscreen, visible]);
32
+ return (React.createElement(Modal, Object.assign({ visible: visible, title: React.createElement(Title, { logo: logo, title: title, fullscreen: fullscreen, supportFullscreen: supportFullscreen, onClose: onCancel, onToggleFullscreen: () => {
59
33
  setFullscreen(!fullscreen);
60
- if (!fullscreen) {
61
- }
62
- } })) : (title), onCancel: onCancel, centered: supportFullscreen ? true : rest.centered ? true : false, width: computeWidth, style: style, className: cn([
63
- {
64
- 'support-fullscreen': supportFullscreen,
65
- fullscreen: fullscreen,
66
- 'no-header': supportFullscreen && !(config.logo || title),
67
- },
68
- className,
69
- ]), footer: footer }, rest), children));
34
+ onToggleFullscreen && onToggleFullscreen(!fullscreen);
35
+ } }), onCancel: onCancel, destroyOnClose: true, centered: true, footer: null, width: fullscreen ? '100%' : width, style: {
36
+ height: fullscreen ? '100vh' : height,
37
+ }, className: cn('tnt-modal', { [className]: className, fullscreen }) }, rest), children));
70
38
  };
71
- export default Modal;
72
39
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-modal/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Close, FullScreen as FullScreenIcon, OffScreen } from '@icon-park/react'\nimport type { ModalProps as AntdModalProps } from 'antd/lib/modal'\nimport cn from 'classnames'\nimport React, { Fragment, useEffect, useState, useRef } from 'react'\nimport { Modal as AntdModal } from 'antd'\nimport { isArray } from 'lodash'\n\nimport './index.less'\n\nexport type ModalProps = AntdModalProps & {\n children?: React.ReactNode\n hasFooter?: boolean\n config?: {\n fullScreen?: boolean\n width?: string | number\n height?: string | number\n logo?: React.ReactNode\n }\n}\n\nexport const Modal = ({\n visible,\n className,\n title,\n width,\n style = {},\n children,\n onCancel,\n hasFooter = true,\n footer,\n config = {\n width: 'auto',\n height: 'auto',\n },\n ...rest\n}: ModalProps) => {\n const [fullscreen, setFullscreen] = useState<boolean>(false)\n const supportFullscreen = config.fullScreen\n\n useEffect(() => {\n return () => {\n setFullscreen(false)\n }\n }, [visible])\n\n const Title = ({\n title,\n logo,\n fullscreen,\n onToggleFullscreen,\n onClose,\n }: // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any) => {\n return (\n <Fragment>\n <div className=\"ant-modal-header-title\">\n {logo && logo}\n <span>{title}</span>\n </div>\n <div className=\"ant-modal-header-actions\">\n <a className=\"modal-fullscreen-wrap\" onClick={onToggleFullscreen}>\n {fullscreen ? <OffScreen /> : <FullScreenIcon />}\n </a>\n <a className=\"modal-close-wrap\" onClick={onClose}>\n <Close theme=\"outline\" />\n </a>\n </div>\n </Fragment>\n )\n }\n\n const computeWidth = supportFullscreen\n ? fullscreen\n ? '100vw'\n : width || config.width\n : width || config.width\n\n const computeHeight = supportFullscreen ? (fullscreen ? '100vh' : config.height) : 'inherit'\n\n style.height = computeHeight\n if (supportFullscreen && fullscreen) {\n style.top = 0\n } else {\n delete style.top\n }\n\n const footerConfig = hasFooter\n ? (isArray(footer) ? footer.length > 0 : footer)\n ? footer\n : undefined\n : null\n\n return (\n <AntdModal\n visible={visible}\n title={\n supportFullscreen ? (\n <Title\n logo={config.logo}\n title={title}\n fullscreen={fullscreen}\n supportFullscreen={supportFullscreen}\n onClose={onCancel}\n onToggleFullscreen={() => {\n setFullscreen(!fullscreen)\n if (!fullscreen) {\n }\n }}\n />\n ) : (\n title\n )\n }\n onCancel={onCancel}\n centered={supportFullscreen ? true : rest.centered ? true : false}\n width={computeWidth}\n style={style}\n className={cn([\n {\n 'support-fullscreen': supportFullscreen,\n fullscreen: fullscreen,\n 'no-header': supportFullscreen && !(config.logo || title),\n },\n className,\n ])}\n footer={footer}\n {...rest}\n >\n {children}\n </AntdModal>\n )\n}\n\nexport default Modal\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tntd-modal/index.js"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,YAAY,CAAA;AAC3B,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE5D,OAAO,KAAK,MAAM,UAAU,CAAA;AAC5B,OAAO,IAAI,MAAM,cAAc,CAAA;AAE/B,OAAO,cAAc,CAAA;AAErB,MAAM,KAAK,GAAG,CAAC,EACb,KAAK,EACL,IAAI,EACJ,UAAU,EACV,iBAAiB,GAAG,IAAI,EACxB,kBAAkB,EAClB,OAAO,GACR,EAAE,EAAE;IACH,OAAO,CACL,oBAAC,QAAQ;QACP;YACG,IAAI,IAAI,6BAAK,GAAG,EAAE,IAAI,GAAI;YAC3B,kCAAO,KAAK,CAAQ,CAChB;QACN,6BAAK,SAAS,EAAC,0BAA0B;YACtC,iBAAiB,IAAI,CACpB,oBAAC,IAAI,IACH,SAAS,EAAC,YAAY,EACtB,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,YAAY,EACnD,OAAO,EAAE,kBAAkB,GAC3B,CACH;YACD,oBAAC,IAAI,IAAC,SAAS,EAAC,OAAO,EAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAE,OAAO,GAAI,CACrD,CACG,CACZ,CAAA;AACH,CAAC,CAAA;AAED,eAAe,CAAC,KAAK,EAAE,EAAE;IACvB,MAAM,EACJ,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,KAAK,EACb,SAAS,EACT,iBAAiB,EACjB,kBAAkB,EAClB,QAAQ,KAEN,KAAK,EADJ,IAAI,UACL,KAAK,EAZH,+HAYL,CAAQ,CAAA;IACT,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,CAAA;IAEtE,SAAS,CAAC,GAAG,EAAE;QACb,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAChC,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;IAE9B,OAAO,CACL,oBAAC,KAAK,kBACJ,OAAO,EAAE,OAAO,EAChB,KAAK,EACH,oBAAC,KAAK,IACJ,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,UAAU,EACtB,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE,QAAQ,EACjB,kBAAkB,EAAE,GAAG,EAAE;gBACvB,aAAa,CAAC,CAAC,UAAU,CAAC,CAAA;gBAC1B,kBAAkB,IAAI,kBAAkB,CAAC,CAAC,UAAU,CAAC,CAAA;YACvD,CAAC,GACD,EAEJ,QAAQ,EAAE,QAAQ,EAClB,cAAc,QACd,QAAQ,QACR,MAAM,EAAE,IAAI,EACZ,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAClC,KAAK,EAAE;YACL,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;SACtC,EACD,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,IAC9D,IAAI,GAEP,QAAQ,CACH,CACT,CAAA;AACH,CAAC,CAAA","sourcesContent":["import cn from 'classnames'\nimport React, { Fragment, useEffect, useState } from 'react'\n\nimport Modal from '../modal'\nimport Icon from '../tntd-icon'\n\nimport './index.less'\n\nconst Title = ({\n title,\n logo,\n fullscreen,\n supportFullscreen = true,\n onToggleFullscreen,\n onClose,\n}) => {\n return (\n <Fragment>\n <div>\n {logo && <img src={logo} />}\n <span>{title}</span>\n </div>\n <div className=\"tnt-modal-header-actions\">\n {supportFullscreen && (\n <Icon\n className=\"fullscreen\"\n type={fullscreen ? 'fullscreen-exit' : 'fullscreen'}\n onClick={onToggleFullscreen}\n />\n )}\n <Icon className=\"close\" type=\"close\" onClick={onClose} />\n </div>\n </Fragment>\n )\n}\n\nexport default (props) => {\n const {\n visible,\n children,\n logo,\n title,\n height = '90vh',\n width = '85%',\n className,\n supportFullscreen,\n onToggleFullscreen,\n onCancel,\n ...rest\n } = props\n const [fullscreen, setFullscreen] = useState(rest.fullscreen || false)\n\n useEffect(() => {\n setFullscreen(rest.fullscreen)\n }, [rest.fullscreen, visible])\n\n return (\n <Modal\n visible={visible}\n title={\n <Title\n logo={logo}\n title={title}\n fullscreen={fullscreen}\n supportFullscreen={supportFullscreen}\n onClose={onCancel}\n onToggleFullscreen={() => {\n setFullscreen(!fullscreen)\n onToggleFullscreen && onToggleFullscreen(!fullscreen)\n }}\n />\n }\n onCancel={onCancel}\n destroyOnClose\n centered\n footer={null}\n width={fullscreen ? '100%' : width}\n style={{\n height: fullscreen ? '100vh' : height,\n }}\n className={cn('tnt-modal', { [className]: className, fullscreen })}\n {...rest}\n >\n {children}\n </Modal>\n )\n}\n"]}