conjur-asset-ui 1.4.2 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +8 -3
  3. data/CHANGELOG.md +10 -0
  4. data/Makefile +19 -0
  5. data/README.md +0 -3
  6. data/Rakefile +22 -17
  7. data/TODO.md +0 -23
  8. data/app/.csscomb.json +304 -0
  9. data/app/.eslintignore +3 -0
  10. data/app/.eslintrc +265 -0
  11. data/app/config/preprocessor.js +19 -0
  12. data/app/config/webpack.js +124 -0
  13. data/app/gulpfile.js +96 -0
  14. data/app/package.json +86 -0
  15. data/app/src/actions.js +550 -0
  16. data/app/src/app.js +83 -0
  17. data/app/src/clients/audit.js +34 -0
  18. data/app/src/clients/auth.js +24 -0
  19. data/app/src/clients/generic.js +52 -0
  20. data/app/src/clients/graph.js +7 -0
  21. data/app/src/clients/layer_members.js +18 -0
  22. data/app/src/clients/list.js +31 -0
  23. data/app/src/clients/members.js +20 -0
  24. data/app/src/clients/request.js +531 -0
  25. data/app/src/clients/search.js +5 -0
  26. data/app/src/components/app/__tests__/app-test.js +22 -0
  27. data/app/src/components/app/app.js +36 -0
  28. data/app/src/components/app/wrapper.js +17 -0
  29. data/app/src/components/audit/__tests__/table_header-test.js +22 -0
  30. data/app/src/components/audit/box.js +9 -0
  31. data/app/src/components/audit/constants.js +5 -0
  32. data/app/src/components/audit/entry.js +105 -0
  33. data/app/src/components/audit/fields_mixin.js +11 -0
  34. data/app/src/components/audit/humanize_event.js +213 -0
  35. data/app/src/components/audit/table.js +64 -0
  36. data/app/src/components/audit/table_header.js +37 -0
  37. data/app/src/components/audit/timestamp.js +28 -0
  38. data/app/src/components/auth/login.js +177 -0
  39. data/app/src/components/auth/login.less +71 -0
  40. data/app/src/components/auth/logout.js +42 -0
  41. data/app/src/components/auth/logout.less +21 -0
  42. data/app/src/components/chart/chart.js +540 -0
  43. data/app/src/components/chart/chart_helper_mixin.js +78 -0
  44. data/app/src/components/custom/list.js +3 -0
  45. data/app/src/components/custom/view.js +81 -0
  46. data/app/src/components/dashboard/activity.js +144 -0
  47. data/app/src/components/dashboard/dashboard.js +46 -0
  48. data/app/src/components/flash/flash.js +98 -0
  49. data/app/src/components/flash/flash.less +3 -0
  50. data/app/src/components/generic/__tests__/time-test.js +42 -0
  51. data/app/src/components/generic/annotations.js +39 -0
  52. data/app/src/components/generic/breadcrumbs.js +57 -0
  53. data/app/src/components/generic/foldable_audit_section.js +204 -0
  54. data/app/src/components/generic/list.js +141 -0
  55. data/app/src/components/generic/list_factory.js +41 -0
  56. data/app/src/components/generic/resource_link.js +64 -0
  57. data/app/src/components/generic/role_link.js +66 -0
  58. data/app/src/components/generic/tab_mixin.js +146 -0
  59. data/app/src/components/generic/time.js +32 -0
  60. data/app/src/components/graph/__tests__/collapse-test.js +133 -0
  61. data/app/src/components/graph/__tests__/edges-from-vertices-test.js +48 -0
  62. data/app/src/components/graph/__tests__/new-vertex-set-test.js +16 -0
  63. data/app/src/components/graph/__tests__/next-id-test.js +27 -0
  64. data/app/src/components/graph/__tests__/role-kind-from-id-test.js +24 -0
  65. data/app/src/components/graph/__tests__/vertices-from-edges-test.js +72 -0
  66. data/app/src/components/graph/graph.js +449 -0
  67. data/app/src/components/graph/graph.less +39 -0
  68. data/app/src/components/graph/helpers.js +368 -0
  69. data/app/src/components/group/list.js +3 -0
  70. data/app/src/components/group/view.js +153 -0
  71. data/app/src/components/host/activity.js +111 -0
  72. data/app/src/components/host/details.js +28 -0
  73. data/app/src/components/host/executors.js +77 -0
  74. data/app/src/components/host/host_link.js +18 -0
  75. data/app/src/components/host/list.js +3 -0
  76. data/app/src/components/host/updaters.js +77 -0
  77. data/app/src/components/host/view.js +145 -0
  78. data/app/src/components/layer/list.js +3 -0
  79. data/app/src/components/layer/view.js +197 -0
  80. data/app/src/components/navbar/__tests__/navbar-test.js +21 -0
  81. data/app/src/components/navbar/nav_search_form.js +40 -0
  82. data/app/src/components/navbar/navbar.js +96 -0
  83. data/app/src/components/notfound/notfound.js +35 -0
  84. data/app/src/components/notfound/notfound.less +21 -0
  85. data/app/src/components/owned_resources/owned_resources.js +84 -0
  86. data/app/src/components/owned_resources/owned_resources_box.js +101 -0
  87. data/app/src/components/permissions/permissions.js +138 -0
  88. data/app/src/components/permissions/permissions_table.js +101 -0
  89. data/app/src/components/policy/list.js +3 -0
  90. data/app/src/components/policy/view.js +107 -0
  91. data/app/src/components/refresh/refresh.js +29 -0
  92. data/app/src/components/refresh/refresh.less +15 -0
  93. data/app/src/components/search/group.js +43 -0
  94. data/app/src/components/search/group_heading.js +50 -0
  95. data/app/src/components/search/group_title.js +37 -0
  96. data/app/src/components/search/result_item.js +55 -0
  97. data/app/src/components/search/search.js +118 -0
  98. data/app/src/components/user/activity.js +112 -0
  99. data/app/src/components/user/details.js +30 -0
  100. data/app/src/components/user/list.js +3 -0
  101. data/app/src/components/user/pubkeys.js +118 -0
  102. data/app/src/components/user/pubkeys.less +56 -0
  103. data/app/src/components/user/view.js +143 -0
  104. data/app/src/components/variable/activity.js +101 -0
  105. data/app/src/components/variable/details.js +46 -0
  106. data/app/src/components/variable/fetchers.js +77 -0
  107. data/app/src/components/variable/list.js +3 -0
  108. data/app/src/components/variable/updaters.js +77 -0
  109. data/app/src/components/variable/view.js +115 -0
  110. data/app/src/constants.js +36 -0
  111. data/{public → app/src}/images/conjur-logo.svg +0 -0
  112. data/{public → app/src}/images/icon-client-pc.svg +0 -0
  113. data/{public → app/src}/images/icon-environment.png +0 -0
  114. data/{public → app/src}/images/icon-person.svg +0 -0
  115. data/{public → app/src}/images/icon-policy.png +0 -0
  116. data/{public → app/src}/images/icon-resource.png +0 -0
  117. data/{public → app/src}/images/icon-service-dots.svg +0 -0
  118. data/{public → app/src}/images/icon-variable.png +0 -0
  119. data/app/src/pages/index.html +27 -0
  120. data/app/src/routes.js +64 -0
  121. data/app/src/stores/app_store.js +35 -0
  122. data/app/src/stores/audit_store.js +143 -0
  123. data/app/src/stores/graph_store.js +51 -0
  124. data/app/src/stores/group_store.js +104 -0
  125. data/app/src/stores/host_store.js +111 -0
  126. data/app/src/stores/layer_store.js +115 -0
  127. data/app/src/stores/policy_store.js +88 -0
  128. data/app/src/stores/resources_store.js +115 -0
  129. data/app/src/stores/route_store.js +21 -0
  130. data/app/src/stores/search_store.js +77 -0
  131. data/app/src/stores/user_store.js +109 -0
  132. data/app/src/stores/variable_store.js +93 -0
  133. data/app/src/styles/bootstrap.less +54 -0
  134. data/{public/css → app/src/styles}/styles.less +26 -82
  135. data/app/src/utils.js +38 -0
  136. data/app/src/vendor/pace.js +2 -0
  137. data/conjur-asset-ui.gemspec +3 -4
  138. data/docker/assets-build/Dockerfile +12 -0
  139. data/docker/conjur-ui/Dockerfile +33 -0
  140. data/docker/conjur-ui/README.md +38 -0
  141. data/docker/conjur-ui/mime.types +90 -0
  142. data/docker/conjur-ui/nginx.conf +110 -0
  143. data/docker/conjur-ui/start.py +72 -0
  144. data/docker/conjur-ui/start.sh +18 -0
  145. data/docker/conjur-ui/test.env +8 -0
  146. data/lib/conjur-asset-ui-version.rb +1 -1
  147. data/lib/conjur/command/ui.rb +10 -2
  148. data/lib/conjur/webserver/home.rb +3 -3
  149. data/lib/conjur/webserver/login.rb +1 -1
  150. data/lib/conjur/webserver/server.rb +16 -4
  151. data/public/js/views/roleGraph.js +91 -0
  152. metadata +167 -105
  153. data/.jshintrc +0 -41
  154. data/bower.json +0 -98
  155. data/gulpfile.js +0 -139
  156. data/package.json +0 -47
  157. data/preprocessor.js +0 -7
  158. data/public/_client_libs.html +0 -9
  159. data/public/index.html.erb +0 -63
  160. data/public/js/init.js +0 -196
  161. data/public/js/lib/pace.js +0 -2
  162. data/public/js/lib/sorted-set.no-require.js +0 -1145
  163. data/public/js/lib/sorted-set.no-require.js.txt +0 -6
  164. data/public/js/models/groupRecord.js +0 -72
  165. data/public/js/models/hostRecord.js +0 -60
  166. data/public/js/models/layerRecord.js +0 -79
  167. data/public/js/models/namespace.js +0 -12
  168. data/public/js/models/policyList.js +0 -16
  169. data/public/js/models/policyRecord.js +0 -54
  170. data/public/js/models/record.js +0 -117
  171. data/public/js/models/resourceList.js +0 -87
  172. data/public/js/models/userList.js +0 -25
  173. data/public/js/models/userRecord.js +0 -75
  174. data/public/js/models/variableList.js +0 -27
  175. data/public/js/models/variableRecord.js +0 -77
  176. data/public/js/routers.js +0 -242
  177. data/public/js/views/annotations.js +0 -47
  178. data/public/js/views/audit.js +0 -369
  179. data/public/js/views/breadcrumbs.js +0 -62
  180. data/public/js/views/chart.js +0 -617
  181. data/public/js/views/dashboard.js +0 -146
  182. data/public/js/views/generic.js +0 -122
  183. data/public/js/views/group.js +0 -109
  184. data/public/js/views/groups.js +0 -26
  185. data/public/js/views/host.js +0 -200
  186. data/public/js/views/hosts.js +0 -26
  187. data/public/js/views/layer.js +0 -146
  188. data/public/js/views/layers.js +0 -26
  189. data/public/js/views/mixins/search.js +0 -22
  190. data/public/js/views/mixins/tabs.js +0 -154
  191. data/public/js/views/namespaces.js +0 -40
  192. data/public/js/views/navSearch.js +0 -36
  193. data/public/js/views/owned.js +0 -184
  194. data/public/js/views/permissions.js +0 -254
  195. data/public/js/views/policies.js +0 -26
  196. data/public/js/views/policy.js +0 -70
  197. data/public/js/views/resource.js +0 -59
  198. data/public/js/views/role.js +0 -63
  199. data/public/js/views/searchResults.js +0 -212
  200. data/public/js/views/sections.js +0 -226
  201. data/public/js/views/time.js +0 -39
  202. data/public/js/views/user.js +0 -297
  203. data/public/js/views/users.js +0 -26
  204. data/public/js/views/variable.js +0 -310
  205. data/public/js/views/variables.js +0 -26
  206. data/spec/javascripts/helpers/.gitkeep +0 -0
  207. data/spec/javascripts/support/jasmine.yml +0 -112
  208. data/spec/javascripts/support/jasmine_helper.rb +0 -22
  209. data/spec/javascripts/support/run.html.erb +0 -23
  210. data/spec/javascripts/views/AuditSpec.js +0 -22
  211. data/spec/javascripts/views/AuditSpec.ls +0 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e84b34bd073f6957e24c4681011fc2a76e885910
4
- data.tar.gz: fa39fd6270a10f8574a6b5b3b9e23bfd4f6700b0
3
+ metadata.gz: 505366556661ac37ae18b6c7027bfdacc6d79b3a
4
+ data.tar.gz: 9962fd553595a6b2361a32816ba9254a5a59d273
5
5
  SHA512:
6
- metadata.gz: d0b428ca78cdafe84e6bc7b32c0adfd46ee67b9a150ee409a35a1699aca87e849ba51fffe9d7a0434fad28e51c45721681ea28bc947383dcca4b80ab3721bdbe
7
- data.tar.gz: 9fe20dd4f9f496533bbcd8edb561ac34171602268052a4ec60167c3c861755fceb08b8926f33980b1aaa24c724fc8d90a5c9fb4e32b4de987b0bfc17dcd85490
6
+ metadata.gz: 010ac6a00c86a5852879c902dc15a58e45c68cd8806a71dfa4a00f4ee423d10a72e6512e23e6b0dde339326fb92e0b9b791b6b683602c84213cd6dbdf823618d
7
+ data.tar.gz: ba9389546fb4a9c1d757a895db9002f5d5afc7557a819325a66fd1f6f2220a8da3b687757e76191362216bc09a869a6bccce64421e142b40d46462beb51f8f55
data/.gitignore CHANGED
@@ -17,6 +17,11 @@ test/version_tmp
17
17
  tmp
