As @Alexander Karlsson says, your initialProperties may have an issue. In my case, it was not mal-formatted, it just didn't have enough stuff on it! I think I was missing qHyperCubeDef (which I suspect goes on to populate "hcProperties" note "hyperCube = hc")
hcProperties where the client.js is looking; h.hcProperties.qInterColumnSortOrder;
if you don't define your hypercube definition, hcProperties cannot be populated.
If hcProperties is not populated, it is undefined.
If hcProperties is undefined, it won't have a property qInterColumnSortOrder, hence the error.
And in my case, not only did I need to provide qHyperCubeDef, I needed to remove the instance of the extension and re-add it (I think it was initted wrongly, so by removing that instance and re-adding a new one, it could init with my qHyperCubeDef correctly)