luca 0.9.7 → 0.9.8

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 (377) hide show
  1. data/CHANGELOG +38 -0
  2. data/Gemfile +1 -0
  3. data/Gemfile.lock +27 -0
  4. data/README.md +45 -42
  5. data/ROADMAP +6 -29
  6. data/{assets → app/assets}/images/glyphicons-halflings-white.png +0 -0
  7. data/{assets → app/assets}/images/glyphicons-halflings.png +0 -0
  8. data/app/assets/javascripts/luca/basic.coffee +8 -0
  9. data/{src → app/assets/javascripts/luca}/components/application.coffee +153 -40
  10. data/{src → app/assets/javascripts/luca}/components/base_toolbar.coffee +2 -2
  11. data/{src → app/assets/javascripts/luca}/components/collection_loader_view.coffee +0 -0
  12. data/{src → app/assets/javascripts/luca}/components/collection_view.coffee +45 -104
  13. data/app/assets/javascripts/luca/components/controller.coffee +99 -0
  14. data/{src/core/field.coffee → app/assets/javascripts/luca/components/fields/base.coffee} +1 -1
  15. data/{src → app/assets/javascripts/luca}/components/fields/button_field.coffee +1 -2
  16. data/{src → app/assets/javascripts/luca}/components/fields/checkbox_array.coffee +0 -0
  17. data/{src → app/assets/javascripts/luca}/components/fields/checkbox_field.coffee +0 -0
  18. data/{src → app/assets/javascripts/luca}/components/fields/file_upload_field.coffee +0 -0
  19. data/{src → app/assets/javascripts/luca}/components/fields/hidden_field.coffee +0 -0
  20. data/{src → app/assets/javascripts/luca}/components/fields/label_field.coffee +0 -0
  21. data/{src → app/assets/javascripts/luca}/components/fields/select_field.coffee +8 -4
  22. data/{src → app/assets/javascripts/luca}/components/fields/text_area_field.coffee +3 -2
  23. data/{src → app/assets/javascripts/luca}/components/fields/text_field.coffee +2 -3
  24. data/{src → app/assets/javascripts/luca}/components/fields/type_ahead_field.coffee +0 -0
  25. data/{src → app/assets/javascripts/luca}/components/form_button_toolbar.coffee +0 -0
  26. data/{src → app/assets/javascripts/luca}/components/form_view.coffee +111 -44
  27. data/{src → app/assets/javascripts/luca}/components/grid_view.coffee +6 -6
  28. data/{src → app/assets/javascripts/luca}/components/index.coffee +0 -0
  29. data/app/assets/javascripts/luca/components/load_mask.coffee +8 -0
  30. data/app/assets/javascripts/luca/components/multi_collection_view.coffee +92 -0
  31. data/{src → app/assets/javascripts/luca}/components/nav_bar.coffee +5 -1
  32. data/app/assets/javascripts/luca/components/page_controller.coffee +7 -0
  33. data/{src → app/assets/javascripts/luca}/components/pagination_control.coffee +13 -13
  34. data/{src → app/assets/javascripts/luca}/components/record_manager.coffee +0 -0
  35. data/{src → app/assets/javascripts/luca}/components/router.coffee +6 -1
  36. data/app/assets/javascripts/luca/components/table_view.coffee +89 -0
  37. data/{src → app/assets/javascripts/luca}/components/template.coffee +0 -0
  38. data/{src → app/assets/javascripts/luca}/components/toolbar_dialog.coffee +0 -0
  39. data/{src → app/assets/javascripts/luca}/concerns/application_event_bindings.coffee +1 -1
  40. data/app/assets/javascripts/luca/concerns/collection_event_bindings.coffee +44 -0
  41. data/{src → app/assets/javascripts/luca}/concerns/deferrable.coffee +1 -2
  42. data/{src/plugins → app/assets/javascripts/luca/concerns}/development_tool_helpers.coffee +1 -1
  43. data/{src → app/assets/javascripts/luca}/concerns/dom_helpers.coffee +10 -7
  44. data/{src → app/assets/javascripts/luca}/concerns/enhanced_properties.coffee +0 -0
  45. data/app/assets/javascripts/luca/concerns/filterable.coffee +104 -0
  46. data/{src → app/assets/javascripts/luca}/concerns/grid_layout.coffee +0 -0
  47. data/{src → app/assets/javascripts/luca}/concerns/loadmaskable.coffee +17 -11
  48. data/{src → app/assets/javascripts/luca}/concerns/local_storage.coffee +0 -0
  49. data/{src → app/assets/javascripts/luca}/concerns/modal_view.coffee +0 -0
  50. data/{src → app/assets/javascripts/luca}/concerns/model_presenter.coffee +0 -0
  51. data/{src → app/assets/javascripts/luca}/concerns/paginatable.coffee +6 -14
  52. data/app/assets/javascripts/luca/concerns/query_collection_bindings.coffee +46 -0
  53. data/app/assets/javascripts/luca/concerns/sortable.coffee +69 -0
  54. data/app/assets/javascripts/luca/concerns/state_model.coffee +44 -0
  55. data/{src → app/assets/javascripts/luca}/concerns/templating.coffee +4 -1
  56. data/app/assets/javascripts/luca/config.coffee +49 -0
  57. data/{src → app/assets/javascripts/luca}/containers/card_view.coffee +30 -13
  58. data/{src/core → app/assets/javascripts/luca/containers}/container.coffee +57 -18
  59. data/app/assets/javascripts/luca/containers/index.coffee +2 -0
  60. data/{src → app/assets/javascripts/luca}/containers/modal_view.coffee +1 -1
  61. data/{src → app/assets/javascripts/luca}/containers/panel_toolbar.coffee +1 -1
  62. data/{src → app/assets/javascripts/luca}/containers/tab_view.coffee +1 -1
  63. data/{src → app/assets/javascripts/luca}/containers/viewport.coffee +4 -4
  64. data/{src → app/assets/javascripts/luca}/core/collection.coffee +58 -49
  65. data/{src/plugins → app/assets/javascripts/luca/core}/events.coffee +34 -2
  66. data/app/assets/javascripts/luca/core/index.coffee +12 -0
  67. data/{src → app/assets/javascripts/luca}/core/model.coffee +1 -1
  68. data/{src → app/assets/javascripts/luca}/core/observer.coffee +0 -0
  69. data/app/assets/javascripts/luca/core/panel.coffee +112 -0
  70. data/app/assets/javascripts/luca/core/registry/component_definition.coffee +318 -0
  71. data/{src → app/assets/javascripts/luca/core/registry}/concerns.coffee +0 -0
  72. data/app/assets/javascripts/luca/core/registry/index.coffee +4 -0
  73. data/app/assets/javascripts/luca/core/registry/meta_data.coffee +97 -0
  74. data/{src/core → app/assets/javascripts/luca/core/registry}/registry.coffee +10 -6
  75. data/app/assets/javascripts/luca/core/templates.coffee +47 -0
  76. data/{src → app/assets/javascripts/luca}/core/view.coffee +69 -11
  77. data/app/assets/javascripts/luca/dependencies.coffee +7 -0
  78. data/{src/tools → app/assets/javascripts/luca/development}/code_mirror_field.coffee +2 -1
  79. data/{src/tools → app/assets/javascripts/luca/development}/console.coffee +6 -5
  80. data/app/assets/javascripts/luca/development/index.coffee +2 -0
  81. data/{src → app/assets/javascripts/luca}/framework.coffee +74 -90
  82. data/app/assets/javascripts/luca/index.coffee +8 -0
  83. data/{src → app/assets/javascripts/luca}/managers/collection_manager.coffee +16 -7
  84. data/app/assets/javascripts/luca/managers/index.coffee +2 -0
  85. data/app/assets/javascripts/luca/managers/socket_manager.coffee +66 -0
  86. data/{src → app/assets/javascripts/luca}/templates/components/bootstrap_form_controls.jst.ejs +0 -0
  87. data/{src → app/assets/javascripts/luca}/templates/components/collection_loader_view.jst.ejs +0 -0
  88. data/{src → app/assets/javascripts/luca}/templates/components/form_alert.jst.ejs +0 -0
  89. data/{src → app/assets/javascripts/luca}/templates/components/grid_view.jst.ejs +0 -0
  90. data/{src → app/assets/javascripts/luca}/templates/components/grid_view_empty_text.jst.ejs +0 -0
  91. data/{src → app/assets/javascripts/luca}/templates/components/load_mask.jst.ejs +0 -0
  92. data/{src → app/assets/javascripts/luca}/templates/components/nav_bar.jst.ejs +0 -0
  93. data/{src → app/assets/javascripts/luca}/templates/components/pagination.jst.ejs +0 -0
  94. data/{src/templates → app/assets/javascripts/luca/templates/components}/table_view.jst.ejs +0 -0
  95. data/{src → app/assets/javascripts/luca}/templates/containers/basic.jst.ejs +0 -0
  96. data/{src → app/assets/javascripts/luca}/templates/containers/tab_selector_container.jst.ejs +0 -0
  97. data/{src → app/assets/javascripts/luca}/templates/containers/tab_view.jst.ejs +0 -0
  98. data/{src → app/assets/javascripts/luca}/templates/containers/toolbar_wrapper.jst.ejs +0 -0
  99. data/{src → app/assets/javascripts/luca}/templates/fields/button_field.jst.ejs +0 -0
  100. data/{src → app/assets/javascripts/luca}/templates/fields/button_field_link.jst.ejs +0 -0
  101. data/{src → app/assets/javascripts/luca}/templates/fields/checkbox_array.jst.ejs +0 -0
  102. data/{src → app/assets/javascripts/luca}/templates/fields/checkbox_array_item.jst.ejs +0 -0
  103. data/{src → app/assets/javascripts/luca}/templates/fields/checkbox_field.jst.ejs +0 -0
  104. data/{src → app/assets/javascripts/luca}/templates/fields/file_upload_field.jst.ejs +0 -0
  105. data/{src → app/assets/javascripts/luca}/templates/fields/hidden_field.jst.ejs +0 -0
  106. data/{src → app/assets/javascripts/luca}/templates/fields/select_field.jst.ejs +0 -0
  107. data/{src → app/assets/javascripts/luca}/templates/fields/text_area_field.jst.ejs +1 -1
  108. data/{src → app/assets/javascripts/luca}/templates/fields/text_field.jst.ejs +1 -1
  109. data/app/assets/javascripts/luca/util/deprecations.coffee +18 -0
  110. data/app/assets/javascripts/luca/util/index.coffee +3 -0
  111. data/app/assets/javascripts/luca/util/logging.coffee +15 -0
  112. data/{src/util.coffee → app/assets/javascripts/luca/util/luca.coffee} +20 -4
  113. data/{src/core → app/assets/javascripts/luca/util}/script_loader.coffee +0 -0
  114. data/app/assets/javascripts/luca-ui.js +1 -0
  115. data/{src/stylesheets → app/assets/stylesheets/luca}/components/checkbox_array.scss +0 -0
  116. data/app/assets/stylesheets/luca/components/form_view.scss +7 -0
  117. data/{src/stylesheets → app/assets/stylesheets/luca}/components/grid_view.scss +0 -0
  118. data/{src/stylesheets → app/assets/stylesheets/luca}/components/load_mask.scss +0 -0
  119. data/{src/stylesheets → app/assets/stylesheets/luca}/components/viewport.scss +0 -0
  120. data/{src/stylesheets → app/assets/stylesheets/luca}/containers/container.scss +0 -0
  121. data/{src/stylesheets → app/assets/stylesheets/luca}/containers/modal_view.scss +0 -0
  122. data/{src/stylesheets → app/assets/stylesheets/luca}/containers/panels.scss +0 -0
  123. data/{src/stylesheets → app/assets/stylesheets/luca}/containers/tab_view.scss +0 -0
  124. data/{src/stylesheets/tools → app/assets/stylesheets/luca/development}/console.scss +0 -0
  125. data/app/assets/stylesheets/luca/development/index.css +3 -0
  126. data/app/assets/stylesheets/luca/index.css +4 -0
  127. data/{src/stylesheets → app/assets/stylesheets/luca}/normalize.scss +0 -0
  128. data/app.rb +2 -4
  129. data/lib/generators/luca/application/application_generator.rb +12 -8
  130. data/lib/generators/luca/application/templates/controller.rb +0 -2
  131. data/lib/generators/luca/application/templates/index.html.erb +12 -0
  132. data/lib/generators/luca/application/templates/index.html.haml +1 -0
  133. data/lib/generators/luca/application/templates/javascripts/application.coffee +18 -0
  134. data/lib/generators/luca/application/templates/javascripts/collection_manager.coffee +2 -0
  135. data/lib/generators/luca/application/templates/javascripts/config.coffee +3 -0
  136. data/lib/generators/luca/application/templates/javascripts/{dependencies.js.coffee → dependencies.coffee} +1 -0
  137. data/lib/generators/luca/application/templates/javascripts/home.jst.ejs +2 -0
  138. data/lib/generators/luca/application/templates/javascripts/index.coffee +15 -0
  139. data/lib/generators/luca/application/templates/javascripts/router.coffee +4 -0
  140. data/lib/luca/component_documentation.rb +72 -0
  141. data/lib/luca/rails/engine.rb +4 -0
  142. data/lib/luca/rails/version.rb +1 -1
  143. data/lib/luca.rb +1 -1
  144. data/lib/railties/luca/tasks.rake +31 -0
  145. data/luca.gemspec +1 -0
  146. data/spec/components/controller_spec.coffee +62 -0
  147. data/spec/components/form_view_spec.coffee +4 -0
  148. data/spec/concerns/collection_event_bindings_spec.coffee +15 -0
  149. data/spec/concerns/dom_helpers_spec.coffee +2 -2
  150. data/spec/concerns/filterable_spec.coffee +4 -4
  151. data/spec/concerns/state_model_spec.coffee +50 -0
  152. data/spec/core/collection_spec.coffee +25 -0
  153. data/spec/{concerns_spec.coffee → core/concerns_spec.coffee} +0 -0
  154. data/spec/core/container_spec.coffee +57 -5
  155. data/spec/core/define_spec.coffee +116 -0
  156. data/spec/core/events_spec.coffee +26 -0
  157. data/spec/core/field_spec.coffee +4 -0
  158. data/spec/{framework_spec.coffee → core/framework_spec.coffee} +31 -2
  159. data/spec/{util_spec.coffee → core/util_spec.coffee} +2 -2
  160. data/spec/core/view_spec.coffee +65 -1
  161. data/spec/dependencies/index.coffee +3 -0
  162. data/{assets/javascripts → spec}/dependencies/jasmine-html.js +0 -0
  163. data/{assets/javascripts → spec}/dependencies/jasmine.js +0 -0
  164. data/{assets/javascripts → spec}/dependencies/sinon.js +0 -0
  165. data/spec/luca-spec.coffee +9 -0
  166. data/vendor/assets/javascripts/backbone-ext.js +21 -0
  167. data/vendor/assets/javascripts/backbone-min.js +38 -0
  168. data/vendor/assets/javascripts/backbone-query.min.js +1 -0
  169. data/vendor/assets/javascripts/bootstrap.min.js +7 -0
  170. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-coffeescript.js +0 -0
  171. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-css.js +0 -0
  172. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-html.js +0 -0
  173. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-javascript.js +0 -0
  174. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-less.js +0 -0
  175. data/vendor/assets/javascripts/codemirror-ui.js +503 -0
  176. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror-vim.js +0 -0
  177. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/codemirror.js +0 -0
  178. data/vendor/assets/javascripts/inflections.js +656 -0
  179. data/vendor/assets/javascripts/jasmine-html.js +190 -0
  180. data/vendor/assets/javascripts/jasmine.js +2476 -0
  181. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/jquery.js +0 -0
  182. data/vendor/assets/javascripts/luca-spec.js +11 -0
  183. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/modal.js +0 -0
  184. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/modernizr.min.js +0 -0
  185. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/prettify.js +0 -0
  186. data/vendor/assets/javascripts/sinon.js +3469 -0
  187. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/spin-min.js +0 -0
  188. data/{assets/javascripts/dependencies → vendor/assets/javascripts}/underscore-min.js +0 -0
  189. data/vendor/assets/javascripts/underscore-string.min.js +1 -0
  190. data/vendor/assets/stylesheets/bootstrap-responsive.min.css +9 -0
  191. data/vendor/assets/stylesheets/bootstrap.min.css +9 -0
  192. data/{assets → vendor/assets}/stylesheets/codemirror-blackboard.css +0 -0
  193. data/{assets → vendor/assets}/stylesheets/codemirror-monokai.css +0 -0
  194. data/{assets → vendor/assets}/stylesheets/codemirror.css +0 -0
  195. data/{assets → vendor/assets}/stylesheets/jasmine.css +0 -0
  196. data/vendor/assets/stylesheets/luca-ui.css +0 -601
  197. data/views/jasmine.erb +2 -2
  198. metadata +190 -299
  199. data/assets/javascripts/dependencies/backbone-min.js +0 -37
  200. data/assets/javascripts/dependencies/backbone-query.min.js +0 -1
  201. data/assets/javascripts/dependencies/bootstrap.min.js +0 -7
  202. data/assets/javascripts/dependencies/coffee-script.js +0 -12189
  203. data/assets/javascripts/dependencies/underscore-string.min.js +0 -14
  204. data/assets/javascripts/dependencies.coffee +0 -5
  205. data/assets/javascripts/luca/index.coffee +0 -1
  206. data/assets/javascripts/luca-templates.js +0 -1
  207. data/assets/javascripts/luca-ui-base.coffee +0 -1
  208. data/assets/javascripts/luca-ui-bootstrap.js +0 -1
  209. data/assets/javascripts/luca-ui-development-tools.coffee +0 -9
  210. data/assets/javascripts/luca-ui-full.js +0 -3
  211. data/assets/javascripts/luca-ui-spec.coffee +0 -2
  212. data/assets/javascripts/luca-ui.js +0 -3
  213. data/assets/javascripts/sandbox/application.coffee +0 -57
  214. data/assets/javascripts/sandbox/config.coffee +0 -7
  215. data/assets/javascripts/sandbox/router.coffee +0 -24
  216. data/assets/javascripts/sandbox/templates/builder/component_list.luca +0 -1
  217. data/assets/javascripts/sandbox/templates/builder.luca +0 -2
  218. data/assets/javascripts/sandbox/templates/main.luca +0 -53
  219. data/assets/javascripts/sandbox/templates/sandbox/docs_index.luca +0 -1
  220. data/assets/javascripts/sandbox/templates/sandbox/navigation.luca +0 -8
  221. data/assets/javascripts/sandbox/templates/sandbox/readme.luca +0 -30
  222. data/assets/javascripts/sandbox/templates/sandbox.luca +0 -1
  223. data/assets/javascripts/sandbox/views/builder/builder_canvas.coffee +0 -3
  224. data/assets/javascripts/sandbox/views/builder/builder_editor.coffee +0 -6
  225. data/assets/javascripts/sandbox/views/builder/component_list.coffee +0 -38
  226. data/assets/javascripts/sandbox/views/builder/project_browser.coffee +0 -14
  227. data/assets/javascripts/sandbox/views/builder.coffee +0 -133
  228. data/assets/javascripts/sandbox/views/docs_controller.coffee +0 -7
  229. data/assets/javascripts/sandbox/views/inspector/instance_filter.coffee +0 -18
  230. data/assets/javascripts/sandbox/views/inspector/instance_list.coffee +0 -0
  231. data/assets/javascripts/sandbox/views/inspector.coffee +0 -11
  232. data/assets/javascripts/sandbox/views/top_navigation.coffee +0 -4
  233. data/assets/javascripts/sandbox.coffee +0 -7
  234. data/assets/javascripts/spec-dependencies.coffee +0 -4
  235. data/assets/stylesheets/bootstrap-responsive.min.css +0 -2
  236. data/assets/stylesheets/bootstrap.min.css +0 -727
  237. data/assets/stylesheets/luca-ui-bootstrap.css +0 -4
  238. data/assets/stylesheets/luca-ui-development-tools.css +0 -5
  239. data/assets/stylesheets/luca-ui-full.css +0 -3
  240. data/assets/stylesheets/luca-ui-spec.css +0 -3
  241. data/assets/stylesheets/luca-ui.css +0 -3
  242. data/assets/stylesheets/prettify.css +0 -40
  243. data/assets/stylesheets/sandbox/builder.scss +0 -79
  244. data/assets/stylesheets/sandbox/sandbox.scss +0 -18
  245. data/assets/stylesheets/sandbox.css +0 -3
  246. data/assets/stylesheets/themes/amelia-bootstrap.css +0 -826
  247. data/assets/stylesheets/themes/slate-bootstrap.css +0 -797
  248. data/assets/stylesheets/themes/superhero-bootstrap.css +0 -830
  249. data/lib/generators/luca/application/templates/javascripts/application.js +0 -28
  250. data/lib/generators/luca/application/templates/javascripts/application.js.coffee +0 -20
  251. data/lib/generators/luca/application/templates/javascripts/config.js +0 -15
  252. data/lib/generators/luca/application/templates/javascripts/config.js.coffee +0 -9
  253. data/lib/generators/luca/application/templates/javascripts/dependencies.js +0 -5
  254. data/lib/generators/luca/application/templates/javascripts/index.js +0 -9
  255. data/lib/generators/luca/application/templates/javascripts/index.js.coffee +0 -9
  256. data/lib/generators/luca/application/templates/javascripts/main.js +0 -8
  257. data/lib/generators/luca/application/templates/javascripts/main.js.coffee +0 -3
  258. data/lib/generators/luca/application/templates/javascripts/main.jst.ejs +0 -1
  259. data/lib/generators/luca/application/templates/javascripts/router.js +0 -12
  260. data/lib/generators/luca/application/templates/javascripts/router.js.coffee +0 -7
  261. data/spec/containers/column_view_spec.coffee +0 -0
  262. data/spec/containers/split_view_spec.coffee +0 -0
  263. data/spec/define_spec.coffee +0 -13
  264. data/src/components/controller.coffee +0 -65
  265. data/src/components/load_mask.coffee +0 -3
  266. data/src/components/multi_collection_view.coffee +0 -121
  267. data/src/components/page_controller.coffee +0 -2
  268. data/src/components/table_view.coffee +0 -62
  269. data/src/concerns/collection_event_bindings.coffee +0 -26
  270. data/src/concerns/filterable.coffee +0 -82
  271. data/src/concerns/state_model.coffee +0 -16
  272. data/src/containers/column_view.coffee +0 -42
  273. data/src/containers/page_view.coffee +0 -2
  274. data/src/containers/panel_view.coffee +0 -23
  275. data/src/containers/split_view.coffee +0 -8
  276. data/src/core/core.coffee +0 -0
  277. data/src/core/meta_data.coffee +0 -37
  278. data/src/core/panel.coffee +0 -118
  279. data/src/define.coffee +0 -170
  280. data/src/index.coffee +0 -25
  281. data/src/managers/socket_manager.coffee +0 -54
  282. data/src/samples/definition.coffee +0 -49
  283. data/src/stylesheets/base.scss +0 -0
  284. data/src/stylesheets/components/form_view.scss +0 -59
  285. data/src/stylesheets/components/toolbar.scss +0 -0
  286. data/src/stylesheets/tools/class_browser.scss +0 -32
  287. data/src/stylesheets/tools/code_editor.scss +0 -24
  288. data/src/stylesheets/tools/component_tester.scss +0 -26
  289. data/src/tools/application_inspector.coffee +0 -2
  290. data/src/tools/code_editor.coffee +0 -258
  291. data/src/tools/coffee_script_editor.coffee +0 -82
  292. data/src/tools/collection_inspector.coffee +0 -4
  293. data/src/tools/collections/components.coffee +0 -59
  294. data/src/tools/collections/instances.coffee +0 -15
  295. data/src/tools/component_tester.coffee +0 -462
  296. data/src/tools/models/components.coffee +0 -25
  297. data/src/tools/models/instance.coffee +0 -2
  298. data/src/tools/templates/component_tester/help.luca +0 -14
  299. data/vendor/assets/javascripts/luca-ui-base.js +0 -5304
  300. data/vendor/assets/javascripts/luca-ui-bootstrap.js +0 -9
  301. data/vendor/assets/javascripts/luca-ui-development-tools.js +0 -18561
  302. data/vendor/assets/javascripts/luca-ui-development-tools.min.js +0 -15
  303. data/vendor/assets/javascripts/luca-ui-full.js +0 -6319
  304. data/vendor/assets/javascripts/luca-ui-full.min.js +0 -9
  305. data/vendor/assets/javascripts/luca-ui-spec.js +0 -6815
  306. data/vendor/assets/javascripts/luca-ui-templates.js +0 -92
  307. data/vendor/assets/javascripts/luca-ui.js +0 -6234
  308. data/vendor/assets/javascripts/luca-ui.min.js +0 -5
  309. data/vendor/assets/luca-ui/base.css +0 -85
  310. data/vendor/assets/luca-ui/components/application.js +0 -91
  311. data/vendor/assets/luca-ui/components/base_toolbar.js +0 -23
  312. data/vendor/assets/luca-ui/components/controller.js +0 -38
  313. data/vendor/assets/luca-ui/components/fields/button_field.js +0 -45
  314. data/vendor/assets/luca-ui/components/fields/checkbox_field.js +0 -43
  315. data/vendor/assets/luca-ui/components/fields/file_upload_field.js +0 -20
  316. data/vendor/assets/luca-ui/components/fields/hidden_field.js +0 -20
  317. data/vendor/assets/luca-ui/components/fields/select_field.js +0 -97
  318. data/vendor/assets/luca-ui/components/fields/text_area_field.js +0 -48
  319. data/vendor/assets/luca-ui/components/fields/text_field.js +0 -46
  320. data/vendor/assets/luca-ui/components/fields/type_ahead_field.js +0 -13
  321. data/vendor/assets/luca-ui/components/form_button_toolbar.js +0 -32
  322. data/vendor/assets/luca-ui/components/form_view.css +0 -32
  323. data/vendor/assets/luca-ui/components/form_view.js +0 -207
  324. data/vendor/assets/luca-ui/components/grid_view.css +0 -76
  325. data/vendor/assets/luca-ui/components/grid_view.js +0 -202
  326. data/vendor/assets/luca-ui/components/record_manager.js +0 -207
  327. data/vendor/assets/luca-ui/components/router.js +0 -36
  328. data/vendor/assets/luca-ui/components/template.js +0 -26
  329. data/vendor/assets/luca-ui/components/toolbar.css +0 -11
  330. data/vendor/assets/luca-ui/containers/card_view.js +0 -98
  331. data/vendor/assets/luca-ui/containers/column_view.js +0 -52
  332. data/vendor/assets/luca-ui/containers/container.css +0 -3
  333. data/vendor/assets/luca-ui/containers/modal_view.css +0 -0
  334. data/vendor/assets/luca-ui/containers/modal_view.js +0 -87
  335. data/vendor/assets/luca-ui/containers/panel_view.js +0 -34
  336. data/vendor/assets/luca-ui/containers/split_view.js +0 -13
  337. data/vendor/assets/luca-ui/containers/tab_view.css +0 -16
  338. data/vendor/assets/luca-ui/containers/tab_view.js +0 -80
  339. data/vendor/assets/luca-ui/containers/viewport.js +0 -18
  340. data/vendor/assets/luca-ui/core/collection.js +0 -221
  341. data/vendor/assets/luca-ui/core/container.js +0 -205
  342. data/vendor/assets/luca-ui/core/field.js +0 -59
  343. data/vendor/assets/luca-ui/core/observer.js +0 -42
  344. data/vendor/assets/luca-ui/core/view.js +0 -127
  345. data/vendor/assets/luca-ui/framework.js +0 -110
  346. data/vendor/assets/luca-ui/index.js +0 -5
  347. data/vendor/assets/luca-ui/managers/collection_manager.js +0 -98
  348. data/vendor/assets/luca-ui/managers/socket_manager.js +0 -52
  349. data/vendor/assets/luca-ui/modules/deferrable.js +0 -21
  350. data/vendor/assets/luca-ui/modules/local_storage.js +0 -81
  351. data/vendor/assets/luca-ui/normalize.css +0 -359
  352. data/vendor/assets/luca-ui/stylesheets/base.css +0 -85
  353. data/vendor/assets/luca-ui/stylesheets/components/form_view.css +0 -32
  354. data/vendor/assets/luca-ui/stylesheets/components/grid_view.css +0 -76
  355. data/vendor/assets/luca-ui/stylesheets/components/toolbar.css +0 -11
  356. data/vendor/assets/luca-ui/stylesheets/containers/container.css +0 -3
  357. data/vendor/assets/luca-ui/stylesheets/containers/modal_view.css +0 -0
  358. data/vendor/assets/luca-ui/stylesheets/containers/tab_view.css +0 -16
  359. data/vendor/assets/luca-ui/stylesheets/normalize.css +0 -359
  360. data/vendor/assets/luca-ui/templates/components/bootstrap_form_controls.js +0 -4
  361. data/vendor/assets/luca-ui/templates/components/form_view.js +0 -4
  362. data/vendor/assets/luca-ui/templates/components/grid_view.js +0 -4
  363. data/vendor/assets/luca-ui/templates/components/grid_view_empty_text.js +0 -4
  364. data/vendor/assets/luca-ui/templates/containers/basic.js +0 -4
  365. data/vendor/assets/luca-ui/templates/containers/tab_selector_container.js +0 -4
  366. data/vendor/assets/luca-ui/templates/containers/tab_view.js +0 -4
  367. data/vendor/assets/luca-ui/templates/containers/toolbar_wrapper.js +0 -4
  368. data/vendor/assets/luca-ui/templates/fields/button_field.js +0 -4
  369. data/vendor/assets/luca-ui/templates/fields/button_field_link.js +0 -4
  370. data/vendor/assets/luca-ui/templates/fields/checkbox_field.js +0 -4
  371. data/vendor/assets/luca-ui/templates/fields/file_upload_field.js +0 -4
  372. data/vendor/assets/luca-ui/templates/fields/hidden_field.js +0 -4
  373. data/vendor/assets/luca-ui/templates/fields/select_field.js +0 -4
  374. data/vendor/assets/luca-ui/templates/fields/text_area_field.js +0 -4
  375. data/vendor/assets/luca-ui/templates/fields/text_field.js +0 -4
  376. data/vendor/assets/luca-ui/templates/sample/contents.js +0 -4
  377. data/vendor/assets/luca-ui/templates/sample/welcome.js +0 -4
