@oracle/oraclejet 11.0.6 → 11.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (934) hide show
  1. package/README.md +4 -4
  2. package/THIRDPARTYLICENSE.txt +7 -7
  3. package/dist/css/alta/oj-alta-min.css +1 -1
  4. package/dist/css/alta/oj-alta-notag-min.css +1 -1
  5. package/dist/css/alta/oj-alta-notag.css +5 -3
  6. package/dist/css/alta/oj-alta.css +5 -3
  7. package/dist/css/alta-android/oj-alta-min.css +1 -1
  8. package/dist/css/alta-android/oj-alta.css +5 -3
  9. package/dist/css/alta-ios/oj-alta-min.css +1 -1
  10. package/dist/css/alta-ios/oj-alta.css +5 -3
  11. package/dist/css/alta-windows/oj-alta-min.css +1 -1
  12. package/dist/css/alta-windows/oj-alta.css +5 -3
  13. package/dist/css/redwood/images/texture-dialog-144x20-opacity-08.png +0 -0
  14. package/dist/css/redwood/oj-redwood-min.css +1 -1
  15. package/dist/css/redwood/oj-redwood-notag-min.css +1 -1
  16. package/dist/css/redwood/oj-redwood-notag-novars-min.css +1 -1
  17. package/dist/css/redwood/oj-redwood-notag-novars.css +95 -58
  18. package/dist/css/redwood/oj-redwood-notag.css +109 -64
  19. package/dist/css/redwood/oj-redwood-novars-min.css +1 -1
  20. package/dist/css/redwood/oj-redwood-novars.css +95 -58
  21. package/dist/css/redwood/oj-redwood.css +109 -64
  22. package/dist/css/stable/oj-stable-min.css +1 -1
  23. package/dist/css/stable/oj-stable.css +103 -58
  24. package/dist/custom-tsc/JetTypeGenerator.js +14 -1
  25. package/dist/custom-tsc/metadataTransformer.js +14 -0
  26. package/dist/custom-tsc/templates/container.tmpl +14 -2
  27. package/dist/custom-tsc/templates/properties.tmpl +3 -3
  28. package/dist/custom-tsc/utils/MetadataEventUtils.js +28 -16
  29. package/dist/custom-tsc/utils/MetadataPropertyUtils.js +37 -10
  30. package/dist/custom-tsc/utils/MetadataSlotUtils.js +4 -5
  31. package/dist/custom-tsc/utils/MetadataTypeUtils.js +21 -14
  32. package/dist/custom-tsc/utils/MetadataTypes.d.ts +12 -0
  33. package/dist/custom-tsc/utils/MetadataUtils.d.ts +7 -2
  34. package/dist/custom-tsc/utils/MetadataUtils.js +214 -28
  35. package/dist/js/libs/oj/debug/ojarraydataprovider.js +58 -1
  36. package/dist/js/libs/oj/debug/ojbufferingdataprovider.js +19 -20
  37. package/dist/js/libs/oj/debug/ojchart-toolkit.js +7 -1
  38. package/dist/js/libs/oj/debug/ojchart.js +22 -16
  39. package/dist/js/libs/oj/debug/ojcheckboxset.js +10 -2
  40. package/dist/js/libs/oj/debug/ojcomponentcore.js +15 -2
  41. package/dist/js/libs/oj/debug/ojconfig.js +1 -1
  42. package/dist/js/libs/oj/debug/ojcontext.js +27 -10
  43. package/dist/js/libs/oj/debug/ojcore-base.js +16 -5
  44. package/dist/js/libs/oj/debug/ojdatagrid.js +99 -39
  45. package/dist/js/libs/oj/debug/ojdataprovider.js +18 -0
  46. package/dist/js/libs/oj/debug/ojdiagram.js +6 -6
  47. package/dist/js/libs/oj/debug/ojdrawerlayout.js +17 -8
  48. package/dist/js/libs/oj/debug/ojdrawerpopup.js +13 -2
  49. package/dist/js/libs/oj/debug/ojdvt-toolkit.js +11 -3
  50. package/dist/js/libs/oj/debug/ojdvttimecomponentscale.js +16 -0
  51. package/dist/js/libs/oj/debug/ojeditablevalue.js +48 -2
  52. package/dist/js/libs/oj/debug/ojgantt-toolkit.js +324 -142
  53. package/dist/js/libs/oj/debug/ojgantt.js +21 -11
  54. package/dist/js/libs/oj/debug/ojgauge.js +11 -11
  55. package/dist/js/libs/oj/debug/ojinputsearch.js +12 -0
  56. package/dist/js/libs/oj/debug/ojinputtext.js +16 -2
  57. package/dist/js/libs/oj/debug/ojlegend.js +12 -7
  58. package/dist/js/libs/oj/debug/ojlistview.js +13 -4
  59. package/dist/js/libs/oj/debug/ojmenu.js +5 -2
  60. package/dist/js/libs/oj/debug/ojmutablearraydataprovider.js +76 -19
  61. package/dist/js/libs/oj/debug/ojnbox.js +22 -22
  62. package/dist/js/libs/oj/debug/ojpictochart.js +2 -2
  63. package/dist/js/libs/oj/debug/ojpopupcore.js +3 -1
  64. package/dist/js/libs/oj/debug/ojpulltorefresh.js +7 -3
  65. package/dist/js/libs/oj/debug/ojradioset.js +11 -2
  66. package/dist/js/libs/oj/debug/ojrestdataprovider.js +41 -19
  67. package/dist/js/libs/oj/debug/ojresttreedataprovider.js +268 -0
  68. package/dist/js/libs/oj/debug/ojselectbase.js +65 -13
  69. package/dist/js/libs/oj/debug/ojselectcombobox.js +1 -1
  70. package/dist/js/libs/oj/debug/ojselectsingle.js +56 -31
  71. package/dist/js/libs/oj/debug/ojslider.js +3 -3
  72. package/dist/js/libs/oj/debug/ojstreamlist.js +2 -2
  73. package/dist/js/libs/oj/debug/ojsunburst.js +5 -5
  74. package/dist/js/libs/oj/debug/ojsuppressnodetreedataprovider.js +7 -0
  75. package/dist/js/libs/oj/debug/ojswitch.js +12 -2
  76. package/dist/js/libs/oj/debug/ojtable.js +369 -55
  77. package/dist/js/libs/oj/debug/ojtagcloud.js +3 -3
  78. package/dist/js/libs/oj/debug/ojtemplateengine.js +37 -10
  79. package/dist/js/libs/oj/debug/ojthematicmap.js +13 -13
  80. package/dist/js/libs/oj/debug/ojtimeaxis-toolkit.js +106 -22
  81. package/dist/js/libs/oj/debug/ojtimeaxis.js +13 -0
  82. package/dist/js/libs/oj/debug/ojtimeline-toolkit.js +1602 -361
  83. package/dist/js/libs/oj/debug/ojtimeline.js +131 -27
  84. package/dist/js/libs/oj/debug/ojtrace-event.js +10 -20
  85. package/dist/js/libs/oj/debug/ojtracer.js +96 -0
  86. package/dist/js/libs/oj/debug/ojtreemap.js +8 -9
  87. package/dist/js/libs/oj/debug/ojtreeview.js +45 -12
  88. package/dist/js/libs/oj/debug/ojvcomponent-template.js +64 -55
  89. package/dist/js/libs/oj/debug/ojwaterfalllayout.js +3 -3
  90. package/dist/js/libs/oj/debug_esm/ojarraydataprovider.js +58 -1
  91. package/dist/js/libs/oj/debug_esm/ojbufferingdataprovider.js +18 -19
  92. package/dist/js/libs/oj/debug_esm/ojchart-toolkit.js +7 -1
  93. package/dist/js/libs/oj/debug_esm/ojchart.js +22 -16
  94. package/dist/js/libs/oj/debug_esm/ojcheckboxset.js +10 -2
  95. package/dist/js/libs/oj/debug_esm/ojcomponentcore.js +15 -2
  96. package/dist/js/libs/oj/debug_esm/ojconfig.js +1 -1
  97. package/dist/js/libs/oj/debug_esm/ojcontext.js +27 -10
  98. package/dist/js/libs/oj/debug_esm/ojcore-base.js +17 -6
  99. package/dist/js/libs/oj/debug_esm/ojdatagrid.js +100 -40
  100. package/dist/js/libs/oj/debug_esm/ojdataprovider.js +18 -0
  101. package/dist/js/libs/oj/debug_esm/ojdiagram.js +6 -6
  102. package/dist/js/libs/oj/debug_esm/ojdrawerlayout.js +17 -8
  103. package/dist/js/libs/oj/debug_esm/ojdrawerpopup.js +13 -2
  104. package/dist/js/libs/oj/debug_esm/ojdvt-toolkit.js +11 -3
  105. package/dist/js/libs/oj/debug_esm/ojdvttimecomponentscale.js +16 -0
  106. package/dist/js/libs/oj/debug_esm/ojeditablevalue.js +48 -2
  107. package/dist/js/libs/oj/debug_esm/ojgantt-toolkit.js +324 -142
  108. package/dist/js/libs/oj/debug_esm/ojgantt.js +21 -11
  109. package/dist/js/libs/oj/debug_esm/ojgauge.js +11 -11
  110. package/dist/js/libs/oj/debug_esm/ojinputsearch.js +12 -0
  111. package/dist/js/libs/oj/debug_esm/ojinputtext.js +16 -2
  112. package/dist/js/libs/oj/debug_esm/ojlegend.js +12 -7
  113. package/dist/js/libs/oj/debug_esm/ojlistview.js +13 -4
  114. package/dist/js/libs/oj/debug_esm/ojmenu.js +5 -2
  115. package/dist/js/libs/oj/debug_esm/ojmutablearraydataprovider.js +76 -19
  116. package/dist/js/libs/oj/debug_esm/ojnbox.js +22 -22
  117. package/dist/js/libs/oj/debug_esm/ojpictochart.js +2 -2
  118. package/dist/js/libs/oj/debug_esm/ojpopupcore.js +3 -1
  119. package/dist/js/libs/oj/debug_esm/ojpulltorefresh.js +7 -3
  120. package/dist/js/libs/oj/debug_esm/ojradioset.js +11 -2
  121. package/dist/js/libs/oj/debug_esm/ojrestdataprovider.js +41 -19
  122. package/dist/js/libs/oj/debug_esm/ojresttreedataprovider.js +267 -0
  123. package/dist/js/libs/oj/debug_esm/ojselectbase.js +65 -13
  124. package/dist/js/libs/oj/debug_esm/ojselectcombobox.js +1 -1
  125. package/dist/js/libs/oj/debug_esm/ojselectsingle.js +56 -31
  126. package/dist/js/libs/oj/debug_esm/ojslider.js +3 -3
  127. package/dist/js/libs/oj/debug_esm/ojstreamlist.js +2 -2
  128. package/dist/js/libs/oj/debug_esm/ojsunburst.js +5 -5
  129. package/dist/js/libs/oj/debug_esm/ojsuppressnodetreedataprovider.js +7 -0
  130. package/dist/js/libs/oj/debug_esm/ojswitch.js +12 -2
  131. package/dist/js/libs/oj/debug_esm/ojtable.js +370 -55
  132. package/dist/js/libs/oj/debug_esm/ojtagcloud.js +3 -3
  133. package/dist/js/libs/oj/debug_esm/ojtemplateengine.js +36 -9
  134. package/dist/js/libs/oj/debug_esm/ojthematicmap.js +13 -13
  135. package/dist/js/libs/oj/debug_esm/ojtimeaxis-toolkit.js +106 -22
  136. package/dist/js/libs/oj/debug_esm/ojtimeaxis.js +13 -0
  137. package/dist/js/libs/oj/debug_esm/ojtimeline-toolkit.js +1603 -362
  138. package/dist/js/libs/oj/debug_esm/ojtimeline.js +131 -27
  139. package/dist/js/libs/oj/debug_esm/ojtrace-event.js +11 -19
  140. package/dist/js/libs/oj/debug_esm/ojtracer.js +95 -1
  141. package/dist/js/libs/oj/debug_esm/ojtreemap.js +8 -9
  142. package/dist/js/libs/oj/debug_esm/ojtreeview.js +46 -13
  143. package/dist/js/libs/oj/debug_esm/ojvcomponent-template.js +63 -55
  144. package/dist/js/libs/oj/debug_esm/ojwaterfalllayout.js +3 -3
  145. package/dist/js/libs/oj/main-template.js +3 -3
  146. package/dist/js/libs/oj/min/ojarraydataprovider.js.map +1 -1
  147. package/dist/js/libs/oj/min/ojbufferingdataprovider.js +2 -2
  148. package/dist/js/libs/oj/min/ojbufferingdataprovider.js.map +1 -1
  149. package/dist/js/libs/oj/min/ojchart-toolkit.js +1 -1
  150. package/dist/js/libs/oj/min/ojchart-toolkit.js.map +1 -1
  151. package/dist/js/libs/oj/min/ojchart.js.map +1 -1
  152. package/dist/js/libs/oj/min/ojcheckboxset.js +1 -1
  153. package/dist/js/libs/oj/min/ojcheckboxset.js.map +1 -1
  154. package/dist/js/libs/oj/min/ojcomponentcore.js +1 -1
  155. package/dist/js/libs/oj/min/ojcomponentcore.js.map +1 -1
  156. package/dist/js/libs/oj/min/ojcontext.js +1 -1
  157. package/dist/js/libs/oj/min/ojcontext.js.map +1 -1
  158. package/dist/js/libs/oj/min/ojcore-base.js +2 -2
  159. package/dist/js/libs/oj/min/ojcore-base.js.map +1 -1
  160. package/dist/js/libs/oj/min/ojdatagrid.js +1 -1
  161. package/dist/js/libs/oj/min/ojdatagrid.js.map +1 -1
  162. package/dist/js/libs/oj/min/ojdataprovider.js.map +1 -1
  163. package/dist/js/libs/oj/min/ojdrawerlayout.js +1 -1
  164. package/dist/js/libs/oj/min/ojdrawerlayout.js.map +1 -1
  165. package/dist/js/libs/oj/min/ojdrawerpopup.js +1 -1
  166. package/dist/js/libs/oj/min/ojdrawerpopup.js.map +1 -1
  167. package/dist/js/libs/oj/min/ojdvt-toolkit.js +1 -1
  168. package/dist/js/libs/oj/min/ojdvt-toolkit.js.map +1 -1
  169. package/dist/js/libs/oj/min/ojeditablevalue.js +1 -1
  170. package/dist/js/libs/oj/min/ojeditablevalue.js.map +1 -1
  171. package/dist/js/libs/oj/min/ojgantt-toolkit.js +1 -1
  172. package/dist/js/libs/oj/min/ojgantt-toolkit.js.map +1 -1
  173. package/dist/js/libs/oj/min/ojgantt.js +1 -1
  174. package/dist/js/libs/oj/min/ojgantt.js.map +1 -1
  175. package/dist/js/libs/oj/min/ojinputsearch.js +1 -1
  176. package/dist/js/libs/oj/min/ojinputsearch.js.map +1 -1
  177. package/dist/js/libs/oj/min/ojinputtext.js +1 -1
  178. package/dist/js/libs/oj/min/ojinputtext.js.map +1 -1
  179. package/dist/js/libs/oj/min/ojlegend.js.map +1 -1
  180. package/dist/js/libs/oj/min/ojlistview.js +1 -1
  181. package/dist/js/libs/oj/min/ojlistview.js.map +1 -1
  182. package/dist/js/libs/oj/min/ojmenu.js +1 -1
  183. package/dist/js/libs/oj/min/ojmenu.js.map +1 -1
  184. package/dist/js/libs/oj/min/ojmutablearraydataprovider.js.map +1 -1
  185. package/dist/js/libs/oj/min/ojpopupcore.js +1 -1
  186. package/dist/js/libs/oj/min/ojpopupcore.js.map +1 -1
  187. package/dist/js/libs/oj/min/ojpulltorefresh.js +1 -1
  188. package/dist/js/libs/oj/min/ojpulltorefresh.js.map +1 -1
  189. package/dist/js/libs/oj/min/ojradioset.js +1 -1
  190. package/dist/js/libs/oj/min/ojradioset.js.map +1 -1
  191. package/dist/js/libs/oj/min/ojrestdataprovider.js +1 -1
  192. package/dist/js/libs/oj/min/ojrestdataprovider.js.map +1 -1
  193. package/dist/js/libs/oj/min/ojresttreedataprovider.js +9 -0
  194. package/dist/js/libs/oj/min/ojresttreedataprovider.js.map +1 -0
  195. package/dist/js/libs/oj/min/ojselectbase.js +1 -1
  196. package/dist/js/libs/oj/min/ojselectbase.js.map +1 -1
  197. package/dist/js/libs/oj/min/ojselectcombobox.js +1 -1
  198. package/dist/js/libs/oj/min/ojselectcombobox.js.map +1 -1
  199. package/dist/js/libs/oj/min/ojselectsingle.js +1 -1
  200. package/dist/js/libs/oj/min/ojselectsingle.js.map +1 -1
  201. package/dist/js/libs/oj/min/ojslider.js +1 -1
  202. package/dist/js/libs/oj/min/ojslider.js.map +1 -1
  203. package/dist/js/libs/oj/min/ojstreamlist.js +1 -1
  204. package/dist/js/libs/oj/min/ojstreamlist.js.map +1 -1
  205. package/dist/js/libs/oj/min/ojsuppressnodetreedataprovider.js +1 -1
  206. package/dist/js/libs/oj/min/ojsuppressnodetreedataprovider.js.map +1 -1
  207. package/dist/js/libs/oj/min/ojswitch.js +1 -1
  208. package/dist/js/libs/oj/min/ojswitch.js.map +1 -1
  209. package/dist/js/libs/oj/min/ojtable.js +1 -1
  210. package/dist/js/libs/oj/min/ojtable.js.map +1 -1
  211. package/dist/js/libs/oj/min/ojtemplateengine.js +1 -1
  212. package/dist/js/libs/oj/min/ojtemplateengine.js.map +1 -1
  213. package/dist/js/libs/oj/min/ojtimeaxis-toolkit.js +1 -1
  214. package/dist/js/libs/oj/min/ojtimeaxis-toolkit.js.map +1 -1
  215. package/dist/js/libs/oj/min/ojtimeaxis.js +1 -1
  216. package/dist/js/libs/oj/min/ojtimeaxis.js.map +1 -1
  217. package/dist/js/libs/oj/min/ojtimeline-toolkit.js +1 -1
  218. package/dist/js/libs/oj/min/ojtimeline-toolkit.js.map +1 -1
  219. package/dist/js/libs/oj/min/ojtimeline.js +1 -1
  220. package/dist/js/libs/oj/min/ojtimeline.js.map +1 -1
  221. package/dist/js/libs/oj/min/ojtrace-event.js +1 -1
  222. package/dist/js/libs/oj/min/ojtrace-event.js.map +1 -1
  223. package/dist/js/libs/oj/min/ojtracer.js +1 -1
  224. package/dist/js/libs/oj/min/ojtracer.js.map +1 -1
  225. package/dist/js/libs/oj/min/ojtreeview.js +1 -1
  226. package/dist/js/libs/oj/min/ojtreeview.js.map +1 -1
  227. package/dist/js/libs/oj/min/ojvcomponent-template.js +1 -1
  228. package/dist/js/libs/oj/min/ojvcomponent-template.js.map +1 -1
  229. package/dist/js/libs/oj/min/ojwaterfalllayout.js +1 -1
  230. package/dist/js/libs/oj/min/ojwaterfalllayout.js.map +1 -1
  231. package/dist/js/libs/oj/resources/nls/ar/ojtranslations.js +1 -1
  232. package/dist/js/libs/oj/resources/nls/ar-XB/ojtranslations.js +1 -1
  233. package/dist/js/libs/oj/resources/nls/bg/ojtranslations.js +1 -1
  234. package/dist/js/libs/oj/resources/nls/bs/ojtranslations.js +1 -1
  235. package/dist/js/libs/oj/resources/nls/bs-Cyrl/ojtranslations.js +1 -1
  236. package/dist/js/libs/oj/resources/nls/cs/ojtranslations.js +1 -1
  237. package/dist/js/libs/oj/resources/nls/da/ojtranslations.js +1 -1
  238. package/dist/js/libs/oj/resources/nls/de/ojtranslations.js +1 -1
  239. package/dist/js/libs/oj/resources/nls/el/ojtranslations.js +1 -1
  240. package/dist/js/libs/oj/resources/nls/en-XA/ojtranslations.js +1 -1
  241. package/dist/js/libs/oj/resources/nls/en-XC/ojtranslations.js +1 -1
  242. package/dist/js/libs/oj/resources/nls/es/ojtranslations.js +1 -1
  243. package/dist/js/libs/oj/resources/nls/et/ojtranslations.js +1 -1
  244. package/dist/js/libs/oj/resources/nls/fi/ojtranslations.js +1 -1
  245. package/dist/js/libs/oj/resources/nls/fr/ojtranslations.js +1 -1
  246. package/dist/js/libs/oj/resources/nls/fr-CA/ojtranslations.js +1 -1
  247. package/dist/js/libs/oj/resources/nls/he/ojtranslations.js +1 -1
  248. package/dist/js/libs/oj/resources/nls/hr/ojtranslations.js +1 -1
  249. package/dist/js/libs/oj/resources/nls/hu/ojtranslations.js +1 -1
  250. package/dist/js/libs/oj/resources/nls/is/ojtranslations.js +1 -1
  251. package/dist/js/libs/oj/resources/nls/it/ojtranslations.js +1 -1
  252. package/dist/js/libs/oj/resources/nls/ja/ojtranslations.js +1 -1
  253. package/dist/js/libs/oj/resources/nls/ko/ojtranslations.js +1 -1
  254. package/dist/js/libs/oj/resources/nls/lt/ojtranslations.js +1 -1
  255. package/dist/js/libs/oj/resources/nls/lv/ojtranslations.js +1 -1
  256. package/dist/js/libs/oj/resources/nls/ms/ojtranslations.js +1 -1
  257. package/dist/js/libs/oj/resources/nls/nl/ojtranslations.js +1 -1
  258. package/dist/js/libs/oj/resources/nls/no/ojtranslations.js +1 -1
  259. package/dist/js/libs/oj/resources/nls/ojtranslations.js +1 -1
  260. package/dist/js/libs/oj/resources/nls/pl/ojtranslations.js +1 -1
  261. package/dist/js/libs/oj/resources/nls/pseudo/ojtranslations.js +1 -1
  262. package/dist/js/libs/oj/resources/nls/pt/ojtranslations.js +1 -1
  263. package/dist/js/libs/oj/resources/nls/pt-PT/ojtranslations.js +1 -1
  264. package/dist/js/libs/oj/resources/nls/ro/ojtranslations.js +1 -1
  265. package/dist/js/libs/oj/resources/nls/ru/ojtranslations.js +1 -1
  266. package/dist/js/libs/oj/resources/nls/sk/ojtranslations.js +1 -1
  267. package/dist/js/libs/oj/resources/nls/sl/ojtranslations.js +1 -1
  268. package/dist/js/libs/oj/resources/nls/sr/ojtranslations.js +1 -1
  269. package/dist/js/libs/oj/resources/nls/sr-Latn/ojtranslations.js +1 -1
  270. package/dist/js/libs/oj/resources/nls/sv/ojtranslations.js +1 -1
  271. package/dist/js/libs/oj/resources/nls/th/ojtranslations.js +1 -1
  272. package/dist/js/libs/oj/resources/nls/tr/ojtranslations.js +1 -1
  273. package/dist/js/libs/oj/resources/nls/uk/ojtranslations.js +1 -1
  274. package/dist/js/libs/oj/resources/nls/vi/ojtranslations.js +1 -1
  275. package/dist/js/libs/oj/resources/nls/zh-Hans/ojtranslations.js +1 -1
  276. package/dist/js/libs/oj/resources/nls/zh-Hant/ojtranslations.js +1 -1
  277. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-arraystore-1.5.4.js → offline-persistence-toolkit-arraystore-1.5.5.js} +0 -0
  278. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-core-1.5.4.js → offline-persistence-toolkit-core-1.5.5.js} +116 -22
  279. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-filesystemstore-1.5.4.js → offline-persistence-toolkit-filesystemstore-1.5.5.js} +0 -0
  280. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-localstore-1.5.4.js → offline-persistence-toolkit-localstore-1.5.5.js} +0 -0
  281. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-pouchdbstore-1.5.4.js → offline-persistence-toolkit-pouchdbstore-1.5.5.js} +0 -0
  282. package/dist/js/libs/persist/debug/{offline-persistence-toolkit-responseproxy-1.5.4.js → offline-persistence-toolkit-responseproxy-1.5.5.js} +0 -0
  283. package/dist/js/libs/persist/debug/persistenceManager.js +114 -21
  284. package/dist/js/libs/persist/debug/persistenceUtils.js +2 -1
  285. package/dist/js/libs/persist/min/impl/PersistenceSyncManager.js +1 -1
  286. package/dist/js/libs/persist/min/impl/PersistenceXMLHttpRequest.js +1 -1
  287. package/dist/js/libs/persist/min/impl/sql-where-parser.min.js +1 -1
  288. package/dist/js/libs/persist/min/{offline-persistence-toolkit-arraystore-1.5.4.js → offline-persistence-toolkit-arraystore-1.5.5.js} +0 -0
  289. package/dist/js/libs/persist/min/{offline-persistence-toolkit-core-1.5.4.js → offline-persistence-toolkit-core-1.5.5.js} +330 -330
  290. package/dist/js/libs/persist/min/{offline-persistence-toolkit-filesystemstore-1.5.4.js → offline-persistence-toolkit-filesystemstore-1.5.5.js} +330 -330
  291. package/dist/js/libs/persist/min/{offline-persistence-toolkit-localstore-1.5.4.js → offline-persistence-toolkit-localstore-1.5.5.js} +0 -0
  292. package/dist/js/libs/persist/min/{offline-persistence-toolkit-pouchdbstore-1.5.4.js → offline-persistence-toolkit-pouchdbstore-1.5.5.js} +330 -330
  293. package/dist/js/libs/persist/min/{offline-persistence-toolkit-responseproxy-1.5.4.js → offline-persistence-toolkit-responseproxy-1.5.5.js} +331 -331
  294. package/dist/js/libs/persist/min/persistenceManager.js +1 -1
  295. package/dist/js/libs/persist/min/persistenceUtils.js +1 -1
  296. package/dist/js/libs/persist/min/pouchdb-browser-7.2.2.js +330 -330
  297. package/dist/js/libs/persist/min/pouchdb.find.js +1 -1
  298. package/dist/js/libs/persist/min/queryHandlers.js +1 -1
  299. package/dist/metadata/components/allComponents.json +1019 -905
  300. package/dist/metadata/components/schemas/component-schema.json +10 -0
  301. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/accordion/themes/base/_oj-accordion.scss +0 -0
  302. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/accordion/themes/redwood/_oj-accordion.cssvars.scss +0 -0
  303. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/accordion/themes/redwood/oj-accordion.scss +0 -0
  304. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/accordion/themes/stable/_oj-accordion.cssvars.scss +0 -0
  305. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/accordion/themes/stable/oj-accordion.scss +0 -0
  306. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/action-card/themes/base/_oj-action-card.scss +0 -0
  307. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/action-card/themes/redwood/_oj-action-card.cssvars.scss +0 -0
  308. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/action-card/themes/redwood/oj-action-card.scss +0 -0
  309. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/action-card/themes/stable/_oj-action-card.cssvars.scss +0 -0
  310. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/action-card/themes/stable/oj-action-card.scss +0 -0
  311. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/base/_oj.common.servervars.scss +0 -0
  312. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/base/oj.common.settings.cssvariables.css +0 -1
  313. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/redwood/_oj-all-components-common.scss +0 -0
  314. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/redwood/_oj-all-components-notag.scss +0 -0
  315. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/redwood/_oj-all-components.scss +0 -0
  316. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/redwood/_oj.redwood.settings.scss +0 -0
  317. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/redwood/oj.redwood.cssvars.settings.css +0 -1
  318. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/stable/_oj-all-components-common.scss +0 -0
  319. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/stable/_oj-all-components-notag.scss +0 -0
  320. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/stable/_oj-all-components.scss +0 -0
  321. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/stable/_oj.stable.settings.scss +0 -0
  322. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/all-components/themes/stable/oj.stable.cssvars.settings.css +0 -1
  323. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/base/_oj-animation.scss +0 -0
  324. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/redwood/_oj-animation.cssvars.scss +0 -0
  325. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/redwood/_oj-animation.servervars.scss +0 -0
  326. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/redwood/oj-animation.scss +0 -0
  327. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/stable/_oj-animation.cssvars.scss +0 -0
  328. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/stable/_oj-animation.servervars.scss +0 -0
  329. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/animation/themes/stable/oj-animation.scss +0 -0
  330. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout/themes/base/_oj-app-layout.scss +0 -0
  331. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout/themes/redwood/_oj-app-layout.cssvars.scss +0 -0
  332. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout/themes/redwood/_oj-app-layout.scss +0 -0
  333. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout/themes/stable/_oj-app-layout.cssvars.scss +0 -0
  334. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout/themes/stable/_oj-app-layout.scss +0 -0
  335. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-hybrid/themes/base/_oj-app-layout-hybrid.scss +0 -0
  336. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-hybrid/themes/redwood/_oj-app-layout-hybrid.cssvars.scss +0 -0
  337. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-hybrid/themes/redwood/oj-app-layout-hybrid.scss +0 -0
  338. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-hybrid/themes/stable/_oj-app-layout-hybrid.cssvars.scss +0 -0
  339. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-hybrid/themes/stable/oj-app-layout-hybrid.scss +0 -0
  340. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-web/themes/base/_oj-app-layout-web.scss +0 -0
  341. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-web/themes/redwood/_oj-app-layout-web.cssvars.scss +0 -0
  342. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-web/themes/redwood/oj-app-layout-web.scss +0 -0
  343. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-web/themes/stable/_oj-app-layout-web.cssvars.scss +0 -0
  344. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/app-layout-web/themes/stable/oj-app-layout-web.scss +0 -0
  345. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/base/_oj-avatar.scss +0 -0
  346. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/redwood/_oj-avatar-scoped.cssvars.scss +0 -0
  347. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/redwood/_oj-avatar.cssvars.scss +0 -0
  348. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/redwood/oj-avatar.scss +0 -0
  349. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/stable/_oj-avatar-scoped.cssvars.scss +0 -0
  350. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/stable/_oj-avatar.cssvars.scss +0 -0
  351. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/avatar/themes/stable/oj-avatar.scss +0 -0
  352. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/base/_oj-badge.scss +0 -0
  353. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/redwood/_oj-badge-scoped.cssvars.scss +0 -0
  354. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/redwood/_oj-badge.cssvars.scss +0 -0
  355. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/redwood/oj-badge.scss +0 -0
  356. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/stable/_oj-badge-scoped.cssvars.scss +0 -0
  357. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/stable/_oj-badge.cssvars.scss +0 -0
  358. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/badge/themes/stable/oj-badge.scss +0 -0
  359. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/base/_oj-button.scss +0 -0
  360. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/redwood/_oj-button-ignore.scoped.cssvars.scss +0 -0
  361. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/redwood/_oj-button-scoped.cssvars.scss +0 -0
  362. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/redwood/_oj-button.cssvars.scss +0 -0
  363. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/redwood/oj-button.scss +0 -0
  364. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/stable/_oj-button-ignore.scoped.cssvars.scss +0 -0
  365. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/stable/_oj-button.cssvars.scss +0 -0
  366. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/button/themes/stable/oj-button.scss +0 -0
  367. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/base/_oj-buttonset.scss +0 -0
  368. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/redwood/_oj-buttonset-scoped.cssvars.scss +0 -0
  369. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/redwood/_oj-buttonset.cssvars.scss +0 -0
  370. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/redwood/_oj-buttonset.scss +0 -0
  371. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/stable/_oj-buttonset-scoped.cssvars.scss +0 -0
  372. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/stable/_oj-buttonset.cssvars.scss +0 -0
  373. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset/themes/stable/_oj-buttonset.scss +0 -0
  374. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset-many/themes/redwood/oj-buttonset-many.scss +0 -0
  375. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset-many/themes/stable/oj-buttonset-many.scss +0 -0
  376. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset-one/themes/redwood/oj-buttonset-one.scss +0 -0
  377. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/buttonset-one/themes/stable/oj-buttonset-one.scss +0 -0
  378. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/chart/themes/base/_oj-chart.scss +0 -0
  379. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/chart/themes/redwood/_oj-chart.cssvars.scss +0 -0
  380. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/chart/themes/redwood/oj-chart.scss +0 -0
  381. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/chart/themes/stable/_oj-chart.cssvars.scss +0 -0
  382. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/chart/themes/stable/oj-chart.scss +0 -0
  383. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/checkboxset/themes/redwood/_oj-checkboxset.cssvars.scss +0 -0
  384. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/checkboxset/themes/redwood/oj-checkboxset.scss +0 -0
  385. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/checkboxset/themes/stable/_oj-checkboxset.cssvars.scss +0 -0
  386. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/checkboxset/themes/stable/oj-checkboxset.scss +0 -0
  387. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collapsible/themes/base/_oj-collapsible.scss +0 -0
  388. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collapsible/themes/redwood/_oj-collapsible.cssvars.scss +0 -0
  389. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collapsible/themes/redwood/oj-collapsible.scss +0 -0
  390. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collapsible/themes/stable/_oj-collapsible.cssvars.scss +0 -0
  391. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collapsible/themes/stable/oj-collapsible.scss +0 -0
  392. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collection/themes/redwood/_oj-collection.cssvars.scss +0 -0
  393. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/collection/themes/stable/_oj-collection.cssvars.scss +0 -0
  394. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-palette/themes/base/_oj-color-palette.scss +0 -0
  395. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-palette/themes/redwood/_oj-color-palette.cssvars.scss +0 -0
  396. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-palette/themes/redwood/oj-color-palette.scss +0 -0
  397. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-palette/themes/stable/_oj-color-palette.cssvars.scss +0 -0
  398. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-palette/themes/stable/oj-color-palette.scss +0 -0
  399. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-spectrum/themes/base/_oj-color-spectrum.scss +0 -0
  400. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-spectrum/themes/redwood/_oj-color-spectrum.cssvars.scss +0 -0
  401. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-spectrum/themes/redwood/oj-color-spectrum.scss +0 -0
  402. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-spectrum/themes/stable/_oj-color-spectrum.cssvars.scss +0 -0
  403. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/color-spectrum/themes/stable/oj-color-spectrum.scss +0 -0
  404. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox/themes/base/_oj-combobox.scss +2 -2
  405. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox/themes/redwood/_oj-combobox.cssvars.scss +0 -0
  406. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox/themes/redwood/_oj-combobox.scss +0 -0
  407. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox/themes/stable/_oj-combobox.cssvars.scss +0 -0
  408. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox/themes/stable/_oj-combobox.scss +0 -0
  409. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox-many/themes/redwood/oj-combobox-many.scss +0 -0
  410. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox-many/themes/stable/oj-combobox-many.scss +0 -0
  411. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox-one/themes/redwood/oj-combobox-one.scss +0 -0
  412. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/combobox-one/themes/stable/oj-combobox-one.scss +0 -0
  413. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/conveyor-belt/themes/base/_oj-conveyor-belt.scss +0 -0
  414. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/conveyor-belt/themes/redwood/_oj-conveyor-belt.cssvars.scss +0 -0
  415. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/conveyor-belt/themes/redwood/oj-conveyor-belt.scss +0 -0
  416. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/conveyor-belt/themes/stable/_oj-conveyor-belt.cssvars.scss +0 -0
  417. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/conveyor-belt/themes/stable/oj-conveyor-belt.scss +0 -0
  418. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/core/themes/redwood/_oj-core-ignore.scoped.cssvars.scss +0 -0
  419. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/core/themes/redwood/_oj-core-scoped.cssvars.scss +0 -0
  420. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/core/themes/redwood/_oj-core.cssvars.scss +0 -0
  421. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/core/themes/stable/_oj-core.cssvars.scss +0 -0
  422. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/data-grid/themes/base/_oj-data-grid.scss +0 -0
  423. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/data-grid/themes/redwood/_oj-data-grid.cssvars.scss +0 -0
  424. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/data-grid/themes/redwood/oj-data-grid.scss +0 -0
  425. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/data-grid/themes/stable/_oj-data-grid.cssvars.scss +0 -0
  426. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/data-grid/themes/stable/oj-data-grid.scss +0 -0
  427. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-picker/themes/redwood/oj-date-picker.scss +0 -0
  428. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-picker/themes/stable/oj-date-picker.scss +0 -0
  429. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/base/_oj-date-time-picker.scss +0 -0
  430. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/redwood/_oj-date-time-picker.cssvars.scss +0 -0
  431. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/redwood/_oj-date-time-picker.servervars.scss +0 -0
  432. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/redwood/oj-date-time-picker.scss +0 -0
  433. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/stable/_oj-date-time-picker.cssvars.scss +0 -0
  434. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/stable/_oj-date-time-picker.servervars.scss +0 -0
  435. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/date-time-picker/themes/stable/oj-date-time-picker.scss +0 -0
  436. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/diagram/themes/base/_oj-diagram.scss +0 -0
  437. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/diagram/themes/redwood/_oj-diagram.cssvars.scss +0 -0
  438. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/diagram/themes/redwood/oj-diagram.scss +0 -0
  439. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/diagram/themes/stable/_oj-diagram.cssvars.scss +0 -0
  440. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/diagram/themes/stable/oj-diagram.scss +0 -0
  441. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/base/_oj-dialog.scss +0 -0
  442. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/redwood/_oj-dialog-scoped.cssvars.scss +0 -0
  443. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/redwood/_oj-dialog.cssvars.scss +0 -0
  444. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/redwood/_oj-dialog.servervars.scss +0 -0
  445. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/redwood/oj-dialog.scss +0 -0
  446. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/stable/_oj-dialog-scoped.cssvars.scss +0 -0
  447. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/stable/_oj-dialog.cssvars.scss +0 -0
  448. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/stable/_oj-dialog.servervars.scss +0 -0
  449. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dialog/themes/stable/oj-dialog.scss +0 -0
  450. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-layout/themes/base/_oj-drawer-layout.scss +0 -0
  451. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-layout/themes/redwood/_oj-drawer-layout.cssvars.scss +0 -0
  452. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-layout/themes/redwood/oj-drawer-layout.scss +0 -0
  453. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-layout/themes/stable/_oj-drawer-layout.cssvars.scss +0 -0
  454. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-layout/themes/stable/oj-drawer-layout.scss +0 -0
  455. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-popup/themes/base/_oj-drawer-popup.scss +0 -0
  456. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-popup/themes/redwood/_oj-drawer-popup.cssvars.scss +0 -0
  457. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-popup/themes/redwood/oj-drawer-popup.scss +0 -0
  458. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-popup/themes/stable/_oj-drawer-popup.cssvars.scss +0 -0
  459. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/drawer-popup/themes/stable/oj-drawer-popup.scss +0 -0
  460. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dvt/themes/base/_oj-dvt.scss +0 -0
  461. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dvt/themes/redwood/_oj-dvt.cssvars.scss +0 -0
  462. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dvt/themes/redwood/_oj-dvt.scss +0 -0
  463. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dvt/themes/stable/_oj-dvt.cssvars.scss +0 -0
  464. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/dvt/themes/stable/_oj-dvt.scss +0 -0
  465. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/file-picker/themes/base/_oj-file-picker.scss +0 -0
  466. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/file-picker/themes/redwood/_oj-file-picker.cssvars.scss +0 -0
  467. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/file-picker/themes/redwood/oj-file-picker.scss +0 -0
  468. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/file-picker/themes/stable/_oj-file-picker.cssvars.scss +0 -0
  469. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/file-picker/themes/stable/oj-file-picker.scss +0 -0
  470. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/film-strip/themes/base/_oj-film-strip.scss +0 -0
  471. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/film-strip/themes/redwood/_oj-film-strip.cssvars.scss +0 -0
  472. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/film-strip/themes/redwood/oj-film-strip.scss +0 -0
  473. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/film-strip/themes/stable/_oj-film-strip.cssvars.scss +0 -0
  474. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/film-strip/themes/stable/oj-film-strip.scss +0 -0
  475. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/flex/themes/base/_oj-flex.scss +0 -0
  476. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/flex/themes/redwood/oj-flex.scss +0 -0
  477. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/flex/themes/stable/oj-flex.scss +0 -0
  478. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/base/_oj-form-control.mixins.scss +0 -0
  479. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/base/_oj-form-control.scss +17 -13
  480. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/base/_oj-messaging.scss +0 -0
  481. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/redwood/_oj-form-control.cssvars.scss +0 -0
  482. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/redwood/_oj-form-control.scss +0 -0
  483. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/redwood/_oj-messaging.scss +0 -0
  484. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/redwood/_oj-messaging.servervars.scss +0 -0
  485. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/stable/_oj-form-control.cssvars.scss +0 -0
  486. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/stable/_oj-form-control.scss +0 -0
  487. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/stable/_oj-messaging.scss +0 -0
  488. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-control/themes/stable/_oj-messaging.servervars.scss +0 -0
  489. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/base/_oj-form-layout.scss +4 -5
  490. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/redwood/_oj-form-layout.cssvars.scss +0 -0
  491. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/redwood/_oj-form-layout.servervars.scss +0 -0
  492. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/redwood/oj-form-layout.scss +0 -0
  493. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/stable/_oj-form-layout.cssvars.scss +0 -0
  494. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/stable/_oj-form-layout.servervars.scss +0 -0
  495. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/form-layout/themes/stable/oj-form-layout.scss +0 -0
  496. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gantt/themes/base/_oj-gantt.scss +37 -15
  497. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gantt/themes/redwood/_oj-gantt.cssvars.scss +14 -7
  498. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gantt/themes/redwood/oj-gantt.scss +0 -0
  499. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gantt/themes/stable/_oj-gantt.cssvars.scss +12 -5
  500. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gantt/themes/stable/oj-gantt.scss +0 -0
  501. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gauge/themes/base/_oj-gauge.scss +0 -0
  502. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gauge/themes/redwood/_oj-gauge.cssvars.scss +0 -0
  503. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gauge/themes/redwood/oj-gauge.scss +0 -0
  504. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gauge/themes/stable/_oj-gauge.cssvars.scss +0 -0
  505. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/gauge/themes/stable/oj-gauge.scss +0 -0
  506. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/grid/themes/base/_oj-grid.scss +0 -0
  507. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/grid/themes/redwood/oj-grid.scss +0 -0
  508. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/grid/themes/stable/oj-grid.scss +0 -0
  509. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/base/_oj-helpers.scss +1 -1
  510. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/base/_oj-responsive-helpers.scss +0 -0
  511. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/redwood/_oj-theme.servervars.scss +0 -0
  512. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/redwood/oj-helpers.scss +0 -0
  513. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/redwood/oj-responsive.helpers.scss +0 -0
  514. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/stable/_oj-theme.servervars.scss +0 -0
  515. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/stable/oj-helpers.scss +0 -0
  516. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/helpers/themes/stable/oj-responsive.helpers.scss +0 -0
  517. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/highlight-text/themes/base/_oj-highlight-text.scss +0 -0
  518. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/highlight-text/themes/redwood/oj-highlight-text.scss +0 -0
  519. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/highlight-text/themes/stable/oj-highlight-text.scss +0 -0
  520. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icon-circle/themes/base/_oj-icon-circle.scss +0 -0
  521. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icon-circle/themes/redwood/_oj-icon-circle-ignore.scoped.cssvars.scss +0 -0
  522. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icon-circle/themes/redwood/_oj-icon-circle.cssvars.scss +0 -0
  523. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icon-circle/themes/redwood/oj-icon-circle.scss +0 -0
  524. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/base/_oj-icons.scss +0 -0
  525. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/redwood/_oj-icon-font.scss +0 -0
  526. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/redwood/_oj-icons-ignore.scoped.cssvars.scss +0 -0
  527. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/redwood/_oj-icons.cssvars.scss +0 -0
  528. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/redwood/oj-icons.scss +0 -0
  529. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/stable/_oj-icon-font.scss +0 -0
  530. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/stable/_oj-icons.cssvars.scss +0 -0
  531. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/icons/themes/stable/oj-icons.scss +0 -0
  532. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/indexer/themes/base/_oj-indexer.scss +0 -0
  533. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/indexer/themes/redwood/_oj-indexer.cssvars.scss +0 -0
  534. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/indexer/themes/redwood/oj-indexer.scss +0 -0
  535. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/indexer/themes/stable/_oj-indexer.cssvars.scss +0 -0
  536. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/indexer/themes/stable/oj-indexer.scss +0 -0
  537. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-date/themes/redwood/oj-input-date.scss +0 -0
  538. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-date/themes/stable/oj-input-date.scss +0 -0
  539. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-date-time/themes/redwood/oj-input-date-time.scss +0 -0
  540. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-date-time/themes/stable/oj-input-date-time.scss +0 -0
  541. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-number/themes/base/_oj-input-number.scss +0 -0
  542. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-number/themes/redwood/_oj-input-number.cssvars.scss +0 -0
  543. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-number/themes/redwood/oj-input-number.scss +0 -0
  544. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-number/themes/stable/_oj-input-number.cssvars.scss +0 -0
  545. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-number/themes/stable/oj-input-number.scss +0 -0
  546. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-password/themes/redwood/oj-input-password.scss +0 -0
  547. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-password/themes/stable/oj-input-password.scss +0 -0
  548. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/base/_oj-input-search.scss +0 -0
  549. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/redwood/_oj-input-search-scoped.cssvars.scss +0 -0
  550. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/redwood/_oj-input-search.cssvars.scss +0 -0
  551. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/redwood/_oj-input-search.scss +0 -0
  552. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/stable/_oj-input-search-scoped.cssvars.scss +0 -0
  553. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/stable/_oj-input-search.cssvars.scss +0 -0
  554. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-search/themes/stable/_oj-input-search.scss +0 -0
  555. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-text/themes/base/_oj-input-text.scss +0 -0
  556. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-text/themes/redwood/_oj-input-text.cssvars.scss +0 -0
  557. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-text/themes/redwood/oj-input-text.scss +0 -0
  558. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-text/themes/stable/_oj-input-text.cssvars.scss +0 -0
  559. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-text/themes/stable/oj-input-text.scss +0 -0
  560. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-time/themes/redwood/oj-input-time.scss +0 -0
  561. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/input-time/themes/stable/oj-input-time.scss +0 -0
  562. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/base/_oj-label.scss +0 -0
  563. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/redwood/_oj-label-scoped.cssvars.scss +0 -0
  564. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/redwood/_oj-label.cssvars.scss +0 -0
  565. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/redwood/oj-label.scss +0 -0
  566. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/stable/_oj-label.cssvars.scss +0 -0
  567. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label/themes/stable/oj-label.scss +0 -0
  568. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label-value/themes/base/_oj-label-value.scss +0 -0
  569. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label-value/themes/redwood/_oj-label-value.scss +0 -0
  570. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/label-value/themes/stable/_oj-label-value.scss +0 -0
  571. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/led-gauge/themes/base/_oj-led-gauge.scss +0 -0
  572. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/led-gauge/themes/redwood/_oj-led-gauge.cssvars.scss +0 -0
  573. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/led-gauge/themes/redwood/oj-led-gauge.scss +0 -0
  574. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/led-gauge/themes/stable/_oj-led-gauge.cssvars.scss +0 -0
  575. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/led-gauge/themes/stable/oj-led-gauge.scss +0 -0
  576. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/legend/themes/base/_oj-legend.scss +0 -0
  577. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/legend/themes/redwood/_oj-legend.cssvars.scss +0 -0
  578. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/legend/themes/redwood/oj-legend.scss +0 -0
  579. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/legend/themes/stable/_oj-legend.cssvars.scss +0 -0
  580. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/legend/themes/stable/oj-legend.scss +0 -0
  581. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-box/themes/base/_oj-list-box.scss +0 -0
  582. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-box/themes/redwood/_oj-list-box.cssvars.scss +0 -0
  583. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-box/themes/redwood/_oj-list-box.scss +0 -0
  584. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-box/themes/stable/_oj-list-box.cssvars.scss +0 -0
  585. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-box/themes/stable/_oj-list-box.scss +0 -0
  586. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-item-layout/themes/base/_oj-list-item-layout.scss +0 -0
  587. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-item-layout/themes/redwood/_oj-list-item-layout.cssvars.scss +0 -0
  588. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-item-layout/themes/redwood/oj-list-item-layout.scss +0 -0
  589. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-item-layout/themes/stable/_oj-list-item-layout.cssvars.scss +0 -0
  590. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-item-layout/themes/stable/oj-list-item-layout.scss +0 -0
  591. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-view/themes/base/_oj-list-view.scss +0 -0
  592. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-view/themes/redwood/_oj-list-view.cssvars.scss +0 -0
  593. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-view/themes/redwood/oj-list-view.scss +0 -0
  594. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-view/themes/stable/_oj-list-view.cssvars.scss +0 -0
  595. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/list-view/themes/stable/oj-list-view.scss +0 -0
  596. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/base/_oj-masonry-layout.scss +0 -0
  597. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/redwood/_oj-masonry-layout.cssvars.scss +0 -0
  598. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/redwood/_oj-masonry-layout.servervars.scss +0 -0
  599. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/redwood/oj-masonry-layout.scss +0 -0
  600. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/stable/_oj-masonry-layout.cssvars.scss +0 -0
  601. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/stable/_oj-masonry-layout.servervars.scss +0 -0
  602. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/masonry-layout/themes/stable/oj-masonry-layout.scss +0 -0
  603. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu/themes/base/_oj-menu.scss +0 -0
  604. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu/themes/redwood/_oj-menu.cssvars.scss +0 -0
  605. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu/themes/redwood/oj-menu.scss +0 -0
  606. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu/themes/stable/_oj-menu.cssvars.scss +0 -0
  607. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu/themes/stable/oj-menu.scss +0 -0
  608. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/base/_oj-menu-button.scss +0 -0
  609. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/redwood/_oj-menu-button.cssvars.scss +0 -0
  610. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/redwood/_oj-menu-button.servervars.scss +0 -0
  611. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/redwood/oj-menu-button.scss +0 -0
  612. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/stable/_oj-menu-button.cssvars.scss +0 -0
  613. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/stable/_oj-menu-button.servervars.scss +0 -0
  614. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-button/themes/stable/oj-menu-button.scss +0 -0
  615. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-select-many/themes/base/_oj-menu-select-many.scss +0 -0
  616. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-select-many/themes/redwood/_oj-menu-select-many.cssvars.scss +0 -0
  617. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-select-many/themes/redwood/oj-menu-select-many.scss +0 -0
  618. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-select-many/themes/stable/_oj-menu-select-many.cssvars.scss +0 -0
  619. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/menu-select-many/themes/stable/oj-menu-select-many.scss +0 -0
  620. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/base/_oj-message.scss +0 -0
  621. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/redwood/_oj-message-ignore.scoped.cssvars.scss +0 -0
  622. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/redwood/_oj-message.cssvars.scss +0 -0
  623. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/redwood/_oj-message.servervars.scss +0 -0
  624. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/redwood/oj-message.scss +0 -0
  625. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/stable/_oj-message.cssvars.scss +0 -0
  626. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/stable/_oj-message.servervars.scss +0 -0
  627. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/message/themes/stable/oj-message.scss +0 -0
  628. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/base/_oj-messages.scss +0 -0
  629. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/redwood/_oj-messages.cssvars.scss +0 -0
  630. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/redwood/_oj-messages.servervars.scss +0 -0
  631. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/redwood/oj-messages.scss +0 -0
  632. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/stable/_oj-messages.cssvars.scss +0 -0
  633. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/stable/_oj-messages.servervars.scss +0 -0
  634. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/messages/themes/stable/oj-messages.scss +0 -0
  635. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/module/themes/base/_oj-module.scss +0 -0
  636. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/module/themes/redwood/oj-module.scss +0 -0
  637. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/module/themes/stable/oj-module.scss +0 -0
  638. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/n-box/themes/base/_oj-n-box.scss +0 -0
  639. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/n-box/themes/redwood/_oj-n-box.cssvars.scss +0 -0
  640. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/n-box/themes/redwood/oj-n-box.scss +0 -0
  641. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/n-box/themes/stable/_oj-n-box.cssvars.scss +0 -0
  642. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/n-box/themes/stable/oj-n-box.scss +0 -0
  643. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/base/_oj-navigation-list.scss +0 -0
  644. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/redwood/_oj-navigation-list-scoped.cssvars.scss +0 -0
  645. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/redwood/_oj-navigation-list.cssvars.scss +0 -0
  646. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/redwood/oj-navigation-list.scss +0 -0
  647. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/stable/_oj-navigation-list-scoped.cssvars.scss +0 -0
  648. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/stable/_oj-navigation-list.cssvars.scss +0 -0
  649. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/navigation-list/themes/stable/oj-navigation-list.scss +0 -0
  650. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/off-canvas/themes/base/_oj-off-canvas.scss +0 -0
  651. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/off-canvas/themes/redwood/_oj-off-canvas.cssvars.scss +0 -0
  652. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/off-canvas/themes/redwood/oj-off-canvas.scss +0 -0
  653. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/off-canvas/themes/stable/_oj-off-canvas.cssvars.scss +0 -0
  654. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/off-canvas/themes/stable/oj-off-canvas.scss +0 -0
  655. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/optgroup/themes/base/_oj-optgroup.scss +0 -0
  656. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/optgroup/themes/redwood/oj-optgroup.scss +0 -0
  657. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/optgroup/themes/stable/oj-optgroup.scss +0 -0
  658. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/option/themes/base/_oj-option.scss +0 -0
  659. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/option/themes/redwood/oj-option.scss +0 -0
  660. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/option/themes/stable/oj-option.scss +0 -0
  661. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/paging-control/themes/base/_oj-paging-control.scss +0 -0
  662. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/paging-control/themes/redwood/_oj-paging-control.cssvars.scss +0 -0
  663. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/paging-control/themes/redwood/oj-paging-control.scss +0 -0
  664. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/paging-control/themes/stable/_oj-paging-control.cssvars.scss +0 -0
  665. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/paging-control/themes/stable/oj-paging-control.scss +0 -0
  666. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/palette/themes/redwood/_oj-palette-scoped.cssvars.scss +0 -0
  667. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/palette/themes/redwood/_oj-palette.cssvars.scss +0 -0
  668. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/palette/themes/stable/_oj-palette.cssvars.scss +0 -0
  669. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/base/_oj-panel.scss +0 -0
  670. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/redwood/_oj-panel-scoped.cssvars.scss +0 -0
  671. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/redwood/_oj-panel.cssvars.scss +0 -0
  672. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/redwood/oj-panel.scss +0 -0
  673. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/stable/_oj-panel.cssvars.scss +0 -0
  674. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/panel/themes/stable/oj-panel.scss +0 -0
  675. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/picto-chart/themes/base/_oj-picto-chart.scss +0 -0
  676. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/picto-chart/themes/redwood/_oj-picto-chart.cssvars.scss +0 -0
  677. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/picto-chart/themes/redwood/oj-picto-chart.scss +0 -0
  678. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/picto-chart/themes/stable/_oj-picto-chart.cssvars.scss +0 -0
  679. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/picto-chart/themes/stable/oj-picto-chart.scss +0 -0
  680. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/base/_oj-layer.scss +0 -0
  681. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/base/_oj-popup.scss +0 -0
  682. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/redwood/_oj-layer.scss +0 -0
  683. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/redwood/_oj-popup.cssvars.scss +0 -0
  684. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/redwood/oj-popup.scss +0 -0
  685. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/stable/_oj-layer.scss +0 -0
  686. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/stable/_oj-popup.cssvars.scss +0 -0
  687. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/popup/themes/stable/oj-popup.scss +0 -0
  688. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/base/_oj-progress-bar.scss +0 -0
  689. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/redwood/_oj-progress-bar-scoped.cssvars.scss +0 -0
  690. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/redwood/_oj-progress-bar.cssvars.scss +0 -0
  691. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/redwood/_oj-progress-bar.servervars.scss +0 -0
  692. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/redwood/oj-progress-bar.scss +0 -0
  693. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/stable/_oj-progress-bar.cssvars.scss +0 -0
  694. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/stable/_oj-progress-bar.servervars.scss +0 -0
  695. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-bar/themes/stable/oj-progress-bar.scss +0 -0
  696. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/base/_oj-progress-circle.scss +0 -0
  697. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/redwood/_oj-progress-circle-scoped.cssvars.scss +0 -0
  698. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/redwood/_oj-progress-circle.cssvars.scss +0 -0
  699. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/redwood/_oj-progress-circle.servervars.scss +0 -0
  700. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/redwood/oj-progress-circle.scss +0 -0
  701. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/stable/_oj-progress-circle.cssvars.scss +0 -0
  702. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/stable/_oj-progress-circle.servervars.scss +0 -0
  703. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/progress-circle/themes/stable/oj-progress-circle.scss +0 -0
  704. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/base/_oj-radiocheckbox.scss +0 -0
  705. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox-scoped.cssvars.scss +0 -0
  706. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox.cssvars.scss +0 -0
  707. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox.servervars.scss +0 -0
  708. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/stable/_oj-radiocheckbox.cssvars.scss +0 -0
  709. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radio-checkbox/themes/stable/_oj-radiocheckbox.servervars.scss +0 -0
  710. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radioset/themes/redwood/_oj-radioset.cssvars.scss +0 -0
  711. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radioset/themes/redwood/oj-radioset.scss +0 -0
  712. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radioset/themes/stable/_oj-radioset.cssvars.scss +0 -0
  713. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/radioset/themes/stable/oj-radioset.scss +0 -0
  714. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rangeslider/themes/redwood/_oj-rangeslider.cssvars.scss +0 -0
  715. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rangeslider/themes/redwood/oj-rangeslider.scss +0 -0
  716. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rangeslider/themes/stable/_oj-rangeslider.cssvars.scss +0 -0
  717. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rangeslider/themes/stable/oj-rangeslider.scss +0 -0
  718. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rating-gauge/themes/base/_oj-rating-gauge.scss +0 -0
  719. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rating-gauge/themes/redwood/_oj-rating-gauge.cssvars.scss +0 -0
  720. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rating-gauge/themes/redwood/oj-rating-gauge.scss +0 -0
  721. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rating-gauge/themes/stable/_oj-rating-gauge.cssvars.scss +0 -0
  722. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/rating-gauge/themes/stable/oj-rating-gauge.scss +0 -0
  723. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/base/_oj-refresher.scss +0 -0
  724. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/redwood/_oj-refresher.cssvars.scss +0 -0
  725. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/redwood/_oj-refresher.servervars.scss +0 -0
  726. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/redwood/oj-refresher.scss +0 -0
  727. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/stable/_oj-refresher.cssvars.scss +0 -0
  728. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/stable/_oj-refresher.servervars.scss +0 -0
  729. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/refresher/themes/stable/oj-refresher.scss +0 -0
  730. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/resizable/themes/base/_oj-resizable.scss +0 -0
  731. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/resizable/themes/redwood/_oj-resizable.scss +0 -0
  732. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/resizable/themes/stable/_oj-resizable.scss +0 -0
  733. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/row-expander/themes/base/_oj-row-expander.scss +0 -0
  734. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/row-expander/themes/redwood/_oj-row-expander.cssvars.scss +0 -0
  735. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/row-expander/themes/redwood/oj-row-expander.scss +0 -0
  736. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/row-expander/themes/stable/_oj-row-expander.cssvars.scss +0 -0
  737. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/row-expander/themes/stable/oj-row-expander.scss +0 -0
  738. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/base/_oj-scrollbar.scss +0 -0
  739. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar-scoped.cssvars.scss +0 -0
  740. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar.cssvars.scss +0 -0
  741. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar.scss +0 -0
  742. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/stable/_oj-scrollbar.cssvars.scss +0 -0
  743. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/scrollbar/themes/stable/_oj-scrollbar.scss +0 -0
  744. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select/themes/base/_oj-select.scss +0 -0
  745. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select/themes/redwood/_oj-select.cssvars.scss +0 -0
  746. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select/themes/redwood/_oj-select.scss +0 -0
  747. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select/themes/stable/_oj-select.cssvars.scss +0 -0
  748. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select/themes/stable/_oj-select.scss +0 -0
  749. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-many/themes/redwood/oj-select-many.scss +0 -0
  750. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-many/themes/stable/oj-select-many.scss +0 -0
  751. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-one/themes/redwood/oj-select-one.scss +0 -0
  752. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-original/themes/base/_oj-select-original.scss +5 -5
  753. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-original/themes/redwood/_oj-select-original.cssvars.scss +0 -0
  754. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-original/themes/redwood/_oj-select-original.scss +0 -0
  755. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-original/themes/stable/_oj-select-original.cssvars.scss +0 -0
  756. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-original/themes/stable/_oj-select-original.scss +0 -0
  757. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-single/themes/base/_oj-select-single.scss +0 -0
  758. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-single/themes/redwood/oj-select-single.scss +0 -0
  759. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/select-single/themes/stable/oj-select-single.scss +0 -0
  760. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/selector/themes/base/_oj-selector.scss +0 -0
  761. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/selector/themes/redwood/_oj-selector.cssvars.scss +0 -0
  762. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/selector/themes/redwood/oj-selector.scss +0 -0
  763. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/selector/themes/stable/_oj-selector.cssvars.scss +0 -0
  764. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/selector/themes/stable/oj-selector.scss +0 -0
  765. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/slider/themes/base/_oj-slider.scss +0 -0
  766. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/slider/themes/redwood/_oj-slider.cssvars.scss +0 -0
  767. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/slider/themes/redwood/oj-slider.scss +0 -0
  768. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/slider/themes/stable/_oj-slider.cssvars.scss +0 -0
  769. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/slider/themes/stable/oj-slider.scss +0 -0
  770. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/spark-chart/themes/base/_oj-spark-chart.scss +0 -0
  771. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/spark-chart/themes/redwood/oj-spark-chart.scss +0 -0
  772. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/spark-chart/themes/stable/oj-spark-chart.scss +0 -0
  773. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/status-meter-gauge/themes/base/_oj-status-meter-gauge.scss +0 -0
  774. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/status-meter-gauge/themes/redwood/_oj-status-meter-gauge.cssvars.scss +0 -0
  775. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/status-meter-gauge/themes/redwood/oj-status-meter-gauge.scss +0 -0
  776. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/status-meter-gauge/themes/stable/_oj-status-meter-gauge.cssvars.scss +0 -0
  777. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/status-meter-gauge/themes/stable/oj-status-meter-gauge.scss +0 -0
  778. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/base/_oj-stream-list.scss +0 -0
  779. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/redwood/_oj-stream-list.cssvars.scss +0 -0
  780. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/redwood/_oj-stream-list.servervars.scss +0 -0
  781. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/redwood/oj-stream-list.scss +0 -0
  782. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/stable/_oj-stream-list.cssvars.scss +0 -0
  783. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/stable/_oj-stream-list.servervars.scss +0 -0
  784. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/stream-list/themes/stable/oj-stream-list.scss +0 -0
  785. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/sunburst/themes/base/_oj-sunburst.scss +0 -0
  786. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/sunburst/themes/redwood/_oj-sunburst.cssvars.scss +0 -0
  787. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/sunburst/themes/redwood/oj-sunburst.scss +0 -0
  788. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/sunburst/themes/stable/_oj-sunburst.cssvars.scss +0 -0
  789. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/sunburst/themes/stable/oj-sunburst.scss +0 -0
  790. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/swipe-actions/themes/base/_oj-swipe-actions.scss +0 -0
  791. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/swipe-actions/themes/redwood/_oj-swipe-actions.cssvars.scss +0 -0
  792. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/swipe-actions/themes/redwood/oj-swipe-actions.scss +0 -0
  793. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/swipe-actions/themes/stable/_oj-swipe-actions.cssvars.scss +0 -0
  794. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/swipe-actions/themes/stable/oj-swipe-actions.scss +0 -0
  795. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switch/themes/base/_oj-switch.scss +0 -0
  796. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switch/themes/redwood/_oj-switch.cssvars.scss +0 -0
  797. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switch/themes/redwood/oj-switch.scss +0 -0
  798. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switch/themes/stable/_oj-switch.cssvars.scss +0 -0
  799. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switch/themes/stable/oj-switch.scss +0 -0
  800. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switcher/themes/base/_oj-switcher.scss +0 -0
  801. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switcher/themes/redwood/oj-switcher.scss +0 -0
  802. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/switcher/themes/stable/oj-switcher.scss +0 -0
  803. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/base/_oj-tab-bar.scss +0 -0
  804. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/redwood/_oj-tab-bar-scoped.cssvars.scss +0 -0
  805. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/redwood/_oj-tab-bar.cssvars.scss +0 -0
  806. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/redwood/oj-tab-bar.scss +0 -0
  807. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/stable/_oj-tab-bar-scoped.cssvars.scss +0 -0
  808. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/stable/_oj-tab-bar.cssvars.scss +0 -0
  809. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tab-bar/themes/stable/oj-tab-bar.scss +0 -0
  810. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/table/themes/base/_oj-table.scss +12 -1
  811. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/table/themes/redwood/_oj-table.cssvars.scss +0 -0
  812. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/table/themes/redwood/oj-table.scss +0 -0
  813. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/table/themes/stable/_oj-table.cssvars.scss +0 -0
  814. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/table/themes/stable/oj-table.scss +0 -0
  815. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tag-cloud/themes/base/_oj-tag-cloud.scss +0 -0
  816. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tag-cloud/themes/redwood/_oj-tag-cloud.cssvars.scss +0 -0
  817. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tag-cloud/themes/redwood/oj-tag-cloud.scss +0 -0
  818. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tag-cloud/themes/stable/_oj-tag-cloud.cssvars.scss +0 -0
  819. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tag-cloud/themes/stable/oj-tag-cloud.scss +0 -0
  820. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/base/_oj-notags.scss +0 -0
  821. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/base/_oj-tags.scss +0 -0
  822. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/redwood/_oj-tags-scoped.cssvars.scss +0 -0
  823. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/redwood/_oj-tags.cssvars.scss +0 -0
  824. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/redwood/oj-notags.scss +0 -0
  825. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/redwood/oj-tags.scss +0 -0
  826. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/stable/_oj-tags.cssvars.scss +0 -0
  827. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/stable/oj-notags.scss +0 -0
  828. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tags/themes/stable/oj-tags.scss +0 -0
  829. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-area/themes/base/_oj-text-area.scss +2 -2
  830. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-area/themes/redwood/_oj-text-area.cssvars.scss +0 -0
  831. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-area/themes/redwood/oj-text-area.scss +0 -0
  832. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-area/themes/stable/_oj-text-area.cssvars.scss +0 -0
  833. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-area/themes/stable/oj-text-area.scss +0 -0
  834. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-field/themes/base/_oj-text-field.cssvars.scss +0 -0
  835. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-field/themes/redwood/_oj-text-field-scoped.cssvars.scss +0 -0
  836. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-field/themes/redwood/_oj-text-field.cssvars.scss +0 -0
  837. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/text-field/themes/stable/_oj-text-field.cssvars.scss +0 -0
  838. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/thematic-map/themes/base/_oj-thematic-map.scss +0 -0
  839. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/thematic-map/themes/redwood/_oj-thematic-map.cssvars.scss +0 -0
  840. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/thematic-map/themes/redwood/oj-thematic-map.scss +0 -0
  841. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/thematic-map/themes/stable/_oj-thematic-map.cssvars.scss +0 -0
  842. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/thematic-map/themes/stable/oj-thematic-map.scss +0 -0
  843. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/time-axis/themes/base/_oj-time-axis.scss +0 -0
  844. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/time-axis/themes/redwood/_oj-time-axis.cssvars.scss +0 -0
  845. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/time-axis/themes/redwood/oj-time-axis.scss +0 -0
  846. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/time-axis/themes/stable/_oj-time-axis.cssvars.scss +0 -0
  847. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/time-axis/themes/stable/oj-time-axis.scss +0 -0
  848. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/timeline/themes/base/_oj-timeline.scss +15 -7
  849. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/timeline/themes/redwood/_oj-timeline.cssvars.scss +8 -5
  850. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/timeline/themes/redwood/oj-timeline.scss +0 -0
  851. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/timeline/themes/stable/_oj-timeline.cssvars.scss +5 -2
  852. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/timeline/themes/stable/oj-timeline.scss +0 -0
  853. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/toolbar/themes/base/_oj-toolbar.scss +0 -0
  854. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/toolbar/themes/redwood/_oj-toolbar.cssvars.scss +0 -0
  855. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/toolbar/themes/redwood/oj-toolbar.scss +0 -0
  856. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/toolbar/themes/stable/_oj-toolbar.cssvars.scss +0 -0
  857. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/toolbar/themes/stable/oj-toolbar.scss +0 -0
  858. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tooltip/themes/base/_oj-tooltip.scss +0 -0
  859. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tooltip/themes/redwood/_oj-tooltip.cssvars.scss +0 -0
  860. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tooltip/themes/redwood/oj-tooltip.scss +0 -0
  861. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tooltip/themes/stable/_oj-tooltip.cssvars.scss +0 -0
  862. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tooltip/themes/stable/oj-tooltip.scss +0 -0
  863. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/train/themes/base/_oj-train.scss +0 -0
  864. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/train/themes/redwood/_oj-train.cssvars.scss +0 -0
  865. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/train/themes/redwood/oj-train.scss +0 -0
  866. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/train/themes/stable/_oj-train.cssvars.scss +0 -0
  867. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/train/themes/stable/oj-train.scss +0 -0
  868. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tree-view/themes/base/_oj-tree-view.scss +0 -0
  869. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tree-view/themes/redwood/_oj-tree-view.cssvars.scss +0 -0
  870. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tree-view/themes/redwood/oj-tree-view.scss +0 -0
  871. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tree-view/themes/stable/_oj-tree-view.cssvars.scss +0 -0
  872. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/tree-view/themes/stable/oj-tree-view.scss +0 -0
  873. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/treemap/themes/base/_oj-treemap.scss +0 -0
  874. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/treemap/themes/redwood/_oj-treemap.cssvars.scss +0 -0
  875. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/treemap/themes/redwood/oj-treemap.scss +0 -0
  876. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/treemap/themes/stable/_oj-treemap.cssvars.scss +0 -0
  877. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/treemap/themes/stable/oj-treemap.scss +0 -0
  878. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/base/_oj-typography.scss +0 -0
  879. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/redwood/_oj-typography-scoped.cssvars.scss +0 -0
  880. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/redwood/_oj-typography.cssvars.scss +0 -0
  881. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/redwood/oj-typography.scss +0 -0
  882. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/stable/_oj-typography-scoped.cssvars.scss +0 -0
  883. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/stable/_oj-typography.cssvars.scss +0 -0
  884. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/typography/themes/stable/oj-typography.scss +0 -0
  885. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/utilities/_oj.utilities.bidi.scss +0 -0
  886. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/utilities/_oj.utilities.icons.scss +0 -0
  887. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/utilities/_oj.utilities.json.scss +0 -0
  888. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/utilities/_oj.utilities.masonrylayout.scss +0 -0
  889. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/utilities/_oj.utilities.modules.scss +0 -0
  890. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/validation-group/themes/base/_oj-validation-group.scss +0 -0
  891. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/validation-group/themes/redwood/oj-validation-group.scss +0 -0
  892. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/validation-group/themes/stable/oj-validation-group.scss +0 -0
  893. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/waterfall-layout/themes/base/_oj-waterfall-layout.scss +0 -0
  894. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/waterfall-layout/themes/redwood/_oj-waterfall-layout.cssvars.scss +0 -0
  895. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/waterfall-layout/themes/redwood/oj-waterfall-layout.scss +0 -0
  896. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/waterfall-layout/themes/stable/_oj-waterfall-layout.cssvars.scss +0 -0
  897. package/dist/pcss/oj/{v11.0.6 → v11.1.1}/oj/waterfall-layout/themes/stable/oj-waterfall-layout.scss +0 -0
  898. package/dist/scss/alta/_oj.alta.reset.deprecated.vars.scss +0 -1
  899. package/dist/scss/alta/_oj.alta.settings.scss +0 -1
  900. package/dist/scss/alta-android/_oj.alta.android.reset.deprecated.vars.scss +0 -1
  901. package/dist/scss/alta-android/_oj.alta.android.settings.scss +0 -1
  902. package/dist/scss/alta-ios/_oj.alta.ios.reset.deprecated.vars.scss +0 -1
  903. package/dist/scss/alta-ios/_oj.alta.ios.settings.scss +0 -1
  904. package/dist/scss/alta-windows/_oj.alta.windows.reset.deprecated.vars.scss +0 -1
  905. package/dist/scss/alta-windows/_oj.alta.windows.settings.scss +0 -1
  906. package/dist/scss/common/_oj.common.variables.scss +0 -1
  907. package/dist/scss/common/helpers/_oj.common.helpers.scss +1 -1
  908. package/dist/scss/common/widgets/_oj.common.dvt.gantt.scss +3 -5
  909. package/dist/scss/common/widgets/_oj.common.dvt.timeline.scss +1 -1
  910. package/dist/scss/common/widgets/_oj.common.table.scss +2 -2
  911. package/dist/types/ojchart/index.d.ts +81 -81
  912. package/dist/types/ojconfig/index.d.ts +1 -1
  913. package/dist/types/ojdiagram/index.d.ts +30 -30
  914. package/dist/types/ojdrawerlayout/ojdrawerlayout.d.ts +1 -1
  915. package/dist/types/ojdrawerpopup/ojdrawerpopup.d.ts +2 -0
  916. package/dist/types/ojdvttimecomponentscale/index.d.ts +1 -0
  917. package/dist/types/ojgantt/index.d.ts +34 -34
  918. package/dist/types/ojgauge/index.d.ts +22 -22
  919. package/dist/types/ojinputsearch/ojinputsearch.d.ts +2 -0
  920. package/dist/types/ojlegend/index.d.ts +19 -19
  921. package/dist/types/ojnbox/index.d.ts +44 -44
  922. package/dist/types/ojpictochart/index.d.ts +4 -4
  923. package/dist/types/ojrestdataprovider/index.d.ts +2 -1
  924. package/dist/types/ojresttreedataprovider/index.d.ts +93 -0
  925. package/dist/types/ojsunburst/index.d.ts +8 -8
  926. package/dist/types/ojtable/index.d.ts +8 -0
  927. package/dist/types/ojtagcloud/index.d.ts +6 -6
  928. package/dist/types/ojthematicmap/index.d.ts +24 -24
  929. package/dist/types/ojtimeline/index.d.ts +55 -29
  930. package/dist/types/ojtracer/index.d.ts +3 -0
  931. package/dist/types/ojtreemap/index.d.ts +13 -13
  932. package/dist/webpack-tools/4.x/webpack.config.js +3 -3
  933. package/dist/webpack-tools/webpack.config.js +3 -3
  934. package/package.json +1 -1
