angular-swing

WebJar for angular-swing

License

License

Categories

Categories

Angular User Interface Web Frameworks
GroupId

GroupId

org.webjars.npm
ArtifactId

ArtifactId

angular-swing
Last Version

Last Version

1.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

angular-swing
WebJar for angular-swing
Project URL

Project URL

http://webjars.org
Source Code Management

Source Code Management

https://github.com/gajus/angular-swing

Download angular-swing

How to add to project

<!-- https://jarcasting.com/artifacts/org.webjars.npm/angular-swing/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>angular-swing</artifactId>
    <version>1.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/angular-swing/
implementation 'org.webjars.npm:angular-swing:1.0.0'
// https://jarcasting.com/artifacts/org.webjars.npm/angular-swing/
implementation ("org.webjars.npm:angular-swing:1.0.0")
'org.webjars.npm:angular-swing:jar:1.0.0'
<dependency org="org.webjars.npm" name="angular-swing" rev="1.0.0">
  <artifact name="angular-swing" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='angular-swing', version='1.0.0')
)
libraryDependencies += "org.webjars.npm" % "angular-swing" % "1.0.0"
[org.webjars.npm/angular-swing "1.0.0"]

Dependencies

compile (1)

Group / Artifact Type Version
org.webjars.npm : swing jar [1.0.9,2)

Project Modules

There are no modules declared in this project.

angular-swing

NPM version Bower version

AngularJS directive for Swing: A swipeable cards interface. The swipe-left/swipe-right for yes/no input. As seen in apps like Jelly and Tinder, and many others.

Give it a swing! and please tweet it if you like it. : )

Card stack example.

Usage

Include ./dist/angular-swing.js..

Load gajus.swing module, e.g.

angular.module('your-module', ['gajus.swing']);

Loading gajus.swing module will make available the swing-stack and swing-card directives.

Prepare a Swing stack:

<ul swing-stack></ul>

Add a Card to the Swing stack:

<ul swing-stack>
    <li swing-card></li>
</ul>

Attach event listeners to the instance of Card:

<ul swing-stack>
    <li
        swing-card
        swing-on-throwout="console.log(eventName, eventObject)"
        swing-on-throwoutleft="console.log(eventName, eventObject)"
        swing-on-throwoutright="console.log(eventName, eventObject)"
        swing-on-throwin="console.log(eventName, eventObject)"
        swing-on-dragstart="console.log(eventName, eventObject)"
        swing-on-dragmove="console.log(eventName, eventObject)"
        swing-on-dragend="console.log(eventName, eventObject)"
        ></li>
</ul>

Use scope variable to change Swing Stack default options:

$scope.options = {
    throwOutConfidence: function (offset, element) {
        console.log('throwOutConfidence', offset, element.offsetWidth);
        return Math.min(Math.abs(offset) / element.offsetWidth, 1);
    },
    isThrowOut: function (offset, element, throwOutConfidence) {
        console.log('isThrowOut', offset, element.offsetWidth, throwOutConfidence);
        return throwOutConfidence === 1;
    }
};
<ul swing-stack swing-options="options">...</ul>

Use scope variables/methods to add/remove cards:

<ul swing-stack>
    <li
        swing-card
        swing-on-throwout="remove($index)"
        ng-repeat="card in cards"
        >{{card.name}}</li>
</ul>
$scope.cards = [
    {name: 'foo'},
    {name: 'bar'}
];
$scope.remove = function (index) {
    $scope.cards.splice(index, 1);
}
$scope.add = function (name) {
    $scope.cards.push({name: name});
};

Examples

There are more examples that using the standalone Swing.

The code for all of the examples is in the ./examples/ folder.

Raise an issue if you are missing an example.

Events

Swing Documentation for the Events.

Swing events translate to the following attributes in the AngularJS directive:

Name Description
throwout swing-on-throwout
throwoutleft swing-on-throwoutleft
throwoutright swing-on-throwoutright
throwin swing-on-throwin
dragstart swing-on-dragstart
dragmove swing-on-dragmove
dragend swing-on-dragend

Event listener expression can use eventName and eventObject parameters.

Event Object

Swing Documentation for the Event Object.

Download

Using Bower:

bower install angular-swing

Using NPM:

npm install angular-swing

Versions

Version
1.0.0