@@ -1,6 +1,6 @@
1
1
  developmentConsole = Luca.register "Luca.tools.DevelopmentConsole"
2
2
 
3
- developmentConsole.extends "Luca.core.Container"
3
+ developmentConsole.extends "Luca.Container"
4
4
 
5
5
  developmentConsole.defines
6
6
  className: "luca-ui-console"
@@ -188,11 +188,12 @@ Luca.util.launchers.developmentConsole = (name="luca-development-console")->
188
188
  @_lucaDevConsole = Luca name, ()=>
189
189
  @$el.append Backbone.View::make("div", id: "#{ name }-wrapper", class: "modal fade large")
190
190
 
191
- console = new Luca.tools.DevelopmentConsole
191
+ dconsole = new Luca.tools.DevelopmentConsole
192
192
  name: name
193
193
  container: "##{ name }-wrapper"
194
194
 
195
- console.render()
196
- console.getCodeMirror().setHeight(602)
195
+ dconsole.render()
196
+ dconsole.getCodeMirror().setHeight(602)
197
197
 
198
- @_lucaDevConsole.show()
198
+ @_lucaDevConsole.show()
199
+ Luca(name)
@@ -0,0 +1,2 @@
1
+ #= require ./code_mirror_field
2
+ #= require ./console
@@ -1,25 +1,30 @@
1
- # the Luca() browser utility function is meant to be a smart wrapper around various
2
- # types of input which will return what the developer would expect given the
3
- # context it is used.
4
- (window || global).Luca = (payload, args...)->
1
+ lucaUtilityHelper = (payload, args...)->
2
+ if arguments.length is 0
3
+ return _( Luca.Application.instances ).values()?[0]
4
+
5
5
  if _.isString(payload) and result = Luca.cache(payload)
