Update package names

This commit is contained in:
Darren Clarke 2024-06-05 08:52:41 +02:00
parent 89d229eba9
commit 85a0fc11e5
106 changed files with 1908 additions and 2686 deletions

View file

@ -1,4 +1,4 @@
import { Create } from "bridge-ui";
import { Create } from "@link-stack/bridge-ui";
type PageProps = {
params: { segment: string[] };

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, Detail } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, Detail } from "@link-stack/bridge-ui";
type Props = {
params: { segment: string[] };

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, Edit } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, Edit } from "@link-stack/bridge-ui";
type PageProps = {
params: { segment: string[] };

View file

@ -1,3 +1,3 @@
import { ServiceLayout } from "bridge-ui";
import { ServiceLayout } from "@link-stack/bridge-ui";
export default ServiceLayout;

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, List } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, List } from "@link-stack/bridge-ui";
type PageProps = {
params: {

View file

@ -1,4 +1,4 @@
import { Home } from "bridge-ui";
import { Home } from "@link-stack/bridge-ui";
export default function Page() {
return <Home />;

View file

@ -5,7 +5,7 @@ import { Grid } from "@mui/material";
import { CssBaseline } from "@mui/material";
import { SessionProvider } from "next-auth/react";
import { css, Global } from "@emotion/react";
import { fonts } from "ui";
import { fonts } from "@link-stack/ui";
import { Sidebar } from "./Sidebar";
export const InternalLayout: FC<PropsWithChildren> = ({ children }) => {

View file

@ -17,7 +17,7 @@ import {
import { signIn } from "next-auth/react";
import Image from "next/image";
import LinkLogo from "@/app/_images/link-logo-small.png";
import { colors, fonts } from "ui";
import { colors, fonts } from "@link-stack/ui";
import { useSearchParams } from "next/navigation";
type LoginProps = {

View file

@ -24,7 +24,7 @@ import {
import { usePathname } from "next/navigation";
import Link from "next/link";
import Image from "next/image";
import { typography, fonts } from "ui";
import { typography, fonts } from "@link-stack/ui";
import LinkLogo from "@/app/_images/link-logo-small.png";
import { useSession, signOut } from "next-auth/react";

View file

@ -1,6 +1,6 @@
import GoogleProvider from "next-auth/providers/google";
import { KyselyAdapter } from "@auth/kysely-adapter";
import { db } from "bridge-common";
import { db } from "@link-stack/bridge-common";
export const authOptions = {
// @ts-ignore

View file

@ -1 +1 @@
export { receiveMessage as POST } from "bridge-ui";
export { receiveMessage as POST } from "@link-stack/bridge-ui";

View file

@ -1 +1 @@
export { getBot as GET } from "bridge-ui";
export { getBot as GET } from "@link-stack/bridge-ui";

View file

@ -1 +1 @@
export { sendMessage as POST } from "bridge-ui";
export { sendMessage as POST } from "@link-stack/bridge-ui";

View file

@ -1,3 +1,3 @@
import { handleWebhook } from "bridge-ui";
import { handleWebhook } from "@link-stack/bridge-ui";
export { handleWebhook as GET, handleWebhook as POST };

View file

@ -1,6 +1,6 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
transpilePackages: ["ui", "bridge-common", "bridge-ui"],
transpilePackages: ["@link-stack/ui", "@link-stack/bridge-common", "@link-stack/bridge-ui"],
};
export default nextConfig;

View file

@ -1,5 +1,5 @@
{
"name": "bridge-frontend",
"name": "@link-stack/bridge-frontend",
"version": "0.1.0",
"type": "module",
"scripts": {
@ -13,7 +13,7 @@
"migrate:down:one": "tsx database/migrate.ts down:one"
},
"dependencies": {
"@auth/kysely-adapter": "^1.1.0",
"@auth/kysely-adapter": "^1.2.0",
"@emotion/cache": "^11.11.0",
"@emotion/react": "^11.11.4",
"@emotion/styled": "^11.11.5",
@ -21,39 +21,38 @@
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/material-nextjs": "^5.15.11",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"@mui/x-license": "^7.2.0",
"bridge-common": "*",
"bridge-ui": "*",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"@mui/x-license": "^7.6.1",
"@link-stack/bridge-common": "*",
"@link-stack/bridge-ui": "*",
"date-fns": "^3.6.0",
"dotenv": "^16.4.5",
"graphile-worker": "^0.16.6",
"kysely": "0.26.1",
"material-ui-popup-state": "^5.1.0",
"material-ui-popup-state": "^5.1.2",
"mui-chips-input": "^2.1.4",
"next": "14.2.3",
"next-auth": "^4.24.7",
"pg": "^8.11.5",
"pg": "^8.12.0",
"react": "18.3.1",
"react-cookie": "^7.1.4",
"react-digit-input": "^2.1.0",
"react-dom": "18.3.1",
"react-qr-code": "^2.0.13",
"react-qr-code": "^2.0.14",
"react-timer-hook": "^3.0.7",
"sharp": "^0.33.3",
"sharp": "^0.33.4",
"tss-react": "^4.9.10",
"tsx": "^4.10.2",
"ui": "*"
"tsx": "^4.11.2",
"@link-stack/ui": "*"
},
"devDependencies": {
"@types/node": "^20",
"@types/pg": "^8.11.6",
"@types/react": "^18",
"@types/react-dom": "^18",
"eslint": "^8",
"eslint-config-next": "14.2.3",
"ts-config": "*",
"@link-stack/eslint-config": "*",
"@link-stack/typescript-config": "*",
"typescript": "^5"
}
}

View file

@ -1,5 +1,5 @@
{
"name": "bridge-whatsapp",
"name": "@link-stack/bridge-whatsapp",
"version": "0.3.0",
"main": "build/main/index.js",
"author": "Darren Clarke <darren@redaranj.com>",
@ -10,15 +10,15 @@
"@hapi/boom": "^10.0.1",
"@hapipal/schmervice": "^3.0.0",
"@hapipal/toys": "^4.0.0",
"@whiskeysockets/baileys": "^6.7.2",
"@whiskeysockets/baileys": "^6.7.4",
"hapi-pino": "^12.1.0"
},
"devDependencies": {
"@types/node": "*",
"eslint-config": "*",
"jest-config": "*",
"ts-config": "*",
"tsx": "^4.10.2",
"@link-stack/eslint-config": "*",
"@link-stack/jest-config": "*",
"@link-stack/typescript-config": "*",
"tsx": "^4.11.2",
"typescript": "^5.4.5"
},
"scripts": {

View file

@ -1,5 +1,5 @@
{
"extends": "ts-config",
"extends": "@link-stack/typescript-config",
"compilerOptions": {
"module": "commonjs",
"target": "es2018",

View file

@ -1,5 +1,5 @@
{
"name": "bridge-worker",
"name": "@link-stack/bridge-worker",
"version": "0.2.0",
"type": "module",
"main": "build/main/index.js",
@ -12,25 +12,25 @@
},
"dependencies": {
"@hapi/wreck": "^18.1.0",
"bridge-common": "*",
"fluent-ffmpeg": "^2.1.2",
"@link-stack/bridge-common": "*",
"fluent-ffmpeg": "^2.1.3",
"graphile-worker": "^0.16.6",
"html-to-text": "^9.0.5",
"jest": "^29.7.0",
"kysely": "^0.27.3",
"pg": "^8.11.5",
"remeda": "^1.61.0",
"twilio": "^5.0.4"
"pg": "^8.12.0",
"remeda": "^2.0.4",
"twilio": "^5.1.0"
},
"devDependencies": {
"@babel/core": "7.24.5",
"@babel/preset-env": "7.24.5",
"@babel/preset-typescript": "7.24.1",
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@babel/preset-typescript": "7.24.6",
"@types/fluent-ffmpeg": "^2.1.24",
"dotenv-cli": "^7.4.2",
"eslint": "^9.0.0",
"prettier": "^3.2.5",
"ts-config": "*",
"@link-stack/eslint-config": "*",
"prettier": "^3.3.0",
"@link-stack/typescript-config": "*",
"ts-node": "^10.9.2",
"typedoc": "^0.25.13",
"typescript": "^5.4.5"

View file

@ -1,4 +1,4 @@
import { db } from "bridge-common";
import { db } from "@link-stack/bridge-common";
export interface NotifyWebhooksOptions {
backendId: string;

View file

@ -1,4 +1,4 @@
import { db, getWorkerUtils } from "bridge-common";
import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface ReceiveFacebookMessageTaskOptions {
message: any;

View file

@ -1,4 +1,4 @@
import { db } from "bridge-common";
import { db } from "@link-stack/bridge-common";
interface SendFacebookMessageTaskOptions {
token: string;

View file

@ -1,4 +1,4 @@
// import { db, getWorkerUtils } from "bridge-common";
// import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface ReceiveSignalMessageTaskOptions {
message: any;

View file

@ -1,4 +1,4 @@
// import { db, getWorkerUtils } from "bridge-common";
// import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface SendSignalMessageTaskOptions {
message: any;

View file

@ -1,4 +1,4 @@
// import { db, getWorkerUtils } from "bridge-common";
// import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface ReceiveVoiceMessageTaskOptions {
message: any;

View file

@ -1,4 +1,4 @@
// import { db, getWorkerUtils } from "bridge-common";
// import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface SendVoiceMessageTaskOptions {
message: any;

View file

@ -1,4 +1,4 @@
import { db, getWorkerUtils } from "bridge-common";
import { db, getWorkerUtils } from "@link-stack/bridge-common";
interface ReceiveWhatsappMessageTaskOptions {
token: string;

View file

@ -1,4 +1,4 @@
import { db } from "bridge-common";
import { db } from "@link-stack/bridge-common";
interface SendWhatsappMessageTaskOptions {
token: string;

View file

@ -1,5 +1,5 @@
{
"extends": "ts-config",
"extends": "@link-stack/typescript-config",
"compilerOptions": {
"outDir": "build/main",
"module": "esnext",

View file

@ -9,7 +9,7 @@ import { useTranslate } from "react-polyglot";
import { LanguageSelect } from "app/_components/LanguageSelect";
import LeafcutterLogoLarge from "images/leafcutter-logo-large.png";
import { signIn } from "next-auth/react";
import { useLeafcutterContext } from "leafcutter-ui";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui";
type LoginProps = {
session: any;

View file

@ -1,4 +1,4 @@
import { About } from "leafcutter-ui";
import { About } from "@link-stack/leafcutter-ui";
export default function Page() {
return <About />;

View file

@ -1,5 +1,5 @@
import { getTemplates } from "app/_lib/opensearch";
import { Create } from "leafcutter-ui";
import { Create } from "@link-stack/leafcutter-ui";
export default async function Page() {
const templates = await getTemplates(100);

View file

@ -1,4 +1,4 @@
import { FAQ } from "leafcutter-ui";
import { FAQ } from "@link-stack/leafcutter-ui";
export default function Page() {
return <FAQ />;

View file

@ -1,7 +1,7 @@
import { getServerSession } from "next-auth";
import { authOptions } from "app/_lib/auth";
import { getUserVisualizations } from "app/_lib/opensearch";
import { Home } from "leafcutter-ui";
import { Home } from "@link-stack/leafcutter-ui";
export default async function Page() {
const session = await getServerSession(authOptions);

View file

@ -1,6 +1,6 @@
/* eslint-disable no-underscore-dangle */
// import { Client } from "@opensearch-project/opensearch";
import { Preview } from "leafcutter-ui";
import { Preview } from "@link-stack/leafcutter-ui";
// import { createVisualization } from "lib/opensearch";
export default function Page() {

View file

@ -5,7 +5,7 @@ import { useLayoutEffect } from "react";
import { useRouter } from "next/navigation";
import { Grid, CircularProgress } from "@mui/material";
import Iframe from "react-iframe";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
export const Setup: FC = () => {
const {

View file

@ -1,5 +1,5 @@
import { getTrends } from "app/_lib/opensearch";
import { Trends } from "leafcutter-ui";
import { Trends } from "@link-stack/leafcutter-ui";
export default async function Page() {
const visualizations = await getTrends(25);

View file

@ -1,6 +1,6 @@
/* eslint-disable no-underscore-dangle */
import { Client } from "@opensearch-project/opensearch";
import { VisualizationDetail } from "leafcutter-ui";
import { VisualizationDetail } from "@link-stack/leafcutter-ui";
const getVisualization = async (visualizationID: string) => {
const node = `https://${process.env.OPENSEARCH_USERNAME}:${process.env.OPENSEARCH_PASSWORD}@${process.env.OPENSEARCH_URL}`;

View file

@ -11,7 +11,7 @@ import {
bindTrigger,
bindMenu,
} from "material-ui-popup-state/hooks";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
export const AccountButton: FC = () => {
const t = useTranslate();

View file

@ -8,7 +8,7 @@ import {
useState,
PropsWithChildren,
} from "react";
import { colors, typography } from "leafcutter-ui/styles/theme";
import { colors, typography } from "@link-stack/leafcutter-ui/styles/theme";
const basePath = process.env.GITLAB_CI
? "/link/link-stack/apps/leafcutter"

View file

@ -4,7 +4,7 @@ import { FC, useState } from "react";
import { useRouter, usePathname } from "next/navigation";
import { Button } from "@mui/material";
import { QuestionMark as QuestionMarkIcon } from "@mui/icons-material";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
export const HelpButton: FC = () => {
const router = useRouter();

View file

@ -7,8 +7,8 @@ import CookieConsent from "react-cookie-consent";
import { useCookies } from "react-cookie";
import { TopNav } from "./TopNav";
import { Sidebar } from "./Sidebar";
import { GettingStartedDialog } from "leafcutter-ui";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { GettingStartedDialog } from "@link-stack/leafcutter-ui";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
// import { Footer } from "./Footer";
type LayoutProps = PropsWithChildren<{

View file

@ -8,7 +8,7 @@ import {
bindTrigger,
bindMenu,
} from "material-ui-popup-state/hooks";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
// import { Tooltip } from "./Tooltip";
export const LanguageSelect = () => {

View file

@ -8,10 +8,10 @@ import { CookiesProvider } from "react-cookie";
import { I18n } from "react-polyglot";
import { AdapterDateFns } from "@mui/x-date-pickers-pro/AdapterDateFnsV3";
import { LocalizationProvider } from "@mui/x-date-pickers-pro";
import { LeafcutterProvider } from "leafcutter-ui/components/LeafcutterProvider";
import { LeafcutterProvider } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
import { NextAppDirEmotionCacheProvider } from "tss-react/next/appDir";
import en from "leafcutter-ui/locales/en.json";
import fr from "leafcutter-ui/locales/fr.json";
import en from "@link-stack/leafcutter-ui/locales/en.json";
import fr from "@link-stack/leafcutter-ui/locales/fr.json";
import { LicenseInfo } from "@mui/x-license";
LicenseInfo.setLicenseKey(

View file

@ -20,8 +20,8 @@ import {
import Link from "next/link";
import { usePathname } from "next/navigation";
import { useTranslate } from "react-polyglot";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { Tooltip } from "leafcutter-ui";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
import { Tooltip } from "@link-stack/leafcutter-ui";
// import { ArrowCircleRight as ArrowCircleRightIcon } from "@mui/icons-material";
const MenuItem = ({

View file

@ -8,8 +8,8 @@ import { useTranslate } from "react-polyglot";
import LeafcutterLogo from "images/leafcutter-logo.png";
import { AccountButton } from "./AccountButton";
import { HelpButton } from "./HelpButton";
import { Tooltip } from "leafcutter-ui";
import { useLeafcutterContext } from "leafcutter-ui/components/LeafcutterProvider";
import { Tooltip } from "@link-stack/leafcutter-ui";
import { useLeafcutterContext } from "@link-stack/leafcutter-ui/components/LeafcutterProvider";
// import { LanguageSelect } from "./LanguageSelect";
export const TopNav: FC = () => {

View file

@ -7,7 +7,7 @@ const ContentSecurityPolicy = `
`;
module.exports = {
transpilePackages: ["leafcutter-ui", "opensearch-common"],
transpilePackages: ["@link-stack/leafcutter-ui", "@link-stack/opensearch-common"],
experimental: {
missingSuspenseWithCSRBailout: false,
},

View file

@ -1,5 +1,5 @@
{
"name": "leafcutter",
"name": "@link-stack/leafcutter",
"version": "0.2.0",
"scripts": {
"dev": "next dev -p 3001",
@ -20,18 +20,18 @@
"@mui/icons-material": "^5",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"@opensearch-project/opensearch": "^2.8.0",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"@opensearch-project/opensearch": "^2.9.0",
"cryptr": "^6.3.0",
"date-fns": "^3.6.0",
"http-proxy-middleware": "^3.0.0",
"leafcutter-ui": "*",
"material-ui-popup-state": "^5.1.0",
"@link-stack/leafcutter-ui": "*",
"material-ui-popup-state": "^5.1.2",
"next": "14.2.3",
"next-auth": "^4.24.7",
"next-http-proxy-middleware": "^1.2.6",
"opensearch-common": "*",
"@link-stack/opensearch-common": "*",
"nodemailer": "^6.9.13",
"react": "18.3.1",
"react-cookie": "^7.1.4",
@ -40,15 +40,15 @@
"react-iframe": "^1.8.5",
"react-markdown": "^9.0.1",
"react-polyglot": "^0.7.2",
"sharp": "^0.33.3",
"sharp": "^0.33.4",
"swr": "^2.2.5",
"tss-react": "^4.9.10",
"uuid": "^9.0.1"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@babel/core": "^7.24.6",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"@types/uuid": "^9.0.8",
"babel-loader": "^9.1.3",
"eslint": "^8.0.0",
@ -57,7 +57,7 @@
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.1",
"eslint-plugin-react": "^7.34.2",
"typescript": "5.4.5"
}
}

View file

@ -17,7 +17,7 @@ import {
import { signIn } from "next-auth/react";
import Image from "next/image";
import LinkLogo from "public/link-logo-small.png";
import { colors, fonts } from "ui";
import { colors, fonts } from "@link-stack/ui";
import { useSearchParams } from "next/navigation";
type LoginProps = {

View file

@ -1,7 +1,7 @@
"use client";
import { FC } from "react";
import { OpenSearchWrapper } from "leafcutter-ui";
import { OpenSearchWrapper } from "@link-stack/leafcutter-ui";
export const Home: FC = () => (
<OpenSearchWrapper url="/app/visualize#/edit/237b8f00-e6a0-11ee-94b3-d7b7409294e7?embed=true" marginTop="0"

View file

@ -3,7 +3,7 @@ import { usePathname, useRouter } from "next/navigation";
import useSWR from "swr";
import { Grid, Box, TextField, Autocomplete } from "@mui/material";
import { searchQuery } from "@/app/_graphql/searchQuery";
import { colors } from "ui";
import { colors } from "@link-stack/ui";
type SearchResultProps = {
props: any;

View file

@ -35,7 +35,7 @@ import LinkLogo from "public/link-logo-small.png";
import { useSession, signOut } from "next-auth/react";
import { getTicketOverviewCountsQuery } from "app/_graphql/getTicketOverviewCountsQuery";
import { SearchBox } from "./SearchBox";
import { fonts } from "ui";
import { fonts } from "@link-stack/ui";
const openWidth = 270;
const closedWidth = 70;

View file

@ -1,4 +1,4 @@
import { Create } from "bridge-ui";
import { Create } from "@link-stack/bridge-ui";
type PageProps = {
params: { segment: string[] };

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, Detail } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, Detail } from "@link-stack/bridge-ui";
type Props = {
params: { segment: string[] };

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, Edit } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, Edit } from "@link-stack/bridge-ui";
type PageProps = {
params: { segment: string[] };

View file

@ -1,3 +1,3 @@
import { ServiceLayout } from "bridge-ui";
import { ServiceLayout } from "@link-stack/bridge-ui";
export default ServiceLayout;

View file

@ -1,5 +1,5 @@
import { db } from "bridge-common";
import { serviceConfig, List } from "bridge-ui";
import { db } from "@link-stack/bridge-common";
import { serviceConfig, List } from "@link-stack/bridge-ui";
type PageProps = {
params: {

View file

@ -1,4 +1,4 @@
import { Home } from "bridge-ui";
import { Home } from "@link-stack/bridge-ui";
export default function Page() {
return <Home />;

View file

@ -1,4 +1,4 @@
import { About } from "leafcutter-ui";
import { About } from "@link-stack/leafcutter-ui";
export default function Page() {
return <About />;

View file

@ -1,5 +1,5 @@
import { getTemplates } from "opensearch-common";
import { Create } from "leafcutter-ui";
import { getTemplates } from "@link-stack/opensearch-common";
import { Create } from "@link-stack/leafcutter-ui";
export const dynamic = "force-dynamic";

View file

@ -1,4 +1,4 @@
import { FAQ } from "leafcutter-ui";
import { FAQ } from "@link-stack/leafcutter-ui";
export default function Page() {
return <FAQ />;

View file

@ -1,5 +1,5 @@
import { ReactNode } from "react";
import { LeafcutterWrapper } from "leafcutter-ui";
import { LeafcutterWrapper } from "@link-stack/leafcutter-ui";
type LayoutProps = {
children: ReactNode;

View file

@ -1,4 +1,4 @@
import { Home, LeafcutterWrapper } from "leafcutter-ui";
import { Home, LeafcutterWrapper } from "@link-stack/leafcutter-ui";
export const dynamic = "force-dynamic";

View file

@ -1,4 +1,4 @@
import { Trends } from "leafcutter-ui";
import { Trends } from "@link-stack/leafcutter-ui";
export const dynamic = "force-dynamic";

View file

@ -3,7 +3,7 @@
import { FC } from "react";
import { useFormState } from "react-dom";
import { Grid } from "@mui/material";
import { Dialog, Button, TextField, Autocomplete } from "ui";
import { Dialog, Button, TextField, Autocomplete } from "@link-stack/ui";
import { createTicketAction } from "app/_actions/tickets";
import useSWR from "swr";

View file

@ -4,7 +4,7 @@ import { FC, useState } from "react";
import { Grid, Box } from "@mui/material";
import { GridColDef } from "@mui/x-data-grid-pro";
import { StyledDataGrid } from "app/(main)/_components/StyledDataGrid";
import { Button, List, typography } from "ui";
import { Button, List, typography } from "@link-stack/ui";
import { useRouter } from "next/navigation";
import { TicketCreateDialog } from "./TicketCreateDialog";

View file

@ -1,8 +1,8 @@
import { Metadata } from "next";
import { getServerSession } from "app/_lib/authentication";
import { Home } from "leafcutter-ui";
import { getUserVisualizations } from "opensearch-common";
import { LeafcutterWrapper } from "leafcutter-ui";
import { Home } from "@link-stack/leafcutter-ui";
import { getUserVisualizations } from "@link-stack/opensearch-common";
import { LeafcutterWrapper } from "@link-stack/leafcutter-ui";
export const metadata: Metadata = {
title: "Link",

View file

@ -5,7 +5,7 @@ import useSWR from "swr";
import { getTicketQuery } from "app/_graphql/getTicketQuery";
import { getTicketArticlesQuery } from "app/_graphql/getTicketArticlesQuery";
import { Grid, Box, Typography } from "@mui/material";
import { Button, fonts, colors } from "ui";
import { Button, fonts, colors } from "@link-stack/ui";
import "@chatscope/chat-ui-kit-styles/dist/default/styles.min.css";
import {

View file

@ -3,7 +3,7 @@
import { FC, useEffect, useState } from "react";
import { Grid, Box, MenuItem } from "@mui/material";
import { useFormState } from "react-dom";
import { Select, Button } from "ui";
import { Select, Button } from "@link-stack/ui";
import { MuiChipsInput } from "mui-chips-input";
import useSWR, { useSWRConfig } from "swr";
import { getTicketQuery } from "app/_graphql/getTicketQuery";

View file

@ -11,7 +11,7 @@ import { I18n } from "react-polyglot";
import { AdapterDateFns } from "@mui/x-date-pickers-pro/AdapterDateFnsV3";
import { LocalizationProvider } from "@mui/x-date-pickers-pro";
import { LicenseInfo } from "@mui/x-license";
import { locales, LeafcutterProvider } from "leafcutter-ui";
import { locales, LeafcutterProvider } from "@link-stack/leafcutter-ui";
LicenseInfo.setLicenseKey(
"c787ac6613c5f2aa0494c4285fe3e9f2Tz04OTY1NyxFPTE3NDYzNDE0ODkwMDAsUz1wcm8sTE09c3Vic2NyaXB0aW9uLEtWPTI=",

View file

@ -4,11 +4,11 @@ const nextConfig = {
missingSuspenseWithCSRBailout: false,
},
transpilePackages: [
"leafcutter-ui",
"opensearch-common",
"ui",
"bridge-common",
"bridge-ui",
"@link-stack/leafcutter-ui",
"@link-stack/opensearch-common",
"@link-stack/ui",
"@link-stack/bridge-common",
"@link-stack/bridge-ui",
],
publicRuntimeConfig: {
linkURL: process.env.LINK_URL ?? "http://localhost:3000",

View file

@ -1,5 +1,5 @@
{
"name": "link",
"name": "@link-stack/link",
"version": "0.0.1",
"type": "module",
"scripts": {
@ -19,34 +19,34 @@
"@mui/icons-material": "^5",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"bridge-common": "*",
"bridge-ui": "*",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"@link-stack/bridge-common": "*",
"@link-stack/bridge-ui": "*",
"date-fns": "^3.6.0",
"graphql": "^16.8.1",
"graphql-request": "^7.0.1",
"leafcutter-ui": "*",
"material-ui-popup-state": "^5.1.0",
"@link-stack/leafcutter-ui": "*",
"material-ui-popup-state": "^5.1.2",
"mui-chips-input": "^2.1.4",
"next": "14.2.3",
"next-auth": "^4.24.7",
"opensearch-common": "*",
"@link-stack/opensearch-common": "*",
"react": "18.3.1",
"react-cookie": "^7.1.4",
"react-dom": "18.3.1",
"react-iframe": "^1.8.5",
"react-polyglot": "^0.7.2",
"sharp": "^0.33.3",
"sharp": "^0.33.4",
"swr": "^2.2.5",
"tss-react": "^4.9.10",
"twilio-client": "^1.15.1",
"ui": "*"
"@link-stack/ui": "*"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@babel/core": "^7.24.6",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"@types/uuid": "^9.0.8",
"babel-loader": "^9.1.3",
"eslint": "^8.0.0",
@ -55,7 +55,7 @@
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.1",
"eslint-plugin-react": "^7.34.2",
"typescript": "5.4.5"
}
}

View file

@ -1,5 +1,5 @@
{
"name": "database",
"name": "@link-stack/database",
"version": "1.0.0",
"description": "",
"main": "index.js",

4091
package-lock.json generated

File diff suppressed because it is too large Load diff

View file

@ -1,16 +1,16 @@
{
"name": "link-stack",
"name": "@link-stack",
"version": "2.2.0",
"description": "Link from the Center for Digital Resilience",
"scripts": {
"dev": "dotenv -- turbo dev",
"build": "turbo build",
"dev": "dotenv turbo dev",
"build": "dotenv turbo build",
"migrate": "dotenv -- npm run migrate --workspace=database",
"fmt": "turbo run fmt",
"lint": "dotenv turbo lint",
"upgrade:setup": "npm i -g npm-check-updates",
"upgrade:check": "ncu && ncu -ws",
"upgrade:all": "ncu -u -x eslint -x kysely && ncu -ws -u -x eslint -x kysely && npm i",
"clean": "rm -f package-lock.json && rm -rf node_modules && rm -rf .turbo && rm -rf apps/*/node_modules && rm -rf packages/*/node_modules && rm -rf apps/*/.next && rm -rf packages/*/.turbo && rm -rf apps/*/.turbo && rm -rf docker/zammad/addons/*",
"clean": "rm -f package-lock.json && rm -rf node_modules && rm -rf .turbo && rm -rf apps/*/node_modules && rm -rf apps/*/package-lock.json && rm -rf apps/*/.next && rm -rf packages/*/node_modules && rm -rf apps/*/.next && rm -rf packages/*/.turbo && rm -rf packages/*/build && rm -rf docker/zammad/addons/*",
"docker:all:up": "node docker/scripts/docker.js all up",
"docker:all:down": "node docker/scripts/docker.js all down",
"docker:all:build": "node docker/scripts/docker.js all build",

View file

@ -1,5 +1,5 @@
{
"name": "bridge-common",
"name": "@link-stack/bridge-common",
"version": "1.0.0",
"main": "build/main/index.js",
"type": "module",
@ -9,19 +9,18 @@
"build": "tsc -p tsconfig.json"
},
"dependencies": {
"@auth/kysely-adapter": "^1.1.0",
"@auth/kysely-adapter": "^1.2.0",
"graphile-worker": "^0.16.6",
"kysely": "0.26.1",
"pg": "^8.11.5"
"pg": "^8.12.0"
},
"devDependencies": {
"@babel/core": "7.24.5",
"@babel/preset-env": "7.24.5",
"@babel/preset-typescript": "7.24.1",
"eslint": "^9.0.0",
"prettier": "^3.2.5",
"ts-config": "*",
"tsx": "^4.10.2",
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@babel/preset-typescript": "7.24.6",
"prettier": "^3.3.0",
"@link-stack/typescript-config": "*",
"tsx": "^4.11.2",
"typescript": "^5.4.5"
}
}

View file

@ -1,5 +1,5 @@
{
"extends": "ts-config",
"extends": "@link-stack/typescript-config",
"compilerOptions": {
"outDir": "build/main",
"module": "esnext",

View file

@ -1,7 +1,7 @@
"use server";
import { revalidatePath } from "next/cache";
import { db, Database } from "bridge-common";
import { db, Database } from "@link-stack/bridge-common";
import { FieldDescription, Entity } from "../lib/service";
import crypto from "crypto";

View file

@ -4,7 +4,13 @@ import { FC, useEffect, useState } from "react";
import { useFormState } from "react-dom";
import { Grid } from "@mui/material";
import { useRouter } from "next/navigation";
import { Button, Dialog, TextField, Select, MultiValueField } from "ui";
import {
Button,
Dialog,
TextField,
Select,
MultiValueField,
} from "@link-stack/ui";
import { generateCreateAction } from "../lib/actions";
import { FieldDescription } from "../lib/service";
import { serviceConfig } from "../config/config";

View file

@ -3,9 +3,15 @@
import { FC, useState } from "react";
import { Grid, Box } from "@mui/material";
import { useRouter } from "next/navigation";
import { DisplayTextField, Button, Dialog, colors, typography } from "ui";
import {
DisplayTextField,
Button,
Dialog,
colors,
typography,
} from "@link-stack/ui";
import { Selectable } from "kysely";
import { type Database } from "bridge-common";
import { type Database } from "@link-stack/bridge-common";
import { QRCode } from "./QRCode";
import { generateDeleteAction } from "../lib/actions";
import { serviceConfig } from "../config/config";

View file

@ -4,9 +4,15 @@ import { FC, useEffect, useState } from "react";
import { useFormState } from "react-dom";
import { Grid } from "@mui/material";
import { useRouter } from "next/navigation";
import { TextField, Dialog, Button, Select, MultiValueField } from "ui";
import {
TextField,
Dialog,
Button,
Select,
MultiValueField,
} from "@link-stack/ui";
import { Selectable } from "kysely";
import { type Database } from "bridge-common";
import { type Database } from "@link-stack/bridge-common";
import { generateUpdateAction } from "../lib/actions";
import { serviceConfig } from "../config/config";
import { FieldDescription } from "../lib/service";

View file

@ -2,9 +2,9 @@
import { FC } from "react";
import { useRouter } from "next/navigation";
import { List as InternalList, Button } from "ui";
import { List as InternalList, Button } from "@link-stack/ui";
import { type Selectable } from "kysely";
import { type Database } from "bridge-common";
import { type Database } from "@link-stack/bridge-common";
import { serviceConfig } from "../config/config";
import { getBasePath } from "../lib/frontendUtils";

View file

@ -1,4 +1,4 @@
import { type Database } from "bridge-common";
import { type Database } from "@link-stack/bridge-common";
import type { ServiceConfig } from "../lib/service";
import { facebookConfig as facebook } from "./facebook";
import { signalConfig as signal } from "./signal";

View file

@ -1,4 +1,4 @@
import { Database } from "bridge-common";
import { Database } from "@link-stack/bridge-common";
import {
createAction,
updateAction,

View file

@ -1,6 +1,6 @@
import { NextRequest, NextResponse } from "next/server";
import { Service } from "./service";
import { db, getWorkerUtils } from "bridge-common";
import { db, getWorkerUtils } from "@link-stack/bridge-common";
export class Facebook extends Service {
async handleWebhook(req: NextRequest) {

View file

@ -1,6 +1,6 @@
import { NextRequest, NextResponse } from "next/server";
import { GridColDef } from "@mui/x-data-grid-pro";
import { Database, db, getWorkerUtils } from "bridge-common";
import { Database, db, getWorkerUtils } from "@link-stack/bridge-common";
import { getServiceTable } from "../config/config";
const entities = [

View file

@ -1,5 +1,5 @@
import { NextResponse } from "next/server";
import { db } from "bridge-common";
import { db } from "@link-stack/bridge-common";
import { revalidatePath } from "next/cache";
import { Service, ServiceParams } from "./service";

View file

@ -1,11 +1,11 @@
{
"name": "bridge-ui",
"name": "@link-stack/bridge-ui",
"version": "0.2.0",
"scripts": {
"build": "tsc -p tsconfig.json"
},
"dependencies": {
"@auth/kysely-adapter": "^1.1.0",
"@auth/kysely-adapter": "^1.2.0",
"@emotion/cache": "^11.11.0",
"@emotion/react": "^11.11.4",
"@emotion/server": "^11.11.0",
@ -13,11 +13,11 @@
"@mui/icons-material": "^5",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"date-fns": "^3.6.0",
"kysely": "0.26.1",
"material-ui-popup-state": "^5.1.0",
"material-ui-popup-state": "^5.1.2",
"next": "14.2.3",
"react": "18.3.1",
"react-cookie": "^7.1.4",
@ -26,14 +26,14 @@
"react-iframe": "^1.8.5",
"react-markdown": "^9.0.1",
"react-polyglot": "^0.7.2",
"react-qr-code": "^2.0.13",
"react-qr-code": "^2.0.14",
"tss-react": "^4.9.10",
"uuid": "^9.0.1"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@babel/core": "^7.24.6",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"@types/react-dom": "^18.3.0",
"@types/uuid": "^9.0.8",
"babel-loader": "^9.1.3",
@ -43,7 +43,7 @@
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.1",
"eslint-plugin-react": "^7.34.2",
"file-loader": "^6.2.0",
"typescript": "5.4.5"
}

View file

@ -1,5 +1,5 @@
{
"name": "eslint-config",
"name": "@link-stack/eslint-config",
"version": "0.3.10",
"description": "amigo's eslint config",
"author": "Abel Luck <abel@guardianproject.info>",
@ -9,22 +9,20 @@
"fmt": "prettier \"profile/**/*.js\" --write"
},
"dependencies": {
"@rushstack/eslint-patch": "^1.10.2",
"@typescript-eslint/eslint-plugin": "^7.9.0",
"@typescript-eslint/parser": "^7.9.0",
"@rushstack/eslint-patch": "^1.10.3",
"@typescript-eslint/eslint-plugin": "^7.12.0",
"@typescript-eslint/parser": "^7.12.0",
"eslint-config-prettier": "^9.1.0",
"eslint-config-xo-space": "^0.35.0",
"eslint-plugin-cypress": "^3.2.0",
"eslint-plugin-cypress": "^3.3.0",
"eslint-plugin-eslint-comments": "^3.2.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jest": "^28.5.0",
"eslint-plugin-no-use-extend-native": "^0.5.0",
"eslint-plugin-promise": "^6.1.1",
"eslint-plugin-promise": "^6.2.0",
"eslint-plugin-unicorn": "53.0.0",
"@babel/eslint-parser": "7.24.5"
"@babel/eslint-parser": "7.24.6"
},
"peerDependencies": {
"eslint": "^8",
"typescript": "^4.9.5"
},
"devDependencies": {

View file

@ -1,5 +1,5 @@
{
"name": "jest-config",
"name": "@link-stack/jest-config",
"version": "0.0.1",
"description": "",
"author": "Abel Luck <abel@guardianproject.info>",

View file

@ -4,7 +4,7 @@ import {
performLeafcutterQuery,
performZammadQuery,
createUserVisualization,
} from "opensearch-common";
} from "@link-stack/opensearch-common";
export const createUserVisualizationAction = async ({
visualizationID,

View file

@ -1,5 +1,5 @@
{
"name": "leafcutter-ui",
"name": "@link-stack/leafcutter-ui",
"version": "0.2.0",
"scripts": {
"build": "tsc -p tsconfig.json"
@ -12,11 +12,11 @@
"@mui/icons-material": "^5",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"opensearch-common": "*",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"@link-stack/opensearch-common": "*",
"date-fns": "^3.6.0",
"material-ui-popup-state": "^5.1.0",
"material-ui-popup-state": "^5.1.2",
"next": "14.2.3",
"react": "18.3.1",
"react-cookie": "^7.1.4",
@ -29,9 +29,9 @@
"uuid": "^9.0.1"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@babel/core": "^7.24.6",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"@types/uuid": "^9.0.8",
"babel-loader": "^9.1.3",
"eslint": "^8.0.0",
@ -40,7 +40,7 @@
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.1",
"eslint-plugin-react": "^7.34.2",
"file-loader": "^6.2.0",
"typescript": "5.4.5"
}

View file

@ -1,26 +1,21 @@
{
"name": "opensearch-common",
"name": "@link-stack/opensearch-common",
"version": "0.2.0",
"scripts": {
"build": "tsc -p tsconfig.json"
},
"dependencies": {
"@opensearch-project/opensearch": "^2.8.0",
"@opensearch-project/opensearch": "^2.9.0",
"uuid": "^9.0.1"
},
"devDependencies": {
"@babel/core": "^7.24.5",
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@babel/core": "^7.24.6",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"@types/uuid": "^9.0.8",
"babel-loader": "^9.1.3",
"eslint": "^8.0.0",
"eslint-config-next": "^14.2.3",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-import": "^2.29.1",
"eslint-plugin-jsx-a11y": "^6.8.0",
"eslint-plugin-prettier": "^5.1.3",
"eslint-plugin-react": "^7.34.1",
"@link-stack/typescript-config": "*",
"@link-stack/eslint-config": "*",
"file-loader": "^6.2.0",
"typescript": "5.4.5"
}

View file

@ -0,0 +1,8 @@
{
"name": "@link-stack/signal-api",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
}
}

View file

@ -8,7 +8,7 @@ In `tsconfig.json`
```json
{
"extends": "ts-config",
"extends": "@link-stack/typescript-config",
"compilerOptions": {
"incremental": true,
"outDir": "build/main",

View file

@ -1,5 +1,5 @@
{
"name": "ts-config",
"name": "@link-stack/typescript-config",
"version": "0.1.4",
"description": "Shared TypeScript config",
"license": "AGPL-3.0-or-later",

View file

@ -1,5 +1,5 @@
{
"name": "ui",
"name": "@link-stack/ui",
"version": "1.0.0",
"description": "",
"scripts": {
@ -11,15 +11,15 @@
"@mui/icons-material": "^5",
"@mui/lab": "^5.0.0-alpha.170",
"@mui/material": "^5",
"@mui/x-data-grid-pro": "^7.4.0",
"@mui/x-date-pickers-pro": "^7.4.0",
"@mui/x-data-grid-pro": "^7.6.1",
"@mui/x-date-pickers-pro": "^7.6.1",
"next": "14.2.3",
"react": "18.3.1",
"react-dom": "18.3.1"
},
"devDependencies": {
"@types/node": "^20.12.12",
"@types/react": "18.3.2",
"@types/node": "^20.14.1",
"@types/react": "18.3.3",
"typescript": "^5.4.5"
}
}

Some files were not shown because too many files have changed in this diff Show more