ignite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From akuznet...@apache.org
Subject [22/51] [abbrv] ignite git commit: IGNITE-843 changed case of dir
Date Tue, 09 Feb 2016 09:26:21 GMT
IGNITE-843 changed case of dir


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a84f6b6a
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a84f6b6a
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a84f6b6a

Branch: refs/heads/ignite-843-rc3
Commit: a84f6b6a61539f8a588b5291b9d386b72f3e8f46
Parents: e874214
Author: Andrey <anovikov@gridgain.com>
Authored: Mon Feb 8 17:10:46 2016 +0700
Committer: Andrey <anovikov@gridgain.com>
Committed: Mon Feb 8 17:10:46 2016 +0700

----------------------------------------------------------------------
 .../js/app/modules/Form/field/down.directive.js | 45 ----------
 .../modules/Form/field/dropdown.directive.js    | 64 --------------
 .../js/app/modules/Form/field/dropdown.jade     | 51 -----------
 .../main/js/app/modules/Form/field/field.css    |  6 --
 .../app/modules/Form/field/field.directive.js   | 43 ---------
 .../main/js/app/modules/Form/field/field.jade   | 26 ------
 .../field/form-control-feedback.directive.js    | 36 --------
 .../Form/field/input/autofocus.directive.js     | 30 -------
 .../Form/field/input/checkbox.directive.js      | 60 -------------
 .../app/modules/Form/field/input/checkbox.jade  | 28 ------
 .../Form/field/input/datalist.directive.js      | 57 ------------
 .../app/modules/Form/field/input/datalist.jade  | 33 -------
 .../Form/field/input/number.directive.js        | 61 -------------
 .../js/app/modules/Form/field/input/number.jade | 44 ----------
 .../js/app/modules/Form/field/input/text.css    | 24 -----
 .../modules/Form/field/input/text.directive.js  | 84 ------------------
 .../js/app/modules/Form/field/input/text.jade   | 38 --------
 .../app/modules/Form/field/label.directive.js   | 41 ---------
 .../app/modules/Form/field/tooltip.directive.js | 44 ----------
 .../js/app/modules/Form/field/up.directive.js   | 46 ----------
 .../src/main/js/app/modules/Form/form.module.js | 92 --------------------
 .../js/app/modules/Form/group/add.directive.js  | 40 ---------
 .../app/modules/Form/group/group.directive.js   | 72 ---------------
 .../main/js/app/modules/Form/group/group.jade   | 21 -----
 .../app/modules/Form/group/table.directive.js   | 29 ------
 .../main/js/app/modules/Form/group/table.jade   | 17 ----
 .../app/modules/Form/group/tooltip.directive.js | 40 ---------
 .../app/modules/Form/panel/chevron.directive.js | 53 -----------
 .../app/modules/Form/panel/panel.directive.js   | 37 --------
 .../app/modules/Form/panel/revert.directive.js  | 52 -----------
 .../validator/java-built-in-class.directive.js  | 31 -------
 .../Form/validator/java-identifier.directive.js | 31 -------
 .../Form/validator/java-keywords.directive.js   | 40 ---------
 .../validator/java-package-name.directive.js    | 31 -------
 .../java-package-specified.directive.js         | 33 -------
 .../modules/Form/validator/unique.directive.js  | 47 ----------
 .../js/app/modules/form/field/down.directive.js | 45 ++++++++++
 .../modules/form/field/dropdown.directive.js    | 64 ++++++++++++++
 .../js/app/modules/form/field/dropdown.jade     | 51 +++++++++++
 .../main/js/app/modules/form/field/field.css    |  6 ++
 .../app/modules/form/field/field.directive.js   | 43 +++++++++
 .../main/js/app/modules/form/field/field.jade   | 26 ++++++
 .../field/form-control-feedback.directive.js    | 36 ++++++++
 .../form/field/input/autofocus.directive.js     | 30 +++++++
 .../form/field/input/checkbox.directive.js      | 60 +++++++++++++
 .../app/modules/form/field/input/checkbox.jade  | 28 ++++++
 .../form/field/input/datalist.directive.js      | 57 ++++++++++++
 .../app/modules/form/field/input/datalist.jade  | 33 +++++++
 .../form/field/input/number.directive.js        | 61 +++++++++++++
 .../js/app/modules/form/field/input/number.jade | 44 ++++++++++
 .../js/app/modules/form/field/input/text.css    | 24 +++++
 .../modules/form/field/input/text.directive.js  | 84 ++++++++++++++++++
 .../js/app/modules/form/field/input/text.jade   | 38 ++++++++
 .../app/modules/form/field/label.directive.js   | 41 +++++++++
 .../app/modules/form/field/tooltip.directive.js | 44 ++++++++++
 .../js/app/modules/form/field/up.directive.js   | 46 ++++++++++
 .../src/main/js/app/modules/form/form.module.js | 92 ++++++++++++++++++++
 .../js/app/modules/form/group/add.directive.js  | 40 +++++++++
 .../app/modules/form/group/group.directive.js   | 72 +++++++++++++++
 .../main/js/app/modules/form/group/group.jade   | 21 +++++
 .../app/modules/form/group/table.directive.js   | 29 ++++++
 .../main/js/app/modules/form/group/table.jade   | 17 ++++
 .../app/modules/form/group/tooltip.directive.js | 40 +++++++++
 .../app/modules/form/panel/chevron.directive.js | 53 +++++++++++
 .../app/modules/form/panel/panel.directive.js   | 37 ++++++++
 .../app/modules/form/panel/revert.directive.js  | 52 +++++++++++
 .../validator/java-built-in-class.directive.js  | 31 +++++++
 .../form/validator/java-identifier.directive.js | 31 +++++++
 .../form/validator/java-keywords.directive.js   | 40 +++++++++
 .../validator/java-package-name.directive.js    | 31 +++++++
 .../java-package-specified.directive.js         | 33 +++++++
 .../modules/form/validator/unique.directive.js  | 47 ++++++++++
 72 files changed, 1527 insertions(+), 1527 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/down.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/down.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/down.directive.js
