@umbraco-cms/backoffice 14.0.0--preview005-afb72093 → 14.0.0--preview005-c0d3d16d
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.
- package/dist-cms/mocks/data/document/document.data.js +1 -1
- package/dist-cms/packages/core/components/input-multi-url/input-multi-url.element.js +3 -2
- package/dist-cms/packages/core/modal/common/link-picker/link-picker-modal.element.js +7 -8
- package/dist-cms/packages/core/modal/token/link-picker-modal.token.d.ts +3 -1
- package/dist-cms/packages/core/property-editor/uis/tiny-mce/plugins/tiny-mce-linkpicker.plugin.js +4 -4
- package/dist-cms/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -28,7 +28,7 @@ export const data = [
|
|
|
28
28
|
blocks: {},
|
|
29
29
|
markup: `
|
|
30
30
|
<p>
|
|
31
|
-
Some value for the RTE with an <a href="https://google.com">external link</a> and an <a href="/{localLink:
|
|
31
|
+
Some value for the RTE with an <a href="https://google.com">external link</a> and an <a type="document" href="/{localLink:c05da24d-7740-447b-9cdc-bd8ce2172e38}">internal link</a> foo foo
|
|
32
32
|
</p>
|
|
33
33
|
<div class="umb-macro-holder TestMacro umb-macro-mce_1 mceNonEditable"><!-- <?UMBRACO_MACRO macroAlias="TestMacro" /> --><ins>Macro alias: <strong>TestMacro</strong></ins></div>
|
|
34
34
|
<p>The following tests the embed plugin:</p>
|
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { css, html, customElement, property, state } from '../../../../external/lit/index.js';
|
|
8
8
|
import { FormControlMixin } from '../../../../external/uui/index.js';
|
|
9
9
|
import { UmbLitElement } from '../../../../shared/lit-element/index.js';
|
|
10
|
-
import { UMB_LINK_PICKER_MODAL, UmbModalRouteRegistrationController
|
|
10
|
+
import { UMB_LINK_PICKER_MODAL, UmbModalRouteRegistrationController } from '../../modal/index.js';
|
|
11
11
|
/**
|
|
12
12
|
* @element umb-input-multi-url
|
|
13
13
|
* @fires change - when the value of the input changes
|
|
@@ -91,7 +91,8 @@ let UmbInputMultiUrlElement = class UmbInputMultiUrlElement extends FormControlM
|
|
|
91
91
|
queryString: data?.queryString,
|
|
92
92
|
target: data?.target,
|
|
93
93
|
trashed: data?.trashed,
|
|
94
|
-
|
|
94
|
+
type: data?.type,
|
|
95
|
+
unique: data?.unique,
|
|
95
96
|
url: data?.url,
|
|
96
97
|
},
|
|
97
98
|
},
|
|
@@ -12,7 +12,6 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
12
12
|
var _UmbLinkPickerModalElement_instances, _UmbLinkPickerModalElement_handleQueryString, _UmbLinkPickerModalElement_handleSelectionChange, _UmbLinkPickerModalElement_partialUpdateLink;
|
|
13
13
|
import { css, html, nothing, customElement, query, state, styleMap } from '../../../../../external/lit/index.js';
|
|
14
14
|
import { UmbModalBaseElement } from '../../index.js';
|
|
15
|
-
import { buildUdi, getKeyFromUdi } from '../../../../../shared/utils/index.js';
|
|
16
15
|
import { UMB_DOCUMENT_TREE_ALIAS } from '../../../../documents/documents/index.js';
|
|
17
16
|
let UmbLinkPickerModalElement = class UmbLinkPickerModalElement extends UmbModalBaseElement {
|
|
18
17
|
constructor() {
|
|
@@ -41,7 +40,7 @@ let UmbLinkPickerModalElement = class UmbLinkPickerModalElement extends UmbModal
|
|
|
41
40
|
if (this.modalContext) {
|
|
42
41
|
this.observe(this.modalContext.value, (value) => {
|
|
43
42
|
this._link = value.link;
|
|
44
|
-
this._selectedKey = this._link?.
|
|
43
|
+
this._selectedKey = this._link?.unique ?? undefined;
|
|
45
44
|
this._selectionConfiguration.selection = this._selectedKey ? [this._selectedKey] : [];
|
|
46
45
|
});
|
|
47
46
|
}
|
|
@@ -92,9 +91,9 @@ let UmbLinkPickerModalElement = class UmbLinkPickerModalElement extends UmbModal
|
|
|
92
91
|
id="link-input"
|
|
93
92
|
placeholder=${this.localize.term('general_url')}
|
|
94
93
|
label=${this.localize.term('general_url')}
|
|
95
|
-
.value="${this._link.
|
|
96
|
-
@input=${() => __classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, { url: this._linkInput.value })}
|
|
97
|
-
?disabled="${this._link.
|
|
94
|
+
.value="${this._link.unique ?? this._link.url ?? ''}"
|
|
95
|
+
@input=${() => __classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, { type: 'external', url: this._linkInput.value })}
|
|
96
|
+
?disabled="${this._link.unique ? true : false}"></uui-input>
|
|
98
97
|
</span>`;
|
|
99
98
|
}
|
|
100
99
|
_renderAnchorInput() {
|
|
@@ -168,16 +167,16 @@ _UmbLinkPickerModalElement_handleSelectionChange = function _UmbLinkPickerModalE
|
|
|
168
167
|
const selection = element.getSelection();
|
|
169
168
|
const selectedKey = selection[selection.length - 1];
|
|
170
169
|
if (!selectedKey) {
|
|
171
|
-
__classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, {
|
|
170
|
+
__classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, { type: undefined, unique: '', url: undefined });
|
|
172
171
|
this._selectedKey = undefined;
|
|
173
172
|
this._selectionConfiguration.selection = [];
|
|
174
173
|
this.requestUpdate();
|
|
175
174
|
return;
|
|
176
175
|
}
|
|
177
|
-
const
|
|
176
|
+
const linkType = entityType ?? 'external';
|
|
178
177
|
this._selectedKey = selectedKey;
|
|
179
178
|
this._selectionConfiguration.selection = [this._selectedKey];
|
|
180
|
-
__classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, {
|
|
179
|
+
__classPrivateFieldGet(this, _UmbLinkPickerModalElement_instances, "m", _UmbLinkPickerModalElement_partialUpdateLink).call(this, { type: linkType, unique: selectedKey, url: selectedKey });
|
|
181
180
|
this.requestUpdate();
|
|
182
181
|
};
|
|
183
182
|
_UmbLinkPickerModalElement_partialUpdateLink = function _UmbLinkPickerModalElement_partialUpdateLink(linkObject) {
|
|
@@ -14,9 +14,11 @@ export interface UmbLinkPickerLink {
|
|
|
14
14
|
queryString?: string | null;
|
|
15
15
|
target?: string | null;
|
|
16
16
|
trashed?: boolean | null;
|
|
17
|
-
|
|
17
|
+
type?: UmbLinkPickerLinkType | null;
|
|
18
|
+
unique?: string | null;
|
|
18
19
|
url?: string | null;
|
|
19
20
|
}
|
|
21
|
+
export type UmbLinkPickerLinkType = 'document' | 'external' | 'media';
|
|
20
22
|
export interface UmbLinkPickerConfig {
|
|
21
23
|
hideAnchor?: boolean;
|
|
22
24
|
ignoreUserStartNodes?: boolean;
|
package/dist-cms/packages/core/property-editor/uis/tiny-mce/plugins/tiny-mce-linkpicker.plugin.js
CHANGED
|
@@ -66,7 +66,7 @@ class UmbTinyMceLinkPickerPlugin extends UmbTinyMcePluginBase {
|
|
|
66
66
|
};
|
|
67
67
|
if (__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_anchorElement, "f").href.includes('localLink:')) {
|
|
68
68
|
const href = __classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_anchorElement, "f").getAttribute('href');
|
|
69
|
-
currentTarget.
|
|
69
|
+
currentTarget.unique = href.split('localLink:')[1].slice(0, -1);
|
|
70
70
|
}
|
|
71
71
|
else if (__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_anchorElement, "f").host.length) {
|
|
72
72
|
currentTarget.url = __classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_anchorElement, "f").protocol ? __classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_anchorElement, "f").protocol + '//' : undefined;
|
|
@@ -152,13 +152,13 @@ _UmbTinyMceLinkPickerPlugin_modalContext = new WeakMap(), _UmbTinyMceLinkPickerP
|
|
|
152
152
|
__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f").link.queryString = urlParts[1] + urlParts[2];
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
if (!__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.url && !__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.queryString && !__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.
|
|
155
|
+
if (!__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.url && !__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.queryString && !__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.unique) {
|
|
156
156
|
this.editor.execCommand('unlink');
|
|
157
157
|
return;
|
|
158
158
|
}
|
|
159
159
|
//if we have an id, it must be a locallink:id
|
|
160
|
-
if (__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.
|
|
161
|
-
__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f").link.url = '/{localLink:' + __classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f").link.
|
|
160
|
+
if (__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f")?.link.unique) {
|
|
161
|
+
__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f").link.url = '/{localLink:' + __classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_linkPickerData, "f").link.unique + '}';
|
|
162
162
|
__classPrivateFieldGet(this, _UmbTinyMceLinkPickerPlugin_instances, "m", _UmbTinyMceLinkPickerPlugin_insertLink).call(this);
|
|
163
163
|
return;
|
|
164
164
|
}
|