sproutcore 1.5.0.rc.2 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (586) hide show
  1. data/CHANGELOG +12 -0
  2. data/VERSION.yml +1 -1
  3. data/lib/buildtasks/manifest.rake +2 -1
  4. data/lib/frameworks/sproutcore/Buildfile +3 -17
  5. data/lib/frameworks/sproutcore/CHANGELOG.md +127 -0
  6. data/lib/frameworks/sproutcore/apps/test_controls/resources/buttons_page.js +15 -3
  7. data/lib/frameworks/sproutcore/apps/test_controls/resources/checkboxes_page.js +9 -2
  8. data/lib/frameworks/sproutcore/apps/test_controls/resources/main_page.js +14 -14
  9. data/lib/frameworks/sproutcore/apps/test_controls/resources/radio_page.js +8 -2
  10. data/lib/frameworks/sproutcore/apps/test_controls/resources/tab_page.js +10 -2
  11. data/lib/frameworks/sproutcore/apps/welcome/controllers/targets.js +2 -3
  12. data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/file_exists.json +1 -0
  13. data/lib/frameworks/sproutcore/frameworks/ajax/fixtures/malformed.json +11 -0
  14. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/system/request.js +2 -2
  15. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/system/response.js +0 -0
  16. data/lib/frameworks/sproutcore/frameworks/{foundation → ajax}/tests/system/request.js +1 -4
  17. data/lib/frameworks/sproutcore/frameworks/animation/core.js +3 -3
  18. data/lib/frameworks/sproutcore/frameworks/core_foundation/core.js +23 -33
  19. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/function.js +39 -0
  20. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/bind.js +1 -1
  21. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/collection.js +4 -2
  22. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/handlebars/localization.js +1 -1
  23. data/lib/frameworks/sproutcore/frameworks/core_foundation/ext/string.js +60 -0
  24. data/lib/frameworks/sproutcore/frameworks/core_foundation/mixins/template_helpers/text_field_support.js +25 -4
  25. data/lib/frameworks/sproutcore/frameworks/core_foundation/panes/pane.js +1 -1
  26. data/lib/frameworks/sproutcore/frameworks/core_foundation/resources/core.css +4 -3
  27. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/device.js +1 -1
  28. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/event.js +8 -11
  29. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/platform.js +3 -3
  30. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/render_context.js +5 -5
  31. data/lib/frameworks/sproutcore/frameworks/core_foundation/system/root_responder.js +9 -8
  32. data/lib/frameworks/sproutcore/frameworks/core_foundation/{mixins → system}/string.js +43 -41
  33. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/string.js +28 -6
  34. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/mixins/template_helpers/text_field_support.js +25 -1
  35. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/system/render_context/update.js +3 -2
  36. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/template/collection.js +25 -1
  37. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/didAppendToDocument.js +69 -37
  38. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/layoutStyle.js +84 -80
  39. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/render.js +78 -0
  40. data/lib/frameworks/sproutcore/frameworks/core_foundation/tests/views/view/static_layout.js +1 -1
  41. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/template_collection.js +12 -4
  42. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view.js +52 -10
  43. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout.js +47 -37
  44. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/layout_style.js +10 -4
  45. data/lib/frameworks/sproutcore/frameworks/core_foundation/views/view/manipulation.js +0 -25
  46. data/lib/frameworks/sproutcore/frameworks/datastore/data_sources/data_source.js +261 -261
  47. data/lib/frameworks/sproutcore/frameworks/datastore/models/child_record.js +21 -0
  48. data/lib/frameworks/sproutcore/frameworks/datastore/models/record.js +2 -0
  49. data/lib/frameworks/sproutcore/frameworks/datastore/system/query.js +21 -5
  50. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/evaluation_of_records.js +38 -13
  51. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/query/parse.js +13 -5
  52. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/loadRecords.js +100 -0
  53. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecord.js +55 -0
  54. data/lib/frameworks/sproutcore/frameworks/datastore/tests/system/store/unloadRecords.js +76 -27
  55. data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/core/system/datetime.js +1 -1
  56. data/lib/frameworks/sproutcore/frameworks/datetime/frameworks/localized/system/datetime.js +4 -4
  57. data/lib/frameworks/sproutcore/frameworks/desktop/debug/drag.js +2 -2
  58. data/lib/frameworks/sproutcore/frameworks/desktop/panes/menu.js +3 -3
  59. data/lib/frameworks/sproutcore/frameworks/desktop/panes/select_button.js +1 -1
  60. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_data_source.js +1 -1
  61. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drag_source.js +1 -1
  62. data/lib/frameworks/sproutcore/frameworks/desktop/protocols/drop_target.js +1 -1
  63. data/lib/frameworks/sproutcore/frameworks/desktop/render_delegates/image_button.js +21 -6
  64. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/collection/mouse.js +26 -4
  65. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/date_field/ui.js +1 -1
  66. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/image_button/ui.js +31 -3
  67. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/progress/ui.js +4 -4
  68. data/lib/frameworks/sproutcore/frameworks/desktop/views/button.js +3 -3
  69. data/lib/frameworks/sproutcore/frameworks/desktop/views/checkbox.js +2 -2
  70. data/lib/frameworks/sproutcore/frameworks/desktop/views/collection.js +62 -41
  71. data/lib/frameworks/sproutcore/frameworks/desktop/views/date_field.js +2 -2
  72. data/lib/frameworks/sproutcore/frameworks/desktop/views/file.js +1 -1
  73. data/lib/frameworks/sproutcore/frameworks/desktop/views/grid.js +1 -1
  74. data/lib/frameworks/sproutcore/frameworks/desktop/views/master_detail.js +3 -3
  75. data/lib/frameworks/sproutcore/frameworks/desktop/views/menu_item.js +1 -1
  76. data/lib/frameworks/sproutcore/frameworks/desktop/views/progress.js +1 -1
  77. data/lib/frameworks/sproutcore/frameworks/desktop/views/radio.js +3 -3
  78. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroll.js +3 -3
  79. data/lib/frameworks/sproutcore/frameworks/desktop/views/scroller.js +1 -1
  80. data/lib/frameworks/sproutcore/frameworks/desktop/views/segment.js +1 -1
  81. data/lib/frameworks/sproutcore/frameworks/desktop/views/segmented.js +3 -3
  82. data/lib/frameworks/sproutcore/frameworks/desktop/views/select.js +9 -7
  83. data/lib/frameworks/sproutcore/frameworks/desktop/views/select_field.js +2 -2
  84. data/lib/frameworks/sproutcore/frameworks/desktop/views/slider.js +3 -3
  85. data/lib/frameworks/sproutcore/frameworks/desktop/views/tab.js +2 -2
  86. data/lib/frameworks/sproutcore/frameworks/desktop/views/workspace.js +2 -2
  87. data/lib/frameworks/sproutcore/frameworks/experimental/Buildfile +6 -0
  88. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/README +0 -0
  89. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/TODO +0 -0
  90. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/beautify.js +0 -0
  91. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/design.js +0 -0
  92. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/file.js +0 -0
  93. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/files.js +0 -0
  94. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/layout.js +0 -0
  95. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/library.js +0 -0
  96. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/page.js +0 -0
  97. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property.js +0 -0
  98. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/property_editor.js +0 -0
  99. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/target.js +0 -0
  100. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/targets.js +0 -0
  101. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/controllers/view_configs.js +0 -0
  102. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/core.js +0 -0
  103. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/core_file.js +3 -3
  104. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/data_source.js +0 -0
  105. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/app_page.js +5 -5
  106. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/app-selector.css +0 -0
  107. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/button.css +0 -0
  108. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/dock.css +0 -0
  109. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/general.css +0 -0
  110. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/main-page.css +0 -0
  111. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/menu.css +0 -0
  112. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/modal.css +0 -0
  113. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/picker.css +0 -0
  114. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/search.css +0 -0
  115. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/css/text-field.css +0 -0
  116. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/dialogs.js +0 -0
  117. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.eot +0 -0
  118. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.otf +0 -0
  119. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500.woff +0 -0
  120. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.eot +0 -0
  121. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.otf +0 -0
  122. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/fonts/museosans_500_italic.woff +0 -0
  123. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/choose-app.png +0 -0
  124. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/app-selector/list-item-sel.png +0 -0
  125. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-l.png +0 -0
  126. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-m.png +0 -0
  127. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/active-r.png +0 -0
  128. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-l.png +0 -0
  129. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-m.png +0 -0
  130. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule-xl/regular-r.png +0 -0
  131. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-l.png +0 -0
  132. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/active-r.png +0 -0
  133. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-l.png +0 -0
  134. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/disabled-r.png +0 -0
  135. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-l.png +0 -0
  136. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/regular-r.png +0 -0
  137. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-l.png +0 -0
  138. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-active-r.png +0 -0
  139. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-l.png +0 -0
  140. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-disabled-r.png +0 -0
  141. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-l.png +0 -0
  142. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/capsule/sel-r.png +0 -0
  143. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-l.png +0 -0
  144. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-m.png +0 -0
  145. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/active-r.png +0 -0
  146. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-l.png +0 -0
  147. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-active-r.png +0 -0
  148. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-l.png +0 -0
  149. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-r.png +0 -0
  150. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-l.png +0 -0
  151. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-active-r.png +0 -0
  152. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-l.png +0 -0
  153. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/cap-sel-r.png +0 -0
  154. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-l.png +0 -0
  155. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-m.png +0 -0
  156. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/disabled-r.png +0 -0
  157. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-l.png +0 -0
  158. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-m.png +0 -0
  159. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/regular-r.png +0 -0
  160. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-l.png +0 -0
  161. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-m.png +0 -0
  162. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-active-r.png +0 -0
  163. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-l.png +0 -0
  164. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-m.png +0 -0
  165. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-disabled-r.png +0 -0
  166. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-l.png +0 -0
  167. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-m.png +0 -0
  168. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/dark/sel-r.png +0 -0
  169. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/active-m.png +0 -0
  170. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/disabled-m.png +0 -0
  171. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/regular-m.png +0 -0
  172. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-active-m.png +0 -0
  173. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-disabled-m.png +0 -0
  174. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/shared/sel-m.png +0 -0
  175. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-l.png +0 -0
  176. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/active-r.png +0 -0
  177. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-l.png +0 -0
  178. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/disabled-r.png +0 -0
  179. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-l.png +0 -0
  180. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/regular-r.png +0 -0
  181. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-l.png +0 -0
  182. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-active-r.png +0 -0
  183. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-l.png +0 -0
  184. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-disabled-r.png +0 -0
  185. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-l.png +0 -0
  186. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/buttons/square/sel-r.png +0 -0
  187. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions-active.png +0 -0
  188. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/actions.png +0 -0
  189. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector-active.png +0 -0
  190. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/inspector.png +0 -0
  191. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library-active.png +0 -0
  192. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/library.png +0 -0
  193. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects-active.png +0 -0
  194. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/projects.png +0 -0
  195. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run-active.png +0 -0
  196. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/run.png +0 -0
  197. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save-active.png +0 -0
  198. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/icons/save.png +0 -0
  199. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-l.png +0 -0
  200. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/greenhouse-s.png +0 -0
  201. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/logos/sproutcore.png +0 -0
  202. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/main-bg.png +0 -0
  203. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-left.png +0 -0
  204. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom-right.png +0 -0
  205. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/bottom.png +0 -0
  206. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close-active.png +0 -0
  207. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/close.png +0 -0
  208. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/left.png +0 -0
  209. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-bottom.png +0 -0
  210. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-left.png +0 -0
  211. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-right.png +0 -0
  212. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/pointer-top.png +0 -0
  213. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/right.png +0 -0
  214. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search-active.png +0 -0
  215. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/search.png +0 -0
  216. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-left.png +0 -0
  217. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top-right.png +0 -0
  218. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/picker/top.png +0 -0
  219. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/images/toolbar-bg.png +0 -0
  220. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/inspectors.js +2 -2
  221. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/loading.rhtml +0 -0
  222. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/main_page.js +0 -0
  223. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/english.lproj/strings.js +0 -0
  224. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/fixtures/file.js +0 -0
  225. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/main.js +0 -0
  226. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/mixins/drop_down.js +0 -0
  227. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/design.js +0 -0
  228. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/dir.js +1 -1
  229. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/file.js +1 -1
  230. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/target.js +0 -0
  231. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/models/view_config.js +0 -0
  232. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/resources/test_page.js +0 -0
  233. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/inspector.js +0 -0
  234. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/library.js +0 -0
  235. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/main.js +0 -0
  236. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/modals.js +0 -0
  237. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/states/ready.js +0 -0
  238. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/design.js +0 -0
  239. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/designs.js +0 -0
  240. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/file.js +0 -0
  241. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/controllers/files.js +0 -0
  242. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/file.js +0 -0
  243. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/models/view_config.js +0 -0
  244. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/views/list_item.js +0 -0
  245. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/tests/views/plist_item.js +2 -2
  246. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/theme.js +0 -0
  247. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/anchor.js +0 -0
  248. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/application_list_item.js +0 -0
  249. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/event_blocker.js +0 -0
  250. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/label_designer.js +0 -0
  251. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/list_item.js +0 -0
  252. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/plist_item.js +0 -0
  253. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/simple_button.js +0 -0
  254. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/tear_off_picker.js +0 -0
  255. data/lib/frameworks/sproutcore/{apps → frameworks/experimental/apps}/greenhouse/views/web.js +0 -0
  256. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/coders/design.js +0 -0
  257. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/coders/object.js +0 -0
  258. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/controllers.js +0 -0
  259. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/design.js +0 -0
  260. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/designs.js +0 -0
  261. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/page_design.js +0 -0
  262. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/controllers/page_files.js +0 -0
  263. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/core.js +0 -0
  264. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_rule.js +0 -0
  265. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_style.js +0 -0
  266. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/css/css_style_sheet.js +0 -0
  267. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/button.js +1 -1
  268. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/label.js +1 -1
  269. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/object_designer.js +0 -0
  270. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/tab.js +1 -1
  271. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/text_field.js +1 -1
  272. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/designers/view_designer.js +2 -2
  273. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/css/designer.css +0 -0
  274. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/design_page.js +3 -3
  275. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/high_light.css +0 -0
  276. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/controller.png +0 -0
  277. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-bg.png +0 -0
  278. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-bg.png +0 -0
  279. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-divider.png +0 -0
  280. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-bg.png +0 -0
  281. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/dock-item-sel-divider.png +0 -0
  282. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/main-bg.png +0 -0
  283. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/page.png +0 -0
  284. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/pane.png +0 -0
  285. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/images/view.png +0 -0
  286. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/english.lproj/selection_handles.css +0 -0
  287. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/binding.js +0 -0
  288. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/object.js +0 -0
  289. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/page.js +0 -0
  290. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/ext/view.js +0 -0
  291. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/mixins/button.js +1 -1
  292. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/mixins/snap_lines.js +0 -0
  293. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/tests/coders/page.js +1 -1
  294. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/tests/designers/view_designer.js +0 -0
  295. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/designer_drop_target.js +0 -0
  296. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/drawing.js +0 -0
  297. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/high_light.js +0 -0
  298. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/page_item_view.js +0 -0
  299. data/lib/frameworks/sproutcore/frameworks/{designer → experimental/frameworks/designer}/views/selection_handles.js +3 -3
  300. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/device_motion/device.js +1 -1
  301. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/models/record.js +99 -84
  302. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/polymorphism/tests/models/polymorphism/simple.js +10 -0
  303. data/lib/frameworks/sproutcore/frameworks/experimental/frameworks/split_view/views/split.js +3 -3
  304. data/lib/frameworks/sproutcore/frameworks/forms/{renderer_delegates → render_delegates}/form.js +0 -0
  305. data/lib/frameworks/sproutcore/frameworks/forms/{renderer_delegates → render_delegates}/form_row.js +0 -0
  306. data/lib/frameworks/sproutcore/frameworks/forms/views/form.js +3 -3
  307. data/lib/frameworks/sproutcore/frameworks/forms/views/form_row.js +4 -3
  308. data/lib/frameworks/sproutcore/frameworks/foundation/core.js +23 -0
  309. data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/checkbox_view.css +5 -0
  310. data/lib/frameworks/sproutcore/frameworks/foundation/english.lproj/radio_view.css +7 -0
  311. data/lib/frameworks/sproutcore/frameworks/foundation/ext/string.js +89 -0
  312. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/control.js +8 -9
  313. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/editable.js +10 -11
  314. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/flowed_layout.js +67 -8
  315. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/gestureable.js +20 -20
  316. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editable.js +149 -174
  317. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor.js +94 -103
  318. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inline_editor_delegate.js +132 -139
  319. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/inner_frame.js +66 -56
  320. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/static_layout.js +19 -20
  321. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/tree_item_content.js +10 -6
  322. data/lib/frameworks/sproutcore/frameworks/foundation/mixins/validatable.js +17 -8
  323. data/lib/frameworks/sproutcore/frameworks/foundation/private/tree_item_observer.js +3 -1
  324. data/lib/frameworks/sproutcore/frameworks/foundation/render_delegates/image.js +4 -2
  325. data/lib/frameworks/sproutcore/frameworks/foundation/system/benchmark.js +63 -54
  326. data/lib/frameworks/sproutcore/frameworks/foundation/system/chance.js +1 -0
  327. data/lib/frameworks/sproutcore/frameworks/foundation/system/cookie.js +20 -21
  328. data/lib/frameworks/sproutcore/frameworks/foundation/system/exception_handler.js +5 -2
  329. data/lib/frameworks/sproutcore/frameworks/foundation/{mixins → system}/string.js +106 -82
  330. data/lib/frameworks/sproutcore/frameworks/foundation/tests/{mixins → system}/string.js +0 -0
  331. data/lib/frameworks/sproutcore/frameworks/foundation/tests/validators/date.js +10 -12
  332. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/container/ui.js +44 -9
  333. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/image/ui.js +45 -25
  334. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/label/ui.js +10 -3
  335. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/nextValidKeyView.js +7 -7
  336. data/lib/frameworks/sproutcore/frameworks/foundation/tests/views/text_field/ui.js +38 -1
  337. data/lib/frameworks/sproutcore/frameworks/foundation/validators/credit_card.js +1 -1
  338. data/lib/frameworks/sproutcore/frameworks/foundation/validators/date.js +38 -11
  339. data/lib/frameworks/sproutcore/frameworks/foundation/validators/email.js +1 -1
  340. data/lib/frameworks/sproutcore/frameworks/foundation/validators/not_empty.js +5 -9
  341. data/lib/frameworks/sproutcore/frameworks/foundation/validators/number.js +1 -1
  342. data/lib/frameworks/sproutcore/frameworks/foundation/validators/password.js +1 -1
  343. data/lib/frameworks/sproutcore/frameworks/foundation/validators/positive_integer.js +1 -1
  344. data/lib/frameworks/sproutcore/frameworks/foundation/validators/validator.js +4 -2
  345. data/lib/frameworks/sproutcore/frameworks/foundation/views/container.js +5 -4
  346. data/lib/frameworks/sproutcore/frameworks/foundation/views/field.js +2 -2
  347. data/lib/frameworks/sproutcore/frameworks/foundation/views/image.js +10 -9
  348. data/lib/frameworks/sproutcore/frameworks/foundation/{mixins → views}/inline_text_field.js +0 -0
  349. data/lib/frameworks/sproutcore/frameworks/foundation/views/label.js +2 -2
  350. data/lib/frameworks/sproutcore/frameworks/foundation/views/text_field.js +73 -61
  351. data/lib/frameworks/sproutcore/frameworks/jquery/jquery-buffer.js +5 -1
  352. data/lib/frameworks/sproutcore/frameworks/media/views/audio.js +1 -1
  353. data/lib/frameworks/sproutcore/frameworks/media/views/controls.js +2 -2
  354. data/lib/frameworks/sproutcore/frameworks/media/views/mini_controls.js +2 -2
  355. data/lib/frameworks/sproutcore/frameworks/media/views/simple_controls.js +2 -2
  356. data/lib/frameworks/sproutcore/frameworks/media/views/video.js +1 -1
  357. data/lib/frameworks/sproutcore/frameworks/runtime/core.js +7 -380
  358. data/lib/frameworks/sproutcore/frameworks/runtime/ext/array.js +92 -0
  359. data/lib/frameworks/sproutcore/frameworks/runtime/ext/date.js +15 -0
  360. data/lib/frameworks/sproutcore/frameworks/runtime/ext/function.js +189 -0
  361. data/lib/frameworks/sproutcore/frameworks/runtime/ext/string.js +31 -0
  362. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/array.js +88 -189
  363. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/enumerable.js +1 -0
  364. data/lib/frameworks/sproutcore/frameworks/runtime/mixins/observable.js +9 -3
  365. data/lib/frameworks/sproutcore/frameworks/runtime/system/binding.js +3 -2
  366. data/lib/frameworks/sproutcore/frameworks/runtime/system/error.js +3 -0
  367. data/lib/frameworks/sproutcore/frameworks/runtime/system/function.js +76 -0
  368. data/lib/frameworks/sproutcore/frameworks/{core_foundation → runtime}/system/json.js +0 -0
  369. data/lib/frameworks/sproutcore/frameworks/runtime/system/logger.js +1 -0
  370. data/lib/frameworks/sproutcore/frameworks/runtime/system/run_loop.js +1 -0
  371. data/lib/frameworks/sproutcore/frameworks/runtime/system/string.js +60 -0
  372. data/lib/frameworks/sproutcore/frameworks/runtime/tests/core/isArray.js +27 -0
  373. data/lib/frameworks/sproutcore/frameworks/runtime/tests/system/binding.js +26 -1
  374. data/lib/frameworks/sproutcore/frameworks/{core_foundation → runtime}/tests/system/json.js +0 -0
  375. data/lib/frameworks/sproutcore/themes/ace/resources/button/dark/button.js +1 -1
  376. data/lib/frameworks/sproutcore/themes/ace/resources/menu/menu.css +4 -0
  377. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/button.js +1 -1
  378. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/panel.js +1 -1
  379. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/progress.js +1 -1
  380. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/slider.js +1 -1
  381. data/lib/frameworks/sproutcore/themes/legacy_theme/render_delegates/well.js +1 -1
  382. data/lib/sproutcore/rack/proxy.rb +1 -1
  383. data/lib/sproutcore/tools/docs.rb +1 -1
  384. data/lib/sproutcore/tools/gen.rb +1 -1
  385. data/lib/sproutcore/tools/init.rb +1 -1
  386. data/lib/sproutcore/tools/server.rb +9 -1
  387. data/sproutcore.gemspec +1 -1
  388. metadata +247 -429
  389. data/design/Technical Notes.graffle/QuickLook/Preview.pdf +0 -0
  390. data/design/Technical Notes.graffle/QuickLook/Thumbnail.tiff +0 -0
  391. data/design/Technical Notes.graffle/data.plist +0 -5534
  392. data/design/Technical Notes.graffle/image8.png +0 -0
  393. data/lib/frameworks/sproutcore/apps/docs/core.js +0 -27
  394. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Preview.pdf +0 -0
  395. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/QuickLook/Thumbnail.tiff +0 -0
  396. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/data.plist +0 -14378
  397. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image10.png +0 -0
  398. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image11.png +0 -0
  399. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image13.png +0 -0
  400. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image14.png +0 -0
  401. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image8.png +0 -0
  402. data/lib/frameworks/sproutcore/apps/docs/design/Doc Viewer.graffle/image9.tiff +0 -0
  403. data/lib/frameworks/sproutcore/apps/docs/english.lproj/loading.rhtml +0 -9
  404. data/lib/frameworks/sproutcore/apps/docs/english.lproj/main_page.js +0 -22
  405. data/lib/frameworks/sproutcore/apps/docs/english.lproj/strings.js +0 -15
  406. data/lib/frameworks/sproutcore/apps/docs/main.js +0 -30
  407. data/lib/frameworks/sproutcore/design/CollectionView State Charts.graffle +0 -4848
  408. data/lib/frameworks/sproutcore/design/Design Charts.graffle +0 -16845
  409. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/QuickLook/Preview.pdf +0 -0
  410. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/QuickLook/Thumbnail.tiff +0 -0
  411. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/data.plist +0 -19588
  412. data/lib/frameworks/sproutcore/design/Sproutcore_DatastoreDesign.graffle/image8.png +0 -0
  413. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/QuickLook/Preview.pdf +0 -0
  414. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/QuickLook/Thumbnail.tiff +0 -0
  415. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/data.plist +0 -1452
  416. data/lib/frameworks/sproutcore/design/Sproutcore_Design_Template.graffle/image8.png +0 -0
  417. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/QuickLook/Preview.pdf +0 -0
  418. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/QuickLook/Thumbnail.tiff +0 -0
  419. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/data.plist +0 -24187
  420. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image10.png +0 -0
  421. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image11.png +0 -0
  422. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image13.png +0 -0
  423. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image15.png +0 -0
  424. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image16.png +0 -0
  425. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image17.png +0 -0
  426. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image18.png +0 -0
  427. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image19.png +0 -0
  428. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image22.tiff +0 -0
  429. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image23.png +0 -0
  430. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image24.png +0 -0
  431. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image25.png +0 -0
  432. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image30.png +0 -0
  433. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image31.png +0 -0
  434. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image8.png +0 -0
  435. data/lib/frameworks/sproutcore/design/TestRunner_Design.graffle/image9.png +0 -0
  436. data/lib/frameworks/sproutcore/design/greenhouse-statechart.graffle +0 -9025
  437. data/lib/frameworks/sproutcore/design/iphone-webapp-loading.psd +0 -0
  438. data/lib/frameworks/sproutcore/frameworks/desktop/tests/views/scene_view/databind.js +0 -111
  439. data/lib/frameworks/sproutcore/frameworks/foundation/system/staticqueue.js +0 -59
  440. data/lib/frameworks/sproutcore/frameworks/foundation/system/time.js +0 -474
  441. data/lib/frameworks/sproutcore/themes/ace/designs/dark.psd +0 -0
  442. data/lib/frameworks/sproutcore/themes/ace/designs/light.psd +0 -0
  443. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/active_button.psd +0 -0
  444. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/normal_button.psd +0 -0
  445. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_active_button.psd +0 -0
  446. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/18px/selected_button.psd +0 -0
  447. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button.psd +0 -0
  448. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_capsule.psd +0 -0
  449. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/active_button_pointer.psd +0 -0
  450. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button.psd +0 -0
  451. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_capsule.psd +0 -0
  452. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/normal_button_pointer.psd +0 -0
  453. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button.psd +0 -0
  454. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_capsule.psd +0 -0
  455. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_active_button_pointer.psd +0 -0
  456. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button.psd +0 -0
  457. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_capsule.psd +0 -0
  458. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/24px/selected_button_pointer.psd +0 -0
  459. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button.psd +0 -0
  460. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/active_button_pointer.psd +0 -0
  461. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button.psd +0 -0
  462. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/normal_button_pointer.psd +0 -0
  463. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button.psd +0 -0
  464. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_active_button_pointer.psd +0 -0
  465. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button.psd +0 -0
  466. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/30px/selected_button_pointer.psd +0 -0
  467. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/active_button.psd +0 -0
  468. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/normal_button.psd +0 -0
  469. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_active_button.psd +0 -0
  470. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/ace/44px/selected_button.psd +0 -0
  471. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button.psd +0 -0
  472. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_capsule.psd +0 -0
  473. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/active_button_pointer.psd +0 -0
  474. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button.psd +0 -0
  475. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_capsule.psd +0 -0
  476. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/normal_button_pointer.psd +0 -0
  477. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button.psd +0 -0
  478. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_capsule.psd +0 -0
  479. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_active_button_pointer.psd +0 -0
  480. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button.psd +0 -0
  481. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_capsule.psd +0 -0
  482. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/24px/selected_button_pointer.psd +0 -0
  483. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button.psd +0 -0
  484. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/active_button_pointer.psd +0 -0
  485. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button.psd +0 -0
  486. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/normal_button_pointer.psd +0 -0
  487. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button.psd +0 -0
  488. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_active_button_pointer.psd +0 -0
  489. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button.psd +0 -0
  490. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/dark/30px/selected_button_pointer.psd +0 -0
  491. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/active_select.psd +0 -0
  492. data/lib/frameworks/sproutcore/themes/ace/designs/psds/button/popup/normal_select.psd +0 -0
  493. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked.psd +0 -0
  494. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_checked_active.psd +0 -0
  495. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed.psd +0 -0
  496. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_mixed_active.psd +0 -0
  497. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked.psd +0 -0
  498. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/14px/checkbox_unchecked_active.psd +0 -0
  499. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked.psd +0 -0
  500. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_checked_active.psd +0 -0
  501. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed.psd +0 -0
  502. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_mixed_active.psd +0 -0
  503. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked.psd +0 -0
  504. data/lib/frameworks/sproutcore/themes/ace/designs/psds/checkbox/ace/16px/checkbox_unchecked_active.psd +0 -0
  505. data/lib/frameworks/sproutcore/themes/ace/designs/psds/collection/source-list/selection.psd +0 -0
  506. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed.psd +0 -0
  507. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_closed_active.psd +0 -0
  508. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open.psd +0 -0
  509. data/lib/frameworks/sproutcore/themes/ace/designs/psds/disclosure/ace/disclosure_open_active.psd +0 -0
  510. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark.psd +0 -0
  511. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/checkmark_active.psd +0 -0
  512. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/down.psd +0 -0
  513. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu.psd +0 -0
  514. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/menu_item.psd +0 -0
  515. data/lib/frameworks/sproutcore/themes/ace/designs/psds/menu/up.psd +0 -0
  516. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/panel.psd +0 -0
  517. data/lib/frameworks/sproutcore/themes/ace/designs/psds/panel/pointers.psd +0 -0
  518. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover.psd +0 -0
  519. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_empty.psd +0 -0
  520. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_notoolbar.psd +0 -0
  521. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers.psd +0 -0
  522. data/lib/frameworks/sproutcore/themes/ace/designs/psds/picker/popover/popover_pointers_notoolbar.psd +0 -0
  523. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_content.psd +0 -0
  524. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_indeterminate_content.psd +0 -0
  525. data/lib/frameworks/sproutcore/themes/ace/designs/psds/progress/ace/progress_view_track.psd +0 -0
  526. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_active.psd +0 -0
  527. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed.psd +0 -0
  528. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_mixed_active.psd +0 -0
  529. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected.psd +0 -0
  530. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_selected_active.psd +0 -0
  531. data/lib/frameworks/sproutcore/themes/ace/designs/psds/radio/radio_unselected.psd +0 -0
  532. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/thumb.psd +0 -0
  533. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows.psd +0 -0
  534. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/horizontal/track_and_arrows_active.psd +0 -0
  535. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/thumb.psd +0 -0
  536. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows.psd +0 -0
  537. data/lib/frameworks/sproutcore/themes/ace/designs/psds/scroller/vertical/track_and_arrows_active.psd +0 -0
  538. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_active.psd +0 -0
  539. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_normal.psd +0 -0
  540. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected.psd +0 -0
  541. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/18px/segmented_selected_active.psd +0 -0
  542. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_active.psd +0 -0
  543. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_normal.psd +0 -0
  544. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected.psd +0 -0
  545. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/24px/segmented_selected_active.psd +0 -0
  546. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_active.psd +0 -0
  547. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_normal.psd +0 -0
  548. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected.psd +0 -0
  549. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/30px/segmented_selected_active.psd +0 -0
  550. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_active.psd +0 -0
  551. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_normal.psd +0 -0
  552. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected.psd +0 -0
  553. data/lib/frameworks/sproutcore/themes/ace/designs/psds/segmented/44px/segmented_selected_active.psd +0 -0
  554. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob.psd +0 -0
  555. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/14px/knob_active.psd +0 -0
  556. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob.psd +0 -0
  557. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/16px/knob_active.psd +0 -0
  558. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob.psd +0 -0
  559. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/knob_active.psd +0 -0
  560. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/22px/track.psd +0 -0
  561. data/lib/frameworks/sproutcore/themes/ace/designs/psds/slider/ace/track.psd +0 -0
  562. data/lib/frameworks/sproutcore/themes/ace/designs/psds/toolbar/toolbar.psd +0 -0
  563. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch.psd +0 -0
  564. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_handle.psd +0 -0
  565. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_off.psd +0 -0
  566. data/lib/frameworks/sproutcore/themes/ace/designs/switch/switch_on.psd +0 -0
  567. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/Data +0 -0
  568. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/QuickLook/Preview.jpg +0 -0
  569. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/Panel.drawit/QuickLook/Thumbnail.jpg +0 -0
  570. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/SproutCore Theme Buttons.psd +0 -0
  571. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/Data +0 -0
  572. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/QuickLook/Preview.jpg +0 -0
  573. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/ToolbarView Pattern.drawit/QuickLook/Thumbnail.jpg +0 -0
  574. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/Data +0 -0
  575. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/QuickLook/Preview.jpg +0 -0
  576. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-x.drawit/QuickLook/Thumbnail.jpg +0 -0
  577. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/Data +0 -0
  578. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/QuickLook/Preview.jpg +0 -0
  579. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/panel-sprite-y.drawit/QuickLook/Thumbnail.jpg +0 -0
  580. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-repeat-x-2.psd +0 -0
  581. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-repeat-x.psd +0 -0
  582. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-sprite.psd +0 -0
  583. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sc-theme-ysprite.psd +0 -0
  584. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/shared-icons.psd +0 -0
  585. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sproutcore-logo.psd +0 -0
  586. data/lib/frameworks/sproutcore/themes/legacy_theme/Source/sticky-note.psd +0 -0
