@bridge-ui/vue 0.0.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/Actions/BridgeUIHosts.js +5 -0
- package/dist/Actions/BridgeUIHosts.vue.d.ts +18 -0
- package/dist/Actions/BridgeUIHosts.vue_vue_type_script_setup_true_lang.js +27 -0
- package/dist/Actions/Dialog/BridgeDialogAction.js +5 -0
- package/dist/Actions/Dialog/BridgeDialogAction.vue.d.ts +8 -0
- package/dist/Actions/Dialog/BridgeDialogAction.vue_vue_type_script_setup_true_lang.js +62 -0
- package/dist/Actions/Dialog/BridgeDialogHost.js +5 -0
- package/dist/Actions/Dialog/BridgeDialogHost.vue.d.ts +14 -0
- package/dist/Actions/Dialog/BridgeDialogHost.vue_vue_type_script_setup_true_lang.js +26 -0
- package/dist/Actions/Dialog/BridgeDialogItem.js +5 -0
- package/dist/Actions/Dialog/BridgeDialogItem.vue.d.ts +4 -0
- package/dist/Actions/Dialog/BridgeDialogItem.vue_vue_type_script_setup_true_lang.js +47 -0
- package/dist/Actions/Dialog/ResolveBridgeDialogFooter.js +5 -0
- package/dist/Actions/Dialog/ResolveBridgeDialogFooter.vue.d.ts +4 -0
- package/dist/Actions/Dialog/ResolveBridgeDialogFooter.vue_vue_type_script_setup_true_lang.js +35 -0
- package/dist/Actions/Dialog/bridgeDialog.types.d.ts +128 -0
- package/dist/Actions/Dialog/bridgeDialogInjectionKey.d.ts +3 -0
- package/dist/Actions/Dialog/bridgeDialogInjectionKey.js +4 -0
- package/dist/Actions/Dialog/createBridgeDialogApi.d.ts +2 -0
- package/dist/Actions/Dialog/createBridgeDialogApi.js +49 -0
- package/dist/Actions/Dialog/index.d.ts +3 -0
- package/dist/Actions/Dialog/index.js +3 -0
- package/dist/Actions/Dialog/useDialogAction.d.ts +5 -0
- package/dist/Actions/Dialog/useDialogAction.js +26 -0
- package/dist/Actions/Modal/BridgeModalHost.js +5 -0
- package/dist/Actions/Modal/BridgeModalHost.vue.d.ts +14 -0
- package/dist/Actions/Modal/BridgeModalHost.vue_vue_type_script_setup_true_lang.js +35 -0
- package/dist/Actions/Modal/bridgeModal.types.d.ts +44 -0
- package/dist/Actions/Modal/bridgeModalInjectionKey.d.ts +3 -0
- package/dist/Actions/Modal/bridgeModalInjectionKey.js +4 -0
- package/dist/Actions/Modal/createBridgeModalApi.d.ts +2 -0
- package/dist/Actions/Modal/createBridgeModalApi.js +49 -0
- package/dist/Actions/Modal/index.d.ts +3 -0
- package/dist/Actions/Modal/index.js +3 -0
- package/dist/Actions/Modal/useModalAction.d.ts +5 -0
- package/dist/Actions/Modal/useModalAction.js +26 -0
- package/dist/Actions/Snackbar/BridgeSnackbarAction.js +5 -0
- package/dist/Actions/Snackbar/BridgeSnackbarAction.vue.d.ts +8 -0
- package/dist/Actions/Snackbar/BridgeSnackbarAction.vue_vue_type_script_setup_true_lang.js +86 -0
- package/dist/Actions/Snackbar/BridgeSnackbarHost.js +5 -0
- package/dist/Actions/Snackbar/BridgeSnackbarHost.vue.d.ts +16 -0
- package/dist/Actions/Snackbar/BridgeSnackbarHost.vue_vue_type_script_setup_true_lang.js +55 -0
- package/dist/Actions/Snackbar/BridgeSnackbarItem.js +5 -0
- package/dist/Actions/Snackbar/BridgeSnackbarItem.vue.d.ts +4 -0
- package/dist/Actions/Snackbar/BridgeSnackbarItem.vue_vue_type_script_setup_true_lang.js +117 -0
- package/dist/Actions/Snackbar/bridgeSnackbar.types.d.ts +127 -0
- package/dist/Actions/Snackbar/bridgeSnackbarInjectionKey.d.ts +3 -0
- package/dist/Actions/Snackbar/bridgeSnackbarInjectionKey.js +4 -0
- package/dist/Actions/Snackbar/createBridgeSnackbarApi.d.ts +14 -0
- package/dist/Actions/Snackbar/createBridgeSnackbarApi.js +59 -0
- package/dist/Actions/Snackbar/index.d.ts +3 -0
- package/dist/Actions/Snackbar/index.js +3 -0
- package/dist/Actions/Snackbar/useSnackbarAction.d.ts +5 -0
- package/dist/Actions/Snackbar/useSnackbarAction.js +27 -0
- package/dist/Actions/bridgeUIHosts.types.d.ts +17 -0
- package/dist/Actions/index.d.ts +8 -0
- package/dist/Actions/index.js +8 -0
- package/dist/Components/Alert/Alert.js +5 -0
- package/dist/Components/Alert/Alert.vue.d.ts +11 -0
- package/dist/Components/Alert/Alert.vue_vue_type_script_setup_true_lang.js +43 -0
- package/dist/Components/Alert/alert.types.d.ts +134 -0
- package/dist/Components/Alert/alertDefaultIcons.d.ts +4 -0
- package/dist/Components/Alert/alertDefaultIcons.js +13 -0
- package/dist/Components/Alert/composables/useAlert.d.ts +18 -0
- package/dist/Components/Alert/composables/useAlert.js +71 -0
- package/dist/Components/Alert/index.d.ts +3 -0
- package/dist/Components/Alert/index.js +3 -0
- package/dist/Components/Avatar/Avatar.js +5 -0
- package/dist/Components/Avatar/Avatar.vue.d.ts +11 -0
- package/dist/Components/Avatar/Avatar.vue_vue_type_script_setup_true_lang.js +32 -0
- package/dist/Components/Avatar/avatar.types.d.ts +81 -0
- package/dist/Components/Avatar/composables/useAvatar.d.ts +23 -0
- package/dist/Components/Avatar/composables/useAvatar.js +73 -0
- package/dist/Components/Avatar/index.d.ts +3 -0
- package/dist/Components/Avatar/index.js +3 -0
- package/dist/Components/Badge/Badge.js +5 -0
- package/dist/Components/Badge/Badge.vue.d.ts +4 -0
- package/dist/Components/Badge/Badge.vue_vue_type_script_setup_true_lang.js +29 -0
- package/dist/Components/Badge/badge.types.d.ts +64 -0
- package/dist/Components/Badge/composables/useBadge.d.ts +9 -0
- package/dist/Components/Badge/composables/useBadge.js +47 -0
- package/dist/Components/Badge/index.d.ts +3 -0
- package/dist/Components/Badge/index.js +3 -0
- package/dist/Components/Button/Button.js +5 -0
- package/dist/Components/Button/Button.vue.d.ts +11 -0
- package/dist/Components/Button/Button.vue_vue_type_script_setup_true_lang.js +74 -0
- package/dist/Components/Button/button.types.d.ts +181 -0
- package/dist/Components/Button/composables/useButton.d.ts +22 -0
- package/dist/Components/Button/composables/useButton.js +91 -0
- package/dist/Components/Button/index.d.ts +3 -0
- package/dist/Components/Button/index.js +3 -0
- package/dist/Components/Card/Card.js +5 -0
- package/dist/Components/Card/Card.vue.d.ts +11 -0
- package/dist/Components/Card/Card.vue_vue_type_script_setup_true_lang.js +33 -0
- package/dist/Components/Card/card.types.d.ts +124 -0
- package/dist/Components/Card/composables/useCard.d.ts +18 -0
- package/dist/Components/Card/composables/useCard.js +80 -0
- package/dist/Components/Card/index.d.ts +3 -0
- package/dist/Components/Card/index.js +3 -0
- package/dist/Components/Checkbox/Checkbox.js +5 -0
- package/dist/Components/Checkbox/Checkbox.vue.d.ts +20 -0
- package/dist/Components/Checkbox/Checkbox.vue_vue_type_script_setup_true_lang.js +70 -0
- package/dist/Components/Checkbox/checkbox.types.d.ts +98 -0
- package/dist/Components/Checkbox/composables/useCheckbox.d.ts +279 -0
- package/dist/Components/Checkbox/composables/useCheckbox.js +76 -0
- package/dist/Components/Checkbox/index.d.ts +3 -0
- package/dist/Components/Checkbox/index.js +3 -0
- package/dist/Components/FormControl/FormControl.js +5 -0
- package/dist/Components/FormControl/FormControl.vue.d.ts +17 -0
- package/dist/Components/FormControl/FormControl.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/Components/FormControl/composables/useFormControl.d.ts +45 -0
- package/dist/Components/FormControl/composables/useFormControl.js +110 -0
- package/dist/Components/FormControl/formControl.types.d.ts +198 -0
- package/dist/Components/FormControl/index.d.ts +4 -0
- package/dist/Components/FormControl/index.js +3 -0
- package/dist/Components/FormField/FilledFormField.js +5 -0
- package/dist/Components/FormField/FilledFormField.vue.d.ts +17 -0
- package/dist/Components/FormField/FilledFormField.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/Components/FormField/FormField.js +5 -0
- package/dist/Components/FormField/FormField.vue.d.ts +15 -0
- package/dist/Components/FormField/FormField.vue_vue_type_script_setup_true_lang.js +37 -0
- package/dist/Components/FormField/NotchedFormField.js +5 -0
- package/dist/Components/FormField/NotchedFormField.vue.d.ts +17 -0
- package/dist/Components/FormField/NotchedFormField.vue_vue_type_script_setup_true_lang.js +38 -0
- package/dist/Components/FormField/OutlinedFormField.js +5 -0
- package/dist/Components/FormField/OutlinedFormField.vue.d.ts +17 -0
- package/dist/Components/FormField/OutlinedFormField.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/Components/FormField/StackedFormField.js +5 -0
- package/dist/Components/FormField/StackedFormField.vue.d.ts +17 -0
- package/dist/Components/FormField/StackedFormField.vue_vue_type_script_setup_true_lang.js +42 -0
- package/dist/Components/FormField/UnderlinedFormField.js +5 -0
- package/dist/Components/FormField/UnderlinedFormField.vue.d.ts +17 -0
- package/dist/Components/FormField/UnderlinedFormField.vue_vue_type_script_setup_true_lang.js +39 -0
- package/dist/Components/FormField/composables/useFormField.d.ts +474 -0
- package/dist/Components/FormField/composables/useFormField.js +219 -0
- package/dist/Components/FormField/formField.types.d.ts +294 -0
- package/dist/Components/FormField/index.d.ts +4 -0
- package/dist/Components/FormField/index.js +3 -0
- package/dist/Components/Icon/Icon.js +5 -0
- package/dist/Components/Icon/Icon.vue.d.ts +4 -0
- package/dist/Components/Icon/Icon.vue_vue_type_script_setup_true_lang.js +17 -0
- package/dist/Components/Icon/composables/useIcon.d.ts +9 -0
- package/dist/Components/Icon/composables/useIcon.js +26 -0
- package/dist/Components/Icon/icon.types.d.ts +17 -0
- package/dist/Components/Icon/index.d.ts +3 -0
- package/dist/Components/Icon/index.js +3 -0
- package/dist/Components/Label/Label.js +5 -0
- package/dist/Components/Label/Label.vue.d.ts +4 -0
- package/dist/Components/Label/Label.vue_vue_type_script_setup_true_lang.js +21 -0
- package/dist/Components/Label/composables/useLabel.d.ts +10 -0
- package/dist/Components/Label/composables/useLabel.js +44 -0
- package/dist/Components/Label/index.d.ts +3 -0
- package/dist/Components/Label/index.js +3 -0
- package/dist/Components/Label/label.types.d.ts +52 -0
- package/dist/Components/Link/Link.js +5 -0
- package/dist/Components/Link/Link.vue.d.ts +11 -0
- package/dist/Components/Link/Link.vue_vue_type_script_setup_true_lang.js +52 -0
- package/dist/Components/Link/composables/useLink.d.ts +18 -0
- package/dist/Components/Link/composables/useLink.js +66 -0
- package/dist/Components/Link/index.d.ts +3 -0
- package/dist/Components/Link/index.js +3 -0
- package/dist/Components/Link/link.types.d.ts +113 -0
- package/dist/Components/List/List.js +5 -0
- package/dist/Components/List/List.vue.d.ts +9 -0
- package/dist/Components/List/List.vue_vue_type_script_setup_true_lang.js +31 -0
- package/dist/Components/List/composables/useList.d.ts +11 -0
- package/dist/Components/List/composables/useList.js +44 -0
- package/dist/Components/List/index.d.ts +5 -0
- package/dist/Components/List/index.js +4 -0
- package/dist/Components/List/list.types.d.ts +57 -0
- package/dist/Components/List/listInjectionKey.d.ts +5 -0
- package/dist/Components/List/listInjectionKey.js +4 -0
- package/dist/Components/ListItem/ListItem.js +5 -0
- package/dist/Components/ListItem/ListItem.vue.d.ts +19 -0
- package/dist/Components/ListItem/ListItem.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/Components/ListItem/composables/useListItem.d.ts +40 -0
- package/dist/Components/ListItem/composables/useListItem.js +104 -0
- package/dist/Components/ListItem/index.d.ts +3 -0
- package/dist/Components/ListItem/index.js +3 -0
- package/dist/Components/ListItem/listItem.types.d.ts +164 -0
- package/dist/Components/ListSection/ListSection.js +5 -0
- package/dist/Components/ListSection/ListSection.vue.d.ts +15 -0
- package/dist/Components/ListSection/ListSection.vue_vue_type_script_setup_true_lang.js +30 -0
- package/dist/Components/ListSection/composables/useListSection.d.ts +13 -0
- package/dist/Components/ListSection/composables/useListSection.js +51 -0
- package/dist/Components/ListSection/index.d.ts +3 -0
- package/dist/Components/ListSection/index.js +3 -0
- package/dist/Components/ListSection/listSection.types.d.ts +71 -0
- package/dist/Components/Listbox/Listbox.js +5 -0
- package/dist/Components/Listbox/Listbox.vue.d.ts +34 -0
- package/dist/Components/Listbox/Listbox.vue_vue_type_script_setup_true_lang.js +157 -0
- package/dist/Components/Listbox/composables/useListbox.d.ts +13 -0
- package/dist/Components/Listbox/composables/useListbox.js +47 -0
- package/dist/Components/Listbox/composables/useListboxNavigation.d.ts +16 -0
- package/dist/Components/Listbox/composables/useListboxNavigation.js +62 -0
- package/dist/Components/Listbox/index.d.ts +4 -0
- package/dist/Components/Listbox/index.js +4 -0
- package/dist/Components/Listbox/listbox.types.d.ts +170 -0
- package/dist/Components/Menu/Menu.js +5 -0
- package/dist/Components/Menu/Menu.vue.d.ts +36 -0
- package/dist/Components/Menu/Menu.vue_vue_type_script_setup_true_lang.js +80 -0
- package/dist/Components/Menu/composables/useMenu.d.ts +54 -0
- package/dist/Components/Menu/composables/useMenu.js +217 -0
- package/dist/Components/Menu/index.d.ts +4 -0
- package/dist/Components/Menu/index.js +3 -0
- package/dist/Components/Menu/menu.types.d.ts +172 -0
- package/dist/Components/Modal/Modal.js +5 -0
- package/dist/Components/Modal/Modal.vue.d.ts +38 -0
- package/dist/Components/Modal/Modal.vue_vue_type_script_setup_true_lang.js +94 -0
- package/dist/Components/Modal/composables/useModal.d.ts +61 -0
- package/dist/Components/Modal/composables/useModal.js +191 -0
- package/dist/Components/Modal/index.d.ts +4 -0
- package/dist/Components/Modal/index.js +3 -0
- package/dist/Components/Modal/modal.types.d.ts +177 -0
- package/dist/Components/NumberField/NumberField.js +5 -0
- package/dist/Components/NumberField/NumberField.vue.d.ts +24 -0
- package/dist/Components/NumberField/NumberField.vue_vue_type_script_setup_true_lang.js +83 -0
- package/dist/Components/NumberField/composables/useNumberField.d.ts +696 -0
- package/dist/Components/NumberField/composables/useNumberField.js +64 -0
- package/dist/Components/NumberField/index.d.ts +4 -0
- package/dist/Components/NumberField/index.js +3 -0
- package/dist/Components/NumberField/numberField.types.d.ts +52 -0
- package/dist/Components/PasswordField/PasswordField.js +5 -0
- package/dist/Components/PasswordField/PasswordField.vue.d.ts +24 -0
- package/dist/Components/PasswordField/PasswordField.vue_vue_type_script_setup_true_lang.js +67 -0
- package/dist/Components/PasswordField/composables/usePasswordField.d.ts +691 -0
- package/dist/Components/PasswordField/composables/usePasswordField.js +40 -0
- package/dist/Components/PasswordField/index.d.ts +4 -0
- package/dist/Components/PasswordField/index.js +3 -0
- package/dist/Components/PasswordField/passwordField.types.d.ts +34 -0
- package/dist/Components/Radio/Radio.js +5 -0
- package/dist/Components/Radio/Radio.vue.d.ts +20 -0
- package/dist/Components/Radio/Radio.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/Components/Radio/composables/useRadio.d.ts +278 -0
- package/dist/Components/Radio/composables/useRadio.js +78 -0
- package/dist/Components/Radio/index.d.ts +3 -0
- package/dist/Components/Radio/index.js +3 -0
- package/dist/Components/Radio/radio.types.d.ts +104 -0
- package/dist/Components/Select/Select.js +5 -0
- package/dist/Components/Select/Select.vue.d.ts +40 -0
- package/dist/Components/Select/Select.vue_vue_type_script_setup_true_lang.js +191 -0
- package/dist/Components/Select/SelectOption.js +5 -0
- package/dist/Components/Select/SelectOption.vue.d.ts +4 -0
- package/dist/Components/Select/SelectOption.vue_vue_type_script_setup_true_lang.js +30 -0
- package/dist/Components/Select/composables/useSelect.d.ts +733 -0
- package/dist/Components/Select/composables/useSelect.js +305 -0
- package/dist/Components/Select/index.d.ts +4 -0
- package/dist/Components/Select/index.js +4 -0
- package/dist/Components/Select/select.types.d.ts +231 -0
- package/dist/Components/Select/selectInjectionKey.d.ts +7 -0
- package/dist/Components/Select/selectInjectionKey.js +4 -0
- package/dist/Components/Snackbar/Snackbar.js +5 -0
- package/dist/Components/Snackbar/Snackbar.vue.d.ts +32 -0
- package/dist/Components/Snackbar/Snackbar.vue_vue_type_script_setup_true_lang.js +156 -0
- package/dist/Components/Snackbar/composables/useSnackbar.d.ts +248 -0
- package/dist/Components/Snackbar/composables/useSnackbar.js +210 -0
- package/dist/Components/Snackbar/index.d.ts +4 -0
- package/dist/Components/Snackbar/index.js +3 -0
- package/dist/Components/Snackbar/snackbar.types.d.ts +214 -0
- package/dist/Components/Snackbar/snackbarDefaultIcons.d.ts +4 -0
- package/dist/Components/Snackbar/snackbarDefaultIcons.js +13 -0
- package/dist/Components/Switch/Switch.js +5 -0
- package/dist/Components/Switch/Switch.vue.d.ts +20 -0
- package/dist/Components/Switch/Switch.vue_vue_type_script_setup_true_lang.js +61 -0
- package/dist/Components/Switch/composables/useSwitch.d.ts +278 -0
- package/dist/Components/Switch/composables/useSwitch.js +73 -0
- package/dist/Components/Switch/index.d.ts +3 -0
- package/dist/Components/Switch/index.js +3 -0
- package/dist/Components/Switch/switch.types.d.ts +92 -0
- package/dist/Components/TextField/TextField.js +5 -0
- package/dist/Components/TextField/TextField.vue.d.ts +22 -0
- package/dist/Components/TextField/TextField.vue_vue_type_script_setup_true_lang.js +49 -0
- package/dist/Components/TextField/composables/useTextField.d.ts +680 -0
- package/dist/Components/TextField/composables/useTextField.js +21 -0
- package/dist/Components/TextField/index.d.ts +3 -0
- package/dist/Components/TextField/index.js +3 -0
- package/dist/Components/TextField/textField.types.d.ts +15 -0
- package/dist/Components/Textarea/Textarea.js +5 -0
- package/dist/Components/Textarea/Textarea.vue.d.ts +22 -0
- package/dist/Components/Textarea/Textarea.vue_vue_type_script_setup_true_lang.js +57 -0
- package/dist/Components/Textarea/composables/useTextarea.d.ts +685 -0
- package/dist/Components/Textarea/composables/useTextarea.js +72 -0
- package/dist/Components/Textarea/index.d.ts +3 -0
- package/dist/Components/Textarea/index.js +3 -0
- package/dist/Components/Textarea/textarea.types.d.ts +34 -0
- package/dist/Provider/BridgeUIProvider.js +5 -0
- package/dist/Provider/BridgeUIProvider.vue.d.ts +18 -0
- package/dist/Provider/BridgeUIProvider.vue_vue_type_script_setup_true_lang.js +20 -0
- package/dist/Provider/bridgeUITypes.d.ts +8 -0
- package/dist/Provider/createBridgeUI.d.ts +3 -0
- package/dist/Provider/createBridgeUI.js +15 -0
- package/dist/Provider/createBridgeUIApi.d.ts +7 -0
- package/dist/Provider/createBridgeUIApi.js +36 -0
- package/dist/Provider/index.d.ts +5 -0
- package/dist/Provider/index.js +4 -0
- package/dist/Provider/injectionKey.d.ts +3 -0
- package/dist/Provider/injectionKey.js +4 -0
- package/dist/Provider/useBridgeUI.d.ts +2 -0
- package/dist/Provider/useBridgeUI.js +8 -0
- package/dist/Utils/index.d.ts +47 -0
- package/dist/Utils/index.js +55 -0
- package/dist/Utils/slotOrProp.d.ts +28 -0
- package/dist/Utils/slotOrProp.js +23 -0
- package/dist/Utils/useHoldRepeat.d.ts +13 -0
- package/dist/Utils/useHoldRepeat.js +38 -0
- package/dist/augments.d.ts +113 -0
- package/dist/index.d.ts +54 -0
- package/dist/index.js +53 -0
- package/dist/theme.css +205 -0
- package/package.json +90 -0
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { mergePartBind as e, resolveVnodeRefElement as t, useBridgeUIComponent as n, useBridgeUIMergedRegistryClasses as ee } from "../../../Utils/index.js";
|
|
2
|
+
import { computed as r, nextTick as i, onBeforeUnmount as te, ref as a, toValue as o, useAttrs as ne, useId as re, watch as s } from "vue";
|
|
3
|
+
import { get as c, omit as l } from "es-toolkit/compat";
|
|
4
|
+
import { LAYER_STACK_BASE_Z_INDEX as u, acquireLayerStackOrder as ie, claimOpenMenu as d, cn as f, createFocusable as p, createPositionable as m, getLayerStackEntry as ae, mergeBridgeUILayeredClasses as h, pushLayerStack as g, splitComponentProps as _, subscribeLayerStack as v } from "@bridge-ui/core";
|
|
5
|
+
import { roundedProps as oe, shadowProps as se } from "@bridge-ui/core/Components/Menu";
|
|
6
|
+
//#region src/Components/Menu/composables/useMenu.ts
|
|
7
|
+
var ce = [
|
|
8
|
+
"offset",
|
|
9
|
+
"shadow",
|
|
10
|
+
"classes",
|
|
11
|
+
"rounded",
|
|
12
|
+
"strategy",
|
|
13
|
+
"placement",
|
|
14
|
+
"persistent",
|
|
15
|
+
"teleportTo",
|
|
16
|
+
"customProps",
|
|
17
|
+
"keepMounted",
|
|
18
|
+
"closeOnEscape",
|
|
19
|
+
"closeOnClickAway",
|
|
20
|
+
"disableAutoFocus",
|
|
21
|
+
"disableScrollLock"
|
|
22
|
+
];
|
|
23
|
+
function y(y, le, b = {}) {
|
|
24
|
+
let ue = ne(), x = re(), S = a(!1), C = a(""), w = a(null), T = a(null), E = null, D = null, O = null, k = null, A = null, j = null, M = !1, N = a(u), P = r(() => o(b.show ?? !1));
|
|
25
|
+
function F(e) {
|
|
26
|
+
e || b.onClose?.(), b.show && (b.show.value = e), b.onShowChange?.(e);
|
|
27
|
+
}
|
|
28
|
+
let I = r(() => _({
|
|
29
|
+
bridgeKeys: ce,
|
|
30
|
+
props: {
|
|
31
|
+
...ue,
|
|
32
|
+
...y
|
|
33
|
+
}
|
|
34
|
+
})), { merged: L, entry: R } = n({
|
|
35
|
+
libDefaults: le,
|
|
36
|
+
componentName: "Menu",
|
|
37
|
+
props: () => I.value.componentProps
|
|
38
|
+
}), z = r(() => L.value.customProps), B = ee({
|
|
39
|
+
entry: R,
|
|
40
|
+
props: () => I.value.componentProps
|
|
41
|
+
}), V = r(() => L.value.keepMounted && !P.value), H = r(() => L.value.teleportTo !== !1), de = r(() => c(h(oe, R.value?.customProps?.rounded), L.value.rounded)), fe = r(() => c(h(se, R.value?.customProps?.shadow), L.value.shadow)), U = r(() => !L.value.persistent), pe = r(() => l(I.value.inheritedAttrs, ["anchorEl", "onShowChange"]));
|
|
42
|
+
function W() {
|
|
43
|
+
return y.anchorEl ?? w.value;
|
|
44
|
+
}
|
|
45
|
+
function G() {
|
|
46
|
+
W()?.focus({ preventScroll: !0 });
|
|
47
|
+
}
|
|
48
|
+
function K(e) {
|
|
49
|
+
return W()?.contains(e) ?? !1;
|
|
50
|
+
}
|
|
51
|
+
function me(e) {
|
|
52
|
+
return !(e instanceof Element) || K(e) || T.value?.contains(e) ? !1 : !!e.closest("[aria-haspopup=\"menu\"], button, [role=\"button\"]");
|
|
53
|
+
}
|
|
54
|
+
function q() {
|
|
55
|
+
!U.value || !P.value || F(!1);
|
|
56
|
+
}
|
|
57
|
+
function he() {
|
|
58
|
+
L.value.persistent && P.value || F(!P.value);
|
|
59
|
+
}
|
|
60
|
+
function J(e) {
|
|
61
|
+
e.key !== "ArrowDown" && e.key !== "Enter" && e.key !== " " || (e.preventDefault(), P.value || F(!0));
|
|
62
|
+
}
|
|
63
|
+
function ge(e) {
|
|
64
|
+
let t = T.value;
|
|
65
|
+
if (!t) return;
|
|
66
|
+
let n = p(t);
|
|
67
|
+
switch (e.key) {
|
|
68
|
+
case "Escape":
|
|
69
|
+
e.preventDefault(), q(), G();
|
|
70
|
+
break;
|
|
71
|
+
case "ArrowDown":
|
|
72
|
+
e.preventDefault(), n.next()?.focus({ preventScroll: !0 });
|
|
73
|
+
break;
|
|
74
|
+
case "ArrowUp":
|
|
75
|
+
e.preventDefault(), n.previous()?.focus({ preventScroll: !0 });
|
|
76
|
+
break;
|
|
77
|
+
case "Home":
|
|
78
|
+
e.preventDefault(), n.focusFirst();
|
|
79
|
+
break;
|
|
80
|
+
case "End":
|
|
81
|
+
e.preventDefault(), n.focusLast();
|
|
82
|
+
break;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
function Y() {
|
|
86
|
+
M = !1, k?.destroy(), k = null;
|
|
87
|
+
}
|
|
88
|
+
function X() {
|
|
89
|
+
Y();
|
|
90
|
+
let e = W(), t = T.value;
|
|
91
|
+
!P.value || !e || !t || (k = m({
|
|
92
|
+
floating: t,
|
|
93
|
+
reference: e,
|
|
94
|
+
offset: L.value.offset,
|
|
95
|
+
strategy: L.value.strategy,
|
|
96
|
+
placement: L.value.placement,
|
|
97
|
+
onReferenceHidden: () => {
|
|
98
|
+
!M || !U.value || !P.value || q();
|
|
99
|
+
}
|
|
100
|
+
}), k.start(), i(() => {
|
|
101
|
+
M = !0;
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
function Z() {
|
|
105
|
+
!P.value || L.value.disableAutoFocus || !T.value || p(T.value).focusFirst();
|
|
106
|
+
}
|
|
107
|
+
function _e() {
|
|
108
|
+
if (A?.(), !P.value) {
|
|
109
|
+
A = null;
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
function e(e) {
|
|
113
|
+
let t = e.target;
|
|
114
|
+
K(t) || T.value?.contains(t) || L.value.closeOnClickAway === !1 || !U.value || me(t) || q();
|
|
115
|
+
}
|
|
116
|
+
document.addEventListener("pointerdown", e, !0), A = () => {
|
|
117
|
+
document.removeEventListener("pointerdown", e, !0);
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
function ve(e) {
|
|
121
|
+
let n = t(e);
|
|
122
|
+
w.value !== n && (w.value = n, n && i(() => {
|
|
123
|
+
X();
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
126
|
+
function ye(e) {
|
|
127
|
+
let n = t(e);
|
|
128
|
+
T.value !== n && (T.value = n, n && i(() => {
|
|
129
|
+
X(), Z();
|
|
130
|
+
}));
|
|
131
|
+
}
|
|
132
|
+
function be() {
|
|
133
|
+
!P.value || L.value.closeOnEscape === !1 || !U.value || (q(), G());
|
|
134
|
+
}
|
|
135
|
+
function Q() {
|
|
136
|
+
let e = ae(C.value);
|
|
137
|
+
e && (N.value = e.zIndex);
|
|
138
|
+
}
|
|
139
|
+
function $() {
|
|
140
|
+
j?.(), j = null, A?.(), A = null, O?.(), O = null, D?.release(), D = null, E = null, C.value = "", N.value = u, Y();
|
|
141
|
+
}
|
|
142
|
+
let xe = r(() => e(z.value?.root, pe.value, { class: f({
|
|
143
|
+
"relative inline-block text-left": !0,
|
|
144
|
+
[c(B.value, "root") ?? ""]: !0
|
|
145
|
+
}) })), Se = r(() => e(z.value?.trigger, {}, {
|
|
146
|
+
tabindex: 0,
|
|
147
|
+
role: "button",
|
|
148
|
+
"aria-expanded": P.value,
|
|
149
|
+
onKeydown: J,
|
|
150
|
+
"aria-haspopup": "menu",
|
|
151
|
+
onClickCapture: he,
|
|
152
|
+
"aria-controls": P.value ? x : void 0,
|
|
153
|
+
class: f({
|
|
154
|
+
"inline-block w-fit max-w-full cursor-pointer outline-hidden": !0,
|
|
155
|
+
[c(B.value, "trigger") ?? ""]: !0
|
|
156
|
+
})
|
|
157
|
+
})), Ce = r(() => e(z.value?.content, {}, {
|
|
158
|
+
id: x,
|
|
159
|
+
role: "menu",
|
|
160
|
+
onKeydown: ge,
|
|
161
|
+
style: { zIndex: N.value },
|
|
162
|
+
"aria-hidden": V.value ? !0 : void 0,
|
|
163
|
+
class: f({
|
|
164
|
+
"bg-white ring-1 ring-black/5 outline-hidden overflow-hidden min-w-32 w-max max-w-[calc(100vw-16px)]": !0,
|
|
165
|
+
"invisible pointer-events-none": V.value,
|
|
166
|
+
[de.value ?? ""]: !0,
|
|
167
|
+
[fe.value ?? ""]: !0,
|
|
168
|
+
[c(B.value, "content") ?? ""]: !0
|
|
169
|
+
})
|
|
170
|
+
}));
|
|
171
|
+
return s(P, (e) => {
|
|
172
|
+
if (e) {
|
|
173
|
+
S.value = !0, i(() => {
|
|
174
|
+
P.value && (j = d({
|
|
175
|
+
id: x,
|
|
176
|
+
requestClose: q
|
|
177
|
+
}));
|
|
178
|
+
}), E = ie(), D = g({
|
|
179
|
+
order: E,
|
|
180
|
+
onEscape: be,
|
|
181
|
+
lockScroll: L.value.disableScrollLock !== !0
|
|
182
|
+
}), C.value = D.id, N.value = D.zIndex, Q(), O = v(Q), i(() => {
|
|
183
|
+
X(), Z(), _e();
|
|
184
|
+
});
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
$(), L.value.keepMounted || (S.value = !1);
|
|
188
|
+
}, { immediate: !0 }), s([
|
|
189
|
+
P,
|
|
190
|
+
() => y.anchorEl,
|
|
191
|
+
() => L.value.offset,
|
|
192
|
+
() => L.value.strategy,
|
|
193
|
+
() => L.value.placement
|
|
194
|
+
], () => {
|
|
195
|
+
i(() => {
|
|
196
|
+
X();
|
|
197
|
+
});
|
|
198
|
+
}), s([P, () => L.value.disableAutoFocus], () => {
|
|
199
|
+
i(() => {
|
|
200
|
+
Z();
|
|
201
|
+
});
|
|
202
|
+
}), te(() => {
|
|
203
|
+
$();
|
|
204
|
+
}), {
|
|
205
|
+
merged: L,
|
|
206
|
+
menuId: x,
|
|
207
|
+
mounted: S,
|
|
208
|
+
rootBind: xe,
|
|
209
|
+
isPortaled: H,
|
|
210
|
+
triggerBind: Se,
|
|
211
|
+
contentBind: Ce,
|
|
212
|
+
setTriggerRef: ve,
|
|
213
|
+
setContentRef: ye
|
|
214
|
+
};
|
|
215
|
+
}
|
|
216
|
+
//#endregion
|
|
217
|
+
export { y as useMenu };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { useMenu } from './composables/useMenu';
|
|
2
|
+
export type { MenuOptions } from './composables/useMenu';
|
|
3
|
+
export type { MenuClasses, MenuCustomProps, MenuEmits, MenuOwnProps, MenuProps, MenuRoundedOverrides, MenuShadowOverrides, MenuSlots, } from './menu.types';
|
|
4
|
+
export { default as Menu } from './Menu.vue';
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { HTMLAttributes, Slot } from 'vue';
|
|
2
|
+
import { MenuRounded, MenuShadow, MergeHtmlProps, MergeProps, PositionPlacement, PositionStrategy } from '@bridge-ui/core';
|
|
3
|
+
export interface MenuShadowOverrides {}
|
|
4
|
+
export interface MenuRoundedOverrides {}
|
|
5
|
+
export interface MenuClasses {
|
|
6
|
+
/**
|
|
7
|
+
* The classes to apply to the content.
|
|
8
|
+
*/
|
|
9
|
+
content?: string;
|
|
10
|
+
/**
|
|
11
|
+
* The classes to apply to the group.
|
|
12
|
+
*/
|
|
13
|
+
group?: string;
|
|
14
|
+
/**
|
|
15
|
+
* The classes to apply to the item.
|
|
16
|
+
*/
|
|
17
|
+
item?: string;
|
|
18
|
+
/**
|
|
19
|
+
* The classes to apply to the label.
|
|
20
|
+
*/
|
|
21
|
+
label?: string;
|
|
22
|
+
/**
|
|
23
|
+
* The classes to apply to the root.
|
|
24
|
+
*/
|
|
25
|
+
root?: string;
|
|
26
|
+
/**
|
|
27
|
+
* The classes to apply to the separator.
|
|
28
|
+
*/
|
|
29
|
+
separator?: string;
|
|
30
|
+
/**
|
|
31
|
+
* The classes to apply to the trigger.
|
|
32
|
+
*/
|
|
33
|
+
trigger?: string;
|
|
34
|
+
}
|
|
35
|
+
export interface MenuCustomProps {
|
|
36
|
+
/**
|
|
37
|
+
* Props forwarded to the floating menu panel.
|
|
38
|
+
*/
|
|
39
|
+
content?: HTMLAttributes;
|
|
40
|
+
/**
|
|
41
|
+
* Props forwarded to the root wrapper (contains the trigger).
|
|
42
|
+
*/
|
|
43
|
+
root?: HTMLAttributes;
|
|
44
|
+
/**
|
|
45
|
+
* Props forwarded to the trigger wrapper.
|
|
46
|
+
*/
|
|
47
|
+
trigger?: HTMLAttributes;
|
|
48
|
+
}
|
|
49
|
+
export interface MenuEmits {
|
|
50
|
+
/**
|
|
51
|
+
* Emitted when the user dismisses the menu (Escape or click-away).
|
|
52
|
+
* Not emitted when the parent sets `v-model` to `false` directly.
|
|
53
|
+
*/
|
|
54
|
+
close: [];
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Anchored menu panel (MUI `Menu`-like). Visibility is controlled with `v-model`
|
|
58
|
+
* (not listed here — `defineModel` handles it). Anchor with `anchorEl` (MUI style)
|
|
59
|
+
* or put the opener in the `trigger` slot; menu items go in the default slot.
|
|
60
|
+
*/
|
|
61
|
+
export interface MenuOwnProps {
|
|
62
|
+
/**
|
|
63
|
+
* Element that anchors the menu panel (MUI `anchorEl`). When set, it is used
|
|
64
|
+
* for positioning and click-away instead of the `trigger` slot wrapper.
|
|
65
|
+
* Prefer this when the opener lives outside the `Menu` or is controlled manually.
|
|
66
|
+
* Not merged into Bridge defaults (DOM nodes must not be deep-merged).
|
|
67
|
+
*
|
|
68
|
+
* @default undefined
|
|
69
|
+
*/
|
|
70
|
+
anchorEl?: null | HTMLElement;
|
|
71
|
+
/**
|
|
72
|
+
* The classes to apply to the menu.
|
|
73
|
+
*
|
|
74
|
+
* @default undefined
|
|
75
|
+
*/
|
|
76
|
+
classes?: MenuClasses;
|
|
77
|
+
/**
|
|
78
|
+
* Whether the menu closes when clicking outside the trigger and panel.
|
|
79
|
+
*
|
|
80
|
+
* @default true
|
|
81
|
+
*/
|
|
82
|
+
closeOnClickAway?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Whether the menu closes on escape key press.
|
|
85
|
+
*
|
|
86
|
+
* @default true
|
|
87
|
+
*/
|
|
88
|
+
closeOnEscape?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Props forwarded to each menu part.
|
|
91
|
+
*
|
|
92
|
+
* @default undefined
|
|
93
|
+
*/
|
|
94
|
+
customProps?: MenuCustomProps;
|
|
95
|
+
/**
|
|
96
|
+
* When true, the menu does not auto-focus the first focusable item on open.
|
|
97
|
+
*
|
|
98
|
+
* @default false
|
|
99
|
+
*/
|
|
100
|
+
disableAutoFocus?: boolean;
|
|
101
|
+
/**
|
|
102
|
+
* When true, body scroll is not locked while the menu is open.
|
|
103
|
+
*
|
|
104
|
+
* @default true
|
|
105
|
+
*/
|
|
106
|
+
disableScrollLock?: boolean;
|
|
107
|
+
/**
|
|
108
|
+
* When true, the menu stays mounted in the DOM after closing (hidden).
|
|
109
|
+
*
|
|
110
|
+
* @default false
|
|
111
|
+
*/
|
|
112
|
+
keepMounted?: boolean;
|
|
113
|
+
/**
|
|
114
|
+
* Gap between the trigger and the menu panel (px).
|
|
115
|
+
*
|
|
116
|
+
* @default 4
|
|
117
|
+
*/
|
|
118
|
+
offset?: number;
|
|
119
|
+
/**
|
|
120
|
+
* Called when `show` should change (controlled state without `v-model`).
|
|
121
|
+
*
|
|
122
|
+
* @default undefined
|
|
123
|
+
*/
|
|
124
|
+
onShowChange?: (show: boolean) => void;
|
|
125
|
+
/**
|
|
126
|
+
* When true, escape and click-away do not close the menu.
|
|
127
|
+
*
|
|
128
|
+
* @default false
|
|
129
|
+
*/
|
|
130
|
+
persistent?: boolean;
|
|
131
|
+
/**
|
|
132
|
+
* Preferred placement of the menu relative to the anchor (Floating UI).
|
|
133
|
+
*
|
|
134
|
+
* @default "bottom-start"
|
|
135
|
+
*/
|
|
136
|
+
placement?: PositionPlacement;
|
|
137
|
+
/**
|
|
138
|
+
* The roundedness of the menu panel.
|
|
139
|
+
*
|
|
140
|
+
* @default "md"
|
|
141
|
+
*/
|
|
142
|
+
rounded?: MergeProps<MenuRounded, MenuRoundedOverrides>;
|
|
143
|
+
/**
|
|
144
|
+
* The shadow to apply to the menu panel.
|
|
145
|
+
*
|
|
146
|
+
* @default "md"
|
|
147
|
+
*/
|
|
148
|
+
shadow?: MergeProps<MenuShadow, MenuShadowOverrides>;
|
|
149
|
+
/**
|
|
150
|
+
* CSS position strategy for the floating panel.
|
|
151
|
+
*
|
|
152
|
+
* @default "fixed"
|
|
153
|
+
*/
|
|
154
|
+
strategy?: PositionStrategy;
|
|
155
|
+
/**
|
|
156
|
+
* Where to portal the menu panel. Pass `false` to render in place.
|
|
157
|
+
*
|
|
158
|
+
* @default "body"
|
|
159
|
+
*/
|
|
160
|
+
teleportTo?: false | string;
|
|
161
|
+
}
|
|
162
|
+
export interface MenuSlots {
|
|
163
|
+
/**
|
|
164
|
+
* The menu items content.
|
|
165
|
+
*/
|
|
166
|
+
default?: Slot<undefined>;
|
|
167
|
+
/**
|
|
168
|
+
* The trigger element that opens the menu.
|
|
169
|
+
*/
|
|
170
|
+
trigger?: Slot<undefined>;
|
|
171
|
+
}
|
|
172
|
+
export type MenuProps = MergeHtmlProps<MenuOwnProps, HTMLAttributes>;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { ModalOwnProps, ModalSlots } from './modal.types';
|
|
2
|
+
type __VLS_Slots = ModalSlots;
|
|
3
|
+
type __VLS_Props = ModalOwnProps;
|
|
4
|
+
type __VLS_ModelProps = {
|
|
5
|
+
modelValue?: boolean;
|
|
6
|
+
};
|
|
7
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
8
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {
|
|
9
|
+
stackId: import('vue').ComputedRef<string>;
|
|
10
|
+
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
11
|
+
"update:modelValue": (value: boolean) => any;
|
|
12
|
+
close: () => any;
|
|
13
|
+
"show-change": (show: boolean) => any;
|
|
14
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
15
|
+
"onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
|
|
16
|
+
onClose?: (() => any) | undefined;
|
|
17
|
+
"onShow-change"?: ((show: boolean) => any) | undefined;
|
|
18
|
+
}>, {
|
|
19
|
+
closeOnEscape: boolean;
|
|
20
|
+
disableScrollLock: boolean;
|
|
21
|
+
keepMounted: boolean;
|
|
22
|
+
persistent: boolean;
|
|
23
|
+
teleportTo: false | string;
|
|
24
|
+
scroll: import('@bridge-ui/core').MergeProps<import('@bridge-ui/core').ModalScroll, import('./modal.types').ModalScrollOverrides>;
|
|
25
|
+
autoFocus: boolean;
|
|
26
|
+
closeOnOverlay: boolean;
|
|
27
|
+
disableEnforceFocus: boolean;
|
|
28
|
+
disableRestoreFocus: boolean;
|
|
29
|
+
hideBackdrop: boolean;
|
|
30
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
31
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
32
|
+
declare const _default: typeof __VLS_export;
|
|
33
|
+
export default _default;
|
|
34
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
35
|
+
new (): {
|
|
36
|
+
$slots: S;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { resolveNamedSlot as e } from "../../Utils/slotOrProp.js";
|
|
2
|
+
import { useModal as t } from "./composables/useModal.js";
|
|
3
|
+
import { Teleport as n, computed as r, createBlock as i, createCommentVNode as a, createElementBlock as o, createElementVNode as s, defineComponent as c, guardReactiveProps as l, mergeModels as u, mergeProps as d, normalizeProps as f, openBlock as p, resolveDynamicComponent as m, unref as h, useModel as g, useSlots as _ } from "vue";
|
|
4
|
+
//#region src/Components/Modal/Modal.vue?vue&type=script&setup=true&lang.ts
|
|
5
|
+
var v = /* @__PURE__ */ c({
|
|
6
|
+
inheritAttrs: !1,
|
|
7
|
+
__name: "Modal",
|
|
8
|
+
props: /* @__PURE__ */ u({
|
|
9
|
+
align: {},
|
|
10
|
+
autoFocus: {
|
|
11
|
+
type: Boolean,
|
|
12
|
+
default: !1
|
|
13
|
+
},
|
|
14
|
+
blur: {},
|
|
15
|
+
classes: {},
|
|
16
|
+
closeOnEscape: {
|
|
17
|
+
type: Boolean,
|
|
18
|
+
default: !0
|
|
19
|
+
},
|
|
20
|
+
closeOnOverlay: {
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: !0
|
|
23
|
+
},
|
|
24
|
+
customProps: {},
|
|
25
|
+
disableEnforceFocus: {
|
|
26
|
+
type: Boolean,
|
|
27
|
+
default: !1
|
|
28
|
+
},
|
|
29
|
+
disableRestoreFocus: {
|
|
30
|
+
type: Boolean,
|
|
31
|
+
default: !1
|
|
32
|
+
},
|
|
33
|
+
disableScrollLock: {
|
|
34
|
+
type: Boolean,
|
|
35
|
+
default: !1
|
|
36
|
+
},
|
|
37
|
+
hideBackdrop: {
|
|
38
|
+
type: Boolean,
|
|
39
|
+
default: !1
|
|
40
|
+
},
|
|
41
|
+
keepMounted: {
|
|
42
|
+
type: Boolean,
|
|
43
|
+
default: !1
|
|
44
|
+
},
|
|
45
|
+
persistent: {
|
|
46
|
+
type: Boolean,
|
|
47
|
+
default: !1
|
|
48
|
+
},
|
|
49
|
+
scroll: { default: "body" },
|
|
50
|
+
size: {},
|
|
51
|
+
stackId: {},
|
|
52
|
+
teleportTo: {
|
|
53
|
+
type: [Boolean, String],
|
|
54
|
+
default: "body"
|
|
55
|
+
},
|
|
56
|
+
transition: {}
|
|
57
|
+
}, {
|
|
58
|
+
modelValue: {
|
|
59
|
+
type: Boolean,
|
|
60
|
+
default: !1
|
|
61
|
+
},
|
|
62
|
+
modelModifiers: {}
|
|
63
|
+
}),
|
|
64
|
+
emits: /* @__PURE__ */ u(["close", "show-change"], ["update:modelValue"]),
|
|
65
|
+
setup(c, { expose: u, emit: v }) {
|
|
66
|
+
let y = _(), b = v, x = c, { merged: S, mounted: C, rootBind: w, panelBind: T, overlayBind: E, wrapperBind: D, setPanelRef: O, layerStackId: k } = t(x, {
|
|
67
|
+
size: "md",
|
|
68
|
+
blur: "none",
|
|
69
|
+
scroll: "body",
|
|
70
|
+
autoFocus: !1,
|
|
71
|
+
teleportTo: "body",
|
|
72
|
+
transition: "fade",
|
|
73
|
+
closeOnEscape: !0,
|
|
74
|
+
closeOnOverlay: !0,
|
|
75
|
+
align: "middle-center"
|
|
76
|
+
}, {
|
|
77
|
+
show: g(c, "modelValue"),
|
|
78
|
+
stackId: x.stackId,
|
|
79
|
+
onClose: () => b("close"),
|
|
80
|
+
onShowChange: (e) => b("show-change", e)
|
|
81
|
+
});
|
|
82
|
+
u({ stackId: r(() => x.stackId ?? k.value) });
|
|
83
|
+
let A = r(() => S.value.teleportTo === !1), j = r(() => S.value.teleportTo === !1 ? "body" : S.value.teleportTo), M = r(() => x.hideBackdrop !== !0 && S.value.hideBackdrop !== !0);
|
|
84
|
+
return (t, r) => (p(), i(n, {
|
|
85
|
+
to: j.value,
|
|
86
|
+
disabled: A.value
|
|
87
|
+
}, [h(C) ? (p(), o("div", f(d({ key: 0 }, h(w))), [M.value ? (p(), o("div", d({
|
|
88
|
+
key: 0,
|
|
89
|
+
"aria-hidden": "true"
|
|
90
|
+
}, h(E)), null, 16)) : a("", !0), s("div", f(l(h(D))), [s("div", d({ ref: h(O) }, h(T)), [(p(), i(m(h(e)(h(y), "default"))))], 16)], 16)], 16)) : a("", !0)], 8, ["to", "disabled"]));
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
//#endregion
|
|
94
|
+
export { v as default };
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { ComponentPublicInstance, Ref } from 'vue';
|
|
2
|
+
import { LibDefaultsShape, MergeLibDefaults } from '@bridge-ui/core';
|
|
3
|
+
import { ModalOwnProps, ModalProps } from '../modal.types';
|
|
4
|
+
type ModalLibDefaults = LibDefaultsShape<ModalOwnProps, "blur" | "size" | "align" | "scroll" | "autoFocus" | "teleportTo" | "transition" | "closeOnEscape" | "closeOnOverlay">;
|
|
5
|
+
type ModalMerged = MergeLibDefaults<ModalOwnProps, ModalLibDefaults>;
|
|
6
|
+
export type ModalOptions = {
|
|
7
|
+
/**
|
|
8
|
+
* Called when the modal requests to close.
|
|
9
|
+
* Sugar for `onShowChange(false)`.
|
|
10
|
+
*/
|
|
11
|
+
onClose?: () => void;
|
|
12
|
+
/**
|
|
13
|
+
* Called when `show` should change (controlled state).
|
|
14
|
+
*/
|
|
15
|
+
onShowChange?: (show: boolean) => void;
|
|
16
|
+
/**
|
|
17
|
+
* Whether the modal is visible (`defineModel()` / `v-model`).
|
|
18
|
+
*
|
|
19
|
+
* @default false
|
|
20
|
+
*/
|
|
21
|
+
show?: Ref<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Pre-assigned stack id (BridgeModalHost). When omitted, the stack generates a UUID.
|
|
24
|
+
*/
|
|
25
|
+
stackId?: string;
|
|
26
|
+
};
|
|
27
|
+
export declare function useModal(props: ModalOwnProps, libDefaults: ModalLibDefaults, options?: ModalOptions): {
|
|
28
|
+
merged: import('vue').ComputedRef<ModalMerged>;
|
|
29
|
+
mounted: Ref<boolean, boolean>;
|
|
30
|
+
rootBind: import('vue').ComputedRef<import('@bridge-ui/core').MergePartBind<{
|
|
31
|
+
onTransitionend: (event: TransitionEvent) => void;
|
|
32
|
+
style: {
|
|
33
|
+
zIndex: number;
|
|
34
|
+
};
|
|
35
|
+
"aria-hidden": boolean | undefined;
|
|
36
|
+
class: string;
|
|
37
|
+
}, "class", import('vue').HTMLAttributes | undefined, Omit<ModalProps, "size" | "classes" | "customProps" | "align" | "closeOnEscape" | "disableScrollLock" | "keepMounted" | "persistent" | "teleportTo" | "blur" | "scroll" | "autoFocus" | "closeOnOverlay" | "disableEnforceFocus" | "disableRestoreFocus" | "hideBackdrop" | "stackId" | "transition">>>;
|
|
38
|
+
panelBind: import('vue').ComputedRef<import('@bridge-ui/core').MergePartBind<{
|
|
39
|
+
"data-modal-part": string;
|
|
40
|
+
"data-state": "open" | "closed";
|
|
41
|
+
class: string;
|
|
42
|
+
}, "class", import('vue').HTMLAttributes | undefined, {
|
|
43
|
+
role: string;
|
|
44
|
+
"aria-modal": boolean;
|
|
45
|
+
}>>;
|
|
46
|
+
overlayBind: import('vue').ComputedRef<import('@bridge-ui/core').MergePartBind<{
|
|
47
|
+
"data-modal-part": string;
|
|
48
|
+
"data-state": "open" | "closed";
|
|
49
|
+
class: string;
|
|
50
|
+
}, "class", import('vue').HTMLAttributes | undefined, {
|
|
51
|
+
onClick: () => void;
|
|
52
|
+
}>>;
|
|
53
|
+
wrapperBind: import('vue').ComputedRef<import('@bridge-ui/core').MergePartBind<object, "class", import('vue').HTMLAttributes | undefined, {
|
|
54
|
+
onClick: (event: MouseEvent) => void;
|
|
55
|
+
}>>;
|
|
56
|
+
setPanelRef: (element: null | Element | ComponentPublicInstance) => void;
|
|
57
|
+
layerStackId: Ref<string, string>;
|
|
58
|
+
handleOverlayClick: () => void;
|
|
59
|
+
handleWrapperClick: (event: MouseEvent) => void;
|
|
60
|
+
};
|
|
61
|
+
export {};
|