@tiny-mce-umbraco/backoffice 17.3.4 → 18.0.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 (72) hide show
  1. package/dist-cms/api/client/client.gen.d.ts.map +1 -1
  2. package/dist-cms/api/client/client.gen.js +114 -102
  3. package/dist-cms/api/client/index.d.ts +1 -1
  4. package/dist-cms/api/client/index.d.ts.map +1 -1
  5. package/dist-cms/api/client/types.gen.d.ts +9 -13
  6. package/dist-cms/api/client/types.gen.d.ts.map +1 -1
  7. package/dist-cms/api/client/utils.gen.d.ts +8 -4
  8. package/dist-cms/api/client/utils.gen.d.ts.map +1 -1
  9. package/dist-cms/api/client/utils.gen.js +13 -15
  10. package/dist-cms/api/client.gen.d.ts.map +1 -1
  11. package/dist-cms/api/client.gen.js +1 -3
  12. package/dist-cms/api/core/auth.gen.d.ts.map +1 -1
  13. package/dist-cms/api/core/bodySerializer.gen.d.ts +16 -8
  14. package/dist-cms/api/core/bodySerializer.gen.d.ts.map +1 -1
  15. package/dist-cms/api/core/bodySerializer.gen.js +1 -1
  16. package/dist-cms/api/core/params.gen.d.ts +10 -0
  17. package/dist-cms/api/core/params.gen.d.ts.map +1 -1
  18. package/dist-cms/api/core/params.gen.js +22 -10
  19. package/dist-cms/api/core/pathSerializer.gen.d.ts.map +1 -1
  20. package/dist-cms/api/core/pathSerializer.gen.js +3 -11
  21. package/dist-cms/api/core/queryKeySerializer.gen.d.ts.map +1 -1
  22. package/dist-cms/api/core/queryKeySerializer.gen.js +4 -11
  23. package/dist-cms/api/core/serverSentEvents.gen.d.ts +1 -1
  24. package/dist-cms/api/core/serverSentEvents.gen.d.ts.map +1 -1
  25. package/dist-cms/api/core/serverSentEvents.gen.js +6 -9
  26. package/dist-cms/api/core/types.gen.d.ts +1 -1
  27. package/dist-cms/api/core/types.gen.d.ts.map +1 -1
  28. package/dist-cms/api/core/utils.gen.d.ts.map +1 -1
  29. package/dist-cms/api/core/utils.gen.js +1 -1
  30. package/dist-cms/api/index.d.ts +2 -2
  31. package/dist-cms/api/index.d.ts.map +1 -1
  32. package/dist-cms/api/index.js +1 -2
  33. package/dist-cms/api/sdk.gen.d.ts +1 -1
  34. package/dist-cms/api/sdk.gen.d.ts.map +1 -1
  35. package/dist-cms/api/sdk.gen.js +1 -6
  36. package/dist-cms/api/types.gen.d.ts +13 -18
  37. package/dist-cms/api/types.gen.d.ts.map +1 -1
  38. package/dist-cms/api/types.gen.js +1 -6
  39. package/dist-cms/components/input-tiny-mce/input-tiny-mce.defaults.d.ts.map +1 -1
  40. package/dist-cms/components/input-tiny-mce/input-tiny-mce.defaults.js +73 -6
  41. package/dist-cms/components/input-tiny-mce/input-tiny-mce.element.d.ts +1 -1
  42. package/dist-cms/components/stylesheet-rule-input/stylesheet-rule-input.element.d.ts +1 -1
  43. package/dist-cms/localizations/ar.d.ts.map +1 -1
  44. package/dist-cms/localizations/ar.js +3 -0
  45. package/dist-cms/localizations/bs.d.ts.map +1 -1
  46. package/dist-cms/localizations/bs.js +3 -0
  47. package/dist-cms/localizations/cy.d.ts.map +1 -1
  48. package/dist-cms/localizations/cy.js +3 -0
  49. package/dist-cms/localizations/da.d.ts.map +1 -1
  50. package/dist-cms/localizations/da.js +4 -0
  51. package/dist-cms/localizations/en.d.ts.map +1 -1
  52. package/dist-cms/localizations/en.js +4 -0
  53. package/dist-cms/localizations/hr.d.ts.map +1 -1
  54. package/dist-cms/localizations/hr.js +3 -0
  55. package/dist-cms/localizations/it.d.ts.map +1 -1
  56. package/dist-cms/localizations/it.js +3 -0
  57. package/dist-cms/localizations/manifests.d.ts.map +1 -1
  58. package/dist-cms/localizations/manifests.js +24 -24
  59. package/dist-cms/localizations/nl.d.ts.map +1 -1
  60. package/dist-cms/localizations/nl.js +3 -0
  61. package/dist-cms/localizations/tr.d.ts.map +1 -1
  62. package/dist-cms/localizations/tr.js +3 -0
  63. package/dist-cms/plugins/core/ai-request-factory.js +2 -2
  64. package/dist-cms/plugins/tiny-mce-block-picker.plugin.d.ts.map +1 -1
  65. package/dist-cms/plugins/tiny-mce-block-picker.plugin.js +20 -2
  66. package/dist-cms/plugins/tiny-mce-embeddedmedia.plugin.d.ts.map +1 -1
  67. package/dist-cms/plugins/tiny-mce-embeddedmedia.plugin.js +1 -0
  68. package/dist-cms/plugins/tiny-mce-mediapicker.plugin.d.ts.map +1 -1
  69. package/dist-cms/plugins/tiny-mce-mediapicker.plugin.js +7 -3
  70. package/dist-cms/property-editors/tiny-mce/manifests.d.ts.map +1 -1
  71. package/dist-cms/property-editors/tiny-mce/manifests.js +1 -0
  72. package/package.json +12 -8
