Details
-
Task
-
Status: Closed
-
Normal
-
Resolution: Done
-
14.0.0
-
None
-
None
-
Tiger
-
Tiger Sprint 216, Tiger Sprint 217
Description
Follow specifications from the technical design document: https://docs.google.com/document/d/1AYu1d5IsA4xPtmUM9wmaQnhDamTP9TPn4ZT_daFGn7M/edit#heading=h.gfcmcimanw4j
Requirements:
- The code of the shared library should be strictly typed.
- The code should follow SOLID principles.
- Objects produced by the SDK should be immutable, so we can avoid side-effects in state management.
- All publicly available functions of the SDK should be pure, so a user will be able to extend the SDK on his end.
- The code should be covered by unit tests.
- Implement queue and DFS to avoid recursion.
- Implement a factory or factory method to produce components instances.
- Don't call the factory from within a component/page constructor.
- `parseModel` should parse/build the tree in O(N) operations and consume O(N) memory.
Attachments
Issue Links
- blocks
-
CMS-12141 Write README.md for the Shared SPA SDK
- Closed
- is blocked by
-
HSTTWO-4643 Update Page Model API to include container xtype
- Closed
-
CMS-12133 Create a boilerplate for the Shared SPA SDK project
- Closed
1.
|
Implement the page model hierarchy | Closed | Unassigned | |
2.
|
Implement content entities | Closed | Unassigned | |
3.
|
Implement meta-data entities | Closed | Unassigned |