Re: [w3c/webcomponents] Non-class based example of customElement.define() (#587)

It's a bummer we can't use any of the following libs to define our element classes. These are very notable ones (cool features like protected/private members, multiple inheritance, concatenative inheritance, type specifiers for properties, interfaces, etc):

1. https://www.npmjs.com/package/backbone (the extend helper)
1. https://www.npmjs.com/package/proclass
1. https://www.npmjs.com/package/joii
1. https://www.npmjs.com/package/mozart
1. https://www.npmjs.com/package/classical
1. https://www.npmjs.com/package/modelo
1. https://www.npmjs.com/package/pjs
1. https://www.npmjs.com/package/@stamp/it
1. https://www.npmjs.com/package/dos
1. https://www.npmjs.com/package/lowclass (shameful plug!)

And there's many more:

1. https://www.npmjs.com/package/newclass
1. https://www.npmjs.com/package/sjsclass
1. https://www.npmjs.com/package/nature-js
1. https://www.npmjs.com/package/baseclassjs
1. https://www.npmjs.com/package/classkit
1. https://www.npmjs.com/package/classy
1. https://www.npmjs.com/package/es-class
1. https://www.npmjs.com/package/selfish
1. https://www.npmjs.com/package/ampersand-class-extend
1. https://www.npmjs.com/package/cip
1. https://www.npmjs.com/package/bike
1. https://www.npmjs.com/package/js.class
1. https://www.npmjs.com/package/pseudoclass
1. https://www.npmjs.com/package/miniclass
1. https://www.npmjs.com/package/jahcode
1. https://www.npmjs.com/package/subclassjs
1. https://www.npmjs.com/package/sclass.js
1. https://www.npmjs.com/package/solv
1. https://www.npmjs.com/package/legado
1. https://www.npmjs.com/package/class-factory-js
1. https://www.npmjs.com/package/chic
1. https://www.npmjs.com/package/fac
1. https://www.npmjs.com/package/cakes
1. https://www.npmjs.com/package/clazzy
1. https://www.npmjs.com/package/clazz
1. https://www.npmjs.com/package/klass
1. https://www.npmjs.com/package/o3
1. https://www.npmjs.com/package/create-class
1. https://www.npmjs.com/package/protect.js
1. https://www.npmjs.com/package/exclass

There _are_ some tools designed for use with native `class`:

1. https://www.npmjs.com/package/mics
1. https://www.npmjs.com/package/endow
1. https://github.com/parro-it/private-class

Did you know there were that many? (I didn't even finish the search on NPM)

It would be great for new APIs not to discount the existing ecosystems, and for native `class` to be an option.

We could avoid problems (perhaps the most notorious problem of all new browser APIs):

1. https://github.com/w3c/webcomponents/issues/423
1. https://github.com/whatwg/html/issues/1704
1. https://stackoverflow.com/questions/45747646/what-is-the-es5-way-of-writing-web-component-classes
1. https://stackoverflow.com/questions/41414034/transpiling-class-based-web-components-with-babel
1. https://stackoverflow.com/questions/43287186/why-is-wecomponentsjs-custom-elements-es5-adapter-js-not-working
1. https://stackoverflow.com/questions/43427281/custom-elements-v1-in-transpiling-from-typescript-to-ecmascript-5-failing-under
1. https://stackoverflow.com/questions/43002652/how-to-get-polymer-2-0-es5-elements-working-with-v1-spec
1. https://stackoverflow.com/questions/44121853/how-can-i-solve-the-error-uncaught-typeerror-class-constructor-m-cannot-be-inv
1. https://stackoverflow.com/questions/41085635/typescript-2-1-custom-elements
1. https://stackoverflow.com/questions/43520535/class-constructor-polymerelement-cannot-be-invoked-without-new
1. https://stackoverflow.com/questions/47684104/is-there-a-custom-elements-polyfill-targeting-internet-explorer

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/webcomponents/issues/587#issuecomment-375200519

Received on Thursday, 22 March 2018 07:11:16 UTC