@oracle/oraclejet 15.0.7 → 15.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 (822) hide show
  1. package/README.md +4 -4
  2. package/THIRDPARTYLICENSE.txt +8 -8
  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 +1 -1
  6. package/dist/css/alta/oj-alta.css +1 -1
  7. package/dist/css/alta-android/oj-alta-min.css +1 -1
  8. package/dist/css/alta-android/oj-alta.css +1 -1
  9. package/dist/css/alta-ios/oj-alta-min.css +1 -1
  10. package/dist/css/alta-ios/oj-alta.css +1 -1
  11. package/dist/css/alta-windows/oj-alta-min.css +1 -1
  12. package/dist/css/alta-windows/oj-alta.css +1 -1
  13. package/dist/css/redwood/oj-redwood-min.css +1 -1
  14. package/dist/css/redwood/oj-redwood-notag-min.css +1 -1
  15. package/dist/css/redwood/oj-redwood-notag.css +18 -3
  16. package/dist/css/redwood/oj-redwood.css +18 -3
  17. package/dist/css/stable/oj-stable-min.css +1 -1
  18. package/dist/css/stable/oj-stable.css +18 -3
  19. package/dist/custom-tsc/metadataTransformer.js +2 -2
  20. package/dist/custom-tsc/metadataTransformer.js.map +1 -1
  21. package/dist/custom-tsc/utils/MetadataEventUtils.js +22 -8
  22. package/dist/custom-tsc/utils/MetadataEventUtils.js.map +1 -1
  23. package/dist/custom-tsc/utils/MetadataPropertyUtils.js +2 -2
  24. package/dist/custom-tsc/utils/MetadataPropertyUtils.js.map +1 -1
  25. package/dist/custom-tsc/utils/MetadataTypeUtils.d.ts +1 -1
  26. package/dist/custom-tsc/utils/MetadataTypeUtils.js +19 -9
  27. package/dist/custom-tsc/utils/MetadataTypeUtils.js.map +1 -1
  28. package/dist/custom-tsc/utils/MetadataTypes.d.ts +8 -0
  29. package/dist/custom-tsc/utils/MetadataTypes.js.map +1 -1
  30. package/dist/custom-tsc/utils/MetadataUtils.d.ts +1 -1
  31. package/dist/custom-tsc/utils/MetadataUtils.js +18 -16
  32. package/dist/custom-tsc/utils/MetadataUtils.js.map +1 -1
  33. package/dist/js/libs/oj/debug/ojbundletransform.js +81 -4
  34. package/dist/js/libs/oj/debug/ojchart-toolkit.js +85 -38
  35. package/dist/js/libs/oj/debug/ojchart.js +81 -10
  36. package/dist/js/libs/oj/debug/ojcore-base.js +2 -2
  37. package/dist/js/libs/oj/debug/ojdatagrid.js +2104 -125
  38. package/dist/js/libs/oj/debug/ojdataproviderscroller.js +11 -1
  39. package/dist/js/libs/oj/debug/ojdiagram-toolkit.js +7 -6
  40. package/dist/js/libs/oj/debug/ojdiagram.js +1 -1
  41. package/dist/js/libs/oj/debug/ojdvt-base.js +3 -0
  42. package/dist/js/libs/oj/debug/ojdvt-timecomponent.js +10 -4
  43. package/dist/js/libs/oj/debug/ojdvt-treeview.js +6 -1
  44. package/dist/js/libs/oj/debug/ojgantt-toolkit.js +130 -49
  45. package/dist/js/libs/oj/debug/ojknockout.js +26 -20
  46. package/dist/js/libs/oj/debug/ojlegend-toolkit.js +12 -2
  47. package/dist/js/libs/oj/debug/ojlegend.js +46 -21
  48. package/dist/js/libs/oj/debug/ojmonitoring.js +36 -0
  49. package/dist/js/libs/oj/debug/ojnavigationlist.js +1 -0
  50. package/dist/js/libs/oj/debug/ojrestdataprovider.js +10 -4
  51. package/dist/js/libs/oj/debug/ojtable.js +42 -9
  52. package/dist/js/libs/oj/debug/ojtagcloud.js +57 -0
  53. package/dist/js/libs/oj/debug/ojtimeline-toolkit.js +4 -0
  54. package/dist/js/libs/oj/debug/ojtoolbar.js +26 -23
  55. package/dist/js/libs/oj/debug/ojtreeview.js +1 -3
  56. package/dist/js/libs/oj/debug/ojvcomponent-template.js +8 -7
  57. package/dist/js/libs/oj/debug_esm/ojbundletransform.js +81 -4
  58. package/dist/js/libs/oj/debug_esm/ojchart-toolkit.js +85 -38
  59. package/dist/js/libs/oj/debug_esm/ojchart.js +81 -10
  60. package/dist/js/libs/oj/debug_esm/ojcore-base.js +2 -2
  61. package/dist/js/libs/oj/debug_esm/ojdatagrid.js +2104 -125
  62. package/dist/js/libs/oj/debug_esm/ojdataproviderscroller.js +11 -1
  63. package/dist/js/libs/oj/debug_esm/ojdiagram-toolkit.js +7 -6
  64. package/dist/js/libs/oj/debug_esm/ojdiagram.js +1 -1
  65. package/dist/js/libs/oj/debug_esm/ojdvt-base.js +3 -0
  66. package/dist/js/libs/oj/debug_esm/ojdvt-timecomponent.js +10 -4
  67. package/dist/js/libs/oj/debug_esm/ojdvt-treeview.js +6 -1
  68. package/dist/js/libs/oj/debug_esm/ojgantt-toolkit.js +130 -49
  69. package/dist/js/libs/oj/debug_esm/ojknockout.js +26 -19
  70. package/dist/js/libs/oj/debug_esm/ojlegend-toolkit.js +12 -2
  71. package/dist/js/libs/oj/debug_esm/ojlegend.js +46 -21
  72. package/dist/js/libs/oj/debug_esm/ojmonitoring.js +28 -0
  73. package/dist/js/libs/oj/debug_esm/ojnavigationlist.js +1 -0
  74. package/dist/js/libs/oj/debug_esm/ojrestdataprovider.js +10 -4
  75. package/dist/js/libs/oj/debug_esm/ojtable.js +42 -9
  76. package/dist/js/libs/oj/debug_esm/ojtagcloud.js +57 -0
  77. package/dist/js/libs/oj/debug_esm/ojtimeline-toolkit.js +4 -0
  78. package/dist/js/libs/oj/debug_esm/ojtoolbar.js +26 -23
  79. package/dist/js/libs/oj/debug_esm/ojtreeview.js +1 -3
  80. package/dist/js/libs/oj/debug_esm/ojvcomponent-template.js +8 -6
  81. package/dist/js/libs/oj/main-template.js +3 -3
  82. package/dist/js/libs/oj/min/ojbundletransform.js +1 -1
  83. package/dist/js/libs/oj/min/ojbundletransform.js.map +1 -1
  84. package/dist/js/libs/oj/min/ojchart-toolkit.js +1 -1
  85. package/dist/js/libs/oj/min/ojchart-toolkit.js.map +1 -1
  86. package/dist/js/libs/oj/min/ojchart.js +1 -1
  87. package/dist/js/libs/oj/min/ojchart.js.map +1 -1
  88. package/dist/js/libs/oj/min/ojcore-base.js +1 -1
  89. package/dist/js/libs/oj/min/ojdatagrid.js +1 -1
  90. package/dist/js/libs/oj/min/ojdatagrid.js.map +1 -1
  91. package/dist/js/libs/oj/min/ojdataproviderscroller.js +1 -1
  92. package/dist/js/libs/oj/min/ojdataproviderscroller.js.map +1 -1
  93. package/dist/js/libs/oj/min/ojdiagram-toolkit.js +1 -1
  94. package/dist/js/libs/oj/min/ojdiagram-toolkit.js.map +1 -1
  95. package/dist/js/libs/oj/min/ojdvt-base.js +1 -1
  96. package/dist/js/libs/oj/min/ojdvt-base.js.map +1 -1
  97. package/dist/js/libs/oj/min/ojdvt-timecomponent.js +1 -1
  98. package/dist/js/libs/oj/min/ojdvt-timecomponent.js.map +1 -1
  99. package/dist/js/libs/oj/min/ojdvt-treeview.js +1 -1
  100. package/dist/js/libs/oj/min/ojdvt-treeview.js.map +1 -1
  101. package/dist/js/libs/oj/min/ojgantt-toolkit.js +1 -1
  102. package/dist/js/libs/oj/min/ojgantt-toolkit.js.map +1 -1
  103. package/dist/js/libs/oj/min/ojknockout.js +2 -2
  104. package/dist/js/libs/oj/min/ojknockout.js.map +1 -1
  105. package/dist/js/libs/oj/min/ojlegend-toolkit.js +1 -1
  106. package/dist/js/libs/oj/min/ojlegend-toolkit.js.map +1 -1
  107. package/dist/js/libs/oj/min/ojlegend.js +1 -1
  108. package/dist/js/libs/oj/min/ojlegend.js.map +1 -1
  109. package/dist/js/libs/oj/min/ojmonitoring.js +9 -0
  110. package/dist/js/libs/oj/min/ojmonitoring.js.map +1 -0
  111. package/dist/js/libs/oj/min/ojnavigationlist.js.map +1 -1
  112. package/dist/js/libs/oj/min/ojrestdataprovider.js +1 -1
  113. package/dist/js/libs/oj/min/ojrestdataprovider.js.map +1 -1
  114. package/dist/js/libs/oj/min/ojtable.js +1 -1
  115. package/dist/js/libs/oj/min/ojtable.js.map +1 -1
  116. package/dist/js/libs/oj/min/ojtagcloud.js.map +1 -1
  117. package/dist/js/libs/oj/min/ojtimeline-toolkit.js +1 -1
  118. package/dist/js/libs/oj/min/ojtimeline-toolkit.js.map +1 -1
  119. package/dist/js/libs/oj/min/ojtoolbar.js +1 -1
  120. package/dist/js/libs/oj/min/ojtoolbar.js.map +1 -1
  121. package/dist/js/libs/oj/min/ojtreeview.js +1 -1
  122. package/dist/js/libs/oj/min/ojtreeview.js.map +1 -1
  123. package/dist/js/libs/oj/min/ojvcomponent-template.js +1 -1
  124. package/dist/js/libs/oj/min/ojvcomponent-template.js.map +1 -1
  125. package/dist/js/libs/oj/resources/nls/ar/ojtranslations.js +1 -1
  126. package/dist/js/libs/oj/resources/nls/ar-XB/ojtranslations.js +1 -1
  127. package/dist/js/libs/oj/resources/nls/bg/ojtranslations.js +1 -1
  128. package/dist/js/libs/oj/resources/nls/bs/ojtranslations.js +1 -1
  129. package/dist/js/libs/oj/resources/nls/bs-Cyrl/ojtranslations.js +1 -1
  130. package/dist/js/libs/oj/resources/nls/cs/ojtranslations.js +1 -1
  131. package/dist/js/libs/oj/resources/nls/da/ojtranslations.js +1 -1
  132. package/dist/js/libs/oj/resources/nls/de/ojtranslations.js +1 -1
  133. package/dist/js/libs/oj/resources/nls/el/ojtranslations.js +1 -1
  134. package/dist/js/libs/oj/resources/nls/en-XA/ojtranslations.js +1 -1
  135. package/dist/js/libs/oj/resources/nls/en-XC/ojtranslations.js +1 -1
  136. package/dist/js/libs/oj/resources/nls/es/ojtranslations.js +1 -1
  137. package/dist/js/libs/oj/resources/nls/et/ojtranslations.js +1 -1
  138. package/dist/js/libs/oj/resources/nls/fi/ojtranslations.js +1 -1
  139. package/dist/js/libs/oj/resources/nls/fr/ojtranslations.js +1 -1
  140. package/dist/js/libs/oj/resources/nls/fr-CA/ojtranslations.js +1 -1
  141. package/dist/js/libs/oj/resources/nls/he/ojtranslations.js +1 -1
  142. package/dist/js/libs/oj/resources/nls/hr/ojtranslations.js +1 -1
  143. package/dist/js/libs/oj/resources/nls/hu/ojtranslations.js +1 -1
  144. package/dist/js/libs/oj/resources/nls/is/ojtranslations.js +1 -1
  145. package/dist/js/libs/oj/resources/nls/it/ojtranslations.js +1 -1
  146. package/dist/js/libs/oj/resources/nls/ja/ojtranslations.js +1 -1
  147. package/dist/js/libs/oj/resources/nls/ko/ojtranslations.js +1 -1
  148. package/dist/js/libs/oj/resources/nls/lt/ojtranslations.js +1 -1
  149. package/dist/js/libs/oj/resources/nls/lv/ojtranslations.js +1 -1
  150. package/dist/js/libs/oj/resources/nls/ms/ojtranslations.js +1 -1
  151. package/dist/js/libs/oj/resources/nls/nl/ojtranslations.js +1 -1
  152. package/dist/js/libs/oj/resources/nls/no/ojtranslations.js +1 -1
  153. package/dist/js/libs/oj/resources/nls/ojtranslations.js +1 -1
  154. package/dist/js/libs/oj/resources/nls/pl/ojtranslations.js +1 -1
  155. package/dist/js/libs/oj/resources/nls/pseudo/ojtranslations.js +1 -1
  156. package/dist/js/libs/oj/resources/nls/pt/ojtranslations.js +1 -1
  157. package/dist/js/libs/oj/resources/nls/pt-PT/ojtranslations.js +1 -1
  158. package/dist/js/libs/oj/resources/nls/ro/ojtranslations.js +1 -1
  159. package/dist/js/libs/oj/resources/nls/ru/ojtranslations.js +1 -1
  160. package/dist/js/libs/oj/resources/nls/sk/ojtranslations.js +1 -1
  161. package/dist/js/libs/oj/resources/nls/sl/ojtranslations.js +1 -1
  162. package/dist/js/libs/oj/resources/nls/sr/ojtranslations.js +1 -1
  163. package/dist/js/libs/oj/resources/nls/sr-Latn/ojtranslations.js +1 -1
  164. package/dist/js/libs/oj/resources/nls/sv/ojtranslations.js +1 -1
  165. package/dist/js/libs/oj/resources/nls/th/ojtranslations.js +1 -1
  166. package/dist/js/libs/oj/resources/nls/tr/ojtranslations.js +1 -1
  167. package/dist/js/libs/oj/resources/nls/uk/ojtranslations.js +1 -1
  168. package/dist/js/libs/oj/resources/nls/vi/ojtranslations.js +1 -1
  169. package/dist/js/libs/oj/resources/nls/zh-Hans/ojtranslations.js +1 -1
  170. package/dist/js/libs/oj/resources/nls/zh-Hant/ojtranslations.js +1 -1
  171. package/dist/metadata/components/allComponents.json +1142 -931
  172. package/dist/package-backup.json +1 -1
  173. package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/base/_oj-data-grid.scss +23 -0
  174. package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/base/_oj-helpers.scss +1 -1
  175. package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/base/_oj-table.scss +0 -1
  176. package/dist/scss/common/helpers/_oj.common.helpers.scss +1 -1
  177. package/dist/types/ojchart/index.d.ts +12 -0
  178. package/dist/types/ojdatagrid/index.d.ts +15 -0
  179. package/dist/types/ojlegend/index.d.ts +16 -0
  180. package/dist/webpack-tools/4.x/webpack.config.js +3 -3
  181. package/dist/webpack-tools/webpack.config.js +3 -3
  182. package/package.json +2 -2
  183. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/accordion/themes/base/_oj-accordion.scss +0 -0
  184. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/accordion/themes/redwood/_oj-accordion.cssvars.scss +0 -0
  185. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/accordion/themes/redwood/oj-accordion.scss +0 -0
  186. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/accordion/themes/stable/_oj-accordion.cssvars.scss +0 -0
  187. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/accordion/themes/stable/oj-accordion.scss +0 -0
  188. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/action-card/themes/base/_oj-action-card.scss +0 -0
  189. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/action-card/themes/redwood/_oj-action-card.cssvars.scss +0 -0
  190. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/action-card/themes/redwood/oj-action-card.scss +0 -0
  191. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/action-card/themes/stable/_oj-action-card.cssvars.scss +0 -0
  192. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/action-card/themes/stable/oj-action-card.scss +0 -0
  193. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/base/_oj.common.servervars.scss +0 -0
  194. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/base/oj.common.settings.cssvariables.css +0 -0
  195. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/redwood/_oj-all-components-common.scss +0 -0
  196. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/redwood/_oj-all-components-notag.scss +0 -0
  197. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/redwood/_oj-all-components.scss +0 -0
  198. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/redwood/_oj.redwood.settings.scss +0 -0
  199. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/redwood/oj.redwood.cssvars.settings.css +0 -0
  200. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/stable/_oj-all-components-common.scss +0 -0
  201. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/stable/_oj-all-components-notag.scss +0 -0
  202. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/stable/_oj-all-components.scss +0 -0
  203. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/stable/_oj.stable.settings.scss +0 -0
  204. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/all-components/themes/stable/oj.stable.cssvars.settings.css +0 -0
  205. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/base/_oj-animation.scss +0 -0
  206. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/redwood/_oj-animation.cssvars.scss +0 -0
  207. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/redwood/_oj-animation.servervars.scss +0 -0
  208. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/redwood/oj-animation.scss +0 -0
  209. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/stable/_oj-animation.cssvars.scss +0 -0
  210. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/stable/_oj-animation.servervars.scss +0 -0
  211. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/animation/themes/stable/oj-animation.scss +0 -0
  212. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout/themes/base/_oj-app-layout.scss +0 -0
  213. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout/themes/redwood/_oj-app-layout.cssvars.scss +0 -0
  214. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout/themes/redwood/_oj-app-layout.scss +0 -0
  215. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout/themes/stable/_oj-app-layout.cssvars.scss +0 -0
  216. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout/themes/stable/_oj-app-layout.scss +0 -0
  217. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/base/_oj-app-layout-hybrid-ignore.scoped.cssvars.scss +0 -0
  218. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/base/_oj-app-layout-hybrid.scss +0 -0
  219. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/redwood/_oj-app-layout-hybrid.cssvars.scss +0 -0
  220. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/redwood/oj-app-layout-hybrid.scss +0 -0
  221. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/stable/_oj-app-layout-hybrid.cssvars.scss +0 -0
  222. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-hybrid/themes/stable/oj-app-layout-hybrid.scss +0 -0
  223. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-web/themes/base/_oj-app-layout-web.scss +0 -0
  224. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-web/themes/redwood/_oj-app-layout-web.cssvars.scss +0 -0
  225. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-web/themes/redwood/oj-app-layout-web.scss +0 -0
  226. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-web/themes/stable/_oj-app-layout-web.cssvars.scss +0 -0
  227. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/app-layout-web/themes/stable/oj-app-layout-web.scss +0 -0
  228. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/base/_oj-avatar.scss +0 -0
  229. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/redwood/_oj-avatar-ignore.scoped.cssvars.scss +0 -0
  230. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/redwood/_oj-avatar-scoped.cssvars.scss +0 -0
  231. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/redwood/_oj-avatar.cssvars.scss +0 -0
  232. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/redwood/oj-avatar.scss +0 -0
  233. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/stable/_oj-avatar-scoped.cssvars.scss +0 -0
  234. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/stable/_oj-avatar.cssvars.scss +0 -0
  235. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/avatar/themes/stable/oj-avatar.scss +0 -0
  236. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/base/_oj-badge.scss +0 -0
  237. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/redwood/_oj-badge-ignore.scoped.cssvars.scss +0 -0
  238. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/redwood/_oj-badge-scoped.cssvars.scss +0 -0
  239. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/redwood/_oj-badge.cssvars.scss +0 -0
  240. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/redwood/oj-badge.scss +0 -0
  241. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/stable/_oj-badge-scoped.cssvars.scss +0 -0
  242. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/stable/_oj-badge.cssvars.scss +0 -0
  243. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/badge/themes/stable/oj-badge.scss +0 -0
  244. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/base/_oj-button.scss +0 -0
  245. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/redwood/_oj-button-ignore.scoped.cssvars.scss +0 -0
  246. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/redwood/_oj-button-scoped.cssvars.scss +0 -0
  247. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/redwood/_oj-button.cssvars.scss +0 -0
  248. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/redwood/oj-button.scss +0 -0
  249. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/stable/_oj-button-ignore.scoped.cssvars.scss +0 -0
  250. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/stable/_oj-button-scoped.cssvars.scss +0 -0
  251. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/stable/_oj-button.cssvars.scss +0 -0
  252. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/button/themes/stable/oj-button.scss +0 -0
  253. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/base/_oj-buttonset.scss +0 -0
  254. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/redwood/_oj-buttonset-scoped.cssvars.scss +0 -0
  255. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/redwood/_oj-buttonset.cssvars.scss +0 -0
  256. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/redwood/_oj-buttonset.scss +0 -0
  257. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/stable/_oj-buttonset-scoped.cssvars.scss +0 -0
  258. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/stable/_oj-buttonset.cssvars.scss +0 -0
  259. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset/themes/stable/_oj-buttonset.scss +0 -0
  260. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset-many/themes/redwood/oj-buttonset-many.scss +0 -0
  261. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset-many/themes/stable/oj-buttonset-many.scss +0 -0
  262. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset-one/themes/redwood/oj-buttonset-one.scss +0 -0
  263. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/buttonset-one/themes/stable/oj-buttonset-one.scss +0 -0
  264. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/chart/themes/base/_oj-chart.scss +0 -0
  265. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/chart/themes/redwood/_oj-chart.cssvars.scss +0 -0
  266. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/chart/themes/redwood/oj-chart.scss +0 -0
  267. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/chart/themes/stable/_oj-chart.cssvars.scss +0 -0
  268. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/chart/themes/stable/oj-chart.scss +0 -0
  269. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/checkboxset/themes/redwood/_oj-checkboxset.cssvars.scss +0 -0
  270. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/checkboxset/themes/redwood/oj-checkboxset.scss +0 -0
  271. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/checkboxset/themes/stable/_oj-checkboxset.cssvars.scss +0 -0
  272. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/checkboxset/themes/stable/oj-checkboxset.scss +0 -0
  273. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collapsible/themes/base/_oj-collapsible.scss +0 -0
  274. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collapsible/themes/redwood/_oj-collapsible.cssvars.scss +0 -0
  275. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collapsible/themes/redwood/oj-collapsible.scss +0 -0
  276. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collapsible/themes/stable/_oj-collapsible.cssvars.scss +0 -0
  277. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collapsible/themes/stable/oj-collapsible.scss +0 -0
  278. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collection/themes/redwood/_oj-collection-ignore.scoped.cssvars.scss +0 -0
  279. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collection/themes/redwood/_oj-collection-scoped.cssvars.scss +0 -0
  280. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collection/themes/redwood/_oj-collection.cssvars.scss +0 -0
  281. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/collection/themes/stable/_oj-collection.cssvars.scss +0 -0
  282. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-palette/themes/base/_oj-color-palette.scss +0 -0
  283. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-palette/themes/redwood/_oj-color-palette.cssvars.scss +0 -0
  284. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-palette/themes/redwood/oj-color-palette.scss +0 -0
  285. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-palette/themes/stable/_oj-color-palette.cssvars.scss +0 -0
  286. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-palette/themes/stable/oj-color-palette.scss +0 -0
  287. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-spectrum/themes/base/_oj-color-spectrum.scss +0 -0
  288. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-spectrum/themes/redwood/_oj-color-spectrum.cssvars.scss +0 -0
  289. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-spectrum/themes/redwood/oj-color-spectrum.scss +0 -0
  290. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-spectrum/themes/stable/_oj-color-spectrum.cssvars.scss +0 -0
  291. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/color-spectrum/themes/stable/oj-color-spectrum.scss +0 -0
  292. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox/themes/base/_oj-combobox.scss +0 -0
  293. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox/themes/redwood/_oj-combobox.cssvars.scss +0 -0
  294. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox/themes/redwood/_oj-combobox.scss +0 -0
  295. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox/themes/stable/_oj-combobox.cssvars.scss +0 -0
  296. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox/themes/stable/_oj-combobox.scss +0 -0
  297. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox-many/themes/redwood/oj-combobox-many.scss +0 -0
  298. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox-many/themes/stable/oj-combobox-many.scss +0 -0
  299. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox-one/themes/redwood/oj-combobox-one.scss +0 -0
  300. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/combobox-one/themes/stable/oj-combobox-one.scss +0 -0
  301. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/conveyor-belt/themes/base/_oj-conveyor-belt.scss +0 -0
  302. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/conveyor-belt/themes/redwood/_oj-conveyor-belt.cssvars.scss +0 -0
  303. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/conveyor-belt/themes/redwood/oj-conveyor-belt.scss +0 -0
  304. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/conveyor-belt/themes/stable/_oj-conveyor-belt.cssvars.scss +0 -0
  305. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/conveyor-belt/themes/stable/oj-conveyor-belt.scss +0 -0
  306. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/redwood/_oj-core-ignore.scoped.cssvars.scss +0 -0
  307. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/redwood/_oj-core-scoped.cssvars.scss +0 -0
  308. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/redwood/_oj-core.cssvars.scss +0 -0
  309. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/stable/_oj-core-ignore.scoped.cssvars.scss +0 -0
  310. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/stable/_oj-core-scoped.cssvars.scss +0 -0
  311. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/core/themes/stable/_oj-core.cssvars.scss +0 -0
  312. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/redwood/_oj-data-grid-scoped.cssvars.scss +0 -0
  313. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/redwood/_oj-data-grid.cssvars.scss +0 -0
  314. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/redwood/oj-data-grid.scss +0 -0
  315. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/stable/_oj-data-grid-scoped.cssvars.scss +0 -0
  316. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/stable/_oj-data-grid.cssvars.scss +0 -0
  317. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/data-grid/themes/stable/oj-data-grid.scss +0 -0
  318. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-picker/themes/redwood/oj-date-picker.scss +0 -0
  319. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-picker/themes/stable/oj-date-picker.scss +0 -0
  320. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/base/_oj-date-time-picker.scss +0 -0
  321. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/redwood/_oj-date-time-picker.cssvars.scss +0 -0
  322. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/redwood/_oj-date-time-picker.servervars.scss +0 -0
  323. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/redwood/oj-date-time-picker.scss +0 -0
  324. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/stable/_oj-date-time-picker.cssvars.scss +0 -0
  325. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/stable/_oj-date-time-picker.servervars.scss +0 -0
  326. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/date-time-picker/themes/stable/oj-date-time-picker.scss +0 -0
  327. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/diagram/themes/base/_oj-diagram.scss +0 -0
  328. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/diagram/themes/redwood/_oj-diagram.cssvars.scss +0 -0
  329. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/diagram/themes/redwood/oj-diagram.scss +0 -0
  330. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/diagram/themes/stable/_oj-diagram.cssvars.scss +0 -0
  331. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/diagram/themes/stable/oj-diagram.scss +0 -0
  332. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/base/_oj-dialog-ignore.scoped.cssvars.scss +0 -0
  333. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/base/_oj-dialog.scss +0 -0
  334. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/redwood/_oj-dialog-ignore.scoped.cssvars.scss +0 -0
  335. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/redwood/_oj-dialog-scoped.cssvars.scss +0 -0
  336. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/redwood/_oj-dialog.cssvars.scss +0 -0
  337. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/redwood/_oj-dialog.servervars.scss +0 -0
  338. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/redwood/oj-dialog.scss +0 -0
  339. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/stable/_oj-dialog-scoped.cssvars.scss +0 -0
  340. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/stable/_oj-dialog.cssvars.scss +0 -0
  341. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/stable/_oj-dialog.servervars.scss +0 -0
  342. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dialog/themes/stable/oj-dialog.scss +0 -0
  343. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/base/_oj-drawer-layout-ignore.scoped.cssvars.scss +0 -0
  344. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/base/_oj-drawer-layout.scss +0 -0
  345. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/redwood/_oj-drawer-layout.cssvars.scss +0 -0
  346. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/redwood/oj-drawer-layout.scss +0 -0
  347. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/stable/_oj-drawer-layout.cssvars.scss +0 -0
  348. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-layout/themes/stable/oj-drawer-layout.scss +0 -0
  349. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/base/_oj-drawer-popup-ignore.scoped.cssvars.scss +0 -0
  350. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/base/_oj-drawer-popup.scss +0 -0
  351. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/redwood/_oj-drawer-popup.cssvars.scss +0 -0
  352. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/redwood/oj-drawer-popup.scss +0 -0
  353. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/stable/_oj-drawer-popup.cssvars.scss +0 -0
  354. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/drawer-popup/themes/stable/oj-drawer-popup.scss +0 -0
  355. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dvt/themes/base/_oj-dvt.scss +0 -0
  356. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dvt/themes/redwood/_oj-dvt.cssvars.scss +0 -0
  357. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dvt/themes/redwood/_oj-dvt.scss +0 -0
  358. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dvt/themes/stable/_oj-dvt.cssvars.scss +0 -0
  359. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/dvt/themes/stable/_oj-dvt.scss +0 -0
  360. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/file-picker/themes/base/_oj-file-picker.scss +0 -0
  361. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/file-picker/themes/redwood/_oj-file-picker.cssvars.scss +0 -0
  362. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/file-picker/themes/redwood/oj-file-picker.scss +0 -0
  363. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/file-picker/themes/stable/_oj-file-picker.cssvars.scss +0 -0
  364. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/file-picker/themes/stable/oj-file-picker.scss +0 -0
  365. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/film-strip/themes/base/_oj-film-strip.scss +0 -0
  366. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/film-strip/themes/redwood/_oj-film-strip.cssvars.scss +0 -0
  367. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/film-strip/themes/redwood/oj-film-strip.scss +0 -0
  368. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/film-strip/themes/stable/_oj-film-strip.cssvars.scss +0 -0
  369. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/film-strip/themes/stable/oj-film-strip.scss +0 -0
  370. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/flex/themes/base/_oj-flex.scss +0 -0
  371. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/flex/themes/redwood/oj-flex.scss +0 -0
  372. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/flex/themes/stable/oj-flex.scss +0 -0
  373. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/base/_oj-form-control.mixins.scss +0 -0
  374. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/base/_oj-form-control.scss +0 -0
  375. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/base/_oj-messaging.scss +0 -0
  376. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/redwood/_oj-form-control.cssvars.scss +0 -0
  377. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/redwood/_oj-form-control.scss +0 -0
  378. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/redwood/_oj-messaging.scss +0 -0
  379. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/redwood/_oj-messaging.servervars.scss +0 -0
  380. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/stable/_oj-form-control.cssvars.scss +0 -0
  381. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/stable/_oj-form-control.scss +0 -0
  382. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/stable/_oj-messaging.scss +0 -0
  383. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-control/themes/stable/_oj-messaging.servervars.scss +0 -0
  384. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/base/_oj-form-layout.scss +0 -0
  385. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/redwood/_oj-form-layout-scoped.cssvars.scss +0 -0
  386. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/redwood/_oj-form-layout.cssvars.scss +0 -0
  387. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/redwood/_oj-form-layout.servervars.scss +0 -0
  388. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/redwood/oj-form-layout.scss +0 -0
  389. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/stable/_oj-form-layout.cssvars.scss +0 -0
  390. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/stable/_oj-form-layout.servervars.scss +0 -0
  391. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/form-layout/themes/stable/oj-form-layout.scss +0 -0
  392. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gantt/themes/base/_oj-gantt.scss +0 -0
  393. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gantt/themes/redwood/_oj-gantt.cssvars.scss +0 -0
  394. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gantt/themes/redwood/oj-gantt.scss +0 -0
  395. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gantt/themes/stable/_oj-gantt.cssvars.scss +0 -0
  396. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gantt/themes/stable/oj-gantt.scss +0 -0
  397. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gauge/themes/base/_oj-gauge.scss +0 -0
  398. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gauge/themes/redwood/_oj-gauge.cssvars.scss +0 -0
  399. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gauge/themes/redwood/oj-gauge.scss +0 -0
  400. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gauge/themes/stable/_oj-gauge.cssvars.scss +0 -0
  401. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/gauge/themes/stable/oj-gauge.scss +0 -0
  402. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/grid/themes/base/_oj-grid.scss +0 -0
  403. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/grid/themes/redwood/oj-grid.scss +0 -0
  404. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/grid/themes/stable/oj-grid.scss +0 -0
  405. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/base/_oj-helpers-ignore.scoped.cssvars.scss +0 -0
  406. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/base/_oj-responsive-helpers.scss +0 -0
  407. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/redwood/_oj-theme.servervars.scss +0 -0
  408. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/redwood/oj-helpers.scss +0 -0
  409. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/redwood/oj-responsive.helpers.scss +0 -0
  410. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/stable/_oj-theme.servervars.scss +0 -0
  411. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/stable/oj-helpers.scss +0 -0
  412. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/helpers/themes/stable/oj-responsive.helpers.scss +0 -0
  413. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/highlight-text/themes/base/_oj-highlight-text.scss +0 -0
  414. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/highlight-text/themes/redwood/oj-highlight-text.scss +0 -0
  415. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/highlight-text/themes/stable/oj-highlight-text.scss +0 -0
  416. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icon-circle/themes/base/_oj-icon-circle.scss +0 -0
  417. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icon-circle/themes/redwood/_oj-icon-circle-ignore.scoped.cssvars.scss +0 -0
  418. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icon-circle/themes/redwood/_oj-icon-circle.cssvars.scss +0 -0
  419. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icon-circle/themes/redwood/oj-icon-circle.scss +0 -0
  420. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/base/_oj-icons.scss +0 -0
  421. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/redwood/_oj-icon-font.scss +0 -0
  422. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/redwood/_oj-icons-ignore.scoped.cssvars.scss +0 -0
  423. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/redwood/_oj-icons.cssvars.scss +0 -0
  424. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/redwood/oj-icons.scss +0 -0
  425. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/stable/_oj-icon-font.scss +0 -0
  426. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/stable/_oj-icons-ignore.scoped.cssvars.scss +0 -0
  427. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/stable/_oj-icons.cssvars.scss +0 -0
  428. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/icons/themes/stable/oj-icons.scss +0 -0
  429. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/indexer/themes/base/_oj-indexer.scss +0 -0
  430. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/indexer/themes/redwood/_oj-indexer.cssvars.scss +0 -0
  431. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/indexer/themes/redwood/oj-indexer.scss +0 -0
  432. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/indexer/themes/stable/_oj-indexer.cssvars.scss +0 -0
  433. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/indexer/themes/stable/oj-indexer.scss +0 -0
  434. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-date/themes/redwood/oj-input-date.scss +0 -0
  435. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-date/themes/stable/oj-input-date.scss +0 -0
  436. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-date-time/themes/redwood/oj-input-date-time.scss +0 -0
  437. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-date-time/themes/stable/oj-input-date-time.scss +0 -0
  438. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-number/themes/base/_oj-input-number.scss +0 -0
  439. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-number/themes/redwood/_oj-input-number.cssvars.scss +0 -0
  440. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-number/themes/redwood/oj-input-number.scss +0 -0
  441. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-number/themes/stable/_oj-input-number.cssvars.scss +0 -0
  442. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-number/themes/stable/oj-input-number.scss +0 -0
  443. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-password/themes/redwood/oj-input-password.scss +0 -0
  444. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-password/themes/stable/oj-input-password.scss +0 -0
  445. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/base/_oj-input-search.scss +0 -0
  446. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/redwood/_oj-input-search-scoped.cssvars.scss +0 -0
  447. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/redwood/_oj-input-search.cssvars.scss +0 -0
  448. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/redwood/_oj-input-search.scss +0 -0
  449. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/stable/_oj-input-search-scoped.cssvars.scss +0 -0
  450. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/stable/_oj-input-search.cssvars.scss +0 -0
  451. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-search/themes/stable/_oj-input-search.scss +0 -0
  452. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-text/themes/base/_oj-input-text.scss +0 -0
  453. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-text/themes/redwood/_oj-input-text.cssvars.scss +0 -0
  454. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-text/themes/redwood/oj-input-text.scss +0 -0
  455. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-text/themes/stable/_oj-input-text.cssvars.scss +0 -0
  456. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-text/themes/stable/oj-input-text.scss +0 -0
  457. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-time/themes/redwood/oj-input-time.scss +0 -0
  458. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/input-time/themes/stable/oj-input-time.scss +0 -0
  459. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/base/_oj-label.scss +0 -0
  460. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/redwood/_oj-label-scoped.cssvars.scss +0 -0
  461. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/redwood/_oj-label.cssvars.scss +0 -0
  462. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/redwood/oj-label.scss +0 -0
  463. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/stable/_oj-label-scoped.cssvars.scss +0 -0
  464. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/stable/_oj-label.cssvars.scss +0 -0
  465. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label/themes/stable/oj-label.scss +0 -0
  466. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label-value/themes/base/_oj-label-value.scss +0 -0
  467. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label-value/themes/redwood/_oj-label-value.scss +0 -0
  468. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/label-value/themes/stable/_oj-label-value.scss +0 -0
  469. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/led-gauge/themes/base/_oj-led-gauge.scss +0 -0
  470. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/led-gauge/themes/redwood/_oj-led-gauge.cssvars.scss +0 -0
  471. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/led-gauge/themes/redwood/oj-led-gauge.scss +0 -0
  472. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/led-gauge/themes/stable/_oj-led-gauge.cssvars.scss +0 -0
  473. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/led-gauge/themes/stable/oj-led-gauge.scss +0 -0
  474. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/legend/themes/base/_oj-legend.scss +0 -0
  475. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/legend/themes/redwood/_oj-legend.cssvars.scss +0 -0
  476. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/legend/themes/redwood/oj-legend.scss +0 -0
  477. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/legend/themes/stable/_oj-legend.cssvars.scss +0 -0
  478. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/legend/themes/stable/oj-legend.scss +0 -0
  479. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-box/themes/base/_oj-list-box.scss +0 -0
  480. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-box/themes/redwood/_oj-list-box.cssvars.scss +0 -0
  481. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-box/themes/redwood/_oj-list-box.scss +0 -0
  482. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-box/themes/stable/_oj-list-box.cssvars.scss +0 -0
  483. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-box/themes/stable/_oj-list-box.scss +0 -0
  484. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/base/_oj-list-item-layout.scoped.scss +0 -0
  485. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/base/_oj-list-item-layout.scss +0 -0
  486. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/redwood/_oj-list-item-layout.cssvars.scss +0 -0
  487. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/redwood/oj-list-item-layout.scss +0 -0
  488. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/stable/_oj-list-item-layout.cssvars.scss +0 -0
  489. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-item-layout/themes/stable/oj-list-item-layout.scss +0 -0
  490. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/base/_oj-list-view.scoped.scss +0 -0
  491. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/base/_oj-list-view.scss +0 -0
  492. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/redwood/_oj-list-view-ignore.scoped.cssvars.scss +0 -0
  493. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/redwood/_oj-list-view.cssvars.scss +0 -0
  494. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/redwood/oj-list-view.scss +0 -0
  495. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/stable/_oj-list-view.cssvars.scss +0 -0
  496. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/list-view/themes/stable/oj-list-view.scss +0 -0
  497. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/base/_oj-masonry-layout.scss +0 -0
  498. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/redwood/_oj-masonry-layout.cssvars.scss +0 -0
  499. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/redwood/_oj-masonry-layout.servervars.scss +0 -0
  500. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/redwood/oj-masonry-layout.scss +0 -0
  501. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/stable/_oj-masonry-layout.cssvars.scss +0 -0
  502. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/stable/_oj-masonry-layout.servervars.scss +0 -0
  503. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/masonry-layout/themes/stable/oj-masonry-layout.scss +0 -0
  504. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu/themes/base/_oj-menu.scss +0 -0
  505. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu/themes/redwood/_oj-menu.cssvars.scss +0 -0
  506. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu/themes/redwood/oj-menu.scss +0 -0
  507. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu/themes/stable/_oj-menu.cssvars.scss +0 -0
  508. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu/themes/stable/oj-menu.scss +0 -0
  509. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/base/_oj-menu-button.scss +0 -0
  510. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/redwood/_oj-menu-button.cssvars.scss +0 -0
  511. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/redwood/_oj-menu-button.servervars.scss +0 -0
  512. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/redwood/oj-menu-button.scss +0 -0
  513. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/stable/_oj-menu-button.cssvars.scss +0 -0
  514. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/stable/_oj-menu-button.servervars.scss +0 -0
  515. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-button/themes/stable/oj-menu-button.scss +0 -0
  516. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-select-many/themes/base/_oj-menu-select-many.scss +0 -0
  517. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-select-many/themes/redwood/_oj-menu-select-many.cssvars.scss +0 -0
  518. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-select-many/themes/redwood/oj-menu-select-many.scss +0 -0
  519. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-select-many/themes/stable/_oj-menu-select-many.cssvars.scss +0 -0
  520. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/menu-select-many/themes/stable/oj-menu-select-many.scss +0 -0
  521. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/base/_oj-message.scss +0 -0
  522. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/redwood/_oj-message-ignore.scoped.cssvars.scss +0 -0
  523. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/redwood/_oj-message.cssvars.scss +0 -0
  524. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/redwood/_oj-message.servervars.scss +0 -0
  525. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/redwood/oj-message.scss +0 -0
  526. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/stable/_oj-message-ignore.scoped.cssvars.scss +0 -0
  527. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/stable/_oj-message.cssvars.scss +0 -0
  528. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/stable/_oj-message.servervars.scss +0 -0
  529. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message/themes/stable/oj-message.scss +0 -0
  530. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/base/_oj-message-banner.scss +0 -0
  531. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/redwood/_oj-message-banner-scoped.cssvars.scss +0 -0
  532. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/redwood/_oj-message-banner.cssvars.scss +0 -0
  533. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/redwood/_oj-message-banner.scss +0 -0
  534. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/stable/_oj-message-banner-scoped.cssvars.scss +0 -0
  535. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/stable/_oj-message-banner.cssvars.scss +0 -0
  536. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/message-banner/themes/stable/_oj-message-banner.scss +0 -0
  537. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/base/_oj-messages.scss +0 -0
  538. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/redwood/_oj-messages.cssvars.scss +0 -0
  539. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/redwood/_oj-messages.servervars.scss +0 -0
  540. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/redwood/oj-messages.scss +0 -0
  541. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/stable/_oj-messages.cssvars.scss +0 -0
  542. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/stable/_oj-messages.servervars.scss +0 -0
  543. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/messages/themes/stable/oj-messages.scss +0 -0
  544. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/module/themes/base/_oj-module.scss +0 -0
  545. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/module/themes/redwood/oj-module.scss +0 -0
  546. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/module/themes/stable/oj-module.scss +0 -0
  547. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/n-box/themes/base/_oj-n-box.scss +0 -0
  548. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/n-box/themes/redwood/_oj-n-box.cssvars.scss +0 -0
  549. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/n-box/themes/redwood/oj-n-box.scss +0 -0
  550. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/n-box/themes/stable/_oj-n-box.cssvars.scss +0 -0
  551. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/n-box/themes/stable/oj-n-box.scss +0 -0
  552. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/base/_oj-navigation-list.scss +0 -0
  553. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/redwood/_oj-navigation-list-scoped.cssvars.scss +0 -0
  554. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/redwood/_oj-navigation-list.cssvars.scss +0 -0
  555. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/redwood/oj-navigation-list.scss +0 -0
  556. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/stable/_oj-navigation-list-scoped.cssvars.scss +0 -0
  557. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/stable/_oj-navigation-list.cssvars.scss +0 -0
  558. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/navigation-list/themes/stable/oj-navigation-list.scss +0 -0
  559. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/off-canvas/themes/base/_oj-off-canvas.scss +0 -0
  560. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/off-canvas/themes/redwood/_oj-off-canvas.cssvars.scss +0 -0
  561. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/off-canvas/themes/redwood/oj-off-canvas.scss +0 -0
  562. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/off-canvas/themes/stable/_oj-off-canvas.cssvars.scss +0 -0
  563. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/off-canvas/themes/stable/oj-off-canvas.scss +0 -0
  564. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/optgroup/themes/base/_oj-optgroup.scss +0 -0
  565. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/optgroup/themes/redwood/oj-optgroup.scss +0 -0
  566. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/optgroup/themes/stable/oj-optgroup.scss +0 -0
  567. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/option/themes/base/_oj-option.scss +0 -0
  568. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/option/themes/redwood/oj-option.scss +0 -0
  569. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/option/themes/stable/oj-option.scss +0 -0
  570. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/paging-control/themes/base/_oj-paging-control.scss +0 -0
  571. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/paging-control/themes/redwood/_oj-paging-control.cssvars.scss +0 -0
  572. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/paging-control/themes/redwood/oj-paging-control.scss +0 -0
  573. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/paging-control/themes/stable/_oj-paging-control.cssvars.scss +0 -0
  574. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/paging-control/themes/stable/oj-paging-control.scss +0 -0
  575. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/palette/themes/redwood/_oj-palette-scoped.cssvars.scss +0 -0
  576. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/palette/themes/redwood/_oj-palette.cssvars.scss +0 -0
  577. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/palette/themes/stable/_oj-palette.cssvars.scss +0 -0
  578. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/base/_oj-panel-ignore.scoped.cssvars.scss +0 -0
  579. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/base/_oj-panel.scss +0 -0
  580. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/redwood/_oj-panel-scoped.cssvars.scss +0 -0
  581. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/redwood/_oj-panel.cssvars.scss +0 -0
  582. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/redwood/oj-panel.scss +0 -0
  583. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/stable/_oj-panel-scoped.cssvars.scss +0 -0
  584. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/stable/_oj-panel.cssvars.scss +0 -0
  585. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/panel/themes/stable/oj-panel.scss +0 -0
  586. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/picto-chart/themes/base/_oj-picto-chart.scss +0 -0
  587. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/picto-chart/themes/redwood/_oj-picto-chart.cssvars.scss +0 -0
  588. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/picto-chart/themes/redwood/oj-picto-chart.scss +0 -0
  589. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/picto-chart/themes/stable/_oj-picto-chart.cssvars.scss +0 -0
  590. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/picto-chart/themes/stable/oj-picto-chart.scss +0 -0
  591. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/base/_oj-layer.scss +0 -0
  592. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/base/_oj-popup-ignore.scoped.cssvars.scss +0 -0
  593. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/base/_oj-popup.scss +0 -0
  594. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/redwood/_oj-layer.scss +0 -0
  595. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/redwood/_oj-popup-ignore.scoped.cssvars.scss +0 -0
  596. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/redwood/_oj-popup.cssvars.scss +0 -0
  597. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/redwood/oj-popup.scss +0 -0
  598. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/stable/_oj-layer.scss +0 -0
  599. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/stable/_oj-popup.cssvars.scss +0 -0
  600. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/popup/themes/stable/oj-popup.scss +0 -0
  601. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/base/_oj-progress-bar.scss +0 -0
  602. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/redwood/_oj-progress-bar-scoped.cssvars.scss +0 -0
  603. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/redwood/_oj-progress-bar.cssvars.scss +0 -0
  604. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/redwood/oj-progress-bar.scss +0 -0
  605. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/stable/_oj-progress-bar-scoped.cssvars.scss +0 -0
  606. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/stable/_oj-progress-bar.cssvars.scss +0 -0
  607. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-bar/themes/stable/oj-progress-bar.scss +0 -0
  608. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/base/_oj-progress-circle.scss +0 -0
  609. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/redwood/_oj-progress-circle-scoped.cssvars.scss +0 -0
  610. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/redwood/_oj-progress-circle.cssvars.scss +0 -0
  611. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/redwood/oj-progress-circle.scss +0 -0
  612. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/stable/_oj-progress-circle-scoped.cssvars.scss +0 -0
  613. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/stable/_oj-progress-circle.cssvars.scss +0 -0
  614. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/progress-circle/themes/stable/oj-progress-circle.scss +0 -0
  615. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/base/_oj-radiocheckbox.scss +0 -0
  616. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox-scoped.cssvars.scss +0 -0
  617. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox.cssvars.scss +0 -0
  618. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/redwood/_oj-radiocheckbox.servervars.scss +0 -0
  619. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/stable/_oj-radiocheckbox-scoped.cssvars.scss +0 -0
  620. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/stable/_oj-radiocheckbox.cssvars.scss +0 -0
  621. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radio-checkbox/themes/stable/_oj-radiocheckbox.servervars.scss +0 -0
  622. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radioset/themes/redwood/_oj-radioset.cssvars.scss +0 -0
  623. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radioset/themes/redwood/oj-radioset.scss +0 -0
  624. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radioset/themes/stable/_oj-radioset.cssvars.scss +0 -0
  625. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/radioset/themes/stable/oj-radioset.scss +0 -0
  626. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rangeslider/themes/redwood/_oj-rangeslider.cssvars.scss +0 -0
  627. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rangeslider/themes/redwood/oj-rangeslider.scss +0 -0
  628. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rangeslider/themes/stable/_oj-rangeslider.cssvars.scss +0 -0
  629. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rangeslider/themes/stable/oj-rangeslider.scss +0 -0
  630. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rating-gauge/themes/base/_oj-rating-gauge.scss +0 -0
  631. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rating-gauge/themes/redwood/_oj-rating-gauge.cssvars.scss +0 -0
  632. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rating-gauge/themes/redwood/oj-rating-gauge.scss +0 -0
  633. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rating-gauge/themes/stable/_oj-rating-gauge.cssvars.scss +0 -0
  634. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/rating-gauge/themes/stable/oj-rating-gauge.scss +0 -0
  635. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/base/_oj-refresher.scss +0 -0
  636. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/redwood/_oj-refresher.cssvars.scss +0 -0
  637. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/redwood/_oj-refresher.servervars.scss +0 -0
  638. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/redwood/oj-refresher.scss +0 -0
  639. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/stable/_oj-refresher.cssvars.scss +0 -0
  640. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/stable/_oj-refresher.servervars.scss +0 -0
  641. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/refresher/themes/stable/oj-refresher.scss +0 -0
  642. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/resizable/themes/base/_oj-resizable.scss +0 -0
  643. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/resizable/themes/redwood/_oj-resizable.scss +0 -0
  644. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/resizable/themes/stable/_oj-resizable.scss +0 -0
  645. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/row-expander/themes/base/_oj-row-expander.scss +0 -0
  646. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/row-expander/themes/redwood/_oj-row-expander.cssvars.scss +0 -0
  647. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/row-expander/themes/redwood/oj-row-expander.scss +0 -0
  648. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/row-expander/themes/stable/_oj-row-expander.cssvars.scss +0 -0
  649. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/row-expander/themes/stable/oj-row-expander.scss +0 -0
  650. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/base/_oj-scrollbar.scss +0 -0
  651. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar-scoped.cssvars.scss +0 -0
  652. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar.cssvars.scss +0 -0
  653. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/redwood/_oj-scrollbar.scss +0 -0
  654. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/stable/_oj-scrollbar-scoped.cssvars.scss +0 -0
  655. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/stable/_oj-scrollbar.cssvars.scss +0 -0
  656. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/scrollbar/themes/stable/_oj-scrollbar.scss +0 -0
  657. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select/themes/base/_oj-select.scss +0 -0
  658. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select/themes/redwood/_oj-select.cssvars.scss +0 -0
  659. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select/themes/redwood/_oj-select.scss +0 -0
  660. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select/themes/stable/_oj-select.cssvars.scss +0 -0
  661. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select/themes/stable/_oj-select.scss +0 -0
  662. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-many/themes/redwood/oj-select-many.scss +0 -0
  663. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-many/themes/stable/oj-select-many.scss +0 -0
  664. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-one/themes/redwood/oj-select-one.scss +0 -0
  665. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-original/themes/base/_oj-select-original.scss +0 -0
  666. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-original/themes/redwood/_oj-select-original.cssvars.scss +0 -0
  667. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-original/themes/redwood/_oj-select-original.scss +0 -0
  668. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-original/themes/stable/_oj-select-original.cssvars.scss +0 -0
  669. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-original/themes/stable/_oj-select-original.scss +0 -0
  670. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-single/themes/base/_oj-select-single.scss +0 -0
  671. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-single/themes/redwood/oj-select-single.scss +0 -0
  672. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/select-single/themes/stable/oj-select-single.scss +0 -0
  673. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/selector/themes/base/_oj-selector.scss +0 -0
  674. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/selector/themes/redwood/_oj-selector.cssvars.scss +0 -0
  675. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/selector/themes/redwood/oj-selector.scss +0 -0
  676. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/selector/themes/stable/_oj-selector.cssvars.scss +0 -0
  677. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/selector/themes/stable/oj-selector.scss +0 -0
  678. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/slider/themes/base/_oj-slider.scss +0 -0
  679. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/slider/themes/redwood/_oj-slider.cssvars.scss +0 -0
  680. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/slider/themes/redwood/oj-slider.scss +0 -0
  681. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/slider/themes/stable/_oj-slider.cssvars.scss +0 -0
  682. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/slider/themes/stable/oj-slider.scss +0 -0
  683. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/spark-chart/themes/base/_oj-spark-chart.scss +0 -0
  684. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/spark-chart/themes/redwood/_oj-spark-chart.cssvars.scss +0 -0
  685. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/spark-chart/themes/redwood/oj-spark-chart.scss +0 -0
  686. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/spark-chart/themes/stable/_oj-spark-chart.cssvars.scss +0 -0
  687. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/spark-chart/themes/stable/oj-spark-chart.scss +0 -0
  688. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/status-meter-gauge/themes/base/_oj-status-meter-gauge.scss +0 -0
  689. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/status-meter-gauge/themes/redwood/_oj-status-meter-gauge.cssvars.scss +0 -0
  690. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/status-meter-gauge/themes/redwood/oj-status-meter-gauge.scss +0 -0
  691. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/status-meter-gauge/themes/stable/_oj-status-meter-gauge.cssvars.scss +0 -0
  692. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/status-meter-gauge/themes/stable/oj-status-meter-gauge.scss +0 -0
  693. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/base/_oj-stream-list.scss +0 -0
  694. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/redwood/_oj-stream-list.cssvars.scss +0 -0
  695. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/redwood/_oj-stream-list.servervars.scss +0 -0
  696. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/redwood/oj-stream-list.scss +0 -0
  697. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/stable/_oj-stream-list.cssvars.scss +0 -0
  698. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/stable/_oj-stream-list.servervars.scss +0 -0
  699. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/stream-list/themes/stable/oj-stream-list.scss +0 -0
  700. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/sunburst/themes/base/_oj-sunburst.scss +0 -0
  701. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/sunburst/themes/redwood/_oj-sunburst.cssvars.scss +0 -0
  702. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/sunburst/themes/redwood/oj-sunburst.scss +0 -0
  703. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/sunburst/themes/stable/_oj-sunburst.cssvars.scss +0 -0
  704. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/sunburst/themes/stable/oj-sunburst.scss +0 -0
  705. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/swipe-actions/themes/base/_oj-swipe-actions.scss +0 -0
  706. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/swipe-actions/themes/redwood/_oj-swipe-actions.cssvars.scss +0 -0
  707. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/swipe-actions/themes/redwood/oj-swipe-actions.scss +0 -0
  708. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/swipe-actions/themes/stable/_oj-swipe-actions.cssvars.scss +0 -0
  709. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/swipe-actions/themes/stable/oj-swipe-actions.scss +0 -0
  710. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switch/themes/base/_oj-switch.scss +0 -0
  711. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switch/themes/redwood/_oj-switch.cssvars.scss +0 -0
  712. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switch/themes/redwood/oj-switch.scss +0 -0
  713. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switch/themes/stable/_oj-switch.cssvars.scss +0 -0
  714. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switch/themes/stable/oj-switch.scss +0 -0
  715. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switcher/themes/base/_oj-switcher.scss +0 -0
  716. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switcher/themes/redwood/oj-switcher.scss +0 -0
  717. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/switcher/themes/stable/oj-switcher.scss +0 -0
  718. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/base/_oj-tab-bar.scss +0 -0
  719. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/redwood/_oj-tab-bar-scoped.cssvars.scss +0 -0
  720. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/redwood/_oj-tab-bar.cssvars.scss +0 -0
  721. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/redwood/oj-tab-bar.scss +0 -0
  722. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/stable/_oj-tab-bar-scoped.cssvars.scss +0 -0
  723. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/stable/_oj-tab-bar.cssvars.scss +0 -0
  724. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tab-bar/themes/stable/oj-tab-bar.scss +0 -0
  725. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/redwood/_oj-table-scoped.cssvars.scss +0 -0
  726. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/redwood/_oj-table.cssvars.scss +0 -0
  727. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/redwood/oj-table.scss +0 -0
  728. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/stable/_oj-table-scoped.cssvars.scss +0 -0
  729. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/stable/_oj-table.cssvars.scss +0 -0
  730. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/table/themes/stable/oj-table.scss +0 -0
  731. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tag-cloud/themes/base/_oj-tag-cloud.scss +0 -0
  732. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tag-cloud/themes/redwood/_oj-tag-cloud.cssvars.scss +0 -0
  733. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tag-cloud/themes/redwood/oj-tag-cloud.scss +0 -0
  734. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tag-cloud/themes/stable/_oj-tag-cloud.cssvars.scss +0 -0
  735. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tag-cloud/themes/stable/oj-tag-cloud.scss +0 -0
  736. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/base/_oj-notags-ignore.scoped.cssvars.scss +0 -0
  737. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/base/_oj-notags.scss +0 -0
  738. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/base/_oj-tags-ignore.scoped.cssvars.scss +0 -0
  739. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/base/_oj-tags.scss +0 -0
  740. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/redwood/_oj-tags-scoped.cssvars.scss +0 -0
  741. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/redwood/_oj-tags.cssvars.scss +0 -0
  742. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/redwood/oj-notags.scss +0 -0
  743. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/redwood/oj-tags.scss +0 -0
  744. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/stable/_oj-tags-scoped.cssvars.scss +0 -0
  745. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/stable/_oj-tags.cssvars.scss +0 -0
  746. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/stable/oj-notags.scss +0 -0
  747. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tags/themes/stable/oj-tags.scss +0 -0
  748. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-area/themes/base/_oj-text-area.scss +0 -0
  749. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-area/themes/redwood/_oj-text-area.cssvars.scss +0 -0
  750. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-area/themes/redwood/oj-text-area.scss +0 -0
  751. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-area/themes/stable/_oj-text-area.cssvars.scss +0 -0
  752. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-area/themes/stable/oj-text-area.scss +0 -0
  753. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/base/_oj-text-field.cssvars.scss +0 -0
  754. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/redwood/_oj-text-field-ignore.scoped.cssvars.scss +0 -0
  755. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/redwood/_oj-text-field-scoped.cssvars.scss +0 -0
  756. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/redwood/_oj-text-field.cssvars.scss +0 -0
  757. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/stable/_oj-text-field-scoped.cssvars.scss +0 -0
  758. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/text-field/themes/stable/_oj-text-field.cssvars.scss +0 -0
  759. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/thematic-map/themes/base/_oj-thematic-map.scss +0 -0
  760. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/thematic-map/themes/redwood/_oj-thematic-map.cssvars.scss +0 -0
  761. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/thematic-map/themes/redwood/oj-thematic-map.scss +0 -0
  762. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/thematic-map/themes/stable/_oj-thematic-map.cssvars.scss +0 -0
  763. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/thematic-map/themes/stable/oj-thematic-map.scss +0 -0
  764. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/time-axis/themes/base/_oj-time-axis.scss +0 -0
  765. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/time-axis/themes/redwood/_oj-time-axis.cssvars.scss +0 -0
  766. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/time-axis/themes/redwood/oj-time-axis.scss +0 -0
  767. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/time-axis/themes/stable/_oj-time-axis.cssvars.scss +0 -0
  768. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/time-axis/themes/stable/oj-time-axis.scss +0 -0
  769. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/base/_oj-timeline.scss +0 -0
  770. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/redwood/_oj-timeline-ignore.scoped.cssvars.scss +0 -0
  771. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/redwood/_oj-timeline.cssvars.scss +0 -0
  772. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/redwood/oj-timeline.scss +0 -0
  773. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/stable/_oj-timeline-ignore.scoped.cssvars.scss +0 -0
  774. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/stable/_oj-timeline.cssvars.scss +0 -0
  775. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/timeline/themes/stable/oj-timeline.scss +0 -0
  776. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/toolbar/themes/base/_oj-toolbar.scss +0 -0
  777. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/toolbar/themes/redwood/_oj-toolbar.cssvars.scss +0 -0
  778. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/toolbar/themes/redwood/oj-toolbar.scss +0 -0
  779. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/toolbar/themes/stable/_oj-toolbar.cssvars.scss +0 -0
  780. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/toolbar/themes/stable/oj-toolbar.scss +0 -0
  781. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tooltip/themes/base/_oj-tooltip.scss +0 -0
  782. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tooltip/themes/redwood/_oj-tooltip.cssvars.scss +0 -0
  783. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tooltip/themes/redwood/oj-tooltip.scss +0 -0
  784. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tooltip/themes/stable/_oj-tooltip.cssvars.scss +0 -0
  785. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tooltip/themes/stable/oj-tooltip.scss +0 -0
  786. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/base/_oj-train.scss +0 -0
  787. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/redwood/_oj-train-scoped.cssvars.scss +0 -0
  788. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/redwood/_oj-train.cssvars.scss +0 -0
  789. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/redwood/oj-train.scss +0 -0
  790. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/stable/_oj-train.cssvars.scss +0 -0
  791. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/train/themes/stable/oj-train.scss +0 -0
  792. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tree-view/themes/base/_oj-tree-view.scss +0 -0
  793. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tree-view/themes/redwood/_oj-tree-view.cssvars.scss +0 -0
  794. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tree-view/themes/redwood/oj-tree-view.scss +0 -0
  795. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tree-view/themes/stable/_oj-tree-view.cssvars.scss +0 -0
  796. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/tree-view/themes/stable/oj-tree-view.scss +0 -0
  797. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/treemap/themes/base/_oj-treemap.scss +0 -0
  798. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/treemap/themes/redwood/_oj-treemap.cssvars.scss +0 -0
  799. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/treemap/themes/redwood/oj-treemap.scss +0 -0
  800. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/treemap/themes/stable/_oj-treemap.cssvars.scss +0 -0
  801. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/treemap/themes/stable/oj-treemap.scss +0 -0
  802. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/base/_oj-typography.scss +0 -0
  803. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/redwood/_oj-typography-ignore.scoped.cssvars.scss +0 -0
  804. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/redwood/_oj-typography-scoped.cssvars.scss +0 -0
  805. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/redwood/_oj-typography.cssvars.scss +0 -0
  806. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/redwood/oj-typography.scss +0 -0
  807. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/stable/_oj-typography-scoped.cssvars.scss +0 -0
  808. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/stable/_oj-typography.cssvars.scss +0 -0
  809. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/typography/themes/stable/oj-typography.scss +0 -0
  810. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/utilities/_oj.utilities.bidi.scss +0 -0
  811. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/utilities/_oj.utilities.icons.scss +0 -0
  812. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/utilities/_oj.utilities.json.scss +0 -0
  813. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/utilities/_oj.utilities.masonrylayout.scss +0 -0
  814. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/utilities/_oj.utilities.modules.scss +0 -0
  815. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/validation-group/themes/base/_oj-validation-group.scss +0 -0
  816. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/validation-group/themes/redwood/oj-validation-group.scss +0 -0
  817. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/validation-group/themes/stable/oj-validation-group.scss +0 -0
  818. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/waterfall-layout/themes/base/_oj-waterfall-layout.scss +0 -0
  819. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/waterfall-layout/themes/redwood/_oj-waterfall-layout.cssvars.scss +0 -0
  820. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/waterfall-layout/themes/redwood/oj-waterfall-layout.scss +0 -0
  821. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/waterfall-layout/themes/stable/_oj-waterfall-layout.cssvars.scss +0 -0
  822. /package/dist/pcss/oj/{15.0.7 → 15.1.1}/oj/waterfall-layout/themes/stable/oj-waterfall-layout.scss +0 -0
