0.40.2 • Published 2 years ago

@tradeshift/elements v0.40.2

Weekly downloads
91
License
-
Repository
github
Last release
2 years ago

➤ How to use it

  • Install the core package of the Elements
$ npm i @tradeshift/elements --save
$ npm i @tradeshift/elements.button --save
  • Import the component
import '@tradeshift/elements.button';

or

<script src="node_modules/@tradeshift/elements/lib/core.umd.js"></script>
<script src="node_modules/@tradeshift/elements.button/lib/button.umd.js"></script>
  • Import the css variables
import '@tradeshift/elements/src/vars.css';

or

<link rel="stylesheet" href="node_modules/@tradeshift/elements/src/vars.css" />
  • Use it
<ts-button type="primary">
	Sample Button
</ts-button>
  • Our components rely on having the Open Sans available, You can see the font-weight and font-style you need to load here, or you can just load it from our package (for now)
<link rel="stylesheet" href="node_modules/@tradeshift/elements/src/fonts.css" />

➤ Polyfills

For supporting IE11 you need to do couple of more things

  • If you are using the Tradeshift-ui you need to upgrade it to a compatible version:

    • For version 12 you should upgrade to 12.2.9 or newer version
    • For version 11 you should upgrade to 11.3.2 or newer version
  • Don't shim CSS Custom Properties in IE11

<!-- Place this in the <head>, before the Web Component polyfills are loaded -->
<script>
	if (!window.Promise) {
		window.ShadyCSS = { nativeCss: true };
	}
</script>
You have two options for polyfills library:
  1. Use @open-wc/polyfills-loader
  • Installation
$ npm i @open-wc/polyfills-loader
  • Load it
import loadPolyfills from '@open-wc/polyfills-loader';

loadPolyfills().then(() => import('./my-app.js'));
  1. Use @webcomponents/webcomponentsjs
  • Installation
$ npm i @webcomponents/webcomponentsjs --save
  • Enable ES5 class-less Custom Elements
<script src="/node_modules/@webcomponents/webcomponentsjs/custom-elements-es5-adapter.js"></script>
<script src="/node_modules/@webcomponents/webcomponentsjs/webcomponents-loader.js" defer></script>
  • Load the core and components scripts after WebComponensReady event:
<!-- Load Tradeshift Elements once the polyfills are ready -->
<script>
	window.addEventListener('WebComponentsReady', function() {
		// Load Tradeshift Elements core package
		var coreEl = document.createElement('script');
		coreEl.setAttribute('src', '/packages/core/lib/core.umd.js');
		document.body.appendChild(coreEl);

		// Load other Tradeshift Elements once the core package is loaded
		coreEl.onload = function() {
			var components = ['root', 'button'];
			components.forEach(function(component) {
				var el = document.createElement('script');
				el.setAttribute('src', '/packages/components/' + component + '/lib/' + component + '.umd.js');
				document.body.appendChild(el);
			});
		};
	});
</script>

➤ How to run it

  • Make sure your node version is > 10. If you are using nvm you can just run:
$ nvm use
  • We are using lerna to manage our components in single repo but their own packages, so for installation you need to run:
$ npx lerna bootstrap     # bootstrap all packages and make sure they work together
  • You can start the development server which is watching for changes:
$ npm start

➤ How to contribute

Thanks for your interest and help!

  • First thing you need to do is read this [Component Checklist] which contains lots of important information about what you need to consider when you are creating/changing components
General info

You can find some links to useful materials about what we are using and some tutorials and articles that can help you get started.

ts.elements-specific info

  • Extend TSElement, instead of LitElement
  • Import css, unsafeCSS & html from @tradeshift/elements instead of lit-html
  • Add the UMD global namespace to rollup.globals.json
  • Add your package to the package.json dependencies

➤ How to create new component

To make it simpler and more consistent, we added a Component generator, You can use our its script to generate a new component from terminal and it will create the component inside packages/components

