bj-web-components 0.2.34 → 0.2.36

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 (111) hide show
  1. package/README.md +10 -1
  2. package/dist/index.js +58 -1
  3. package/dist/index.mjs +1 -29
  4. package/dist/miniapp.js +1 -1
  5. package/dist/miniapp.mjs +0 -1
  6. package/dist/mobile.js +1 -1
  7. package/dist/mobile.mjs +0 -1
  8. package/dist/react.js +1 -1
  9. package/dist/react.mjs +0 -1
  10. package/dist/shared.js +1 -1
  11. package/dist/shared.mjs +0 -1
  12. package/dist/style.css +1 -1
  13. package/dist/web/BasicInput/BInput.js +278 -1
  14. package/dist/web/BasicInput/BInput.mjs +263 -164
  15. package/dist/web/BasicInput/utils.js +47 -1
  16. package/dist/web/BasicInput/utils.mjs +22 -20
  17. package/dist/web/CategoryDropdown/CategoryDropdown.js +376 -1
  18. package/dist/web/CategoryDropdown/CategoryDropdown.mjs +355 -235
  19. package/dist/web/CheckBox/BCheckBox.js +176 -1
  20. package/dist/web/CheckBox/BCheckBox.mjs +169 -98
  21. package/dist/web/CheckBox/Group.js +111 -1
  22. package/dist/web/CheckBox/Group.mjs +104 -64
  23. package/dist/web/CheckBox/context.js +8 -1
  24. package/dist/web/CheckBox/context.mjs +2 -4
  25. package/dist/web/CheckBox/index.js +11 -1
  26. package/dist/web/CheckBox/index.mjs +2 -4
  27. package/dist/web/Dropdown/BDropdown.js +265 -1
  28. package/dist/web/Dropdown/BDropdown.mjs +233 -133
  29. package/dist/web/EmptyInputBox/EmptyInputBox.js +89 -1
  30. package/dist/web/EmptyInputBox/EmptyInputBox.mjs +85 -72
  31. package/dist/web/FileCard/FileCard.js +414 -1
  32. package/dist/web/FileCard/FileCard.mjs +400 -116
  33. package/dist/web/Icon/Icon.js +82 -1
  34. package/dist/web/Icon/Icon.mjs +78 -8
  35. package/dist/web/Input/Input.js +230 -1
  36. package/dist/web/Input/Input.mjs +219 -164
  37. package/dist/web/InputNumber/BInputNumber.js +271 -1
  38. package/dist/web/InputNumber/BInputNumber.mjs +254 -189
  39. package/dist/web/InputNumber/StepHandler.js +112 -1
  40. package/dist/web/InputNumber/StepHandler.mjs +102 -50
  41. package/dist/web/InputNumber/hooks/useCursor.js +38 -1
  42. package/dist/web/InputNumber/hooks/useCursor.mjs +31 -34
  43. package/dist/web/InputNumber/hooks/useFrame.js +15 -1
  44. package/dist/web/InputNumber/hooks/useFrame.mjs +8 -5
  45. package/dist/web/InputNumber/utils/decimal.js +163 -1
  46. package/dist/web/InputNumber/utils/decimal.mjs +114 -79
  47. package/dist/web/MobileDrawer/BMobileDrawer.js +238 -1
  48. package/dist/web/MobileDrawer/BMobileDrawer.mjs +221 -139
  49. package/dist/web/Modal/Modal.js +148 -1
  50. package/dist/web/Modal/Modal.mjs +143 -79
  51. package/dist/web/OverlayScrollbar/BOverlayScrollbar.js +273 -1
  52. package/dist/web/OverlayScrollbar/BOverlayScrollbar.mjs +262 -143
  53. package/dist/web/Pagination/Pagination.js +352 -1
  54. package/dist/web/Pagination/Pagination.mjs +342 -247
  55. package/dist/web/ProductField/ProductField.js +443 -1
  56. package/dist/web/ProductField/ProductField.mjs +423 -208
  57. package/dist/web/ProductField/arrow-up.svg.js +4 -1
  58. package/dist/web/ProductField/arrow-up.svg.mjs +2 -4
  59. package/dist/web/ProductField/checkbox-no.svg.js +4 -1
  60. package/dist/web/ProductField/checkbox-no.svg.mjs +2 -4
  61. package/dist/web/ProductField/checkbox-ok.svg.js +4 -1
  62. package/dist/web/ProductField/checkbox-ok.svg.mjs +2 -4
  63. package/dist/web/ProductField/no_data_light.svg.js +4 -1
  64. package/dist/web/ProductField/no_data_light.svg.mjs +2 -4
  65. package/dist/web/ProductField/search.svg.js +4 -1
  66. package/dist/web/ProductField/search.svg.mjs +2 -4
  67. package/dist/web/ProductField/sort.svg.js +4 -1
  68. package/dist/web/ProductField/sort.svg.mjs +2 -4
  69. package/dist/web/Radio/BRadio.js +151 -1
  70. package/dist/web/Radio/BRadio.mjs +147 -75
  71. package/dist/web/Radio/Button.js +54 -1
  72. package/dist/web/Radio/Button.mjs +51 -8
  73. package/dist/web/Radio/Group.js +97 -1
  74. package/dist/web/Radio/Group.mjs +92 -76
  75. package/dist/web/Radio/context.js +10 -1
  76. package/dist/web/Radio/context.mjs +3 -5
  77. package/dist/web/Radio/index.js +13 -1
  78. package/dist/web/Radio/index.mjs +2 -4
  79. package/dist/web/SkuInputCard/SkuInputCard.js +427 -1
  80. package/dist/web/SkuInputCard/SkuInputCard.mjs +414 -219
  81. package/dist/web/SkuInputCard/spin_loading_red.gif.js +4 -1
  82. package/dist/web/SkuInputCard/spin_loading_red.gif.mjs +2 -4
  83. package/dist/web/Switch/Switch.js +114 -1
  84. package/dist/web/Switch/Switch.mjs +109 -58
  85. package/dist/web/Table/BTable.js +1049 -1
  86. package/dist/web/Table/BTable.mjs +1011 -667
  87. package/dist/web/Table/Column.js +6 -1
  88. package/dist/web/Table/Column.mjs +1 -3
  89. package/dist/web/Table/ColumnGroup.js +6 -1
  90. package/dist/web/Table/ColumnGroup.mjs +1 -3
  91. package/dist/web/Table/utils/columns.js +116 -1
  92. package/dist/web/Table/utils/columns.mjs +103 -37
  93. package/dist/web/Table/utils/sortFilter.js +145 -1
  94. package/dist/web/Table/utils/sortFilter.mjs +129 -57
  95. package/dist/web/Tabs/BTabs.js +260 -1
  96. package/dist/web/Tabs/BTabs.mjs +239 -122
  97. package/dist/web/Tabs/TabPane.js +19 -1
  98. package/dist/web/Tabs/TabPane.mjs +1 -4
  99. package/dist/web/Tooltip/ConfirmTooltip.js +53 -1
  100. package/dist/web/Tooltip/ConfirmTooltip.mjs +47 -22
  101. package/dist/web/Tooltip/ContentTooltip.js +156 -1
  102. package/dist/web/Tooltip/ContentTooltip.mjs +145 -76
  103. package/dist/web/Tooltip/ProgressTooltip.js +56 -1
  104. package/dist/web/Tooltip/ProgressTooltip.mjs +50 -31
  105. package/dist/web/Tooltip/TooltipWrapper.js +19 -1
  106. package/dist/web/Tooltip/TooltipWrapper.mjs +13 -9
  107. package/dist/web/Tooltip/useAutoPlacement.js +65 -1
  108. package/dist/web/Tooltip/useAutoPlacement.mjs +52 -24
  109. package/dist/web.js +58 -1
  110. package/dist/web.mjs +1 -29
  111. package/package.json +3 -1
