run prettier and fix bug on safari
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
115ca3bbf2
commit
bd9fcb53a5
@ -1,7 +1,7 @@
|
|||||||
a {
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.border-darkish {
|
.border-darkish {
|
||||||
border-bottom: 1px dashed #666666;
|
border-bottom: 1px dashed #666666;
|
||||||
}
|
}
|
||||||
|
22
src/app.html
22
src/app.html
@ -1,4 +1,4 @@
|
|||||||
<!DOCTYPE html>
|
<!doctype html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
@ -7,14 +7,26 @@
|
|||||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||||
<title>Misty Mountains Therapy</title>
|
<title>Misty Mountains Therapy</title>
|
||||||
|
|
||||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
|
<link
|
||||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous"></script>
|
href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css"
|
||||||
|
rel="stylesheet"
|
||||||
|
integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC"
|
||||||
|
crossorigin="anonymous"
|
||||||
|
/>
|
||||||
|
<script
|
||||||
|
src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js"
|
||||||
|
integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
|
||||||
|
crossorigin="anonymous"
|
||||||
|
></script>
|
||||||
|
|
||||||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.1/font/bootstrap-icons.css">
|
<link
|
||||||
|
rel="stylesheet"
|
||||||
|
href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.8.1/font/bootstrap-icons.css"
|
||||||
|
/>
|
||||||
|
|
||||||
%svelte.head%
|
%svelte.head%
|
||||||
</head>
|
</head>
|
||||||
<body class="d-flex flex-column min-vh-100" style="background-color: #e8e8e8">
|
<body class="d-flex flex-column min-vh-100" style="background-color: #e8e8e8">
|
||||||
%svelte.body%
|
%svelte.body%
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
@ -9,13 +9,13 @@
|
|||||||
<div class="col-md-4 text-center order-sm-1">
|
<div class="col-md-4 text-center order-sm-1">
|
||||||
<img class="img-fluid rounded shadow" src={imageSpec.image} alt={imageSpec.alt} />
|
<img class="img-fluid rounded shadow" src={imageSpec.image} alt={imageSpec.alt} />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-8 border p-2 bg-light rounded shadow order-sm-2">
|
<div class="col-md-8 border p-4 bg-light rounded shadow order-sm-2">
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{:else}
|
{:else}
|
||||||
<div class="row d-flex align-items-center my-2">
|
<div class="row d-flex align-items-center my-2">
|
||||||
<div class="col-md-8 border p-2 bg-light rounded shadow order-md-first order-last">
|
<div class="col-md-8 border p-4 bg-light rounded shadow order-md-first order-last">
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4 text-center">
|
<div class="col-md-4 text-center">
|
||||||
|
@ -13,15 +13,15 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-row align-items-center border-darkish p-1">
|
<div class="d-flex flex-row align-items-center border-darkish p-1">
|
||||||
<i class="bi bi-mailbox"></i>
|
<i class="bi bi-mailbox"></i>
|
||||||
<a href="mailto:jeffer@mistymountainstherapy.com">
|
<a href="mailto:contact@mistymountainstherapy.com">
|
||||||
<div class="px-4">
|
<div class="px-4">
|
||||||
<span>jeffer@mistymountainstherapy.com</span>
|
<span>contact@mistymountainstherapy.com</span>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="d-flex flex-row align-items-center p-1">
|
<div class="d-flex flex-row align-items-center p-1">
|
||||||
<i class="bi bi-pin-map"></i>
|
<i class="bi bi-pin-map"></i>
|
||||||
<a href="https://goo.gl/maps/DdkzDQTRHBTtG8ys6">
|
<a href="https://maps.app.goo.gl/s1AFqfKvUKgXDCrq5">
|
||||||
<div class="px-4">
|
<div class="px-4">
|
||||||
<span>534 Trejo Street, Suite 200F</span>
|
<span>534 Trejo Street, Suite 200F</span>
|
||||||
<br>
|
<br>
|
||||||
@ -38,7 +38,7 @@
|
|||||||
<div class="p-1">
|
<div class="p-1">
|
||||||
<span class="text-muted">Copyright © 2024 Misty Mountains Therapy</span>
|
<span class="text-muted">Copyright © 2024 Misty Mountains Therapy</span>
|
||||||
<br>
|
<br>
|
||||||
<span class="text-muted">High quality therapy services for the Rexburg area.</span>
|
<span class="text-muted">High quality therapy services for the greater Rexburg area.</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
import { createClient } from '@supabase/supabase-js';
|
import { createClient } from '@supabase/supabase-js';
|
||||||
|
|
||||||
export const supabase = createClient(
|
export const supabase = createClient(
|
||||||
import.meta.env.VITE_SUPABASE_URL as string,
|
import.meta.env.VITE_SUPABASE_URL as string,
|
||||||
import.meta.env.VITE_SUPABASE_ANON_KEY as string,
|
import.meta.env.VITE_SUPABASE_ANON_KEY as string
|
||||||
);
|
);
|
||||||
|
|
||||||
export default supabase;
|
export default supabase;
|
||||||
|
@ -9,37 +9,36 @@ export const RETRY_JITTER_MAX = 3_000;
|
|||||||
const waitFor = (ms: number) => new Promise((res) => setTimeout(res, ms));
|
const waitFor = (ms: number) => new Promise((res) => setTimeout(res, ms));
|
||||||
|
|
||||||
const exponentialStrategyWithJitter: RetryStrategyF = (retries: number) =>
|
const exponentialStrategyWithJitter: RetryStrategyF = (retries: number) =>
|
||||||
WAIT_MS * Math.pow(RETRY_EXPONENT, RETRY_EXPONENTIAL_FACTOR * retries) +
|
WAIT_MS * Math.pow(RETRY_EXPONENT, RETRY_EXPONENTIAL_FACTOR * retries) +
|
||||||
RETRY_JITTER_MAX * Math.random();
|
RETRY_JITTER_MAX * Math.random();
|
||||||
|
|
||||||
export const continueRetryUntilValidation = async <T>(
|
export const continueRetryUntilValidation = async <T>(
|
||||||
promiseFn: () => Promise<T> | T | Promise<void> | void,
|
promiseFn: () => Promise<T> | T | Promise<void> | void,
|
||||||
validationFn: (x: T) => Promise<boolean> | boolean = (x: T) =>
|
validationFn: (x: T) => Promise<boolean> | boolean = (x: T) => Promise.resolve(!!x),
|
||||||
Promise.resolve(!!x),
|
maxRetries = MAX_DEFAULT_RETRY_AMOUNT,
|
||||||
maxRetries = MAX_DEFAULT_RETRY_AMOUNT,
|
waitTimeStrategy: RetryStrategyF = exponentialStrategyWithJitter,
|
||||||
waitTimeStrategy: RetryStrategyF = exponentialStrategyWithJitter,
|
retries = 0,
|
||||||
retries = 0,
|
lastError: undefined | unknown = undefined
|
||||||
lastError: undefined | unknown = undefined
|
|
||||||
): Promise<T> => {
|
): Promise<T> => {
|
||||||
if (retries >= maxRetries) {
|
if (retries >= maxRetries) {
|
||||||
if (lastError) throw lastError;
|
if (lastError) throw lastError;
|
||||||
throw new Error("Exceeded maximum retry amount");
|
throw new Error('Exceeded maximum retry amount');
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
if (retries) await waitFor(waitTimeStrategy(retries));
|
if (retries) await waitFor(waitTimeStrategy(retries));
|
||||||
|
|
||||||
const res = await promiseFn();
|
const res = await promiseFn();
|
||||||
if (res && (await validationFn(res))) return res;
|
if (res && (await validationFn(res))) return res;
|
||||||
|
|
||||||
throw new Error("Validation predicate unsuccessful");
|
throw new Error('Validation predicate unsuccessful');
|
||||||
} catch (e: unknown) {
|
} catch (e: unknown) {
|
||||||
return continueRetryUntilValidation(
|
return continueRetryUntilValidation(
|
||||||
promiseFn,
|
promiseFn,
|
||||||
validationFn,
|
validationFn,
|
||||||
maxRetries,
|
maxRetries,
|
||||||
waitTimeStrategy,
|
waitTimeStrategy,
|
||||||
retries + 1,
|
retries + 1,
|
||||||
e
|
e
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -1,12 +1,11 @@
|
|||||||
import { supabase } from '../supabase';
|
import { supabase } from '../supabase';
|
||||||
|
|
||||||
export const setImageUrl = (imageSpec) => {
|
export const setImageUrl = (imageSpec) => {
|
||||||
const { publicURL, error } = supabase
|
const { publicURL, error } = supabase.storage
|
||||||
.storage
|
.from('mistymountains')
|
||||||
.from('mistymountains')
|
.getPublicUrl(imageSpec.image);
|
||||||
.getPublicUrl(imageSpec.image);
|
if (!error) {
|
||||||
if (!error) {
|
return { ...imageSpec, image: publicURL };
|
||||||
return { ...imageSpec, image: publicURL };
|
}
|
||||||
}
|
return imageSpec;
|
||||||
return imageSpec;
|
};
|
||||||
}
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
<main>
|
<main>
|
||||||
<h1 class="text-center">Our Approach</h1>
|
<h1 class="text-center">Our Approach.</h1>
|
||||||
<div class="bg-light rounded p-4 shadow">
|
<div class="bg-light rounded p-4 shadow">
|
||||||
<div class="row justify-content-center">
|
<div class="row justify-content-center">
|
||||||
<div class="col-sm-10">
|
<div class="col-sm-10">
|
||||||
<div style="text-align:center">
|
<div style="text-align:center">
|
||||||
<img src="https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/boats.jpg" alt="boats in water" style="width:60%">
|
<img class="shadow" src="https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/boats.jpg" alt="boats in water" style="width:60%;border-radius: 0.25em;">
|
||||||
</div>
|
</div>
|
||||||
<br>
|
<br>
|
||||||
<p>We meet each client where they are at and customize their therapeutic journey to best fit their personality and issues. Some of the approaches we use most are listed below:</p>
|
<p>We meet each client where they are at and customize their therapeutic journey to best fit their personality and issues. Some of the approaches we use most are listed below:</p>
|
||||||
@ -38,6 +38,4 @@
|
|||||||
|
|
||||||
<p>We use this method to teach families how to treat and prevent behavioral and emotional problems in children and teens. We use a holistic approach and address concerns in the family, school, and community. We will not tell you how to parent, rather we will give you tools and ideas to manage misbehavior, set rules, encourage behavior you like, and take care of yourself so you can feel good and be confident in your parenting skills.</p>
|
<p>We use this method to teach families how to treat and prevent behavioral and emotional problems in children and teens. We use a holistic approach and address concerns in the family, school, and community. We will not tell you how to parent, rather we will give you tools and ideas to manage misbehavior, set rules, encourage behavior you like, and take care of yourself so you can feel good and be confident in your parenting skills.</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
|
@ -69,9 +69,9 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
<h1 class="text-center">Get in touch</h1>
|
<h1 class="text-center">Get in touch.</h1>
|
||||||
<div class="d-flex justify-content-center flex-row row">
|
<div class="d-flex justify-content-center flex-row row">
|
||||||
<div class="border shadow bg-light py-2 col-lg-2 d-flex align-items-center flex-column m-2">
|
<div class="border shadow bg-light py-2 col-lg-3 d-flex align-items-center flex-column m-2">
|
||||||
<h1><i class="bi bi-map-fill"></i></h1>
|
<h1><i class="bi bi-map-fill"></i></h1>
|
||||||
<p style="hyphens: auto;">
|
<p style="hyphens: auto;">
|
||||||
<a href="https://maps.app.goo.gl/s1AFqfKvUKgXDCrq5">534 Trejo Street
|
<a href="https://maps.app.goo.gl/s1AFqfKvUKgXDCrq5">534 Trejo Street
|
||||||
@ -84,25 +84,35 @@
|
|||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="border shadow bg-light py-2 col-lg-2 d-flex align-items-center flex-column m-2">
|
<div class="border shadow bg-light py-2 col-lg-3 d-flex align-items-center flex-column m-2">
|
||||||
<div><h1><i class="bi bi-phone-fill"></i></h1></div>
|
<div><h1><i class="bi bi-phone-fill"></i></h1></div>
|
||||||
<p style="hyphens: auto;">
|
<p style="hyphens: auto;">
|
||||||
For scheduling and other: <a href="tel:12084994517">(208) 499 - 4517</a>
|
Scheduling and Other
|
||||||
|
<br>
|
||||||
|
<a href="tel:12084994517">(208) 499 - 4517</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="border shadow bg-light py-2 col-lg-2 d-flex align-items-center flex-column m-2">
|
<div class="border shadow bg-light py-2 col-lg-3 d-flex align-items-center flex-column m-2" style="word-break: break-all;">
|
||||||
<h1><i class="bi bi-envelope-fill"></i></h1>
|
<h1><i class="bi bi-envelope-fill"></i></h1>
|
||||||
<p style="hyphens: auto;">
|
<div>
|
||||||
For billing: <a href="mailto:billing@mistymountainstherapy.com">billing@mistymountainstherapy.com</a>
|
<p style="hyphens: auto;">
|
||||||
<br>
|
Billing
|
||||||
For other questions: <a href="mailto:jeffer@mistymountainsthreapy.com">jeffer@mistymountainstherapy.com</a>
|
<br>
|
||||||
</p>
|
<a href="mailto:billing@mistymountainstherapy.com">billing@mistymountainstherapy.com</a>
|
||||||
|
</p>
|
||||||
|
<p style="hyphens: auto;">
|
||||||
|
Inqueries
|
||||||
|
<br>
|
||||||
|
<a href="mailto:contact@mistymountainsthreapy.com">contact@mistymountainstherapy.com</a>
|
||||||
|
</p>
|
||||||
|
<div><em>note: please watch spam for replies</em></div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<br>
|
<br>
|
||||||
<hr>
|
<hr>
|
||||||
<h3>Or send us a message</h3>
|
|
||||||
<form class="bg-light border shadow p-4" on:submit|preventDefault={handleSubmit}>
|
<form class="bg-light border shadow p-4" on:submit|preventDefault={handleSubmit}>
|
||||||
|
<h2>Or send us a message.</h2>
|
||||||
<div class="row mb-2">
|
<div class="row mb-2">
|
||||||
<div class="form-group col-md-6">
|
<div class="form-group col-md-6">
|
||||||
<label for="email">Email *</label>
|
<label for="email">Email *</label>
|
||||||
@ -130,7 +140,19 @@
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" class="btn btn-primary">Submit</button>
|
<button type="submit" class="btn btn-primary">Submit</button>
|
||||||
|
<div class="my-2"><em>note: please watch spam for any replies</em></div>
|
||||||
</form>
|
</form>
|
||||||
<br>
|
<br>
|
||||||
</main>
|
|
||||||
|
|
||||||
|
<div class="bg-light border shadow p-4">
|
||||||
|
<div class="d-flex justify-content-center">
|
||||||
|
<div class="col-md-8 mt-2">
|
||||||
|
<div>
|
||||||
|
We do not have a crisis line. If you or someone you know is in danger please call 911, visit
|
||||||
|
your nearest emergency room, call the National Suicide Prevention Lifeline for free crisis
|
||||||
|
counseling at <a href="tel:18002738255">(800)273-TALK</a> (8255), or text HELLO to 741-741.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
</Swiper>
|
</Swiper>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-5 my-2">
|
<div class="col-md-5 my-2">
|
||||||
<h2>Helping you conquer Mount Doom</h2>
|
<h2>Helping you conquer Mount Doom.</h2>
|
||||||
<p><a href="/contact" class="btn btn-success shadow">FREE 15 Minute Consultation</a></p>
|
<p><a href="/contact" class="btn btn-success shadow">FREE 15 Minute Consultation</a></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -61,8 +61,8 @@
|
|||||||
believe that therapy should be fun, engaging, and most importantly, useful to our clients.
|
believe that therapy should be fun, engaging, and most importantly, useful to our clients.
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
We are currently accepting new clients and offer a variety of services to help you live the
|
We are currently accepting new clients and offer a variety of services to <strong>help you live the
|
||||||
life you desire. To find the right fit for you, schedule a <a href="/contact"
|
life you desire</strong>. To find the right fit for you, schedule a <a href="/contact"
|
||||||
>free 15-minute consultation</a
|
>free 15-minute consultation</a
|
||||||
>.
|
>.
|
||||||
</p>
|
</p>
|
||||||
|
@ -3,28 +3,30 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
<h1 class="text-center">Services</h1>
|
<h1 class="text-center">Our Services.</h1>
|
||||||
<DirectionCard direction="left" imageSpec={{image: "https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/girl.jpg", alt: "Girl looking at camera"}}>
|
<DirectionCard direction="left" imageSpec={{image: "https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/girl.jpg", alt: "Girl looking at camera"}}>
|
||||||
<h2>Therapy</h2>
|
<h2>Therapy</h2>
|
||||||
|
<em>We provide personalized, unassuming, and nonjudgemental guidance in the following:</em>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Addiction</li>
|
<li>Addiction</li>
|
||||||
<li>Adolescents</li>
|
<li>Adolescents</li>
|
||||||
<li>ADHD</li>
|
<li>ADHD</li>
|
||||||
|
<li>Depression</li>
|
||||||
<li>Anxiety</li>
|
<li>Anxiety</li>
|
||||||
<li>Autism Spectrum</li>
|
<li>Autism Spectrum</li>
|
||||||
<li>Couples</li>
|
<li>LGBTQ+ Identity</li>
|
||||||
<li>Depression</li>
|
|
||||||
<li>Families</li>
|
|
||||||
<li>Gender Identity</li>
|
<li>Gender Identity</li>
|
||||||
|
<li>Couples</li>
|
||||||
|
<li>Families</li>
|
||||||
|
<li>Human Sexuality</li>
|
||||||
<li>Individuals</li>
|
<li>Individuals</li>
|
||||||
<li>LGBTQ+</li>
|
<li>Friends / Roomates</li>
|
||||||
<li>Roommates/Friends</li>
|
<li><em>And more</em></li>
|
||||||
<li>Sexuality</li>
|
|
||||||
<li>And more</li>
|
|
||||||
</ul>
|
</ul>
|
||||||
</DirectionCard>
|
</DirectionCard>
|
||||||
<DirectionCard direction="right" imageSpec={{image: "https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/guy.jpg", alt: "Boy smiling to left"}}>
|
<DirectionCard direction="right" imageSpec={{image: "https://ztxoywaazhxdeiftmsiy.supabase.co/storage/v1/object/public/mistymountains/guy.jpg", alt: "Boy smiling to left"}}>
|
||||||
<h2>Screeners</h2>
|
<h2>Screeners</h2>
|
||||||
|
<em>We perform high quality screening for:</em>
|
||||||
<ul>
|
<ul>
|
||||||
<li>ADHD</li>
|
<li>ADHD</li>
|
||||||
<li>Anxiety</li>
|
<li>Anxiety</li>
|
||||||
|
@ -20,7 +20,7 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
<h1 class="text-center">Our Team</h1>
|
<h1 class="text-center">Our Team.</h1>
|
||||||
{#if people.length}
|
{#if people.length}
|
||||||
{#each people as person, i}
|
{#each people as person, i}
|
||||||
<div class="row border-bottom">
|
<div class="row border-bottom">
|
||||||
|
Loading…
Reference in New Issue
Block a user