neo.mjs 6.17.2 → 6.18.1
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/apps/ServiceWorker.mjs +3 -5
- package/apps/colors/README.md +8 -0
- package/apps/colors/app.mjs +6 -0
- package/apps/colors/childapps/widget/app.mjs +7 -0
- package/apps/colors/childapps/widget/index.html +11 -0
- package/apps/colors/childapps/widget/neo-config.json +10 -0
- package/apps/colors/childapps/widget/view/Viewport.mjs +19 -0
- package/apps/colors/index.html +11 -0
- package/apps/colors/model/Color.mjs +43 -0
- package/apps/colors/neo-config.json +10 -0
- package/apps/colors/remotes-api.json +13 -0
- package/apps/colors/store/Colors.mjs +24 -0
- package/apps/colors/view/BarChartComponent.mjs +64 -0
- package/apps/colors/view/HeaderToolbar.mjs +95 -0
- package/apps/colors/view/PieChartComponent.mjs +58 -0
- package/apps/colors/view/TableContainer.mjs +91 -0
- package/apps/colors/view/Viewport.mjs +57 -0
- package/apps/colors/view/ViewportController.mjs +277 -0
- package/apps/colors/view/ViewportModel.mjs +53 -0
- package/apps/portal/Util.mjs +11 -0
- package/apps/portal/childapps/preview/neo-config.json +2 -2
- package/apps/portal/neo-config.json +2 -1
- package/apps/portal/remotes-api.json +13 -0
- package/apps/portal/view/HeaderToolbar.mjs +1 -1
- package/apps/portal/view/ViewportController.mjs +89 -1
- package/apps/portal/view/home/MainContainer.mjs +34 -6
- package/apps/portal/view/home/parts/AfterMath.mjs +1 -1
- package/apps/portal/view/home/parts/Colors.mjs +98 -0
- package/apps/portal/view/home/parts/Helix.mjs +114 -0
- package/apps/portal/view/home/parts/HelloWorld.mjs +6 -3
- package/apps/portal/view/home/parts/How.mjs +66 -0
- package/apps/portal/view/home/parts/MainNeo.mjs +4 -3
- package/apps/portal/view/learn/LivePreview.mjs +56 -15
- package/apps/portal/view/learn/MainContainerController.mjs +10 -90
- package/apps/realworld/api/Article.mjs +1 -3
- package/apps/realworld/api/Favorite.mjs +1 -3
- package/apps/realworld/api/Profile.mjs +1 -3
- package/apps/realworld/api/Tag.mjs +1 -3
- package/apps/realworld/api/User.mjs +1 -3
- package/apps/realworld2/api/Article.mjs +1 -3
- package/apps/realworld2/api/Favorite.mjs +1 -3
- package/apps/realworld2/api/Profile.mjs +1 -3
- package/apps/realworld2/api/Tag.mjs +1 -3
- package/apps/realworld2/api/User.mjs +1 -3
- package/apps/realworld2/view/article/HelixContainer.mjs +5 -5
- package/buildScripts/webpack/json/myApps.template.json +1 -0
- package/docs/app/view/MainContainer.mjs +5 -0
- package/docs/app/view/classdetails/MembersList.mjs +1 -1
- package/examples/ServiceWorker.mjs +3 -5
- package/examples/component/helix/Viewport.mjs +309 -0
- package/examples/component/helix/ViewportController.mjs +122 -0
- package/examples/component/helix/app.mjs +2 -2
- package/examples/component/helix/neo-config.json +0 -1
- package/examples/component/multiWindowHelix/Viewport.mjs +11 -3
- package/examples/component/multiWindowHelix/ViewportController.mjs +21 -9
- package/examples/component/multiWindowHelix/neo-config.json +0 -1
- package/examples/fieldWithPrefix/MainContainer.mjs +1 -6
- package/examples/list/animate/MainContainerController.mjs +1 -1
- package/examples/worker/task/MyTasks.mjs +1 -3
- package/package.json +2 -2
- package/resources/data/deck/learnneo/pages/Events.md +15 -9
- package/resources/data/deck/learnneo/pages/GuideEvents.md +254 -0
- package/resources/data/deck/learnneo/pages/WhyNeo-Speed.md +1 -1
- package/resources/images/logo/neo_logo_primary.svg +6 -0
- package/resources/images/logo/neo_logo_text_primary.svg +5 -0
- package/resources/scss/src/apps/colors/BarChartComponent.scss +3 -0
- package/resources/scss/src/apps/colors/HeaderToolbar.scss +11 -0
- package/resources/scss/src/apps/colors/PieChartComponent.scss +3 -0
- package/resources/scss/src/apps/colors/TableContainer.scss +64 -0
- package/resources/scss/src/apps/colors/Viewport.scss +9 -0
- package/resources/scss/src/apps/portal/HeaderToolbar.scss +142 -124
- package/resources/scss/src/apps/portal/home/MainContainer.scss +9 -22
- package/resources/scss/src/apps/portal/home/parts/MainNeo.scss +22 -0
- package/resources/scss/src/apps/portal/home/preview/PageCodeContainer.scss +1 -1
- package/resources/scss/src/examples/component/multiWindowHelix/Viewport.scss +3 -0
- package/resources/scss/src/form/field/CheckBox.scss +1 -0
- package/resources/scss/src/tab/header/Button.scss +2 -1
- package/resources/scss/theme-dark/Global.scss +8 -0
- package/resources/scss/theme-dark/button/Base.scss +1 -1
- package/resources/scss/theme-dark/tab/header/Button.scss +1 -0
- package/resources/scss/theme-light/Global.scss +8 -0
- package/resources/scss/theme-light/button/Base.scss +1 -1
- package/resources/scss/theme-light/tab/header/Button.scss +1 -0
- package/resources/scss/theme-neo-light/Global.scss +53 -53
- package/resources/scss/theme-neo-light/button/Base.scss +3 -4
- package/resources/scss/theme-neo-light/tab/header/Button.scss +6 -8
- package/src/DefaultConfig.mjs +2 -2
- package/src/Fetch.mjs +1 -3
- package/src/Main.mjs +13 -11
- package/src/MicroLoader.mjs +2 -2
- package/src/Neo.mjs +27 -26
- package/src/Xhr.mjs +1 -3
- package/src/button/Base.mjs +6 -4
- package/src/button/Split.mjs +10 -9
- package/src/calendar/view/EditEventContainer.mjs +13 -12
- package/src/calendar/view/MainContainer.mjs +40 -40
- package/src/calendar/view/MainContainerModel.mjs +5 -5
- package/src/calendar/view/SettingsContainer.mjs +11 -11
- package/src/calendar/view/YearComponent.mjs +73 -75
- package/src/calendar/view/calendars/ColorsList.mjs +2 -2
- package/src/calendar/view/calendars/EditContainer.mjs +2 -2
- package/src/calendar/view/calendars/List.mjs +12 -13
- package/src/calendar/view/month/Component.mjs +72 -73
- package/src/calendar/view/settings/GeneralContainer.mjs +5 -5
- package/src/calendar/view/settings/MonthContainer.mjs +5 -5
- package/src/calendar/view/settings/WeekContainer.mjs +6 -6
- package/src/calendar/view/settings/YearContainer.mjs +4 -4
- package/src/calendar/view/week/Component.mjs +47 -57
- package/src/calendar/view/week/EventDragZone.mjs +43 -50
- package/src/calendar/view/week/TimeAxisComponent.mjs +21 -21
- package/src/calendar/view/week/plugin/DragDrop.mjs +53 -45
- package/src/calendar/view/week/plugin/EventResizable.mjs +8 -3
- package/src/collection/Base.mjs +15 -22
- package/src/collection/Filter.mjs +4 -9
- package/src/collection/Sorter.mjs +6 -7
- package/src/component/Base.mjs +73 -41
- package/src/component/Canvas.mjs +9 -9
- package/src/component/Carousel.mjs +31 -33
- package/src/component/Chip.mjs +9 -9
- package/src/component/Circle.mjs +84 -91
- package/src/component/Clock.mjs +8 -8
- package/src/component/DateSelector.mjs +14 -15
- package/src/component/Gallery.mjs +82 -80
- package/src/component/Helix.mjs +131 -126
- package/src/component/Iframe.mjs +1 -1
- package/src/component/Label.mjs +1 -1
- package/src/component/Legend.mjs +3 -3
- package/src/component/Process.mjs +39 -37
- package/src/component/Splitter.mjs +9 -11
- package/src/component/StatusBadge.mjs +2 -3
- package/src/component/Timer.mjs +62 -68
- package/src/component/Toast.mjs +11 -11
- package/src/component/Video.mjs +7 -8
- package/src/component/mwc/Button.mjs +10 -10
- package/src/component/mwc/TextField.mjs +17 -17
- package/src/component/wrapper/AmChart.mjs +5 -5
- package/src/component/wrapper/CesiumJS.mjs +11 -17
- package/src/component/wrapper/GoogleMaps.mjs +58 -35
- package/src/component/wrapper/MapboxGL.mjs +112 -79
- package/src/container/Accordion.mjs +18 -20
- package/src/container/AccordionItem.mjs +12 -11
- package/src/container/Base.mjs +24 -23
- package/src/container/Panel.mjs +9 -9
- package/src/controller/Base.mjs +12 -14
- package/src/controller/Component.mjs +60 -66
- package/src/core/Base.mjs +5 -8
- package/src/core/IdGenerator.mjs +1 -3
- package/src/core/Observable.mjs +40 -24
- package/src/core/Util.mjs +5 -5
- package/src/data/Model.mjs +3 -3
- package/src/data/RecordFactory.mjs +3 -6
- package/src/data/Store.mjs +34 -34
- package/src/data/connection/Fetch.mjs +3 -3
- package/src/data/connection/WebSocket.mjs +21 -25
- package/src/data/connection/Xhr.mjs +31 -28
- package/src/date/DayViewComponent.mjs +1 -1
- package/src/date/SelectorContainer.mjs +2 -2
- package/src/dialog/Base.mjs +27 -25
- package/src/dialog/header/Toolbar.mjs +5 -4
- package/src/draggable/DragProxyComponent.mjs +7 -4
- package/src/draggable/DragZone.mjs +30 -30
- package/src/draggable/DropZone.mjs +7 -7
- package/src/draggable/list/DragZone.mjs +18 -18
- package/src/draggable/tab/header/toolbar/SortZone.mjs +7 -7
- package/src/draggable/toolbar/DragZone.mjs +15 -15
- package/src/draggable/toolbar/SortZone.mjs +30 -31
- package/src/draggable/tree/DragZone.mjs +9 -9
- package/src/filter/BooleanContainer.mjs +3 -3
- package/src/filter/NumberContainer.mjs +5 -5
- package/src/filter/ToggleOperatorsButton.mjs +5 -5
- package/src/form/Fieldset.mjs +26 -26
- package/src/form/field/Base.mjs +1 -1
- package/src/form/field/CheckBox.mjs +15 -16
- package/src/form/field/Color.mjs +13 -15
- package/src/form/field/ComboBox.mjs +16 -24
- package/src/form/field/Country.mjs +1 -1
- package/src/form/field/Date.mjs +3 -4
- package/src/form/field/Display.mjs +1 -1
- package/src/form/field/Email.mjs +2 -2
- package/src/form/field/Number.mjs +51 -56
- package/src/form/field/Picker.mjs +2 -2
- package/src/form/field/Radio.mjs +1 -1
- package/src/form/field/Range.mjs +7 -6
- package/src/form/field/Text.mjs +29 -36
- package/src/form/field/TextArea.mjs +9 -9
- package/src/form/field/Time.mjs +30 -30
- package/src/form/field/trigger/Base.mjs +19 -13
- package/src/form/field/trigger/Clear.mjs +13 -13
- package/src/form/field/trigger/CopyToClipboard.mjs +7 -7
- package/src/form/field/trigger/Picker.mjs +2 -2
- package/src/form/field/trigger/SpinDown.mjs +1 -1
- package/src/form/field/trigger/SpinUp.mjs +1 -1
- package/src/form/field/trigger/SpinUpDown.mjs +3 -3
- package/src/form/field/trigger/Time.mjs +3 -3
- package/src/grid/Container.mjs +33 -33
- package/src/grid/View.mjs +20 -22
- package/src/grid/header/Button.mjs +12 -12
- package/src/grid/header/Toolbar.mjs +4 -4
- package/src/layout/Base.mjs +5 -4
- package/src/layout/Card.mjs +15 -16
- package/src/layout/Fit.mjs +22 -8
- package/src/layout/Flexbox.mjs +30 -29
- package/src/layout/Form.mjs +15 -15
- package/src/layout/Grid.mjs +2 -2
- package/src/layout/HBox.mjs +3 -2
- package/src/layout/VBox.mjs +3 -2
- package/src/list/Base.mjs +45 -47
- package/src/list/Chip.mjs +4 -4
- package/src/list/Circle.mjs +3 -3
- package/src/list/Color.mjs +4 -4
- package/src/list/Component.mjs +10 -10
- package/src/list/plugin/Animate.mjs +18 -13
- package/src/main/DomAccess.mjs +92 -56
- package/src/main/DomEvents.mjs +38 -39
- package/src/main/addon/AmCharts.mjs +37 -37
- package/src/main/addon/AnalyticsByGoogle.mjs +4 -4
- package/src/main/addon/CesiumJS.mjs +8 -8
- package/src/main/addon/CloneNode.mjs +5 -5
- package/src/main/addon/Cookie.mjs +4 -4
- package/src/main/addon/DragDrop.mjs +35 -34
- package/src/main/addon/GoogleMaps.mjs +19 -19
- package/src/main/addon/IntersectionObserver.mjs +20 -1
- package/src/main/addon/LocalStorage.mjs +3 -3
- package/src/main/addon/MapboxGL.mjs +40 -41
- package/src/main/addon/MonacoEditor.mjs +5 -5
- package/src/main/addon/Mwc.mjs +6 -6
- package/src/main/addon/Navigator.mjs +35 -39
- package/src/main/addon/Popover.mjs +5 -6
- package/src/main/addon/PrefixField.mjs +1 -2
- package/src/main/addon/ServiceWorker.mjs +9 -9
- package/src/main/addon/Siesta.mjs +3 -2
- package/src/main/addon/Stylesheet.mjs +37 -37
- package/src/main/addon/WebComponent.mjs +2 -3
- package/src/main/addon/WindowPosition.mjs +18 -18
- package/src/main/draggable/sensor/Base.mjs +2 -2
- package/src/main/draggable/sensor/Mouse.mjs +15 -15
- package/src/main/draggable/sensor/Touch.mjs +24 -23
- package/src/main/mixin/DeltaUpdates.mjs +10 -12
- package/src/main/mixin/TouchDomEvents.mjs +6 -6
- package/src/manager/Base.mjs +4 -4
- package/src/manager/Component.mjs +41 -41
- package/src/manager/DomEvent.mjs +41 -44
- package/src/manager/Focus.mjs +14 -16
- package/src/manager/Instance.mjs +2 -4
- package/src/manager/Store.mjs +4 -8
- package/src/manager/Task.mjs +20 -22
- package/src/manager/Toast.mjs +14 -16
- package/src/manager/rpc/Api.mjs +1 -3
- package/src/manager/rpc/Message.mjs +16 -18
- package/src/menu/List.mjs +16 -16
- package/src/menu/Panel.mjs +4 -4
- package/src/model/Component.mjs +16 -14
- package/src/plugin/Base.mjs +2 -0
- package/src/plugin/Popover.mjs +1 -1
- package/src/plugin/PrefixField.mjs +35 -45
- package/src/plugin/Resizable.mjs +86 -101
- package/src/plugin/Responsive.mjs +1 -1
- package/src/remotes/Api.mjs +4 -6
- package/src/selection/CircleModel.mjs +12 -16
- package/src/selection/DateSelectorModel.mjs +21 -23
- package/src/selection/GalleryModel.mjs +49 -63
- package/src/selection/HelixModel.mjs +35 -41
- package/src/selection/ListModel.mjs +9 -14
- package/src/selection/Model.mjs +31 -31
- package/src/selection/TreeAccordionModel.mjs +74 -80
- package/src/selection/grid/CellColumnModel.mjs +10 -10
- package/src/selection/grid/CellColumnRowModel.mjs +10 -10
- package/src/selection/grid/CellModel.mjs +26 -28
- package/src/selection/grid/CellRowModel.mjs +24 -24
- package/src/selection/grid/ColumnModel.mjs +16 -20
- package/src/selection/grid/RowModel.mjs +27 -29
- package/src/selection/menu/ListModel.mjs +2 -2
- package/src/selection/table/CellColumnModel.mjs +12 -12
- package/src/selection/table/CellColumnRowModel.mjs +12 -12
- package/src/selection/table/CellModel.mjs +26 -29
- package/src/selection/table/CellRowModel.mjs +19 -19
- package/src/selection/table/ColumnModel.mjs +18 -22
- package/src/selection/table/RowModel.mjs +27 -29
- package/src/sitemap/Component.mjs +20 -20
- package/src/sitemap/Store.mjs +1 -1
- package/src/tab/Container.mjs +15 -15
- package/src/tab/Strip.mjs +1 -1
- package/src/tab/header/Toolbar.mjs +4 -4
- package/src/table/Container.mjs +8 -10
- package/src/table/View.mjs +29 -34
- package/src/table/header/Button.mjs +18 -18
- package/src/table/header/Toolbar.mjs +2 -2
- package/src/toolbar/Base.mjs +14 -14
- package/src/toolbar/Breadcrumb.mjs +11 -11
- package/src/toolbar/Paging.mjs +18 -18
- package/src/tooltip/Base.mjs +20 -22
- package/src/tree/Accordion.mjs +69 -75
- package/src/tree/List.mjs +22 -25
- package/src/util/Array.mjs +19 -18
- package/src/util/ClassSystem.mjs +9 -9
- package/src/util/Css.mjs +2 -2
- package/src/util/Date.mjs +9 -9
- package/src/util/Function.mjs +2 -2
- package/src/util/HashHistory.mjs +3 -5
- package/src/util/KeyNavigation.mjs +17 -17
- package/src/util/Logger.mjs +9 -9
- package/src/util/Matrix.mjs +19 -19
- package/src/util/String.mjs +9 -9
- package/src/util/Style.mjs +11 -11
- package/src/util/VDom.mjs +12 -14
- package/src/util/VNode.mjs +29 -29
- package/src/vdom/Helper.mjs +84 -93
- package/src/vdom/VNode.mjs +1 -1
- package/src/worker/App.mjs +19 -16
- package/src/worker/Base.mjs +14 -15
- package/src/worker/Canvas.mjs +1 -3
- package/src/worker/Data.mjs +4 -8
- package/src/worker/Manager.mjs +27 -32
- package/src/worker/Message.mjs +1 -1
- package/src/worker/ServiceBase.mjs +38 -42
- package/src/worker/Task.mjs +1 -3
- package/src/worker/VDom.mjs +2 -4
- package/src/worker/mixin/RemoteMethodAccess.mjs +5 -6
- package/apps/portal/view/home/parts/CoolStuff.mjs +0 -82
- package/examples/component/helix/MainContainer.mjs +0 -340
- /package/resources/images/{Neo_Logo_Blue.svg → logo/neo_logo_secondary.svg} +0 -0
- /package/resources/images/{Neo_Logo_Text.svg → logo/neo_logo_text_secondary.svg} +0 -0
- /package/resources/images/{Neo_Logo_White.svg → logo/neo_logo_white.svg} +0 -0
@@ -154,7 +154,7 @@ class ComboBox extends Picker {
|
|
154
154
|
*/
|
155
155
|
afterSetInputValue(value, oldValue) {
|
156
156
|
super.afterSetInputValue(value, oldValue);
|
157
|
-
this.updateTypeAheadValue(value)
|
157
|
+
this.updateTypeAheadValue(value)
|
158
158
|
}
|
159
159
|
|
160
160
|
/**
|
@@ -245,9 +245,8 @@ class ComboBox extends Picker {
|
|
245
245
|
* @protected
|
246
246
|
*/
|
247
247
|
beforeSetStore(value, oldValue) {
|
248
|
-
|
249
|
-
|
250
|
-
{ valueField, displayField} = me;
|
248
|
+
let me = this,
|
249
|
+
{displayField, valueField} = me;
|
251
250
|
|
252
251
|
oldValue?.destroy();
|
253
252
|
|
@@ -300,9 +299,8 @@ class ComboBox extends Picker {
|
|
300
299
|
* @protected
|
301
300
|
*/
|
302
301
|
beforeSetValue(value, oldValue) {
|
303
|
-
let me
|
304
|
-
displayField = me
|
305
|
-
store = me.store,
|
302
|
+
let me = this,
|
303
|
+
{displayField, store} = me,
|
306
304
|
record;
|
307
305
|
|
308
306
|
// getting a record, nothing to do
|
@@ -380,11 +378,9 @@ class ComboBox extends Picker {
|
|
380
378
|
* @param {String|null} value The value to filter the picker by
|
381
379
|
*/
|
382
380
|
doFilter(value) {
|
383
|
-
let me
|
384
|
-
store
|
385
|
-
filter
|
386
|
-
picker = me.picker,
|
387
|
-
record = me.value;
|
381
|
+
let me = this,
|
382
|
+
{picker, record, store} = me,
|
383
|
+
filter = store.getFilter(me.displayField);
|
388
384
|
|
389
385
|
if (filter) {
|
390
386
|
filter.value = value
|
@@ -395,9 +391,8 @@ class ComboBox extends Picker {
|
|
395
391
|
me.showPicker();
|
396
392
|
|
397
393
|
// List might not exist until the picker is created
|
398
|
-
|
399
|
-
{
|
400
|
-
{ selectionModel } = list;
|
394
|
+
let {list } = me,
|
395
|
+
{selectionModel} = list;
|
401
396
|
|
402
397
|
// On show, set the active item to be the current selected record or the first
|
403
398
|
if (record) {
|
@@ -474,7 +469,7 @@ class ComboBox extends Picker {
|
|
474
469
|
* @returns {Object}
|
475
470
|
*/
|
476
471
|
getRecord() {
|
477
|
-
let list
|
472
|
+
let {list} = this,
|
478
473
|
recordKey = list.selectionModel.getSelection()[0];
|
479
474
|
|
480
475
|
return recordKey && this.store.get(list.getItemRecordId(recordKey)) || null
|
@@ -551,8 +546,7 @@ class ComboBox extends Picker {
|
|
551
546
|
*/
|
552
547
|
async onListItemSelectionChange({ selection }) {
|
553
548
|
if (selection?.length) {
|
554
|
-
|
555
|
-
me = this,
|
549
|
+
let me = this,
|
556
550
|
selected = selection[0],
|
557
551
|
record = typeof selected === 'string' ? me.store.get(me.list.getItemRecordId(selected)) : selected;
|
558
552
|
|
@@ -592,15 +586,14 @@ class ComboBox extends Picker {
|
|
592
586
|
let {activeIndex} = record;
|
593
587
|
|
594
588
|
if (activeIndex >= 0) {
|
595
|
-
|
596
|
-
me = this,
|
589
|
+
let me = this,
|
597
590
|
{store} = me;
|
598
591
|
|
599
592
|
me.activeRecord = store.getAt(activeIndex);
|
600
593
|
me.activeRecordId = me.activeRecord[store.keyProperty || model.keyProperty];
|
601
594
|
|
602
595
|
// Update typeahead hint (which updates DOM), or update DOM
|
603
|
-
me.typeAhead ? me.updateTypeAheadValue(me.lastManualInput) : me.update()
|
596
|
+
me.typeAhead ? me.updateTypeAheadValue(me.lastManualInput) : me.update()
|
604
597
|
}
|
605
598
|
}
|
606
599
|
|
@@ -701,8 +694,7 @@ class ComboBox extends Picker {
|
|
701
694
|
*/
|
702
695
|
updateTypeAhead(silent=false) {
|
703
696
|
let me = this,
|
704
|
-
inputEl = VDomUtil.findVdomChild(me.vdom, {flag: 'neo-real-input'})
|
705
|
-
vdom = me.vdom;
|
697
|
+
inputEl = VDomUtil.findVdomChild(me.vdom, {flag: 'neo-real-input'});
|
706
698
|
|
707
699
|
if (me.typeAhead) {
|
708
700
|
inputEl.parentNode.cn[inputEl.index] = {
|
@@ -719,7 +711,7 @@ class ComboBox extends Picker {
|
|
719
711
|
}, inputEl.vdom]
|
720
712
|
}
|
721
713
|
} else {
|
722
|
-
VDomUtil.replaceVdomChild(vdom, inputEl.parentNode.id, inputEl.vdom)
|
714
|
+
VDomUtil.replaceVdomChild(me.vdom, inputEl.parentNode.id, inputEl.vdom)
|
723
715
|
}
|
724
716
|
|
725
717
|
!silent && me.update()
|
package/src/form/field/Date.mjs
CHANGED
@@ -200,7 +200,7 @@ class DateField extends Picker {
|
|
200
200
|
*/
|
201
201
|
hasContent() {
|
202
202
|
if (this.labelPosition === 'inline') {
|
203
|
-
return true
|
203
|
+
return true
|
204
204
|
}
|
205
205
|
|
206
206
|
return super.hasContent()
|
@@ -221,13 +221,12 @@ class DateField extends Picker {
|
|
221
221
|
* @param {Object} opts
|
222
222
|
*/
|
223
223
|
onDatePickerChange(opts) {
|
224
|
-
let me
|
225
|
-
vdom = me.vdom;
|
224
|
+
let me = this;
|
226
225
|
|
227
226
|
me.clean = false;
|
228
227
|
|
229
228
|
if (me.hidePickerOnSelect) {
|
230
|
-
VDomUtil.removeVdomChild(vdom, me.getPickerId());
|
229
|
+
VDomUtil.removeVdomChild(me.vdom, me.getPickerId());
|
231
230
|
|
232
231
|
me.promiseUpdate().then(data => {
|
233
232
|
me.value = opts.value
|
package/src/form/field/Email.mjs
CHANGED
@@ -42,12 +42,12 @@ class Email extends Text {
|
|
42
42
|
validate(silent=true) {
|
43
43
|
let me = this,
|
44
44
|
returnValue = super.validate(silent),
|
45
|
-
value
|
45
|
+
{value} = me;
|
46
46
|
|
47
47
|
if (returnValue) {
|
48
48
|
if (value && !Email.emailRegex.test(value)) {
|
49
49
|
me._error = me.errorTextValidEmail;
|
50
|
-
returnValue = false
|
50
|
+
returnValue = false
|
51
51
|
}
|
52
52
|
}
|
53
53
|
|
@@ -105,12 +105,12 @@ class Number extends Text {
|
|
105
105
|
style = inputEl.style || {};
|
106
106
|
|
107
107
|
if (value) {
|
108
|
-
delete style.pointerEvents
|
108
|
+
delete style.pointerEvents
|
109
109
|
} else {
|
110
|
-
style.pointerEvents = 'none'
|
110
|
+
style.pointerEvents = 'none'
|
111
111
|
}
|
112
112
|
|
113
|
-
me.update()
|
113
|
+
me.update()
|
114
114
|
}
|
115
115
|
|
116
116
|
/**
|
@@ -121,7 +121,7 @@ class Number extends Text {
|
|
121
121
|
*/
|
122
122
|
afterSetMaxValue(value, oldValue) {
|
123
123
|
this.validate(); // silent
|
124
|
-
this.changeInputElKey('max', value)
|
124
|
+
this.changeInputElKey('max', value)
|
125
125
|
}
|
126
126
|
|
127
127
|
/**
|
@@ -132,7 +132,7 @@ class Number extends Text {
|
|
132
132
|
*/
|
133
133
|
afterSetMinValue(value, oldValue) {
|
134
134
|
this.validate(); // silent
|
135
|
-
this.changeInputElKey('min', value)
|
135
|
+
this.changeInputElKey('min', value)
|
136
136
|
}
|
137
137
|
|
138
138
|
/**
|
@@ -158,15 +158,15 @@ class Number extends Text {
|
|
158
158
|
if (modulo !== 0) { // find the closest valid value
|
159
159
|
if (modulo / value > 0.5) {
|
160
160
|
if (val + value - modulo < me.maxValue) {
|
161
|
-
me.value = val + value - modulo
|
161
|
+
me.value = val + value - modulo
|
162
162
|
} else if (val - modulo > me.minValue) {
|
163
|
-
me.value = val - modulo
|
163
|
+
me.value = val - modulo
|
164
164
|
}
|
165
165
|
} else {
|
166
166
|
if (val - modulo > me.minValue) {
|
167
|
-
me.value = val - modulo
|
167
|
+
me.value = val - modulo
|
168
168
|
} else if (val + value - modulo < me.maxValue) {
|
169
|
-
me.value = val + value - modulo
|
169
|
+
me.value = val + value - modulo
|
170
170
|
}
|
171
171
|
}
|
172
172
|
}
|
@@ -180,7 +180,7 @@ class Number extends Text {
|
|
180
180
|
* @protected
|
181
181
|
*/
|
182
182
|
afterSetTriggerPosition(value, oldValue) {
|
183
|
-
oldValue && this.updateTriggers()
|
183
|
+
oldValue && this.updateTriggers()
|
184
184
|
}
|
185
185
|
|
186
186
|
/**
|
@@ -190,8 +190,8 @@ class Number extends Text {
|
|
190
190
|
* @protected
|
191
191
|
*/
|
192
192
|
afterSetUseSpinButtons(value, oldValue) {
|
193
|
-
if (
|
194
|
-
this.updateTriggers()
|
193
|
+
if (Neo.isBoolean(oldValue)) {
|
194
|
+
this.updateTriggers()
|
195
195
|
}
|
196
196
|
}
|
197
197
|
|
@@ -206,7 +206,7 @@ class Number extends Text {
|
|
206
206
|
console.warn('input type number does not support maxLength. use maxValue instead.', this)
|
207
207
|
}
|
208
208
|
|
209
|
-
return null
|
209
|
+
return null
|
210
210
|
}
|
211
211
|
|
212
212
|
/**
|
@@ -220,7 +220,7 @@ class Number extends Text {
|
|
220
220
|
console.warn('input type number does not support minLength. use minValue instead.', this)
|
221
221
|
}
|
222
222
|
|
223
|
-
return null
|
223
|
+
return null
|
224
224
|
}
|
225
225
|
|
226
226
|
/**
|
@@ -230,7 +230,7 @@ class Number extends Text {
|
|
230
230
|
* @protected
|
231
231
|
*/
|
232
232
|
beforeSetTriggerPosition(value, oldValue) {
|
233
|
-
return this.beforeSetEnumValue(value, oldValue, 'triggerPosition')
|
233
|
+
return this.beforeSetEnumValue(value, oldValue, 'triggerPosition')
|
234
234
|
}
|
235
235
|
|
236
236
|
/**
|
@@ -241,18 +241,18 @@ class Number extends Text {
|
|
241
241
|
*/
|
242
242
|
beforeSetValue(value, oldValue) {
|
243
243
|
if (value === null || value === '') {
|
244
|
-
return null
|
244
|
+
return null
|
245
245
|
}
|
246
246
|
|
247
247
|
if (!Neo.isNumber(value)) {
|
248
|
-
value = +value
|
248
|
+
value = +value
|
249
249
|
}
|
250
250
|
|
251
251
|
if (this.stepSizeDigits > 0) {
|
252
|
-
value = +value.toFixed(this.stepSizeDigits)
|
252
|
+
value = +value.toFixed(this.stepSizeDigits)
|
253
253
|
}
|
254
254
|
|
255
|
-
return value
|
255
|
+
return value
|
256
256
|
}
|
257
257
|
|
258
258
|
/**
|
@@ -271,25 +271,23 @@ class Number extends Text {
|
|
271
271
|
* @returns {Boolean}
|
272
272
|
*/
|
273
273
|
isValid() {
|
274
|
-
let me
|
275
|
-
maxValue = me
|
276
|
-
|
277
|
-
value = me.value,
|
278
|
-
isNumber = Neo.isNumber(value);
|
274
|
+
let me = this,
|
275
|
+
{maxValue, minValue, value} = me,
|
276
|
+
isNumber = Neo.isNumber(value);
|
279
277
|
|
280
278
|
if (Neo.isNumber(maxValue) && isNumber && value > maxValue) {
|
281
|
-
return false
|
279
|
+
return false
|
282
280
|
}
|
283
281
|
|
284
282
|
if (Neo.isNumber(minValue) && isNumber && value < minValue) {
|
285
|
-
return false
|
283
|
+
return false
|
286
284
|
}
|
287
285
|
|
288
286
|
if (!me.fitsStepSize(value)) {
|
289
|
-
return false
|
287
|
+
return false
|
290
288
|
}
|
291
289
|
|
292
|
-
return super.isValid()
|
290
|
+
return super.isValid()
|
293
291
|
}
|
294
292
|
|
295
293
|
/**
|
@@ -297,7 +295,7 @@ class Number extends Text {
|
|
297
295
|
*/
|
298
296
|
onConstructed() {
|
299
297
|
this.updateTriggers();
|
300
|
-
super.onConstructed()
|
298
|
+
super.onConstructed()
|
301
299
|
}
|
302
300
|
|
303
301
|
/**
|
@@ -306,8 +304,8 @@ class Number extends Text {
|
|
306
304
|
* @protected
|
307
305
|
*/
|
308
306
|
onFocusLeave(data) {
|
309
|
-
let me
|
310
|
-
value = me
|
307
|
+
let me = this,
|
308
|
+
{value} = me;
|
311
309
|
|
312
310
|
if (value !== null) {
|
313
311
|
value = me.stepSizeDigits > 0 ? parseFloat(value) : parseInt(value);
|
@@ -315,9 +313,9 @@ class Number extends Text {
|
|
315
313
|
value = Math.min(me.maxValue, value);
|
316
314
|
|
317
315
|
if (me.value !== value) {
|
318
|
-
me.value = value
|
316
|
+
me.value = value
|
319
317
|
} else {
|
320
|
-
me.getInputEl().value = me.inputValueRenderer(value)
|
318
|
+
me.getInputEl().value = me.inputValueRenderer(value)
|
321
319
|
}
|
322
320
|
}
|
323
321
|
|
@@ -328,19 +326,19 @@ class Number extends Text {
|
|
328
326
|
* @protected
|
329
327
|
*/
|
330
328
|
onSpinButtonDownClick() {
|
331
|
-
let me
|
332
|
-
stepSize = me
|
333
|
-
oldValue
|
334
|
-
value
|
329
|
+
let me = this,
|
330
|
+
{stepSize} = me,
|
331
|
+
oldValue = Neo.isNumber(me.value) ? me.value : me.minValue,
|
332
|
+
value = (oldValue - stepSize) < me.minValue ? me.maxValue : (oldValue - stepSize);
|
335
333
|
|
336
334
|
if (me.excludedValues) {
|
337
335
|
while (me.excludedValues.includes(value)) {
|
338
|
-
value = Math.max(me.minValue, value - stepSize)
|
336
|
+
value = Math.max(me.minValue, value - stepSize)
|
339
337
|
}
|
340
338
|
}
|
341
339
|
|
342
340
|
if (oldValue !== value) {
|
343
|
-
me.value = value
|
341
|
+
me.value = value
|
344
342
|
}
|
345
343
|
}
|
346
344
|
|
@@ -348,19 +346,19 @@ class Number extends Text {
|
|
348
346
|
* @protected
|
349
347
|
*/
|
350
348
|
onSpinButtonUpClick() {
|
351
|
-
let me
|
352
|
-
stepSize = me
|
353
|
-
oldValue
|
354
|
-
value
|
349
|
+
let me = this,
|
350
|
+
{stepSize} = me,
|
351
|
+
oldValue = Neo.isNumber(me.value) ? me.value : me.maxValue,
|
352
|
+
value = (oldValue + stepSize) > me.maxValue ? me.minValue : (oldValue + stepSize);
|
355
353
|
|
356
354
|
if (me.excludedValues) {
|
357
355
|
while (me.excludedValues.includes(value)) {
|
358
|
-
value = Math.min(me.maxValue, value + stepSize)
|
356
|
+
value = Math.min(me.maxValue, value + stepSize)
|
359
357
|
}
|
360
358
|
}
|
361
359
|
|
362
360
|
if (oldValue !== value) {
|
363
|
-
me.value = value
|
361
|
+
me.value = value
|
364
362
|
}
|
365
363
|
}
|
366
364
|
|
@@ -374,29 +372,29 @@ class Number extends Text {
|
|
374
372
|
if (me.useSpinButtons) {
|
375
373
|
if (me.triggerPosition === 'right') {
|
376
374
|
if (!me.hasTrigger('spinupdown')) {
|
377
|
-
triggers.push(SpinUpDownTrigger)
|
375
|
+
triggers.push(SpinUpDownTrigger)
|
378
376
|
}
|
379
377
|
|
380
378
|
me.removeTrigger('spindown', true, triggers);
|
381
|
-
me.removeTrigger('spinup', true, triggers)
|
379
|
+
me.removeTrigger('spinup', true, triggers)
|
382
380
|
} else {
|
383
381
|
if (!me.hasTrigger('spindown')) {
|
384
|
-
triggers.push(SpinDownTrigger)
|
382
|
+
triggers.push(SpinDownTrigger)
|
385
383
|
}
|
386
384
|
|
387
385
|
if (!me.hasTrigger('spinup')) {
|
388
|
-
triggers.push(SpinUpTrigger)
|
386
|
+
triggers.push(SpinUpTrigger)
|
389
387
|
}
|
390
388
|
|
391
|
-
me.removeTrigger('spinupdown', true, triggers)
|
389
|
+
me.removeTrigger('spinupdown', true, triggers)
|
392
390
|
}
|
393
391
|
} else {
|
394
392
|
me.removeTrigger('spindown', true, triggers);
|
395
393
|
me.removeTrigger('spinup', true, triggers);
|
396
|
-
me.removeTrigger('spinupdown', true, triggers)
|
394
|
+
me.removeTrigger('spinupdown', true, triggers)
|
397
395
|
}
|
398
396
|
|
399
|
-
me.triggers = triggers
|
397
|
+
me.triggers = triggers
|
400
398
|
}
|
401
399
|
|
402
400
|
/**
|
@@ -406,11 +404,8 @@ class Number extends Text {
|
|
406
404
|
*/
|
407
405
|
validate(silent=true) {
|
408
406
|
let me = this,
|
409
|
-
value
|
407
|
+
{maxValue, minValue, stepSize, value} = me,
|
410
408
|
isNumber = Neo.isNumber(value),
|
411
|
-
maxValue = me.maxValue,
|
412
|
-
minValue = me.minValue,
|
413
|
-
stepSize = me.stepSize,
|
414
409
|
returnValue = super.validate(silent),
|
415
410
|
errorParam = {maxValue, minValue, stepSize, value};
|
416
411
|
|
@@ -133,7 +133,7 @@ class Picker extends Text {
|
|
133
133
|
createPicker() {
|
134
134
|
const
|
135
135
|
me = this,
|
136
|
-
{
|
136
|
+
{pickerWidth} = me,
|
137
137
|
pickerComponent = me.createPickerComponent();
|
138
138
|
|
139
139
|
me.picker = Neo.create(Container, {
|
@@ -192,7 +192,7 @@ class Picker extends Text {
|
|
192
192
|
* @param args
|
193
193
|
*/
|
194
194
|
destroy(...args) {
|
195
|
-
let picker = this
|
195
|
+
let {picker} = this;
|
196
196
|
|
197
197
|
if (picker?.hidden === false) {
|
198
198
|
picker.unmount()
|
package/src/form/field/Radio.mjs
CHANGED
package/src/form/field/Range.mjs
CHANGED
@@ -79,7 +79,7 @@ class Range extends Number {
|
|
79
79
|
|
80
80
|
inputEl.cls = ['neo-rangefield-input']; // replace neo-textfield-input
|
81
81
|
|
82
|
-
me.addValueToLabel()
|
82
|
+
me.addValueToLabel()
|
83
83
|
}
|
84
84
|
|
85
85
|
/**
|
@@ -93,22 +93,23 @@ class Range extends Number {
|
|
93
93
|
}
|
94
94
|
|
95
95
|
/**
|
96
|
-
*
|
97
|
-
* @param {
|
96
|
+
* Triggered after the value config got changed
|
97
|
+
* @param {Number} value
|
98
|
+
* @param {Number} oldValue
|
98
99
|
*/
|
99
100
|
afterSetValue(value, oldValue) {
|
100
101
|
this.addValueToLabel();
|
101
|
-
super.afterSetValue(value, oldValue)
|
102
|
+
super.afterSetValue(value, oldValue)
|
102
103
|
}
|
103
104
|
|
104
105
|
/**
|
105
106
|
* Update label with value
|
106
107
|
*/
|
107
108
|
addValueToLabel() {
|
108
|
-
|
109
|
+
let me = this;
|
109
110
|
|
110
111
|
if (me.showResultInLabel) {
|
111
|
-
me.getLabelEl().innerHTML = `[${me.value}] ` + me.labelText
|
112
|
+
me.getLabelEl().innerHTML = `[${me.value}] ` + me.labelText
|
112
113
|
}
|
113
114
|
}
|
114
115
|
}
|
package/src/form/field/Text.mjs
CHANGED
@@ -383,9 +383,8 @@ class Text extends Base {
|
|
383
383
|
* @protected
|
384
384
|
*/
|
385
385
|
afterSetEditable(value, oldValue) {
|
386
|
-
|
387
|
-
|
388
|
-
{ cls } = me;
|
386
|
+
let me = this,
|
387
|
+
{cls} = me;
|
389
388
|
|
390
389
|
NeoArray.toggle(cls, 'neo-not-editable', !value);
|
391
390
|
me.cls = cls;
|
@@ -486,8 +485,8 @@ class Text extends Base {
|
|
486
485
|
* @protected
|
487
486
|
*/
|
488
487
|
afterSetInputValue(value, oldValue) {
|
489
|
-
let me
|
490
|
-
cls = me
|
488
|
+
let me = this,
|
489
|
+
{cls} = me;
|
491
490
|
|
492
491
|
me.getInputEl().value = me.containsFocus ? value : me.inputValueRenderer(value);
|
493
492
|
|
@@ -532,9 +531,8 @@ class Text extends Base {
|
|
532
531
|
* @protected
|
533
532
|
*/
|
534
533
|
afterSetLabelPosition(value, oldValue) {
|
535
|
-
let me
|
536
|
-
cls
|
537
|
-
vdom = me.vdom,
|
534
|
+
let me = this,
|
535
|
+
{cls, vdom} = me,
|
538
536
|
centerBorderElCls, isEmpty;
|
539
537
|
|
540
538
|
vdom.cn[1].removeDom = value !== 'top' ? true : !Boolean(me.subLabelText);
|
@@ -622,8 +620,7 @@ class Text extends Base {
|
|
622
620
|
afterSetLabelWidth(value, oldValue) {
|
623
621
|
if (this.labelPosition !== 'inline') {
|
624
622
|
let me = this,
|
625
|
-
|
626
|
-
label = vdom.cn[0];
|
623
|
+
label = me.vdom.cn[0];
|
627
624
|
|
628
625
|
label.width = value;
|
629
626
|
!me.hideLabel && me.updateInputWidth()
|
@@ -691,8 +688,8 @@ class Text extends Base {
|
|
691
688
|
* @protected
|
692
689
|
*/
|
693
690
|
afterSetPlaceholderText(value, oldValue) {
|
694
|
-
let me
|
695
|
-
cls = me
|
691
|
+
let me = this,
|
692
|
+
{cls} = me;
|
696
693
|
|
697
694
|
me.changeInputElKey('placeholder', value === '' ? null : value);
|
698
695
|
|
@@ -711,8 +708,8 @@ class Text extends Base {
|
|
711
708
|
* @protected
|
712
709
|
*/
|
713
710
|
afterSetReadOnly(value, oldValue) {
|
714
|
-
let me
|
715
|
-
cls = me
|
711
|
+
let me = this,
|
712
|
+
{cls} = me;
|
716
713
|
|
717
714
|
NeoArray[value ? 'add' : 'remove'](cls, 'neo-readonly');
|
718
715
|
me.cls = cls;
|
@@ -771,8 +768,8 @@ class Text extends Base {
|
|
771
768
|
* @protected
|
772
769
|
*/
|
773
770
|
afterSetSubLabelCls(value, oldValue) {
|
774
|
-
let me
|
775
|
-
cls = me.vdom.cn[1]
|
771
|
+
let me = this,
|
772
|
+
{cls} = me.vdom.cn[1];
|
776
773
|
|
777
774
|
NeoArray.remove(cls, oldValue);
|
778
775
|
NeoArray.add(cls, value);
|
@@ -805,7 +802,7 @@ class Text extends Base {
|
|
805
802
|
*/
|
806
803
|
afterSetTriggers(value, oldValue) {
|
807
804
|
let me = this,
|
808
|
-
vdom
|
805
|
+
{vdom} = me,
|
809
806
|
inputEl = vdom.cn[2], // inputEl or inputWrapperEl
|
810
807
|
preTriggers = [],
|
811
808
|
postTriggers = [],
|
@@ -1116,7 +1113,7 @@ class Text extends Base {
|
|
1116
1113
|
let me = this,
|
1117
1114
|
ignoreLabel = me.hideLabel || me.labelPosition === 'bottom' || me.labelPosition === 'inline' || me.labelPosition === 'top',
|
1118
1115
|
labelWidth = ignoreLabel ? 0 : me.labelWidth,
|
1119
|
-
width
|
1116
|
+
{width} = me;
|
1120
1117
|
|
1121
1118
|
if (labelWidth && width) {
|
1122
1119
|
return parseInt(width) - parseInt(labelWidth)
|
@@ -1298,8 +1295,8 @@ class Text extends Base {
|
|
1298
1295
|
onFocusEnter(data) {
|
1299
1296
|
super.onFocusEnter(data);
|
1300
1297
|
|
1301
|
-
let me
|
1302
|
-
cls = me
|
1298
|
+
let me = this,
|
1299
|
+
{cls} = me;
|
1303
1300
|
|
1304
1301
|
if (!me.readOnly) {
|
1305
1302
|
NeoArray.add(cls, 'neo-focus');
|
@@ -1379,8 +1376,8 @@ class Text extends Base {
|
|
1379
1376
|
* @param {Object} data
|
1380
1377
|
*/
|
1381
1378
|
onMouseEnter(data) {
|
1382
|
-
let me
|
1383
|
-
cls = me
|
1379
|
+
let me = this,
|
1380
|
+
{cls} = me;
|
1384
1381
|
|
1385
1382
|
if (!me.readOnly) {
|
1386
1383
|
NeoArray.add(cls, 'neo-hovered');
|
@@ -1392,8 +1389,8 @@ class Text extends Base {
|
|
1392
1389
|
* @param {Object} data
|
1393
1390
|
*/
|
1394
1391
|
onMouseLeave(data) {
|
1395
|
-
let me
|
1396
|
-
cls = me
|
1392
|
+
let me = this,
|
1393
|
+
{cls} = me;
|
1397
1394
|
|
1398
1395
|
if (!me.readOnly) {
|
1399
1396
|
NeoArray.remove(cls, 'neo-hovered');
|
@@ -1479,8 +1476,8 @@ class Text extends Base {
|
|
1479
1476
|
@param {Boolean} silent=false
|
1480
1477
|
*/
|
1481
1478
|
updateError(value, silent = false) {
|
1482
|
-
let me
|
1483
|
-
cls = me
|
1479
|
+
let me = this,
|
1480
|
+
{cls} = me,
|
1484
1481
|
errorNode, errorWrapper;
|
1485
1482
|
|
1486
1483
|
if (!(me.clean && !me.mounted)) {
|
@@ -1573,16 +1570,12 @@ class Text extends Base {
|
|
1573
1570
|
* @returns {Boolean} Returns true in case there are no client-side errors
|
1574
1571
|
*/
|
1575
1572
|
validate(silent=true) {
|
1576
|
-
let me
|
1577
|
-
maxLength
|
1578
|
-
|
1579
|
-
|
1580
|
-
|
1581
|
-
|
1582
|
-
valueLength = value?.toString().length,
|
1583
|
-
inputPattern = me.inputPattern,
|
1584
|
-
isEmpty = value !== 0 && (!value || valueLength < 1),
|
1585
|
-
errorParam = {inputPattern, maxLength, minLength, valueLength},
|
1573
|
+
let me = this,
|
1574
|
+
{inputPattern, maxLength, minLength, required, value} = me,
|
1575
|
+
returnValue = true,
|
1576
|
+
valueLength = value?.toString().length,
|
1577
|
+
isEmpty = value !== 0 && (!value || valueLength < 1),
|
1578
|
+
errorParam = {inputPattern, maxLength, minLength, valueLength},
|
1586
1579
|
errorText;
|
1587
1580
|
|
1588
1581
|
if (!silent) {
|