@zxncij2390/monorepo3 3.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (921) hide show
  1. package/.eslintignore +16 -0
  2. package/.eslintrc.cjs +150 -0
  3. package/.github/ISSUE_TEMPLATE/bug-report.yml +178 -0
  4. package/.github/ISSUE_TEMPLATE/enhancement.yml +99 -0
  5. package/.github/ISSUE_TEMPLATE/question.yml +72 -0
  6. package/.github/ISSUE_TEMPLATE.md +39 -0
  7. package/.github/PULL_REQUEST_TEMPLATE.md +24 -0
  8. package/.github/workflows/lock.yml +18 -0
  9. package/.github/workflows/publish-buildsystem.yml +34 -0
  10. package/.github/workflows/publish-docs.yml +21 -0
  11. package/.github/workflows/publish.yml +40 -0
  12. package/.github/workflows/pull_request.yaml +28 -0
  13. package/.github/workflows/push.yaml +32 -0
  14. package/.github/workflows/v3-nightly.yml +40 -0
  15. package/.mocharc.cjs +68 -0
  16. package/.vscode/launch.json +103 -0
  17. package/.vscode/settings.json +17 -0
  18. package/.vscode/tasks.json +124 -0
  19. package/AUTHORS +13 -0
  20. package/CHANGELOG.md +33 -0
  21. package/CODE_OF_CONDUCT.md +6 -0
  22. package/CONTRIBUTING.md +9 -0
  23. package/LICENSE +25 -0
  24. package/README.md +66 -0
  25. package/buildsystem-config.ts +146 -0
  26. package/debug/launch/graph.ts +20 -0
  27. package/debug/launch/main.ts +38 -0
  28. package/debug/launch/setup.ts +50 -0
  29. package/debug/launch/sp.ts +21 -0
  30. package/debug/launch/tsconfig.json +27 -0
  31. package/debug/serve/main.ts +47 -0
  32. package/debug/serve/plumbing/local-module-resolver-plugin.ts +68 -0
  33. package/debug/serve/plumbing/run.ts +24 -0
  34. package/debug/serve/plumbing/serve.ts +27 -0
  35. package/debug/serve/plumbing/webpack.config.ts +43 -0
  36. package/debug/serve/spa.html +12 -0
  37. package/debug/serve/tsconfig.json +15 -0
  38. package/debug/spfx/.eslintrc.js +352 -0
  39. package/debug/spfx/README.md +73 -0
  40. package/debug/spfx/package-lock.json +57299 -0
  41. package/debug/spfx/package.json +38 -0
  42. package/debug/spfx/pnpjs-local-debug-start.js +19 -0
  43. package/debug/spfx/teams/f4c0e5ff-c402-46b7-8073-8cc506808d06_color.png +0 -0
  44. package/debug/spfx/teams/f4c0e5ff-c402-46b7-8073-8cc506808d06_outline.png +0 -0
  45. package/docs/_theme/main.html +5 -0
  46. package/docs/azidjsclient/index.md +36 -0
  47. package/docs/concepts/adv-clientside-pages.md +169 -0
  48. package/docs/concepts/auth-browser.md +42 -0
  49. package/docs/concepts/auth-nodejs.md +101 -0
  50. package/docs/concepts/auth-spfx.md +76 -0
  51. package/docs/concepts/authentication.md +42 -0
  52. package/docs/concepts/batching-caching.md +77 -0
  53. package/docs/concepts/batching.md +257 -0
  54. package/docs/concepts/calling-other-endpoints.md +213 -0
  55. package/docs/concepts/custom-bundle.md +15 -0
  56. package/docs/concepts/error-handling.md +245 -0
  57. package/docs/concepts/invokable.md +7 -0
  58. package/docs/concepts/nightly-builds.md +19 -0
  59. package/docs/concepts/project-preset.md +123 -0
  60. package/docs/concepts/selective-imports.md +106 -0
  61. package/docs/concepts/typings.md +23 -0
  62. package/docs/contributing/debug-tests.md +76 -0
  63. package/docs/contributing/debugging.md +135 -0
  64. package/docs/contributing/documentation.md +34 -0
  65. package/docs/contributing/extending-the-library.md +223 -0
  66. package/docs/contributing/index.md +22 -0
  67. package/docs/contributing/local-debug-configuration.md +28 -0
  68. package/docs/contributing/npm-scripts.md +148 -0
  69. package/docs/contributing/pull-requests.md +27 -0
  70. package/docs/contributing/settings.md +98 -0
  71. package/docs/contributing/setup-dev-machine.md +36 -0
  72. package/docs/core/behavior-recipes.md +199 -0
  73. package/docs/core/behaviors.md +179 -0
  74. package/docs/core/moments.md +215 -0
  75. package/docs/core/observers.md +100 -0
  76. package/docs/core/storage.md +90 -0
  77. package/docs/core/timeline.md +190 -0
  78. package/docs/core/util.md +191 -0
  79. package/docs/css/extra.css +33 -0
  80. package/docs/getting-started.md +361 -0
  81. package/docs/graph/behaviors.md +267 -0
  82. package/docs/graph/bookings.md +180 -0
  83. package/docs/graph/calendars.md +270 -0
  84. package/docs/graph/cloud-communications.md +40 -0
  85. package/docs/graph/columns.md +125 -0
  86. package/docs/graph/contacts.md +298 -0
  87. package/docs/graph/content-types.md +193 -0
  88. package/docs/graph/directoryobjects.md +106 -0
  89. package/docs/graph/groups.md +164 -0
  90. package/docs/graph/insights.md +151 -0
  91. package/docs/graph/invitations.md +22 -0
  92. package/docs/graph/items.md +38 -0
  93. package/docs/graph/lists.md +87 -0
  94. package/docs/graph/messages.md +20 -0
  95. package/docs/graph/onedrive.md +614 -0
  96. package/docs/graph/outlook.md +82 -0
  97. package/docs/graph/photos.md +71 -0
  98. package/docs/graph/planner.md +249 -0
  99. package/docs/graph/search.md +25 -0
  100. package/docs/graph/shares.md +44 -0
  101. package/docs/graph/sites.md +47 -0
  102. package/docs/graph/subscriptions.md +79 -0
  103. package/docs/graph/teams.md +293 -0
  104. package/docs/graph/users.md +134 -0
  105. package/docs/img/ConsoleListenerColors.png +0 -0
  106. package/docs/img/Logo.png +0 -0
  107. package/docs/img/PnPJS_FluentAPI.gif +0 -0
  108. package/docs/img/SPFx-On-Premesis-2016-1.png +0 -0
  109. package/docs/img/TimelineArchitecture.jpg +0 -0
  110. package/docs/img/csp_copyccvalue.png +0 -0
  111. package/docs/img/csp_networktab.png +0 -0
  112. package/docs/img/office365-header-icon.png +0 -0
  113. package/docs/img/usage-2020-eoy.png +0 -0
  114. package/docs/img/usage-2021-eoy.png +0 -0
  115. package/docs/img/usage-2022-eoy.png +0 -0
  116. package/docs/index.md +56 -0
  117. package/docs/logging/index.md +262 -0
  118. package/docs/msaljsclient/index.md +33 -0
  119. package/docs/news/2020-year-in-review.md +162 -0
  120. package/docs/news/2021-year-in-review.md +148 -0
  121. package/docs/news/2022-year-in-review.md +122 -0
  122. package/docs/nodejs/behaviors.md +164 -0
  123. package/docs/nodejs/sp-extensions.md +99 -0
  124. package/docs/packages.md +53 -0
  125. package/docs/queryable/behaviors.md +496 -0
  126. package/docs/queryable/extensions.md +204 -0
  127. package/docs/queryable/queryable.md +385 -0
  128. package/docs/sp/alias-parameters.md +76 -0
  129. package/docs/sp/alm.md +139 -0
  130. package/docs/sp/attachments.md +157 -0
  131. package/docs/sp/behaviors.md +142 -0
  132. package/docs/sp/clientside-pages.md +1048 -0
  133. package/docs/sp/column-defaults.md +241 -0
  134. package/docs/sp/comments-likes.md +302 -0
  135. package/docs/sp/content-types.md +131 -0
  136. package/docs/sp/context-info.md +67 -0
  137. package/docs/sp/favorites.md +91 -0
  138. package/docs/sp/features.md +83 -0
  139. package/docs/sp/fields.md +668 -0
  140. package/docs/sp/files.md +559 -0
  141. package/docs/sp/folders.md +532 -0
  142. package/docs/sp/forms.md +22 -0
  143. package/docs/sp/groupSiteManager.md +40 -0
  144. package/docs/sp/hubsites.md +140 -0
  145. package/docs/sp/items.md +601 -0
  146. package/docs/sp/lists.md +572 -0
  147. package/docs/sp/navigation.md +171 -0
  148. package/docs/sp/permissions.md +82 -0
  149. package/docs/sp/profiles.md +407 -0
  150. package/docs/sp/publishing-sitepageservice.md +16 -0
  151. package/docs/sp/recycle-bin.md +72 -0
  152. package/docs/sp/regional-settings.md +108 -0
  153. package/docs/sp/related-items.md +136 -0
  154. package/docs/sp/search.md +207 -0
  155. package/docs/sp/security.md +196 -0
  156. package/docs/sp/sharing.md +273 -0
  157. package/docs/sp/site-designs.md +117 -0
  158. package/docs/sp/site-groups.md +144 -0
  159. package/docs/sp/site-scripts.md +123 -0
  160. package/docs/sp/site-users.md +211 -0
  161. package/docs/sp/sites.md +269 -0
  162. package/docs/sp/social.md +182 -0
  163. package/docs/sp/sp-utilities-utility.md +159 -0
  164. package/docs/sp/subscriptions.md +79 -0
  165. package/docs/sp/taxonomy.md +470 -0
  166. package/docs/sp/tenant-properties.md +55 -0
  167. package/docs/sp/user-custom-actions.md +95 -0
  168. package/docs/sp/views.md +226 -0
  169. package/docs/sp/webs.md +947 -0
  170. package/docs/sp-admin/index.md +139 -0
  171. package/docs/transition-guide.md +87 -0
  172. package/docs/v1/404.html +1611 -0
  173. package/docs/v1/assets/fonts/font-awesome.css +4 -0
  174. package/docs/v1/assets/fonts/material-icons.css +13 -0
  175. package/docs/v1/assets/fonts/specimen/FontAwesome.ttf +0 -0
  176. package/docs/v1/assets/fonts/specimen/FontAwesome.woff +0 -0
  177. package/docs/v1/assets/fonts/specimen/FontAwesome.woff2 +0 -0
  178. package/docs/v1/assets/fonts/specimen/MaterialIcons-Regular.ttf +0 -0
  179. package/docs/v1/assets/fonts/specimen/MaterialIcons-Regular.woff +0 -0
  180. package/docs/v1/assets/fonts/specimen/MaterialIcons-Regular.woff2 +0 -0
  181. package/docs/v1/assets/images/favicon.png +0 -0
  182. package/docs/v1/assets/images/icons/bitbucket.1b09e088.svg +20 -0
  183. package/docs/v1/assets/images/icons/github.f0b8504a.svg +18 -0
  184. package/docs/v1/assets/images/icons/gitlab.6dd19c00.svg +38 -0
  185. package/docs/v1/assets/javascripts/application.583bbe55.js +1 -0
  186. package/docs/v1/assets/javascripts/lunr/lunr.da.js +1 -0
  187. package/docs/v1/assets/javascripts/lunr/lunr.de.js +1 -0
  188. package/docs/v1/assets/javascripts/lunr/lunr.du.js +1 -0
  189. package/docs/v1/assets/javascripts/lunr/lunr.es.js +1 -0
  190. package/docs/v1/assets/javascripts/lunr/lunr.fi.js +1 -0
  191. package/docs/v1/assets/javascripts/lunr/lunr.fr.js +1 -0
  192. package/docs/v1/assets/javascripts/lunr/lunr.hu.js +1 -0
  193. package/docs/v1/assets/javascripts/lunr/lunr.it.js +1 -0
  194. package/docs/v1/assets/javascripts/lunr/lunr.jp.js +1 -0
  195. package/docs/v1/assets/javascripts/lunr/lunr.multi.js +1 -0
  196. package/docs/v1/assets/javascripts/lunr/lunr.no.js +1 -0
  197. package/docs/v1/assets/javascripts/lunr/lunr.pt.js +1 -0
  198. package/docs/v1/assets/javascripts/lunr/lunr.ro.js +1 -0
  199. package/docs/v1/assets/javascripts/lunr/lunr.ru.js +1 -0
  200. package/docs/v1/assets/javascripts/lunr/lunr.stemmer.support.js +1 -0
  201. package/docs/v1/assets/javascripts/lunr/lunr.sv.js +1 -0
  202. package/docs/v1/assets/javascripts/lunr/lunr.tr.js +1 -0
  203. package/docs/v1/assets/javascripts/lunr/tinyseg.js +1 -0
  204. package/docs/v1/assets/javascripts/modernizr.1aa3b519.js +1 -0
  205. package/docs/v1/assets/stylesheets/application-palette.22915126.css +1176 -0
  206. package/docs/v1/assets/stylesheets/application.451f80e5.css +2552 -0
  207. package/docs/v1/common/docs/adalclient/index.html +1994 -0
  208. package/docs/v1/common/docs/collections/index.html +1786 -0
  209. package/docs/v1/common/docs/custom-httpclientimpl/index.html +1798 -0
  210. package/docs/v1/common/docs/index.html +1787 -0
  211. package/docs/v1/common/docs/libconfig/index.html +1930 -0
  212. package/docs/v1/common/docs/netutil/index.html +1860 -0
  213. package/docs/v1/common/docs/storage/index.html +1850 -0
  214. package/docs/v1/common/docs/util/index.html +2058 -0
  215. package/docs/v1/config-store/docs/configuration/index.html +1730 -0
  216. package/docs/v1/config-store/docs/index.html +1761 -0
  217. package/docs/v1/config-store/docs/providers/index.html +1782 -0
  218. package/docs/v1/documentation/SPFx-On-Premesis-2016/index.html +1720 -0
  219. package/docs/v1/documentation/beta-versions/index.html +1742 -0
  220. package/docs/v1/documentation/css/extra.css +33 -0
  221. package/docs/v1/documentation/debugging/index.html +2098 -0
  222. package/docs/v1/documentation/deployment/index.html +1972 -0
  223. package/docs/v1/documentation/documentation/index.html +1760 -0
  224. package/docs/v1/documentation/getting-started/index.html +2280 -0
  225. package/docs/v1/documentation/getting-started-dev/index.html +1799 -0
  226. package/docs/v1/documentation/gulp-commands/index.html +2100 -0
  227. package/docs/v1/documentation/img/Logo.png +0 -0
  228. package/docs/v1/documentation/img/PnPJS_FluentAPI.gif +0 -0
  229. package/docs/v1/documentation/img/SPFx-On-Premesis-2016-1.png +0 -0
  230. package/docs/v1/documentation/img/office365-header-icon.png +0 -0
  231. package/docs/v1/documentation/img/pnpjs-common-uml.svg +220 -0
  232. package/docs/v1/documentation/img/pnpjs-config-store-uml.svg +56 -0
  233. package/docs/v1/documentation/img/pnpjs-graph-uml.svg +602 -0
  234. package/docs/v1/documentation/img/pnpjs-logging-uml.svg +59 -0
  235. package/docs/v1/documentation/img/pnpjs-nodejs-uml.svg +85 -0
  236. package/docs/v1/documentation/img/pnpjs-odata-uml.svg +253 -0
  237. package/docs/v1/documentation/img/pnpjs-sp-addinhelpers-uml.svg +48 -0
  238. package/docs/v1/documentation/img/pnpjs-sp-clientsvc-uml.svg +167 -0
  239. package/docs/v1/documentation/img/pnpjs-sp-taxonomy-uml.svg +458 -0
  240. package/docs/v1/documentation/img/pnpjs-sp-uml.svg +2833 -0
  241. package/docs/v1/documentation/package-structure/index.html +1875 -0
  242. package/docs/v1/documentation/packages/index.html +1741 -0
  243. package/docs/v1/documentation/polyfill/index.html +1877 -0
  244. package/docs/v1/documentation/theme/main.html +5 -0
  245. package/docs/v1/documentation/transition-guide/index.html +1977 -0
  246. package/docs/v1/graph/docs/contacts/index.html +2080 -0
  247. package/docs/v1/graph/docs/directoryobjects/index.html +1865 -0
  248. package/docs/v1/graph/docs/index.html +1858 -0
  249. package/docs/v1/graph/docs/insights/index.html +1698 -0
  250. package/docs/v1/graph/docs/invitations/index.html +1742 -0
  251. package/docs/v1/graph/docs/onedrive/index.html +2086 -0
  252. package/docs/v1/graph/docs/people/index.html +1664 -0
  253. package/docs/v1/graph/docs/planner/index.html +2097 -0
  254. package/docs/v1/graph/docs/security/index.html +1692 -0
  255. package/docs/v1/graph/docs/sites/index.html +2043 -0
  256. package/docs/v1/graph/docs/subscriptions/index.html +1835 -0
  257. package/docs/v1/graph/docs/teams/index.html +2097 -0
  258. package/docs/v1/index.html +1889 -0
  259. package/docs/v1/logging/docs/index.html +2045 -0
  260. package/docs/v1/nodejs/docs/adal-certificate-fetch-client/index.html +1676 -0
  261. package/docs/v1/nodejs/docs/adal-fetch-client/index.html +1713 -0
  262. package/docs/v1/nodejs/docs/bearer-token-fetch-client/index.html +1712 -0
  263. package/docs/v1/nodejs/docs/index.html +1764 -0
  264. package/docs/v1/nodejs/docs/provider-hosted-app/index.html +1725 -0
  265. package/docs/v1/nodejs/docs/proxy/index.html +1699 -0
  266. package/docs/v1/nodejs/docs/sp-fetch-client/index.html +1895 -0
  267. package/docs/v1/odata/docs/caching/index.html +1988 -0
  268. package/docs/v1/odata/docs/core/index.html +1829 -0
  269. package/docs/v1/odata/docs/index.html +1781 -0
  270. package/docs/v1/odata/docs/odata-batch/index.html +1755 -0
  271. package/docs/v1/odata/docs/parsers/index.html +1862 -0
  272. package/docs/v1/odata/docs/pipeline/index.html +1811 -0
  273. package/docs/v1/odata/docs/queryable/index.html +1967 -0
  274. package/docs/v1/pnpjs/docs/index.html +1814 -0
  275. package/docs/v1/search/search_index.json +1 -0
  276. package/docs/v1/sitemap.xml +428 -0
  277. package/docs/v1/sitemap.xml.gz +0 -0
  278. package/docs/v1/sp/docs/alias-parameters/index.html +1830 -0
  279. package/docs/v1/sp/docs/alm/index.html +1920 -0
  280. package/docs/v1/sp/docs/attachments/index.html +1998 -0
  281. package/docs/v1/sp/docs/client-side-pages/index.html +2031 -0
  282. package/docs/v1/sp/docs/comments-likes/index.html +1958 -0
  283. package/docs/v1/sp/docs/content-types/index.html +1758 -0
  284. package/docs/v1/sp/docs/entity-merging/index.html +1838 -0
  285. package/docs/v1/sp/docs/features/index.html +1824 -0
  286. package/docs/v1/sp/docs/fields/index.html +2031 -0
  287. package/docs/v1/sp/docs/files/index.html +2178 -0
  288. package/docs/v1/sp/docs/index.html +1894 -0
  289. package/docs/v1/sp/docs/items/index.html +2362 -0
  290. package/docs/v1/sp/docs/navigation-service/index.html +1791 -0
  291. package/docs/v1/sp/docs/permissions/index.html +1860 -0
  292. package/docs/v1/sp/docs/profiles/index.html +1794 -0
  293. package/docs/v1/sp/docs/related-items/index.html +1886 -0
  294. package/docs/v1/sp/docs/search/index.html +1830 -0
  295. package/docs/v1/sp/docs/sharing/index.html +2058 -0
  296. package/docs/v1/sp/docs/sitedesigns/index.html +1851 -0
  297. package/docs/v1/sp/docs/sites/index.html +2186 -0
  298. package/docs/v1/sp/docs/social/index.html +2011 -0
  299. package/docs/v1/sp/docs/sp-utilities-utility/index.html +2061 -0
  300. package/docs/v1/sp/docs/tenant-properties/index.html +1795 -0
  301. package/docs/v1/sp/docs/views/index.html +1869 -0
  302. package/docs/v1/sp/docs/webs/index.html +1972 -0
  303. package/docs/v1/sp-addinhelpers/docs/index.html +1771 -0
  304. package/docs/v1/sp-addinhelpers/docs/sp-request-executor-client/index.html +1760 -0
  305. package/docs/v1/sp-addinhelpers/docs/sp-rest-addin/index.html +1711 -0
  306. package/docs/v1/sp-clientsvc/docs/index.html +1736 -0
  307. package/docs/v1/sp-taxonomy/docs/index.html +1887 -0
  308. package/docs/v1/sp-taxonomy/docs/labels/index.html +1827 -0
  309. package/docs/v1/sp-taxonomy/docs/term-groups/index.html +1875 -0
  310. package/docs/v1/sp-taxonomy/docs/term-sets/index.html +1946 -0
  311. package/docs/v1/sp-taxonomy/docs/term-stores/index.html +2111 -0
  312. package/docs/v1/sp-taxonomy/docs/terms/index.html +2036 -0
  313. package/docs/v1/sp-taxonomy/docs/utilities/index.html +1783 -0
  314. package/docs/v2/404.html +2108 -0
  315. package/docs/v2/SPFx-on-premises/index.html +2278 -0
  316. package/docs/v2/_theme/main.html +5 -0
  317. package/docs/v2/adaljsclient/adalclient/index.html +15 -0
  318. package/docs/v2/adaljsclient/index.html +15 -0
  319. package/docs/v2/assets/images/favicon.png +0 -0
  320. package/docs/v2/assets/javascripts/bundle.9554a270.min.js +2 -0
  321. package/docs/v2/assets/javascripts/bundle.9554a270.min.js.map +1 -0
  322. package/docs/v2/assets/javascripts/lunr/min/lunr.ar.min.js +1 -0
  323. package/docs/v2/assets/javascripts/lunr/min/lunr.da.min.js +18 -0
  324. package/docs/v2/assets/javascripts/lunr/min/lunr.de.min.js +18 -0
  325. package/docs/v2/assets/javascripts/lunr/min/lunr.du.min.js +18 -0
  326. package/docs/v2/assets/javascripts/lunr/min/lunr.es.min.js +18 -0
  327. package/docs/v2/assets/javascripts/lunr/min/lunr.fi.min.js +18 -0
  328. package/docs/v2/assets/javascripts/lunr/min/lunr.fr.min.js +18 -0
  329. package/docs/v2/assets/javascripts/lunr/min/lunr.hu.min.js +18 -0
  330. package/docs/v2/assets/javascripts/lunr/min/lunr.it.min.js +18 -0
  331. package/docs/v2/assets/javascripts/lunr/min/lunr.ja.min.js +1 -0
  332. package/docs/v2/assets/javascripts/lunr/min/lunr.jp.min.js +1 -0
  333. package/docs/v2/assets/javascripts/lunr/min/lunr.multi.min.js +1 -0
  334. package/docs/v2/assets/javascripts/lunr/min/lunr.nl.min.js +18 -0
  335. package/docs/v2/assets/javascripts/lunr/min/lunr.no.min.js +18 -0
  336. package/docs/v2/assets/javascripts/lunr/min/lunr.pt.min.js +18 -0
  337. package/docs/v2/assets/javascripts/lunr/min/lunr.ro.min.js +18 -0
  338. package/docs/v2/assets/javascripts/lunr/min/lunr.ru.min.js +18 -0
  339. package/docs/v2/assets/javascripts/lunr/min/lunr.stemmer.support.min.js +1 -0
  340. package/docs/v2/assets/javascripts/lunr/min/lunr.sv.min.js +18 -0
  341. package/docs/v2/assets/javascripts/lunr/min/lunr.tr.min.js +18 -0
  342. package/docs/v2/assets/javascripts/lunr/min/lunr.vi.min.js +1 -0
  343. package/docs/v2/assets/javascripts/lunr/tinyseg.min.js +1 -0
  344. package/docs/v2/assets/javascripts/vendor.77e55a48.min.js +30 -0
  345. package/docs/v2/assets/javascripts/vendor.77e55a48.min.js.map +1 -0
  346. package/docs/v2/assets/javascripts/worker/search.4ac00218.min.js +59 -0
  347. package/docs/v2/assets/javascripts/worker/search.4ac00218.min.js.map +1 -0
  348. package/docs/v2/assets/stylesheets/main.38780c08.min.css +3 -0
  349. package/docs/v2/assets/stylesheets/main.38780c08.min.css.map +1 -0
  350. package/docs/v2/assets/stylesheets/palette.3f72e892.min.css +3 -0
  351. package/docs/v2/assets/stylesheets/palette.3f72e892.min.css.map +1 -0
  352. package/docs/v2/authentication/adaljsclient/index.html +2510 -0
  353. package/docs/v2/authentication/bearertokenclient/index.html +2251 -0
  354. package/docs/v2/authentication/client-spa/index.html +2206 -0
  355. package/docs/v2/authentication/client-spfx/index.html +2397 -0
  356. package/docs/v2/authentication/index.html +2307 -0
  357. package/docs/v2/authentication/lambdaclient/index.html +2304 -0
  358. package/docs/v2/authentication/msaljsclient/index.html +2413 -0
  359. package/docs/v2/authentication/server-nodejs/index.html +2404 -0
  360. package/docs/v2/authentication/sp-app-registration/index.html +2273 -0
  361. package/docs/v2/common/collections/index.html +2277 -0
  362. package/docs/v2/common/custom-httpclientimpl/index.html +2300 -0
  363. package/docs/v2/common/index.html +2262 -0
  364. package/docs/v2/common/libconfig/index.html +2413 -0
  365. package/docs/v2/common/netutil/index.html +2350 -0
  366. package/docs/v2/common/storage/index.html +2339 -0
  367. package/docs/v2/common/util/index.html +2638 -0
  368. package/docs/v2/concepts/configuration/index.html +2685 -0
  369. package/docs/v2/concepts/custom-bundle/index.html +2279 -0
  370. package/docs/v2/concepts/error-handling/index.html +2539 -0
  371. package/docs/v2/concepts/ie11-mode/index.html +2278 -0
  372. package/docs/v2/concepts/invokable/index.html +2254 -0
  373. package/docs/v2/concepts/polyfill/index.html +2401 -0
  374. package/docs/v2/concepts/selective-imports/index.html +2360 -0
  375. package/docs/v2/concepts/settings/index.html +2551 -0
  376. package/docs/v2/config-store/configuration/index.html +2226 -0
  377. package/docs/v2/config-store/index.html +2239 -0
  378. package/docs/v2/config-store/providers/index.html +2275 -0
  379. package/docs/v2/contributing/debug-tests/index.html +2323 -0
  380. package/docs/v2/contributing/debugging/index.html +2514 -0
  381. package/docs/v2/contributing/documentation/index.html +2291 -0
  382. package/docs/v2/contributing/extending-the-library/index.html +2521 -0
  383. package/docs/v2/contributing/index.html +2270 -0
  384. package/docs/v2/contributing/local-debug-configuration/index.html +2284 -0
  385. package/docs/v2/contributing/pull-requests/index.html +2261 -0
  386. package/docs/v2/contributing/setup-dev-machine/index.html +2284 -0
  387. package/docs/v2/css/extra.css +33 -0
  388. package/docs/v2/debug-tests/index.html +15 -0
  389. package/docs/v2/debugging/index.html +15 -0
  390. package/docs/v2/documentation/index.html +15 -0
  391. package/docs/v2/getting-started/index.html +2789 -0
  392. package/docs/v2/getting-started-dev/index.html +15 -0
  393. package/docs/v2/graph/calendars/index.html +2569 -0
  394. package/docs/v2/graph/contacts/index.html +2673 -0
  395. package/docs/v2/graph/directoryobjects/index.html +2402 -0
  396. package/docs/v2/graph/groups/index.html +2488 -0
  397. package/docs/v2/graph/index.html +2333 -0
  398. package/docs/v2/graph/insights/index.html +2478 -0
  399. package/docs/v2/graph/invitations/index.html +2273 -0
  400. package/docs/v2/graph/onedrive/index.html +2617 -0
  401. package/docs/v2/graph/outlook/index.html +2363 -0
  402. package/docs/v2/graph/photos/index.html +2351 -0
  403. package/docs/v2/graph/planner/index.html +2628 -0
  404. package/docs/v2/graph/search/index.html +2264 -0
  405. package/docs/v2/graph/subscriptions/index.html +2333 -0
  406. package/docs/v2/graph/teams/index.html +2619 -0
  407. package/docs/v2/graph/users/index.html +2461 -0
  408. package/docs/v2/img/ConsoleListenerColors.png +0 -0
  409. package/docs/v2/img/Logo.png +0 -0
  410. package/docs/v2/img/PnPJS_FluentAPI.gif +0 -0
  411. package/docs/v2/img/SPFx-On-Premesis-2016-1.png +0 -0
  412. package/docs/v2/img/office365-header-icon.png +0 -0
  413. package/docs/v2/img/usage-2020-eoy.png +0 -0
  414. package/docs/v2/index.html +2410 -0
  415. package/docs/v2/logging/index.html +2622 -0
  416. package/docs/v2/news/2020-year-in-review/index.html +2525 -0
  417. package/docs/v2/nodejs/adal-fetch-client/index.html +2204 -0
  418. package/docs/v2/nodejs/bearer-token-fetch-client/index.html +2203 -0
  419. package/docs/v2/nodejs/index.html +2261 -0
  420. package/docs/v2/nodejs/provider-hosted-app/index.html +2220 -0
  421. package/docs/v2/nodejs/proxy/index.html +2238 -0
  422. package/docs/v2/nodejs/sp-extensions/index.html +2362 -0
  423. package/docs/v2/nodejs/sp-fetch-client/index.html +2294 -0
  424. package/docs/v2/nodejs-support/index.html +2398 -0
  425. package/docs/v2/npm-scripts/index.html +2521 -0
  426. package/docs/v2/odata/caching/index.html +2465 -0
  427. package/docs/v2/odata/core/index.html +2322 -0
  428. package/docs/v2/odata/debug/index.html +2358 -0
  429. package/docs/v2/odata/extensions/index.html +2581 -0
  430. package/docs/v2/odata/index.html +2259 -0
  431. package/docs/v2/odata/odata-batch/index.html +2250 -0
  432. package/docs/v2/odata/parsers/index.html +2355 -0
  433. package/docs/v2/odata/pipeline/index.html +2297 -0
  434. package/docs/v2/odata/queryable/index.html +2455 -0
  435. package/docs/v2/packages/index.html +2251 -0
  436. package/docs/v2/pnpjs/index.html +2281 -0
  437. package/docs/v2/search/search_index.json +1 -0
  438. package/docs/v2/sitemap.xml +483 -0
  439. package/docs/v2/sitemap.xml.gz +0 -0
  440. package/docs/v2/sp/alias-parameters/index.html +2330 -0
  441. package/docs/v2/sp/alm/index.html +2433 -0
  442. package/docs/v2/sp/attachments/index.html +2504 -0
  443. package/docs/v2/sp/clientside-pages/index.html +3477 -0
  444. package/docs/v2/sp/column-defaults/index.html +2540 -0
  445. package/docs/v2/sp/comments-likes/index.html +2646 -0
  446. package/docs/v2/sp/content-types/index.html +2462 -0
  447. package/docs/v2/sp/custom-irequestclient/index.html +2339 -0
  448. package/docs/v2/sp/entity-merging/index.html +2325 -0
  449. package/docs/v2/sp/features/index.html +2440 -0
  450. package/docs/v2/sp/fields/index.html +3103 -0
  451. package/docs/v2/sp/files/index.html +2949 -0
  452. package/docs/v2/sp/folders/index.html +2968 -0
  453. package/docs/v2/sp/forms/index.html +2289 -0
  454. package/docs/v2/sp/hubsites/index.html +2485 -0
  455. package/docs/v2/sp/index.html +2328 -0
  456. package/docs/v2/sp/items/index.html +2974 -0
  457. package/docs/v2/sp/lists/index.html +3387 -0
  458. package/docs/v2/sp/navigation/index.html +2535 -0
  459. package/docs/v2/sp/permissions/index.html +2338 -0
  460. package/docs/v2/sp/profiles/index.html +2806 -0
  461. package/docs/v2/sp/regional-settings/index.html +2394 -0
  462. package/docs/v2/sp/related-items/index.html +2417 -0
  463. package/docs/v2/sp/search/index.html +2474 -0
  464. package/docs/v2/sp/security/index.html +2432 -0
  465. package/docs/v2/sp/sharing/index.html +2589 -0
  466. package/docs/v2/sp/site-designs/index.html +2414 -0
  467. package/docs/v2/sp/site-groups/index.html +2504 -0
  468. package/docs/v2/sp/site-scripts/index.html +2433 -0
  469. package/docs/v2/sp/site-users/index.html +2641 -0
  470. package/docs/v2/sp/sites/index.html +2727 -0
  471. package/docs/v2/sp/social/index.html +2517 -0
  472. package/docs/v2/sp/sp-utilities-utility/index.html +2460 -0
  473. package/docs/v2/sp/subscriptions/index.html +2395 -0
  474. package/docs/v2/sp/taxonomy/index.html +2565 -0
  475. package/docs/v2/sp/tenant-properties/index.html +2286 -0
  476. package/docs/v2/sp/user-custom-actions/index.html +2424 -0
  477. package/docs/v2/sp/views/index.html +2652 -0
  478. package/docs/v2/sp/webs/index.html +4190 -0
  479. package/docs/v2/sp-addinhelpers/index.html +2274 -0
  480. package/docs/v2/sp-addinhelpers/sp-request-executor-client/index.html +2253 -0
  481. package/docs/v2/sp-addinhelpers/sp-rest-addin/index.html +2206 -0
  482. package/docs/v2/transition-guide/index.html +2435 -0
  483. package/mkdocs-requirements.txt +2 -0
  484. package/mkdocs.yml +188 -0
  485. package/package.json +96 -0
  486. package/packages/azidjsclient/index.ts +68 -0
  487. package/packages/azidjsclient/package.json +13 -0
  488. package/packages/azidjsclient/tsconfig.json +12 -0
  489. package/packages/core/behaviors/assign-from.ts +17 -0
  490. package/packages/core/behaviors/copy-from.ts +58 -0
  491. package/packages/core/extendable.ts +193 -0
  492. package/packages/core/index.ts +11 -0
  493. package/packages/core/moments.ts +117 -0
  494. package/packages/core/package.json +10 -0
  495. package/packages/core/storage.ts +274 -0
  496. package/packages/core/timeline.ts +387 -0
  497. package/packages/core/tsconfig.json +10 -0
  498. package/packages/core/util.ts +169 -0
  499. package/packages/graph/attachments/conversations.ts +14 -0
  500. package/packages/graph/attachments/index.ts +8 -0
  501. package/packages/graph/attachments/types.ts +37 -0
  502. package/packages/graph/batching.ts +408 -0
  503. package/packages/graph/behaviors/consistency-level.ts +17 -0
  504. package/packages/graph/behaviors/defaults.ts +41 -0
  505. package/packages/graph/behaviors/endpoint.ts +22 -0
  506. package/packages/graph/behaviors/graphbrowser.ts +38 -0
  507. package/packages/graph/behaviors/paged.ts +109 -0
  508. package/packages/graph/behaviors/spfx.ts +46 -0
  509. package/packages/graph/behaviors/telemetry.ts +19 -0
  510. package/packages/graph/bookings/funcs.ts +18 -0
  511. package/packages/graph/bookings/index.ts +62 -0
  512. package/packages/graph/bookings/types.ts +352 -0
  513. package/packages/graph/calendars/funcs.ts +58 -0
  514. package/packages/graph/calendars/groups.ts +19 -0
  515. package/packages/graph/calendars/index.ts +18 -0
  516. package/packages/graph/calendars/types.ts +73 -0
  517. package/packages/graph/calendars/users.ts +28 -0
  518. package/packages/graph/cloud-communications/index.ts +24 -0
  519. package/packages/graph/cloud-communications/types.ts +32 -0
  520. package/packages/graph/cloud-communications/users.ts +15 -0
  521. package/packages/graph/columns/addColumns.ts +28 -0
  522. package/packages/graph/columns/content-types.ts +44 -0
  523. package/packages/graph/columns/index.ts +14 -0
  524. package/packages/graph/columns/lists.ts +33 -0
  525. package/packages/graph/columns/sites.ts +32 -0
  526. package/packages/graph/columns/types.ts +24 -0
  527. package/packages/graph/contacts/index.ts +14 -0
  528. package/packages/graph/contacts/types.ts +126 -0
  529. package/packages/graph/contacts/users.ts +17 -0
  530. package/packages/graph/content-types/index.ts +11 -0
  531. package/packages/graph/content-types/lists.ts +44 -0
  532. package/packages/graph/content-types/sites.ts +70 -0
  533. package/packages/graph/content-types/types.ts +112 -0
  534. package/packages/graph/conversations/groups.ts +20 -0
  535. package/packages/graph/conversations/index.ts +19 -0
  536. package/packages/graph/conversations/types.ts +147 -0
  537. package/packages/graph/decorators.ts +164 -0
  538. package/packages/graph/directory-objects/index.ts +24 -0
  539. package/packages/graph/directory-objects/types.ts +94 -0
  540. package/packages/graph/fi.ts +46 -0
  541. package/packages/graph/graphqueryable.ts +193 -0
  542. package/packages/graph/groups/index.ts +25 -0
  543. package/packages/graph/groups/types.ts +130 -0
  544. package/packages/graph/index.ts +21 -0
  545. package/packages/graph/insights/index.ts +20 -0
  546. package/packages/graph/insights/types.ts +105 -0
  547. package/packages/graph/insights/users.ts +14 -0
  548. package/packages/graph/invitations/index.ts +22 -0
  549. package/packages/graph/invitations/types.ts +41 -0
  550. package/packages/graph/lists/drive.ts +21 -0
  551. package/packages/graph/lists/index.ts +10 -0
  552. package/packages/graph/lists/sites.ts +16 -0
  553. package/packages/graph/lists/types.ts +47 -0
  554. package/packages/graph/members/groups.ts +17 -0
  555. package/packages/graph/members/index.ts +8 -0
  556. package/packages/graph/members/types.ts +40 -0
  557. package/packages/graph/messages/index.ts +14 -0
  558. package/packages/graph/messages/types.ts +46 -0
  559. package/packages/graph/messages/users.ts +27 -0
  560. package/packages/graph/onedrive/funcs.ts +40 -0
  561. package/packages/graph/onedrive/groups.ts +33 -0
  562. package/packages/graph/onedrive/index.ts +48 -0
  563. package/packages/graph/onedrive/sites.ts +35 -0
  564. package/packages/graph/onedrive/types.ts +482 -0
  565. package/packages/graph/onedrive/users.ts +56 -0
  566. package/packages/graph/onenote/index.ts +16 -0
  567. package/packages/graph/onenote/types.ts +119 -0
  568. package/packages/graph/onenote/users.ts +14 -0
  569. package/packages/graph/operations.ts +22 -0
  570. package/packages/graph/outlook/index.ts +11 -0
  571. package/packages/graph/outlook/types.ts +58 -0
  572. package/packages/graph/outlook/users.ts +14 -0
  573. package/packages/graph/package.json +16 -0
  574. package/packages/graph/photos/groups.ts +14 -0
  575. package/packages/graph/photos/index.ts +7 -0
  576. package/packages/graph/photos/types.ts +33 -0
  577. package/packages/graph/photos/users.ts +14 -0
  578. package/packages/graph/planner/groups.ts +14 -0
  579. package/packages/graph/planner/index.ts +42 -0
  580. package/packages/graph/planner/types.ts +213 -0
  581. package/packages/graph/planner/users.ts +14 -0
  582. package/packages/graph/post-install.cjs +20 -0
  583. package/packages/graph/presets/all.ts +42 -0
  584. package/packages/graph/search/index.ts +18 -0
  585. package/packages/graph/search/types.ts +20 -0
  586. package/packages/graph/shares/index.ts +23 -0
  587. package/packages/graph/shares/types.ts +47 -0
  588. package/packages/graph/sites/group.ts +14 -0
  589. package/packages/graph/sites/index.ts +25 -0
  590. package/packages/graph/sites/types.ts +45 -0
  591. package/packages/graph/subscriptions/index.ts +24 -0
  592. package/packages/graph/subscriptions/types.ts +59 -0
  593. package/packages/graph/teams/index.ts +68 -0
  594. package/packages/graph/teams/types.ts +333 -0
  595. package/packages/graph/teams/users.ts +14 -0
  596. package/packages/graph/tsconfig.json +16 -0
  597. package/packages/graph/users/index.ts +34 -0
  598. package/packages/graph/users/types.ts +56 -0
  599. package/packages/graph/utils/type.ts +3 -0
  600. package/packages/logging/index.ts +145 -0
  601. package/packages/logging/listeners.ts +134 -0
  602. package/packages/logging/package.json +10 -0
  603. package/packages/logging/tsconfig.json +7 -0
  604. package/packages/msaljsclient/index.ts +40 -0
  605. package/packages/msaljsclient/package.json +12 -0
  606. package/packages/msaljsclient/tsconfig.json +12 -0
  607. package/packages/nodejs/behaviors/fetch.ts +130 -0
  608. package/packages/nodejs/behaviors/graphdefault.ts +50 -0
  609. package/packages/nodejs/behaviors/msal.ts +24 -0
  610. package/packages/nodejs/behaviors/spdefault.ts +45 -0
  611. package/packages/nodejs/behaviors/stream-parse.ts +7 -0
  612. package/packages/nodejs/index.ts +33 -0
  613. package/packages/nodejs/package.json +17 -0
  614. package/packages/nodejs/sp-extensions/stream.ts +136 -0
  615. package/packages/nodejs/tsconfig.json +28 -0
  616. package/packages/queryable/add-prop.ts +18 -0
  617. package/packages/queryable/behaviors/bearer-token.ts +15 -0
  618. package/packages/queryable/behaviors/browser-fetch.ts +131 -0
  619. package/packages/queryable/behaviors/caching-pessimistic.ts +67 -0
  620. package/packages/queryable/behaviors/caching.ts +149 -0
  621. package/packages/queryable/behaviors/cancelable.ts +264 -0
  622. package/packages/queryable/behaviors/inject-headers.ts +23 -0
  623. package/packages/queryable/behaviors/parsers.ts +134 -0
  624. package/packages/queryable/behaviors/resolvers.ts +28 -0
  625. package/packages/queryable/behaviors/timeout.ts +24 -0
  626. package/packages/queryable/index.ts +19 -0
  627. package/packages/queryable/invokable.ts +42 -0
  628. package/packages/queryable/operations.ts +32 -0
  629. package/packages/queryable/package.json +11 -0
  630. package/packages/queryable/queryable-factory.ts +19 -0
  631. package/packages/queryable/queryable.ts +239 -0
  632. package/packages/queryable/request-builders.ts +20 -0
  633. package/packages/queryable/tsconfig.json +11 -0
  634. package/packages/readme.md +21 -0
  635. package/packages/sp/appcatalog/index.ts +35 -0
  636. package/packages/sp/appcatalog/types.ts +176 -0
  637. package/packages/sp/appcatalog/web.ts +19 -0
  638. package/packages/sp/attachments/index.ts +11 -0
  639. package/packages/sp/attachments/item.ts +17 -0
  640. package/packages/sp/attachments/types.ts +95 -0
  641. package/packages/sp/batching.ts +483 -0
  642. package/packages/sp/behaviors/defaults.ts +38 -0
  643. package/packages/sp/behaviors/request-digest.ts +78 -0
  644. package/packages/sp/behaviors/spbrowser.ts +40 -0
  645. package/packages/sp/behaviors/spfx.ts +83 -0
  646. package/packages/sp/behaviors/telemetry.ts +35 -0
  647. package/packages/sp/clientside-pages/funcs.ts +27 -0
  648. package/packages/sp/clientside-pages/index.ts +27 -0
  649. package/packages/sp/clientside-pages/types.ts +1661 -0
  650. package/packages/sp/clientside-pages/web.ts +93 -0
  651. package/packages/sp/column-defaults/folder.ts +89 -0
  652. package/packages/sp/column-defaults/index.ts +8 -0
  653. package/packages/sp/column-defaults/list.ts +219 -0
  654. package/packages/sp/column-defaults/types.ts +19 -0
  655. package/packages/sp/comments/clientside-page.ts +120 -0
  656. package/packages/sp/comments/index.ts +14 -0
  657. package/packages/sp/comments/item.ts +77 -0
  658. package/packages/sp/comments/types.ts +160 -0
  659. package/packages/sp/content-types/index.ts +17 -0
  660. package/packages/sp/content-types/item.ts +17 -0
  661. package/packages/sp/content-types/list.ts +17 -0
  662. package/packages/sp/content-types/types.ts +181 -0
  663. package/packages/sp/content-types/web.ts +17 -0
  664. package/packages/sp/context-info/index.ts +40 -0
  665. package/packages/sp/decorators.ts +18 -0
  666. package/packages/sp/favorites/index.ts +32 -0
  667. package/packages/sp/favorites/types.ts +187 -0
  668. package/packages/sp/features/index.ts +11 -0
  669. package/packages/sp/features/site.ts +17 -0
  670. package/packages/sp/features/types.ts +73 -0
  671. package/packages/sp/features/web.ts +17 -0
  672. package/packages/sp/fi.ts +46 -0
  673. package/packages/sp/fields/index.ts +22 -0
  674. package/packages/sp/fields/list.ts +17 -0
  675. package/packages/sp/fields/types.ts +648 -0
  676. package/packages/sp/fields/web.ts +23 -0
  677. package/packages/sp/files/folder.ts +17 -0
  678. package/packages/sp/files/index.ts +25 -0
  679. package/packages/sp/files/item.ts +17 -0
  680. package/packages/sp/files/readable-file.ts +40 -0
  681. package/packages/sp/files/types.ts +771 -0
  682. package/packages/sp/files/web.ts +46 -0
  683. package/packages/sp/folders/index.ts +19 -0
  684. package/packages/sp/folders/item.ts +16 -0
  685. package/packages/sp/folders/list.ts +17 -0
  686. package/packages/sp/folders/types.ts +439 -0
  687. package/packages/sp/folders/web.ts +50 -0
  688. package/packages/sp/forms/index.ts +9 -0
  689. package/packages/sp/forms/list.ts +14 -0
  690. package/packages/sp/forms/types.ts +41 -0
  691. package/packages/sp/groupsitemanager/index.ts +18 -0
  692. package/packages/sp/groupsitemanager/types.ts +433 -0
  693. package/packages/sp/hubsites/index.ts +31 -0
  694. package/packages/sp/hubsites/site.ts +43 -0
  695. package/packages/sp/hubsites/types.ts +71 -0
  696. package/packages/sp/hubsites/web.ts +38 -0
  697. package/packages/sp/index.ts +24 -0
  698. package/packages/sp/items/get-all.ts +52 -0
  699. package/packages/sp/items/index.ts +18 -0
  700. package/packages/sp/items/list.ts +14 -0
  701. package/packages/sp/items/types.ts +405 -0
  702. package/packages/sp/lists/index.ts +23 -0
  703. package/packages/sp/lists/types.ts +851 -0
  704. package/packages/sp/lists/web.ts +68 -0
  705. package/packages/sp/navigation/index.ts +35 -0
  706. package/packages/sp/navigation/types.ts +243 -0
  707. package/packages/sp/navigation/web.ts +19 -0
  708. package/packages/sp/operations.ts +33 -0
  709. package/packages/sp/package.json +15 -0
  710. package/packages/sp/post-install.cjs +20 -0
  711. package/packages/sp/presets/all.ts +75 -0
  712. package/packages/sp/profiles/index.ts +30 -0
  713. package/packages/sp/profiles/types.ts +595 -0
  714. package/packages/sp/publishing-sitepageservice/index.ts +22 -0
  715. package/packages/sp/publishing-sitepageservice/types.ts +18 -0
  716. package/packages/sp/recycle-bin/index.ts +36 -0
  717. package/packages/sp/recycle-bin/types.ts +113 -0
  718. package/packages/sp/regional-settings/content-type.ts +11 -0
  719. package/packages/sp/regional-settings/field.ts +11 -0
  720. package/packages/sp/regional-settings/funcs.ts +10 -0
  721. package/packages/sp/regional-settings/index.ts +18 -0
  722. package/packages/sp/regional-settings/list.ts +11 -0
  723. package/packages/sp/regional-settings/types.ts +159 -0
  724. package/packages/sp/regional-settings/user-custom-actions.ts +11 -0
  725. package/packages/sp/regional-settings/web.ts +21 -0
  726. package/packages/sp/related-items/index.ts +7 -0
  727. package/packages/sp/related-items/types.ts +194 -0
  728. package/packages/sp/related-items/web.ts +22 -0
  729. package/packages/sp/search/index.ts +48 -0
  730. package/packages/sp/search/query.ts +254 -0
  731. package/packages/sp/search/suggest.ts +130 -0
  732. package/packages/sp/search/types.ts +480 -0
  733. package/packages/sp/security/funcs.ts +94 -0
  734. package/packages/sp/security/index.ts +21 -0
  735. package/packages/sp/security/item.ts +29 -0
  736. package/packages/sp/security/list.ts +29 -0
  737. package/packages/sp/security/types.ts +440 -0
  738. package/packages/sp/security/web.ts +34 -0
  739. package/packages/sp/sharing/file.ts +75 -0
  740. package/packages/sp/sharing/folder.ts +69 -0
  741. package/packages/sp/sharing/funcs.ts +258 -0
  742. package/packages/sp/sharing/index.ts +27 -0
  743. package/packages/sp/sharing/item.ts +53 -0
  744. package/packages/sp/sharing/types.ts +626 -0
  745. package/packages/sp/sharing/web.ts +109 -0
  746. package/packages/sp/site-designs/index.ts +29 -0
  747. package/packages/sp/site-designs/types.ts +456 -0
  748. package/packages/sp/site-designs/web.ts +41 -0
  749. package/packages/sp/site-groups/index.ts +11 -0
  750. package/packages/sp/site-groups/types.ts +133 -0
  751. package/packages/sp/site-groups/web.ts +73 -0
  752. package/packages/sp/site-scripts/index.ts +27 -0
  753. package/packages/sp/site-scripts/list.ts +27 -0
  754. package/packages/sp/site-scripts/types.ts +243 -0
  755. package/packages/sp/site-scripts/web.ts +24 -0
  756. package/packages/sp/site-users/index.ts +12 -0
  757. package/packages/sp/site-users/types.ts +195 -0
  758. package/packages/sp/site-users/web.ts +56 -0
  759. package/packages/sp/sites/index.ts +26 -0
  760. package/packages/sp/sites/types.ts +422 -0
  761. package/packages/sp/social/index.ts +33 -0
  762. package/packages/sp/social/types.ts +381 -0
  763. package/packages/sp/spqueryable.ts +244 -0
  764. package/packages/sp/sputilities/index.ts +23 -0
  765. package/packages/sp/sputilities/types.ts +197 -0
  766. package/packages/sp/subscriptions/index.ts +10 -0
  767. package/packages/sp/subscriptions/list.ts +18 -0
  768. package/packages/sp/subscriptions/types.ts +107 -0
  769. package/packages/sp/taxonomy/index.ts +50 -0
  770. package/packages/sp/taxonomy/types.ts +508 -0
  771. package/packages/sp/tsconfig.json +16 -0
  772. package/packages/sp/types.ts +283 -0
  773. package/packages/sp/user-custom-actions/index.ts +15 -0
  774. package/packages/sp/user-custom-actions/list.ts +18 -0
  775. package/packages/sp/user-custom-actions/site.ts +18 -0
  776. package/packages/sp/user-custom-actions/types.ts +133 -0
  777. package/packages/sp/user-custom-actions/web.ts +21 -0
  778. package/packages/sp/utils/encode-path-str.ts +29 -0
  779. package/packages/sp/utils/extract-web-url.ts +21 -0
  780. package/packages/sp/utils/file-names.ts +35 -0
  781. package/packages/sp/utils/metadata.ts +5 -0
  782. package/packages/sp/utils/odata-url-from.ts +42 -0
  783. package/packages/sp/utils/to-resource-path.ts +9 -0
  784. package/packages/sp/views/index.ts +14 -0
  785. package/packages/sp/views/list.ts +33 -0
  786. package/packages/sp/views/types.ts +210 -0
  787. package/packages/sp/webparts/file.ts +21 -0
  788. package/packages/sp/webparts/index.ts +11 -0
  789. package/packages/sp/webparts/types.ts +141 -0
  790. package/packages/sp/webs/index.ts +32 -0
  791. package/packages/sp/webs/types.ts +350 -0
  792. package/packages/sp-admin/index.ts +46 -0
  793. package/packages/sp-admin/office-tenant.ts +567 -0
  794. package/packages/sp-admin/package.json +13 -0
  795. package/packages/sp-admin/site-properties.ts +45 -0
  796. package/packages/sp-admin/tenant.ts +595 -0
  797. package/packages/sp-admin/tsconfig.json +20 -0
  798. package/packages/sp-admin/types.ts +1679 -0
  799. package/packages/tsconfig-watch.json +9 -0
  800. package/packages/tsconfig.json +37 -0
  801. package/pre-install.cjs +1 -0
  802. package/samples/custom-bundle-webpack/index.ts +33 -0
  803. package/samples/custom-bundle-webpack/package-lock.json +4601 -0
  804. package/samples/custom-bundle-webpack/package.json +18 -0
  805. package/samples/custom-bundle-webpack/readme.md +102 -0
  806. package/samples/custom-bundle-webpack/tsconfig.json +12 -0
  807. package/samples/custom-bundle-webpack/webpack.config.js +27 -0
  808. package/samples/nodejs-app/.vscode/launch.json +27 -0
  809. package/samples/nodejs-app/.vscode/settings.json +10 -0
  810. package/samples/nodejs-app/.vscode/tasks.json +22 -0
  811. package/samples/nodejs-app/index.ts +63 -0
  812. package/samples/nodejs-app/package-lock.json +259 -0
  813. package/samples/nodejs-app/package.json +21 -0
  814. package/samples/nodejs-app/readme.md +140 -0
  815. package/samples/nodejs-app/tsconfig.json +14 -0
  816. package/samples/nodejs-commonjs/package-lock.json +702 -0
  817. package/samples/nodejs-commonjs/package.json +21 -0
  818. package/samples/nodejs-commonjs/readme.md +58 -0
  819. package/samples/nodejs-commonjs/src/index.ts +23 -0
  820. package/samples/nodejs-commonjs/src/settings.ts +35 -0
  821. package/samples/nodejs-commonjs/tsconfig.json +35 -0
  822. package/samples/project-preset/README.md +73 -0
  823. package/samples/project-preset/package-lock.json +21097 -0
  824. package/samples/project-preset/package.json +29 -0
  825. package/samples/project-preset/teams/4530a515-8ba7-45bb-9a27-be06b33c59d4_color.png +0 -0
  826. package/samples/project-preset/teams/4530a515-8ba7-45bb-9a27-be06b33c59d4_outline.png +0 -0
  827. package/samples/readme.md +16 -0
  828. package/settings.example.js +57 -0
  829. package/test/args.ts +107 -0
  830. package/test/clean-subsite.ts +36 -0
  831. package/test/core/assumptions.ts +99 -0
  832. package/test/core/storage.ts +60 -0
  833. package/test/core/timeline.ts +205 -0
  834. package/test/core/util.ts +205 -0
  835. package/test/graph/assets/testconvert.docx +0 -0
  836. package/test/graph/batch.ts +125 -0
  837. package/test/graph/calendars.ts +234 -0
  838. package/test/graph/columns.ts +247 -0
  839. package/test/graph/contacts.ts +254 -0
  840. package/test/graph/content-types.ts +206 -0
  841. package/test/graph/directoryobjects.ts +115 -0
  842. package/test/graph/groups.ts +130 -0
  843. package/test/graph/lists.ts +72 -0
  844. package/test/graph/onedrive.ts +365 -0
  845. package/test/graph/outlook.ts +95 -0
  846. package/test/graph/paging.ts +91 -0
  847. package/test/graph/planner.ts +160 -0
  848. package/test/graph/querable.ts +97 -0
  849. package/test/graph/search.ts +4 -0
  850. package/test/graph/shares.ts +26 -0
  851. package/test/graph/sites.ts +40 -0
  852. package/test/graph/teams.ts +76 -0
  853. package/test/graph/utilities/getTestingGraphSPSite.ts +27 -0
  854. package/test/graph/utilities/getValidUser.ts +37 -0
  855. package/test/load-settings.ts +103 -0
  856. package/test/logging/logging.ts +86 -0
  857. package/test/mocha-root-hooks.ts +227 -0
  858. package/test/nodejs/sp-extensions.ts +86 -0
  859. package/test/pnp-test.ts +60 -0
  860. package/test/queryable/add-prop.ts +24 -0
  861. package/test/queryable/behaviors.ts +188 -0
  862. package/test/queryable/invokable.ts +35 -0
  863. package/test/queryable/queryable.ts +118 -0
  864. package/test/sp/alias.ts +46 -0
  865. package/test/sp/appcatalog.ts +142 -0
  866. package/test/sp/assets/helloworld.sppkg +0 -0
  867. package/test/sp/assets/sample_file.jpg +0 -0
  868. package/test/sp/attachments.ts +134 -0
  869. package/test/sp/batch.ts +362 -0
  870. package/test/sp/clientside-pages.ts +426 -0
  871. package/test/sp/column-defaults.ts +225 -0
  872. package/test/sp/comments.ts +202 -0
  873. package/test/sp/content-types.ts +68 -0
  874. package/test/sp/favorites.ts +2 -0
  875. package/test/sp/features.ts +201 -0
  876. package/test/sp/fields.ts +396 -0
  877. package/test/sp/files.ts +338 -0
  878. package/test/sp/folders.ts +242 -0
  879. package/test/sp/forms.ts +22 -0
  880. package/test/sp/groupsitemanager.ts +88 -0
  881. package/test/sp/hubsites.ts +41 -0
  882. package/test/sp/items.ts +179 -0
  883. package/test/sp/lists.ts +319 -0
  884. package/test/sp/navigation.ts +167 -0
  885. package/test/sp/profiles.ts +2 -0
  886. package/test/sp/query-escaping.ts +94 -0
  887. package/test/sp/recycle-bin.ts +1 -0
  888. package/test/sp/regional-settings.ts +58 -0
  889. package/test/sp/related-items.ts +94 -0
  890. package/test/sp/search.ts +39 -0
  891. package/test/sp/security.ts +90 -0
  892. package/test/sp/sharing.ts +313 -0
  893. package/test/sp/site-designs.ts +224 -0
  894. package/test/sp/site-groups.ts +98 -0
  895. package/test/sp/site-scripts.ts +162 -0
  896. package/test/sp/site-users.ts +93 -0
  897. package/test/sp/sites.ts +156 -0
  898. package/test/sp/social.ts +2 -0
  899. package/test/sp/spfx.ts +52 -0
  900. package/test/sp/sputilities.ts +78 -0
  901. package/test/sp/subscriptions.ts +64 -0
  902. package/test/sp/taxonomy.ts +178 -0
  903. package/test/sp/user-custom-actions.ts +31 -0
  904. package/test/sp/views.ts +117 -0
  905. package/test/sp/webparts.ts +38 -0
  906. package/test/sp/webs.ts +249 -0
  907. package/test/test-invokable-props.ts +35 -0
  908. package/test/test-props.ts +90 -0
  909. package/test/test-recording.ts +171 -0
  910. package/test/tsconfig.json +18 -0
  911. package/tools/buildsystem/package-lock.json +4404 -0
  912. package/tools/buildsystem/package.json +56 -0
  913. package/tools/buildsystem/readme.md +23 -0
  914. package/tools/config.js +34 -0
  915. package/tools/local-module-resolver/cjs.ts +33 -0
  916. package/tools/local-module-resolver/esm-debug.ts +2 -0
  917. package/tools/local-module-resolver/esm-test.ts +2 -0
  918. package/tools/local-module-resolver/esm.ts +112 -0
  919. package/tools/local-module-resolver/readme.md +8 -0
  920. package/tsconfig.buildsystem.json +17 -0
  921. package/tsconfig.json +42 -0
