npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

ablsdk

v0.2.21

Published

![abl-sdk](http://content.screencast.com/users/a.stegno/folders/Jing/media/24a1e61b-195a-44e9-a870-23d84e116bd1/00000337.png)

Downloads

4

Readme

abl-sdk

abl-sdk

##Install

bower install abl-sdk


angular
  .module("app", [ablsdk])
  .controller("yourCtrl", function(ablsdk) {
  
    //Your code here
  
  })

###DEBUG service example

angular
  .module "app", [ablsdk]
  .controller "yourCtrl", ($scope, debug)->
    console.log \show
    debug \show #console.log analogue but prints only when constant enabledDebug=true  
    
    debug ->
       console.log "Run this script only in debug mode"
    

###CRUD example

angular
  .module "app", [ablsdk]
  .controller "yourCtrl", ($scope, crud)->
    activities = crud \activities  #=> use ng:repeat="activity in activities"
    
    #activity will be removed from activities array and DELETE /api/activities will be produced
    remove = (activity)->
      activities.remove activity
    
    #activity will be added to activities array and POST /api/activities will be produced
    add = (new-activity)->
      activities.push new-activity
    
    $scope.add = add 
    $scope.remove = remove
    $scope.activities = activities  
    

##Book an activity example

angular
  .module "app", [ablsdk]
  .controller "yourCtrl", (ablsdk, $timeout)->
    widget = ablsdk.widget
    
    widget.load!.then ->
       
       #Working with activity model
       
       widget = ablsdk.widget
       
       console.log widget.activities #=> a loaded activities 
       
       ablsdk.choose widget.activities.0  #=> choose a first activity
       
       console.log widget.current-activity #=> chosen activity
       
       #Working with slots model
       
       $timeout ->
       
           for calendar in widget.slot.calendars
             for day in calendar.days
                statuses = 
                  chosen: widget.slot.isActiveDay(day) #=> user chosen that day
                  enabled: not widget.slot.isDisabledDay(day)  #=> this day can be chosen
                  empty: widget.slot.isDummy(day) #=> this is not a day but free space reserved by previous month
                if statuses.enabled 
                   widget.choose day
                   return
                
           console.log widget.slot.active-slots #=> show all active slots available for this day
           
           widget.choose widget.slot.active-slots.0
           
           #Working with book model
           
           
           form = widget.book.form
           
           console.log "Available Slots", widget.book.calendar.available!
           calc = widget.calc!
           calc.attendees.0.quantity = 5
           calc.addons.0.quantity = 5
           
           calc.coupon.code = "COUPONCODE"
           calc.coupon.add!
           
           #when you change the model in angular view please add attributes event="book.handle(event)" and name="email" or appropriate in order to show inline errors to user
           
           form.email = "[email protected]"
           form.name = "Your Name"
           form.phone = "+1XXXXXXXXX" 
           form.address = "New York City, ..." 
           form.notes = "New York City, ..." 
           form.creditCard.card = "0000 0000 0000 0000"
           form.creditCard.cvv = "123"
           form.creditCard.exp-date = "12/07"
           
           widget.book.agree! # => Agree with terms and conditions
           
           console.log "Subtotal", calc.calcSubtotal! 
           console.log "Taxes / Fees", calc.calcTaxesFees! 
           console.log "Coupon", calc.calcCoupon!
           console.log "Total", calc.calcTotal! 
           
           widget.book.checkout {$valid: yes} #pass the real angular form object here
       
       

###How to run tests

npm run test 

###How to compile

./run