* Support typing backend queries
* Implement types for actions and extract entities
* Add Prisma entities to the frontend
* Add frontend types to internal todoApp
* Undo moving for easier review
* Revert back to generating a query.js file
* Rename buildEntityData
* Fix structural typing bug
* Rename function for making entity json data
* Expand EntityMap to improve readability
* Remove leftover testing artifacts
* Remove wasp prefix from _entityName
* Remove solved todo in schema template
* Fix docs in method
* Adding uninstall command (#953)
* Adding uninstall command
* Updates docs and changelog related to the uninstall command
* Use StrongPath instead of FilePath
* Fix review feedback
* Move prisma client generation messages
* Generalize FileDraft functions
* Generate prisma clients using ENV
* Fix schema checksum check
* Small refactor in db generator
* Run prisma generate from server root dir
* Fix types for useAction
* Fix type error for useAction
* Fix schema generation in Dockerfile
* Refactor passing env vars to prisma schema
* Fix useAction types
* Replace Prelude readFile with SP readFile
* Add comment for prisma/client in web app
* Replace Prelude writeFile with SP writeFile
* Replace do and if with ifM
* Rename readProjectTelemetryFile
* Refactor readOrCreateUserSignatureFile
* Remove redundant comment
* Fix typo in variable name
* Simulate unions with a type class
* Further improve strongpath types
* Add expand types to types index
* Remove redundant comment
* Organize internal type modules
* Fix formatting
* Remove leftover code
* Generate prisma clients after migration
* Change ModuleRootDir to ComponentRootDir
* Remove solved todo
* Improve naming
* Remove redundant env variable
* Improve formatting
* Fix errors after merging
* Include input and output types
* Temporarily delete _types
* Restore _types index
* Add types to queries
* Rename WaspEntity to Entity
* Change local function name
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Rename local function again
* Update changelog
* Fix error type in useQuery
* Rename Component to AppComponent
* Refactor DbGenerator
* Explain Abs paths in SP helpers
* Update e2e tests
* Fix formatting
* Change signature for doesFileExist
* Change signature for SP functions
* Remove redundant do block
* Fix formatting
* Reorder functions
* Rename module to appComponent in functions
* Rename module to component in functions
* Rename telemetry cache function
* Fix formatting
* Update changelog
* Remove redundant import
* Update e2e tests
---------
Co-authored-by: Mihovil Ilakovac <mihovil@ilakovac.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Support typing backend queries
* Implement types for actions and extract entities
* Add Prisma entities to the frontend
* Add frontend types to internal todoApp
* Undo moving for easier review
* Revert back to generating a query.js file
* Rename buildEntityData
* Remove solved todo in schema template
* Fix docs in method
* Adding uninstall command (#953)
* Adding uninstall command
* Updates docs and changelog related to the uninstall command
* Use StrongPath instead of FilePath
* Fix review feedback
* Move prisma client generation messages
* Generalize FileDraft functions
* Generate prisma clients using ENV
* Fix schema checksum check
* Small refactor in db generator
* Run prisma generate from server root dir
* Fix types for useAction
* Fix type error for useAction
* Fix schema generation in Dockerfile
* Refactor passing env vars to prisma schema
* Fix useAction types
* Replace Prelude readFile with SP readFile
* Add comment for prisma/client in web app
* Replace Prelude writeFile with SP writeFile
* Replace do and if with ifM
* Rename readProjectTelemetryFile
* Refactor readOrCreateUserSignatureFile
* Remove redundant comment
* Fix typo in variable name
* Simulate unions with a type class
* Further improve strongpath types
* Generate prisma clients after migration
* Change ModuleRootDir to ComponentRootDir
* Remove solved todo
* Improve naming
* Remove redundant env variable
* Improve formatting
* Fix errors after merging
* Change local function name
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Rename local function again
* Update changelog
* Fix error type in useQuery
* Rename Component to AppComponent
* Refactor DbGenerator
* Explain Abs paths in SP helpers
* Update e2e tests
* Fix formatting
* Change signature for doesFileExist
* Change signature for SP functions
* Remove redundant do block
* Fix formatting
* Reorder functions
* Rename module to appComponent in functions
* Rename module to component in functions
* Rename telemetry cache function
* Fix formatting
---------
Co-authored-by: Mihovil Ilakovac <mihovil@ilakovac.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* feat: add type variable for operation input argument
* Pass where object by name.
* Change default type of operator input to `never`.
* Update e2e checksums.
* Rename operation Result type to Output, remove redundant default types.
---------
Co-authored-by: Bas Dirks <bas.dirks@bettyblocks.com>
* Support typing backend queries
* Implement types for actions and extract entities
* Add CR fixes
* Add type to imports and exports for entities
* Change query extensions back to .js
* Tidy up default arguments for operation types
* Don't throw syntax error when there are no entities
* Update e2e tests
* Fix formatting
* Fix typo in comment
* Update changelog and bump project version
* update fn imports in tutorial
* Explain js extensions in server imports
Co-authored-by: shayneczyzewski <shayne.czyzewski@gmail.com>
Co-authored-by: Filip Sodić <filip.sodic@fer.hr>
* Update todo app tutorial
* Remove trailing spaces from clocks
* Match MainPage with tutorial
* Add newline to end of action.js
* Fix newline at the end of action.js
* Fix typo in tutorial
* Update web/docs/tutorials/todo-app/creating-new-project.md
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Update web/docs/tutorials/todo-app/creating-new-project.md
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Fix jsx typo in tutorial
* Remove React import from e2e tests
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Add typescript support to generator
* Change jsconfig to tsconfig for client
* Change Main.js to Main.tsx
* Implement TypeScript support on client
* Fix formatting
* Fixes in actions/index.ts
* Remove extra types from comments
* Update waspc/src/Wasp/Generator/ServerGenerator.hs
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Remove server-specific typescript stuff
* Fix useQuery type
* Add typeroots to client tsconfig
* Improve TypeScript support on client
* Remove tsx extension from template wasp file
* Format code
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Separate ext code to client and server
* Use skeleton in createNewProject and refactor
* Refactor Lib.hs to use ExceptT
* Fix formatting
* Pop up returns
* Extract liftIO and add a do block
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Address some review comments
* Add skeleton comment
* Extract common CommandError message
* Separate skeleton comment into two rows
* Move server and client dirs into src
* Simplify maybeToEither
* Further refactor Lib.hs
* Further simplify skeleton comment
* Add shared code directory to project structure
* Update e2e test inputs
* Update e2e test outputs
* Fix formatting
* Fix bug in compile function
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Change map to fmap in compile function
* Fix formatting
* Force git to include empty directories
* Remove extra empty line from .gitkeep files
* Add .jsconfig to enable go-to-definition
* Watch shared directory for changes
* Add final newline to jsconfigs
* Fix regular and e2e tests
* Update e2e tests
* Fix cli template packaging and update todoApp
* Add a shared function demo to todoApp
* Update waspc and e2e tests
* Fix compiler warnings and rename function
* Rename mkError to mkParserError
* Remove redundant empty line
* Fix test warnings
* Fix formatting
* Update waspc.cabal with jsconfigs
* Minimize jsconfig.json files
* Add jsconfigs to waspc todoApp
* Update e2e tests
* Update e2e tests
* Update docs for new project structure
* Update todoApp example to new structure
* Update ItWaspsOnMyMachine
* Update thoughts
* Update Waspello to new structure
* Update Waspleau to new structure
* Update Realworld to new structure, fix warnings
* Fix directory tree watching on wasp start
* Implement review feedback
* Fix typo in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Fix typo in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Fix another typo in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Add src prefix to file path in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Remove env server file
* Apply suggestions from code review
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Address code review comments
* Fix incorrect path in docs
* Fix references to ext in docs
* Edit changelog and add migration guide
* Further update docs to new structure
* Update blogs about example apps to new structure
* Fix typo in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Update typo on frontpage
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Add missing src in docs
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Separate ext code to client and server
* Use skeleton in createNewProject and refactor
* Refactor Lib.hs to use ExceptT
* Fix formatting
* Pop up returns
* Extract liftIO and add a do block
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Address some review comments
* Add skeleton comment
* Extract common CommandError message
* Separate skeleton comment into two rows
* Move server and client dirs into src
* Simplify maybeToEither
* Further refactor Lib.hs
* Further simplify skeleton comment
* Add shared code directory to project structure
* Update e2e test inputs
* Update e2e test outputs
* Fix formatting
* Fix bug in compile function
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Change map to fmap in compile function
* Fix formatting
* Force git to include empty directories
* Remove extra empty line from .gitkeep files
* Add .jsconfig to enable go-to-definition
* Watch shared directory for changes
* Add final newline to jsconfigs
* Fix regular and e2e tests
* Update e2e tests
* Fix cli template packaging and update todoApp
* Add a shared function demo to todoApp
* Update waspc and e2e tests
* Fix compiler warnings and rename function
* Rename mkError to mkParserError
* Remove redundant empty line
* Fix test warnings
* Fix formatting
* Update waspc.cabal with jsconfigs
* Minimize jsconfig.json files
* Add jsconfigs to waspc todoApp
* Update e2e tests
* Update e2e tests
* Fix directory tree watching on wasp start
* Implement review feedback
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Separate ext code to client and server
* Use skeleton in createNewProject and refactor
* Refactor Lib.hs to use ExceptT
* Fix formatting
* Pop up returns
* Extract liftIO and add a do block
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
* Address some review comments
* Add skeleton comment
* Extract common CommandError message
* Separate skeleton comment into two rows
* Move server and client dirs into src
* Simplify maybeToEither
* Further refactor Lib.hs
* Further simplify skeleton comment
* Add shared code directory to project structure
* Update e2e test inputs
* Update e2e test outputs
* Fix formatting
* Fix bug in compile function
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Change map to fmap in compile function
* Fix formatting
* Force git to include empty directories
* Remove extra empty line from .gitkeep files
* Watch shared directory for changes
* Fix regular and e2e tests
* Fix cli template packaging and update todoApp
* Add a shared function demo to todoApp
* Update waspc and e2e tests
* Fix compiler warnings and rename function
* Rename mkError to mkParserError
* Remove redundant empty line
* Fix test warnings
* Fix formatting
* Fix directory tree watching on wasp start
* Implement review feedback
Co-authored-by: Shayne Czyzewski <523636+shayneczyzewski@users.noreply.github.com>
Co-authored-by: Martin Šošić <Martinsos@users.noreply.github.com>
* Add wasp field to AppSpec.App
* Validate app.wasp.version in AppSpec.Valid
* Add app.wasp.version field on .wasp file generated by CreateNewProject
* Add app.wasp.version to .wasp files of e2e tests
* Add app.wasp.version to examples' .wasp files
* Add app.wasp.version to docs
* Change waspc version from 0.6.0.0 to 0.6.0
* Change app.wasp.version validation to use regular semver
* Format code
* Refactor app.wasp.version validation
* Refactor app.wasp.version validation
* Update supported app.wasp.version format in docs
* Add TODO to validateWaspVersion
* Refactor app.wasp.version using toEnum
* Create Wasp.Version module with waspVersion constant
* Fix parseWaspVersionRange regex
Fixed:
- The regex wasn't checking the string *starts* with ^.
- The . symbols were not escaped.
- The $ token is not specified as supported in the regex-tdfa docs.
\' is used instead.
* Add comment explaining wasp version validation restrictions
* Use Wasp.Version.waspVersion instead of Paths_wasp.version
* Add trailing slash note in deploying document
* Remove trailing slash, if present in the wasp backend URL
* e2e-test for trailing slash fix
* e2e test for trailing slash in wasp backend url
* Fix e2e-tests checksums
Co-authored-by: Filip Sodić <filip.sodic@gmail.com>