Skip to content

Commit 3fc81e3

Browse files
chore: wip
1 parent eb49fb9 commit 3fc81e3

File tree

11 files changed

+117
-43
lines changed

11 files changed

+117
-43
lines changed

resources/components/Bench/BenchHeader.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919
Find Judges
2020
</router-link>
2121
<router-link
22-
to="/review/new"
22+
to="/review"
2323
class="text-sm/6 font-semibold text-gray-900 border-b-2 transition-colors duration-200"
2424
:class="[
25-
route.path === '/review/new'
25+
route.path === '/review'
2626
? 'border-gray-500 text-gray-600'
2727
: 'border-transparent hover:border-gray-500'
2828
]"
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
<template>
2+
<div class="bg-off-white py-16 pb-32">
3+
<div class="mx-auto max-w-5xl px-4 sm:px-6 lg:px-8">
4+
<div class="text-center">
5+
<h3 class="text-2xl font-bold tracking-tight text-gray-900 sm:text-3xl">Ready to get started?</h3>
6+
<p class="mx-auto mt-6 max-w-xl text-lg leading-8 text-gray-600">
7+
Join our community of legal professionals and get access to comprehensive judge reviews, ratings, and insights to help you make informed decisions.
8+
</p>
9+
<div class="mt-10 flex items-center justify-center gap-x-6">
10+
<a href="/register" class="rounded-md bg-gray-600 px-3.5 py-2.5 text-sm font-semibold text-white shadow-sm hover:bg-gray-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-gray-600">
11+
Get Started
12+
</a>
13+
<a href="/about" class="text-sm font-semibold leading-6 text-gray-900">
14+
Learn more <span aria-hidden="true">→</span>
15+
</a>
16+
</div>
17+
</div>
18+
</div>
19+
</div>
20+
</template>

resources/components/Bench/HeroSection.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<router-link to="/judges"
1616
class="rounded-sm bg-gray-600 px-2.5 py-1.5 text-sm font-semibold text-white shadow-sm hover:bg-gray-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-gray-600">Find
1717
a Judge</router-link>
18-
<router-link to="/review/new" class="text-sm/6 font-semibold text-gray-700">Write a Review <span
18+
<router-link to="/review" class="text-sm/6 font-semibold text-gray-700">Write a Review <span
1919
aria-hidden="true">→</span></router-link>
2020
</div>
2121
</div>

resources/components/Bench/Judge/ProfileHeader.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ const copyProfileLink = () => {
3434
>
3535
{{ showCopiedFeedback ? 'Copied!' : 'Copy Profile Link' }}
3636
</button>
37-
<router-link to="/review/new" class="hidden text-sm/6 font-semibold text-gray-900 sm:block">Write Review</router-link>
37+
<router-link to="/review" class="hidden text-sm/6 font-semibold text-gray-900 sm:block">Write Review</router-link>
3838
<a href="#" class="rounded-md bg-gray-600 px-3 py-2 text-sm font-semibold text-white shadow-sm hover:bg-gray-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-gray-600">Follow</a>
3939

4040
<div class="relative sm:hidden">
@@ -47,7 +47,7 @@ const copyProfileLink = () => {
4747

4848
<div class="absolute right-0 z-10 mt-0.5 w-32 origin-top-right rounded-md bg-white py-2 shadow-lg ring-1 ring-gray-900/5 focus:outline-none" role="menu" aria-orientation="vertical" aria-labelledby="more-menu-button" tabindex="-1">
4949
<button type="button" class="block w-full px-3 py-1 text-left text-sm/6 text-gray-900" role="menuitem" tabindex="-1" id="more-menu-item-0">Share Profile</button>
50-
<router-link to="/review/new" class="block px-3 py-1 text-sm/6 text-gray-900" role="menuitem" tabindex="-1" id="more-menu-item-1">Write Review</router-link>
50+
<router-link to="/review" class="block px-3 py-1 text-sm/6 text-gray-900" role="menuitem" tabindex="-1" id="more-menu-item-1">Write Review</router-link>
5151
</div>
5252
</div>
5353
</div>

resources/components/Bench/MobileMenu.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@
3030
Find Judges
3131
</router-link>
3232
<router-link
33-
to="/review/new"
33+
to="/review"
3434
class="-mx-3 block rounded-lg px-3 py-2 text-base/7 font-semibold border-b-2 transition-colors duration-200"
3535
:class="[
36-
$route.path === '/review/new'
36+
$route.path === '/review'
3737
? 'border-blue-500 text-blue-600'
3838
: 'border-transparent hover:border-blue-500 text-gray-900'
3939
]"

resources/components/Bench/PricingSection.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
</div>
2727

2828
<div class="isolate mx-auto mt-10 grid max-w-md grid-cols-1 gap-8 md:max-w-2xl md:grid-cols-2">
29-
<div class="rounded-3xl p-8 ring-1 ring-gray-200">
29+
<div class="rounded-3xl p-8 ring-1 ring-gray-200 bg-white">
3030
<h3 id="tier-free" class="text-lg/8 font-semibold text-gray-800">Free</h3>
3131
<p class="mt-4 text-sm/6 text-gray-600">Are you a clerk? This is for you.</p>
3232
<p class="mt-6 flex items-baseline gap-x-1">
@@ -58,7 +58,7 @@
5858
</li>
5959
</ul>
6060
</div>
61-
<div class="rounded-3xl p-8 ring-2 ring-gray-600">
61+
<div class="rounded-3xl p-8 ring-2 ring-gray-600 bg-white">
6262
<h3 id="tier-hobby" class="text-lg/8 font-semibold text-gray-600">Professional</h3>
6363
<p class="mt-4 text-sm/6 text-gray-600">For anyone curious about judge reviews.</p>
6464
<p class="mt-6 flex items-baseline gap-x-1">

resources/components/Bench/ReviewForm.vue

Lines changed: 86 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ const knowledge = ref(0)
1616
const hoverKnowledge = ref(0)
1717
const demeanor = ref(0)
1818
const hoverDemeanor = ref(0)
19+
const isAnonymous = ref(false)
1920
2021
interface Judge {
2122
id: string;
@@ -84,7 +85,7 @@ function handleCancel() {
8485
</script>
8586

8687
<template>
87-
<div class="space-y-12">
88+
<div class="space-y-12 pb-32">
8889
<ReviewJudgeSearch v-if="!judge" class="mb-48"/>
8990

9091
<!-- Review Form - Only shown when judge is selected -->
@@ -116,8 +117,9 @@ function handleCancel() {
116117
name="title"
117118
id="title"
118119
v-model="reviewTitle"
120+
:disabled="!judge"
119121
placeholder="Brief summary of your experience"
120-
class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6"
122+
class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6 disabled:opacity-50 disabled:cursor-not-allowed"
121123
>
122124
</div>
123125
</div>
@@ -131,7 +133,8 @@ function handleCancel() {
131133
v-for="star in 5"
132134
:key="star"
133135
type="button"
134-
class="text-gray-300 hover:text-yellow-400 focus:outline-none"
136+
:disabled="!judge"
137+
class="text-gray-300 hover:text-yellow-400 focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed"
135138
:class="{ 'text-yellow-400': star <= (hoverFairness || fairness) }"
136139
@click="fairness = star"
137140
@mouseenter="hoverFairness = star"
@@ -154,7 +157,8 @@ function handleCancel() {
154157
v-for="star in 5"
155158
:key="star"
156159
type="button"
157-
class="text-gray-300 hover:text-yellow-400 focus:outline-none"
160+
:disabled="!judge"
161+
class="text-gray-300 hover:text-yellow-400 focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed"
158162
:class="{ 'text-yellow-400': star <= (hoverKnowledge || knowledge) }"
159163
@click="knowledge = star"
160164
@mouseenter="hoverKnowledge = star"
@@ -177,7 +181,8 @@ function handleCancel() {
177181
v-for="star in 5"
178182
:key="star"
179183
type="button"
180-
class="text-gray-300 hover:text-yellow-400 focus:outline-none"
184+
:disabled="!judge"
185+
class="text-gray-300 hover:text-yellow-400 focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed"
181186
:class="{ 'text-yellow-400': star <= (hoverDemeanor || demeanor) }"
182187
@click="demeanor = star"
183188
@mouseenter="hoverDemeanor = star"
@@ -198,21 +203,38 @@ function handleCancel() {
198203
<div class="sm:col-span-3">
199204
<label for="case-number" class="block text-sm/6 font-medium text-gray-700">Case Number (Optional)</label>
200205
<div class="mt-2">
201-
<input type="text" name="case-number" id="case-number" class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6">
206+
<input
207+
type="text"
208+
name="case-number"
209+
id="case-number"
210+
:disabled="!judge"
211+
class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6 disabled:opacity-50 disabled:cursor-not-allowed"
212+
>
202213
</div>
203214
</div>
204215

205216
<div class="sm:col-span-3">
206217
<label for="case-date" class="block text-sm/6 font-medium text-gray-700">Case Date (Optional)</label>
207218
<div class="mt-2">
208-
<input type="date" name="case-date" id="case-date" class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6">
219+
<input
220+
type="date"
221+
name="case-date"
222+
id="case-date"
223+
:disabled="!judge"
224+
class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6 disabled:opacity-50 disabled:cursor-not-allowed"
225+
>
209226
</div>
210227
</div>
211228

212229
<div class="col-span-full">
213230
<label for="role" class="block text-sm/6 font-medium text-gray-700">Your Role in the Case</label>
214231
<div class="mt-2">
215-
<select id="role" name="role" class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6">
232+
<select
233+
id="role"
234+
name="role"
235+
:disabled="!judge"
236+
class="block w-full rounded-md bg-off-white px-3 py-1.5 text-base text-gray-900 outline outline-1 -outline-offset-1 outline-gray-300 placeholder:text-gray-400 focus:outline focus:outline-2 focus:-outline-offset-2 focus:outline-gray-600 sm:text-sm/6 disabled:opacity-50 disabled:cursor-not-allowed"
237+
>
216238
<option>Attorney</option>
217239
<option>Party to the Case</option>
218240
<option>Court Staff</option>
@@ -221,6 +243,56 @@ function handleCancel() {
221243
</select>
222244
</div>
223245
</div>
246+
247+
<div class="col-span-full">
248+
<div class="relative flex items-start">
249+
<div class="flex h-6 items-center">
250+
<button
251+
type="button"
252+
:disabled="!judge"
253+
@click="isAnonymous = !isAnonymous"
254+
:class="[
255+
isAnonymous ? 'bg-gray-600' : 'bg-gray-200',
256+
'relative inline-flex h-6 w-11 flex-shrink-0 cursor-pointer rounded-full border-2 border-transparent transition-colors duration-200 ease-in-out focus:outline-none focus:ring-2 focus:ring-gray-600 focus:ring-offset-2 disabled:opacity-50 disabled:cursor-not-allowed'
257+
]"
258+
>
259+
<span
260+
:class="[
261+
isAnonymous ? 'translate-x-5' : 'translate-x-0',
262+
'pointer-events-none relative inline-block h-5 w-5 transform rounded-full bg-white shadow ring-0 transition duration-200 ease-in-out'
263+
]"
264+
>
265+
<span
266+
:class="[
267+
isAnonymous ? 'opacity-0 duration-100 ease-out' : 'opacity-100 duration-200 ease-in',
268+
'absolute inset-0 flex h-full w-full items-center justify-center transition-opacity'
269+
]"
270+
aria-hidden="true"
271+
>
272+
<svg class="h-3 w-3 text-gray-400" fill="none" viewBox="0 0 12 12">
273+
<path d="M4 8l2-2m0 0l2-2M6 6L4 4m2 2l2 2" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
274+
</svg>
275+
</span>
276+
<span
277+
:class="[
278+
isAnonymous ? 'opacity-100 duration-200 ease-in' : 'opacity-0 duration-100 ease-out',
279+
'absolute inset-0 flex h-full w-full items-center justify-center transition-opacity'
280+
]"
281+
aria-hidden="true"
282+
>
283+
<svg class="h-3 w-3 text-gray-600" fill="currentColor" viewBox="0 0 12 12">
284+
<path d="M3.707 5.293a1 1 0 00-1.414 1.414l1.414-1.414zM5 8l-.707.707a1 1 0 001.414 0L5 8zm4.707-3.293a1 1 0 00-1.414-1.414l1.414 1.414zm-7.414 2l2 2 1.414-1.414-2-2-1.414 1.414zm3.414 2l4-4-1.414-1.414-4 4 1.414 1.414z" />
285+
</svg>
286+
</span>
287+
</span>
288+
</button>
289+
</div>
290+
<div class="ml-3 text-sm leading-6">
291+
<label for="anonymous" class="font-medium text-gray-700">Post anonymously</label>
292+
<p class="text-gray-500">Your name will not be displayed with this review</p>
293+
</div>
294+
</div>
295+
</div>
224296
</div>
225297

226298
<div class="mt-10 grid grid-cols-1 gap-x-6 gap-y-8 sm:grid-cols-6">
@@ -232,7 +304,8 @@ function handleCancel() {
232304
v-for="star in 5"
233305
:key="star"
234306
type="button"
235-
class="text-gray-300 hover:text-yellow-400 focus:outline-none"
307+
:disabled="!judge"
308+
class="text-gray-300 hover:text-yellow-400 focus:outline-none disabled:opacity-50 disabled:cursor-not-allowed"
236309
:class="{ 'text-yellow-400': star <= (hoverRating || rating) }"
237310
@click="rating = star"
238311
@mouseenter="hoverRating = star"
@@ -250,7 +323,10 @@ function handleCancel() {
250323
<div class="col-span-full">
251324
<label for="review" class="block text-sm/6 font-medium text-gray-700">Your Review</label>
252325
<div class="mt-2">
253-
<RichTextEditor v-model="reviewContent" />
326+
<RichTextEditor
327+
v-model="reviewContent"
328+
:disabled="!judge"
329+
/>
254330
</div>
255331
<p class="mt-3 text-sm/6 text-gray-600">Please be specific about your experience and maintain a professional tone.</p>
256332
</div>

resources/views/review/new.vue

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

resources/views/secret-marketing.vue

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ const review: BenchReviews = {
8282
</div>
8383
<PricingSection />
8484
<TestimonialsSection />
85+
<CallToAction />
8586
</main>
8687

8788
</template>

storage/framework/types/components.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ declare module 'vue' {
2424
BenchHeader: typeof import('./../../../resources/components/Bench/BenchHeader.vue')['default']
2525
BlurReview: typeof import('./../../../resources/components/Bench/BlurReview.vue')['default']
2626
CacheForm: typeof import('./../defaults/components/Dashboard/Settings/Forms/CacheForm.vue')['default']
27-
CallToAction: typeof import('./../defaults/components/Marketing/CallToAction.vue')['default']
27+
CallToAction: typeof import('./../../../resources/components/Bench/CallToAction.vue')['default']
2828
CardBrands: typeof import('./../defaults/components/Dashboard/Billing/CardBrands.vue')['default']
2929
CardForm: typeof import('./../defaults/components/Dashboard/Billing/CardForm.vue')['default']
3030
Cases: typeof import('./../../../resources/components/Bench/Judge/Cases.vue')['default']

0 commit comments

Comments
 (0)