Explorar o código

wrap useDialog to include default dialog options

Jason Gorst hai 1 mes
pai
achega
12ed168dff
Modificáronse 1 ficheiros con 27 adicións e 0 borrados
  1. 27 0
      app/composables/useDynamicDialog.js

+ 27 - 0
app/composables/useDynamicDialog.js

@@ -0,0 +1,27 @@
+import { defu } from "defu"
+
+export default function useDynamicDialog() {
+  const nuxtApp = useNuxtApp()
+
+  return nuxtApp.runWithContext(() => {
+    const dialog = useDialog()
+
+    const defaultOptions = {
+      props: {
+        modal: true,
+        dismissableMask: true,
+        showHeader: false,
+        pt: {
+          root: "z-90 w-11/12 max-w-128",
+          content: "p-0"
+        },
+        ptOptions: { mergeProps: ptViewMerge }
+      }
+    }
+
+    return {
+      open: (component, options = {}) =>
+        dialog.open(component, defu(options, defaultOptions))
+    }
+  })
+}