@opendatalabs/personal-server-ts-core 1.34.2 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (414) hide show
  1. package/dist/additions/durable.d.ts +32 -2
  2. package/dist/additions/durable.d.ts.map +1 -1
  3. package/dist/additions/durable.js +237 -88
  4. package/dist/additions/durable.js.map +1 -1
  5. package/dist/additions/version-inventory.d.ts +4 -0
  6. package/dist/additions/version-inventory.d.ts.map +1 -1
  7. package/dist/additions/version-inventory.js +11 -1
  8. package/dist/additions/version-inventory.js.map +1 -1
  9. package/dist/api/index.d.ts +18 -1
  10. package/dist/api/index.d.ts.map +1 -1
  11. package/dist/api/index.js +172 -4
  12. package/dist/api/index.js.map +1 -1
  13. package/dist/api/oura-collection-requirements.d.ts +16 -0
  14. package/dist/api/oura-collection-requirements.d.ts.map +1 -0
  15. package/dist/api/oura-collection-requirements.js +70 -0
  16. package/dist/api/oura-collection-requirements.js.map +1 -0
  17. package/dist/api/scope-upload-batches.d.ts +18 -0
  18. package/dist/api/scope-upload-batches.d.ts.map +1 -0
  19. package/dist/api/scope-upload-batches.js +71 -0
  20. package/dist/api/scope-upload-batches.js.map +1 -0
  21. package/dist/api/scope-uploads.d.ts +112 -0
  22. package/dist/api/scope-uploads.d.ts.map +1 -0
  23. package/dist/api/scope-uploads.js +369 -0
  24. package/dist/api/scope-uploads.js.map +1 -0
  25. package/dist/client.d.ts +70 -0
  26. package/dist/client.d.ts.map +1 -1
  27. package/dist/client.js +1 -0
  28. package/dist/client.js.map +1 -1
  29. package/dist/contracts/data.d.ts +8 -0
  30. package/dist/contracts/data.d.ts.map +1 -1
  31. package/dist/contracts/data.js +31 -1
  32. package/dist/contracts/data.js.map +1 -1
  33. package/dist/contracts/grants.d.ts.map +1 -1
  34. package/dist/contracts/grants.js +3 -0
  35. package/dist/contracts/grants.js.map +1 -1
  36. package/dist/contracts/index.d.ts +3 -1
  37. package/dist/contracts/index.d.ts.map +1 -1
  38. package/dist/contracts/index.js +3 -1
  39. package/dist/contracts/index.js.map +1 -1
  40. package/dist/contracts/oura-collection-requirements.d.ts +17 -0
  41. package/dist/contracts/oura-collection-requirements.d.ts.map +1 -0
  42. package/dist/contracts/oura-collection-requirements.js +49 -0
  43. package/dist/contracts/oura-collection-requirements.js.map +1 -0
  44. package/dist/legacy-projection/bindings.d.ts +1 -7
  45. package/dist/legacy-projection/bindings.d.ts.map +1 -1
  46. package/dist/legacy-projection/bindings.js +162 -28
  47. package/dist/legacy-projection/bindings.js.map +1 -1
  48. package/dist/legacy-projection/index.d.ts +6 -5
  49. package/dist/legacy-projection/index.d.ts.map +1 -1
  50. package/dist/legacy-projection/index.js +9 -21
  51. package/dist/legacy-projection/index.js.map +1 -1
  52. package/dist/legacy-projection/oura-browser-bindings.d.ts +2 -0
  53. package/dist/legacy-projection/oura-browser-bindings.d.ts.map +1 -1
  54. package/dist/legacy-projection/oura-browser-bindings.js +2 -0
  55. package/dist/legacy-projection/oura-browser-bindings.js.map +1 -1
  56. package/dist/legacy-projection/strava-browser-bindings.d.ts +3 -0
  57. package/dist/legacy-projection/strava-browser-bindings.d.ts.map +1 -0
  58. package/dist/legacy-projection/strava-browser-bindings.js +32 -0
  59. package/dist/legacy-projection/strava-browser-bindings.js.map +1 -0
  60. package/dist/legacy-projection/types.d.ts +44 -12
  61. package/dist/legacy-projection/types.d.ts.map +1 -1
  62. package/dist/mcp/connection-api.d.ts +11 -1
  63. package/dist/mcp/connection-api.d.ts.map +1 -1
  64. package/dist/mcp/connection-api.js +94 -9
  65. package/dist/mcp/connection-api.js.map +1 -1
  66. package/dist/mcp/index.d.ts +1 -0
  67. package/dist/mcp/index.d.ts.map +1 -1
  68. package/dist/mcp/index.js +1 -0
  69. package/dist/mcp/index.js.map +1 -1
  70. package/dist/mcp/server.d.ts +9 -0
  71. package/dist/mcp/server.d.ts.map +1 -1
  72. package/dist/mcp/server.js +19 -6
  73. package/dist/mcp/server.js.map +1 -1
  74. package/dist/mcp/store.d.ts +10 -1
  75. package/dist/mcp/store.d.ts.map +1 -1
  76. package/dist/mcp/store.js +51 -0
  77. package/dist/mcp/store.js.map +1 -1
  78. package/dist/mcp/tools.d.ts +52 -2
  79. package/dist/mcp/tools.d.ts.map +1 -1
  80. package/dist/mcp/tools.js +395 -11
  81. package/dist/mcp/tools.js.map +1 -1
  82. package/dist/mcp/types.d.ts +36 -2
  83. package/dist/mcp/types.d.ts.map +1 -1
  84. package/dist/mcp/types.js +12 -0
  85. package/dist/mcp/types.js.map +1 -1
  86. package/dist/mcp/write-client.d.ts +81 -0
  87. package/dist/mcp/write-client.d.ts.map +1 -0
  88. package/dist/mcp/write-client.js +140 -0
  89. package/dist/mcp/write-client.js.map +1 -0
  90. package/dist/oura/history-policy.d.ts +12 -0
  91. package/dist/oura/history-policy.d.ts.map +1 -0
  92. package/dist/oura/history-policy.js +54 -0
  93. package/dist/oura/history-policy.js.map +1 -0
  94. package/dist/oura/index.d.ts +51 -0
  95. package/dist/oura/index.d.ts.map +1 -0
  96. package/dist/oura/index.js +315 -0
  97. package/dist/oura/index.js.map +1 -0
  98. package/dist/pdpp/approval.d.ts +1 -1
  99. package/dist/pdpp/approval.d.ts.map +1 -1
  100. package/dist/pdpp/approval.js +29 -10
  101. package/dist/pdpp/approval.js.map +1 -1
  102. package/dist/pdpp/declaration-limits.d.ts +7 -0
  103. package/dist/pdpp/declaration-limits.d.ts.map +1 -0
  104. package/dist/pdpp/declaration-limits.js +7 -0
  105. package/dist/pdpp/declaration-limits.js.map +1 -0
  106. package/dist/pdpp/declaration.d.ts +2 -1
  107. package/dist/pdpp/declaration.d.ts.map +1 -1
  108. package/dist/pdpp/declaration.js +2 -1
  109. package/dist/pdpp/declaration.js.map +1 -1
  110. package/dist/pdpp/index.d.ts +3 -2
  111. package/dist/pdpp/index.d.ts.map +1 -1
  112. package/dist/pdpp/index.js +3 -2
  113. package/dist/pdpp/index.js.map +1 -1
  114. package/dist/pdpp/issuance.d.ts.map +1 -1
  115. package/dist/pdpp/issuance.js +6 -2
  116. package/dist/pdpp/issuance.js.map +1 -1
  117. package/dist/pdpp/resolve.d.ts +12 -1
  118. package/dist/pdpp/resolve.d.ts.map +1 -1
  119. package/dist/pdpp/resolve.js +156 -58
  120. package/dist/pdpp/resolve.js.map +1 -1
  121. package/dist/pdpp/selection.d.ts +30 -1
  122. package/dist/pdpp/selection.d.ts.map +1 -1
  123. package/dist/pdpp/selection.js +77 -26
  124. package/dist/pdpp/selection.js.map +1 -1
  125. package/dist/pdpp/time.d.ts +39 -0
  126. package/dist/pdpp/time.d.ts.map +1 -0
  127. package/dist/pdpp/time.js +173 -0
  128. package/dist/pdpp/time.js.map +1 -0
  129. package/dist/pdpp/tokens.d.ts.map +1 -1
  130. package/dist/pdpp/tokens.js +4 -2
  131. package/dist/pdpp/tokens.js.map +1 -1
  132. package/dist/pdpp/types.d.ts +18 -2
  133. package/dist/pdpp/types.d.ts.map +1 -1
  134. package/dist/pdpp/types.js +7 -0
  135. package/dist/pdpp/types.js.map +1 -1
  136. package/dist/policy/reserved-scopes.d.ts +7 -0
  137. package/dist/policy/reserved-scopes.d.ts.map +1 -1
  138. package/dist/policy/reserved-scopes.js +12 -1
  139. package/dist/policy/reserved-scopes.js.map +1 -1
  140. package/dist/ports/index.d.ts +85 -1
  141. package/dist/ports/index.d.ts.map +1 -1
  142. package/dist/ports/index.js.map +1 -1
  143. package/dist/ports/pdpp-auth.d.ts +17 -27
  144. package/dist/ports/pdpp-auth.d.ts.map +1 -1
  145. package/dist/ports/pdpp-auth.js +14 -28
  146. package/dist/ports/pdpp-auth.js.map +1 -1
  147. package/dist/publication/publish.d.ts +96 -0
  148. package/dist/publication/publish.d.ts.map +1 -0
  149. package/dist/publication/publish.js +261 -0
  150. package/dist/publication/publish.js.map +1 -0
  151. package/dist/replication/completion.d.ts +20 -0
  152. package/dist/replication/completion.d.ts.map +1 -0
  153. package/dist/replication/completion.js +73 -0
  154. package/dist/replication/completion.js.map +1 -0
  155. package/dist/replication/coordinator-state.d.ts +29 -0
  156. package/dist/replication/coordinator-state.d.ts.map +1 -0
  157. package/dist/replication/coordinator-state.js +88 -0
  158. package/dist/replication/coordinator-state.js.map +1 -0
  159. package/dist/replication/coordinator-state.test-utils.d.ts +32 -0
  160. package/dist/replication/coordinator-state.test-utils.d.ts.map +1 -0
  161. package/dist/replication/coordinator-state.test-utils.js +113 -0
  162. package/dist/replication/coordinator-state.test-utils.js.map +1 -0
  163. package/dist/replication/coordinator.d.ts +264 -0
  164. package/dist/replication/coordinator.d.ts.map +1 -0
  165. package/dist/replication/coordinator.js +499 -0
  166. package/dist/replication/coordinator.js.map +1 -0
  167. package/dist/replication/copies.d.ts +126 -0
  168. package/dist/replication/copies.d.ts.map +1 -0
  169. package/dist/replication/copies.js +437 -0
  170. package/dist/replication/copies.js.map +1 -0
  171. package/dist/replication/copy-promotion.d.ts +132 -0
  172. package/dist/replication/copy-promotion.d.ts.map +1 -0
  173. package/dist/replication/copy-promotion.js +126 -0
  174. package/dist/replication/copy-promotion.js.map +1 -0
  175. package/dist/replication/door.d.ts +33 -0
  176. package/dist/replication/door.d.ts.map +1 -0
  177. package/dist/replication/door.js +10 -0
  178. package/dist/replication/door.js.map +1 -0
  179. package/dist/replication/dpv2.d.ts +141 -0
  180. package/dist/replication/dpv2.d.ts.map +1 -0
  181. package/dist/replication/dpv2.js +320 -0
  182. package/dist/replication/dpv2.js.map +1 -0
  183. package/dist/replication/effects.d.ts +68 -0
  184. package/dist/replication/effects.d.ts.map +1 -0
  185. package/dist/replication/effects.js +89 -0
  186. package/dist/replication/effects.js.map +1 -0
  187. package/dist/replication/engine.d.ts +378 -0
  188. package/dist/replication/engine.d.ts.map +1 -0
  189. package/dist/replication/engine.js +3197 -0
  190. package/dist/replication/engine.js.map +1 -0
  191. package/dist/replication/envelope.d.ts +481 -0
  192. package/dist/replication/envelope.d.ts.map +1 -0
  193. package/dist/replication/envelope.js +192 -0
  194. package/dist/replication/envelope.js.map +1 -0
  195. package/dist/replication/evidence.d.ts +118 -0
  196. package/dist/replication/evidence.d.ts.map +1 -0
  197. package/dist/replication/evidence.js +198 -0
  198. package/dist/replication/evidence.js.map +1 -0
  199. package/dist/replication/finality.d.ts +16 -0
  200. package/dist/replication/finality.d.ts.map +1 -0
  201. package/dist/replication/finality.js +11 -0
  202. package/dist/replication/finality.js.map +1 -0
  203. package/dist/replication/fixtures.d.ts +16 -0
  204. package/dist/replication/fixtures.d.ts.map +1 -0
  205. package/dist/replication/fixtures.js +47 -0
  206. package/dist/replication/fixtures.js.map +1 -0
  207. package/dist/replication/host-config.d.ts +52 -0
  208. package/dist/replication/host-config.d.ts.map +1 -0
  209. package/dist/replication/host-config.js +111 -0
  210. package/dist/replication/host-config.js.map +1 -0
  211. package/dist/replication/host-driver.d.ts +95 -0
  212. package/dist/replication/host-driver.d.ts.map +1 -0
  213. package/dist/replication/host-driver.js +202 -0
  214. package/dist/replication/host-driver.js.map +1 -0
  215. package/dist/replication/host-ports.d.ts +48 -0
  216. package/dist/replication/host-ports.d.ts.map +1 -0
  217. package/dist/replication/host-ports.js +69 -0
  218. package/dist/replication/host-ports.js.map +1 -0
  219. package/dist/replication/identity.d.ts +13 -0
  220. package/dist/replication/identity.d.ts.map +1 -0
  221. package/dist/replication/identity.js +22 -0
  222. package/dist/replication/identity.js.map +1 -0
  223. package/dist/replication/limits.d.ts +124 -0
  224. package/dist/replication/limits.d.ts.map +1 -0
  225. package/dist/replication/limits.js +182 -0
  226. package/dist/replication/limits.js.map +1 -0
  227. package/dist/replication/merge-plan.d.ts +92 -0
  228. package/dist/replication/merge-plan.d.ts.map +1 -0
  229. package/dist/replication/merge-plan.js +229 -0
  230. package/dist/replication/merge-plan.js.map +1 -0
  231. package/dist/replication/namespace.d.ts +4 -0
  232. package/dist/replication/namespace.d.ts.map +1 -0
  233. package/dist/replication/namespace.js +7 -0
  234. package/dist/replication/namespace.js.map +1 -0
  235. package/dist/replication/outcome.d.ts +178 -0
  236. package/dist/replication/outcome.d.ts.map +1 -0
  237. package/dist/replication/outcome.js +83 -0
  238. package/dist/replication/outcome.js.map +1 -0
  239. package/dist/replication/payload.d.ts +39 -0
  240. package/dist/replication/payload.d.ts.map +1 -0
  241. package/dist/replication/payload.js +137 -0
  242. package/dist/replication/payload.js.map +1 -0
  243. package/dist/replication/preparation.d.ts +42 -0
  244. package/dist/replication/preparation.d.ts.map +1 -0
  245. package/dist/replication/preparation.js +118 -0
  246. package/dist/replication/preparation.js.map +1 -0
  247. package/dist/replication/rebaseline.d.ts +33 -0
  248. package/dist/replication/rebaseline.d.ts.map +1 -0
  249. package/dist/replication/rebaseline.js +40 -0
  250. package/dist/replication/rebaseline.js.map +1 -0
  251. package/dist/replication/rebinding.d.ts +43 -0
  252. package/dist/replication/rebinding.d.ts.map +1 -0
  253. package/dist/replication/rebinding.js +52 -0
  254. package/dist/replication/rebinding.js.map +1 -0
  255. package/dist/replication/receive.d.ts +57 -0
  256. package/dist/replication/receive.d.ts.map +1 -0
  257. package/dist/replication/receive.js +114 -0
  258. package/dist/replication/receive.js.map +1 -0
  259. package/dist/replication/record-reducer.d.ts +16 -0
  260. package/dist/replication/record-reducer.d.ts.map +1 -0
  261. package/dist/replication/record-reducer.js +52 -0
  262. package/dist/replication/record-reducer.js.map +1 -0
  263. package/dist/replication/revision.d.ts +24 -0
  264. package/dist/replication/revision.d.ts.map +1 -0
  265. package/dist/replication/revision.js +35 -0
  266. package/dist/replication/revision.js.map +1 -0
  267. package/dist/replication/roster.d.ts +53 -0
  268. package/dist/replication/roster.d.ts.map +1 -0
  269. package/dist/replication/roster.js +115 -0
  270. package/dist/replication/roster.js.map +1 -0
  271. package/dist/replication/schedule.d.ts +73 -0
  272. package/dist/replication/schedule.d.ts.map +1 -0
  273. package/dist/replication/schedule.js +182 -0
  274. package/dist/replication/schedule.js.map +1 -0
  275. package/dist/replication/stream.d.ts +73 -0
  276. package/dist/replication/stream.d.ts.map +1 -0
  277. package/dist/replication/stream.js +542 -0
  278. package/dist/replication/stream.js.map +1 -0
  279. package/dist/replication/transport.d.ts +236 -0
  280. package/dist/replication/transport.d.ts.map +1 -0
  281. package/dist/replication/transport.js +440 -0
  282. package/dist/replication/transport.js.map +1 -0
  283. package/dist/replication/visibility-engine.d.ts +337 -0
  284. package/dist/replication/visibility-engine.d.ts.map +1 -0
  285. package/dist/replication/visibility-engine.js +602 -0
  286. package/dist/replication/visibility-engine.js.map +1 -0
  287. package/dist/replication/visibility-policy.d.ts +26 -0
  288. package/dist/replication/visibility-policy.d.ts.map +1 -0
  289. package/dist/replication/visibility-policy.js +33 -0
  290. package/dist/replication/visibility-policy.js.map +1 -0
  291. package/dist/replication/writer-identity-store.d.ts +100 -0
  292. package/dist/replication/writer-identity-store.d.ts.map +1 -0
  293. package/dist/replication/writer-identity-store.js +218 -0
  294. package/dist/replication/writer-identity-store.js.map +1 -0
  295. package/dist/replication/writer-identity.d.ts +252 -0
  296. package/dist/replication/writer-identity.d.ts.map +1 -0
  297. package/dist/replication/writer-identity.js +281 -0
  298. package/dist/replication/writer-identity.js.map +1 -0
  299. package/dist/replication/writer-identity.test-utils.d.ts +24 -0
  300. package/dist/replication/writer-identity.test-utils.d.ts.map +1 -0
  301. package/dist/replication/writer-identity.test-utils.js +86 -0
  302. package/dist/replication/writer-identity.test-utils.js.map +1 -0
  303. package/dist/schemas/server-config.d.ts +13 -0
  304. package/dist/schemas/server-config.d.ts.map +1 -1
  305. package/dist/schemas/server-config.js +24 -0
  306. package/dist/schemas/server-config.js.map +1 -1
  307. package/dist/storage/adapters/index.d.ts +3 -1
  308. package/dist/storage/adapters/index.d.ts.map +1 -1
  309. package/dist/storage/adapters/index.js +2 -0
  310. package/dist/storage/adapters/index.js.map +1 -1
  311. package/dist/storage/adapters/interface.d.ts +18 -1
  312. package/dist/storage/adapters/interface.d.ts.map +1 -1
  313. package/dist/storage/adapters/interface.js +13 -1
  314. package/dist/storage/adapters/interface.js.map +1 -1
  315. package/dist/storage/adapters/sdk.d.ts +2 -1
  316. package/dist/storage/adapters/sdk.d.ts.map +1 -1
  317. package/dist/storage/adapters/sdk.js +21 -3
  318. package/dist/storage/adapters/sdk.js.map +1 -1
  319. package/dist/storage/adapters/vana-audience.d.ts +17 -5
  320. package/dist/storage/adapters/vana-audience.d.ts.map +1 -1
  321. package/dist/storage/adapters/vana-audience.js +24 -9
  322. package/dist/storage/adapters/vana-audience.js.map +1 -1
  323. package/dist/storage/adapters/vana.d.ts +2 -2
  324. package/dist/storage/adapters/vana.d.ts.map +1 -1
  325. package/dist/storage/adapters/vana.js +30 -22
  326. package/dist/storage/adapters/vana.js.map +1 -1
  327. package/dist/storage/canonical-legacy-projection.d.ts +1 -1
  328. package/dist/storage/canonical-legacy-projection.d.ts.map +1 -1
  329. package/dist/storage/canonical-legacy-projection.js +13 -15
  330. package/dist/storage/canonical-legacy-projection.js.map +1 -1
  331. package/dist/storage/legacy-projection.d.ts.map +1 -1
  332. package/dist/storage/legacy-projection.js +16 -1
  333. package/dist/storage/legacy-projection.js.map +1 -1
  334. package/dist/storage/legacy-scope-coverage-exceptions.d.ts +5 -0
  335. package/dist/storage/legacy-scope-coverage-exceptions.d.ts.map +1 -1
  336. package/dist/storage/legacy-scope-coverage-exceptions.js +4 -0
  337. package/dist/storage/legacy-scope-coverage-exceptions.js.map +1 -1
  338. package/dist/storage/legacy-scope-coverage.d.ts.map +1 -1
  339. package/dist/storage/legacy-scope-coverage.js +14 -1
  340. package/dist/storage/legacy-scope-coverage.js.map +1 -1
  341. package/dist/storage/legacy-scope-entity-keys.d.ts +14 -1
  342. package/dist/storage/legacy-scope-entity-keys.d.ts.map +1 -1
  343. package/dist/storage/legacy-scope-entity-keys.js +18 -1
  344. package/dist/storage/legacy-scope-entity-keys.js.map +1 -1
  345. package/dist/storage/legacy-scope-view.d.ts +57 -5
  346. package/dist/storage/legacy-scope-view.d.ts.map +1 -1
  347. package/dist/storage/legacy-scope-view.js +644 -318
  348. package/dist/storage/legacy-scope-view.js.map +1 -1
  349. package/dist/storage/pdpp-records/cursor.d.ts +47 -2
  350. package/dist/storage/pdpp-records/cursor.d.ts.map +1 -1
  351. package/dist/storage/pdpp-records/cursor.js +7 -0
  352. package/dist/storage/pdpp-records/cursor.js.map +1 -1
  353. package/dist/storage/pdpp-records/enforcement.d.ts +3 -16
  354. package/dist/storage/pdpp-records/enforcement.d.ts.map +1 -1
  355. package/dist/storage/pdpp-records/enforcement.js +40 -13
  356. package/dist/storage/pdpp-records/enforcement.js.map +1 -1
  357. package/dist/storage/pdpp-records/index.d.ts +2 -0
  358. package/dist/storage/pdpp-records/index.d.ts.map +1 -1
  359. package/dist/storage/pdpp-records/index.js +1 -0
  360. package/dist/storage/pdpp-records/index.js.map +1 -1
  361. package/dist/storage/pdpp-records/interface.d.ts +8 -1
  362. package/dist/storage/pdpp-records/interface.d.ts.map +1 -1
  363. package/dist/storage/pdpp-records/list-page.d.ts +35 -0
  364. package/dist/storage/pdpp-records/list-page.d.ts.map +1 -0
  365. package/dist/storage/pdpp-records/list-page.js +106 -0
  366. package/dist/storage/pdpp-records/list-page.js.map +1 -0
  367. package/dist/storage/pdpp-records/memory-store.d.ts.map +1 -1
  368. package/dist/storage/pdpp-records/memory-store.js +95 -99
  369. package/dist/storage/pdpp-records/memory-store.js.map +1 -1
  370. package/dist/storage/pdpp-records/portable.d.ts +3 -0
  371. package/dist/storage/pdpp-records/portable.d.ts.map +1 -1
  372. package/dist/storage/pdpp-records/portable.js +3 -0
  373. package/dist/storage/pdpp-records/portable.js.map +1 -1
  374. package/dist/storage/pdpp-records/replication-journal.d.ts +20 -0
  375. package/dist/storage/pdpp-records/replication-journal.d.ts.map +1 -0
  376. package/dist/storage/pdpp-records/replication-journal.js +2 -0
  377. package/dist/storage/pdpp-records/replication-journal.js.map +1 -0
  378. package/dist/storage/pdpp-records/stream-declaration.d.ts +0 -2
  379. package/dist/storage/pdpp-records/stream-declaration.d.ts.map +1 -1
  380. package/dist/storage/pdpp-records/stream-declaration.js +0 -9
  381. package/dist/storage/pdpp-records/stream-declaration.js.map +1 -1
  382. package/dist/storage/pdpp-records/sync-selection.d.ts +4 -0
  383. package/dist/storage/pdpp-records/sync-selection.d.ts.map +1 -0
  384. package/dist/storage/pdpp-records/sync-selection.js +37 -0
  385. package/dist/storage/pdpp-records/sync-selection.js.map +1 -0
  386. package/dist/storage/pdpp-records/types.d.ts +64 -0
  387. package/dist/storage/pdpp-records/types.d.ts.map +1 -1
  388. package/dist/storage/pdpp-records/types.js.map +1 -1
  389. package/dist/sync/delete-data-port.d.ts +15 -0
  390. package/dist/sync/delete-data-port.d.ts.map +1 -1
  391. package/dist/sync/delete-data-port.js +19 -7
  392. package/dist/sync/delete-data-port.js.map +1 -1
  393. package/dist/sync/index.d.ts +2 -1
  394. package/dist/sync/index.d.ts.map +1 -1
  395. package/dist/sync/index.js +2 -1
  396. package/dist/sync/index.js.map +1 -1
  397. package/dist/sync/pending-blob-deletions.d.ts +18 -2
  398. package/dist/sync/pending-blob-deletions.d.ts.map +1 -1
  399. package/dist/sync/pending-blob-deletions.js +69 -23
  400. package/dist/sync/pending-blob-deletions.js.map +1 -1
  401. package/dist/sync/workers/delete.d.ts.map +1 -1
  402. package/dist/sync/workers/delete.js +316 -142
  403. package/dist/sync/workers/delete.js.map +1 -1
  404. package/dist/sync/workers/download.d.ts.map +1 -1
  405. package/dist/sync/workers/download.js +53 -5
  406. package/dist/sync/workers/download.js.map +1 -1
  407. package/dist/sync/workers/upload.d.ts +24 -5
  408. package/dist/sync/workers/upload.d.ts.map +1 -1
  409. package/dist/sync/workers/upload.js +160 -275
  410. package/dist/sync/workers/upload.js.map +1 -1
  411. package/dist/test-utils/memory-storage.d.ts.map +1 -1
  412. package/dist/test-utils/memory-storage.js +17 -2
  413. package/dist/test-utils/memory-storage.js.map +1 -1
  414. package/package.json +24 -2
