Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 8ecf17c

Browse files
Merge remote-tracking branch 'origin/develop' into develop
2 parents 9974dd5 + c1a6538 commit 8ecf17c

File tree

6 files changed

+36
-8
lines changed

6 files changed

+36
-8
lines changed

‎bower.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,10 @@
2626
},
2727
"devDependencies": {
2828
"angular": "1.5.5",
29-
"angular-animate": "1.4",
29+
"angular-animate": "1.5.5",
3030
"angular-material": "1.1.1",
31-
"angular-sanitize": "1.4",
31+
"angular-sanitize": "1.5.5",
32+
"angular-messages": "1.5.5",
3233
"angular-ui-ace": "~0.2.3",
3334
"moment": "~2.10.6"
3435
}

‎examples/material-example.html

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,7 @@ <h3>Schema</h3>
163163
<script src="../bower_components/angular-aria/angular-aria.js"></script>
164164
<script src="../bower_components/angular-animate/angular-animate.js"></script>
165165
<script src="../bower_components/angular-material/angular-material.js"></script>
166+
<script src="../bower_components/angular-messages/angular-messages.js"></script>
166167
<script type="text/javascript" src="../bower_components/angular-sanitize/angular-sanitize.min.js"></script>
167168
<!-- <script type="text/javascript" src="../bower_components/angular-ui-sortable/sortable.js"></script>
168169
-->
@@ -171,7 +172,7 @@ <h3>Schema</h3>
171172

172173
<script type="text/javascript">
173174
// @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
174-
var app = angular.module('test', ['schemaForm', 'ngMaterial', 'ui.ace'])
175+
var app = angular.module('test', ['schemaForm', 'ngMaterial', 'ui.ace','ngMessages'])
175176

176177
app.config(function($mdThemingProvider, $mdDateLocaleProvider) {
177178
$mdThemingProvider.setDefaultTheme('default');

‎src/checkbox.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
sf-changed="form"
66
ng-disabled="form.readonly"
77
schema-validate="form"
8+
sf-material-class="md-checked"
89
class="{{::form.fieldHtmlClass}}"
910
name="{{::form.key|sfCamelKey}}"
1011
aria-label="{{::form.title}}">

‎src/default.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<md-input-container class="schema-form-{{::form.type}} {{::form.htmlClass}}"
2-
ng-class="{'md-input-has-value': model['{{form.key.join('\'][\'')}}'], 'has-error': hasError(), 'has-success': hasSuccess(), 'has-feedback': form.feedback !== false}"
3-
sf-messages sf-layout>
2+
ng-class="{'has-error': hasError(), 'has-success': hasSuccess(), 'has-feedback': form.feedback !== false}"
3+
sf-messages sf-layoutsf-material-class="md-input-has-value">
44
<label ng-show="showTitle()" for="{{::form.key|sfCamelKey}}">{{::form.title}}</label>
55
<input sf-field-model
66
ng-show="::form.key"

‎src/material-class.js

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
angular.module('schemaForm').directive('sfMaterialClass', function($compile, $timeout) {
2+
return {
3+
restrict : 'A',
4+
scope : false,
5+
link : function(scope, element, attrs, ngModel) {
6+
function reduceHelper(obj, i) {return obj[i]}
7+
8+
var modelValue;
9+
try {
10+
modelValue = scope.form.key.reduce(reduceHelper, scope.model);
11+
} catch (e) {
12+
modelValue = undefined;
13+
}
14+
15+
// Element class is not set in DOM if executed immediately.
16+
// I don't understand exactly why but it's probably related to other directive job.
17+
$timeout(function() {
18+
if (modelValue !== null && typeof modelValue !== 'undefined' && modelValue !== false) {
19+
element.addClass(attrs.sfMaterialClass);
20+
}
21+
}, 0);
22+
}
23+
};
24+
});

‎src/material-decorator.js

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@
7474
};
7575

7676
function sfMessagesNodeHandler() {
77-
var html = '<div ng-if="ngModel.$invalid" ng-messages="ngModel.$error"><div sf-message ng-message></div></div>';
77+
var html = '<div ng-if="ngModel.$invalid" ng-messages="{dummy: true}" class="ng-active">' +
78+
'<div ng-message="dummy" class="md-input-message-animation" sf-message="form.description"></div></div>';
7879
var div = document.createElement('div');
7980
div.innerHTML = html;
8081
return div.firstChild;
@@ -83,7 +84,7 @@
8384
function sfMessagesBuilder(args) {
8485
var messagesDiv = args.fieldFrag.querySelector('[sf-messages]');
8586
if (messagesDiv && sfMessagesNode) {
86-
var child = sfMessagesNode.cloneNode();
87+
var child = sfMessagesNode.cloneNode(true);
8788
messagesDiv.appendChild(child);
8889
}
8990
};
@@ -169,7 +170,7 @@
169170
var minDate = args.form.minimum || false;
170171
var maxDate = args.form.maximum || false;
171172
if (minDate) {
172-
mdDatepickerFrag.setAttribute('md-max-date', minDate);
173+
mdDatepickerFrag.setAttribute('md-min-date', minDate);
173174
}
174175
if (maxDate) {
175176
mdDatepickerFrag.setAttribute('md-max-date', maxDate);

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /