@pisell/materials 6.0.6 → 6.0.7

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 (173) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +7 -7
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +21 -53
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +18 -50
  11. package/es/components/config-provider/index.js +1 -1
  12. package/es/components/dataSourceComponents/dataSourceForm/BaseForm.js +20 -11
  13. package/es/components/dataSourceComponents/dataSourceForm/formItem.js +1 -1
  14. package/es/components/dataSourceComponents/dataSourceForm/group/index.less +2 -2
  15. package/es/components/dataSourceComponents/dataSourceForm/index.js +4 -2
  16. package/es/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingContext.d.ts +4 -0
  17. package/es/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingProvider.js +11 -3
  18. package/es/components/dataSourceComponents/dataSourceForm/provider/jsonWrapper/JsonWrapperProvider.js +10 -3
  19. package/es/components/dataSourceComponents/dataSourceForm/serve.d.ts +3 -2
  20. package/es/components/dataSourceComponents/dataSourceForm/serve.js +36 -20
  21. package/es/components/dataSourceComponents/dataSourceForm/submitButton/index.js +46 -25
  22. package/es/components/dataSourceComponents/dataSourceForm/type.d.ts +5 -0
  23. package/es/components/dataSourceComponents/dataSourceForm/utils.d.ts +3 -1
  24. package/es/components/dataSourceComponents/dataSourceForm/utils.js +38 -10
  25. package/es/components/dataSourceComponents/dataSourceTable/filter/index.js +1 -1
  26. package/es/components/dataSourceComponents/dataSourceTable/hooks/useColumns.js +4 -1
  27. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +7 -0
  28. package/es/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +28 -5
  29. package/es/components/dataSourceComponents/dataSourceTable/index.js +4 -2
  30. package/es/components/dataSourceComponents/dataSourceTable/type.d.ts +9 -1
  31. package/es/components/dataSourceComponents/fields/Input.Phone/WithMode.js +7 -1
  32. package/es/components/dataSourceComponents/fields/Input.Url/ReadPretty.d.ts +1 -0
  33. package/es/components/dataSourceComponents/fields/Input.Url/ReadPretty.js +16 -1
  34. package/es/components/dataSourceComponents/fields/Input.Url/ReadPretty.less +1 -1
  35. package/es/components/dataSourceComponents/fields/Select/index.js +7 -1
  36. package/es/components/dataSourceComponents/fields/Upload/serve.d.ts +4 -1
  37. package/es/components/dataSourceComponents/fields/Upload/serve.js +10 -31
  38. package/es/components/dataSourceComponents/hooks/useActions.d.ts +2 -1
  39. package/es/components/dataSourceComponents/hooks/useActions.js +73 -36
  40. package/es/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +7 -0
  41. package/es/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +3 -1
  42. package/es/components/dataSourceComponents/provider/variables/VariablesProvider.js +49 -3
  43. package/es/components/login-and-register/index.d.ts +82 -0
  44. package/es/components/login-and-register/index.js +360 -0
  45. package/es/components/login-and-register/index.less +211 -0
  46. package/es/components/organizationTenantSwitcher/defaultLogo.png +0 -0
  47. package/es/components/organizationTenantSwitcher/index.d.ts +17 -0
  48. package/es/components/organizationTenantSwitcher/index.js +96 -0
  49. package/es/components/organizationTenantSwitcher/index.less +88 -0
  50. package/es/components/page/index.js +4 -4
  51. package/es/components/page-header/index.d.ts +14 -0
  52. package/es/components/page-header/index.js +36 -0
  53. package/es/components/page-header/index.less +45 -0
  54. package/es/components/pisellAvatar/index.d.ts +19 -0
  55. package/es/components/pisellAvatar/index.js +89 -0
  56. package/es/components/pisellAvatar/index.less +26 -0
  57. package/es/components/pisellModal/components/PcModal/index.js +1 -1
  58. package/es/components/pisellTags/index.d.ts +13 -0
  59. package/es/components/pisellTags/index.js +83 -0
  60. package/es/components/pisellTags/index.less +17 -0
  61. package/es/components/pisellTags/utils.d.ts +1 -0
  62. package/es/components/pisellTags/utils.js +89 -0
  63. package/es/components/pisellText/components/Amount/index.js +1 -1
  64. package/es/components/profileMenu/index.d.ts +26 -0
  65. package/es/components/profileMenu/index.js +115 -0
  66. package/es/components/profileMenu/index.less +135 -0
  67. package/es/components/table/Header/index.js +8 -11
  68. package/es/index.d.ts +6 -0
  69. package/es/index.js +7 -1
  70. package/es/locales/en-US.d.ts +1 -0
  71. package/es/locales/en-US.js +1 -0
  72. package/es/locales/zh-CN.d.ts +1 -0
  73. package/es/locales/zh-CN.js +1 -0
  74. package/es/locales/zh-TW.d.ts +1 -0
  75. package/es/locales/zh-TW.js +1 -0
  76. package/lib/components/config-provider/index.js +1 -1
  77. package/lib/components/dataSourceComponents/dataSourceForm/BaseForm.js +22 -4
  78. package/lib/components/dataSourceComponents/dataSourceForm/formItem.js +1 -1
  79. package/lib/components/dataSourceComponents/dataSourceForm/group/index.less +2 -2
  80. package/lib/components/dataSourceComponents/dataSourceForm/index.js +3 -2
  81. package/lib/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingContext.d.ts +4 -0
  82. package/lib/components/dataSourceComponents/dataSourceForm/provider/formSetting/FormSettingProvider.js +17 -3
  83. package/lib/components/dataSourceComponents/dataSourceForm/provider/jsonWrapper/JsonWrapperProvider.js +16 -6
  84. package/lib/components/dataSourceComponents/dataSourceForm/serve.d.ts +3 -2
  85. package/lib/components/dataSourceComponents/dataSourceForm/serve.js +9 -5
  86. package/lib/components/dataSourceComponents/dataSourceForm/submitButton/index.js +15 -4
  87. package/lib/components/dataSourceComponents/dataSourceForm/type.d.ts +5 -0
  88. package/lib/components/dataSourceComponents/dataSourceForm/utils.d.ts +3 -1
  89. package/lib/components/dataSourceComponents/dataSourceForm/utils.js +51 -5
  90. package/lib/components/dataSourceComponents/dataSourceTable/filter/index.js +1 -1
  91. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useColumns.js +4 -1
  92. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.d.ts +7 -0
  93. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useTableProps.js +24 -3
  94. package/lib/components/dataSourceComponents/dataSourceTable/index.js +2 -2
  95. package/lib/components/dataSourceComponents/dataSourceTable/type.d.ts +9 -1
  96. package/lib/components/dataSourceComponents/fields/Input.Phone/WithMode.js +6 -1
  97. package/lib/components/dataSourceComponents/fields/Input.Url/ReadPretty.d.ts +1 -0
  98. package/lib/components/dataSourceComponents/fields/Input.Url/ReadPretty.js +17 -2
  99. package/lib/components/dataSourceComponents/fields/Input.Url/ReadPretty.less +1 -1
  100. package/lib/components/dataSourceComponents/fields/Select/index.js +5 -1
  101. package/lib/components/dataSourceComponents/fields/Upload/serve.d.ts +4 -1
  102. package/lib/components/dataSourceComponents/fields/Upload/serve.js +20 -12
  103. package/lib/components/dataSourceComponents/hooks/useActions.d.ts +2 -1
  104. package/lib/components/dataSourceComponents/hooks/useActions.js +25 -7
  105. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceContext.d.ts +7 -0
  106. package/lib/components/dataSourceComponents/provider/dataSource/DataSourceProvider.js +3 -1
  107. package/lib/components/dataSourceComponents/provider/variables/VariablesProvider.js +49 -3
  108. package/lib/components/login-and-register/index.d.ts +82 -0
  109. package/lib/components/login-and-register/index.js +261 -0
  110. package/lib/components/login-and-register/index.less +211 -0
  111. package/lib/components/organizationTenantSwitcher/defaultLogo.png +0 -0
  112. package/lib/components/organizationTenantSwitcher/index.d.ts +17 -0
  113. package/lib/components/organizationTenantSwitcher/index.js +119 -0
  114. package/lib/components/organizationTenantSwitcher/index.less +88 -0
  115. package/lib/components/page/index.js +4 -4
  116. package/lib/components/page-header/index.d.ts +14 -0
  117. package/lib/components/page-header/index.js +63 -0
  118. package/lib/components/page-header/index.less +45 -0
  119. package/lib/components/pisellAvatar/index.d.ts +19 -0
  120. package/lib/components/pisellAvatar/index.js +108 -0
  121. package/lib/components/pisellAvatar/index.less +26 -0
  122. package/lib/components/pisellModal/components/PcModal/index.js +1 -1
  123. package/lib/components/pisellTags/index.d.ts +13 -0
  124. package/lib/components/pisellTags/index.js +113 -0
  125. package/lib/components/pisellTags/index.less +17 -0
  126. package/lib/components/pisellTags/utils.d.ts +1 -0
  127. package/lib/components/pisellTags/utils.js +86 -0
  128. package/lib/components/pisellText/components/Amount/index.js +2 -2
  129. package/lib/components/profileMenu/index.d.ts +26 -0
  130. package/lib/components/profileMenu/index.js +113 -0
  131. package/lib/components/profileMenu/index.less +135 -0
  132. package/lib/components/table/Header/index.js +11 -1
  133. package/lib/index.d.ts +6 -0
  134. package/lib/index.js +18 -0
  135. package/lib/locales/en-US.d.ts +1 -0
  136. package/lib/locales/en-US.js +1 -0
  137. package/lib/locales/zh-CN.d.ts +1 -0
  138. package/lib/locales/zh-CN.js +1 -0
  139. package/lib/locales/zh-TW.d.ts +1 -0
  140. package/lib/locales/zh-TW.js +1 -0
  141. package/lowcode/_utils/defaultSchema.ts +64 -0
  142. package/lowcode/data-source-form/meta.ts +130 -0
  143. package/lowcode/data-source-form/utils.ts +33 -3
  144. package/lowcode/data-source-table/meta.ts +139 -3
  145. package/lowcode/data-source-table/utils.tsx +6 -0
  146. package/lowcode/form-item-date-picker/snippets.ts +3 -0
  147. package/lowcode/form-item-input/snippets.ts +3 -1
  148. package/lowcode/form-item-input-number/snippets.ts +4 -0
  149. package/lowcode/form-item-input.email/snippets.ts +3 -0
  150. package/lowcode/form-item-input.json/snippets.ts +4 -1
  151. package/lowcode/form-item-input.password/snippets.ts +3 -0
  152. package/lowcode/form-item-input.phone/snippets.ts +3 -0
  153. package/lowcode/form-item-input.text-area/snippets.ts +3 -1
  154. package/lowcode/form-item-input.url/snippets.ts +3 -0
  155. package/lowcode/form-item-select/meta.ts +2 -1
  156. package/lowcode/form-item-select/snippets.ts +6 -0
  157. package/lowcode/form-item-time-picker/snippets.ts +3 -0
  158. package/lowcode/form-item-translation/snippets.ts +3 -1
  159. package/lowcode/login-and-register/meta.ts +541 -0
  160. package/lowcode/login-and-register/snippets.ts +38 -0
  161. package/lowcode/organization-tenant-switch/meta.ts +127 -0
  162. package/lowcode/page-header/meta.ts +68 -124
  163. package/lowcode/page-header/snippets.ts +1 -1
  164. package/lowcode/pisell-avatar/__screenshots__/avatar-1.jpg +0 -0
  165. package/lowcode/pisell-avatar/meta.ts +111 -0
  166. package/lowcode/pisell-avatar/snippets.ts +14 -0
  167. package/lowcode/pisell-tags/__screenshots__/tag-1.png +0 -0
  168. package/lowcode/pisell-tags/meta.ts +123 -0
  169. package/lowcode/pisell-tags/snippets.ts +14 -0
  170. package/lowcode/profile-menu/meta.ts +175 -0
  171. package/lowcode/profile-menu/snippets.ts +71 -0
  172. package/lowcode/submit-button/meta.ts +6 -0
  173. package/package.json +3 -3
