Code Monkey home page Code Monkey logo

ext-react's People

Contributors

aniket91 avatar branflake2267 avatar dalley avatar jnsencha avatar medhasingh32 avatar mgusmano avatar nmatei avatar pooja-awasthi avatar rahulgarg30591 avatar sathishcel avatar shivistar avatar sureshcelestial avatar tommymorgan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ext-react's Issues

ExtReact releases do not work on Windows development environments

The npm dependencies act differently on Windows than on MacOS. I follow a simple set of steps (shown below) to clone the repo, revert to the latest release commit, install the packages with lerna, and do an npm start on the project I want to run. However, these steps do not work on Windows Server 2016,

I get the following error with npm start in git bash after a fresh clone and npm install under the root (here are my full steps and error):
npm login --registry=https://npm.sencha.com --scope=@sencha
git clone https://github.com/sencha/ext-react.git
cd ext-react
git checkout master
git reset --hard 9bc49d7a292a5c4ae7f02fddb3fb2ecb2a8eca11
Open packages/ext-react-modern-boilerplate/package.json in a text editor and delete all ~ and ^ symbols in front of all the version numbers under the "dependencies" section.
npm install
cd packages/ext-react-modern-boilerplate
npm start

OUTPUT:
$ npm start

@sencha/[email protected] start E:\repos\extreactlatestgithub\ext-react\packages\ext-react-classic-boilerplate
npm run dev

@sencha/[email protected] dev E:\repos\extreactlatestgithub\ext-react\packages\ext-react-classic-boilerplate
webpack-dev-server --env.verbose=no --env.environment=development

i [ext]: ext-webpack-plugin v6.6.4, Ext JS v6.6.0.258 Commercial Edition, Sencha Cmd v6.6.0.22, webpack v4.29.0, react v16.6.3
i [ext]: Building for development
i 「wds」: Project is running at http://0.0.0.0:1963/
i 「wds」: webpack output is served from /
i 「wds」: Content not from webpack is served from ./build
i 「wds」: 404s will fallback to /index.html
ℹ 「ext」: ext-react-babel-plugin: reactVersion: ~16.6.3
i [ext]: Adding ext-react\ext.js and ext-react\ext.css to index.html
i [ext]: Copying \resources\ to: \build\resources
i [ext]: Copying \resources\ to: \build\ext-react\resources
i [ext]: Copying \overrides\ to: \build\ext-react\overrides
i [ext]: Building Ext bundle at: \build\ext-react
i [ext]: [ERR] Directory \build\ext-react\node_modules@sencha\ext not recognized as a framework
i [ext]: [ERR] Unable to load required framework: ext@null
i [ext]: Completed ext-webpack-plugin processing
× 「wdm」: Built at: 2019-01-26 13:31:53
Entrypoint app = app.js app.js.map

ERROR in i [ext]: Directory \build\ext-react\node_modules@sencha\ext not recognized as a framework

ERROR in i [ext]: Unable to load required framework: ext@null

ERROR in 321
i 「wdm」: Failed to compile.

On MacOS, I do not even have to remove all of the ^ and ~ characters in each of the package.json files for the projects that I want to run, but on Windows it is necessary, and that step will only get to a working state on certain commits (but not the release commit mentioned above). See my comments on #161. I have seen those errors sometimes on various commits.

Impossible to install @sencha/ext-webpack-plugin

Do you know, that after last update to v7.6.0 it is impossible to install @sencha/ext-webpack-plugin using npm?

d:\downloads\111>npm i @sencha/ext-webpack-plugin
npm ERR! code ETARGET
npm ERR! notarget No matching version found for @sencha/cmd@~7.6.0.
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\zdm\.npm-cache\_logs\2022-09-04T02_19_28_428Z-debug-0.log

modern boilerplate: npm build does not work

This issue has been opened with sencha support as well: https://support.sencha.com/#ticket-45559

npm start works as expected.
npm run build does not work.

It stops with this output and opens a browser window:

Child html-webpack-plugin for "index.html":
1 asset
Entrypoint undefined = index.html
[../node_modules/html-webpack-plugin/lib/loader.js!./index.html] 475 bytes {0} [built]
+ 3 hidden modules

Tried the latest repo version as of today. Versions are:
ext-webpack-plugin v6.6.3, Ext JS v6.6.0.258 Commercial Edition, Sencha Cmd v6.6.0.13, webpack v4.23.0, react v16.6.0

Ext-React not usable with the classic toolkit !

Standard html elements (like <div />) are not rendered when using ext-react with the classic toolkit.

Steps to reproduce:

  1. Install ext-react classic toolkit boilerplate from here https://github.com/sencha/ext-react/tree/master/packages/ext-react-classic-boilerplate

  2. In https://github.com/sencha/ext-react/blob/master/packages/ext-react-classic-boilerplate/src/index.js file change

     <ExtReact>
        <AppContainer>
             <Component />
        </AppContainer>
      </ExtReact>
    

    To

      <ExtReact>
        <AppContainer>
             <div>asd</div>
        </AppContainer>
      </ExtReact>
    
  3. Run the application with npm start

  4. Exception is thrown

ExtRenderer.js:179 Uncaught TypeError: Cannot read property 'dom' of undefined
at finalizeInitialChildren (ExtRenderer.js:179)
at completeWork (react-reconciler.development.js:6146)
at completeUnitOfWork (react-reconciler.development.js:7751)
at performUnitOfWork (react-reconciler.development.js:7928)
at workLoop (react-reconciler.development.js:7940)
at renderRoot (react-reconciler.development.js:7980)
at performWorkOnRoot (react-reconciler.development.js:8598)
at performWork (react-reconciler.development.js:8520)
at performSyncWork (react-reconciler.development.js:8492)
at requestWork (react-reconciler.development.js:8392)

I traced the problem back to this to lines in Extrenderer.js

var cmp = Ext.create({ xtype: 'component', cls: 'x-react-element' });
ReactDOM.render(React.createElement(type, props, props.children), cmp.el.dom);

el is undefined on cmp, which is not the case if you use the modern toolkit.
The Ext.create function provides the el field when using the modern toolkit.


Alternatively you can also try directly this custom made example here https://github.com/eucaos/ext-react-6.6-bug

/widget/renderercell.js not available when built with npm run build

I use the ExtReact v7.0.0 TypeScript Boilerplate code https://github.com/sencha/ext-react/tree/ext-react-7.0.x/packages/ext-react-modern-typescript-boilerplate and included a Grid with a RendererCell that renders Buttons in Grid cells.

When building via npm run build which effectively calls npm run clean && cross-env webpack --env.environment=production --env.treeshake=yes --env.basehref=/ the browser tries to load a file http://localhost:57976/widget/renderercell.js?_dc=1573939053861 that does not exist and therefore causes JavaScript errors and nothing is rendered.

I included the matching package within the webpack.config.js as follows:

new ExtWebpackPlugin({
	framework: "react",
	toolkit: "modern",
	packages: ["renderercell"],
        ....
})

Within my component, I imported

import { RendererCell, ExtReactRenderer } from "@sencha/ext-modern";
import "@sencha/ext-react-renderercell";

without any success.

What other steps are necessary to make the RendererCell work?

can't start ext-react-modern-boilerplate

I can't start the ext-react-modern-boilerplate. On the main page it is written that DO NOT run npm start for each folder. Why?

So I tried to run npm install in the main folder with an error:

npm install

> undefined postinstall /.../ext-react
> lerna bootstrap

lerna notice cli v3.4.3
lerna info Bootstrapping 20 packages
lerna info Installing external dependencies
lerna ERR! npm install exited 1 in '@sencha/ext-react-conference-app'
lerna ERR! npm install stderr:
npm ERR! code E403
npm ERR! 403 Forbidden: @sencha/ext-d3@~6.6.0

Then if I go to the expecified folder of ext-react-modern-boilerplate I can install it but can't run it. First I have the error Ext is not defined even if I put it into package.json variables. Searching I found that maybe java version was the problem, so I installed version 8 (I think, I get it from oracle-java8-installer):

