@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.
Files changed (773) hide show
  1. package/LICENSE +339 -339
  2. package/README.md +22 -22
  3. package/dist/actionbar.js +92 -92
  4. package/dist/adder.js +109 -109
  5. package/dist/animable/absorbable/absorbable.js +29 -29
  6. package/dist/animable/absorbable/css/absorb.css +7 -7
  7. package/dist/animable/absorbable/css/absorb.css.map +1 -1
  8. package/dist/animable/pulsable/css/pulse.css +7 -7
  9. package/dist/animable/pulsable/css/pulse.css.map +1 -1
  10. package/dist/animable/pulsable/pulsable.js +23 -23
  11. package/dist/areaBroker.js +51 -51
  12. package/dist/autocomplete/css/autocomplete.css +7 -7
  13. package/dist/autocomplete/css/autocomplete.css.map +1 -1
  14. package/dist/autocomplete.js +384 -384
  15. package/dist/autoscroll.js +22 -22
  16. package/dist/badge/badge.js +35 -35
  17. package/dist/badge/css/badge.css +7 -7
  18. package/dist/badge/css/badge.css.map +1 -1
  19. package/dist/breadcrumbs/css/breadcrumbs.css +7 -7
  20. package/dist/breadcrumbs/css/breadcrumbs.css.map +1 -1
  21. package/dist/breadcrumbs.js +57 -57
  22. package/dist/btngrouper.js +64 -64
  23. package/dist/bulkActionPopup/css/bulkActionPopup.css +7 -7
  24. package/dist/bulkActionPopup/css/bulkActionPopup.css.map +1 -1
  25. package/dist/bulkActionPopup.js +91 -91
  26. package/dist/button.js +89 -89
  27. package/dist/calculator/css/calculator.css +10 -10
  28. package/dist/calculator/css/calculator.css.map +1 -1
  29. package/dist/calculator.js +51 -51
  30. package/dist/cascadingComboBox.js +34 -34
  31. package/dist/ckeditor/ckConfigurator.js +49 -49
  32. package/dist/ckeditor/dtdHandler.js +110 -110
  33. package/dist/class/css/selector.css +7 -7
  34. package/dist/class/css/selector.css.map +1 -1
  35. package/dist/class/selector.js +98 -98
  36. package/dist/component/alignable.js +81 -81
  37. package/dist/component/containable.js +37 -37
  38. package/dist/component/css/components.css +7 -7
  39. package/dist/component/css/components.css.map +1 -1
  40. package/dist/component/css/windowComponent.css +7 -7
  41. package/dist/component/css/windowComponent.css.map +1 -1
  42. package/dist/component/draggable.js +25 -25
  43. package/dist/component/placeable.js +70 -70
  44. package/dist/component/resizable.js +61 -61
  45. package/dist/component/stackable.js +20 -20
  46. package/dist/component/windowed.js +46 -46
  47. package/dist/component.js +140 -140
  48. package/dist/container.js +76 -76
  49. package/dist/contextualPopup/css/contextualPopup.css +7 -7
  50. package/dist/contextualPopup/css/contextualPopup.css.map +1 -1
  51. package/dist/contextualPopup.js +100 -100
  52. package/dist/dashboard/css/dashboard.css +7 -7
  53. package/dist/dashboard/css/dashboard.css.map +1 -1
  54. package/dist/dashboard.js +62 -62
  55. package/dist/datalist/css/datalist.css +7 -7
  56. package/dist/datalist/css/datalist.css.map +1 -1
  57. package/dist/datalist.js +147 -147
  58. package/dist/datatable/css/datatable.css +7 -7
  59. package/dist/datatable/css/datatable.css.map +1 -1
  60. package/dist/datatable/filterStrategy/filterStrategy.js +27 -27
  61. package/dist/datatable/filterStrategy/multiple.js +25 -25
  62. package/dist/datatable/filterStrategy/single.js +25 -25
  63. package/dist/datatable.js +377 -377
  64. package/dist/dateRange/css/dateRange.css +7 -7
  65. package/dist/dateRange/css/dateRange.css.map +1 -1
  66. package/dist/dateRange/dateRange.js +97 -97
  67. package/dist/datetime/css/picker.css +7 -7
  68. package/dist/datetime/css/picker.css.map +1 -1
  69. package/dist/datetime/picker.js +161 -161
  70. package/dist/deleter.js +79 -79
  71. package/dist/destination/css/selector.css +7 -7
  72. package/dist/destination/css/selector.css.map +1 -1
  73. package/dist/destination/selector.js +52 -52
  74. package/dist/dialog/alert.js +26 -26
  75. package/dist/dialog/confirm.js +27 -27
  76. package/dist/dialog/confirmDelete.js +31 -31
  77. package/dist/dialog.js +141 -141
  78. package/dist/disabler.js +90 -90
  79. package/dist/documentViewer/css/documentViewer.css +7 -7
  80. package/dist/documentViewer/css/documentViewer.css.map +1 -1
  81. package/dist/documentViewer/providers/pdfViewer/fallback/viewer.js +30 -30
  82. package/dist/documentViewer/providers/pdfViewer/pdfjs/areaBroker.js +25 -25
  83. package/dist/documentViewer/providers/pdfViewer/pdfjs/findBar.js +120 -120
  84. package/dist/documentViewer/providers/pdfViewer/pdfjs/pageView.js +89 -89
  85. package/dist/documentViewer/providers/pdfViewer/pdfjs/pagesManager.js +52 -52
  86. package/dist/documentViewer/providers/pdfViewer/pdfjs/searchEngine.js +112 -112
  87. package/dist/documentViewer/providers/pdfViewer/pdfjs/textManager.js +67 -67
  88. package/dist/documentViewer/providers/pdfViewer/pdfjs/viewer.js +81 -81
  89. package/dist/documentViewer/providers/pdfViewer/pdfjs/wrapper.js +111 -111
  90. package/dist/documentViewer/providers/pdfViewer.js +29 -29
  91. package/dist/documentViewer/viewerFactory.js +71 -71
  92. package/dist/documentViewer.js +86 -86
  93. package/dist/dropdown/css/dropdown.css +7 -7
  94. package/dist/dropdown/css/dropdown.css.map +1 -1
  95. package/dist/dropdown.js +84 -84
  96. package/dist/durationer.js +58 -58
  97. package/dist/dynamicComponent/css/dynamicComponent.css +7 -7
  98. package/dist/dynamicComponent/css/dynamicComponent.css.map +1 -1
  99. package/dist/dynamicComponent.js +103 -103
  100. package/dist/feedback.js +84 -84
  101. package/dist/figure/FigureStateActive.js +111 -111
  102. package/dist/filesender.js +26 -26
  103. package/dist/filter.js +34 -34
  104. package/dist/form/css/dropdownForm.css +7 -7
  105. package/dist/form/css/dropdownForm.css.map +1 -1
  106. package/dist/form/css/form.css +7 -7
  107. package/dist/form/css/form.css.map +1 -1
  108. package/dist/form/dropdownForm.js +99 -99
  109. package/dist/form/form.js +248 -248
  110. package/dist/form/simpleForm.js +71 -71
  111. package/dist/form/validator/css/validator.css +7 -7
  112. package/dist/form/validator/css/validator.css.map +1 -1
  113. package/dist/form/validator/renderer.js +52 -52
  114. package/dist/form/validator/validator.js +103 -103
  115. package/dist/form/widget/css/widget.css +7 -7
  116. package/dist/form/widget/css/widget.css.map +1 -1
  117. package/dist/form/widget/definitions.js +24 -24
  118. package/dist/form/widget/loader.js +16 -16
  119. package/dist/form/widget/providers/checkBox.js +62 -62
  120. package/dist/form/widget/providers/comboBox.js +46 -46
  121. package/dist/form/widget/providers/default.js +35 -35
  122. package/dist/form/widget/providers/hidden.js +37 -37
  123. package/dist/form/widget/providers/hiddenBox.js +58 -58
  124. package/dist/form/widget/providers/radioBox.js +57 -57
  125. package/dist/form/widget/providers/textArea.js +35 -35
  126. package/dist/form/widget/providers/textBox.js +34 -34
  127. package/dist/form/widget/widget.js +141 -141
  128. package/dist/form.js +10 -10
  129. package/dist/formValidator/formValidator.js +61 -61
  130. package/dist/formValidator/highlighters/highlighter.js +41 -41
  131. package/dist/formValidator/highlighters/message.js +29 -29
  132. package/dist/formValidator/highlighters/tooltip.js +32 -32
  133. package/dist/generis/form/css/form.css +7 -7
  134. package/dist/generis/form/css/form.css.map +1 -1
  135. package/dist/generis/form/form.js +73 -73
  136. package/dist/generis/validator/css/validator.css +7 -7
  137. package/dist/generis/validator/css/validator.css.map +1 -1
  138. package/dist/generis/validator/validator.js +38 -38
  139. package/dist/generis/widget/checkBox/checkBox.js +39 -39
  140. package/dist/generis/widget/comboBox/comboBox.js +32 -32
  141. package/dist/generis/widget/css/widget.css +7 -7
  142. package/dist/generis/widget/css/widget.css.map +1 -1
  143. package/dist/generis/widget/hiddenBox/hiddenBox.js +40 -40
  144. package/dist/generis/widget/loader.js +20 -20
  145. package/dist/generis/widget/textBox/textBox.js +27 -27
  146. package/dist/generis/widget/widget.js +47 -47
  147. package/dist/groupedComboBox.js +36 -36
  148. package/dist/groupvalidator.js +19 -19
  149. package/dist/hider.js +41 -41
  150. package/dist/highlighter.js +278 -278
  151. package/dist/image/ImgStateActive/extractLabel.js +20 -20
  152. package/dist/image/ImgStateActive/helper.js +16 -16
  153. package/dist/image/ImgStateActive/initHelper.js +85 -85
  154. package/dist/image/ImgStateActive/initMediaEditor.js +48 -48
  155. package/dist/image/ImgStateActive/mediaSizer.js +32 -32
  156. package/dist/image/ImgStateActive.js +104 -104
  157. package/dist/incrementer.js +58 -58
  158. package/dist/inplacer.js +87 -87
  159. package/dist/interactUtils.js +42 -42
  160. package/dist/itemButtonList/css/item-button-list.css +23 -23
  161. package/dist/itemButtonList/css/item-button-list.css.map +1 -1
  162. package/dist/itemButtonList.js +102 -102
  163. package/dist/keyNavigation/navigableDomElement.js +76 -76
  164. package/dist/keyNavigation/navigator.js +158 -158
  165. package/dist/listbox/css/listbox.css +7 -7
  166. package/dist/listbox/css/listbox.css.map +1 -1
  167. package/dist/listbox.js +84 -84
  168. package/dist/liststyler.js +57 -57
  169. package/dist/loadingButton/css/button.css +7 -7
  170. package/dist/loadingButton/css/button.css.map +1 -1
  171. package/dist/loadingButton/loadingButton.js +35 -35
  172. package/dist/lock.js +112 -112
  173. package/dist/login/login.js +87 -87
  174. package/dist/maths/calculator/basicCalculator.js +50 -50
  175. package/dist/maths/calculator/calculatorComponent.js +29 -29
  176. package/dist/maths/calculator/core/areaBroker.js +25 -25
  177. package/dist/maths/calculator/core/board.js +300 -300
  178. package/dist/maths/calculator/core/expression.js +98 -98
  179. package/dist/maths/calculator/core/labels.js +16 -16
  180. package/dist/maths/calculator/core/plugin.js +19 -19
  181. package/dist/maths/calculator/core/terms.js +26 -26
  182. package/dist/maths/calculator/core/tokenizer.js +98 -98
  183. package/dist/maths/calculator/core/tokens.js +75 -75
  184. package/dist/maths/calculator/css/calculator.css +7 -7
  185. package/dist/maths/calculator/css/calculator.css.map +1 -1
  186. package/dist/maths/calculator/defaultCalculator.js +23 -23
  187. package/dist/maths/calculator/plugins/core/degrad.js +22 -22
  188. package/dist/maths/calculator/plugins/core/history.js +45 -45
  189. package/dist/maths/calculator/plugins/core/remind.js +22 -22
  190. package/dist/maths/calculator/plugins/core/stepNavigation.js +31 -31
  191. package/dist/maths/calculator/plugins/keyboard/templateKeyboard/templateKeyboard.js +48 -48
  192. package/dist/maths/calculator/plugins/modifiers/pow10.js +35 -35
  193. package/dist/maths/calculator/plugins/modifiers/sign.js +90 -90
  194. package/dist/maths/calculator/plugins/screen/simpleScreen/simpleScreen.js +47 -47
  195. package/dist/maths/calculator/pluginsLoader.js +21 -21
  196. package/dist/maths/calculator/scientificCalculator.js +78 -78
  197. package/dist/mediaEditor/mediaEditorComponent.js +51 -51
  198. package/dist/mediaEditor/plugins/mediaAlignment/helper.js +16 -16
  199. package/dist/mediaEditor/plugins/mediaAlignment/mediaAlignmentComponent.js +47 -47
  200. package/dist/mediaEditor/plugins/mediaAlignment/style.css +7 -7
  201. package/dist/mediaEditor/plugins/mediaDimension/helper.js +70 -70
  202. package/dist/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +140 -140
  203. package/dist/mediaEditor/plugins/mediaDimension/style.css +141 -141
  204. package/dist/mediaplayer/css/player.css +7 -7
  205. package/dist/mediaplayer/css/player.css.map +1 -1
  206. package/dist/mediaplayer/players/html5.js +52 -52
  207. package/dist/mediaplayer/players/youtube.js +39 -39
  208. package/dist/mediaplayer/players.js +18 -18
  209. package/dist/mediaplayer/support.js +55 -55
  210. package/dist/mediaplayer/utils/reminder.js +100 -100
  211. package/dist/mediaplayer/utils/timeObserver.js +92 -92
  212. package/dist/mediaplayer/youtubeManager.js +51 -51
  213. package/dist/mediaplayer.js +447 -447
  214. package/dist/mediasizer.js +122 -122
  215. package/dist/modal.js +87 -87
  216. package/dist/movableComponent.js +35 -35
  217. package/dist/pageSizeSelector.js +31 -31
  218. package/dist/pageStatus.js +33 -33
  219. package/dist/pagination/css/pagination.css +7 -7
  220. package/dist/pagination/css/pagination.css.map +1 -1
  221. package/dist/pagination/paginationStrategy.js +23 -23
  222. package/dist/pagination/providers/pages.js +24 -24
  223. package/dist/pagination/providers/simple.js +22 -22
  224. package/dist/pagination.js +45 -45
  225. package/dist/previewer.js +67 -67
  226. package/dist/progressbar.js +58 -58
  227. package/dist/propertySelector/css/propertySelector.css +7 -7
  228. package/dist/propertySelector/css/propertySelector.css.map +1 -1
  229. package/dist/propertySelector/propertySelector.js +86 -86
  230. package/dist/report.js +73 -73
  231. package/dist/resource/css/selector.css +7 -7
  232. package/dist/resource/css/selector.css.map +1 -1
  233. package/dist/resource/filters.js +60 -60
  234. package/dist/resource/list.js +53 -53
  235. package/dist/resource/selectable.js +92 -92
  236. package/dist/resource/selector.js +182 -182
  237. package/dist/resource/tree.js +91 -91
  238. package/dist/resourcemgr/css/resourcemgr.css +7 -7
  239. package/dist/resourcemgr/css/resourcemgr.css.map +1 -1
  240. package/dist/resourcemgr/fileBrowser.js +75 -75
  241. package/dist/resourcemgr/fileSelector.js +45 -45
  242. package/dist/resourcemgr/util/updatePermissions.js +4 -4
  243. package/dist/resourcemgr.js +49 -49
  244. package/dist/scroller.js +26 -26
  245. package/dist/searchModal/advancedSearch.js +155 -155
  246. package/dist/searchModal/css/advancedSearch.css +7 -7
  247. package/dist/searchModal/css/advancedSearch.css.map +1 -1
  248. package/dist/searchModal/css/searchModal.css +7 -7
  249. package/dist/searchModal/css/searchModal.css.map +1 -1
  250. package/dist/searchModal.js +134 -134
  251. package/dist/selecter.js +6 -6
  252. package/dist/stacker.js +43 -43
  253. package/dist/switch/css/switch.css +7 -7
  254. package/dist/switch/css/switch.css.map +1 -1
  255. package/dist/switch/switch.js +62 -62
  256. package/dist/tableModel.js +33 -33
  257. package/dist/tabs/css/tabs.css +12 -12
  258. package/dist/tabs/css/tabs.css.map +1 -1
  259. package/dist/tabs.js +220 -220
  260. package/dist/taskQueue/css/taskQueue.css +7 -7
  261. package/dist/taskQueue/css/taskQueue.css.map +1 -1
  262. package/dist/taskQueue/status.js +59 -59
  263. package/dist/taskQueue/table.js +54 -54
  264. package/dist/taskQueue/taskQueue.js +18 -18
  265. package/dist/taskQueue/taskQueueModel.js +102 -102
  266. package/dist/taskQueue.js +47 -47
  267. package/dist/taskQueueButton/css/taskable.css +7 -7
  268. package/dist/taskQueueButton/css/taskable.css.map +1 -1
  269. package/dist/taskQueueButton/css/treeButton.css +7 -7
  270. package/dist/taskQueueButton/css/treeButton.css.map +1 -1
  271. package/dist/taskQueueButton/standardButton.js +39 -39
  272. package/dist/taskQueueButton/taskable.js +41 -41
  273. package/dist/taskQueueButton/treeButton.js +43 -43
  274. package/dist/themeLoader.js +75 -75
  275. package/dist/themes.js +84 -84
  276. package/dist/toggler.js +57 -57
  277. package/dist/tooltip.js +41 -41
  278. package/dist/tooltipster.js +17 -17
  279. package/dist/transformer.js +117 -117
  280. package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css +7 -7
  281. package/dist/tristateCheckboxGroup/css/tristateCheckboxGroup.css.map +1 -1
  282. package/dist/tristateCheckboxGroup.js +62 -62
  283. package/dist/uploader.js +145 -145
  284. package/dist/validator/validators.js +48 -48
  285. package/dist/validator.js +23 -23
  286. package/dist/waitForMedia.js +33 -33
  287. package/dist/waitingDialog/css/waitingDialog.css +7 -7
  288. package/dist/waitingDialog/css/waitingDialog.css.map +1 -1
  289. package/dist/waitingDialog/waitingDialog.js +54 -54
  290. package/package.json +110 -110
  291. package/scss/basic.scss +16 -16
  292. package/scss/ckeditor/skins/tao/scss/inc/_ck-icons.scss +60 -60
  293. package/scss/ckeditor/skins/tao/scss/inc/_tao.scss +59 -59
  294. package/scss/font/tao/tao.svg +235 -235
  295. package/scss/inc/_base.scss +495 -495
  296. package/scss/inc/_bootstrap.scss +6 -6
  297. package/scss/inc/_buttons.scss +114 -114
  298. package/scss/inc/_colors.scss +93 -93
  299. package/scss/inc/_feedback.scss +154 -154
  300. package/scss/inc/_flex-grid.scss +15 -15
  301. package/scss/inc/_fonts.scss +4 -4
  302. package/scss/inc/_forms.scss +832 -832
  303. package/scss/inc/_functions.scss +283 -283
  304. package/scss/inc/_jquery.nouislider.scss +254 -254
  305. package/scss/inc/_normalize.scss +528 -528
  306. package/scss/inc/_report.scss +67 -67
  307. package/scss/inc/_secondary-properties.scss +89 -89
  308. package/scss/inc/_select2.scss +634 -634
  309. package/scss/inc/_toolbars.scss +155 -155
  310. package/scss/inc/_tooltip.scss +312 -312
  311. package/scss/inc/_variables.scss +21 -21
  312. package/scss/inc/base/_highlight.scss +5 -5
  313. package/scss/inc/base/_list-style.scss +58 -58
  314. package/scss/inc/base/_svg.scss +3 -3
  315. package/scss/inc/base/_table.scss +62 -62
  316. package/scss/inc/fonts/_source-sans-pro.scss +29 -29
  317. package/scss/inc/fonts/_tao-icon-classes.scss +227 -227
  318. package/scss/inc/fonts/_tao-icon-def.scss +12 -12
  319. package/scss/inc/fonts/_tao-icon-vars.scss +241 -241
  320. package/src/actionbar/tpl/main.tpl +8 -8
  321. package/src/actionbar.js +251 -251
  322. package/src/adder.js +250 -250
  323. package/src/animable/absorbable/absorbable.js +134 -134
  324. package/src/animable/absorbable/css/absorb.css +7 -7
  325. package/src/animable/absorbable/css/absorb.css.map +1 -1
  326. package/src/animable/absorbable/scss/absorb.scss +37 -37
  327. package/src/animable/pulsable/css/pulse.css +7 -7
  328. package/src/animable/pulsable/css/pulse.css.map +1 -1
  329. package/src/animable/pulsable/pulsable.js +90 -90
  330. package/src/animable/pulsable/scss/pulse.scss +22 -22
  331. package/src/areaBroker.js +160 -160
  332. package/src/autocomplete/css/autocomplete.css +7 -7
  333. package/src/autocomplete/css/autocomplete.css.map +1 -1
  334. package/src/autocomplete/scss/autocomplete.scss +37 -37
  335. package/src/autocomplete.js +1027 -1027
  336. package/src/autoscroll.js +57 -57
  337. package/src/badge/badge.js +119 -119
  338. package/src/badge/css/badge.css +7 -7
  339. package/src/badge/css/badge.css.map +1 -1
  340. package/src/badge/scss/badge.scss +92 -92
  341. package/src/badge/tpl/badge.tpl +4 -4
  342. package/src/breadcrumbs/css/breadcrumbs.css +7 -7
  343. package/src/breadcrumbs/css/breadcrumbs.css.map +1 -1
  344. package/src/breadcrumbs/scss/breadcrumbs.scss +52 -52
  345. package/src/breadcrumbs/tpl/breadcrumbs.tpl +20 -20
  346. package/src/breadcrumbs.js +99 -99
  347. package/src/btngrouper.js +213 -213
  348. package/src/bulkActionPopup/css/bulkActionPopup.css +7 -7
  349. package/src/bulkActionPopup/css/bulkActionPopup.css.map +1 -1
  350. package/src/bulkActionPopup/scss/bulkActionPopup.scss +63 -63
  351. package/src/bulkActionPopup/tpl/layout.tpl +76 -76
  352. package/src/bulkActionPopup/tpl/select.tpl +8 -8
  353. package/src/bulkActionPopup.js +274 -274
  354. package/src/button/tpl/button.tpl +4 -4
  355. package/src/button.js +135 -135
  356. package/src/calculator/css/calculator.css +10 -10
  357. package/src/calculator/css/calculator.css.map +1 -1
  358. package/src/calculator/scss/calculator.scss +139 -139
  359. package/src/calculator.js +188 -188
  360. package/src/cascadingComboBox.js +126 -126
  361. package/src/ckeditor/ckConfigurator.js +742 -742
  362. package/src/ckeditor/dtdHandler.js +1030 -1030
  363. package/src/class/css/selector.css +7 -7
  364. package/src/class/css/selector.css.map +1 -1
  365. package/src/class/scss/selector.scss +101 -101
  366. package/src/class/selector.js +329 -329
  367. package/src/class/tpl/listItem.tpl +9 -9
  368. package/src/class/tpl/selector.tpl +10 -10
  369. package/src/component/alignable.js +274 -274
  370. package/src/component/containable.js +122 -122
  371. package/src/component/css/components.css +7 -7
  372. package/src/component/css/components.css.map +1 -1
  373. package/src/component/css/windowComponent.css +7 -7
  374. package/src/component/css/windowComponent.css.map +1 -1
  375. package/src/component/draggable.js +104 -104
  376. package/src/component/placeable.js +233 -233
  377. package/src/component/resizable.js +195 -195
  378. package/src/component/scss/components.scss +507 -507
  379. package/src/component/scss/windowComponent.scss +62 -62
  380. package/src/component/stackable.js +67 -67
  381. package/src/component/tpl/window.tpl +7 -7
  382. package/src/component/windowed.js +206 -206
  383. package/src/component.js +401 -401
  384. package/src/container.js +200 -200
  385. package/src/contextualPopup/css/contextualPopup.css +7 -7
  386. package/src/contextualPopup/css/contextualPopup.css.map +1 -1
  387. package/src/contextualPopup/scss/contextualPopup.scss +78 -78
  388. package/src/contextualPopup/tpl/popup.tpl +10 -10
  389. package/src/contextualPopup.js +294 -294
  390. package/src/css/basic.css +104 -104
  391. package/src/css/basic.css.map +1 -1
  392. package/src/dashboard/css/dashboard.css +7 -7
  393. package/src/dashboard/css/dashboard.css.map +1 -1
  394. package/src/dashboard/scss/dashboard.scss +93 -93
  395. package/src/dashboard/tpl/dashboard.tpl +16 -16
  396. package/src/dashboard/tpl/dashboardMetricsList.tpl +15 -15
  397. package/src/dashboard.js +179 -179
  398. package/src/datalist/css/datalist.css +7 -7
  399. package/src/datalist/css/datalist.css.map +1 -1
  400. package/src/datalist/scss/datalist.scss +116 -116
  401. package/src/datalist/tpl/list.tpl +24 -24
  402. package/src/datalist/tpl/main.tpl +44 -44
  403. package/src/datalist.js +500 -500
  404. package/src/datatable/css/datatable.css +7 -7
  405. package/src/datatable/css/datatable.css.map +1 -1
  406. package/src/datatable/filterStrategy/filterStrategy.js +70 -70
  407. package/src/datatable/filterStrategy/multiple.js +126 -126
  408. package/src/datatable/filterStrategy/single.js +108 -108
  409. package/src/datatable/scss/datatable.scss +149 -149
  410. package/src/datatable/tpl/button.tpl +6 -6
  411. package/src/datatable/tpl/layout.tpl +158 -158
  412. package/src/datatable.js +1056 -1056
  413. package/src/dateRange/css/dateRange.css +7 -7
  414. package/src/dateRange/css/dateRange.css.map +1 -1
  415. package/src/dateRange/dateRange.js +341 -341
  416. package/src/dateRange/scss/dateRange.scss +7 -7
  417. package/src/dateRange/tpl/select.tpl +18 -18
  418. package/src/datetime/css/picker.css +7 -7
  419. package/src/datetime/css/picker.css.map +1 -1
  420. package/src/datetime/picker.js +576 -576
  421. package/src/datetime/scss/picker.scss +192 -192
  422. package/src/datetime/tpl/picker.tpl +18 -18
  423. package/src/deleter/undo.tpl +6 -6
  424. package/src/deleter.js +296 -296
  425. package/src/destination/css/selector.css +7 -7
  426. package/src/destination/css/selector.css.map +1 -1
  427. package/src/destination/scss/selector.scss +36 -36
  428. package/src/destination/selector.js +195 -195
  429. package/src/destination/tpl/selector.tpl +13 -13
  430. package/src/dialog/alert.js +70 -70
  431. package/src/dialog/confirm.js +85 -85
  432. package/src/dialog/confirmDelete.js +95 -95
  433. package/src/dialog/tpl/body.tpl +24 -24
  434. package/src/dialog/tpl/buttons.tpl +6 -6
  435. package/src/dialog/tpl/checkbox.tpl +5 -5
  436. package/src/dialog.js +517 -517
  437. package/src/disabler.js +230 -230
  438. package/src/documentViewer/css/documentViewer.css +7 -7
  439. package/src/documentViewer/css/documentViewer.css.map +1 -1
  440. package/src/documentViewer/providers/pdfViewer/fallback/viewer.js +69 -69
  441. package/src/documentViewer/providers/pdfViewer/pdfjs/areaBroker.js +41 -41
  442. package/src/documentViewer/providers/pdfViewer/pdfjs/findBar.js +475 -475
  443. package/src/documentViewer/providers/pdfViewer/pdfjs/findBar.tpl +20 -20
  444. package/src/documentViewer/providers/pdfViewer/pdfjs/match.tpl +1 -1
  445. package/src/documentViewer/providers/pdfViewer/pdfjs/page.tpl +4 -4
  446. package/src/documentViewer/providers/pdfViewer/pdfjs/pageView.js +318 -318
  447. package/src/documentViewer/providers/pdfViewer/pdfjs/pagesManager.js +167 -167
  448. package/src/documentViewer/providers/pdfViewer/pdfjs/searchEngine.js +451 -451
  449. package/src/documentViewer/providers/pdfViewer/pdfjs/textManager.js +252 -252
  450. package/src/documentViewer/providers/pdfViewer/pdfjs/viewer.js +299 -299
  451. package/src/documentViewer/providers/pdfViewer/pdfjs/viewer.tpl +16 -16
  452. package/src/documentViewer/providers/pdfViewer/pdfjs/wrapper.js +351 -351
  453. package/src/documentViewer/providers/pdfViewer.js +93 -93
  454. package/src/documentViewer/scss/documentViewer.scss +184 -184
  455. package/src/documentViewer/viewerFactory.js +191 -191
  456. package/src/documentViewer.js +238 -238
  457. package/src/dropdown/css/dropdown.css +7 -7
  458. package/src/dropdown/css/dropdown.css.map +1 -1
  459. package/src/dropdown/scss/dropdown.scss +99 -99
  460. package/src/dropdown/tpl/dropdown.tpl +8 -8
  461. package/src/dropdown/tpl/list-item.tpl +4 -4
  462. package/src/dropdown.js +255 -255
  463. package/src/durationer.js +220 -220
  464. package/src/dynamicComponent/css/dynamicComponent.css +7 -7
  465. package/src/dynamicComponent/css/dynamicComponent.css.map +1 -1
  466. package/src/dynamicComponent/scss/dynamicComponent.scss +98 -98
  467. package/src/dynamicComponent/tpl/layout.tpl +17 -17
  468. package/src/dynamicComponent.js +553 -553
  469. package/src/feedback/feedback.tpl +7 -7
  470. package/src/feedback.js +295 -295
  471. package/src/figure/FigureStateActive.js +184 -184
  472. package/src/filesender.js +112 -112
  473. package/src/filter/template.tpl +5 -5
  474. package/src/filter.js +129 -129
  475. package/src/form/css/dropdownForm.css +7 -7
  476. package/src/form/css/dropdownForm.css.map +1 -1
  477. package/src/form/css/form.css +7 -7
  478. package/src/form/css/form.css.map +1 -1
  479. package/src/form/dropdownForm.js +281 -281
  480. package/src/form/form.js +688 -688
  481. package/src/form/scss/dropdownForm.scss +60 -60
  482. package/src/form/scss/form.scss +25 -25
  483. package/src/form/simpleForm.js +125 -125
  484. package/src/form/tpl/dropdownForm.tpl +4 -4
  485. package/src/form/tpl/form.tpl +7 -7
  486. package/src/form/validator/css/validator.css +7 -7
  487. package/src/form/validator/css/validator.css.map +1 -1
  488. package/src/form/validator/renderer.js +118 -118
  489. package/src/form/validator/scss/validator.scss +14 -14
  490. package/src/form/validator/tpl/message.tpl +1 -1
  491. package/src/form/validator/tpl/validator.tpl +1 -1
  492. package/src/form/validator/validator.js +220 -220
  493. package/src/form/widget/css/widget.css +7 -7
  494. package/src/form/widget/css/widget.css.map +1 -1
  495. package/src/form/widget/definitions.js +51 -51
  496. package/src/form/widget/loader.js +40 -40
  497. package/src/form/widget/providers/checkBox.js +138 -138
  498. package/src/form/widget/providers/comboBox.js +63 -63
  499. package/src/form/widget/providers/default.js +90 -90
  500. package/src/form/widget/providers/hidden.js +62 -62
  501. package/src/form/widget/providers/hiddenBox.js +152 -152
  502. package/src/form/widget/providers/radioBox.js +99 -99
  503. package/src/form/widget/providers/textArea.js +52 -52
  504. package/src/form/widget/providers/textBox.js +48 -48
  505. package/src/form/widget/scss/widget.scss +55 -55
  506. package/src/form/widget/tpl/checkBox.tpl +25 -25
  507. package/src/form/widget/tpl/comboBox.tpl +13 -13
  508. package/src/form/widget/tpl/hidden.tpl +1 -1
  509. package/src/form/widget/tpl/hiddenBox.tpl +17 -17
  510. package/src/form/widget/tpl/label.tpl +6 -6
  511. package/src/form/widget/tpl/radioBox.tpl +25 -25
  512. package/src/form/widget/tpl/textArea.tpl +8 -8
  513. package/src/form/widget/tpl/widget.tpl +8 -8
  514. package/src/form/widget/widget.js +372 -372
  515. package/src/form.js +47 -47
  516. package/src/formValidator/formValidator.js +253 -253
  517. package/src/formValidator/highlighters/highlighter.js +103 -103
  518. package/src/formValidator/highlighters/message.js +68 -68
  519. package/src/formValidator/highlighters/tooltip.js +78 -78
  520. package/src/generis/form/css/form.css +7 -7
  521. package/src/generis/form/css/form.css.map +1 -1
  522. package/src/generis/form/form.js +239 -239
  523. package/src/generis/form/readme.md +70 -70
  524. package/src/generis/form/scss/form.scss +23 -23
  525. package/src/generis/form/tpl/form.tpl +16 -16
  526. package/src/generis/validator/css/validator.css +7 -7
  527. package/src/generis/validator/css/validator.css.map +1 -1
  528. package/src/generis/validator/readme.md +46 -46
  529. package/src/generis/validator/scss/validator.scss +13 -13
  530. package/src/generis/validator/validator.js +128 -128
  531. package/src/generis/widget/checkBox/checkBox.js +112 -112
  532. package/src/generis/widget/checkBox/checkBox.tpl +18 -18
  533. package/src/generis/widget/comboBox/comboBox.js +66 -66
  534. package/src/generis/widget/comboBox/comboBox.tpl +12 -12
  535. package/src/generis/widget/css/widget.css +7 -7
  536. package/src/generis/widget/css/widget.css.map +1 -1
  537. package/src/generis/widget/hiddenBox/hiddenBox.js +131 -131
  538. package/src/generis/widget/hiddenBox/hiddenBox.tpl +16 -16
  539. package/src/generis/widget/loader.js +49 -49
  540. package/src/generis/widget/readme.md +59 -59
  541. package/src/generis/widget/scss/widget.scss +61 -61
  542. package/src/generis/widget/textBox/textBox.js +64 -64
  543. package/src/generis/widget/textBox/textBox.tpl +7 -7
  544. package/src/generis/widget/widget.js +164 -164
  545. package/src/generis/widget/widget.tpl +5 -5
  546. package/src/groupedComboBox.js +99 -99
  547. package/src/groupvalidator.js +84 -84
  548. package/src/hider.js +88 -88
  549. package/src/highlighter.js +1192 -1192
  550. package/src/image/ImgStateActive/extractLabel.js +29 -29
  551. package/src/image/ImgStateActive/helper.js +36 -36
  552. package/src/image/ImgStateActive/initHelper.js +137 -137
  553. package/src/image/ImgStateActive/initMediaEditor.js +92 -92
  554. package/src/image/ImgStateActive/mediaSizer.js +63 -63
  555. package/src/image/ImgStateActive.js +115 -115
  556. package/src/incrementer.js +309 -309
  557. package/src/inplacer.js +315 -315
  558. package/src/interactUtils.js +140 -140
  559. package/src/itemButtonList/css/item-button-list.css +23 -23
  560. package/src/itemButtonList/css/item-button-list.css.map +1 -1
  561. package/src/itemButtonList/scss/item-button-list.scss +236 -236
  562. package/src/itemButtonList/tpl/itemButtonList.tpl +21 -21
  563. package/src/itemButtonList.js +274 -274
  564. package/src/keyNavigation/navigableDomElement.js +285 -285
  565. package/src/keyNavigation/navigator.js +535 -535
  566. package/src/listbox/css/listbox.css +7 -7
  567. package/src/listbox/css/listbox.css.map +1 -1
  568. package/src/listbox/scss/listbox.scss +116 -116
  569. package/src/listbox/tpl/list.tpl +14 -14
  570. package/src/listbox/tpl/main.tpl +9 -9
  571. package/src/listbox.js +252 -252
  572. package/src/liststyler.js +155 -155
  573. package/src/loadingButton/css/button.css +7 -7
  574. package/src/loadingButton/css/button.css.map +1 -1
  575. package/src/loadingButton/loadingButton.js +110 -110
  576. package/src/loadingButton/scss/button.scss +41 -41
  577. package/src/loadingButton/tpl/button.tpl +5 -5
  578. package/src/lock/lock.tpl +16 -16
  579. package/src/lock.js +393 -393
  580. package/src/login/login.js +317 -317
  581. package/src/login/tpl/login.tpl +29 -29
  582. package/src/login/tpl/passwordReveal.tpl +7 -7
  583. package/src/maths/calculator/basicCalculator.js +55 -55
  584. package/src/maths/calculator/calculatorComponent.js +128 -128
  585. package/src/maths/calculator/core/areaBroker.js +38 -38
  586. package/src/maths/calculator/core/board.js +841 -841
  587. package/src/maths/calculator/core/expression.js +430 -430
  588. package/src/maths/calculator/core/labels.js +116 -116
  589. package/src/maths/calculator/core/plugin.js +40 -40
  590. package/src/maths/calculator/core/terms.js +459 -459
  591. package/src/maths/calculator/core/tokenizer.js +245 -245
  592. package/src/maths/calculator/core/tokens.js +178 -178
  593. package/src/maths/calculator/core/tpl/board.tpl +4 -4
  594. package/src/maths/calculator/css/calculator.css +7 -7
  595. package/src/maths/calculator/css/calculator.css.map +1 -1
  596. package/src/maths/calculator/defaultCalculator.js +66 -66
  597. package/src/maths/calculator/plugins/core/degrad.js +90 -90
  598. package/src/maths/calculator/plugins/core/history.js +166 -166
  599. package/src/maths/calculator/plugins/core/remind.js +96 -96
  600. package/src/maths/calculator/plugins/core/stepNavigation.js +175 -175
  601. package/src/maths/calculator/plugins/keyboard/templateKeyboard/defaultTemplate.tpl +36 -36
  602. package/src/maths/calculator/plugins/keyboard/templateKeyboard/templateKeyboard.js +91 -91
  603. package/src/maths/calculator/plugins/modifiers/pow10.js +143 -143
  604. package/src/maths/calculator/plugins/modifiers/sign.js +339 -339
  605. package/src/maths/calculator/plugins/screen/simpleScreen/defaultTemplate.tpl +3 -3
  606. package/src/maths/calculator/plugins/screen/simpleScreen/history.tpl +3 -3
  607. package/src/maths/calculator/plugins/screen/simpleScreen/simpleScreen.js +190 -190
  608. package/src/maths/calculator/pluginsLoader.js +46 -46
  609. package/src/maths/calculator/scientificCalculator.js +74 -74
  610. package/src/maths/calculator/scss/calculator.scss +396 -396
  611. package/src/maths/calculator/tpl/basicKeyboard.tpl +37 -37
  612. package/src/maths/calculator/tpl/basicScreen.tpl +2 -2
  613. package/src/maths/calculator/tpl/scientificKeyboard.tpl +61 -61
  614. package/src/maths/calculator/tpl/scientificScreen.tpl +3 -3
  615. package/src/mediaEditor/mediaEditorComponent.js +141 -141
  616. package/src/mediaEditor/plugins/mediaAlignment/helper.js +110 -110
  617. package/src/mediaEditor/plugins/mediaAlignment/mediaAlignmentComponent.js +99 -99
  618. package/src/mediaEditor/plugins/mediaAlignment/style.css +7 -7
  619. package/src/mediaEditor/plugins/mediaAlignment/tpl/mediaAlignment.tpl +25 -25
  620. package/src/mediaEditor/plugins/mediaDimension/helper.js +190 -190
  621. package/src/mediaEditor/plugins/mediaDimension/mediaDimensionComponent.js +561 -561
  622. package/src/mediaEditor/plugins/mediaDimension/style.css +141 -141
  623. package/src/mediaEditor/plugins/mediaDimension/tpl/mediaDimension.tpl +55 -55
  624. package/src/mediaEditor/tpl/editor.tpl +4 -4
  625. package/src/mediaplayer/css/player.css +7 -7
  626. package/src/mediaplayer/css/player.css.map +1 -1
  627. package/src/mediaplayer/players/html5.js +564 -564
  628. package/src/mediaplayer/players/youtube.js +323 -323
  629. package/src/mediaplayer/players.js +29 -29
  630. package/src/mediaplayer/readme.md +305 -305
  631. package/src/mediaplayer/scss/player.scss +569 -569
  632. package/src/mediaplayer/support.js +126 -126
  633. package/src/mediaplayer/tpl/audio.tpl +6 -6
  634. package/src/mediaplayer/tpl/player.tpl +37 -37
  635. package/src/mediaplayer/tpl/source.tpl +1 -1
  636. package/src/mediaplayer/tpl/video.tpl +6 -6
  637. package/src/mediaplayer/tpl/youtube.tpl +1 -1
  638. package/src/mediaplayer/utils/reminder.js +184 -184
  639. package/src/mediaplayer/utils/timeObserver.js +143 -143
  640. package/src/mediaplayer/youtubeManager.js +161 -161
  641. package/src/mediaplayer.js +1606 -1606
  642. package/src/mediasizer/mediasizer.tpl +55 -55
  643. package/src/mediasizer.js +635 -635
  644. package/src/modal.js +365 -365
  645. package/src/movableComponent.js +78 -78
  646. package/src/pageSizeSelector/tpl/pageSizeSelector.tpl +9 -9
  647. package/src/pageSizeSelector.js +106 -106
  648. package/src/pageStatus.js +147 -147
  649. package/src/pagination/css/pagination.css +7 -7
  650. package/src/pagination/css/pagination.css.map +1 -1
  651. package/src/pagination/paginationStrategy.js +53 -53
  652. package/src/pagination/providers/pages.js +161 -161
  653. package/src/pagination/providers/simple.js +74 -74
  654. package/src/pagination/providers/tpl/pages/page.tpl +1 -1
  655. package/src/pagination/providers/tpl/pages.tpl +8 -8
  656. package/src/pagination/providers/tpl/simple.tpl +7 -7
  657. package/src/pagination/scss/pagination.scss +111 -111
  658. package/src/pagination.js +237 -237
  659. package/src/previewer.js +300 -300
  660. package/src/progressbar.js +165 -165
  661. package/src/propertySelector/css/propertySelector.css +7 -7
  662. package/src/propertySelector/css/propertySelector.css.map +1 -1
  663. package/src/propertySelector/propertySelector.js +286 -286
  664. package/src/propertySelector/scss/propertySelector.scss +66 -66
  665. package/src/propertySelector/tpl/property-description.tpl +12 -12
  666. package/src/propertySelector/tpl/property-selector.tpl +6 -6
  667. package/src/report/feedback.tpl +11 -11
  668. package/src/report/layout.tpl +10 -10
  669. package/src/report.js +184 -184
  670. package/src/resource/css/selector.css +7 -7
  671. package/src/resource/css/selector.css.map +1 -1
  672. package/src/resource/filters.js +208 -208
  673. package/src/resource/list.js +200 -200
  674. package/src/resource/scss/_filters.scss +26 -26
  675. package/src/resource/scss/_resource-list.scss +107 -107
  676. package/src/resource/scss/_resource-tree.scss +205 -205
  677. package/src/resource/scss/selector.scss +187 -187
  678. package/src/resource/selectable.js +322 -322
  679. package/src/resource/selector.js +871 -871
  680. package/src/resource/tpl/filters.tpl +2 -2
  681. package/src/resource/tpl/list.tpl +7 -7
  682. package/src/resource/tpl/listNode.tpl +4 -4
  683. package/src/resource/tpl/selector.tpl +46 -46
  684. package/src/resource/tpl/tree.tpl +4 -4
  685. package/src/resource/tpl/treeNode.tpl +30 -30
  686. package/src/resource/tree.js +398 -398
  687. package/src/resourcemgr/css/resourcemgr.css +7 -7
  688. package/src/resourcemgr/css/resourcemgr.css.map +1 -1
  689. package/src/resourcemgr/fileBrowser.js +381 -381
  690. package/src/resourcemgr/filePreview.js +73 -73
  691. package/src/resourcemgr/fileSelector.js +322 -322
  692. package/src/resourcemgr/scss/resourcemgr.scss +254 -254
  693. package/src/resourcemgr/tpl/fileSelect.tpl +39 -39
  694. package/src/resourcemgr/tpl/folder.tpl +11 -11
  695. package/src/resourcemgr/tpl/layout.tpl +84 -84
  696. package/src/resourcemgr/tpl/rootFolder.tpl +13 -13
  697. package/src/resourcemgr/util/updatePermissions.js +53 -53
  698. package/src/resourcemgr.js +216 -216
  699. package/src/scroller.js +94 -94
  700. package/src/scss/basic.scss +16 -16
  701. package/src/searchModal/advancedSearch.js +638 -638
  702. package/src/searchModal/css/advancedSearch.css +7 -7
  703. package/src/searchModal/css/advancedSearch.css.map +1 -1
  704. package/src/searchModal/css/searchModal.css +7 -7
  705. package/src/searchModal/css/searchModal.css.map +1 -1
  706. package/src/searchModal/scss/advancedSearch.scss +171 -171
  707. package/src/searchModal/scss/searchModal.scss +393 -393
  708. package/src/searchModal/tpl/advanced-search.tpl +9 -9
  709. package/src/searchModal/tpl/info-message.tpl +3 -3
  710. package/src/searchModal/tpl/invalid-criteria-warning.tpl +10 -10
  711. package/src/searchModal/tpl/layout.tpl +27 -27
  712. package/src/searchModal/tpl/list-checkbox-criterion.tpl +17 -17
  713. package/src/searchModal/tpl/list-select-criterion.tpl +12 -12
  714. package/src/searchModal/tpl/text-criterion.tpl +11 -11
  715. package/src/searchModal.js +760 -760
  716. package/src/selecter.js +43 -43
  717. package/src/stacker.js +133 -133
  718. package/src/switch/css/switch.css +7 -7
  719. package/src/switch/css/switch.css.map +1 -1
  720. package/src/switch/scss/switch.scss +83 -83
  721. package/src/switch/switch.js +195 -195
  722. package/src/switch/tpl/switch.tpl +7 -7
  723. package/src/tableModel.js +112 -112
  724. package/src/tabs/css/tabs.css +12 -12
  725. package/src/tabs/css/tabs.css.map +1 -1
  726. package/src/tabs/scss/tabs.scss +50 -50
  727. package/src/tabs/tpl/panel.tpl +3 -3
  728. package/src/tabs/tpl/tabs.tpl +10 -10
  729. package/src/tabs.js +528 -528
  730. package/src/taskQueue/css/taskQueue.css +7 -7
  731. package/src/taskQueue/css/taskQueue.css.map +1 -1
  732. package/src/taskQueue/scss/taskQueue.scss +47 -47
  733. package/src/taskQueue/status.js +228 -228
  734. package/src/taskQueue/table.js +350 -350
  735. package/src/taskQueue/taskQueue.js +33 -33
  736. package/src/taskQueue/taskQueueModel.js +548 -548
  737. package/src/taskQueue/tpl/statusMessage.tpl +7 -7
  738. package/src/taskQueue.js +216 -216
  739. package/src/taskQueueButton/css/taskable.css +7 -7
  740. package/src/taskQueueButton/css/taskable.css.map +1 -1
  741. package/src/taskQueueButton/css/treeButton.css +7 -7
  742. package/src/taskQueueButton/css/treeButton.css.map +1 -1
  743. package/src/taskQueueButton/scss/taskable.scss +4 -4
  744. package/src/taskQueueButton/scss/treeButton.scss +34 -34
  745. package/src/taskQueueButton/standardButton.js +108 -108
  746. package/src/taskQueueButton/taskable.js +202 -202
  747. package/src/taskQueueButton/tpl/report.tpl +5 -5
  748. package/src/taskQueueButton/tpl/treeButton.tpl +6 -6
  749. package/src/taskQueueButton/treeButton.js +108 -108
  750. package/src/themeLoader.js +252 -252
  751. package/src/themes.js +162 -162
  752. package/src/toggler.js +200 -200
  753. package/src/tooltip/default.tpl +3 -3
  754. package/src/tooltip.js +160 -160
  755. package/src/tooltipster.js +25 -25
  756. package/src/transformer.js +327 -327
  757. package/src/tristateCheckboxGroup/css/tristateCheckboxGroup.css +7 -7
  758. package/src/tristateCheckboxGroup/css/tristateCheckboxGroup.css.map +1 -1
  759. package/src/tristateCheckboxGroup/scss/tristateCheckboxGroup.scss +15 -15
  760. package/src/tristateCheckboxGroup/tpl/li.tpl +6 -6
  761. package/src/tristateCheckboxGroup.js +207 -207
  762. package/src/uploader/fileEntry.tpl +6 -6
  763. package/src/uploader/uploader.tpl +32 -32
  764. package/src/uploader.js +594 -594
  765. package/src/validator/Report.js +10 -10
  766. package/src/validator/Validator.js +108 -108
  767. package/src/validator/validators.js +217 -217
  768. package/src/validator.js +262 -262
  769. package/src/waitForMedia.js +82 -82
  770. package/src/waitingDialog/css/waitingDialog.css +7 -7
  771. package/src/waitingDialog/css/waitingDialog.css.map +1 -1
  772. package/src/waitingDialog/scss/waitingDialog.scss +34 -34
  773. package/src/waitingDialog/waitingDialog.js +240 -240
