neo.mjs 4.0.88 → 4.0.91
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/package.json +1 -1
- package/resources/scss/src/component/Iframe.scss +3 -0
- package/resources/scss/src/sitemap/Container.scss +1 -1
- package/src/component/Base.mjs +8 -10
- package/src/component/Iframe.mjs +42 -0
- package/src/data/RecordFactory.mjs +4 -0
- package/src/list/Base.mjs +3 -2
- package/src/sitemap/Container.mjs +37 -0
- package/src/sitemap/model/Item.mjs +1 -1
package/package.json
CHANGED
package/src/component/Base.mjs
CHANGED
@@ -163,9 +163,9 @@ class Base extends CoreBase {
|
|
163
163
|
/**
|
164
164
|
* Used for hide and show and defines if the component
|
165
165
|
* should use css visibility:'hidden' or vdom:removeDom
|
166
|
-
* @member {String} hideMode_='
|
166
|
+
* @member {String} hideMode_='removeDom'
|
167
167
|
*/
|
168
|
-
hideMode_: '
|
168
|
+
hideMode_: 'removeDom',
|
169
169
|
/**
|
170
170
|
* The top level innerHTML of the component
|
171
171
|
* @member {String|null} html_=null
|
@@ -1121,10 +1121,9 @@ class Base extends CoreBase {
|
|
1121
1121
|
* @param {Number} timeout
|
1122
1122
|
*/
|
1123
1123
|
hide(timeout) {
|
1124
|
-
let me
|
1125
|
-
doRemove = me.hideMode !== 'visibility';
|
1124
|
+
let me = this;
|
1126
1125
|
|
1127
|
-
if (
|
1126
|
+
if (me.hideMode !== 'visibility') {
|
1128
1127
|
let removeFn = function() {
|
1129
1128
|
let vdom = me.vdom;
|
1130
1129
|
vdom.removeDom = true;
|
@@ -1142,7 +1141,7 @@ class Base extends CoreBase {
|
|
1142
1141
|
me.style = style;
|
1143
1142
|
}
|
1144
1143
|
|
1145
|
-
|
1144
|
+
me._hidden = true;
|
1146
1145
|
}
|
1147
1146
|
|
1148
1147
|
/**
|
@@ -1505,10 +1504,9 @@ class Base extends CoreBase {
|
|
1505
1504
|
* hideMode: 'visibility' uses css visibility.
|
1506
1505
|
*/
|
1507
1506
|
show() {
|
1508
|
-
let me
|
1509
|
-
doAdd = me.hideMode !== 'visibility';
|
1507
|
+
let me = this;
|
1510
1508
|
|
1511
|
-
if (
|
1509
|
+
if (me.hideMode !== 'visibility') {
|
1512
1510
|
let vdom = me.vdom;
|
1513
1511
|
vdom.removeDom = false;
|
1514
1512
|
me.vdom = vdom;
|
@@ -1518,7 +1516,7 @@ class Base extends CoreBase {
|
|
1518
1516
|
me.style = style;
|
1519
1517
|
}
|
1520
1518
|
|
1521
|
-
|
1519
|
+
me._hidden = false;
|
1522
1520
|
}
|
1523
1521
|
|
1524
1522
|
/**
|
@@ -0,0 +1,42 @@
|
|
1
|
+
import Base from '../component/Base.mjs';
|
2
|
+
|
3
|
+
/**
|
4
|
+
* @class Neo.component.Iframe
|
5
|
+
* @extends Neo.component.Base
|
6
|
+
*/
|
7
|
+
class Iframe extends Base {
|
8
|
+
static getConfig() {return {
|
9
|
+
/*
|
10
|
+
* @member {String} className='Neo.component.Iframe'
|
11
|
+
* @protected
|
12
|
+
*/
|
13
|
+
className: 'Neo.component.Iframe',
|
14
|
+
/*
|
15
|
+
* @member {String[]} cls=['neo-iframe']
|
16
|
+
*/
|
17
|
+
cls: ['neo-iframe'],
|
18
|
+
/*
|
19
|
+
* @member {String|null} src_=null
|
20
|
+
*/
|
21
|
+
src_: null,
|
22
|
+
/*
|
23
|
+
* @member {Object} _vdom
|
24
|
+
*/
|
25
|
+
_vdom:
|
26
|
+
{tag: 'iframe'}
|
27
|
+
}}
|
28
|
+
|
29
|
+
/**
|
30
|
+
* Triggered after the src config got changed
|
31
|
+
* @param {String|null} value
|
32
|
+
* @param {String|null} oldValue
|
33
|
+
* @protected
|
34
|
+
*/
|
35
|
+
afterSetSrc(value, oldValue) {
|
36
|
+
this.changeVdomRootKey('src', value);
|
37
|
+
}
|
38
|
+
}
|
39
|
+
|
40
|
+
Neo.applyClassConfig(Iframe);
|
41
|
+
|
42
|
+
export default Iframe;
|
@@ -278,6 +278,10 @@ class RecordFactory extends Base {
|
|
278
278
|
return new Date(value);
|
279
279
|
}
|
280
280
|
|
281
|
+
if (type === 'html' && value) {
|
282
|
+
value = value + '';
|
283
|
+
}
|
284
|
+
|
281
285
|
if (type === 'string' && value) {
|
282
286
|
value = value + '';
|
283
287
|
value = value.replace(/(<([^>]+)>)/ig, '');
|
package/src/list/Base.mjs
CHANGED
@@ -405,9 +405,10 @@ class Base extends Component {
|
|
405
405
|
getItemRecordId(vnodeId) {
|
406
406
|
let itemId = vnodeId.split('__')[1],
|
407
407
|
model = this.store.model,
|
408
|
-
keyField = model?.getField(model.keyProperty)
|
408
|
+
keyField = model?.getField(model.keyProperty),
|
409
|
+
keyType = keyField?.type.toLowerCase();
|
409
410
|
|
410
|
-
if (
|
411
|
+
if (keyType === 'integer' || keyType === 'number') {
|
411
412
|
itemId = parseInt(itemId);
|
412
413
|
}
|
413
414
|
|
@@ -55,6 +55,20 @@ class Container extends Base {
|
|
55
55
|
layout: {ntype: 'hbox', align: 'stretch'}
|
56
56
|
}}
|
57
57
|
|
58
|
+
/**
|
59
|
+
* @param {Object} config
|
60
|
+
*/
|
61
|
+
construct(config) {
|
62
|
+
super.construct(config);
|
63
|
+
|
64
|
+
let me = this,
|
65
|
+
domListeners = me.domListeners;
|
66
|
+
|
67
|
+
domListeners.push({click: me.onItemClick, delegate: '.neo-action', scope: me});
|
68
|
+
|
69
|
+
me.domListeners = domListeners;
|
70
|
+
}
|
71
|
+
|
58
72
|
/**
|
59
73
|
* Triggered after the itemStore config got changed
|
60
74
|
* @param {Neo.sitemap.store.Items|null} value
|
@@ -163,6 +177,29 @@ class Container extends Base {
|
|
163
177
|
return `${this.id}__${recordId}`;
|
164
178
|
}
|
165
179
|
|
180
|
+
/**
|
181
|
+
* @param {String} vnodeId
|
182
|
+
* @returns {String|Number} itemId
|
183
|
+
*/
|
184
|
+
getItemRecordId(vnodeId) {
|
185
|
+
let itemId = vnodeId.split('__')[1],
|
186
|
+
model = this.itemStore.model,
|
187
|
+
keyField = model?.getField(model.keyProperty),
|
188
|
+
keyType = keyField?.type.toLowerCase();
|
189
|
+
|
190
|
+
if (keyType === 'integer' || keyType === 'number') {
|
191
|
+
itemId = parseInt(itemId);
|
192
|
+
}
|
193
|
+
|
194
|
+
return itemId;
|
195
|
+
}
|
196
|
+
|
197
|
+
/**
|
198
|
+
* Override as needed
|
199
|
+
* @param {Object} data
|
200
|
+
*/
|
201
|
+
onItemClick(data) {}
|
202
|
+
|
166
203
|
/**
|
167
204
|
*
|
168
205
|
*/
|