Socket
Socket
Sign inDemoInstall

trillion-viewer

Package Overview
Dependencies
145
Maintainers
3
Versions
188
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    trillion-viewer

Trillion 3D Viewer


Version published
Weekly downloads
274
increased by0.37%
Maintainers
3
Created
Weekly downloads
 

Readme

Source

Trillion Viewer

This is Trillion Viewer that allow you to integrate Trillion SDK in your site. For more information please visit https://trillion.jewelry

Installing

Using npm:

npm install trillion-viewer

Using yarn:

yarn add trillion-viewer

How to use:

First of all get your API key from https://dashboard.trillion.jewelry/integration

Then you need to create an empty div element for viewer initialization. For example:

 <div id="trillion-viewer"></div>

Then, in your js code (don't forget to set your API key):

import {TrillionViewerApp} from "trillion-viewer"

const elem = document.getElementById('trillion-viewer')
const trillionViewer = new TrillionViewerApp()
trillionViewer.init(elem)
trillionViewer.setServiceActivationKey("YOUR_API_KEY_HERE")
trillionViewer.setJewelryID('demo-ring')
trillionViewer.refresh()

For typescript:

const elem = document.getElementById('trillion-viewer') as HTMLElement

Instance methods

  • trillionViewer.init() - Create viewer on the provided HTML element
  • trillionViewer.setServiceActivationKey(KEY) - Set API key for app
  • trillionViewer.refresh() - reload viewer after changing parameters
  • trillionViewer.setJewelryID(sku) - Set the id(SKU) of the jewelry to load
  • trillionViewer.getJewelryID() - Get the id(SKU) of the uploaded jewelry
  • trillionViewer.setStartSize(number) - Set the start size of the jewelry
  • trillionViewer.getStartSize() - Get the start size of the jewelry
  • trillionViewer.setZoomMin(number) - Set the minumum zoom value
  • trillionViewer.getZoomMin() - Get the minumum zoom value
  • trillionViewer.setZoomMax(number) - Set the maximum zoom value
  • trillionViewer.getZoomMax() - Get the maximum zoom value

Model configuration methods

Available colors and cuts depends on a model

trillionViewer.configuratorController.changeColor({color: '#f5f5f5', materialName: 'metal'})

change color of material. Available materials names can be retrieved from API in future

trillionViewer.configuratorController.changeCut({name: 'oval', frame: 'oval', band?: 'oval'}, RING_CUTS)

change cut of the stone. RING_CUTS - all available ring cuts, can be retrieved from API in future and band - is optional param, used where band is also changed

trillionViewer.configuratorController.engrave('text to engrave')

change engrave for a model, max length 15 symbols

trillionViewer.configuratorController.changeLetter('A', LETTERS)

change engrave for a model, max length 15 symbols LETTERS - all available letters, can be retrieved from API in future

Events

'VIEWER_LOADED_EVENT' will be fired when viewer is loaded and ready for any user interactions. Here is an example of subscription to that event

document.addEventListener('VIEWER_LOADED_EVENT', () => {
  console.log('Viewer is loaded!');
})

Using CDN to get Trillion Viewer

use this pattern: unpkg.com/:package@:version/:file

For example:

import {TrillionViewerApp} from "https://unpkg.com/trillion-viewer@0.2.17/build-lib/trillion-viewer.js"

React component

This library also provides the React component for widget.

How to use

import component:

import { TrillionViewer } from "trillion-viewer";

use somewhere in your React application:

function MyComponent() {
  return (
    <div className="MyComponent">
        <TrillionViewer jewelryId={'demo-ring'}/>
    </div>
  )
}

Keywords

FAQs

Last updated on 24 Apr 2024

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc