refactor: move modules to packages (#41)

* refactor: move modules to `packages`

* chore: remove .vscode
This commit is contained in:
richard 2025-01-25 13:12:50 -08:00 • committed by GitHub
parent 89f1dfeaa5
commit 8eddd182d3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
49 changed files with 152 additions and 174 deletions

View file

@ -15,12 +15,14 @@ jobs:
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: pnpm/action-setup@v4 - uses: pnpm/action-setup@v4
with:
run_install: true
- name: Install Rokit - name: Install Rokit
uses: CompeyDev/setup-rokit@v0.1.2 uses: CompeyDev/setup-rokit@v0.1.2
- name: Install dependencies - name: Install Wally dependencies
run: pnpm install run: pnpm wally
- name: Check code quality - name: Check code quality
run: pnpm check run: pnpm check

12
.gitignore vendored
View file

@ -1,11 +1,11 @@
/.vscode
/node_modules /node_modules
/build /build
/devpackages /modules/DevPackages
/packages /packages/**/node_modules
/src/**/node_modules /packages/**/wally.lock
/src/**/wally.lock /packages/**/README.md
/src/**/README.md /packages/**/LICENSE.md
/src/**/LICENSE.md
/sourcemap.json /sourcemap.json
*.tsbuildinfo *.tsbuildinfo
*.tgz *.tgz

View file

@ -1,3 +0,0 @@
{
"luau-lsp.types.definitionFiles": ["bin/testez.d.luau"]
}

View file

@ -1,5 +1,5 @@
mkdir build mkdir build
rojo build src/charm -o build/charm.rbxm rojo build packages/charm -o build/charm.rbxm
rojo build src/charm-sync -o build/charm-sync.rbxm rojo build packages/charm-sync -o build/charm-sync.rbxm
rojo build src/react -o build/react-charm.rbxm rojo build packages/react -o build/react-charm.rbxm
rojo build src/vide -o build/vide-charm.rbxm rojo build packages/vide -o build/vide-charm.rbxm

View file

@ -18,9 +18,9 @@ check() {
stylua --check $1 stylua --check $1
} }
eslint src eslint packages
for i in src/*/src; do for i in packages/*/src; do
check $i check $i
done done

4
bin/install.sh Normal file
View file

@ -0,0 +1,4 @@
cd modules
wally install
cd ..
rojo sourcemap --output sourcemap.json

View file

@ -5,18 +5,18 @@
"ReplicatedStorage": { "ReplicatedStorage": {
"$className": "ReplicatedStorage", "$className": "ReplicatedStorage",
"DevPackages": { "DevPackages": {
"$path": "DevPackages", "$path": "modules/DevPackages",
"Charm": { "Charm": {
"$path": "src/charm" "$path": "packages/charm"
}, },
"CharmSync": { "CharmSync": {
"$path": "src/charm-sync" "$path": "packages/charm-sync"
}, },
"ReactCharm": { "ReactCharm": {
"$path": "src/react" "$path": "packages/react"
}, },
"VideCharm": { "VideCharm": {
"$path": "src/vide" "$path": "packages/vide"
} }
} }
}, },

103
modules/wally.lock Normal file
View file