@@ -0,0 +1,1988 @@
1
+
2
+
3
+
4
+
5
+ <!DOCTYPE html>
6
+ <html lang="en" class="no-js">
7
+ <head>
8
+
9
+ <meta charset="utf-8">
10
+ <meta name="viewport" content="width=device-width,initial-scale=1">
11
+ <meta http-equiv="x-ua-compatible" content="ie=edge">
12
+
13
+
14
+ <link rel="canonical" href="https://pnp.github.io/pnpjs/queryable/docs/caching/">
15
+
16
+
17
+
18
+ <meta name="lang:clipboard.copy" content="Copy to clipboard">
19
+
20
+ <meta name="lang:clipboard.copied" content="Copied to clipboard">
21
+
22
+ <meta name="lang:search.language" content="en">
23
+
24
+ <meta name="lang:search.pipeline.stopwords" content="True">
25
+
26
+ <meta name="lang:search.pipeline.trimmer" content="True">
27
+
28
+ <meta name="lang:search.result.none" content="No matching documents">
29
+
30
+ <meta name="lang:search.result.one" content="1 matching document">
31
+
32
+ <meta name="lang:search.result.other" content="# matching documents">
33
+
34
+ <meta name="lang:search.tokenizer" content="[\s\-]+">
35
+
36
+ <link rel="shortcut icon" href="../../../assets/images/favicon.png">
37
+ <meta name="generator" content="mkdocs-1.0.1, mkdocs-material-3.0.3">
38
+
39
+
40
+
41
+ <title>caching - PnP/PnPjs</title>
42
+
43
+
44
+
45
+ <link rel="stylesheet" href="../../../assets/stylesheets/application.451f80e5.css">
46
+
47
+ <link rel="stylesheet" href="../../../assets/stylesheets/application-palette.22915126.css">
48
+
49
+
50
+
51
+
52
+ <meta name="theme-color" content="#2196f3">
53
+
54
+
55
+
56
+ <script src="../../../assets/javascripts/modernizr.1aa3b519.js"></script>
57
+
58
+
59
+ <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
60
+
61
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700|Roboto+Mono">
62
+ <style>body,input{font-family:"Roboto","Helvetica Neue",Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono","Courier New",Courier,monospace}</style>
63
+
64
+
65
+ <link rel="stylesheet" href="../../../assets/fonts/material-icons.css">
66
+
67
+ <link rel="stylesheet" href="../../../documentation/css/extra.css">
68
+
69
+
70
+ </head>
71
+
72
+
73
+
74
+ <body dir="ltr" data-md-color-primary="blue" data-md-color-accent="">
75
+
76
+ <svg class="md-svg">
77
+ <defs>
78
+
79
+
80
+ <svg xmlns="http://www.w3.org/2000/svg" width="416" height="448"
81
+ viewBox="0 0 416 448" id="__github">
82
+ <path fill="currentColor" d="M160 304q0 10-3.125 20.5t-10.75 19-18.125
83
+ 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19 18.125-8.5
84
+ 18.125 8.5 10.75 19 3.125 20.5zM320 304q0 10-3.125 20.5t-10.75
85
+ 19-18.125 8.5-18.125-8.5-10.75-19-3.125-20.5 3.125-20.5 10.75-19
86
+ 18.125-8.5 18.125 8.5 10.75 19 3.125 20.5zM360
87
+ 304q0-30-17.25-51t-46.75-21q-10.25 0-48.75 5.25-17.75 2.75-39.25
88
+ 2.75t-39.25-2.75q-38-5.25-48.75-5.25-29.5 0-46.75 21t-17.25 51q0 22 8
89
+ 38.375t20.25 25.75 30.5 15 35 7.375 37.25 1.75h42q20.5 0
90
+ 37.25-1.75t35-7.375 30.5-15 20.25-25.75 8-38.375zM416 260q0 51.75-15.25
91
+ 82.75-9.5 19.25-26.375 33.25t-35.25 21.5-42.5 11.875-42.875 5.5-41.75
92
+ 1.125q-19.5 0-35.5-0.75t-36.875-3.125-38.125-7.5-34.25-12.875-30.25-20.25-21.5-28.75q-15.5-30.75-15.5-82.75
93
+ 0-59.25 34-99-6.75-20.5-6.75-42.5 0-29 12.75-54.5 27 0 47.5 9.875t47.25
94
+ 30.875q36.75-8.75 77.25-8.75 37 0 70 8 26.25-20.5
95
+ 46.75-30.25t47.25-9.75q12.75 25.5 12.75 54.5 0 21.75-6.75 42 34 40 34
96
+ 99.5z" />
97
+ </svg>
98
+
99
+ </defs>
100
+ </svg>
101
+ <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
102
+ <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
103
+ <label class="md-overlay" data-md-component="overlay" for="__drawer"></label>
104
+
105
+ <a href="../../../#pnpodatacaching" tabindex="1" class="md-skip">
106
+ Skip to content
107
+ </a>
108
+
109
+
110
+ <header class="md-header" data-md-component="header">
111
+ <nav class="md-header-nav md-grid">
112
+ <div class="md-flex">
113
+ <div class="md-flex__cell md-flex__cell--shrink">
114
+ <a href="https://pnp.github.io/pnpjs/" title="PnP/PnPjs" class="md-header-nav__button md-logo">
115
+
116
+ <img src="../../../documentation/img/Logo.png" width="24" height="24">
117
+
118
+ </a>
119
+ </div>
120
+ <div class="md-flex__cell md-flex__cell--shrink">
121
+ <label class="md-icon md-icon--menu md-header-nav__button" for="__drawer"></label>
122
+ </div>
123
+ <div class="md-flex__cell md-flex__cell--stretch">
124
+ <div class="md-flex__ellipsis md-header-nav__title" data-md-component="title">
125
+
126
+
127
+ <span class="md-header-nav__topic">
128
+ PnP/PnPjs
129
+ </span>
130
+ <span class="md-header-nav__topic">
131
+ caching
132
+ </span>
133
+
134
+
135
+ </div>
136
+ </div>
137
+ <div class="md-flex__cell md-flex__cell--shrink">
138
+
139
+
140
+ <label class="md-icon md-icon--search md-header-nav__button" for="__search"></label>
141
+
142
+ <div class="md-search" data-md-component="search" role="dialog">
143
+ <label class="md-search__overlay" for="__search"></label>
144
+ <div class="md-search__inner" role="search">
145
+ <form class="md-search__form" name="search">
146
+ <input type="text" class="md-search__input" name="query" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="query" data-md-state="active">
147
+ <label class="md-icon md-search__icon" for="__search"></label>
148
+ <button type="reset" class="md-icon md-search__icon" data-md-component="reset" tabindex="-1">
149
+ &#xE5CD;
150
+ </button>
151
+ </form>
152
+ <div class="md-search__output">
153
+ <div class="md-search__scrollwrap" data-md-scrollfix>
154
+ <div class="md-search-result" data-md-component="result">
155
+ <div class="md-search-result__meta">
156
+ Type to start searching
157
+ </div>
158
+ <ol class="md-search-result__list"></ol>
159
+ </div>
160
+ </div>
161
+ </div>
162
+ </div>
163
+ </div>
164
+
165
+
166
+ </div>
167
+
168
+ <div class="md-flex__cell md-flex__cell--shrink">
169
+ <div class="md-header-nav__source">
170
+
171
+
172
+
173
+
174
+
175
+
176
+ <a href="http://github.com/pnp/pnpjs/" title="Go to repository" class="md-source" data-md-source="github">
177
+
178
+ <div class="md-source__icon">
179
+ <svg viewBox="0 0 24 24" width="24" height="24">
180
+ <use xlink:href="#__github" width="24" height="24"></use>
181
+ </svg>
182
+ </div>
183
+
184
+ <div class="md-source__repository">
185
+ GitHub
186
+ </div>
187
+ </a>
188
+
189
+ </div>
190
+ </div>
191
+
192
+ </div>
193
+ </nav>
194
+ </header>
195
+
196
+ <div class="md-container">
197
+
198
+
199
+
200
+
201
+
202
+
203
+
204
+
205
+ <nav class="md-tabs md-tabs--active" data-md-component="tabs">
206
+ <div class="md-tabs__inner md-grid">
207
+ <ul class="md-tabs__list">
208
+
209
+
210
+ <li class="md-tabs__item">
211
+
212
+ <a href="../../.." title="Home" class="md-tabs__link">
213
+ Home
214
+ </a>
215
+
216
+ </li>
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+
225
+
226
+ <li class="md-tabs__item">
227
+
228
+ <a href="../../../documentation/getting-started/" title="General" class="md-tabs__link">
229
+ General
230
+ </a>
231
+
232
+ </li>
233
+
234
+
235
+
236
+
237
+
238
+
239
+ <li class="md-tabs__item">
240
+
241
+ <a href="../../../documentation/packages/" title="Packages" class="md-tabs__link md-tabs__link--active">
242
+ Packages
243
+ </a>
244
+
245
+ </li>
246
+
247
+
248
+
249
+ </ul>
250
+ </div>
251
+ </nav>
252
+
253
+ <main class="md-main">
254
+ <div class="md-main__inner md-grid" data-md-component="container">
255
+
256
+
257
+ <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
258
+ <div class="md-sidebar__scrollwrap">
259
+ <div class="md-sidebar__inner">
260
+ <nav class="md-nav md-nav--primary" data-md-level="0">
261
+ <label class="md-nav__title md-nav__title--site" for="__drawer">
262
+ <a href="https://pnp.github.io/pnpjs/" title="PnP/PnPjs" class="md-nav__button md-logo">
263
+
264
+ <img src="../../../documentation/img/Logo.png" width="48" height="48">
265
+
266
+ </a>
267
+ PnP/PnPjs
268
+ </label>
269
+
270
+ <div class="md-nav__source">
271
+
272
+
273
+
274
+
275
+
276
+
277
+ <a href="http://github.com/pnp/pnpjs/" title="Go to repository" class="md-source" data-md-source="github">
278
+
279
+ <div class="md-source__icon">
280
+ <svg viewBox="0 0 24 24" width="24" height="24">
281
+ <use xlink:href="#__github" width="24" height="24"></use>
282
+ </svg>
283
+ </div>
284
+
285
+ <div class="md-source__repository">
286
+ GitHub
287
+ </div>
288
+ </a>
289
+
290
+ </div>
291
+
292
+ <ul class="md-nav__list" data-md-scrollfix>
293
+
294
+
295
+
296
+
297
+
298
+
299
+ <li class="md-nav__item">
300
+ <a href="../../.." title="Home" class="md-nav__link">
301
+ Home
302
+ </a>
303
+ </li>
304
+
305
+
306
+
307
+
308
+
309
+
310
+
311
+ <li class="md-nav__item">
312
+ <a href="../../../documentation/getting-started/" title="Getting Started" class="md-nav__link">
313
+ Getting Started
314
+ </a>
315
+ </li>
316
+
317
+
318
+
319
+
320
+
321
+
322
+
323
+ <li class="md-nav__item">
324
+ <a href="../../../documentation/transition-guide/" title="Transition Guide" class="md-nav__link">
325
+ Transition Guide
326
+ </a>
327
+ </li>
328
+
329
+
330
+
331
+
332
+
333
+
334
+
335
+ <li class="md-nav__item md-nav__item--nested">
336
+
337
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-4" type="checkbox" id="nav-4">
338
+
339
+ <label class="md-nav__link" for="nav-4">
340
+ General
341
+ </label>
342
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
343
+ <label class="md-nav__title" for="nav-4">
344
+ General
345
+ </label>
346
+ <ul class="md-nav__list" data-md-scrollfix>
347
+
348
+
349
+
350
+
351
+
352
+
353
+
354
+ <li class="md-nav__item">
355
+ <a href="../../../documentation/getting-started/" title="Getting Started" class="md-nav__link">
356
+ Getting Started
357
+ </a>
358
+ </li>
359
+
360
+
361
+
362
+
363
+
364
+
365
+
366
+ <li class="md-nav__item">
367
+ <a href="../../../documentation/getting-started-dev/" title="Getting Started Contributing" class="md-nav__link">
368
+ Getting Started Contributing
369
+ </a>
370
+ </li>
371
+
372
+
373
+
374
+
375
+
376
+
377
+
378
+ <li class="md-nav__item">
379
+ <a href="../../../documentation/gulp-commands/" title="Gulp Commands" class="md-nav__link">
380
+ Gulp Commands
381
+ </a>
382
+ </li>
383
+
384
+
385
+
386
+
387
+
388
+
389
+
390
+ <li class="md-nav__item">
391
+ <a href="../../../documentation/debugging/" title="Debugging" class="md-nav__link">
392
+ Debugging
393
+ </a>
394
+ </li>
395
+
396
+
397
+
398
+
399
+
400
+
401
+
402
+ <li class="md-nav__item">
403
+ <a href="../../../documentation/documentation/" title="Building Docs" class="md-nav__link">
404
+ Building Docs
405
+ </a>
406
+ </li>
407
+
408
+
409
+
410
+
411
+
412
+
413
+
414
+ <li class="md-nav__item">
415
+ <a href="../../../documentation/deployment/" title="Deployment" class="md-nav__link">
416
+ Deployment
417
+ </a>
418
+ </li>
419
+
420
+
421
+
422
+
423
+
424
+
425
+
426
+ <li class="md-nav__item">
427
+ <a href="../../../documentation/beta-versions/" title="Install Beta Versions" class="md-nav__link">
428
+ Install Beta Versions
429
+ </a>
430
+ </li>
431
+
432
+
433
+
434
+
435
+
436
+
437
+
438
+ <li class="md-nav__item">
439
+ <a href="../../../documentation/polyfill/" title="Polyfills" class="md-nav__link">
440
+ Polyfills
441
+ </a>
442
+ </li>
443
+
444
+
445
+
446
+
447
+
448
+
449
+
450
+ <li class="md-nav__item">
451
+ <a href="../../../documentation/package-structure/" title="Package Structure" class="md-nav__link">
452
+ Package Structure
453
+ </a>
454
+ </li>
455
+
456
+
457
+
458
+
459
+
460
+
461
+
462
+ <li class="md-nav__item">
463
+ <a href="../../../documentation/SPFx-On-Premesis-2016/" title="SPFx On-Premises 2016" class="md-nav__link">
464
+ SPFx On-Premises 2016
465
+ </a>
466
+ </li>
467
+
468
+
469
+
470
+
471
+
472
+
473
+
474
+ <li class="md-nav__item">
475
+ <a href="../../../documentation/transition-guide/" title="Transition Guide" class="md-nav__link">
476
+ Transition Guide
477
+ </a>
478
+ </li>
479
+
480
+
481
+ </ul>
482
+ </nav>
483
+ </li>
484
+
485
+
486
+
487
+
488
+
489
+
490
+
491
+
492
+
493
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
494
+
495
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5" type="checkbox" id="nav-5" checked>
496
+
497
+ <label class="md-nav__link" for="nav-5">
498
+ Packages
499
+ </label>
500
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="1">
501
+ <label class="md-nav__title" for="nav-5">
502
+ Packages
503
+ </label>
504
+ <ul class="md-nav__list" data-md-scrollfix>
505
+
506
+
507
+
508
+
509
+
510
+
511
+
512
+ <li class="md-nav__item">
513
+ <a href="../../../documentation/packages/" title="Packages" class="md-nav__link">
514
+ Packages
515
+ </a>
516
+ </li>
517
+
518
+
519
+
520
+
521
+
522
+
523
+
524
+ <li class="md-nav__item md-nav__item--nested">
525
+
526
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-2" type="checkbox" id="nav-5-2">
527
+
528
+ <label class="md-nav__link" for="nav-5-2">
529
+ common
530
+ </label>
531
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
532
+ <label class="md-nav__title" for="nav-5-2">
533
+ common
534
+ </label>
535
+ <ul class="md-nav__list" data-md-scrollfix>
536
+
537
+
538
+
539
+
540
+
541
+
542
+
543
+ <li class="md-nav__item">
544
+ <a href="../../../common/docs/" title="common" class="md-nav__link">
545
+ common
546
+ </a>
547
+ </li>
548
+
549
+
550
+
551
+
552
+
553
+
554
+
555
+ <li class="md-nav__item">
556
+ <a href="../../../common/docs/adalclient/" title="adalclient" class="md-nav__link">
557
+ adalclient
558
+ </a>
559
+ </li>
560
+
561
+
562
+
563
+
564
+
565
+
566
+
567
+ <li class="md-nav__item">
568
+ <a href="../../../common/docs/blobutil.md" title="blobutil" class="md-nav__link">
569
+ blobutil
570
+ </a>
571
+ </li>
572
+
573
+
574
+
575
+
576
+
577
+
578
+
579
+ <li class="md-nav__item">
580
+ <a href="../../../common/docs/collections/" title="collections" class="md-nav__link">
581
+ collections
582
+ </a>
583
+ </li>
584
+
585
+
586
+
587
+
588
+
589
+
590
+
591
+ <li class="md-nav__item">
592
+ <a href="../../../common/docs/custom-httpclientimpl/" title="Custom HttpClientImpl" class="md-nav__link">
593
+ Custom HttpClientImpl
594
+ </a>
595
+ </li>
596
+
597
+
598
+
599
+
600
+
601
+
602
+
603
+ <li class="md-nav__item">
604
+ <a href="../../../common/docs/libconfig/" title="libconfig" class="md-nav__link">
605
+ libconfig
606
+ </a>
607
+ </li>
608
+
609
+
610
+
611
+
612
+
613
+
614
+
615
+ <li class="md-nav__item">
616
+ <a href="../../../common/docs/netutil/" title="netutil" class="md-nav__link">
617
+ netutil
618
+ </a>
619
+ </li>
620
+
621
+
622
+
623
+
624
+
625
+
626
+
627
+ <li class="md-nav__item">
628
+ <a href="../../../common/docs/storage/" title="storage" class="md-nav__link">
629
+ storage
630
+ </a>
631
+ </li>
632
+
633
+
634
+
635
+
636
+
637
+
638
+
639
+ <li class="md-nav__item">
640
+ <a href="../../../common/docs/util/" title="util" class="md-nav__link">
641
+ util
642
+ </a>
643
+ </li>
644
+
645
+
646
+ </ul>
647
+ </nav>
648
+ </li>
649
+
650
+
651
+
652
+
653
+
654
+
655
+
656
+ <li class="md-nav__item md-nav__item--nested">
657
+
658
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-3" type="checkbox" id="nav-5-3">
659
+
660
+ <label class="md-nav__link" for="nav-5-3">
661
+ config-store
662
+ </label>
663
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
664
+ <label class="md-nav__title" for="nav-5-3">
665
+ config-store
666
+ </label>
667
+ <ul class="md-nav__list" data-md-scrollfix>
668
+
669
+
670
+
671
+
672
+
673
+
674
+
675
+ <li class="md-nav__item">
676
+ <a href="../../../config-store/docs/" title="config-store" class="md-nav__link">
677
+ config-store
678
+ </a>
679
+ </li>
680
+
681
+
682
+
683
+
684
+
685
+
686
+
687
+ <li class="md-nav__item">
688
+ <a href="../../../config-store/docs/configuration/" title="configuration" class="md-nav__link">
689
+ configuration
690
+ </a>
691
+ </li>
692
+
693
+
694
+
695
+
696
+
697
+
698
+
699
+ <li class="md-nav__item">
700
+ <a href="../../../config-store/docs/providers/" title="providers" class="md-nav__link">
701
+ providers
702
+ </a>
703
+ </li>
704
+
705
+
706
+ </ul>
707
+ </nav>
708
+ </li>
709
+
710
+
711
+
712
+
713
+
714
+
715
+
716
+ <li class="md-nav__item md-nav__item--nested">
717
+
718
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-4" type="checkbox" id="nav-5-4">
719
+
720
+ <label class="md-nav__link" for="nav-5-4">
721
+ graph
722
+ </label>
723
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
724
+ <label class="md-nav__title" for="nav-5-4">
725
+ graph
726
+ </label>
727
+ <ul class="md-nav__list" data-md-scrollfix>
728
+
729
+
730
+
731
+
732
+
733
+
734
+
735
+ <li class="md-nav__item">
736
+ <a href="../../../graph/docs/" title="graph" class="md-nav__link">
737
+ graph
738
+ </a>
739
+ </li>
740
+
741
+
742
+
743
+
744
+
745
+
746
+
747
+ <li class="md-nav__item">
748
+ <a href="../../../graph/docs/contacts/" title="contacts" class="md-nav__link">
749
+ contacts
750
+ </a>
751
+ </li>
752
+
753
+
754
+
755
+
756
+
757
+
758
+
759
+ <li class="md-nav__item">
760
+ <a href="../../../graph/docs/directoryobjects/" title="directory objects" class="md-nav__link">
761
+ directory objects
762
+ </a>
763
+ </li>
764
+
765
+
766
+
767
+
768
+
769
+
770
+
771
+ <li class="md-nav__item">
772
+ <a href="../../../graph/docs/invitations/" title="invitations" class="md-nav__link">
773
+ invitations
774
+ </a>
775
+ </li>
776
+
777
+
778
+
779
+
780
+
781
+
782
+
783
+ <li class="md-nav__item">
784
+ <a href="../../../graph/docs/onedrive/" title="onedrive" class="md-nav__link">
785
+ onedrive
786
+ </a>
787
+ </li>
788
+
789
+
790
+
791
+
792
+
793
+
794
+
795
+ <li class="md-nav__item">
796
+ <a href="../../../graph/docs/planner/" title="planner" class="md-nav__link">
797
+ planner
798
+ </a>
799
+ </li>
800
+
801
+
802
+
803
+
804
+
805
+
806
+
807
+ <li class="md-nav__item">
808
+ <a href="../../../graph/docs/subscriptions/" title="subscriptions" class="md-nav__link">
809
+ subscriptions
810
+ </a>
811
+ </li>
812
+
813
+
814
+
815
+
816
+
817
+
818
+
819
+ <li class="md-nav__item">
820
+ <a href="../../../graph/docs/teams/" title="teams" class="md-nav__link">
821
+ teams
822
+ </a>
823
+ </li>
824
+
825
+
826
+ </ul>
827
+ </nav>
828
+ </li>
829
+
830
+
831
+
832
+
833
+
834
+
835
+
836
+ <li class="md-nav__item">
837
+ <a href="../../../logging/docs/" title="logging" class="md-nav__link">
838
+ logging
839
+ </a>
840
+ </li>
841
+
842
+
843
+
844
+
845
+
846
+
847
+
848
+ <li class="md-nav__item md-nav__item--nested">
849
+
850
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-6" type="checkbox" id="nav-5-6">
851
+
852
+ <label class="md-nav__link" for="nav-5-6">
853
+ nodejs
854
+ </label>
855
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
856
+ <label class="md-nav__title" for="nav-5-6">
857
+ nodejs
858
+ </label>
859
+ <ul class="md-nav__list" data-md-scrollfix>
860
+
861
+
862
+
863
+
864
+
865
+
866
+
867
+ <li class="md-nav__item">
868
+ <a href="../../../nodejs/docs/" title="nodejs" class="md-nav__link">
869
+ nodejs
870
+ </a>
871
+ </li>
872
+
873
+
874
+
875
+
876
+
877
+
878
+
879
+ <li class="md-nav__item">
880
+ <a href="../../../nodejs/docs/adal-fetch-client/" title="AdalFetchClient" class="md-nav__link">
881
+ AdalFetchClient
882
+ </a>
883
+ </li>
884
+
885
+
886
+
887
+
888
+
889
+
890
+
891
+ <li class="md-nav__item">
892
+ <a href="../../../nodejs/docs/sp-fetch-client/" title="SPFetchClient" class="md-nav__link">
893
+ SPFetchClient
894
+ </a>
895
+ </li>
896
+
897
+
898
+
899
+
900
+
901
+
902
+
903
+ <li class="md-nav__item">
904
+ <a href="../../../nodejs/docs/bearer-token-fetch-client/" title="BearerTokenFetchClient" class="md-nav__link">
905
+ BearerTokenFetchClient
906
+ </a>
907
+ </li>
908
+
909
+
910
+
911
+
912
+
913
+
914
+
915
+ <li class="md-nav__item">
916
+ <a href="../../../nodejs/docs/provider-hosted-app/" title="ProviderHostedRequestContext" class="md-nav__link">
917
+ ProviderHostedRequestContext
918
+ </a>
919
+ </li>
920
+
921
+
922
+ </ul>
923
+ </nav>
924
+ </li>
925
+
926
+
927
+
928
+
929
+
930
+
931
+
932
+
933
+
934
+ <li class="md-nav__item md-nav__item--active md-nav__item--nested">
935
+
936
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-7" type="checkbox" id="nav-5-7" checked>
937
+
938
+ <label class="md-nav__link" for="nav-5-7">
939
+ odata
940
+ </label>
941
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
942
+ <label class="md-nav__title" for="nav-5-7">
943
+ odata
944
+ </label>
945
+ <ul class="md-nav__list" data-md-scrollfix>
946
+
947
+
948
+
949
+
950
+
951
+
952
+
953
+ <li class="md-nav__item">
954
+ <a href="../" title="odata" class="md-nav__link">
955
+ odata
956
+ </a>
957
+ </li>
958
+
959
+
960
+
961
+
962
+
963
+
964
+
965
+
966
+
967
+ <li class="md-nav__item md-nav__item--active">
968
+
969
+ <input class="md-toggle md-nav__toggle" data-md-toggle="toc" type="checkbox" id="__toc">
970
+
971
+
972
+
973
+
974
+ <label class="md-nav__link md-nav__link--active" for="__toc">
975
+ caching
976
+ </label>
977
+
978
+ <a href="./" title="caching" class="md-nav__link md-nav__link--active">
979
+ caching
980
+ </a>
981
+
982
+
983
+ <nav class="md-nav md-nav--secondary">
984
+
985
+
986
+
987
+
988
+
989
+ <label class="md-nav__title" for="__toc">Table of contents</label>
990
+ <ul class="md-nav__list" data-md-scrollfix>
991
+
992
+ <li class="md-nav__item">
993
+ <a href="#basic-example" title="Basic example" class="md-nav__link">
994
+ Basic example
995
+ </a>
996
+
997
+ </li>
998
+
999
+ <li class="md-nav__item">
1000
+ <a href="#globally-configure-cache-settings" title="Globally Configure Cache Settings" class="md-nav__link">
1001
+ Globally Configure Cache Settings
1002
+ </a>
1003
+
1004
+ </li>
1005
+
1006
+ <li class="md-nav__item">
1007
+ <a href="#per-call-configuration" title="Per Call Configuration" class="md-nav__link">
1008
+ Per Call Configuration
1009
+ </a>
1010
+
1011
+ </li>
1012
+
1013
+ <li class="md-nav__item">
1014
+ <a href="#using-batching-with-caching" title="Using Batching with Caching" class="md-nav__link">
1015
+ Using Batching with Caching
1016
+ </a>
1017
+
1018
+ </li>
1019
+
1020
+ <li class="md-nav__item">
1021
+ <a href="#implement-custom-caching" title="Implement Custom Caching" class="md-nav__link">
1022
+ Implement Custom Caching
1023
+ </a>
1024
+
1025
+ <nav class="md-nav">
1026
+ <ul class="md-nav__list">
1027
+
1028
+ <li class="md-nav__item">
1029
+ <a href="#implement-caching-helper-method" title="Implement caching helper method:" class="md-nav__link">
1030
+ Implement caching helper method:
1031
+ </a>
1032
+
1033
+ </li>
1034
+
1035
+ <li class="md-nav__item">
1036
+ <a href="#usage" title="Usage" class="md-nav__link">
1037
+ Usage
1038
+ </a>
1039
+
1040
+ </li>
1041
+
1042
+ <li class="md-nav__item">
1043
+ <a href="#wrapper-function" title="Wrapper Function" class="md-nav__link">
1044
+ Wrapper Function
1045
+ </a>
1046
+
1047
+ </li>
1048
+
1049
+ </ul>
1050
+ </nav>
1051
+
1052
+ </li>
1053
+
1054
+
1055
+
1056
+
1057
+
1058
+ </ul>
1059
+
1060
+ </nav>
1061
+
1062
+ </li>
1063
+
1064
+
1065
+
1066
+
1067
+
1068
+
1069
+
1070
+ <li class="md-nav__item">
1071
+ <a href="../core/" title="core" class="md-nav__link">
1072
+ core
1073
+ </a>
1074
+ </li>
1075
+
1076
+
1077
+
1078
+
1079
+
1080
+
1081
+
1082
+ <li class="md-nav__item">
1083
+ <a href="../odata-batch/" title="OData Batching" class="md-nav__link">
1084
+ OData Batching
1085
+ </a>
1086
+ </li>
1087
+
1088
+
1089
+
1090
+
1091
+
1092
+
1093
+
1094
+ <li class="md-nav__item">
1095
+ <a href="../parsers/" title="Parsers" class="md-nav__link">
1096
+ Parsers
1097
+ </a>
1098
+ </li>
1099
+
1100
+
1101
+
1102
+
1103
+
1104
+
1105
+
1106
+ <li class="md-nav__item">
1107
+ <a href="../pipeline/" title="Pipeline" class="md-nav__link">
1108
+ Pipeline
1109
+ </a>
1110
+ </li>
1111
+
1112
+
1113
+
1114
+
1115
+
1116
+
1117
+
1118
+ <li class="md-nav__item">
1119
+ <a href="../queryable/" title="Queryable" class="md-nav__link">
1120
+ Queryable
1121
+ </a>
1122
+ </li>
1123
+
1124
+
1125
+ </ul>
1126
+ </nav>
1127
+ </li>
1128
+
1129
+
1130
+
1131
+
1132
+
1133
+
1134
+
1135
+ <li class="md-nav__item">
1136
+ <a href="../../../pnpjs/docs/" title="pnpjs" class="md-nav__link">
1137
+ pnpjs
1138
+ </a>
1139
+ </li>
1140
+
1141
+
1142
+
1143
+
1144
+
1145
+
1146
+
1147
+ <li class="md-nav__item md-nav__item--nested">
1148
+
1149
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-9" type="checkbox" id="nav-5-9">
1150
+
1151
+ <label class="md-nav__link" for="nav-5-9">
1152
+ sp
1153
+ </label>
1154
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
1155
+ <label class="md-nav__title" for="nav-5-9">
1156
+ sp
1157
+ </label>
1158
+ <ul class="md-nav__list" data-md-scrollfix>
1159
+
1160
+
1161
+
1162
+
1163
+
1164
+
1165
+
1166
+ <li class="md-nav__item">
1167
+ <a href="../../../sp/docs/" title="sp" class="md-nav__link">
1168
+ sp
1169
+ </a>
1170
+ </li>
1171
+
1172
+
1173
+
1174
+
1175
+
1176
+
1177
+
1178
+ <li class="md-nav__item">
1179
+ <a href="../../../sp/docs/alias-parameters/" title="Alias Parameters" class="md-nav__link">
1180
+ Alias Parameters
1181
+ </a>
1182
+ </li>
1183
+
1184
+
1185
+
1186
+
1187
+
1188
+
1189
+
1190
+ <li class="md-nav__item">
1191
+ <a href="../../../sp/docs/alm/" title="ALM api" class="md-nav__link">
1192
+ ALM api
1193
+ </a>
1194
+ </li>
1195
+
1196
+
1197
+
1198
+
1199
+
1200
+
1201
+
1202
+ <li class="md-nav__item">
1203
+ <a href="../../../sp/docs/attachments/" title="Attachments" class="md-nav__link">
1204
+ Attachments
1205
+ </a>
1206
+ </li>
1207
+
1208
+
1209
+
1210
+
1211
+
1212
+
1213
+
1214
+ <li class="md-nav__item">
1215
+ <a href="../../../sp/docs/client-side-pages/" title="Client-side Pages" class="md-nav__link">
1216
+ Client-side Pages
1217
+ </a>
1218
+ </li>
1219
+
1220
+
1221
+
1222
+
1223
+
1224
+
1225
+
1226
+ <li class="md-nav__item">
1227
+ <a href="../../../sp/docs/content-types/" title="Content Types" class="md-nav__link">
1228
+ Content Types
1229
+ </a>
1230
+ </li>
1231
+
1232
+
1233
+
1234
+
1235
+
1236
+
1237
+
1238
+ <li class="md-nav__item">
1239
+ <a href="../../../sp/docs/entity-merging/" title="Entity Merging" class="md-nav__link">
1240
+ Entity Merging
1241
+ </a>
1242
+ </li>
1243
+
1244
+
1245
+
1246
+
1247
+
1248
+
1249
+
1250
+ <li class="md-nav__item">
1251
+ <a href="../../../sp/docs/features/" title="Features" class="md-nav__link">
1252
+ Features
1253
+ </a>
1254
+ </li>
1255
+
1256
+
1257
+
1258
+
1259
+
1260
+
1261
+
1262
+ <li class="md-nav__item">
1263
+ <a href="../../../sp/docs/fields/" title="Fields" class="md-nav__link">
1264
+ Fields
1265
+ </a>
1266
+ </li>
1267
+
1268
+
1269
+
1270
+
1271
+
1272
+
1273
+
1274
+ <li class="md-nav__item">
1275
+ <a href="../../../sp/docs/files/" title="Files" class="md-nav__link">
1276
+ Files
1277
+ </a>
1278
+ </li>
1279
+
1280
+
1281
+
1282
+
1283
+
1284
+
1285
+
1286
+ <li class="md-nav__item">
1287
+ <a href="../../../sp/docs/items/" title="List Items" class="md-nav__link">
1288
+ List Items
1289
+ </a>
1290
+ </li>
1291
+
1292
+
1293
+
1294
+
1295
+
1296
+
1297
+
1298
+ <li class="md-nav__item">
1299
+ <a href="../../../sp/docs/navigation-service/" title="Navigation Service" class="md-nav__link">
1300
+ Navigation Service
1301
+ </a>
1302
+ </li>
1303
+
1304
+
1305
+
1306
+
1307
+
1308
+
1309
+
1310
+ <li class="md-nav__item">
1311
+ <a href="../../../sp/docs/permissions/" title="Permissions" class="md-nav__link">
1312
+ Permissions
1313
+ </a>
1314
+ </li>
1315
+
1316
+
1317
+
1318
+
1319
+
1320
+
1321
+
1322
+ <li class="md-nav__item">
1323
+ <a href="../../../sp/docs/profiles/" title="Profiles" class="md-nav__link">
1324
+ Profiles
1325
+ </a>
1326
+ </li>
1327
+
1328
+
1329
+
1330
+
1331
+
1332
+
1333
+
1334
+ <li class="md-nav__item">
1335
+ <a href="../../../sp/docs/related-items/" title="Related Items" class="md-nav__link">
1336
+ Related Items
1337
+ </a>
1338
+ </li>
1339
+
1340
+
1341
+
1342
+
1343
+
1344
+
1345
+
1346
+ <li class="md-nav__item">
1347
+ <a href="../../../sp/docs/search/" title="Search" class="md-nav__link">
1348
+ Search
1349
+ </a>
1350
+ </li>
1351
+
1352
+
1353
+
1354
+
1355
+
1356
+
1357
+
1358
+ <li class="md-nav__item">
1359
+ <a href="../../../sp/docs/sharing/" title="Sharing" class="md-nav__link">
1360
+ Sharing
1361
+ </a>
1362
+ </li>
1363
+
1364
+
1365
+
1366
+
1367
+
1368
+
1369
+
1370
+ <li class="md-nav__item">
1371
+ <a href="../../../sp/docs/sites/" title="Sites" class="md-nav__link">
1372
+ Sites
1373
+ </a>
1374
+ </li>
1375
+
1376
+
1377
+
1378
+
1379
+
1380
+
1381
+
1382
+ <li class="md-nav__item">
1383
+ <a href="../../../sp/docs/sitedesigns/" title="Site Designs" class="md-nav__link">
1384
+ Site Designs
1385
+ </a>
1386
+ </li>
1387
+
1388
+
1389
+
1390
+
1391
+
1392
+
1393
+
1394
+ <li class="md-nav__item">
1395
+ <a href="../../../sp/docs/social/" title="Social" class="md-nav__link">
1396
+ Social
1397
+ </a>
1398
+ </li>
1399
+
1400
+
1401
+
1402
+
1403
+
1404
+
1405
+
1406
+ <li class="md-nav__item">
1407
+ <a href="../../../sp/docs/sp-utilities-utility/" title="SP.Utilities.Utility" class="md-nav__link">
1408
+ SP.Utilities.Utility
1409
+ </a>
1410
+ </li>
1411
+
1412
+
1413
+
1414
+
1415
+
1416
+
1417
+
1418
+ <li class="md-nav__item">
1419
+ <a href="../../../sp/docs/tenant-properties/" title="Tenant Properties" class="md-nav__link">
1420
+ Tenant Properties
1421
+ </a>
1422
+ </li>
1423
+
1424
+
1425
+
1426
+
1427
+
1428
+
1429
+
1430
+ <li class="md-nav__item">
1431
+ <a href="../../../sp/docs/views/" title="Views" class="md-nav__link">
1432
+ Views
1433
+ </a>
1434
+ </li>
1435
+
1436
+
1437
+
1438
+
1439
+
1440
+
1441
+
1442
+ <li class="md-nav__item">
1443
+ <a href="../../../sp/docs/webs/" title="Webs" class="md-nav__link">
1444
+ Webs
1445
+ </a>
1446
+ </li>
1447
+
1448
+
1449
+
1450
+
1451
+
1452
+
1453
+
1454
+ <li class="md-nav__item">
1455
+ <a href="../../../sp/docs/comments-likes/" title="Comments and Likes" class="md-nav__link">
1456
+ Comments and Likes
1457
+ </a>
1458
+ </li>
1459
+
1460
+
1461
+ </ul>
1462
+ </nav>
1463
+ </li>
1464
+
1465
+
1466
+
1467
+
1468
+
1469
+
1470
+
1471
+ <li class="md-nav__item md-nav__item--nested">
1472
+
1473
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-10" type="checkbox" id="nav-5-10">
1474
+
1475
+ <label class="md-nav__link" for="nav-5-10">
1476
+ sp-addinhelpers
1477
+ </label>
1478
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
1479
+ <label class="md-nav__title" for="nav-5-10">
1480
+ sp-addinhelpers
1481
+ </label>
1482
+ <ul class="md-nav__list" data-md-scrollfix>
1483
+
1484
+
1485
+
1486
+
1487
+
1488
+
1489
+
1490
+ <li class="md-nav__item">
1491
+ <a href="../../../sp-addinhelpers/docs/" title="sp-addinhelpers" class="md-nav__link">
1492
+ sp-addinhelpers
1493
+ </a>
1494
+ </li>
1495
+
1496
+
1497
+
1498
+
1499
+
1500
+
1501
+
1502
+ <li class="md-nav__item">
1503
+ <a href="../../../sp-addinhelpers/docs/sp-request-executor-client/" title="SPRequestExecutorClient" class="md-nav__link">
1504
+ SPRequestExecutorClient
1505
+ </a>
1506
+ </li>
1507
+
1508
+
1509
+
1510
+
1511
+
1512
+
1513
+
1514
+ <li class="md-nav__item">
1515
+ <a href="../../../sp-addinhelpers/docs/sp-rest-addin/" title="SPRestAddIn" class="md-nav__link">
1516
+ SPRestAddIn
1517
+ </a>
1518
+ </li>
1519
+
1520
+
1521
+ </ul>
1522
+ </nav>
1523
+ </li>
1524
+
1525
+
1526
+
1527
+
1528
+
1529
+
1530
+
1531
+ <li class="md-nav__item">
1532
+ <a href="../../../sp-clientsvc/docs/" title="sp-clientsvc" class="md-nav__link">
1533
+ sp-clientsvc
1534
+ </a>
1535
+ </li>
1536
+
1537
+
1538
+
1539
+
1540
+
1541
+
1542
+
1543
+ <li class="md-nav__item md-nav__item--nested">
1544
+
1545
+ <input class="md-toggle md-nav__toggle" data-md-toggle="nav-5-12" type="checkbox" id="nav-5-12">
1546
+
1547
+ <label class="md-nav__link" for="nav-5-12">
1548
+ sp-taxonomy
1549
+ </label>
1550
+ <nav class="md-nav" data-md-component="collapsible" data-md-level="2">
1551
+ <label class="md-nav__title" for="nav-5-12">
1552
+ sp-taxonomy
1553
+ </label>
1554
+ <ul class="md-nav__list" data-md-scrollfix>
1555
+
1556
+
1557
+
1558
+
1559
+
1560
+
1561
+
1562
+ <li class="md-nav__item">
1563
+ <a href="../../../sp-taxonomy/docs/" title="sp-taxonomy" class="md-nav__link">
1564
+ sp-taxonomy
1565
+ </a>
1566
+ </li>
1567
+
1568
+
1569
+
1570
+
1571
+
1572
+
1573
+
1574
+ <li class="md-nav__item">
1575
+ <a href="../../../sp-taxonomy/docs/term-stores/" title="Term Stores" class="md-nav__link">
1576
+ Term Stores
1577
+ </a>
1578
+ </li>
1579
+
1580
+
1581
+
1582
+
1583
+
1584
+
1585
+
1586
+ <li class="md-nav__item">
1587
+ <a href="../../../sp-taxonomy/docs/term-groups/" title="Term Groups" class="md-nav__link">
1588
+ Term Groups
1589
+ </a>
1590
+ </li>
1591
+
1592
+
1593
+
1594
+
1595
+
1596
+
1597
+
1598
+ <li class="md-nav__item">
1599
+ <a href="../../../sp-taxonomy/docs/term-sets/" title="Term Sets" class="md-nav__link">
1600
+ Term Sets
1601
+ </a>
1602
+ </li>
1603
+
1604
+
1605
+
1606
+
1607
+
1608
+
1609
+
1610
+ <li class="md-nav__item">
1611
+ <a href="../../../sp-taxonomy/docs/terms/" title="Terms" class="md-nav__link">
1612
+ Terms
1613
+ </a>
1614
+ </li>
1615
+
1616
+
1617
+
1618
+
1619
+
1620
+
1621
+
1622
+ <li class="md-nav__item">
1623
+ <a href="../../../sp-taxonomy/docs/labels/" title="Labels" class="md-nav__link">
1624
+ Labels
1625
+ </a>
1626
+ </li>
1627
+
1628
+
1629
+
1630
+
1631
+
1632
+
1633
+
1634
+ <li class="md-nav__item">
1635
+ <a href="../../../sp-taxonomy/docs/utilities/" title="Utilities" class="md-nav__link">
1636
+ Utilities
1637
+ </a>
1638
+ </li>
1639
+
1640
+
1641
+ </ul>
1642
+ </nav>
1643
+ </li>
1644
+
1645
+
1646
+ </ul>
1647
+ </nav>
1648
+ </li>
1649
+
1650
+
1651
+ </ul>
1652
+ </nav>
1653
+ </div>
1654
+ </div>
1655
+ </div>
1656
+
1657
+
1658
+ <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
1659
+ <div class="md-sidebar__scrollwrap">
1660
+ <div class="md-sidebar__inner">
1661
+
1662
+ <nav class="md-nav md-nav--secondary">
1663
+
1664
+
1665
+
1666
+
1667
+
1668
+ <label class="md-nav__title" for="__toc">Table of contents</label>
1669
+ <ul class="md-nav__list" data-md-scrollfix>
1670
+
1671
+ <li class="md-nav__item">
1672
+ <a href="#basic-example" title="Basic example" class="md-nav__link">
1673
+ Basic example
1674
+ </a>
1675
+
1676
+ </li>
1677
+
1678
+ <li class="md-nav__item">
1679
+ <a href="#globally-configure-cache-settings" title="Globally Configure Cache Settings" class="md-nav__link">
1680
+ Globally Configure Cache Settings
1681
+ </a>
1682
+
1683
+ </li>
1684
+
1685
+ <li class="md-nav__item">
1686
+ <a href="#per-call-configuration" title="Per Call Configuration" class="md-nav__link">
1687
+ Per Call Configuration
1688
+ </a>
1689
+
1690
+ </li>
1691
+
1692
+ <li class="md-nav__item">
1693
+ <a href="#using-batching-with-caching" title="Using Batching with Caching" class="md-nav__link">
1694
+ Using Batching with Caching
1695
+ </a>
1696
+
1697
+ </li>
1698
+
1699
+ <li class="md-nav__item">
1700
+ <a href="#implement-custom-caching" title="Implement Custom Caching" class="md-nav__link">
1701
+ Implement Custom Caching
1702
+ </a>
1703
+
1704
+ <nav class="md-nav">
1705
+ <ul class="md-nav__list">
1706
+
1707
+ <li class="md-nav__item">
1708
+ <a href="#implement-caching-helper-method" title="Implement caching helper method:" class="md-nav__link">
1709
+ Implement caching helper method:
1710
+ </a>
1711
+
1712
+ </li>
1713
+
1714
+ <li class="md-nav__item">
1715
+ <a href="#usage" title="Usage" class="md-nav__link">
1716
+ Usage
1717
+ </a>
1718
+
1719
+ </li>
1720
+
1721
+ <li class="md-nav__item">
1722
+ <a href="#wrapper-function" title="Wrapper Function" class="md-nav__link">
1723
+ Wrapper Function
1724
+ </a>
1725
+
1726
+ </li>
1727
+
1728
+ </ul>
1729
+ </nav>
1730
+
1731
+ </li>
1732
+
1733
+
1734
+
1735
+
1736
+
1737
+ </ul>
1738
+
1739
+ </nav>
1740
+ </div>
1741
+ </div>
1742
+ </div>
1743
+
1744
+
1745
+ <div class="md-content">
1746
+ <article class="md-content__inner md-typeset">
1747
+
1748
+
1749
+ <a href="http://github.com/pnp/pnpjs/tree/dev/packages/queryable/docs/caching.md" title="Edit this page" class="md-icon md-content__icon">&#xE3C9;</a>
1750
+
1751
+
1752
+ <h1 id="pnpodatacaching">@pnp/queryable/caching<a class="headerlink" href="#pnpodatacaching" title="Permanent link">&para;</a></h1>
1753
+ <p>Often times data doesn't change that quickly, especially in the case of rolling up corporate news or upcoming events. These types of things can be cached for minutes if not hours. To help make caching easy you just need to insert the usingCaching method in your chain. This only applies to get requests. The usingCaching method can be used with the inBatch method as well to cache the results of batched requests.</p>
1754
+ <p>The below examples uses the @pnp/sp library as the example - but this works equally well for any library making use of the @pnp/queryable base classes, such as @pnp/graph.</p>
1755
+ <h2 id="basic-example">Basic example<a class="headerlink" href="#basic-example" title="Permanent link">&para;</a></h2>
1756
+ <p>You can use the method without any additional configuration. We have made some default choices for you and will discuss ways to override them later. The below code will get the items from the list, first checking the cache for the value. You can also use it with OData operators such as top and orderBy. The usingCaching() should always be the last method in the chain before the get() (OR if you are using [[batching]] these methods can be transposed, more details below).</p>
1757
+ <div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span> <span class="nx">sp</span> <span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;@pnp/sp&quot;</span><span class="p">;</span>
1758
+
1759
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">getByTitle</span><span class="p">(</span><span class="s2">&quot;Tasks&quot;</span><span class="p">).</span><span class="nx">items</span><span class="p">.</span><span class="nx">usingCaching</span><span class="p">().</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1760
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1761
+ <span class="p">});</span>
1762
+
1763
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">getByTitle</span><span class="p">(</span><span class="s2">&quot;Tasks&quot;</span><span class="p">).</span><span class="nx">items</span><span class="p">.</span><span class="nx">top</span><span class="p">(</span><span class="mi">5</span><span class="p">).</span><span class="nx">orderBy</span><span class="p">(</span><span class="s2">&quot;Modified&quot;</span><span class="p">).</span><span class="nx">usingCaching</span><span class="p">().</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1764
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1765
+ <span class="p">});</span>
1766
+ </pre></div>
1767
+
1768
+
1769
+ <h2 id="globally-configure-cache-settings">Globally Configure Cache Settings<a class="headerlink" href="#globally-configure-cache-settings" title="Permanent link">&para;</a></h2>
1770
+ <p>If you would like to not use the default values, but don't want to clutter your code by setting the caching values on each request you can configure custom options globally. These will be applied to all calls to usingCaching() throughout your application.</p>
1771
+ <div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span> <span class="nx">sp</span> <span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;@pnp/sp&quot;</span><span class="p">;</span>
1772
+
1773
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">setup</span><span class="p">({</span>
1774
+ <span class="nx">defaultCachingStore</span><span class="o">:</span> <span class="s2">&quot;session&quot;</span><span class="p">,</span> <span class="c1">// or &quot;local&quot;</span>
1775
+ <span class="nx">defaultCachingTimeoutSeconds</span>: <span class="kt">30</span><span class="p">,</span>
1776
+ <span class="nx">globalCacheDisable</span>: <span class="kt">false</span> <span class="c1">// or true to disable caching in case of debugging/testing</span>
1777
+ <span class="p">});</span>
1778
+
1779
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">getByTitle</span><span class="p">(</span><span class="s2">&quot;Tasks&quot;</span><span class="p">).</span><span class="nx">items</span><span class="p">.</span><span class="nx">top</span><span class="p">(</span><span class="mi">5</span><span class="p">).</span><span class="nx">orderBy</span><span class="p">(</span><span class="s2">&quot;Modified&quot;</span><span class="p">).</span><span class="nx">usingCaching</span><span class="p">().</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1780
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1781
+ <span class="p">});</span>
1782
+ </pre></div>
1783
+
1784
+
1785
+ <h2 id="per-call-configuration">Per Call Configuration<a class="headerlink" href="#per-call-configuration" title="Permanent link">&para;</a></h2>
1786
+ <p>If you prefer more verbose code or have a need to manage the cache settings on a per request basis you can include individual caching settings for each request. These settings are passed to the usingCaching method call and are defined in the following interface. If you want to use the per-request options you must include the key.</p>
1787
+ <div class="codehilite"><pre><span></span><span class="kr">export</span> <span class="kr">interface</span> <span class="nx">ICachingOptions</span> <span class="p">{</span>
1788
+ <span class="nx">expiration?</span>: <span class="kt">Date</span><span class="p">;</span>
1789
+ <span class="nx">storeName</span><span class="o">?:</span> <span class="s2">&quot;session&quot;</span> <span class="o">|</span> <span class="s2">&quot;local&quot;</span><span class="p">;</span>
1790
+ <span class="nx">key</span>: <span class="kt">string</span><span class="p">;</span>
1791
+ <span class="p">}</span>
1792
+ </pre></div>
1793
+
1794
+
1795
+ <div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span> <span class="nx">sp</span> <span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;@pnp/sp&quot;</span><span class="p">;</span>
1796
+ <span class="kr">import</span> <span class="p">{</span> <span class="nx">dateAdd</span> <span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;@pnp/core&quot;</span><span class="p">;</span>
1797
+
1798
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">getByTitle</span><span class="p">(</span><span class="s2">&quot;Tasks&quot;</span><span class="p">).</span><span class="nx">items</span><span class="p">.</span><span class="nx">top</span><span class="p">(</span><span class="mi">5</span><span class="p">).</span><span class="nx">orderBy</span><span class="p">(</span><span class="s2">&quot;Modified&quot;</span><span class="p">).</span><span class="nx">usingCaching</span><span class="p">({</span>
1799
+ <span class="nx">expiration</span>: <span class="kt">dateAdd</span><span class="p">(</span><span class="k">new</span> <span class="nb">Date</span><span class="p">(),</span> <span class="s2">&quot;minute&quot;</span><span class="p">,</span> <span class="mi">20</span><span class="p">),</span>
1800
+ <span class="nx">key</span><span class="o">:</span> <span class="s2">&quot;My Key&quot;</span><span class="p">,</span>
1801
+ <span class="nx">storeName</span><span class="o">:</span> <span class="s2">&quot;local&quot;</span>
1802
+ <span class="p">}).</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1803
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1804
+ <span class="p">});</span>
1805
+ </pre></div>
1806
+
1807
+
1808
+ <h2 id="using-batching-with-caching">Using <a href="../odata-batch/">Batching</a> with Caching<a class="headerlink" href="#using-batching-with-caching" title="Permanent link">&para;</a></h2>
1809
+ <p>You can use batching and caching together, but remember caching is only applied to get requests. When you use them together the methods can be transposed, the below example is valid.</p>
1810
+ <div class="codehilite"><pre><span></span><span class="kr">import</span> <span class="p">{</span> <span class="nx">sp</span> <span class="p">}</span> <span class="nx">from</span> <span class="s2">&quot;@pnp/sp&quot;</span><span class="p">;</span>
1811
+
1812
+ <span class="kd">let</span> <span class="nx">batch</span> <span class="o">=</span> <span class="nx">sp</span><span class="p">.</span><span class="nx">createBatch</span><span class="p">();</span>
1813
+
1814
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">inBatch</span><span class="p">(</span><span class="nx">batch</span><span class="p">).</span><span class="nx">usingCaching</span><span class="p">().</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1815
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1816
+ <span class="p">});</span>
1817
+
1818
+ <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">lists</span><span class="p">.</span><span class="nx">getByTitle</span><span class="p">(</span><span class="s2">&quot;Tasks&quot;</span><span class="p">).</span><span class="nx">items</span><span class="p">.</span><span class="nx">usingCaching</span><span class="p">().</span><span class="nx">inBatch</span><span class="p">(</span><span class="nx">batch</span><span class="p">).</span><span class="nx">get</span><span class="p">().</span><span class="nx">then</span><span class="p">(</span><span class="nx">r</span> <span class="o">=&gt;</span> <span class="p">{</span>
1819
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">r</span><span class="p">)</span>
1820
+ <span class="p">});</span>
1821
+
1822
+ <span class="nx">batch</span><span class="p">.</span><span class="nx">execute</span><span class="p">().</span><span class="nx">then</span><span class="p">(()</span> <span class="o">=&gt;</span> <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="s2">&quot;All done!&quot;</span><span class="p">));</span>
1823
+ </pre></div>
1824
+
1825
+
1826
+ <h2 id="implement-custom-caching">Implement Custom Caching<a class="headerlink" href="#implement-custom-caching" title="Permanent link">&para;</a></h2>
1827
+ <p>You may desire to use a different caching strategy than the one we implemented within the library. The easiest way to achieve this is to wrap the request in your custom caching functionality using the unresolved promise as needed. Here we show how to implement the Stale While Revalidate pattern <a href="https://github.com/pnp/pnpjs/issues/371">as discussed here</a>.</p>
1828
+ <h3 id="implement-caching-helper-method">Implement caching helper method:<a class="headerlink" href="#implement-caching-helper-method" title="Permanent link">&para;</a></h3>
1829
+ <p>We create a map to act as our cache storage and a function to wrap the request caching logic</p>
1830
+ <div class="codehilite"><pre><span></span><span class="kr">const</span> <span class="nx">map</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">Map</span><span class="o">&lt;</span><span class="kt">string</span><span class="p">,</span> <span class="nx">any</span><span class="o">&gt;</span><span class="p">();</span>
1831
+
1832
+ <span class="nx">async</span> <span class="kd">function</span> <span class="nx">staleWhileRevalidate</span><span class="o">&lt;</span><span class="nx">T</span><span class="o">&gt;</span><span class="p">(</span><span class="nx">key</span>: <span class="kt">string</span><span class="p">,</span> <span class="nx">p</span>: <span class="kt">Promise</span><span class="o">&lt;</span><span class="nx">T</span><span class="o">&gt;</span><span class="p">)</span><span class="o">:</span> <span class="nx">Promise</span><span class="o">&lt;</span><span class="nx">T</span><span class="o">&gt;</span> <span class="p">{</span>
1833
+
1834
+ <span class="k">if</span> <span class="p">(</span><span class="nx">map</span><span class="p">.</span><span class="nx">has</span><span class="p">(</span><span class="nx">key</span><span class="p">))</span> <span class="p">{</span>
1835
+
1836
+ <span class="c1">// In Cache</span>
1837
+ <span class="nx">p</span><span class="p">.</span><span class="nx">then</span><span class="p">(</span><span class="nx">u</span> <span class="o">=&gt;</span> <span class="p">{</span>
1838
+ <span class="c1">// Update Cache once we have a result</span>
1839
+ <span class="nx">map</span><span class="p">.</span><span class="nx">set</span><span class="p">(</span><span class="nx">key</span><span class="p">,</span> <span class="nx">u</span><span class="p">);</span>
1840
+ <span class="p">});</span>
1841
+
1842
+ <span class="c1">// Return from Cache</span>
1843
+ <span class="k">return</span> <span class="nx">map</span><span class="p">.</span><span class="nx">get</span><span class="p">(</span><span class="nx">key</span><span class="p">);</span>
1844
+ <span class="p">}</span>
1845
+
1846
+ <span class="c1">// Not In Cache so we need to wait for the value</span>
1847
+ <span class="kr">const</span> <span class="nx">r</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">p</span><span class="p">;</span>
1848
+
1849
+ <span class="c1">// Set Cache</span>
1850
+ <span class="nx">map</span><span class="p">.</span><span class="nx">set</span><span class="p">(</span><span class="nx">key</span><span class="p">,</span> <span class="nx">r</span><span class="p">);</span>
1851
+
1852
+ <span class="c1">// Return from Promise</span>
1853
+ <span class="k">return</span> <span class="nx">r</span><span class="p">;</span>
1854
+ <span class="p">}</span>
1855
+ </pre></div>
1856
+
1857
+
1858
+ <h3 id="usage">Usage<a class="headerlink" href="#usage" title="Permanent link">&para;</a></h3>
1859
+ <blockquote>
1860
+ <p>Don't call usingCaching just apply the helper method</p>
1861
+ </blockquote>
1862
+ <div class="codehilite"><pre><span></span><span class="c1">// this one will wait for the request to finish</span>
1863
+ <span class="kr">const</span> <span class="nx">r1</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">staleWhileRevalidate</span><span class="p">(</span><span class="s2">&quot;test1&quot;</span><span class="p">,</span> <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">select</span><span class="p">(</span><span class="s2">&quot;Title&quot;</span><span class="p">,</span> <span class="s2">&quot;Description&quot;</span><span class="p">).</span><span class="nx">get</span><span class="p">());</span>
1864
+
1865
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">r1</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
1866
+
1867
+ <span class="c1">// this one will return the result from cache and then update the cache in the background</span>
1868
+ <span class="kr">const</span> <span class="nx">r2</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">staleWhileRevalidate</span><span class="p">(</span><span class="s2">&quot;test1&quot;</span><span class="p">,</span> <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">select</span><span class="p">(</span><span class="s2">&quot;Title&quot;</span><span class="p">,</span> <span class="s2">&quot;Description&quot;</span><span class="p">).</span><span class="nx">get</span><span class="p">());</span>
1869
+
1870
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">r2</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
1871
+ </pre></div>
1872
+
1873
+
1874
+ <h3 id="wrapper-function">Wrapper Function<a class="headerlink" href="#wrapper-function" title="Permanent link">&para;</a></h3>
1875
+ <p>You can wrap this call into a single function you can reuse within your application each time you need the web data for example. You can update the select and interface to match your needs as well.</p>
1876
+ <div class="codehilite"><pre><span></span><span class="kr">interface</span> <span class="nx">WebData</span> <span class="p">{</span>
1877
+ <span class="nx">Title</span>: <span class="kt">string</span><span class="p">;</span>
1878
+ <span class="nx">Description</span>: <span class="kt">string</span><span class="p">;</span>
1879
+ <span class="p">}</span>
1880
+
1881
+ <span class="kd">function</span> <span class="nx">getWebData</span><span class="p">()</span><span class="o">:</span> <span class="nx">Promise</span><span class="o">&lt;</span><span class="nx">WebData</span><span class="o">&gt;</span> <span class="p">{</span>
1882
+
1883
+ <span class="k">return</span> <span class="nx">staleWhileRevalidate</span><span class="p">(</span><span class="s2">&quot;test1&quot;</span><span class="p">,</span> <span class="nx">sp</span><span class="p">.</span><span class="nx">web</span><span class="p">.</span><span class="nx">select</span><span class="p">(</span><span class="s2">&quot;Title&quot;</span><span class="p">,</span> <span class="s2">&quot;Description&quot;</span><span class="p">).</span><span class="nx">get</span><span class="p">());</span>
1884
+ <span class="p">}</span>
1885
+
1886
+
1887
+ <span class="c1">// this one will wait for the request to finish</span>
1888
+ <span class="kr">const</span> <span class="nx">r1</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">getWebData</span><span class="p">();</span>
1889
+
1890
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">r1</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
1891
+
1892
+ <span class="c1">// this one will return the result from cache and then update the cache in the background</span>
1893
+ <span class="kr">const</span> <span class="nx">r2</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">getWebData</span><span class="p">();</span>
1894
+
1895
+ <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">r2</span><span class="p">,</span> <span class="kc">null</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
1896
+ </pre></div>
1897
+
1898
+
1899
+
1900
+
1901
+
1902
+
1903
+
1904
+
1905
+
1906
+ </article>
1907
+ </div>
1908
+ </div>
1909
+ </main>
1910
+
1911
+
1912
+ <footer class="md-footer">
1913
+
1914
+ <div class="md-footer-nav">
1915
+ <nav class="md-footer-nav__inner md-grid">
1916
+
1917
+ <a href="../" title="odata" class="md-flex md-footer-nav__link md-footer-nav__link--prev" rel="prev">
1918
+ <div class="md-flex__cell md-flex__cell--shrink">
1919
+ <i class="md-icon md-icon--arrow-back md-footer-nav__button"></i>
1920
+ </div>
1921
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1922
+ <span class="md-flex__ellipsis">
1923
+ <span class="md-footer-nav__direction">
1924
+ Previous
1925
+ </span>
1926
+ odata
1927
+ </span>
1928
+ </div>
1929
+ </a>
1930
+
1931
+
1932
+ <a href="../core/" title="core" class="md-flex md-footer-nav__link md-footer-nav__link--next" rel="next">
1933
+ <div class="md-flex__cell md-flex__cell--stretch md-footer-nav__title">
1934
+ <span class="md-flex__ellipsis">
1935
+ <span class="md-footer-nav__direction">
1936
+ Next
1937
+ </span>
1938
+ core
1939
+ </span>
1940
+ </div>
1941
+ <div class="md-flex__cell md-flex__cell--shrink">
1942
+ <i class="md-icon md-icon--arrow-forward md-footer-nav__button"></i>
1943
+ </div>
1944
+ </a>
1945
+
1946
+ </nav>
1947
+ </div>
1948
+
1949
+ <div class="md-footer-meta md-typeset">
1950
+ <div class="md-footer-meta__inner md-grid">
1951
+ <div class="md-footer-copyright">
1952
+
1953
+ powered by
1954
+ <a href="https://www.mkdocs.org">MkDocs</a>
1955
+ and
1956
+ <a href="https://squidfunk.github.io/mkdocs-material/">
1957
+ Material for MkDocs</a>
1958
+ </div>
1959
+
1960
+
1961
+ <div class="md-footer-social">
1962
+ <link rel="stylesheet" href="../../../assets/fonts/font-awesome.css">
1963
+
1964
+ <a href="https://twitter.com/officedevpnp" class="md-footer-social__link fa fa-twitter"></a>
1965
+
1966
+ <a href="http://aka.ms/sppnp-videos" class="md-footer-social__link fa fa-youtube"></a>
1967
+
1968
+ <a href="https://aka.ms/sppnp" class="md-footer-social__link fa fa-link"></a>
1969
+
1970
+ </div>
1971
+
1972
+
1973
+ </div>
1974
+ </div>
1975
+ </footer>
1976
+
1977
+ </div>
1978
+
1979
+ <script src="../../../assets/javascripts/application.583bbe55.js"></script>
1980
+
1981
+ <script>app.initialize({version:"1.0.1",url:{base:"../../.."}})</script>
1982
+
1983
+
1984
+
1985
+ <img src="https://telemetry.sharepointpnp.com/@pnp/pnpjs/ghpages/pnpjs/queryable/docs/caching/" alt="spacer" />
1986
+
1987
+ </body>
1988
+ </html>