deleted file mode 100644
index 0f21af2..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/down.directive.js
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-
-const template = `<i class='tipField fa fa-arrow-down ng-scope' ng-click='down()'></i>`;
-
-export default ['igniteFormFieldDown', ['$tooltip', ($tooltip) => {
-    const link = (scope, $element) => {
-        $tooltip($element, { title: 'Move item down' });
-
-        scope.down = () => {
-            const i = scope.models.indexOf(scope.model);
-            scope.models.splice(i, 1);
-            scope.models.splice(i + 1, 0, scope.model);
-        };
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            model: '=ngModel',
-            models: '=models'
-        },
-        template,
-        link,
-        replace: true,
-        transclude: true,
-        require: '^form'
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.directive.js
deleted file mode 100644
index 919da94..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.directive.js
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './dropdown.jade!';
-
-export default ['igniteFormFieldDropdown', ['IgniteFormGUID', (guid) => {
-    const controller = () => {};
-
-    const link = (scope, $element, attrs, [form]) => {
-        const {id, name} = scope;
-
-        scope.id = id || guid();
-
-        form.$defaults = form.$defaults || {};
-        form.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!form.$pristine) return;
-
-            form.$defaults = form.$defaults || {};
-            form.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        scope.$watch(() => form.$pristine, setAsDefault);
-        scope.$watch('value', setAsDefault);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            id: '@',
-            name: '@',
-            value: '=ngModel'
-        },
-        bindToController: {
-            value: '=ngModel',
-            placeholder: '@',
-            options: '=',
-            ngDisabled: '=',
-            multiple: '='
-        },
-        link,
-        template,
-        controller,
-        controllerAs: 'dropdown',
-        replace: true,
-        transclude: true,
-        require: ['^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.jade
deleted file mode 100644
index 6d4dd82..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/dropdown.jade
+++ /dev/null
@@ -1,51 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-.input-tip
-    button.select-toggle.form-control(
-        ng-if='dropdown.multiple'
-        id='{{ id }}'
-        name='{{ name }}'
-        data-placeholder='{{ dropdown.placeholder }}' 
-
-        bs-select 
-        bs-options='item.value as item.label for item in dropdown.options' 
-        data-multiple='1'
-
-        ng-model='dropdown.value'
-        ng-class='{ placeholder: value === undefined || value === null || !value.length }'
-        ng-disabled='dropdown.ngDisabled'
-
-        tabindex='0'
-    )
-
-    button.select-toggle.form-control(
-        ng-if='!dropdown.multiple'
-        id='{{ id }}'
-        name='{{ name }}'
-        data-placeholder='{{ dropdown.placeholder }}' 
-
-        bs-select 
-        bs-options='item.value as item.label for item in dropdown.options' 
-
-        ng-model='dropdown.value'
-        ng-class='{ placeholder: value === undefined || value === null || !value.length }'
-        ng-disabled='dropdown.ngDisabled'
-
-        tabindex='0'
-    )
-
-    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/field.css
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/field.css b/modules/control-center-web/src/main/js/app/modules/Form/field/field.css
deleted file mode 100644
index 66ceb90..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/field.css
+++ /dev/null
@@ -1,6 +0,0 @@
-.indexField {
-	float: left;
-    line-height: 28px;
-    margin-right: 5px;
-    color: #ec1c24;
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/field.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/field.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/field.directive.js
deleted file mode 100644
index e02bebe..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/field.directive.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './field.jade!';
-import './field.css!';
-
-export default ['igniteFormField', [() => {
-    const controller = [function() {
-        const ctrl = this;
-
-        ctrl.type = ctrl.type || 'external';
-    }];
-
-    return {
-        restrict: 'E',
-        scope: {},
-        bindToController: {
-            for: '@',
-            label: '@',
-            type: '@'
-        },
-        template,
-        controller,
-        controllerAs: 'field',
-        replace: true,
-        transclude: true,
-        require: '^form'
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/field.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/field.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/field.jade
deleted file mode 100644
index 6d7c04a..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/field.jade
+++ /dev/null
@@ -1,26 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-div
-    div(ng-if='field.type == "external"')
-        label.col-xs-4.col-sm-4.col-md-4(
-            for='{{::field.for}}'
-            class='{{ field.required ? "required" : "" }}'
-        ) 
-            span(ng-if='field.label') {{::field.label}}:
-        .col-xs-8.col-sm-8.col-md-8(ng-transclude='')
-    div(ng-if='field.type == "internal"')
-        label.col-xs-12.col-sm-12.col-md-12(ng-transclude)       

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/form-control-feedback.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/form-control-feedback.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/form-control-feedback.directive.js
deleted file mode 100644
index ba3e7fe..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/form-control-feedback.directive.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['formControlFeedback', [() => {
-    const link = ($scope, $element, $attrs, [form]) => {
-        const name = $scope.name;
-        const err = $attrs.igniteError;
-        const msg = $attrs.igniteErrorMessage;
-
-        if (name && err && msg) {
-            form.$errorMessages = form.$errorMessages || {};
-            form.$errorMessages[name] = form.$errorMessages[name] || {};
-            form.$errorMessages[name][err] = msg;
-        }
-    };
-
-    return {
-        restrict: 'C',
-        link,
-        require: ['^form']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/autofocus.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/autofocus.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/input/autofocus.directive.js
deleted file mode 100644
index eeccc3f..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/autofocus.directive.js
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['igniteFormFieldInputAutofocus', [() => {
-    const link = (scope, el, attrs) => {
-        if (typeof attrs.igniteFormFieldInputAutofocus === 'undefined' || !attrs.igniteFormFieldInputAutofocus)
-            return;
-
-        el.focus();
-    };
-
-    return {
-        restrict: 'A',
-        link
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.directive.js
deleted file mode 100644
index d259718..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.directive.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './checkbox.jade!';
-
-export default ['igniteFormFieldInputCheckbox', ['IgniteFormGUID', (guid) => {
-    const link = (scope, el, attrs, [form, label]) => {
-        const {id, name} = scope;
-        const field = form[name];
-
-        scope.field = field;
-        label.for = scope.id = id || guid();
-
-        label.type = 'internal';
-
-        form.$defaults = form.$defaults || {};
-        form.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!form.$pristine) return;
-
-            form.$defaults = form.$defaults || {};
-            form.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        scope.$watch(() => form.$pristine, setAsDefault);
-        scope.$watch('value', setAsDefault);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            id: '@',
-            name: '@',
-            required: '=ngRequired',
-            disabled: '=ngDisabled',
-
-            value: '=ngModel'
-        },
-        link,
-        template,
-        replace: true,
-        transclude: true,
-        require: ['^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.jade
deleted file mode 100644
index c3cd283..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/checkbox.jade
+++ /dev/null
@@ -1,28 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-.input-tip
-    input(
-        id='{{ id }}'
-        name='{{ name }}'
-        type='checkbox'
-
-        data-ng-model='value'
-        data-ng-required='required || false'
-        data-ng-disabled='disabled || false'
-    )
-
-    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.directive.js
deleted file mode 100644
index 9627965..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.directive.js
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './datalist.jade!';
-
-export default ['igniteFormFieldInputDatalist', ['IgniteFormGUID', (guid) => {
-    const link = (scope, $element, attrs, [form]) => {
-        const {id, name} = scope;
-
-        scope.id = id || guid();
-
-        form.$defaults = form.$defaults || {};
-        form.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!form.$pristine) return;
-
-            form.$defaults = form.$defaults || {};
-            form.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        scope.$watch(() => form.$pristine, setAsDefault);
-        scope.$watch('value', setAsDefault);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            id: '@',
-            name: '@',
-            placeholder: '@',
-            disabled: '=ngDisabled',
-
-            options: '=',
-            value: '=ngModel'
-        },
-        link,
-        template,
-        replace: true,
-        transclude: true,
-        require: ['^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.jade
deleted file mode 100644
index 1002d03..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/datalist.jade
+++ /dev/null
@@ -1,33 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-.input-tip
-    input.form-control(
-        id='{{ id }}'
-        name='{{ name }}'
-        placeholder='{{ placeholder }}' 
-        data-min-length='1'
-
-        bs-typeahead
-        bs-options='item for item in options' 
-        retain-selection
-        container='body'
-
-        data-ng-model='value'
-        data-ng-disabled='disabled || false'
-    )
-
-    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.directive.js
deleted file mode 100644
index b88425f..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.directive.js
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './number.jade!';
-
-export default ['igniteFormFieldInputNumber', ['IgniteFormGUID', (guid) => {
-    const link = (scope, el, attrs, [form, label]) => {
-        const {id, name} = scope;
-        const field = form[name];
-
-        scope.field = field;
-        label.for = scope.id = id || guid();
-
-        form.$defaults = form.$defaults || {};
-        form.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!form.$pristine) return;
-
-            form.$defaults = form.$defaults || {};
-            form.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        scope.$watch(() => form.$pristine, setAsDefault);
-        scope.$watch('value', setAsDefault);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            id: '@',
-            name: '@',
-            placeholder: '@',
-            required: '=ngRequired',
-            disabled: '=ngDisabled',
-
-            min: '@',
-            max: '@',
-            value: '=ngModel'
-        },
-        link,
-        template,
-        replace: true,
-        transclude: true,
-        require: ['^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.jade
deleted file mode 100644
index b032c46..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/number.jade
+++ /dev/null
@@ -1,44 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-mixin feedback(error, message)
-    i.fa.fa-exclamation-triangle.form-control-feedback(
-        ng-show='field.$error.#{error}'
-        bs-tooltip='"#{message}"'
-        ignite-error='#{error}'
-        ignite-error-message='#{message}'
-    )
-
-.input-tip
-    input.form-control(
-        id='{{ id }}'
-        name='{{ name }}'
-        placeholder='{{ placeholder }}'
-        type='number'
-        min='{{ min || 0 }}'
-        max='{{ max || Number.MAX_VALUE }}'
-
-        data-ng-model='value'
-        data-ng-required='required || false'
-        data-ng-disabled='disabled || false'
-        data-ng-model-options='{debounce: 150}'
-    )
-
-    +feedback('min', 'Value is less than allowable minimum')
-    +feedback('max', 'Value is more than allowable maximum')
-    +feedback('number', 'Invalid value. Only numbers allowed')
-
-    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.css
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.css b/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.css
deleted file mode 100644
index 9efdb2c..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.css
+++ /dev/null
@@ -1,24 +0,0 @@
-label .input-tip {
-	position: initial;
-}
-
-.input-tip .fa-floppy-o {
-	position: absolute;
-    top: 0;
-    right: 0;
-    z-index: 2;
-
-    width: 34px;
-    height: 34px;
-
-    text-align: center;
-
-    display: inline-block;
-    line-height: 28px;
-    pointer-events: initial;
-}
-
-.input-tip .form-control-feedback {
-    height: auto;
-}
-

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.directive.js
deleted file mode 100644
index 1cb8e92..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.directive.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './text.jade!';
-import './text.css!';
-
-export default ['igniteFormFieldInputText', ['IgniteFormGUID', (guid) => {
-    const link = (scope, el, attrs, [ngModel, form, label]) => {
-        const {id, name} = scope;
-
-        label.for = scope.id = id || guid();
-
-        scope.label = label;
-        scope.ngModel = ngModel;
-        scope.$watch('required', (required) => {
-            label.required = required || false;
-        });
-
-        form.$defaults = form.$defaults || {};
-        form.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!form.$pristine) return;
-
-            form.$defaults = form.$defaults || {};
-            form.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        scope.$watch(() => form.$pristine, setAsDefault);
-        scope.$watch('value', setAsDefault);
-
-        scope.ngChange = function() {
-            ngModel.$setViewValue(scope.value);
-
-            if (JSON.stringify(scope.value) !== JSON.stringify(form.$defaults[name]))
-                ngModel.$setDirty();
-            else
-                ngModel.$setPristine();
-
-            if (ngModel.$valid)
-                el.find('input').addClass('ng-valid').removeClass('ng-invalid');
-            else
-                el.find('input').removeClass('ng-valid').addClass('ng-invalid');
-        };
-
-        ngModel.$render = function() {
-            scope.value = ngModel.$modelValue;
-        };
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            id: '@',
-            name: '@',
-            placeholder: '@',
-            required: '=ngRequired',
-            disabled: '=ngDisabled',
-
-            ngBlur: '&',
-
-            autofocus: '=igniteFormFieldInputAutofocus'
-        },
-        link,
-        template,
-        replace: true,
-        transclude: true,
-        require: ['ngModel', '^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.jade b/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.jade
deleted file mode 100644
index 28298ab..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/input/text.jade
+++ /dev/null
@@ -1,38 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-.input-tip
-    input.form-control(
-        id='{{ id }}'
-        placeholder='{{ placeholder }}' 
-        type='text' 
-
-        data-ng-model='value'
-        data-ng-blur='ngBlur()'
-        data-ng-change='ngChange()'
-        data-ng-required='required || false'
-        data-ng-disabled='disabled || false'
-        data-ng-model-options='{debounce: 150}'
-
-        data-ignite-form-field-input-autofocus='autofocus || false'
-    )
-
-    i.fa.fa-exclamation-triangle.form-control-feedback(
-        ng-if='!ngModel.$pristine && ngModel.$error.required'
-        bs-tooltip='"{{ label.name }} could not be empty!"'
-    )
-
-    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/label.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/label.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/label.directive.js
deleted file mode 100644
index d22df2c..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/label.directive.js
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['igniteFormFieldLabel', [() => {
-    return {
-        restrict: 'E',
-        compile() {
-            return {
-                post($scope, $element, $attrs, [form, field], $transclude) {
-                    $transclude($scope, function(clone) {
-                        const text = clone.text();
-
-                        if (/(.*):$/.test(text))
-                            field.name = /(.*):$/.exec(text)[1];
-
-                        const $label = $element.parent().parent().find('label');
-
-                        $label.append(clone);
-                    });
-                }
-            };
-        },
-        replace: true,
-        transclude: true,
-        require: ['^form', '?^igniteFormField']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/tooltip.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/tooltip.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/tooltip.directive.js
deleted file mode 100644
index 78aa8fd..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/tooltip.directive.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const template = `<i class='tipField fa fa-question-circle'></i>`;
-
-export default ['igniteFormFieldTooltip', ['$tooltip', ($tooltip) => {
-    const link = ($scope, $element, $attrs, $ctrls, $transclude) => {
-        const content = Array.prototype.slice.apply($transclude($scope))
-            .reduce((html, el) => html += el.outerHTML, '');
-
-        $tooltip($element, { title: content });
-
-        // TODO cleanup css styles.
-        if ($element.hasClass('tipLabel'))
-            $element.removeClass('tipField');
-
-        if ($element.parent('label').length)
-            $element.addClass('tipLabel').removeClass('tipField');
-    };
-
-    return {
-        restrict: 'E',
-        scope: {},
-        template,
-        link,
-        replace: true,
-        transclude: true,
-        require: '^form'
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/field/up.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/field/up.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/field/up.directive.js
deleted file mode 100644
index d591eac..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/field/up.directive.js
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-
-
-const template = `<i class='tipField fa fa-arrow-up ng-scope' ng-click='up()'></i>`;
-
-export default ['igniteFormFieldUp', ['$tooltip', ($tooltip) => {
-    const link = (scope, $element) => {
-        $tooltip($element, { title: 'Move item up' });
-
-        scope.up = () => {
-            const idx = scope.models.indexOf(scope.model);
-
-            scope.models.splice(idx, 1);
-            scope.models.splice(idx - 1, 0, scope.model);
-        };
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            model: '=ngModel',
-            models: '=models'
-        },
-        template,
-        link,
-        replace: true,
-        transclude: true,
-        require: '^form'
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/form.module.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/form.module.js b/modules/control-center-web/src/main/js/app/modules/Form/form.module.js
deleted file mode 100644
index aac831d..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/form.module.js
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import angular from 'angular';
-
-// Panel.
-import igniteFormPanel from './panel/panel.directive';
-import igniteFormPanelChevron from './panel/chevron.directive';
-import igniteFormRevert from './panel/revert.directive';
-
-// Field.
-import igniteFormField from './field/field.directive';
-import igniteFormFieldLabel from './field/label.directive';
-import igniteFormFieldTooltip from './field/tooltip.directive';
-import igniteFormFieldDropdown from './field/dropdown.directive';
-import igniteFormFieldInputNumber from './field/input/number.directive';
-import igniteFormFieldInputText from './field/input/text.directive';
-import igniteFormFieldInputCheckbox from './field/input/checkbox.directive';
-import igniteFormFieldInputDatalist from './field/input/datalist.directive';
-
-// Group.
-import igniteFormGroup from './group/group.directive';
-import igniteFormGroupAdd from './group/add.directive';
-import igniteFormGroupTooltip from './group/tooltip.directive';
-
-// Validators.
-import javaKeywords from './validator/java-keywords.directive';
-import javaPackageSpecified from './validator/java-package-specified.directive';
-import javaBuiltInClass from './validator/java-built-in-class.directive';
-import javaIdentifier from './validator/java-identifier.directive';
-import javaPackageName from './validator/java-package-name.directive';
-import unique from './validator/unique.directive';
-
-// Helpers.
-import igniteFormFieldInputAutofocus from './field/input/autofocus.directive';
-import igniteFormFieldUp from './field/up.directive';
-import igniteFormFieldDown from './field/down.directive';
-import igniteFormControlFeedback from './field/form-control-feedback.directive';
-
-angular
-.module('ignite-console.Form', [
-
-])
-// Panel.
-.directive(...igniteFormPanel)
-.directive(...igniteFormPanelChevron)
-.directive(...igniteFormRevert)
-// Field.
-.directive(...igniteFormField)
-.directive(...igniteFormFieldLabel)
-.directive(...igniteFormFieldTooltip)
-.directive(...igniteFormFieldDropdown)
-.directive(...igniteFormFieldInputNumber)
-.directive(...igniteFormFieldInputText)
-.directive(...igniteFormFieldInputCheckbox)
-.directive(...igniteFormFieldInputDatalist)
-// Group.
-.directive(...igniteFormGroup)
-.directive(...igniteFormGroupAdd)
-.directive(...igniteFormGroupTooltip)
-// Validators.
-.directive(...javaKeywords)
-.directive(...javaPackageSpecified)
-.directive(...javaBuiltInClass)
-.directive(...javaIdentifier)
-.directive(...javaPackageName)
-.directive(...unique)
-// Helpers.
-.directive(...igniteFormFieldInputAutofocus)
-.directive(...igniteFormFieldUp)
-.directive(...igniteFormFieldDown)
-.directive(...igniteFormControlFeedback)
-// Generator of globally unique identifier.
-.factory('IgniteFormGUID', [() => {
-    let guid = 0;
-
-    return () => `form-field-${guid++}`;
-}]);

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/add.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/add.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/group/add.directive.js
deleted file mode 100644
index 6d79026..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/add.directive.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const template = `<i class='group-legend-btn fa fa-plus'></i>`;
-
-export default ['igniteFormGroupAdd', ['$tooltip', ($tooltip) => {
-    const link = ($scope, $element, $attrs, $ctrls, $transclude) => {
-        const content = Array.prototype.slice
-        .apply($transclude($scope))
-        .reduce((html, el) => html += el.outerHTML, '');
-
-        $tooltip($element, { title: content });
-
-        $element.closest('.group').find('.group-legend').append($element);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {},
-        template,
-        link,
-        replace: true,
-        transclude: true,
-        require: ['^form', '^igniteFormGroup']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/group.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/group.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/group/group.directive.js
deleted file mode 100644
index db03503..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/group.directive.js
+++ /dev/null
@@ -1,72 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './group.jade!';
-
-export default ['igniteFormGroup', [() => {
-    const controller = [function() { }];
-
-    const link = (scope, el, attrs, [ngModelCtrl, ownFormCtrl, parentFormCtrl]) => {
-        const name = attrs.ngForm;
-        ngModelCtrl.$name = name;
-
-        parentFormCtrl.$addControl(ngModelCtrl);
-        parentFormCtrl.$removeControl(ownFormCtrl);
-
-        scope.value = scope.value || [];
-        parentFormCtrl.$defaults = parentFormCtrl.$defaults || {};
-        parentFormCtrl.$defaults[name] = _.cloneDeep(scope.value);
-
-        const setAsDefault = () => {
-            if (!parentFormCtrl.$pristine)
-                return;
-
-            scope.value = scope.value || [];
-            parentFormCtrl.$defaults = parentFormCtrl.$defaults || {};
-            parentFormCtrl.$defaults[name] = _.cloneDeep(scope.value);
-        };
-
-        const setAsDirty = () => {
-            if (JSON.stringify(scope.value) !== JSON.stringify(parentFormCtrl.$defaults[name]))
-                ngModelCtrl.$setDirty();
-            else
-                ngModelCtrl.$setPristine();
-        };
-
-        scope.$watch(() => parentFormCtrl.$pristine, setAsDefault);
-
-        scope.$watch('value', setAsDefault);
-        scope.$watch('value', setAsDirty, true);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            value: '=ngModel'
-        },
-        bindToController: {
-            label: '@'
-        },
-        link,
-        template,
-        controller,
-        controllerAs: 'group',
-        replace: true,
-        transclude: true,
-        require: ['ngModel', '?form', '^^form']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/group.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/group.jade b/modules/control-center-web/src/main/js/app/modules/Form/group/group.jade
deleted file mode 100644
index ba3a8f2..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/group.jade
+++ /dev/null
@@ -1,21 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-.group-section
-    .group
-        .group-legend
-            label {{::group.label}}
-        div(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/table.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/table.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/group/table.directive.js
deleted file mode 100644
index 520f8c2..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/table.directive.js
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import template from './table.jade!';
-
-export default ['igniteFormGroupTable', [() => {
-    return {
-        restrict: 'E',
-        scope: {},
-        template,
-        replace: true,
-        transclude: true,
-        require: ['^form', '^igniteFormGroup']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/table.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/table.jade b/modules/control-center-web/src/main/js/app/modules/Form/group/table.jade
deleted file mode 100644
index 6f9486d..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/table.jade
+++ /dev/null
@@ -1,17 +0,0 @@
-//-
-    Licensed to the Apache Software Foundation (ASF) under one or more
-    contributor license agreements.  See the NOTICE file distributed with
-    this work for additional information regarding copyright ownership.
-    The ASF licenses this file to You under the Apache License, Version 2.0
-    (the "License"); you may not use this file except in compliance with
-    the License.  You may obtain a copy of the License at
-
-         http://www.apache.org/licenses/LICENSE-2.0
-
-    Unless required by applicable law or agreed to in writing, software
-    distributed under the License is distributed on an "AS IS" BASIS,
-    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-    See the License for the specific language governing permissions and
-    limitations under the License.
-
-div
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/group/tooltip.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/group/tooltip.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/group/tooltip.directive.js
deleted file mode 100644
index 5af8fb1..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/group/tooltip.directive.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const template = `<i class='group-legend-btn fa fa-question-circle'></i>`;
-
-export default ['igniteFormGroupTooltip', ['$tooltip', ($tooltip) => {
-    const link = ($scope, $element, $attrs, $ctrls, $transclude) => {
-        const content = Array.prototype.slice
-        .apply($transclude($scope))
-        .reduce((html, el) => html += el.outerHTML, '');
-
-        $tooltip($element, { title: content });
-
-        $element.closest('.group').find('.group-legend').append($element);
-    };
-
-    return {
-        restrict: 'E',
-        scope: {},
-        template,
-        link,
-        replace: true,
-        transclude: true,
-        require: ['^form', '^igniteFormGroup']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/panel/chevron.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/panel/chevron.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/panel/chevron.directive.js
deleted file mode 100644
index 9f7e1d0..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/panel/chevron.directive.js
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const template = `<i class='fa' ng-class='isOpen ? "fa-chevron-circle-down" : "fa-chevron-circle-right"'></i>`;
-
-export default ['igniteFormPanelChevron', [() => {
-    const controller = [() => {}];
-
-    const link = ($scope, $element, $attrs, [bsCollapseCtrl]) => {
-        const $target = $element.parent().parent().find('.panel-collapse');
-
-        bsCollapseCtrl.$viewChangeListeners.push(function() {
-            const index = bsCollapseCtrl.$targets.reduce((acc, el, i) => {
-                if (el[0] === $target[0])
-                    acc.push(i);
-
-                return acc;
-            }, [])[0];
-
-            $scope.isOpen = false;
-
-            const active = bsCollapseCtrl.$activeIndexes();
-
-            if ((active instanceof Array) && active.indexOf(index) !== -1 || active === index)
-                $scope.isOpen = true;
-        });
-    };
-
-    return {
-        restrict: 'E',
-        scope: {},
-        link,
-        template,
-        controller,
-        replace: true,
-        transclude: true,
-        require: ['^bsCollapse']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/panel/panel.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/panel/panel.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/panel/panel.directive.js
deleted file mode 100644
index b8e7c25..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/panel/panel.directive.js
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['form', [() => {
-    const link = (scope, $element, $attrs, [form]) => {
-        const $form = $element.parent().closest('form');
-
-        scope.$watch(() => {
-            return $form.hasClass('ng-pristine');
-        }, (value) => {
-            if (!value)
-                return;
-
-            form.$setPristine();
-        });
-    };
-
-    return {
-        restrict: 'E',
-        link,
-        require: ['^form']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/panel/revert.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/panel/revert.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/panel/revert.directive.js
deleted file mode 100644
index 874b466..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/panel/revert.directive.js
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-const template = `<i ng-show='form.$dirty' class='fa fa-undo pull-right' ng-click='revert($event)'></i>`;
-
-export default ['igniteFormRevert', ['$tooltip', ($tooltip) => {
-    const link = (scope, $element, $attrs, [form]) => {
-        $tooltip($element, { title: 'Undo unsaved changes' });
-
-        scope.form = form;
-
-        scope.revert = (e) => {
-            e.stopPropagation();
-
-            for (const name in form.$defaults) {
-                if ({}.hasOwnProperty.call(form.$defaults, name) && form[name]) {
-                    form[name].$setViewValue(form.$defaults[name]);
-                    form[name].$setPristine();
-                    form[name].$render();
-                }
-            }
-
-            form.$setPristine();
-        };
-    };
-
-    return {
-        restrict: 'E',
-        scope: {
-            model: '=ngModel',
-            models: '=models'
-        },
-        template,
-        link,
-        replace: true,
-        require: ['^form']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-built-in-class.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-built-in-class.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-built-in-class.directive.js
deleted file mode 100644
index caa268d..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-built-in-class.directive.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['javaBuiltInClass', ['JavaTypes', (JavaTypes) => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.javaBuiltInClass === 'undefined' || !attrs.javaBuiltInClass)
-            return;
-
-        ngModel.$validators.javaBuiltInClass = JavaTypes.nonBuiltInClass;
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-identifier.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-identifier.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-identifier.directive.js
deleted file mode 100644
index 81a48a3..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-identifier.directive.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['javaIdentifier', ['JavaTypes', (JavaTypes) => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.javaIdentifier === 'undefined' || !attrs.javaIdentifier)
-            return;
-
-        ngModel.$validators.javaIdentifier = JavaTypes.validIdentifier;
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
deleted file mode 100644
index 8faae6d..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-keywords.directive.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['javaKeywords', ['JavaTypes', (JavaTypes) => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.javaKeywords === 'undefined' || !attrs.javaKeywords)
-            return;
-
-        ngModel.$validators.javaKeywords = (value) => {
-            if (value) {
-                for (const item of value.split('.')) {
-                    if (JavaTypes.isKeywords(item))
-                        return false;
-                }
-            }
-
-            return true;
-        };
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-name.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-name.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-name.directive.js
deleted file mode 100644
index 173e118..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-name.directive.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['javaPackageName', ['JavaTypes', (JavaTypes) => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.javaPackageName === 'undefined' || !attrs.javaPackageName)
-            return;
-
-        ngModel.$validators.javaPackageName = JavaTypes.validPackage;
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-specified.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-specified.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-specified.directive.js
deleted file mode 100644
index 9ba43f3..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/java-package-specified.directive.js
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['javaPackageSpecified', [() => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.javaPackageSpecified === 'undefined' || !attrs.javaPackageSpecified)
-            return;
-
-        ngModel.$validators.javaPackageSpecified = (value) => {
-            return !value || !(value.split('.').length < 2);
-        };
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/Form/validator/unique.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/Form/validator/unique.directive.js b/modules/control-center-web/src/main/js/app/modules/Form/validator/unique.directive.js
deleted file mode 100644
index 905a595..0000000
--- a/modules/control-center-web/src/main/js/app/modules/Form/validator/unique.directive.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export default ['igniteUnique', ['$parse', ($parse) => {
-    const link = (scope, el, attrs, [ngModel]) => {
-        if (typeof attrs.igniteUnique === 'undefined' || !attrs.igniteUnique)
-            return;
-
-        ngModel.$validators.igniteUnique = (value) => {
-            const arr = $parse(attrs.igniteUnique)(scope);
-
-            // Return true in case if array not exist, array empty.
-            if (!arr || !arr.length)
-                return true;
-
-            const name = attrs.name;
-            const idx = arr.indexOf(value);
-
-            // In case of new element check all items.
-            if (name === 'new')
-                return idx < 0;
-
-            // Check for $index in case of editing in-place.
-            return (_.isNumber(scope.$index) && (idx < 0 || scope.$index === idx));
-        };
-    };
-
-    return {
-        restrict: 'A',
-        link,
-        require: ['ngModel']
-    };
-}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/form/field/down.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/down.directive.js b/modules/control-center-web/src/main/js/app/modules/form/field/down.directive.js
new file mode 100644
index 0000000..0f21af2
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/down.directive.js
@@ -0,0 +1,45 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+
+const template = `<i class='tipField fa fa-arrow-down ng-scope' ng-click='down()'></i>`;
+
+export default ['igniteFormFieldDown', ['$tooltip', ($tooltip) => {
+    const link = (scope, $element) => {
+        $tooltip($element, { title: 'Move item down' });
+
+        scope.down = () => {
+            const i = scope.models.indexOf(scope.model);
+            scope.models.splice(i, 1);
+            scope.models.splice(i + 1, 0, scope.model);
+        };
+    };
+
+    return {
+        restrict: 'E',
+        scope: {
+            model: '=ngModel',
+            models: '=models'
+        },
+        template,
+        link,
+        replace: true,
+        transclude: true,
+        require: '^form'
+    };
+}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.directive.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.directive.js b/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.directive.js
new file mode 100644
index 0000000..919da94
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.directive.js
@@ -0,0 +1,64 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import template from './dropdown.jade!';
+
+export default ['igniteFormFieldDropdown', ['IgniteFormGUID', (guid) => {
+    const controller = () => {};
+
+    const link = (scope, $element, attrs, [form]) => {
+        const {id, name} = scope;
+
+        scope.id = id || guid();
+
+        form.$defaults = form.$defaults || {};
+        form.$defaults[name] = _.cloneDeep(scope.value);
+
+        const setAsDefault = () => {
+            if (!form.$pristine) return;
+
+            form.$defaults = form.$defaults || {};
+            form.$defaults[name] = _.cloneDeep(scope.value);
+        };
+
+        scope.$watch(() => form.$pristine, setAsDefault);
+        scope.$watch('value', setAsDefault);
+    };
+
+    return {
+        restrict: 'E',
+        scope: {
+            id: '@',
+            name: '@',
+            value: '=ngModel'
+        },
+        bindToController: {
+            value: '=ngModel',
+            placeholder: '@',
+            options: '=',
+            ngDisabled: '=',
+            multiple: '='
+        },
+        link,
+        template,
+        controller,
+        controllerAs: 'dropdown',
+        replace: true,
+        transclude: true,
+        require: ['^form', '?^igniteFormField']
+    };
+}]];

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.jade b/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.jade
new file mode 100644
index 0000000..6d4dd82
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/dropdown.jade
@@ -0,0 +1,51 @@
+//-
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+.input-tip
+    button.select-toggle.form-control(
+        ng-if='dropdown.multiple'
+        id='{{ id }}'
+        name='{{ name }}'
+        data-placeholder='{{ dropdown.placeholder }}' 
+
+        bs-select 
+        bs-options='item.value as item.label for item in dropdown.options' 
+        data-multiple='1'
+
+        ng-model='dropdown.value'
+        ng-class='{ placeholder: value === undefined || value === null || !value.length }'
+        ng-disabled='dropdown.ngDisabled'
+
+        tabindex='0'
+    )
+
+    button.select-toggle.form-control(
+        ng-if='!dropdown.multiple'
+        id='{{ id }}'
+        name='{{ name }}'
+        data-placeholder='{{ dropdown.placeholder }}' 
+
+        bs-select 
+        bs-options='item.value as item.label for item in dropdown.options' 
+
+        ng-model='dropdown.value'
+        ng-class='{ placeholder: value === undefined || value === null || !value.length }'
+        ng-disabled='dropdown.ngDisabled'
+
+        tabindex='0'
+    )
+
+    span(ng-transclude='')

http://git-wip-us.apache.org/repos/asf/ignite/blob/a84f6b6a/modules/control-center-web/src/main/js/app/modules/form/field/field.css
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/app/modules/form/field/field.css b/modules/control-center-web/src/main/js/app/modules/form/field/field.css
new file mode 100644
index 0000000..66ceb90
--- /dev/null
+++ b/modules/control-center-web/src/main/js/app/modules/form/field/field.css
@@ -0,0 +1,6 @@
+.indexField {
+	float: left;
+    line-height: 28px;
+    margin-right: 5px;
+    color: #ec1c24;
+}
\ No newline at end of file


Mime
View raw message