java -version
java version "1.8.0_191"

Now the error running npm start is different:

✖ 「wdm」: Built at: 2018-11-26 14:13:50
Entrypoint app = app.js app.js.map

ERROR in i [ext]: Cannot satisfy requirements for "font-awesome"!

ERROR in i [ext]:    The following versions cannot be satisfied:

ERROR in i [ext]:       theme-neptune: font-awesome (No matches!)

ERROR in i [ext]: Cannot satisfy requirements for "font-ext"!

ERROR in i [ext]:    The following versions cannot be satisfied:

ERROR in i [ext]:       theme-neptune: font-ext (No matches!)

ERROR in i [ext]: Cannot resolve package requirements

ERROR in 65
ℹ 「wdm」: Failed to compile.

I don't know what to do u.u I've been months trying to install new ext-react version with unsuccess

UPDATE:

Installing and uninstalling many times I managed to install it. Now the problem is:

Uncaught Error: Expected subtree parent to be a mounted class component. This error is likely caused by a bug in React. Please file an issue.
    at invariant (react-reconciler.development.js:52)
    at findCurrentUnmaskedContext (react-reconciler.development.js:1484)
    at getContextForSubtree (react-reconciler.development.js:9845)
    at updateContainerAtExpirationTime (react-reconciler.development.js:9902)
    at Object.updateContainer (react-reconciler.development.js:9936)
    at ProxyComponent.componentDidMount (ExtJSComponent.js:57)
    at ProxyComponent.componentDidMount (react-hot-loader.development.js:577)
    at commitLifeCycles (react-dom.development.js:15961)
    at commitAllLifeCycles (react-dom.development.js:17262)
    at HTMLUnknownElement.callCallback (react-dom.development.js:149)

Store's autoLoad property ignored if remote filtering is enabled

https://www.sencha.com/forum/showthread.php?305380

When the gridfilters plugin is enabled:

... store={new Ext.data.Store({autoLoad: false, remoteFilter: true})} ...
--> Store loads automatically

... store={new Ext.data.Store({autoLoad: {params:{limit: 1}}, remoteFilter: true})} ...
--> Store loads automatically, limit is default at 15

This bug is not fixed for years now and I am sure it would not take too much time to fix it.
My feeling is that there are only a few conditions missing somewhere in the filtering part.
If you want me to fix it by myself I expect something in reward, as I am paying for something...

ExtReact not passing "context" to child component

I want to use react-admin component in ExtReact application, but after wrapping <Admin/> component with <ExtReact/> it throws error saying the store is missing. After some digging i found that ExtReact not passing the "context" to the child component.

I think this happen because the htmlComponent in ext-react is only extjs component only.

Can you confirm this? thank you.

ExtReact doesn't support React Hooks

When using a useEffect hook, ExtReact throws the following exception:

Uncaught TypeError: schedulePassiveEffects is not a function
at react-reconciler.development.js:10938
at Object.unstable_runWithPriority (scheduler.development.js:255)
at commitRoot (react-reconciler.development.js:10937)
at react-reconciler.development.js:12380
at Object.unstable_runWithPriority (scheduler.development.js:255)
at completeRoot (react-reconciler.development.js:12379)
at performWorkOnRoot (react-reconciler.development.js:12308)
at performWork (react-reconciler.development.js:12216)
at performSyncWork (react-reconciler.development.js:12190)
at requestWork (react-reconciler.development.js:12059)

Example:

example.js

import React, {useEffect} from 'react';
import { Container } from '@sencha/ext-modern';

export default function Example() {
    useEffect(() => {
        console.log("Using React Hook");

    }, []);

  return (
    <Container padding="20">
      <h1>About this App</h1>
      <p>Example</p>
    </Container>
  )
}

Migrate from ExtJS to Ext React

Hi,

Can anyone tell me if it is possible to migrate from extJS classic to Ext React. If yes, how much effort is requried for the migration?

responseConfig produces confusing console warnings [probably a quick fix]