@@ -1,69 +1,109 @@
1
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
2
+ 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."); }
3
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
4
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
5
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
6
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
7
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
8
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
9
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
10
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
1
11
  import { jsx as f } from "react/jsx-runtime";
2
- import { forwardRef as _, useState as q, useRef as w, useMemo as O, useEffect as E, useCallback as m } from "react";
3
- import I from "./BCheckBox.mjs";
4
- import { CheckBoxGroupContext as M } from "./context.mjs";
5
- function P(n) {
6
- return (n ?? []).map((r) => typeof r == "string" || typeof r == "number" ? { label: r, value: r } : r);
12
+ import { forwardRef as q, useState as w, useRef as E, useMemo as j, useEffect as I, useCallback as m } from "react";
13
+ import M from "./BCheckBox.mjs";
14
+ import { CheckBoxGroupContext as P } from "./context.mjs";
15
+ function V(s) {
16
+ return (s != null ? s : []).map(function (r) {
17
+ return typeof r == "string" || typeof r == "number" ? {
18
+ label: r,
19
+ value: r
20
+ } : r;
21
+ });
7
22
  }
8
- const A = _(({
9
- defaultValue: n = [],
10
- value: r,
11
- onChange: l,
12
- options: d,
13
- children: j,
14
- disabled: i,
15
- name: o,
16
- className: y,
17
- style: G,
18
- direction: N = "ltr",
19
- variant: v = "dark",
20
- shape: x = "square"
21
- }, R) => {
22
- const [z, b] = q(n), t = w([]), c = r ?? z, s = O(() => P(d), [d]);
23
- E(() => {
24
- r !== void 0 && b(r);
23
+ var A = q(function (_ref, N) {
24
+ var _ref$defaultValue = _ref.defaultValue,
25
+ s = _ref$defaultValue === void 0 ? [] : _ref$defaultValue,
26
+ r = _ref.value,
27
+ a = _ref.onChange,
28
+ d = _ref.options,
29
+ p = _ref.children,
30
+ i = _ref.disabled,
31
+ o = _ref.name,
32
+ y = _ref.className,
33
+ C = _ref.style,
34
+ _ref$direction = _ref.direction,
35
+ G = _ref$direction === void 0 ? "ltr" : _ref$direction,
36
+ _ref$variant = _ref.variant,
37
+ v = _ref$variant === void 0 ? "dark" : _ref$variant,
38
+ _ref$shape = _ref.shape,
39
+ g = _ref$shape === void 0 ? "square" : _ref$shape;
40
+ var _w = w(s),
41
+ _w2 = _slicedToArray(_w, 2),
42
+ R = _w2[0],
43
+ x = _w2[1],
44
+ t = E([]),
45
+ n = r != null ? r : R,
46
+ c = j(function () {
47
+ return V(d);
48
+ }, [d]);
49
+ I(function () {
50
+ r !== void 0 && x(r);
25
51
  }, [r]);
26
- const g = m((e) => {
27
- t.current.includes(e) || (t.current = [...t.current, e]);
28
- }, []), k = m((e) => {
29
- t.current.includes(e) && (t.current = t.current.filter((a) => a !== e));
30
- }, []), h = m((e) => {
31
- const a = c.includes(e.value) ? c.filter((u) => u !== e.value) : [...c, e.value];
32
- r === void 0 && b(a);
33
- const p = t.current, B = s.length > 0 ? s.map((u) => u.value) : p;
34
- l == null || l(a.filter((u) => p.includes(u)).sort((u, V) => B.indexOf(u) - B.indexOf(V)));
35
- }, [r, c, s, l]), C = O(() => ({
36
- name: o,
37
- value: c,
38
- disabled: i,
39
- variant: v,
40
- shape: x,
41
- registerValue: g,
42
- cancelValue: k,
43
- toggleOption: h
44
- }), [k, i, c, o, g, h, x, v]), S = s.length > 0 ? s.map((e) => /* @__PURE__ */ f(
45
- I,
46
- {
47
- className: "bj-checkbox-group__item",
48
- disabled: e.disabled ?? i,
49
- onChange: e.onChange,
50
- style: e.style,
51
- value: e.value,
52
- children: e.label
53
- },
54
- String(e.value)
55
- )) : j;
56
- return /* @__PURE__ */ f(
57
- "div",
58
- {
59
- className: ["bj-checkbox-group", N === "rtl" ? "bj-checkbox-group--rtl" : "", y].filter(Boolean).join(" "),
60
- ref: R,
61
- style: G,
62
- children: /* @__PURE__ */ f(M.Provider, { value: C, children: S })
63
- }
64
- );
52
+ var b = m(function (e) {
53
+ t.current.includes(e) || (t.current = [].concat(_toConsumableArray(t.current), [e]));
54
+ }, []),
55
+ h = m(function (e) {
56
+ t.current.includes(e) && (t.current = t.current.filter(function (u) {
57
+ return u !== e;
58
+ }));
59
+ }, []),
60
+ k = m(function (e) {
61
+ var u = n.includes(e.value) ? n.filter(function (l) {
62
+ return l !== e.value;
63
+ }) : [].concat(_toConsumableArray(n), [e.value]);
64
+ r === void 0 && x(u);
65
+ var B = t.current,
66
+ O = c.length > 0 ? c.map(function (l) {
67
+ return l.value;
68
+ }) : B;
69
+ a == null || a(u.filter(function (l) {
70
+ return B.includes(l);
71
+ }).sort(function (l, S) {
72
+ return O.indexOf(l) - O.indexOf(S);
73
+ }));
74
+ }, [r, n, c, a]),
75
+ _ = j(function () {
76
+ return {
77
+ name: o,
78
+ value: n,
79
+ disabled: i,
80
+ variant: v,
81
+ shape: g,
82
+ registerValue: b,
83
+ cancelValue: h,
84
+ toggleOption: k
85
+ };
86
+ }, [h, i, n, o, b, k, g, v]),
87
+ z = c.length > 0 ? c.map(function (e) {
88
+ var u;
89
+ return /* @__PURE__ */f(M, {
90
+ className: "bj-checkbox-group__item",
91
+ disabled: (u = e.disabled) != null ? u : i,
92
+ onChange: e.onChange,
93
+ style: e.style,
94
+ value: e.value,
95
+ children: e.label
96
+ }, String(e.value));
97
+ }) : p;
98
+ return /* @__PURE__ */f("div", {
99
+ className: ["bj-checkbox-group", G === "rtl" ? "bj-checkbox-group--rtl" : "", y].filter(Boolean).join(" "),
100
+ ref: N,
101
+ style: C,
102
+ children: /* @__PURE__ */f(P.Provider, {
103
+ value: _,
104
+ children: z
105
+ })
106
+ });
65
107
  });
66
108
  A.displayName = "BCheckBox.Group";
67
- export {
68
- A as default
69
- };
109
+ export { A as default };
@@ -1 +1,8 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react"),t=e.createContext(null);exports.CheckBoxGroupContext=t;
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, {
4
+ value: "Module"
5
+ });
6
+ var e = require("react"),
7
+ t = e.createContext(null);
8
+ exports.CheckBoxGroupContext = t;
@@ -1,5 +1,3 @@
1
1
  import { createContext as o } from "react";
2
- const e = o(null);
3
- export {
4
- e as CheckBoxGroupContext
5
- };
2
+ var e = o(null);
3
+ export { e as CheckBoxGroupContext };
@@ -1 +1,11 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./BCheckBox.js"),r=require("./Group.js"),e=o;e.Group=r;e.__ANT_CHECKBOX=!0;exports.BCheckBox=e;
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, Symbol.toStringTag, {
4
+ value: "Module"
5
+ });
6
+ var o = require("./BCheckBox.js"),
7
+ r = require("./Group.js"),
8
+ e = o;
9
+ e.Group = r;
10
+ e.__ANT_CHECKBOX = !0;
11
+ exports.BCheckBox = e;
@@ -1,8 +1,6 @@
1
1
  import r from "./BCheckBox.mjs";
2
2
  import B from "./Group.mjs";
3
- const o = r;
3
+ var o = r;
4
4
  o.Group = B;
5
5
  o.__ANT_CHECKBOX = !0;
6
- export {
7
- o as BCheckBox
8
- };
6
+ export { o as BCheckBox };
@@ -1 +1,265 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("react/jsx-runtime"),r=require("react"),U=require("react-dom"),X=require("../BasicInput/BInput.js"),Y=require("../CheckBox/index.js"),k=require("../Icon/Icon.js"),Z=require("../OverlayScrollbar/BOverlayScrollbar.js");;/* empty css */const $=require("../Tooltip/ContentTooltip.js");require("../Tooltip/TooltipWrapper.js");const ee=require("../ProductField/no_data_light.svg.js");;/* empty css */function u(...s){return s.filter(Boolean).join(" ")}function ne(s){return typeof s.label=="string"||typeof s.label=="number"?String(s.label):String(s.value)}function D({option:s}){const i=r.useRef(null),[b,o]=r.useState(!1),[l,m]=r.useState(null),p=typeof s.label=="string"||typeof s.label=="number",j=p?String(s.label):s.label;function _(){const a=i.current;p&&a&&a.scrollWidth>a.clientWidth&&(m(a.getBoundingClientRect()),o(!0))}return n.jsxs("span",{ref:i,className:"bj-dropdown__option-label",onMouseEnter:_,onMouseLeave:()=>o(!1),children:[j,b&&l&&typeof document<"u"&&U.createPortal(n.jsx("span",{className:"bj-dropdown__option-tooltip-anchor",style:{position:"fixed",top:l.top,left:l.left,width:l.width,height:l.height},children:n.jsx($,{className:"bj-dropdown__option-tooltip",content:j,placement:"top"})}),document.body)]})}function I({option:s,doubleLine:i}){return i?n.jsxs("span",{className:"bj-dropdown__option-content",children:[n.jsx(D,{option:s}),s.description!==void 0&&n.jsx("span",{className:"bj-dropdown__option-description",children:s.description})]}):n.jsx(D,{option:s})}function se({className:s,style:i,options:b,value:o,defaultValue:l=[],multiple:m=!1,optionMode:p="single-line",searchable:j=!1,searchValue:_,searchPlaceholder:a="搜索",onSearch:f,filterOption:v=!0,emptyText:O,labels:g,t:y=h=>h,optionRender:x,onChange:N,footer:q=!0,showReset:E=!0,showConfirm:P=!0,resetText:W=y("重置"),confirmText:z=y("确定"),onReset:L,onConfirm:S}){const h=r.useRef(null),C=r.useRef(null),[A,M]=r.useState(l),[G,F]=r.useState(""),t=o??A,d=m===!0,c=p==="double-line",w=_??G,H=O??(g==null?void 0:g.emptyText)??y("暂无结果"),B=!f&&v!==!1&&w?b.filter(e=>typeof v=="function"?v(w,e):ne(e).toLocaleLowerCase().includes(w.toLocaleLowerCase())):b;function J(e,T){o===void 0&&M(e),N==null||N(e,T)}function R(e){_===void 0&&F(e),f==null||f(e)}function V(e){if(e.disabled)return;const T=d?t.includes(e.value)?t.filter(Q=>Q!==e.value):[...t,e.value]:[e.value];J(T,e)}function K(){o===void 0&&M([]),L==null||L()}return n.jsxs("div",{ref:h,className:u("bj-dropdown",c&&"bj-dropdown--double-line",!d&&"bj-dropdown--single",s),role:"dialog",style:i,children:[j&&n.jsx("div",{className:"bj-dropdown__search",children:n.jsx(X,{"aria-label":"搜索选项",allowClear:{clearIcon:n.jsx(k,{className:"bj-dropdown__search-clear-icon",type:"icon-a-guanbixi"})},onChange:e=>R(e.target.value),onClear:()=>R(""),placeholder:a,prefix:n.jsx(k,{type:"icon-a-sousuoxi"}),inputMode:"search",role:"searchbox",type:"text",value:w})}),n.jsxs("div",{ref:C,className:u("bj-dropdown__options","bj-overlay-scrollbar-hidden",B.length===0&&"bj-dropdown__options--empty",!d&&"bj-dropdown__options--single"),children:[B.map(e=>d?n.jsx(Y.BCheckBox,{checked:t.includes(e.value),className:u("bj-dropdown__option",c&&e.description!==void 0&&"bj-dropdown__option--double-line"),disabled:e.disabled,onChange:()=>V(e),skipGroup:!0,variant:"white",children:x?x(e):n.jsx(I,{doubleLine:c&&e.description!==void 0,option:e})},String(e.value)):n.jsxs("button",{"aria-pressed":t.includes(e.value),className:u("bj-dropdown__option","bj-dropdown__option--single",c&&e.description!==void 0&&"bj-dropdown__option--double-line",t.includes(e.value)&&"bj-dropdown__option--selected"),disabled:e.disabled,onClick:()=>V(e),type:"button",children:[x?n.jsx("span",{className:"bj-dropdown__option-label",children:x(e)}):n.jsx(I,{doubleLine:c&&e.description!==void 0,option:e}),t.includes(e.value)&&n.jsx(k,{className:"bj-dropdown__option-icon",type:"icon-a-dagouxi"})]},String(e.value))),B.length===0&&n.jsxs("div",{className:"bj-dropdown__empty",children:[n.jsx("img",{alt:"",className:"bj-dropdown__empty-image",src:ee}),n.jsx("span",{className:"bj-dropdown__empty-text",children:H})]})]}),n.jsx(Z,{containerRef:h,gap:2,size:2,targetRef:C}),q!==!1&&(q!==!0?q:n.jsxs("div",{className:u("bj-dropdown__actions",!d&&"bj-dropdown__actions--single"),children:[E&&n.jsx("button",{onClick:K,type:"button",children:W}),d&&P&&n.jsx("button",{onClick:()=>S==null?void 0:S(t),type:"button",children:z})]}))]})}exports.BDropdown=se;
1
+ "use strict";
2
+
3
+ function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
4
+ 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."); }
5
+ function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
6
+ function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
7
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
10
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
11
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
13
+ Object.defineProperty(exports, Symbol.toStringTag, {
14
+ value: "Module"
15
+ });
16
+ var n = require("react/jsx-runtime"),
17
+ r = require("react"),
18
+ X = require("react-dom"),
19
+ Y = require("../BasicInput/BInput.js"),
20
+ Z = require("../CheckBox/index.js"),
21
+ q = require("../Icon/Icon.js"),
22
+ $ = require("../OverlayScrollbar/BOverlayScrollbar.js");
23
+ ; /* empty css */
24
+ var ee = require("../Tooltip/ContentTooltip.js");
25
+ require("../Tooltip/TooltipWrapper.js");
26
+ var ne = require("../ProductField/no_data_light.svg.js");
27
+ ; /* empty css */
28
+ function p() {
29
+ for (var _len = arguments.length, l = new Array(_len), _key = 0; _key < _len; _key++) {
30
+ l[_key] = arguments[_key];
31
+ }
32
+ return l.filter(Boolean).join(" ");
33
+ }
34
+ function le(l) {
35
+ return typeof l.label == "string" || typeof l.label == "number" ? String(l.label) : String(l.value);
36
+ }
37
+ function V(_ref) {
38
+ var l = _ref.option;
39
+ var i = r.useRef(null),
40
+ _r$useState = r.useState(!1),
41
+ _r$useState2 = _slicedToArray(_r$useState, 2),
42
+ j = _r$useState2[0],
43
+ t = _r$useState2[1],
44
+ _r$useState3 = r.useState(null),
45
+ _r$useState4 = _slicedToArray(_r$useState3, 2),
46
+ o = _r$useState4[0],
47
+ v = _r$useState4[1],
48
+ _ = typeof l.label == "string" || typeof l.label == "number",
49
+ c = _ ? String(l.label) : l.label;
50
+ function u() {
51
+ var a = i.current;
52
+ _ && a && a.scrollWidth > a.clientWidth && (v(a.getBoundingClientRect()), t(!0));
53
+ }
54
+ return n.jsxs("span", {
55
+ ref: i,
56
+ className: "bj-dropdown__option-label",
57
+ onMouseEnter: u,
58
+ onMouseLeave: function onMouseLeave() {
59
+ return t(!1);
60
+ },
61
+ children: [c, j && o && typeof document != "undefined" && X.createPortal(n.jsx("span", {
62
+ className: "bj-dropdown__option-tooltip-anchor",
63
+ style: {
64
+ position: "fixed",
65
+ top: o.top,
66
+ left: o.left,
67
+ width: o.width,
68
+ height: o.height
69
+ },
70
+ children: n.jsx(ee, {
71
+ className: "bj-dropdown__option-tooltip",
72
+ content: c,
73
+ placement: "top"
74
+ })
75
+ }), document.body)]
76
+ });
77
+ }
78
+ function E(_ref2) {
79
+ var l = _ref2.option,
80
+ i = _ref2.doubleLine;
81
+ return i ? n.jsxs("span", {
82
+ className: "bj-dropdown__option-content",
83
+ children: [n.jsx(V, {
84
+ option: l
85
+ }), l.description !== void 0 && n.jsx("span", {
86
+ className: "bj-dropdown__option-description",
87
+ children: l.description
88
+ })]
89
+ }) : n.jsx(V, {
90
+ option: l
91
+ });
92
+ }
93
+ function se(_ref3) {
94
+ var l = _ref3.className,
95
+ i = _ref3.style,
96
+ j = _ref3.options,
97
+ t = _ref3.value,
98
+ _ref3$defaultValue = _ref3.defaultValue,
99
+ o = _ref3$defaultValue === void 0 ? [] : _ref3$defaultValue,
100
+ _ref3$multiple = _ref3.multiple,
101
+ v = _ref3$multiple === void 0 ? !1 : _ref3$multiple,
102
+ _ref3$optionMode = _ref3.optionMode,
103
+ _ = _ref3$optionMode === void 0 ? "single-line" : _ref3$optionMode,
104
+ _ref3$searchable = _ref3.searchable,
105
+ c = _ref3$searchable === void 0 ? !1 : _ref3$searchable,
106
+ u = _ref3.searchValue,
107
+ _ref3$searchPlacehold = _ref3.searchPlaceholder,
108
+ a = _ref3$searchPlacehold === void 0 ? "搜索" : _ref3$searchPlacehold,
109
+ w = _ref3.onSearch,
110
+ _ref3$filterOption = _ref3.filterOption,
111
+ m = _ref3$filterOption === void 0 ? !0 : _ref3$filterOption,
112
+ C = _ref3.emptyText,
113
+ L = _ref3.labels,
114
+ _ref3$t = _ref3.t,
115
+ g = _ref3$t === void 0 ? function (h) {
116
+ return h;
117
+ } : _ref3$t,
118
+ f = _ref3.optionRender,
119
+ R = _ref3.onChange,
120
+ _ref3$footer = _ref3.footer,
121
+ y = _ref3$footer === void 0 ? !0 : _ref3$footer,
122
+ _ref3$showReset = _ref3.showReset,
123
+ P = _ref3$showReset === void 0 ? !0 : _ref3$showReset,
124
+ _ref3$showConfirm = _ref3.showConfirm,
125
+ W = _ref3$showConfirm === void 0 ? !0 : _ref3$showConfirm,
126
+ _ref3$resetText = _ref3.resetText,
127
+ z = _ref3$resetText === void 0 ? g("重置") : _ref3$resetText,
128
+ _ref3$confirmText = _ref3.confirmText,
129
+ A = _ref3$confirmText === void 0 ? g("确定") : _ref3$confirmText,
130
+ B = _ref3.onReset,
131
+ k = _ref3.onConfirm;
132
+ var h;
133
+ var M = r.useRef(null),
134
+ T = r.useRef(null),
135
+ _r$useState5 = r.useState(o),
136
+ _r$useState6 = _slicedToArray(_r$useState5, 2),
137
+ G = _r$useState6[0],
138
+ D = _r$useState6[1],
139
+ _r$useState7 = r.useState(""),
140
+ _r$useState8 = _slicedToArray(_r$useState7, 2),
141
+ F = _r$useState8[0],
142
+ H = _r$useState8[1],
143
+ s = t != null ? t : G,
144
+ d = v === !0,
145
+ b = _ === "double-line",
146
+ x = u != null ? u : F,
147
+ J = (h = C != null ? C : L == null ? void 0 : L.emptyText) != null ? h : g("暂无结果"),
148
+ N = !w && m !== !1 && x ? j.filter(function (e) {
149
+ return typeof m == "function" ? m(x, e) : le(e).toLocaleLowerCase().includes(x.toLocaleLowerCase());
150
+ }) : j;
151
+ function K(e, S) {
152
+ t === void 0 && D(e), R == null || R(e, S);
153
+ }
154
+ function I(e) {
155
+ u === void 0 && H(e), w == null || w(e);
156
+ }
157
+ function O(e) {
158
+ if (e.disabled) return;
159
+ var S = d ? s.includes(e.value) ? s.filter(function (U) {
160
+ return U !== e.value;
161
+ }) : [].concat(_toConsumableArray(s), [e.value]) : [e.value];
162
+ K(S, e);
163
+ }
164
+ function Q() {
165
+ t === void 0 && D([]), B == null || B();
166
+ }
167
+ return n.jsxs("div", {
168
+ ref: M,
169
+ className: p("bj-dropdown", b && "bj-dropdown--double-line", !d && "bj-dropdown--single", !c && "bj-dropdown--no-search", l),
170
+ role: "dialog",
171
+ style: i,
172
+ children: [c && n.jsx("div", {
173
+ className: "bj-dropdown__search",
174
+ children: n.jsx(Y, {
175
+ "aria-label": "搜索选项",
176
+ allowClear: {
177
+ clearIcon: n.jsx(q, {
178
+ className: "bj-dropdown__search-clear-icon",
179
+ type: "icon-a-guanbixi"
180
+ })
181
+ },
182
+ onChange: function onChange(e) {
183
+ return I(e.target.value);
184
+ },
185
+ onClear: function onClear() {
186
+ return I("");
187
+ },
188
+ placeholder: a,
189
+ prefix: n.jsx(q, {
190
+ type: "icon-a-sousuoxi"
191
+ }),
192
+ inputMode: "search",
193
+ role: "searchbox",
194
+ type: "text",
195
+ value: x
196
+ })
197
+ }), n.jsxs("div", {
198
+ ref: T,
199
+ className: p("bj-dropdown__options", "bj-overlay-scrollbar-hidden", N.length === 0 && "bj-dropdown__options--empty", !d && "bj-dropdown__options--single"),
200
+ children: [N.map(function (e) {
201
+ return d ? n.jsx(Z.BCheckBox, {
202
+ checked: s.includes(e.value),
203
+ className: p("bj-dropdown__option", b && e.description !== void 0 && "bj-dropdown__option--double-line"),
204
+ disabled: e.disabled,
205
+ onChange: function onChange() {
206
+ return O(e);
207
+ },
208
+ skipGroup: !0,
209
+ variant: "white",
210
+ children: f ? f(e) : n.jsx(E, {
211
+ doubleLine: b && e.description !== void 0,
212
+ option: e
213
+ })
214
+ }, String(e.value)) : n.jsxs("button", {
215
+ "aria-pressed": s.includes(e.value),
216
+ className: p("bj-dropdown__option", "bj-dropdown__option--single", b && e.description !== void 0 && "bj-dropdown__option--double-line", s.includes(e.value) && "bj-dropdown__option--selected"),
217
+ disabled: e.disabled,
218
+ onClick: function onClick() {
219
+ return O(e);
220
+ },
221
+ type: "button",
222
+ children: [f ? n.jsx("span", {
223
+ className: "bj-dropdown__option-label",
224
+ children: f(e)
225
+ }) : n.jsx(E, {
226
+ doubleLine: b && e.description !== void 0,
227
+ option: e
228
+ }), s.includes(e.value) && n.jsx(q, {
229
+ className: "bj-dropdown__option-icon",
230
+ type: "icon-a-dagouxi"
231
+ })]
232
+ }, String(e.value));
233
+ }), N.length === 0 && n.jsxs("div", {
234
+ className: "bj-dropdown__empty",
235
+ children: [n.jsx("img", {
236
+ alt: "",
237
+ className: "bj-dropdown__empty-image",
238
+ src: ne
239
+ }), n.jsx("span", {
240
+ className: "bj-dropdown__empty-text",
241
+ children: J
242
+ })]
243
+ })]
244
+ }), n.jsx($, {
245
+ containerRef: M,
246
+ gap: 2,
247
+ size: 2,
248
+ targetRef: T
249
+ }), y !== !1 && (y !== !0 ? y : n.jsxs("div", {
250
+ className: p("bj-dropdown__actions", !d && "bj-dropdown__actions--single"),
251
+ children: [P && n.jsx("button", {
252
+ onClick: Q,
253
+ type: "button",
254
+ children: z
255
+ }), d && W && n.jsx("button", {
256
+ onClick: function onClick() {
257
+ return k == null ? void 0 : k(s);
258
+ },
259
+ type: "button",
260
+ children: A
261
+ })]
262
+ }))]
263
+ });
264
+ }
265
+ exports.BDropdown = se;