@@ -5,7 +5,7 @@
5
5
  * as shown at https://oss.oracle.com/licenses/upl/
6
6
  * @ignore
7
7
  */
8
- import { Obj, Agent, KeyboardEvent, ResourceUtils, HtmlTooltipManager, MouseEvent, Displayable, Automation, BaseComponentDefaults, Timer, SimpleMarker, ColorUtils, SolidFill, CSSStyle, LinearGradientFill, Stroke, Rect, EventFactory, ClipPath, Container, Matrix, TransientButton, OutputText, TextUtils, Rectangle, SimpleScrollbar, LayoutUtils, Dimension, Polygon, ToolkitUtils, Animator, Image, Line, Easing, SelectionEffectUtils, BaseComponent, ParallelPlayable, AnimFadeOut, Playable, AnimFadeIn, AriaUtils, SelectionHandler, JsonUtils } from 'ojs/ojdvt-toolkit';
8
+ import { Obj, KeyboardEvent, EventManager, Agent, ResourceUtils, HtmlTooltipManager, MouseEvent, Displayable, Automation, BaseComponentDefaults, SimpleMarker, ColorUtils, SolidFill, CSSStyle, LinearGradientFill, Stroke, Rect, EventFactory, IconButton, ClipPath, Container, Matrix, TransientButton, OutputText, TextUtils, ToolkitUtils, Rectangle, SimpleScrollbar, LayoutUtils, Dimension, Timer, Polygon, Animator, Image, Line, Easing, SelectionEffectUtils, BaseComponent, ParallelPlayable, AnimFadeOut, Playable, AnimFadeIn, AriaUtils, SelectionHandler, JsonUtils } from 'ojs/ojdvt-toolkit';
9
9
  import { TimeComponentKeyboardHandler, TimeComponent, TimeComponentEventManager } from 'ojs/ojdvt-timecomponent';
