@carbonorm/carbonreact 4.0.10 → 4.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.esm.js CHANGED
@@ -4388,6 +4388,12 @@ class CarbonReact extends Component {
4388
4388
  static whyDidYouRender = true;
4389
4389
  constructor(props) {
4390
4390
  super(props);
4391
+ if (!props.instanceId && new.target._instance) {
4392
+ // todo - instanceId being unique should solve this, but.... how
4393
+ // This is a singleton pattern, we can only have one instance of this class
4394
+ throw new Error(`${new.target.name} instance already exists! CarbonReact extended classes can only be referenced once in DOM`);
4395
+ }
4396
+ new.target.instance = (this);
4391
4397
  this.target = new.target;
4392
4398
  console.log('CarbonORM TSX CONSTRUCTOR');
4393
4399
  // this is the magic that allows each class that's extends this to have a static instance - a singleton pattern