diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 40fec0c..1b7bf96 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -35,10 +35,6 @@ jobs: run: | aws s3 cp s3://jobshop.works/production.env ./src/.env - - name: Sync production.env configuration file - run: | - aws s3 cp s3://jobshop.works/production.env ./src/production.env - - name: Build, tag and push latest docker images run: ENV=prod docker buildx bake --push diff --git a/src/CHANGELOG.md b/src/CHANGELOG.md index 38d2803..7e7cc4f 100644 --- a/src/CHANGELOG.md +++ b/src/CHANGELOG.md @@ -2,10 +2,15 @@ All notable changes to this project will be documented in this file. Dates are displayed in UTC. -Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - #### 1.0.1 +- AutoChangelog HOTFIX [`#22`](https://github.com/eknowlton/simpletaskmanager/pull/22) +- Develop [`#21`](https://github.com/eknowlton/simpletaskmanager/pull/21) +- Auto Changelog & Feature Page [`#20`](https://github.com/eknowlton/simpletaskmanager/pull/20) +- Release [`#19`](https://github.com/eknowlton/simpletaskmanager/pull/19) +- Updates [`#18`](https://github.com/eknowlton/simpletaskmanager/pull/18) +- Release [`#17`](https://github.com/eknowlton/simpletaskmanager/pull/17) +- Version [`#16`](https://github.com/eknowlton/simpletaskmanager/pull/16) - Develop [`#15`](https://github.com/eknowlton/simpletaskmanager/pull/15) - Develop [`#13`](https://github.com/eknowlton/simpletaskmanager/pull/13) - added laravel bug tracking [`#12`](https://github.com/eknowlton/simpletaskmanager/pull/12) @@ -13,6 +18,7 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - Adding more tests [`#8`](https://github.com/eknowlton/simpletaskmanager/pull/8) - Create tasks from inbox #1 [`#11`](https://github.com/eknowlton/simpletaskmanager/pull/11) - finished add and update task on inbox [`#10`](https://github.com/eknowlton/simpletaskmanager/pull/10) +- Fixes #24 [`#24`](https://github.com/eknowlton/simpletaskmanager/issues/24) - initial commit [`998c687`](https://github.com/eknowlton/simpletaskmanager/commit/998c687056248b0c7bdb5d33576f616ae6c31cda) - closer to working product [`c75cff3`](https://github.com/eknowlton/simpletaskmanager/commit/c75cff3e629365dae394a187a0c19d78a9979283) - lets get the deploy build working [`1ffd542`](https://github.com/eknowlton/simpletaskmanager/commit/1ffd5424601b0b4baf47f0bdff0191b752ff0674) diff --git a/src/resources/js/components/ui/task-list-item.tsx b/src/resources/js/components/ui/task-list-item.tsx new file mode 100644 index 0000000..b1d899a --- /dev/null +++ b/src/resources/js/components/ui/task-list-item.tsx @@ -0,0 +1,48 @@ +import { Calendar, ChartNoAxesCombined, Sparkles, Check, Square, SquareCheck } from 'lucide-react'; + +export default function TaskListItem({ item: task, onClick }: { item: Shared.Data.Task, onClick: () => void }) { + return ( +
+
+ +
+ + {task.status.label} + + + {task.priority} + +
+
+
+
{task.description}
+ {task.due_date && ( +
+ + {task.due_date ? new Date(task.due_date).toLocaleString() : null} +
+ )} +
+
+
+
+ {task.tags && + task.tags.length > 0 && + task.tags.map(({ label, value }: Shared.Data.Tag) => ( + + {label} + + ))} +
+
+
+ ); +} diff --git a/src/resources/js/components/ui/task-list.tsx b/src/resources/js/components/ui/task-list.tsx new file mode 100644 index 0000000..b5948c2 --- /dev/null +++ b/src/resources/js/components/ui/task-list.tsx @@ -0,0 +1,9 @@ +import React, { JSX } from 'react'; + +export default function TaskList({ children}: React.PropsWithChildren){ + return ( +
+ {children} +
+ ); +} diff --git a/src/resources/js/pages/inbox.tsx b/src/resources/js/pages/inbox.tsx index 52090d8..681b92e 100755 --- a/src/resources/js/pages/inbox.tsx +++ b/src/resources/js/pages/inbox.tsx @@ -10,6 +10,8 @@ import { type BreadcrumbItem } from '@/types'; import { Head } from '@inertiajs/react'; import { Plus } from 'lucide-react'; import { useState } from 'react'; +import TaskList from '@/components/ui/task-list'; +import TaskListItem from '@/components/ui/task-list-item'; const breadcrumbs: BreadcrumbItem[] = [ { @@ -39,37 +41,14 @@ export default function Inbox({ inbox, twoMinute }: { inbox: Shared.Data.Task[]; {inbox.length > 0 ? (
- {inbox.map((task) => ( -
-
- -
- {task.status.label}{' '} - ( {task.priority} ) -
-
-
-
{task.description}
- {task.due_date && ( -
- Due On - {task.due_date && new Date(task.due_date).toLocaleString()} -
- )} -
-
- ))} + + {inbox.map((task) => ( + { + setTask(task); + setView('edit'); + }} /> + ))} +
) : (

No upcoming tasks.

@@ -80,39 +59,14 @@ export default function Inbox({ inbox, twoMinute }: { inbox: Shared.Data.Task[]; {twoMinute.length > 0 ? ( -
+ {twoMinute.map((task) => ( -
-
- -
- {task.status.label}{' '} - ( {task.priority} ) -
-
-
-
{task.description}
- {task.due_date && ( -
- Due On - {task.due_date && new Date(task.due_date).toLocaleString()} -
- )} -
-
+ { + setTask(task); + setView('edit'); + }} /> ))} -
+ ) : (

No two minute tasks.

)} diff --git a/src/resources/js/pages/projects/inbox.tsx b/src/resources/js/pages/projects/inbox.tsx index bc1ad21..2e654d2 100755 --- a/src/resources/js/pages/projects/inbox.tsx +++ b/src/resources/js/pages/projects/inbox.tsx @@ -6,10 +6,12 @@ import { ProjectView } from '@/components/project-view'; import { TaskView } from '@/components/task-view'; import { Button } from '@/components/ui/button'; import { Sheet, SheetContent } from '@/components/ui/sheet'; +import TaskList from '@/components/ui/task-list'; +import TaskListItem from '@/components/ui/task-list-item'; import AppLayout from '@/layouts/app-layout'; import { type BreadcrumbItem } from '@/types'; import { Head } from '@inertiajs/react'; -import { ChartNoAxesCombined, Plus, Sparkles } from 'lucide-react'; +import { Plus } from 'lucide-react'; import { useState } from 'react'; const breadcrumbs: BreadcrumbItem[] = [ @@ -42,60 +44,17 @@ export default function Show({ project, tasks }: { project: Shared.Data.Project; {tasks.length > 0 ? ( - <> -
- {tasks.map((task) => ( -
-
- -
- - {task.status.label} - - - {task.priority} - -
-
-
-
{task.description}
- {task.due_date && ( -
- Due On - {task.due_date && new Date(task.due_date).toLocaleString()} -
- )} -
-
-
-
- {task.tags && - task.tags.length > 0 && - task.tags.map(({ label, value }) => ( - - {label} - - ))} -
-
-
- ))} -
- + + {tasks.map((task) => ( + { + setTask(task); + setView('edit'); + }} + /> + ))} + ) : (

No tasks in project.

)} diff --git a/src/resources/js/pages/projects/show.tsx b/src/resources/js/pages/projects/show.tsx index 4f58341..d4673b7 100755 --- a/src/resources/js/pages/projects/show.tsx +++ b/src/resources/js/pages/projects/show.tsx @@ -10,8 +10,10 @@ import { Sheet, SheetContent } from '@/components/ui/sheet'; import AppLayout from '@/layouts/app-layout'; import { type BreadcrumbItem } from '@/types'; import { Head } from '@inertiajs/react'; -import { ChartNoAxesCombined, Plus, Sparkles } from 'lucide-react'; import { useState } from 'react'; +import TaskList from '@/components/ui/task-list'; +import TaskListItem from '@/components/ui/task-list-item'; +import { Plus } from 'lucide-react'; const breadcrumbs: BreadcrumbItem[] = [ { @@ -44,58 +46,14 @@ export default function Show({ project, tasks }: { project: Shared.Data.Project; {tasks.data.length > 0 ? ( <> -
+ {tasks.data.map((task) => ( -
-
- -
- - {task.status.label} - - - {task.priority} - -
-
-
-
{task.description}
- {task.due_date && ( -
- Due On - {task.due_date && new Date(task.due_date).toLocaleString()} -
- )} -
-
-
-
- {task.tags && - task.tags.length > 0 && - task.tags.map(({ label, value }) => ( - - {label} - - ))} -
-
-
+ { + setTask(task); + setView('edit-task'); + }} /> ))} -
+ ) : ( diff --git a/src/resources/js/pages/tasks/index.tsx b/src/resources/js/pages/tasks/index.tsx index a9727ae..d8d874a 100755 --- a/src/resources/js/pages/tasks/index.tsx +++ b/src/resources/js/pages/tasks/index.tsx @@ -6,10 +6,11 @@ import { PaginatedCollectionPaging } from '@/components/paginated-collection-pag import { TaskView } from '@/components/task-view'; import { Button } from '@/components/ui/button'; import { Sheet, SheetContent } from '@/components/ui/sheet'; +import TaskList from '@/components/ui/task-list'; +import TaskListItem from '@/components/ui/task-list-item'; import AppLayout from '@/layouts/app-layout'; import { type BreadcrumbItem } from '@/types'; import { Head } from '@inertiajs/react'; -import { Calendar, ChartNoAxesCombined, Sparkles } from 'lucide-react'; import { useState } from 'react'; const breadcrumbs: BreadcrumbItem[] = [ @@ -37,52 +38,11 @@ export default function Index({ tasks }: { tasks: PaginatedCollection {tasks.data.length > 0 ? ( <> -
+ {tasks.data.map((task) => ( -
-
- -
- - {task.status.label} - - - {task.priority} - -
-
-
-
{task.description}
- {task.due_date && ( -
- - {task.due_date ? new Date(task.due_date).toLocaleString() : null} -
- )} -
-
-
-
- {task.tags && - task.tags.length > 0 && - task.tags.map(({ label, value }: Shared.Data.Tag) => ( - - {label} - - ))} -
-
-
+ setTask(task)} /> ))} -
+ ) : ( diff --git a/src/resources/js/pages/welcome.tsx b/src/resources/js/pages/welcome.tsx index 4865baf..2e1abbe 100755 --- a/src/resources/js/pages/welcome.tsx +++ b/src/resources/js/pages/welcome.tsx @@ -30,8 +30,6 @@ const useInView = (options) => { return [ref, inView]; }; -// --- SVG Icon Components (HeroIcons & Custom) --- - const MenuIcon = () => ( @@ -90,24 +88,20 @@ const AnimatedAppPreview = ({ theme }) => ( - {/* Sidebar */} - {/* Sidebar links */} + - {/* Main Content Area - Kanban Board */} - {/* Columns */} - {/* Column Headers */} To Do @@ -603,7 +597,6 @@ export default function App() { - {/* Footer */}