@@ -1,3 +1,4 @@
1
+ import { compareTime, compareLegacyTimeBounds, legacyTimeBound, parseTime, declaredTimeType, } from "./time.js";
1
2
  /**
2
3
  * PDPP Core §6 selection-request validation.
3
4
  *
@@ -12,7 +13,7 @@
12
13
  * on any owner-specific state. We return a binding-neutral failure and let the
13
14
  * OAuth/RAR layer map it to RFC 9396 `invalid_authorization_details`.
14
15
  */
15
- import { PDPP_DATA_ACCESS_TYPE, PDPP_DATA_ACCESS_TYPE_V02, } from "./types.js";
16
+ import { PDPP_DATA_ACCESS_TYPE, PDPP_DATA_ACCESS_TYPE_V02, PDPP_DATA_ACCESS_TYPE_CANDIDATE, } from "./types.js";
16
17
  function fail(code, message) {
17
18
  return { ok: false, failure: { code, message } };
18
19
  }
@@ -59,14 +60,18 @@ function validateResourceKey(raw, primaryKey) {
59
60
  * here turns a guaranteed `access_denied` at issuance into a fixable shape
60
61
  * error before a human is asked to decide anything.
61
62
  */
62
- function expandedRequestFields(stream, declared, snapshot) {
63
+ export function expandedRequestFields(stream, declared, snapshot, allFieldsMarker = false) {
63
64
  if (stream.view !== undefined) {
64
65
  const view = snapshot.views?.find((v) => v.name === stream.view);
65
66
  // An unresolvable view already failed above; treat it as empty here.
66
67
  return view ? view.fields.filter((f) => declared.fields.includes(f)) : [];
67
68
  }
68
69
  if (stream.fields !== undefined) {
69
- return stream.fields.filter((f) => declared.fields.includes(f));
70
+ return allFieldsMarker &&
71
+ stream.fields.length === 1 &&
72
+ stream.fields[0] === "*"
73
+ ? declared.fields
74
+ : stream.fields.filter((f) => declared.fields.includes(f));
70
75
  }
71
76
  // Omitting both asks for all permitted fields, so the whole declared set is
72
77
  // in the expanded request.
@@ -87,7 +92,7 @@ function expandedRequestFields(stream, declared, snapshot) {
87
92
  * rather than assumed: a `null` or a number here must be a validation failure,
88
93
  * not a `TypeError` that the binding turns into a 500.
89
94
  */
90
- function validateTimeRangeBounds(value, subject) {
95
+ export function validateTimeRangeBounds(value, subject, type) {
91
96
  if (typeof value !== "object" || value === null || Array.isArray(value)) {
92
97
  return fail("invalid_request", `${subject} time_range must be an object`);
93
98
  }
@@ -101,12 +106,15 @@ function validateTimeRangeBounds(value, subject) {
101
106
  ]) {
102
107
  if (bound === undefined)
103
108
  continue;
104
- if (typeof bound !== "string" || Number.isNaN(Date.parse(bound))) {
109
+ if (typeof bound !== "string" ||
110
+ (type ? parseTime(bound, type) === null : legacyTimeBound(bound) === null)) {
105
111
  return fail("invalid_request", `${subject} time_range.${label} is not a valid ISO 8601 instant`);
106
112
  }
107
113
  }
108
114
  if (typeof since === "string" && typeof until === "string") {
109
- if (Date.parse(since) >= Date.parse(until)) {
115
+ if (type
116
+ ? compareTime(since, until, type) >= 0
117
+ : compareLegacyTimeBounds(since, until) >= 0) {
110
118
  return fail("invalid_request", `${subject} time_range.since must precede time_range.until`);
111
119
  }
112
120
  }
@@ -119,7 +127,7 @@ function validateTimeRangeBounds(value, subject) {
119
127
  * inventory, or any record. Whether the *owner's* narrowing then satisfies a
120
128
  * well-formed minimum is an issuance question, handled in `resolve.ts`.
121
129
  */
122
- function validateMinimum(stream, declared, snapshot) {
130
+ function validateMinimum(stream, declared, snapshot, type) {
123
131
  const minimum = stream.minimum;
124
132
  if (minimum === undefined)
125
133
  return { ok: true };
@@ -148,7 +156,7 @@ function validateMinimum(stream, declared, snapshot) {
148
156
  if (new Set(fields).size !== fields.length) {
149
157
  return bad("fields must not contain duplicates");
150
158
  }
151
- const permitted = expandedRequestFields(stream, declared, snapshot);
159
+ const permitted = expandedRequestFields(stream, declared, snapshot, true);
152
160
  const outside = fields.filter((f) => !permitted.includes(f));
153
161
  if (outside.length > 0) {
154
162
  return bad(`fields outside the expanded request: ${outside.join(", ")}`);
@@ -166,12 +174,22 @@ function validateMinimum(stream, declared, snapshot) {
166
174
  if (typeof since !== "string" || typeof until !== "string") {
167
175
  return bad("time_range must contain both since and until");
168
176
  }
169
- const from = Date.parse(since);
170
- const to = Date.parse(until);
171
- if (Number.isNaN(from) || Number.isNaN(to)) {
177
+ if (type) {
178
+ const valid = validateTimeRangeBounds(range, `stream '${stream.name}' minimum`, type);
179
+ if (!valid.ok)
180
+ return bad(valid.failure.message);
181
+ if ((stream.time_range?.since !== undefined &&
182
+ compareTime(since, stream.time_range.since, type) < 0) ||
183
+ (stream.time_range?.until !== undefined &&
184
+ compareTime(until, stream.time_range.until, type) > 0))
185
+ return bad("time_range falls outside the requested time_range");
186
+ return { ok: true };
187
+ }
188
+ const order = compareLegacyTimeBounds(since, until);
189
+ if (order === null) {
172
190
  return bad("time_range bounds must be valid ISO 8601 instants");
173
191
  }
174
- if (from >= to) {
192
+ if (order >= 0) {
175
193
  return bad("time_range.since must precede time_range.until");
176
194
  }
177
195
  if (!declared.consent_time_field) {
@@ -181,9 +199,10 @@ function validateMinimum(stream, declared, snapshot) {
181
199
  // an offset-bearing timestamp is ordered by the moment it names rather
182
200
  // than by its string form.
183
201
  const requested = stream.time_range;
184
- const ceilingSince = requested?.since !== undefined ? Date.parse(requested.since) : -Infinity;
185
- const ceilingUntil = requested?.until !== undefined ? Date.parse(requested.until) : Infinity;
186
- if (from < ceilingSince || to > ceilingUntil) {
202
+ if ((requested?.since !== undefined &&
203
+ (compareLegacyTimeBounds(since, requested.since) ?? -1) < 0) ||
204
+ (requested?.until !== undefined &&
205
+ (compareLegacyTimeBounds(until, requested.until) ?? 1) > 0)) {
187
206
  return bad("time_range falls outside the requested time_range");
188
207
  }
189
208
  }
@@ -204,12 +223,32 @@ function validateStreamRequest(stream, snapshot, revision) {
204
223
  return fail("invalid_request", `stream '${stream.name}' necessity must be required or optional`);
205
224
  }
206
225
  }
207
- if (stream.minimum !== undefined && revision === "0.1") {
226
+ if (stream.minimum !== undefined && revision !== "0.2") {
208
227
  // v0.1 has no `minimum`. Accepting and ignoring it is the one outcome
209
228
  // worse than rejecting: the client would ship believing a floor is
210
229
  // enforced. A client that wants minima moves to the v0.2 type.
211
230
  return fail("unsupported_selection_parameter", `stream '${stream.name}' carries minimum, which requires the ${PDPP_DATA_ACCESS_TYPE_V02} detail type`);
212
231
  }
232
+ if (revision === "candidate") {
233
+ if (stream.name === "*" && stream.view !== undefined)
234
+ return fail("unsupported_selection_parameter", "view cannot be combined with a wildcard stream selection");
235
+ if (stream.fields === undefined && stream.view === undefined)
236
+ return fail("invalid_request", "each candidate stream requires fields or view");
237
+ if (stream.fields !== undefined &&
238
+ (!Array.isArray(stream.fields) ||
239
+ stream.fields.length === 0 ||
240
+ !stream.fields.every((f) => typeof f === "string" && f.length > 0) ||
241
+ (stream.fields.includes("*") && stream.fields.length !== 1)))
242
+ return fail("invalid_request", "fields must be non-empty; '*' must appear alone");
243
+ if (stream.name === "*") {
244
+ for (const declared of snapshot.streams) {
245
+ const result = validateStreamRequest({ ...stream, name: declared.name }, snapshot, revision);
246
+ if (!result.ok)
247
+ return result;
248
+ }
249
+ return { ok: true };
250
+ }
251
+ }
213
252
  // A wildcard is checked by the caller (it must be the sole entry) and
214
253
  // expands during resolution, so there is no declared stream to match yet.
215
254
  if (stream.name === "*") {
@@ -279,7 +318,8 @@ function validateStreamRequest(stream, snapshot, revision) {
279
318
  if (!stream.fields.every((f) => typeof f === "string" && f.length > 0)) {
280
319
  return fail("invalid_request", `stream '${stream.name}' fields must contain non-empty strings`);
281
320
  }
282
- const absent = stream.fields.filter((f) => !declared.fields.includes(f));
321
+ const absent = stream.fields.filter((f) => !(revision === "candidate" && f === "*") &&
322
+ !declared.fields.includes(f));
283
323
  if (absent.length > 0) {
284
324
  return fail("unknown_field", `stream '${stream.name}' requests fields absent from the retained schema: ${absent.join(", ")}`);
285
325
  }
@@ -290,7 +330,10 @@ function validateStreamRequest(stream, snapshot, revision) {
290
330
  if (!declared.consent_time_field) {
291
331
  return fail("unsupported_selection_parameter", `stream '${stream.name}' declares no consent_time_field and cannot accept time_range`);
292
332
  }
293
- const bounds = validateTimeRangeBounds(stream.time_range, `stream '${stream.name}'`);
333
+ const timeType = revision === "candidate" ? declaredTimeType(declared) : undefined;
334
+ if (revision === "candidate" && !timeType)
335
+ return fail("unsupported_selection_parameter", "candidate consent_time_field must declare a date or date-time string");
336
+ const bounds = validateTimeRangeBounds(stream.time_range, `stream '${stream.name}'`, timeType);
294
337
  if (!bounds.ok)
295
338
  return bounds;
296
339
  }
@@ -313,7 +356,7 @@ function validateStreamRequest(stream, snapshot, revision) {
313
356
  }
314
357
  // Last, so a minimum naming a field that is itself undeclared reports the
315
358
  // undeclared field rather than the floor built on it.
316
- return validateMinimum(stream, declared, snapshot);
359
+ return validateMinimum(stream, declared, snapshot, revision === "candidate" ? declaredTimeType(declared) : undefined);
317
360
  }
318
361
  /**
319
362
  * Validate one selection request against the retained declaration snapshot.
@@ -324,16 +367,24 @@ function validateStreamRequest(stream, snapshot, revision) {
324
367
  * different one to `resolveGrant` would defeat the whole guarantee.
325
368
  */
326
369
  export function validateSelectionRequest(request, snapshot) {
327
- // Exactly two types are recognized, each resolved under its own revision.
370
+ // Each recognized type is resolved under its own revision.
328
371
  // Anything else is rejected rather than processed as the nearest PDPP type:
329
372
  // a type URI the AS does not implement carries rules it does not apply.
330
- const revision = request.type === PDPP_DATA_ACCESS_TYPE_V02
331
- ? "0.2"
332
- : request.type === PDPP_DATA_ACCESS_TYPE
333
- ? "0.1"
334
- : null;
373
+ const revision = request.type === PDPP_DATA_ACCESS_TYPE_CANDIDATE
374
+ ? "candidate"
375
+ : request.type === PDPP_DATA_ACCESS_TYPE_V02
376
+ ? "0.2"
377
+ : request.type === PDPP_DATA_ACCESS_TYPE
378
+ ? "0.1"
379
+ : null;
335
380
  if (revision === null) {
336
- return fail("invalid_request", `authorization detail type must be ${PDPP_DATA_ACCESS_TYPE} or ${PDPP_DATA_ACCESS_TYPE_V02}`);
381
+ return fail("invalid_request", `authorization detail type must be ${PDPP_DATA_ACCESS_TYPE}, ${PDPP_DATA_ACCESS_TYPE_V02}, or ${PDPP_DATA_ACCESS_TYPE_CANDIDATE}`);
382
+ }
383
+ if (revision === "candidate") {
384
+ const ineligible = snapshot.streams.find((stream) => stream.consent_time_field !== undefined &&
385
+ declaredTimeType(stream) === undefined);
386
+ if (ineligible)
387
+ return fail("invalid_request", `stream '${ineligible.name}' declares an ineligible consent_time_field`);
337
388
  }
338
389
  if (typeof request.source !== "object" ||
339
390
  request.source === null ||
@@ -1 +1 @@
1
- {"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/pdpp/selection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection.js","sourceRoot":"","sources":["../../src/pdpp/selection.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ /** Portable RFC 3339 temporal policy. No rounding or local time zone. */
2
+ export type TimeType = "date" | "date-time";
3
+ export interface ParsedTime {
4
+ readonly seconds: bigint;
5
+ readonly fraction: string;
6
+ }
7
+ export declare function parseTime(value: unknown, type: TimeType): ParsedTime | null;
8
+ export declare function compareTime(a: string, b: string, type: TimeType): -1 | 0 | 1 | null;
9
+ /**
10
+ * Text whose code-point order is `compareTime` order for RFC 3339 date-times,
11
+ * for stores that order or seek by text. Equal instants get equal keys. A
12
+ * value that is not a valid date-time sorts after every valid one, by its text.
13
+ */
14
+ export declare function timeSortKey(value: string): string;
15
+ /** Only eligible top-level temporal schema properties may define candidate bounds. */
16
+ export declare function declaredTimeType(stream: {
17
+ consent_time_field?: string;
18
+ schema?: Record<string, unknown>;
19
+ }): TimeType | undefined;
20
+ /**
21
+ * The instant an untyped (current or private-v0.2) authorization bound names,
22
+ * as an RFC 3339 date-time, or `null` if it names none.
23
+ *
24
+ * The one interpretation of those bounds for AS validation, minimum checks and
25
+ * narrowing and for RS enforcement. Existing AS profiles accept Date.parse
26
+ * syntax; a strict RFC 3339 value keeps its exact precision. A full date is
27
+ * midnight UTC. Date.parse would give offset-less syntax the host's zone, so
28
+ * those bounds are read in UTC on every host; an explicit offset is kept.
29
+ */
30
+ export declare function legacyTimeBound(input: string): string | null;
31
+ /** Order two untyped bounds by the instants they name; `null` if either names none. */
32
+ export declare function compareLegacyTimeBounds(a: string, b: string): -1 | 0 | 1 | null;
33
+ /** Current untyped bounds historically accept full dates as midnight UTC. */
34
+ export declare function withinTimeRange(value: string | undefined, constraint: {
35
+ type?: TimeType;
36
+ since?: string;
37
+ until?: string;
38
+ }): boolean;
39
+ //# sourceMappingURL=time.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../../src/pdpp/time.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAC5C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAkCD,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI,CAmD3E;AACD,wBAAgB,WAAW,CACzB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,IAAI,EAAE,QAAQ,GACb,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAUnB;AAMD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOjD;AACD,sFAAsF;AACtF,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,GAAG,QAAQ,GAAG,SAAS,CAkBvB;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkB5D;AAED,uFAAuF;AACvF,wBAAgB,uBAAuB,CACrC,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,GACR,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAMnB;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,UAAU,EAAE;IAAE,IAAI,CAAC,EAAE,QAAQ,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9D,OAAO,CAwBT"}
@@ -0,0 +1,173 @@
1
+ // IERS inserted leap seconds, through the most recent insertion (2016-12-31).
2
+ const leapDates = [
3
+ "1972-06-30",
4
+ "1972-12-31",
5
+ "1973-12-31",
6
+ "1974-12-31",
7
+ "1975-12-31",
8
+ "1976-12-31",
9
+ "1977-12-31",
10
+ "1978-12-31",
11
+ "1979-12-31",
12
+ "1981-06-30",
13
+ "1982-06-30",
14
+ "1983-06-30",
15
+ "1985-06-30",
16
+ "1987-12-31",
17
+ "1989-12-31",
18
+ "1990-12-31",
19
+ "1992-06-30",
20
+ "1993-06-30",
21
+ "1994-06-30",
22
+ "1995-12-31",
23
+ "1997-06-30",
24
+ "1998-12-31",
25
+ "2005-12-31",
26
+ "2008-12-31",
27
+ "2012-06-30",
28
+ "2015-06-30",
29
+ "2016-12-31",
30
+ ];
31
+ const leapTransitions = leapDates.map((d) => Date.parse(`${d}T00:00:00Z`) / 1000 + 86400);
32
+ export function parseTime(value, type) {
33
+ if (typeof value !== "string" || (type !== "date" && type !== "date-time"))
34
+ return null;
35
+ const match = (type === "date"
36
+ ? /^(\d{4})-(\d{2})-(\d{2})$/
37
+ : /^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?([zZ]|[+-]\d{2}:\d{2})$/).exec(value);
38
+ if (!match)
39
+ return null;
40
+ const [, y, m, d, h = "0", min = "0", s = "0", fraction = "", offset = "Z"] = match;
41
+ const year = Number(y), month = Number(m), day = Number(d), hour = Number(h), minute = Number(min), second = Number(s);
42
+ const leap = year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
43
+ if (month < 1 ||
44
+ month > 12 ||
45
+ day < 1 ||
46
+ day >
47
+ [31, leap ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month - 1] ||
48
+ hour > 23 ||
49
+ minute > 59 ||
50
+ second > 60)
51
+ return null;
52
+ let offsetSeconds = 0;
53
+ if (offset.toUpperCase() !== "Z") {
54
+ const oh = Number(offset.slice(1, 3)), om = Number(offset.slice(4, 6));
55
+ if (oh > 23 || om > 59)
56
+ return null;
57
+ offsetSeconds = (oh * 3600 + om * 60) * (offset[0] === "-" ? -1 : 1);
58
+ }
59
+ const date = new Date(0);
60
+ date.setUTCFullYear(year, month - 1, day);
61
+ date.setUTCHours(hour, minute, Math.min(second, 59), 0);
62
+ const nominal = date.getTime() / 1000 - offsetSeconds + (second === 60 ? 1 : 0);
63
+ if (second === 60 && !leapTransitions.includes(nominal))
64
+ return null;
65
+ const prior = leapTransitions.filter((t) => second === 60 ? t < nominal : t <= nominal).length;
66
+ return {
67
+ seconds: BigInt(nominal) + BigInt(type === "date-time" ? prior : 0),
68
+ fraction: fraction.replace(/0+$/, ""),
69
+ };
70
+ }
71
+ export function compareTime(a, b, type) {
72
+ const left = parseTime(a, type), right = parseTime(b, type);
73
+ if (!left || !right)
74
+ return null;
75
+ if (left.seconds !== right.seconds)
76
+ return left.seconds < right.seconds ? -1 : 1;
77
+ const width = Math.max(left.fraction.length, right.fraction.length);
78
+ const l = left.fraction.padEnd(width, "0"), r = right.fraction.padEnd(width, "0");
79
+ return l === r ? 0 : l < r ? -1 : 1;
80
+ }
81
+ // Shifts every representable instant (years 0000-9999) to a non-negative
82
+ // count of seconds with a fixed number of digits.
83
+ const SORT_KEY_EPOCH_SHIFT = 100000000000n;
84
+ const SORT_KEY_SECONDS_WIDTH = 12;
85
+ /**
86
+ * Text whose code-point order is `compareTime` order for RFC 3339 date-times,
87
+ * for stores that order or seek by text. Equal instants get equal keys. A
88
+ * value that is not a valid date-time sorts after every valid one, by its text.
89
+ */
90
+ export function timeSortKey(value) {
91
+ const parsed = parseTime(value, "date-time");
92
+ if (!parsed)
93
+ return `~${value}`;
94
+ const seconds = (parsed.seconds + SORT_KEY_EPOCH_SHIFT)
95
+ .toString()
96
+ .padStart(SORT_KEY_SECONDS_WIDTH, "0");
97
+ return parsed.fraction ? `${seconds}.${parsed.fraction}` : seconds;
98
+ }
99
+ /** Only eligible top-level temporal schema properties may define candidate bounds. */
100
+ export function declaredTimeType(stream) {
101
+ const properties = stream.schema?.properties;
102
+ const property = properties?.[stream.consent_time_field ?? ""];
103
+ if (!property ||
104
+ !(property.type === "string" ||
105
+ (Array.isArray(property.type) &&
106
+ property.type.includes("string") &&
107
+ property.type.every((t) => t === "string" || t === "null"))))
108
+ return undefined;
109
+ return property.format === "date" || property.format === "date-time"
110
+ ? property.format
111
+ : undefined;
112
+ }
113
+ /**
114
+ * The instant an untyped (current or private-v0.2) authorization bound names,
115
+ * as an RFC 3339 date-time, or `null` if it names none.
116
+ *
117
+ * The one interpretation of those bounds for AS validation, minimum checks and
118
+ * narrowing and for RS enforcement. Existing AS profiles accept Date.parse
119
+ * syntax; a strict RFC 3339 value keeps its exact precision. A full date is
120
+ * midnight UTC. Date.parse would give offset-less syntax the host's zone, so
121
+ * those bounds are read in UTC on every host; an explicit offset is kept.
122
+ */
123
+ export function legacyTimeBound(input) {
124
+ const normalized = /^\d{4}-\d{2}-\d{2}$/.test(input)
125
+ ? `${input}T00:00:00Z`
126
+ : input;
127
+ if (parseTime(normalized, "date-time"))
128
+ return normalized;
129
+ const explicitZone = /(?:[zZ]|(?:GMT|UTC|UT|[ECMP][SD]T)(?:[+-]\d{1,4})?|\s[+-]\d{4}|(?:[Tt]|\s)\d{1,2}:\d{2}(?::\d{2}(?:\.\d+)?)?[+-]\d{2}:?\d{2})$/.test(input.trim());
130
+ const offsetlessIso = /^\d{4}-\d{2}-\d{2}[Tt]\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?$/.test(input);
131
+ const portable = explicitZone
132
+ ? input
133
+ : offsetlessIso
134
+ ? `${input}Z`
135
+ : `${input} UTC`;
136
+ const legacy = Date.parse(portable);
137
+ return Number.isFinite(legacy) ? new Date(legacy).toISOString() : null;
138
+ }
139
+ /** Order two untyped bounds by the instants they name; `null` if either names none. */
140
+ export function compareLegacyTimeBounds(a, b) {
141
+ const left = legacyTimeBound(a), right = legacyTimeBound(b);
142
+ return left === null || right === null
143
+ ? null
144
+ : compareTime(left, right, "date-time");
145
+ }
146
+ /** Current untyped bounds historically accept full dates as midnight UTC. */
147
+ export function withinTimeRange(value, constraint) {
148
+ const type = constraint.type ?? "date-time";
149
+ // Untyped grants keep their Date.parse bound syntax through
150
+ // `legacyTimeBound`; stored record values always stay strict.
151
+ const bound = (input) => constraint.type === undefined ? legacyTimeBound(input) : input;
152
+ const record = constraint.type === undefined &&
153
+ typeof value === "string" &&
154
+ /^\d{4}-\d{2}-\d{2}$/.test(value)
155
+ ? `${value}T00:00:00Z`
156
+ : value;
157
+ if (!parseTime(record, type))
158
+ return false;
159
+ if (constraint.since !== undefined) {
160
+ const since = bound(constraint.since);
161
+ const order = since === null ? null : compareTime(record, since, type);
162
+ if (order === null || order < 0)
163
+ return false;
164
+ }
165
+ if (constraint.until !== undefined) {
166
+ const until = bound(constraint.until);
167
+ const order = until === null ? null : compareTime(record, until, type);
168
+ if (order === null || order >= 0)
169
+ return false;
170
+ }
171
+ return true;
172
+ }
173
+ //# sourceMappingURL=time.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"time.js","sourceRoot":"","sources":["../../src/pdpp/time.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/pdpp/tokens.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../src/pdpp/tokens.ts"],"names":[],"mappings":"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"}
@@ -17,7 +17,7 @@
17
17
  */
18
18
  import { verifyCodeVerifier } from "./pkce.js";
19
19
  import { newOpaqueToken, } from "./store.js";
20
- import { isV02Grant, PDPP_DATA_ACCESS_TYPE, PDPP_DATA_ACCESS_TYPE_V02, } from "./types.js";
20
+ import { isV02Grant, grantIsCandidate, PDPP_DATA_ACCESS_TYPE_CANDIDATE, PDPP_DATA_ACCESS_TYPE, PDPP_DATA_ACCESS_TYPE_V02, } from "./types.js";
21
21
  /** Default client access-token lifetime. Short: the refresh path renews it. */
22
22
  export const DEFAULT_ACCESS_TOKEN_TTL_SECONDS = 60 * 60;
23
23
  /** How long an authorization code stays redeemable. RFC 6749 §4.1.2 suggests <=10 min. */
@@ -406,7 +406,9 @@ export function toAuthorizationEntry(grant) {
406
406
  }
407
407
  export function toAuthorizationDetail(grant) {
408
408
  return {
409
- type: PDPP_DATA_ACCESS_TYPE,
409
+ type: grantIsCandidate(grant)
410
+ ? PDPP_DATA_ACCESS_TYPE_CANDIDATE
411
+ : PDPP_DATA_ACCESS_TYPE,
410
412
  source: grant.source,
411
413
  purpose_code: grant.purpose_code,
412
414
  ...(grant.purpose_description && {
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/pdpp/tokens.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EACL,cAAc,GAGf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,UAAU,EACV,qBAAqB,EACrB,yBAAyB,GAQ1B,MAAM,YAAY,CAAC;AAEpB,+EAA+E;AAC/E,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,GAAG,EAAE,CAAC;AAExD,0FAA0F;AAC1F,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAmCjD;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,WAAyB;IAC5D,OAAO,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,mBAAmB,CAC1B,KAAoB,EACpB,MAAmB,EACnB,GAAS;IAET,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IACjD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,eAAe,CAAC;IACjD,OAAO,IAAI,CAAC;AACd,CAAC;AAMD,MAAM,OAAO,gBAAgB;IAIR;IAHF,SAAS,CAAS;IAEnC,YACmB,KAAoB,EACrC,UAAmC,EAAE;QADpB,UAAK,GAAL,KAAK,CAAe;QAGrC,IAAI,CAAC,SAAS;YACZ,OAAO,CAAC,qBAAqB,IAAI,gCAAgC,CAAC;IACtE,CAAC;IAED;;;;;;;OAOG;IACH,uBAAuB,CAAC,KAOvB;QACC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;QAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,wEAAwE;YACxE,kDAAkD;YAClD,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EACL,6DAA6D;iBAChE;aACF,CAAC;QACJ,CAAC;QAED,uEAAuE;QACvE,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,MAAM,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;YACvC,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,kDAAkD;iBAC5D;aACF,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,WAAW,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC;YAC7C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,uDAAuD;iBACjE;aACF,CAAC;QACJ,CAAC;QAED,uEAAuE;QACvE,0EAA0E;QAC1E,2EAA2E;QAC3E,0CAA0C;QAC1C,MAAM,WAAW,GAAG,kBAAkB,CACpC,KAAK,CAAC,YAAY,EAClB,MAAM,CAAC,aAAa,EACpB,MAAM,CAAC,mBAAmB,CAC3B,CAAC;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE;aACjE,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,iBAAiB,EAAE;aAC/D,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9D,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,YAAY,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE;iBAC5E;aACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,KAA2C;QACjD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;QAExE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EACL,QAAQ,CAAC,MAAM,KAAK,gBAAgB;wBAClC,CAAC,CAAC,qGAAqG;wBACvG,CAAC,CAAC,mDAAmD;iBAC1D;aACF,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,iBAAiB,EAAE;aAC/D,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9D,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,YAAY,QAAQ,KAAK,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAAE;iBAC5E;aACF,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;OAOG;IACK,YAAY,CAClB,MAAmB,EACnB,GAAS,EACT,gBAAyB;QAEzB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;QACzB,MAAM,UAAU,GAAG,oBAAoB,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC;QAE7D,IAAI,QAAQ,GAAkB,gBAAgB,IAAI,IAAI,CAAC;QACvD,IAAI,UAAU,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YACpC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,WAAW,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QAC9C,2EAA2E;QAC3E,0EAA0E;QAC1E,uBAAuB;QACvB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAClE,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzE,MAAM,eAAe,GACnB,WAAW,IAAI,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAEnE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;YACzC,KAAK,EAAE,WAAW;YAClB,OAAO,EAAE,KAAK,CAAC,QAAQ;YACvB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS;YAChC,SAAS,EAAE,QAAQ;YACnB,QAAQ;YACR,SAAS,EAAE,eAAe,CAAC,WAAW,EAAE;YACxC,yEAAyE;YACzE,iEAAiE;YACjE,gBAAgB,EACd,KAAK,CAAC,WAAW,KAAK,YAAY,IAAI,gBAAgB,KAAK,SAAS;YACtE,GAAG;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,OAAO,EAAE;oBACP,IAAI,EAAE,eAAe;oBACrB,OAAO,EACL,+FAA+F;iBAClG;aACF,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CACxB,CAAC,EACD,IAAI,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAC/D,CAAC;QAEF,IAAI,YAAgC,CAAC;QACrC,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;YAC3B,YAAY,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO;YACL,EAAE,EAAE,IAAI;YACR,MAAM,EAAE;gBACN,YAAY,EAAE,WAAW;gBACzB,UAAU,EAAE,QAAQ;gBACpB,UAAU,EAAE,SAAS;gBACrB,GAAG,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC;gBACpD,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,qBAAqB,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;aACrD;SACF,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,YAAY,CAAC,WAAmB,EAAE,MAAY,IAAI,IAAI,EAAE;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,yEAAyE;QACzE,sEAAsE;QACtE,gEAAgE;QAChE,wEAAwE;QACxE,iEAAiE;QACjE,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACnD,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;YACtD,CAAC;YACD,MAAM,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YACnE,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;YAC1D,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC;YACtE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,2EAA2E;QAC3E,yEAAyE;QACzE,oEAAoE;QACpE,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YACnE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;YACjC,qEAAqE;YACrE,2DAA2D;YAC3D,OAAO;gBACL,MAAM,EAAE,IAAI;gBACZ,SAAS,EAAE,OAAO;gBAClB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,GAAG,CAAC,MAAM,CAAC,aAAa,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;gBAC/D,GAAG,CAAC,MAAM,CAAC,gBAAgB,IAAI;oBAC7B,WAAW,EAAE,MAAM,CAAC,gBAAgB;iBACrC,CAAC;gBACF,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;aACzD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,+DAA+D;YAC/D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC;QACtD,CAAC;QAED,MAAM,QAAQ,GAAG,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAC9D,IAAI,QAAQ,EAAE,CAAC;YACb,mEAAmE;YACnE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC;QACrD,CAAC;QAED,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS;YACvC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;SACzD,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,UAAU,CACR,WAAmB,EACnB,MAAY,IAAI,IAAI,EAAE;QAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,GAA8B;YACtC,MAAM,EAAE,IAAI;YACZ,eAAe,EAAE,OAAO,CAAC,SAAS;YAClC,UAAU,EAAE,OAAO,CAAC,SAAS;YAC7B,GAAG,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxD,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;YACjE,GAAG,CAAC,OAAO,CAAC,SAAS,IAAI;gBACvB,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;aACtD,CAAC;SACH,CAAC;QAEF,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,GAAG,IAAI;YACP,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;YAChC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS;YACzC,2EAA2E;YAC3E,qBAAqB,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC7D,CAAC;IACJ,CAAC;IAED,+EAA+E;IAC/E,WAAW,CAAC,OAAe,EAAE,MAAY,IAAI,IAAI,EAAE;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,KAMf;QACC,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,IAAI,IAAI,CAAC,SAAS,CAAC;QAC/C,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;YAC1B,KAAK;YACL,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,OAAO;YAClB,aAAa,EAAE,KAAK,CAAC,QAAQ;YAC7B,gBAAgB,EAAE,KAAK,CAAC,WAAW;YACnC,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;YAClC,gBAAgB,EAAE,KAAK;YACvB,GAAG;SACJ,CAAC,CAAC;QAEH,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;IACxE,CAAC;IAED,+DAA+D;IAC/D,iBAAiB,CAAC,KAAa,EAAE,MAAY,IAAI,IAAI,EAAE;QACrD,OAAO,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAClD,CAAC;CACF;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAY;IAC/C,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAY;IAChD,OAAO;QACL,IAAI,EAAE,qBAAqB;QAC3B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,GAAG,CAAC,KAAK,CAAC,mBAAmB,IAAI;YAC/B,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;SAC/C,CAAC;QACF,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/pdpp/tokens.ts"],"names":[],"mappings":"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"}