Using responseConfig on a component produces the following warning:
responsive plugin is deprecated; require "Ext.Responsive" instead
This is probably happening because _ensureResponsivePlugin is still called on all new Components.
Commenting out the call fixes this problem for me.
Shouldn't we just remove that ensureResponsivePlugin thingy or is there another reason for keeping it even after using the plugin is deprecated now? If I remember correctly, responsive props should work without requiring the plugin and in my case, it does that just perfectly.

Proposed change: accept `sass` and `resources` configs for Webpack-generated app.json

Hello,

My use-case is transitioning a very large ExtJS over to ExtReact. Obviously, the entire app cannot be transitioned over immediately, but I'm working on setting it up so that React will bootstrap the app and reference the base components. The idea is to slowly migrate, bottom up, to ExtReact.

To achieve this use-case, I need to be able to pass sass and resources parameters to app.json. The change was easy-- I just modified createAppJson in artifacts.js to write the configs and index.js to pass them.

I'm happy to submit a PR with my change. Any chance we could get it pushed to NPM?

ExtReact 7.0.0 CRA Webpack Integration Loaders Error

I create a project with create-react-app React v16.12.0 version latest now and eject the project for configuration to add extjs. CRA eject 2 config file, one is webpack.config.js one is webpack.devServer.config.js.

I also create a project with ext-gen and it gives only webpack.config.js. I read all of the Sencha Extjs documentation to integrate extjs to react app, but i could not.

I try to customize CRA webpack.config.js adding ExtReact plugins, loaders vs.

Is there a way to do this? or doc.

my error is:

./src/index.js 31:4 
Module parse failed: Unexpected token (31:4)                                     
You may need an appropriate loader to handle this file type, currently no loader s are configured to process this file. See https://webpack.js.org/concepts#loaders
import React from 'react'
import ReactDOM from 'react-dom'
import { AppContainer } from 'react-hot-loader'
import { launch, ExtReact } from '@sencha/ext-react'
import App from './App'

let viewport

Ext.require([
  'Ext.layout.*',
])

const render = (Component, target) => {
  ReactDOM.render(
    <ExtReact> // CAN NOT LOAD
      <AppContainer>
        <Component/>
      </AppContainer>
    </ExtReact>,
    target
  )
}

launch(target => render(App, viewport = target));

if (module.hot) {
  module.hot.accept('./App', () => render(App, viewport))
}

how i can run only Ext React KitchenSink?

hello. I do all commands to run "Ext React KitchenSink". I need 6.7.x version.
node version: v10.16.0
npm version: 6.9.0
jre version: openjdk version "11.0.3" 2019-04-16
I have credentials for registry.
npm login --registry=http://npm.sencha.com --scope=@sencha
I clone project
git clone https://github.com/sencha/ext-react.git
change directory
cd packages/ext-react-kitchensink
run command
npm install
and got many errors.
`npm WARN deprecated @babel/[email protected]: 🚨 As of Babel 7.4.0, this
npm WARN deprecated package has been deprecated in favor of directly
npm WARN deprecated including core-js/stable (to polyfill ECMAScript
npm WARN deprecated features) and regenerator-runtime/runtime
npm WARN deprecated (needed to use transpiled generator functions):
npm WARN deprecated
npm WARN deprecated > import "core-js/stable";
npm WARN deprecated > import "regenerator-runtime/runtime";
npm ERR! code ETARGET
npm ERR! notarget No matching version found for @sencha/ext-react@~7.0.0
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget
npm ERR! notarget It was specified as a dependency of 'ext-react-kitchensink'
npm ERR! notarget

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2019-07-03T08_28_49_099Z-debug.log`

i need only components from "Ext React KitchenSink". How i can do it? Thank you!

Webpack/Babel Configuration Guide Leads to Compilation Errors

@mgusmano

The ExtReact v7.2.0 documentation identifies that we should use ExtWebpackPlugin from the @sencha/ext-react-webpack-plugin package when setting up Webpack and Babel. The same page further identifies that we should add @sencha/ext-react-babel-plugin to the "plugins" array configuration in our .babelrc/babel.config.json file.

When adding @sencha/ext-react-babel-plugin to package.json, the highest version available to us is v7.0.0. Following that documentation page and when adding in v7.0.0, such results in a compilation error with a stacktrace of:

