upjs-rails 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -1
- data/Gemfile +8 -0
- data/Gemfile.lock +42 -0
- data/{LICENSE.txt → LICENSE} +1 -1
- data/Rakefile +38 -0
- data/dist/up.css +70 -0
- data/dist/up.js +2552 -0
- data/dist/up.min.css +1 -0
- data/dist/up.min.js +1 -0
- data/doc/theme/Gruntfile.js +25 -0
- data/doc/theme/README.md +29 -0
- data/doc/theme/api/.keep +0 -0
- data/doc/theme/assets/css/external-small.png +0 -0
- data/doc/theme/assets/css/logo.png +0 -0
- data/doc/theme/assets/css/main.css +859 -0
- data/doc/theme/assets/css/main.less +897 -0
- data/doc/theme/assets/favicon.png +0 -0
- data/doc/theme/assets/img/bgscreen.png +0 -0
- data/doc/theme/assets/img/spinner.gif +0 -0
- data/doc/theme/assets/index.html +10 -0
- data/doc/theme/assets/js/api-filter.js +52 -0
- data/doc/theme/assets/js/api-list.js +251 -0
- data/doc/theme/assets/js/api-search.js +98 -0
- data/doc/theme/assets/js/apidocs.js +369 -0
- data/doc/theme/assets/js/yui-prettify.js +17 -0
- data/doc/theme/assets/vendor/prettify/CHANGES.html +130 -0
- data/doc/theme/assets/vendor/prettify/COPYING +202 -0
- data/doc/theme/assets/vendor/prettify/README.html +203 -0
- data/doc/theme/assets/vendor/prettify/prettify-min.css +1 -0
- data/doc/theme/assets/vendor/prettify/prettify-min.js +1 -0
- data/doc/theme/layouts/main.handlebars +54 -0
- data/doc/theme/layouts/xhr.handlebars +7 -0
- data/doc/theme/package.json +53 -0
- data/doc/theme/partials/attrs.handlebars +141 -0
- data/doc/theme/partials/classes.handlebars +210 -0
- data/doc/theme/partials/events.handlebars +145 -0
- data/doc/theme/partials/exampleurl.handlebars +8 -0
- data/doc/theme/partials/files.handlebars +7 -0
- data/doc/theme/partials/index.handlebars +18 -0
- data/doc/theme/partials/method.handlebars +201 -0
- data/doc/theme/partials/module.handlebars +92 -0
- data/doc/theme/partials/options.handlebars +23 -0
- data/doc/theme/partials/props.handlebars +128 -0
- data/doc/theme/partials/sidebar.handlebars +27 -0
- data/doc/theme/theme.json +4 -0
- data/doc/yuidoc-helpers.js +0 -0
- data/doc/yuidoc.json +15 -0
- data/lib/assets/javascripts/up/browser.js.coffee +11 -0
- data/lib/assets/javascripts/up/bus.js.coffee +37 -9
- data/lib/assets/javascripts/up/flow.js.coffee +131 -58
- data/lib/assets/javascripts/up/form.js.coffee +70 -35
- data/lib/assets/javascripts/up/history.js.coffee +31 -9
- data/lib/assets/javascripts/up/link.js.coffee +122 -27
- data/lib/assets/javascripts/up/magic.js.coffee +87 -21
- data/lib/assets/javascripts/up/marker.js.coffee +37 -0
- data/lib/assets/javascripts/up/modal.js.coffee +183 -42
- data/lib/assets/javascripts/up/motion.js.coffee +65 -43
- data/lib/assets/javascripts/up/navigation.js.coffee +29 -11
- data/lib/assets/javascripts/up/popup.js.coffee +104 -29
- data/lib/assets/javascripts/up/tooltip.js.coffee +93 -0
- data/lib/assets/javascripts/up/util.js.coffee +139 -14
- data/lib/assets/javascripts/up.js.coffee +19 -0
- data/lib/assets/stylesheets/up/close.css.sass +2 -0
- data/lib/assets/stylesheets/up/modal.css.sass +23 -26
- data/lib/assets/stylesheets/up/popup.css.sass +4 -0
- data/lib/assets/stylesheets/up/tooltip.css.sass +17 -0
- data/lib/assets/stylesheets/{up/index.css → up.css} +0 -0
- data/lib/upjs/rails/version.rb +1 -1
- data/spec_app/Bowerfile +3 -0
- data/spec_app/Gemfile +6 -0
- data/spec_app/Gemfile.lock +11 -1
- data/spec_app/app/assets/javascripts/application.js +3 -0
- data/spec_app/config/initializers/bower_rails.rb +16 -0
- data/spec_app/config/routes.rb +1 -0
- data/spec_app/spec/javascripts/helpers/index.js.coffee +1 -0
- data/spec_app/spec/javascripts/helpers/reset_path.js.coffee +7 -0
- data/spec_app/spec/javascripts/helpers/reset_up.js.coffee +4 -0
- data/spec_app/spec/javascripts/support/jasmine.yml +50 -0
- data/spec_app/spec/javascripts/up/flow_spec.js.coffee +75 -0
- data/spec_app/spec/javascripts/up/marker_spec.js.coffee +14 -0
- data/spec_app/spec/javascripts/up/navigation_spec.js.coffee +27 -0
- data/spec_app/spec/javascripts/up/util_spec.js.coffee +27 -0
- data/spec_app/vendor/assets/.bowerrc +3 -0
- data/spec_app/vendor/assets/bower.json +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.bower.json +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.gitignore +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.gitmodules +3 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.jshintrc +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.npmignore +21 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.rspec +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine/.travis.yml +51 -0
- data/spec_app/vendor/assets/bower_components/jasmine/CONTRIBUTING.md +121 -0
- data/spec_app/vendor/assets/bower_components/jasmine/GOALS_2.0.md +64 -0
- data/spec_app/vendor/assets/bower_components/jasmine/Gemfile +12 -0
- data/spec_app/vendor/assets/bower_components/jasmine/Gruntfile.js +53 -0
- data/spec_app/vendor/assets/bower_components/jasmine/MANIFEST.in +5 -0
- data/spec_app/vendor/assets/bower_components/jasmine/MIT.LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine/README.md +64 -0
- data/spec_app/vendor/assets/bower_components/jasmine/RELEASE.md +63 -0
- data/spec_app/vendor/assets/bower_components/jasmine/Rakefile +18 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.0.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.1.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.2.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.1.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.0.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.1.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.2.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.3.zip +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compass.js +10 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compress.js +66 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/concat.js +61 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/jshint.js +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/build_standalone.js +31 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/version.js +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/SpecRunner.html.jst +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/licenseBanner.js.jst +22 -0
- data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/version.rb.jst +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/__init__.py +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.png +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.svg +102 -0
- data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine_favicon.png +0 -0
- data/spec_app/vendor/assets/bower_components/jasmine/jasmine-core.gemspec +23 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/console/console.js +166 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/__init__.py +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/boot.js +120 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/node_boot.js +19 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot.js +142 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/core.py +60 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/PlayerSpec.js +60 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/SpecHelper.js +15 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/src/Player.js +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/src/Song.js +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/PlayerSpec.js +58 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/SpecHelper.js +15 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Player.js +22 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Song.js +7 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine-html.js +390 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.css +61 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.js +2593 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/json2.js +478 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/node_boot.js +41 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/version.rb +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.js +39 -0
- data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.rb +53 -0
- data/spec_app/vendor/assets/bower_components/jasmine/package.json +23 -0
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.1.md +70 -0
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.2.md +25 -0
- data/spec_app/vendor/assets/bower_components/jasmine/release_notes/20.md +179 -0
- data/spec_app/vendor/assets/bower_components/jasmine/requirements.txt +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine/setup.py +47 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/console/ConsoleReporterSpec.js +239 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/AnySpec.js +46 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/CallTrackerSpec.js +105 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ClockSpec.js +445 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/DelayedFunctionSchedulerSpec.js +246 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/EnvSpec.js +85 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionFormatterSpec.js +63 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionsSpec.js +68 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationResultSpec.js +61 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationSpec.js +427 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/JsApiReporterSpec.js +214 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/MockDateSpec.js +199 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ObjectContainingSpec.js +70 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/PrettyPrintSpec.js +156 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/QueueRunnerSpec.js +271 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ReportDispatcherSpec.js +40 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpecSpec.js +260 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpySpec.js +67 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpyStrategySpec.js +111 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SuiteSpec.js +216 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/TimerSpec.js +31 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/UtilSpec.js +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/CustomMatchersSpec.js +149 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/EnvSpec.js +506 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/SpecRunningSpec.js +306 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/matchersUtilSpec.js +239 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeCloseToSpec.js +51 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeDefinedSpec.js +18 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeFalsySpec.js +38 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeGreaterThanSpec.js +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeLessThanSpec.js +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNaNSpec.js +37 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNullSpec.js +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeSpec.js +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeTruthySpec.js +38 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeUndefinedSpec.js +18 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toContainSpec.js +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toEqualSpec.js +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledSpec.js +47 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledWithSpec.js +66 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toMatchSpec.js +34 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowErrorSpec.js +280 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowSpec.js +99 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/BrowserFlags.js +23 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/defineJasmineUnderTest.js +7 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/nodeDefineJasmineUnderTest.js +33 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlReporterSpec.js +616 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlSpecFilterSpec.js +18 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/MatchersHtmlSpec.js +37 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/PrettyPrintHtmlSpec.js +15 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/QueryStringSpec.js +43 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/html/ResultsNodeSpec.js +62 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/javascripts/support/jasmine_selenium_runner.yml +16 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/large_object_test.js +36 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/performance_test.js +10 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.json +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.yml +9 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.json +10 -0
- data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.yml +25 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/console/ConsoleReporter.js +131 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/console/requireConsole.js +12 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Any.js +36 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/CallTracker.js +50 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Clock.js +113 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/DelayedFunctionScheduler.js +145 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Env.js +341 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExceptionFormatter.js +29 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Expectation.js +107 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExpectationResult.js +45 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/JsApiReporter.js +73 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/MockDate.js +81 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ObjectContaining.js +34 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/PrettyPrinter.js +137 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/QueueRunner.js +92 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/ReportDispatcher.js +35 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Spec.js +126 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/SpyStrategy.js +51 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Suite.js +92 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/Timer.js +22 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/base.js +102 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/matchersUtil.js +181 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/requireMatchers.js +29 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBe.js +13 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeCloseTo.js +18 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeDefined.js +13 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeFalsy.js +13 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeGreaterThan.js +15 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeLessThan.js +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNaN.js +22 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNull.js +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeTruthy.js +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeUndefined.js +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toContain.js +16 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toEqual.js +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalled.js +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalledWith.js +33 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toMatch.js +16 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrow.js +46 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrowError.js +156 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireCore.js +39 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireInterface.js +59 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/core/util.js +44 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlReporter.js +280 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlSpecFilter.js +12 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/QueryString.js +47 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/ResultsNode.js +19 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/_HTMLReporter.scss +355 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/jasmine.scss +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/html/requireHtml.js +6 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/example_project_jasmine_tags.html.erb +3 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.js.erb +7 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.rb.erb +6 -0
- data/spec_app/vendor/assets/bower_components/jasmine/src/version.js +3 -0
- data/spec_app/vendor/assets/bower_components/jasmine/travis-core-script.sh +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine/travis-docs-script.sh +5 -0
- data/spec_app/vendor/assets/bower_components/jasmine/travis-node-script.sh +6 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/.bower.json +45 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/Gruntfile.js +63 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/MIT.LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/README.markdown +216 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/bower.json +36 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/lib/mock-ajax.js +542 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/package.json +21 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/boot.js +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/fakeRequest.js +262 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/mockAjax.js +45 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/paramParser.js +56 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestStub.js +42 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestTracker.js +51 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requireAjax.js +44 -0
- data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/stubTracker.js +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.bower.json +27 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.gitignore +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/.npmignore +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/LICENSE.txt +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/README.md +118 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/bower.json +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.js +433 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.min.js +5 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/basic-usage-spec.coffee +14 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/invariants.coffee +17 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/spec-within-a-spec.coffee +24 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/tmp-files.coffee +8 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine1-testem-config.json +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine2-testem-config.json +11 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.11.0.js +10337 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.8.3.js +9472 -0
- data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-2.1.0.js +9111 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/.bower.json +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/CONTRIBUTING.md +28 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/Gruntfile.js +33 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/MIT.LICENSE +20 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/README.md +362 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/bower.json +16 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/lib/jasmine-jquery.js +813 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/package.json +26 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript_block.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_click.js +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_hover.js +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/json/jasmine_json_test.json +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture.html +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture_style.css +1 -0
- data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/suites/jasmine-jquery-spec.js +1782 -0
- data/spec_app/vendor/assets/bower_components/jquery/.bower.json +37 -0
- data/spec_app/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +21 -0
- data/spec_app/vendor/assets/bower_components/jquery/bower.json +27 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.js +9205 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.map +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +89 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/load.js +75 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +28 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/script.js +64 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax/xhr.js +136 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/ajax.js +786 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/attr.js +141 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/classes.js +158 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/prop.js +94 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/support.js +35 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes/val.js +161 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/attributes.js +11 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/callbacks.js +205 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/access.js +60 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/init.js +123 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/parseHTML.js +39 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/ready.js +97 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/core.js +497 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +22 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/curCSS.js +57 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +70 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/support.js +96 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/swap.js +28 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +12 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/css.js +450 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/Data.js +181 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/accepts.js +20 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_user.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/data.js +178 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/deferred.js +149 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/deprecated.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/dimensions.js +50 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects/Tween.js +114 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/effects.js +648 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/ajax.js +13 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/alias.js +39 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event/support.js +9 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/event.js +868 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/exports/amd.js +24 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/exports/global.js +32 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/intro.js +44 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/jquery.js +37 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +18 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/support.js +32 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/manipulation.js +580 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/offset.js +207 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/outro.js +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/queue/delay.js +22 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/queue.js +142 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector-native.js +172 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector-sizzle.js +14 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/selector.js +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/serialize.js +111 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +2067 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +100 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +6 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/traversing.js +199 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/arr.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/class2type.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/concat.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/hasOwn.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/indexOf.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/pnum.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/push.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/slice.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/strundefined.js +3 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/support.js +4 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/var/toString.js +5 -0
- data/spec_app/vendor/assets/bower_components/jquery/src/wrap.js +79 -0
- metadata +386 -6
- data/lib/assets/javascripts/up/index.js +0 -13
- data/spec_app/app/assets/stylesheets/blocks/field_with_errors.css.sass +0 -5
@@ -1,3 +1,15 @@
|
|
1
|
+
###*
|
2
|
+
Utility functions
|
3
|
+
=================
|
4
|
+
|
5
|
+
All methods in this module are for internal use by the Up.js framework
|
6
|
+
and will frequently change between releases.
|
7
|
+
|
8
|
+
If you use them in your own code, you will get hurt.
|
9
|
+
|
10
|
+
@protected
|
11
|
+
@class up.util
|
12
|
+
###
|
1
13
|
up.util = (->
|
2
14
|
|
3
15
|
get = (url, options) ->
|
@@ -11,10 +23,26 @@ up.util = (->
|
|
11
23
|
"X-Up-Selector": options.selector
|
12
24
|
}
|
13
25
|
$.ajax options
|
14
|
-
|
26
|
+
|
27
|
+
###*
|
28
|
+
@method up.util.isStandardPort
|
29
|
+
@private
|
30
|
+
###
|
15
31
|
isStandardPort = (protocol, port) ->
|
16
|
-
(port == 80 && protocol == 'http') || (port == 443 && protocol == 'https')
|
32
|
+
((port == "" || port == "80") && protocol == 'http:') || (port == "443" && protocol == 'https:')
|
17
33
|
|
34
|
+
|
35
|
+
###*
|
36
|
+
Normalizes URLs, relative paths and absolute paths to a full URL
|
37
|
+
that can be checked for equality with other normalized URL.
|
38
|
+
|
39
|
+
By default hashes are ignored, search queries are included.
|
40
|
+
|
41
|
+
@method up.util.normalizeUrl
|
42
|
+
@param {Boolean} [options.hash=false]
|
43
|
+
@param {Boolean} [options.search=true]
|
44
|
+
@protected
|
45
|
+
###
|
18
46
|
normalizeUrl = (urlOrAnchor, options) ->
|
19
47
|
anchor = if isString(urlOrAnchor)
|
20
48
|
$('<a>').attr(href: urlOrAnchor).get(0)
|
@@ -23,6 +51,7 @@ up.util = (->
|
|
23
51
|
normalized = anchor.protocol + "//" + anchor.hostname
|
24
52
|
normalized += ":#{anchor.port}" unless isStandardPort(anchor.protocol, anchor.port)
|
25
53
|
normalized += anchor.pathname
|
54
|
+
normalized += anchor.hash if options?.hash == true
|
26
55
|
normalized += anchor.search unless options?.search == false
|
27
56
|
normalized
|
28
57
|
|
@@ -120,10 +149,12 @@ up.util = (->
|
|
120
149
|
|
121
150
|
isString = (object) ->
|
122
151
|
typeof(object) == 'string'
|
152
|
+
|
153
|
+
isHash = (object) ->
|
154
|
+
typeof(object) == 'object' && !!object
|
123
155
|
|
124
156
|
isObject = (object) ->
|
125
|
-
|
126
|
-
type == 'function' || (type == 'object' && !!object)
|
157
|
+
isHash(object) || (typeof object == 'function')
|
127
158
|
|
128
159
|
isJQuery = (object) ->
|
129
160
|
object instanceof jQuery
|
@@ -134,8 +165,14 @@ up.util = (->
|
|
134
165
|
ifGiven = (object) ->
|
135
166
|
object if isGiven(object)
|
136
167
|
|
168
|
+
# https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray
|
169
|
+
isArray = Array.isArray
|
170
|
+
|
137
171
|
copy = (object) ->
|
138
|
-
|
172
|
+
if isArray(object)
|
173
|
+
object.slice()
|
174
|
+
else
|
175
|
+
extend({}, object)
|
139
176
|
|
140
177
|
unwrap = (object) ->
|
141
178
|
if isJQuery(object)
|
@@ -158,6 +195,24 @@ up.util = (->
|
|
158
195
|
merged[key] = options(value, defaultValue)
|
159
196
|
merged
|
160
197
|
|
198
|
+
###*
|
199
|
+
Returns the first argument that is considered present.
|
200
|
+
If an argument is a function, it is called and the value is checked for presence.
|
201
|
+
|
202
|
+
This function is useful when you have multiple option sources and the value can be boolean.
|
203
|
+
In that case you cannot change the sources with a `||` operator
|
204
|
+
(since that doesn't short-circuit at `false`).
|
205
|
+
|
206
|
+
@method up.util.option
|
207
|
+
@param {Array} args...
|
208
|
+
###
|
209
|
+
option = (args...) ->
|
210
|
+
detect(args, (arg) ->
|
211
|
+
value = arg
|
212
|
+
value = value() if isFunction(value)
|
213
|
+
isPresent(value)
|
214
|
+
)
|
215
|
+
|
161
216
|
detect = (array, tester) ->
|
162
217
|
match = null
|
163
218
|
array.every (element) ->
|
@@ -204,23 +259,45 @@ up.util = (->
|
|
204
259
|
else
|
205
260
|
memo
|
206
261
|
|
207
|
-
|
208
|
-
|
262
|
+
###*
|
263
|
+
Animates the given element's CSS properties using CSS transitions.
|
264
|
+
|
265
|
+
@method up.util.cssAnimate
|
266
|
+
@param {Element|jQuery|String} elementOrSelector
|
267
|
+
The element to animate.
|
268
|
+
@param {Object} lastFrame
|
269
|
+
The CSS properties that should be transitioned to.
|
270
|
+
@param {Number} [opts.duration=300]
|
271
|
+
The duration of the animation, in milliseconds.
|
272
|
+
@param {Number} [opts.delay=0]
|
273
|
+
The delay before the animation starts, in milliseconds.
|
274
|
+
@param {String} [opts.easing='ease']
|
275
|
+
The timing function that controls the animation's acceleration.
|
276
|
+
See [W3C documentation](http://www.w3.org/TR/css3-transitions/#transition-timing-function)
|
277
|
+
for a list of pre-defined timing functions.
|
278
|
+
@return
|
279
|
+
A promise for the animation's end.
|
280
|
+
|
281
|
+
###
|
282
|
+
cssAnimate = (elementOrSelector, lastFrame, opts) ->
|
283
|
+
opts = options(opts,
|
284
|
+
duration: 300,
|
285
|
+
delay: 0,
|
286
|
+
easing: 'ease'
|
287
|
+
)
|
288
|
+
$element = $(elementOrSelector)
|
209
289
|
deferred = $.Deferred()
|
210
|
-
# This should really be "one" instead of "on".
|
211
|
-
# We only want this event to be called once, then clean up after ourselves.
|
212
|
-
# $element.one(up.browser.transitionEndEvent(), -> deferred.resolve())
|
213
290
|
transition =
|
214
291
|
'transition-property': Object.keys(lastFrame).join(', ')
|
215
292
|
'transition-duration': "#{opts.duration}ms"
|
293
|
+
'transition-delay': "#{opts.delay}ms"
|
216
294
|
'transition-timing-function': opts.easing
|
217
|
-
console.log("CSS transition with", transition)
|
218
295
|
withoutTransition = temporaryCss($element, transition)
|
219
296
|
$element.css(lastFrame)
|
220
297
|
deferred.then(withoutTransition)
|
221
|
-
setTimeout((-> deferred.resolve()), opts.duration)
|
298
|
+
setTimeout((-> deferred.resolve()), opts.duration + opts.delay)
|
222
299
|
deferred.promise()
|
223
|
-
|
300
|
+
|
224
301
|
measure = ($element, options) ->
|
225
302
|
offset = $element.offset()
|
226
303
|
box =
|
@@ -233,19 +310,56 @@ up.util = (->
|
|
233
310
|
box.right = viewport.width - (box.left + box.width)
|
234
311
|
box.bottom = viewport.height - (box.top + box.height)
|
235
312
|
box
|
313
|
+
|
314
|
+
copyAttributes = ($source, $target) ->
|
315
|
+
for attr in $source.get(0).attributes
|
316
|
+
if attr.specified
|
317
|
+
$target.attr(attr.name, attr.value)
|
236
318
|
|
237
319
|
prependGhost = ($element) ->
|
238
320
|
dimensions = measure($element)
|
239
321
|
$ghost = $element.clone()
|
322
|
+
$ghost.find('script').remove()
|
240
323
|
$ghost.css
|
241
324
|
right: ''
|
242
325
|
bottom: ''
|
243
326
|
margin: 0
|
244
|
-
position: '
|
327
|
+
position: 'absolute'
|
245
328
|
$ghost.css(dimensions)
|
246
329
|
$ghost.addClass('up-ghost')
|
247
330
|
$ghost.prependTo(document.body)
|
248
331
|
|
332
|
+
findWithSelf = ($element, selector) ->
|
333
|
+
$element.find(selector).addBack(selector)
|
334
|
+
|
335
|
+
escapePressed = (event) ->
|
336
|
+
event.keyCode == 27
|
337
|
+
|
338
|
+
contains = (array, element) ->
|
339
|
+
array.indexOf(element) >= 0
|
340
|
+
|
341
|
+
castsToTrue = (object) ->
|
342
|
+
String(object) == "true"
|
343
|
+
|
344
|
+
castsToFalse = (object) ->
|
345
|
+
String(object) == "false"
|
346
|
+
|
347
|
+
# memoArray = ->
|
348
|
+
# array = []
|
349
|
+
# defaults = []
|
350
|
+
# array.snapshot = ->
|
351
|
+
# defaults = copy(array)
|
352
|
+
# array.reset = (destroyer) ->
|
353
|
+
# if destroyer
|
354
|
+
# for element in array
|
355
|
+
# unless contains(defaults, element)
|
356
|
+
# destroyer()
|
357
|
+
# replaceInPlace(array, defaults)
|
358
|
+
# array
|
359
|
+
#
|
360
|
+
# replaceInPlace = (array, replacement) ->
|
361
|
+
# array.splice(0, array.length, replacement...)
|
362
|
+
|
249
363
|
presentAttr: presentAttr
|
250
364
|
createElement: createElement
|
251
365
|
normalizeUrl: normalizeUrl
|
@@ -258,6 +372,7 @@ up.util = (->
|
|
258
372
|
copy: copy
|
259
373
|
merge: merge
|
260
374
|
options: options
|
375
|
+
option: option
|
261
376
|
error: error
|
262
377
|
each: each
|
263
378
|
detect: detect
|
@@ -276,6 +391,7 @@ up.util = (->
|
|
276
391
|
isString: isString
|
277
392
|
isJQuery: isJQuery
|
278
393
|
isPromise: isPromise
|
394
|
+
isHash: isHash
|
279
395
|
ifGiven: ifGiven
|
280
396
|
unwrap: unwrap
|
281
397
|
nextFrame: nextFrame
|
@@ -283,5 +399,14 @@ up.util = (->
|
|
283
399
|
temporaryCss: temporaryCss
|
284
400
|
cssAnimate: cssAnimate
|
285
401
|
prependGhost: prependGhost
|
402
|
+
escapePressed: escapePressed
|
403
|
+
copyAttributes: copyAttributes
|
404
|
+
findWithSelf: findWithSelf
|
405
|
+
contains: contains
|
406
|
+
isArray: isArray
|
407
|
+
castsToTrue: castsToTrue
|
408
|
+
castsToFalse: castsToFalse
|
409
|
+
# memoArray: memoArray
|
410
|
+
# replaceInPlace: replaceInPlace
|
286
411
|
|
287
412
|
)()
|
@@ -0,0 +1,19 @@
|
|
1
|
+
#= require up/module
|
2
|
+
#= require up/util
|
3
|
+
#= require up/browser
|
4
|
+
#= require up/bus
|
5
|
+
#= require up/flow
|
6
|
+
#= require up/magic
|
7
|
+
#= require up/history
|
8
|
+
#= require up/motion
|
9
|
+
#= require up/link
|
10
|
+
#= require up/form
|
11
|
+
#= require up/popup
|
12
|
+
#= require up/modal
|
13
|
+
#= require up/tooltip
|
14
|
+
#= require up/navigation
|
15
|
+
#= require up/marker
|
16
|
+
#= require_self
|
17
|
+
|
18
|
+
up.bus.emit('framework:ready')
|
19
|
+
$(document).on 'ready', -> up.bus.emit('app:ready')
|
@@ -1,49 +1,46 @@
|
|
1
1
|
$stratum: 10000
|
2
|
-
|
3
|
-
|
2
|
+
//$width: 700px
|
3
|
+
//$height: 450px
|
4
|
+
$close-height: 24px
|
5
|
+
$close-width: 36px
|
4
6
|
|
5
|
-
.up-modal
|
7
|
+
.up-modal
|
6
8
|
position: fixed
|
7
9
|
top: 0
|
8
10
|
left: 0
|
9
11
|
bottom: 0
|
10
12
|
right: 0
|
11
|
-
background-color: rgba(90, 90, 90, 0.7)
|
12
13
|
z-index: $stratum
|
14
|
+
background-color: rgba(90, 90, 90, 0.4)
|
13
15
|
|
14
16
|
.up-modal-dialog
|
15
|
-
position:
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
left: 0
|
20
|
-
bottom: 0
|
21
|
-
right: 0
|
22
|
-
width: $width
|
23
|
-
height: $height
|
17
|
+
position: absolute
|
18
|
+
top: 50%
|
19
|
+
left: 50%
|
20
|
+
transform: translate(-50%, -50%)
|
24
21
|
max-width: 100%
|
25
22
|
max-height: 100%
|
26
23
|
background-color: #fff
|
27
|
-
box-shadow: 0 0 10px
|
24
|
+
box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.3)
|
25
|
+
// In case someone sets padding on the dialog box,
|
26
|
+
// the width and height attributes set by up.modal
|
27
|
+
// should be honored exactly.
|
28
|
+
box-sizing: border-box
|
28
29
|
|
29
30
|
.up-modal-close
|
30
31
|
position: absolute
|
31
|
-
|
32
|
-
|
33
|
-
|
32
|
+
right: 0
|
33
|
+
top: 0
|
34
|
+
width: $close-width
|
35
|
+
text-align: center
|
36
|
+
line-height: $close-height
|
37
|
+
height: $close-height
|
38
|
+
background-color: #999
|
34
39
|
color: #fff
|
35
40
|
font-weight: bold
|
36
41
|
text-transform: uppercase
|
37
|
-
padding: 5px 15px
|
38
|
-
z-index: $stratum + 2
|
39
42
|
cursor: pointer
|
40
|
-
|
41
|
-
|
42
|
-
.up-modal-close-label
|
43
|
-
|
44
|
-
.up-modal-close-key
|
45
|
-
margin-left: 3px
|
46
|
-
opacity: 0.5
|
43
|
+
transform: translateY(-100%)
|
47
44
|
|
48
45
|
.up-modal-content
|
49
46
|
overflow-x: hidden
|
@@ -0,0 +1,17 @@
|
|
1
|
+
$stratum: 30000
|
2
|
+
$distance-from-trigger: 6px
|
3
|
+
|
4
|
+
.up-tooltip
|
5
|
+
z-index: $stratum
|
6
|
+
position: fixed
|
7
|
+
background-color: rgba(30, 30, 30, 0.8)
|
8
|
+
color: white
|
9
|
+
padding: 6px 8px
|
10
|
+
box-shadow: 0 0 4px rgba(0, 0, 0, 0.2)
|
11
|
+
|
12
|
+
&[up-origin=top]
|
13
|
+
margin-top: -$distance-from-trigger
|
14
|
+
|
15
|
+
&[up-origin=bottom]
|
16
|
+
margin-bottom: -$distance-from-trigger
|
17
|
+
|
File without changes
|
data/lib/upjs/rails/version.rb
CHANGED
data/spec_app/Bowerfile
ADDED
data/spec_app/Gemfile
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
|
+
# source 'https://rails-assets.org'
|
2
3
|
|
3
4
|
gem 'rails', '4.2.0'
|
4
5
|
gem 'sqlite3'
|
@@ -9,10 +10,15 @@ gem 'coffee-rails', '~> 4.1.0'
|
|
9
10
|
gem 'therubyracer', platforms: :ruby
|
10
11
|
gem 'jquery-rails'
|
11
12
|
gem 'upjs-rails', path: '..'
|
13
|
+
gem 'bower-rails'
|
12
14
|
|
13
15
|
group :development, :test do
|
14
16
|
gem 'byebug'
|
15
17
|
gem 'web-console', '~> 2.0'
|
18
|
+
gem 'jasmine-rails'
|
19
|
+
# gem 'rails-assets-jasmine-jquery'
|
20
|
+
# gem 'rails-assets-jasmine-fixture'
|
21
|
+
# gem 'rails-assets-jasmine-ajax'
|
16
22
|
end
|
17
23
|
|
18
24
|
group :test do
|
data/spec_app/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: ..
|
3
3
|
specs:
|
4
|
-
upjs-rails (0.0
|
4
|
+
upjs-rails (0.1.0)
|
5
5
|
rails (>= 3)
|
6
6
|
|
7
7
|
GEM
|
@@ -45,6 +45,7 @@ GEM
|
|
45
45
|
arel (6.0.0)
|
46
46
|
binding_of_caller (0.7.2)
|
47
47
|
debug_inspector (>= 0.0.1)
|
48
|
+
bower-rails (0.9.2)
|
48
49
|
builder (3.2.2)
|
49
50
|
byebug (3.5.1)
|
50
51
|
columnize (~> 0.8)
|
@@ -104,6 +105,12 @@ GEM
|
|
104
105
|
hpricot (~> 0.8.6)
|
105
106
|
ruby_parser (~> 3.1.1)
|
106
107
|
i18n (0.7.0)
|
108
|
+
jasmine-core (2.1.3)
|
109
|
+
jasmine-rails (0.10.6)
|
110
|
+
jasmine-core (>= 1.3, < 3.0)
|
111
|
+
phantomjs
|
112
|
+
railties (>= 3.1.0)
|
113
|
+
sprockets-rails
|
107
114
|
jquery-rails (4.0.2)
|
108
115
|
rails-dom-testing (~> 1.0)
|
109
116
|
railties (>= 4.2.0)
|
@@ -121,6 +128,7 @@ GEM
|
|
121
128
|
multi_test (0.1.1)
|
122
129
|
nokogiri (1.6.5)
|
123
130
|
mini_portile (~> 0.6.0)
|
131
|
+
phantomjs (1.9.7.1)
|
124
132
|
rack (1.6.0)
|
125
133
|
rack-test (0.6.2)
|
126
134
|
rack (>= 1.0)
|
@@ -221,11 +229,13 @@ PLATFORMS
|
|
221
229
|
ruby
|
222
230
|
|
223
231
|
DEPENDENCIES
|
232
|
+
bower-rails
|
224
233
|
byebug
|
225
234
|
coffee-rails (~> 4.1.0)
|
226
235
|
cucumber-rails
|
227
236
|
database_cleaner
|
228
237
|
haml-rails
|
238
|
+
jasmine-rails
|
229
239
|
jquery-rails
|
230
240
|
rails (= 4.2.0)
|
231
241
|
rspec-rails
|
@@ -0,0 +1,16 @@
|
|
1
|
+
BowerRails.configure do |bower_rails|
|
2
|
+
# Tell bower-rails what path should be considered as root. Defaults to Dir.pwd
|
3
|
+
# bower_rails.root_path = Dir.pwd
|
4
|
+
|
5
|
+
# Invokes rake bower:install before precompilation. Defaults to false
|
6
|
+
# bower_rails.install_before_precompile = true
|
7
|
+
|
8
|
+
# Invokes rake bower:resolve before precompilation. Defaults to false
|
9
|
+
# bower_rails.resolve_before_precompile = true
|
10
|
+
|
11
|
+
# Invokes rake bower:clean before precompilation. Defaults to false
|
12
|
+
# bower_rails.clean_before_precompile = true
|
13
|
+
|
14
|
+
# Invokes rake bower:install:deployment instead rake bower:install. Defaults to false
|
15
|
+
# bower_rails.use_bower_install_deployment = true
|
16
|
+
end
|
data/spec_app/config/routes.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
#= require_tree .
|
@@ -0,0 +1,50 @@
|
|
1
|
+
# path to parent directory of src_files
|
2
|
+
# relative path from Rails.root
|
3
|
+
# defaults to app/assets/javascripts
|
4
|
+
src_dir: "app/assets/javascripts"
|
5
|
+
|
6
|
+
# path to additional directory of source file that are not part of assets pipeline and need to be included
|
7
|
+
# relative path from Rails.root
|
8
|
+
# defaults to []
|
9
|
+
# include_dir:
|
10
|
+
# - ../mobile_app/public/js
|
11
|
+
|
12
|
+
# path to parent directory of css_files
|
13
|
+
# relative path from Rails.root
|
14
|
+
# defaults to app/assets/stylesheets
|
15
|
+
css_dir: "app/assets/stylesheets"
|
16
|
+
|
17
|
+
# list of file expressions to include as source files
|
18
|
+
# relative path from src_dir
|
19
|
+
src_files:
|
20
|
+
- "application.{js.coffee,js,coffee}"
|
21
|
+
|
22
|
+
# list of file expressions to include as css files
|
23
|
+
# relative path from css_dir
|
24
|
+
css_files:
|
25
|
+
|
26
|
+
# path to parent directory of spec_files
|
27
|
+
# relative path from Rails.root
|
28
|
+
#
|
29
|
+
# Alternatively accept an array of directory to include external spec files
|
30
|
+
# spec_dir:
|
31
|
+
# - spec/javascripts
|
32
|
+
# - ../engine/spec/javascripts
|
33
|
+
#
|
34
|
+
# defaults to spec/javascripts
|
35
|
+
spec_dir: spec/javascripts
|
36
|
+
|
37
|
+
# list of file expressions to include as helpers into spec runner
|
38
|
+
# relative path from spec_dir
|
39
|
+
helpers:
|
40
|
+
- "helpers/**/*.{js.coffee,js,coffee}"
|
41
|
+
|
42
|
+
# list of file expressions to include as specs into spec runner
|
43
|
+
# relative path from spec_dir
|
44
|
+
spec_files:
|
45
|
+
- "**/*[Ss]pec.{js.coffee,js,coffee}"
|
46
|
+
|
47
|
+
# path to directory of temporary files
|
48
|
+
# (spec runner and asset cache)
|
49
|
+
# defaults to tmp/jasmine
|
50
|
+
tmp_dir: "tmp/jasmine"
|
@@ -0,0 +1,75 @@
|
|
1
|
+
describe 'up.flow', ->
|
2
|
+
|
3
|
+
describe '.replace', ->
|
4
|
+
|
5
|
+
beforeEach ->
|
6
|
+
jasmine.Ajax.install()
|
7
|
+
|
8
|
+
affix('.before').text('old-before')
|
9
|
+
affix('.middle').text('old-middle')
|
10
|
+
affix('.after').text('old-after')
|
11
|
+
|
12
|
+
@promise = up.replace('.middle', '/path')
|
13
|
+
|
14
|
+
jasmine.Ajax.requests.mostRecent().respondWith
|
15
|
+
status: 200
|
16
|
+
contentType: '/text/html'
|
17
|
+
responseText:
|
18
|
+
"""
|
19
|
+
<div class="before">new-before</div>
|
20
|
+
<div class="middle">new-middle</div>
|
21
|
+
<div class="after">new-after</div>
|
22
|
+
"""
|
23
|
+
|
24
|
+
it 'replaces the given selector with the same selector from a freshly fetched page', (done) ->
|
25
|
+
@promise.then ->
|
26
|
+
expect($('.before')).toHaveText('old-before')
|
27
|
+
expect($('.middle')).toHaveText('new-middle')
|
28
|
+
expect($('.after')).toHaveText('old-after')
|
29
|
+
done()
|
30
|
+
|
31
|
+
it 'should set the browser location to the given URL', (done) ->
|
32
|
+
@promise.then ->
|
33
|
+
expect(window.location.pathname).toBe('/path')
|
34
|
+
done()
|
35
|
+
|
36
|
+
it 'marks the element with the URL from which it was retrieved', (done) ->
|
37
|
+
@promise.then ->
|
38
|
+
expect($('.middle').attr('up-source')).toMatch(/\/path$/)
|
39
|
+
done()
|
40
|
+
|
41
|
+
describe '.destroy', ->
|
42
|
+
|
43
|
+
it 'removes the element with the given selector', ->
|
44
|
+
affix('.element')
|
45
|
+
up.destroy('.element')
|
46
|
+
expect($('.element')).not.toExist()
|
47
|
+
|
48
|
+
it 'calls destructors for custom elements', ->
|
49
|
+
up.awaken('.element', ($element) -> destructor)
|
50
|
+
destructor = jasmine.createSpy('destructor')
|
51
|
+
up.ready(affix('.element'))
|
52
|
+
up.destroy('.element')
|
53
|
+
expect(destructor).toHaveBeenCalled()
|
54
|
+
|
55
|
+
describe '.reload', ->
|
56
|
+
|
57
|
+
it 'reloads the given selector from the closest known source URL', (done) ->
|
58
|
+
affix('.container[up-source="/source"] .element').find('.element').text('old text')
|
59
|
+
|
60
|
+
up.reload('.element').then ->
|
61
|
+
expect($('.element')).toHaveText('new text')
|
62
|
+
done()
|
63
|
+
|
64
|
+
request = jasmine.Ajax.requests.mostRecent()
|
65
|
+
expect(request.url).toMatch(/\/source$/)
|
66
|
+
|
67
|
+
request.respondWith
|
68
|
+
status: 200
|
69
|
+
contentType: '/text/html'
|
70
|
+
responseText:
|
71
|
+
"""
|
72
|
+
<div class="container">
|
73
|
+
<div class="element">new text</div>
|
74
|
+
</div>
|
75
|
+
"""
|
@@ -0,0 +1,14 @@
|
|
1
|
+
describe 'up.marker', ->
|
2
|
+
|
3
|
+
describe '[up-marker]', ->
|
4
|
+
|
5
|
+
it 'hides empty containers', ->
|
6
|
+
$element = affix('.element[up-marker]')
|
7
|
+
up.ready($element)
|
8
|
+
expect($element).not.toBeVisible()
|
9
|
+
|
10
|
+
it 'does not hide empty containers', ->
|
11
|
+
$element = affix('.element[up-marker]').text('content')
|
12
|
+
up.ready($element)
|
13
|
+
expect($element).toBeVisible()
|
14
|
+
|
@@ -0,0 +1,27 @@
|
|
1
|
+
describe 'up.navigation', ->
|
2
|
+
|
3
|
+
it 'marks links as .up-current iff they link to the current URL', ->
|
4
|
+
spyOn(up.browser, 'url').and.returnValue('/foo')
|
5
|
+
$currentLink = up.ready(affix('a[href="/foo"]'))
|
6
|
+
$otherLink = up.ready(affix('a[href="/bar"]'))
|
7
|
+
expect($currentLink).toHaveClass('up-current')
|
8
|
+
expect($otherLink).not.toHaveClass('up-current')
|
9
|
+
|
10
|
+
it 'changes .up-current marks as the URL changes'
|
11
|
+
|
12
|
+
it 'marks clicked linked as .up-active until the request finishes', ->
|
13
|
+
$link = affix('a[href="/foo"][up-target=".main"]')
|
14
|
+
affix('.main')
|
15
|
+
jasmine.Ajax.install()
|
16
|
+
$link.click()
|
17
|
+
expect($link).toHaveClass('up-active')
|
18
|
+
jasmine.Ajax.requests.mostRecent().respondWith
|
19
|
+
status: 200
|
20
|
+
contentType: '/text/html'
|
21
|
+
responseText: '<div class="main">new-text</div>'
|
22
|
+
expect($link).not.toHaveClass('up-active')
|
23
|
+
expect($link).toHaveClass('up-current')
|
24
|
+
|
25
|
+
|
26
|
+
it 'prefers to mark an enclosing [up-follow] click area'
|
27
|
+
|