@ -0,0 +1,103 @@
# This file is automatically @generated by Wally.
# It is not intended for manual editing.
registry = "test"
[[package]]
name = "centau/vide"
version = "0.3.1"
dependencies = []
[[package]]
name = "jsdotlua/boolean"
version = "1.2.7"
dependencies = [["number", "jsdotlua/number@1.2.7"]]
[[package]]
name = "jsdotlua/collections"
version = "1.2.7"
dependencies = [["es7-types", "jsdotlua/es7-types@1.2.7"], ["instance-of", "jsdotlua/instance-of@1.2.7"]]
[[package]]
name = "jsdotlua/console"
version = "1.2.7"
dependencies = [["collections", "jsdotlua/collections@1.2.7"]]
[[package]]
name = "jsdotlua/es7-types"
version = "1.2.7"
dependencies = []
[[package]]
name = "jsdotlua/instance-of"
version = "1.2.7"
dependencies = []
[[package]]
name = "jsdotlua/luau-polyfill"
version = "1.2.7"
dependencies = [["boolean", "jsdotlua/boolean@1.2.7"], ["collections", "jsdotlua/collections@1.2.7"], ["console", "jsdotlua/console@1.2.7"], ["es7-types", "jsdotlua/es7-types@1.2.7"], ["instance-of", "jsdotlua/instance-of@1.2.7"], ["math", "jsdotlua/math@1.2.7"], ["number", "jsdotlua/number@1.2.7"], ["string", "jsdotlua/string@1.2.7"], ["symbol-luau", "jsdotlua/symbol-luau@1.0.1"], ["timers", "jsdotlua/timers@1.2.7"]]
[[package]]
name = "jsdotlua/math"
version = "1.2.7"
dependencies = []
[[package]]
name = "jsdotlua/number"
version = "1.2.7"
dependencies = []
[[package]]
name = "jsdotlua/promise"
version = "3.5.2"
dependencies = []
[[package]]
name = "jsdotlua/react"
version = "17.2.1"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.7"], ["shared", "jsdotlua/shared@17.2.1"]]
[[package]]
name = "jsdotlua/react-reconciler"
version = "17.2.1"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.7"], ["promise", "jsdotlua/promise@3.5.2"], ["react", "jsdotlua/react@17.2.1"], ["scheduler", "jsdotlua/scheduler@17.2.1"], ["shared", "jsdotlua/shared@17.2.1"]]
[[package]]
name = "jsdotlua/react-roblox"
version = "17.2.1"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.7"], ["react", "jsdotlua/react@17.2.1"], ["react-reconciler", "jsdotlua/react-reconciler@17.2.1"], ["scheduler", "jsdotlua/scheduler@17.2.1"], ["shared", "jsdotlua/shared@17.2.1"]]
[[package]]
name = "jsdotlua/scheduler"
version = "17.2.1"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.7"], ["shared", "jsdotlua/shared@17.2.1"]]
[[package]]
name = "jsdotlua/shared"
version = "17.2.1"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.7"]]
[[package]]
name = "jsdotlua/string"
version = "1.2.7"
dependencies = [["es7-types", "jsdotlua/es7-types@1.2.7"], ["number", "jsdotlua/number@1.2.7"]]
[[package]]
name = "jsdotlua/symbol-luau"
version = "1.0.1"
dependencies = []
[[package]]
name = "jsdotlua/timers"
version = "1.2.7"
dependencies = [["collections", "jsdotlua/collections@1.2.7"]]
[[package]]
name = "littensy/charm"
version = "0.1.0"
dependencies = [["React", "jsdotlua/react@17.2.1"], ["ReactRoblox", "jsdotlua/react-roblox@17.2.1"], ["TestEZ", "roblox/testez@0.4.1"], ["Vide", "centau/vide@0.3.1"]]
[[package]]
name = "roblox/testez"
version = "0.4.1"
dependencies = []

View file

@ -3,7 +3,7 @@
"scripts": { "scripts": {
"build": "sh bin/build.sh", "build": "sh bin/build.sh",
"check": "sh bin/check.sh", "check": "sh bin/check.sh",
"wally": "wally install && rojo sourcemap --output sourcemap.json", "wally": "sh bin/install.sh",
"publish:npm": "pnpm publish -r --access public", "publish:npm": "pnpm publish -r --access public",
"publish:wally": "pnpm -r --workspace-concurrency 1 publish:wally" "publish:wally": "pnpm -r --workspace-concurrency 1 publish:wally"
}, },
@ -20,5 +20,5 @@
"roblox-ts": "^3.0.0", "roblox-ts": "^3.0.0",
"typescript": "~5.5.4" "typescript": "~5.5.4"
}, },
"packageManager": "pnpm@9.12.1" "packageManager": "pnpm@9.15.4"
} }

58
pnpm-lock.yaml generated
View file

@ -42,57 +42,31 @@ importers:
specifier: ~5.5.4 specifier: ~5.5.4
version: 5.5.4 version: 5.5.4
modules/charm: {} packages/charm: {}
modules/charm-sync: packages/charm-sync:
dependencies: dependencies:
'@rbxts/charm': '@rbxts/charm':
specifier: workspace:* specifier: workspace:*
version: link:../charm version: link:../charm
modules/react: packages/react:
dependencies: dependencies:
'@rbxts/charm': '@rbxts/charm':
specifier: workspace:* specifier: workspace:*
version: link:../charm version: link:../charm
'@rbxts/react': '@rbxts/react':
specifier: '*' specifier: '*'
version: 17.2.1 version: 17.2.3
modules/vide: packages/vide:
dependencies: dependencies:
'@rbxts/charm': '@rbxts/charm':
specifier: workspace:* specifier: workspace:*
version: link:../charm version: link:../charm
'@rbxts/vide': '@rbxts/vide':
specifier: '*' specifier: '*'
version: 0.4.6 version: 0.5.3
src/charm: {}
src/charm-sync:
dependencies:
'@rbxts/charm':
specifier: workspace:*
version: link:../charm
src/react:
dependencies:
'@rbxts/charm':
specifier: workspace:*
version: link:../charm
'@rbxts/react':
specifier: '*'
version: 17.2.1
src/vide:
dependencies:
'@rbxts/charm':
specifier: workspace:*
version: link:../charm
'@rbxts/vide':
specifier: '*'
version: 0.4.6
packages: packages:
@ -146,17 +120,17 @@ packages:
'@rbxts/compiler-types@3.0.0-types.0': '@rbxts/compiler-types@3.0.0-types.0':
resolution: {integrity: sha512-VGOHJPoL7+56NTatMGqQj3K7xWuzEV+aP4QD5vZiHu+bcff3kiTmtoadaF6NkJrmwfFAvbsd4Dg764ZjWNceag==} resolution: {integrity: sha512-VGOHJPoL7+56NTatMGqQj3K7xWuzEV+aP4QD5vZiHu+bcff3kiTmtoadaF6NkJrmwfFAvbsd4Dg764ZjWNceag==}
'@rbxts/react-vendor@17.2.1': '@rbxts/react-vendor@17.2.3':
resolution: {integrity: sha512-7DxFweCbhhso4M4tl1pO7Kil9SZrvOl1SoZ4lnwUfoxdHvSmWgeKgaUqd+ZS3/u1E8kRraqGQ56Q8zjUEEUzlA==} resolution: {integrity: sha512-dWCiVelvTK6h920geaFH/OQ5zoWHyhyqyfH51hKx2/iVZ6OiiyNVJ5UqEIkJMG4HsJ8JnkTORizV3+MtQ41BtA==}
'@rbxts/react@17.2.1': '@rbxts/react@17.2.3':
resolution: {integrity: sha512-iu0RsVvfHroI7l+QXjwE0FiWV2rXoKMxuznDZ8vnx2BsFqrPnCqFjXuNeGYZwibibZC6jbyq7uKl+/8cz7XlsA==} resolution: {integrity: sha512-IoOB8e2W8MxT0MKWFf0Ls0vT61ImYL6ctHQgz5+oazma6z8bqFtJjgPxOuy6jmMSuyfBe7rYp/muou0kIjZT+Q==}
'@rbxts/types@1.0.811': '@rbxts/types@1.0.811':
resolution: {integrity: sha512-MPhs5lxzxvDqie34Y9FzJ1R+k+33jjrkj03agX2y2WzBKyGmO0rD/kPuUaKXQgEiACXuk36C5FxUTYgkKJPbvA==} resolution: {integrity: sha512-MPhs5lxzxvDqie34Y9FzJ1R+k+33jjrkj03agX2y2WzBKyGmO0rD/kPuUaKXQgEiACXuk36C5FxUTYgkKJPbvA==}
'@rbxts/vide@0.4.6': '@rbxts/vide@0.5.3':
resolution: {integrity: sha512-xYtvCS05nGq1YU7fyQVmp4z1CcvuOR+VKpKj/Y7lFPvKobQ3oHTQEzZiJFEMZ+iSeHxwZhwpzVjrP+6+e2EoQw==} resolution: {integrity: sha512-evaZbBRZzaqU8ibddTMaomb30pmW5OhWTT7ba1PLSA/iGBCid0eOF6BX1o0ArKPyMFnNj6pMM2yMTQzL5b9cIA==}
'@roblox-ts/luau-ast@2.0.0': '@roblox-ts/luau-ast@2.0.0':
resolution: {integrity: sha512-cmMi093IdwBOLVxwuordhM8AmtbyTIyRpsTbB0D/JauidW4SXsQRQowSwWjHo4QP0DRJBXvOIlxtqEQi50uNzQ==} resolution: {integrity: sha512-cmMi093IdwBOLVxwuordhM8AmtbyTIyRpsTbB0D/JauidW4SXsQRQowSwWjHo4QP0DRJBXvOIlxtqEQi50uNzQ==}
@ -932,15 +906,15 @@ snapshots:
'@rbxts/compiler-types@3.0.0-types.0': {} '@rbxts/compiler-types@3.0.0-types.0': {}
'@rbxts/react-vendor@17.2.1': {} '@rbxts/react-vendor@17.2.3': {}
'@rbxts/react@17.2.1': '@rbxts/react@17.2.3':
dependencies: dependencies:
'@rbxts/react-vendor': 17.2.1 '@rbxts/react-vendor': 17.2.3
'@rbxts/types@1.0.811': {} '@rbxts/types@1.0.811': {}
'@rbxts/vide@0.4.6': {} '@rbxts/vide@0.5.3': {}
'@roblox-ts/luau-ast@2.0.0': {} '@roblox-ts/luau-ast@2.0.0': {}

View file

