Skip to content

ryohei-izumi-0702/angular-material-migrate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 

Repository files navigation

angular-material-migrate


@use '@angular/material' as mat;

$primary: mat.m2-define-palette(mat.$deep-purple-palette);
$accent: mat.m2-define-palette(mat.$amber-palette);
$warn: mat.m2-define-palette(mat.$red-palette);

$theme: mat.m2-define-light-theme((
  color: (
    primary: $primary,
    accent: $accent,
    warn: $warn,
  )
));

@include mat.all-component-themes($theme);

/* M2風の mat-table 調整 */
::ng-deep .mat-mdc-table {
  border-collapse: collapse;
}

::ng-deep .mat-mdc-header-cell {
  background-color: mat.get-color-from-palette($primary, 50); // M2風の薄い色
  font-weight: 500;
  padding: 0 24px;
  height: 56px;
}

::ng-deep .mat-mdc-cell {
  border-bottom: 1px solid rgba(0, 0, 0, 0.12);
  padding: 0 24px;
  height: 48px;
}


/* チェックボックスサイズをM2相当に */
::ng-deep .mat-mdc-checkbox .mat-mdc-checkbox-background {
  width: 18px;
  height: 18px;
}

/* 枠線を細く */
::ng-deep .mat-mdc-checkbox .mat-mdc-checkbox-background {
  border-width: 2px;
}

/* ラベルの位置とフォントサイズをM2風に */
::ng-deep .mat-mdc-checkbox-label {
  font-size: 14px;
  line-height: 18px;
  padding-left: 8px; /* M2風の余白 */
}

/* チェックマークカラーをM2テーマ色に */
@use '@angular/material' as mat;
$primary: mat.m2-define-palette(mat.$deep-purple-palette);

::ng-deep .mat-mdc-checkbox.mat-accent .mat-mdc-checkbox-background {
  background-color: mat.m2-get-color-from-palette($primary);
  border-color: mat.m2-get-color-from-palette($primary);
}
@use '@angular/material' as mat;

$primary: mat.m2-define-palette(mat.$deep-purple-palette);
$checkmark-color: mat.m2-get-color-from-palette($primary, default-contrast);

$checkmark-color: mat.m2-get-color-from-palette($primary, default-contrast);

::ng-deep .mat-mdc-checkbox .mat-mdc-checkbox-checkmark-path {
  stroke: $checkmark-color; /* チェックマーク線の色 */
}

::ng-deep .mat-mdc-checkbox .mat-mdc-checkbox-checkmark-path {
  stroke: $checkmark-color; /* チェックマーク線の色 */
}


::ng-deep .mat-mdc-slider {
  height: 2px; // M2相当の細いトラックにする
  margin: 10px 0;
}

::ng-deep .mat-mdc-slider .mdc-slider__track {
  height: 2px;
  background-color: mat.m2-get-color-from-palette($primary, 500);
}

::ng-deep .mat-mdc-slider .mdc-slider__thumb {
  width: 12px;
  height: 12px;
  background-color: mat.m2-get-color-from-palette($primary, 500);
  border: none;
}

::ng-deep .mat-mdc-slider .mdc-slider__track--inactive {
  background-color: rgba(0, 0, 0, 0.26); // M2っぽい非アクティブカラー
}

::ng-deep .mat-mdc-slider .mdc-slider__thumb:focus {
  box-shadow: none; // M3特有の青いリングを無効に
}

## or

::ng-deep .mat-mdc-slider {
  --mdc-slider-handle-color: #673ab7;
  --mdc-slider-track-active-color: #673ab7;
  --mdc-slider-track-inactive-color: rgba(0, 0, 0, 0.26);
  --mdc-slider-focus-handle-color: transparent;
  --mdc-slider-hover-handle-color: #673ab7;
}

/* mat-slider の目盛り(tick marks)を非表示にしてM2風に */
::ng-deep .mat-mdc-slider .mdc-slider__tick-marks {
  display: none !important;
}

@use '@angular/material' as mat;
$primary: mat.m2-define-palette(mat.$deep-purple-palette);

/* M2風の mat-slider バー補正 */
::ng-deep .mat-mdc-slider .mdc-slider__track {
  height: 2px !important;         // M2の細さ
  border-radius: 0 !important;    // M2では角丸なし
}

::ng-deep .mat-mdc-slider .mdc-slider__track--active,
::ng-deep .mat-mdc-slider .mdc-slider__track--inactive {
  border-radius: 0 !important;    // セグメントの角丸も除去
}

::ng-deep .mat-mdc-slider .mdc-slider__track--active {
  background-color: mat.m2-get-color-from-palette($primary, 500) !important;
}

::ng-deep .mat-mdc-slider .mdc-slider__track--inactive {
  background-color: rgba(0, 0, 0, 0.26) !important;
}

/* mat-select を M2風に補正 */
::ng-deep .mat-mdc-select {
  padding: 0 12px;
}

::ng-deep .mat-mdc-select-trigger {
  font-size: 14px;
  padding: 8px 0;
}

::ng-deep .mat-mdc-select .mat-mdc-select-arrow {
  font-size: 16px;
  margin-left: 4px;
}

::ng-deep .mat-mdc-select-panel {
  padding: 0;
  font-size: 14px;
}

::ng-deep .mat-mdc-option {
  padding: 8px 16px;
  font-size: 14px;
}

::ng-deep .mat-mdc-option.mat-mdc-selected:not(.mat-mdc-option-disabled) {
  background-color: mat.m2-get-color-from-palette($primary, 50);
}

.mat-mdc-option .mat-pseudo-checkbox {
  display: none !important;
}

.mat-mdc-option .mat-pseudo-checkbox {
  display: none !important;
}

::ng-deep mat-slider.min-thumb input[type="range"] {
  &::-webkit-slider-thumb {
    opacity: 0;
  }

  &::-moz-range-thumb {
    opacity: 0;
  }
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors