-
Notifications
You must be signed in to change notification settings - Fork 2
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
Create a web app version #6
Comments
The complex schema checking appears to be broken in VSCode, so #7 basically doesn't work right now, it's not obvious how to make it work, it's clear the recursive/large schema checking is falling off some cliff. It looks like other folks are having issues with adjacent problems too, e.g. microsoft/vscode#177142 , so maybe over the next few months it will clean itself up? But for now the editing experience is about 100x harder without schema checking and intellisense to guide you through the names of different types and what arguments they expect. That implies that the importance of a web app editing experience is much more important. To start, just do a very very simple webapp that allows you to edit a packet in localstorage and copy/paste it.
|
It's a hastily cut down version of the current webapp of adjacency-map. I've confirmed it loads the hello-world but not much beyond that. Part of #6.
This is better than relying on disallowTypeChange. Part of #6
The better test is disallowDelete, becuase shuffling it effectively deletes it. Part of #6.
…ecisely one allowed type or not. This is the last use of allowTypeChange. Part of #6.
This also removes the last reliance of disallowDelete, which can now rely on this. This actulaly nicely cleans up some buttons. Part of #6.
As of the last commit, values that were nested more than one notch below seed-editor would have no delete button. Part of #6.
Both of these are now better handled by propertyShape. Part of #6.
This is better for archiving. Uses fflate, which is typed, fast, and small. Part of #6.
This ensures that the donwloaded zips don't get a lot of (1) and makes it a more convenient format for archives and backups. Part of #6.
…l non-empty-array. It's kind of a pain to have to assert an array is non-empty when passing in values (although it is nice to rely on later, but not THAT nice). Part of #6.
…ices as an optional property. This allows multiLine to be passed, although it's not yet actually used. Part of #6.
…ncept of an 'unknown'/any TypeShape. Currently TypeShape is basically just an indirected wrapper for PropertyType, but with the addition of an 'unknown' value, which means 'fine with any PropertyType'. This changes a bit of the logic for when and how to render drop downs, which I believe is working. This work will allow in the near future specifying sub-object and sub-array types instead of just "it's an array 🤷" Part of #6.
Currently those innerShapes are all type:unknown, so they allow anything. Part of #6.
…s computable (seed/reference). Part of #6.
…in extra information. The output of propertyShapes is verified to be semantically identical before and after this refactor. Part of #6.
…d seed/reference/input types. This does change the output of the SHAPE_BY_SEED, mostly for call.function, array.items, and object.items, but arguably in ways that are more precisely accurate than before. This also simplifies the logic and removes some specialized behavior. Part of #6.
Currently this is somewhat unncessary, but when we start processing array or object inner types it's necessary to avoid an infinite loop, since inputValue and value recurse. Part of #6.
This means that for example in input.choices, it's properly constrained to a string. Part of #6.
The text was updated successfully, but these errors were encountered: