bastion 0.1.14 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/app/assets/javascripts/bastion/bastion.module.js +7 -5
- data/app/assets/javascripts/bastion/components/bst-alert.directive.js +8 -37
- data/app/assets/javascripts/bastion/components/bst-alerts.directive.js +67 -0
- data/app/assets/javascripts/bastion/components/bst-container-scroll.directive.js +2 -7
- data/app/assets/javascripts/bastion/components/bst-table.directive.js +2 -2
- data/app/assets/javascripts/bastion/components/views/bst-alert.html +17 -5
- data/app/assets/javascripts/bastion/components/views/bst-alerts.html +6 -0
- data/app/assets/javascripts/bastion/components/views/bst-dropdown.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-edit-add-item.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-edit-add-remove-cancel.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-edit-multiselect.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-edit-save-cancel.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-edit.html +2 -2
- data/app/assets/javascripts/bastion/components/views/bst-menu.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-modal.html +1 -1
- data/app/assets/javascripts/bastion/components/views/bst-save-control.html +1 -1
- data/app/assets/javascripts/bastion/components/views/current-tasks.html +1 -1
- data/app/assets/javascripts/bastion/features/bst-feature-flag.directive.js +1 -1
- data/app/assets/javascripts/bastion/layouts/details-nutupane.html +4 -4
- data/app/assets/javascripts/bastion/layouts/nutupane.html +12 -8
- data/app/assets/stylesheets/bastion/bastion.less +6 -5
- data/app/assets/stylesheets/bastion/nutupane.less +14 -10
- data/app/assets/stylesheets/bastion/overrides.less +6 -2
- data/app/assets/stylesheets/bastion/variables.less +1 -0
- data/app/views/bastion/layouts/application.html.erb +5 -3
- data/bower.json +25 -20
- data/grunt/bower.js +2 -6
- data/lib/bastion/version.rb +1 -1
- data/test/components/bst-alert.directive.test.js +8 -40
- data/test/components/bst-alerts.directive.test.js +84 -0
- data/test/components/bst-container-scroll.directive.test.js +1 -14
- data/test/components/bst-edit.directive.test.js +1 -1
- data/vendor/assets/fonts/bastion/bootstrap/glyphicons-halflings-regular.eot +0 -0
- data/vendor/assets/fonts/bastion/bootstrap/glyphicons-halflings-regular.svg +47 -47
- data/vendor/assets/fonts/bastion/bootstrap/glyphicons-halflings-regular.ttf +0 -0
- data/vendor/assets/fonts/bastion/bootstrap/glyphicons-halflings-regular.woff +0 -0
- data/vendor/assets/fonts/bastion/font-awesome/FontAwesome.otf +0 -0
- data/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.svg +471 -366
- data/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/font-awesome/fontawesome-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Bold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Bold-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Bold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Bold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-BoldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-BoldItalic-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-BoldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-BoldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBold-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBoldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBoldItalic-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBoldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-ExtraBoldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Italic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Italic-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Italic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Italic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Light-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Light-webfont.svg +1831 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Light-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Light-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-LightItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-LightItalic-webfont.svg +1835 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-LightItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-LightItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Regular-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Regular-webfont.svg +1831 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Regular-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Regular-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Semibold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Semibold-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Semibold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-Semibold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-SemiboldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-SemiboldItalic-webfont.svg +1830 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-SemiboldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/OpenSans-SemiboldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/patternfly/PatternFlyIcons-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/patternfly/PatternFlyIcons-webfont.svg +37 -0
- data/vendor/assets/fonts/bastion/patternfly/PatternFlyIcons-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/patternfly/PatternFlyIcons-webfont.woff +0 -0
- data/vendor/assets/javascripts/bastion/ngUpload/ng-upload.js +20 -19
- data/vendor/assets/stylesheets/bastion/bootstrap/badges.less +4 -0
- data/vendor/assets/stylesheets/bastion/bootstrap/breadcrumbs.less +4 -1
- data/vendor/assets/stylesheets/bastion/bootstrap/button-groups.less +13 -14
- data/vendor/assets/stylesheets/bastion/bootstrap/buttons.less +14 -10
- data/vendor/assets/stylesheets/bastion/bootstrap/carousel.less +3 -3
- data/vendor/assets/stylesheets/bastion/bootstrap/code.less +10 -0
- data/vendor/assets/stylesheets/bastion/bootstrap/dropdowns.less +28 -2
- data/vendor/assets/stylesheets/bastion/bootstrap/forms.less +104 -41
- data/vendor/assets/stylesheets/bastion/bootstrap/glyphicons.less +1 -5
- data/vendor/assets/stylesheets/bastion/bootstrap/grid.less +30 -25
- data/vendor/assets/stylesheets/bastion/bootstrap/input-groups.less +44 -18
- data/vendor/assets/stylesheets/bastion/bootstrap/jumbotron.less +3 -5
- data/vendor/assets/stylesheets/bastion/bootstrap/list-group.less +25 -3
- data/vendor/assets/stylesheets/bastion/bootstrap/mixins.less +147 -63
- data/vendor/assets/stylesheets/bastion/bootstrap/modals.less +18 -8
- data/vendor/assets/stylesheets/bastion/bootstrap/navbar.less +24 -20
- data/vendor/assets/stylesheets/bastion/bootstrap/navs.less +2 -2
- data/vendor/assets/stylesheets/bastion/bootstrap/normalize.less +139 -122
- data/vendor/assets/stylesheets/bastion/bootstrap/pager.less +5 -5
- data/vendor/assets/stylesheets/bastion/bootstrap/pagination.less +6 -3
- data/vendor/assets/stylesheets/bastion/bootstrap/panels.less +106 -47
- data/vendor/assets/stylesheets/bastion/bootstrap/popovers.less +11 -11
- data/vendor/assets/stylesheets/bastion/bootstrap/print.less +0 -4
- data/vendor/assets/stylesheets/bastion/bootstrap/responsive-utilities.less +15 -132
- data/vendor/assets/stylesheets/bastion/bootstrap/scaffolding.less +17 -2
- data/vendor/assets/stylesheets/bastion/bootstrap/tables.less +3 -1
- data/vendor/assets/stylesheets/bastion/bootstrap/theme.less +1 -1
- data/vendor/assets/stylesheets/bastion/bootstrap/thumbnails.less +1 -1
- data/vendor/assets/stylesheets/bastion/bootstrap/tooltip.less +1 -1
- data/vendor/assets/stylesheets/bastion/bootstrap/type.less +79 -67
- data/vendor/assets/stylesheets/bastion/bootstrap/variables.less +364 -177
- data/vendor/assets/stylesheets/bastion/bootstrap/wells.less +1 -1
- data/vendor/assets/stylesheets/bastion/font-awesome/less/bordered-pulled.less +16 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/core.less +8 -126
- data/vendor/assets/stylesheets/bastion/font-awesome/less/extras.less +2 -93
- data/vendor/assets/stylesheets/bastion/font-awesome/less/fixed-width.less +6 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/font-awesome.less +9 -25
- data/vendor/assets/stylesheets/bastion/font-awesome/less/icons.less +549 -378
- data/vendor/assets/stylesheets/bastion/font-awesome/less/larger.less +13 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/list.less +19 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/mixins.less +16 -39
- data/vendor/assets/stylesheets/bastion/font-awesome/less/path.less +6 -6
- data/vendor/assets/stylesheets/bastion/font-awesome/less/rotated-flipped.less +20 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/spinning.less +29 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/stacked.less +20 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/less/variables.less +557 -731
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_bordered-pulled.scss +16 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_core.scss +8 -126
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_extras.scss +9 -58
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_fixed-width.scss +6 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_icons.scss +550 -379
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_larger.scss +13 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_list.scss +19 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_mixins.scss +16 -39
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_path.scss +6 -6
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_rotated-flipped.scss +20 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_spinning.scss +29 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_stacked.scss +20 -0
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/_variables.scss +557 -730
- data/vendor/assets/stylesheets/bastion/font-awesome/scss/font-awesome.scss +9 -25
- data/vendor/assets/stylesheets/bastion/patternfly/alerts.less +29 -0
- data/vendor/assets/stylesheets/bastion/patternfly/badges.less +11 -0
- data/vendor/assets/stylesheets/bastion/patternfly/bootstrap-combobox.less +27 -0
- data/vendor/assets/stylesheets/bastion/patternfly/bootstrap-select.less +67 -0
- data/vendor/assets/stylesheets/bastion/patternfly/bootstrap-treeview.less +37 -0
- data/vendor/assets/stylesheets/bastion/patternfly/breadcrumbs.less +20 -0
- data/vendor/assets/stylesheets/bastion/{rcue → patternfly}/buttons.less +4 -0
- data/vendor/assets/stylesheets/bastion/patternfly/close.less +13 -0
- data/vendor/assets/stylesheets/bastion/patternfly/datatables.less +221 -0
- data/vendor/assets/stylesheets/bastion/patternfly/dropdowns.less +145 -0
- data/vendor/assets/stylesheets/bastion/{rcue → patternfly}/fonts.less +4 -2
- data/vendor/assets/stylesheets/bastion/{rcue → patternfly}/forms.less +7 -4
- data/vendor/assets/stylesheets/bastion/patternfly/icons.less +130 -0
- data/vendor/assets/stylesheets/bastion/patternfly/infotip.less +149 -0
- data/vendor/assets/stylesheets/bastion/patternfly/labels.less +12 -0
- data/vendor/assets/stylesheets/bastion/patternfly/list-group.less +18 -0
- data/vendor/assets/stylesheets/bastion/patternfly/login.less +121 -0
- data/vendor/assets/stylesheets/bastion/patternfly/mixins.less +81 -0
- data/vendor/assets/stylesheets/bastion/patternfly/modals.less +38 -0
- data/vendor/assets/stylesheets/bastion/patternfly/navbar.less +501 -0
- data/vendor/assets/stylesheets/bastion/patternfly/pager.less +72 -0
- data/vendor/assets/stylesheets/bastion/patternfly/pagination.less +64 -0
- data/vendor/assets/stylesheets/bastion/patternfly/panels.less +57 -0
- data/vendor/assets/stylesheets/bastion/patternfly/patternfly.less +42 -0
- data/vendor/assets/stylesheets/bastion/patternfly/popovers.less +32 -0
- data/vendor/assets/stylesheets/bastion/patternfly/progress-bars.less +87 -0
- data/vendor/assets/stylesheets/bastion/patternfly/search.less +65 -0
- data/vendor/assets/stylesheets/bastion/patternfly/sidebar.less +174 -0
- data/vendor/assets/stylesheets/bastion/patternfly/spinner.less +62 -0
- data/vendor/assets/stylesheets/bastion/patternfly/tables.less +74 -0
- data/vendor/assets/stylesheets/bastion/patternfly/tabs.less +118 -0
- data/vendor/assets/stylesheets/bastion/patternfly/tooltip.less +16 -0
- data/vendor/assets/stylesheets/bastion/patternfly/type.less +24 -0
- data/vendor/assets/stylesheets/bastion/patternfly/variables.less +219 -0
- metadata +98 -57
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Bold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-BoldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-ExtraBoldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Italic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Light-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-LightItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Regular-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-Semibold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.svg +0 -146
- data/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/OpenSans-SemiboldItalic-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.svg +0 -454
- data/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Bold-webfont.woff +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.eot +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.svg +0 -454
- data/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.ttf +0 -0
- data/vendor/assets/fonts/bastion/rcue/Overpass-Regular-webfont.woff +0 -0
- data/vendor/assets/stylesheets/bastion/rcue/mixins.less +0 -50
- data/vendor/assets/stylesheets/bastion/rcue/navbar.less +0 -481
- data/vendor/assets/stylesheets/bastion/rcue/rcue.less +0 -15
- data/vendor/assets/stylesheets/bastion/rcue/variables.less +0 -47
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MDBiMDFhNTA0YTc5ODhhYTBhN2JiYTJhYjgwNTdkMzgyZDc1NmRjMA==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MTkwM2QwZmE1ZTI3ZjBmZWYxYmYzOGFmMTM0MzNmMjA1ZWQxMjhjNg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
YzA1MmZhNDQ4MDhhNzhhOTk4N2NiYmU0NzA4N2E0NjNkNWEwZDY0ZmU4ZTEw
|
10
|
+
ODY0ZDQ1OWFiNTc3YjA5M2QzMWEwMWQxNTlmYTg5NmFkMTc1YTFhY2Y3MDBi
|
11
|
+
OGZiYWIzZjE4MzRkZjEyNGI5MWQxNzI5ZDExYzA4OTRhMDI5N2Y=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZGE3ODMyNjNhZTVmZWYyZWU3YzNkNDRkNjlkMDYwYzQ5MWJiNTk0YTYwMzdi
|
14
|
+
MWQ5MjdkODQyOWY3MTEwYzcyZGJlM2EzMWExOGFjZTMzMTJlNjUxOTdjNDk3
|
15
|
+
NzNmMWY2Njk0M2JhZTVjZjYzNTNhMTdjMmNiYWNhMWIzYTU4Y2M=
|
@@ -159,17 +159,19 @@ angular.module('Bastion').run(['$rootScope', '$state', '$stateParams', 'gettextC
|
|
159
159
|
|
160
160
|
// Set the current language
|
161
161
|
gettextCatalog.currentLanguage = currentLocale;
|
162
|
-
|
163
162
|
$rootScope.$on('$stateChangeStart',
|
164
163
|
function () {
|
165
|
-
|
166
|
-
|
167
|
-
|
164
|
+
//save location.search so we can add it back after transition is done
|
165
|
+
this.locationSearch = $location.search().search;
|
166
|
+
}
|
167
|
+
);
|
168
168
|
|
169
169
|
$rootScope.$on('$stateChangeSuccess',
|
170
170
|
function (event, toState, toParams, fromStateIn, fromParamsIn) {
|
171
171
|
//restore all query string parameters back to $location.search
|
172
|
-
|
172
|
+
if (this.locationSearch) {
|
173
|
+
$location.search('search', this.locationSearch);
|
174
|
+
}
|
173
175
|
|
174
176
|
//Record our from state, so we can transition back there
|
175
177
|
if (!fromStateIn.abstract) {
|
@@ -16,52 +16,23 @@
|
|
16
16
|
* @name Bastion.components.directive:bstAlert
|
17
17
|
*
|
18
18
|
* @description
|
19
|
-
* Simple directive for encapsulating alert
|
19
|
+
* Simple directive for encapsulating an alert display.
|
20
20
|
*
|
21
21
|
* @example
|
22
22
|
* <pre>
|
23
|
-
* <div bst-alert
|
24
|
-
*
|
25
|
-
* errorMessages="errorMessages">
|
26
|
-
* </div>
|
23
|
+
* <div bst-alert="success"></div>
|
24
|
+
* </pre>
|
27
25
|
*/
|
28
26
|
angular.module('Bastion.components').directive('bstAlert', function () {
|
29
27
|
return {
|
30
28
|
templateUrl: 'components/views/bst-alert.html',
|
29
|
+
transclude: true,
|
31
30
|
scope: {
|
32
|
-
|
33
|
-
|
34
|
-
warningMessages: '=',
|
35
|
-
errorMessages: '='
|
31
|
+
type: '@bstAlert',
|
32
|
+
close: '&'
|
36
33
|
},
|
37
|
-
|
38
|
-
|
39
|
-
scope.alerts = {};
|
40
|
-
scope.types = ['success', 'info', 'warning', 'danger'];
|
41
|
-
|
42
|
-
function handleMessages(type, messages) {
|
43
|
-
scope.alerts[type] = messages;
|
44
|
-
}
|
45
|
-
|
46
|
-
scope.$watch('successMessages', function (messages) {
|
47
|
-
handleMessages('success', messages);
|
48
|
-
}, true);
|
49
|
-
|
50
|
-
scope.$watch('infoMessages', function (messages) {
|
51
|
-
handleMessages('info', messages);
|
52
|
-
}, true);
|
53
|
-
|
54
|
-
scope.$watch('warningMessages', function (messages) {
|
55
|
-
handleMessages('warning', messages);
|
56
|
-
}, true);
|
57
|
-
|
58
|
-
scope.$watch('errorMessages', function (messages) {
|
59
|
-
handleMessages('danger', messages);
|
60
|
-
}, true);
|
61
|
-
|
62
|
-
scope.closeAlert = function (type, index) {
|
63
|
-
scope.alerts[type].splice(index, 1);
|
64
|
-
};
|
34
|
+
controller: function ($scope, $attrs) {
|
35
|
+
$scope.closeable = 'close' in $attrs;
|
65
36
|
}
|
66
37
|
};
|
67
38
|
});
|
@@ -0,0 +1,67 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright 2014 Red Hat, Inc.
|
3
|
+
*
|
4
|
+
* This software is licensed to you under the GNU General Public
|
5
|
+
* License as published by the Free Software Foundation; either version
|
6
|
+
* 2 of the License (GPLv2) or (at your option) any later version.
|
7
|
+
* There is NO WARRANTY for this software, express or implied,
|
8
|
+
* including the implied warranties of MERCHANTABILITY,
|
9
|
+
* NON-INFRINGEMENT, or FITNESS FOR A PARTICULAR PURPOSE. You should
|
10
|
+
* have received a copy of GPLv2 along with this software; if not, see
|
11
|
+
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.
|
12
|
+
**/
|
13
|
+
|
14
|
+
/**
|
15
|
+
* @ngdoc directive
|
16
|
+
* @name Bastion.components.directive:bstAlerts
|
17
|
+
*
|
18
|
+
* @description
|
19
|
+
* Simple directive for encapsulating alert displays.
|
20
|
+
*
|
21
|
+
* @example
|
22
|
+
* <pre>
|
23
|
+
* <div bst-alerts
|
24
|
+
* successMessages="successMessages"
|
25
|
+
* errorMessages="errorMessages">
|
26
|
+
* </div>
|
27
|
+
*/
|
28
|
+
angular.module('Bastion.components').directive('bstAlerts', function () {
|
29
|
+
return {
|
30
|
+
templateUrl: 'components/views/bst-alerts.html',
|
31
|
+
scope: {
|
32
|
+
successMessages: '=',
|
33
|
+
infoMessages: '=',
|
34
|
+
warningMessages: '=',
|
35
|
+
errorMessages: '='
|
36
|
+
},
|
37
|
+
|
38
|
+
link: function (scope) {
|
39
|
+
scope.alerts = {};
|
40
|
+
scope.types = ['success', 'info', 'warning', 'danger'];
|
41
|
+
|
42
|
+
function handleMessages(type, messages) {
|
43
|
+
scope.alerts[type] = messages;
|
44
|
+
}
|
45
|
+
|
46
|
+
scope.$watch('successMessages', function (messages) {
|
47
|
+
handleMessages('success', messages);
|
48
|
+
}, true);
|
49
|
+
|
50
|
+
scope.$watch('infoMessages', function (messages) {
|
51
|
+
handleMessages('info', messages);
|
52
|
+
}, true);
|
53
|
+
|
54
|
+
scope.$watch('warningMessages', function (messages) {
|
55
|
+
handleMessages('warning', messages);
|
56
|
+
}, true);
|
57
|
+
|
58
|
+
scope.$watch('errorMessages', function (messages) {
|
59
|
+
handleMessages('danger', messages);
|
60
|
+
}, true);
|
61
|
+
|
62
|
+
scope.closeAlert = function (type, index) {
|
63
|
+
scope.alerts[type].splice(index, 1);
|
64
|
+
};
|
65
|
+
}
|
66
|
+
};
|
67
|
+
});
|
@@ -19,19 +19,14 @@ angular.module('Bastion.components').directive('bstContainerScroll', ['$window',
|
|
19
19
|
return {
|
20
20
|
restrict: 'A',
|
21
21
|
|
22
|
-
compile: function (tElement
|
22
|
+
compile: function (tElement) {
|
23
23
|
tElement.addClass("container-scroll-wrapper");
|
24
24
|
return function (scope, element) {
|
25
25
|
var windowElement = angular.element($window);
|
26
26
|
var addScroll = function () {
|
27
|
-
var
|
28
|
-
windowHeight = windowElement.height(),
|
29
|
-
scrollWidth = element.scrollWidth || 0,
|
27
|
+
var windowHeight = windowElement.height(),
|
30
28
|
offset = element.offset().top;
|
31
29
|
|
32
|
-
if (attrs.controlWidth) {
|
33
|
-
element.find(attrs.controlWidth).width(windowWidth - scrollWidth);
|
34
|
-
}
|
35
30
|
element.outerHeight(windowHeight - offset);
|
36
31
|
element.height(windowHeight - offset);
|
37
32
|
};
|
@@ -147,7 +147,7 @@ angular.module('Bastion.components')
|
|
147
147
|
}])
|
148
148
|
.directive('bstTableColumn', ['$compile', function ($compile) {
|
149
149
|
var sortIconTemplate = '<th ng-click="table.sortBy(column)">' +
|
150
|
-
'<i class="sort-icon" ng-show="table.resource.sort.by == column.id" ng-class="{\'
|
150
|
+
'<i class="sort-icon" ng-show="table.resource.sort.by == column.id" ng-class="{\'fa fa-sort-down\': column.sortOrder == \'DESC\', \'fa fa-sort-up\': column.sortOrder == \'ASC\'}"></i>' +
|
151
151
|
'</th>';
|
152
152
|
return {
|
153
153
|
require: '^bstTableHead',
|
@@ -201,7 +201,7 @@ angular.module('Bastion.components')
|
|
201
201
|
};
|
202
202
|
|
203
203
|
activeRowTemplate = function (activeTest) {
|
204
|
-
return '<i class="
|
204
|
+
return '<i class="fa fa-chevron-right selected-icon" ' +
|
205
205
|
'ng-show="' + activeTest + ' "></i>';
|
206
206
|
};
|
207
207
|
|
@@ -1,6 +1,18 @@
|
|
1
|
-
<div ng-
|
2
|
-
<
|
3
|
-
|
4
|
-
</
|
5
|
-
|
1
|
+
<div class="alert" ng-class='"alert-" + (type || "warning")'>
|
2
|
+
<button ng-show="closeable" type="button" class="close" aria-hidden="true" ng-click="close()">
|
3
|
+
<span class="pficon pficon-close"></span>
|
4
|
+
</button>
|
5
|
+
<span class="pficon-layered">
|
6
|
+
<span ng-show="type === 'danger'" class="pficon pficon-error-octagon"></span>
|
7
|
+
<span ng-show="type === 'danger'" class="pficon pficon-error-exclamation"></span>
|
8
|
+
|
9
|
+
<span ng-show="type === 'warning'" class="pficon pficon-warning-triangle"></span>
|
10
|
+
<span ng-show="type === 'warning'" class="pficon pficon-warning-exclamation"></span>
|
11
|
+
|
12
|
+
<span ng-show="type === 'info'" class="pficon pficon-info"></span>
|
6
13
|
|
14
|
+
<span ng-show="type === 'success'" class="pficon pficon-ok"></span>
|
15
|
+
</span>
|
16
|
+
|
17
|
+
<div ng-transclude></div>
|
18
|
+
</div>
|
@@ -9,7 +9,7 @@
|
|
9
9
|
href="{{ item.url }}"
|
10
10
|
ng-class="{'menu-anchor' : item.type, 'dropdown-item-link-active' : item.active }">
|
11
11
|
<span class="fl">{{ item.display }}</span>
|
12
|
-
<i class="
|
12
|
+
<i class="fa fa-caret-right flyout-indicator" ng-show="item.type=='flyout'"></i> </a>
|
13
13
|
<ul bst-flyout="item.items"
|
14
14
|
ng-if="item.type == 'flyout'"
|
15
15
|
ng-show="item.active"
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<div class="bst-dialog bst-multiselect" ng-class="{open: editMode, closed: !editMode}">
|
2
|
-
<i class="
|
2
|
+
<i class="fa fa-remove fr" ng-click="editMode = false" ng-show="editMode"></i>
|
3
3
|
<form ng-show="editMode" role="form">
|
4
4
|
<h5 translate>Existing Items</h5>
|
5
5
|
<input class="form-control"
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<div class="bst-edit">
|
2
2
|
<div class="value" ng-class="{ 'editable' : !readonly }" ng-click="edit()" ng-hide="editMode || workingMode">
|
3
3
|
<span class="fr">
|
4
|
-
<i class="
|
5
|
-
<i class="
|
4
|
+
<i class="fa fa-edit inline-icon" ng-hide="editMode || readonly"></i>
|
5
|
+
<i class="fa fa-remove inline-icon" ng-click="delete($event)" ng-show="deletable && !editMode && !readonly"></i>
|
6
6
|
</span>
|
7
7
|
<span class="editable-value">{{ displayValue }}</span>
|
8
8
|
</div>
|
@@ -10,7 +10,7 @@
|
|
10
10
|
ng-class="{ 'active-item' : item.active, 'menu-anchor' : item.type }"
|
11
11
|
class="menu-item-link">
|
12
12
|
<span>{{ item.display }}</span>
|
13
|
-
<i class="
|
13
|
+
<i class="fa fa-caret-down" ng-show="item.type == 'dropdown'"></i>
|
14
14
|
</a>
|
15
15
|
<ul bst-dropdown="item.items"></ul>
|
16
16
|
</li>
|
@@ -11,7 +11,7 @@
|
|
11
11
|
ng-click="handleSave(); working = true"
|
12
12
|
ng-disabled="invalid || working">
|
13
13
|
|
14
|
-
<i class="
|
14
|
+
<i class="fa fa-spinner fa-spin" ng-show="working"></i>
|
15
15
|
<span ng-show="working" translate>Saving...</span>
|
16
16
|
<span ng-hide="working" translate>Save</span>
|
17
17
|
</button>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<section>
|
2
|
-
<div data-block="messages" bst-
|
2
|
+
<div data-block="messages" bst-alerts success-messages="successMessages" error-messages="errorMessages"></div>
|
3
3
|
|
4
4
|
<h4>
|
5
5
|
<span data-block="header"></span>
|
@@ -24,10 +24,10 @@
|
|
24
24
|
ng-trim="false"
|
25
25
|
typeahead="item.label for item in detailsTable.autocomplete($viewValue)"
|
26
26
|
typeahead-empty
|
27
|
-
typeahead-template-url="
|
27
|
+
typeahead-template-url="components/views/autocomplete-scoped-search.html"/>
|
28
28
|
|
29
29
|
<span class="input-group-btn">
|
30
|
-
<button ng-click="detailsTable.search(detailsTable.searchTerm)" class="btn btn-default" type="button"><i class="
|
30
|
+
<button ng-click="detailsTable.search(detailsTable.searchTerm)" class="btn btn-default" type="button"><i class="fa fa-search"></i></button>
|
31
31
|
</span>
|
32
32
|
</div>
|
33
33
|
</div>
|
@@ -51,7 +51,7 @@
|
|
51
51
|
</div>
|
52
52
|
|
53
53
|
<div class="working-indicator text-center" ng-show="detailsTable.working">
|
54
|
-
<i class="
|
54
|
+
<i class="fa fa-spinner icon-spin"></i>
|
55
55
|
<span translate>Working...</span>
|
56
56
|
</div>
|
57
57
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<section>
|
2
2
|
|
3
|
-
<div data-block="messages" bst-
|
3
|
+
<div data-block="messages" bst-alerts error-messages="errorMessages" success-messages="successMessages"></div>
|
4
4
|
|
5
5
|
<div class="row nutupane-bar">
|
6
6
|
<h2 class="col-sm-2">
|
@@ -11,11 +11,16 @@
|
|
11
11
|
</div>
|
12
12
|
|
13
13
|
<div class="row nutupane-bar">
|
14
|
-
<div class="col-sm-3">
|
15
|
-
<div class="input-group input-group">
|
16
14
|
|
17
|
-
|
15
|
+
<div class="row">
|
16
|
+
<div class="col-sm-12">
|
17
|
+
<div data-block="search-filter"></div>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
|
18
21
|
|
22
|
+
<div class="col-sm-3 nutupane-info">
|
23
|
+
<div class="input-group input-group">
|
19
24
|
<input type="text"
|
20
25
|
class="form-control"
|
21
26
|
placeholder="{{ 'Search...' | translate }}"
|
@@ -26,7 +31,7 @@
|
|
26
31
|
typeahead-empty
|
27
32
|
typeahead-template-url="components/views/autocomplete-scoped-search.html"/>
|
28
33
|
<span class="input-group-btn">
|
29
|
-
<button ng-click="table.search(table.searchTerm)" class="btn btn-default" type="button"><i class="
|
34
|
+
<button ng-click="table.search(table.searchTerm)" class="btn btn-default" type="button"><i class="fa fa-search"></i></button>
|
30
35
|
</span>
|
31
36
|
</div>
|
32
37
|
</div>
|
@@ -44,16 +49,15 @@
|
|
44
49
|
<div data-block="actions"></div>
|
45
50
|
</div>
|
46
51
|
</div>
|
47
|
-
|
48
52
|
</div>
|
49
53
|
|
50
54
|
<div class="row nutupane" bst-table="table" nutupane-table ng-class="{'table-reduced': $root.$state.current.collapsed}">
|
51
55
|
<div class="loading-mask" ng-show="table.working" ng-class="{ 'loading-mask-collapsed': $root.$state.current.collapsed }">
|
52
|
-
<i class="
|
56
|
+
<i class="fa fa-spinner fa-spin"></i>
|
53
57
|
<span ng-hide="$root.$state.current.collapsed">{{ "Loading..." | translate }}</span>
|
54
58
|
</div>
|
55
59
|
|
56
|
-
<div bst-container-scroll
|
60
|
+
<div bst-container-scroll bst-infinite-scroll="table.nextPage()" data="table.rows">
|
57
61
|
<div ui-view="table"></div>
|
58
62
|
</div>
|
59
63
|
</div>
|
@@ -2,8 +2,9 @@
|
|
2
2
|
//
|
3
3
|
// Temporary namespace to prevent Boostrap3/RCUE from
|
4
4
|
// Colliding with Boostrap2 from Foreman core
|
5
|
-
|
6
|
-
|
5
|
+
// TODO remove?
|
6
|
+
.patternfly-styles {
|
7
|
+
@import "patternfly/patternfly";
|
7
8
|
|
8
9
|
// Bastion Components
|
9
10
|
@import "mixins";
|
@@ -37,7 +38,7 @@
|
|
37
38
|
display: none;
|
38
39
|
}
|
39
40
|
|
40
|
-
[class*="
|
41
|
+
[class*="fa-"] {
|
41
42
|
&.green {
|
42
43
|
color: #57a81c;
|
43
44
|
}
|
@@ -98,14 +99,14 @@
|
|
98
99
|
background: white;
|
99
100
|
font-size: 3em;
|
100
101
|
|
101
|
-
.
|
102
|
+
.fa-spinner {
|
102
103
|
margin: 20% 0 0 40%;
|
103
104
|
}
|
104
105
|
|
105
106
|
&.loading-mask-panel {
|
106
107
|
left: 20.1%;
|
107
108
|
|
108
|
-
.
|
109
|
+
.fa-spinner {
|
109
110
|
margin: 20% 0 0 33%;
|
110
111
|
}
|
111
112
|
}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
@import "variables";
|
2
|
+
@import (reference) "patternfly/patternfly";
|
2
3
|
|
3
4
|
.table {
|
4
5
|
table-layout: fixed;
|
@@ -13,8 +14,8 @@
|
|
13
14
|
|
14
15
|
th.row-select,
|
15
16
|
td.row-select {
|
16
|
-
width:
|
17
|
-
max-width:
|
17
|
+
width: 30px;
|
18
|
+
max-width: 30px;
|
18
19
|
}
|
19
20
|
}
|
20
21
|
|
@@ -78,11 +79,11 @@ td.row-select {
|
|
78
79
|
left: 4px;
|
79
80
|
}
|
80
81
|
|
81
|
-
.
|
82
|
+
.fa-sort-down {
|
82
83
|
bottom: 2px;
|
83
84
|
}
|
84
85
|
|
85
|
-
.
|
86
|
+
.fa-sort-up {
|
86
87
|
top: 4px;
|
87
88
|
}
|
88
89
|
|
@@ -108,7 +109,7 @@ td.row-select {
|
|
108
109
|
}
|
109
110
|
|
110
111
|
.active-row {
|
111
|
-
.
|
112
|
+
.fa-active {
|
112
113
|
margin-top: 1px;
|
113
114
|
font-size: 14px;
|
114
115
|
position: absolute;
|
@@ -189,7 +190,7 @@ td.row-select {
|
|
189
190
|
|
190
191
|
.filter-input {
|
191
192
|
float: left;
|
192
|
-
margin
|
193
|
+
margin: 0 0 10px;
|
193
194
|
width: 33%;
|
194
195
|
}
|
195
196
|
|
@@ -228,7 +229,7 @@ td.row-select {
|
|
228
229
|
|
229
230
|
.details-header {
|
230
231
|
min-height: 40px;
|
231
|
-
}
|
232
|
+
} y
|
232
233
|
|
233
234
|
.nutupane-sub-section {
|
234
235
|
height: 250px;
|
@@ -239,7 +240,7 @@ td.row-select {
|
|
239
240
|
}
|
240
241
|
}
|
241
242
|
|
242
|
-
.
|
243
|
+
.fa-backward {
|
243
244
|
padding-right: 5px;
|
244
245
|
}
|
245
246
|
|
@@ -289,8 +290,7 @@ td.row-select {
|
|
289
290
|
}
|
290
291
|
|
291
292
|
.nutupane-info {
|
292
|
-
padding:
|
293
|
-
margin-right: 10px;
|
293
|
+
padding: 2px 10px;
|
294
294
|
}
|
295
295
|
|
296
296
|
.detail:not(:last-child) {
|
@@ -397,3 +397,7 @@ div.alch-dialog.open.info-value {
|
|
397
397
|
.working-indicator {
|
398
398
|
font-size: 200%;
|
399
399
|
}
|
400
|
+
|
401
|
+
table .progress {
|
402
|
+
margin-bottom: 0;
|
403
|
+
}
|
@@ -6,8 +6,8 @@
|
|
6
6
|
|
7
7
|
// FontAwesome overrides
|
8
8
|
@FontAwesomePath: "../../../../bastion/font-awesome";
|
9
|
-
@font-path: "../../bastion/
|
10
|
-
|
9
|
+
@font-path: "../../bastion/patternfly";
|
10
|
+
@fa-font-path: "/assets/bastion/font-awesome/";
|
11
11
|
@icon-font-path: "/assets/bastion/bootstrap/";
|
12
12
|
|
13
13
|
.alert {
|
@@ -22,6 +22,10 @@
|
|
22
22
|
}
|
23
23
|
}
|
24
24
|
|
25
|
+
// Patternfly Overrides
|
26
|
+
@table-cell-padding-top: 5px;
|
27
|
+
@table-cell-padding-bottom: 5px;
|
28
|
+
|
25
29
|
// Foreman Core Overrides
|
26
30
|
table {
|
27
31
|
margin-bottom: 0 !important;
|
@@ -8,8 +8,10 @@
|
|
8
8
|
<% end %>
|
9
9
|
|
10
10
|
<% content_for(:content) do %>
|
11
|
-
<div class="article maincontent
|
12
|
-
<section class="container-fluid"
|
11
|
+
<div class="article maincontent patternfly-styles" data-no-turbolink="true">
|
12
|
+
<section class="container-fluid">
|
13
|
+
<div class="row" ui-view></div>
|
14
|
+
</section>
|
13
15
|
</div>
|
14
16
|
<% end %>
|
15
17
|
|
@@ -19,7 +21,7 @@
|
|
19
21
|
angular.module('Bastion.features').value('FeatureSettings', angular.fromJson(<%= SETTINGS[:features].nil? ? {} : SETTINGS[:features].to_json.html_safe %>));
|
20
22
|
angular.module('Bastion').value('currentLocale', '<%= I18n.locale %>');
|
21
23
|
angular.module('Bastion').value('CurrentOrganization', "<%= Organization.current.id if Organization.current %>");
|
22
|
-
angular.module('Bastion').value('Permissions', angular.fromJson('<%= User.current.
|
24
|
+
angular.module('Bastion').value('Permissions', angular.fromJson('<%= User.current.roles.collect { |role| role.permissions }.flatten.to_json.html_safe %>'));
|
23
25
|
angular.module('Bastion').value('CurrentUser', {
|
24
26
|
id: <%= User.current.id %>,
|
25
27
|
admin: <%= User.current.admin %>
|