kms 1.0.1 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (196) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/kms/application.js +1 -0
  3. data/app/assets/javascripts/kms/application/controllers/assets_controller.coffee.erb +14 -4
  4. data/app/assets/javascripts/kms/application/controllers/pages_controller.coffee.erb +12 -2
  5. data/app/assets/javascripts/kms/application/controllers/snippets_controller.coffee.erb +13 -3
  6. data/app/assets/javascripts/kms/application/controllers/templates_controller.coffee.erb +13 -3
  7. data/app/assets/javascripts/kms/application/controllers/users_controller.coffee +5 -5
  8. data/app/assets/javascripts/kms/application/module.coffee +6 -2
  9. data/app/assets/javascripts/kms/application/routes.coffee.erb +10 -0
  10. data/app/assets/javascripts/templates/assets/edit.html.slim +2 -1
  11. data/app/assets/javascripts/templates/assets/form.html.slim +1 -1
  12. data/app/assets/javascripts/templates/pages/edit.html.slim +1 -0
  13. data/app/assets/javascripts/templates/shared/hotkey_notification.html.slim +6 -0
  14. data/app/assets/javascripts/templates/snippets/edit.html.slim +1 -0
  15. data/app/assets/javascripts/templates/templates/edit.html.slim +1 -0
  16. data/app/assets/javascripts/templates/users/edit.html.slim +5 -0
  17. data/app/assets/javascripts/templates/users/form.html.slim +3 -2
  18. data/app/assets/javascripts/templates/users/index.html.slim +2 -1
  19. data/app/assets/stylesheets/kms/custom.css.scss +10 -0
  20. data/app/controllers/kms/assets_controller.rb +6 -3
  21. data/app/controllers/kms/users_controller.rb +14 -0
  22. data/app/services/kms/resource_service.rb +3 -1
  23. data/app/views/layouts/kms/kms.html.erb +1 -1
  24. data/config/initializers/devise.rb +9 -0
  25. data/config/locales/en.yml +12 -0
  26. data/config/locales/ru.yml +12 -0
  27. data/config/routes.rb +1 -1
  28. data/lib/kms/engine.rb +1 -1
  29. data/lib/kms/version.rb +1 -1
  30. data/spec/controllers/kms/assets_controller_spec.rb +28 -10
  31. data/spec/controllers/kms/users_controller_spec.rb +23 -0
  32. data/spec/internal/config/routes.rb +1 -1
  33. data/spec/internal/log/test.log +0 -105823
  34. data/vendor/assets/bower.json +5 -4
  35. data/vendor/assets/bower_components/angular-cookies/angular-cookies.js +22 -18
  36. data/vendor/assets/bower_components/angular-cookies/angular-cookies.min.js +4 -4
  37. data/vendor/assets/bower_components/angular-cookies/angular-cookies.min.js.map +2 -2
  38. data/vendor/assets/bower_components/angular-cookies/bower.json +2 -2
  39. data/vendor/assets/bower_components/angular-cookies/package.json +1 -1
  40. data/vendor/assets/bower_components/angular-hotkeys/Gruntfile.js +118 -0
  41. data/vendor/assets/bower_components/angular-hotkeys/LICENSE +20 -0
  42. data/vendor/assets/bower_components/angular-hotkeys/README.md +248 -0
  43. data/vendor/assets/bower_components/angular-hotkeys/bower.json +19 -0
  44. data/vendor/assets/bower_components/angular-hotkeys/build/hotkeys.css +110 -0
  45. data/vendor/assets/bower_components/angular-hotkeys/build/hotkeys.js +1661 -0
  46. data/vendor/assets/bower_components/angular-hotkeys/build/hotkeys.min.css +1 -0
  47. data/vendor/assets/bower_components/angular-hotkeys/build/hotkeys.min.js +7 -0
  48. data/vendor/assets/bower_components/angular-hotkeys/package.json +45 -0
  49. data/vendor/assets/bower_components/angular-hotkeys/src/hotkeys.css +104 -0
  50. data/vendor/assets/bower_components/angular-hotkeys/src/hotkeys.js +633 -0
  51. data/vendor/assets/bower_components/angular-loading-bar/CHANGELOG.md +33 -0
  52. data/vendor/assets/bower_components/angular-loading-bar/CONTRIBUTING.md +17 -0
  53. data/vendor/assets/bower_components/angular-loading-bar/Gruntfile.js +9 -1
  54. data/vendor/assets/bower_components/angular-loading-bar/ISSUE_TEMPLATE.md +14 -0
  55. data/vendor/assets/bower_components/angular-loading-bar/PULL_REQUEST_TEMPLATE.md +13 -0
  56. data/vendor/assets/bower_components/angular-loading-bar/README.md +30 -3
  57. data/vendor/assets/bower_components/angular-loading-bar/bower.json +11 -6
  58. data/vendor/assets/bower_components/angular-loading-bar/build/loading-bar.css +5 -5
  59. data/vendor/assets/bower_components/angular-loading-bar/build/loading-bar.js +39 -12
  60. data/vendor/assets/bower_components/angular-loading-bar/build/loading-bar.min.css +1 -8
  61. data/vendor/assets/bower_components/angular-loading-bar/build/loading-bar.min.js +3 -3
  62. data/vendor/assets/bower_components/angular-loading-bar/index.js +2 -0
  63. data/vendor/assets/bower_components/angular-loading-bar/package.json +12 -15
  64. data/vendor/assets/bower_components/angular-loading-bar/src/loading-bar.css +3 -3
  65. data/vendor/assets/bower_components/angular-loading-bar/src/loading-bar.js +37 -10
  66. data/vendor/assets/bower_components/angular-sanitize/angular-sanitize.js +504 -386
  67. data/vendor/assets/bower_components/angular-sanitize/angular-sanitize.min.js +13 -12
  68. data/vendor/assets/bower_components/angular-sanitize/angular-sanitize.min.js.map +3 -3
  69. data/vendor/assets/bower_components/angular-sanitize/bower.json +2 -2
  70. data/vendor/assets/bower_components/angular-sanitize/package.json +1 -1
  71. data/vendor/assets/bower_components/angular-ui-router/CHANGELOG.md +1410 -0
  72. data/vendor/assets/bower_components/angular-ui-router/CONTRIBUTING.md +64 -16
  73. data/vendor/assets/bower_components/angular-ui-router/DOCS.md +48 -0
  74. data/vendor/assets/bower_components/angular-ui-router/ISSUE_TEMPLATE.md +53 -0
  75. data/vendor/assets/bower_components/angular-ui-router/LICENSE +1 -1
  76. data/vendor/assets/bower_components/angular-ui-router/README.md +24 -211
  77. data/vendor/assets/bower_components/angular-ui-router/artifacts.json +8 -0
  78. data/vendor/assets/bower_components/angular-ui-router/bower.json +1 -23
  79. data/vendor/assets/bower_components/angular-ui-router/karma.conf.js +105 -0
  80. data/vendor/assets/bower_components/angular-ui-router/release/angular-ui-router.js +9744 -3901
  81. data/vendor/assets/bower_components/angular-ui-router/release/angular-ui-router.js.map +192 -0
  82. data/vendor/assets/bower_components/angular-ui-router/release/angular-ui-router.min.js +9 -4
  83. data/vendor/assets/bower_components/angular-ui-router/release/angular-ui-router.min.js.map +1679 -0
  84. data/vendor/assets/bower_components/angular-ui-router/release/resolveService.js +83 -0
  85. data/vendor/assets/bower_components/angular-ui-router/release/resolveService.js.map +19 -0
  86. data/vendor/assets/bower_components/angular-ui-router/release/resolveService.min.js +8 -0
  87. data/vendor/assets/bower_components/angular-ui-router/release/resolveService.min.js.map +47 -0
  88. data/vendor/assets/bower_components/angular-ui-router/release/stateEvents.js +294 -0
  89. data/vendor/assets/bower_components/angular-ui-router/release/stateEvents.js.map +17 -0
  90. data/vendor/assets/bower_components/angular-ui-router/release/stateEvents.min.js +8 -0
  91. data/vendor/assets/bower_components/angular-ui-router/release/stateEvents.min.js.map +102 -0
  92. data/vendor/assets/bower_components/angular-ui-router/release/ui-router-angularjs.js +2014 -0
  93. data/vendor/assets/bower_components/angular-ui-router/release/ui-router-angularjs.js.map +70 -0
  94. data/vendor/assets/bower_components/angular-ui-router/release/ui-router-angularjs.min.js +9 -0
  95. data/vendor/assets/bower_components/angular-ui-router/release/ui-router-angularjs.min.js.map +541 -0
  96. data/vendor/assets/bower_components/angular-ui-router/rollup.config.js +116 -0
  97. data/vendor/assets/bower_components/angular-ui-router/tslint.json +60 -0
  98. data/vendor/assets/bower_components/angular-ui-router/yarn.lock +4146 -0
  99. data/vendor/assets/bower_components/angular-ui-tree/yarn.lock +4945 -0
  100. data/vendor/assets/bower_components/angular/angular.js +4019 -2449
  101. data/vendor/assets/bower_components/angular/angular.min.js +331 -319
  102. data/vendor/assets/bower_components/angular/angular.min.js.gzip +0 -0
  103. data/vendor/assets/bower_components/angular/angular.min.js.map +3 -3
  104. data/vendor/assets/bower_components/angular/bower.json +1 -1
  105. data/vendor/assets/bower_components/angular/package.json +1 -1
  106. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/LICENSE +21 -0
  107. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/README.md +14 -14
  108. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/bower.json +25 -12
  109. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/development_index.html +59 -52
  110. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/dist/angularjs-dropdown-multiselect.min.js +1 -1
  111. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/index.html +73 -0
  112. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/package.json +19 -7
  113. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/pages/javascripts/pages/home/ExampleCtrl.js +126 -3
  114. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/pages/javascripts/pages/home/home.html +1262 -852
  115. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/pages/stylesheets/stylesheet.css +10 -5
  116. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/src/angularjs-dropdown-multiselect.js +612 -287
  117. metadata +66 -169
  118. data/spec/internal/config/database.yml +0 -7
  119. data/spec/internal/public/uploads/kms/asset/file/1/avatar.jpg +0 -0
  120. data/spec/internal/public/uploads/kms/asset/file/2/avatar.jpg +0 -0
  121. data/spec/internal/public/uploads/kms/asset/file/2/style.css +0 -1
  122. data/spec/internal/public/uploads/kms/asset/file/3/style.css +0 -1
  123. data/spec/internal/public/uploads/kms/asset/file/4/style.css +0 -1
  124. data/spec/internal/public/uploads/tmp/1500976987-41025-0002-0883/style.css +0 -1
  125. data/spec/internal/public/uploads/tmp/1500977082-41195-0002-6495/style.css +0 -1
  126. data/spec/internal/public/uploads/tmp/1500977109-41364-0002-4518/style.css +0 -1
  127. data/spec/internal/public/uploads/tmp/1500977152-41405-0002-2345/style.css +0 -1
  128. data/spec/internal/public/uploads/tmp/1500977327-41694-0002-5448/style.css +0 -1
  129. data/spec/internal/public/uploads/tmp/1500977376-41732-0002-7916/style.css +0 -1
  130. data/spec/internal/public/uploads/tmp/1500977392-41759-0002-7593/style.css +0 -1
  131. data/spec/internal/public/uploads/tmp/1500977410-42259-0002-7527/style.css +0 -1
  132. data/spec/internal/public/uploads/tmp/1500977429-42306-0002-5937/style.css +0 -1
  133. data/spec/internal/public/uploads/tmp/1500977437-42324-0002-5880/style.css +0 -1
  134. data/spec/internal/public/uploads/tmp/1500983228-53594-0002-4559/style.css +0 -1
  135. data/spec/internal/public/uploads/tmp/1500983284-53632-0002-6590/style.css +0 -1
  136. data/spec/internal/public/uploads/tmp/1500983360-53784-0002-7289/style.css +0 -1
  137. data/spec/internal/public/uploads/tmp/1500983469-54321-0002-0386/avatar.jpg +0 -0
  138. data/spec/internal/public/uploads/tmp/1500983469-54321-0004-5691/style.css +0 -1
  139. data/spec/internal/public/uploads/tmp/1500983511-54352-0002-5720/avatar.jpg +0 -0
  140. data/spec/internal/public/uploads/tmp/1500983511-54352-0004-1399/style.css +0 -1
  141. data/spec/internal/public/uploads/tmp/1500983610-54507-0002-4280/avatar.jpg +0 -0
  142. data/spec/internal/public/uploads/tmp/1500983610-54507-0004-9758/style.css +0 -1
  143. data/spec/internal/public/uploads/tmp/1500984466-57012-0002-4146/avatar.jpg +0 -0
  144. data/spec/internal/public/uploads/tmp/1500984466-57012-0004-5895/style.css +0 -1
  145. data/spec/internal/public/uploads/tmp/1500984509-57158-0002-9657/avatar.jpg +0 -0
  146. data/spec/internal/public/uploads/tmp/1500984509-57158-0004-5003/style.css +0 -1
  147. data/spec/internal/public/uploads/tmp/1500984616-57697-0002-7201/avatar.jpg +0 -0
  148. data/spec/internal/public/uploads/tmp/1500984616-57697-0004-6255/style.css +0 -1
  149. data/spec/internal/public/uploads/tmp/1500985257-58947-0002-3629/avatar.jpg +0 -0
  150. data/spec/internal/public/uploads/tmp/1500985257-58947-0004-5338/style.css +0 -1
  151. data/spec/internal/public/uploads/tmp/1500985407-58947-0006-5929/style.css +0 -1
  152. data/spec/internal/public/uploads/tmp/1500985473-59264-0002-0397/avatar.jpg +0 -0
  153. data/spec/internal/public/uploads/tmp/1500985473-59264-0004-6493/style.css +0 -1
  154. data/spec/internal/public/uploads/tmp/1500985475-59264-0007-8674/style.css +0 -1
  155. data/spec/internal/public/uploads/tmp/1500985538-59468-0002-9206/avatar.jpg +0 -0
  156. data/spec/internal/public/uploads/tmp/1500985538-59468-0004-2586/style.css +0 -1
  157. data/spec/internal/public/uploads/tmp/1500985538-59468-0007-6200/style.css +0 -1
  158. data/spec/internal/public/uploads/tmp/1500988358-65877-0002-4528/avatar.jpg +0 -0
  159. data/spec/internal/public/uploads/tmp/1500988358-65877-0004-5904/style.css +0 -1
  160. data/spec/internal/public/uploads/tmp/1500988358-65877-0007-7320/style.css +0 -1
  161. data/spec/internal/public/uploads/tmp/1500988407-65916-0002-3138/avatar.jpg +0 -0
  162. data/spec/internal/public/uploads/tmp/1500988407-65916-0004-5400/style.css +0 -1
  163. data/spec/internal/public/uploads/tmp/1500988407-65916-0007-1655/style.css +0 -1
  164. data/spec/internal/public/uploads/tmp/1500988421-65950-0002-9415/avatar.jpg +0 -0
  165. data/spec/internal/public/uploads/tmp/1500988421-65950-0004-7130/style.css +0 -1
  166. data/spec/internal/public/uploads/tmp/1500988421-65950-0007-9886/style.css +0 -1
  167. data/spec/internal/public/uploads/tmp/1500988435-65981-0002-3228/avatar.jpg +0 -0
  168. data/spec/internal/public/uploads/tmp/1500988435-65981-0004-3682/style.css +0 -1
  169. data/spec/internal/public/uploads/tmp/1500988435-65981-0007-1582/style.css +0 -1
  170. data/spec/internal/public/uploads/tmp/1500988475-66122-0002-9516/avatar.jpg +0 -0
  171. data/spec/internal/public/uploads/tmp/1500988475-66122-0004-5634/style.css +0 -1
  172. data/spec/internal/public/uploads/tmp/1500988530-66122-0007-2272/style.css +0 -1
  173. data/spec/internal/public/uploads/tmp/1500988554-66315-0002-6262/avatar.jpg +0 -0
  174. data/spec/internal/public/uploads/tmp/1500988554-66315-0004-6099/style.css +0 -1
  175. data/spec/internal/public/uploads/tmp/1500988554-66315-0007-1632/style.css +0 -1
  176. data/spec/internal/public/uploads/tmp/1500991751-73722-0002-9937/avatar.jpg +0 -0
  177. data/spec/internal/public/uploads/tmp/1500991751-73722-0004-8034/style.css +0 -1
  178. data/spec/internal/public/uploads/tmp/1500991751-73722-0007-7763/style.css +0 -1
  179. data/spec/internal/public/uploads/tmp/1501233238-34385-0002-3210/avatar.jpg +0 -0
  180. data/spec/internal/public/uploads/tmp/1501233238-34385-0004-5881/style.css +0 -1
  181. data/spec/internal/public/uploads/tmp/1501233238-34385-0007-6280/style.css +0 -1
  182. data/spec/internal/tmp/cache/assets/test/sprockets/v3.0/1XyAFYlYI0pK7WAgjR4PgXV6BgU6huJSviWmHetdCRs.cache +0 -1
  183. data/vendor/assets/bower_components/angular-ui-router/api/angular-ui-router.d.ts +0 -126
  184. data/vendor/assets/bower_components/angular-ui-router/src/common.js +0 -292
  185. data/vendor/assets/bower_components/angular-ui-router/src/resolve.js +0 -252
  186. data/vendor/assets/bower_components/angular-ui-router/src/state.js +0 -1373
  187. data/vendor/assets/bower_components/angular-ui-router/src/stateDirectives.js +0 -268
  188. data/vendor/assets/bower_components/angular-ui-router/src/stateFilters.js +0 -39
  189. data/vendor/assets/bower_components/angular-ui-router/src/templateFactory.js +0 -110
  190. data/vendor/assets/bower_components/angular-ui-router/src/urlMatcherFactory.js +0 -1036
  191. data/vendor/assets/bower_components/angular-ui-router/src/urlRouter.js +0 -413
  192. data/vendor/assets/bower_components/angular-ui-router/src/view.js +0 -71
  193. data/vendor/assets/bower_components/angular-ui-router/src/viewDirective.js +0 -302
  194. data/vendor/assets/bower_components/angular-ui-router/src/viewScroll.js +0 -52
  195. data/vendor/assets/bower_components/angularjs-dropdown-multiselect/pages/index.html +0 -67
  196. data/vendor/assets/bower_components/bootstrap/Gemfile.lock +0 -43
