@kontainer/strapi-plugin 0.1.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.
Files changed (39) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +129 -0
  3. package/dist/admin/KontainerMediaInput-C6wPHxqb.js +148 -0
  4. package/dist/admin/KontainerMediaInput-DmEdEpue.mjs +130 -0
  5. package/dist/admin/Settings-fZTH8z6T.js +152 -0
  6. package/dist/admin/Settings-tNEBWX1o.mjs +134 -0
  7. package/dist/admin/da-Be8uFPrt.js +28 -0
  8. package/dist/admin/da-WHaTm2Cy.mjs +28 -0
  9. package/dist/admin/en-B3JWZj1Z.mjs +28 -0
  10. package/dist/admin/en-B7EZhOY4.js +28 -0
  11. package/dist/admin/index-CMAfPTry.js +121 -0
  12. package/dist/admin/index-hpPTiq45.mjs +122 -0
  13. package/dist/admin/index.js +4 -0
  14. package/dist/admin/index.mjs +4 -0
  15. package/dist/admin/src/components/Initializer.d.ts +5 -0
  16. package/dist/admin/src/components/KontainerMediaInput.d.ts +3 -0
  17. package/dist/admin/src/components/PluginIcon.d.ts +2 -0
  18. package/dist/admin/src/index.d.ts +3 -0
  19. package/dist/admin/src/pages/Settings.d.ts +3 -0
  20. package/dist/admin/src/pluginId.d.ts +1 -0
  21. package/dist/admin/src/utils/getTranslation.d.ts +2 -0
  22. package/dist/server/index.js +356 -0
  23. package/dist/server/index.mjs +356 -0
  24. package/dist/server/src/bootstrap.d.ts +5 -0
  25. package/dist/server/src/config/index.d.ts +9 -0
  26. package/dist/server/src/content-types/index.d.ts +2 -0
  27. package/dist/server/src/controllers/controller.d.ts +11 -0
  28. package/dist/server/src/controllers/index.d.ts +12 -0
  29. package/dist/server/src/destroy.d.ts +5 -0
  30. package/dist/server/src/index.d.ts +108 -0
  31. package/dist/server/src/middlewares/index.d.ts +2 -0
  32. package/dist/server/src/policies/index.d.ts +2 -0
  33. package/dist/server/src/register.d.ts +5 -0
  34. package/dist/server/src/routes/admin/index.d.ts +12 -0
  35. package/dist/server/src/routes/content-api/index.d.ts +12 -0
  36. package/dist/server/src/routes/index.d.ts +25 -0
  37. package/dist/server/src/services/index.d.ts +51 -0
  38. package/dist/server/src/services/service.d.ts +57 -0
  39. package/package.json +91 -0