@@ -3,47 +3,47 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
3
3
  _ = _ && Object.prototype.hasOwnProperty.call(_, 'default') ? _['default'] : _;
4
4
  $ = $ && Object.prototype.hasOwnProperty.call($, 'default') ? $['default'] : $;
5
5
 
6
- /**
7
- * This program is free software; you can redistribute it and/or
8
- * modify it under the terms of the GNU General Public License
9
- * as published by the Free Software Foundation; under version 2
10
- * of the License (non-upgradable).
11
- *
12
- * This program is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
- * GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU General Public License
18
- * along with this program; if not, write to the Free Software
19
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
- *
21
- * Copyright (c) 2016-2021 (original work) Open Assessment Technologies SA;
6
+ /**
7
+ * This program is free software; you can redistribute it and/or
8
+ * modify it under the terms of the GNU General Public License
9
+ * as published by the Free Software Foundation; under version 2
10
+ * of the License (non-upgradable).
11
+ *
12
+ * This program is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
+ * GNU General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU General Public License
18
+ * along with this program; if not, write to the Free Software
19
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20
+ *
21
+ * Copyright (c) 2016-2021 (original work) Open Assessment Technologies SA;
22
22
  */
23
23
 
24
- /**
25
- * Data attribute used to logically group the wrapping nodes into a single selection
26
- * @type {string}
24
+ /**
25
+ * Data attribute used to logically group the wrapping nodes into a single selection
26
+ * @type {string}
27
27
  */
