Skip to content

V3 colorsets #116

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

Open
wants to merge 148 commits into
base: v3
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
148 commits
Select commit Hold shift + click to select a range
38b1aff
Add first draft promise error handler callback for REST requests
techninja Jun 23, 2020
41ea88d
Simplify project api promise workflow
techninja Jun 23, 2020
1b2da09
Finish out canvas-print documentation
techninja Jun 24, 2020
8762938
Adjust for linting, add project TODOs
techninja Jun 24, 2020
becad26
Initial implementation of new colorset API with schema
techninja Jun 24, 2020
41a5005
Switch from title to text prop to not override hover text
techninja Jun 24, 2020
60d260a
Properly translate internally configured colorsets
techninja Jun 26, 2020
281ef75
Another "title" attribute swap. Don't do that again.
techninja Jun 26, 2020
477c2eb
Upgrade hybrids
techninja Jun 26, 2020
2ce00bf
Allowing viewing only the workspace on paper canvases
techninja Jul 1, 2020
d61d88d
Move to bot placeholders with position and width
techninja Jul 9, 2020
ff06b5b
Initial implementation of locked size "slide" interface component
techninja Jul 9, 2020
bc5c804
Initial work towards cleaning up and upgrading the tool API
techninja Jul 9, 2020
e9bd793
Adjust water positions and radius
techninja Jul 9, 2020
ce15e9a
Add Display only synced "tools" layer
techninja Jul 9, 2020
5895f51
Tools handler refactors for scratch support, WCB
techninja Jul 9, 2020
f040943
Continuing adventures in "What's the right number?"
techninja Jul 9, 2020
b001c95
Include drawLength and handleWidth in implement schema
techninja Jul 9, 2020
ac2355a
New element: Schema form!
techninja Jul 24, 2020
0dc2e96
Move draw settings widget to schema form
techninja Jul 24, 2020
d070667
Update lock file
techninja Jul 24, 2020
77a26ff
Add support for hiding specific controls on a schema form
techninja Jul 24, 2020
8388578
Add handle colors to schema for users
techninja Jul 31, 2020
5f024e4
WIP update for Colorset/Tools API
techninja Jul 31, 2020
bcc711f
Deliver the full data object with the diff
techninja Jul 31, 2020
3bea6ce
WIP colorset editor
techninja Jul 31, 2020
e170623
WIP SKETCH: tool implement renderer.
techninja Jul 31, 2020
8b28ef7
Update tool implement rendering to SVG
techninja Aug 1, 2020
6594fa7
Complete initial work for implement display component.
techninja Aug 2, 2020
1d7c0b8
Fix for SVG rendering bug that hides gradient? Weird.
techninja Aug 2, 2020
5ba5f4e
Remove various testing cruft
techninja Aug 2, 2020
c84bf1f
Add basic array editing to schema form
techninja Aug 2, 2020
f1b33b9
Package host styles with slide item
techninja Aug 2, 2020
0d8612d
Reorder color implement schema, add dependencies
techninja Aug 2, 2020
e073078
Toughen up implement and schema form inputs
techninja Aug 4, 2020
85f8178
Implement basic plain and minimal schema form styles
techninja Aug 4, 2020
af339b7
Reformat eslint and upgrade to babel-lint
techninja Aug 4, 2020
104aa4d
Get rid of weightless. Sorry guys!
techninja Aug 4, 2020
a40a411
Set bounds for automatic SVG sizing
techninja Aug 4, 2020
3542e0d
Add appyProps and allow for data moving between slides
techninja Aug 4, 2020
cd0ac01
And default handle colors to api data
techninja Aug 4, 2020
3d1027f
Remove weightless from implementations
techninja Aug 4, 2020
0973bf3
Improve lint styling
techninja Aug 14, 2020
3d3a1ed
Add tool post/patch, with revamped color API
techninja Aug 24, 2020
8e5edf0
Add project name change support with folder rename
techninja Aug 28, 2020
9bd58fc
Clear the preview layer on project load
techninja Aug 28, 2020
d759aa0
Add basic preset management utilities
techninja Sep 6, 2020
8a29f2d
Add basic implement endpoint and preset management
techninja Sep 6, 2020
0b1a860
Allow standard hyphens in machine names
techninja Sep 8, 2020
c054903
Display allowedValues array in error response body if it exists
techninja Sep 8, 2020
b8d5c39
Add presets utility curried promise handler for validity checking
techninja Sep 8, 2020
8c1fd8e
Move to textarea format for descriptions
techninja Sep 15, 2020
78cb6d9
Add initial working draft preset bases
techninja Sep 15, 2020
d936109
Attempt to finalize color and toolset schemas
techninja Sep 15, 2020
47c778c
Adjust preset management utils, add maptoarray
techninja Sep 15, 2020
2c4bc12
Fix IPC Todo straggler
techninja Sep 15, 2020
4751885
Update client wrapper lib with implement, add customs/internals
techninja Sep 15, 2020
51673b9
Correct styles for base schema form
techninja Sep 25, 2020
7d5a4bd
Lots of schema form updates and improvements
techninja Sep 25, 2020
3d48965
Finish function if we're just cleaning up a process
techninja Sep 28, 2020
8b5ca72
Pre-final working massive Colorset API rework
techninja Oct 1, 2020
5699244
WIP working Colorset UI components for new colorset API work
techninja Oct 1, 2020
6f8e903
Add loading modal notifier component
techninja Oct 6, 2020
b4053fd
Add missing object diff util
techninja Oct 6, 2020
711e04f
Change project name based on title given
techninja Oct 6, 2020
3520a68
Add a 20 sec timeout for content requests
techninja Oct 6, 2020
ab8d7b9
Fix XML issue
techninja Oct 6, 2020
d378c52
Add new modal notify component!
techninja Oct 7, 2020
390e978
Allow project renaming
techninja Oct 11, 2020
a3f69d5
Temporary fixes, swear
techninja Oct 11, 2020
0d93fc5
Simple component style adjustments
techninja Oct 11, 2020
6947bcf
WIP Implement status component
techninja Oct 11, 2020
30b8c69
Add supports for paper size presets on canvas graph
techninja Oct 11, 2020
d9ae8be
Buttons are inline
techninja Oct 11, 2020
0fdbfd6
Faux placement for new component
techninja Oct 11, 2020
f12e252
Actually work to let processes kill themselves
techninja Oct 11, 2020
8c7c016
Minor fill refactoring
techninja Oct 11, 2020
197f280
Correctly check for tool existence
techninja Oct 12, 2020
c896244
WIP status manual swap modal
techninja Oct 12, 2020
3a6fcf6
Adjust schemas so enums have titles!
techninja Oct 22, 2020
e7bd5d0
BIG SVG Font/text rendering improvements
techninja Oct 22, 2020
74af570
Prevent compose keybindings triggering without focus
techninja Oct 24, 2020
8bc8c52
Add compose alt modifier for 1mm adjustments
techninja Oct 24, 2020
4503ed3
Properly clean up rendered preview content when removed
techninja Oct 24, 2020
eca801a
Add colorset to projects
techninja Oct 24, 2020
2dfe0cf
Don't use "style" as a custom attribute :man_facepalming:
techninja Oct 25, 2020
cd61129
Add schema form support for updating the disable paths
techninja Oct 26, 2020
d6aebc4
Fix support for adding colorset items
techninja Oct 26, 2020
7eef0bf
Move to chroma library, upgrade deps
techninja Jan 10, 2021
2225da8
Move to project paper color instead of ignore
techninja Jan 10, 2021
744cce9
Define color overrides to allow more directed selection
techninja Jan 10, 2021
bb24216
Fit loaded projects into expected schema shape
techninja Jan 10, 2021
3c9534e
Allow traced paths to retain inherent stroke width
techninja Jan 10, 2021
c0a8c53
Move to node 15, es module base, unified lint config
techninja Jan 25, 2021
3787d6f
MASSIVE WIP MODULE REWRITE
techninja Jan 25, 2021
1b3822e
Add support for late binding triggers
techninja Jan 25, 2021
5ceac0e
Convert filler and vectorizer schemas to es modules
techninja Jan 26, 2021
6e33810
Initial working draft of ES Module conversion!
techninja Jan 27, 2021
a1bb729
Way better import support and more!
techninja Jan 30, 2021
a0a15e3
Fix i18n
techninja Jan 30, 2021
9419925
Fix incorrect bindings
techninja Jan 30, 2021
705dcb3
Use 'step' as precision notifier
techninja Jan 31, 2021
0925d78
Linting for schema form
techninja Jan 31, 2021
a537a91
Move to json-editor fork without empty dependent data
techninja Jan 31, 2021
5727ae4
Merge pull request #121 from techninja/v3-colorsets-esmodules
techninja Feb 1, 2021
b3a68c0
Linting fixes and rangeinput dispatch event
techninja Feb 1, 2021
383f498
Implement first draft working color selection preview
techninja Feb 1, 2021
af192b4
Initial move from pen update to active state var
techninja Feb 3, 2021
f3717c4
Load drawing base after schemas to prevent layer race condition
techninja Feb 3, 2021
1c4c9e2
Update projects to trigger updates
techninja Feb 3, 2021
4705d4e
Add client support for actualPen
techninja Feb 3, 2021
5bcde18
Adjust linting to allow required extensions
techninja Feb 4, 2021
d9048fa
Big refactor for better pen livestate
techninja Feb 4, 2021
fa248bc
INitial version of shared colorset matcher util for live preview
techninja Feb 4, 2021
750313f
Remove debugs
techninja Feb 4, 2021
4034979
Clean out remaining pen update implementations
techninja Feb 5, 2021
d6fc31c
Add slim expo marker preset implement
techninja Feb 5, 2021
a2db8db
Reject broken colorset presets
techninja Feb 5, 2021
8b14367
Whoops, I broke it
techninja Feb 5, 2021
61d8b67
Add implement invalid/failure mode for initial load
techninja Feb 9, 2021
de86010
Use livestate for edit color component
techninja Feb 9, 2021
555c768
Fix retry connect reference
techninja Feb 9, 2021
cf0e3a1
Force state updates livestate now
techninja Feb 9, 2021
72a6388
Move to percentage width for slide groups
techninja Feb 15, 2021
99f6a73
Set correct tab group and item host block styles
techninja Feb 15, 2021
cded4e8
Fix content-importer selection visibility
techninja Feb 15, 2021
7967998
Linting... :shirt:
techninja Feb 23, 2021
789d64e
Prevent GET side effects on buffer endpoint
techninja Feb 23, 2021
e19ae3f
Upgrade apply object helper
techninja Feb 27, 2021
261c47b
Add support for implement "[inherit]" default getter.
techninja Feb 27, 2021
697a5e1
Begin transition to pen Z instead of height
techninja Feb 27, 2021
c5a5c40
WIP Initial paper utils module
techninja Feb 27, 2021
009cd2b
Big index linting update
techninja Feb 27, 2021
7d7bb3a
Ignore localized test files
techninja Feb 27, 2021
6226fc1
Minor linting and icon fullwidth adjustments for button component
techninja Feb 27, 2021
b00eb9a
Move to percent based width for colorset editor
techninja Feb 27, 2021
d44cd24
WIP Big update to implement status
techninja Feb 27, 2021
3367328
Clear out colorset todos
techninja Feb 27, 2021
dbac0ef
Move to slot based messaging for modal
techninja Feb 27, 2021
193222f
WIP Failed attempt to manage manual toolchanges
techninja Feb 27, 2021
3c81dda
Move to node 16 suggestion
techninja Mar 29, 2023
787b08c
WIP move to z instead of height
techninja Mar 29, 2023
d105b55
Add support for serial value
techninja Mar 29, 2023
72c7e12
Adjust variable reuse in accell
techninja Mar 29, 2023
2bb6afe
Linting :bouquet:
techninja Mar 29, 2023
c84bea4
Add working direct serial endpoint
techninja Mar 29, 2023
4cba9e4
WIP not working print endpoint work
techninja Mar 29, 2023
818f80d
Fix preview bug on colorset editor
techninja Mar 29, 2023
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
18 changes: 0 additions & 18 deletions .eslintrc.js

