@communecter/cocolight-api-client 1.0.161 → 1.0.163
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 +6 -6
- package/dist/cocolight-api-client.cjs +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/types/api/BaseEntity.d.ts +59 -0
- package/types/api/EndpointApi.d.ts +21 -1
- package/types/api/EndpointApi.types.d.ts +30 -0
- package/types/endpoints.module.d.ts +482 -0
package/package.json
CHANGED
|
@@ -1735,6 +1735,35 @@ export declare class BaseEntity<TServerData = any> {
|
|
|
1735
1735
|
isAdmin?: "" | "admin";
|
|
1736
1736
|
roles?: string[];
|
|
1737
1737
|
}>): Promise<unknown>;
|
|
1738
|
+
/**
|
|
1739
|
+
* L'entité porte-t-elle un contexte costum COMPLET (slug + costumId + costumType) ?
|
|
1740
|
+
* Vrai pour une entité chargée avec un `source.key` connu, ou après `setCostumScope()`.
|
|
1741
|
+
*/
|
|
1742
|
+
hasCostumScope(): boolean;
|
|
1743
|
+
/**
|
|
1744
|
+
* Pose EXPLICITEMENT le scope costum de l'entité — l'API OFFICIELLE pour rattacher une entité
|
|
1745
|
+
* HÔTE de costum (qui n'a pas de `source.key` : c'est elle la source, la lib ne lui auto-dérive
|
|
1746
|
+
* donc aucun `_costumCtx`) aux méthodes qui l'exigent (`_requireCostumCtx` : `previewImport`,
|
|
1747
|
+
* `importElements`, `exportElements`, `addReference`…).
|
|
1748
|
+
*
|
|
1749
|
+
* Résolution :
|
|
1750
|
+
* 1. le REGISTRE bundlé d'abord (`resolveCostumCtxFromSource` — costum connu : identité + overlay
|
|
1751
|
+
* de champs, source de vérité interne) ;
|
|
1752
|
+
* 2. sinon un contexte NU construit depuis `opts` (costum de config/déploiement hors registre) —
|
|
1753
|
+
* même forme que le fallback interne (schema vide, fields:[]) ;
|
|
1754
|
+
* 3. sinon throw (identité costum introuvable).
|
|
1755
|
+
*
|
|
1756
|
+
* Remplace la mutation externe de `_costumCtx` pratiquée par les fronts (champ INTERNE non
|
|
1757
|
+
* contractuel) — cf. site-json `ensureCostumScope`, à migrer sur cette méthode.
|
|
1758
|
+
*
|
|
1759
|
+
* @param slug - Slug du costum (ex. `"equipementsSportifs974"`).
|
|
1760
|
+
* @param opts.costumId / opts.costumType - Identité de l'élément hôte, requise si le costum
|
|
1761
|
+
* n'est pas dans le registre bundlé (résolue par le front via slug/getinfo).
|
|
1762
|
+
*/
|
|
1763
|
+
setCostumScope(slug: string, opts?: {
|
|
1764
|
+
costumId?: string;
|
|
1765
|
+
costumType?: string;
|
|
1766
|
+
}): void;
|
|
1738
1767
|
/**
|
|
1739
1768
|
* Contexte costum de CETTE entité (résolu de son `source.key`) — requis par l'import/export admin.
|
|
1740
1769
|
* @throws {ApiError} si l'entité n'est pas rattachée à un costum.
|
|
@@ -1853,6 +1882,36 @@ export declare class BaseEntity<TServerData = any> {
|
|
|
1853
1882
|
news: unknown[];
|
|
1854
1883
|
comments: unknown[];
|
|
1855
1884
|
}>;
|
|
1885
|
+
/**
|
|
1886
|
+
* Détail consolidé des signalements d'un élément de la file de modération (NEWS_MODERATE /
|
|
1887
|
+
* COMMENT_MODERATE, subAction consolidateModerate{News,Comment}).
|
|
1888
|
+
* ⚠ Réponse legacy : `{ result: {text, reason, detail?} }` SANS booléen (clé PHP dupliquée écrasée) —
|
|
1889
|
+
* `reason` est `{}` → `[]` (array vide) quand il n'y a aucun signalement.
|
|
1890
|
+
*
|
|
1891
|
+
* @param context - `"news"` ou `"comments"`.
|
|
1892
|
+
* @param id - ID de l'élément signalé.
|
|
1893
|
+
*/
|
|
1894
|
+
consolidateModeration(context: "news" | "comments", id: string): Promise<{
|
|
1895
|
+
result: {
|
|
1896
|
+
text: string | null;
|
|
1897
|
+
reason: Record<string, number> | unknown[];
|
|
1898
|
+
detail?: Record<string, string>;
|
|
1899
|
+
};
|
|
1900
|
+
}>;
|
|
1901
|
+
/**
|
|
1902
|
+
* Vote de modération sur un élément signalé (saveModerate) : pose `moderate.<uid>` + incrémente
|
|
1903
|
+
* `moderateCount`. Pour les NEWS, au seuil de 3 votes le backend tranche `isAnAbuse` à la
|
|
1904
|
+
* majorité (>49%) — une news « abus » est exclue des flux (pas supprimée). Les COMMENTS n'ont
|
|
1905
|
+
* pas de seuil (parité legacy : consolidation commentée).
|
|
1906
|
+
*
|
|
1907
|
+
* @param context - `"news"` ou `"comments"`.
|
|
1908
|
+
* @param id - ID de l'élément signalé.
|
|
1909
|
+
* @param isAnAbuse - Le vote (transmis en STRING 'true'|'false' — parité legacy).
|
|
1910
|
+
*/
|
|
1911
|
+
saveModeration(context: "news" | "comments", id: string, isAnAbuse: boolean): Promise<{
|
|
1912
|
+
result: boolean;
|
|
1913
|
+
msg: string;
|
|
1914
|
+
}>;
|
|
1856
1915
|
/** UUID v4 compatible browser + Node (`crypto.randomUUID()` si dispo, sinon fallback). @private */
|
|
1857
1916
|
private _uuidV4;
|
|
1858
1917
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type ApiClient from "../ApiClient.js";
|
|
2
|
-
import type { DocumentListData, 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, GlobalAutocompleteAdminCostumData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetUserEligiblePlacesData, GetMembersNoAdminData, GetMembersAdminData, GetFriendsAdminData, GetSubscriptionsData, GetSubscriptionsAdminData, GetSubscribersData, GetSubscribersAdminData, GetContributorsNoAdminData, GetContributorsAdminData, GetBadgesData, GetBadgesFiltersData, ConnectData, DisconnectData, GetElementsKeyData, GetFavorisData, DeleteFavorisData, AddFavorisData, AddOrganizationData, AddProjectData, AddPoiData, AddEventData, DeleteElementData, AddImageElementData, LinkValidateData, SearchMemberAutocompleteData, GetNotificationsData, GetNotificationsCountData, NotificationUpdateData, MarkNotificationAsReadData, ActivitypubSearchData, ActivitypubLinkData, ActivitypubGetCommunityData, GetBadgeData, AddBadgesData, AssignBadgesData, GetEventsData, SearchEventsCostumData, ShareEventsData, InviteMembersData, FollowData, GetCostumJsonData, GlobalAutocompleteCostumData, NavigatorGettlData, CostumEventRequestActorsData, CostumEventRequestSubeventsData, CostumEventRequestElementEventData, CostumEventRequestCategoriesData, CostumEventRequestDatesData, CostumEventRequestEventData, CostumEventRequestLinkTlToEventData, CostumEventRequestLoadContextTagData, GetGalleryData, GetAttendeesNoAdminData, GetAttendeesAdminData, CoformAnswersSearchData, CoformAnswersByIdData, GetCoformByIdData, CoformUploadAnswerFileData, DeleteCoformAnswerFileData, 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, PersonActivateData, ImportPreviewData, ExportElementsData, ImportElementsData, GeocodageData, ValidateGroupData, SetSourceData, ModerateData } from "./EndpointApi.types.js";
|
|
2
|
+
import type { DocumentListData, 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, GlobalAutocompleteAdminCostumData, GetOrganizationsNoAdminData, GetOrganizationsAdminData, GetUserEligiblePlacesData, GetMembersNoAdminData, GetMembersAdminData, GetFriendsAdminData, GetSubscriptionsData, GetSubscriptionsAdminData, GetSubscribersData, GetSubscribersAdminData, GetContributorsNoAdminData, GetContributorsAdminData, GetBadgesData, GetBadgesFiltersData, ConnectData, DisconnectData, GetElementsKeyData, GetFavorisData, DeleteFavorisData, AddFavorisData, AddOrganizationData, AddProjectData, AddPoiData, AddEventData, DeleteElementData, AddImageElementData, LinkValidateData, SearchMemberAutocompleteData, GetNotificationsData, GetNotificationsCountData, NotificationUpdateData, MarkNotificationAsReadData, ActivitypubSearchData, ActivitypubLinkData, ActivitypubGetCommunityData, GetBadgeData, AddBadgesData, AssignBadgesData, GetEventsData, SearchEventsCostumData, ShareEventsData, InviteMembersData, FollowData, GetCostumJsonData, GlobalAutocompleteCostumData, NavigatorGettlData, CostumEventRequestActorsData, CostumEventRequestSubeventsData, CostumEventRequestElementEventData, CostumEventRequestCategoriesData, CostumEventRequestDatesData, CostumEventRequestEventData, CostumEventRequestLinkTlToEventData, CostumEventRequestLoadContextTagData, GetGalleryData, GetAttendeesNoAdminData, GetAttendeesAdminData, CoformAnswersSearchData, CoformAnswersByIdData, GetCoformByIdData, CoformUploadAnswerFileData, DeleteCoformAnswerFileData, 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, PersonActivateData, ImportPreviewData, ExportElementsData, ImportElementsData, GeocodageData, ValidateGroupData, SetSourceData, ModerateData, NewsModerateData, CommentModerateData } from "./EndpointApi.types.js";
|
|
3
3
|
/**
|
|
4
4
|
* Classe EndpointApi générée automatiquement depuis endpoints-copie.json
|
|
5
5
|
*/
|
|
@@ -1482,5 +1482,25 @@ export declare class EndpointApi {
|
|
|
1482
1482
|
* @throws {Error} - En cas d'erreur inattendue.
|
|
1483
1483
|
*/
|
|
1484
1484
|
moderate(data: ModerateData): Promise<any>;
|
|
1485
|
+
/**
|
|
1486
|
+
* Modération des actualités (sous-actions) : Port de news/co/ModerateAction : consolidateModerateNews (détail des signalements — dates format 12h PHP TZ Europe/Paris), saveModerate (vote moderate.<uid> ; au seuil de 3 votes, tranche isAnAbuse à la majorité >49% + notification activityStream), getNextIdToModerate. Byte-diff L/B 12/12. Backend : requireAuth (durcissement — le legacy laisse consolidate/getNext publics).
|
|
1487
|
+
* Constant : NEWS_MODERATE
|
|
1488
|
+
* @param data - Données envoyées à l'API
|
|
1489
|
+
* @returns Les données de réponse.
|
|
1490
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1491
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
1492
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1493
|
+
*/
|
|
1494
|
+
newsModerate(data: NewsModerateData): Promise<any>;
|
|
1495
|
+
/**
|
|
1496
|
+
* Modération des commentaires (sous-actions) : Port de citizenToolKit/comment/ModerateAction : consolidateModerateComment (reportAbuse map uid→raison string ; detail "<raison> - Par <nom>(<email>)"), saveModerate (vote seul, SANS seuil — consolidation commentée dans le legacy). Messages byte-exacts (accents ≠ news).
|
|
1497
|
+
* Constant : COMMENT_MODERATE
|
|
1498
|
+
* @param data - Données envoyées à l'API
|
|
1499
|
+
* @returns Les données de réponse.
|
|
1500
|
+
* @throws {ApiResponseError} - En cas d'erreur détectée dans la réponse.
|
|
1501
|
+
* @throws {ApiAuthenticationError} - En cas d'erreur d'authentification.
|
|
1502
|
+
* @throws {Error} - En cas d'erreur inattendue.
|
|
1503
|
+
*/
|
|
1504
|
+
commentModerate(data: CommentModerateData): Promise<any>;
|
|
1485
1505
|
}
|
|
1486
1506
|
export default EndpointApi;
|
|
@@ -6318,3 +6318,33 @@ export interface SetSourceData {
|
|
|
6318
6318
|
export interface ModerateData {
|
|
6319
6319
|
[k: string]: unknown;
|
|
6320
6320
|
}
|
|
6321
|
+
export interface NewsModerateData {
|
|
6322
|
+
/**
|
|
6323
|
+
* Sous-action ($_REQUEST['subAction'] legacy)
|
|
6324
|
+
*/
|
|
6325
|
+
subAction: "consolidateModerateNews" | "saveModerate" | "getNextIdToModerate";
|
|
6326
|
+
/**
|
|
6327
|
+
* ID de l'élément modéré (requis sauf getNextIdToModerate)
|
|
6328
|
+
*/
|
|
6329
|
+
id?: string;
|
|
6330
|
+
/**
|
|
6331
|
+
* Vote (STRING 'true'|'false' — stocké/comparé en string, parité legacy). Requis pour saveModerate.
|
|
6332
|
+
*/
|
|
6333
|
+
isAnAbuse?: "true" | "false";
|
|
6334
|
+
[k: string]: unknown;
|
|
6335
|
+
}
|
|
6336
|
+
export interface CommentModerateData {
|
|
6337
|
+
/**
|
|
6338
|
+
* Sous-action ($_REQUEST['subAction'] legacy)
|
|
6339
|
+
*/
|
|
6340
|
+
subAction: "consolidateModerateComment" | "saveModerate";
|
|
6341
|
+
/**
|
|
6342
|
+
* ID de l'élément modéré (requis sauf getNextIdToModerate)
|
|
6343
|
+
*/
|
|
6344
|
+
id?: string;
|
|
6345
|
+
/**
|
|
6346
|
+
* Vote (STRING 'true'|'false' — stocké/comparé en string, parité legacy). Requis pour saveModerate.
|
|
6347
|
+
*/
|
|
6348
|
+
isAnAbuse?: "true" | "false";
|
|
6349
|
+
[k: string]: unknown;
|
|
6350
|
+
}
|