enzostvs HF staff commited on
Commit
09efb88
·
1 Parent(s): 8a18175

collapse comments

Browse files
src/lib/components/community/drawer/Comments.svelte CHANGED
@@ -10,6 +10,7 @@
10
 
11
  let text = "";
12
  let loading = false;
 
13
 
14
  const handleSubmit = async () => {
15
  loading = true;
@@ -36,13 +37,23 @@
36
  }
37
  </script>
38
 
39
- <div class="grid grid-cols-1 gap-3 overflow-auto h-full max-h-[300px]">
40
- {#if comments?.length === 0}
41
- <p class="text-neutral-500 text-sm">No comments yet! Be the first one!</p>
42
- {/if}
43
- {#each comments as comment}
44
- <Comment comment={comment} />
45
- {/each}
 
 
 
 
 
 
 
 
 
 
46
  </div>
47
  <div class="flex gap-4 items-start justify-between flex-col lg:flex-row mt-7">
48
  <textarea
 
10
 
11
  let text = "";
12
  let loading = false;
13
+ let collapse_comments = false;
14
 
15
  const handleSubmit = async () => {
16
  loading = true;
 
37
  }
38
  </script>
39
 
40
+ <div class="grid grid-cols-1 gap-3 overflow-auto h-full max-h-[50%]">
41
+ {#if comments?.length === 0}
42
+ <p class="text-neutral-500 text-sm">No comments yet! Be the first one!</p>
43
+ {/if}
44
+ {#each comments.slice(0, collapse_comments ? comments?.length : 1) as comment}
45
+ <Comment comment={comment} />
46
+ {/each}
47
+ {#if comments?.length > 1}
48
+ <div class="flex items-center justify-start max-w-max absolute right-8 top-8">
49
+ <Button
50
+ theme="dark"
51
+ onClick={() => collapse_comments = !collapse_comments}
52
+ >
53
+ {collapse_comments ? "Show less" : "Show more"}
54
+ </Button>
55
+ </div>
56
+ {/if}
57
  </div>
58
  <div class="flex gap-4 items-start justify-between flex-col lg:flex-row mt-7">
59
  <textarea
src/lib/components/community/drawer/Drawer.svelte CHANGED
@@ -95,7 +95,7 @@
95
  </div>
96
  </main>
97
  </div>
98
- <footer class="p-8 border-t border-neutral-900 bg-neutral-900/30 flex flex-col justify-between">
99
  <p class="font-semibold text-neutral-100 text-base lg:text-lg mb-6">
100
  Commentaire{(gallery?.comments?.length ?? 0) > 1 ? 's' : ''} ({gallery?.comments?.length ?? 0})
101
  </p>
 
95
  </div>
96
  </main>
97
  </div>
98
+ <footer class="p-8 border-t border-neutral-900 bg-neutral-900/30 flex flex-col justify-between relative">
99
  <p class="font-semibold text-neutral-100 text-base lg:text-lg mb-6">
100
  Commentaire{(gallery?.comments?.length ?? 0) > 1 ? 's' : ''} ({gallery?.comments?.length ?? 0})
101
  </p>
src/lib/components/models/drawer/Drawer.svelte CHANGED
@@ -148,7 +148,7 @@
148
  {/if}
149
  </main>
150
  </div>
151
- <footer class="p-8 border-t border-neutral-900 bg-neutral-900/30 flex flex-col justify-between">
152
  <p class="font-semibold text-neutral-100 text-base lg:text-lg mb-6">
153
  Commentaire{(model?.comments?.length ?? 0) > 1 ? 's' : ''} ({model?.comments?.length ?? 0})
154
  </p>
 
148
  {/if}
149
  </main>
150
  </div>
151
+ <footer class="p-8 border-t border-neutral-900 bg-neutral-900/30 flex flex-col justify-between relative">
152
  <p class="font-semibold text-neutral-100 text-base lg:text-lg mb-6">
153
  Commentaire{(model?.comments?.length ?? 0) > 1 ? 's' : ''} ({model?.comments?.length ?? 0})
154
  </p>
src/lib/components/models/drawer/comments/Comments.svelte CHANGED
@@ -10,6 +10,7 @@
10
 
11
  let text = "";
12
  let loading = false;
 
13
 
14
  const handleSubmit = async () => {
15
  loading = true;
@@ -36,13 +37,23 @@
36
  }
37
  </script>
38
 
39
- <div class="grid grid-cols-1 gap-3 overflow-auto h-full max-h-[300px]">
40
  {#if comments?.length === 0}
41
  <p class="text-neutral-500 text-sm">No comments yet! Be the first one!</p>
42
  {/if}
43
- {#each comments as comment}
44
  <Comment comment={comment} />
45
  {/each}
 
 
 
 
 
 
 
 
 
 
46
  </div>
47
  <div class="flex gap-4 items-start justify-between flex-col lg:flex-row mt-7">
48
  <textarea
 
10
 
11
  let text = "";
12
  let loading = false;
13
+ let collapse_comments = false;
14
 
15
  const handleSubmit = async () => {
16
  loading = true;
 
37
  }
38
  </script>
39
 
40
+ <div class="grid grid-cols-1 gap-3 overflow-auto h-full max-h-[50%]">
41
  {#if comments?.length === 0}
42
  <p class="text-neutral-500 text-sm">No comments yet! Be the first one!</p>
43
  {/if}
44
+ {#each comments.slice(0, collapse_comments ? comments?.length : 1) as comment}
45
  <Comment comment={comment} />
46
  {/each}
47
+ {#if comments?.length > 1}
48
+ <div class="flex items-center justify-start max-w-max absolute right-8 top-8">
49
+ <Button
50
+ theme="dark"
51
+ onClick={() => collapse_comments = !collapse_comments}
52
+ >
53
+ {collapse_comments ? "Show less" : "Show more"}
54
+ </Button>
55
+ </div>
56
+ {/if}
57
  </div>
58
  <div class="flex gap-4 items-start justify-between flex-col lg:flex-row mt-7">
59
  <textarea