10
10
  import { TimeAxisUtils, TimeAxis } from 'ojs/ojtimeaxis-toolkit';
11
11
  import { OverviewParser, Overview, OverviewUtils } from 'ojs/ojdvt-overview';
@@ -24,6 +24,30 @@ var DvtTimelineKeyboardHandler = function(manager)
24
24
 
25
25
  Obj.createSubclass(DvtTimelineKeyboardHandler, TimeComponentKeyboardHandler);
26
26
 
27
+ /**
28
+ * @override
29
+ */
30
+ DvtTimelineKeyboardHandler.prototype.processKeyDown = function(event)
31
+ {
32
+ if (this._eventManager._component.isDiscreteNavigationMode()) {
33
+ if (event.keyCode && (event.keyCode == KeyboardEvent.SPACE) || (event.keyCode == KeyboardEvent.ENTER)){
34
+ return this._eventManager.handleArrowPress(event);
35
+ } else if (KeyboardEvent.isPlus(event) || KeyboardEvent.isEquals(event) ||
36
+ KeyboardEvent.isMinus(event) || KeyboardEvent.isUnderscore(event)) {
37
+ // block zooming and horizontal panning.
38
+ EventManager.consumeEvent(event);
39
+ } else if (event.keyCode === KeyboardEvent.PAGE_UP && event.shiftKey) {
40
+ this._eventManager.prevPage();
41
+ } else if (event.keyCode === KeyboardEvent.PAGE_DOWN && event.shiftKey) {
42
+ this._eventManager.nextPage();
43
+ } else {
44
+ return DvtTimelineKeyboardHandler.superclass.processKeyDown.call(this, event);
45
+ }
46
+ } else {
47
+ return DvtTimelineKeyboardHandler.superclass.processKeyDown.call(this, event);
48
+ }
49
+ };
50
+
27
51
  /**
28
52
  * Finds the next navigable item based on direction.
29
53
  * @param {DvtTimelineSeriesNode} currentNavigable The item with current focus.
@@ -81,10 +105,16 @@ DvtTimelineKeyboardHandler.getNextNavigable = function(currentNavigable, event,
81
105
  DvtTimelineKeyboardHandler.getNextItem = function(item, navigableItems, isNext)
82
106
  {
83
107
  var nextIndex = navigableItems.indexOf(item) + (isNext ? 1 : -1);
84
- if (nextIndex >= 0 && nextIndex < navigableItems.length)
108
+ if (nextIndex >= 0 && nextIndex < navigableItems.length) {
85
109
  return navigableItems[nextIndex];
86
- else
110
+ /* Remove keyboard nav arrow navigation
111
+ } else if (nextIndex === -1 && item._timeline.isDiscreteNavigationMode()){
112
+ // go back to next arrow if already at first item before
113
+ return item._timeline._nextArrow;
114
+ */
115
+ } else {
87
116
  return null;
117
+ }
88
118
  };
