@apvee/spfx-react-toolkit 1.2.0 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/README.md +52 -7217
  2. package/lib/core/context.internal.d.ts +6 -1
  3. package/lib/core/context.internal.d.ts.map +1 -1
  4. package/lib/core/context.internal.js +6 -1
  5. package/lib/core/context.internal.js.map +1 -1
  6. package/lib/core/index.d.ts +21 -0
  7. package/lib/core/index.d.ts.map +1 -1
  8. package/lib/core/index.js +21 -0
  9. package/lib/core/index.js.map +1 -1
  10. package/lib/core/provider-application-customizer.d.ts.map +1 -1
  11. package/lib/core/provider-application-customizer.js.map +1 -1
  12. package/lib/core/provider-field-customizer.d.ts.map +1 -1
  13. package/lib/core/provider-field-customizer.js.map +1 -1
  14. package/lib/core/provider-listview-commandset.d.ts.map +1 -1
  15. package/lib/core/provider-listview-commandset.js.map +1 -1
  16. package/lib/core/provider-webpart.d.ts.map +1 -1
  17. package/lib/core/provider-webpart.js.map +1 -1
  18. package/lib/core/types.d.ts +2 -0
  19. package/lib/core/types.d.ts.map +1 -1
  20. package/lib/hooks/index.d.ts +31 -0
  21. package/lib/hooks/index.d.ts.map +1 -1
  22. package/lib/hooks/index.js +31 -0
  23. package/lib/hooks/index.js.map +1 -1
  24. package/lib/hooks/useAsyncInvoke.internal.d.ts +58 -0
  25. package/lib/hooks/useAsyncInvoke.internal.d.ts.map +1 -0
  26. package/lib/hooks/useAsyncInvoke.internal.js +118 -0
  27. package/lib/hooks/useAsyncInvoke.internal.js.map +1 -0
  28. package/lib/hooks/useSPFxAadHttpClient.d.ts.map +1 -1
  29. package/lib/hooks/useSPFxAadHttpClient.js +5 -75
  30. package/lib/hooks/useSPFxAadHttpClient.js.map +1 -1
  31. package/lib/hooks/useSPFxContainerInfo.d.ts +2 -0
  32. package/lib/hooks/useSPFxContainerInfo.d.ts.map +1 -1
  33. package/lib/hooks/useSPFxContainerInfo.js +2 -0
  34. package/lib/hooks/useSPFxContainerInfo.js.map +1 -1
  35. package/lib/hooks/useSPFxDisplayMode.d.ts +4 -0
  36. package/lib/hooks/useSPFxDisplayMode.d.ts.map +1 -1
  37. package/lib/hooks/useSPFxDisplayMode.js +4 -0
  38. package/lib/hooks/useSPFxDisplayMode.js.map +1 -1
  39. package/lib/hooks/useSPFxHttpClient.d.ts +4 -0
  40. package/lib/hooks/useSPFxHttpClient.d.ts.map +1 -1
  41. package/lib/hooks/useSPFxHttpClient.js +8 -75
  42. package/lib/hooks/useSPFxHttpClient.js.map +1 -1
  43. package/lib/hooks/useSPFxMSGraphClient.d.ts.map +1 -1
  44. package/lib/hooks/useSPFxMSGraphClient.js +4 -74
  45. package/lib/hooks/useSPFxMSGraphClient.js.map +1 -1
  46. package/lib/hooks/useSPFxPermissions.d.ts +15 -3
  47. package/lib/hooks/useSPFxPermissions.d.ts.map +1 -1
  48. package/lib/hooks/useSPFxPermissions.js.map +1 -1
  49. package/lib/hooks/useSPFxPnPContext.d.ts +4 -0
  50. package/lib/hooks/useSPFxPnPContext.d.ts.map +1 -1
  51. package/lib/hooks/useSPFxPnPContext.js +4 -0
  52. package/lib/hooks/useSPFxPnPContext.js.map +1 -1
  53. package/lib/hooks/useSPFxPnPSearch.d.ts.map +1 -1
  54. package/lib/hooks/useSPFxPnPSearch.js +61 -48
  55. package/lib/hooks/useSPFxPnPSearch.js.map +1 -1
  56. package/lib/hooks/useSPFxSPHttpClient.d.ts.map +1 -1
  57. package/lib/hooks/useSPFxSPHttpClient.js +4 -74
  58. package/lib/hooks/useSPFxSPHttpClient.js.map +1 -1
  59. package/lib/hooks/useSPFxThemeInfo.d.ts +2 -0
  60. package/lib/hooks/useSPFxThemeInfo.d.ts.map +1 -1
  61. package/lib/hooks/useSPFxThemeInfo.js +2 -0
  62. package/lib/hooks/useSPFxThemeInfo.js.map +1 -1
  63. package/lib/index.d.ts +27 -0
  64. package/lib/index.d.ts.map +1 -1
  65. package/lib/index.js +27 -0
  66. package/lib/index.js.map +1 -1
  67. package/lib/utils/resize-observer.internal.d.ts +12 -2
  68. package/lib/utils/resize-observer.internal.d.ts.map +1 -1
  69. package/lib/utils/resize-observer.internal.js +12 -2
  70. package/lib/utils/resize-observer.internal.js.map +1 -1
  71. package/lib/utils/theme-subscription.internal.d.ts +12 -3
  72. package/lib/utils/theme-subscription.internal.d.ts.map +1 -1
  73. package/lib/utils/theme-subscription.internal.js +19 -3
  74. package/lib/utils/theme-subscription.internal.js.map +1 -1
  75. package/lib/utils/type-guards.internal.d.ts +78 -5
  76. package/lib/utils/type-guards.internal.d.ts.map +1 -1
  77. package/lib/utils/type-guards.internal.js +78 -5
  78. package/lib/utils/type-guards.internal.js.map +1 -1
  79. package/lib/webparts/spFxReactToolkitTest/components/SpFxReactToolkitTest.d.ts +0 -4
  80. package/lib/webparts/spFxReactToolkitTest/components/SpFxReactToolkitTest.d.ts.map +1 -1
  81. package/lib/webparts/spFxReactToolkitTest/components/SpFxReactToolkitTest.js +27 -739
  82. package/lib/webparts/spFxReactToolkitTest/components/SpFxReactToolkitTest.js.map +1 -1
  83. package/lib/webparts/spFxReactToolkitTest/components/demos/HttpClientDemo.d.ts +7 -0
  84. package/lib/webparts/spFxReactToolkitTest/components/demos/HttpClientDemo.d.ts.map +1 -0
  85. package/lib/webparts/spFxReactToolkitTest/components/demos/HttpClientDemo.js +131 -0
  86. package/lib/webparts/spFxReactToolkitTest/components/demos/HttpClientDemo.js.map +1 -0
  87. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPContextDemo.d.ts +8 -0
  88. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPContextDemo.d.ts.map +1 -0
  89. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPContextDemo.js +158 -0
  90. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPContextDemo.js.map +1 -0
  91. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPListDemo.d.ts +9 -0
  92. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPListDemo.d.ts.map +1 -0
  93. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPListDemo.js +159 -0
  94. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPListDemo.js.map +1 -0
  95. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPOperationsDemo.d.ts +10 -0
  96. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPOperationsDemo.d.ts.map +1 -0
  97. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPOperationsDemo.js +141 -0
  98. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPOperationsDemo.js.map +1 -0
  99. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchAdvancedDemo.d.ts +6 -0
  100. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchAdvancedDemo.d.ts.map +1 -0
  101. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchAdvancedDemo.js +62 -0
  102. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchAdvancedDemo.js.map +1 -0
  103. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchBasicDemo.d.ts +6 -0
  104. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchBasicDemo.d.ts.map +1 -0
  105. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchBasicDemo.js +98 -0
  106. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchBasicDemo.js.map +1 -0
  107. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchRefinersDemo.d.ts +6 -0
  108. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchRefinersDemo.d.ts.map +1 -0
  109. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchRefinersDemo.js +45 -0
  110. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchRefinersDemo.js.map +1 -0
  111. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchSuggestionsDemo.d.ts +6 -0
  112. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchSuggestionsDemo.d.ts.map +1 -0
  113. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchSuggestionsDemo.js +134 -0
  114. package/lib/webparts/spFxReactToolkitTest/components/demos/PnPSearchSuggestionsDemo.js.map +1 -0
  115. package/lib/webparts/spFxReactToolkitTest/components/demos/index.d.ts +13 -0
  116. package/lib/webparts/spFxReactToolkitTest/components/demos/index.d.ts.map +1 -0
  117. package/lib/webparts/spFxReactToolkitTest/components/demos/index.js +18 -0
  118. package/lib/webparts/spFxReactToolkitTest/components/demos/index.js.map +1 -0
  119. package/lib/webparts/spFxReactToolkitTest/components/shared/InfoRow.d.ts +18 -0
  120. package/lib/webparts/spFxReactToolkitTest/components/shared/InfoRow.d.ts.map +1 -0
  121. package/lib/webparts/spFxReactToolkitTest/components/shared/InfoRow.js +17 -0
  122. package/lib/webparts/spFxReactToolkitTest/components/shared/InfoRow.js.map +1 -0
  123. package/lib/webparts/spFxReactToolkitTest/components/shared/StatusBadge.d.ts +16 -0
  124. package/lib/webparts/spFxReactToolkitTest/components/shared/StatusBadge.d.ts.map +1 -0
  125. package/lib/webparts/spFxReactToolkitTest/components/shared/StatusBadge.js +14 -0
  126. package/lib/webparts/spFxReactToolkitTest/components/shared/StatusBadge.js.map +1 -0
  127. package/lib/webparts/spFxReactToolkitTest/components/shared/index.d.ts +6 -0
  128. package/lib/webparts/spFxReactToolkitTest/components/shared/index.d.ts.map +1 -0
  129. package/lib/webparts/spFxReactToolkitTest/components/shared/index.js +6 -0
  130. package/lib/webparts/spFxReactToolkitTest/components/shared/index.js.map +1 -0
  131. package/package.json +7 -7