$ npm run component-gen

➤ How to release

We are using lerna to publish our elements

  • Create a branch for releasing。 git branch release
  • git push release and set the upstream.
  • npm run release

Polyfill Limitations

You can see a list of limitations that we should watch out for, here

➤ License

  • You can always create forks on GitHub, submit Issues and Pull Requests.
  • You can only use Tradeshift Elements to make apps on a Tradeshift platform, e.g. tradeshift.com.
  • You can fix a bug until the bugfix is deployed by Tradeshift.
  • You can host Tradeshift Elements yourself.
  • If you want to make a bigger change or just want to talk with us, reach out to our team here on GitHub.

You can read the full license agreement in the LICENSE.md.

0.40.2

2 years ago

0.40.1

2 years ago

0.40.0

2 years ago

0.39.0

2 years ago

0.36.3

2 years ago

0.38.0

2 years ago

0.36.1

2 years ago

0.35.0

2 years ago

0.32.0

2 years ago

0.33.7

2 years ago

0.33.5

2 years ago

0.33.3

2 years ago

0.33.2

2 years ago

0.33.1

2 years ago

0.33.8

2 years ago

0.34.0

2 years ago

0.31.1

3 years ago

0.30.0

3 years ago

0.29.1

3 years ago

0.29.0

3 years ago

0.28.0

3 years ago

0.27.6

3 years ago

0.27.5

3 years ago

0.27.4

3 years ago

0.27.2

3 years ago

0.27.0

3 years ago

0.25.0

3 years ago

0.26.0

3 years ago

0.23.0

3 years ago

0.24.0

3 years ago

0.22.0

3 years ago

0.21.0

3 years ago

0.20.1

3 years ago

0.20.0

3 years ago

0.19.3

3 years ago

0.19.2

3 years ago

0.19.1

3 years ago

0.18.2

3 years ago

0.19.0

3 years ago

0.18.1

4 years ago

0.18.0

4 years ago

0.17.0

4 years ago

0.16.2

4 years ago

0.16.1

4 years ago

0.16.0

4 years ago

0.15.0

4 years ago

0.15.1

4 years ago

0.14.4

4 years ago

0.14.3

4 years ago

0.14.2

4 years ago

0.14.1

4 years ago

0.14.0

4 years ago

0.14.0-beta.0

4 years ago

0.14.0-alpha.8

4 years ago

0.14.0-alpha.6

4 years ago

0.14.0-alpha.5

4 years ago

0.14.0-alpha.4

4 years ago

0.13.0

4 years ago

0.12.1

4 years ago

0.12.0

4 years ago

0.11.0

4 years ago

0.10.0

4 years ago

0.9.0

4 years ago

0.8.0

4 years ago

0.7.6

4 years ago

0.7.5

4 years ago

0.7.4

4 years ago

0.7.2

4 years ago

0.7.3

4 years ago

0.7.2-alpha.0

4 years ago

0.7.1

4 years ago

0.7.0

4 years ago

0.6.0

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.5.0

5 years ago

0.4.5

5 years ago

0.4.5-alpha.0

5 years ago

0.4.4

5 years ago

0.4.4-alpha.1

5 years ago

0.4.4-alpha.0

5 years ago

0.4.3

5 years ago

0.4.1

5 years ago

0.4.1-alpha.0

5 years ago

0.4.0

5 years ago

0.3.4

5 years ago

0.3.3

5 years ago

0.3.3-alpha.0

5 years ago

0.3.2

5 years ago

0.3.2-alpha.0

5 years ago

0.3.1

5 years ago

0.3.0

5 years ago

0.2.8

5 years ago

0.2.8-alpha.0

5 years ago

0.2.7-alpha.0

5 years ago

0.2.7

5 years ago

0.2.6

5 years ago

0.2.5

5 years ago

0.2.4

5 years ago

0.2.3

5 years ago

0.2.2

5 years ago

0.1.5

5 years ago