18
18
  .idea
19
19
  .DS_Store
20
- bower_components/
21
- node_modules/
22
- public/build/
20
+ npm-debug.log
21
+ app/npm-debug.log
22
+ app/node_modules/
23
+ app/build/
24
+ *.iml
25
+ *.conjurrc
26
+ .ruby-version
27
+ .ruby-gemset
@@ -1,3 +1,13 @@
1
+ # v1.6.0
2
+
3
+ * two operation modes supported: Conjur CLI plugin and regular JS
4
+ * improved role graph
5
+ * bugfixes
6
+
7
+ # v1.5.0
8
+
9
+ * `-p` and `--headless` options for launching the UI
10
+
1
11
  # v1.4.2
2
12
 
3
13
  * New dashboard
@@ -0,0 +1,19 @@
1
+ .PHONY: warn clean assets docker
2
+
3
+ DOCKERNAME?=conjurinc/conjur-ui
4
+
5
+ warn:
6
+ @echo "This make process sucks. You are warned!"
7
+
8
+ clean: warn
9
+ rm -rf app/build app/node_modules docker/conjur-ui/assets
10
+
11
+ assets: warn clean
12
+ bundle install
13
+ rake deps:install assets:build
14
+ mv app/build docker/conjur-ui/assets
15
+
16
+ docker: warn assets
17
+ #docker pull $(DOCKERNAME)
18
+ docker build -t $(DOCKERNAME) docker/conjur-ui
19
+
data/README.md CHANGED
@@ -21,11 +21,8 @@ gem 'conjur-asset-ui'
21
21
  Next, edit your `.conjurrc` file to add the `"ui"` plugin, for example:
22
22
 
23
23
  ```
24
- stack: v4
25
- account: sandbox
26
24
  plugins:
27
25
  - ui
28
- - layer
29
26
  ```
30
27
 
31
28
  Make sure you are logged into conjur:
data/Rakefile CHANGED
@@ -1,8 +1,5 @@
1
1
  require 'bundler/gem_tasks'
2
2
 
3
- require 'jasmine'
4
- load 'jasmine/tasks/jasmine.rake'
5
-
6
3
  begin
7
4
  require 'cucumber'
8
5
  require 'cucumber/rake/task'
@@ -24,40 +21,48 @@ rescue LoadError
24
21
  end
25
22
 
26
23
  namespace :deps do
27
- desc 'Installs non-ruby dependencies like gulp, bower and nodejs packages'
24
+ desc 'Installs non-ruby dependencies like gulp and nodejs packages'
28
25
  task :install do
29
- sh 'sudo npm install -g gulp bower'
30
- sh 'npm install'
31
- sh 'bower install'
26
+ Dir.chdir('app') do
27
+ sh 'npm install'
28
+ end
32
29
  end
33
30
 
34
- desc 'Updates npm and bower packages'
31
+ desc 'Updates npm packages'
35
32
  task :update do
36
- sh 'npm update'
37
- sh 'bower update'
33
+ Dir.chdir('app') do
34
+ sh 'npm update'
35
+ end
38
36
  end
39
37
 
40
- desc 'Removes npm and bower packages from filesystem'
38
+ desc 'Removes npm packages from filesystem'
41
39
  task :clean do
42
- sh 'rm -rf node_modules'
43
- sh 'rm -rf bower_components'
40
+ Dir.chdir('app') do
41
+ sh 'rm -rf node_modules'
42
+ end
44
43
  end
45
44
  end
46
45
 
47
46
  namespace :assets do
48
47
  desc 'Build js and css'
49
48
  task :build do
50
- sh 'gulp build'
49
+ Dir.chdir('app') do
50
+ sh './node_modules/gulp/bin/gulp.js build'
51
+ end
51
52
  end
52
53
 
53
54
  desc 'Watch the assets files and rebuild when one of them changes'
54
55
  task :watch => :build do
55
- sh 'gulp watch'
56
+ Dir.chdir('app') do
57
+ sh './node_modules/gulp/bin/gulp.js watch'
58
+ end
56
59
  end
57
60
 
58
61
  desc 'Clean builded assets'
59
62
  task :clean do
60
- sh 'gulp clean'
63
+ Dir.chdir('app') do
64
+ sh './node_modules/gulp/bin/gulp.js clean'
65
+ end
61
66
  end
62
67
  end
63
68
 
@@ -66,6 +71,6 @@ task :build => %w(deps:install assets:build)
66
71
  namespace :git do
67
72
  desc 'Executes git clean'
68
73
  task :clean do
69
- sh 'git clean -dfX'
74
+ sh 'git clean -dfx'
70
75
  end
71
76
  end
data/TODO.md CHANGED
@@ -1,31 +1,8 @@
1
- # General
2
-
3
- 1. Flux?
4
- 2. Reflux?
5
- 3. Astarisx?
6
-
7
- # JS
8
-
9
- 1. Make audit.js readable
10
- 2. Extract from audit.js common components and refactor it
11
- 3. Better models
12
- 4. Create navigation menu component
13
-
14
-
15
1
  # General JS
16
2
 
17
- 1. Drop backbone
18
- 2. Think how to replace backbone history
19
- 3. Drop prelude-ls
20
- 4. Drop jquery everywhere
21
- 5. Find nice library for ajax requests
22
- 6. Move from underscore to lo-dash
23
- 7. Drop underscore.string
24
- 8. Drop underscore-deep-extend
25
3
  9. Drop react-bootstrap and bootstrap.js
26
4
 
27
5
  # CSS
28
6
 
29
7
  1. Move to SASS
30
- 2. Break monolite file in to modules
31
8
  3. More BEM everywhere
