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

@acaprojects/a2-composer

v0.6.21

Published

Angular 2 Interface for composer

Downloads

11

Readme

Angular 2 - Composer Library

Note:: You can create your own components that are customised for your application. Composer does all the heavy lifting allowing maximum flexibility for app integration.

Directives

Binding

The binding attribute can be attached to any element to manage the data for a device property.

<div binding [(value)]="value" [sys]="'sys-B0'" [mod]="module" [index]="2" [bind]="'power'" exec="switch" [params]="[value, value1, value2]"></div>

Name | Binding | Direction | Valid Types | Description -----|----------|-----------|-------------|------------ value| Two-way | Read & Write | String | Value of the bound. Updates when servers value is changed. sys| One-way | Write-only | String | Identifier of the system to connect mod| One-way | Write-only | String | Identifier of the module in the system to use e.g. Display index| One-way | Write-only | Number | Index of the module in the system. Default: 1 bind| One-way | Write-only | String | Name of the variable in module to bind exec| One-way | Write-only | String | Name of the function to execute on the server when the binding value changes. If undefined no function call will occur. If defined as empty function name will be bind value params| One-way | Write-only | Any[] | Array parameters to pass into the function on the server. Defaults to value

Debug

The debug attribute can be attached to any element to get logging information for the selected device.

<div debug [(output)]="value" [sys]="'sys-B0'" [mod]="module" [index]="2" enabled="true"></div>

Name | Binding | Direction | Valid Types | Description -----|----------|-----------|-------------|------------ output| Two-way | Read & Write | String | Array of Debugging messsages on set module sys| One-way | Write-only | String | Identifier of the system to connect mod| One-way | Write-only | String | Identifier of the module in the system to use e.g. Display index| One-way | Write-only | Number | Index of the module in the system. Default: 1 enable| One-way | Write-only | String | Enables debugging. Output will not update if false

Services

System Service

The systems service performs all the interactions on bindings.

Authentication details are setup through this service.

Resources Service

The resources service is used to make accessing Control API simple.

Usage in Web Workers

Running Angular 2 in web worker limits the access to certain global scope variables. As the auth needs local and session storage to operate correctly you will need to register a Message Broker in you app so that the auth can operate.

An example of how to register this message broker is given below.


import {WORKER_UI_LOCATION_PROVIDERS, bootstrapWorkerUi} from '@angular/platform-webworker';
import { DataStoreBroker } from '@aca-1/a2-composer';

bootstrapWorkerUi('webworker.bundle.js', WORKER_UI_LOCATION_PROVIDERS).then((ref) => {
	let broker = new DataStoreBroker(ref);
});

You also need to add the DataStoreWorkerService to root module so that the worker communcates with the broker.


import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule } from '@angular/router';
import { WorkerAppModule, WORKER_APP_LOCATION_PROVIDERS } from '@angular/platform-webworker';
import { ACA_COMPOSER_MODULE, DataStoreService, DataStoreWorkerService } from '@acaprojects/a2-composer';

@NgModule({
  bootstrap: [ AppComponent ],
  declarations: [
  	...
  ],
  imports: [
    WorkerAppModule,
    FormsModule,
    HttpModule,
    RouterModule.forRoot(ROUTES, { useHash: true }),
    ACA_COMPOSER_MODULE
  ],
  providers: [
    ...
    WORKER_APP_LOCATION_PROVIDERS,
    { provide: DataStoreService, useClass: DataStoreWorkerService }
  ]
})
export class AppModule {

}

License

MIT © Alex Sorafumo