28
28
  var GROUP_ATTR = 'data-hl-group';
29
29
 
30
- /**
31
- * Children of those nodes types cannot be highlighted
32
- * @type {string[]}
30
+ /**
31
+ * Children of those nodes types cannot be highlighted
32
+ * @type {string[]}
33
33
  */
34
34
  var defaultBlackList = ['textarea', 'math', 'script', '.select2-container'];
35
35
 
36
- /**
37
- * @param {Object} options
38
- * @param {String} options.className - name of the class that will be used by the wrappers tags to highlight text
39
- * @param {String} options.containerSelector - allows to select the root Node in which highlighting is allowed
40
- * @param {Array<String>} [options.containersBlackList] - additional blacklist selectors to be added to module instance's blacklist
41
- * @param {Array<String>} [options.containersWhiteList] - whitelist selectors; supported only in `keepEmptyNodes` mode.
42
- * Priority of blacklist or whitelist is decided by which selector is closest to the node. If no match found, node is considered whitelisted.
43
- * @param {Boolean} [options.clearOnClick] - clear single highlight node on click
44
- * @param {Object} [options.colors] - keys is keeping as the "c" value of storing/restore the highlighters for indexing, values are wrappers class names
45
- * @param {Boolean} [options.keepEmptyNodes] - retain original dom structure as far as possible and do not remove empty nodes if they were not created by highlighter
46
- * @returns {Object} - the highlighter instance
36
+ /**
37
+ * @param {Object} options
38
+ * @param {String} options.className - name of the class that will be used by the wrappers tags to highlight text
39
+ * @param {String} options.containerSelector - allows to select the root Node in which highlighting is allowed
40
+ * @param {Array<String>} [options.containersBlackList] - additional blacklist selectors to be added to module instance's blacklist
41
+ * @param {Array<String>} [options.containersWhiteList] - whitelist selectors; supported only in `keepEmptyNodes` mode.
42
+ * Priority of blacklist or whitelist is decided by which selector is closest to the node. If no match found, node is considered whitelisted.
43
+ * @param {Boolean} [options.clearOnClick] - clear single highlight node on click
44
+ * @param {Object} [options.colors] - keys is keeping as the "c" value of storing/restore the highlighters for indexing, values are wrappers class names
45
+ * @param {Boolean} [options.keepEmptyNodes] - retain original dom structure as far as possible and do not remove empty nodes if they were not created by highlighter
46
+ * @returns {Object} - the highlighter instance
47
47
  */
