Compare commits
119 Commits
@nhost/das
...
@nhost/rea
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d32a2fceae | ||
|
|
d690eb86bb | ||
|
|
d91271cce1 | ||
|
|
1e74a2da85 | ||
|
|
bc8837b961 | ||
|
|
78fdad8404 | ||
|
|
2e8a72d445 | ||
|
|
ce1ae32772 | ||
|
|
b51455d324 | ||
|
|
28a305d9be | ||
|
|
e23bf4500d | ||
|
|
d0457fe5c3 | ||
|
|
766d1e1c5a | ||
|
|
44d460cd01 | ||
|
|
adf934c871 | ||
|
|
0a963486e2 | ||
|
|
227d1704f2 | ||
|
|
2baef92988 | ||
|
|
2a10da128d | ||
|
|
62a51c9fc7 | ||
|
|
58977b173b | ||
|
|
b5e5dcf6de | ||
|
|
157e1b74b8 | ||
|
|
b3a475c60f | ||
|
|
3d62871db1 | ||
|
|
4f0368b95f | ||
|
|
0385093111 | ||
|
|
463cb50c27 | ||
|
|
a50174a0a1 | ||
|
|
21cbe7487e | ||
|
|
6e4b34126e | ||
|
|
fd3a1a44ef | ||
|
|
66e6021dc0 | ||
|
|
57fdba70e0 | ||
|
|
676c11f814 | ||
|
|
d8442a290b | ||
|
|
0db333353b | ||
|
|
7ea8120723 | ||
|
|
64a8f41d03 | ||
|
|
8e12ded94b | ||
|
|
564ce1ac2d | ||
|
|
b024817eb5 | ||
|
|
24f98630fd | ||
|
|
c1b024cf53 | ||
|
|
dbacbf140b | ||
|
|
eda9e57583 | ||
|
|
0a9af5075c | ||
|
|
f92d9d1fd2 | ||
|
|
15168539d8 | ||
|
|
0d74217a4c | ||
|
|
9721527324 | ||
|
|
fd4d024bfc | ||
|
|
c994c8f05b | ||
|
|
4c00a796eb | ||
|
|
2d3a77af76 | ||
|
|
ef05d69889 | ||
|
|
9b1d0f7a5b | ||
|
|
07abea4c16 | ||
|
|
8733961026 | ||
|
|
3dc97f17ae | ||
|
|
6d2963ffa7 | ||
|
|
d1ec8c0781 | ||
|
|
8b205e9c08 | ||
|
|
e2792cd453 | ||
|
|
8871267b91 | ||
|
|
e3001ba4a5 | ||
|
|
1133b76a7e | ||
|
|
9b8a19a316 | ||
|
|
26b8519add | ||
|
|
f372b167d9 | ||
|
|
fbaea49b28 | ||
|
|
0b4a2041e2 | ||
|
|
444206b0f7 | ||
|
|
624ef79110 | ||
|
|
711ef45815 | ||
|
|
21e13db05a | ||
|
|
a1862b80ba | ||
|
|
42e8d102e9 | ||
|
|
aa3c629892 | ||
|
|
f016afed5d | ||
|
|
9d4ee99553 | ||
|
|
6cbe1f662f | ||
|
|
abd9c88e5a | ||
|
|
27e5ef8f5a | ||
|
|
788090e917 | ||
|
|
f16433ae67 | ||
|
|
33e3bba700 | ||
|
|
517bb6930a | ||
|
|
4b17964e8d | ||
|
|
ebc016377b | ||
|
|
eae670f4d1 | ||
|
|
c642649853 | ||
|
|
095f2c73b9 | ||
|
|
42753d2b1f | ||
|
|
328c0a6600 | ||
|
|
93101430c8 | ||
|
|
c14738b8c1 | ||
|
|
683ef4f2fe | ||
|
|
528f02874c | ||
|
|
5f72ba57d3 | ||
|
|
e71e3af530 | ||
|
|
aa05cd4b61 | ||
|
|
bd87a36c6e | ||
|
|
9c88947b86 | ||
|
|
1b03ce7259 | ||
|
|
de1137a876 | ||
|
|
770c4d1801 | ||
|
|
60e25b3425 | ||
|
|
01eeef9de7 | ||
|
|
f395375cd0 | ||
|
|
ae3599d2b4 | ||
|
|
28c1633695 | ||
|
|
66822f8673 | ||
|
|
86b82bf5cf | ||
|
|
f77454a848 | ||
|
|
3426000edf | ||
|
|
7bd9da909c | ||
|
|
fcb84bfb3d | ||
|
|
991e4c0cc5 |
@@ -14,7 +14,7 @@ runs:
|
||||
steps:
|
||||
- uses: pnpm/action-setup@v2.2.4
|
||||
with:
|
||||
version: 8.4.0
|
||||
version: 8.5.1
|
||||
run_install: false
|
||||
- name: Get pnpm cache directory
|
||||
id: pnpm-cache-dir
|
||||
@@ -29,7 +29,7 @@ runs:
|
||||
- name: Use Node.js 16
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 16
|
||||
node-version: 18
|
||||
- shell: bash
|
||||
name: Install packages
|
||||
run: pnpm install --frozen-lockfile
|
||||
|
||||
16
.github/actions/nhost-cli/action.yaml
vendored
16
.github/actions/nhost-cli/action.yaml
vendored
@@ -49,21 +49,9 @@ runs:
|
||||
if: ${{ inputs.start == 'true' }}
|
||||
shell: bash
|
||||
working-directory: ${{ inputs.path }}
|
||||
run: nhost dev --no-browser &
|
||||
- name: Wait for the app to be ready
|
||||
id: wait
|
||||
if: ${{ inputs.start == 'true' && inputs.wait == 'true' }}
|
||||
shell: bash
|
||||
working-directory: ${{ inputs.path }}
|
||||
continue-on-error: true
|
||||
run: |
|
||||
curl -sSf --connect-timeout 3 \
|
||||
--max-time 5 \
|
||||
--retry 300 \
|
||||
--retry-delay 1 \
|
||||
--retry-max-time 300 \
|
||||
--retry-connrefused \
|
||||
'http://localhost:9695' > /dev/null
|
||||
cp .secrets.example .secrets
|
||||
nhost up
|
||||
- name: Log on failure
|
||||
if: steps.wait.outcome == 'failure'
|
||||
shell: bash
|
||||
|
||||
2
.github/workflows/ci.yaml
vendored
2
.github/workflows/ci.yaml
vendored
@@ -43,7 +43,7 @@ jobs:
|
||||
BUILD: 'all'
|
||||
- name: Check if the pnpm lockfile changed
|
||||
id: changed-lockfile
|
||||
uses: tj-actions/changed-files@v35
|
||||
uses: tj-actions/changed-files@v36
|
||||
with:
|
||||
files: pnpm-lock.yaml
|
||||
# * Determine a pnpm filter argument for packages that have been modified.
|
||||
|
||||
36
.github/workflows/test-nhost-cli-action.yaml
vendored
36
.github/workflows/test-nhost-cli-action.yaml
vendored
@@ -28,7 +28,7 @@ jobs:
|
||||
path: packages/nhost-js
|
||||
start: true
|
||||
- name: should be running
|
||||
run: curl -sSf 'http://localhost:9695' > /dev/null
|
||||
run: curl -sSf 'https://local.hasura.nhost.run' > /dev/null
|
||||
|
||||
stop:
|
||||
runs-on: ubuntu-latest
|
||||
@@ -48,28 +48,6 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
wait:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Install the Nhost CLI and start the application
|
||||
uses: ./.github/actions/nhost-cli
|
||||
with:
|
||||
path: packages/nhost-js
|
||||
start: true
|
||||
wait: false
|
||||
- name: should not be ready
|
||||
run: curl -sSf -o /dev/null 'http://localhost:9695' > /dev/null && exit 1 || true
|
||||
- name: should eventually be ready
|
||||
run: |
|
||||
curl -sSf --connect-timeout 3 \
|
||||
--max-time 5 \
|
||||
--retry 300 \
|
||||
--retry-delay 1 \
|
||||
--retry-max-time 300 \
|
||||
--retry-connrefused \
|
||||
'http://localhost:9695' > /dev/null
|
||||
|
||||
config:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
@@ -79,14 +57,10 @@ jobs:
|
||||
with:
|
||||
path: packages/nhost-js
|
||||
start: true
|
||||
config: |
|
||||
services:
|
||||
auth:
|
||||
image: nhost/hasura-auth:0.15.0
|
||||
- name: should find the injected hasura-auth version
|
||||
run: |
|
||||
VERSION=$(curl -sSf 'http://localhost:1337/v1/auth/version')
|
||||
EXPECTED_VERSION='{"version":"v0.15.0"}'
|
||||
VERSION=$(curl -sSf 'https://local.auth.nhost.run/v1/version')
|
||||
EXPECTED_VERSION='{"version":"v0.20.1"}'
|
||||
if [ "$VERSION" != "$EXPECTED_VERSION" ]; then
|
||||
echo "Expected version $EXPECTED_VERSION but got $VERSION"
|
||||
exit 1
|
||||
@@ -99,6 +73,6 @@ jobs:
|
||||
- name: Install the Nhost CLI
|
||||
uses: ./.github/actions/nhost-cli
|
||||
with:
|
||||
version: v0.8.10
|
||||
version: v1.0.1
|
||||
- name: should find the correct version
|
||||
run: nhost version | head -n 1 | grep v0.8.10 || exit 1
|
||||
run: nhost --version | head -n 1 | grep v1.0.1 || exit 1
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -26,6 +26,7 @@ tmp/
|
||||
.pnpm-store
|
||||
.turbo
|
||||
.env
|
||||
.secrets
|
||||
out/
|
||||
|
||||
# Custom
|
||||
|
||||
@@ -25,13 +25,9 @@ module.exports = {
|
||||
'error',
|
||||
{ allowArrowFunctions: true, allowFunctions: true },
|
||||
],
|
||||
'import/no-named-as-default': 'off',
|
||||
'import/prefer-default-export': 'off',
|
||||
'import/no-extraneous-dependencies': ['error', { devDependencies: true }],
|
||||
// TODO: Temporarily disable this rule because of a WIP refactoring
|
||||
'import/no-named-as-default': 'off',
|
||||
curly: ['error', 'all'],
|
||||
'no-restricted-exports': 'off',
|
||||
'no-undef': 'off',
|
||||
'no-use-before-define': 'off',
|
||||
'@typescript-eslint/no-use-before-define': [
|
||||
@@ -70,17 +66,7 @@ module.exports = {
|
||||
{
|
||||
group: ['..*'],
|
||||
message:
|
||||
'Please use absolute imports instead. (e.g: @/ui/, @/hooks/, etc.)',
|
||||
},
|
||||
{
|
||||
group: ['@/components/ui', '@/components/ui/*'],
|
||||
message:
|
||||
'Please use shorthand imports instead. (e.g: @/ui/ActivityIndicator, @/ui/Button, etc.)',
|
||||
},
|
||||
{
|
||||
group: ['@/components/ui/v2*'],
|
||||
message:
|
||||
'Please use shorthand imports instead. (e.g: @/ui/v2/ActivityIndicator, @/ui/v2/Button, etc.)',
|
||||
'Please use absolute imports instead. (e.g: @/components/, @/hooks/, etc.)',
|
||||
},
|
||||
{
|
||||
group: ['@testing-library/react*'],
|
||||
|
||||
@@ -1,5 +1,51 @@
|
||||
# @nhost/dashboard
|
||||
|
||||
## 0.17.8
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- d0457fe5c: feat(settings): improve the dashboard and config parity
|
||||
- @nhost/react-apollo@5.0.26
|
||||
- @nhost/nextjs@1.13.28
|
||||
|
||||
## 0.17.7
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 4f0368b95: fix(account): don't break account settings page
|
||||
|
||||
## 0.17.6
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 64a8f41d0: chore(resources): lower the maximum allowed resources per service
|
||||
|
||||
## 0.17.5
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @nhost/react-apollo@5.0.25
|
||||
- @nhost/nextjs@1.13.27
|
||||
|
||||
## 0.17.4
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 9b1d0f7a5: fix(deployments): use correct timestamp for deployment details
|
||||
- 6d2963ffa: chore(deps): bump `@types/react` to `v18.2.8`
|
||||
- 8871267b9: chore(deps): downgrade `pnpm` to `v8.5.1` because of no Turborepo support
|
||||
|
||||
## 0.17.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 01eeef9de: chore(misc): under the hood improvements
|
||||
- 21e13db05: chore(deps): bump `@types/react` to `v18.2.7` and `turbo` to `v1.10.1`
|
||||
- f16433ae6: chore(secrets): allow empty secrets and environment variables
|
||||
- aa3c62989: chore(cli): bump Nhost CLI version to v1.0
|
||||
- @nhost/react-apollo@5.0.24
|
||||
- @nhost/nextjs@1.13.26
|
||||
|
||||
## 0.17.2
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -3,7 +3,7 @@ RUN apk add --no-cache libc6-compat
|
||||
RUN apk update
|
||||
WORKDIR /app
|
||||
|
||||
RUN yarn global add turbo@1.9.8
|
||||
RUN yarn global add turbo@1.10.1
|
||||
COPY . .
|
||||
RUN turbo prune --scope="@nhost/dashboard" --docker
|
||||
|
||||
@@ -29,7 +29,7 @@ ENV NEXT_PUBLIC_NHOST_HASURA_CONSOLE_URL __NEXT_PUBLIC_NHOST_HASURA_CONSOLE_URL_
|
||||
ENV NEXT_PUBLIC_NHOST_HASURA_MIGRATIONS_API_URL __NEXT_PUBLIC_NHOST_HASURA_MIGRATIONS_API_URL__
|
||||
ENV NEXT_PUBLIC_NHOST_HASURA_API_URL __NEXT_PUBLIC_NHOST_HASURA_API_URL__
|
||||
|
||||
RUN yarn global add pnpm@8.4.0
|
||||
RUN yarn global add pnpm@8.5.1
|
||||
COPY .gitignore .gitignore
|
||||
COPY --from=pruner /app/out/json/ .
|
||||
COPY --from=pruner /app/out/pnpm-*.yaml .
|
||||
|
||||
@@ -13,7 +13,7 @@ pnpm install
|
||||
|
||||
Depending on the environment you wish to target you can configure environment variables in `.env.<target_environment>.local`.
|
||||
|
||||
- `.env.development`: This file is used if you run `nhost dev`
|
||||
- `.env.development`: This file is used if you run `nhost up`
|
||||
- `.env.development.local`: This file is used if you run `pnpm dev`. It takes precedence over `.env.local` if available.
|
||||
- `.env.production.local`: This file is used if you run `pnpm build`. It takes precedence over `.env.local` if available.
|
||||
- `.env.local`: This file is used if you run either `pnpm dev` or `pnpm build`.
|
||||
@@ -27,7 +27,7 @@ You can connect the Nhost Dashboard to your **locally running** Nhost backend in
|
||||
First, you need to run the following command to start your backend locally:
|
||||
|
||||
```bash
|
||||
cd <your_nhost_project> && nhost dev
|
||||
cd <your_nhost_project> && nhost up
|
||||
```
|
||||
|
||||
You can connect the Nhost Dashboard to your locally running backend by setting the following environment variables in `.env.development.local`:
|
||||
@@ -92,7 +92,7 @@ pnpm storybook
|
||||
| Name | Description |
|
||||
| -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| `react/react-in-jsx-scope` | Disabled because we don't need to import `React` anymore. |
|
||||
| `react/jsx-props-no-spreading` | Disabled because we heavily rely on props spreading in our `@/ui/v2` components. |
|
||||
| `react/jsx-props-no-spreading` | Disabled because we heavily rely on props spreading in our `@/components/ui/v2` components. |
|
||||
| `react/require-default-props` | Disabled because we use TypeScript instead of PropTypes. |
|
||||
| `react-hooks/exhaustive-deps` | Because we already had several rule violations when proper ESLint rules were introduced, we changed this rule to a warning. |
|
||||
| `import/extensions` | JS / TS files should be imported without file extensions. |
|
||||
@@ -101,7 +101,6 @@ pnpm storybook
|
||||
| `import/order` | Until we have a better auto-formatter, we disable this rule. |
|
||||
| `import/no-extraneous-dependencies` | `devDependencies` should be excluded from the list of disallowed imports. |
|
||||
| `curly` | By default it only enforces curly braces for multi-line blocks, but it should be enforced for single-line blocks as well. |
|
||||
| `no-restricted-exports` | `export { default } from './module'` is used heavily in `@/ui/v2` which is a restricted export by default. |
|
||||
| `@typescript-eslint/no-use-before-define` | Order of type references should be ignored. |
|
||||
| `no-undef` | [Official TypeScript ESLint packages](https://github.com/typescript-eslint/typescript-eslint/issues/4671#issuecomment-1065948494) are turning off this rule. |
|
||||
| `@typescript-eslint/no-shadow` | TypeScript specific implementation of `no-shadow`. |
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@nhost/dashboard",
|
||||
"version": "0.17.2",
|
||||
"version": "0.17.8",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"preinstall": "npx only-allow pnpm",
|
||||
@@ -11,7 +11,7 @@
|
||||
"lint": "next lint --max-warnings 0",
|
||||
"test": "vitest",
|
||||
"codegen": "graphql-codegen --config graphql.config.yaml --errors-only",
|
||||
"nhost:dev": "nhost dev -d",
|
||||
"nhost:dev": "nhost up",
|
||||
"format": "prettier --write \"src/**/*.{js,ts,tsx,jsx,json,md}\" --plugin-search-dir=.",
|
||||
"storybook": "start-storybook -p 6006 -s public",
|
||||
"build-storybook": "build-storybook",
|
||||
@@ -104,7 +104,7 @@
|
||||
"@types/lodash.debounce": "^4.0.7",
|
||||
"@types/node": "^16.11.7",
|
||||
"@types/pluralize": "^0.0.29",
|
||||
"@types/react": "18.2.6",
|
||||
"@types/react": "18.2.8",
|
||||
"@types/react-dom": "18.2.4",
|
||||
"@types/react-table": "^7.7.12",
|
||||
"@types/testing-library__jest-dom": "^5.14.5",
|
||||
|
||||
1
dashboard/public/assets/brands/bitbucket.svg
Normal file
1
dashboard/public/assets/brands/bitbucket.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><path fill="#2684FF" fill-rule="evenodd" d="M3.41 4.393a.563.563 0 0 1 .434-.195l16.416.003a.562.562 0 0 1 .563.652l-2.388 14.66a.562.562 0 0 1-.563.472H6.417a.765.765 0 0 1-.748-.639L3.281 4.851a.562.562 0 0 1 .13-.458Zm6.832 10.282h3.656l.886-5.173H9.252l.99 5.173Z" clip-rule="evenodd"/><path fill="url(#a)" d="M20.063 9.502h-5.279l-.886 5.173h-3.656l-4.317 5.124a.762.762 0 0 0 .492.186h11.458a.562.562 0 0 0 .563-.473l1.625-10.01Z"/><defs><linearGradient id="a" x1="16.692" x2="10.594" y1="7.717" y2="16.375" gradientUnits="userSpaceOnUse"><stop offset=".18" stop-color="#0052CC"/><stop offset="1" stop-color="#2684FF"/></linearGradient></defs></svg>
|
||||
|
After Width: | Height: | Size: 730 B |
1
dashboard/public/assets/brands/gitlab.svg
Normal file
1
dashboard/public/assets/brands/gitlab.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><path fill="#E24329" fill-rule="evenodd" d="m12 19.996 3.223-9.917H8.777L12 19.995Z" clip-rule="evenodd"/><path fill="#FC6D26" fill-rule="evenodd" d="m12 19.996-3.223-9.917H4.261L12 19.996Z" clip-rule="evenodd"/><path fill="#FCA326" fill-rule="evenodd" d="m4.262 10.079-.98 3.013a.667.667 0 0 0 .243.746L12 19.996l-7.738-9.917Z" clip-rule="evenodd"/><path fill="#E24329" fill-rule="evenodd" d="M4.261 10.079h4.517L6.837 4.106a.333.333 0 0 0-.635 0l-1.94 5.973Z" clip-rule="evenodd"/><path fill="#FC6D26" fill-rule="evenodd" d="m12 19.996 3.222-9.917h4.516L12 19.996Z" clip-rule="evenodd"/><path fill="#FCA326" fill-rule="evenodd" d="m19.738 10.079.98 3.013a.667.667 0 0 1-.243.746L12 19.996l7.738-9.917Z" clip-rule="evenodd"/><path fill="#E24329" fill-rule="evenodd" d="M19.739 10.079h-4.517l1.941-5.973a.334.334 0 0 1 .635 0l1.94 5.973Z" clip-rule="evenodd"/></svg>
|
||||
|
After Width: | Height: | Size: 941 B |
1
dashboard/public/assets/brands/strava.svg
Normal file
1
dashboard/public/assets/brands/strava.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><path fill="#FE7203" d="M4.125 5.25c0-.621.504-1.125 1.125-1.125h13.5c.621 0 1.125.504 1.125 1.125v13.5c0 .621-.504 1.125-1.125 1.125H5.25a1.125 1.125 0 0 1-1.125-1.125V5.25Z"/><path fill="url(#a)" d="M4.125 5.25c0-.621.504-1.125 1.125-1.125h13.5c.621 0 1.125.504 1.125 1.125v13.5c0 .621-.504 1.125-1.125 1.125H5.25a1.125 1.125 0 0 1-1.125-1.125V5.25Z"/><path fill="#fff" fill-rule="evenodd" d="m10.917 12.787 2.461 4.43 2.363-4.43h-1.477l-.886 1.674-.984-1.674h-1.477Z" clip-rule="evenodd" opacity=".6"/><path fill="#fff" fill-rule="evenodd" d="m11.213 6.586 3.051 6.201H8.063l3.15-6.201Zm0 3.74 1.18 2.461h-2.46l1.28-2.46Z" clip-rule="evenodd"/><defs><linearGradient id="a" x1="12" x2="12" y1="4.125" y2="19.875" gradientUnits="userSpaceOnUse"><stop stop-color="#FB2F01" stop-opacity="0"/><stop offset="1" stop-color="#FB2F01"/></linearGradient></defs></svg>
|
||||
|
After Width: | Height: | Size: 935 B |
@@ -1,25 +1 @@
|
||||
<svg width="72" height="72" viewBox="0 0 72 72" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M0 8C0 3.58172 3.58172 0 8 0H64C68.4183 0 72 3.58172 72 8V64C72 68.4183 68.4183 72 64 72H8C3.58172 72 0 68.4183 0 64V8Z" fill="#1EB4D4"/>
|
||||
<path d="M0 8C0 3.58172 3.58172 0 8 0H64C68.4183 0 72 3.58172 72 8V64C72 68.4183 68.4183 72 64 72H8C3.58172 72 0 68.4183 0 64V8Z" fill="url(#paint0_linear_1_85)" fill-opacity="0.2"/>
|
||||
<g filter="url(#filter0_d_1_85)">
|
||||
<circle cx="36" cy="39" r="16" fill="#35BCD8"/>
|
||||
</g>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M51.3994 17.2212C52.831 21.3475 52.831 26.737 51.7362 29.3896C51.1889 30.6948 51.1467 32.2106 51.5678 33.558C52.1152 35.2001 52.4099 36.9264 52.4099 38.7791C52.4099 48.0001 44.9573 55.3685 35.7783 55.2001C27.0625 55.0738 19.6941 47.6633 19.4836 38.9896C19.4415 37.0948 19.7362 35.2001 20.3257 33.5159C20.7889 32.1685 20.7889 30.6948 20.2415 29.3896C19.1889 26.7791 19.1467 21.3896 20.5783 17.1791C20.9152 16.4212 22.0941 16.6738 22.0941 17.4738V17.7685C22.3467 21.7685 23.8625 24.1685 26.052 24.9685C26.3889 25.137 26.8099 25.0948 27.1467 24.8843C29.7152 23.3264 32.7046 22.358 35.9467 22.358C39.1889 22.358 42.2204 23.2843 44.7467 24.8843C45.1257 25.137 45.6731 25.137 46.0099 24.9685C48.1573 23.9159 49.5889 21.7685 49.8415 17.8106V17.5159C49.8836 16.7159 51.0204 16.4633 51.3994 17.2212ZM36.1994 26.2738C29.1257 26.1054 23.3152 31.9159 23.4836 39.0317C23.5678 45.7264 29.0836 51.158 35.7362 51.3264C42.852 51.4106 48.6204 45.6422 48.4941 38.5685C48.3678 31.8738 42.8941 26.358 36.1994 26.2738ZM34.9362 32.8844L37.8836 37.4318L40.7468 41.9792C40.9152 42.2318 40.9994 42.5265 40.9994 42.8213C40.9994 43.3686 40.7047 43.8739 40.2415 44.1686C39.6941 44.5055 38.9783 44.5055 38.431 44.1265C38.2204 44.0002 38.052 43.8739 37.9678 43.6634L36.3257 41.3055C36.1994 41.0528 35.9047 41.0528 35.6941 41.2634L33.3783 43.9581C33.0836 44.2528 32.7047 44.4634 32.2415 44.4634C31.8626 44.4634 31.4415 44.3371 31.1468 44.0844C30.5152 43.495 30.4731 42.4844 31.0626 41.8528L34.1783 38.4423C34.3047 38.2318 34.3889 37.9371 34.2204 37.6844L32.2415 34.5686C32.0731 34.316 31.9889 34.0213 31.9889 33.7265C31.9889 33.1792 32.2836 32.6739 32.7468 32.3792C33.5047 31.916 34.4731 32.1265 34.9362 32.8844Z" fill="white"/>
|
||||
<defs>
|
||||
<filter id="filter0_d_1_85" x="17" y="23" width="38" height="41" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
|
||||
<feFlood flood-opacity="0" result="BackgroundImageFix"/>
|
||||
<feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
|
||||
<feMorphology radius="4" operator="erode" in="SourceAlpha" result="effect1_dropShadow_1_85"/>
|
||||
<feOffset dy="6"/>
|
||||
<feGaussianBlur stdDeviation="3.5"/>
|
||||
<feComposite in2="hardAlpha" operator="out"/>
|
||||
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0.231373 0 0 0 0 0.278431 0 0 0 0.25 0"/>
|
||||
<feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_1_85"/>
|
||||
<feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_1_85" result="shape"/>
|
||||
</filter>
|
||||
<linearGradient id="paint0_linear_1_85" x1="0" y1="0" x2="72" y2="72" gradientUnits="userSpaceOnUse">
|
||||
<stop stop-color="white"/>
|
||||
<stop offset="1" stop-color="white" stop-opacity="0"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
</svg>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="72" height="72" fill="none"><path fill="#1EB4D4" d="M0 8a8 8 0 0 1 8-8h56a8 8 0 0 1 8 8v56a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8V8Z"/><path fill="url(#a)" fill-opacity=".2" d="M0 8a8 8 0 0 1 8-8h56a8 8 0 0 1 8 8v56a8 8 0 0 1-8 8H8a8 8 0 0 1-8-8V8Z"/><g filter="url(#b)"><circle cx="36" cy="39" r="16" fill="#35BCD8"/></g><path fill="#fff" fill-rule="evenodd" d="M51.4 17.221c1.431 4.127 1.431 9.516.336 12.169-.547 1.305-.59 2.82-.168 4.168.547 1.642.842 3.368.842 5.221 0 9.221-7.453 16.59-16.632 16.421-8.715-.126-16.084-7.537-16.294-16.21-.043-1.895.252-3.79.842-5.474.463-1.347.463-2.821-.085-4.126-1.052-2.61-1.094-8 .337-12.21.337-.759 1.516-.506 1.516.294v.294c.253 4 1.768 6.4 3.958 7.2.337.169.758.127 1.095-.084 2.568-1.558 5.558-2.526 8.8-2.526 3.242 0 6.273.926 8.8 2.526.379.253.926.253 1.263.084 2.147-1.052 3.579-3.2 3.832-7.157v-.295c.042-.8 1.178-1.053 1.557-.295Zm-15.2 9.053c-7.074-.169-12.885 5.642-12.716 12.758.084 6.694 5.6 12.126 12.252 12.294 7.116.085 12.884-5.684 12.758-12.758-.126-6.694-5.6-12.21-12.295-12.294Zm-1.264 6.61 2.948 4.548 2.863 4.547c.168.253.252.547.252.842 0 .548-.294 1.053-.758 1.348a1.662 1.662 0 0 1-1.81-.042c-.21-.127-.379-.253-.463-.464l-1.642-2.357c-.127-.253-.421-.253-.632-.043l-2.316 2.695c-.294.295-.673.505-1.136.505-.38 0-.8-.126-1.095-.379a1.59 1.59 0 0 1-.084-2.231l3.115-3.41c.127-.211.21-.506.042-.759l-1.978-3.115a1.518 1.518 0 0 1-.253-.843c0-.547.295-1.052.758-1.347.758-.463 1.726-.252 2.19.505Z" clip-rule="evenodd"/><defs><linearGradient id="a" x1="0" x2="72" y1="0" y2="72" gradientUnits="userSpaceOnUse"><stop stop-color="#fff"/><stop offset="1" stop-color="#fff" stop-opacity="0"/></linearGradient><filter id="b" width="38" height="41" x="17" y="23" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feColorMatrix in="SourceAlpha" result="hardAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"/><feMorphology in="SourceAlpha" radius="4" result="effect1_dropShadow_1_85"/><feOffset dy="6"/><feGaussianBlur stdDeviation="3.5"/><feComposite in2="hardAlpha" operator="out"/><feColorMatrix values="0 0 0 0 0 0 0 0 0 0.231373 0 0 0 0 0.278431 0 0 0 0.25 0"/><feBlend in2="BackgroundImageFix" result="effect1_dropShadow_1_85"/><feBlend in="SourceGraphic" in2="effect1_dropShadow_1_85" result="shape"/></filter></defs></svg>
|
||||
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 2.3 KiB |
@@ -1,5 +1,5 @@
|
||||
import type { CommonDialogProps } from '@/components/ui/v2/Dialog';
|
||||
import type { DialogFormProps } from '@/types/common';
|
||||
import type { CommonDialogProps } from '@/ui/v2/Dialog';
|
||||
import type { ReactElement, ReactNode } from 'react';
|
||||
import { createContext } from 'react';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { RetryableErrorBoundary } from '@/components/common/RetryableErrorBoundary';
|
||||
import { AlertDialog } from '@/ui/v2/AlertDialog';
|
||||
import { BaseDialog } from '@/ui/v2/Dialog';
|
||||
import { Drawer } from '@/ui/v2/Drawer';
|
||||
import { RetryableErrorBoundary } from '@/components/presentational/RetryableErrorBoundary';
|
||||
import { AlertDialog } from '@/components/ui/v2/AlertDialog';
|
||||
import { BaseDialog } from '@/components/ui/v2/Dialog';
|
||||
import { Drawer } from '@/components/ui/v2/Drawer';
|
||||
import { useRouter } from 'next/router';
|
||||
import type { BaseSyntheticEvent, PropsWithChildren } from 'react';
|
||||
import {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import type { CommonDialogProps } from '@/ui/v2/Dialog';
|
||||
import type { CommonDialogProps } from '@/components/ui/v2/Dialog';
|
||||
import type { ReactElement, ReactNode } from 'react';
|
||||
import type { DialogConfig, OpenDialogOptions } from './DialogContext';
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
import { Avatar } from '@/components/ui/v2/Avatar';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { Input } from '@/components/ui/v2/Input';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { Avatar } from '@/ui/v2/Avatar';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { Input } from '@/ui/v2/Input';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { useInsertFeedbackOneMutation } from '@/utils/__generated__/graphql';
|
||||
import { useUserData } from '@nhost/nextjs';
|
||||
import Image from 'next/image';
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { NavLinkProps } from '@/components/common/NavLink';
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import type { SvgIconProps } from '@/ui/v2/icons/SvgIcon';
|
||||
import type { SvgIconProps } from '@/components/ui/v2/icons/SvgIcon';
|
||||
import type { ForwardedRef, PropsWithoutRef, ReactElement } from 'react';
|
||||
import { cloneElement, forwardRef, isValidElement } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
@@ -1,3 +1,6 @@
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import {
|
||||
GetAllWorkspacesAndProjectsDocument,
|
||||
@@ -5,9 +8,6 @@ import {
|
||||
useGetWorkspaceMemberInvitesToManageQuery,
|
||||
} from '@/generated/graphql';
|
||||
import { useSubmitState } from '@/hooks/useSubmitState';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { nhost } from '@/utils/nhost';
|
||||
import { triggerToast } from '@/utils/toast';
|
||||
import { useApolloClient } from '@apollo/client';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { LinkProps } from '@/ui/v2/Link';
|
||||
import { Link } from '@/ui/v2/Link';
|
||||
import type { LinkProps } from '@/components/ui/v2/Link';
|
||||
import { Link } from '@/components/ui/v2/Link';
|
||||
import NextLink from 'next/link';
|
||||
import type { ForwardedRef, PropsWithoutRef } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import type { ButtonProps } from '@/ui/v2/Button';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { ChevronLeftIcon } from '@/ui/v2/icons/ChevronLeftIcon';
|
||||
import { ChevronRightIcon } from '@/ui/v2/icons/ChevronRightIcon';
|
||||
import { Input } from '@/ui/v2/Input';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import type { ButtonProps } from '@/components/ui/v2/Button';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { ChevronLeftIcon } from '@/components/ui/v2/icons/ChevronLeftIcon';
|
||||
import { ChevronRightIcon } from '@/components/ui/v2/icons/ChevronRightIcon';
|
||||
import { Input } from '@/components/ui/v2/Input';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import type { DetailedHTMLProps, HTMLProps } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { Option } from '@/ui/v2/Option';
|
||||
import type { SelectProps } from '@/ui/v2/Select';
|
||||
import { Select } from '@/ui/v2/Select';
|
||||
import { useColorPreference } from '@/ui/v2/useColorPreference';
|
||||
import { Option } from '@/components/ui/v2/Option';
|
||||
import type { SelectProps } from '@/components/ui/v2/Select';
|
||||
import { Select } from '@/components/ui/v2/Select';
|
||||
import { useColorPreference } from '@/components/ui/v2/useColorPreference';
|
||||
|
||||
export interface ThemeSwitcherProps extends SelectProps<any> {}
|
||||
|
||||
|
||||
@@ -4,10 +4,10 @@ import { DataGridConfigProvider } from '@/components/dataGrid/DataGridConfigProv
|
||||
import { DataGridFrame } from '@/components/dataGrid/DataGridFrame';
|
||||
import type { DataGridHeaderProps } from '@/components/dataGrid/DataGridHeader';
|
||||
import { DataGridHeader } from '@/components/dataGrid/DataGridHeader';
|
||||
import { ActivityIndicator } from '@/components/ui/v2/ActivityIndicator';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { DataBrowserEmptyState } from '@/features/database/dataGrid/components/DataBrowserEmptyState';
|
||||
import type { DataBrowserGridColumn } from '@/features/database/dataGrid/types/dataBrowser';
|
||||
import { ActivityIndicator } from '@/ui/v2/ActivityIndicator';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { ForwardedRef } from 'react';
|
||||
import { forwardRef, useEffect, useRef } from 'react';
|
||||
import mergeRefs from 'react-merge-refs';
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Checkbox } from '@/ui/v2/Checkbox';
|
||||
import { Checkbox } from '@/components/ui/v2/Checkbox';
|
||||
import type { MutableRefObject } from 'react';
|
||||
import { useMemo } from 'react';
|
||||
import type { PluginHook, TableInstance, TableOptions } from 'react-table';
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import type { DataGridProps } from '@/components/dataGrid/DataGrid';
|
||||
import { DataGridCell } from '@/components/dataGrid/DataGridCell';
|
||||
import { useDataGridConfig } from '@/components/dataGrid/DataGridConfigProvider';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { PlusIcon } from '@/components/ui/v2/icons/PlusIcon';
|
||||
import type { DataBrowserGridColumn } from '@/features/database/dataGrid/types/dataBrowser';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { PlusIcon } from '@/ui/v2/icons/PlusIcon';
|
||||
import type { DetailedHTMLProps, HTMLProps, KeyboardEvent } from 'react';
|
||||
import { Fragment, useMemo, useRef } from 'react';
|
||||
import type { Row } from 'react-table';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { ReadOnlyToggle } from '@/components/common/ReadOnlyToggle';
|
||||
import type { CommonDataGridCellProps } from '@/components/dataGrid/DataGridCell';
|
||||
import { useDataGridCell } from '@/components/dataGrid/DataGridCell';
|
||||
import { Dropdown } from '@/ui/v2/Dropdown';
|
||||
import { ReadOnlyToggle } from '@/components/presentational/ReadOnlyToggle';
|
||||
import { Dropdown } from '@/components/ui/v2/Dropdown';
|
||||
import type { KeyboardEvent as ReactKeyboardEvent, MouseEvent } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
import { useDialog } from '@/components/common/DialogProvider';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Tooltip, useTooltip } from '@/components/ui/v2/Tooltip';
|
||||
import type {
|
||||
ColumnType,
|
||||
DataBrowserGridCell,
|
||||
DataBrowserGridCellProps,
|
||||
} from '@/features/database/dataGrid/types/dataBrowser';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Tooltip, useTooltip } from '@/ui/v2/Tooltip';
|
||||
import { triggerToast } from '@/utils/toast';
|
||||
import type { FocusEvent, KeyboardEvent, MouseEvent } from 'react';
|
||||
import {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import type { CommonDataGridCellProps } from '@/components/dataGrid/DataGridCell';
|
||||
import { useDataGridCell } from '@/components/dataGrid/DataGridCell';
|
||||
import { Input, inputClasses } from '@/ui/v2/Input';
|
||||
import type { TextProps } from '@/ui/v2/Text';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { getDateComponents } from '@/utils/formatDate';
|
||||
import { Input, inputClasses } from '@/components/ui/v2/Input';
|
||||
import type { TextProps } from '@/components/ui/v2/Text';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { getDateComponents } from '@/utils/getDateComponents';
|
||||
import type { ChangeEvent, KeyboardEvent } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
|
||||
@@ -1,15 +1,15 @@
|
||||
import type { DataGridProps } from '@/components/dataGrid/DataGrid';
|
||||
import { useDataGridConfig } from '@/components/dataGrid/DataGridConfigProvider';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { Divider } from '@/components/ui/v2/Divider';
|
||||
import { Dropdown } from '@/components/ui/v2/Dropdown';
|
||||
import { ArrowDownIcon } from '@/components/ui/v2/icons/ArrowDownIcon';
|
||||
import { ArrowUpIcon } from '@/components/ui/v2/icons/ArrowUpIcon';
|
||||
import { PencilIcon } from '@/components/ui/v2/icons/PencilIcon';
|
||||
import { PlusIcon } from '@/components/ui/v2/icons/PlusIcon';
|
||||
import { TrashIcon } from '@/components/ui/v2/icons/TrashIcon';
|
||||
import type { DataBrowserGridColumn } from '@/features/database/dataGrid/types/dataBrowser';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { Divider } from '@/ui/v2/Divider';
|
||||
import { Dropdown } from '@/ui/v2/Dropdown';
|
||||
import { ArrowDownIcon } from '@/ui/v2/icons/ArrowDownIcon';
|
||||
import { ArrowUpIcon } from '@/ui/v2/icons/ArrowUpIcon';
|
||||
import { PencilIcon } from '@/ui/v2/icons/PencilIcon';
|
||||
import { PlusIcon } from '@/ui/v2/icons/PlusIcon';
|
||||
import { TrashIcon } from '@/ui/v2/icons/TrashIcon';
|
||||
import type { DetailedHTMLProps, HTMLProps } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { CommonDataGridCellProps } from '@/components/dataGrid/DataGridCell';
|
||||
import { useDataGridCell } from '@/components/dataGrid/DataGridCell';
|
||||
import { Input, inputClasses } from '@/ui/v2/Input';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { Input, inputClasses } from '@/components/ui/v2/Input';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import type { ChangeEvent, KeyboardEvent } from 'react';
|
||||
|
||||
export type DataGridNumericCellProps<TData extends object> =
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { IconButtonProps } from '@/ui/v2/IconButton';
|
||||
import { IconButton } from '@/ui/v2/IconButton';
|
||||
import { ChevronLeftIcon } from '@/ui/v2/icons/ChevronLeftIcon';
|
||||
import { ChevronRightIcon } from '@/ui/v2/icons/ChevronRightIcon';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import type { IconButtonProps } from '@/components/ui/v2/IconButton';
|
||||
import { IconButton } from '@/components/ui/v2/IconButton';
|
||||
import { ChevronLeftIcon } from '@/components/ui/v2/icons/ChevronLeftIcon';
|
||||
import { ChevronRightIcon } from '@/components/ui/v2/icons/ChevronRightIcon';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import clsx from 'clsx';
|
||||
|
||||
export interface DataGridPaginationProps extends BoxProps {
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
import { Modal } from '@/components/ui/v1/Modal';
|
||||
import { ActivityIndicator } from '@/components/ui/v2/ActivityIndicator';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { IconButton } from '@/components/ui/v2/IconButton';
|
||||
import { AudioPreviewIcon } from '@/components/ui/v2/icons/AudioPreviewIcon';
|
||||
import { FilePreviewIcon } from '@/components/ui/v2/icons/FilePreviewIcon';
|
||||
import { PDFPreviewIcon } from '@/components/ui/v2/icons/PDFPreviewIcon';
|
||||
import { VideoPreviewIcon } from '@/components/ui/v2/icons/VideoPreviewIcon';
|
||||
import { XIcon } from '@/components/ui/v2/icons/XIcon';
|
||||
import { useAppClient } from '@/features/projects/common/hooks/useAppClient';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { Modal } from '@/ui/v1/Modal';
|
||||
import { ActivityIndicator } from '@/ui/v2/ActivityIndicator';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { IconButton } from '@/ui/v2/IconButton';
|
||||
import { AudioPreviewIcon } from '@/ui/v2/icons/AudioPreviewIcon';
|
||||
import { FilePreviewIcon } from '@/ui/v2/icons/FilePreviewIcon';
|
||||
import { PDFPreviewIcon } from '@/ui/v2/icons/PDFPreviewIcon';
|
||||
import { VideoPreviewIcon } from '@/ui/v2/icons/VideoPreviewIcon';
|
||||
import { XIcon } from '@/ui/v2/icons/XIcon';
|
||||
import clsx from 'clsx';
|
||||
import type { ReactNode } from 'react';
|
||||
import { useEffect, useReducer, useState } from 'react';
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
import type { CommonDataGridCellProps } from '@/components/dataGrid/DataGridCell';
|
||||
import { useDataGridCell } from '@/components/dataGrid/DataGridCell';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { CopyIcon } from '@/ui/v2/icons/CopyIcon';
|
||||
import { Input, inputClasses } from '@/ui/v2/Input';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { copy } from '@/utils/common/copy';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { CopyIcon } from '@/components/ui/v2/icons/CopyIcon';
|
||||
import { Input, inputClasses } from '@/components/ui/v2/Input';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { copy } from '@/utils/copy';
|
||||
import type { ChangeEvent, KeyboardEvent, Ref } from 'react';
|
||||
import { useEffect } from 'react';
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import type {
|
||||
AutocompleteOption,
|
||||
AutocompleteProps,
|
||||
} from '@/ui/v2/Autocomplete';
|
||||
import { Autocomplete } from '@/ui/v2/Autocomplete';
|
||||
import { callAll } from '@/utils/common/callAll';
|
||||
} from '@/components/ui/v2/Autocomplete';
|
||||
import { Autocomplete } from '@/components/ui/v2/Autocomplete';
|
||||
import { callAll } from '@/utils/callAll';
|
||||
import type { ForwardedRef } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
import type { FieldValues, UseControllerProps } from 'react-hook-form';
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { CheckboxProps } from '@/ui/v2/Checkbox';
|
||||
import { Checkbox } from '@/ui/v2/Checkbox';
|
||||
import { callAll } from '@/utils/common/callAll';
|
||||
import type { CheckboxProps } from '@/components/ui/v2/Checkbox';
|
||||
import { Checkbox } from '@/components/ui/v2/Checkbox';
|
||||
import { callAll } from '@/utils/callAll';
|
||||
import type { ForwardedRef } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
import type { FieldValues, UseControllerProps } from 'react-hook-form';
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { SelectProps } from '@/ui/v2/Select';
|
||||
import { Select } from '@/ui/v2/Select';
|
||||
import type { SelectProps } from '@/components/ui/v2/Select';
|
||||
import { Select } from '@/components/ui/v2/Select';
|
||||
import type { ForwardedRef } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
import type { FieldValues, UseControllerProps } from 'react-hook-form';
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { SwitchProps } from '@/ui/v2/Switch';
|
||||
import { Switch } from '@/ui/v2/Switch';
|
||||
import type { SwitchProps } from '@/components/ui/v2/Switch';
|
||||
import { Switch } from '@/components/ui/v2/Switch';
|
||||
import type { ForwardedRef } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
import { useController, useFormContext } from 'react-hook-form';
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Option } from '@/ui/v2/Option';
|
||||
import { Select } from '@/ui/v2/Select';
|
||||
import { Option } from '@/components/ui/v2/Option';
|
||||
import { Select } from '@/components/ui/v2/Select';
|
||||
import { useGetCountriesQuery } from '@/utils/__generated__/graphql';
|
||||
|
||||
export type CountrySelectorProps = {
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import type { KeyboardEvent } from 'react';
|
||||
import { useRef } from 'react';
|
||||
import { useFormContext } from 'react-hook-form';
|
||||
@@ -1,6 +1,6 @@
|
||||
import { ActivityIndicator } from '@/ui/v2/ActivityIndicator';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { ActivityIndicator } from '@/components/ui/v2/ActivityIndicator';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface FormActivityIndicatorProps extends BoxProps {}
|
||||
@@ -1,2 +0,0 @@
|
||||
export * from './Resource';
|
||||
export { default as Resource } from './Resource';
|
||||
@@ -1 +0,0 @@
|
||||
export { default as Sidebar } from './Sidebar';
|
||||
@@ -1,11 +1,11 @@
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import { ThemeSwitcher } from '@/components/common/ThemeSwitcher';
|
||||
import { Avatar } from '@/ui/v2/Avatar';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { Divider } from '@/ui/v2/Divider';
|
||||
import { Dropdown, useDropdown } from '@/ui/v2/Dropdown';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { Avatar } from '@/components/ui/v2/Avatar';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { Divider } from '@/components/ui/v2/Divider';
|
||||
import { Dropdown, useDropdown } from '@/components/ui/v2/Dropdown';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useApolloClient } from '@apollo/client';
|
||||
import { useSignOut, useUserData } from '@nhost/nextjs';
|
||||
import getConfig from 'next/config';
|
||||
@@ -1,15 +1,15 @@
|
||||
import { Header } from '@/components/common/Header';
|
||||
import { HighlightedText } from '@/components/common/HighlightedText';
|
||||
import { InviteNotification } from '@/components/common/InviteNotification';
|
||||
import { RetryableErrorBoundary } from '@/components/common/RetryableErrorBoundary';
|
||||
import type { BaseLayoutProps } from '@/components/layout/BaseLayout';
|
||||
import { BaseLayout } from '@/components/layout/BaseLayout';
|
||||
import { Container } from '@/components/layout/Container';
|
||||
import { Header } from '@/components/layout/Header';
|
||||
import { HighlightedText } from '@/components/presentational/HighlightedText';
|
||||
import { RetryableErrorBoundary } from '@/components/presentational/RetryableErrorBoundary';
|
||||
import { ActivityIndicator } from '@/components/ui/v2/ActivityIndicator';
|
||||
import { Link } from '@/components/ui/v2/Link';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useIsHealthy } from '@/features/projects/common/hooks/useIsHealthy';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import { ActivityIndicator } from '@/ui/v2/ActivityIndicator';
|
||||
import { Link } from '@/ui/v2/Link';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { useAuthenticationStatus } from '@nhost/nextjs';
|
||||
import Image from 'next/image';
|
||||
import { useRouter } from 'next/router';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { useTheme } from '@mui/material';
|
||||
import type { NextSeoProps } from 'next-seo';
|
||||
import { NextSeo } from 'next-seo';
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface BreadcrumbsProps extends BoxProps {}
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface ContainerProps extends BoxProps {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import type { IconLinkProps } from '@/components/common/IconLink';
|
||||
import { IconLink } from '@/components/common/IconLink';
|
||||
import { Nav } from '@/components/common/Nav';
|
||||
import { Nav } from '@/components/presentational/Nav';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { useProjectRoutes } from '@/features/projects/common/hooks/useProjectRoutes';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { useRouter } from 'next/router';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
@@ -1,16 +1,16 @@
|
||||
import { AccountMenu } from '@/components/common/AccountMenu';
|
||||
import { Breadcrumbs } from '@/components/common/Breadcrumbs';
|
||||
import { FeedbackForm } from '@/components/common/FeedbackForm';
|
||||
import { LocalAccountMenu } from '@/components/common/LocalAccountMenu';
|
||||
import { Logo } from '@/components/common/Logo';
|
||||
import { MobileNav } from '@/components/common/MobileNav';
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import { AccountMenu } from '@/components/layout/AccountMenu';
|
||||
import { Breadcrumbs } from '@/components/layout/Breadcrumbs';
|
||||
import { LocalAccountMenu } from '@/components/layout/LocalAccountMenu';
|
||||
import { MobileNav } from '@/components/layout/MobileNav';
|
||||
import { Logo } from '@/components/presentational/Logo';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Chip } from '@/components/ui/v2/Chip';
|
||||
import { Dropdown } from '@/components/ui/v2/Dropdown';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import { ApplicationStatus } from '@/types/application';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Chip } from '@/ui/v2/Chip';
|
||||
import { Dropdown } from '@/ui/v2/Dropdown';
|
||||
import { useRouter } from 'next/router';
|
||||
import type { DetailedHTMLProps, HTMLProps, PropsWithoutRef } from 'react';
|
||||
import { useEffect } from 'react';
|
||||
@@ -1,11 +1,11 @@
|
||||
import { ThemeSwitcher } from '@/components/common/ThemeSwitcher';
|
||||
import { Avatar } from '@/ui/v2/Avatar';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Divider } from '@/ui/v2/Divider';
|
||||
import { Dropdown } from '@/ui/v2/Dropdown';
|
||||
import { IconButton } from '@/ui/v2/IconButton';
|
||||
import { UserIcon } from '@/ui/v2/icons/UserIcon';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { Avatar } from '@/components/ui/v2/Avatar';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Divider } from '@/components/ui/v2/Divider';
|
||||
import { Dropdown } from '@/components/ui/v2/Dropdown';
|
||||
import { IconButton } from '@/components/ui/v2/IconButton';
|
||||
import { UserIcon } from '@/components/ui/v2/icons/UserIcon';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import getConfig from 'next/config';
|
||||
|
||||
export default function LocalAccountMenu() {
|
||||
@@ -1,21 +1,21 @@
|
||||
import { FeedbackForm } from '@/components/common/FeedbackForm';
|
||||
import { Nav } from '@/components/common/Nav';
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import { ThemeSwitcher } from '@/components/common/ThemeSwitcher';
|
||||
import { Nav } from '@/components/presentational/Nav';
|
||||
import type { ButtonProps } from '@/components/ui/v2/Button';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { Divider } from '@/components/ui/v2/Divider';
|
||||
import { Drawer } from '@/components/ui/v2/Drawer';
|
||||
import { Dropdown } from '@/components/ui/v2/Dropdown';
|
||||
import { MenuIcon } from '@/components/ui/v2/icons/MenuIcon';
|
||||
import { XIcon } from '@/components/ui/v2/icons/XIcon';
|
||||
import { List } from '@/components/ui/v2/List';
|
||||
import type { ListItemButtonProps } from '@/components/ui/v2/ListItem';
|
||||
import { ListItem } from '@/components/ui/v2/ListItem';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import { useNavigationVisible } from '@/features/projects/common/hooks/useNavigationVisible';
|
||||
import { useProjectRoutes } from '@/features/projects/common/hooks/useProjectRoutes';
|
||||
import type { ButtonProps } from '@/ui/v2/Button';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { Divider } from '@/ui/v2/Divider';
|
||||
import { Drawer } from '@/ui/v2/Drawer';
|
||||
import { Dropdown } from '@/ui/v2/Dropdown';
|
||||
import { MenuIcon } from '@/ui/v2/icons/MenuIcon';
|
||||
import { XIcon } from '@/ui/v2/icons/XIcon';
|
||||
import { List } from '@/ui/v2/List';
|
||||
import type { ListItemButtonProps } from '@/ui/v2/ListItem';
|
||||
import { ListItem } from '@/ui/v2/ListItem';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { useApolloClient } from '@apollo/client';
|
||||
import { useSignOut } from '@nhost/nextjs';
|
||||
import getConfig from 'next/config';
|
||||
@@ -1,14 +1,14 @@
|
||||
import { DesktopNav } from '@/components/common/DesktopNav';
|
||||
import { LoadingScreen } from '@/components/common/LoadingScreen';
|
||||
import type { AuthenticatedLayoutProps } from '@/components/layout/AuthenticatedLayout';
|
||||
import { AuthenticatedLayout } from '@/components/layout/AuthenticatedLayout';
|
||||
import { DesktopNav } from '@/components/layout/DesktopNav';
|
||||
import { LoadingScreen } from '@/components/presentational/LoadingScreen';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import { useNavigationVisible } from '@/features/projects/common/hooks/useNavigationVisible';
|
||||
import { useNotFoundRedirect } from '@/features/projects/common/hooks/useNotFoundRedirect';
|
||||
import { useProjectRoutes } from '@/features/projects/common/hooks/useProjectRoutes';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { NextSeo } from 'next-seo';
|
||||
import { useRouter } from 'next/router';
|
||||
import { useEffect } from 'react';
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
import { ControlledSwitch } from '@/components/common/ControlledSwitch';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { ButtonProps } from '@/ui/v2/Button';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import { ArrowSquareOutIcon } from '@/ui/v2/icons/ArrowSquareOutIcon';
|
||||
import { Link } from '@/ui/v2/Link';
|
||||
import type { SwitchProps } from '@/ui/v2/Switch';
|
||||
import { Switch } from '@/ui/v2/Switch';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { ControlledSwitch } from '@/components/form/ControlledSwitch';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import type { ButtonProps } from '@/components/ui/v2/Button';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import { ArrowSquareOutIcon } from '@/components/ui/v2/icons/ArrowSquareOutIcon';
|
||||
import { Link } from '@/components/ui/v2/Link';
|
||||
import type { SwitchProps } from '@/components/ui/v2/Switch';
|
||||
import { Switch } from '@/components/ui/v2/Switch';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import Image from 'next/image';
|
||||
import type { DetailedHTMLProps, HTMLProps, ReactNode } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
@@ -1,9 +1,9 @@
|
||||
import { RetryableErrorBoundary } from '@/components/common/RetryableErrorBoundary';
|
||||
import type { ProjectLayoutProps } from '@/components/layout/ProjectLayout';
|
||||
import { ProjectLayout } from '@/components/layout/ProjectLayout';
|
||||
import type { SettingsSidebarProps } from '@/components/settings/SettingsSidebar';
|
||||
import { SettingsSidebar } from '@/components/settings/SettingsSidebar';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { SettingsSidebarProps } from '@/components/layout/SettingsSidebar';
|
||||
import { SettingsSidebar } from '@/components/layout/SettingsSidebar';
|
||||
import { RetryableErrorBoundary } from '@/components/presentational/RetryableErrorBoundary';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface SettingsLayoutProps extends ProjectLayoutProps {
|
||||
@@ -1,12 +1,12 @@
|
||||
import { NavLink } from '@/components/common/NavLink';
|
||||
import { Backdrop } from '@/components/ui/v2/Backdrop';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { IconButton } from '@/components/ui/v2/IconButton';
|
||||
import { List } from '@/components/ui/v2/List';
|
||||
import type { ListItemButtonProps } from '@/components/ui/v2/ListItem';
|
||||
import { ListItem } from '@/components/ui/v2/ListItem';
|
||||
import { useCurrentWorkspaceAndProject } from '@/features/projects/common/hooks/useCurrentWorkspaceAndProject';
|
||||
import { Backdrop } from '@/ui/v2/Backdrop';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { IconButton } from '@/ui/v2/IconButton';
|
||||
import { List } from '@/ui/v2/List';
|
||||
import type { ListItemButtonProps } from '@/ui/v2/ListItem';
|
||||
import { ListItem } from '@/ui/v2/ListItem';
|
||||
import { isK8SPostgresEnabledInCurrentEnvironment } from '@/utils/helpers';
|
||||
import Image from 'next/image';
|
||||
import { useRouter } from 'next/router';
|
||||
@@ -1,11 +1,11 @@
|
||||
import { LoadingScreen } from '@/components/common/LoadingScreen';
|
||||
import { RetryableErrorBoundary } from '@/components/common/RetryableErrorBoundary';
|
||||
import type { BaseLayoutProps } from '@/components/layout/BaseLayout';
|
||||
import { BaseLayout } from '@/components/layout/BaseLayout';
|
||||
import { Container } from '@/components/layout/Container';
|
||||
import { LoadingScreen } from '@/components/presentational/LoadingScreen';
|
||||
import { RetryableErrorBoundary } from '@/components/presentational/RetryableErrorBoundary';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { ThemeProvider } from '@/components/ui/v2/ThemeProvider';
|
||||
import { useIsPlatform } from '@/features/projects/common/hooks/useIsPlatform';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { ThemeProvider } from '@/ui/v2/ThemeProvider';
|
||||
import GlobalStyles from '@mui/material/GlobalStyles';
|
||||
import { useAuthenticationStatus } from '@nhost/nextjs';
|
||||
import Image from 'next/image';
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { AlertProps } from '@/ui/v2/Alert';
|
||||
import { Alert } from '@/ui/v2/Alert';
|
||||
import type { ButtonProps } from '@/ui/v2/Button';
|
||||
import { Button } from '@/ui/v2/Button';
|
||||
import type { AlertProps } from '@/components/ui/v2/Alert';
|
||||
import { Alert } from '@/components/ui/v2/Alert';
|
||||
import type { ButtonProps } from '@/components/ui/v2/Button';
|
||||
import { Button } from '@/components/ui/v2/Button';
|
||||
import type { DetailedHTMLProps, HTMLProps } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { InlineCodeProps } from '@/components/common/InlineCode';
|
||||
import { InlineCode } from '@/components/common/InlineCode';
|
||||
import type { InlineCodeProps } from '@/components/presentational/InlineCode';
|
||||
import { InlineCode } from '@/components/presentational/InlineCode';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export default function HighlightedText({
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface InlineCodeProps extends BoxProps {}
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { ActivityIndicatorProps } from '@/ui/v2/ActivityIndicator';
|
||||
import { ActivityIndicator } from '@/ui/v2/ActivityIndicator';
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { ActivityIndicatorProps } from '@/components/ui/v2/ActivityIndicator';
|
||||
import { ActivityIndicator } from '@/components/ui/v2/ActivityIndicator';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export interface LoadingScreenProps extends BoxProps {
|
||||
@@ -1,5 +1,5 @@
|
||||
import { useUI } from '@/components/common/UIProvider';
|
||||
import { Alert } from '@/ui/v2/Alert';
|
||||
import { Alert } from '@/components/ui/v2/Alert';
|
||||
|
||||
export default function MaintenanceAlert() {
|
||||
const { maintenanceActive, maintenanceEndDate } = useUI();
|
||||
@@ -1,6 +1,6 @@
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { TextProps } from '@/ui/v2/Text';
|
||||
import { Text } from '@/ui/v2/Text';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import type { TextProps } from '@/components/ui/v2/Text';
|
||||
import { Text } from '@/components/ui/v2/Text';
|
||||
import type { DetailedHTMLProps, ForwardedRef, HTMLProps } from 'react';
|
||||
import { forwardRef } from 'react';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { ErrorMessageProps } from '@/components/common/ErrorMessage';
|
||||
import { ErrorMessage } from '@/components/common/ErrorMessage';
|
||||
import type { ErrorMessageProps } from '@/components/presentational/ErrorMessage';
|
||||
import { ErrorMessage } from '@/components/presentational/ErrorMessage';
|
||||
import type { PropsWithChildren } from 'react';
|
||||
import type {
|
||||
ErrorBoundaryPropsWithRender,
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Chip } from '@/components/ui/v2/Chip';
|
||||
import { ApplicationStatus } from '@/types/application';
|
||||
import { Chip } from '@/ui/v2/Chip';
|
||||
|
||||
export interface StateBadgeProps {
|
||||
/**
|
||||
@@ -1,4 +1,4 @@
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export type DeploymentStatus =
|
||||
13
dashboard/src/components/ui/README.md
Normal file
13
dashboard/src/components/ui/README.md
Normal file
@@ -0,0 +1,13 @@
|
||||
# UI components
|
||||
|
||||
This directory contains all the low-level UI components that are used in the
|
||||
dashboard. These components are only responsible for rendering the UI and
|
||||
should not contain any business logic.
|
||||
|
||||
## Versioning
|
||||
|
||||
- `v1`: This folder contains old UI components that are still used in the
|
||||
dashboard. These components are deprecated and should not be used in new
|
||||
code.
|
||||
|
||||
- `v2`: This folder contains new UI components that are used in the dashboard. These are built on top of the [Material UI](https://mui.com/) library and shouldn't contain any Tailwind CSS classes.
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { BoxProps } from '@/ui/v2/Box';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import type { BoxProps } from '@/components/ui/v2/Box';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { twMerge } from 'tailwind-merge';
|
||||
|
||||
export type AvatarProps = Pick<BoxProps, 'component'> & {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { ClientOnlyPortal } from '@/ui/v1/ClientOnlyPortal';
|
||||
import { Box } from '@/ui/v2/Box';
|
||||
import { ClientOnlyPortal } from '@/components/ui/v1/ClientOnlyPortal';
|
||||
import { Box } from '@/components/ui/v2/Box';
|
||||
import { Dialog, Transition } from '@headlessui/react';
|
||||
import { alpha, useTheme } from '@mui/material';
|
||||
import clsx from 'clsx';
|
||||
@@ -21,6 +21,9 @@ export interface ModalProps {
|
||||
dialogStyle?: CSSProperties;
|
||||
}
|
||||
|
||||
/**
|
||||
* @deprecated Use the `useDialog()` hook instead.
|
||||
*/
|
||||
export default function Modal({
|
||||
children,
|
||||
Component,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { IconProps } from '@/ui/v2/icons';
|
||||
import { CircularProgress } from '@/ui/v2/icons/CircularProgress';
|
||||
import type { IconProps } from '@/components/ui/v2/icons';
|
||||
import { CircularProgress } from '@/components/ui/v2/icons/CircularProgress';
|
||||
import { styled } from '@mui/material';
|
||||
import type { BoxProps } from '@mui/material/Box';
|
||||
import Box from '@mui/material/Box';
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user