@@ -15,7 +15,12 @@ import type { SPFxContextValue } from './types';
15
15
  export declare const SPFxContext: React.Context<SPFxContextValue | null>;
16
16
  /**
17
17
  * Internal hook to access SPFx context
18
- * Throws error if used outside SPFxProvider
18
+ *
19
+ * Provides access to the SPFx context value containing instanceId, spfxContext, and kind.
20
+ * Must be used within an SPFxProvider component tree.
21
+ *
22
+ * @returns SPFxContextValue containing instanceId, spfxContext, and kind
23
+ * @throws Error if used outside SPFxProvider - component must be wrapped with \<SPFxProvider\>
19
24
  *
20
25
  * @internal
21
26
  */
@@ -1 +1 @@
1
- {"version":3,"file":"context.internal.d.ts","sourceRoot":"","sources":["../../src/core/context.internal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,wCAAqD,CAAC;AAM9E;;;;;GAKG;AACH,wBAAgB,cAAc,IAAI,gBAAgB,CAWjD"}
1
+ {"version":3,"file":"context.internal.d.ts","sourceRoot":"","sources":["../../src/core/context.internal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,WAAW,wCAAqD,CAAC;AAM9E;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,IAAI,gBAAgB,CAWjD"}
@@ -19,7 +19,12 @@ if (process.env.NODE_ENV !== 'production') {
19
19
  }
20
20
  /**
21
21
  * Internal hook to access SPFx context
22
- * Throws error if used outside SPFxProvider
22
+ *
23
+ * Provides access to the SPFx context value containing instanceId, spfxContext, and kind.
24
+ * Must be used within an SPFxProvider component tree.
25
+ *
26
+ * @returns SPFxContextValue containing instanceId, spfxContext, and kind
27
+ * @throws Error if used outside SPFxProvider - component must be wrapped with \<SPFxProvider\>
23
28
  *
24
29
  * @internal
25
30
  */
@@ -1 +1 @@
1
- {"version":3,"file":"context.internal.js","sourceRoot":"","sources":["../../src/core/context.internal.tsx"],"names":[],"mappings":"AAAA,cAAc;AACd,yDAAyD;AAEzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAA0B,IAAI,CAAC,CAAC;AAE9E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,mDAAmD;YACnD,0DAA0D,CAC3D,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"context.internal.js","sourceRoot":"","sources":["../../src/core/context.internal.tsx"],"names":[],"mappings":"AAAA,cAAc;AACd,yDAAyD;AAEzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,IAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAA0B,IAAI,CAAC,CAAC;AAE9E,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;IAC1C,WAAW,CAAC,WAAW,GAAG,aAAa,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc;IAC5B,IAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,mDAAmD;YACnD,0DAA0D,CAC3D,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1,3 +1,24 @@
1
+ /**
2
+ * SPFx React Core
3
+ *
4
+ * Core providers and types for SPFx React integration.
5
+ *
6
+ * **Providers:**
7
+ * - `SPFxWebPartProvider` - Provider for WebParts
8
+ * - `SPFxApplicationCustomizerProvider` - Provider for Application Customizers
9
+ * - `SPFxListViewCommandSetProvider` - Provider for ListView Command Sets
10
+ * - `SPFxFieldCustomizerProvider` - Provider for Field Customizers
11
+ *
12
+ * **Types:**
13
+ * - `SPFxProviderProps` - Props interface for providers
14
+ * - `SPFxContextValue` - Context value interface
15
+ * - `SPFxComponent` - Union type for all SPFx components
16
+ * - `SPFxContextType` - Union type for all SPFx context types
17
+ * - `HostKind` - Component type discriminator
18
+ * - `ContainerSize` - Container dimensions interface
19
+ *
20
+ * @module core
21
+ */
1
22
  export * from './provider-application-customizer';
2
23
  export * from './provider-field-customizer';
3
24
  export * from './provider-listview-commandset';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC"}
package/lib/core/index.js CHANGED
@@ -1,3 +1,24 @@
1
+ /**
2
+ * SPFx React Core
3
+ *
4
+ * Core providers and types for SPFx React integration.
5
+ *
6
+ * **Providers:**
7
+ * - `SPFxWebPartProvider` - Provider for WebParts
8
+ * - `SPFxApplicationCustomizerProvider` - Provider for Application Customizers
9
+ * - `SPFxListViewCommandSetProvider` - Provider for ListView Command Sets
10
+ * - `SPFxFieldCustomizerProvider` - Provider for Field Customizers
11
+ *
12
+ * **Types:**
13
+ * - `SPFxProviderProps` - Props interface for providers
14
+ * - `SPFxContextValue` - Context value interface
15
+ * - `SPFxComponent` - Union type for all SPFx components
16
+ * - `SPFxContextType` - Union type for all SPFx context types
17
+ * - `HostKind` - Component type discriminator
18
+ * - `ContainerSize` - Container dimensions interface
19
+ *
20
+ * @module core
21
+ */
1
22
  export * from './provider-application-customizer';
2
23
  export * from './provider-field-customizer';
3
24
  export * from './provider-listview-commandset';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,cAAc,mCAAmC,CAAC;AAClD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-application-customizer.d.ts","sourceRoot":"","sources":["../../src/core/provider-application-customizer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAGhF;;;;;GAKG;AACH,MAAM,WAAW,sCAAsC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IAC5E;;OAEG;IACH,QAAQ,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAE5C;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACtE,KAAK,EAAE,sCAAsC,CAAC,MAAM,CAAC,GACpD,GAAG,CAAC,OAAO,CAEb"}
1
+ {"version":3,"file":"provider-application-customizer.d.ts","sourceRoot":"","sources":["../../src/core/provider-application-customizer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAIhF;;;;;GAKG;AACH,MAAM,WAAW,sCAAsC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IAC5E;;OAEG;IACH,QAAQ,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAE5C;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACtE,KAAK,EAAE,sCAAsC,CAAC,MAAM,CAAC,GACpD,GAAG,CAAC,OAAO,CAEb"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-application-customizer.js","sourceRoot":"","sources":["../../src/core/provider-application-customizer.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iDAAiD;AAEjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAoB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,iCAAiC,CAC/C,KAAqD;IAErD,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiB,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"provider-application-customizer.js","sourceRoot":"","sources":["../../src/core/provider-application-customizer.tsx"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iDAAiD;AAEjD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAqB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,UAAU,iCAAiC,CAC/C,KAAqD;IAErD,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiC,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-field-customizer.d.ts","sourceRoot":"","sources":["../../src/core/provider-field-customizer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAGhF;;;;;GAKG;AACH,MAAM,WAAW,gCAAgC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACtE;;OAEG;IACH,QAAQ,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EAChE,KAAK,EAAE,gCAAgC,CAAC,MAAM,CAAC,GAC9C,GAAG,CAAC,OAAO,CAEb"}
1
+ {"version":3,"file":"provider-field-customizer.d.ts","sourceRoot":"","sources":["../../src/core/provider-field-customizer.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAIhF;;;;;GAKG;AACH,MAAM,WAAW,gCAAgC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACtE;;OAEG;IACH,QAAQ,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAEtC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EAChE,KAAK,EAAE,gCAAgC,CAAC,MAAM,CAAC,GAC9C,GAAG,CAAC,OAAO,CAEb"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-field-customizer.js","sourceRoot":"","sources":["../../src/core/provider-field-customizer.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2CAA2C;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAoB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAA+C;IAE/C,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiB,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"provider-field-customizer.js","sourceRoot":"","sources":["../../src/core/provider-field-customizer.tsx"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,2CAA2C;AAE3C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAqB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAA+C;IAE/C,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiC,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-listview-commandset.d.ts","sourceRoot":"","sources":["../../src/core/provider-listview-commandset.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAGnF;;;;;GAKG;AACH,MAAM,WAAW,mCAAmC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACzE;;OAEG;IACH,QAAQ,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACnE,KAAK,EAAE,mCAAmC,CAAC,MAAM,CAAC,GACjD,GAAG,CAAC,OAAO,CAEb"}
1
+ {"version":3,"file":"provider-listview-commandset.d.ts","sourceRoot":"","sources":["../../src/core/provider-listview-commandset.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAInF;;;;;GAKG;AACH,MAAM,WAAW,mCAAmC,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACzE;;OAEG;IACH,QAAQ,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,8BAA8B,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACnE,KAAK,EAAE,mCAAmC,CAAC,MAAM,CAAC,GACjD,GAAG,CAAC,OAAO,CAEb"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-listview-commandset.js","sourceRoot":"","sources":["../../src/core/provider-listview-commandset.tsx"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,+CAA+C;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAoB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,8BAA8B,CAC5C,KAAkD;IAElD,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiB,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"provider-listview-commandset.js","sourceRoot":"","sources":["../../src/core/provider-listview-commandset.tsx"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,+CAA+C;AAE/C,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAqB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,8BAA8B,CAC5C,KAAkD;IAElD,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiC,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-webpart.d.ts","sourceRoot":"","sources":["../../src/core/provider-webpart.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAGxE;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IAC9D;;OAEG;IACH,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACxD,KAAK,EAAE,wBAAwB,CAAC,MAAM,CAAC,GACtC,GAAG,CAAC,OAAO,CAEb"}
1
+ {"version":3,"file":"provider-webpart.d.ts","sourceRoot":"","sources":["../../src/core/provider-webpart.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAIxE;;;;;GAKG;AACH,MAAM,WAAW,wBAAwB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IAC9D;;OAEG;IACH,QAAQ,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAExC;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,EACxD,KAAK,EAAE,wBAAwB,CAAC,MAAM,CAAC,GACtC,GAAG,CAAC,OAAO,CAEb"}
@@ -1 +1 @@
1
- {"version":3,"file":"provider-webpart.js","sourceRoot":"","sources":["../../src/core/provider-webpart.tsx"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,kCAAkC;AAElC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAoB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAuC;IAEvC,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiB,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClG,CAAC"}
1
+ {"version":3,"file":"provider-webpart.js","sourceRoot":"","sources":["../../src/core/provider-webpart.tsx"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,kCAAkC;AAElC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAqB5D;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAuC;IAEvC,OAAO,oBAAC,gBAAgB,IAAC,QAAQ,EAAE,KAAK,CAAC,QAAiC,IAAG,KAAK,CAAC,QAAQ,CAAoB,CAAC;AAClH,CAAC"}
@@ -41,6 +41,8 @@ export interface ContainerSize {
41
41
  /**
42
42
  * Props accepted by SPFxProvider (instance-based API)
43
43
  *
44
+ * @template TProps - The properties type for the SPFx component (WebPart props, Extension props, etc.)
45
+ *
44
46
  * @example
45
47
  * ```tsx
46
48
  * // In your WebPart render():
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAExG;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,IAC5C,qBAAqB,CAAC,MAAM,CAAC,GAC7B,yBAAyB,CAAC,MAAM,CAAC,GACjC,sBAAsB,CAAC,MAAM,CAAC,GAC9B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,eAAe,GAEvB,qBAAqB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAErC,yBAAyB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAEzC,sBAAsB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAEtC,mBAAmB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACvD,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAEzC,yBAAyB;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAEtC,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";AAGA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAChF,OAAO,KAAK,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAExG;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,eAAe,GACf,iBAAiB,GACjB,YAAY,GACZ,KAAK,CAAC;AAEV;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE,IAC5C,qBAAqB,CAAC,MAAM,CAAC,GAC7B,yBAAyB,CAAC,MAAM,CAAC,GACjC,sBAAsB,CAAC,MAAM,CAAC,GAC9B,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;GAkBG;AAEH,MAAM,MAAM,eAAe,GAEvB,qBAAqB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAErC,yBAAyB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAEzC,sBAAsB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,GAEtC,mBAAmB,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,WAAW,iBAAiB,CAAC,MAAM,SAAS,EAAE,GAAG,EAAE;IACvD,qEAAqE;IACrE,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAEzC,yBAAyB;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IAEtC,6BAA6B;IAC7B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;CACzB"}
@@ -1,3 +1,34 @@
1
+ /**
2
+ * SPFx React Hooks
3
+ *
4
+ * Collection of React hooks for accessing SPFx context, services, and SharePoint APIs.
5
+ *
6
+ * **Context & Metadata:**
7
+ * - `useSPFxContext` - Core SPFx context access
8
+ * - `useSPFxPageContext` - SharePoint page context
9
+ * - `useSPFxInstanceInfo` - Component instance metadata
10
+ * - `useSPFxEnvironmentInfo` - Environment detection (Teams, SharePoint, etc.)
11
+ *
12
+ * **HTTP Clients:**
13
+ * - `useSPFxHttpClient` - Generic HTTP client
14
+ * - `useSPFxSPHttpClient` - SharePoint REST API client
15
+ * - `useSPFxMSGraphClient` - Microsoft Graph client
16
+ * - `useSPFxAadHttpClient` - Azure AD secured API client
17
+ *
18
+ * **PnPjs Integration:**
19
+ * - `useSPFxPnP` - PnPjs with state management
20
+ * - `useSPFxPnPContext` - PnPjs SPFI factory
21
+ * - `useSPFxPnPList` - List operations
22
+ * - `useSPFxPnPSearch` - SharePoint Search
23
+ *
24
+ * **UI & Theming:**
25
+ * - `useSPFxThemeInfo` - SPFx theme (v8)
26
+ * - `useSPFxFluent9ThemeInfo` - Fluent UI 9 theme
27
+ * - `useSPFxDisplayMode` - Edit/Read mode
28
+ * - `useSPFxContainerSize` - Responsive breakpoints
29
+ *
30
+ * @module hooks
31
+ */
1
32
  export * from './useSPFxAadHttpClient';
2
33
  export * from './useSPFxContainerInfo';
3
34
  export * from './useSPFxContainerSize';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
@@ -1,3 +1,34 @@
1
+ /**
2
+ * SPFx React Hooks
3
+ *
4
+ * Collection of React hooks for accessing SPFx context, services, and SharePoint APIs.
5
+ *
6
+ * **Context & Metadata:**
7
+ * - `useSPFxContext` - Core SPFx context access
8
+ * - `useSPFxPageContext` - SharePoint page context
9
+ * - `useSPFxInstanceInfo` - Component instance metadata
10
+ * - `useSPFxEnvironmentInfo` - Environment detection (Teams, SharePoint, etc.)
11
+ *
12
+ * **HTTP Clients:**
13
+ * - `useSPFxHttpClient` - Generic HTTP client
14
+ * - `useSPFxSPHttpClient` - SharePoint REST API client
15
+ * - `useSPFxMSGraphClient` - Microsoft Graph client
16
+ * - `useSPFxAadHttpClient` - Azure AD secured API client
17
+ *
18
+ * **PnPjs Integration:**
19
+ * - `useSPFxPnP` - PnPjs with state management
20
+ * - `useSPFxPnPContext` - PnPjs SPFI factory
21
+ * - `useSPFxPnPList` - List operations
22
+ * - `useSPFxPnPSearch` - SharePoint Search
23
+ *
24
+ * **UI & Theming:**
25
+ * - `useSPFxThemeInfo` - SPFx theme (v8)
26
+ * - `useSPFxFluent9ThemeInfo` - Fluent UI 9 theme
27
+ * - `useSPFxDisplayMode` - Edit/Read mode
28
+ * - `useSPFxContainerSize` - Responsive breakpoints
29
+ *
30
+ * @module hooks
31
+ */
1
32
  export * from './useSPFxAadHttpClient';
2
33
  export * from './useSPFxContainerInfo';
3
34
  export * from './useSPFxContainerSize';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Result type for useAsyncInvoke hook
3
+ * @internal
4
+ */
5
+ export interface AsyncInvokeResult<TClient> {
6
+ /**
7
+ * Invoke async operation with automatic state management.
8
+ * Tracks loading state and captures errors automatically.
9
+ *
10
+ * @param fn - Function that receives the client and returns a promise
11
+ * @returns Promise with the result
12
+ */
13
+ readonly invoke: <T>(fn: (client: TClient) => Promise<T>) => Promise<T>;
14
+ /**
15
+ * Loading state - true during invoke() calls.
16
+ * Does not track direct client usage.
17
+ */
18
+ readonly isLoading: boolean;
19
+ /**
20
+ * Last error from invoke() calls.
21
+ * Does not capture errors from direct client usage.
22
+ */
23
+ readonly error: Error | undefined;
24
+ /** Clear the current error */
25
+ readonly clearError: () => void;
26
+ }
27
+ /**
28
+ * Internal hook for async invocation with state management.
29
+ *
30
+ * @internal
31
+ *
32
+ * Provides a consistent pattern for:
33
+ * - Loading state tracking during async operations
34
+ * - Error capture and management
35
+ * - Type-safe client invocation
36
+ *
37
+ * Used by HTTP client hooks (HttpClient, SPHttpClient, MSGraphClient, AadHttpClient)
38
+ * to reduce code duplication while maintaining consistent behavior.
39
+ *
40
+ * @template TClient - The client type (HttpClient, SPHttpClient, MSGraphClientV3, AadHttpClient)
41
+ * @param client - The client instance (can be undefined for async init scenarios)
42
+ * @param notReadyError - Error message when client is undefined (default: 'Client not initialized')
43
+ * @returns AsyncInvokeResult with invoke function, isLoading, error, and clearError
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * // Inside a hook implementation
48
+ * const client = useMemo(() => consume<HttpClient>(HttpClient.serviceKey), [consume]);
49
+ * const { invoke, isLoading, error, clearError } = useAsyncInvoke(
50
+ * client,
51
+ * 'HttpClient not initialized. Check SPFx context.'
52
+ * );
53
+ * ```
54
+ *
55
+ * @internal
56
+ */
57
+ export declare function useAsyncInvoke<TClient>(client: TClient | undefined, notReadyError?: string): AsyncInvokeResult<TClient>;
58
+ //# sourceMappingURL=useAsyncInvoke.internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAsyncInvoke.internal.d.ts","sourceRoot":"","sources":["../../src/hooks/useAsyncInvoke.internal.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,MAAM,WAAW,iBAAiB,CAAC,OAAO;IACxC;;;;;;OAMG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAExE;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IAElC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,cAAc,CAAC,OAAO,EACpC,MAAM,EAAE,OAAO,GAAG,SAAS,EAC3B,aAAa,GAAE,MAAiC,GAC/C,iBAAiB,CAAC,OAAO,CAAC,CAwC5B"}
@@ -0,0 +1,118 @@
1
+ // useAsyncInvoke.internal.ts
2
+ // Internal hook for async invocation with state management
3
+ // Used by HTTP client hooks to reduce code duplication
4
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
5
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
6
+ return new (P || (P = Promise))(function (resolve, reject) {
7
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
8
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
9
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
10
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
11
+ });
12
+ };
13
+ var __generator = (this && this.__generator) || function (thisArg, body) {
14
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
15
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
16
+ function verb(n) { return function (v) { return step([n, v]); }; }
17
+ function step(op) {
18
+ if (f) throw new TypeError("Generator is already executing.");
19
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
20
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
21
+ if (y = 0, t) op = [op[0] & 2, t.value];
22
+ switch (op[0]) {
23
+ case 0: case 1: t = op; break;
24
+ case 4: _.label++; return { value: op[1], done: false };
25
+ case 5: _.label++; y = op[1]; op = [0]; continue;
26
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
27
+ default:
28
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
29
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
30
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
31
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
32
+ if (t[2]) _.ops.pop();
33
+ _.trys.pop(); continue;
34
+ }
35
+ op = body.call(thisArg, _);
36
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
37
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
38
+ }
39
+ };
40
+ import { useState, useCallback } from 'react';
41
+ /**
42
+ * Internal hook for async invocation with state management.
43
+ *
44
+ * @internal
45
+ *
46
+ * Provides a consistent pattern for:
47
+ * - Loading state tracking during async operations
48
+ * - Error capture and management
49
+ * - Type-safe client invocation
50
+ *
51
+ * Used by HTTP client hooks (HttpClient, SPHttpClient, MSGraphClient, AadHttpClient)
52
+ * to reduce code duplication while maintaining consistent behavior.
53
+ *
54
+ * @template TClient - The client type (HttpClient, SPHttpClient, MSGraphClientV3, AadHttpClient)
55
+ * @param client - The client instance (can be undefined for async init scenarios)
56
+ * @param notReadyError - Error message when client is undefined (default: 'Client not initialized')
57
+ * @returns AsyncInvokeResult with invoke function, isLoading, error, and clearError
58
+ *
59
+ * @example
60
+ * ```typescript
61
+ * // Inside a hook implementation
62
+ * const client = useMemo(() => consume<HttpClient>(HttpClient.serviceKey), [consume]);
63
+ * const { invoke, isLoading, error, clearError } = useAsyncInvoke(
64
+ * client,
65
+ * 'HttpClient not initialized. Check SPFx context.'
66
+ * );
67
+ * ```
68
+ *
69
+ * @internal
70
+ */
71
+ export function useAsyncInvoke(client, notReadyError) {
72
+ var _this = this;
73
+ if (notReadyError === void 0) { notReadyError = 'Client not initialized'; }
74
+ // State management
75
+ var _a = useState(false), isLoading = _a[0], setIsLoading = _a[1];
76
+ var _b = useState(undefined), error = _b[0], setError = _b[1];
77
+ // Invoke with automatic state management
78
+ var invoke = useCallback(function (fn) { return __awaiter(_this, void 0, void 0, function () {
79
+ var result, err_1, capturedError;
80
+ return __generator(this, function (_a) {
81
+ switch (_a.label) {
82
+ case 0:
83
+ if (!client) {
84
+ throw new Error(notReadyError);
85
+ }
86
+ setIsLoading(true);
87
+ setError(undefined);
88
+ _a.label = 1;
89
+ case 1:
90
+ _a.trys.push([1, 3, 4, 5]);
91
+ return [4 /*yield*/, fn(client)];
92
+ case 2:
93
+ result = _a.sent();
94
+ return [2 /*return*/, result];
95
+ case 3:
96
+ err_1 = _a.sent();
97
+ capturedError = err_1 instanceof Error ? err_1 : new Error(String(err_1));
98
+ setError(capturedError);
99
+ throw capturedError;
100
+ case 4:
101
+ setIsLoading(false);
102
+ return [7 /*endfinally*/];
103
+ case 5: return [2 /*return*/];
104
+ }
105
+ });
106
+ }); }, [client, notReadyError]);
107
+ // Clear error helper
108
+ var clearError = useCallback(function () {
109
+ setError(undefined);
110
+ }, []);
111
+ return {
112
+ invoke: invoke,
113
+ isLoading: isLoading,
114
+ error: error,
115
+ clearError: clearError,
116
+ };
117
+ }
118
+ //# sourceMappingURL=useAsyncInvoke.internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAsyncInvoke.internal.js","sourceRoot":"","sources":["../../src/hooks/useAsyncInvoke.internal.ts"],"names":[],"mappings":"AAAA,6BAA6B;AAC7B,2DAA2D;AAC3D,uDAAuD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEvD,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAgC9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,cAAc,CAC5B,MAA2B,EAC3B,aAAgD;IAFlD,iBA2CC;IAzCC,8BAAA,EAAA,wCAAgD;IAEhD,mBAAmB;IACb,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAoB,QAAQ,CAAoB,SAAS,CAAC,EAAzD,KAAK,QAAA,EAAE,QAAQ,QAA0C,CAAC;IAEjE,yCAAyC;IACzC,IAAM,MAAM,GAAG,WAAW,CACxB,UAAU,EAAmC;;;;;oBAC3C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;oBACjC,CAAC;oBAED,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnB,QAAQ,CAAC,SAAS,CAAC,CAAC;;;;oBAGH,qBAAM,EAAE,CAAC,MAAM,CAAC,EAAA;;oBAAzB,MAAM,GAAG,SAAgB;oBAC/B,sBAAO,MAAM,EAAC;;;oBAER,aAAa,GAAG,KAAG,YAAY,KAAK,CAAC,CAAC,CAAC,KAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAG,CAAC,CAAC,CAAC;oBAC1E,QAAQ,CAAC,aAAa,CAAC,CAAC;oBACxB,MAAM,aAAa,CAAC;;oBAEpB,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAEvB,EACD,CAAC,MAAM,EAAE,aAAa,CAAC,CACxB,CAAC;IAEF,qBAAqB;IACrB,IAAM,UAAU,GAAG,WAAW,CAAC;QAC7B,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,MAAM,QAAA;QACN,SAAS,WAAA;QACT,KAAK,OAAA;QACL,UAAU,YAAA;KACX,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSPFxAadHttpClient.d.ts","sourceRoot":"","sources":["../../src/hooks/useSPFxAadHttpClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAwB,MAAM,oBAAoB,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC;IAE3C;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAE9E;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IAElC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;IAEhC,yEAAyE;IACzE,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LG;AACH,wBAAgB,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,qBAAqB,CA0EvF"}
1
+ {"version":3,"file":"useSPFxAadHttpClient.d.ts","sourceRoot":"","sources":["../../src/hooks/useSPFxAadHttpClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,aAAa,EAAwB,MAAM,oBAAoB,CAAC;AAGzE;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,CAAC;IAE3C;;;;;;;;;;;;;;;;OAgBG;IACH,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAE9E;;;OAGG;IACH,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAE5B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IAElC,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,EAAE,MAAM,IAAI,CAAC;IAEhC,yEAAyE;IACzE,QAAQ,CAAC,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C,8CAA8C;IAC9C,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LG;AACH,wBAAgB,oBAAoB,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,qBAAqB,CA+CvF"}
@@ -1,44 +1,9 @@
1
1
  // useSPFxAadHttpClient.ts
2
2
  // Hook to access Azure AD-secured APIs with state management
3
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
- return new (P || (P = Promise))(function (resolve, reject) {
6
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
- step((generator = generator.apply(thisArg, _arguments || [])).next());
10
- });
11
- };
12
- var __generator = (this && this.__generator) || function (thisArg, body) {
13
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
14
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
- function verb(n) { return function (v) { return step([n, v]); }; }
16
- function step(op) {
17
- if (f) throw new TypeError("Generator is already executing.");
18
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
19
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
20
- if (y = 0, t) op = [op[0] & 2, t.value];
21
- switch (op[0]) {
22
- case 0: case 1: t = op; break;
23
- case 4: _.label++; return { value: op[1], done: false };
24
- case 5: _.label++; y = op[1]; op = [0]; continue;
25
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
- default:
27
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
- if (t[2]) _.ops.pop();
32
- _.trys.pop(); continue;
33
- }
34
- op = body.call(thisArg, _);
35
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
- }
38
- };
39
- import { useMemo, useState, useCallback, useEffect } from 'react';
3
+ import { useMemo, useState, useEffect } from 'react';
40
4
  import { useSPFxServiceScope } from './useSPFxServiceScope';
41
5
  import { AadHttpClientFactory } from '@microsoft/sp-http';
6
+ import { useAsyncInvoke } from './useAsyncInvoke.internal';
42
7
  /**
43
8
  * Hook to access Azure AD-secured APIs with built-in state management
44
9
  *
@@ -228,17 +193,14 @@ import { AadHttpClientFactory } from '@microsoft/sp-http';
228
193
  * ```
229
194
  */
230
195
  export function useSPFxAadHttpClient(initialResourceUrl) {
231
- var _this = this;
232
196
  var consume = useSPFxServiceScope().consume;
233
197
  // Lazy consume AadHttpClientFactory from ServiceScope (cached by useMemo)
234
198
  var factory = useMemo(function () {
235
199
  return consume(AadHttpClientFactory.serviceKey);
236
200
  }, [consume]);
237
- // State management
201
+ // State management for resourceUrl and client
238
202
  var _a = useState(initialResourceUrl), resourceUrl = _a[0], setResourceUrl = _a[1];
239
203
  var _b = useState(undefined), client = _b[0], setClient = _b[1];
240
- var _c = useState(false), isLoading = _c[0], setIsLoading = _c[1];
241
- var _d = useState(undefined), error = _d[0], setError = _d[1];
242
204
  // Initialize client when resourceUrl changes
243
205
  useEffect(function () {
244
206
  // Reset client immediately when resourceUrl changes
@@ -256,40 +218,8 @@ export function useSPFxAadHttpClient(initialResourceUrl) {
256
218
  console.error('Failed to initialize AadHttpClient:', err);
257
219
  });
258
220
  }, [resourceUrl, factory]);
259
- // Invoke with automatic state management
260
- var invoke = useCallback(function (fn) { return __awaiter(_this, void 0, void 0, function () {
261
- var result, err_1, error_1;
262
- return __generator(this, function (_a) {
263
- switch (_a.label) {
264
- case 0:
265
- if (!client) {
266
- throw new Error('AadHttpClient not initialized. Set resourceUrl and wait for client initialization.');
267
- }
268
- setIsLoading(true);
269
- setError(undefined);
270
- _a.label = 1;
271
- case 1:
272
- _a.trys.push([1, 3, 4, 5]);
273
- return [4 /*yield*/, fn(client)];
274
- case 2:
275
- result = _a.sent();
276
- return [2 /*return*/, result];
277
- case 3:
278
- err_1 = _a.sent();
279
- error_1 = err_1 instanceof Error ? err_1 : new Error(String(err_1));
280
- setError(error_1);
281
- throw error_1;
282
- case 4:
283
- setIsLoading(false);
284
- return [7 /*endfinally*/];
285
- case 5: return [2 /*return*/];
286
- }
287
- });
288
- }); }, [client]);
289
- // Clear error helper
290
- var clearError = useCallback(function () {
291
- setError(undefined);
292
- }, []);
221
+ // Use shared async invocation pattern
222
+ var _c = useAsyncInvoke(client, 'AadHttpClient not initialized. Set resourceUrl and wait for client initialization.'), invoke = _c.invoke, isLoading = _c.isLoading, error = _c.error, clearError = _c.clearError;
293
223
  return {
294
224
  client: client,
295
225
  invoke: invoke,
@@ -1 +1 @@
1
- {"version":3,"file":"useSPFxAadHttpClient.js","sourceRoot":"","sources":["../../src/hooks/useSPFxAadHttpClient.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,6DAA6D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAE7D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAiB,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAsDzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LG;AACH,MAAM,UAAU,oBAAoB,CAAC,kBAA2B;IAAhE,iBA0EC;IAzES,IAAA,OAAO,GAAK,mBAAmB,EAAE,QAA1B,CAA2B;IAE1C,0EAA0E;IAC1E,IAAM,OAAO,GAAG,OAAO,CAAC;QACtB,OAAO,OAAO,CAAuB,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACxE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,mBAAmB;IACb,IAAA,KAAgC,QAAQ,CAAqB,kBAAkB,CAAC,EAA/E,WAAW,QAAA,EAAE,cAAc,QAAoD,CAAC;IACjF,IAAA,KAAsB,QAAQ,CAA4B,SAAS,CAAC,EAAnE,MAAM,QAAA,EAAE,SAAS,QAAkD,CAAC;IACrE,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAC5C,IAAA,KAAoB,QAAQ,CAAoB,SAAS,CAAC,EAAzD,KAAK,QAAA,EAAE,QAAQ,QAA0C,CAAC;IAEjE,6CAA6C;IAC7C,SAAS,CAAC;QACR,oDAAoD;QACpD,SAAS,CAAC,SAAS,CAAC,CAAC;QAErB,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,+CAA+C;QAC/C,OAAO;aACJ,SAAS,CAAC,WAAW,CAAC;aACtB,IAAI,CAAC,UAAC,SAAwB;YAC7B,SAAS,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC;aACD,KAAK,CAAC,UAAC,GAAU;YAChB,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3B,yCAAyC;IACzC,IAAM,MAAM,GAAG,WAAW,CACxB,UAAU,EAAyC;;;;;oBACjD,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CACb,oFAAoF,CACrF,CAAC;oBACJ,CAAC;oBAED,YAAY,CAAC,IAAI,CAAC,CAAC;oBACnB,QAAQ,CAAC,SAAS,CAAC,CAAC;;;;oBAGH,qBAAM,EAAE,CAAC,MAAM,CAAC,EAAA;;oBAAzB,MAAM,GAAG,SAAgB;oBAC/B,sBAAO,MAAM,EAAC;;;oBAER,UAAQ,KAAG,YAAY,KAAK,CAAC,CAAC,CAAC,KAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAG,CAAC,CAAC,CAAC;oBAClE,QAAQ,CAAC,OAAK,CAAC,CAAC;oBAChB,MAAM,OAAK,CAAC;;oBAEZ,YAAY,CAAC,KAAK,CAAC,CAAC;;;;;SAEvB,EACD,CAAC,MAAM,CAAC,CACT,CAAC;IAEF,qBAAqB;IACrB,IAAM,UAAU,GAAG,WAAW,CAAC;QAC7B,QAAQ,CAAC,SAAS,CAAC,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,MAAM,QAAA;QACN,MAAM,QAAA;QACN,SAAS,WAAA;QACT,KAAK,OAAA;QACL,UAAU,YAAA;QACV,cAAc,gBAAA;QACd,WAAW,aAAA;KACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useSPFxAadHttpClient.js","sourceRoot":"","sources":["../../src/hooks/useSPFxAadHttpClient.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,6DAA6D;AAE7D,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAiB,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAsD3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2LG;AACH,MAAM,UAAU,oBAAoB,CAAC,kBAA2B;IACtD,IAAA,OAAO,GAAK,mBAAmB,EAAE,QAA1B,CAA2B;IAE1C,0EAA0E;IAC1E,IAAM,OAAO,GAAG,OAAO,CAAC;QACtB,OAAO,OAAO,CAAuB,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACxE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,8CAA8C;IACxC,IAAA,KAAgC,QAAQ,CAAqB,kBAAkB,CAAC,EAA/E,WAAW,QAAA,EAAE,cAAc,QAAoD,CAAC;IACjF,IAAA,KAAsB,QAAQ,CAA4B,SAAS,CAAC,EAAnE,MAAM,QAAA,EAAE,SAAS,QAAkD,CAAC;IAE3E,6CAA6C;IAC7C,SAAS,CAAC;QACR,oDAAoD;QACpD,SAAS,CAAC,SAAS,CAAC,CAAC;QAErB,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QAED,+CAA+C;QAC/C,OAAO;aACJ,SAAS,CAAC,WAAW,CAAC;aACtB,IAAI,CAAC,UAAC,SAAwB;YAC7B,SAAS,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC,CAAC;aACD,KAAK,CAAC,UAAC,GAAU;YAChB,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,GAAG,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACP,CAAC,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;IAE3B,sCAAsC;IAChC,IAAA,KAA2C,cAAc,CAC7D,MAAM,EACN,oFAAoF,CACrF,EAHO,MAAM,YAAA,EAAE,SAAS,eAAA,EAAE,KAAK,WAAA,EAAE,UAAU,gBAG3C,CAAC;IAEF,OAAO;QACL,MAAM,QAAA;QACN,MAAM,QAAA;QACN,SAAS,WAAA;QACT,KAAK,OAAA;QACL,UAAU,YAAA;QACV,cAAc,gBAAA;QACd,WAAW,aAAA;KACZ,CAAC;AACJ,CAAC"}
@@ -22,6 +22,8 @@ export interface SPFxContainerInfo {
22
22
  *
23
23
  * @returns Container element and size
24
24
  *
25
+ * @see {@link useSPFxContainerSize} for responsive breakpoint categories (small/medium/large)
26
+ *
25
27
  * @example
26
28
  * ```tsx
27
29
  * function MyComponent() {
@@ -1 +1 @@
1
- {"version":3,"file":"useSPFxContainerInfo.d.ts","sourceRoot":"","sources":["../../src/hooks/useSPFxContainerInfo.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IAE1C,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;CAC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CAaxD"}
1
+ {"version":3,"file":"useSPFxContainerInfo.d.ts","sourceRoot":"","sources":["../../src/hooks/useSPFxContainerInfo.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4BAA4B;IAC5B,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,CAAC;IAE1C,8CAA8C;IAC9C,QAAQ,CAAC,IAAI,EAAE,aAAa,GAAG,SAAS,CAAC;CAC1C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,oBAAoB,IAAI,iBAAiB,CAaxD"}
@@ -17,6 +17,8 @@ import { useResizeObserver } from '../utils/resize-observer.internal';
17
17
  *
18
18
  * @returns Container element and size
19
19
  *
20
+ * @see {@link useSPFxContainerSize} for responsive breakpoint categories (small/medium/large)
21
+ *
20
22
  * @example
21
23
  * ```tsx
22
24
  * function MyComponent() {
@@ -1 +1 @@
1
- {"version":3,"file":"useSPFxContainerInfo.js","sourceRoot":"","sources":["../../src/hooks/useSPFxContainerInfo.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,4CAA4C;AAE5C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AActE;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,oBAAoB;IAClC,sDAAsD;IACtD,IAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACpD,IAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEnD,wCAAwC;IACxC,IAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACpD,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEpC,OAAO;QACL,OAAO,SAAA;QACP,IAAI,MAAA;KACL,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useSPFxContainerInfo.js","sourceRoot":"","sources":["../../src/hooks/useSPFxContainerInfo.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,4CAA4C;AAE5C,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AActE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,oBAAoB;IAClC,sDAAsD;IACtD,IAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACpD,IAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEnD,wCAAwC;IACxC,IAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IACpD,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAEpC,OAAO;QACL,OAAO,SAAA;QACP,IAAI,MAAA;KACL,CAAC;AACJ,CAAC"}
@@ -27,6 +27,8 @@ export interface SPFxDisplayModeInfo {
27
27
  *
28
28
  * @returns Display mode information
29
29
  *
30
+ * @see {@link useSPFxIsEdit} for a simple boolean shortcut
31
+ *
30
32
  * @example
31
33
  * ```tsx
32
34
  * function MyComponent() {
@@ -48,6 +50,8 @@ export declare function useSPFxDisplayMode(): SPFxDisplayModeInfo;
48
50
  *
49
51
  * @returns true if in Edit mode, false otherwise
50
52
  *
53
+ * @see {@link useSPFxDisplayMode} for full display mode information
54
+ *
51
55
  * @example
52
56
  * ```tsx
53
57
  * function MyComponent() {