Skip to content

paypal/paypal-messaging-components

This branch is 1 commit ahead of, 190 commits behind develop.

Folders and files

NameName
Last commit message
Last commit date
Sep 15, 2023
Oct 19, 2023
Apr 4, 2023
Oct 18, 2023
Feb 1, 2023
Aug 14, 2023
Oct 30, 2023
Oct 19, 2023
Sep 20, 2023
Jun 4, 2019
Oct 17, 2023
Oct 30, 2020
Jun 4, 2019
Jun 4, 2019
Feb 14, 2020
Sep 2, 2020
Jun 26, 2023
Nov 12, 2019
Jun 13, 2023
Oct 18, 2023
Jun 4, 2019
Oct 23, 2023
Jun 4, 2019
Sep 12, 2023
Feb 14, 2022
Jun 13, 2023
Sep 12, 2023
Oct 30, 2020
Sep 12, 2023
Jan 24, 2023
Oct 18, 2023
Feb 14, 2022
Jan 13, 2022
Sep 12, 2023
Dec 5, 2022

Repository files navigation

PayPal Credit Messaging


Compare Snapshots dependencies Status devDependencies Status

A messaging component allowing easy integration of PayPal Credit Messages onto your site.

Dev Docs

See developer.paypal.com/docs/business/pay-later/integrate/


Development

Please feel free to follow the Contribution Guidelines to contribute to this repository. PRs are welcome, but for major changes please raise an issue first.

Quick Setup

Set up your env:

npm install

Run tests:

npm test

Run in dev mode:

npm start

Creating a Bundle

npm run build

Options

  • -v - version, optional
  • -e - environment, one of production, sandbox or stage
  • -m - module, optional, one of library, components, or render
  • -t - tag, optional, name of the stage tag
  • -s - testEnv, optional, link to a test environment

The command you'll most likely need to use is

npm run build -- -t stage-tag-name -s test-environment-link

Scripts

  • build

  • build:<env> where <env> is stage, sandbox, or production

    • runs webpack with NODE_ENV=<env>
  • build:analyze

  • build:demo

    • runs webpack with env.demo set
  • dev

    • runs webpack-dev-server with TARGET=sdk, NODE_ENV=local, STAGE_TAG=local
  • dev:<target> where <target> is standalone, modal, or lander

    • runs webpack-dev-server with TARGET=<target>, NODE_ENV=local, STAGE_TAG=local
    • note: modal uses TARGET=standalone-modal
  • dev:<env> where <env> is stage, sandbox, or production

    • runs webpack-dev-server with TARGET=standalone and NODE_ENV=<env>
  • lint

    • checks our codebase for style issues
  • preinstall

    • runs automatically on npm install and removes node_modules/
  • start

    • runs npm run dev
  • test

    • runs all unit tests
  • test:<type> where <type> is func, func:nosnaps or func:ciupdate

    • func runs all snapshot functional tests
    • func:nosnaps runs all non-snapshot functional tests
    • func:ciupdate updates all snapshots generated by functional tests

Testing

Functional

  1. Run npm run dev:ci in one command line instance
  2. In a second window run the below command, which runs tests for a specific integrationType
    • integrationType is one of: api, sdk, standalone, or webpage
CONFIG_PATH={locale}/{account} npm run test:func:snapshots -- --testPathPattern {integrationType}

Example

CONFIG_PATH=US/DEV_US_MULTI npm run test:func:snapshots -- --testPathPattern sdk

Alternatively, you can remove -- --testPathPattern {integrationType} and just run the following to run tests on an account for all integration types.

CONFIG_PATH={locale}/{account} npm run test:func:snapshots

Stage

For PayPal Internal Testing Only:

To test against PayPal's standard stage url, ensure that the demo page contains the following script, then run npm run dev:stage:

//Change the value of the url and add the script to the demo page (i.e. standalone.html)
<script>window.__TEST_ENV__ = "https://www.{PAYPAL_STAGE_URL_HERE}.com"</script>

If you are looking to run against an alternative environment, set the window.__TEST_ENV__ global to override the environment. Please note, this is only available in development environments.

//Change the value of the test environment
<script>window.__TEST_ENV__ = "https://www.te-test-env.com"</script>

Releasing

This package is published weekly, Every Wednesday. Please view our Changelog to stay updated with bug fixes and new features.