scrabble-solver 2.15.25 → 2.16.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/.github/workflows/build.yml +3 -5
  2. package/.github/workflows/{npx.yml → bunx.yml} +7 -11
  3. package/.github/workflows/deploy.yml +2 -2
  4. package/.github/workflows/{cypress.yml → e2e-tests.yml} +7 -7
  5. package/.github/workflows/oxfmt.yml +3 -5
  6. package/.github/workflows/oxlint.yml +4 -6
  7. package/.github/workflows/{jest.yml → unit-tests.yml} +6 -8
  8. package/.nx/workspace-data/d/server-process.json +5 -0
  9. package/.nx/workspace-data/file-map.json +467 -455
  10. package/.nx/workspace-data/lockfile-dependencies.hash +1 -1
  11. package/.nx/workspace-data/lockfile-nodes.hash +1 -1
  12. package/.nx/workspace-data/nx_files.nxt +0 -0
  13. package/.nx/workspace-data/parsed-lock-file.dependencies.json +5301 -11011
  14. package/.nx/workspace-data/parsed-lock-file.nodes.json +16259 -7681
  15. package/.nx/workspace-data/project-graph.json +25619 -19944
  16. package/.nx/workspace-data/source-maps.json +96 -0
  17. package/.oxlintrc.json +0 -2
  18. package/CLAUDE.md +120 -0
  19. package/README.md +26 -20
  20. package/bin/scrabble-solver.js +1 -1
  21. package/bump-version.js +4 -4
  22. package/bun-test-globals.d.ts +1 -0
  23. package/bun.lock +3984 -0
  24. package/bun.test.preload.ts +21 -0
  25. package/bunfig.toml +2 -0
  26. package/lerna.json +1 -1
  27. package/package.json +19 -21
  28. package/packages/configs/package.json +3 -3
  29. package/packages/constants/package.json +1 -1
  30. package/packages/dictionaries/package.json +4 -4
  31. package/packages/logger/package.json +1 -1
  32. package/packages/scrabble-solver/.next/BUILD_ID +1 -1
  33. package/packages/scrabble-solver/.next/build-manifest.json +5 -5
  34. package/packages/scrabble-solver/.next/cache/.previewinfo +1 -1
  35. package/packages/scrabble-solver/.next/cache/.rscinfo +1 -1
  36. package/packages/scrabble-solver/.next/cache/.tsbuildinfo +1 -1
  37. package/packages/scrabble-solver/.next/cache/webpack/client-production/0.pack +0 -0
  38. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack +0 -0
  39. package/packages/scrabble-solver/.next/cache/webpack/client-production/index.pack.old +0 -0
  40. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack +0 -0
  41. package/packages/scrabble-solver/.next/cache/webpack/edge-server-production/index.pack.old +0 -0
  42. package/packages/scrabble-solver/.next/cache/webpack/server-production/0.pack +0 -0
  43. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack +0 -0
  44. package/packages/scrabble-solver/.next/cache/webpack/server-production/index.pack.old +0 -0
  45. package/packages/scrabble-solver/.next/prerender-manifest.json +4 -4
  46. package/packages/scrabble-solver/.next/required-server-files.js +2 -1
  47. package/packages/scrabble-solver/.next/required-server-files.json +2 -1
  48. package/packages/scrabble-solver/.next/routes-manifest.json +1 -1
  49. package/packages/scrabble-solver/.next/server/chunks/712.js +1 -1
  50. package/packages/scrabble-solver/.next/server/middleware-build-manifest.js +1 -1
  51. package/packages/scrabble-solver/.next/server/pages/404.html +1 -1
  52. package/packages/scrabble-solver/.next/server/pages/500.html +1 -1
  53. package/packages/scrabble-solver/.next/server/pages/_app.js.nft.json +1 -1
  54. package/packages/scrabble-solver/.next/server/pages/_error.js.nft.json +1 -1
  55. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale]/[word].js.nft.json +1 -1
  56. package/packages/scrabble-solver/.next/server/pages/api/dictionary/[locale].js.nft.json +1 -1
  57. package/packages/scrabble-solver/.next/server/pages/api/solve.js +1 -1
  58. package/packages/scrabble-solver/.next/server/pages/api/solve.js.nft.json +1 -1
  59. package/packages/scrabble-solver/.next/server/pages/api/verify.js.nft.json +1 -1
  60. package/packages/scrabble-solver/.next/server/pages/api/visit.js.nft.json +1 -1
  61. package/packages/scrabble-solver/.next/server/pages/index.html +1 -1
  62. package/packages/scrabble-solver/.next/server/pages/index.js.nft.json +1 -1
  63. package/packages/scrabble-solver/.next/server/pages/index.json +1 -1
  64. package/packages/scrabble-solver/.next/server/pages/not-found.html +1 -1
  65. package/packages/scrabble-solver/.next/server/webpack-api-runtime.js +1 -1
  66. package/packages/scrabble-solver/.next/static/{FDUqldlsD7FXe6iWhIJmu → YS42EFHDGPCCe3JyeXaNi}/_buildManifest.js +1 -1
  67. package/packages/scrabble-solver/.next/static/chunks/pages/{_app-c0932b8ca24945cb.js → _app-9c9aaea7b6881765.js} +4 -4
  68. package/packages/scrabble-solver/.next/static/chunks/pages/{index-08b3b0a754095919.js → index-e9ea63e97865edcf.js} +1 -1
  69. package/packages/scrabble-solver/.next/static/css/{500cdc9a24075d91.css → 78726ae7cf7a5497.css} +1 -1
  70. package/packages/scrabble-solver/.next/trace +21 -21
  71. package/packages/scrabble-solver/.next/trace-build +1 -1
  72. package/packages/scrabble-solver/README.md +3 -3
  73. package/packages/scrabble-solver/next.config.js +1 -0
  74. package/packages/scrabble-solver/package.json +9 -8
  75. package/packages/scrabble-solver/public/service-worker.js +1 -1
  76. package/packages/scrabble-solver/src/@types/scss.d.ts +5 -0
  77. package/packages/scrabble-solver/src/components/Board/Board.module.scss +2 -2
  78. package/packages/scrabble-solver/src/components/Board/components/Actions/Actions.module.scss +1 -1
  79. package/packages/scrabble-solver/src/components/Board/components/Cell/Cell.module.scss +26 -6
  80. package/packages/scrabble-solver/src/components/Board/components/InputPrompt/InputPrompt.module.scss +1 -1
  81. package/packages/scrabble-solver/src/components/Button/Button.module.scss +1 -1
  82. package/packages/scrabble-solver/src/components/Dictionary/Dictionary.module.scss +1 -1
  83. package/packages/scrabble-solver/src/components/DictionaryInput/DictionaryInput.module.scss +1 -1
  84. package/packages/scrabble-solver/src/components/IconButton/IconButton.module.scss +1 -1
  85. package/packages/scrabble-solver/src/components/Loading/Loading.module.scss +1 -1
  86. package/packages/scrabble-solver/src/components/Modal/Modal.module.scss +1 -1
  87. package/packages/scrabble-solver/src/components/NotFound/NotFound.module.scss +1 -1
  88. package/packages/scrabble-solver/src/components/PlainTiles/PlainTiles.module.scss +1 -1
  89. package/packages/scrabble-solver/src/components/Rack/Rack.module.scss +11 -6
  90. package/packages/scrabble-solver/src/components/Rack/components/InputPrompt/InputPrompt.module.scss +1 -1
  91. package/packages/scrabble-solver/src/components/Rack/components/RackTile/RackTile.module.scss +1 -1
  92. package/packages/scrabble-solver/src/components/Radio/Radio.module.scss +1 -1
  93. package/packages/scrabble-solver/src/components/Results/Results.module.scss +1 -1
  94. package/packages/scrabble-solver/src/components/ResultsInput/ResultsInput.module.scss +1 -1
  95. package/packages/scrabble-solver/src/components/Solver/Solver.module.scss +1 -1
  96. package/packages/scrabble-solver/src/components/Solver/components/InsertButton/InsertButton.module.scss +1 -1
  97. package/packages/scrabble-solver/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.module.scss +1 -1
  98. package/packages/scrabble-solver/src/components/Spinner/Spinner.module.scss +1 -1
  99. package/packages/scrabble-solver/src/components/Tile/Tile.module.scss +1 -1
  100. package/packages/scrabble-solver/src/hooks/useLocalStorage.ts +4 -52
  101. package/packages/scrabble-solver/src/lib/isMac.ts +1 -1
  102. package/packages/scrabble-solver/src/modals/MenuModal/MenuModal.module.scss +1 -1
  103. package/packages/scrabble-solver/src/modals/RemainingTilesModal/components/Character/Character.module.scss +1 -1
  104. package/packages/scrabble-solver/src/modals/ResultsModal/ResultsModal.module.scss +1 -1
  105. package/packages/scrabble-solver/src/modals/SettingsModal/components/LocaleSetting/LocaleSetting.module.scss +1 -1
  106. package/packages/scrabble-solver/src/parameters/index.ts +45 -44
  107. package/packages/scrabble-solver/src/state/localStorage.ts +42 -52
  108. package/packages/scrabble-solver/src/state/settings/initialState.ts +7 -7
  109. package/packages/scrabble-solver/src/styles/_tokens.scss +59 -0
  110. package/packages/scrabble-solver/src/styles/global.scss +3 -3
  111. package/packages/scrabble-solver/src/styles/mixins.scss +13 -12
  112. package/packages/scrabble-solver/src/styles/variables.module.scss +53 -0
  113. package/packages/scrabble-solver/src/styles/variables.scss +44 -41
  114. package/packages/scrabble-solver/tsconfig.tsbuildinfo +1 -1
  115. package/packages/solver/package.json +7 -6
  116. package/packages/types/package.json +2 -2
  117. package/packages/word-definitions/package.json +4 -3
  118. package/packages/word-definitions/src/parse.test.ts +7 -2
  119. package/packages/word-lists/package.json +2 -2
  120. package/todo.txt +3 -0
  121. package/tsconfig.json +1 -1
  122. package/jest.config.js +0 -15
  123. package/jest.setup.js +0 -6
  124. package/tsconfig.jest.json +0 -10
  125. /package/packages/scrabble-solver/.next/static/{FDUqldlsD7FXe6iWhIJmu → YS42EFHDGPCCe3JyeXaNi}/_ssgManifest.js +0 -0