6
6
  return result
7
7
 
8
8
  if _.isString(payload) and result = Luca.find(payload)
9
9
  return result
10
10
 
11
+ if _.isString(payload) and result = Luca.registry.find(payload)
12
+ return result
13
+
14
+ if payload instanceof jQuery and result = Luca.find(payload)
15
+ return result
16
+
11
17
  if _.isObject(payload) and payload.ctype?
12
18
  return Luca.util.lazyComponent( payload )
13
19
 
14
- if _.isObject(payload) and payload.defines and payload.extends
15
- definition = payload.defines
16
- inheritsFrom = payload.extends
17
-
18
20
  if _.isFunction( fallback = _(args).last() )
19
21
  return fallback()
20
22
 
23
+ (window || global).Luca = ()-> lucaUtilityHelper.apply(@, arguments)
24
+
25
+ Luca.VERSION = '0.9.8'
26
+
21
27
  _.extend Luca,
22
- VERSION: "0.9.7"
23
28
  core: {}
24
29
  collections: {}
25
30
  containers: {}
@@ -31,49 +36,70 @@ _.extend Luca,
31
36
  registry:{}
32
37
  options: {}
33
38
  config: {}
39
+ logger: (trackerMessage)->
40
+ (args...)->
41
+ args.unshift( trackerMessage )
42
+ console.log(@, args)
43
+
44
+ getHelper: ()->
45
+ ()-> lucaUtilityHelper.apply(@, arguments)
34
46
 
