Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#180 - Show version number on UI #268

Open
wants to merge 152 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
0309da7
Some documentation improvements.
NicDoesCode Sep 9, 2023
3846b5f
Backup old CanvasManager to CanvasManagerOld.
NicDoesCode Sep 9, 2023
c94de75
Cache tile images.
NicDoesCode Sep 9, 2023
bef239d
Optimise draw tile method to cache tile images.
NicDoesCode Sep 9, 2023
93eed7e
Add TileImageManager class.
NicDoesCode Sep 10, 2023
b6e9b37
Implement affected tile IDs on paint bucket tool.
NicDoesCode Sep 10, 2023
9d06ec2
Break links now updates only affected tiles.
NicDoesCode Sep 10, 2023
b9149d2
Correct size of tile palette buttons.
NicDoesCode Sep 10, 2023
a9685a8
Fix excessive calls to setPalette in paletteEditor.
NicDoesCode Sep 10, 2023
951f1ff
Move away from handlebars for TileListing component and use JavaScrip…
NicDoesCode Sep 10, 2023
e442952
Remove debug comments.
NicDoesCode Sep 10, 2023
6d9f7e7
Merge pull request #208 from NicDoesCode/release_1-1-1
NicDoesCode Sep 10, 2023
2f517b3
- Remove some unneeded files.
NicDoesCode Sep 11, 2023
6ca6688
Stop server when debug ends.
NicDoesCode Sep 11, 2023
81da317
Task tweaking.
NicDoesCode Sep 11, 2023
cbd4b1f
Add loading screen to application.
NicDoesCode Sep 11, 2023
d897c5d
Merge pull request #209 from NicDoesCode/133-add-smooth-loading-scree…
NicDoesCode Sep 11, 2023
f6077b1
Add "dateLastModified" property to project.
NicDoesCode Sep 11, 2023
4e4a702
- Added some extra class documentation.
NicDoesCode Sep 11, 2023
4674ded
Add property to control whether last modified column is displayed on …
NicDoesCode Sep 11, 2023
30fc112
Increase timeout for transition between loading screen and main inter…
NicDoesCode Sep 11, 2023
df83aef
Merge pull request #211 from NicDoesCode/137-last-modified-on-project…
NicDoesCode Sep 11, 2023
6bde6a3
Make project list sort work on welcome and dropdown.
NicDoesCode Sep 11, 2023
06222d2
Make project list show sort button configurable.
NicDoesCode Sep 11, 2023
d0f67ea
Make visual effects on project sort dropdown nicer.
NicDoesCode Sep 11, 2023
7d5c466
Fix array sort for Chromium.
NicDoesCode Sep 11, 2023
24ab5b2
Fix sorting in other areas for Chromium.
NicDoesCode Sep 11, 2023
a1bb8c1
Move `getSortedProjectArray` to a better spot in main.js.
NicDoesCode Sep 11, 2023
6edd060
Merge pull request #212 from NicDoesCode/179-allow-customisation-of-d…
NicDoesCode Sep 11, 2023
698a3aa
Tile cache is now emptied on undo or redo.
NicDoesCode Sep 11, 2023
263a36d
Tile map class improvements.
NicDoesCode Sep 11, 2023
808fcef
Add sprite support to TileMapFactory and improve documentation.
NicDoesCode Sep 11, 2023
1ac85c8
Add sprite support to tile map serialiser.
NicDoesCode Sep 11, 2023
eb2eb88
Add tile map attributes object to give details about tile map capabil…
NicDoesCode Sep 11, 2023
c901634
Implement isSprite selector in the UI.
NicDoesCode Sep 11, 2023
0a5e770
Start adding palette index locking for platforms such as NES that loc…
NicDoesCode Sep 11, 2023
5e5a224
Tile map console limitations.
NicDoesCode Sep 11, 2023
fa0fd19
Merge pull request #218 from NicDoesCode/175-sprite-option-for-tile-maps
NicDoesCode Sep 11, 2023
20fe324
Tile attributes:
NicDoesCode Sep 12, 2023
47f7af8
Add always keep to tile.
NicDoesCode Sep 12, 2023
c42b093
- Rename tileAttributes tool to tileMapTileAttributes.
NicDoesCode Sep 12, 2023
2efae0c
Make 'keep tile' work with code export.
NicDoesCode Sep 12, 2023
1e5cfc0
Tile map optimise is now default.
NicDoesCode Sep 12, 2023
b179318
Merge pull request #220 from NicDoesCode/177-add-an-always-keep-optio…
NicDoesCode Sep 12, 2023
73b993e
Add always keep to tile.
NicDoesCode Sep 12, 2023
46c709c
- Rename tileAttributes tool to tileMapTileAttributes.
NicDoesCode Sep 12, 2023
52610e8
Make 'keep tile' work with code export.
NicDoesCode Sep 12, 2023
839f9b9
Tile map optimise is now default.
NicDoesCode Sep 12, 2023
34af2f5
Remove GB warning.
NicDoesCode Sep 12, 2023
799b372
Add system util class.
NicDoesCode Sep 12, 2023
1352ad6
Redo the tile export routine and implement it.
NicDoesCode Sep 12, 2023
08a2795
Fix bugs.
NicDoesCode Sep 12, 2023
bc2bc9b
Only export used palettes.
NicDoesCode Sep 12, 2023
7021073
Merge branch 'develop' of https://github.com/NicDoesCode/SMSGFX into …
NicDoesCode Sep 12, 2023
c7cc6bb
Merge.
NicDoesCode Sep 12, 2023
0dc92fd
Merge pull request #221 from NicDoesCode/217-correct-code-export-beha…
NicDoesCode Sep 12, 2023
619b3e9
Resloved.
NicDoesCode Sep 12, 2023
630734d
Resolve palette editor updates.
NicDoesCode Sep 12, 2023
78d7cda
Merge pull request #223 from NicDoesCode/222-palettes-are-repeated-wh…
NicDoesCode Sep 12, 2023
c49d1a7
- Improve look of loading screen.
NicDoesCode Sep 12, 2023
c66ef12
Merge pull request #224 from NicDoesCode/216-loading-screen-doesnt-co…
NicDoesCode Sep 12, 2023
ebadea1
Fixed issue #225 and added ability to fill tile set with blank tiles …
NicDoesCode Sep 12, 2023
95320e0
- Canvas Manager and Tile Editor now accept transparency index list.
NicDoesCode Sep 12, 2023
1161bad
Merge pull request #228 from NicDoesCode/225-new-projects-should-be-c…
NicDoesCode Sep 12, 2023
74468fc
Resolve issue with loading palettes.
NicDoesCode Sep 12, 2023
808ea53
Native palette colours now show on Palette Editor.
NicDoesCode Sep 12, 2023
c03e3f8
- Fix emulate system colours.
NicDoesCode Sep 12, 2023
aea7331
Samples updated.
NicDoesCode Sep 12, 2023
c6d2fb5
- Fix GB sample.
NicDoesCode Sep 12, 2023
27d27d5
Update GB sample.
NicDoesCode Sep 12, 2023
4ba5e9b
Merge pull request #232 from NicDoesCode/229-update-sample-projects-t…
NicDoesCode Sep 12, 2023
407bd5b
Add source maps to dev build.
NicDoesCode Sep 13, 2023
50752c5
Fix bug where tile map palette colours were trying to be loaded for a…
NicDoesCode Sep 13, 2023
574be85
App containe is now display none on loading to prevent unwanted inter…
NicDoesCode Sep 13, 2023
bcff913
- Fix bug where changing palettes on tile map doesn't update tile map…
NicDoesCode Sep 13, 2023
30de20b
Some refactoring.
NicDoesCode Sep 13, 2023
40e43c0
Merge pull request #233 from NicDoesCode/2023-09-13-bugfix
NicDoesCode Sep 13, 2023
f37386b
- Use OffscreenCanvas where possible for speed improvement.
NicDoesCode Sep 13, 2023
8825a0d
Prevent zooming in too far as it upsets canvas image display.
NicDoesCode Sep 13, 2023
5c34320
Merge pull request #234 from NicDoesCode/2023-09-13-speed-improvement
NicDoesCode Sep 13, 2023
fdf2cb6
Update run and debug.
NicDoesCode Sep 14, 2023
99f10da
- Refactor.
NicDoesCode Sep 14, 2023
532a22f
Merge pull request #238 from NicDoesCode/235-colour-doesnt-update-in-…
NicDoesCode Sep 14, 2023
d0bf0bd
Refector.
NicDoesCode Sep 16, 2023
128c2a6
Get offscreen canvas working.
NicDoesCode Sep 16, 2023
e7bfc14
Clean up worker code.
NicDoesCode Sep 17, 2023
66a7393
Remove use of tile image manager.
NicDoesCode Sep 17, 2023
6a27b59
Fix some new visual bugs.
NicDoesCode Sep 17, 2023
3bff5fb
Fix some bugs with no project, and wrong null checks.
NicDoesCode Sep 17, 2023
1c4c410
Fix auto loading of sample project.
NicDoesCode Sep 17, 2023
da4aa53
Fix scaling.
NicDoesCode Sep 17, 2023
9ca3160
Get reference image working.
NicDoesCode Sep 17, 2023
9bfeabe
- Fix palette bug when swapping images.
NicDoesCode Sep 18, 2023
65db213
Prevent error when drawing tile when palette out of range.
NicDoesCode Sep 18, 2023
347ec4c
Tile map stamp tool works correctly.
NicDoesCode Sep 18, 2023
0006895
Transmit affected tile mpa tile IDs to worker for palette paint and t…
NicDoesCode Sep 18, 2023
cf5b407
More efficiently update individual affected tiles on the canvas.
NicDoesCode Sep 18, 2023
266665e
Make the break links tool work.
NicDoesCode Sep 18, 2023
7926702
Fix reference image overlay.
NicDoesCode Sep 18, 2023
f9f32ce
Merge pull request #239 from NicDoesCode/2023-09-14-draw-slowness
NicDoesCode Sep 18, 2023
050c7b2
Fix worker not being built.
NicDoesCode Sep 18, 2023
bc6e159
Try to stop canvas bad size.
NicDoesCode Sep 18, 2023
ca97111
- Solve tile editor centring issue.
NicDoesCode Sep 18, 2023
5d34012
Merge pull request #243 from NicDoesCode/240-tile-editor-canvas-keeps…
NicDoesCode Sep 18, 2023
f6c3d59
Fix issue where tile maps won't centre when changing.
NicDoesCode Sep 18, 2023
2298b08
Fixes:
NicDoesCode Sep 19, 2023
fc73524
Merge pull request #245 from NicDoesCode/244-palette-doesnt-disappear…
NicDoesCode Sep 19, 2023
3d54031
Edge test.
NicDoesCode Sep 21, 2023
e388196
Fixes:
NicDoesCode Sep 21, 2023
43353ea
Fixes:
NicDoesCode Sep 21, 2023
433d481
Fixes:
NicDoesCode Sep 21, 2023
7e5b382
Fixes:
NicDoesCode Sep 21, 2023
8ae4a0f
Merge pull request #258 from NicDoesCode/247-reference-image-smoothin…
NicDoesCode Sep 21, 2023
2316301
Remove 'Edge' debug comment.
NicDoesCode Sep 21, 2023
36a4ae7
Merge pull request #259 from NicDoesCode/edge
NicDoesCode Sep 21, 2023
eb2af9b
Features:
NicDoesCode Sep 21, 2023
64b9917
Features:
NicDoesCode Sep 21, 2023
f9d93f2
Feature:
NicDoesCode Sep 21, 2023
04aa775
Merge pull request #261 from NicDoesCode/1.3/re-order-palette-tile-map
NicDoesCode Sep 21, 2023
40783a5
Get gaps between palettes working.
NicDoesCode Sep 22, 2023
fd8f3a3
Progress.
NicDoesCode Sep 22, 2023
cf98e8a
First implementation of palette reorder by drag and drop.
NicDoesCode Sep 23, 2023
a6966e9
Feature:
NicDoesCode Sep 23, 2023
d2733c2
Tweaks:
NicDoesCode Sep 23, 2023
7c7235b
Merge pull request #262 from NicDoesCode/v1.3/click-to-reorder
NicDoesCode Sep 23, 2023
7e9974b
Add tile map menu.
NicDoesCode Oct 3, 2023
e82d428
Tile map mirror and flip:
NicDoesCode Oct 3, 2023
ff36c52
Commit changes.
NicDoesCode Nov 4, 2023
6ee1f30
Progress.
NicDoesCode Nov 5, 2023
3b66aec
Check in, because going for a bike ride.
NicDoesCode Nov 7, 2023
db2ca84
Train changes.
nfaucode Nov 9, 2023
e8bf266
Gret the "Use as reference" option working under tile map settings.
NicDoesCode May 8, 2024
4042d37
Fix image export function.
NicDoesCode May 8, 2024
6986386
Merge pull request #264 from NicDoesCode/feature/2023-10-flip-tile-map
NicDoesCode May 8, 2024
c3df57d
Progress towards a project entry list that saves needing to load enti…
NicDoesCode May 8, 2024
50fa2dc
Fixed issue that caused palette editor to corrupt when loading differ…
NicDoesCode May 9, 2024
12d59b0
Tweak to how projects are gotten from cache.
NicDoesCode May 9, 2024
af11369
Remove some temp code.
NicDoesCode May 9, 2024
e192b79
Fix project entries not being updated when sample projects added.
NicDoesCode May 9, 2024
e6070ae
Ensure project entries updated.
NicDoesCode May 9, 2024
5a982fa
Stop crash when app is launched and last project ID dorsndoesn't exis…
NicDoesCode May 9, 2024
9ea93c5
Fix issue loading alternative project when last project ID wasn't set.
NicDoesCode May 9, 2024
dd297ae
Merge pull request #265 from NicDoesCode/219-optimise-getting-project…
NicDoesCode May 9, 2024
c711a92
Remove native colours from palette editor.
NicDoesCode May 9, 2024
f9d2f51
Move native palette logic outside of individual components and into m…
NicDoesCode May 9, 2024
e68c2e3
Fix issue preventing native palettes from being updated on colour cha…
NicDoesCode May 9, 2024
e8b3b83
Merge pull request #266 from NicDoesCode/236-move-render-palette-list…
NicDoesCode May 9, 2024
d395738
Merge pull request #267 from NicDoesCode/edge
NicDoesCode May 10, 2024
496ae26
Add version metadata file.
nfaucode May 10, 2024
175911b
- Clean up post build script.
nfaucode May 11, 2024
71769d4
Versions changes.
nfaucode May 11, 2024
3aa30f0
Add metadata directory to deployment script.
NicDoesCode May 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 0 additions & 52 deletions .circleci-disabled/config.yml