@@ -0,0 +1,304 @@
1
+ {
2
+ "always-semicolon": true,
3
+ "block-indent": 2,
4
+ "color-case": "lower",
5
+ "color-shorthand": true,
6
+ "element-case": "lower",
7
+ "eof-newline": true,
8
+ "leading-zero": false,
9
+ "remove-empty-rulesets": true,
10
+ "space-after-colon": 1,
11
+ "space-after-combinator": 1,
12
+ "space-before-selector-delimiter": 0,
13
+ "space-between-declarations": "\n",
14
+ "space-after-opening-brace": "\n",
15
+ "space-before-closing-brace": "\n",
16
+ "space-before-colon": 0,
17
+ "space-before-combinator": 1,
18
+ "space-before-opening-brace": 1,
19
+ "strip-spaces": true,
20
+ "unitless-zero": true,
21
+ "vendor-prefix-align": true,
22
+ "sort-order": [
23
+ [
24
+ "position",
25
+ "top",
26
+ "right",
27
+ "bottom",
28
+ "left",
29
+ "z-index",
30
+ "display",
31
+ "float",
32
+ "width",
33
+ "min-width",
34
+ "max-width",
35
+ "height",
36
+ "min-height",
37
+ "max-height",
38
+ "-webkit-box-sizing",
39
+ "-moz-box-sizing",
40
+ "box-sizing",
41
+ "-webkit-appearance",
42
+ "padding",
43
+ "padding-top",
44
+ "padding-right",
45
+ "padding-bottom",
46
+ "padding-left",
47
+ "margin",
48
+ "margin-top",
49
+ "margin-right",
50
+ "margin-bottom",
51
+ "margin-left",
52
+ "overflow",
53
+ "overflow-x",
54
+ "overflow-y",
55
+ "-webkit-overflow-scrolling",
56
+ "-ms-overflow-x",
57
+ "-ms-overflow-y",
58
+ "-ms-overflow-style",
59
+ "clip",
60
+ "clear",
61
+ "font",
62
+ "font-family",
63
+ "font-size",
64
+ "font-style",
65
+ "font-weight",
66
+ "font-variant",
67
+ "font-size-adjust",
68
+ "font-stretch",
69
+ "font-effect",
70
+ "font-emphasize",
71
+ "font-emphasize-position",
72
+ "font-emphasize-style",
73
+ "font-smooth",
74
+ "-webkit-hyphens",
75
+ "-moz-hyphens",
76
+ "hyphens",
77
+ "line-height",
78
+ "color",
79
+ "text-align",
80
+ "-webkit-text-align-last",
81
+ "-moz-text-align-last",
82
+ "-ms-text-align-last",
83
+ "text-align-last",
84
+ "text-emphasis",
85
+ "text-emphasis-color",
86
+ "text-emphasis-style",
87
+ "text-emphasis-position",
88
+ "text-decoration",
89
+ "text-indent",
90
+ "text-justify",
91
+ "text-outline",
92
+ "-ms-text-overflow",
93
+ "text-overflow",
94
+ "text-overflow-ellipsis",
95
+ "text-overflow-mode",
96
+ "text-shadow",
97
+ "text-transform",
98
+ "text-wrap",
99
+ "-webkit-text-size-adjust",
100
+ "-ms-text-size-adjust",
101
+ "letter-spacing",
102
+ "-ms-word-break",
103
+ "word-break",
104
+ "word-spacing",
105
+ "-ms-word-wrap",
106
+ "word-wrap",
107
+ "-moz-tab-size",
108
+ "-o-tab-size",
109
+ "tab-size",
110
+ "white-space",
111
+ "vertical-align",
112
+ "list-style",
113
+ "list-style-position",
114
+ "list-style-type",
115
+ "list-style-image",
116
+ "pointer-events",
117
+ "-ms-touch-action",
118
+ "touch-action",
119
+ "cursor",
120
+ "visibility",
121
+ "zoom",
122
+ "flex-direction",
123
+ "flex-order",
124
+ "flex-pack",
125
+ "flex-align",
126
+ "table-layout",
127
+ "empty-cells",
128
+ "caption-side",
129
+ "border-spacing",
130
+ "border-collapse",
131
+ "content",
132
+ "quotes",
133
+ "counter-reset",
134
+ "counter-increment",
135
+ "resize",
136
+ "-webkit-user-select",
137
+ "-moz-user-select",
138
+ "-ms-user-select",
139
+ "-o-user-select",
140
+ "user-select",
141
+ "nav-index",
142
+ "nav-up",
143
+ "nav-right",
144
+ "nav-down",
145
+ "nav-left",
146
+ "background",
147
+ "background-color",
148
+ "background-image",
149
+ "-ms-filter:\\'progid:DXImageTransform.Microsoft.gradient",
150
+ "filter:progid:DXImageTransform.Microsoft.gradient",
151
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader",
152
+ "filter",
153
+ "background-repeat",
154
+ "background-attachment",
155
+ "background-position",
156
+ "background-position-x",
157
+ "background-position-y",
158
+ "-webkit-background-clip",
159
+ "-moz-background-clip",
160
+ "background-clip",
161
+ "background-origin",
162
+ "-webkit-background-size",
163
+ "-moz-background-size",
164
+ "-o-background-size",
165
+ "background-size",
166
+ "border",
167
+ "border-color",
168
+ "border-style",
169
+ "border-width",
170
+ "border-top",
171
+ "border-top-color",
172
+ "border-top-style",
173
+ "border-top-width",
174
+ "border-right",
175
+ "border-right-color",
176
+ "border-right-style",
177
+ "border-right-width",
178
+ "border-bottom",
179
+ "border-bottom-color",
180
+ "border-bottom-style",
181
+ "border-bottom-width",
182
+ "border-left",
183
+ "border-left-color",
184
+ "border-left-style",
185
+ "border-left-width",
186
+ "border-radius",
187
+ "border-top-left-radius",
188
+ "border-top-right-radius",
189
+ "border-bottom-right-radius",
190
+ "border-bottom-left-radius",
191
+ "-webkit-border-image",
192
+ "-moz-border-image",
193
+ "-o-border-image",
194
+ "border-image",
195
+ "-webkit-border-image-source",
196
+ "-moz-border-image-source",
197
+ "-o-border-image-source",
198
+ "border-image-source",
199
+ "-webkit-border-image-slice",
200
+ "-moz-border-image-slice",
201
+ "-o-border-image-slice",
202
+ "border-image-slice",
203
+ "-webkit-border-image-width",
204
+ "-moz-border-image-width",
205
+ "-o-border-image-width",
206
+ "border-image-width",
207
+ "-webkit-border-image-outset",
208
+ "-moz-border-image-outset",
209
+ "-o-border-image-outset",
210
+ "border-image-outset",
211
+ "-webkit-border-image-repeat",
212
+ "-moz-border-image-repeat",
213
+ "-o-border-image-repeat",
214
+ "border-image-repeat",
215
+ "outline",
216
+ "outline-width",
217
+ "outline-style",
218
+ "outline-color",
219
+ "outline-offset",
220
+ "-webkit-box-shadow",
221
+ "-moz-box-shadow",
222
+ "box-shadow",
223
+ "filter:progid:DXImageTransform.Microsoft.Alpha(Opacity",
224
+ "-ms-filter:\\'progid:DXImageTransform.Microsoft.Alpha",
225
+ "opacity",
226
+ "-ms-interpolation-mode",
227
+ "-webkit-transition",
228
+ "-moz-transition",
229
+ "-ms-transition",
230
+ "-o-transition",
231
+ "transition",
232
+ "-webkit-transition-delay",
233
+ "-moz-transition-delay",
234
+ "-ms-transition-delay",
235
+ "-o-transition-delay",
236
+ "transition-delay",
237
+ "-webkit-transition-timing-function",
238
+ "-moz-transition-timing-function",
239
+ "-ms-transition-timing-function",
240
+ "-o-transition-timing-function",
241
+ "transition-timing-function",
242
+ "-webkit-transition-duration",
243
+ "-moz-transition-duration",
244
+ "-ms-transition-duration",
245
+ "-o-transition-duration",
246
+ "transition-duration",
247
+ "-webkit-transition-property",
248
+ "-moz-transition-property",
249
+ "-ms-transition-property",
250
+ "-o-transition-property",
251
+ "transition-property",
252
+ "-webkit-transform",
253
+ "-moz-transform",
254
+ "-ms-transform",
255
+ "-o-transform",
256
+ "transform",
257
+ "-webkit-transform-origin",
258
+ "-moz-transform-origin",
259
+ "-ms-transform-origin",
260
+ "-o-transform-origin",
261
+ "transform-origin",
262
+ "-webkit-animation",
263
+ "-moz-animation",
264
+ "-ms-animation",
265
+ "-o-animation",
266
+ "animation",
267
+ "-webkit-animation-name",
268
+ "-moz-animation-name",
269
+ "-ms-animation-name",
270
+ "-o-animation-name",
271
+ "animation-name",
272
+ "-webkit-animation-duration",
273
+ "-moz-animation-duration",
274
+ "-ms-animation-duration",
275
+ "-o-animation-duration",
276
+ "animation-duration",
277
+ "-webkit-animation-play-state",
278
+ "-moz-animation-play-state",
279
+ "-ms-animation-play-state",
280
+ "-o-animation-play-state",
281
+ "animation-play-state",
282
+ "-webkit-animation-timing-function",
283
+ "-moz-animation-timing-function",
284
+ "-ms-animation-timing-function",
285
+ "-o-animation-timing-function",
286
+ "animation-timing-function",
287
+ "-webkit-animation-delay",
288
+ "-moz-animation-delay",
289
+ "-ms-animation-delay",
290
+ "-o-animation-delay",
291
+ "animation-delay",
292
+ "-webkit-animation-iteration-count",
293
+ "-moz-animation-iteration-count",
294
+ "-ms-animation-iteration-count",
295
+ "-o-animation-iteration-count",
296
+ "animation-iteration-count",
297
+ "-webkit-animation-direction",
298
+ "-moz-animation-direction",
299
+ "-ms-animation-direction",
300
+ "-o-animation-direction",
301
+ "animation-direction"
302
+ ]
303
+ ]
304
+ }