Module build failed (from D:/Repos/XXX/XXX/src/XXX/node_modules/babel-loader/lib/index.js):
TypeError: [BABEL] D:\Repos\XXX\XXX\src\XXX\Scripts\src\index.jsx: Cannot read property 'includes' of undefined (While processing: "D:\\Repos\\XXX\\XXX\\src\\XXX\\node_modules\\@sencha\\ext-react-babel-plugin\\dist\\index.js")
    at module.exports (D:\Repos\XXX\XXX\src\XXX\node_modules\@sencha\ext-react-babel-plugin\dist\index.js:46:33)
    at D:\Repos\XXX\XXX\src\XXX\node_modules\@babel\core\lib\config\full.js:199:14
    at Generator.next (<anonymous>)
    at Function.<anonymous> (D:\Repos\XXX\XXX\src\XXX\node_modules\@babel\core\lib\gensync-utils\async.js:26:3)
    at Generator.next (<anonymous>)
    at step (D:\Repos\XXX\XXX\src\XXX\node_modules\gensync\index.js:254:32)
    at evaluateAsync (D:\Repos\XXX\XXX\src\XXX\node_modules\gensync\index.js:284:5)
    at Function.errback (D:\Repos\XXX\XXX\src\XXX\node_modules\gensync\index.js:108:7)
    at errback (D:\Repos\XXX\XXX\src\XXX\node_modules\@babel\core\lib\gensync-utils\async.js:70:18)
    at async (D:\Repos\XXX\XXX\src\XXX\node_modules\gensync\index.js:183:31)
    at onFirstPause (D:\Repos\XXX\XXX\src\XXX\node_modules\gensync\index.js:209:13)
    at Generator.next (<anonymous>)
    at cachedFunction (D:\Repos\XXX\XXX\src\XXX\node_modules\@babel\core\lib\config\caching.js:68:46)
    at cachedFunction.next (<anonymous>)
    at loadPluginDescriptor (D:\Repos\XXX\XXX\src\XXX\node_modules\@babel\core\lib\config\full.js:235:43)
    at loadPluginDescriptor.next (<anonymous>)
i 「wdm」: Failed to compile.

Removing @sencha/ext-react-babel-plugin from babel.config.json and from package.json leads us to yet another error, this time:

...
i [ext]: Completed ext-webpack-plugin processing
× 「wdm」: Time: 14816ms
Built at: 06/24/2020 5:30:51 PM
                                       Asset       Size  Chunks  Chunk Names
                                     main.js     21 MiB    main  main
                   resources/images/XXX1.svg     13 KiB
                   resources/images/XXX2.jpg    282 KiB
                   resources/images/XXX3.svg   6.46 KiB
                   resources/images/XXX4.png   17.4 KiB
                   resources/images/XXX5.gif   7.19 KiB
                     resources/manifest.json  336 bytes
Entrypoint main = main.js

ERROR in _compilation: TypeError: Cannot read property 'tap' of undefined
i 「wdm」: Failed to compile.

The way we've found to gain a successful build/compile is to use ExtWebpackPlugin from the @sencha/ext-webpack-plugin package, NOT the @sencha/ext-react-webpack-plugin which the documentation illustrates. Interestingly, the most recent version available to us of the non-working package (@sencha/ext-react-webpack-plugin) is v6.7.0 whereas the working package (@sencha/ext-webpack-plugin) is inline with the rest of our ExtReact versions (v7.2.0).

I know that was a lot. To recap, if we follow the ExtReact v7.2.0 documentation and use one or both of @sencha/ext-react-webpack-plugin or @sencha/ext-react-webpack-plugin, we run into compilation errors. Getting rid of both and using ExtWebpackPlugin from @sencha/ext-webpack-plugin, we can successfully build and run our application.

Not requesting an engineering effort since we can get a successful compilation/run out of using the @sencha/ext-webpack-plugin at a version inline with our ExtReact version. Rather, requesting the documentation be updated to remove a non-working configuration of Webpack and Babel.