48
48
  function highlighter (options) {
49
49
  var className = options.className;
@@ -56,10 +56,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
56
56
  highlightingClasses = Object.values(options.colors);
57
57
  }
58
58
 
59
- /**
60
- * list of node selectors which should NOT receive any highlighting from this instance
61
- * an optional passed-in blacklist is merged with local defaults
62
- * @type {Array}
59
+ /**
60
+ * list of node selectors which should NOT receive any highlighting from this instance
61
+ * an optional passed-in blacklist is merged with local defaults
62
+ * @type {Array}
63
63
  */
64
64
  const containersBlackList = _.union(defaultBlackList, options.containersBlackList);
65
65
  const containersBlackListSelector = containersBlackList.join(', ');
@@ -70,63 +70,63 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
70
70
  containersBlackAndWhiteListSelector = _.union(containersBlackList, options.containersWhiteList).join(', ');
71
71
  }
72
72
 
73
- /**
74
- * used in recursive loops to decide if we should wrap or not the current node
75
- * @type {boolean}
73
+ /**
74
+ * used in recursive loops to decide if we should wrap or not the current node
75
+ * @type {boolean}
76
76
  */
77
77
  let isWrapping = false;
78
78
 
79
- /**
80
- * performance improvement to break out of a potentially big recursive loop once the wrapping has ended
81
- * @type {boolean}
79
+ /**
80
+ * performance improvement to break out of a potentially big recursive loop once the wrapping has ended
81
+ * @type {boolean}
82
82
  */
