@kontent-ai/delivery-sdk 12.0.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (802) hide show
  1. package/.npmignore +15 -0
  2. package/LICENSE.md +9 -0
  3. package/dist/bundles/kontent-delivery.umd.js +10439 -0
  4. package/dist/bundles/kontent-delivery.umd.js.map +1 -0
  5. package/dist/bundles/kontent-delivery.umd.min.js +2 -0
  6. package/dist/bundles/kontent-delivery.umd.min.js.map +1 -0
  7. package/dist/bundles/report.json +1 -0
  8. package/dist/bundles/report.min.json +1 -0
  9. package/dist/bundles/stats.json +34913 -0
  10. package/dist/bundles/stats.min.json +39693 -0
  11. package/dist/cjs/client/delivery-client.d.ts +57 -0
  12. package/dist/cjs/client/delivery-client.factory.d.ts +3 -0
  13. package/dist/cjs/client/delivery-client.factory.js +9 -0
  14. package/dist/cjs/client/delivery-client.factory.js.map +1 -0
  15. package/dist/cjs/client/delivery-client.js +87 -0
  16. package/dist/cjs/client/delivery-client.js.map +1 -0
  17. package/dist/cjs/client/idelivery-client.interface.d.ts +48 -0
  18. package/dist/cjs/client/idelivery-client.interface.js +3 -0
  19. package/dist/cjs/client/idelivery-client.interface.js.map +1 -0
  20. package/dist/cjs/client/index.d.ts +3 -0
  21. package/dist/cjs/client/index.js +20 -0
  22. package/dist/cjs/client/index.js.map +1 -0
  23. package/dist/cjs/config/delivery-configs.d.ts +80 -0
  24. package/dist/cjs/config/delivery-configs.js +3 -0
  25. package/dist/cjs/config/delivery-configs.js.map +1 -0
  26. package/dist/cjs/config/index.d.ts +1 -0
  27. package/dist/cjs/config/index.js +18 -0
  28. package/dist/cjs/config/index.js.map +1 -0
  29. package/dist/cjs/contracts/contracts.d.ts +189 -0
  30. package/dist/cjs/contracts/contracts.js +3 -0
  31. package/dist/cjs/contracts/contracts.js.map +1 -0
  32. package/dist/cjs/contracts/index.d.ts +1 -0
  33. package/dist/cjs/contracts/index.js +18 -0
  34. package/dist/cjs/contracts/index.js.map +1 -0
  35. package/dist/cjs/elements/element-models.d.ts +81 -0
  36. package/dist/cjs/elements/element-models.js +3 -0
  37. package/dist/cjs/elements/element-models.js.map +1 -0
  38. package/dist/cjs/elements/element-resolver.d.ts +2 -0
  39. package/dist/cjs/elements/element-resolver.js +3 -0
  40. package/dist/cjs/elements/element-resolver.js.map +1 -0
  41. package/dist/cjs/elements/element-type.d.ts +16 -0
  42. package/dist/cjs/elements/element-type.js +21 -0
  43. package/dist/cjs/elements/element-type.js.map +1 -0
  44. package/dist/cjs/elements/elements.d.ts +44 -0
  45. package/dist/cjs/elements/elements.js +3 -0
  46. package/dist/cjs/elements/elements.js.map +1 -0
  47. package/dist/cjs/elements/index.d.ts +4 -0
  48. package/dist/cjs/elements/index.js +21 -0
  49. package/dist/cjs/elements/index.js.map +1 -0
  50. package/dist/cjs/images/image-url-transformation-builder.d.ts +85 -0
  51. package/dist/cjs/images/image-url-transformation-builder.factory.d.ts +2 -0
  52. package/dist/cjs/images/image-url-transformation-builder.factory.js +9 -0
  53. package/dist/cjs/images/image-url-transformation-builder.factory.js.map +1 -0
  54. package/dist/cjs/images/image-url-transformation-builder.js +144 -0
  55. package/dist/cjs/images/image-url-transformation-builder.js.map +1 -0
  56. package/dist/cjs/images/image.models.d.ts +3 -0
  57. package/dist/cjs/images/image.models.js +3 -0
  58. package/dist/cjs/images/image.models.js.map +1 -0
  59. package/dist/cjs/images/index.d.ts +3 -0
  60. package/dist/cjs/images/index.js +20 -0
  61. package/dist/cjs/images/index.js.map +1 -0
  62. package/dist/cjs/index.d.ts +13 -0
  63. package/dist/cjs/index.js +31 -0
  64. package/dist/cjs/index.js.map +1 -0
  65. package/dist/cjs/mappers/element.mapper.d.ts +31 -0
  66. package/dist/cjs/mappers/element.mapper.js +341 -0
  67. package/dist/cjs/mappers/element.mapper.js.map +1 -0
  68. package/dist/cjs/mappers/generic-element.mapper.d.ts +5 -0
  69. package/dist/cjs/mappers/generic-element.mapper.js +19 -0
  70. package/dist/cjs/mappers/generic-element.mapper.js.map +1 -0
  71. package/dist/cjs/mappers/index.d.ts +6 -0
  72. package/dist/cjs/mappers/index.js +23 -0
  73. package/dist/cjs/mappers/index.js.map +1 -0
  74. package/dist/cjs/mappers/item.mapper.d.ts +46 -0
  75. package/dist/cjs/mappers/item.mapper.js +122 -0
  76. package/dist/cjs/mappers/item.mapper.js.map +1 -0
  77. package/dist/cjs/mappers/language.mapper.d.ts +6 -0
  78. package/dist/cjs/mappers/language.mapper.js +20 -0
  79. package/dist/cjs/mappers/language.mapper.js.map +1 -0
  80. package/dist/cjs/mappers/taxonomy.mapper.d.ts +11 -0
  81. package/dist/cjs/mappers/taxonomy.mapper.js +61 -0
  82. package/dist/cjs/mappers/taxonomy.mapper.js.map +1 -0
  83. package/dist/cjs/mappers/type.mapper.d.ts +7 -0
  84. package/dist/cjs/mappers/type.mapper.js +67 -0
  85. package/dist/cjs/mappers/type.mapper.js.map +1 -0
  86. package/dist/cjs/models/common/base-responses.d.ts +11 -0
  87. package/dist/cjs/models/common/base-responses.js +3 -0
  88. package/dist/cjs/models/common/base-responses.js.map +1 -0
  89. package/dist/cjs/models/common/common-models.d.ts +97 -0
  90. package/dist/cjs/models/common/common-models.js +13 -0
  91. package/dist/cjs/models/common/common-models.js.map +1 -0
  92. package/dist/cjs/models/common/filters.d.ts +108 -0
  93. package/dist/cjs/models/common/filters.js +280 -0
  94. package/dist/cjs/models/common/filters.js.map +1 -0
  95. package/dist/cjs/models/common/headers.d.ts +4 -0
  96. package/dist/cjs/models/common/headers.js +8 -0
  97. package/dist/cjs/models/common/headers.js.map +1 -0
  98. package/dist/cjs/models/common/index.d.ts +7 -0
  99. package/dist/cjs/models/common/index.js +24 -0
  100. package/dist/cjs/models/common/index.js.map +1 -0
  101. package/dist/cjs/models/common/pagination.class.d.ts +7 -0
  102. package/dist/cjs/models/common/pagination.class.js +3 -0
  103. package/dist/cjs/models/common/pagination.class.js.map +1 -0
  104. package/dist/cjs/models/common/parameters.d.ts +95 -0
  105. package/dist/cjs/models/common/parameters.js +166 -0
  106. package/dist/cjs/models/common/parameters.js.map +1 -0
  107. package/dist/cjs/models/common/sort-order.d.ts +1 -0
  108. package/dist/cjs/models/common/sort-order.js +3 -0
  109. package/dist/cjs/models/common/sort-order.js.map +1 -0
  110. package/dist/cjs/models/content-type-models.d.ts +32 -0
  111. package/dist/cjs/models/content-type-models.js +3 -0
  112. package/dist/cjs/models/content-type-models.js.map +1 -0
  113. package/dist/cjs/models/element-models.d.ts +39 -0
  114. package/dist/cjs/models/element-models.js +3 -0
  115. package/dist/cjs/models/element-models.js.map +1 -0
  116. package/dist/cjs/models/index.d.ts +7 -0
  117. package/dist/cjs/models/index.js +24 -0
  118. package/dist/cjs/models/index.js.map +1 -0
  119. package/dist/cjs/models/item-models.d.ts +106 -0
  120. package/dist/cjs/models/item-models.js +3 -0
  121. package/dist/cjs/models/item-models.js.map +1 -0
  122. package/dist/cjs/models/language-models.d.ts +11 -0
  123. package/dist/cjs/models/language-models.js +3 -0
  124. package/dist/cjs/models/language-models.js.map +1 -0
  125. package/dist/cjs/models/responses.d.ts +71 -0
  126. package/dist/cjs/models/responses.js +3 -0
  127. package/dist/cjs/models/responses.js.map +1 -0
  128. package/dist/cjs/models/taxonomy-models.d.ts +18 -0
  129. package/dist/cjs/models/taxonomy-models.js +3 -0
  130. package/dist/cjs/models/taxonomy-models.js.map +1 -0
  131. package/dist/cjs/parser/implementation/async-browser-parser.class.d.ts +10 -0
  132. package/dist/cjs/parser/implementation/async-browser-parser.class.js +141 -0
  133. package/dist/cjs/parser/implementation/async-browser-parser.class.js.map +1 -0
  134. package/dist/cjs/parser/implementation/browser-parser.class.d.ts +10 -0
  135. package/dist/cjs/parser/implementation/browser-parser.class.js +125 -0
  136. package/dist/cjs/parser/implementation/browser-parser.class.js.map +1 -0
  137. package/dist/cjs/parser/index.d.ts +5 -0
  138. package/dist/cjs/parser/index.js +22 -0
  139. package/dist/cjs/parser/index.js.map +1 -0
  140. package/dist/cjs/parser/parse-models.d.ts +67 -0
  141. package/dist/cjs/parser/parse-models.js +17 -0
  142. package/dist/cjs/parser/parse-models.js.map +1 -0
  143. package/dist/cjs/parser/parser-configuration.d.ts +21 -0
  144. package/dist/cjs/parser/parser-configuration.js +25 -0
  145. package/dist/cjs/parser/parser-configuration.js.map +1 -0
  146. package/dist/cjs/parser/parser.helper.d.ts +11 -0
  147. package/dist/cjs/parser/parser.helper.js +91 -0
  148. package/dist/cjs/parser/parser.helper.js.map +1 -0
  149. package/dist/cjs/query/common/base-listing-query.class.d.ts +125 -0
  150. package/dist/cjs/query/common/base-listing-query.class.js +221 -0
  151. package/dist/cjs/query/common/base-listing-query.class.js.map +1 -0
  152. package/dist/cjs/query/common/base-query.class.d.ts +68 -0
  153. package/dist/cjs/query/common/base-query.class.js +105 -0
  154. package/dist/cjs/query/common/base-query.class.js.map +1 -0
  155. package/dist/cjs/query/element/element-query.class.d.ts +16 -0
  156. package/dist/cjs/query/element/element-query.class.js +33 -0
  157. package/dist/cjs/query/element/element-query.class.js.map +1 -0
  158. package/dist/cjs/query/index.d.ts +10 -0
  159. package/dist/cjs/query/index.js +27 -0
  160. package/dist/cjs/query/index.js.map +1 -0
  161. package/dist/cjs/query/item/multiple-items-query.class.d.ts +58 -0
  162. package/dist/cjs/query/item/multiple-items-query.class.js +101 -0
  163. package/dist/cjs/query/item/multiple-items-query.class.js.map +1 -0
  164. package/dist/cjs/query/item/single-item-query.class.d.ts +35 -0
  165. package/dist/cjs/query/item/single-item-query.class.js +64 -0
  166. package/dist/cjs/query/item/single-item-query.class.js.map +1 -0
  167. package/dist/cjs/query/items-feed/items-feed-query.class.d.ts +52 -0
  168. package/dist/cjs/query/items-feed/items-feed-query.class.js +92 -0
  169. package/dist/cjs/query/items-feed/items-feed-query.class.js.map +1 -0
  170. package/dist/cjs/query/language/languages-query.class.d.ts +38 -0
  171. package/dist/cjs/query/language/languages-query.class.js +72 -0
  172. package/dist/cjs/query/language/languages-query.class.js.map +1 -0
  173. package/dist/cjs/query/taxonomy/taxonomies-query.class.d.ts +33 -0
  174. package/dist/cjs/query/taxonomy/taxonomies-query.class.js +64 -0
  175. package/dist/cjs/query/taxonomy/taxonomies-query.class.js.map +1 -0
  176. package/dist/cjs/query/taxonomy/taxonomy-query.class.d.ts +19 -0
  177. package/dist/cjs/query/taxonomy/taxonomy-query.class.js +33 -0
  178. package/dist/cjs/query/taxonomy/taxonomy-query.class.js.map +1 -0
  179. package/dist/cjs/query/type/multiple-type-query.class.d.ts +15 -0
  180. package/dist/cjs/query/type/multiple-type-query.class.js +31 -0
  181. package/dist/cjs/query/type/multiple-type-query.class.js.map +1 -0
  182. package/dist/cjs/query/type/single-type-query.class.d.ts +15 -0
  183. package/dist/cjs/query/type/single-type-query.class.js +29 -0
  184. package/dist/cjs/query/type/single-type-query.class.js.map +1 -0
  185. package/dist/cjs/resolvers/index.d.ts +8 -0
  186. package/dist/cjs/resolvers/index.js +25 -0
  187. package/dist/cjs/resolvers/index.js.map +1 -0
  188. package/dist/cjs/resolvers/property-name/camel-case-property-name-resolver.class.d.ts +2 -0
  189. package/dist/cjs/resolvers/property-name/camel-case-property-name-resolver.class.js +13 -0
  190. package/dist/cjs/resolvers/property-name/camel-case-property-name-resolver.class.js.map +1 -0
  191. package/dist/cjs/resolvers/property-name/pascal-case-property-name-resolver.class.d.ts +2 -0
  192. package/dist/cjs/resolvers/property-name/pascal-case-property-name-resolver.class.js +13 -0
  193. package/dist/cjs/resolvers/property-name/pascal-case-property-name-resolver.class.js.map +1 -0
  194. package/dist/cjs/resolvers/property-name/snake-case-property-name-resolver.class.d.ts +2 -0
  195. package/dist/cjs/resolvers/property-name/snake-case-property-name-resolver.class.js +27 -0
  196. package/dist/cjs/resolvers/property-name/snake-case-property-name-resolver.class.js.map +1 -0
  197. package/dist/cjs/resolvers/rich-text/async/async-rich-text-html-resolver.d.ts +9 -0
  198. package/dist/cjs/resolvers/rich-text/async/async-rich-text-html-resolver.js +96 -0
  199. package/dist/cjs/resolvers/rich-text/async/async-rich-text-html-resolver.js.map +1 -0
  200. package/dist/cjs/resolvers/rich-text/base/base-async-rich-text-resolver.d.ts +9 -0
  201. package/dist/cjs/resolvers/rich-text/base/base-async-rich-text-resolver.js +17 -0
  202. package/dist/cjs/resolvers/rich-text/base/base-async-rich-text-resolver.js.map +1 -0
  203. package/dist/cjs/resolvers/rich-text/base/base-rich-text-resolver.d.ts +9 -0
  204. package/dist/cjs/resolvers/rich-text/base/base-rich-text-resolver.js +17 -0
  205. package/dist/cjs/resolvers/rich-text/base/base-rich-text-resolver.js.map +1 -0
  206. package/dist/cjs/resolvers/rich-text/rich-text-resolver.models.d.ts +91 -0
  207. package/dist/cjs/resolvers/rich-text/rich-text-resolver.models.js +3 -0
  208. package/dist/cjs/resolvers/rich-text/rich-text-resolver.models.js.map +1 -0
  209. package/dist/cjs/resolvers/rich-text/sync/rich-text-html-resolver.d.ts +9 -0
  210. package/dist/cjs/resolvers/rich-text/sync/rich-text-html-resolver.js +78 -0
  211. package/dist/cjs/resolvers/rich-text/sync/rich-text-html-resolver.js.map +1 -0
  212. package/dist/cjs/resolvers/rich-text/sync/rich-text-json-resolver.d.ts +8 -0
  213. package/dist/cjs/resolvers/rich-text/sync/rich-text-json-resolver.js +21 -0
  214. package/dist/cjs/resolvers/rich-text/sync/rich-text-json-resolver.js.map +1 -0
  215. package/dist/cjs/resolvers/rich-text/sync/rich-text-object-resolver.d.ts +16 -0
  216. package/dist/cjs/resolvers/rich-text/sync/rich-text-object-resolver.js +150 -0
  217. package/dist/cjs/resolvers/rich-text/sync/rich-text-object-resolver.js.map +1 -0
  218. package/dist/cjs/sdk-info.generated.d.ts +2 -0
  219. package/dist/cjs/sdk-info.generated.js +9 -0
  220. package/dist/cjs/sdk-info.generated.js.map +1 -0
  221. package/dist/cjs/services/base-delivery-query.service.d.ts +102 -0
  222. package/dist/cjs/services/base-delivery-query.service.js +282 -0
  223. package/dist/cjs/services/base-delivery-query.service.js.map +1 -0
  224. package/dist/cjs/services/delivery-query.service.d.ts +72 -0
  225. package/dist/cjs/services/delivery-query.service.js +171 -0
  226. package/dist/cjs/services/delivery-query.service.js.map +1 -0
  227. package/dist/cjs/services/index.d.ts +2 -0
  228. package/dist/cjs/services/index.js +19 -0
  229. package/dist/cjs/services/index.js.map +1 -0
  230. package/dist/cjs/services/mapping.service.d.ts +68 -0
  231. package/dist/cjs/services/mapping.service.js +119 -0
  232. package/dist/cjs/services/mapping.service.js.map +1 -0
  233. package/dist/cjs/utilities/delivery-url.helper.d.ts +5 -0
  234. package/dist/cjs/utilities/delivery-url.helper.js +17 -0
  235. package/dist/cjs/utilities/delivery-url.helper.js.map +1 -0
  236. package/dist/cjs/utilities/guid.helper.d.ts +4 -0
  237. package/dist/cjs/utilities/guid.helper.js +12 -0
  238. package/dist/cjs/utilities/guid.helper.js.map +1 -0
  239. package/dist/cjs/utilities/index.d.ts +4 -0
  240. package/dist/cjs/utilities/index.js +21 -0
  241. package/dist/cjs/utilities/index.js.map +1 -0
  242. package/dist/cjs/utilities/linked-items.helper.d.ts +5 -0
  243. package/dist/cjs/utilities/linked-items.helper.js +15 -0
  244. package/dist/cjs/utilities/linked-items.helper.js.map +1 -0
  245. package/dist/cjs/utilities/text-helper.d.ts +7 -0
  246. package/dist/cjs/utilities/text-helper.js +26 -0
  247. package/dist/cjs/utilities/text-helper.js.map +1 -0
  248. package/dist/es6/client/delivery-client.d.ts +57 -0
  249. package/dist/es6/client/delivery-client.factory.d.ts +3 -0
  250. package/dist/es6/client/delivery-client.factory.js +5 -0
  251. package/dist/es6/client/delivery-client.factory.js.map +1 -0
  252. package/dist/es6/client/delivery-client.js +83 -0
  253. package/dist/es6/client/delivery-client.js.map +1 -0
  254. package/dist/es6/client/idelivery-client.interface.d.ts +48 -0
  255. package/dist/es6/client/idelivery-client.interface.js +2 -0
  256. package/dist/es6/client/idelivery-client.interface.js.map +1 -0
  257. package/dist/es6/client/index.d.ts +3 -0
  258. package/dist/es6/client/index.js +4 -0
  259. package/dist/es6/client/index.js.map +1 -0
  260. package/dist/es6/config/delivery-configs.d.ts +80 -0
  261. package/dist/es6/config/delivery-configs.js +2 -0
  262. package/dist/es6/config/delivery-configs.js.map +1 -0
  263. package/dist/es6/config/index.d.ts +1 -0
  264. package/dist/es6/config/index.js +2 -0
  265. package/dist/es6/config/index.js.map +1 -0
  266. package/dist/es6/contracts/contracts.d.ts +189 -0
  267. package/dist/es6/contracts/contracts.js +2 -0
  268. package/dist/es6/contracts/contracts.js.map +1 -0
  269. package/dist/es6/contracts/index.d.ts +1 -0
  270. package/dist/es6/contracts/index.js +2 -0
  271. package/dist/es6/contracts/index.js.map +1 -0
  272. package/dist/es6/elements/element-models.d.ts +81 -0
  273. package/dist/es6/elements/element-models.js +2 -0
  274. package/dist/es6/elements/element-models.js.map +1 -0
  275. package/dist/es6/elements/element-resolver.d.ts +2 -0
  276. package/dist/es6/elements/element-resolver.js +2 -0
  277. package/dist/es6/elements/element-resolver.js.map +1 -0
  278. package/dist/es6/elements/element-type.d.ts +16 -0
  279. package/dist/es6/elements/element-type.js +18 -0
  280. package/dist/es6/elements/element-type.js.map +1 -0
  281. package/dist/es6/elements/elements.d.ts +44 -0
  282. package/dist/es6/elements/elements.js +2 -0
  283. package/dist/es6/elements/elements.js.map +1 -0
  284. package/dist/es6/elements/index.d.ts +4 -0
  285. package/dist/es6/elements/index.js +5 -0
  286. package/dist/es6/elements/index.js.map +1 -0
  287. package/dist/es6/images/image-url-transformation-builder.d.ts +85 -0
  288. package/dist/es6/images/image-url-transformation-builder.factory.d.ts +2 -0
  289. package/dist/es6/images/image-url-transformation-builder.factory.js +5 -0
  290. package/dist/es6/images/image-url-transformation-builder.factory.js.map +1 -0
  291. package/dist/es6/images/image-url-transformation-builder.js +140 -0
  292. package/dist/es6/images/image-url-transformation-builder.js.map +1 -0
  293. package/dist/es6/images/image.models.d.ts +3 -0
  294. package/dist/es6/images/image.models.js +2 -0
  295. package/dist/es6/images/image.models.js.map +1 -0
  296. package/dist/es6/images/index.d.ts +3 -0
  297. package/dist/es6/images/index.js +4 -0
  298. package/dist/es6/images/index.js.map +1 -0
  299. package/dist/es6/index.d.ts +13 -0
  300. package/dist/es6/index.js +15 -0
  301. package/dist/es6/index.js.map +1 -0
  302. package/dist/es6/mappers/element.mapper.d.ts +31 -0
  303. package/dist/es6/mappers/element.mapper.js +337 -0
  304. package/dist/es6/mappers/element.mapper.js.map +1 -0
  305. package/dist/es6/mappers/generic-element.mapper.d.ts +5 -0
  306. package/dist/es6/mappers/generic-element.mapper.js +15 -0
  307. package/dist/es6/mappers/generic-element.mapper.js.map +1 -0
  308. package/dist/es6/mappers/index.d.ts +6 -0
  309. package/dist/es6/mappers/index.js +7 -0
  310. package/dist/es6/mappers/index.js.map +1 -0
  311. package/dist/es6/mappers/item.mapper.d.ts +46 -0
  312. package/dist/es6/mappers/item.mapper.js +118 -0
  313. package/dist/es6/mappers/item.mapper.js.map +1 -0
  314. package/dist/es6/mappers/language.mapper.d.ts +6 -0
  315. package/dist/es6/mappers/language.mapper.js +16 -0
  316. package/dist/es6/mappers/language.mapper.js.map +1 -0
  317. package/dist/es6/mappers/taxonomy.mapper.d.ts +11 -0
  318. package/dist/es6/mappers/taxonomy.mapper.js +57 -0
  319. package/dist/es6/mappers/taxonomy.mapper.js.map +1 -0
  320. package/dist/es6/mappers/type.mapper.d.ts +7 -0
  321. package/dist/es6/mappers/type.mapper.js +63 -0
  322. package/dist/es6/mappers/type.mapper.js.map +1 -0
  323. package/dist/es6/models/common/base-responses.d.ts +11 -0
  324. package/dist/es6/models/common/base-responses.js +2 -0
  325. package/dist/es6/models/common/base-responses.js.map +1 -0
  326. package/dist/es6/models/common/common-models.d.ts +97 -0
  327. package/dist/es6/models/common/common-models.js +9 -0
  328. package/dist/es6/models/common/common-models.js.map +1 -0
  329. package/dist/es6/models/common/filters.d.ts +108 -0
  330. package/dist/es6/models/common/filters.js +277 -0
  331. package/dist/es6/models/common/filters.js.map +1 -0
  332. package/dist/es6/models/common/headers.d.ts +4 -0
  333. package/dist/es6/models/common/headers.js +5 -0
  334. package/dist/es6/models/common/headers.js.map +1 -0
  335. package/dist/es6/models/common/index.d.ts +7 -0
  336. package/dist/es6/models/common/index.js +8 -0
  337. package/dist/es6/models/common/index.js.map +1 -0
  338. package/dist/es6/models/common/pagination.class.d.ts +7 -0
  339. package/dist/es6/models/common/pagination.class.js +2 -0
  340. package/dist/es6/models/common/pagination.class.js.map +1 -0
  341. package/dist/es6/models/common/parameters.d.ts +95 -0
  342. package/dist/es6/models/common/parameters.js +163 -0
  343. package/dist/es6/models/common/parameters.js.map +1 -0
  344. package/dist/es6/models/common/sort-order.d.ts +1 -0
  345. package/dist/es6/models/common/sort-order.js +2 -0
  346. package/dist/es6/models/common/sort-order.js.map +1 -0
  347. package/dist/es6/models/content-type-models.d.ts +32 -0
  348. package/dist/es6/models/content-type-models.js +2 -0
  349. package/dist/es6/models/content-type-models.js.map +1 -0
  350. package/dist/es6/models/element-models.d.ts +39 -0
  351. package/dist/es6/models/element-models.js +2 -0
  352. package/dist/es6/models/element-models.js.map +1 -0
  353. package/dist/es6/models/index.d.ts +7 -0
  354. package/dist/es6/models/index.js +8 -0
  355. package/dist/es6/models/index.js.map +1 -0
  356. package/dist/es6/models/item-models.d.ts +106 -0
  357. package/dist/es6/models/item-models.js +2 -0
  358. package/dist/es6/models/item-models.js.map +1 -0
  359. package/dist/es6/models/language-models.d.ts +11 -0
  360. package/dist/es6/models/language-models.js +2 -0
  361. package/dist/es6/models/language-models.js.map +1 -0
  362. package/dist/es6/models/responses.d.ts +71 -0
  363. package/dist/es6/models/responses.js +2 -0
  364. package/dist/es6/models/responses.js.map +1 -0
  365. package/dist/es6/models/taxonomy-models.d.ts +18 -0
  366. package/dist/es6/models/taxonomy-models.js +2 -0
  367. package/dist/es6/models/taxonomy-models.js.map +1 -0
  368. package/dist/es6/parser/implementation/async-browser-parser.class.d.ts +10 -0
  369. package/dist/es6/parser/implementation/async-browser-parser.class.js +137 -0
  370. package/dist/es6/parser/implementation/async-browser-parser.class.js.map +1 -0
  371. package/dist/es6/parser/implementation/browser-parser.class.d.ts +10 -0
  372. package/dist/es6/parser/implementation/browser-parser.class.js +121 -0
  373. package/dist/es6/parser/implementation/browser-parser.class.js.map +1 -0
  374. package/dist/es6/parser/index.d.ts +5 -0
  375. package/dist/es6/parser/index.js +6 -0
  376. package/dist/es6/parser/index.js.map +1 -0
  377. package/dist/es6/parser/parse-models.d.ts +67 -0
  378. package/dist/es6/parser/parse-models.js +13 -0
  379. package/dist/es6/parser/parse-models.js.map +1 -0
  380. package/dist/es6/parser/parser-configuration.d.ts +21 -0
  381. package/dist/es6/parser/parser-configuration.js +22 -0
  382. package/dist/es6/parser/parser-configuration.js.map +1 -0
  383. package/dist/es6/parser/parser.helper.d.ts +11 -0
  384. package/dist/es6/parser/parser.helper.js +87 -0
  385. package/dist/es6/parser/parser.helper.js.map +1 -0
  386. package/dist/es6/query/common/base-listing-query.class.d.ts +125 -0
  387. package/dist/es6/query/common/base-listing-query.class.js +217 -0
  388. package/dist/es6/query/common/base-listing-query.class.js.map +1 -0
  389. package/dist/es6/query/common/base-query.class.d.ts +68 -0
  390. package/dist/es6/query/common/base-query.class.js +101 -0
  391. package/dist/es6/query/common/base-query.class.js.map +1 -0
  392. package/dist/es6/query/element/element-query.class.d.ts +16 -0
  393. package/dist/es6/query/element/element-query.class.js +29 -0
  394. package/dist/es6/query/element/element-query.class.js.map +1 -0
  395. package/dist/es6/query/index.d.ts +10 -0
  396. package/dist/es6/query/index.js +11 -0
  397. package/dist/es6/query/index.js.map +1 -0
  398. package/dist/es6/query/item/multiple-items-query.class.d.ts +58 -0
  399. package/dist/es6/query/item/multiple-items-query.class.js +97 -0
  400. package/dist/es6/query/item/multiple-items-query.class.js.map +1 -0
  401. package/dist/es6/query/item/single-item-query.class.d.ts +35 -0
  402. package/dist/es6/query/item/single-item-query.class.js +60 -0
  403. package/dist/es6/query/item/single-item-query.class.js.map +1 -0
  404. package/dist/es6/query/items-feed/items-feed-query.class.d.ts +52 -0
  405. package/dist/es6/query/items-feed/items-feed-query.class.js +88 -0
  406. package/dist/es6/query/items-feed/items-feed-query.class.js.map +1 -0
  407. package/dist/es6/query/language/languages-query.class.d.ts +38 -0
  408. package/dist/es6/query/language/languages-query.class.js +68 -0
  409. package/dist/es6/query/language/languages-query.class.js.map +1 -0
  410. package/dist/es6/query/taxonomy/taxonomies-query.class.d.ts +33 -0
  411. package/dist/es6/query/taxonomy/taxonomies-query.class.js +60 -0
  412. package/dist/es6/query/taxonomy/taxonomies-query.class.js.map +1 -0
  413. package/dist/es6/query/taxonomy/taxonomy-query.class.d.ts +19 -0
  414. package/dist/es6/query/taxonomy/taxonomy-query.class.js +29 -0
  415. package/dist/es6/query/taxonomy/taxonomy-query.class.js.map +1 -0
  416. package/dist/es6/query/type/multiple-type-query.class.d.ts +15 -0
  417. package/dist/es6/query/type/multiple-type-query.class.js +27 -0
  418. package/dist/es6/query/type/multiple-type-query.class.js.map +1 -0
  419. package/dist/es6/query/type/single-type-query.class.d.ts +15 -0
  420. package/dist/es6/query/type/single-type-query.class.js +25 -0
  421. package/dist/es6/query/type/single-type-query.class.js.map +1 -0
  422. package/dist/es6/resolvers/index.d.ts +8 -0
  423. package/dist/es6/resolvers/index.js +9 -0
  424. package/dist/es6/resolvers/index.js.map +1 -0
  425. package/dist/es6/resolvers/property-name/camel-case-property-name-resolver.class.d.ts +2 -0
  426. package/dist/es6/resolvers/property-name/camel-case-property-name-resolver.class.js +9 -0
  427. package/dist/es6/resolvers/property-name/camel-case-property-name-resolver.class.js.map +1 -0
  428. package/dist/es6/resolvers/property-name/pascal-case-property-name-resolver.class.d.ts +2 -0
  429. package/dist/es6/resolvers/property-name/pascal-case-property-name-resolver.class.js +9 -0
  430. package/dist/es6/resolvers/property-name/pascal-case-property-name-resolver.class.js.map +1 -0
  431. package/dist/es6/resolvers/property-name/snake-case-property-name-resolver.class.d.ts +2 -0
  432. package/dist/es6/resolvers/property-name/snake-case-property-name-resolver.class.js +23 -0
  433. package/dist/es6/resolvers/property-name/snake-case-property-name-resolver.class.js.map +1 -0
  434. package/dist/es6/resolvers/rich-text/async/async-rich-text-html-resolver.d.ts +9 -0
  435. package/dist/es6/resolvers/rich-text/async/async-rich-text-html-resolver.js +91 -0
  436. package/dist/es6/resolvers/rich-text/async/async-rich-text-html-resolver.js.map +1 -0
  437. package/dist/es6/resolvers/rich-text/base/base-async-rich-text-resolver.d.ts +9 -0
  438. package/dist/es6/resolvers/rich-text/base/base-async-rich-text-resolver.js +13 -0
  439. package/dist/es6/resolvers/rich-text/base/base-async-rich-text-resolver.js.map +1 -0
  440. package/dist/es6/resolvers/rich-text/base/base-rich-text-resolver.d.ts +9 -0
  441. package/dist/es6/resolvers/rich-text/base/base-rich-text-resolver.js +13 -0
  442. package/dist/es6/resolvers/rich-text/base/base-rich-text-resolver.js.map +1 -0
  443. package/dist/es6/resolvers/rich-text/rich-text-resolver.models.d.ts +91 -0
  444. package/dist/es6/resolvers/rich-text/rich-text-resolver.models.js +2 -0
  445. package/dist/es6/resolvers/rich-text/rich-text-resolver.models.js.map +1 -0
  446. package/dist/es6/resolvers/rich-text/sync/rich-text-html-resolver.d.ts +9 -0
  447. package/dist/es6/resolvers/rich-text/sync/rich-text-html-resolver.js +73 -0
  448. package/dist/es6/resolvers/rich-text/sync/rich-text-html-resolver.js.map +1 -0
  449. package/dist/es6/resolvers/rich-text/sync/rich-text-json-resolver.d.ts +8 -0
  450. package/dist/es6/resolvers/rich-text/sync/rich-text-json-resolver.js +16 -0
  451. package/dist/es6/resolvers/rich-text/sync/rich-text-json-resolver.js.map +1 -0
  452. package/dist/es6/resolvers/rich-text/sync/rich-text-object-resolver.d.ts +16 -0
  453. package/dist/es6/resolvers/rich-text/sync/rich-text-object-resolver.js +145 -0
  454. package/dist/es6/resolvers/rich-text/sync/rich-text-object-resolver.js.map +1 -0
  455. package/dist/es6/sdk-info.generated.d.ts +2 -0
  456. package/dist/es6/sdk-info.generated.js +6 -0
  457. package/dist/es6/sdk-info.generated.js.map +1 -0
  458. package/dist/es6/services/base-delivery-query.service.d.ts +102 -0
  459. package/dist/es6/services/base-delivery-query.service.js +278 -0
  460. package/dist/es6/services/base-delivery-query.service.js.map +1 -0
  461. package/dist/es6/services/delivery-query.service.d.ts +72 -0
  462. package/dist/es6/services/delivery-query.service.js +167 -0
  463. package/dist/es6/services/delivery-query.service.js.map +1 -0
  464. package/dist/es6/services/index.d.ts +2 -0
  465. package/dist/es6/services/index.js +3 -0
  466. package/dist/es6/services/index.js.map +1 -0
  467. package/dist/es6/services/mapping.service.d.ts +68 -0
  468. package/dist/es6/services/mapping.service.js +115 -0
  469. package/dist/es6/services/mapping.service.js.map +1 -0
  470. package/dist/es6/utilities/delivery-url.helper.d.ts +5 -0
  471. package/dist/es6/utilities/delivery-url.helper.js +13 -0
  472. package/dist/es6/utilities/delivery-url.helper.js.map +1 -0
  473. package/dist/es6/utilities/guid.helper.d.ts +4 -0
  474. package/dist/es6/utilities/guid.helper.js +8 -0
  475. package/dist/es6/utilities/guid.helper.js.map +1 -0
  476. package/dist/es6/utilities/index.d.ts +4 -0
  477. package/dist/es6/utilities/index.js +5 -0
  478. package/dist/es6/utilities/index.js.map +1 -0
  479. package/dist/es6/utilities/linked-items.helper.d.ts +5 -0
  480. package/dist/es6/utilities/linked-items.helper.js +11 -0
  481. package/dist/es6/utilities/linked-items.helper.js.map +1 -0
  482. package/dist/es6/utilities/text-helper.d.ts +7 -0
  483. package/dist/es6/utilities/text-helper.js +22 -0
  484. package/dist/es6/utilities/text-helper.js.map +1 -0
  485. package/dist/esnext/client/delivery-client.d.ts +57 -0
  486. package/dist/esnext/client/delivery-client.factory.d.ts +3 -0
  487. package/dist/esnext/client/delivery-client.factory.js +5 -0
  488. package/dist/esnext/client/delivery-client.factory.js.map +1 -0
  489. package/dist/esnext/client/delivery-client.js +83 -0
  490. package/dist/esnext/client/delivery-client.js.map +1 -0
  491. package/dist/esnext/client/idelivery-client.interface.d.ts +48 -0
  492. package/dist/esnext/client/idelivery-client.interface.js +2 -0
  493. package/dist/esnext/client/idelivery-client.interface.js.map +1 -0
  494. package/dist/esnext/client/index.d.ts +3 -0
  495. package/dist/esnext/client/index.js +4 -0
  496. package/dist/esnext/client/index.js.map +1 -0
  497. package/dist/esnext/config/delivery-configs.d.ts +80 -0
  498. package/dist/esnext/config/delivery-configs.js +2 -0
  499. package/dist/esnext/config/delivery-configs.js.map +1 -0
  500. package/dist/esnext/config/index.d.ts +1 -0
  501. package/dist/esnext/config/index.js +2 -0
  502. package/dist/esnext/config/index.js.map +1 -0
  503. package/dist/esnext/contracts/contracts.d.ts +189 -0
  504. package/dist/esnext/contracts/contracts.js +2 -0
  505. package/dist/esnext/contracts/contracts.js.map +1 -0
  506. package/dist/esnext/contracts/index.d.ts +1 -0
  507. package/dist/esnext/contracts/index.js +2 -0
  508. package/dist/esnext/contracts/index.js.map +1 -0
  509. package/dist/esnext/elements/element-models.d.ts +81 -0
  510. package/dist/esnext/elements/element-models.js +2 -0
  511. package/dist/esnext/elements/element-models.js.map +1 -0
  512. package/dist/esnext/elements/element-resolver.d.ts +2 -0
  513. package/dist/esnext/elements/element-resolver.js +2 -0
  514. package/dist/esnext/elements/element-resolver.js.map +1 -0
  515. package/dist/esnext/elements/element-type.d.ts +16 -0
  516. package/dist/esnext/elements/element-type.js +18 -0
  517. package/dist/esnext/elements/element-type.js.map +1 -0
  518. package/dist/esnext/elements/elements.d.ts +44 -0
  519. package/dist/esnext/elements/elements.js +2 -0
  520. package/dist/esnext/elements/elements.js.map +1 -0
  521. package/dist/esnext/elements/index.d.ts +4 -0
  522. package/dist/esnext/elements/index.js +5 -0
  523. package/dist/esnext/elements/index.js.map +1 -0
  524. package/dist/esnext/images/image-url-transformation-builder.d.ts +85 -0
  525. package/dist/esnext/images/image-url-transformation-builder.factory.d.ts +2 -0
  526. package/dist/esnext/images/image-url-transformation-builder.factory.js +5 -0
  527. package/dist/esnext/images/image-url-transformation-builder.factory.js.map +1 -0
  528. package/dist/esnext/images/image-url-transformation-builder.js +140 -0
  529. package/dist/esnext/images/image-url-transformation-builder.js.map +1 -0
  530. package/dist/esnext/images/image.models.d.ts +3 -0
  531. package/dist/esnext/images/image.models.js +2 -0
  532. package/dist/esnext/images/image.models.js.map +1 -0
  533. package/dist/esnext/images/index.d.ts +3 -0
  534. package/dist/esnext/images/index.js +4 -0
  535. package/dist/esnext/images/index.js.map +1 -0
  536. package/dist/esnext/index.d.ts +13 -0
  537. package/dist/esnext/index.js +15 -0
  538. package/dist/esnext/index.js.map +1 -0
  539. package/dist/esnext/mappers/element.mapper.d.ts +31 -0
  540. package/dist/esnext/mappers/element.mapper.js +337 -0
  541. package/dist/esnext/mappers/element.mapper.js.map +1 -0
  542. package/dist/esnext/mappers/generic-element.mapper.d.ts +5 -0
  543. package/dist/esnext/mappers/generic-element.mapper.js +15 -0
  544. package/dist/esnext/mappers/generic-element.mapper.js.map +1 -0
  545. package/dist/esnext/mappers/index.d.ts +6 -0
  546. package/dist/esnext/mappers/index.js +7 -0
  547. package/dist/esnext/mappers/index.js.map +1 -0
  548. package/dist/esnext/mappers/item.mapper.d.ts +46 -0
  549. package/dist/esnext/mappers/item.mapper.js +118 -0
  550. package/dist/esnext/mappers/item.mapper.js.map +1 -0
  551. package/dist/esnext/mappers/language.mapper.d.ts +6 -0
  552. package/dist/esnext/mappers/language.mapper.js +16 -0
  553. package/dist/esnext/mappers/language.mapper.js.map +1 -0
  554. package/dist/esnext/mappers/taxonomy.mapper.d.ts +11 -0
  555. package/dist/esnext/mappers/taxonomy.mapper.js +57 -0
  556. package/dist/esnext/mappers/taxonomy.mapper.js.map +1 -0
  557. package/dist/esnext/mappers/type.mapper.d.ts +7 -0
  558. package/dist/esnext/mappers/type.mapper.js +63 -0
  559. package/dist/esnext/mappers/type.mapper.js.map +1 -0
  560. package/dist/esnext/models/common/base-responses.d.ts +11 -0
  561. package/dist/esnext/models/common/base-responses.js +2 -0
  562. package/dist/esnext/models/common/base-responses.js.map +1 -0
  563. package/dist/esnext/models/common/common-models.d.ts +97 -0
  564. package/dist/esnext/models/common/common-models.js +9 -0
  565. package/dist/esnext/models/common/common-models.js.map +1 -0
  566. package/dist/esnext/models/common/filters.d.ts +108 -0
  567. package/dist/esnext/models/common/filters.js +277 -0
  568. package/dist/esnext/models/common/filters.js.map +1 -0
  569. package/dist/esnext/models/common/headers.d.ts +4 -0
  570. package/dist/esnext/models/common/headers.js +5 -0
  571. package/dist/esnext/models/common/headers.js.map +1 -0
  572. package/dist/esnext/models/common/index.d.ts +7 -0
  573. package/dist/esnext/models/common/index.js +8 -0
  574. package/dist/esnext/models/common/index.js.map +1 -0
  575. package/dist/esnext/models/common/pagination.class.d.ts +7 -0
  576. package/dist/esnext/models/common/pagination.class.js +2 -0
  577. package/dist/esnext/models/common/pagination.class.js.map +1 -0
  578. package/dist/esnext/models/common/parameters.d.ts +95 -0
  579. package/dist/esnext/models/common/parameters.js +163 -0
  580. package/dist/esnext/models/common/parameters.js.map +1 -0
  581. package/dist/esnext/models/common/sort-order.d.ts +1 -0
  582. package/dist/esnext/models/common/sort-order.js +2 -0
  583. package/dist/esnext/models/common/sort-order.js.map +1 -0
  584. package/dist/esnext/models/content-type-models.d.ts +32 -0
  585. package/dist/esnext/models/content-type-models.js +2 -0
  586. package/dist/esnext/models/content-type-models.js.map +1 -0
  587. package/dist/esnext/models/element-models.d.ts +39 -0
  588. package/dist/esnext/models/element-models.js +2 -0
  589. package/dist/esnext/models/element-models.js.map +1 -0
  590. package/dist/esnext/models/index.d.ts +7 -0
  591. package/dist/esnext/models/index.js +8 -0
  592. package/dist/esnext/models/index.js.map +1 -0
  593. package/dist/esnext/models/item-models.d.ts +106 -0
  594. package/dist/esnext/models/item-models.js +2 -0
  595. package/dist/esnext/models/item-models.js.map +1 -0
  596. package/dist/esnext/models/language-models.d.ts +11 -0
  597. package/dist/esnext/models/language-models.js +2 -0
  598. package/dist/esnext/models/language-models.js.map +1 -0
  599. package/dist/esnext/models/responses.d.ts +71 -0
  600. package/dist/esnext/models/responses.js +2 -0
  601. package/dist/esnext/models/responses.js.map +1 -0
  602. package/dist/esnext/models/taxonomy-models.d.ts +18 -0
  603. package/dist/esnext/models/taxonomy-models.js +2 -0
  604. package/dist/esnext/models/taxonomy-models.js.map +1 -0
  605. package/dist/esnext/parser/implementation/async-browser-parser.class.d.ts +10 -0
  606. package/dist/esnext/parser/implementation/async-browser-parser.class.js +137 -0
  607. package/dist/esnext/parser/implementation/async-browser-parser.class.js.map +1 -0
  608. package/dist/esnext/parser/implementation/browser-parser.class.d.ts +10 -0
  609. package/dist/esnext/parser/implementation/browser-parser.class.js +121 -0
  610. package/dist/esnext/parser/implementation/browser-parser.class.js.map +1 -0
  611. package/dist/esnext/parser/index.d.ts +5 -0
  612. package/dist/esnext/parser/index.js +6 -0
  613. package/dist/esnext/parser/index.js.map +1 -0
  614. package/dist/esnext/parser/parse-models.d.ts +67 -0
  615. package/dist/esnext/parser/parse-models.js +13 -0
  616. package/dist/esnext/parser/parse-models.js.map +1 -0
  617. package/dist/esnext/parser/parser-configuration.d.ts +21 -0
  618. package/dist/esnext/parser/parser-configuration.js +22 -0
  619. package/dist/esnext/parser/parser-configuration.js.map +1 -0
  620. package/dist/esnext/parser/parser.helper.d.ts +11 -0
  621. package/dist/esnext/parser/parser.helper.js +87 -0
  622. package/dist/esnext/parser/parser.helper.js.map +1 -0
  623. package/dist/esnext/query/common/base-listing-query.class.d.ts +125 -0
  624. package/dist/esnext/query/common/base-listing-query.class.js +217 -0
  625. package/dist/esnext/query/common/base-listing-query.class.js.map +1 -0
  626. package/dist/esnext/query/common/base-query.class.d.ts +68 -0
  627. package/dist/esnext/query/common/base-query.class.js +101 -0
  628. package/dist/esnext/query/common/base-query.class.js.map +1 -0
  629. package/dist/esnext/query/element/element-query.class.d.ts +16 -0
  630. package/dist/esnext/query/element/element-query.class.js +29 -0
  631. package/dist/esnext/query/element/element-query.class.js.map +1 -0
  632. package/dist/esnext/query/index.d.ts +10 -0
  633. package/dist/esnext/query/index.js +11 -0
  634. package/dist/esnext/query/index.js.map +1 -0
  635. package/dist/esnext/query/item/multiple-items-query.class.d.ts +58 -0
  636. package/dist/esnext/query/item/multiple-items-query.class.js +97 -0
  637. package/dist/esnext/query/item/multiple-items-query.class.js.map +1 -0
  638. package/dist/esnext/query/item/single-item-query.class.d.ts +35 -0
  639. package/dist/esnext/query/item/single-item-query.class.js +60 -0
  640. package/dist/esnext/query/item/single-item-query.class.js.map +1 -0
  641. package/dist/esnext/query/items-feed/items-feed-query.class.d.ts +52 -0
  642. package/dist/esnext/query/items-feed/items-feed-query.class.js +88 -0
  643. package/dist/esnext/query/items-feed/items-feed-query.class.js.map +1 -0
  644. package/dist/esnext/query/language/languages-query.class.d.ts +38 -0
  645. package/dist/esnext/query/language/languages-query.class.js +68 -0
  646. package/dist/esnext/query/language/languages-query.class.js.map +1 -0
  647. package/dist/esnext/query/taxonomy/taxonomies-query.class.d.ts +33 -0
  648. package/dist/esnext/query/taxonomy/taxonomies-query.class.js +60 -0
  649. package/dist/esnext/query/taxonomy/taxonomies-query.class.js.map +1 -0
  650. package/dist/esnext/query/taxonomy/taxonomy-query.class.d.ts +19 -0
  651. package/dist/esnext/query/taxonomy/taxonomy-query.class.js +29 -0
  652. package/dist/esnext/query/taxonomy/taxonomy-query.class.js.map +1 -0
  653. package/dist/esnext/query/type/multiple-type-query.class.d.ts +15 -0
  654. package/dist/esnext/query/type/multiple-type-query.class.js +27 -0
  655. package/dist/esnext/query/type/multiple-type-query.class.js.map +1 -0
  656. package/dist/esnext/query/type/single-type-query.class.d.ts +15 -0
  657. package/dist/esnext/query/type/single-type-query.class.js +25 -0
  658. package/dist/esnext/query/type/single-type-query.class.js.map +1 -0
  659. package/dist/esnext/resolvers/index.d.ts +8 -0
  660. package/dist/esnext/resolvers/index.js +9 -0
  661. package/dist/esnext/resolvers/index.js.map +1 -0
  662. package/dist/esnext/resolvers/property-name/camel-case-property-name-resolver.class.d.ts +2 -0
  663. package/dist/esnext/resolvers/property-name/camel-case-property-name-resolver.class.js +9 -0
  664. package/dist/esnext/resolvers/property-name/camel-case-property-name-resolver.class.js.map +1 -0
  665. package/dist/esnext/resolvers/property-name/pascal-case-property-name-resolver.class.d.ts +2 -0
  666. package/dist/esnext/resolvers/property-name/pascal-case-property-name-resolver.class.js +9 -0
  667. package/dist/esnext/resolvers/property-name/pascal-case-property-name-resolver.class.js.map +1 -0
  668. package/dist/esnext/resolvers/property-name/snake-case-property-name-resolver.class.d.ts +2 -0
  669. package/dist/esnext/resolvers/property-name/snake-case-property-name-resolver.class.js +23 -0
  670. package/dist/esnext/resolvers/property-name/snake-case-property-name-resolver.class.js.map +1 -0
  671. package/dist/esnext/resolvers/rich-text/async/async-rich-text-html-resolver.d.ts +9 -0
  672. package/dist/esnext/resolvers/rich-text/async/async-rich-text-html-resolver.js +91 -0
  673. package/dist/esnext/resolvers/rich-text/async/async-rich-text-html-resolver.js.map +1 -0
  674. package/dist/esnext/resolvers/rich-text/base/base-async-rich-text-resolver.d.ts +9 -0
  675. package/dist/esnext/resolvers/rich-text/base/base-async-rich-text-resolver.js +13 -0
  676. package/dist/esnext/resolvers/rich-text/base/base-async-rich-text-resolver.js.map +1 -0
  677. package/dist/esnext/resolvers/rich-text/base/base-rich-text-resolver.d.ts +9 -0
  678. package/dist/esnext/resolvers/rich-text/base/base-rich-text-resolver.js +13 -0
  679. package/dist/esnext/resolvers/rich-text/base/base-rich-text-resolver.js.map +1 -0
  680. package/dist/esnext/resolvers/rich-text/rich-text-resolver.models.d.ts +91 -0
  681. package/dist/esnext/resolvers/rich-text/rich-text-resolver.models.js +2 -0
  682. package/dist/esnext/resolvers/rich-text/rich-text-resolver.models.js.map +1 -0
  683. package/dist/esnext/resolvers/rich-text/sync/rich-text-html-resolver.d.ts +9 -0
  684. package/dist/esnext/resolvers/rich-text/sync/rich-text-html-resolver.js +73 -0
  685. package/dist/esnext/resolvers/rich-text/sync/rich-text-html-resolver.js.map +1 -0
  686. package/dist/esnext/resolvers/rich-text/sync/rich-text-json-resolver.d.ts +8 -0
  687. package/dist/esnext/resolvers/rich-text/sync/rich-text-json-resolver.js +16 -0
  688. package/dist/esnext/resolvers/rich-text/sync/rich-text-json-resolver.js.map +1 -0
  689. package/dist/esnext/resolvers/rich-text/sync/rich-text-object-resolver.d.ts +16 -0
  690. package/dist/esnext/resolvers/rich-text/sync/rich-text-object-resolver.js +145 -0
  691. package/dist/esnext/resolvers/rich-text/sync/rich-text-object-resolver.js.map +1 -0
  692. package/dist/esnext/sdk-info.generated.d.ts +2 -0
  693. package/dist/esnext/sdk-info.generated.js +6 -0
  694. package/dist/esnext/sdk-info.generated.js.map +1 -0
  695. package/dist/esnext/services/base-delivery-query.service.d.ts +102 -0
  696. package/dist/esnext/services/base-delivery-query.service.js +278 -0
  697. package/dist/esnext/services/base-delivery-query.service.js.map +1 -0
  698. package/dist/esnext/services/delivery-query.service.d.ts +72 -0
  699. package/dist/esnext/services/delivery-query.service.js +167 -0
  700. package/dist/esnext/services/delivery-query.service.js.map +1 -0
  701. package/dist/esnext/services/index.d.ts +2 -0
  702. package/dist/esnext/services/index.js +3 -0
  703. package/dist/esnext/services/index.js.map +1 -0
  704. package/dist/esnext/services/mapping.service.d.ts +68 -0
  705. package/dist/esnext/services/mapping.service.js +115 -0
  706. package/dist/esnext/services/mapping.service.js.map +1 -0
  707. package/dist/esnext/utilities/delivery-url.helper.d.ts +5 -0
  708. package/dist/esnext/utilities/delivery-url.helper.js +13 -0
  709. package/dist/esnext/utilities/delivery-url.helper.js.map +1 -0
  710. package/dist/esnext/utilities/guid.helper.d.ts +4 -0
  711. package/dist/esnext/utilities/guid.helper.js +8 -0
  712. package/dist/esnext/utilities/guid.helper.js.map +1 -0
  713. package/dist/esnext/utilities/index.d.ts +4 -0
  714. package/dist/esnext/utilities/index.js +5 -0
  715. package/dist/esnext/utilities/index.js.map +1 -0
  716. package/dist/esnext/utilities/linked-items.helper.d.ts +5 -0
  717. package/dist/esnext/utilities/linked-items.helper.js +11 -0
  718. package/dist/esnext/utilities/linked-items.helper.js.map +1 -0
  719. package/dist/esnext/utilities/text-helper.d.ts +7 -0
  720. package/dist/esnext/utilities/text-helper.js +22 -0
  721. package/dist/esnext/utilities/text-helper.js.map +1 -0
  722. package/lib/client/delivery-client.factory.ts +6 -0
  723. package/lib/client/delivery-client.ts +114 -0
  724. package/lib/client/idelivery-client.interface.ts +68 -0
  725. package/lib/client/index.ts +3 -0
  726. package/lib/config/delivery-configs.ts +98 -0
  727. package/lib/config/index.ts +1 -0
  728. package/lib/contracts/contracts.ts +222 -0
  729. package/lib/contracts/index.ts +1 -0
  730. package/lib/elements/element-models.ts +95 -0
  731. package/lib/elements/element-resolver.ts +3 -0
  732. package/lib/elements/element-type.ts +16 -0
  733. package/lib/elements/elements.ts +62 -0
  734. package/lib/elements/index.ts +4 -0
  735. package/lib/images/image-url-transformation-builder.factory.ts +5 -0
  736. package/lib/images/image-url-transformation-builder.ts +181 -0
  737. package/lib/images/image.models.ts +4 -0
  738. package/lib/images/index.ts +3 -0
  739. package/lib/index.ts +15 -0
  740. package/lib/mappers/element.mapper.ts +502 -0
  741. package/lib/mappers/generic-element.mapper.ts +18 -0
  742. package/lib/mappers/index.ts +6 -0
  743. package/lib/mappers/item.mapper.ts +164 -0
  744. package/lib/mappers/language.mapper.ts +20 -0
  745. package/lib/mappers/taxonomy.mapper.ts +77 -0
  746. package/lib/mappers/type.mapper.ts +78 -0
  747. package/lib/models/common/base-responses.ts +13 -0
  748. package/lib/models/common/common-models.ts +118 -0
  749. package/lib/models/common/filters.ts +280 -0
  750. package/lib/models/common/headers.ts +5 -0
  751. package/lib/models/common/index.ts +7 -0
  752. package/lib/models/common/pagination.class.ts +7 -0
  753. package/lib/models/common/parameters.ts +166 -0
  754. package/lib/models/common/sort-order.ts +1 -0
  755. package/lib/models/content-type-models.ts +42 -0
  756. package/lib/models/element-models.ts +51 -0
  757. package/lib/models/index.ts +8 -0
  758. package/lib/models/item-models.ts +130 -0
  759. package/lib/models/language-models.ts +17 -0
  760. package/lib/models/responses.ts +91 -0
  761. package/lib/models/taxonomy-models.ts +25 -0
  762. package/lib/parser/implementation/async-browser-parser.class.ts +236 -0
  763. package/lib/parser/implementation/browser-parser.class.ts +235 -0
  764. package/lib/parser/index.ts +5 -0
  765. package/lib/parser/parse-models.ts +93 -0
  766. package/lib/parser/parser-configuration.ts +23 -0
  767. package/lib/parser/parser.helper.ts +103 -0
  768. package/lib/query/common/base-listing-query.class.ts +261 -0
  769. package/lib/query/common/base-query.class.ts +129 -0
  770. package/lib/query/element/element-query.class.ts +50 -0
  771. package/lib/query/index.ts +10 -0
  772. package/lib/query/item/multiple-items-query.class.ts +125 -0
  773. package/lib/query/item/single-item-query.class.ts +80 -0
  774. package/lib/query/items-feed/items-feed-query.class.ts +113 -0
  775. package/lib/query/language/languages-query.class.ts +96 -0
  776. package/lib/query/taxonomy/taxonomies-query.class.ts +93 -0
  777. package/lib/query/taxonomy/taxonomy-query.class.ts +46 -0
  778. package/lib/query/type/multiple-type-query.class.ts +48 -0
  779. package/lib/query/type/single-type-query.class.ts +41 -0
  780. package/lib/resolvers/index.ts +10 -0
  781. package/lib/resolvers/property-name/camel-case-property-name-resolver.class.ts +11 -0
  782. package/lib/resolvers/property-name/pascal-case-property-name-resolver.class.ts +11 -0
  783. package/lib/resolvers/property-name/snake-case-property-name-resolver.class.ts +29 -0
  784. package/lib/resolvers/rich-text/async/async-rich-text-html-resolver.ts +92 -0
  785. package/lib/resolvers/rich-text/base/base-async-rich-text-resolver.ts +16 -0
  786. package/lib/resolvers/rich-text/base/base-rich-text-resolver.ts +16 -0
  787. package/lib/resolvers/rich-text/rich-text-resolver.models.ts +117 -0
  788. package/lib/resolvers/rich-text/sync/rich-text-html-resolver.ts +87 -0
  789. package/lib/resolvers/rich-text/sync/rich-text-json-resolver.ts +23 -0
  790. package/lib/resolvers/rich-text/sync/rich-text-object-resolver.ts +181 -0
  791. package/lib/sdk-info.generated.ts +7 -0
  792. package/lib/services/base-delivery-query.service.ts +335 -0
  793. package/lib/services/delivery-query.service.ts +259 -0
  794. package/lib/services/index.ts +2 -0
  795. package/lib/services/mapping.service.ts +171 -0
  796. package/lib/utilities/delivery-url.helper.ts +17 -0
  797. package/lib/utilities/guid.helper.ts +9 -0
  798. package/lib/utilities/index.ts +4 -0
  799. package/lib/utilities/linked-items.helper.ts +16 -0
  800. package/lib/utilities/text-helper.ts +25 -0
  801. package/package.json +94 -0
  802. package/readme.md +819 -0