35
47
  # for triggering / binding to component definitions
36
48
  _.extend Luca, Backbone.Events
37
49
 
38
- Luca.config.maintainStyleHierarchy = true
39
- Luca.config.maintainClassHierarchy = true
40
- Luca.config.autoApplyClassHierarchyAsCssClasses = true
41
-
42
- # When using Luca.define() should we automatically register
43
- # the component with the registry?
44
- Luca.autoRegister = Luca.config.autoRegister = true
45
-
46
- # if developmentMode is true, you have access to some neat development tools
47
- Luca.developmentMode = Luca.config.developmentMode = false
48
-
49
- # The Global Observer is very helpful in development
50
- # it observes every event triggered on every view, collection, model
51
- # and allows you to inspect / respond to them. Use in production
52
- # may have performance impacts which has not been tested
53
- Luca.enableGlobalObserver = Luca.config.enableGlobalObserver = false
54
-
55
- # let's use the Twitter 2.0 Bootstrap Framework
56
- # for what it is best at, and not try to solve this
57
- # problem on our own!
58
- Luca.enableBootstrap = Luca.config.enableBootstrap = true
59
-
60
- Luca.config.enhancedViewProperties = true
61
-
62
- Luca.keys =
63
- ENTER: 13
64
- ESCAPE: 27
65
- KEYLEFT: 37
66
- KEYUP: 38
67
- KEYRIGHT: 39
68
- KEYDOWN: 40
69
- SPACEBAR: 32
70
- FORWARDSLASH: 191
71
-
72
- # build a reverse map
73
- Luca.keyMap = _( Luca.keys ).inject (memo, value, symbol)->
74
- memo[value] = symbol.toLowerCase()
75
- memo
76
- , {}
50
+ Luca.setupCollectionSpace = (options={})->
51
+ {baseParams, modelBootstrap} = options
52
+
53
+ if baseParams?
54
+ Luca.Collection.baseParams( baseParams )
55
+ else
56
+ Luca.warn('You should remember to set the base params for Luca.Collection class. You can do this by defining a property or function on Luca.config.baseParams')
57
+
58
+ if modelBootstrap?
59
+ Luca.Collection.bootstrap( modelBootstrap )
60
+ else
61
+ Luca.warn("You should remember to set the model bootstrap location for Luca.Collection. You can do this by defining a property or function on Luca.config.modelBootstrap")
62
+
63
+ # Creates a basic Namespace for you to begin defining
64
+ # your application and all of its components.
65
+ Luca.initialize = (namespace, options={})->
66
+ defaults =
67
+ views: {}
68
+ collections: {}
69
+ models: {}
70
+ components: {}
71
+ lib: {}
72
+ util: {}
73
+ concerns: {}
74
+ register: ()->
75
+ Luca.register.apply(@, arguments)
76
+ onReady: ()->
77
+ Luca.onReady.apply(@, arguments)
78
+ getApplication: ()->
79
+ Luca.getApplication?.apply(@, arguments)
80
+ getCollectionManager: ()->
81
+ Luca.CollectionManager.get?.apply(@, arguments)
82
+ route: Luca.routeHelper
83
+
84
+
85
+ object = {}
86
+ object[ namespace ] = _.extend(Luca.getHelper(), defaults)
87
+
88
+ _.extend(Luca.config, options)
89
+ _.extend (window || global), object
90
+
91
+ Luca.concern.namespace "#{ namespace }.concerns"
92
+ Luca.registry.namespace "#{ namespace }.views"
93
+ Luca.Collection.namespace "#{ namespace }.collections"
94
+
95
+ Luca.on "ready", ()->
96
+ Luca.setupCollectionSpace(options)
97
+
98
+ Luca.onReady = (callback)->
99
+ Luca.define.close()
100
+ Luca.trigger("ready")
101
+
102
+ $ -> callback.apply(@, arguments)
77
103
 