83
83
  let hasWrapped = false;
84
84
 
85
- /**
86
- * used in recursive loops to assign a group Id to the current wrapped node
87
- * @type {number}
85
+ /**
86
+ * used in recursive loops to assign a group Id to the current wrapped node
87
+ * @type {number}
88
88
  */
89
89
  let currentGroupId;
90
90
 
91
- /**
92
- * used in recursive loops to build the index of text nodes
93
- * @type {number}
91
+ /**
92
+ * used in recursive loops to build the index of text nodes
93
+ * @type {number}
94
94
  */
95
95
  let textNodesIndex;
96
96
 
97
- /**
98
- * Returns the node in which highlighting is allowed
99
- * @returns {Element}
97
+ /**
98
+ * Returns the node in which highlighting is allowed
99
+ * @returns {Element}
100
100
  */
101
101
  function getContainer() {
102
102
  return $(containerSelector).get(0);
103
103
  }
104
104
 
105
- /**
106
- * Returns all highlighted nodes, excluding any inside blacklisted elements
107
- * @returns {JQuery<HTMLElement>}
105
+ /**
106
+ * Returns all highlighted nodes, excluding any inside blacklisted elements
107
+ * @returns {JQuery<HTMLElement>}
108
108
  */
109
109
  function getHighlightedNodes() {
110
110
  return $(containerSelector).find(`.${highlightingClasses.join(',.')}`).filter((i, node) => !isBlacklisted(node));
111
111
  }
