@localazy/strapi-plugin 1.1.0 → 1.1.2

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.
Files changed (65) hide show
  1. package/dist/_chunks/{FetchIdentity-DfV1OWMB.js → FetchIdentity-CevvxeEj.js} +73 -46
  2. package/dist/_chunks/{FetchIdentity-lkoWjYjn.mjs → FetchIdentity-DeThazz9.mjs} +43 -16
  3. package/dist/_chunks/{LanguagesSelector-BmWfSZq6.js → LanguagesSelector-BExpl4Vx.js} +15 -3
  4. package/dist/_chunks/{LanguagesSelector-vSZvVGUT.mjs → LanguagesSelector-D62gLZsM.mjs} +15 -3
  5. package/dist/_chunks/{LocalazyApp-st8mwIbM.mjs → LocalazyApp-Czkb4s5J.mjs} +791 -61
  6. package/dist/_chunks/{LocalazyApp-BUfYt7UL.js → LocalazyApp-DIcO748C.js} +791 -59
  7. package/dist/_chunks/{LocalazyContentTransferSetup-BjLBgqFO.js → LocalazyContentTransferSetup-DAyZdwi9.js} +13 -10
  8. package/dist/_chunks/{LocalazyContentTransferSetup-D2YvBYs_.mjs → LocalazyContentTransferSetup-Dx0Z6DXc.mjs} +13 -10
  9. package/dist/_chunks/{LocalazyGlobalSettings-DHCU2_RH.mjs → LocalazyGlobalSettings-DWMBqlN4.mjs} +149 -12
  10. package/dist/_chunks/{LocalazyGlobalSettings-Do5tOyhB.js → LocalazyGlobalSettings-DjrXGVxl.js} +148 -11
  11. package/dist/_chunks/{LocalazyPanel-CulgT97p.mjs → LocalazyPanel-B-0HBTL_.mjs} +4 -4
  12. package/dist/_chunks/{LocalazyPanel-BDxUI_RH.js → LocalazyPanel-nBOpQo5B.js} +4 -4
  13. package/dist/_chunks/{LocalazyStatusColumn-DoTWD2eL.mjs → LocalazyStatusColumn-CpO3yccG.mjs} +9 -7
  14. package/dist/_chunks/{LocalazyStatusColumn-Dpwoc5Ig.js → LocalazyStatusColumn-cGsUDMlX.js} +9 -7
  15. package/dist/_chunks/{RequireLocalazyAuth-BzM7C6Yw.js → RequireLocalazyAuth-56K8HUNR.js} +4 -4
  16. package/dist/_chunks/{RequireLocalazyAuth-CqHrZ1Ah.mjs → RequireLocalazyAuth-Dh-mAMcg.mjs} +4 -4
  17. package/dist/_chunks/{entry-exclusion-service-DWFMKgkA.mjs → entry-exclusion-service-Dm5_iP7I.mjs} +1 -1
  18. package/dist/_chunks/{entry-exclusion-service-Cvu8PQUI.js → entry-exclusion-service-Rf4Tr0zW.js} +1 -1
  19. package/dist/_chunks/{has-model-changed-CWdMNRB1.mjs → has-model-changed-6p1lR-Ho.mjs} +2 -2
  20. package/dist/_chunks/{has-model-changed-D1f6is8z.js → has-model-changed-CGyDQARr.js} +2 -2
  21. package/dist/_chunks/{i18n-DaBjUC3Y.js → i18n-CAsbU4pi.js} +62 -4
  22. package/dist/_chunks/{i18n-Bga-GG_Z.mjs → i18n-QelOdIB2.mjs} +62 -4
  23. package/dist/_chunks/{index-BSNW1ypR.js → index-BK7lmZSN.js} +57 -19
  24. package/dist/_chunks/{index-CtvR-R3c.mjs → index-Bpf1Mw2A.mjs} +8 -8
  25. package/dist/_chunks/{index-BgPI2yQD.js → index-BsQ_ie4C.js} +8 -8
  26. package/dist/_chunks/{index-BIHAiJnE.mjs → index-CHjIMO9T.mjs} +78 -40
  27. package/dist/_chunks/{strapi-api-base-CturxOqD.mjs → strapi-api-base-Bem_CGuz.mjs} +2 -2
  28. package/dist/_chunks/{strapi-api-base-CN6q5tPh.js → strapi-api-base-W_bUTSlY.js} +2 -2
  29. package/dist/admin/index.js +1 -1
  30. package/dist/admin/index.mjs +1 -1
  31. package/dist/admin/src/components/PluginErrorBoundary.d.ts +5 -0
  32. package/dist/admin/src/modules/@common/locale/en.d.ts +4 -0
  33. package/dist/admin/src/modules/@common/services/project-service.d.ts +9 -0
  34. package/dist/admin/src/modules/@common/styles/heading-fix.d.ts +7 -0
  35. package/dist/admin/src/modules/@common/utils/export-json.d.ts +1 -0
  36. package/dist/admin/src/modules/@common/utils/redirect-to-plugin-route.d.ts +1 -0
  37. package/dist/admin/src/modules/activity-logs/components/HighlightMatch.d.ts +6 -0
  38. package/dist/admin/src/modules/activity-logs/components/SessionMetadata.d.ts +7 -0
  39. package/dist/admin/src/modules/activity-logs/components/SessionsTable.d.ts +17 -0
  40. package/dist/admin/src/modules/activity-logs/components/SortableHeader.d.ts +10 -0
  41. package/dist/admin/src/modules/activity-logs/components/StatusLabel.d.ts +6 -0
  42. package/dist/admin/src/modules/activity-logs/hooks/use-debounced-search.d.ts +6 -0
  43. package/dist/admin/src/modules/activity-logs/locale/en.d.ts +33 -0
  44. package/dist/admin/src/modules/activity-logs/models/activity-logs.d.ts +19 -0
  45. package/dist/admin/src/modules/activity-logs/services/activity-logs-service.d.ts +6 -0
  46. package/dist/admin/src/modules/activity-logs/utils/export-logs.d.ts +1 -0
  47. package/dist/admin/src/modules/activity-logs/utils/format-utils.d.ts +4 -0
  48. package/dist/admin/src/modules/plugin-settings/components/WebhookSetup.d.ts +2 -0
  49. package/dist/admin/src/modules/plugin-settings/locale/en.d.ts +21 -0
  50. package/dist/admin/src/pages/ActivityLogDetail.d.ts +7 -0
  51. package/dist/admin/src/pages/ActivityLogs.d.ts +7 -0
  52. package/dist/server/index.js +395 -49
  53. package/dist/server/index.mjs +395 -49
  54. package/dist/server/src/controllers/activity-logs-controller.d.ts +10 -0
  55. package/dist/server/src/controllers/index.d.ts +12 -1
  56. package/dist/server/src/controllers/localazy-project-controller.d.ts +4 -1
  57. package/dist/server/src/core/index.d.ts +13 -0
  58. package/dist/server/src/db/model/activity-logs.d.ts +20 -0
  59. package/dist/server/src/db/model/plugin-settings.d.ts +14 -0
  60. package/dist/server/src/index.d.ts +27 -1
  61. package/dist/server/src/routes/activity-logs-routes.d.ts +9 -0
  62. package/dist/server/src/services/activity-logs-service.d.ts +17 -0
  63. package/dist/server/src/services/index.d.ts +15 -0
  64. package/dist/server/src/services/localazy-pubapi-service.d.ts +2 -0
  65. package/package.json +4 -3
