Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
7eadcc5
feat: add base structure
Ivanruii Apr 30, 2026
e5abe47
chore: remove unused canvas index file
Ivanruii Apr 30, 2026
178beaf
chore: update package-lock.json
Ivanruii Apr 30, 2026
82afc37
feat: add file system access types reference
Ivanruii Apr 30, 2026
7150d7e
fix: remove unused parentId from flat option mapping
Ivanruii Apr 30, 2026
d81133e
fix: remove unused parentId from mapFlatOptionsToNestedSelectOptions
Ivanruii Apr 30, 2026
e159611
refactor: reorder imports and remove unused parentId from flat option…
Ivanruii Apr 30, 2026
b9f466f
fix: simplify selectedOptionId assignment in updateFocusBySelectedOption
Ivanruii Apr 30, 2026
6d8aba6
fix: remove unused properties from mapInternalSelectOptionToOption
Ivanruii Apr 30, 2026
da0423c
fix: simplify handleChange function in Dropdown component
Ivanruii Apr 30, 2026
c293914
fix: simplify inputFieldProps assignment in CheckboxFormik component
Ivanruii Apr 30, 2026
c39b051
fix: simplify inputFieldProps assignment in InputFormik component
Ivanruii Apr 30, 2026
4e3b87b
fix: simplify conditional assignments and improve error handling in v…
Ivanruii Apr 30, 2026
1ea8de2
fix: improve readability of handleEscapeKeyDown function
Ivanruii Apr 30, 2026
7a60f08
fix: simplify handleChange function in TablePkPicker component
Ivanruii Apr 30, 2026
de00e76
fix: simplify error handling in saveFileModern function
Ivanruii Apr 30, 2026
58a136c
fix: update import path for autosave functions to improve module orga…
Ivanruii Apr 30, 2026
5655ea2
fix: refactor updateTablePosition function for improved readability a…
Ivanruii Apr 30, 2026
baa255c
fix: simplify error handling in saveThemePreferenceToLocalStorage fun…
Ivanruii Apr 30, 2026
1f3aaa0
fix: reorganize imports in canvas.pod.tsx for improved clarity and st…
Ivanruii Apr 30, 2026
8e21bd8
fix: add comment to clarify import cycle handling in field-accessible…
Ivanruii Apr 30, 2026
f5e35b1
fix: add comment to clarify import cycle handling in field-list-acces…
Ivanruii Apr 30, 2026
67013cd
chore(edit-table): mark FK as intentionally unused in destructure
Ivanruii Apr 30, 2026
810dcc6
chore(edit-table.mapper): mark FK as intentionally unused in destructure
Ivanruii Apr 30, 2026
380f34f
fix: add missing lint disable comment for import cycle in field.tsx
Ivanruii Apr 30, 2026
d15625d
fix: add missing lint disable comment for import cycle in nested-fiel…
Ivanruii Apr 30, 2026
3b7226c
fix: simplify error handling in JSON parsing
Ivanruii Apr 30, 2026
775d392
feat: restructure export button logic and add table geometry helpers
Ivanruii Apr 30, 2026
5c00814
chore(changeset): initial changeset for mongo-modeler
Ivanruii Apr 30, 2026
8d39887
refactor: rename unit-tests job to ci in CI workflow
Ivanruii Apr 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
15 changes: 15 additions & 0 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"$schema": "https://unpkg.com/@changesets/config@3.1.1/schema.json",
"changelog": "@changesets/cli/changelog",
"commit": false,
"fixed": [],
"linked": [],
"access": "public",
"baseBranch": "vnext",
"updateInternalDependencies": "patch",
"ignore": [],
"privatePackages": {
"version": false,
"tag": false
}
}
5 changes: 5 additions & 0 deletions .changeset/pink-pots-carry.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'mongo-modeler': minor
---

Initial Mongo Modeler VSCode extension scaffolding
18 changes: 0 additions & 18 deletions .eslintrc.cjs

This file was deleted.

1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* text=auto eol=lf
25 changes: 25 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
version: 2
updates:
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'weekly'
open-pull-requests-limit: 10
ignore:
- dependency-name: '@types/node'
update-types:
- 'version-update:semver-major'
groups:
minor-and-patch:
update-types:
- 'minor'
- 'patch'

- package-ecosystem: 'github-actions'
directory: '/'
schedule:
interval: 'weekly'
groups:
github-actions:
patterns:
- '*'
24 changes: 16 additions & 8 deletions .github/workflows/publish-app.yml → .github/workflows/cd.yml
Original file line number Diff line number Diff line change
@@ -1,31 +1,39 @@
name: Publish app
name: CD Workflow

