@tylertech/forge 2.8.0 → 2.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/custom-elements.json +4350 -82
  2. package/dist/esm/accordion/index.js +7 -7
  3. package/dist/esm/app-bar/help-button/index.js +9 -9
  4. package/dist/esm/app-bar/index.js +15 -15
  5. package/dist/esm/app-bar/menu-button/index.js +6 -6
  6. package/dist/esm/app-bar/notification-button/index.js +6 -6
  7. package/dist/esm/app-bar/profile-button/index.js +7 -7
  8. package/dist/esm/app-bar/search/index.js +5 -5
  9. package/dist/esm/autocomplete/index.js +13 -13
  10. package/dist/esm/banner/index.js +6 -6
  11. package/dist/esm/bottom-sheet/index.js +5 -5
  12. package/dist/esm/busy-indicator/index.js +4 -4
  13. package/dist/esm/button/index.js +3 -3
  14. package/dist/esm/calendar/calendar-dropdown/index.js +2 -2
  15. package/dist/esm/calendar/calendar-menu/index.js +2 -2
  16. package/dist/esm/calendar/index.js +7 -7
  17. package/dist/esm/checkbox/index.js +2 -2
  18. package/dist/esm/chip-field/index.js +9 -9
  19. package/dist/esm/chips/chip/index.js +6 -6
  20. package/dist/esm/chips/chip-set/index.js +6 -6
  21. package/dist/esm/chips/index.js +7 -7
  22. package/dist/esm/chunks/{chunk.VXVE7KEM.js → chunk.2QB3WXEH.js} +4 -4
  23. package/dist/esm/chunks/{chunk.VXVE7KEM.js.map → chunk.2QB3WXEH.js.map} +0 -0
  24. package/dist/esm/chunks/{chunk.3QXCVTCP.js → chunk.2Z23LQVW.js} +2 -2
  25. package/dist/esm/chunks/{chunk.3QXCVTCP.js.map → chunk.2Z23LQVW.js.map} +0 -0
  26. package/dist/esm/chunks/{chunk.BEAJZPWS.js → chunk.3TFBNPQF.js} +2 -2
  27. package/dist/esm/chunks/{chunk.BEAJZPWS.js.map → chunk.3TFBNPQF.js.map} +0 -0
  28. package/dist/esm/chunks/{chunk.2MBI5DLT.js → chunk.3ULPDQ2I.js} +71 -15
  29. package/dist/esm/chunks/chunk.3ULPDQ2I.js.map +7 -0
  30. package/dist/esm/chunks/{chunk.JC2PZ4TS.js → chunk.5DJS3K7V.js} +10 -8
  31. package/dist/esm/chunks/chunk.5DJS3K7V.js.map +7 -0
  32. package/dist/esm/chunks/{chunk.GHZ75UPO.js → chunk.5EBM357P.js} +3 -3
  33. package/dist/esm/chunks/{chunk.GHZ75UPO.js.map → chunk.5EBM357P.js.map} +0 -0
  34. package/dist/esm/chunks/{chunk.J5NUYQ4D.js → chunk.5XUOWRCK.js} +3 -3
  35. package/dist/esm/chunks/{chunk.J5NUYQ4D.js.map → chunk.5XUOWRCK.js.map} +0 -0
  36. package/dist/esm/chunks/{chunk.6EGTLHJS.js → chunk.65ZCTZEM.js} +6 -2
  37. package/dist/esm/chunks/{chunk.6EGTLHJS.js.map → chunk.65ZCTZEM.js.map} +2 -2
  38. package/dist/esm/chunks/chunk.A5GIQB6E.js +20 -0
  39. package/dist/esm/chunks/{chunk.2NMHSTAO.js.map → chunk.A5GIQB6E.js.map} +3 -3
  40. package/dist/esm/chunks/{chunk.PM7D2SUE.js → chunk.A6YZB7UK.js} +33 -2
  41. package/dist/esm/chunks/{chunk.PM7D2SUE.js.map → chunk.A6YZB7UK.js.map} +2 -2
  42. package/dist/esm/chunks/chunk.AJJILT3A.js +6 -0
  43. package/dist/esm/chunks/chunk.AJJILT3A.js.map +7 -0
  44. package/dist/esm/chunks/chunk.CGKWQIL3.js +1236 -0
  45. package/dist/esm/chunks/chunk.CGKWQIL3.js.map +7 -0
  46. package/dist/esm/chunks/chunk.CGOYP37Z.js +345 -0
  47. package/dist/esm/chunks/chunk.CGOYP37Z.js.map +7 -0
  48. package/dist/esm/chunks/{chunk.QYWAZCBX.js → chunk.CTMCTMRO.js} +2 -2
  49. package/dist/esm/chunks/{chunk.QYWAZCBX.js.map → chunk.CTMCTMRO.js.map} +0 -0
  50. package/dist/esm/chunks/{chunk.2NMHSTAO.js → chunk.D2AL6QLF.js} +10 -13
  51. package/dist/esm/chunks/chunk.D2AL6QLF.js.map +7 -0
  52. package/dist/esm/chunks/{chunk.U5ECVIX5.js → chunk.D3MXPNTL.js} +2 -2
  53. package/dist/esm/chunks/{chunk.U5ECVIX5.js.map → chunk.D3MXPNTL.js.map} +0 -0
  54. package/dist/esm/chunks/{chunk.HAWYW54W.js → chunk.D45QN7JA.js} +5 -5
  55. package/dist/esm/chunks/{chunk.HAWYW54W.js.map → chunk.D45QN7JA.js.map} +0 -0
  56. package/dist/esm/chunks/{chunk.2WBHHTUM.js → chunk.EFQZGAM5.js} +2 -2
  57. package/dist/esm/chunks/{chunk.2WBHHTUM.js.map → chunk.EFQZGAM5.js.map} +0 -0
  58. package/dist/esm/chunks/{chunk.BLZJIYMG.js → chunk.F5O63UF4.js} +2 -2
  59. package/dist/esm/chunks/{chunk.BLZJIYMG.js.map → chunk.F5O63UF4.js.map} +0 -0
  60. package/dist/esm/chunks/{chunk.RL7ZFLMG.js → chunk.FRT7RD5L.js} +2 -2
  61. package/dist/esm/chunks/{chunk.RL7ZFLMG.js.map → chunk.FRT7RD5L.js.map} +0 -0
  62. package/dist/esm/chunks/{chunk.LK2DN5KX.js → chunk.GG3O42UP.js} +4 -4
  63. package/dist/esm/chunks/{chunk.LK2DN5KX.js.map → chunk.GG3O42UP.js.map} +0 -0
  64. package/dist/esm/chunks/{chunk.WSH4S3GM.js → chunk.GVR5LXMJ.js} +2 -2
  65. package/dist/esm/chunks/{chunk.WSH4S3GM.js.map → chunk.GVR5LXMJ.js.map} +0 -0
  66. package/dist/esm/chunks/{chunk.LHWZ4KZU.js → chunk.HL2ORG3A.js} +4 -4
  67. package/dist/esm/chunks/{chunk.LHWZ4KZU.js.map → chunk.HL2ORG3A.js.map} +1 -1
  68. package/dist/esm/chunks/{chunk.ELAJS33V.js → chunk.J2FCOFOE.js} +2 -2
  69. package/dist/esm/chunks/{chunk.ELAJS33V.js.map → chunk.J2FCOFOE.js.map} +0 -0
  70. package/dist/esm/chunks/{chunk.PKZ43JNW.js → chunk.JM6SZSUI.js} +50 -4
  71. package/dist/esm/chunks/{chunk.PKZ43JNW.js.map → chunk.JM6SZSUI.js.map} +2 -2
  72. package/dist/esm/chunks/{chunk.VXAPRFMK.js → chunk.K4B7NJ2G.js} +4 -4
  73. package/dist/esm/chunks/{chunk.VXAPRFMK.js.map → chunk.K4B7NJ2G.js.map} +0 -0
  74. package/dist/esm/chunks/{chunk.67B6JDOJ.js → chunk.KVOXJKCU.js} +3 -3
  75. package/dist/esm/chunks/{chunk.67B6JDOJ.js.map → chunk.KVOXJKCU.js.map} +0 -0
  76. package/dist/esm/chunks/{chunk.ITQ55IPH.js → chunk.LTN47GWQ.js} +4 -4
  77. package/dist/esm/chunks/{chunk.ITQ55IPH.js.map → chunk.LTN47GWQ.js.map} +0 -0
  78. package/dist/esm/chunks/{chunk.UPW5HUKB.js → chunk.NU3XRT37.js} +5 -5
  79. package/dist/esm/chunks/{chunk.UPW5HUKB.js.map → chunk.NU3XRT37.js.map} +0 -0
  80. package/dist/esm/chunks/{chunk.I6PJGNJS.js → chunk.NWPH4FRE.js} +6 -6
  81. package/dist/esm/chunks/chunk.NWPH4FRE.js.map +7 -0
  82. package/dist/esm/chunks/{chunk.KNR5DXE4.js → chunk.OTJJU35B.js} +2 -2
  83. package/dist/esm/chunks/{chunk.KNR5DXE4.js.map → chunk.OTJJU35B.js.map} +0 -0
  84. package/dist/esm/chunks/{chunk.BVGJFMEG.js → chunk.PRRL5C6Z.js} +7 -7
  85. package/dist/esm/chunks/{chunk.BVGJFMEG.js.map → chunk.PRRL5C6Z.js.map} +0 -0
  86. package/dist/esm/chunks/{chunk.TIUNGGBF.js → chunk.QFG7SPQV.js} +3 -3
  87. package/dist/esm/chunks/{chunk.TIUNGGBF.js.map → chunk.QFG7SPQV.js.map} +0 -0
  88. package/dist/esm/chunks/{chunk.XE7ZMJBZ.js → chunk.QKCIMRRG.js} +32 -17
  89. package/dist/esm/chunks/chunk.QKCIMRRG.js.map +7 -0
  90. package/dist/esm/chunks/{chunk.IGBDDH3J.js → chunk.QRGWP6Z2.js} +3 -3
  91. package/dist/esm/chunks/chunk.QRGWP6Z2.js.map +7 -0
  92. package/dist/esm/chunks/{chunk.MUP3NY6M.js → chunk.QSFE3J74.js} +5 -5
  93. package/dist/esm/chunks/{chunk.MUP3NY6M.js.map → chunk.QSFE3J74.js.map} +0 -0
  94. package/dist/esm/chunks/{chunk.UFMUXBT4.js → chunk.R357QRWX.js} +53 -49
  95. package/dist/esm/chunks/chunk.R357QRWX.js.map +7 -0
  96. package/dist/esm/chunks/{chunk.46BED43J.js → chunk.SVS3G6Y7.js} +5 -19
  97. package/dist/esm/chunks/chunk.SVS3G6Y7.js.map +7 -0
  98. package/dist/esm/chunks/{chunk.S3UVF647.js → chunk.TBQ72CBS.js} +3 -3
  99. package/dist/esm/chunks/{chunk.S3UVF647.js.map → chunk.TBQ72CBS.js.map} +0 -0
  100. package/dist/esm/chunks/{chunk.ZSHQMR4O.js → chunk.TSHHEAIC.js} +2 -2
  101. package/dist/esm/chunks/{chunk.ZSHQMR4O.js.map → chunk.TSHHEAIC.js.map} +0 -0
  102. package/dist/esm/chunks/{chunk.EBC2HGO3.js → chunk.UAW46BWM.js} +3 -3
  103. package/dist/esm/chunks/{chunk.EBC2HGO3.js.map → chunk.UAW46BWM.js.map} +0 -0
  104. package/dist/esm/chunks/{chunk.FJJVIMZ2.js → chunk.V6ESTGWD.js} +5 -5
  105. package/dist/esm/chunks/chunk.V6ESTGWD.js.map +7 -0
  106. package/dist/esm/chunks/{chunk.5OYAJ36F.js → chunk.VLAUYV76.js} +2 -2
  107. package/dist/esm/chunks/{chunk.5OYAJ36F.js.map → chunk.VLAUYV76.js.map} +0 -0
  108. package/dist/esm/chunks/{chunk.L4OUV7W6.js → chunk.VSKPHQZE.js} +4 -4
  109. package/dist/esm/chunks/{chunk.L4OUV7W6.js.map → chunk.VSKPHQZE.js.map} +0 -0
  110. package/dist/esm/chunks/{chunk.GS2AXUCN.js → chunk.WOL4KRZK.js} +6 -1
  111. package/dist/esm/chunks/{chunk.GS2AXUCN.js.map → chunk.WOL4KRZK.js.map} +1 -1
  112. package/dist/esm/chunks/{chunk.TM46MNYN.js → chunk.WQRR5OGK.js} +5 -5
  113. package/dist/esm/chunks/{chunk.TM46MNYN.js.map → chunk.WQRR5OGK.js.map} +0 -0
  114. package/dist/esm/chunks/chunk.X2RP4QW3.js +6 -0
  115. package/dist/esm/chunks/chunk.X2RP4QW3.js.map +7 -0
  116. package/dist/esm/chunks/{chunk.K7OLG7CS.js → chunk.X3TV6IHS.js} +2 -2
  117. package/dist/esm/chunks/{chunk.K7OLG7CS.js.map → chunk.X3TV6IHS.js.map} +0 -0
  118. package/dist/esm/chunks/{chunk.U37G47LH.js → chunk.XC56O73Q.js} +6 -6
  119. package/dist/esm/chunks/{chunk.U37G47LH.js.map → chunk.XC56O73Q.js.map} +0 -0
  120. package/dist/esm/chunks/{chunk.QWW6A7AF.js → chunk.XRK62M5E.js} +2 -2
  121. package/dist/esm/chunks/{chunk.QWW6A7AF.js.map → chunk.XRK62M5E.js.map} +0 -0
  122. package/dist/esm/chunks/{chunk.ZLF2G3YT.js → chunk.XSS7BYJS.js} +3 -3
  123. package/dist/esm/chunks/{chunk.ZLF2G3YT.js.map → chunk.XSS7BYJS.js.map} +0 -0
  124. package/dist/esm/chunks/{chunk.PNKLV3BK.js → chunk.YCHKXJLN.js} +2 -2
  125. package/dist/esm/chunks/{chunk.PNKLV3BK.js.map → chunk.YCHKXJLN.js.map} +0 -0
  126. package/dist/esm/chunks/{chunk.UQ3QTUUB.js → chunk.YMP3JQQQ.js} +2 -2
  127. package/dist/esm/chunks/{chunk.UQ3QTUUB.js.map → chunk.YMP3JQQQ.js.map} +0 -0
  128. package/dist/esm/chunks/{chunk.7I2XNJBL.js → chunk.YTFOQNFU.js} +6 -16
  129. package/dist/esm/chunks/chunk.YTFOQNFU.js.map +7 -0
  130. package/dist/esm/chunks/{chunk.IJW2YKP3.js → chunk.Z5KLXKMB.js} +21 -15
  131. package/dist/esm/chunks/chunk.Z5KLXKMB.js.map +7 -0
  132. package/dist/esm/chunks/{chunk.MBZLA635.js → chunk.ZIZGRSAX.js} +6 -6
  133. package/dist/esm/chunks/{chunk.MBZLA635.js.map → chunk.ZIZGRSAX.js.map} +1 -1
  134. package/dist/esm/chunks/{chunk.CLEUHAZ6.js → chunk.ZLX3L6KW.js} +2 -2
  135. package/dist/esm/chunks/{chunk.CLEUHAZ6.js.map → chunk.ZLX3L6KW.js.map} +0 -0
  136. package/dist/esm/color-picker/index.js +6 -6
  137. package/dist/esm/core/index.js +14 -2
  138. package/dist/esm/core/utils/index.js +14 -2
  139. package/dist/esm/date-picker/index.js +11 -11
  140. package/dist/esm/date-range-picker/index.js +11 -11
  141. package/dist/esm/dialog/index.js +5 -5
  142. package/dist/esm/drawer/base/index.js +2 -2
  143. package/dist/esm/drawer/drawer/index.js +3 -3
  144. package/dist/esm/drawer/index.js +5 -5
  145. package/dist/esm/drawer/mini-drawer/index.js +3 -3
  146. package/dist/esm/drawer/modal-drawer/index.js +3 -3
  147. package/dist/esm/expansion-panel/index.js +6 -6
  148. package/dist/esm/file-picker/index.js +4 -4
  149. package/dist/esm/icon/index.js +3 -3
  150. package/dist/esm/icon-button/index.js +4 -4
  151. package/dist/esm/index.js +168 -93
  152. package/dist/esm/list-dropdown/index.js +5 -5
  153. package/dist/esm/menu/index.js +7 -7
  154. package/dist/esm/open-icon/index.js +5 -5
  155. package/dist/esm/paginator/index.js +12 -12
  156. package/dist/esm/profile-card/index.js +4 -4
  157. package/dist/esm/quantity-field/index.js +6 -7
  158. package/dist/esm/select/core/index.js +7 -7
  159. package/dist/esm/select/index.js +11 -11
  160. package/dist/esm/select/select/index.js +9 -9
  161. package/dist/esm/select/select-dropdown/index.js +9 -9
  162. package/dist/esm/slider/index.js +2 -2
  163. package/dist/esm/split-view/core/index.js +7 -0
  164. package/dist/esm/split-view/core/index.js.map +7 -0
  165. package/dist/esm/split-view/index.js +92 -0
  166. package/dist/esm/split-view/index.js.map +7 -0
  167. package/dist/esm/split-view/split-view/index.js +44 -0
  168. package/dist/esm/split-view/split-view/index.js.map +7 -0
  169. package/dist/esm/split-view/split-view-panel/index.js +78 -0
  170. package/dist/esm/split-view/split-view-panel/index.js.map +7 -0
  171. package/dist/esm/stepper/index.js +6 -6
  172. package/dist/esm/stepper/step/index.js +5 -5
  173. package/dist/esm/stepper/stepper/index.js +6 -6
  174. package/dist/esm/switch/index.js +2 -2
  175. package/dist/esm/table/index.js +7 -7
  176. package/dist/esm/tabs/index.js +6 -6
  177. package/dist/esm/tabs/tab-bar/index.js +6 -6
  178. package/dist/esm/text-field/index.js +2 -2
  179. package/dist/esm/time-picker/index.js +11 -10
  180. package/dist/esm/toast/index.js +7 -7
  181. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.d.ts +6 -1
  182. package/esm/app-bar/profile-button/app-bar-profile-button-adapter.js +30 -12
  183. package/esm/app-bar/profile-button/app-bar-profile-button-constants.d.ts +4 -0
  184. package/esm/app-bar/profile-button/app-bar-profile-button-constants.js +2 -0
  185. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.d.ts +8 -0
  186. package/esm/app-bar/profile-button/app-bar-profile-button-foundation.js +22 -0
  187. package/esm/app-bar/profile-button/app-bar-profile-button.d.ts +4 -0
  188. package/esm/app-bar/profile-button/app-bar-profile-button.js +14 -0
  189. package/esm/autocomplete/autocomplete-adapter.d.ts +2 -0
  190. package/esm/autocomplete/autocomplete-adapter.js +4 -0
  191. package/esm/autocomplete/autocomplete-foundation.js +10 -7
  192. package/esm/chip-field/chip-field-adapter.d.ts +1 -1
  193. package/esm/chip-field/chip-field-adapter.js +2 -2
  194. package/esm/chip-field/chip-field.js +1 -1
  195. package/esm/chips/chip/chip.js +1 -1
  196. package/esm/core/utils/event-utils.d.ts +1 -0
  197. package/esm/core/utils/event-utils.js +3 -0
  198. package/esm/core/utils/utils.d.ts +36 -0
  199. package/esm/core/utils/utils.js +57 -0
  200. package/esm/date-picker/date-picker-foundation.js +3 -1
  201. package/esm/field/field-adapter.d.ts +4 -4
  202. package/esm/field/field-adapter.js +4 -13
  203. package/esm/field/field-foundation.js +2 -2
  204. package/esm/index.d.ts +1 -0
  205. package/esm/index.js +3 -0
  206. package/esm/profile-card/profile-card-adapter.d.ts +4 -0
  207. package/esm/profile-card/profile-card-adapter.js +6 -0
  208. package/esm/profile-card/profile-card-constants.d.ts +4 -0
  209. package/esm/profile-card/profile-card-constants.js +5 -1
  210. package/esm/profile-card/profile-card-foundation.d.ts +6 -0
  211. package/esm/profile-card/profile-card-foundation.js +22 -0
  212. package/esm/profile-card/profile-card.d.ts +4 -0
  213. package/esm/profile-card/profile-card.js +15 -1
  214. package/esm/quantity-field/quantity-field-adapter.d.ts +0 -2
  215. package/esm/quantity-field/quantity-field-adapter.js +1 -13
  216. package/esm/quantity-field/quantity-field-foundation.js +0 -1
  217. package/esm/quantity-field/quantity-field.js +1 -1
  218. package/esm/select/select/select.js +1 -1
  219. package/esm/split-view/core/index.d.ts +6 -0
  220. package/esm/split-view/core/index.js +6 -0
  221. package/esm/split-view/core/split-view-base.d.ts +14 -0
  222. package/esm/split-view/core/split-view-base.js +6 -0
  223. package/esm/split-view/index.d.ts +8 -0
  224. package/esm/split-view/index.js +8 -0
  225. package/esm/split-view/split-view/index.d.ts +10 -0
  226. package/esm/split-view/split-view/index.js +14 -0
  227. package/esm/split-view/split-view/split-view-adapter.d.ts +29 -0
  228. package/esm/split-view/split-view/split-view-adapter.js +62 -0
  229. package/esm/split-view/split-view/split-view-constants.d.ts +41 -0
  230. package/esm/split-view/split-view/split-view-constants.js +40 -0
  231. package/esm/split-view/split-view/split-view-foundation.d.ts +86 -0
  232. package/esm/split-view/split-view/split-view-foundation.js +179 -0
  233. package/esm/split-view/split-view/split-view.d.ts +67 -0
  234. package/esm/split-view/split-view/split-view.js +103 -0
  235. package/esm/split-view/split-view-panel/index.d.ts +11 -0
  236. package/esm/split-view/split-view-panel/index.js +15 -0
  237. package/esm/split-view/split-view-panel/split-view-panel-adapter.d.ts +171 -0
  238. package/esm/split-view/split-view-panel/split-view-panel-adapter.js +295 -0
  239. package/esm/split-view/split-view-panel/split-view-panel-constants.d.ts +97 -0
  240. package/esm/split-view/split-view-panel/split-view-panel-constants.js +78 -0
  241. package/esm/split-view/split-view-panel/split-view-panel-foundation.d.ts +235 -0
  242. package/esm/split-view/split-view-panel/split-view-panel-foundation.js +667 -0
  243. package/esm/split-view/split-view-panel/split-view-panel-utils.d.ts +130 -0
  244. package/esm/split-view/split-view-panel/split-view-panel-utils.js +300 -0
  245. package/esm/split-view/split-view-panel/split-view-panel.d.ts +105 -0
  246. package/esm/split-view/split-view-panel/split-view-panel.js +173 -0
  247. package/esm/table/table-utils.d.ts +2 -2
  248. package/esm/table/table-utils.js +30 -14
  249. package/esm/text-field/text-field-adapter.d.ts +1 -1
  250. package/esm/text-field/text-field-adapter.js +2 -2
  251. package/esm/text-field/text-field.js +1 -1
  252. package/package.json +2 -2
  253. package/styles/chip-field/_base.scss +2 -2
  254. package/styles/chip-field/_selector.scss +1 -1
  255. package/styles/chip-field/_variables.scss +1 -1
  256. package/styles/chips/chip/_mixins.scss +4 -3
  257. package/styles/chips/chip/_variables.scss +3 -2
  258. package/styles/field/_base.scss +16 -4
  259. package/styles/field/_selector.scss +4 -4
  260. package/styles/quantity-field/_mixins.scss +1 -1
  261. package/styles/select/select/_selector.scss +1 -1
  262. package/styles/split-view/split-view/_mixins.scss +48 -0
  263. package/styles/split-view/split-view/split-view.scss +25 -0
  264. package/styles/split-view/split-view-panel/_mixins.scss +260 -0
  265. package/styles/split-view/split-view-panel/_variables.scss +7 -0
  266. package/styles/split-view/split-view-panel/split-view-panel.scss +23 -0
  267. package/dist/esm/chunks/chunk.2MBI5DLT.js.map +0 -7
  268. package/dist/esm/chunks/chunk.46BED43J.js.map +0 -7
  269. package/dist/esm/chunks/chunk.7I2XNJBL.js.map +0 -7
  270. package/dist/esm/chunks/chunk.FJJVIMZ2.js.map +0 -7
  271. package/dist/esm/chunks/chunk.I6PJGNJS.js.map +0 -7
  272. package/dist/esm/chunks/chunk.IGBDDH3J.js.map +0 -7
  273. package/dist/esm/chunks/chunk.IJW2YKP3.js.map +0 -7
  274. package/dist/esm/chunks/chunk.JC2PZ4TS.js.map +0 -7
  275. package/dist/esm/chunks/chunk.UFMUXBT4.js.map +0 -7
  276. package/dist/esm/chunks/chunk.XE7ZMJBZ.js.map +0 -7
