@oat-sa/tao-core-ui 1.64.1 → 1.64.2
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/LICENSE +339 -339
- package/README.md +22 -22
- package/dist/actionbar.js +92 -92
- package/dist/adder.js +109 -109
- package/dist/animable/absorbable/absorbable.js +29 -29
- package/dist/animable/absorbable/css/absorb.css +7 -7
- package/dist/animable/absorbable/css/absorb.css.map +1 -1
- package/dist/animable/pulsable/css/pulse.css +7 -7
- package/dist/animable/pulsable/css/pulse.css.map +1 -1
- package/dist/animable/pulsable/pulsable.js +23 -23
- package/dist/areaBroker.js +51 -51
- package/dist/autocomplete/css/autocomplete.css +7 -7
- package/dist/autocomplete/css/autocomplete.css.map +1 -1
- package/dist/autocomplete.js +384 -384
- package/dist/autoscroll.js +22 -22
- package/dist/badge/badge.js +35 -35
- package/dist/badge/css/badge.css +7 -7
- package/dist/badge/css/badge.css.map +1 -1
- package/dist/breadcrumbs/css/breadcrumbs.css +7 -7
- package/dist/breadcrumbs/css/breadcrumbs.css.map +1 -1
- package/dist/breadcrumbs.js +57 -57
- package/dist/btngrouper.js +64 -64
- package/dist/bulkActionPopup/css/bulkActionPopup.css +7 -7
- package/dist/bulkActionPopup/css/bulkActionPopup.css.map +1 -1
- package/dist/bulkActionPopup.js +91 -91
- package/dist/button.js +89 -89
- package/dist/calculator/css/calculator.css +10 -10
- package/dist/calculator/css/calculator.css.map +1 -1
- package/dist/calculator.js +51 -51
- package/dist/cascadingComboBox.js +34 -34
- package/dist/ckeditor/ckConfigurator.js +49 -49
- package/dist/ckeditor/dtdHandler.js +110 -110
- package/dist/class/css/selector.css +7 -7
- package/dist/class/css/selector.css.map +1 -1
- package/dist/class/selector.js +98 -98
- package/dist/component/alignable.js +81 -81
- package/dist/component/containable.js +37 -37
- package/dist/component/css/components.css +7 -7
- package/dist/component/css/components.css.map +1 -1
- package/dist/component/css/windowComponent.css +7 -7
- package/dist/component/css/windowComponent.css.map +1 -1
- package/dist/component/draggable.js +25 -25
- package/dist/component/placeable.js +70 -70
- package/dist/component/resizable.js +61 -61
- package/dist/component/stackable.js +20 -20
- package/dist/component/windowed.js +46 -46
- package/dist/component.js +140 -140
- package/dist/container.js +76 -76
- package/dist/contextualPopup/css/contextualPopup.css +7 -7
- package/dist/contextualPopup/css/contextualPopup.css.map +1 -1
- package/dist/contextualPopup.js +100 -100
- package/dist/dashboard/css/dashboard.css +7 -7
- package/dist/dashboard/css/dashboard.css.map +1 -1
- package/dist/dashboard.js +62 -62
- package/dist/datalist/css/datalist.css +7 -7
- package/dist/datalist/css/datalist.css.map +1 -1
- package/dist/datalist.js +147 -147
- package/dist/datatable/css/datatable.css +7 -7
- package/dist/datatable/css/datatable.css.map +1 -1
- package/dist/datatable/filterStrategy/filterStrategy.js +27 -27
- package/dist/datatable/filterStrategy/multiple.js +25 -25
- package/dist/datatable/filterStrategy/single.js +25 -25
- package/dist/datatable.js +377 -377
- package/dist/dateRange/css/dateRange.css +7 -7
- package/dist/dateRange/css/dateRange.css.map +1 -1
- package/dist/dateRange/dateRange.js +97 -97
- package/dist/datetime/css/picker.css +7 -7
- package/dist/datetime/css/picker.css.map +1 -1
- package/dist/datetime/picker.js +161 -161
- package/dist/deleter.js +79 -79
- package/dist/destination/css/selector.css +7 -7
- package/dist/destination/css/selector.css.map +1 -1
- package/dist/destination/selector.js +52 -52
- package/dist/dialog/alert.js +26 -26
- package/dist/dialog/confirm.js +27 -27
- package/dist/dialog/confirmDelete.js +31 -31
- package/dist/dialog.js +141 -141
- package/dist/disabler.js +90 -90
- package/dist/documentViewer/css/documentViewer.css +7 -7
- package/dist/documentViewer/css/documentViewer.css.map +1 -1
- package/dist/documentViewer/providers/pdfViewer/fallback/viewer.js +30 -30
- package/dist/documentViewer/providers/pdfViewer/pdfjs/areaBroker.js +25 -25
- package/dist/documentViewer/providers/pdfViewer/pdfjs/findBar.js +120 -120
- package/dist/documentViewer/providers/pdfViewer/pdfjs/pageView.js +89 -89
- package/dist/documentViewer/providers/pdfViewer/pdfjs/pagesManager.js +52 -52
- package/dist/documentViewer/providers/pdfViewer/pdfjs/searchEngine.js +112 -112
- package/dist/documentViewer/providers/pdfViewer/pdfjs/textManager.js +67 -67
- package/dist/documentViewer/providers/pdfViewer/pdfjs/viewer.js +81 -81
- package/dist/documentViewer/providers/pdfViewer/pdfjs/wrapper.js +111 -111
- package/dist/documentViewer/providers/pdfViewer.js +29 -29
- package/dist/documentViewer/viewerFactory.js +71 -71
- package/dist/documentViewer.js +86 -86
- package/dist/dropdown/css/dropdown.css +7 -7
- package/dist/dropdown/css/dropdown.css.map +1 -1
- package/dist/dropdown.js +84 -84
- package/dist/durationer.js +58 -58
- package/dist/dynamicComponent/css/dynamicComponent.css +7 -7
- package/dist/dynamicComponent/css/dynamicComponent.css.map +1 -1
- package/dist/dynamicComponent.js +103 -103
- package/dist/feedback.js +84 -84
- package/dist/figure/FigureStateActive.js +111 -111
- package/dist/filesender.js +26 -26
- package/dist/filter.js +34 -34
- package/dist/form/css/dropdownForm.css +7 -7
- package/dist/form/css/dropdownForm.css.map +1 -1
- package/dist/form/css/form.css +7 -7
- package/dist/form/css/form.css.map +1 -1
- package/dist/form/dropdownForm.js +99 -99
- package/dist/form/form.js +248 -248
- package/dist/form/simpleForm.js +71 -71
- package/dist/form/validator/css/validator.css +7 -7
- package/dist/form/validator/css/validator.css.map +1 -1
- package/dist/form/validator/renderer.js +52 -52
- package/dist/form/validator/validator.js +103 -103
- package/dist/form/widget/css/widget.css +7 -7
- package/dist/form/widget/css/widget.css.map +1 -1
- package/dist/form/widget/definitions.js +24 -24
- package/dist/form/widget/loader.js +16 -16
- package/dist/form/widget/providers/checkBox.js +62 -62
- package/dist/form/widget/providers/comboBox.js +46 -46
- package/dist/form/widget/providers/default.js +35 -35
- package/dist/form/widget/providers/hidden.js +37 -37
- package/dist/form/widget/providers/hiddenBox.js +58 -58
- package/dist/form/widget/providers/radioBox.js +57 -57
- package/dist/form/widget/providers/textArea.js +35 -35
- package/dist/form/widget/providers/textBox.js +34 -34
- package/dist/form/widget/widget.js +141 -141
- package/dist/form.js +10 -10
- package/dist/formValidator/formValidator.js +61 -61
- package/dist/formValidator/highlighters/highlighter.js +41 -41
- package/dist/formValidator/highlighters/message.js +29 -29
- package/dist/formValidator/highlighters/tooltip.js +32 -32
- package/dist/generis/form/css/form.css +7 -7
- package/dist/generis/form/css/form.css.map +1 -1
- package/dist/generis/form/form.js +73 -73
- package/dist/generis/validator/css/validator.css +7 -7
- package/dist/generis/validator/css/validator.css.map +1 -1
- package/dist/generis/validator/validator.js +38 -38
- package/dist/generis/widget/checkBox/checkBox.js +39 -39
- package/dist/generis/widget/comboBox/comboBox.js +32 -32
- package/dist/generis/widget/css/widget.css +7 -7
- package/dist/generis/widget/css/widget.css.map +1 -1
- package/dist/generis/widget/hiddenBox/hiddenBox.js +40 -40
- package/dist/generis/widget/loader.js +20 -20
- package/dist/generis/widget/textBox/textBox.js +27 -27
- package/dist/generis/widget/widget.js +47 -47
- package/dist/groupedComboBox.js +36 -36
- package/dist/groupvalidator.js +19 -19
- package/dist/hider.js +41 -41
- package/dist/highlighter.js +278 -278
- package/dist/image/ImgStateActive/extractLabel.js +20 -20
- package/dist/image/ImgStateActive/helper.js +16 -16
- package/dist/image/ImgStateActive/initHelper.js +85 -85
- package/dist/image/ImgStateActive/initMediaEditor.js +48 -48
- package/dist/image/ImgStateActive/mediaSizer.js +32 -32
- package/dist/image/ImgStateActive.js +104 -104
- package/dist/incrementer.js +58 -58
- package/dist/inplacer.js +87 -87
- package/dist/interactUtils.js +42 -42
- package/dist/itemButtonList/css/item-button-list.css +23 -23
- package/dist/itemButtonList/css/item-button-list.css.map +1 -1
- package/dist/itemButtonList.js +102 -102
- package/dist/keyNavigation/navigableDomElement.js +76 -76
- package/dist/keyNavigation/navigator.js +158 -158
- package/dist/listbox/css/listbox.css +7 -7
- package/dist/listbox/css/listbox.css.map +1 -1
- package/dist/listbox.js +84 -84
- package/dist/liststyler.js +57 -57
- package/dist/loadingButton/css/button.css +7 -7
- package/dist/loadingButton/css/button.css.map +1 -1
- package/dist/loadingButton/loadingButton.js +35 -35
- package/dist/lock.js +112 -112
- package/dist/login/login.js +87 -87
- package/dist/maths/calculator/basicCalculator.js +50 -50
- package/dist/maths/calculator/calculatorComponent.js +29 -29
- package/dist/maths/calculator/core/areaBroker.js +25 -25
- package/dist/maths/calculator/core/board.js +300 -300
- package/dist/maths/calculator/core/expression.js +98 -98
- package/dist/maths/calculator/core/labels.js +16 -16
- package/dist/maths/calculator/core/plugin.js +19 -19
- package/dist/maths/calculator/core/terms.js +26 -26
- package/dist/maths/calculator/core/tokenizer.js +98 -98
- package/dist/maths/calculator/core/tokens.js +75 -75
- package/dist/maths/calculator/css/calculator.css +7 -7
- package/dist/maths/calculator/css/calculator.css.map +1 -1
- package/dist/maths/calculator/defaultCalculator.js +23 -23
- package/dist/maths/calculator/plugins/core/degrad.js +22 -22
- package/dist/maths/calculator/plugins/core/history.js +45 -45
- package/dist/maths/calculator/plugins/core/remind.js +22 -22
- package/dist/maths/calculator/plugins/core/stepNavigation.js +31 -31
- package/dist/maths/calculator/plugins/keyboard/templateKeyboard/templateKeyboard.js +48 -48
- package/dist/maths/calculator/plugins/modifiers/pow10.js +35 -35
- package/dist/maths/calculator/plugins/modifiers/sign.js +90 -90
- package/dist/maths/calculator/plugins/screen/simpleScreen/simpleScreen.js +47 -47
- package/dist/maths/calculator/pluginsLoader.js +21 -21
- package/dist/maths/calculator/scientificCalculator.js +78 -78
- package/dist/mediaEditor/mediaEditorComponent.js +51 -51
- package/dist/mediaEditor/plugins/mediaAlignment/helper.js +16 -16
- package/dist/mediaEditor/plugins/mediaAlignment/mediaAlignmentComponent.js +47 -47
- package/dist/mediaEditor/plugins/mediaAlignment/style.css +7 -7
- package/dist/mediaEditor/plugins/mediaDimension/helper.js +70 -70
- package/dist/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +140 -140
- package/dist/mediaEditor/plugins/mediaDimension/style.css +141 -141
- package/dist/mediaplayer/css/player.css +7 -7
- package/dist/mediaplayer/css/player.css.map +1 -1
- package/dist/mediaplayer/players/html5.js +52 -52
- package/dist/mediaplayer/players/youtube.js +39 -39
- package/dist/mediaplayer/players.js +18 -18
- package/dist/mediaplayer/support.js +55 -55
- package/dist/mediaplayer/utils/reminder.js +100 -100
- package/dist/mediaplayer/utils/timeObserver.js +92 -92
- package/dist/mediaplayer/youtubeManager.js +51 -51
- package/dist/mediaplayer.js +447 -447
- package/dist/mediasizer.js +122 -122
- package/dist/modal.js +87 -87
- package/dist/movableComponent.js +35 -35
- package/dist/pageSizeSelector.js +31 -31
- package/dist/pageStatus.js +33 -33
- package/dist/pagination/css/pagination.css +7 -7
- package/dist/pagination/css/pagination.css.map +1 -1
- package/dist/pagination/paginationStrategy.js +23 -23
- package/dist/pagination/providers/pages.js +24 -24
- package/dist/pagination/providers/simple.js +22 -22
- package/dist/pagination.js +45 -45
- package/dist/previewer.js +67 -67
- package/dist/progressbar.js +58 -58
- package/dist/propertySelector/css/propertySelector.css +7 -7
- package/dist/propertySelector/css/propertySelector.css.map +1 -1
- package/dist/propertySelector/propertySelector.js +86 -86
- package/dist/report.js +73 -73
- package/dist/resource/css/selector.css +7 -7
- package/dist/resource/css/selector.css.map +1 -1
- package/dist/resource/filters.js +60 -60
- package/dist/resource/list.js +53 -53
- package/dist/resource/selectable.js +92 -92
- package/dist/resource/selector.js +182 -182
- package/dist/resource/tree.js +91 -91
- package/dist/resourcemgr/css/resourcemgr.css +7 -7
- package/dist/resourcemgr/css/resourcemgr.css.map +1 -1
- package/dist/resourcemgr/fileBrowser.js +75 -75
- package/dist/resourcemgr/fileSelector.js +45 -45
- package/dist/resourcemgr/util/updatePermissions.js +4 -4
- package/dist/resourcemgr.js +49 -49
- package/dist/scroller.js +26 -26
- package/dist/searchModal/advancedSearch.js +155 -155
- package/dist/searchModal/css/advancedSearch.css +7 -7
- package/dist/searchModal/css/advancedSearch.css.map +1 -1
- package/dist/searchModal/css/searchModal.css +7 -7
- package/dist/searchModal/css/searchModal.css.map +1 -1
- package/dist/searchModal.js +134 -134
- package/dist/selecter.js +6 -6
- package/dist/stacker.js +43 -43
- package/dist/switch/css/switch.css +7 -7
- package/dist/switch/css/switch.css.map +1 -1
- package/dist/switch/switch.js +62 -62
- package/dist/tableModel.js +33 -33
- package/dist/tabs/css/tabs.css +12 -12
- package/dist/tabs/css/tabs.css.map +1 -1
- package/dist/tabs.js +220 -220
- package/dist/taskQueue/css/taskQueue.css +7 -7
- package/dist/taskQueue/css/taskQueue.css.map +1 -1
- package/dist/taskQueue/status.js +59 -59
- package/dist/taskQueue/table.js +54 -54
- package/dist/taskQueue/taskQueue.js +18 -18
- package/dist/taskQueue/taskQueueModel.js +102 -102
- package/dist/taskQueue.js +47 -47
- package/dist/taskQueueButton/css/taskable.css +7 -7
- package/dist/taskQueueButton/css/taskable.css.map +1 -1
- package/dist/taskQueueButton/css/treeButton.css +7 -7
- package/dist/taskQueueButton/css/treeButton.css.map +1 -1
- package/dist/taskQueueButton/standardButton.js +39 -39
- package/dist/taskQueueButton/taskable.js +41 -41
- package/dist/taskQueueButton/treeButton.js +43 -43
- package/dist/themeLoader.js +75 -75
- package/dist/themes.js +84 -84
- package/dist/toggler.js +57 -57
- package/dist/tooltip.js +41 -41
- package/dist/tooltipster.js +17 -17
- package/dist/transformer.js +117 -117
- package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css +7 -7
- package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css.map +1 -1
- package/dist/tristateCheckboxGroup.js +62 -62
- package/dist/uploader.js +145 -145
- package/dist/validator/validators.js +48 -48
- package/dist/validator.js +23 -23
- package/dist/waitForMedia.js +33 -33
- package/dist/waitingDialog/css/waitingDialog.css +7 -7
- package/dist/waitingDialog/css/waitingDialog.css.map +1 -1
- package/dist/waitingDialog/waitingDialog.js +54 -54
- package/package.json +110 -110
- package/scss/basic.scss +16 -16
- package/scss/ckeditor/skins/tao/scss/inc/_ck-icons.scss +60 -60
- package/scss/ckeditor/skins/tao/scss/inc/_tao.scss +59 -59
- package/scss/font/tao/tao.svg +235 -235
- package/scss/inc/_base.scss +495 -495
- package/scss/inc/_bootstrap.scss +6 -6
- package/scss/inc/_buttons.scss +114 -114
- package/scss/inc/_colors.scss +93 -93
- package/scss/inc/_feedback.scss +154 -154
- package/scss/inc/_flex-grid.scss +15 -15
- package/scss/inc/_fonts.scss +4 -4
- package/scss/inc/_forms.scss +832 -832
- package/scss/inc/_functions.scss +283 -283
- package/scss/inc/_jquery.nouislider.scss +254 -254
- package/scss/inc/_normalize.scss +528 -528
- package/scss/inc/_report.scss +67 -67
- package/scss/inc/_secondary-properties.scss +89 -89
- package/scss/inc/_select2.scss +634 -634
- package/scss/inc/_toolbars.scss +155 -155
- package/scss/inc/_tooltip.scss +312 -312
- package/scss/inc/_variables.scss +21 -21
- package/scss/inc/base/_highlight.scss +5 -5
- package/scss/inc/base/_list-style.scss +58 -58
- package/scss/inc/base/_svg.scss +3 -3
- package/scss/inc/base/_table.scss +62 -62
- package/scss/inc/fonts/_source-sans-pro.scss +29 -29
- package/scss/inc/fonts/_tao-icon-classes.scss +227 -227
- package/scss/inc/fonts/_tao-icon-def.scss +12 -12
- package/scss/inc/fonts/_tao-icon-vars.scss +241 -241
- package/src/actionbar/tpl/main.tpl +8 -8
- package/src/actionbar.js +251 -251
- package/src/adder.js +250 -250
- package/src/animable/absorbable/absorbable.js +134 -134
- package/src/animable/absorbable/css/absorb.css +7 -7
- package/src/animable/absorbable/css/absorb.css.map +1 -1
- package/src/animable/absorbable/scss/absorb.scss +37 -37
- package/src/animable/pulsable/css/pulse.css +7 -7
- package/src/animable/pulsable/css/pulse.css.map +1 -1
- package/src/animable/pulsable/pulsable.js +90 -90
- package/src/animable/pulsable/scss/pulse.scss +22 -22
- package/src/areaBroker.js +160 -160
- package/src/autocomplete/css/autocomplete.css +7 -7
- package/src/autocomplete/css/autocomplete.css.map +1 -1
- package/src/autocomplete/scss/autocomplete.scss +37 -37
- package/src/autocomplete.js +1027 -1027
- package/src/autoscroll.js +57 -57
- package/src/badge/badge.js +119 -119
- package/src/badge/css/badge.css +7 -7
- package/src/badge/css/badge.css.map +1 -1
- package/src/badge/scss/badge.scss +92 -92
- package/src/badge/tpl/badge.tpl +4 -4
- package/src/breadcrumbs/css/breadcrumbs.css +7 -7
- package/src/breadcrumbs/css/breadcrumbs.css.map +1 -1
- package/src/breadcrumbs/scss/breadcrumbs.scss +52 -52
- package/src/breadcrumbs/tpl/breadcrumbs.tpl +20 -20
- package/src/breadcrumbs.js +99 -99
- package/src/btngrouper.js +213 -213
- package/src/bulkActionPopup/css/bulkActionPopup.css +7 -7
- package/src/bulkActionPopup/css/bulkActionPopup.css.map +1 -1
- package/src/bulkActionPopup/scss/bulkActionPopup.scss +63 -63
- package/src/bulkActionPopup/tpl/layout.tpl +76 -76
- package/src/bulkActionPopup/tpl/select.tpl +8 -8
- package/src/bulkActionPopup.js +274 -274
- package/src/button/tpl/button.tpl +4 -4
- package/src/button.js +135 -135
- package/src/calculator/css/calculator.css +10 -10
- package/src/calculator/css/calculator.css.map +1 -1
- package/src/calculator/scss/calculator.scss +139 -139
- package/src/calculator.js +188 -188
- package/src/cascadingComboBox.js +126 -126
- package/src/ckeditor/ckConfigurator.js +742 -742
- package/src/ckeditor/dtdHandler.js +1030 -1030
- package/src/class/css/selector.css +7 -7
- package/src/class/css/selector.css.map +1 -1
- package/src/class/scss/selector.scss +101 -101
- package/src/class/selector.js +329 -329
- package/src/class/tpl/listItem.tpl +9 -9
- package/src/class/tpl/selector.tpl +10 -10
- package/src/component/alignable.js +274 -274
- package/src/component/containable.js +122 -122
- package/src/component/css/components.css +7 -7
- package/src/component/css/components.css.map +1 -1
- package/src/component/css/windowComponent.css +7 -7
- package/src/component/css/windowComponent.css.map +1 -1
- package/src/component/draggable.js +104 -104
- package/src/component/placeable.js +233 -233
- package/src/component/resizable.js +195 -195
- package/src/component/scss/components.scss +507 -507
- package/src/component/scss/windowComponent.scss +62 -62
- package/src/component/stackable.js +67 -67
- package/src/component/tpl/window.tpl +7 -7
- package/src/component/windowed.js +206 -206
- package/src/component.js +401 -401
- package/src/container.js +200 -200
- package/src/contextualPopup/css/contextualPopup.css +7 -7
- package/src/contextualPopup/css/contextualPopup.css.map +1 -1
- package/src/contextualPopup/scss/contextualPopup.scss +78 -78
- package/src/contextualPopup/tpl/popup.tpl +10 -10
- package/src/contextualPopup.js +294 -294
- package/src/css/basic.css +104 -104
- package/src/css/basic.css.map +1 -1
- package/src/dashboard/css/dashboard.css +7 -7
- package/src/dashboard/css/dashboard.css.map +1 -1
- package/src/dashboard/scss/dashboard.scss +93 -93
- package/src/dashboard/tpl/dashboard.tpl +16 -16
- package/src/dashboard/tpl/dashboardMetricsList.tpl +15 -15
- package/src/dashboard.js +179 -179
- package/src/datalist/css/datalist.css +7 -7
- package/src/datalist/css/datalist.css.map +1 -1
- package/src/datalist/scss/datalist.scss +116 -116
- package/src/datalist/tpl/list.tpl +24 -24
- package/src/datalist/tpl/main.tpl +44 -44
- package/src/datalist.js +500 -500
- package/src/datatable/css/datatable.css +7 -7
- package/src/datatable/css/datatable.css.map +1 -1
- package/src/datatable/filterStrategy/filterStrategy.js +70 -70
- package/src/datatable/filterStrategy/multiple.js +126 -126
- package/src/datatable/filterStrategy/single.js +108 -108
- package/src/datatable/scss/datatable.scss +149 -149
- package/src/datatable/tpl/button.tpl +6 -6
- package/src/datatable/tpl/layout.tpl +158 -158
- package/src/datatable.js +1056 -1056
- package/src/dateRange/css/dateRange.css +7 -7
- package/src/dateRange/css/dateRange.css.map +1 -1
- package/src/dateRange/dateRange.js +341 -341
- package/src/dateRange/scss/dateRange.scss +7 -7
- package/src/dateRange/tpl/select.tpl +18 -18
- package/src/datetime/css/picker.css +7 -7
- package/src/datetime/css/picker.css.map +1 -1
- package/src/datetime/picker.js +576 -576
- package/src/datetime/scss/picker.scss +192 -192
- package/src/datetime/tpl/picker.tpl +18 -18
- package/src/deleter/undo.tpl +6 -6
- package/src/deleter.js +296 -296
- package/src/destination/css/selector.css +7 -7
- package/src/destination/css/selector.css.map +1 -1
- package/src/destination/scss/selector.scss +36 -36
- package/src/destination/selector.js +195 -195
- package/src/destination/tpl/selector.tpl +13 -13
- package/src/dialog/alert.js +70 -70
- package/src/dialog/confirm.js +85 -85
- package/src/dialog/confirmDelete.js +95 -95
- package/src/dialog/tpl/body.tpl +24 -24
- package/src/dialog/tpl/buttons.tpl +6 -6
- package/src/dialog/tpl/checkbox.tpl +5 -5
- package/src/dialog.js +517 -517
- package/src/disabler.js +230 -230
- package/src/documentViewer/css/documentViewer.css +7 -7
- package/src/documentViewer/css/documentViewer.css.map +1 -1
- package/src/documentViewer/providers/pdfViewer/fallback/viewer.js +69 -69
- package/src/documentViewer/providers/pdfViewer/pdfjs/areaBroker.js +41 -41
- package/src/documentViewer/providers/pdfViewer/pdfjs/findBar.js +475 -475
- package/src/documentViewer/providers/pdfViewer/pdfjs/findBar.tpl +20 -20
- package/src/documentViewer/providers/pdfViewer/pdfjs/match.tpl +1 -1
- package/src/documentViewer/providers/pdfViewer/pdfjs/page.tpl +4 -4
- package/src/documentViewer/providers/pdfViewer/pdfjs/pageView.js +318 -318
- package/src/documentViewer/providers/pdfViewer/pdfjs/pagesManager.js +167 -167
- package/src/documentViewer/providers/pdfViewer/pdfjs/searchEngine.js +451 -451
- package/src/documentViewer/providers/pdfViewer/pdfjs/textManager.js +252 -252
- package/src/documentViewer/providers/pdfViewer/pdfjs/viewer.js +299 -299
- package/src/documentViewer/providers/pdfViewer/pdfjs/viewer.tpl +16 -16
- package/src/documentViewer/providers/pdfViewer/pdfjs/wrapper.js +351 -351
- package/src/documentViewer/providers/pdfViewer.js +93 -93
- package/src/documentViewer/scss/documentViewer.scss +184 -184
- package/src/documentViewer/viewerFactory.js +191 -191
- package/src/documentViewer.js +238 -238
- package/src/dropdown/css/dropdown.css +7 -7
- package/src/dropdown/css/dropdown.css.map +1 -1
- package/src/dropdown/scss/dropdown.scss +99 -99
- package/src/dropdown/tpl/dropdown.tpl +8 -8
- package/src/dropdown/tpl/list-item.tpl +4 -4
- package/src/dropdown.js +255 -255
- package/src/durationer.js +220 -220
- package/src/dynamicComponent/css/dynamicComponent.css +7 -7
- package/src/dynamicComponent/css/dynamicComponent.css.map +1 -1
- package/src/dynamicComponent/scss/dynamicComponent.scss +98 -98
- package/src/dynamicComponent/tpl/layout.tpl +17 -17
- package/src/dynamicComponent.js +553 -553
- package/src/feedback/feedback.tpl +7 -7
- package/src/feedback.js +295 -295
- package/src/figure/FigureStateActive.js +184 -184
- package/src/filesender.js +112 -112
- package/src/filter/template.tpl +5 -5
- package/src/filter.js +129 -129
- package/src/form/css/dropdownForm.css +7 -7
- package/src/form/css/dropdownForm.css.map +1 -1
- package/src/form/css/form.css +7 -7
- package/src/form/css/form.css.map +1 -1
- package/src/form/dropdownForm.js +281 -281
- package/src/form/form.js +688 -688
- package/src/form/scss/dropdownForm.scss +60 -60
- package/src/form/scss/form.scss +25 -25
- package/src/form/simpleForm.js +125 -125
- package/src/form/tpl/dropdownForm.tpl +4 -4
- package/src/form/tpl/form.tpl +7 -7
- package/src/form/validator/css/validator.css +7 -7
- package/src/form/validator/css/validator.css.map +1 -1
- package/src/form/validator/renderer.js +118 -118
- package/src/form/validator/scss/validator.scss +14 -14
- package/src/form/validator/tpl/message.tpl +1 -1
- package/src/form/validator/tpl/validator.tpl +1 -1
- package/src/form/validator/validator.js +220 -220
- package/src/form/widget/css/widget.css +7 -7
- package/src/form/widget/css/widget.css.map +1 -1
- package/src/form/widget/definitions.js +51 -51
- package/src/form/widget/loader.js +40 -40
- package/src/form/widget/providers/checkBox.js +138 -138
- package/src/form/widget/providers/comboBox.js +63 -63
- package/src/form/widget/providers/default.js +90 -90
- package/src/form/widget/providers/hidden.js +62 -62
- package/src/form/widget/providers/hiddenBox.js +152 -152
- package/src/form/widget/providers/radioBox.js +99 -99
- package/src/form/widget/providers/textArea.js +52 -52
- package/src/form/widget/providers/textBox.js +48 -48
- package/src/form/widget/scss/widget.scss +55 -55
- package/src/form/widget/tpl/checkBox.tpl +25 -25
- package/src/form/widget/tpl/comboBox.tpl +13 -13
- package/src/form/widget/tpl/hidden.tpl +1 -1
- package/src/form/widget/tpl/hiddenBox.tpl +17 -17
- package/src/form/widget/tpl/label.tpl +6 -6
- package/src/form/widget/tpl/radioBox.tpl +25 -25
- package/src/form/widget/tpl/textArea.tpl +8 -8
- package/src/form/widget/tpl/widget.tpl +8 -8
- package/src/form/widget/widget.js +372 -372
- package/src/form.js +47 -47
- package/src/formValidator/formValidator.js +253 -253
- package/src/formValidator/highlighters/highlighter.js +103 -103
- package/src/formValidator/highlighters/message.js +68 -68
- package/src/formValidator/highlighters/tooltip.js +78 -78
- package/src/generis/form/css/form.css +7 -7
- package/src/generis/form/css/form.css.map +1 -1
- package/src/generis/form/form.js +239 -239
- package/src/generis/form/readme.md +70 -70
- package/src/generis/form/scss/form.scss +23 -23
- package/src/generis/form/tpl/form.tpl +16 -16
- package/src/generis/validator/css/validator.css +7 -7
- package/src/generis/validator/css/validator.css.map +1 -1
- package/src/generis/validator/readme.md +46 -46
- package/src/generis/validator/scss/validator.scss +13 -13
- package/src/generis/validator/validator.js +128 -128
- package/src/generis/widget/checkBox/checkBox.js +112 -112
- package/src/generis/widget/checkBox/checkBox.tpl +18 -18
- package/src/generis/widget/comboBox/comboBox.js +66 -66
- package/src/generis/widget/comboBox/comboBox.tpl +12 -12
- package/src/generis/widget/css/widget.css +7 -7
- package/src/generis/widget/css/widget.css.map +1 -1
- package/src/generis/widget/hiddenBox/hiddenBox.js +131 -131
- package/src/generis/widget/hiddenBox/hiddenBox.tpl +16 -16
- package/src/generis/widget/loader.js +49 -49
- package/src/generis/widget/readme.md +59 -59
- package/src/generis/widget/scss/widget.scss +61 -61
- package/src/generis/widget/textBox/textBox.js +64 -64
- package/src/generis/widget/textBox/textBox.tpl +7 -7
- package/src/generis/widget/widget.js +164 -164
- package/src/generis/widget/widget.tpl +5 -5
- package/src/groupedComboBox.js +99 -99
- package/src/groupvalidator.js +84 -84
- package/src/hider.js +88 -88
- package/src/highlighter.js +1192 -1192
- package/src/image/ImgStateActive/extractLabel.js +29 -29
- package/src/image/ImgStateActive/helper.js +36 -36
- package/src/image/ImgStateActive/initHelper.js +137 -137
- package/src/image/ImgStateActive/initMediaEditor.js +92 -92
- package/src/image/ImgStateActive/mediaSizer.js +63 -63
- package/src/image/ImgStateActive.js +115 -115
- package/src/incrementer.js +309 -309
- package/src/inplacer.js +315 -315
- package/src/interactUtils.js +140 -140
- package/src/itemButtonList/css/item-button-list.css +23 -23
- package/src/itemButtonList/css/item-button-list.css.map +1 -1
- package/src/itemButtonList/scss/item-button-list.scss +236 -236
- package/src/itemButtonList/tpl/itemButtonList.tpl +21 -21
- package/src/itemButtonList.js +274 -274
- package/src/keyNavigation/navigableDomElement.js +285 -285
- package/src/keyNavigation/navigator.js +535 -535
- package/src/listbox/css/listbox.css +7 -7
- package/src/listbox/css/listbox.css.map +1 -1
- package/src/listbox/scss/listbox.scss +116 -116
- package/src/listbox/tpl/list.tpl +14 -14
- package/src/listbox/tpl/main.tpl +9 -9
- package/src/listbox.js +252 -252
- package/src/liststyler.js +155 -155
- package/src/loadingButton/css/button.css +7 -7
- package/src/loadingButton/css/button.css.map +1 -1
- package/src/loadingButton/loadingButton.js +110 -110
- package/src/loadingButton/scss/button.scss +41 -41
- package/src/loadingButton/tpl/button.tpl +5 -5
- package/src/lock/lock.tpl +16 -16
- package/src/lock.js +393 -393
- package/src/login/login.js +317 -317
- package/src/login/tpl/login.tpl +29 -29
- package/src/login/tpl/passwordReveal.tpl +7 -7
- package/src/maths/calculator/basicCalculator.js +55 -55
- package/src/maths/calculator/calculatorComponent.js +128 -128
- package/src/maths/calculator/core/areaBroker.js +38 -38
- package/src/maths/calculator/core/board.js +841 -841
- package/src/maths/calculator/core/expression.js +430 -430
- package/src/maths/calculator/core/labels.js +116 -116
- package/src/maths/calculator/core/plugin.js +40 -40
- package/src/maths/calculator/core/terms.js +459 -459
- package/src/maths/calculator/core/tokenizer.js +245 -245
- package/src/maths/calculator/core/tokens.js +178 -178
- package/src/maths/calculator/core/tpl/board.tpl +4 -4
- package/src/maths/calculator/css/calculator.css +7 -7
- package/src/maths/calculator/css/calculator.css.map +1 -1
- package/src/maths/calculator/defaultCalculator.js +66 -66
- package/src/maths/calculator/plugins/core/degrad.js +90 -90
- package/src/maths/calculator/plugins/core/history.js +166 -166
- package/src/maths/calculator/plugins/core/remind.js +96 -96
- package/src/maths/calculator/plugins/core/stepNavigation.js +175 -175
- package/src/maths/calculator/plugins/keyboard/templateKeyboard/defaultTemplate.tpl +36 -36
- package/src/maths/calculator/plugins/keyboard/templateKeyboard/templateKeyboard.js +91 -91
- package/src/maths/calculator/plugins/modifiers/pow10.js +143 -143
- package/src/maths/calculator/plugins/modifiers/sign.js +339 -339
- package/src/maths/calculator/plugins/screen/simpleScreen/defaultTemplate.tpl +3 -3
- package/src/maths/calculator/plugins/screen/simpleScreen/history.tpl +3 -3
- package/src/maths/calculator/plugins/screen/simpleScreen/simpleScreen.js +190 -190
- package/src/maths/calculator/pluginsLoader.js +46 -46
- package/src/maths/calculator/scientificCalculator.js +74 -74
- package/src/maths/calculator/scss/calculator.scss +396 -396
- package/src/maths/calculator/tpl/basicKeyboard.tpl +37 -37
- package/src/maths/calculator/tpl/basicScreen.tpl +2 -2
- package/src/maths/calculator/tpl/scientificKeyboard.tpl +61 -61
- package/src/maths/calculator/tpl/scientificScreen.tpl +3 -3
- package/src/mediaEditor/mediaEditorComponent.js +141 -141
- package/src/mediaEditor/plugins/mediaAlignment/helper.js +110 -110
- package/src/mediaEditor/plugins/mediaAlignment/mediaAlignmentComponent.js +99 -99
- package/src/mediaEditor/plugins/mediaAlignment/style.css +7 -7
- package/src/mediaEditor/plugins/mediaAlignment/tpl/mediaAlignment.tpl +25 -25
- package/src/mediaEditor/plugins/mediaDimension/helper.js +190 -190
- package/src/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +561 -561
- package/src/mediaEditor/plugins/mediaDimension/style.css +141 -141
- package/src/mediaEditor/plugins/mediaDimension/tpl/mediaDimension.tpl +55 -55
- package/src/mediaEditor/tpl/editor.tpl +4 -4
- package/src/mediaplayer/css/player.css +7 -7
- package/src/mediaplayer/css/player.css.map +1 -1
- package/src/mediaplayer/players/html5.js +564 -564
- package/src/mediaplayer/players/youtube.js +323 -323
- package/src/mediaplayer/players.js +29 -29
- package/src/mediaplayer/readme.md +305 -305
- package/src/mediaplayer/scss/player.scss +569 -569
- package/src/mediaplayer/support.js +126 -126
- package/src/mediaplayer/tpl/audio.tpl +6 -6
- package/src/mediaplayer/tpl/player.tpl +37 -37
- package/src/mediaplayer/tpl/source.tpl +1 -1
- package/src/mediaplayer/tpl/video.tpl +6 -6
- package/src/mediaplayer/tpl/youtube.tpl +1 -1
- package/src/mediaplayer/utils/reminder.js +184 -184
- package/src/mediaplayer/utils/timeObserver.js +143 -143
- package/src/mediaplayer/youtubeManager.js +161 -161
- package/src/mediaplayer.js +1606 -1606
- package/src/mediasizer/mediasizer.tpl +55 -55
- package/src/mediasizer.js +635 -635
- package/src/modal.js +365 -365
- package/src/movableComponent.js +78 -78
- package/src/pageSizeSelector/tpl/pageSizeSelector.tpl +9 -9
- package/src/pageSizeSelector.js +106 -106
- package/src/pageStatus.js +147 -147
- package/src/pagination/css/pagination.css +7 -7
- package/src/pagination/css/pagination.css.map +1 -1
- package/src/pagination/paginationStrategy.js +53 -53
- package/src/pagination/providers/pages.js +161 -161
- package/src/pagination/providers/simple.js +74 -74
- package/src/pagination/providers/tpl/pages/page.tpl +1 -1
- package/src/pagination/providers/tpl/pages.tpl +8 -8
- package/src/pagination/providers/tpl/simple.tpl +7 -7
- package/src/pagination/scss/pagination.scss +111 -111
- package/src/pagination.js +237 -237
- package/src/previewer.js +300 -300
- package/src/progressbar.js +165 -165
- package/src/propertySelector/css/propertySelector.css +7 -7
- package/src/propertySelector/css/propertySelector.css.map +1 -1
- package/src/propertySelector/propertySelector.js +286 -286
- package/src/propertySelector/scss/propertySelector.scss +66 -66
- package/src/propertySelector/tpl/property-description.tpl +12 -12
- package/src/propertySelector/tpl/property-selector.tpl +6 -6
- package/src/report/feedback.tpl +11 -11
- package/src/report/layout.tpl +10 -10
- package/src/report.js +184 -184
- package/src/resource/css/selector.css +7 -7
- package/src/resource/css/selector.css.map +1 -1
- package/src/resource/filters.js +208 -208
- package/src/resource/list.js +200 -200
- package/src/resource/scss/_filters.scss +26 -26
- package/src/resource/scss/_resource-list.scss +107 -107
- package/src/resource/scss/_resource-tree.scss +205 -205
- package/src/resource/scss/selector.scss +187 -187
- package/src/resource/selectable.js +322 -322
- package/src/resource/selector.js +871 -871
- package/src/resource/tpl/filters.tpl +2 -2
- package/src/resource/tpl/list.tpl +7 -7
- package/src/resource/tpl/listNode.tpl +4 -4
- package/src/resource/tpl/selector.tpl +46 -46
- package/src/resource/tpl/tree.tpl +4 -4
- package/src/resource/tpl/treeNode.tpl +30 -30
- package/src/resource/tree.js +398 -398
- package/src/resourcemgr/css/resourcemgr.css +7 -7
- package/src/resourcemgr/css/resourcemgr.css.map +1 -1
- package/src/resourcemgr/fileBrowser.js +381 -381
- package/src/resourcemgr/filePreview.js +73 -73
- package/src/resourcemgr/fileSelector.js +322 -322
- package/src/resourcemgr/scss/resourcemgr.scss +254 -254
- package/src/resourcemgr/tpl/fileSelect.tpl +39 -39
- package/src/resourcemgr/tpl/folder.tpl +11 -11
- package/src/resourcemgr/tpl/layout.tpl +84 -84
- package/src/resourcemgr/tpl/rootFolder.tpl +13 -13
- package/src/resourcemgr/util/updatePermissions.js +53 -53
- package/src/resourcemgr.js +216 -216
- package/src/scroller.js +94 -94
- package/src/scss/basic.scss +16 -16
- package/src/searchModal/advancedSearch.js +638 -638
- package/src/searchModal/css/advancedSearch.css +7 -7
- package/src/searchModal/css/advancedSearch.css.map +1 -1
- package/src/searchModal/css/searchModal.css +7 -7
- package/src/searchModal/css/searchModal.css.map +1 -1
- package/src/searchModal/scss/advancedSearch.scss +171 -171
- package/src/searchModal/scss/searchModal.scss +393 -393
- package/src/searchModal/tpl/advanced-search.tpl +9 -9
- package/src/searchModal/tpl/info-message.tpl +3 -3
- package/src/searchModal/tpl/invalid-criteria-warning.tpl +10 -10
- package/src/searchModal/tpl/layout.tpl +27 -27
- package/src/searchModal/tpl/list-checkbox-criterion.tpl +17 -17
- package/src/searchModal/tpl/list-select-criterion.tpl +12 -12
- package/src/searchModal/tpl/text-criterion.tpl +11 -11
- package/src/searchModal.js +760 -760
- package/src/selecter.js +43 -43
- package/src/stacker.js +133 -133
- package/src/switch/css/switch.css +7 -7
- package/src/switch/css/switch.css.map +1 -1
- package/src/switch/scss/switch.scss +83 -83
- package/src/switch/switch.js +195 -195
- package/src/switch/tpl/switch.tpl +7 -7
- package/src/tableModel.js +112 -112
- package/src/tabs/css/tabs.css +12 -12
- package/src/tabs/css/tabs.css.map +1 -1
- package/src/tabs/scss/tabs.scss +50 -50
- package/src/tabs/tpl/panel.tpl +3 -3
- package/src/tabs/tpl/tabs.tpl +10 -10
- package/src/tabs.js +528 -528
- package/src/taskQueue/css/taskQueue.css +7 -7
- package/src/taskQueue/css/taskQueue.css.map +1 -1
- package/src/taskQueue/scss/taskQueue.scss +47 -47
- package/src/taskQueue/status.js +228 -228
- package/src/taskQueue/table.js +350 -350
- package/src/taskQueue/taskQueue.js +33 -33
- package/src/taskQueue/taskQueueModel.js +548 -548
- package/src/taskQueue/tpl/statusMessage.tpl +7 -7
- package/src/taskQueue.js +216 -216
- package/src/taskQueueButton/css/taskable.css +7 -7
- package/src/taskQueueButton/css/taskable.css.map +1 -1
- package/src/taskQueueButton/css/treeButton.css +7 -7
- package/src/taskQueueButton/css/treeButton.css.map +1 -1
- package/src/taskQueueButton/scss/taskable.scss +4 -4
- package/src/taskQueueButton/scss/treeButton.scss +34 -34
- package/src/taskQueueButton/standardButton.js +108 -108
- package/src/taskQueueButton/taskable.js +202 -202
- package/src/taskQueueButton/tpl/report.tpl +5 -5
- package/src/taskQueueButton/tpl/treeButton.tpl +6 -6
- package/src/taskQueueButton/treeButton.js +108 -108
- package/src/themeLoader.js +252 -252
- package/src/themes.js +162 -162
- package/src/toggler.js +200 -200
- package/src/tooltip/default.tpl +3 -3
- package/src/tooltip.js +160 -160
- package/src/tooltipster.js +25 -25
- package/src/transformer.js +327 -327
- package/src/tristateCheckboxGroup/css/tristateCheckboxGroup.css +7 -7
- package/src/tristateCheckboxGroup/css/tristateCheckboxGroup.css.map +1 -1
- package/src/tristateCheckboxGroup/scss/tristateCheckboxGroup.scss +15 -15
- package/src/tristateCheckboxGroup/tpl/li.tpl +6 -6
- package/src/tristateCheckboxGroup.js +207 -207
- package/src/uploader/fileEntry.tpl +6 -6
- package/src/uploader/uploader.tpl +32 -32
- package/src/uploader.js +594 -594
- package/src/validator/Report.js +10 -10
- package/src/validator/Validator.js +108 -108
- package/src/validator/validators.js +217 -217
- package/src/validator.js +262 -262
- package/src/waitForMedia.js +82 -82
- package/src/waitingDialog/css/waitingDialog.css +7 -7
- package/src/waitingDialog/css/waitingDialog.css.map +1 -1
- package/src/waitingDialog/scss/waitingDialog.scss +34 -34
- package/src/waitingDialog/waitingDialog.js +240 -240
|
@@ -22,176 +22,176 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
22
22
|
helpers = this.merge(helpers, Handlebars.helpers);
|
|
23
23
|
|
|
24
24
|
|
|
25
|
-
return "<div class=\"calculator\">\n <div class=\"screen\"></div>\n <div class=\"input\"></div>\n <div class=\"keyboard\"></div>\n</div>";
|
|
25
|
+
return "<div class=\"calculator\">\r\n <div class=\"screen\"></div>\r\n <div class=\"input\"></div>\r\n <div class=\"keyboard\"></div>\r\n</div>";
|
|
26
26
|
});
|
|
27
27
|
function boardTpl(data, options, asString) {
|
|
28
28
|
var html = Template(data, options);
|
|
29
29
|
return (asString || true) ? html : $(html);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
/**
|
|
33
|
-
* This program is free software; you can redistribute it and/or
|
|
34
|
-
* modify it under the terms of the GNU General Public License
|
|
35
|
-
* as published by the Free Software Foundation; under version 2
|
|
36
|
-
* of the License (non-upgradable).
|
|
37
|
-
*
|
|
38
|
-
* This program is distributed in the hope that it will be useful,
|
|
39
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
40
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
41
|
-
* GNU General Public License for more details.
|
|
42
|
-
*
|
|
43
|
-
* You should have received a copy of the GNU General Public License
|
|
44
|
-
* along with this program; if not, write to the Free Software
|
|
45
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
46
|
-
*
|
|
47
|
-
* Copyright (c) 2018-2019 Open Assessment Technologies SA ;
|
|
32
|
+
/**
|
|
33
|
+
* This program is free software; you can redistribute it and/or
|
|
34
|
+
* modify it under the terms of the GNU General Public License
|
|
35
|
+
* as published by the Free Software Foundation; under version 2
|
|
36
|
+
* of the License (non-upgradable).
|
|
37
|
+
*
|
|
38
|
+
* This program is distributed in the hope that it will be useful,
|
|
39
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
40
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
41
|
+
* GNU General Public License for more details.
|
|
42
|
+
*
|
|
43
|
+
* You should have received a copy of the GNU General Public License
|
|
44
|
+
* along with this program; if not, write to the Free Software
|
|
45
|
+
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
46
|
+
*
|
|
47
|
+
* Copyright (c) 2018-2019 Open Assessment Technologies SA ;
|
|
48
48
|
*/
|
|
49
49
|
|
|
50
|
-
/**
|
|
51
|
-
* Default config values
|
|
52
|
-
* @type {Object}
|
|
50
|
+
/**
|
|
51
|
+
* Default config values
|
|
52
|
+
* @type {Object}
|
|
53
53
|
*/
|
|
54
54
|
var defaultConfig = {
|
|
55
55
|
expression: '',
|
|
56
56
|
position: 0
|
|
57
57
|
};
|
|
58
58
|
|
|
59
|
-
/**
|
|
60
|
-
* Name of the variable that contains the last result
|
|
61
|
-
* @type {String}
|
|
59
|
+
/**
|
|
60
|
+
* Name of the variable that contains the last result
|
|
61
|
+
* @type {String}
|
|
62
62
|
*/
|
|
63
63
|
var lastResultVariableName = registeredTerms.ANS.value;
|
|
64
64
|
|
|
65
|
-
/**
|
|
66
|
-
* Regex that matches the prefixed function operators
|
|
67
|
-
* @type {RegExp}
|
|
65
|
+
/**
|
|
66
|
+
* Regex that matches the prefixed function operators
|
|
67
|
+
* @type {RegExp}
|
|
68
68
|
*/
|
|
69
69
|
var rePrefixedTerm = /^@[a-zA-Z_]\w*$/;
|
|
70
70
|
|
|
71
|
-
/**
|
|
72
|
-
* The internal namespace for built-in events listeners
|
|
73
|
-
* @type {String}
|
|
71
|
+
/**
|
|
72
|
+
* The internal namespace for built-in events listeners
|
|
73
|
+
* @type {String}
|
|
74
74
|
*/
|
|
75
75
|
var ns = 'calculator';
|
|
76
76
|
|
|
77
|
-
/**
|
|
78
|
-
* Build the basic UI for a calculator
|
|
79
|
-
* @param {jQuery|HTMLElement|String} $container
|
|
80
|
-
* @param {Function[]} pluginFactories
|
|
81
|
-
* @param {Object} [config]
|
|
82
|
-
* @param {String} [config.expression=''] - The initial expression
|
|
83
|
-
* @param {Number} [config.position=0] - The initial position in the expression
|
|
84
|
-
* @param {Object} [config.maths] - Optional config for the maths evaluator (@see util/mathsEvaluator)
|
|
85
|
-
* @param {Object} [config.plugins] - Optional config for each plugins
|
|
86
|
-
* @returns {calculator}
|
|
77
|
+
/**
|
|
78
|
+
* Build the basic UI for a calculator
|
|
79
|
+
* @param {jQuery|HTMLElement|String} $container
|
|
80
|
+
* @param {Function[]} pluginFactories
|
|
81
|
+
* @param {Object} [config]
|
|
82
|
+
* @param {String} [config.expression=''] - The initial expression
|
|
83
|
+
* @param {Number} [config.position=0] - The initial position in the expression
|
|
84
|
+
* @param {Object} [config.maths] - Optional config for the maths evaluator (@see util/mathsEvaluator)
|
|
85
|
+
* @param {Object} [config.plugins] - Optional config for each plugins
|
|
86
|
+
* @returns {calculator}
|
|
87
87
|
*/
|
|
88
88
|
function calculatorBoardFactory($container, pluginFactories, config) {
|
|
89
|
-
/**
|
|
90
|
-
* Maths expression parser.
|
|
91
|
-
* @type {Function}
|
|
89
|
+
/**
|
|
90
|
+
* Maths expression parser.
|
|
91
|
+
* @type {Function}
|
|
92
92
|
*/
|
|
93
93
|
var mathsEvaluator;
|
|
94
94
|
|
|
95
|
-
/**
|
|
96
|
-
* Keep the area broker instance
|
|
97
|
-
* @see ui/maths/calculator/areaBroker
|
|
95
|
+
/**
|
|
96
|
+
* Keep the area broker instance
|
|
97
|
+
* @see ui/maths/calculator/areaBroker
|
|
98
98
|
*/
|
|
99
99
|
var areaBroker;
|
|
100
100
|
|
|
101
|
-
/**
|
|
102
|
-
* @type {Object} the registered plugins
|
|
101
|
+
/**
|
|
102
|
+
* @type {Object} the registered plugins
|
|
103
103
|
*/
|
|
104
104
|
var plugins = {};
|
|
105
105
|
|
|
106
|
-
/**
|
|
107
|
-
* The current expression
|
|
108
|
-
* @type {String}
|
|
106
|
+
/**
|
|
107
|
+
* The current expression
|
|
108
|
+
* @type {String}
|
|
109
109
|
*/
|
|
110
110
|
var expression = '';
|
|
111
111
|
|
|
112
|
-
/**
|
|
113
|
-
* A list of variables that can be used in the expression
|
|
114
|
-
* @type {Map}
|
|
112
|
+
/**
|
|
113
|
+
* A list of variables that can be used in the expression
|
|
114
|
+
* @type {Map}
|
|
115
115
|
*/
|
|
116
116
|
var variables = new collections.Map();
|
|
117
117
|
|
|
118
|
-
/**
|
|
119
|
-
* A list of registered commands that can be used inside the calculator
|
|
120
|
-
* @type {Map}
|
|
118
|
+
/**
|
|
119
|
+
* A list of registered commands that can be used inside the calculator
|
|
120
|
+
* @type {Map}
|
|
121
121
|
*/
|
|
122
122
|
var commands = new collections.Map();
|
|
123
123
|
|
|
124
|
-
/**
|
|
125
|
-
* The current position in the current expression (i.e. the position of the caret)
|
|
126
|
-
* @type {Number}
|
|
124
|
+
/**
|
|
125
|
+
* The current position in the current expression (i.e. the position of the caret)
|
|
126
|
+
* @type {Number}
|
|
127
127
|
*/
|
|
128
128
|
var position = 0;
|
|
129
129
|
|
|
130
|
-
/**
|
|
131
|
-
* The tokenizer utilized to split down the expression
|
|
132
|
-
* @type {calculatorTokenizer}
|
|
130
|
+
/**
|
|
131
|
+
* The tokenizer utilized to split down the expression
|
|
132
|
+
* @type {calculatorTokenizer}
|
|
133
133
|
*/
|
|
134
134
|
var tokenizer = tokenizerFactory();
|
|
135
135
|
|
|
136
|
-
/**
|
|
137
|
-
* The list of tokens extracted from the expression
|
|
138
|
-
* @type {Array|null}
|
|
136
|
+
/**
|
|
137
|
+
* The list of tokens extracted from the expression
|
|
138
|
+
* @type {Array|null}
|
|
139
139
|
*/
|
|
140
140
|
var tokens = null;
|
|
141
141
|
|
|
142
|
-
/**
|
|
143
|
-
*
|
|
144
|
-
* @type {Object}
|
|
142
|
+
/**
|
|
143
|
+
*
|
|
144
|
+
* @type {Object}
|
|
145
145
|
*/
|
|
146
146
|
var calculatorApi = {
|
|
147
|
-
/**
|
|
148
|
-
* Returns the current expression
|
|
149
|
-
* @returns {String}
|
|
147
|
+
/**
|
|
148
|
+
* Returns the current expression
|
|
149
|
+
* @returns {String}
|
|
150
150
|
*/
|
|
151
151
|
getExpression: function getExpression() {
|
|
152
152
|
return expression;
|
|
153
153
|
},
|
|
154
|
-
/**
|
|
155
|
-
* Changes the current expression
|
|
156
|
-
* @param {String} expr
|
|
157
|
-
* @returns {calculator}
|
|
158
|
-
* @fires expressionchange after the expression has been changed
|
|
154
|
+
/**
|
|
155
|
+
* Changes the current expression
|
|
156
|
+
* @param {String} expr
|
|
157
|
+
* @returns {calculator}
|
|
158
|
+
* @fires expressionchange after the expression has been changed
|
|
159
159
|
*/
|
|
160
160
|
setExpression: function setExpression(expr) {
|
|
161
161
|
expression = String(expr || '');
|
|
162
162
|
tokens = null;
|
|
163
|
-
/**
|
|
164
|
-
* @event expressionchange
|
|
165
|
-
* @param {String} expression
|
|
163
|
+
/**
|
|
164
|
+
* @event expressionchange
|
|
165
|
+
* @param {String} expression
|
|
166
166
|
*/
|
|
167
167
|
this.trigger('expressionchange', expression);
|
|
168
168
|
return this;
|
|
169
169
|
},
|
|
170
|
-
/**
|
|
171
|
-
* Gets the current position inside the expression
|
|
172
|
-
* @returns {Number}
|
|
170
|
+
/**
|
|
171
|
+
* Gets the current position inside the expression
|
|
172
|
+
* @returns {Number}
|
|
173
173
|
*/
|
|
174
174
|
getPosition: function getPosition() {
|
|
175
175
|
return position;
|
|
176
176
|
},
|
|
177
|
-
/**
|
|
178
|
-
* Sets the current position inside the expression
|
|
179
|
-
* @param {Number|String} pos
|
|
180
|
-
* @returns {calculator}
|
|
181
|
-
* @fires positionchange after the position has been changed
|
|
177
|
+
/**
|
|
178
|
+
* Sets the current position inside the expression
|
|
179
|
+
* @param {Number|String} pos
|
|
180
|
+
* @returns {calculator}
|
|
181
|
+
* @fires positionchange after the position has been changed
|
|
182
182
|
*/
|
|
183
183
|
setPosition: function setPosition(pos) {
|
|
184
184
|
position = Math.max(0, Math.min(parseInt(pos, 10) || 0, expression.length));
|
|
185
|
-
/**
|
|
186
|
-
* @event positionchange
|
|
187
|
-
* @param {Number} position
|
|
185
|
+
/**
|
|
186
|
+
* @event positionchange
|
|
187
|
+
* @param {Number} position
|
|
188
188
|
*/
|
|
189
189
|
this.trigger('positionchange', position);
|
|
190
190
|
return this;
|
|
191
191
|
},
|
|
192
|
-
/**
|
|
193
|
-
* Gets the tokens from the current expression
|
|
194
|
-
* @returns {token[]}
|
|
192
|
+
/**
|
|
193
|
+
* Gets the tokens from the current expression
|
|
194
|
+
* @returns {token[]}
|
|
195
195
|
*/
|
|
196
196
|
getTokens: function getTokens() {
|
|
197
197
|
if (tokens === null) {
|
|
@@ -199,18 +199,18 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
199
199
|
}
|
|
200
200
|
return tokens;
|
|
201
201
|
},
|
|
202
|
-
/**
|
|
203
|
-
* Gets the token at the current position from the current expression
|
|
204
|
-
* @returns {token|null} Returns the token at the current position, or null if none
|
|
202
|
+
/**
|
|
203
|
+
* Gets the token at the current position from the current expression
|
|
204
|
+
* @returns {token|null} Returns the token at the current position, or null if none
|
|
205
205
|
*/
|
|
206
206
|
getToken: function getToken() {
|
|
207
207
|
var tokensList = this.getTokens();
|
|
208
208
|
var index = this.getTokenIndex();
|
|
209
209
|
return tokensList[index] || null;
|
|
210
210
|
},
|
|
211
|
-
/**
|
|
212
|
-
* Gets token index from the current position in the expression.
|
|
213
|
-
* @returns {Number} Returns the index of the token at the current position.
|
|
211
|
+
/**
|
|
212
|
+
* Gets token index from the current position in the expression.
|
|
213
|
+
* @returns {Number} Returns the index of the token at the current position.
|
|
214
214
|
*/
|
|
215
215
|
getTokenIndex: function getTokenIndex() {
|
|
216
216
|
var index = 0;
|
|
@@ -221,35 +221,35 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
221
221
|
});
|
|
222
222
|
return index;
|
|
223
223
|
},
|
|
224
|
-
/**
|
|
225
|
-
* Gets access to the tokenizer
|
|
226
|
-
* @returns {calculatorTokenizer}
|
|
224
|
+
/**
|
|
225
|
+
* Gets access to the tokenizer
|
|
226
|
+
* @returns {calculatorTokenizer}
|
|
227
227
|
*/
|
|
228
228
|
getTokenizer: function getTokenizer() {
|
|
229
229
|
return tokenizer;
|
|
230
230
|
},
|
|
231
|
-
/**
|
|
232
|
-
* Gets a variable defined for the expression.
|
|
233
|
-
* @param {String} name - The variable name
|
|
234
|
-
* @returns {mathsExpression} The value. Can be another expression.
|
|
231
|
+
/**
|
|
232
|
+
* Gets a variable defined for the expression.
|
|
233
|
+
* @param {String} name - The variable name
|
|
234
|
+
* @returns {mathsExpression} The value. Can be another expression.
|
|
235
235
|
*/
|
|
236
236
|
getVariable: function getVariable(name) {
|
|
237
237
|
return variables.get(name);
|
|
238
238
|
},
|
|
239
|
-
/**
|
|
240
|
-
* Checks if a variable is registered
|
|
241
|
-
* @param {String} name
|
|
242
|
-
* @returns {Boolean}
|
|
239
|
+
/**
|
|
240
|
+
* Checks if a variable is registered
|
|
241
|
+
* @param {String} name
|
|
242
|
+
* @returns {Boolean}
|
|
243
243
|
*/
|
|
244
244
|
hasVariable: function hasVariable(name) {
|
|
245
245
|
return variables.has(name);
|
|
246
246
|
},
|
|
247
|
-
/**
|
|
248
|
-
* Sets a variable that can be used by the expression.
|
|
249
|
-
* @param {String} name - The variable name
|
|
250
|
-
* @param {String|Number|mathsExpression} value - The value. Can be another expression.
|
|
251
|
-
* @returns {calculator}
|
|
252
|
-
* @fires variableadd after the variable has been set
|
|
247
|
+
/**
|
|
248
|
+
* Sets a variable that can be used by the expression.
|
|
249
|
+
* @param {String} name - The variable name
|
|
250
|
+
* @param {String|Number|mathsExpression} value - The value. Can be another expression.
|
|
251
|
+
* @returns {calculator}
|
|
252
|
+
* @fires variableadd after the variable has been set
|
|
253
253
|
*/
|
|
254
254
|
setVariable: function setVariable(name, value) {
|
|
255
255
|
var errValue;
|
|
@@ -261,32 +261,32 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
261
261
|
value.expression = errValue;
|
|
262
262
|
}
|
|
263
263
|
variables.set(name, value);
|
|
264
|
-
/**
|
|
265
|
-
* @event variableadd
|
|
266
|
-
* @param {String} name
|
|
267
|
-
* @param {String} value
|
|
264
|
+
/**
|
|
265
|
+
* @event variableadd
|
|
266
|
+
* @param {String} name
|
|
267
|
+
* @param {String} value
|
|
268
268
|
*/
|
|
269
269
|
this.trigger('variableadd', name, value);
|
|
270
270
|
return this;
|
|
271
271
|
},
|
|
272
|
-
/**
|
|
273
|
-
* Deletes a variable defined for the expression.
|
|
274
|
-
* @param {String} name - The variable name
|
|
275
|
-
* @returns {calculator}
|
|
276
|
-
* @fires variabledelete after the variable has been deleted
|
|
272
|
+
/**
|
|
273
|
+
* Deletes a variable defined for the expression.
|
|
274
|
+
* @param {String} name - The variable name
|
|
275
|
+
* @returns {calculator}
|
|
276
|
+
* @fires variabledelete after the variable has been deleted
|
|
277
277
|
*/
|
|
278
278
|
deleteVariable: function deleteVariable(name) {
|
|
279
279
|
variables.delete(name);
|
|
280
|
-
/**
|
|
281
|
-
* @event variabledelete
|
|
282
|
-
* @param {String} name
|
|
280
|
+
/**
|
|
281
|
+
* @event variabledelete
|
|
282
|
+
* @param {String} name
|
|
283
283
|
*/
|
|
284
284
|
this.trigger('variabledelete', name);
|
|
285
285
|
return this;
|
|
286
286
|
},
|
|
287
|
-
/**
|
|
288
|
-
* Gets the list of variables defined for the expression.
|
|
289
|
-
* @returns {Object} The list of defined variables.
|
|
287
|
+
/**
|
|
288
|
+
* Gets the list of variables defined for the expression.
|
|
289
|
+
* @returns {Object} The list of defined variables.
|
|
290
290
|
*/
|
|
291
291
|
getVariables: function getVariables() {
|
|
292
292
|
var defs = {};
|
|
@@ -295,11 +295,11 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
295
295
|
});
|
|
296
296
|
return defs;
|
|
297
297
|
},
|
|
298
|
-
/**
|
|
299
|
-
* Sets a list of variables that can be used by the expression.
|
|
300
|
-
* @param {Object} defs - A list variables to set.
|
|
301
|
-
* @returns {calculator}
|
|
302
|
-
* @fires variableadd after each variable has been set
|
|
298
|
+
/**
|
|
299
|
+
* Sets a list of variables that can be used by the expression.
|
|
300
|
+
* @param {Object} defs - A list variables to set.
|
|
301
|
+
* @returns {calculator}
|
|
302
|
+
* @fires variableadd after each variable has been set
|
|
303
303
|
*/
|
|
304
304
|
setVariables: function setVariables(defs) {
|
|
305
305
|
var self = this;
|
|
@@ -308,25 +308,25 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
308
308
|
});
|
|
309
309
|
return this;
|
|
310
310
|
},
|
|
311
|
-
/**
|
|
312
|
-
* Deletes all variables defined for the expression.
|
|
313
|
-
* @returns {calculator}
|
|
314
|
-
* @fires variabledelete after the variables has been deleted
|
|
311
|
+
/**
|
|
312
|
+
* Deletes all variables defined for the expression.
|
|
313
|
+
* @returns {calculator}
|
|
314
|
+
* @fires variabledelete after the variables has been deleted
|
|
315
315
|
*/
|
|
316
316
|
deleteVariables: function deleteVariables() {
|
|
317
317
|
variables.clear();
|
|
318
|
-
/**
|
|
319
|
-
* @event variabledelete
|
|
320
|
-
* @param {null} name
|
|
318
|
+
/**
|
|
319
|
+
* @event variabledelete
|
|
320
|
+
* @param {null} name
|
|
321
321
|
*/
|
|
322
322
|
this.trigger('variabledelete', null);
|
|
323
323
|
this.setLastResult('0');
|
|
324
324
|
return this;
|
|
325
325
|
},
|
|
326
|
-
/**
|
|
327
|
-
* Sets the value of the last result
|
|
328
|
-
* @param {String|Number|mathsExpression} [result='0']
|
|
329
|
-
* @returns {calculator}
|
|
326
|
+
/**
|
|
327
|
+
* Sets the value of the last result
|
|
328
|
+
* @param {String|Number|mathsExpression} [result='0']
|
|
329
|
+
* @returns {calculator}
|
|
330
330
|
*/
|
|
331
331
|
setLastResult: function setLastResult(result) {
|
|
332
332
|
if (!result || expressionHelper.containsError(result)) {
|
|
@@ -335,20 +335,20 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
335
335
|
this.setVariable(lastResultVariableName, result);
|
|
336
336
|
return this;
|
|
337
337
|
},
|
|
338
|
-
/**
|
|
339
|
-
* Gets the value of the last result
|
|
340
|
-
* @returns {mathsExpression}
|
|
338
|
+
/**
|
|
339
|
+
* Gets the value of the last result
|
|
340
|
+
* @returns {mathsExpression}
|
|
341
341
|
*/
|
|
342
342
|
getLastResult: function getLastResult() {
|
|
343
343
|
return this.getVariable(lastResultVariableName);
|
|
344
344
|
},
|
|
345
|
-
/**
|
|
346
|
-
* Registers a command
|
|
347
|
-
* @param {String} name
|
|
348
|
-
* @param {String} [label]
|
|
349
|
-
* @param {String} [description]
|
|
350
|
-
* @returns {calculator}
|
|
351
|
-
* @fires commandadd after the command has been set
|
|
345
|
+
/**
|
|
346
|
+
* Registers a command
|
|
347
|
+
* @param {String} name
|
|
348
|
+
* @param {String} [label]
|
|
349
|
+
* @param {String} [description]
|
|
350
|
+
* @returns {calculator}
|
|
351
|
+
* @fires commandadd after the command has been set
|
|
352
352
|
*/
|
|
353
353
|
setCommand: function setCommand(name, label, description) {
|
|
354
354
|
commands.set(name, {
|
|
@@ -356,23 +356,23 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
356
356
|
label: label,
|
|
357
357
|
description: description
|
|
358
358
|
});
|
|
359
|
-
/**
|
|
360
|
-
* @event commandadd
|
|
361
|
-
* @param {String} name
|
|
359
|
+
/**
|
|
360
|
+
* @event commandadd
|
|
361
|
+
* @param {String} name
|
|
362
362
|
*/
|
|
363
363
|
this.trigger('commandadd', name);
|
|
364
364
|
return this;
|
|
365
365
|
},
|
|
366
|
-
/**
|
|
367
|
-
* Gets the definition of a registered command
|
|
368
|
-
* @returns {Object} The registered command
|
|
366
|
+
/**
|
|
367
|
+
* Gets the definition of a registered command
|
|
368
|
+
* @returns {Object} The registered command
|
|
369
369
|
*/
|
|
370
370
|
getCommand: function getCommand(name) {
|
|
371
371
|
return commands.get(name);
|
|
372
372
|
},
|
|
373
|
-
/**
|
|
374
|
-
* Gets the list of registered commands
|
|
375
|
-
* @returns {Object} The list of registered commands
|
|
373
|
+
/**
|
|
374
|
+
* Gets the list of registered commands
|
|
375
|
+
* @returns {Object} The list of registered commands
|
|
376
376
|
*/
|
|
377
377
|
getCommands: function getCommands() {
|
|
378
378
|
var defs = {};
|
|
@@ -381,37 +381,37 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
381
381
|
});
|
|
382
382
|
return defs;
|
|
383
383
|
},
|
|
384
|
-
/**
|
|
385
|
-
* Checks if a command is registered
|
|
386
|
-
* @param {String} name
|
|
387
|
-
* @returns {Boolean}
|
|
384
|
+
/**
|
|
385
|
+
* Checks if a command is registered
|
|
386
|
+
* @param {String} name
|
|
387
|
+
* @returns {Boolean}
|
|
388
388
|
*/
|
|
389
389
|
hasCommand: function hasCommand(name) {
|
|
390
390
|
return commands.has(name);
|
|
391
391
|
},
|
|
392
|
-
/**
|
|
393
|
-
* Delete a registered command
|
|
394
|
-
* @param {String} name
|
|
395
|
-
* @returns {calculator}
|
|
396
|
-
* @fires commanddelete after the command has been deleted
|
|
392
|
+
/**
|
|
393
|
+
* Delete a registered command
|
|
394
|
+
* @param {String} name
|
|
395
|
+
* @returns {calculator}
|
|
396
|
+
* @fires commanddelete after the command has been deleted
|
|
397
397
|
*/
|
|
398
398
|
deleteCommand: function deleteCommand(name) {
|
|
399
399
|
commands.delete(name);
|
|
400
|
-
/**
|
|
401
|
-
* @event commanddelete
|
|
402
|
-
* @param {String} name
|
|
400
|
+
/**
|
|
401
|
+
* @event commanddelete
|
|
402
|
+
* @param {String} name
|
|
403
403
|
*/
|
|
404
404
|
this.trigger('commanddelete', name);
|
|
405
405
|
return this;
|
|
406
406
|
},
|
|
407
|
-
/**
|
|
408
|
-
* Inserts a term in the expression at the current position
|
|
409
|
-
* @param {String} name - The name of the term to insert
|
|
410
|
-
* @param {Object} term - The definition of the term to insert
|
|
411
|
-
* @returns {calculator}
|
|
412
|
-
* @fires termerror if the term to add is invalid
|
|
413
|
-
* @fires termadd when the term has been added
|
|
414
|
-
* @fires termadd-<name> when the term has been added
|
|
407
|
+
/**
|
|
408
|
+
* Inserts a term in the expression at the current position
|
|
409
|
+
* @param {String} name - The name of the term to insert
|
|
410
|
+
* @param {Object} term - The definition of the term to insert
|
|
411
|
+
* @returns {calculator}
|
|
412
|
+
* @fires termerror if the term to add is invalid
|
|
413
|
+
* @fires termadd when the term has been added
|
|
414
|
+
* @fires termadd-<name> when the term has been added
|
|
415
415
|
*/
|
|
416
416
|
addTerm: function addTerm(name, term) {
|
|
417
417
|
var tokensList = this.getTokens();
|
|
@@ -425,9 +425,9 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
425
425
|
return tokensHelper.isIdentifier(token) || isIdentifier && !tokensHelper.isSeparator(token);
|
|
426
426
|
}
|
|
427
427
|
if (!_.isPlainObject(term) || 'undefined' === typeof term.value) {
|
|
428
|
-
/**
|
|
429
|
-
* @event termerror
|
|
430
|
-
* @param {TypeError} err
|
|
428
|
+
/**
|
|
429
|
+
* @event termerror
|
|
430
|
+
* @param {TypeError} err
|
|
431
431
|
*/
|
|
432
432
|
return this.trigger('termerror', new TypeError('Invalid term: ' + name));
|
|
433
433
|
}
|
|
@@ -457,26 +457,26 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
457
457
|
this.insert(value);
|
|
458
458
|
}
|
|
459
459
|
|
|
460
|
-
/**
|
|
461
|
-
* @event termadd
|
|
462
|
-
* @param {String} name - The name of the added term
|
|
463
|
-
* @param {Object} term - The descriptor of the added term
|
|
460
|
+
/**
|
|
461
|
+
* @event termadd
|
|
462
|
+
* @param {String} name - The name of the added term
|
|
463
|
+
* @param {Object} term - The descriptor of the added term
|
|
464
464
|
*/
|
|
465
465
|
this.trigger('termadd', name, term);
|
|
466
466
|
|
|
467
|
-
/**
|
|
468
|
-
* @event termadd-<name>
|
|
469
|
-
* @param {Object} term - The descriptor of the added term
|
|
467
|
+
/**
|
|
468
|
+
* @event termadd-<name>
|
|
469
|
+
* @param {Object} term - The descriptor of the added term
|
|
470
470
|
*/
|
|
471
471
|
this.trigger('termadd-' + name, term);
|
|
472
472
|
return this;
|
|
473
473
|
},
|
|
474
|
-
/**
|
|
475
|
-
* Inserts a term in the expression at the current position
|
|
476
|
-
* @param {String} name - The name of the term to insert
|
|
477
|
-
* @returns {calculator}
|
|
478
|
-
* @fires termerror if the term to add is invalid
|
|
479
|
-
* @fires termadd when the term has been added
|
|
474
|
+
/**
|
|
475
|
+
* Inserts a term in the expression at the current position
|
|
476
|
+
* @param {String} name - The name of the term to insert
|
|
477
|
+
* @returns {calculator}
|
|
478
|
+
* @fires termerror if the term to add is invalid
|
|
479
|
+
* @fires termadd when the term has been added
|
|
480
480
|
*/
|
|
481
481
|
useTerm: function useTerm(name) {
|
|
482
482
|
var term;
|
|
@@ -488,21 +488,21 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
488
488
|
term = registeredTerms[name];
|
|
489
489
|
}
|
|
490
490
|
if ('undefined' === typeof term) {
|
|
491
|
-
/**
|
|
492
|
-
* @event termerror
|
|
493
|
-
* @param {TypeError} err
|
|
491
|
+
/**
|
|
492
|
+
* @event termerror
|
|
493
|
+
* @param {TypeError} err
|
|
494
494
|
*/
|
|
495
495
|
return this.trigger('termerror', new TypeError('Invalid term: ' + name));
|
|
496
496
|
}
|
|
497
497
|
return this.addTerm(name, term);
|
|
498
498
|
},
|
|
499
|
-
/**
|
|
500
|
-
* Inserts a list of terms in the expression at the current position
|
|
501
|
-
* @param {String|String[]} names - The names of the terms to insert.
|
|
502
|
-
* Could be either an array of names or a list separated by spaces.
|
|
503
|
-
* @returns {calculator}
|
|
504
|
-
* @fires termerror if a term to add is invalid
|
|
505
|
-
* @fires termadd when a term has been added
|
|
499
|
+
/**
|
|
500
|
+
* Inserts a list of terms in the expression at the current position
|
|
501
|
+
* @param {String|String[]} names - The names of the terms to insert.
|
|
502
|
+
* Could be either an array of names or a list separated by spaces.
|
|
503
|
+
* @returns {calculator}
|
|
504
|
+
* @fires termerror if a term to add is invalid
|
|
505
|
+
* @fires termadd when a term has been added
|
|
506
506
|
*/
|
|
507
507
|
useTerms: function useTerms(names) {
|
|
508
508
|
if ('string' === typeof names) {
|
|
@@ -511,18 +511,18 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
511
511
|
_.forEach(names, this.useTerm.bind(this));
|
|
512
512
|
return this;
|
|
513
513
|
},
|
|
514
|
-
/**
|
|
515
|
-
* Inserts a variable as a term in the expression at the current position
|
|
516
|
-
* @param {String} name - The name of the variable to insert
|
|
517
|
-
* @returns {calculator}
|
|
518
|
-
* @fires termerror if the term to add is invalid
|
|
519
|
-
* @fires termadd when the term has been added
|
|
514
|
+
/**
|
|
515
|
+
* Inserts a variable as a term in the expression at the current position
|
|
516
|
+
* @param {String} name - The name of the variable to insert
|
|
517
|
+
* @returns {calculator}
|
|
518
|
+
* @fires termerror if the term to add is invalid
|
|
519
|
+
* @fires termadd when the term has been added
|
|
520
520
|
*/
|
|
521
521
|
useVariable: function useVariable(name) {
|
|
522
522
|
if (!variables.has(name)) {
|
|
523
|
-
/**
|
|
524
|
-
* @event termerror
|
|
525
|
-
* @param {TypeError} err
|
|
523
|
+
/**
|
|
524
|
+
* @event termerror
|
|
525
|
+
* @param {TypeError} err
|
|
526
526
|
*/
|
|
527
527
|
return this.trigger('termerror', new TypeError('Invalid variable: ' + name));
|
|
528
528
|
}
|
|
@@ -533,96 +533,96 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
533
533
|
description: __('Variable %s', name)
|
|
534
534
|
});
|
|
535
535
|
},
|
|
536
|
-
/**
|
|
537
|
-
* Calls a command
|
|
538
|
-
* @param {String} name - The name of the called command
|
|
539
|
-
* @param {*} ... - additional params for the command
|
|
540
|
-
* @returns {calculator}
|
|
541
|
-
* @fires command with the name and the parameters of the command
|
|
542
|
-
* @fires command-<name> with the parameters of the command
|
|
543
|
-
* @fires commanderror if the command is invalid
|
|
536
|
+
/**
|
|
537
|
+
* Calls a command
|
|
538
|
+
* @param {String} name - The name of the called command
|
|
539
|
+
* @param {*} ... - additional params for the command
|
|
540
|
+
* @returns {calculator}
|
|
541
|
+
* @fires command with the name and the parameters of the command
|
|
542
|
+
* @fires command-<name> with the parameters of the command
|
|
543
|
+
* @fires commanderror if the command is invalid
|
|
544
544
|
*/
|
|
545
545
|
useCommand: function useCommand(name) {
|
|
546
546
|
if (!commands.has(name)) {
|
|
547
|
-
/**
|
|
548
|
-
* @event commanderror
|
|
549
|
-
* @param {TypeError} err
|
|
547
|
+
/**
|
|
548
|
+
* @event commanderror
|
|
549
|
+
* @param {TypeError} err
|
|
550
550
|
*/
|
|
551
551
|
return this.trigger('commanderror', new TypeError('Invalid command: ' + name));
|
|
552
552
|
}
|
|
553
553
|
|
|
554
|
-
/**
|
|
555
|
-
* @event command
|
|
556
|
-
* @param {String} name - The name of the called command
|
|
557
|
-
* @param {*} ... - additional params for the command
|
|
554
|
+
/**
|
|
555
|
+
* @event command
|
|
556
|
+
* @param {String} name - The name of the called command
|
|
557
|
+
* @param {*} ... - additional params for the command
|
|
558
558
|
*/
|
|
559
559
|
this.trigger.apply(this, ['command'].concat([].slice.call(arguments)));
|
|
560
560
|
|
|
561
|
-
/**
|
|
562
|
-
* @event command-<name>
|
|
563
|
-
* @param {*} ... - additional params for the command
|
|
561
|
+
/**
|
|
562
|
+
* @event command-<name>
|
|
563
|
+
* @param {*} ... - additional params for the command
|
|
564
564
|
*/
|
|
565
565
|
this.trigger.apply(this, ['command-' + name].concat([].slice.call(arguments, 1)));
|
|
566
566
|
return this;
|
|
567
567
|
},
|
|
568
|
-
/**
|
|
569
|
-
* Replaces the expression and move the cursor at the end.
|
|
570
|
-
* @param {String} newExpression - The new expression to set
|
|
571
|
-
* @param {Number|String} [newPosition=newExpression.length] - The new position to set
|
|
572
|
-
* @returns {calculator}
|
|
573
|
-
* @fires replace after the expression has been replaced
|
|
568
|
+
/**
|
|
569
|
+
* Replaces the expression and move the cursor at the end.
|
|
570
|
+
* @param {String} newExpression - The new expression to set
|
|
571
|
+
* @param {Number|String} [newPosition=newExpression.length] - The new position to set
|
|
572
|
+
* @returns {calculator}
|
|
573
|
+
* @fires replace after the expression has been replaced
|
|
574
574
|
*/
|
|
575
575
|
replace: function replace(newExpression, newPosition) {
|
|
576
576
|
var oldExpression = expression;
|
|
577
577
|
var oldPosition = position;
|
|
578
578
|
this.setExpression(newExpression).setPosition('undefined' !== typeof newPosition ? newPosition : expression.length);
|
|
579
579
|
|
|
580
|
-
/**
|
|
581
|
-
* @event replace
|
|
582
|
-
* @param {String} expression - the replaced expression
|
|
583
|
-
* @param {Number} position - the replaced position
|
|
580
|
+
/**
|
|
581
|
+
* @event replace
|
|
582
|
+
* @param {String} expression - the replaced expression
|
|
583
|
+
* @param {Number} position - the replaced position
|
|
584
584
|
*/
|
|
585
585
|
this.trigger('replace', oldExpression, oldPosition);
|
|
586
586
|
return this;
|
|
587
587
|
},
|
|
588
|
-
/**
|
|
589
|
-
* Inserts a sub-expression in the current expression and move the cursor.
|
|
590
|
-
* @param {String} subExpression - The sub-expression to insert
|
|
591
|
-
* @returns {calculator}
|
|
592
|
-
* @fires insert after the expression has been inserted
|
|
588
|
+
/**
|
|
589
|
+
* Inserts a sub-expression in the current expression and move the cursor.
|
|
590
|
+
* @param {String} subExpression - The sub-expression to insert
|
|
591
|
+
* @returns {calculator}
|
|
592
|
+
* @fires insert after the expression has been inserted
|
|
593
593
|
*/
|
|
594
594
|
insert: function insert(subExpression) {
|
|
595
595
|
var oldExpression = expression;
|
|
596
596
|
var oldPosition = position;
|
|
597
597
|
this.setExpression(expression.substr(0, position) + subExpression + expression.substr(position)).setPosition(position + subExpression.length);
|
|
598
598
|
|
|
599
|
-
/**
|
|
600
|
-
* @event insert
|
|
601
|
-
* @param {String} expression - the replaced expression
|
|
602
|
-
* @param {Number} position - the replaced position
|
|
599
|
+
/**
|
|
600
|
+
* @event insert
|
|
601
|
+
* @param {String} expression - the replaced expression
|
|
602
|
+
* @param {Number} position - the replaced position
|
|
603
603
|
*/
|
|
604
604
|
this.trigger('insert', oldExpression, oldPosition);
|
|
605
605
|
return this;
|
|
606
606
|
},
|
|
607
|
-
/**
|
|
608
|
-
* Clears the expression
|
|
609
|
-
* @returns {calculator}
|
|
610
|
-
* @fires clear after the expression has been cleared
|
|
607
|
+
/**
|
|
608
|
+
* Clears the expression
|
|
609
|
+
* @returns {calculator}
|
|
610
|
+
* @fires clear after the expression has been cleared
|
|
611
611
|
*/
|
|
612
612
|
clear: function clear() {
|
|
613
613
|
this.setExpression('').setPosition(0);
|
|
614
614
|
|
|
615
|
-
/**
|
|
616
|
-
* @event clear
|
|
615
|
+
/**
|
|
616
|
+
* @event clear
|
|
617
617
|
*/
|
|
618
618
|
this.trigger('clear');
|
|
619
619
|
return this;
|
|
620
620
|
},
|
|
621
|
-
/**
|
|
622
|
-
* Evaluates the current expression
|
|
623
|
-
* @returns {mathsExpression|null}
|
|
624
|
-
* @fires evaluate when the expression has been evaluated
|
|
625
|
-
* @fires syntaxerror when the expression contains an error
|
|
621
|
+
/**
|
|
622
|
+
* Evaluates the current expression
|
|
623
|
+
* @returns {mathsExpression|null}
|
|
624
|
+
* @fires evaluate when the expression has been evaluated
|
|
625
|
+
* @fires syntaxerror when the expression contains an error
|
|
626
626
|
*/
|
|
627
627
|
evaluate: function evaluate() {
|
|
628
628
|
var result = null;
|
|
@@ -633,25 +633,25 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
633
633
|
result = mathsEvaluator('0');
|
|
634
634
|
}
|
|
635
635
|
|
|
636
|
-
/**
|
|
637
|
-
* @event evaluate
|
|
638
|
-
* @param {mathsExpression} result
|
|
636
|
+
/**
|
|
637
|
+
* @event evaluate
|
|
638
|
+
* @param {mathsExpression} result
|
|
639
639
|
*/
|
|
640
640
|
this.trigger('evaluate', result);
|
|
641
641
|
} catch (e) {
|
|
642
|
-
/**
|
|
643
|
-
* @event syntaxerror
|
|
644
|
-
* @param {Error} err
|
|
642
|
+
/**
|
|
643
|
+
* @event syntaxerror
|
|
644
|
+
* @param {Error} err
|
|
645
645
|
*/
|
|
646
646
|
this.trigger('syntaxerror', e);
|
|
647
647
|
}
|
|
648
648
|
return result;
|
|
649
649
|
},
|
|
650
|
-
/**
|
|
651
|
-
* Runs a method in all plugins
|
|
652
|
-
*
|
|
653
|
-
* @param {String} method - the method to run
|
|
654
|
-
* @returns {Promise} once that resolve when all plugins are done
|
|
650
|
+
/**
|
|
651
|
+
* Runs a method in all plugins
|
|
652
|
+
*
|
|
653
|
+
* @param {String} method - the method to run
|
|
654
|
+
* @returns {Promise} once that resolve when all plugins are done
|
|
655
655
|
*/
|
|
656
656
|
runPlugins: function runPlugins(method) {
|
|
657
657
|
var execStack = [];
|
|
@@ -662,47 +662,47 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
662
662
|
});
|
|
663
663
|
return Promise.all(execStack);
|
|
664
664
|
},
|
|
665
|
-
/**
|
|
666
|
-
* Gets the calculator plugins
|
|
667
|
-
* @returns {Array} the plugins
|
|
665
|
+
/**
|
|
666
|
+
* Gets the calculator plugins
|
|
667
|
+
* @returns {Array} the plugins
|
|
668
668
|
*/
|
|
669
669
|
getPlugins: function getPlugins() {
|
|
670
670
|
return _.toArray(plugins);
|
|
671
671
|
},
|
|
672
|
-
/**
|
|
673
|
-
* Gets a plugin
|
|
674
|
-
* @param {String} name - the plugin name
|
|
675
|
-
* @returns {plugin} the plugin
|
|
672
|
+
/**
|
|
673
|
+
* Gets a plugin
|
|
674
|
+
* @param {String} name - the plugin name
|
|
675
|
+
* @returns {plugin} the plugin
|
|
676
676
|
*/
|
|
677
677
|
getPlugin: function getPlugin(name) {
|
|
678
678
|
return plugins[name];
|
|
679
679
|
},
|
|
680
|
-
/**
|
|
681
|
-
* Gets access to the areaBroker
|
|
682
|
-
* @returns {areaBroker}
|
|
680
|
+
/**
|
|
681
|
+
* Gets access to the areaBroker
|
|
682
|
+
* @returns {areaBroker}
|
|
683
683
|
*/
|
|
684
684
|
getAreaBroker: function getAreaBroker() {
|
|
685
685
|
return areaBroker;
|
|
686
686
|
},
|
|
687
|
-
/**
|
|
688
|
-
* Setups the maths evaluator
|
|
689
|
-
* @returns {calculator}
|
|
687
|
+
/**
|
|
688
|
+
* Setups the maths evaluator
|
|
689
|
+
* @returns {calculator}
|
|
690
690
|
*/
|
|
691
691
|
setupMathsEvaluator: function setupMathsEvaluator() {
|
|
692
692
|
mathsEvaluator = mathsEvaluatorFactory(this.getConfig().maths);
|
|
693
693
|
return this;
|
|
694
694
|
},
|
|
695
|
-
/**
|
|
696
|
-
* Gets access to the mathsEvaluator
|
|
697
|
-
* @returns {Function}
|
|
695
|
+
/**
|
|
696
|
+
* Gets access to the mathsEvaluator
|
|
697
|
+
* @returns {Function}
|
|
698
698
|
*/
|
|
699
699
|
getMathsEvaluator: function getMathsEvaluator() {
|
|
700
700
|
return mathsEvaluator;
|
|
701
701
|
}
|
|
702
702
|
};
|
|
703
703
|
|
|
704
|
-
/**
|
|
705
|
-
* @typedef {component} calculator
|
|
704
|
+
/**
|
|
705
|
+
* @typedef {component} calculator
|
|
706
706
|
*/
|
|
707
707
|
var calculator = componentFactory(calculatorApi, defaultConfig).setTemplate(boardTpl).before('init', function () {
|
|
708
708
|
this.setupMathsEvaluator();
|
|
@@ -745,8 +745,8 @@ define(['lodash', 'i18n', 'core/collections', 'ui/component', 'ui/maths/calculat
|
|
|
745
745
|
}).then(function () {
|
|
746
746
|
return self.runPlugins('render');
|
|
747
747
|
}).then(function () {
|
|
748
|
-
/**
|
|
749
|
-
* @event ready
|
|
748
|
+
/**
|
|
749
|
+
* @event ready
|
|
750
750
|
*/
|
|
751
751
|
self.trigger('ready');
|
|
752
752
|
}).catch(function (err) {
|