@@ -1,302 +0,0 @@
1
- /**
2
- * @ngdoc directive
3
- * @name ui.router.state.directive:ui-view
4
- *
5
- * @requires ui.router.state.$state
6
- * @requires $compile
7
- * @requires $controller
8
- * @requires $injector
9
- * @requires ui.router.state.$uiViewScroll
10
- * @requires $document
11
- *
12
- * @restrict ECA
13
- *
14
- * @description
15
- * The ui-view directive tells $state where to place your templates.
16
- *
17
- * @param {string=} name A view name. The name should be unique amongst the other views in the
18
- * same state. You can have views of the same name that live in different states.
19
- *
20
- * @param {string=} autoscroll It allows you to set the scroll behavior of the browser window
21
- * when a view is populated. By default, $anchorScroll is overridden by ui-router's custom scroll
22
- * service, {@link ui.router.state.$uiViewScroll}. This custom service let's you
23
- * scroll ui-view elements into view when they are populated during a state activation.
24
- *
25
- * *Note: To revert back to old [`$anchorScroll`](http://docs.angularjs.org/api/ng.$anchorScroll)
26
- * functionality, call `$uiViewScrollProvider.useAnchorScroll()`.*
27
- *
28
- * @param {string=} onload Expression to evaluate whenever the view updates.
29
- *
30
- * @example
31
- * A view can be unnamed or named.
32
- * <pre>
33
- * <!-- Unnamed -->
34
- * <div ui-view></div>
35
- *
36
- * <!-- Named -->
37
- * <div ui-view="viewName"></div>
38
- * </pre>
39
- *
40
- * You can only have one unnamed view within any template (or root html). If you are only using a
41
- * single view and it is unnamed then you can populate it like so:
42
- * <pre>
43
- * <div ui-view></div>
44
- * $stateProvider.state("home", {
45
- * template: "<h1>HELLO!</h1>"
46
- * })
47
- * </pre>
48
- *
49
- * The above is a convenient shortcut equivalent to specifying your view explicitly with the {@link ui.router.state.$stateProvider#views `views`}
50
- * config property, by name, in this case an empty name:
51
- * <pre>
52
- * $stateProvider.state("home", {
53
- * views: {
54
- * "": {
55
- * template: "<h1>HELLO!</h1>"
56
- * }
57
- * }
58
- * })
59
- * </pre>
60
- *
61
- * But typically you'll only use the views property if you name your view or have more than one view
62
- * in the same template. There's not really a compelling reason to name a view if its the only one,
63
- * but you could if you wanted, like so:
64
- * <pre>
65
- * <div ui-view="main"></div>
66
- * </pre>
67
- * <pre>
68
- * $stateProvider.state("home", {
69
- * views: {
70
- * "main": {
71
- * template: "<h1>HELLO!</h1>"
72
- * }
73
- * }
74
- * })
75
- * </pre>
76
- *
77
- * Really though, you'll use views to set up multiple views:
78
- * <pre>
79
- * <div ui-view></div>
80
- * <div ui-view="chart"></div>
81
- * <div ui-view="data"></div>
82
- * </pre>
83
- *
84
- * <pre>
85
- * $stateProvider.state("home", {
86
- * views: {
87
- * "": {
88
- * template: "<h1>HELLO!</h1>"
89
- * },
90
- * "chart": {
91
- * template: "<chart_thing/>"
92
- * },
93
- * "data": {
94
- * template: "<data_thing/>"
95
- * }
96
- * }
97
- * })
98
- * </pre>
99
- *
100
- * Examples for `autoscroll`:
101
- *
102
- * <pre>
103
- * <!-- If autoscroll present with no expression,
104
- * then scroll ui-view into view -->
105
- * <ui-view autoscroll/>
106
- *
107
- * <!-- If autoscroll present with valid expression,
108
- * then scroll ui-view into view if expression evaluates to true -->
109
- * <ui-view autoscroll='true'/>
110
- * <ui-view autoscroll='false'/>
111
- * <ui-view autoscroll='scopeVariable'/>
112
- * </pre>
113
- */
114
- $ViewDirective.$inject = ['$state', '$injector', '$uiViewScroll', '$interpolate'];
115
- function $ViewDirective( $state, $injector, $uiViewScroll, $interpolate) {
116
-
117
- function getService() {
118
- return ($injector.has) ? function(service) {
119
- return $injector.has(service) ? $injector.get(service) : null;
120
- } : function(service) {
121
- try {
122
- return $injector.get(service);
123
- } catch (e) {
124
- return null;
125
- }
126
- };
127
- }
128
-
129
- var service = getService(),
130
- $animator = service('$animator'),
131
- $animate = service('$animate');
132
-
133
- // Returns a set of DOM manipulation functions based on which Angular version
134
- // it should use
135
- function getRenderer(attrs, scope) {
136
- var statics = function() {
137
- return {
138
- enter: function (element, target, cb) { target.after(element); cb(); },
139
- leave: function (element, cb) { element.remove(); cb(); }
140
- };
141
- };
142
-
143
- if ($animate) {
144
- return {
145
- enter: function(element, target, cb) {
146
- var promise = $animate.enter(element, null, target, cb);
147
- if (promise && promise.then) promise.then(cb);
148
- },
149
- leave: function(element, cb) {
150
- var promise = $animate.leave(element, cb);
151
- if (promise && promise.then) promise.then(cb);
152
- }
153
- };
154
- }
155
-
156
- if ($animator) {
157
- var animate = $animator && $animator(scope, attrs);
158
-
159
- return {
160
- enter: function(element, target, cb) {animate.enter(element, null, target); cb(); },
161
- leave: function(element, cb) { animate.leave(element); cb(); }
162
- };
163
- }
164
-
165
- return statics();
166
- }
167
-
168
- var directive = {
169
- restrict: 'ECA',
170
- terminal: true,
171
- priority: 400,
172
- transclude: 'element',
173
- compile: function (tElement, tAttrs, $transclude) {
174
- return function (scope, $element, attrs) {
175
- var previousEl, currentEl, currentScope, latestLocals,
176
- onloadExp = attrs.onload || '',
177
- autoScrollExp = attrs.autoscroll,
178
- renderer = getRenderer(attrs, scope);
179
-
180
- scope.$on('$stateChangeSuccess', function() {
181
- updateView(false);
182
- });
183
- scope.$on('$viewContentLoading', function() {
184
- updateView(false);
185
- });
186
-
187
- updateView(true);
188
-
189
- function cleanupLastView() {
190
- if (previousEl) {
191
- previousEl.remove();
192
- previousEl = null;
193
- }
194
-
195
- if (currentScope) {
196
- currentScope.$destroy();
197
- currentScope = null;
198
- }
199
-
200
- if (currentEl) {
201
- renderer.leave(currentEl, function() {
202
- previousEl = null;
203
- });
204
-
205
- previousEl = currentEl;
206
- currentEl = null;
207
- }
208
- }
209
-
210
- function updateView(firstTime) {
211
- var newScope,
212
- name = getUiViewName(scope, attrs, $element, $interpolate),
213
- previousLocals = name && $state.$current && $state.$current.locals[name];
214
-
215
- if (!firstTime && previousLocals === latestLocals) return; // nothing to do
216
- newScope = scope.$new();
217
- latestLocals = $state.$current.locals[name];
218
-
219
- var clone = $transclude(newScope, function(clone) {
220
- renderer.enter(clone, $element, function onUiViewEnter() {
221
- if(currentScope) {
222
- currentScope.$emit('$viewContentAnimationEnded');
223
- }
224
-
225
- if (angular.isDefined(autoScrollExp) && !autoScrollExp || scope.$eval(autoScrollExp)) {
226
- $uiViewScroll(clone);
227
- }
228
- });
229
- cleanupLastView();
230
- });
231
-
232
- currentEl = clone;
233
- currentScope = newScope;
234
- /**
235
- * @ngdoc event
236
- * @name ui.router.state.directive:ui-view#$viewContentLoaded
237
- * @eventOf ui.router.state.directive:ui-view
238
- * @eventType emits on ui-view directive scope
239
- * @description *
240
- * Fired once the view is **loaded**, *after* the DOM is rendered.
241
- *
242
- * @param {Object} event Event object.
243
- */
244
- currentScope.$emit('$viewContentLoaded');
245
- currentScope.$eval(onloadExp);
246
- }
247
- };
248
- }
249
- };
250
-
251
- return directive;
252
- }
253
-
254
- $ViewDirectiveFill.$inject = ['$compile', '$controller', '$state', '$interpolate'];
255
- function $ViewDirectiveFill ( $compile, $controller, $state, $interpolate) {
256
- return {
257
- restrict: 'ECA',
258
- priority: -400,
259
- compile: function (tElement) {
260
- var initial = tElement.html();
261
- return function (scope, $element, attrs) {
262
- var current = $state.$current,
263
- name = getUiViewName(scope, attrs, $element, $interpolate),
264
- locals = current && current.locals[name];
265
-
266
- if (! locals) {
267
- return;
268
- }
269
-
270
- $element.data('$uiView', { name: name, state: locals.$$state });
271
- $element.html(locals.$template ? locals.$template : initial);
272
-
273
- var link = $compile($element.contents());
274
-
275
- if (locals.$$controller) {
276
- locals.$scope = scope;
277
- var controller = $controller(locals.$$controller, locals);
278
- if (locals.$$controllerAs) {
279
- scope[locals.$$controllerAs] = controller;
280
- }
281
- $element.data('$ngControllerController', controller);
282
- $element.children().data('$ngControllerController', controller);
283
- }
284
-
285
- link(scope);
286
- };
287
- }
288
- };
289
- }
290
-
291
- /**
292
- * Shared ui-view code for both directives:
293
- * Given scope, element, and its attributes, return the view's name
294
- */
295
- function getUiViewName(scope, attrs, element, $interpolate) {
296
- var name = $interpolate(attrs.uiView || attrs.name || '')(scope);
297
- var inherited = element.inheritedData('$uiView');
298
- return name.indexOf('@') >= 0 ? name : (name + '@' + (inherited ? inherited.state.name : ''));
299
- }
300
-
301
- angular.module('ui.router.state').directive('uiView', $ViewDirective);
302
- angular.module('ui.router.state').directive('uiView', $ViewDirectiveFill);
@@ -1,52 +0,0 @@
1
- /**
2
- * @ngdoc object
3
- * @name ui.router.state.$uiViewScrollProvider
4
- *
5
- * @description
6
- * Provider that returns the {@link ui.router.state.$uiViewScroll} service function.
7
- */
8
- function $ViewScrollProvider() {
9
-
10
- var useAnchorScroll = false;
11
-
12
- /**
13
- * @ngdoc function
14
- * @name ui.router.state.$uiViewScrollProvider#useAnchorScroll
15
- * @methodOf ui.router.state.$uiViewScrollProvider
16
- *
17
- * @description
18
- * Reverts back to using the core [`$anchorScroll`](http://docs.angularjs.org/api/ng.$anchorScroll) service for
19
- * scrolling based on the url anchor.
20
- */
21
- this.useAnchorScroll = function () {
22
- useAnchorScroll = true;
23
- };
24
-
25
- /**
26
- * @ngdoc object
27
- * @name ui.router.state.$uiViewScroll
28
- *
29
- * @requires $anchorScroll
30
- * @requires $timeout
31
- *
32
- * @description
33
- * When called with a jqLite element, it scrolls the element into view (after a
34
- * `$timeout` so the DOM has time to refresh).
35
- *
36
- * If you prefer to rely on `$anchorScroll` to scroll the view to the anchor,
37
- * this can be enabled by calling {@link ui.router.state.$uiViewScrollProvider#methods_useAnchorScroll `$uiViewScrollProvider.useAnchorScroll()`}.
38
- */
39
- this.$get = ['$anchorScroll', '$timeout', function ($anchorScroll, $timeout) {
40
- if (useAnchorScroll) {
41
- return $anchorScroll;
42
- }
43
-
44
- return function ($element) {
45
- $timeout(function () {
46
- $element[0].scrollIntoView();
47
- }, 0, false);
48
- };
49
- }];
50
- }
51
-
52
- angular.module('ui.router.state').provider('$uiViewScroll', $ViewScrollProvider);
@@ -1,67 +0,0 @@
1
- <!DOCTYPE html>
2
- <html ng-app="exampleApp">
3
-
4
- <head>
5
- <meta charset='utf-8'>
6
- <meta http-equiv="X-UA-Compatible" content="chrome=1">
7
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
8
- <link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen" />
9
- <link rel="stylesheet" type="text/css" href="http://netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" />
10
- <link href='https://fonts.googleapis.com/css?family=Architects+Daughter' rel='stylesheet' type='text/css'>
11
-
12
- <script>
13
- var staticPath = '/angularjs-dropdown-multiselect/';
14
- </script>
15
- <style>
16
- .nav, .pagination, .carousel, .panel-title a { cursor: pointer; }
17
- </style>
18
-
19
-
20
- <!--[if lt IE 9]>
21
- <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
22
- <![endif]-->
23
-
24
- <title>AngularJS Dropdown Multiselect by dotansimha</title>
25
- </head>
26
-
27
- <body>
28
- <header>
29
- <div class="inner">
30
- <a href="https://github.com/dotansimha/angularjs-dropdown-multiselect" class="btn btn-info pull-right gh-button-link">
31
- <strong>View project on
32
- <br />GitHub</strong>
33
- </a>
34
- <h1>AngularJS Dropdown Multiselect</h1>
35
- <h2>based on Bootstrap's dropdown</h2>
36
- </div>
37
- </header>
38
- <div class="container">
39
- <div class="row">
40
- <div class="col-md-12">
41
- <div ng-view></div>
42
- </div>
43
- </div>
44
- </div>
45
- <p>This page was generated by <a href="https://pages.github.com">GitHub Pages</a> using the Architect theme by <a href="https://twitter.com/jasonlong">Jason Long</a>.
46
-
47
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular.js"></script>
48
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-route.js"></script>
49
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-sanitize.js"></script>
50
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-touch.min.js"></script>
51
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.16/angular-animate.js"></script>
52
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/lodash.js/2.4.1/lodash.min.js"></script>
53
- <script type="text/javascript" src="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/8.0/highlight.min.js"></script>
54
- <script type="text/javascript" src="https://rawgit.com/pc035860/angular-highlightjs/master/angular-highlightjs.js"></script>
55
- <script type="text/javascript"
56
- src="http://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/0.10.0/ui-bootstrap-tpls.js"></script>
57
-
58
- <script type="text/javascript"
59
- src="https://rawgit.com/dotansimha/angularjs-dropdown-multiselect/master/src/angularjs-dropdown-multiselect.js"></script>
60
- <!--<script type="text/javascript" src="angularjs-dropdown-multiselect.min.js"></script>-->
61
-
62
- <script type="text/javascript" src="javascripts/app.js"></script>
63
- <script type="text/javascript" src="javascripts/pages/home/ExampleCtrl.js"></script>
64
-
65
- </body>
66
-
67
- </html>
@@ -1,43 +0,0 @@
1
- GEM
2
- remote: https://rubygems.org/
3
- specs:
4
- addressable (2.4.0)
5
- colorator (0.1)
6
- ffi (1.9.14-x64-mingw32)
7
- jekyll (3.1.6)
8
- colorator (~> 0.1)
9
- jekyll-sass-converter (~> 1.0)
10
- jekyll-watch (~> 1.1)
11
- kramdown (~> 1.3)
12
- liquid (~> 3.0)
13
- mercenary (~> 0.3.3)
14
- rouge (~> 1.7)
15
- safe_yaml (~> 1.0)
16
- jekyll-sass-converter (1.4.0)
17
- sass (~> 3.4)
18
- jekyll-sitemap (0.11.0)
19
- addressable (~> 2.4.0)
20
- jekyll-watch (1.4.0)
21
- listen (~> 3.0, < 3.1)
22
- kramdown (1.11.1)
23
- liquid (3.0.6)
24
- listen (3.0.8)
25
- rb-fsevent (~> 0.9, >= 0.9.4)
26
- rb-inotify (~> 0.9, >= 0.9.7)
27
- mercenary (0.3.6)
28
- rb-fsevent (0.9.7)
29
- rb-inotify (0.9.7)
30
- ffi (>= 0.5.0)
31
- rouge (1.11.1)
32
- safe_yaml (1.0.4)
33
- sass (3.4.22)
34
-
35
- PLATFORMS
36
- x64-mingw32
37
-
38
- DEPENDENCIES
39
- jekyll (~> 3.1.2)
40
- jekyll-sitemap (~> 0.11.0)
41
-
42
- BUNDLED WITH
43
- 1.12.5