too much time on responsive, on to hooking up cms
This commit is contained in:
+1
-1
@@ -8,7 +8,7 @@ WORKDIR /usr/src/app
|
||||
COPY package*.json ./
|
||||
|
||||
# Install dependencies
|
||||
RUN npm install
|
||||
RUN npm install --legacy-peer-deps
|
||||
|
||||
# Copy the rest of your application code
|
||||
COPY . .
|
||||
|
||||
Generated
+39
@@ -8,6 +8,7 @@
|
||||
"name": "britton-site",
|
||||
"version": "2.0.0",
|
||||
"dependencies": {
|
||||
"fluid-tailwind": "^1.0.4",
|
||||
"next": "15.3.4",
|
||||
"react": "^19.0.0",
|
||||
"react-dom": "^19.0.0",
|
||||
@@ -3824,6 +3825,18 @@
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/filter-obj": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/filter-obj/-/filter-obj-5.1.0.tgz",
|
||||
"integrity": "sha512-qWeTREPoT7I0bifpPUXtxkZJ1XJzxWtfoWWkdVGqa+eCr3SHW/Ocp89o8vLvbUuQnadybJpjOKu4V+RwO6sGng==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=14.16"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/find-up": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
|
||||
@@ -3862,6 +3875,20 @@
|
||||
"dev": true,
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/fluid-tailwind": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/fluid-tailwind/-/fluid-tailwind-1.0.4.tgz",
|
||||
"integrity": "sha512-jO1+4l4r3kE/5We3kYRl3o4JsbFA2zoluEwJG3VrytlKuCfK4aTv5QHqXgOaw0YQd9HKjOVIFYsVvhG8sxIh5w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"filter-obj": "^5.1.0",
|
||||
"map-obj": "^5.0.2",
|
||||
"picocolors": "^1.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"tailwindcss": "^3.2.0"
|
||||
}
|
||||
},
|
||||
"node_modules/for-each": {
|
||||
"version": "0.3.5",
|
||||
"resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz",
|
||||
@@ -5079,6 +5106,18 @@
|
||||
"@jridgewell/sourcemap-codec": "^1.5.0"
|
||||
}
|
||||
},
|
||||
"node_modules/map-obj": {
|
||||
"version": "5.0.2",
|
||||
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-5.0.2.tgz",
|
||||
"integrity": "sha512-K6K2NgKnTXimT3779/4KxSvobxOtMmx1LBZ3NwRxT/MDIR3Br/fQ4Q+WCX5QxjyUR8zg5+RV9Tbf2c5pAWTD2A==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": "^12.20.0 || ^14.13.1 || >=16.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/math-intrinsics": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import LandingPage from '../../components/LandingPage';
|
||||
import InlineLink from "../../components/InlineLink";
|
||||
import LandingPage from '../../../components/LandingPage';
|
||||
import InlineLink from "../../../components/InlineLink";
|
||||
// import TextImage50 from "../../components/TextImage50-50";
|
||||
|
||||
export default function Members() {
|
||||
|
||||
@@ -21,7 +21,7 @@ export default async function DashboardLayout({ children }: { children: React.Re
|
||||
<Script src={`https://maps.googleapis.com/maps/api/js?key=${process.env.GOOGLE_PLACES_API_KEY}&libraries=places`} strategy="beforeInteractive" />
|
||||
<div className="absolute bottom-0 right-0 flex flex-col justify-end items-end w-full h-full">
|
||||
<div className="w-full -mb-[2px] flex justify-start">
|
||||
<div className="w-23/24 h-20 border-b-2 border-copper z-2" />
|
||||
<div className="w-[87vw] sm:w-[91vw] md:w-[93vw] lg:w-[94.5vw] xl:w-[95.5vw] h-20 border-b-2 border-copper z-2" />
|
||||
</div>
|
||||
<div className="w-[60px] h-full flex justify-start">
|
||||
<div className="w-[32.5px] flex flex-col">
|
||||
@@ -37,7 +37,7 @@ export default async function DashboardLayout({ children }: { children: React.Re
|
||||
bgColor="bg-atmosphere"
|
||||
navItems={pageNavItems}
|
||||
/>
|
||||
<div className="w-full min-w-[89vw] max-w-[95vw] flex flex-col items-end">
|
||||
<div className="w-full min-w-[87vw] max-w-[94vw] lg:min-w-[89vw] lg:max-w-[95vw] flex flex-col items-end">
|
||||
<div className="w-[90.15vw] h-20 flex justify-between items-center">
|
||||
<div className={classnames('flex items-center')}>
|
||||
<div className="-ml-8.5 z-2">
|
||||
|
||||
@@ -51,29 +51,6 @@ export default function Member() {
|
||||
</div>
|
||||
</div>
|
||||
<div className="w-full h-full flex justify-start">
|
||||
{/* <div className="relative w-31 h-full flex flex-col text-deepcove text-center bg-atmosphere divide-y divide-bluetang">
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center bg-bluetang text-platinum">
|
||||
Dashboard
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum">
|
||||
My Plan & Benefits
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum">
|
||||
Plan Utilization
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum">
|
||||
Claims & Authorizations
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum">
|
||||
Providers & Services
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum">
|
||||
Insurance Card
|
||||
</a>
|
||||
<a href="#" className="w-full h-20 flex justify-center items-center hover:text-platinum border-b border-bluetang">
|
||||
Benefits Documents
|
||||
</a>
|
||||
</div> */}
|
||||
<SideNav
|
||||
maxWidth="max-w-31"
|
||||
bgColor="bg-atmosphere"
|
||||
@@ -280,27 +257,6 @@ export default function Member() {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/* <div className="flex space-x-4">
|
||||
<div className="flex flex-col justify-center items-center text-xl border border-6 border-bluetang rounded-4xl">
|
||||
<div className="flex justify-between items-end px-4">
|
||||
<p className={classnames("pb-18 text-[#32CD32] font-semibold", font.className)}>Paid</p>
|
||||
<div className="flex flex-col items-center">
|
||||
<DashboardPieChart paid={758.72} remaining={741.28} />
|
||||
<p className="text-2xl">Deductable Progress</p>
|
||||
</div>
|
||||
<p className={classnames("pb-18 font-semibold", font.className)}>Remaining</p>
|
||||
</div>
|
||||
</div>
|
||||
<div className="flex flex-col justify-center items-center px-4 py-3 text-xl border border-6 border-copper rounded-4xl">
|
||||
<div className="text-deepcove -mb-11 z-3 font-semibold">My Card</div>
|
||||
<FaRegIdCard size={150} className="text-bronze" />
|
||||
<div className={classnames("w-full flex justify-evenly items-center space-x-1", font.className)}>
|
||||
<div className="hover:text-bronze">View</div>
|
||||
<p>|</p>
|
||||
<div className="hover:text-bronze">Download</div>
|
||||
</div>
|
||||
</div>
|
||||
</div> */}
|
||||
</div>
|
||||
<div className="w-2/5 flex flex-col justify-start items-center px-4 py-3 text-xl border border-6 border-platinum rounded-4xl">
|
||||
<p className="text-3xl underline py-2">Benefits At A Glance</p>
|
||||
|
||||
@@ -14,9 +14,9 @@ export default function Member() {
|
||||
userDisplayName="Robert La'Blah"
|
||||
/>
|
||||
<div className="flex w-full pr-23">
|
||||
<div className={classnames("w-full flex flex-col xl:flex-row justify-stretch pt-4 z-2 space-x-4 space-y-4 xl:space-y-0")}>
|
||||
<div className={classnames("w-full flex flex-col xl:flex-row pt-4 z-2 space-x-4 space-y-4 xl:space-y-0")}>
|
||||
<div className="flex flex-col space-y-4">
|
||||
<div className="flex space-x-4">
|
||||
<div className="flex flex-col w-full h-full xl:h-auto lg:flex-row space-y-4 lg:space-y-0 lg:space-x-4">
|
||||
<DeductableProgressWidget />
|
||||
<InsuranceCardWidget />
|
||||
</div>
|
||||
|
||||
@@ -63,8 +63,9 @@ const DashboardPieChart: React.FC<DashboardPieChartProps> = ({paid, remaining})
|
||||
{ name: 'Deductable Remaining', value: remaining },
|
||||
];
|
||||
return (
|
||||
<div className="w-full h-full">
|
||||
<PieChart width={250} height={140} title="Deductable Progress">
|
||||
<div className="w-full min-h-[135px]">
|
||||
<ResponsiveContainer width="100%" height="100%">
|
||||
<PieChart title="Deductable Progress">
|
||||
<Pie
|
||||
data={data}
|
||||
startAngle={180}
|
||||
@@ -73,7 +74,6 @@ const DashboardPieChart: React.FC<DashboardPieChartProps> = ({paid, remaining})
|
||||
cy="100%"
|
||||
labelLine={false}
|
||||
label={renderCustomizedLabel}
|
||||
outerRadius={120}
|
||||
fill="#2A4B6F"
|
||||
dataKey="value"
|
||||
stroke="#04153E"
|
||||
@@ -84,6 +84,7 @@ const DashboardPieChart: React.FC<DashboardPieChartProps> = ({paid, remaining})
|
||||
))}
|
||||
</Pie>
|
||||
</PieChart>
|
||||
</ResponsiveContainer>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
|
||||
@@ -4,6 +4,8 @@ import React, { useState } from 'react';
|
||||
import classnames from 'classnames';
|
||||
import DashboardPieChart from '@/components/DashboardPieChart';
|
||||
|
||||
import Button from '@/components/Button';
|
||||
|
||||
import { Schibsted_Grotesk } from 'next/font/google'
|
||||
const font = Schibsted_Grotesk({ subsets: ['latin'] })
|
||||
|
||||
@@ -13,14 +15,19 @@ interface DeductableProgressWidgetProps {
|
||||
const DeductableProgressWidget = () => {
|
||||
|
||||
return (
|
||||
<div className="2xl:min-w-[32vw] xl:min-w-[30vw] min-w-[50vw] flex flex-col justify-center items-center text-xl border border-6 border-bluetang rounded-4xl z-1">
|
||||
<div className="flex justify-between items-end px-4">
|
||||
<p className={classnames("pb-18 text-[#32CD32] font-semibold", font.className)}>Paid</p>
|
||||
<div className="flex flex-col items-center">
|
||||
<div className="w-full lg:h-full flex flex-col justify-center items-center text-xl border border-6 border-bluetang rounded-4xl z-1">
|
||||
<div className="2xl:min-w-[32vw] xl:w-[27vw] lg:w-[27vw] md:w-[27vw] flex flex-col justify-center items-center p-2">
|
||||
<div className="text-2xl">Deductable Progress</div>
|
||||
<DashboardPieChart paid={1007.23} remaining={492.77} />
|
||||
<p className="text-2xl">Deductable Progress</p>
|
||||
<div className={classnames("w-full flex font-semibold text-center", font.className)}>
|
||||
<div className="w-[50vw] text-[#32CD32]">Paid</div>
|
||||
<div className="w-[50vw]">Remaining</div>
|
||||
</div>
|
||||
<div className={classnames("w-full flex justify-end text-platinum font-semibold text-base")}>
|
||||
<Button className="pr-4 underline hover:text-bronze">
|
||||
View Details
|
||||
</Button>
|
||||
</div>
|
||||
<p className={classnames("pb-18 font-semibold", font.className)}>Remaining</p>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
@@ -25,7 +25,6 @@ const iconMap: iconMapType = {
|
||||
|
||||
type DynamicIconProps = IconBaseProps & {
|
||||
iconName: string;
|
||||
size?: number;
|
||||
};
|
||||
|
||||
// interface DynamicIconProps {
|
||||
|
||||
@@ -10,10 +10,14 @@ const font = Schibsted_Grotesk({ subsets: ['latin'] })
|
||||
const InsuranceCardWidget = () => {
|
||||
|
||||
return (
|
||||
<div className="2xl:min-w-[16vw] xl:min-w-[15vw] flex flex-col justify-center items-center px-4 py-3 text-xl border border-6 border-atmosphere rounded-4xl z-1">
|
||||
<div className="text-deepcove -mb-11 z-3 font-semibold">My Card</div>
|
||||
<div className="2xl:min-w-[16vw] xl:min-w-[15vw] w-full h-full flex lg:flex-col justify-center items-center text-xl space-x-10 lg:space-x-0 border border-6 border-atmosphere rounded-4xl z-1">
|
||||
<div className="flex flex-col justify-end items-center">
|
||||
<div className="z-3 flex items-end">
|
||||
<div className="text-deepcove -mb-11 font-semibold">My Card</div>
|
||||
</div>
|
||||
<FaRegIdCard size={150} className="text-bluemana" />
|
||||
<div className={classnames("w-full 2xl:min-w-[9vw] xl:min-w-[11vw] flex justify-between items-center space-x-1", font.className)}>
|
||||
</div>
|
||||
<div className={classnames("flex justify-between items-center space-x-1", font.className)}>
|
||||
<Button className="hover:text-bronze">
|
||||
View
|
||||
</Button>
|
||||
|
||||
@@ -34,8 +34,8 @@ const SideNav: React.FC<SideNavProps> = (
|
||||
"relative h-full flex flex-col text-deepcove text-center transition-all duration-500",
|
||||
bgColor,
|
||||
{
|
||||
"w-[5vw]" : !isSidebarOpen,
|
||||
"w-[11vw]" : isSidebarOpen
|
||||
"w-[6vw] lg:w-[5vw]" : !isSidebarOpen,
|
||||
"w-[13vw] lg:w-[11vw]" : isSidebarOpen
|
||||
}
|
||||
|
||||
)}>
|
||||
@@ -49,7 +49,7 @@ const SideNav: React.FC<SideNavProps> = (
|
||||
<div className="flex flex-col divide-y divide-bluetang">
|
||||
{navItems.map((navItem, index) => (
|
||||
<a href={navItem.url} className={classnames(
|
||||
"w-full h-20 flex justify-center items-center font-semibold hover:text-platinum",
|
||||
"w-full h-20 flex justify-center items-center px-1 text-xs md:text-sm lg:text-base font-semibold hover:text-platinum",
|
||||
{"bg-bluetang text-platinum" : index == 0}
|
||||
)}>
|
||||
{isSidebarOpen ? (
|
||||
|
||||
@@ -1,5 +1,20 @@
|
||||
import fluid, { extract, screens, fontSize } from 'fluid-tailwind'
|
||||
|
||||
module.exports = {
|
||||
// Define content paths for Tailwind CSS to scan for classes
|
||||
content: {
|
||||
files: [
|
||||
'./src/components/**/*.{tsx}',
|
||||
'./src/app/**/*.{tsx}',
|
||||
],
|
||||
extract, // Use the extract function from fluid-tailwind
|
||||
},
|
||||
theme: {
|
||||
extend: {},
|
||||
screens, // Integrate fluid-tailwind's screens for responsive breakpoints
|
||||
fontSize, // Integrate fluid-tailwind's font sizes for fluid typography
|
||||
},
|
||||
plugins: [
|
||||
fluid, // Include the fluid-tailwind plugin
|
||||
],
|
||||
};
|
||||
Reference in New Issue
Block a user