@visactor/vtable 0.20.2-alpha.3 → 0.20.3

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 (119) hide show
  1. package/cjs/ListTable.js +1 -1
  2. package/cjs/ListTable.js.map +1 -1
  3. package/cjs/body-helper/body-helper.d.ts +2 -1
  4. package/cjs/body-helper/style/CheckboxStyle.d.ts +31 -2
  5. package/cjs/body-helper/style/CheckboxStyle.js +70 -4
  6. package/cjs/body-helper/style/CheckboxStyle.js.map +1 -1
  7. package/cjs/body-helper/style.d.ts +2 -1
  8. package/cjs/body-helper/style.js +5 -4
  9. package/cjs/body-helper/style.js.map +1 -1
  10. package/cjs/core/BaseTable.js +19 -16
  11. package/cjs/core/BaseTable.js.map +1 -1
  12. package/cjs/core/tableHelper.js +9 -4
  13. package/cjs/core/tableHelper.js.map +1 -1
  14. package/cjs/event/listener/table-group.js +8 -8
  15. package/cjs/event/listener/table-group.js.map +1 -1
  16. package/cjs/header-helper/header-helper.d.ts +1 -1
  17. package/cjs/header-helper/style/CheckboxStyle.d.ts +31 -2
  18. package/cjs/header-helper/style/CheckboxStyle.js +70 -4
  19. package/cjs/header-helper/style/CheckboxStyle.js.map +1 -1
  20. package/cjs/header-helper/style.d.ts +2 -1
  21. package/cjs/header-helper/style.js +12 -7
  22. package/cjs/header-helper/style.js.map +1 -1
  23. package/cjs/index.d.ts +1 -1
  24. package/cjs/index.js +1 -1
  25. package/cjs/index.js.map +1 -1
  26. package/cjs/layout/simple-header-layout.js +1 -1
  27. package/cjs/layout/simple-header-layout.js.map +1 -1
  28. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js +6 -28
  29. package/cjs/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  30. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js +2 -9
  31. package/cjs/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  32. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js +19 -22
  33. package/cjs/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  34. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js +40 -46
  35. package/cjs/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  36. package/cjs/scenegraph/group-creater/cell-type/image-cell.js +7 -7
  37. package/cjs/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  38. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js +18 -21
  39. package/cjs/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  40. package/cjs/scenegraph/group-creater/cell-type/text-cell.js +10 -11
  41. package/cjs/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  42. package/cjs/scenegraph/group-creater/cell-type/video-cell.js +7 -7
  43. package/cjs/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  44. package/cjs/scenegraph/scenegraph.js +5 -5
  45. package/cjs/scenegraph/scenegraph.js.map +1 -1
  46. package/cjs/scenegraph/utils/text-icon-layout.js +3 -9
  47. package/cjs/scenegraph/utils/text-icon-layout.js.map +1 -1
  48. package/cjs/themes/theme.d.ts +3 -3
  49. package/cjs/themes/theme.js +10 -16
  50. package/cjs/themes/theme.js.map +1 -1
  51. package/cjs/ts-types/column/style.d.ts +14 -0
  52. package/cjs/ts-types/column/style.js.map +1 -1
  53. package/cjs/ts-types/theme.d.ts +2 -4
  54. package/cjs/ts-types/theme.js.map +1 -1
  55. package/cjs/vrender.js.map +1 -1
  56. package/dist/vtable.js +347 -300
  57. package/dist/vtable.min.js +2 -2
  58. package/es/ListTable.js +1 -1
  59. package/es/ListTable.js.map +1 -1
  60. package/es/body-helper/body-helper.d.ts +2 -1
  61. package/es/body-helper/style/CheckboxStyle.d.ts +31 -2
  62. package/es/body-helper/style/CheckboxStyle.js +70 -4
  63. package/es/body-helper/style/CheckboxStyle.js.map +1 -1
  64. package/es/body-helper/style.d.ts +2 -1
  65. package/es/body-helper/style.js +6 -3
  66. package/es/body-helper/style.js.map +1 -1
  67. package/es/core/BaseTable.js +20 -17
  68. package/es/core/BaseTable.js.map +1 -1
  69. package/es/core/tableHelper.js +8 -4
  70. package/es/core/tableHelper.js.map +1 -1
  71. package/es/event/listener/table-group.js +7 -7
  72. package/es/event/listener/table-group.js.map +1 -1
  73. package/es/header-helper/header-helper.d.ts +1 -1
  74. package/es/header-helper/style/CheckboxStyle.d.ts +31 -2
  75. package/es/header-helper/style/CheckboxStyle.js +70 -4
  76. package/es/header-helper/style/CheckboxStyle.js.map +1 -1
  77. package/es/header-helper/style.d.ts +2 -1
  78. package/es/header-helper/style.js +6 -3
  79. package/es/header-helper/style.js.map +1 -1
  80. package/es/index.d.ts +1 -1
  81. package/es/index.js +1 -1
  82. package/es/index.js.map +1 -1
  83. package/es/layout/simple-header-layout.js +1 -1
  84. package/es/layout/simple-header-layout.js.map +1 -1
  85. package/es/scenegraph/graphic/contributions/group-contribution-render.js +5 -28
  86. package/es/scenegraph/graphic/contributions/group-contribution-render.js.map +1 -1
  87. package/es/scenegraph/graphic/contributions/rect-contribution-render.js +2 -9
  88. package/es/scenegraph/graphic/contributions/rect-contribution-render.js.map +1 -1
  89. package/es/scenegraph/group-creater/cell-type/chart-cell.js +18 -23
  90. package/es/scenegraph/group-creater/cell-type/chart-cell.js.map +1 -1
  91. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js +31 -47
  92. package/es/scenegraph/group-creater/cell-type/checkbox-cell.js.map +1 -1
  93. package/es/scenegraph/group-creater/cell-type/image-cell.js +6 -8
  94. package/es/scenegraph/group-creater/cell-type/image-cell.js.map +1 -1
  95. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js +17 -22
  96. package/es/scenegraph/group-creater/cell-type/spark-line-cell.js.map +1 -1
  97. package/es/scenegraph/group-creater/cell-type/text-cell.js +9 -11
  98. package/es/scenegraph/group-creater/cell-type/text-cell.js.map +1 -1
  99. package/es/scenegraph/group-creater/cell-type/video-cell.js +6 -8
  100. package/es/scenegraph/group-creater/cell-type/video-cell.js.map +1 -1
  101. package/es/scenegraph/scenegraph.js +5 -5
  102. package/es/scenegraph/scenegraph.js.map +1 -1
  103. package/es/scenegraph/utils/text-icon-layout.js +3 -9
  104. package/es/scenegraph/utils/text-icon-layout.js.map +1 -1
  105. package/es/themes/theme.d.ts +3 -3
  106. package/es/themes/theme.js +9 -16
  107. package/es/themes/theme.js.map +1 -1
  108. package/es/ts-types/column/style.d.ts +14 -0
  109. package/es/ts-types/column/style.js.map +1 -1
  110. package/es/ts-types/theme.d.ts +2 -4
  111. package/es/ts-types/theme.js.map +1 -1
  112. package/es/vrender.js.map +1 -1
  113. package/package.json +5 -5
  114. package/cjs/scenegraph/utils/cell-border-stroke-width.d.ts +0 -3
  115. package/cjs/scenegraph/utils/cell-border-stroke-width.js +0 -16
  116. package/cjs/scenegraph/utils/cell-border-stroke-width.js.map +0 -1
  117. package/es/scenegraph/utils/cell-border-stroke-width.d.ts +0 -3
  118. package/es/scenegraph/utils/cell-border-stroke-width.js +0 -10
  119. package/es/scenegraph/utils/cell-border-stroke-width.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/themes/theme.ts"],"names":[],"mappings":"AAqCA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAS,MAAM,eAAe,CAAC;AACzE,OAAO,EACL,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI/D,SAAS,OAAO,CAAC,GAA4B,EAAE,QAA2B,EAAE,KAAe,EAAE,QAAmB;IAC9G,OAAO,CACL,YAAY,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QAC3B,YAAY,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC;QAChC,CAAC,QAAQ,IAAI,YAAY,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC;QAC5C,CAAC,QAAQ,IAAI,YAAY,CAAC,QAAQ,EAAE,GAAG,QAAQ,CAAC,CAAC,CAClD,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,UAAU;IA0BrB,YAAY,GAAgD,EAAE,UAA6B;QArBnF,kBAAa,GAAoD,IAAI,CAAC;QACtE,YAAO,GAA4C,IAAI,CAAC;QACxD,kBAAa,GAAkD,IAAI,CAAC;QACpE,wBAAmB,GAAwD,IAAI,CAAC;QAChF,0BAAqB,GAA0D,IAAI,CAAC;QACpF,2BAAsB,GAA2D,IAAI,CAAC;QACtF,iBAAY,GAAiD,IAAI,CAAC;QAClE,kBAAa,GAAkD,IAAI,CAAC;QACpE,eAAU,GAA+C,IAAI,CAAC;QAC9D,UAAK,GAA0C,IAAI,CAAC;QACpD,YAAO,GAA4C,IAAI,CAAC;QACxD,aAAQ,GAA6C,IAAI,CAAC;QAC1D,gBAAW,GAA2C,IAAI,CAAC;QAC3D,kBAAa,GAAoD,IAAI,CAAC;QACtE,yBAAoB,GAA2D,IAAI,CAAC;QACpF,sBAAiB,GAAwD,IAAI,CAAC;QAC9E,oBAAe,GAAsD,IAAI,CAAC;QAE1E,eAAU,GAAiD,IAAI,CAAC;QAChE,qBAAgB,GAAuD,IAAI,CAAC;QAGlF,IAAI,CAAC,aAAa,GAAG;YACnB,GAAG;YACH,UAAU;SACX,CAAC;IACJ,CAAC;IACD,IAAI,IAAI;QACN,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACnE,CAAC;IACD,IAAI,uBAAuB;QACzB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,yBAAyB,CAAC,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,eAAe;QACjB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,uBAAuB;;QACzB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,MAAA,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,yBAAyB,CAAC,CAAC,mCAAI,UAAU,CAAC;IAC7E,CAAC;IAED,IAAI,cAAc;;QAChB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,MAAA,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,CAAC,gBAAgB,CAAC,CAAC,mCAAI,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,YAAY;QAEd,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,YAAY,GAAe,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;YACrG,IAAI,CAAC,aAAa,GAAG;gBACnB,IAAI,QAAQ;;oBACV,OAAO,MAAA,YAAY,CAAC,QAAQ,mCAAI,eAAe,CAAC;gBAClD,CAAC;gBACD,IAAI,UAAU;;oBACZ,OAAO,MAAA,YAAY,CAAC,UAAU,mCAAI,iBAAiB,CAAC;gBACtD,CAAC;gBACD,IAAI,UAAU;oBACZ,OAAO,YAAY,CAAC,UAAU,CAAC;gBACjC,CAAC;gBACD,IAAI,WAAW;oBACb,OAAO,YAAY,CAAC,WAAW,CAAC;gBAClC,CAAC;gBACD,IAAI,SAAS;oBACX,OAAO,YAAY,CAAC,SAAS,CAAC;gBAChC,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,YAAY,CAAC,OAAO,mCAAI,cAAc,CAAC;gBAChD,CAAC;gBACD,IAAI,KAAK;;oBACP,OAAO,MAAA,YAAY,CAAC,KAAK,mCAAI,gBAAgB,CAAC;gBAChD,CAAC;gBACD,IAAI,WAAW;;oBACb,OAAO,MAAA,YAAY,CAAC,WAAW,mCAAI,kBAAkB,CAAC;gBACxD,CAAC;gBACD,IAAI,eAAe;;oBACjB,OAAO,MAAA,YAAY,CAAC,eAAe,mCAAI,sBAAsB,CAAC;gBAChE,CAAC;gBACD,IAAI,cAAc;;oBAChB,OAAO,MAAA,YAAY,CAAC,cAAc,mCAAI,qBAAqB,CAAC;gBAC9D,CAAC;gBACD,IAAI,KAAK;oBACP,IAAI,YAAY,CAAC,KAAK,EAAE;wBACtB,OAAO;4BACL,IAAI,WAAW;;gCACb,OAAO,MAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,mCAAI,SAAS,CAAC;4BACtD,CAAC;4BAOD,IAAI,mBAAmB;;gCACrB,OAAO,CACL,MAAA,MAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,mBAAmB,mCACvC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,KAAI,OAAO,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,CAAA,KAAK,QAAQ;oCACrF,CAAC,CAAC,WAAW,CAAC,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC;oCAC1D,CAAC,CAAC,SAAS,CAAC,mCACd,SAAS,CACV,CAAC;4BACJ,CAAC;4BACD,IAAI,gBAAgB;;gCAClB,OAAO,CACL,MAAA,MAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,gBAAgB,mCACpC,CAAC,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,KAAI,OAAO,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,CAAA,KAAK,QAAQ;oCACrF,CAAC,CAAC,WAAW,CAAC,MAAA,YAAY,CAAC,KAAK,0CAAE,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC;oCAC1D,CAAC,CAAC,SAAS,CAAC,mCACd,SAAS,CACV,CAAC;4BACJ,CAAC;yBACF,CAAC;qBACH;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBAqCD,IAAI,OAAO;;oBACT,OAAO,MAAA,YAAY,CAAC,OAAO,mCAAI,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAClD,CAAC;gBACD,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,MAAM,CAAC;gBAC1C,CAAC;gBACD,IAAI,YAAY;;oBACd,OAAO,MAAA,YAAY,CAAC,YAAY,mCAAI,QAAQ,CAAC;gBAC/C,CAAC;gBACD,IAAI,YAAY;;oBACd,OAAO,MAAA,YAAY,CAAC,YAAY,mCAAI,UAAU,CAAC;gBACjD,CAAC;gBACD,IAAI,UAAU;oBACZ,OAAO,YAAY,CAAC,UAAU,CAAC;gBACjC,CAAC;gBACD,IAAI,YAAY;;oBACd,OAAO,MAAA,YAAY,CAAC,YAAY,mCAAI,KAAK,CAAC;gBAC5C,CAAC;gBACD,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,MAAM,CAAC;gBAC1C,CAAC;gBACD,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,SAAS,CAAC;gBAC7C,CAAC;gBACD,IAAI,MAAM;;oBACR,OAAO,MAAA,YAAY,CAAC,MAAM,mCAAI,MAAM,CAAC;gBACvC,CAAC;gBACD,IAAI,MAAM;;oBACR,OAAO,MAAA,YAAY,CAAC,MAAM,mCAAI,KAAK,CAAC;gBACtC,CAAC;gBACD,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,KAAK,CAAC;gBACzC,CAAC;gBACD,IAAI,cAAc;oBAChB,OAAO,YAAY,CAAC,cAAc,CAAC;gBACrC,CAAC;gBACD,IAAI,aAAa;oBACf,OAAO,YAAY,CAAC,aAAa,CAAC;gBACpC,CAAC;gBACD,IAAI,WAAW;;oBACb,OAAO,MAAA,YAAY,CAAC,WAAW,mCAAI,KAAK,CAAC;gBAC3C,CAAC;gBACD,IAAI,gBAAgB;oBAClB,OAAO,YAAY,CAAC,gBAAgB,CAAC;gBACvC,CAAC;gBACD,IAAI,eAAe;oBACjB,OAAO,YAAY,CAAC,eAAe,CAAC;gBACtC,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,IAAI,WAAW;QACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAE/C,MAAM,MAAM,GAAe,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YAChH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACtC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,IAAI,iBAAiB;QACnB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAE/C,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,iBAAiB,EAC5B,GAAG,CAAC,iBAAiB,CACtB,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5C;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,IAAI,uBAAuB;QACzB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE;YAC7B,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,uBAAuB,IAAI,CAAC,GAAG,CAAC,uBAAuB,EAAE;gBACvE,OAAO,IAAI,CAAC,mBAAmB,CAAC;aACjC;YAED,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,uBAAuB,EAClC,GAAG,CAAC,uBAAuB,CAC5B,CAAC;YACF,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAClD;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IACD,IAAI,yBAAyB;QAC3B,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;YAC/B,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,yBAAyB,IAAI,CAAC,GAAG,CAAC,yBAAyB,EAAE;gBAC3E,OAAO,IAAI,CAAC,qBAAqB,CAAC;aACnC;YAED,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,yBAAyB,EACpC,GAAG,CAAC,yBAAyB,CAC9B,CAAC;YACF,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IACD,IAAI,0BAA0B;QAC5B,IAAI,CAAC,IAAI,CAAC,sBAAsB,EAAE;YAChC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,0BAA0B,IAAI,CAAC,GAAG,CAAC,0BAA0B,EAAE;gBAC7E,OAAO,IAAI,CAAC,sBAAsB,CAAC;aACpC;YAED,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,0BAA0B,EACrC,GAAG,CAAC,0BAA0B,CAC/B,CAAC;YACF,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACrD;QACD,OAAO,IAAI,CAAC,sBAAsB,CAAC;IACrC,CAAC;IACD,IAAI,gBAAgB;QAClB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE;gBACzD,OAAO,IAAI,CAAC,YAAY,CAAC;aAC1B;YAED,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,cAAc,EACnB,UAAU,CAAC,gBAAgB,EAC3B,GAAG,CAAC,gBAAgB,CACrB,CAAC;YACF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,IAAI,iBAAiB;QACnB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,iBAAiB,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;gBAC3D,OAAO,IAAI,CAAC,aAAa,CAAC;aAC3B;YAED,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,EAChB,UAAU,CAAC,iBAAiB,EAC5B,GAAG,CAAC,iBAAiB,CACtB,CAAC;YACF,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SAC5C;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IACD,IAAI,cAAc;;QAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAE/C,MAAM,MAAM,GAAe,oBAAoB,CAC7C,EAAE,EACF,IAAI,CAAC,YAAY,EACjB,UAAU,CAAC,cAAc,EACzB,MAAA,GAAG,CAAC,cAAc,mCAAI,GAAG,CAAC,WAAW,CACtC,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IACD,IAAI,SAAS;QACX,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAE/C,MAAM,IAAI,GAAe,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1G,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAClC;QAED,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,UAAU;QACZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,UAAU,GAAoB,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC;YACpG,IAAI,CAAC,WAAW,GAAG;gBACjB,IAAI,WAAW;oBACb,OAAO,UAAU,CAAC,WAAW,CAAC;gBAChC,CAAC;gBACD,IAAI,eAAe;oBACjB,OAAO,UAAU,CAAC,eAAe,CAAC;gBACpC,CAAC;gBACD,IAAI,cAAc;oBAChB,OAAO,UAAU,CAAC,cAAc,CAAC;gBACnC,CAAC;gBACD,IAAI,WAAW;oBACb,OAAO,UAAU,CAAC,WAAW,CAAC;gBAChC,CAAC;gBACD,IAAI,UAAU;oBACZ,OAAO,UAAU,CAAC,UAAU,CAAC;gBAC/B,CAAC;gBACD,IAAI,WAAW;oBACb,OAAO,UAAU,CAAC,WAAW,CAAC;gBAChC,CAAC;gBACD,IAAI,aAAa;oBACf,OAAO,UAAU,CAAC,aAAa,CAAC;gBAClC,CAAC;gBACD,IAAI,aAAa;oBACf,OAAO,UAAU,CAAC,aAAa,CAAC;gBAClC,CAAC;gBACD,IAAI,YAAY;oBACd,OAAO,UAAU,CAAC,YAAY,CAAC;gBACjC,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IACD,IAAI,WAAW;QACb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,MAAM,GAAgB,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;YAC9F,IAAI,CAAC,OAAO,GAAG;gBACb,IAAI,iBAAiB;;oBACnB,OAAO,MAAA,MAAM,CAAC,iBAAiB,mCAAI,SAAS,CAAC;gBAC/C,CAAC;gBACD,IAAI,eAAe;oBACjB,OAAO,MAAM,CAAC,eAAe,CAAC;gBAChC,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,MAAM,CAAC,OAAO,mCAAI,WAAW,CAAC;gBACvC,CAAC;gBACD,IAAI,KAAK;;oBACP,OAAO,MAAA,MAAM,CAAC,KAAK,mCAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,MAAM,CAAC,OAAO,mCAAI,IAAI,CAAC;gBAChC,CAAC;aACF,CAAC;SACH;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,IAAI,YAAY;QACd,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,OAAO,GAAiB,oBAAoB,CAAC,EAAE,EAAE,UAAU,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;YAClG,IAAI,CAAC,QAAQ,GAAG;gBACd,IAAI,UAAU;;oBACZ,OAAO,MAAA,OAAO,CAAC,UAAU,mCAAI,iBAAiB,CAAC;gBACjD,CAAC;gBACD,IAAI,QAAQ;;oBACV,OAAO,MAAA,OAAO,CAAC,QAAQ,mCAAI,eAAe,CAAC;gBAC7C,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,OAAO,CAAC,OAAO,mCAAI,MAAM,CAAC;gBACnC,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,OAAO,CAAC,OAAO,mCAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnC,CAAC;gBACD,IAAI,KAAK;;oBACP,OAAO,MAAA,OAAO,CAAC,KAAK,mCAAI,MAAM,CAAC;gBACjC,CAAC;aACF,CAAC;SACH;QAED,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAKD,IAAI,YAAY;QACd,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACvB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,YAAY,GAA6C,oBAAoB,CACjF,EAAE,EACF,UAAU,CAAC,YAAY,EACvB,GAAG,CAAC,YAAY,CACjB,CAAC;YACF,IAAI,CAAC,aAAa,GAAG;gBACnB,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,SAAS,CAAC;gBAC7C,CAAC;gBACD,IAAI,OAAO;;oBACT,OAAO,MAAA,YAAY,CAAC,OAAO,mCAAI,SAAS,CAAC;gBAC3C,CAAC;gBACD,IAAI,SAAS;;oBACX,OAAO,MAAA,YAAY,CAAC,SAAS,mCAAI,CAAC,CAAC;gBACrC,CAAC;gBACD,IAAI,KAAK;;oBACP,OAAO,MAAA,YAAY,CAAC,KAAK,mCAAI,YAAY,CAAC,SAAS,GAAG,CAAC,CAAC;gBAC1D,CAAC;gBACD,IAAI,UAAU;;oBACZ,OAAO,MAAA,YAAY,CAAC,UAAU,mCAAI,MAAM,CAAC;gBAC3C,CAAC;gBACD,IAAI,aAAa;;oBACf,OAAO,MAAA,YAAY,CAAC,aAAa,mCAAI,EAAE,CAAC;gBAC1C,CAAC;gBACD,IAAI,eAAe;;oBACjB,OAAO,MAAA,YAAY,CAAC,eAAe,mCAAI,YAAY,CAAC;gBACtD,CAAC;gBACD,IAAI,mBAAmB;;oBACrB,OAAO,MAAA,YAAY,CAAC,mBAAmB,mCAAI,SAAS,CAAC;gBACvD,CAAC;gBACD,IAAI,2BAA2B;;oBAC7B,OAAO,MAAA,YAAY,CAAC,2BAA2B,mCAAI,CAAC,CAAC;gBACvD,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAID,IAAI,mBAAmB;QACrB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAC9B,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,mBAAmB,GAAoD,oBAAoB,CAC/F,EAAE,EACF,UAAU,CAAC,mBAAmB,EAC9B,GAAG,CAAC,mBAAmB,CACxB,CAAC;YACF,IAAI,CAAC,oBAAoB,GAAG;gBAC1B,IAAI,SAAS;;oBACX,OAAO,MAAA,mBAAmB,CAAC,SAAS,mCAAI,MAAM,CAAC;gBACjD,CAAC;gBAID,IAAI,SAAS;;oBACX,OAAO,MAAA,mBAAmB,CAAC,SAAS,mCAAI,CAAC,CAAC;gBAC5C,CAAC;gBAID,IAAI,gBAAgB;;oBAClB,OAAO,MAAA,mBAAmB,CAAC,gBAAgB,mCAAI,uBAAuB,CAAC;gBACzE,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACnC,CAAC;IACD,IAAI,gBAAgB;QAMlB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;YAC3B,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,gBAAgB,GAAiD,oBAAoB,CACzF,EAAE,EACF,UAAU,CAAC,gBAAgB,EAC3B,GAAG,CAAC,gBAAgB,CACrB,CAAC;YACF,IAAI,CAAC,iBAAiB,GAAG;gBACvB,IAAI,MAAM;oBACR,IAAI,gBAAgB,CAAC,MAAM,EAAE;wBAC3B,OAAO;4BACL,IAAI,KAAK;;gCACP,OAAO,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,KAAK,mCAAI,EAAE,CAAC;4BAC9C,CAAC;4BACD,IAAI,UAAU;;gCACZ,OAAO,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,UAAU,mCAAI,wBAAwB,CAAC;4BACzE,CAAC;4BACD,IAAI,QAAQ;;gCACV,OAAO,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,QAAQ,mCAAI,qBAAqB,CAAC;4BACpE,CAAC;yBACF,CAAC;qBACH;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC;gBACD,IAAI,MAAM;oBAQR,IAAI,gBAAgB,CAAC,MAAM,EAAE;wBAC3B,OAAO;4BACL,IAAI,SAAS;;gCACX,OAAO,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,SAAS,mCAAI,wBAAwB,CAAC;4BACxE,CAAC;4BACD,IAAI,OAAO;;gCACT,OAAO,CACL,MAAA,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,OAAO,mCAAI,MAAA,gBAAgB,CAAC,MAAM,0CAAE,SAAS,mCAAI,wBAAwB,CACnG,CAAC;4BACJ,CAAC;4BACD,IAAI,SAAS;;gCACX,OAAO,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,SAAS,mCAAI,CAAC,CAAC;4BACjD,CAAC;4BACD,IAAI,KAAK;;gCACP,OAAO,MAAA,MAAA,MAAA,gBAAgB,CAAC,MAAM,0CAAE,KAAK,mCAAI,MAAA,gBAAgB,CAAC,MAAM,0CAAE,SAAS,mCAAI,CAAC,CAAC;4BACnF,CAAC;yBACF,CAAC;qBACH;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IACD,IAAI,cAAc;QAChB,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,cAAc,GAA+C,oBAAoB,CACrF,EAAE,EACF,UAAU,CAAC,cAAc,EACzB,GAAG,CAAC,cAAc,CACnB,CAAC;YACF,IAAI,CAAC,eAAe,GAAG;gBACrB,IAAI,WAAW;;oBACb,OAAO,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,WAAW,mCAAI,qBAAqB,CAAC;gBAC9D,CAAC;gBACD,IAAI,eAAe;;oBACjB,OAAO,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,eAAe,mCAAI,SAAS,CAAC;gBACtD,CAAC;gBACD,IAAI,mBAAmB;;oBACrB,OAAO,MAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,mBAAmB,mCAAI,CAAC,CAAC;gBAClD,CAAC;aACF,CAAC;SACH;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,IAAI,SAAS;QACX,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YACpB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,SAAS,GAA0C,oBAAoB,CAC3E,EAAE,EACF,UAAU,CAAC,SAAS,EACpB,GAAG,CAAC,SAAS,CACd,CAAC;YACF,IAAI,CAAC,UAAU,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;SAC3C;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,IAAI,eAAe;QACjB,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC1B,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;YAC/C,MAAM,eAAe,GAAgD,oBAAoB,CACvF,EAAE,EACF,kBAAkB,EAClB,UAAU,CAAC,eAAe,EAC1B,GAAG,CAAC,eAAe,CACpB,CAAC;YACF,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,WAAW,CAAC,KAAe;QACzB,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QAC/C,OAAO,gBAAgB,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,gBAAgB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC7E,CAAC;IACD,OAAO,CAAC,GAA4B;QAClC,OAAO,IAAI,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC;IACO,QAAQ,CAAC,KAAiB;QAChC,OAAO;YACL,IAAI,QAAQ;gBACV,OAAO,KAAK,CAAC,QAAQ,CAAC;YACxB,CAAC;YACD,IAAI,UAAU;gBACZ,OAAO,KAAK,CAAC,UAAU,CAAC;YAC1B,CAAC;YACD,IAAI,UAAU;gBACZ,OAAO,KAAK,CAAC,UAAU,CAAC;YAC1B,CAAC;YACD,IAAI,WAAW;gBACb,OAAO,KAAK,CAAC,WAAW,CAAC;YAC3B,CAAC;YACD,IAAI,SAAS;gBACX,OAAO,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC;YACD,IAAI,OAAO;gBACT,OAAO,KAAK,CAAC,OAAO,CAAC;YACvB,CAAC;YACD,IAAI,KAAK;gBACP,OAAO,KAAK,CAAC,KAAK,CAAC;YACrB,CAAC;YACD,IAAI,WAAW;gBACb,OAAO,KAAK,CAAC,WAAW,CAAC;YAC3B,CAAC;YACD,IAAI,eAAe;gBACjB,OAAO,KAAK,CAAC,eAAe,CAAC;YAC/B,CAAC;YACD,IAAI,cAAc;gBAChB,OAAO,KAAK,CAAC,cAAc,CAAC;YAC9B,CAAC;YACD,IAAI,KAAK;gBACP,IAAI,KAAK,CAAC,KAAK,EAAE;oBACf,OAAO;wBACL,IAAI,WAAW;;4BACb,OAAO,MAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,mCAAI,SAAS,CAAC;wBAC/C,CAAC;wBAOD,IAAI,mBAAmB;;4BACrB,OAAO,CACL,MAAA,MAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,mBAAmB,mCAChC,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,KAAI,OAAO,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,CAAA,KAAK,QAAQ;gCACvE,CAAC,CAAC,WAAW,CAAC,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC;gCACnD,CAAC,CAAC,SAAS,CAAC,mCACd,SAAS,CACV,CAAC;wBACJ,CAAC;wBACD,IAAI,gBAAgB;;4BAClB,OAAO,CACL,MAAA,MAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,gBAAgB,mCAC7B,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,KAAI,OAAO,CAAA,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,CAAA,KAAK,QAAQ;gCACvE,CAAC,CAAC,WAAW,CAAC,MAAA,KAAK,CAAC,KAAK,0CAAE,WAAW,EAAE,GAAG,EAAE,KAAK,CAAC;gCACnD,CAAC,CAAC,SAAS,CAAC,mCACd,SAAS,CACV,CAAC;wBACJ,CAAC;qBACF,CAAC;iBACH;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAmCD,IAAI,UAAU;gBACZ,IAAI,KAAK,CAAC,UAAU,EAAE;oBACpB,OAAO;wBACL,IAAI,WAAW;;4BACb,OAAO,MAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,WAAW,mCAAI,SAAS,CAAC;wBACpD,CAAC;wBACD,IAAI,eAAe;;4BACjB,OAAO,MAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,eAAe,mCAAI,SAAS,CAAC;wBACxD,CAAC;wBACD,IAAI,cAAc;;4BAChB,OAAO,MAAA,MAAA,KAAK,CAAC,UAAU,0CAAE,cAAc,mCAAI,SAAS,CAAC;wBACvD,CAAC;qBACF,CAAC;iBACH;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,OAAO;gBACT,OAAO,KAAK,CAAC,OAAO,CAAC;YACvB,CAAC;YACD,IAAI,SAAS;gBACX,OAAO,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC;YACD,IAAI,YAAY;gBACd,OAAO,KAAK,CAAC,YAAY,CAAC;YAC5B,CAAC;YACD,IAAI,YAAY;gBACd,OAAO,KAAK,CAAC,YAAY,CAAC;YAC5B,CAAC;YACD,IAAI,UAAU;gBACZ,OAAO,KAAK,CAAC,UAAU,CAAC;YAC1B,CAAC;YACD,IAAI,YAAY;gBACd,OAAO,KAAK,CAAC,YAAY,CAAC;YAC5B,CAAC;YACD,IAAI,SAAS;gBACX,OAAO,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC;YACD,IAAI,SAAS;gBACX,OAAO,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC;YACD,IAAI,MAAM;gBACR,OAAO,KAAK,CAAC,MAAM,CAAC;YACtB,CAAC;YACD,IAAI,SAAS;gBACX,OAAO,KAAK,CAAC,SAAS,CAAC;YACzB,CAAC;YACD,IAAI,MAAM;gBACR,OAAO,KAAK,CAAC,MAAM,CAAC;YACtB,CAAC;YACD,IAAI,SAAS;;gBACX,OAAO,MAAA,KAAK,CAAC,SAAS,mCAAI,KAAK,CAAC;YAClC,CAAC;YACD,IAAI,cAAc;gBAChB,OAAO,KAAK,CAAC,cAAc,CAAC;YAC9B,CAAC;YACD,IAAI,aAAa;gBACf,OAAO,KAAK,CAAC,aAAa,CAAC;YAC7B,CAAC;YACD,IAAI,WAAW;;gBACb,OAAO,MAAA,KAAK,CAAC,WAAW,mCAAI,KAAK,CAAC;YACpC,CAAC;YACD,IAAI,gBAAgB;gBAClB,OAAO,KAAK,CAAC,gBAAgB,CAAC;YAChC,CAAC;YACD,IAAI,eAAe;gBACjB,OAAO,KAAK,CAAC,eAAe,CAAC;YAC/B,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAED,SAAS,gBAAgB,CAAC,GAA4B,EAAE,KAAe;IACrE,IAAI,GAAG,YAAY,UAAU,EAAE;QAC7B,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC/B;IAED,IAAI,CAAC,GAAQ,GAAG,CAAC;IACjB,IAAI,CAAC,CAAC,EAAE;QACN,OAAO,KAAK,CAAC;KACd;IACD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACjD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,CAAC,EAAE;YACN,OAAO,KAAK,CAAC;SACd;KACF;IACD,OAAO,CAAC,CAAC,CAAC,CAAC;AACb,CAAC","file":"theme.js","sourcesContent":["/* eslint-disable no-undef */\n/* eslint-disable sort-imports */\nimport type {\n ColorPropertyDefine,\n ColorsDef,\n ColorsPropertyDefine,\n ColumnIconOption,\n FrameStyle,\n ITableThemeDefine,\n InteractionStyle,\n LineClamp,\n LineDashsDef,\n LineDashsPropertyDefine,\n LineWidthsDef,\n LineWidthsPropertyDefine,\n PartialTableThemeDefine,\n RequiredTableThemeDefine,\n TextOverflow,\n ThemeStyle,\n // menuStyle,\n TableFrameStyle,\n PaddingsPropertyDefine,\n ScrollStyle,\n CursorPropertyDefine,\n TooltipStyle,\n MarkedPropertyDefine,\n UnderlinePropertyDefine,\n LineDashPropertyDefine,\n LineThroughPropertyDefine,\n FontSizePropertyDefine,\n FontFamilyPropertyDefine,\n FontWeightPropertyDefine,\n FontVariantPropertyDefine,\n FontStylePropertyDefine,\n TextAlignType,\n TextBaselineType\n} from '../ts-types';\nimport { getChainSafe } from '../tools/helper';\nimport { changeColor, ingoreNoneValueMerge, merge } from '../tools/util';\nimport {\n DEFAULTBGCOLOR,\n DEFAULTBORDERCOLOR,\n DEFAULTBORDERLINEDASH,\n DEFAULTBORDERLINEWIDTH,\n DEFAULTFONTCOLOR,\n DEFAULTFONTFAMILY,\n DEFAULTFONTSIZE\n} from '../tools/global';\nimport { defalutPoptipStyle, getAxisStyle } from './component';\n//private symbol\n// const _ = getSymbol();\n\nfunction getProp(obj: PartialTableThemeDefine, superObj: ITableThemeDefine, names: string[], defNames?: string[]): any {\n return (\n getChainSafe(obj, ...names) ||\n getChainSafe(superObj, ...names) ||\n (defNames && getChainSafe(obj, ...defNames)) ||\n (defNames && getChainSafe(superObj, ...defNames))\n );\n}\n\nexport class TableTheme implements ITableThemeDefine {\n private internalTheme: {\n obj: PartialTableThemeDefine;\n superTheme: ITableThemeDefine;\n };\n private _defaultStyle: RequiredTableThemeDefine['defaultStyle'] | null = null;\n private _header: ITableThemeDefine['headerStyle'] | null = null;\n private _cornerHeader: ITableThemeDefine['cornerHeaderStyle'] | null = null;\n private _cornerRightTopCell: ITableThemeDefine['cornerRightTopCellStyle'] | null = null;\n private _cornerLeftBottomCell: ITableThemeDefine['cornerLeftBottomCellStyle'] | null = null;\n private _cornerRightBottomCell: ITableThemeDefine['cornerRightBottomCellStyle'] | null = null;\n private _rightFrozen: ITableThemeDefine['rightFrozenStyle'] | null = null;\n private _bottomFrozen: ITableThemeDefine['bottomFrozenStyle'] | null = null;\n private _rowHeader: ITableThemeDefine['rowHeaderStyle'] | null = null;\n private _body: ITableThemeDefine['bodyStyle'] | null = null;\n private _scroll: ITableThemeDefine['scrollStyle'] | null = null;\n private _tooltip: ITableThemeDefine['tooltipStyle'] | null = null;\n private _frameStyle: ITableThemeDefine['frameStyle'] | null = null;\n private _columnResize: RequiredTableThemeDefine['columnResize'] | null = null;\n private _dragHeaderSplitLine: RequiredTableThemeDefine['dragHeaderSplitLine'] | null = null;\n private _frozenColumnLine: RequiredTableThemeDefine['frozenColumnLine'] | null = null;\n private _selectionStyle: RequiredTableThemeDefine['selectionStyle'] | null = null;\n\n private _axisStyle: RequiredTableThemeDefine['axisStyle'] | null = null;\n private _textPopTipStyle: RequiredTableThemeDefine['textPopTipStyle'] | null = null;\n\n constructor(obj: PartialTableThemeDefine | ITableThemeDefine, superTheme: ITableThemeDefine) {\n this.internalTheme = {\n obj,\n superTheme\n };\n }\n get font(): string {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['font'], ['bodyStyle', 'font']);\n }\n get underlayBackgroundColor(): string {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['underlayBackgroundColor']);\n }\n\n get cellInnerBorder(): boolean {\n const { obj, superTheme } = this.internalTheme;\n return !!getProp(obj, superTheme, ['cellInnerBorder']);\n }\n\n get cellBorderClipDirection(): 'top-left' | 'bottom-right' {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['cellBorderClipDirection']) ?? 'top-left';\n }\n\n get _contentOffset(): number {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['_contentOffset']) ?? 0;\n }\n\n get defaultStyle(): RequiredTableThemeDefine['defaultStyle'] {\n // const defaultStyle = getProp(obj, superTheme, [\"defaultStyle\"]);\n if (!this._defaultStyle) {\n const { obj, superTheme } = this.internalTheme;\n const defaultStyle: ThemeStyle = ingoreNoneValueMerge({}, superTheme.defaultStyle, obj.defaultStyle);\n this._defaultStyle = {\n get fontSize(): FontSizePropertyDefine {\n return defaultStyle.fontSize ?? DEFAULTFONTSIZE;\n },\n get fontFamily(): FontFamilyPropertyDefine {\n return defaultStyle.fontFamily ?? DEFAULTFONTFAMILY;\n },\n get fontWeight(): FontWeightPropertyDefine | undefined {\n return defaultStyle.fontWeight;\n },\n get fontVariant(): FontVariantPropertyDefine | undefined {\n return defaultStyle.fontVariant;\n },\n get fontStyle(): FontStylePropertyDefine | undefined {\n return defaultStyle.fontStyle;\n },\n get bgColor(): ColorPropertyDefine {\n return defaultStyle.bgColor ?? DEFAULTBGCOLOR;\n },\n get color(): ColorPropertyDefine {\n return defaultStyle.color ?? DEFAULTFONTCOLOR;\n },\n get borderColor(): ColorsPropertyDefine {\n return defaultStyle.borderColor ?? DEFAULTBORDERCOLOR;\n },\n get borderLineWidth(): LineWidthsPropertyDefine | undefined {\n return defaultStyle.borderLineWidth ?? DEFAULTBORDERLINEWIDTH;\n },\n get borderLineDash(): LineDashsPropertyDefine | undefined {\n return defaultStyle.borderLineDash ?? DEFAULTBORDERLINEDASH;\n },\n get hover(): InteractionStyle | undefined {\n if (defaultStyle.hover) {\n return {\n get cellBgColor(): ColorPropertyDefine | undefined {\n return defaultStyle.hover?.cellBgColor ?? undefined;\n },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return defaultStyle.hover?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return defaultStyle.hover?.cellBorderLineWidth ?? undefined;\n // },\n get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n return (\n defaultStyle.hover?.inlineColumnBgColor ??\n (defaultStyle.hover?.cellBgColor && typeof defaultStyle.hover?.cellBgColor === 'string'\n ? changeColor(defaultStyle.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n },\n get inlineRowBgColor(): ColorPropertyDefine | undefined {\n return (\n defaultStyle.hover?.inlineRowBgColor ??\n (defaultStyle.hover?.cellBgColor && typeof defaultStyle.hover?.cellBgColor === 'string'\n ? changeColor(defaultStyle.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n }\n };\n }\n return undefined;\n },\n // get click(): InteractionStyle | undefined {\n // if (defaultStyle.click)\n // return {\n // get cellBgColor(): ColorPropertyDefine | undefined {\n // return defaultStyle.click?.cellBgColor ?? undefined;\n // },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return defaultStyle.click?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return defaultStyle.click?.cellBorderLineWidth ?? undefined;\n // },\n // // get cellBorderLineDash(): LineDashsPropertyDefine |undefined{\n // // return defaultStyle.click?.cellBorderLineDash??undefined\n // // },\n // get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // defaultStyle.click?.inlineColumnBgColor ??\n // (defaultStyle.click?.cellBgColor &&\n // typeof defaultStyle.click?.cellBgColor === 'string'\n // ? changeColor(defaultStyle.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // get inlineRowBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // defaultStyle.click?.inlineRowBgColor ??\n // (defaultStyle.click?.cellBgColor &&\n // typeof defaultStyle.click?.cellBgColor === 'string'\n // ? changeColor(defaultStyle.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // };\n // return undefined;\n // },\n get padding(): PaddingsPropertyDefine {\n return defaultStyle.padding ?? [10, 16, 10, 16];\n },\n get textAlign(): TextAlignType {\n return defaultStyle.textAlign ?? 'left';\n },\n get textBaseline(): TextBaselineType {\n return defaultStyle.textBaseline ?? 'middle';\n },\n get textOverflow(): TextOverflow {\n return defaultStyle.textOverflow ?? 'ellipsis';\n },\n get lineHeight(): number {\n return defaultStyle.lineHeight;\n },\n get autoWrapText(): boolean {\n return defaultStyle.autoWrapText ?? false;\n },\n get lineClamp(): LineClamp {\n return defaultStyle.lineClamp ?? 'auto';\n },\n get linkColor(): ColorPropertyDefine {\n return defaultStyle.linkColor ?? '#3772ff';\n },\n get cursor(): CursorPropertyDefine {\n return defaultStyle.cursor ?? 'auto';\n },\n get marked(): MarkedPropertyDefine {\n return defaultStyle.marked ?? false;\n },\n get underline(): UnderlinePropertyDefine {\n return defaultStyle.underline ?? false;\n },\n get underlineColor(): ColorPropertyDefine | undefined {\n return defaultStyle.underlineColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get underlineDash(): LineDashPropertyDefine | undefined {\n return defaultStyle.underlineDash;\n },\n get lineThrough(): LineThroughPropertyDefine | undefined {\n return defaultStyle.lineThrough ?? false;\n },\n get lineThroughColor(): ColorPropertyDefine | undefined {\n return defaultStyle.lineThroughColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get lineThroughDash(): LineDashPropertyDefine | undefined {\n return defaultStyle.lineThroughDash;\n }\n };\n }\n return this._defaultStyle;\n }\n get headerStyle(): ITableThemeDefine['headerStyle'] {\n if (!this._header) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge({}, this.defaultStyle, superTheme.headerStyle, obj.headerStyle);\n this._header = this.getStyle(header);\n }\n return this._header;\n }\n get cornerHeaderStyle(): ITableThemeDefine['cornerHeaderStyle'] {\n if (!this._cornerHeader) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerHeaderStyle,\n obj.cornerHeaderStyle // ?? obj.headerStyle\n );\n this._cornerHeader = this.getStyle(header);\n }\n return this._cornerHeader;\n }\n get cornerRightTopCellStyle(): ITableThemeDefine['cornerRightTopCellStyle'] {\n if (!this._cornerRightTopCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerRightTopCellStyle && !obj.cornerRightTopCellStyle) {\n return this._cornerRightTopCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerRightTopCellStyle,\n obj.cornerRightTopCellStyle // ?? obj.headerStyle\n );\n this._cornerRightTopCell = this.getStyle(header);\n }\n return this._cornerRightTopCell;\n }\n get cornerLeftBottomCellStyle(): ITableThemeDefine['cornerLeftBottomCellStyle'] {\n if (!this._cornerLeftBottomCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerLeftBottomCellStyle && !obj.cornerLeftBottomCellStyle) {\n return this._cornerLeftBottomCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerLeftBottomCellStyle,\n obj.cornerLeftBottomCellStyle // ?? obj.headerStyle\n );\n this._cornerLeftBottomCell = this.getStyle(header);\n }\n return this._cornerLeftBottomCell;\n }\n get cornerRightBottomCellStyle(): ITableThemeDefine['cornerRightBottomCellStyle'] {\n if (!this._cornerRightBottomCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerRightBottomCellStyle && !obj.cornerRightBottomCellStyle) {\n return this._cornerRightBottomCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerRightBottomCellStyle,\n obj.cornerRightBottomCellStyle // ?? obj.headerStyle\n );\n this._cornerRightBottomCell = this.getStyle(header);\n }\n return this._cornerRightBottomCell;\n }\n get rightFrozenStyle(): ITableThemeDefine['rightFrozenStyle'] {\n if (!this._rightFrozen) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.rightFrozenStyle && !obj.rightFrozenStyle) {\n return this._rightFrozen;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n this.rowHeaderStyle,\n superTheme.rightFrozenStyle,\n obj.rightFrozenStyle // ?? obj.headerStyle\n );\n this._rightFrozen = this.getStyle(header);\n }\n return this._rightFrozen;\n }\n get bottomFrozenStyle(): ITableThemeDefine['bottomFrozenStyle'] {\n if (!this._bottomFrozen) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.bottomFrozenStyle && !obj.bottomFrozenStyle) {\n return this._bottomFrozen;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n this.headerStyle,\n superTheme.bottomFrozenStyle,\n obj.bottomFrozenStyle // ?? obj.headerStyle\n );\n this._bottomFrozen = this.getStyle(header);\n }\n return this._bottomFrozen;\n }\n get rowHeaderStyle(): ITableThemeDefine['rowHeaderStyle'] {\n if (!this._rowHeader) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.rowHeaderStyle,\n obj.rowHeaderStyle ?? obj.headerStyle\n );\n this._rowHeader = this.getStyle(header);\n }\n return this._rowHeader;\n }\n get bodyStyle(): ITableThemeDefine['bodyStyle'] {\n if (!this._body) {\n const { obj, superTheme } = this.internalTheme;\n // const body = getProp(obj, superTheme, [\"body\"]);\n const body: ThemeStyle = ingoreNoneValueMerge({}, this.defaultStyle, superTheme.bodyStyle, obj.bodyStyle);\n this._body = this.getStyle(body);\n }\n\n return this._body;\n }\n\n get frameStyle(): ITableThemeDefine['frameStyle'] {\n if (!this._frameStyle) {\n const { obj, superTheme } = this.internalTheme;\n const frameStyle: TableFrameStyle = ingoreNoneValueMerge({}, superTheme.frameStyle, obj.frameStyle);\n this._frameStyle = {\n get borderColor(): ColorsDef | undefined {\n return frameStyle.borderColor;\n },\n get borderLineWidth(): LineWidthsDef | undefined {\n return frameStyle.borderLineWidth;\n },\n get borderLineDash(): LineDashsDef | undefined {\n return frameStyle.borderLineDash;\n },\n get innerBorder(): boolean | undefined {\n return frameStyle.innerBorder;\n },\n get shadowBlur(): number {\n return frameStyle.shadowBlur;\n },\n get shadowColor(): string {\n return frameStyle.shadowColor;\n },\n get shadowOffsetX(): number {\n return frameStyle.shadowOffsetX;\n },\n get shadowOffsetY(): number {\n return frameStyle.shadowOffsetY;\n },\n get cornerRadius(): number {\n return frameStyle.cornerRadius;\n }\n };\n }\n return this._frameStyle;\n }\n get scrollStyle(): ITableThemeDefine['scrollStyle'] {\n if (!this._scroll) {\n const { obj, superTheme } = this.internalTheme;\n const scroll: ScrollStyle = ingoreNoneValueMerge({}, superTheme.scrollStyle, obj.scrollStyle);\n this._scroll = {\n get scrollSliderColor(): string | undefined {\n return scroll.scrollSliderColor ?? '#C0C0C0';\n },\n get scrollRailColor(): string | undefined {\n return scroll.scrollRailColor;\n },\n get visible(): 'always' | 'scrolling' | 'none' | 'focus' {\n return scroll.visible ?? 'scrolling';\n },\n get width(): number | undefined {\n return scroll.width ?? 7;\n },\n get hoverOn(): boolean | undefined {\n return scroll.hoverOn ?? true;\n }\n };\n }\n\n return this._scroll;\n }\n get tooltipStyle(): ITableThemeDefine['tooltipStyle'] {\n if (!this._tooltip) {\n const { obj, superTheme } = this.internalTheme;\n const tooltip: TooltipStyle = ingoreNoneValueMerge({}, superTheme.tooltipStyle, obj.tooltipStyle);\n this._tooltip = {\n get fontFamily(): string | undefined {\n return tooltip.fontFamily ?? DEFAULTFONTFAMILY;\n },\n get fontSize(): number | undefined {\n return tooltip.fontSize ?? DEFAULTFONTSIZE;\n },\n get bgColor(): string | undefined {\n return tooltip.bgColor ?? '#000';\n },\n get padding(): number[] {\n return tooltip.padding ?? [6, 8];\n },\n get color(): string | undefined {\n return tooltip.color ?? '#FFF';\n }\n };\n }\n\n return this._tooltip;\n }\n\n /**\n * resize 分割线样式\n */\n get columnResize(): RequiredTableThemeDefine['columnResize'] {\n if (!this._columnResize) {\n const { obj, superTheme } = this.internalTheme;\n const columnResize: RequiredTableThemeDefine['columnResize'] = ingoreNoneValueMerge(\n {},\n superTheme.columnResize,\n obj.columnResize\n );\n this._columnResize = {\n get lineColor(): ColorPropertyDefine {\n return columnResize.lineColor ?? '#416EFF';\n },\n get bgColor(): ColorPropertyDefine {\n return columnResize.bgColor ?? '#D9E2FF';\n },\n get lineWidth(): number {\n return columnResize.lineWidth ?? 1;\n },\n get width(): number {\n return columnResize.width ?? columnResize.lineWidth + 2;\n },\n get labelColor(): string {\n return columnResize.labelColor ?? '#FFF';\n },\n get labelFontSize(): number {\n return columnResize.labelFontSize ?? 10;\n },\n get labelFontFamily(): string {\n return columnResize.labelFontFamily ?? 'sans-serif';\n },\n get labelBackgroundFill(): string {\n return columnResize.labelBackgroundFill ?? '#3073F2';\n },\n get labelBackgroundCornerRadius(): number {\n return columnResize.labelBackgroundCornerRadius ?? 5;\n }\n };\n }\n return this._columnResize;\n }\n /**\n * 移位 分割线样式\n */\n get dragHeaderSplitLine(): RequiredTableThemeDefine['dragHeaderSplitLine'] {\n if (!this._dragHeaderSplitLine) {\n const { obj, superTheme } = this.internalTheme;\n const dragHeaderSplitLine: RequiredTableThemeDefine['dragHeaderSplitLine'] = ingoreNoneValueMerge(\n {},\n superTheme.dragHeaderSplitLine,\n obj.dragHeaderSplitLine\n );\n this._dragHeaderSplitLine = {\n get lineColor(): ColorPropertyDefine {\n return dragHeaderSplitLine.lineColor ?? 'blue';\n },\n // get bgColor(): ColorPropertyDefine {\n // return dragHeaderSplitLine.bgColor ?? dragHeaderSplitLine.lineColor;\n // },\n get lineWidth(): number {\n return dragHeaderSplitLine.lineWidth ?? 2;\n },\n // get width(): number {\n // return dragHeaderSplitLine.width ?? dragHeaderSplitLine.lineWidth;\n // },\n get shadowBlockColor(): string {\n return dragHeaderSplitLine.shadowBlockColor ?? 'rgba(204,204,204,0.3)';\n }\n };\n }\n return this._dragHeaderSplitLine;\n }\n get frozenColumnLine(): RequiredTableThemeDefine['frozenColumnLine'] {\n // const { obj, superTheme } = this.internalTheme;\n // const that = this;\n // const frozenColumnLine = getProp(obj, superTheme, [\n // \"frozenColumnLine\",\n // ]);\n if (!this._frozenColumnLine) {\n const { obj, superTheme } = this.internalTheme;\n const frozenColumnLine: RequiredTableThemeDefine['frozenColumnLine'] = ingoreNoneValueMerge(\n {},\n superTheme.frozenColumnLine,\n obj.frozenColumnLine\n );\n this._frozenColumnLine = {\n get shadow(): { width: number; startColor: string; endColor: string } | undefined {\n if (frozenColumnLine.shadow) {\n return {\n get width(): number {\n return frozenColumnLine.shadow?.width ?? 24;\n },\n get startColor(): string {\n return frozenColumnLine.shadow?.startColor ?? 'rgba(00, 24, 47, 0.06)';\n },\n get endColor(): string {\n return frozenColumnLine.shadow?.endColor ?? 'rgba(00, 24, 47, 0)';\n }\n };\n }\n return undefined;\n },\n get border():\n | {\n lineColor: ColorPropertyDefine;\n bgColor?: ColorPropertyDefine;\n lineWidth: number;\n width?: number;\n }\n | undefined {\n if (frozenColumnLine.border) {\n return {\n get lineColor(): ColorPropertyDefine {\n return frozenColumnLine.border?.lineColor ?? 'rgba(00, 24, 47, 0.06)';\n },\n get bgColor(): ColorPropertyDefine {\n return (\n frozenColumnLine.border?.bgColor ?? frozenColumnLine.border?.lineColor ?? 'rgba(00, 24, 47, 0.06)'\n );\n },\n get lineWidth(): number {\n return frozenColumnLine.border?.lineWidth ?? 4;\n },\n get width(): number {\n return frozenColumnLine.border?.width ?? frozenColumnLine.border?.lineWidth ?? 4;\n }\n };\n }\n return undefined;\n }\n };\n }\n return this._frozenColumnLine;\n }\n get selectionStyle(): RequiredTableThemeDefine['selectionStyle'] {\n if (!this._selectionStyle) {\n const { obj, superTheme } = this.internalTheme;\n const selectionStyle: RequiredTableThemeDefine['selectionStyle'] = ingoreNoneValueMerge(\n {},\n superTheme.selectionStyle,\n obj.selectionStyle\n );\n this._selectionStyle = {\n get cellBgColor(): string | undefined {\n return selectionStyle?.cellBgColor ?? 'rgba(0, 0, 255,0.1)';\n },\n get cellBorderColor(): string | undefined {\n return selectionStyle?.cellBorderColor ?? '#3073f2';\n },\n get cellBorderLineWidth(): number | undefined {\n return selectionStyle?.cellBorderLineWidth ?? 2;\n }\n };\n }\n return this._selectionStyle;\n }\n\n get axisStyle(): RequiredTableThemeDefine['axisStyle'] {\n if (!this._axisStyle) {\n const { obj, superTheme } = this.internalTheme;\n const axisStyle: RequiredTableThemeDefine['axisStyle'] = ingoreNoneValueMerge(\n {},\n superTheme.axisStyle,\n obj.axisStyle\n );\n this._axisStyle = getAxisStyle(axisStyle);\n }\n return this._axisStyle;\n }\n\n get textPopTipStyle(): RequiredTableThemeDefine['textPopTipStyle'] {\n if (!this._textPopTipStyle) {\n const { obj, superTheme } = this.internalTheme;\n const textPopTipStyle: RequiredTableThemeDefine['textPopTipStyle'] = ingoreNoneValueMerge(\n {},\n defalutPoptipStyle,\n superTheme.textPopTipStyle,\n obj.textPopTipStyle\n );\n this._textPopTipStyle = textPopTipStyle;\n }\n return this._textPopTipStyle;\n }\n\n hasProperty(names: string[]): boolean {\n const { obj, superTheme } = this.internalTheme;\n return hasThemeProperty(obj, names) || hasThemeProperty(superTheme, names);\n }\n extends(obj: PartialTableThemeDefine): TableTheme {\n return new TableTheme(obj, this);\n }\n private getStyle(style: ThemeStyle) {\n return {\n get fontSize(): FontSizePropertyDefine | undefined {\n return style.fontSize;\n },\n get fontFamily(): FontFamilyPropertyDefine | undefined {\n return style.fontFamily;\n },\n get fontWeight(): FontWeightPropertyDefine | undefined {\n return style.fontWeight;\n },\n get fontVariant(): FontVariantPropertyDefine | undefined {\n return style.fontVariant;\n },\n get fontStyle(): FontStylePropertyDefine | undefined {\n return style.fontStyle;\n },\n get bgColor(): ColorPropertyDefine | undefined {\n return style.bgColor;\n },\n get color(): ColorPropertyDefine | undefined {\n return style.color;\n },\n get borderColor(): ColorsPropertyDefine | undefined {\n return style.borderColor;\n },\n get borderLineWidth(): LineWidthsPropertyDefine | undefined {\n return style.borderLineWidth;\n },\n get borderLineDash(): LineDashsPropertyDefine | undefined {\n return style.borderLineDash;\n },\n get hover(): InteractionStyle | undefined {\n if (style.hover) {\n return {\n get cellBgColor(): ColorPropertyDefine | undefined {\n return style.hover?.cellBgColor ?? undefined;\n },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return style.hover?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return style.hover?.cellBorderLineWidth ?? undefined;\n // },\n get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n return (\n style.hover?.inlineColumnBgColor ??\n (style.hover?.cellBgColor && typeof style.hover?.cellBgColor === 'string'\n ? changeColor(style.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n },\n get inlineRowBgColor(): ColorPropertyDefine | undefined {\n return (\n style.hover?.inlineRowBgColor ??\n (style.hover?.cellBgColor && typeof style.hover?.cellBgColor === 'string'\n ? changeColor(style.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n }\n };\n }\n return undefined;\n },\n // get click(): InteractionStyle | undefined {\n // if (style.click)\n // return {\n // get cellBgColor(): ColorPropertyDefine | undefined {\n // return style.click?.cellBgColor ?? undefined;\n // },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return style.click?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return style.click?.cellBorderLineWidth ?? undefined;\n // },\n // // get cellBorderLineDash(): LineDashsPropertyDefine |undefined{\n // // return style.click?.cellBorderLineDash??undefined\n // // },\n // get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // style.click?.inlineColumnBgColor ??\n // (style.click?.cellBgColor && typeof style.click?.cellBgColor === 'string'\n // ? changeColor(style.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // get inlineRowBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // style.click?.inlineRowBgColor ??\n // (style.click?.cellBgColor && typeof style.click?.cellBgColor === 'string'\n // ? changeColor(style.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // };\n // return undefined;\n // },\n get frameStyle(): FrameStyle | undefined {\n if (style.frameStyle) {\n return {\n get borderColor(): ColorsDef | undefined {\n return style.frameStyle?.borderColor ?? undefined;\n },\n get borderLineWidth(): LineWidthsDef | undefined {\n return style.frameStyle?.borderLineWidth ?? undefined;\n },\n get borderLineDash(): LineDashsDef | undefined {\n return style.frameStyle?.borderLineDash ?? undefined;\n }\n };\n }\n return undefined;\n },\n get padding(): PaddingsPropertyDefine | undefined {\n return style.padding;\n },\n get textAlign(): TextAlignType | undefined {\n return style.textAlign;\n },\n get textBaseline(): TextBaselineType | undefined {\n return style.textBaseline;\n },\n get textOverflow(): TextOverflow | undefined {\n return style.textOverflow;\n },\n get lineHeight(): number | undefined {\n return style.lineHeight;\n },\n get autoWrapText(): boolean | undefined {\n return style.autoWrapText;\n },\n get lineClamp(): LineClamp | undefined {\n return style.lineClamp;\n },\n get linkColor(): ColorPropertyDefine | undefined {\n return style.linkColor;\n },\n get cursor(): CursorPropertyDefine | undefined {\n return style.cursor;\n },\n get textStick(): boolean | undefined {\n return style.textStick;\n },\n get marked(): MarkedPropertyDefine | undefined {\n return style.marked;\n },\n get underline(): UnderlinePropertyDefine {\n return style.underline ?? false;\n },\n get underlineColor(): ColorPropertyDefine | undefined {\n return style.underlineColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get underlineDash(): LineDashPropertyDefine | undefined {\n return style.underlineDash;\n },\n get lineThrough(): LineThroughPropertyDefine | undefined {\n return style.lineThrough ?? false;\n },\n get lineThroughColor(): ColorPropertyDefine | undefined {\n return style.lineThroughColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get lineThroughDash(): LineDashPropertyDefine | undefined {\n return style.lineThroughDash;\n }\n };\n }\n}\n\nfunction hasThemeProperty(obj: PartialTableThemeDefine, names: string[]): boolean {\n if (obj instanceof TableTheme) {\n return obj.hasProperty(names);\n }\n\n let o: any = obj;\n if (!o) {\n return false;\n }\n for (let index = 0; index < names.length; index++) {\n const name = names[index];\n o = o[name];\n if (!o) {\n return false;\n }\n }\n return !!o;\n}\n"]}
1
+ {"version":3,"sources":["../src/themes/theme.ts"],"names":[],"mappings":"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","file":"theme.js","sourcesContent":["/* eslint-disable no-undef */\n/* eslint-disable sort-imports */\nimport type {\n ColorPropertyDefine,\n ColorsDef,\n ColorsPropertyDefine,\n ColumnIconOption,\n FrameStyle,\n ITableThemeDefine,\n InteractionStyle,\n LineClamp,\n LineDashsDef,\n LineDashsPropertyDefine,\n LineWidthsDef,\n LineWidthsPropertyDefine,\n PartialTableThemeDefine,\n RequiredTableThemeDefine,\n TextOverflow,\n ThemeStyle,\n // menuStyle,\n TableFrameStyle,\n PaddingsPropertyDefine,\n ScrollStyle,\n CursorPropertyDefine,\n TooltipStyle,\n MarkedPropertyDefine,\n UnderlinePropertyDefine,\n LineDashPropertyDefine,\n LineThroughPropertyDefine,\n FontSizePropertyDefine,\n FontFamilyPropertyDefine,\n FontWeightPropertyDefine,\n FontVariantPropertyDefine,\n FontStylePropertyDefine,\n TextAlignType,\n TextBaselineType\n} from '../ts-types';\nimport { getChainSafe } from '../tools/helper';\nimport { changeColor, ingoreNoneValueMerge, merge } from '../tools/util';\nimport {\n DEFAULTBGCOLOR,\n DEFAULTBORDERCOLOR,\n DEFAULTBORDERLINEDASH,\n DEFAULTBORDERLINEWIDTH,\n DEFAULTFONTCOLOR,\n DEFAULTFONTFAMILY,\n DEFAULTFONTSIZE\n} from '../tools/global';\nimport { defalutPoptipStyle, getAxisStyle } from './component';\n//private symbol\n// const _ = getSymbol();\n\nfunction getProp(obj: PartialTableThemeDefine, superObj: ITableThemeDefine, names: string[], defNames?: string[]): any {\n return (\n getChainSafe(obj, ...names) ||\n getChainSafe(superObj, ...names) ||\n (defNames && getChainSafe(obj, ...defNames)) ||\n (defNames && getChainSafe(superObj, ...defNames))\n );\n}\n\nexport class TableTheme implements ITableThemeDefine {\n private internalTheme: {\n obj: PartialTableThemeDefine;\n superTheme: ITableThemeDefine;\n };\n private _defaultStyle: RequiredTableThemeDefine['defaultStyle'] | null = null;\n private _header: ITableThemeDefine['headerStyle'] | null = null;\n private _cornerHeader: ITableThemeDefine['cornerHeaderStyle'] | null = null;\n private _cornerRightTopCell: ITableThemeDefine['cornerRightTopCellStyle'] | null = null;\n private _cornerLeftBottomCell: ITableThemeDefine['cornerLeftBottomCellStyle'] | null = null;\n private _cornerRightBottomCell: ITableThemeDefine['cornerRightBottomCellStyle'] | null = null;\n private _rightFrozen: ITableThemeDefine['rightFrozenStyle'] | null = null;\n private _bottomFrozen: ITableThemeDefine['bottomFrozenStyle'] | null = null;\n private _rowHeader: ITableThemeDefine['rowHeaderStyle'] | null = null;\n private _body: ITableThemeDefine['bodyStyle'] | null = null;\n private _scroll: ITableThemeDefine['scrollStyle'] | null = null;\n private _tooltip: ITableThemeDefine['tooltipStyle'] | null = null;\n private _frameStyle: ITableThemeDefine['frameStyle'] | null = null;\n private _columnResize: RequiredTableThemeDefine['columnResize'] | null = null;\n private _dragHeaderSplitLine: RequiredTableThemeDefine['dragHeaderSplitLine'] | null = null;\n private _frozenColumnLine: RequiredTableThemeDefine['frozenColumnLine'] | null = null;\n private _selectionStyle: RequiredTableThemeDefine['selectionStyle'] | null = null;\n\n private _axisStyle: RequiredTableThemeDefine['axisStyle'] | null = null;\n private _checkboxStyle: RequiredTableThemeDefine['checkboxStyle'] | null = null;\n private _textPopTipStyle: RequiredTableThemeDefine['textPopTipStyle'] | null = null;\n\n isPivot: boolean = false;\n\n constructor(obj: PartialTableThemeDefine | ITableThemeDefine, superTheme: ITableThemeDefine) {\n this.internalTheme = {\n obj,\n superTheme\n };\n }\n get font(): string {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['font'], ['bodyStyle', 'font']);\n }\n get underlayBackgroundColor(): string {\n const { obj, superTheme } = this.internalTheme;\n return getProp(obj, superTheme, ['underlayBackgroundColor']);\n }\n\n get defaultStyle(): RequiredTableThemeDefine['defaultStyle'] {\n // const defaultStyle = getProp(obj, superTheme, [\"defaultStyle\"]);\n if (!this._defaultStyle) {\n const { obj, superTheme } = this.internalTheme;\n const defaultStyle: ThemeStyle = ingoreNoneValueMerge({}, superTheme.defaultStyle, obj.defaultStyle);\n this._defaultStyle = {\n get fontSize(): FontSizePropertyDefine {\n return defaultStyle.fontSize ?? DEFAULTFONTSIZE;\n },\n get fontFamily(): FontFamilyPropertyDefine {\n return defaultStyle.fontFamily ?? DEFAULTFONTFAMILY;\n },\n get fontWeight(): FontWeightPropertyDefine | undefined {\n return defaultStyle.fontWeight;\n },\n get fontVariant(): FontVariantPropertyDefine | undefined {\n return defaultStyle.fontVariant;\n },\n get fontStyle(): FontStylePropertyDefine | undefined {\n return defaultStyle.fontStyle;\n },\n get bgColor(): ColorPropertyDefine {\n return defaultStyle.bgColor ?? DEFAULTBGCOLOR;\n },\n get color(): ColorPropertyDefine {\n return defaultStyle.color ?? DEFAULTFONTCOLOR;\n },\n get borderColor(): ColorsPropertyDefine {\n return defaultStyle.borderColor ?? DEFAULTBORDERCOLOR;\n },\n get borderLineWidth(): LineWidthsPropertyDefine | undefined {\n return defaultStyle.borderLineWidth ?? DEFAULTBORDERLINEWIDTH;\n },\n get borderLineDash(): LineDashsPropertyDefine | undefined {\n return defaultStyle.borderLineDash ?? DEFAULTBORDERLINEDASH;\n },\n get hover(): InteractionStyle | undefined {\n if (defaultStyle.hover) {\n return {\n get cellBgColor(): ColorPropertyDefine | undefined {\n return defaultStyle.hover?.cellBgColor ?? undefined;\n },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return defaultStyle.hover?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return defaultStyle.hover?.cellBorderLineWidth ?? undefined;\n // },\n get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n return (\n defaultStyle.hover?.inlineColumnBgColor ??\n (defaultStyle.hover?.cellBgColor && typeof defaultStyle.hover?.cellBgColor === 'string'\n ? changeColor(defaultStyle.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n },\n get inlineRowBgColor(): ColorPropertyDefine | undefined {\n return (\n defaultStyle.hover?.inlineRowBgColor ??\n (defaultStyle.hover?.cellBgColor && typeof defaultStyle.hover?.cellBgColor === 'string'\n ? changeColor(defaultStyle.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n }\n };\n }\n return undefined;\n },\n // get click(): InteractionStyle | undefined {\n // if (defaultStyle.click)\n // return {\n // get cellBgColor(): ColorPropertyDefine | undefined {\n // return defaultStyle.click?.cellBgColor ?? undefined;\n // },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return defaultStyle.click?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return defaultStyle.click?.cellBorderLineWidth ?? undefined;\n // },\n // // get cellBorderLineDash(): LineDashsPropertyDefine |undefined{\n // // return defaultStyle.click?.cellBorderLineDash??undefined\n // // },\n // get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // defaultStyle.click?.inlineColumnBgColor ??\n // (defaultStyle.click?.cellBgColor &&\n // typeof defaultStyle.click?.cellBgColor === 'string'\n // ? changeColor(defaultStyle.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // get inlineRowBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // defaultStyle.click?.inlineRowBgColor ??\n // (defaultStyle.click?.cellBgColor &&\n // typeof defaultStyle.click?.cellBgColor === 'string'\n // ? changeColor(defaultStyle.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // };\n // return undefined;\n // },\n get padding(): PaddingsPropertyDefine {\n return defaultStyle.padding ?? [10, 16, 10, 16];\n },\n get textAlign(): TextAlignType {\n return defaultStyle.textAlign ?? 'left';\n },\n get textBaseline(): TextBaselineType {\n return defaultStyle.textBaseline ?? 'middle';\n },\n get textOverflow(): TextOverflow {\n return defaultStyle.textOverflow ?? 'ellipsis';\n },\n get lineHeight(): number {\n return defaultStyle.lineHeight;\n },\n get autoWrapText(): boolean {\n return defaultStyle.autoWrapText ?? false;\n },\n get lineClamp(): LineClamp {\n return defaultStyle.lineClamp ?? 'auto';\n },\n get linkColor(): ColorPropertyDefine {\n return defaultStyle.linkColor ?? '#3772ff';\n },\n get cursor(): CursorPropertyDefine {\n return defaultStyle.cursor ?? 'auto';\n },\n get marked(): MarkedPropertyDefine {\n return defaultStyle.marked ?? false;\n },\n get underline(): UnderlinePropertyDefine {\n return defaultStyle.underline ?? false;\n },\n get underlineColor(): ColorPropertyDefine | undefined {\n return defaultStyle.underlineColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get underlineDash(): LineDashPropertyDefine | undefined {\n return defaultStyle.underlineDash;\n },\n get lineThrough(): LineThroughPropertyDefine | undefined {\n return defaultStyle.lineThrough ?? false;\n },\n get lineThroughColor(): ColorPropertyDefine | undefined {\n return defaultStyle.lineThroughColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get lineThroughDash(): LineDashPropertyDefine | undefined {\n return defaultStyle.lineThroughDash;\n }\n };\n }\n return this._defaultStyle;\n }\n get headerStyle(): ITableThemeDefine['headerStyle'] {\n if (!this._header) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge({}, this.defaultStyle, superTheme.headerStyle, obj.headerStyle);\n this._header = this.getStyle(header);\n }\n return this._header;\n }\n get cornerHeaderStyle(): ITableThemeDefine['cornerHeaderStyle'] {\n if (!this._cornerHeader) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerHeaderStyle,\n obj.cornerHeaderStyle // ?? obj.headerStyle\n );\n this._cornerHeader = this.getStyle(header);\n }\n return this._cornerHeader;\n }\n get cornerRightTopCellStyle(): ITableThemeDefine['cornerRightTopCellStyle'] {\n if (!this._cornerRightTopCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerRightTopCellStyle && !obj.cornerRightTopCellStyle) {\n return this._cornerRightTopCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerRightTopCellStyle,\n obj.cornerRightTopCellStyle // ?? obj.headerStyle\n );\n this._cornerRightTopCell = this.getStyle(header);\n }\n return this._cornerRightTopCell;\n }\n get cornerLeftBottomCellStyle(): ITableThemeDefine['cornerLeftBottomCellStyle'] {\n if (!this._cornerLeftBottomCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerLeftBottomCellStyle && !obj.cornerLeftBottomCellStyle) {\n return this._cornerLeftBottomCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerLeftBottomCellStyle,\n obj.cornerLeftBottomCellStyle // ?? obj.headerStyle\n );\n this._cornerLeftBottomCell = this.getStyle(header);\n }\n return this._cornerLeftBottomCell;\n }\n get cornerRightBottomCellStyle(): ITableThemeDefine['cornerRightBottomCellStyle'] {\n if (!this._cornerRightBottomCell) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.cornerRightBottomCellStyle && !obj.cornerRightBottomCellStyle) {\n return this._cornerRightBottomCell;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.cornerRightBottomCellStyle,\n obj.cornerRightBottomCellStyle // ?? obj.headerStyle\n );\n this._cornerRightBottomCell = this.getStyle(header);\n }\n return this._cornerRightBottomCell;\n }\n get rightFrozenStyle(): ITableThemeDefine['rightFrozenStyle'] {\n if (!this._rightFrozen) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.rightFrozenStyle && !obj.rightFrozenStyle) {\n return this._rightFrozen;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n this.rowHeaderStyle,\n superTheme.rightFrozenStyle,\n obj.rightFrozenStyle // ?? obj.headerStyle\n );\n this._rightFrozen = this.getStyle(header);\n }\n return this._rightFrozen;\n }\n get bottomFrozenStyle(): ITableThemeDefine['bottomFrozenStyle'] {\n if (!this._bottomFrozen) {\n const { obj, superTheme } = this.internalTheme;\n if (!superTheme.bottomFrozenStyle && !obj.bottomFrozenStyle) {\n return this._bottomFrozen;\n }\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n this.headerStyle,\n superTheme.bottomFrozenStyle,\n obj.bottomFrozenStyle // ?? obj.headerStyle\n );\n this._bottomFrozen = this.getStyle(header);\n }\n return this._bottomFrozen;\n }\n get rowHeaderStyle(): ITableThemeDefine['rowHeaderStyle'] {\n if (!this._rowHeader) {\n const { obj, superTheme } = this.internalTheme;\n // const header = getProp(obj, superTheme, [\"header\"]);\n const header: ThemeStyle = ingoreNoneValueMerge(\n {},\n this.defaultStyle,\n superTheme.rowHeaderStyle,\n obj.rowHeaderStyle ?? (this.isPivot ? null : obj.headerStyle) // not for pivot\n );\n this._rowHeader = this.getStyle(header);\n }\n return this._rowHeader;\n }\n get bodyStyle(): ITableThemeDefine['bodyStyle'] {\n if (!this._body) {\n const { obj, superTheme } = this.internalTheme;\n // const body = getProp(obj, superTheme, [\"body\"]);\n const body: ThemeStyle = ingoreNoneValueMerge({}, this.defaultStyle, superTheme.bodyStyle, obj.bodyStyle);\n this._body = this.getStyle(body);\n }\n\n return this._body;\n }\n\n get frameStyle(): ITableThemeDefine['frameStyle'] {\n if (!this._frameStyle) {\n const { obj, superTheme } = this.internalTheme;\n const frameStyle: TableFrameStyle = ingoreNoneValueMerge({}, superTheme.frameStyle, obj.frameStyle);\n this._frameStyle = {\n get borderColor(): ColorsDef | undefined {\n return frameStyle.borderColor;\n },\n get borderLineWidth(): LineWidthsDef | undefined {\n return frameStyle.borderLineWidth;\n },\n get borderLineDash(): LineDashsDef | undefined {\n return frameStyle.borderLineDash;\n },\n get innerBorder(): boolean | undefined {\n return frameStyle.innerBorder;\n },\n get shadowBlur(): number {\n return frameStyle.shadowBlur;\n },\n get shadowColor(): string {\n return frameStyle.shadowColor;\n },\n get shadowOffsetX(): number {\n return frameStyle.shadowOffsetX;\n },\n get shadowOffsetY(): number {\n return frameStyle.shadowOffsetY;\n },\n get cornerRadius(): number {\n return frameStyle.cornerRadius;\n }\n };\n }\n return this._frameStyle;\n }\n get scrollStyle(): ITableThemeDefine['scrollStyle'] {\n if (!this._scroll) {\n const { obj, superTheme } = this.internalTheme;\n const scroll: ScrollStyle = ingoreNoneValueMerge({}, superTheme.scrollStyle, obj.scrollStyle);\n this._scroll = {\n get scrollSliderColor(): string | undefined {\n return scroll.scrollSliderColor ?? '#C0C0C0';\n },\n get scrollRailColor(): string | undefined {\n return scroll.scrollRailColor;\n },\n get visible(): 'always' | 'scrolling' | 'none' | 'focus' {\n return scroll.visible ?? 'scrolling';\n },\n get width(): number | undefined {\n return scroll.width ?? 7;\n },\n get hoverOn(): boolean | undefined {\n return scroll.hoverOn ?? true;\n }\n };\n }\n\n return this._scroll;\n }\n get tooltipStyle(): ITableThemeDefine['tooltipStyle'] {\n if (!this._tooltip) {\n const { obj, superTheme } = this.internalTheme;\n const tooltip: TooltipStyle = ingoreNoneValueMerge({}, superTheme.tooltipStyle, obj.tooltipStyle);\n this._tooltip = {\n get fontFamily(): string | undefined {\n return tooltip.fontFamily ?? DEFAULTFONTFAMILY;\n },\n get fontSize(): number | undefined {\n return tooltip.fontSize ?? DEFAULTFONTSIZE;\n },\n get bgColor(): string | undefined {\n return tooltip.bgColor ?? '#000';\n },\n get padding(): number[] {\n return tooltip.padding ?? [6, 8];\n },\n get color(): string | undefined {\n return tooltip.color ?? '#FFF';\n }\n };\n }\n\n return this._tooltip;\n }\n\n /**\n * resize 分割线样式\n */\n get columnResize(): RequiredTableThemeDefine['columnResize'] {\n if (!this._columnResize) {\n const { obj, superTheme } = this.internalTheme;\n const columnResize: RequiredTableThemeDefine['columnResize'] = ingoreNoneValueMerge(\n {},\n superTheme.columnResize,\n obj.columnResize\n );\n this._columnResize = {\n get lineColor(): ColorPropertyDefine {\n return columnResize.lineColor ?? '#416EFF';\n },\n get bgColor(): ColorPropertyDefine {\n return columnResize.bgColor ?? '#D9E2FF';\n },\n get lineWidth(): number {\n return columnResize.lineWidth ?? 1;\n },\n get width(): number {\n return columnResize.width ?? columnResize.lineWidth + 2;\n },\n get labelColor(): string {\n return columnResize.labelColor ?? '#FFF';\n },\n get labelFontSize(): number {\n return columnResize.labelFontSize ?? 10;\n },\n get labelFontFamily(): string {\n return columnResize.labelFontFamily ?? 'sans-serif';\n },\n get labelBackgroundFill(): string {\n return columnResize.labelBackgroundFill ?? '#3073F2';\n },\n get labelBackgroundCornerRadius(): number {\n return columnResize.labelBackgroundCornerRadius ?? 5;\n }\n };\n }\n return this._columnResize;\n }\n /**\n * 移位 分割线样式\n */\n get dragHeaderSplitLine(): RequiredTableThemeDefine['dragHeaderSplitLine'] {\n if (!this._dragHeaderSplitLine) {\n const { obj, superTheme } = this.internalTheme;\n const dragHeaderSplitLine: RequiredTableThemeDefine['dragHeaderSplitLine'] = ingoreNoneValueMerge(\n {},\n superTheme.dragHeaderSplitLine,\n obj.dragHeaderSplitLine\n );\n this._dragHeaderSplitLine = {\n get lineColor(): ColorPropertyDefine {\n return dragHeaderSplitLine.lineColor ?? 'blue';\n },\n // get bgColor(): ColorPropertyDefine {\n // return dragHeaderSplitLine.bgColor ?? dragHeaderSplitLine.lineColor;\n // },\n get lineWidth(): number {\n return dragHeaderSplitLine.lineWidth ?? 2;\n },\n // get width(): number {\n // return dragHeaderSplitLine.width ?? dragHeaderSplitLine.lineWidth;\n // },\n get shadowBlockColor(): string {\n return dragHeaderSplitLine.shadowBlockColor ?? 'rgba(204,204,204,0.3)';\n }\n };\n }\n return this._dragHeaderSplitLine;\n }\n get frozenColumnLine(): RequiredTableThemeDefine['frozenColumnLine'] {\n // const { obj, superTheme } = this.internalTheme;\n // const that = this;\n // const frozenColumnLine = getProp(obj, superTheme, [\n // \"frozenColumnLine\",\n // ]);\n if (!this._frozenColumnLine) {\n const { obj, superTheme } = this.internalTheme;\n const frozenColumnLine: RequiredTableThemeDefine['frozenColumnLine'] = ingoreNoneValueMerge(\n {},\n superTheme.frozenColumnLine,\n obj.frozenColumnLine\n );\n this._frozenColumnLine = {\n get shadow(): { width: number; startColor: string; endColor: string } | undefined {\n if (frozenColumnLine.shadow) {\n return {\n get width(): number {\n return frozenColumnLine.shadow?.width ?? 24;\n },\n get startColor(): string {\n return frozenColumnLine.shadow?.startColor ?? 'rgba(00, 24, 47, 0.06)';\n },\n get endColor(): string {\n return frozenColumnLine.shadow?.endColor ?? 'rgba(00, 24, 47, 0)';\n }\n };\n }\n return undefined;\n },\n get border():\n | {\n lineColor: ColorPropertyDefine;\n bgColor?: ColorPropertyDefine;\n lineWidth: number;\n width?: number;\n }\n | undefined {\n if (frozenColumnLine.border) {\n return {\n get lineColor(): ColorPropertyDefine {\n return frozenColumnLine.border?.lineColor ?? 'rgba(00, 24, 47, 0.06)';\n },\n get bgColor(): ColorPropertyDefine {\n return (\n frozenColumnLine.border?.bgColor ?? frozenColumnLine.border?.lineColor ?? 'rgba(00, 24, 47, 0.06)'\n );\n },\n get lineWidth(): number {\n return frozenColumnLine.border?.lineWidth ?? 4;\n },\n get width(): number {\n return frozenColumnLine.border?.width ?? frozenColumnLine.border?.lineWidth ?? 4;\n }\n };\n }\n return undefined;\n }\n };\n }\n return this._frozenColumnLine;\n }\n get selectionStyle(): RequiredTableThemeDefine['selectionStyle'] {\n if (!this._selectionStyle) {\n const { obj, superTheme } = this.internalTheme;\n const selectionStyle: RequiredTableThemeDefine['selectionStyle'] = ingoreNoneValueMerge(\n {},\n superTheme.selectionStyle,\n obj.selectionStyle\n );\n this._selectionStyle = {\n get cellBgColor(): string | undefined {\n return selectionStyle?.cellBgColor ?? 'rgba(0, 0, 255,0.1)';\n },\n get cellBorderColor(): string | undefined {\n return selectionStyle?.cellBorderColor ?? '#3073f2';\n },\n get cellBorderLineWidth(): number | undefined {\n return selectionStyle?.cellBorderLineWidth ?? 2;\n }\n };\n }\n return this._selectionStyle;\n }\n\n get axisStyle(): RequiredTableThemeDefine['axisStyle'] {\n if (!this._axisStyle) {\n const { obj, superTheme } = this.internalTheme;\n const axisStyle: RequiredTableThemeDefine['axisStyle'] = ingoreNoneValueMerge(\n {},\n superTheme.axisStyle,\n obj.axisStyle\n );\n this._axisStyle = getAxisStyle(axisStyle);\n }\n return this._axisStyle;\n }\n\n get checkboxStyle(): RequiredTableThemeDefine['checkboxStyle'] {\n if (!this._checkboxStyle) {\n const { obj, superTheme } = this.internalTheme;\n const checkboxStyle: RequiredTableThemeDefine['checkboxStyle'] = ingoreNoneValueMerge(\n {},\n superTheme.checkboxStyle,\n obj.checkboxStyle\n );\n this._checkboxStyle = checkboxStyle;\n }\n return this._checkboxStyle;\n }\n\n get textPopTipStyle(): RequiredTableThemeDefine['textPopTipStyle'] {\n if (!this._textPopTipStyle) {\n const { obj, superTheme } = this.internalTheme;\n const textPopTipStyle: RequiredTableThemeDefine['textPopTipStyle'] = ingoreNoneValueMerge(\n {},\n defalutPoptipStyle,\n superTheme.textPopTipStyle,\n obj.textPopTipStyle\n );\n this._textPopTipStyle = textPopTipStyle;\n }\n return this._textPopTipStyle;\n }\n\n hasProperty(names: string[]): boolean {\n const { obj, superTheme } = this.internalTheme;\n return hasThemeProperty(obj, names) || hasThemeProperty(superTheme, names);\n }\n extends(obj: PartialTableThemeDefine): TableTheme {\n return new TableTheme(obj, this);\n }\n private getStyle(style: ThemeStyle) {\n return {\n get fontSize(): FontSizePropertyDefine | undefined {\n return style.fontSize;\n },\n get fontFamily(): FontFamilyPropertyDefine | undefined {\n return style.fontFamily;\n },\n get fontWeight(): FontWeightPropertyDefine | undefined {\n return style.fontWeight;\n },\n get fontVariant(): FontVariantPropertyDefine | undefined {\n return style.fontVariant;\n },\n get fontStyle(): FontStylePropertyDefine | undefined {\n return style.fontStyle;\n },\n get bgColor(): ColorPropertyDefine | undefined {\n return style.bgColor;\n },\n get color(): ColorPropertyDefine | undefined {\n return style.color;\n },\n get borderColor(): ColorsPropertyDefine | undefined {\n return style.borderColor;\n },\n get borderLineWidth(): LineWidthsPropertyDefine | undefined {\n return style.borderLineWidth;\n },\n get borderLineDash(): LineDashsPropertyDefine | undefined {\n return style.borderLineDash;\n },\n get hover(): InteractionStyle | undefined {\n if (style.hover) {\n return {\n get cellBgColor(): ColorPropertyDefine | undefined {\n return style.hover?.cellBgColor ?? undefined;\n },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return style.hover?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return style.hover?.cellBorderLineWidth ?? undefined;\n // },\n get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n return (\n style.hover?.inlineColumnBgColor ??\n (style.hover?.cellBgColor && typeof style.hover?.cellBgColor === 'string'\n ? changeColor(style.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n },\n get inlineRowBgColor(): ColorPropertyDefine | undefined {\n return (\n style.hover?.inlineRowBgColor ??\n (style.hover?.cellBgColor && typeof style.hover?.cellBgColor === 'string'\n ? changeColor(style.hover?.cellBgColor, 0.1, false)\n : undefined) ??\n undefined\n );\n }\n };\n }\n return undefined;\n },\n // get click(): InteractionStyle | undefined {\n // if (style.click)\n // return {\n // get cellBgColor(): ColorPropertyDefine | undefined {\n // return style.click?.cellBgColor ?? undefined;\n // },\n // get cellBorderColor(): ColorsPropertyDefine | undefined {\n // return style.click?.cellBorderColor ?? undefined;\n // },\n // get cellBorderLineWidth(): LineWidthsPropertyDefine | undefined {\n // return style.click?.cellBorderLineWidth ?? undefined;\n // },\n // // get cellBorderLineDash(): LineDashsPropertyDefine |undefined{\n // // return style.click?.cellBorderLineDash??undefined\n // // },\n // get inlineColumnBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // style.click?.inlineColumnBgColor ??\n // (style.click?.cellBgColor && typeof style.click?.cellBgColor === 'string'\n // ? changeColor(style.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // get inlineRowBgColor(): ColorPropertyDefine | undefined {\n // return (\n // // style.click?.inlineRowBgColor ??\n // (style.click?.cellBgColor && typeof style.click?.cellBgColor === 'string'\n // ? changeColor(style.click?.cellBgColor, 0.1, false)\n // : undefined) ?? undefined\n // );\n // },\n // };\n // return undefined;\n // },\n get frameStyle(): FrameStyle | undefined {\n if (style.frameStyle) {\n return {\n get borderColor(): ColorsDef | undefined {\n return style.frameStyle?.borderColor ?? undefined;\n },\n get borderLineWidth(): LineWidthsDef | undefined {\n return style.frameStyle?.borderLineWidth ?? undefined;\n },\n get borderLineDash(): LineDashsDef | undefined {\n return style.frameStyle?.borderLineDash ?? undefined;\n }\n };\n }\n return undefined;\n },\n get padding(): PaddingsPropertyDefine | undefined {\n return style.padding;\n },\n get textAlign(): TextAlignType | undefined {\n return style.textAlign;\n },\n get textBaseline(): TextBaselineType | undefined {\n return style.textBaseline;\n },\n get textOverflow(): TextOverflow | undefined {\n return style.textOverflow;\n },\n get lineHeight(): number | undefined {\n return style.lineHeight;\n },\n get autoWrapText(): boolean | undefined {\n return style.autoWrapText;\n },\n get lineClamp(): LineClamp | undefined {\n return style.lineClamp;\n },\n get linkColor(): ColorPropertyDefine | undefined {\n return style.linkColor;\n },\n get cursor(): CursorPropertyDefine | undefined {\n return style.cursor;\n },\n get textStick(): boolean | undefined {\n return style.textStick;\n },\n get marked(): MarkedPropertyDefine | undefined {\n return style.marked;\n },\n get underline(): UnderlinePropertyDefine {\n return style.underline ?? false;\n },\n get underlineColor(): ColorPropertyDefine | undefined {\n return style.underlineColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get underlineDash(): LineDashPropertyDefine | undefined {\n return style.underlineDash;\n },\n get lineThrough(): LineThroughPropertyDefine | undefined {\n return style.lineThrough ?? false;\n },\n get lineThroughColor(): ColorPropertyDefine | undefined {\n return style.lineThroughColor; // 不需要默认值 绘制中已处理默认用文字颜色\n },\n get lineThroughDash(): LineDashPropertyDefine | undefined {\n return style.lineThroughDash;\n }\n };\n }\n}\n\nfunction hasThemeProperty(obj: PartialTableThemeDefine, names: string[]): boolean {\n if (obj instanceof TableTheme) {\n return obj.hasProperty(names);\n }\n\n let o: any = obj;\n if (!o) {\n return false;\n }\n for (let index = 0; index < names.length; index++) {\n const name = names[index];\n o = o[name];\n if (!o) {\n return false;\n }\n }\n return !!o;\n}\n"]}
@@ -77,4 +77,18 @@ export interface ProgressBarStyleOption extends IStyleOption {
77
77
  export type CheckboxStyleOption = {
78
78
  size?: number;
79
79
  spaceBetweenTextAndIcon?: number;
80
+ checkboxStyle?: CheckboxStyle;
80
81
  } & ITextStyleOption;
82
+ export type CheckboxStyle = {
83
+ size?: number;
84
+ spaceBetweenTextAndIcon?: number;
85
+ defaultFill?: string;
86
+ defaultStroke?: string;
87
+ disableFill?: string;
88
+ checkedFill?: string;
89
+ checkedStroke?: string;
90
+ disableCheckedFill?: string;
91
+ disableCheckedStroke?: string;
92
+ checkIconImage?: string;
93
+ indeterminateIconImage?: string;
94
+ };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ts-types/column/style.ts"],"names":[],"mappings":"","file":"style.js","sourcesContent":["import type { LineWidthsPropertyDefine } from '..';\nimport { PaddingPropertyDefine } from '..';\nimport type {\n ColorPropertyDefine,\n ColorsPropertyDefine,\n IconPropertyDefine,\n LineClamp,\n LineDashsPropertyDefine,\n TextOverflow,\n UnderlinePropertyDefine,\n LineDashPropertyDefine,\n LineThroughPropertyDefine,\n TagPropertyDefine,\n PaddingsPropertyDefine,\n StylePropertyFunctionArg,\n CursorPropertyDefine,\n MarkedPropertyDefine,\n FontSizePropertyDefine,\n FontFamilyPropertyDefine,\n FontWeightPropertyDefine,\n FontVariantPropertyDefine,\n FontStylePropertyDefine,\n TextAlignType,\n TextBaselineType\n} from '../style-define';\nimport type { ThemeStyle } from '../theme';\n//这个style是在绘制里面的内容时用到的,用不到borderColor和borderLineWidth,所以和IStyleOption有些不一致\nexport interface ColumnStyle {\n padding?: PaddingsPropertyDefine;\n bgColor?: ColorPropertyDefine;\n // eslint-disable-next-line no-undef\n textAlign?: TextAlignType;\n // eslint-disable-next-line no-undef\n textBaseline?: TextBaselineType;\n color?: ColorPropertyDefine;\n\n fontSize?: FontSizePropertyDefine;\n fontFamily?: FontFamilyPropertyDefine;\n fontWeight?: FontWeightPropertyDefine;\n fontVariant?: FontVariantPropertyDefine;\n fontStyle?: FontStylePropertyDefine;\n\n textOverflow?: TextOverflow;\n // doChangeStyle: () => void;\n clone: () => ColumnStyle;\n linkColor?: ColorPropertyDefine;\n}\n\nexport type IHeaderStyle = ColumnStyle;\n\nexport type ISortheaderSyle = IHeaderStyle;\n\nexport interface IStyleOption {\n bgColor?: ColorPropertyDefine;\n padding?: PaddingsPropertyDefine;\n textAlign?: TextAlignType;\n textBaseline?: TextBaselineType;\n color?: ColorPropertyDefine;\n\n fontSize?: FontSizePropertyDefine;\n fontFamily?: FontFamilyPropertyDefine;\n fontWeight?: FontWeightPropertyDefine;\n fontVariant?: FontVariantPropertyDefine;\n fontStyle?: FontStylePropertyDefine;\n\n textOverflow?: TextOverflow;\n borderColor?: ColorsPropertyDefine;\n borderLineWidth?: LineWidthsPropertyDefine;\n\n lineHeight?: number;\n underline?: UnderlinePropertyDefine;\n /** TODO */\n underlineColor?: ColorPropertyDefine;\n /** TODO */\n underlineDash?: LineDashPropertyDefine;\n lineThrough?: LineThroughPropertyDefine;\n /** TODO */\n lineThroughColor?: ColorPropertyDefine;\n /** TODO */\n lineThroughDash?: LineDashPropertyDefine;\n\n borderLineDash?: LineDashsPropertyDefine;\n linkColor?: ColorPropertyDefine;\n\n // tag?: TagPropertyDefine;\n // tagFont?: FontPropertyDefine;\n // tagColor?: ColorPropertyDefine;\n // tagBgColor?: ColorPropertyDefine;\n // tagMargin?: number | string | (number | string)[];\n\n // dropDownIcon?: IconPropertyDefine;\n // dropDownHoverIcon?: IconPropertyDefine;\n cursor?: CursorPropertyDefine;\n\n textStick?: boolean;\n\n marked?: MarkedPropertyDefine;\n}\n\nexport interface ITextStyleOption extends IStyleOption {\n // lineHeight?: string | number;//移入IStyleOption中 单行文本类型也可以有\n autoWrapText?: boolean;\n lineClamp?: LineClamp;\n}\n\nexport interface IImageStyleOption extends IStyleOption {\n // imageSizing?: 'keep-aspect-ratio';\n // imageAutoSizing?: boolean;\n margin?: number;\n}\n// export type ISortHeaderStyleOption = IStyleOption;\n\nexport type ColumnStyleOption =\n | IStyleOption\n | ITextStyleOption\n | IImageStyleOption\n | ProgressBarStyleOption\n | CheckboxStyleOption\n | ((styleArg: StylePropertyFunctionArg) => IStyleOption | ITextStyleOption | IImageStyleOption);\n\nexport type HeaderStyleOption =\n | (IStyleOption & { textStick?: boolean }) //表头可以配置吸附\n | ITextStyleOption\n | IImageStyleOption\n // | ISortHeaderStyleOption\n | ((styleArg: StylePropertyFunctionArg) => IStyleOption | ITextStyleOption | IImageStyleOption);\n// | ISortHeaderStyleOption\n\nexport type FullExtendStyle = HeaderStyleOption & ColumnStyleOption & ThemeStyle;\n\n// export interface BaseStyleOption {\n// bgColor?: ColorPropertyDefine;\n// }\n\n// export interface StdBaseStyleOption extends BaseStyleOption {\n// // eslint-disable-next-line no-undef\n// textAlign?: CanvasTextAlign;\n// // eslint-disable-next-line no-undef\n// textBaseline?: CanvasTextBaseline;\n// }\n// export interface StyleOption extends StdBaseStyleOption {\n// color?: ColorPropertyDefine;\n// font?: FontPropertyDefine;\n// padding?: PaddingsPropertyDefine;\n// textOverflow?: TextOverflow;\n// }\nexport interface ProgressBarStyleOption extends IStyleOption {\n // 是否显示进度条\n showBar?: boolean | ((args: StylePropertyFunctionArg) => boolean);\n // 进度条颜色\n barColor?: ColorPropertyDefine;\n // 进度条背景颜色\n barBgColor?: ColorPropertyDefine;\n // 进度条高度\n barHeight?: number | string;\n // 进度条距单元格底部距离\n barBottom?: number | string;\n // 进度条padding\n barPadding?: (number | string)[];\n // 进度条正向颜色\n barPositiveColor?: ColorPropertyDefine;\n // 进度条负向颜色\n barNegativeColor?: ColorPropertyDefine;\n // 进度条坐标轴轴颜色\n barAxisColor?: ColorPropertyDefine;\n // 进度条方向是否从右到左\n barRightToLeft?: boolean;\n\n // 是否显示进度条标记\n showBarMark?: boolean;\n // 进度条标记正向颜色\n barMarkPositiveColor?: ColorPropertyDefine;\n // 进度条标记负向颜色\n barMarkNegativeColor?: ColorPropertyDefine;\n // 进度条标记宽度\n barMarkWidth?: number;\n // 进度条标记位置\n barMarkPosition?: 'right' | 'bottom';\n}\n\nexport type CheckboxStyleOption = {\n size?: number;\n spaceBetweenTextAndIcon?: number;\n} & ITextStyleOption;\n"]}
1
+ {"version":3,"sources":["../src/ts-types/column/style.ts"],"names":[],"mappings":"","file":"style.js","sourcesContent":["import type { LineWidthsPropertyDefine } from '..';\nimport { PaddingPropertyDefine } from '..';\nimport type {\n ColorPropertyDefine,\n ColorsPropertyDefine,\n IconPropertyDefine,\n LineClamp,\n LineDashsPropertyDefine,\n TextOverflow,\n UnderlinePropertyDefine,\n LineDashPropertyDefine,\n LineThroughPropertyDefine,\n TagPropertyDefine,\n PaddingsPropertyDefine,\n StylePropertyFunctionArg,\n CursorPropertyDefine,\n MarkedPropertyDefine,\n FontSizePropertyDefine,\n FontFamilyPropertyDefine,\n FontWeightPropertyDefine,\n FontVariantPropertyDefine,\n FontStylePropertyDefine,\n TextAlignType,\n TextBaselineType\n} from '../style-define';\nimport type { ThemeStyle } from '../theme';\n//这个style是在绘制里面的内容时用到的,用不到borderColor和borderLineWidth,所以和IStyleOption有些不一致\nexport interface ColumnStyle {\n padding?: PaddingsPropertyDefine;\n bgColor?: ColorPropertyDefine;\n // eslint-disable-next-line no-undef\n textAlign?: TextAlignType;\n // eslint-disable-next-line no-undef\n textBaseline?: TextBaselineType;\n color?: ColorPropertyDefine;\n\n fontSize?: FontSizePropertyDefine;\n fontFamily?: FontFamilyPropertyDefine;\n fontWeight?: FontWeightPropertyDefine;\n fontVariant?: FontVariantPropertyDefine;\n fontStyle?: FontStylePropertyDefine;\n\n textOverflow?: TextOverflow;\n // doChangeStyle: () => void;\n clone: () => ColumnStyle;\n linkColor?: ColorPropertyDefine;\n}\n\nexport type IHeaderStyle = ColumnStyle;\n\nexport type ISortheaderSyle = IHeaderStyle;\n\nexport interface IStyleOption {\n bgColor?: ColorPropertyDefine;\n padding?: PaddingsPropertyDefine;\n textAlign?: TextAlignType;\n textBaseline?: TextBaselineType;\n color?: ColorPropertyDefine;\n\n fontSize?: FontSizePropertyDefine;\n fontFamily?: FontFamilyPropertyDefine;\n fontWeight?: FontWeightPropertyDefine;\n fontVariant?: FontVariantPropertyDefine;\n fontStyle?: FontStylePropertyDefine;\n\n textOverflow?: TextOverflow;\n borderColor?: ColorsPropertyDefine;\n borderLineWidth?: LineWidthsPropertyDefine;\n\n lineHeight?: number;\n underline?: UnderlinePropertyDefine;\n /** TODO */\n underlineColor?: ColorPropertyDefine;\n /** TODO */\n underlineDash?: LineDashPropertyDefine;\n lineThrough?: LineThroughPropertyDefine;\n /** TODO */\n lineThroughColor?: ColorPropertyDefine;\n /** TODO */\n lineThroughDash?: LineDashPropertyDefine;\n\n borderLineDash?: LineDashsPropertyDefine;\n linkColor?: ColorPropertyDefine;\n\n // tag?: TagPropertyDefine;\n // tagFont?: FontPropertyDefine;\n // tagColor?: ColorPropertyDefine;\n // tagBgColor?: ColorPropertyDefine;\n // tagMargin?: number | string | (number | string)[];\n\n // dropDownIcon?: IconPropertyDefine;\n // dropDownHoverIcon?: IconPropertyDefine;\n cursor?: CursorPropertyDefine;\n\n textStick?: boolean;\n\n marked?: MarkedPropertyDefine;\n}\n\nexport interface ITextStyleOption extends IStyleOption {\n // lineHeight?: string | number;//移入IStyleOption中 单行文本类型也可以有\n autoWrapText?: boolean;\n lineClamp?: LineClamp;\n}\n\nexport interface IImageStyleOption extends IStyleOption {\n // imageSizing?: 'keep-aspect-ratio';\n // imageAutoSizing?: boolean;\n margin?: number;\n}\n// export type ISortHeaderStyleOption = IStyleOption;\n\nexport type ColumnStyleOption =\n | IStyleOption\n | ITextStyleOption\n | IImageStyleOption\n | ProgressBarStyleOption\n | CheckboxStyleOption\n | ((styleArg: StylePropertyFunctionArg) => IStyleOption | ITextStyleOption | IImageStyleOption);\n\nexport type HeaderStyleOption =\n | (IStyleOption & { textStick?: boolean }) //表头可以配置吸附\n | ITextStyleOption\n | IImageStyleOption\n // | ISortHeaderStyleOption\n | ((styleArg: StylePropertyFunctionArg) => IStyleOption | ITextStyleOption | IImageStyleOption);\n// | ISortHeaderStyleOption\n\nexport type FullExtendStyle = HeaderStyleOption & ColumnStyleOption & ThemeStyle;\n\n// export interface BaseStyleOption {\n// bgColor?: ColorPropertyDefine;\n// }\n\n// export interface StdBaseStyleOption extends BaseStyleOption {\n// // eslint-disable-next-line no-undef\n// textAlign?: CanvasTextAlign;\n// // eslint-disable-next-line no-undef\n// textBaseline?: CanvasTextBaseline;\n// }\n// export interface StyleOption extends StdBaseStyleOption {\n// color?: ColorPropertyDefine;\n// font?: FontPropertyDefine;\n// padding?: PaddingsPropertyDefine;\n// textOverflow?: TextOverflow;\n// }\nexport interface ProgressBarStyleOption extends IStyleOption {\n // 是否显示进度条\n showBar?: boolean | ((args: StylePropertyFunctionArg) => boolean);\n // 进度条颜色\n barColor?: ColorPropertyDefine;\n // 进度条背景颜色\n barBgColor?: ColorPropertyDefine;\n // 进度条高度\n barHeight?: number | string;\n // 进度条距单元格底部距离\n barBottom?: number | string;\n // 进度条padding\n barPadding?: (number | string)[];\n // 进度条正向颜色\n barPositiveColor?: ColorPropertyDefine;\n // 进度条负向颜色\n barNegativeColor?: ColorPropertyDefine;\n // 进度条坐标轴轴颜色\n barAxisColor?: ColorPropertyDefine;\n // 进度条方向是否从右到左\n barRightToLeft?: boolean;\n\n // 是否显示进度条标记\n showBarMark?: boolean;\n // 进度条标记正向颜色\n barMarkPositiveColor?: ColorPropertyDefine;\n // 进度条标记负向颜色\n barMarkNegativeColor?: ColorPropertyDefine;\n // 进度条标记宽度\n barMarkWidth?: number;\n // 进度条标记位置\n barMarkPosition?: 'right' | 'bottom';\n}\n\nexport type CheckboxStyleOption = {\n size?: number;\n spaceBetweenTextAndIcon?: number;\n checkboxStyle?: CheckboxStyle;\n} & ITextStyleOption;\n\nexport type CheckboxStyle = {\n // 选择框尺寸\n size?: number;\n // 选择框与文字间距\n spaceBetweenTextAndIcon?: number;\n\n // 未选中状态填充颜色\n defaultFill?: string;\n // 未选中状态描边颜色\n defaultStroke?: string;\n // disable状态填充颜色\n disableFill?: string;\n // checked状态填充颜色\n checkedFill?: string;\n // checked状态描边颜色\n checkedStroke?: string;\n // checked状态填充颜色\n disableCheckedFill?: string;\n // checked状态描边颜色\n disableCheckedStroke?: string;\n\n // checked状态图标url\n checkIconImage?: string;\n // indeterminate状态图标url\n indeterminateIconImage?: string;\n};\n"]}
@@ -1,5 +1,5 @@
1
1
  import type { ColorsDef, LineDashsDef, LineWidthsDef, LineWidthsPropertyDefine } from '.';
2
- import type { ITextStyleOption } from './column/style';
2
+ import type { CheckboxStyle, ITextStyleOption } from './column/style';
3
3
  import type { ColorPropertyDefine, ColorsPropertyDefine } from './style-define';
4
4
  import type { ICellAxisOption } from './component/axis';
5
5
  import type { PopTipAttributes } from '@visactor/vrender-components';
@@ -107,9 +107,7 @@ export interface ITableThemeDefine {
107
107
  topAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;
108
108
  bottomAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;
109
109
  };
110
+ checkboxStyle?: CheckboxStyle;
110
111
  textPopTipStyle?: PopTipAttributes;
111
- cellInnerBorder?: boolean;
112
- cellBorderClipDirection?: 'top-left' | 'bottom-right';
113
- _contentOffset?: number;
114
112
  }
115
113
  export type RequiredTableThemeDefine = Required<ITableThemeDefine>;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/ts-types/theme.ts"],"names":[],"mappings":"","file":"theme.js","sourcesContent":["/* eslint-disable sort-imports */\nimport type { ColorsDef, LineDashsDef, LineWidthsDef, LineWidthsPropertyDefine } from '.';\nimport type { ITextStyleOption } from './column/style';\nimport type { ColorPropertyDefine, ColorsPropertyDefine } from './style-define';\nimport type { ColumnIconOption } from './icon';\nimport type { ICellAxisOption } from './component/axis';\nimport type { PopTipAttributes } from '@visactor/vrender-components';\n// ****** Custom Theme *******\nexport type PartialTableThemeDefine = Partial<ITableThemeDefine>;\nexport type ThemeStyle = ITextStyleOption & {\n hover?: Omit<InteractionStyle, 'cellBorderColor' | 'cellBorderLineWidth'>; //鼠标hover到某个单元格\n // click?: Omit<InteractionStyle, 'inlineRowBgColor' | 'inlineColumnBgColor'>; //鼠标点击到某个单元格\n frameStyle?: FrameStyle;\n};\nexport type InteractionStyle = {\n cellBorderColor?: ColorsPropertyDefine; //交互所在单元格的边框颜色\n cellBorderLineWidth?: LineWidthsPropertyDefine;\n // cellBorderLineDash?:LineDashsPropertyDefine,//用到的场景应该不多\n cellBgColor?: ColorPropertyDefine; //交互所在单元格的背景颜色\n // inlineRowBorderColor?: ColorsPropertyDefine,//交互所在整行的边框颜色\n inlineRowBgColor?: ColorPropertyDefine; //交互所在整行的背景颜色\n // inlineColBorderColor?: ColorsPropertyDefine,//交互所在整列的边框颜色\n inlineColumnBgColor?: ColorPropertyDefine; //交互所在整列的背景颜色\n // headerHighlightBorderColor?:ColorPropertyDefine,//表头底部高亮线\n};\nexport type FrameStyle = {\n borderColor?: ColorsDef;\n borderLineWidth?: LineWidthsDef;\n borderLineDash?: LineDashsDef;\n innerBorder?: boolean;\n};\nexport type TableFrameStyle = FrameStyle & {\n shadowBlur?: number; //阴影宽度\n shadowOffsetX?: number; //x方向偏移\n shadowOffsetY?: number; //Y方向偏移\n shadowColor?: string; //阴影颜色\n cornerRadius?: number; //边框圆角半径\n};\nexport type menuStyle = {\n color?: string;\n highlightColor?: string;\n fontSize?: number;\n fontFamily?: string;\n highlightFontSize?: number;\n highlightFontFamily?: string;\n hoverBgColor?: string;\n};\nexport type ScrollStyle = {\n /**滚动条滚动的颜色 */\n scrollRailColor?: string;\n /**滚动条滑块的颜色 */\n scrollSliderColor?: string;\n /**滚动条宽度大小 */\n width?: number;\n /**滚动条是否可见 'always' | 'scrolling' | 'none' | 'focus',常驻|滚动时|不显示|聚焦在画布上时 */\n visible?: 'always' | 'scrolling' | 'none' | 'focus';\n /*** 悬浮与容器上,还是独立于容器外 */\n hoverOn?: boolean;\n};\n/**\n * 气泡框,按钮的的解释信息\n */\nexport type TooltipStyle = {\n fontFamily?: string;\n fontSize?: number;\n color?: string;\n padding?: number[];\n bgColor?: string;\n /** !目前未实现该逻辑。触发行为:hover or click */\n // trigger?: string | string[];\n /**气泡框位置,可选 top left right bottom */\n // placement?: Placement;\n};\nexport interface ITableThemeDefine {\n /** 表格绘制范围外的canvas上填充的颜色 */\n underlayBackgroundColor?: string;\n // selectionBgColor?: ColorPropertyDefine; //多选单元格背景色 手动设置的多选 非框选\n defaultStyle?: ThemeStyle;\n cornerHeaderStyle?: ThemeStyle; //角头样式\n cornerRightTopCellStyle?: ThemeStyle; // 右上角占位单元格样式\n cornerLeftBottomCellStyle?: ThemeStyle; // 左下角占位单元格样式\n cornerRightBottomCellStyle?: ThemeStyle; // 右下角占位单元格样式\n rightFrozenStyle?: ThemeStyle; // 右侧冻结单元格样式\n bottomFrozenStyle?: ThemeStyle; // 下部冻结单元格样式\n headerStyle?: ThemeStyle;\n rowHeaderStyle?: ThemeStyle;\n bodyStyle?: ThemeStyle;\n frameStyle?: TableFrameStyle;\n //列调整宽度的直线\n columnResize?: {\n lineColor: ColorPropertyDefine; //上面线的颜色\n bgColor?: ColorPropertyDefine; //背景线的颜色\n lineWidth: number; //上面线的宽度\n width?: number; //背景线的宽度\n labelColor?: string; //label的颜色\n labelFontSize?: number; //label的字体大小\n labelFontFamily?: string; //label的字体\n labelBackgroundFill?: string; //label的背景填充\n labelBackgroundCornerRadius?: number; //label的背景圆角\n };\n //拖拽表格换位分割线的样式\n dragHeaderSplitLine?: {\n lineColor: ColorPropertyDefine; //上面线的颜色\n lineWidth: number; //上面线的宽度\n shadowBlockColor?: string; //拖拽时阴影区域的颜色\n };\n //冻结列后面的效果\n frozenColumnLine?: {\n shadow?: {\n //默认效果 会有阴影配置\n width: number; //阴影整体宽度\n startColor: string; //开始颜色\n endColor: string; //结束颜色\n };\n /** TODO 暂未生效 */\n border?: {\n //有些需求要两种效果 这里配置滚动前的边框效果(实现方式是两条线叠加产生),滚动后按上面的阴影效果\n lineColor: ColorPropertyDefine; //上面线的颜色\n bgColor?: ColorPropertyDefine; //背景线的颜色\n lineWidth: number; //上面线的宽度\n width?: number; //背景线的宽度\n };\n };\n\n // menuStyle?: menuStyle;\n scrollStyle?: ScrollStyle;\n tooltipStyle?: TooltipStyle;\n // selectHeaderHighlight?: boolean;\n /** 选择框样式 */\n selectionStyle?: //Omit<InteractionStyle, 'inlineRowBgColor' | 'inlineColumnBgColor'>; //鼠标点击到某个单元格\n {\n cellBorderColor?: string; //边框颜色\n cellBorderLineWidth?: number; //边框线宽度\n cellBgColor?: string; //选择框背景颜色\n };\n\n // style for axis\n axisStyle?: {\n defaultAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n leftAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n rightAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n topAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n bottomAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n };\n\n // style for text pop tip\n textPopTipStyle?: PopTipAttributes;\n\n // senior config for fs\n // 四边单元格,靠近边框的border是否显示;配置false的话,左侧单元格不显示左边框,同理\n cellInnerBorder?: boolean;\n // cell border clip direction\n cellBorderClipDirection?: 'top-left' | 'bottom-right'; // default is 'top-left'\n // text offset, hack for fs\n _contentOffset?: number;\n}\n\nexport type RequiredTableThemeDefine = Required<ITableThemeDefine>;\n"]}
1
+ {"version":3,"sources":["../src/ts-types/theme.ts"],"names":[],"mappings":"","file":"theme.js","sourcesContent":["/* eslint-disable sort-imports */\nimport type { ColorsDef, LineDashsDef, LineWidthsDef, LineWidthsPropertyDefine } from '.';\nimport type { CheckboxStyle, ITextStyleOption } from './column/style';\nimport type { ColorPropertyDefine, ColorsPropertyDefine } from './style-define';\nimport type { ColumnIconOption } from './icon';\nimport type { ICellAxisOption } from './component/axis';\nimport type { PopTipAttributes } from '@visactor/vrender-components';\n// ****** Custom Theme *******\nexport type PartialTableThemeDefine = Partial<ITableThemeDefine>;\nexport type ThemeStyle = ITextStyleOption & {\n hover?: Omit<InteractionStyle, 'cellBorderColor' | 'cellBorderLineWidth'>; //鼠标hover到某个单元格\n // click?: Omit<InteractionStyle, 'inlineRowBgColor' | 'inlineColumnBgColor'>; //鼠标点击到某个单元格\n frameStyle?: FrameStyle;\n};\nexport type InteractionStyle = {\n cellBorderColor?: ColorsPropertyDefine; //交互所在单元格的边框颜色\n cellBorderLineWidth?: LineWidthsPropertyDefine;\n // cellBorderLineDash?:LineDashsPropertyDefine,//用到的场景应该不多\n cellBgColor?: ColorPropertyDefine; //交互所在单元格的背景颜色\n // inlineRowBorderColor?: ColorsPropertyDefine,//交互所在整行的边框颜色\n inlineRowBgColor?: ColorPropertyDefine; //交互所在整行的背景颜色\n // inlineColBorderColor?: ColorsPropertyDefine,//交互所在整列的边框颜色\n inlineColumnBgColor?: ColorPropertyDefine; //交互所在整列的背景颜色\n // headerHighlightBorderColor?:ColorPropertyDefine,//表头底部高亮线\n};\nexport type FrameStyle = {\n borderColor?: ColorsDef;\n borderLineWidth?: LineWidthsDef;\n borderLineDash?: LineDashsDef;\n innerBorder?: boolean;\n};\nexport type TableFrameStyle = FrameStyle & {\n shadowBlur?: number; //阴影宽度\n shadowOffsetX?: number; //x方向偏移\n shadowOffsetY?: number; //Y方向偏移\n shadowColor?: string; //阴影颜色\n cornerRadius?: number; //边框圆角半径\n};\nexport type menuStyle = {\n color?: string;\n highlightColor?: string;\n fontSize?: number;\n fontFamily?: string;\n highlightFontSize?: number;\n highlightFontFamily?: string;\n hoverBgColor?: string;\n};\nexport type ScrollStyle = {\n /**滚动条滚动的颜色 */\n scrollRailColor?: string;\n /**滚动条滑块的颜色 */\n scrollSliderColor?: string;\n /**滚动条宽度大小 */\n width?: number;\n /**滚动条是否可见 'always' | 'scrolling' | 'none' | 'focus',常驻|滚动时|不显示|聚焦在画布上时 */\n visible?: 'always' | 'scrolling' | 'none' | 'focus';\n /*** 悬浮与容器上,还是独立于容器外 */\n hoverOn?: boolean;\n};\n/**\n * 气泡框,按钮的的解释信息\n */\nexport type TooltipStyle = {\n fontFamily?: string;\n fontSize?: number;\n color?: string;\n padding?: number[];\n bgColor?: string;\n /** !目前未实现该逻辑。触发行为:hover or click */\n // trigger?: string | string[];\n /**气泡框位置,可选 top left right bottom */\n // placement?: Placement;\n};\nexport interface ITableThemeDefine {\n /** 表格绘制范围外的canvas上填充的颜色 */\n underlayBackgroundColor?: string;\n // selectionBgColor?: ColorPropertyDefine; //多选单元格背景色 手动设置的多选 非框选\n defaultStyle?: ThemeStyle;\n cornerHeaderStyle?: ThemeStyle; //角头样式\n cornerRightTopCellStyle?: ThemeStyle; // 右上角占位单元格样式\n cornerLeftBottomCellStyle?: ThemeStyle; // 左下角占位单元格样式\n cornerRightBottomCellStyle?: ThemeStyle; // 右下角占位单元格样式\n rightFrozenStyle?: ThemeStyle; // 右侧冻结单元格样式\n bottomFrozenStyle?: ThemeStyle; // 下部冻结单元格样式\n headerStyle?: ThemeStyle;\n rowHeaderStyle?: ThemeStyle;\n bodyStyle?: ThemeStyle;\n frameStyle?: TableFrameStyle;\n //列调整宽度的直线\n columnResize?: {\n lineColor: ColorPropertyDefine; //上面线的颜色\n bgColor?: ColorPropertyDefine; //背景线的颜色\n lineWidth: number; //上面线的宽度\n width?: number; //背景线的宽度\n labelColor?: string; //label的颜色\n labelFontSize?: number; //label的字体大小\n labelFontFamily?: string; //label的字体\n labelBackgroundFill?: string; //label的背景填充\n labelBackgroundCornerRadius?: number; //label的背景圆角\n };\n //拖拽表格换位分割线的样式\n dragHeaderSplitLine?: {\n lineColor: ColorPropertyDefine; //上面线的颜色\n lineWidth: number; //上面线的宽度\n shadowBlockColor?: string; //拖拽时阴影区域的颜色\n };\n //冻结列后面的效果\n frozenColumnLine?: {\n shadow?: {\n //默认效果 会有阴影配置\n width: number; //阴影整体宽度\n startColor: string; //开始颜色\n endColor: string; //结束颜色\n };\n /** TODO 暂未生效 */\n border?: {\n //有些需求要两种效果 这里配置滚动前的边框效果(实现方式是两条线叠加产生),滚动后按上面的阴影效果\n lineColor: ColorPropertyDefine; //上面线的颜色\n bgColor?: ColorPropertyDefine; //背景线的颜色\n lineWidth: number; //上面线的宽度\n width?: number; //背景线的宽度\n };\n };\n\n // menuStyle?: menuStyle;\n scrollStyle?: ScrollStyle;\n tooltipStyle?: TooltipStyle;\n // selectHeaderHighlight?: boolean;\n /** 选择框样式 */\n selectionStyle?: //Omit<InteractionStyle, 'inlineRowBgColor' | 'inlineColumnBgColor'>; //鼠标点击到某个单元格\n {\n cellBorderColor?: string; //边框颜色\n cellBorderLineWidth?: number; //边框线宽度\n cellBgColor?: string; //选择框背景颜色\n };\n\n // style for axis\n axisStyle?: {\n defaultAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n leftAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n rightAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n topAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n bottomAxisStyle?: Omit<ICellAxisOption, 'type' | 'domain' | 'range' | 'orient' | '__ticksForVTable'>;\n };\n\n checkboxStyle?: CheckboxStyle;\n\n // style for text pop tip\n textPopTipStyle?: PopTipAttributes;\n}\n\nexport type RequiredTableThemeDefine = Required<ITableThemeDefine>;\n"]}
package/es/vrender.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/vrender.ts"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EACL,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAIhC,IAAI,QAAQ,GAAG,KAAK,CAAC;AACrB,MAAM,UAAU,kBAAkB;IAChC,IAAI,QAAQ,EAAE;QACZ,OAAO;KACR;IACD,QAAQ,GAAG,IAAI,CAAC;IAEhB,gBAAgB,EAAE,CAAC;IAEnB,IAAI,YAAY,EAAE,EAAE;QAClB,cAAc,CAAC,SAAS,CAAC,CAAC;KAC3B;SAAM,IAAI,SAAS,EAAE,EAAE;QACtB,WAAW,CAAC,SAAS,CAAC,CAAC;KACxB;IACD,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,YAAY,EAAE,CAAC;IACf,eAAe,EAAE,CAAC;IAClB,iBAAiB,EAAE,CAAC;IACpB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,kBAAkB,EAAE,CAAC;IACrB,cAAc,EAAE,CAAC;IACjB,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,CAAC;AACrB,CAAC;AAED,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC","file":"vrender.js","sourcesContent":["import '@visactor/vrender-core';\nimport { container, isBrowserEnv, isNodeEnv, preLoadAllModule } from '@visactor/vrender-core';\nimport { loadBrowserEnv, loadNodeEnv } from '@visactor/vrender-kits';\nimport {\n registerArc,\n registerArc3d,\n registerArea,\n registerCircle,\n registerGlyph,\n registerGroup,\n registerImage,\n registerLine,\n registerPath,\n registerPolygon,\n registerPyramid3d,\n registerRect,\n registerRect3d,\n registerRichtext,\n registerShadowRoot,\n registerSymbol,\n registerText,\n registerWrapText\n} from '@visactor/vrender-kits';\n// 导出版本号\n// export const version = \"0.20.2-alpha.3\";\n\nlet registed = false;\nexport function registerForVrender() {\n if (registed) {\n return;\n }\n registed = true;\n // 注册内置组件\n preLoadAllModule();\n\n if (isBrowserEnv()) {\n loadBrowserEnv(container);\n } else if (isNodeEnv()) {\n loadNodeEnv(container);\n }\n registerArc();\n registerArc3d();\n registerArea();\n registerCircle();\n registerGlyph();\n registerGroup();\n registerImage();\n registerLine();\n registerPath();\n registerPolygon();\n registerPyramid3d();\n registerRect();\n registerRect3d();\n registerRichtext();\n registerShadowRoot();\n registerSymbol();\n registerText();\n registerWrapText();\n}\n\nexport * from '@visactor/vrender-core';\nexport * from '@visactor/vrender-kits';\n"]}
1
+ {"version":3,"sources":["../src/vrender.ts"],"names":[],"mappings":"AAAA,OAAO,wBAAwB,CAAC;AAChC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EACL,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACd,aAAa,EACb,aAAa,EACb,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,YAAY,EACZ,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAIhC,IAAI,QAAQ,GAAG,KAAK,CAAC;AACrB,MAAM,UAAU,kBAAkB;IAChC,IAAI,QAAQ,EAAE;QACZ,OAAO;KACR;IACD,QAAQ,GAAG,IAAI,CAAC;IAEhB,gBAAgB,EAAE,CAAC;IAEnB,IAAI,YAAY,EAAE,EAAE;QAClB,cAAc,CAAC,SAAS,CAAC,CAAC;KAC3B;SAAM,IAAI,SAAS,EAAE,EAAE;QACtB,WAAW,CAAC,SAAS,CAAC,CAAC;KACxB;IACD,WAAW,EAAE,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,aAAa,EAAE,CAAC;IAChB,YAAY,EAAE,CAAC;IACf,YAAY,EAAE,CAAC;IACf,eAAe,EAAE,CAAC;IAClB,iBAAiB,EAAE,CAAC;IACpB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,kBAAkB,EAAE,CAAC;IACrB,cAAc,EAAE,CAAC;IACjB,YAAY,EAAE,CAAC;IACf,gBAAgB,EAAE,CAAC;AACrB,CAAC;AAED,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC","file":"vrender.js","sourcesContent":["import '@visactor/vrender-core';\nimport { container, isBrowserEnv, isNodeEnv, preLoadAllModule } from '@visactor/vrender-core';\nimport { loadBrowserEnv, loadNodeEnv } from '@visactor/vrender-kits';\nimport {\n registerArc,\n registerArc3d,\n registerArea,\n registerCircle,\n registerGlyph,\n registerGroup,\n registerImage,\n registerLine,\n registerPath,\n registerPolygon,\n registerPyramid3d,\n registerRect,\n registerRect3d,\n registerRichtext,\n registerShadowRoot,\n registerSymbol,\n registerText,\n registerWrapText\n} from '@visactor/vrender-kits';\n// 导出版本号\n// export const version = \"0.20.3\";\n\nlet registed = false;\nexport function registerForVrender() {\n if (registed) {\n return;\n }\n registed = true;\n // 注册内置组件\n preLoadAllModule();\n\n if (isBrowserEnv()) {\n loadBrowserEnv(container);\n } else if (isNodeEnv()) {\n loadNodeEnv(container);\n }\n registerArc();\n registerArc3d();\n registerArea();\n registerCircle();\n registerGlyph();\n registerGroup();\n registerImage();\n registerLine();\n registerPath();\n registerPolygon();\n registerPyramid3d();\n registerRect();\n registerRect3d();\n registerRichtext();\n registerShadowRoot();\n registerSymbol();\n registerText();\n registerWrapText();\n}\n\nexport * from '@visactor/vrender-core';\nexport * from '@visactor/vrender-kits';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visactor/vtable",
3
- "version": "0.20.2-alpha.3",
3
+ "version": "0.20.3",
4
4
  "description": "canvas table width high performance",
5
5
  "keywords": [
6
6
  "grid",
@@ -35,7 +35,6 @@
35
35
  }
36
36
  },
37
37
  "dependencies": {
38
- "@visactor/vtable-editors": "0.20.2-alpha.3",
39
38
  "@visactor/vrender-core": "0.17.20-alpha.3",
40
39
  "@visactor/vrender-kits": "0.17.20-alpha.3",
41
40
  "@visactor/vrender-components": "0.17.20-alpha.3",
@@ -43,7 +42,8 @@
43
42
  "@visactor/vutils": "~0.17.1",
44
43
  "@visactor/vscale": "~0.17.1",
45
44
  "@visactor/vdataset": "~0.17.1",
46
- "cssfontparser": "^1.2.1"
45
+ "cssfontparser": "^1.2.1",
46
+ "@visactor/vtable-editors": "0.20.3"
47
47
  },
48
48
  "devDependencies": {
49
49
  "luxon": "*",
@@ -93,9 +93,9 @@
93
93
  "d3-hierarchy": "^3.1.1",
94
94
  "@resvg/resvg-js": "^2.5.0",
95
95
  "pikaday": "1.8.2",
96
+ "@internal/ts-config": "0.0.1",
96
97
  "@internal/bundler": "0.0.1",
97
- "@internal/eslint-config": "0.0.1",
98
- "@internal/ts-config": "0.0.1"
98
+ "@internal/eslint-config": "0.0.1"
99
99
  },
100
100
  "unpkg": "latest",
101
101
  "unpkgFiles": [
@@ -1,3 +0,0 @@
1
- import type { IThemeSpec } from '@visactor/vrender-core';
2
- import type { BaseTableAPI } from '../../ts-types/base-table';
3
- export declare function getCellBorderStrokeWidth(col: number, row: number, cellTheme: IThemeSpec, table: BaseTableAPI): any;
@@ -1,16 +0,0 @@
1
- "use strict";
2
-
3
- function getCellBorderStrokeWidth(col, row, cellTheme, table) {
4
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
5
- let strokeArrayWidth = null !== (_b = null === (_a = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _a ? void 0 : _a.strokeArrayWidth) && void 0 !== _b ? _b : void 0;
6
- return table.theme.cellInnerBorder ? (0 === col && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_c = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _c ? void 0 : _c.lineWidth, null === (_d = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _d ? void 0 : _d.lineWidth, null === (_e = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _e ? void 0 : _e.lineWidth, null === (_f = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _f ? void 0 : _f.lineWidth ],
7
- strokeArrayWidth[3] = 0), col === table.colCount - 1 && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_g = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _g ? void 0 : _g.lineWidth, null === (_h = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _h ? void 0 : _h.lineWidth, null === (_j = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _j ? void 0 : _j.lineWidth, null === (_k = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _k ? void 0 : _k.lineWidth ],
8
- strokeArrayWidth[1] = 0), 0 === row && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_l = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _l ? void 0 : _l.lineWidth, null === (_m = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _m ? void 0 : _m.lineWidth, null === (_o = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _o ? void 0 : _o.lineWidth, null === (_p = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _p ? void 0 : _p.lineWidth ],
9
- strokeArrayWidth[0] = 0), row === table.rowCount - 1 && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_q = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _q ? void 0 : _q.lineWidth, null === (_r = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _r ? void 0 : _r.lineWidth, null === (_s = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _s ? void 0 : _s.lineWidth, null === (_t = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _t ? void 0 : _t.lineWidth ],
10
- strokeArrayWidth[2] = 0), strokeArrayWidth) : strokeArrayWidth;
11
- }
12
-
13
- Object.defineProperty(exports, "__esModule", {
14
- value: !0
15
- }), exports.getCellBorderStrokeWidth = void 0, exports.getCellBorderStrokeWidth = getCellBorderStrokeWidth;
16
- //# sourceMappingURL=cell-border-stroke-width.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/scenegraph/utils/cell-border-stroke-width.ts"],"names":[],"mappings":";;;AAGA,SAAgB,wBAAwB,CAAC,GAAW,EAAE,GAAW,EAAE,SAAqB,EAAE,KAAmB;;IAC3G,IAAI,gBAAgB,GAAG,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,gBAAgB,mCAAI,SAAS,CAAC;IAChF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE;QAChC,OAAO,gBAAgB,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,CAAC,EAAE;QACb,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE;QAC9B,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,CAAC,EAAE;QACb,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE;QAC9B,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AA3CD,4DA2CC","file":"cell-border-stroke-width.js","sourcesContent":["import type { IThemeSpec } from '@visactor/vrender-core';\nimport type { BaseTableAPI } from '../../ts-types/base-table';\n\nexport function getCellBorderStrokeWidth(col: number, row: number, cellTheme: IThemeSpec, table: BaseTableAPI) {\n let strokeArrayWidth = (cellTheme?.group as any)?.strokeArrayWidth ?? undefined;\n if (!table.theme.cellInnerBorder) {\n return strokeArrayWidth;\n }\n if (col === 0) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[3] = 0;\n }\n if (col === table.colCount - 1) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[1] = 0;\n }\n if (row === 0) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[0] = 0;\n }\n if (row === table.rowCount - 1) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[2] = 0;\n }\n\n return strokeArrayWidth;\n}\n"]}
@@ -1,3 +0,0 @@
1
- import type { IThemeSpec } from '@visactor/vrender-core';
2
- import type { BaseTableAPI } from '../../ts-types/base-table';
3
- export declare function getCellBorderStrokeWidth(col: number, row: number, cellTheme: IThemeSpec, table: BaseTableAPI): any;
@@ -1,10 +0,0 @@
1
- export function getCellBorderStrokeWidth(col, row, cellTheme, table) {
2
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
3
- let strokeArrayWidth = null !== (_b = null === (_a = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _a ? void 0 : _a.strokeArrayWidth) && void 0 !== _b ? _b : void 0;
4
- return table.theme.cellInnerBorder ? (0 === col && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_c = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _c ? void 0 : _c.lineWidth, null === (_d = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _d ? void 0 : _d.lineWidth, null === (_e = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _e ? void 0 : _e.lineWidth, null === (_f = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _f ? void 0 : _f.lineWidth ],
5
- strokeArrayWidth[3] = 0), col === table.colCount - 1 && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_g = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _g ? void 0 : _g.lineWidth, null === (_h = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _h ? void 0 : _h.lineWidth, null === (_j = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _j ? void 0 : _j.lineWidth, null === (_k = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _k ? void 0 : _k.lineWidth ],
6
- strokeArrayWidth[1] = 0), 0 === row && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_l = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _l ? void 0 : _l.lineWidth, null === (_m = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _m ? void 0 : _m.lineWidth, null === (_o = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _o ? void 0 : _o.lineWidth, null === (_p = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _p ? void 0 : _p.lineWidth ],
7
- strokeArrayWidth[0] = 0), row === table.rowCount - 1 && (strokeArrayWidth = null != strokeArrayWidth ? strokeArrayWidth : [ null === (_q = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _q ? void 0 : _q.lineWidth, null === (_r = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _r ? void 0 : _r.lineWidth, null === (_s = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _s ? void 0 : _s.lineWidth, null === (_t = null == cellTheme ? void 0 : cellTheme.group) || void 0 === _t ? void 0 : _t.lineWidth ],
8
- strokeArrayWidth[2] = 0), strokeArrayWidth) : strokeArrayWidth;
9
- }
10
- //# sourceMappingURL=cell-border-stroke-width.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/scenegraph/utils/cell-border-stroke-width.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,wBAAwB,CAAC,GAAW,EAAE,GAAW,EAAE,SAAqB,EAAE,KAAmB;;IAC3G,IAAI,gBAAgB,GAAG,MAAA,MAAC,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAa,0CAAE,gBAAgB,mCAAI,SAAS,CAAC;IAChF,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE;QAChC,OAAO,gBAAgB,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,CAAC,EAAE;QACb,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE;QAC9B,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,CAAC,EAAE;QACb,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IACD,IAAI,GAAG,KAAK,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE;QAC9B,gBAAgB,GAAG,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI;YACrC,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;YAC3B,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,KAAK,0CAAE,SAAS;SAC5B,CAAC;QACF,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACzB;IAED,OAAO,gBAAgB,CAAC;AAC1B,CAAC","file":"cell-border-stroke-width.js","sourcesContent":["import type { IThemeSpec } from '@visactor/vrender-core';\nimport type { BaseTableAPI } from '../../ts-types/base-table';\n\nexport function getCellBorderStrokeWidth(col: number, row: number, cellTheme: IThemeSpec, table: BaseTableAPI) {\n let strokeArrayWidth = (cellTheme?.group as any)?.strokeArrayWidth ?? undefined;\n if (!table.theme.cellInnerBorder) {\n return strokeArrayWidth;\n }\n if (col === 0) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[3] = 0;\n }\n if (col === table.colCount - 1) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[1] = 0;\n }\n if (row === 0) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[0] = 0;\n }\n if (row === table.rowCount - 1) {\n strokeArrayWidth = strokeArrayWidth ?? [\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth,\n cellTheme?.group?.lineWidth\n ];\n strokeArrayWidth[2] = 0;\n }\n\n return strokeArrayWidth;\n}\n"]}