@tiny-mce-umbraco/backoffice 16.1.1 → 16.2.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.
@@ -1,3 +1,9 @@
1
+ export type OpenAiApiConfig = {
2
+ model: string;
3
+ developerMessage: string;
4
+ temperature: number;
5
+ maxCompletionTokens: number;
6
+ };
1
7
  export type ProblemDetails = {
2
8
  type?: string | null;
3
9
  title?: string | null;
@@ -32,6 +38,7 @@ export type TinyMceConfig = {
32
38
  tinyMceUrl: string;
33
39
  openAiApikey: string;
34
40
  pluginsToExclude: Array<string>;
41
+ openAiApiConfig: OpenAiApiConfig;
35
42
  customConfig: {
36
43
  [key: string]: unknown;
37
44
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.gen.d.ts","sourceRoot":"","sources":["../../src/api/types.gen.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,SAAS,CAAC;CAChI,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,8BAA8B,CAAC;CACxC,CAAC;AAEF,oBAAY,8BAA8B;IACtC,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,GAAG,QAAQ;CACd;AAED,MAAM,MAAM,sBAAsB,GAAG;IACjC,QAAQ,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACvC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACvB,YAAY,EAAE;QACV,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACzB,CAAC;IACF,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAChC,YAAY,EAAE;QACV,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KAC1B,CAAC;CACL,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACrC,cAAc,CAAC,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IACxB,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,CAAC;IACb,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,GAAG,EAAE,4CAA4C,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC1B;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IACb;;OAEG;IACH,GAAG,EAAE,OAAO,CAAC;IACb;;OAEG;IACH,GAAG,EAAE,cAAc,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC,MAAM,eAAe,CAAC,CAAC;AAEpE,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;OAEG;IACH,GAAG,EAAE,0BAA0B,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,kBAAkB,CAAC,CAAC;AAE7E,MAAM,MAAM,aAAa,GAAG;IACxB,OAAO,EAAE,yBAAyB,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;CACtD,CAAC"}
1
+ {"version":3,"file":"types.gen.d.ts","sourceRoot":"","sources":["../../src/api/types.gen.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,6 @@
4
4
  * as a global variable, so that we can find it and use it in our tests.
5
5
  * We are also loading the default icons, so that we can use them outside of a TinyMce instance.
6
6
  */
7
- import 'tinymce';
8
- import 'tinymce/icons/default/icons.js';
9
7
  import type { RawEditorOptions, TinyMCE } from 'tinymce';
10
8
  export declare const tinymce: TinyMCE;
11
9
  export type * from 'tinymce';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/external/tinymce/index.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AACH,OAAO,SAAS,CAAC;AACjB,OAAO,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzD,eAAO,MAAM,OAAO,SAAiB,CAAC;AACtC,mBAAmB,SAAS,CAAC;AAE7B,eAAO,MAAM,aAAa,EAAE,gBAE3B,CAAC;AAGF,wBAAgB,YAAY,CAAC,UAAU,CAAC,EAAE,gBAAgB,uCAGzD;AAGD,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf;;WAEG;QACH,OAAO,EAAE,OAAO,CAAC;KACjB;CACD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/external/tinymce/index.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzD,eAAO,MAAM,OAAO,SAAiB,CAAC;AACtC,mBAAmB,SAAS,CAAC;AAE7B,eAAO,MAAM,aAAa,EAAE,gBAE3B,CAAC;AAGF,wBAAgB,YAAY,CAAC,UAAU,CAAC,EAAE,gBAAgB,uCAGzD;AAGD,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf;;WAEG;QACH,OAAO,EAAE,OAAO,CAAC;KACjB;CACD"}
@@ -5,11 +5,9 @@
5
5
  * as a global variable, so that we can find it and use it in our tests.
6
6
  * We are also loading the default icons, so that we can use them outside of a TinyMce instance.
7
7
  */
8
- import 'tinymce';
9
- import 'tinymce/icons/default/icons.js';
10
8
  export const tinymce = window.tinymce;
11
9
  export const defaultConfig = {
12
- base_url: '/App_Plugins/TinyMCE/lib',
10
+ base_url: '/App_Plugins/TinyMCE.Umbraco/lib',
13
11
  };
14
12
  /* Initialize TinyMCE */
15
13
  export function renderEditor(userConfig) {
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/icons/icons.ts"],"names":[],"mappings":";;;;AAAA,wBAA8F"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/icons/icons.ts"],"names":[],"mappings":";;;;AAAA,wBAAsG"}
@@ -1 +1 @@
1
- export default [{ name: 'icon-tinymce', path: `/App_Plugins/TinyMCE/icons/icon-tinymce.js` }];
1
+ export default [{ name: 'icon-tinymce', path: `/App_Plugins/TinyMCE.Umbraco/icons/icon-tinymce.js` }];
@@ -1 +1 @@
1
- {"version":3,"file":"ai-request-factory.d.ts","sourceRoot":"","sources":["../../../src/plugins/core/ai-request-factory.ts"],"names":[],"mappings":"AAGA,wBAAsB,eAAe,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,KAAK,IAAI,CAAC,CAkCzF"}
1
+ {"version":3,"file":"ai-request-factory.d.ts","sourceRoot":"","sources":["../../../src/plugins/core/ai-request-factory.ts"],"names":[],"mappings":"AAGA,wBAAsB,eAAe,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,KAAK,IAAI,CAAC,CA2CzF"}
@@ -3,6 +3,14 @@ import { TinyMceService } from '../../api/index.js';
3
3
  export async function createAiRequest() {
4
4
  const response = await TinyMceService.getConfig({ client: umbHttpClient });
5
5
  const apiKey = response.data?.config?.openAiApikey || '';
6
+ const model = response.data?.config?.openAiApiConfig?.model || 'gpt-5';
7
+ const temp = response.data?.config?.openAiApiConfig?.temperature || 1.0;
8
+ const maxtokens = response.data?.config?.openAiApiConfig?.maxCompletionTokens || 800;
9
+ const devmessage = response.data?.config?.openAiApiConfig?.developerMessage || '';
10
+ let devmessageArray = [];
11
+ if (devmessage) {
12
+ devmessageArray.push({ role: 'developer', content: devmessage });
13
+ }
6
14
  return (request, respondWith) => {
7
15
  const openAiOptions = {
8
16
  method: 'POST',
@@ -11,10 +19,10 @@ export async function createAiRequest() {
11
19
  Authorization: `Bearer ${apiKey}`,
12
20
  },
13
21
  body: JSON.stringify({
14
- model: 'gpt-4o',
15
- temperature: 0.7,
16
- max_tokens: 800,
17
- messages: [{ role: 'user', content: request.prompt }],
22
+ model: model,
23
+ temperature: temp,
24
+ max_completion_tokens: maxtokens,
25
+ messages: [{ role: 'user', content: request.prompt }, ...devmessageArray],
18
26
  }),
19
27
  };
20
28
  respondWith.string((signal) => fetch('https://api.openai.com/v1/chat/completions', { signal, ...openAiOptions }).then(async (response) => {
@@ -0,0 +1,4 @@
1
+ import 'tinymce';
2
+ import 'tinymce/icons/default/icons.js';
3
+ export declare const manifests: Array<UmbExtensionManifest>;
4
+ //# sourceMappingURL=tinymce-lib-manifests.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tinymce-lib-manifests.d.ts","sourceRoot":"","sources":["../src/tinymce-lib-manifests.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAC;AACjB,OAAO,gCAAgC,CAAC;AAExC,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CACjD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import 'tinymce';
2
+ import 'tinymce/icons/default/icons.js';
3
+ export const manifests = [];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tiny-mce-umbraco/backoffice",
3
- "version": "16.1.1",
3
+ "version": "16.2.0",
4
4
  "description": "This Umbraco CMS package enables access to the TinyMCE-based Rich Text Editor (RTE) in version 16 and above. It also supports the use of TinyMCE Premium plugins with a valid subscription. Additional features include streamlined configuration for RTE Data Types in Umbraco and enhanced settings that support direct JSON-based configuration via .NET (appsettings.config).",
5
5
  "keywords": [
6
6
  "umbraco",
@@ -40,22 +40,22 @@
40
40
  "@rollup/plugin-json": "^6.1.0",
41
41
  "@rollup/plugin-node-resolve": "^16.0.1",
42
42
  "@rollup/plugin-replace": "^6.0.2",
43
- "@umbraco-cms/backoffice": "^16.1.1",
43
+ "@umbraco-cms/backoffice": "^16.2.0",
44
44
  "chalk": "^5.3.0",
45
45
  "cross-env": "7.0.3",
46
46
  "eslint": "^9.25.1",
47
47
  "node-fetch": "^3.3.2",
48
- "rollup": "^4.34.8",
49
- "rollup-plugin-esbuild": "^6.2.0",
48
+ "rollup": "^4.40.0",
49
+ "rollup-plugin-esbuild": "^6.2.1",
50
50
  "rollup-plugin-import-css": "^3.5.8",
51
51
  "tiny-glob": "^0.2.9",
52
- "typescript": "^5.7.3",
52
+ "typescript": "^5.8.3",
53
53
  "vite": "^6.3.5",
54
54
  "vite-plugin-static-copy": "^2.3.1",
55
55
  "vite-tsconfig-paths": "^5.1.4"
56
56
  },
57
57
  "peerDependencies": {
58
- "@umbraco-cms/backoffice": "^16.1.1",
58
+ "@umbraco-cms/backoffice": "^16.2.0",
59
59
  "tinymce": "^6.8.5",
60
60
  "tinymce-i18n": "^24.12.30"
61
61
  }