78
104
  Luca.find = (el)->
79
105
  Luca( $(el).data('luca-id') )
@@ -137,48 +163,6 @@ Luca.parentClass = (obj, resolve=true)->
137
163
  if resolve then Luca.util.resolve(parent) else parent
138
164
 
139
165
 
140
- # This is a convenience method for accessing the templates
141
- # available to the client side app, either the ones which ship with Luca
142
- # available in Luca.templates ( these take precedence ) or
143
- # the app's own templates which are usually available in JST
144
-
145
- # optionally, passing in variables will compile the template for you, instead
146
- # of returning a reference to the function which you would then call yourself
147
- Luca.template = (template_name, variables)->
148
- window.JST ||= {}
149
-
150
- if _.isFunction(template_name)
151
- return template_name(variables)
152
-
153
- luca = Luca.templates?[ template_name ]
154
- jst = JST?[ template_name ]
155
-
156
- unless luca? or jst?
157
- needle = new RegExp("#{ template_name }$")
158
-
159
- luca = _( Luca.templates ).detect (fn,template_id)->
160
- needle.exec( template_id )
161
-
162
- jst = _( JST ).detect (fn,template_id)->
163
- needle.exec( template_id )
164
-
165
- throw "Could not find template named #{ template_name }" unless luca || jst
166
-
167
- template = luca || jst
168
-
169
- return template(variables) if variables?
170
-
171
- template
172
-
173
- Luca.available_templates = (filter="")->
174
- available = _( Luca.templates ).keys()
175
-
176
- if filter.length > 0
177
- _( available ).select (tmpl)-> tmpl.match(filter)
178
- else
179
- available
180
-
181
-
182
166
  UnderscoreExtensions =
