@skyscanner/backpack-web 29.3.0 → 29.4.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/bpk-component-button/src/BpkButtonLink.module.css +1 -1
- package/bpk-component-button/src/BpkButtonLinkOnDark.module.css +1 -1
- package/bpk-component-button/src/BpkButtonV2/BpkButton.module.css +1 -1
- package/bpk-component-card/src/BpkCard.js +13 -21
- package/bpk-component-card/src/BpkDividedCard.js +13 -17
- package/bpk-component-datatable/src/BpkDataTable.js +10 -3
- package/bpk-component-datatable/src/BpkDataTableColumn.js +1 -1
- package/bpk-component-datatable/src/utils.js +177 -82
- package/bpk-component-input/src/BpkClearButton.js +12 -16
- package/bpk-component-input/src/BpkInput.js +1 -4
- package/bpk-component-overlay/index.d.ts +0 -1
- package/bpk-component-overlay/index.js +3 -1
- package/bpk-mixins/src/mixins/_buttons.scss +0 -1
- package/bpk-mixins/src/mixins/_utils.scss +14 -0
- package/bpk-stylesheets/base.css +1 -1
- package/bpk-stylesheets/index.scss +4 -0
- package/package.json +2 -2
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
-
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button--link{
|
|
18
|
+
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button--link{background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link:active{background:none;color:#154679;text-decoration:none}.bpk-button--link:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-large{padding:.75rem 0}
|
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
-
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button--link-on-dark{
|
|
18
|
+
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button--link-on-dark{background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3;color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link-on-dark:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link-on-dark:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:active{background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-on-dark-large{padding:.75rem 0}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:active{color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-active-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:visited{color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-button--link-on-dark:disabled{color:rgba(255,255,255,0.2);color:var(--bpk-button-link-on-dark-disabled-color, rgba(255,255,255,0.2))}
|
|
@@ -15,4 +15,4 @@
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/
|
|
18
|
-
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button{display:inline-block;min-height:2.25rem;margin:0;padding:.375rem 1rem;border:0;border-radius:.5rem;text-align:center;text-decoration:none;cursor:pointer;vertical-align:middle;user-select:none;font-size:1rem;line-height:1.5rem;font-weight:700;color:#fff;color:var(--bpk-button-primary-text-color, #fff);background-color:#05203c;background-color:var(--bpk-button-primary-background-color, #05203c)}.bpk-no-touch-support .bpk-button:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-hover-background-color, #154679)}:global(.bpk-no-touch-support) .bpk-button:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-hover-background-color, #154679)}.bpk-button:active{color:#fff;color:var(--bpk-button-primary-active-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-active-background-color, #154679)}.bpk-button:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2);cursor:not-allowed}.bpk-button--large{min-height:3rem;padding:.75rem 1rem}.bpk-button--icon-only{border-radius:.5rem;padding-right:.625rem;padding-left:.625rem;border-radius:.5rem}.bpk-button--large-icon-only{border-radius:.5rem;padding-right:.75rem;padding-left:.75rem;border-radius:.5rem}.bpk-button--destructive{color:#161616;color:var(--bpk-button-secondary-text-color, #161616);background-color:#e0e3e5;background-color:var(--bpk-button-secondary-background-color, #e0e3e5);color:#c80456;color:var(--bpk-button-destructive-text-color, #c80456);background-color:#e0e3e5;background-color:var(--bpk-button-destructive-background-color, #e0e3e5)}.bpk-no-touch-support .bpk-button--destructive:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--destructive:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}.bpk-button--destructive:active{color:#161616;color:var(--bpk-button-secondary-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-active-background-color, #c2c9cd)}.bpk-button--destructive:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-no-touch-support .bpk-button--destructive:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-destructive-hover-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-hover-background-color, #c80456)}:global(.bpk-no-touch-support) .bpk-button--destructive:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-destructive-hover-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-hover-background-color, #c80456)}.bpk-button--destructive:active{color:#fff;color:var(--bpk-button-destructive-active-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-active-background-color, #c80456)}.bpk-button--destructive:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--featured{color:#fff;color:var(--bpk-button-featured-text-color, #fff);background-color:#0062e3;background-color:var(--bpk-button-featured-background-color, #0062e3)}.bpk-no-touch-support .bpk-button--featured:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-featured-hover-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-hover-background-color, #024daf)}:global(.bpk-no-touch-support) .bpk-button--featured:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-featured-hover-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-hover-background-color, #024daf)}.bpk-button--featured:active{color:#fff;color:var(--bpk-button-featured-active-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-active-background-color, #024daf)}.bpk-button--featured:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--link{border-radius:0;background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link:active{background:none;color:#154679;text-decoration:none}.bpk-button--link:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-large{padding:.75rem 0}.bpk-button--link-on-dark{border-radius:0;background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3;color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link-on-dark:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link-on-dark:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:active{background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-on-dark-large{padding:.75rem 0}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:active{color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-active-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:visited{color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-button--link-on-dark:disabled{color:rgba(255,255,255,0.2);color:var(--bpk-button-link-on-dark-disabled-color, rgba(255,255,255,0.2))}.bpk-button--primary-on-dark{color:#161616;color:var(--bpk-button-primary-on-dark-text-color, #161616);background-color:#fff;background-color:var(--bpk-button-primary-on-dark-background-color, #fff)}.bpk-no-touch-support .bpk-button--primary-on-dark:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-primary-on-dark-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--primary-on-dark:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-primary-on-dark-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-hover-background-color, #c2c9cd)}.bpk-button--primary-on-dark:active{color:#161616;color:var(--bpk-button-primary-on-dark-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-active-background-color, #c2c9cd)}.bpk-button--primary-on-dark:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--primary-on-light{color:#fff;color:var(--bpk-button-primary-on-light-text-color, #fff);background-color:#05203c;background-color:var(--bpk-button-primary-on-light-background-color, #05203c)}.bpk-no-touch-support .bpk-button--primary-on-light:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-on-light-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-hover-background-color, #154679)}:global(.bpk-no-touch-support) .bpk-button--primary-on-light:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-on-light-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-hover-background-color, #154679)}.bpk-button--primary-on-light:active{color:#fff;color:var(--bpk-button-primary-on-light-active-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-active-background-color, #154679)}.bpk-button--primary-on-light:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--secondary{color:#161616;color:var(--bpk-button-secondary-text-color, #161616);background-color:#e0e3e5;background-color:var(--bpk-button-secondary-background-color, #e0e3e5)}.bpk-no-touch-support .bpk-button--secondary:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--secondary:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}.bpk-button--secondary:active{color:#161616;color:var(--bpk-button-secondary-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-active-background-color, #c2c9cd)}.bpk-button--secondary:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--secondary-on-dark{color:#fff;color:var(--bpk-button-secondary-on-dark-text-color, #fff);background-color:#243346;background-color:var(--bpk-button-secondary-on-dark-background-color, #243346)}.bpk-no-touch-support .bpk-button--secondary-on-dark:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-secondary-on-dark-hover-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-hover-background-color, #010913)}:global(.bpk-no-touch-support) .bpk-button--secondary-on-dark:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-secondary-on-dark-hover-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-hover-background-color, #010913)}.bpk-button--secondary-on-dark:active{color:#fff;color:var(--bpk-button-secondary-on-dark-active-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-active-background-color, #010913)}.bpk-button--secondary-on-dark:disabled{background-color:#0b121d;color:rgba(255,255,255,0.2)}.bpk-button span>svg{display:block}.bpk-button svg{fill:currentcolor}
|
|
18
|
+
@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}.bpk-button{display:inline-block;min-height:2.25rem;margin:0;padding:.375rem 1rem;border:0;border-radius:.5rem;text-align:center;text-decoration:none;cursor:pointer;vertical-align:middle;user-select:none;font-size:1rem;line-height:1.5rem;font-weight:700;color:#fff;color:var(--bpk-button-primary-text-color, #fff);background-color:#05203c;background-color:var(--bpk-button-primary-background-color, #05203c)}.bpk-no-touch-support .bpk-button:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-hover-background-color, #154679)}:global(.bpk-no-touch-support) .bpk-button:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-hover-background-color, #154679)}.bpk-button:active{color:#fff;color:var(--bpk-button-primary-active-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-active-background-color, #154679)}.bpk-button:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2);cursor:not-allowed}.bpk-button--large{min-height:3rem;padding:.75rem 1rem}.bpk-button--icon-only{border-radius:.5rem;padding-right:.625rem;padding-left:.625rem;border-radius:.5rem}.bpk-button--large-icon-only{border-radius:.5rem;padding-right:.75rem;padding-left:.75rem;border-radius:.5rem}.bpk-button--destructive{color:#161616;color:var(--bpk-button-secondary-text-color, #161616);background-color:#e0e3e5;background-color:var(--bpk-button-secondary-background-color, #e0e3e5);color:#c80456;color:var(--bpk-button-destructive-text-color, #c80456);background-color:#e0e3e5;background-color:var(--bpk-button-destructive-background-color, #e0e3e5)}.bpk-no-touch-support .bpk-button--destructive:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--destructive:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}.bpk-button--destructive:active{color:#161616;color:var(--bpk-button-secondary-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-active-background-color, #c2c9cd)}.bpk-button--destructive:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-no-touch-support .bpk-button--destructive:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-destructive-hover-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-hover-background-color, #c80456)}:global(.bpk-no-touch-support) .bpk-button--destructive:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-destructive-hover-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-hover-background-color, #c80456)}.bpk-button--destructive:active{color:#fff;color:var(--bpk-button-destructive-active-text-color, #fff);background-color:#c80456;background-color:var(--bpk-button-destructive-active-background-color, #c80456)}.bpk-button--destructive:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--featured{color:#fff;color:var(--bpk-button-featured-text-color, #fff);background-color:#0062e3;background-color:var(--bpk-button-featured-background-color, #0062e3)}.bpk-no-touch-support .bpk-button--featured:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-featured-hover-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-hover-background-color, #024daf)}:global(.bpk-no-touch-support) .bpk-button--featured:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-featured-hover-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-hover-background-color, #024daf)}.bpk-button--featured:active{color:#fff;color:var(--bpk-button-featured-active-text-color, #fff);background-color:#024daf;background-color:var(--bpk-button-featured-active-background-color, #024daf)}.bpk-button--featured:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--link{background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link:active{background:none;color:#154679;text-decoration:none}.bpk-button--link:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-large{padding:.75rem 0}.bpk-button--link-on-dark{background:none;box-shadow:none;padding:0;border:0;background-color:transparent;text-decoration:none;cursor:pointer;appearance:none;color:#0062e3;color:var(--bpk-link-color, #0062e3);padding:.375rem 0;color:#0062e3;color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){text-decoration:underline;color:#0062e3;color:var(--bpk-link-hover-color, #0062e3)}.bpk-button--link-on-dark:visited{color:#0062e3;color:var(--bpk-link-visited-color, #0062e3)}.bpk-button--link-on-dark:active{text-decoration:underline;color:#0062e3;color:var(--bpk-link-active-color, #0062e3)}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:active{background:none;color:#154679;text-decoration:none}.bpk-button--link-on-dark:disabled{background:none;color:rgba(0,0,0,0.2);text-decoration:none}.bpk-button--link-on-dark-large{padding:.75rem 0}.bpk-no-touch-support .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}:global(.bpk-no-touch-support) .bpk-button--link-on-dark:hover:not(:active):not(:disabled){color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-hover-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:active{color:rgba(255,255,255,0.5);color:var(--bpk-button-link-on-dark-active-text-color, rgba(255,255,255,0.5))}.bpk-button--link-on-dark:visited{color:#fff;color:var(--bpk-button-link-on-dark-text-color, #fff)}.bpk-button--link-on-dark:disabled{color:rgba(255,255,255,0.2);color:var(--bpk-button-link-on-dark-disabled-color, rgba(255,255,255,0.2))}.bpk-button--primary-on-dark{color:#161616;color:var(--bpk-button-primary-on-dark-text-color, #161616);background-color:#fff;background-color:var(--bpk-button-primary-on-dark-background-color, #fff)}.bpk-no-touch-support .bpk-button--primary-on-dark:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-primary-on-dark-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--primary-on-dark:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-primary-on-dark-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-hover-background-color, #c2c9cd)}.bpk-button--primary-on-dark:active{color:#161616;color:var(--bpk-button-primary-on-dark-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-primary-on-dark-active-background-color, #c2c9cd)}.bpk-button--primary-on-dark:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--primary-on-light{color:#fff;color:var(--bpk-button-primary-on-light-text-color, #fff);background-color:#05203c;background-color:var(--bpk-button-primary-on-light-background-color, #05203c)}.bpk-no-touch-support .bpk-button--primary-on-light:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-on-light-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-hover-background-color, #154679)}:global(.bpk-no-touch-support) .bpk-button--primary-on-light:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-primary-on-light-hover-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-hover-background-color, #154679)}.bpk-button--primary-on-light:active{color:#fff;color:var(--bpk-button-primary-on-light-active-text-color, #fff);background-color:#154679;background-color:var(--bpk-button-primary-on-light-active-background-color, #154679)}.bpk-button--primary-on-light:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--secondary{color:#161616;color:var(--bpk-button-secondary-text-color, #161616);background-color:#e0e3e5;background-color:var(--bpk-button-secondary-background-color, #e0e3e5)}.bpk-no-touch-support .bpk-button--secondary:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}:global(.bpk-no-touch-support) .bpk-button--secondary:hover:not(:active):not(:disabled){color:#161616;color:var(--bpk-button-secondary-hover-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-hover-background-color, #c2c9cd)}.bpk-button--secondary:active{color:#161616;color:var(--bpk-button-secondary-active-text-color, #161616);background-color:#c2c9cd;background-color:var(--bpk-button-secondary-active-background-color, #c2c9cd)}.bpk-button--secondary:disabled{background-color:#e0e3e5;color:rgba(0,0,0,0.2)}.bpk-button--secondary-on-dark{color:#fff;color:var(--bpk-button-secondary-on-dark-text-color, #fff);background-color:#243346;background-color:var(--bpk-button-secondary-on-dark-background-color, #243346)}.bpk-no-touch-support .bpk-button--secondary-on-dark:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-secondary-on-dark-hover-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-hover-background-color, #010913)}:global(.bpk-no-touch-support) .bpk-button--secondary-on-dark:hover:not(:active):not(:disabled){color:#fff;color:var(--bpk-button-secondary-on-dark-hover-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-hover-background-color, #010913)}.bpk-button--secondary-on-dark:active{color:#fff;color:var(--bpk-button-secondary-on-dark-active-text-color, #fff);background-color:#010913;background-color:var(--bpk-button-secondary-on-dark-active-background-color, #010913)}.bpk-button--secondary-on-dark:disabled{background-color:#0b121d;color:rgba(255,255,255,0.2)}.bpk-button span>svg{display:block}.bpk-button svg{fill:currentcolor}
|
|
@@ -45,18 +45,14 @@ const BpkCard = ({
|
|
|
45
45
|
atomicProps.tabIndex = -1;
|
|
46
46
|
atomicProps.role = 'group';
|
|
47
47
|
}
|
|
48
|
-
return (
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
...rest,
|
|
57
|
-
children: children
|
|
58
|
-
})
|
|
59
|
-
);
|
|
48
|
+
return /*#__PURE__*/_jsx("a", {
|
|
49
|
+
href: href,
|
|
50
|
+
className: classNames,
|
|
51
|
+
...atomicProps,
|
|
52
|
+
...blankProps,
|
|
53
|
+
...rest,
|
|
54
|
+
children: children
|
|
55
|
+
});
|
|
60
56
|
}
|
|
61
57
|
if (atomic) {
|
|
62
58
|
return /*#__PURE__*/_jsx("button", {
|
|
@@ -66,14 +62,10 @@ const BpkCard = ({
|
|
|
66
62
|
children: children
|
|
67
63
|
});
|
|
68
64
|
}
|
|
69
|
-
return (
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
...rest,
|
|
75
|
-
children: children
|
|
76
|
-
})
|
|
77
|
-
);
|
|
65
|
+
return /*#__PURE__*/_jsx("div", {
|
|
66
|
+
className: classNames,
|
|
67
|
+
...rest,
|
|
68
|
+
children: children
|
|
69
|
+
});
|
|
78
70
|
};
|
|
79
71
|
export default BpkCard;
|
|
@@ -37,22 +37,18 @@ const BpkDividedCard = ({
|
|
|
37
37
|
}) => {
|
|
38
38
|
const isVertical = orientation === ORIENTATION.vertical;
|
|
39
39
|
const classNames = getClassName('bpk-divided-card', isVertical ? 'bpk-divided-card--vertical' : 'bpk-divided-card--horizontal', !isElevated && 'bpk-divided-card--no-elevation', className);
|
|
40
|
-
return (
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
children: secondaryContent
|
|
54
|
-
})]
|
|
55
|
-
})
|
|
56
|
-
);
|
|
40
|
+
return /*#__PURE__*/_jsxs(BpkCard, {
|
|
41
|
+
className: classNames,
|
|
42
|
+
href: href,
|
|
43
|
+
padded: false,
|
|
44
|
+
...rest,
|
|
45
|
+
children: [/*#__PURE__*/_jsx("div", {
|
|
46
|
+
className: getClassName(!isVertical && 'bpk-divided-card__primary--horizontal'),
|
|
47
|
+
children: primaryContent
|
|
48
|
+
}), /*#__PURE__*/_jsx("div", {
|
|
49
|
+
className: getClassName(isVertical ? 'bpk-divided-card__secondary--vertical' : 'bpk-divided-card__secondary--horizontal'),
|
|
50
|
+
children: secondaryContent
|
|
51
|
+
})]
|
|
52
|
+
});
|
|
57
53
|
};
|
|
58
54
|
export default BpkDividedCard;
|
|
@@ -21,7 +21,7 @@ import { cssModules } from "../../bpk-react-utils";
|
|
|
21
21
|
import STYLES from "./BpkDataTable.module.css";
|
|
22
22
|
import { SORT_DIRECTION_TYPES } from "./sort-types";
|
|
23
23
|
import BpkDataTableHeader from "./BpkDataTableHeader";
|
|
24
|
-
import { pxToRem, getColumns } from "./utils";
|
|
24
|
+
import { pxToRem, getColumns, createColumnsSchema } from "./utils";
|
|
25
25
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
26
26
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
27
27
|
const getClassName = cssModules(STYLES);
|
|
@@ -33,6 +33,7 @@ const BpkDataTable = props => {
|
|
|
33
33
|
const {
|
|
34
34
|
children,
|
|
35
35
|
className,
|
|
36
|
+
columns: columnsData,
|
|
36
37
|
defaultColumnSortIndex,
|
|
37
38
|
headerClassName,
|
|
38
39
|
headerHeight,
|
|
@@ -41,7 +42,7 @@ const BpkDataTable = props => {
|
|
|
41
42
|
rowClassName,
|
|
42
43
|
rowHeight,
|
|
43
44
|
rowStyle,
|
|
44
|
-
rows:
|
|
45
|
+
rows: rowsData,
|
|
45
46
|
sort,
|
|
46
47
|
sortBy,
|
|
47
48
|
sortDirection,
|
|
@@ -57,7 +58,13 @@ const BpkDataTable = props => {
|
|
|
57
58
|
return rowClassNames;
|
|
58
59
|
};
|
|
59
60
|
const headerClassNames = getClassName('bpk-data-table__row', 'bpk-data-table__header-row', headerClassName);
|
|
60
|
-
const columns = useMemo(() =>
|
|
61
|
+
const columns = useMemo(() => {
|
|
62
|
+
if (columnsData) {
|
|
63
|
+
return createColumnsSchema(columnsData);
|
|
64
|
+
}
|
|
65
|
+
return getColumns(children);
|
|
66
|
+
}, [children, columnsData]);
|
|
67
|
+
const data = useMemo(() => rowsData, [rowsData]);
|
|
61
68
|
const {
|
|
62
69
|
getTableBodyProps,
|
|
63
70
|
getTableProps,
|
|
@@ -25,7 +25,7 @@ const BpkDataTableColumn = props => /*#__PURE__*/_jsx("div", {
|
|
|
25
25
|
});
|
|
26
26
|
BpkDataTableColumn.propTypes = {
|
|
27
27
|
dataKey: PropTypes.string.isRequired,
|
|
28
|
-
width: PropTypes.number.isRequired,
|
|
28
|
+
width: PropTypes.oneOfType([PropTypes.number, PropTypes.string]).isRequired,
|
|
29
29
|
className: PropTypes.string,
|
|
30
30
|
disableSort: PropTypes.bool,
|
|
31
31
|
defaultSortDirection: PropTypes.oneOf(Object.keys(SORT_DIRECTION_TYPES)),
|
|
@@ -15,6 +15,12 @@
|
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
17
|
*/const ROOT_FONT_SIZE_PX = 16;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @param {String|Number} value width or height of data table or its columns, or rows
|
|
22
|
+
* @returns {String} the value in rem
|
|
23
|
+
*/
|
|
18
24
|
export const pxToRem = value => {
|
|
19
25
|
let parsed = value;
|
|
20
26
|
if (typeof value === 'number' || typeof value === 'string' && value.includes('px')) {
|
|
@@ -23,90 +29,179 @@ export const pxToRem = value => {
|
|
|
23
29
|
}
|
|
24
30
|
return parsed;
|
|
25
31
|
};
|
|
26
|
-
// TODO: Remove this function once we want to change the API to match the react-table library API
|
|
27
|
-
// To maintain backwards compatibility with the old API of BpkDataTable which takes columns as children
|
|
28
|
-
// The `react-table` library however expects columns as an array of objects
|
|
29
32
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
33
|
+
/**
|
|
34
|
+
* TODO: Remove this function once BpkDataTableColumns is removed
|
|
35
|
+
* This function takes the children of BpkDataTableColumns and converts them to an array of objects
|
|
36
|
+
* to temporarily maintain backwards compatibility with the old API of BpkDataTable
|
|
37
|
+
*
|
|
38
|
+
* @param {Array} columns the BpkDataTableColumns children
|
|
39
|
+
* @returns {Array} An array of column objects that can be passed to the react-table library
|
|
40
|
+
*/
|
|
41
|
+
export const getColumns = columns => {
|
|
42
|
+
console.warn('BpkDataTableColumns is deprecated. Please pass an array of objects to the columns prop instead.');
|
|
43
|
+
let columnsArray = [];
|
|
44
|
+
if (!columns) return columnsArray;
|
|
45
|
+
columnsArray = columns.map(column => {
|
|
46
|
+
const {
|
|
47
|
+
cellDataGetter,
|
|
48
|
+
cellRenderer,
|
|
49
|
+
headerRenderer
|
|
50
|
+
} = column.props;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* TODO: Remove this function once BpkDataTableColumns is removed
|
|
54
|
+
* This function takes the react-table column and row data and returns the cell data
|
|
55
|
+
* to temporarily maintain backwards compatibility with the old API of BpkDataTable
|
|
56
|
+
* and create an interface so that the function signature doesn't depend on the underlying library
|
|
57
|
+
*
|
|
58
|
+
* @param {Object} Object containing the react-table column and row data
|
|
59
|
+
* @returns {Node} JSX to render in the cell
|
|
60
|
+
*/
|
|
61
|
+
const columnCellRenderer = ({
|
|
62
|
+
column: {
|
|
63
|
+
id: dataKey
|
|
64
|
+
},
|
|
65
|
+
columns: columnsData,
|
|
66
|
+
row: {
|
|
67
|
+
id: rowID,
|
|
68
|
+
values: rowData
|
|
69
|
+
},
|
|
70
|
+
sortedRows,
|
|
71
|
+
value: cellData
|
|
72
|
+
}) => {
|
|
73
|
+
const columnIndex = columnsData.map(col => col.id).indexOf(dataKey);
|
|
74
|
+
const rowIndex = sortedRows.map(row => row.id).indexOf(rowID);
|
|
75
|
+
return cellRenderer({
|
|
76
|
+
cellData,
|
|
77
|
+
columnIndex,
|
|
78
|
+
dataKey,
|
|
79
|
+
rowData,
|
|
80
|
+
rowIndex
|
|
81
|
+
});
|
|
82
|
+
};
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* TODO: Remove this function once BpkDataTableColumns is removed
|
|
86
|
+
* This function takes the react-table column and row data and returns the cell data
|
|
87
|
+
* to temporarily maintain backwards compatibility with the old API of BpkDataTable
|
|
88
|
+
* and create an interface so that the function signature doesn't depend on the underlying library
|
|
89
|
+
*
|
|
90
|
+
* @param {Object} Object containing the react-table column and row data
|
|
91
|
+
* @returns {Node} JSX to render in the cell
|
|
92
|
+
*/
|
|
93
|
+
const columnCellDataGetter = ({
|
|
94
|
+
column: {
|
|
95
|
+
id: dataKey
|
|
96
|
+
},
|
|
97
|
+
row: {
|
|
98
|
+
values: rowData
|
|
99
|
+
}
|
|
100
|
+
}) => cellDataGetter({
|
|
55
101
|
dataKey,
|
|
56
|
-
rowData
|
|
57
|
-
rowIndex
|
|
102
|
+
rowData
|
|
58
103
|
});
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* TODO: Remove this function once BpkDataTableColumns is removed
|
|
107
|
+
* This function takes the react-table column data and returns the header data
|
|
108
|
+
* to temporarily maintain backwards compatibility with the old API of BpkDataTable
|
|
109
|
+
* and create an interface so that the function signature doesn't depend on the underlying library
|
|
110
|
+
*
|
|
111
|
+
* @param {Object} Object containing the react-table column data
|
|
112
|
+
* @returns {Node} JSX to render in the header
|
|
113
|
+
*/
|
|
114
|
+
const columnHeaderRenderer = ({
|
|
115
|
+
column: {
|
|
116
|
+
disableSortBy: disableSort,
|
|
117
|
+
id: dataKey,
|
|
118
|
+
label
|
|
119
|
+
}
|
|
120
|
+
}) => headerRenderer({
|
|
121
|
+
dataKey,
|
|
122
|
+
label,
|
|
123
|
+
disableSort
|
|
124
|
+
});
|
|
125
|
+
const {
|
|
126
|
+
className,
|
|
127
|
+
dataKey,
|
|
128
|
+
defaultSortDirection,
|
|
129
|
+
disableSort,
|
|
130
|
+
flexGrow,
|
|
131
|
+
headerClassName,
|
|
132
|
+
headerStyle,
|
|
133
|
+
label,
|
|
134
|
+
minWidth,
|
|
135
|
+
style,
|
|
136
|
+
width
|
|
137
|
+
} = column.props;
|
|
138
|
+
return {
|
|
139
|
+
Header: headerRenderer ? columnHeaderRenderer : label,
|
|
140
|
+
accessor: dataKey,
|
|
141
|
+
...((cellRenderer || cellDataGetter) && {
|
|
142
|
+
Cell: columnCellRenderer || columnCellDataGetter
|
|
143
|
+
}),
|
|
144
|
+
className,
|
|
73
145
|
disableSortBy: disableSort,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
146
|
+
defaultSortDirection,
|
|
147
|
+
flexGrow,
|
|
148
|
+
headerClassName,
|
|
149
|
+
headerStyle,
|
|
150
|
+
label,
|
|
151
|
+
minWidth: pxToRem(minWidth),
|
|
152
|
+
style,
|
|
153
|
+
width: pxToRem(width)
|
|
154
|
+
};
|
|
155
|
+
});
|
|
156
|
+
return columnsArray;
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
*
|
|
161
|
+
* @param {Array} columns Array of column objects
|
|
162
|
+
* @returns {Array} An array of column objects that can be passed to the react-table library
|
|
163
|
+
* This function abstract the Cell and Header of the react-table API
|
|
164
|
+
*/
|
|
165
|
+
export const createColumnsSchema = columns => {
|
|
166
|
+
let columnsArray = [];
|
|
167
|
+
if (!columns) return columnsArray;
|
|
168
|
+
columnsArray = columns.map(column => {
|
|
169
|
+
const Cell = ({
|
|
170
|
+
column: {
|
|
171
|
+
id: accessor
|
|
172
|
+
},
|
|
173
|
+
columns: columnsData,
|
|
174
|
+
row: {
|
|
175
|
+
id: rowID,
|
|
176
|
+
values: rowData
|
|
177
|
+
},
|
|
178
|
+
sortedRows,
|
|
179
|
+
value: cellData
|
|
180
|
+
}) => column.Cell({
|
|
181
|
+
rowData,
|
|
182
|
+
rowIndex: sortedRows.map(row => row.id).indexOf(rowID),
|
|
183
|
+
accessor,
|
|
184
|
+
columnIndex: columnsData.map(col => col.id).indexOf(accessor),
|
|
185
|
+
cellData
|
|
186
|
+
});
|
|
187
|
+
const Header = ({
|
|
188
|
+
column: {
|
|
189
|
+
disableSortBy: disableSort,
|
|
190
|
+
id: accessor,
|
|
191
|
+
label
|
|
192
|
+
}
|
|
193
|
+
}) => column.Header({
|
|
194
|
+
label,
|
|
195
|
+
disableSort,
|
|
196
|
+
accessor
|
|
197
|
+
});
|
|
198
|
+
return {
|
|
199
|
+
...column,
|
|
200
|
+
...(column.Cell && {
|
|
201
|
+
Cell
|
|
202
|
+
}),
|
|
203
|
+
Header: column.Header && typeof column.Header === 'function' ? Header : column.label
|
|
204
|
+
};
|
|
81
205
|
});
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
dataKey,
|
|
85
|
-
defaultSortDirection,
|
|
86
|
-
disableSort,
|
|
87
|
-
flexGrow,
|
|
88
|
-
headerClassName,
|
|
89
|
-
headerStyle,
|
|
90
|
-
label,
|
|
91
|
-
minWidth,
|
|
92
|
-
style,
|
|
93
|
-
width
|
|
94
|
-
} = column.props;
|
|
95
|
-
return {
|
|
96
|
-
Header: headerRenderer ? columnHeaderRenderer : label,
|
|
97
|
-
accessor: dataKey,
|
|
98
|
-
...((cellRenderer || cellDataGetter) && {
|
|
99
|
-
Cell: columnCellRenderer || columnCellDataGetter
|
|
100
|
-
}),
|
|
101
|
-
className,
|
|
102
|
-
disableSortBy: disableSort,
|
|
103
|
-
defaultSortDirection,
|
|
104
|
-
flexGrow,
|
|
105
|
-
headerClassName,
|
|
106
|
-
headerStyle,
|
|
107
|
-
label,
|
|
108
|
-
minWidth: pxToRem(minWidth),
|
|
109
|
-
style,
|
|
110
|
-
width: pxToRem(width)
|
|
111
|
-
};
|
|
112
|
-
});
|
|
206
|
+
return columnsArray;
|
|
207
|
+
};
|
|
@@ -34,22 +34,18 @@ const BpkClearButton = ({
|
|
|
34
34
|
if (className) {
|
|
35
35
|
classNames.push(className);
|
|
36
36
|
}
|
|
37
|
-
return (
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
focusable: "false" // prevents focus on IE11
|
|
49
|
-
,
|
|
50
|
-
className: getClassName('bpk-clear-button__icon')
|
|
51
|
-
})
|
|
37
|
+
return /*#__PURE__*/_jsx("button", {
|
|
38
|
+
type: "button",
|
|
39
|
+
title: label,
|
|
40
|
+
onClick: onClick,
|
|
41
|
+
"aria-label": label,
|
|
42
|
+
className: classNames.join(' '),
|
|
43
|
+
...rest,
|
|
44
|
+
children: /*#__PURE__*/_jsx(ClearButtonIcon, {
|
|
45
|
+
focusable: "false" // prevents focus on IE11
|
|
46
|
+
,
|
|
47
|
+
className: getClassName('bpk-clear-button__icon')
|
|
52
48
|
})
|
|
53
|
-
);
|
|
49
|
+
});
|
|
54
50
|
};
|
|
55
51
|
export default BpkClearButton;
|
|
@@ -95,10 +95,7 @@ class BpkInput extends Component {
|
|
|
95
95
|
classNames.push(className);
|
|
96
96
|
}
|
|
97
97
|
}
|
|
98
|
-
const renderedInput =
|
|
99
|
-
/*#__PURE__*/
|
|
100
|
-
// $FlowFixMe[cannot-spread-inexact] - inexact rest. See 'decisions/flowfixme.md'.
|
|
101
|
-
_jsx("input", {
|
|
98
|
+
const renderedInput = /*#__PURE__*/_jsx("input", {
|
|
102
99
|
className: classNames.join(' '),
|
|
103
100
|
ref: input => {
|
|
104
101
|
ref = input;
|
|
@@ -14,6 +14,8 @@
|
|
|
14
14
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
15
15
|
* See the License for the specific language governing permissions and
|
|
16
16
|
* limitations under the License.
|
|
17
|
-
*/
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
import BpkOverlay, { OVERLAY_TYPES } from "./src/BpkOverlay";
|
|
18
20
|
export default BpkOverlay;
|
|
19
21
|
export { OVERLAY_TYPES };
|
|
@@ -20,6 +20,20 @@
|
|
|
20
20
|
/// @group utils
|
|
21
21
|
////
|
|
22
22
|
|
|
23
|
+
/// Standard focus indicator for elements.
|
|
24
|
+
///
|
|
25
|
+
/// @example scss
|
|
26
|
+
/// .selector {
|
|
27
|
+
/// @include bpk-focus-indicator();
|
|
28
|
+
/// }
|
|
29
|
+
|
|
30
|
+
@mixin bpk-focus-indicator {
|
|
31
|
+
outline: ($bpk-one-pixel-rem * 2) solid $bpk-text-link-day !important; /* stylelint-disable-line declaration-no-important */
|
|
32
|
+
outline-offset: (
|
|
33
|
+
$bpk-one-pixel-rem * 2
|
|
34
|
+
) !important; /* stylelint-disable-line declaration-no-important */
|
|
35
|
+
}
|
|
36
|
+
|
|
23
37
|
/// Hide visually and from screen readers.
|
|
24
38
|
///
|
|
25
39
|
/// @example scss
|
package/bpk-stylesheets/base.css
CHANGED
|
@@ -16,5 +16,5 @@
|
|
|
16
16
|
* See the License for the specific language governing permissions and
|
|
17
17
|
* limitations under the License.
|
|
18
18
|
*
|
|
19
|
-
*//*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}template,[hidden]{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:bold}button,input{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:0.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}html{font-size:100%;box-sizing:border-box}*{box-sizing:inherit}*::before,*::after{box-sizing:inherit}body{color:#161616;font-family:"Skyscanner Relative",-apple-system,BlinkMacSystemFont,"Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;font-size:1rem;line-height:1.3rem}:global(body.scaffold-font-size){font-size:13px}:global(body.enable-font-smoothing){-webkit-font-smoothing:antialiased}:global(.hidden),:global(.hide){display:none !important}:global(.visuallyhidden),:global(.visually-hidden){position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0)}:global(.visuallyhidden.focusable):active,:global(.visuallyhidden.focusable):focus,:global(.visually-hidden.focusable):active,:global(.visually-hidden.focusable):focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}:global(.invisible){visibility:hidden}:global(.clearfix)::before,:global(.clearfix)::after{content:'';display:table}:global(.clearfix)::after{clear:both}
|
|
19
|
+
*//*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}progress{vertical-align:baseline}template,[hidden]{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:0.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace, monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}button,input,optgroup,select,textarea{font:inherit;margin:0}optgroup{font-weight:bold}button,input{overflow:visible}button,select{text-transform:none}button,html [type="button"],[type="reset"],[type="submit"]{-webkit-appearance:button}button::-moz-focus-inner,[type="button"]::-moz-focus-inner,[type="reset"]::-moz-focus-inner,[type="submit"]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type="button"]:-moz-focusring,[type="reset"]:-moz-focusring,[type="submit"]:-moz-focusring{outline:1px dotted ButtonText}fieldset{border:1px solid #c0c0c0;margin:0 2px;padding:0.35em 0.625em 0.75em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}textarea{overflow:auto}[type="checkbox"],[type="radio"]{box-sizing:border-box;padding:0}[type="number"]::-webkit-inner-spin-button,[type="number"]::-webkit-outer-spin-button{height:auto}[type="search"]{-webkit-appearance:textfield;outline-offset:-2px}[type="search"]::-webkit-search-cancel-button,[type="search"]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:0.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}@keyframes bpk-keyframe-spin{100%{transform:rotate(1turn)}}html{font-size:100%;box-sizing:border-box}*{box-sizing:inherit}*::before,*::after{box-sizing:inherit}body{color:#161616;font-family:"Skyscanner Relative",-apple-system,BlinkMacSystemFont,"Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;font-size:1rem;line-height:1.3rem}:global(body.scaffold-font-size){font-size:13px}:global(body.enable-font-smoothing){-webkit-font-smoothing:antialiased}:focus-visible{outline:.125rem solid #0062e3 !important;outline-offset:.125rem !important}:global(.hidden),:global(.hide){display:none !important}:global(.visuallyhidden),:global(.visually-hidden){position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0)}:global(.visuallyhidden.focusable):active,:global(.visuallyhidden.focusable):focus,:global(.visually-hidden.focusable):active,:global(.visually-hidden.focusable):focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}:global(.invisible){visibility:hidden}:global(.clearfix)::before,:global(.clearfix)::after{content:'';display:table}:global(.clearfix)::after{clear:both}
|
|
20
20
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skyscanner/backpack-web",
|
|
3
|
-
"version": "29.
|
|
3
|
+
"version": "29.4.0",
|
|
4
4
|
"description": "Backpack Design System web library",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"prop-types": "^15.7.2",
|
|
41
41
|
"react-autosuggest": "^9.4.3",
|
|
42
42
|
"react-responsive": "^9.0.2",
|
|
43
|
-
"react-slider": "^
|
|
43
|
+
"react-slider": "^2.0.6",
|
|
44
44
|
"react-table": "^7.8.0",
|
|
45
45
|
"react-transition-group": "^2.5.3",
|
|
46
46
|
"react-virtualized-auto-sizer": "^1.0.20",
|