@@ -2,7 +2,7 @@ var _excluded = ["value", "precision", "showCurrencySymbol", "useThousandsSepara
2
2
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3
3
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
4
4
  import React, { useMemo } from 'react';
5
- import { formatAmountWithOptions } from '@pisell/utils/src';
5
+ import { formatAmountWithOptions } from '@pisell/utils';
6
6
  import usePisellConfig from "../../../pisell-config-provider/hooks/usePisellConfig";
7
7
  var Amount = function Amount(props) {
8
8
  var value = props.value,
@@ -0,0 +1,26 @@
1
+ import React from 'react';
2
+ import type { MenuProps } from 'antd';
3
+ import './index.less';
4
+ interface AvatarConfig {
5
+ src?: string;
6
+ alt?: string;
7
+ }
8
+ interface ProfileMenuProps {
9
+ menuIcon?: React.ReactNode;
10
+ userName?: string;
11
+ email?: string;
12
+ isShowUserName?: boolean;
13
+ isShowEmail?: boolean;
14
+ isShowUserInfo?: boolean;
15
+ onClick?: () => void;
16
+ avatar?: AvatarConfig;
17
+ className?: string;
18
+ style?: React.CSSProperties;
19
+ menuItems?: MenuProps['items'];
20
+ placement?: 'bottomLeft' | 'bottomCenter' | 'bottomRight' | 'topLeft' | 'topCenter' | 'topRight';
21
+ trigger?: ('click' | 'hover')[];
22
+ showBadge?: boolean;
23
+ badgeCount?: number;
24
+ }
25
+ declare const ProfileMenu: React.FC<ProfileMenuProps>;
26
+ export default ProfileMenu;
@@ -0,0 +1,115 @@
1
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
2
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
3
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
6
+ function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
7
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
8
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
11
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
12
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
+ import React, { useEffect, useMemo } from 'react';
14
+ import { Dropdown, Badge } from 'antd';
15
+ import { UserOutlined } from "@ant-design/icons";
16
+ import classNames from 'classnames';
17
+ import PisellAvatar from "../pisellAvatar";
18
+ import "./index.less";
19
+ var ProfileMenu = function ProfileMenu(_ref) {
20
+ var menuIcon = _ref.menuIcon,
21
+ _ref$userName = _ref.userName,
22
+ userName = _ref$userName === void 0 ? '' : _ref$userName,
23
+ _ref$email = _ref.email,
24
+ email = _ref$email === void 0 ? '' : _ref$email,
25
+ _ref$isShowUserName = _ref.isShowUserName,
26
+ isShowUserName = _ref$isShowUserName === void 0 ? true : _ref$isShowUserName,
27
+ _ref$isShowEmail = _ref.isShowEmail,
28
+ isShowEmail = _ref$isShowEmail === void 0 ? true : _ref$isShowEmail,
29
+ _ref$isShowUserInfo = _ref.isShowUserInfo,
30
+ isShowUserInfo = _ref$isShowUserInfo === void 0 ? false : _ref$isShowUserInfo,
31
+ onClick = _ref.onClick,
32
+ avatar = _ref.avatar,
33
+ className = _ref.className,
34
+ style = _ref.style,
35
+ _ref$menuItems = _ref.menuItems,
36
+ menuItems = _ref$menuItems === void 0 ? [] : _ref$menuItems,
37
+ _ref$placement = _ref.placement,
38
+ placement = _ref$placement === void 0 ? 'bottomRight' : _ref$placement,
39
+ _ref$trigger = _ref.trigger,
40
+ trigger = _ref$trigger === void 0 ? ['click'] : _ref$trigger,
41
+ _ref$showBadge = _ref.showBadge,
42
+ showBadge = _ref$showBadge === void 0 ? false : _ref$showBadge,
43
+ _ref$badgeCount = _ref.badgeCount,
44
+ badgeCount = _ref$badgeCount === void 0 ? 1 : _ref$badgeCount;
45
+ useEffect(function () {
46
+ document.body.id = 'body';
47
+ }, []);
48
+ var handleClick = function handleClick(e) {
49
+ e.preventDefault();
50
+ onClick === null || onClick === void 0 ? void 0 : onClick();
51
+ };
52
+ var renderAvatar = function renderAvatar(avatarProps) {
53
+ return /*#__PURE__*/React.createElement(PisellAvatar, {
54
+ style: {
55
+ margin: '0 6px'
56
+ },
57
+ size: "md",
58
+ src: (avatarProps === null || avatarProps === void 0 ? void 0 : avatarProps.src) || '',
59
+ alt: (avatarProps === null || avatarProps === void 0 ? void 0 : avatarProps.alt) || '',
60
+ icon: /*#__PURE__*/React.createElement(UserOutlined, {
61
+ style: {
62
+ fontSize: 24,
63
+ color: '#475467'
64
+ }
65
+ })
66
+ });
67
+ };
68
+ var finalMenuItems = useMemo(function () {
69
+ if (!isShowUserInfo) return menuItems;
70
+ var userInfoItem = {
71
+ key: 'user-info',
72
+ label: /*#__PURE__*/React.createElement("div", {
73
+ className: "profile-menu-user-info-item"
74
+ }, renderAvatar(avatar), /*#__PURE__*/React.createElement("div", {
75
+ className: "profile-menu-user-info"
76
+ }, userName && /*#__PURE__*/React.createElement("p", {
77
+ className: "profile-menu-user-info-name"
78
+ }, userName), email && /*#__PURE__*/React.createElement("p", {
79
+ className: "profile-menu-user-info-email"
80
+ }, email)))
81
+ };
82
+ return [userInfoItem, {
83
+ type: 'divider'
84
+ }].concat(_toConsumableArray(menuItems || []));
85
+ }, [isShowUserInfo, menuItems, userName, email, avatar]);
86
+ var showUserInfo = isShowUserName && userName || isShowEmail && email;
87
+ return /*#__PURE__*/React.createElement(Dropdown, {
88
+ menu: {
89
+ items: finalMenuItems
90
+ },
91
+ placement: placement,
92
+ trigger: trigger,
93
+ overlayClassName: "profile-menu-dropdown"
94
+ }, /*#__PURE__*/React.createElement("div", {
95
+ className: classNames('profile-menu-wrap', className),
96
+ style: _objectSpread(_objectSpread({}, style), {}, {
97
+ paddingRight: showUserInfo ? 16 : 0
98
+ }),
99
+ onClick: handleClick
100
+ }, menuIcon && /*#__PURE__*/React.createElement("div", {
101
+ className: "profile-menu-icon"
102
+ }, menuIcon), /*#__PURE__*/React.createElement(Badge, {
103
+ count: showBadge ? badgeCount : 0,
104
+ offset: [-6, 6]
105
+ }, renderAvatar(avatar)), showUserInfo && /*#__PURE__*/React.createElement("div", {
106
+ className: "profile-menu-user-info"
107
+ }, isShowUserName && userName && /*#__PURE__*/React.createElement("p", {
108
+ className: "profile-menu-user-info-name",
109
+ title: userName
110
+ }, userName), isShowEmail && email && /*#__PURE__*/React.createElement("p", {
111
+ className: "profile-menu-user-info-email",
112
+ title: email
113
+ }, email))));
114
+ };
115
+ export default ProfileMenu;
@@ -0,0 +1,135 @@
1
+ .profile-menu-wrap {
2
+ display: flex;
3
+ max-width: 250px;
4
+ box-sizing: border-box;
5
+ gap: 10px;
6
+ width: fit-content;
7
+ align-items: center;
8
+ padding-top: 6px;
9
+ padding-bottom: 6px;
10
+ padding-left: 16px;
11
+
12
+ border-radius: 50px;
13
+ border: 1px solid var(--Gray-100, #f2f4f7);
14
+ background: var(--Base-White, #fff);
15
+ cursor: pointer;
16
+ transition: all 0.3s ease;
17
+
18
+ /* Shadow/sm */
19
+ // box-shadow: 0px 1px 3px 0px rgba(16, 24, 40, 0.1),
20
+ // 0px 1px 2px 0px rgba(16, 24, 40, 0.06);
21
+
22
+ &:hover {
23
+ border-color: var(--Gray-200, #e5e7eb);
24
+ box-shadow: 0px 2px 4px 0px rgba(16, 24, 40, 0.15);
25
+ }
26
+
27
+ .profile-menu-icon {
28
+ display: flex;
29
+ align-items: center;
30
+ }
31
+
32
+ &.profile-menu-user-info{
33
+ flex: 1;
34
+ }
35
+ }
36
+
37
+
38
+ .profile-menu-user-info {
39
+ display: flex;
40
+ flex-direction: column;
41
+ justify-content: center;
42
+ min-width: 0;
43
+ padding: 0;
44
+
45
+ &-item {
46
+ display: flex;
47
+ align-items: center;
48
+ gap: 12px;
49
+ width: 100%;
50
+ flex-wrap: nowrap;
51
+ }
52
+
53
+ &-name {
54
+ color: var(--Gray-700, #344054);
55
+ font-family: Inter;
56
+ font-size: 14px;
57
+ font-weight: 600;
58
+ line-height: 20px;
59
+ margin: 0;
60
+ white-space: nowrap;
61
+ overflow: hidden;
62
+ text-overflow: ellipsis;
63
+ }
64
+
65
+ &-email {
66
+ color: var(--Gray-600, #475467);
67
+ font-family: Inter;
68
+ font-size: 14px;
69
+ font-weight: 400;
70
+ line-height: 20px;
71
+ margin: 0;
72
+ white-space: nowrap;
73
+ overflow: hidden;
74
+ text-overflow: ellipsis;
75
+ }
76
+ }
77
+
78
+ .profile-menu-dropdown {
79
+ .ant-dropdown-menu {
80
+ min-width: fit-content;
81
+ max-width: 250px;
82
+ padding: 8px;
83
+ border-radius: 8px;
84
+ border: 1px solid var(--Gray-100, #f2f4f7);
85
+ background: var(--Base-White, #fff);
86
+ box-shadow: 0px 4px 6px -2px rgba(16, 24, 40, 0.03),
87
+ 0px 12px 16px -4px rgba(16, 24, 40, 0.08);
88
+
89
+ .ant-dropdown-menu-item {
90
+ padding: 8px 12px;
91
+ border-radius: 6px;
92
+ min-height: 40px;
93
+ display: flex;
94
+ align-items: center;
95
+
96
+ &:hover {
97
+ background: var(--Gray-50, #f9fafb);
98
+ }
99
+
100
+ &:active {
101
+ background: var(--Gray-100, #f2f4f7);
102
+ }
103
+
104
+ .profile-menu-user-info-item {
105
+ display: flex;
106
+ align-items: center;
107
+ gap: 12px;
108
+ width: 100%;
109
+ flex-wrap: nowrap;
110
+ overflow: hidden;
111
+
112
+ .profile-menu-user-info {
113
+ flex: 1;
114
+ min-width: 0;
115
+ overflow: hidden;
116
+
117
+ &-name,
118
+ &-email {
119
+ width: 100%;
120
+ padding-right: 8px;
121
+ margin: 0;
122
+ white-space: nowrap;
123
+ overflow: hidden;
124
+ text-overflow: ellipsis;
125
+ }
126
+ }
127
+ }
128
+ }
129
+
130
+ .ant-dropdown-menu-item-divider {
131
+ margin: 8px 0;
132
+ background-color: var(--Gray-100, #f2f4f7);
133
+ }
134
+ }
135
+ }
@@ -1,5 +1,6 @@
1
1
  import React, { useMemo } from 'react';
2
2
  import { isFunction } from '@pisell/utils';
3
+ import PageHeader from "../../page-header";
3
4
  import Buttons from "./Buttons";
4
5
  import "./index.less";
5
6
  var Header = function Header(_ref) {
@@ -31,16 +32,12 @@ var Header = function Header(_ref) {
31
32
  }
32
33
  return subTitle;
33
34
  }, [subTitle]);
34
- return showHeader ? /*#__PURE__*/React.createElement("div", {
35
- className: "materials-grid-header-wrap"
36
- }, /*#__PURE__*/React.createElement("div", {
37
- className: 'materials-grid-header'
38
- }, showTitle && /*#__PURE__*/React.createElement("div", {
39
- className: 'left-wrap'
40
- }, titleNode), /*#__PURE__*/React.createElement("div", {
41
- className: 'right-wrap'
42
- }, buttonsNode)), showSubTitle && subTitleNode && /*#__PURE__*/React.createElement("div", {
43
- className: 'materials-grid-sub-title'
44
- }, subTitleNode)) : null;
35
+ return showHeader ? /*#__PURE__*/React.createElement(PageHeader, {
36
+ title: titleNode,
37
+ showTitle: showTitle,
38
+ subTitle: subTitleNode,
39
+ showSubTitle: showSubTitle,
40
+ extra: buttonsNode
41
+ }) : null;
45
42
  };
46
43
  export default Header;
package/es/index.d.ts CHANGED
@@ -98,6 +98,8 @@ export { default as PisellToast } from './components/pisellToast';
98
98
  export { default as PisellWalletPassCard } from './components/pisellWalletPassCard';
99
99
  export { default as PisellScan } from './components/pisellScan';
100
100
  export { default as PisellAlert } from './components/pisellAlert';
101
+ export { default as PisellAvatar } from './components/pisellAvatar';
102
+ export { default as ProfileMenu } from './components/profileMenu';
101
103
  export { default as PisellCard } from './components/pisellCard';
102
104
  export { default as PisellInformationEntry } from './components/pisellInformationEntry';
103
105
  export { default as usePisellConfig } from './components/pisell-config-provider/hooks/usePisellConfig';
@@ -129,3 +131,7 @@ export { default as DataSourceWrapper } from './components/dataSourceComponents/
129
131
  export { default as DataSourceTypography } from './components/dataSourceComponents/dataSourceShow/dataSourceTypography';
130
132
  export { default as DataSourceImage } from './components/dataSourceComponents/dataSourceShow/dataSourceImage';
131
133
  export { default as DataSourceQRCode } from './components/dataSourceComponents/dataSourceShow/dataSourceQRCode';
134
+ export { default as PageHeader } from './components/page-header';
135
+ export { default as OrganizationTenantSwitcher } from './components/organizationTenantSwitcher';
136
+ export { default as PisellTags } from './components/pisellTags';
137
+ export { default as loginAndRegister } from './components/login-and-register';
package/es/index.js CHANGED
@@ -122,6 +122,8 @@ export { default as PisellToast } from "./components/pisellToast";
122
122
  export { default as PisellWalletPassCard } from "./components/pisellWalletPassCard";
123
123
  export { default as PisellScan } from "./components/pisellScan";
124
124
  export { default as PisellAlert } from "./components/pisellAlert";
125
+ export { default as PisellAvatar } from "./components/pisellAvatar";
126
+ export { default as ProfileMenu } from "./components/profileMenu";
125
127
  export { default as PisellCard } from "./components/pisellCard";
126
128
  export { default as PisellInformationEntry } from "./components/pisellInformationEntry";
127
129
  export { default as usePisellConfig } from "./components/pisell-config-provider/hooks/usePisellConfig";
@@ -152,4 +154,8 @@ export { default as DataSourceTable } from "./components/dataSourceComponents/da
152
154
  export { default as DataSourceWrapper } from "./components/dataSourceComponents/dataSourceWrapper";
153
155
  export { default as DataSourceTypography } from "./components/dataSourceComponents/dataSourceShow/dataSourceTypography";
154
156
  export { default as DataSourceImage } from "./components/dataSourceComponents/dataSourceShow/dataSourceImage";
155
- export { default as DataSourceQRCode } from "./components/dataSourceComponents/dataSourceShow/dataSourceQRCode";
157
+ export { default as DataSourceQRCode } from "./components/dataSourceComponents/dataSourceShow/dataSourceQRCode";
158
+ export { default as PageHeader } from "./components/page-header";
159
+ export { default as OrganizationTenantSwitcher } from "./components/organizationTenantSwitcher";
160
+ export { default as PisellTags } from "./components/pisellTags";
161
+ export { default as loginAndRegister } from "./components/login-and-register";
@@ -133,6 +133,7 @@ declare const _default: {
133
133
  'pisell-data-source-table-delete': string;
134
134
  'pisell-data-source-form-required-message': string;
135
135
  'pisell-data-source-form-email-message': string;
136
+ 'pisell-data-source-form-domain-message': string;
136
137
  'pisell-data-source-form-url-message': string;
137
138
  'pisell-data-source-form-phone-message': string;
138
139
  'pisell-data-source-form-min-length-message': (minLength: number) => string;
@@ -161,6 +161,7 @@ export default {
161
161
  'pisell-data-source-table-delete': 'Delete',
162
162
  'pisell-data-source-form-required-message': 'This field is required',
163
163
  'pisell-data-source-form-email-message': 'Please enter a valid email address',
164
+ 'pisell-data-source-form-domain-message': 'Please enter a valid domain',
164
165
  'pisell-data-source-form-url-message': 'Please enter a valid URL',
165
166
  'pisell-data-source-form-phone-message': 'Please enter a valid phone number',
166
167
  'pisell-data-source-form-min-length-message': function pisellDataSourceFormMinLengthMessage(minLength) {
@@ -133,6 +133,7 @@ declare const _default: {
133
133
  'pisell-data-source-table-delete': string;
134
134
  'pisell-data-source-form-required-message': string;
135
135
  'pisell-data-source-form-email-message': string;
136
+ 'pisell-data-source-form-domain-message': string;
136
137
  'pisell-data-source-form-url-message': string;
137
138
  'pisell-data-source-form-phone-message': string;
138
139
  'pisell-data-source-form-min-length-message': (minLength: number) => string;
@@ -160,6 +160,7 @@ export default {
160
160
  'pisell-data-source-table-delete': '删除',
161
161
  'pisell-data-source-form-required-message': '该字段为必填项',
162
162
  'pisell-data-source-form-email-message': '请输入有效的电子邮件地址',
163
+ 'pisell-data-source-form-domain-message': '请输入有效的域名',
163
164
  'pisell-data-source-form-url-message': '请输入正确的网址',
164
165
  'pisell-data-source-form-phone-message': '请输入有效的电话号码',
165
166
  'pisell-data-source-form-min-length-message': function pisellDataSourceFormMinLengthMessage(minLength) {
@@ -133,6 +133,7 @@ declare const _default: {
133
133
  'pisell-data-source-table-delete': string;
134
134
  'pisell-data-source-form-required-message': string;
135
135
  'pisell-data-source-form-email-message': string;
136
+ 'pisell-data-source-form-domain-message': string;
136
137
  'pisell-data-source-form-url-message': string;
137
138
  'pisell-data-source-form-phone-message': string;
138
139
  'pisell-data-source-form-min-length-message': (minLength: number) => string;
@@ -161,6 +161,7 @@ export default {
161
161
  'pisell-data-source-table-delete': '刪除',
162
162
  'pisell-data-source-form-required-message': '該字段為必填項',
163
163
  'pisell-data-source-form-email-message': '請輸入有效的電子郵件地址',
164
+ 'pisell-data-source-form-domain-message': '請輸入有效的域名',
164
165
  'pisell-data-source-form-url-message': '請輸入正確的網址',
165
166
  'pisell-data-source-form-phone-message': '請輸入有效的電話號碼',
166
167
  'pisell-data-source-form-min-length-message': function pisellDataSourceFormMinLengthMessage(minLength) {
@@ -36,7 +36,7 @@ var import_react = __toESM(require("react"));
36
36
  var import_antd = require("antd");
37
37
  var import_dayjs = __toESM(require("dayjs"));
38
38
  var import_zh_cn = require("dayjs/locale/zh-cn");
39
- var import_zh_CN = __toESM(require("antd/locale/zh_CN"));
39
+ var import_zh_CN = __toESM(require("antd/es/locale/zh_CN"));
40
40
  var ConfigProvider = (props) => {
41
41
  const { locale, ...rest } = props;
42
42
  let localeData = locale;
@@ -37,6 +37,7 @@ var import_classnames = __toESM(require("classnames"));
37
37
  var import_useDataSource = __toESM(require("../hooks/useDataSource"));
38
38
  var import_form = __toESM(require("../../form"));
39
39
  var import_FormSettingProvider = __toESM(require("./provider/formSetting/FormSettingProvider"));
40
+ var import_page_header = __toESM(require("../../page-header"));
40
41
  var import_index = require("./index.less");
41
42
  var BaseForm = (0, import_react.forwardRef)(
42
43
  (props, ref) => {
@@ -52,6 +53,10 @@ var BaseForm = (0, import_react.forwardRef)(
52
53
  children,
53
54
  currentValue,
54
55
  className,
56
+ onDataSourceFinish,
57
+ formatSubmitValues,
58
+ formatInitialValues,
59
+ customSubmit,
55
60
  ...others
56
61
  } = props;
57
62
  const formRef = (0, import_react.useRef)(null);
@@ -68,17 +73,22 @@ var BaseForm = (0, import_react.forwardRef)(
68
73
  if (["edit", "view"].includes(renderMode || "") && dataSource) {
69
74
  get == null ? void 0 : get.runAsync().then((res) => {
70
75
  var _a;
71
- (_a = formRef.current) == null ? void 0 : _a.setFieldsValue(res);
76
+ const formattedValues = formatInitialValues ? formatInitialValues(res) : res;
77
+ (_a = formRef.current) == null ? void 0 : _a.setFieldsValue(formattedValues);
72
78
  });
73
79
  }
74
- }, [renderMode, dataSource]);
80
+ }, [renderMode, dataSource, formatInitialValues]);
75
81
  return /* @__PURE__ */ import_react.default.createElement(
76
82
  import_FormSettingProvider.default,
77
83
  {
78
84
  renderMode,
79
85
  groupInfoPosition,
80
86
  currentValue,
81
- size: others.size
87
+ size: others.size,
88
+ onDataSourceFinish,
89
+ formatSubmitValues,
90
+ formatInitialValues,
91
+ customSubmit
82
92
  },
83
93
  /* @__PURE__ */ import_react.default.createElement(
84
94
  import_form.default,
@@ -88,7 +98,15 @@ var BaseForm = (0, import_react.forwardRef)(
88
98
  ref: formRef,
89
99
  preserve: true
90
100
  },
91
- (title || description) && /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-lowcode-data-source-form-header" }, showTitle && /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-lowcode-data-source-form-title" }, title), showDescription && /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-lowcode-data-source-form-description" }, description)),
101
+ /* @__PURE__ */ import_react.default.createElement(
102
+ import_page_header.default,
103
+ {
104
+ title,
105
+ showTitle,
106
+ subTitle: description,
107
+ showSubTitle: showDescription
108
+ }
109
+ ),
92
110
  children
93
111
  )
94
112
  );
@@ -45,7 +45,7 @@ var FormItem = (props) => {
45
45
  const { path: prefixPath = [] } = (0, import_useJsonPrefixPath.default)();
46
46
  const { dataSource } = (0, import_useDataSource.default)();
47
47
  const fields = dataSource == null ? void 0 : dataSource.fields;
48
- const { mode: globalMode } = (0, import_useFormSetting.default)();
48
+ const { renderMode: globalMode } = (0, import_useFormSetting.default)();
49
49
  const field = fields == null ? void 0 : fields.find((item) => item.name === name);
50
50
  const label = propsLabel || ((_a = field == null ? void 0 : field.uiSchema) == null ? void 0 : _a.title) || name;
51
51
  const effectiveMode = propsMode || globalMode;
@@ -1,6 +1,6 @@
1
1
  .pisell-lowcode-data-source-form-group {
2
2
  display: flex;
3
- padding: 20px;
3
+ padding: 20px 20px 0;
4
4
  border-radius: 8px;
5
5
  border: 1px solid var(--Gray-300, #d0d5dd);
6
6
  margin-bottom: 24px;
@@ -26,7 +26,7 @@
26
26
  .pisell-lowcode-data-source-form-group-content {
27
27
  border: 1px solid var(--Gray-300, #d0d5dd);
28
28
  border-radius: 8px;
29
- padding: 20px;
29
+ padding: 20px 20px 0;
30
30
  }
31
31
  }
32
32
  &-info {
@@ -39,13 +39,14 @@ var import_BaseForm = __toESM(require("./BaseForm"));
39
39
  var import_index = require("./index.less");
40
40
  var DataSourceForm = (0, import_react.forwardRef)(
41
41
  (props, ref) => {
42
- const { dataSource, currentValue, __designMode } = props;
42
+ const { dataSource, currentValue, __designMode, extraParams } = props;
43
43
  return /* @__PURE__ */ import_react.default.createElement(
44
44
  import_DataSourceProvider.default,
45
45
  {
46
46
  dataSource,
47
47
  currentValue,
48
- __designMode
48
+ __designMode,
49
+ extraParams
49
50
  },
50
51
  /* @__PURE__ */ import_react.default.createElement(import_BaseForm.default, { ...props, ref })
51
52
  );
@@ -1,11 +1,15 @@
1
1
  /// <reference types="react" />
2
2
  import { ModeType } from '../../type';
3
3
  export interface FormSettingContextType {
4
+ onDataSourceFinish?: (values: any, result: any) => void;
4
5
  renderMode?: ModeType;
5
6
  groupInfoPosition?: 'top' | 'side';
6
7
  children?: React.ReactNode;
7
8
  currentValue?: 'server' | 'local';
8
9
  size?: 'small' | 'middle' | 'large';
10
+ formatSubmitValues?: (values: Record<string, any>) => Record<string, any>;
11
+ formatInitialValues?: (values: Record<string, any>) => Record<string, any>;
12
+ customSubmit?: (values: Record<string, any>) => Promise<any>;
9
13
  }
10
14
  export declare const FormSettingContext: import("react").Context<FormSettingContextType>;
11
15
  export default FormSettingContext;
@@ -35,15 +35,29 @@ module.exports = __toCommonJS(FormSettingProvider_exports);
35
35
  var import_react = __toESM(require("react"));
36
36
  var import_FormSettingContext = __toESM(require("./FormSettingContext"));
37
37
  var FormSettingProvider = (props) => {
38
- const { children, renderMode, groupInfoPosition, currentValue, size } = props;
38
+ const {
39
+ children,
40
+ renderMode,
41
+ groupInfoPosition,
42
+ currentValue,
43
+ size,
44
+ onDataSourceFinish,
45
+ formatSubmitValues,
46
+ formatInitialValues,
47
+ customSubmit
48
+ } = props;
39
49
  const value = import_react.default.useMemo(() => {
40
50
  return {
41
51
  renderMode,
42
52
  groupInfoPosition,
43
53
  currentValue,
44
- size
54
+ size,
55
+ onDataSourceFinish,
56
+ formatSubmitValues,
57
+ formatInitialValues,
58
+ customSubmit
45
59
  };
46
- }, [renderMode, groupInfoPosition, currentValue, size]);
60
+ }, [renderMode, groupInfoPosition, currentValue, size, onDataSourceFinish, formatSubmitValues, formatInitialValues, customSubmit]);
47
61
  return /* @__PURE__ */ import_react.default.createElement(
48
62
  import_FormSettingContext.default.Provider,
49
63
  {
@@ -37,16 +37,26 @@ var import_formItem = __toESM(require("../../formItem"));
37
37
  var import_utils = require("../../utils");
38
38
  var import_JsonWrapperContext = __toESM(require("./JsonWrapperContext"));
39
39
  var JsonWrapperProvider = (props) => {
40
- const { children, prefix, label } = props;
40
+ const { children, prefix, label, style } = props;
41
41
  const { path: prefixPath = [], level = 0 } = (0, import_react.useContext)(import_JsonWrapperContext.default) || {};
42
42
  const concatPath = (0, import_react.useMemo)(
43
43
  () => [...prefixPath, ...(0, import_utils.toArr)(prefix)],
44
44
  [prefixPath, prefix]
45
45
  );
46
- const contextValue = (0, import_react.useMemo)(() => ({
47
- path: concatPath,
48
- level: level + 1
49
- }), [concatPath, level]);
50
- return /* @__PURE__ */ import_react.default.createElement(import_JsonWrapperContext.default.Provider, { value: contextValue }, /* @__PURE__ */ import_react.default.createElement(import_formItem.default, { label, style: { paddingLeft: `${level * 12}px` } }, /* @__PURE__ */ import_react.default.createElement("div", { style: { paddingLeft: `${level * 12}px` } }, children)));
46
+ const contextValue = (0, import_react.useMemo)(
47
+ () => ({
48
+ path: concatPath,
49
+ level: level + 1
50
+ }),
51
+ [concatPath, level]
52
+ );
53
+ return /* @__PURE__ */ import_react.default.createElement(import_JsonWrapperContext.default.Provider, { value: contextValue }, /* @__PURE__ */ import_react.default.createElement(
54
+ import_formItem.default,
55
+ {
56
+ label,
57
+ style: { ...style || {}, paddingLeft: `${level * 12}px` }
58
+ },
59
+ /* @__PURE__ */ import_react.default.createElement("div", { style: { paddingLeft: `${level * 12}px` } }, children)
60
+ ));
51
61
  };
52
62
  var JsonWrapperProvider_default = JsonWrapperProvider;
@@ -103,7 +103,8 @@ export declare const createNocobaseData: (params: {
103
103
  */
104
104
  export declare const getNocobaseData: (params: {
105
105
  key: string;
106
- id: string;
106
+ query: Record<string, any>;
107
+ headers?: any;
107
108
  }) => Promise<any>;
108
109
  /**
109
110
  * 自定义api接口
@@ -126,9 +127,9 @@ export declare const customApi: (url: string, data: Record<string, any>, options
126
127
  */
127
128
  export declare const updateNocobaseData: (params: {
128
129
  key: string;
129
- id: string;
130
130
  data: any;
131
131
  headers?: any;
132
+ query?: Record<string, any> | undefined;
132
133
  }) => Promise<any>;
133
134
  /**
134
135
  * 获取nocobase数据列表