1.0.0-16 • Published 4 years ago

@saasquatch/internal-referral-program v1.0.0-16

Weekly downloads
-
License
MIT
Repository
github
Last release
4 years ago

How to build and deploy custom widgets

  1. Copy the widget-starter folder and rename as needed
  2. Create new components in ./src/components as new folders, for example ./src/components/sqh-my-component

    1. Components should be built using the HVC pattern
    2. Controller should match the name of the folder: sqh-my-component.tsx
    3. View should match the controller name + "view": sqh-my-component-view.tsx
    4. Hook should have the prefix "use" and the Controller's class name: useMyComponent.ts
    5. Stories should be added to provide visuals of each possible state of the component (MyComponent.stories.tsx) and imported into sqh-stencilbook.tsx. Be sure to import any mixins used in your components into sqh-stencilbook.scss
  3. Before you begin:

    1. Edit stencil.config.ts - update namespace to my-theme-components
    2. Edit package.json - update name to @saasquatch/my-theme-components
  4. Develop Stencil components locally

    1. npm start
    2. Edit html: index.html
  5. Build and publish to NPM under personal user to @saasquatch/my-theme-components@0.0.1

    1. npm login
    2. npm run build 2a. Navigate to dist/my-theme-components/my-theme-components.js and find + remove window.location.origin from the built file (only needed if loading these components in an iframe)
    3. npm publish --access public
  6. Implement widget in portal widget editor

    1. Reference deployed components in advanced section of the widget editor:

      dependencies:

      package: @saasquatch/mint-components
      version: 1.0.0
      filePath: /dist/mint-components/mint-components.js

      plugins:

      package: @saasquatch/mint-components
      version: 1.0.0
      filePath: /grapesjs/grapesjs.js
    2. Import custom html from index.html

  7. Test widget in browser using squatch.js library

    1. go to http://squathjs-demo.surge.sh
    2. Fill out tenantAlias, domain, user, widgetType (p/[programId]/w/referrerWidget), and jwt fields for squatch initObj in config
    3. jwt can be generated at https://jwt.io using the user object from config as the payload
      {
         "user":{
            "id":"my-user-id",
            "accountId":"my-account-id"
         }
      }
      and your tenant's API key in the Verify Signature section
    4. Reload config

flowchart

1.1.3

3 years ago

1.1.1

4 years ago

1.1.1-6

4 years ago

1.1.2

4 years ago

1.1.1-5

4 years ago

1.1.1-4

4 years ago

1.1.1-3

4 years ago

1.1.1-2

4 years ago

1.1.1-1

4 years ago

1.1.0

4 years ago

1.1.0-0

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4-2

4 years ago

1.0.4-1

4 years ago

1.0.4-0

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2-0

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago

1.0.0-28

4 years ago

1.0.0-27

4 years ago

1.0.0-26

4 years ago

1.0.0-25

4 years ago

1.0.0-24

4 years ago

1.0.0-23

4 years ago

1.0.0-22

4 years ago

1.0.0-21

4 years ago

1.0.0-20

4 years ago

1.0.0-19

4 years ago

1.0.0-18

4 years ago

1.0.0-17

4 years ago

1.0.0-16

4 years ago

1.0.0-15

4 years ago

1.0.0-14

4 years ago

1.0.0-13

4 years ago

1.0.0-12

4 years ago

1.0.0-11

4 years ago

1.0.0-10

4 years ago

1.0.0-9

4 years ago

1.0.0-8

4 years ago

1.0.0-7

4 years ago

1.0.0-6

4 years ago

1.0.0-5

4 years ago

1.0.0-4

4 years ago

1.0.0-3

4 years ago

1.0.0-2

4 years ago

1.0.0-1

4 years ago

1.0.0-0

4 years ago

1.0.0

4 years ago