112
112
 
113
- /**
114
- * Attach data to wrapper node.
115
- * Use it when deleting this highlight to know if highlight content should be merged with neighbour text nodes or not.
116
- * Use it when building/restoring index to know if restored highlight content should be split off neighbour text node or not.
117
- * Needed to keep markup the same as it was before highlighting.
118
- * @param {HTMLElement} node
119
- * @param {Boolean} beforeWasSplit
120
- * @param {Boolean} afterWasSplit
113
+ /**
114
+ * Attach data to wrapper node.
115
+ * Use it when deleting this highlight to know if highlight content should be merged with neighbour text nodes or not.
116
+ * Use it when building/restoring index to know if restored highlight content should be split off neighbour text node or not.
117
+ * Needed to keep markup the same as it was before highlighting.
118
+ * @param {HTMLElement} node
119
+ * @param {Boolean} beforeWasSplit
120
+ * @param {Boolean} afterWasSplit
121
121
  */
122
122
  function addSplitData(node, beforeWasSplit, afterWasSplit) {
123
123
  node.dataset.beforeWasSplit = beforeWasSplit;
124
124
  node.dataset.afterWasSplit = afterWasSplit;
125
125
  }
126
126
 
127
- /**
128
- * Highlight all text nodes within each given range
129
- * @param {Range[]} ranges - array of ranges to highlight, may be given by the helper selector.getAllRanges()
127
+ /**
128
+ * Highlight all text nodes within each given range
129
+ * @param {Range[]} ranges - array of ranges to highlight, may be given by the helper selector.getAllRanges()
130
130
  */
131
131
  function highlightRanges(ranges) {
132
132
  ranges.forEach(function (range) {
@@ -178,10 +178,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
178
178
  }
179
179
  }
180
180
 
181
- /**
182
- * Check if a range is valid
183
- * @param {Range} range
184
- * @returns {boolean}
181
+ /**
182
+ * Check if a range is valid
183
+ * @param {Range} range
184
+ * @returns {boolean}
185
185
  */
186
186
  function isRangeValid(range) {
187
187
  var rangeInContainer;
@@ -193,18 +193,18 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
193
193
  }
194
194
  }
195
195
 
196
- /**
197
- * Core wrapping function. Traverse the DOM tree and highlight (= wraps) all text nodes within the given range.
198
- * Recursive.
199
- *
200
- * @param {Node} rootNode - top of the node hierarchy in which text nodes will be searched
201
- * @param {Object} rangeInfos
202
- * @param {Node} rangeInfos.startNode - node on which the selection starts
203
- * @param {Node} rangeInfos.startNodeContainer - container of the startNode, or the start node itself in case of text nodes
204
- * @param {number} rangeInfos.startOffset - same as range.startOffset, but not read-only to allow override
205
- * @param {Node} rangeInfos.endNode - node on which the selection ends
206
- * @param {Node} rangeInfos.endNodeContainer - container of the endNode, or the end node itself in case of text nodes
207
- * @param {number} rangeInfos.endOffset - same as range.endOffset, but not read-only to allow override
196
+ /**
197
+ * Core wrapping function. Traverse the DOM tree and highlight (= wraps) all text nodes within the given range.
198
+ * Recursive.
199
+ *
200
+ * @param {Node} rootNode - top of the node hierarchy in which text nodes will be searched
201
+ * @param {Object} rangeInfos
202
+ * @param {Node} rangeInfos.startNode - node on which the selection starts
203
+ * @param {Node} rangeInfos.startNodeContainer - container of the startNode, or the start node itself in case of text nodes
204
+ * @param {number} rangeInfos.startOffset - same as range.startOffset, but not read-only to allow override
205
+ * @param {Node} rangeInfos.endNode - node on which the selection ends
206
+ * @param {Node} rangeInfos.endNodeContainer - container of the endNode, or the end node itself in case of text nodes
207
+ * @param {number} rangeInfos.endOffset - same as range.endOffset, but not read-only to allow override
208
208
  */
209
209
  function wrapTextNodesInRange(rootNode, rangeInfos) {
210
210
  var childNodes = rootNode.childNodes;
@@ -315,12 +315,12 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
315
315
  }
316
316
  }
317
317
 
318
- /**
319
- * Restructure content of the highlighted wrapper according to the selectedRange
320
- * @param {Node} textNode
321
- * @param {string} activeClass
322
- * @param {Range} selectedRange
323
- * @param {number} groupId
318
+ /**
319
+ * Restructure content of the highlighted wrapper according to the selectedRange
320
+ * @param {Node} textNode
321
+ * @param {string} activeClass
322
+ * @param {Range} selectedRange
323
+ * @param {number} groupId
324
324
  */
325
325
  function highlightContainerNodes(textNode, activeClass, selectedRange, groupId) {
326
326
  const container = textNode.parentNode;
@@ -329,46 +329,46 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
329
329
  const isSelectionCoversNodeStart = range.compareBoundaryPoints(Range.START_TO_START, selectedRange) === 0;
330
330
  const isSelectionCoversNodeEnd = range.compareBoundaryPoints(Range.END_TO_END, selectedRange) === 0;
331
331
 
332
- /*
333
- There are 4 possible cases selected area is intersected with already highlighted element.
334
- In examples below the border is represents the selection, "yellow" is class name of already highlighted
335
- container, "red" is class name of currently active highlighter
336
- **********************************************************************************************************
337
- 1. The container content is completely selected, so that we only have to change the highlighter class name
338
- Input:
339
- __________________________________________________
340
- | |
341
- |<span class="yellow"> Lorem ipsum dolor sit</span>|
342
- |__________________________________________________|
343
- Output:
344
- <span class="red"> Lorem ipsum dolor sit</span>
345
- **********************************************************************************************************
346
- 2. The container content is partially selected from the begging.
347
- Input:
348
- ______________________________
349
- | |
350
- |<span class="yellow"> Lorem ip|sum dolor sit</span>
351
- |______________________________|
352
- Output:
353
- <span class="red"> Lorem ip</span><span class="yellow">sum dolor sit</span>
354
- **********************************************************************************************************
355
- 3. The container content is partially selected at the end.
356
- Input:
357
- ____________________
358
- | |
359
- <span class="yellow"> Lorem ip|sum dolor sit</span>|
360
- |____________________|
361
- Output:
362
- <span class="yellow"> Lorem ip</span><span class="red">sum dolor sit</span>
363
- **********************************************************************************************************
364
- 4. The container content is partially selected in the middle.
365
- Input:
366
- ___________
367
- | |
368
- <span class="yellow"> Lorem |ipsum dolor| sit</span>
369
- |___________|
370
- Output:
371
- <span class="yellow"> Lorem </span><span class="red">ipsum dolor</span><span class="yellow"> sit</span>
332
+ /*
333
+ There are 4 possible cases selected area is intersected with already highlighted element.
334
+ In examples below the border is represents the selection, "yellow" is class name of already highlighted
335
+ container, "red" is class name of currently active highlighter
336
+ **********************************************************************************************************
337
+ 1. The container content is completely selected, so that we only have to change the highlighter class name
338
+ Input:
339
+ __________________________________________________
340
+ | |
341
+ |<span class="yellow"> Lorem ipsum dolor sit</span>|
342
+ |__________________________________________________|
343
+ Output:
344
+ <span class="red"> Lorem ipsum dolor sit</span>
345
+ **********************************************************************************************************
346
+ 2. The container content is partially selected from the begging.
347
+ Input:
348
+ ______________________________
349
+ | |
350
+ |<span class="yellow"> Lorem ip|sum dolor sit</span>
351
+ |______________________________|
352
+ Output:
353
+ <span class="red"> Lorem ip</span><span class="yellow">sum dolor sit</span>
354
+ **********************************************************************************************************
355
+ 3. The container content is partially selected at the end.
356
+ Input:
357
+ ____________________
358
+ | |
359
+ <span class="yellow"> Lorem ip|sum dolor sit</span>|
360
+ |____________________|
361
+ Output:
362
+ <span class="yellow"> Lorem ip</span><span class="red">sum dolor sit</span>
363
+ **********************************************************************************************************
364
+ 4. The container content is partially selected in the middle.
365
+ Input:
366
+ ___________
367
+ | |
368
+ <span class="yellow"> Lorem |ipsum dolor| sit</span>
369
+ |___________|
370
+ Output:
371
+ <span class="yellow"> Lorem </span><span class="red">ipsum dolor</span><span class="yellow"> sit</span>
372
372
  */
373
373
  if (isSelectionCoversNodeStart && isSelectionCoversNodeEnd) {
374
374
  textNode.parentNode.className = activeClass;
@@ -384,13 +384,13 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
384
384
  }
385
385
  }