package/readme.md ADDED
@@ -0,0 +1,819 @@
1
+ [![npm version](https://badge.fury.io/js/%40kontent-ai%2Fdelivery-sdk.svg)](https://badge.fury.io/js/%40kontent-ai%2Fdelivery-sdk)
2
+ [![Build](https://github.com/kontent-ai/delivery-sdk-js/actions/workflows/test.yml/badge.svg)](https://github.com/kontent-ai/delivery-sdk-js/actions/workflows/test.yml)
3
+ [![npm](https://img.shields.io/npm/dt/@kontent-ai/delivery-sdk.svg)](https://www.npmjs.com/package/@kontent-ai/delivery-sdk)
4
+ [![Known Vulnerabilities](https://snyk.io/test/github/kontent-ai/delivery-sdk/badge.svg)](https://snyk.io/test/github/kontent-ai/delivery-sdk-js)
5
+ [![GitHub license](https://img.shields.io/github/license/kontent-ai/delivery-sdk-js.svg)](https://github.com/kontent-ai/delivery-sdk-js)
6
+ ![Gzip browser bundle](https://img.badgesize.io/https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk/bundles/dist/kontent-delivery.browser.umd.min.js?compression=gzip)
7
+
8
+ [![Discord](https://img.shields.io/discord/821885171984891914?label=Discord&logo=Discord&logoColor=white)](https://discord.gg/SKCxwPtevJ)
9
+
10
+ # JavaScript Delivery SDK Documentation
11
+
12
+ JavaScript Delivery SDK is a client library for retrieving data from [Kontent.ai](https://kontent.ai/). Works
13
+ both in browser & node.js environments.
14
+
15
+ # Kontent Delivery SDK
16
+
17
+ ## Installation
18
+
19
+ You can install this library using `npm` or you can use global CDNs such `jsdelivr`.
20
+
21
+ ### npm
22
+
23
+ ```
24
+ npm i @kontent-ai/delivery-sdk --save
25
+ ```
26
+
27
+ ### UMD Bundles
28
+
29
+ When using UMD bundle and including this library in `script` tag on your `html` page, you can find it under the
30
+ `kontentDelivery` global variable.
31
+
32
+ Bundles are distributed in `dist/_bundles` folder:
33
+
34
+ - `dist/_bundles/kontent-delivery.umd.js`
35
+ - `dist/_bundles/kontent-delivery.umd.min.js`
36
+
37
+ #### CDN
38
+
39
+ ##### kontent-delivery.umd.js
40
+
41
+ ![Gzip UMD bundle](https://img.badgesize.io/https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk@11.0.0/dist/bundles/kontent-delivery.umd.js?compression=gzip)
42
+
43
+ ```
44
+ https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk@11.0.0/dist/bundles/kontent-delivery.umd.js
45
+ ```
46
+
47
+ ##### kontent-delivery.umd.min.js
48
+
49
+ ![Gzip UMD Minified bundle](https://img.badgesize.io/https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk@11.0.0/dist/bundles/kontent-delivery.umd.min.js?compression=gzip)
50
+
51
+ ```
52
+ https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk@11.0.0/dist/bundles/kontent-delivery.umd.min.js
53
+ ```
54
+
55
+ ## TypeScript & ES6
56
+
57
+ ```typescript
58
+ import { IContentItem, Elements, createDeliveryClient } from '@kontent-ai/delivery-sdk';
59
+
60
+ /**
61
+ * Defining models is optional, but will greatly benefit development
62
+ * experience & further maintenance of your code
63
+ */
64
+ export type Movie = IContentItem<{
65
+ title: Elements.TextElement;
66
+ plot: Elements.RichTextElement;
67
+ released: Elements.DateTimeElement;
68
+ length: Elements.NumberElement;
69
+ poster: Elements.AssetsElement;
70
+ category: Elements.MultipleChoiceElement;
71
+ stars: Elements.LinkedItemsElement<Actor>;
72
+ seoname: Elements.UrlSlugElement;
73
+ releaseCategory: Elements.TaxonomyElement;
74
+ }>;
75
+
76
+ // initialize delivery client
77
+ const deliveryClient = createDeliveryClient({
78
+ projectId: '<YOUR_PROJECT_ID>'
79
+ });
80
+
81
+ // fetch items
82
+ const response = await deliveryClient.items<Movie>().type('<CONTENT_TYPE_CODENAME>').toPromise();
83
+
84
+ // read data of first item
85
+ const movieText = response.data.items[0].title.value;
86
+ ```
87
+
88
+ ## JavaScript & CommonJS
89
+
90
+ ```javascript
91
+ const KontentDelivery = require('@kontent-ai/delivery-sdk');
92
+
93
+ // initialize delivery client
94
+ const deliveryClient = KontentDelivery.createDeliveryClient({
95
+ projectId: '<YOUR_PROJECT_ID>',
96
+ });
97
+
98
+ // fetch items
99
+ const response = await deliveryClient.items()
100
+ .type('<CONTENT_TYPE_CODENAME>')
101
+ .toPromise();
102
+
103
+ // read data of first item
104
+ const movieText = response.data.items[0].title.value;
105
+ ```
106
+
107
+ ## HTML & UMD & CDN
108
+
109
+ ```html
110
+ <!DOCTYPE html>
111
+ <html>
112
+ <head>
113
+ <title>Kontent SDK - Html sample</title>
114
+ <script
115
+ type="text/javascript"
116
+ src="https://cdn.jsdelivr.net/npm/@kontent-ai/delivery-sdk@11.0.0/dist/bundles/kontent-delivery.umd.min.js"
117
+ ></script>
118
+ </head>
119
+ <body>
120
+ <script type="text/javascript">
121
+ var KontentDelivery = window['kontentDelivery'];
122
+
123
+ var deliveryClient = KontentDelivery.createDeliveryClient({
124
+ projectId: 'da5abe9f-fdad-4168-97cd-b3464be2ccb9'
125
+ });
126
+
127
+ deliveryClient
128
+ .items()
129
+ .type('movie')
130
+ .toPromise()
131
+ .then((response) => console.log(response));
132
+ </script>
133
+ <h1>See console</h1>
134
+ </body>
135
+ </html>
136
+ ```
137
+
138
+ ## SDK Documentation
139
+
140
+ ## Client configuration
141
+
142
+ Following is a list of configuration options for DeliveryClient (`IDeliveryClientConfig`):
143
+
144
+ | Property | type | description |
145
+ | ------------------- | :--------------------------------------: |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
146
+ | projectId | string | ProjectId of your Kontent project |
147
+ | elementResolver? | ElementResolver | Element resolver used to map custom elements |
148
+ | previewApiKey? | string | Preview API key used to get unpublished content items |
149
+ | defaultLanguage? | string | Sets default language that will be used for all queries unless overriden with query parameters |
150
+ | proxy? | IDeliveryClientProxyConfig | Can be used to configure custom URLs. Useful when you use reverse proxy or have a need to transform URL - e.g. to remove 'projectId' |
151
+ | secureApiKey? | string | Secured API key: Use secured API only when running on Node.JS server, otherwise you can expose your key |
152
+ | defaultQueryConfig? | IQueryConfig | Default configuration for all queries. Can be overriden by indidividual queries |
153
+ | httpService ? | IHttpService | Can be used to inject custom http service for performing requests |
154
+ | globalHeaders? | (queryConfig: IQueryConfig) => IHeader[] | Adds ability to add extra headers to each http request |
155
+ | retryStrategy? | IRetryStrategyOptions | Retry strategy configuration |
156
+ | linkedItemsReferenceHandler? | LinkedItemsReferenceHandler | Indicates if content items are automatically mapped. Available values: 'map' or 'ignore' |
157
+ | propertyNameResolver? | PropertyNameResolver | Used to map properties. Choose one of following default resolvers: `snakeCasePropertyNameResolver`, `pascalCasePropertyNameResolver` & `camelCasePropertyNameResolver` or create your own PropertyNameResolver function |
158
+ | assetsDomain? | string | Custom domain for assets. Changes url of assets in both asset & rich text elements |
159
+ | defaultRenditionPreset? | string | Codename of rendition preset to be applied by default to the base asset URL path when present. When set, the SDK will provide the URL of customized images by default. Right now the only supported preset codename is `default`. |
160
+
161
+ ### Create typed models
162
+
163
+ > Recommended:Use the [Model Generator](https://www.npmjs.com/package/@kontent-ai/model-generator) to automatically
164
+ > generate TypeScript models based on the content types in your Kontent project.
165
+
166
+ You may define optional models in Typescript representing your actual data defined in Kontent projects. You can also
167
+ auto-generate these models (see below).
168
+
169
+ ```typescript
170
+ import { IContentItem, Elements } from '@kontent-ai/delivery-sdk';
171
+
172
+ export type Movie = IContentItem<{
173
+ title: Elements.TextElement;
174
+ plot: Elements.RichTextElement;
175
+ released: Elements.DateTimeElement;
176
+ length: Elements.NumberElement;
177
+ poster: Elements.AssetsElement;
178
+ category: Elements.MultipleChoiceElement;
179
+ stars: Elements.LinkedItemsElement<Actor>;
180
+ seoname: Elements.UrlSlugElement;
181
+ releaseCategory: Elements.TaxonomyElement;
182
+ }>;
183
+ ```
184
+
185
+ ### Fetch data
186
+
187
+ To get multiple content items, use the `items` method. You can specify the content type with the `type` method:
188
+
189
+ ```typescript
190
+ deliveryClient.items<Movie>().type('typeCodename').toPromise();
191
+
192
+ deliveryClient.item<Movie>('itemCodename').toPromise();
193
+ ```
194
+
195
+ Supported elements: `TextElement`, `MultipleChoiceElement`, `DateTimeElement`, `RichTextElement`, `NumberElement`,
196
+ `AssetsElement`, `UrlSlugElement`, `TaxonomyElement`, `LinkedItemsElement` and `CustomElement`. Additionally you might
197
+ also get `UknownElement` or custom model if you register it for your custom elements.
198
+
199
+ #### Use custom models for Custom elements
200
+
201
+ You can register an `ElementResolver` to map custom elements into dedicated element models and work with data more
202
+ effectively.
203
+
204
+ For example, if you have a custom `color` element in your Kontent project with json data like:
205
+
206
+ ```json
207
+ "color": {
208
+ "type": "custom",
209
+ "name": "Color",
210
+ "value": "{\"red\":167,\"green\":96,\"blue\":197}"
211
+ }
212
+ ```
213
+
214
+ You can create a `ColorElement` type with strongly typed properties for `red`, `green` & `blue` values that you will
215
+ parse from the json.
216
+
217
+ ```typescript
218
+ import { ElementModels, Elements, createDeliveryClient } from '@kontent-ai/delivery-sdk';
219
+
220
+ type ColorElement = Elements.CustomElement<{
221
+ red: number;
222
+ green: number;
223
+ blue: number;
224
+ }>;
225
+ ```
226
+
227
+ To resolve your custom element into `ColorElement`, use the `ElementResolver` in your dleivery client config:
228
+
229
+ ```typescript
230
+ const client = createDeliveryClient({
231
+ projectId: '<YOUR_PROJECT_ID>',
232
+ elementResolver: (elementWrapper) => {
233
+ if (elementWrapper.rawElement.type === 'color') {
234
+ const parsed = JSON.parse(elementWrapper.rawElement.value);
235
+
236
+ return {
237
+ red: parsed.red,
238
+ green: parsed.green,
239
+ blue: parsed.blue
240
+ };
241
+ }
242
+
243
+ return undefined;
244
+ }
245
+ });
246
+ ```
247
+
248
+ You can then use this custom element type in your models:
249
+
250
+ ```typescript
251
+ type Movie = IContentItem<{
252
+ color: ColorElement;
253
+ title: Elements.TextElement;
254
+ }>;
255
+ ```
256
+
257
+ ### Query parameters
258
+
259
+ The SDK supports the following query parameters: `depthParameter`, `elementsParameter`, `limitParameter`,
260
+ `orderParameter`, `skipParameter` and `languageParameter`. For more information about the parameters, see the
261
+ [SDK query methods](#filter-content) below. You can also head over to
262
+ [Delivery API reference](https://kontent.ai/learn/reference/delivery-api#tag/Filtering-content).
263
+
264
+ ```typescript
265
+ // Gets 5 items based on the Movie type
266
+ deliveryClient.items<Movie>().type('movie').limitParameter(5).skipParameter(2).toPromise();
267
+ ```
268
+
269
+ #### Filter content
270
+
271
+ This example returns all **Movie** content items whose **title** element is equal to **Warrior**. Filters are also
272
+ considered query parameters and can be combined. See
273
+ [Content filtering in API reference](https://kontent.ai/learn/reference/delivery-api#tag/Filtering-content) for more
274
+ general examples.
275
+
276
+ Supported filters: `type`, `types`, `allFilter`, `anyFilter`, `containsFilter`, `equalsFilter`, `greaterThanFilter`,
277
+ `greaterThanOrEqualFilter`, `infilter`, `lessThanFilter`, `lessThanOrEqualFilter`, `rangeFilter`, `emptyFilter`,
278
+ `notEmptyFilter`, `notEqualsFilter`, `NotInFilter`.
279
+
280
+ ```typescript
281
+ // Gets items based on the Movie type with 'Warrior' in their 'Title' element
282
+ deliveryClient.items<Movie>().type('movie').equalsFilter('elements.title', 'Warrior').toPromise();
283
+ ```
284
+
285
+ ##### Filtering methods
286
+
287
+ | Filter | Description |
288
+ | ------------------------ | ------------------------------------------------------------------------------------- |
289
+ | type | Retrieve only content items based on the given type. |
290
+ | types | Retrieve only content items based on the given types. |
291
+ | allFilte | Element with an array of values contains the specified list of values. |
292
+ | anyFilter | Element with an array of values contains any value from the specified list of values. |
293
+ | containsFilter | Element with an array of values contains the specified value. |
294
+ | equalsFilter | Element value is the same as the specified value |
295
+ | greaterThanFilter | Element value is greater than the specified value. |
296
+ | greaterThanOrEqualFilter | Element value is greater than or equals the specified value. |
297
+ | infilter | Element value is in the specified list of values. |
298
+ | lessThanFilter | Element value is less than the specified value. |
299
+ | lessThanOrEqualFilter | Element value is less than or equals the specified value |
300
+ | rangeFilter | Element value falls in the specified range of two values, both inclusive. |
301
+ | emptyFilter | Property value is empty. |
302
+ | NotEmptyFilter | Property value is not empty. |
303
+ | notEqualsFilter | Property value does not equal the specified value. |
304
+ | notInFilter | Property value is not in the specified list of values. |
305
+
306
+ #### Sort content
307
+
308
+ You can sort data by using any of following methods:
309
+
310
+ ```typescript
311
+ deliveryClient.items<Movie>().type('movie').orderByDescending('elements.title').toPromise();
312
+ ```
313
+
314
+ ```typescript
315
+ deliveryClient.items<Movie>().type('movie').orderByAscending('elements.title').toPromise();
316
+ ```
317
+
318
+ ```typescript
319
+ deliveryClient.items<Movie>().type('movie').orderParameter('elements.title', 'desc').toPromise();
320
+ ```
321
+
322
+ ### Execute queries with custom URL
323
+
324
+ When you have an URL (i.e. for `next page` in paging, for testing purposes or just if you prefer to build it on your
325
+ own) and still want to leverage SDK functionality such as type mapping, property resolving etc., use `withUrl` parameter
326
+ on any query such as:
327
+
328
+ ```typescript
329
+ deliveryClient
330
+ .items<Movie>()
331
+ .withUrl('https://deliver.kontent.ai/da5abe9f-fdad-4168-97cd-b3464be2ccb9/items?system.type=movie')
332
+ .toPromise();
333
+ ```
334
+
335
+ ### Custom parameters
336
+
337
+ In case you need to use custom parameters to build up an URL, use `withParameter` method:
338
+
339
+ ```typescript
340
+ deliveryClient.items<Movie>().withParameter('name', 'value').toPromise();
341
+ ```
342
+
343
+ ### Get localized items
344
+
345
+ You can specify [language of items](https://kontent.ai/learn/tutorials/manage-kontent/projects/set-up-languages) with
346
+ `languageParameter` of a particular query. You can also define default language that will be used if `languageParameter`
347
+ is not used during the initialization of delivery client.
348
+
349
+ ```typescript
350
+ import { createDeliveryClient } from '@kontent-ai/delivery-sdk';
351
+
352
+ var deliveryClient = new createDeliveryClient({
353
+ projectId: '<YOUR_PROJECT_ID>',
354
+ defaultLanguage: 'es'
355
+ });
356
+
357
+ // Gets items in 'es' language because it is marked as default
358
+ deliveryClient.item('warrior').toPromise();
359
+
360
+ // Gets items in 'en' language because language parameter has priority over the default one
361
+ deliveryClient.item('warrior').languageParameter(`en`).toPromise();
362
+ ```
363
+
364
+ ### Property name resolvers
365
+
366
+ Kontent element codenames are always in **lowercase** and use **underscore** as a replacement for special characters.
367
+ Using underscores might not be what you want to use in your code. Maybe you want to use `camelCase`, which is exactly
368
+ what you can do by registering a `propertyNameResolver`. The following example converts `first_name` element name to
369
+ `firstName`.
370
+
371
+ ```typescript
372
+ import { ContentItem, Elements, createDeliveryClient } from '@kontent-ai/delivery-sdk';
373
+
374
+ type Actor = IContentItem<{
375
+ firstName: Elements.TextElement;
376
+ }>;
377
+
378
+ const deliveryClient = createDeliveryClient({
379
+ projectId: '<YOUR_PROJECT_ID>';
380
+ propertyNameResolver: (contentType, element) => {
381
+ if (element === 'first_name') {
382
+ return 'firstName';
383
+ }
384
+ return element;
385
+ }
386
+ });
387
+ ```
388
+
389
+ Rather then registering all elements manually, you can also use one of the built-in property name resolvers: `snakeCasePropertyNameResolver`, `pascalCasePropertyNameResolver` & `camelCasePropertyNameResolver`
390
+
391
+ ```typescript
392
+ import { createDeliveryClient, snakeCasePropertyNameResolver, pascalCasePropertyNameResolver, camelCasePropertyNameResolver } from '@kontent-ai/delivery-sdk';
393
+
394
+ const deliveryClient = createDeliveryClient({
395
+ projectId: '<YOUR_PROJECT_ID>';
396
+ propertyNameResolver: camelCasePropertyNameResolver,
397
+ // propertyNameResolver: snakeCasePropertyNameResolver,
398
+ // propertyNameResolver: pascalCasePropertyNameResolver,
399
+ });
400
+ ```
401
+
402
+ ### Preview mode
403
+
404
+ You can enable the preview mode either globally (when [initializing the DeliveryClient](#how-to-use-deliveryclient)) or
405
+ per query. In each case, you need to set `previewApiKey` in the delivery client global configuration.
406
+
407
+ #### Enable preview mode globally
408
+
409
+ ```typescript
410
+ import { createDeliveryClient } from '@kontent-ai/delivery-sdk';
411
+
412
+ const deliveryClient = createDeliveryClient({
413
+ projectId: '<YOUR_PROJECT_ID>';
414
+ previewApiKey: '<YOUR_PREVIEW_API_KEY>',
415
+ defaultQueryConfig: {
416
+ usePreviewMode: true
417
+ }
418
+ });
419
+ ```
420
+
421
+ #### Enable preview mode per query
422
+
423
+ ```typescript
424
+ deliveryClient
425
+ .items()
426
+ .queryConfig({
427
+ usePreviewMode: true
428
+ })
429
+ .toPromise();
430
+ ```
431
+
432
+ ### Secure Delivery API
433
+
434
+ Using the Delivery API with [secure access](https://kontent.ai/learn/tutorials/develop-apps/build-strong-foundation/restrict-public-access) enabled
435
+ is recommend only when the request is not being executed on the client (browser) because otherwise you will expose the
436
+ API key publicly.
437
+
438
+ ```typescript
439
+ import { createDeliveryClient } from '@kontent-ai/delivery-sdk';
440
+
441
+ const deliveryClient = createDeliveryClient({
442
+ projectId: '<YOUR_PROJECT_ID>';
443
+ secureApiKey: '<YOUR_SECURE_ACCESS_KEY>',
444
+ defaultQueryConfig: {
445
+ // Enabled secure access for all queries
446
+ useSecuredMode: true
447
+ }
448
+ });
449
+ ```
450
+
451
+ As with [preview mode](#preview-mode), you can also override global settings on query level.
452
+
453
+ ```typescript
454
+ deliveryClient
455
+ .items()
456
+ .queryConfig({
457
+ // Enables secure access only for this query
458
+ useSecuredMode: true
459
+ })
460
+ .toPromise();
461
+ ```
462
+
463
+ ### Image transformation
464
+
465
+ Use `ImageUrlBuilder` for your [image transformations](https://kontent.ai/learn/reference/image-transformation) on asset
466
+ URLs.
467
+
468
+ ```typescript
469
+ import { transformImageUrl } from '@kontent-ai/delivery-sdk';
470
+
471
+ // Sample asset URL; You'll find URLs like these in asset and rich text elements
472
+ const assetUrl = `https://assets-eu-01.kc-usercontent.com/ede994d8-bb05-01b5-9c33-8b65e7372306/4f45e0a8-4fc3-4143-a81f-55b7e4ce7daa/warrior.jpg`;
473
+
474
+ const transformedUrl = transformImageUrl(assetUrl)
475
+ .withDpr(2)
476
+ .withCompression('lossless')
477
+ .withQuality(4)
478
+ .withHeight(200)
479
+ .withWidth(100)
480
+ .getUrl();
481
+ ```
482
+
483
+ ### Paging
484
+
485
+ All listing queries support automatic paging. To use automatic paging, use `toAllPromise` extension method:
486
+
487
+ ```typescript
488
+ // this executed multiple HTTP requests until it gets all items
489
+ const response = await deliveryClient.items().limitParameter(5).toAllPromise();
490
+ ```
491
+
492
+ Alternatively, you may also specify maximum number of pages you want to get:
493
+
494
+ ```typescript
495
+ // only gets 3 page at maximum
496
+ const response = await deliveryClient.items().limitParameter(5).toAllPromise({
497
+ pages: 3
498
+ });
499
+ ```
500
+
501
+ ### Resolving rich text elements
502
+
503
+ [Rich text elements](https://kontent.ai/learn/reference/delivery-api#section/Rich-text-element) in
504
+ Kontent.ai may contain linked items and components. For example, if you write a blog post, you might want to
505
+ insert a video or testimonial to a specific place in your article.
506
+
507
+ You need to define how these objects resolve to the HTML that will be rendered. This SDK provides you with few resolvers
508
+ that help you to transform the input HTML to your desired HTML, JSON or object.
509
+
510
+ Built-in resolvers provided by SDK:
511
+
512
+ Resolver | Description | Usage
513
+ --- | --- | --- |
514
+ `RichTextHtmlResolver` | Tranforms rich text HTML by replacing linked items, links or images with custom HTML | `createRichTextHtmlResolver().resolveRichText(data)`
515
+ `RichTextJsonResolver` | Tranforms rich text HTML into JSON | `createRichTextJsonResolver().resolveRichText(data)`
516
+ `RichTextObjectResolver` | Tranforms rich text HTML into javascript Object | `createRichTextObjectResolver().resolveRichText(data)`
517
+ `AsyncRichTextHtmlResolver` | Async version of `RichTextHtmlResolver` | `await createAsyncRichTextHtmlResolver().resolveRichTextAsync(data)`
518
+
519
+ #### Example use of RichTextHtmlResolver
520
+
521
+ ```typescript
522
+ import { createRichTextHtmlResolver, createDeliveryClient, linkedItemsHelper } from '@kontent-ai/delivery-sdk';
523
+
524
+ export type Movie = IContentItem<{
525
+ plot: Elements.RichTextElement;
526
+ }>;
527
+
528
+ export type Actor = IContentItem<{
529
+ firstName: Elements.RichTextElement;
530
+ }>;
531
+
532
+ // get content item with rich text element
533
+ const response = (await createDeliveryClient({ projectId: '<YOUR_PROJECT_ID>' }).item<Movie>('itemCodename').toPromise()).data;
534
+
535
+ // get rich text element
536
+ const richTextElement = response.item.plot;
537
+
538
+ // resolve HTML
539
+ const resolvedRichText = createRichTextHtmlResolver().resolveRichText({
540
+ element: richTextElement,
541
+ linkedItems: linkedItemsHelper.convertLinkedItemsToArray(response.linkedItems),
542
+ imageResolver: (imageId, image) => {
543
+ return {
544
+ imageHtml: `<img class="xImage" src="${image?.url}">`,
545
+ // alternatively you may return just url
546
+ imageUrl: 'customUrl'
547
+ };
548
+ },
549
+ urlResolver: (linkId, linkText, link) => {
550
+ return {
551
+ linkHtml: `<a class="xLink">${link?.link?.urlSlug}</a>`,
552
+ // alternatively you may return just url
553
+ linkUrl: 'customUrl'
554
+ };
555
+ },
556
+ contentItemResolver: (itemId, contentItem) => {
557
+ if (contentItem && contentItem.system.type === 'actor') {
558
+ const actor = contentItem as Actor;
559
+ return {
560
+ contentItemHtml: `<div class="xClass">${actor.elements.firstName.value}</div>`
561
+ };
562
+ }
563
+
564
+ return {
565
+ contentItemHtml: ''
566
+ };
567
+ }
568
+ });
569
+
570
+ const resolvedHtml = resolvedRichText.html;
571
+ ```
572
+
573
+ #### Example use of RichTextJsonResolver
574
+
575
+ ```typescript
576
+ import { createRichTextHtmlResolver, createDeliveryClient, linkedItemsHelper } from '@kontent-ai/delivery-sdk';
577
+
578
+ // get content item with rich text element
579
+ const response = (await createDeliveryClient({ projectId: '<YOUR_PROJECT_ID>' }).item<Movie>('itemCodename').toPromise()).data;
580
+
581
+ // get rich text element
582
+ const richTextElement = response.item.plot;
583
+
584
+ // transform rich text html into json
585
+ const json = createRichTextJsonResolver().resolveRichText({
586
+ element: response.item.elements.plot,
587
+ linkedItems: linkedItemsHelper.convertLinkedItemsToArray(response.linkedItems),
588
+ });
589
+ ```
590
+
591
+ #### Resolving rich text in node.js
592
+
593
+ If you need to resolve rich text in `node.js`, you have to install following parser:
594
+
595
+ ```
596
+ npm i @kontent-ai/delivery-sdk-node-parser --save
597
+ ```
598
+
599
+ Once installed, it can be used by passing the parser to rich text resolver:
600
+
601
+ ```typescript
602
+ import { createRichTextHtmlResolver, createAsyncRichTextHtmlResolver } from '@kontent-ai/delivery-sdk';
603
+ import { nodeParser, asyncNodeParser } from '@kontent-ai/delivery-sdk-node-parser';
604
+
605
+ // transform rich text html into json
606
+ const json = createRichTextHtmlResolver(nodeParser).resolveRichText(data);
607
+
608
+ // or
609
+ const html = await createAsyncRichTextHtmlResolver(asyncNodeParser).resolveRichTextAsync(data);
610
+ ```
611
+
612
+ ### Creating custom rich text resolvers
613
+
614
+ This SDK provides you with `browserParser` which you can use to implement your own rich text resolver. A common usecase for creating custom resolvers is when you want to convert rich text element into, for example, `react components`, `angular commponents` or components in some other popular framework. The parser will take care of actually parsing html, while you can focus on creating specific logic for creating components dynamically.
615
+
616
+ ## Get content types
617
+
618
+ To retrieve information about your content types, you can use the `type` and `types` methods.
619
+
620
+ ```typescript
621
+ deliveryClient
622
+ .type('movie') // codename of the type
623
+ .toPromise();
624
+
625
+ deliveryClient.types().toPromise();
626
+
627
+ deliveryClient.types().toAllPromise();
628
+ ```
629
+
630
+ ## Get taxonomies
631
+
632
+ To retrieve information about your taxonomies, you can use the `taxonomy` and `taxonomies` methods.
633
+
634
+ ```typescript
635
+ deliveryClient
636
+ .taxonomy('taxonomyGroupName') // codename of the Taxonomy group
637
+ .toPromise();
638
+
639
+ deliveryClient.taxonomies().toPromise();
640
+
641
+ deliveryClient.taxonomies().toAllPromise();
642
+ ```
643
+
644
+ ## Proxy configuration
645
+
646
+ If you want to use a proxy server, you need to use different domain or otherwise transform URL. By using `proxy`
647
+ configuration option you can define your own base domains as well as URL format. This is useful if you need to for
648
+ example hide the `projectId` from URL.
649
+
650
+ `IDeliveryClientProxyConfig` offers 3 ways of configuring proxy url:
651
+
652
+ 1. `baseUrl` - Base url used for all requests. Defaults to 'deliver.kontent.ai'
653
+ 2. `basePreviewUrl` - Base url used for preview reqeusts. Defaults to 'preview-deliver.kontent.ai'
654
+ 3. `advancedProxyUrlResolver` - Resolver function where you get `IProxyUrlData` context data (includes domain, action,
655
+ query parameters..) and can fully customize final URL.
656
+
657
+ Examples:
658
+
659
+ ```typescript
660
+ const client = createDeliveryClient({
661
+ projectId: '<YOUR_PROJECT_ID>',
662
+ // Will be used instead of 'https://deliver.kontent.ai' for all requests.
663
+ // Parameters, filters, project Id and other parts of URL will use default values.
664
+ proxy: {
665
+ baseUrl: 'http://my-proxy.io'
666
+ }
667
+ });
668
+ ```
669
+
670
+ ```typescript
671
+ const client = createDeliveryClient({
672
+ projectId: '<YOUR_PROJECT_ID>',
673
+ proxy: {
674
+ advancedProxyUrlResolver: (data) => {
675
+ const action = data.action; // /items
676
+ const domain = data.domain; // https://deliver.kontent.ai
677
+ const projectId = data.projectId; // xxx
678
+ const queryString = data.queryString; // e.g. ?depth=1&elements=xElement
679
+ const queryParameters = data.queryParameters; // array with query parameters parameters
680
+ const queryConfig = data.queryConfig; // query configuration
681
+ return `http://my-proxy.io${action}${queryString}`; // proxy url with omitted project Id
682
+ }
683
+ }
684
+ });
685
+ ```
686
+
687
+ ## Error handling
688
+
689
+ If the error originates in Kontent.ai (see [error responses](https://kontent.ai/learn/reference/delivery-api#section/SDKs)), you will get a `DeliveryError` object
690
+ instance with more specific information. Otherwise, you will get original error.
691
+
692
+ ```typescript
693
+ import { DeliveryError } from '@kontent-ai/delivery-sdk';
694
+
695
+ try {
696
+ await deliveryClient.item('invalid_codename').toPromise();
697
+ } catch (error) {
698
+ if (error instanceof DeliveryError) {
699
+ // delivery specific error (e.g. item with codename not found...)
700
+ console.log(err.message, err.errorCode);
701
+ } else {
702
+ // some other error
703
+ console.log(error);
704
+ }
705
+ }
706
+ ```
707
+
708
+ ### Remapping json responses
709
+
710
+ In some scenarios you might want to store `json` response for later use and use SDK to map the response for you. There are 2 ways you can map previously stored `json`:
711
+
712
+ ```typescript
713
+ const result = await deliveryClient.item<Movie>('codename').toPromise();
714
+
715
+ const json = result.response.data;
716
+
717
+ // approach #1
718
+ const remappedData = deliveryClient.mappingService.viewContentItemResponse<Movie>(json);
719
+
720
+ // approach #2
721
+ const remappedData = deliveryClient.item<Movie>(movieCodename).map(json);
722
+ ```
723
+
724
+ ### Handling circular references
725
+
726
+ By default the SDK automatically maps content items present in `linked items` & `rich text` elements. Linked items can reference other linked items in their tree (e.g. child item referencing parent) which may cause infinite nesting (circular reference). This behavior is not an issue for most scenarios, in fact it is beneficial as you can easily access all linked items. However, you cannot easily serialize such model. Using e.g. `JSON.stringify` would fail if there are circular references.
727
+
728
+ For this reason, you may disable mapping of linked items with `linkedItemsReferenceHandler` configuration option.
729
+
730
+ ```typescript
731
+ const client = getTestDeliveryClient({
732
+ projectId: '<YOUR_PROJECT_ID>',
733
+ linkedItemsReferenceHandler: 'ignore' // or 'map'
734
+ });
735
+ ```
736
+
737
+ ### Using custom HTTP service
738
+
739
+ The SDK allows you to inject your own instance of a class implementing the `IHttpService` interface. This way you can
740
+ easily mock responses, implement your own http service, or modify the requests in some other way.
741
+
742
+ Sample of a test `HttpService` implementation can be found at https://github.com/kontent-ai/core-sdk-js
743
+
744
+ Once you have your `HttpService`, use it in delivery client initialization:
745
+
746
+ ```typescript
747
+ const deliveryClient = createDeliveryClient({
748
+ projectId: '<YOUR_PROJECT_ID>',
749
+ httpService: YourHttpServiceImplementation
750
+ });
751
+ ```
752
+
753
+
754
+ ## Debugging
755
+
756
+ ### Accessing request data
757
+
758
+ Every response from this SDK contains additional debug data you can use to inspect when something is not right or if you
759
+ need to access response headers or other network related properties.
760
+
761
+ ```typescript
762
+ const deliveryResponse = await createDeliveryClient({ projectId: '<YOUR_PROJECT_ID' }).item('itemCodename').toPromise();
763
+ const rawResponseData = deliveryResponse.response; // contains raw response data, headers, status etc..
764
+ const responseHeaders = deliveryResponse.response.headers;
765
+ ```
766
+
767
+ ### Getting URL of a query
768
+
769
+ In case you need to get the raw URL of a request before calling it, use the `getUrl()` method on any query.
770
+
771
+ ```typescript
772
+ const queryText = deliveryClient
773
+ .items()
774
+ .type('movie')
775
+ .limitParameter(10)
776
+ .orderParameter('system.codename', 'desc')
777
+ .getUrl();
778
+
779
+ console.log(queryText);
780
+ // outputs:
781
+ // https://deliver.kontent.ai/b52fa0db-84ec-4310-8f7c-3b94ed06644d/items?limit=10&order=system.codename[desc]&system.type=movie
782
+ ```
783
+ ## Upgrade
784
+
785
+ The major version `11.0.0` is pretty much a complete overhaul of this SDK with many breaking changes. The major benefits
786
+ you can with `11.0.0` are:
787
+
788
+ - Greatly reduced package size (from `~318KB` to `~95KB`). When Gzipped, this library is now only `~19KB`
789
+ - Reduced complexity by removing `rxjs` as not everyone needs to use it
790
+ - Removed classes in favor of interfaces (again to reduce size of library)
791
+ - Automatic paging support for all listing queries
792
+ - Improved resolving of rich text elements along with the `async` support
793
+ - Simplified custom models without the need of `typeResolvers`
794
+ - Better retry strategy options
795
+ - More extension methods added for all queries that support it (feed listing, content type listing etc..)
796
+ - Removal of duplicate `raw` data to reduce the size of mapped responses while still being able to easily access debug
797
+ data with typed network response
798
+ - Simplified mapping of `json` data to SDK response (when you for example store `json` in cache and need to re-map it
799
+ later on)
800
+ - Updated all dependencies
801
+
802
+ If you are upgrading from older version, please see this documentation first. If you are still unsure how to upgrade or
803
+ have some other questions, feel free to submit an issue on this GitHub and we'll get back to you.
804
+
805
+ ## Testing
806
+
807
+ Note: You need to have `Chrome` installed in order to run tests via Karma.
808
+
809
+ - `npm run test:browser` Runs tests in Chrome
810
+ - `npm run test:node` Runs tests in node.js
811
+ - `npm run test:all` Runs all test
812
+
813
+ > If you want to mock http responses, it is possible to use
814
+ > [custom Http Service](https://github.com/kontent-ai/core-sdk-js#testing) as a part of the
815
+ > [delivery client configuration](#client-configuration).
816
+
817
+ ## Feedback & Contribution
818
+
819
+ Feedback & Contributions are welcomed. Feel free to take/start an issue & submit PR.