Global lightning components and their inheritance of public components

By | August 10, 2018

Wondering if someone can clear this up for me;

I have a global component in a managed package. I want to reuse this global component outside of the managed package.

In a component outside of the package in API 41 - I could include a global component from inside a managed package and it works as expected. The global component in this case implements forceCommunity:availableForAllPageTypes,force:hasRecordId,flexipage:availableForAllPageTypes.

Months later, I am trying to include a different global component in a similar manner, but it fails with access exceptions: Cannot read property of getDescriptor of null, and component <component being extended by global component> is not visible to markup <unmanaged component>. The global component in this case does not implement the interfaces but extends the same components as the previous example.

I really don't want to go through the entire inheritance structure of the global component making everything global - especially as this wasn't necessary before - and doesn't seem like the real issue.

Does anyone have any insight into what the requirements are for global components being made available outside the package? Are the interfaces the key here?