![]() - Added: - core: - Added the `Path.combine()` method - The `Path.join()` method is now variadic - The `Path.length()` now takes an parameter to include move operations in the length calculation - lumina: - Initial release - lumira: - Initial release - plugin-annotations: - The `title` macro now takes a `notes` and `classes.notes` as its config, allowing you to add notes - The `classes.cutlist` config is removed from the title plugin, cutlist info is now included as notes - plugin-i18n: - This plugin now supports translation of nested arrays of strings, giving you more flexibility to concatenate translated parts of strings - react-components: - This Pattern component now supports translation of nested arrays of strings, giving you more flexibility to concatenate translated parts of strings - sandy: - Added a new *panels* option - tristan: - Inital release - Deprecated: - core: - Calling `Path.join` with a second parameter to indicate that the resulting paths most be closed is now deprecated and will be removed in FreeSewing v4. - Fixed: - brian: - Take biceps ease into account when calculating armhole depth - carlton: - Fixed a stray seam allowance path on the collar - charlie: - The back pocket welt (4) and front pocket facing (8) incorrectly indicated to cut 2 instead of 4 in the cutlist. Fixes #5791 - hugo: - Fix issue that crashed the design when complete is off. Fixes #6006 - Base pocket opening on pocket height, rather than width of the garment. Fixes #6004 - Removed: - plugin-annotations: - The `classes.cutlist` config is removed from the title plugin, cutlist info is now included as notes Shout-out to @woutervdub and @benjamesben for their many contributotions to this v3.2 release 🙏 |
||
---|---|---|
.. | ||
openapi | ||
prisma | ||
public | ||
scripts | ||
src | ||
tests | ||
.gitignore | ||
build.mjs | ||
Dockerfile | ||
example.env | ||
local-config.mjs | ||
nodemon.json | ||
package.json | ||
README.md | ||
test.sh |
FreeSewing backend
This is a work in process to port the v2 backend to a new v3 backend.
It will be based on Express using Prisma with a SQLite database. Watch this space.
Permission levels
There are two different models to authenticate, as user, or with an API key.
The API keys have more granularity, their permission levels are:
0
: No permissions. Can only login but not do anything (used for testing)1
: Read access to own people/patterns data2
: Read access to all account data3
: Write access to own people/pattern data4
: Write access to all own account data (this is theuser
role)5
: Read access to people/pattern data of all users (this is thebughunter
role)6
: Read access to all account data of all users7
: Read access to all account data of all users + Write access for specific support functions (this is thesupport
role)8
: Write access to all account data of all users (this is theadmin
role)
User roles map to these permission levels as such:
user
: 4 (this is everybody)bughunter
: 5 (a small group of people, less than 10)support
: 7 (a small number of trusted collaborators, less than 5)admin
: 8 (joost)
When using an API key above level 4, you need the following roles:
- 5: Requires bughunter, support, or admin
- 6,7,: Requires support or admin
- 8: Requires admin