Skip to content

Commit 56e2df0

Browse files
committed
🐞 fix: remove unnecessary dependencies
1 parent f2371aa commit 56e2df0

File tree

9 files changed

+119
-104
lines changed

9 files changed

+119
-104
lines changed
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
<script setup lang="ts">
2+
import { ref, useTemplateRef } from "vue";
3+
import { useDragAndDrop } from "fluid-dnd/vue";
4+
// import { dragAndDrop} from "fluid-dnd";
5+
const droppableGroup = useTemplateRef('droppableGroup')
6+
const draggedElement = ref<number | undefined>(undefined)
7+
function onDragStart(){
8+
const droppables = droppableGroup.value?.querySelectorAll('.droppable-group-group1')??[]
9+
for (const droppable of [...droppables]) {
10+
droppable.classList.toggle('marked-droppable',true)
11+
}
12+
}
13+
function onDragEnd (){
14+
const droppables = droppableGroup.value?.querySelectorAll('.droppable-group-group1')??[]
15+
for (const droppable of [...droppables]) {
16+
droppable.classList.toggle('marked-droppable',false)
17+
}
18+
}
19+
20+
const list = ref([1, 2, 3, 4, 5]);
21+
const [ parent1 ] = useDragAndDrop<number>(list, {
22+
droppableGroup: "group1",
23+
onDragStart,
24+
onDragEnd,
25+
});
26+
27+
const list2 = ref([6, 7, 8, 9, 10]);
28+
const [ parent2 ] = useDragAndDrop<number>(list2, {
29+
droppableGroup: "group1",
30+
direction: "horizontal",
31+
onDragStart,
32+
onDragEnd,
33+
});
34+
35+
</script>
36+
<template>
37+
<div ref="droppableGroup" class="group-list bg-[var(--sl-color-gray-6)]">
38+
<ul ref="parent1" class="number-list">
39+
<li class="number" v-for="(element, index) in list" :index :key="element">
40+
{{ element }}
41+
</li>
42+
</ul>
43+
<div ref="parent2" class="number-list-h">
44+
<div
45+
class="number"
46+
v-for="(element, index) in list2"
47+
:index
48+
:key="element"
49+
>
50+
{{ element }}
51+
</div>
52+
</div>
53+
</div>
54+
</template>
55+
56+
<style>
57+
.number {
58+
border-style: solid;
59+
padding-left: 10px;
60+
padding-block: 5px;
61+
margin-top: 0.25rem !important;
62+
border-width: 2px;
63+
border-color: var(--sl-color-gray-1);
64+
color: var(--sl-color-gray-2);
65+
min-width: 120px;
66+
width: 120px;
67+
}
68+
69+
.number-list {
70+
display: block;
71+
height: 290px;
72+
overflow-y: auto;
73+
background-color: var(--sl-color-gray-5);
74+
padding: 1.5rem;
75+
border: 2px solid transparent;
76+
transition: border-color 200ms ease;
77+
}
78+
.number-list-h {
79+
overflow-x: auto;
80+
display: flex;
81+
flex-direction: row;
82+
padding-inline: 25px;
83+
margin-top: 0 !important;
84+
padding: 1.5rem;
85+
border: 2px solid transparent;
86+
transition: border-color 200ms ease;
87+
}
88+
.temp-child {
89+
margin-top: 0 !important;
90+
}
91+
.marked-droppable{
92+
border: 2px solid white;
93+
}
94+
</style>

docs/src/content/docs/vue/guides/ondrag.mdx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ description: A guide on how to use Fluid DnD calling onDragStart and onDragEnd e
44
---
55

66
import OnDragEvents from "@/components/vue/OnDragEvents.vue";
7+
import OnDragEventsWithMoreInfo from "@/components/vue/OnDragEventsWithMoreInfo.vue"
78
import { Code } from "@astrojs/starlight/components";
89

910
### List of number example
@@ -71,8 +72,16 @@ export const highlightsDraggable = ["droppableGroup"];
7172

7273
<Code code={listOfNumbersDraggable} lang="vue" mark={highlightsDraggable} />
7374

75+
{/* TODO: add doc for the use of the parameters */}
76+
7477
### Preview
7578

7679
<div class="p-8 bg-[var(--sl-color-gray-6)]">
7780
<OnDragEvents client:load />
7881
</div>
82+
83+
### Preview
84+
85+
<div class="p-8 bg-[var(--sl-color-gray-6)]">
86+
<OnDragEventsWithMoreInfo client:load />
87+
</div>

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"files": [
1212
"dist"
1313
],
14-
"main": ".dist/index.cjs",
14+
"main": "./dist/index.cjs",
1515
"exports": {
1616
"./vue": {
1717
"types": "./dist/vue/index.d.ts",
@@ -31,13 +31,13 @@
3131
".": {
3232
"types": "./dist/index.d.ts",
3333
"import": "./dist/index.mjs",
34-
"require": "./dist/index.umd.cjs"
34+
"require": "./dist/index.cjs"
3535
}
3636
},
37-
"types": "./index.d.ts",
37+
"types": "./dist/index.d.ts",
3838
"scripts": {
3939
"dev": "cd my-test-examples && vite",
40-
"build": "tsc && vite build",
40+
"build": "vite build",
4141
"preview": "vite preview",
4242
"test": "vitest"
4343
},
-885 KB
Binary file not shown.

src/assets/vue.svg

Lines changed: 0 additions & 1 deletion
This file was deleted.

src/main.ts

Lines changed: 0 additions & 5 deletions
This file was deleted.

src/style.css

Lines changed: 0 additions & 79 deletions
This file was deleted.

tsconfig.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,20 +22,20 @@
2222
"baseUrl": ".",
2323
"paths": {
2424
"@/*": ["./src/*", "./dist/*", ""],
25-
"@components/*": ["./src/components/*"],
26-
"fluid-dnd": ["./src/index.ts"],
2725
"fluid-dnd/vue": [".src/vue/index.ts"],
26+
"fluid-dnd": [".src/index.ts"],
2827
"fluid-dnd/svelte": [".src/svelte/index.ts"],
2928
"fluid-dnd/react": [".src/react/index.ts"]
3029
}
3130
},
32-
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/**/*.svelte"],
31+
"include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue", "src/**/*.svelte", "src/*.ts","src/*.d.ts"],
3332
"exclude": [
3433
"src/main.ts",
3534
"examples",
3635
"docs",
3736
"src/assets",
38-
"tests-frameworks/vue-test-examples"
37+
"tests-frameworks",
38+
"public",
3939
],
4040
"references": [{ "path": "./tsconfig.node.json" }]
4141
}

vite.config.ts

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,27 @@
11
/// <reference types="vitest" />
22
import { defineConfig } from "vite";
3-
import vue from "@vitejs/plugin-vue";
43
import * as path from "path";
54
import dts from "vite-plugin-dts";
65
import { fileURLToPath } from "url";
76
// https://vitejs.dev/config/
87
export default defineConfig({
98
plugins: [
10-
vue({
11-
script: {
12-
defineModel: true,
13-
},
14-
}),
159
dts(),
1610
],
1711
build: {
1812
lib: {
1913
entry: {
14+
index: path.resolve(__dirname, "src/index.ts"),
2015
vue: path.resolve(__dirname, 'src/vue/index.ts'),
2116
svelte: path.resolve(__dirname, 'src/svelte/index.ts'),
22-
react: path.resolve(__dirname, 'src/react/index.ts'),
23-
index: path.resolve(__dirname, "src/index.ts")
17+
react: path.resolve(__dirname, 'src/react/index.ts')
2418
},
25-
name: "FluidDnd",
19+
name: "Fluid-DnD",
2620
fileName: (format, entryName) => {
2721
const ext = format === 'es' ? 'mjs' : 'cjs';
22+
if (entryName === 'index') {
23+
return `index.${ext}`;
24+
}
2825
return `${entryName}/index.${ext}`;
2926
}
3027
},
@@ -34,7 +31,7 @@ export default defineConfig({
3431
globals: {
3532
vue: "Vue",
3633
svelte: 'svelte',
37-
react: 'react'
34+
react: 'react',
3835
},
3936
},
4037
},
@@ -46,6 +43,6 @@ export default defineConfig({
4643
},
4744
test: {
4845
environment: "jsdom", // or 'node'
49-
exclude: ["node_modules", "my-test-examples", "docs/node_modules"],
46+
exclude: ["node_modules", "docs/node_modules", "public", "tests-frameworks"],
5047
},
5148
});

0 commit comments

Comments
 (0)