frontend: add ~ alias

This commit is contained in:
0x1eef 2024-02-08 17:58:55 -03:00
parent 932819fd63
commit d4db853c3e
21 changed files with 51 additions and 49 deletions

View file

@ -1,6 +1,6 @@
import { PropsWithChildren } from "react"; import { PropsWithChildren } from "react";
import { ApolloClient, ApolloProvider, InMemoryCache } from "@apollo/client"; import { ApolloClient, ApolloProvider, InMemoryCache } from "@apollo/client";
import { ParamContext } from "/Context"; import { ParamContext } from "~/Context";
export function App({ children }: PropsWithChildren<{}>) { export function App({ children }: PropsWithChildren<{}>) {
const client = new ApolloClient({ const client = new ApolloClient({

View file

@ -1,8 +1,8 @@
import type { Task } from "/types/schema"; import type { Task } from "~/types/schema";
import classnames from "classnames"; import classnames from "classnames";
import { DateTime } from "luxon"; import { DateTime } from "luxon";
import { QueryResult } from "@apollo/client"; import { QueryResult } from "@apollo/client";
import { TaskStatusSelect } from "/components/TaskStatusSelect"; import { TaskStatusSelect } from "~/components/TaskStatusSelect";
type Props = { type Props = {
groupName: string; groupName: string;

View file

@ -1,7 +1,7 @@
import { useContext } from "react"; import { useContext } from "react";
import { ParamContext } from "/Context"; import { ParamContext } from "~/Context";
import { Maybe } from "/types/schema"; import { Maybe } from "~/types/schema";
import { ProjectSelect } from "/components/ProjectSelect"; import { ProjectSelect } from "~/components/ProjectSelect";
const BASE_CLASSNAMES = ["block", "w-3/4", "no-underline", "p-3", "mt-2"]; const BASE_CLASSNAMES = ["block", "w-3/4", "no-underline", "p-3", "mt-2"];
const ACTIVE_CLASSNAMES = [ const ACTIVE_CLASSNAMES = [
...BASE_CLASSNAMES, ...BASE_CLASSNAMES,

View file

@ -1,6 +1,6 @@
import { useProjects } from "/hooks/queries/useProjects"; import { useProjects } from "~/hooks/queries/useProjects";
import { Project, Maybe } from "/types/schema"; import { Project, Maybe } from "~/types/schema";
import { Select, Option } from "/components/Select"; import { Select, Option } from "~/components/Select";
type Props = { type Props = {
selected: Maybe<string>; selected: Maybe<string>;

View file

@ -1,8 +1,8 @@
import { useSetRandomProjectColor } from "/hooks/mutations/useSetRandomProjectColor"; import { useSetRandomProjectColor } from "~/hooks/mutations/useSetRandomProjectColor";
import { useEffect } from "react"; import { useEffect } from "react";
import { NavBar } from "/components/NavBar"; import { NavBar } from "~/components/NavBar";
import { useProjects } from "/hooks/queries/useProjects"; import { useProjects } from "~/hooks/queries/useProjects";
import { Project } from "/types/schema"; import { Project } from "~/types/schema";
export function Projects() { export function Projects() {
const { data, loading } = useProjects(); const { data, loading } = useProjects();

View file

@ -1,14 +1,14 @@
import { useEffect, useState, useContext } from "react"; import { useEffect, useState, useContext } from "react";
import { ParamContext } from "/Context"; import { ParamContext } from "~/Context";
import { useForm } from "react-hook-form"; import { useForm } from "react-hook-form";
import { useCreateTask } from "/hooks/mutations/useCreateTask"; import { useCreateTask } from "~/hooks/mutations/useCreateTask";
import { useUpdateTask } from "/hooks/mutations/useUpdateTask"; import { useUpdateTask } from "~/hooks/mutations/useUpdateTask";
import { useFindTask } from "/hooks/queries/useFindTask"; import { useFindTask } from "~/hooks/queries/useFindTask";
import { useProjects } from "/hooks/queries/useProjects"; import { useProjects } from "~/hooks/queries/useProjects";
import { Task, Project, TaskInput, Maybe } from "/types/schema"; import { Task, Project, TaskInput, Maybe } from "~/types/schema";
import { rendermd } from "/lib/markdown-utils"; import { rendermd } from "~/lib/markdown-utils";
import { NavBar } from "/components/NavBar"; import { NavBar } from "~/components/NavBar";
import { Tabs, Tab } from "/components/Tabs"; import { Tabs, Tab } from "~/components/Tabs";
const DEFAULT_TASK_CONTENT = [ const DEFAULT_TASK_CONTENT = [
"## Subtasks", "## Subtasks",

View file

@ -1,6 +1,6 @@
import { Task, TaskStatus } from "/types/schema"; import { Task, TaskStatus } from "~/types/schema";
import { useUpdateTask } from "hooks/mutations/useUpdateTask"; import { useUpdateTask } from "~/hooks/mutations/useUpdateTask";
import { GET_TASKS } from "/hooks/queries/useTasks"; import { GET_TASKS } from "~/hooks/queries/useTasks";
type Props = { type Props = {
task: Task; task: Task;

View file

@ -1,9 +1,9 @@
import { useEffect, useContext } from "react"; import { useEffect, useContext } from "react";
import { ParamContext } from "/Context"; import { ParamContext } from "~/Context";
import { NavBar } from "/components/NavBar"; import { NavBar } from "~/components/NavBar";
import { Group } from "/components/Group"; import { Group } from "~/components/Group";
import { TaskStatus, Maybe } from "/types/schema"; import { TaskStatus, Maybe } from "~/types/schema";
import { useTasks } from "/hooks/queries/useTasks"; import { useTasks } from "~/hooks/queries/useTasks";
export function Tasks() { export function Tasks() {
const params = useContext(ParamContext); const params = useContext(ParamContext);

View file

@ -1,5 +1,5 @@
import { gql, useMutation } from "@apollo/client"; import { gql, useMutation } from "@apollo/client";
import { CompleteTaskPayload, MutationCompleteTaskArgs } from "/types/schema"; import { CompleteTaskPayload, MutationCompleteTaskArgs } from "~/types/schema";
const GQL = gql` const GQL = gql`
mutation CompleteTask($taskId: Int!) { mutation CompleteTask($taskId: Int!) {

View file

@ -2,7 +2,7 @@ import {
CreateTaskPayload, CreateTaskPayload,
MutationCreateTaskArgs, MutationCreateTaskArgs,
TaskInput, TaskInput,
} from "/types/schema"; } from "~/types/schema";
import { gql, useMutation } from "@apollo/client"; import { gql, useMutation } from "@apollo/client";
const GQL = gql` const GQL = gql`

View file

@ -1,5 +1,5 @@
import { gql, useMutation } from "@apollo/client"; import { gql, useMutation } from "@apollo/client";
import { DestroyTaskPayload, MutationDestroyTaskArgs } from "/types/schema"; import { DestroyTaskPayload, MutationDestroyTaskArgs } from "~/types/schema";
const GQL = gql` const GQL = gql`
mutation DestroyTask($taskId: Int!) { mutation DestroyTask($taskId: Int!) {

View file

@ -3,7 +3,7 @@ import {
SetRandomProjectColorPayload, SetRandomProjectColorPayload,
MutationSetRandomProjectColorArgs, MutationSetRandomProjectColorArgs,
Project, Project,
} from "/types/schema"; } from "~/types/schema";
const GQL = gql` const GQL = gql`
mutation SetRandomProjectColor($projectId: Int!) { mutation SetRandomProjectColor($projectId: Int!) {

View file

@ -2,7 +2,7 @@ import {
UpdateTaskPayload, UpdateTaskPayload,
MutationUpdateTaskArgs, MutationUpdateTaskArgs,
TaskInput, TaskInput,
} from "/types/schema"; } from "~/types/schema";
import { gql, useMutation, DocumentNode } from "@apollo/client"; import { gql, useMutation, DocumentNode } from "@apollo/client";
const GQL = gql` const GQL = gql`

View file

@ -1,5 +1,5 @@
import { gql, useQuery } from "@apollo/client"; import { gql, useQuery } from "@apollo/client";
import { Maybe, Task } from "/types/schema"; import { Maybe, Task } from "~/types/schema";
const GQL = gql` const GQL = gql`
query Query($taskId: Int!) { query Query($taskId: Int!) {

View file

@ -1,5 +1,5 @@
import { useQuery, gql } from "@apollo/client"; import { useQuery, gql } from "@apollo/client";
import { Task } from "/types/schema"; import { Task } from "~/types/schema";
export const GET_TASKS = gql` export const GET_TASKS = gql`
query GetTasks($status: TaskStatus!, $projectId: Int) { query GetTasks($status: TaskStatus!, $projectId: Int) {

View file

@ -1,6 +1,6 @@
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { App } from "/components/App"; import { App } from "~/components/App";
import { Projects } from "/components/Projects"; import { Projects } from "~/components/Projects";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;

View file

@ -1,6 +1,6 @@
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { App } from "/components/App"; import { App } from "~/components/App";
import { Task } from "/components/Task"; import { Task } from "~/components/Task";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;

View file

@ -1,6 +1,6 @@
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { App } from "/components/App"; import { App } from "~/components/App";
import { Task } from "/components/Task"; import { Task } from "~/components/Task";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;

View file

@ -1,6 +1,6 @@
import ReactDOM from "react-dom/client"; import ReactDOM from "react-dom/client";
import { App } from "/components/App"; import { App } from "~/components/App";
import { Tasks } from "/components/Tasks"; import { Tasks } from "~/components/Tasks";
(function () { (function () {
const root = document.querySelector(".react-root")!; const root = document.querySelector(".react-root")!;

View file

@ -11,7 +11,7 @@
"allowJs": true, "allowJs": true,
"lib": [ "ES2022", "DOM" ], "lib": [ "ES2022", "DOM" ],
"allowUmdGlobalAccess": true, "allowUmdGlobalAccess": true,
"baseUrl": "src/", "baseUrl": "./src",
"paths": { "*": ["js/*"] }, "paths": { "~/*": ["./js/*"] },
} }
} }

View file

@ -5,8 +5,10 @@ const process = require('process');
module.exports = { module.exports = {
mode: process.env.NODE_ENV || "development", mode: process.env.NODE_ENV || "development",
resolve: { resolve: {
roots: [path.resolve('src/js'), path.resolve('node_modules')], alias: {
modules: [path.resolve('src/js'), path.resolve('node_modules')], '~': [path.resolve('src/js')]
},
modules: [path.resolve('node_modules')],
extensions: ['.js', '.ts', '.tsx'] extensions: ['.js', '.ts', '.tsx']
}, },
module: { module: {