@cadriciel/ui 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cadriciel/ui",
3
- "version": "0.5.0",
3
+ "version": "0.6.0",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^21.2.0",
6
6
  "@angular/core": "^21.2.0",
@@ -6751,6 +6751,17 @@ interface CadPlanTask {
6751
6751
  duration?: string | null;
6752
6752
  /** Jalon : instant sans durée. */
6753
6753
  milestone?: boolean;
6754
+ /**
6755
+ * Événement « journée entière » : il n'a ni heure de début ni heure de fin.
6756
+ *
6757
+ * Un calendrier ne peut pas le deviner — une réunion de 9 h à 18 h et un jour de congé ont
6758
+ * les mêmes bornes et se rendent pourtant à des endroits opposés : la première dans la
6759
+ * grille horaire, le second dans le bandeau au-dessus. Sans ce champ il faudrait inventer
6760
+ * une convention (« ça commence à minuit, donc c'est la journée »), et une réunion de nuit
6761
+ * la ferait mentir. Ajouté le 22/08/2026 pour `cad-calendar` ; inoffensif pour les autres
6762
+ * vues, où l'événement occupe simplement toute la journée.
6763
+ */
6764
+ allDay?: boolean;
6754
6765
  /** Colonne du taskboard. */
6755
6766
  bucket?: string | null;
6756
6767
  /** Rang FRACTIONNAIRE dans sa colonne / sa fratrie. Voir `cadRankBetween()`. */
@@ -6808,6 +6819,8 @@ interface CadPlannedTask {
6808
6819
  start: Date | null;
6809
6820
  end: Date | null;
6810
6821
  milestone: boolean;
6822
+ /** Journée entière : rendu dans le bandeau, jamais dans la grille horaire. */
6823
+ allDay: boolean;
6811
6824
  bucket: string | null;
6812
6825
  rank: string;
6813
6826
  assignments: Required<CadPlanAssignment>[];
@@ -7121,6 +7134,244 @@ declare function cadFindLinkCycle(links: readonly CadPlannedLink[]): string[];
7121
7134
  /** Tâches qu'aucune vue temporelle ne sait placer — la zone « non planifié », jamais le silence. */
7122
7135
  declare const cadUnscheduled: (plan: CadNormalizedPlan) => CadPlannedTask[];
7123
7136
 
7137
+ type CadRRuleFreq = 'DAILY' | 'WEEKLY' | 'MONTHLY' | 'YEARLY';
7138
+ interface CadRRule {
7139
+ freq: CadRRuleFreq;
7140
+ interval: number;
7141
+ /** Jours de la semaine visés (0 = dimanche). `null` = celui de la date de départ. */
7142
+ byday: number[] | null;
7143
+ /** Quantièmes visés en mensuel. `null` = celui de la date de départ. */
7144
+ bymonthday: number[] | null;
7145
+ count: number | null;
7146
+ until: Date | null;
7147
+ /** Parties reconnues mais NON appliquées : on les nomme au lieu de les taire. */
7148
+ ignore: string[];
7149
+ }
7150
+ /**
7151
+ * Analyse une chaîne `RRULE`. Rend `null` si elle est inexploitable — jamais une règle
7152
+ * approximative : mieux vaut un événement unique qu'une série fausse.
7153
+ */
7154
+ declare function cadParseRRule(entree: string | null | undefined): CadRRule | null;
7155
+ /**
7156
+ * Une occurrence projetée.
7157
+ *
7158
+ * `id` est COMPOSITE (`t-101@2026-09-15T09:00`) et c'est structurant : sans lui, la sélection
7159
+ * et le glisser perdent la trace dès que la série bouge, parce que toutes les occurrences
7160
+ * partageraient l'identifiant de la tâche mère.
7161
+ */
7162
+ interface CadOccurrence {
7163
+ id: string;
7164
+ taskId: string;
7165
+ start: Date;
7166
+ end: Date;
7167
+ allDay: boolean;
7168
+ /** Vrai si elle vient d'une règle, faux si c'est un événement simple ou une exception. */
7169
+ recurring: boolean;
7170
+ /** Vrai si une occurrence modifiée a REMPLACÉ celle qu'aurait produite la règle. */
7171
+ overridden: boolean;
7172
+ task: CadPlannedTask;
7173
+ }
7174
+ /** Anomalie rencontrée pendant le dépliage. Jamais tue : une vue peut la montrer. */
7175
+ interface CadRecurrenceIssue {
7176
+ taskId: string;
7177
+ code: 'rrule-illisible' | 'rrule-partielle' | 'sans-date' | 'plafond-atteint';
7178
+ detail?: string;
7179
+ }
7180
+ interface CadExpandResult {
7181
+ occurrences: CadOccurrence[];
7182
+ issues: CadRecurrenceIssue[];
7183
+ }
7184
+ declare function memeJour(a: Date, b: Date): boolean;
7185
+ /**
7186
+ * Déplie les tâches sur la fenêtre `[du, au]`.
7187
+ *
7188
+ * TROIS RÈGLES, dans cet ordre :
7189
+ * ① une tâche sans règle donne une occurrence unique, si elle croise la fenêtre ;
7190
+ * ② une tâche avec règle est projetée, `exdates` retirées ;
7191
+ * ③ une occurrence MODIFIÉE (`masterId` + `recurrenceId`) REMPLACE celle que la règle aurait
7192
+ * produite à cette date — convention iCalendar. Sans ce remplacement on afficherait les
7193
+ * deux, et l'utilisateur verrait sa modification en double au lieu de la voir appliquée.
7194
+ */
7195
+ declare function cadExpandOccurrences(taches: readonly CadPlannedTask[], du: Date, au: Date): CadExpandResult;
7196
+ declare function joursDansMois(annee: number, mois: number): number;
7197
+ /** Lundi de la semaine de `d`. */
7198
+ declare function debutSemaine(d: Date): Date;
7199
+ declare const CAD_RECURRENCE_INTERNE: {
7200
+ debutSemaine: typeof debutSemaine;
7201
+ joursDansMois: typeof joursDansMois;
7202
+ memeJour: typeof memeJour;
7203
+ JOUR_MS: number;
7204
+ };
7205
+
7206
+ /**
7207
+ * Mise en page d'un calendrier — logique PURE, sans DOM, donc testable seule.
7208
+ *
7209
+ * Trois calculs, et ce sont les trois endroits où un calendrier se trompe :
7210
+ * ① la grille du mois (combien de rangées, quels jours débordent) ;
7211
+ * ② les BANDEAUX multi-jours, continus à travers une rangée de semaine ;
7212
+ * ③ le placement côte à côte des événements horodatés d'une journée.
7213
+ *
7214
+ * BORNE DE FIN : dans cette bibliothèque, `end` est INCLUSIVE pour un événement journée
7215
+ * entière — « congés du 21 au 25 » couvre le 25. La RFC 5545 la veut exclusive (DTEND au 26).
7216
+ * On diverge SCIEMMENT : c'est ce qu'un humain saisit, c'est ce que font déjà le gantt et le
7217
+ * scheduler pour une tâche qui « finit le 25 », et mélanger les deux conventions en silence
7218
+ * est la première cause d'erreur d'un jour dans un calendrier. Un import iCalendar devra donc
7219
+ * retrancher un jour à DTEND — c'est le travail de l'import, pas celui de la vue.
7220
+ */
7221
+ /** Numéro de jour absolu, insensible au fuseau et à l'heure d'été. */
7222
+ declare function cadNumeroJour(d: Date): number;
7223
+ /** Minuit local du jour de `d`. */
7224
+ declare function cadMinuit(d: Date): Date;
7225
+ /** Début de la semaine contenant `d`. `premierJour` : 1 = lundi (défaut), 0 = dimanche. */
7226
+ declare function cadDebutSemaine(d: Date, premierJour?: number): Date;
7227
+ interface CadMonthGrid {
7228
+ /** Premier jour affiché — souvent dans le mois précédent. */
7229
+ debut: Date;
7230
+ /** Rangées de 7 jours. 5 ou 6 selon le mois : on ne force JAMAIS 6. */
7231
+ semaines: Date[][];
7232
+ /** Mois de référence (0-11), pour distinguer les jours qui débordent. */
7233
+ mois: number;
7234
+ annee: number;
7235
+ }
7236
+ /**
7237
+ * Grille du mois contenant `ancre`.
7238
+ *
7239
+ * On rend 5 OU 6 rangées, selon ce que le mois demande — jamais un nombre fixe. Forcer 6
7240
+ * rangées laisse une semaine entière vide neuf mois sur douze ; en forcer 5 tronque les mois
7241
+ * de 31 jours qui commencent un samedi. La hauteur de la vue s'adapte, pas la vérité.
7242
+ */
7243
+ declare function cadMonthGrid(ancre: Date, premierJour?: number): CadMonthGrid;
7244
+ /**
7245
+ * Un bandeau : une occurrence multi-jours projetée sur UNE rangée de semaine.
7246
+ *
7247
+ * `continueAvant` / `continueApres` sont indispensables : sans eux, un congé de trois semaines
7248
+ * apparaîtrait comme trois congés d'une semaine. La vue doit pouvoir dire « ça déborde ».
7249
+ */
7250
+ interface CadBand {
7251
+ occurrence: CadOccurrence;
7252
+ /** Colonnes INCLUSIVES dans la rangée, 0..6. */
7253
+ colDebut: number;
7254
+ colFin: number;
7255
+ /** Voie d'empilement, 0 en haut. */
7256
+ voie: number;
7257
+ continueAvant: boolean;
7258
+ continueApres: boolean;
7259
+ }
7260
+ interface CadBandRow {
7261
+ bandes: CadBand[];
7262
+ /** Nombre de voies occupées : la rangée doit réserver cette hauteur. */
7263
+ voies: number;
7264
+ }
7265
+ /** Une occurrence va au bandeau si elle est journée entière OU si elle franchit un minuit. */
7266
+ declare function cadEstBandeau(o: CadOccurrence): boolean;
7267
+ /**
7268
+ * Range les bandeaux d'une rangée de semaine en voies.
7269
+ *
7270
+ * Le tri place les plus LONGS en haut : sans lui, un événement d'un jour posé en voie 0 coupe
7271
+ * en deux la place d'un événement de cinq jours, qui doit alors descendre — et la rangée
7272
+ * devient un escalier illisible.
7273
+ */
7274
+ declare function cadWeekBands(occurrences: readonly CadOccurrence[], jours: readonly Date[]): CadBandRow;
7275
+ /** Un événement horodaté placé dans la colonne d'une journée. */
7276
+ interface CadSlot {
7277
+ occurrence: CadOccurrence;
7278
+ /** Position verticale, en fraction de la plage affichée (0 = haut, 1 = bas). */
7279
+ haut: number;
7280
+ hauteur: number;
7281
+ /** Voie et nombre de voies du GROUPE de chevauchement, pas de la journée entière. */
7282
+ voie: number;
7283
+ voies: number;
7284
+ }
7285
+ /**
7286
+ * Place les événements horodatés d'une journée, côte à côte quand ils se chevauchent.
7287
+ *
7288
+ * Le nombre de voies est celui du GROUPE de chevauchement, pas de la journée : deux réunions
7289
+ * qui se chevauchent le matin ne doivent pas rétrécir de moitié une réunion isolée de
7290
+ * l'après-midi. C'est l'erreur la plus courante des calendriers faits à la main.
7291
+ *
7292
+ * `plageDebut` / `plageFin` en minutes depuis minuit. Un événement hors plage est CONSERVÉ et
7293
+ * ramené au bord : le faire disparaître serait le mensonge le plus grave qu'une vue puisse
7294
+ * commettre.
7295
+ */
7296
+ declare function cadPackDay(occurrences: readonly CadOccurrence[], plageDebut?: number, plageFin?: number): CadSlot[];
7297
+
7298
+ /**
7299
+ * Projection d'un geste d'édition — logique PURE, sans DOM, donc testable seule.
7300
+ *
7301
+ * Un geste ne produit jamais une écriture : il produit une PROPOSITION de bornes, que le
7302
+ * composant émet en intention. C'est ce fichier qui répond à « l'utilisateur a bougé de 43
7303
+ * pixels vers le bas et de 1,2 colonne : qu'est-ce que ça veut dire en dates ? ».
7304
+ *
7305
+ * L'AIMANTAGE EST OBLIGATOIRE, pas cosmétique. Sans lui on crée des réunions de 9 h 07 à
7306
+ * 10 h 23 : personne n'a voulu ça, et la donnée devient impossible à relire.
7307
+ */
7308
+ type CadEditKind = 'create' | 'move' | 'resize-start' | 'resize-end';
7309
+ interface CadEditGeometry {
7310
+ /** Hauteur d'une heure, en pixels. */
7311
+ hauteurHeure: number;
7312
+ /** Largeur d'une colonne de jour, en pixels. 0 = pas de déplacement horizontal possible. */
7313
+ largeurJour: number;
7314
+ /** Pas d'aimantage, en minutes. */
7315
+ pas: number;
7316
+ /** Plage horaire affichée, en minutes depuis minuit. */
7317
+ plageDebut: number;
7318
+ plageFin: number;
7319
+ }
7320
+ interface CadEditBase {
7321
+ start: Date;
7322
+ end: Date;
7323
+ allDay: boolean;
7324
+ }
7325
+ /**
7326
+ * Projette un geste en nouvelles bornes.
7327
+ *
7328
+ * `dx` / `dy` sont les déplacements du pointeur en pixels depuis le début du geste.
7329
+ *
7330
+ * TROIS INVARIANTS, et chacun corrige une bêtise classique :
7331
+ * ① un déplacement CONSERVE la durée — sinon déplacer une réunion la rallonge en douce ;
7332
+ * ② un redimensionnement ne franchit JAMAIS l'autre bord : il s'arrête à un pas ;
7333
+ * ③ un événement journée entière ne bouge qu'en JOURS — lui donner une heure en le glissant
7334
+ * le ferait sortir du bandeau, ce que personne n'a demandé.
7335
+ */
7336
+ declare function cadProjeterEdition(kind: CadEditKind, base: CadEditBase, dx: number, dy: number, g: CadEditGeometry): {
7337
+ start: Date;
7338
+ end: Date;
7339
+ };
7340
+ /**
7341
+ * Bornes d'une création par glisser sur une plage vide.
7342
+ *
7343
+ * `y0` / `y1` sont les positions verticales dans la colonne, en pixels. On aimante les DEUX
7344
+ * bords, et on garantit au moins un pas : un clic sec ne doit pas produire un événement de
7345
+ * durée nulle, invisible et impossible à rattraper.
7346
+ */
7347
+ declare function cadProjeterCreation(jour: Date, y0: number, y1: number, g: CadEditGeometry): {
7348
+ start: Date;
7349
+ end: Date;
7350
+ };
7351
+ /**
7352
+ * Projection d'un geste dans une GRILLE DE MOIS — et ce n'est pas la même que dans une grille
7353
+ * horaire, contrairement à ce que j'avais écrit.
7354
+ *
7355
+ * Dans un mois, l'axe vertical n'est PAS le temps de la journée : c'est la semaine. Descendre
7356
+ * d'une rangée avance de SEPT JOURS, et l'heure ne bouge pas. Utiliser la projection horaire
7357
+ * ici donnait « +3 h » au lieu de « +7 jours » (mesuré au navigateur le 22/08/2026 : glisser
7358
+ * d'une rangée déplaçait un rendez-vous de 10 h 30 à 13 h 30 sans changer de date).
7359
+ *
7360
+ * Une seule règle à retenir : dans le mois, un geste ne déplace que des JOURS.
7361
+ */
7362
+ declare function cadProjeterMois(kind: CadEditKind, base: CadEditBase, dx: number, dy: number, g: {
7363
+ largeurJour: number;
7364
+ hauteurRangee: number;
7365
+ }): {
7366
+ start: Date;
7367
+ end: Date;
7368
+ };
7369
+ /** Déplacement au CLAVIER, exprimé dans la même unité qu'un geste : jours et pas. */
7370
+ declare function cadProjeterClavier(kind: CadEditKind, base: CadEditBase, jours: number, pas: number, g: CadEditGeometry): {
7371
+ start: Date;
7372
+ end: Date;
7373
+ };
7374
+
7124
7375
  /** Contenu d'une carte : `<ng-template cadTaskCard let-task let-bucket="bucket">`. */
7125
7376
  declare class CadTaskCardDirective {
7126
7377
  readonly tpl: TemplateRef<any>;
@@ -7258,5 +7509,227 @@ declare class CadTaskboardComponent {
7258
7509
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<CadTaskboardComponent, "cad-taskboard", never, { "plan": { "alias": "plan"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "groupBy": { "alias": "groupBy"; "required": false; "isSignal": true; }; "dragDisabled": { "alias": "dragDisabled"; "required": false; "isSignal": true; }; "collapsedKeys": { "alias": "collapsedKeys"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "dateFormat": { "alias": "dateFormat"; "required": false; "isSignal": true; }; "today": { "alias": "today"; "required": false; "isSignal": true; }; }, { "collapsedKeys": "collapsedKeysChange"; "taskMove": "taskMove"; "taskAssign": "taskAssign"; "taskOpen": "taskOpen"; "wipExceeded": "wipExceeded"; }, ["cardTpl", "rowTpl"], never, true, never>;
7259
7510
  }
7260
7511
 
7261
- export { BanGeocoder, CAD_BREAKPOINTS, CAD_CHART_PALETTE, CAD_COLOR_PRESETS, CAD_DEFAULT_BASEMAPS, CAD_DEFAULT_PRIORITY_BREAKPOINTS, CAD_DIALOG_DATA, CAD_FILTER_OPERATORS, CAD_GEOCODER, CAD_ICONS, CAD_ICONS_CEREMA, CAD_ICONS_CORE, CAD_ICONS_DATA, CAD_ICONS_FILES, CAD_ICONS_GEO, CAD_ICONS_SUBSET, CAD_ICONS_TOKEN, CAD_ICONS_UI, CAD_ICON_ALIASES, CAD_ICON_CATEGORIES, CAD_MAPLIBRE_CSS_URL, CAD_MAP_CHILD, CAD_MAP_DEFAULTS, CAD_MAP_GLOBAL_STYLES, CAD_MAP_GLYPHS, CAD_MAP_PALETTE, CAD_MASK_PRESETS, CAD_MOBILE_BREAKPOINT, CAD_SELECT_POSITIONS, CAD_SELECT_TRIGGER_STYLES, CAD_SHEET_DATA, CAD_SHELL, CAD_TOUCH_DENSITY, CadAccordionComponent, CadAccordionPanelComponent, CadAppShellComponent, CadAvatarComponent, CadAvatarGroupComponent, CadBadgeComponent, CadBadgeDirective, CadBlockDirective, CadBlockOverlayComponent, CadBlockUiComponent, CadBottomNavComponent, CadBreadcrumbComponent, CadBreadcrumbItemDirective, CadBreakpointService, CadButtonComponent, CadButtonGroupComponent, CadCaptionDirective, CadCardComponent, CadCardDirective, CadCardHeaderDirective, CadCarouselComponent, CadCarouselItemDirective, CadCascadeSelectComponent, CadCellTemplateDirective, CadCenterComponent, CadChartComponent, CadCheckboxComponent, CadChipComponent, CadClusterComponent, CadColDirective, CadColorpickerComponent, CadColumnComponent, CadComboComponent, CadConfirmContentComponent, CadConfirmDialogComponent, CadConfirmService, CadContainerComponent, CadDataviewComponent, CadDataviewGridDirective, CadDataviewListDirective, CadDatepickerComponent, CadDialogComponent, CadDialogContainerComponent, CadDialogFooterDirective, CadDialogHeaderDirective, CadDialogRef, CadDialogService, CadDividerComponent, CadDrawerComponent, CadEditFocusDirective, CadEditorTemplateDirective, CadEmptyDirective, CadFieldComponent, CadFieldsetComponent, CadFieldsetLegendDirective, CadFilterChipComponent, CadFilterTemplateDirective, CadGeocodingService, CadGridComponent, CadGroupFooterDirective, CadGroupHeaderDirective, CadHeaderTemplateDirective, CadIconComponent, CadIconRegistry, CadIfDirective, CadImageComponent, CadInplaceComponent, CadInplaceContentDirective, CadInplaceDisplayDirective, CadInputDirective, CadJsonEditorComponent, CadKeyFilterDirective, CadListEmptyDirective, CadListFooterDirective, CadListHeaderDirective, CadListItemDirective, CadListboxComponent, CadMapBasemapRegistry, CadMapBasemapsComponent, CadMapCardComponent, CadMapChromeComponent, CadMapComponent, CadMapDrawEngine, CadMapLayerComponent, CadMapLayerGroupComponent, CadMapLayerToggleComponent, CadMapLegendComponent, CadMapMenuComponent, CadMapPanelComponent, CadMapPanels, CadMapRailComponent, CadMapRailItemComponent, CadMapSearchComponent, CadMapSectionComponent, CadMaskDirective, CadMenuComponent, CadMenubarComponent, CadMessageComponent, CadMeterComponent, CadMeterLabelDirective, CadMultiselectComponent, CadNavDrawerComponent, CadNavDrawerFooterDirective, CadNavDrawerHeaderDirective, CadNumberComponent, CadOptionListComponent, CadOrderlistComponent, CadOrgNodeDirective, CadOrgchartComponent, CadOverlayBase, CadPaginatorComponent, CadPanelComponent, CadPanelContentDirective, CadPanelHeaderDirective, CadPanelHeadingDirective, CadPasswordComponent, CadPicklistComponent, CadPopoverComponent, CadProgressComponent, CadRadioComponent, CadRadioGroupComponent, CadRatingComponent, CadRowActionsDirective, CadRowCountDirective, CadRowExpansionDirective, CadScrollTopComponent, CadSegmentedComponent, CadSelectBase, CadSelectComponent, CadSelectEmptyDirective, CadSelectFooterDirective, CadSelectHeaderDirective, CadSelectItemDirective, CadSelectSelectedDirective, CadSheetContainerComponent, CadSheetRef, CadSheetService, CadSidebarComponent, CadSidebarPanelDirective, CadSkeletonComponent, CadSliderComponent, CadSpacerComponent, CadSpeedDialComponent, CadSpinnerComponent, CadSplitButtonComponent, CadSplitComponent, CadSplitterComponent, CadSplitterPanelComponent, CadStackComponent, CadStepComponent, CadStepperComponent, CadSwitchComponent, CadTabComponent, CadTabContentDirective, CadTabLabelDirective, CadTableBase, CadTableComponent, CadTableEdit, CadTableEditUi, CadTableFooterDirective, CadTablePanelComponent, CadTableResponsive, CadTableSelection, CadTableSticky, CadTableVirtual, CadTabsComponent, CadTagComponent, CadTaskCardDirective, CadTaskRowDirective, CadTaskboardComponent, CadTimeAxis, CadTimelineComponent, CadTimelineContentDirective, CadTimelineMarkerDirective, CadTimelineOppositeDirective, CadToastComponent, CadToastItemDirective, CadToastService, CadToggleButtonComponent, CadTooltipComponent, CadTooltipDirective, CadTreeAdapter, CadTreeComponent, CadTreeNodeDirective, CadTreeselectComponent, CadUploadComponent, CadUploadContentDirective, CadUploadEmptyDirective, CadUploadItemDirective, CadValueAccessor, CadWorkCalendar, MAPLIBRE_MIN_CSS, addDays, addMonths, addYears, cadAggregate, cadApplyColumnOrder, cadApplyMask, cadArea, cadAutosizeWidth, cadBasemapThumbnail, cadBoundsOf, cadCategories, cadCentroid, cadColorExpr, cadCompare, cadCompareRank, cadCurrentOperator, cadDefaultMatchMode, cadDistance, cadDownloadCsv, cadDurationToMinutes, cadFilterData, cadFilterKindOf, cadFilterOperators, cadFilterRows, cadFindLinkCycle, cadFmtArea, cadFmtLength, cadFormatCell, cadFormatColor, cadFormatDuration, cadFormatSize, cadFrenchHolidays, cadGap, cadGeoJSONStats, cadGeometryKinds, cadHeaderMenuItems, cadHighlightJson, cadHslToRgb, cadHsvToRgb, cadId, cadIsGroupKey, cadIsRank, cadJsonErrorPos, cadLegendFromStyle, cadLength, cadMapEstVivante, cadMapLayerOf, cadMapLayersOf, cadMatch, cadMoveColumn, cadMoveItems, cadNormalize, cadNormalizeOptions, cadNormalizePlan, cadNumberExpr, cadPadBounds, cadParseColor, cadParseDuration, cadParseResponsive, cadPlanHeader, cadPlanTicks, cadPropsTable, cadRankBetween, cadRankFirst, cadRankLast, cadRankSequence, cadResolve, cadResolveResponsive, cadResponsive, cadRgbToHsl, cadRgbToHsv, cadRingArea, cadRowKey, cadRowPredicate, cadSameValue, cadScaleNext, cadScaleStart, cadSortData, cadStartResize, cadStyleToExpressions, cadUnmask, cadUnscheduled, cadValidateGeoJSON, cadValueForOperator, cadWriteField, compareDay, daysInMonth, endOfMonth, ensureMaplibreCss, formatDate, isBetweenDay, isSameDay, isSameMonth, isValidDate, isoOf, isoWeek, loadChartJs, loadMaplibre, monthNames, pad2, parseIso, parseWithFormat, provideCadIcons, startOfDay, startOfMonth, toDate, weekdayNames };
7262
- export type { CadAggregate, CadAggregateFn, CadAggregates, CadBadgeSeverity, CadBasemap, CadBasemapKind, CadBottomNavItem, CadBounds, CadBreadcrumbItem, CadBreakpoint, CadCarouselResponsive, CadCellContext, CadCellEditState, CadChartClickEvent, CadChartType, CadColorFormat, CadColorSpec, CadColumnAlign, CadColumnDataType, CadColumnEditor, CadColumnFilterOption, CadColumnFilterType, CadColumnMenuActionEvent, CadColumnPinEvent, CadColumnReorderEvent, CadColumnResizeEvent, CadColumnToggleEvent, CadComboSource, CadConfirmOptions, CadDataviewLayout, CadDateMode, CadDateSelection, CadDateValue, CadDialogConfig, CadDialogPosition, CadDialogSize, CadDisplayRow, CadDrawMode, CadDrawOptions, CadDrawerPosition, CadDuration, CadDurationUnit, CadEditCompleteEvent, CadEditEvent, CadEditMode, CadEditorContext, CadFeatureEvent, CadFilterChangeEvent, CadFilterKind, CadFilterMatchMode, CadFilterMeta, CadFilterOperator, CadFilters, CadGap, CadGeoJSON, CadGeocodeOptions, CadGeocodeResult, CadGeocoder, CadGeometryKind, CadGroupBy, CadGroupContext, CadGroupInfo, CadGroupItem, CadHeaderMenuHost, CadHsva, CadLayerStyle, CadLazyLoadEvent, CadLegendItem, CadListGroup, CadListItem, CadListNormalizeOpts, CadListOption, CadListRow, CadLngLat, CadMapChild, CadMapChrome, CadMapClick, CadMapControl, CadMapLayerType, CadMapMenuConfig, CadMapMenuItem, CadMapMenuPanel, CadMapMenuRailItem, CadMapMenuSection, CadMapPosition, CadMapSide, CadMapView, CadMeasure, CadMenuItem, CadMenubarItem, CadMeterValue, CadNavDrawerItem, CadNavDrawerMode, CadNavDrawerRow, CadNodeEvent, CadNormalizePlanOptions, CadNormalizedPlan, CadNumberSpec, CadOptionItem, CadOrgNode, CadOverlayHandle, CadPageEvent, CadPaintSet, CadPinnedColumns, CadPlacement, CadPlan, CadPlanAssignment, CadPlanBucket, CadPlanCalendar, CadPlanCalendarException, CadPlanDateInput, CadPlanHeader, CadPlanHours, CadPlanIssue, CadPlanLink, CadPlanLinkType, CadPlanMarker, CadPlanResource, CadPlanScale, CadPlanTask, CadPlanTick, CadPlanTicksOptions, CadPlannedLink, CadPlannedTask, CadPriorityBreakpoints, CadProgressSeverity, CadRgba, CadRowEditEvent, CadRowEditState, CadRowEvent, CadRowReorderEvent, CadSegmentOption, CadSelectItemContext, CadSelectionMode, CadSelectionPropagation, CadSeverity, CadSheetConfig, CadSheetHeight, CadShellApi, CadSize, CadSliderMark, CadSliderSeverity, CadSliderValue, CadSortEvent, CadSortMeta, CadSortOrder, CadStepState, CadTableEditContext, CadTableEditUiContext, CadTablePanelTab, CadTableResponsiveMode, CadTableSelectionContext, CadTagSeverity, CadTaskAssignEvent, CadTaskMoveEvent, CadTaskOpenEvent, CadTaskboardGroupBy, CadTaskboardMode, CadTimelineAlign, CadToastAction, CadToastMessage, CadToastPosition, CadToastSeverity, CadTreeAdapterOptions, CadTreeNode, CadTreeNodeEvent, CadUploadFile, CadUploadHandlerEvent, CadUploadStatus, CadVariant, CadVirtualRange, CadWipEvent, MLExpression, MaplibreModule };
7512
+ type CadCalendarView = 'month' | 'week' | 'day' | 'agenda' | 'year' | 'auto';
7513
+ /** Un agenda superposable. La couleur vient de la DONNÉE : le composant n'en connaît aucun. */
7514
+ interface CadCalendarSource {
7515
+ id: string;
7516
+ label: string;
7517
+ /** Couleur CSS. Sans elle, l'accent de la bibliothèque. */
7518
+ color?: string;
7519
+ }
7520
+ interface CadCalendarEventEvent {
7521
+ occurrence: CadOccurrence;
7522
+ originalEvent: Event;
7523
+ }
7524
+ /** Intention d'écriture. Le composant ne l'applique pas : il la propose. */
7525
+ interface CadCalendarChangeEvent {
7526
+ occurrence: CadOccurrence;
7527
+ start: Date;
7528
+ end: Date;
7529
+ }
7530
+ interface CadCalendarCreateEvent {
7531
+ start: Date;
7532
+ end: Date;
7533
+ allDay: boolean;
7534
+ }
7535
+ interface CadCalendarDateEvent {
7536
+ date: Date;
7537
+ originalEvent: Event;
7538
+ }
7539
+ /**
7540
+ * `<cad-calendar [plan]="plan" [sources]="agendas" view="auto"/>`
7541
+ *
7542
+ * LA GRILLE EST LE TEMPS — c'est ce qui le distingue de `cad-scheduler`, dont les lignes sont
7543
+ * des ressources. On répond ici à « qu'est-ce qui se passe le 17 ? », là-bas à « qui est libre
7544
+ * jeudi ? ». Deux questions, deux composants, un seul document JSON.
7545
+ *
7546
+ * L'AGENDA D'UNE TÂCHE EST SON `bucket`. Pas un champ de plus : le taskboard rend les buckets
7547
+ * en colonnes, le calendrier les rend en agendas superposés. C'est le pari « une donnée,
7548
+ * plusieurs vues » qui paie, et ça évite d'inventer un `calendarId` que les autres vues
7549
+ * ignoreraient.
7550
+ *
7551
+ * LA RÉCURRENCE EST EN LECTURE SEULE (voir `planning.recurrence.ts`). On déplie une règle pour
7552
+ * l'afficher ; on n'édite pas de série. Une récurrence à moitié faite perd des modifications
7553
+ * sans le dire — déplier n'écrit rien, donc ne peut rien perdre.
7554
+ *
7555
+ * LE COMPOSANT N'ÉCRIT JAMAIS : il émet `eventClick`, `dateClick`, `rangeChange`. Masquer un
7556
+ * agenda est en revanche un état de PRÉSENTATION, donc un `model()` qu'il porte lui-même.
7557
+ */
7558
+ declare class CadCalendarComponent {
7559
+ protected readonly Math: Math;
7560
+ private readonly bp;
7561
+ private readonly hote;
7562
+ /**
7563
+ * Une colonne de jour, pour mesurer la largeur d'un pas horizontal.
7564
+ *
7565
+ * On MESURE au lieu de calculer : les colonnes sont en `minmax(0, 1fr)`, donc leur largeur
7566
+ * dépend du conteneur, de la barre de défilement et du zoom. Un calcul serait faux dès que
7567
+ * l'un des trois change, et le glisser dériverait d'un jour sans que rien ne le signale.
7568
+ */
7569
+ protected largeurColonne(): HTMLElement | null;
7570
+ readonly plan: _angular_core.InputSignal<CadPlan | null>;
7571
+ /** Agendas superposables. Un `bucket` sans source déclarée prend l'accent et son propre nom. */
7572
+ readonly sources: _angular_core.InputSignal<readonly CadCalendarSource[]>;
7573
+ /** Agendas décochés. État de PRÉSENTATION, donc porté ici et lié en deux sens. */
7574
+ readonly hidden: _angular_core.ModelSignal<ReadonlySet<string>>;
7575
+ readonly view: _angular_core.ModelSignal<CadCalendarView>;
7576
+ /** Date d'ancrage : le mois, la semaine ou le jour affiché. */
7577
+ readonly date: _angular_core.ModelSignal<Date>;
7578
+ /** 1 = lundi (défaut), 0 = dimanche. Touche le mois, la semaine ET le mini-calendrier. */
7579
+ readonly firstDay: _angular_core.InputSignal<0 | 1>;
7580
+ /** Plage horaire affichée, en heures. Réglable : 7 → 20 par défaut. */
7581
+ readonly dayStart: _angular_core.InputSignal<number>;
7582
+ readonly dayEnd: _angular_core.InputSignal<number>;
7583
+ readonly hourHeight: _angular_core.InputSignal<number>;
7584
+ /** Événements montrés dans une case de mois avant le « +N ». */
7585
+ readonly maxPerDay: _angular_core.InputSignal<number>;
7586
+ readonly workCalendar: _angular_core.InputSignal<CadWorkCalendar | null>;
7587
+ readonly today: _angular_core.InputSignal<Date | null>;
7588
+ readonly locale: _angular_core.InputSignal<string>;
7589
+ readonly emptyText: _angular_core.InputSignal<string>;
7590
+ readonly ariaLabel: _angular_core.InputSignal<string>;
7591
+ readonly showNow: _angular_core.InputSignalWithTransform<boolean, unknown>;
7592
+ readonly eventClick: _angular_core.OutputEmitterRef<CadCalendarEventEvent>;
7593
+ readonly dateClick: _angular_core.OutputEmitterRef<CadCalendarDateEvent>;
7594
+ /** La fenêtre affichée a changé : l'hôte peut aller chercher les données qui manquent. */
7595
+ readonly rangeChange: _angular_core.OutputEmitterRef<{
7596
+ start: Date;
7597
+ end: Date;
7598
+ }>;
7599
+ /** Gestes d'édition. `false` = vue en lecture, sans poignée ni curseur trompeur. */
7600
+ readonly editable: _angular_core.InputSignalWithTransform<boolean, unknown>;
7601
+ /** Aimantage, en minutes. Sans lui on crée des réunions de 9 h 07 que personne n'a voulues. */
7602
+ readonly snap: _angular_core.InputSignal<number>;
7603
+ readonly eventMove: _angular_core.OutputEmitterRef<CadCalendarChangeEvent>;
7604
+ readonly eventResize: _angular_core.OutputEmitterRef<CadCalendarChangeEvent>;
7605
+ readonly eventCreate: _angular_core.OutputEmitterRef<CadCalendarCreateEvent>;
7606
+ /** `auto` : agenda sous le seuil. Une grille de mois à 55 px par jour ne montre plus rien. */
7607
+ readonly vueEffective: _angular_core.Signal<"month" | "year" | "day" | "week" | "agenda">;
7608
+ private readonly normalise;
7609
+ private readonly ajd;
7610
+ protected readonly hauteurHeure: _angular_core.Signal<number>;
7611
+ protected readonly hauteurTotale: _angular_core.Signal<number>;
7612
+ protected readonly heuresAffichees: _angular_core.Signal<number[]>;
7613
+ /** Fenêtre couverte par la vue courante. Elle borne le dépliage : on ne projette pas l'infini. */
7614
+ private readonly fenetre;
7615
+ /**
7616
+ * CORRECTIF OPTIMISTE. Le composant n'écrit jamais dans le document — mais sans état local
7617
+ * le geste serait mort à l'écran : on relâche, et la barre revient à sa place en attendant
7618
+ * que l'hôte réponde. On garde donc les bornes proposées, ATTACHÉES au `plan` d'origine, et
7619
+ * on les abandonne dès qu'un nouveau `plan` arrive. Même patron que `cad-taskboard`.
7620
+ */
7621
+ private readonly patch;
7622
+ private readonly occurrences;
7623
+ /** Fantôme du geste en cours : il montre où l'on va tomber, APRÈS aimantage. */
7624
+ protected readonly fantome: _angular_core.WritableSignal<{
7625
+ jour: number;
7626
+ haut: number;
7627
+ hauteur: number;
7628
+ texte: string;
7629
+ } | null>;
7630
+ /** Anomalies de dépliage — jamais tues : l'hôte peut les montrer. */
7631
+ readonly issues: _angular_core.Signal<_cadriciel_ui.CadRecurrenceIssue[]>;
7632
+ private readonly parJour;
7633
+ protected readonly nomsJours: _angular_core.Signal<string[]>;
7634
+ protected readonly semaines: _angular_core.Signal<{
7635
+ voies: number;
7636
+ bandes: CadBand[];
7637
+ jours: {
7638
+ date: Date;
7639
+ cle: number;
7640
+ n: number;
7641
+ hors: boolean;
7642
+ auj: boolean;
7643
+ ferme: boolean;
7644
+ puces: CadOccurrence[];
7645
+ reste: number;
7646
+ }[];
7647
+ }[]>;
7648
+ protected readonly joursGrille: _angular_core.Signal<{
7649
+ date: Date;
7650
+ cle: number;
7651
+ n: number;
7652
+ jsem: string;
7653
+ auj: boolean;
7654
+ ferme: boolean;
7655
+ slots: CadSlot[];
7656
+ }[]>;
7657
+ protected readonly bandeGrille: _angular_core.Signal<_cadriciel_ui.CadBandRow>;
7658
+ protected readonly colonnes: _angular_core.Signal<string>;
7659
+ protected readonly maintenant: _angular_core.Signal<number | null>;
7660
+ protected readonly groupes: _angular_core.Signal<{
7661
+ cle: number;
7662
+ n: number;
7663
+ auj: boolean;
7664
+ jsem: string;
7665
+ evts: CadOccurrence[];
7666
+ }[]>;
7667
+ protected readonly miniMois: _angular_core.Signal<{
7668
+ mois: number;
7669
+ titre: string;
7670
+ jours: {
7671
+ date: Date;
7672
+ cle: number;
7673
+ n: number;
7674
+ hors: boolean;
7675
+ auj: boolean;
7676
+ charge: number;
7677
+ }[];
7678
+ }[]>;
7679
+ protected couleur(o: CadOccurrence): string;
7680
+ protected nomSource(o: CadOccurrence): string;
7681
+ protected heure(d: Date): string;
7682
+ protected titre(o: CadOccurrence): string;
7683
+ /**
7684
+ * Une occurrence de SÉRIE n'est pas manipulable tant que l'édition de récurrence n'existe
7685
+ * pas. Bouger l'une d'elles sans savoir si l'on modifie l'occurrence, la suite ou toute la
7686
+ * série perdrait la modification EN SILENCE. On le montre (hachures, curseur interdit,
7687
+ * motif au survol) plutôt que de laisser essayer et rater.
7688
+ */
7689
+ protected manipulable(o: CadOccurrence): boolean;
7690
+ protected motifVerrou(o: CadOccurrence): string;
7691
+ private geometrie;
7692
+ /**
7693
+ * Un glisser ne doit PAS produire aussi un clic.
7694
+ *
7695
+ * Le navigateur synthétise un `click` après tout `pointerup` sur un bouton : sans cette
7696
+ * garde, déplacer un événement émettait `eventMove` PUIS `eventClick`, et un hôte qui ouvre
7697
+ * une fiche au clic en ouvrirait une à chaque déplacement. Constaté au navigateur le
7698
+ * 22/08/2026 — un test unitaire ne l'aurait pas vu, le clic synthétique n'existe pas en jsdom.
7699
+ */
7700
+ private finGeste;
7701
+ private poser;
7702
+ /**
7703
+ * Un geste au pointeur. Le patron vient de `cadStartResize` de `cad-table` : on écoute sur
7704
+ * le DOCUMENT, pas sur l'élément — sinon le geste s'interrompt dès que le pointeur sort de
7705
+ * la barre, ce qui arrive tout le temps quand on déplace vite.
7706
+ */
7707
+ protected geste(kind: CadEditKind, o: CadOccurrence, ev: PointerEvent, colonne: HTMLElement | null): void;
7708
+ /**
7709
+ * Geste dans la GRILLE DE MOIS — projection différente, et c'est la correction du 22/08/2026.
7710
+ *
7711
+ * Ici l'axe vertical n'est pas l'heure : c'est la semaine. Une rangée vaut SEPT JOURS et
7712
+ * l'heure ne bouge pas. En passant par la projection horaire, glisser d'une rangée déplaçait
7713
+ * un rendez-vous de 10 h 30 à 13 h 30 sans changer de date — mesuré au navigateur, signalé
7714
+ * par SZU. On MESURE la rangée plutôt que de la calculer : sa hauteur dépend du nombre de
7715
+ * voies de bandeaux, donc elle change d'une semaine à l'autre.
7716
+ */
7717
+ protected gesteMois(kind: CadEditKind, o: CadOccurrence, ev: PointerEvent): void;
7718
+ /** Création par glisser sur une plage libre. Un clic sec produit un pas, jamais rien. */
7719
+ protected creer(jour: Date, ev: PointerEvent, colonne: HTMLElement): void;
7720
+ /**
7721
+ * Le CLAVIER passe par la MÊME projection que le pointeur — une seule logique de placement
7722
+ * à éprouver, et l'accessibilité n'est pas une reprise ultérieure qui dérive.
7723
+ * Ctrl/Cmd + flèches déplacent, Maj + flèches verticales redimensionnent par le bas.
7724
+ */
7725
+ protected clavier(o: CadOccurrence, e: KeyboardEvent): void;
7726
+ protected clicEvenement(occurrence: CadOccurrence, originalEvent: Event): void;
7727
+ /** Le « +N » et un jour de la vue année mènent au JOUR : c'est ce qu'on cherchait. */
7728
+ protected voirJour(date: Date, originalEvent: Event): void;
7729
+ constructor();
7730
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<CadCalendarComponent, never>;
7731
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<CadCalendarComponent, "cad-calendar", never, { "plan": { "alias": "plan"; "required": false; "isSignal": true; }; "sources": { "alias": "sources"; "required": false; "isSignal": true; }; "hidden": { "alias": "hidden"; "required": false; "isSignal": true; }; "view": { "alias": "view"; "required": false; "isSignal": true; }; "date": { "alias": "date"; "required": false; "isSignal": true; }; "firstDay": { "alias": "firstDay"; "required": false; "isSignal": true; }; "dayStart": { "alias": "dayStart"; "required": false; "isSignal": true; }; "dayEnd": { "alias": "dayEnd"; "required": false; "isSignal": true; }; "hourHeight": { "alias": "hourHeight"; "required": false; "isSignal": true; }; "maxPerDay": { "alias": "maxPerDay"; "required": false; "isSignal": true; }; "workCalendar": { "alias": "workCalendar"; "required": false; "isSignal": true; }; "today": { "alias": "today"; "required": false; "isSignal": true; }; "locale": { "alias": "locale"; "required": false; "isSignal": true; }; "emptyText": { "alias": "emptyText"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "showNow": { "alias": "showNow"; "required": false; "isSignal": true; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; "snap": { "alias": "snap"; "required": false; "isSignal": true; }; }, { "hidden": "hiddenChange"; "view": "viewChange"; "date": "dateChange"; "eventClick": "eventClick"; "dateClick": "dateClick"; "rangeChange": "rangeChange"; "eventMove": "eventMove"; "eventResize": "eventResize"; "eventCreate": "eventCreate"; }, never, never, true, never>;
7732
+ }
7733
+
7734
+ export { BanGeocoder, CAD_BREAKPOINTS, CAD_CHART_PALETTE, CAD_COLOR_PRESETS, CAD_DEFAULT_BASEMAPS, CAD_DEFAULT_PRIORITY_BREAKPOINTS, CAD_DIALOG_DATA, CAD_FILTER_OPERATORS, CAD_GEOCODER, CAD_ICONS, CAD_ICONS_CEREMA, CAD_ICONS_CORE, CAD_ICONS_DATA, CAD_ICONS_FILES, CAD_ICONS_GEO, CAD_ICONS_SUBSET, CAD_ICONS_TOKEN, CAD_ICONS_UI, CAD_ICON_ALIASES, CAD_ICON_CATEGORIES, CAD_MAPLIBRE_CSS_URL, CAD_MAP_CHILD, CAD_MAP_DEFAULTS, CAD_MAP_GLOBAL_STYLES, CAD_MAP_GLYPHS, CAD_MAP_PALETTE, CAD_MASK_PRESETS, CAD_MOBILE_BREAKPOINT, CAD_RECURRENCE_INTERNE, CAD_SELECT_POSITIONS, CAD_SELECT_TRIGGER_STYLES, CAD_SHEET_DATA, CAD_SHELL, CAD_TOUCH_DENSITY, CadAccordionComponent, CadAccordionPanelComponent, CadAppShellComponent, CadAvatarComponent, CadAvatarGroupComponent, CadBadgeComponent, CadBadgeDirective, CadBlockDirective, CadBlockOverlayComponent, CadBlockUiComponent, CadBottomNavComponent, CadBreadcrumbComponent, CadBreadcrumbItemDirective, CadBreakpointService, CadButtonComponent, CadButtonGroupComponent, CadCalendarComponent, CadCaptionDirective, CadCardComponent, CadCardDirective, CadCardHeaderDirective, CadCarouselComponent, CadCarouselItemDirective, CadCascadeSelectComponent, CadCellTemplateDirective, CadCenterComponent, CadChartComponent, CadCheckboxComponent, CadChipComponent, CadClusterComponent, CadColDirective, CadColorpickerComponent, CadColumnComponent, CadComboComponent, CadConfirmContentComponent, CadConfirmDialogComponent, CadConfirmService, CadContainerComponent, CadDataviewComponent, CadDataviewGridDirective, CadDataviewListDirective, CadDatepickerComponent, CadDialogComponent, CadDialogContainerComponent, CadDialogFooterDirective, CadDialogHeaderDirective, CadDialogRef, CadDialogService, CadDividerComponent, CadDrawerComponent, CadEditFocusDirective, CadEditorTemplateDirective, CadEmptyDirective, CadFieldComponent, CadFieldsetComponent, CadFieldsetLegendDirective, CadFilterChipComponent, CadFilterTemplateDirective, CadGeocodingService, CadGridComponent, CadGroupFooterDirective, CadGroupHeaderDirective, CadHeaderTemplateDirective, CadIconComponent, CadIconRegistry, CadIfDirective, CadImageComponent, CadInplaceComponent, CadInplaceContentDirective, CadInplaceDisplayDirective, CadInputDirective, CadJsonEditorComponent, CadKeyFilterDirective, CadListEmptyDirective, CadListFooterDirective, CadListHeaderDirective, CadListItemDirective, CadListboxComponent, CadMapBasemapRegistry, CadMapBasemapsComponent, CadMapCardComponent, CadMapChromeComponent, CadMapComponent, CadMapDrawEngine, CadMapLayerComponent, CadMapLayerGroupComponent, CadMapLayerToggleComponent, CadMapLegendComponent, CadMapMenuComponent, CadMapPanelComponent, CadMapPanels, CadMapRailComponent, CadMapRailItemComponent, CadMapSearchComponent, CadMapSectionComponent, CadMaskDirective, CadMenuComponent, CadMenubarComponent, CadMessageComponent, CadMeterComponent, CadMeterLabelDirective, CadMultiselectComponent, CadNavDrawerComponent, CadNavDrawerFooterDirective, CadNavDrawerHeaderDirective, CadNumberComponent, CadOptionListComponent, CadOrderlistComponent, CadOrgNodeDirective, CadOrgchartComponent, CadOverlayBase, CadPaginatorComponent, CadPanelComponent, CadPanelContentDirective, CadPanelHeaderDirective, CadPanelHeadingDirective, CadPasswordComponent, CadPicklistComponent, CadPopoverComponent, CadProgressComponent, CadRadioComponent, CadRadioGroupComponent, CadRatingComponent, CadRowActionsDirective, CadRowCountDirective, CadRowExpansionDirective, CadScrollTopComponent, CadSegmentedComponent, CadSelectBase, CadSelectComponent, CadSelectEmptyDirective, CadSelectFooterDirective, CadSelectHeaderDirective, CadSelectItemDirective, CadSelectSelectedDirective, CadSheetContainerComponent, CadSheetRef, CadSheetService, CadSidebarComponent, CadSidebarPanelDirective, CadSkeletonComponent, CadSliderComponent, CadSpacerComponent, CadSpeedDialComponent, CadSpinnerComponent, CadSplitButtonComponent, CadSplitComponent, CadSplitterComponent, CadSplitterPanelComponent, CadStackComponent, CadStepComponent, CadStepperComponent, CadSwitchComponent, CadTabComponent, CadTabContentDirective, CadTabLabelDirective, CadTableBase, CadTableComponent, CadTableEdit, CadTableEditUi, CadTableFooterDirective, CadTablePanelComponent, CadTableResponsive, CadTableSelection, CadTableSticky, CadTableVirtual, CadTabsComponent, CadTagComponent, CadTaskCardDirective, CadTaskRowDirective, CadTaskboardComponent, CadTimeAxis, CadTimelineComponent, CadTimelineContentDirective, CadTimelineMarkerDirective, CadTimelineOppositeDirective, CadToastComponent, CadToastItemDirective, CadToastService, CadToggleButtonComponent, CadTooltipComponent, CadTooltipDirective, CadTreeAdapter, CadTreeComponent, CadTreeNodeDirective, CadTreeselectComponent, CadUploadComponent, CadUploadContentDirective, CadUploadEmptyDirective, CadUploadItemDirective, CadValueAccessor, CadWorkCalendar, MAPLIBRE_MIN_CSS, addDays, addMonths, addYears, cadAggregate, cadApplyColumnOrder, cadApplyMask, cadArea, cadAutosizeWidth, cadBasemapThumbnail, cadBoundsOf, cadCategories, cadCentroid, cadColorExpr, cadCompare, cadCompareRank, cadCurrentOperator, cadDebutSemaine, cadDefaultMatchMode, cadDistance, cadDownloadCsv, cadDurationToMinutes, cadEstBandeau, cadExpandOccurrences, cadFilterData, cadFilterKindOf, cadFilterOperators, cadFilterRows, cadFindLinkCycle, cadFmtArea, cadFmtLength, cadFormatCell, cadFormatColor, cadFormatDuration, cadFormatSize, cadFrenchHolidays, cadGap, cadGeoJSONStats, cadGeometryKinds, cadHeaderMenuItems, cadHighlightJson, cadHslToRgb, cadHsvToRgb, cadId, cadIsGroupKey, cadIsRank, cadJsonErrorPos, cadLegendFromStyle, cadLength, cadMapEstVivante, cadMapLayerOf, cadMapLayersOf, cadMatch, cadMinuit, cadMonthGrid, cadMoveColumn, cadMoveItems, cadNormalize, cadNormalizeOptions, cadNormalizePlan, cadNumberExpr, cadNumeroJour, cadPackDay, cadPadBounds, cadParseColor, cadParseDuration, cadParseRRule, cadParseResponsive, cadPlanHeader, cadPlanTicks, cadProjeterClavier, cadProjeterCreation, cadProjeterEdition, cadProjeterMois, cadPropsTable, cadRankBetween, cadRankFirst, cadRankLast, cadRankSequence, cadResolve, cadResolveResponsive, cadResponsive, cadRgbToHsl, cadRgbToHsv, cadRingArea, cadRowKey, cadRowPredicate, cadSameValue, cadScaleNext, cadScaleStart, cadSortData, cadStartResize, cadStyleToExpressions, cadUnmask, cadUnscheduled, cadValidateGeoJSON, cadValueForOperator, cadWeekBands, cadWriteField, compareDay, daysInMonth, endOfMonth, ensureMaplibreCss, formatDate, isBetweenDay, isSameDay, isSameMonth, isValidDate, isoOf, isoWeek, loadChartJs, loadMaplibre, monthNames, pad2, parseIso, parseWithFormat, provideCadIcons, startOfDay, startOfMonth, toDate, weekdayNames };
7735
+ export type { CadAggregate, CadAggregateFn, CadAggregates, CadBadgeSeverity, CadBand, CadBandRow, CadBasemap, CadBasemapKind, CadBottomNavItem, CadBounds, CadBreadcrumbItem, CadBreakpoint, CadCalendarChangeEvent, CadCalendarCreateEvent, CadCalendarDateEvent, CadCalendarEventEvent, CadCalendarSource, CadCalendarView, CadCarouselResponsive, CadCellContext, CadCellEditState, CadChartClickEvent, CadChartType, CadColorFormat, CadColorSpec, CadColumnAlign, CadColumnDataType, CadColumnEditor, CadColumnFilterOption, CadColumnFilterType, CadColumnMenuActionEvent, CadColumnPinEvent, CadColumnReorderEvent, CadColumnResizeEvent, CadColumnToggleEvent, CadComboSource, CadConfirmOptions, CadDataviewLayout, CadDateMode, CadDateSelection, CadDateValue, CadDialogConfig, CadDialogPosition, CadDialogSize, CadDisplayRow, CadDrawMode, CadDrawOptions, CadDrawerPosition, CadDuration, CadDurationUnit, CadEditBase, CadEditCompleteEvent, CadEditEvent, CadEditGeometry, CadEditKind, CadEditMode, CadEditorContext, CadExpandResult, CadFeatureEvent, CadFilterChangeEvent, CadFilterKind, CadFilterMatchMode, CadFilterMeta, CadFilterOperator, CadFilters, CadGap, CadGeoJSON, CadGeocodeOptions, CadGeocodeResult, CadGeocoder, CadGeometryKind, CadGroupBy, CadGroupContext, CadGroupInfo, CadGroupItem, CadHeaderMenuHost, CadHsva, CadLayerStyle, CadLazyLoadEvent, CadLegendItem, CadListGroup, CadListItem, CadListNormalizeOpts, CadListOption, CadListRow, CadLngLat, CadMapChild, CadMapChrome, CadMapClick, CadMapControl, CadMapLayerType, CadMapMenuConfig, CadMapMenuItem, CadMapMenuPanel, CadMapMenuRailItem, CadMapMenuSection, CadMapPosition, CadMapSide, CadMapView, CadMeasure, CadMenuItem, CadMenubarItem, CadMeterValue, CadMonthGrid, CadNavDrawerItem, CadNavDrawerMode, CadNavDrawerRow, CadNodeEvent, CadNormalizePlanOptions, CadNormalizedPlan, CadNumberSpec, CadOccurrence, CadOptionItem, CadOrgNode, CadOverlayHandle, CadPageEvent, CadPaintSet, CadPinnedColumns, CadPlacement, CadPlan, CadPlanAssignment, CadPlanBucket, CadPlanCalendar, CadPlanCalendarException, CadPlanDateInput, CadPlanHeader, CadPlanHours, CadPlanIssue, CadPlanLink, CadPlanLinkType, CadPlanMarker, CadPlanResource, CadPlanScale, CadPlanTask, CadPlanTick, CadPlanTicksOptions, CadPlannedLink, CadPlannedTask, CadPriorityBreakpoints, CadProgressSeverity, CadRRule, CadRRuleFreq, CadRecurrenceIssue, CadRgba, CadRowEditEvent, CadRowEditState, CadRowEvent, CadRowReorderEvent, CadSegmentOption, CadSelectItemContext, CadSelectionMode, CadSelectionPropagation, CadSeverity, CadSheetConfig, CadSheetHeight, CadShellApi, CadSize, CadSliderMark, CadSliderSeverity, CadSliderValue, CadSlot, CadSortEvent, CadSortMeta, CadSortOrder, CadStepState, CadTableEditContext, CadTableEditUiContext, CadTablePanelTab, CadTableResponsiveMode, CadTableSelectionContext, CadTagSeverity, CadTaskAssignEvent, CadTaskMoveEvent, CadTaskOpenEvent, CadTaskboardGroupBy, CadTaskboardMode, CadTimelineAlign, CadToastAction, CadToastMessage, CadToastPosition, CadToastSeverity, CadTreeAdapterOptions, CadTreeNode, CadTreeNodeEvent, CadUploadFile, CadUploadHandlerEvent, CadUploadStatus, CadVariant, CadVirtualRange, CadWipEvent, MLExpression, MaplibreModule };