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

@img-arena/front-row-seat

v1.51.0

Published

IMG Arena Front Row Seat integration SDK

Downloads

21,882

Readme

Front Row Seat Integration Library

🏌️‍♀️ 🤼‍♀️ 🎾

A web based library for handling the integration of the event centres with sportsbooks. The library will initially be tasked with handling the communication between sportsbooks and the event centres app. These communications will predominately be for UI synchronisation, ie. bet slip selections being mirrored in both UIs.

npm i @img-arena/front-row-seat
yarn add @img-arena/front-row-seat

Contributing

yarn
yarn start:dev

Considerations

  • changes should be backwards compatible with older versions of the event centre that are using older versions of front-row-seat.js
    • if this is not possible, a solid migration plan must be agreed with the rest of FRS
  • avoid using dependencies or polyfills that might pollute the global scope (ie: @babel/preset-env) as this has been raised as a security warning by our clients

Testing

There are both unit tests and some integration tests. The testing of iframe's in JSDOM is complicated but possible, so as it stands cypress is being used to test the iframe side of things (postMessage).

Note: you'll need to run the dev build each time you run the tests, as the unit tests are using the dist build folder.

To run the unit tests:

yarn test:unit

Integration tests

Start the test site servers (in different consoles), then run the tests:

# terminal one
yarn start:test-site

# terminal two
yarn start:test-site-2

# terminal three
yarn cy

# or you can open the Cypress UI to watch the browser automation run:
yarn cy:open

Debugging

To debug the communication between the parent and the child iframe, you can set the __debug__ property to true when initialising an event centre or Betlink instance. This will log all messages sent and received along with any other logs that are added.

example:

const eventCentre = eventCentre({
    ...,
    __debug__: true,
})

Publishing

The package is automatically published to the npm registry when PRs are merged to master, the version changes are based on commit message syntax; see below.

Commit Style

This repo follows the Conventional Commit format. This is so that we can automatically figure out what the SemVer release tag should be. Note that commits must be in this format, we use Husky to enforce this.

$ git commit -m "feat(frs-123): added some super cool feature"

Commits and SemVer tags are directly linked, if you want a commit to not be evaluated in whether or not the semver version should change, add " [skip ci]" to the end of the commit message - https://github.blog/changelog/2021-02-08-github-actions-skip-pull-request-and-push-workflows-with-skip-ci/.

Commitzen

This repo is Commitzen compatible, if you wish to use it instead of writing the commit via git commit -m ... try cz after git add.

https://github.com/commitizen/cz-cli#installing-the-command-line-tool