* Handle matrixes as args
This was the less intrusive way I figure out.
We may need to refactor this parseArgs properly in order to handle this types
* App/Graphql: Send filter query as proper JSON instead of escaped string
* Make panel variables readonly when no-editing
Prevents Geometry type mismatch error
* Fix proper way to parse args
* Only allow null filter operators for fields with "conceal" special
* Add tests
* Use GraphQLHash type for fields with "conceal" special
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Utils to compress/decompress data
Gzip was chosen because we want smaller data but quick algorithm since this will be ran for every request
* Compress system cache
* Decompress system cache
* Set/Get compressed cache for individual requests
* Switch from gzip to snappy, use json compression too
* Fix cache exp set/get
* Remove unused import
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Initial hacky fix for invalid field formats
* preventing parseFields from recursively parsing fields for non applicable relations
* removed unneeded parsefields exception
* Change notifications timestamp to nullable
* check special flags that generate data
* create and use new updateType helper
* update migration identifier
* use changeToType() where applicable
* fix method name used in new migration
* bump identifier again
* Remove changeToString
* update migrations
* add conditional text/string type for compatibility
* bump migration identifier
* bump
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
Co-authored-by: ian <licitdev@gmail.com>
* Confirm issue with test case
* Generate schema for json field types when nested fields are specified
* Return untyped schema for json fields
* Fix linter warnings
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* Clean up extensions build logging
* Expose defineOperation* helpers through extensions-sdk
* Add support for scaffolding operation extensions
* Refactor extension type constants
* Improve extension-related tests in shared
* Improve wording when scaffolding extension fails due to wrong type
* Make spinner text bold when scaffolding extensions
* Add support for building operation extensions
* Fix operations tile name
* Make extension config type spacing consistent
Co-authored-by: Rijk van Zanten <rijkvanzanten@me.com>
* Process relational collection's permissions in functions
* Fix deep usage of functions in GraphQL
* Add unit test for updated SQL query with permissions
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
* v-image and "lazy load" working
* fixed vars
* all the other img uses
* No longer require access token in url for files
* Add lazy loading and size limits
* Rename map-component source prop
* Fix lint warning
* Update app/src/views/public/public-view.vue
Co-authored-by: ian <licitdev@gmail.com>
* Fix lint
* Fix missing file type icon
* Fix null imageInfo error
* Use video.js for media playback
* Fix .js file display
* Update package-lock.json
* Update package-lock.json
* update package.json
* Update pnpm-lock.yaml
* Remove unrelated addition on VDatePicker
* Remove folder abstraction
* Use image data based aspect ratio on preview
* Base app rate throttle on API rate limit config
* Configure app rate limit throttle based on api config
* Convert v-image to script[setup]
* Convert v-media to script[setup]
* Cleanup v-media
* Remove unneeded addTokenToUrl usages
* Remove video.js
It doesn't do authorization headers for mp4/mp3, so it's pointless
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>
Co-authored-by: ian <licitdev@gmail.com>