@ -1,2 +1,2 @@
packages: packages:
- src/* - packages/*

View file

@ -6,7 +6,7 @@
[tools] [tools]
wally = "UpliftGames/wally@0.3.2" wally = "UpliftGames/wally@0.3.2"
rojo = "rojo-rbx/rojo@7.4.4" rojo = "rojo-rbx/rojo@7.4.4"
wally-package-types = "JohnnyMorganz/wally-package-types@1.3.2" wally-package-types = "JohnnyMorganz/wally-package-types@1.4.2"
stylua = "johnnymorganz/stylua@0.20.0" stylua = "johnnymorganz/stylua@2.0.2"
selene = "Kampfkarren/selene@0.27.1" selene = "Kampfkarren/selene@0.28.0"
luau-lsp = "johnnymorganz/luau-lsp@1.32.4" luau-lsp = "johnnymorganz/luau-lsp@1.38.1"

1
stylua.toml Normal file
View file

@ -0,0 +1 @@
syntax = "Luau"

View file

@ -1,103 +0,0 @@
# This file is automatically @generated by Wally.
# It is not intended for manual editing.
registry = "test"
[[package]]
name = "centau/vide"
version = "0.3.1"
dependencies = []
[[package]]
name = "jsdotlua/boolean"
version = "1.2.6"
dependencies = [["number", "jsdotlua/number@1.2.6"]]
[[package]]
name = "jsdotlua/collections"
version = "1.2.6"
dependencies = [["es7-types", "jsdotlua/es7-types@1.2.6"], ["instance-of", "jsdotlua/instance-of@1.2.6"]]
[[package]]
name = "jsdotlua/console"
version = "1.2.6"
dependencies = [["collections", "jsdotlua/collections@1.2.6"]]
[[package]]
name = "jsdotlua/es7-types"
version = "1.2.6"
dependencies = []
[[package]]
name = "jsdotlua/instance-of"
version = "1.2.6"
dependencies = []
[[package]]
name = "jsdotlua/luau-polyfill"
version = "1.2.6"
dependencies = [["boolean", "jsdotlua/boolean@1.2.6"], ["collections", "jsdotlua/collections@1.2.6"], ["console", "jsdotlua/console@1.2.6"], ["es7-types", "jsdotlua/es7-types@1.2.6"], ["instance-of", "jsdotlua/instance-of@1.2.6"], ["math", "jsdotlua/math@1.2.6"], ["number", "jsdotlua/number@1.2.6"], ["string", "jsdotlua/string@1.2.6"], ["symbol-luau", "jsdotlua/symbol-luau@1.0.1"], ["timers", "jsdotlua/timers@1.2.6"]]
[[package]]
name = "jsdotlua/math"
version = "1.2.6"
dependencies = []
[[package]]
name = "jsdotlua/number"
version = "1.2.6"
dependencies = []
[[package]]
name = "jsdotlua/promise"
version = "3.5.2"
dependencies = []
[[package]]
name = "jsdotlua/react"
version = "17.2.0"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.6"], ["shared", "jsdotlua/shared@17.2.0"]]
[[package]]
name = "jsdotlua/react-reconciler"
version = "17.2.0"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.6"], ["promise", "jsdotlua/promise@3.5.2"], ["react", "jsdotlua/react@17.2.0"], ["scheduler", "jsdotlua/scheduler@17.2.0"], ["shared", "jsdotlua/shared@17.2.0"]]
[[package]]
name = "jsdotlua/react-roblox"
version = "17.2.0"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.6"], ["react", "jsdotlua/react@17.2.0"], ["react-reconciler", "jsdotlua/react-reconciler@17.2.0"], ["scheduler", "jsdotlua/scheduler@17.2.0"], ["shared", "jsdotlua/shared@17.2.0"]]
[[package]]
name = "jsdotlua/scheduler"
version = "17.2.0"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.6"], ["shared", "jsdotlua/shared@17.2.0"]]
[[package]]
name = "jsdotlua/shared"
version = "17.2.0"
dependencies = [["luau-polyfill", "jsdotlua/luau-polyfill@1.2.6"]]
[[package]]
name = "jsdotlua/string"
version = "1.2.6"
dependencies = [["es7-types", "jsdotlua/es7-types@1.2.6"], ["number", "jsdotlua/number@1.2.6"]]
[[package]]
name = "jsdotlua/symbol-luau"
version = "1.0.1"
dependencies = []
[[package]]
name = "jsdotlua/timers"
version = "1.2.6"
dependencies = [["collections", "jsdotlua/collections@1.2.6"]]
[[package]]
name = "littensy/charm"
version = "0.1.0"
dependencies = [["React", "jsdotlua/react@17.2.0"], ["ReactRoblox", "jsdotlua/react-roblox@17.2.0"], ["TestEZ", "roblox/testez@0.4.1"], ["Vide", "centau/vide@0.3.1"]]
[[package]]
name = "roblox/testez"
version = "0.4.1"
dependencies = []