89
119
 
90
120
  /**
@@ -359,6 +389,11 @@ var DvtTimelineSeriesNode = function(timeline, series, props)
359
389
 
360
390
  Obj.createSubclass(DvtTimelineSeriesNode, Obj);
361
391
 
392
+ // item-type defs
393
+ DvtTimelineSeriesNode.DURATION_EVENT = 'duration-event';
394
+ DvtTimelineSeriesNode.DURATION_BAR = 'duration-bar';
395
+ DvtTimelineSeriesNode.EVENT = 'event';
396
+ DvtTimelineSeriesNode.AUTO = 'auto';
362
397
 
363
398
  /**
364
399
  * @param {object} props The properties for the node.
@@ -491,6 +526,16 @@ DvtTimelineSeriesNode.prototype.setBubble = function(displayable)
491
526
  this._displayable = displayable;
492
527
  };
493
528
 
529
+ DvtTimelineSeriesNode.prototype.getContentBubble = function()
530
+ {
531
+ return this._displayableContent;
532
+ };
533
+
534
+ DvtTimelineSeriesNode.prototype.setContentBubble = function(displayableContent)
535
+ {
536
+ this._displayableContent = displayableContent;
537
+ };
538
+
494
539
  DvtTimelineSeriesNode.prototype.getFeeler = function()
495
540
  {
496
541
  return this._feeler;
@@ -531,6 +576,16 @@ DvtTimelineSeriesNode.prototype.setSpacing = function(spacing)
531
576
  this._spacing = spacing;
532
577
  };
533
578
 
579
+ DvtTimelineSeriesNode.prototype.getEndViewportCollision = function()
580
+ {
581
+ return this._endViewportCollision;
582
+ };
583
+
584
+ DvtTimelineSeriesNode.prototype.setEndViewportCollision = function(endViewportCollision)
585
+ {
586
+ this._endViewportCollision = endViewportCollision;
587
+ };
588
+
534
589
  DvtTimelineSeriesNode.prototype.getDurationLevel = function()
535
590
  {
536
591
  return this._durationLevel;
@@ -595,6 +650,26 @@ DvtTimelineSeriesNode.prototype.setWidth = function(w)
595
650
  this._w = w;
596
651
  };
597
652
 
653
+ DvtTimelineSeriesNode.prototype.getContentWidth = function()
654
+ {
655
+ return this._cw;
656
+ };
657
+
658
+ DvtTimelineSeriesNode.prototype.setContentWidth = function(cw)
659
+ {
660
+ this._cw = cw;
661
+ };
662
+
663
+ DvtTimelineSeriesNode.prototype.getDurationWidth = function()
664
+ {
665
+ return this._dw;
666
+ };
667
+
668
+ DvtTimelineSeriesNode.prototype.setDurationWidth = function(dw)
669
+ {
670
+ this._dw = dw;
671
+ };
672
+
598
673
  DvtTimelineSeriesNode.prototype.getHeight = function()
599
674
  {
600
675
  return this._h;
@@ -781,6 +856,41 @@ DvtTimelineSeriesNode.prototype.getData = function(isPublic)
781
856
  return this._data;
782
857
  };
783
858
 
859
+ /**
860
+ * Gets the item type associated with this series node
861
+ * event: item bubble using only the start date
862
+ * duration-bar: item bubble with a bar on the time-axis that matches the duration of the event using the start/end dates
863
+ * duration-event: item bubble with width equal to the duration and edges of the event matching the start/end date (only available on horizontal timeline)
864
+ * auto (default behavior): event item-type if end date not specified, duration-bar if end date specified.
865
+ *
866
+ * @return {string} The string value of the item type
867
+ */
868
+ DvtTimelineSeriesNode.prototype.getItemType = function()
869
+ {
870
+ var itemType = this._data.itemType;
871
+
872
+ // Default to auto if not specified
873
+ if (!itemType || itemType === DvtTimelineSeriesNode.AUTO) {
874
+ if (!this._endTime) {
875
+ // no end time so use event
876
+ return DvtTimelineSeriesNode.EVENT;
877
+ } else {
878
+ return DvtTimelineSeriesNode.DURATION_BAR;
879
+ }
880
+ } else {
881
+ if (!this._endTime) {
882
+ // if no end time, just use event
883
+ return DvtTimelineSeriesNode.EVENT;
884
+ }
885
+ if (itemType !== DvtTimelineSeriesNode.EVENT && (this._series.isVertical() || this._timeline.getCtx().getThemeBehavior() === 'alta')) {
886
+ // duration-event not supported in vertical mode or alta
887
+ return DvtTimelineSeriesNode.DURATION_BAR;
888
+ } else {
889
+ return itemType;
890
+ }
891
+ }
892
+ };
893
+
784
894
  /**
785
895
  * Gets the context to be passed into custom renderer callbacks
786
896
  * @return {object} The renderer context
@@ -808,6 +918,7 @@ DvtTimelineSeriesNode.prototype.getDataContext = function()
808
918
  var data = this.getData();
809
919
  var itemData = data['_itemData'];
810
920
  return {
921
+ 'itemType': this.getItemType(),
811
922
  'data': this.getData(true),
812
923
  'seriesData': this._series.getData(true),
813
924
  'itemData': itemData ? itemData : null,
@@ -1076,207 +1187,6 @@ DvtTimelineDefaults.VERSION_1 = {};
1076
1187
  };
1077
1188
  };
1078
1189
 
1079
- /**
1080
- * Timeline event manager.
1081
- * @param {Timeline} timeline The owning Timeline.
1082
- * @extends {TimeComponentEventManager}
1083
- * @constructor
1084
- */
1085
- var DvtTimelineEventManager = function(timeline)
1086
- {
1087
- DvtTimelineEventManager.superclass.constructor.call(this, timeline);
1088
- };
1089
-
1090
- Obj.createSubclass(DvtTimelineEventManager, TimeComponentEventManager);
1091
-
1092
- /**
1093
- * @override
1094
- */
1095
- DvtTimelineEventManager.prototype.addListeners = function(displayable)
1096
- {
1097
- DvtTimelineEventManager.superclass.addListeners.call(this, displayable);
1098
- if (!Agent.isTouchDevice())
1099
- {
1100
- // IE does not always fire the appropriate mouseover and mouseout events, so use mouseenter instead
1101
- if ((Agent.browser === 'ie' || Agent.browser === 'edge'))
1102
- {
1103
- var stage = this.getCtx().getStage();
1104
- stage.addEvtListener('mouseenter', this.OnMouseEnter, false, this);
1105
- stage.addEvtListener('mouseleave', this.OnMouseLeave, false, this);
1106
- }
1107
- }
1108
- };
1109
-
1110
- /**
1111
- * @override
1112
- */
1113
- DvtTimelineEventManager.prototype.RemoveListeners = function(displayable)
1114
- {
1115
- DvtTimelineEventManager.superclass.RemoveListeners.call(this, displayable);
1116
- if (!Agent.isTouchDevice())
1117
- {
1118
- // IE does not always fire the appropriate mouseover and mouseout events, so use mouseenter instead
1119
- if ((Agent.browser === 'ie' || Agent.browser === 'edge'))
1120
- {
1121
- var stage = this.getCtx().getStage();
1122
- stage.removeEvtListener('mouseenter', this.OnMouseEnter, false, this);
1123
- stage.removeEvtListener('mouseleave', this.OnMouseLeave, false, this);
1124
- }
1125
- }
1126
- };
1127
-
1128
- /**
1129
- * @override
1130
- */
1131
- DvtTimelineEventManager.prototype.PreOnMouseOver = function(event)
1132
- {
1133
- if (this._mouseOutTimer && this._mouseOutTimer.isRunning())
1134
- this._mouseOutTimer.stop();
1135
- DvtTimelineEventManager.superclass.PreOnMouseOver.call(this, event);
1136
-
1137
- if (Agent.browser !== 'ie' && Agent.browser !== 'edge' && !this.isMouseOver)
1138
- this.isMouseOver = true;
1139
- };
1140
-
1141
- /**
1142
- * Handler for the mouseenter event.
1143
- * @param {dvt.MouseEvent} event The mouseenter event.
1144
- */
1145
- DvtTimelineEventManager.prototype.OnMouseEnter = function(event)
1146
- {
1147
- if (this._mouseOutTimer && this._mouseOutTimer.isRunning())
1148
- this._mouseOutTimer.stop();
1149
-
1150
- if (!this.isMouseOver)
1151
- this.isMouseOver = true;
1152
- };
1153
-
1154
- /**
1155
- * Handler for the mouseleave event.
1156
- * @param {dvt.MouseEvent} event The mouseleave event.
1157
- */
1158
- DvtTimelineEventManager.prototype.OnMouseLeave = function(event)
1159
- {
1160
- if (!this._mouseOutTimer)
1161
- this._mouseOutTimer = new Timer(this.getCtx(), 10, this._onMouseOutTimerEnd, this, 1);
1162
-
1163
- this._mouseOutTimer.reset();
1164
- this._mouseOutTimer.start();
1165
- };
1166
-
1167
- /**
1168
- * @override
1169
- */
1170
- DvtTimelineEventManager.prototype.PreOnMouseOut = function(event)
1171
- {
1172
- DvtTimelineEventManager.superclass.PreOnMouseOut.call(this, event);
1173
- if (Agent.browser !== 'ie' && Agent.browser !== 'edge')
1174
- {
1175
- if (!this._mouseOutTimer)
1176
- this._mouseOutTimer = new Timer(this.getCtx(), 10, this._onMouseOutTimerEnd, this, 1);
1177
-
1178
- this._mouseOutTimer.reset();
1179
- this._mouseOutTimer.start();
1180
- }
1181
- };
1182
-
1183
- /**
1184
- * Mouse out timer callback function.
1185
- * @private
1186
- */
1187
- DvtTimelineEventManager.prototype._onMouseOutTimerEnd = function()
1188
- {
1189
- this.isMouseOver = false;
1190
- };
1191
-
1192
- /**
1193
- * Pans by the specified amount.
1194
- * @param {number} dx A number from specifying the pan ratio in the x direction, e.g. dx = 0.5 means pan end by 50%..
1195
- * @param {number} dy A number from specifying the pan ratio in the y direction, e.g. dy = 0.5 means pan down by 50%.
1196
- */
1197
- DvtTimelineEventManager.prototype.panBy = function(dx, dy)
1198
- {
1199
- var focusObj = this.getFocus();
1200
- if (focusObj)
1201
- this._comp._dragPanSeries = focusObj._series;
1202
-
1203
- DvtTimelineEventManager.superclass.panBy.call(this, dx, dy);
1204
- };
1205
-
1206
- /**
1207
- * Timeline JSON Parser
1208
- * @class
1209
- * @constructor
1210
- * @extends {dvt.Obj}
1211
- */
1212
- var DvtTimelineParser = function() {
1213
-
1214
- };
1215
-
1216
- Obj.createSubclass(DvtTimelineParser, Obj);
1217
-
1218
- /**
1219
- * Parses the specified data options and returns the root node of the timeline
1220
- * @param {object} options The data options describing the component.
1221
- * @return {object} An object containing the parsed properties
1222
- */
1223
- DvtTimelineParser.prototype.parse = function(options)
1224
- {
1225
- var ret = new Object();
1226
- ret.start = new Date(options['start']).getTime();
1227
- ret.end = new Date(options['end']).getTime();
1228
-
1229
- if (options['viewportStart'])
1230
- ret.viewStart = new Date(options['viewportStart']).getTime();
1231
- if (options['viewportEnd'])
1232
- ret.viewEnd = new Date(options['viewportEnd']).getTime();
1233
- if (options['selectionMode'])
1234
- ret.selectionMode = options['selectionMode'];
1235
- else
1236
- ret.selectionMode = 'none';
1237
- ret.inlineStyle = options['style'];
1238
- if (options['svgStyle'])
1239
- ret.inlineStyle = options['svgStyle'];
1240
-
1241
- var minorAxis = options['minorAxis'];
1242
- if (minorAxis)
1243
- {
1244
- var scale = minorAxis['scale'];
1245
- ret.scale = scale;
1246
- ret.customFormatScales = minorAxis['_cfs'];
1247
- }
1248
- var majorAxis = options['majorAxis'];
1249
- if (majorAxis)
1250
- {
1251
- ret.seriesScale = majorAxis['scale'];
1252
- ret.seriesConverter = majorAxis['converter'];
1253
- ret.seriesCustomFormatScales = majorAxis['_cfs'];
1254
- }
1255
- ret.shortDesc = options['shortDesc'];
1256
- ret.orientation = options['orientation'];
1257
- var referenceObjects = options['referenceObjects'];
1258
- if (referenceObjects && referenceObjects.length > 0)
1259
- {
1260
- var referenceObjectsValueArray = [];
1261
- for (var i = 0; i < referenceObjects.length; i++)
1262
- {
1263
- referenceObjectsValueArray.push(new Date(referenceObjects[i]['value']));
1264
- }
1265
- ret.referenceObjects = referenceObjectsValueArray;
1266
- }
1267
-
1268
- var overview = options['overview'];
1269
- if (overview != null && overview['rendered'] === 'on')
1270
- ret.hasOverview = true;
1271
- else
1272
- ret.hasOverview = false;
1273
-
1274
- ret.itemPosition = options['_ip'];
1275
- ret.customTimeScales = options['_cts'];
1276
-
1277
- return ret;
1278
- };
1279
-
1280
1190
  /**
1281
1191
  * Default values and utility functions for component versioning.
1282
1192
  * @class
@@ -2963,18 +2873,39 @@ DvtTimelineStyleUtils._DEFAULT_SERIES_AXIS_LABEL_BACKGROUND_OPACITY = 0.8;
2963
2873
  DvtTimelineStyleUtils._DEFAULT_SERIES_AXIS_LABEL_PADDING = 1;
2964
2874
 
2965
2875
  /**
2966
- * The default Overview width.
2876
+ * The default duration event width
2967
2877
  * @const
2968
2878
  * @private
2969
2879
  */
2970
- DvtTimelineStyleUtils._DEFAULT_OVERVIEW_WIDTH = 60;
2880
+ DvtTimelineStyleUtils._DEFAULT_DURATION_EVENT_WIDTH = 8;
2971
2881
 
2972
2882
  /**
2973
- * The default Overview height.
2883
+ * The default Overview width.
2974
2884
  * @const
2975
2885
  * @private
2976
2886
  */
2977
- DvtTimelineStyleUtils._DEFAULT_OVERVIEW_HEIGHT = 100;
2887
+ DvtTimelineStyleUtils._DEFAULT_OVERVIEW_WIDTH = 60;
2888
+
2889
+ /**
2890
+ * The default nav button background width.
2891
+ * @const
2892
+ * @private
2893
+ */
2894
+ DvtTimelineStyleUtils._DEFAULT_NAV_BUTTON_BACKGROUND_WIDTH = 60;
2895
+
2896
+ /**
2897
+ * The default nav button width.
2898
+ * @const
2899
+ * @private
2900
+ */
2901
+ DvtTimelineStyleUtils._DEFAULT_NAV_BUTTON_WIDTH = 36;
2902
+
2903
+ /**
2904
+ * The default Overview height.
2905
+ * @const
2906
+ * @private
2907
+ */
2908
+ DvtTimelineStyleUtils._DEFAULT_OVERVIEW_HEIGHT = 100;
2978
2909
 
2979
2910
  /**
2980
2911
  * The default Item enabled stroke width.
@@ -3032,6 +2963,20 @@ DvtTimelineStyleUtils._DEFAULT_ITEM_INNER_STROKE_WIDTH = 2;
3032
2963
  */
3033
2964
  DvtTimelineStyleUtils._DEFAULT_BUBBLE_OFFSET = 20;
3034
2965
 
2966
+ /**
2967
+ * The default content bubble arrow size.
2968
+ * @const
2969
+ * @private
2970
+ */
2971
+ DvtTimelineStyleUtils._DEFAULT_CONTENT_BUBBLE_ARROW = 7.5;
2972
+
2973
+ /**
2974
+ * The default content bubble arrow size.
2975
+ * @const
2976
+ * @private
2977
+ */
2978
+ DvtTimelineStyleUtils._DEFAULT_CONTENT_BUBBLE_SPACING = 15.5;
2979
+
3035
2980
  /**
3036
2981
  * The default Item bubble spacing.
3037
2982
  * @const
@@ -3088,6 +3033,20 @@ DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_PADDING = 10.5;
3088
3033
  */
3089
3034
  DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_SPACING = 9;
3090
3035
 
3036
+ /**
3037
+ * The default navigation arrow width.
3038
+ * @const
3039
+ * @private
3040
+ */
3041
+ DvtTimelineStyleUtils._DEFAULT_NAVIGATION_ARROW_WIDTH = 32;
3042
+
3043
+ /**
3044
+ * The default navigation arrow padding.
3045
+ * @const
3046
+ * @private
3047
+ */
3048
+ DvtTimelineStyleUtils._DEFAULT_NAVIGATION_ARROW_PADDING = 8;
3049
+
3091
3050
  /**
3092
3051
  * Gets the item description style.
3093
3052
  * @param {DvtTimelineSeriesNode} item The item to be styled.
@@ -3210,6 +3169,26 @@ DvtTimelineStyleUtils.getBubbleSpacing = function()
3210
3169
  return DvtTimelineStyleUtils._DEFAULT_BUBBLE_SPACING;
3211
3170
  };
3212
3171
 
3172
+ /**
3173
+ * Gets the item bubble padding.
3174
+ * @param {object} options The object containing data and specifications for the component.
3175
+ * @return {number} The bubble padding.
3176
+ */
3177
+ DvtTimelineStyleUtils.getBubblePadding = function(options)
3178
+ {
3179
+ return DvtTimelineStyleUtils.getNumberFromString(options['styleDefaults']['item']['padding']);
3180
+ };
3181
+
3182
+ /**
3183
+ * Gets the item bubble margin.
3184
+ * @param {object} options The object containing data and specifications for the component.
3185
+ * @return {number} The bubble margin.
3186
+ */
3187
+ DvtTimelineStyleUtils.getBubbleRadius = function(options)
3188
+ {
3189
+ return DvtTimelineStyleUtils.getNumberFromString(options['styleDefaults']['item']['borderRadius']);
3190
+ };
3191
+
3213
3192
  /**
3214
3193
  * Gets the item content spacing.
3215
3194
  * @return {number} The item content spacing.
@@ -3298,11 +3277,12 @@ DvtTimelineStyleUtils.getItemHoverStrokeColor = function(item)
3298
3277
 
3299
3278
  /**
3300
3279
  * Gets the item hover stroke width.
3280
+ * @param {object} options The object containing data and specifications for the component.
3301
3281
  * @return {number} The item hover stroke width.
3302
3282
  */
3303
- DvtTimelineStyleUtils.getItemHoverStrokeWidth = function()
3283
+ DvtTimelineStyleUtils.getItemHoverStrokeWidth = function(options)
3304
3284
  {
3305
- return DvtTimelineStyleUtils._DEFAULT_ITEM_HOVER_STROKE_WIDTH;
3285
+ return DvtTimelineStyleUtils.getNumberFromString(options['styleDefaults']['item']['hoverStrokeWidth']);
3306
3286
  };
3307
3287
 
