From d37a8c77946cdb8ffa320053334faf42e1dfc9f3 Mon Sep 17 00:00:00 2001 From: Mumtahin Farabi Date: Tue, 12 Nov 2024 00:28:33 -0500 Subject: [PATCH] feat(ui/website): use shared libs configs --- apps/website/app/nx-welcome.tsx | 2 +- apps/website/app/root.tsx | 10 +- apps/website/app/routes/_index.tsx | 4 +- apps/website/app/tailwind.css | 3 - apps/website/tailwind.config.ts | 28 +- components.json | 15 + libs/shared/config/tailwind/base.js | 2 +- libs/shared/ui/.babelrc | 12 + libs/shared/ui/.storybook/main.ts | 16 - libs/shared/ui/.storybook/preview.ts | 0 libs/shared/ui/eslint.config.js | 37 +++ libs/shared/ui/package.json | 12 - libs/shared/ui/project.json | 9 +- libs/shared/ui/src/index.ts | 1 - libs/shared/ui/src/lib/ui.stories.tsx | 9 - libs/shared/ui/src/lib/ui.tsx | 9 - libs/shared/ui/tsconfig.json | 5 +- libs/shared/ui/tsconfig.lib.json | 23 ++ libs/shared/ui/tsconfig.storybook.json | 16 - libs/shared/utils/.babelrc | 12 + libs/shared/utils/README.md | 7 + libs/shared/utils/eslint.config.js | 37 +++ libs/shared/utils/project.json | 9 + libs/shared/utils/src/cn.ts | 6 + libs/shared/utils/src/global.css | 66 ++++ libs/shared/utils/src/index.ts | 1 + libs/shared/utils/src/tailwind.config.ts | 78 +++++ libs/shared/utils/tsconfig.json | 16 + libs/shared/utils/tsconfig.lib.json | 23 ++ nx.json | 26 +- package.json | 9 +- pnpm-lock.yaml | 405 +++++++++++++++++++++++ tsconfig.base.json | 21 +- 33 files changed, 809 insertions(+), 120 deletions(-) delete mode 100644 apps/website/app/tailwind.css create mode 100644 components.json create mode 100644 libs/shared/ui/.babelrc delete mode 100644 libs/shared/ui/.storybook/main.ts delete mode 100644 libs/shared/ui/.storybook/preview.ts create mode 100644 libs/shared/ui/eslint.config.js delete mode 100644 libs/shared/ui/package.json delete mode 100644 libs/shared/ui/src/index.ts delete mode 100644 libs/shared/ui/src/lib/ui.stories.tsx delete mode 100644 libs/shared/ui/src/lib/ui.tsx create mode 100644 libs/shared/ui/tsconfig.lib.json delete mode 100644 libs/shared/ui/tsconfig.storybook.json create mode 100644 libs/shared/utils/.babelrc create mode 100644 libs/shared/utils/README.md create mode 100644 libs/shared/utils/eslint.config.js create mode 100644 libs/shared/utils/project.json create mode 100644 libs/shared/utils/src/cn.ts create mode 100644 libs/shared/utils/src/global.css create mode 100644 libs/shared/utils/src/index.ts create mode 100644 libs/shared/utils/src/tailwind.config.ts create mode 100644 libs/shared/utils/tsconfig.json create mode 100644 libs/shared/utils/tsconfig.lib.json diff --git a/apps/website/app/nx-welcome.tsx b/apps/website/app/nx-welcome.tsx index 263d11eed..0b593b0bb 100644 --- a/apps/website/app/nx-welcome.tsx +++ b/apps/website/app/nx-welcome.tsx @@ -427,7 +427,7 @@ export function NxWelcome({ title }: { title: string }) { `, }} /> -
+

diff --git a/apps/website/app/root.tsx b/apps/website/app/root.tsx index 732a06172..c675d59d0 100644 --- a/apps/website/app/root.tsx +++ b/apps/website/app/root.tsx @@ -1,4 +1,4 @@ -import type { LinksFunction, MetaFunction } from '@remix-run/node' +import type { LinksFunction } from '@remix-run/node' import { Links, @@ -7,16 +7,10 @@ import { Scripts, ScrollRestoration, } from '@remix-run/react' -import twStyles from './tailwind.css' -export const meta: MetaFunction = () => [ - { - title: 'New Remix App', - }, -] +import '@cuhacking/utils/global.css' export const links: LinksFunction = () => [ - { rel: 'stylesheet', href: twStyles }, { rel: 'preconnect', href: 'https://fonts.googleapis.com' }, { rel: 'preconnect', diff --git a/apps/website/app/routes/_index.tsx b/apps/website/app/routes/_index.tsx index 705754bd1..c16594d1b 100644 --- a/apps/website/app/routes/_index.tsx +++ b/apps/website/app/routes/_index.tsx @@ -3,8 +3,8 @@ import NxWelcome from '../nx-welcome' export const meta: MetaFunction = () => { return [ - { title: 'New Remix App' }, - { name: 'description', content: 'Welcome to Remix!' }, + { title: 'cuHacking 2025' }, + { name: 'description', content: 'Carleton University\'s Official Hackathon.' }, ] } diff --git a/apps/website/app/tailwind.css b/apps/website/app/tailwind.css deleted file mode 100644 index b5c61c956..000000000 --- a/apps/website/app/tailwind.css +++ /dev/null @@ -1,3 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; diff --git a/apps/website/tailwind.config.ts b/apps/website/tailwind.config.ts index a4d6aa157..464851773 100644 --- a/apps/website/tailwind.config.ts +++ b/apps/website/tailwind.config.ts @@ -1,13 +1,17 @@ -import type { Config } from 'tailwindcss' -import { createGlobPatternsForDependencies } from '@nx/react/tailwind' +// import type { Config } from 'tailwindcss' +// import { createGlobPatternsForDependencies } from '@nx/react/tailwind' -export default { - content: [ - './app/**/*.{js,jsx,ts,tsx}', - ...createGlobPatternsForDependencies(__dirname), - ], - theme: { - extend: {}, - }, - plugins: [], -} satisfies Config +// export default { +// content: [ +// './app/**/*.{js,jsx,ts,tsx}', +// ...createGlobPatternsForDependencies(__dirname), +// ], +// theme: { +// extend: {}, +// }, +// plugins: [], +// } satisfies Config + +import { buildConfig } from '../../libs/shared/utils/src/tailwind.config' + +export default buildConfig(__dirname) diff --git a/components.json b/components.json new file mode 100644 index 000000000..f088bad18 --- /dev/null +++ b/components.json @@ -0,0 +1,15 @@ +{ + "$schema": "https://ui.shadcn.com/schema.json", + "style": "default", + "rsc": false, + "tailwind": { + "config": "libs/shared/utils/tailwind.config.js", + "css": "libs/shared/utils/global.css", + "baseColor": "neutral", + "cssVariables": true + }, + "aliases": { + "components": "@cuhacking/ui", + "utils": "@cuhacking/utils" + } +} diff --git a/libs/shared/config/tailwind/base.js b/libs/shared/config/tailwind/base.js index a4d6aa157..670a683cb 100644 --- a/libs/shared/config/tailwind/base.js +++ b/libs/shared/config/tailwind/base.js @@ -3,7 +3,7 @@ import { createGlobPatternsForDependencies } from '@nx/react/tailwind' export default { content: [ - './app/**/*.{js,jsx,ts,tsx}', + '{src,pages,components,app}/**/*!(*.stories|*.spec).{ts,tsx,html}', ...createGlobPatternsForDependencies(__dirname), ], theme: { diff --git a/libs/shared/ui/.babelrc b/libs/shared/ui/.babelrc new file mode 100644 index 000000000..1ea870ead --- /dev/null +++ b/libs/shared/ui/.babelrc @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "@nx/react/babel", + { + "runtime": "automatic", + "useBuiltIns": "usage" + } + ] + ], + "plugins": [] +} diff --git a/libs/shared/ui/.storybook/main.ts b/libs/shared/ui/.storybook/main.ts deleted file mode 100644 index 22d671954..000000000 --- a/libs/shared/ui/.storybook/main.ts +++ /dev/null @@ -1,16 +0,0 @@ -import type { StorybookConfig } from '@storybook/nextjs' - -const config: StorybookConfig = { - stories: ['../src/lib/**/*.@(mdx|stories.@(js|jsx|ts|tsx))'], - addons: ['@storybook/addon-essentials', '@storybook/addon-interactions'], - framework: { - name: '@storybook/nextjs', - options: {}, - }, -} - -export default config - -// To customize your webpack configuration you can use the webpackFinal field. -// Check https://storybook.js.org/docs/react/builders/webpack#extending-storybooks-webpack-config -// and https://nx.dev/recipes/storybook/custom-builder-configs diff --git a/libs/shared/ui/.storybook/preview.ts b/libs/shared/ui/.storybook/preview.ts deleted file mode 100644 index e69de29bb..000000000 diff --git a/libs/shared/ui/eslint.config.js b/libs/shared/ui/eslint.config.js new file mode 100644 index 000000000..236d2911f --- /dev/null +++ b/libs/shared/ui/eslint.config.js @@ -0,0 +1,37 @@ +// const nx = require("@nx/eslint-plugin"); +// const baseConfig = require("../../eslint.config.js"); + +// module.exports = [ +// ...baseConfig, +// ...nx.configs["flat/react"], +// { +// files: [ +// "**/*.ts", +// "**/*.tsx", +// "**/*.js", +// "**/*.jsx" +// ], +// // Override or add rules here +// rules: {} +// } +// ]; + +import baseConfigPromise from '../../../eslint.config.js' + +export default (async () => { + const baseConfig = await baseConfigPromise + + return [ + ...baseConfig, + { + files: [ + '**/*.ts', + '**/*.tsx', + '**/*.js', + '**/*.jsx', + ], + // Override or add rules here + rules: {}, + }, + ] +})() diff --git a/libs/shared/ui/package.json b/libs/shared/ui/package.json deleted file mode 100644 index b8c2ea030..000000000 --- a/libs/shared/ui/package.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "name": "ui", - "version": "1.0.0", - "description": "", - "author": "", - "license": "ISC", - "keywords": [], - "main": "index.js", - "scripts": { - "test": "echo \"Error: no test specified\" && exit 1" - } -} diff --git a/libs/shared/ui/project.json b/libs/shared/ui/project.json index 48beaf5d2..47daf0e42 100644 --- a/libs/shared/ui/project.json +++ b/libs/shared/ui/project.json @@ -1,9 +1,12 @@ { "name": "ui", - "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "$schema": "../../node_modules/nx/schemas/project-schema.json", "sourceRoot": "libs/shared/ui/src", "projectType": "library", "tags": [], - "// targets": "to see all targets run: nx show project ui --web", - "targets": {} + "targets": { + "add-component": { + "executor": "@nx-extend/shadcn-ui:add" + } + } } diff --git a/libs/shared/ui/src/index.ts b/libs/shared/ui/src/index.ts deleted file mode 100644 index c8ce325a1..000000000 --- a/libs/shared/ui/src/index.ts +++ /dev/null @@ -1 +0,0 @@ -export * from './lib/ui' diff --git a/libs/shared/ui/src/lib/ui.stories.tsx b/libs/shared/ui/src/lib/ui.stories.tsx deleted file mode 100644 index 04720cef7..000000000 --- a/libs/shared/ui/src/lib/ui.stories.tsx +++ /dev/null @@ -1,9 +0,0 @@ -import React from 'react' -import Ui from './ui' - -export default { - title: 'Example/Ui', - component: Ui, -} - -export const Primary = () => diff --git a/libs/shared/ui/src/lib/ui.tsx b/libs/shared/ui/src/lib/ui.tsx deleted file mode 100644 index 952b262de..000000000 --- a/libs/shared/ui/src/lib/ui.tsx +++ /dev/null @@ -1,9 +0,0 @@ -export function Ui() { - return ( -
-

Welcome to Ui!

-
- ) -} - -export default Ui diff --git a/libs/shared/ui/tsconfig.json b/libs/shared/ui/tsconfig.json index 0a4b699da..bd62bac62 100644 --- a/libs/shared/ui/tsconfig.json +++ b/libs/shared/ui/tsconfig.json @@ -1,15 +1,14 @@ { - "extends": "../../../tsconfig.base.json", + "extends": "../../tsconfig.base.json", "compilerOptions": { "jsx": "react-jsx", "allowJs": false, - "strict": true, "allowSyntheticDefaultImports": true, "esModuleInterop": false }, "references": [ { - "path": "./tsconfig.storybook.json" + "path": "./tsconfig.lib.json" } ], "files": [], diff --git a/libs/shared/ui/tsconfig.lib.json b/libs/shared/ui/tsconfig.lib.json new file mode 100644 index 000000000..02bd7508b --- /dev/null +++ b/libs/shared/ui/tsconfig.lib.json @@ -0,0 +1,23 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "types": [ + "node", + "@nx/react/typings/cssmodule.d.ts", + "@nx/react/typings/image.d.ts" + ], + "outDir": "../../../dist/out-tsc" + }, + "include": ["src/**/*.js", "src/**/*.jsx", "src/**/*.ts", "src/**/*.tsx"], + "exclude": [ + "jest.config.ts", + "src/**/*.spec.ts", + "src/**/*.test.ts", + "src/**/*.spec.tsx", + "src/**/*.test.tsx", + "src/**/*.spec.js", + "src/**/*.test.js", + "src/**/*.spec.jsx", + "src/**/*.test.jsx" + ] +} diff --git a/libs/shared/ui/tsconfig.storybook.json b/libs/shared/ui/tsconfig.storybook.json deleted file mode 100644 index 100f60cb7..000000000 --- a/libs/shared/ui/tsconfig.storybook.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "extends": "./tsconfig.json", - "compilerOptions": { - "emitDecoratorMetadata": true - }, - "include": [ - "src/**/*.stories.ts", - "src/**/*.stories.js", - "src/**/*.stories.jsx", - "src/**/*.stories.tsx", - "src/**/*.stories.mdx", - ".storybook/*.js", - ".storybook/*.ts" - ], - "exclude": ["src/**/*.spec.ts", "src/**/*.test.ts"] -} diff --git a/libs/shared/utils/.babelrc b/libs/shared/utils/.babelrc new file mode 100644 index 000000000..1ea870ead --- /dev/null +++ b/libs/shared/utils/.babelrc @@ -0,0 +1,12 @@ +{ + "presets": [ + [ + "@nx/react/babel", + { + "runtime": "automatic", + "useBuiltIns": "usage" + } + ] + ], + "plugins": [] +} diff --git a/libs/shared/utils/README.md b/libs/shared/utils/README.md new file mode 100644 index 000000000..cafd71d07 --- /dev/null +++ b/libs/shared/utils/README.md @@ -0,0 +1,7 @@ +# utils + +This library was generated with [Nx](https://nx.dev). + +## Running unit tests + +Run `nx test utils` to execute the unit tests via [Jest](https://jestjs.io). diff --git a/libs/shared/utils/eslint.config.js b/libs/shared/utils/eslint.config.js new file mode 100644 index 000000000..236d2911f --- /dev/null +++ b/libs/shared/utils/eslint.config.js @@ -0,0 +1,37 @@ +// const nx = require("@nx/eslint-plugin"); +// const baseConfig = require("../../eslint.config.js"); + +// module.exports = [ +// ...baseConfig, +// ...nx.configs["flat/react"], +// { +// files: [ +// "**/*.ts", +// "**/*.tsx", +// "**/*.js", +// "**/*.jsx" +// ], +// // Override or add rules here +// rules: {} +// } +// ]; + +import baseConfigPromise from '../../../eslint.config.js' + +export default (async () => { + const baseConfig = await baseConfigPromise + + return [ + ...baseConfig, + { + files: [ + '**/*.ts', + '**/*.tsx', + '**/*.js', + '**/*.jsx', + ], + // Override or add rules here + rules: {}, + }, + ] +})() diff --git a/libs/shared/utils/project.json b/libs/shared/utils/project.json new file mode 100644 index 000000000..39f7d2f0d --- /dev/null +++ b/libs/shared/utils/project.json @@ -0,0 +1,9 @@ +{ + "name": "utils", + "$schema": "../../../node_modules/nx/schemas/project-schema.json", + "sourceRoot": "libs/shared/utils/src", + "projectType": "library", + "tags": [], + "// targets": "to see all targets run: nx show project utils --web", + "targets": {} +} diff --git a/libs/shared/utils/src/cn.ts b/libs/shared/utils/src/cn.ts new file mode 100644 index 000000000..a92a0dfc7 --- /dev/null +++ b/libs/shared/utils/src/cn.ts @@ -0,0 +1,6 @@ +import { type ClassValue, clsx } from 'clsx' +import { twMerge } from 'tailwind-merge' + +export const cn = function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)) +} diff --git a/libs/shared/utils/src/global.css b/libs/shared/utils/src/global.css new file mode 100644 index 000000000..2c7f571c5 --- /dev/null +++ b/libs/shared/utils/src/global.css @@ -0,0 +1,66 @@ +/** + * Don't forget to update your APPs global.css to include this file! + */ + +@tailwind base; +@tailwind components; +@tailwind utilities; + +@layer base { + :root { + --background: 0 0% 100%; + --foreground: 240 10% 3.9%; + --card: 0 0% 100%; + --card-foreground: 240 10% 3.9%; + --popover: 0 0% 100%; + --popover-foreground: 240 10% 3.9%; + --primary: 240 5.9% 10%; + --primary-foreground: 0 0% 98%; + --secondary: 240 4.8% 95.9%; + --secondary-foreground: 240 5.9% 10%; + --muted: 240 4.8% 95.9%; + --muted-foreground: 240 3.8% 46.1%; + --accent: 240 4.8% 95.9%; + --accent-foreground: 240 5.9% 10%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 0 0% 98%; + --border: 240 5.9% 90%; + --input: 240 5.9% 90%; + --ring: 240 5.9% 10%; + --radius: 0.5rem; + } + + .dark { + --background: 240 10% 3.9%; + --foreground: 0 0% 98%; + --card: 240 10% 3.9%; + --card-foreground: 0 0% 98%; + --popover: 240 10% 3.9%; + --popover-foreground: 0 0% 98%; + --primary: 0 0% 98%; + --primary-foreground: 240 5.9% 10%; + --secondary: 240 3.7% 15.9%; + --secondary-foreground: 0 0% 98%; + --muted: 240 3.7% 15.9%; + --muted-foreground: 240 5% 64.9%; + --accent: 240 3.7% 15.9%; + --accent-foreground: 0 0% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 0 0% 98%; + --border: 240 3.7% 15.9%; + --input: 240 3.7% 15.9%; + --ring: 240 4.9% 83.9%; + } +} + +@layer base { + * { + @apply border-border; + } + body { + @apply bg-background text-foreground; + font-feature-settings: + 'rlig' 1, + 'calt' 1; + } +} diff --git a/libs/shared/utils/src/index.ts b/libs/shared/utils/src/index.ts new file mode 100644 index 000000000..c5c1882cf --- /dev/null +++ b/libs/shared/utils/src/index.ts @@ -0,0 +1 @@ +export * from './cn' diff --git a/libs/shared/utils/src/tailwind.config.ts b/libs/shared/utils/src/tailwind.config.ts new file mode 100644 index 000000000..b03c82952 --- /dev/null +++ b/libs/shared/utils/src/tailwind.config.ts @@ -0,0 +1,78 @@ +import type { Config } from 'tailwindcss' +import { join } from 'node:path' +import { createGlobPatternsForDependencies } from '@nx/react/tailwind' + +import TailwindAnimate from 'tailwindcss-animate' + +export function buildConfig( + appDir: string, +): Config { + return { + content: [ + join( + appDir, + '{src,pages,components,app}/**/*!(*.stories|*.spec).{ts,tsx,html}', + ), + ...createGlobPatternsForDependencies(appDir), + ], + theme: { + extend: { + colors: { + border: 'hsl(var(--border))', + input: 'hsl(var(--input))', + ring: 'hsl(var(--ring))', + background: 'hsl(var(--background))', + foreground: 'hsl(var(--foreground))', + primary: { + DEFAULT: 'hsl(var(--primary))', + foreground: 'hsl(var(--primary-foreground))', + }, + secondary: { + DEFAULT: 'hsl(var(--secondary))', + foreground: 'hsl(var(--secondary-foreground))', + }, + destructive: { + DEFAULT: 'hsl(var(--destructive))', + foreground: 'hsl(var(--destructive-foreground))', + }, + muted: { + DEFAULT: 'hsl(var(--muted))', + foreground: 'hsl(var(--muted-foreground))', + }, + accent: { + DEFAULT: 'hsl(var(--accent))', + foreground: 'hsl(var(--accent-foreground))', + }, + popover: { + DEFAULT: 'hsl(var(--popover))', + foreground: 'hsl(var(--popover-foreground))', + }, + card: { + DEFAULT: 'hsl(var(--card))', + foreground: 'hsl(var(--card-foreground))', + }, + }, + borderRadius: { + lg: `var(--radius)`, + md: `calc(var(--radius) - 2px)`, + sm: 'calc(var(--radius) - 4px)', + }, + keyframes: { + 'accordion-down': { + from: { height: '0' }, + to: { height: 'var(--radix-accordion-content-height)' }, + }, + 'accordion-up': { + from: { height: 'var(--radix-accordion-content-height)' }, + to: { height: '0' }, + }, + }, + animation: { + 'accordion-down': 'accordion-down 0.2s ease-out', + 'accordion-up': 'accordion-up 0.2s ease-out', + }, + }, + }, + plugins: [TailwindAnimate], + } +} diff --git a/libs/shared/utils/tsconfig.json b/libs/shared/utils/tsconfig.json new file mode 100644 index 000000000..74d69d3d0 --- /dev/null +++ b/libs/shared/utils/tsconfig.json @@ -0,0 +1,16 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "jsx": "react-jsx", + "allowJs": false, + "allowSyntheticDefaultImports": true, + "esModuleInterop": false + }, + "references": [ + { + "path": "./tsconfig.lib.json" + } + ], + "files": [], + "include": [] +} diff --git a/libs/shared/utils/tsconfig.lib.json b/libs/shared/utils/tsconfig.lib.json new file mode 100644 index 000000000..02bd7508b --- /dev/null +++ b/libs/shared/utils/tsconfig.lib.json @@ -0,0 +1,23 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "types": [ + "node", + "@nx/react/typings/cssmodule.d.ts", + "@nx/react/typings/image.d.ts" + ], + "outDir": "../../../dist/out-tsc" + }, + "include": ["src/**/*.js", "src/**/*.jsx", "src/**/*.ts", "src/**/*.tsx"], + "exclude": [ + "jest.config.ts", + "src/**/*.spec.ts", + "src/**/*.test.ts", + "src/**/*.spec.tsx", + "src/**/*.test.tsx", + "src/**/*.spec.js", + "src/**/*.test.js", + "src/**/*.spec.jsx", + "src/**/*.test.jsx" + ] +} diff --git a/nx.json b/nx.json index 6267c95d0..b2a2a0178 100644 --- a/nx.json +++ b/nx.json @@ -1,7 +1,10 @@ { "$schema": "./node_modules/nx/schemas/nx-schema.json", "namedInputs": { - "default": ["{projectRoot}/**/*", "sharedGlobals"], + "default": [ + "{projectRoot}/**/*", + "sharedGlobals" + ], "production": [ "default", "!{projectRoot}/**/?(*.)+(spec|test).[jt]s?(x)?(.snap)", @@ -13,7 +16,9 @@ "!{projectRoot}/tsconfig.storybook.json", "!{projectRoot}/src/test-setup.[jt]s" ], - "sharedGlobals": ["{workspaceRoot}/.github/workflows/ci.yml"] + "sharedGlobals": [ + "{workspaceRoot}/.github/workflows/ci.yml" + ] }, // "nxCloudId": "672c3bbe9eb3702453d897db", "plugins": [ @@ -29,7 +34,9 @@ }, { "plugin": "@nx/vite/plugin", - "exclude": ["apps/website/**/*"], + "exclude": [ + "apps/website/**/*" + ], "options": { "testTargetName": "test", "previewTargetName": "preview", @@ -73,11 +80,18 @@ "targetDefaults": { "@nx/remix:build": { "cache": true, - "dependsOn": ["^build"], - "inputs": ["production", "^production"] + "dependsOn": [ + "^build" + ], + "inputs": [ + "production", + "^production" + ] }, "e2e-ci--**/*": { - "dependsOn": ["^build"] + "dependsOn": [ + "^build" + ] } }, "generators": { diff --git a/package.json b/package.json index d8623eb41..d513c7b47 100644 --- a/package.json +++ b/package.json @@ -29,6 +29,8 @@ "@remix-run/node": "2.14.0", "@remix-run/react": "2.14.0", "@remix-run/serve": "2.14.0", + "class-variance-authority": "^0.7.0", + "clsx": "^2.1.1", "fumadocs-core": "^13.4.10", "fumadocs-docgen": "^1.3.2", "fumadocs-mdx": "^9.0.4", @@ -36,10 +38,14 @@ "isbot": "^4.4.0", "next": "14.2.3", "react": "^18.3.1", - "react-dom": "^18.3.1" + "react-dom": "^18.3.1", + "tailwind-merge": "^2.3.0", + "tailwindcss-animate": "^1.0.7" }, "devDependencies": { "@antfu/eslint-config": "^3.8.0", + "@babel/core": "^7.14.5", + "@babel/preset-react": "^7.14.5", "@commitlint/cli": "^19.5.0", "@commitlint/config-conventional": "^19.5.0", "@commitlint/cz-commitlint": "^19.5.0", @@ -51,6 +57,7 @@ "@netlify/edge-functions": "^2.11.0", "@netlify/remix-edge-adapter": "^3.4.2", "@netlify/remix-runtime": "^2.3.1", + "@nx-extend/shadcn-ui": "^4.1.2", "@nx/devkit": "20.1.0", "@nx/eslint": "20.1.0", "@nx/eslint-plugin": "20.1.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9e2edcac7..8ab5f1dfc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -23,6 +23,12 @@ importers: '@remix-run/serve': specifier: 2.14.0 version: 2.14.0(typescript@5.6.3) + class-variance-authority: + specifier: ^0.7.0 + version: 0.7.0 + clsx: + specifier: ^2.1.1 + version: 2.1.1 fumadocs-core: specifier: ^13.4.10 version: 13.4.10(@types/react@18.3.12)(next@14.2.3(@babel/core@7.26.0)(@opentelemetry/api@1.8.0)(@playwright/test@1.48.2)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(sass@1.80.6))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -47,10 +53,22 @@ importers: react-dom: specifier: ^18.3.1 version: 18.3.1(react@18.3.1) + tailwind-merge: + specifier: ^2.3.0 + version: 2.5.4 + tailwindcss-animate: + specifier: ^1.0.7 + version: 1.0.7(tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3))) devDependencies: '@antfu/eslint-config': specifier: ^3.8.0 version: 3.8.0(@eslint-react/eslint-plugin@1.16.1(eslint@9.14.0(jiti@2.4.0))(typescript@5.6.3))(@typescript-eslint/utils@8.14.0(eslint@9.14.0(jiti@2.4.0))(typescript@5.6.3))(@unocss/eslint-plugin@0.62.4(eslint@9.14.0(jiti@2.4.0))(typescript@5.6.3))(@vue/compiler-sfc@3.5.12)(eslint-plugin-format@0.1.2(eslint@9.14.0(jiti@2.4.0)))(eslint-plugin-react-hooks@5.0.0(eslint@9.14.0(jiti@2.4.0)))(eslint-plugin-react-refresh@0.4.14(eslint@9.14.0(jiti@2.4.0)))(eslint@9.14.0(jiti@2.4.0))(prettier-plugin-slidev@1.0.5(prettier@3.3.3))(typescript@5.6.3)(vitest@2.1.4) + '@babel/core': + specifier: ^7.14.5 + version: 7.26.0 + '@babel/preset-react': + specifier: ^7.14.5 + version: 7.25.9(@babel/core@7.26.0) '@commitlint/cli': specifier: ^19.5.0 version: 19.5.0(@types/node@22.8.6)(typescript@5.6.3) @@ -84,6 +102,9 @@ importers: '@netlify/remix-runtime': specifier: ^2.3.1 version: 2.3.1(@remix-run/server-runtime@2.14.0(typescript@5.6.3)) + '@nx-extend/shadcn-ui': + specifier: ^4.1.2 + version: 4.1.2(@babel/traverse@7.25.9)(@nx/devkit@20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))))(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(react@18.3.1)(tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3))) '@nx/devkit': specifier: 20.1.0 version: 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) @@ -2876,6 +2897,16 @@ packages: resolution: {integrity: sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + '@nx-extend/core@8.1.0': + resolution: {integrity: sha512-mpDPKmtt25/lQLYuOb60B7kd1N8Fd/mRPsXfptY5FaZM2BktPm1U7ZYtlZal6W61jFG7drbLniWNtMG7UIULFQ==} + peerDependencies: + '@nx/devkit': ^20.0.0 + + '@nx-extend/shadcn-ui@4.1.2': + resolution: {integrity: sha512-xLoBoeAU83Fq0m0XTUTfxRLZyCbHeU39tUQ+OyljnIgf6Pud+PGMgadIo//occY9JYGrG8Dz31w/qdK7lChwMg==} + peerDependencies: + '@nx/devkit': ^20.0.0 + '@nx/cypress@20.1.0': resolution: {integrity: sha512-eSzxPXR1g5f+E9Ko2nJLpP3xxb+Y5GLO4hGFBKGQRMLOBgD8QcxvV1MKd4HOROKplfpZSJBQdyXalz2fbg7M8w==} peerDependencies: @@ -2884,6 +2915,11 @@ packages: cypress: optional: true + '@nx/devkit@20.0.0': + resolution: {integrity: sha512-9hSZBFnJ9pkdJnaNiuBwBGJAIYXEOwcXDhtUrm4jpVTDdYWP2m9fgu0Vf47TADf7vF1f2EVvS7dqqJbMDgULlg==} + peerDependencies: + nx: '>= 19 <= 21' + '@nx/devkit@20.1.0': resolution: {integrity: sha512-TDWT3d7nei+FtqoZscR7KtbQ9BXzV1c1Wvk9UUejo7eXbrQ/+YnHVVze8EMuIgTXaHxNIBTKGUPcRi3cibmCDw==} peerDependencies: @@ -2898,6 +2934,15 @@ packages: eslint-config-prettier: optional: true + '@nx/eslint@20.0.0': + resolution: {integrity: sha512-FVTidgmNVCcRQ+jTIZdHzMjTC7ATHvoHv7lLuXMAn0rhv02T39Kfyu1rH7cevTkfB22jqSjL25yty5qoqZPjug==} + peerDependencies: + '@zkochan/js-yaml': 0.0.7 + eslint: ^8.0.0 || ^9.0.0 + peerDependenciesMeta: + '@zkochan/js-yaml': + optional: true + '@nx/eslint@20.1.0': resolution: {integrity: sha512-r33P116QT5d8iLS18pZKOp1VBUueprESjHrVozDhUmTy0d/Xu5y/ExbhxcnlSicHFPxM7auYUoj1vE/6llRLQw==} peerDependencies: @@ -2907,6 +2952,14 @@ packages: '@zkochan/js-yaml': optional: true + '@nx/js@20.0.0': + resolution: {integrity: sha512-CiWl9Np+YL55FZiQXIiOqwxU4Gj9l7pQFE3YV/4v1CTSuT+4uHNAS6hr7nSbVZ0Z4YTk0QnDLsxuvsezIG0LfA==} + peerDependencies: + verdaccio: ^5.0.4 + peerDependenciesMeta: + verdaccio: + optional: true + '@nx/js@20.1.0': resolution: {integrity: sha512-E5iDtTchK1vkEGFHXUM+PZnIvQvs3JjK+3SUfPfobVV60jKb4T2YiBLJPqXdk123hwVGKSKebgrUhO6mGGNMFQ==} peerDependencies: @@ -2920,60 +2973,120 @@ packages: peerDependencies: next: '>=14.0.0' + '@nx/nx-darwin-arm64@20.0.0': + resolution: {integrity: sha512-sVG2qdQh192eQbsRVs/VpYkgRdbinLEj/6LvHXjU+Qi3ABKAnNDuNquNqpmxVU7YnoIZsyHMlbPsr47PgU2ljw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + '@nx/nx-darwin-arm64@20.1.0': resolution: {integrity: sha512-fel9LpSWuwY0cGAsRFEPxLp6J5VcK/5sjeWA0lZWrFf1oQJCOlKBfkxzi384Nd7eK5JSjxIXrpYfRLaqSbp+IA==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] + '@nx/nx-darwin-x64@20.0.0': + resolution: {integrity: sha512-Vk1i9PYlzPr7XT9fu2nWKpzPS/kTM8bDCmBfu7lotJpR+gEp52vegy4bkz00C5sDtFZTFOUoDYvMxiS9lNuvbQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + '@nx/nx-darwin-x64@20.1.0': resolution: {integrity: sha512-l1DB8dk2rCLGgXW26HmFOKYpUCF259LRus8z+z7dsFv5vz9TeN+fk5m9aAdiENgMA2cGlndQQW+E8UIo3yv+9g==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] + '@nx/nx-freebsd-x64@20.0.0': + resolution: {integrity: sha512-g9L4KG34U8KLNBpoX5iQnevh/q3mTHBNLaoF+dFfBLDFdqVkLc1cUoWEITP41RfExhU/jqgo66T3Wtjt/FmYPw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + '@nx/nx-freebsd-x64@20.1.0': resolution: {integrity: sha512-f8uMRIhiOA/73cIjiyS3gpKvaAtsHgyUkkoCOPc4xdxoSLAjlxb6VOUPIFj9rzLA6qQXImVpsiNPG+p1sJ1GAQ==} engines: {node: '>= 10'} cpu: [x64] os: [freebsd] + '@nx/nx-linux-arm-gnueabihf@20.0.0': + resolution: {integrity: sha512-EcWjz4HM0UElppyDjIK9uGn0x+HgNMKloBQWYCQZv9z10joPDFleXNL66ywGi3KbpJp8jZZoBoXUBAuQ30wTkA==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + '@nx/nx-linux-arm-gnueabihf@20.1.0': resolution: {integrity: sha512-M7pay8hFJQZ3uJHlr5hZK/8o1BcHt95hy/SU7Azt7+LKQGOy42tXhHO30As9APzXqRmvoA2Iq1IyrJJicrz+Ew==} engines: {node: '>= 10'} cpu: [arm] os: [linux] + '@nx/nx-linux-arm64-gnu@20.0.0': + resolution: {integrity: sha512-SNWNlG1IF3m84n//s9EVq4VXbACi4YC+0Zto6mBSWnJ54PQSBaPlYQOjA+zUg5j/TDBcErJwmWBhrsDpfUzASA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@nx/nx-linux-arm64-gnu@20.1.0': resolution: {integrity: sha512-A5+Kpk1uwYIj6CPm0DWLVz5wNTN4ewNl7ajLS9YJOi4yHx/FhfMMyPj4ZnbTpc4isuvgZwBZNl8kwFb2RdXq4w==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@nx/nx-linux-arm64-musl@20.0.0': + resolution: {integrity: sha512-dP8Z2wmouSoGbiNFchf5XuMEzZ9LOxIL9m+YZ+g1aBK1lakqugGmu5AWC4LujLdRYJ2Aq0NiTujFb9X8N65LEg==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + '@nx/nx-linux-arm64-musl@20.1.0': resolution: {integrity: sha512-pWIQPt9Fst1O4dgrWHdU1b+5wpfLmsmaSeRvLQ9b2VFp3tKGko4ie0skme62TuMgpcqMWDBFKs8KgbHESOi7vw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] + '@nx/nx-linux-x64-gnu@20.0.0': + resolution: {integrity: sha512-B9ePhJ6t4Q/T20jjuegmIujEbgQAjVYSbaVqlL1TpSz5JOjYqTMJVOdZfK1iSizanmdAr/tgNk/3U+pN68Qo2w==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@nx/nx-linux-x64-gnu@20.1.0': resolution: {integrity: sha512-sOpeGOHznk2ztCXzKhRPAKG3WtwaQUsfQ/3aYDXE6z+rSfyZTGY29M/a9FbdjI4cLJX+NdLAAMj15c3VecJ65g==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@nx/nx-linux-x64-musl@20.0.0': + resolution: {integrity: sha512-SIJ42y+paUJ7OeOh1Wgk1BkgFj/oa/U3jsBrusyJMD1omShXJR0DW63yHHP19rhkVfkzDB4hl5AWYAb+IX0n1A==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + '@nx/nx-linux-x64-musl@20.1.0': resolution: {integrity: sha512-SxnQJhjOvuOfUZnF4Wt4/O/l1e21qpACZzfMaPIvmiTLk9zPJZWtfgbqlKtTXHKWq9DfIUZQqZXRIpHPM1sDZQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] + '@nx/nx-win32-arm64-msvc@20.0.0': + resolution: {integrity: sha512-NZi88z+xa70L9E5ota3R6+/TjBDQ/XtoWuNDqPRcgBAHtOEH4YpF0pJ+sc+TybotcXFUs99v1TRxPHagsBn8QQ==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [win32] + '@nx/nx-win32-arm64-msvc@20.1.0': resolution: {integrity: sha512-Z/KoaAA+Rg9iqqOPkKZV61MejPoJBOHlecFpq0G4TgKMJEJ/hEsjojq5usO1fUGAbvQT/SXL3pYWgZwhD3VEHw==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] + '@nx/nx-win32-x64-msvc@20.0.0': + resolution: {integrity: sha512-rtGphY7sXqHGQN1q6M6umR/iAIU0/IcstYW5IAXQ3wivaQJrV7sM+aumrFZfgAWHHDTWDdQncSQTdn49RoRjEA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + '@nx/nx-win32-x64-msvc@20.1.0': resolution: {integrity: sha512-pbxacjLsW9vXD9FibvU8Pal/r5+Yq6AaW6I57CDi7jsLt+K6jcS0fP4FlfXT8QFWdx9+bOKNfOsKEIwpirMN1w==} engines: {node: '>= 10'} @@ -3011,6 +3124,9 @@ packages: '@nx/webpack@20.1.0': resolution: {integrity: sha512-KBiJDxtv0RjRo7Ud3lgFXRMYCn1sWlNTVMQpP65O0aPs1I0yrriIOeiZhMKZm3xp4r4S9ABIWV1rrz0ILp1Qog==} + '@nx/workspace@20.0.0': + resolution: {integrity: sha512-ReTyJrUdCVPa9fnFWOaYhtNPJkfHMsASjGCvijZv+9EyDmggZ9PmpZBN7fdaCQD8+MyRSOPCrPEzXU1NnjjgqQ==} + '@nx/workspace@20.1.0': resolution: {integrity: sha512-1L432K76uWfo+hR5SD/XIdJGiArXQ6u0+q1MB49slObRNYQHMWqyB3/6C7QRN0sOqh5k893i9wXUH8vokYpPew==} @@ -4894,6 +5010,10 @@ packages: '@yarnpkg/lockfile@1.1.0': resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==} + '@yarnpkg/parsers@3.0.0-rc.46': + resolution: {integrity: sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==} + engines: {node: '>=14.15.0'} + '@yarnpkg/parsers@3.0.2': resolution: {integrity: sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==} engines: {node: '>=18.12.0'} @@ -5810,6 +5930,10 @@ packages: resolution: {integrity: sha512-rQ1+kcj+ttHG0MKVGBUXwayCCF1oh39BF5COIpRzuCEv8Mwjv0XucrI2ExNTOn9IlLifGClWQcU9BrZORvtw6Q==} engines: {node: '>=6'} + clsx@2.1.1: + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} + cmdk@1.0.4: resolution: {integrity: sha512-AnsjfHyHpQ/EFeAnG216WY7A5LiYCoZzCSygiLvfXC3H3LFGCprErteUcszaVluGOhuOTbJS3jWHrSDYPBBygg==} peerDependencies: @@ -8668,6 +8792,10 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} + interpret@1.4.0: + resolution: {integrity: sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==} + engines: {node: '>= 0.10'} + into-stream@7.0.0: resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==} engines: {node: '>=12'} @@ -9702,6 +9830,11 @@ packages: peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc + lucide-react@0.453.0: + resolution: {integrity: sha512-kL+RGZCcJi9BvJtzg2kshO192Ddy9hv3ij+cPrVPWSRzgCWCVazoQJxOjAwgK53NomL07HB7GPHW120FimjNhQ==} + peerDependencies: + react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0-rc + lucide-react@0.456.0: resolution: {integrity: sha512-DIIGJqTT5X05sbAsQ+OhA8OtJYyD4NsEMCA/HQW/Y6ToPQ7gwbtujIoeAaup4HpHzV35SQOarKAWH8LYglB6eA==} peerDependencies: @@ -10662,6 +10795,18 @@ packages: nwsapi@2.2.13: resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} + nx@20.0.0: + resolution: {integrity: sha512-xfTCFiSYqxhchIXQvT6cxKcyRmReAvpzEQJbpEZTtmhMucBqvDTkK25WIhY4cW2uPPUXSOgQGbFt2uIVQz5RTw==} + hasBin: true + peerDependencies: + '@swc-node/register': ^1.8.0 + '@swc/core': ^1.3.85 + peerDependenciesMeta: + '@swc-node/register': + optional: true + '@swc/core': + optional: true + nx@20.1.0: resolution: {integrity: sha512-d8Ywh1AvG3szYqWEHg2n9DHh/hF0jtVhMZKxwsr7n+kSVxp7gE/rHCCfOo8H+OmP030qXoox5e4Ovp7H9CEJnA==} hasBin: true @@ -11838,6 +11983,10 @@ packages: resolution: {integrity: sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==} engines: {node: '>= 4'} + rechoir@0.6.2: + resolution: {integrity: sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==} + engines: {node: '>= 0.10'} + recma-build-jsx@1.0.0: resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} @@ -12333,6 +12482,11 @@ packages: shell-quote@1.8.1: resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + shelljs@0.8.5: + resolution: {integrity: sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==} + engines: {node: '>=4'} + hasBin: true + shiki@1.22.2: resolution: {integrity: sha512-3IZau0NdGKXhH2bBlUk4w1IHNxPh6A5B2sUpyY+8utLu2j/h1QpFkAaUA1bAMxOWWGtTWcAh531vnS4NJKS/lA==} @@ -12830,6 +12984,11 @@ packages: tailwind-merge@2.5.4: resolution: {integrity: sha512-0q8cfZHMu9nuYP/b5Shb7Y7Sh1B7Nnl5GqNr1U+n2p6+mybvRtayrQ+0042Z5byvTA8ihjlP8Odo8/VnHbZu4Q==} + tailwindcss-animate@1.0.7: + resolution: {integrity: sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==} + peerDependencies: + tailwindcss: '>=3.0.0 || insiders' + tailwindcss@3.4.14: resolution: {integrity: sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA==} engines: {node: '>=14.0.0'} @@ -13142,6 +13301,9 @@ packages: tslib@1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} @@ -17005,6 +17167,39 @@ snapshots: dependencies: which: 3.0.1 + '@nx-extend/core@8.1.0(@nx/devkit@20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))))': + dependencies: + '@nx/devkit': 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + shelljs: 0.8.5 + tslib: 2.7.0 + + '@nx-extend/shadcn-ui@4.1.2(@babel/traverse@7.25.9)(@nx/devkit@20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))))(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(react@18.3.1)(tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3)))': + dependencies: + '@nx-extend/core': 8.1.0(@nx/devkit@20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))) + '@nx/devkit': 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + '@nx/eslint': 20.0.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + class-variance-authority: 0.7.0 + clsx: 2.1.1 + lucide-react: 0.453.0(react@18.3.1) + shelljs: 0.8.5 + tailwind-merge: 2.5.4 + tailwindcss-animate: 1.0.7(tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3))) + tslib: 2.7.0 + transitivePeerDependencies: + - '@babel/traverse' + - '@swc-node/register' + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - '@zkochan/js-yaml' + - debug + - eslint + - nx + - react + - supports-color + - tailwindcss + - verdaccio + '@nx/cypress@20.1.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(typescript@5.6.3)': dependencies: '@nx/devkit': 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) @@ -17027,6 +17222,30 @@ snapshots: - typescript - verdaccio + '@nx/devkit@20.0.0(nx@20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))': + dependencies: + ejs: 3.1.10 + enquirer: 2.3.6 + ignore: 5.3.2 + minimatch: 9.0.3 + nx: 20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)) + semver: 7.6.3 + tmp: 0.2.3 + tslib: 2.8.1 + yargs-parser: 21.1.1 + + '@nx/devkit@20.0.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))': + dependencies: + ejs: 3.1.10 + enquirer: 2.3.6 + ignore: 5.3.2 + minimatch: 9.0.3 + nx: 20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)) + semver: 7.6.3 + tmp: 0.2.3 + tslib: 2.8.1 + yargs-parser: 21.1.1 + '@nx/devkit@20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))': dependencies: ejs: 3.1.10 @@ -17067,6 +17286,27 @@ snapshots: - typescript - verdaccio + '@nx/eslint@20.0.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))': + dependencies: + '@nx/devkit': 20.0.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + '@nx/js': 20.0.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(typescript@5.4.5) + eslint: 9.14.0(jiti@2.4.0) + semver: 7.6.3 + tslib: 2.8.1 + typescript: 5.4.5 + optionalDependencies: + '@zkochan/js-yaml': 0.0.7 + transitivePeerDependencies: + - '@babel/traverse' + - '@swc-node/register' + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - debug + - nx + - supports-color + - verdaccio + '@nx/eslint@20.1.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(@zkochan/js-yaml@0.0.7)(eslint@9.14.0(jiti@2.4.0))(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))': dependencies: '@nx/devkit': 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) @@ -17088,6 +17328,49 @@ snapshots: - supports-color - verdaccio + '@nx/js@20.0.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(typescript@5.4.5)': + dependencies: + '@babel/core': 7.26.0 + '@babel/plugin-proposal-decorators': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-runtime': 7.25.9(@babel/core@7.26.0) + '@babel/preset-env': 7.26.0(@babel/core@7.26.0) + '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) + '@babel/runtime': 7.26.0 + '@nx/devkit': 20.0.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + '@nx/workspace': 20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)) + '@zkochan/js-yaml': 0.0.7 + babel-plugin-const-enum: 1.2.0(@babel/core@7.26.0) + babel-plugin-macros: 2.8.0 + babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.26.0)(@babel/traverse@7.25.9) + chalk: 4.1.2 + columnify: 1.6.0 + detect-port: 1.6.1 + enquirer: 2.3.6 + fast-glob: 3.2.7 + ignore: 5.3.2 + js-tokens: 4.0.0 + jsonc-parser: 3.2.0 + minimatch: 9.0.3 + npm-package-arg: 11.0.1 + npm-run-path: 4.0.1 + ora: 5.3.0 + semver: 7.6.3 + source-map-support: 0.5.19 + ts-node: 10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.4.5) + tsconfig-paths: 4.2.0 + tslib: 2.8.1 + transitivePeerDependencies: + - '@babel/traverse' + - '@swc-node/register' + - '@swc/core' + - '@swc/wasm' + - '@types/node' + - debug + - nx + - supports-color + - typescript + '@nx/js@20.1.0(@babel/traverse@7.25.9)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)))(typescript@5.4.5)': dependencies: '@babel/core': 7.26.0 @@ -17227,33 +17510,63 @@ snapshots: - webpack - webpack-cli + '@nx/nx-darwin-arm64@20.0.0': + optional: true + '@nx/nx-darwin-arm64@20.1.0': optional: true + '@nx/nx-darwin-x64@20.0.0': + optional: true + '@nx/nx-darwin-x64@20.1.0': optional: true + '@nx/nx-freebsd-x64@20.0.0': + optional: true + '@nx/nx-freebsd-x64@20.1.0': optional: true + '@nx/nx-linux-arm-gnueabihf@20.0.0': + optional: true + '@nx/nx-linux-arm-gnueabihf@20.1.0': optional: true + '@nx/nx-linux-arm64-gnu@20.0.0': + optional: true + '@nx/nx-linux-arm64-gnu@20.1.0': optional: true + '@nx/nx-linux-arm64-musl@20.0.0': + optional: true + '@nx/nx-linux-arm64-musl@20.1.0': optional: true + '@nx/nx-linux-x64-gnu@20.0.0': + optional: true + '@nx/nx-linux-x64-gnu@20.1.0': optional: true + '@nx/nx-linux-x64-musl@20.0.0': + optional: true + '@nx/nx-linux-x64-musl@20.1.0': optional: true + '@nx/nx-win32-arm64-msvc@20.0.0': + optional: true + '@nx/nx-win32-arm64-msvc@20.1.0': optional: true + '@nx/nx-win32-x64-msvc@20.0.0': + optional: true + '@nx/nx-win32-x64-msvc@20.1.0': optional: true @@ -17508,6 +17821,19 @@ snapshots: - vue-tsc - webpack-cli + '@nx/workspace@20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))': + dependencies: + '@nx/devkit': 20.0.0(nx@20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) + chalk: 4.1.2 + enquirer: 2.3.6 + nx: 20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)) + tslib: 2.8.1 + yargs-parser: 21.1.1 + transitivePeerDependencies: + - '@swc-node/register' + - '@swc/core' + - debug + '@nx/workspace@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))': dependencies: '@nx/devkit': 20.1.0(nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15))) @@ -19918,6 +20244,11 @@ snapshots: '@yarnpkg/lockfile@1.1.0': {} + '@yarnpkg/parsers@3.0.0-rc.46': + dependencies: + js-yaml: 3.14.1 + tslib: 2.8.1 + '@yarnpkg/parsers@3.0.2': dependencies: js-yaml: 3.14.1 @@ -20948,6 +21279,8 @@ snapshots: clsx@2.0.0: {} + clsx@2.1.1: {} + cmdk@1.0.4(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@radix-ui/react-dialog': 1.1.2(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -24783,6 +25116,8 @@ snapshots: internmap@2.0.3: {} + interpret@1.4.0: {} + into-stream@7.0.0: dependencies: from2: 2.3.0 @@ -26055,6 +26390,10 @@ snapshots: dependencies: react: 18.3.1 + lucide-react@0.453.0(react@18.3.1): + dependencies: + react: 18.3.1 + lucide-react@0.456.0(react@18.3.1): dependencies: react: 18.3.1 @@ -27594,6 +27933,56 @@ snapshots: nwsapi@2.2.13: {} + nx@20.0.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)): + dependencies: + '@napi-rs/wasm-runtime': 0.2.4 + '@yarnpkg/lockfile': 1.1.0 + '@yarnpkg/parsers': 3.0.0-rc.46 + '@zkochan/js-yaml': 0.0.7 + axios: 1.7.7 + chalk: 4.1.2 + cli-cursor: 3.1.0 + cli-spinners: 2.6.1 + cliui: 8.0.1 + dotenv: 16.4.5 + dotenv-expand: 11.0.6 + enquirer: 2.3.6 + figures: 3.2.0 + flat: 5.0.2 + front-matter: 4.0.2 + ignore: 5.3.2 + jest-diff: 29.7.0 + jsonc-parser: 3.2.0 + lines-and-columns: 2.0.3 + minimatch: 9.0.3 + node-machine-id: 1.1.12 + npm-run-path: 4.0.1 + open: 8.4.2 + ora: 5.3.0 + semver: 7.6.3 + string-width: 4.2.3 + tar-stream: 2.2.0 + tmp: 0.2.3 + tsconfig-paths: 4.2.0 + tslib: 2.8.1 + yargs: 17.7.2 + yargs-parser: 21.1.1 + optionalDependencies: + '@nx/nx-darwin-arm64': 20.0.0 + '@nx/nx-darwin-x64': 20.0.0 + '@nx/nx-freebsd-x64': 20.0.0 + '@nx/nx-linux-arm-gnueabihf': 20.0.0 + '@nx/nx-linux-arm64-gnu': 20.0.0 + '@nx/nx-linux-arm64-musl': 20.0.0 + '@nx/nx-linux-x64-gnu': 20.0.0 + '@nx/nx-linux-x64-musl': 20.0.0 + '@nx/nx-win32-arm64-msvc': 20.0.0 + '@nx/nx-win32-x64-msvc': 20.0.0 + '@swc-node/register': 1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3) + '@swc/core': 1.5.29(@swc/helpers@0.5.15) + transitivePeerDependencies: + - debug + nx@20.1.0(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.15))(@swc/types@0.1.12)(typescript@5.6.3))(@swc/core@1.5.29(@swc/helpers@0.5.15)): dependencies: '@napi-rs/wasm-runtime': 0.2.4 @@ -28851,6 +29240,10 @@ snapshots: tiny-invariant: 1.3.3 tslib: 2.8.1 + rechoir@0.6.2: + dependencies: + resolve: 1.22.8 + recma-build-jsx@1.0.0: dependencies: '@types/estree': 1.0.6 @@ -29519,6 +29912,12 @@ snapshots: shell-quote@1.8.1: {} + shelljs@0.8.5: + dependencies: + glob: 7.2.3 + interpret: 1.4.0 + rechoir: 0.6.2 + shiki@1.22.2: dependencies: '@shikijs/core': 1.22.2 @@ -30067,6 +30466,10 @@ snapshots: tailwind-merge@2.5.4: {} + tailwindcss-animate@1.0.7(tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3))): + dependencies: + tailwindcss: 3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3)) + tailwindcss@3.4.14(ts-node@10.9.1(@swc/core@1.5.29(@swc/helpers@0.5.15))(@types/node@22.8.6)(typescript@5.6.3)): dependencies: '@alloc/quick-lru': 5.2.0 @@ -30426,6 +30829,8 @@ snapshots: tslib@1.14.1: {} + tslib@2.7.0: {} + tslib@2.8.1: {} tsscmp@1.0.6: {} diff --git a/tsconfig.base.json b/tsconfig.base.json index a9943fd6a..4be67bb8a 100644 --- a/tsconfig.base.json +++ b/tsconfig.base.json @@ -2,37 +2,24 @@ "compilerOptions": { "target": "es2015", "lib": ["es2020", "dom"], - // "---------- JAVASCRIPT SUPPORT ---------": "", - // "---------- EDITOR SUPPORT ---------": "", - // "---------- INTEROP CONSTRAINTS ---------": "", - // "---------- BACKWARDS COMPATIBILITY ---------": "", - // "---------- LANGUAGE AND ENVIRONMENT ---------": "", "emitDecoratorMetadata": true, "experimentalDecorators": true, - // "---------- TYPE CHECKING ---------": "", - // "---------- MODULES ---------": "", "baseUrl": ".", "rootDir": ".", "module": "esnext", "moduleResolution": "node", - // "---------- EMIT ---------": "", "paths": { - "@cuhacking/ui": ["libs/shared/ui/src/index.ts"] + "@cuhacking/ui": ["libs/shared/ui/src/index.ts"], + "@cuhacking/utils": ["libs/shared/utils/src/index.ts"], + "@cuhacking/ui/*": ["libs/shared/ui/src/*"], + "@cuhacking/utils/*": ["libs/shared/utils/src/*"] }, "declaration": false, "importHelpers": true, "sourceMap": true, - // "---------- COMPILER DIAGNOSTICS ---------": "", - // "---------- PROJECTS ---------": "", - // "---------- OUTPUT FORMATTING ---------": "", - // "---------- COMPLETENESS ---------": "", "skipDefaultLibCheck": true, - // "---------- WATCH OPTIONS ---------": "" "skipLibCheck": true }, - // "---------- GENERAL REFERENCE ---------": "", - // "Typescript Reference": "https://typescriptlang.org/tsconfig", - // "Additional Guide": "https://pkerschbaum.com/tidbits/sensible-tsconfig-defaults", "exclude": ["node_modules", "tmp"], "compileOnSave": false }