@@ -1,4 +1,7 @@
1
1
  export default {
2
+ blockEditor: {
3
+ confirmDeleteBlockMessage: 'Jeste li sigurni da želite obrisati sadržaj <strong>%0%</strong>?',
4
+ },
2
5
  create: {
3
6
  newRteStyleSheetFile: 'Nova Rich Text Editor CSS datoteka',
4
7
  },
@@ -1 +1 @@
1
- {"version":3,"file":"it.d.ts","sourceRoot":"","sources":["../../src/localizations/it.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBAMrF,yBAAyB;AAJ9B,wBAI+B"}
1
+ {"version":3,"file":"it.d.ts","sourceRoot":"","sources":["../../src/localizations/it.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBASrF,yBAAyB;AAP9B,wBAO+B"}
@@ -1,4 +1,7 @@
1
1
  export default {
2
+ blockEditor: {
3
+ confirmDeleteBlockMessage: 'Sei sicuro di voler eliminare il contenuto <strong>%0%</strong>?',
4
+ },
2
5
  create: {
3
6
  newRteStyleSheetFile: 'Nuovo foglio di stile per Rich Text Editor',
4
7
  },
@@ -1 +1 @@
1
- {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../src/localizations/manifests.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAgGjD,CAAC"}
1
+ {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../src/localizations/manifests.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAoFjD,CAAC"}
@@ -1,97 +1,97 @@
1
+ import arLocalization from './ar.js';
2
+ import bsLocalization from './bs.js';
3
+ import csLocalization from './cs.js';
4
+ import cyLocalization from './cy.js';
5
+ import daLocalization from './da.js';
6
+ import deLocalization from './de.js';
7
+ import enLocalization from './en.js';
8
+ import frLocalization from './fr.js';
9
+ import hrLocalization from './hr.js';
10
+ import itLocalization from './it.js';
11
+ import nlLocalization from './nl.js';
12
+ import trLocalization from './tr.js';
1
13
  export const manifests = [
2
14
  {
3
15
  type: 'localization',
4
16
  name: 'TinyMCE Umbraco English Localization',
5
17
  alias: 'Umb.TinyMCE.Localization.English',
6
- js: () => import('./en.js'),
7
- meta: { culture: 'en' },
18
+ meta: { culture: 'en', localizations: enLocalization },
8
19
  },
9
20
  {
10
21
  type: 'localization',
11
22
  name: 'TinyMCE Umbraco Arabic Localization',
12
23
  alias: 'Umb.TinyMCE.Localization.Arabic',
13
24
  weight: -100,
14
- meta: { culture: 'ar' },
15
- js: () => import('./ar.js'),
25
+ meta: { culture: 'ar', localizations: arLocalization },
16
26
  },
17
27
  {
18
28
  type: 'localization',
19
29
  name: 'TinyMCE Umbraco Bosnian Localization',
20
30
  alias: 'Umb.TinyMCE.Localization.Bosnian',
21
31
  weight: -100,
22
- meta: { culture: 'bs' },
23
- js: () => import('./bs.js'),
32
+ meta: { culture: 'bs', localizations: bsLocalization },
24
33
  },
25
34
  {
26
35
  type: 'localization',
27
36
  name: 'TinyMCE Umbraco Czech Localization',
28
37
  alias: 'Umb.TinyMCE.Localization.Czech',
29
38
  weight: -100,
30
- meta: { culture: 'cs-cz' },
31
- js: () => import('./cs.js'),
39
+ meta: { culture: 'cs-cz', localizations: csLocalization },
32
40
  },
33
41
  {
34
42
  type: 'localization',
35
43
  name: 'TinyMCE Umbraco Welsh Localization',
36
44
  alias: 'Umb.TinyMCE.Localization.Cy-GB',
37
45
  weight: -100,
38
- meta: { culture: 'cy' },
39
- js: () => import('./cy.js'),
46
+ meta: { culture: 'cy', localizations: cyLocalization },
40
47
  },
41
48
  {
42
49
  type: 'localization',
43
50
  name: 'TinyMCE Umbraco Danish Localization',
44
51
  alias: 'Umb.TinyMCE.Localization.Da_DK',
45
52
  weight: -100,
46
- meta: { culture: 'da' },
47
- js: () => import('./da.js'),
53
+ meta: { culture: 'da', localizations: daLocalization },
48
54
  },
49
55
  {
50
56
  type: 'localization',
51
57
  name: 'TinyMCE Umbraco German Localization',
52
58
  alias: 'Umb.TinyMCE.Localization.German',
53
59
  weight: -100,
54
- meta: { culture: 'de' },
55
- js: () => import('./de.js'),
60
+ meta: { culture: 'de', localizations: deLocalization },
56
61
  },
57
62
  {
58
63
  type: 'localization',
59
64
  name: 'TinyMCE Umbraco French Localization',
60
65
  alias: 'Umb.TinyMCE.Localization.French',
61
66
  weight: -100,
62
- meta: { culture: 'fr' },
63
- js: () => import('./fr.js'),
67
+ meta: { culture: 'fr', localizations: frLocalization },
64
68
  },
65
69
  {
66
70
  type: 'localization',
67
71
  name: 'TinyMCE Umbraco Croatian Localization',
68
72
  alias: 'Umb.TinyMCE.Localization.Croatian',
69
73
  weight: -100,
70
- meta: { culture: 'hr' },
71
- js: () => import('./hr.js'),
74
+ meta: { culture: 'hr', localizations: hrLocalization },
72
75
  },
73
76
  {
74
77
  type: 'localization',
75
78
  name: 'TinyMCE Umbraco Italian Localization',
76
79
  alias: 'Umb.TinyMCE.Localization.Italian',
77
80
  weight: -100,
78
- meta: { culture: 'it' },
79
- js: () => import('./it.js'),
81
+ meta: { culture: 'it', localizations: itLocalization },
80
82
  },
81
83
  {
82
84
  type: 'localization',
83
85
  name: 'TinyMCE Umbraco Dutch Localization',
84
86
  alias: 'Umb.TinyMCE.Localization.Dutch',
85
87
  weight: -100,
86
- meta: { culture: 'nl' },
87
- js: () => import('./nl.js'),
88
+ meta: { culture: 'nl', localizations: nlLocalization },
88
89
  },
89
90
  {
90
91
  type: 'localization',
91
92
  name: 'TinyMCE Umbraco Turkish Localization',
92
93
  alias: 'Umb.TinyMCE.Localization.Turkish',
93
94
  weight: -100,
94
- meta: { culture: 'tr' },
95
- js: () => import('./tr.js'),
95
+ meta: { culture: 'tr', localizations: trLocalization },
96
96
  },
97
97
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"nl.d.ts","sourceRoot":"","sources":["../../src/localizations/nl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBAMrF,yBAAyB;AAJ9B,wBAI+B"}
1
+ {"version":3,"file":"nl.d.ts","sourceRoot":"","sources":["../../src/localizations/nl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBASrF,yBAAyB;AAP9B,wBAO+B"}
@@ -1,4 +1,7 @@
1
1
  export default {
2
+ blockEditor: {
3
+ confirmDeleteBlockMessage: 'Weet je zeker dat je blok <strong>%0%</strong> wil verwijderen?',
4
+ },
2
5
  create: {
3
6
  newRteStyleSheetFile: 'Nieuw Rich Text Editor style sheet bestand',
4
7
  },
@@ -1 +1 @@
1
- {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../src/localizations/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBAMrF,yBAAyB;AAJ9B,wBAI+B"}
1
+ {"version":3,"file":"tr.d.ts","sourceRoot":"","sources":["../../src/localizations/tr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;wBASrF,yBAAyB;AAP9B,wBAO+B"}
@@ -1,4 +1,7 @@
1
1
  export default {
2
+ blockEditor: {
3
+ confirmDeleteBlockMessage: '<strong>%0%</strong> içeriğini silmek istediğinizden emin misiniz?',
4
+ },
2
5
  create: {
3
6
  newRteStyleSheetFile: 'Yeni Zengin Metin Düzenleyicisi stil sayfası dosyası',
4
7
  },
@@ -1,7 +1,7 @@
1
- import { umbHttpClient } from '@umbraco-cms/backoffice/http-client';
1
+ import { client } from '../../api/client.gen.js';
2
2
  import { TinyMceService } from '../../api/index.js';
3
3
  export async function createAiRequest() {
4
- const response = await TinyMceService.getConfig({ client: umbHttpClient });
4
+ const response = await TinyMceService.getConfig({ client });
5
5
  const apiKey = response.data?.config?.openAiApikey || '';
6
6
  const model = response.data?.config?.openAiApiConfig?.model || 'gpt-5';
7
7
  const temp = response.data?.config?.openAiApiConfig?.temperature || 1.0;
@@ -1 +1 @@
1
- {"version":3,"file":"tiny-mce-block-picker.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-block-picker.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAIzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAKhF,MAAM,CAAC,OAAO,OAAO,8BAA+B,SAAQ,oBAAoB;;gBAMnE,IAAI,EAAE,sBAAsB;IAwClC,UAAU;CA+DhB"}
1
+ {"version":3,"file":"tiny-mce-block-picker.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-block-picker.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AAIzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAKhF,MAAM,CAAC,OAAO,OAAO,8BAA+B,SAAQ,oBAAoB;;gBAOnE,IAAI,EAAE,sBAAsB;IAkDlC,UAAU;CAgFhB"}
@@ -9,7 +9,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _UmbTinyMceMultiUrlPickerPlugin_instances, _UmbTinyMceMultiUrlPickerPlugin_localize, _UmbTinyMceMultiUrlPickerPlugin_editor, _UmbTinyMceMultiUrlPickerPlugin_blocks, _UmbTinyMceMultiUrlPickerPlugin_entriesContext, _UmbTinyMceMultiUrlPickerPlugin_createBlock, _UmbTinyMceMultiUrlPickerPlugin_updateBlocks;
12
+ var _UmbTinyMceMultiUrlPickerPlugin_instances, _UmbTinyMceMultiUrlPickerPlugin_localize, _UmbTinyMceMultiUrlPickerPlugin_editor, _UmbTinyMceMultiUrlPickerPlugin_blocks, _UmbTinyMceMultiUrlPickerPlugin_entriesContext, _UmbTinyMceMultiUrlPickerPlugin_managerContext, _UmbTinyMceMultiUrlPickerPlugin_createBlock, _UmbTinyMceMultiUrlPickerPlugin_processPendingDeletions, _UmbTinyMceMultiUrlPickerPlugin_updateBlocks;
13
13
  import { UmbLocalizationController } from '@umbraco-cms/backoffice/localization-api';
14
14
  import { UmbTinyMcePluginBase } from '@tiny-mce-umbraco/backoffice/core';
15
15
  import { UMB_BLOCK_RTE_DATA_CONTENT_KEY } from '@umbraco-cms/backoffice/rte';
@@ -22,6 +22,7 @@ class UmbTinyMceMultiUrlPickerPlugin extends UmbTinyMcePluginBase {
22
22
  _UmbTinyMceMultiUrlPickerPlugin_editor.set(this, void 0);
23
23
  _UmbTinyMceMultiUrlPickerPlugin_blocks.set(this, void 0);
24
24
  _UmbTinyMceMultiUrlPickerPlugin_entriesContext.set(this, void 0);
25
+ _UmbTinyMceMultiUrlPickerPlugin_managerContext.set(this, void 0);
25
26
  __classPrivateFieldSet(this, _UmbTinyMceMultiUrlPickerPlugin_editor, args.editor, "f");
26
27
  args.editor.ui.registry.addToggleButton('umbblockpicker', {
27
28
  icon: 'visualblocks',
@@ -33,12 +34,16 @@ class UmbTinyMceMultiUrlPickerPlugin extends UmbTinyMcePluginBase {
33
34
  },
34
35
  });
35
36
  this.consumeContext(UMB_BLOCK_RTE_MANAGER_CONTEXT, (context) => {
37
+ __classPrivateFieldSet(this, _UmbTinyMceMultiUrlPickerPlugin_managerContext, context, "f");
36
38
  this.observe(context?.blockTypes, (blockTypes) => {
37
39
  __classPrivateFieldSet(this, _UmbTinyMceMultiUrlPickerPlugin_blocks, blockTypes, "f");
38
40
  }, 'blockType');
39
41
  this.observe(context?.contents, (contents) => {
40
42
  __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_instances, "m", _UmbTinyMceMultiUrlPickerPlugin_updateBlocks).call(this, contents, context?.getLayouts());
41
43
  }, 'contents');
44
+ this.observe(context?.pendingDeletions, (pendingDeletions) => {
45
+ __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_instances, "m", _UmbTinyMceMultiUrlPickerPlugin_processPendingDeletions).call(this, pendingDeletions);
46
+ }, 'pendingDeletions');
42
47
  });
43
48
  this.consumeContext(UMB_BLOCK_RTE_ENTRIES_CONTEXT, (context) => {
44
49
  __classPrivateFieldSet(this, _UmbTinyMceMultiUrlPickerPlugin_entriesContext, context, "f");
@@ -58,7 +63,7 @@ class UmbTinyMceMultiUrlPickerPlugin extends UmbTinyMcePluginBase {
58
63
  __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_instances, "m", _UmbTinyMceMultiUrlPickerPlugin_createBlock).call(this);
59
64
  }
60
65
  }
61
- _UmbTinyMceMultiUrlPickerPlugin_localize = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_editor = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_blocks = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_entriesContext = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_instances = new WeakSet(), _UmbTinyMceMultiUrlPickerPlugin_createBlock = function _UmbTinyMceMultiUrlPickerPlugin_createBlock() {
66
+ _UmbTinyMceMultiUrlPickerPlugin_localize = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_editor = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_blocks = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_entriesContext = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_managerContext = new WeakMap(), _UmbTinyMceMultiUrlPickerPlugin_instances = new WeakSet(), _UmbTinyMceMultiUrlPickerPlugin_createBlock = function _UmbTinyMceMultiUrlPickerPlugin_createBlock() {
62
67
  if (!__classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_entriesContext, "f")) {
63
68
  console.error('[Block Picker] No entries context available.');
64
69
  return;
@@ -74,6 +79,19 @@ _UmbTinyMceMultiUrlPickerPlugin_localize = new WeakMap(), _UmbTinyMceMultiUrlPic
74
79
  if (createPath) {
75
80
  window.history.pushState({}, '', createPath);
76
81
  }
82
+ }, _UmbTinyMceMultiUrlPickerPlugin_processPendingDeletions = function _UmbTinyMceMultiUrlPickerPlugin_processPendingDeletions(pendingDeletions) {
83
+ if (!pendingDeletions?.length)
84
+ return;
85
+ const editor = __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_editor, "f");
86
+ if (!editor?.dom)
87
+ return;
88
+ pendingDeletions.forEach((contentKey) => {
89
+ const blockEls = editor.dom.select(`umb-rte-block[${UMB_BLOCK_RTE_DATA_CONTENT_KEY}="${contentKey}"], umb-rte-block-inline[${UMB_BLOCK_RTE_DATA_CONTENT_KEY}="${contentKey}"]`);
90
+ blockEls.forEach((el) => el.remove());
91
+ __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_managerContext, "f")?.clearPendingDeletion(contentKey);
92
+ });
93
+ editor.setDirty(true);
94
+ editor.dispatch('Change');
77
95
  }, _UmbTinyMceMultiUrlPickerPlugin_updateBlocks = function _UmbTinyMceMultiUrlPickerPlugin_updateBlocks(blocks, layouts) {
78
96
  const editor = __classPrivateFieldGet(this, _UmbTinyMceMultiUrlPickerPlugin_editor, "f");
79
97
  if (!editor?.dom)
@@ -1 +1 @@
1
- {"version":3,"file":"tiny-mce-embeddedmedia.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-embeddedmedia.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAMhF,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,oBAAoB;;gBAClE,IAAI,EAAE,sBAAsB;CAgFxC"}
1
+ {"version":3,"file":"tiny-mce-embeddedmedia.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-embeddedmedia.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAMhF,MAAM,CAAC,OAAO,OAAO,6BAA8B,SAAQ,oBAAoB;;gBAClE,IAAI,EAAE,sBAAsB;CAiFxC"}
@@ -31,6 +31,7 @@ _UmbTinyMceEmbeddedMediaPlugin_instances = new WeakSet(), _UmbTinyMceEmbeddedMed
31
31
  let modify = {
32
32
  width: 360,
33
33
  height: 240,
34
+ constrain: true
34
35
  };
35
36
  if (selectedElm.nodeName.toUpperCase() === 'DIV' && selectedElm.classList.contains('umb-embed-holder')) {
36
37
  // See if we can go and get the attributes
@@ -1 +1 @@
1
- {"version":3,"file":"tiny-mce-mediapicker.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-mediapicker.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AA0BhF,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,oBAAoB;;gBAIhE,IAAI,EAAE,sBAAsB;CAoOxC"}
1
+ {"version":3,"file":"tiny-mce-mediapicker.plugin.d.ts","sourceRoot":"","sources":["../../src/plugins/tiny-mce-mediapicker.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAC;AACzE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AA0BhF,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,oBAAoB;;gBAQhE,IAAI,EAAE,sBAAsB;CAsOxC"}
@@ -9,10 +9,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
9
9
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
- var _UmbTinyMceMediaPickerPlugin_instances, _UmbTinyMceMediaPickerPlugin_modalManager, _UmbTinyMceMediaPickerPlugin_temporaryFileRepository, _UmbTinyMceMediaPickerPlugin_onAction, _UmbTinyMceMediaPickerPlugin_showMediaPicker, _UmbTinyMceMediaPickerPlugin_showMediaCaptionAltText, _UmbTinyMceMediaPickerPlugin_insertInEditor, _UmbTinyMceMediaPickerPlugin_uploadImageHandler;
12
+ var _UmbTinyMceMediaPickerPlugin_instances, _UmbTinyMceMediaPickerPlugin_modalManager, _UmbTinyMceMediaPickerPlugin_temporaryFileRepository, _UmbTinyMceMediaPickerPlugin_allowedMediaTypeIds_get, _UmbTinyMceMediaPickerPlugin_onAction, _UmbTinyMceMediaPickerPlugin_showMediaPicker, _UmbTinyMceMediaPickerPlugin_showMediaCaptionAltText, _UmbTinyMceMediaPickerPlugin_insertInEditor, _UmbTinyMceMediaPickerPlugin_uploadImageHandler;
13
13
  import { sizeImageInEditor, uploadBlobImages } from '@tiny-mce-umbraco/backoffice/core';
14
14
  import { UmbTinyMcePluginBase } from '@tiny-mce-umbraco/backoffice/core';
15
- import { getGuidFromUdi } from '@umbraco-cms/backoffice/utils';
15
+ import { getGuidFromUdi, splitStringToArray } from '@umbraco-cms/backoffice/utils';
16
16
  import { UmbId } from '@umbraco-cms/backoffice/id';
17
17
  import { UmbLocalizationController } from '@umbraco-cms/backoffice/localization-api';
18
18
  import { UmbTemporaryFileRepository } from '@umbraco-cms/backoffice/temporary-file';
@@ -86,7 +86,9 @@ class UmbTinyMceMediaPickerPlugin extends UmbTinyMcePluginBase {
86
86
  }
87
87
  }
88
88
  }
89
- _UmbTinyMceMediaPickerPlugin_modalManager = new WeakMap(), _UmbTinyMceMediaPickerPlugin_temporaryFileRepository = new WeakMap(), _UmbTinyMceMediaPickerPlugin_uploadImageHandler = new WeakMap(), _UmbTinyMceMediaPickerPlugin_instances = new WeakSet(), _UmbTinyMceMediaPickerPlugin_onAction =
89
+ _UmbTinyMceMediaPickerPlugin_modalManager = new WeakMap(), _UmbTinyMceMediaPickerPlugin_temporaryFileRepository = new WeakMap(), _UmbTinyMceMediaPickerPlugin_uploadImageHandler = new WeakMap(), _UmbTinyMceMediaPickerPlugin_instances = new WeakSet(), _UmbTinyMceMediaPickerPlugin_allowedMediaTypeIds_get = function _UmbTinyMceMediaPickerPlugin_allowedMediaTypeIds_get() {
90
+ return splitStringToArray(this.configuration?.getValueByAlias('allowedMediaTypes'));
91
+ }, _UmbTinyMceMediaPickerPlugin_onAction =
90
92
  /*
91
93
  async #observeCurrentUser() {
92
94
  if (!this.#currentUserContext) return;
@@ -132,10 +134,12 @@ async function _UmbTinyMceMediaPickerPlugin_onAction() {
132
134
  }
133
135
  }
134
136
  */
137
+ const allowedIds = __classPrivateFieldGet(this, _UmbTinyMceMediaPickerPlugin_instances, "a", _UmbTinyMceMediaPickerPlugin_allowedMediaTypeIds_get);
135
138
  const modalHandler = __classPrivateFieldGet(this, _UmbTinyMceMediaPickerPlugin_modalManager, "f")?.open(this, UMB_MEDIA_PICKER_MODAL, {
136
139
  data: {
137
140
  multiple: false,
138
141
  //startNodeIsVirtual,
142
+ pickableFilter: allowedIds.length ? (item) => allowedIds.includes(item.mediaType.unique) : undefined,
139
143
  },
140
144
  value: {
141
145
  selection: currentTarget.udi ? [getGuidFromUdi(currentTarget.udi)] : [],
@@ -1 +1 @@
1
- {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../../src/property-editors/tiny-mce/manifests.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CAyJjD,CAAC"}
1
+ {"version":3,"file":"manifests.d.ts","sourceRoot":"","sources":["../../../src/property-editors/tiny-mce/manifests.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,oBAAoB,CA0JjD,CAAC"}
@@ -19,6 +19,7 @@ export const manifests = [
19
19
  icon: 'icon-tinymce',
20
20
  group: 'richContent',
21
21
  supportsReadOnly: true,
22
+ keywords: ['content', 'article', 'body', 'html', 'wysiwyg', 'richtext', 'rte', 'tinymce', 'editor', 'formatted', 'paragraph'],
22
23
  settings: {
23
24
  properties: [
24
25
  {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tiny-mce-umbraco/backoffice",
3
- "version": "17.3.4",
3
+ "version": "18.0.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",
@@ -13,6 +13,10 @@
13
13
  "publishConfig": {
14
14
  "access": "public"
15
15
  },
16
+ "engines": {
17
+ "node": ">=24.13",
18
+ "npm": ">=11"
19
+ },
16
20
  "type": "module",
17
21
  "exports": {
18
22
  ".": null,
@@ -29,33 +33,33 @@
29
33
  "build": "tsc && vite build",
30
34
  "build:api": "tsc -p tsconfig.api.json",
31
35
  "pack:api": "npm pack",
32
- "generate-client": "node scripts/generate-openapi.js https://localhost:44308/umbraco/swagger/tiny-mce/swagger.json"
36
+ "generate-client": "node scripts/generate-openapi.js https://localhost:44308/umbraco/openapi/tiny-mce.json"
33
37
  },
34
38
  "dependencies": {
35
39
  "tinymce": "^6.8.5",
36
40
  "tinymce-i18n": "^24.12.30"
37
41
  },
38
42
  "devDependencies": {
39
- "@hey-api/openapi-ts": "^0.85.0",
43
+ "@hey-api/openapi-ts": "^0.97.0",
40
44
  "@rollup/plugin-json": "^6.1.0",
41
45
  "@rollup/plugin-node-resolve": "^16.0.1",
42
46
  "@rollup/plugin-replace": "^6.0.2",
43
- "@umbraco-cms/backoffice": "^17.3.4",
47
+ "@umbraco-cms/backoffice": "^18.0.0",
44
48
  "chalk": "^5.3.0",
45
49
  "cross-env": "^10.1.0",
46
- "eslint": "^9.37.0",
50
+ "eslint": "^10.2.0",
47
51
  "node-fetch": "^3.3.2",
48
52
  "rollup": "^4.40.0",
49
53
  "rollup-plugin-esbuild": "^6.2.1",
50
54
  "rollup-plugin-import-css": "^3.5.8",
51
55
  "tiny-glob": "^0.2.9",
52
- "typescript": "^5.9.3",
53
- "vite": "^7.1.11",
56
+ "typescript": "^6.0.3",
57
+ "vite": "^7.3.2",
54
58
  "vite-plugin-static-copy": "^3.1.3",
55
59
  "vite-tsconfig-paths": "^5.1.4"
56
60
  },
57
61
  "peerDependencies": {
58
- "@umbraco-cms/backoffice": "^17.3.4",
62
+ "@umbraco-cms/backoffice": "^18.0.0",
59
63
  "tinymce": "^6.8.5",
60
64
  "tinymce-i18n": "^24.12.30"
61
65
  }