@oat-sa/tao-core-ui 1.60.2 → 1.62.0
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 +23 -18
- package/dist/actionbar.js +393 -410
- package/dist/adder.js +143 -156
- package/dist/animable/absorbable/absorbable.js +208 -211
- package/dist/animable/absorbable/css/absorb.css +7 -8
- 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 +174 -174
- package/dist/areaBroker.js +59 -72
- package/dist/autocomplete/css/autocomplete.css +7 -8
- package/dist/autocomplete/css/autocomplete.css.map +1 -1
- package/dist/autocomplete.js +494 -604
- package/dist/autoscroll.js +23 -25
- package/dist/badge/badge.js +201 -199
- package/dist/badge/css/badge.css +7 -8
- 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 +286 -285
- package/dist/btngrouper.js +83 -95
- package/dist/bulkActionPopup/css/bulkActionPopup.css +7 -7
- package/dist/bulkActionPopup/css/bulkActionPopup.css.map +1 -1
- package/dist/bulkActionPopup.js +503 -503
- package/dist/button.js +300 -293
- package/dist/calculator/css/calculator.css +10 -10
- package/dist/calculator/css/calculator.css.map +1 -1
- package/dist/calculator.js +59 -72
- package/dist/cascadingComboBox.js +257 -256
- package/dist/ckeditor/ckConfigurator.js +130 -154
- package/dist/ckeditor/dtdHandler.js +305 -345
- package/dist/class/css/selector.css +7 -7
- package/dist/class/css/selector.css.map +1 -1
- package/dist/class/selector.js +437 -470
- package/dist/component/alignable.js +97 -121
- package/dist/component/containable.js +53 -58
- 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 +34 -36
- package/dist/component/placeable.js +84 -102
- package/dist/component/resizable.js +79 -89
- package/dist/component/stackable.js +21 -27
- package/dist/component/windowed.js +284 -297
- package/dist/component.js +439 -467
- package/dist/container.js +79 -98
- package/dist/contextualPopup/css/contextualPopup.css +7 -7
- package/dist/contextualPopup/css/contextualPopup.css.map +1 -1
- package/dist/contextualPopup.js +417 -436
- package/dist/dashboard/css/dashboard.css +7 -7
- package/dist/dashboard/css/dashboard.css.map +1 -1
- package/dist/dashboard.js +302 -305
- package/dist/datalist/css/datalist.css +7 -7
- package/dist/datalist/css/datalist.css.map +1 -1
- package/dist/datalist.js +783 -791
- package/dist/datatable/css/datatable.css +11 -7
- package/dist/datatable/css/datatable.css.map +1 -1
- package/dist/datatable/filterStrategy/filterStrategy.js +28 -30
- package/dist/datatable/filterStrategy/multiple.js +26 -45
- package/dist/datatable/filterStrategy/single.js +28 -40
- package/dist/datatable.js +1591 -1616
- package/dist/dateRange/css/dateRange.css +7 -7
- package/dist/dateRange/css/dateRange.css.map +1 -1
- package/dist/dateRange/dateRange.js +398 -412
- package/dist/datetime/css/picker.css +7 -7
- package/dist/datetime/css/picker.css.map +1 -1
- package/dist/datetime/picker.js +670 -703
- package/dist/deleter.js +383 -398
- package/dist/destination/css/selector.css +7 -7
- package/dist/destination/css/selector.css.map +1 -1
- package/dist/destination/selector.js +295 -293
- package/dist/dialog/alert.js +30 -32
- package/dist/dialog/confirm.js +29 -32
- package/dist/dialog/confirmDelete.js +223 -221
- package/dist/dialog.js +651 -695
- package/dist/disabler.js +108 -119
- 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 +172 -169
- package/dist/documentViewer/providers/pdfViewer/pdfjs/areaBroker.js +32 -29
- package/dist/documentViewer/providers/pdfViewer/pdfjs/findBar.js +523 -564
- package/dist/documentViewer/providers/pdfViewer/pdfjs/pageView.js +376 -393
- package/dist/documentViewer/providers/pdfViewer/pdfjs/pagesManager.js +53 -68
- package/dist/documentViewer/providers/pdfViewer/pdfjs/searchEngine.js +517 -567
- package/dist/documentViewer/providers/pdfViewer/pdfjs/textManager.js +73 -96
- package/dist/documentViewer/providers/pdfViewer/pdfjs/viewer.js +381 -392
- package/dist/documentViewer/providers/pdfViewer/pdfjs/wrapper.js +125 -152
- package/dist/documentViewer/providers/pdfViewer.js +189 -191
- package/dist/documentViewer/viewerFactory.js +76 -81
- package/dist/documentViewer.js +303 -311
- package/dist/dropdown/css/dropdown.css +7 -7
- package/dist/dropdown/css/dropdown.css.map +1 -1
- package/dist/dropdown.js +392 -412
- package/dist/durationer.js +77 -85
- package/dist/dynamicComponent/css/dynamicComponent.css +7 -7
- package/dist/dynamicComponent/css/dynamicComponent.css.map +1 -1
- package/dist/dynamicComponent.js +595 -630
- package/dist/feedback.js +365 -375
- package/dist/figure/FigureStateActive.js +246 -296
- package/dist/filesender.js +44 -54
- package/dist/filter.js +244 -240
- 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 +357 -362
- package/dist/form/form.js +703 -984
- package/dist/form/simpleForm.js +74 -77
- 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 +235 -241
- package/dist/form/validator/validator.js +181 -267
- 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 +27 -28
- package/dist/form/widget/loader.js +16 -16
- package/dist/form/widget/providers/checkBox.js +257 -264
- package/dist/form/widget/providers/comboBox.js +194 -193
- package/dist/form/widget/providers/default.js +44 -50
- package/dist/form/widget/providers/hidden.js +179 -176
- package/dist/form/widget/providers/hiddenBox.js +262 -272
- package/dist/form/widget/providers/radioBox.js +222 -223
- package/dist/form/widget/providers/textArea.js +197 -193
- package/dist/form/widget/providers/textBox.js +36 -37
- package/dist/form/widget/widget.js +480 -508
- package/dist/form.js +12 -17
- package/dist/formValidator/formValidator.js +74 -91
- package/dist/formValidator/highlighters/highlighter.js +43 -51
- package/dist/formValidator/highlighters/message.js +31 -32
- package/dist/formValidator/highlighters/tooltip.js +33 -35
- 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 +323 -331
- 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 +215 -216
- package/dist/generis/widget/checkBox/checkBox.js +227 -225
- package/dist/generis/widget/comboBox/comboBox.js +189 -183
- 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 +231 -232
- package/dist/generis/widget/loader.js +21 -23
- package/dist/generis/widget/textBox/textBox.js +178 -172
- package/dist/generis/widget/widget.js +255 -266
- package/dist/groupedComboBox.js +231 -226
- package/dist/groupvalidator.js +30 -34
- package/dist/hider.js +43 -50
- package/dist/highlighter.js +946 -1057
- package/dist/image/ImgStateActive/extractLabel.js +20 -21
- package/dist/image/ImgStateActive/helper.js +21 -25
- package/dist/image/ImgStateActive/initHelper.js +133 -162
- package/dist/image/ImgStateActive/initMediaEditor.js +72 -92
- package/dist/image/ImgStateActive/mediaSizer.js +48 -58
- package/dist/image/ImgStateActive.js +185 -215
- package/dist/incrementer.js +91 -110
- package/dist/inplacer.js +108 -132
- package/dist/interactUtils.js +56 -67
- package/dist/itemButtonList/css/item-button-list.css +23 -24
- package/dist/itemButtonList/css/item-button-list.css.map +1 -1
- package/dist/itemButtonList.js +444 -469
- package/dist/keyNavigation/navigableDomElement.js +124 -158
- package/dist/keyNavigation/navigator.js +235 -312
- package/dist/listbox/css/listbox.css +7 -7
- package/dist/listbox/css/listbox.css.map +1 -1
- package/dist/listbox.js +463 -476
- package/dist/liststyler.js +75 -76
- package/dist/loadingButton/css/button.css +7 -7
- package/dist/loadingButton/css/button.css.map +1 -1
- package/dist/loadingButton/loadingButton.js +219 -218
- package/dist/lock.js +484 -509
- package/dist/login/login.js +471 -486
- package/dist/maths/calculator/basicCalculator.js +247 -242
- package/dist/maths/calculator/calculatorComponent.js +34 -36
- package/dist/maths/calculator/core/areaBroker.js +30 -28
- package/dist/maths/calculator/core/board.js +805 -872
- package/dist/maths/calculator/core/expression.js +500 -518
- package/dist/maths/calculator/core/labels.js +240 -235
- package/dist/maths/calculator/core/plugin.js +20 -20
- package/dist/maths/calculator/core/terms.js +27 -27
- package/dist/maths/calculator/core/tokenizer.js +119 -132
- package/dist/maths/calculator/core/tokens.js +157 -168
- 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 +24 -27
- package/dist/maths/calculator/plugins/core/degrad.js +22 -30
- package/dist/maths/calculator/plugins/core/history.js +55 -67
- package/dist/maths/calculator/plugins/core/remind.js +22 -25
- package/dist/maths/calculator/plugins/core/stepNavigation.js +33 -49
- package/dist/maths/calculator/plugins/keyboard/templateKeyboard/templateKeyboard.js +255 -258
- package/dist/maths/calculator/plugins/modifiers/pow10.js +47 -52
- package/dist/maths/calculator/plugins/modifiers/sign.js +103 -130
- package/dist/maths/calculator/plugins/screen/simpleScreen/simpleScreen.js +288 -293
- package/dist/maths/calculator/pluginsLoader.js +22 -22
- package/dist/maths/calculator/scientificCalculator.js +339 -334
- package/dist/mediaEditor/mediaEditorComponent.js +244 -249
- package/dist/mediaEditor/plugins/mediaAlignment/helper.js +28 -33
- package/dist/mediaEditor/plugins/mediaAlignment/mediaAlignmentComponent.js +228 -236
- package/dist/mediaEditor/plugins/mediaAlignment/style.css +7 -7
- package/dist/mediaEditor/plugins/mediaDimension/helper.js +81 -106
- package/dist/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +597 -635
- 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 +646 -706
- package/dist/mediaplayer/players/youtube.js +393 -438
- package/dist/mediaplayer/players.js +19 -19
- package/dist/mediaplayer/support.js +66 -79
- package/dist/mediaplayer/utils/reminder.js +117 -128
- package/dist/mediaplayer/utils/timeObserver.js +106 -109
- package/dist/mediaplayer/youtubeManager.js +142 -170
- package/dist/mediaplayer.js +1484 -1774
- package/dist/mediasizer.js +633 -676
- package/dist/modal.js +137 -153
- package/dist/movableComponent.js +37 -37
- package/dist/pageSizeSelector.js +231 -224
- package/dist/pageStatus.js +43 -46
- package/dist/pagination/css/pagination.css +7 -7
- package/dist/pagination/css/pagination.css.map +1 -1
- package/dist/pagination/paginationStrategy.js +24 -25
- package/dist/pagination/providers/pages.js +281 -291
- package/dist/pagination/providers/simple.js +202 -196
- package/dist/pagination.js +49 -72
- package/dist/previewer.js +113 -138
- package/dist/progressbar.js +70 -80
- package/dist/propertySelector/css/propertySelector.css +74 -0
- package/dist/propertySelector/css/propertySelector.css.map +1 -0
- package/dist/propertySelector/propertySelector.js +489 -0
- package/dist/report.js +356 -359
- package/dist/resource/css/selector.css +7 -7
- package/dist/resource/css/selector.css.map +1 -1
- package/dist/resource/filters.js +275 -289
- package/dist/resource/list.js +1589 -1371
- package/dist/resource/selectable.js +101 -136
- package/dist/resource/selector.js +855 -914
- package/dist/resource/tree.js +1796 -1612
- package/dist/resourcemgr/css/resourcemgr.css +7 -7
- package/dist/resourcemgr/css/resourcemgr.css.map +1 -1
- package/dist/resourcemgr/fileBrowser.js +540 -587
- package/dist/resourcemgr/filePreview.js +16 -25
- package/dist/resourcemgr/fileSelector.js +520 -547
- package/dist/resourcemgr/util/updatePermissions.js +10 -18
- package/dist/resourcemgr.js +325 -332
- package/dist/scroller.js +29 -33
- package/dist/searchModal/advancedSearch.js +949 -833
- package/dist/searchModal/css/advancedSearch.css +7 -14
- package/dist/searchModal/css/advancedSearch.css.map +1 -1
- package/dist/searchModal/css/searchModal.css +28 -8
- package/dist/searchModal/css/searchModal.css.map +1 -1
- package/dist/searchModal.js +616 -335
- package/dist/selecter.js +21 -28
- package/dist/stacker.js +52 -60
- package/dist/switch/css/switch.css +7 -7
- package/dist/switch/css/switch.css.map +1 -1
- package/dist/switch/switch.js +305 -311
- package/dist/tableModel.js +39 -49
- package/dist/tabs/css/tabs.css +12 -12
- package/dist/tabs/css/tabs.css.map +1 -1
- package/dist/tabs.js +588 -639
- package/dist/taskQueue/css/taskQueue.css +7 -7
- package/dist/taskQueue/css/taskQueue.css.map +1 -1
- package/dist/taskQueue/status.js +317 -322
- package/dist/taskQueue/table.js +383 -394
- package/dist/taskQueue/taskQueue.js +19 -19
- package/dist/taskQueue/taskQueueModel.js +459 -538
- package/dist/taskQueue.js +49 -67
- 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 +45 -43
- package/dist/taskQueueButton/taskable.js +267 -272
- package/dist/taskQueueButton/treeButton.js +200 -198
- package/dist/themeLoader.js +109 -129
- package/dist/themes.js +86 -100
- package/dist/toggler.js +76 -88
- package/dist/tooltip.js +296 -311
- package/dist/tooltipster.js +17 -17
- package/dist/transformer.js +140 -169
- package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css +7 -7
- package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css.map +1 -1
- package/dist/tristateCheckboxGroup.js +319 -325
- package/dist/uploader.js +691 -724
- package/dist/validator/Report.js +1 -2
- package/dist/validator/Validator.js +6 -25
- package/dist/validator/validators.js +66 -80
- package/dist/validator.js +218 -254
- package/dist/waitForMedia.js +45 -51
- package/dist/waitingDialog/css/waitingDialog.css +7 -7
- package/dist/waitingDialog/css/waitingDialog.css.map +1 -1
- package/dist/waitingDialog/waitingDialog.js +59 -77
- package/package.json +109 -107
- package/scss/basic.scss +16 -16
- package/scss/ckeditor/skins/tao/scss/inc/_ck-icons.scss +59 -59
- package/scss/ckeditor/skins/tao/scss/inc/_tao.scss +59 -59
- package/scss/font/tao/tao.svg +234 -234
- 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 -88
- package/scss/inc/_feedback.scss +150 -150
- 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 +226 -226
- package/scss/inc/fonts/_tao-icon-def.scss +12 -12
- package/scss/inc/fonts/_tao-icon-vars.scss +240 -240
- 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 -8
- 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 -8
- package/src/autocomplete/css/autocomplete.css.map +1 -1
- package/src/autocomplete/scss/autocomplete.scss +37 -37
- package/src/autocomplete.js +1029 -1029
- package/src/autoscroll.js +57 -57
- package/src/badge/badge.js +119 -119
- package/src/badge/css/badge.css +7 -8
- 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 +736 -736
- 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 +297 -297
- package/src/css/basic.css +103 -106
- 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 +184 -184
- 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 +11 -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 -146
- 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 +222 -222
- 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 +554 -554
- package/src/feedback/feedback.tpl +7 -7
- package/src/feedback.js +295 -295
- package/src/figure/FigureStateActive.js +174 -174
- package/src/filesender.js +114 -114
- package/src/filter/template.tpl +5 -5
- package/src/filter.js +135 -135
- 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 +53 -53
- package/src/formValidator/formValidator.js +253 -253
- package/src/formValidator/highlighters/highlighter.js +102 -102
- package/src/formValidator/highlighters/message.js +70 -70
- 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 +67 -67
- 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 +132 -132
- 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 +65 -65
- 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 +1166 -1166
- 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 +319 -319
- package/src/inplacer.js +316 -316
- package/src/interactUtils.js +140 -140
- package/src/itemButtonList/css/item-button-list.css +23 -24
- 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 +282 -282
- package/src/keyNavigation/navigator.js +543 -543
- 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 +251 -251
- 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 +395 -395
- package/src/login/login.js +322 -322
- 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 +191 -191
- 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 +62 -62
- 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 +189 -189
- 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 +107 -107
- 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 +74 -0
- package/src/propertySelector/css/propertySelector.css.map +1 -0
- package/src/propertySelector/propertySelector.js +286 -0
- package/src/propertySelector/scss/propertySelector.scss +66 -0
- package/src/propertySelector/tpl/highlighted-text.tpl +1 -0
- package/src/propertySelector/tpl/property-description.tpl +13 -0
- package/src/propertySelector/tpl/property-selector.tpl +7 -0
- 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 +400 -400
- 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 +348 -348
- 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 -601
- package/src/searchModal/css/advancedSearch.css +7 -14
- package/src/searchModal/css/advancedSearch.css.map +1 -1
- package/src/searchModal/css/searchModal.css +28 -8
- package/src/searchModal/css/searchModal.css.map +1 -1
- package/src/searchModal/scss/advancedSearch.scss +171 -177
- package/src/searchModal/scss/searchModal.scss +393 -375
- package/src/searchModal/tpl/advanced-search.tpl +9 -9
- package/src/searchModal/tpl/criteria-alias.tpl +1 -0
- package/src/searchModal/tpl/criteria-class-label.tpl +1 -0
- package/src/searchModal/tpl/criteria-label.tpl +1 -0
- package/src/searchModal/tpl/highlighted-text.tpl +1 -0
- 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 -25
- package/src/searchModal/tpl/list-checkbox-criterion.tpl +17 -12
- package/src/searchModal/tpl/list-select-criterion.tpl +12 -6
- package/src/searchModal/tpl/property-select-button.tpl +1 -0
- package/src/searchModal/tpl/results-container.tpl +1 -0
- package/src/searchModal/tpl/text-criterion.tpl +11 -6
- package/src/searchModal.js +761 -496
- 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 +218 -218
- 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 +109 -109
- 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 +220 -220
- package/src/validator.js +264 -264
- 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
|
@@ -2,196 +2,178 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
2
2
|
|
|
3
3
|
_ = _ && Object.prototype.hasOwnProperty.call(_, 'default') ? _['default'] : _;
|
|
4
4
|
|
|
5
|
-
/**
|
|
6
|
-
* This program is free software; you can redistribute it and/or
|
|
7
|
-
* modify it under the terms of the GNU General Public License
|
|
8
|
-
* as published by the Free Software Foundation; under version 2
|
|
9
|
-
* of the License (non-upgradable).
|
|
10
|
-
*
|
|
11
|
-
* This program is distributed in the hope that it will be useful,
|
|
12
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
-
* GNU General Public License for more details.
|
|
15
|
-
*
|
|
16
|
-
* You should have received a copy of the GNU General Public License
|
|
17
|
-
* along with this program; if not, write to the Free Software
|
|
18
|
-
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
19
|
-
*
|
|
20
|
-
* Copyright (c) 2015 (original work) Open Assessment Technologies SA ;
|
|
21
|
-
*/
|
|
22
|
-
/**
|
|
23
|
-
* Singleton to edit the XHTML DTD and to retrieve element relationships.
|
|
24
|
-
* The DTD code itself is almost 1:1 copied from CKEDITOR
|
|
5
|
+
/**
|
|
6
|
+
* This program is free software; you can redistribute it and/or
|
|
7
|
+
* modify it under the terms of the GNU General Public License
|
|
8
|
+
* as published by the Free Software Foundation; under version 2
|
|
9
|
+
* of the License (non-upgradable).
|
|
10
|
+
*
|
|
11
|
+
* This program is distributed in the hope that it will be useful,
|
|
12
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
13
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
14
|
+
* GNU General Public License for more details.
|
|
15
|
+
*
|
|
16
|
+
* You should have received a copy of the GNU General Public License
|
|
17
|
+
* along with this program; if not, write to the Free Software
|
|
18
|
+
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|
19
|
+
*
|
|
20
|
+
* Copyright (c) 2015 (original work) Open Assessment Technologies SA ;
|
|
25
21
|
*/
|
|
26
22
|
|
|
23
|
+
/**
|
|
24
|
+
* Singleton to edit the XHTML DTD and to retrieve element relationships.
|
|
25
|
+
* The DTD code itself is almost 1:1 copied from CKEDITOR
|
|
26
|
+
*/
|
|
27
27
|
var dtdHandler = function () {
|
|
28
28
|
var dtdMode = 'html',
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Set DTD mode (qti|html)
|
|
32
|
-
*/
|
|
29
|
+
dtds = {};
|
|
33
30
|
|
|
34
|
-
|
|
31
|
+
/**
|
|
32
|
+
* Set DTD mode (qti|html)
|
|
33
|
+
*/
|
|
34
|
+
var setMode = function (mode) {
|
|
35
35
|
// for the oblivious ones such as myself:
|
|
36
36
|
if (mode.toLowerCase() === 'xhtml') {
|
|
37
37
|
mode = 'html';
|
|
38
38
|
}
|
|
39
|
-
|
|
40
39
|
if (!_.contains(['html', 'qti'], mode)) {
|
|
41
40
|
throw new Error('Unknown mode ' + mode);
|
|
42
41
|
}
|
|
43
|
-
|
|
44
42
|
dtdMode = mode;
|
|
45
43
|
return this;
|
|
46
44
|
};
|
|
47
|
-
/**
|
|
48
|
-
* Elements that are present in HTML 5 only
|
|
49
|
-
* @type {string[]}
|
|
50
|
-
*/
|
|
51
|
-
|
|
52
45
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
*
|
|
56
|
-
*
|
|
57
|
-
* @param child (string|DOM element|jQuery element)
|
|
58
|
-
* @returns {Array}
|
|
46
|
+
/**
|
|
47
|
+
* Elements that are present in HTML 5 only
|
|
48
|
+
* @type {string[]}
|
|
59
49
|
*/
|
|
50
|
+
var html5Only = ['article', 'aside', 'bdi', 'command', 'datalist', 'details', 'dialog', 'figcaption', 'figure', 'footer', 'header', 'keygen', 'main', 'mark', 'meter', 'nav', 'output', 'progress', 'rp', 'rt', 'ruby', 'section', 'summary', 'time', 'wbr', 'hgroup'];
|
|
60
51
|
|
|
61
|
-
|
|
52
|
+
/**
|
|
53
|
+
* Check in which element this element can be contained
|
|
54
|
+
*
|
|
55
|
+
* @param child (string|DOM element|jQuery element)
|
|
56
|
+
* @returns {Array}
|
|
57
|
+
*/
|
|
58
|
+
var getParentsOf = function (child) {
|
|
62
59
|
var parents = [],
|
|
63
|
-
|
|
60
|
+
element;
|
|
64
61
|
child = _normalizeElement(child);
|
|
65
|
-
|
|
66
62
|
for (element in dtds[dtdMode]) {
|
|
67
63
|
if (!dtds[dtdMode].hasOwnProperty(element)) {
|
|
68
64
|
continue;
|
|
69
65
|
}
|
|
70
|
-
|
|
71
66
|
if (element.indexOf('$') === 0) {
|
|
72
67
|
continue;
|
|
73
68
|
}
|
|
74
|
-
|
|
75
69
|
if (child in dtds[dtdMode][element]) {
|
|
76
70
|
parents.push(element);
|
|
77
71
|
}
|
|
78
72
|
}
|
|
79
|
-
|
|
80
73
|
return parents;
|
|
81
74
|
};
|
|
82
|
-
/**
|
|
83
|
-
* Get all elements parent can contain
|
|
84
|
-
*
|
|
85
|
-
* @param parent (string|DOM element|jQuery element)
|
|
86
|
-
* @returns {*}
|
|
87
|
-
*/
|
|
88
|
-
|
|
89
75
|
|
|
90
|
-
|
|
76
|
+
/**
|
|
77
|
+
* Get all elements parent can contain
|
|
78
|
+
*
|
|
79
|
+
* @param parent (string|DOM element|jQuery element)
|
|
80
|
+
* @returns {*}
|
|
81
|
+
*/
|
|
82
|
+
var getChildrenOf = function (parent) {
|
|
91
83
|
parent = _normalizeElement(parent);
|
|
92
|
-
|
|
93
84
|
if (parent in dtds[dtdMode]) {
|
|
94
85
|
return _.keys(dtds[dtdMode][parent]);
|
|
95
86
|
}
|
|
96
|
-
|
|
97
87
|
return [];
|
|
98
88
|
};
|
|
99
|
-
/**
|
|
100
|
-
* Finds whether a child can have a certain parent
|
|
101
|
-
*
|
|
102
|
-
* @param child (string|DOM element|jQuery element)
|
|
103
|
-
* @param of (string|DOM element|jQuery element)
|
|
104
|
-
* @returns {*}
|
|
105
|
-
*/
|
|
106
89
|
|
|
107
|
-
|
|
108
|
-
|
|
90
|
+
/**
|
|
91
|
+
* Finds whether a child can have a certain parent
|
|
92
|
+
*
|
|
93
|
+
* @param child (string|DOM element|jQuery element)
|
|
94
|
+
* @param of (string|DOM element|jQuery element)
|
|
95
|
+
* @returns {*}
|
|
96
|
+
*/
|
|
97
|
+
var isChildOf = function (child, of) {
|
|
109
98
|
return _.contains(getChildrenOf(of), _normalizeElement(child));
|
|
110
99
|
};
|
|
111
|
-
/**
|
|
112
|
-
* Finds whether a parent can have a certain child
|
|
113
|
-
*
|
|
114
|
-
* @param parent (string|DOM element|jQuery element)
|
|
115
|
-
* @param of (string|DOM element|jQuery element)
|
|
116
|
-
* @returns {*}
|
|
117
|
-
*/
|
|
118
100
|
|
|
119
|
-
|
|
120
|
-
|
|
101
|
+
/**
|
|
102
|
+
* Finds whether a parent can have a certain child
|
|
103
|
+
*
|
|
104
|
+
* @param parent (string|DOM element|jQuery element)
|
|
105
|
+
* @param of (string|DOM element|jQuery element)
|
|
106
|
+
* @returns {*}
|
|
107
|
+
*/
|
|
108
|
+
var isParentOf = function (parent, of) {
|
|
121
109
|
return _.contains(getParentsOf(of), _normalizeElement(parent));
|
|
122
110
|
};
|
|
123
|
-
/**
|
|
124
|
-
* Retrieve the current DTD
|
|
125
|
-
*
|
|
126
|
-
* @returns {*}
|
|
127
|
-
*/
|
|
128
111
|
|
|
129
|
-
|
|
130
|
-
|
|
112
|
+
/**
|
|
113
|
+
* Retrieve the current DTD
|
|
114
|
+
*
|
|
115
|
+
* @returns {*}
|
|
116
|
+
*/
|
|
117
|
+
var getDtd = function () {
|
|
131
118
|
return dtds[dtdMode];
|
|
132
119
|
};
|
|
133
|
-
/**
|
|
134
|
-
* Retrieve the current dtdMode (qti|html)
|
|
135
|
-
*
|
|
136
|
-
* @returns {string}
|
|
137
|
-
*/
|
|
138
120
|
|
|
139
|
-
|
|
140
|
-
|
|
121
|
+
/**
|
|
122
|
+
* Retrieve the current dtdMode (qti|html)
|
|
123
|
+
*
|
|
124
|
+
* @returns {string}
|
|
125
|
+
*/
|
|
126
|
+
var getMode = function () {
|
|
141
127
|
return dtdMode;
|
|
142
128
|
};
|
|
143
|
-
/**
|
|
144
|
-
* Convert (node)element into string
|
|
145
|
-
*
|
|
146
|
-
* @param element (string|DOM element|jQuery element)
|
|
147
|
-
* @returns {*}
|
|
148
|
-
* @private
|
|
149
|
-
*/
|
|
150
|
-
|
|
151
129
|
|
|
130
|
+
/**
|
|
131
|
+
* Convert (node)element into string
|
|
132
|
+
*
|
|
133
|
+
* @param element (string|DOM element|jQuery element)
|
|
134
|
+
* @returns {*}
|
|
135
|
+
* @private
|
|
136
|
+
*/
|
|
152
137
|
function _normalizeElement(element) {
|
|
153
138
|
// jQuery or DOM element
|
|
154
139
|
if (_.isObject(element) && !_.isArray(element)) {
|
|
155
140
|
// DOM element
|
|
156
141
|
if ('nodeName' in element) {
|
|
157
142
|
return element.nodeName.toLowerCase();
|
|
158
|
-
}
|
|
143
|
+
}
|
|
144
|
+
// jQuery element
|
|
159
145
|
else if (0 in element && 'nodeName' in element[0]) {
|
|
160
146
|
return element[0].nodeName.toLowerCase();
|
|
161
147
|
}
|
|
162
|
-
}
|
|
148
|
+
}
|
|
149
|
+
// node name
|
|
163
150
|
else if (_.isString(element)) {
|
|
164
151
|
return element.toLowerCase();
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
|
|
152
|
+
}
|
|
153
|
+
// invalid input
|
|
168
154
|
throw new Error('Unknown element ' + element);
|
|
169
155
|
}
|
|
170
|
-
/**
|
|
171
|
-
* This part is almost literally copied from CKEDITOR (apart from using lodash instaed of CKEDITOR tools)
|
|
172
|
-
*
|
|
173
|
-
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
|
174
|
-
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
|
175
|
-
*/
|
|
176
|
-
|
|
177
156
|
|
|
157
|
+
/**
|
|
158
|
+
* This part is almost literally copied from CKEDITOR (apart from using lodash instaed of CKEDITOR tools)
|
|
159
|
+
*
|
|
160
|
+
* @license Copyright (c) 2003-2014, CKSource - Frederico Knabben. All rights reserved.
|
|
161
|
+
* For licensing, see LICENSE.md or http://ckeditor.com/license
|
|
162
|
+
*/
|
|
178
163
|
dtds.html = function () {
|
|
179
164
|
var X = _.extend,
|
|
180
|
-
|
|
181
|
-
|
|
165
|
+
Y = function (source, removed) {
|
|
166
|
+
var substracted = _.cloneDeep(source),
|
|
182
167
|
i,
|
|
183
168
|
name;
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
for (name in removed) {
|
|
189
|
-
delete substracted[name];
|
|
169
|
+
for (i = 1; i < arguments.length; i++) {
|
|
170
|
+
removed = arguments[i];
|
|
171
|
+
for (name in removed) delete substracted[name];
|
|
190
172
|
}
|
|
191
|
-
|
|
173
|
+
return substracted;
|
|
174
|
+
};
|
|
192
175
|
|
|
193
|
-
|
|
194
|
-
}; // Phrasing elements.
|
|
176
|
+
// Phrasing elements.
|
|
195
177
|
// P = { a: 1, em: 1, strong: 1, small: 1, abbr: 1, dfn: 1, i: 1, b: 1, s: 1,
|
|
196
178
|
// u: 1, code: 1, 'var': 1, samp: 1, kbd: 1, sup: 1, sub: 1, q: 1, cite: 1,
|
|
197
179
|
// span: 1, bdo: 1, bdi: 1, br: 1, wbr: 1, ins: 1, del: 1, img: 1, embed: 1,
|
|
@@ -199,142 +181,144 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
199
181
|
// video: 1, audio: 1, input: 1, textarea: 1, select: 1, button: 1, label: 1,
|
|
200
182
|
// output: 1, keygen: 1, progress: 1, command: 1, canvas: 1, time: 1,
|
|
201
183
|
// meter: 1, detalist: 1 },
|
|
184
|
+
|
|
202
185
|
// Flow elements.
|
|
203
186
|
// F = { a: 1, p: 1, hr: 1, pre: 1, ul: 1, ol: 1, dl: 1, div: 1, h1: 1, h2: 1,
|
|
204
187
|
// h3: 1, h4: 1, h5: 1, h6: 1, hgroup: 1, address: 1, blockquote: 1, ins: 1,
|
|
205
188
|
// del: 1, object: 1, map: 1, noscript: 1, section: 1, nav: 1, article: 1,
|
|
206
189
|
// aside: 1, header: 1, footer: 1, video: 1, audio: 1, figure: 1, table: 1,
|
|
207
190
|
// form: 1, fieldset: 1, menu: 1, canvas: 1, details:1 },
|
|
191
|
+
|
|
208
192
|
// Text can be everywhere.
|
|
209
193
|
// X( P, T );
|
|
210
194
|
// Flow elements set consists of phrasing elements set.
|
|
211
195
|
// X( F, P );
|
|
212
196
|
|
|
213
|
-
|
|
214
197
|
var dtd,
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
X(P, PF, T, DP); // Flow elements := FO + P + DFO
|
|
198
|
+
P = {},
|
|
199
|
+
F = {},
|
|
200
|
+
// Intersection of flow elements set and phrasing elements set.
|
|
201
|
+
PF = {
|
|
202
|
+
a: 1,
|
|
203
|
+
abbr: 1,
|
|
204
|
+
area: 1,
|
|
205
|
+
audio: 1,
|
|
206
|
+
b: 1,
|
|
207
|
+
bdi: 1,
|
|
208
|
+
bdo: 1,
|
|
209
|
+
br: 1,
|
|
210
|
+
button: 1,
|
|
211
|
+
canvas: 1,
|
|
212
|
+
cite: 1,
|
|
213
|
+
code: 1,
|
|
214
|
+
command: 1,
|
|
215
|
+
datalist: 1,
|
|
216
|
+
del: 1,
|
|
217
|
+
dfn: 1,
|
|
218
|
+
em: 1,
|
|
219
|
+
embed: 1,
|
|
220
|
+
i: 1,
|
|
221
|
+
iframe: 1,
|
|
222
|
+
img: 1,
|
|
223
|
+
input: 1,
|
|
224
|
+
ins: 1,
|
|
225
|
+
kbd: 1,
|
|
226
|
+
keygen: 1,
|
|
227
|
+
label: 1,
|
|
228
|
+
map: 1,
|
|
229
|
+
mark: 1,
|
|
230
|
+
meter: 1,
|
|
231
|
+
noscript: 1,
|
|
232
|
+
object: 1,
|
|
233
|
+
output: 1,
|
|
234
|
+
progress: 1,
|
|
235
|
+
q: 1,
|
|
236
|
+
ruby: 1,
|
|
237
|
+
s: 1,
|
|
238
|
+
samp: 1,
|
|
239
|
+
script: 1,
|
|
240
|
+
select: 1,
|
|
241
|
+
small: 1,
|
|
242
|
+
span: 1,
|
|
243
|
+
strong: 1,
|
|
244
|
+
sub: 1,
|
|
245
|
+
sup: 1,
|
|
246
|
+
textarea: 1,
|
|
247
|
+
time: 1,
|
|
248
|
+
u: 1,
|
|
249
|
+
var: 1,
|
|
250
|
+
video: 1,
|
|
251
|
+
wbr: 1
|
|
252
|
+
},
|
|
253
|
+
// F - PF (Flow Only).
|
|
254
|
+
FO = {
|
|
255
|
+
address: 1,
|
|
256
|
+
article: 1,
|
|
257
|
+
aside: 1,
|
|
258
|
+
blockquote: 1,
|
|
259
|
+
details: 1,
|
|
260
|
+
div: 1,
|
|
261
|
+
dl: 1,
|
|
262
|
+
fieldset: 1,
|
|
263
|
+
figure: 1,
|
|
264
|
+
footer: 1,
|
|
265
|
+
form: 1,
|
|
266
|
+
h1: 1,
|
|
267
|
+
h2: 1,
|
|
268
|
+
h3: 1,
|
|
269
|
+
h4: 1,
|
|
270
|
+
h5: 1,
|
|
271
|
+
h6: 1,
|
|
272
|
+
header: 1,
|
|
273
|
+
hgroup: 1,
|
|
274
|
+
hr: 1,
|
|
275
|
+
menu: 1,
|
|
276
|
+
nav: 1,
|
|
277
|
+
ol: 1,
|
|
278
|
+
p: 1,
|
|
279
|
+
pre: 1,
|
|
280
|
+
section: 1,
|
|
281
|
+
table: 1,
|
|
282
|
+
ul: 1
|
|
283
|
+
},
|
|
284
|
+
// Metadata elements.
|
|
285
|
+
M = {
|
|
286
|
+
command: 1,
|
|
287
|
+
link: 1,
|
|
288
|
+
meta: 1,
|
|
289
|
+
noscript: 1,
|
|
290
|
+
script: 1,
|
|
291
|
+
style: 1
|
|
292
|
+
},
|
|
293
|
+
// Empty.
|
|
294
|
+
E = {},
|
|
295
|
+
// Text.
|
|
296
|
+
T = {
|
|
297
|
+
'#': 1
|
|
298
|
+
},
|
|
299
|
+
// Deprecated phrasing elements.
|
|
300
|
+
DP = {
|
|
301
|
+
acronym: 1,
|
|
302
|
+
applet: 1,
|
|
303
|
+
basefont: 1,
|
|
304
|
+
big: 1,
|
|
305
|
+
font: 1,
|
|
306
|
+
isindex: 1,
|
|
307
|
+
strike: 1,
|
|
308
|
+
style: 1,
|
|
309
|
+
tt: 1
|
|
310
|
+
},
|
|
311
|
+
// TODO remove "style".
|
|
312
|
+
// Deprecated flow only elements.
|
|
313
|
+
DFO = {
|
|
314
|
+
center: 1,
|
|
315
|
+
dir: 1,
|
|
316
|
+
noframes: 1
|
|
317
|
+
};
|
|
337
318
|
|
|
319
|
+
// Phrasing elements := PF + T + DP
|
|
320
|
+
X(P, PF, T, DP);
|
|
321
|
+
// Flow elements := FO + P + DFO
|
|
338
322
|
X(F, FO, P, DFO);
|
|
339
323
|
dtd = {
|
|
340
324
|
a: Y(P, {
|
|
@@ -560,8 +544,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
560
544
|
tt: P
|
|
561
545
|
};
|
|
562
546
|
X(dtd, {
|
|
563
|
-
/**
|
|
564
|
-
* List of block elements, like `<p>` or `<div>`.
|
|
547
|
+
/**
|
|
548
|
+
* List of block elements, like `<p>` or `<div>`.
|
|
565
549
|
*/
|
|
566
550
|
$block: X({
|
|
567
551
|
audio: 1,
|
|
@@ -571,18 +555,17 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
571
555
|
li: 1,
|
|
572
556
|
video: 1
|
|
573
557
|
}, FO, DFO),
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
*
|
|
577
|
-
*
|
|
578
|
-
*
|
|
579
|
-
*
|
|
580
|
-
*
|
|
581
|
-
* *
|
|
582
|
-
* *
|
|
583
|
-
*
|
|
584
|
-
*
|
|
585
|
-
* **Note:** As an exception `<li>` is not considered as a block limit, as it's generally used as a text block.
|
|
558
|
+
/**
|
|
559
|
+
* List of elements that contain other blocks, in which block-level operations should be limited,
|
|
560
|
+
* this property is not intended to be checked directly, use {@link CKEDITOR.dom.elementPath#blockLimit} instead.
|
|
561
|
+
*
|
|
562
|
+
* Some examples of editor behaviors that are impacted by block limits:
|
|
563
|
+
*
|
|
564
|
+
* * Enter key never split a block-limit element;
|
|
565
|
+
* * Style application is constraint by the block limit of the current selection.
|
|
566
|
+
* * Pasted html will be inserted into the block limit of the current selection.
|
|
567
|
+
*
|
|
568
|
+
* **Note:** As an exception `<li>` is not considered as a block limit, as it's generally used as a text block.
|
|
586
569
|
*/
|
|
587
570
|
$blockLimit: {
|
|
588
571
|
article: 1,
|
|
@@ -612,17 +595,15 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
612
595
|
ul: 1,
|
|
613
596
|
video: 1
|
|
614
597
|
},
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
* List of elements that contain character data.
|
|
598
|
+
/**
|
|
599
|
+
* List of elements that contain character data.
|
|
618
600
|
*/
|
|
619
601
|
$cdata: {
|
|
620
602
|
script: 1,
|
|
621
603
|
style: 1
|
|
622
604
|
},
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
* List of elements that are accepted as inline editing hosts.
|
|
605
|
+
/**
|
|
606
|
+
* List of elements that are accepted as inline editing hosts.
|
|
626
607
|
*/
|
|
627
608
|
$editable: {
|
|
628
609
|
address: 1,
|
|
@@ -650,9 +631,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
650
631
|
section: 1,
|
|
651
632
|
table: 1
|
|
652
633
|
},
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
* List of empty (self-closing) elements, like `<br>` or `<img>`.
|
|
634
|
+
/**
|
|
635
|
+
* List of empty (self-closing) elements, like `<br>` or `<img>`.
|
|
656
636
|
*/
|
|
657
637
|
$empty: {
|
|
658
638
|
area: 1,
|
|
@@ -675,41 +655,36 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
675
655
|
track: 1,
|
|
676
656
|
wbr: 1
|
|
677
657
|
},
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
* List of inline (`<span>` like) elements.
|
|
658
|
+
/**
|
|
659
|
+
* List of inline (`<span>` like) elements.
|
|
681
660
|
*/
|
|
682
661
|
$inline: P,
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
* List of list root elements.
|
|
662
|
+
/**
|
|
663
|
+
* List of list root elements.
|
|
686
664
|
*/
|
|
687
665
|
$list: {
|
|
688
666
|
dl: 1,
|
|
689
667
|
ol: 1,
|
|
690
668
|
ul: 1
|
|
691
669
|
},
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
* List of list item elements, like `<li>` or `<dd>`.
|
|
670
|
+
/**
|
|
671
|
+
* List of list item elements, like `<li>` or `<dd>`.
|
|
695
672
|
*/
|
|
696
673
|
$listItem: {
|
|
697
674
|
dd: 1,
|
|
698
675
|
dt: 1,
|
|
699
676
|
li: 1
|
|
700
677
|
},
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
* List of elements which may live outside body.
|
|
678
|
+
/**
|
|
679
|
+
* List of elements which may live outside body.
|
|
704
680
|
*/
|
|
705
681
|
$nonBodyContent: X({
|
|
706
682
|
body: 1,
|
|
707
683
|
head: 1,
|
|
708
684
|
html: 1
|
|
709
685
|
}, dtd.head),
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
* Elements that accept text nodes, but are not possible to edit into the browser.
|
|
686
|
+
/**
|
|
687
|
+
* Elements that accept text nodes, but are not possible to edit into the browser.
|
|
713
688
|
*/
|
|
714
689
|
$nonEditable: {
|
|
715
690
|
applet: 1,
|
|
@@ -725,9 +700,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
725
700
|
textarea: 1,
|
|
726
701
|
video: 1
|
|
727
702
|
},
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
* Elements that are considered objects, therefore selected as a whole in the editor.
|
|
703
|
+
/**
|
|
704
|
+
* Elements that are considered objects, therefore selected as a whole in the editor.
|
|
731
705
|
*/
|
|
732
706
|
$object: {
|
|
733
707
|
applet: 1,
|
|
@@ -743,9 +717,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
743
717
|
textarea: 1,
|
|
744
718
|
video: 1
|
|
745
719
|
},
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
* List of elements that can be ignored if empty, like `<b>` or `<span>`.
|
|
720
|
+
/**
|
|
721
|
+
* List of elements that can be ignored if empty, like `<b>` or `<span>`.
|
|
749
722
|
*/
|
|
750
723
|
$removeEmpty: {
|
|
751
724
|
abbr: 1,
|
|
@@ -782,9 +755,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
782
755
|
u: 1,
|
|
783
756
|
var: 1
|
|
784
757
|
},
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
* List of elements that have tabindex set to zero by default.
|
|
758
|
+
/**
|
|
759
|
+
* List of elements that have tabindex set to zero by default.
|
|
788
760
|
*/
|
|
789
761
|
$tabIndex: {
|
|
790
762
|
a: 1,
|
|
@@ -795,9 +767,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
795
767
|
select: 1,
|
|
796
768
|
textarea: 1
|
|
797
769
|
},
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
* List of elements used inside the `<table>` element, like `<tbody>` or `<td>`.
|
|
770
|
+
/**
|
|
771
|
+
* List of elements used inside the `<table>` element, like `<tbody>` or `<td>`.
|
|
801
772
|
*/
|
|
802
773
|
$tableContent: {
|
|
803
774
|
caption: 1,
|
|
@@ -810,9 +781,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
810
781
|
thead: 1,
|
|
811
782
|
tr: 1
|
|
812
783
|
},
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
* List of "transparent" elements. See [W3C's definition of "transparent" element](http://dev.w3.org/html5/markup/terminology.html#transparent).
|
|
784
|
+
/**
|
|
785
|
+
* List of "transparent" elements. See [W3C's definition of "transparent" element](http://dev.w3.org/html5/markup/terminology.html#transparent).
|
|
816
786
|
*/
|
|
817
787
|
$transparent: {
|
|
818
788
|
a: 1,
|
|
@@ -825,9 +795,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
825
795
|
object: 1,
|
|
826
796
|
video: 1
|
|
827
797
|
},
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
* List of elements that are not to exist standalone that must live under its parent element.
|
|
798
|
+
/**
|
|
799
|
+
* List of elements that are not to exist standalone that must live under its parent element.
|
|
831
800
|
*/
|
|
832
801
|
$intermediate: {
|
|
833
802
|
caption: 1,
|
|
@@ -852,99 +821,92 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
852
821
|
});
|
|
853
822
|
return dtd;
|
|
854
823
|
}();
|
|
855
|
-
/**
|
|
856
|
-
* Applies QTI rules to a copy of the xhtmlDtd
|
|
857
|
-
*
|
|
858
|
-
* @return dtd {object} the modified dtd
|
|
859
|
-
*/
|
|
860
|
-
|
|
861
824
|
|
|
825
|
+
/**
|
|
826
|
+
* Applies QTI rules to a copy of the xhtmlDtd
|
|
827
|
+
*
|
|
828
|
+
* @return dtd {object} the modified dtd
|
|
829
|
+
*/
|
|
862
830
|
dtds.qti = function () {
|
|
863
831
|
var element,
|
|
864
|
-
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
|
|
873
|
-
|
|
832
|
+
listCnt,
|
|
833
|
+
child,
|
|
834
|
+
actions = ['remove', 'add'],
|
|
835
|
+
actCnt,
|
|
836
|
+
actLnt = actions.length,
|
|
837
|
+
action,
|
|
838
|
+
overrides = {
|
|
839
|
+
pre: {
|
|
840
|
+
add: [],
|
|
841
|
+
remove: ['img', 'object', 'big', 'small', 'sub', 'sup']
|
|
842
|
+
},
|
|
843
|
+
table: {
|
|
844
|
+
remove: ['col']
|
|
845
|
+
}
|
|
874
846
|
},
|
|
875
|
-
|
|
876
|
-
|
|
877
|
-
|
|
878
|
-
|
|
879
|
-
qtiDtd = _.cloneDeep(dtds.html),
|
|
880
|
-
tmp,
|
|
881
|
-
h5Len = html5Only.length,
|
|
882
|
-
intersection; // remove html5-only keys
|
|
883
|
-
|
|
847
|
+
qtiDtd = _.cloneDeep(dtds.html),
|
|
848
|
+
tmp,
|
|
849
|
+
h5Len = html5Only.length,
|
|
850
|
+
intersection;
|
|
884
851
|
|
|
852
|
+
// remove html5-only keys
|
|
885
853
|
while (h5Len--) {
|
|
886
854
|
delete qtiDtd[html5Only[h5Len]];
|
|
887
|
-
}
|
|
888
|
-
|
|
855
|
+
}
|
|
889
856
|
|
|
857
|
+
// find html5-only elements in children and add them to overrides
|
|
890
858
|
for (element in qtiDtd) {
|
|
891
859
|
if (!qtiDtd.hasOwnProperty(element)) {
|
|
892
860
|
continue;
|
|
893
861
|
}
|
|
894
|
-
|
|
895
862
|
intersection = _.intersection(_.keys(qtiDtd[element]), html5Only);
|
|
896
|
-
|
|
897
863
|
if (!intersection.length) {
|
|
898
864
|
continue;
|
|
899
865
|
}
|
|
900
|
-
|
|
901
866
|
if (!overrides[element]) {
|
|
902
867
|
overrides[element] = {
|
|
903
868
|
remove: []
|
|
904
869
|
};
|
|
905
870
|
}
|
|
906
|
-
|
|
907
871
|
overrides[element].remove = overrides[element].remove.concat(intersection);
|
|
908
|
-
}
|
|
909
|
-
|
|
872
|
+
}
|
|
910
873
|
|
|
874
|
+
// execute overrides
|
|
911
875
|
for (element in overrides) {
|
|
912
876
|
if (!overrides.hasOwnProperty(element)) {
|
|
913
877
|
continue;
|
|
914
|
-
}
|
|
915
|
-
|
|
916
|
-
|
|
878
|
+
}
|
|
879
|
+
// disallow adding keys to the dtd ckeditor cannot handle
|
|
917
880
|
if (!qtiDtd.hasOwnProperty(element)) {
|
|
918
881
|
continue;
|
|
919
|
-
}
|
|
920
|
-
|
|
882
|
+
}
|
|
921
883
|
|
|
884
|
+
// note: removing and adding is on purpose done in two steps
|
|
922
885
|
for (actCnt = 0; actCnt < actLnt; actCnt++) {
|
|
923
886
|
action = actions[actCnt];
|
|
924
|
-
|
|
925
887
|
if (!(action in overrides[element])) {
|
|
926
888
|
continue;
|
|
927
889
|
}
|
|
890
|
+
listCnt = overrides[element][action].length;
|
|
928
891
|
|
|
929
|
-
|
|
930
|
-
|
|
892
|
+
// allow 'all' as a shortcut for 'remove all children'
|
|
931
893
|
if (action === 'remove' && overrides[element][action] === 'all') {
|
|
932
894
|
qtiDtd[element] = {};
|
|
933
895
|
continue;
|
|
934
|
-
}
|
|
935
|
-
|
|
896
|
+
}
|
|
936
897
|
|
|
898
|
+
// doggy style loop over children to add
|
|
937
899
|
while (listCnt--) {
|
|
938
|
-
child = overrides[element][action][listCnt];
|
|
900
|
+
child = overrides[element][action][listCnt];
|
|
901
|
+
// there was some weird behaviour with references
|
|
939
902
|
// deleting from pre would also delete from p
|
|
940
903
|
// going over a tmp var solves this, though I have no idea why
|
|
941
|
-
|
|
942
904
|
tmp = _.cloneDeep(qtiDtd[element]);
|
|
943
|
-
|
|
944
905
|
if (action === 'remove') {
|
|
945
906
|
delete tmp[child];
|
|
946
907
|
qtiDtd[element] = tmp;
|
|
947
|
-
}
|
|
908
|
+
}
|
|
909
|
+
// add child element to element as long as it's not entirely unknown to ckeditor
|
|
948
910
|
else if (action === 'add' && typeof qtiDtd[child] !== 'undefined') {
|
|
949
911
|
tmp[child] = 1;
|
|
950
912
|
qtiDtd[element] = tmp[child];
|
|
@@ -952,10 +914,8 @@ define(['lodash'], function (_) { 'use strict';
|
|
|
952
914
|
}
|
|
953
915
|
}
|
|
954
916
|
}
|
|
955
|
-
|
|
956
917
|
return qtiDtd;
|
|
957
918
|
}();
|
|
958
|
-
|
|
959
919
|
return {
|
|
960
920
|
getDtd: getDtd,
|
|
961
921
|
getChildrenOf: getChildrenOf,
|