1082 Commits

Author SHA1 Message Date
Nathan Vasse
dd48a9836e (front) add react-hook-form
This simple form library will be used, firstly for the create folder
form.
2025-03-11 16:07:49 +01:00
Nathan Vasse
2e394e0b47 🔧(docker) add external port to postresql
We need to be able to access this database from our localhost.
2025-03-11 16:07:49 +01:00
Nathan Vasse
91740d7196 🗑️(front) cleanup debug code
This coded is not needed anymore, I need to reach the commit body
min length.
2025-03-11 15:12:35 +01:00
Nathan Vasse
7bcf0c6fd0 (front) add selected item action bar
This bar is displayed when the user has selected at least one item.
2025-03-11 15:12:35 +01:00
Nathan Vasse
b7cf21de87 (front) add actions on top of tree sidebar
Those buttons will soon be plugged with the backend.
2025-03-11 15:12:35 +01:00
Manuel Raynaud
7a93eef10e (back) allow to filter items by their type
We want to filter on the list and children views the items by their
type.
2025-03-07 13:31:15 +01:00
Manuel Raynaud
399966afe6 ♻️(back) refactor item list view
Many manipulation where made in the filter_queryset method dedicated to
the list view. We decided to create our own list method instead of using
the one provided by drf to make our own cook and filtering the viewset
only here instead in all actions.
2025-03-07 13:31:15 +01:00
Manuel Raynaud
7b247c4e9f 🔒️(back) restrict access to favorite_list endpoint
favorite_list endpoint is accessible to anonymous user. This lead to an
error 500. This endpoint should be accessible only to authenticated
users.
2025-03-07 09:55:01 +01:00
Manuel Raynaud
3ffe6cfffa ♻️(back) merge migrations with ltree work
We want to merge all the existings migrations. We don't want to maintain
migration with code related to django-treebeard and there is no need to
keep the migration between the two libraries.
2025-03-06 18:00:49 +01:00
Nathan Vasse
5a10ed4bf9 (front) add basic Explorer with row selection
At this point we are able to render folders and files, a basic breadcrumbs,
also a displayMode on the Explorer. Row selection works with simple click,
cmd click, shift click and also with region selection.
2025-03-06 10:26:11 +01:00
Nathan Vasse
e8203cf785 (front) add working language picker
This picker work and change the current language.
2025-03-06 10:26:11 +01:00
Nathan Vasse
2270a9d803 (front) setup ui kit layout
Those layouts will handle various screens.
2025-03-06 10:26:11 +01:00
Manuel Raynaud
1fb11f57c5 ♻️(back) finetune save usage in internal Item model
In the Item model we are calling the save method to update the object
itself in database. In that place we exactly know what is updated so we
can tell to the save method what are the fields to update using the
`update_fileds` parameter.
2025-03-04 16:17:52 +01:00
Manuel Raynaud
54943a2038 📌(back) remove usage of django-ltree fork
During refactor from django-treebeard to django-ltree we made a fork of
django-ltree in order to make a fix on it we need. This fix has been
merged into the initial project, we have to reuse it now.
2025-03-04 10:05:33 +01:00
Manuel Raynaud
7c25882bbb (back) implement move feature using ltree
The move feature was disabled when we refactor the code base to use the
ltree postgres extension. This feature has been fully implemented with
ltree now.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
a93bdd50ff ♻️(back) use internal reference to the model in the model itself
When we need to create a new queryset inside the model itself, we wnat
to use self._meta.model.objects instead of Item.objects for example.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
02fb88f4ed ️(back) save ancestors link_reach and link_role to compute abilities
When the abilities are computes, each ancestors link_reach and link_role
are fetch. We can save several queries by saving them earlier in the
view and pass them to the model by adding them to the serializer
context.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
c7b90ee8a7 (back) create an item tree view
We want to get a tree view for a given item. We want the tree from the
highest readable ancestor to the given tree and pick every siblings from
all the level crossed.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
8a76110627 (back) add a utility to transform an item flat list to a nested
We need to represent a nested list of items. For that we transform a
flat list into a nested one.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
82d43046c0 ️(backend) manage numchild in database instead of cache
The number of children and the number of folder for a given item was
computed if not in cache. We decided to store it in database and
maintain it when an item is created or deleted.
2025-03-04 09:52:24 +01:00
Manuel Raynaud
44ef464e22 ♻️(back) migrate from django_treebeard to native postgres ltree
Django has a native extension able to manage records in a hierchical way
combined with an index allowing to have high performance when querying
the database. The django_ltree lib is used, it adds some helper but is
really lightweight
2025-03-04 09:52:24 +01:00
Nathan Vasse
4e3cd532fd 🏗️(front) reorganise folder into features
After a quick discussion we decide to normalize the folder organization
into this one.
2025-02-25 16:25:57 +01:00
Nathan Vasse
35e101a185 🏗️(front) add driver pattern and react-query
We want to be able to switch between the underlying data source of
the file system. The driver pattern allows to do that.
2025-02-25 16:25:57 +01:00
Nathan Vasse
8897d366f7 🔧(front) add ui-kit as live dependency
We want to be able to use the local package in order to make quick
changes during the development phase.
2025-02-24 16:03:09 +01:00
Nathan Vasse
ed66c433bf 🏗️(frontend) setup frontend architecture
This commit setups the directory architecture and basic auth, layout
scaffolding for the frontend for it to be ready for various uses.
2025-02-24 16:03:09 +01:00
Nathan Vasse
67a94a6fb7 🔧(keycloak) fix broken keycloak
Keycloak was not properly setup, so the frontend could not use it
to login.
2025-02-24 16:03:09 +01:00
Manuel Raynaud
cc65497f18 Merge pull request #1 from suitenumerique/core_project
(back) add first backend version
2025-02-11 15:04:15 +01:00
Manuel Raynaud
bc93b4cc3b (back) check title uniqueness in the same path
We want to check if a title is already in used in the same path. Like
for a file system, we don't want to allow twice the same title.
2025-02-11 14:57:09 +01:00
Manuel Raynaud
7eed577278 (back) add first backend version
The first backend version is able to manage items object and their
lifecycle
2025-02-11 14:57:09 +01:00
Manuel Raynaud
bbe6e06524 📝(reame) complete the readme with minimalist informations
Complete the readme with information needed to bootstrap the project
2025-02-07 17:06:19 +01:00
Manuel Raynaud
2607d77153 🎉(core) shape of the project
Add all files we need to start the project. Only the `src` repository is
missing and will be added later by additional pull requests.
2025-01-29 17:08:23 +01:00
Manuel Raynaud
3fe656bc91 🎉(init) initialize drive project 2025-01-29 09:59:13 +01:00