386
386
 
387
- /**
388
- * Wraps all containers text nodes with highlighter element.
389
- * The child node with index given by indexToWrapNode parameter will be wrap with class given by activeClass parameter
390
- * @param {Element} container
391
- * @param {number} indexToWrapNode
392
- * @param {string} activeClass
393
- * @param {number} groupId
387
+ /**
388
+ * Wraps all containers text nodes with highlighter element.
389
+ * The child node with index given by indexToWrapNode parameter will be wrap with class given by activeClass parameter
390
+ * @param {Element} container
391
+ * @param {number} indexToWrapNode
392
+ * @param {string} activeClass
393
+ * @param {number} groupId
394
394
  */
395
395
  function wrapContainerChildNodes(container, indexToWrapNode, activeClass, groupId) {
396
396
  const containerClass = container.className;
@@ -411,11 +411,11 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
411
411
  container.replaceWith(fragment);
412
412
  }
413
413
 
414
- /**
415
- * wraps a text node into the highlight span
416
- * @param {Node} node - the node to wrap
417
- * @param {number} groupId - the highlight group
418
- * @returns {Node|null} wrapper node, if it was created
414
+ /**
415
+ * wraps a text node into the highlight span
416
+ * @param {Node} node - the node to wrap
417
+ * @param {number} groupId - the highlight group
418
+ * @returns {Node|null} wrapper node, if it was created
419
419
  */
420
420
  function wrapTextNode(node, groupId) {
421
421
  if (isWrapping && !isWrappingNode(node.parentNode) && isWrappable(node)) {
@@ -425,11 +425,11 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
425
425
  return null;
426
426
  }
427
427
 
428
- /**
429
- * We need to re-index the groups after a user highlight: either to merge groups or to resolve inconsistencies
430
- * Recursive.
431
- *
432
- * @param {Node} rootNode
428
+ /**
429
+ * We need to re-index the groups after a user highlight: either to merge groups or to resolve inconsistencies
430
+ * Recursive.
431
+ *
432
+ * @param {Node} rootNode
433
433
  */
434
434
  function reindexGroups(rootNode) {
435
435
  if (!rootNode) {
@@ -456,10 +456,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
456
456
  }
457
457
  }
458
458
 
459
- /**
460
- * Some highlights may result in having adjacent wrapping nodes. We remove them here to get a cleaner markup.
461
- *
462
- * @param {Node} rootNode
459
+ /**
460
+ * Some highlights may result in having adjacent wrapping nodes. We remove them here to get a cleaner markup.
461
+ *
462
+ * @param {Node} rootNode
463
463
  */
464
464
  function mergeAdjacentWrappingNodes(rootNode) {
465
465
  if (!rootNode) {
@@ -489,8 +489,8 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
489
489
  }
490
490
  }
491
491
 
492
- /**
493
- * Unwraps highlighted nodes with a line break or with an empty content
492
+ /**
493
+ * Unwraps highlighted nodes with a line break or with an empty content
494
494
  */
495
495
  function unWrapEmptyHighlights() {
496
496
  getHighlightedNodes().each((index, node) => {
@@ -505,13 +505,13 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
505
505
  });
506
506
  }
507
507
 
508
- /**
509
- * Check condition to avoid the work of `unwrapEmptyHighlights` ahead of time, before `mergeAdjacentNodes` runs,
510
- * because in `keepEmptyNodes` case we do not want to add nodes to dom unless necessary.
511
- * Also be more strict and don't allow to select nodes with spaces only, because they may appear in unexpected places in markup
512
- * (here it's not exactly same as `unwrapEmptyHighlights`).
513
- * @param {Node} node - node which will be wrapped (highlighted)
514
- * @returns {Boolean}
508
+ /**
509
+ * Check condition to avoid the work of `unwrapEmptyHighlights` ahead of time, before `mergeAdjacentNodes` runs,
510
+ * because in `keepEmptyNodes` case we do not want to add nodes to dom unless necessary.
511
+ * Also be more strict and don't allow to select nodes with spaces only, because they may appear in unexpected places in markup
512
+ * (here it's not exactly same as `unwrapEmptyHighlights`).
513
+ * @param {Node} node - node which will be wrapped (highlighted)
514
+ * @returns {Boolean}
515
515
  */
516
516
  function willHighlightNotBeEmptyAfterMerge(node) {
517
517
  if (!node.textContent.length) {
@@ -533,12 +533,12 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
533
533
  return false;
534
534
  }
535
535
 
536
- /**
537
- * `range.surroundContents` can create empty text nodes,
538
- * which will cause trouble in `mergeAdjacentNodes` later (in `keepEmptyNodes` case).
539
- * This method surrounds range, then removes those nodes
540
- * @param {Range} range
541
- * @param {Node} wrapperNode
536
+ /**
537
+ * `range.surroundContents` can create empty text nodes,
538
+ * which will cause trouble in `mergeAdjacentNodes` later (in `keepEmptyNodes` case).
539
+ * This method surrounds range, then removes those nodes
540
+ * @param {Range} range
541
+ * @param {Node} wrapperNode
542
542
  */
543
543
  function rangeSurroundContentsNoEmptyNodes(range, wrapperNode) {
544
544
  const containerPreviousSibling = range.commonAncestorContainer.previousSibling;
@@ -548,10 +548,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
548
548
  removeEmptyTextNodeIfDifferent(wrapperNode.nextSibling, containerNextSibling);
549
549
  }
550
550
 
551
- /**
552
- * Remove `node`, if it's an empty text node and is *not* the same node as `nodeToCompare`
553
- * @param {Node} node
554
- * @param {Node} nodeToCompare
551
+ /**
552
+ * Remove `node`, if it's an empty text node and is *not* the same node as `nodeToCompare`
553
+ * @param {Node} node
554
+ * @param {Node} nodeToCompare
555
555
  */
556
556
  function removeEmptyTextNodeIfDifferent(node, nodeToCompare) {
557
557
  if (node && node !== nodeToCompare && isText(node) && node.textContent.length === 0) {
@@ -559,8 +559,8 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
559
559
  }
560
560
  }
561
561
 
562
- /**
563
- * Remove all wrapping nodes from markup
562
+ /**
563
+ * Remove all wrapping nodes from markup
564
564
  */
565
565
  function clearHighlights() {
566
566
  getHighlightedNodes().each(function (i, elem) {
@@ -575,8 +575,8 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
575
575
  });
576
576
  }
577
577
 
578
- /**
579
- * Remove unwrap dom node
578
+ /**
579
+ * Remove unwrap dom node
580
580
  */
581
581
  function clearSingleHighlight(e) {
582
582
  if (!keepEmptyNodes) {
@@ -619,21 +619,21 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
619
619
  }
620
620
  }
621
621
 
622
- /**
623
- * Index-related functions:
624
- * ========================
625
- * To allow saving and restoring highlights on an equivalent, but different, DOM tree (for example if the markup is deleted and re-created)
626
- * we build an index containing the status of each text node:
627
- * - not highlighted
628
- * - fully highlighted
629
- * - partially highlighted (= with inline ranges)
630
- *
631
- * This index will be used to restore a selection on the new DOM tree
622
+ /**
623
+ * Index-related functions:
624
+ * ========================
625
+ * To allow saving and restoring highlights on an equivalent, but different, DOM tree (for example if the markup is deleted and re-created)
626
+ * we build an index containing the status of each text node:
627
+ * - not highlighted
628
+ * - fully highlighted
629
+ * - partially highlighted (= with inline ranges)
630
+ *
631
+ * This index will be used to restore a selection on the new DOM tree
632
632
  */
633
633
 
634
- /**
635
- * Bootstrap the process of building the highlight index
636
- * @returns {Object[]|BuildModelResultKeepEmpty|null}
634
+ /**
635
+ * Bootstrap the process of building the highlight index
636
+ * @returns {Object[]|BuildModelResultKeepEmpty|null}
637
637
  */
638
638
  function getHighlightIndex() {
639
639
  var rootNode = getContainer();
@@ -654,10 +654,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
654
654
  }
655
655
  }
656
656
 
657
- /**
658
- * Traverse the DOM tree to create the text Nodes index. Recursive.
659
- * @param {Node} rootNode
660
- * @param {Object[]} highlightIndex
657
+ /**
658
+ * Traverse the DOM tree to create the text Nodes index. Recursive.
659
+ * @param {Node} rootNode
660
+ * @param {Object[]} highlightIndex
661
661
  */
662
662
  function buildHighlightIndex(rootNode, highlightIndex) {
663
663
  const childNodes = rootNode.childNodes;
@@ -726,26 +726,26 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
726
726
  }
727
727
  }
728
728
 
729
- /**
730
- * @typedef HighlightEntryKeepEmpty
731
- * @property {String} groupId
732
- * @property {String} c - color
733
- * @property {Number} offsetBefore
734
- * @property {Number} textLength
735
- * @property {String} beforeWasSplit
736
- * @property {String} afterWasSplit
737
- * @property {Array<Number>} path - on each level from root container to highlight, index among siblings
729
+ /**
730
+ * @typedef HighlightEntryKeepEmpty
731
+ * @property {String} groupId
732
+ * @property {String} c - color
733
+ * @property {Number} offsetBefore
734
+ * @property {Number} textLength
735
+ * @property {String} beforeWasSplit
736
+ * @property {String} afterWasSplit
737
+ * @property {Array<Number>} path - on each level from root container to highlight, index among siblings
738
738
  */