This file was deleted.

This file was deleted.

1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ tmp/
dist/
.exe
node_modules/
.vscode/
.DS_Store
cert/
*.instance.*
Expand Down
73 changes: 49 additions & 24 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,18 +5,11 @@
"version": "0.2.0",
"configurations": [
{
"name": "Launch Chrome (HTTPS)",
"request": "launch",
"type": "chrome",
"url": "https://localhost:8443",
"webRoot": "${workspaceFolder}/wwwroot"
},
{
"name": "Launch Firefox (HTTP)",
"name": "Firefox, serve and launch",
"type": "firefox",
"request": "launch",
"reAttach": true,
"url": "http://localhost:8080/index.html",
"url": "http://localhost:8443/index.html",
"webRoot": "${workspaceFolder}/wwwroot",
"profile": "debug",
"keepProfileChanges": true,
Expand All @@ -25,10 +18,12 @@
"url": "http://localhost:8080",
"path": "${workspaceFolder}/wwwroot"
}
]
],
"preLaunchTask": "launch-server",
"postDebugTask": "stop-server"
},
{
"name": "Launch Firefox (HTTPS)",
"name": "Firefox, launch",
"type": "firefox",
"request": "launch",
"reAttach": true,
Expand All @@ -44,28 +39,58 @@
]
},
{
"name": "Launch Firefox (HTTPS) build",
"name": "Firefox, attach",
"type": "firefox",
"request": "launch",
"reAttach": true,
"request": "attach",
"url": "https://localhost:8443/index.html",
"webRoot": "${workspaceFolder}/dist",
"profile": "debug",
"keepProfileChanges": true
"webRoot": "${workspaceFolder}/wwwroot",
"pathMappings": [
{
"url": "https://localhost:8443",
"path": "${workspaceFolder}/wwwroot"
}
]
},
{
"name": "Attach Firefox (HTTP)",
"type": "firefox",
"request": "attach",
"url": "http://localhost:8080/index.html",
"name": "Chrome, serve and launch",
"request": "launch",
"type": "chrome",
"url": "https://localhost:8443",
"webRoot": "${workspaceFolder}/wwwroot",
"preLaunchTask": "launch-server",
"postDebugTask": "stop-server"
},
{
"name": "Chrome, launch",
"request": "launch",
"type": "chrome",
"url": "https://localhost:8443",
"webRoot": "${workspaceFolder}/wwwroot"
},
{
"name": "Attach Firefox (HTTPS)",
"type": "firefox",
"name": "Chrome, attach",
"port": 9222,
"request": "attach",
"type": "chrome",
"webRoot": "${workspaceFolder}/wwwroot",
},
{
"name": "Firefox, build and launch",
"type": "firefox",
"request": "launch",
"reAttach": true,
"url": "https://localhost:8443/index.html",
"webRoot": "${workspaceFolder}/wwwroot"
"webRoot": "${workspaceFolder}/dist",
"profile": "debug",
"keepProfileChanges": true,
"pathMappings": [
{
"url": "https://localhost:8443",
"path": "${workspaceFolder}/dist"
}
],
"preLaunchTask": "launch-prod-server",
"postDebugTask": "stop-server"
}
]
}
41 changes: 41 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"version": "2.0.0",
"tasks": [
{
"label": "launch-server",
"command": "node ./app.js",
"type": "shell",
"isBackground": true,
"problemMatcher": []
},
{
"label": "launch-prod-server",
"command": "node ./app.js -p dist",
"type": "shell",
"isBackground": true,
"problemMatcher": [],
"dependsOn": ["build"]
},
{
"label": "build",
"command": "npm",
"type": "shell",
"args": [
"run", "build"
]
},
{
"label": "stop-server",
"command": "echo ${input:terminate}",
"type": "shell"
}
],
"inputs": [
{
"id": "terminate",
"type": "command",
"command": "workbench.action.tasks.terminate",
"args": "terminateAll"
}
]
}
2 changes: 1 addition & 1 deletion build/plugins/HtmlWebpackExcludeScriptsPlugin.js
Original file line number Diff line number Diff line change
Expand Up @@ -132,5 +132,5 @@ export default class HtmlWebpackExcludeScriptsPlugin {
}

