Skip to content

Commit 077fa97

Browse files
authored
Merge branch 'main' into release
2 parents ee84a90 + 3a3b29d commit 077fa97

File tree

9 files changed

+78
-73
lines changed

9 files changed

+78
-73
lines changed

visualpython/css/m_ml/modelInfo.css

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,3 @@
1-
.vp-model-select-box {
2-
grid-column-gap: 5px;
3-
align-items: start;
4-
}
51
.vp-ins-select-title {
62
font-weight: bold;
73
color: var(--vp-font-highlight);

visualpython/html/component/dataSelector.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
<div class="vp-inner-popup-close" title="Close data selector"></div>
99
</div>
1010
<div class="vp-inner-popup-body vp-scrollbar">
11-
<div class="vp-grid-col-p50 mb5">
11+
<div class="vp-grid-col-p50">
1212
<label class="vp-bold">Type</label>
1313
<label class="vp-bold">Data</label>
1414
</div>
@@ -22,7 +22,7 @@
2222
</div>
2323
<div class="vp-ds-option-box">
2424
<label class="vp-bold">Option Page</label>
25-
<div class="vp-ds-option-inner-box mt5">
25+
<div class="vp-ds-option-inner-box">
2626

2727
</div>
2828
</div>

visualpython/js/MainFrame.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -496,10 +496,10 @@ define([
496496
let parentBlock = null;
497497
let prevBlock = null;
498498
loadStateList.forEach(obj => {
499-
let { file, blockType, menuId, menuState, menuConfig, argIdx, position, afterAction } = obj;
499+
let { blockType, menuId, menuState, menuConfig, argIdx, position, afterAction } = obj;
500500
// get OptionComponent Object
501501
// LAB: relative path needed
502-
let OptionComponent = require('./' + file);
502+
let OptionComponent = require('./' + menuConfig.file);
503503
if (OptionComponent) {
504504
let taskState = menuState.taskState;
505505
let blockState = menuState.blockState;

visualpython/js/com/com_Config.js

Lines changed: 6 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,8 @@ define([
264264
vp_config_version: '1.0.0',
265265
vp_signature: 'VisualPython',
266266
vp_position: {},
267-
vp_section_display: false,
267+
// CHROME: default to display vp
268+
vp_section_display: true,
268269
vp_note_display: false,
269270
vp_menu_width: Config.MENU_MIN_WIDTH,
270271
vp_note_width: Config.BOARD_MIN_WIDTH
@@ -568,15 +569,15 @@ define([
568569
that._checkMounted().then(function() {
569570
that._readFromColab(configKey).then(function(result) {
570571
let data = result;
571-
if (data == undefined || (data instanceof Object && Object.keys(data).length === 0)) {
572+
if (data == undefined || data == {}) {
572573
resolve(data);
573574
return;
574575
}
575576
if (dataKey == '') {
576577
resolve(data);
577578
return;
578579
}
579-
if (data instanceof Object && Object.keys(data).length > 0) {
580+
if (Object.keys(data).length > 0) {
580581
resolve(data[dataKey]);
581582
return;
582583
}
@@ -592,15 +593,15 @@ define([
592593
// LAB: use local .visualpython files
593594
that._readFromLab(configKey).then(function(result) {
594595
let data = result;
595-
if (data == undefined || (data instanceof Object && Object.keys(data).length === 0)) {
596+
if (data == undefined || data == {}) {
596597
resolve(data);
597598
return;
598599
}
599600
if (dataKey == '') {
600601
resolve(data);
601602
return;
602603
}
603-
if (data instanceof Object && Object.keys(data).length > 0) {
604+
if (Object.keys(data).length > 0) {
604605
resolve(data[dataKey]);
605606
return;
606607
}
@@ -862,40 +863,6 @@ define([
862863
return Config.version;
863864
}
864865

865-
checkVersionTimestamp = function() {
866-
let that = this;
867-
// check version timestamp
868-
let nowDate = new Date();
869-
this.getData('version_timestamp', 'vpcfg').then(function(data) {
870-
let doCheckVersion = false;
871-
vpLog.display(VP_LOG_TYPE.DEVELOP, 'Checking its version timestamp... : ' + data);
872-
if (data == undefined || (data instanceof Object && Object.keys(data).length === 0)) {
873-
// no timestamp, check version
874-
doCheckVersion = true;
875-
} else if (data != '') {
876-
let lastCheck = new Date(parseInt(data));
877-
let diffCheck_now = new Date(nowDate.getFullYear(), nowDate.getMonth() + 1, nowDate.getDate());
878-
let diffCheck_last = new Date(lastCheck.getFullYear(), lastCheck.getMonth() + 1, lastCheck.getDate());
879-
880-
let diff = Math.abs(diffCheck_now.getTime() - diffCheck_last.getTime());
881-
diff = Math.ceil(diff / (1000 * 3600 * 24));
882-
883-
if (diff >= 1) {
884-
// if More than 1 day passed, check version
885-
doCheckVersion = true;
886-
}
887-
}
888-
889-
// check version and update version_timestamp
890-
if (doCheckVersion == true) {
891-
that.checkVpVersion(true);
892-
}
893-
894-
}).catch(function(err) {
895-
vpLog.display(VP_LOG_TYPE.ERROR, err);
896-
})
897-
}
898-
899866
checkVpVersion(background=false) {
900867
let that = this;
901868
let nowVersion = this.getVpInstalledVersion();
@@ -935,8 +902,6 @@ define([
935902
switch (clickedBtnIdx) {
936903
case 0:
937904
// cancel
938-
// update version_timestamp
939-
that.setData({ 'version_timestamp': new Date().getTime() }, 'vpcfg');
940905
break;
941906
case 1:
942907
// update

visualpython/js/com/com_generatorV2.js

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -139,17 +139,14 @@ define([
139139
package.options && package.options.forEach(function(o, i) {
140140
var obj = JSON.parse(JSON.stringify(o));
141141
let newTag = vp_createTag(pageThis, obj, state);
142-
if (obj.required === true || obj.output === true) {
142+
if (obj.required) {
143143
tblInput.append(newTag);
144144
} else {
145145
tblOption.append(newTag);
146146
}
147147
});
148148

149149
// TODO: userOption
150-
if (package.code.includes('${etc}')) {
151-
152-
}
153150

154151
bindMultiSelector(pageThis);
155152
bindAutoComponentEvent(pageThis);

visualpython/js/com/component/MultiSelector.js

Lines changed: 56 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -443,6 +443,62 @@ define([
443443
that._bindItemClickEvent();
444444
});
445445

446+
// item indexing
447+
$(this.wrapSelector('.' + APP_SELECT_ITEM)).on('click', function(event) {
448+
var dataIdx = $(this).attr('data-idx');
449+
var idx = $(this).index();
450+
var added = $(this).hasClass('added'); // right side added item?
451+
var selector = '';
452+
453+
// remove selection for select box on the other side
454+
if (added) {
455+
// remove selection for left side
456+
$(that.wrapSelector('.' + APP_SELECT_ITEM + ':not(.added)')).removeClass('selected');
457+
// set selector
458+
selector = '.added';
459+
} else {
460+
// remove selection for right(added) side
461+
$(that.wrapSelector('.' + APP_SELECT_ITEM + '.added')).removeClass('selected');
462+
// set selector
463+
selector = ':not(.added)';
464+
}
465+
466+
if (vpEvent.keyManager.keyCheck.ctrlKey) {
467+
// multi-select
468+
that.pointer = { start: idx, end: -1 };
469+
$(this).toggleClass('selected');
470+
} else if (vpEvent.keyManager.keyCheck.shiftKey) {
471+
// slicing
472+
var startIdx = that.pointer.start;
473+
474+
if (startIdx == -1) {
475+
// no selection
476+
that.pointer = { start: idx, end: -1 };
477+
} else if (startIdx > idx) {
478+
// add selection from idx to startIdx
479+
var tags = $(that.wrapSelector('.' + APP_SELECT_ITEM + selector));
480+
for (var i = idx; i <= startIdx; i++) {
481+
$(tags[i]).addClass('selected');
482+
}
483+
that.pointer = { start: startIdx, end: idx };
484+
} else if (startIdx <= idx) {
485+
// add selection from startIdx to idx
486+
var tags = $(that.wrapSelector('.' + APP_SELECT_ITEM + selector));
487+
for (var i = startIdx; i <= idx; i++) {
488+
$(tags[i]).addClass('selected');
489+
}
490+
that.pointer = { start: startIdx, end: idx };
491+
}
492+
} else {
493+
// single-select
494+
that.pointer = { start: idx, end: -1 };
495+
// un-select others
496+
$(that.wrapSelector('.' + APP_SELECT_ITEM + selector)).removeClass('selected');
497+
// select this
498+
$(this).addClass('selected');
499+
}
500+
});
501+
446502
// item indexing - add all
447503
$(this.wrapSelector('.' + APP_SELECT_ADD_ALL_BTN)).on('click', function(event) {
448504
$(that.wrapSelector('.' + APP_SELECT_BOX + '.left .' + APP_SELECT_ITEM)).appendTo(
@@ -646,7 +702,6 @@ define([
646702
let newItemIndex = this.dataList.length;
647703
var targetTag = $(`<div class="${APP_SELECT_ITEM} ${APP_DRAGGABLE} added selected" data-idx="${newItemIndex}" data-name="${newItemName}" data-type="object" data-code="'${newItemName}'" title="${newItemName}: Added manually">
648704
<span>${newItemName}</span>
649-
<div class="vp-cs-del-item vp-icon-close-small" title="Delete this manually added item"></div>
650705
</div>`);
651706
$(targetTag).appendTo(
652707
$(this.wrapSelector('.' + APP_SELECT_BOX + '.right'))
@@ -656,8 +711,6 @@ define([
656711
$(this.wrapSelector('.' + APP_SELECT_ITEM)).removeClass('selected');
657712
// clear item input
658713
$(this.wrapSelector('.vp-cs-add-item-name')).val('');
659-
// bind click event
660-
this._bindItemClickEvent();
661714
// bind draggable
662715
this.bindDraggable();
663716
}

visualpython/js/loadVisualpython.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ define([
262262
}
263263
_loadVpResource(cfg);
264264
vpConfig.checkVersionTimestamp();
265-
265+
266266
if ((cfg.vp_section_display && vpFrame)
267267
|| vpConfig.extensionType === 'colab') { // CHROME: default to display vp
268268
vpFrame.openVp();

visualpython/js/m_apps/File.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,9 @@ define([
2222
'vp_base/js/com/com_generatorV2',
2323
'vp_base/data/m_library/pandasLibrary',
2424
'vp_base/js/com/component/FileNavigation',
25-
'vp_base/js/com/component/SuggestInput',
26-
'vp_base/js/com/component/DataSelector'
25+
'vp_base/js/com/component/SuggestInput'
2726
], function(fileHtml, fileCss, com_String, com_util, com_Const, PopupComponent
28-
, pdGen, pandasLibrary, FileNavigation, SuggestInput, DataSelector) {
27+
, pdGen, pandasLibrary, FileNavigation, SuggestInput) {
2928

3029
/**
3130
* File

visualpython/js/menu/MenuFrame.js

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -205,19 +205,19 @@ define([
205205
return {};
206206
}
207207

208-
getMenuLibrary(menuId, libraries=this.menuLibrariesFlatten) {
208+
getMenuLibrary(menuId, libraries=this.menuLibraries) {
209209
for (var i=0; i < libraries.length; i++) {
210210
var item = libraries[i];
211211
if (item) {
212212
if (item.id === menuId) {
213213
return item;
214214
}
215-
// if (item.type === 'package') {
216-
// var result = this.getMenuLibrary(menuId, item.item);
217-
// if (result) {
218-
// return result;
219-
// }
220-
// }
215+
if (item.type === 'package') {
216+
var result = this.getMenuLibrary(menuId, item.item);
217+
if (result) {
218+
return result;
219+
}
220+
}
221221
}
222222
}
223223
return null;
@@ -252,12 +252,7 @@ define([
252252
var that = this;
253253
var body = group.getBody();
254254
var item = group.getItem();
255-
var state = group.getState();
256255
item && item.forEach(child => {
257-
// remember parent to navigate its parent menu
258-
var category = state.category?(state.category + ' > ' + state.name):state.name;
259-
child['category'] = category;
260-
261256
if (child.type == 'package') {
262257
// packages : MenuGroup
263258
var menuGroup = new MenuGroup($(body), child);
@@ -303,7 +298,7 @@ define([
303298
});
304299

305300
let functionList = this.menuLibrariesFlatten.map(menu => {
306-
return { label: menu.name, value: menu.name, dtype: menu.category, ...menu }
301+
return { label: menu.name, value: menu.name, ...menu }
307302
});
308303
// render searchbox
309304
let searchBox = new SuggestInput();

0 commit comments

Comments
 (0)