├── .editorconfig ├── .gitattributes ├── .gitignore ├── .jshintrc ├── .npmignore ├── .travis.yml ├── .umd ├── README.md ├── app ├── angular-bootstrap-tour.js ├── tour_config_provider.js ├── tour_controller.js ├── tour_directive.js ├── tour_helpers.js └── tour_step_directive.js ├── bower.json ├── demo ├── angular-bootstrap-tour.js ├── app.js ├── bootstrap-cerulean.css ├── bootswatch.css ├── bootswatch.js ├── index.html └── views │ ├── docs.html │ └── other.html ├── dist ├── angular-bootstrap-tour.js └── angular-bootstrap-tour.min.js ├── gruntfile.js ├── karma.conf.js ├── package.json └── test └── spec └── angular-bootstrap-tour.spec.js /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = space 6 | indent_size = 4 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | 12 | [*.md] 13 | trim_trailing_whitespace = false 14 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # package managers # 2 | #################### 3 | node_modules/ 4 | npm-debug.log 5 | bower_components/ 6 | 7 | # generated files # 8 | ###################### 9 | coverage/ 10 | .idea/ 11 | .DS_Store 12 | .DS_Store? 13 | ._* 14 | .Trashes 15 | Icon? 16 | ehthumbs.db 17 | Thumbs.db 18 | .tmp -------------------------------------------------------------------------------- /.jshintrc: -------------------------------------------------------------------------------- 1 | { 2 | "node": true, 3 | "browser": true, 4 | "esnext": true, 5 | "bitwise": false, 6 | "camelcase": true, 7 | "curly": true, 8 | "eqeqeq": true, 9 | "immed": true, 10 | "indent": 2, 11 | "latedef": true, 12 | "newcap": true, 13 | "noarg": true, 14 | "quotmark": "single", 15 | "regexp": true, 16 | "undef": true, 17 | "strict": false, 18 | "trailing": true, 19 | "smarttabs": true, 20 | "validthis": true, 21 | "white": true, 22 | "globals":{ 23 | "describe": false, 24 | "xdescribe": false, 25 | "it": false, 26 | "xit": false, 27 | "beforeEach": false, 28 | "afterEach": false, 29 | "expect": false, 30 | "spyOn": false, 31 | "define": false, 32 | 33 | "angular": false/*, 34 | "Tour": false*/ 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | npm-debug.log 3 | bower_components/ 4 | coverage/ 5 | .idea/ 6 | .DS_Store 7 | .DS_Store? 8 | ._* 9 | .Trashes 10 | Icon? 11 | ehthumbs.db 12 | Thumbs.db 13 | .tmp -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | 3 | node_js: 4 | - '0.10' 5 | 6 | before_script: 7 | #- npm install -g codeclimate-test-reporter 8 | 9 | after_script: 10 | #TODO: enable publishing code coverage reports 11 | #- codeclimate < test/coverage/**/lcov.info 12 | 13 | notifications: 14 | # publish build status to IRC channel: #angular-bootstrap-tour 15 | irc: 16 | channels: 17 | - chat.freenode.net#angular-bootstrap-tour 18 | on_success: always 19 | on_failure: always 20 | template: 21 | - '%{repository}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}' 22 | - 'Change view : %{compare_url}' 23 | - 'Build details : %{build_url}' 24 | #TODO: enable publishing build status to gitter.im 25 | # publish build status to gitter chat room: https://gitter.im/benmarch/angular-bootstrap-tour 26 | #webhooks: 27 | # urls: 28 | # - [REPLACE WITH YOUR WEBHOOK URL; https://webhooks.gitter.im/e/XXXXXXXXXXXXXXXX] 29 | # on_success: always 30 | # on_failure: always 31 | # on_start: false 32 | 33 | env: 34 | #- CODECLIMATE_REPO_TOKEN=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX -------------------------------------------------------------------------------- /.umd: -------------------------------------------------------------------------------- 1 | (function (window, factory) { 2 | 'use strict'; 3 | if (typeof define === 'function' && define.amd) { 4 | // AMD 5 | define([], factory); 6 | } else if (typeof exports === 'object') { 7 | // Node.js 8 | module.exports = factory(); 9 | } else { 10 | // Browser 11 | window.angularBootstrapTour = factory(); 12 | } 13 | }(this, function factory() { 14 | // public API 15 | return $1; 16 | })); -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # angular-bootstrap-tour 2 | [![Bower Version][bower-image]][bower-url] 3 | 4 | ## jQuery-free version now available! 5 | 6 | I have written a version of this plugin that uses Angular UI Bootstrap instead of Twitter Bootstrap and jQuery. It is 7 | now available at [angular-ui-tour](https://github.com/benmarch/angular-ui-tour). Try it out! 8 | 9 | ## About 10 | 11 | This is a simple Angular wrapper around [Bootstrap Tour](http://www.bootstraptour.com). 12 | Simply add the "tour" directive anywhere, and add the "tour-step" directive to any element within "tour" that needs a tip. 13 | 14 | All [options](http://bootstraptour.com/api/) are available by adding the corresponding attributes to the directive element. 15 | 16 | There is also a "skip" option that if evaluates to true, will skip over the step. 17 | 18 | This repository was scaffolded with [generator-microjs](https://github.com/daniellmb/generator-microjs). 19 | 20 | ## Getting Started 21 | Get the package: 22 | 23 | bower install angular-bootstrap-tour 24 | 25 | Add the script tags: 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | And the Bootstrap Tour CSS (or create your own): 34 | 35 | 36 | 37 | Then add the module to your app: 38 | 39 | angular.module('myApp', ['bm.bsTour']); 40 | 41 | ## Configuration 42 | 43 | The TourConfigProvider allows you to set a couple options: 44 | - `prefixOptions` {boolean, default: false} if set to true will require directive options to be prefixed to avoid conflicts 45 | - `prefix` {string, default: 'bsTour'} the prefix to use if `prefixOptions` is set to `true` 46 | 47 | Use `TourConfigProvider.set(