So I thought I’d put together a quick class diagram to highlight the relationships within the api and to better understand the overall structure of what we’re dealing with here.
It’s worth noting that, as per the team’s post, this is just the beginning and as such, new features will be added over time. The current documentation in the Office Dev Center reflects the master branch of the office-js-docs GitHub repository, however, there is also an OpenSpec branch (VisioJs_1.1_OpenSpec) where you can view and give feedback on potential upcoming api additions. To this end I’ve highlighted the current classes that appear in the master branch in blue, and those that are only surfaced in the OpenSpec branch, in grey.
You can download a zip of the Visio document and pdf here:
A note about data collection – Without a better source I’ve put the data together by parsing each of the Markdown files found in the reference folder of the OpenSpec branch. Each file has a table for each member type (Properties, Methods, Relationships etc.) and it’s here that I’ve harvested the data. As per any kind of ‘web scraping’ this is liable to bugs, so please treat the generated diagram as a guide to help you learn, rather than a de facto specification.