Skip to content

Commit

Permalink
feat(numeric): add size, rounded and fill customization to numeric
Browse files Browse the repository at this point in the history
BREAKING CHANGE: Use high-level input for numeric textbox base

Numeric textbox reuses the input base component size, rounded and fill
component options.
  • Loading branch information
joneff committed Jan 18, 2022
1 parent cc6c6fb commit 8e16cd2
Show file tree
Hide file tree
Showing 9 changed files with 5 additions and 186 deletions.
10 changes: 0 additions & 10 deletions packages/bootstrap/scss/numerictextbox/_layout.scss
@@ -1,11 +1 @@
@import "~@progress/kendo-theme-default/scss/numerictextbox/_layout.scss";

@include exports( "numerictextbox/layout/bootstrap" ) {

// Numeric textbox
.k-numerictextbox {
transition: $transition;
}

}

5 changes: 0 additions & 5 deletions packages/default/scss/editor/_layout.scss
Expand Up @@ -581,11 +581,6 @@
.k-dropdown.k-align {
width: auto;
}

// Summary textarea
.k-textbox.k-editor-accessibility-summary {
height: auto;
}
}


Expand Down
1 change: 1 addition & 0 deletions packages/default/scss/forms/_layout.scss
Expand Up @@ -148,6 +148,7 @@
.k-datepicker,
.k-datetimepicker,
.k-timepicker,
.k-maskedtextbox,
.k-floating-label-container {
display: inline-flex;
width: 100%;
Expand Down
74 changes: 3 additions & 71 deletions packages/default/scss/numerictextbox/_layout.scss
@@ -1,78 +1,10 @@
@include exports( "numerictextbox/layout" ) {

// Numeric textbox
.k-numerictextbox {
@include border-radius( $kendo-input-border-radius );
width: $kendo-input-default-width;
border-width: $kendo-input-border-width;
border-style: solid;
box-sizing: border-box;
outline: 0;
font-family: $kendo-input-font-family;
font-size: $kendo-input-font-size;
line-height: $kendo-input-line-height;
text-align: start;
white-space: nowrap;
display: inline-flex;
flex-flow: row nowrap;
vertical-align: middle;
position: relative;
overflow: hidden;
transition: all .1s ease; // sass-lint:disable-line no-transition-all
-webkit-touch-callout: none;
-webkit-tap-highlight-color: $rgba-transparent;
.k-numeric-textbox {}

*,
*::before,
*::after {
box-sizing: border-box;
}


// Input
.k-input {
text-overflow: clip;
}


// Select
.k-select {
padding: 0;
width: if( $use-picker-select-width, $kendo-input-spinner-width, null );
border-inline-start-width: $kendo-input-button-border-width;
border-style: solid;
outline: 0;
display: flex;
flex-direction: column;
align-items: stretch;
justify-content: center;
flex: 0 0 auto;
text-align: center;
cursor: pointer;
}

.k-link {
padding: 0;
min-width: $kendo-input-spinner-width;
flex: 1 1 auto;
display: block;
overflow: hidden;
position: relative;

.k-icon {
position: absolute;
right: 50%;
transform: translateX(50%);
}
}

.k-link-increase .k-icon {
bottom: -$kendo-input-spinner-icon-offset;
}

.k-link-decrease .k-icon {
top: -$kendo-input-spinner-icon-offset;
}
}
// Alias
.k-numerictextbox { @extend .k-numeric-textbox !optional; }

}
83 changes: 1 addition & 82 deletions packages/default/scss/numerictextbox/_theme.scss
@@ -1,87 +1,6 @@
@include exports( "numerictextbox/theme" ) {

// Numeric textbox
.k-numerictextbox {
@include fill(
$kendo-input-text,
$kendo-input-bg,
$kendo-input-border
);

// Hover state
&:hover,
&.k-state-hover {
@include fill(
$kendo-input-hover-text,
$kendo-input-hover-bg,
$kendo-input-hover-border
);
}

// Focus state
&:focus,
&.k-state-focus {
@include fill(
$kendo-input-focus-text,
$kendo-input-focus-bg,
$kendo-input-focus-border
);
@include box-shadow( $kendo-input-focus-shadow );
}
&:focus-within {
@include fill(
$kendo-input-focus-text,
$kendo-input-focus-bg,
$kendo-input-focus-border
);
@include box-shadow( $kendo-input-focus-shadow );
}


// Invalid state
&.k-invalid,
&.ng-invalid,
&.k-state-invalid {
border-color: $invalid-border;

.k-input-validation-icon {
color: $invalid-text;
}

&:focus-within,
&.k-state-focus {
@include box-shadow($invalid-shadow);
}
}


// Spinner
.k-select {
@include fill(
$kendo-button-text,
$kendo-button-bg,
$kendo-button-border,
$kendo-button-gradient
);
}
.k-link:hover,
.k-link.k-state-hover {
@include fill(
$kendo-button-hover-text,
$kendo-button-hover-bg,
$kendo-button-hover-border,
$kendo-button-hover-gradient
);
}
.k-link:active,
.k-link.k-state-active {
@include fill(
$kendo-button-active-text,
$kendo-button-active-bg,
$kendo-button-active-border,
$kendo-button-active-gradient
);
}
}
.k-numeric-textbox {}

}
1 change: 0 additions & 1 deletion packages/material/scss/editor/_layout.scss
Expand Up @@ -50,7 +50,6 @@
display: flex;
flex-direction: row;

.k-numerictextbox,
.k-dropdown {
width: auto;
flex: 1 1 auto;
Expand Down
2 changes: 0 additions & 2 deletions packages/material/scss/forms/_layout.scss
Expand Up @@ -19,8 +19,6 @@
display: flex;
flex-direction: row;

.k-numerictextbox,
.k-textbox,
.k-dropdown {
width: auto;
flex: 1 1 auto;
Expand Down
11 changes: 0 additions & 11 deletions packages/material/scss/numerictextbox/_layout.scss
@@ -1,12 +1 @@
@import "~@progress/kendo-theme-default/scss/numerictextbox/_layout.scss";

@include exports("numerictextbox/layout/material") {

// Numeric textbox
.k-numerictextbox {
@include border-bottom-radius( 0 !important ); // sass-lint:disable-line no-important
border-width: $kendo-input-border-width 0;
border-top-color: transparent !important; // sass-lint:disable-line no-important
}

}
4 changes: 0 additions & 4 deletions packages/material/scss/scheduler/_layout.scss
Expand Up @@ -144,10 +144,6 @@
align-items: center;
}

.k-recur-view .k-edit-field .k-numerictextbox {
flex: 0 70px;
}

kendo-scheduler-datetime-picker {
display: inline-flex;
width: 100%;
Expand Down

0 comments on commit 8e16cd2

Please sign in to comment.