@@ -9,115 +9,97 @@ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'defau
99var structuredClone__default = /*#__PURE__*/ _interopDefaultLegacy ( structuredClone ) ;
1010
1111function deserialize ( originalResponse ) {
12- var response = structuredClone__default [ "default" ] ( originalResponse ) ;
13-
14- var included = response . included || [ ] ;
15-
12+ const response = structuredClone__default [ "default" ] ( originalResponse ) ;
13+ const included = response . included || [ ] ;
1614 if ( Array . isArray ( response . data ) ) {
17- return response . data . map ( function ( data ) {
15+ return response . data . map ( data => {
1816 return parseJsonApiSimpleResourceData ( data , included , false ) ;
1917 } ) ;
2018 } else {
2119 return parseJsonApiSimpleResourceData ( response . data , included , false ) ;
2220 }
2321}
24-
2522function parseJsonApiSimpleResourceData ( data , included , useCache , options ) {
2623 if ( ! included . cached ) {
2724 included . cached = { } ;
2825 }
29-
3026 if ( ! ( data . type in included . cached ) ) {
3127 included . cached [ data . type ] = { } ;
3228 }
33-
3429 if ( useCache && data . id in included . cached [ data . type ] ) {
3530 return included . cached [ data . type ] [ data . id ] ;
3631 }
37-
38- var attributes = data . attributes || { } ;
39- var resource = attributes ;
32+ const attributes = data . attributes || { } ;
33+ const resource = attributes ;
4034 resource . id = data . id ;
4135 included . cached [ data . type ] [ data . id ] = resource ;
42-
4336 if ( data . relationships ) {
44- for ( var _i = 0 , _Object$keys = Object . keys ( data . relationships ) ; _i < _Object$keys . length ; _i ++ ) {
45- var relationName = _Object$keys [ _i ] ;
46- var relationRef = data . relationships [ relationName ] ;
47-
37+ for ( const relationName of Object . keys ( data . relationships ) ) {
38+ const relationRef = data . relationships [ relationName ] ;
4839 if ( Array . isArray ( relationRef . data ) ) {
49- ( function ( ) {
50- var items = [ ] ;
51- relationRef . data . forEach ( function ( relationData ) {
52- var item = findJsonApiIncluded ( included , relationData . type , relationData . id ) ;
53- items . push ( item ) ;
54- } ) ;
55- resource [ relationName ] = items ;
56- } ) ( ) ;
40+ const items = [ ] ;
41+ relationRef . data . forEach ( relationData => {
42+ const item = findJsonApiIncluded ( included , relationData . type , relationData . id ) ;
43+ items . push ( item ) ;
44+ } ) ;
45+ resource [ relationName ] = items ;
5746 } else if ( relationRef && relationRef . data ) {
5847 resource [ relationName ] = findJsonApiIncluded ( included , relationRef . data . type , relationRef . data . id ) ;
5948 } else {
6049 resource [ relationName ] = null ;
6150 }
6251 }
6352 }
64-
6553 return resource ;
6654}
67-
6855function findJsonApiIncluded ( included , type , id , options ) {
69- var found = null ;
70- included . forEach ( function ( item ) {
56+ let found = null ;
57+ included . forEach ( item => {
7158 if ( item . type === type && item . id === id ) {
7259 found = parseJsonApiSimpleResourceData ( item , included , true ) ;
7360 }
7461 } ) ;
75-
7662 if ( ! found ) {
7763 found = {
78- id : id
64+ id
7965 } ;
8066 }
81-
8267 return found ;
8368}
8469
70+ // Recursively filters all deprecated elements and essences from collection
8571function filterDeprecatedElements ( elements ) {
86- var els = [ ] ;
87- elements . forEach ( function ( element ) {
88- var _element$nested_eleme , _element$nestedElemen , _element$essences ;
89-
90- if ( ( ( _element$nested_eleme = element . nested_elements ) === null || _element$nested_eleme === void 0 ? void 0 : _element$nested_eleme . length ) > 0 ) {
72+ const els = [ ] ;
73+ elements . forEach ( element => {
74+ if ( element . nested_elements ?. length > 0 ) {
9175 element . nested_elements = filterDeprecatedElements ( element . nested_elements ) ;
9276 }
93-
94- if ( ( ( _element$nestedElemen = element . nestedElements ) === null || _element$nestedElemen === void 0 ? void 0 : _element$nestedElemen . length ) > 0 ) {
77+ if ( element . nestedElements ?. length > 0 ) {
9578 element . nestedElements = filterDeprecatedElements ( element . nestedElements ) ;
9679 }
97-
98- if ( ( ( _element$essences = element . essences ) === null || _element$essences === void 0 ? void 0 : _element$essences . length ) > 0 ) {
99- element . essences = element . essences . filter ( function ( essence ) {
80+ if ( element . essences ?. length > 0 ) {
81+ element . essences = element . essences . filter ( essence => {
10082 return ! essence . deprecated ;
10183 } ) ;
10284 }
103-
10485 if ( ! element . deprecated ) {
10586 els . push ( element ) ;
10687 }
10788 } ) ;
10889 return els ;
109- } // Returns deserialized page without deprecated content
110-
90+ }
11191
92+ // Returns deserialized page without deprecated content
11293function deserializePage ( pageData ) {
113- var page = deserialize ( pageData ) ;
94+ const page = deserialize ( pageData ) ;
11495 page . elements = filterDeprecatedElements ( page . elements ) ;
11596 return page ;
116- } // Returns deserialized pages without deprecated content
97+ }
11798
99+ // Returns deserialized pages without deprecated content
118100function deserializePages ( pagesData ) {
119- var pages = deserialize ( pagesData ) ;
120- pages . forEach ( function ( page ) {
101+ const pages = deserialize ( pagesData ) ;
102+ pages . forEach ( page => {
121103 page . elements = filterDeprecatedElements ( page . elements ) ;
122104 } ) ;
123105 return pages ;
0 commit comments