@@ -0,0 +1,10 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const ActivityLogsController: ({ strapi: _strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => {
5
+ getSessions(ctx: any): Promise<void>;
6
+ getSession(ctx: any): Promise<any>;
7
+ exportSessions(ctx: any): Promise<void>;
8
+ clearSessions(ctx: any): Promise<void>;
9
+ };
10
+ export default ActivityLogsController;
@@ -20,10 +20,13 @@ declare const _default: {
20
20
  postLifecycleLocalazyWebhooks(): Promise<void>;
21
21
  getPluginVersion(ctx: any): Promise<void>;
22
22
  };
23
- LocalazyProjectController: ({ strapi: _strapi }: {
23
+ LocalazyProjectController: ({ strapi }: {
24
24
  strapi: import("@strapi/types/dist/core").Strapi;
25
25
  }) => {
26
26
  getConnectedProject(ctx: any): Promise<void>;
27
+ getWebhookStatus(ctx: any): Promise<void>;
28
+ setupWebhook(ctx: any): Promise<any>;
29
+ getStrapiUrl(ctx: any): Promise<void>;
27
30
  };
28
31
  PluginSettingsController: ({ strapi: _strapi }: {
29
32
  strapi: import("@strapi/types/dist/core").Strapi;
@@ -47,5 +50,13 @@ declare const _default: {
47
50
  setEntryExclusion(ctx: any): Promise<any>;
48
51
  getContentTypeExclusions(ctx: any): Promise<any>;
49
52
  };
53
+ ActivityLogsController: ({ strapi: _strapi }: {
54
+ strapi: import("@strapi/types/dist/core").Strapi;
55
+ }) => {
56
+ getSessions(ctx: any): Promise<void>;
57
+ getSession(ctx: any): Promise<any>;
58
+ exportSessions(ctx: any): Promise<void>;
59
+ clearSessions(ctx: any): Promise<void>;
60
+ };
50
61
  };
51
62
  export default _default;
@@ -1,7 +1,10 @@
1
1
  import { Core } from '@strapi/strapi';
2
- declare const LocalazyProjectController: ({ strapi: _strapi }: {
2
+ declare const LocalazyProjectController: ({ strapi }: {
3
3
  strapi: Core.Strapi;
4
4
  }) => {
5
5
  getConnectedProject(ctx: any): Promise<void>;
6
+ getWebhookStatus(ctx: any): Promise<void>;
7
+ setupWebhook(ctx: any): Promise<any>;
8
+ getStrapiUrl(ctx: any): Promise<void>;
6
9
  };
7
10
  export default LocalazyProjectController;
@@ -8,6 +8,8 @@ export declare const getLocalazyPubAPIService: () => {
8
8
  getStrapiFile(projectId: string): Promise<import("@localazy/api-client").File>;
9
9
  listProjects(addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project[]>;
10
10
  getProject(projectId: string, addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project>;
11
+ listWebhooks(projectId: string): Promise<import("@localazy/api-client").Webhook[]>;
12
+ updateWebhooks(projectId: string, items: any[]): Promise<void>;
11
13
  getWebhooksSecret(projectId: string): Promise<string>;
12
14
  };
13
15
  export declare const getLocalazyTransferUploadService: () => {
@@ -79,3 +81,14 @@ export declare const getEntryExclusionService: () => {
79
81
  setEntryExclusion(contentType: string, documentId: string, excludeFromTranslation: boolean): Promise<void>;
80
82
  getContentTypeExclusions(contentType: string): Promise<string[]>;
81
83
  };
84
+ export declare const getActivityLogsService: () => {
85
+ getActivityLogs(): Promise<import("../db/model/activity-logs").ActivityLogs>;
86
+ saveActivityLogs(logs: import("../db/model/activity-logs").ActivityLogs): Promise<void>;
87
+ startSession(eventType: "upload" | "download" | "webhook", initiatedBy: string): Promise<string>;
88
+ addEntry(sessionId: string, message: string, data?: any): Promise<void>;
89
+ finishSession(sessionId: string, status: "completed" | "failed", summary: string): Promise<void>;
90
+ getSessions(eventType?: "upload" | "download" | "webhook"): Promise<import("../db/model/activity-logs").ActivityLogSession[]>;
91
+ getAllSessionsWithEntries(): Promise<import("../db/model/activity-logs").ActivityLogSession[]>;
92
+ getSession(sessionId: string): Promise<import("../db/model/activity-logs").ActivityLogSession>;
93
+ clearSessions(): Promise<void>;
94
+ };
@@ -0,0 +1,20 @@
1
+ export declare const KEY = "activity-logs";
2
+ export type ActivityLogEntry = {
3
+ message: string;
4
+ timestamp: number;
5
+ data?: any;
6
+ };
7
+ export type ActivityLogSession = {
8
+ id: string;
9
+ eventType: 'upload' | 'download' | 'webhook';
10
+ status: 'in-progress' | 'completed' | 'failed';
11
+ startedAt: number;
12
+ finishedAt?: number;
13
+ initiatedBy: string;
14
+ summary: string;
15
+ entries: ActivityLogEntry[];
16
+ };
17
+ export type ActivityLogs = {
18
+ sessions: ActivityLogSession[];
19
+ };
20
+ export declare const emptyActivityLogs: ActivityLogs;
@@ -1,5 +1,19 @@
1
1
  export declare const KEY = "plugin-settings";
2
+ export type SortPreference = {
3
+ key: string;
4
+ direction: 'asc' | 'desc';
5
+ };
6
+ export type WebhookConfig = {
7
+ url: string;
8
+ webhookId?: string;
9
+ };
2
10
  export type PluginSettings = {
3
11
  defaultRoute: string | null;
12
+ activityLogsSort?: {
13
+ upload?: SortPreference;
14
+ download?: SortPreference;
15
+ webhook?: SortPreference;
16
+ };
17
+ webhookConfig?: WebhookConfig;
4
18
  };
5
19
  export declare const emptyPluginSettings: PluginSettings;
@@ -47,10 +47,13 @@ declare const _default: {
47
47
  postLifecycleLocalazyWebhooks(): Promise<void>;
48
48
  getPluginVersion(ctx: any): Promise<void>;
49
49
  };
50
- LocalazyProjectController: ({ strapi: _strapi }: {
50
+ LocalazyProjectController: ({ strapi }: {
51
51
  strapi: import("@strapi/types/dist/core").Strapi;
52
52
  }) => {
53
53
  getConnectedProject(ctx: any): Promise<void>;
54
+ getWebhookStatus(ctx: any): Promise<void>;
55
+ setupWebhook(ctx: any): Promise<any>;
56
+ getStrapiUrl(ctx: any): Promise<void>;
54
57
  };
55
58
  PluginSettingsController: ({ strapi: _strapi }: {
56
59
  strapi: import("@strapi/types/dist/core").Strapi;
@@ -74,6 +77,14 @@ declare const _default: {
74
77
  setEntryExclusion(ctx: any): Promise<any>;
75
78
  getContentTypeExclusions(ctx: any): Promise<any>;
76
79
  };
80
+ ActivityLogsController: ({ strapi: _strapi }: {
81
+ strapi: import("@strapi/types/dist/core").Strapi;
82
+ }) => {
83
+ getSessions(ctx: any): Promise<void>;
84
+ getSession(ctx: any): Promise<any>;
85
+ exportSessions(ctx: any): Promise<void>;
86
+ clearSessions(ctx: any): Promise<void>;
87
+ };
77
88
  };
78
89
  routes: {
79
90
  'content-api': {
@@ -133,6 +144,8 @@ declare const _default: {
133
144
  getStrapiFile(projectId: string): Promise<import("@localazy/api-client").File>;
134
145
  listProjects(addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project[]>;
135
146
  getProject(projectId: string, addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project>;
147
+ listWebhooks(projectId: string): Promise<import("@localazy/api-client").Webhook[]>;
148
+ updateWebhooks(projectId: string, items: any[]): Promise<void>;
136
149
  getWebhooksSecret(projectId: string): Promise<string>;
137
150
  };
138
151
  PluginSettingsService: ({ strapi }: {
@@ -212,6 +225,19 @@ declare const _default: {
212
225
  setEntryExclusion(contentType: string, documentId: string, excludeFromTranslation: boolean): Promise<void>;
213
226
  getContentTypeExclusions(contentType: string): Promise<string[]>;
214
227
  };
228
+ ActivityLogsService: ({ strapi }: {
229
+ strapi: import("@strapi/types/dist/core").Strapi;
230
+ }) => {
231
+ getActivityLogs(): Promise<import("./db/model/activity-logs").ActivityLogs>;
232
+ saveActivityLogs(logs: import("./db/model/activity-logs").ActivityLogs): Promise<void>;
233
+ startSession(eventType: "upload" | "download" | "webhook", initiatedBy: string): Promise<string>;
234
+ addEntry(sessionId: string, message: string, data?: any): Promise<void>;
235
+ finishSession(sessionId: string, status: "completed" | "failed", summary: string): Promise<void>;
236
+ getSessions(eventType?: "upload" | "download" | "webhook"): Promise<import("./db/model/activity-logs").ActivityLogSession[]>;
237
+ getAllSessionsWithEntries(): Promise<import("./db/model/activity-logs").ActivityLogSession[]>;
238
+ getSession(sessionId: string): Promise<import("./db/model/activity-logs").ActivityLogSession>;
239
+ clearSessions(): Promise<void>;
240
+ };
215
241
  };
216
242
  contentTypes: {};
217
243
  policies: {};
@@ -0,0 +1,9 @@
1
+ declare const ActivityLogsRoutes: {
2
+ method: string;
3
+ path: string;
4
+ handler: string;
5
+ config: {
6
+ policies: any[];
7
+ };
8
+ }[];
9
+ export default ActivityLogsRoutes;
@@ -0,0 +1,17 @@
1
+ import { Core } from '@strapi/strapi';
2
+ import { ActivityLogs, ActivityLogSession } from '../db/model/activity-logs';
3
+ declare const ActivityLogsService: ({ strapi }: {
4
+ strapi: Core.Strapi;
5
+ }) => {
6
+ getActivityLogs(): Promise<ActivityLogs>;
7
+ saveActivityLogs(logs: ActivityLogs): Promise<void>;
8
+ startSession(eventType: ActivityLogSession['eventType'], initiatedBy: string): Promise<string>;
9
+ addEntry(sessionId: string, message: string, data?: any): Promise<void>;
10
+ finishSession(sessionId: string, status: 'completed' | 'failed', summary: string): Promise<void>;
11
+ getSessions(eventType?: ActivityLogSession['eventType']): Promise<ActivityLogSession[]>;
12
+ getAllSessionsWithEntries(): Promise<ActivityLogSession[]>;
13
+ getSession(sessionId: string): Promise<ActivityLogSession | null>;
14
+ clearSessions(): Promise<void>;
15
+ };
16
+ export type ActivityLogsServiceReturnType = ReturnType<typeof ActivityLogsService>;
17
+ export default ActivityLogsService;
@@ -21,6 +21,8 @@ declare const _default: {
21
21
  getStrapiFile(projectId: string): Promise<import("@localazy/api-client").File>;
22
22
  listProjects(addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project[]>;
23
23
  getProject(projectId: string, addOrganization?: boolean, addLanguages?: boolean): Promise<import("@localazy/api-client").Project>;
24
+ listWebhooks(projectId: string): Promise<import("@localazy/api-client").Webhook[]>;
25
+ updateWebhooks(projectId: string, items: any[]): Promise<void>;
24
26
  getWebhooksSecret(projectId: string): Promise<string>;
25
27
  };
26
28
  PluginSettingsService: ({ strapi }: {
@@ -100,5 +102,18 @@ declare const _default: {
100
102
  setEntryExclusion(contentType: string, documentId: string, excludeFromTranslation: boolean): Promise<void>;
101
103
  getContentTypeExclusions(contentType: string): Promise<string[]>;
102
104
  };
105
+ ActivityLogsService: ({ strapi }: {
106
+ strapi: import("@strapi/types/dist/core").Strapi;
107
+ }) => {
108
+ getActivityLogs(): Promise<import("../db/model/activity-logs").ActivityLogs>;
109
+ saveActivityLogs(logs: import("../db/model/activity-logs").ActivityLogs): Promise<void>;
110
+ startSession(eventType: "upload" | "download" | "webhook", initiatedBy: string): Promise<string>;
111
+ addEntry(sessionId: string, message: string, data?: any): Promise<void>;
112
+ finishSession(sessionId: string, status: "completed" | "failed", summary: string): Promise<void>;
113
+ getSessions(eventType?: "upload" | "download" | "webhook"): Promise<import("../db/model/activity-logs").ActivityLogSession[]>;
114
+ getAllSessionsWithEntries(): Promise<import("../db/model/activity-logs").ActivityLogSession[]>;
115
+ getSession(sessionId: string): Promise<import("../db/model/activity-logs").ActivityLogSession>;
116
+ clearSessions(): Promise<void>;
117
+ };
103
118
  };
104
119
  export default _default;
@@ -7,6 +7,8 @@ declare const LocalazyPubAPIService: ({ strapi }: {
7
7
  getStrapiFile(projectId: string): Promise<import("@localazy/api-client").File>;
8
8
  listProjects(addOrganization?: boolean, addLanguages?: boolean): Promise<Project[]>;
9
9
  getProject(projectId: string, addOrganization?: boolean, addLanguages?: boolean): Promise<Project | null>;
10
+ listWebhooks(projectId: string): Promise<import("@localazy/api-client").Webhook[]>;
11
+ updateWebhooks(projectId: string, items: any[]): Promise<void>;
10
12
  getWebhooksSecret(projectId: string): Promise<string>;
11
13
  };
12
14
  export type LocalazyPubAPIServiceReturnType = ReturnType<typeof LocalazyPubAPIService>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@localazy/strapi-plugin",
3
- "version": "1.1.0",
3
+ "version": "1.1.2",
4
4
  "description": "The official Strapi Plugin by Localazy.",
5
5
  "keywords": [
6
6
  "strapi",
@@ -50,7 +50,8 @@
50
50
  },
51
51
  "files": [
52
52
  "dist",
53
- "install"
53
+ "install",
54
+ "README.md"
54
55
  ],
55
56
  "scripts": {
56
57
  "build": "strapi-plugin build",
@@ -66,7 +67,7 @@
66
67
  "verify": "strapi-plugin verify",
67
68
  "watch": "strapi-plugin watch",
68
69
  "watch:link": "strapi-plugin watch:link",
69
- "prepare": "husky"
70
+ "prepare": "husky || true"
70
71
  },
71
72
  "lint-staged": {
72
73
  "*.{ts,tsx}": [