on:
push:
branches:
- main

jobs:
deploy-react-app:
cd:
environment:
name: 'Website'
url: https://www.mongo-modeler.com
runs-on: ubuntu-latest
name: Deploy Mongo Modeler
steps:
- uses: actions/checkout@v3
- name: Checkout repository
uses: actions/checkout@v6

- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install
run: npm ci

- name: Build
run: npm run build
run: node --run build

- name: Deploy
uses: Azure/static-web-apps-deploy@v1
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_MANGO_GLACIER_093E76303 }}
repo_token: ${{ secrets.GITHUB_TOKEN }}
action: 'upload'
app_location: 'dist'
output_location: 'dist'
app_location: 'apps/web/dist'
skip_app_build: true
skip_api_build: true
env:
NODE_VERSION: 18.16.0
74 changes: 55 additions & 19 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: CI workflow
name: CI Workflow

on: pull_request

Expand All @@ -7,43 +7,79 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Use Node.js 20
uses: actions/setup-node@v4
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version: "20"
cache: "npm"
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Check TypeScript Types
run: npm run tsc-check
- name: Install test browsers
run: node --run install:test-browsers

- name: Lint
run: node --run lint

- name: Check TypeScript types
run: node --run check-types

- name: Build
run: node --run build

- name: Run tests
run: npm test
run: node --run test

e2e-tests:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Use Node.js 20
uses: actions/setup-node@v4
- name: Use Node.js
uses: actions/setup-node@v6
with:
node-version: "20"
cache: "npm"
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
run: npm ci

- name: Build
run: npm run build
- name: Install test browsers
run: node --run install:test-browsers

- name: Check TypeScript Types
run: npm run tsc-check
- name: Build
run: node --run build

- name: Run E2E tests
run: npm run ci:e2e
run: node --run ci:e2e

changeset-check:
if: github.event.pull_request.base.ref != 'main'
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Check for changeset
run: |
BASE=${{ github.event.pull_request.base.sha }}
HEAD=${{ github.event.pull_request.head.sha }}

PACKAGES_CHANGED=$(git diff --name-only "$BASE" "$HEAD" -- packages/ | head -1)

if [ -n "$PACKAGES_CHANGED" ]; then
CHANGESET_ADDED=$(git diff --name-only "$BASE" "$HEAD" -- '.changeset/*.md' | head -1)
if [ -z "$CHANGESET_ADDED" ]; then
echo "::error::This PR modifies packages/ but has no changeset. Run 'node --run changeset' to add one."
exit 1
fi
echo "Changeset found for package changes."
else
echo "No package changes detected, skipping changeset check."
fi
33 changes: 33 additions & 0 deletions .github/workflows/pkg-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: VSCode Extension Publish

on:
workflow_dispatch:
push:
branches: [main]
paths:
- 'packages/vscode-extension/**'
- '.changeset/**'

concurrency: ${{ github.workflow }}-${{ github.ref }}

permissions:
contents: write

jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'

- run: npm ci

- run: node --run build

- name: Publish VS Code extension
run: node --run publish:vscode
env:
VSCE_PAT: ${{ secrets.VSCE_TOKEN }}
35 changes: 35 additions & 0 deletions .github/workflows/pkg-version.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Package Versioning

on:
workflow_dispatch:
push:
branches: [vnext]
paths:
- 'packages/**'
- '.changeset/**'

concurrency: ${{ github.workflow }}-${{ github.ref }}

permissions:
contents: write
pull-requests: write

jobs:
version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6

- uses: actions/setup-node@v6
with:
node-version-file: '.nvmrc'

- run: npm ci

- name: Create Version PR
uses: changesets/action@v1
with:
title: 'chore: version packages'
commit: 'chore: version packages'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
33 changes: 26 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
# Dependencies
node_modules

# Build outputs
dist
dist-ssr

# Turbo
.turbo

# Test outputs
coverage
playwright-report/
test-results/
blob-report/
playwright/.cache/

# Logs
logs
*.log
Expand All @@ -7,22 +24,24 @@ yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
dist
dist-ssr
# Local env files
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
!.vscode/settings.json
!.vscode/launch.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/

# Vite
.vite

# Temporary LICENSE copies (created by publish scripts)
packages/*/LICENSE
2 changes: 1 addition & 1 deletion .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"


npx oxlint .
npx lint-staged
1 change: 1 addition & 0 deletions .husky/pre-push
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node --run check-types
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ignore-scripts=true
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
24
4 changes: 3 additions & 1 deletion .prettierignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
node_modules
dist
dist
coverage
.turbo
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading