Drag-resize module
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 35/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Calme
- Stack technique
- typescript
- Domaine
- frontend
Piste de recherche
Start with parent issue #25 and blocked issue #28 to understand the intended module API before taking this on. Then map the acceptance criteria to the controller and validation responsibilities described here. Done means pointer input produces logical-minute updates, constraints are checked before commit, snapping is configurable, and the module can be removed without leaving its code in the bundle.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Parent
https://github.com/TanStack/time/issues/25
What to build
Extract drag and resize interaction into a proper module. The module translates pointer events into logical time deltas (minutes), validates the proposed change against availability and dependency constraints, and commits atomically on release.
The kernel never sees pixels. The consumer supplies a `pxPerMinute` (or equivalent) to the `ResizeController` at the adapter edge; the controller converts pointer delta → `deltaMinutes` and hands only logical values to the pipeline.
Acceptance criteria
- `DragResizeModule` plugs into the kernel via the module API (#28)
- `createResizeController()` returns a controller that accepts pointer events and emits `deltaMinutes` updates
- `validateResize()` returns `{ valid, error? }` in logical units (minutes, not pixels) before the write commits
- Resize operations respect availability windows and dependency constraints when those modules are also registered
- Snapping (round to nearest N minutes) is configurable on the controller, not hardcoded
- A resize that crosses a dependency constraint is blocked with a descriptive error
- Removing the `DragResizeModule` causes drag-resize code to tree-shake out of the bundle
Blocked by
- Langage dominant
- TypeScript
- Étoiles
- 620
- Forks
- 6
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de TanStack/time
-
Dependency DashboardOuverte
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 5/100
-
Client/server Data StrategyOuverteenhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 25/100
-
enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 32/100
-
enhancement
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
-
enhancement
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
Toutes les issues de TanStack/time
Issues similaires
-
area: frontend priority: normal
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 85/100
formbricks/formbricks#9918 ·
Les mainteneurs répondent en général sous 1 jour
-
Chat: Resize question overlayOuverteenhancement
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
thecodacus/pithagoras#364 ·
Les mainteneurs répondent en général sous 1 jour
-
TestAutonomousStop_ReportsObservedState fails under host load: 1s wall-clock ceiling vs 250ms cycleOuvertetype:bug
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
nightgauge/nightgauge#2909 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
Les mainteneurs répondent en général sous 1 jour