@@ -274,6 +274,10 @@ var __oj_data_grid_metadata =
274
274
  ],
275
275
  "value": "disable"
276
276
  },
277
+ "hidable": {
278
+ "type": "string",
279
+ "value": "disable"
280
+ },
277
281
  "label": {
278
282
  "type": "object",
279
283
  "properties": {
@@ -492,6 +496,10 @@ var __oj_data_grid_metadata =
492
496
  }
493
497
  }
494
498
  },
499
+ "hiddenColumns": {
500
+ "type": "object",
501
+ "writeback": true
502
+ },
495
503
  "scrollPolicy": {
496
504
  "type": "string",
497
505
  "enumValues": [
@@ -758,6 +766,9 @@ var __oj_data_grid_metadata =
758
766
  "labelFreezeRow": {
759
767
  "type": "string"
760
768
  },
769
+ "labelHideColumn": {
770
+ "type": "string"
771
+ },
761
772
  "labelPaste": {
762
773
  "type": "string"
763
774
  },
@@ -824,6 +835,9 @@ var __oj_data_grid_metadata =
824
835
  "labelUnfreezeRow": {
825
836
  "type": "string"
826
837
  },
838
+ "labelUnhideColumn": {
839
+ "type": "string"
840
+ },
827
841
  "msgFetchingData": {
828
842
  "type": "string"
829
843
  },
@@ -1042,6 +1056,8 @@ const DataGridResources = function (
1042
1056
  this.styles.skeletonCell = 'oj-datagrid-skeleton-cell';
1043
1057
  this.styles.skeleton = 'oj-datagrid-skeleton';
1044
1058
  this.styles.skeletonAnimation = 'oj-animation-skeleton';
1059
+ this.styles.databodyHiddenIndicator = 'oj-datagrid-databody-hidden-indicator';
1060
+ this.styles.headerHiddenIndicator = 'oj-datagrid-header-hidden-indicator';
1045
1061
 
1046
1062
  this.commands = {};
1047
1063
  this.commands.sortCol = 'oj-datagrid-sortCol';
@@ -1065,6 +1081,8 @@ const DataGridResources = function (
1065
1081
  this.commands.freezeRow = 'oj-datagrid-freezeRow';
1066
1082
  this.commands.unfreezeCol = 'oj-datagrid-unfreezeCol';
1067
1083
  this.commands.unfreezeRow = 'oj-datagrid-unfreezeRow';
1084
+ this.commands.hideCol = 'oj-datagrid-hideCol';
1085
+ this.commands.unhideCol = 'oj-datagrid-unhideCol';
1068
1086
 
1069
1087
  this.attributes = {};
1070
1088
  this.attributes.busyContext = Context._OJ_CONTEXT_ATTRIBUTE; // 'data-oj-context'
@@ -1080,6 +1098,7 @@ const DataGridResources = function (
1080
1098
  this.attributes.depth = 'data-oj-depth';
1081
1099
  this.attributes.level = 'data-oj-level';
1082
1100
  this.attributes.metadata = 'data-oj-metaData';
1101
+ this.attributes.hiddenIndicatorIndex = 'data-oj-hiddenIndicatorIndex';
1083
1102
  };
1084
1103
 
1085
1104
  oj._registerLegacyNamespaceProp('DataGridResources', DataGridResources);
@@ -2426,6 +2445,29 @@ DvtDataGridOptions.prototype._getFreezeIndex = function (axis) {
2426
2445
  return freezeIndex;
2427
2446
  };
2428
2447
 
2448
+ /**
2449
+ * Is hide enabled
2450
+ * @param {string} axis - axis to check if hide enabled
2451
+ * @return {string} enable, disable
2452
+ */
2453
+ DvtDataGridOptions.prototype.isHideEnabled = function (axis) {
2454
+ let isEnabled = false;
2455
+ let hide = this.extract('header', axis, 'hidable');
2456
+ if (hide === 'enable') {
2457
+ isEnabled = true;
2458
+ }
2459
+ return isEnabled;
2460
+ };
2461
+
2462
+ DvtDataGridOptions.prototype._getHiddenColumnIndices = function (axis) {
2463
+ let hiddenIndices;
2464
+
2465
+ if (axis === 'column') {
2466
+ hiddenIndices = this.getProperty('hiddenColumns');
2467
+ }
2468
+
2469
+ return hiddenIndices;
2470
+ };
2429
2471
  /**
2430
2472
  * Get the inline style property on an object
2431
2473
  * @param {string} axis - axis to get style of
@@ -3189,6 +3231,10 @@ DvtDataGrid.prototype._updateDataGrid = function (option, flags) {
3189
3231
  obj = this.m_options._getFreezeIndex('row');
3190
3232
  this._updateFrozenSection(obj, 'row');
3191
3233
  break;
3234
+ case 'hiddenColumns':
3235
+ obj = this.m_options._getHiddenColumnIndices('column');
3236
+ this._updateHiddenSection(Array.from(obj));
3237
+ break;
3192
3238
  // just refresh
3193
3239
  default:
3194
3240
  return false;
@@ -4119,7 +4165,6 @@ DvtDataGrid.prototype.getDefaultColumnWidth = function () {
4119
4165
  * @param {string|null} key the row or column key
4120
4166
  * @param {string} axis row or column
4121
4167
  * @param {string} dimension width ro height
4122
- * @returns {number}
4123
4168
  */
4124
4169
  DvtDataGrid.prototype._getHeaderDimension = function (elem, key, axis, dimension) {
4125
4170
  var value = this.m_sizingManager.getSize(axis, key);
@@ -7189,11 +7234,13 @@ DvtDataGrid.prototype.handleHeadersFetchSuccess = function (
7189
7234
 
7190
7235
  // remove fetching message
7191
7236
  this.m_fetching[axis] = false;
7237
+ let hiddenColumns = this.m_hiddenColumns;
7192
7238
 
7193
7239
  var root = headerRange.header;
7194
7240
  var endRoot = headerRange.endHeader;
7195
7241
  var start = headerRange.start;
7196
- var count = this.getDataSource().getCount(axis);
7242
+ // subtracting hidden columns length to render only visible columns
7243
+ var count = this.getDataSource().getCount(axis) - hiddenColumns.length;
7197
7244
 
7198
7245
  if (axis === 'column') {
7199
7246
  if (this.m_frozenColIndex === null) {
@@ -7683,7 +7730,8 @@ DvtDataGrid.prototype.buildColumnHeaders = function (
7683
7730
  if (totalColumnWidth !== 0 && (this.m_avgColWidth === 0 || this.m_avgColWidth == null)) {
7684
7731
  // the average column width should only be set once, it will only change when the column width varies between columns, but
7685
7732
  // in such case the new average column width would not be any more precise than previous one.
7686
- this.m_avgColWidth = totalColumnWidth / count;
7733
+ // Also, hidden columns are not included in calculating average column width
7734
+ this.m_avgColWidth = totalColumnWidth / returnObj.visibleHeaderCount;
7687
7735
  }
7688
7736
 
7689
7737
  if (!this.m_colHeaderHeight) {
@@ -7824,7 +7872,7 @@ DvtDataGrid.prototype.buildColumnEndHeaders = function (
7824
7872
  if (totalColumnWidth !== 0 && (this.m_avgColWidth === 0 || this.m_avgColWidth == null)) {
7825
7873
  // the average column width should only be set once, it will only change when the column width varies between columns, but
7826
7874
  // in such case the new average column width would not be any more precise than previous one.
7827
- this.m_avgColWidth = totalColumnWidth / count;
7875
+ this.m_avgColWidth = totalColumnWidth / returnObj.visibleHeaderCount;
7828
7876
  }
7829
7877
 
7830
7878
  if (!this.m_colEndHeaderHeight) {
@@ -8263,6 +8311,7 @@ DvtDataGrid.prototype.buildAxisHeaders = function (
8263
8311
  var top = 0;
8264
8312
  var scroller;
8265
8313
  var index;
8314
+ let hiddenInRangeCount = 0;
8266
8315
 
8267
8316
  if (!returnAsFragment) {
8268
8317
  // if unknown count and there's no more column, mark it so we won't try to fetch again
@@ -8299,6 +8348,10 @@ DvtDataGrid.prototype.buildAxisHeaders = function (
8299
8348
  top = columns ? 0 : atPixel - totalHeaderDimension;
8300
8349
  }
8301
8350
 
8351
+ if (this.isHidden(axis, index)) {
8352
+ hiddenInRangeCount += 1;
8353
+ }
8354
+
8302
8355
  var returnVal = this.buildLevelHeaders(
8303
8356
  fragment,
8304
8357
  index,
@@ -8339,10 +8392,13 @@ DvtDataGrid.prototype.buildAxisHeaders = function (
8339
8392
 
8340
8393
  this.m_subtreeAttachedCallback(scroller);
8341
8394
 
8395
+ let visibleHeaderCount = count - hiddenInRangeCount;
8396
+
8342
8397
  return {
8343
8398
  totalHeaderDimension: totalHeaderDimension,
8344
8399
  totalLevelDimension: totalLevelDimension,
8345
- stopFetch: stopFetch
8400
+ stopFetch: stopFetch,
8401
+ visibleHeaderCount
8346
8402
  };
8347
8403
  };
8348
8404
 
@@ -8454,6 +8510,7 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8454
8510
  var header;
8455
8511
  var i;
8456
8512
  var returnVal;
8513
+ let hidden;
8457
8514
 
8458
8515
  if (axis === 'row') {
8459
8516
  dimensionAxis = 'row';
@@ -8500,6 +8557,7 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8500
8557
  if (this._hasFrozenColumns() && index <= this.m_frozenColIndex && this.m_colHeaderFrozen) {
8501
8558
  groupingRoot = this.m_colHeaderFrozen;
8502
8559
  }
8560
+ hidden = this.isHidden(axis, index);
8503
8561
  } else {
8504
8562
  dimensionAxis = 'column';
8505
8563
  groupingRoot = this.m_colEndHeader;
@@ -8515,6 +8573,7 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8515
8573
  if (this._hasFrozenColumns() && index <= this.m_frozenColIndex && this.m_colEndHeaderFrozen) {
8516
8574
  groupingRoot = this.m_colEndHeaderFrozen;
8517
8575
  }
8576
+ hidden = this.isHidden(axis, index);
8518
8577
  }
8519
8578
 
8520
8579
  // get the extent info
@@ -8593,6 +8652,10 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8593
8652
  this.getElementDir(header, headerDimension) + totalHeaderDimensionValue,
8594
8653
  headerDimension
8595
8654
  );
8655
+ if (header.style.display === 'none' && totalHeaderDimensionValue !== 0) {
8656
+ header.style.display = '';
8657
+ this.deleteAndApplyHiddenIndicators();
8658
+ }
8596
8659
  } else if (patchAfter && index === start - 1) {
8597
8660
  // if the data source says to patch after this header
8598
8661
  // and the index is 1 less than what is currently in the viewport
@@ -8665,6 +8728,10 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8665
8728
  this.getElementDir(header, headerDimension) + totalHeaderDimensionValue,
8666
8729
  headerDimension
8667
8730
  );
8731
+ if (header.style.display === 'none' && totalHeaderDimensionValue !== 0) {
8732
+ header.style.display = '';
8733
+ this.deleteAndApplyHiddenIndicators();
8734
+ }
8668
8735
  this.setElementDir(header, dimensionToAdjustValue, dimensionToAdjust);
8669
8736
  } else {
8670
8737
  // get the information from the headers
@@ -8749,6 +8816,10 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8749
8816
 
8750
8817
  if (level + headerDepth === totalLevels) {
8751
8818
  // set the px width on the header regardless of unit type currently on it
8819
+ if (hidden) {
8820
+ headerDimensionValue = 0;
8821
+ header.style.display = 'none';
8822
+ }
8752
8823
  this.setElementDir(header, headerDimensionValue, headerDimension);
8753
8824
  totalHeaderDimensionValue += headerDimensionValue;
8754
8825
  headerCount += 1;
@@ -8808,6 +8879,10 @@ DvtDataGrid.prototype.buildLevelHeaders = function (
8808
8879
  this.setElementDir(header, dimensionToAdjustValue, dimensionToAdjust);
8809
8880
  }
8810
8881
  this.setElementDir(header, totalHeaderDimensionValue, headerDimension);
8882
+ // if all children headers of a nested header is hidden, hide parent header too
8883
+ if (this.isHeaderHidden(header)) {
8884
+ header.style.display = 'none';
8885
+ }
8811
8886
  }
8812
8887
 
8813
8888
  if (axis === 'columnEnd' && this.m_addBorderBottom) {
@@ -9081,9 +9156,14 @@ DvtDataGrid.prototype._getHeaderContainer = function (
9081
9156
  levelCount
9082
9157
  ) {
9083
9158
  var i;
9159
+ var nonSkeletonHeaders;
9084
9160
  if (headers == null) {
9085
9161
  // eslint-disable-next-line no-param-reassign
9086
- headers = this._getAllNonSkeletonContainerNodes(root.firstChild);
9162
+ nonSkeletonHeaders = Array.from(this._getAllNonSkeletonContainerNodes(root.firstChild));
9163
+ // eslint-disable-next-line no-param-reassign
9164
+ headers = nonSkeletonHeaders.filter(
9165
+ (header) => !header.classList.contains(this.getMappedStyle('headerHiddenIndicator'))
9166
+ );
9087
9167
  // if we are on the scroller children there is no first header so start at the first header in the list
9088
9168
  i = 0;
9089
9169
  } else {
@@ -9118,6 +9198,66 @@ DvtDataGrid.prototype._getHeaderContainer = function (
9118
9198
  return null;
9119
9199
  };
9120
9200
 
9201
+ DvtDataGrid.prototype._getChildElementCountByClassName = function (element, className) {
9202
+ if (element == null) {
9203
+ return 0;
9204
+ }
9205
+
9206
+ let count = 0;
9207
+ if (className) {
9208
+ count += Array.from(element.children).filter((child) =>
9209
+ this.m_utils.containsCSSClassName(child, className)
9210
+ ).length;
9211
+ }
9212
+
9213
+ return count;
9214
+ };
9215
+
9216
+ DvtDataGrid.prototype._getHeaderPreviousSibling = function (element) {
9217
+ if (!element || !element.previousSibling) {
9218
+ return null;
9219
+ }
9220
+
9221
+ const headerStyle = this.getMappedStyle('headercell');
9222
+ const endHeaderStyle = this.getMappedStyle('endheadercell');
9223
+ const groupingContainerStyle = this.getMappedStyle('groupingcontainer');
9224
+
9225
+ const prevSibling = element.previousSibling;
9226
+
9227
+ if (
9228
+ prevSibling.classList.contains(headerStyle) ||
9229
+ prevSibling.classList.contains(endHeaderStyle) ||
9230
+ prevSibling.classList.contains(groupingContainerStyle)
9231
+ ) {
9232
+ return prevSibling;
9233
+ }
9234
+ return this._getHeaderPreviousSibling(prevSibling);
9235
+ };
9236
+
9237
+ DvtDataGrid.prototype._getHeaderLastChild = function (headersContainer) {
9238
+ let lastChild = headersContainer.lastChild;
9239
+ const headerStyle = this.getMappedStyle('headercell');
9240
+ const endHeaderStyle = this.getMappedStyle('endheadercell');
9241
+ const groupingContainerStyle = this.getMappedStyle('groupingcontainer');
9242
+
9243
+ if (!lastChild) {
9244
+ return null;
9245
+ }
9246
+
9247
+ while (
9248
+ lastChild &&
9249
+ !(
9250
+ lastChild.classList.contains(headerStyle) ||
9251
+ lastChild.classList.contains(endHeaderStyle) ||
9252
+ lastChild.classList.contains(groupingContainerStyle)
9253
+ )
9254
+ ) {
9255
+ lastChild = lastChild.previousSibling;
9256
+ }
9257
+
9258
+ return lastChild;
9259
+ };
9260
+
9121
9261
  DvtDataGrid.prototype._getHeaderCellByIndex = function (index, axis, level) {
9122
9262
  let root;
9123
9263
  let totalLevels;
@@ -9212,9 +9352,12 @@ DvtDataGrid.prototype._getHeaderByIndex = function (index, level, root, totalLev
9212
9352
 
9213
9353
  // if there is only one level just get the header by index in the row ehader
9214
9354
  if (totalLevels === 1) {
9215
- var headerContent = this._getAllNonSkeletonContainerNodes(root.firstChild);
9355
+ var headerContent = Array.from(this._getAllNonSkeletonContainerNodes(root.firstChild));
9356
+ let allHeaders = headerContent.filter(
9357
+ (header) => !header.classList.contains(this.getMappedStyle('headerHiddenIndicator'))
9358
+ );
9216
9359
  relativeIndex = index - startIndex;
9217
- return headerContent[relativeIndex];
9360
+ return allHeaders[relativeIndex];
9218
9361
  }
9219
9362
  // otherwise get the column header container
9220
9363
  var headerContainer = this._getHeaderContainer(index, level, 0, null, root, totalLevels);
@@ -9884,7 +10027,7 @@ DvtDataGrid.prototype.handleCellsFetchSuccess = function (cellSet, cellRange, ro
9884
10027
  const lastChild = this.m_databodyFrozenRow.firstChild.lastChild;
9885
10028
  left = this.getElementDir(lastChild, dir) + this.getElementWidth(lastChild);
9886
10029
  }
9887
- if (this.m_frozenRowIndex !== null && this.m_rowHeaderFrozen !== null) {
10030
+ if (this._hasFrozenRows() && this.m_rowHeaderFrozen !== null) {
9888
10031
  this._populateFrozenContainer(
9889
10032
  this.m_databodyFrozenRow.firstChild,
9890
10033
  cellSet,
@@ -10094,6 +10237,12 @@ DvtDataGrid.prototype.handleCellsFetchSuccess = function (cellSet, cellRange, ro
10094
10237
  this._resetHeaderHighLight();
10095
10238
  }
10096
10239
 
10240
+ // for the databody hidden indicator on vertical scroll for newly fetched cells
10241
+ let databodyIndicatorIndex = this.getActiveDatabodyIndicators();
10242
+
10243
+ // applying visual indicator for default hidden columns
10244
+ this.deleteAndApplyHiddenIndicators(databodyIndicatorIndex);
10245
+
10097
10246
  // end fetch
10098
10247
  this._signalTaskEnd();
10099
10248
  // this.dumpRanges();
@@ -10399,6 +10548,8 @@ DvtDataGrid.prototype._addCellsToFragment = function (
10399
10548
  ) {
10400
10549
  var dir = this.getResources().isRTLMode() ? 'right' : 'left';
10401
10550
 
10551
+ let hiddenItemsInRange = 0;
10552
+
10402
10553
  var renderer = this.getRendererOrTemplate('cell');
10403
10554
  var columnBandingInterval = this.m_options.getColumnBandingInterval();
10404
10555
  var rowBandingInterval = this.m_options.getRowBandingInterval();
@@ -10572,6 +10723,12 @@ DvtDataGrid.prototype._addCellsToFragment = function (
10572
10723
  width += this._getCellDimension(cell, columnIndex, columnKey, 'column', 'width');
10573
10724
  }
10574
10725
 
10726
+ if (this.isHidden('column', columnIndex)) {
10727
+ width = 0;
10728
+ cell.style.display = 'none';
10729
+ hiddenItemsInRange += 1;
10730
+ }
10731
+
10575
10732
  // set the px width on the cell regardless of unit type currently on it
10576
10733
  this.setElementWidth(cell, width);
10577
10734
 
@@ -10646,7 +10803,7 @@ DvtDataGrid.prototype._addCellsToFragment = function (
10646
10803
  totalHeight = heights.reduce(function (total, num) {
10647
10804
  return total + num;
10648
10805
  }, 0);
10649
- var avgWidth = totalWidth / columnCount;
10806
+ var avgWidth = totalWidth / (columnCount - hiddenItemsInRange);
10650
10807
  return { avgWidth: avgWidth, totalRowHeight: totalHeight, totalColumnWidth: totalWidth };
10651
10808
  };
10652
10809
 
@@ -12461,7 +12618,10 @@ DvtDataGrid.prototype._removeCellsAlongAxis = function (axis, threshold, isFromE
12461
12618
  axis
12462
12619
  );
12463
12620
  }
12464
- var dimensionValue = this._getCellDimension(null, j, key, axis, dimension);
12621
+
12622
+ var dimensionValue = this.isHidden(axis, j)
12623
+ ? 0
12624
+ : this._getCellDimension(null, j, key, axis, dimension);
12465
12625
  if (
12466
12626
  isFromEnd
12467
12627
  ? axisEndPixel - dimensionValue - totalDimensionChange > threshold
@@ -12478,6 +12638,10 @@ DvtDataGrid.prototype._removeCellsAlongAxis = function (axis, threshold, isFromE
12478
12638
 
12479
12639
  if (axisExtent === 1) {
12480
12640
  this._remove(cell);
12641
+ // remove hidden indicator div belonging to cell (if any) along the axis
12642
+ if (this.isHidden(axis, j)) {
12643
+ this._remove(this.getHiddenIndicatorByIndex(j, this.m_databody.firstChild, false));
12644
+ }
12481
12645
  } else {
12482
12646
  cellContext.extents[axis] -= 1;
12483
12647
  this.setElementDir(cell, this.getElementDir(cell, dimension) - dimensionValue, dimension);
@@ -12530,7 +12694,15 @@ DvtDataGrid.prototype.removeHeadersFromStartOfContainer = function (
12530
12694
  ) {
12531
12695
  var removedHeaders = 0;
12532
12696
  var removedDimensionValue = 0;
12533
- var element = firstChild == null ? headersContainer.firstChild : firstChild.nextSibling;
12697
+ // To make sure we don't get other children divs (like visual indicator)
12698
+ // get elements with the header class name
12699
+ let headerElements = Array.from(headersContainer.children).filter((element) => {
12700
+ return (
12701
+ this.m_utils.containsCSSClassName(element, className) ||
12702
+ this.m_utils.containsCSSClassName(element, this.getMappedStyle('groupingcontainer'))
12703
+ );
12704
+ });
12705
+ var element = firstChild == null ? headerElements[0] : firstChild.nextSibling;
12534
12706
 
12535
12707
  if (element == null) {
12536
12708
  return { extentChange: 0, dimensionChange: 0 };
@@ -12542,12 +12714,25 @@ DvtDataGrid.prototype.removeHeadersFromStartOfContainer = function (
12542
12714
 
12543
12715
  while (startPixel + dimensionValue < scrollPosition - threshold) {
12544
12716
  this._remove(element);
12717
+ if (isHeader) {
12718
+ const context = this.getResources().getMappedAttribute('context');
12719
+ let axis = element[context].axis;
12720
+ let elementIndex = element[context].index;
12721
+ // remove header/endHeader hidden indicator div belonging to element (if any)
12722
+ // along the axis from start on scroll
12723
+ if (this.isHidden(axis, elementIndex)) {
12724
+ this._remove(this.getHiddenIndicatorByIndex(elementIndex, headersContainer, true));
12725
+ }
12726
+ }
12727
+
12728
+ /* eslint-disable no-loop-func */
12729
+ headerElements.shift();
12545
12730
  removedDimensionValue += dimensionValue;
12546
12731
  removedHeaders += isHeader ? 1 : this._getAttribute(element, 'extent', true);
12547
12732
  // eslint-disable-next-line no-param-reassign
12548
12733
  startPixel += dimensionValue;
12549
12734
 
12550
- element = firstChild == null ? headersContainer.firstChild : firstChild.nextSibling;
12735
+ element = firstChild == null ? headerElements[0] : firstChild.nextSibling;
12551
12736
  if (element == null) {
12552
12737
  return { extentChange: removedHeaders, dimensionChange: removedDimensionValue };
12553
12738
  }
@@ -12612,7 +12797,16 @@ DvtDataGrid.prototype.removeHeadersFromEndOfContainer = function (
12612
12797
  ) {
12613
12798
  var removedHeaders = 0;
12614
12799
  var removedHeadersDimension = 0;
12615
- var element = headersContainer.lastChild;
12800
+ // for hidden columns, visual indicator is appended as a child to the header container, so to avoid having them as a last child,
12801
+ // we are getting elements with the header class name
12802
+ let headerElements = Array.from(headersContainer.children).filter((element) => {
12803
+ return (
12804
+ this.m_utils.containsCSSClassName(element, className) ||
12805
+ this.m_utils.containsCSSClassName(element, this.getMappedStyle('groupingcontainer'))
12806
+ );
12807
+ });
12808
+ // get the last child of all header elements.
12809
+ let element = headerElements[headerElements.length - 1];
12616
12810
  var isHeader = this.m_utils.containsCSSClassName(element, className);
12617
12811
  var header = isHeader ? element : element.firstChild;
12618
12812
  var dimensionValue = this.getElementDir(header, dimension);
@@ -12620,13 +12814,23 @@ DvtDataGrid.prototype.removeHeadersFromEndOfContainer = function (
12620
12814
  while (endPixel - dimensionValue > threshold) {
12621
12815
  this._remove(element);
12622
12816
 
12817
+ if (isHeader) {
12818
+ const context = this.getResources().getMappedAttribute('context');
12819
+ let axis = element[context].axis;
12820
+ let elementIndex = element[context].index;
12821
+ if (this.isHidden(axis, elementIndex)) {
12822
+ this._remove(this.getHiddenIndicatorByIndex(elementIndex, headersContainer, true));
12823
+ }
12824
+ }
12825
+ /* eslint-disable no-loop-func */
12826
+ headerElements.pop();
12623
12827
  removedHeadersDimension += dimensionValue;
12624
12828
  removedHeaders += isHeader ? 1 : this._getAttribute(element, 'extent', true);
12625
12829
 
12626
12830
  // eslint-disable-next-line no-param-reassign
12627
12831
  endPixel -= dimensionValue;
12628
12832
 
12629
- element = headersContainer.lastChild;
12833
+ element = headerElements[headerElements.length - 1];
12630
12834
  isHeader = this.m_utils.containsCSSClassName(element, className);
12631
12835
  header = isHeader ? element : element.firstChild;
12632
12836
  dimensionValue = this.getElementDir(header, dimension);
@@ -13122,7 +13326,9 @@ DvtDataGrid.prototype._getCellCapability = function (cell, actualCell) {
13122
13326
  freezeRow: disable,
13123
13327
  freezeCol: disable,
13124
13328
  unfreezeRow: disable,
13125
- unfreezeCol: disable
13329
+ unfreezeCol: disable,
13330
+ hideCol: disable,
13331
+ unhideCol: disable
13126
13332
  };
13127
13333
 
13128
13334
  // if there is an actual cell that means we want the context relative to that cell,
@@ -13173,6 +13379,16 @@ DvtDataGrid.prototype._getCellCapability = function (cell, actualCell) {
13173
13379
  }
13174
13380
  }
13175
13381
 
13382
+ if (this.m_options.isHideEnabled('column')) {
13383
+ let returnObj = this._getCellHidabilityContextMenuCapability(cell);
13384
+ if (returnObj.canHide) {
13385
+ capabilities.hideCol = enable;
13386
+ }
13387
+ if (returnObj.canUnhide) {
13388
+ capabilities.unhideCol = enable;
13389
+ }
13390
+ }
13391
+
13176
13392
  if (this.m_options.isFreezeEnabled('row')) {
13177
13393
  capabilities.freezeRow = enable;
13178
13394
  if (cell[context].indexes.row === this.m_frozenRowIndex) {
@@ -13255,7 +13471,9 @@ DvtDataGrid.prototype._getHeaderCapability = function (header, actualCell) {
13255
13471
  freezeRow: disable,
13256
13472
  freezeCol: disable,
13257
13473
  unfreezeRow: disable,
13258
- unfreezeCol: disable
13474
+ unfreezeCol: disable,
13475
+ hideCol: disable,
13476
+ unhideCol: disable
13259
13477
  };
13260
13478
 
13261
13479
  // if there is an actual cell that means we want the context relative to that cell,
@@ -13334,6 +13552,21 @@ DvtDataGrid.prototype._getHeaderCapability = function (header, actualCell) {
13334
13552
  }
13335
13553
  }
13336
13554
  }
13555
+
13556
+ if (this.m_options.isHideEnabled('column')) {
13557
+ let returnObj = this._getHeaderHidabilityContextMenuCapability(header, actualCell);
13558
+ if (returnObj.canHide) {
13559
+ capabilities.hideCol = enable;
13560
+ }
13561
+ if (returnObj.canUnhide) {
13562
+ capabilities.unhideCol = enable;
13563
+ }
13564
+ }
13565
+
13566
+ if (axis === 'row' && !actualCell) {
13567
+ capabilities.hideCol = disable;
13568
+ capabilities.unhideCol = disable;
13569
+ }
13337
13570
  }
13338
13571
  capabilities.resize =
13339
13572
  capabilities.resizeHeight === enable || capabilities.resizeWidth === enable ? enable : disable;
@@ -13441,6 +13674,10 @@ DvtDataGrid.prototype.handleContextMenuReturn = function (event, id, value) {
13441
13674
  this._handleUnFreeze('column', event);
13442
13675
  } else if (id === this.m_resources.getMappedCommand('unfreezeRow')) {
13443
13676
  this._handleUnFreeze('row', event);
13677
+ } else if (id === this.m_resources.getMappedCommand('hideCol')) {
13678
+ this._handleHideColumn(event, target);
13679
+ } else if (id === this.m_resources.getMappedCommand('unhideCol')) {
13680
+ this._handleUnhideColumn(event, target);
13444
13681
  }
13445
13682
  };
13446
13683
 
@@ -13654,6 +13891,9 @@ DvtDataGrid.prototype.handleHeaderLabelMouseMove = function (event) {
13654
13891
  * @param {Event} event - mousedown event on the headers
13655
13892
  */
13656
13893
  DvtDataGrid.prototype.handleHeaderMouseDown = function (event) {
13894
+ // removing hidden column indicator in databody after hiding a column
13895
+ // on mousedown on headers
13896
+ this.deleteDatabodyHiddenVisualIndicators();
13657
13897
  var processed;
13658
13898
 
13659
13899
  const header = this.findHeader(event.target);
@@ -13930,6 +14170,7 @@ DvtDataGrid.prototype.handleHeaderMouseUp = function (event) {
13930
14170
  };
13931
14171
 
13932
14172
  DvtDataGrid.prototype.handleCornerMouseDown = function (event) {
14173
+ this.deleteDatabodyHiddenVisualIndicators();
13933
14174
  let target = /** @type {Element} */ (event.target);
13934
14175
  let end =
13935
14176
  this.m_utils.containsCSSClassName(target, this.getMappedStyle('rowendheaderlabel')) ||
@@ -14215,6 +14456,9 @@ DvtDataGrid.prototype._isSelectionAcrossAxis = function () {
14215
14456
  * @param {Event} event - mousedown event on the databody
14216
14457
  */
14217
14458
  DvtDataGrid.prototype.handleDatabodyMouseDown = function (event) {
14459
+ // removing hidden column indicator in databody after hiding a column
14460
+ // on mousedown elsewhere in databody
14461
+ this.deleteDatabodyHiddenVisualIndicators();
14218
14462
  var target = /** @type {Element} */ (event.target);
14219
14463
  var cell = this.findCell(target);
14220
14464
  if (cell == null) {
@@ -16062,10 +16306,15 @@ DvtDataGrid.prototype._handleInsertRangeHeaderFetchSuccess = function (
16062
16306
 
16063
16307
  const dir = this.getResources().isRTLMode() ? 'right' : 'left';
16064
16308
  const start = headerRange.start;
16309
+ const count = commonProps.range.count;
16065
16310
  const headerFragment = commonProps.headerFragment;
16066
16311
  const endHeaderFragment = commonProps.endHeaderFragment;
16067
16312
  const insertDimension = axis === 'row' ? 'top' : dir;
16068
16313
 
16314
+ if (axis === 'column') {
16315
+ this.updateHiddenColumnsForInsertion(start, count);
16316
+ }
16317
+
16069
16318
  let insertReference;
16070
16319
  let insertPixel;
16071
16320
  let headerCount;
@@ -16163,7 +16412,9 @@ DvtDataGrid.prototype._handleInsertRangeHeaderFetchSuccess = function (
16163
16412
  levelCount = this.m_columnEndHeaderLevelCount;
16164
16413
  className += ' ' + this.getMappedStyle('colendheadercell');
16165
16414
  }
16415
+
16166
16416
  const endAxis = `${axis}End`;
16417
+
16167
16418
  insertReference = this._getHeaderCellByIndex(start, endAxis, levelCount - 1);
16168
16419
  insertPixel = this.getElementDir(insertReference, insertDimension);
16169
16420
 
@@ -16602,6 +16853,9 @@ DvtDataGrid.prototype._handleInsertRangeCellFetchSuccess = function (
16602
16853
  this.updateColumnBanding();
16603
16854
  }
16604
16855
 
16856
+ // this.setHiddenColumnsDisplayAndWidth();
16857
+ this.deleteAndApplyHiddenIndicators();
16858
+
16605
16859
  if (!dontModifySelection) {
16606
16860
  this.applySelection();
16607
16861
  this._resetHeaderHighLight();
@@ -17498,8 +17752,10 @@ DvtDataGrid.prototype._splitRange = function (cellSet, rowStart, rowEnd, colStar
17498
17752
  // eslint-disable-next-line no-param-reassign
17499
17753
  rowStart = this.m_frozenRowIndex + 1;
17500
17754
  }
17755
+
17501
17756
  let frozenColExists = this.m_frozenColIndex !== null && this.m_frozenColIndex !== -1;
17502
17757
  let frozenRowExists = this.m_frozenRowIndex !== null && this.m_frozenRowIndex !== -1;
17758
+
17503
17759
  if (
17504
17760
  (!frozenColExists && !frozenRowExists) ||
17505
17761
  ((frozenColExists || frozenRowExists) &&
@@ -17757,6 +18013,8 @@ DvtDataGrid.prototype._handleDeleteRangeEvent = function (eventDetail) {
17757
18013
  }
17758
18014
  }
17759
18015
 
18016
+ this.updateHiddenColumnsForDeletion(indexes);
18017
+
17760
18018
  // we want to walk indexes in order to push things up and modify their context objects
17761
18019
  indexes.reverse();
17762
18020
  // identify frozen section indexes and separate it out from regular indexes.
@@ -17944,6 +18202,8 @@ DvtDataGrid.prototype._handleDeleteRangeEvent = function (eventDetail) {
17944
18202
  }
17945
18203
  }
17946
18204
  this.resizeGrid();
18205
+ // this.setHiddenColumnsDisplayAndWidth();
18206
+ this.deleteAndApplyHiddenIndicators();
17947
18207
  this.m_resizeRequired = true;
17948
18208
  let self = this;
17949
18209
  Promise.resolve().then(() => {
@@ -18908,6 +19168,7 @@ DvtDataGrid.prototype._setActive = function (
18908
19168
  if (clearSelection && this._isSelectionEnabled()) {
18909
19169
  this._clearSelection(event);
18910
19170
  }
19171
+ this.deleteDatabodyHiddenVisualIndicators();
18911
19172
  this._unhighlightActiveObject(this.m_prevActive);
18912
19173
  this._highlightActiveObject(this.m_active, this.m_prevActive, null, shouldNotScroll);
18913
19174
  this._manageMoveCursor();
@@ -19460,6 +19721,7 @@ DvtDataGrid.prototype.getHeaderCellIndex = function (header) {
19460
19721
  var start;
19461
19722
  var index;
19462
19723
  let frozenRoot;
19724
+ let headerElement = header;
19463
19725
 
19464
19726
  var axis = this.getHeaderCellAxis(header);
19465
19727
  switch (axis) {
@@ -19509,17 +19771,25 @@ DvtDataGrid.prototype.getHeaderCellIndex = function (header) {
19509
19771
  index = start;
19510
19772
  }
19511
19773
 
19512
- while (header.previousSibling) {
19774
+ // To get header Index, make sure we don't get other children divs (like visual indicator)
19775
+ // check divs if they aren't hiddenIndicators by 'headerHiddenIndicator' class name
19776
+ // eslint-disable-next-line no-param-reassign
19777
+ headerElement = this._getHeaderPreviousSibling(headerElement);
19778
+ while (headerElement) {
19513
19779
  index += 1;
19514
19780
  // eslint-disable-next-line no-param-reassign
19515
- header = header.previousSibling;
19781
+ headerElement = this._getHeaderPreviousSibling(headerElement);
19516
19782
  }
19783
+
19517
19784
  if (
19518
19785
  levelCount === 1 &&
19519
19786
  frozenRoot !== undefined &&
19520
19787
  frozenRoot.querySelector(`#${header.id}`) === null
19521
19788
  ) {
19522
- index += frozenRoot.firstChild.childElementCount;
19789
+ index += this._getChildElementCountByClassName(
19790
+ frozenRoot.firstChild,
19791
+ this.getMappedStyle('headercell')
19792
+ );
19523
19793
  }
19524
19794
 
19525
19795
  return index;
@@ -20605,10 +20875,12 @@ DvtDataGrid.prototype._applyBorderClassesAroundRange = function (
20605
20875
 
20606
20876
  // we use a different border for these
20607
20877
  let isFirstRow = rangeStartRow === 0;
20608
- let isFirstColumn = rangeStartColumn === 0;
20878
+ let isFirstColumn = this.isFirstOrFirstNonHiddenIndex(rangeStartColumn);
20609
20879
  let startBorderRowIndex = isFirstRow ? 0 : rangeStartRow - 1;
20610
20880
  let endBorderRowIndex = rangeEndRow;
20611
- let startBorderColumnIndex = isFirstColumn ? 0 : rangeStartColumn - 1;
20881
+ let startBorderColumnIndex = isFirstColumn
20882
+ ? rangeStartColumn
20883
+ : this.getVisibleCellIndexInDirection('column', rangeStartColumn - 1, { left: true });
20612
20884
  let endBorderColumnIndex = rangeEndColumn;
20613
20885
 
20614
20886
  for (let i = rangeStartRow; i <= rangeEndRow; i++) {
@@ -21060,6 +21332,9 @@ DvtDataGrid.prototype.handleLabelFocusChange = function (keyCode, event, isExten
21060
21332
  this._setActive(newElement, { type: 'label', level: level + 1, axis: axis }, event);
21061
21333
  } else if (level === levelCount - 1) {
21062
21334
  newIndex = axis === 'row' ? this.m_startColHeader : this.m_endColHeader;
21335
+ while (this.isHidden('column', newIndex)) {
21336
+ newIndex = axis === 'row' ? newIndex + 1 : newIndex - 1;
21337
+ }
21063
21338
  newElement = this._getHeaderCellByIndex(
21064
21339
  newIndex,
21065
21340
  'column',
@@ -21085,7 +21360,19 @@ DvtDataGrid.prototype.handleLabelFocusChange = function (keyCode, event, isExten
21085
21360
  }
21086
21361
  }
21087
21362
  if (axis === 'column' || axis === 'columnEnd') {
21088
- newElement = this._getHeaderCellByIndex(start, axis, level);
21363
+ newIndex = start;
21364
+ newElement = this._getHeaderCellByIndex(newIndex, axis, level);
21365
+ // iterate through headers to find the visible element to focus
21366
+
21367
+ while (newElement && this.isHeaderHidden(newElement)) {
21368
+ newIndex =
21369
+ level !== levelCount - 1
21370
+ ? this._getAttribute(newElement.parentNode, 'start', true) +
21371
+ this._getAttribute(newElement.parentNode, 'extent', true)
21372
+ : newIndex + 1;
21373
+ newElement = this._getHeaderCellByIndex(newIndex, axis, level);
21374
+ }
21375
+
21089
21376
  if (this._isSelectionEnabled() && !this.m_discontiguousSelection) {
21090
21377
  // unhighlight and clear selection
21091
21378
  this._clearSelection(event);
@@ -21141,6 +21428,7 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21141
21428
  var levelCount;
21142
21429
  var stopFetch;
21143
21430
  let start;
21431
+ let root;
21144
21432
 
21145
21433
  let emptyElement = this._getEmptyElement();
21146
21434
 
@@ -21201,6 +21489,7 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21201
21489
  }
21202
21490
 
21203
21491
  if (axis === 'column') {
21492
+ root = this.m_colHeader;
21204
21493
  end = this.m_endColHeader;
21205
21494
  levelCount = this.m_columnHeaderLevelCount;
21206
21495
  stopFetch = this.m_stopColumnHeaderFetch;
@@ -21220,6 +21509,7 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21220
21509
  // eslint-disable-next-line no-param-reassign
21221
21510
  keyCode = this.keyCodes.DOWN_KEY;
21222
21511
  }
21512
+ root = this.m_colEndHeader;
21223
21513
  end = this.m_endColEndHeader;
21224
21514
  levelCount = this.m_columnEndHeaderLevelCount;
21225
21515
  stopFetch = this.m_stopColumnEndHeaderFetch;
@@ -21281,7 +21571,7 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21281
21571
  switch (keyCode) {
21282
21572
  case this.keyCodes.LEFT_KEY:
21283
21573
  if (axis === 'column' || axis === 'columnEnd') {
21284
- if (index > 0) {
21574
+ if (index > 0 && !this.isFirstOrFirstNonHiddenIndex(index)) {
21285
21575
  if (jumpToHeaders && this.m_headerLabels[axis][level]) {
21286
21576
  this._setActive(
21287
21577
  this.m_headerLabels[axis][level],
@@ -21310,24 +21600,30 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21310
21600
  );
21311
21601
  break;
21312
21602
  }
21313
- if (levelCount === 1) {
21314
- newIndex = index - 1;
21315
- newElement = elem != null ? elem.previousSibling : null;
21316
- if (elem.previousSibling === null && this._hasFrozenColumns()) {
21317
- newElement = this._getHeaderCellByIndex(index - 1, axis, level);
21318
- }
21319
- newLevel = level;
21320
- } else {
21321
- newElement = this._getHeaderCellByIndex(index - 1, axis, level);
21322
- newIndex =
21323
- newElement != null
21324
- ? this._getAttribute(newElement.parentNode, 'start', true)
21325
- : index - 1;
21326
- newLevel = newElement != null ? this.getHeaderCellLevel(newElement) : level;
21327
- if (newIndex < 0) {
21328
- break;
21329
- }
21603
+
21604
+ newElement = this._getHeaderByIndex(index - 1, level, root, levelCount, start);
21605
+ newIndex =
21606
+ newElement != null && level !== levelCount - 1
21607
+ ? this._getAttribute(newElement.parentNode, 'start', true) -
21608
+ this._getAttribute(newElement.parentNode, 'extent', true)
21609
+ : index - 1;
21610
+ // iterate through headers to find the visible element to focus
21611
+ let i = 1;
21612
+ while (this.isHeaderHidden(newElement)) {
21613
+ newIndex = index - 1 - i;
21614
+ newElement = this._getHeaderByIndex(newIndex, level, root, levelCount, start);
21615
+ i += 1;
21616
+ }
21617
+ newIndex =
21618
+ newElement != null && level !== levelCount - 1
21619
+ ? this._getAttribute(newElement.parentNode, 'start', true)
21620
+ : newIndex;
21621
+
21622
+ newLevel = newElement != null ? this.getHeaderCellLevel(newElement) : level;
21623
+ if (newIndex < 0) {
21624
+ break;
21330
21625
  }
21626
+
21331
21627
  if (isExtend) {
21332
21628
  this.extendSelectionHeader(newElement, event, true);
21333
21629
  } else if (newIndex < start) {
@@ -21529,12 +21825,30 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21529
21825
  } else if (emptyElement) {
21530
21826
  this._setActive(emptyElement, { type: 'empty' }, event, true);
21531
21827
  } else {
21828
+ let lastVisibleIndex;
21829
+ let firstVisibleIndex;
21830
+
21532
21831
  if (axis === 'row') {
21533
- newCellIndex = this.createIndex(index, 0);
21832
+ // gets the first visible cell of the current row
21833
+ for (let i = 0; i <= this.getDataSource().getCount('column') - 1; i++) {
21834
+ if (!this.isHidden('column', i)) {
21835
+ firstVisibleIndex = i;
21836
+ break;
21837
+ }
21838
+ }
21839
+ newCellIndex = this.createIndex(index, firstVisibleIndex);
21534
21840
  } else if (this._isHighWatermarkScrolling()) {
21535
- newCellIndex = this.createIndex(index, this.m_endCol);
21841
+ lastVisibleIndex = this.getVisibleCellIndexInDirection('column', this.m_endCol, {
21842
+ left: true
21843
+ });
21844
+ newCellIndex = this.createIndex(index, lastVisibleIndex);
21536
21845
  } else {
21537
- newCellIndex = this.createIndex(index, this.getDataSource().getCount('column') - 1);
21846
+ lastVisibleIndex = this.getVisibleCellIndexInDirection(
21847
+ 'column',
21848
+ this.getDataSource().getCount('column') - 1,
21849
+ { left: true }
21850
+ );
21851
+ newCellIndex = this.createIndex(index, lastVisibleIndex);
21538
21852
  }
21539
21853
  if (this._isSelectionEnabled()) {
21540
21854
  this.selectAndFocus(newCellIndex, event);
@@ -21586,26 +21900,23 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21586
21900
  event
21587
21901
  );
21588
21902
  } else {
21589
- if (levelCount === 1) {
21590
- newIndex = index + 1;
21591
- newElement = elem != null ? elem.nextSibling : null;
21592
- if (elem.nextSibling === null && this._hasFrozenColumns()) {
21593
- newElement = this._getHeaderCellByIndex(newIndex, axis, level);
21594
- }
21595
- newLevel = level;
21596
- } else {
21597
- if (level === levelCount - 1) {
21598
- newIndex = index + 1;
21599
- } else {
21600
- newIndex =
21601
- elem != null
21602
- ? this._getAttribute(elem.parentNode, 'start', true) +
21603
- this._getAttribute(elem.parentNode, 'extent', true)
21604
- : index + 1;
21605
- }
21903
+ newIndex =
21904
+ elem != null && level !== levelCount - 1
21905
+ ? this._getAttribute(elem.parentNode, 'start', true) +
21906
+ this._getAttribute(elem.parentNode, 'extent', true)
21907
+ : index + 1;
21908
+ newElement = this._getHeaderCellByIndex(newIndex, axis, level);
21909
+
21910
+ // iterate through headers to find the visible element to focus
21911
+ while (newElement && this.isHeaderHidden(newElement)) {
21912
+ newIndex =
21913
+ level !== levelCount - 1
21914
+ ? this._getAttribute(newElement.parentNode, 'start', true) +
21915
+ this._getAttribute(newElement.parentNode, 'extent', true)
21916
+ : newIndex + 1;
21606
21917
  newElement = this._getHeaderCellByIndex(newIndex, axis, level);
21607
- newLevel = newElement != null ? this.getHeaderCellLevel(newElement) : level;
21608
21918
  }
21919
+ newLevel = newElement != null ? this.getHeaderCellLevel(newElement) : level;
21609
21920
 
21610
21921
  if (
21611
21922
  !(newIndex > end && stopFetch) &&
@@ -21934,7 +22245,8 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
21934
22245
  }
21935
22246
  }
21936
22247
  } else {
21937
- // moving down a level in the header
22248
+ // moving down a level in the header, get the visible cell index to focus
22249
+ index = this.getVisibleCellIndexInDirection('column', index, { down: true });
21938
22250
  newElement = this._getHeaderCellByIndex(index, axis, level + depth);
21939
22251
  newIndex = this._getAttribute(newElement.parentNode, 'start', true);
21940
22252
  newLevel = this.getHeaderCellLevel(newElement);
@@ -22056,22 +22368,45 @@ DvtDataGrid.prototype.handleHeaderFocusChange = function (
22056
22368
  break;
22057
22369
  case this.keyCodes.HOME_KEY:
22058
22370
  if (axis === 'column' || axis === 'columnEnd') {
22059
- // selects the first cell of the current row
22060
- elem = this._getHeaderCellByIndex(0, axis, level);
22061
- this._setActive(elem, { type: 'header', index: 0, level: level, axis: axis }, event);
22371
+ let firstVisibleIndex;
22372
+ // gets the first visible cell of the current row
22373
+ for (let i = 0; i <= index; i++) {
22374
+ if (!this.isHidden(axis, i)) {
22375
+ firstVisibleIndex = i;
22376
+ break;
22377
+ }
22378
+ }
22379
+ elem = this._getHeaderCellByIndex(firstVisibleIndex, axis, level);
22380
+ this._setActive(
22381
+ elem,
22382
+ { type: 'header', index: firstVisibleIndex, level: level, axis: axis },
22383
+ event
22384
+ );
22062
22385
  }
22063
22386
  break;
22064
22387
  case this.keyCodes.END_KEY:
22065
22388
  if (axis === 'column' || axis === 'columnEnd') {
22389
+ let lastColIndex;
22066
22390
  // selects the last cell of the current row
22067
22391
  if (!this._isCountUnknown('column') && !this._isHighWatermarkScrolling()) {
22068
- index = Math.max(0, this.getDataSource().getCount('column') - 1);
22392
+ lastColIndex = Math.max(0, this.getDataSource().getCount('column') - 1);
22069
22393
  } else {
22070
- index = Math.max(0, end);
22394
+ lastColIndex = Math.max(0, end);
22395
+ }
22396
+ // Check to get last visible index to focus on END keydown
22397
+ for (let i = lastColIndex; i >= index; i--) {
22398
+ if (!this.isHidden(axis, i)) {
22399
+ lastColIndex = i;
22400
+ break;
22401
+ }
22071
22402
  }
22072
22403
  // selects the first cell of the current row
22073
- elem = this._getHeaderCellByIndex(index, axis, level);
22074
- this._setActive(elem, { type: 'header', index: index, level: level, axis: axis }, event);
22404
+ elem = this._getHeaderCellByIndex(lastColIndex, axis, level);
22405
+ this._setActive(
22406
+ elem,
22407
+ { type: 'header', index: lastColIndex, level: level, axis: axis },
22408
+ event
22409
+ );
22075
22410
  }
22076
22411
  break;
22077
22412
  default:
@@ -22263,12 +22598,23 @@ DvtDataGrid.prototype._isNeighborCellEmpty = function (cell, axis) {
22263
22598
  let columnIndex = this._getIndex(cell, 'column');
22264
22599
 
22265
22600
  if (axis === 'row') {
22266
- let previousCell = this._getCellByIndex({ row: rowIndex, column: columnIndex - 1 });
22267
- let nextCell = this._getCellByIndex({ row: rowIndex, column: columnIndex + 1 });
22601
+ let prevColIndex = this.getVisibleCellIndexInDirection('column', columnIndex - 1, {
22602
+ left: true
22603
+ });
22604
+ let nextColIndex = this.getVisibleCellIndexInDirection('column', columnIndex + 1, {
22605
+ right: true
22606
+ });
22607
+ let previousCell = this._getCellByIndex({ row: rowIndex, column: prevColIndex });
22608
+ let nextCell = this._getCellByIndex({ row: rowIndex, column: nextColIndex });
22268
22609
 
22610
+ // On Ctrl arrow,
22611
+ // to focus neighbor cell of empty cell, we are checking
22612
+ // if current index prev/next cell is empty and current index cell not empty
22613
+ // Also, if there are any empty hidden columns, we are not following Ctrl + Arrow behavior
22269
22614
  if (
22270
22615
  (this._isChildEmpty(previousCell) || this._isChildEmpty(nextCell)) &&
22271
- !this._isChildEmpty(cell)
22616
+ !this._isChildEmpty(cell) &&
22617
+ !this.isHidden('column', columnIndex)
22272
22618
  ) {
22273
22619
  return true;
22274
22620
  }
@@ -22640,8 +22986,45 @@ DvtDataGrid.prototype.handleFocusChange = function (
22640
22986
  } else if (column - 1 < this.m_startCol) {
22641
22987
  this._scrollSkeletonCellsIntoViewport(row, column, 'column', false);
22642
22988
  } else {
22643
- newCellIndex = this.createIndex(this.m_trueIndex.row, column - 1);
22644
- focusFunc(newCellIndex, event);
22989
+ let visibleColumnIndex = column - 1;
22990
+ let rowStartHeader = false;
22991
+ while (this.isHidden('column', visibleColumnIndex)) {
22992
+ if (visibleColumnIndex === 0) {
22993
+ visibleColumnIndex = this.getVisibleCellIndexInDirection(
22994
+ 'column',
22995
+ visibleColumnIndex,
22996
+ {
22997
+ right: true
22998
+ }
22999
+ );
23000
+ rowStartHeader = true;
23001
+ break;
23002
+ }
23003
+ visibleColumnIndex -= 1;
23004
+ }
23005
+ if (rowStartHeader && changeRegions) {
23006
+ header = this._getHeaderByIndex(
23007
+ this.m_trueIndex.row,
23008
+ this.m_rowHeaderLevelCount - 1,
23009
+ this.m_rowHeader,
23010
+ this.m_rowHeaderLevelCount,
23011
+ this.m_startRowHeader
23012
+ );
23013
+ this._setActive(
23014
+ header,
23015
+ {
23016
+ type: 'header',
23017
+ index: this.m_trueIndex.row,
23018
+ level: this.m_rowHeaderLevelCount - 1,
23019
+ axis: 'row'
23020
+ },
23021
+ event,
23022
+ true
23023
+ );
23024
+ } else {
23025
+ newCellIndex = this.createIndex(this.m_trueIndex.row, visibleColumnIndex);
23026
+ focusFunc(newCellIndex, event);
23027
+ }
22645
23028
  }
22646
23029
 
22647
23030
  // announce to screen reader that we have reached first column
@@ -22734,8 +23117,45 @@ DvtDataGrid.prototype.handleFocusChange = function (
22734
23117
  newCellIndex = this.createIndex(row, column + 1);
22735
23118
  this.extendSelection(newCellIndex, event, keyCode);
22736
23119
  } else {
22737
- newCellIndex = this.createIndex(this.m_trueIndex.row, column + columnExtent);
22738
- focusFunc(newCellIndex, event);
23120
+ let visibleColumnIndex = column + columnExtent;
23121
+ let rowEndHeader = false;
23122
+ while (this.isHidden('column', visibleColumnIndex)) {
23123
+ if (this._isLastColumn(visibleColumnIndex)) {
23124
+ visibleColumnIndex = this.getVisibleCellIndexInDirection(
23125
+ 'column',
23126
+ visibleColumnIndex,
23127
+ {
23128
+ left: true
23129
+ }
23130
+ );
23131
+ rowEndHeader = true;
23132
+ break;
23133
+ }
23134
+ visibleColumnIndex += 1;
23135
+ }
23136
+ if (rowEndHeader && this.m_endRowEndHeader !== -1) {
23137
+ header = this._getHeaderByIndex(
23138
+ this.m_trueIndex.row,
23139
+ this.m_rowEndHeaderLevelCount - 1,
23140
+ this.m_rowEndHeader,
23141
+ this.m_rowEndHeaderLevelCount,
23142
+ this.m_startRowEndHeader
23143
+ );
23144
+ this._setActive(
23145
+ header,
23146
+ {
23147
+ type: 'header',
23148
+ index: this.m_trueIndex.row,
23149
+ level: this.m_rowEndHeaderLevelCount - 1,
23150
+ axis: 'rowEnd'
23151
+ },
23152
+ event,
23153
+ true
23154
+ );
23155
+ } else {
23156
+ newCellIndex = this.createIndex(this.m_trueIndex.row, visibleColumnIndex);
23157
+ focusFunc(newCellIndex, event);
23158
+ }
22739
23159
  }
22740
23160
 
22741
23161
  // announce to screen reader that we have reached last column
@@ -22945,47 +23365,69 @@ DvtDataGrid.prototype.handleFocusChange = function (
22945
23365
  focusFunc(currentCellIndex, event);
22946
23366
  }
22947
23367
  break;
22948
- case this.keyCodes.HOME_KEY:
23368
+ case this.keyCodes.HOME_KEY: {
23369
+ let rowIndex = 0;
23370
+ let colIndex = 0;
23371
+ // Check to get first visible index to focus on HOME keydown
23372
+ for (let i = 0; i <= column; i++) {
23373
+ if (!this.isHidden('column', i)) {
23374
+ colIndex = i;
23375
+ break;
23376
+ }
23377
+ }
23378
+
22949
23379
  if (cellExtreme) {
22950
- var firstCellIndex = this.createIndex(0, 0);
23380
+ var firstCellIndex = this.createIndex(rowIndex, colIndex);
22951
23381
  focusFunc(firstCellIndex, event);
22952
23382
  } else {
22953
23383
  if (!this.m_trueIndex.row) {
22954
23384
  this.m_trueIndex = { row: row };
22955
23385
  }
22956
23386
  // selects the first cell of the current row
22957
- newCellIndex = this.createIndex(this.m_trueIndex.row, 0);
23387
+ newCellIndex = this.createIndex(this.m_trueIndex.row, colIndex);
22958
23388
  focusFunc(newCellIndex, event);
22959
23389
  }
22960
23390
  break;
22961
- case this.keyCodes.END_KEY:
23391
+ }
23392
+ case this.keyCodes.END_KEY: {
22962
23393
  if (!this.m_trueIndex.row) {
22963
23394
  this.m_trueIndex = { row: row, column: column };
22964
23395
  }
23396
+ let lastColIndex;
23397
+ if (!this._isCountUnknown('column') && !this._isHighWatermarkScrolling()) {
23398
+ lastColIndex = Math.max(0, this.getDataSource().getCount('column') - 1);
23399
+ } else {
23400
+ lastColIndex = Math.max(0, this.m_endCol);
23401
+ }
23402
+ // Check to get last visible index to focus on END keydown
23403
+ for (let i = lastColIndex; i >= column; i--) {
23404
+ if (!this.isHidden('column', i)) {
23405
+ lastColIndex = i;
23406
+ break;
23407
+ }
23408
+ }
22965
23409
  if (cellExtreme) {
22966
23410
  let lastCellIndex;
22967
23411
  if (!this._isCountUnknown('column') && !this._isHighWatermarkScrolling()) {
22968
23412
  lastCellIndex = this.createIndex(
22969
23413
  Math.max(0, this.getDataSource().getCount('row') - 1),
22970
- Math.max(0, this.getDataSource().getCount('column') - 1)
23414
+ lastColIndex
22971
23415
  );
22972
23416
  } else {
22973
- lastCellIndex = this.createIndex(Math.max(0, this.m_endRow), Math.max(0, this.m_endCol));
23417
+ lastCellIndex = this.createIndex(Math.max(0, this.m_endRow), lastColIndex);
22974
23418
  }
22975
23419
  focusFunc(lastCellIndex, event);
22976
23420
  } else {
22977
23421
  // selects the last cell of the current row
22978
23422
  if (!this._isCountUnknown('column') && !this._isHighWatermarkScrolling()) {
22979
- newCellIndex = this.createIndex(
22980
- this.m_trueIndex.row,
22981
- Math.max(0, this.getDataSource().getCount('column') - 1)
22982
- );
23423
+ newCellIndex = this.createIndex(this.m_trueIndex.row, lastColIndex);
22983
23424
  } else {
22984
- newCellIndex = this.createIndex(this.m_trueIndex.row, Math.max(0, this.m_endCol));
23425
+ newCellIndex = this.createIndex(this.m_trueIndex.row, Math.max(0, lastColIndex));
22985
23426
  }
22986
23427
  focusFunc(newCellIndex, event);
22987
23428
  }
22988
23429
  break;
23430
+ }
22989
23431
  case this.keyCodes.PAGEUP_KEY:
22990
23432
  if (!this.m_trueIndex.column) {
22991
23433
  this.m_trueIndex = { column: column };
@@ -23103,10 +23545,17 @@ DvtDataGrid.prototype.scrollToIndex = function (index, ignoreHighlight, scrollTo
23103
23545
  // approximate scroll position
23104
23546
  if (column < this.m_startCol || column > this.m_endCol) {
23105
23547
  var scrollLeft;
23548
+ let hiddenColumnsInDirection;
23549
+ let hiddenLength;
23106
23550
  if (column < this.m_startCol) {
23107
- scrollLeft = this.m_avgColWidth * column;
23551
+ hiddenColumnsInDirection = this.hiddenColumnsInDirection(column, { left: true });
23552
+ hiddenLength = hiddenColumnsInDirection.length;
23553
+ scrollLeft = this.m_avgColWidth * (column - hiddenLength);
23108
23554
  } else {
23109
- scrollLeft = this.m_avgColWidth * (column + 1) - viewportRight + viewportLeft;
23555
+ hiddenColumnsInDirection = this.hiddenColumnsInDirection(column, { right: true });
23556
+ hiddenLength = hiddenColumnsInDirection.length;
23557
+ scrollLeft =
23558
+ this.m_avgColWidth * (column - hiddenLength + 1) - viewportRight + viewportLeft;
23110
23559
  }
23111
23560
  deltaX = this.m_currentScrollLeft - scrollLeft;
23112
23561
 
@@ -24265,7 +24714,9 @@ DvtDataGrid.prototype.handleRootFocus = function (event, isPopupFocusin) {
24265
24714
  // no data slot
24266
24715
  this._setActive(emptyElement, { type: 'empty' }, event, null, null, shouldNotScroll, true);
24267
24716
  } else if (this.m_active == null && !this._databodyEmpty()) {
24268
- var newCellIndex = this.createIndex(0, 0);
24717
+ var newCellIndex;
24718
+ let firstVisibleColumn = this.getVisibleCellIndexInDirection('column', 0, { right: true });
24719
+ newCellIndex = this.createIndex(0, firstVisibleColumn);
24269
24720
 
24270
24721
  if (!shouldNotScroll) {
24271
24722
  // make sure it's visible
@@ -25998,10 +26449,19 @@ DvtDataGrid.prototype._resizeSelectedHeaders = function (
25998
26449
  }
25999
26450
  if (selectedHeaders && selectedHeaders.length) {
26000
26451
  for (let i = 0; i < selectedHeaders.length; i++) {
26452
+ let currentHeaderContext =
26453
+ selectedHeaders[i][this.getResources().getMappedAttribute('context')];
26454
+ let currentHeaderIndex = currentHeaderContext.index;
26001
26455
  if (resizingElement !== selectedHeaders[i]) {
26002
26456
  this.m_resizingElement = selectedHeaders[i];
26003
26457
  if (resizeHeaderMode === 'column') {
26004
- this.resizeColWidth(this.getElementDir(selectedHeaders[i], 'width'), newWidth);
26458
+ if (this.isHidden('column', currentHeaderIndex)) {
26459
+ let currentHeaderKey = currentHeaderContext.key;
26460
+ this.m_sizingManager.setSize('column', currentHeaderKey, newWidth);
26461
+ this.resizeColWidth(this.getElementDir(selectedHeaders[i], 'width'), 0);
26462
+ } else {
26463
+ this.resizeColWidth(this.getElementDir(selectedHeaders[i], 'width'), newWidth);
26464
+ }
26005
26465
  } else {
26006
26466
  this.resizeRowHeight(this.getElementDir(selectedHeaders[i], 'height'), newHeight);
26007
26467
  }
@@ -26135,7 +26595,8 @@ DvtDataGrid.prototype.manageHeaderCursor = function (event, isLabel) {
26135
26595
  widthResizable = this._isDOMElementResizable(elem);
26136
26596
  // previous is the previous index same level
26137
26597
  if (!isLabel) {
26138
- sibling = this._getHeaderCellByIndex(index - 1, 'column', level);
26598
+ let previousIndex = this.getVisibleCellIndexInDirection('column', index - 1, { left: true });
26599
+ sibling = this._getHeaderCellByIndex(previousIndex, 'column', level);
26139
26600
  if (!sibling) {
26140
26601
  if (this.m_headerLabels.column.length) {
26141
26602
  sibling = this._getLabel('column', level);
@@ -26182,7 +26643,8 @@ DvtDataGrid.prototype.manageHeaderCursor = function (event, isLabel) {
26182
26643
  widthResizable = this._isDOMElementResizable(elem);
26183
26644
  // previous is the previous index same level
26184
26645
  if (!isLabel) {
26185
- sibling = this._getHeaderCellByIndex(index - 1, 'columnEnd', level);
26646
+ let previousIndex = this.getVisibleCellIndexInDirection('column', index - 1, { left: true });
26647
+ sibling = this._getHeaderCellByIndex(previousIndex, 'columnEnd', level);
26186
26648
  if (!sibling) {
26187
26649
  sibling = this._getLabel('columnEnd', level);
26188
26650
  }
@@ -26453,6 +26915,7 @@ DvtDataGrid.prototype.resizeColWidth = function (oldElementWidth, newElementWidt
26453
26915
 
26454
26916
  // helper to update all elements this effects
26455
26917
  this.resizeColumnWidthAndShift(widthChange);
26918
+ this.deleteAndApplyHiddenIndicators();
26456
26919
  if (!isFrozenSectionResize) {
26457
26920
  this.m_endColPixel += widthChange;
26458
26921
  this.m_endColHeaderPixel += widthChange;
@@ -26565,6 +27028,7 @@ DvtDataGrid.prototype.resizeColHeight = function (newElementHeight, heightChange
26565
27028
  adjustLabel = false;
26566
27029
  }
26567
27030
  this.resizeColumnHeightsAndShift(heightChange, level, end, adjustLabel);
27031
+ this.deleteAndApplyHiddenIndicators();
26568
27032
 
26569
27033
  if (!end) {
26570
27034
  this.m_colHeaderHeight += heightChange;
@@ -27067,8 +27531,12 @@ DvtDataGrid.prototype._getMinValue = function (dimension, axis, isHeaderLabel) {
27067
27531
 
27068
27532
  if (axis === 'column') {
27069
27533
  if (dimension === 'width') {
27534
+ let visibleInnerIndex = index + (extent - 1);
27535
+ while (this.isHidden('column', visibleInnerIndex)) {
27536
+ visibleInnerIndex -= 1;
27537
+ }
27070
27538
  inner = this._getHeaderCellByIndex(
27071
- index + (extent - 1),
27539
+ visibleInnerIndex,
27072
27540
  axis,
27073
27541
  this.m_columnHeaderLevelCount - 1
27074
27542
  );
@@ -27415,6 +27883,9 @@ DvtDataGrid.prototype.resizeColumnWidthAndShift = function (widthChange) {
27415
27883
  ) {
27416
27884
  // has children
27417
27885
  index += this._getAttribute(this.m_resizingElement.parentNode, 'extent', true) - 1;
27886
+ while (this.isHidden('column', index)) {
27887
+ index -= 1;
27888
+ }
27418
27889
  }
27419
27890
 
27420
27891
  var rangeIndex = this.createIndex(-1, index);
@@ -27497,7 +27968,8 @@ DvtDataGrid.prototype._shiftCellsAlongAxis = function (
27497
27968
  startAxisChange,
27498
27969
  shiftOnly,
27499
27970
  endAxisChange,
27500
- corner
27971
+ corner,
27972
+ forHideShow
27501
27973
  ) {
27502
27974
  var tempArray = [];
27503
27975
  var dimension;
@@ -27559,6 +28031,14 @@ DvtDataGrid.prototype._shiftCellsAlongAxis = function (
27559
28031
  axisExtent - extentWithinCellToIgnore
27560
28032
  );
27561
28033
  } else {
28034
+ if (forHideShow) {
28035
+ if (this.isHidden(axis, startAxisChange)) {
28036
+ cell.style.display = 'none';
28037
+ } else {
28038
+ cell.style.display = '';
28039
+ }
28040
+ }
28041
+
27562
28042
  this._updateTempArray(
27563
28043
  tempArray,
27564
28044
  true,
@@ -27608,7 +28088,8 @@ DvtDataGrid.prototype._shiftFrozenCellsAlongAxis = function (
27608
28088
  axis,
27609
28089
  dimensionDelta,
27610
28090
  startAxisChange,
27611
- shiftOnly
28091
+ shiftOnly,
28092
+ forHideShow
27612
28093
  ) {
27613
28094
  const tempArray = [];
27614
28095
  let dir;
@@ -27654,6 +28135,14 @@ DvtDataGrid.prototype._shiftFrozenCellsAlongAxis = function (
27654
28135
  axisExtent - extentWithinCellToIgnore
27655
28136
  );
27656
28137
  } else {
28138
+ if (forHideShow) {
28139
+ if (this.isHidden(axis, startAxisChange)) {
28140
+ cell.style.display = 'none';
28141
+ } else {
28142
+ cell.style.display = '';
28143
+ }
28144
+ }
28145
+
27657
28146
  this._updateTempArray(
27658
28147
  tempArray,
27659
28148
  true,
@@ -27803,7 +28292,8 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27803
28292
  dimensionChange,
27804
28293
  dir,
27805
28294
  className,
27806
- axis
28295
+ axis,
28296
+ forHideShow
27807
28297
  ) {
27808
28298
  var header;
27809
28299
  var groupingContainer;
@@ -27812,7 +28302,7 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27812
28302
  var newVal = 0;
27813
28303
 
27814
28304
  // get the last element in the container
27815
- var element = headersContainer.lastChild;
28305
+ var element = this._getHeaderLastChild(headersContainer);
27816
28306
  if (element == null) {
27817
28307
  return;
27818
28308
  }
@@ -27837,7 +28327,7 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27837
28327
  newStart = this.getElementDir(header, dir) + dimensionChange;
27838
28328
  this.setElementDir(header, newStart, dir);
27839
28329
 
27840
- element = element.previousSibling;
28330
+ element = this._getHeaderPreviousSibling(element);
27841
28331
  isHeader = this.m_utils.containsCSSClassName(element, className);
27842
28332
  groupingContainer = element.parentNode;
27843
28333
  header = element;
@@ -27850,13 +28340,14 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27850
28340
  this.setElementDir(headers[i], newStart, dir);
27851
28341
  }
27852
28342
 
27853
- element = element.previousSibling;
28343
+ element = this._getHeaderPreviousSibling(element);
27854
28344
  isHeader = this.m_utils.containsCSSClassName(element, className);
27855
28345
  groupingContainer = element;
27856
28346
  header = element.firstChild;
27857
28347
  headerStart = this._getAttribute(groupingContainer, 'start', true);
27858
28348
  }
27859
28349
  }
28350
+
27860
28351
  var resizingElementLevel;
27861
28352
  if (this.m_resizingElement) {
27862
28353
  resizingElementLevel = this.getHeaderCellLevel(this.m_resizingElement);
@@ -27873,7 +28364,15 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27873
28364
  this.setElementDir(header, newStart, dir);
27874
28365
  }
27875
28366
 
27876
- if (axis === 'row' || axis === 'column') {
28367
+ if (forHideShow && axis === 'column') {
28368
+ if (this.isHeaderHidden(header)) {
28369
+ header.style.display = 'none';
28370
+ } else {
28371
+ header.style.display = '';
28372
+ }
28373
+ }
28374
+
28375
+ if ((axis === 'row' || axis === 'column') && !forHideShow) {
27877
28376
  let resizeClass = this.getResources().isRTLMode() ? ['startResized'] : ['endResized'];
27878
28377
  let classArray = axis === 'row' ? ['bottomResized'] : resizeClass;
27879
28378
  if (
@@ -27892,10 +28391,24 @@ DvtDataGrid.prototype._shiftHeadersAlongAxisInContainer = function (
27892
28391
  // if we aren't innermost then repeat for its children
27893
28392
  if (!isHeader && header.nextSibling != null) {
27894
28393
  // has children
27895
- this._shiftHeadersAlongAxisInContainer(element, index, dimensionChange, dir, className, axis);
27896
- } else if (axis != null) {
28394
+ this._shiftHeadersAlongAxisInContainer(
28395
+ element,
28396
+ index,
28397
+ dimensionChange,
28398
+ dir,
28399
+ className,
28400
+ axis,
28401
+ forHideShow
28402
+ );
28403
+ } else if (axis != null && !forHideShow) {
27897
28404
  // store the width/height change in the sizing manager, only care about innermost
27898
- this.m_sizingManager.setSize(axis, this._getKey(header), newVal);
28405
+ if (axis === 'column') {
28406
+ if (!this.isHidden('column', index)) {
28407
+ this.m_sizingManager.setSize(axis, this._getKey(header), newVal);
28408
+ }
28409
+ } else {
28410
+ this.m_sizingManager.setSize(axis, this._getKey(header), newVal);
28411
+ }
27899
28412
  }
27900
28413
  };
27901
28414
 
@@ -28622,18 +29135,20 @@ DvtDataGrid.prototype.handleResizeFitToContent = function (event, target, resize
28622
29135
  this.m_columnEndHeaderLevelCount - 1
28623
29136
  );
28624
29137
  }
28625
- let rangeIndex = this.createIndex(-1, index);
28626
- cells = this.getElementsInRange(this.createRange(rangeIndex, rangeIndex));
28627
- cells.push(header);
29138
+ if (!this.isHidden('column', index)) {
29139
+ let rangeIndex = this.createIndex(-1, index);
29140
+ cells = this.getElementsInRange(this.createRange(rangeIndex, rangeIndex));
29141
+ cells.push(header);
28628
29142
 
28629
- oldElementWidth = this.calculateColumnHeaderWidth(this.m_resizingElement);
28630
- oldElementHeight = this.getElementHeight(this.m_resizingElement);
28631
- newElementWidth = this._calculateResizeFitToContentValue(cells, 'column');
28632
- newElementHeight = oldElementHeight;
28633
- size = newElementWidth;
28634
- fireEvent = oldElementWidth !== newElementWidth;
29143
+ oldElementWidth = this.calculateColumnHeaderWidth(this.m_resizingElement);
29144
+ oldElementHeight = this.getElementHeight(this.m_resizingElement);
29145
+ newElementWidth = this._calculateResizeFitToContentValue(cells, 'column');
29146
+ newElementHeight = oldElementHeight;
29147
+ size = newElementWidth;
29148
+ fireEvent = oldElementWidth !== newElementWidth;
28635
29149
 
28636
- this.resizeColWidth(oldElementWidth, newElementWidth);
29150
+ this.resizeColWidth(oldElementWidth, newElementWidth);
29151
+ }
28637
29152
  } else if (axis === 'row' || axis === 'rowEnd') {
28638
29153
  let index = headerCell
28639
29154
  ? this._getResizeNestedHeaderIndex(axis, endHeaderCell)
@@ -30745,7 +31260,6 @@ DvtDataGrid.prototype.selectAndFocus = function (index, event, augment) {
30745
31260
  // eslint-disable-next-line no-param-reassign
30746
31261
  augment = false;
30747
31262
  }
30748
-
30749
31263
  // reset any focus properties set on frontier cell
30750
31264
  this._resetSelectionFrontierFocus();
30751
31265
 
@@ -33539,6 +34053,7 @@ function DataGridProviderDataGridDataSourceKeyMap() {
33539
34053
  };
33540
34054
  }
33541
34055
 
34056
+ // import { ImmutableKeySet } from 'ojs/ojkeyset';
33542
34057
  // import { DataGridProvider } from 'ojs/ojdatagridprovider';
33543
34058
 
33544
34059
  /**
@@ -33551,6 +34066,7 @@ function DataGridProviderDataGridDataSourceKeyMap() {
33551
34066
  * @ojshortdesc A data grid displays data in a cell oriented grid.
33552
34067
  * @ojtsimport {module: "ojdatagridprovider", type: "AMD", imported: ["DataGridProvider","GridBodyItem", "GridHeaderItem", "GridItem"]}
33553
34068
  * @ojtsimport {module: "ojdataprovider", type: "AMD", imported: ["DataProvider"]}
34069
+ * @ojtsimport {module: "ojkeyset", type: "AMD", imported: ["ImmutableKeySet"]}
33554
34070
  * @ojsignature [{
33555
34071
  * target: "Type",
33556
34072
  * value: "class ojDataGrid<K, D> extends baseComponent<ojDataGridSettableProperties<K,D>>",
@@ -33888,6 +34404,14 @@ function DataGridProviderDataGridDataSourceKeyMap() {
33888
34404
  * <td><kbd>Unfreeze Rows</kbd></td>
33889
34405
  * <td>oj-datagrid-unfreezeRow</td>
33890
34406
  * </tr>
34407
+ * <tr>
34408
+ * <td><kbd>Hide Columns</kbd></td>
34409
+ * <td>oj-datagrid-hideCol</td>
34410
+ * </tr>
34411
+ * <tr>
34412
+ * <td><kbd>Unhide Columns</kbd></td>
34413
+ * <td>oj-datagrid-unhideCol</td>
34414
+ * </tr>
33891
34415
  * </tbody></table>
33892
34416
  */
33893
34417
  //-----------------------------------------------------
@@ -35836,6 +36360,27 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
35836
36360
  */
35837
36361
  selection: [],
35838
36362
 
36363
+ /**
36364
+ * <p> An <a href="ImmutableKeySet.html#ImmutableSet<V>">immutable Set</a> of zero based indexes used to define columns as hidden by default. This property will be updated when the end user shows/hides columns via the context menu.
36365
+ * Enable end user show/hide via the header.column.hidable property.
36366
+ * Note: When initializing hiddenColumns set, it is not recommended to hide all columns.
36367
+ *
36368
+ * @example <caption>Initialize the DataGrid with the <code class="prettyprint">hidden-columns</code> attribute:</caption>
36369
+ * Assign values with type Set
36370
+ * @expose
36371
+ * @name hiddenColumns
36372
+ * @memberof oj.ojDataGrid
36373
+ * @instance
36374
+ * @type {Object}
36375
+ * @ojwriteback
36376
+ * @ojshortdesc Use to hide columns of grid on initial render.
36377
+ * @ojsignature {target: "Type",
36378
+ * value: "ImmutableKeySet.ImmutableSet<number>",
36379
+ * jsdocOverride: true}
36380
+ *
36381
+ */
36382
+ hiddenColumns: new Set([]),
36383
+
35839
36384
  /**
35840
36385
  * <p>The cell that currently have keyboard focus. Note that if the current cell
35841
36386
  * is set to an item that is currently not available (not fetched in high-water mark scrolling case or
@@ -36727,6 +37272,40 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
36727
37272
  * myDataGrid.header.column.style = 'myStyle';
36728
37273
  */
36729
37274
  style: null,
37275
+ /**
37276
+ * <p>Enables or disables hide and show end user functionality on the datagrid columns using
37277
+ * <code class="prettyprint">enable</code>
37278
+ * or <code class="prettyprint">disable</code>.
37279
+ * See hidden-columns for tracking the current hidden state.
37280
+ * Note: It's not recommeneded to hide all columns via any interactions.
37281
+ *
37282
+ * @expose
37283
+ * @name header.column.hidable
37284
+ * @instance
37285
+ * @memberof! oj.ojDataGrid
37286
+ * @type {string}
37287
+ * @default 'disable'
37288
+ * @ojsignature { target: "Type",
37289
+ * value: "?string",
37290
+ * jsDocOverride: true }
37291
+ * @ojshortdesc Allows hide/unhide on columns.
37292
+ * @example <caption>Initialize the DataGrid with the <code class="prettyprint">hidable</code> attribute specified:</caption>
37293
+ * &lt;!-- Using dot notation -->
37294
+ * &lt;oj-data-grid header.column.hidable="enable">&lt;/oj-data-grid>
37295
+ *
37296
+ * &lt;!-- Using JSON notation -->
37297
+ * &lt;oj-data-grid header.column.hidable='enable'>&lt;/oj-data-grid>
37298
+ *
37299
+ * @example <caption>Get or set the <code class="prettyprint">hidable</code> property after initialization:</caption>
37300
+ * // Getter
37301
+ * let hidableColumn = myDataGrid.header.column.hidable;
37302
+ *
37303
+ * // Setter
37304
+ * myDataGrid.setProperty('header.column.hidable', "enable");
37305
+ *
37306
+ */
37307
+ hidable: 'disable',
37308
+
36730
37309
  /**
36731
37310
  * <p>Enables or disables freeze and unfreeze option on the datagrid columns.
36732
37311
  *
@@ -37854,6 +38433,9 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
37854
38433
  // sets the initial (or default) selection on internal grid
37855
38434
  this._setSelection();
37856
38435
 
38436
+ // hides the initial (or default) columns on internal grid
38437
+ this._hideColumns();
38438
+
37857
38439
  if (this.datasource != null) {
37858
38440
  this.grid.SetDataSource(this.datasource);
37859
38441
 
@@ -38060,6 +38642,15 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38060
38642
  changed: true
38061
38643
  });
38062
38644
  });
38645
+ this.grid.addListener('columnHide', function (details) {
38646
+ self.option('hiddenColumns', details.ui.hiddenColumns, {
38647
+ _context: {
38648
+ originalEvent: details.event,
38649
+ internalSet: true
38650
+ },
38651
+ changed: true
38652
+ });
38653
+ });
38063
38654
  },
38064
38655
 
38065
38656
  /**
@@ -38323,6 +38914,7 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38323
38914
  case 'selection':
38324
38915
  case 'frozenColumnCount':
38325
38916
  case 'frozenRowCount':
38917
+ case 'hiddenColumns':
38326
38918
  // just set returnVal in case another option is refresh at
38327
38919
  // the wrapper level
38328
38920
  returnVal = 'pass';
@@ -38419,6 +39011,19 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38419
39011
  return false;
38420
39012
  },
38421
39013
 
39014
+ /**
39015
+ * Checks if hide is enabled on headers along a given axis
39016
+ * @private
39017
+ * @param {string} axis column/row
39018
+ * @return {boolean} true if hide is not set to 'disable'
39019
+ */
39020
+ _isHideEnabled: function (axis) {
39021
+ if (this.options.header[axis]) {
39022
+ return this.options.header[axis].hidable !== 'disable';
39023
+ }
39024
+ return false;
39025
+ },
39026
+
38422
39027
  /**
38423
39028
  * Remove all children except context menu slot and templates
38424
39029
  * @private
@@ -38588,6 +39193,8 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38588
39193
  let dataTransferOptionsMenu;
38589
39194
  let freezeMenu;
38590
39195
  let menuContainer;
39196
+ let hideMenu;
39197
+ let unhideMenu;
38591
39198
 
38592
39199
  const isCustomElement = this._IsCustomElement();
38593
39200
  if (!isCustomElement) {
@@ -38623,6 +39230,11 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38623
39230
  }
38624
39231
  }
38625
39232
 
39233
+ if (this._isHideEnabled('column')) {
39234
+ hideMenu = this._buildContextMenuItem('hideCol', isCustomElement);
39235
+ unhideMenu = this._buildContextMenuItem('unhideCol', isCustomElement);
39236
+ }
39237
+
38626
39238
  if (this.options.dnd.reorder.row === 'enable') {
38627
39239
  switch (this.datasource.getCapability('move')) {
38628
39240
  case 'none':
@@ -38726,11 +39338,25 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38726
39338
  moveMenu ||
38727
39339
  selectMenu ||
38728
39340
  freezeMenu ||
39341
+ hideMenu ||
39342
+ unhideMenu ||
38729
39343
  dataTransferOptionsMenu
38730
39344
  ) {
38731
39345
  if (dataTransferOptionsMenu) {
38732
39346
  menuContainer.appendChild(dataTransferOptionsMenu); // @HTMLUpdateOK
38733
39347
  }
39348
+ if (hideMenu) {
39349
+ menuContainer.appendChild(hideMenu); // @HTMLUpdateOK
39350
+ }
39351
+ if (unhideMenu) {
39352
+ menuContainer.appendChild(unhideMenu); // @HTMLUpdateOK
39353
+ }
39354
+ if (freezeMenu) {
39355
+ menuContainer.appendChild(freezeMenu); // @HTMLUpdateOK
39356
+ }
39357
+ if (hideMenu || unhideMenu || freezeMenu) {
39358
+ menuContainer.appendChild(this._buildContextMenuDivider()); // @HTMLUpdateOK
39359
+ }
38734
39360
  if (resizeRowHeightMenu) {
38735
39361
  menuContainer.appendChild(resizeRowHeightMenu); // @HTMLUpdateOK
38736
39362
  }
@@ -38740,11 +39366,8 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38740
39366
  if (resizeFitToContentMenu) {
38741
39367
  menuContainer.appendChild(resizeFitToContentMenu); // @HTMLUpdateOK
38742
39368
  }
38743
- if (freezeMenu) {
38744
- menuContainer.appendChild(freezeMenu); // @HTMLUpdateOK
38745
- }
38746
39369
  if (sortColumnMenu || sortRowMenu) {
38747
- if (resizeRowHeightMenu || resizeColWidthMenu || resizeFitToContentMenu || freezeMenu) {
39370
+ if (resizeRowHeightMenu || resizeColWidthMenu || resizeFitToContentMenu) {
38748
39371
  menuContainer.appendChild(this._buildContextMenuDivider()); // @HTMLUpdateOK
38749
39372
  }
38750
39373
  if (sortColumnMenu) {
@@ -38760,6 +39383,8 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38760
39383
  resizeColWidthMenu ||
38761
39384
  resizeFitToContentMenu ||
38762
39385
  freezeMenu ||
39386
+ hideMenu ||
39387
+ unhideMenu ||
38763
39388
  sortColumnMenu ||
38764
39389
  sortRowMenu
38765
39390
  ) {
@@ -38775,6 +39400,8 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38775
39400
  freezeMenu ||
38776
39401
  sortColumnMenu ||
38777
39402
  sortRowMenu ||
39403
+ hideMenu ||
39404
+ unhideMenu ||
38778
39405
  moveMenu
38779
39406
  ) {
38780
39407
  menuContainer.appendChild(this._buildContextMenuDivider()); // @HTMLUpdateOK
@@ -38937,6 +39564,14 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
38937
39564
  // eslint-disable-next-line no-param-reassign
38938
39565
  command = 'resizeRow';
38939
39566
  }
39567
+ if (command === 'hideCol') {
39568
+ // eslint-disable-next-line no-param-reassign
39569
+ command = 'hideColumns';
39570
+ }
39571
+ if (command === 'unhideCol') {
39572
+ // eslint-disable-next-line no-param-reassign
39573
+ command = 'unhideColumns';
39574
+ }
38940
39575
  let key = 'label' + command.charAt(0).toUpperCase() + command.slice(1);
38941
39576
  if (!isCustomElement && command === 'discontiguousSelection') {
38942
39577
  // always initialize to enable
@@ -39265,7 +39900,9 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
39265
39900
  this.menuItemFunction === this._getMappedCommand('freezeRow') ||
39266
39901
  this.menuItemFunction === this._getMappedCommand('freezeCol') ||
39267
39902
  this.menuItemFunction === this._getMappedCommand('unfreezeRow') ||
39268
- this.menuItemFunction === this._getMappedCommand('unfreezeCol')
39903
+ this.menuItemFunction === this._getMappedCommand('unfreezeCol') ||
39904
+ this.menuItemFunction === this._getMappedCommand('hideCol') ||
39905
+ this.menuItemFunction === this._getMappedCommand('unhideCol')
39269
39906
  ) {
39270
39907
  this.grid.handleContextMenuReturn(this.contextMenuEvent, this.menuItemFunction, null);
39271
39908
  // this.contextMenuEvent['target'].focus();
@@ -39465,6 +40102,18 @@ oj.__registerWidget('oj.ojDataGrid', $.oj.baseComponent, {
39465
40102
  }
39466
40103
  },
39467
40104
 
40105
+ /**
40106
+ * Sets hidability on internal grid from options
40107
+ * @private
40108
+ */
40109
+ _hideColumns: function () {
40110
+ var hiddenColumns = this.options.hiddenColumns;
40111
+ if (hiddenColumns != null) {
40112
+ hiddenColumns = [...hiddenColumns];
40113
+ this.grid.setHiddenColumns(hiddenColumns);
40114
+ }
40115
+ },
40116
+
39468
40117
  /**
39469
40118
  * Modify the header and cell context before passing to the renderer.
39470
40119
  * @param {Object} context the header or cell context.
@@ -42125,6 +42774,30 @@ DvtDataGrid.prototype._addFrozenIndicator = function (axis, top, dir, dirValue,
42125
42774
  );
42126
42775
  }
42127
42776
 
42777
+ // If corner has only column labels frozen row indicator left has to be dir value of databody.
42778
+ if (
42779
+ axis === 'row' &&
42780
+ this.m_endRowHeader === -1 &&
42781
+ this.m_headerLabels.column &&
42782
+ this.m_headerLabels.column.length
42783
+ ) {
42784
+ // eslint-disable-next-line no-param-reassign
42785
+ databodyVisualIndicatorDir = this._hasFrozenColumns()
42786
+ ? this.getElementDir(this.m_databodyFrozenCol, dir)
42787
+ : this.getElementDir(this.m_databody, dir);
42788
+ }
42789
+
42790
+ // If corner has only row labels frozen col indicator top has to be height of row header label.
42791
+ if (
42792
+ axis === 'column' &&
42793
+ this.m_endColHeader === -1 &&
42794
+ this.m_headerLabels.row &&
42795
+ this.m_headerLabels.row.length
42796
+ ) {
42797
+ // eslint-disable-next-line no-param-reassign
42798
+ databodyVisualIndicatorTop = this.getElementHeight(this.m_headerLabels.row[0]);
42799
+ }
42800
+
42128
42801
  return [
42129
42802
  databodyVisualIndicatorTop,
42130
42803
  headerVisualIndicatorTop,
@@ -42464,6 +43137,8 @@ DvtDataGrid.prototype._buildFrozenHeaders = function (axis, startResults, endRes
42464
43137
 
42465
43138
  /**
42466
43139
  * Checks freeze feasibility.
43140
+ * Checks the extents on startResult and endResult and returns the closest matching extent if available
43141
+ * If only one of startResult, endResult is available then frozen index is expected to be less than the count.
42467
43142
  * @param {String} axis row/column
42468
43143
  * @param {Number} index row/column index
42469
43144
  * @param {Object} startResults a headerSet object returned from the data source
@@ -42477,9 +43152,11 @@ DvtDataGrid.prototype._isFreezeFeasible = function (axis, startResults, endResul
42477
43152
  // if application tries to freeze an index beyond the fetch count.
42478
43153
  if (
42479
43154
  (axis === 'column' &&
43155
+ !this.m_initialized &&
42480
43156
  (this.m_frozenColIndex >= startResults.getCount() ||
42481
43157
  this.m_frozenColIndex >= endResults.getCount())) ||
42482
43158
  (axis === 'row' &&
43159
+ !this.m_initialized &&
42483
43160
  (this.m_frozenRowIndex >= startResults.getCount() ||
42484
43161
  this.m_frozenRowIndex >= endResults.getCount()))
42485
43162
  ) {
@@ -42521,14 +43198,18 @@ DvtDataGrid.prototype._isFreezeFeasible = function (axis, startResults, endResul
42521
43198
  }
42522
43199
  } else if (
42523
43200
  startResults &&
42524
- ((axis === 'column' && this.m_frozenColIndex < startResults.getCount()) ||
42525
- (axis === 'row' && this.m_frozenRowIndex < startResults.getCount()))
43201
+ ((!this.m_initialized &&
43202
+ ((axis === 'column' && this.m_frozenColIndex < startResults.getCount()) ||
43203
+ (axis === 'row' && this.m_frozenRowIndex < startResults.getCount()))) ||
43204
+ this.m_initialized)
42526
43205
  ) {
42527
43206
  isFeasible = true;
42528
43207
  } else if (
42529
43208
  endResults &&
42530
- ((axis === 'column' && this.m_frozenColIndex < endResults.getCount()) ||
42531
- (axis === 'row' && this.m_frozenRowIndex < endResults.getCount()))
43209
+ ((!this.m_initialized &&
43210
+ ((axis === 'column' && this.m_frozenColIndex < endResults.getCount()) ||
43211
+ (axis === 'row' && this.m_frozenRowIndex < endResults.getCount()))) ||
43212
+ this.m_initialized)
42532
43213
  ) {
42533
43214
  isFeasible = true;
42534
43215
  } else if (!startResults && !endResults) {
@@ -42742,6 +43423,7 @@ DvtDataGrid.prototype._handleFreezeRow = function (event) {
42742
43423
  }
42743
43424
  if (isFeasible) {
42744
43425
  this._mutateRowFrozenContainer(header, cell, axis);
43426
+ this.deleteAndApplyHiddenIndicators();
42745
43427
  let details = {
42746
43428
  event: event,
42747
43429
  ui: {
@@ -42835,6 +43517,7 @@ DvtDataGrid.prototype._handleFreezeCol = function (event) {
42835
43517
  }
42836
43518
  if (isFeasible) {
42837
43519
  this._mutateColumnFrozenContainer(header, cell, axis);
43520
+ this.deleteAndApplyHiddenIndicators();
42838
43521
  let details = {
42839
43522
  event: event,
42840
43523
  ui: {
@@ -44533,6 +45216,7 @@ DvtDataGrid.prototype._handleUnFreeze = function (axis, event) {
44533
45216
  if (this.m_colEndHeaderFrozen) {
44534
45217
  this.m_root.removeChild(this.m_colEndHeaderFrozen);
44535
45218
  }
45219
+ this.deleteAndApplyHiddenIndicators();
44536
45220
  if (event) {
44537
45221
  let details = {
44538
45222
  event: event,
@@ -44555,6 +45239,7 @@ DvtDataGrid.prototype._handleUnFreeze = function (axis, event) {
44555
45239
  if (this.m_rowEndHeaderFrozen) {
44556
45240
  this.m_root.removeChild(this.m_rowEndHeaderFrozen);
44557
45241
  }
45242
+ this.deleteAndApplyHiddenIndicators();
44558
45243
  if (event) {
44559
45244
  let details = {
44560
45245
  event: event,
@@ -45358,3 +46043,1297 @@ DvtDataGrid.prototype._resetSkeletonProperties = function () {
45358
46043
  this.m_skeletonRowEndPixel = null;
45359
46044
  this.m_skeletonSet = new Set();
45360
46045
  };
46046
+
46047
+ /**
46048
+ * set Hidden columns
46049
+ * @param Array hiddenColumns
46050
+ */
46051
+ DvtDataGrid.prototype.setHiddenColumns = function (hiddenColumns) {
46052
+ // it can be null but cannot be undefined
46053
+ if (hiddenColumns !== undefined) {
46054
+ this.m_hiddenColumns = hiddenColumns === null ? [] : hiddenColumns;
46055
+ }
46056
+ };
46057
+
46058
+ /**
46059
+ * Returns hidden indicator div belonging to the region
46060
+ * @param {number} index
46061
+ * @param {Object} databody/header/endHeader
46062
+ * @param {boolean} isHeader
46063
+ */
46064
+ DvtDataGrid.prototype.getHiddenIndicatorByIndex = function (index, container, isHeader) {
46065
+ let hiddenIndicators;
46066
+
46067
+ if (isHeader) {
46068
+ hiddenIndicators = container.querySelectorAll(
46069
+ `.${this.getResources().getMappedStyle('headerHiddenIndicator')}`
46070
+ );
46071
+ } else {
46072
+ hiddenIndicators = container.querySelectorAll(
46073
+ `.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`
46074
+ );
46075
+ }
46076
+
46077
+ hiddenIndicators = Array.from(hiddenIndicators);
46078
+
46079
+ if (hiddenIndicators.length > 0) {
46080
+ const hiddenIndicatorNode = hiddenIndicators.find(
46081
+ (node) => this._getAttribute(node, 'hiddenIndicatorIndex', true) === index
46082
+ );
46083
+
46084
+ if (hiddenIndicatorNode) {
46085
+ return hiddenIndicatorNode;
46086
+ }
46087
+ }
46088
+
46089
+ return null;
46090
+ };
46091
+
46092
+ // returns active databody indicators
46093
+ DvtDataGrid.prototype.getActiveDatabodyIndicators = function () {
46094
+ let indicatorsIndexArray = [];
46095
+
46096
+ if (this._hasFrozenColumns()) {
46097
+ // frozen columns
46098
+ let frozenatabodyContainer = this.m_databodyFrozenCol.firstChild;
46099
+ frozenatabodyContainer
46100
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
46101
+ .forEach((node) =>
46102
+ indicatorsIndexArray.push(this._getAttribute(node, 'hiddenIndicatorIndex', true))
46103
+ );
46104
+ }
46105
+
46106
+ if (this._hasFrozenRows()) {
46107
+ // frozen row's indicators
46108
+ let frozenRowDatabodyContainer = this.m_databodyFrozenRow.firstChild;
46109
+ frozenRowDatabodyContainer
46110
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
46111
+ .forEach((node) =>
46112
+ indicatorsIndexArray.push(this._getAttribute(node, 'hiddenIndicatorIndex', true))
46113
+ );
46114
+ }
46115
+
46116
+ if (this._hasFrozenColumns() && this._hasFrozenRows()) {
46117
+ // frozen corner
46118
+ let frozenCornerDatabodyContainer = this.m_databodyFrozenCorner.firstChild;
46119
+ frozenCornerDatabodyContainer
46120
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
46121
+ .forEach((node) =>
46122
+ indicatorsIndexArray.push(this._getAttribute(node, 'hiddenIndicatorIndex', true))
46123
+ );
46124
+ }
46125
+
46126
+ let databodyHiddenIndicators = this.m_databody.firstChild;
46127
+ databodyHiddenIndicators
46128
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
46129
+ .forEach((node) =>
46130
+ indicatorsIndexArray.push(this._getAttribute(node, 'hiddenIndicatorIndex', true))
46131
+ );
46132
+
46133
+ if (indicatorsIndexArray.length > 0) {
46134
+ return [...new Set(indicatorsIndexArray)];
46135
+ }
46136
+
46137
+ return null;
46138
+ };
46139
+
46140
+ /**
46141
+ * returns all the children indexes of the deepest level belonging to the header
46142
+ */
46143
+ DvtDataGrid.prototype.getIndexesByHeader = function (header) {
46144
+ let headerContext = header[this.getResources().getMappedAttribute('context')];
46145
+ let indexesSpannedByHeader = [];
46146
+ let headerIndex = headerContext.index;
46147
+ let headerExtent = headerContext.extent;
46148
+
46149
+ for (let i = headerIndex; i < headerIndex + headerExtent; i++) {
46150
+ indexesSpannedByHeader.push(i);
46151
+ }
46152
+
46153
+ return indexesSpannedByHeader;
46154
+ };
46155
+
46156
+ /**
46157
+ * Apply and render visual indicator for hidden columns
46158
+ * @param {Number} - startCol is the start column index of the visible range
46159
+ * @param {Number} - endCol is the end column index of the visible range
46160
+ */
46161
+ DvtDataGrid.prototype.applyHiddenIndicatorToRange = function (startCol, endCol, databodyIndicator) {
46162
+ const dir = this.getResources().isRTLMode() ? 'right' : 'left';
46163
+ let hiddenCols = this.m_hiddenColumns;
46164
+ hiddenCols.sort((a, b) => a - b);
46165
+
46166
+ let headerRoot;
46167
+ let levelCount = this.m_columnHeaderLevelCount;
46168
+ let headerStart = this.m_startColHeader;
46169
+
46170
+ for (let i = startCol; i <= endCol; i++) {
46171
+ if (this.m_hiddenColumns.includes(i)) {
46172
+ let adjustedColIndex = i === -1 ? 0 : i;
46173
+ let currentHeader;
46174
+
46175
+ if (levelCount === 1 && (this.m_hasColHeader || this.m_hasColEndHeader)) {
46176
+ let header = this._getHeaderCellByIndex(adjustedColIndex, 'column', 0);
46177
+
46178
+ if (header) {
46179
+ let indicatorLinePosition = this.getElementDir(header, dir);
46180
+ indicatorLinePosition += i === -1 ? 0 : this.getElementWidth(header);
46181
+ this.renderHiddenColumnVisualIndicator(
46182
+ 'column',
46183
+ 0,
46184
+ dir,
46185
+ indicatorLinePosition,
46186
+ adjustedColIndex,
46187
+ databodyIndicator
46188
+ );
46189
+ }
46190
+ } else {
46191
+ if (this._hasFrozenColumns() && i <= this.m_frozenColIndex) {
46192
+ headerRoot = this.m_colHeaderFrozen;
46193
+ } else {
46194
+ headerRoot = this.m_colHeader;
46195
+ }
46196
+ // get headers of all level with the headerFirstIndex
46197
+ let allHeadersofIndex = this._getHeadersByIndex(i, headerRoot, levelCount, headerStart);
46198
+ let tempArray;
46199
+ for (let j = allHeadersofIndex.length - 1; j >= 0; j--) {
46200
+ currentHeader = allHeadersofIndex[j];
46201
+ tempArray = this.getIndexesByHeader(currentHeader);
46202
+ if (this.isArraySubset(tempArray, hiddenCols)) {
46203
+ let headerTop = this.getElementDir(currentHeader, 'top');
46204
+ let indicatorLinePosition = this.getElementDir(currentHeader, dir);
46205
+ indicatorLinePosition += j === -1 ? 0 : this.getElementWidth(currentHeader);
46206
+ this.renderHiddenColumnVisualIndicator(
46207
+ 'column',
46208
+ headerTop,
46209
+ dir,
46210
+ indicatorLinePosition,
46211
+ adjustedColIndex,
46212
+ databodyIndicator
46213
+ );
46214
+ // filtering to avoid multiple loops for the same nested header for each header
46215
+ /* eslint-disable no-loop-func */
46216
+ hiddenCols = hiddenCols.filter((item) => !tempArray.includes(item));
46217
+ }
46218
+ }
46219
+ }
46220
+ }
46221
+ }
46222
+ };
46223
+
46224
+ /**
46225
+ * Render visual indicator for hidden columns
46226
+ * @param {string} axis
46227
+ * @param {number} top value
46228
+ * @param {string} direction RTL/LTR
46229
+ * @param {number} index
46230
+ */
46231
+ DvtDataGrid.prototype.renderHiddenColumnVisualIndicator = function (
46232
+ axis,
46233
+ top,
46234
+ dir,
46235
+ dirValue,
46236
+ index,
46237
+ databodyIndicatorArray
46238
+ ) {
46239
+ let databodyElem;
46240
+ let headerElem;
46241
+ let endHeaderElem;
46242
+
46243
+ if (this._hasFrozenColumns() && index <= this.m_frozenColIndex) {
46244
+ headerElem = this.m_colHeaderFrozen;
46245
+ endHeaderElem = this.m_colEndHeaderFrozen;
46246
+ databodyElem = this.m_databodyFrozenCol;
46247
+ } else {
46248
+ headerElem = this.m_colHeader;
46249
+ endHeaderElem = this.m_colEndHeader;
46250
+ databodyElem = this.m_databody;
46251
+ }
46252
+
46253
+ let databodyVisualIndicatorDimension;
46254
+ let headerVisualIndicatorDimension;
46255
+
46256
+ if (axis === 'row') {
46257
+ databodyVisualIndicatorDimension = 'width';
46258
+ headerVisualIndicatorDimension = 'width';
46259
+ } else if (axis === 'column') {
46260
+ databodyVisualIndicatorDimension = 'height';
46261
+ headerVisualIndicatorDimension = 'height';
46262
+ }
46263
+
46264
+ let headerVisualIndicatorDimensionValue = 0;
46265
+ let endHeaderVisualIndicatorDimensionValue = 0;
46266
+ let databodyVisualIndicatorDimensionValue = 0;
46267
+
46268
+ databodyVisualIndicatorDimensionValue = this.getElementDir(
46269
+ this.m_databody.firstChild,
46270
+ databodyVisualIndicatorDimension
46271
+ );
46272
+ headerVisualIndicatorDimensionValue =
46273
+ this.getElementDir(headerElem.firstChild, headerVisualIndicatorDimension) - top;
46274
+ endHeaderVisualIndicatorDimensionValue =
46275
+ this.getElementDir(endHeaderElem.firstChild, headerVisualIndicatorDimension) - top;
46276
+
46277
+ let delta = 0;
46278
+ let bodyAdjust = 0;
46279
+
46280
+ // To make visual indicator center to the gridline except for first/last visible index
46281
+ // for first/last visible index, the way hidden indicator looks is different
46282
+ // index here is the hidden index, so we are passing +/- of the index to check for first/last visible index
46283
+ if (this.isFirstOrFirstNonHiddenIndex(index + 1)) {
46284
+ delta = 2;
46285
+ bodyAdjust = 1;
46286
+ } else if (this.isLastOrLastNonHiddenIndex(index - 1)) {
46287
+ delta = -2;
46288
+ bodyAdjust = -1;
46289
+ }
46290
+
46291
+ let headerClassName = 'headerHiddenIndicator';
46292
+ let databodyClassName = 'databodyHiddenIndicator';
46293
+ if (axis === 'column' || axis === 'columnEnd') {
46294
+ if (this.m_hasColHeader) {
46295
+ let headerIndicator = document.createElement('div');
46296
+ // hiddenIndicatorIndex is an attribute of hidden indicators mapping each to its hidden column index
46297
+ this._setAttribute(headerIndicator, 'hiddenIndicatorIndex', index);
46298
+ this._setVisualIndicatorStyle(
46299
+ headerIndicator,
46300
+ headerClassName,
46301
+ top,
46302
+ dir,
46303
+ dirValue + delta - 2,
46304
+ headerVisualIndicatorDimensionValue,
46305
+ headerVisualIndicatorDimension
46306
+ );
46307
+ headerElem.firstChild.appendChild(headerIndicator); // @HTMLUpdateOK
46308
+ }
46309
+
46310
+ if (this.m_hasColEndHeader) {
46311
+ let endHeaderIndicator = document.createElement('div');
46312
+ // hiddenIndicatorIndex is an attribute of hidden indicators mapping each to its hidden column index
46313
+ this._setAttribute(endHeaderIndicator, 'hiddenIndicatorIndex', index);
46314
+ this._setVisualIndicatorStyle(
46315
+ endHeaderIndicator,
46316
+ headerClassName,
46317
+ 0,
46318
+ dir,
46319
+ dirValue + delta - 2,
46320
+ endHeaderVisualIndicatorDimensionValue,
46321
+ headerVisualIndicatorDimension
46322
+ );
46323
+ endHeaderElem.firstChild.appendChild(endHeaderIndicator); // @HTMLUpdateOK
46324
+ }
46325
+
46326
+ // For databody hidden Indicator
46327
+ // if we have frozen cols/rows, we apply indicators separately for each section frozen section
46328
+ if (databodyIndicatorArray && databodyIndicatorArray.includes(index)) {
46329
+ let databodyIndicator = document.createElement('div');
46330
+ // hiddenIndicatorIndex is an attribute of hidden indicators mapping each to its hidden column index
46331
+ this._setAttribute(databodyIndicator, 'hiddenIndicatorIndex', index);
46332
+ this._setVisualIndicatorStyle(
46333
+ databodyIndicator,
46334
+ databodyClassName,
46335
+ 0,
46336
+ dir,
46337
+ dirValue + bodyAdjust - 1,
46338
+ databodyVisualIndicatorDimensionValue,
46339
+ databodyVisualIndicatorDimension
46340
+ );
46341
+ databodyElem.firstChild.appendChild(databodyIndicator); // @HTMLUpdateOK
46342
+ if (this._hasFrozenRows()) {
46343
+ if (this._hasFrozenColumns() && index <= this.m_frozenColIndex) {
46344
+ // appending Indicator to the frozen corner
46345
+ let databodyFrozenCornerIndicator = document.createElement('div');
46346
+ let databodyFrozenCornerVisualIndicatorDimensionValue = 0;
46347
+ let databodyFrozenCornerElem = this.m_databodyFrozenCorner;
46348
+ databodyFrozenCornerVisualIndicatorDimensionValue = this.getElementDir(
46349
+ databodyFrozenCornerElem.firstChild,
46350
+ databodyVisualIndicatorDimension
46351
+ );
46352
+ this._setAttribute(databodyFrozenCornerIndicator, 'hiddenIndicatorIndex', index);
46353
+ this._setVisualIndicatorStyle(
46354
+ databodyFrozenCornerIndicator,
46355
+ databodyClassName,
46356
+ 0,
46357
+ dir,
46358
+ dirValue + bodyAdjust - 1,
46359
+ databodyFrozenCornerVisualIndicatorDimensionValue,
46360
+ databodyVisualIndicatorDimension
46361
+ );
46362
+
46363
+ databodyFrozenCornerElem.firstChild.appendChild(databodyFrozenCornerIndicator); // @HTMLUpdateOK
46364
+ } else {
46365
+ // appending indicator to the frozen row
46366
+ let databodyFrozenRowIndicator = document.createElement('div');
46367
+ let databodyFrozenRowVisualIndicatorDimensionValue = 0;
46368
+ let databodyFrozenRowElem = this.m_databodyFrozenRow;
46369
+
46370
+ databodyFrozenRowVisualIndicatorDimensionValue = this.getElementDir(
46371
+ databodyFrozenRowElem.firstChild,
46372
+ databodyVisualIndicatorDimension
46373
+ );
46374
+ this._setAttribute(databodyFrozenRowIndicator, 'hiddenIndicatorIndex', index);
46375
+ this._setVisualIndicatorStyle(
46376
+ databodyFrozenRowIndicator,
46377
+ databodyClassName,
46378
+ 0,
46379
+ dir,
46380
+ dirValue + bodyAdjust - 1,
46381
+ databodyFrozenRowVisualIndicatorDimensionValue,
46382
+ databodyVisualIndicatorDimension
46383
+ );
46384
+
46385
+ databodyFrozenRowElem.firstChild.appendChild(databodyFrozenRowIndicator); // @HTMLUpdateOK
46386
+ }
46387
+ }
46388
+ }
46389
+ }
46390
+ };
46391
+
46392
+ /**
46393
+ * Returns true if the current index of given axis is hidden
46394
+ * @param {string} axis
46395
+ * @param {number} index
46396
+ */
46397
+ DvtDataGrid.prototype.isHidden = function (axis, index) {
46398
+ if (axis === 'column' || axis === 'columnEnd') {
46399
+ if (this.m_hiddenColumns.includes(index)) {
46400
+ return true;
46401
+ }
46402
+ }
46403
+ return false;
46404
+ };
46405
+
46406
+ DvtDataGrid.prototype.isHeaderHidden = function (header) {
46407
+ let headerContext;
46408
+ let headerExtent;
46409
+ let index;
46410
+ let axis;
46411
+ let indexes = [];
46412
+ if (header) {
46413
+ headerContext = header[this.getResources().getMappedAttribute('context')];
46414
+ headerExtent = headerContext.extent;
46415
+ axis = headerContext.axis;
46416
+ index = headerContext.index;
46417
+ }
46418
+
46419
+ if (axis === 'column' || axis === 'columnEnd') {
46420
+ if (headerExtent === 1) {
46421
+ if (this.m_hiddenColumns.includes(index)) {
46422
+ return true;
46423
+ }
46424
+ } else {
46425
+ indexes = this.getIndexesByHeader(header);
46426
+ if (this.isArraySubset(indexes, this.m_hiddenColumns)) {
46427
+ return true;
46428
+ }
46429
+ }
46430
+ }
46431
+ return false;
46432
+ };
46433
+
46434
+ /**
46435
+ * Returns an array of integers
46436
+ * @param {number} number
46437
+ * @param {Object} arrow if {right:true}, returns array with integers from given number till max right,
46438
+ * if {left:true}, returns array with integers from 0 till given number
46439
+ */
46440
+ DvtDataGrid.prototype.arrayIndices = function (number, arrow) {
46441
+ let lastIndex;
46442
+ if (this._isCountUnknownOrHighwatermark('column')) {
46443
+ lastIndex = this._getMaxRight();
46444
+ } else {
46445
+ lastIndex = Math.max(0, this.getDataSource().getCount('column') - 1);
46446
+ }
46447
+
46448
+ let indexArray = [];
46449
+ if (arrow.left) {
46450
+ for (let i = 0; i <= number; i++) {
46451
+ indexArray.push(i);
46452
+ }
46453
+ } else if (arrow.right) {
46454
+ for (let i = number; i <= lastIndex; i++) {
46455
+ indexArray.push(i);
46456
+ }
46457
+ }
46458
+ return indexArray;
46459
+ };
46460
+
46461
+ /**
46462
+ * Returns true if subArray is a part of parentArray
46463
+ */
46464
+ DvtDataGrid.prototype.isArraySubset = function (subArray, parentArray) {
46465
+ return subArray.every((element) => parentArray.includes(element));
46466
+ };
46467
+
46468
+ /**
46469
+ * Retrieve all hidden Columns in the given direction (arrow) from/till the given index
46470
+ * @param {Number} index
46471
+ * @param {Object} arrow left/right
46472
+ */
46473
+ DvtDataGrid.prototype.hiddenColumnsInDirection = function (index, arrow) {
46474
+ let indexArray = new Set(this.arrayIndices(index, arrow));
46475
+ let hiddenColumns = this.m_hiddenColumns;
46476
+ let hiddenColumnsInDirection = hiddenColumns.filter((currentIndex) =>
46477
+ indexArray.has(currentIndex)
46478
+ );
46479
+ return hiddenColumnsInDirection;
46480
+ };
46481
+
46482
+ /**
46483
+ * returns true if given index is the first visible index by checking if all indices before that are hidden
46484
+ * @param {Number} index
46485
+ */
46486
+ DvtDataGrid.prototype.isFirstOrFirstNonHiddenIndex = function (index) {
46487
+ if (index >= 0) {
46488
+ for (let i = 0; i <= index - 1; i++) {
46489
+ if (!this.m_hiddenColumns.includes(i)) {
46490
+ return false;
46491
+ }
46492
+ }
46493
+
46494
+ return true;
46495
+ }
46496
+ return false;
46497
+ };
46498
+ /**
46499
+ * returns true if given index is the last visible index by checking if all indices after that are hidden
46500
+ * @param {Number} index
46501
+ */
46502
+ DvtDataGrid.prototype.isLastOrLastNonHiddenIndex = function (index) {
46503
+ if (index >= 0) {
46504
+ let lastIndex;
46505
+ if (this._isCountUnknownOrHighwatermark('column')) {
46506
+ lastIndex = this._getMaxRight();
46507
+ } else {
46508
+ lastIndex = Math.max(0, this.getDataSource().getCount('column') - 1);
46509
+ }
46510
+
46511
+ for (let i = lastIndex; i >= index + 1; i--) {
46512
+ if (!this.m_hiddenColumns.includes(i)) {
46513
+ return false;
46514
+ }
46515
+ }
46516
+
46517
+ return true;
46518
+ }
46519
+ return false;
46520
+ };
46521
+
46522
+ /**
46523
+ * returns visible index around given index in the direction mentioned
46524
+ * @param {String} axis
46525
+ * @param {Number} index
46526
+ * @param {Object} direction
46527
+ */
46528
+ DvtDataGrid.prototype.getVisibleCellIndexInDirection = function (axis, index, direction) {
46529
+ let newIndex = index;
46530
+ if (axis === 'column' || axis === 'columnEnd') {
46531
+ if (direction.right || direction.down) {
46532
+ while (this.m_hiddenColumns.includes(newIndex)) {
46533
+ newIndex += 1;
46534
+ }
46535
+ } else if (direction.left || direction.up) {
46536
+ while (this.m_hiddenColumns.includes(newIndex)) {
46537
+ newIndex -= 1;
46538
+ }
46539
+ }
46540
+ }
46541
+ return newIndex;
46542
+ };
46543
+
46544
+ /**
46545
+ * Hide and shift cells and headers when column is hidden
46546
+ * @param event
46547
+ */
46548
+ /* eslint-disable no-unused-vars */
46549
+ DvtDataGrid.prototype._handleHideColumn = function (event) {
46550
+ let targetHeader = this.findHeader(event.target);
46551
+ let targetCell = this.findCell(event.target);
46552
+
46553
+ let selectedArray = this.m_selection;
46554
+ let selection = this.m_options.options.selectionMode;
46555
+ let cellSelection = selection.cell;
46556
+ let rowSelection = selection.row;
46557
+ let columnArray = [];
46558
+
46559
+ // get all the column indexes to hide
46560
+ if (selectedArray.length && cellSelection === 'multiple') {
46561
+ // get all the column indexes from selected array of objects
46562
+ for (let i = 0; i < selectedArray.length; i++) {
46563
+ let startIndex = selectedArray[i].startIndex.column;
46564
+ let endIndex = selectedArray[i].endIndex.column;
46565
+
46566
+ // for the row selection case they will be ignored because endindex -1 < 0
46567
+ for (let j = startIndex; j <= endIndex; j++) {
46568
+ columnArray.push(j);
46569
+ }
46570
+ }
46571
+ } else if (cellSelection === 'single') {
46572
+ // get all the column indexes from selected array of objects
46573
+ if (selectedArray.length) {
46574
+ columnArray.push(selectedArray[0].startIndex.column);
46575
+ } else if (targetHeader) {
46576
+ // on context menu click on header (operates on active)
46577
+ columnArray = this.getIndexesByHeader(targetHeader);
46578
+ }
46579
+ } else if (cellSelection === 'none' && rowSelection === 'none') {
46580
+ // on context menu click on header (operates on active)
46581
+ if (targetHeader) {
46582
+ columnArray = this.getIndexesByHeader(targetHeader);
46583
+ } else if (targetCell) {
46584
+ // on context menu click on databody cell
46585
+ columnArray.push(this._getIndex(targetCell, 'column'));
46586
+ }
46587
+ } else if (rowSelection === 'multiple' || rowSelection === 'single') {
46588
+ // on context menu click on header (operates on active)
46589
+ if (targetHeader) {
46590
+ columnArray = this.getIndexesByHeader(targetHeader);
46591
+ } else {
46592
+ return;
46593
+ }
46594
+ } else {
46595
+ return;
46596
+ }
46597
+
46598
+ // looping each column index to hide and shift axis
46599
+ for (let i = 0; i < columnArray.length; i++) {
46600
+ let index = columnArray[i];
46601
+ if (!this.m_hiddenColumns.includes(index)) {
46602
+ this.m_hiddenColumns.push(index);
46603
+ }
46604
+ this.shiftCellsForHidability(index, true);
46605
+ }
46606
+ this.focusNextVisibleColumn(targetHeader, targetCell, event);
46607
+ this.deleteAndApplyHiddenIndicators(columnArray);
46608
+ this.fillViewport();
46609
+
46610
+ let details = {
46611
+ event: event,
46612
+ ui: {
46613
+ hiddenColumns: new Set(this.m_hiddenColumns)
46614
+ }
46615
+ };
46616
+
46617
+ this.fireEvent('columnHide', details);
46618
+ };
46619
+
46620
+ // moves focus to next visible cell or header
46621
+ DvtDataGrid.prototype.focusNextVisibleColumn = function (targetHeader, targetCell, event) {
46622
+ let activeIndex;
46623
+ if (targetHeader) {
46624
+ activeIndex = this._getIndex(targetHeader, 'column');
46625
+ } else if (targetCell) {
46626
+ activeIndex = this._getIndex(targetCell, 'column');
46627
+ } else {
46628
+ return;
46629
+ }
46630
+
46631
+ let newIndex;
46632
+
46633
+ if (!this.isLastOrLastNonHiddenIndex(activeIndex)) {
46634
+ newIndex = this.getVisibleCellIndexInDirection('column', activeIndex, { right: true });
46635
+ } else {
46636
+ newIndex = this.getVisibleCellIndexInDirection('column', activeIndex, { left: true });
46637
+ }
46638
+
46639
+ if (targetHeader) {
46640
+ let context = targetHeader[this.getResources().getMappedAttribute('context')];
46641
+ let level = context.level;
46642
+ let axis = context.axis;
46643
+ var nextHeader = this._getHeaderCellByIndex(newIndex, axis, level);
46644
+ this._setActive(nextHeader, {
46645
+ type: 'header',
46646
+ index: newIndex,
46647
+ level,
46648
+ axis
46649
+ });
46650
+ } else if (targetCell) {
46651
+ let row = targetCell[this.getResources().getMappedAttribute('context')].indexes.row;
46652
+ let newCellIndex = this.createIndex(row, newIndex);
46653
+ this._setActiveByIndex(newCellIndex, event);
46654
+ }
46655
+ };
46656
+
46657
+ DvtDataGrid.prototype._updateHiddenSection = function (columnArray) {
46658
+ // column array always has all indices to hide
46659
+ // we are filtering for indices which are in this.m_hiddenColumns and not in columnArray
46660
+ // to unhide
46661
+ const unHideArray = this.m_hiddenColumns.filter((item) => !columnArray.includes(item));
46662
+
46663
+ let latestHidden = columnArray.filter((item) => !this.m_hiddenColumns.includes(item));
46664
+
46665
+ // updating global this.m_hiddenColumns array with columnArray (new hidden array with indexes from external hide
46666
+ // including previous hidden indexes)
46667
+ this.m_hiddenColumns = columnArray;
46668
+
46669
+ for (let i = 0; i < latestHidden.length; i++) {
46670
+ let index = latestHidden[i];
46671
+ this.shiftCellsForHidability(index, true);
46672
+ }
46673
+
46674
+ // looping each index if any to unhide and shift axis
46675
+ for (let i = 0; i < unHideArray.length; i++) {
46676
+ let index = unHideArray[i];
46677
+ this.shiftCellsForHidability(index);
46678
+ }
46679
+
46680
+ this.deleteAndApplyHiddenIndicators(latestHidden);
46681
+ this.fillViewport();
46682
+ };
46683
+
46684
+ /* eslint-enable no-loop-func */
46685
+
46686
+ DvtDataGrid.prototype.containsHiddenItems = function (selectedArray) {
46687
+ let commonHiddenItems = selectedArray.filter((item) => this.m_hiddenColumns.includes(item));
46688
+ commonHiddenItems.sort((a, b) => a - b);
46689
+ return commonHiddenItems;
46690
+ };
46691
+
46692
+ /**
46693
+ * Unhide and shift cells and headers when column is hidden
46694
+ * @param event
46695
+ */
46696
+ /* eslint-disable no-unused-vars */
46697
+ DvtDataGrid.prototype._handleUnhideColumn = function (event) {
46698
+ let targetHeader = this.findHeader(event.target);
46699
+ let targetCell = this.findCell(event.target);
46700
+
46701
+ let selectedArray = this.m_selection;
46702
+ let columnArray = this.getColumnSelectionIndexArray();
46703
+
46704
+ let selection = this.m_options.options.selectionMode;
46705
+ let cellSelection = selection.cell;
46706
+ let rowSelection = selection.row;
46707
+
46708
+ let selectedHiddenIndexes = this.containsHiddenItems(columnArray);
46709
+ let unhideIndexes = [];
46710
+
46711
+ const unhideColumns = (unhideItems) => {
46712
+ // except for cell multiple, in all other selection modes,
46713
+ // we check if the columns on either side of the current column is hidden
46714
+ // and we unhide them.
46715
+ let beforeIndex = [];
46716
+ let afterIndex = [];
46717
+ for (let i = 0; i < unhideItems.length; i++) {
46718
+ let j = 0;
46719
+ while (this.m_hiddenColumns.includes(unhideItems[i] - 1 - j)) {
46720
+ beforeIndex.push(unhideItems[i] - 1 - j);
46721
+ j += 1;
46722
+ }
46723
+ let k = 0;
46724
+ while (this.m_hiddenColumns.includes(unhideItems[i] + 1 + k)) {
46725
+ afterIndex.push(unhideItems[i] + 1 + k);
46726
+ k += 1;
46727
+ }
46728
+ }
46729
+ return [...beforeIndex, ...afterIndex];
46730
+ };
46731
+
46732
+ if (this.areAllColumnsSelectedViaRowSelection()) {
46733
+ unhideIndexes = [...this.m_hiddenColumns];
46734
+ } else if (selectedArray.length && cellSelection === 'multiple') {
46735
+ for (let i = 0; i < columnArray.length; i++) {
46736
+ let index = columnArray[i];
46737
+ // if the selected range contains hidden items, unhide
46738
+ // else if it's first and last selected array, unhide everything
46739
+ // else if index is first visible column and if there are any hidden columns before
46740
+ // show all columns before the selected index
46741
+ // else if index is last visible column
46742
+ // show all columns after the selected index
46743
+ if (selectedHiddenIndexes.length) {
46744
+ unhideIndexes = selectedHiddenIndexes;
46745
+ break;
46746
+ } else if (
46747
+ this.isFirstOrFirstNonHiddenIndex(index) &&
46748
+ this.isLastOrLastNonHiddenIndex(index)
46749
+ ) {
46750
+ unhideIndexes = unhideColumns([index]);
46751
+ } else if (this.isFirstOrFirstNonHiddenIndex(index)) {
46752
+ let indexArray = [];
46753
+ for (let j = 0; j <= index - 1; j++) {
46754
+ indexArray.push(j);
46755
+ }
46756
+ unhideIndexes = indexArray;
46757
+ } else if (this.isLastOrLastNonHiddenIndex(index)) {
46758
+ let indexArray = [];
46759
+ for (let j = index + 1; j <= this._getMaxRight(); j++) {
46760
+ indexArray.push(j);
46761
+ }
46762
+ unhideIndexes = indexArray;
46763
+ }
46764
+ }
46765
+ } else if (cellSelection === 'single') {
46766
+ if (selectedArray.length) {
46767
+ unhideIndexes = unhideColumns(columnArray);
46768
+ } else if (targetHeader) {
46769
+ // on context menu click on header (operates on active)
46770
+ columnArray = this.getIndexesByHeader(targetHeader);
46771
+ unhideIndexes = unhideColumns(columnArray);
46772
+ }
46773
+ } else if (cellSelection === 'none' && rowSelection === 'none') {
46774
+ // on context menu click on header (operates on active)
46775
+ if (targetHeader) {
46776
+ columnArray = this.getIndexesByHeader(targetHeader);
46777
+ unhideIndexes = unhideColumns(columnArray);
46778
+ } else if (targetCell) {
46779
+ // on context menu click on databody cell
46780
+ columnArray.push(this._getIndex(targetCell, 'column'));
46781
+ unhideIndexes = unhideColumns(columnArray);
46782
+ }
46783
+ } else if (rowSelection === 'multiple' || rowSelection === 'single') {
46784
+ // on context menu click on header (operates on active)
46785
+ if (targetHeader) {
46786
+ columnArray = this.getIndexesByHeader(targetHeader);
46787
+ unhideIndexes = unhideColumns(columnArray);
46788
+ } else {
46789
+ return;
46790
+ }
46791
+ } else {
46792
+ return;
46793
+ }
46794
+
46795
+ this.unhighlightSelection();
46796
+ for (let i = 0; i < unhideIndexes.length; i++) {
46797
+ let index = unhideIndexes[i];
46798
+ // delete the index from hiddenColumns array
46799
+ let itemIndex = this.m_hiddenColumns.indexOf(index);
46800
+ if (itemIndex !== -1) {
46801
+ this.m_hiddenColumns.splice(itemIndex, 1);
46802
+ }
46803
+ this.shiftCellsForHidability(index);
46804
+ }
46805
+
46806
+ this.deleteAndApplyHiddenIndicators();
46807
+ this.applySelection();
46808
+ this._resetHeaderHighLight();
46809
+ this.resizeGrid();
46810
+
46811
+ let details = {
46812
+ event: event,
46813
+ ui: {
46814
+ hiddenColumns: new Set(this.m_hiddenColumns)
46815
+ }
46816
+ };
46817
+
46818
+ this.fireEvent('columnHide', details);
46819
+ };
46820
+
46821
+ DvtDataGrid.prototype.shiftCellsForHidability = function (index, hide) {
46822
+ var dir = this.getResources().isRTLMode() ? 'right' : 'left';
46823
+ const colHeaderCellClass = this.getMappedStyle('colheadercell');
46824
+ const colEndHeaderCellClass = this.getMappedStyle('colendheadercell');
46825
+
46826
+ let row = this.m_startRow;
46827
+ let column = index;
46828
+
46829
+ let cell;
46830
+ let columnKey;
46831
+ let cellContext;
46832
+ let currentElementWidth;
46833
+ let newElementWidth;
46834
+ let oldElementWidth;
46835
+ let newScrollerWidth;
46836
+ let widthChange;
46837
+
46838
+ let cellIndex = this.createIndex(row, column);
46839
+ cell = this._getCellByIndex(cellIndex);
46840
+ cellContext = cell[this.getResources().getMappedAttribute('context')];
46841
+ columnKey = cellContext.keys.column;
46842
+
46843
+ currentElementWidth = this.getElementWidth(cell);
46844
+
46845
+ oldElementWidth = this.m_sizingManager.getSize('column', columnKey);
46846
+
46847
+ if (hide) {
46848
+ newElementWidth = 0;
46849
+ } else {
46850
+ newElementWidth = oldElementWidth;
46851
+ }
46852
+
46853
+ widthChange = newElementWidth - currentElementWidth;
46854
+
46855
+ let headerRoot;
46856
+ let endHeaderRoot;
46857
+
46858
+ if (widthChange !== 0) {
46859
+ let isHideFrozenSection = false;
46860
+ if (this._hasFrozenColumns() && index <= this.m_frozenColIndex) {
46861
+ isHideFrozenSection = true;
46862
+ headerRoot = this.m_colHeaderFrozen;
46863
+ endHeaderRoot = this.m_colEndHeaderFrozen;
46864
+ } else {
46865
+ headerRoot = this.m_colHeader;
46866
+ endHeaderRoot = this.m_colEndHeader;
46867
+ }
46868
+
46869
+ if (this.m_databody.firstChild != null && !isHideFrozenSection) {
46870
+ let oldScrollerWidth = this.getElementWidth(this.m_databody.firstChild);
46871
+ newScrollerWidth = oldScrollerWidth + widthChange;
46872
+ this.setElementWidth(this.m_databody.firstChild, newScrollerWidth);
46873
+ if (this.m_databodyFrozenRow) {
46874
+ this.setElementWidth(this.m_databodyFrozenRow.firstChild, newScrollerWidth);
46875
+ }
46876
+ } else if (isHideFrozenSection && this.m_databodyFrozenCol) {
46877
+ let oldScrollerWidth = this.getElementWidth(this.m_databodyFrozenCol);
46878
+ let scrollerDir = this.getElementDir(this.m_databodyFrozenCol, dir);
46879
+ if (this.m_endRowEndHeader !== -1) {
46880
+ let endHeaderDir = this.getElementDir(this.m_rowEndHeader, dir);
46881
+ let newWidth = scrollerDir + oldScrollerWidth + widthChange;
46882
+ widthChange =
46883
+ newWidth > endHeaderDir ? endHeaderDir - (scrollerDir + oldScrollerWidth) : widthChange;
46884
+ }
46885
+ newScrollerWidth = oldScrollerWidth + widthChange;
46886
+ this.setElementWidth(this.m_databodyFrozenCol, newScrollerWidth);
46887
+ this.setElementWidth(this.m_databodyFrozenCol, newScrollerWidth);
46888
+ if (this.m_databodyFrozenCorner) {
46889
+ this.setElementWidth(this.m_databodyFrozenCorner, newScrollerWidth);
46890
+ this.setElementWidth(this.m_databodyFrozenCorner, newScrollerWidth);
46891
+ }
46892
+ }
46893
+
46894
+ let corner = false;
46895
+
46896
+ // shifting start/end headers and set display to none for single headers
46897
+ if (this.m_hasColHeader) {
46898
+ this._shiftHeadersAlongAxisInContainer(
46899
+ headerRoot.firstChild,
46900
+ column,
46901
+ widthChange,
46902
+ dir,
46903
+ colHeaderCellClass,
46904
+ 'column',
46905
+ true,
46906
+ hide
46907
+ );
46908
+ if (!isHideFrozenSection) {
46909
+ this.m_endColHeaderPixel += widthChange;
46910
+ }
46911
+ }
46912
+ if (this.m_hasColEndHeader) {
46913
+ this._shiftHeadersAlongAxisInContainer(
46914
+ endHeaderRoot.firstChild,
46915
+ column,
46916
+ widthChange,
46917
+ dir,
46918
+ colEndHeaderCellClass,
46919
+ 'column',
46920
+ true,
46921
+ hide
46922
+ );
46923
+ if (!isHideFrozenSection) {
46924
+ this.m_endColEndHeaderPixel += widthChange;
46925
+ }
46926
+ }
46927
+
46928
+ // shift the cells widths and left/right values in the databody
46929
+ if (!isHideFrozenSection) {
46930
+ this._shiftCellsAlongAxis('column', widthChange, column, false, undefined, undefined, true);
46931
+ if (this.m_databodyFrozenRow) {
46932
+ this._shiftFrozenCellsAlongAxis('column', widthChange, column, false, true);
46933
+ }
46934
+ this.m_endColPixel += widthChange;
46935
+ } else {
46936
+ if (this.m_databodyFrozenRow) {
46937
+ corner = true;
46938
+ }
46939
+ this._shiftCellsAlongAxis(
46940
+ 'column',
46941
+ widthChange,
46942
+ column,
46943
+ null,
46944
+ this.m_frozenColIndex,
46945
+ corner,
46946
+ true
46947
+ );
46948
+ }
46949
+
46950
+ this.manageResizeScrollbars();
46951
+ }
46952
+ };
46953
+
46954
+ /**
46955
+ * Delete existing and apply visual indicator for hidden columns
46956
+ * If nothing is passed, indicators are applied in just headers
46957
+ * @param {Array} - newHideColumnsArray is the array of indexes of databody indicators
46958
+ */
46959
+ DvtDataGrid.prototype.deleteAndApplyHiddenIndicators = function (newHideColumnsArray) {
46960
+ let columnStart = this.m_startCol;
46961
+ let columnEnd = this.m_endCol;
46962
+
46963
+ // delete all existing indicators
46964
+ this.deleteAllHiddenVisualIndicators();
46965
+
46966
+ // re-apply indicators
46967
+ this.applyHiddenIndicatorToRange(columnStart, columnEnd, newHideColumnsArray);
46968
+ };
46969
+
46970
+ DvtDataGrid.prototype.deleteAllHiddenVisualIndicators = function () {
46971
+ let colHeaderContainer = this.m_colHeader.firstChild;
46972
+ let colEndHeaderContainer = this.m_colEndHeader.firstChild;
46973
+
46974
+ // body
46975
+ this.deleteDatabodyHiddenVisualIndicators();
46976
+
46977
+ // headers
46978
+ colHeaderContainer
46979
+ .querySelectorAll(`.${this.getResources().getMappedStyle('headerHiddenIndicator')}`)
46980
+ .forEach((node) => this._remove(node));
46981
+
46982
+ // end headers
46983
+ colEndHeaderContainer
46984
+ .querySelectorAll(`.${this.getResources().getMappedStyle('headerHiddenIndicator')}`)
46985
+ .forEach((node) => this._remove(node));
46986
+
46987
+ if (this._hasFrozenColumns()) {
46988
+ let frozenColHeaderContainer = this.m_colHeaderFrozen.firstChild;
46989
+ let frozenColEndHeaderContainer = this.m_colEndHeaderFrozen.firstChild;
46990
+
46991
+ // frozen headers
46992
+ frozenColHeaderContainer
46993
+ .querySelectorAll(`.${this.getResources().getMappedStyle('headerHiddenIndicator')}`)
46994
+ .forEach((node) => this._remove(node));
46995
+
46996
+ // frozen end headers
46997
+ frozenColEndHeaderContainer
46998
+ .querySelectorAll(`.${this.getResources().getMappedStyle('headerHiddenIndicator')}`)
46999
+ .forEach((node) => this._remove(node));
47000
+ }
47001
+ };
47002
+
47003
+ DvtDataGrid.prototype.deleteDatabodyHiddenVisualIndicators = function () {
47004
+ let databodyContainer = this.m_databody.firstChild;
47005
+ databodyContainer
47006
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
47007
+ .forEach((node) => this._remove(node));
47008
+
47009
+ if (this._hasFrozenColumns()) {
47010
+ // deleting frozen columns's indicators
47011
+ let frozenDatabodyContainer = this.m_databodyFrozenCol.firstChild;
47012
+ frozenDatabodyContainer
47013
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
47014
+ .forEach((node) => this._remove(node));
47015
+ }
47016
+
47017
+ if (this._hasFrozenRows()) {
47018
+ // deleting frozen row's indicators
47019
+ let frozenRowDatabodyContainer = this.m_databodyFrozenRow.firstChild;
47020
+ frozenRowDatabodyContainer
47021
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
47022
+ .forEach((node) => this._remove(node));
47023
+ }
47024
+
47025
+ if (this._hasFrozenColumns() && this._hasFrozenRows()) {
47026
+ // frozen corner's indicators
47027
+ let frozenCornerDatabodyContainer = this.m_databodyFrozenCorner.firstChild;
47028
+ frozenCornerDatabodyContainer
47029
+ .querySelectorAll(`.${this.getResources().getMappedStyle('databodyHiddenIndicator')}`)
47030
+ .forEach((node) => this._remove(node));
47031
+ }
47032
+ };
47033
+
47034
+ /**
47035
+ * This method increments all hidden columns after start index on insertion
47036
+ * @param {Number} start
47037
+ * @param {Number} count
47038
+ */
47039
+ DvtDataGrid.prototype.updateHiddenColumnsForInsertion = function (start, count) {
47040
+ let changed = false;
47041
+
47042
+ // for insertion, we get each start index, count
47043
+ for (let i = 0; i < this.m_hiddenColumns.length; i++) {
47044
+ if (this.m_hiddenColumns[i] >= start) {
47045
+ this.m_hiddenColumns[i] += count;
47046
+ changed = true;
47047
+ }
47048
+ }
47049
+
47050
+ if (changed) {
47051
+ let details = {
47052
+ event: null,
47053
+ ui: {
47054
+ hiddenColumns: new Set(this.m_hiddenColumns)
47055
+ }
47056
+ };
47057
+
47058
+ this.fireEvent('columnHide', details);
47059
+ }
47060
+ };
47061
+
47062
+ /**
47063
+ * This method increments all hidden columns after start index on insertion
47064
+ * @param {Array} columnIndexes deleted indexes
47065
+ */
47066
+ DvtDataGrid.prototype.updateHiddenColumnsForDeletion = function (columnIndexes) {
47067
+ let changed = false;
47068
+
47069
+ // for deletion, we have all the indexes that need to be deleted
47070
+ columnIndexes.forEach((columnIndex) => {
47071
+ let find = this.m_hiddenColumns.indexOf((hiddenIndex) => {
47072
+ return hiddenIndex === columnIndex;
47073
+ });
47074
+
47075
+ if (find !== -1) {
47076
+ changed = true;
47077
+ this.m_hiddenColumns.splice(find, 1);
47078
+ }
47079
+
47080
+ this.m_hiddenColumns = this.m_hiddenColumns.map((hiddenIndex) => {
47081
+ if (hiddenIndex > columnIndex) {
47082
+ changed = true;
47083
+ return hiddenIndex - 1;
47084
+ }
47085
+ return hiddenIndex;
47086
+ });
47087
+ });
47088
+
47089
+ if (changed) {
47090
+ let details = {
47091
+ event: null,
47092
+ ui: {
47093
+ hiddenColumns: new Set(this.m_hiddenColumns)
47094
+ }
47095
+ };
47096
+
47097
+ this.fireEvent('columnHide', details);
47098
+ }
47099
+ };
47100
+
47101
+ // this function returns false if there is only one column left to hide
47102
+ DvtDataGrid.prototype.canHide = function () {
47103
+ let selectedArray = this.m_selection;
47104
+ let totalColumnCount = this.m_endCol - this.m_startCol + 1;
47105
+ let hiddenColumnsCount = this.m_hiddenColumns.length;
47106
+
47107
+ let columnArray = [];
47108
+ let selectionColumnArrayCount;
47109
+ let visibleColumnCount;
47110
+
47111
+ if (selectedArray.length && this.isMultipleSelection()) {
47112
+ // if a row is selected, can't hide
47113
+ if (this.areAllColumnsSelectedViaRowSelection()) {
47114
+ return false;
47115
+ }
47116
+ // get all the column indexes from selected array of objects
47117
+ for (let i = 0; i < selectedArray.length; i++) {
47118
+ let startIndex = selectedArray[i].startIndex.column;
47119
+ let endIndex = selectedArray[i].endIndex.column;
47120
+ for (let j = startIndex; j <= endIndex; j++) {
47121
+ if (!this.m_hiddenColumns.includes(j)) {
47122
+ columnArray.push(j);
47123
+ }
47124
+ }
47125
+ }
47126
+
47127
+ selectionColumnArrayCount = columnArray.length;
47128
+ } else {
47129
+ // count is 1 when the selection is not multiple
47130
+ selectionColumnArrayCount = 1;
47131
+ }
47132
+
47133
+ visibleColumnCount = totalColumnCount - hiddenColumnsCount - selectionColumnArrayCount;
47134
+
47135
+ return visibleColumnCount > 0;
47136
+ };
47137
+
47138
+ DvtDataGrid.prototype.isHiddenAdjacent = function (details) {
47139
+ let isCell = details.cell;
47140
+ let isHeader = details.header;
47141
+
47142
+ let columnIndex = details.index;
47143
+
47144
+ if (isCell) {
47145
+ let beforeIndex = columnIndex - 1;
47146
+ let afterIndex = columnIndex + 1;
47147
+ if (this.m_hiddenColumns.includes(beforeIndex)) {
47148
+ return true;
47149
+ } else if (this.m_hiddenColumns.includes(afterIndex)) {
47150
+ return true;
47151
+ }
47152
+ return false;
47153
+ } else if (isHeader) {
47154
+ let beforeIndex = [];
47155
+ let afterIndex = [];
47156
+ for (let i = 0; i < columnIndex.length; i++) {
47157
+ let j = 0;
47158
+ while (this.m_hiddenColumns.includes(columnIndex[i] - 1 - j)) {
47159
+ beforeIndex.push(columnIndex[i] - 1 - j);
47160
+ j += 1;
47161
+ }
47162
+ let k = 0;
47163
+ while (this.m_hiddenColumns.includes(columnIndex[i] + 1 + k)) {
47164
+ afterIndex.push(columnIndex[i] + 1 + k);
47165
+ k += 1;
47166
+ }
47167
+ }
47168
+ if (beforeIndex.length > 0 || afterIndex.length > 0) {
47169
+ return true;
47170
+ }
47171
+ return false;
47172
+ }
47173
+ return false;
47174
+ };
47175
+
47176
+ DvtDataGrid.prototype.getColumnSelectionIndexArray = function () {
47177
+ let selectedArray = this.m_selection;
47178
+ let columnArray = [];
47179
+
47180
+ if (selectedArray.length && !this.areAllColumnsSelectedViaRowSelection()) {
47181
+ // get all the column indexes from selected array of objects
47182
+ // handle all rows + columns case
47183
+ for (let i = 0; i < selectedArray.length; i++) {
47184
+ let startIndex = selectedArray[i].startIndex.column;
47185
+ let endIndex = selectedArray[i].endIndex.column;
47186
+ for (let j = startIndex; j <= endIndex; j++) {
47187
+ columnArray.push(j);
47188
+ }
47189
+ }
47190
+ columnArray.sort((a, b) => a - b);
47191
+ }
47192
+ return columnArray;
47193
+ };
47194
+
47195
+ DvtDataGrid.prototype.areAllColumnsSelectedViaRowSelection = function () {
47196
+ // returns true when it's cell selection multiple and rows are selected
47197
+ let selectedArray = this.m_selection;
47198
+
47199
+ let selection = this.m_options.options.selectionMode;
47200
+ let cellSelection = selection.cell;
47201
+ let rowSelection = selection.row;
47202
+
47203
+ let isRowSelection = rowSelection === 'multiple' || rowSelection === 'single';
47204
+
47205
+ if (selectedArray.length && (cellSelection === 'multiple' || isRowSelection)) {
47206
+ for (let i = 0; i < selectedArray.length; i++) {
47207
+ let startIndex = selectedArray[i].startIndex.column;
47208
+ let endIndex = selectedArray[i].endIndex.column;
47209
+ /* eslint-disable eqeqeq */
47210
+ if (
47211
+ (startIndex === 0 && endIndex === -1) ||
47212
+ (startIndex == undefined && endIndex == undefined)
47213
+ ) {
47214
+ return true;
47215
+ }
47216
+ /* eslint-enable eqeqeq */
47217
+ }
47218
+ }
47219
+ return false;
47220
+ };
47221
+
47222
+ DvtDataGrid.prototype._getCellHidabilityContextMenuCapability = function (cell) {
47223
+ let selectionMode = this.m_options.options.selectionMode;
47224
+ let cellSelection = selectionMode.cell;
47225
+ let rowSelection = selectionMode.row;
47226
+
47227
+ let canHide = false;
47228
+ let canUnhide = false;
47229
+
47230
+ let columnArray = this.getColumnSelectionIndexArray();
47231
+ const context = this.getResources().getMappedAttribute('context');
47232
+
47233
+ // for cell selection multiple hide is enabled all the time except when all visible columns are selected or when rows are selected
47234
+ // for cell selection multiple unhide is enabled when there are hidden columns in the selection or when rows are selected
47235
+ // for cell selection single, hide is enabled all the time except when all visible columns are selected
47236
+ // for cell selection single, unhide is enabled when there are hidden columns adjacent to the selected cell
47237
+ // for row selection single, hide is disabled. Unhide is enabled if there are any hidden columns
47238
+ // for cell/row selection none, hide is enabled all the time except if it's last visible column.
47239
+ // for cell/row selection none, unhide is enabled when there are hidden columns adjacent to the Active cell
47240
+
47241
+ // for cell/row single/multiple
47242
+ if (this._isSelectionEnabled()) {
47243
+ // cell/row multiple
47244
+ if (this.isMultipleSelection()) {
47245
+ if (cellSelection === 'multiple') {
47246
+ if (this.canHide()) {
47247
+ canHide = true;
47248
+ }
47249
+ if (columnArray.length > 0) {
47250
+ let firstIndex = columnArray[0];
47251
+ let lastIndex = columnArray[columnArray.length - 1];
47252
+ if (
47253
+ this.containsHiddenItems(columnArray).length > 0 ||
47254
+ this.isFirstOrFirstNonHiddenIndex(firstIndex) ||
47255
+ this.isLastOrLastNonHiddenIndex(lastIndex)
47256
+ ) {
47257
+ canUnhide = true;
47258
+ }
47259
+ }
47260
+ } else if (rowSelection === 'multiple' && this.m_hiddenColumns.length > 0) {
47261
+ canUnhide = true;
47262
+ }
47263
+ } else if (cellSelection === 'single') {
47264
+ if (this.canHide()) {
47265
+ canHide = true;
47266
+ }
47267
+ if (this.isHiddenAdjacent({ cell: true, index: columnArray[0] })) {
47268
+ canUnhide = true;
47269
+ }
47270
+ } else if (rowSelection === 'single' && this.m_hiddenColumns.length > 0) {
47271
+ canUnhide = true;
47272
+ }
47273
+ } else if (cellSelection === 'none' && rowSelection === 'none') {
47274
+ if (this.canHide()) {
47275
+ canHide = true;
47276
+ }
47277
+ let columnIndex = cell[context].indexes.column;
47278
+ if (this.isHiddenAdjacent({ cell: true, index: columnIndex })) {
47279
+ canUnhide = true;
47280
+ }
47281
+ }
47282
+
47283
+ return { canHide, canUnhide };
47284
+ };
47285
+
47286
+ DvtDataGrid.prototype._getHeaderHidabilityContextMenuCapability = function (header, actualCell) {
47287
+ let selectionMode = this.m_options.options.selectionMode;
47288
+ let cellSelection = selectionMode.cell;
47289
+ let rowSelection = selectionMode.row;
47290
+ var axis = this.getHeaderCellAxis(header);
47291
+
47292
+ let canHide = false;
47293
+ let canUnhide = false;
47294
+
47295
+ let columnArray = this.getColumnSelectionIndexArray();
47296
+ let isHeaderSelected = this.m_utils.containsCSSClassName(header, this.getMappedStyle('selected'));
47297
+
47298
+ if (this._isSelectionEnabled() && cellSelection === 'multiple') {
47299
+ if (isHeaderSelected && this.canHide()) {
47300
+ canHide = true;
47301
+ }
47302
+ if (columnArray.length > 0) {
47303
+ let firstIndex = columnArray[0];
47304
+ let lastIndex = columnArray[columnArray.length - 1];
47305
+ if (
47306
+ this.containsHiddenItems(columnArray).length > 0 ||
47307
+ this.isFirstOrFirstNonHiddenIndex(firstIndex) ||
47308
+ this.isLastOrLastNonHiddenIndex(lastIndex)
47309
+ ) {
47310
+ canUnhide = true;
47311
+ }
47312
+ } else if (this.areAllColumnsSelectedViaRowSelection() && this.m_hiddenColumns.length > 0) {
47313
+ canUnhide = true;
47314
+ }
47315
+ } else if (
47316
+ rowSelection === 'multiple' ||
47317
+ cellSelection === 'single' ||
47318
+ rowSelection === 'single' ||
47319
+ (cellSelection === 'none' && rowSelection === 'none')
47320
+ ) {
47321
+ if (this.m_hiddenColumns.length > 0) {
47322
+ canUnhide = true;
47323
+ }
47324
+
47325
+ // right click on column header with row selection
47326
+ if ((axis === 'column' || axis === 'columnEnd') && !actualCell) {
47327
+ canHide = true;
47328
+
47329
+ let columnIndex = this.getIndexesByHeader(header);
47330
+ if (this.isHiddenAdjacent({ header: true, index: columnIndex })) {
47331
+ canUnhide = true;
47332
+ } else {
47333
+ canUnhide = false;
47334
+ }
47335
+ }
47336
+ }
47337
+
47338
+ return { canHide, canUnhide };
47339
+ };