Skip to content

Commit 89fef64

Browse files
Merge branch 'main' into v14/bugfix/document-public-access-cancelled-server-requests
2 parents 2edea71 + 334c134 commit 89fef64

File tree

10 files changed

+68
-18
lines changed

10 files changed

+68
-18
lines changed

package-lock.json

Lines changed: 18 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@
128128
"workspaces": [
129129
"./src/packages/data-type",
130130
"./src/packages/dictionary",
131+
"./src/packages/umbraco-news",
131132
"./src/packages/webhook"
132133
],
133134
"scripts": {

src/assets/lang/en-us.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1038,6 +1038,7 @@ export default {
10381038
language: {
10391039
cultureCode: 'Culture Code',
10401040
displayName: 'Culture Name',
1041+
noFallbackLanguages: 'There are no other languages to choose from',
10411042
},
10421043
lockout: {
10431044
lockoutWillOccur: "You've been idle and logout will automatically occur in",

src/assets/lang/en.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1057,6 +1057,7 @@ export default {
10571057
language: {
10581058
cultureCode: 'Culture Code',
10591059
displayName: 'Culture Name',
1060+
noFallbackLanguages: 'There are no other languages to choose from',
10601061
},
10611062
lockout: {
10621063
lockoutWillOccur: "You've been idle and logout will automatically occur in",

src/packages/core/tree/entity-actions/duplicate-to/modal/duplicate-to-modal.element.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { UmbDuplicateToModalData, UmbDuplicateToModalValue } from './duplicate-to-modal.token.js';
2-
import { html, customElement, nothing } from '@umbraco-cms/backoffice/external/lit';
2+
import { html, customElement, nothing, state } from '@umbraco-cms/backoffice/external/lit';
33
import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
44
import { UmbModalBaseElement } from '@umbraco-cms/backoffice/modal';
55

@@ -9,11 +9,17 @@ import type { UmbTreeElement } from '@umbraco-cms/backoffice/tree';
99
const elementName = 'umb-duplicate-to-modal';
1010
@customElement(elementName)
1111
export class UmbDuplicateToModalElement extends UmbModalBaseElement<UmbDuplicateToModalData, UmbDuplicateToModalValue> {
12+
@state()
13+
_destinationUnique?: string | null;
14+
1215
#onTreeSelectionChange(event: UmbSelectionChangeEvent) {
1316
const target = event.target as UmbTreeElement;
1417
const selection = target.getSelection();
15-
if (selection.length === 0) throw new Error('Selection is required');
16-
this.updateValue({ destination: { unique: selection[0] } });
18+
this._destinationUnique = selection[0];
19+
20+
if (this._destinationUnique || this._destinationUnique === null) {
21+
this.updateValue({ destination: { unique: this._destinationUnique } });
22+
}
1723
}
1824

1925
render() {
@@ -43,7 +49,8 @@ export class UmbDuplicateToModalElement extends UmbModalBaseElement<UmbDuplicate
4349
color="positive"
4450
look="primary"
4551
label="Duplicate"
46-
@click=${this._submitModal}></uui-button>
52+
@click=${this._submitModal}
53+
?disabled=${this._destinationUnique === undefined}></uui-button>
4754
`;
4855
}
4956

src/packages/documents/documents/entity-actions/duplicate/modal/duplicate-document-modal.element.ts

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type {
33
UmbDuplicateDocumentModalData,
44
UmbDuplicateDocumentModalValue,
55
} from './duplicate-document-modal.token.js';
6-
import { html, customElement, nothing, css } from '@umbraco-cms/backoffice/external/lit';
6+
import { html, customElement, nothing, css, state } from '@umbraco-cms/backoffice/external/lit';
77
import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
88
import { UmbModalBaseElement } from '@umbraco-cms/backoffice/modal';
99

@@ -17,11 +17,17 @@ export class UmbDocumentDuplicateToModalElement extends UmbModalBaseElement<
1717
UmbDuplicateDocumentModalData,
1818
UmbDuplicateDocumentModalValue
1919
> {
20+
@state()
21+
_destinationUnique?: string | null;
22+
2023
#onTreeSelectionChange(event: UmbSelectionChangeEvent) {
2124
const target = event.target as UmbTreeElement;
2225
const selection = target.getSelection();
23-
if (selection.length === 0) throw new Error('Selection is required');
24-
this.updateValue({ destination: { unique: selection[0] } });
26+
this._destinationUnique = selection[0];
27+
28+
if (this._destinationUnique || this._destinationUnique === null) {
29+
this.updateValue({ destination: { unique: this._destinationUnique } });
30+
}
2531
}
2632

2733
#onRelateToOriginalChange(event: UUIBooleanInputEvent) {
@@ -72,7 +78,8 @@ export class UmbDocumentDuplicateToModalElement extends UmbModalBaseElement<
7278
color="positive"
7379
look="primary"
7480
label="Duplicate"
75-
@click=${this._submitModal}></uui-button>
81+
@click=${this._submitModal}
82+
?disabled=${this._destinationUnique === undefined}></uui-button>
7683
`;
7784
}
7885

src/packages/language/modals/language-picker/language-picker-modal.element.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ export class UmbLanguagePickerModalElement extends UmbModalBaseElement<
5151
render() {
5252
return html`<umb-body-layout headline="Select languages">
5353
<uui-box>
54-
${repeat(
54+
${this.#filteredLanguages.length > 0 ? repeat(
5555
this.#filteredLanguages,
5656
(item) => item.unique,
5757
(item) => html`
@@ -64,7 +64,9 @@ export class UmbLanguagePickerModalElement extends UmbModalBaseElement<
6464
<uui-icon slot="icon" name="icon-globe"></uui-icon>
6565
</uui-menu-item>
6666
`,
67-
)}
67+
) : html`<umb-localize key="language_noFallbackLanguages">
68+
There are no other languages to choose from
69+
</umb-localize>`}
6870
</uui-box>
6971
<div slot="actions">
7072
<uui-button label="Close" @click=${this.#close}></uui-button>

src/packages/tiny-mce/components/input-tiny-mce/input-tiny-mce.element.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,7 @@ export class UmbInputTinyMceElement extends UUIFormControlMixin(UmbLitElement, '
243243
paste_data_images: false,
244244
language: this.#getLanguage(),
245245
promotion: false,
246+
convert_unsafe_embeds: true, // [JOV] Workaround for CVE-2024-29881
246247

247248
// Extend with configuration options
248249
...configurationOptions,
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"name": "@umbraco-backoffice/umbraco-news",
3+
"private": true,
4+
"type": "module",
5+
"scripts": {
6+
"build": "vite build"
7+
}
8+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { defineConfig } from 'vite';
2+
import { rmSync } from 'fs';
3+
import { getDefaultConfig } from '../../vite-config-base';
4+
5+
const dist = '../../../dist-cms/packages/umbraco-news';
6+
7+
// delete the unbundled dist folder
8+
rmSync(dist, { recursive: true, force: true });
9+
10+
export default defineConfig({
11+
...getDefaultConfig({ dist, entry: ['umbraco-package.ts', 'manifests.ts'] }),
12+
});

0 commit comments

Comments
 (0)