@@ -0,0 +1,92 @@
1
+ // ==========================================================================
2
+ // Project: SproutCore Costello - Property Observing Library
3
+ // Copyright: ©2006-2011 Strobe Inc. and contributors.
4
+ // Portions ©2008-2011 Apple Inc. All rights reserved.
5
+ // License: Licensed under MIT license (see license.js)
6
+ // ==========================================================================
7
+
8
+ sc_require('mixins/array');
9
+
10
+ SC.supplement(Array.prototype, SC.CoreArray);
11
+
12
+ // Because Arrays are dealt with so much, we add specialized functions.
13
+
14
+ SC.mixin(Array.prototype, {
15
+
16
+ // primitive for array support.
17
+ replace: function(idx, amt, objects) {
18
+ if (this.isFrozen) { throw SC.FROZEN_ERROR ; }
19
+
20
+ var args;
21
+ var len = objects ? (objects.get ? objects.get('length') : objects.length) : 0;
22
+
23
+ // Notify that array content is about to mutate.
24
+ this.arrayContentWillChange(idx, amt, len);
25
+
26
+ if (len === 0) {
27
+ this.splice(idx, amt) ;
28
+ } else {
29
+ args = [idx, amt].concat(objects) ;
30
+ this.splice.apply(this,args) ;
31
+ }
32
+
33
+ this.arrayContentDidChange(idx, amt, len);
34
+ this.enumerableContentDidChange(idx, amt, len - amt) ;
35
+ return this ;
36
+ },
37
+
38
+ // If you ask for an unknown property, then try to collect the value
39
+ // from member items.
40
+ unknownProperty: function(key, value) {
41
+ var ret = this.reducedProperty(key, value) ;
42
+ if ((value !== undefined) && ret === undefined) {
43
+ ret = this[key] = value;
44
+ }
45
+ return ret ;
46
+ }
47
+
48
+ });
49
+
50
+ if (Array.prototype.indexOf === SC.CoreArray.indexOf) {
51
+ /**
52
+ Returns the index for a particular object in the index.
53
+
54
+ @param {Object} object the item to search for
55
+ @param {Number} startAt optional starting location to search, default 0
56
+ @returns {Number} index of -1 if not found
57
+ */
58
+ Array.prototype.indexOf = function(object, startAt) {
59
+ var idx, len = this.length;
60
+
61
+ if (startAt === undefined) startAt = 0;
62
+ else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
63
+ if (startAt < 0) startAt += len;
64
+
65
+ for(idx=startAt;idx<len;idx++) {
66
+ if (this[idx] === object) return idx ;
67
+ }
68
+ return -1;
69
+ } ;
70
+ }
71
+
72
+ if (Array.prototype.lastIndexOf === SC.CoreArray.lastIndexOf) {
73
+ /**
74
+ Returns the last index for a particular object in the index.
75
+
76
+ @param {Object} object the item to search for
77
+ @param {Number} startAt optional starting location to search, default 0
78
+ @returns {Number} index of -1 if not found
79
+ */
80
+ Array.prototype.lastIndexOf = function(object, startAt) {
81
+ var idx, len = this.length;
82
+
83
+ if (startAt === undefined) startAt = len-1;
84
+ else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
85
+ if (startAt < 0) startAt += len;
86
+
87
+ for(idx=startAt;idx>=0;idx--) {
88
+ if (this[idx] === object) return idx ;
89
+ }
90
+ return -1;
91
+ };
92
+ }
@@ -0,0 +1,15 @@
1
+ // ==========================================================================
2
+ // Project: SproutCore Costello - Property Observing Library
3
+ // Copyright: ©2006-2011 Strobe Inc. and contributors.
4
+ // Portions ©2008-2011 Apple Inc. All rights reserved.
5
+ // License: Licensed under MIT license (see license.js)
6
+ // ==========================================================================
7
+
8
+ if (!Date.now) {
9
+ /**
10
+ @ignore
11
+ */
12
+ Date.now = function() {
13
+ return new Date().getTime() ;
14
+ };
15
+ }
@@ -0,0 +1,189 @@
1
+ // ==========================================================================
2
+ // Project: SproutCore Costello - Property Observing Library
3
+ // Copyright: ©2006-2011 Strobe Inc. and contributors.
4
+ // Portions ©2008-2011 Apple Inc. All rights reserved.
5
+ // License: Licensed under MIT license (see license.js)
6
+ // ==========================================================================
7
+
8
+ sc_require('system/function');
9
+
10
+ SC.mixin(Function.prototype,
11
+ /** @lends Function.prototype */ {
12
+
13
+ /**
14
+ Indicates that the function should be treated as a computed property.
15
+
16
+ Computed properties are methods that you want to treat as if they were
17
+ static properties. When you use get() or set() on a computed property,
18
+ the object will call the property method and return its value instead of
19
+ returning the method itself. This makes it easy to create "virtual
20
+ properties" that are computed dynamically from other properties.
21
+
22
+ Consider the following example:
23
+
24
+ contact = SC.Object.create({
25
+
26
+ firstName: "Charles",
27
+ lastName: "Jolley",
28
+
29
+ // This is a computed property!
30
+ fullName: function() {
31
+ return this.getEach('firstName','lastName').compact().join(' ') ;
32
+ }.property('firstName', 'lastName'),
33
+
34
+ // this is not
35
+ getFullName: function() {
36
+ return this.getEach('firstName','lastName').compact().join(' ') ;
37
+ }
38
+ });
39
+
40
+ contact.get('firstName') ;
41
+ --> "Charles"
42
+
43
+ contact.get('fullName') ;
44
+ --> "Charles Jolley"
45
+
46
+ contact.get('getFullName') ;
47
+ --> function()
48
+
49
+ Note that when you get the fullName property, SproutCore will call the
50
+ fullName() function and return its value whereas when you get() a property
51
+ that contains a regular method (such as getFullName above), then the
52
+ function itself will be returned instead.
53
+
54
+ Using Dependent Keys
55
+ ----
56
+
57
+ Computed properties are often computed dynamically from other member
58
+ properties. Whenever those properties change, you need to notify any
59
+ object that is observing the computed property that the computed property
60
+ has changed also. We call these properties the computed property is based
61
+ upon "dependent keys".
62
+
63
+ For example, in the contact object above, the fullName property depends on
64
+ the firstName and lastName property. If either property value changes,
65
+ any observer watching the fullName property will need to be notified as
66
+ well.
67
+
68
+ You inform SproutCore of these dependent keys by passing the key names
69
+ as parameters to the property() function. Whenever the value of any key
70
+ you name here changes, the computed property will be marked as changed
71
+ also.
72
+
73
+ You should always register dependent keys for computed properties to
74
+ ensure they update.
75
+
76
+ Sometimes you may need to depend on keys that are several objects deep. In
77
+ that case, you can provide a path to property():
78
+
79
+ capitalizedName: function() {
80
+ return this.getPath('person.fullName').toUpper();
81
+ }.property('person.firstName')
82
+
83
+ This will cause observers of +capitalizedName+ to be fired when either
84
+ +fullName+ _or_ +person+ changes.
85
+
86
+ Using Computed Properties as Setters
87
+ ---
88
+
89
+ Computed properties can be used to modify the state of an object as well
90
+ as to return a value. Unlike many other key-value system, you use the
91
+ same method to both get and set values on a computed property. To
92
+ write a setter, simply declare two extra parameters: key and value.
93
+
94
+ Whenever your property function is called as a setter, the value
95
+ parameter will be set. Whenever your property is called as a getter the
96
+ value parameter will be undefined.
97
+
98
+ For example, the following object will split any full name that you set
99
+ into a first name and last name components and save them.
100
+
101
+ contact = SC.Object.create({
102
+
103
+ fullName: function(key, value) {
104
+ if (value !== undefined) {
105
+ var parts = value.split(' ') ;
106
+ this.beginPropertyChanges()
107
+ .set('firstName', parts[0])
108
+ .set('lastName', parts[1])
109
+ .endPropertyChanges() ;
110
+ }
111
+ return this.getEach('firstName', 'lastName').compact().join(' ');
112
+ }.property('firstName','lastName')
113
+
114
+ }) ;
115
+
116
+ Why Use The Same Method for Getters and Setters?
117
+ ---
118
+
119
+ Most property-based frameworks expect you to write two methods for each
120
+ property but SproutCore only uses one. We do this because most of the time
121
+ when you write a setter is is basically a getter plus some extra work.
122
+ There is little added benefit in writing both methods when you can
123
+ conditionally exclude part of it. This helps to keep your code more
124
+ compact and easier to maintain.
125
+
126
+ @param {String...} dependentKeys optional set of dependent keys
127
+ @returns {Function} the declared function instance
128
+ */
129
+ property: function() {
130
+ return SC.Function.property(this, arguments);
131
+ },
132
+
133
+ /**
134
+ You can call this method on a computed property to indicate that the
135
+ property is cacheable (or not cacheable). By default all computed
136
+ properties are not cached. Enabling this feature will allow SproutCore
137
+ to cache the return value of your computed property and to use that
138
+ value until one of your dependent properties changes or until you
139
+ invoke propertyDidChange() and name the computed property itself.
140
+
141
+ If you do not specify this option, computed properties are assumed to be
142
+ not cacheable.
143
+
144
+ @param {Boolean} aFlag optionally indicate cacheable or no, default YES
145
+ @returns {Function} reciever, useful for chaining calls.
146
+ */
147
+ cacheable: function(aFlag) {
148
+ return SC.Function.cacheable(this, aFlag);
149
+ },
150
+
151
+ /**
152
+ Indicates that the computed property is volatile. Normally SproutCore
153
+ assumes that your computed property is idempotent. That is, calling
154
+ set() on your property more than once with the same value has the same
155
+ effect as calling it only once.
156
+
157
+ All non-computed properties are idempotent and normally you should make
158
+ your computed properties behave the same way. However, if you need to
159
+ make your property change its return value everytime your method is
160
+ called, you may chain this to your property to make it volatile.
161
+
162
+ If you do not specify this option, properties are assumed to be
163
+ non-volatile.
164
+
165
+ @param {Boolean} aFlag optionally indicate state, default to YES
166
+ @returns {Function} reciever, useful for chaining calls.
167
+ */
168
+ idempotent: function(aFlag) {
169
+ return SC.Function.idempotent(this, aFlag);
170
+ },
171
+
172
+ enhance: function() {
173
+ return SC.Function.enhance(this);
174
+ },
175
+
176
+ /**
177
+ Declare that a function should observe an object or property at the named
178
+ path. Note that the path is used only to construct the observation one time.
179
+
180
+ @param {String...} propertyPaths A list of strings which indicate the
181
+ properties being observed
182
+
183
+ @returns {Function} reciever, useful for chaining calls.
184
+ */
185
+ observes: function(propertyPaths) {
186
+ return SC.Function.observes(this, arguments);
187
+ }
188
+
189
+ });
@@ -0,0 +1,31 @@
1
+ // ==========================================================================
2
+ // Project: SproutCore Costello - Property Observing Library
3
+ // Copyright: ©2006-2011 Strobe Inc. and contributors.
4
+ // Portions ©2008-2011 Apple Inc. All rights reserved.
5
+ // License: Licensed under MIT license (see license.js)
6
+ // ==========================================================================
7
+
8
+ sc_require('system/string');
9
+
10
+ /**
11
+ @namespace
12
+ Extends String by adding a few helpful methods.
13
+ */
14
+ SC.mixin(String.prototype,
15
+ /** @scope String.prototype */ {
16
+
17
+ /**
18
+ @see SC.String.fmt
19
+ */
20
+ fmt: function() {
21
+ return SC.String.fmt(this, arguments);
22
+ },
23
+
24
+ /**
25
+ @see SC.String.w
26
+ */
27
+ w: function() {
28
+ return SC.String.w(this);
29
+ }
30
+
31
+ });
@@ -7,45 +7,14 @@
7
7
 
8
8
  // note: SC.Observable also enhances array. make sure we are called after
9
9
  // SC.Observable so our version of unknownProperty wins.
10
+ sc_require('ext/function');
10
11
  sc_require('mixins/observable');
11
12
  sc_require('mixins/enumerable');
12
13
  sc_require('system/range_observer');
13
14
 
14
- SC.OUT_OF_RANGE_EXCEPTION = "Index out of range" ;
15
+ SC.OUT_OF_RANGE_EXCEPTION = "Index out of range";
15
16
 
16
- /**
17
- @namespace
18
-
19
- This module implements Observer-friendly Array-like behavior. This mixin is
20
- picked up by the Array class as well as other controllers, etc. that want to
21
- appear to be arrays.
22
-
23
- Unlike SC.Enumerable, this mixin defines methods specifically for
24
- collections that provide index-ordered access to their contents. When you
25
- are designing code that needs to accept any kind of Array-like object, you
26
- should use these methods instead of Array primitives because these will
27
- properly notify observers of changes to the array.
28
-
29
- Although these methods are efficient, they do add a layer of indirection to
30
- your application so it is a good idea to use them only when you need the
31
- flexibility of using both true JavaScript arrays and "virtual" arrays such
32
- as controllers and collections.
33
-
34
- You can use the methods defined in this module to access and modify array
35
- contents in a KVO-friendly way. You can also be notified whenever the
36
- membership if an array changes by changing the syntax of the property to
37
- .observes('*myProperty.[]') .
38
-
39
- To support SC.Array in your own class, you must override two
40
- primitives to use it: replace() and objectAt().
41
-
42
- Note that the SC.Array mixin also incorporates the SC.Enumerable mixin. All
43
- SC.Array-like objects are also enumerable.
44
-
45
- @extends SC.Enumerable
46
- @since SproutCore 0.9.0
47
- */
48
- SC.Array = /** @scope SC.Array.prototype */{
17
+ SC.CoreArray = /** @lends SC.Array.prototype */ {
49
18
 
50
19
  /**
51
20
  Walk like a duck - use isSCArray to avoid conflicts
@@ -89,6 +58,46 @@ SC.Array = /** @scope SC.Array.prototype */{
89
58
  throw "replace() must be implemented to support SC.Array" ;
90
59
  },
91
60
 
61
+ /**
62
+ Returns the index for a particular object in the index.
63
+
64
+ @param {Object} object the item to search for
65
+ @param {Number} startAt optional starting location to search, default 0
66
+ @returns {Number} index of -1 if not found
67
+ */
68
+ indexOf: function(object, startAt) {
69
+ var idx, len = this.get('length');
70
+
71
+ if (startAt === undefined) startAt = 0;
72
+ else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
73
+ if (startAt < 0) startAt += len;
74
+
75
+ for(idx=startAt;idx<len;idx++) {
76
+ if (this.objectAt(idx, YES) === object) return idx ;
77
+ }
78
+ return -1;
79
+ },
80
+
81
+ /**
82
+ Returns the last index for a particular object in the index.
83
+
84
+ @param {Object} object the item to search for
85
+ @param {Number} startAt optional starting location to search, default 0
86
+ @returns {Number} index of -1 if not found
87
+ */
88
+ lastIndexOf: function(object, startAt) {
89
+ var idx, len = this.get('length');
90
+
91
+ if (startAt === undefined) startAt = len-1;
92
+ else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
93
+ if (startAt < 0) startAt += len;
94
+
95
+ for(idx=startAt;idx>=0;idx--) {
96
+ if (this.objectAt(idx) === object) return idx ;
97
+ }
98
+ return -1;
99
+ },
100
+
92
101
  /**
93
102
  This is one of the primitives you must implement to support SC.Array.
94
103
  Returns the object at the named index. If your object supports retrieving
@@ -204,6 +213,27 @@ SC.Array = /** @scope SC.Array.prototype */{
204
213
  return this;
205
214
  },
206
215
 
216
+ /**
217
+ Returns a new array that is a slice of the receiver. This implementation
218
+ uses the observable array methods to retrieve the objects for the new
219
+ slice.
220
+
221
+ If you don't pass in beginIndex and endIndex, it will act as a copy of the
222
+ array.
223
+
224
+ @param beginIndex {Integer} (Optional) index to begin slicing from.
225
+ @param endIndex {Integer} (Optional) index to end the slice at.
226
+ @returns {Array} New array with specified slice
227
+ */
228
+ slice: function(beginIndex, endIndex) {
229
+ var ret = [];
230
+ var length = this.get('length') ;
231
+ if (SC.none(beginIndex)) beginIndex = 0 ;
232
+ if (SC.none(endIndex) || (endIndex > length)) endIndex = length ;
233
+ while(beginIndex < endIndex) ret[ret.length] = this.objectAt(beginIndex++) ;
234
+ return ret ;
235
+ },
236
+
207
237
  /**
208
238
  Push the object onto the end of the array. Works just like push() but it
209
239
  is KVO-compliant.
@@ -838,167 +868,36 @@ SC.Array = /** @scope SC.Array.prototype */{
838
868
 
839
869
  } ;
840
870
 
841
- // Add SC.Array to the built-in array before we add SC.Enumerable to SC.Array
842
- // since built-in Array's are already enumerable.
843
- SC.mixin(Array.prototype, SC.Array) ;
844
- SC.Array = SC.mixin({}, SC.Enumerable, SC.Array) ;
845
-
846
- // Add any extra methods to SC.Array that are native to the built-in Array.
847
871
  /**
848
- Returns a new array that is a slice of the receiver. This implementation
849
- uses the observable array methods to retrieve the objects for the new
850
- slice.
851
-
852
- If you don't pass in beginIndex and endIndex, it will act as a copy of the
853
- array.
854
-
855
- @param beginIndex {Integer} (Optional) index to begin slicing from.
856
- @param endIndex {Integer} (Optional) index to end the slice at.
857
- @returns {Array} New array with specified slice
858
- */
859
- SC.Array.slice = function(beginIndex, endIndex) {
860
- var ret = [];
861
- var length = this.get('length') ;
862
- if (SC.none(beginIndex)) beginIndex = 0 ;
863
- if (SC.none(endIndex) || (endIndex > length)) endIndex = length ;
864
- while(beginIndex < endIndex) ret[ret.length] = this.objectAt(beginIndex++) ;
865
- return ret ;
866
- } ;
872
+ @namespace
867
873
 
868
- /**
869
- Returns the index for a particular object in the index.
874
+ This module implements Observer-friendly Array-like behavior. This mixin is
875
+ picked up by the Array class as well as other controllers, etc. that want to
876
+ appear to be arrays.
870
877
 
871
- @param {Object} object the item to search for
872
- @param {NUmber} startAt optional starting location to search, default 0
873
- @returns {Number} index of -1 if not found
874
- */
875
- SC.Array.indexOf = function(object, startAt) {
876
- var idx, len = this.get('length');
878
+ Unlike SC.Enumerable, this mixin defines methods specifically for
879
+ collections that provide index-ordered access to their contents. When you
880
+ are designing code that needs to accept any kind of Array-like object, you
881
+ should use these methods instead of Array primitives because these will
882
+ properly notify observers of changes to the array.
877
883
 
878
- if (startAt === undefined) startAt = 0;
879
- else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
880
- if (startAt < 0) startAt += len;
884
+ Although these methods are efficient, they do add a layer of indirection to
885
+ your application so it is a good idea to use them only when you need the
886
+ flexibility of using both true JavaScript arrays and "virtual" arrays such
887
+ as controllers and collections.
881
888
 
882
- for(idx=startAt;idx<len;idx++) {
883
- if (this.objectAt(idx, YES) === object) return idx ;
884
- }
885
- return -1;
886
- };
889
+ You can use the methods defined in this module to access and modify array
890
+ contents in a KVO-friendly way. You can also be notified whenever the
891
+ membership if an array changes by changing the syntax of the property to
892
+ .observes('*myProperty.[]') .
887
893
 
888
- // Some browsers do not support indexOf natively. Patch if needed
889
- if (!Array.prototype.indexOf) Array.prototype.indexOf = SC.Array.indexOf;
894
+ To support SC.Array in your own class, you must override two
895
+ primitives to use it: replace() and objectAt().
890
896
 
891
- /**
892
- Returns the last index for a particular object in the index.
897
+ Note that the SC.Array mixin also incorporates the SC.Enumerable mixin. All
898
+ SC.Array-like objects are also enumerable.
893
899
 
894
- @param {Object} object the item to search for
895
- @param {NUmber} startAt optional starting location to search, default 0
896
- @returns {Number} index of -1 if not found
900
+ @extends SC.Enumerable
901
+ @since SproutCore 0.9.0
897
902
  */
898
- SC.Array.lastIndexOf = function(object, startAt) {
899
- var idx, len = this.get('length');
900
-
901
- if (startAt === undefined) startAt = len-1;
902
- else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
903
- if (startAt < 0) startAt += len;
904
-
905
- for(idx=startAt;idx>=0;idx--) {
906
- if (this.objectAt(idx) === object) return idx ;
907
- }
908
- return -1;
909
- };
910
-
911
- // Some browsers do not support lastIndexOf natively. Patch if needed
912
- if (!Array.prototype.lastIndexOf) {
913
- Array.prototype.lastIndexOf = SC.Array.lastIndexOf;
914
- }
915
-
916
- // ......................................................
917
- // ARRAY SUPPORT
918
- //
919
- // Implement the same enhancements on Array. We use specialized methods
920
- // because working with arrays are so common.
921
- (function() {
922
- SC.mixin(Array.prototype, {
923
-
924
- // primitive for array support.
925
- replace: function(idx, amt, objects) {
926
- if (this.isFrozen) { throw SC.FROZEN_ERROR ; }
927
-
928
- var args;
929
- var len = objects ? (objects.get ? objects.get('length') : objects.length) : 0;
930
-
931
- // Notify that array content is about to mutate.
932
- this.arrayContentWillChange(idx, amt, len);
933
-
934
- if (len === 0) {
935
- this.splice(idx, amt) ;
936
- } else {
937
- args = [idx, amt].concat(objects) ;
938
- this.splice.apply(this,args) ;
939
- }
940
-
941
- this.arrayContentDidChange(idx, amt, len);
942
- this.enumerableContentDidChange(idx, amt, len - amt) ;
943
- return this ;
944
- },
945
-
946
- // If you ask for an unknown property, then try to collect the value
947
- // from member items.
948
- unknownProperty: function(key, value) {
949
- var ret = this.reducedProperty(key, value) ;
950
- if ((value !== undefined) && ret === undefined) {
951
- ret = this[key] = value;
952
- }
953
- return ret ;
954
- }
955
-
956
- });
957
-
958
- var indexOf = Array.prototype.indexOf;
959
- if (!indexOf || (indexOf === SC.Array.indexOf)) {
960
- /**
961
- Returns the index for a particular object in the index.
962
-
963
- @param {Object} object the item to search for
964
- @param {NUmber} startAt optional starting location to search, default 0
965
- @returns {Number} index of -1 if not found
966
- */
967
- Array.prototype.indexOf = function(object, startAt) {
968
- var idx, len = this.length;
969
-
970
- if (startAt === undefined) startAt = 0;
971
- else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
972
- if (startAt < 0) startAt += len;
973
-
974
- for(idx=startAt;idx<len;idx++) {
975
- if (this[idx] === object) return idx ;
976
- }
977
- return -1;
978
- } ;
979
- }
980
-
981
- var lastIndexOf = Array.prototype.lastIndexOf ;
982
- if (!lastIndexOf || (lastIndexOf === SC.Array.lastIndexOf)) {
983
- /**
984
- Returns the last index for a particular object in the index.
985
-
986
- @param {Object} object the item to search for
987
- @param {NUmber} startAt optional starting location to search, default 0
988
- @returns {Number} index of -1 if not found
989
- */
990
- Array.prototype.lastIndexOf = function(object, startAt) {
991
- var idx, len = this.length;
992
-
993
- if (startAt === undefined) startAt = len-1;
994
- else startAt = (startAt < 0) ? Math.ceil(startAt) : Math.floor(startAt);
995
- if (startAt < 0) startAt += len;
996
-
997
- for(idx=startAt;idx>=0;idx--) {
998
- if (this[idx] === object) return idx ;
999
- }
1000
- return -1;
1001
- };
1002
- }
1003
-
1004
- })();
903
+ SC.Array = SC.mixin({}, SC.Enumerable, SC.CoreArray);