This file was deleted.

2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ npm-debug.log

config.ini

test_*

.DS_Store
/nbproject/*

2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
12
16
196 changes: 29 additions & 167 deletions machine_types/watercolorbot.ini
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@ height = 206.25
[park]
x = 0
y = 0
z = 0

[workArea]
; Also measured in steps
Expand Down Expand Up @@ -93,182 +94,43 @@ max = 1023
min = 0

[tools]
[tools.pan]
x = 22
y = -2.5
width = 38.4
height = 214
position = topleft
radius = 4
type = swappable
group = Placeholder

[tools.water0]
x = 0
y = 0
wiggleAxis = y
wiggleTravel = 300
wiggleIterations = 4
x = -12.2
y = 14.8
width = 57.85
height = 57.85
position = center
radius = 35
group = Water

[tools.water0dip]
x = 0
y = 0
wiggleAxis = y
wiggleTravel = 5
wiggleIterations = 2
group = Water Dip

[tools.water1]
x = 0
y = 1650
wiggleAxis = y
wiggleTravel = 300
wiggleIterations = 4
x = -12.2
y = 90
width = 57.85
height = 57.85
position = center
radius = 35
group = Water

[tools.water1dip]
x = 0
y = 1650
wiggleAxis = y
wiggleTravel = 5
wiggleIterations = 2
group = Water Dip

[tools.water2]
x = 0
y = 3000
wiggleAxis = y
wiggleTravel = 300
wiggleIterations = 4
x = -12.2
y = 168
width = 57.85
height = 57.85
position = center
radius = 35
group = Water

[tools.water2dip]
x = 0
y = 3000
wiggleAxis = y
wiggleTravel = 5
wiggleIterations = 2
group = Water Dip

[tools.color0]
x = 775
y = 250
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color1]
x = 775
y = 715
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color2]
x = 775
y = 1135
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color3]
x = 775
y = 1625
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color4]
x = 775
y = 2035
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color5]
x = 775
y = 2502
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color6]
x = 775
y = 2955
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color7]
x = 775
y = 3405
wiggleAxis = xy
wiggleTravel = 300
wiggleIterations = 8
group = Colors

[tools.color0dip]
x = 775
y = 250
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color1dip]
x = 775
y = 715
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color2dip]
x = 775
y = 1135
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color3dip]
x = 775
y = 1625
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color4dip]
x = 775
y = 2035
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color5dip]
x = 775
y = 2502
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color6dip]
x = 775
y = 2955
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.color7dip]
x = 775
y = 3405
wiggleAxis = xy
wiggleTravel = 5
wiggleIterations = 2
group = Colors Dip

[tools.manualswap]
x = 0
y = 0
Expand Down
73 changes: 73 additions & 0 deletions node.importmap
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{
"imports": {
"cs/unify": "./src/components/core/utils/cncserver.unify.js",
"cs/utils": "./src/components/core/utils/cncserver.utils.js",
"cs/binder": "./src/components/core/utils/cncserver.binder.js",
"cs/settings": "./src/components/core/utils/cncserver.settings.js",
"cs/i18n": "./src/components/core/utils/cncserver.i18n.js",
"cs/server": "./src/components/core/comms/cncserver.server.js",
"cs/rest": "./src/components/core/comms/cncserver.rest.js",
"cs/ipc": "./src/components/core/comms/cncserver.ipc.js",
"cs/serial": "./src/components/core/comms/cncserver.serial.js",
"cs/sockets": "./src/components/core/comms/cncserver.sockets.js",
"cs/pen": "./src/components/core/control/cncserver.pen.js",
"cs/actualPen": "./src/components/core/control/cncserver.actualpen.js",
"cs/control": "./src/components/core/control/cncserver.control.js",
"cs/tools": "./src/components/core/control/cncserver.tools.js",
"cs/buffer": "./src/components/core/utils/cncserver.buffer.js",
"cs/run": "./src/components/core/utils/cncserver.run.js",
"cs/scratch": "./src/components/third_party/scratch/cncserver.scratch.js",
"cs/drawing": "./src/components/core/drawing.js",
"cs/projects": "./src/components/core/control/cncserver.projects.js",
"cs/print": "./src/components/core/control/cncserver.print.js",
"cs/content": "./src/components/core/control/cncserver.content.js",
"cs/schemas": "./src/components/core/schemas/cncserver.schemas.js",
"cs/api": "./src/components/core/comms/cncserver.api.js",
"cs/api/handlers": "./src/components/core/comms/api/index.js",
"cs/api/handlers/settings": "./src/components/core/comms/api/cncserver.api.settings.js",
"cs/api/handlers/pen": "./src/components/core/comms/api/cncserver.api.pen.js",
"cs/api/handlers/motors": "./src/components/core/comms/api/cncserver.api.motors.js",
"cs/api/handlers/buffer": "./src/components/core/comms/api/cncserver.api.buffer.js",
"cs/api/handlers/tools": "./src/components/core/comms/api/cncserver.api.tools.js",
"cs/api/handlers/colors": "./src/components/core/comms/api/cncserver.api.colors.js",
"cs/api/handlers/implements": "./src/components/core/comms/api/cncserver.api.implements.js",
"cs/api/handlers/projects": "./src/components/core/comms/api/cncserver.api.projects.js",
"cs/api/handlers/content": "./src/components/core/comms/api/cncserver.api.content.js",
"cs/api/handlers/print": "./src/components/core/comms/api/cncserver.api.print.js",
"cs/api/handlers/serial": "./src/components/core/comms/api/cncserver.api.serial.js",
"cs/bots": "./src/components/machine_support/index.js",
"cs/bots/base": "./src/components/machine_support/cncserver.bots.base.js",
"cs/bots/ebb": "./src/components/machine_support/cncserver.bots.ebb.js",
"cs/bots/watercolorbot": "./src/components/machine_support/cncserver.bots.watercolorbot.js",
"cs/drawing": "./src/components/core/drawing/index.js",
"cs/drawing/base": "./src/components/core/drawing/cncserver.drawing.base.js",
"cs/drawing/occlusion": "./src/components/core/drawing/cncserver.drawing.occlusion.js",
"cs/drawing/trace": "./src/components/core/drawing/cncserver.drawing.trace.js",
"cs/drawing/spawner": "./src/components/core/drawing/cncserver.drawing.spawner.js",
"cs/drawing/fill": "./src/components/core/drawing/cncserver.drawing.fill.js",
"cs/drawing/vectorize": "./src/components/core/drawing/cncserver.drawing.vectorize.js",
"cs/drawing/text": "./src/components/core/drawing/cncserver.drawing.text.js",
"cs/drawing/accell": "./src/components/core/drawing/cncserver.drawing.accell.js",
"cs/drawing/colors": "./src/components/core/drawing/cncserver.drawing.colors.js",
"cs/drawing/colors/matcher": "./src/interface/modules/utils/colorset-matcher.mjs",
"cs/drawing/implements": "./src/components/core/drawing/cncserver.drawing.implements.js",
"cs/drawing/stage": "./src/components/core/drawing/cncserver.drawing.stage.js",
"cs/drawing/preview": "./src/components/core/drawing/cncserver.drawing.preview.js",
"cs/drawing/temp": "./src/components/core/drawing/cncserver.drawing.temp.js",
"cs/schemas": "./src/components/core/schemas/cncserver.schemas.js",
"cs/schemas/index": "./src/components/core/schemas/index.js",
"cs/schemas/projects": "./src/components/core/schemas/cncserver.schemas.projects.js",
"cs/schemas/content": "./src/components/core/schemas/cncserver.schemas.content.js",
"cs/schemas/content/settings": "./src/components/core/schemas/cncserver.schemas.content.settings.js",
"cs/schemas/fill": "./src/components/core/schemas/cncserver.schemas.fill.js",
"cs/schemas/stroke": "./src/components/core/schemas/cncserver.schemas.stroke.js",
"cs/schemas/text": "./src/components/core/schemas/cncserver.schemas.text.js",
"cs/schemas/vectorize": "./src/components/core/schemas/cncserver.schemas.vectorize.js",
"cs/schemas/path": "./src/components/core/schemas/cncserver.schemas.path.js",
"cs/schemas/color": "./src/components/core/schemas/cncserver.schemas.color.js",
"cs/schemas/colors": "./src/components/core/schemas/cncserver.schemas.colors.js",
"cs/schemas/tools": "./src/components/core/schemas/cncserver.schemas.tools.js",
"cs/schemas/implements": "./src/components/core/schemas/cncserver.schemas.implements.js",
"cs/schemas/toolsets": "./src/components/core/schemas/cncserver.schemas.toolsets.js"
}
}
Loading