183
167
  module: (base,module)->
184
168
  _.extend base, module
@@ -0,0 +1,8 @@
1
+ #= require_tree ./templates
2
+ #= require ./framework
3
+ #= require ./config
4
+ #= require ./util
5
+ #= require ./managers
6
+ #= require ./core
7
+ #= require ./containers
8
+ #= require ./components
@@ -1,10 +1,9 @@
1
1
  class Luca.CollectionManager
2
2
  name: "primary"
3
3
 
4
- collectionNamespace: Luca.Collection.namespace
5
-
6
4
  __collections: {}
7
5
 
6
+ autoStart: true
8
7
  relayEvents: true
9
8
 
10
9
  constructor: (@options={})->
@@ -15,6 +14,8 @@ class Luca.CollectionManager
15
14
  if existing = Luca.CollectionManager.get?(@name)
16
15
  throw 'Attempt to create a collection manager with a name which already exists'
17
16
 
17
+ @collectionNamespace ||= Luca.util.read( Luca.Collection.namespace )
18
+
18
19
  Luca.CollectionManager.instances ||= {}
19
20
 
20
21
  _.extend @, Backbone.Events
@@ -29,7 +30,9 @@ class Luca.CollectionManager
29
30
  @state = new Luca.Model()
30
31
 
31
32
  if @initialCollections