@@ -0,0 +1,667 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022 Tyler Technologies, Inc.
4
+ * License: Apache-2.0
5
+ */
6
+ import { isDefined } from '@tylertech/forge-core';
7
+ import { safeMin, scaleValue } from '../../core/utils/utils';
8
+ import { eventIncludesArrowKey } from '../../core/utils/event-utils';
9
+ import { SPLIT_VIEW_PANEL_CONSTANTS } from './split-view-panel-constants';
10
+ import { clampSize, clearState, getPixelDimension, getValuenow, handleBoundariesAfterResize, handleBoundariesDuringResize, initState, keyboardResize, maxResize, minResize, pointerResize, setState } from './split-view-panel-utils';
11
+ export class SplitViewPanelFoundation {
12
+ constructor(_adapter) {
13
+ this._adapter = _adapter;
14
+ // API
15
+ this._size = 200;
16
+ this._min = 0;
17
+ this._accessibleLabel = 'Split view panel';
18
+ this._open = true;
19
+ // State
20
+ this._state = initState();
21
+ this._isInitialized = false;
22
+ // Properties inherited from parent split view
23
+ this._parentProperties = {};
24
+ this._pointerdownListener = evt => this._onPointerdown(evt);
25
+ this._pointerupListener = evt => this._onPointerup(evt);
26
+ this._pointermoveListener = evt => this._onPointermove(evt);
27
+ this._keydownListener = evt => this._onKeydown(evt);
28
+ this._keyupListener = evt => this._onKeyup(evt);
29
+ }
30
+ // Properties stored in state
31
+ get _orientation() {
32
+ return this._state.orientation;
33
+ }
34
+ set _orientation(value) {
35
+ this._state.orientation = value;
36
+ }
37
+ get _resizable() {
38
+ return this._state.resizable;
39
+ }
40
+ set _resizable(value) {
41
+ this._state.resizable = value;
42
+ }
43
+ get _pixelMin() {
44
+ return this._state.min;
45
+ }
46
+ set _pixelMin(value) {
47
+ this._state.min = value;
48
+ }
49
+ get _pixelMax() {
50
+ return this._state.max;
51
+ }
52
+ set _pixelMax(value) {
53
+ this._state.max = value;
54
+ }
55
+ // Applied properties that can be inherited from parent
56
+ get _appliedDisabled() {
57
+ var _a, _b;
58
+ return (_b = (_a = this._disabled) !== null && _a !== void 0 ? _a : this._parentProperties.disabled) !== null && _b !== void 0 ? _b : false;
59
+ }
60
+ get _appliedAllowClose() {
61
+ var _a, _b;
62
+ return (_b = (_a = this._allowClose) !== null && _a !== void 0 ? _a : this._parentProperties.allowClose) !== null && _b !== void 0 ? _b : false;
63
+ }
64
+ get _appliedAutoClose() {
65
+ var _a, _b;
66
+ return (_b = (_a = this._autoClose) !== null && _a !== void 0 ? _a : this._parentProperties.autoClose) !== null && _b !== void 0 ? _b : false;
67
+ }
68
+ get _appliedAutoCloseThreshold() {
69
+ var _a, _b;
70
+ return (_b = (_a = this._autoCloseThreshold) !== null && _a !== void 0 ? _a : this._parentProperties.autoCloseThreshold) !== null && _b !== void 0 ? _b : 0;
71
+ }
72
+ initialize() {
73
+ this._adapter.initialize();
74
+ this._adapter.setPointerdownListener(this._pointerdownListener);
75
+ this._adapter.setKeydownListener(this._keydownListener);
76
+ this._getParentProperties();
77
+ this._applyResizable();
78
+ this._applyMin();
79
+ this._applyMax();
80
+ this._applySize();
81
+ this._applyAccessibleLabel();
82
+ this._applyOpen();
83
+ this._applyDisabled();
84
+ this._applyAllowClose();
85
+ this._applyAutoClose();
86
+ this._applyAutoCloseThreshold();
87
+ this._isInitialized = true;
88
+ }
89
+ disconnect() {
90
+ this._adapter.removePointerupListener(this._pointerupListener);
91
+ this._adapter.removePointermoveListener(this._pointermoveListener);
92
+ }
93
+ /**
94
+ * Handles a pointerdown event and sets further pointer event listeners.
95
+ * @param evt The pointer event.
96
+ */
97
+ _onPointerdown(evt) {
98
+ if (this._appliedDisabled || !this._allowResize('pointer')) {
99
+ return;
100
+ }
101
+ evt.preventDefault();
102
+ this._adapter.setPointermoveListener(this._pointermoveListener);
103
+ this._adapter.setPointerupListener(this._pointerupListener);
104
+ this._handlePointerdown(evt);
105
+ }
106
+ /**
107
+ * Handles a pointerup event and removes pointer event listeners.
108
+ * @param evt The pointer event.
109
+ */
110
+ _onPointerup(evt) {
111
+ evt.preventDefault();
112
+ this._adapter.removePointermoveListener(this._pointermoveListener);
113
+ this._adapter.removePointerupListener(this._pointerupListener);
114
+ this._handlePointerup();
115
+ }
116
+ /**
117
+ * Handles a pointermove event and removes pointer events if the mouse button is released.
118
+ * @param evt The pointer event.
119
+ */
120
+ _onPointermove(evt) {
121
+ if (this._appliedDisabled) {
122
+ return;
123
+ }
124
+ evt.preventDefault();
125
+ // Detect when the mouse button is released outside of the document
126
+ if (evt.buttons === 0) {
127
+ this._adapter.removePointermoveListener(this._pointermoveListener);
128
+ this._adapter.removePointerupListener(this._pointerupListener);
129
+ this._handlePointerup();
130
+ return;
131
+ }
132
+ this._handlePointermove(evt);
133
+ }
134
+ /**
135
+ * Handles a keydown event and sets a keyup listener if an arrow key is pressed.
136
+ * @param evt The keyboard event.
137
+ */
138
+ _onKeydown(evt) {
139
+ if (this._appliedDisabled) {
140
+ return;
141
+ }
142
+ if (evt.key === 'Enter') {
143
+ this._handleEnterKey(evt);
144
+ }
145
+ else if (evt.key === 'Home' && this._allowResize('keyboard')) {
146
+ this._handleHomeKey(evt);
147
+ }
148
+ else if (evt.key === 'End' && this._allowResize('keyboard')) {
149
+ this._handleEndKey(evt);
150
+ }
151
+ else if (eventIncludesArrowKey(evt) && this._allowResize('keyboard')) {
152
+ this._adapter.setKeyupListener(this._keyupListener);
153
+ this._handleArrowKey(evt);
154
+ }
155
+ }
156
+ /**
157
+ * Handles a keyup event and removes the keyup listener if an arrow key was released.
158
+ * @param evt The keyboard event.
159
+ */
160
+ _onKeyup(evt) {
161
+ if (eventIncludesArrowKey(evt)) {
162
+ this._adapter.removeKeyupListener(this._keyupListener);
163
+ this._handleArrowKeyUp();
164
+ }
165
+ }
166
+ /**
167
+ * Toggles the open state.
168
+ * @param evt
169
+ */
170
+ _handleEnterKey(evt) {
171
+ if (!this._appliedAllowClose) {
172
+ return;
173
+ }
174
+ evt.preventDefault();
175
+ this._tryOpenOrClose(!this._open, false, true);
176
+ }
177
+ /**
178
+ * Sets panel size to the min.
179
+ * @param evt
180
+ */
181
+ _handleHomeKey(evt) {
182
+ evt.preventDefault();
183
+ const size = minResize(this._adapter, this._state);
184
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE, size);
185
+ this._tryAutoClose();
186
+ }
187
+ /**
188
+ * Sets panel size to the max.
189
+ * @param evt
190
+ */
191
+ _handleEndKey(evt) {
192
+ evt.preventDefault();
193
+ const size = maxResize(this._adapter, this._state);
194
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE, size);
195
+ }
196
+ /**
197
+ * Runs resize logic if an arrow key is included in the event.
198
+ * @param evt
199
+ */
200
+ _handleArrowKey(evt) {
201
+ let increment = 0;
202
+ if (this._orientation === 'horizontal') {
203
+ switch (evt.key) {
204
+ case 'ArrowLeft':
205
+ increment = -1;
206
+ break;
207
+ case 'ArrowRight':
208
+ increment = 1;
209
+ break;
210
+ default:
211
+ return;
212
+ }
213
+ }
214
+ else {
215
+ switch (evt.key) {
216
+ case 'ArrowUp':
217
+ increment = -1;
218
+ break;
219
+ case 'ArrowDown':
220
+ increment = 1;
221
+ break;
222
+ default:
223
+ return;
224
+ }
225
+ }
226
+ evt.preventDefault();
227
+ if (this._resizable === 'start') {
228
+ increment *= -1;
229
+ }
230
+ if (evt.shiftKey) {
231
+ increment *= 10;
232
+ }
233
+ this._tryHandleArrowKeyDown();
234
+ this._handleArrowKeyHeld(increment);
235
+ }
236
+ /**
237
+ * Sets resize properties when an arrow key is first pressed.
238
+ */
239
+ _tryHandleArrowKeyDown() {
240
+ if (!this._state.arrowKeyHeld) {
241
+ this._startResize();
242
+ }
243
+ this._state.arrowKeyHeld = true;
244
+ }
245
+ /**
246
+ * Performs cleanup logic after a keyboard driven resize.
247
+ */
248
+ _handleArrowKeyUp() {
249
+ this._endResize();
250
+ }
251
+ /**
252
+ * Resizes the panel by a set amount.
253
+ * @param increment The pixel change in size.
254
+ */
255
+ _handleArrowKeyHeld(increment) {
256
+ if (keyboardResize(this._adapter, increment, this._state)) {
257
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE, this._state.currentSize);
258
+ }
259
+ }
260
+ /**
261
+ * Handles the beginning of a pointer driven resize.
262
+ * @param evt
263
+ */
264
+ _handlePointerdown(evt) {
265
+ this._adapter.setGrabbed(true);
266
+ this._adapter.focusHandle();
267
+ this._startResize();
268
+ this._state.startPoint = this._orientation === 'horizontal' ? evt.clientX : evt.clientY;
269
+ handleBoundariesDuringResize(this._adapter, this._state, 'pointer');
270
+ }
271
+ /**
272
+ * Handles the end of a pointer driven resize.
273
+ */
274
+ _handlePointerup() {
275
+ this._adapter.setGrabbed(false);
276
+ this._adapter.deactivateRipple();
277
+ this._endResize();
278
+ }
279
+ /**
280
+ * Resizes the panel from a pointer event.
281
+ * @param evt
282
+ */
283
+ _handlePointermove(evt) {
284
+ if (pointerResize(this._adapter, evt, this._state)) {
285
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE, this._state.currentSize);
286
+ }
287
+ }
288
+ /**
289
+ * Emits a will resize event and allows it to be cancelled.
290
+ * @returns Whether the resize should proceed.
291
+ */
292
+ _allowResize(inputDeviceType) {
293
+ return this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.WILL_RESIZE, { inputDeviceType }, true, true);
294
+ }
295
+ /**
296
+ * Handles common logic to begin a resize.
297
+ */
298
+ _startResize() {
299
+ this._state = setState(this._adapter, this._state);
300
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE_START, this._state.startSize);
301
+ }
302
+ /**
303
+ * Handles common logic to end a resize.
304
+ */
305
+ _endResize() {
306
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE_END, this._state.currentSize);
307
+ this._adapter.updateParent({ accessibility: this._state.startSize !== this._state.currentSize, cursor: true });
308
+ this._state = clearState(this._state);
309
+ this._tryAutoClose();
310
+ }
311
+ /**
312
+ * Emits a will open or will close event and sets the panel open or closed if allowed.
313
+ * @param shouldOpen Whether the panel should open or close. Defaults to `true`.
314
+ * @param auto Whether the panel auto-opened or auto-closed.
315
+ * @param userInitiated Whether opening or closing via user action instead of programmatically.
316
+ */
317
+ _tryOpenOrClose(shouldOpen = true, auto = false, userInitiated = false) {
318
+ const eventType = shouldOpen ? SPLIT_VIEW_PANEL_CONSTANTS.events.WILL_OPEN : SPLIT_VIEW_PANEL_CONSTANTS.events.WILL_CLOSE;
319
+ const event = {
320
+ auto,
321
+ userInitiated
322
+ };
323
+ const isAllowed = this._adapter.emitHostEvent(eventType, event, true, true);
324
+ if (!isAllowed) {
325
+ return;
326
+ }
327
+ this._open = shouldOpen;
328
+ this._applyOpen(event);
329
+ }
330
+ /**
331
+ * Auto close the panel if enabled and within the size threshold.
332
+ */
333
+ _tryAutoClose() {
334
+ const size = this._adapter.getContentSize(this._orientation);
335
+ if (this._appliedAutoClose && size <= this._appliedAutoCloseThreshold) {
336
+ this._tryOpenOrClose(false, true, false);
337
+ }
338
+ }
339
+ /**
340
+ * Sets orientation, disabled, disable close, and autoclose to reflect the parent split view.
341
+ */
342
+ _getParentProperties() {
343
+ // Parent disabled state
344
+ const parentDisabled = this._adapter.getParentProperty('disabled');
345
+ this._parentProperties.disabled = parentDisabled;
346
+ this._applyParentDisabled();
347
+ // Parent disable close
348
+ const parentAllowClose = this._adapter.getParentProperty('allowClose');
349
+ this._parentProperties.allowClose = parentAllowClose;
350
+ // Parent auto close
351
+ const parentAutoClose = this._adapter.getParentProperty('autoClose');
352
+ this._parentProperties.autoClose = parentAutoClose;
353
+ this._applyParentAutoClose();
354
+ // Parent auto close threshold
355
+ const parentAutoCloseThreshold = this._adapter.getParentProperty('autoCloseThreshold');
356
+ this._parentProperties.autoCloseThreshold = parentAutoCloseThreshold;
357
+ this._applyParentAutoCloseThreshold();
358
+ }
359
+ _applyOrientation() {
360
+ this._adapter.setOrientation(this._orientation);
361
+ }
362
+ /**
363
+ * Get/set resizable. This affects the side the handle appears on and the direction the panel closes into.
364
+ */
365
+ get resizable() {
366
+ return this._resizable;
367
+ }
368
+ set resizable(value) {
369
+ if (this._resizable !== value) {
370
+ this._resizable = value;
371
+ this._applyResizable();
372
+ }
373
+ }
374
+ _applyResizable() {
375
+ this._adapter.setHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.RESIZABLE, this._resizable);
376
+ this._adapter.setResizable(this._resizable);
377
+ }
378
+ /**
379
+ * Get/set panel size.
380
+ */
381
+ get size() {
382
+ return this._size;
383
+ }
384
+ set size(value) {
385
+ if (this._size.toString() !== value.toString()) {
386
+ this._size = value;
387
+ this._applySize();
388
+ }
389
+ }
390
+ _applySize() {
391
+ const parentSize = this._adapter.getParentSize(this._orientation);
392
+ const pixelSize = getPixelDimension(this._size, parentSize);
393
+ this._adapter.setHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.SIZE, this._size.toString());
394
+ this._adapter.setContentSize(pixelSize);
395
+ // Wait for the DOM to render to get available space
396
+ window.requestAnimationFrame(() => {
397
+ const availableSpace = this._adapter.getAvailableSpace(this._orientation, this._resizable);
398
+ const maxSize = safeMin(this._pixelMax, availableSpace);
399
+ const newValue = scaleValue(pixelSize, this._pixelMin, maxSize);
400
+ this._adapter.setValuenow(newValue);
401
+ this._adapter.updateParent({ cursor: true });
402
+ });
403
+ }
404
+ /** Get/set min panel size. */
405
+ get min() {
406
+ return this._min;
407
+ }
408
+ set min(value) {
409
+ if (this._min.toString() !== value.toString()) {
410
+ this._min = value;
411
+ this._applyMin();
412
+ }
413
+ }
414
+ _applyMin() {
415
+ this._adapter.setHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.MIN, this._min.toString());
416
+ const parentSize = this._adapter.getParentSize(this._orientation);
417
+ this._pixelMin = getPixelDimension(this._min, parentSize);
418
+ if (this._resizable === 'off') {
419
+ return;
420
+ }
421
+ const size = this._adapter.getContentSize(this._orientation);
422
+ if (size < this._pixelMin) {
423
+ this.setContentSize(size);
424
+ }
425
+ }
426
+ /** Get/set max panel size. */
427
+ get max() {
428
+ return this._max;
429
+ }
430
+ set max(value) {
431
+ var _a;
432
+ if (((_a = this._max) === null || _a === void 0 ? void 0 : _a.toString()) !== (value === null || value === void 0 ? void 0 : value.toString())) {
433
+ this._max = value;
434
+ this._applyMax();
435
+ }
436
+ }
437
+ _applyMax() {
438
+ var _a;
439
+ this._adapter.toggleHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.MAX, this._max !== undefined, (_a = this._max) === null || _a === void 0 ? void 0 : _a.toString());
440
+ if (this._max === undefined) {
441
+ this._pixelMax = undefined;
442
+ return;
443
+ }
444
+ const parentSize = this._adapter.getParentSize(this._orientation);
445
+ this._pixelMax = getPixelDimension(this._max, parentSize);
446
+ if (this._resizable === 'off') {
447
+ return;
448
+ }
449
+ const size = this._adapter.getContentSize(this._orientation);
450
+ if (size > this._pixelMax) {
451
+ this.setContentSize(size);
452
+ }
453
+ }
454
+ /**
455
+ * Get/set the accessible label.
456
+ */
457
+ get accessibleLabel() {
458
+ return this._accessibleLabel;
459
+ }
460
+ set accessibleLabel(value) {
461
+ if (this._accessibleLabel !== value) {
462
+ this._accessibleLabel = value;
463
+ this._applyAccessibleLabel();
464
+ }
465
+ }
466
+ _applyAccessibleLabel() {
467
+ this._adapter.setHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.ACCESSIBLE_LABEL, this._accessibleLabel);
468
+ this._adapter.setAccessibleLabel(this._accessibleLabel);
469
+ }
470
+ /**
471
+ * Get/set whether the panel is open.
472
+ */
473
+ get open() {
474
+ return this._open;
475
+ }
476
+ set open(value) {
477
+ if (this._open !== value) {
478
+ if (this._isInitialized) {
479
+ this._tryOpenOrClose(value, false, false);
480
+ return;
481
+ }
482
+ this._open = value;
483
+ const event = this._isInitialized ? {
484
+ auto: false,
485
+ userInitiated: false
486
+ } : undefined;
487
+ this._applyOpen(event);
488
+ }
489
+ }
490
+ _applyOpen(event) {
491
+ this._adapter.setHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.OPEN, this._open.toString());
492
+ this._adapter.setOpen(this._open, this._isInitialized, event);
493
+ }
494
+ /**
495
+ * Get/set whether interactions are disabled.
496
+ */
497
+ get disabled() {
498
+ return this._disabled;
499
+ }
500
+ set disabled(value) {
501
+ if (this._disabled !== value) {
502
+ this._disabled = value;
503
+ this._applyDisabled();
504
+ }
505
+ }
506
+ _applyDisabled() {
507
+ var _a;
508
+ this._adapter.toggleHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.DISABLED, (_a = this._disabled) !== null && _a !== void 0 ? _a : false);
509
+ this._adapter.setDisabled(this._appliedDisabled);
510
+ }
511
+ _applyParentDisabled() {
512
+ if (this._isInitialized && !isDefined(this._disabled)) {
513
+ this._adapter.setDisabled(this._appliedDisabled);
514
+ }
515
+ }
516
+ /**
517
+ * Get/set whether closing the panel is disabled.
518
+ */
519
+ get allowClose() {
520
+ return this._allowClose;
521
+ }
522
+ set allowClose(value) {
523
+ if (this._allowClose !== value) {
524
+ this._allowClose = value;
525
+ this._applyAllowClose();
526
+ }
527
+ }
528
+ _applyAllowClose() {
529
+ var _a;
530
+ this._adapter.toggleHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.ALLOW_CLOSE, (_a = this._allowClose) !== null && _a !== void 0 ? _a : false);
531
+ }
532
+ /**
533
+ * Get/set whether the panel closes when a threshold size is reached.
534
+ */
535
+ get autoClose() {
536
+ return this._autoClose;
537
+ }
538
+ set autoClose(value) {
539
+ if (this._autoClose !== value) {
540
+ this._autoClose = value;
541
+ this._applyAutoClose();
542
+ }
543
+ }
544
+ _applyAutoClose() {
545
+ var _a;
546
+ this._adapter.toggleHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.AUTO_CLOSE, (_a = this._autoClose) !== null && _a !== void 0 ? _a : false);
547
+ if (this._isInitialized) {
548
+ this._tryAutoClose();
549
+ }
550
+ }
551
+ _applyParentAutoClose() {
552
+ if (this._isInitialized && !isDefined(this._autoClose)) {
553
+ this._tryAutoClose();
554
+ }
555
+ }
556
+ /** Get/set the size at which the panel auto closes. */
557
+ get autoCloseThreshold() {
558
+ return this._autoCloseThreshold;
559
+ }
560
+ set autoCloseThreshold(value) {
561
+ if (this._autoCloseThreshold !== value) {
562
+ this._autoCloseThreshold = value;
563
+ this._applyAutoCloseThreshold();
564
+ }
565
+ }
566
+ _applyAutoCloseThreshold() {
567
+ var _a;
568
+ this._adapter.toggleHostAttribute(SPLIT_VIEW_PANEL_CONSTANTS.attributes.AUTO_CLOSE_THRESHOLD, isDefined(this._autoCloseThreshold), (_a = this.autoCloseThreshold) === null || _a === void 0 ? void 0 : _a.toString());
569
+ if (this._isInitialized) {
570
+ this._tryAutoClose();
571
+ }
572
+ }
573
+ _applyParentAutoCloseThreshold() {
574
+ if (this._isInitialized && !isDefined(this._autoCloseThreshold)) {
575
+ this._tryAutoClose();
576
+ }
577
+ }
578
+ /**
579
+ * Gets the size of panel content without the handle.
580
+ * @returns Content size in pixels.
581
+ */
582
+ getContentSize() {
583
+ return this._adapter.getContentSize(this._orientation);
584
+ }
585
+ /**
586
+ * Gets how much the panel can shrink from its current size.
587
+ * @returns The difference between the current and min size in pixels.
588
+ */
589
+ getCollapsibleSize() {
590
+ const parentSize = this._adapter.getParentSize(this._orientation);
591
+ const pixelMin = getPixelDimension(this._min, parentSize);
592
+ return this._adapter.getContentSize(this._orientation) - pixelMin;
593
+ }
594
+ /**
595
+ * Sets a new size for the content area.
596
+ * @param size The new content size in pixels.
597
+ */
598
+ setContentSize(size) {
599
+ if (this._resizable === 'off') {
600
+ return;
601
+ }
602
+ const newSize = clampSize(size, this._state);
603
+ this._adapter.setContentSize(newSize);
604
+ if (this._isInitialized) {
605
+ this._adapter.emitHostEvent(SPLIT_VIEW_PANEL_CONSTANTS.events.RESIZE, newSize);
606
+ }
607
+ }
608
+ /**
609
+ * Updates the proved characteristics.
610
+ * @param config An update configuration.
611
+ */
612
+ update(config) {
613
+ // Orientation
614
+ if (config.orientation) {
615
+ this._orientation = config.orientation;
616
+ this._applyOrientation();
617
+ }
618
+ // Parent properties
619
+ if (config.properties) {
620
+ if (isDefined(config.properties.disabled) && this._parentProperties.disabled !== config.properties.disabled) {
621
+ this._parentProperties.disabled = config.properties.disabled;
622
+ this._applyDisabled();
623
+ }
624
+ if (isDefined(config.properties.allowClose)) {
625
+ this._parentProperties.allowClose = config.properties.allowClose;
626
+ }
627
+ if (isDefined(config.properties.autoClose) && this._parentProperties.autoClose !== config.properties.autoClose) {
628
+ this._parentProperties.autoClose = config.properties.autoClose;
629
+ if (!isDefined(this._autoClose)) {
630
+ this._applyAutoClose();
631
+ }
632
+ }
633
+ if (isDefined(config.properties.autoCloseThreshold) && this._parentProperties.autoCloseThreshold !== config.properties.autoCloseThreshold) {
634
+ this._parentProperties.autoCloseThreshold = config.properties.autoCloseThreshold;
635
+ if (!isDefined(this._autoCloseThreshold)) {
636
+ this._applyAutoCloseThreshold();
637
+ }
638
+ }
639
+ }
640
+ // Size
641
+ if (config.size) {
642
+ const parentSize = this._adapter.getParentSize(this._orientation);
643
+ this._pixelMin = getPixelDimension(this._min, parentSize);
644
+ this._pixelMax = isDefined(this._max) ? getPixelDimension(this._max, parentSize) : undefined;
645
+ this.setContentSize(this._adapter.getContentSize(this._orientation));
646
+ }
647
+ // The following properties don't apply to non-resizable panels
648
+ if (this._resizable === 'off') {
649
+ return;
650
+ }
651
+ const size = this._adapter.getContentSize(this._orientation);
652
+ const availableSpace = this._adapter.getAvailableSpace(this._orientation, this._resizable);
653
+ // Accessibility
654
+ if (config.accessibility) {
655
+ const valueNow = getValuenow(size, Object.assign(Object.assign({}, this._state), { availableSpace }));
656
+ this._adapter.setValuenow(valueNow);
657
+ }
658
+ // Contextual cursor
659
+ if (config.cursor) {
660
+ handleBoundariesAfterResize(this._adapter, size, Object.assign(Object.assign({}, this._state), { availableSpace }));
661
+ }
662
+ // Unset cursor
663
+ if (config.clearCursor) {
664
+ this._adapter.setHandleCursor();
665
+ }
666
+ }
667
+ }