@marimo-team/islands 0.19.12-dev1 → 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Combination-Du-o_hC9.js +11897 -0
- package/dist/{ConnectedDataExplorerComponent-CkXO-pKy.js → ConnectedDataExplorerComponent-BMiGWK57.js} +19 -18
- package/dist/{_baseIsEqual-CBSjxu-D.js → _baseIsEqual-DN5YkPnl.js} +1 -1
- package/dist/{_baseProperty-BVGrW_NZ.js → _baseProperty-6juuyX7Z.js} +5 -5
- package/dist/{_baseUniq-4lqa8rDi.js → _baseUniq-BlF21ach.js} +1 -1
- package/dist/{any-language-editor-t_VsTNa-.js → any-language-editor-1OMbohwD.js} +19 -19
- package/dist/architecture-U656AL7Q-Jd2CvPgJ.js +6 -0
- package/dist/{architectureDiagram-VXUJARFQ-DmJQhcJb.js → architectureDiagram-VXUJARFQ-DhN0C3Xf.js} +15 -15
- package/dist/{blockDiagram-VD42YOAC-CRofISJs.js → blockDiagram-VD42YOAC-DrBkIcbV.js} +7 -7
- package/dist/{button-Cy0ElmIm.js → button-KYalaJYu.js} +783 -200
- package/dist/{c4Diagram-YG6GDRKO-Deqoag4I.js → c4Diagram-YG6GDRKO-pWt4zmu0.js} +4 -4
- package/dist/{channel-CMsnebrL.js → channel-C56Jz8EL.js} +1 -1
- package/dist/{check-DkNR52Mm.js → check-C50jsehH.js} +1 -1
- package/dist/{chunk-76Q3JFCE-jPuajZH_.js → chunk-76Q3JFCE-CQ6a2yGJ.js} +1 -1
- package/dist/{chunk-ABZYJK2D-BGWvKte3.js → chunk-ABZYJK2D-BwNsaa1P.js} +1 -1
- package/dist/{chunk-ATLVNIR6-BYZB6C5T.js → chunk-ATLVNIR6-DtFMAawc.js} +1 -1
- package/dist/{chunk-B4BG7PRW-CwYUp6Uj.js → chunk-B4BG7PRW-lfWcLlzS.js} +4 -4
- package/dist/{chunk-DI55MBZ5-Gyro6dvN.js → chunk-DI55MBZ5-RhhAimfG.js} +4 -4
- package/dist/{chunk-EXTU4WIE-BlA7aWEw.js → chunk-EXTU4WIE-Bmo660a9.js} +1 -1
- package/dist/{chunk-FPAJGGOC-CduL34ft.js → chunk-FPAJGGOC-quWdfNUB.js} +7 -7
- package/dist/{chunk-FWNWRKHM-C-2TI4gt.js → chunk-FWNWRKHM-DmrwhAQr.js} +1 -1
- package/dist/{chunk-JA3XYJ7Z-Cm-pccR-.js → chunk-JA3XYJ7Z-n8UTzfok.js} +2 -2
- package/dist/{chunk-JZLCHNYA-CoLqqXMe.js → chunk-JZLCHNYA-ChKqHUdB.js} +4 -4
- package/dist/{chunk-LBM3YZW2-DWgQiioW.js → chunk-LBM3YZW2-BkxsqkNK.js} +1 -1
- package/dist/{chunk-LHMN2FUI-Dj_AHSvI.js → chunk-LHMN2FUI-CgYPnxfN.js} +1 -1
- package/dist/{chunk-N4CR4FBY-ByLbY9L-.js → chunk-N4CR4FBY-BxOHGL3P.js} +5 -5
- package/dist/{chunk-O7ZBX7Z2-CRZ8i1rP.js → chunk-O7ZBX7Z2-CdpLwOP0.js} +1 -1
- package/dist/{chunk-QN33PNHL-eodIiY9F.js → chunk-QN33PNHL-Dda-55xY.js} +1 -1
- package/dist/{chunk-QXUST7PY-CuJlDW6A.js → chunk-QXUST7PY-ClIEpoCT.js} +5 -5
- package/dist/{chunk-S3R3BYOJ-CwDGYMVf.js → chunk-S3R3BYOJ-C_1SJcWo.js} +3 -3
- package/dist/{chunk-S6J4BHB3-DNVMr0_v.js → chunk-S6J4BHB3-zfWjyfUg.js} +1 -1
- package/dist/{chunk-T53DSG4Q-BFWkpOX5.js → chunk-T53DSG4Q-Bewz1tiU.js} +1 -1
- package/dist/{chunk-TZMSLE5B-DFDr5FCr.js → chunk-TZMSLE5B-XW3duOft.js} +1 -1
- package/dist/{classDiagram-2ON5EDUG-BDBX9etk.js → classDiagram-2ON5EDUG-CUJlS_eo.js} +10 -10
- package/dist/{classDiagram-v2-WZHVMYZB-Bzj_L_BF.js → classDiagram-v2-WZHVMYZB-BhSPpbkE.js} +10 -10
- package/dist/{clone-Cc_6PW77.js → clone-V9hndNcj.js} +1 -1
- package/dist/{constants-DrOu5vvd.js → constants-BGRTDzdW.js} +2 -2
- package/dist/{copy-DRaXIb_a.js → copy-oc-FcZzt.js} +2 -2
- package/dist/{dagre-6UL2VRFP-r2rSdJYL.js → dagre-6UL2VRFP-BArPH353.js} +11 -11
- package/dist/{dagre-D2F8UdM6.js → dagre-Dcgyn_Uy.js} +15 -15
- package/dist/{diagram-PSM6KHXK-BpxVUe9U.js → diagram-PSM6KHXK-B1xAkr9y.js} +16 -16
- package/dist/{diagram-QEK2KX5R-q3dHUcp6.js → diagram-QEK2KX5R-CaoqwzPb.js} +14 -14
- package/dist/{diagram-S2PKOQOG-MDBKrxSC.js → diagram-S2PKOQOG-NXCsFLvR.js} +14 -14
- package/dist/dist-B8Y11RWn.js +1381 -0
- package/dist/dist-BA-HK7pI.js +5 -0
- package/dist/dist-BD5GU948.js +5 -0
- package/dist/{dist-BfactX3G.js → dist-BGzkWRSl.js} +4 -4
- package/dist/dist-BIYmAsND.js +5 -0
- package/dist/{dist-CmZYrgd_.js → dist-BUEi7EKT.js} +1 -1
- package/dist/{dist-B94MxrQS.js → dist-B_i29Q6L.js} +2 -2
- package/dist/dist-BcKTJXJi.js +5 -0
- package/dist/dist-BgnrtcWg.js +8 -0
- package/dist/{dist-glA_fIK_.js → dist-BoagoQQw.js} +2 -2
- package/dist/{dist-C2-m5aEk.js → dist-BswsDM4k.js} +2 -2
- package/dist/dist-C1njTlBq.js +5 -0
- package/dist/{dist-B2-r9y-0.js → dist-C5QB1NtD.js} +3 -3
- package/dist/{dist-Crk9ejOy.js → dist-CD7uLx0M.js} +2 -2
- package/dist/{dist-B4tYJP_i.js → dist-CMOy93xY.js} +2 -2
- package/dist/dist-CSKHwJYH.js +5 -0
- package/dist/dist-CSKKyiIq.js +5 -0
- package/dist/{dist-iiugPhCC.js → dist-C_9IMrtt.js} +1 -1
- package/dist/{dist-CE43BRmt.js → dist-Cb3iqED3.js} +1 -1
- package/dist/{dist-Dit9tk8a.js → dist-CoZ8kKKW.js} +1 -1
- package/dist/{dist-B5ATpkxy.js → dist-CrAYcS_4.js} +2 -2
- package/dist/dist-CrQ_pOuK.js +6 -0
- package/dist/dist-Cskx1daf.js +5 -0
- package/dist/dist-D4i0Ef34.js +8 -0
- package/dist/{dist-T4g7Sr6e.js → dist-D8EhXZ4S.js} +3 -3
- package/dist/{dist-CJrHMxlI.js → dist-DOLQQtWK.js} +3 -3
- package/dist/dist-DOcn61TX.js +8 -0
- package/dist/{dist-DqJdzAYM.js → dist-Dmr_nXF6.js} +2 -2
- package/dist/{dist-yVJ4xE5n.js → dist-DpAbrLuF.js} +5 -5
- package/dist/{dist-CcOGT46m.js → dist-DrC0QKFK.js} +1 -1
- package/dist/{dist-BYmtF1W6.js → dist-Dv2Phbh5.js} +2 -2
- package/dist/dist-DwMejAPB.js +6 -0
- package/dist/dist-DzSe1wby.js +8 -0
- package/dist/{dist-BbBnU4tG.js → dist-EZFqUJhh.js} +1 -1
- package/dist/{dist-Cgf353Ki.js → dist-Ey9hP8-j.js} +1 -1
- package/dist/{dist-BLwfpZD-.js → dist-IlWGXVjO.js} +2 -2
- package/dist/{dist-DOil6y-3.js → dist-LNp8svLl.js} +4 -4
- package/dist/{dist-CPTE45iS.js → dist-W6TdeACj.js} +1 -1
- package/dist/{dist-Dc1SFk5I.js → dist-a6Obzr07.js} +2 -2
- package/dist/{dist-Bsv_ARko.js → dist-bz6WguLy.js} +2 -2
- package/dist/{dist-CC9VUnXd.js → dist-iDeoXzdN.js} +1 -1
- package/dist/{dist-BoAHOW2l.js → dist-iyBCcLRa.js} +2 -2
- package/dist/{dist-CkEUrAus.js → dist-xCB683Dh.js} +2 -2
- package/dist/{erDiagram-Q2GNP2WA-CX1XdqVD.js → erDiagram-Q2GNP2WA-DWCa11g5.js} +10 -10
- package/dist/error-banner-vCG-EbUQ.js +619 -0
- package/dist/{esm-BAS2d2Ad.js → esm-DZSk8vt3.js} +27 -27
- package/dist/{flatten-eGRGXrC3.js → flatten-CWZjF1fc.js} +1 -1
- package/dist/{flowDiagram-NV44I4VS-BCj-ONTw.js → flowDiagram-NV44I4VS-BQ5PQs4L.js} +10 -10
- package/dist/{ganttDiagram-JELNMOA3-D1l5ewiQ.js → ganttDiagram-JELNMOA3-NTOuNWeT.js} +3 -3
- package/dist/{gitGraph-F6HP7TQM-CDM3aU-T.js → gitGraph-F6HP7TQM-DfRNsaDw.js} +3 -3
- package/dist/{gitGraphDiagram-NY62KEGX-KdZh0iiW.js → gitGraphDiagram-NY62KEGX-CYke62Ot.js} +13 -13
- package/dist/{glide-data-editor-2RvcPqmc.js → glide-data-editor-DttqGjrT.js} +571 -572
- package/dist/{graphlib-7UgfJadv.js → graphlib-CwMnCnQ9.js} +8 -8
- package/dist/{info-NVLQJR56-CoL1x1Fy.js → info-NVLQJR56-CUaoPtis.js} +3 -3
- package/dist/{infoDiagram-WHAUD3N6-PSH7lQ0D.js → infoDiagram-WHAUD3N6-B42WjAPh.js} +13 -13
- package/dist/{isEmpty-DQXRKNtW.js → isEmpty-6z2uv6gM.js} +2 -2
- package/dist/{isString-Clqvtgmo.js → isString-D6abkXrl.js} +1 -1
- package/dist/{isSymbol-TWXhTa8k.js → isSymbol-hk7foJ70.js} +1 -1
- package/dist/{journeyDiagram-XKPGCS4Q-BrTAxQ1J.js → journeyDiagram-XKPGCS4Q-ahXD97kr.js} +3 -3
- package/dist/{kanban-definition-3W4ZIXB7-BoYCDp_9.js → kanban-definition-3W4ZIXB7-CiTIpnhy.js} +7 -7
- package/dist/{label-CxU5JNBW.js → label-Cc5tEavt.js} +250 -250
- package/dist/{loader-C0-eIoas.js → loader-Cob3XFOw.js} +2 -2
- package/dist/main.js +1791 -1056
- package/dist/{memoize-Bag7B41I.js → memoize-Ckyqzyu_.js} +1 -1
- package/dist/{merge-Dl1bfxsj.js → merge-Db4Uulx4.js} +1 -1
- package/dist/{mermaid-C2cSe5YL.js → mermaid-B5xl_2hx.js} +73 -62
- package/dist/{mermaid-parser.core-D20zFbMa.js → mermaid-parser.core-BXj7Il0J.js} +8 -8
- package/dist/{min-Bg4bqmiD.js → min-ypdVXicC.js} +4 -4
- package/dist/{mindmap-definition-VGOIOE7T-CmRjsKEt.js → mindmap-definition-VGOIOE7T-Mni766A_.js} +9 -9
- package/dist/{now-mivqkCIv.js → now-Dwu5ou19.js} +2 -2
- package/dist/{once-BqS42WgZ.js → once-C9dA9qgQ.js} +1 -1
- package/dist/{packet-BFZMPI3H-C6aZmgV-.js → packet-BFZMPI3H-DHtQCusE.js} +3 -3
- package/dist/{pie-7BOR55EZ-NB6xYwcB.js → pie-7BOR55EZ-2sVLYbpR.js} +3 -3
- package/dist/{pieDiagram-ADFJNKIX-CtxQlnsU.js → pieDiagram-ADFJNKIX-PbXpgT8_.js} +14 -14
- package/dist/{quadrantDiagram-AYHSOK5B-DllnB2Hl.js → quadrantDiagram-AYHSOK5B-BtXGnx8i.js} +2 -2
- package/dist/{radar-NHE76QYJ-RKhErikV.js → radar-NHE76QYJ-Be0pEUux.js} +3 -3
- package/dist/{range-LoQMRQIX.js → range-D9jxVFd_.js} +5 -5
- package/dist/{reduce-B9mZDxPo.js → reduce-C6NEPj6s.js} +4 -4
- package/dist/{requirementDiagram-UZGBJVZJ-D36MI1k0.js → requirementDiagram-UZGBJVZJ-DxzXQRgq.js} +9 -9
- package/dist/{sankeyDiagram-TZEHDZUN-D1mygNPC.js → sankeyDiagram-TZEHDZUN-D-I7dJ0_.js} +2 -2
- package/dist/{sequenceDiagram-WL72ISMW-CWdn91Rf.js → sequenceDiagram-WL72ISMW-VDme2ljw.js} +4 -4
- package/dist/{slides-component-DfwLApNr.js → slides-component-ql7-5GDI.js} +2 -2
- package/dist/{spec-HoYHAQo2.js → spec-GwhMEXwK.js} +8 -9
- package/dist/{stateDiagram-FKZM4ZOC-CPxroWXd.js → stateDiagram-FKZM4ZOC-g3GI1EcK.js} +12 -12
- package/dist/{stateDiagram-v2-4FDKWEC3-BpM9Q54b.js → stateDiagram-v2-4FDKWEC3-7i6jBXe6.js} +10 -10
- package/dist/stex-D2rme5UG.js +4 -0
- package/dist/style.css +1 -1
- package/dist/{timeline-definition-IT6M3QCI-CVnRHx_t.js → timeline-definition-IT6M3QCI-bhvLlX_b.js} +2 -2
- package/dist/{toString-C4TLO6FA.js → toString-BwTJvlyD.js} +2 -2
- package/dist/tooltip-CL8m4f9y.js +404 -0
- package/dist/{treemap-KMMF4GRG-B37ugcLd.js → treemap-KMMF4GRG-Ba9ifjpG.js} +3 -3
- package/dist/{types-Ckva8JJq.js → types-Dsh6yC4B.js} +412 -413
- package/dist/{useAsyncData-dr8GazGv.js → useAsyncData-BPpyKjTJ.js} +2 -2
- package/dist/{useDeepCompareMemoize-ChviuF5n.js → useDeepCompareMemoize-C8Ms87P-.js} +18 -19
- package/dist/{useIframeCapabilities-DurI5SJh.js → useIframeCapabilities-C7z8VrZ1.js} +2 -2
- package/dist/{useTheme-SlKl8MlS.js → useTheme-Cq-gIssy.js} +299 -300
- package/dist/{vega-component-CnG0vAjf.js → vega-component-B5sxdjMq.js} +10 -10
- package/dist/{xychartDiagram-PRI3JC2R-BltwMWKC.js → xychartDiagram-PRI3JC2R-CFxuifYY.js} +5 -5
- package/package.json +1 -1
- package/src/components/editor/Output.tsx +8 -6
- package/src/components/editor/__tests__/Output.test.tsx +59 -0
- package/src/components/editor/chrome/__tests__/state.test.ts +321 -0
- package/src/components/editor/chrome/state.ts +27 -2
- package/src/components/editor/file-tree/upload.tsx +46 -23
- package/src/components/editor/links/cell-link.tsx +3 -2
- package/src/components/editor/output/console/ConsoleOutput.tsx +13 -3
- package/src/components/pages/gallery-page.tsx +1 -1
- package/src/components/pages/home-page.tsx +5 -3
- package/src/components/tracing/tracing.tsx +50 -39
- package/src/core/documentation/DocHoverTarget.tsx +23 -0
- package/src/core/documentation/doc-lookup.ts +50 -0
- package/src/core/islands/main.ts +1 -0
- package/src/core/websocket/useMarimoKernelConnection.tsx +3 -0
- package/src/css/app/Cell.css +5 -0
- package/src/mount.tsx +2 -2
- package/src/plugins/core/RenderHTML.tsx +15 -0
- package/src/plugins/core/__test__/registerReactComponent.test.ts +204 -0
- package/src/plugins/core/registerReactComponent.tsx +33 -0
- package/src/plugins/impl/MatrixPlugin.tsx +275 -0
- package/src/plugins/impl/__tests__/MatrixPlugin.test.tsx +415 -0
- package/src/plugins/impl/anywidget/model.ts +1 -2
- package/src/plugins/impl/matplotlib/MatplotlibPlugin.tsx +70 -0
- package/src/plugins/impl/matplotlib/__tests__/matplotlib-renderer.test.ts +152 -0
- package/src/plugins/impl/matplotlib/matplotlib-renderer.ts +781 -0
- package/src/plugins/impl/matrix.css +45 -0
- package/src/plugins/layout/mermaid/mermaid.tsx +11 -3
- package/src/plugins/plugins.ts +4 -0
- package/src/utils/__tests__/download.test.tsx +47 -0
- package/src/utils/download.ts +13 -1
- package/src/utils/links.ts +1 -1
- package/src/utils/urls.ts +1 -1
- package/dist/Combination-BTMrlhzT.js +0 -2611
- package/dist/architecture-U656AL7Q-COfwZju8.js +0 -6
- package/dist/dist-4YNZxwMI.js +0 -8
- package/dist/dist-7nR3r2kG.js +0 -5
- package/dist/dist-B2gkyT3r.js +0 -5
- package/dist/dist-B8G3I6vJ.js +0 -8
- package/dist/dist-BJ96Ykfp.js +0 -8
- package/dist/dist-BKLIWGw4.js +0 -5
- package/dist/dist-Bf3ou00A.js +0 -6
- package/dist/dist-BvkKXuPm.js +0 -5
- package/dist/dist-C6NJ3n6r.js +0 -5
- package/dist/dist-CecLPYY5.js +0 -5
- package/dist/dist-Ch0SwRzK.js +0 -5
- package/dist/dist-D6eWHiFh.js +0 -6
- package/dist/dist-DCQ710Bv.js +0 -5
- package/dist/dist-P_pkS5f-.js +0 -8
- package/dist/error-banner-D2zjeN_a.js +0 -1015
- package/dist/hotkeys-B5WnGZXF.js +0 -587
- package/dist/stex-ChDHQs3R.js +0 -4
- package/dist/zod-bjADtMKr.js +0 -10663
- /package/dist/{_arrayReduce-DlK7U3Q6.js → _arrayReduce-REKcIEj3.js} +0 -0
- /package/dist/{_baseFor-DSVmVciX.js → _baseFor-B69PDbIz.js} +0 -0
- /package/dist/{_hasUnicode-Bz2x6u6r.js → _hasUnicode-DrSAc5A5.js} +0 -0
- /package/dist/{dist-r8ecBV-v.js → dist-CUOuFgHt.js} +0 -0
- /package/dist/{invariant-D9QLJ4SZ.js → invariant-D-K49MfV.js} +0 -0
- /package/dist/{main-DhFbkwoC.js → main-DmxVpB19.js} +0 -0
- /package/dist/{purify.es-Brw-U87Q.js → purify.es-D4vaFt5N.js} +0 -0
- /package/dist/{stex-DrxP7bb3.js → stex-DIvyJfNO.js} +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { s as __toESM } from "./chunk-BNovOVIE.js";
|
|
2
2
|
import { t as require_react } from "./react-Bs6Z0kvn.js";
|
|
3
3
|
import { t as require_compiler_runtime } from "./compiler-runtime-B_OLMU9S.js";
|
|
4
|
-
import {
|
|
5
|
-
import { t as Check } from "./check-
|
|
6
|
-
import { a as cva,
|
|
7
|
-
import {
|
|
4
|
+
import { a as Content, i as Arrow, l as createLucideIcon, n as VISUALLY_HIDDEN_STYLES, o as Root2$1, r as Anchor, s as createPopperScope } from "./dist-B8Y11RWn.js";
|
|
5
|
+
import { t as Check } from "./check-C50jsehH.js";
|
|
6
|
+
import { a as cva, g as Logger, h as Events, i as createSlot, m as useComposedRefs, y as cn } from "./button-KYalaJYu.js";
|
|
7
|
+
import { _t as createContextScope, at as useControllableState, ct as useId, dt as useCallbackRef, ft as Primitive$1, i as useFocusGuards, it as StyleNamespace, lt as useLayoutEffect2, mt as createSlot$1, n as hideOthers, nt as withSmartCollisionBoundary, r as FocusScope, st as Portal, t as Combination_default, tt as withFullScreenAsRoot, ut as DismissableLayer, vt as composeEventHandlers } from "./Combination-Du-o_hC9.js";
|
|
8
8
|
import { t as require_jsx_runtime } from "./jsx-runtime-CTBg5pdT.js";
|
|
9
9
|
import { t as require_react_dom } from "./react-dom-CqtLRVZP.js";
|
|
10
|
-
import { t as toString_default } from "./toString-
|
|
11
|
-
import { t as _hasUnicode_default } from "./_hasUnicode-
|
|
12
|
-
import { t as invariant } from "./invariant-
|
|
10
|
+
import { t as toString_default } from "./toString-BwTJvlyD.js";
|
|
11
|
+
import { t as _hasUnicode_default } from "./_hasUnicode-DrSAc5A5.js";
|
|
12
|
+
import { t as invariant } from "./invariant-D-K49MfV.js";
|
|
13
13
|
var ChevronDown = createLucideIcon("chevron-down", [["path", {
|
|
14
14
|
d: "m6 9 6 6 6-6",
|
|
15
15
|
key: "qrunsl"
|
|
@@ -336,42 +336,42 @@ function createCollection(e) {
|
|
|
336
336
|
});
|
|
337
337
|
};
|
|
338
338
|
l.displayName = i;
|
|
339
|
-
let
|
|
339
|
+
let u = e + "CollectionSlot", d = createSlot$1(u), f = import_react.forwardRef((e2, i2) => {
|
|
340
340
|
let { scope: a2, children: o2 } = e2;
|
|
341
|
-
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
342
|
-
ref: useComposedRefs(i2, c(
|
|
341
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(d, {
|
|
342
|
+
ref: useComposedRefs(i2, c(u, a2).collectionRef),
|
|
343
343
|
children: o2
|
|
344
344
|
});
|
|
345
345
|
});
|
|
346
|
-
|
|
347
|
-
let
|
|
348
|
-
let { scope: a2, children: o2, ...s2 } = e2, l2 = import_react.useRef(null),
|
|
346
|
+
f.displayName = u;
|
|
347
|
+
let p = e + "CollectionItemSlot", m = "data-radix-collection-item", h = createSlot$1(p), g = import_react.forwardRef((e2, i2) => {
|
|
348
|
+
let { scope: a2, children: o2, ...s2 } = e2, l2 = import_react.useRef(null), u2 = useComposedRefs(i2, l2), d2 = c(p, a2);
|
|
349
349
|
return import_react.useEffect(() => (d2.itemMap.set(l2, {
|
|
350
350
|
ref: l2,
|
|
351
351
|
...s2
|
|
352
|
-
}), () => void d2.itemMap.delete(l2))), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
|
|
353
|
-
[
|
|
354
|
-
ref:
|
|
352
|
+
}), () => void d2.itemMap.delete(l2))), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(h, {
|
|
353
|
+
[m]: "",
|
|
354
|
+
ref: u2,
|
|
355
355
|
children: o2
|
|
356
356
|
});
|
|
357
357
|
});
|
|
358
|
-
|
|
359
|
-
function
|
|
358
|
+
g.displayName = p;
|
|
359
|
+
function _(i2) {
|
|
360
360
|
let a2 = c(e + "CollectionConsumer", i2);
|
|
361
361
|
return import_react.useCallback(() => {
|
|
362
362
|
let e2 = a2.collectionRef.current;
|
|
363
363
|
if (!e2) return [];
|
|
364
|
-
let i3 = Array.from(e2.querySelectorAll(`[${
|
|
364
|
+
let i3 = Array.from(e2.querySelectorAll(`[${m}]`));
|
|
365
365
|
return Array.from(a2.itemMap.values()).sort((e3, a3) => i3.indexOf(e3.ref.current) - i3.indexOf(a3.ref.current));
|
|
366
366
|
}, [a2.collectionRef, a2.itemMap]);
|
|
367
367
|
}
|
|
368
368
|
return [
|
|
369
369
|
{
|
|
370
370
|
Provider: l,
|
|
371
|
-
Slot:
|
|
372
|
-
ItemSlot:
|
|
371
|
+
Slot: f,
|
|
372
|
+
ItemSlot: g
|
|
373
373
|
},
|
|
374
|
-
|
|
374
|
+
_,
|
|
375
375
|
o
|
|
376
376
|
];
|
|
377
377
|
}
|
|
@@ -386,14 +386,14 @@ var import_react_dom$1 = /* @__PURE__ */ __toESM(require_react_dom(), 1), OPEN_K
|
|
|
386
386
|
"ArrowUp",
|
|
387
387
|
"ArrowDown"
|
|
388
388
|
], SELECTION_KEYS = [" ", "Enter"], SELECT_NAME = "Select", [Collection, useCollection, createCollectionScope] = createCollection(SELECT_NAME), [createSelectContext, createSelectScope] = createContextScope(SELECT_NAME, [createCollectionScope, createPopperScope]), usePopperScope = createPopperScope(), [SelectProvider, useSelectContext] = createSelectContext(SELECT_NAME), [SelectNativeOptionsProvider, useSelectNativeOptionsContext] = createSelectContext(SELECT_NAME), Select$1 = (e) => {
|
|
389
|
-
let { __scopeSelect: i, children: a, open: o, defaultOpen: s, onOpenChange: c, value: l, defaultValue:
|
|
389
|
+
let { __scopeSelect: i, children: a, open: o, defaultOpen: s, onOpenChange: c, value: l, defaultValue: d, onValueChange: f, dir: p, name: m, autoComplete: h, disabled: g, required: _, form: v } = e, y = usePopperScope(i), [b, C] = import_react.useState(null), [w, T] = import_react.useState(null), [E, D] = import_react.useState(false), O = useDirection(p), [k, A] = useControllableState({
|
|
390
390
|
prop: o,
|
|
391
391
|
defaultProp: s ?? false,
|
|
392
392
|
onChange: c,
|
|
393
393
|
caller: SELECT_NAME
|
|
394
394
|
}), [j, M] = useControllableState({
|
|
395
395
|
prop: l,
|
|
396
|
-
defaultProp:
|
|
396
|
+
defaultProp: d,
|
|
397
397
|
onChange: f,
|
|
398
398
|
caller: SELECT_NAME
|
|
399
399
|
}), N = import_react.useRef(null), P = b ? v || !!b.closest("form") : true, [F, I] = import_react.useState(/* @__PURE__ */ new Set()), L = Array.from(F).map((e2) => e2.props.value).join(";");
|
|
@@ -403,17 +403,17 @@ var import_react_dom$1 = /* @__PURE__ */ __toESM(require_react_dom(), 1), OPEN_K
|
|
|
403
403
|
required: _,
|
|
404
404
|
scope: i,
|
|
405
405
|
trigger: b,
|
|
406
|
-
onTriggerChange:
|
|
407
|
-
valueNode:
|
|
408
|
-
onValueNodeChange:
|
|
409
|
-
valueNodeHasChildren:
|
|
410
|
-
onValueNodeHasChildrenChange:
|
|
406
|
+
onTriggerChange: C,
|
|
407
|
+
valueNode: w,
|
|
408
|
+
onValueNodeChange: T,
|
|
409
|
+
valueNodeHasChildren: E,
|
|
410
|
+
onValueNodeHasChildrenChange: D,
|
|
411
411
|
contentId: useId(),
|
|
412
412
|
value: j,
|
|
413
413
|
onValueChange: M,
|
|
414
|
-
open:
|
|
414
|
+
open: k,
|
|
415
415
|
onOpenChange: A,
|
|
416
|
-
dir:
|
|
416
|
+
dir: O,
|
|
417
417
|
triggerPointerDownPosRef: N,
|
|
418
418
|
disabled: g,
|
|
419
419
|
children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Provider, {
|
|
@@ -448,65 +448,65 @@ var import_react_dom$1 = /* @__PURE__ */ __toESM(require_react_dom(), 1), OPEN_K
|
|
|
448
448
|
};
|
|
449
449
|
Select$1.displayName = SELECT_NAME;
|
|
450
450
|
var TRIGGER_NAME = "SelectTrigger", SelectTrigger$1 = import_react.forwardRef((e, i) => {
|
|
451
|
-
let { __scopeSelect: a, disabled: o = false, ...
|
|
452
|
-
let i2 =
|
|
453
|
-
a2 !== void 0 &&
|
|
454
|
-
}),
|
|
455
|
-
|
|
451
|
+
let { __scopeSelect: a, disabled: o = false, ...s } = e, c = usePopperScope(a), l = useSelectContext(TRIGGER_NAME, a), u = l.disabled || o, f = useComposedRefs(i, l.onTriggerChange), p = useCollection(a), m = import_react.useRef("touch"), [h, g, _] = useTypeaheadSearch((e2) => {
|
|
452
|
+
let i2 = p().filter((e3) => !e3.disabled), a2 = findNextItem(i2, e2, i2.find((e3) => e3.value === l.value));
|
|
453
|
+
a2 !== void 0 && l.onValueChange(a2.value);
|
|
454
|
+
}), y = (e2) => {
|
|
455
|
+
u || (l.onOpenChange(true), _()), e2 && (l.triggerPointerDownPosRef.current = {
|
|
456
456
|
x: Math.round(e2.pageX),
|
|
457
457
|
y: Math.round(e2.pageY)
|
|
458
458
|
});
|
|
459
459
|
};
|
|
460
460
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Anchor, {
|
|
461
461
|
asChild: true,
|
|
462
|
-
...
|
|
462
|
+
...c,
|
|
463
463
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.button, {
|
|
464
464
|
type: "button",
|
|
465
465
|
role: "combobox",
|
|
466
|
-
"aria-controls":
|
|
467
|
-
"aria-expanded":
|
|
468
|
-
"aria-required":
|
|
466
|
+
"aria-controls": l.contentId,
|
|
467
|
+
"aria-expanded": l.open,
|
|
468
|
+
"aria-required": l.required,
|
|
469
469
|
"aria-autocomplete": "none",
|
|
470
|
-
dir:
|
|
471
|
-
"data-state":
|
|
472
|
-
disabled:
|
|
473
|
-
"data-disabled":
|
|
474
|
-
"data-placeholder": shouldShowPlaceholder(
|
|
475
|
-
...
|
|
476
|
-
ref:
|
|
477
|
-
onClick: composeEventHandlers(
|
|
478
|
-
e2.currentTarget.focus(),
|
|
470
|
+
dir: l.dir,
|
|
471
|
+
"data-state": l.open ? "open" : "closed",
|
|
472
|
+
disabled: u,
|
|
473
|
+
"data-disabled": u ? "" : void 0,
|
|
474
|
+
"data-placeholder": shouldShowPlaceholder(l.value) ? "" : void 0,
|
|
475
|
+
...s,
|
|
476
|
+
ref: f,
|
|
477
|
+
onClick: composeEventHandlers(s.onClick, (e2) => {
|
|
478
|
+
e2.currentTarget.focus(), m.current !== "mouse" && y(e2);
|
|
479
479
|
}),
|
|
480
|
-
onPointerDown: composeEventHandlers(
|
|
481
|
-
|
|
480
|
+
onPointerDown: composeEventHandlers(s.onPointerDown, (e2) => {
|
|
481
|
+
m.current = e2.pointerType;
|
|
482
482
|
let i2 = e2.target;
|
|
483
|
-
i2.hasPointerCapture(e2.pointerId) && i2.releasePointerCapture(e2.pointerId), e2.button === 0 && e2.ctrlKey === false && e2.pointerType === "mouse" && (
|
|
483
|
+
i2.hasPointerCapture(e2.pointerId) && i2.releasePointerCapture(e2.pointerId), e2.button === 0 && e2.ctrlKey === false && e2.pointerType === "mouse" && (y(e2), e2.preventDefault());
|
|
484
484
|
}),
|
|
485
|
-
onKeyDown: composeEventHandlers(
|
|
486
|
-
let i2 =
|
|
487
|
-
!(e2.ctrlKey || e2.altKey || e2.metaKey) && e2.key.length === 1 &&
|
|
485
|
+
onKeyDown: composeEventHandlers(s.onKeyDown, (e2) => {
|
|
486
|
+
let i2 = h.current !== "";
|
|
487
|
+
!(e2.ctrlKey || e2.altKey || e2.metaKey) && e2.key.length === 1 && g(e2.key), !(i2 && e2.key === " ") && OPEN_KEYS.includes(e2.key) && (y(), e2.preventDefault());
|
|
488
488
|
})
|
|
489
489
|
})
|
|
490
490
|
});
|
|
491
491
|
});
|
|
492
492
|
SelectTrigger$1.displayName = TRIGGER_NAME;
|
|
493
493
|
var VALUE_NAME = "SelectValue", SelectValue$1 = import_react.forwardRef((e, i) => {
|
|
494
|
-
let { __scopeSelect: a, className:
|
|
494
|
+
let { __scopeSelect: a, className: o, style: s, children: c, placeholder: l = "", ...u } = e, d = useSelectContext(VALUE_NAME, a), { onValueNodeHasChildrenChange: f } = d, p = c !== void 0, m = useComposedRefs(i, d.onValueNodeChange);
|
|
495
495
|
return useLayoutEffect2(() => {
|
|
496
|
-
|
|
497
|
-
}, [
|
|
498
|
-
...
|
|
499
|
-
ref:
|
|
496
|
+
f(p);
|
|
497
|
+
}, [f, p]), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.span, {
|
|
498
|
+
...u,
|
|
499
|
+
ref: m,
|
|
500
500
|
style: { pointerEvents: "none" },
|
|
501
|
-
children: shouldShowPlaceholder(
|
|
501
|
+
children: shouldShowPlaceholder(d.value) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: l }) : c
|
|
502
502
|
});
|
|
503
503
|
});
|
|
504
504
|
SelectValue$1.displayName = VALUE_NAME;
|
|
505
505
|
var ICON_NAME = "SelectIcon", SelectIcon = import_react.forwardRef((e, i) => {
|
|
506
|
-
let { __scopeSelect: a, children: o, ...
|
|
506
|
+
let { __scopeSelect: a, children: o, ...s } = e;
|
|
507
507
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.span, {
|
|
508
508
|
"aria-hidden": true,
|
|
509
|
-
...
|
|
509
|
+
...s,
|
|
510
510
|
ref: i,
|
|
511
511
|
children: o || "\u25BC"
|
|
512
512
|
});
|
|
@@ -518,11 +518,11 @@ var PORTAL_NAME = "SelectPortal", SelectPortal$1 = (e) => /* @__PURE__ */ (0, im
|
|
|
518
518
|
});
|
|
519
519
|
SelectPortal$1.displayName = PORTAL_NAME;
|
|
520
520
|
var CONTENT_NAME = "SelectContent", SelectContent$1 = import_react.forwardRef((e, i) => {
|
|
521
|
-
let a = useSelectContext(CONTENT_NAME, e.__scopeSelect), [
|
|
521
|
+
let a = useSelectContext(CONTENT_NAME, e.__scopeSelect), [o, s] = import_react.useState();
|
|
522
522
|
if (useLayoutEffect2(() => {
|
|
523
|
-
|
|
523
|
+
s(new DocumentFragment());
|
|
524
524
|
}, []), !a.open) {
|
|
525
|
-
let i2 =
|
|
525
|
+
let i2 = o;
|
|
526
526
|
return i2 ? import_react_dom$1.createPortal(/* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectContentProvider, {
|
|
527
527
|
scope: e.__scopeSelect,
|
|
528
528
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.Slot, {
|
|
@@ -538,24 +538,24 @@ var CONTENT_NAME = "SelectContent", SelectContent$1 = import_react.forwardRef((e
|
|
|
538
538
|
});
|
|
539
539
|
SelectContent$1.displayName = CONTENT_NAME;
|
|
540
540
|
var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = createSelectContext(CONTENT_NAME), CONTENT_IMPL_NAME = "SelectContentImpl", Slot = createSlot$1("SelectContent.RemoveScroll"), SelectContentImpl = import_react.forwardRef((e, i) => {
|
|
541
|
-
let { __scopeSelect: a, position: o = "item-aligned", onCloseAutoFocus: s, onEscapeKeyDown:
|
|
541
|
+
let { __scopeSelect: a, position: o = "item-aligned", onCloseAutoFocus: s, onEscapeKeyDown: c, onPointerDownOutside: l, side: u, sideOffset: d, align: f, alignOffset: p, arrowPadding: m, collisionBoundary: h, collisionPadding: g, sticky: _, hideWhenDetached: y, avoidCollisions: b, ...x } = e, S = useSelectContext(CONTENT_NAME, a), [C, w] = import_react.useState(null), [E, D] = import_react.useState(null), O = useComposedRefs(i, (e2) => w(e2)), [A, M] = import_react.useState(null), [P, L] = import_react.useState(null), R = useCollection(a), [z, B] = import_react.useState(false), V = import_react.useRef(false);
|
|
542
542
|
import_react.useEffect(() => {
|
|
543
|
-
if (
|
|
544
|
-
}, [
|
|
543
|
+
if (C) return hideOthers(C);
|
|
544
|
+
}, [C]), useFocusGuards();
|
|
545
545
|
let H = import_react.useCallback((e2) => {
|
|
546
546
|
let [i2, ...a2] = R().map((e3) => e3.ref.current), [o2] = a2.slice(-1), s2 = document.activeElement;
|
|
547
|
-
for (let a3 of e2) if (a3 === s2 || (a3 == null ? void 0 : a3.scrollIntoView({ block: "nearest" }), a3 === i2 &&
|
|
548
|
-
}, [R,
|
|
547
|
+
for (let a3 of e2) if (a3 === s2 || (a3 == null ? void 0 : a3.scrollIntoView({ block: "nearest" }), a3 === i2 && E && (E.scrollTop = 0), a3 === o2 && E && (E.scrollTop = E.scrollHeight), a3 == null ? void 0 : a3.focus(), document.activeElement !== s2)) return;
|
|
548
|
+
}, [R, E]), U = import_react.useCallback(() => H([A, C]), [
|
|
549
549
|
H,
|
|
550
|
-
|
|
551
|
-
|
|
550
|
+
A,
|
|
551
|
+
C
|
|
552
552
|
]);
|
|
553
553
|
import_react.useEffect(() => {
|
|
554
554
|
z && U();
|
|
555
555
|
}, [z, U]);
|
|
556
|
-
let { onOpenChange: W, triggerPointerDownPosRef: G } =
|
|
556
|
+
let { onOpenChange: W, triggerPointerDownPosRef: G } = S;
|
|
557
557
|
import_react.useEffect(() => {
|
|
558
|
-
if (
|
|
558
|
+
if (C) {
|
|
559
559
|
let e2 = {
|
|
560
560
|
x: 0,
|
|
561
561
|
y: 0
|
|
@@ -566,7 +566,7 @@ var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = crea
|
|
|
566
566
|
y: Math.abs(Math.round(i3.pageY) - (((_b = G.current) == null ? void 0 : _b.y) ?? 0))
|
|
567
567
|
};
|
|
568
568
|
}, a2 = (a3) => {
|
|
569
|
-
e2.x <= 10 && e2.y <= 10 ? a3.preventDefault() :
|
|
569
|
+
e2.x <= 10 && e2.y <= 10 ? a3.preventDefault() : C.contains(a3.target) || W(false), document.removeEventListener("pointermove", i2), G.current = null;
|
|
570
570
|
};
|
|
571
571
|
return G.current !== null && (document.addEventListener("pointermove", i2), document.addEventListener("pointerup", a2, {
|
|
572
572
|
capture: true,
|
|
@@ -576,7 +576,7 @@ var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = crea
|
|
|
576
576
|
};
|
|
577
577
|
}
|
|
578
578
|
}, [
|
|
579
|
-
|
|
579
|
+
C,
|
|
580
580
|
W,
|
|
581
581
|
G
|
|
582
582
|
]), import_react.useEffect(() => {
|
|
@@ -590,33 +590,33 @@ var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = crea
|
|
|
590
590
|
a2 && setTimeout(() => a2.ref.current.focus());
|
|
591
591
|
}), J = import_react.useCallback((e2, i2, a2) => {
|
|
592
592
|
let o2 = !V.current && !a2;
|
|
593
|
-
(
|
|
594
|
-
}, [
|
|
593
|
+
(S.value !== void 0 && S.value === i2 || o2) && (M(e2), o2 && (V.current = true));
|
|
594
|
+
}, [S.value]), Y = import_react.useCallback(() => C == null ? void 0 : C.focus(), [C]), Z = import_react.useCallback((e2, i2, a2) => {
|
|
595
595
|
let o2 = !V.current && !a2;
|
|
596
|
-
(
|
|
597
|
-
}, [
|
|
598
|
-
side:
|
|
599
|
-
sideOffset:
|
|
600
|
-
align:
|
|
601
|
-
alignOffset:
|
|
602
|
-
arrowPadding:
|
|
603
|
-
collisionBoundary:
|
|
604
|
-
collisionPadding:
|
|
605
|
-
sticky:
|
|
606
|
-
hideWhenDetached:
|
|
607
|
-
avoidCollisions:
|
|
596
|
+
(S.value !== void 0 && S.value === i2 || o2) && L(e2);
|
|
597
|
+
}, [S.value]), Q = o === "popper" ? SelectPopperPosition : SelectItemAlignedPosition, $ = Q === SelectPopperPosition ? {
|
|
598
|
+
side: u,
|
|
599
|
+
sideOffset: d,
|
|
600
|
+
align: f,
|
|
601
|
+
alignOffset: p,
|
|
602
|
+
arrowPadding: m,
|
|
603
|
+
collisionBoundary: h,
|
|
604
|
+
collisionPadding: g,
|
|
605
|
+
sticky: _,
|
|
606
|
+
hideWhenDetached: y,
|
|
607
|
+
avoidCollisions: b
|
|
608
608
|
} : {};
|
|
609
609
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectContentProvider, {
|
|
610
610
|
scope: a,
|
|
611
|
-
content:
|
|
612
|
-
viewport:
|
|
613
|
-
onViewportChange:
|
|
611
|
+
content: C,
|
|
612
|
+
viewport: E,
|
|
613
|
+
onViewportChange: D,
|
|
614
614
|
itemRefCallback: J,
|
|
615
|
-
selectedItem:
|
|
615
|
+
selectedItem: A,
|
|
616
616
|
onItemLeave: Y,
|
|
617
617
|
itemTextRefCallback: Z,
|
|
618
618
|
focusSelectedItem: U,
|
|
619
|
-
selectedItemText:
|
|
619
|
+
selectedItemText: P,
|
|
620
620
|
position: o,
|
|
621
621
|
isPositioned: z,
|
|
622
622
|
searchRef: K,
|
|
@@ -625,38 +625,38 @@ var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = crea
|
|
|
625
625
|
allowPinchZoom: true,
|
|
626
626
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FocusScope, {
|
|
627
627
|
asChild: true,
|
|
628
|
-
trapped:
|
|
628
|
+
trapped: S.open,
|
|
629
629
|
onMountAutoFocus: (e2) => {
|
|
630
630
|
e2.preventDefault();
|
|
631
631
|
},
|
|
632
632
|
onUnmountAutoFocus: composeEventHandlers(s, (e2) => {
|
|
633
633
|
var _a;
|
|
634
|
-
(_a =
|
|
634
|
+
(_a = S.trigger) == null ? void 0 : _a.focus({ preventScroll: true }), e2.preventDefault();
|
|
635
635
|
}),
|
|
636
636
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(DismissableLayer, {
|
|
637
637
|
asChild: true,
|
|
638
638
|
disableOutsidePointerEvents: true,
|
|
639
|
-
onEscapeKeyDown:
|
|
640
|
-
onPointerDownOutside:
|
|
639
|
+
onEscapeKeyDown: c,
|
|
640
|
+
onPointerDownOutside: l,
|
|
641
641
|
onFocusOutside: (e2) => e2.preventDefault(),
|
|
642
|
-
onDismiss: () =>
|
|
642
|
+
onDismiss: () => S.onOpenChange(false),
|
|
643
643
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Q, {
|
|
644
644
|
role: "listbox",
|
|
645
|
-
id:
|
|
646
|
-
"data-state":
|
|
647
|
-
dir:
|
|
645
|
+
id: S.contentId,
|
|
646
|
+
"data-state": S.open ? "open" : "closed",
|
|
647
|
+
dir: S.dir,
|
|
648
648
|
onContextMenu: (e2) => e2.preventDefault(),
|
|
649
|
-
...
|
|
649
|
+
...x,
|
|
650
650
|
...$,
|
|
651
651
|
onPlaced: () => B(true),
|
|
652
|
-
ref:
|
|
652
|
+
ref: O,
|
|
653
653
|
style: {
|
|
654
654
|
display: "flex",
|
|
655
655
|
flexDirection: "column",
|
|
656
656
|
outline: "none",
|
|
657
|
-
...
|
|
657
|
+
...x.style
|
|
658
658
|
},
|
|
659
|
-
onKeyDown: composeEventHandlers(
|
|
659
|
+
onKeyDown: composeEventHandlers(x.onKeyDown, (e2) => {
|
|
660
660
|
let i2 = e2.ctrlKey || e2.altKey || e2.metaKey;
|
|
661
661
|
if (e2.key === "Tab" && e2.preventDefault(), !i2 && e2.key.length === 1 && q(e2.key), [
|
|
662
662
|
"ArrowUp",
|
|
@@ -680,55 +680,55 @@ var CONTENT_MARGIN = 10, [SelectContentProvider, useSelectContentContext] = crea
|
|
|
680
680
|
});
|
|
681
681
|
SelectContentImpl.displayName = CONTENT_IMPL_NAME;
|
|
682
682
|
var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition", SelectItemAlignedPosition = import_react.forwardRef((e, i) => {
|
|
683
|
-
let { __scopeSelect: a, onPlaced:
|
|
684
|
-
if (
|
|
685
|
-
let e2 =
|
|
686
|
-
if (
|
|
687
|
-
let
|
|
688
|
-
|
|
683
|
+
let { __scopeSelect: a, onPlaced: o, ...s } = e, c = useSelectContext(CONTENT_NAME, a), l = useSelectContentContext(CONTENT_NAME, a), [u, d] = import_react.useState(null), [f, p] = import_react.useState(null), m = useComposedRefs(i, (e2) => p(e2)), h = useCollection(a), g = import_react.useRef(false), _ = import_react.useRef(true), { viewport: y, selectedItem: b, selectedItemText: x, focusSelectedItem: S } = l, C = import_react.useCallback(() => {
|
|
684
|
+
if (c.trigger && c.valueNode && u && f && y && b && x) {
|
|
685
|
+
let e2 = c.trigger.getBoundingClientRect(), i2 = f.getBoundingClientRect(), a2 = c.valueNode.getBoundingClientRect(), s2 = x.getBoundingClientRect();
|
|
686
|
+
if (c.dir !== "rtl") {
|
|
687
|
+
let o2 = s2.left - i2.left, c2 = a2.left - o2, l3 = e2.left - c2, d3 = e2.width + l3, f2 = Math.max(d3, i2.width), p3 = window.innerWidth - CONTENT_MARGIN, m3 = clamp(c2, [CONTENT_MARGIN, Math.max(CONTENT_MARGIN, p3 - f2)]);
|
|
688
|
+
u.style.minWidth = d3 + "px", u.style.left = m3 + "px";
|
|
689
689
|
} else {
|
|
690
|
-
let
|
|
691
|
-
|
|
690
|
+
let o2 = i2.right - s2.right, c2 = window.innerWidth - a2.right - o2, l3 = window.innerWidth - e2.right - c2, d3 = e2.width + l3, f2 = Math.max(d3, i2.width), p3 = window.innerWidth - CONTENT_MARGIN, m3 = clamp(c2, [CONTENT_MARGIN, Math.max(CONTENT_MARGIN, p3 - f2)]);
|
|
691
|
+
u.style.minWidth = d3 + "px", u.style.right = m3 + "px";
|
|
692
692
|
}
|
|
693
|
-
let
|
|
693
|
+
let l2 = h(), d2 = window.innerHeight - CONTENT_MARGIN * 2, p2 = y.scrollHeight, m2 = window.getComputedStyle(f), _2 = parseInt(m2.borderTopWidth, 10), v = parseInt(m2.paddingTop, 10), S2 = parseInt(m2.borderBottomWidth, 10), C2 = parseInt(m2.paddingBottom, 10), w = _2 + v + p2 + C2 + S2, T2 = Math.min(b.offsetHeight * 5, w), E2 = window.getComputedStyle(y), D = parseInt(E2.paddingTop, 10), O = parseInt(E2.paddingBottom, 10), k = e2.top + e2.height / 2 - CONTENT_MARGIN, A = d2 - k, j = b.offsetHeight / 2, M = b.offsetTop + j, N = _2 + v + M, P = w - N;
|
|
694
694
|
if (N <= k) {
|
|
695
|
-
let e3 =
|
|
696
|
-
|
|
697
|
-
let i3 =
|
|
698
|
-
|
|
695
|
+
let e3 = l2.length > 0 && b === l2[l2.length - 1].ref.current;
|
|
696
|
+
u.style.bottom = "0px";
|
|
697
|
+
let i3 = f.clientHeight - y.offsetTop - y.offsetHeight, a3 = N + Math.max(A, j + (e3 ? O : 0) + i3 + S2);
|
|
698
|
+
u.style.height = a3 + "px";
|
|
699
699
|
} else {
|
|
700
|
-
let e3 =
|
|
701
|
-
|
|
702
|
-
let i3 = Math.max(k,
|
|
703
|
-
|
|
700
|
+
let e3 = l2.length > 0 && b === l2[0].ref.current;
|
|
701
|
+
u.style.top = "0px";
|
|
702
|
+
let i3 = Math.max(k, _2 + y.offsetTop + (e3 ? D : 0) + j) + P;
|
|
703
|
+
u.style.height = i3 + "px", y.scrollTop = N - k + y.offsetTop;
|
|
704
704
|
}
|
|
705
|
-
|
|
705
|
+
u.style.margin = `${CONTENT_MARGIN}px 0`, u.style.minHeight = T2 + "px", u.style.maxHeight = d2 + "px", o == null ? void 0 : o(), requestAnimationFrame(() => g.current = true);
|
|
706
706
|
}
|
|
707
707
|
}, [
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
708
|
+
h,
|
|
709
|
+
c.trigger,
|
|
710
|
+
c.valueNode,
|
|
711
|
+
u,
|
|
711
712
|
f,
|
|
712
|
-
|
|
713
|
+
y,
|
|
713
714
|
b,
|
|
714
715
|
x,
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
c
|
|
716
|
+
c.dir,
|
|
717
|
+
o
|
|
718
718
|
]);
|
|
719
|
-
useLayoutEffect2(() =>
|
|
719
|
+
useLayoutEffect2(() => C(), [C]);
|
|
720
720
|
let [T, E] = import_react.useState();
|
|
721
721
|
return useLayoutEffect2(() => {
|
|
722
|
-
|
|
723
|
-
}, [
|
|
722
|
+
f && E(window.getComputedStyle(f).zIndex);
|
|
723
|
+
}, [f]), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectViewportProvider, {
|
|
724
724
|
scope: a,
|
|
725
|
-
contentWrapper:
|
|
726
|
-
shouldExpandOnScrollRef:
|
|
725
|
+
contentWrapper: u,
|
|
726
|
+
shouldExpandOnScrollRef: g,
|
|
727
727
|
onScrollButtonChange: import_react.useCallback((e2) => {
|
|
728
|
-
e2 &&
|
|
729
|
-
}, [
|
|
728
|
+
e2 && _.current === true && (C(), S == null ? void 0 : S(), _.current = false);
|
|
729
|
+
}, [C, S]),
|
|
730
730
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", {
|
|
731
|
-
ref:
|
|
731
|
+
ref: d,
|
|
732
732
|
style: {
|
|
733
733
|
display: "flex",
|
|
734
734
|
flexDirection: "column",
|
|
@@ -736,12 +736,12 @@ var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition", SelectItemAlignedP
|
|
|
736
736
|
zIndex: T
|
|
737
737
|
},
|
|
738
738
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
739
|
-
...
|
|
740
|
-
ref:
|
|
739
|
+
...s,
|
|
740
|
+
ref: m,
|
|
741
741
|
style: {
|
|
742
742
|
boxSizing: "border-box",
|
|
743
743
|
maxHeight: "100%",
|
|
744
|
-
...
|
|
744
|
+
...s.style
|
|
745
745
|
}
|
|
746
746
|
})
|
|
747
747
|
})
|
|
@@ -749,16 +749,16 @@ var ITEM_ALIGNED_POSITION_NAME = "SelectItemAlignedPosition", SelectItemAlignedP
|
|
|
749
749
|
});
|
|
750
750
|
SelectItemAlignedPosition.displayName = ITEM_ALIGNED_POSITION_NAME;
|
|
751
751
|
var POPPER_POSITION_NAME = "SelectPopperPosition", SelectPopperPosition = import_react.forwardRef((e, i) => {
|
|
752
|
-
let { __scopeSelect: a, align:
|
|
752
|
+
let { __scopeSelect: a, align: s = "start", collisionPadding: c = CONTENT_MARGIN, ...l } = e, u = usePopperScope(a);
|
|
753
753
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Content, {
|
|
754
|
+
...u,
|
|
754
755
|
...l,
|
|
755
|
-
...c,
|
|
756
756
|
ref: i,
|
|
757
|
-
align:
|
|
758
|
-
collisionPadding:
|
|
757
|
+
align: s,
|
|
758
|
+
collisionPadding: c,
|
|
759
759
|
style: {
|
|
760
760
|
boxSizing: "border-box",
|
|
761
|
-
...
|
|
761
|
+
...l.style,
|
|
762
762
|
"--radix-select-content-transform-origin": "var(--radix-popper-transform-origin)",
|
|
763
763
|
"--radix-select-content-available-width": "var(--radix-popper-available-width)",
|
|
764
764
|
"--radix-select-content-available-height": "var(--radix-popper-available-height)",
|
|
@@ -769,7 +769,7 @@ var POPPER_POSITION_NAME = "SelectPopperPosition", SelectPopperPosition = import
|
|
|
769
769
|
});
|
|
770
770
|
SelectPopperPosition.displayName = POPPER_POSITION_NAME;
|
|
771
771
|
var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CONTENT_NAME, {}), VIEWPORT_NAME = "SelectViewport", SelectViewport = import_react.forwardRef((e, i) => {
|
|
772
|
-
let { __scopeSelect: a, nonce: o, ...
|
|
772
|
+
let { __scopeSelect: a, nonce: o, ...s } = e, c = useSelectContentContext(VIEWPORT_NAME, a), l = useSelectViewportContext(VIEWPORT_NAME, a), u = useComposedRefs(i, c.onViewportChange), d = import_react.useRef(0);
|
|
773
773
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)("style", {
|
|
774
774
|
dangerouslySetInnerHTML: { __html: "[data-radix-select-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-select-viewport]::-webkit-scrollbar{display:none}" },
|
|
775
775
|
nonce: o
|
|
@@ -778,40 +778,40 @@ var [SelectViewportProvider, useSelectViewportContext] = createSelectContext(CON
|
|
|
778
778
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
779
779
|
"data-radix-select-viewport": "",
|
|
780
780
|
role: "presentation",
|
|
781
|
-
...
|
|
782
|
-
ref:
|
|
781
|
+
...s,
|
|
782
|
+
ref: u,
|
|
783
783
|
style: {
|
|
784
784
|
position: "relative",
|
|
785
785
|
flex: 1,
|
|
786
786
|
overflow: "hidden auto",
|
|
787
|
-
...
|
|
787
|
+
...s.style
|
|
788
788
|
},
|
|
789
|
-
onScroll: composeEventHandlers(
|
|
790
|
-
let i2 = e2.currentTarget, { contentWrapper: a2, shouldExpandOnScrollRef: o2 } =
|
|
789
|
+
onScroll: composeEventHandlers(s.onScroll, (e2) => {
|
|
790
|
+
let i2 = e2.currentTarget, { contentWrapper: a2, shouldExpandOnScrollRef: o2 } = l;
|
|
791
791
|
if ((o2 == null ? void 0 : o2.current) && a2) {
|
|
792
|
-
let e3 = Math.abs(
|
|
792
|
+
let e3 = Math.abs(d.current - i2.scrollTop);
|
|
793
793
|
if (e3 > 0) {
|
|
794
|
-
let o3 = window.innerHeight - CONTENT_MARGIN * 2,
|
|
794
|
+
let o3 = window.innerHeight - CONTENT_MARGIN * 2, s2 = parseFloat(a2.style.minHeight), c2 = parseFloat(a2.style.height), l2 = Math.max(s2, c2);
|
|
795
795
|
if (l2 < o3) {
|
|
796
|
-
let
|
|
797
|
-
a2.style.height =
|
|
796
|
+
let s3 = l2 + e3, c3 = Math.min(o3, s3), u2 = s3 - c3;
|
|
797
|
+
a2.style.height = c3 + "px", a2.style.bottom === "0px" && (i2.scrollTop = u2 > 0 ? u2 : 0, a2.style.justifyContent = "flex-end");
|
|
798
798
|
}
|
|
799
799
|
}
|
|
800
800
|
}
|
|
801
|
-
|
|
801
|
+
d.current = i2.scrollTop;
|
|
802
802
|
})
|
|
803
803
|
})
|
|
804
804
|
})] });
|
|
805
805
|
});
|
|
806
806
|
SelectViewport.displayName = VIEWPORT_NAME;
|
|
807
807
|
var GROUP_NAME = "SelectGroup", [SelectGroupContextProvider, useSelectGroupContext] = createSelectContext(GROUP_NAME), SelectGroup$1 = import_react.forwardRef((e, i) => {
|
|
808
|
-
let { __scopeSelect: a, ...o } = e,
|
|
808
|
+
let { __scopeSelect: a, ...o } = e, s = useId();
|
|
809
809
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectGroupContextProvider, {
|
|
810
810
|
scope: a,
|
|
811
|
-
id:
|
|
811
|
+
id: s,
|
|
812
812
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
813
813
|
role: "group",
|
|
814
|
-
"aria-labelledby":
|
|
814
|
+
"aria-labelledby": s,
|
|
815
815
|
...o,
|
|
816
816
|
ref: i
|
|
817
817
|
})
|
|
@@ -819,69 +819,69 @@ var GROUP_NAME = "SelectGroup", [SelectGroupContextProvider, useSelectGroupConte
|
|
|
819
819
|
});
|
|
820
820
|
SelectGroup$1.displayName = GROUP_NAME;
|
|
821
821
|
var LABEL_NAME = "SelectLabel", SelectLabel$1 = import_react.forwardRef((e, i) => {
|
|
822
|
-
let { __scopeSelect: a, ...o } = e,
|
|
822
|
+
let { __scopeSelect: a, ...o } = e, s = useSelectGroupContext(LABEL_NAME, a);
|
|
823
823
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
824
|
-
id:
|
|
824
|
+
id: s.id,
|
|
825
825
|
...o,
|
|
826
826
|
ref: i
|
|
827
827
|
});
|
|
828
828
|
});
|
|
829
829
|
SelectLabel$1.displayName = LABEL_NAME;
|
|
830
830
|
var ITEM_NAME = "SelectItem", [SelectItemContextProvider, useSelectItemContext] = createSelectContext(ITEM_NAME), SelectItem$1 = import_react.forwardRef((e, i) => {
|
|
831
|
-
let { __scopeSelect: a, value: o, disabled:
|
|
831
|
+
let { __scopeSelect: a, value: o, disabled: s = false, textValue: c, ...l } = e, u = useSelectContext(ITEM_NAME, a), d = useSelectContentContext(ITEM_NAME, a), f = u.value === o, [p, m] = import_react.useState(c ?? ""), [h, g] = import_react.useState(false), _ = useComposedRefs(i, (e2) => {
|
|
832
832
|
var _a;
|
|
833
|
-
return (_a =
|
|
834
|
-
}),
|
|
835
|
-
|
|
833
|
+
return (_a = d.itemRefCallback) == null ? void 0 : _a.call(d, e2, o, s);
|
|
834
|
+
}), y = useId(), b = import_react.useRef("touch"), x = () => {
|
|
835
|
+
s || (u.onValueChange(o), u.onOpenChange(false));
|
|
836
836
|
};
|
|
837
837
|
if (o === "") throw Error("A <Select.Item /> must have a value prop that is not an empty string. This is because the Select value can be set to an empty string to clear the selection and show the placeholder.");
|
|
838
838
|
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectItemContextProvider, {
|
|
839
839
|
scope: a,
|
|
840
840
|
value: o,
|
|
841
|
-
disabled:
|
|
842
|
-
textId:
|
|
843
|
-
isSelected:
|
|
841
|
+
disabled: s,
|
|
842
|
+
textId: y,
|
|
843
|
+
isSelected: f,
|
|
844
844
|
onItemTextChange: import_react.useCallback((e2) => {
|
|
845
|
-
|
|
845
|
+
m((i2) => i2 || ((e2 == null ? void 0 : e2.textContent) ?? "").trim());
|
|
846
846
|
}, []),
|
|
847
847
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Collection.ItemSlot, {
|
|
848
848
|
scope: a,
|
|
849
849
|
value: o,
|
|
850
|
-
disabled:
|
|
851
|
-
textValue:
|
|
850
|
+
disabled: s,
|
|
851
|
+
textValue: p,
|
|
852
852
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
853
853
|
role: "option",
|
|
854
|
-
"aria-labelledby":
|
|
855
|
-
"data-highlighted":
|
|
856
|
-
"aria-selected":
|
|
857
|
-
"data-state":
|
|
858
|
-
"aria-disabled":
|
|
859
|
-
"data-disabled":
|
|
860
|
-
tabIndex:
|
|
861
|
-
...
|
|
862
|
-
ref:
|
|
863
|
-
onFocus: composeEventHandlers(
|
|
864
|
-
onBlur: composeEventHandlers(
|
|
865
|
-
onClick: composeEventHandlers(
|
|
866
|
-
|
|
854
|
+
"aria-labelledby": y,
|
|
855
|
+
"data-highlighted": h ? "" : void 0,
|
|
856
|
+
"aria-selected": f && h,
|
|
857
|
+
"data-state": f ? "checked" : "unchecked",
|
|
858
|
+
"aria-disabled": s || void 0,
|
|
859
|
+
"data-disabled": s ? "" : void 0,
|
|
860
|
+
tabIndex: s ? void 0 : -1,
|
|
861
|
+
...l,
|
|
862
|
+
ref: _,
|
|
863
|
+
onFocus: composeEventHandlers(l.onFocus, () => g(true)),
|
|
864
|
+
onBlur: composeEventHandlers(l.onBlur, () => g(false)),
|
|
865
|
+
onClick: composeEventHandlers(l.onClick, () => {
|
|
866
|
+
b.current !== "mouse" && x();
|
|
867
867
|
}),
|
|
868
|
-
onPointerUp: composeEventHandlers(
|
|
869
|
-
|
|
868
|
+
onPointerUp: composeEventHandlers(l.onPointerUp, () => {
|
|
869
|
+
b.current === "mouse" && x();
|
|
870
870
|
}),
|
|
871
|
-
onPointerDown: composeEventHandlers(
|
|
872
|
-
|
|
871
|
+
onPointerDown: composeEventHandlers(l.onPointerDown, (e2) => {
|
|
872
|
+
b.current = e2.pointerType;
|
|
873
873
|
}),
|
|
874
|
-
onPointerMove: composeEventHandlers(
|
|
874
|
+
onPointerMove: composeEventHandlers(l.onPointerMove, (e2) => {
|
|
875
875
|
var _a;
|
|
876
|
-
|
|
876
|
+
b.current = e2.pointerType, s ? (_a = d.onItemLeave) == null ? void 0 : _a.call(d) : b.current === "mouse" && e2.currentTarget.focus({ preventScroll: true });
|
|
877
877
|
}),
|
|
878
|
-
onPointerLeave: composeEventHandlers(
|
|
878
|
+
onPointerLeave: composeEventHandlers(l.onPointerLeave, (e2) => {
|
|
879
879
|
var _a;
|
|
880
|
-
e2.currentTarget === document.activeElement && ((_a =
|
|
880
|
+
e2.currentTarget === document.activeElement && ((_a = d.onItemLeave) == null ? void 0 : _a.call(d));
|
|
881
881
|
}),
|
|
882
|
-
onKeyDown: composeEventHandlers(
|
|
882
|
+
onKeyDown: composeEventHandlers(l.onKeyDown, (e2) => {
|
|
883
883
|
var _a;
|
|
884
|
-
((_a =
|
|
884
|
+
((_a = d.searchRef) == null ? void 0 : _a.current) !== "" && e2.key === " " || (SELECTION_KEYS.includes(e2.key) && x(), e2.key === " " && e2.preventDefault());
|
|
885
885
|
})
|
|
886
886
|
})
|
|
887
887
|
})
|
|
@@ -889,27 +889,27 @@ var ITEM_NAME = "SelectItem", [SelectItemContextProvider, useSelectItemContext]
|
|
|
889
889
|
});
|
|
890
890
|
SelectItem$1.displayName = ITEM_NAME;
|
|
891
891
|
var ITEM_TEXT_NAME = "SelectItemText", SelectItemText = import_react.forwardRef((e, i) => {
|
|
892
|
-
let { __scopeSelect: a, className:
|
|
892
|
+
let { __scopeSelect: a, className: o, style: s, ...c } = e, l = useSelectContext(ITEM_TEXT_NAME, a), u = useSelectContentContext(ITEM_TEXT_NAME, a), d = useSelectItemContext(ITEM_TEXT_NAME, a), f = useSelectNativeOptionsContext(ITEM_TEXT_NAME, a), [p, m] = import_react.useState(null), h = useComposedRefs(i, (e2) => m(e2), d.onItemTextChange, (e2) => {
|
|
893
893
|
var _a;
|
|
894
|
-
return (_a =
|
|
895
|
-
}),
|
|
896
|
-
value:
|
|
897
|
-
disabled:
|
|
898
|
-
children:
|
|
899
|
-
},
|
|
900
|
-
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
]), { onNativeOptionAdd:
|
|
904
|
-
return useLayoutEffect2(() => (
|
|
894
|
+
return (_a = u.itemTextRefCallback) == null ? void 0 : _a.call(u, e2, d.value, d.disabled);
|
|
895
|
+
}), g = p == null ? void 0 : p.textContent, _ = import_react.useMemo(() => /* @__PURE__ */ (0, import_jsx_runtime.jsx)("option", {
|
|
896
|
+
value: d.value,
|
|
897
|
+
disabled: d.disabled,
|
|
898
|
+
children: g
|
|
899
|
+
}, d.value), [
|
|
900
|
+
d.disabled,
|
|
901
|
+
d.value,
|
|
902
|
+
g
|
|
903
|
+
]), { onNativeOptionAdd: y, onNativeOptionRemove: b } = f;
|
|
904
|
+
return useLayoutEffect2(() => (y(_), () => b(_)), [
|
|
905
|
+
y,
|
|
905
906
|
b,
|
|
906
|
-
|
|
907
|
-
y
|
|
907
|
+
_
|
|
908
908
|
]), /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.span, {
|
|
909
|
-
id:
|
|
910
|
-
...
|
|
911
|
-
ref:
|
|
912
|
-
}),
|
|
909
|
+
id: d.textId,
|
|
910
|
+
...c,
|
|
911
|
+
ref: h
|
|
912
|
+
}), d.isSelected && l.valueNode && !l.valueNodeHasChildren ? import_react_dom$1.createPortal(c.children, l.valueNode) : null] });
|
|
913
913
|
});
|
|
914
914
|
SelectItemText.displayName = ITEM_TEXT_NAME;
|
|
915
915
|
var ITEM_INDICATOR_NAME = "SelectItemIndicator", SelectItemIndicator = import_react.forwardRef((e, i) => {
|
|
@@ -922,17 +922,17 @@ var ITEM_INDICATOR_NAME = "SelectItemIndicator", SelectItemIndicator = import_re
|
|
|
922
922
|
});
|
|
923
923
|
SelectItemIndicator.displayName = ITEM_INDICATOR_NAME;
|
|
924
924
|
var SCROLL_UP_BUTTON_NAME = "SelectScrollUpButton", SelectScrollUpButton = import_react.forwardRef((e, i) => {
|
|
925
|
-
let a = useSelectContentContext(SCROLL_UP_BUTTON_NAME, e.__scopeSelect),
|
|
925
|
+
let a = useSelectContentContext(SCROLL_UP_BUTTON_NAME, e.__scopeSelect), o = useSelectViewportContext(SCROLL_UP_BUTTON_NAME, e.__scopeSelect), [s, c] = import_react.useState(false), l = useComposedRefs(i, o.onScrollButtonChange);
|
|
926
926
|
return useLayoutEffect2(() => {
|
|
927
927
|
if (a.viewport && a.isPositioned) {
|
|
928
928
|
let e2 = function() {
|
|
929
|
-
|
|
929
|
+
c(i2.scrollTop > 0);
|
|
930
930
|
}, i2 = a.viewport;
|
|
931
931
|
return e2(), i2.addEventListener("scroll", e2), () => i2.removeEventListener("scroll", e2);
|
|
932
932
|
}
|
|
933
|
-
}, [a.viewport, a.isPositioned]),
|
|
933
|
+
}, [a.viewport, a.isPositioned]), s ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectScrollButtonImpl, {
|
|
934
934
|
...e,
|
|
935
|
-
ref:
|
|
935
|
+
ref: l,
|
|
936
936
|
onAutoScroll: () => {
|
|
937
937
|
let { viewport: e2, selectedItem: i2 } = a;
|
|
938
938
|
e2 && i2 && (e2.scrollTop -= i2.offsetHeight);
|
|
@@ -941,18 +941,18 @@ var SCROLL_UP_BUTTON_NAME = "SelectScrollUpButton", SelectScrollUpButton = impor
|
|
|
941
941
|
});
|
|
942
942
|
SelectScrollUpButton.displayName = SCROLL_UP_BUTTON_NAME;
|
|
943
943
|
var SCROLL_DOWN_BUTTON_NAME = "SelectScrollDownButton", SelectScrollDownButton = import_react.forwardRef((e, i) => {
|
|
944
|
-
let a = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, e.__scopeSelect),
|
|
944
|
+
let a = useSelectContentContext(SCROLL_DOWN_BUTTON_NAME, e.__scopeSelect), o = useSelectViewportContext(SCROLL_DOWN_BUTTON_NAME, e.__scopeSelect), [s, c] = import_react.useState(false), l = useComposedRefs(i, o.onScrollButtonChange);
|
|
945
945
|
return useLayoutEffect2(() => {
|
|
946
946
|
if (a.viewport && a.isPositioned) {
|
|
947
947
|
let e2 = function() {
|
|
948
948
|
let e3 = i2.scrollHeight - i2.clientHeight;
|
|
949
|
-
|
|
949
|
+
c(Math.ceil(i2.scrollTop) < e3);
|
|
950
950
|
}, i2 = a.viewport;
|
|
951
951
|
return e2(), i2.addEventListener("scroll", e2), () => i2.removeEventListener("scroll", e2);
|
|
952
952
|
}
|
|
953
|
-
}, [a.viewport, a.isPositioned]),
|
|
953
|
+
}, [a.viewport, a.isPositioned]), s ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(SelectScrollButtonImpl, {
|
|
954
954
|
...e,
|
|
955
|
-
ref:
|
|
955
|
+
ref: l,
|
|
956
956
|
onAutoScroll: () => {
|
|
957
957
|
let { viewport: e2, selectedItem: i2 } = a;
|
|
958
958
|
e2 && i2 && (e2.scrollTop += i2.offsetHeight);
|
|
@@ -961,29 +961,29 @@ var SCROLL_DOWN_BUTTON_NAME = "SelectScrollDownButton", SelectScrollDownButton =
|
|
|
961
961
|
});
|
|
962
962
|
SelectScrollDownButton.displayName = SCROLL_DOWN_BUTTON_NAME;
|
|
963
963
|
var SelectScrollButtonImpl = import_react.forwardRef((e, i) => {
|
|
964
|
-
let { __scopeSelect: a, onAutoScroll:
|
|
965
|
-
|
|
964
|
+
let { __scopeSelect: a, onAutoScroll: o, ...s } = e, c = useSelectContentContext("SelectScrollButton", a), l = import_react.useRef(null), u = useCollection(a), d = import_react.useCallback(() => {
|
|
965
|
+
l.current !== null && (window.clearInterval(l.current), l.current = null);
|
|
966
966
|
}, []);
|
|
967
|
-
return import_react.useEffect(() => () =>
|
|
967
|
+
return import_react.useEffect(() => () => d(), [d]), useLayoutEffect2(() => {
|
|
968
968
|
var _a, _b;
|
|
969
|
-
(_b = (_a =
|
|
970
|
-
}, [
|
|
969
|
+
(_b = (_a = u().find((e2) => e2.ref.current === document.activeElement)) == null ? void 0 : _a.ref.current) == null ? void 0 : _b.scrollIntoView({ block: "nearest" });
|
|
970
|
+
}, [u]), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Primitive$1.div, {
|
|
971
971
|
"aria-hidden": true,
|
|
972
|
-
...
|
|
972
|
+
...s,
|
|
973
973
|
ref: i,
|
|
974
974
|
style: {
|
|
975
975
|
flexShrink: 0,
|
|
976
|
-
...
|
|
976
|
+
...s.style
|
|
977
977
|
},
|
|
978
|
-
onPointerDown: composeEventHandlers(
|
|
979
|
-
|
|
978
|
+
onPointerDown: composeEventHandlers(s.onPointerDown, () => {
|
|
979
|
+
l.current === null && (l.current = window.setInterval(o, 50));
|
|
980
980
|
}),
|
|
981
|
-
onPointerMove: composeEventHandlers(
|
|
981
|
+
onPointerMove: composeEventHandlers(s.onPointerMove, () => {
|
|
982
982
|
var _a;
|
|
983
|
-
(_a =
|
|
983
|
+
(_a = c.onItemLeave) == null ? void 0 : _a.call(c), l.current === null && (l.current = window.setInterval(o, 50));
|
|
984
984
|
}),
|
|
985
|
-
onPointerLeave: composeEventHandlers(
|
|
986
|
-
|
|
985
|
+
onPointerLeave: composeEventHandlers(s.onPointerLeave, () => {
|
|
986
|
+
d();
|
|
987
987
|
})
|
|
988
988
|
});
|
|
989
989
|
}), SEPARATOR_NAME = "SelectSeparator", SelectSeparator$1 = import_react.forwardRef((e, i) => {
|
|
@@ -996,18 +996,18 @@ var SelectScrollButtonImpl = import_react.forwardRef((e, i) => {
|
|
|
996
996
|
});
|
|
997
997
|
SelectSeparator$1.displayName = SEPARATOR_NAME;
|
|
998
998
|
var ARROW_NAME = "SelectArrow", SelectArrow = import_react.forwardRef((e, i) => {
|
|
999
|
-
let { __scopeSelect: a, ...o } = e,
|
|
1000
|
-
return
|
|
1001
|
-
...
|
|
999
|
+
let { __scopeSelect: a, ...o } = e, c = usePopperScope(a), l = useSelectContext(ARROW_NAME, a), u = useSelectContentContext(ARROW_NAME, a);
|
|
1000
|
+
return l.open && u.position === "popper" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Arrow, {
|
|
1001
|
+
...c,
|
|
1002
1002
|
...o,
|
|
1003
1003
|
ref: i
|
|
1004
1004
|
}) : null;
|
|
1005
1005
|
});
|
|
1006
1006
|
SelectArrow.displayName = ARROW_NAME;
|
|
1007
1007
|
var BUBBLE_INPUT_NAME = "SelectBubbleInput", SelectBubbleInput = import_react.forwardRef(({ __scopeSelect: e, value: i, ...a }, o) => {
|
|
1008
|
-
let
|
|
1008
|
+
let s = import_react.useRef(null), c = useComposedRefs(o, s), u = usePrevious(i);
|
|
1009
1009
|
return import_react.useEffect(() => {
|
|
1010
|
-
let e2 =
|
|
1010
|
+
let e2 = s.current;
|
|
1011
1011
|
if (!e2) return;
|
|
1012
1012
|
let a2 = window.HTMLSelectElement.prototype, o2 = Object.getOwnPropertyDescriptor(a2, "value").set;
|
|
1013
1013
|
if (u !== i && o2) {
|
|
@@ -1020,7 +1020,7 @@ var BUBBLE_INPUT_NAME = "SelectBubbleInput", SelectBubbleInput = import_react.fo
|
|
|
1020
1020
|
...VISUALLY_HIDDEN_STYLES,
|
|
1021
1021
|
...a.style
|
|
1022
1022
|
},
|
|
1023
|
-
ref:
|
|
1023
|
+
ref: c,
|
|
1024
1024
|
defaultValue: i
|
|
1025
1025
|
});
|
|
1026
1026
|
});
|
|
@@ -1187,23 +1187,23 @@ var SelectItem = import_react.forwardRef((e, i) => {
|
|
|
1187
1187
|
className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center",
|
|
1188
1188
|
children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Check, { className: "h-3 w-3" }) })
|
|
1189
1189
|
}), a[7] = d) : d = a[7];
|
|
1190
|
-
let f = typeof o == "string" ? void 0 : true,
|
|
1191
|
-
a[8] !== o || a[9] !== f ? (
|
|
1190
|
+
let f = typeof o == "string" ? void 0 : true, m;
|
|
1191
|
+
a[8] !== o || a[9] !== f ? (m = /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ItemText, {
|
|
1192
1192
|
asChild: f,
|
|
1193
1193
|
className: "flex w-full flex-1",
|
|
1194
1194
|
children: o
|
|
1195
|
-
}), a[8] = o, a[9] = f, a[10] =
|
|
1196
|
-
let
|
|
1197
|
-
return a[11] !== c || a[12] !== i || a[13] !== l || a[14] !== u || a[15] !==
|
|
1195
|
+
}), a[8] = o, a[9] = f, a[10] = m) : m = a[10];
|
|
1196
|
+
let h;
|
|
1197
|
+
return a[11] !== c || a[12] !== i || a[13] !== l || a[14] !== u || a[15] !== m ? (h = /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Item, {
|
|
1198
1198
|
ref: i,
|
|
1199
1199
|
className: u,
|
|
1200
1200
|
...c,
|
|
1201
1201
|
children: [
|
|
1202
1202
|
d,
|
|
1203
|
-
|
|
1203
|
+
m,
|
|
1204
1204
|
l
|
|
1205
1205
|
]
|
|
1206
|
-
}), a[11] = c, a[12] = i, a[13] = l, a[14] = u, a[15] =
|
|
1206
|
+
}), a[11] = c, a[12] = i, a[13] = l, a[14] = u, a[15] = m, a[16] = h) : h = a[16], h;
|
|
1207
1207
|
});
|
|
1208
1208
|
SelectItem.displayName = Item.displayName;
|
|
1209
1209
|
var SelectSeparator = import_react.forwardRef((e, i) => {
|