@public-ui/sample-react 4.0.0-beta.0 → 4.0.0-ee1678914efc9a51fdc688bac71b570e768a8032.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{Alert-D0UNMrPW-D_sCbyYP.js → Alert-BqklLKRY-B7dSvKSG.js} +2 -2
- package/dist/assets/{Alert-D0UNMrPW-D_sCbyYP.js.map → Alert-BqklLKRY-B7dSvKSG.js.map} +1 -1
- package/dist/assets/{Collapsible-Bt0S3VLo-7Bp48ceu.js → Collapsible-ChBAFAWq-0GB7eA6P.js} +2 -2
- package/dist/assets/{Collapsible-Bt0S3VLo-7Bp48ceu.js.map → Collapsible-ChBAFAWq-0GB7eA6P.js.map} +1 -1
- package/dist/assets/{CustomSuggestionsOptionsGroup-BJhOatoP-DvwgDvjE.js → CustomSuggestionsOptionsGroup-k0wpIPsG-CYKv1jSS.js} +2 -2
- package/dist/assets/{CustomSuggestionsOptionsGroup-BJhOatoP-DvwgDvjE.js.map → CustomSuggestionsOptionsGroup-k0wpIPsG-CYKv1jSS.js.map} +1 -1
- package/dist/assets/{FieldControlStateWrapper-B9qAXEoh-D-AZB0w7.js → FieldControlStateWrapper-Bq9FKCS3-Dq5ladEJ.js} +2 -2
- package/dist/assets/{FieldControlStateWrapper-B9qAXEoh-D-AZB0w7.js.map → FieldControlStateWrapper-Bq9FKCS3-Dq5ladEJ.js.map} +1 -1
- package/dist/assets/{FormFieldStateWrapper-GaiPo3FK-CR-9A0Pd.js → FormFieldStateWrapper-V4TBRTQk-CB0aX0nU.js} +2 -2
- package/dist/assets/{FormFieldStateWrapper-GaiPo3FK-CR-9A0Pd.js.map → FormFieldStateWrapper-V4TBRTQk-CB0aX0nU.js.map} +1 -1
- package/dist/assets/{Heading-s9wCZGKs-D9xkf8fP.js → Heading-Br3uyvNO-CN19rmPI.js} +2 -2
- package/dist/assets/{Heading-s9wCZGKs-D9xkf8fP.js.map → Heading-Br3uyvNO-CN19rmPI.js.map} +1 -1
- package/dist/assets/{Icon-BCK5_-Dl-BstsuFD-.js → Icon-bKjqhrmF-y40Xadms.js} +2 -2
- package/dist/assets/{Icon-BCK5_-Dl-BstsuFD-.js.map → Icon-bKjqhrmF-y40Xadms.js.map} +1 -1
- package/dist/assets/{Input-Roq5cRZH-BN7xr9QP.js → Input-D9n2BTaS-10gdjikg.js} +2 -2
- package/dist/assets/{Input-Roq5cRZH-BN7xr9QP.js.map → Input-D9n2BTaS-10gdjikg.js.map} +1 -1
- package/dist/assets/{InputStateWrapper-iBc4zsva-CSeWxZeI.js → InputStateWrapper-DuYkB3IO-DRigq4UQ.js} +2 -2
- package/dist/assets/{InputStateWrapper-iBc4zsva-CSeWxZeI.js.map → InputStateWrapper-DuYkB3IO-DRigq4UQ.js.map} +1 -1
- package/dist/assets/{InternalUnderlinedBadgeText-D96tegi8-CVOLKJgq.js → InternalUnderlinedBadgeText-B4TxqIEm-BC1IlhuL.js} +2 -2
- package/dist/assets/{InternalUnderlinedBadgeText-D96tegi8-CVOLKJgq.js.map → InternalUnderlinedBadgeText-B4TxqIEm-BC1IlhuL.js.map} +1 -1
- package/dist/assets/{Span-x9qr0ZW4-D2LazUFv.js → Span-BbbJn7Zh-DP5Oaz-I.js} +2 -2
- package/dist/assets/{Span-x9qr0ZW4-D2LazUFv.js.map → Span-BbbJn7Zh-DP5Oaz-I.js.map} +1 -1
- package/dist/assets/{access-and-short-key-Dy2a7Py3-C8K1ElNm.js → access-and-short-key-BlB0ZAri-o2SaExn0.js} +2 -2
- package/dist/assets/{access-and-short-key-Dy2a7Py3-C8K1ElNm.js.map → access-and-short-key-BlB0ZAri-o2SaExn0.js.map} +1 -1
- package/dist/assets/{align-Bcqvz5vw-BEayLFXk.js → align-C_bkzA-y-liCzRjY_.js} +2 -2
- package/dist/assets/{align-Bcqvz5vw-BEayLFXk.js.map → align-C_bkzA-y-liCzRjY_.js.map} +1 -1
- package/dist/assets/{align-floating-elements-DUQRrio7-q62Ihs6C.js → align-floating-elements-BmMJhjF1-D8VcPbZE.js} +2 -2
- package/dist/assets/{align-floating-elements-DUQRrio7-q62Ihs6C.js.map → align-floating-elements-BmMJhjF1-D8VcPbZE.js.map} +1 -1
- package/dist/assets/{associated.controller-BStrZiDY-BiJ_u6uA.js → associated.controller-ByKVIoVY-D-LJPEwO.js} +2 -2
- package/dist/assets/{associated.controller-BStrZiDY-BiJ_u6uA.js.map → associated.controller-ByKVIoVY-D-LJPEwO.js.map} +1 -1
- package/dist/assets/{auto-complete-h9OoHuC5-DwvEQ5Sq.js → auto-complete-CndE0brm-C2w7zUea.js} +2 -2
- package/dist/assets/{auto-complete-h9OoHuC5-DwvEQ5Sq.js.map → auto-complete-CndE0brm-C2w7zUea.js.map} +1 -1
- package/dist/assets/{button-variant-ueS50zGR-B8zkVWeR.js → button-variant-BKr6oMet-CMypfCC0.js} +2 -2
- package/dist/assets/{button-variant-ueS50zGR-B8zkVWeR.js.map → button-variant-BKr6oMet-CMypfCC0.js.map} +1 -1
- package/dist/assets/{color-DLhBoaj--BWj3WjUi.js → color-D-_1x7ql-D_erv83U.js} +2 -2
- package/dist/assets/{color-DLhBoaj--BWj3WjUi.js.map → color-D-_1x7ql-D_erv83U.js.map} +1 -1
- package/dist/assets/controller-B_vWaR7A-Ctu3Dr_4.js +2 -0
- package/dist/assets/{controller-DPZyCKru-CYw2yBXd.js.map → controller-B_vWaR7A-Ctu3Dr_4.js.map} +1 -1
- package/dist/assets/{controller-C7CgOtOU-B-0yYyfF.js → controller-BoZ8i8wc-D7gjEEnC.js} +2 -2
- package/dist/assets/{controller-C7CgOtOU-B-0yYyfF.js.map → controller-BoZ8i8wc-D7gjEEnC.js.map} +1 -1
- package/dist/assets/{controller-DJOhQXnE-hIa505T9.js → controller-D-keynM4-CSGAJGLh.js} +2 -2
- package/dist/assets/{controller-DJOhQXnE-hIa505T9.js.map → controller-D-keynM4-CSGAJGLh.js.map} +1 -1
- package/dist/assets/{controller-BeFnq48f-C3w2zJ0d.js → controller-Y0aLQy9u-T976Fa54.js} +2 -2
- package/dist/assets/{controller-BeFnq48f-C3w2zJ0d.js.map → controller-Y0aLQy9u-T976Fa54.js.map} +1 -1
- package/dist/assets/{controller-icon-CxUC2kIO-B30x_tAU.js → controller-icon-BtF2767o-BIVzLThU.js} +2 -2
- package/dist/assets/{controller-icon-CxUC2kIO-B30x_tAU.js.map → controller-icon-BtF2767o-BIVzLThU.js.map} +1 -1
- package/dist/assets/custom-class-B6h_ZSR7-BqCjuurr.js +2 -0
- package/dist/assets/{custom-class-Dg0c6ST7-CXkmqQxK.js.map → custom-class-B6h_ZSR7-BqCjuurr.js.map} +1 -1
- package/dist/assets/{dev.utils-BHWGgzSt-DvLIwSpy.js → dev.utils-CNIecfzd-Bzni6WCD.js} +2 -2
- package/dist/assets/{dev.utils-BHWGgzSt-DvLIwSpy.js.map → dev.utils-CNIecfzd-Bzni6WCD.js.map} +1 -1
- package/dist/assets/{devtools--r5ztQVW-Bjj4F1IK.js → devtools-DiYPrpP0-BW2SF7v8.js} +3 -3
- package/dist/assets/{devtools--r5ztQVW-Bjj4F1IK.js.map → devtools-DiYPrpP0-BW2SF7v8.js.map} +1 -1
- package/dist/assets/disabled-D0wfAqak-B9WetsJg.js +2 -0
- package/dist/assets/{disabled-u5a_azlj-gg9juBlZ.js.map → disabled-D0wfAqak-B9WetsJg.js.map} +1 -1
- package/dist/assets/has-closer-OxGfsISj-PowrO_TX.js +2 -0
- package/dist/assets/has-closer-OxGfsISj-PowrO_TX.js.map +1 -0
- package/dist/assets/hide-label-90DGA8H4-BEA1XLoM.js +2 -0
- package/dist/assets/{hide-label-DjBQJOAP-1NZ7Zm1U.js.map → hide-label-90DGA8H4-BEA1XLoM.js.map} +1 -1
- package/dist/assets/href-BDekIhFd-BJkbb2be.js +2 -0
- package/dist/assets/href-BDekIhFd-BJkbb2be.js.map +1 -0
- package/dist/assets/i18n-CvQhdUrE-MibovDa0.js +2 -0
- package/dist/assets/{i18n-BgOmSzBT-Bm1C7fXF.js.map → i18n-CvQhdUrE-MibovDa0.js.map} +1 -1
- package/dist/assets/{icons-B_GLbYEP-D-1TndW2.js → icons-DpMX_jnF-BLAL8_uW.js} +2 -2
- package/dist/assets/{icons-B_GLbYEP-D-1TndW2.js.map → icons-DpMX_jnF-BLAL8_uW.js.map} +1 -1
- package/dist/assets/image-source-udiqQ1zY-DxkUYrMS.js +2 -0
- package/dist/assets/image-source-udiqQ1zY-DxkUYrMS.js.map +1 -0
- package/dist/assets/index-BRSXyzFh.css +1 -0
- package/dist/assets/{index-DDaun4pg.js → index-DQ8wQ2CM.js} +3145 -456
- package/dist/assets/index-DQ8wQ2CM.js.map +1 -0
- package/dist/assets/inline-eBYBtb1X-CK47_EuZ.js +2 -0
- package/dist/assets/inline-eBYBtb1X-CK47_EuZ.js.map +1 -0
- package/dist/assets/{kol-abbr.entry-BKXsZVBV.js → kol-abbr.entry-C2gZFBhD.js} +2 -2
- package/dist/assets/{kol-abbr.entry-BKXsZVBV.js.map → kol-abbr.entry-C2gZFBhD.js.map} +1 -1
- package/dist/assets/{kol-accordion.entry-D42Yyh_P.js → kol-accordion.entry-CE47yVjo.js} +3 -3
- package/dist/assets/{kol-accordion.entry-D42Yyh_P.js.map → kol-accordion.entry-CE47yVjo.js.map} +1 -1
- package/dist/assets/{kol-alert-wc.entry-BzyneORG.js → kol-alert-wc.entry-vxz_JEQ6.js} +2 -2
- package/dist/assets/{kol-alert-wc.entry-BzyneORG.js.map → kol-alert-wc.entry-vxz_JEQ6.js.map} +1 -1
- package/dist/assets/{kol-alert.entry-DUhuLKhm.js → kol-alert.entry-TZ4kCFFt.js} +2 -2
- package/dist/assets/{kol-alert.entry-DUhuLKhm.js.map → kol-alert.entry-TZ4kCFFt.js.map} +1 -1
- package/dist/assets/{kol-avatar-wc.entry-rZAFlCP4.js → kol-avatar-wc.entry-DvE0DiEn.js} +2 -2
- package/dist/assets/{kol-avatar-wc.entry-rZAFlCP4.js.map → kol-avatar-wc.entry-DvE0DiEn.js.map} +1 -1
- package/dist/assets/{kol-avatar.entry-wb8fYLXZ.js → kol-avatar.entry-C1wz2ota.js} +2 -2
- package/dist/assets/{kol-avatar.entry-wb8fYLXZ.js.map → kol-avatar.entry-C1wz2ota.js.map} +1 -1
- package/dist/assets/{kol-badge.entry-CXG1FV17.js → kol-badge.entry-D4Gh66Rf.js} +3 -3
- package/dist/assets/{kol-badge.entry-CXG1FV17.js.map → kol-badge.entry-D4Gh66Rf.js.map} +1 -1
- package/dist/assets/{kol-breadcrumb.entry-Bw7rlPDR.js → kol-breadcrumb.entry-BHmdLkCB.js} +12 -6
- package/dist/assets/{kol-breadcrumb.entry-Bw7rlPDR.js.map → kol-breadcrumb.entry-BHmdLkCB.js.map} +1 -1
- package/dist/assets/{kol-button-link.entry-d3z4LUwa.js → kol-button-link.entry-CX6oNprx.js} +12 -6
- package/dist/assets/{kol-button-link.entry-d3z4LUwa.js.map → kol-button-link.entry-CX6oNprx.js.map} +1 -1
- package/dist/assets/kol-button-wc.entry-D1j6qMu-.js +2 -0
- package/dist/assets/kol-button-wc.entry-D1j6qMu-.js.map +1 -0
- package/dist/assets/{kol-button.entry-DhiTqYwz.js → kol-button.entry-BLBJxrYA.js} +3 -3
- package/dist/assets/{kol-button.entry-DhiTqYwz.js.map → kol-button.entry-BLBJxrYA.js.map} +1 -1
- package/dist/assets/kol-card-wc.entry-CLZedGlD.js +2 -0
- package/dist/assets/kol-card-wc.entry-CLZedGlD.js.map +1 -0
- package/dist/assets/{kol-card.entry-B6CEVu26.js → kol-card.entry-BnDhEPkt.js} +2 -2
- package/dist/assets/{kol-card.entry-B6CEVu26.js.map → kol-card.entry-BnDhEPkt.js.map} +1 -1
- package/dist/assets/kol-combobox.entry-DDiXWvCE.js +386 -0
- package/dist/assets/kol-combobox.entry-DDiXWvCE.js.map +1 -0
- package/dist/assets/{kol-details.entry-CFFNnjl_.js → kol-details.entry-CGZCN7pW.js} +3 -3
- package/dist/assets/{kol-details.entry-CFFNnjl_.js.map → kol-details.entry-CGZCN7pW.js.map} +1 -1
- package/dist/assets/kol-dialog-wc.entry--t6WFPRb.js +2 -0
- package/dist/assets/kol-dialog-wc.entry--t6WFPRb.js.map +1 -0
- package/dist/assets/kol-dialog.entry-CZ3oXMsN.js +304 -0
- package/dist/assets/kol-dialog.entry-CZ3oXMsN.js.map +1 -0
- package/dist/assets/{kol-drawer.entry-Bu13vwWk.js → kol-drawer.entry-zOdxIM1D.js} +3 -3
- package/dist/assets/{kol-drawer.entry-Bu13vwWk.js.map → kol-drawer.entry-zOdxIM1D.js.map} +1 -1
- package/dist/assets/{kol-form.entry-T1ClUcsB.js → kol-form.entry-DOOPvqNS.js} +12 -6
- package/dist/assets/{kol-form.entry-T1ClUcsB.js.map → kol-form.entry-DOOPvqNS.js.map} +1 -1
- package/dist/assets/{kol-heading.entry-Cl4iEsPH.js → kol-heading.entry-Bx8LWJLF.js} +3 -3
- package/dist/assets/{kol-heading.entry-Cl4iEsPH.js.map → kol-heading.entry-Bx8LWJLF.js.map} +1 -1
- package/dist/assets/{kol-icon.entry-Cac9-gOT.js → kol-icon.entry-CArGMhq6.js} +21 -17
- package/dist/assets/kol-icon.entry-CArGMhq6.js.map +1 -0
- package/dist/assets/{kol-image.entry-CQCurr-c.js → kol-image.entry-CNelBL-b.js} +3 -3
- package/dist/assets/{kol-image.entry-CQCurr-c.js.map → kol-image.entry-CNelBL-b.js.map} +1 -1
- package/dist/assets/{kol-input-checkbox.entry-C_LMwfWd.js → kol-input-checkbox.entry-F_hURK3c.js} +3 -3
- package/dist/assets/{kol-input-checkbox.entry-C_LMwfWd.js.map → kol-input-checkbox.entry-F_hURK3c.js.map} +1 -1
- package/dist/assets/{kol-input-color.entry-B1L4GK8l.js → kol-input-color.entry-DSWvQ9bA.js} +3 -3
- package/dist/assets/kol-input-color.entry-DSWvQ9bA.js.map +1 -0
- package/dist/assets/{kol-input-date.entry-C5mHFSVU.js → kol-input-date.entry-NsSPNqb-.js} +3 -3
- package/dist/assets/{kol-input-date.entry-C5mHFSVU.js.map → kol-input-date.entry-NsSPNqb-.js.map} +1 -1
- package/dist/assets/{kol-input-email.entry-Rh7NyzuK.js → kol-input-email.entry-xy0XAuwN.js} +3 -3
- package/dist/assets/kol-input-email.entry-xy0XAuwN.js.map +1 -0
- package/dist/assets/{kol-input-file.entry-CANVUev4.js → kol-input-file.entry-DYdgAJXP.js} +3 -3
- package/dist/assets/kol-input-file.entry-DYdgAJXP.js.map +1 -0
- package/dist/assets/{kol-input-number.entry-BcDwHWU2.js → kol-input-number.entry-CKC_by92.js} +3 -3
- package/dist/assets/kol-input-number.entry-CKC_by92.js.map +1 -0
- package/dist/assets/{kol-input-password.entry-Cx82ef6F.js → kol-input-password.entry-BFgKChV8.js} +3 -3
- package/dist/assets/kol-input-password.entry-BFgKChV8.js.map +1 -0
- package/dist/assets/{kol-input-radio.entry-CgTH2ErM.js → kol-input-radio.entry-DyUvVzd4.js} +3 -3
- package/dist/assets/{kol-input-radio.entry-CgTH2ErM.js.map → kol-input-radio.entry-DyUvVzd4.js.map} +1 -1
- package/dist/assets/{kol-input-range.entry-h_UQDk0G.js → kol-input-range.entry-D4tgAqrQ.js} +3 -3
- package/dist/assets/kol-input-range.entry-D4tgAqrQ.js.map +1 -0
- package/dist/assets/{kol-input-text.entry-Bo0Evq85.js → kol-input-text.entry-CUCoOgK7.js} +3 -3
- package/dist/assets/kol-input-text.entry-CUCoOgK7.js.map +1 -0
- package/dist/assets/{kol-kolibri.entry-qviGKVoe.js → kol-kolibri.entry-BoezmYZ-.js} +3 -3
- package/dist/assets/{kol-kolibri.entry-qviGKVoe.js.map → kol-kolibri.entry-BoezmYZ-.js.map} +1 -1
- package/dist/assets/{kol-link-button.entry-Cc8g-UOR.js → kol-link-button.entry-CXy1fU-c.js} +3 -3
- package/dist/assets/{kol-link-button.entry-Cc8g-UOR.js.map → kol-link-button.entry-CXy1fU-c.js.map} +1 -1
- package/dist/assets/kol-link-wc.entry-DqEp_Vbs.js +2 -0
- package/dist/assets/kol-link-wc.entry-DqEp_Vbs.js.map +1 -0
- package/dist/assets/{kol-link.entry-CYoZPrrG.js → kol-link.entry-mJrJkYoK.js} +12 -6
- package/dist/assets/{kol-link.entry-CYoZPrrG.js.map → kol-link.entry-mJrJkYoK.js.map} +1 -1
- package/dist/assets/kol-modal.entry-C6FYPMn3.js +304 -0
- package/dist/assets/kol-modal.entry-C6FYPMn3.js.map +1 -0
- package/dist/assets/{kol-nav.entry-Cw5atvaa.js → kol-nav.entry-cjF_7KGV.js} +13 -13
- package/dist/assets/kol-nav.entry-cjF_7KGV.js.map +1 -0
- package/dist/assets/{kol-pagination-wc.entry-DYEfLS7i.js → kol-pagination-wc.entry-Ce6NS1TV.js} +2 -2
- package/dist/assets/{kol-pagination-wc.entry-DYEfLS7i.js.map → kol-pagination-wc.entry-Ce6NS1TV.js.map} +1 -1
- package/dist/assets/{kol-pagination.entry-DAUsPaed.js → kol-pagination.entry-BWUyvTYZ.js} +3 -3
- package/dist/assets/{kol-pagination.entry-DAUsPaed.js.map → kol-pagination.entry-BWUyvTYZ.js.map} +1 -1
- package/dist/assets/kol-popover-button-wc.entry-D8w2wpdu.js +2 -0
- package/dist/assets/kol-popover-button-wc.entry-D8w2wpdu.js.map +1 -0
- package/dist/assets/{kol-popover-button.entry-DrJIuQkH.js → kol-popover-button.entry-M-BFnA_9.js} +3 -3
- package/dist/assets/{kol-popover-button.entry-DrJIuQkH.js.map → kol-popover-button.entry-M-BFnA_9.js.map} +1 -1
- package/dist/assets/kol-popover-wc.entry-BJ4PvsF3.js +2 -0
- package/dist/assets/{kol-popover-wc.entry-BAdeKqjb.js.map → kol-popover-wc.entry-BJ4PvsF3.js.map} +1 -1
- package/dist/assets/{kol-progress.entry-D4OA2ZZM.js → kol-progress.entry-B7xSLxUp.js} +3 -3
- package/dist/assets/{kol-progress.entry-D4OA2ZZM.js.map → kol-progress.entry-B7xSLxUp.js.map} +1 -1
- package/dist/assets/{kol-quote.entry-C6GotbSH.js → kol-quote.entry-CQWIhpUX.js} +3 -3
- package/dist/assets/{kol-quote.entry-C6GotbSH.js.map → kol-quote.entry-CQWIhpUX.js.map} +1 -1
- package/dist/assets/kol-select-wc.entry-B-LwPR3B.js +2 -0
- package/dist/assets/kol-select-wc.entry-B-LwPR3B.js.map +1 -0
- package/dist/assets/{kol-select.entry-51ybPb_P.js → kol-select.entry-CU0oUMSW.js} +3 -3
- package/dist/assets/{kol-select.entry-51ybPb_P.js.map → kol-select.entry-CU0oUMSW.js.map} +1 -1
- package/dist/assets/kol-single-select.entry-7DPX52sy.js +396 -0
- package/dist/assets/kol-single-select.entry-7DPX52sy.js.map +1 -0
- package/dist/assets/{kol-skip-nav.entry-BpdXi0oO.js → kol-skip-nav.entry-CZlD7e3q.js} +3 -3
- package/dist/assets/{kol-skip-nav.entry-BpdXi0oO.js.map → kol-skip-nav.entry-CZlD7e3q.js.map} +1 -1
- package/dist/assets/{kol-spin.entry-DwRFGPOW.js → kol-spin.entry-DXT9ed2u.js} +3 -3
- package/dist/assets/{kol-spin.entry-DwRFGPOW.js.map → kol-spin.entry-DXT9ed2u.js.map} +1 -1
- package/dist/assets/{kol-split-button.entry-DQceder2.js → kol-split-button.entry-hnnG02OM.js} +3 -3
- package/dist/assets/{kol-split-button.entry-DQceder2.js.map → kol-split-button.entry-hnnG02OM.js.map} +1 -1
- package/dist/assets/kol-table-settings-wc.entry-CiGd8MYe.js +2 -0
- package/dist/assets/kol-table-settings-wc.entry-CiGd8MYe.js.map +1 -0
- package/dist/assets/{kol-table-stateful.entry-DlqMRvC8.js → kol-table-stateful.entry-Byx4m9TY.js} +5 -5
- package/dist/assets/kol-table-stateful.entry-Byx4m9TY.js.map +1 -0
- package/dist/assets/kol-table-stateless-wc.entry-CnxR9DIi.js +2 -0
- package/dist/assets/kol-table-stateless-wc.entry-CnxR9DIi.js.map +1 -0
- package/dist/assets/{kol-table-stateless.entry-CaAENaGy.js → kol-table-stateless.entry-DH8ONJVA.js} +5 -5
- package/dist/assets/{kol-table-stateless.entry-CaAENaGy.js.map → kol-table-stateless.entry-DH8ONJVA.js.map} +1 -1
- package/dist/assets/{kol-tabs.entry-Zmik078k.js → kol-tabs.entry-DpMuZR3Y.js} +3 -3
- package/dist/assets/{kol-tabs.entry-Zmik078k.js.map → kol-tabs.entry-DpMuZR3Y.js.map} +1 -1
- package/dist/assets/{kol-textarea.entry-CLlKapqD.js → kol-textarea.entry-C7h664ay.js} +3 -3
- package/dist/assets/kol-textarea.entry-C7h664ay.js.map +1 -0
- package/dist/assets/{kol-toast-container.entry-JoIBsfaj.js → kol-toast-container.entry-CWvoX2A2.js} +3 -3
- package/dist/assets/{kol-toast-container.entry-JoIBsfaj.js.map → kol-toast-container.entry-CWvoX2A2.js.map} +1 -1
- package/dist/assets/{kol-toolbar.entry-Bades6h1.js → kol-toolbar.entry-kq7eTILy.js} +3 -3
- package/dist/assets/{kol-toolbar.entry-Bades6h1.js.map → kol-toolbar.entry-kq7eTILy.js.map} +1 -1
- package/dist/assets/{kol-tooltip-wc.entry-DLkkMmDM.js → kol-tooltip-wc.entry-74H2DrNb.js} +2 -2
- package/dist/assets/{kol-tooltip-wc.entry-DLkkMmDM.js.map → kol-tooltip-wc.entry-74H2DrNb.js.map} +1 -1
- package/dist/assets/kol-tree-item-wc.entry-EhUCS1zG.js +2 -0
- package/dist/assets/kol-tree-item-wc.entry-EhUCS1zG.js.map +1 -0
- package/dist/assets/{kol-tree-item.entry-CQeTDzNP.js → kol-tree-item.entry-25cpBQu4.js} +3 -3
- package/dist/assets/{kol-tree-item.entry-CQeTDzNP.js.map → kol-tree-item.entry-25cpBQu4.js.map} +1 -1
- package/dist/assets/kol-tree-wc.entry-7fhqogOp.js +2 -0
- package/dist/assets/kol-tree-wc.entry-7fhqogOp.js.map +1 -0
- package/dist/assets/{kol-tree.entry-D-A07ohH.js → kol-tree.entry-Ko3mVSOW.js} +3 -3
- package/dist/assets/{kol-tree.entry-D-A07ohH.js.map → kol-tree.entry-Ko3mVSOW.js.map} +1 -1
- package/dist/assets/{kol-version.entry-BPKap0W-.js → kol-version.entry-BkgPSstE.js} +3 -3
- package/dist/assets/{kol-version.entry-BPKap0W-.js.map → kol-version.entry-BkgPSstE.js.map} +1 -1
- package/dist/assets/kolicons/kolicons.eot +0 -0
- package/dist/assets/kolicons/kolicons.json +2 -1
- package/dist/assets/kolicons/kolicons.svg +14 -11
- package/dist/assets/kolicons/kolicons.ttf +0 -0
- package/dist/assets/kolicons/kolicons.woff +0 -0
- package/dist/assets/kolicons/kolicons.woff2 +0 -0
- package/dist/assets/kolicons/style.css +19 -18
- package/dist/assets/{label-ohY9ajP0-D6pld2vB.js → label-Dkj9sxQK-DuSSQuJm.js} +2 -2
- package/dist/assets/{label-ohY9ajP0-D6pld2vB.js.map → label-Dkj9sxQK-DuSSQuJm.js.map} +1 -1
- package/dist/assets/{markdown-CVks1MC0-B5bHOOUE.js → markdown-CaS836ev-BnrHTiii.js} +2 -2
- package/dist/assets/{markdown-CVks1MC0-B5bHOOUE.js.map → markdown-CaS836ev-BnrHTiii.js.map} +1 -1
- package/dist/assets/max-length-behavior-C7oPJjTW-jeIwa4yg.js +2 -0
- package/dist/assets/{max-length-behavior-N5Lbz6E--D-GKzhk3.js.map → max-length-behavior-C7oPJjTW-jeIwa4yg.js.map} +1 -1
- package/dist/assets/multiple-BYEUdjyO-DexNNmrM.js +2 -0
- package/dist/assets/multiple-BYEUdjyO-DexNNmrM.js.map +1 -0
- package/dist/assets/open-Cuy37cT5-CZxfAFNR.js +2 -0
- package/dist/assets/open-Cuy37cT5-CZxfAFNR.js.map +1 -0
- package/dist/assets/{orientation-B0ErOlUK-DHZI87va.js → orientation-uIK98CL3-CB4zkq6g.js} +2 -2
- package/dist/assets/{orientation-B0ErOlUK-DHZI87va.js.map → orientation-uIK98CL3-CB4zkq6g.js.map} +1 -1
- package/dist/assets/placeholder-C0qu-_xi-tRw5grik.js +2 -0
- package/dist/assets/{placeholder-DrgXYoah-YaV48hp7.js.map → placeholder-C0qu-_xi-tRw5grik.js.map} +1 -1
- package/dist/assets/read-only-DqzvkuwG-CjyN3Pc9.js +2 -0
- package/dist/assets/read-only-DqzvkuwG-CjyN3Pc9.js.map +1 -0
- package/dist/assets/required-IJ-wNQGn-9Rq-ZGwI.js +2 -0
- package/dist/assets/required-IJ-wNQGn-9Rq-ZGwI.js.map +1 -0
- package/dist/assets/rows-CaNxvJ4Y-ClSjWBX6.js +2 -0
- package/dist/assets/rows-CaNxvJ4Y-ClSjWBX6.js.map +1 -0
- package/dist/assets/show-DVtFSh7x-CuZRvo-5.js +2 -0
- package/dist/assets/show-DVtFSh7x-CuZRvo-5.js.map +1 -0
- package/dist/assets/spell-check-BBqBRmnp-BOq_8EHe.js +2 -0
- package/dist/assets/{spell-check-DrU5XI1o-Dumf_q2A.js.map → spell-check-BBqBRmnp-BOq_8EHe.js.map} +1 -1
- package/dist/assets/{suggestions-Bufr76At-C7FrFkns.js → suggestions-CsvpWHvb-DGDs99qG.js} +2 -2
- package/dist/assets/{suggestions-Bufr76At-C7FrFkns.js.map → suggestions-CsvpWHvb-DGDs99qG.js.map} +1 -1
- package/dist/assets/{table-selection-BwD1ndz6-r6GjVSN_.js → table-selection-C4VgH6EI-KRZX-ruW.js} +2 -2
- package/dist/assets/{table-selection-BwD1ndz6-r6GjVSN_.js.map → table-selection-C4VgH6EI-KRZX-ruW.js.map} +1 -1
- package/dist/assets/test-component.entry-DAmhUmU3.js +2 -0
- package/dist/assets/{test-component.entry-CxfRDFAi.js.map → test-component.entry-DAmhUmU3.js.map} +1 -1
- package/dist/assets/tooltip-align-P-7pyT1i-Ck7oLgt3.js +2 -0
- package/dist/assets/tooltip-align-P-7pyT1i-Ck7oLgt3.js.map +1 -0
- package/dist/assets/{unique-nav-labels-C-bt2E8D-BbmQAOy_.js → unique-nav-labels-B6560U3V-DxD0cphB.js} +2 -2
- package/dist/assets/{unique-nav-labels-C-bt2E8D-BbmQAOy_.js.map → unique-nav-labels-B6560U3V-DxD0cphB.js.map} +1 -1
- package/dist/assets/{validation-BmqW5reG-S0i4yLz9.js → validation-Ct877GbF-BzqWReq3.js} +2 -2
- package/dist/assets/{validation-BmqW5reG-S0i4yLz9.js.map → validation-Ct877GbF-BzqWReq3.js.map} +1 -1
- package/dist/assets/validation-D0gTVdAQ-vaNoR_a-.js +2 -0
- package/dist/assets/{validation-BVeaxeev-BadtbEvG.js.map → validation-D0gTVdAQ-vaNoR_a-.js.map} +1 -1
- package/dist/index.html +2 -2
- package/package.json +14 -14
- package/public/assets/kolicons/kolicons.eot +0 -0
- package/public/assets/kolicons/kolicons.json +2 -1
- package/public/assets/kolicons/kolicons.svg +14 -11
- package/public/assets/kolicons/kolicons.ttf +0 -0
- package/public/assets/kolicons/kolicons.woff +0 -0
- package/public/assets/kolicons/kolicons.woff2 +0 -0
- package/public/assets/kolicons/style.css +19 -18
- package/src/components/accordion/multiple.tsx +39 -0
- package/src/components/accordion/routes.ts +2 -0
- package/src/components/breadcrumb/basic.tsx +1 -1
- package/src/components/button/icons.tsx +1 -1
- package/src/components/dialog/basic.tsx +63 -0
- package/src/components/dialog/routes.ts +8 -0
- package/src/components/handout/basic.tsx +45 -52
- package/src/components/modal/basic.tsx +15 -58
- package/src/components/nav/basic.tsx +1 -1
- package/src/components/nav/links.ts +8 -8
- package/src/components/popover-button/basic.tsx +2 -2
- package/src/components/skip-nav/basic.tsx +2 -2
- package/src/components/table/column-alignment.tsx +13 -17
- package/src/components/table/complex-headers.tsx +28 -1
- package/src/components/table/direction-aware-sort.tsx +3 -2
- package/src/components/table/horizontal-scrollbar.tsx +31 -29
- package/src/components/table/interactive-child-elements.tsx +22 -9
- package/src/components/table/multi-sort.tsx +8 -9
- package/src/components/table/non-hidable-columns.tsx +3 -4
- package/src/components/table/pagination-position.tsx +2 -5
- package/src/components/table/predefined-settings.tsx +3 -4
- package/src/components/table/render-cell.tsx +19 -13
- package/src/components/table/settings-column-options.tsx +5 -6
- package/src/components/table/sort-data.tsx +6 -4
- package/src/components/table/stateful-with-selection.tsx +15 -9
- package/src/components/table/stateful-with-single-selection.tsx +15 -9
- package/src/components/table/stateless-with-selection.tsx +12 -8
- package/src/components/table/stateless-with-settings-menu.tsx +0 -1
- package/src/components/table/stateless-with-single-selection.tsx +12 -8
- package/src/components/table/stateless.tsx +0 -1
- package/src/components/table/sticky-header.tsx +8 -8
- package/src/components/table/with-footer.tsx +6 -1
- package/src/components/table/with-pagination.tsx +3 -3
- package/src/components/toast/basic.tsx +4 -1
- package/src/components/toast/configurator.tsx +4 -1
- package/src/scenarios/button-shortkey-table.tsx +9 -5
- package/src/scenarios/focus-elements.tsx +1 -1
- package/src/scenarios/horizontal-scrollbar-advanced/TableHorizontalScrollbarAdvanced.tsx +5 -16
- package/src/shares/routes.ts +2 -1
- package/dist/assets/controller-DPZyCKru-CYw2yBXd.js +0 -2
- package/dist/assets/custom-class-Dg0c6ST7-CXkmqQxK.js +0 -2
- package/dist/assets/disabled-u5a_azlj-gg9juBlZ.js +0 -2
- package/dist/assets/has-closer-DENzUWH2-It8eNixk.js +0 -2
- package/dist/assets/has-closer-DENzUWH2-It8eNixk.js.map +0 -1
- package/dist/assets/hide-label-DjBQJOAP-1NZ7Zm1U.js +0 -2
- package/dist/assets/href-LHUCJ_IZ-D6afrRTu.js +0 -2
- package/dist/assets/href-LHUCJ_IZ-D6afrRTu.js.map +0 -1
- package/dist/assets/i18n-BgOmSzBT-Bm1C7fXF.js +0 -2
- package/dist/assets/image-source-DqpWx57w-CSNDjEmL.js +0 -2
- package/dist/assets/image-source-DqpWx57w-CSNDjEmL.js.map +0 -1
- package/dist/assets/index-DDaun4pg.js.map +0 -1
- package/dist/assets/index-e2pNbaT-.css +0 -1
- package/dist/assets/inline-CeKQgcde-CPyIcneb.js +0 -2
- package/dist/assets/inline-CeKQgcde-CPyIcneb.js.map +0 -1
- package/dist/assets/kol-button-wc.entry-Dhd5OkmU.js +0 -2
- package/dist/assets/kol-button-wc.entry-Dhd5OkmU.js.map +0 -1
- package/dist/assets/kol-card-wc.entry-BFAxSRxp.js +0 -2
- package/dist/assets/kol-card-wc.entry-BFAxSRxp.js.map +0 -1
- package/dist/assets/kol-combobox.entry-CWwBMArh.js +0 -386
- package/dist/assets/kol-combobox.entry-CWwBMArh.js.map +0 -1
- package/dist/assets/kol-icon.entry-Cac9-gOT.js.map +0 -1
- package/dist/assets/kol-input-color.entry-B1L4GK8l.js.map +0 -1
- package/dist/assets/kol-input-email.entry-Rh7NyzuK.js.map +0 -1
- package/dist/assets/kol-input-file.entry-CANVUev4.js.map +0 -1
- package/dist/assets/kol-input-number.entry-BcDwHWU2.js.map +0 -1
- package/dist/assets/kol-input-password.entry-Cx82ef6F.js.map +0 -1
- package/dist/assets/kol-input-range.entry-h_UQDk0G.js.map +0 -1
- package/dist/assets/kol-input-text.entry-Bo0Evq85.js.map +0 -1
- package/dist/assets/kol-link-wc.entry-BL0POur8.js +0 -2
- package/dist/assets/kol-link-wc.entry-BL0POur8.js.map +0 -1
- package/dist/assets/kol-modal.entry-Ifp1cuTj.js +0 -301
- package/dist/assets/kol-modal.entry-Ifp1cuTj.js.map +0 -1
- package/dist/assets/kol-nav.entry-Cw5atvaa.js.map +0 -1
- package/dist/assets/kol-popover-button-wc.entry-UMTx4f9A.js +0 -2
- package/dist/assets/kol-popover-button-wc.entry-UMTx4f9A.js.map +0 -1
- package/dist/assets/kol-popover-wc.entry-BAdeKqjb.js +0 -2
- package/dist/assets/kol-select-wc.entry-t5raptJL.js +0 -2
- package/dist/assets/kol-select-wc.entry-t5raptJL.js.map +0 -1
- package/dist/assets/kol-single-select.entry-YzT_1A3z.js +0 -396
- package/dist/assets/kol-single-select.entry-YzT_1A3z.js.map +0 -1
- package/dist/assets/kol-table-settings-wc.entry-CfKJ2h_H.js +0 -2
- package/dist/assets/kol-table-settings-wc.entry-CfKJ2h_H.js.map +0 -1
- package/dist/assets/kol-table-stateful.entry-DlqMRvC8.js.map +0 -1
- package/dist/assets/kol-table-stateless-wc.entry-CjeCNW_v.js +0 -2
- package/dist/assets/kol-table-stateless-wc.entry-CjeCNW_v.js.map +0 -1
- package/dist/assets/kol-textarea.entry-CLlKapqD.js.map +0 -1
- package/dist/assets/kol-tree-item-wc.entry-Dtatu8P3.js +0 -2
- package/dist/assets/kol-tree-item-wc.entry-Dtatu8P3.js.map +0 -1
- package/dist/assets/kol-tree-wc.entry-BTz3dkeE.js +0 -2
- package/dist/assets/kol-tree-wc.entry-BTz3dkeE.js.map +0 -1
- package/dist/assets/max-length-behavior-N5Lbz6E--D-GKzhk3.js +0 -2
- package/dist/assets/multiple-D1puaB9F-C5GuHiPx.js +0 -2
- package/dist/assets/multiple-D1puaB9F-C5GuHiPx.js.map +0 -1
- package/dist/assets/open-BFQWty8w-BUP-Ye2O.js +0 -2
- package/dist/assets/open-BFQWty8w-BUP-Ye2O.js.map +0 -1
- package/dist/assets/placeholder-DrgXYoah-YaV48hp7.js +0 -2
- package/dist/assets/read-only-Bp291veM-CxOiu37N.js +0 -2
- package/dist/assets/read-only-Bp291veM-CxOiu37N.js.map +0 -1
- package/dist/assets/required-7L0ytoMT-Cr7y-YPq.js +0 -2
- package/dist/assets/required-7L0ytoMT-Cr7y-YPq.js.map +0 -1
- package/dist/assets/rows-C8piLIWD-DiKJk2GY.js +0 -2
- package/dist/assets/rows-C8piLIWD-DiKJk2GY.js.map +0 -1
- package/dist/assets/show-ChfALFZd-B6doTL-b.js +0 -2
- package/dist/assets/show-ChfALFZd-B6doTL-b.js.map +0 -1
- package/dist/assets/spell-check-DrU5XI1o-Dumf_q2A.js +0 -2
- package/dist/assets/test-component.entry-CxfRDFAi.js +0 -2
- package/dist/assets/tooltip-align-DEw_M6Is-rBzNm_fp.js +0 -2
- package/dist/assets/tooltip-align-DEw_M6Is-rBzNm_fp.js.map +0 -1
- package/dist/assets/validation-BVeaxeev-BadtbEvG.js +0 -2
|
@@ -14,14 +14,37 @@ const DATA = [{ small: 'Small Example', large: 'Larger Example' }];
|
|
|
14
14
|
const HEADERS: KoliBriTableHeaders = {
|
|
15
15
|
horizontal: [
|
|
16
16
|
[
|
|
17
|
-
{ label: 'Small Column', key: 'small', textAlign: 'left', width:
|
|
18
|
-
{ label: 'Large Column', key: 'large', textAlign: 'left', width:
|
|
19
|
-
{ label: 'Larger Column', key: 'large', textAlign: 'left', width:
|
|
20
|
-
{ label: 'Larger Column', key: 'large', textAlign: 'left', width:
|
|
17
|
+
{ label: 'Small Column', key: 'small', textAlign: 'left', width: 200 },
|
|
18
|
+
{ label: 'Large Column', key: 'large', textAlign: 'left', width: 300 },
|
|
19
|
+
{ label: 'Larger Column', key: 'large', textAlign: 'left', width: 400 },
|
|
20
|
+
{ label: 'Larger Column', key: 'large', textAlign: 'left', width: 400 },
|
|
21
|
+
],
|
|
22
|
+
],
|
|
23
|
+
};
|
|
24
|
+
const COMPACT_HEADERS: KoliBriTableHeaders = {
|
|
25
|
+
horizontal: [
|
|
26
|
+
[
|
|
27
|
+
{ label: 'Small Column', key: 'small', textAlign: 'left', width: 160 },
|
|
28
|
+
{ label: 'Large Column', key: 'large', textAlign: 'left', width: 160 },
|
|
29
|
+
{ label: 'Larger Column', key: 'large', textAlign: 'left', width: 160 },
|
|
21
30
|
],
|
|
22
31
|
],
|
|
23
32
|
};
|
|
24
33
|
const genericNonSorter = () => 0;
|
|
34
|
+
const ORDER_HEADERS: KoliBriTableHeaders = {
|
|
35
|
+
horizontal: [
|
|
36
|
+
[
|
|
37
|
+
{ label: 'Order', key: 'order', width: 160 },
|
|
38
|
+
{
|
|
39
|
+
label: 'Date',
|
|
40
|
+
key: 'date',
|
|
41
|
+
width: 160,
|
|
42
|
+
compareFn: genericNonSorter,
|
|
43
|
+
render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as unknown as Data).date),
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
],
|
|
47
|
+
};
|
|
25
48
|
|
|
26
49
|
export const TableHorizontalScrollbar: FC = () => {
|
|
27
50
|
const [hasWidthRestriction, setHasWidthRestriction] = useState(true);
|
|
@@ -39,34 +62,14 @@ export const TableHorizontalScrollbar: FC = () => {
|
|
|
39
62
|
<div className="w-[400px] flex flex-col gap-4">
|
|
40
63
|
<KolTableStateful
|
|
41
64
|
_label="Table for demonstration purposes with horizontal scrollbar."
|
|
42
|
-
|
|
43
|
-
_headers={HEADERS}
|
|
65
|
+
_headers={hasWidthRestriction ? HEADERS : COMPACT_HEADERS}
|
|
44
66
|
_data={DATA}
|
|
45
67
|
className="block"
|
|
46
68
|
/>
|
|
69
|
+
<KolTableStateful _label="Table for demonstration horizontal scrolling with pagination." _headers={ORDER_HEADERS} _data={tableData} _pagination />
|
|
47
70
|
<KolTableStateful
|
|
48
|
-
_label="Table for demonstration horizontal
|
|
49
|
-
|
|
50
|
-
_headers={{
|
|
51
|
-
horizontal: [
|
|
52
|
-
[
|
|
53
|
-
{ label: 'Order', key: 'order' },
|
|
54
|
-
{
|
|
55
|
-
label: 'Date',
|
|
56
|
-
key: 'date',
|
|
57
|
-
compareFn: genericNonSorter,
|
|
58
|
-
render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as unknown as Data).date),
|
|
59
|
-
},
|
|
60
|
-
],
|
|
61
|
-
],
|
|
62
|
-
}}
|
|
63
|
-
_data={tableData}
|
|
64
|
-
_pagination
|
|
65
|
-
/>
|
|
66
|
-
<KolTableStateful
|
|
67
|
-
_label="Table for demonstration purposes with horizontal scrollbar with auto minWidth."
|
|
68
|
-
_minWidth={hasWidthRestriction ? '600px' : '300px'}
|
|
69
|
-
_headers={HEADERS}
|
|
71
|
+
_label="Table for demonstration purposes with horizontal scrollbar with auto width calculation."
|
|
72
|
+
_headers={hasWidthRestriction ? HEADERS : COMPACT_HEADERS}
|
|
70
73
|
_data={[]}
|
|
71
74
|
className="block"
|
|
72
75
|
/>
|
|
@@ -90,7 +93,6 @@ export const TableHorizontalScrollbar: FC = () => {
|
|
|
90
93
|
|
|
91
94
|
<KolTableStateful
|
|
92
95
|
_label="Table for demonstration purposes without horizontal scrollbar"
|
|
93
|
-
_minWidth="600px"
|
|
94
96
|
_headers={HEADERS}
|
|
95
97
|
_data={DATA}
|
|
96
98
|
className="block"
|
|
@@ -17,19 +17,22 @@ function KolButtonWrapper({ _on, ...other }: ButtonProps) {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
const getButtonHeaderCell = (variant: ButtonVariantPropType): KoliBriTableHeaderCell => {
|
|
20
|
-
const
|
|
20
|
+
const variantLabel = `${variant}`;
|
|
21
|
+
const capitalizedVariant = variantLabel.charAt(0).toUpperCase() + variantLabel.slice(1);
|
|
21
22
|
return {
|
|
22
23
|
label: capitalizedVariant,
|
|
23
|
-
key:
|
|
24
|
+
key: variantLabel,
|
|
24
25
|
textAlign: 'left',
|
|
26
|
+
width: 160,
|
|
25
27
|
render: (element: HTMLElement, cell: KoliBriTableCell) => {
|
|
28
|
+
const { label } = cell as { label: string };
|
|
26
29
|
const commonProps = {
|
|
27
30
|
_label: capitalizedVariant,
|
|
28
31
|
_variant: variant,
|
|
29
32
|
_icons: { right: 'kolicon-kolibri' },
|
|
30
33
|
};
|
|
31
34
|
getRoot(createReactRenderElement(element)).render(
|
|
32
|
-
|
|
35
|
+
label === 'button' ? <KolButtonWrapper {...commonProps} /> : <KolLinkButton _href="#/back-page" {...commonProps} />,
|
|
33
36
|
);
|
|
34
37
|
},
|
|
35
38
|
};
|
|
@@ -46,7 +49,6 @@ export const InteractiveChildElements: FC = () => (
|
|
|
46
49
|
<section className="w-full flex flex-col">
|
|
47
50
|
<KolTableStateless
|
|
48
51
|
_label="Button styles"
|
|
49
|
-
_minWidth="auto"
|
|
50
52
|
_headerCells={{
|
|
51
53
|
horizontal: [
|
|
52
54
|
[
|
|
@@ -57,7 +59,12 @@ export const InteractiveChildElements: FC = () => (
|
|
|
57
59
|
getButtonHeaderCell('ghost'),
|
|
58
60
|
],
|
|
59
61
|
],
|
|
60
|
-
vertical: [
|
|
62
|
+
vertical: [
|
|
63
|
+
[
|
|
64
|
+
{ label: 'Button', width: 120 },
|
|
65
|
+
{ label: 'Link-Button', width: 120 },
|
|
66
|
+
],
|
|
67
|
+
],
|
|
61
68
|
}}
|
|
62
69
|
_data={[
|
|
63
70
|
{
|
|
@@ -80,7 +87,6 @@ export const InteractiveChildElements: FC = () => (
|
|
|
80
87
|
|
|
81
88
|
<KolTableStateless
|
|
82
89
|
_label="Link styles"
|
|
83
|
-
_minWidth="auto"
|
|
84
90
|
_headerCells={{
|
|
85
91
|
horizontal: [
|
|
86
92
|
[
|
|
@@ -88,19 +94,26 @@ export const InteractiveChildElements: FC = () => (
|
|
|
88
94
|
key: 'regular',
|
|
89
95
|
label: 'Regular',
|
|
90
96
|
textAlign: 'left',
|
|
97
|
+
width: 180,
|
|
91
98
|
render: (element: HTMLElement, cell: KoliBriTableCell) => {
|
|
99
|
+
const { label } = cell as { label: string };
|
|
92
100
|
const commonProps = {
|
|
93
|
-
_label:
|
|
101
|
+
_label: label,
|
|
94
102
|
_icons: { right: 'kolicon-kolibri' },
|
|
95
103
|
};
|
|
96
104
|
getRoot(createReactRenderElement(element)).render(
|
|
97
|
-
|
|
105
|
+
label === 'button-link' ? <KolButtonLink {...commonProps} /> : <KolLink _href="#/back-page" {...commonProps} />,
|
|
98
106
|
);
|
|
99
107
|
},
|
|
100
108
|
},
|
|
101
109
|
],
|
|
102
110
|
],
|
|
103
|
-
vertical: [
|
|
111
|
+
vertical: [
|
|
112
|
+
[
|
|
113
|
+
{ label: 'Link', width: 140 },
|
|
114
|
+
{ label: 'Button-Link', width: 140 },
|
|
115
|
+
],
|
|
116
|
+
],
|
|
104
117
|
}}
|
|
105
118
|
_data={[
|
|
106
119
|
{
|
|
@@ -49,10 +49,12 @@ const BACKLOG_DATA: BacklogEntry[] = Array.from({ length: 15 }).map((_, index) =
|
|
|
49
49
|
status: STATUS_SEQUENCE[index % STATUS_SEQUENCE.length],
|
|
50
50
|
openTickets: (index * 3) % 11,
|
|
51
51
|
}));
|
|
52
|
+
|
|
52
53
|
const TABLE_HEADER_CELLS: KoliBriTableHeaderCellWithLogic[] = [
|
|
53
54
|
{
|
|
54
55
|
label: 'Assignee',
|
|
55
56
|
key: 'assignee',
|
|
57
|
+
|
|
56
58
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) =>
|
|
57
59
|
(data0 as BacklogEntry).assignee.localeCompare((data1 as BacklogEntry).assignee, 'de'),
|
|
58
60
|
sortDirection: 'ASC',
|
|
@@ -60,12 +62,14 @@ const TABLE_HEADER_CELLS: KoliBriTableHeaderCellWithLogic[] = [
|
|
|
60
62
|
{
|
|
61
63
|
label: 'Department',
|
|
62
64
|
key: 'department',
|
|
65
|
+
|
|
63
66
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) =>
|
|
64
67
|
(data0 as BacklogEntry).department.localeCompare((data1 as BacklogEntry).department, 'de'),
|
|
65
68
|
},
|
|
66
69
|
{
|
|
67
70
|
label: 'Priority',
|
|
68
71
|
key: 'priority',
|
|
72
|
+
|
|
69
73
|
textAlign: 'center',
|
|
70
74
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) =>
|
|
71
75
|
PRIORITY_ORDER[(data0 as BacklogEntry).priority] - PRIORITY_ORDER[(data1 as BacklogEntry).priority],
|
|
@@ -74,6 +78,7 @@ const TABLE_HEADER_CELLS: KoliBriTableHeaderCellWithLogic[] = [
|
|
|
74
78
|
{
|
|
75
79
|
label: 'Status',
|
|
76
80
|
key: 'status',
|
|
81
|
+
|
|
77
82
|
textAlign: 'center',
|
|
78
83
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) =>
|
|
79
84
|
STATUS_ORDER[(data0 as BacklogEntry).status] - STATUS_ORDER[(data1 as BacklogEntry).status],
|
|
@@ -81,12 +86,14 @@ const TABLE_HEADER_CELLS: KoliBriTableHeaderCellWithLogic[] = [
|
|
|
81
86
|
{
|
|
82
87
|
label: 'Open tickets',
|
|
83
88
|
key: 'openTickets',
|
|
89
|
+
|
|
84
90
|
textAlign: 'right',
|
|
85
91
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) => (data0 as BacklogEntry).openTickets - (data1 as BacklogEntry).openTickets,
|
|
86
92
|
},
|
|
87
93
|
{
|
|
88
94
|
label: 'Last updated',
|
|
89
95
|
key: 'date',
|
|
96
|
+
|
|
90
97
|
textAlign: 'center',
|
|
91
98
|
render: (_el, _cell, tuple) => DATE_FORMATTER.format((tuple as BacklogEntry).date),
|
|
92
99
|
compareFn: (data0: KoliBriTableDataType, data1: KoliBriTableDataType) => {
|
|
@@ -123,7 +130,6 @@ export const MultiSortTable: FC = () => {
|
|
|
123
130
|
<KolButtonLink _label="Reset Table" _on={{ onClick: () => setVerticalHeader({ vertical: [[...TABLE_HEADER_CELLS]] }) }}></KolButtonLink>
|
|
124
131
|
<KolTableStateful
|
|
125
132
|
_label="Sort Table with Order and Date"
|
|
126
|
-
_minWidth="auto"
|
|
127
133
|
_data={BACKLOG_DATA.slice(0, 10)}
|
|
128
134
|
_headers={verticallHeader}
|
|
129
135
|
className="block"
|
|
@@ -133,14 +139,7 @@ export const MultiSortTable: FC = () => {
|
|
|
133
139
|
<section className="grid gap-4">
|
|
134
140
|
<KolHeading _level={2} _label="Horizontal" />
|
|
135
141
|
<KolButtonLink _label="Reset Table" _on={{ onClick: () => setHorizontalHeader({ horizontal: [[...TABLE_HEADER_CELLS]] }) }}></KolButtonLink>
|
|
136
|
-
<KolTableStateful
|
|
137
|
-
_label="Sort Table with Order and Date"
|
|
138
|
-
_minWidth="auto"
|
|
139
|
-
_data={BACKLOG_DATA}
|
|
140
|
-
_headers={horizontalHeader}
|
|
141
|
-
className="block"
|
|
142
|
-
_allowMultiSort={true}
|
|
143
|
-
/>
|
|
142
|
+
<KolTableStateful _label="Sort Table with Order and Date" _data={BACKLOG_DATA} _headers={horizontalHeader} className="block" _allowMultiSort={true} />
|
|
144
143
|
</section>
|
|
145
144
|
</section>
|
|
146
145
|
</>
|
|
@@ -16,14 +16,13 @@ export const TableNonHidableColumns: FC = () => (
|
|
|
16
16
|
|
|
17
17
|
<KolTableStateful
|
|
18
18
|
_label="Table with a non-hidable column"
|
|
19
|
-
_minWidth="auto"
|
|
20
19
|
_hasSettingsMenu
|
|
21
20
|
_headers={{
|
|
22
21
|
horizontal: [
|
|
23
22
|
[
|
|
24
|
-
{ key: 'id', label: 'ID', hidable: false },
|
|
25
|
-
{ key: 'name', label: 'Name' },
|
|
26
|
-
{ key: 'age', label: 'Age' },
|
|
23
|
+
{ key: 'id', label: 'ID', hidable: false, width: 160 },
|
|
24
|
+
{ key: 'name', label: 'Name', width: 160 },
|
|
25
|
+
{ key: 'age', label: 'Age', width: 160 },
|
|
27
26
|
],
|
|
28
27
|
],
|
|
29
28
|
}}
|
|
@@ -13,8 +13,8 @@ import type { KoliBriTableHeaders, KoliBriTablePaginationProps } from '@public-u
|
|
|
13
13
|
const HEADERS: KoliBriTableHeaders = {
|
|
14
14
|
horizontal: [
|
|
15
15
|
[
|
|
16
|
-
{ label: 'Order', key: 'order' },
|
|
17
|
-
{ label: 'Date', key: 'date', render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as unknown as Data).date) },
|
|
16
|
+
{ label: 'Order', key: 'order', width: 160 },
|
|
17
|
+
{ label: 'Date', key: 'date', width: 160, render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as unknown as Data).date) },
|
|
18
18
|
],
|
|
19
19
|
],
|
|
20
20
|
};
|
|
@@ -31,7 +31,6 @@ export const PaginationPosition: FC = () => (
|
|
|
31
31
|
<KolHeading _level={2} _label="Table with pagination at the bottom."></KolHeading>
|
|
32
32
|
<KolTableStateful
|
|
33
33
|
_label="Sample table with pagination at the bottom"
|
|
34
|
-
_minWidth="auto"
|
|
35
34
|
_data={DATA}
|
|
36
35
|
_headers={HEADERS}
|
|
37
36
|
_pagination={PAGINATION}
|
|
@@ -42,7 +41,6 @@ export const PaginationPosition: FC = () => (
|
|
|
42
41
|
<KolHeading _level={2} _label="Table with pagination at the top."></KolHeading>
|
|
43
42
|
<KolTableStateful
|
|
44
43
|
_label="Sample table with pagination at the top"
|
|
45
|
-
_minWidth="auto"
|
|
46
44
|
_data={DATA}
|
|
47
45
|
_headers={HEADERS}
|
|
48
46
|
_pagination={PAGINATION}
|
|
@@ -53,7 +51,6 @@ export const PaginationPosition: FC = () => (
|
|
|
53
51
|
<KolHeading _level={2} _label="Table with pagination at both top and bottom."></KolHeading>
|
|
54
52
|
<KolTableStateful
|
|
55
53
|
_label="Sample table with pagination at both top and bottom"
|
|
56
|
-
_minWidth="auto"
|
|
57
54
|
_data={DATA}
|
|
58
55
|
_headers={HEADERS}
|
|
59
56
|
_pagination={PAGINATION}
|
|
@@ -18,14 +18,13 @@ export const PredefinedSettings: FC = () => {
|
|
|
18
18
|
_headers={{
|
|
19
19
|
horizontal: [
|
|
20
20
|
[
|
|
21
|
-
{ key: 'columnC', visible: true, label: 'Column C', width:
|
|
22
|
-
{ key: 'columnB', visible: true, label: 'Column B', width:
|
|
23
|
-
{ key: 'columnA', visible: false, label: 'Column A' },
|
|
21
|
+
{ key: 'columnC', visible: true, label: 'Column C', width: 450 },
|
|
22
|
+
{ key: 'columnB', visible: true, label: 'Column B', width: 200 },
|
|
23
|
+
{ key: 'columnA', visible: false, label: 'Column A', width: 160 },
|
|
24
24
|
],
|
|
25
25
|
],
|
|
26
26
|
}}
|
|
27
27
|
_data={DATA}
|
|
28
|
-
_minWidth="500px"
|
|
29
28
|
className="block"
|
|
30
29
|
style={{ maxWidth: '600px' }}
|
|
31
30
|
/>
|
|
@@ -7,7 +7,7 @@ import { getRoot } from '../../shares/react-roots';
|
|
|
7
7
|
import { SampleDescription } from '../SampleDescription';
|
|
8
8
|
import { DATE_FORMATTER } from './formatter';
|
|
9
9
|
|
|
10
|
-
import type { IconsPropType, KoliBriTableHeaders } from '@public-ui/components';
|
|
10
|
+
import type { IconsPropType, KoliBriTableCell, KoliBriTableHeaders } from '@public-ui/components';
|
|
11
11
|
import { useToasterService } from '../../hooks/useToasterService';
|
|
12
12
|
|
|
13
13
|
type Data = {
|
|
@@ -50,41 +50,47 @@ const HEADERS: KoliBriTableHeaders = {
|
|
|
50
50
|
label: '#',
|
|
51
51
|
key: 'order',
|
|
52
52
|
textAlign: 'center',
|
|
53
|
-
width:
|
|
53
|
+
width: 100,
|
|
54
54
|
|
|
55
55
|
/* Example 1: Use render return value to format data */
|
|
56
|
-
render: (_el, cell) =>
|
|
56
|
+
render: (_el, cell: KoliBriTableCell) => {
|
|
57
|
+
const { label } = cell as { label: string };
|
|
58
|
+
return `Index: ${label}`;
|
|
59
|
+
},
|
|
57
60
|
},
|
|
58
61
|
{
|
|
59
62
|
label: 'Status',
|
|
60
63
|
key: 'shipped',
|
|
61
64
|
textAlign: 'center',
|
|
62
|
-
width:
|
|
65
|
+
width: 100,
|
|
63
66
|
|
|
64
67
|
/* Example 2: Simple render function using textContent */
|
|
65
|
-
render: (el, cell) => {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
+
render: (el, cell: KoliBriTableCell) => {
|
|
69
|
+
const { label } = cell as { label: string };
|
|
70
|
+
const element = el as HTMLElement;
|
|
71
|
+
if (label) {
|
|
72
|
+
element.textContent = `Order has been dispatched 🚚`;
|
|
68
73
|
} else {
|
|
69
|
-
|
|
74
|
+
element.textContent = `Order pending 📦`;
|
|
70
75
|
}
|
|
71
76
|
},
|
|
72
77
|
},
|
|
73
78
|
{
|
|
74
79
|
label: 'Date (string)',
|
|
75
80
|
key: 'date',
|
|
76
|
-
width:
|
|
81
|
+
width: 200,
|
|
77
82
|
textAlign: 'center',
|
|
78
83
|
|
|
79
84
|
/* Example 3: Render function using innerHTML. ⚠️Make sure to sanitize data to avoid XSS. */
|
|
80
|
-
render: (el, cell) => {
|
|
81
|
-
|
|
85
|
+
render: (el, cell: KoliBriTableCell) => {
|
|
86
|
+
const { label } = cell as { label: string };
|
|
87
|
+
(el as HTMLElement).innerHTML = `<strong>${DATE_FORMATTER.format(label as unknown as Date)}</strong>`;
|
|
82
88
|
},
|
|
83
89
|
compareFn: (data0, data1) => (data0 as Data).date.getTime() - (data1 as Data).date.getTime(),
|
|
84
90
|
},
|
|
85
91
|
{
|
|
86
92
|
label: 'Action (react)',
|
|
87
|
-
width:
|
|
93
|
+
width: 200,
|
|
88
94
|
|
|
89
95
|
/* Example 4: Render function using React */
|
|
90
96
|
render: (el) => {
|
|
@@ -114,6 +120,6 @@ export const TableRenderCell: FC = () => (
|
|
|
114
120
|
<p>This sample shows KolTableStateful using React render functions for the cell contents.</p>
|
|
115
121
|
</SampleDescription>
|
|
116
122
|
|
|
117
|
-
<KolTableStateful _label="Sort by date column"
|
|
123
|
+
<KolTableStateful _label="Sort by date column" _data={DATA} _headers={HEADERS} className="w-full" />
|
|
118
124
|
</>
|
|
119
125
|
);
|
|
@@ -28,16 +28,15 @@ export const TableSettingsColumnOptions: FC = () => (
|
|
|
28
28
|
|
|
29
29
|
<KolTableStateful
|
|
30
30
|
_label="Table with column option restrictions"
|
|
31
|
-
_minWidth="auto"
|
|
32
31
|
_hasSettingsMenu
|
|
33
32
|
_headers={{
|
|
34
33
|
horizontal: [
|
|
35
34
|
[
|
|
36
|
-
{ key: 'id', label: 'ID', hidable: false, sortable: false, visible: true, width:
|
|
37
|
-
{ key: 'name', label: 'Name', visible: true, width:
|
|
38
|
-
{ key: 'team', label: 'Team', sortable: false, visible: true, width:
|
|
39
|
-
{ key: 'email', label: 'E-Mail', resizable: false, visible: true, width:
|
|
40
|
-
{ key: 'status', label: 'Status', hidable: false, resizable: false, visible: true, width:
|
|
35
|
+
{ key: 'id', label: 'ID', hidable: false, sortable: false, visible: true, width: 240 },
|
|
36
|
+
{ key: 'name', label: 'Name', visible: true, width: 480 },
|
|
37
|
+
{ key: 'team', label: 'Team', sortable: false, visible: true, width: 320 },
|
|
38
|
+
{ key: 'email', label: 'E-Mail', resizable: false, visible: true, width: 400 },
|
|
39
|
+
{ key: 'status', label: 'Status', hidable: false, resizable: false, visible: true, width: 160 },
|
|
41
40
|
],
|
|
42
41
|
],
|
|
43
42
|
}}
|
|
@@ -25,11 +25,12 @@ const compareByDate =
|
|
|
25
25
|
const HEADERS_HORIZONTAL: KoliBriTableHeaders = {
|
|
26
26
|
horizontal: [
|
|
27
27
|
[
|
|
28
|
-
{ label: 'order', key: 'order', textAlign: 'center' },
|
|
28
|
+
{ label: 'order', key: 'order', textAlign: 'center', width: 160 },
|
|
29
29
|
{
|
|
30
30
|
label: 'date',
|
|
31
31
|
key: 'date',
|
|
32
32
|
textAlign: 'center',
|
|
33
|
+
width: 160,
|
|
33
34
|
render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as Data).date),
|
|
34
35
|
compareFn: (data0, data1, direction) => compareByDate(direction)(data0, data1),
|
|
35
36
|
},
|
|
@@ -40,11 +41,12 @@ const HEADERS_HORIZONTAL: KoliBriTableHeaders = {
|
|
|
40
41
|
const HEADERS_VERTICAL: KoliBriTableHeaders = {
|
|
41
42
|
vertical: [
|
|
42
43
|
[
|
|
43
|
-
{ label: 'order', key: 'order', textAlign: 'center' },
|
|
44
|
+
{ label: 'order', key: 'order', textAlign: 'center', width: 160 },
|
|
44
45
|
{
|
|
45
46
|
label: 'date',
|
|
46
47
|
key: 'date',
|
|
47
48
|
textAlign: 'center',
|
|
49
|
+
width: 160,
|
|
48
50
|
render: (_el, _cell, tupel) => DATE_FORMATTER.format((tupel as Data).date),
|
|
49
51
|
compareFn: (data0, data1, direction) => compareByDate(direction)(data0, data1),
|
|
50
52
|
},
|
|
@@ -61,11 +63,11 @@ export const TableSortData: FC = () => (
|
|
|
61
63
|
<section className="w-full grid gap-4">
|
|
62
64
|
<section className="grid gap-4">
|
|
63
65
|
<KolHeading _level={2} _label="Vertical headers" />
|
|
64
|
-
<KolTableStateful _label="Sort a date column"
|
|
66
|
+
<KolTableStateful _label="Sort a date column" _data={DATA.slice(0, 10)} _headers={HEADERS_VERTICAL} className="block" />
|
|
65
67
|
</section>
|
|
66
68
|
<section className="grid gap-4">
|
|
67
69
|
<KolHeading _level={2} _label="Horizontal headers" />
|
|
68
|
-
<KolTableStateful _label="Sort a date column"
|
|
70
|
+
<KolTableStateful _label="Sort a date column" _data={DATA} _headers={HEADERS_HORIZONTAL} className="block" />
|
|
69
71
|
</section>
|
|
70
72
|
</section>
|
|
71
73
|
</>
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { KoliBriTableCell, KoliBriTableDataType, KoliBriTableSelection } from '@public-ui/components';
|
|
2
|
-
import { KolEvent } from '@public-ui/components';
|
|
3
2
|
import { createReactRenderElement, KolButton, KolTableStateful } from '@public-ui/react-v19';
|
|
4
3
|
import type { FC } from 'react';
|
|
5
4
|
import React, { useEffect, useRef, useState } from 'react';
|
|
@@ -14,6 +13,11 @@ const DATA = [
|
|
|
14
13
|
{ id: '1004', name: 'This row is always checked', internalIdentifier: `AAA1004` },
|
|
15
14
|
];
|
|
16
15
|
type Data = (typeof DATA)[0];
|
|
16
|
+
type KolTableStatefulElement = {
|
|
17
|
+
addEventListener: (type: string, listener: (event: CustomEvent<Data[]>) => void) => void;
|
|
18
|
+
removeEventListener: (type: string, listener: (event: CustomEvent<Data[]>) => void) => void;
|
|
19
|
+
getSelection?: () => Promise<KoliBriTableDataType[] | null>;
|
|
20
|
+
};
|
|
17
21
|
|
|
18
22
|
function KolButtonWrapper({ label }: { label: string }) {
|
|
19
23
|
const { dummyClickEventHandler } = useToasterService();
|
|
@@ -37,7 +41,7 @@ export const TableStatefulWithSelection: FC = () => {
|
|
|
37
41
|
|
|
38
42
|
const kolTableStatefulRef = useRef<HTMLKolTableStatefulElement>(null);
|
|
39
43
|
|
|
40
|
-
const handleSelectionChangeEvent = ({ detail: selection }:
|
|
44
|
+
const handleSelectionChangeEvent = ({ detail: selection }: CustomEvent<Data[]>) => {
|
|
41
45
|
console.log('Selection change via event', selection);
|
|
42
46
|
};
|
|
43
47
|
const handleSelectionChangeCallback = (_event: Event, selection: KoliBriTableDataType[] | null) => {
|
|
@@ -45,22 +49,25 @@ export const TableStatefulWithSelection: FC = () => {
|
|
|
45
49
|
};
|
|
46
50
|
|
|
47
51
|
const handleButtonClick = async () => {
|
|
48
|
-
const
|
|
52
|
+
const tableElement = kolTableStatefulRef.current as unknown as KolTableStatefulElement | null;
|
|
53
|
+
const selection = await tableElement?.getSelection?.();
|
|
49
54
|
setSelectedValue(selection as Data[] | null);
|
|
50
55
|
};
|
|
51
56
|
|
|
52
57
|
useEffect(() => {
|
|
53
|
-
|
|
54
|
-
|
|
58
|
+
const tableElement = kolTableStatefulRef.current as unknown as KolTableStatefulElement | null;
|
|
59
|
+
const selectionChangeEvent = 'kolSelectionChange';
|
|
60
|
+
tableElement?.addEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
55
61
|
|
|
56
62
|
return () => {
|
|
57
|
-
|
|
58
|
-
kolTableStatefulRef.current?.removeEventListener(KolEvent.selectionChange, handleSelectionChangeEvent);
|
|
63
|
+
tableElement?.removeEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
59
64
|
};
|
|
60
65
|
}, [kolTableStatefulRef]);
|
|
61
66
|
|
|
62
67
|
const renderButton = (element: HTMLElement, cell: KoliBriTableCell) => {
|
|
63
|
-
|
|
68
|
+
const data = (cell as { data?: Data }).data;
|
|
69
|
+
const id = data?.id;
|
|
70
|
+
getRoot(createReactRenderElement(element)).render(<KolButtonWrapper label={`Click ${id}`} />);
|
|
64
71
|
};
|
|
65
72
|
|
|
66
73
|
return (
|
|
@@ -72,7 +79,6 @@ export const TableStatefulWithSelection: FC = () => {
|
|
|
72
79
|
<section className="w-full">
|
|
73
80
|
<KolTableStateful
|
|
74
81
|
_label="Table with selection checkboxes"
|
|
75
|
-
_minWidth="auto"
|
|
76
82
|
_headers={{
|
|
77
83
|
horizontal: [
|
|
78
84
|
[
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { KoliBriTableCell, KoliBriTableDataType, KoliBriTableSelection } from '@public-ui/components';
|
|
2
|
-
import { KolEvent } from '@public-ui/components';
|
|
3
2
|
import { createReactRenderElement, KolButton, KolTableStateful } from '@public-ui/react-v19';
|
|
4
3
|
import type { FC } from 'react';
|
|
5
4
|
import React, { useEffect, useRef, useState } from 'react';
|
|
@@ -13,6 +12,11 @@ const DATA = [
|
|
|
13
12
|
];
|
|
14
13
|
|
|
15
14
|
type Data = (typeof DATA)[0];
|
|
15
|
+
type KolTableStatefulElement = {
|
|
16
|
+
addEventListener: (type: string, listener: (event: CustomEvent<Data[]>) => void) => void;
|
|
17
|
+
removeEventListener: (type: string, listener: (event: CustomEvent<Data[]>) => void) => void;
|
|
18
|
+
getSelection?: () => Promise<KoliBriTableDataType[] | null>;
|
|
19
|
+
};
|
|
16
20
|
|
|
17
21
|
function KolButtonWrapper({ label }: { label: string }) {
|
|
18
22
|
const { dummyClickEventHandler } = useToasterService();
|
|
@@ -36,7 +40,7 @@ export const TableStatefulWithSingleSelection: FC = () => {
|
|
|
36
40
|
|
|
37
41
|
const kolTableStatefulRef = useRef<HTMLKolTableStatefulElement>(null);
|
|
38
42
|
|
|
39
|
-
const handleSelectionChangeEvent = ({ detail: selection }:
|
|
43
|
+
const handleSelectionChangeEvent = ({ detail: selection }: CustomEvent<Data[]>) => {
|
|
40
44
|
console.log('Selection change via event', selection);
|
|
41
45
|
};
|
|
42
46
|
const handleSelectionChangeCallback = (_event: Event, selection: KoliBriTableDataType[] | null) => {
|
|
@@ -44,22 +48,25 @@ export const TableStatefulWithSingleSelection: FC = () => {
|
|
|
44
48
|
};
|
|
45
49
|
|
|
46
50
|
const handleButtonClick = async () => {
|
|
47
|
-
const
|
|
51
|
+
const tableElement = kolTableStatefulRef.current as unknown as KolTableStatefulElement | null;
|
|
52
|
+
const selection = await tableElement?.getSelection?.();
|
|
48
53
|
setSelectedValue(selection as Data | null);
|
|
49
54
|
};
|
|
50
55
|
|
|
51
56
|
useEffect(() => {
|
|
52
|
-
|
|
53
|
-
|
|
57
|
+
const tableElement = kolTableStatefulRef.current as unknown as KolTableStatefulElement | null;
|
|
58
|
+
const selectionChangeEvent = 'kolSelectionChange';
|
|
59
|
+
tableElement?.addEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
54
60
|
|
|
55
61
|
return () => {
|
|
56
|
-
|
|
57
|
-
kolTableStatefulRef.current?.removeEventListener(KolEvent.selectionChange, handleSelectionChangeEvent);
|
|
62
|
+
tableElement?.removeEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
58
63
|
};
|
|
59
64
|
}, [kolTableStatefulRef]);
|
|
60
65
|
|
|
61
66
|
const renderButton = (element: HTMLElement, cell: KoliBriTableCell) => {
|
|
62
|
-
|
|
67
|
+
const data = (cell as { data?: Data }).data;
|
|
68
|
+
const id = data?.id;
|
|
69
|
+
getRoot(createReactRenderElement(element)).render(<KolButtonWrapper label={`Click ${id}`} />);
|
|
63
70
|
};
|
|
64
71
|
|
|
65
72
|
return (
|
|
@@ -71,7 +78,6 @@ export const TableStatefulWithSingleSelection: FC = () => {
|
|
|
71
78
|
<section className="w-full">
|
|
72
79
|
<KolTableStateful
|
|
73
80
|
_label="Table with selection radio"
|
|
74
|
-
_minWidth="auto"
|
|
75
81
|
_headers={{
|
|
76
82
|
horizontal: [
|
|
77
83
|
[
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { KoliBriTableCell, KoliBriTableSelection, KoliBriTableSelectionKeys } from '@public-ui/components';
|
|
2
|
-
import { KolEvent } from '@public-ui/components';
|
|
3
2
|
import { createReactRenderElement, KolButton, KolTableStateless } from '@public-ui/react-v19';
|
|
4
3
|
import type { FC } from 'react';
|
|
5
4
|
import React, { useEffect, useRef, useState } from 'react';
|
|
@@ -8,6 +7,10 @@ import { getRoot } from '../../shares/react-roots';
|
|
|
8
7
|
import { SampleDescription } from '../SampleDescription';
|
|
9
8
|
|
|
10
9
|
type SelectionValue = string | number;
|
|
10
|
+
type KolTableStatelessElement = {
|
|
11
|
+
addEventListener: (type: string, listener: (event: CustomEvent<SelectionValue[]>) => void) => void;
|
|
12
|
+
removeEventListener: (type: string, listener: (event: CustomEvent<SelectionValue[]>) => void) => void;
|
|
13
|
+
};
|
|
11
14
|
|
|
12
15
|
const DATA = [
|
|
13
16
|
{ id: '1001', name: 'Foo Bar', internalIdentifier: `AAA1001` },
|
|
@@ -39,7 +42,7 @@ export const TableStatelessWithSelection: FC = () => {
|
|
|
39
42
|
|
|
40
43
|
const kolTableStatelessRef = useRef<HTMLKolTableStatelessElement>(null);
|
|
41
44
|
|
|
42
|
-
const handleSelectionChangeEvent = ({ detail: selection }:
|
|
45
|
+
const handleSelectionChangeEvent = ({ detail: selection }: CustomEvent<SelectionValue[]>) => {
|
|
43
46
|
console.log('Selection change via event', selection);
|
|
44
47
|
};
|
|
45
48
|
const handleSelectionChangeCallback = (_event: Event, selection: SelectionValue[]) => {
|
|
@@ -48,17 +51,19 @@ export const TableStatelessWithSelection: FC = () => {
|
|
|
48
51
|
};
|
|
49
52
|
|
|
50
53
|
useEffect(() => {
|
|
51
|
-
|
|
52
|
-
|
|
54
|
+
const tableElement = kolTableStatelessRef.current as unknown as KolTableStatelessElement | null;
|
|
55
|
+
const selectionChangeEvent = 'kolSelectionChange';
|
|
56
|
+
tableElement?.addEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
53
57
|
|
|
54
58
|
return () => {
|
|
55
|
-
|
|
56
|
-
kolTableStatelessRef.current?.removeEventListener(KolEvent.selectionChange, handleSelectionChangeEvent);
|
|
59
|
+
tableElement?.removeEventListener(selectionChangeEvent, handleSelectionChangeEvent);
|
|
57
60
|
};
|
|
58
61
|
}, [kolTableStatelessRef]);
|
|
59
62
|
|
|
60
63
|
const renderButton = (element: HTMLElement, cell: KoliBriTableCell) => {
|
|
61
|
-
|
|
64
|
+
const data = (cell as { data?: Data }).data;
|
|
65
|
+
const id = data?.id;
|
|
66
|
+
getRoot(createReactRenderElement(element)).render(<KolButtonWrapper label={`Click ${id}`} />);
|
|
62
67
|
};
|
|
63
68
|
|
|
64
69
|
return (
|
|
@@ -70,7 +75,6 @@ export const TableStatelessWithSelection: FC = () => {
|
|
|
70
75
|
<section className="w-full">
|
|
71
76
|
<KolTableStateless
|
|
72
77
|
_label="Table with selection checkboxes"
|
|
73
|
-
_minWidth="auto"
|
|
74
78
|
_headerCells={{
|
|
75
79
|
horizontal: [
|
|
76
80
|
[
|