Hello Professor! Here is the updated version of the project which adheres to all the feedback from Tuesday's meeting.
Changes include:
Restructuring the module architecture so there is only one entry point for webpack, index.js (along with separating large code chunks into a few specialized modules).
Creating a new function, draw, which is essentially the interface; is the only function a user should have to deal with. It gives the option of automatic coordinate generation and accepts a configuration object in which a user can specify preferences such as margins and padding, as well as the desired width (in the case of automation).
Updating the drawAutomatedStackFrames and drawAutomatedOtherItems as requested. For instance, for drawAutomatedOtherItems, I changed it from just sorting by height, to giving the user the option to sort by height, id, or just leave it as it is (along with other changes).
Other changes such as: (for automation) treating the passed width as the max possible width but the actual width is determined as per the actual drawing of the boxes, dynamically determining the "separator" (i.e. where the object space begins, by taking into account the right edge of the stackframe column), and so on.
Hello Professor! Here is the updated version of the project which adheres to all the feedback from Tuesday's meeting.
Changes include:
index.js
(along with separating large code chunks into a few specialized modules).draw
, which is essentially the interface; is the only function a user should have to deal with. It gives the option of automatic coordinate generation and accepts aconfiguration
object in which a user can specify preferences such as margins and padding, as well as the desired width (in the case of automation).drawAutomatedStackFrames
anddrawAutomatedOtherItems
as requested. For instance, fordrawAutomatedOtherItems
, I changed it from just sorting by height, to giving the user the option to sort by height, id, or just leave it as it is (along with other changes).Have a nice day!