3308
3288
  /**
@@ -3463,6 +3443,24 @@ DvtTimelineStyleUtils.getOverviewHeight = function()
3463
3443
  return DvtTimelineStyleUtils._DEFAULT_OVERVIEW_HEIGHT;
3464
3444
  };
3465
3445
 
3446
+ /**
3447
+ * Gets the fixed viewport navigation arrow width.
3448
+ * @return {number} The overview height.
3449
+ */
3450
+ DvtTimelineStyleUtils.getNavigationArrowWidth = function()
3451
+ {
3452
+ return DvtTimelineStyleUtils._DEFAULT_NAVIGATION_ARROW_WIDTH;
3453
+ };
3454
+
3455
+ /**
3456
+ * Gets the fixed viewport navigation arrow padding.
3457
+ * @return {number} The overview height.
3458
+ */
3459
+ DvtTimelineStyleUtils.getNavigationArrowPadding = function()
3460
+ {
3461
+ return DvtTimelineStyleUtils._DEFAULT_NAVIGATION_ARROW_PADDING;
3462
+ };
3463
+
3466
3464
  /**
3467
3465
  * Gets the overview window background color.
3468
3466
  * @param {object} options The object containing data and specifications for the component.
@@ -3574,6 +3572,199 @@ DvtTimelineStyleUtils.convertToCSSStyle = function(style)
3574
3572
  return style;
3575
3573
  };
3576
3574
 
3575
+ /**
3576
+ * Returns a number parsed from the string css value
3577
+ * @param {string} cssString
3578
+ * @return {number} The parsed css number value or null if no string provided
3579
+ */
3580
+ DvtTimelineStyleUtils.getNumberFromString = function(cssString)
3581
+ {
3582
+ if (cssString) {
3583
+ var numVal = cssString.match(/(\d+)/)[0];
3584
+ return numVal;
3585
+ }
3586
+ return null;
3587
+ };
3588
+
3589
+ /**
3590
+ * Returns min width for duration event bubble
3591
+ * @return {number} The minimum width of the duration event bubble
3592
+ */
3593
+ DvtTimelineStyleUtils.getMinDurationEvent = function()
3594
+ {
3595
+ return DvtTimelineStyleUtils._DEFAULT_DURATION_EVENT_WIDTH;
3596
+ };
3597
+
3598
+ /**
3599
+ * Returns size for content bubble arrow
3600
+ * @return {number} The size of the content bubble arrow
3601
+ */
3602
+ DvtTimelineStyleUtils.getContentBubbleArrow = function()
3603
+ {
3604
+ return DvtTimelineStyleUtils._DEFAULT_CONTENT_BUBBLE_ARROW;
3605
+ };
3606
+
3607
+ /**
3608
+ * Returns size for content bubble spacing
3609
+ * @return {number} The size of the content bubble space
3610
+ */
3611
+ DvtTimelineStyleUtils.getContentBubbleSpacing = function()
3612
+ {
3613
+ return DvtTimelineStyleUtils._DEFAULT_CONTENT_BUBBLE_SPACING;
3614
+ };
3615
+
3616
+ /**
3617
+ * Returns width/height for the nav arrow button background
3618
+ * @return {number} The width/height of the nav arrow button background
3619
+ */
3620
+ DvtTimelineStyleUtils.getNavButtonBackgroundWidth = function()
3621
+ {
3622
+ return DvtTimelineStyleUtils._DEFAULT_NAV_BUTTON_BACKGROUND_WIDTH;
3623
+ };
3624
+
3625
+ /**
3626
+ * Returns width/height for the nav arrow button
3627
+ * @return {number} The width/height of the nav arrow button
3628
+ */
3629
+ DvtTimelineStyleUtils.getNavButtonWidth = function()
3630
+ {
3631
+ return DvtTimelineStyleUtils._DEFAULT_NAV_BUTTON_WIDTH;
3632
+ };
3633
+
3634
+ /**
3635
+ * Returns bgcolor for content bubble
3636
+ * @return {string} The bgcolor of the content bubble
3637
+ */
3638
+ DvtTimelineStyleUtils.getContentBubbleBackgroundColor = function(options)
3639
+ {
3640
+ return options['styleDefaults']['durationEventOverflow']['backgroundColor'];
3641
+ };
3642
+
3643
+ /**
3644
+ * DvtTimelineNavigationButton subclass of IconButton
3645
+ * @param {Timeline} timeline The parent timeline.
3646
+ * @param {dvt.Context} context
3647
+ * @param {'outlined'|'borderless'} chroming
3648
+ * @param {object} iconOptions supports keys style, size, pos
3649
+ * @param {dvt.Shape} background (optional)
3650
+ * @param {string} id
3651
+ * @param {object=} callback
3652
+ * @param {object=} callbackObj
3653
+ * @extends {dvt.Path}
3654
+ * @constructor
3655
+ *
3656
+ */
3657
+ const DvtTimelineNavigationButton = function (
3658
+ timeline,
3659
+ context,
3660
+ chroming,
3661
+ iconOptions,
3662
+ background,
3663
+ id,
3664
+ callback,
3665
+ callbackObj
3666
+ ) {
3667
+ this.Init(timeline, context, chroming, iconOptions, background, id, callback, callbackObj);
3668
+ };
3669
+ Obj.createSubclass(DvtTimelineNavigationButton, IconButton);
3670
+ DvtTimelineNavigationButton.prototype.Init = function(
3671
+ timeline,
3672
+ context,
3673
+ chroming,
3674
+ iconOptions,
3675
+ background,
3676
+ id,
3677
+ callback,
3678
+ callbackObj
3679
+ ) {
3680
+ this._id = id;
3681
+ this._timeline = timeline;
3682
+ this._enabledState = true;
3683
+ DvtTimelineNavigationButton.superclass.Init.call(this, context, chroming, iconOptions, background, id, callback, callbackObj);
3684
+ this.setAriaRole('button');
3685
+ };
3686
+ DvtTimelineNavigationButton.prototype.getNextNavigable = function (event) {
3687
+ var keyboardHandler = this._timeline.EventManager.getKeyboardHandler();
3688
+ var isRTL = Agent.isRightToLeft(this._timeline.getCtx());
3689
+
3690
+ if (event.type === MouseEvent.CLICK || keyboardHandler.isMultiSelectEvent(event)) {
3691
+ return this;
3692
+ }
3693
+ else if (keyboardHandler.isNavigationEvent(event)) {
3694
+ if ((!isRTL && KeyboardEvent.RIGHT_ARROW === event.keyCode) || (isRTL && KeyboardEvent.LEFT_ARROW === event.keyCode)) {
3695
+ // go forward
3696
+ if (this._id === 'prevNavArrow') {
3697
+ return this._timeline._nextArrow;
3698
+ } else {
3699
+ for (var i = 0; i < this._timeline._series.length; i++)
3700
+ {
3701
+ var series = this._timeline._series[i];
3702
+ if (series._items && series._items.length > 0)
3703
+ {
3704
+ return series._items[0];
3705
+ }
3706
+ }
3707
+ }
3708
+ } else if ((!isRTL && KeyboardEvent.LEFT_ARROW === event.keyCode) || (isRTL && KeyboardEvent.RIGHT_ARROW === event.keyCode)) {
3709
+ // go backwards
3710
+ if (this._id === 'nextNavArrow') {
3711
+ return this._timeline._prevArrow;
3712
+ } else {
3713
+ // don't do anything since you can only go forwards if already prevArrow
3714
+ return this;
3715
+ }
3716
+ }
3717
+ }
3718
+ else {
3719
+ return null;
3720
+ }
3721
+ };
3722
+ DvtTimelineNavigationButton.prototype.getAriaLabel = function ()
3723
+ {
3724
+ var translations = this._timeline.getOptions().translations;
3725
+ var states = !this._enabledState ? [translations['navArrowDisabledState']] : [];
3726
+ var label = Displayable.generateAriaLabel(this.getAriaString(), states);
3727
+ return label;
3728
+ };
3729
+
3730
+ DvtTimelineNavigationButton.prototype.getAriaString = function()
3731
+ {
3732
+ var translations = this._timeline.getOptions().translations;
3733
+ if (this._id === 'prevNavArrow')
3734
+ return translations['labelAccNavPreviousPage'];
3735
+ else if (this._id === 'nextNavArrow')
3736
+ return translations['labelAccNavNextPage'];
3737
+ };
3738
+
3739
+ /**
3740
+ * Implemented for DvtKeyboardNavigable
3741
+ * @override
3742
+ */
3743
+ DvtTimelineNavigationButton.prototype.getKeyboardBoundingBox = function(targetCoordinateSpace)
3744
+ {
3745
+ return this.getDimensions(targetCoordinateSpace);
3746
+ };
3747
+
3748
+ /**
3749
+ * Catch the state
3750
+ * @override
3751
+ */
3752
+ DvtTimelineNavigationButton.prototype.setEnabled = function(enabledState)
3753
+ {
3754
+ this._enabledState = enabledState;
3755
+ this.setAriaProperty('label', this.getAriaLabel());
3756
+ DvtTimelineNavigationButton.superclass.setEnabled.call(this, enabledState);
3757
+ };
3758
+
3759
+ /**
3760
+ * Implemented for DvtKeyboardNavigable
3761
+ * @override
3762
+ */
3763
+ DvtTimelineNavigationButton.prototype.getTargetElem = function()
3764
+ {
3765
+ return this.getElem();
3766
+ };
3767
+
3577
3768
  /**
3578
3769
  * Renderer for Timeline.
3579
3770
  * @class
@@ -3599,6 +3790,10 @@ DvtTimelineRenderer.renderTimeline = function(timeline)
3599
3790
  DvtTimelineRenderer._renderSeries(timeline, timeZoomCanvas);
3600
3791
  DvtTimelineRenderer._renderSeriesLabels(timeline);
3601
3792
  DvtTimelineRenderer._renderAxis(timeline, timeZoomCanvas);
3793
+ if (timeline.isDiscreteNavigationMode())
3794
+ DvtTimelineRenderer._renderNavigationArrows(timeline, timeZoomCanvas);
3795
+ else
3796
+ DvtTimelineRenderer._hideNavigationArrows(timeline, timeZoomCanvas);
3602
3797
 
3603
3798
  if (timeline._hasOverview)
3604
3799
  DvtTimelineRenderer._renderOverview(timeline);
@@ -3608,6 +3803,12 @@ DvtTimelineRenderer.renderTimeline = function(timeline)
3608
3803
  // just use the first object as the focus
3609
3804
  if (timeline._keyboardHandler)
3610
3805
  {
3806
+ // if navigation mode set focus to prev arrow (removed for now)
3807
+ /*
3808
+ if (timeline.isDiscreteNavigationMode()) {
3809
+ timeline.EventManager.setFocusObj(timeline._prevArrow);
3810
+ }
3811
+ */
3611
3812
  for (var i = 0; i < timeline._series.length; i++)
3612
3813
  {
3613
3814
  series = timeline._series[i];
@@ -3617,6 +3818,7 @@ DvtTimelineRenderer.renderTimeline = function(timeline)
3617
3818
  break;
3618
3819
  }
3619
3820
  }
3821
+
3620
3822
  }
3621
3823
  if (timeline.isTimeDirScrollbarOn() || timeline.isContentDirScrollbarOn())
3622
3824
  DvtTimelineRenderer._renderScrollbars(timeline);
@@ -3867,6 +4069,130 @@ DvtTimelineRenderer._renderSeriesLabels = function(timeline)
3867
4069
  }
3868
4070
  };
3869
4071
 
4072
+ /**
4073
+ * Renders the navigation arrows of the timeline
4074
+ * @param {Timeline} timeline The timeline being rendered.
4075
+ * @param {dvt.Container} container The container to render into.
4076
+ * @private
4077
+ */
4078
+ DvtTimelineRenderer._renderNavigationArrows = function(timeline, container)
4079
+ {
4080
+ var context = timeline.getCtx();
4081
+ var isRTL = Agent.isRightToLeft(context);
4082
+ var length = timeline.getContentLength() * timeline._timeAxisRatio;
4083
+ var seriesCount = timeline._series.length;
4084
+ var axisVisibleSize = timeline.getTimeAxisVisibleSize(seriesCount);
4085
+ var navButtonBackgroundWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
4086
+ var navButtonWidth = DvtTimelineStyleUtils.getNavButtonWidth();
4087
+ var axisStart = seriesCount === 1 ? (timeline._canvasSize - axisVisibleSize) : (timeline._canvasSize / seriesCount - (axisVisibleSize / 2));
4088
+ var timeAxisOffset = TimeAxisUtils.getDatePosition(timeline._start, timeline._end, timeline._viewStartTime, length) + timeline._discreteOffset - navButtonBackgroundWidth;
4089
+ var nextTimeAxisOffset = timeline._backgroundWidth + timeAxisOffset - navButtonBackgroundWidth;
4090
+ if (isRTL) {
4091
+ nextTimeAxisOffset = length - nextTimeAxisOffset - navButtonBackgroundWidth - timeline.getScrollbarPadding() + timeline._discreteOffset * 2;
4092
+ timeAxisOffset = length - timeAxisOffset - navButtonBackgroundWidth + timeline._discreteOffset * 2;
4093
+ }
4094
+ var buttonBorderColor = timeline.Options['styleDefaults']['item']['borderColor'];
4095
+ var buttonStroke = new Stroke(buttonBorderColor, 1, 1);
4096
+ var arrowContainerBackFillColor = timeline.Options['styleDefaults']['series']['backgroundColor'];
4097
+ var translations = timeline.getOptions().translations;
4098
+
4099
+ if (timeline._prevArrowContainer == null) {
4100
+ var prevArrowContainer = new Container(context);
4101
+ var prevContainerBackground = new Rect(context, 0, 0, navButtonBackgroundWidth, navButtonBackgroundWidth, 'prevNavContainer');
4102
+ var prevArrowButton = new Rect(context, 0, 0, navButtonWidth, navButtonWidth, 'prevNavContainer_i');
4103
+ prevArrowButton.setCornerRadius(4);
4104
+ prevArrowButton.setTranslate(8, 8);
4105
+ prevContainerBackground.addChild(prevArrowButton);
4106
+ prevArrowContainer.addChild(prevContainerBackground);
4107
+ prevArrowContainer.setTranslate(timeAxisOffset, axisStart - navButtonWidth);
4108
+ prevArrowContainer.setClassName('oj-timeline-nav-arrow oj-timeline-nav-arrow-previous');
4109
+ prevArrowButton.setStroke(buttonStroke);
4110
+ prevArrowContainer.setSolidFill(arrowContainerBackFillColor);
4111
+ var iconStyle = ToolkitUtils.getIconStyle(context, timeline._resources.prev);
4112
+ var prevButtonIcon = new DvtTimelineNavigationButton(timeline, context, 'outlined', {style: iconStyle, size: 28}, null, 'prevNavArrow', timeline.EventManager.prevPage, timeline.EventManager);
4113
+ prevButtonIcon.setTranslate(4, 4);
4114
+ prevArrowButton.addChild(prevButtonIcon);
4115
+ container.addChild(prevArrowContainer);
4116
+ timeline._prevArrowContainer = prevArrowContainer;
4117
+ timeline._prevArrow = prevButtonIcon;
4118
+ } else {
4119
+ timeline._prevArrowContainer.setVisible('visible');
4120
+ timeline._prevArrowContainer.setTranslate(timeAxisOffset, axisStart - navButtonWidth);
4121
+ container.removeChild(timeline._prevArrowContainer);
4122
+ container.addChild(timeline._prevArrowContainer);
4123
+ }
4124
+
4125
+ if (timeline._nextArrowContainer == null) {
4126
+ var nextArrowContainer = new Container(context);
4127
+ var nextContainerBackground = new Rect(context, 0, 0, navButtonBackgroundWidth, navButtonBackgroundWidth, 'nextNavContainer');
4128
+ var nextArrowButton = new Rect(context, 0, 0, navButtonWidth, navButtonWidth, 'nextNavContainer_i');
4129
+ nextArrowButton.setCornerRadius(4);
4130
+ nextArrowButton.setTranslate(16, 8);
4131
+ nextContainerBackground.addChild(nextArrowButton);
4132
+ nextArrowContainer.addChild(nextContainerBackground);
4133
+ nextArrowContainer.setTranslate(nextTimeAxisOffset, axisStart - navButtonWidth);
4134
+ nextArrowContainer.setClassName('oj-timeline-nav-arrow oj-timeline-nav-arrow-next');
4135
+ nextArrowButton.setStroke(buttonStroke);
4136
+ nextArrowContainer.setSolidFill(arrowContainerBackFillColor);
4137
+ var iconStyle = ToolkitUtils.getIconStyle(context, timeline._resources.next);
4138
+ var nextButtonIcon = new DvtTimelineNavigationButton(timeline, context, 'outlined', {style: iconStyle, size: 28}, null, 'nextNavArrow', timeline.EventManager.nextPage, timeline.EventManager);
4139
+ nextButtonIcon.setTranslate(4, 4);
4140
+ nextArrowButton.addChild(nextButtonIcon);
4141
+ container.addChild(nextArrowContainer);
4142
+ timeline._nextArrowContainer = nextArrowContainer;
4143
+ timeline._nextArrow = nextButtonIcon;
4144
+ } else {
4145
+ timeline._nextArrowContainer.setVisible('visible');
4146
+ timeline._nextArrowContainer.setTranslate(nextTimeAxisOffset, axisStart - navButtonWidth);
4147
+ container.removeChild(timeline._nextArrowContainer);
4148
+ container.addChild(timeline._nextArrowContainer);
4149
+ }
4150
+
4151
+ DvtTimelineRenderer._checkDisabledArrows(timeline);
4152
+ };
4153
+
4154
+ /**
4155
+ * Hides the navigation arrows of the timeline if they exist
4156
+ * @param {Timeline} timeline The timeline being rendered.
4157
+ * @private
4158
+ */
4159
+ DvtTimelineRenderer._hideNavigationArrows = function(timeline)
4160
+ {
4161
+ if (timeline._prevArrowContainer != null) {
4162
+ timeline._prevArrowContainer.setVisible();
4163
+ }
4164
+ if (timeline._nextArrowContainer != null) {
4165
+ timeline._nextArrowContainer.setVisible();
4166
+ }
4167
+
4168
+ };
4169
+
4170
+ /**
4171
+ * Adds disabled state to the arrows if they are at the end of the available range.
4172
+ * @param {Timeline} timeline The timeline being rendered.
4173
+ * @private
4174
+ */
4175
+ DvtTimelineRenderer._checkDisabledArrows = function(timeline)
4176
+ {
4177
+ var earlierDates = timeline.getDiscreteViewportDatePosition(timeline._discreteViewportCurrentIndexOffset - 1);
4178
+ var laterDates = timeline.getDiscreteViewportDatePosition(timeline._discreteViewportCurrentIndexOffset + 1);
4179
+ if (earlierDates.startDate < timeline._start) {
4180
+ timeline._prevArrowContainer.addClassName('oj-timeline-nav-arrow-disabled');
4181
+ timeline._prevArrow.setEnabled(false);
4182
+ } else {
4183
+ timeline._prevArrowContainer.removeClassName('oj-timeline-nav-arrow-disabled');
4184
+ timeline._prevArrow.setEnabled(true);
4185
+ }
4186
+
4187
+ if (laterDates.endDate > timeline._end) {
4188
+ timeline._nextArrowContainer.addClassName('oj-timeline-nav-arrow-disabled');
4189
+ timeline._nextArrow.setEnabled(false);
4190
+ } else {
4191
+ timeline._nextArrowContainer.removeClassName('oj-timeline-nav-arrow-disabled');
4192
+ timeline._nextArrow.setEnabled(true);
4193
+ }
4194
+ };
4195
+
3870
4196
  /**
3871
4197
  * Renders the minor time axis of a timeline.
3872
4198
  * @param {Timeline} timeline The timeline being rendered.
@@ -3885,6 +4211,7 @@ DvtTimelineRenderer._renderAxis = function(timeline, container, throttle)
3885
4211
  var axisSize = timeline.getTimeAxisSize();
3886
4212
  var axisVisibleSize = timeline.getTimeAxisVisibleSize(seriesCount);
3887
4213
  var axisStart = seriesCount === 1 ? (timeline._canvasSize - axisVisibleSize) : (timeline._canvasSize / seriesCount - (axisVisibleSize / 2));
4214
+ var length = timeline.getContentLength();
3888
4215
  if (isRTL && timeline.isVertical() && timeline._series.length === 1)
3889
4216
  axisStart = 0;
3890
4217
 
@@ -3898,21 +4225,34 @@ DvtTimelineRenderer._renderAxis = function(timeline, container, throttle)
3898
4225
  _viewStartTime: timeline._viewStartTime,
3899
4226
  _viewEndTime: timeline._viewEndTime,
3900
4227
  _throttle: throttle
3901
- }, axisSize, timeline.getContentLength());
4228
+ }, axisSize, length);
3902
4229
  }
3903
4230
  else
3904
4231
  {
3905
- posMatrix = new Matrix(1, 0, 0, 1, 0, axisStart);
4232
+ var isDiscreteNavMode = timeline.isDiscreteNavigationMode();
4233
+ var navButtonBackgroundWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
4234
+
4235
+ length = isDiscreteNavMode ? length * timeline._timeAxisRatio : length;
4236
+
4237
+ // in navigation mode, grab +/- 60 px extra for beginning and end.
4238
+ var startDatePos = TimeAxisUtils.getDatePosition(timeline._start, timeline._end, timeline._viewStartTime, length);
4239
+ var startDate = Math.max(TimeAxisUtils.getPositionDate(timeline._start, timeline._end, startDatePos - navButtonBackgroundWidth, length), timeline._start);
4240
+ var endDatePos = TimeAxisUtils.getDatePosition(timeline._start, timeline._end, timeline._viewEndTime, length);
4241
+ var endDate = Math.min(TimeAxisUtils.getPositionDate(timeline._start, timeline._end, endDatePos + navButtonBackgroundWidth, length), timeline._end);
4242
+
4243
+ var startTime = isDiscreteNavMode ? startDate : timeline._viewStartTime;
4244
+ var endTime = isDiscreteNavMode ? endDate : timeline._viewEndTime;
4245
+ posMatrix = new Matrix(1, 0, 0, 1, timeline._discreteOffset, axisStart);
3906
4246
  timeAxis.render({
3907
- _viewStartTime: timeline._viewStartTime,
3908
- _viewEndTime: timeline._viewEndTime,
4247
+ _viewStartTime: startTime,
4248
+ _viewEndTime: endTime,
3909
4249
  _throttle: throttle
3910
- }, timeline.getContentLength(), axisSize);
4250
+ }, length, axisSize);
3911
4251
  }
3912
4252
 
3913
4253
  timeAxis.setMatrix(posMatrix);
3914
4254
 
3915
- DvtTimelineRenderer._renderSeriesTimeAxis(timeline, timeline._fetchStartPos, timeline._fetchEndPos, timeline.getTimeZoomCanvas(), timeline.getContentLength());
4255
+ DvtTimelineRenderer._renderSeriesTimeAxis(timeline, timeline._fetchStartPos, timeline._fetchEndPos, timeline.getTimeZoomCanvas(), length);
3916
4256
  };
3917
4257
 
3918
4258
  /**
@@ -3928,6 +4268,7 @@ DvtTimelineRenderer._renderSeriesTimeAxis = function(timeline, startPos, endPos,
3928
4268
  {
3929
4269
  var context = timeline.getCtx();
3930
4270
  var isRTL = Agent.isRightToLeft(context);
4271
+ var offset = (timeline.isDiscreteNavigationMode() ? timeline._discreteOffset : 0) * (isRTL ? -1 : 1);
3931
4272
 
3932
4273
  if (timeline._majorAxisLabels)
3933
4274
  {
@@ -3989,9 +4330,9 @@ DvtTimelineRenderer._renderSeriesTimeAxis = function(timeline, startPos, endPos,
3989
4330
  {
3990
4331
  var label = labels[i];
3991
4332
  var currentTime = dates[i];
3992
- currentPos = TimeAxisUtils.getDatePosition(start, end, currentTime, length);
4333
+ currentPos = TimeAxisUtils.getDatePosition(start, end, currentTime, length) + offset;
3993
4334
 
3994
- var next_time_pos = TimeAxisUtils.getDatePosition(start, end, dates[i + 1], length);
4335
+ var next_time_pos = TimeAxisUtils.getDatePosition(start, end, dates[i + 1], length) + offset;
3995
4336
  var maxLength = next_time_pos - currentPos;
3996
4337
 
3997
4338
  if (!isRTL)
@@ -4072,6 +4413,14 @@ DvtTimelineRenderer._renderOverview = function(timeline)
4072
4413
 
4073
4414
  var overviewObject = timeline._getOverviewObject();
4074
4415
  timeline._overview.render(overviewObject, width, height);
4416
+
4417
+ // turn off overview dragging when in discrete viewport navigation mode
4418
+ // turn off handle affordances;
4419
+ if (timeline.isDiscreteNavigationMode()) {
4420
+ timeline._overview.setMouseEnabled(false);
4421
+ timeline._overview._windowLeftGrippy.setVisible();
4422
+ timeline._overview._windowRightGrippy.setVisible();
4423
+ }
4075
4424
  };
4076
4425
 
4077
4426
  /**
@@ -4296,38 +4645,50 @@ DvtTimelineRenderer._renderZoomControls = function(timeline)
4296
4645
  var resources = timeline._resources;
4297
4646
  var isRTL = Agent.isRightToLeft(context);
4298
4647
 
4299
- var zoomControlProperties = {
4300
- 'zoomInProps': {
4301
- 'imageSize': 16,
4302
- 'class': resources['zoomIn']
4303
- },
4304
- 'zoomOutProps': {
4305
- 'imageSize': 16,
4306
- 'class': resources['zoomOut']
4307
- }
4308
- };
4648
+ if (!timeline.isDiscreteNavigationMode()) {
4649
+ var zoomControlProperties = {
4650
+ 'zoomInProps': {
4651
+ 'imageSize': 16,
4652
+ 'class': resources['zoomIn']
4653
+ },
4654
+ 'zoomOutProps': {
4655
+ 'imageSize': 16,
4656
+ 'class': resources['zoomOut']
4657
+ }
4658
+ };
4309
4659
 
4310
- var xOffset = timeline.getStartXOffset() + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_PADDING;
4311
- if (isRTL)
4312
- {
4313
- // startXOffset includes the overview size when vertical, and the scrollbar region when not
4314
- if (timeline._isVertical && timeline._hasOverview)
4315
- xOffset = xOffset - timeline._overviewSize;
4316
- else
4317
- xOffset = xOffset - timeline.getBackgroundXOffset();
4660
+ var xOffset = timeline.getStartXOffset() + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_PADDING;
4661
+ if (isRTL)
4662
+ {
4663
+ // startXOffset includes the overview size when vertical, and the scrollbar region when not
4664
+ if (timeline._isVertical && timeline._hasOverview)
4665
+ xOffset = xOffset - timeline._overviewSize;
4666
+ else
4667
+ xOffset = xOffset - timeline.getBackgroundXOffset();
4318
4668
 
4319
- xOffset = timeline._backgroundWidth - xOffset - DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_DIAMETER;
4320
- }
4669
+ xOffset = timeline._backgroundWidth - xOffset - DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_DIAMETER;
4670
+ }
4671
+
4672
+ zoomControlProperties['zoomInProps']['posX'] = xOffset;
4673
+ zoomControlProperties['zoomOutProps']['posX'] = xOffset;
4321
4674
 
4322
- zoomControlProperties['zoomInProps']['posX'] = xOffset;
4323
- zoomControlProperties['zoomOutProps']['posX'] = xOffset;
4675
+ var yOffset = timeline._startY + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_PADDING;
4324
4676
 
4325
- var yOffset = timeline._startY + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_PADDING;
4677
+ zoomControlProperties['zoomInProps']['posY'] = yOffset;
4678
+ zoomControlProperties['zoomOutProps']['posY'] = yOffset + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_DIAMETER + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_SPACING;
4326
4679
 
4327
- zoomControlProperties['zoomInProps']['posY'] = yOffset;
4328
- zoomControlProperties['zoomOutProps']['posY'] = yOffset + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_DIAMETER + DvtTimelineStyleUtils._DEFAULT_ZOOM_CONTROL_SPACING;
4680
+ timeline.renderZoomControls(zoomControlProperties);
4329
4681
 
4330
- timeline.renderZoomControls(zoomControlProperties);
4682
+ // turn them visible if they may be hidden
4683
+ timeline.zoomin.setVisible('visible');
4684
+ timeline.zoomout.setVisible('visible');
4685
+ } else {
4686
+ // hide zoom controls if changing from different mode that uses zoom controls.
4687
+ if (timeline.zoomin) {
4688
+ timeline.zoomin.setVisible();
4689
+ timeline.zoomout.setVisible();
4690
+ }
4691
+ }
4331
4692
  };
4332
4693
 
4333
4694
  /**
@@ -4350,7 +4711,7 @@ DvtTimelineRenderer._renderEmptyText = function(timeline)
4350
4711
  };
4351
4712
 
4352
4713
  /**
4353
- * Adds a time inverval label.
4714
+ * Adds a time interval label.
4354
4715
  * @param {type} context
4355
4716
  * @param {type} container
4356
4717
  * @param {type} pos
@@ -4403,6 +4764,252 @@ DvtTimelineRenderer._addLabel = function(context, container, pos, text, maxLengt
4403
4764
  return label;
4404
4765
  };
4405
4766
 
4767
+ /**
4768
+ * Timeline event manager.
4769
+ * @param {Timeline} timeline The owning Timeline.
4770
+ * @extends {TimeComponentEventManager}
4771
+ * @constructor
4772
+ */
4773
+ var DvtTimelineEventManager = function(timeline)
4774
+ {
4775
+ DvtTimelineEventManager.superclass.constructor.call(this, timeline);
4776
+ };
4777
+
4778
+ Obj.createSubclass(DvtTimelineEventManager, TimeComponentEventManager);
4779
+
4780
+ /**
4781
+ * @override
4782
+ */
4783
+ DvtTimelineEventManager.prototype.addListeners = function(displayable)
4784
+ {
4785
+ DvtTimelineEventManager.superclass.addListeners.call(this, displayable);
4786
+ if (!Agent.isTouchDevice())
4787
+ {
4788
+ // IE does not always fire the appropriate mouseover and mouseout events, so use mouseenter instead
4789
+ if ((Agent.browser === 'ie' || Agent.browser === 'edge'))
4790
+ {
4791
+ var stage = this.getCtx().getStage();
4792
+ stage.addEvtListener('mouseenter', this.OnMouseEnter, false, this);
4793
+ stage.addEvtListener('mouseleave', this.OnMouseLeave, false, this);
4794
+ }
4795
+ }
4796
+ };
4797
+
4798
+ /**
4799
+ * @override
4800
+ */
4801
+ DvtTimelineEventManager.prototype.RemoveListeners = function(displayable)
4802
+ {
4803
+ DvtTimelineEventManager.superclass.RemoveListeners.call(this, displayable);
4804
+ if (!Agent.isTouchDevice())
4805
+ {
4806
+ // IE does not always fire the appropriate mouseover and mouseout events, so use mouseenter instead
4807
+ if ((Agent.browser === 'ie' || Agent.browser === 'edge'))
4808
+ {
4809
+ var stage = this.getCtx().getStage();
4810
+ stage.removeEvtListener('mouseenter', this.OnMouseEnter, false, this);
4811
+ stage.removeEvtListener('mouseleave', this.OnMouseLeave, false, this);
4812
+ }
4813
+ }
4814
+ };
4815
+
4816
+ /**
4817
+ * @override
4818
+ */
4819
+ DvtTimelineEventManager.prototype.PreOnMouseOver = function(event)
4820
+ {
4821
+ if (this._mouseOutTimer && this._mouseOutTimer.isRunning())
4822
+ this._mouseOutTimer.stop();
4823
+ DvtTimelineEventManager.superclass.PreOnMouseOver.call(this, event);
4824
+
4825
+ if (Agent.browser !== 'ie' && Agent.browser !== 'edge' && !this.isMouseOver)
4826
+ this.isMouseOver = true;
4827
+ };
4828
+
4829
+ /**
4830
+ * Handler for the mouseenter event.
4831
+ * @param {dvt.MouseEvent} event The mouseenter event.
4832
+ */
4833
+ DvtTimelineEventManager.prototype.OnMouseEnter = function(event)
4834
+ {
4835
+ if (this._mouseOutTimer && this._mouseOutTimer.isRunning())
4836
+ this._mouseOutTimer.stop();
4837
+
4838
+ if (!this.isMouseOver)
4839
+ this.isMouseOver = true;
4840
+ };
4841
+
4842
+ /**
4843
+ * Handler for the mouseleave event.
4844
+ * @param {dvt.MouseEvent} event The mouseleave event.
4845
+ */
4846
+ DvtTimelineEventManager.prototype.OnMouseLeave = function(event)
4847
+ {
4848
+ if (!this._mouseOutTimer)
4849
+ this._mouseOutTimer = new Timer(this.getCtx(), 10, this._onMouseOutTimerEnd, this, 1);
4850
+
4851
+ this._mouseOutTimer.reset();
4852
+ this._mouseOutTimer.start();
4853
+ };
4854
+
4855
+ /**
4856
+ * @override
4857
+ */
4858
+ DvtTimelineEventManager.prototype.PreOnMouseOut = function(event)
4859
+ {
4860
+ DvtTimelineEventManager.superclass.PreOnMouseOut.call(this, event);
4861
+ if (Agent.browser !== 'ie' && Agent.browser !== 'edge')
4862
+ {
4863
+ if (!this._mouseOutTimer)
4864
+ this._mouseOutTimer = new Timer(this.getCtx(), 10, this._onMouseOutTimerEnd, this, 1);
4865
+
4866
+ this._mouseOutTimer.reset();
4867
+ this._mouseOutTimer.start();
4868
+ }
4869
+ };
4870
+
4871
+ /**
4872
+ * Mouse out timer callback function.
4873
+ * @private
4874
+ */
4875
+ DvtTimelineEventManager.prototype._onMouseOutTimerEnd = function()
4876
+ {
4877
+ this.isMouseOver = false;
4878
+ };
4879
+
4880
+ /**
4881
+ * Discrete viewport navigation mode previous page callback
4882
+ * @private
4883
+ */
4884
+ DvtTimelineEventManager.prototype.prevPage = function()
4885
+ {
4886
+ var timeline = this._component;
4887
+ var elClass = timeline._prevArrowContainer.getClassName();
4888
+
4889
+ if (elClass.indexOf('oj-timeline-nav-arrow-disabled') === -1) {
4890
+ timeline._discreteViewportCurrentIndexOffset --;
4891
+ timeline.handlePageChangeDiscreteViewport();
4892
+ }
4893
+ };
4894
+
4895
+ /**
4896
+ * Discrete viewport navigation mode next page callback
4897
+ * @private
4898
+ */
4899
+ DvtTimelineEventManager.prototype.nextPage = function()
4900
+ {
4901
+ var timeline = this._component;
4902
+ var elClass = timeline._nextArrowContainer.getClassName();
4903
+
4904
+ if (elClass.indexOf('oj-timeline-nav-arrow-disabled') === -1) {
4905
+ timeline._discreteViewportCurrentIndexOffset ++;
4906
+ timeline.handlePageChangeDiscreteViewport();
4907
+ }
4908
+ };
4909
+
4910
+ /**
4911
+ * Discrete viewport navigation mode next/prev page event handle callback
4912
+ * @private
4913
+ */
4914
+ DvtTimelineEventManager.prototype.handleArrowPress = function(event)
4915
+ {
4916
+ var focusObj = this.getFocus();
4917
+ if (focusObj._id === 'prevNavArrow') {
4918
+ this.prevPage();
4919
+ } else if (focusObj._id === 'nextNavArrow') {
4920
+ this.nextPage();
4921
+ }
4922
+ return focusObj;
4923
+ };
4924
+
4925
+ /**
4926
+ * Pans by the specified amount.
4927
+ * @param {number} dx A number from specifying the pan ratio in the x direction, e.g. dx = 0.5 means pan end by 50%..
4928
+ * @param {number} dy A number from specifying the pan ratio in the y direction, e.g. dy = 0.5 means pan down by 50%.
4929
+ */
4930
+ DvtTimelineEventManager.prototype.panBy = function(dx, dy)
4931
+ {
4932
+ var focusObj = this.getFocus();
4933
+ if (focusObj)
4934
+ this._comp._dragPanSeries = focusObj._series;
4935
+
4936
+ DvtTimelineEventManager.superclass.panBy.call(this, dx, dy);
4937
+ };
4938
+
4939
+ /**
4940
+ * Timeline JSON Parser
4941
+ * @class
4942
+ * @constructor
4943
+ * @extends {dvt.Obj}
4944
+ */
4945
+ var DvtTimelineParser = function() {
4946
+
4947
+ };
4948
+
4949
+ Obj.createSubclass(DvtTimelineParser, Obj);
4950
+
4951
+ /**
4952
+ * Parses the specified data options and returns the root node of the timeline
4953
+ * @param {object} options The data options describing the component.
4954
+ * @return {object} An object containing the parsed properties
4955
+ */
4956
+ DvtTimelineParser.prototype.parse = function(options)
4957
+ {
4958
+ var ret = new Object();
4959
+ ret.start = new Date(options['start']).getTime();
4960
+ ret.end = new Date(options['end']).getTime();
4961
+
4962
+ if (options['viewportStart'])
4963
+ ret.viewStart = new Date(options['viewportStart']).getTime();
4964
+ if (options['viewportEnd'])
4965
+ ret.viewEnd = new Date(options['viewportEnd']).getTime();
4966
+ if (options['selectionMode'])
4967
+ ret.selectionMode = options['selectionMode'];
4968
+ else
4969
+ ret.selectionMode = 'none';
4970
+ ret.inlineStyle = options['style'];
4971
+ if (options['svgStyle'])
4972
+ ret.inlineStyle = options['svgStyle'];
4973
+
4974
+ var minorAxis = options['minorAxis'];
4975
+ if (minorAxis)
4976
+ {
4977
+ var scale = minorAxis['scale'];
4978
+ ret.scale = scale;
4979
+ ret.customFormatScales = minorAxis['_cfs'];
4980
+ }
4981
+ var majorAxis = options['majorAxis'];
4982
+ if (majorAxis)
4983
+ {
4984
+ ret.seriesScale = majorAxis['scale'];
4985
+ ret.seriesConverter = majorAxis['converter'];
4986
+ ret.seriesCustomFormatScales = majorAxis['_cfs'];
4987
+ }
4988
+ ret.shortDesc = options['shortDesc'];
4989
+ ret.orientation = options['orientation'];
4990
+ var referenceObjects = options['referenceObjects'];
4991
+ if (referenceObjects && referenceObjects.length > 0)
4992
+ {
4993
+ var referenceObjectsValueArray = [];
4994
+ for (var i = 0; i < referenceObjects.length; i++)
4995
+ {
4996
+ referenceObjectsValueArray.push(new Date(referenceObjects[i]['value']));
4997
+ }
4998
+ ret.referenceObjects = referenceObjectsValueArray;
4999
+ }
5000
+
5001
+ var overview = options['overview'];
5002
+ if (overview != null && overview['rendered'] === 'on')
5003
+ ret.hasOverview = true;
5004
+ else
5005
+ ret.hasOverview = false;
5006
+
5007
+ ret.itemPosition = options['_ip'];
5008
+ ret.customTimeScales = options['_cts'];
5009
+
5010
+ return ret;
5011
+ };
5012
+
4406
5013
  /**
4407
5014
  * Creates an instance of DvtTimelineSeriesItem which extends dvt.Container with hover and selection feedback.
4408
5015
  * @extends {dvt.Container}
@@ -4518,7 +5125,7 @@ DvtTimelineSeriesItem.prototype.applyState = function(state)
4518
5125
  {
4519
5126
  bubbleFillColor = DvtTimelineStyleUtils.getItemHoverFillColor(item);
4520
5127
  bubbleStrokeColor = DvtTimelineStyleUtils.getItemHoverStrokeColor(item);
4521
- bubbleStrokeWidth = DvtTimelineStyleUtils.getItemHoverStrokeWidth();
5128
+ bubbleStrokeWidth = DvtTimelineStyleUtils.getItemHoverStrokeWidth(item._timeline.Options);
4522
5129
  bubbleInnerStrokeColor = DvtTimelineStyleUtils.getItemInnerActiveStrokeColor();
4523
5130
  }
4524
5131
  else
@@ -4533,10 +5140,18 @@ DvtTimelineSeriesItem.prototype.applyState = function(state)
4533
5140
  var bubbleStroke = new Stroke(bubbleStrokeColor, 1, bubbleStrokeWidth);
4534
5141
  var bubbleInnerStroke = new Stroke(bubbleInnerStrokeColor, 1, bubbleInnerStrokeWidth);
4535
5142
 
4536
- bubble.setSolidFill(bubbleFillColor);
4537
5143
  bubble.setStroke(bubbleStroke);
4538
5144
  bubbleInner.setStroke(bubbleInnerStroke);
4539
5145
 
5146
+ if (state === DvtTimelineSeriesItem.HOVER_STATE_KEY) {
5147
+ var bubbleBackFillColor = item._timeline.Options['styleDefaults']['series']['backgroundColor'];
5148
+ bubble.setSolidFill(bubbleBackFillColor);
5149
+ bubbleInner.setSolidFill(bubbleFillColor);
5150
+ } else {
5151
+ bubble.setSolidFill(bubbleFillColor);
5152
+ bubbleInner.setSolidFill(DvtTimelineStyleUtils.getItemInnerFillColor());
5153
+ }
5154
+
4540
5155
  var feeler = item.getFeeler();
4541
5156
  if (feeler)
4542
5157
  feeler.setStroke(bubbleStroke);
@@ -4608,25 +5223,52 @@ DvtTimelineSeriesItemRenderer.initializeItem = function(item, series, index)
4608
5223
  */