32
- handleInitialCollections.call(@)
33
+ @on "ready", handleInitialCollections, @
34
+
35
+ @trigger "ready" if @autoStart is true
33
36
 
34
37
  add: (key, collection)->
35
38
  @currentScope()[ key ] ||= collection
@@ -111,17 +114,23 @@ Luca.CollectionManager.destroyAll = ()->
111
114
 
112
115
  Luca.CollectionManager.loadCollectionsByName = (set, callback)->
113
116
  for name in set
114
- collection = @getOrCreate(name)
115
- collection.once "reset", ()->
116
- callback(collection)
117
- collection.fetch()
117
+ if collection = @getOrCreate(name)
118
+ collection.on "reset", ()->
119
+ callback(collection)
120
+ collection.unbind("reset", @)
118
121
 
122
+ collection.fetch()
119
123
 
120
124
  #### Private Methods
121
125
  guessCollectionClass = (key)->
122
126
  classified = Luca.util.classify( key )
127
+
128
+ if _.isString( @collectionNamespace )
129
+ @collectionNamespace = Luca.util.resolve(@collectionNamespace)
130
+
123
131
  # support our naming convention of Books
124
132
  guess = (@collectionNamespace || (window || global) )[ classified ]
133
+
125
134
  # support naming covention like BooksCollection
126
135
  guess ||= (@collectionNamespace || (window || global) )[ "#{classified}Collection" ]
127
136
 
@@ -0,0 +1,2 @@
1
+ #= require ./collection_manager
2
+ #= require ./socket_manager
@@ -0,0 +1,66 @@
1
+ # The SocketManager provides communication between a Websocket / Pubsub
2
+ # system and routes messages through the application to instances
3
+ # of the
4
+ class Luca.SocketManager extends Backbone.Model
5
+ defaults:
6
+ autoStart: true
7
+ providerAvailable: false
8
+ ready: false
9
+ provider: "faye.js"
10
+
11
+ initialize: (@attributes={})->
12
+ @loadProviderSource() unless @providerAvailable() is true
13
+
14
+ Luca.Model::initialize?.apply(@, arguments)
15
+
16
+ model = @
17
+
18
+ connectOnReady = ()=> @connect() if @isReady()
19
+
20
+ model.on "change", ()->
21
+ connectOnReady()
22
+ model.unbind("change", @)
23
+
24
+ @on "ready", _.once ()=> @set('ready', true)
25
+
26
+ @trigger "change"
27
+
28
+ isReady: ()->
29
+ @get("ready") is true and @get("providerAvailable") is true
30
+
31
+ providerAvailable: ()->
32
+ providerTest = switch @get('provider')
33
+ when "socket.io"
34
+ "io"
35
+ when "faye.js"
36
+ "Faye.Client"
37
+
38
+ !!(Luca.util.resolve(providerTest)?)
39
+
40
+ connect: ()->
41
+ switch @get('provider')
42
+ when "socket.io"
43
+ @client = io.connect( @get('host') )
44
+ when "faye.js"
45
+ @client = new Faye.Client( @get('host') + ( @get('namespace') || "") )
46
+
47
+ providerSourceLoaded: ()->
48
+ @set "providerAvailable", true
49
+
50
+ providerSourceUrl: ()->
51
+ switch @get('provider')
52
+ when "socket.io" then "#{ @get('host') }/socket.io/socket.io.js"
53
+ when "faye.js" then "#{ @get('host') }/faye.js"
54
+
55
+ loadProviderSource: ()->
56
+ script = document.createElement 'script'
57
+ script.setAttribute "type", "text/javascript"
58
+ script.setAttribute "src", @providerSourceUrl()
59
+ script.onload = _.bind(@providerSourceLoaded,@)
60
+
61
+ if Luca.util.isIE()
62
+ script.onreadystatechange = ()=>
63
+ if script.readyState is "loaded"
64
+ @providerSourceLoaded()
65
+
66
+ document.getElementsByTagName('head')[0].appendChild script
@@ -2,7 +2,7 @@
2
2
  <%= label %>
3
3
  </label>
4
4
  <div class="controls">