The use of ExtJS CE is not displayed correctly in the console

Sencha does not provide ext-react from its private repository for ExtJS CE users, but since the code in this repository has Apache 2 and MIT licenses, it is technically possible that users using the CE can use ext-react with the ExtJS components to which they have access. However, ext-react-webpack-plugin does not detect correctly when the CE is used and incorrectly shows on the label the use of the commercial version.

I suggest using the variable extPkg in /packages/ext-react-webpack-plugin/src/pluginUtil.js

if (extPkg._resolved == undefined) {
    v.edition = `Commercial`
  }
  else {
    if (-1 == extPkg._resolved.indexOf('community')) {
      v.edition = `Commercial`
    }
    else {
      v.edition = `Community`
    }
}

Remove commented out code...

PLEASE DEAR GOD... Please remove the commented out code and personal test code from this repository. It's clearly evident that the repository is being used for personal use... Personal use should be forked... It's a well understood best-practice to never commit commented out code - especially to a community repository. It's frustratingly difficult to scan this repository for code examples/etc... when 90% of it are broken test harnesses, personal play grounds, and dead code.

There are so many problems w/in ExtReact, and this just makes it that much harder for us consumers to self-service our troubleshooting.

Thanks!!!

RendererCell not working

I am trying to use a RendererCell or the renderer Property of a Column to display a Button within each cell of a column. I get the following errors with the React application just rendering a blank screen in the browser:

Screenshot 2019-11-13 at 09 39 59

My Column code looks like this:

import {
	Column,
	Grid,
	Button,
	RendererCell,
	ExtReactRenderer
} from "@sencha/ext-modern";

// ...

<Column
	text={tt("revoke")}
	dataIndex=""
	flex="1"
	renderer={(value, record) => (
		<Button
			text={`Call ${value}`}
			handler={this.onCallClick.bind(this, record)}
		/>
	)}
/>

This is based off of https://docs.sencha.com/extreact/7.0.0/modern/Ext.grid.column.Column.html#cfg-renderer but I also tried all variants of the RendererCell from here: https://github.com/sencha/ext-react/blob/ext-react-7.0.x/packages/ext-react-modern-demo/src/Render/AppRender.js

I saw that there were a few PR's regarding this topic:
#336
#340
#362

But none of the code helped me finding a solution to the above mentioned issue.

I based my code on the https://github.com/sencha/ext-react/tree/ext-react-7.0.x/packages/ext-react-modern-typescript-boilerplate example code and am using ExtReact 7.0.0.

What's the issue here?

Replace the now deprecated findDOMNode with refs

In strict mode, I get a bunch of warnings in the log:
Warning: findDOMNode is deprecated in StrictMode. findDOMNode was passed an instance of ExtTitlebar which is inside StrictMode. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://fb.me/react-strict-mode-find-node
In near future, it will be gone so it needs to replaced.

This evil method is used twice inside reactize.js. I don't know why you used it there instead of passing a ref down the tree but it should defentily replaced by something non-deprecated.
I could try to fix it by myself but if I don't get anything for it, there is no point in doing that.
Thanks in advance!

Bug: isXType breaks when ext-react is included

In my use-case, I have some code running in React and legacy code (large code base) running in ExtJS. The ExtJS components ability to query by XType breaks when ext-react is included.

An example query that breaks is:

Ext.ComponentQuery.query('myCustomXTypeHere');

The culprit is this line:
https://github.com/sencha/ext-react/blob/master/packages/ext-react/src/overrides.js#L36

As a fix, I've solved my problem by changing it to:

Ext.Widget.prototype.isXType = function(xtype, shallow) {
    return originalWidgetIsXtype.call(this, xtype.replace(/_/g, '-'), shallow)
        || originalWidgetIsXtype.call(this, xtype.toLowerCase().replace(/_/g, '-'), shallow);
}

Looking at what it's actually doing internally (just a simple string/array of strings comparison), I think this is an acceptable change to avoid the bug. I don't think it will have a significant performance impact.

I am happy to submit a PR if you approve of this change. Any chance we can get this published to NPM?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.