@vuer-ai/vuer-uikit 0.0.101 → 0.0.102
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/SyncScroll/SyncScroll.cjs +4 -4
- package/dist/SyncScroll/SyncScroll.mjs +4 -4
- package/dist/SyncScroll/index.cjs +4 -4
- package/dist/SyncScroll/index.mjs +4 -4
- package/dist/auth/context/auth-context.cjs +10 -0
- package/dist/auth/context/auth-context.d.cts +15 -0
- package/dist/auth/context/auth-context.d.ts +15 -0
- package/dist/auth/context/auth-context.mjs +1 -0
- package/dist/auth/handler/create-client.cjs +12 -0
- package/dist/auth/handler/create-client.d.cts +7 -0
- package/dist/auth/handler/create-client.d.ts +7 -0
- package/dist/auth/handler/create-client.mjs +3 -0
- package/dist/auth/handler/sign-in-handler.cjs +11 -0
- package/dist/auth/handler/sign-in-handler.d.cts +7 -0
- package/dist/auth/handler/sign-in-handler.d.ts +7 -0
- package/dist/auth/handler/sign-in-handler.mjs +2 -0
- package/dist/auth/hooks/use-vuer-auth.cjs +11 -0
- package/dist/auth/hooks/use-vuer-auth.d.cts +9 -0
- package/dist/auth/hooks/use-vuer-auth.d.ts +9 -0
- package/dist/auth/hooks/use-vuer-auth.mjs +2 -0
- package/dist/auth/hooks/use-vuer-method.cjs +14 -0
- package/dist/auth/hooks/use-vuer-method.d.cts +11 -0
- package/dist/auth/hooks/use-vuer-method.d.ts +11 -0
- package/dist/auth/hooks/use-vuer-method.mjs +5 -0
- package/dist/auth/index.cjs +33 -0
- package/dist/auth/index.d.cts +10 -0
- package/dist/auth/index.d.ts +10 -0
- package/dist/auth/index.mjs +8 -0
- package/dist/auth/localstorage-key.cjs +14 -0
- package/dist/auth/localstorage-key.d.cts +4 -0
- package/dist/auth/localstorage-key.d.ts +4 -0
- package/dist/auth/localstorage-key.mjs +1 -0
- package/dist/auth/types.cjs +14 -0
- package/dist/auth/types.d.cts +3481 -0
- package/dist/auth/types.d.ts +3481 -0
- package/dist/auth/types.mjs +1 -0
- package/dist/auth/vuer-auth-provider.cjs +14 -0
- package/dist/auth/vuer-auth-provider.d.cts +9 -0
- package/dist/auth/vuer-auth-provider.d.ts +9 -0
- package/dist/auth/vuer-auth-provider.mjs +5 -0
- package/dist/{chunk-OJUK6WJ5.mjs → chunk-24IUD6Q3.mjs} +1 -1
- package/dist/{chunk-BMJX3SEO.cjs → chunk-2EG65KGO.cjs} +2 -2
- package/dist/{chunk-MDR7WUX6.cjs → chunk-2JV7MJIF.cjs} +10 -11
- package/dist/{chunk-LPA6WYFD.cjs → chunk-2WD4ZL27.cjs} +4 -4
- package/dist/chunk-3IVDCAFM.mjs +10 -0
- package/dist/{chunk-U7XH7M5B.mjs → chunk-3NSSQHRK.mjs} +7 -8
- package/dist/{chunk-OWEYAVGT.mjs → chunk-3OMGBQ7I.mjs} +8 -5
- package/dist/chunk-3PDV3ZKD.cjs +26 -0
- package/dist/{chunk-ZZLF2YWP.mjs → chunk-3TUONMQ6.mjs} +1 -1
- package/dist/{chunk-TPPM276W.mjs → chunk-3VVQWVDE.mjs} +1 -1
- package/dist/{chunk-JA6XS5KY.cjs → chunk-3XTBLV6T.cjs} +3 -3
- package/dist/chunk-4B44SRRP.cjs +12 -0
- package/dist/{chunk-NT5ZTF56.mjs → chunk-4JGGLCXT.mjs} +1 -1
- package/dist/{chunk-KMCZXNKA.mjs → chunk-4THQPG6Y.mjs} +1 -1
- package/dist/{chunk-PQEAXTVY.mjs → chunk-5KJP6A6C.mjs} +12 -26
- package/dist/chunk-5XBMFADS.cjs +42 -0
- package/dist/{chunk-HKJCPZZG.cjs → chunk-64L2SNKA.cjs} +2 -2
- package/dist/chunk-6BD5MQ5R.cjs +8 -0
- package/dist/chunk-6DYF6WO6.mjs +24 -0
- package/dist/{chunk-2FGRTFK4.mjs → chunk-6XOTWZFC.mjs} +2 -2
- package/dist/{chunk-AAWWWYRN.cjs → chunk-7GJVMFKJ.cjs} +4 -4
- package/dist/{chunk-C4E2MFZB.mjs → chunk-7HOEFGEO.mjs} +1 -1
- package/dist/chunk-7KQXX7QB.mjs +54 -0
- package/dist/{chunk-AJYO5W6O.mjs → chunk-7P563TWH.mjs} +4 -4
- package/dist/{chunk-BIUDC66P.mjs → chunk-7UO6NLB6.mjs} +9 -11
- package/dist/{chunk-OTR4SFDC.cjs → chunk-A2UZY7Y2.cjs} +2 -2
- package/dist/chunk-ACYOVCGH.mjs +30 -0
- package/dist/chunk-ACYZOKPT.mjs +64 -0
- package/dist/chunk-AJQEHMYV.cjs +47 -0
- package/dist/{chunk-7YMH34JL.cjs → chunk-AOV3ADTV.cjs} +2 -2
- package/dist/{chunk-A2PCEL5S.mjs → chunk-AYYX3TVN.mjs} +2 -2
- package/dist/{chunk-MEE3IHTT.mjs → chunk-BFNETXJK.mjs} +185 -22
- package/dist/{chunk-62VCQ2SU.cjs → chunk-BSOJYJ4D.cjs} +1 -1
- package/dist/{chunk-QUFZWF4E.cjs → chunk-C7WHIFJZ.cjs} +4 -4
- package/dist/chunk-CFOMX6SF.mjs +328 -0
- package/dist/{chunk-CZ2YNM7Y.mjs → chunk-CGUQWS2I.mjs} +1 -1
- package/dist/chunk-CHYXRETV.cjs +23 -0
- package/dist/{chunk-INHZ5D7P.mjs → chunk-CZ4GQOXG.mjs} +1 -6
- package/dist/{chunk-CUOGY4FW.mjs → chunk-D4DKSGER.mjs} +1 -1
- package/dist/{chunk-MUQYO2G3.cjs → chunk-D5WOPTKY.cjs} +2 -2
- package/dist/{chunk-D3IW2NW6.mjs → chunk-E2EMVLII.mjs} +1 -1
- package/dist/{chunk-CWAVHHJA.cjs → chunk-EAXBNWXE.cjs} +2 -2
- package/dist/{chunk-73VF2W3D.mjs → chunk-EI5ZOFWX.mjs} +1 -1
- package/dist/{chunk-MIGXY5PR.mjs → chunk-EXQQRW7T.mjs} +1 -1
- package/dist/{chunk-7LLDKYND.mjs → chunk-FK6ZROZE.mjs} +31 -29
- package/dist/chunk-G6U2K2GR.cjs +32 -0
- package/dist/{chunk-DREOOKO2.cjs → chunk-GOGJVFRN.cjs} +4 -4
- package/dist/{chunk-W3J4QTKS.cjs → chunk-H6MFBIRB.cjs} +7 -7
- package/dist/{chunk-NSQOQD43.cjs → chunk-HBIZQDDS.cjs} +1 -6
- package/dist/{chunk-7RIGSS5X.cjs → chunk-HN3AMWUM.cjs} +2 -2
- package/dist/chunk-HPK4YEVK.cjs +27 -0
- package/dist/{chunk-EC4HJUX6.cjs → chunk-IQ5MDNCR.cjs} +4 -4
- package/dist/chunk-IXNXSECD.mjs +45 -0
- package/dist/chunk-IY36FZ5R.mjs +40 -0
- package/dist/{chunk-FFCQKAQA.cjs → chunk-JFIAWTRH.cjs} +2 -2
- package/dist/{chunk-AEVZSYGJ.cjs → chunk-JFJRNNPQ.cjs} +2 -2
- package/dist/{chunk-G7FYBSFO.cjs → chunk-JMFTHHHE.cjs} +5 -5
- package/dist/{chunk-7R2ZBAE6.mjs → chunk-JUSFLIU5.mjs} +1 -1
- package/dist/chunk-JYIVDUDL.cjs +66 -0
- package/dist/{chunk-NTGUD2JN.mjs → chunk-KBC7VNER.mjs} +1 -1
- package/dist/{chunk-JM6NBUDT.cjs → chunk-KR7VBV3B.cjs} +31 -30
- package/dist/{chunk-VTEWRMGQ.mjs → chunk-KRNKB4FM.mjs} +3 -3
- package/dist/{chunk-3UEVUYFQ.cjs → chunk-LQGXG373.cjs} +4 -6
- package/dist/{chunk-4XUJBMDE.mjs → chunk-LRSDE62T.mjs} +4 -6
- package/dist/chunk-LSKJOUAE.cjs +56 -0
- package/dist/{chunk-NO35POZW.mjs → chunk-MHJM7YMG.mjs} +4 -33
- package/dist/{chunk-ZAP4EHBO.cjs → chunk-MIT3YWUC.cjs} +2 -2
- package/dist/{chunk-GDUVAZDW.cjs → chunk-NSUFTZNC.cjs} +2 -2
- package/dist/{chunk-V2IP7UUV.mjs → chunk-PIC2EJWA.mjs} +2 -2
- package/dist/chunk-PKSIXQJX.mjs +20 -0
- package/dist/{chunk-YUHHUSIO.cjs → chunk-PTCDBU72.cjs} +2 -2
- package/dist/{chunk-SQQXY4AY.mjs → chunk-PTGMHZFS.mjs} +1 -1
- package/dist/chunk-PZMA33PL.mjs +25 -0
- package/dist/{chunk-GWIACOMY.cjs → chunk-Q2HC5ZL4.cjs} +3 -38
- package/dist/{chunk-OYNLQTHW.cjs → chunk-RGV3EB3K.cjs} +11 -13
- package/dist/{chunk-LG3PNH2P.mjs → chunk-RIJUPORK.mjs} +1 -1
- package/dist/{chunk-QBFOBDBC.cjs → chunk-RZILHP75.cjs} +2 -2
- package/dist/{chunk-UCRLH44Q.cjs → chunk-SPRBKXGP.cjs} +2 -2
- package/dist/{chunk-PIXIN3IG.mjs → chunk-SYX6TMCQ.mjs} +1 -1
- package/dist/chunk-TC3W4VRO.mjs +6 -0
- package/dist/{chunk-L26ULDYM.mjs → chunk-THMYDDZF.mjs} +1 -1
- package/dist/{chunk-VO3C6RE2.mjs → chunk-UA3OTLX4.mjs} +2 -2
- package/dist/{chunk-6CM4GYJU.mjs → chunk-VEWWUO2N.mjs} +1 -1
- package/dist/{chunk-76V4RD4V.cjs → chunk-VLOFKTSL.cjs} +3 -3
- package/dist/{chunk-6J7ZVRSY.mjs → chunk-VUMOJPEC.mjs} +1 -1
- package/dist/chunk-WGVKFNG6.mjs +5 -0
- package/dist/{chunk-JD4J3RDN.cjs → chunk-WHV4VATL.cjs} +12 -26
- package/dist/{chunk-55RSKLJ5.cjs → chunk-XG56MLQH.cjs} +4 -4
- package/dist/{chunk-TZC4ST5T.cjs → chunk-XOIIYO5J.cjs} +20 -335
- package/dist/{chunk-M5UZ3SBY.cjs → chunk-Z6KE4XDB.cjs} +214 -47
- package/dist/{chunk-AIYM5PFP.cjs → chunk-ZFIEYXJO.cjs} +8 -4
- package/dist/{chunk-5TXABUNC.mjs → chunk-ZNM6PNI6.mjs} +1 -1
- package/dist/{chunk-EQIEKFCA.cjs → chunk-ZRRCYQ53.cjs} +3 -3
- package/dist/chunk-ZULCZ5L6.cjs +8 -0
- package/dist/dial/DialPanel.cjs +67 -66
- package/dist/dial/DialPanel.mjs +66 -65
- package/dist/dial/index.cjs +83 -82
- package/dist/dial/index.mjs +66 -65
- package/dist/dial/wrapped-inputs/ControlledInputs.cjs +74 -69
- package/dist/dial/wrapped-inputs/ControlledInputs.d.cts +2 -1
- package/dist/dial/wrapped-inputs/ControlledInputs.d.ts +2 -1
- package/dist/dial/wrapped-inputs/ControlledInputs.mjs +66 -65
- package/dist/dial/wrapped-inputs/DialInputs.cjs +86 -77
- package/dist/dial/wrapped-inputs/DialInputs.d.cts +3 -1
- package/dist/dial/wrapped-inputs/DialInputs.d.ts +3 -1
- package/dist/dial/wrapped-inputs/DialInputs.mjs +66 -65
- package/dist/dial/wrapped-inputs/DialPresetsInput.cjs +124 -0
- package/dist/dial/wrapped-inputs/DialPresetsInput.d.cts +16 -0
- package/dist/dial/wrapped-inputs/DialPresetsInput.d.ts +16 -0
- package/dist/dial/wrapped-inputs/DialPresetsInput.mjs +115 -0
- package/dist/dial/wrapped-inputs/DialVectorInput.cjs +67 -66
- package/dist/dial/wrapped-inputs/DialVectorInput.mjs +66 -65
- package/dist/dial/wrapped-inputs/index.cjs +99 -82
- package/dist/dial/wrapped-inputs/index.d.cts +3 -2
- package/dist/dial/wrapped-inputs/index.d.ts +3 -2
- package/dist/dial/wrapped-inputs/index.mjs +66 -65
- package/dist/highlight-cursor/enhanced-components.cjs +12 -12
- package/dist/highlight-cursor/enhanced-components.mjs +7 -7
- package/dist/highlight-cursor/index.cjs +12 -12
- package/dist/highlight-cursor/index.mjs +7 -7
- package/dist/hooks/index.cjs +21 -21
- package/dist/hooks/index.mjs +4 -4
- package/dist/hooks/useQueryParams.cjs +3 -3
- package/dist/hooks/useQueryParams.mjs +2 -2
- package/dist/index.cjs +404 -423
- package/dist/index.css +13 -13
- package/dist/index.d.cts +4 -3
- package/dist/index.d.ts +4 -3
- package/dist/index.mjs +66 -65
- package/dist/ui/DialBadge.cjs +12 -8
- package/dist/ui/DialBadge.d.cts +11 -6
- package/dist/ui/DialBadge.d.ts +11 -6
- package/dist/ui/DialBadge.mjs +5 -5
- package/dist/ui/UIKitBadge.cjs +9 -9
- package/dist/ui/UIKitBadge.mjs +5 -5
- package/dist/ui/avatar.cjs +9 -33
- package/dist/ui/avatar.d.cts +4 -61
- package/dist/ui/avatar.d.ts +4 -61
- package/dist/ui/avatar.mjs +5 -5
- package/dist/ui/badge.cjs +4 -4
- package/dist/ui/badge.mjs +4 -4
- package/dist/ui/button.cjs +7 -7
- package/dist/ui/button.mjs +5 -5
- package/dist/ui/card.cjs +12 -12
- package/dist/ui/card.mjs +5 -5
- package/dist/ui/checkbox.cjs +4 -4
- package/dist/ui/checkbox.mjs +4 -4
- package/dist/ui/collapsible.cjs +4 -4
- package/dist/ui/collapsible.mjs +4 -4
- package/dist/ui/drawer.cjs +4 -4
- package/dist/ui/drawer.mjs +4 -4
- package/dist/ui/dropdown.cjs +20 -20
- package/dist/ui/dropdown.d.cts +18 -27
- package/dist/ui/dropdown.d.ts +18 -27
- package/dist/ui/dropdown.mjs +5 -5
- package/dist/ui/index.cjs +354 -373
- package/dist/ui/index.d.cts +4 -3
- package/dist/ui/index.d.ts +4 -3
- package/dist/ui/index.mjs +63 -62
- package/dist/ui/inputs/color-input.cjs +7 -7
- package/dist/ui/inputs/color-input.mjs +6 -6
- package/dist/ui/inputs/index.cjs +62 -57
- package/dist/ui/inputs/index.d.cts +1 -0
- package/dist/ui/inputs/index.d.ts +1 -0
- package/dist/ui/inputs/index.mjs +25 -24
- package/dist/ui/inputs/input-numbers.cjs +7 -7
- package/dist/ui/inputs/input-numbers.mjs +6 -6
- package/dist/ui/inputs/input.cjs +8 -8
- package/dist/ui/inputs/input.mjs +5 -5
- package/dist/ui/inputs/number-inputs/CmInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/CmInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/DegInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/DegInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/EulerDegInput.cjs +10 -10
- package/dist/ui/inputs/number-inputs/EulerDegInput.mjs +9 -9
- package/dist/ui/inputs/number-inputs/EulerInput.cjs +9 -9
- package/dist/ui/inputs/number-inputs/EulerInput.mjs +8 -8
- package/dist/ui/inputs/number-inputs/EulerRadInput.cjs +9 -10
- package/dist/ui/inputs/number-inputs/EulerRadInput.d.cts +6 -3
- package/dist/ui/inputs/number-inputs/EulerRadInput.d.ts +6 -3
- package/dist/ui/inputs/number-inputs/EulerRadInput.mjs +8 -9
- package/dist/ui/inputs/number-inputs/InchInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/InchInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/IntInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/IntInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/KVectorInput.cjs +9 -9
- package/dist/ui/inputs/number-inputs/KVectorInput.mjs +8 -8
- package/dist/ui/inputs/number-inputs/QuaternionInput.cjs +9 -9
- package/dist/ui/inputs/number-inputs/QuaternionInput.mjs +8 -8
- package/dist/ui/inputs/number-inputs/RadInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/RadInput.d.cts +1 -0
- package/dist/ui/inputs/number-inputs/RadInput.d.ts +1 -0
- package/dist/ui/inputs/number-inputs/RadInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/TimeInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/TimeInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/Vec3Input.cjs +9 -9
- package/dist/ui/inputs/number-inputs/Vec3Input.mjs +8 -8
- package/dist/ui/inputs/number-inputs/VectorInput.cjs +8 -8
- package/dist/ui/inputs/number-inputs/VectorInput.mjs +7 -7
- package/dist/ui/inputs/number-inputs/index.cjs +42 -42
- package/dist/ui/inputs/number-inputs/index.mjs +19 -19
- package/dist/ui/inputs/presets-input.cjs +9 -9
- package/dist/ui/inputs/presets-input.mjs +8 -8
- package/dist/ui/inputs/presets-rad-input.cjs +24 -0
- package/dist/ui/inputs/presets-rad-input.d.cts +17 -0
- package/dist/ui/inputs/presets-rad-input.d.ts +17 -0
- package/dist/ui/inputs/presets-rad-input.mjs +15 -0
- package/dist/ui/inputs/text-input.cjs +7 -7
- package/dist/ui/inputs/text-input.mjs +6 -6
- package/dist/ui/label.cjs +4 -4
- package/dist/ui/label.mjs +4 -4
- package/dist/ui/layout.cjs +4 -4
- package/dist/ui/layout.mjs +4 -4
- package/dist/ui/layouts/dock-layout/DockLayoutView.cjs +4 -4
- package/dist/ui/layouts/dock-layout/DockLayoutView.mjs +4 -4
- package/dist/ui/layouts/dock-layout/LayoutSlots.cjs +4 -4
- package/dist/ui/layouts/dock-layout/LayoutSlots.mjs +4 -4
- package/dist/ui/layouts/dock-layout/index.cjs +4 -4
- package/dist/ui/layouts/dock-layout/index.mjs +4 -4
- package/dist/ui/layouts/index.cjs +8 -8
- package/dist/ui/layouts/index.mjs +7 -7
- package/dist/ui/layouts/liquid-layout/LayoutSlots.cjs +11 -11
- package/dist/ui/layouts/liquid-layout/LayoutSlots.mjs +5 -5
- package/dist/ui/layouts/liquid-layout/LiquidLayoutView.cjs +7 -7
- package/dist/ui/layouts/liquid-layout/LiquidLayoutView.mjs +6 -6
- package/dist/ui/layouts/liquid-layout/index.cjs +7 -7
- package/dist/ui/layouts/liquid-layout/index.mjs +6 -6
- package/dist/ui/modal.cjs +4 -4
- package/dist/ui/modal.mjs +4 -4
- package/dist/ui/navigation.cjs +7 -7
- package/dist/ui/navigation.mjs +6 -6
- package/dist/ui/pagination.cjs +13 -13
- package/dist/ui/pagination.mjs +6 -6
- package/dist/ui/panel.cjs +4 -4
- package/dist/ui/panel.mjs +4 -4
- package/dist/ui/popover.cjs +4 -4
- package/dist/ui/popover.mjs +4 -4
- package/dist/ui/radio-group.cjs +4 -4
- package/dist/ui/radio-group.mjs +4 -4
- package/dist/ui/resizable.cjs +4 -4
- package/dist/ui/resizable.mjs +4 -4
- package/dist/ui/select.cjs +4 -4
- package/dist/ui/select.mjs +4 -4
- package/dist/ui/separator.cjs +4 -4
- package/dist/ui/separator.mjs +4 -4
- package/dist/ui/sheet.cjs +4 -4
- package/dist/ui/sheet.mjs +4 -4
- package/dist/ui/sidebar.cjs +32 -32
- package/dist/ui/sidebar.mjs +8 -8
- package/dist/ui/simple-tree-view.cjs +4 -4
- package/dist/ui/simple-tree-view.mjs +4 -4
- package/dist/ui/skeleton.cjs +4 -4
- package/dist/ui/skeleton.mjs +4 -4
- package/dist/ui/slider.cjs +4 -4
- package/dist/ui/slider.mjs +4 -4
- package/dist/ui/switch.cjs +4 -4
- package/dist/ui/switch.mjs +4 -4
- package/dist/ui/table.cjs +4 -4
- package/dist/ui/table.mjs +4 -4
- package/dist/ui/tabs.cjs +4 -4
- package/dist/ui/tabs.mjs +4 -4
- package/dist/ui/textarea.cjs +4 -4
- package/dist/ui/textarea.mjs +4 -4
- package/dist/ui/theme/ThemeProvider.cjs +16 -20
- package/dist/ui/theme/ThemeProvider.d.cts +3 -10
- package/dist/ui/theme/ThemeProvider.d.ts +3 -10
- package/dist/ui/theme/ThemeProvider.mjs +2 -2
- package/dist/ui/theme/ThemeToggles.cjs +11 -11
- package/dist/ui/theme/ThemeToggles.mjs +8 -8
- package/dist/ui/theme/index.cjs +16 -20
- package/dist/ui/theme/index.d.cts +1 -1
- package/dist/ui/theme/index.d.ts +1 -1
- package/dist/ui/theme/index.mjs +8 -8
- package/dist/ui/theme/themeScript.cjs +2 -2
- package/dist/ui/theme/themeScript.d.cts +1 -2
- package/dist/ui/theme/themeScript.d.ts +1 -2
- package/dist/ui/theme/themeScript.mjs +1 -1
- package/dist/ui/toggle-buttons.cjs +4 -4
- package/dist/ui/toggle-buttons.mjs +4 -4
- package/dist/ui/toggle-group.cjs +4 -4
- package/dist/ui/toggle-group.mjs +4 -4
- package/dist/ui/toggle.cjs +4 -4
- package/dist/ui/toggle.mjs +4 -4
- package/dist/ui/toolbar.cjs +8 -8
- package/dist/ui/toolbar.mjs +5 -5
- package/dist/ui/tooltip.cjs +4 -4
- package/dist/ui/tooltip.mjs +4 -4
- package/dist/ui/tree-view/TreeSearchBar.cjs +7 -7
- package/dist/ui/tree-view/TreeSearchBar.mjs +6 -6
- package/dist/ui/tree-view/TreeView.cjs +4 -4
- package/dist/ui/tree-view/TreeView.mjs +4 -4
- package/dist/ui/tree-view/index.cjs +8 -8
- package/dist/ui/tree-view/index.mjs +7 -7
- package/dist/ui/tree-view-legacy.cjs +10 -10
- package/dist/ui/tree-view-legacy.mjs +6 -6
- package/dist/ui/waterfall/CursorOverlay.cjs +4 -4
- package/dist/ui/waterfall/CursorOverlay.mjs +4 -4
- package/dist/ui/waterfall/TimelineEvent.cjs +4 -4
- package/dist/ui/waterfall/TimelineEvent.mjs +4 -4
- package/dist/ui/waterfall/TimelineProcessBar.cjs +4 -4
- package/dist/ui/waterfall/TimelineProcessBar.mjs +4 -4
- package/dist/ui/waterfall/Wedges.cjs +4 -4
- package/dist/ui/waterfall/Wedges.mjs +4 -4
- package/dist/ui/waterfall/index.cjs +12 -12
- package/dist/ui/waterfall/index.mjs +11 -11
- package/package.json +7 -1
- package/src/auth/context/auth-context.ts +16 -0
- package/src/auth/handler/create-client.ts +23 -0
- package/src/auth/handler/sign-in-handler.ts +66 -0
- package/src/auth/hooks/use-vuer-auth.ts +10 -0
- package/src/auth/hooks/use-vuer-method.ts +35 -0
- package/src/auth/index.ts +6 -0
- package/src/auth/localstorage-key.ts +3 -0
- package/src/auth/types.ts +56 -0
- package/src/auth/vuer-auth-provider.tsx +35 -0
- package/src/dial/DialPanel.tsx +46 -3
- package/src/dial/wrapped-inputs/ControlledInputs.tsx +17 -0
- package/src/dial/wrapped-inputs/DialInputs.tsx +77 -0
- package/src/dial/wrapped-inputs/DialPresetsInput.tsx +79 -0
- package/src/dial/wrapped-inputs/index.ts +6 -0
- package/src/ui/DialBadge.tsx +18 -7
- package/src/ui/avatar.tsx +4 -85
- package/src/ui/button.tsx +0 -5
- package/src/ui/card.tsx +1 -1
- package/src/ui/dropdown.tsx +21 -366
- package/src/ui/inputs/index.tsx +1 -0
- package/src/ui/inputs/input.tsx +3 -5
- package/src/ui/inputs/number-inputs/EulerRadInput.tsx +46 -5
- package/src/ui/inputs/number-inputs/RadInput.tsx +31 -5
- package/src/ui/inputs/presets-rad-input.tsx +77 -0
- package/src/ui/layouts/liquid-layout/LayoutSlots.tsx +2 -2
- package/src/ui/sidebar.tsx +7 -8
- package/src/ui/theme/ThemeProvider.tsx +69 -52
- package/src/ui/theme/ThemeToggles.tsx +12 -12
- package/src/ui/theme/index.ts +6 -16
- package/src/ui/theme/themeScript.tsx +24 -50
- package/src/ui/toolbar.tsx +3 -3
- package/dist/chunk-DVKONMS7.cjs +0 -20
- package/dist/chunk-GPV4XELL.mjs +0 -18
- package/dist/chunk-H2GERFBG.cjs +0 -13
- package/dist/chunk-H4IDSUG5.mjs +0 -643
- package/dist/chunk-TY47DFGO.mjs +0 -11
- package/dist/{chunk-ADYUCJMQ.mjs → chunk-2KQRWXNO.mjs} +0 -0
- package/dist/{chunk-SQRAUVEP.cjs → chunk-63OJOP6W.cjs} +0 -0
- package/dist/{chunk-LYZJNEOR.cjs → chunk-Q4XH2Z5M.cjs} +1 -1
- package/dist/{chunk-OEIF3JCH.mjs → chunk-U3LN5NB6.mjs} +1 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { betterAuth } from "better-auth";
|
|
2
|
+
import { customSessionClient } from "better-auth/client/plugins";
|
|
3
|
+
import { customSession } from "better-auth/plugins";
|
|
4
|
+
import { createAuthClient } from "better-auth/react";
|
|
5
|
+
|
|
6
|
+
export const auth = betterAuth({
|
|
7
|
+
plugins: [
|
|
8
|
+
customSession(async (session) => {
|
|
9
|
+
return {
|
|
10
|
+
...session,
|
|
11
|
+
session: { ...session.session, sessionToken: "" },
|
|
12
|
+
};
|
|
13
|
+
}),
|
|
14
|
+
],
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export const options = {
|
|
18
|
+
plugins: [customSessionClient<typeof auth>()],
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
type BetterAuth = ReturnType<typeof createAuthClient<typeof options>>;
|
|
22
|
+
|
|
23
|
+
type Session = BetterAuth["$Infer"]["Session"];
|
|
24
|
+
|
|
25
|
+
interface SignInWithPopup {
|
|
26
|
+
baseURL: string;
|
|
27
|
+
authMode?: "popup";
|
|
28
|
+
callbackURL?: string;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
interface SignInWithRedirect {
|
|
32
|
+
baseURL: string;
|
|
33
|
+
authMode: "redirect";
|
|
34
|
+
callbackURL: string;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
type Refetch = ReturnType<BetterAuth["useSession"]>["refetch"];
|
|
38
|
+
|
|
39
|
+
type SignOut = ReturnType<BetterAuth["signOut"]>;
|
|
40
|
+
|
|
41
|
+
type SignInParams = SignInWithPopup | SignInWithRedirect;
|
|
42
|
+
|
|
43
|
+
type SignInWithOutBaseURLParams =
|
|
44
|
+
| Omit<SignInWithPopup, "baseURL">
|
|
45
|
+
| Omit<SignInWithRedirect, "baseURL">;
|
|
46
|
+
|
|
47
|
+
export type {
|
|
48
|
+
SignOut,
|
|
49
|
+
Refetch,
|
|
50
|
+
Session,
|
|
51
|
+
BetterAuth,
|
|
52
|
+
SignInParams,
|
|
53
|
+
SignInWithOutBaseURLParams,
|
|
54
|
+
SignInWithPopup,
|
|
55
|
+
SignInWithRedirect,
|
|
56
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PropsWithChildren, useEffect, useMemo, useRef } from "react";
|
|
2
|
+
|
|
3
|
+
import { AuthContext } from "./context/auth-context";
|
|
4
|
+
import { createClient } from "./handler/create-client";
|
|
5
|
+
import { bearerToken } from "./localstorage-key";
|
|
6
|
+
|
|
7
|
+
interface Props {
|
|
8
|
+
baseURL: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export function VuerAuthProvider({ children, baseURL }: PropsWithChildren<Props>) {
|
|
12
|
+
const authClient = useRef(createClient(baseURL));
|
|
13
|
+
|
|
14
|
+
const { data, isPending, refetch } = authClient.current.useSession();
|
|
15
|
+
|
|
16
|
+
useEffect(() => {
|
|
17
|
+
const searchParams = new URLSearchParams(window.location.search);
|
|
18
|
+
const session = searchParams.get("token");
|
|
19
|
+
if (session) {
|
|
20
|
+
localStorage.setItem(bearerToken, encodeURIComponent(session));
|
|
21
|
+
refetch();
|
|
22
|
+
window.history.replaceState({}, "", window.location.pathname);
|
|
23
|
+
}
|
|
24
|
+
}, [refetch]);
|
|
25
|
+
|
|
26
|
+
return (
|
|
27
|
+
<AuthContext.Provider
|
|
28
|
+
value={useMemo(() => {
|
|
29
|
+
return { data, isPending, refetch, authClient: authClient.current, baseURL };
|
|
30
|
+
}, [baseURL, data, isPending, refetch])}
|
|
31
|
+
>
|
|
32
|
+
{children}
|
|
33
|
+
</AuthContext.Provider>
|
|
34
|
+
);
|
|
35
|
+
}
|
package/src/dial/DialPanel.tsx
CHANGED
|
@@ -3,6 +3,7 @@ import React from "react";
|
|
|
3
3
|
import { DialSchema, DialGroupConfig, LabelPositionT } from "./DialProvider";
|
|
4
4
|
import {
|
|
5
5
|
DialBooleanInput,
|
|
6
|
+
DialColorInput,
|
|
6
7
|
DialEulerDegInput,
|
|
7
8
|
DialIntInput,
|
|
8
9
|
DialNumberInput,
|
|
@@ -11,8 +12,10 @@ import {
|
|
|
11
12
|
DialTextInput,
|
|
12
13
|
DialVec3Input,
|
|
13
14
|
DialVectorInput,
|
|
15
|
+
DialPresetsInput,
|
|
16
|
+
DialEulerRadInput,
|
|
17
|
+
DialNumberRadInput,
|
|
14
18
|
} from "./wrapped-inputs";
|
|
15
|
-
|
|
16
19
|
interface DialSchemaRendererProps {
|
|
17
20
|
schemas: DialSchema[];
|
|
18
21
|
groups?: DialGroupConfig[];
|
|
@@ -88,6 +91,17 @@ export const DialPanel: React.FC<DialSchemaRendererProps> = ({ schemas, groups:
|
|
|
88
91
|
/>
|
|
89
92
|
);
|
|
90
93
|
|
|
94
|
+
case "euler-rad":
|
|
95
|
+
return (
|
|
96
|
+
<DialEulerRadInput
|
|
97
|
+
key={name}
|
|
98
|
+
name={name}
|
|
99
|
+
label={label}
|
|
100
|
+
step={step}
|
|
101
|
+
labelPosition={labelPosition}
|
|
102
|
+
/>
|
|
103
|
+
);
|
|
104
|
+
|
|
91
105
|
case "vector":
|
|
92
106
|
case "vector-6":
|
|
93
107
|
case "number-group":
|
|
@@ -99,6 +113,20 @@ export const DialPanel: React.FC<DialSchemaRendererProps> = ({ schemas, groups:
|
|
|
99
113
|
<DialBooleanInput key={name} name={name} label={label} labelPosition={labelPosition} />
|
|
100
114
|
);
|
|
101
115
|
|
|
116
|
+
case "number-slider":
|
|
117
|
+
// Integer input
|
|
118
|
+
return (
|
|
119
|
+
<DialSliderInput
|
|
120
|
+
key={name}
|
|
121
|
+
name={name}
|
|
122
|
+
label={label}
|
|
123
|
+
min={min}
|
|
124
|
+
max={max}
|
|
125
|
+
step={step}
|
|
126
|
+
labelPosition={labelPosition}
|
|
127
|
+
/>
|
|
128
|
+
);
|
|
129
|
+
|
|
102
130
|
case "number-int":
|
|
103
131
|
// Integer input
|
|
104
132
|
return (
|
|
@@ -111,11 +139,23 @@ export const DialPanel: React.FC<DialSchemaRendererProps> = ({ schemas, groups:
|
|
|
111
139
|
/>
|
|
112
140
|
);
|
|
113
141
|
|
|
142
|
+
case "number-rad":
|
|
143
|
+
// Radian input displayed as degrees
|
|
144
|
+
return (
|
|
145
|
+
<DialNumberRadInput
|
|
146
|
+
key={name}
|
|
147
|
+
name={name}
|
|
148
|
+
label={label}
|
|
149
|
+
step={step}
|
|
150
|
+
labelPosition={labelPosition}
|
|
151
|
+
/>
|
|
152
|
+
);
|
|
153
|
+
|
|
114
154
|
case "number":
|
|
115
155
|
// Use slider if min and max are defined, otherwise use number input
|
|
116
156
|
if (min !== undefined && max !== undefined && !options) {
|
|
117
157
|
return (
|
|
118
|
-
<
|
|
158
|
+
<DialNumberInput
|
|
119
159
|
key={name}
|
|
120
160
|
name={name}
|
|
121
161
|
label={label}
|
|
@@ -130,7 +170,7 @@ export const DialPanel: React.FC<DialSchemaRendererProps> = ({ schemas, groups:
|
|
|
130
170
|
// Use select if options are provided
|
|
131
171
|
if (options && options.length > 0) {
|
|
132
172
|
return (
|
|
133
|
-
<
|
|
173
|
+
<DialPresetsInput
|
|
134
174
|
key={name}
|
|
135
175
|
name={name}
|
|
136
176
|
label={label}
|
|
@@ -153,6 +193,9 @@ export const DialPanel: React.FC<DialSchemaRendererProps> = ({ schemas, groups:
|
|
|
153
193
|
/>
|
|
154
194
|
);
|
|
155
195
|
|
|
196
|
+
case "color":
|
|
197
|
+
return <DialColorInput key={name} name={name} label={label} />;
|
|
198
|
+
|
|
156
199
|
case "string":
|
|
157
200
|
case "text":
|
|
158
201
|
// If options are provided, use select
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from "react";
|
|
2
2
|
import { LabelPositionT, useDialSchema } from "../DialProvider";
|
|
3
3
|
import {
|
|
4
|
+
ColorInput,
|
|
4
5
|
FormLayout,
|
|
5
6
|
Input,
|
|
6
7
|
InputSlot,
|
|
@@ -101,6 +102,22 @@ export const DialBooleanInput: React.FC<DialInputProps> = ({ name, label, labelP
|
|
|
101
102
|
);
|
|
102
103
|
};
|
|
103
104
|
|
|
105
|
+
// Dial-wrapped ColorInput
|
|
106
|
+
export const DialColorInput: React.FC<DialInputProps> = ({ name, label }) => {
|
|
107
|
+
const { getValue, setValue } = useDialSchema();
|
|
108
|
+
const value = (getValue(name) ?? "") as string;
|
|
109
|
+
|
|
110
|
+
const inputComp = (
|
|
111
|
+
<ColorInput value={value} onChange={(e) => setValue(name, e.target.value)} prefix={label} />
|
|
112
|
+
);
|
|
113
|
+
|
|
114
|
+
if (!label) {
|
|
115
|
+
return inputComp;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
return <DialInputWrapper label={label}>{inputComp}</DialInputWrapper>;
|
|
119
|
+
};
|
|
120
|
+
|
|
104
121
|
export const DialSelectInput: React.FC<DialInputProps> = ({
|
|
105
122
|
name,
|
|
106
123
|
options = [],
|
|
@@ -16,6 +16,7 @@ import {
|
|
|
16
16
|
Vec3Input,
|
|
17
17
|
VectorInput,
|
|
18
18
|
} from "../../index";
|
|
19
|
+
import { EulerRadInput } from "../../ui/inputs/number-inputs/EulerRadInput";
|
|
19
20
|
import { LabelPositionT, useDialSchema } from "../DialProvider";
|
|
20
21
|
|
|
21
22
|
// Base props for all dial-wrapped inputs
|
|
@@ -435,3 +436,79 @@ export const DialTextInput: React.FC<DialWrapperProps & { placeholder?: string }
|
|
|
435
436
|
);
|
|
436
437
|
}
|
|
437
438
|
};
|
|
439
|
+
|
|
440
|
+
// Dial-wrapped EulerRadInput (radians with degree display)
|
|
441
|
+
export const DialEulerRadInput: React.FC<DialWrapperProps> = ({
|
|
442
|
+
name,
|
|
443
|
+
label,
|
|
444
|
+
size = "sm",
|
|
445
|
+
step,
|
|
446
|
+
labelPosition,
|
|
447
|
+
}) => {
|
|
448
|
+
const { getValue, setValue } = useDialSchema();
|
|
449
|
+
const value = (getValue(name) ?? [0, 0, 0]) as [number, number, number];
|
|
450
|
+
|
|
451
|
+
if (labelPosition === "inline") {
|
|
452
|
+
return (
|
|
453
|
+
<EulerRadInput
|
|
454
|
+
value={value}
|
|
455
|
+
onValuesChange={(val) => setValue(name, val)}
|
|
456
|
+
size={size}
|
|
457
|
+
step={step}
|
|
458
|
+
display="deg"
|
|
459
|
+
prefix={label ? [label, "", ""] : undefined}
|
|
460
|
+
/>
|
|
461
|
+
);
|
|
462
|
+
} else {
|
|
463
|
+
return (
|
|
464
|
+
<DialInputWrapper label={label}>
|
|
465
|
+
<EulerRadInput
|
|
466
|
+
value={value}
|
|
467
|
+
onValuesChange={(val) => setValue(name, val)}
|
|
468
|
+
size={size}
|
|
469
|
+
step={step}
|
|
470
|
+
display="deg"
|
|
471
|
+
/>
|
|
472
|
+
</DialInputWrapper>
|
|
473
|
+
);
|
|
474
|
+
}
|
|
475
|
+
};
|
|
476
|
+
|
|
477
|
+
// Dial-wrapped number-rad input (displays as degrees but stores as radians)
|
|
478
|
+
export const DialNumberRadInput: React.FC<DialWrapperProps> = ({
|
|
479
|
+
name,
|
|
480
|
+
label,
|
|
481
|
+
size = "sm",
|
|
482
|
+
step,
|
|
483
|
+
labelPosition,
|
|
484
|
+
}) => {
|
|
485
|
+
const { getValue, setValue } = useDialSchema();
|
|
486
|
+
const value = (getValue(name) ?? 0) as number;
|
|
487
|
+
|
|
488
|
+
// Convert radians to degrees for display
|
|
489
|
+
const degValue = (value * 180) / Math.PI;
|
|
490
|
+
|
|
491
|
+
// Handler to convert degrees back to radians
|
|
492
|
+
const handleChange = (deg: number) => {
|
|
493
|
+
const rad = (deg * Math.PI) / 180;
|
|
494
|
+
setValue(name, rad);
|
|
495
|
+
};
|
|
496
|
+
|
|
497
|
+
if (labelPosition === "inline") {
|
|
498
|
+
return (
|
|
499
|
+
<DegInput
|
|
500
|
+
value={degValue}
|
|
501
|
+
onChange={handleChange}
|
|
502
|
+
size={size}
|
|
503
|
+
step={step}
|
|
504
|
+
prefix={label ? [label] : undefined}
|
|
505
|
+
/>
|
|
506
|
+
);
|
|
507
|
+
} else {
|
|
508
|
+
return (
|
|
509
|
+
<DialInputWrapper label={label}>
|
|
510
|
+
<DegInput value={degValue} onChange={handleChange} size={size} step={step} />
|
|
511
|
+
</DialInputWrapper>
|
|
512
|
+
);
|
|
513
|
+
}
|
|
514
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
|
|
3
|
+
import { PresetsInput } from "../../ui/inputs/presets-input";
|
|
4
|
+
import { FormLayout, Label } from "../../index";
|
|
5
|
+
import { LabelPositionT, useDialSchema } from "../DialProvider";
|
|
6
|
+
|
|
7
|
+
interface DialPresetsInputProps {
|
|
8
|
+
name: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
size?: "sm" | "md" | "lg";
|
|
11
|
+
labelPosition?: LabelPositionT;
|
|
12
|
+
options: Array<string | number | { label: string; value: string | number }>;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
const DialInputWrapper: React.FC<{
|
|
16
|
+
label?: string;
|
|
17
|
+
children: React.ReactElement;
|
|
18
|
+
}> = ({ label, children }) => {
|
|
19
|
+
if (!label) {
|
|
20
|
+
return <>{children}</>;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return (
|
|
24
|
+
<FormLayout orientation="label-top">
|
|
25
|
+
<Label size="sm">{label}</Label>
|
|
26
|
+
{children}
|
|
27
|
+
</FormLayout>
|
|
28
|
+
);
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const DialPresetsInput: React.FC<DialPresetsInputProps> = ({
|
|
32
|
+
name,
|
|
33
|
+
label,
|
|
34
|
+
size = "sm",
|
|
35
|
+
labelPosition,
|
|
36
|
+
options,
|
|
37
|
+
}) => {
|
|
38
|
+
const { getValue, setValue } = useDialSchema();
|
|
39
|
+
const value = (getValue(name) ?? 0) as number;
|
|
40
|
+
|
|
41
|
+
// Extract preset values from options
|
|
42
|
+
const presets = options
|
|
43
|
+
.slice(0, 3)
|
|
44
|
+
.map((opt) => {
|
|
45
|
+
if (typeof opt === "number") return opt;
|
|
46
|
+
if (typeof opt === "string") return parseFloat(opt);
|
|
47
|
+
return typeof opt.value === "number" ? opt.value : parseFloat(opt.value as string);
|
|
48
|
+
}) as [number, number, number];
|
|
49
|
+
|
|
50
|
+
// Pad with zeros if less than 3 presets
|
|
51
|
+
while (presets.length < 3) {
|
|
52
|
+
presets.push(0);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (labelPosition === "inline") {
|
|
56
|
+
return (
|
|
57
|
+
<div className="flex items-center gap-2">
|
|
58
|
+
{label && <Label size="sm">{label}</Label>}
|
|
59
|
+
<PresetsInput
|
|
60
|
+
value={value}
|
|
61
|
+
onChange={(val) => setValue(name, val)}
|
|
62
|
+
size={size}
|
|
63
|
+
presets={presets}
|
|
64
|
+
/>
|
|
65
|
+
</div>
|
|
66
|
+
);
|
|
67
|
+
} else {
|
|
68
|
+
return (
|
|
69
|
+
<DialInputWrapper label={label}>
|
|
70
|
+
<PresetsInput
|
|
71
|
+
value={value}
|
|
72
|
+
onChange={(val) => setValue(name, val)}
|
|
73
|
+
size={size}
|
|
74
|
+
presets={presets}
|
|
75
|
+
/>
|
|
76
|
+
</DialInputWrapper>
|
|
77
|
+
);
|
|
78
|
+
}
|
|
79
|
+
};
|
|
@@ -4,6 +4,7 @@ export {
|
|
|
4
4
|
DialNumberInput,
|
|
5
5
|
DialSelectInput,
|
|
6
6
|
DialSliderInput,
|
|
7
|
+
DialColorInput,
|
|
7
8
|
} from "./ControlledInputs";
|
|
8
9
|
|
|
9
10
|
// UIKit wrapped inputs
|
|
@@ -20,7 +21,12 @@ export {
|
|
|
20
21
|
DialInchInput,
|
|
21
22
|
DialTimeInput,
|
|
22
23
|
DialTextInput,
|
|
24
|
+
DialEulerRadInput,
|
|
25
|
+
DialNumberRadInput,
|
|
23
26
|
} from "./DialInputs";
|
|
24
27
|
|
|
28
|
+
// Presets input
|
|
29
|
+
export { DialPresetsInput } from "./DialPresetsInput";
|
|
30
|
+
|
|
25
31
|
// Variable-dimension vector input
|
|
26
32
|
export { DialVectorInput } from "./DialVectorInput";
|
package/src/ui/DialBadge.tsx
CHANGED
|
@@ -2,9 +2,14 @@ import { GitBranch } from "lucide-react";
|
|
|
2
2
|
import React from "react";
|
|
3
3
|
import { cn } from "../hooks";
|
|
4
4
|
|
|
5
|
-
// Version info for dial-cli package
|
|
6
|
-
const
|
|
7
|
-
const
|
|
5
|
+
// Version info for dial-cli package (injected at build time)
|
|
6
|
+
declare const __DIAL_VERSION__: string;
|
|
7
|
+
declare const __DIAL_PACKAGE_NAME__: string;
|
|
8
|
+
declare const __DIAL_GIT_HASH__: string;
|
|
9
|
+
|
|
10
|
+
const DIAL_PACKAGE_NAME = typeof __DIAL_PACKAGE_NAME__ !== "undefined" ? __DIAL_PACKAGE_NAME__ : "@vuer-ai/dial-cli";
|
|
11
|
+
const DIAL_PACKAGE_VERSION = typeof __DIAL_VERSION__ !== "undefined" ? __DIAL_VERSION__ : "dev";
|
|
12
|
+
const DIAL_GIT_HASH = typeof __DIAL_GIT_HASH__ !== "undefined" ? __DIAL_GIT_HASH__ : "unknown";
|
|
8
13
|
|
|
9
14
|
interface DialBadgeProps {
|
|
10
15
|
/**
|
|
@@ -27,11 +32,15 @@ interface DialBadgeProps {
|
|
|
27
32
|
* Whether to show the version
|
|
28
33
|
*/
|
|
29
34
|
version?: boolean;
|
|
35
|
+
/**
|
|
36
|
+
* Whether to show the git hash instead of version
|
|
37
|
+
*/
|
|
38
|
+
hash?: boolean;
|
|
30
39
|
}
|
|
31
40
|
|
|
32
41
|
/**
|
|
33
|
-
* Badge component that displays the dial-cli package version
|
|
34
|
-
* Format: [ dial-cli | v0.0.
|
|
42
|
+
* Badge component that displays the dial-cli package version or git hash
|
|
43
|
+
* Format: [ dial-cli | v0.0.11 ] or [ dial-cli | abc1234 ]
|
|
35
44
|
*/
|
|
36
45
|
function DialBadge({
|
|
37
46
|
className,
|
|
@@ -39,9 +48,11 @@ function DialBadge({
|
|
|
39
48
|
prefix = true,
|
|
40
49
|
linkable = true,
|
|
41
50
|
version = true,
|
|
51
|
+
hash = false,
|
|
42
52
|
}: DialBadgeProps) {
|
|
43
53
|
const packageShortName = "dial-cli";
|
|
44
|
-
const
|
|
54
|
+
const displayValue = hash ? DIAL_GIT_HASH : DIAL_PACKAGE_VERSION;
|
|
55
|
+
const versionText = version || hash ? (prefix && !hash ? `v${displayValue}` : displayValue) : undefined;
|
|
45
56
|
const npmUrl = `https://www.npmjs.com/package/${DIAL_PACKAGE_NAME}/v/${DIAL_PACKAGE_VERSION}`;
|
|
46
57
|
|
|
47
58
|
return (
|
|
@@ -93,5 +104,5 @@ function DialBadge({
|
|
|
93
104
|
);
|
|
94
105
|
}
|
|
95
106
|
|
|
96
|
-
export { DialBadge, DIAL_PACKAGE_VERSION, DIAL_PACKAGE_NAME };
|
|
107
|
+
export { DialBadge, DIAL_PACKAGE_VERSION, DIAL_PACKAGE_NAME, DIAL_GIT_HASH };
|
|
97
108
|
export type { DialBadgeProps };
|
package/src/ui/avatar.tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as AvatarPrimitive from "@radix-ui/react-avatar";
|
|
2
2
|
import React, { ComponentProps } from "react";
|
|
3
3
|
|
|
4
|
-
import { cn
|
|
4
|
+
import { cn } from "../hooks";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Avatar root component that displays a user's profile image with fallback support.
|
|
@@ -10,10 +10,7 @@ import { cn, createClientOnlyComponent } from "../hooks";
|
|
|
10
10
|
* @param className - Additional CSS classes to apply
|
|
11
11
|
* @param props - All standard Radix Avatar.Root props are supported
|
|
12
12
|
*/
|
|
13
|
-
export const
|
|
14
|
-
className,
|
|
15
|
-
...props
|
|
16
|
-
}: ComponentProps<typeof AvatarPrimitive.Root>) => (
|
|
13
|
+
export const Avatar = ({ className, ...props }: ComponentProps<typeof AvatarPrimitive.Root>) => (
|
|
17
14
|
<AvatarPrimitive.Root
|
|
18
15
|
data-slot="avatar"
|
|
19
16
|
className={cn("relative flex size-[24px] shrink-0 overflow-hidden rounded-full", className)}
|
|
@@ -21,41 +18,15 @@ export const AvatarRoot = ({
|
|
|
21
18
|
/>
|
|
22
19
|
);
|
|
23
20
|
|
|
24
|
-
/**
|
|
25
|
-
* SSR fallback component for Avatar when client-side rendering is not available.
|
|
26
|
-
* @param className - Additional CSS classes to apply
|
|
27
|
-
*/
|
|
28
|
-
export const AvatarSSRFallback = ({ className }: { className?: string }) => (
|
|
29
|
-
<span
|
|
30
|
-
data-slot="avatar"
|
|
31
|
-
className={cn("relative flex size-[24px] shrink-0 overflow-hidden rounded-full", className)}
|
|
32
|
-
/>
|
|
33
|
-
);
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Main Avatar component with client-side rendering support and SSR fallback.
|
|
37
|
-
* Use this as the container for AvatarImage and AvatarFallback components.
|
|
38
|
-
*
|
|
39
|
-
* @example
|
|
40
|
-
* ```tsx
|
|
41
|
-
* <Avatar>
|
|
42
|
-
* <AvatarImage src="/avatar.jpg" alt="User" />
|
|
43
|
-
* <AvatarFallback>JD</AvatarFallback>
|
|
44
|
-
* </Avatar>
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
export const Avatar = createClientOnlyComponent(AvatarRoot, AvatarSSRFallback);
|
|
48
|
-
|
|
49
21
|
/**
|
|
50
22
|
* Avatar image component for displaying the actual user image.
|
|
51
23
|
* If the image fails to load, it will automatically fall back to AvatarFallback.
|
|
52
24
|
*
|
|
53
25
|
* @param src - Image source URL
|
|
54
|
-
* @param alt - Alternative text for the image
|
|
55
26
|
* @param className - Additional CSS classes to apply
|
|
56
27
|
* @param props - All standard img element props are supported
|
|
57
28
|
*/
|
|
58
|
-
export const
|
|
29
|
+
export const AvatarImage = ({
|
|
59
30
|
className,
|
|
60
31
|
...props
|
|
61
32
|
}: ComponentProps<typeof AvatarPrimitive.Image>) => (
|
|
@@ -66,25 +37,6 @@ export const AvatarImageRoot = ({
|
|
|
66
37
|
/>
|
|
67
38
|
);
|
|
68
39
|
|
|
69
|
-
/**
|
|
70
|
-
* SSR fallback component for AvatarImage when client-side rendering is not available.
|
|
71
|
-
* @param className - Additional CSS classes to apply
|
|
72
|
-
*/
|
|
73
|
-
export const AvatarImageFallback = ({ className }: { className?: string }) => (
|
|
74
|
-
<span data-slot="avatar-image" className={cn("aspect-square size-full", className)} />
|
|
75
|
-
);
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Avatar image component with client-side rendering support and SSR fallback.
|
|
79
|
-
* Displays the user's profile image with automatic fallback support.
|
|
80
|
-
*
|
|
81
|
-
* @example
|
|
82
|
-
* ```tsx
|
|
83
|
-
* <AvatarImage src="/user-avatar.jpg" alt="John Doe" />
|
|
84
|
-
* ```
|
|
85
|
-
*/
|
|
86
|
-
export const AvatarImage = createClientOnlyComponent(AvatarImageRoot, AvatarImageFallback);
|
|
87
|
-
|
|
88
40
|
/**
|
|
89
41
|
* Avatar fallback component that displays when the image fails to load.
|
|
90
42
|
* Typically contains user initials or a default icon.
|
|
@@ -93,7 +45,7 @@ export const AvatarImage = createClientOnlyComponent(AvatarImageRoot, AvatarImag
|
|
|
93
45
|
* @param children - Content to display (usually initials)
|
|
94
46
|
* @param props - All standard Radix Avatar.Fallback props are supported
|
|
95
47
|
*/
|
|
96
|
-
export const
|
|
48
|
+
export const AvatarFallback = ({
|
|
97
49
|
className,
|
|
98
50
|
...props
|
|
99
51
|
}: ComponentProps<typeof AvatarPrimitive.Fallback>) => (
|
|
@@ -107,39 +59,6 @@ export const AvatarFallbackRoot = ({
|
|
|
107
59
|
/>
|
|
108
60
|
);
|
|
109
61
|
|
|
110
|
-
/**
|
|
111
|
-
* SSR fallback component for AvatarFallback when client-side rendering is not available.
|
|
112
|
-
* @param className - Additional CSS classes to apply
|
|
113
|
-
* @param children - Content to display (usually initials)
|
|
114
|
-
*/
|
|
115
|
-
export const AvatarFallbackSSR = ({
|
|
116
|
-
className,
|
|
117
|
-
...props
|
|
118
|
-
}: {
|
|
119
|
-
className?: string;
|
|
120
|
-
children?: React.ReactNode;
|
|
121
|
-
}) => (
|
|
122
|
-
<span
|
|
123
|
-
data-slot="avatar-fallback"
|
|
124
|
-
className={cn(
|
|
125
|
-
"bg-bg-tertiary flex size-full items-center justify-center rounded-full",
|
|
126
|
-
className,
|
|
127
|
-
)}
|
|
128
|
-
{...props}
|
|
129
|
-
/>
|
|
130
|
-
);
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Avatar fallback component with client-side rendering support and SSR fallback.
|
|
134
|
-
* Displays fallback content when the avatar image fails to load.
|
|
135
|
-
*
|
|
136
|
-
* @example
|
|
137
|
-
* ```tsx
|
|
138
|
-
* <AvatarFallback>JD</AvatarFallback>
|
|
139
|
-
* ```
|
|
140
|
-
*/
|
|
141
|
-
export const AvatarFallback = createClientOnlyComponent(AvatarFallbackRoot, AvatarFallbackSSR);
|
|
142
|
-
|
|
143
62
|
/**
|
|
144
63
|
* Props for the AvatarGroup component.
|
|
145
64
|
*/
|
package/src/ui/button.tsx
CHANGED
|
@@ -19,12 +19,7 @@ export const buttonVariants = cva(
|
|
|
19
19
|
"disabled:pointer-events-none",
|
|
20
20
|
"disabled:bg-bg-tertiary",
|
|
21
21
|
"disabled:text-text-tertiary",
|
|
22
|
-
"focus-visible:border-ring",
|
|
23
|
-
"focus-visible:ring-ring/50",
|
|
24
|
-
"focus-visible:ring-[3px]",
|
|
25
22
|
"focus-visible:bg-brand-tertiary",
|
|
26
|
-
"aria-invalid:ring-destructive/20",
|
|
27
|
-
"aria-invalid:border-destructive",
|
|
28
23
|
],
|
|
29
24
|
{
|
|
30
25
|
variants: {
|
package/src/ui/card.tsx
CHANGED