5
- <textarea name="<%= input_name %>" style="<%= inputStyles %>" ><%= input_value %></textarea>
5
+ <textarea placeholder="<%= placeHolder %>" name="<%= input_name %>" style="<%= inputStyles %>" ><%= input_value %></textarea>
6
6
  <% if(helperText) { %>
7
7
  <p class="helper-text help-block">
8
8
  <%= helperText %>
@@ -6,7 +6,7 @@
6
6
  <% if( typeof(addOn) !== "undefined" ) { %>
7
7
  <span class="add-on"><%= addOn %></span>
8
8
  <% } %>
9
- <input type="text" name="<%= input_name %>" style="<%= inputStyles %>" value="<%= input_value %>" />
9
+ <input type="text" placeholder="<%= placeHolder %>" name="<%= input_name %>" style="<%= inputStyles %>" value="<%= input_value %>" />
10
10
  <% if(helperText) { %>
11
11
  <p class="helper-text help-block">
12
12
  <%= helperText %>
@@ -0,0 +1,18 @@
1
+ # For when I want to change the name of a component
2
+ Luca.util.deprecateComponent = (previous, newName)->
3
+ msg = _.template "#{ previous } has been renamed to #{ newName }. Please update your definitions."
4
+
5
+ Luca.registry.componentAliases[ newName ] ||= []
6
+ Luca.registry.componentAliases[ newName ].push( previous )
7
+
8
+ unless previous is newName
9
+ Luca.registry.deprecatedComponents[ previous ] =
10
+ message: msg({previous,newName})
11
+ newName: newName
12
+
13
+ Luca.util.checkDeprecationStatusOf = (componentName)->
14
+ if replacement = Luca.registry.deprecatedComponents[ componentName ]
15
+ Luca.log( replacement.message )
16
+ return replacement.newName
17
+
18
+ componentName
@@ -0,0 +1,3 @@
1
+ #= require ./luca
2
+ #= require ./logging
3
+ #= require ./deprecations
@@ -0,0 +1,15 @@
1
+ Luca.warn = (args...)->
2
+ return unless Luca.config.showWarnings is true
3
+
4
+ if Luca.isComponent(@)
5
+ args.unshift( @identifier() )
6
+
7
+ args.unshift("Warning:")
8
+
9
+ console.log args...
10
+
11
+ Luca.log = (args...)->
12
+ if Luca.isComponent(@)
13
+ args.unshift( @identifier() )
14
+
15
+ console.log args...
@@ -2,14 +2,16 @@
2
2
  # and returns the value of window.deep.nested.value. useful for defining
3
3
  # references on objects which don't yet exist, as strings, which get
4
4
  # evaluated at runtime when such references will be available
5
- Luca.util.resolve = (accessor, source_object)->
5
+ Luca.util.resolve = (propertyReference, source_object)->
6
+ return propertyReference unless _.isString(propertyReference)
7
+
6
8
  try
7
9
  source_object ||= (window || global)
8
- resolved = _( accessor.split(/\./) ).inject (obj,key)->
10
+ resolved = _( propertyReference.split(/\./) ).inject (obj,key)->
9
11
  obj = obj?[key]
10
12
  , source_object
11
13
  catch e
12
- console.log "Error resolving", accessor, source_object
14
+ console.log "Error resolving", propertyReference, source_object
13
15
  throw e
14
16
 
15
17
  resolved
@@ -18,11 +20,18 @@ Luca.util.resolve = (accessor, source_object)->
18
20
  Luca.util.nestedValue = Luca.util.resolve
19
21
 
20
22
  Luca.util.argumentsLogger = (prompt)->
21
- ()-> console.log prompt, arguments
23
+ ()-> console.log "#{ prompt } #{ @identifier?() }", arguments
22
24
 
23
25
  Luca.util.read = (property, args...)->
24
26
  if _.isFunction(property) then property.apply(@, args) else property
25
27
 
28
+ Luca.util.readAll = (object={})->
29
+ processed = {}
30
+ for key, value of object
31
+ processed[key] = Luca.util.read(value)
32
+
33
+ processed
34
+
26
35
  # turns a word like form_view into FormView
27
36
  Luca.util.classify = (string="")->
28
37
  _.string.camelize( _.string.capitalize( string ) )
@@ -165,3 +174,10 @@ Luca.util.setupHooksAdvanced = (set)->
165
174
 
166
175
  @on eventId, callback, @
167
176
 
177
+ Luca.util.rejectBlanks = (object)->
178
+ processed = {}
179
+
180
+ for key, value of object when _.isBlank(value) isnt true
181
+ processed[key] = value
182
+
183
+ processed
@@ -0,0 +1 @@
1
+ //= require ./luca/index
@@ -0,0 +1,7 @@
1
+ .luca-form-view.label-align-top {
2
+ .luca-ui-field {
3
+ label, input, select, textarea {
4
+ display: block;
5
+ }
6
+ }
7
+ }
@@ -0,0 +1,3 @@
1
+ /*
2
+ *= require ./console
3
+ */
@@ -0,0 +1,4 @@
1
+ /*
2
+ *= require ./components
3
+ *= require ./containers
4
+ */
data/app.rb CHANGED
@@ -25,18 +25,16 @@ end
25
25
  class App < Sinatra::Base
26
26
  set :root, File.expand_path('../', __FILE__)
27
27
  set :sprockets, Sprockets::Environment.new(root)
28
- set :precompile, [ /\w+\.(?!js|css).+/, /application.(css|js)$/ ]
29
28
  set :assets_prefix, 'assets'
30
29
  set :assets_path, File.join(root, 'public', assets_prefix)
31
30
 
32
31
  sprockets.register_engine '.luca', Luca::Template
33
32
 
34
33
  configure do
35
- sprockets.append_path(File.join(root, 'assets', 'stylesheets'))
36
- sprockets.append_path(File.join(root, 'assets', 'javascripts'))
34
+ sprockets.append_path(File.join(root, 'app', 'assets', 'stylesheets'))
35
+ sprockets.append_path(File.join(root, 'app', 'assets', 'javascripts'))
37
36
  sprockets.append_path(File.join(root, 'vendor', 'assets', 'javascripts'))
38
37
  sprockets.append_path(File.join(root, 'vendor', 'assets', 'stylesheets'))
39
- sprockets.append_path(File.join(root, 'assets', 'images'))
40
38
  sprockets.append_path(File.join(root, 'vendor', 'assets', 'images'))
41
39
 
42
40
  sprockets.context_class.instance_eval do