@@ -0,0 +1,5 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const bootstrap: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => Promise<void>;
5
+ export default bootstrap;
@@ -0,0 +1,9 @@
1
+ declare const _default: {
2
+ default: {
3
+ url: string;
4
+ };
5
+ validator(config: {
6
+ url?: unknown;
7
+ }): void;
8
+ };
9
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
@@ -0,0 +1,11 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const controller: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => {
5
+ usage(ctx: any): Promise<any>;
6
+ config(ctx: any): Promise<void>;
7
+ getSettings(ctx: any): Promise<void>;
8
+ validateSettings(ctx: any): Promise<any>;
9
+ updateSettings(ctx: any): Promise<any>;
10
+ };
11
+ export default controller;
@@ -0,0 +1,12 @@
1
+ declare const _default: {
2
+ controller: ({ strapi }: {
3
+ strapi: import('@strapi/types/dist/core').Strapi;
4
+ }) => {
5
+ usage(ctx: any): Promise<any>;
6
+ config(ctx: any): Promise<void>;
7
+ getSettings(ctx: any): Promise<void>;
8
+ validateSettings(ctx: any): Promise<any>;
9
+ updateSettings(ctx: any): Promise<any>;
10
+ };
11
+ };
12
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const destroy: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => void;
5
+ export default destroy;
@@ -0,0 +1,108 @@
1
+ declare const _default: {
2
+ register: ({ strapi }: {
3
+ strapi: import('@strapi/types/dist/core').Strapi;
4
+ }) => void;
5
+ bootstrap: ({ strapi }: {
6
+ strapi: import('@strapi/types/dist/core').Strapi;
7
+ }) => Promise<void>;
8
+ destroy: ({ strapi }: {
9
+ strapi: import('@strapi/types/dist/core').Strapi;
10
+ }) => void;
11
+ config: {
12
+ default: {
13
+ url: string;
14
+ };
15
+ validator(config: {
16
+ url?: unknown;
17
+ }): void;
18
+ };
19
+ controllers: {
20
+ controller: ({ strapi }: {
21
+ strapi: import('@strapi/types/dist/core').Strapi;
22
+ }) => {
23
+ usage(ctx: any): Promise<any>;
24
+ config(ctx: any): Promise<void>;
25
+ getSettings(ctx: any): Promise<void>;
26
+ validateSettings(ctx: any): Promise<any>;
27
+ updateSettings(ctx: any): Promise<any>;
28
+ };
29
+ };
30
+ routes: {
31
+ "content-api": () => {
32
+ type: string;
33
+ routes: {
34
+ method: string;
35
+ path: string;
36
+ handler: string;
37
+ config: {
38
+ policies: any[];
39
+ };
40
+ }[];
41
+ };
42
+ admin: () => {
43
+ type: string;
44
+ routes: {
45
+ method: string;
46
+ path: string;
47
+ handler: string;
48
+ config: {
49
+ policies: string[];
50
+ };
51
+ }[];
52
+ };
53
+ };
54
+ services: {
55
+ service: ({ strapi }: {
56
+ strapi: import('@strapi/types/dist/core').Strapi;
57
+ }) => {
58
+ settingsStore(): {
59
+ get(params?: Partial<{
60
+ key: string;
61
+ type?: string;
62
+ environment?: string;
63
+ name?: string;
64
+ tag?: string;
65
+ }>): Promise<unknown>;
66
+ set(params?: Partial<{
67
+ key: string;
68
+ value: unknown;
69
+ type?: string;
70
+ environment?: string;
71
+ name?: string;
72
+ tag?: string;
73
+ }>): Promise<void>;
74
+ delete(params?: Partial<{
75
+ key: string;
76
+ type?: string;
77
+ environment?: string;
78
+ name?: string;
79
+ tag?: string;
80
+ }>): Promise<void>;
81
+ };
82
+ getUrl(): Promise<string>;
83
+ getSettings(): Promise<{
84
+ url: string;
85
+ fileUrl: string;
86
+ }>;
87
+ setSettings(settings: {
88
+ url: string;
89
+ }): Promise<void>;
90
+ validateUrl(raw: string): Promise<{
91
+ valid: boolean;
92
+ reason?: string;
93
+ }>;
94
+ componentHasKontainerField(uid: string, seen?: Set<string>): boolean;
95
+ populateForComponent(uid: string): true | {
96
+ populate: Record<string, unknown>;
97
+ };
98
+ populateForAttributes(attributes: {
99
+ [x: string]: Record<string, unknown>;
100
+ }): Record<string, unknown>;
101
+ findUsage(fileId: string): Promise<import('./services/service').UsageEntry[]>;
102
+ };
103
+ };
104
+ contentTypes: {};
105
+ policies: {};
106
+ middlewares: {};
107
+ };
108
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: {};
2
+ export default _default;
@@ -0,0 +1,5 @@
1
+ import { Core } from '@strapi/strapi';
2
+ declare const register: ({ strapi }: {
3
+ strapi: Core.Strapi;
4
+ }) => void;
5
+ export default register;
@@ -0,0 +1,12 @@
1
+ declare const _default: () => {
2
+ type: string;
3
+ routes: {
4
+ method: string;
5
+ path: string;
6
+ handler: string;
7
+ config: {
8
+ policies: string[];
9
+ };
10
+ }[];
11
+ };
12
+ export default _default;
@@ -0,0 +1,12 @@
1
+ declare const _default: () => {
2
+ type: string;
3
+ routes: {
4
+ method: string;
5
+ path: string;
6
+ handler: string;
7
+ config: {
8
+ policies: any[];
9
+ };
10
+ }[];
11
+ };
12
+ export default _default;
@@ -0,0 +1,25 @@
1
+ declare const routes: {
2
+ "content-api": () => {
3
+ type: string;
4
+ routes: {
5
+ method: string;
6
+ path: string;
7
+ handler: string;
8
+ config: {
9
+ policies: any[];
10
+ };
11
+ }[];
12
+ };
13
+ admin: () => {
14
+ type: string;
15
+ routes: {
16
+ method: string;
17
+ path: string;
18
+ handler: string;
19
+ config: {
20
+ policies: string[];
21
+ };
22
+ }[];
23
+ };
24
+ };
25
+ export default routes;
@@ -0,0 +1,51 @@
1
+ declare const _default: {
2
+ service: ({ strapi }: {
3
+ strapi: import('@strapi/types/dist/core').Strapi;
4
+ }) => {
5
+ settingsStore(): {
6
+ get(params?: Partial<{
7
+ key: string;
8
+ type?: string;
9
+ environment?: string;
10
+ name?: string;
11
+ tag?: string;
12
+ }>): Promise<unknown>;
13
+ set(params?: Partial<{
14
+ key: string;
15
+ value: unknown;
16
+ type?: string;
17
+ environment?: string;
18
+ name?: string;
19
+ tag?: string;
20
+ }>): Promise<void>;
21
+ delete(params?: Partial<{
22
+ key: string;
23
+ type?: string;
24
+ environment?: string;
25
+ name?: string;
26
+ tag?: string;
27
+ }>): Promise<void>;
28
+ };
29
+ getUrl(): Promise<string>;
30
+ getSettings(): Promise<{
31
+ url: string;
32
+ fileUrl: string;
33
+ }>;
34
+ setSettings(settings: {
35
+ url: string;
36
+ }): Promise<void>;
37
+ validateUrl(raw: string): Promise<{
38
+ valid: boolean;
39
+ reason?: string;
40
+ }>;
41
+ componentHasKontainerField(uid: string, seen?: Set<string>): boolean;
42
+ populateForComponent(uid: string): true | {
43
+ populate: Record<string, unknown>;
44
+ };
45
+ populateForAttributes(attributes: {
46
+ [x: string]: Record<string, unknown>;
47
+ }): Record<string, unknown>;
48
+ findUsage(fileId: string): Promise<import('./service').UsageEntry[]>;
49
+ };
50
+ };
51
+ export default _default;
@@ -0,0 +1,57 @@
1
+ import { Core } from '@strapi/strapi';
2
+ export interface UsageEntry {
3
+ contentType: string;
4
+ field: string;
5
+ documentId: string;
6
+ id: number;
7
+ locale: string | null;
8
+ status: "draft" | "published";
9
+ }
10
+ type Attributes = Record<string, Record<string, unknown>>;
11
+ declare const service: ({ strapi }: {
12
+ strapi: Core.Strapi;
13
+ }) => {
14
+ settingsStore(): {
15
+ get(params?: Partial<{
16
+ key: string;
17
+ type?: string;
18
+ environment?: string;
19
+ name?: string;
20
+ tag?: string;
21
+ }>): Promise<unknown>;
22
+ set(params?: Partial<{
23
+ key: string;
24
+ value: unknown;
25
+ type?: string;
26
+ environment?: string;
27
+ name?: string;
28
+ tag?: string;
29
+ }>): Promise<void>;
30
+ delete(params?: Partial<{
31
+ key: string;
32
+ type?: string;
33
+ environment?: string;
34
+ name?: string;
35
+ tag?: string;
36
+ }>): Promise<void>;
37
+ };
38
+ getUrl(): Promise<string>;
39
+ getSettings(): Promise<{
40
+ url: string;
41
+ fileUrl: string;
42
+ }>;
43
+ setSettings(settings: {
44
+ url: string;
45
+ }): Promise<void>;
46
+ validateUrl(raw: string): Promise<{
47
+ valid: boolean;
48
+ reason?: string;
49
+ }>;
50
+ componentHasKontainerField(uid: string, seen?: Set<string>): boolean;
51
+ populateForComponent(uid: string): true | {
52
+ populate: Record<string, unknown>;
53
+ };
54
+ populateForAttributes(attributes: Attributes): Record<string, unknown>;
55
+ findUsage(fileId: string): Promise<UsageEntry[]>;
56
+ };
57
+ export default service;
package/package.json ADDED
@@ -0,0 +1,91 @@
1
+ {
2
+ "version": "0.1.0",
3
+ "keywords": [
4
+ "strapi",
5
+ "strapi-plugin",
6
+ "plugin",
7
+ "kontainer",
8
+ "dam",
9
+ "digital-asset-management",
10
+ "media",
11
+ "cdn",
12
+ "file-picker",
13
+ "custom-field"
14
+ ],
15
+ "type": "commonjs",
16
+ "exports": {
17
+ "./package.json": "./package.json",
18
+ "./strapi-admin": {
19
+ "types": "./dist/admin/src/index.d.ts",
20
+ "source": "./admin/src/index.ts",
21
+ "import": "./dist/admin/index.mjs",
22
+ "require": "./dist/admin/index.js",
23
+ "default": "./dist/admin/index.js"
24
+ },
25
+ "./strapi-server": {
26
+ "types": "./dist/server/src/index.d.ts",
27
+ "source": "./server/src/index.ts",
28
+ "import": "./dist/server/index.mjs",
29
+ "require": "./dist/server/index.js",
30
+ "default": "./dist/server/index.js"
31
+ }
32
+ },
33
+ "files": [
34
+ "dist"
35
+ ],
36
+ "scripts": {
37
+ "prepublishOnly": "npm run build",
38
+ "build": "strapi-plugin build",
39
+ "watch": "strapi-plugin watch",
40
+ "watch:link": "strapi-plugin watch:link",
41
+ "verify": "strapi-plugin verify",
42
+ "test:ts:front": "tsc -p admin/tsconfig.json --noEmit",
43
+ "test:ts:back": "tsc -p server/tsconfig.json --noEmit"
44
+ },
45
+ "dependencies": {},
46
+ "devDependencies": {
47
+ "@strapi/strapi": "^5.50.0",
48
+ "@strapi/sdk-plugin": "^6.1.1",
49
+ "prettier": "^3.9.4",
50
+ "@strapi/design-system": "^2.2.1",
51
+ "@strapi/icons": "^2.2.1",
52
+ "react-intl": "^6.8.9",
53
+ "react": "^18.3.1",
54
+ "react-dom": "^18.3.1",
55
+ "react-router-dom": "^6.30.4",
56
+ "styled-components": "^6.4.3",
57
+ "@types/react": "^18.3.31",
58
+ "@types/react-dom": "^18.3.7",
59
+ "@strapi/typescript-utils": "^5.50.0",
60
+ "typescript": "^5.9.3"
61
+ },
62
+ "peerDependencies": {
63
+ "@strapi/strapi": "^5.50.0",
64
+ "@strapi/sdk-plugin": "^6.1.1",
65
+ "@strapi/design-system": "^2.2.1",
66
+ "@strapi/icons": "^2.2.1",
67
+ "react-intl": "^6.8.9",
68
+ "react": "^18.3.1",
69
+ "react-dom": "^18.3.1",
70
+ "react-router-dom": "^6.30.4",
71
+ "styled-components": "^6.4.3"
72
+ },
73
+ "strapi": {
74
+ "kind": "plugin",
75
+ "name": "kontainer",
76
+ "displayName": "Kontainer DAM",
77
+ "description": "Pick assets from Kontainer and store CDN references \u2014 Kontainer stays the single source of truth."
78
+ },
79
+ "name": "@kontainer/strapi-plugin",
80
+ "description": "Kontainer DAM integration for Strapi 5 \u2014 pick assets from Kontainer, store CDN references only, track file usage.",
81
+ "license": "MIT",
82
+ "author": "Kontainer <support@kontainer.com> (https://kontainer.com)",
83
+ "homepage": "https://kontainer.com/integrations",
84
+ "repository": {
85
+ "type": "git",
86
+ "url": "ssh://git@git.konform.com:7999/konform/kontainer-plugin-strapi.git"
87
+ },
88
+ "engines": {
89
+ "node": ">=18.0.0"
90
+ }
91
+ }