/**
* @typedef {object} HtmlWebpackExcludeScriptsPluginFilters
* @typedef {Object} HtmlWebpackExcludeScriptsPluginFilters
*/
13 changes: 4 additions & 9 deletions build/post-build.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,11 @@ function run() {


function makeConfig() {
const patreonHandle = process.env[`HANDLE_PATREON`] ?? null;
const kofiHandle = process.env[`HANDLE_KOFI`] ?? null;
const documentationUrl = process.env[`DOCUMENTATION_URL`] ?? null;
const documentationInlineUrl = process.env[`DOCUMENTATION_INLINE_URL`] ?? null;

const config = {
patreonHandle: patreonHandle,
kofiHandle: kofiHandle,
documentationUrl: documentationUrl,
documentationInlineUrl: documentationInlineUrl
patreonHandle: process.env[`HANDLE_PATREON`] ?? null,
kofiHandle: process.env[`HANDLE_KOFI`] ?? null,
documentationUrl: process.env[`DOCUMENTATION_URL`] ?? null,
documentationInlineUrl: process.env[`DOCUMENTATION_INLINE_URL`] ?? null
};
const configString = JSON.stringify(config);
const distDir = path.resolve(__dirname, '..', 'dist');
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"private": true,
"type": "module",
"scripts": {
"launch": "node ./app.js",
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack && node ./build/post-build.js"
},
Expand Down
30 changes: 25 additions & 5 deletions webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,41 @@ import CopyPlugin from "copy-webpack-plugin";
import path from "path";
import fs from "fs";
import url from 'url';
import dotenv from 'dotenv';

dotenv.config();

const __filename = url.fileURLToPath(import.meta.url);
const __dirname = url.fileURLToPath(new URL('.', import.meta.url));
const environment = process.env[`ENVIRONMENT`]?.toLowerCase() ?? null;

console.log(`Environment: ${(environment ?? '')}`);
console.log(`(Configure using 'ENVIRONMENT' environment variable, eg. ENVIRONMENT=develop)`);

const envSettings = {
mode: 'production'
};
if (environment === 'develop') {
envSettings.mode = 'development';
envSettings.devtool = 'source-map';
}

export default {
mode: 'production',
...envSettings,
entry: {
main: './wwwroot/modules/main.js',
pages: './wwwroot/pages/pages.js'
pages: './wwwroot/pages/pages.js',
tileEditorViewportWorker: './wwwroot/modules/worker/tileEditorViewportWorker.js',
tileImageWorker: './wwwroot/modules/worker/tileImageWorker.js',
},
output: {
filename: (pathData) => {
if (pathData.chunk.name === 'main')
if (pathData.chunk.name === 'main') {
return 'modules/[name].js?v=[hash]';
else if (pathData.chunk.name === 'pages') {
} else if (pathData.chunk.name === 'pages') {
return 'pages/[name].js?v=[hash]';
} else if (pathData.chunk.name.toLowerCase().includes('worker')) {
return 'modules/worker/[name].js?v=[hash]';
} else {
return 'assets/scripts/[name].js?v=[hash]';
}
Expand Down Expand Up @@ -65,7 +84,8 @@ export default {
patterns: [
{ from: 'wwwroot/assets/image', to: 'assets/image' },
{ from: 'wwwroot/assets/sample', to: 'assets/sample', noErrorOnMissing: true },
{ from: 'wwwroot/config', to: 'config', noErrorOnMissing: true }
{ from: 'wwwroot/config', to: 'config', noErrorOnMissing: true },
{ from: 'wwwroot/metadata', to: 'metadata' },
]
}),
new HtmlWebpackPlugin({
Expand Down
Loading