forked from fanruan/fineui
guy
8 years ago
16 changed files with 2764 additions and 267 deletions
@ -0,0 +1,5 @@ |
|||||||
|
@font-face { |
||||||
|
font-family: "Helvetica Neue For Number"; |
||||||
|
src: local("Helvetica Neue"); |
||||||
|
unicode-range: U+30-39; |
||||||
|
} |
@ -0,0 +1,107 @@ |
|||||||
|
.bezierEasingMixin() { |
||||||
|
@functions: ~`(function() { |
||||||
|
var NEWTON_ITERATIONS = 4; |
||||||
|
var NEWTON_MIN_SLOPE = 0.001; |
||||||
|
var SUBDIVISION_PRECISION = 0.0000001; |
||||||
|
var SUBDIVISION_MAX_ITERATIONS = 10; |
||||||
|
|
||||||
|
var kSplineTableSize = 11; |
||||||
|
var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0); |
||||||
|
|
||||||
|
var float32ArraySupported = typeof Float32Array === 'function'; |
||||||
|
|
||||||
|
function A (aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1; } |
||||||
|
function B (aA1, aA2) { return 3.0 * aA2 - 6.0 * aA1; } |
||||||
|
function C (aA1) { return 3.0 * aA1; } |
||||||
|
|
||||||
|
// Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2. |
||||||
|
function calcBezier (aT, aA1, aA2) { return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT; } |
||||||
|
|
||||||
|
// Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2. |
||||||
|
function getSlope (aT, aA1, aA2) { return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1); } |
||||||
|
|
||||||
|
function binarySubdivide (aX, aA, aB, mX1, mX2) { |
||||||
|
var currentX, currentT, i = 0; |
||||||
|
do { |
||||||
|
currentT = aA + (aB - aA) / 2.0; |
||||||
|
currentX = calcBezier(currentT, mX1, mX2) - aX; |
||||||
|
if (currentX > 0.0) { |
||||||
|
aB = currentT; |
||||||
|
} else { |
||||||
|
aA = currentT; |
||||||
|
} |
||||||
|
} while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS); |
||||||
|
return currentT; |
||||||
|
} |
||||||
|
|
||||||
|
function newtonRaphsonIterate (aX, aGuessT, mX1, mX2) { |
||||||
|
for (var i = 0; i < NEWTON_ITERATIONS; ++i) { |
||||||
|
var currentSlope = getSlope(aGuessT, mX1, mX2); |
||||||
|
if (currentSlope === 0.0) { |
||||||
|
return aGuessT; |
||||||
|
} |
||||||
|
var currentX = calcBezier(aGuessT, mX1, mX2) - aX; |
||||||
|
aGuessT -= currentX / currentSlope; |
||||||
|
} |
||||||
|
return aGuessT; |
||||||
|
} |
||||||
|
|
||||||
|
var BezierEasing = function (mX1, mY1, mX2, mY2) { |
||||||
|
if (!(0 <= mX1 && mX1 <= 1 && 0 <= mX2 && mX2 <= 1)) { |
||||||
|
throw new Error('bezier x values must be in [0, 1] range'); |
||||||
|
} |
||||||
|
|
||||||
|
// Precompute samples table |
||||||
|
var sampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize); |
||||||
|
if (mX1 !== mY1 || mX2 !== mY2) { |
||||||
|
for (var i = 0; i < kSplineTableSize; ++i) { |
||||||
|
sampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
function getTForX (aX) { |
||||||
|
var intervalStart = 0.0; |
||||||
|
var currentSample = 1; |
||||||
|
var lastSample = kSplineTableSize - 1; |
||||||
|
|
||||||
|
for (; currentSample !== lastSample && sampleValues[currentSample] <= aX; ++currentSample) { |
||||||
|
intervalStart += kSampleStepSize; |
||||||
|
} |
||||||
|
--currentSample; |
||||||
|
|
||||||
|
// Interpolate to provide an initial guess for t |
||||||
|
var dist = (aX - sampleValues[currentSample]) / (sampleValues[currentSample + 1] - sampleValues[currentSample]); |
||||||
|
var guessForT = intervalStart + dist * kSampleStepSize; |
||||||
|
|
||||||
|
var initialSlope = getSlope(guessForT, mX1, mX2); |
||||||
|
if (initialSlope >= NEWTON_MIN_SLOPE) { |
||||||
|
return newtonRaphsonIterate(aX, guessForT, mX1, mX2); |
||||||
|
} else if (initialSlope === 0.0) { |
||||||
|
return guessForT; |
||||||
|
} else { |
||||||
|
return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
return function BezierEasing (x) { |
||||||
|
if (mX1 === mY1 && mX2 === mY2) { |
||||||
|
return x; // linear |
||||||
|
} |
||||||
|
// Because JavaScript number are imprecise, we should guarantee the extremes are right. |
||||||
|
if (x === 0) { |
||||||
|
return 0; |
||||||
|
} |
||||||
|
if (x === 1) { |
||||||
|
return 1; |
||||||
|
} |
||||||
|
return calcBezier(getTForX(x), mY1, mY2); |
||||||
|
}; |
||||||
|
}; |
||||||
|
|
||||||
|
this.colorEasing = BezierEasing(0.26, 0.09, 0.37, 0.18); |
||||||
|
})()`; |
||||||
|
} |
||||||
|
// It is hacky way to make this function will be compiled preferentially by less |
||||||
|
// resolve error: `ReferenceError: colorPalette is not defined` |
||||||
|
// https://github.com/ant-design/ant-motion/issues/44 |
||||||
|
.bezierEasingMixin(); |
@ -0,0 +1,46 @@ |
|||||||
|
@import "bezierEasing"; |
||||||
|
@import "tinyColor"; |
||||||
|
|
||||||
|
// We create a very complex algorithm which take the place of original tint/shade color system |
||||||
|
// to make sure no one can understand it 👻 |
||||||
|
// and create an entire color palette magicly by inputing just a single primary color. |
||||||
|
// We are using bezier-curve easing function and some color manipulations like tint/shade/darken/spin |
||||||
|
.colorPaletteMixin() { |
||||||
|
@functions: ~`(function() { |
||||||
|
var warmDark = 0.5; // warm color darken radio |
||||||
|
var warmRotate = -26; // warm color rotate degree |
||||||
|
var coldDark = 0.55; // cold color darken radio |
||||||
|
var coldRotate = 10; // cold color rotate degree |
||||||
|
var getShadeColor = function(c) { |
||||||
|
var shadeColor = tinycolor(c); |
||||||
|
// warm and cold color will darken in different radio, and rotate in different degree |
||||||
|
// warmer color |
||||||
|
if (shadeColor.toRgb().r > shadeColor.toRgb().b) { |
||||||
|
return shadeColor.darken(shadeColor.toHsl().l * warmDark * 100).spin(warmRotate).toHexString(); |
||||||
|
} |
||||||
|
// colder color |
||||||
|
return shadeColor.darken(shadeColor.toHsl().l * coldDark * 100).spin(coldRotate).toHexString(); |
||||||
|
} |
||||||
|
var primaryEasing = colorEasing(0.6); |
||||||
|
this.colorPalette = function(color, index) { |
||||||
|
var currentEasing = colorEasing(index * 0.1); |
||||||
|
// return light colors after tint |
||||||
|
if (index <= 6) { |
||||||
|
return tinycolor.mix( |
||||||
|
'#ffffff', |
||||||
|
color, |
||||||
|
currentEasing * 100 / primaryEasing |
||||||
|
).toHexString(); |
||||||
|
} |
||||||
|
return tinycolor.mix( |
||||||
|
getShadeColor(color), |
||||||
|
color, |
||||||
|
(1 - (currentEasing - primaryEasing) / (1 - primaryEasing)) * 100 |
||||||
|
).toHexString(); |
||||||
|
}; |
||||||
|
})()`; |
||||||
|
} |
||||||
|
// It is hacky way to make this function will be compiled preferentially by less |
||||||
|
// resolve error: `ReferenceError: colorPalette is not defined` |
||||||
|
// https://github.com/ant-design/ant-motion/issues/44 |
||||||
|
.colorPaletteMixin(); |
@ -0,0 +1,90 @@ |
|||||||
|
@import 'colorPalette'; |
||||||
|
|
||||||
|
// color palettes |
||||||
|
@blue-1: color(~`colorPalette("@{blue-6}", 1)`); |
||||||
|
@blue-2: color(~`colorPalette("@{blue-6}", 2)`); |
||||||
|
@blue-3: color(~`colorPalette("@{blue-6}", 3)`); |
||||||
|
@blue-4: color(~`colorPalette("@{blue-6}", 4)`); |
||||||
|
@blue-5: color(~`colorPalette("@{blue-6}", 5)`); |
||||||
|
@blue-6: #108ee9; |
||||||
|
@blue-7: color(~`colorPalette("@{blue-6}", 7)`); |
||||||
|
@blue-8: color(~`colorPalette("@{blue-6}", 8)`); |
||||||
|
@blue-9: color(~`colorPalette("@{blue-6}", 9)`); |
||||||
|
@blue-10: color(~`colorPalette("@{blue-6}", 10)`); |
||||||
|
|
||||||
|
@purple-1: color(~`colorPalette("@{purple-6}", 1)`); |
||||||
|
@purple-2: color(~`colorPalette("@{purple-6}", 2)`); |
||||||
|
@purple-3: color(~`colorPalette("@{purple-6}", 3)`); |
||||||
|
@purple-4: color(~`colorPalette("@{purple-6}", 4)`); |
||||||
|
@purple-5: color(~`colorPalette("@{purple-6}", 5)`); |
||||||
|
@purple-6: #7265e6; |
||||||
|
@purple-7: color(~`colorPalette("@{purple-6}", 7)`); |
||||||
|
@purple-8: color(~`colorPalette("@{purple-6}", 8)`); |
||||||
|
@purple-9: color(~`colorPalette("@{purple-6}", 9)`); |
||||||
|
@purple-10: color(~`colorPalette("@{purple-6}", 10)`); |
||||||
|
|
||||||
|
@cyan-1: color(~`colorPalette("@{cyan-6}", 1)`); |
||||||
|
@cyan-2: color(~`colorPalette("@{cyan-6}", 2)`); |
||||||
|
@cyan-3: color(~`colorPalette("@{cyan-6}", 3)`); |
||||||
|
@cyan-4: color(~`colorPalette("@{cyan-6}", 4)`); |
||||||
|
@cyan-5: color(~`colorPalette("@{cyan-6}", 5)`); |
||||||
|
@cyan-6: #00a2ae; |
||||||
|
@cyan-7: color(~`colorPalette("@{cyan-6}", 7)`); |
||||||
|
@cyan-8: color(~`colorPalette("@{cyan-6}", 8)`); |
||||||
|
@cyan-9: color(~`colorPalette("@{cyan-6}", 9)`); |
||||||
|
@cyan-10: color(~`colorPalette("@{cyan-6}", 10)`); |
||||||
|
|
||||||
|
@green-1: color(~`colorPalette("@{green-6}", 1)`); |
||||||
|
@green-2: color(~`colorPalette("@{green-6}", 2)`); |
||||||
|
@green-3: color(~`colorPalette("@{green-6}", 3)`); |
||||||
|
@green-4: color(~`colorPalette("@{green-6}", 4)`); |
||||||
|
@green-5: color(~`colorPalette("@{green-6}", 5)`); |
||||||
|
@green-6: #00a854; |
||||||
|
@green-7: color(~`colorPalette("@{green-6}", 7)`); |
||||||
|
@green-8: color(~`colorPalette("@{green-6}", 8)`); |
||||||
|
@green-9: color(~`colorPalette("@{green-6}", 9)`); |
||||||
|
@green-10: color(~`colorPalette("@{green-6}", 10)`); |
||||||
|
|
||||||
|
@pink-1: color(~`colorPalette("@{pink-6}", 1)`); |
||||||
|
@pink-2: color(~`colorPalette("@{pink-6}", 2)`); |
||||||
|
@pink-3: color(~`colorPalette("@{pink-6}", 3)`); |
||||||
|
@pink-4: color(~`colorPalette("@{pink-6}", 4)`); |
||||||
|
@pink-5: color(~`colorPalette("@{pink-6}", 5)`); |
||||||
|
@pink-6: #f5317f; |
||||||
|
@pink-7: color(~`colorPalette("@{pink-6}", 7)`); |
||||||
|
@pink-8: color(~`colorPalette("@{pink-6}", 8)`); |
||||||
|
@pink-9: color(~`colorPalette("@{pink-6}", 9)`); |
||||||
|
@pink-10: color(~`colorPalette("@{pink-6}", 10)`); |
||||||
|
|
||||||
|
@red-1: color(~`colorPalette("@{red-6}", 1)`); |
||||||
|
@red-2: color(~`colorPalette("@{red-6}", 2)`); |
||||||
|
@red-3: color(~`colorPalette("@{red-6}", 3)`); |
||||||
|
@red-4: color(~`colorPalette("@{red-6}", 4)`); |
||||||
|
@red-5: color(~`colorPalette("@{red-6}", 5)`); |
||||||
|
@red-6: #f04134; |
||||||
|
@red-7: color(~`colorPalette("@{red-6}", 7)`); |
||||||
|
@red-8: color(~`colorPalette("@{red-6}", 8)`); |
||||||
|
@red-9: color(~`colorPalette("@{red-6}", 9)`); |
||||||
|
@red-10: color(~`colorPalette("@{red-6}", 10)`); |
||||||
|
|
||||||
|
@orange-1: color(~`colorPalette("@{orange-6}", 1)`); |
||||||
|
@orange-2: color(~`colorPalette("@{orange-6}", 2)`); |
||||||
|
@orange-3: color(~`colorPalette("@{orange-6}", 3)`); |
||||||
|
@orange-4: color(~`colorPalette("@{orange-6}", 4)`); |
||||||
|
@orange-5: color(~`colorPalette("@{orange-6}", 5)`); |
||||||
|
@orange-6: #f56a00; |
||||||
|
@orange-7: color(~`colorPalette("@{orange-6}", 7)`); |
||||||
|
@orange-8: color(~`colorPalette("@{orange-6}", 8)`); |
||||||
|
@orange-9: color(~`colorPalette("@{orange-6}", 9)`); |
||||||
|
@orange-10: color(~`colorPalette("@{orange-6}", 10)`); |
||||||
|
|
||||||
|
@yellow-1: color(~`colorPalette("@{yellow-6}", 1)`); |
||||||
|
@yellow-2: color(~`colorPalette("@{yellow-6}", 2)`); |
||||||
|
@yellow-3: color(~`colorPalette("@{yellow-6}", 3)`); |
||||||
|
@yellow-4: color(~`colorPalette("@{yellow-6}", 4)`); |
||||||
|
@yellow-5: color(~`colorPalette("@{yellow-6}", 5)`); |
||||||
|
@yellow-6: #ffbf00; |
||||||
|
@yellow-7: color(~`colorPalette("@{yellow-6}", 7)`); |
||||||
|
@yellow-8: color(~`colorPalette("@{yellow-6}", 8)`); |
||||||
|
@yellow-9: color(~`colorPalette("@{yellow-6}", 9)`); |
||||||
|
@yellow-10: color(~`colorPalette("@{yellow-6}", 10)`); |
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,301 @@ |
|||||||
|
@import "./color/colors"; |
||||||
|
|
||||||
|
// http://stackoverflow.com/a/13611748/3040605 |
||||||
|
@font-face { |
||||||
|
font-family: "Helvetica Neue For Number"; |
||||||
|
src: local("Helvetica Neue"); |
||||||
|
unicode-range: U+30-39; |
||||||
|
} |
||||||
|
|
||||||
|
// Prefix |
||||||
|
@ant-prefix : ant; |
||||||
|
|
||||||
|
// Color |
||||||
|
@primary-color : @blue-6; |
||||||
|
@info-color : @blue-6; |
||||||
|
@success-color : @green-6; |
||||||
|
@error-color : @red-6; |
||||||
|
@highlight-color : @red-6; |
||||||
|
@warning-color : @yellow-6; |
||||||
|
@normal-color : #d9d9d9; |
||||||
|
|
||||||
|
@primary-1: color(~`colorPalette("@{primary-color}", 1)`); // replace tint(@primary-color, 90%) |
||||||
|
@primary-2: color(~`colorPalette("@{primary-color}", 2)`); // replace tint(@primary-color, 80%) |
||||||
|
@primary-3: color(~`colorPalette("@{primary-color}", 3)`); |
||||||
|
@primary-4: color(~`colorPalette("@{primary-color}", 4)`); |
||||||
|
@primary-5: color(~`colorPalette("@{primary-color}", 5)`); // replace tint(@primary-color, 20%) |
||||||
|
@primary-6: @primary-color; // don't use, use @primary-color |
||||||
|
@primary-7: color(~`colorPalette("@{primary-color}", 7)`); // replace shade(@primary-color, 5%) |
||||||
|
@primary-8: color(~`colorPalette("@{primary-color}", 8)`); |
||||||
|
@primary-9: color(~`colorPalette("@{primary-color}", 9)`); |
||||||
|
@primary-10: color(~`colorPalette("@{primary-color}", 10)`); |
||||||
|
|
||||||
|
// ------ Base & Require ------ |
||||||
|
@body-background : #fff; |
||||||
|
@component-background : #fff; |
||||||
|
@font-family : "Helvetica Neue For Number", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif; |
||||||
|
@code-family : Consolas, Menlo, Courier, monospace; |
||||||
|
@heading-color : fade(#000, 85%); |
||||||
|
@text-color : fade(#000, 65%); |
||||||
|
@text-color-secondary : fade(#000, 43%); |
||||||
|
@disabled-color : fade(#000, 25%); |
||||||
|
@heading-color-dark : fade(#fff, 97%); |
||||||
|
@text-color-dark : fade(#fff, 91%); |
||||||
|
@text-color-secondary-dark: fade(#fff, 67%); |
||||||
|
@disabled-color-dark : fade(#fff, 35%); |
||||||
|
@font-size-base : 12px; |
||||||
|
@font-size-lg : @font-size-base + 2px; |
||||||
|
@line-height-base : 1.5; |
||||||
|
@border-radius-base : 4px; |
||||||
|
@border-radius-sm : 2px; |
||||||
|
|
||||||
|
// ICONFONT |
||||||
|
@iconfont-css-prefix : anticon; |
||||||
|
@icon-url : "https://at.alicdn.com/t/font_0qcp222wvwijm7vi"; |
||||||
|
|
||||||
|
// LINK |
||||||
|
@link-color : @primary-color; |
||||||
|
@link-hover-color : @primary-5; |
||||||
|
@link-active-color : @primary-7; |
||||||
|
@link-hover-decoration : none; |
||||||
|
|
||||||
|
// Animation |
||||||
|
@ease-out : cubic-bezier(0.215, 0.61, 0.355, 1); |
||||||
|
@ease-in : cubic-bezier(0.55, 0.055, 0.675, 0.19); |
||||||
|
@ease-in-out : cubic-bezier(0.645, 0.045, 0.355, 1); |
||||||
|
@ease-out-back : cubic-bezier(0.12, 0.4, 0.29, 1.46); |
||||||
|
@ease-in-back : cubic-bezier(0.71, -0.46, 0.88, 0.6); |
||||||
|
@ease-in-out-back : cubic-bezier(0.71, -0.46, 0.29, 1.46); |
||||||
|
@ease-out-circ : cubic-bezier(0.08, 0.82, 0.17, 1); |
||||||
|
@ease-in-circ : cubic-bezier(0.6, 0.04, 0.98, 0.34); |
||||||
|
@ease-in-out-circ : cubic-bezier(0.78, 0.14, 0.15, 0.86); |
||||||
|
@ease-out-quint : cubic-bezier(0.23, 1, 0.32, 1); |
||||||
|
@ease-in-quint : cubic-bezier(0.755, 0.05, 0.855, 0.06); |
||||||
|
@ease-in-out-quint : cubic-bezier(0.86, 0, 0.07, 1); |
||||||
|
|
||||||
|
// Border color |
||||||
|
@border-color-base : #d9d9d9; // base border outline a component |
||||||
|
@border-color-split : #e9e9e9; // split border inside a component |
||||||
|
@border-width-base : 1px; // width of the border for a component |
||||||
|
@border-style-base : solid; // style of a components border |
||||||
|
|
||||||
|
// Outline |
||||||
|
@outline-blur-size : 0; |
||||||
|
@outline-width : 2px; |
||||||
|
@outline-color : @primary-color; |
||||||
|
|
||||||
|
// Background color |
||||||
|
@background-color-base : #f7f7f7; // basic gray background |
||||||
|
|
||||||
|
// Shadow |
||||||
|
@shadow-color : rgba(0, 0, 0, .2); |
||||||
|
@box-shadow-base : @shadow-1-down; |
||||||
|
@shadow-1-up : 0 -1px 6px @shadow-color; |
||||||
|
@shadow-1-down : 0 1px 6px @shadow-color; |
||||||
|
@shadow-1-left : -1px 0 6px @shadow-color; |
||||||
|
@shadow-1-right : 1px 0 6px @shadow-color; |
||||||
|
@shadow-2 : 0 2px 8px @shadow-color; |
||||||
|
|
||||||
|
// Buttons |
||||||
|
@btn-font-weight : 500; |
||||||
|
@btn-border-radius-base : @border-radius-base; |
||||||
|
@btn-border-radius-sm : @border-radius-base; |
||||||
|
|
||||||
|
@btn-primary-color : #fff; |
||||||
|
@btn-primary-bg : @primary-color; |
||||||
|
|
||||||
|
@btn-default-color : @text-color; |
||||||
|
@btn-default-bg : #fff; |
||||||
|
@btn-default-border : @border-color-base; |
||||||
|
|
||||||
|
@btn-danger-color : @error-color; |
||||||
|
@btn-danger-bg : @background-color-base; |
||||||
|
@btn-danger-border : @border-color-base; |
||||||
|
|
||||||
|
@btn-disable-color : @disabled-color; |
||||||
|
@btn-disable-bg : @background-color-base; |
||||||
|
@btn-disable-border : @border-color-base; |
||||||
|
|
||||||
|
@btn-padding-base : 0 15px; |
||||||
|
@btn-font-size-lg : @font-size-lg; |
||||||
|
@btn-padding-lg : @btn-padding-base; |
||||||
|
@btn-padding-sm : 0 7px; |
||||||
|
|
||||||
|
@btn-height-base : 28px; |
||||||
|
@btn-height-lg : 32px; |
||||||
|
@btn-height-sm : 22px; |
||||||
|
|
||||||
|
@btn-circle-size : @btn-height-base; |
||||||
|
@btn-circle-size-lg : @btn-height-lg; |
||||||
|
@btn-circle-size-sm : @btn-height-sm; |
||||||
|
|
||||||
|
@btn-group-border : @primary-7; |
||||||
|
|
||||||
|
// Radio buttons |
||||||
|
@radio-button-bg : @btn-default-bg; |
||||||
|
@radio-button-color : @btn-default-color; |
||||||
|
|
||||||
|
// Media queries breakpoints |
||||||
|
// Extra small screen / phone |
||||||
|
@screen-xs : 480px; |
||||||
|
@screen-xs-min : @screen-xs; |
||||||
|
|
||||||
|
// Small screen / tablet |
||||||
|
@screen-sm : 768px; |
||||||
|
@screen-sm-min : @screen-sm; |
||||||
|
|
||||||
|
// Medium screen / desktop |
||||||
|
@screen-md : 992px; |
||||||
|
@screen-md-min : @screen-md; |
||||||
|
|
||||||
|
// Large screen / wide desktop |
||||||
|
@screen-lg : 1200px; |
||||||
|
@screen-lg-min : @screen-lg; |
||||||
|
|
||||||
|
// Extra Large screen / full hd |
||||||
|
@screen-xl : 1600px; |
||||||
|
@screen-xl-min : @screen-xl; |
||||||
|
|
||||||
|
// provide a maximum |
||||||
|
@screen-xs-max : (@screen-sm-min - 1); |
||||||
|
@screen-sm-max : (@screen-md-min - 1); |
||||||
|
@screen-md-max : (@screen-lg-min - 1); |
||||||
|
@screen-lg-max : (@screen-xl-min - 1); |
||||||
|
|
||||||
|
// Grid system |
||||||
|
@grid-columns : 24; |
||||||
|
@grid-gutter-width : 0; |
||||||
|
|
||||||
|
// Layout |
||||||
|
@layout-body-background : #ececec; |
||||||
|
@layout-header-background : #404040; |
||||||
|
@layout-header-height : 64px; |
||||||
|
@layout-header-padding : 0 50px; |
||||||
|
@layout-footer-padding : 24px 50px; |
||||||
|
@layout-sider-background : @layout-header-background; |
||||||
|
@layout-trigger-height : 48px; |
||||||
|
@layout-zero-trigger-width : 36px; |
||||||
|
@layout-zero-trigger-height : 42px; |
||||||
|
|
||||||
|
// z-index list |
||||||
|
@zindex-affix : 10; |
||||||
|
@zindex-back-top : 10; |
||||||
|
@zindex-modal-mask : 1000; |
||||||
|
@zindex-modal : 1000; |
||||||
|
@zindex-notification : 1010; |
||||||
|
@zindex-message : 1010; |
||||||
|
@zindex-popover : 1030; |
||||||
|
@zindex-picker : 1050; |
||||||
|
@zindex-dropdown : 1050; |
||||||
|
@zindex-tooltip : 1060; |
||||||
|
|
||||||
|
// Animation |
||||||
|
@animation-duration-slow: .3s; // Modal |
||||||
|
@animation-duration-base: .2s; |
||||||
|
@animation-duration-fast: .1s; // Tooltip |
||||||
|
|
||||||
|
// Form |
||||||
|
// --- |
||||||
|
@label-required-color : @highlight-color; |
||||||
|
@label-color : @text-color; |
||||||
|
@form-item-margin-bottom : 24px; |
||||||
|
@form-item-trailing-colon : true; |
||||||
|
|
||||||
|
// Input |
||||||
|
// --- |
||||||
|
@input-height-base : 28px; |
||||||
|
@input-height-lg : 32px; |
||||||
|
@input-height-sm : 22px; |
||||||
|
@input-padding-horizontal : 7px; |
||||||
|
@input-padding-vertical-base : 4px; |
||||||
|
@input-padding-vertical-sm : 1px; |
||||||
|
@input-padding-vertical-lg : 6px; |
||||||
|
@input-placeholder-color : #ccc; |
||||||
|
@input-color : @text-color; |
||||||
|
@input-border-color : @border-color-base; |
||||||
|
@input-bg : #fff; |
||||||
|
@input-hover-border-color : @primary-color; |
||||||
|
@input-disabled-bg : @background-color-base; |
||||||
|
|
||||||
|
// Tooltip |
||||||
|
// --- |
||||||
|
//* Tooltip max width |
||||||
|
@tooltip-max-width: 250px; |
||||||
|
//** Tooltip text color |
||||||
|
@tooltip-color: #fff; |
||||||
|
//** Tooltip background color |
||||||
|
@tooltip-bg: rgba(64, 64, 64, .85); |
||||||
|
//** Tooltip arrow width |
||||||
|
@tooltip-arrow-width: 5px; |
||||||
|
//** Tooltip distance with trigger |
||||||
|
@tooltip-distance: @tooltip-arrow-width - 1 + 4; |
||||||
|
//** Tooltip arrow color |
||||||
|
@tooltip-arrow-color: @tooltip-bg; |
||||||
|
|
||||||
|
// Popover |
||||||
|
// --- |
||||||
|
//** Popover body background color |
||||||
|
@popover-bg: #fff; |
||||||
|
//** Popover maximum width |
||||||
|
@popover-min-width: 177px; |
||||||
|
//** Popover arrow width |
||||||
|
@popover-arrow-width: 4px; |
||||||
|
//** Popover arrow color |
||||||
|
@popover-arrow-color: @popover-bg; |
||||||
|
//** Popover outer arrow width |
||||||
|
@popover-arrow-outer-width: (@popover-arrow-width + 1); |
||||||
|
//** Popover outer arrow color |
||||||
|
@popover-arrow-outer-color: fadeout(@border-color-base, 30%); |
||||||
|
|
||||||
|
// Modal |
||||||
|
// -- |
||||||
|
@modal-mask-bg: rgba(55, 55, 55, 0.6); |
||||||
|
|
||||||
|
// Progress |
||||||
|
// -- |
||||||
|
@process-default-color: @primary-color; |
||||||
|
|
||||||
|
// Menu |
||||||
|
// --- |
||||||
|
@menu-dark-bg: @layout-header-background; |
||||||
|
@menu-dark-submenu-bg: #333; |
||||||
|
|
||||||
|
// Spin |
||||||
|
// --- |
||||||
|
@spin-dot-size-sm: 14px; |
||||||
|
@spin-dot-size: 20px; |
||||||
|
@spin-dot-size-lg: 32px; |
||||||
|
|
||||||
|
// Table |
||||||
|
// -- |
||||||
|
@table-header-bg: @background-color-base; |
||||||
|
@table-row-hover-bg: @primary-1; |
||||||
|
@table-padding-vertical: 16px; |
||||||
|
@table-padding-horizontal: 8px; |
||||||
|
|
||||||
|
// TimePicker |
||||||
|
// --- |
||||||
|
@time-picker-panel-column-width: 56px; |
||||||
|
@time-picker-panel-width: @time-picker-panel-column-width * 3; |
||||||
|
|
||||||
|
// Carousel |
||||||
|
// --- |
||||||
|
@carousel-dot-width: 16px; |
||||||
|
@carousel-dot-height: 3px; |
||||||
|
@carousel-dot-active-width: 24px; |
||||||
|
|
||||||
|
// Badge |
||||||
|
// --- |
||||||
|
@badge-height: 20px; |
||||||
|
@badge-dot-size: 8px; |
||||||
|
|
||||||
|
// Rate |
||||||
|
// --- |
||||||
|
@rate-star-color: #f5a623; |
||||||
|
@rate-star-bg: #e9e9e9; |
||||||
|
|
||||||
|
// Card |
||||||
|
// --- |
||||||
|
@card-head-height: 48px; |
||||||
|
@card-head-color: @heading-color; |
||||||
|
@card-head-background: @component-background; |
@ -1,183 +1,183 @@ |
|||||||
//字体库 |
//字体库 |
||||||
|
|
||||||
@font-cross: "\e600"; |
@font-cross: "e600"; |
||||||
@font-arrow-left: "\e601"; |
@font-arrow-left: "e601"; |
||||||
@font-arrow-right: "\e602"; |
@font-arrow-right: "e602"; |
||||||
@font-arrow-down: "\e603"; |
@font-arrow-down: "e603"; |
||||||
@font-search: "\e604"; |
@font-search: "e604"; |
||||||
|
|
||||||
@font-delete: "\e605"; |
@font-delete: "e605"; |
||||||
@font-dot: "\e606"; |
@font-dot: "e606"; |
||||||
@font-right-triangle: "\e607"; |
@font-right-triangle: "e607"; |
||||||
@font-down-triangle: "\e608"; |
@font-down-triangle: "e608"; |
||||||
@font-left-triangle: "\e6ae"; |
@font-left-triangle: "e6ae"; |
||||||
@font-top-triangle: "\e6ad"; |
@font-top-triangle: "e6ad"; |
||||||
|
|
||||||
@font-summary: "\e60e"; |
@font-summary: "e60e"; |
||||||
@font-axis: "\e626"; |
@font-axis: "e626"; |
||||||
@font-bar: "\e620"; |
@font-bar: "e620"; |
||||||
@font-accumulate-bar: "\e60a"; |
@font-accumulate-bar: "e60a"; |
||||||
@font-pie: "\e618"; |
@font-pie: "e618"; |
||||||
@font-map: "\e62c"; |
@font-map: "e62c"; |
||||||
@font-dashboard: "\e623"; |
@font-dashboard: "e623"; |
||||||
@font-doughnut: "\e624"; |
@font-doughnut: "e624"; |
||||||
@font-detail: "\e615"; |
@font-detail: "e615"; |
||||||
@font-more-cn: "\e60d"; |
@font-more-cn: "e60d"; |
||||||
@font-bubble: "\e62a"; |
@font-bubble: "e62a"; |
||||||
@font-scatter: "\e61d"; |
@font-scatter: "e61d"; |
||||||
@font-radar: "\e614"; |
@font-radar: "e614"; |
||||||
@font-content: "\e621"; |
@font-content: "e621"; |
||||||
@font-image: "\e68d"; |
@font-image: "e68d"; |
||||||
@font-web: "\e68c"; |
@font-web: "e68c"; |
||||||
|
|
||||||
@font-text: "\e622"; |
@font-text: "e622"; |
||||||
@font-number: "\e61f"; |
@font-number: "e61f"; |
||||||
@font-tree: "\e61e"; |
@font-tree: "e61e"; |
||||||
@font-date: "\e61b"; |
@font-date: "e61b"; |
||||||
@font-year: "\e628"; |
@font-year: "e628"; |
||||||
@font-year-month: "\e627"; |
@font-year-month: "e627"; |
||||||
@font-quarter: "\e629"; |
@font-quarter: "e629"; |
||||||
@font-YMD: "\e61c"; |
@font-YMD: "e61c"; |
||||||
@font-date-range: "\e616"; |
@font-date-range: "e616"; |
||||||
|
|
||||||
@font-and-or: "\e62b"; |
@font-and-or: "e62b"; |
||||||
@font-query-cn: "\e609"; |
@font-query-cn: "e609"; |
||||||
@font-reset-cn: "\e61a"; |
@font-reset-cn: "e61a"; |
||||||
@font-text-area: "\e622"; |
@font-text-area: "e622"; |
||||||
@font-reuse: "\e60b"; |
@font-reuse: "e60b"; |
||||||
|
|
||||||
@font-save: "\e617"; |
@font-save: "e617"; |
||||||
@font-undo: "\e619"; |
@font-undo: "e619"; |
||||||
@font-redo: "\e625"; |
@font-redo: "e625"; |
||||||
|
|
||||||
@font-style-set: "\e60c"; |
@font-style-set: "e60c"; |
||||||
@font-filter: "\e60f"; |
@font-filter: "e60f"; |
||||||
@font-copy: "\e610"; |
@font-copy: "e610"; |
||||||
@font-check-mark: "\e611"; |
@font-check-mark: "e611"; |
||||||
@font-dimension-from: "\e612"; |
@font-dimension-from: "e612"; |
||||||
@font-chart-type: "\e613"; |
@font-chart-type: "e613"; |
||||||
|
|
||||||
@font-share: "\e632"; |
@font-share: "e632"; |
||||||
@font-edit: "\e631"; |
@font-edit: "e631"; |
||||||
@font-up: "\e630"; |
@font-up: "e630"; |
||||||
@font-right: "\e62f"; |
@font-right: "e62f"; |
||||||
@font-down: "\e62d"; |
@font-down: "e62d"; |
||||||
@font-left: "\e62e"; |
@font-left: "e62e"; |
||||||
|
|
||||||
@font-less: "\e633"; |
@font-less: "e633"; |
||||||
@font-less-equal: "\e636"; |
@font-less-equal: "e636"; |
||||||
@font-less-arrow: "\e637"; |
@font-less-arrow: "e637"; |
||||||
@font-less-equal-arrow: "\e638"; |
@font-less-equal-arrow: "e638"; |
||||||
|
|
||||||
@font-asc: "\e63f"; |
@font-asc: "e63f"; |
||||||
@font-des: "\e63a"; |
@font-des: "e63a"; |
||||||
|
|
||||||
@font-add: "\e649"; |
@font-add: "e649"; |
||||||
|
|
||||||
@font-field-calc: "\e6a3"; |
@font-field-calc: "e6a3"; |
||||||
@font-field-string: "\e642"; |
@font-field-string: "e642"; |
||||||
@font-field-number: "\e641"; |
@font-field-number: "e641"; |
||||||
@font-field-date: "\e640"; |
@font-field-date: "e640"; |
||||||
|
|
||||||
@font-preview: "\e65f"; |
@font-preview: "e65f"; |
||||||
|
|
||||||
@font-setting: "\e678"; |
@font-setting: "e678"; |
||||||
@font-warning: "\e64e"; |
@font-warning: "e64e"; |
||||||
@font-linkage: "\e63c"; |
@font-linkage: "e63c"; |
||||||
@font-detail-set: "\e634"; |
@font-detail-set: "e634"; |
||||||
@font-export-excel: "\e635"; |
@font-export-excel: "e635"; |
||||||
|
|
||||||
@font-change: "\e660"; |
@font-change: "e660"; |
||||||
|
|
||||||
@font-sortable: "\e63b"; |
@font-sortable: "e63b"; |
||||||
@font-clear: "\e63d"; |
@font-clear: "e63d"; |
||||||
|
|
||||||
@font-bold: "\e64d"; |
@font-bold: "e64d"; |
||||||
@font-color: "\e69c"; |
@font-color: "e69c"; |
||||||
@font-italic: "\e656"; |
@font-italic: "e656"; |
||||||
@font-underline: "\e650"; |
@font-underline: "e650"; |
||||||
@font-background: "\e696"; |
@font-background: "e696"; |
||||||
@font-color-underline: "\e69d"; |
@font-color-underline: "e69d"; |
||||||
@font-align-left: "\e654"; |
@font-align-left: "e654"; |
||||||
@font-align-center: "\e64f"; |
@font-align-center: "e64f"; |
||||||
@font-align-right: "\e651"; |
@font-align-right: "e651"; |
||||||
|
|
||||||
@font-move: "\e65e"; |
@font-move: "e65e"; |
||||||
@font-share: "\e65a"; |
@font-share: "e65a"; |
||||||
@font-new-folder: "\e65d"; |
@font-new-folder: "e65d"; |
||||||
@font-letter: "\e659"; |
@font-letter: "e659"; |
||||||
@font-time: "\e658"; |
@font-time: "e658"; |
||||||
@font-file: "\e65b"; |
@font-file: "e65b"; |
||||||
@font-folder: "\e65c"; |
@font-folder: "e65c"; |
||||||
@font-rename: "\e687"; |
@font-rename: "e687"; |
||||||
@font-rename-edit: "\e670"; |
@font-rename-edit: "e670"; |
||||||
|
|
||||||
@font-source-table: "\e67b"; |
@font-source-table: "e67b"; |
||||||
@font-excel-table: "\e682"; |
@font-excel-table: "e682"; |
||||||
@font-etl-table: "\e680"; |
@font-etl-table: "e680"; |
||||||
@font-sql-table: "\e681"; |
@font-sql-table: "e681"; |
||||||
@font-key: "\e67d;"; |
@font-key: "e67d;"; |
||||||
@font-refresh: "\e683"; |
@font-refresh: "e683"; |
||||||
|
|
||||||
@font-tile-view: "\e685"; |
@font-tile-view: "e685"; |
||||||
@font-relation-view: "\e684"; |
@font-relation-view: "e684"; |
||||||
@font-test-link: "\e686"; |
@font-test-link: "e686"; |
||||||
|
|
||||||
@font-upload: "\e6ba"; |
@font-upload: "e6ba"; |
||||||
@font-image-size: "\e68b"; |
@font-image-size: "e68b"; |
||||||
@font-href: "\e688"; |
@font-href: "e688"; |
||||||
@font-shutdown: "\e689"; |
@font-shutdown: "e689"; |
||||||
|
|
||||||
@font-doubt: "\e69a"; |
@font-doubt: "e69a"; |
||||||
@font-new: "\e692"; |
@font-new: "e692"; |
||||||
@font-database: "\e693"; |
@font-database: "e693"; |
||||||
|
|
||||||
@font-series: "\e695"; |
@font-series: "e695"; |
||||||
@font-classify: "\e694"; |
@font-classify: "e694"; |
||||||
|
|
||||||
@font-solid-left: "\e6be"; |
@font-solid-left: "e6be"; |
||||||
@font-solid-right: "\e6bd"; |
@font-solid-right: "e6bd"; |
||||||
@font-solid-top: "\e6bc"; |
@font-solid-top: "e6bc"; |
||||||
@font-solid-bottom: "\e6bb"; |
@font-solid-bottom: "e6bb"; |
||||||
|
|
||||||
@font-no-sort-no-filter: "\e66a"; |
@font-no-sort-no-filter: "e66a"; |
||||||
@font-no-sort-filter: "\e66b"; |
@font-no-sort-filter: "e66b"; |
||||||
@font-descending-filter: "\e667"; |
@font-descending-filter: "e667"; |
||||||
@font-ascending-filter: "\e669"; |
@font-ascending-filter: "e669"; |
||||||
@font-descending-no-filter: "\e666"; |
@font-descending-no-filter: "e666"; |
||||||
@font-ascending-no-filter: "\e668"; |
@font-ascending-no-filter: "e668"; |
||||||
@font-no-sort: "\e66c"; |
@font-no-sort: "e66c"; |
||||||
|
|
||||||
@font-table-col-open: "\e672"; |
@font-table-col-open: "e672"; |
||||||
@font-table-row-open: "\e671"; |
@font-table-row-open: "e671"; |
||||||
|
|
||||||
@font-tip: "\e69e"; |
@font-tip: "e69e"; |
||||||
|
|
||||||
@font-mark-dot: "\e6a2"; |
@font-mark-dot: "e6a2"; |
||||||
@font-mark-up-arrow: "\e6a0"; |
@font-mark-up-arrow: "e6a0"; |
||||||
@font-mark-down-arrow: "\e6a1"; |
@font-mark-down-arrow: "e6a1"; |
||||||
@font-mark-equal: "\e69f"; |
@font-mark-equal: "e69f"; |
||||||
|
|
||||||
@font-pull-down: "\e6ab"; |
@font-pull-down: "e6ab"; |
||||||
@font-check: "\e64c"; |
@font-check: "e64c"; |
||||||
|
|
||||||
@font-hellip: "\e6ac"; |
@font-hellip: "e6ac"; |
||||||
|
|
||||||
@font-report-filter-open: "\e648"; |
@font-report-filter-open: "e648"; |
||||||
@font-report-filter-close: "\e645"; |
@font-report-filter-close: "e645"; |
||||||
|
|
||||||
@font-apply-hangout: "\e66d"; |
@font-apply-hangout: "e66d"; |
||||||
@font-hangout: "\e64b"; |
@font-hangout: "e64b"; |
||||||
|
|
||||||
@font-real-time: "\e6af"; |
@font-real-time: "e6af"; |
||||||
|
|
||||||
@font-info: "\e66e"; |
@font-info: "e66e"; |
||||||
|
|
||||||
@font-cancel-share: "\e6b5"; |
@font-cancel-share: "e6b5"; |
||||||
@font-check-box-selected: "\e6b3"; |
@font-check-box-selected: "e6b3"; |
||||||
@font-check-box-not-selected: "\e6b2"; |
@font-check-box-not-selected: "e6b2"; |
||||||
|
|
||||||
@font-recover-chart: "\e6b4"; |
@font-recover-chart: "e6b4"; |
||||||
@font-check-box-not-selected: "\e6b2"; |
@font-check-box-not-selected: "e6b2"; |
||||||
|
|
||||||
@font-solid-setting: "\e697"; |
@font-solid-setting: "e697"; |
||||||
|
Loading…
Reference in new issue