@@ -11,8 +11,6 @@ jobs:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - uses: actions/checkout@v6
14
- - uses: actions/setup-node@v6
15
- with:
16
- node-version: 24.x
17
- - run: npm ci
18
- - run: npm run build
14
+ - uses: oven-sh/setup-bun@v2
15
+ - run: bun install --frozen-lockfile
16
+ - run: bun run build
@@ -1,28 +1,24 @@
1
- name: npx
1
+ name: bunx
2
2
 
3
3
  on:
4
4
  push:
5
5
  branches: [master]
6
- pull_request:
7
- branches: [master]
8
6
  schedule:
9
7
  - cron: '0 0 * * *' # every day at 00:00 UTC
10
8
  workflow_dispatch: # allow manual triggering
11
9
 
12
10
  jobs:
13
- npx:
11
+ bunx:
14
12
  runs-on: ubuntu-latest
15
- if: github.ref == 'refs/heads/master'
16
13
  steps:
17
14
  - uses: actions/checkout@v6
18
- - uses: actions/setup-node@v6
19
- with:
20
- node-version: 24.x
21
- - run: npm ci
22
- - run: npm run build
15
+ - uses: oven-sh/setup-bun@v2
16
+ - run: bun install --frozen-lockfile
17
+ - run: bun run build
23
18
  - uses: cypress-io/github-action@v7
24
19
  with:
25
- build: npm install --global scrabble-solver@latest
20
+ install: false
21
+ build: bun add --global scrabble-solver@latest
26
22
  start: scrabble-solver
27
23
  wait-on: 'http://localhost:3333'
28
24
  env:
@@ -23,6 +23,6 @@ jobs:
23
23
  cd /projects/scrabble-solver
24
24
  git checkout ${{ inputs.branch }}
25
25
  git pull origin ${{ inputs.branch }}
26
- npm install
27
- npm run build
26
+ bun install
27
+ bun run build
28
28
  sudo systemctl restart scrabble-solver.service
@@ -1,4 +1,4 @@
1
- name: Cypress
1
+ name: E2E tests
2
2
 
3
3
  on:
4
4
  push:
@@ -7,17 +7,17 @@ on:
7
7
  branches: [master]
8
8
 
9
9
  jobs:
10
- cypress:
10
+ e2e-tests:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - uses: actions/checkout@v6
14
- - uses: actions/setup-node@v6
15
- with:
16
- node-version: 24.x
14
+ - uses: oven-sh/setup-bun@v2
15
+ - run: bun install --frozen-lockfile
17
16
  - uses: cypress-io/github-action@v6
18
17
  with:
19
- build: npm run build
20
- start: npm start
18
+ install: false
19
+ build: bun run build
20
+ start: bun start
21
21
  env:
22
22
  CYPRESS_BASE_URL: http://localhost:3333
23
23
  - uses: actions/upload-artifact@v7
@@ -11,10 +11,8 @@ jobs:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - uses: actions/checkout@v6
14
- - uses: actions/setup-node@v6
15
- with:
16
- node-version: 24.x
17
- - run: npm ci
18
- - run: npm run format
14
+ - uses: oven-sh/setup-bun@v2
15
+ - run: bun install --frozen-lockfile
16
+ - run: bun run format
19
17
  env:
20
18
  CI: true
@@ -11,11 +11,9 @@ jobs:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - uses: actions/checkout@v6
14
- - uses: actions/setup-node@v6
15
- with:
16
- node-version: 24.x
17
- - run: npm ci
18
- - run: npm run build
19
- - run: npm run lint
14
+ - uses: oven-sh/setup-bun@v2
15
+ - run: bun install --frozen-lockfile
16
+ - run: bun run build
17
+ - run: bun run lint
20
18
  env:
21
19
  CI: true
@@ -1,4 +1,4 @@
1
- name: Jest
1
+ name: Unit tests
2
2
 
3
3
  on:
4
4
  push:
@@ -7,15 +7,13 @@ on:
7
7
  branches: [master]
8
8
 
9
9
  jobs:
10
- jest:
10
+ unit-tests:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
13
  - uses: actions/checkout@v6
14
- - uses: actions/setup-node@v6
15
- with:
16
- node-version: 24.x
17
- - run: npm ci
18
- - run: npm run build
19
- - run: npm run test-jest
14
+ - uses: oven-sh/setup-bun@v2
15
+ - run: bun install --frozen-lockfile
16
+ - run: bun run build
17
+ - run: bun run test-unit
20
18
  env:
21
19
  CI: true
@@ -0,0 +1,5 @@
1
+ {
2
+ "processId": 26662,
3
+ "socketPath": "/tmp/bd4bdc28a0bfecc2ae29/d.sock",
4
+ "nxVersion": "22.6.5"
5
+ }