@sinequa/atomic 2.0.2 → 2.0.5
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.
- package/README.md +38 -3
- package/dist/atomic.cjs +1 -0
- package/dist/atomic.js +2 -1948
- package/dist/authentication/session/auth-state.d.ts +14 -0
- package/dist/authentication/session/auth-state.d.ts.map +1 -0
- package/dist/authentication/session/login.d.ts.map +1 -1
- package/dist/authentication/session/logout.d.ts.map +1 -1
- package/dist/authentication/session/user-authentication.d.ts +4 -0
- package/dist/authentication/session/user-authentication.d.ts.map +1 -1
- package/dist/authentication/tokens/get-csrf-token.d.ts +12 -6
- package/dist/authentication/tokens/get-csrf-token.d.ts.map +1 -1
- package/dist/spfx/index.cjs +1 -0
- package/dist/spfx/index.d.ts +3 -0
- package/dist/spfx/index.d.ts.map +1 -0
- package/dist/spfx/index.js +2 -0
- package/dist/src-B54_W-0n.cjs +1 -0
- package/dist/src-D4e623or.js +1821 -0
- package/dist/web-api/helpers/aad-http-client-manager.d.ts +53 -0
- package/dist/web-api/helpers/aad-http-client-manager.d.ts.map +1 -0
- package/dist/web-api/helpers/handle-response.d.ts +5 -2
- package/dist/web-api/helpers/handle-response.d.ts.map +1 -1
- package/dist/web-api/helpers/index.d.ts +1 -0
- package/dist/web-api/helpers/index.d.ts.map +1 -1
- package/dist/web-api/helpers/methods/del.d.ts.map +1 -1
- package/dist/web-api/helpers/methods/get.d.ts.map +1 -1
- package/dist/web-api/helpers/methods/patch.d.ts.map +1 -1
- package/dist/web-api/helpers/methods/post.d.ts.map +1 -1
- package/dist/web-api/helpers/methods/put.d.ts.map +1 -1
- package/dist/web-api/helpers/utils/resolve-no-auto-authentication.d.ts +16 -0
- package/dist/web-api/helpers/utils/resolve-no-auto-authentication.d.ts.map +1 -0
- package/package.json +17 -4
- package/dist/atomic.umd.cjs +0 -1
package/README.md
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
<img src="https://img.shields.io/npm/v/@sinequa/atomic?style=for-the-badge&color=0ea5e9&label=@sinequa%2Fatomic" alt="npm version" />
|
|
4
4
|
<img src="https://img.shields.io/badge/TypeScript-5.x-3178c6?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript" />
|
|
5
5
|
<img src="https://img.shields.io/badge/ESM-ready-f59e0b?style=for-the-badge" alt="ESM" />
|
|
6
|
+
<img src="https://img.shields.io/badge/SPFx-ready-0078d4?style=for-the-badge&logo=microsoftsharepoint&logoColor=white" alt="SPFx" />
|
|
6
7
|
<img src="https://img.shields.io/npm/l/@sinequa/atomic?style=for-the-badge&color=22c55e" alt="MIT License" />
|
|
7
8
|
|
|
8
9
|
<br /><br />
|
|
@@ -10,7 +11,8 @@
|
|
|
10
11
|
# `@sinequa/atomic`
|
|
11
12
|
|
|
12
13
|
**The TypeScript-first SDK for the Sinequa REST API.**
|
|
13
|
-
Authentication, search, aggregations, datasets, preview — everything typed, tree-shakable, zero runtime dependencies.
|
|
14
|
+
Authentication, search, aggregations, datasets, preview — everything typed, tree-shakable, zero runtime dependencies.
|
|
15
|
+
SPFx-ready via the `@sinequa/atomic/spfx` subpath export.
|
|
14
16
|
|
|
15
17
|
[Docs](https://sinequa.github.io/sba-mint/atomic/intro) · [API Reference](https://sinequa.github.io/sba-mint/atomic/api/app)
|
|
16
18
|
|
|
@@ -24,7 +26,13 @@ Authentication, search, aggregations, datasets, preview — everything typed, tr
|
|
|
24
26
|
npm install @sinequa/atomic
|
|
25
27
|
```
|
|
26
28
|
|
|
27
|
-
> Requires **Node ≥ 18** or any modern browser. Ships as ESM (`atomic.js`) and CJS (`atomic.
|
|
29
|
+
> Requires **Node ≥ 18** or any modern browser. Ships as ESM (`atomic.js`) and CJS (`atomic.cjs`) with full `.d.ts` declarations.
|
|
30
|
+
|
|
31
|
+
For **SharePoint Framework** web parts, `@microsoft/sp-http` is an optional peer dependency — install it only if you need it:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm install @microsoft/sp-http --save-peer
|
|
35
|
+
```
|
|
28
36
|
|
|
29
37
|
---
|
|
30
38
|
|
|
@@ -43,6 +51,33 @@ const facets = await fetchAggregation({ aggregation: 'company', query: 'knowled
|
|
|
43
51
|
|
|
44
52
|
---
|
|
45
53
|
|
|
54
|
+
## SharePoint Framework (SPFx)
|
|
55
|
+
|
|
56
|
+
In an SPFx web part, all HTTP requests must go through the `AadHttpClient` so the Azure AD bearer
|
|
57
|
+
token is attached automatically. Import from the `./spfx` subpath and call
|
|
58
|
+
`initializeAadHttpClient` once during web part initialization:
|
|
59
|
+
|
|
60
|
+
```typescript
|
|
61
|
+
import { initializeAadHttpClient, fetchQuery } from '@sinequa/atomic/spfx';
|
|
62
|
+
import { AadHttpClient } from '@microsoft/sp-http';
|
|
63
|
+
|
|
64
|
+
// In your web part's onInit():
|
|
65
|
+
const client = await this.context.aadHttpClientFactory
|
|
66
|
+
.getClient('https://my-sinequa-server.example.com');
|
|
67
|
+
initializeAadHttpClient(client);
|
|
68
|
+
|
|
69
|
+
// All subsequent API calls route through AadHttpClient automatically:
|
|
70
|
+
const results = await fetchQuery({ name: '_query', text: 'knowledge management' });
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Call `initializeAadHttpClient(null)` to detach the client (e.g. in `onDispose`).
|
|
74
|
+
|
|
75
|
+
> The `./spfx` subpath re-exports everything from `@sinequa/atomic` and adds
|
|
76
|
+
> `initializeAadHttpClient`, `AadHttpClientLike`, and `AadHttpResponseLike`.
|
|
77
|
+
> Standard (non-SPFx) consumers use `@sinequa/atomic` directly — no changes needed.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
46
81
|
## Modules
|
|
47
82
|
|
|
48
83
|
### Authentication
|
|
@@ -241,7 +276,7 @@ console.log(globalConfig.backendUrl, globalConfig.authMode.kind);
|
|
|
241
276
|
## Testing
|
|
242
277
|
|
|
243
278
|
```bash
|
|
244
|
-
npm test # run vitest (
|
|
279
|
+
npm test # run vitest (287 test cases across 25 files)
|
|
245
280
|
npm test -- --ui # interactive UI
|
|
246
281
|
```
|
|
247
282
|
|
package/dist/atomic.cjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./src-B54_W-0n.cjs");exports.API=e.F,exports.ApiError=e.Ht,exports.Audit=e.$,exports.AuditEventType=e.Ct,exports.AuthMode=e.En,exports.DidYouMeanKind=e.yt,exports.EngineType=e.St,exports.EngineTypeModifier=e.xt,exports.LogLevel=e.Wt,exports.MINIMUM_COMPATIBLE_SERVER_API_VERSION=e.bt,exports.RFMDisplay=e.vt,exports.ServerError=e.Vt,exports.TimeoutError=e.Bt,exports.UnauthorizedError=e.zt,exports.addAuditAdditionalInfo=e.et,exports.addConcepts=e.dn,exports.addSessionId=e.tt,exports.addUrl=e.nt,exports.aggItemRegex=e.vn,exports.aggregationItemStrictCompare=e.yn,exports.appInitializerFn=e.q,exports.bisect=e._n,exports.buildPathsAndLevels=e.M,exports.clearSessionTokens=e.n,exports.configureLogger=e.Gt,exports.createHeaders=e.Ut,exports.createTimeoutController=e.kt,exports.createUserProfile=e.m,exports.debug=e.Kt,exports.del=e.Ft,exports.deleteUserProfileProperty=e.h,exports.deleteUserSettings=e.b,exports.deleteWebTokenCookie=e.i,exports.detectAuthMode=e.Z,exports.emitAuthenticatedEvent=e.On,exports.error=e.qt,exports.escapeExpr=e.rt,exports.expiresSoon=e.Et,exports.extraColumns=e.gt,exports.fetchAggregation=e.Q,exports.fetchApp=e.J,exports.fetchAppPreLogin=e.Y,exports.fetchBulkQuery=e.N,exports.fetchChangePassword=e.y,exports.fetchDataset=e.W,exports.fetchDatasetList=e.G,exports.fetchDatasets=e.K,exports.fetchLabels=e.H,exports.fetchPreview=e.B,exports.fetchPreviewUrl=e.V,exports.fetchPrincipal=e.I,exports.fetchPrincipalList=e.L,exports.fetchPrincipalUserid=e.R,exports.fetchPrincipalUserids=e.z,exports.fetchQuery=e.P,exports.fetchQueryExport=e.j,exports.fetchQueryIntent=e.A,exports.fetchSendPasswordResetEmail=e.v,exports.fetchSimilarDocuments=e.k,exports.fetchSponsoredLinks=e.O,exports.fetchSuggest=e.T,exports.fetchSuggestField=e.E,exports.fetchSuggestQuery=e.D,exports.fetchTextChunks=e.w,exports.fetchUserProfile=e.g,exports.fetchUserSettings=e.x,exports.fetchVersion=e.p,exports.filter=e.ht,exports.get=e.Pt,exports.getConcepts=e.fn,exports.getCsrfToken=e.l,exports.getFiltersFromURI=e.$t,exports.getFiltersFromUrl=e.en,exports.getHelpIndexUrl=e.Zt,exports.getIdFromUrl=e.tn,exports.getJWToken=e.c,exports.getMetadata=e.pt,exports.getMetadataWithValues=e.mt,exports.getOffsetFromDates=e.ln,exports.getQueryPageFromUrl=e.nn,exports.getQueryParamsFromUrl=e.rn,exports.getQueryTabFromUrl=e.in,exports.getQueryTextFromUrl=e.an,exports.getRelativeDate=e.un,exports.getTime=e.it,exports.getToken=e.s,exports.getUrlParamsFromQueryParams=e.on,exports.globalConfig=e.wn,exports.guid=e.at,exports.handleResponse=e.Rt,exports.info=e.Jt,exports.initializeAppConfig=e.X,exports.isArrayBuffer=e.ot,exports.isAuthenticated=e.t,exports.isBlob=e.st,exports.isDate=e.ct,exports.isExpired=e.Dt,exports.isJsonable=e.lt,exports.isNotInputEvent=e.cn,exports.isObject=e.ut,exports.isString=e.dt,exports.labels=e.U,exports.legacyBooleansToAuthMode=e.Dn,exports.login=e.a,exports.logout=e.r,exports.makeColumn=e._t,exports.notify=e.Xt,exports.openParentNodes=e.bn,exports.parseText=e.pn,exports.parseValueAndOperatorFromItem=e.xn,exports.patch=e.Mt,exports.patchUserProfile=e._,exports.patchUserSettings=e.S,exports.post=e.jt,exports.put=e.At,exports.queryParamsFromUrl=e.sn,exports.removeConcept=e.mn,exports.removeConcepts=e.hn,exports.resolveNoAutoAuthentication=e.Nt,exports.resolveToColumnName=e.wt,exports.rewriteText=e.gn,exports.saveUserSettings=e.C,exports.setGlobalConfig=e.Tn,exports.setToken=e.u,exports.sha512=e.ft,exports.suggestionsToTreeAggregationNodes=e.Sn,exports.sysLang=e.Qt,exports.toDate=e.Ot,exports.translateAggregationToDateOptions=e.Cn,exports.tryAutoAuthentication=e.o,exports.tryOAuthAuthentication=e.f,exports.trySAMLAuthentication=e.d,exports.warn=e.Yt,exports.withRetry=e.Tt;
|