739
- /**
740
- * @typedef BuildModelResultKeepEmpty
741
- * @property {HighlightEntryKeepEmpty[]} highlightModel
742
- * @property {NodeList} wrapperNodes
739
+ /**
740
+ * @typedef BuildModelResultKeepEmpty
741
+ * @property {HighlightEntryKeepEmpty[]} highlightModel
742
+ * @property {NodeList} wrapperNodes
743
743
  */
744
- /**
745
- * For `keepEmptyNodes` option, creates data model of highlights.
746
- * Additionally returns array of highlight nodes. Traverses DOM tree.
747
- * @param {Node} rootNode
748
- * @returns {BuildModelResultKeepEmpty|null} result
744
+ /**
745
+ * For `keepEmptyNodes` option, creates data model of highlights.
746
+ * Additionally returns array of highlight nodes. Traverses DOM tree.
747
+ * @param {Node} rootNode
748
+ * @returns {BuildModelResultKeepEmpty|null} result
749
749
  */
750
750
  function buildHighlightModelKeepEmpty(rootNode) {
751
751
  const classNames = options.colors ? Object.values(options.colors) : [className];
@@ -802,9 +802,9 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
802
802
  };
803
803
  }
804
804
 
805
- /**
806
- * Bootstrap the process of restoring the highlights from an index
807
- * @param {Object[]|HighlightEntryKeepEmpty[]|null} highlightIndex
805
+ /**
806
+ * Bootstrap the process of restoring the highlights from an index
807
+ * @param {Object[]|HighlightEntryKeepEmpty[]|null} highlightIndex
808
808
  */
809
809
  function highlightFromIndex(highlightIndex) {
810
810
  var rootNode = getContainer();
@@ -819,10 +819,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
819
819
  }
820
820
  }
821
821
 
822
- /**
823
- * Traverse the DOM tree to wraps the text nodes according to the highlight index. Recursive.
824
- * @param {Node} rootNode
825
- * @param {Object[]} highlightIndex
822
+ /**
823
+ * Traverse the DOM tree to wraps the text nodes according to the highlight index. Recursive.
824
+ * @param {Node} rootNode
825
+ * @param {Object[]} highlightIndex
826
826
  */
827
827
  function restoreHighlight(rootNode, highlightIndex) {
828
828
  var childNodes = rootNode.childNodes;
@@ -863,11 +863,11 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
863
863
  }
864
864
  }
865
865
 
866
- /**
867
- * For `keepEmptyNodes` option, wraps the text nodes according to highlights data model.
868
- * Traverses and updates DOM tree. Shouldn't throw errors in case of mismatches.
869
- * @param {Node} rootNode
870
- * @param {HighlightEntryKeepEmpty[]|null} highlightModel
866
+ /**
867
+ * For `keepEmptyNodes` option, wraps the text nodes according to highlights data model.
868
+ * Traverses and updates DOM tree. Shouldn't throw errors in case of mismatches.
869
+ * @param {Node} rootNode
870
+ * @param {HighlightEntryKeepEmpty[]|null} highlightModel
871
871
  */
872
872
  function restoreHighlightKeepEmpty(rootNode, highlightModel) {
873
873
  if (!highlightModel) {
@@ -933,9 +933,9 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
933
933
  }
934
934
  }
935
935
 
936
- /**
937
- * Set highlighter color
938
- * @param {string} color Active highlighter color
936
+ /**
937
+ * Set highlighter color
938
+ * @param {string} color Active highlighter color
939
939
  */
940
940
  function setActiveColor(color) {
941
941
  if (options.colors[color]) {
@@ -943,24 +943,24 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
943
943
  }
944
944
  }
945
945
 
946
- /**
947
- * Helpers
946
+ /**
947
+ * Helpers
948
948
  */
949
949
 
950
- /**
951
- * Return the object key contains the given value
952
- * @param {Object} object
953
- * @param {any} value
954
- * @return {string|undefined}
950
+ /**
951
+ * Return the object key contains the given value
952
+ * @param {Object} object
953
+ * @param {any} value
954
+ * @return {string|undefined}
955
955
  */
956
956
  function getKeyByValue(object, value) {
957
957
  return Object.keys(object).find(key => object[key] === value);
958
958
  }
959
959
 
960
- /**
961
- * Returns color identifier for the given class name
962
- * @param {string} highlighterClassName Class name of highlighter classes
963
- * @returns {string|number} Color identifier
960
+ /**
961
+ * Returns color identifier for the given class name
962
+ * @param {string} highlighterClassName Class name of highlighter classes
963
+ * @returns {string|number} Color identifier
964
964
  */
965
965
  function getColorByClassName(highlighterClassName) {
966
966
  if (options.colors) {
@@ -969,10 +969,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
969
969
  return className;
970
970
  }
971
971
 
972
- /**
973
- * Returns class name for the given color identifier
974
- * @param {string|number} color Color identifier
975
- * @returns {string} Class name
972
+ /**
973
+ * Returns class name for the given color identifier
974
+ * @param {string|number} color Color identifier
975
+ * @returns {string} Class name
976
976
  */
977
977
  function getClassNameByColor(color) {
978
978
  if (options.colors && options.colors[color]) {
@@ -981,31 +981,31 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
981
981
  return className;
982
982
  }
983
983
 
984
- /**
985
- * Check if the given node is a wrapper
986
- * @param {Node|Element} node
987
- * @returns {boolean}
984
+ /**
985
+ * Check if the given node is a wrapper
986
+ * @param {Node|Element} node
987
+ * @returns {boolean}
988
988
  */
989
989
  function isWrappingNode(node) {
990
990
  return isElement(node) && node.tagName.toLowerCase() === 'span' && highlightingClasses.includes(node.className);
991
991
  }
992
992
 
993
- /**
994
- * Check if the given node can be wrapped
995
- * @param {Node} node
996
- * @returns {boolean}
993
+ /**
994
+ * Check if the given node can be wrapped
995
+ * @param {Node} node
996
+ * @returns {boolean}
997
997
  */
998
998
  function isWrappable(node) {
999
999
  return isText(node) && !isBlacklisted(node);
1000
1000
  }
1001
1001
 
1002
- /**
1003
- * Check if the given node is, or is within, a blacklisted container.
1004
- * With `keepEmptyNodes` option, node inside blacklisted container can be whitelisted too.
1005
- * Priority of blacklist or whitelist is decided by which selector is closest to the node.
1006
- * If no match found, node is considered whitelisted.
1007
- * @param {Node} node
1008
- * @returns {boolean}
1002
+ /**
1003
+ * Check if the given node is, or is within, a blacklisted container.
1004
+ * With `keepEmptyNodes` option, node inside blacklisted container can be whitelisted too.
1005
+ * Priority of blacklist or whitelist is decided by which selector is closest to the node.
1006
+ * If no match found, node is considered whitelisted.
1007
+ * @param {Node} node
1008
+ * @returns {boolean}
1009
1009
  */
1010
1010
  function isBlacklisted(node) {
1011
1011
  const closest = $(node).closest(containersBlackAndWhiteListSelector);
@@ -1018,11 +1018,11 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
1018
1018
  }
1019
1019
  }
1020
1020
 
1021
- /**
1022
- * Wraps text node to the highlighter wrapper element
1023
- * @param {Node} textNode Text node to wrap
1024
- * @param {string} wrapperClassName Wrapper class name
1025
- * @param {number} groupId Group id
1021
+ /**
1022
+ * Wraps text node to the highlighter wrapper element
1023
+ * @param {Node} textNode Text node to wrap
1024
+ * @param {string} wrapperClassName Wrapper class name
1025
+ * @param {number} groupId Group id
1026
1026
  */
1027
1027
  function wrapNode(textNode, wrapperClassName, groupId) {
1028
1028
  const element = getWrapper(groupId, wrapperClassName);
@@ -1030,10 +1030,10 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
1030
1030
  return element;
1031
1031
  }
1032
1032
 
1033
- /**
1034
- * Create a wrapping node
1035
- * @param {number} groupId
1036
- * @returns {Element}
1033
+ /**
1034
+ * Create a wrapping node
1035
+ * @param {number} groupId
1036
+ * @returns {Element}
1037
1037
  */
1038
1038
  function getWrapper(groupId, wrapperClass) {
1039
1039
  const wrapper = document.createElement('span');
@@ -1042,9 +1042,9 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
1042
1042
  return wrapper;
1043
1043
  }
1044
1044
 
1045
- /**
1046
- * Returns the first unused group Id
1047
- * @returns {number}
1045
+ /**
1046
+ * Returns the first unused group Id
1047
+ * @returns {number}
1048
1048
  */
1049
1049
  function getAvailableGroupId() {
1050
1050
  var id = currentGroupId || 1;
@@ -1054,35 +1054,35 @@ define(['lodash', 'jquery'], function (_, $) { 'use strict';
1054
1054
  return id;
1055
1055
  }
1056
1056
 
1057
- /**
1058
- * Check if the given node is an element
1059
- * @param {Node} node
1060
- * @returns {boolean}
1057
+ /**
1058
+ * Check if the given node is an element
1059
+ * @param {Node} node
1060
+ * @returns {boolean}
1061
1061
  */
1062
1062
  function isElement(node) {
1063
1063
  return node && typeof node === 'object' && node.nodeType === window.Node.ELEMENT_NODE;
1064
1064
  }
1065
1065
 
1066
- /**
1067
- * Check if the given node is of type text
1068
- * @param {Node} node
1069
- * @returns {boolean}
1066
+ /**
1067
+ * Check if the given node is of type text
1068
+ * @param {Node} node
1069
+ * @returns {boolean}
1070
1070
  */
1071
1071
  function isText(node) {
1072
1072
  return node && typeof node === 'object' && node.nodeType === window.Node.TEXT_NODE;
1073
1073
  }
1074
1074
 
1075
- /**
1076
- * a "Hot Node" is either wrappable text node or a wrapper
1077
- * @param {Node} node
1078
- * @returns {boolean}
1075
+ /**
1076
+ * a "Hot Node" is either wrappable text node or a wrapper
1077
+ * @param {Node} node
1078
+ * @returns {boolean}
1079
1079
  */
1080
1080
  function isHotNode(node) {
1081
1081
  return isWrappingNode(node) || isWrappable(node);
1082
1082
  }
1083
1083
 
1084
- /**
1085
- * Public API of the highlighter helper
1084
+ /**
1085
+ * Public API of the highlighter helper
1086
1086
  */
1087
1087
  return {
1088
1088
  highlightRanges: highlightRanges,