@notionhq/client 5.27.0 → 5.27.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.
package/README.md CHANGED
@@ -160,7 +160,7 @@ const notion = new Client({
160
160
  })
161
161
  ```
162
162
 
163
- A token passed per request through `auth` is blocked the same way: the request rejects with `BrowserTokenNotAllowedError` before anything is sent. A client without a token still works in a browser, for example with a `baseUrl` that points at your own server, which adds the token. Web workers and service workers count as a browser too, because every visitor downloads their script. Test runners that emulate a browser, such as jsdom, count as well, so pass `dangerouslyAllowBrowser: true` in those tests. The `agent` option is ignored in browsers, and the client doesn't send its `user-agent` header there, because the API's CORS rules don't allow it. OAuth token endpoints under `/v1/oauth/` don't send CORS headers, so exchange authorization codes on a server.
163
+ A token passed per request through `auth` is blocked the same way: the request rejects with `BrowserTokenNotAllowedError` before anything is sent. A client without a token still works in a browser, for example with a `baseUrl` that points at your own server, which adds the token. Web workers and service workers in a browser count as a browser too, because every visitor downloads their script. Server runtimes that borrow worker APIs, such as Cloudflare Workers and Deno worker threads, don't count. Test runners that emulate a browser, such as jsdom, count as well, so pass `dangerouslyAllowBrowser: true` in those tests. The `agent` option is ignored in browsers, and the client doesn't send its `user-agent` header there, so a proxy's CORS rules don't need to allow it. OAuth token endpoints under `/v1/oauth/` don't send CORS headers, so exchange authorization codes on a server.
164
164
 
165
165
  ### Automatic retries
166
166
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@notionhq/client",
3
- "version": "5.27.0",
3
+ "version": "5.27.1",
4
4
  "description": "A simple and easy to use client for the Notion API",
5
5
  "engines": {
6
6
  "node": ">=18"
@@ -1799,9 +1799,7 @@ export default class Client {
1799
1799
  } | {
1800
1800
  select: {
1801
1801
  id: import("./api-endpoints").StringRequest;
1802
- name? /**
1803
- * Executes the request with retry logic.
1804
- */: import("./api-endpoints").TextRequest;
1802
+ name?: import("./api-endpoints").TextRequest;
1805
1803
  color?: import("./api-endpoints").SelectColor;
1806
1804
  description?: import("./api-endpoints").TextRequest | null;
1807
1805
  } | {
@@ -1 +1 @@
1
- {"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAEtC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAA;AACnE,OAAO,EACL,KAAK,MAAM,EACX,QAAQ,EAGT,MAAM,WAAW,CAAA;AAqBlB,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE5B,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAE/B,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAEzB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAE9B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAE1B,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,EAE5B,KAAK,wBAAwB,EAC7B,KAAK,sBAAsB,EAE3B,KAAK,4BAA4B,EACjC,KAAK,0BAA0B,EAE/B,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE5B,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EAEvB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EAEvB,KAAK,yBAAyB,EAC9B,KAAK,uBAAuB,EAE5B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAE7B,KAAK,6BAA6B,EAClC,KAAK,2BAA2B,EAEjC,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,KAAK,yBAAyB,EAE/B,MAAM,+BAA+B,CAAA;AACtC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAA;AAKlE,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,eAAe,CAAA;AAEtE,MAAM,MAAM,YAAY,GAAG;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,KAAK,CAAC,EAAE,cAAc,CAAA;IACtB,sCAAsC;IACtC,KAAK,CAAC,EAAE,KAAK,CAAA;IACb;;;OAGG;IACH,KAAK,CAAC,EAAE,YAAY,GAAG,KAAK,CAAA;IAC5B;;;;;OAKG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC,CAAA;AAED,KAAK,SAAS,GAAG;IACf,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB,CAAA;AAmBD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAChC;;;;OAIG;IACH,IAAI,CAAC,EACD,MAAM,GACN;QACE,SAAS,EAAE,MAAM,CAAA;QACjB,aAAa,EAAE,MAAM,CAAA;KACtB,CAAA;CACN,CAAA;AAUD,MAAM,CAAC,OAAO,OAAO,MAAM;;IAoBzB,MAAM,CAAC,QAAQ,CAAC,oBAAoB,gBAAe;gBAEhC,OAAO,CAAC,EAAE,aAAa;IA6B1C;;OAEG;IACU,OAAO,CAAC,YAAY,SAAS,MAAM,EAC9C,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,YAAY,CAAC;IA4BxB;;OAEG;YACY,aAAa;IAkF5B;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;OAEG;IACH,OAAO,CAAC,aAAa;IAmBrB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA0B3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAyBrB;;OAEG;YACW,gBAAgB;IAyC9B;;OAEG;YACW,oBAAoB;IA4BlC;;;;OAIG;YACW,0BAA0B;IAqBxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAYxB;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ;IAyBhB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;;;OAIG;IACH,OAAO,CAAC,qBAAqB;IAsB7B,OAAO,CAAC,KAAK;IAQb,SAAgB,OAAO;;;;;;;yBAEJ,QAAQ,CAAC,4BAA4B,CAAC;MAMxD;IAED,SAAgB,MAAM;;;;;;MAA+B;IAErD,SAAgB,MAAM;;;;;;;;;;;;;;;;;;;;;yBA0kBy+1B,CAAC;0BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAAkb,CAAC;0BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;6BAA6a,CAAC;8BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAA+gB,CAAC;8BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;iCAAilB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgpB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;iCAAonB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgpB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;6BAA8e,CAAC;8BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6BAA+gB,CAAC;8BAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;iCAAilB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgpB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;iCAAonB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAAgpB,CAAC;kCAAgB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA1kB3/kC;IAErD,SAAgB,QAAQ;QACtB;;WAEG;;;;;;QAGH;;WAEG;;;;;;;;;oBAgkByr7H,CAAC;oBAA4B,CAAC;;;;;;;;;;;;;;;;;QA7jB1t7H;;WAEG;uBAEK,QAAQ,CAAC,6BAA6B,CAAC,KAC5C,aAAa,CAAC,2BAA2B,CAAC;QAe7C;;WAEG;;;;;;;;QAGH;;WAEG;;;;;;;;;;;;;;;;0BAkiB0l0F,CAAC;sBAA+P,CAAC;;;;;0BAAob,CAAC;yBAAsE,CAAC;gCAAoF,CAAC;+BAAkF,CAAC;;;;;;;;;;;;;;;;8BAAu4B,CAAC;0BAAqT,CAAC;;;;;8BAA0hB,CAAC;6BAAkF,CAAC;oCAAgG,CAAC;mCAA8F,CAAC;;;;;;;;;;;;;;;;kCAA2jC,CAAC;8BAA2W,CAAC;;;;;kCAAgoB,CAAC;iCAA8F,CAAC;wCAA4G,CAAC;uCAA0G,CAAC;;;;;;;;;;;;;;;;;kCAAkmC,CAAC;8BAA2W,CAAC;;;;;kCAAgoB,CAAC;iCAA8F,CAAC;wCAA4G,CAAC;uCAA0G,CAAC;;;;;;;;;;;;;;;;;;8BAA48B,CAAC;0BAAqT,CAAC;;;;;8BAA0hB,CAAC;6BAAkF,CAAC;oCAAgG,CAAC;mCAA8F,CAAC;;;;;;;;;;;;;;;;kCAA2jC,CAAC;8BAA2W,CAAC;;;;;kCAAgoB,CAAC;iCAA8F,CAAC;wCAA4G,CAAC;uCAA0G,CAAC;;;;;;;;;;;;;;;;;kCAAkmC,CAAC;8BAA2W,CAAC;;;;;kCAAgoB,CAAC;iCAA8F,CAAC;wCAA4G,CAAC;uCAA0G,CAAC;;;;;;;;;;;;;;QA/hB7+wG;;WAEG;;;;;;;;;;;;0BA6hBwk7D,CAAC;sBAAwM,CAAC;;;;;gCAA8S,CAAC;4CAA2C,CAAC;6BAA4B,CAAC;yCAAwC,CAAC;;;;;0BAAuG,CAAC;0BAAyB,CAAC;yBAAwB,CAAC;gCAA+B,CAAC;+BAA8B,CAAC;;;;;;;;;;;8BAAiN,CAAC;0BAAkP,CAAC;;;;;oCAA4X,CAAC;gDAAiD,CAAC;iCAAkC,CAAC;6CAA8C,CAAC;;;;;8BAA2I,CAAC;8BAA+B,CAAC;6BAA8B,CAAC;oCAAqC,CAAC;mCAAoC,CAAC;;;;;;;;;;;kCAAuQ,CAAC;8BAA4R,CAAC;;;;;wCAA0c,CAAC;oDAAuD,CAAC;qCAAwC,CAAC;iDAAoD,CAAC;;;;;kCAA+K,CAAC;kCAAqC,CAAC;iCAAoC,CAAC;wCAA2C,CAAC;uCAA0C,CAAC;;;;;;;;;;;sCAA6T,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;sCAAkX,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;;kCAAsW,CAAC;8BAA4R,CAAC;;;;;wCAA0c,CAAC;oDAAuD,CAAC;qCAAwC,CAAC;iDAAoD,CAAC;;;;;kCAA+K,CAAC;kCAAqC,CAAC;iCAAoC,CAAC;wCAA2C,CAAC;uCAA0C,CAAC;;;;;;;;;;;sCAA6T,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;sCAAkX,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;;;8BAA8U,CAAC;0BAAkP,CAAC;;;;;oCAA4X,CAAC;gDAAiD,CAAC;iCAAkC,CAAC;6CAA8C,CAAC;;;;;8BAA2I,CAAC;8BAA+B,CAAC;6BAA8B,CAAC;oCAAqC,CAAC;mCAAoC,CAAC;;;;;;;;;;;kCAAuQ,CAAC;8BAA4R,CAAC;;;;;wCAA0c,CAAC;oDAAuD,CAAC;qCAAwC,CAAC;iDAAoD,CAAC;;;;;kCAA+K,CAAC;kCAAqC,CAAC;iCAAoC,CAAC;wCAA2C,CAAC;uCAA0C,CAAC;;;;;;;;;;;sCAA6T,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;sCAAkX,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;;kCAAsW,CAAC;8BAA4R,CAAC;;;;;wCAA0c,CAAC;oDAAuD,CAAC;qCAAwC,CAAC;iDAAoD,CAAC;;;;;kCAA+K,CAAC;kCAAqC,CAAC;iCAAoC,CAAC;wCAA2C,CAAC;uCAA0C,CAAC;;;;;;;;;;;sCAA6T,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;sCAAkX,CAAC;kCAAsU,CAAC;;;;;4CAAwhB,CAAC;wDAA6D,CAAC;yCAA8C,CAAC;qDAA0D,CAAC;;;;;sCAAmN,CAAC;sCAA2C,CAAC;qCAA0C,CAAC;4CAAiD,CAAC;2CAAgD,CAAC;;;;;;;;;;;;;;;MA3hBx1pF;IAED,SAAgB,UAAU;;;;;;MAAmC;IAE7D,SAAgB,MAAM;QACpB;;WAEG;;;;;;QAGH;;WAEG;;;;QAGH;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;YAKD;;eAEG;;;;;mCAxuBT,CAAC;;;;;;;;;;;;;;;;;;;;YA2uBK;;eAEG;0BAEK,QAAQ,CAAC,2BAA2B,CAAC,KAC1C,OAAO,CAAC,yBAAyB,CAAC;;MAUxC;IAED,SAAgB,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAAkC;IAE3D,SAAgB,WAAW;;;;;;;;;;;;oBA9be,CAAC;2BACP,CAAC;;oBAGrB,CAAC;;0BAAwC,CAAA;;;oBAInD,CAFR;;8BAA6C,CAAC;;;oBAEtC,CAAN;;2BACQ,CAAN;6BAAgC,CAAC;mCACZ,CAAC;;;0BACqB,CAAC;;;4BAEjC,CAAC;;;;oBAUA,CAAA;;2BAEF,CAAC;6BACO,CAAC;mCACpB,CAAC;;;0BAEiB,CAAC;;;4BAIlB,CAAD;;;;oBAIU,CAAC;;;oBAQA,CAAC;;;;wBAIF,CAAC;;;wBAKC,CAAC;;0CAGT,CAAC;4CAGH,CAAC;;;;oBAC2D,CAAC;;;;;;;;;;;;;;;;;oBAwB1D,CAAJ;;0BAA6C,CAAC;;;oBAGvC,CAAC;;;oBAKa,CAAC;;;oBAGkB,CAAA;;;oBAGxB,CAAC;;;oBAOhB,CAAC;;;oBAEO,CAAC;;;oBAIJ,CAAC;;;oBAKL,CAAC;;;oBAM+B,CAAC;;;oBAGrC,CAAC;;;oBAGyB,CAAC;;;oBAMf,CAAC;;;oBAME,CAAC;;;oBAKsD,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA4SR;IAE/D,SAAgB,KAAK;QACnB;;WAEG;;;;;;oBArgBC,CAAD;;;oBAGO,CAAC;;;oBAGD,CAAC;;;oBAGX,CAAH;;;;oBAE0B,CAAC;;;oBACF,CAAC;;;oBACS,CAAC;;;oBAG7B,CAAH;;;;wBAKsC,CAAC;yBACZ,CAAC;+BAEtB,CAAC;;;sBAGoC,CAAC;yBAErC,CAAC;+BAEL,CAAA;;oBAEmB,CAAC;;;;wBAIL,CAAC;yBAAkC,CAAA;+BACtC,CAAC;;;sBAGsB,CAAC;yBAEpC,CAAP;+BAGoB,CAAC;;oBACe,CAAC;;;oBAMhC,CAAJ;;;oBAEuB,CAAC;;;oBAGF,CAAC;;;oBAMG,CAAC;;;oBAEZ,CAAC;;;oBACA,CAAC;;;oBAGmC,CAAC;;;;wBAE3C,CAAC;yBAAiC,CAAC;+BACpC,CAAA;;;sBAED,CAAL;yBACO,CAAT;+BACW,CAAV;;oBACQ,CAAX;;;;;wBAIO,CAAL;2BAGS,CAAC;gCAIY,CAAC;mCAExB,CAAF;;oBACoB,CAAC;;;;wBAGJ,CAAC;;;;oBAIL,CAAC;;;;;;;;;;;;wBAkBO,CAAC;;;;wBAGc,CAAC;;;;;;QAgZjC;;WAEG;;;;;;;;QAGH;;WAEG;;;;;;;;oBAjWI,CAAC;;;oBAC2B,CAAC;;;oBAG9B,CAAJ;;;oBAAkD,CAAC;;;;wBAWvD,CAHA,CAAA;;uBAEG;yBADwB,CAAC;+BAEX,CAAC;;;sBAEK,CAAC;yBAAmC,CAAC;+BAEzD,CAAC;;oBACU,CAAC;;;;wBAKP,CAAR;yBAEQ,CAAP;+BAEO,CAAF;;;sBAIE,CAAP;yBAGK,CAAF;+BAEE,CAAR;;oBAAyD,CAAC;;;oBAE3B,CAAC;;;oBAEhB,CAAC;;;oBAGP,CAAL;;;oBAEQ,CAAC;;;oBAIN,CAAD;;;oBAMkC,CAAC;;;oBAKf,CAAC;;;;wBAEf,CAAC;yBACH,CAAC;+BACC,CAAC;;;sBAOD,CAAC;yBACV,CAAD;+BACe,CAAC;;oBAGG,CAAC;;;;;wBAEX,CAAC;2BAEO,CAAC;gCAEf,CAAC;mCAIO,CAAA;;oBAA6C,CAAC;;;;wBACO,CAAC;;;;oBAChB,CAAC;;;;;;;wBAQ5B,CAAC;;;;wBAKjB,CAAC;;;;;;;;;QA6PN;;WAEG;;;;;;oBA5MA,CAAC;;;oBAOwC,CAAC;;;;;QAwM7C;;WAEG;iCAEK,QAAQ,CAAC,yBAAyB,CAAC,KACxC,OAAO,CAAC,uBAAuB,CAAC;QAUnC;;WAEG;+BAEK,QAAQ,CAAC,4BAA4B,CAAC,KAC3C,OAAO,CAAC,0BAA0B,CAAC;;;;;;;;;;;;MAUvC;IAED,SAAgB,KAAK;;;;;;;;;;;;;;;MAA8B;IAEnD,SAAgB,YAAY;QAC1B;;WAEG;sBAEM,QAAQ,CAAC,0BAA0B,CAAC,KAC1C,OAAO,CAAC,wBAAwB,CAAC;MAUrC;IAED,SAAgB,QAAQ;;;;oBA1xBrB,CAAC;;;;;;;;;;;;;;;oBAwBJ,CAAA;;;oBAYA,CAAA;;;;;;oBAUiD,CAAC;;;oBAac,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA+tBR;IAEzD,SAAgB,WAAW;QACzB;;WAEG;;;;;;;;;;QAGH;;WAEG;yBAEK,QAAQ,CAAC,uBAAuB,CAAC,KACtC,OAAO,CAAC,qBAAqB,CAAC;QAUjC;;WAEG;qBAEK,QAAQ,CAAC,yBAAyB,CAAC,KACxC,OAAO,CAAC,uBAAuB,CAAC;QAUnC;;;;;;;;;;;;;WAaG;qBAEK,QAAQ,CAAC,wBAAwB,CAAC,KACvC,OAAO,CAAC,sBAAsB,CAAC;QAWlC;;WAEG;yBAEK,QAAQ,CAAC,4BAA4B,CAAC,KAC3C,OAAO,CAAC,0BAA0B,CAAC;MASvC;IAED,SAAgB,KAAK;QACnB;;WAEG;uBAEK,QAAQ,CAAC,oBAAoB,CAAC,KACnC,OAAO,CAAC,kBAAkB,CAAC;QAuB9B;;WAEG;;;;;;QAGH;;WAEG;uBAEK,QAAQ,CAAC,oBAAoB,CAAC,KACnC,OAAO,CAAC,kBAAkB,CAAC;QAgB9B;;WAEG;;;;;;QAGH;;WAEG;;;;;;;;;;YAID;;eAEG;2BAEK,QAAQ,CAAC,yBAAyB,CAAC,KACxC,OAAO,CAAC,uBAAuB,CAAC;YAUnC;;eAEG;;;;;;;;;;YAGH;;eAEG;;;;;;;;MAGN;IAED;;OAEG;IACI,MAAM;;;;;;;;;;;;;oBAlgCkC,CAAC;;;;;;yEAkgCJ;IAE5C,SAAgB,KAAK;QACnB;;WAEG;sBAEK,oBAAoB,GAAG;YAC3B,SAAS,EAAE,MAAM,CAAA;YACjB,aAAa,EAAE,MAAM,CAAA;SACtB,KACA,OAAO,CAAC,kBAAkB,CAAC;QAY9B;;WAEG;2BAEK,yBAAyB,GAAG;YAChC,SAAS,EAAE,MAAM,CAAA;YACjB,aAAa,EAAE,MAAM,CAAA;SACtB,KACA,OAAO,CAAC,uBAAuB,CAAC;QAYnC;;WAEG;uBAEK,qBAAqB,GAAG;YAC5B,SAAS,EAAE,MAAM,CAAA;YACjB,aAAa,EAAE,MAAM,CAAA;SACtB,KACA,OAAO,CAAC,mBAAmB,CAAC;MAYhC;IAED;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAsBzB;;;;;OAKG;IACH,OAAO,CAAC,GAAG;IAUX;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAO9B;;;;;;;;OAQG;IACH,OAAO,CAAC,aAAa;CAQtB;AA+FD,KAAK,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;AACjD,KAAK,WAAW,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,GAC3D,eAAe,CAAA;AAEnB,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA"}
1
+ {"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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"}
@@ -23,17 +23,26 @@ const package_json_1 = require("../package.json");
23
23
  const START_CURSOR_PARAM_NAME = "start_cursor";
24
24
  /**
25
25
  * True inside a browser page, web worker, or service worker: the places where
26
- * every visitor downloads the script, so a token in it is public. Node, Bun,
27
- * Deno, and edge runtimes have neither `window.document` nor
28
- * `WorkerGlobalScope`. Test runners that emulate a browser, such as jsdom,
29
- * also count as a browser here.
26
+ * every visitor downloads the script, so a token in it is public. Test runners
27
+ * that emulate a browser, such as jsdom, also count as a browser here.
28
+ *
29
+ * A browser worker's global object is an instance of `WorkerGlobalScope` and
30
+ * has an `importScripts` function. Some server runtimes match one but not
31
+ * both: the global object in Cloudflare Workers is not an instance of
32
+ * `WorkerGlobalScope`, and Deno worker threads lack `importScripts`. Both
33
+ * checks look for browser traits, so a global that a polyfill or other
34
+ * library adds can only make this check stricter, never turn it off.
30
35
  */
31
36
  function isBrowserEnvironment() {
32
- const maybeWindow = globalThis.window;
33
- if (maybeWindow !== undefined && maybeWindow.document !== undefined) {
37
+ var _a;
38
+ const browserGlobals = globalThis;
39
+ if (((_a = browserGlobals.window) === null || _a === void 0 ? void 0 : _a.document) !== undefined) {
34
40
  return true;
35
41
  }
36
- return "WorkerGlobalScope" in globalThis;
42
+ const workerGlobalScope = browserGlobals.WorkerGlobalScope;
43
+ return (typeof workerGlobalScope === "function" &&
44
+ globalThis instanceof workerGlobalScope &&
45
+ typeof browserGlobals.importScripts === "function");
37
46
  }
38
47
  class Client {
39
48
  constructor(options) {
@@ -559,8 +568,8 @@ class Client {
559
568
  ...authorizationHeader,
560
569
  "Notion-Version": __classPrivateFieldGet(this, _Client_notionVersion, "f"),
561
570
  };
562
- // Firefox and Safari send a custom user-agent, which the API's CORS
563
- // preflight does not allow, so every browser request would fail.
571
+ // Firefox and Safari send a custom user-agent, so the CORS preflight asks
572
+ // for it, and a proxy set as `baseUrl` may not allow it.
564
573
  if (!isBrowserEnvironment()) {
565
574
  headers["user-agent"] = __classPrivateFieldGet(this, _Client_userAgent, "f");
566
575
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Agent } from \"node:http\"\nimport { createEndpointMethods } from \"./api-endpoint-methods\"\nimport type { GetPluginDirectoryParameters } from \"./api-endpoints\"\nimport {\n type Logger,\n LogLevel,\n logLevelSeverity,\n makeConsoleLogger,\n} from \"./logging\"\nimport {\n APIErrorCode,\n APIResponseError,\n BrowserTokenNotAllowedError,\n buildRequestError,\n getResponseHeader,\n isHTTPResponseError,\n isNotionClientError,\n type NotionClientError,\n RequestTimeoutError,\n validateRequestPath,\n} from \"./errors\"\nimport { pick, getUnknownParams, type EndpointDefinition } from \"./utils\"\nimport {\n DEFAULT_BASE_URL,\n DEFAULT_TIMEOUT_MS,\n DEFAULT_MAX_RETRIES,\n DEFAULT_INITIAL_RETRY_DELAY_MS,\n DEFAULT_MAX_RETRY_DELAY_MS,\n} from \"./constants\"\nimport {\n type GetPageMarkdownParameters,\n type GetPageMarkdownResponse,\n getPageMarkdown,\n type UpdatePageMarkdownParameters,\n type UpdatePageMarkdownResponse,\n updatePageMarkdown,\n type OauthTokenResponse,\n type OauthTokenParameters,\n oauthToken,\n type OauthIntrospectResponse,\n type OauthIntrospectParameters,\n oauthIntrospect,\n type OauthRevokeResponse,\n type OauthRevokeParameters,\n oauthRevoke,\n type GetFileUploadResponse,\n type GetFileUploadParameters,\n getFileUpload,\n type SendFileUploadParameters,\n type SendFileUploadResponse,\n sendFileUpload,\n type CompleteFileUploadParameters,\n type CompleteFileUploadResponse,\n completeFileUpload,\n type ListFileUploadsParameters,\n type ListFileUploadsResponse,\n listFileUploads,\n type CreateViewParameters,\n type CreateViewResponse,\n createView,\n type UpdateViewParameters,\n type UpdateViewResponse,\n updateView,\n type CreateViewQueryParameters,\n type CreateViewQueryResponse,\n createViewQuery,\n type ListCustomEmojisParameters,\n type ListCustomEmojisResponse,\n listCustomEmojis,\n type UpdateSessionStreamParameters,\n type UpdateSessionStreamResponse,\n updateSessionStream,\n} from \"./api-endpoints\"\nimport {\n type QueryMeetingNotesResponse,\n queryMeetingNotes,\n} from \"./api-endpoints/meeting-notes\"\nimport type { QueryMeetingNotesParameters } from \"./meeting-notes\"\nimport {\n version as PACKAGE_VERSION,\n name as PACKAGE_NAME,\n} from \"../package.json\"\nimport type { SupportedFetch, SupportedResponse } from \"./fetch-types\"\n\nexport type RetryOptions = {\n /**\n * Maximum number of retry attempts. Set to 0 to disable retries.\n * @default 2\n */\n maxRetries?: number\n /**\n * Initial delay between retries in milliseconds.\n * Used as base for exponential back-off when retry-after header is absent.\n * @default 1000\n */\n initialRetryDelayMs?: number\n /**\n * Maximum delay between retries in milliseconds.\n * @default 60000\n */\n maxRetryDelayMs?: number\n}\n\nexport type ClientOptions = {\n auth?: string\n timeoutMs?: number\n baseUrl?: string\n logLevel?: LogLevel\n logger?: Logger\n notionVersion?: string\n fetch?: SupportedFetch\n /** Silently ignored in the browser */\n agent?: Agent\n /**\n * Configuration for automatic retries on rate limit (429) and server errors.\n * Set to false to disable retries entirely.\n */\n retry?: RetryOptions | false\n /**\n * Allows the client to use a Notion token inside a browser page or worker.\n * Without it, using a token there throws `BrowserTokenNotAllowedError`.\n * Anyone who can load the page can read the token and act as your\n * connection, so only set this for pages that nobody else can open.\n */\n dangerouslyAllowBrowser?: boolean\n}\n\ntype FileParam = {\n filename?: string\n data: string | Blob\n}\n\nconst START_CURSOR_PARAM_NAME = \"start_cursor\"\n\n/**\n * True inside a browser page, web worker, or service worker: the places where\n * every visitor downloads the script, so a token in it is public. Node, Bun,\n * Deno, and edge runtimes have neither `window.document` nor\n * `WorkerGlobalScope`. Test runners that emulate a browser, such as jsdom,\n * also count as a browser here.\n */\nfunction isBrowserEnvironment(): boolean {\n const maybeWindow = (globalThis as { window?: { document?: unknown } }).window\n if (maybeWindow !== undefined && maybeWindow.document !== undefined) {\n return true\n }\n return \"WorkerGlobalScope\" in globalThis\n}\n\nexport type RequestParameters = {\n path: string\n method: Method\n query?: QueryParams\n body?: Record<string, unknown>\n formDataParams?: Record<string, string | FileParam>\n headers?: Record<string, string>\n /**\n * To authenticate using public API token, `auth` should be passed as a\n * string. If you are trying to complete OAuth, then `auth` should be an object\n * containing your integration's client ID and secret.\n */\n auth?:\n | string\n | {\n client_id: string\n client_secret: string\n }\n}\n\ntype ExecutableRequest = {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n}\n\nexport default class Client {\n #endpointMethods = createEndpointMethods({\n request: args => this.request(args),\n warnUnknownParams: (args, endpoint) =>\n this.warnUnknownParams(args, endpoint),\n })\n #auth?: string\n #logLevel: LogLevel\n #logger: Logger\n #prefixUrl: string\n #timeoutMs: number\n #notionVersion: string\n #fetch: SupportedFetch\n #agent: Agent | undefined\n #userAgent: string\n #maxRetries: number\n #initialRetryDelayMs: number\n #maxRetryDelayMs: number\n #dangerouslyAllowBrowser: boolean\n\n static readonly defaultNotionVersion = \"2025-09-03\"\n\n public constructor(options?: ClientOptions) {\n this.#auth = options?.auth\n this.#logLevel = options?.logLevel ?? LogLevel.WARN\n this.#logger = options?.logger ?? makeConsoleLogger(PACKAGE_NAME)\n this.#prefixUrl = `${options?.baseUrl ?? DEFAULT_BASE_URL}/v1/`\n this.#timeoutMs = options?.timeoutMs ?? DEFAULT_TIMEOUT_MS\n this.#notionVersion = options?.notionVersion ?? Client.defaultNotionVersion\n this.#fetch = options?.fetch ?? fetch.bind(globalThis)\n this.#agent = options?.agent\n this.#userAgent = `notionhq-client/${PACKAGE_VERSION}`\n\n if (options?.retry === false) {\n this.#maxRetries = 0\n this.#initialRetryDelayMs = 0\n this.#maxRetryDelayMs = 0\n } else {\n this.#maxRetries = options?.retry?.maxRetries ?? DEFAULT_MAX_RETRIES\n this.#initialRetryDelayMs =\n options?.retry?.initialRetryDelayMs ?? DEFAULT_INITIAL_RETRY_DELAY_MS\n this.#maxRetryDelayMs =\n options?.retry?.maxRetryDelayMs ?? DEFAULT_MAX_RETRY_DELAY_MS\n }\n\n this.#dangerouslyAllowBrowser = options?.dangerouslyAllowBrowser ?? false\n if (options?.auth !== undefined) {\n this.assertTokenAllowedHere()\n }\n }\n\n /**\n * Sends a request.\n */\n public async request<ResponseBody extends object>(\n args: RequestParameters\n ): Promise<ResponseBody> {\n const { path, method, query, body, formDataParams, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const formData = this.buildFormData(formDataParams, headers)\n\n return this.executeWithRetry<ResponseBody>(\n {\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString ?? formData,\n },\n request => this.executeSingleRequest<ResponseBody>(request)\n )\n }\n\n /**\n * Opens an SSE response and yields each parsed event as it arrives.\n */\n private async *streamRequest<ResponseBody>(\n args: RequestParameters,\n parseEvent: (frame: SseFrame) => ResponseBody\n ): AsyncIterable<ResponseBody> {\n const { path, method, query, body, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"stream request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const response = await this.executeWithRetry<SupportedResponse>(\n {\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString,\n },\n request => this.executeSingleStreamRequest(request)\n )\n\n this.log(LogLevel.INFO, \"stream request opened\", { method, path })\n\n if (response.body === undefined || response.body === null) {\n for (const frame of takeSseFrames({\n content: await response.text(),\n complete: true,\n }).frames) {\n yield parseEvent(frame)\n }\n return\n }\n\n const reader = response.body.getReader()\n const decoder = new TextDecoder()\n let remaining = \"\"\n let complete = false\n try {\n while (!complete) {\n const { done, value } = await reader.read()\n if (done) {\n complete = true\n continue\n }\n if (value === undefined) {\n throw new Error(\"SSE response body ended without a data chunk.\")\n }\n\n const frames = takeSseFrames({\n content: `${remaining}${decoder.decode(value, { stream: true })}`,\n complete: false,\n })\n remaining = frames.remaining\n for (const frame of frames.frames) {\n yield parseEvent(frame)\n }\n }\n\n for (const frame of takeSseFrames({\n content: `${remaining}${decoder.decode()}`,\n complete: true,\n }).frames) {\n yield parseEvent(frame)\n }\n } finally {\n try {\n if (!complete) {\n await reader.cancel?.()\n }\n } finally {\n reader.releaseLock()\n }\n }\n }\n\n /**\n * Builds the full URL with query parameters.\n */\n private buildRequestUrl(path: string, query: QueryParams | undefined): URL {\n const url = new URL(`${this.#prefixUrl}${path}`)\n if (query) {\n for (const [key, value] of Object.entries(query)) {\n // Skip `null` for the same reason as `undefined`: callers pipe\n // `next_cursor` (which can be `null`) back as `start_cursor`, and a\n // null cursor means \"no cursor\" — encoding it as the string \"null\"\n // would send a bogus value to the server.\n if (value !== undefined && value !== null) {\n if (Array.isArray(value)) {\n for (const val of value) {\n url.searchParams.append(key, decodeURIComponent(val))\n }\n } else {\n url.searchParams.append(key, String(value))\n }\n }\n }\n }\n return url\n }\n\n /**\n * Serializes the request body to JSON string if non-empty.\n */\n private serializeBody(\n body: Record<string, unknown> | undefined\n ): string | undefined {\n if (!body) {\n return undefined\n }\n\n const serializedBody = { ...body }\n if (serializedBody[START_CURSOR_PARAM_NAME] === null) {\n delete serializedBody[START_CURSOR_PARAM_NAME]\n }\n\n if (Object.entries(serializedBody).length === 0) {\n return undefined\n }\n\n return JSON.stringify(serializedBody)\n }\n\n /**\n * Builds the request headers including auth and content-type.\n */\n private buildRequestHeaders(\n customHeaders: Record<string, string> | undefined,\n auth: RequestParameters[\"auth\"],\n bodyAsJsonString: string | undefined\n ): Record<string, string> {\n const authorizationHeader = this.buildAuthHeader(auth)\n\n const headers: Record<string, string> = {\n ...customHeaders,\n ...authorizationHeader,\n \"Notion-Version\": this.#notionVersion,\n }\n\n // Firefox and Safari send a custom user-agent, which the API's CORS\n // preflight does not allow, so every browser request would fail.\n if (!isBrowserEnvironment()) {\n headers[\"user-agent\"] = this.#userAgent\n }\n\n if (bodyAsJsonString !== undefined) {\n headers[\"content-type\"] = \"application/json\"\n }\n\n return headers\n }\n\n /**\n * Builds the authorization header based on auth type.\n */\n private buildAuthHeader(\n auth: RequestParameters[\"auth\"]\n ): Record<string, string> {\n if (auth !== undefined) {\n this.assertTokenAllowedHere()\n }\n if (typeof auth === \"object\") {\n const unencodedCredential = `${auth.client_id}:${auth.client_secret}`\n const encodedCredential =\n Buffer.from(unencodedCredential).toString(\"base64\")\n return { authorization: `Basic ${encodedCredential}` }\n }\n return this.authAsHeaders(auth)\n }\n\n /**\n * Builds FormData from form parameters if provided.\n * Also removes content-type header to let fetch set the boundary.\n */\n private buildFormData(\n formDataParams: Record<string, string | FileParam> | undefined,\n headers: Record<string, string>\n ): FormData | undefined {\n if (!formDataParams) {\n return undefined\n }\n\n delete headers[\"content-type\"]\n\n const formData = new FormData()\n for (const [key, value] of Object.entries(formDataParams)) {\n if (typeof value === \"string\") {\n formData.append(key, value)\n } else if (typeof value === \"object\") {\n formData.append(\n key,\n typeof value.data === \"object\" ? value.data : new Blob([value.data]),\n value.filename\n )\n }\n }\n return formData\n }\n\n /**\n * Executes the request with retry logic.\n */\n private async executeWithRetry<ResponseBody extends object>(\n args: ExecutableRequest,\n execute: (request: ExecutableRequest) => Promise<ResponseBody>\n ): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n let attempt = 0\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n return await execute({\n url,\n method,\n path,\n headers,\n body,\n })\n } catch (error: unknown) {\n if (!isNotionClientError(error)) {\n throw error\n }\n\n this.logRequestError(error, attempt)\n\n if (attempt < this.#maxRetries && this.canRetry(error, method)) {\n const delayMs = this.calculateRetryDelay(error, attempt)\n this.log(LogLevel.INFO, \"retrying request\", {\n method,\n path,\n attempt: attempt + 1,\n delayMs,\n })\n await this.sleep(delayMs)\n attempt++\n continue\n }\n\n throw error\n }\n }\n }\n\n /**\n * Executes a single HTTP request (no retry).\n */\n private async executeSingleRequest<ResponseBody extends object>(\n args: ExecutableRequest\n ): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n const responseText = await response.text()\n if (!response.ok) {\n throw buildRequestError(response, responseText)\n }\n\n const responseJson: ResponseBody = JSON.parse(responseText)\n this.log(LogLevel.INFO, \"request success\", {\n method,\n path,\n ...this.extractRequestId(responseJson),\n })\n return responseJson\n }\n\n /**\n * Opens an SSE response without consuming its body. Retry orchestration is\n * shared with JSON requests so only the initial, retryable HTTP failures are\n * retried; once a stream has opened, its events are never replayed.\n */\n private async executeSingleStreamRequest(\n args: ExecutableRequest\n ): Promise<SupportedResponse> {\n const { url, method, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers: args.headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n if (!response.ok) {\n throw buildRequestError(response, await response.text())\n }\n\n return response\n }\n\n /**\n * Logs a request error with appropriate detail level.\n */\n private logRequestError(error: NotionClientError, attempt: number): void {\n this.log(LogLevel.WARN, \"request fail\", {\n code: error.code,\n message: error.message,\n attempt,\n ...this.extractRequestId(error),\n })\n\n if (isHTTPResponseError(error)) {\n this.log(LogLevel.DEBUG, \"failed response body\", {\n body: error.body,\n })\n }\n }\n\n /**\n * Extracts request_id from an object if present.\n */\n private extractRequestId(obj: unknown): { requestId?: string } {\n if (\n obj &&\n typeof obj === \"object\" &&\n \"request_id\" in obj &&\n typeof obj.request_id === \"string\"\n ) {\n return { requestId: obj.request_id }\n }\n return {}\n }\n\n /**\n * Determines if an error can be retried based on its error code and method.\n * Rate limits (429) and service overloads (529) are always retryable since\n * the server explicitly asks us to retry. Server errors (500, 503) are only\n * retried for idempotent methods (GET, DELETE) to avoid duplicate side\n * effects.\n */\n private canRetry(error: unknown, method: Method): boolean {\n if (!APIResponseError.isAPIResponseError(error)) {\n return false\n }\n\n // Server says \"try again later\"; retry these for every HTTP method.\n if (\n error.code === APIErrorCode.RateLimited ||\n error.code === APIErrorCode.ServiceOverload\n ) {\n return true\n }\n\n // Server errors only retry for idempotent methods\n const isIdempotent = method === \"get\" || method === \"delete\"\n if (isIdempotent) {\n return (\n error.code === APIErrorCode.InternalServerError ||\n error.code === APIErrorCode.ServiceUnavailable\n )\n }\n\n return false\n }\n\n /**\n * Calculates the delay before the next retry attempt.\n * Uses retry-after header if present, otherwise exponential back-off with\n * jitter.\n */\n private calculateRetryDelay(error: unknown, attempt: number): number {\n // Try to get retry-after from the error headers\n if (APIResponseError.isAPIResponseError(error)) {\n const retryAfterMs = this.parseRetryAfterHeader(error.headers)\n if (retryAfterMs !== undefined) {\n return Math.min(retryAfterMs, this.#maxRetryDelayMs)\n }\n }\n\n // Exponential back-off with full jitter\n const baseDelay = this.#initialRetryDelayMs * Math.pow(2, attempt)\n const jitter = Math.random()\n return Math.min(baseDelay * jitter + baseDelay / 2, this.#maxRetryDelayMs)\n }\n\n /**\n * Parses the retry-after header value.\n * Supports both delta-seconds (e.g., \"120\") and HTTP-date formats.\n * Returns the delay in milliseconds, or undefined if not present or invalid.\n */\n private parseRetryAfterHeader(headers: unknown): number | undefined {\n const retryAfterValue = getResponseHeader(headers, \"retry-after\")\n if (!retryAfterValue) {\n return undefined\n }\n\n // Try parsing as delta-seconds (integer)\n const seconds = parseInt(retryAfterValue, 10)\n if (!isNaN(seconds) && seconds >= 0) {\n return seconds * 1000\n }\n\n // Try parsing as HTTP-date\n const date = Date.parse(retryAfterValue)\n if (!isNaN(date)) {\n const delayMs = date - Date.now()\n return delayMs > 0 ? delayMs : 0\n }\n\n return undefined\n }\n\n private sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms))\n }\n\n /*\n * Notion API endpoints\n */\n\n public readonly plugins = {\n list: this.#endpointMethods.plugins.list,\n retrieve: (args: WithAuth<GetPluginDirectoryParameters>) =>\n this.#endpointMethods.plugins.retrieve({\n ...args,\n // Plugin IDs can be tag IDs containing URL delimiters, not just UUIDs.\n id: encodeURIComponent(args.id),\n }),\n }\n\n public readonly skills = this.#endpointMethods.skills\n\n public readonly agents = this.#endpointMethods.agents\n\n public readonly sessions = {\n /**\n * Retrieve a session\n */\n retrieve: this.#endpointMethods.sessions.retrieve,\n\n /**\n * Update a session\n */\n update: this.#endpointMethods.sessions.update,\n\n /**\n * Open a session stream\n */\n stream: (\n args: WithAuth<UpdateSessionStreamParameters>\n ): AsyncIterable<UpdateSessionStreamResponse> => {\n this.warnUnknownParams(args, updateSessionStream)\n return this.streamRequest(\n {\n path: updateSessionStream.path(),\n method: updateSessionStream.method,\n query: pick(args, updateSessionStream.queryParams),\n body: pick(args, updateSessionStream.bodyParams),\n headers: updateSessionStream.headers,\n auth: args?.auth,\n },\n parseSessionStreamEvent\n )\n },\n\n /**\n * Cancel a session\n */\n cancel: this.#endpointMethods.sessions.cancel,\n\n /**\n * Query sessions\n */\n query: this.#endpointMethods.sessions.query,\n\n /**\n * Query session events\n */\n queryEvents: this.#endpointMethods.sessions.queryEvents,\n }\n\n public readonly asyncTasks = this.#endpointMethods.asyncTasks\n\n public readonly blocks = {\n /**\n * Retrieve block\n */\n retrieve: this.#endpointMethods.blocks.retrieve,\n\n /**\n * Update block\n */\n update: this.#endpointMethods.blocks.update,\n\n /**\n * Delete block\n */\n delete: this.#endpointMethods.blocks.delete,\n children: this.#endpointMethods.blocks.children,\n\n meetingNotes: {\n /**\n * Create a meeting note\n */\n create: this.#endpointMethods.blocks.meetingNotes.create,\n\n /**\n * Query meeting notes\n */\n query: (\n args: WithAuth<QueryMeetingNotesParameters>\n ): Promise<QueryMeetingNotesResponse> => {\n return this.request<QueryMeetingNotesResponse>({\n path: queryMeetingNotes.path(),\n method: queryMeetingNotes.method,\n query: pick(args, queryMeetingNotes.queryParams),\n body: pick(args, queryMeetingNotes.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly databases = this.#endpointMethods.databases\n\n public readonly dataSources = this.#endpointMethods.dataSources\n\n public readonly pages = {\n /**\n * Create a page\n */\n create: this.#endpointMethods.pages.create,\n\n /**\n * Retrieve a page\n */\n retrieve: this.#endpointMethods.pages.retrieve,\n\n /**\n * Update page properties\n */\n update: this.#endpointMethods.pages.update,\n\n /**\n * Move a page\n */\n move: this.#endpointMethods.pages.move,\n\n /**\n * Retrieve a page as markdown\n */\n retrieveMarkdown: (\n args: WithAuth<GetPageMarkdownParameters>\n ): Promise<GetPageMarkdownResponse> => {\n return this.request<GetPageMarkdownResponse>({\n path: getPageMarkdown.path(args),\n method: getPageMarkdown.method,\n query: pick(args, getPageMarkdown.queryParams),\n body: pick(args, getPageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a page's content as markdown\n */\n updateMarkdown: (\n args: WithAuth<UpdatePageMarkdownParameters>\n ): Promise<UpdatePageMarkdownResponse> => {\n return this.request<UpdatePageMarkdownResponse>({\n path: updatePageMarkdown.path(args),\n method: updatePageMarkdown.method,\n query: pick(args, updatePageMarkdown.queryParams),\n body: pick(args, updatePageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n properties: this.#endpointMethods.pages.properties,\n }\n\n public readonly users = this.#endpointMethods.users\n\n public readonly customEmojis = {\n /**\n * List custom emojis\n */\n list: (\n args?: WithAuth<ListCustomEmojisParameters>\n ): Promise<ListCustomEmojisResponse> => {\n this.warnUnknownParams(args ?? {}, listCustomEmojis)\n return this.request<ListCustomEmojisResponse>({\n path: listCustomEmojis.path(),\n method: listCustomEmojis.method,\n query: pick(args ?? {}, listCustomEmojis.queryParams),\n body: pick(args ?? {}, listCustomEmojis.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly comments = this.#endpointMethods.comments\n\n public readonly fileUploads = {\n /**\n * Create a file upload\n */\n create: this.#endpointMethods.fileUploads.create,\n\n /**\n * Retrieve a file upload\n */\n retrieve: (\n args: WithAuth<GetFileUploadParameters>\n ): Promise<GetFileUploadResponse> => {\n this.warnUnknownParams(args, getFileUpload)\n return this.request<GetFileUploadResponse>({\n path: getFileUpload.path(args),\n method: getFileUpload.method,\n query: pick(args, getFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List file uploads\n */\n list: (\n args: WithAuth<ListFileUploadsParameters>\n ): Promise<ListFileUploadsResponse> => {\n this.warnUnknownParams(args, listFileUploads)\n return this.request<ListFileUploadsResponse>({\n path: listFileUploads.path(),\n method: listFileUploads.method,\n query: pick(args, listFileUploads.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Send a file upload\n *\n * Requires a `file_upload_id`, obtained from the `id` of the Create File\n * Upload API response.\n *\n * The `file` parameter contains the raw file contents or Blob/File object\n * under `file.data`, and an optional `file.filename` string.\n *\n * Supply a stringified `part_number` parameter when using file uploads\n * in multi-part mode.\n *\n * This endpoint sends HTTP multipart/form-data instead of JSON parameters.\n */\n send: (\n args: WithAuth<SendFileUploadParameters>\n ): Promise<SendFileUploadResponse> => {\n this.warnUnknownParams(args, sendFileUpload)\n return this.request<SendFileUploadResponse>({\n path: sendFileUpload.path(args),\n method: sendFileUpload.method,\n query: pick(args, sendFileUpload.queryParams),\n formDataParams: pick(args, sendFileUpload.formDataParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Complete a file upload\n */\n complete: (\n args: WithAuth<CompleteFileUploadParameters>\n ): Promise<CompleteFileUploadResponse> => {\n this.warnUnknownParams(args, completeFileUpload)\n return this.request<CompleteFileUploadResponse>({\n path: completeFileUpload.path(args),\n method: completeFileUpload.method,\n query: pick(args, completeFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly views = {\n /**\n * Create a view\n */\n create: (\n args: WithAuth<CreateViewParameters>\n ): Promise<CreateViewResponse> => {\n return this.request<CreateViewResponse>({\n path: createView.path(),\n method: createView.method,\n query: pick(args, createView.queryParams),\n body: pick(args, [\n \"data_source_id\",\n \"name\",\n \"type\",\n \"database_id\",\n \"view_id\",\n \"filter\",\n \"sorts\",\n \"quick_filters\",\n \"create_database\",\n \"configuration\",\n \"position\",\n \"placement\",\n ] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a view\n */\n retrieve: this.#endpointMethods.views.retrieve,\n\n /**\n * Update a view\n */\n update: (\n args: WithAuth<UpdateViewParameters>\n ): Promise<UpdateViewResponse> => {\n return this.request<UpdateViewResponse>({\n path: updateView.path(args),\n method: updateView.method,\n query: pick(args, updateView.queryParams),\n body: pick(args, [\n \"name\",\n \"filter\",\n \"sorts\",\n \"quick_filters\",\n \"configuration\",\n ] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Delete a view\n */\n delete: this.#endpointMethods.views.delete,\n\n /**\n * List views for a database\n */\n list: this.#endpointMethods.views.list,\n\n queries: {\n /**\n * Create a view query\n */\n create: (\n args: WithAuth<CreateViewQueryParameters>\n ): Promise<CreateViewQueryResponse> => {\n return this.request<CreateViewQueryResponse>({\n path: createViewQuery.path(args),\n method: createViewQuery.method,\n query: pick(args, createViewQuery.queryParams),\n body: pick(args, [\"page_size\"] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Get view query results\n */\n results: this.#endpointMethods.views.queries.results,\n\n /**\n * Delete a view query\n */\n delete: this.#endpointMethods.views.queries.delete,\n },\n }\n\n /**\n * Search\n */\n public search = this.#endpointMethods.search\n\n public readonly oauth = {\n /**\n * Get token\n */\n token: (\n args: OauthTokenParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthTokenResponse> => {\n return this.request<OauthTokenResponse>({\n path: oauthToken.path(),\n method: oauthToken.method,\n query: pick(args, oauthToken.queryParams),\n body: pick(args, oauthToken.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Introspect token\n */\n introspect: (\n args: OauthIntrospectParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthIntrospectResponse> => {\n return this.request<OauthIntrospectResponse>({\n path: oauthIntrospect.path(),\n method: oauthIntrospect.method,\n query: pick(args, oauthIntrospect.queryParams),\n body: pick(args, oauthIntrospect.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Revoke token\n */\n revoke: (\n args: OauthRevokeParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthRevokeResponse> => {\n return this.request<OauthRevokeResponse>({\n path: oauthRevoke.path(),\n method: oauthRevoke.method,\n query: pick(args, oauthRevoke.queryParams),\n body: pick(args, oauthRevoke.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n }\n\n /**\n * Logs a warning when the caller passes parameters that are not recognized\n * by the endpoint definition. This helps catch typos and renamed parameters\n * (e.g. `archived` vs `in_trash` for `databases.update`) that would\n * otherwise be silently dropped by `pick()`.\n */\n private warnUnknownParams(\n args: Record<string, unknown>,\n endpoint: EndpointDefinition\n ): void {\n if (!args || typeof args !== \"object\") {\n return\n }\n\n const unknownKeys = getUnknownParams(args, endpoint)\n if (unknownKeys.length > 0) {\n this.log(LogLevel.WARN, \"unknown parameters were ignored\", {\n unknownParams: unknownKeys,\n knownParams: [\n ...endpoint.pathParams,\n ...endpoint.queryParams,\n ...endpoint.bodyParams,\n ...(endpoint.formDataParams ?? []),\n ],\n })\n }\n }\n\n /**\n * Emits a log message to the console.\n *\n * @param level The level for this message\n * @param args Arguments to send to the console\n */\n private log(\n level: LogLevel,\n message: string,\n extraInfo: Record<string, unknown>\n ) {\n if (logLevelSeverity(level) >= logLevelSeverity(this.#logLevel)) {\n this.#logger(level, message, extraInfo)\n }\n }\n\n /**\n * Blocks a token or client secret inside a browser unless the caller opted\n * in. Covers both the constructor `auth` and per-request `auth`, since a\n * page that asks the visitor to type a token usually uses the latter. A\n * client without a token stays usable, for example behind a proxy that\n * adds the token on a server.\n */\n private assertTokenAllowedHere(): void {\n if (this.#dangerouslyAllowBrowser || !isBrowserEnvironment()) {\n return\n }\n throw new BrowserTokenNotAllowedError()\n }\n\n /**\n * Transforms an API key or access token into a headers object suitable for an HTTP request.\n *\n * This method uses the instance's value as the default when the input is undefined. If neither are defined, it returns\n * an empty object\n *\n * @param auth API key or access token\n * @returns headers key-value object\n */\n private authAsHeaders(auth?: string): Record<string, string> {\n const headers: Record<string, string> = {}\n const authHeaderValue = auth ?? this.#auth\n if (authHeaderValue !== undefined) {\n headers[\"authorization\"] = `Bearer ${authHeaderValue}`\n }\n return headers\n }\n}\n\ntype SseFrame = {\n eventName: string\n data: string\n}\n\nconst sessionStreamEventTypes = new Set<string>([\n \"session.snapshot\",\n \"event.provisional\",\n \"event.committed\",\n \"stream.timeout\",\n \"stream.end\",\n \"stream.error\",\n])\n\nfunction takeSseFrames(args: { content: string; complete: boolean }): {\n frames: SseFrame[]\n remaining: string\n} {\n const frames: SseFrame[] = []\n let remaining = args.content.replace(/\\r\\n/g, \"\\n\")\n\n let boundary = remaining.indexOf(\"\\n\\n\")\n while (boundary !== -1) {\n const frame = parseSseFrame(remaining.slice(0, boundary))\n if (frame !== undefined) {\n frames.push(frame)\n }\n remaining = remaining.slice(boundary + 2)\n boundary = remaining.indexOf(\"\\n\\n\")\n }\n\n if (args.complete && remaining !== \"\") {\n const frame = parseSseFrame(remaining)\n if (frame !== undefined) {\n frames.push(frame)\n }\n remaining = \"\"\n }\n\n return { frames, remaining }\n}\n\nfunction parseSseFrame(content: string): SseFrame | undefined {\n let eventName: string | undefined\n const dataLines: string[] = []\n\n for (const line of content.split(\"\\n\")) {\n if (line.startsWith(\":\")) {\n continue\n }\n\n const colonIndex = line.indexOf(\":\")\n if (colonIndex === -1) {\n continue\n }\n\n const field = line.slice(0, colonIndex)\n const valueStart =\n line.charAt(colonIndex + 1) === \" \" ? colonIndex + 2 : colonIndex + 1\n const value = line.slice(valueStart)\n if (field === \"event\") {\n eventName = value\n } else if (field === \"data\") {\n dataLines.push(value)\n }\n }\n\n if (dataLines.length === 0) {\n return undefined\n }\n if (eventName === undefined) {\n throw new Error(\"Session stream event is missing its SSE event name.\")\n }\n\n return { eventName, data: dataLines.join(\"\\n\") }\n}\n\nfunction parseSessionStreamEvent(frame: SseFrame): UpdateSessionStreamResponse {\n const event: UpdateSessionStreamResponse = JSON.parse(frame.data)\n if (\n typeof event !== \"object\" ||\n event === null ||\n !sessionStreamEventTypes.has(event.type) ||\n event.type !== frame.eventName\n ) {\n throw new Error(\"Session stream event does not match its SSE event name.\")\n }\n return event\n}\n\n/*\n * Type aliases to support the generic request interface.\n */\ntype Method = \"get\" | \"post\" | \"patch\" | \"delete\"\ntype QueryParams =\n | Record<string, string | number | boolean | string[] | null>\n | URLSearchParams\n\ntype WithAuth<P> = P & { auth?: string }\n"]}
1
+ {"version":3,"file":"Client.js","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Agent } from \"node:http\"\nimport { createEndpointMethods } from \"./api-endpoint-methods\"\nimport type { GetPluginDirectoryParameters } from \"./api-endpoints\"\nimport {\n type Logger,\n LogLevel,\n logLevelSeverity,\n makeConsoleLogger,\n} from \"./logging\"\nimport {\n APIErrorCode,\n APIResponseError,\n BrowserTokenNotAllowedError,\n buildRequestError,\n getResponseHeader,\n isHTTPResponseError,\n isNotionClientError,\n type NotionClientError,\n RequestTimeoutError,\n validateRequestPath,\n} from \"./errors\"\nimport { pick, getUnknownParams, type EndpointDefinition } from \"./utils\"\nimport {\n DEFAULT_BASE_URL,\n DEFAULT_TIMEOUT_MS,\n DEFAULT_MAX_RETRIES,\n DEFAULT_INITIAL_RETRY_DELAY_MS,\n DEFAULT_MAX_RETRY_DELAY_MS,\n} from \"./constants\"\nimport {\n type GetPageMarkdownParameters,\n type GetPageMarkdownResponse,\n getPageMarkdown,\n type UpdatePageMarkdownParameters,\n type UpdatePageMarkdownResponse,\n updatePageMarkdown,\n type OauthTokenResponse,\n type OauthTokenParameters,\n oauthToken,\n type OauthIntrospectResponse,\n type OauthIntrospectParameters,\n oauthIntrospect,\n type OauthRevokeResponse,\n type OauthRevokeParameters,\n oauthRevoke,\n type GetFileUploadResponse,\n type GetFileUploadParameters,\n getFileUpload,\n type SendFileUploadParameters,\n type SendFileUploadResponse,\n sendFileUpload,\n type CompleteFileUploadParameters,\n type CompleteFileUploadResponse,\n completeFileUpload,\n type ListFileUploadsParameters,\n type ListFileUploadsResponse,\n listFileUploads,\n type CreateViewParameters,\n type CreateViewResponse,\n createView,\n type UpdateViewParameters,\n type UpdateViewResponse,\n updateView,\n type CreateViewQueryParameters,\n type CreateViewQueryResponse,\n createViewQuery,\n type ListCustomEmojisParameters,\n type ListCustomEmojisResponse,\n listCustomEmojis,\n type UpdateSessionStreamParameters,\n type UpdateSessionStreamResponse,\n updateSessionStream,\n} from \"./api-endpoints\"\nimport {\n type QueryMeetingNotesResponse,\n queryMeetingNotes,\n} from \"./api-endpoints/meeting-notes\"\nimport type { QueryMeetingNotesParameters } from \"./meeting-notes\"\nimport {\n version as PACKAGE_VERSION,\n name as PACKAGE_NAME,\n} from \"../package.json\"\nimport type { SupportedFetch, SupportedResponse } from \"./fetch-types\"\n\nexport type RetryOptions = {\n /**\n * Maximum number of retry attempts. Set to 0 to disable retries.\n * @default 2\n */\n maxRetries?: number\n /**\n * Initial delay between retries in milliseconds.\n * Used as base for exponential back-off when retry-after header is absent.\n * @default 1000\n */\n initialRetryDelayMs?: number\n /**\n * Maximum delay between retries in milliseconds.\n * @default 60000\n */\n maxRetryDelayMs?: number\n}\n\nexport type ClientOptions = {\n auth?: string\n timeoutMs?: number\n baseUrl?: string\n logLevel?: LogLevel\n logger?: Logger\n notionVersion?: string\n fetch?: SupportedFetch\n /** Silently ignored in the browser */\n agent?: Agent\n /**\n * Configuration for automatic retries on rate limit (429) and server errors.\n * Set to false to disable retries entirely.\n */\n retry?: RetryOptions | false\n /**\n * Allows the client to use a Notion token inside a browser page or worker.\n * Without it, using a token there throws `BrowserTokenNotAllowedError`.\n * Anyone who can load the page can read the token and act as your\n * connection, so only set this for pages that nobody else can open.\n */\n dangerouslyAllowBrowser?: boolean\n}\n\ntype FileParam = {\n filename?: string\n data: string | Blob\n}\n\nconst START_CURSOR_PARAM_NAME = \"start_cursor\"\n\n/**\n * True inside a browser page, web worker, or service worker: the places where\n * every visitor downloads the script, so a token in it is public. Test runners\n * that emulate a browser, such as jsdom, also count as a browser here.\n *\n * A browser worker's global object is an instance of `WorkerGlobalScope` and\n * has an `importScripts` function. Some server runtimes match one but not\n * both: the global object in Cloudflare Workers is not an instance of\n * `WorkerGlobalScope`, and Deno worker threads lack `importScripts`. Both\n * checks look for browser traits, so a global that a polyfill or other\n * library adds can only make this check stricter, never turn it off.\n */\nfunction isBrowserEnvironment(): boolean {\n const browserGlobals = globalThis as {\n window?: { document?: unknown }\n WorkerGlobalScope?: unknown\n importScripts?: unknown\n }\n if (browserGlobals.window?.document !== undefined) {\n return true\n }\n const workerGlobalScope = browserGlobals.WorkerGlobalScope\n return (\n typeof workerGlobalScope === \"function\" &&\n globalThis instanceof workerGlobalScope &&\n typeof browserGlobals.importScripts === \"function\"\n )\n}\n\nexport type RequestParameters = {\n path: string\n method: Method\n query?: QueryParams\n body?: Record<string, unknown>\n formDataParams?: Record<string, string | FileParam>\n headers?: Record<string, string>\n /**\n * To authenticate using public API token, `auth` should be passed as a\n * string. If you are trying to complete OAuth, then `auth` should be an object\n * containing your integration's client ID and secret.\n */\n auth?:\n | string\n | {\n client_id: string\n client_secret: string\n }\n}\n\ntype ExecutableRequest = {\n url: URL\n method: Method\n path: string\n headers: Record<string, string>\n body: string | FormData | undefined\n}\n\nexport default class Client {\n #endpointMethods = createEndpointMethods({\n request: args => this.request(args),\n warnUnknownParams: (args, endpoint) =>\n this.warnUnknownParams(args, endpoint),\n })\n #auth?: string\n #logLevel: LogLevel\n #logger: Logger\n #prefixUrl: string\n #timeoutMs: number\n #notionVersion: string\n #fetch: SupportedFetch\n #agent: Agent | undefined\n #userAgent: string\n #maxRetries: number\n #initialRetryDelayMs: number\n #maxRetryDelayMs: number\n #dangerouslyAllowBrowser: boolean\n\n static readonly defaultNotionVersion = \"2025-09-03\"\n\n public constructor(options?: ClientOptions) {\n this.#auth = options?.auth\n this.#logLevel = options?.logLevel ?? LogLevel.WARN\n this.#logger = options?.logger ?? makeConsoleLogger(PACKAGE_NAME)\n this.#prefixUrl = `${options?.baseUrl ?? DEFAULT_BASE_URL}/v1/`\n this.#timeoutMs = options?.timeoutMs ?? DEFAULT_TIMEOUT_MS\n this.#notionVersion = options?.notionVersion ?? Client.defaultNotionVersion\n this.#fetch = options?.fetch ?? fetch.bind(globalThis)\n this.#agent = options?.agent\n this.#userAgent = `notionhq-client/${PACKAGE_VERSION}`\n\n if (options?.retry === false) {\n this.#maxRetries = 0\n this.#initialRetryDelayMs = 0\n this.#maxRetryDelayMs = 0\n } else {\n this.#maxRetries = options?.retry?.maxRetries ?? DEFAULT_MAX_RETRIES\n this.#initialRetryDelayMs =\n options?.retry?.initialRetryDelayMs ?? DEFAULT_INITIAL_RETRY_DELAY_MS\n this.#maxRetryDelayMs =\n options?.retry?.maxRetryDelayMs ?? DEFAULT_MAX_RETRY_DELAY_MS\n }\n\n this.#dangerouslyAllowBrowser = options?.dangerouslyAllowBrowser ?? false\n if (options?.auth !== undefined) {\n this.assertTokenAllowedHere()\n }\n }\n\n /**\n * Sends a request.\n */\n public async request<ResponseBody extends object>(\n args: RequestParameters\n ): Promise<ResponseBody> {\n const { path, method, query, body, formDataParams, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const formData = this.buildFormData(formDataParams, headers)\n\n return this.executeWithRetry<ResponseBody>(\n {\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString ?? formData,\n },\n request => this.executeSingleRequest<ResponseBody>(request)\n )\n }\n\n /**\n * Opens an SSE response and yields each parsed event as it arrives.\n */\n private async *streamRequest<ResponseBody>(\n args: RequestParameters,\n parseEvent: (frame: SseFrame) => ResponseBody\n ): AsyncIterable<ResponseBody> {\n const { path, method, query, body, auth } = args\n\n validateRequestPath(path)\n\n this.log(LogLevel.INFO, \"stream request start\", { method, path })\n\n const url = this.buildRequestUrl(path, query)\n const bodyAsJsonString = this.serializeBody(body)\n const headers = this.buildRequestHeaders(\n args.headers,\n auth,\n bodyAsJsonString\n )\n const response = await this.executeWithRetry<SupportedResponse>(\n {\n url,\n method,\n path,\n headers,\n body: bodyAsJsonString,\n },\n request => this.executeSingleStreamRequest(request)\n )\n\n this.log(LogLevel.INFO, \"stream request opened\", { method, path })\n\n if (response.body === undefined || response.body === null) {\n for (const frame of takeSseFrames({\n content: await response.text(),\n complete: true,\n }).frames) {\n yield parseEvent(frame)\n }\n return\n }\n\n const reader = response.body.getReader()\n const decoder = new TextDecoder()\n let remaining = \"\"\n let complete = false\n try {\n while (!complete) {\n const { done, value } = await reader.read()\n if (done) {\n complete = true\n continue\n }\n if (value === undefined) {\n throw new Error(\"SSE response body ended without a data chunk.\")\n }\n\n const frames = takeSseFrames({\n content: `${remaining}${decoder.decode(value, { stream: true })}`,\n complete: false,\n })\n remaining = frames.remaining\n for (const frame of frames.frames) {\n yield parseEvent(frame)\n }\n }\n\n for (const frame of takeSseFrames({\n content: `${remaining}${decoder.decode()}`,\n complete: true,\n }).frames) {\n yield parseEvent(frame)\n }\n } finally {\n try {\n if (!complete) {\n await reader.cancel?.()\n }\n } finally {\n reader.releaseLock()\n }\n }\n }\n\n /**\n * Builds the full URL with query parameters.\n */\n private buildRequestUrl(path: string, query: QueryParams | undefined): URL {\n const url = new URL(`${this.#prefixUrl}${path}`)\n if (query) {\n for (const [key, value] of Object.entries(query)) {\n // Skip `null` for the same reason as `undefined`: callers pipe\n // `next_cursor` (which can be `null`) back as `start_cursor`, and a\n // null cursor means \"no cursor\" — encoding it as the string \"null\"\n // would send a bogus value to the server.\n if (value !== undefined && value !== null) {\n if (Array.isArray(value)) {\n for (const val of value) {\n url.searchParams.append(key, decodeURIComponent(val))\n }\n } else {\n url.searchParams.append(key, String(value))\n }\n }\n }\n }\n return url\n }\n\n /**\n * Serializes the request body to JSON string if non-empty.\n */\n private serializeBody(\n body: Record<string, unknown> | undefined\n ): string | undefined {\n if (!body) {\n return undefined\n }\n\n const serializedBody = { ...body }\n if (serializedBody[START_CURSOR_PARAM_NAME] === null) {\n delete serializedBody[START_CURSOR_PARAM_NAME]\n }\n\n if (Object.entries(serializedBody).length === 0) {\n return undefined\n }\n\n return JSON.stringify(serializedBody)\n }\n\n /**\n * Builds the request headers including auth and content-type.\n */\n private buildRequestHeaders(\n customHeaders: Record<string, string> | undefined,\n auth: RequestParameters[\"auth\"],\n bodyAsJsonString: string | undefined\n ): Record<string, string> {\n const authorizationHeader = this.buildAuthHeader(auth)\n\n const headers: Record<string, string> = {\n ...customHeaders,\n ...authorizationHeader,\n \"Notion-Version\": this.#notionVersion,\n }\n\n // Firefox and Safari send a custom user-agent, so the CORS preflight asks\n // for it, and a proxy set as `baseUrl` may not allow it.\n if (!isBrowserEnvironment()) {\n headers[\"user-agent\"] = this.#userAgent\n }\n\n if (bodyAsJsonString !== undefined) {\n headers[\"content-type\"] = \"application/json\"\n }\n\n return headers\n }\n\n /**\n * Builds the authorization header based on auth type.\n */\n private buildAuthHeader(\n auth: RequestParameters[\"auth\"]\n ): Record<string, string> {\n if (auth !== undefined) {\n this.assertTokenAllowedHere()\n }\n if (typeof auth === \"object\") {\n const unencodedCredential = `${auth.client_id}:${auth.client_secret}`\n const encodedCredential =\n Buffer.from(unencodedCredential).toString(\"base64\")\n return { authorization: `Basic ${encodedCredential}` }\n }\n return this.authAsHeaders(auth)\n }\n\n /**\n * Builds FormData from form parameters if provided.\n * Also removes content-type header to let fetch set the boundary.\n */\n private buildFormData(\n formDataParams: Record<string, string | FileParam> | undefined,\n headers: Record<string, string>\n ): FormData | undefined {\n if (!formDataParams) {\n return undefined\n }\n\n delete headers[\"content-type\"]\n\n const formData = new FormData()\n for (const [key, value] of Object.entries(formDataParams)) {\n if (typeof value === \"string\") {\n formData.append(key, value)\n } else if (typeof value === \"object\") {\n formData.append(\n key,\n typeof value.data === \"object\" ? value.data : new Blob([value.data]),\n value.filename\n )\n }\n }\n return formData\n }\n\n /**\n * Executes the request with retry logic.\n */\n private async executeWithRetry<ResponseBody extends object>(\n args: ExecutableRequest,\n execute: (request: ExecutableRequest) => Promise<ResponseBody>\n ): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n let attempt = 0\n // eslint-disable-next-line no-constant-condition\n while (true) {\n try {\n return await execute({\n url,\n method,\n path,\n headers,\n body,\n })\n } catch (error: unknown) {\n if (!isNotionClientError(error)) {\n throw error\n }\n\n this.logRequestError(error, attempt)\n\n if (attempt < this.#maxRetries && this.canRetry(error, method)) {\n const delayMs = this.calculateRetryDelay(error, attempt)\n this.log(LogLevel.INFO, \"retrying request\", {\n method,\n path,\n attempt: attempt + 1,\n delayMs,\n })\n await this.sleep(delayMs)\n attempt++\n continue\n }\n\n throw error\n }\n }\n }\n\n /**\n * Executes a single HTTP request (no retry).\n */\n private async executeSingleRequest<ResponseBody extends object>(\n args: ExecutableRequest\n ): Promise<ResponseBody> {\n const { url, method, path, headers, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n const responseText = await response.text()\n if (!response.ok) {\n throw buildRequestError(response, responseText)\n }\n\n const responseJson: ResponseBody = JSON.parse(responseText)\n this.log(LogLevel.INFO, \"request success\", {\n method,\n path,\n ...this.extractRequestId(responseJson),\n })\n return responseJson\n }\n\n /**\n * Opens an SSE response without consuming its body. Retry orchestration is\n * shared with JSON requests so only the initial, retryable HTTP failures are\n * retried; once a stream has opened, its events are never replayed.\n */\n private async executeSingleStreamRequest(\n args: ExecutableRequest\n ): Promise<SupportedResponse> {\n const { url, method, body } = args\n const response = await RequestTimeoutError.rejectAfterTimeout(\n this.#fetch(url.toString(), {\n method: method.toUpperCase(),\n headers: args.headers,\n body,\n agent: this.#agent,\n }),\n this.#timeoutMs\n )\n\n if (!response.ok) {\n throw buildRequestError(response, await response.text())\n }\n\n return response\n }\n\n /**\n * Logs a request error with appropriate detail level.\n */\n private logRequestError(error: NotionClientError, attempt: number): void {\n this.log(LogLevel.WARN, \"request fail\", {\n code: error.code,\n message: error.message,\n attempt,\n ...this.extractRequestId(error),\n })\n\n if (isHTTPResponseError(error)) {\n this.log(LogLevel.DEBUG, \"failed response body\", {\n body: error.body,\n })\n }\n }\n\n /**\n * Extracts request_id from an object if present.\n */\n private extractRequestId(obj: unknown): { requestId?: string } {\n if (\n obj &&\n typeof obj === \"object\" &&\n \"request_id\" in obj &&\n typeof obj.request_id === \"string\"\n ) {\n return { requestId: obj.request_id }\n }\n return {}\n }\n\n /**\n * Determines if an error can be retried based on its error code and method.\n * Rate limits (429) and service overloads (529) are always retryable since\n * the server explicitly asks us to retry. Server errors (500, 503) are only\n * retried for idempotent methods (GET, DELETE) to avoid duplicate side\n * effects.\n */\n private canRetry(error: unknown, method: Method): boolean {\n if (!APIResponseError.isAPIResponseError(error)) {\n return false\n }\n\n // Server says \"try again later\"; retry these for every HTTP method.\n if (\n error.code === APIErrorCode.RateLimited ||\n error.code === APIErrorCode.ServiceOverload\n ) {\n return true\n }\n\n // Server errors only retry for idempotent methods\n const isIdempotent = method === \"get\" || method === \"delete\"\n if (isIdempotent) {\n return (\n error.code === APIErrorCode.InternalServerError ||\n error.code === APIErrorCode.ServiceUnavailable\n )\n }\n\n return false\n }\n\n /**\n * Calculates the delay before the next retry attempt.\n * Uses retry-after header if present, otherwise exponential back-off with\n * jitter.\n */\n private calculateRetryDelay(error: unknown, attempt: number): number {\n // Try to get retry-after from the error headers\n if (APIResponseError.isAPIResponseError(error)) {\n const retryAfterMs = this.parseRetryAfterHeader(error.headers)\n if (retryAfterMs !== undefined) {\n return Math.min(retryAfterMs, this.#maxRetryDelayMs)\n }\n }\n\n // Exponential back-off with full jitter\n const baseDelay = this.#initialRetryDelayMs * Math.pow(2, attempt)\n const jitter = Math.random()\n return Math.min(baseDelay * jitter + baseDelay / 2, this.#maxRetryDelayMs)\n }\n\n /**\n * Parses the retry-after header value.\n * Supports both delta-seconds (e.g., \"120\") and HTTP-date formats.\n * Returns the delay in milliseconds, or undefined if not present or invalid.\n */\n private parseRetryAfterHeader(headers: unknown): number | undefined {\n const retryAfterValue = getResponseHeader(headers, \"retry-after\")\n if (!retryAfterValue) {\n return undefined\n }\n\n // Try parsing as delta-seconds (integer)\n const seconds = parseInt(retryAfterValue, 10)\n if (!isNaN(seconds) && seconds >= 0) {\n return seconds * 1000\n }\n\n // Try parsing as HTTP-date\n const date = Date.parse(retryAfterValue)\n if (!isNaN(date)) {\n const delayMs = date - Date.now()\n return delayMs > 0 ? delayMs : 0\n }\n\n return undefined\n }\n\n private sleep(ms: number): Promise<void> {\n return new Promise(resolve => setTimeout(resolve, ms))\n }\n\n /*\n * Notion API endpoints\n */\n\n public readonly plugins = {\n list: this.#endpointMethods.plugins.list,\n retrieve: (args: WithAuth<GetPluginDirectoryParameters>) =>\n this.#endpointMethods.plugins.retrieve({\n ...args,\n // Plugin IDs can be tag IDs containing URL delimiters, not just UUIDs.\n id: encodeURIComponent(args.id),\n }),\n }\n\n public readonly skills = this.#endpointMethods.skills\n\n public readonly agents = this.#endpointMethods.agents\n\n public readonly sessions = {\n /**\n * Retrieve a session\n */\n retrieve: this.#endpointMethods.sessions.retrieve,\n\n /**\n * Update a session\n */\n update: this.#endpointMethods.sessions.update,\n\n /**\n * Open a session stream\n */\n stream: (\n args: WithAuth<UpdateSessionStreamParameters>\n ): AsyncIterable<UpdateSessionStreamResponse> => {\n this.warnUnknownParams(args, updateSessionStream)\n return this.streamRequest(\n {\n path: updateSessionStream.path(),\n method: updateSessionStream.method,\n query: pick(args, updateSessionStream.queryParams),\n body: pick(args, updateSessionStream.bodyParams),\n headers: updateSessionStream.headers,\n auth: args?.auth,\n },\n parseSessionStreamEvent\n )\n },\n\n /**\n * Cancel a session\n */\n cancel: this.#endpointMethods.sessions.cancel,\n\n /**\n * Query sessions\n */\n query: this.#endpointMethods.sessions.query,\n\n /**\n * Query session events\n */\n queryEvents: this.#endpointMethods.sessions.queryEvents,\n }\n\n public readonly asyncTasks = this.#endpointMethods.asyncTasks\n\n public readonly blocks = {\n /**\n * Retrieve block\n */\n retrieve: this.#endpointMethods.blocks.retrieve,\n\n /**\n * Update block\n */\n update: this.#endpointMethods.blocks.update,\n\n /**\n * Delete block\n */\n delete: this.#endpointMethods.blocks.delete,\n children: this.#endpointMethods.blocks.children,\n\n meetingNotes: {\n /**\n * Create a meeting note\n */\n create: this.#endpointMethods.blocks.meetingNotes.create,\n\n /**\n * Query meeting notes\n */\n query: (\n args: WithAuth<QueryMeetingNotesParameters>\n ): Promise<QueryMeetingNotesResponse> => {\n return this.request<QueryMeetingNotesResponse>({\n path: queryMeetingNotes.path(),\n method: queryMeetingNotes.method,\n query: pick(args, queryMeetingNotes.queryParams),\n body: pick(args, queryMeetingNotes.bodyParams),\n auth: args?.auth,\n })\n },\n },\n }\n\n public readonly databases = this.#endpointMethods.databases\n\n public readonly dataSources = this.#endpointMethods.dataSources\n\n public readonly pages = {\n /**\n * Create a page\n */\n create: this.#endpointMethods.pages.create,\n\n /**\n * Retrieve a page\n */\n retrieve: this.#endpointMethods.pages.retrieve,\n\n /**\n * Update page properties\n */\n update: this.#endpointMethods.pages.update,\n\n /**\n * Move a page\n */\n move: this.#endpointMethods.pages.move,\n\n /**\n * Retrieve a page as markdown\n */\n retrieveMarkdown: (\n args: WithAuth<GetPageMarkdownParameters>\n ): Promise<GetPageMarkdownResponse> => {\n return this.request<GetPageMarkdownResponse>({\n path: getPageMarkdown.path(args),\n method: getPageMarkdown.method,\n query: pick(args, getPageMarkdown.queryParams),\n body: pick(args, getPageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Update a page's content as markdown\n */\n updateMarkdown: (\n args: WithAuth<UpdatePageMarkdownParameters>\n ): Promise<UpdatePageMarkdownResponse> => {\n return this.request<UpdatePageMarkdownResponse>({\n path: updatePageMarkdown.path(args),\n method: updatePageMarkdown.method,\n query: pick(args, updatePageMarkdown.queryParams),\n body: pick(args, updatePageMarkdown.bodyParams),\n auth: args?.auth,\n })\n },\n properties: this.#endpointMethods.pages.properties,\n }\n\n public readonly users = this.#endpointMethods.users\n\n public readonly customEmojis = {\n /**\n * List custom emojis\n */\n list: (\n args?: WithAuth<ListCustomEmojisParameters>\n ): Promise<ListCustomEmojisResponse> => {\n this.warnUnknownParams(args ?? {}, listCustomEmojis)\n return this.request<ListCustomEmojisResponse>({\n path: listCustomEmojis.path(),\n method: listCustomEmojis.method,\n query: pick(args ?? {}, listCustomEmojis.queryParams),\n body: pick(args ?? {}, listCustomEmojis.bodyParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly comments = this.#endpointMethods.comments\n\n public readonly fileUploads = {\n /**\n * Create a file upload\n */\n create: this.#endpointMethods.fileUploads.create,\n\n /**\n * Retrieve a file upload\n */\n retrieve: (\n args: WithAuth<GetFileUploadParameters>\n ): Promise<GetFileUploadResponse> => {\n this.warnUnknownParams(args, getFileUpload)\n return this.request<GetFileUploadResponse>({\n path: getFileUpload.path(args),\n method: getFileUpload.method,\n query: pick(args, getFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * List file uploads\n */\n list: (\n args: WithAuth<ListFileUploadsParameters>\n ): Promise<ListFileUploadsResponse> => {\n this.warnUnknownParams(args, listFileUploads)\n return this.request<ListFileUploadsResponse>({\n path: listFileUploads.path(),\n method: listFileUploads.method,\n query: pick(args, listFileUploads.queryParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Send a file upload\n *\n * Requires a `file_upload_id`, obtained from the `id` of the Create File\n * Upload API response.\n *\n * The `file` parameter contains the raw file contents or Blob/File object\n * under `file.data`, and an optional `file.filename` string.\n *\n * Supply a stringified `part_number` parameter when using file uploads\n * in multi-part mode.\n *\n * This endpoint sends HTTP multipart/form-data instead of JSON parameters.\n */\n send: (\n args: WithAuth<SendFileUploadParameters>\n ): Promise<SendFileUploadResponse> => {\n this.warnUnknownParams(args, sendFileUpload)\n return this.request<SendFileUploadResponse>({\n path: sendFileUpload.path(args),\n method: sendFileUpload.method,\n query: pick(args, sendFileUpload.queryParams),\n formDataParams: pick(args, sendFileUpload.formDataParams),\n auth: args?.auth,\n })\n },\n\n /**\n * Complete a file upload\n */\n complete: (\n args: WithAuth<CompleteFileUploadParameters>\n ): Promise<CompleteFileUploadResponse> => {\n this.warnUnknownParams(args, completeFileUpload)\n return this.request<CompleteFileUploadResponse>({\n path: completeFileUpload.path(args),\n method: completeFileUpload.method,\n query: pick(args, completeFileUpload.queryParams),\n auth: args?.auth,\n })\n },\n }\n\n public readonly views = {\n /**\n * Create a view\n */\n create: (\n args: WithAuth<CreateViewParameters>\n ): Promise<CreateViewResponse> => {\n return this.request<CreateViewResponse>({\n path: createView.path(),\n method: createView.method,\n query: pick(args, createView.queryParams),\n body: pick(args, [\n \"data_source_id\",\n \"name\",\n \"type\",\n \"database_id\",\n \"view_id\",\n \"filter\",\n \"sorts\",\n \"quick_filters\",\n \"create_database\",\n \"configuration\",\n \"position\",\n \"placement\",\n ] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Retrieve a view\n */\n retrieve: this.#endpointMethods.views.retrieve,\n\n /**\n * Update a view\n */\n update: (\n args: WithAuth<UpdateViewParameters>\n ): Promise<UpdateViewResponse> => {\n return this.request<UpdateViewResponse>({\n path: updateView.path(args),\n method: updateView.method,\n query: pick(args, updateView.queryParams),\n body: pick(args, [\n \"name\",\n \"filter\",\n \"sorts\",\n \"quick_filters\",\n \"configuration\",\n ] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Delete a view\n */\n delete: this.#endpointMethods.views.delete,\n\n /**\n * List views for a database\n */\n list: this.#endpointMethods.views.list,\n\n queries: {\n /**\n * Create a view query\n */\n create: (\n args: WithAuth<CreateViewQueryParameters>\n ): Promise<CreateViewQueryResponse> => {\n return this.request<CreateViewQueryResponse>({\n path: createViewQuery.path(args),\n method: createViewQuery.method,\n query: pick(args, createViewQuery.queryParams),\n body: pick(args, [\"page_size\"] as const),\n auth: args?.auth,\n })\n },\n\n /**\n * Get view query results\n */\n results: this.#endpointMethods.views.queries.results,\n\n /**\n * Delete a view query\n */\n delete: this.#endpointMethods.views.queries.delete,\n },\n }\n\n /**\n * Search\n */\n public search = this.#endpointMethods.search\n\n public readonly oauth = {\n /**\n * Get token\n */\n token: (\n args: OauthTokenParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthTokenResponse> => {\n return this.request<OauthTokenResponse>({\n path: oauthToken.path(),\n method: oauthToken.method,\n query: pick(args, oauthToken.queryParams),\n body: pick(args, oauthToken.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Introspect token\n */\n introspect: (\n args: OauthIntrospectParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthIntrospectResponse> => {\n return this.request<OauthIntrospectResponse>({\n path: oauthIntrospect.path(),\n method: oauthIntrospect.method,\n query: pick(args, oauthIntrospect.queryParams),\n body: pick(args, oauthIntrospect.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n /**\n * Revoke token\n */\n revoke: (\n args: OauthRevokeParameters & {\n client_id: string\n client_secret: string\n }\n ): Promise<OauthRevokeResponse> => {\n return this.request<OauthRevokeResponse>({\n path: oauthRevoke.path(),\n method: oauthRevoke.method,\n query: pick(args, oauthRevoke.queryParams),\n body: pick(args, oauthRevoke.bodyParams),\n auth: {\n client_id: args.client_id,\n client_secret: args.client_secret,\n },\n })\n },\n }\n\n /**\n * Logs a warning when the caller passes parameters that are not recognized\n * by the endpoint definition. This helps catch typos and renamed parameters\n * (e.g. `archived` vs `in_trash` for `databases.update`) that would\n * otherwise be silently dropped by `pick()`.\n */\n private warnUnknownParams(\n args: Record<string, unknown>,\n endpoint: EndpointDefinition\n ): void {\n if (!args || typeof args !== \"object\") {\n return\n }\n\n const unknownKeys = getUnknownParams(args, endpoint)\n if (unknownKeys.length > 0) {\n this.log(LogLevel.WARN, \"unknown parameters were ignored\", {\n unknownParams: unknownKeys,\n knownParams: [\n ...endpoint.pathParams,\n ...endpoint.queryParams,\n ...endpoint.bodyParams,\n ...(endpoint.formDataParams ?? []),\n ],\n })\n }\n }\n\n /**\n * Emits a log message to the console.\n *\n * @param level The level for this message\n * @param args Arguments to send to the console\n */\n private log(\n level: LogLevel,\n message: string,\n extraInfo: Record<string, unknown>\n ) {\n if (logLevelSeverity(level) >= logLevelSeverity(this.#logLevel)) {\n this.#logger(level, message, extraInfo)\n }\n }\n\n /**\n * Blocks a token or client secret inside a browser unless the caller opted\n * in. Covers both the constructor `auth` and per-request `auth`, since a\n * page that asks the visitor to type a token usually uses the latter. A\n * client without a token stays usable, for example behind a proxy that\n * adds the token on a server.\n */\n private assertTokenAllowedHere(): void {\n if (this.#dangerouslyAllowBrowser || !isBrowserEnvironment()) {\n return\n }\n throw new BrowserTokenNotAllowedError()\n }\n\n /**\n * Transforms an API key or access token into a headers object suitable for an HTTP request.\n *\n * This method uses the instance's value as the default when the input is undefined. If neither are defined, it returns\n * an empty object\n *\n * @param auth API key or access token\n * @returns headers key-value object\n */\n private authAsHeaders(auth?: string): Record<string, string> {\n const headers: Record<string, string> = {}\n const authHeaderValue = auth ?? this.#auth\n if (authHeaderValue !== undefined) {\n headers[\"authorization\"] = `Bearer ${authHeaderValue}`\n }\n return headers\n }\n}\n\ntype SseFrame = {\n eventName: string\n data: string\n}\n\nconst sessionStreamEventTypes = new Set<string>([\n \"session.snapshot\",\n \"event.provisional\",\n \"event.committed\",\n \"stream.timeout\",\n \"stream.end\",\n \"stream.error\",\n])\n\nfunction takeSseFrames(args: { content: string; complete: boolean }): {\n frames: SseFrame[]\n remaining: string\n} {\n const frames: SseFrame[] = []\n let remaining = args.content.replace(/\\r\\n/g, \"\\n\")\n\n let boundary = remaining.indexOf(\"\\n\\n\")\n while (boundary !== -1) {\n const frame = parseSseFrame(remaining.slice(0, boundary))\n if (frame !== undefined) {\n frames.push(frame)\n }\n remaining = remaining.slice(boundary + 2)\n boundary = remaining.indexOf(\"\\n\\n\")\n }\n\n if (args.complete && remaining !== \"\") {\n const frame = parseSseFrame(remaining)\n if (frame !== undefined) {\n frames.push(frame)\n }\n remaining = \"\"\n }\n\n return { frames, remaining }\n}\n\nfunction parseSseFrame(content: string): SseFrame | undefined {\n let eventName: string | undefined\n const dataLines: string[] = []\n\n for (const line of content.split(\"\\n\")) {\n if (line.startsWith(\":\")) {\n continue\n }\n\n const colonIndex = line.indexOf(\":\")\n if (colonIndex === -1) {\n continue\n }\n\n const field = line.slice(0, colonIndex)\n const valueStart =\n line.charAt(colonIndex + 1) === \" \" ? colonIndex + 2 : colonIndex + 1\n const value = line.slice(valueStart)\n if (field === \"event\") {\n eventName = value\n } else if (field === \"data\") {\n dataLines.push(value)\n }\n }\n\n if (dataLines.length === 0) {\n return undefined\n }\n if (eventName === undefined) {\n throw new Error(\"Session stream event is missing its SSE event name.\")\n }\n\n return { eventName, data: dataLines.join(\"\\n\") }\n}\n\nfunction parseSessionStreamEvent(frame: SseFrame): UpdateSessionStreamResponse {\n const event: UpdateSessionStreamResponse = JSON.parse(frame.data)\n if (\n typeof event !== \"object\" ||\n event === null ||\n !sessionStreamEventTypes.has(event.type) ||\n event.type !== frame.eventName\n ) {\n throw new Error(\"Session stream event does not match its SSE event name.\")\n }\n return event\n}\n\n/*\n * Type aliases to support the generic request interface.\n */\ntype Method = \"get\" | \"post\" | \"patch\" | \"delete\"\ntype QueryParams =\n | Record<string, string | number | boolean | string[] | null>\n | URLSearchParams\n\ntype WithAuth<P> = P & { auth?: string }\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@notionhq/client",
3
- "version": "5.27.0",
3
+ "version": "5.27.1",
4
4
  "description": "A simple and easy to use client for the Notion API",
5
5
  "engines": {
6
6
  "node": ">=18"