4609
5224
  DvtTimelineSeriesItemRenderer._createBubble = function(item, series, index)
4610
5225
  {
4611
- var width, height;
4612
- var marginTop = 5;
4613
- var marginStart = 5;
4614
- var content = DvtTimelineSeriesItemRenderer._getBubbleContent(item, series);
5226
+ var width, height, durationWidth, renderEnd;
5227
+ var context = series.getCtx();
5228
+ var isRTL = Agent.isRightToLeft(context);
4615
5229
 
4616
- // TODO: Review this later...
5230
+ // if padding is specified, use that value. otherwise default to 5.
5231
+ var padding = Number(DvtTimelineStyleUtils.getBubblePadding(item._timeline.Options));
5232
+ var content = DvtTimelineSeriesItemRenderer._getBubbleContent(item, series);
4617
5233
  var customRenderer = item._timeline.getOptions().itemBubbleContentRenderer;
4618
5234
 
4619
5235
  if (customRenderer) {
4620
5236
  // Ensure width is positive
4621
- width = Math.max(0, content._w + content._x + marginStart * 2);
4622
- height = content._h + content._y + marginTop * 2;
5237
+ width = Math.max(0, content._w + content._x + padding * 2);
5238
+ height = content._h + content._y + padding * 2;
4623
5239
  } else {
4624
- width = content._w + marginStart * 2;
4625
- height = content._h + marginTop * 2;
5240
+ width = content._w + padding * 2;
5241
+ height = content._h + padding * 2;
4626
5242
  }
4627
5243
 
5244
+ item.setContentWidth(width);
5245
+
5246
+ var startTime = item.getStartTime();
5247
+ var endTime = item.getEndTime();
5248
+ var loc = TimeAxisUtils.getDatePosition(series._start, series._end, startTime, series._length);
5249
+ var endLoc = TimeAxisUtils.getDatePosition(series._start, series._end, endTime, series._length);
5250
+
5251
+ if (item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT) {
5252
+ // special duration-event bubble width matches the duration length with min width applied
5253
+ durationWidth = Math.max(endLoc - loc, DvtTimelineStyleUtils.getMinDurationEvent());
5254
+
5255
+ if (durationWidth < width) {
5256
+ width = durationWidth + width + DvtTimelineStyleUtils.getContentBubbleSpacing();
5257
+ } else {
5258
+ width = durationWidth;
5259
+ }
5260
+ }
5261
+
5262
+ // check viewport collision
5263
+ DvtTimelineSeriesItemRenderer.checkEndViewportCollision(item, series, isRTL, width);
5264
+
5265
+ // for collision, need the start position to be -contentWidth
5266
+ if (item.getEndViewportCollision() && durationWidth === null) {
5267
+ width = 2 * width + DvtTimelineStyleUtils.getContentBubbleSpacing();
5268
+ }
4628
5269
  item.setWidth(width);
4629
5270
  item.setHeight(height);
5271
+ item.setDurationWidth(durationWidth);
4630
5272
  item._content = content;
4631
5273
 
4632
5274
  var spacing = series.calculateSpacing(item, index);
@@ -4643,103 +5285,137 @@ DvtTimelineSeriesItemRenderer._createBubble = function(item, series, index)
4643
5285
  */
4644
5286
  DvtTimelineSeriesItemRenderer._renderBubble = function(item, series, container, animationElems)
4645
5287
  {
5288
+ var bubble, innerBubble, contentBubble, endViewportCollision, flipContentBubble;
5289
+ var bubbleArray, innerBubbleArray, contentBubbleArray;
4646
5290
  var context = series.getCtx();
4647
5291
  var isRTL = Agent.isRightToLeft(context);
4648
5292
 
4649
5293
  var id = item.getId();
4650
- var marginTop = 5;
4651
- var marginStart = 5;
5294
+
5295
+ // if padding is specified, use that value. otherwise default to 5.
5296
+ var padding = Number(DvtTimelineStyleUtils.getBubblePadding(item._timeline.Options));
5297
+ var borderRadius = Number(DvtTimelineStyleUtils.getBubbleRadius(item._timeline.Options));
4652
5298
  var content = item._content;
5299
+
5300
+ var overflowContent = DvtTimelineSeriesItemRenderer._isOverflow(item);
4653
5301
  item._content = null;
4654
5302
 
4655
5303
  var nodeWidth = item.getWidth();
5304
+ var nodeContentWidth = item.getContentWidth();
5305
+ var nodeDurationWidth = item.getDurationWidth();
4656
5306
  var nodeHeight = item.getHeight();
4657
5307
 
4658
5308
  // draw the bubble
4659
5309
  var bubbleId = '_bubble_' + id;
4660
- if (series.isVertical())
4661
- {
4662
- var offset = nodeHeight / 2;
4663
- var startOffset = offset - 6;
4664
- var endOffset = offset + 6;
4665
- if (!isRTL && series.isInverted() || isRTL && !series.isInverted())
4666
- {
4667
- var bubbleArray = [0, 0, 0, startOffset, -6, offset, 0, endOffset, 0, nodeHeight, nodeWidth, nodeHeight, nodeWidth, 0, 0, 0];
4668
- var innerBubbleArray = [2, 2, 2, startOffset, -4, offset, 2, endOffset,
4669
- 2, nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, 2, 2, 2];
4670
- }
4671
- else
4672
- {
4673
- bubbleArray = [0, 0, 0, nodeHeight, nodeWidth, nodeHeight, nodeWidth, endOffset, nodeWidth + 6, offset, nodeWidth, startOffset, nodeWidth, 0, 0, 0];
4674
- innerBubbleArray = [2, 2, 2, nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, endOffset,
4675
- nodeWidth + 4, offset, nodeWidth - 2, startOffset, nodeWidth - 2, 2, 2, 2];
4676
- }
4677
- }
4678
- else
4679
- {
4680
- if (!isRTL) {
4681
- offset = DvtTimelineStyleUtils.getBubbleOffset();
4682
- }
4683
- else {
4684
- offset = nodeWidth - DvtTimelineStyleUtils.getBubbleOffset();
4685
- }
4686
- startOffset = offset - 6;
4687
- endOffset = offset + 6;
4688
- if (series.isInverted())
4689
- {
4690
- bubbleArray = [0, 0, startOffset, 0, offset, -6, endOffset, 0, nodeWidth, 0, nodeWidth, nodeHeight, 0, nodeHeight, 0, 0];
4691
- innerBubbleArray = [2, 2, startOffset, 2, offset, -4, endOffset,
4692
- 2, nodeWidth - 2, 2, nodeWidth - 2, nodeHeight - 2, 2, nodeHeight - 2, 2, 2];
5310
+ if (item._timeline.getCtx().getThemeBehavior() === 'alta') {
5311
+ // Keep the Alta bubble behavior until we can remove
5312
+ if (series.isVertical()) {
5313
+ var offset = nodeHeight / 2;
5314
+ var startOffset = offset - 6;
5315
+ var endOffset = offset + 6;
5316
+ if (!isRTL && series.isInverted() || isRTL && !series.isInverted()) {
5317
+ bubbleArray = [0, 0, 0, startOffset, -6, offset, 0, endOffset, 0, nodeHeight, nodeWidth, nodeHeight, nodeWidth, 0, 0, 0];
5318
+ innerBubbleArray = [2, 2, 2, startOffset, -4, offset, 2, endOffset,
5319
+ 2, nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, 2, 2, 2];
5320
+ } else {
5321
+ bubbleArray = [0, 0, 0, nodeHeight, nodeWidth, nodeHeight, nodeWidth, endOffset, nodeWidth + 6, offset, nodeWidth, startOffset, nodeWidth, 0, 0, 0];
5322
+ innerBubbleArray = [2, 2, 2, nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, endOffset,
5323
+ nodeWidth + 4, offset, nodeWidth - 2, startOffset, nodeWidth - 2, 2, 2, 2];
5324
+ }
5325
+ } else {
5326
+ if (!isRTL) {
5327
+ offset = DvtTimelineStyleUtils.getBubbleOffset();
5328
+ } else {
5329
+ offset = nodeWidth - DvtTimelineStyleUtils.getBubbleOffset();
5330
+ }
5331
+ startOffset = offset - 6;
5332
+ endOffset = offset + 6;
5333
+ if (series.isInverted()) {
5334
+ bubbleArray = [0, 0, startOffset, 0, offset, -6, endOffset, 0, nodeWidth, 0, nodeWidth, nodeHeight, 0, nodeHeight, 0, 0];
5335
+ innerBubbleArray = [2, 2, startOffset, 2, offset, -4, endOffset,
5336
+ 2, nodeWidth - 2, 2, nodeWidth - 2, nodeHeight - 2, 2, nodeHeight - 2, 2, 2];
5337
+ } else {
5338
+ bubbleArray = [0, 0, 0, nodeHeight, startOffset, nodeHeight, offset, nodeHeight + 6, endOffset, nodeHeight, nodeWidth, nodeHeight, nodeWidth, 0, 0, 0];
5339
+ innerBubbleArray = [2, 2, 2, nodeHeight - 2, startOffset, nodeHeight - 2, offset, nodeHeight + 4, endOffset,
5340
+ nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, 2, 2, 2];
5341
+ }
4693
5342
  }
4694
- else
4695
- {
4696
- bubbleArray = [0, 0, 0, nodeHeight, startOffset, nodeHeight, offset, nodeHeight + 6, endOffset, nodeHeight, nodeWidth, nodeHeight, nodeWidth, 0, 0, 0];
4697
- innerBubbleArray = [2, 2, 2, nodeHeight - 2, startOffset, nodeHeight - 2, offset, nodeHeight + 4, endOffset,
4698
- nodeHeight - 2, nodeWidth - 2, nodeHeight - 2, nodeWidth - 2, 2, 2, 2];
5343
+ bubble = new Polygon(context, bubbleArray, bubbleId);
5344
+ innerBubble = new Polygon(context, innerBubbleArray, bubbleId + '_i');
5345
+ } else {
5346
+ var triangleIconSize = DvtTimelineStyleUtils.getContentBubbleArrow();
5347
+ endViewportCollision = item.getEndViewportCollision();
5348
+ flipContentBubble = (isRTL && !endViewportCollision) || (!isRTL && endViewportCollision);
5349
+ // Invert not required as top vs bottom priority stacking does not affect bubble point array
5350
+ if (flipContentBubble) {
5351
+ contentBubbleArray = [0, 0, nodeContentWidth, 0, nodeContentWidth, nodeHeight/2 - triangleIconSize, nodeContentWidth + triangleIconSize, nodeHeight/2, nodeContentWidth, nodeHeight/2 + triangleIconSize, nodeContentWidth, nodeHeight, 0, nodeHeight, 0, 0];
5352
+ } else {
5353
+ contentBubbleArray = [0, 0, 0, nodeHeight/2 - triangleIconSize, -triangleIconSize, nodeHeight/2, 0, nodeHeight/2 + triangleIconSize, 0, nodeHeight, nodeContentWidth, nodeHeight, nodeContentWidth, 0, 0, 0];
4699
5354
  }
4700
- }
4701
- var bubble = new Polygon(context, bubbleArray, bubbleId);
4702
- var innerBubble = new Polygon(context, innerBubbleArray, bubbleId + '_i');
4703
-
4704
- innerBubble.setSolidFill(DvtTimelineStyleUtils.getItemInnerFillColor());
4705
5355
 
4706
- // margin around content
4707
- if (!isRTL) {
4708
- content.setTranslate(marginStart, marginTop);
4709
- } else {
4710
- var customRenderer = item._timeline.getOptions().itemBubbleContentRenderer;
5356
+ contentBubble = new Polygon(context, contentBubbleArray, bubbleId + '_ct');
5357
+ contentBubble.setSolidFill(DvtTimelineStyleUtils.getContentBubbleBackgroundColor(item._timeline.getOptions()));
4711
5358
 
4712
- if (customRenderer) {
4713
- content.setTranslate(nodeWidth - marginStart - 2 * content._x, marginTop);
4714
- } else {
4715
- content.setTranslate(marginStart, marginTop);
5359
+ if (nodeDurationWidth) {
5360
+ nodeWidth = nodeDurationWidth;
4716
5361
  }
5362
+ bubble = new Rect(context, 0, 0, nodeWidth, nodeHeight, bubbleId);
5363
+ innerBubble = new Rect(context, 2, 2, nodeWidth - 4, nodeHeight - 4, bubbleId + '_i');
5364
+ bubble.setCornerRadius(borderRadius);
5365
+ innerBubble.setCornerRadius(borderRadius);
4717
5366
  }
5367
+
5368
+ innerBubble.setSolidFill(DvtTimelineStyleUtils.getItemInnerFillColor());
4718
5369
  bubble.addChild(innerBubble);
4719
- bubble.addChild(content);
4720
5370
 
5371
+ // set up bubbleContainer
4721
5372
  var bubbleContainerId = '_bt_' + id;
4722
5373
  var bubbleContainer = new DvtTimelineSeriesItem(context, bubbleContainerId);
5374
+
5375
+ // associate the node with the marker
5376
+ bubbleContainer._node = item;
5377
+
5378
+ // associate the displayable with the node
5379
+ item.setBubble(bubbleContainer);
5380
+ item.setContentBubble(contentBubble);
5381
+
4723
5382
  if (animationElems)
4724
5383
  {
4725
5384
  bubbleContainer.setAlpha(0);
4726
5385
  animationElems.push(bubbleContainer);
4727
5386
  }
4728
- bubbleContainer.addChild(bubble);
5387
+
5388
+ // set up padding around content and add to container
5389
+ var contentPadding = DvtTimelineSeriesItemRenderer.calcPadding(item, isRTL, padding, nodeWidth, overflowContent, content);
5390
+ if (overflowContent && (item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT || item._timeline.isDiscreteNavigationMode())) {
5391
+ endViewportCollision = item.getEndViewportCollision();
5392
+ flipContentBubble = (isRTL && !endViewportCollision) || (!isRTL && endViewportCollision);
5393
+
5394
+ var contentBubbleAdjust = (contentPadding + 15.5) * (flipContentBubble ? -1 : 1);
5395
+ // if overflow, use the contentBubble to hold content. Otherwise, use the bubble
5396
+ contentBubble.setTranslateX(contentBubbleAdjust);
5397
+ contentBubble.addChild(content);
5398
+ content.setTranslate(padding, padding);
5399
+ bubbleContainer.addChild(bubble);
5400
+ bubbleContainer.addChild(contentBubble);
5401
+ } else {
5402
+ // if not in viewport and in navMode using duration event, hide content to prevent overflowing into viewport
5403
+ var notInViewport = item._timeline._viewStartTime > item.getEndTime() || item._timeline._viewEndTime < item.getStartTime();
5404
+ if (item._timeline.isDiscreteNavigationMode() && notInViewport && item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT) {
5405
+ content.setVisible();
5406
+ }
5407
+ content.setTranslate(contentPadding, padding);
5408
+ bubble.addChild(content);
5409
+ bubbleContainer.addChild(bubble);
5410
+ }
4729
5411
  if (TimeAxisUtils.supportsTouch())
4730
5412
  ToolkitUtils.setAttrNullNS(bubbleContainer._elem, 'id', bubbleContainer._id);
4731
5413
 
4732
- // associate the node with the marker
4733
- bubbleContainer._node = item;
4734
-
4735
- // associate the displayable with the node
4736
- item.setBubble(bubbleContainer);
4737
5414
  bubbleContainer.applyState(DvtTimelineSeriesItem.ENABLED_STATE_KEY);
4738
5415
  bubbleContainer.setClassName('oj-timeline-item-bubble');
4739
5416
 
4740
5417
  if (item.getLoc() >= 0)
4741
5418
  container.addChild(bubbleContainer);
4742
-
4743
5419
  bubbleContainer.setAriaRole('img');
4744
5420
  series._callbackObj.EventManager.associate(bubbleContainer, item);
4745
5421
  };
@@ -4781,10 +5457,15 @@ DvtTimelineSeriesItemRenderer._displayBubble = function(item, series, overflowOf
4781
5457
  }
4782
5458
  else
4783
5459
  {
4784
- if (!isRTL)
4785
- transX = loc - DvtTimelineStyleUtils.getBubbleOffset();
4786
- else
4787
- transX = series._length - loc - nodeWidth + DvtTimelineStyleUtils.getBubbleOffset();
5460
+ var bubbleOffsetVal = item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT ? 0 : DvtTimelineStyleUtils.getBubbleOffset();
5461
+ if (!isRTL){
5462
+ transX = loc - bubbleOffsetVal;
5463
+ } else {
5464
+ transX = series._length - loc - nodeWidth + bubbleOffsetVal;
5465
+ if (DvtTimelineSeriesItemRenderer._isOverflow(item)) {
5466
+ transX += item.getContentWidth();
5467
+ }
5468
+ }
4788
5469
  if (!series.isInverted())
4789
5470
  {
4790
5471
  if (!series.isTopToBottom())
@@ -4977,6 +5658,11 @@ DvtTimelineSeriesItemRenderer._getBubbleContent = function(item, series)
4977
5658
  */
4978
5659
  DvtTimelineSeriesItemRenderer._updateBubble = function(item, series, index)
4979
5660
  {
5661
+ // Need to update the bubble widths before spacing if applicable
5662
+ if (item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT) {
5663
+ DvtTimelineSeriesItemRenderer._updateDurationEvent(item, series);
5664
+ }
5665
+
4980
5666
  var spacing = series.calculateSpacing(item, index);
4981
5667
  item.setSpacing(spacing);
4982
5668
  };
@@ -4999,11 +5685,18 @@ DvtTimelineSeriesItemRenderer._renderFeeler = function(item, series, container,
4999
5685
  var loc = item.getLoc();
5000
5686
  var spacing = item.getSpacing();
5001
5687
 
5688
+ // clear feeler if duration-event
5689
+ if (item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT) {
5690
+ item.setFeeler(null);
5691
+ return;
5692
+ }
5693
+
5002
5694
  // draw the feeler
5003
5695
  var feelerId = '_feeler_' + id;
5696
+ var durationSize = item.getItemType() === DvtTimelineSeriesNode.DURATION_BAR ? item.getDurationSize() : 0;
5004
5697
  if (!series.isInverted())
5005
5698
  {
5006
- var feelerY = series.Height + overflowOffset - item.getDurationSize();
5699
+ var feelerY = series.Height + overflowOffset - durationSize;
5007
5700
  if (!series.isTopToBottom())
5008
5701
  var feelerHeight = series.Height - spacing + overflowOffset;
5009
5702
  else
@@ -5011,7 +5704,8 @@ DvtTimelineSeriesItemRenderer._renderFeeler = function(item, series, container,
5011
5704
  }
5012
5705
  else
5013
5706
  {
5014
- feelerY = item.getDurationSize();
5707
+ // only shorten feelerY if duration bar
5708
+ feelerY = durationSize;
5015
5709
  if (series.isTopToBottom())
5016
5710
  feelerHeight = spacing;
5017
5711
  else
@@ -5048,7 +5742,7 @@ DvtTimelineSeriesItemRenderer._renderFeeler = function(item, series, container,
5048
5742
  */
5049
5743
  DvtTimelineSeriesItemRenderer._updateFeeler = function(item, series, overflowOffset, animator)
5050
5744
  {
5051
- if (series.isVertical())
5745
+ if (series.isVertical() || item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT)
5052
5746
  {
5053
5747
  item.setFeeler(null);
5054
5748
  return;
@@ -5058,9 +5752,10 @@ DvtTimelineSeriesItemRenderer._updateFeeler = function(item, series, overflowOff
5058
5752
  var isRTL = Agent.isRightToLeft(context);
5059
5753
 
5060
5754
  var feeler = item.getFeeler();
5755
+ var durationSize = item.getItemType() === DvtTimelineSeriesNode.DURATION_BAR ? item.getDurationSize() : 0;
5061
5756
  if (!series.isInverted())
5062
5757
  {
5063
- var feelerY = series.Height + overflowOffset - item.getDurationSize();
5758
+ var feelerY = series.Height + overflowOffset - durationSize;
5064
5759
  if (!series.isTopToBottom())
5065
5760
  var feelerHeight = series.Height - item.getSpacing() + overflowOffset;
5066
5761
  else
@@ -5068,7 +5763,7 @@ DvtTimelineSeriesItemRenderer._updateFeeler = function(item, series, overflowOff
5068
5763
  }
5069
5764
  else
5070
5765
  {
5071
- feelerY = item.getDurationSize();
5766
+ feelerY = durationSize;
5072
5767
  if (series.isTopToBottom())
5073
5768
  feelerHeight = item.getSpacing();
5074
5769
  else
@@ -5197,15 +5892,16 @@ DvtTimelineSeriesItemRenderer._renderDuration = function(item, series, container
5197
5892
  */
5198
5893
  DvtTimelineSeriesItemRenderer._updateDuration = function(item, series, overflowOffset, animator)
5199
5894
  {
5895
+ var loc, endLoc;
5200
5896
  var context = series.getCtx();
5201
5897
  var isRTL = Agent.isRightToLeft(context);
5202
5898
 
5203
5899
  var duration = item.getDurationBar();
5204
5900
  if (duration != null)
5205
5901
  {
5206
- var loc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getStartTime(), series._length);
5902
+ loc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getStartTime(), series._length);
5207
5903
  var durationSize = 22 + 10 * item.getDurationLevel();
5208
- var endLoc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getEndTime(), series._length);
5904
+ endLoc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getEndTime(), series._length);
5209
5905
  if (series.isVertical())
5210
5906
  {
5211
5907
  var durationTransY = 0;
@@ -5270,6 +5966,253 @@ DvtTimelineSeriesItemRenderer._updateDuration = function(item, series, overflowO
5270
5966
  }
5271
5967
  };
5272
5968
 
5969
+
5970
+ /**
5971
+ * Updates the rendering of a timeline series item duration event.
5972
+ * @param {DvtTimelineSeriesItem} item The item being updated.
5973
+ * @param {DvtTimelineSeries} series The series containing this item.
5974
+ * @private
5975
+ */
5976
+ DvtTimelineSeriesItemRenderer._updateDurationEvent = function(item, series)
5977
+ {
5978
+ var nodeWidth, content, contentBubbleArray;
5979
+ var context = series.getCtx();
5980
+ var isRTL = Agent.isRightToLeft(context);
5981
+ var loc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getStartTime(), series._length);
5982
+ var endLoc = TimeAxisUtils.getDatePosition(series._start, series._end, item.getEndTime(), series._length);
5983
+ var bubble = item.getBubble();
5984
+ var durationBubble = bubble.getChildAt(0);
5985
+ var durationInnerBubble = durationBubble.getChildAt(0);
5986
+ var contentBubble = item.getContentBubble();
5987
+ var contentWidth = item.getContentWidth();
5988
+ var nodeHeight = item.getHeight();
5989
+ var durationWidth = Math.max(endLoc - loc, DvtTimelineStyleUtils.getMinDurationEvent());
5990
+ var contentWidth = item.getContentWidth();
5991
+ var triangleIconSize = DvtTimelineStyleUtils.getContentBubbleArrow();
5992
+ var navMode = item._timeline.isDiscreteNavigationMode();
5993
+
5994
+ // resize the bubble and address overflow content if needed
5995
+ durationBubble.setWidth(durationWidth);
5996
+ durationInnerBubble.setWidth(durationWidth - 4);
5997
+
5998
+ // Check viewport collision
5999
+ var previousCollision = item.getEndViewportCollision();
6000
+
6001
+ // check to use durationWidth or overflow width
6002
+ var checkWidth = contentWidth < durationWidth ? durationWidth : durationWidth + contentWidth;
6003
+ DvtTimelineSeriesItemRenderer.checkEndViewportCollision(item, series, isRTL, checkWidth);
6004
+ var endViewportCollision = item.getEndViewportCollision();
6005
+ var flipContentBubble = (isRTL && !endViewportCollision) || (!isRTL && endViewportCollision);
6006
+
6007
+ if (previousCollision !== endViewportCollision) {
6008
+ // if collision state changed, need to flip the item bubble
6009
+ if (flipContentBubble) {
6010
+ contentBubbleArray = [0, 0, contentWidth, 0, contentWidth, nodeHeight/2 - triangleIconSize, contentWidth + triangleIconSize, nodeHeight/2, contentWidth, nodeHeight/2 + triangleIconSize, contentWidth, nodeHeight, 0, nodeHeight, 0, 0];
6011
+ } else {
6012
+ contentBubbleArray = [0, 0, 0, nodeHeight/2 - triangleIconSize, -triangleIconSize, nodeHeight/2, 0, nodeHeight/2 + triangleIconSize, 0, nodeHeight, contentWidth, nodeHeight, contentWidth, 0, 0, 0];
6013
+ }
6014
+ contentBubble.setPoints(contentBubbleArray);
6015
+ }
6016
+
6017
+ // Check overflow is true.
6018
+ // If overflow false, then this is discrete viewport navigation mode and we need to avoid showing
6019
+ // overflow to prevent it from layering into the current viewport.
6020
+ if (DvtTimelineSeriesItemRenderer._isOverflow(item)) {
6021
+ nodeWidth = durationWidth + contentWidth + DvtTimelineStyleUtils.getContentBubbleSpacing();
6022
+
6023
+ // need to enable overflow if content is still in durationEventBubble
6024
+ if (durationBubble.getNumChildren() > 1) {
6025
+ content = durationBubble.getChildAt(1);
6026
+ contentBubble.addChild(content);
6027
+ bubble.addChild(contentBubble);
6028
+ }
6029
+ var padding = Number(DvtTimelineStyleUtils.getBubblePadding(item._timeline.Options));
6030
+ var contentPadding = DvtTimelineSeriesItemRenderer.calcPadding(item, isRTL, padding, durationWidth, true, content);
6031
+
6032
+ var contentBubbleAdjust = (contentPadding + 15.5) * (flipContentBubble ? -1 : 1);
6033
+ contentBubble.setTranslateX(contentBubbleAdjust);
6034
+
6035
+ // set content to visible if in discrete viewport navigation mode since it may have been hidden outside of viewport
6036
+ if (navMode) {
6037
+ if (!content) {
6038
+ content = contentBubble.getChildAt(0);
6039
+ }
6040
+ content.setVisible('visible');
6041
+ }
6042
+ } else {
6043
+ nodeWidth = durationWidth;
6044
+
6045
+ // need to disable overflow if content is still in contentBubble
6046
+ if (contentBubble.getNumChildren() > 0) {
6047
+ content = contentBubble.getChildAt(0);
6048
+ durationBubble.addChild(content);
6049
+ bubble.removeChild(contentBubble);
6050
+ }
6051
+ var padding = Number(DvtTimelineStyleUtils.getBubblePadding(item._timeline.Options));
6052
+ var contentPadding = DvtTimelineSeriesItemRenderer.calcPadding(item, isRTL, padding, durationWidth, false, content);
6053
+
6054
+ // hide content if it's not in viewport for discrete viewport navigation mode to prevent layering into current viewport
6055
+ if (!content) {
6056
+ content = durationBubble.getChildAt(1);
6057
+ }
6058
+ var notInViewport = item._timeline._viewStartTime > item.getEndTime() || item._timeline._viewEndTime < item.getStartTime();
6059
+ if (navMode && notInViewport) {
6060
+ content.setVisible();
6061
+ } else {
6062
+ content.setVisible('visible');
6063
+ content.setTranslateX(contentPadding);
6064
+ }
6065
+ }
6066
+
6067
+ // update the item with the new widths;
6068
+ item.setWidth(nodeWidth);
6069
+ item.setDurationWidth(Math.max(durationWidth, DvtTimelineStyleUtils.getMinDurationEvent()));
6070
+ };
6071
+
6072
+ /**
6073
+ * Checks if the content is in overflow mode
6074
+ * @param {DvtTimelineSeriesItem} item The item being updated.
6075
+ * @return {boolean} true if overflow, false otherwise
6076
+ * @private
6077
+ */
6078
+ DvtTimelineSeriesItemRenderer._isOverflow = function (item)
6079
+ {
6080
+ var contentWidth = item.getContentWidth();
6081
+ var durationWidth = item.getDurationWidth();
6082
+ var endViewportCollision = item.getEndViewportCollision();
6083
+ var navMode = item._timeline.isDiscreteNavigationMode();
6084
+ // no overflow behavior if not duration-event right now
6085
+ if (item.getItemType() !== DvtTimelineSeriesNode.DURATION_EVENT) {
6086
+ return false;
6087
+ }
6088
+
6089
+ // ignore items not in current viewport
6090
+ var notInViewport = item._timeline._viewStartTime > item.getEndTime() || item._timeline._viewEndTime < item.getStartTime();
6091
+ if (navMode && notInViewport) {
6092
+ return false;
6093
+ }
6094
+
6095
+ // edge case in nav mode where the item bubble breaks start viewport edge
6096
+ if (navMode && DvtTimelineSeriesItemRenderer.checkStartViewportCollision(item)) {
6097
+ var loc = TimeAxisUtils.getDatePosition(item._timeline._start, item._timeline._end, item._timeline._viewStartTime, item._timeline.getContentLength());
6098
+ var endLoc = TimeAxisUtils.getDatePosition(item._timeline._start, item._timeline._end, item.getEndTime(), item._timeline.getContentLength());
6099
+ durationWidth = endLoc - loc;
6100
+ }
6101
+
6102
+ // if content is larger than the item, use overflow
6103
+ // if item is at viewport edge also use overflow
6104
+ if (durationWidth < contentWidth || endViewportCollision) {
6105
+ return true;
6106
+ }
6107
+ return false;
6108
+ };
6109
+
6110
+ /**
6111
+ * Calculate the padding for the content
6112
+ * @param {DvtTimelineSeriesItem} item The item being updated.
6113
+ * @param {boolean} isRTL RTL boolean value
6114
+ * @param {Number} padding default value for the bubble padding from the css
6115
+ * @param {Number} nodeWidth width of the event bubble (either duration or item)
6116
+ * @param {boolean} isOverflow boolean if overflow padding should be calculated
6117
+ * @param {Container} content content to grab x position
6118
+ * @return {Number} padding value for the content
6119
+ * @private
6120
+ */
6121
+ DvtTimelineSeriesItemRenderer.calcPadding = function (item, isRTL, padding, nodeWidth, isOverflow, content)
6122
+ {
6123
+ var contentPadding = padding;
6124
+ var customRenderer = item._timeline.getOptions().itemBubbleContentRenderer;
6125
+
6126
+ if (isRTL && customRenderer) {
6127
+ contentPadding = nodeWidth - padding - 2 * content._x;
6128
+ }
6129
+
6130
+ var endViewportCollision = item.getEndViewportCollision();
6131
+ // check using isOverflow to determine padding
6132
+ if (isOverflow) {
6133
+ var flipContentPadding = (isRTL && !endViewportCollision) || (!isRTL && endViewportCollision);
6134
+ if (flipContentPadding) {
6135
+ nodeWidth = item.getContentWidth();
6136
+ }
6137
+ contentPadding = contentPadding + (nodeWidth - padding);
6138
+ }
6139
+
6140
+ // if viewport start collision and in discrete nav mode, adjust content to start in the viewport
6141
+ if (item._timeline.isDiscreteNavigationMode() && !isOverflow && item.getItemType() === DvtTimelineSeriesNode.DURATION_EVENT) {
6142
+ var viewStartCollision = DvtTimelineSeriesItemRenderer.checkStartViewportCollision(item);
6143
+ if (viewStartCollision) {
6144
+ var endLoc = TimeAxisUtils.getDatePosition(item._timeline._start, item._timeline._end, item._timeline._viewStartTime, item._timeline.getContentLength());
6145
+ var loc = TimeAxisUtils.getDatePosition(item._timeline._start, item._timeline._end, item.getStartTime(), item._timeline.getContentLength());
6146
+ var paddingAdjustment = endLoc - loc;
6147
+ if (isRTL) {
6148
+ contentPadding += paddingAdjustment;
6149
+ } else {
6150
+ contentPadding -= paddingAdjustment;
6151
+ }
6152
+ }
6153
+ }
6154
+
6155
+ return contentPadding;
6156
+ };
6157
+
6158
+ /**
6159
+ * Checks the start viewport collision parameter.
6160
+ * @param {DvtTimelineSeriesItem} item The item being updated.
6161
+ * @return {boolean} true if overflow, false otherwise
6162
+ * @private
6163
+ */
6164
+ DvtTimelineSeriesItemRenderer.checkStartViewportCollision = function (item)
6165
+ {
6166
+ return item._timeline._viewStartTime >= item.getStartTime() && item._timeline._viewStartTime <= item.getEndTime()
6167
+ };
6168
+
6169
+ /**
6170
+ * Sets the end viewport collision parameter. Will be used to set the flipped overflow container
6171
+ * @param {DvtTimelineSeriesItem} item The item being updated.
6172
+ * @param {DvtTimelineSeries} series The series containing this item.
6173
+ * @param {boolean} isRTL RTL boolean value
6174
+ * @param {Number} width width of the event bubble (either duration or item)
6175
+ * @private
6176
+ */
6177
+ DvtTimelineSeriesItemRenderer.checkEndViewportCollision = function (item, series, isRTL, width)
6178
+ {
6179
+ var renderEnd;
6180
+ var navButtonBackgroundWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
6181
+ var startTime = item.getStartTime();
6182
+ var loc = TimeAxisUtils.getDatePosition(series._start, series._end, startTime, series._length);
6183
+ var navMode = item._timeline.isDiscreteNavigationMode();
6184
+ // use viewport end time vs timeline end time if in discrete navigation mode
6185
+ var endViewportPos = navMode ? TimeAxisUtils.getDatePosition(series._start, series._end, item._timeline._viewEndTime, series._length) :
6186
+ item._timeline._contentLength;
6187
+ item.setEndViewportCollision(false);
6188
+
6189
+ // no collision behavior if not duration-event
6190
+ if (item.getItemType() !== DvtTimelineSeriesNode.DURATION_EVENT) {
6191
+ return;
6192
+ }
6193
+
6194
+ // add half the preview wings to make it look more natural if it would be slightly too long
6195
+ var collisionAdjustment = DvtTimelineStyleUtils.getNavButtonBackgroundWidth()/2;
6196
+ if (!isRTL) {
6197
+ renderEnd = loc + DvtTimelineStyleUtils.getContentBubbleSpacing() + width;
6198
+
6199
+ if (renderEnd > endViewportPos + collisionAdjustment) {
6200
+ // need to use overflow
6201
+ item.setEndViewportCollision(true);
6202
+ }
6203
+ } else {
6204
+ renderEnd = series._length - loc - width - DvtTimelineStyleUtils.getContentBubbleSpacing();
6205
+ var startViewportPos = item._timeline._startPos;
6206
+ if (navMode) {
6207
+ var adjustedViewEndTime = TimeAxisUtils.getPositionDate(series._start, series._end, endViewportPos + navButtonBackgroundWidth, series._length);
6208
+ startViewportPos = series._length + item._timeline.getDiscreteViewportPanningLength(series._start, adjustedViewEndTime) + item._timeline._discreteOffset;
6209
+ }
6210
+ if (startViewportPos + collisionAdjustment > renderEnd) {
6211
+ item.setEndViewportCollision(true);
6212
+ }
6213
+ }
6214
+ };
6215
+
5273
6216
  /**
5274
6217
  * TimelineSeries JSON Parser
5275
6218
  * @param {DvtTimelineSeries} timelineSeries The owning timelineSeries component.
@@ -5684,11 +6627,12 @@ DvtTimelineSeriesRenderer._renderScrollableCanvas = function(series)
5684
6627
  {
5685
6628
  series._canvasOffsetX = series._canvas.getTranslateX();
5686
6629
  series._canvasOffsetY = series._canvas.getTranslateY();
5687
- series._canvas.setTranslateX(0);
6630
+ series._canvas.setTranslateX(series._offset);
5688
6631
  series._canvas.setTranslateY(0);
5689
6632
  return;
5690
6633
  }
5691
6634
  series._canvas = new Container(series.getCtx(), 'canvas');
6635
+ series._canvas.setTranslateX(series._offset);
5692
6636
  series.addChild(series._canvas);
5693
6637
  };
5694
6638
 
@@ -5814,7 +6758,8 @@ DvtTimelineSeriesRenderer._renderDurations = function(items, series, container,
5814
6758
  var item = items[j];
5815
6759
  var startTime = item.getStartTime();
5816
6760
  var endTime = item.getEndTime();
5817
- if (endTime && endTime !== startTime && i === item.getDurationLevel())
6761
+ // Hide duration event if duration-event mode
6762
+ if (endTime && endTime !== startTime && i === item.getDurationLevel() && item.getItemType() === DvtTimelineSeriesNode.DURATION_BAR)
5818
6763
  DvtTimelineSeriesItemRenderer.renderDuration(item, series, durationBlock, overflowOffset, frAnimationElems, mvAnimator);
5819
6764
  }
5820
6765
  }
@@ -6324,12 +7269,21 @@ DvtTimelineSeries.prototype.render = function(options, width, height)
6324
7269
  this._maxOverflowValue = width;
6325
7270
  this._length = height;
6326
7271
  this._size = width;
7272
+ this._offset = 0;
6327
7273
  }
6328
7274
  else
6329
7275
  {
6330
- this._fetchEndPos = width;
6331
7276
  this._maxOverflowValue = height;
6332
- this._length = width;
7277
+ // need to adjust for nav arrows
7278
+ if (this._callbackObj.isDiscreteNavigationMode()) {
7279
+ this._offset = this._callbackObj._discreteOffset;
7280
+ this._length = width - 2 * this._offset;
7281
+ this._fetchEndPos = width - 2 * this._offset;
7282
+ } else {
7283
+ this._length = width;
7284
+ this._fetchEndPos = width;
7285
+ this._offset = 0;
7286
+ }
6333
7287
  this._size = height;
6334
7288
  }
6335
7289
 
@@ -6377,8 +7331,9 @@ DvtTimelineSeries.prototype.GetComponentDescription = function()
6377
7331
  DvtTimelineSeries.prototype._handleResize = function(width, height)
6378
7332
  {
6379
7333
  this._canvas.setTranslateY(0);
6380
- this._canvas.setTranslateX(0);
6381
-
7334
+ if (!this._callbackObj.isDiscreteNavigationMode()) {
7335
+ this._canvas.setTranslateX(0);
7336
+ }
6382
7337
  this.Width = width;
6383
7338
  this.Height = height;
6384
7339
 
@@ -6389,12 +7344,22 @@ DvtTimelineSeries.prototype._handleResize = function(width, height)
6389
7344
  this._maxOverflowValue = width;
6390
7345
  this._length = height;
6391
7346
  this._size = width;
7347
+ this._offset = 0;
6392
7348
  }
6393
7349
  else
6394
7350
  {
6395
- this._fetchEndPos = width;
6396
7351
  this._maxOverflowValue = height;
6397
- this._length = width;
7352
+ // need to adjust for nav arrows
7353
+ if (this._callbackObj.isDiscreteNavigationMode()) {
7354
+ this._offset = this._callbackObj._discreteOffset;
7355
+ this._length = width - 2 * this._offset;
7356
+ this._fetchEndPos = width - 2 * this._offset;
7357
+ this._canvas.setTranslateX(this._offset);
7358
+ } else {
7359
+ this._length = width;
7360
+ this._fetchEndPos = width;
7361
+ this._offset = 0;
7362
+ }
6398
7363
  this._size = height;
6399
7364
  }
6400
7365
 
@@ -6521,15 +7486,17 @@ DvtTimelineSeries.prototype.calculateSpacing = function(item, index)
6521
7486
 
6522
7487
  if (!this._isVertical)
6523
7488
  {
6524
- var x = item.getLoc();
6525
- var width = item.getWidth() + 10;
7489
+ var endViewportCollisionOffset = item.getEndViewportCollision() ? item.getContentWidth() : 0;
7490
+ var x = item.getLoc() - endViewportCollisionOffset;
7491
+ var width = item.getWidth() + 16;
6526
7492
  var hOffset = DvtTimelineStyleUtils.getBubbleSpacing();
6527
7493
  var overlappingItems = [];
6528
7494
  for (i = 0; i < index; i++)
6529
7495
  {
6530
7496
  currItem = this._items[i];
6531
- currWidth = currItem.getWidth() + 10;
6532
- var currX = currItem.getLoc();
7497
+ currWidth = currItem.getWidth() + 16;
7498
+ endViewportCollisionOffset = currItem.getEndViewportCollision() ? currItem.getContentWidth() : 0;
7499
+ var currX = currItem.getLoc() - endViewportCollisionOffset;
6533
7500
 
6534
7501
  if ((x >= currX && x <= currX + currWidth) || (currX >= x && currX <= x + width))
6535
7502
  overlappingItems.push(currItem);
@@ -6583,8 +7550,9 @@ DvtTimelineSeries.prototype.calculateSpacing = function(item, index)
6583
7550
  DvtTimelineSeries.prototype.calculateDurationSize = function(item, index)
6584
7551
  {
6585
7552
  var i, currItem;
6586
- if (this._items == null || this._items.length === 0)
6587
- return;
7553
+ // if not in duration-bar, skip this step
7554
+ if (this._items == null || this._items.length === 0 || item.getItemType() !== 'duration-bar')
7555
+ return null;
6588
7556
 
6589
7557
  var initialY = 1;
6590
7558
  var startTime = item.getStartTime();
@@ -6678,7 +7646,10 @@ DvtTimelineSeries.prototype.prepareItems = function(items)
6678
7646
  if (endTime && endTime !== item.getStartTime())
6679
7647
  {
6680
7648
  var span = TimeAxisUtils.getDatePosition(this._start, this._end, endTime, this._length) - loc;
6681
- loc = loc + Math.min(DvtTimelineStyleUtils.getDurationFeelerOffset(), span / 2);
7649
+ // don't adjust if duration-event
7650
+ if (item.getItemType() !== DvtTimelineSeriesNode.DURATION_EVENT ) {
7651
+ loc = loc + Math.min(DvtTimelineStyleUtils.getDurationFeelerOffset(), span / 2);
7652
+ }
6682
7653
  }
6683
7654
  item.setLoc(loc);
6684
7655
  }
@@ -6772,7 +7743,7 @@ DvtTimelineSeries.prototype.setVScrollPos = function(pos)
6772
7743
  DvtTimelineSeries.prototype.setHScrollPos = function(pos)
6773
7744
  {
6774
7745
  if (this._canvas != null)
6775
- this._canvas.setTranslateX(0 - pos);
7746
+ this._canvas.setTranslateX(this._offset - pos);
6776
7747
  };
6777
7748
 
6778
7749
  /**
@@ -6843,9 +7814,12 @@ Timeline.prototype._applyParsedProperties = function(props)
6843
7814
  else
6844
7815
  this._isVertical = false;
6845
7816
 
7817
+ this._viewportNavigationMode = this.Options['viewportNavigationMode'];
6846
7818
  this._hasOverview = props.hasOverview;
6847
7819
  this._viewStartTime = props.viewStart;
6848
7820
  this._viewEndTime = props.viewEnd;
7821
+
7822
+ this._initialViewportTimeDuration = this._viewEndTime - this._viewStartTime;
6849
7823
  this._selectionMode = props.selectionMode;
6850
7824
  if (this._selectionMode === 'single')
6851
7825
  this.SelectionHandler = new SelectionHandler(this.getCtx(), SelectionHandler.TYPE_SINGLE);
@@ -6961,7 +7935,51 @@ Timeline.prototype._bundleTimeAxisOptions = function(options)
6961
7935
  var minorAxisOptions = options['minorAxis'];
6962
7936
  this._timeAxisOptions['scale'] = minorAxisOptions['scale'];
6963
7937
  this._timeAxisOptions['converter'] = minorAxisOptions['converter'];
6964
- this._timeAxisOptions['zoomOrder'] = minorAxisOptions['zoomOrder'];
7938
+ this._timeAxisOptions['zoomOrder'] = minorAxisOptions['zoomOrder'] || [minorAxisOptions['scale']];
7939
+ // Default scales label position
7940
+ this._timeAxisOptions['_scaleLabelPosition'] = {
7941
+ seconds: 'center',
7942
+ minutes: 'center',
7943
+ hours: 'center',
7944
+ days: 'center',
7945
+ weeks: 'center',
7946
+ months: 'center',
7947
+ quarters: 'center',
7948
+ years: 'center',
7949
+ };
7950
+ const isAlta = this.getCtx().getThemeBehavior() === 'alta';
7951
+ // Default scales label position
7952
+ if (isAlta) {
7953
+ this._timeAxisOptions['_scaleLabelPosition'] = {
7954
+ seconds: 'center',
7955
+ minutes: 'center',
7956
+ hours: 'center',
7957
+ days: 'center',
7958
+ weeks: 'center',
7959
+ months: 'center',
7960
+ quarters: 'center',
7961
+ years: 'center',
7962
+ };
7963
+ } else {
7964
+ this._timeAxisOptions['_scaleLabelPosition'] = {
7965
+ seconds: 'start',
7966
+ minutes: 'start',
7967
+ hours: 'start',
7968
+ days: 'center',
7969
+ weeks: 'start',
7970
+ months: 'start',
7971
+ quarters: 'start',
7972
+ years: 'start'
7973
+ };
7974
+ }
7975
+ // Custom scales label position
7976
+ this._timeAxisOptions['zoomOrder'].forEach((scale) => {
7977
+ if (scale && scale.name) {
7978
+ const labelPosition = scale.labelPosition || 'auto';
7979
+ const effectiveLabelPosition = labelPosition === 'auto' ? 'start' : labelPosition;
7980
+ this._timeAxisOptions['_scaleLabelPosition'][scale.name] = effectiveLabelPosition;
7981
+ }
7982
+ });
6965
7983
  this._timeAxisOptions['style'] = minorAxisOptions['style'];
6966
7984
  if (minorAxisOptions['svgStyle'])
6967
7985
  this._timeAxisOptions['style'] = minorAxisOptions['svgStyle'];
@@ -7040,9 +8058,26 @@ Timeline.prototype.render = function(options, width, height)
7040
8058
  if (this._timeAxis.hasValidOptions())
7041
8059
  this.prepareViewportLength();
7042
8060
  }
8061
+
8062
+ // calc discrete offset that we need to shift scrollable Canvas and time axis to align them in discrete
8063
+ // viewport navigation mode.
8064
+ if (this.isDiscreteNavigationMode()) {
8065
+ // Grab initial start and end times.
8066
+ this._discreteViewportDatePositions = [this._viewStartTime, this._viewEndTime];
8067
+ this._discreteViewportStartIndex = 0;
8068
+ this._discreteViewportCurrentIndexOffset= 0;
8069
+ var navButtonBackgroundWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
8070
+
8071
+ this._timeAxisRatio = (this._canvasLength - (2 * navButtonBackgroundWidth))/this._canvasLength;
8072
+ this._discreteOffset = (this.getContentLength() - this.getContentLength() * this._timeAxisRatio)/2;
8073
+ }
8074
+
7043
8075
  this._populateSeries();
7044
8076
 
7045
8077
  DvtTimelineRenderer.renderTimeline(this);
8078
+ if (this.isDiscreteNavigationMode()) {
8079
+ this.doInitialPan();
8080
+ }
7046
8081
  this.UpdateAriaAttributes();
7047
8082
 
7048
8083
  // Set the timeline as the only keyboard listener
@@ -7070,7 +8105,8 @@ Timeline.prototype.hasValidSeriesItems = function()
7070
8105
  {
7071
8106
  var item = seriesOptions.items[j];
7072
8107
  var start = (new Date(item.start)).getTime();
7073
- if (!start)
8108
+ // JET-46818 fixing issue where start = 0 (1970 - 1 - 1) also returned false
8109
+ if (start == null || item.start == null)
7074
8110
  return false;
7075
8111
  if (item.hasOwnProperty('end'))
7076
8112
  {
@@ -7254,6 +8290,15 @@ Timeline.prototype._populateSeries = function()
7254
8290
  this._timeZoomCanvas.removeChild(this._series[i]);
7255
8291
  }
7256
8292
  this._series = [];
8293
+ } else {
8294
+ // check each series to make sure the item-type is consistent
8295
+ for (i = 0; i < this._series.length; i++)
8296
+ {
8297
+ if (this._series[i]._items && series[i].items && this._series[i]._items[0]._data.itemType !== series[i].items[0].itemType) {
8298
+ this._timeZoomCanvas.removeChild(this._series[i]);
8299
+ this._series[i] = null;
8300
+ }
8301
+ }
7257
8302
  }
7258
8303
  }
7259
8304
  else
@@ -7297,7 +8342,7 @@ Timeline.prototype._populateSeries = function()
7297
8342
  if (this._series[i] == null)
7298
8343
  {
7299
8344
  var s = new DvtTimelineSeries(this.getCtx(), this.HandleEvent, this);
7300
- this._series.push(s);
8345
+ this._series[i] = s;
7301
8346
  }
7302
8347
  }
7303
8348
  }
@@ -7479,7 +8524,8 @@ Timeline.prototype._getOverviewMarkerOptions = function()
7479
8524
  {
7480
8525
  itemOption['et'] = endTime;
7481
8526
  var durationFillColor = item.getDurationFillColor();
7482
- if (durationFillColor)
8527
+ // only set duration fill color if duration bar
8528
+ if (durationFillColor && item.getItemType() === DvtTimelineSeriesNode.DURATION_BAR)
7483
8529
  itemOption['dfc'] = durationFillColor;
7484
8530
  }
7485
8531
  overviewMarkers.push(itemOption);
@@ -7506,12 +8552,15 @@ Timeline.prototype.createViewportChangeEvent = function()
7506
8552
  Timeline.prototype.HandleTouchStart = function(event)
7507
8553
  {
7508
8554
  var touches = event.touches;
7509
- if (touches.length === 1)
8555
+ var elClass = event.target.getClassName();
8556
+ // block pan event if target element has class (currently just nav arrows)
8557
+ if (touches.length === 1 && !elClass)
7510
8558
  this._dragPanSeries = this._findSeries(event.target);
7511
8559
  };
7512
8560
 
7513
8561
  /**
7514
8562
  * Handles mouse wheel event.
8563
+ * Disabled in discrete viewport navigation mode
7515
8564
  * @param {event} event The mouse wheel event
7516
8565
  * @protected
7517
8566
  * @override
@@ -7519,7 +8568,7 @@ Timeline.prototype.HandleTouchStart = function(event)
7519
8568
  Timeline.prototype.HandleMouseWheel = function(event)
7520
8569
  {
7521
8570
  Timeline.superclass.HandleMouseWheel.call(this, event);
7522
- if (this.hasValidOptions())
8571
+ if (this.hasValidOptions() && !this.isDiscreteNavigationMode())
7523
8572
  {
7524
8573
  if (event.zoomWheelDelta)
7525
8574
  {
@@ -7676,6 +8725,14 @@ Timeline.prototype._handleResize = function(width, height)
7676
8725
  this.prepareViewportLength();
7677
8726
  DvtTimelineRenderer._renderBackground(this);
7678
8727
 
8728
+ // need to recalculate the discrete offset
8729
+ if (this.isDiscreteNavigationMode()) {
8730
+ var navButtonBackgroundWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
8731
+
8732
+ this._timeAxisRatio = (this._canvasLength - (2 * navButtonBackgroundWidth))/this._canvasLength;
8733
+ this._discreteOffset = (this.getContentLength() - this.getContentLength() * this._timeAxisRatio)/2;
8734
+ }
8735
+
7679
8736
  if (this.hasValidOptions())
7680
8737
  {
7681
8738
  this.renderTimeZoomCanvas(this._canvas);
@@ -7684,7 +8741,10 @@ Timeline.prototype._handleResize = function(width, height)
7684
8741
  DvtTimelineRenderer._renderAxis(this, this._timeZoomCanvas);
7685
8742
  DvtTimelineRenderer._renderSeriesLabels(this);
7686
8743
  DvtTimelineRenderer._renderZoomControls(this);
7687
-
8744
+ if (this.isDiscreteNavigationMode()){
8745
+ DvtTimelineRenderer._renderNavigationArrows(this, this._timeZoomCanvas);
8746
+ this.doInitialPan();
8747
+ }
7688
8748
  if (this._hasOverview)
7689
8749
  {
7690
8750
  DvtTimelineRenderer._renderOverview(this);
@@ -7722,7 +8782,11 @@ Timeline.prototype.HandleKeyDown = function(event)
7722
8782
 
7723
8783
  Timeline.prototype.HandleMouseDown = function(event)
7724
8784
  {
7725
- this._dragPanSeries = this._findSeries(event.target);
8785
+ var elClass = event.target.getClassName();
8786
+ // block pan event if target element has class (currently just nav arrows)
8787
+ if (!elClass) {
8788
+ this._dragPanSeries = this._findSeries(event.target);
8789
+ }
7726
8790
  };
7727
8791
 
7728
8792
  Timeline.prototype.endDragPan = function()
@@ -7819,15 +8883,18 @@ Timeline.prototype.panBy = function(deltaX, deltaY)
7819
8883
  }
7820
8884
  else
7821
8885
  {
7822
- this.panZoomCanvasBy(deltaX);
7823
- if (this._hasOverview)
7824
- this._overview.setViewportRange(this._viewStartTime, this._viewEndTime, null, null);
8886
+ // no horizontal pan in nav mode.
8887
+ if (!this.isDiscreteNavigationMode()) {
8888
+ this.panZoomCanvasBy(deltaX);
8889
+ if (this._hasOverview)
8890
+ this._overview.setViewportRange(this._viewStartTime, this._viewEndTime, null, null);
7825
8891
 
7826
- if (this.isTimeDirScrollbarOn())
7827
- this.timeDirScrollbar.setViewportRange(this._viewStartTime, this._viewEndTime);
8892
+ if (this.isTimeDirScrollbarOn())
8893
+ this.timeDirScrollbar.setViewportRange(this._viewStartTime, this._viewEndTime);
7828
8894
 
7829
- // Update time axis due to viewport change
7830
- DvtTimelineRenderer._renderAxis(this, this._timeZoomCanvas, true);
8895
+ // Update time axis due to viewport change
8896
+ DvtTimelineRenderer._renderAxis(this, this._timeZoomCanvas, true);
8897
+ }
7831
8898
 
7832
8899
  if (this._dragPanSeries)
7833
8900
  {
@@ -8055,8 +9122,25 @@ Timeline.prototype.processScrollbarEvent = function(event, component)
8055
9122
  }
8056
9123
  };
8057
9124
 
9125
+ Timeline.prototype.discreteScrollIntoViewport = function(item)
9126
+ {
9127
+ if (!this.isDiscreteNavigationMode()) {
9128
+ return;
9129
+ }
9130
+ var itemStartTime = item.getStartTime();
9131
+ var viewportIndexScroll = Math.floor((itemStartTime - this._viewStartTime)/this._initialViewportTimeDuration);
9132
+ if (viewportIndexScroll !== 0) {
9133
+ this._discreteViewportCurrentIndexOffset += viewportIndexScroll;
9134
+ this.handlePageChangeDiscreteViewport();
9135
+ }
9136
+ };
9137
+
8058
9138
  Timeline.prototype.updateScrollForItemSelection = function(item)
8059
9139
  {
9140
+ if (this.isDiscreteNavigationMode()) {
9141
+ this.discreteScrollIntoViewport(item);
9142
+ return;
9143
+ }
8060
9144
  var viewSize = this._viewEndTime - this._viewStartTime;
8061
9145
  this._viewStartTime = item.getStartTime() - (viewSize / 2);
8062
9146
  if (this._viewStartTime < this._start)
@@ -8076,8 +9160,17 @@ Timeline.prototype.updateScrollForItemSelection = function(item)
8076
9160
 
8077
9161
  Timeline.prototype.updateScrollForItemNavigation = function(item)
8078
9162
  {
9163
+ if (!(item instanceof DvtTimelineSeriesNode)) {
9164
+ return;
9165
+ }
9166
+
9167
+ if (this.isDiscreteNavigationMode()) {
9168
+ this.discreteScrollIntoViewport(item);
9169
+ return;
9170
+ }
9171
+
8079
9172
  var itemSize = this._isVertical ? item.getHeight() : item.getWidth();
8080
- var itemHoverStrokeWidth = DvtTimelineStyleUtils.getItemHoverStrokeWidth();
9173
+ var itemHoverStrokeWidth = DvtTimelineStyleUtils.getItemHoverStrokeWidth(item._timeline.Options);
8081
9174
  var itemStart = item.getLoc() - (this._isVertical ? (itemSize / 2) + itemHoverStrokeWidth : DvtTimelineStyleUtils.getBubbleOffset() + itemHoverStrokeWidth);
8082
9175
  var startPos = this.getRelativeStartPos();
8083
9176
  if (this.isRTL() && !this._isVertical)
@@ -8229,7 +9322,7 @@ Timeline.prototype.clearOverview = function()
8229
9322
  */
8230
9323
  Timeline.prototype.isTimeDirScrollbarOn = function()
8231
9324
  {
8232
- return !this._hasOverview;
9325
+ return !this._hasOverview && !this.isDiscreteNavigationMode();
8233
9326
  };
8234
9327
 
8235
9328
  /**
@@ -8240,6 +9333,14 @@ Timeline.prototype.isContentDirScrollbarOn = function()
8240
9333
  return true;
8241
9334
  };
8242
9335
 
9336
+ /**
9337
+ * @override
9338
+ */
9339
+ Timeline.prototype.isDiscreteNavigationMode = function()
9340
+ {
9341
+ return this._viewportNavigationMode === 'discrete' && this.getCtx().getThemeBehavior() === 'redwood' && !this.isVertical();
9342
+ };
9343
+
8243
9344
  /**
8244
9345
  * Returns the background offset value of this component in the x direction.
8245
9346
  * @return {number} The background offset value of this component in the x direction.
@@ -8258,4 +9359,144 @@ Timeline.prototype.setBackgroundXOffset = function(backgroundX)
8258
9359
  this._backgroundX = backgroundX;
8259
9360
  };
8260
9361
 
9362
+ /**
9363
+ * Gets the date position for viewport boundary at given offset when using discrete viewport navigation mode.
9364
+ * @param {number} targetOffset The offset to check against
9365
+ * @return {Object} the viewport date positions in Object {startDate: viewportStart, endDate: viewportEnd}
9366
+ */
9367
+ Timeline.prototype.getDiscreteViewportDatePosition = function(targetOffset)
9368
+ {
9369
+ var startDate, endDate, newStartDate, newEndDate;
9370
+ var newStartIndex = this._discreteViewportStartIndex + targetOffset;
9371
+
9372
+ if (newStartIndex < 0) {
9373
+ startDate = this._discreteViewportDatePositions[0];
9374
+ endDate = this._discreteViewportDatePositions[1];
9375
+ while (newStartIndex < 0) {
9376
+ // the start index is before the earliest currently stored start date.
9377
+ // need to loop to generate previous dates until we have enough
9378
+ var newStartDate = this.getClosestDate(startDate - this._initialViewportTimeDuration);
9379
+ this._discreteViewportDatePositions.unshift(newStartDate);
9380
+ endDate = startDate;
9381
+ startDate = newStartDate;
9382
+
9383
+ // update start index and current offset
9384
+ this._discreteViewportStartIndex ++;
9385
+
9386
+ newStartIndex ++;
9387
+ }
9388
+ } else if (newStartIndex > this._discreteViewportDatePositions.length - 2) {
9389
+ startDate = this._discreteViewportDatePositions[this._discreteViewportDatePositions.length - 2];
9390
+ endDate = this._discreteViewportDatePositions[this._discreteViewportDatePositions.length - 1];
9391
+ while (newStartIndex > this._discreteViewportDatePositions.length - 2) {
9392
+ var newEndDate = this.getClosestDate(endDate + this._initialViewportTimeDuration);
9393
+ this._discreteViewportDatePositions.push(newEndDate);
9394
+ startDate = endDate;
9395
+ endDate = newEndDate;
9396
+ }
9397
+ } else {
9398
+ startDate = this._discreteViewportDatePositions[newStartIndex];
9399
+ endDate = this._discreteViewportDatePositions[newStartIndex + 1];
9400
+ }
9401
+ return {startDate: startDate, endDate: endDate};
9402
+ };
9403
+
9404
+ /**
9405
+ * Gets closest date to target date given the current time axis scale.
9406
+ * @param {number} date The date to check against
9407
+ */
9408
+ Timeline.prototype.getClosestDate = function(date)
9409
+ {
9410
+ var getClosestDate = (date, scale) => {
9411
+ var dateBehind = this._timeAxis.adjustDate(date, scale);
9412
+ var dateAhead = this._timeAxis.getNextDate(dateBehind, scale);
9413
+ var closestDate = Date.parse(date - dateBehind > dateAhead - date ? dateAhead : dateBehind);
9414
+ return closestDate;
9415
+ };
9416
+ var closestMinorDate = getClosestDate(date);
9417
+ var closestMajorDate = getClosestDate(date, this.Options['majorAxis']['scale']);
9418
+ if (closestMajorDate != null) {
9419
+ return Math.abs(date - closestMinorDate) > Math.abs(date - closestMajorDate) ? closestMajorDate : closestMinorDate;
9420
+ }
9421
+ };
9422
+
9423
+ /**
9424
+ * Gets the current viewport panning length when in discrete viewport navigation mode.
9425
+ * This length is shorter than the actual viewport length due to "preview wings"
9426
+ * @param {number} oldStartTime the old startTime
9427
+ * @param {number} newStartTime the new startTime
9428
+ * @return {number} the value: newStartTime - oldStartTime as distance in terms of the viewport
9429
+ */
9430
+ Timeline.prototype.getDiscreteViewportPanningLength = function(oldStartTime, newStartTime)
9431
+ {
9432
+ var context = this.getCtx();
9433
+ var isRTL = Agent.isRightToLeft(context);
9434
+ var length = this.getContentLength() * this._timeAxisRatio;
9435
+ var startDatePos = TimeAxisUtils.getDatePosition(this._start, this._end, oldStartTime, length);
9436
+ var endDatePos = TimeAxisUtils.getDatePosition(this._start, this._end, newStartTime, length);
9437
+ return (endDatePos - startDatePos) * (isRTL ? -1 : 1)
9438
+ };
9439
+
9440
+ /**
9441
+ * Update the viewport when in discrete viewport navigation mode.
9442
+ */
9443
+ Timeline.prototype.updateDiscreteViewport = function()
9444
+ {
9445
+ DvtTimelineRenderer._renderAxis(this, this.getTimeZoomCanvas(), true);
9446
+ DvtTimelineRenderer._renderNavigationArrows(this, this.getTimeZoomCanvas());
9447
+ if (this._hasOverview) {
9448
+ DvtTimelineRenderer._renderOverview(this);
9449
+ }
9450
+ this.updateSeries();
9451
+ };
9452
+
9453
+ /**
9454
+ * Handles page change event
9455
+ */
9456
+ Timeline.prototype.handlePageChangeDiscreteViewport = function()
9457
+ {
9458
+ // calculate new start/end times
9459
+ var newDates = this.getDiscreteViewportDatePosition(this._discreteViewportCurrentIndexOffset);
9460
+
9461
+ // calculate panning length amount
9462
+ var timeAxisLength = this.getDiscreteViewportPanningLength(this._viewStartTime, newDates.startDate);
9463
+ this.panZoomCanvasBy(timeAxisLength);
9464
+
9465
+ // fix view start/end times since panZoomCanvasBy messes it up
9466
+ this._viewStartTime = newDates.startDate;
9467
+ this._viewEndTime = newDates.endDate;
9468
+
9469
+ // update timeline with new viewport
9470
+ this.updateDiscreteViewport();
9471
+
9472
+ // fire event
9473
+ this.dispatchEvent(this.createViewportChangeEvent());
9474
+ };
9475
+
9476
+ /**
9477
+ * Perform initial panning
9478
+ */
9479
+ Timeline.prototype.doInitialPan = function()
9480
+ {
9481
+ var context = this.getCtx();
9482
+ var isRTL = Agent.isRightToLeft(context);
9483
+ // do initial pan since it's calculated incorrectly using the original width
9484
+ var tempStart = this._viewStartTime;
9485
+ var tempEnd = this._viewEndTime;
9486
+ var length = this.getContentLength() * this._timeAxisRatio;
9487
+ var navButtonWidth = DvtTimelineStyleUtils.getNavButtonBackgroundWidth();
9488
+ var startDatePos = TimeAxisUtils.getDatePosition(this._start, this._end, this._viewStartTime, length);
9489
+ var adjustedViewStartTime = TimeAxisUtils.getPositionDate(this._start, this._end, startDatePos - navButtonWidth, length);
9490
+ var initialPanOffset = this.getDiscreteViewportPanningLength(this._start, adjustedViewStartTime);
9491
+ if (isRTL) {
9492
+ var endDatePos = TimeAxisUtils.getDatePosition(this._start, this._end, this._viewEndTime, length);
9493
+ var adjustedViewEndTime = TimeAxisUtils.getPositionDate(this._start, this._end, endDatePos + navButtonWidth, length);
9494
+ initialPanOffset = length + this.getDiscreteViewportPanningLength(this._start, adjustedViewEndTime);
9495
+ }
9496
+ var adjustedOffset = initialPanOffset + this._discreteOffset + this._startPos;
9497
+ this.panZoomCanvasBy(adjustedOffset);
9498
+ this._viewStartTime = tempStart;
9499
+ this._viewEndTime = tempEnd;
9500
+ };
9501
+
8261
9502
  export { Timeline, TimelineOverview };