@communecter/cocolight-api-client 1.0.142 → 1.0.143
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/dist/cocolight-api-client.browser.js +1 -1
- package/dist/cocolight-api-client.cjs +1 -1
- package/dist/cocolight-api-client.mjs.js +1 -1
- package/dist/cocolight-api-client.vite.mjs.js +1 -1
- package/dist/cocolight-api-client.vite.mjs.js.map +1 -1
- package/package.json +1 -1
- package/src/ApiClient.ts +2 -2
- package/src/api/BaseEntity.ts +12 -0
- package/src/api/EndpointApi.ts +80 -1
- package/src/api/EndpointApi.types.ts +296 -0
- package/src/api/Form.ts +43 -1
- package/src/api/Organization.ts +77 -8
- package/src/api/Poi.ts +101 -1
- package/src/api/Project.ts +10 -7
- package/src/api/User.ts +54 -0
- package/src/api/serverDataType/Form.ts +21 -0
- package/src/endpoints.module.ts +194 -106
- package/types/api/EndpointApi.d.ts +50 -1
- package/types/api/EndpointApi.types.d.ts +286 -0
- package/types/api/Form.d.ts +28 -1
- package/types/api/Organization.d.ts +38 -0
- package/types/api/Poi.d.ts +36 -0
- package/types/api/User.d.ts +15 -1
- package/types/api/serverDataType/Form.d.ts +20 -0
- package/types/endpoints.module.d.ts +7123 -1105
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type ApiClient from "../ApiClient.js";
|
|
2
|
-
import type { PersonRegisterData, AuthenticateUrlData, RefreshTokenUrlData, PasswordRecoveryData, ServerExchangeTokenData, ChangePasswordData, DeleteAccountData, UpdateSettingsData, UpdateBlockDescriptionData, UpdateBlockInfoData, UpdateBlockSocialData, UpdateBlockLocalityData, UpdateBlockSlugData, CheckData, ProfilImageData, ProfilBannerData, GetElementsAboutData, MulticonnectData, GetNewsData, GetNewsByIdData, AddNewsData, AddImageNewsData, AddFileNewsData, DeleteNewsData, UpdateNewsData, ShareNewsData, GetCommentsData, AddCommentsData, DeleteCommentsData, UpdateCommentsData, SearchTagsData, ShowVoteData, GlobalAutocompleteData, CityAutocompleteData, CityAutocompleteByCountryData, SuggestionInputData, GetProjectsNoAdminData, GetProjectsAdminData, GetPoisNoAdminData, GetPoisAdminData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetMembersNoAdminData, GetMembersAdminData, GetFriendsAdminData, GetSubscriptionsData, GetSubscriptionsAdminData, GetSubscribersData, GetSubscribersAdminData, GetContributorsNoAdminData, GetContributorsAdminData, GetBadgesData, GetBadgesFiltersData, ConnectData, DisconnectData, GetElementsKeyData, GetFavorisData, DeleteFavorisData, AddFavorisData, AddOrganizationData, AddProjectData, AddPoiData, AddEventData, DeletePoiData, DeleteEventData, DeleteElementData, AddImageElementData, LinkValidateData, SearchMemberAutocompleteData, GetNotificationsData, GetNotificationsCountData, NotificationUpdateData, MarkNotificationAsReadData, ActivitypubSearchData, ActivitypubLinkData, ActivitypubGetCommunityData, GetBadgeData, AddBadgesData, AssignBadgesData, GetEventsData, ShareEventsData, InviteEventData, FollowData, GetCostumJsonData, GlobalAutocompleteCostumData, NavigatorGettlData, CostumEventRequestActorsData, CostumEventRequestSubeventsData, CostumEventRequestElementEventData, CostumEventRequestCategoriesData, CostumEventRequestDatesData, CostumEventRequestEventData, CostumEventRequestLinkTlToEventData, CostumEventRequestLoadContextTagData, GetGalleryData, GetAttendeesNoAdminData, GetAttendeesAdminData, CoformAnswersSearchData, CoformAnswersByIdData, GetCoformByIdData, CoformUploadAnswerFileData, CoformGetAnswerFilesData, SaveCoformAnswerData, AddVoteData, AddReportAbuseData, UpdatePathValueData, DeleteDocumentByContextData, DeleteDocumentByIdData, DemoteAdminData, CostumFilterCoformData, CostumFilterCoformByPathData, GetCountriesData, SearchZonesData, CoformAnswersByFormsData, GenerateAnswerFromFormData, FundingEnvelopeData, CoremuOperationData, CostumProjectActionRequestNewData, CostumProjectActionRequestSetStatusData, CostumProjectActionRequestSetDateData, CostumProjectActionRequestSetContributorsData, CostumProjectActionRequestCancelData, CostumProjectActionRequestArchiveData, LinkDiscourseAccountData, UnlinkDiscourseAccountData, DiscourseProfileData, DiscourseCheckEmailData, DiscourseDismissLinkData, LinkMediawikiAccountData, UnlinkMediawikiAccountData, GetMediawikiContributionsData, AddClassifiedData } from "./EndpointApi.types.js";
|
|
2
|
+
import type { PersonRegisterData, AuthenticateUrlData, RefreshTokenUrlData, PasswordRecoveryData, ServerExchangeTokenData, ChangePasswordData, DeleteAccountData, UpdateSettingsData, UpdateBlockDescriptionData, UpdateBlockInfoData, UpdateBlockSocialData, UpdateBlockLocalityData, UpdateBlockSlugData, CheckData, ProfilImageData, ProfilBannerData, GetElementsAboutData, MulticonnectData, GetNewsData, GetNewsByIdData, AddNewsData, AddImageNewsData, AddFileNewsData, DeleteNewsData, UpdateNewsData, ShareNewsData, GetCommentsData, AddCommentsData, DeleteCommentsData, UpdateCommentsData, SearchTagsData, ShowVoteData, GlobalAutocompleteData, CityAutocompleteData, CityAutocompleteByCountryData, SuggestionInputData, GetProjectsNoAdminData, GetProjectsAdminData, GetPoisNoAdminData, GetPoisAdminData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetUserEligiblePlacesData, GetMembersNoAdminData, GetMembersAdminData, GetFriendsAdminData, GetSubscriptionsData, GetSubscriptionsAdminData, GetSubscribersData, GetSubscribersAdminData, GetContributorsNoAdminData, GetContributorsAdminData, GetBadgesData, GetBadgesFiltersData, ConnectData, DisconnectData, GetElementsKeyData, GetFavorisData, DeleteFavorisData, AddFavorisData, AddOrganizationData, AddProjectData, AddPoiData, AddEventData, DeletePoiData, DeleteEventData, DeleteElementData, AddImageElementData, LinkValidateData, SearchMemberAutocompleteData, GetNotificationsData, GetNotificationsCountData, NotificationUpdateData, MarkNotificationAsReadData, ActivitypubSearchData, ActivitypubLinkData, ActivitypubGetCommunityData, GetBadgeData, AddBadgesData, AssignBadgesData, GetEventsData, ShareEventsData, InviteEventData, FollowData, GetCostumJsonData, GlobalAutocompleteCostumData, NavigatorGettlData, CostumEventRequestActorsData, CostumEventRequestSubeventsData, CostumEventRequestElementEventData, CostumEventRequestCategoriesData, CostumEventRequestDatesData, CostumEventRequestEventData, CostumEventRequestLinkTlToEventData, CostumEventRequestLoadContextTagData, GetGalleryData, GetAttendeesNoAdminData, GetAttendeesAdminData, CoformAnswersSearchData, CoformAnswersByIdData, GetCoformByIdData, CoformUploadAnswerFileData, CoformGetAnswerFilesData, GetCoformCatalogsData, SaveCoformAnswerData, GetCoformAnswerHistoryData, GetCoformMultievalDataData, GetCoformCommontableContributorsData, AddVoteData, AddReportAbuseData, UpdatePathValueData, DeleteDocumentByContextData, DeleteDocumentByIdData, DemoteAdminData, CostumFilterCoformData, CostumFilterCoformByPathData, GetCountriesData, SearchZonesData, CoformAnswersByFormsData, GenerateAnswerFromFormData, FundingEnvelopeData, CoremuOperationData, CostumProjectActionRequestNewData, CostumProjectActionRequestSetStatusData, CostumProjectActionRequestSetDateData, CostumProjectActionRequestSetContributorsData, CostumProjectActionRequestCancelData, CostumProjectActionRequestArchiveData, LinkDiscourseAccountData, UnlinkDiscourseAccountData, DiscourseProfileData, DiscourseCheckEmailData, DiscourseDismissLinkData, LinkMediawikiAccountData, UnlinkMediawikiAccountData, GetMediawikiContributionsData, AddClassifiedData } from "./EndpointApi.types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Classe EndpointApi générée automatiquement depuis endpoints-copie.json
|
|
5
5
|
*/
|
|
@@ -458,6 +458,16 @@ export declare class EndpointApi {
|
|
|
458
458
|
* @throws {Error} - En cas d'erreur inattendue.
|
|
459
459
|
*/
|
|
460
460
|
getOrganizationsAdmin(data: GetOrganizationsAdminData): Promise<any>;
|
|
461
|
+
/**
|
|
462
|
+
* Récupérer les lieux éligibles d'un utilisateur : Récupère les organisations memberOf de l'utilisateur filtrées par filters arbitraires (tags, etc.) et notSourceKey configurables. Utilisé par la vue collaborative coform/place pour pré-filtrer côté serveur les lieux éligibles à un formulaire.
|
|
463
|
+
* Constant : GET_USER_ELIGIBLE_PLACES
|
|
464
|
+
* @param data - Données envoyées à l'API
|
|
465
|
+
* @returns Les données de réponse.
|
|
466
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
467
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
468
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
469
|
+
*/
|
|
470
|
+
getUserEligiblePlaces(data: GetUserEligiblePlacesData): Promise<any>;
|
|
461
471
|
/**
|
|
462
472
|
* Récupérer les membres non administrables : Récupère les membres d’une organisation sans droits d’admin.
|
|
463
473
|
* Constant : GET_MEMBERS_NO_ADMIN
|
|
@@ -1047,6 +1057,15 @@ export declare class EndpointApi {
|
|
|
1047
1057
|
* @throws {Error} - En cas d'erreur inattendue.
|
|
1048
1058
|
*/
|
|
1049
1059
|
coformGetAnswerFiles(data: CoformGetAnswerFilesData): Promise<any>;
|
|
1060
|
+
/**
|
|
1061
|
+
* Récupérer les catalogues collaboratifs commonTable d'un formulaire : Pour les inputs de type tpls.forms.evaluation.commonTableV2, retourne en un seul appel le catalogue agrégé des criterias (besoins/solutions) déclarées par tous les répondants pour chaque inputKey demandé, avec un compteur de répondants par criteriaId.
|
|
1062
|
+
* Constant : GET_COFORM_CATALOGS
|
|
1063
|
+
* @param data - Données envoyées à l'API
|
|
1064
|
+
* @returns Les données de réponse.
|
|
1065
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1066
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1067
|
+
*/
|
|
1068
|
+
getCoformCatalogs(data: GetCoformCatalogsData): Promise<any>;
|
|
1050
1069
|
/**
|
|
1051
1070
|
* Sauvegarder une réponse de formulaire CoForm : Enregistre ou met à jour les réponses d'un utilisateur pour un formulaire CoForm
|
|
1052
1071
|
* Constant : SAVE_COFORM_ANSWER
|
|
@@ -1057,6 +1076,36 @@ export declare class EndpointApi {
|
|
|
1057
1076
|
* @throws {Error} - En cas d'erreur inattendue.
|
|
1058
1077
|
*/
|
|
1059
1078
|
saveCoformAnswer(data: SaveCoformAnswerData): Promise<any>;
|
|
1079
|
+
/**
|
|
1080
|
+
* Récupérer l'historique des modifications d'une réponse coform : Retourne l'historique des modifications (create + update) d'une réponse coform partagée, depuis la collection answerChanges. Trié du plus récent au plus ancien, limité à 200 entrées. Auth: l'utilisateur doit être propriétaire OU autorisé via canAdminAnswer (admin du parent du form, admin/membre du finder selon membersCanEditSharedAnswer, ou form publicCanEditSharedAnswer).
|
|
1081
|
+
* Constant : GET_COFORM_ANSWER_HISTORY
|
|
1082
|
+
* @param data - Données envoyées à l'API
|
|
1083
|
+
* @returns Les données de réponse.
|
|
1084
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1085
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
1086
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1087
|
+
*/
|
|
1088
|
+
getCoformAnswerHistory(data: GetCoformAnswerHistoryData): Promise<any>;
|
|
1089
|
+
/**
|
|
1090
|
+
* Récupérer les données agrégées d'évaluation multiple (radar) d'une réponse coform : Pour une réponse coform partagée comportant des inputs radioNew avec activeMultieval=true, retourne les datasets agrégés (1 par utilisateur contributeur) pour chaque step. Lecture tolérante : priorité au format canonical `value`, fallback sur le format legacy `answer` '{idx}_{slug}'. Auth : owner OU canAdminAnswer.
|
|
1091
|
+
* Constant : GET_COFORM_MULTIEVAL_DATA
|
|
1092
|
+
* @param data - Données envoyées à l'API
|
|
1093
|
+
* @returns Les données de réponse.
|
|
1094
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1095
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
1096
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1097
|
+
*/
|
|
1098
|
+
getCoformMultievalData(data: GetCoformMultievalDataData): Promise<any>;
|
|
1099
|
+
/**
|
|
1100
|
+
* Récupérer les contributeurs d'une ligne de commonTable : Pour un input commonTable et une liste de criteriaIds (= une ligne du tableau, qui peut agréger plusieurs criterias dédupés via groupKey côté React), retourne la liste des contributions individuelles avec l'auteur, sa solution, sa satisfaction et sa note.
|
|
1101
|
+
* Constant : GET_COFORM_COMMONTABLE_CONTRIBUTORS
|
|
1102
|
+
* @param data - Données envoyées à l'API
|
|
1103
|
+
* @returns Les données de réponse.
|
|
1104
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1105
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
1106
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1107
|
+
*/
|
|
1108
|
+
getCoformCommontableContributors(data: GetCoformCommontableContributorsData): Promise<any>;
|
|
1060
1109
|
/**
|
|
1061
1110
|
* Voter sur un élément (commentaire ou news) : Permet de voter sur un commentaire ou une news en spécifiant un statut de vote
|
|
1062
1111
|
* Constant : ADD_VOTE
|
|
@@ -1517,6 +1517,84 @@ export interface GetOrganizationsAdminData {
|
|
|
1517
1517
|
};
|
|
1518
1518
|
[k: string]: unknown;
|
|
1519
1519
|
}
|
|
1520
|
+
export interface GetUserEligiblePlacesData {
|
|
1521
|
+
/**
|
|
1522
|
+
* Nom ou terme recherché
|
|
1523
|
+
*/
|
|
1524
|
+
name?: string;
|
|
1525
|
+
/**
|
|
1526
|
+
* Types d'entités à inclure dans la recherche
|
|
1527
|
+
*/
|
|
1528
|
+
searchType: string[];
|
|
1529
|
+
/**
|
|
1530
|
+
* Index minimum pour la pagination
|
|
1531
|
+
*/
|
|
1532
|
+
indexMin: number;
|
|
1533
|
+
/**
|
|
1534
|
+
* Index de fin global pour la pagination
|
|
1535
|
+
*/
|
|
1536
|
+
indexMax?: number;
|
|
1537
|
+
/**
|
|
1538
|
+
* Nombre d'éléments à récupérer (limite de pagination)
|
|
1539
|
+
*/
|
|
1540
|
+
indexStep: number;
|
|
1541
|
+
/**
|
|
1542
|
+
* Configuration des plages de résultats pour chaque type de recherche
|
|
1543
|
+
*/
|
|
1544
|
+
ranges?: {
|
|
1545
|
+
/**
|
|
1546
|
+
* This interface was referenced by `undefined`'s JSON-Schema definition
|
|
1547
|
+
* via the `patternProperty` "^[^\s]+$".
|
|
1548
|
+
*/
|
|
1549
|
+
[k: string]: {
|
|
1550
|
+
indexMin: number;
|
|
1551
|
+
indexMax: number;
|
|
1552
|
+
};
|
|
1553
|
+
};
|
|
1554
|
+
searchBy?: "ALL";
|
|
1555
|
+
/**
|
|
1556
|
+
* Type initial de la recherche, vide par défaut
|
|
1557
|
+
*/
|
|
1558
|
+
initType?: string;
|
|
1559
|
+
/**
|
|
1560
|
+
* Indique si les types doivent être comptés dans les résultats
|
|
1561
|
+
*/
|
|
1562
|
+
count?: boolean;
|
|
1563
|
+
/**
|
|
1564
|
+
* Liste des types à compter dans les résultats
|
|
1565
|
+
*/
|
|
1566
|
+
countType?: string[];
|
|
1567
|
+
/**
|
|
1568
|
+
* true = désactive le filtrage automatique par sourceKey du contexte (cf. SearchNew.php). Configurable dynamiquement selon la config du finder du formulaire.
|
|
1569
|
+
*/
|
|
1570
|
+
notSourceKey: boolean;
|
|
1571
|
+
/**
|
|
1572
|
+
* Filtres MongoDB arbitraires : tags, source.key, links.members.{id}, etc. Les valeurs peuvent être une string (match exact), un tableau (any-of), ou un objet ($exists/$in/$ne/etc).
|
|
1573
|
+
*/
|
|
1574
|
+
filters: {
|
|
1575
|
+
[k: string]: unknown;
|
|
1576
|
+
};
|
|
1577
|
+
/**
|
|
1578
|
+
* Localité vide ou spécifique
|
|
1579
|
+
*/
|
|
1580
|
+
locality?: string;
|
|
1581
|
+
/**
|
|
1582
|
+
* Indique si la recherche doit s'étendre au Fediverse
|
|
1583
|
+
*/
|
|
1584
|
+
fediverse?: boolean;
|
|
1585
|
+
pathParams?: {
|
|
1586
|
+
/**
|
|
1587
|
+
* Type d'entité
|
|
1588
|
+
*/
|
|
1589
|
+
type: "citoyens" | "organizations";
|
|
1590
|
+
/**
|
|
1591
|
+
* ID de l'utilisateur ou de l'entité
|
|
1592
|
+
*/
|
|
1593
|
+
id: string;
|
|
1594
|
+
[k: string]: unknown;
|
|
1595
|
+
};
|
|
1596
|
+
[k: string]: unknown;
|
|
1597
|
+
}
|
|
1520
1598
|
export interface GetMembersNoAdminData {
|
|
1521
1599
|
/**
|
|
1522
1600
|
* Nom ou terme recherché
|
|
@@ -3042,6 +3120,162 @@ export interface AddPoiData {
|
|
|
3042
3120
|
streetAddress?: string;
|
|
3043
3121
|
};
|
|
3044
3122
|
scope?: "";
|
|
3123
|
+
/**
|
|
3124
|
+
* Catégorie du POI
|
|
3125
|
+
*/
|
|
3126
|
+
categorie?: string;
|
|
3127
|
+
/**
|
|
3128
|
+
* Type d'équipement
|
|
3129
|
+
*/
|
|
3130
|
+
equip_type_name?: string;
|
|
3131
|
+
/**
|
|
3132
|
+
* Nom de l'institution associée
|
|
3133
|
+
*/
|
|
3134
|
+
inst_nom?: string;
|
|
3135
|
+
/**
|
|
3136
|
+
* Accessibilité handicapé
|
|
3137
|
+
*/
|
|
3138
|
+
inst_acc_handi_bool?: boolean;
|
|
3139
|
+
/**
|
|
3140
|
+
* Transport
|
|
3141
|
+
*/
|
|
3142
|
+
inst_trans_bool?: boolean;
|
|
3143
|
+
/**
|
|
3144
|
+
* Famille du type d'équipement
|
|
3145
|
+
*/
|
|
3146
|
+
equip_type_famille?: string;
|
|
3147
|
+
/**
|
|
3148
|
+
* Date de création de l'institution
|
|
3149
|
+
*/
|
|
3150
|
+
inst_date_creation?: string;
|
|
3151
|
+
/**
|
|
3152
|
+
* Date de l'enquête
|
|
3153
|
+
*/
|
|
3154
|
+
inst_enqu_date?: string;
|
|
3155
|
+
/**
|
|
3156
|
+
* Date de mise à jour
|
|
3157
|
+
*/
|
|
3158
|
+
equip_maj_date?: string;
|
|
3159
|
+
/**
|
|
3160
|
+
* Nature de l'équipement
|
|
3161
|
+
*/
|
|
3162
|
+
equip_nature?: string;
|
|
3163
|
+
/**
|
|
3164
|
+
* Type de sol
|
|
3165
|
+
*/
|
|
3166
|
+
equip_sol?: string;
|
|
3167
|
+
/**
|
|
3168
|
+
* Surface
|
|
3169
|
+
*/
|
|
3170
|
+
equip_surf?: number;
|
|
3171
|
+
/**
|
|
3172
|
+
* Éclairage
|
|
3173
|
+
*/
|
|
3174
|
+
equip_eclair?: boolean;
|
|
3175
|
+
/**
|
|
3176
|
+
* Nom de l'APS
|
|
3177
|
+
*/
|
|
3178
|
+
aps_name?: string[];
|
|
3179
|
+
/**
|
|
3180
|
+
* Accessibilité libre
|
|
3181
|
+
*/
|
|
3182
|
+
equip_acc_libre?: boolean;
|
|
3183
|
+
/**
|
|
3184
|
+
* Type d'accessibilité handicapé
|
|
3185
|
+
*/
|
|
3186
|
+
inst_acc_handi_type?: string;
|
|
3187
|
+
/**
|
|
3188
|
+
* Type de transport
|
|
3189
|
+
*/
|
|
3190
|
+
inst_trans_type?: string;
|
|
3191
|
+
/**
|
|
3192
|
+
* Participation
|
|
3193
|
+
*/
|
|
3194
|
+
inst_part_bool?: boolean;
|
|
3195
|
+
/**
|
|
3196
|
+
* Type de participation
|
|
3197
|
+
*/
|
|
3198
|
+
inst_part_type?: string[];
|
|
3199
|
+
/**
|
|
3200
|
+
* Nom du propriétaire de l'équipement
|
|
3201
|
+
*/
|
|
3202
|
+
equip_prop_nom?: string;
|
|
3203
|
+
/**
|
|
3204
|
+
* Type du propriétaire de l'équipement
|
|
3205
|
+
*/
|
|
3206
|
+
equip_prop_type?: string;
|
|
3207
|
+
/**
|
|
3208
|
+
* Type de gestion de l'équipement
|
|
3209
|
+
*/
|
|
3210
|
+
equip_gest_type?: string;
|
|
3211
|
+
/**
|
|
3212
|
+
* Accessibilité pour personnes à mobilité réduite
|
|
3213
|
+
*/
|
|
3214
|
+
equip_pmr_acc?: boolean;
|
|
3215
|
+
/**
|
|
3216
|
+
* Chemin pour personnes à mobilité réduite
|
|
3217
|
+
*/
|
|
3218
|
+
equip_pmr_chem?: boolean;
|
|
3219
|
+
/**
|
|
3220
|
+
* Douche pour personnes à mobilité réduite
|
|
3221
|
+
*/
|
|
3222
|
+
equip_pmr_douche?: boolean;
|
|
3223
|
+
/**
|
|
3224
|
+
* Sanitaire pour personnes à mobilité réduite
|
|
3225
|
+
*/
|
|
3226
|
+
equip_pmr_sanit?: boolean;
|
|
3227
|
+
/**
|
|
3228
|
+
* Tribune pour personnes à mobilité réduite
|
|
3229
|
+
*/
|
|
3230
|
+
equip_pmr_trib?: boolean;
|
|
3231
|
+
/**
|
|
3232
|
+
* Vestiaire pour personnes à mobilité réduite
|
|
3233
|
+
*/
|
|
3234
|
+
equip_pmr_vest?: boolean;
|
|
3235
|
+
/**
|
|
3236
|
+
* Aire de repos pour personnes à mobilité réduite
|
|
3237
|
+
*/
|
|
3238
|
+
equip_pshs_aire?: boolean;
|
|
3239
|
+
/**
|
|
3240
|
+
* Chemin pour personnes à mobilité réduite
|
|
3241
|
+
*/
|
|
3242
|
+
equip_pshs_chem?: boolean;
|
|
3243
|
+
/**
|
|
3244
|
+
* Sanitaire pour personnes à mobilité réduite
|
|
3245
|
+
*/
|
|
3246
|
+
equip_pshs_sanit?: boolean;
|
|
3247
|
+
/**
|
|
3248
|
+
* Tribune pour personnes à mobilité réduite
|
|
3249
|
+
*/
|
|
3250
|
+
equip_pshs_trib?: boolean;
|
|
3251
|
+
/**
|
|
3252
|
+
* Vestiaire pour personnes à mobilité réduite
|
|
3253
|
+
*/
|
|
3254
|
+
equip_pshs_vest?: boolean;
|
|
3255
|
+
/**
|
|
3256
|
+
* Signalisation pour personnes à mobilité réduite
|
|
3257
|
+
*/
|
|
3258
|
+
equip_pshs_sign?: boolean;
|
|
3259
|
+
/**
|
|
3260
|
+
* Largeur de l'équipement
|
|
3261
|
+
*/
|
|
3262
|
+
equip_larg?: number;
|
|
3263
|
+
/**
|
|
3264
|
+
* Longueur de l'équipement
|
|
3265
|
+
*/
|
|
3266
|
+
equip_long?: number;
|
|
3267
|
+
/**
|
|
3268
|
+
* Douche
|
|
3269
|
+
*/
|
|
3270
|
+
equip_douche?: boolean;
|
|
3271
|
+
/**
|
|
3272
|
+
* Type de localisation de l'équipement
|
|
3273
|
+
*/
|
|
3274
|
+
equip_loc_type?: string[];
|
|
3275
|
+
/**
|
|
3276
|
+
* Utilisateur de l'équipement
|
|
3277
|
+
*/
|
|
3278
|
+
equip_utilisateur?: string[];
|
|
3045
3279
|
[k: string]: unknown;
|
|
3046
3280
|
}
|
|
3047
3281
|
export interface AddEventData {
|
|
@@ -4991,6 +5225,14 @@ export interface GetCoformByIdData {
|
|
|
4991
5225
|
* ID du formulaire parent à récupérer
|
|
4992
5226
|
*/
|
|
4993
5227
|
parentFormId: string;
|
|
5228
|
+
/**
|
|
5229
|
+
* Optionnel : ID d'un élément (lieu) pour la vue collaborative par lieu. Avec elementType, l'access info pointe sur la réponse partagée du lieu plutôt que sur la réponse personnelle du user.
|
|
5230
|
+
*/
|
|
5231
|
+
elementId?: string;
|
|
5232
|
+
/**
|
|
5233
|
+
* Type de l'élément (collection MongoDB). Requis si elementId fourni.
|
|
5234
|
+
*/
|
|
5235
|
+
elementType?: "organizations" | "projects" | "events" | "poi" | "citoyens";
|
|
4994
5236
|
[k: string]: unknown;
|
|
4995
5237
|
}
|
|
4996
5238
|
export interface CoformUploadAnswerFileData {
|
|
@@ -5053,6 +5295,17 @@ export interface CoformGetAnswerFilesData {
|
|
|
5053
5295
|
docType?: "image" | "file";
|
|
5054
5296
|
[k: string]: unknown;
|
|
5055
5297
|
}
|
|
5298
|
+
export interface GetCoformCatalogsData {
|
|
5299
|
+
/**
|
|
5300
|
+
* ID du formulaire parent
|
|
5301
|
+
*/
|
|
5302
|
+
formId: string;
|
|
5303
|
+
/**
|
|
5304
|
+
* Tableau JSON sérialisé des fieldKey des inputs commonTable concernés. Ex: ["abc123","def456"]
|
|
5305
|
+
*/
|
|
5306
|
+
inputKeys: string;
|
|
5307
|
+
[k: string]: unknown;
|
|
5308
|
+
}
|
|
5056
5309
|
export interface SaveCoformAnswerData {
|
|
5057
5310
|
/**
|
|
5058
5311
|
* ID du formulaire parent
|
|
@@ -5076,6 +5329,39 @@ export interface SaveCoformAnswerData {
|
|
|
5076
5329
|
links?: string;
|
|
5077
5330
|
[k: string]: unknown;
|
|
5078
5331
|
}
|
|
5332
|
+
export interface GetCoformAnswerHistoryData {
|
|
5333
|
+
/**
|
|
5334
|
+
* ID de la réponse dont on veut l'historique
|
|
5335
|
+
*/
|
|
5336
|
+
answerId: string;
|
|
5337
|
+
[k: string]: unknown;
|
|
5338
|
+
}
|
|
5339
|
+
export interface GetCoformMultievalDataData {
|
|
5340
|
+
/**
|
|
5341
|
+
* ID de la réponse
|
|
5342
|
+
*/
|
|
5343
|
+
answerId: string;
|
|
5344
|
+
/**
|
|
5345
|
+
* Optionnel : si fourni, ne retourne que la step spécifiée. Sinon, toutes les steps avec multi-eval.
|
|
5346
|
+
*/
|
|
5347
|
+
stepKey?: string;
|
|
5348
|
+
[k: string]: unknown;
|
|
5349
|
+
}
|
|
5350
|
+
export interface GetCoformCommontableContributorsData {
|
|
5351
|
+
/**
|
|
5352
|
+
* ID du formulaire parent
|
|
5353
|
+
*/
|
|
5354
|
+
formId: string;
|
|
5355
|
+
/**
|
|
5356
|
+
* Clé originale de l'input commonTable (sans préfixe yesOrNo)
|
|
5357
|
+
*/
|
|
5358
|
+
inputKey: string;
|
|
5359
|
+
/**
|
|
5360
|
+
* Tableau JSON sérialisé des criteriaIds correspondant à la ligne agrégée (commonTable peut dédupliquer plusieurs criterias sous un même usage côté React). Ex: ["criteria1778265370227"]
|
|
5361
|
+
*/
|
|
5362
|
+
criteriaIds: string;
|
|
5363
|
+
[k: string]: unknown;
|
|
5364
|
+
}
|
|
5079
5365
|
export interface AddVoteData {
|
|
5080
5366
|
/**
|
|
5081
5367
|
* ID de l'élément (commentaire ou news) sur lequel voter
|
package/types/api/Form.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { BaseEntity } from "./BaseEntity.js";
|
|
|
2
2
|
import type { Answer } from "./Answer.js";
|
|
3
3
|
import type { PaginatorPage, PaginatorState } from "./BaseEntity.js";
|
|
4
4
|
import type { CoformAnswersSearchData } from "./EndpointApi.types.js";
|
|
5
|
-
import type { FormItemNormalized } from "./serverDataType/Form.js";
|
|
5
|
+
import type { CoformCommonTableContributor, FormItemNormalized } from "./serverDataType/Form.js";
|
|
6
6
|
export declare class Form extends BaseEntity<FormItemNormalized> {
|
|
7
7
|
static entityType: string;
|
|
8
8
|
static entityTag: string;
|
|
@@ -78,4 +78,31 @@ export declare class Form extends BaseEntity<FormItemNormalized> {
|
|
|
78
78
|
* await draft.save();
|
|
79
79
|
*/
|
|
80
80
|
answer(answerData?: Parameters<BaseEntity<FormItemNormalized>["answer"]>[0]): Promise<Answer>;
|
|
81
|
+
/**
|
|
82
|
+
* Récupère la liste des contributeurs d'une table commune (commonTable) de CE formulaire.
|
|
83
|
+
*
|
|
84
|
+
* Pour un input `commonTable` et une ligne du tableau (un ou plusieurs `criteriaIds`
|
|
85
|
+
* dédupés côté React via `groupKey`), retourne les contributions individuelles
|
|
86
|
+
* (auteur, solution, satisfaction, note).
|
|
87
|
+
*
|
|
88
|
+
* Constant : GET_COFORM_COMMONTABLE_CONTRIBUTORS
|
|
89
|
+
* (POST /survey/coform/getcommontablecontributors, auth bearer).
|
|
90
|
+
*
|
|
91
|
+
* @param params.inputKey - Clé originale de l'input commonTable (sans préfixe yesOrNo).
|
|
92
|
+
* @param params.criteriaIds - criteriaIds de la ligne agrégée : tableau `string[]`
|
|
93
|
+
* (sérialisé automatiquement) ou string JSON déjà sérialisée.
|
|
94
|
+
* @returns La liste des contributions (une entrée par contribution).
|
|
95
|
+
* @throws {ApiError} si le Form n'a pas d'id.
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* const form = await org.form({ id: "6925e2b05dd63b02ca70d6d9" });
|
|
99
|
+
* const contributors = await form.getCommonTableContributors({
|
|
100
|
+
* inputKey: "usagesEtSolutions",
|
|
101
|
+
* criteriaIds: ["criteria1778265370227"],
|
|
102
|
+
* });
|
|
103
|
+
*/
|
|
104
|
+
getCommonTableContributors(params: {
|
|
105
|
+
inputKey: string;
|
|
106
|
+
criteriaIds: string | string[];
|
|
107
|
+
}): Promise<CoformCommonTableContributor[]>;
|
|
81
108
|
}
|
|
@@ -246,6 +246,44 @@ export declare class Organization extends BaseEntity<OrganizationItemNormalized>
|
|
|
246
246
|
searchType?: "all" | "citoyens" | "organizations";
|
|
247
247
|
restoredState?: PaginatorState;
|
|
248
248
|
}): Promise<PaginatorPage<User | Organization>>;
|
|
249
|
+
/**
|
|
250
|
+
* Récupère les organisations dont **cette** organisation est membre
|
|
251
|
+
* (lien montant : réseau, fédération, collectif… dont l'orga fait partie).
|
|
252
|
+
*
|
|
253
|
+
* C'est le miroir de {@link Organization#getMembers} : `getMembers()` liste
|
|
254
|
+
* *qui* est membre de cette orga, tandis que `getMemberOf()` liste *les orgas
|
|
255
|
+
* dont cette orga est elle-même membre*.
|
|
256
|
+
*
|
|
257
|
+
* Contrairement à {@link BaseEntity#getOrganizations} (désactivée ici car pensée
|
|
258
|
+
* pour un citoyen via `GET_ORGANIZATIONS_*`), on passe par la recherche réseau
|
|
259
|
+
* globale `searchCostum` : on cible `searchType: ["organizations"]` et on filtre
|
|
260
|
+
* sur `links.members.{thisOrgId}`. Seules les adhésions **confirmées** sont
|
|
261
|
+
* retournées (les liens `toBeValidated` et `isInviting` sont exclus).
|
|
262
|
+
*
|
|
263
|
+
* La pagination (`hasNext`/`next()`) et la restauration via `restoredState`
|
|
264
|
+
* fonctionnent comme pour `searchCostum` : le filtre membership est conservé
|
|
265
|
+
* d'une page à l'autre.
|
|
266
|
+
*
|
|
267
|
+
* @param data - Paramètres de recherche/pagination additionnels (`name`, `indexStep`,
|
|
268
|
+
* `sortBy`, `locality`, `filters` complémentaires…). Les `filters` fournis sont
|
|
269
|
+
* fusionnés avec le filtre membership, ce dernier restant prioritaire.
|
|
270
|
+
* @param options - Options. `restoredState` pour reprendre une pagination sérialisée.
|
|
271
|
+
* @returns Première page paginée d'organisations.
|
|
272
|
+
* @throws {ApiError} Si l'organisation n'a pas d'`id`.
|
|
273
|
+
*
|
|
274
|
+
* @example
|
|
275
|
+
* // Toutes les orgas dont cette orga est membre
|
|
276
|
+
* const page = await org.getMemberOf();
|
|
277
|
+
* console.log(page.results, page.count.total);
|
|
278
|
+
*
|
|
279
|
+
* @example
|
|
280
|
+
* // Filtrer par nom + pagination plus large
|
|
281
|
+
* const page = await org.getMemberOf({ name: "réseau", indexStep: 50 });
|
|
282
|
+
* if (page.hasNext) await page.next();
|
|
283
|
+
*/
|
|
284
|
+
getMemberOf(data?: Parameters<BaseEntity<OrganizationItemNormalized>["searchCostum"]>[0], options?: {
|
|
285
|
+
restoredState?: PaginatorState;
|
|
286
|
+
}): Promise<PaginatorPage<Organization>>;
|
|
249
287
|
/**
|
|
250
288
|
* {@inheritDoc BaseEntity#getGallery}
|
|
251
289
|
*
|
package/types/api/Poi.d.ts
CHANGED
|
@@ -7,11 +7,47 @@ export declare class Poi extends BaseEntity<PoiItemNormalized> {
|
|
|
7
7
|
static SCHEMA_CONSTANTS: string[];
|
|
8
8
|
static ADD_BLOCKS: Map<"PROFIL_IMAGE" | "ADD_POI", "updateImageProfil" | "addPoi">;
|
|
9
9
|
static UPDATE_BLOCKS: Map<"UPDATE_BLOCK_DESCRIPTION" | "UPDATE_BLOCK_INFO" | "UPDATE_BLOCK_LOCALITY" | "UPDATE_BLOCK_SLUG" | "PROFIL_IMAGE", "updateImageProfil" | "updateDescription" | "updateLocality" | "updateInfo" | "updateSlug">;
|
|
10
|
+
/**
|
|
11
|
+
* Champs « équipement sportif » (RES) éditables hors `UPDATE_BLOCK_*` : déclarés en
|
|
12
|
+
* VIRTUAL_SCHEMA (autorise l'écriture sur le draft + fixe les types) et persistés à
|
|
13
|
+
* l'update via `CUSTOM_FIELD_HANDLERS` → `updateEquipmentField` → `UPDATE_PATH_VALUE`.
|
|
14
|
+
* Même pattern qu'`Organization`/`Action`. (Ils restent aussi dans `ADD_POI` pour la création.)
|
|
15
|
+
*/
|
|
16
|
+
static VIRTUAL_SCHEMAS: {
|
|
17
|
+
VIRTUAL_POI_EQUIPMENT: {
|
|
18
|
+
type: string;
|
|
19
|
+
properties: {
|
|
20
|
+
[k: string]: Record<string, unknown>;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
static CUSTOM_FIELD_HANDLERS: Map<string, {
|
|
25
|
+
updateMethod: string;
|
|
26
|
+
schemaConstant?: string;
|
|
27
|
+
}>;
|
|
28
|
+
/** setType backend par champ équipement (consommé par `updateEquipmentField`). */
|
|
29
|
+
private static readonly EQUIPMENT_SETTYPE;
|
|
10
30
|
defaultFields: Record<string, any>;
|
|
11
31
|
removeFields: string[];
|
|
12
32
|
transforms: Record<string, (val: any, full?: any) => any>;
|
|
13
33
|
_add: (payload: Record<string, any>) => Promise<void>;
|
|
14
34
|
_update: (payload: Record<string, any>) => Promise<boolean>;
|
|
35
|
+
/**
|
|
36
|
+
* Handler générique des champs « équipement sportif » (RES), enregistré dans
|
|
37
|
+
* `CUSTOM_FIELD_HANDLERS`. Persiste un champ via `UPDATE_PATH_VALUE` avec le `setType`
|
|
38
|
+
* adéquat (lu dans `EQUIPMENT_SETTYPE`). `fieldName` est fourni par `_invokeCustomFieldHandler`.
|
|
39
|
+
*
|
|
40
|
+
* Effacement façon `Action` : `null`/`""` → on envoie `""` SANS `setType` → le backend fait
|
|
41
|
+
* `!empty($value)` → `$unset` (sinon `floatval("")=0` écraserait au lieu d'effacer).
|
|
42
|
+
*/
|
|
43
|
+
updateEquipmentField(value: unknown, fieldName: string): Promise<unknown>;
|
|
44
|
+
/**
|
|
45
|
+
* Override confiné à `Poi` : forwarde `fieldName` au handler (2e argument) pour permettre
|
|
46
|
+
* un handler générique unique (`updateEquipmentField`) couvrant les ~39 champs équipement,
|
|
47
|
+
* sans toucher `BaseEntity._invokeCustomFieldHandler` (utilisé par les autres entités, qui
|
|
48
|
+
* ne passent que `value`). Copie volontaire du corps de base + le forward du `fieldName`.
|
|
49
|
+
*/
|
|
50
|
+
protected _invokeCustomFieldHandler(methodName: string, value: any, fieldName: string): Promise<any>;
|
|
15
51
|
addPoi(data?: Partial<AddPoiData>): Promise<unknown>;
|
|
16
52
|
getOrganizations(): Promise<never>;
|
|
17
53
|
getProjects(): Promise<never>;
|
package/types/api/User.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { BaseEntity } from "./BaseEntity.js";
|
|
|
2
2
|
import { Notifications } from "./Notifications.js";
|
|
3
3
|
import type { Badge } from "./Badge.js";
|
|
4
4
|
import type { PaginatorPage, PaginatorState } from "./BaseEntity.js";
|
|
5
|
-
import type { ChangePasswordData, DeleteAccountData, GetSubscriptionsAdminData, GetSubscriptionsData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetFriendsAdminData } from "./EndpointApi.types.js";
|
|
5
|
+
import type { ChangePasswordData, DeleteAccountData, GetSubscriptionsAdminData, GetSubscriptionsData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetUserEligiblePlacesData, GetFriendsAdminData } from "./EndpointApi.types.js";
|
|
6
6
|
import type { Organization } from "./Organization.js";
|
|
7
7
|
import type { NotificationItemData } from "./serverDataType/Notification.js";
|
|
8
8
|
import type { EntityTypes } from "@/types/entities.js";
|
|
@@ -161,6 +161,20 @@ export declare class User extends BaseEntity<UserItemNormalized> {
|
|
|
161
161
|
getOrganizations(data?: Partial<GetOrganizationsAdminData | GetOrganizationsNoAdminData>, options?: {
|
|
162
162
|
restoredState?: PaginatorState;
|
|
163
163
|
}): Promise<PaginatorPage<Organization>>;
|
|
164
|
+
/**
|
|
165
|
+
* Récupère les lieux (organizations) memberOf de l'utilisateur, filtrés
|
|
166
|
+
* côté serveur par des filters arbitraires (tags, source.key, etc.) et
|
|
167
|
+
* un flag `notSourceKey` configurables.
|
|
168
|
+
*
|
|
169
|
+
* Mirroir de `getOrganizations` mais permet de passer dynamiquement les
|
|
170
|
+
* filtres du finder du formulaire (vue collaborative coform/place), pour
|
|
171
|
+
* que la pagination soit correcte (filtrage côté serveur, pas côté client).
|
|
172
|
+
*
|
|
173
|
+
* Constant : GET_USER_ELIGIBLE_PLACES
|
|
174
|
+
*/
|
|
175
|
+
getEligiblePlaces(data?: Partial<GetUserEligiblePlacesData>, options?: {
|
|
176
|
+
restoredState?: PaginatorState;
|
|
177
|
+
}): Promise<PaginatorPage<Organization>>;
|
|
164
178
|
/**
|
|
165
179
|
* {@inheritDoc BaseEntity#getProjects}
|
|
166
180
|
*
|
|
@@ -133,4 +133,24 @@ export interface FormItemNormalized {
|
|
|
133
133
|
useBannerImg?: boolean;
|
|
134
134
|
[key: string]: unknown;
|
|
135
135
|
}
|
|
136
|
+
/**
|
|
137
|
+
* Une contribution individuelle à une table commune (commonTable) d'un coform.
|
|
138
|
+
* Retournée par `Form.getCommonTableContributors()` (endpoint GET_COFORM_COMMONTABLE_CONTRIBUTORS).
|
|
139
|
+
* Plusieurs entrées possibles pour un même `userId` (plusieurs solutions au même usage).
|
|
140
|
+
*/
|
|
141
|
+
export interface CoformCommonTableContributor {
|
|
142
|
+
userId: string;
|
|
143
|
+
userName?: string;
|
|
144
|
+
userSlug?: string;
|
|
145
|
+
criteriaId: string;
|
|
146
|
+
/** Nom de la solution saisie. */
|
|
147
|
+
criteria: string;
|
|
148
|
+
/** love | happySmile | neutral | sad | cry | "" */
|
|
149
|
+
happiness?: string;
|
|
150
|
+
/** Note de 0 à 5. */
|
|
151
|
+
note?: number;
|
|
152
|
+
comment?: string;
|
|
153
|
+
fromAnswerId?: string;
|
|
154
|
+
[k: string]: unknown;
|
|
155
|
+
}
|
|
136
156
|
export {};
|