Comparing version 1.0.0-beta.21 to 1.0.0-beta.22
@@ -21,2 +21,7 @@ { | ||
}, | ||
"keep-alive": { | ||
"type": "Boolean", | ||
"desc": "Equivalent to using Vue's native <keep-alive> component on the content", | ||
"category": "behavior" | ||
}, | ||
"animated": { | ||
@@ -23,0 +28,0 @@ "type": "Boolean", |
@@ -55,2 +55,7 @@ { | ||
}, | ||
"emit-immediately": { | ||
"type": "Boolean", | ||
"desc": "Emit model when user browses month and year too", | ||
"category": "model" | ||
}, | ||
"calendar": { | ||
@@ -154,7 +159,31 @@ "type": "String", | ||
"required": true | ||
}, | ||
"reason": { | ||
"type": "String", | ||
"desc": "Reason of the user interaction (what was picked)", | ||
"values": [ | ||
"year", | ||
"month", | ||
"day", | ||
"today" | ||
] | ||
}, | ||
"details": { | ||
"type": "Object", | ||
"desc": "Object of properties on the new model", | ||
"definition": { | ||
"year": { | ||
"type": "Number" | ||
}, | ||
"month": { | ||
"type": "Number" | ||
}, | ||
"day": { | ||
"type": "Number" | ||
} | ||
} | ||
} | ||
}, | ||
"type": "String" | ||
} | ||
} | ||
} | ||
} |
@@ -34,3 +34,3 @@ { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -54,3 +54,3 @@ "color": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -64,4 +64,18 @@ "caption": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
"prefix": { | ||
"type": [ | ||
"String", | ||
"Number" | ||
], | ||
"desc": "Step's prefix (max 2 characters) which replaces the icon if step does not has error, is being edited or is marked as done", | ||
"examples": [ | ||
"1", | ||
"2", | ||
"A", | ||
"B" | ||
], | ||
"category": "header" | ||
}, | ||
"done-icon": { | ||
@@ -76,3 +90,3 @@ "type": "String", | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -86,3 +100,3 @@ "done-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -98,3 +112,3 @@ "active-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -108,3 +122,3 @@ "active-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -120,3 +134,3 @@ "error-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -130,3 +144,3 @@ "error-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -133,0 +147,0 @@ "header-nav": { |
@@ -17,2 +17,7 @@ { | ||
}, | ||
"keep-alive": { | ||
"type": "Boolean", | ||
"desc": "Equivalent to using Vue's native <keep-alive> component on the content", | ||
"category": "behavior" | ||
}, | ||
"animated": { | ||
@@ -71,3 +76,3 @@ "type": "Boolean", | ||
"desc": "Put Stepper in vertical mode (instead of horizontal by default)", | ||
"category": "content" | ||
"category": "behavior" | ||
}, | ||
@@ -77,3 +82,3 @@ "alternative-labels": { | ||
"desc": "Use alternative labels (applies only to horizontal stepper)", | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -88,3 +93,3 @@ "header-nav": { | ||
"desc": "Hide header labels on narrow windows", | ||
"category": "content|behavior" | ||
"category": "header|behavior" | ||
}, | ||
@@ -100,3 +105,3 @@ "inactive-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -110,3 +115,3 @@ "inactive-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -122,3 +127,3 @@ "done-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -132,3 +137,3 @@ "done-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -144,3 +149,3 @@ "active-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -154,3 +159,3 @@ "active-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
}, | ||
@@ -166,3 +171,3 @@ "error-icon": { | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -176,3 +181,3 @@ "error-color": { | ||
], | ||
"category": "style" | ||
"category": "header" | ||
} | ||
@@ -179,0 +184,0 @@ }, |
@@ -17,2 +17,7 @@ { | ||
}, | ||
"keep-alive": { | ||
"type": "Boolean", | ||
"desc": "Equivalent to using Vue's native <keep-alive> component on the content", | ||
"category": "behavior" | ||
}, | ||
"animated": { | ||
@@ -19,0 +24,0 @@ "type": "Boolean", |
@@ -137,6 +137,5 @@ { | ||
} | ||
}, | ||
"type": "String" | ||
} | ||
} | ||
} | ||
} |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
/*! | ||
* Quasar Framework v1.0.0-beta.21 | ||
* Quasar Framework v1.0.0-beta.22 | ||
* (c) 2016-present Razvan Stoenescu | ||
@@ -4,0 +4,0 @@ * Released under the MIT License. |
@@ -445,2 +445,3 @@ import Vue, { VueConstructor } from 'vue' | ||
value? : any | ||
keepAlive? : boolean | ||
animated? : boolean | ||
@@ -568,2 +569,3 @@ infinite? : boolean | ||
disable? : boolean | ||
emitImmediately? : boolean | ||
calendar? : string | ||
@@ -1409,2 +1411,3 @@ defaultYearMonth? : string | ||
caption? : string | ||
prefix? : string | number | ||
doneIcon? : string | ||
@@ -1423,2 +1426,3 @@ doneColor? : string | ||
value? : any | ||
keepAlive? : boolean | ||
animated? : boolean | ||
@@ -1459,2 +1463,3 @@ infinite? : boolean | ||
value? : any | ||
keepAlive? : boolean | ||
animated? : boolean | ||
@@ -1461,0 +1466,0 @@ infinite? : boolean |
@@ -218,2 +218,3 @@ { | ||
"value", | ||
"keep-alive", | ||
"animated", | ||
@@ -350,2 +351,3 @@ "infinite", | ||
"disable", | ||
"emit-immediately", | ||
"calendar", | ||
@@ -1253,2 +1255,3 @@ "default-year-month", | ||
"caption", | ||
"prefix", | ||
"done-icon", | ||
@@ -1269,2 +1272,3 @@ "done-color", | ||
"value", | ||
"keep-alive", | ||
"animated", | ||
@@ -1307,2 +1311,3 @@ "infinite", | ||
"value", | ||
"keep-alive", | ||
"animated", | ||
@@ -1309,0 +1314,0 @@ "infinite", |
{ | ||
"name": "quasar", | ||
"version": "1.0.0-beta.21", | ||
"version": "1.0.0-beta.22", | ||
"description": "High performance, Material Design 2, full front end stack with Vue.js -- build SPA, SSR, PWA, Hybrid Mobile Apps and Electron apps, all simultaneously using the same codebase", | ||
@@ -55,3 +55,3 @@ "module": "src/index.esm.js", | ||
"@quasar/babel-preset-app": "^1.0.2", | ||
"@quasar/extras": "^1.1.1", | ||
"@quasar/extras": "^1.1.2", | ||
"autoprefixer": "^9.5.0", | ||
@@ -61,3 +61,3 @@ "babel-eslint": "^10.0.1", | ||
"babel-preset-es2015-rollup": "^3.0.0", | ||
"chokidar": "^2.1.5", | ||
"chokidar": "^3.0.0", | ||
"css-loader": "^2.1.1", | ||
@@ -70,3 +70,3 @@ "cssnano": "^4.1.10", | ||
"eslint-plugin-import": "^2.13.0", | ||
"eslint-plugin-node": "^8.0.1", | ||
"eslint-plugin-node": "^9.0.1", | ||
"eslint-plugin-promise": "^4.0.1", | ||
@@ -81,7 +81,7 @@ "eslint-plugin-standard": "^4.0.0", | ||
"memory-fs": "^0.4.1", | ||
"opn": "^5.5.0", | ||
"open": "^6.2.0", | ||
"postcss-loader": "^3.0.0", | ||
"postcss-rtl": "^1.3.3", | ||
"rimraf": "^2.6.3", | ||
"rollup": "^1.7.3", | ||
"rollup": "^1.11.3", | ||
"rollup-plugin-buble": "^0.19.6", | ||
@@ -102,3 +102,3 @@ "rollup-plugin-json": "^4.0.0", | ||
"webpack": "^4.29.6", | ||
"webpack-chain": "^5.2.3", | ||
"webpack-chain": "^6.0.0", | ||
"webpack-dev-middleware": "^3.6.1", | ||
@@ -105,0 +105,0 @@ "webpack-dev-server": "^3.2.1", |
@@ -18,2 +18,4 @@ import Vue from 'vue' | ||
props: { | ||
emitImmediately: Boolean, | ||
defaultYearMonth: { | ||
@@ -154,5 +156,3 @@ type: String, | ||
daysInMonth () { | ||
return this.calendar !== 'persian' | ||
? (new Date(this.innerModel.year, this.innerModel.month, 0)).getDate() | ||
: jalaaliMonthLength(this.innerModel.year, this.innerModel.month) | ||
return this.__getDaysInMonth(this.innerModel) | ||
}, | ||
@@ -285,4 +285,4 @@ | ||
const d = this.defaultYearMonth.split('/') | ||
year = d[0] | ||
month = d[1] | ||
year = parseInt(d[0], 10) | ||
month = parseInt(d[1], 10) | ||
} | ||
@@ -301,3 +301,3 @@ else { | ||
string = year + '/' + month + '/' + day | ||
string = this.__padYear(year) + '/' + this.__pad(month) + '/' + this.__pad(day) | ||
} | ||
@@ -636,2 +636,8 @@ else { | ||
__getDaysInMonth (obj) { | ||
return this.calendar !== 'persian' | ||
? (new Date(obj.year, obj.month, 0)).getDate() | ||
: jalaaliMonthLength(obj.year, obj.month) | ||
}, | ||
__goToMonth (offset) { | ||
@@ -656,2 +662,4 @@ let | ||
this.innerModel.month = month | ||
this.emitImmediately === true && this.__updateValue('month', {}) | ||
}, | ||
@@ -662,6 +670,8 @@ | ||
this.innerModel.year = Number(this.innerModel.year) + offset | ||
this.emitImmediately === true && this.__updateValue('year', {}) | ||
}, | ||
__setYear (year) { | ||
this.__updateValue({ year }) | ||
this.innerModel.year = year | ||
this.emitImmediately === true && this.__updateValue('year', { year }) | ||
this.view = 'Calendar' | ||
@@ -671,3 +681,4 @@ }, | ||
__setMonth (month) { | ||
this.__updateValue({ month }) | ||
this.innerModel.month = month | ||
this.emitImmediately === true && this.__updateValue('month', { month }) | ||
this.view = 'Calendar' | ||
@@ -677,11 +688,11 @@ }, | ||
__setDay (day) { | ||
this.__updateValue({ day }) | ||
this.__updateValue('day', { day }) | ||
}, | ||
__setToday () { | ||
this.__updateValue({ ...this.today }) | ||
this.__updateValue('today', { ...this.today }) | ||
this.view = 'Calendar' | ||
}, | ||
__updateValue (date) { | ||
__updateValue (reason, date) { | ||
if (date.year === void 0) { | ||
@@ -693,4 +704,9 @@ date.year = this.innerModel.year | ||
} | ||
if (date.day === void 0) { | ||
date.day = Math.min(this.innerModel.day, this.daysInMonth) | ||
if (date.day === void 0 || (this.emitImmediately === true && reason !== 'day')) { | ||
date.day = this.innerModel.day | ||
const maxDay = this.emitImmediately === true | ||
? this.__getDaysInMonth(date) | ||
: this.daysInMonth | ||
date.day = Math.min(date.day, maxDay) | ||
} | ||
@@ -703,3 +719,3 @@ | ||
if (val !== this.value) { | ||
this.$emit('input', val) | ||
this.$emit('input', val, reason, date) | ||
} | ||
@@ -706,0 +722,0 @@ } |
@@ -18,2 +18,8 @@ { | ||
"emit-immediately": { | ||
"type": "Boolean", | ||
"desc": "Emit model when user browses month and year too", | ||
"category": "model" | ||
}, | ||
"calendar": { | ||
@@ -102,6 +108,25 @@ "type": "String", | ||
"extends": "input", | ||
"type": "String", | ||
"params": { | ||
"value": { | ||
"type": "String" | ||
}, | ||
"reason": { | ||
"type": "String", | ||
"desc": "Reason of the user interaction (what was picked)", | ||
"values": [ "year", "month", "day", "today" ] | ||
}, | ||
"details": { | ||
"type": "Object", | ||
"desc": "Object of properties on the new model", | ||
"definition": { | ||
"year": { | ||
"type": "Number" | ||
}, | ||
"month": { | ||
"type": "Number" | ||
}, | ||
"day": { | ||
"type": "Number" | ||
} | ||
} | ||
} | ||
@@ -108,0 +133,0 @@ } |
@@ -95,3 +95,2 @@ { | ||
"extends": "input", | ||
"type": "String", | ||
"params": { | ||
@@ -98,0 +97,0 @@ "value": { |
@@ -131,3 +131,3 @@ import Vue from 'vue' | ||
'q-field--with-bottom': this.hideBottomSpace !== true && this.hasBottom, | ||
'q-field--with-bottom': this.hideBottomSpace !== true && this.hasBottom === true, | ||
'q-field--error': this.hasError, | ||
@@ -300,3 +300,3 @@ | ||
__getBottom (h) { | ||
if (this.hideBottomSpace !== true && this.hasBottom !== true) { return } | ||
if (this.hideBottomSpace === true && this.hasBottom !== true) { return } | ||
@@ -328,3 +328,3 @@ let msg, key | ||
if (this.hideBottomSpace === true && hasCounter === false && !msg) { | ||
if (this.hideBottomSpace === true && hasCounter === false && msg === void 0) { | ||
return | ||
@@ -331,0 +331,0 @@ } |
@@ -767,3 +767,3 @@ import Vue from 'vue' | ||
(this.$refs.control !== void 0 && this.$refs.control.contains(document.activeElement) !== false) || | ||
((menu = this.__getMenuContentEl()) !== void 0 && menu.contains(document.activeElement) !== false) | ||
((menu = this.__getMenuContentEl()) !== void 0 && menu.contains !== void 0 && menu.contains(document.activeElement) !== false) | ||
) | ||
@@ -770,0 +770,0 @@ ) |
@@ -9,2 +9,16 @@ import Vue from 'vue' | ||
const StepWrapper = Vue.extend({ | ||
name: 'QStepWrapper', | ||
render (h) { | ||
return h('div', { | ||
staticClass: 'q-stepper__step-content' | ||
}, [ | ||
h('div', { | ||
staticClass: 'q-stepper__step-inner' | ||
}, slot(this, 'default')) | ||
]) | ||
} | ||
}) | ||
export default Vue.extend({ | ||
@@ -31,2 +45,3 @@ name: 'QStep', | ||
caption: String, | ||
prefix: [ String, Number ], | ||
@@ -55,30 +70,38 @@ doneIcon: String, | ||
render (h) { | ||
const content = this.isActive | ||
? h('div', { | ||
staticClass: 'q-stepper__step-content' | ||
}, [ | ||
h('div', { | ||
staticClass: 'q-stepper__step-inner' | ||
}, slot(this, 'default')) | ||
]) | ||
: null | ||
const vertical = this.stepper.vertical | ||
const content = vertical === true && this.stepper.keepAlive === true | ||
? h( | ||
'keep-alive', | ||
this.isActive === true | ||
? [ h(StepWrapper, { key: this.name }, slot(this, 'default')) ] | ||
: void 0 | ||
) | ||
: ( | ||
vertical !== true || this.isActive === true | ||
? StepWrapper.options.render.call(this, h) | ||
: void 0 | ||
) | ||
return h('div', { | ||
staticClass: 'q-stepper__step', | ||
on: this.$listeners | ||
}, [ | ||
this.stepper.vertical | ||
? h(StepHeader, { | ||
props: { | ||
stepper: this.stepper, | ||
step: this | ||
} | ||
}) | ||
: null, | ||
return h( | ||
'div', | ||
{ | ||
staticClass: 'q-stepper__step', | ||
on: this.$listeners | ||
}, | ||
vertical === true | ||
? [ | ||
h(StepHeader, { | ||
props: { | ||
stepper: this.stepper, | ||
step: this | ||
} | ||
}), | ||
this.stepper.vertical && this.stepper.animated | ||
? h(QSlideTransition, [ content ]) | ||
: content | ||
]) | ||
this.stepper.animated === true | ||
? h(QSlideTransition, [ content ]) | ||
: content | ||
] | ||
: [ content ] | ||
) | ||
} | ||
}) |
@@ -10,3 +10,4 @@ { | ||
"icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
@@ -25,3 +26,3 @@ | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -35,27 +36,42 @@ | ||
], | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
"prefix": { | ||
"type": [ "String", "Number" ], | ||
"desc": "Step's prefix (max 2 characters) which replaces the icon if step does not has error, is being edited or is marked as done", | ||
"examples": [ | ||
"1", "2", "A", "B" | ||
], | ||
"category": "header" | ||
}, | ||
"done-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"done-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
"active-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"active-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
"error-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"error-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
@@ -62,0 +78,0 @@ |
@@ -24,3 +24,3 @@ { | ||
"desc": "Put Stepper in vertical mode (instead of horizontal by default)", | ||
"category": "content" | ||
"category": "behavior" | ||
}, | ||
@@ -31,3 +31,3 @@ | ||
"desc": "Use alternative labels (applies only to horizontal stepper)", | ||
"category": "content" | ||
"category": "header" | ||
}, | ||
@@ -44,35 +44,43 @@ | ||
"desc": "Hide header labels on narrow windows", | ||
"category": "content|behavior" | ||
"category": "header|behavior" | ||
}, | ||
"inactive-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"inactive-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
"done-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"done-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
"active-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"active-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
}, | ||
"error-icon": { | ||
"extends": "icon" | ||
"extends": "icon", | ||
"category": "header" | ||
}, | ||
"error-color": { | ||
"extends": "color" | ||
"extends": "color", | ||
"category": "header" | ||
} | ||
@@ -79,0 +87,0 @@ }, |
@@ -46,2 +46,6 @@ import Vue from 'vue' | ||
hasPrefix () { | ||
return this.step.prefix && !this.isActive && !this.isError && !this.isDone | ||
}, | ||
icon () { | ||
@@ -120,3 +124,5 @@ if (this.isActive) { | ||
h('span', { staticClass: 'row flex-center' }, [ | ||
h(QIcon, { props: { name: this.icon } }) | ||
this.hasPrefix === true | ||
? this.step.prefix | ||
: h(QIcon, { props: { name: this.icon } }) | ||
]) | ||
@@ -123,0 +129,0 @@ ]), |
@@ -55,3 +55,6 @@ import Vue from 'vue' | ||
checkFunction(current, route) && this.__activateRoute({ ...params, redirected }) | ||
redirected === true && checkFunction(current, location) && this.__activateRoute(params) | ||
redirected === true && checkFunction(current, { | ||
path: route.redirectedFrom, | ||
...location | ||
}) && this.__activateRoute(params) | ||
this.isActive && this.__activateRoute() | ||
@@ -58,0 +61,0 @@ } |
@@ -10,2 +10,8 @@ { | ||
"keep-alive": { | ||
"type": "Boolean", | ||
"desc": "Equivalent to using Vue's native <keep-alive> component on the content", | ||
"category": "behavior" | ||
}, | ||
"animated": { | ||
@@ -12,0 +18,0 @@ "type": "Boolean", |
@@ -0,4 +1,24 @@ | ||
import Vue from 'vue' | ||
import TouchSwipe from '../directives/TouchSwipe.js' | ||
import { stop } from '../utils/event.js' | ||
import slot from '../utils/slot.js' | ||
const PanelWrapper = Vue.extend({ | ||
name: 'QTabPanelWrapper', | ||
render (h) { | ||
return h('div', { | ||
staticClass: 'q-panel scroll', | ||
attrs: { role: 'tabpanel' }, | ||
// stop propagation of content emitted @input | ||
// which would tamper with Panel's model | ||
on: { | ||
input: stop | ||
} | ||
}, slot(this, 'default')) | ||
} | ||
}) | ||
export const PanelParentMixin = { | ||
@@ -25,3 +45,5 @@ directives: { | ||
default: 'slide-left' | ||
} | ||
}, | ||
keepAlive: Boolean | ||
}, | ||
@@ -59,16 +81,10 @@ | ||
value (newVal, oldVal) { | ||
const | ||
validNewPanel = this.__isValidPanelName(newVal), | ||
index = validNewPanel === true | ||
? this.__getPanelIndex(newVal) | ||
: -1 | ||
const index = this.__isValidPanelName(newVal) === true | ||
? this.__getPanelIndex(newVal) | ||
: -1 | ||
if (this.animated) { | ||
this.panelTransition = validNewPanel === true && this.panelIndex !== -1 | ||
? 'q-transition--' + ( | ||
index < this.__getPanelIndex(oldVal) | ||
? this.transitionPrev | ||
: this.transitionNext | ||
) | ||
: null | ||
if (this.__forcedPanelTransition !== true) { | ||
this.__updatePanelTransition( | ||
index === -1 ? 0 : (index < this.__getPanelIndex(oldVal) ? -1 : 1) | ||
) | ||
} | ||
@@ -130,2 +146,12 @@ | ||
__updatePanelTransition (direction) { | ||
const val = direction !== 0 && this.animated === true && this.panelIndex !== -1 | ||
? 'q-transition--' + (direction === -1 ? this.transitionPrev : this.transitionNext) | ||
: null | ||
if (this.panelTransition !== val) { | ||
this.panelTransition = val | ||
} | ||
}, | ||
__go (direction, startIndex = this.panelIndex) { | ||
@@ -143,3 +169,8 @@ let index = startIndex + direction | ||
) { | ||
this.__updatePanelTransition(direction) | ||
this.__forcedPanelTransition = true | ||
this.$emit('input', slots[index].componentOptions.propsData.name) | ||
setTimeout(() => { | ||
this.__forcedPanelTransition = false | ||
}) | ||
return | ||
@@ -151,3 +182,3 @@ } | ||
if (this.infinite && slots.length > 0 && startIndex !== -1 && startIndex !== slots.length) { | ||
if (this.infinite === true && slots.length > 0 && startIndex !== -1 && startIndex !== slots.length) { | ||
this.__go(direction, direction === -1 ? slots.length : -1) | ||
@@ -180,12 +211,20 @@ } | ||
const content = [ | ||
h('div', { | ||
key: this.contentKey, | ||
staticClass: 'q-panel scroll', | ||
attrs: { role: 'tabpanel' }, | ||
// stop propagation of content emitted @input | ||
// which would tamper with Panel's model | ||
on: { input: stop } | ||
}, [ panel ]) | ||
] | ||
const content = this.keepAlive === true | ||
? [ | ||
h('keep-alive', [ | ||
h(PanelWrapper, { | ||
key: this.contentKey | ||
}, [ panel ]) | ||
]) | ||
] | ||
: [ | ||
h('div', { | ||
staticClass: 'q-panel scroll', | ||
key: this.contentKey, | ||
attrs: { role: 'tabpanel' }, | ||
// stop propagation of content emitted @input | ||
// which would tamper with Panel's model | ||
on: { input: stop } | ||
}, [ panel ]) | ||
] | ||
@@ -192,0 +231,0 @@ return this.animated === true |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
5552132
122102