@golocalinteractive/golocal-cloud-wrapper 1.0.54 → 1.0.56

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 (312) hide show
  1. package/dist/golocal-cloud-wrapper.css +2 -1
  2. package/dist/golocal-cloud-wrapper.es.js +88 -17632
  3. package/dist/golocal-cloud-wrapper.es10.js +66 -0
  4. package/dist/golocal-cloud-wrapper.es100.js +4 -0
  5. package/dist/golocal-cloud-wrapper.es101.js +62 -0
  6. package/dist/golocal-cloud-wrapper.es102.js +77 -0
  7. package/dist/golocal-cloud-wrapper.es103.js +4 -0
  8. package/dist/golocal-cloud-wrapper.es104.js +41 -0
  9. package/dist/golocal-cloud-wrapper.es105.js +4 -0
  10. package/dist/golocal-cloud-wrapper.es106.js +106 -0
  11. package/dist/golocal-cloud-wrapper.es107.js +148 -0
  12. package/dist/golocal-cloud-wrapper.es108.js +28 -0
  13. package/dist/golocal-cloud-wrapper.es109.js +51 -0
  14. package/dist/golocal-cloud-wrapper.es11.js +233 -0
  15. package/dist/golocal-cloud-wrapper.es110.js +25 -0
  16. package/dist/golocal-cloud-wrapper.es111.js +30 -0
  17. package/dist/golocal-cloud-wrapper.es112.js +82 -0
  18. package/dist/golocal-cloud-wrapper.es113.js +125 -0
  19. package/dist/golocal-cloud-wrapper.es114.js +39 -0
  20. package/dist/golocal-cloud-wrapper.es115.js +38 -0
  21. package/dist/golocal-cloud-wrapper.es116.js +7 -0
  22. package/dist/golocal-cloud-wrapper.es117.js +4 -0
  23. package/dist/golocal-cloud-wrapper.es118.js +4 -0
  24. package/dist/golocal-cloud-wrapper.es119.js +4 -0
  25. package/dist/golocal-cloud-wrapper.es12.js +23 -0
  26. package/dist/golocal-cloud-wrapper.es120.js +208 -0
  27. package/dist/golocal-cloud-wrapper.es121.js +145 -0
  28. package/dist/golocal-cloud-wrapper.es122.js +58 -0
  29. package/dist/golocal-cloud-wrapper.es123.js +34 -0
  30. package/dist/golocal-cloud-wrapper.es124.js +4 -0
  31. package/dist/golocal-cloud-wrapper.es125.js +39 -0
  32. package/dist/golocal-cloud-wrapper.es126.js +4 -0
  33. package/dist/golocal-cloud-wrapper.es127.js +4 -0
  34. package/dist/golocal-cloud-wrapper.es128.js +224 -0
  35. package/dist/golocal-cloud-wrapper.es129.js +4 -0
  36. package/dist/golocal-cloud-wrapper.es13.js +24 -0
  37. package/dist/golocal-cloud-wrapper.es130.js +4 -0
  38. package/dist/golocal-cloud-wrapper.es131.js +35 -0
  39. package/dist/golocal-cloud-wrapper.es132.js +4 -0
  40. package/dist/golocal-cloud-wrapper.es133.js +23 -0
  41. package/dist/golocal-cloud-wrapper.es134.js +123 -0
  42. package/dist/golocal-cloud-wrapper.es135.js +469 -0
  43. package/dist/golocal-cloud-wrapper.es136.js +46 -0
  44. package/dist/golocal-cloud-wrapper.es137.js +71 -0
  45. package/dist/golocal-cloud-wrapper.es138.js +66 -0
  46. package/dist/golocal-cloud-wrapper.es139.js +4 -0
  47. package/dist/golocal-cloud-wrapper.es14.js +115 -0
  48. package/dist/golocal-cloud-wrapper.es140.js +27 -0
  49. package/dist/golocal-cloud-wrapper.es141.js +66 -0
  50. package/dist/golocal-cloud-wrapper.es142.js +27 -0
  51. package/dist/golocal-cloud-wrapper.es143.js +5 -0
  52. package/dist/golocal-cloud-wrapper.es144.js +650 -0
  53. package/dist/golocal-cloud-wrapper.es145.js +301 -0
  54. package/dist/golocal-cloud-wrapper.es146.js +90 -0
  55. package/dist/golocal-cloud-wrapper.es147.js +83 -0
  56. package/dist/golocal-cloud-wrapper.es148.js +65 -0
  57. package/dist/golocal-cloud-wrapper.es149.js +1230 -0
  58. package/dist/golocal-cloud-wrapper.es15.js +641 -0
  59. package/dist/golocal-cloud-wrapper.es150.js +8 -0
  60. package/dist/golocal-cloud-wrapper.es151.js +15 -0
  61. package/dist/golocal-cloud-wrapper.es152.js +139 -0
  62. package/dist/golocal-cloud-wrapper.es153.js +23 -0
  63. package/dist/golocal-cloud-wrapper.es154.js +132 -0
  64. package/dist/golocal-cloud-wrapper.es155.js +19 -0
  65. package/dist/golocal-cloud-wrapper.es156.js +37 -0
  66. package/dist/golocal-cloud-wrapper.es157.js +49 -0
  67. package/dist/golocal-cloud-wrapper.es158.js +10 -0
  68. package/dist/golocal-cloud-wrapper.es159.js +5 -0
  69. package/dist/golocal-cloud-wrapper.es16.js +17 -0
  70. package/dist/golocal-cloud-wrapper.es160.js +35 -0
  71. package/dist/golocal-cloud-wrapper.es161.js +174 -0
  72. package/dist/golocal-cloud-wrapper.es162.js +21 -0
  73. package/dist/golocal-cloud-wrapper.es163.js +4 -0
  74. package/dist/golocal-cloud-wrapper.es164.js +330 -0
  75. package/dist/golocal-cloud-wrapper.es165.js +4 -0
  76. package/dist/golocal-cloud-wrapper.es166.js +34 -0
  77. package/dist/golocal-cloud-wrapper.es167.js +40 -0
  78. package/dist/golocal-cloud-wrapper.es168.js +30 -0
  79. package/dist/golocal-cloud-wrapper.es169.js +62 -0
  80. package/dist/golocal-cloud-wrapper.es17.js +26 -0
  81. package/dist/golocal-cloud-wrapper.es170.js +4 -0
  82. package/dist/golocal-cloud-wrapper.es171.js +340 -0
  83. package/dist/golocal-cloud-wrapper.es172.js +4 -0
  84. package/dist/golocal-cloud-wrapper.es173.js +4 -0
  85. package/dist/golocal-cloud-wrapper.es174.js +4 -0
  86. package/dist/golocal-cloud-wrapper.es175.js +4 -0
  87. package/dist/golocal-cloud-wrapper.es176.js +4 -0
  88. package/dist/golocal-cloud-wrapper.es177.js +24 -0
  89. package/dist/golocal-cloud-wrapper.es178.js +4 -0
  90. package/dist/golocal-cloud-wrapper.es179.js +24 -0
  91. package/dist/golocal-cloud-wrapper.es18.js +5 -0
  92. package/dist/golocal-cloud-wrapper.es180.js +98 -0
  93. package/dist/golocal-cloud-wrapper.es181.js +4 -0
  94. package/dist/golocal-cloud-wrapper.es182.js +46 -0
  95. package/dist/golocal-cloud-wrapper.es183.js +35 -0
  96. package/dist/golocal-cloud-wrapper.es184.js +61 -0
  97. package/dist/golocal-cloud-wrapper.es185.js +4 -0
  98. package/dist/golocal-cloud-wrapper.es186.js +4 -0
  99. package/dist/golocal-cloud-wrapper.es187.js +4 -0
  100. package/dist/golocal-cloud-wrapper.es188.js +23 -0
  101. package/dist/golocal-cloud-wrapper.es189.js +4 -0
  102. package/dist/golocal-cloud-wrapper.es19.js +110 -0
  103. package/dist/golocal-cloud-wrapper.es190.js +4 -0
  104. package/dist/golocal-cloud-wrapper.es191.js +720 -0
  105. package/dist/golocal-cloud-wrapper.es192.js +153 -0
  106. package/dist/golocal-cloud-wrapper.es193.js +166 -0
  107. package/dist/golocal-cloud-wrapper.es194.js +49 -0
  108. package/dist/golocal-cloud-wrapper.es195.js +71 -0
  109. package/dist/golocal-cloud-wrapper.es196.js +25 -0
  110. package/dist/golocal-cloud-wrapper.es197.js +5 -0
  111. package/dist/golocal-cloud-wrapper.es198.js +118 -0
  112. package/dist/golocal-cloud-wrapper.es199.js +16 -0
  113. package/dist/golocal-cloud-wrapper.es20.js +12 -0
  114. package/dist/golocal-cloud-wrapper.es200.js +4 -0
  115. package/dist/golocal-cloud-wrapper.es201.js +429 -0
  116. package/dist/golocal-cloud-wrapper.es202.js +335 -0
  117. package/dist/golocal-cloud-wrapper.es203.js +235 -0
  118. package/dist/golocal-cloud-wrapper.es204.js +38 -0
  119. package/dist/golocal-cloud-wrapper.es205.js +88 -0
  120. package/dist/golocal-cloud-wrapper.es206.js +47 -0
  121. package/dist/golocal-cloud-wrapper.es207.js +13 -0
  122. package/dist/golocal-cloud-wrapper.es208.js +19 -0
  123. package/dist/golocal-cloud-wrapper.es209.js +102 -0
  124. package/dist/golocal-cloud-wrapper.es21.js +185 -0
  125. package/dist/golocal-cloud-wrapper.es210.js +4 -0
  126. package/dist/golocal-cloud-wrapper.es211.js +4 -0
  127. package/dist/golocal-cloud-wrapper.es212.js +24 -0
  128. package/dist/golocal-cloud-wrapper.es213.js +30 -0
  129. package/dist/golocal-cloud-wrapper.es214.js +30 -0
  130. package/dist/golocal-cloud-wrapper.es215.js +34 -0
  131. package/dist/golocal-cloud-wrapper.es216.js +4 -0
  132. package/dist/golocal-cloud-wrapper.es217.js +4 -0
  133. package/dist/golocal-cloud-wrapper.es218.js +48 -0
  134. package/dist/golocal-cloud-wrapper.es219.js +33 -0
  135. package/dist/golocal-cloud-wrapper.es22.js +23 -0
  136. package/dist/golocal-cloud-wrapper.es220.js +30 -0
  137. package/dist/golocal-cloud-wrapper.es221.js +4 -0
  138. package/dist/golocal-cloud-wrapper.es222.js +4 -0
  139. package/dist/golocal-cloud-wrapper.es223.js +78 -0
  140. package/dist/golocal-cloud-wrapper.es224.js +4 -0
  141. package/dist/golocal-cloud-wrapper.es225.js +4 -0
  142. package/dist/golocal-cloud-wrapper.es226.js +4 -0
  143. package/dist/golocal-cloud-wrapper.es227.js +4 -0
  144. package/dist/golocal-cloud-wrapper.es228.js +4 -0
  145. package/dist/golocal-cloud-wrapper.es229.js +24 -0
  146. package/dist/golocal-cloud-wrapper.es23.js +38 -0
  147. package/dist/golocal-cloud-wrapper.es230.js +4 -0
  148. package/dist/golocal-cloud-wrapper.es231.js +4 -0
  149. package/dist/golocal-cloud-wrapper.es232.js +202 -0
  150. package/dist/golocal-cloud-wrapper.es233.js +97 -0
  151. package/dist/golocal-cloud-wrapper.es234.js +4 -0
  152. package/dist/golocal-cloud-wrapper.es235.js +173 -0
  153. package/dist/golocal-cloud-wrapper.es236.js +4 -0
  154. package/dist/golocal-cloud-wrapper.es237.js +21 -0
  155. package/dist/golocal-cloud-wrapper.es238.js +30 -0
  156. package/dist/golocal-cloud-wrapper.es239.js +154 -0
  157. package/dist/golocal-cloud-wrapper.es24.js +16 -0
  158. package/dist/golocal-cloud-wrapper.es240.js +131 -0
  159. package/dist/golocal-cloud-wrapper.es241.js +61 -0
  160. package/dist/golocal-cloud-wrapper.es242.js +42 -0
  161. package/dist/golocal-cloud-wrapper.es243.js +89 -0
  162. package/dist/golocal-cloud-wrapper.es244.js +24 -0
  163. package/dist/golocal-cloud-wrapper.es245.js +19 -0
  164. package/dist/golocal-cloud-wrapper.es246.js +127 -0
  165. package/dist/golocal-cloud-wrapper.es247.js +24 -0
  166. package/dist/golocal-cloud-wrapper.es248.js +33 -0
  167. package/dist/golocal-cloud-wrapper.es249.js +12 -0
  168. package/dist/golocal-cloud-wrapper.es25.js +17 -0
  169. package/dist/golocal-cloud-wrapper.es250.js +24 -0
  170. package/dist/golocal-cloud-wrapper.es251.js +17 -0
  171. package/dist/golocal-cloud-wrapper.es252.js +78 -0
  172. package/dist/golocal-cloud-wrapper.es253.js +19 -0
  173. package/dist/golocal-cloud-wrapper.es254.js +102 -0
  174. package/dist/golocal-cloud-wrapper.es255.js +29 -0
  175. package/dist/golocal-cloud-wrapper.es256.js +151 -0
  176. package/dist/golocal-cloud-wrapper.es257.js +4 -0
  177. package/dist/golocal-cloud-wrapper.es258.js +76 -0
  178. package/dist/golocal-cloud-wrapper.es259.js +92 -0
  179. package/dist/golocal-cloud-wrapper.es26.js +102 -0
  180. package/dist/golocal-cloud-wrapper.es260.js +71 -0
  181. package/dist/golocal-cloud-wrapper.es261.js +124 -0
  182. package/dist/golocal-cloud-wrapper.es262.js +35 -0
  183. package/dist/golocal-cloud-wrapper.es263.js +7 -0
  184. package/dist/golocal-cloud-wrapper.es264.js +23 -0
  185. package/dist/golocal-cloud-wrapper.es265.js +102 -0
  186. package/dist/golocal-cloud-wrapper.es266.js +106 -0
  187. package/dist/golocal-cloud-wrapper.es267.js +4 -0
  188. package/dist/golocal-cloud-wrapper.es268.js +4 -0
  189. package/dist/golocal-cloud-wrapper.es269.js +38 -0
  190. package/dist/golocal-cloud-wrapper.es27.js +45 -0
  191. package/dist/golocal-cloud-wrapper.es270.js +4 -0
  192. package/dist/golocal-cloud-wrapper.es271.js +4 -0
  193. package/dist/golocal-cloud-wrapper.es272.js +4 -0
  194. package/dist/golocal-cloud-wrapper.es273.js +4 -0
  195. package/dist/golocal-cloud-wrapper.es274.js +4 -0
  196. package/dist/golocal-cloud-wrapper.es275.js +4 -0
  197. package/dist/golocal-cloud-wrapper.es276.js +4 -0
  198. package/dist/golocal-cloud-wrapper.es277.js +11 -0
  199. package/dist/golocal-cloud-wrapper.es278.js +29 -0
  200. package/dist/golocal-cloud-wrapper.es279.js +4 -0
  201. package/dist/golocal-cloud-wrapper.es28.js +8 -0
  202. package/dist/golocal-cloud-wrapper.es280.js +4 -0
  203. package/dist/golocal-cloud-wrapper.es281.js +4 -0
  204. package/dist/golocal-cloud-wrapper.es282.js +4 -0
  205. package/dist/golocal-cloud-wrapper.es283.js +5 -0
  206. package/dist/golocal-cloud-wrapper.es284.js +36 -0
  207. package/dist/golocal-cloud-wrapper.es285.js +46 -0
  208. package/dist/golocal-cloud-wrapper.es286.js +55 -0
  209. package/dist/golocal-cloud-wrapper.es287.js +41 -0
  210. package/dist/golocal-cloud-wrapper.es288.js +70 -0
  211. package/dist/golocal-cloud-wrapper.es289.js +20 -0
  212. package/dist/golocal-cloud-wrapper.es29.js +13 -0
  213. package/dist/golocal-cloud-wrapper.es290.js +8 -0
  214. package/dist/golocal-cloud-wrapper.es291.js +4 -0
  215. package/dist/golocal-cloud-wrapper.es292.js +58 -0
  216. package/dist/golocal-cloud-wrapper.es293.js +31 -0
  217. package/dist/golocal-cloud-wrapper.es294.js +6 -0
  218. package/dist/golocal-cloud-wrapper.es295.js +11 -0
  219. package/dist/golocal-cloud-wrapper.es296.js +24 -0
  220. package/dist/golocal-cloud-wrapper.es297.js +32 -0
  221. package/dist/golocal-cloud-wrapper.es298.js +12 -0
  222. package/dist/golocal-cloud-wrapper.es299.js +10 -0
  223. package/dist/golocal-cloud-wrapper.es3.js +22 -0
  224. package/dist/golocal-cloud-wrapper.es30.js +13 -0
  225. package/dist/golocal-cloud-wrapper.es300.js +10 -0
  226. package/dist/golocal-cloud-wrapper.es301.js +159 -0
  227. package/dist/golocal-cloud-wrapper.es302.js +24 -0
  228. package/dist/golocal-cloud-wrapper.es303.js +21 -0
  229. package/dist/golocal-cloud-wrapper.es304.js +16 -0
  230. package/dist/golocal-cloud-wrapper.es305.js +48 -0
  231. package/dist/golocal-cloud-wrapper.es306.js +9 -0
  232. package/dist/golocal-cloud-wrapper.es307.js +37 -0
  233. package/dist/golocal-cloud-wrapper.es308.js +8 -0
  234. package/dist/golocal-cloud-wrapper.es309.js +9 -0
  235. package/dist/golocal-cloud-wrapper.es31.js +299 -0
  236. package/dist/golocal-cloud-wrapper.es310.js +15 -0
  237. package/dist/golocal-cloud-wrapper.es32.js +13 -0
  238. package/dist/golocal-cloud-wrapper.es33.js +13 -0
  239. package/dist/golocal-cloud-wrapper.es34.js +30 -0
  240. package/dist/golocal-cloud-wrapper.es35.js +342 -0
  241. package/dist/golocal-cloud-wrapper.es36.js +16 -0
  242. package/dist/golocal-cloud-wrapper.es37.js +16 -0
  243. package/dist/golocal-cloud-wrapper.es38.js +16 -0
  244. package/dist/golocal-cloud-wrapper.es39.js +491 -0
  245. package/dist/golocal-cloud-wrapper.es4.js +20 -0
  246. package/dist/golocal-cloud-wrapper.es40.js +17 -0
  247. package/dist/golocal-cloud-wrapper.es41.js +4 -0
  248. package/dist/golocal-cloud-wrapper.es42.js +41 -0
  249. package/dist/golocal-cloud-wrapper.es43.js +274 -0
  250. package/dist/golocal-cloud-wrapper.es44.js +4 -0
  251. package/dist/golocal-cloud-wrapper.es45.js +30 -0
  252. package/dist/golocal-cloud-wrapper.es46.js +22 -0
  253. package/dist/golocal-cloud-wrapper.es47.js +16 -0
  254. package/dist/golocal-cloud-wrapper.es48.js +18 -0
  255. package/dist/golocal-cloud-wrapper.es49.js +22 -0
  256. package/dist/golocal-cloud-wrapper.es5.js +12 -0
  257. package/dist/golocal-cloud-wrapper.es50.js +22 -0
  258. package/dist/golocal-cloud-wrapper.es51.js +26 -0
  259. package/dist/golocal-cloud-wrapper.es52.js +22 -0
  260. package/dist/golocal-cloud-wrapper.es53.js +17 -0
  261. package/dist/golocal-cloud-wrapper.es54.js +4 -0
  262. package/dist/golocal-cloud-wrapper.es55.js +4 -0
  263. package/dist/golocal-cloud-wrapper.es56.js +39 -0
  264. package/dist/golocal-cloud-wrapper.es57.js +17 -0
  265. package/dist/golocal-cloud-wrapper.es58.js +2959 -0
  266. package/dist/golocal-cloud-wrapper.es59.js +417 -0
  267. package/dist/golocal-cloud-wrapper.es6.js +68 -0
  268. package/dist/golocal-cloud-wrapper.es60.js +25 -0
  269. package/dist/golocal-cloud-wrapper.es61.js +28 -0
  270. package/dist/golocal-cloud-wrapper.es62.js +32 -0
  271. package/dist/golocal-cloud-wrapper.es63.js +41 -0
  272. package/dist/golocal-cloud-wrapper.es64.js +20 -0
  273. package/dist/golocal-cloud-wrapper.es65.js +11 -0
  274. package/dist/golocal-cloud-wrapper.es66.js +81 -0
  275. package/dist/golocal-cloud-wrapper.es67.js +14 -0
  276. package/dist/golocal-cloud-wrapper.es68.js +71 -0
  277. package/dist/golocal-cloud-wrapper.es69.js +212 -0
  278. package/dist/golocal-cloud-wrapper.es7.js +16 -0
  279. package/dist/golocal-cloud-wrapper.es70.js +208 -0
  280. package/dist/golocal-cloud-wrapper.es71.js +18 -0
  281. package/dist/golocal-cloud-wrapper.es72.js +129 -0
  282. package/dist/golocal-cloud-wrapper.es73.js +43 -0
  283. package/dist/golocal-cloud-wrapper.es74.js +29 -0
  284. package/dist/golocal-cloud-wrapper.es75.js +11 -0
  285. package/dist/golocal-cloud-wrapper.es76.js +122 -0
  286. package/dist/golocal-cloud-wrapper.es77.js +880 -0
  287. package/dist/golocal-cloud-wrapper.es78.js +288 -0
  288. package/dist/golocal-cloud-wrapper.es79.js +36 -0
  289. package/dist/golocal-cloud-wrapper.es8.js +48 -0
  290. package/dist/golocal-cloud-wrapper.es80.js +12 -0
  291. package/dist/golocal-cloud-wrapper.es81.js +334 -0
  292. package/dist/golocal-cloud-wrapper.es82.js +5 -0
  293. package/dist/golocal-cloud-wrapper.es83.js +8 -0
  294. package/dist/golocal-cloud-wrapper.es84.js +58 -0
  295. package/dist/golocal-cloud-wrapper.es85.js +5 -0
  296. package/dist/golocal-cloud-wrapper.es86.js +104 -0
  297. package/dist/golocal-cloud-wrapper.es87.js +468 -0
  298. package/dist/golocal-cloud-wrapper.es88.js +10 -0
  299. package/dist/golocal-cloud-wrapper.es89.js +6 -0
  300. package/dist/golocal-cloud-wrapper.es9.js +90 -0
  301. package/dist/golocal-cloud-wrapper.es90.js +14 -0
  302. package/dist/golocal-cloud-wrapper.es91.js +17 -0
  303. package/dist/golocal-cloud-wrapper.es92.js +70 -0
  304. package/dist/golocal-cloud-wrapper.es93.js +10 -0
  305. package/dist/golocal-cloud-wrapper.es94.js +227 -0
  306. package/dist/golocal-cloud-wrapper.es95.js +297 -0
  307. package/dist/golocal-cloud-wrapper.es96.js +25 -0
  308. package/dist/golocal-cloud-wrapper.es97.js +39 -0
  309. package/dist/golocal-cloud-wrapper.es98.js +616 -0
  310. package/dist/golocal-cloud-wrapper.es99.js +17 -0
  311. package/package.json +1 -1
  312. package/dist/golocal-cloud-wrapper.umd.js +0 -197
@@ -0,0 +1,301 @@
1
+ function stringifyCookie(c) {
2
+ var _a;
3
+ const attrs = [
4
+ "path" in c && c.path && `Path=${c.path}`,
5
+ "expires" in c && (c.expires || c.expires === 0) && `Expires=${(typeof c.expires === "number" ? new Date(c.expires) : c.expires).toUTCString()}`,
6
+ "maxAge" in c && typeof c.maxAge === "number" && `Max-Age=${c.maxAge}`,
7
+ "domain" in c && c.domain && `Domain=${c.domain}`,
8
+ "secure" in c && c.secure && "Secure",
9
+ "httpOnly" in c && c.httpOnly && "HttpOnly",
10
+ "sameSite" in c && c.sameSite && `SameSite=${c.sameSite}`,
11
+ "partitioned" in c && c.partitioned && "Partitioned",
12
+ "priority" in c && c.priority && `Priority=${c.priority}`
13
+ ].filter(Boolean);
14
+ const stringified = `${c.name}=${encodeURIComponent((_a = c.value) != null ? _a : "")}`;
15
+ return attrs.length === 0 ? stringified : `${stringified}; ${attrs.join("; ")}`;
16
+ }
17
+ function parseCookie(cookie) {
18
+ const map = /* @__PURE__ */ new Map();
19
+ for (const pair of cookie.split(/; */)) {
20
+ if (!pair)
21
+ continue;
22
+ const splitAt = pair.indexOf("=");
23
+ if (splitAt === -1) {
24
+ map.set(pair, "true");
25
+ continue;
26
+ }
27
+ const [key, value] = [pair.slice(0, splitAt), pair.slice(splitAt + 1)];
28
+ try {
29
+ map.set(key, decodeURIComponent(value != null ? value : "true"));
30
+ } catch {
31
+ }
32
+ }
33
+ return map;
34
+ }
35
+ function parseSetCookie(setCookie) {
36
+ if (!setCookie) {
37
+ return void 0;
38
+ }
39
+ const [[name, value], ...attributes] = parseCookie(setCookie);
40
+ const {
41
+ domain,
42
+ expires,
43
+ httponly,
44
+ maxage,
45
+ path,
46
+ samesite,
47
+ secure,
48
+ partitioned,
49
+ priority
50
+ } = Object.fromEntries(
51
+ attributes.map(([key, value2]) => [
52
+ key.toLowerCase().replace(/-/g, ""),
53
+ value2
54
+ ])
55
+ );
56
+ const cookie = {
57
+ name,
58
+ value: decodeURIComponent(value),
59
+ domain,
60
+ ...expires && { expires: new Date(expires) },
61
+ ...httponly && { httpOnly: true },
62
+ ...typeof maxage === "string" && { maxAge: Number(maxage) },
63
+ path,
64
+ ...samesite && { sameSite: parseSameSite(samesite) },
65
+ ...secure && { secure: true },
66
+ ...priority && { priority: parsePriority(priority) },
67
+ ...partitioned && { partitioned: true }
68
+ };
69
+ return compact(cookie);
70
+ }
71
+ function compact(t) {
72
+ const newT = {};
73
+ for (const key in t) {
74
+ if (t[key]) {
75
+ newT[key] = t[key];
76
+ }
77
+ }
78
+ return newT;
79
+ }
80
+ var SAME_SITE = ["strict", "lax", "none"];
81
+ function parseSameSite(string) {
82
+ string = string.toLowerCase();
83
+ return SAME_SITE.includes(string) ? string : void 0;
84
+ }
85
+ var PRIORITY = ["low", "medium", "high"];
86
+ function parsePriority(string) {
87
+ string = string.toLowerCase();
88
+ return PRIORITY.includes(string) ? string : void 0;
89
+ }
90
+ function splitCookiesString(cookiesString) {
91
+ if (!cookiesString)
92
+ return [];
93
+ var cookiesStrings = [];
94
+ var pos = 0;
95
+ var start;
96
+ var ch;
97
+ var lastComma;
98
+ var nextStart;
99
+ var cookiesSeparatorFound;
100
+ function skipWhitespace() {
101
+ while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) {
102
+ pos += 1;
103
+ }
104
+ return pos < cookiesString.length;
105
+ }
106
+ function notSpecialChar() {
107
+ ch = cookiesString.charAt(pos);
108
+ return ch !== "=" && ch !== ";" && ch !== ",";
109
+ }
110
+ while (pos < cookiesString.length) {
111
+ start = pos;
112
+ cookiesSeparatorFound = false;
113
+ while (skipWhitespace()) {
114
+ ch = cookiesString.charAt(pos);
115
+ if (ch === ",") {
116
+ lastComma = pos;
117
+ pos += 1;
118
+ skipWhitespace();
119
+ nextStart = pos;
120
+ while (pos < cookiesString.length && notSpecialChar()) {
121
+ pos += 1;
122
+ }
123
+ if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
124
+ cookiesSeparatorFound = true;
125
+ pos = nextStart;
126
+ cookiesStrings.push(cookiesString.substring(start, lastComma));
127
+ start = pos;
128
+ } else {
129
+ pos = lastComma + 1;
130
+ }
131
+ } else {
132
+ pos += 1;
133
+ }
134
+ }
135
+ if (!cookiesSeparatorFound || pos >= cookiesString.length) {
136
+ cookiesStrings.push(cookiesString.substring(start, cookiesString.length));
137
+ }
138
+ }
139
+ return cookiesStrings;
140
+ }
141
+ var RequestCookies = class {
142
+ constructor(requestHeaders) {
143
+ this._parsed = /* @__PURE__ */ new Map();
144
+ this._headers = requestHeaders;
145
+ const header = requestHeaders.get("cookie");
146
+ if (header) {
147
+ const parsed = parseCookie(header);
148
+ for (const [name, value] of parsed) {
149
+ this._parsed.set(name, { name, value });
150
+ }
151
+ }
152
+ }
153
+ [Symbol.iterator]() {
154
+ return this._parsed[Symbol.iterator]();
155
+ }
156
+ /**
157
+ * The amount of cookies received from the client
158
+ */
159
+ get size() {
160
+ return this._parsed.size;
161
+ }
162
+ get(...args) {
163
+ const name = typeof args[0] === "string" ? args[0] : args[0].name;
164
+ return this._parsed.get(name);
165
+ }
166
+ getAll(...args) {
167
+ var _a;
168
+ const all = Array.from(this._parsed);
169
+ if (!args.length) {
170
+ return all.map(([_, value]) => value);
171
+ }
172
+ const name = typeof args[0] === "string" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;
173
+ return all.filter(([n]) => n === name).map(([_, value]) => value);
174
+ }
175
+ has(name) {
176
+ return this._parsed.has(name);
177
+ }
178
+ set(...args) {
179
+ const [name, value] = args.length === 1 ? [args[0].name, args[0].value] : args;
180
+ const map = this._parsed;
181
+ map.set(name, { name, value });
182
+ this._headers.set(
183
+ "cookie",
184
+ Array.from(map).map(([_, value2]) => stringifyCookie(value2)).join("; ")
185
+ );
186
+ return this;
187
+ }
188
+ /**
189
+ * Delete the cookies matching the passed name or names in the request.
190
+ */
191
+ delete(names) {
192
+ const map = this._parsed;
193
+ const result = !Array.isArray(names) ? map.delete(names) : names.map((name) => map.delete(name));
194
+ this._headers.set(
195
+ "cookie",
196
+ Array.from(map).map(([_, value]) => stringifyCookie(value)).join("; ")
197
+ );
198
+ return result;
199
+ }
200
+ /**
201
+ * Delete all the cookies in the cookies in the request.
202
+ */
203
+ clear() {
204
+ this.delete(Array.from(this._parsed.keys()));
205
+ return this;
206
+ }
207
+ /**
208
+ * Format the cookies in the request as a string for logging
209
+ */
210
+ [Symbol.for("edge-runtime.inspect.custom")]() {
211
+ return `RequestCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;
212
+ }
213
+ toString() {
214
+ return [...this._parsed.values()].map((v) => `${v.name}=${encodeURIComponent(v.value)}`).join("; ");
215
+ }
216
+ };
217
+ var ResponseCookies = class {
218
+ constructor(responseHeaders) {
219
+ this._parsed = /* @__PURE__ */ new Map();
220
+ var _a, _b, _c;
221
+ this._headers = responseHeaders;
222
+ const setCookie = (_c = (_b = (_a = responseHeaders.getSetCookie) == null ? void 0 : _a.call(responseHeaders)) != null ? _b : responseHeaders.get("set-cookie")) != null ? _c : [];
223
+ const cookieStrings = Array.isArray(setCookie) ? setCookie : splitCookiesString(setCookie);
224
+ for (const cookieString of cookieStrings) {
225
+ const parsed = parseSetCookie(cookieString);
226
+ if (parsed)
227
+ this._parsed.set(parsed.name, parsed);
228
+ }
229
+ }
230
+ /**
231
+ * {@link https://wicg.github.io/cookie-store/#CookieStore-get CookieStore#get} without the Promise.
232
+ */
233
+ get(...args) {
234
+ const key = typeof args[0] === "string" ? args[0] : args[0].name;
235
+ return this._parsed.get(key);
236
+ }
237
+ /**
238
+ * {@link https://wicg.github.io/cookie-store/#CookieStore-getAll CookieStore#getAll} without the Promise.
239
+ */
240
+ getAll(...args) {
241
+ var _a;
242
+ const all = Array.from(this._parsed.values());
243
+ if (!args.length) {
244
+ return all;
245
+ }
246
+ const key = typeof args[0] === "string" ? args[0] : (_a = args[0]) == null ? void 0 : _a.name;
247
+ return all.filter((c) => c.name === key);
248
+ }
249
+ has(name) {
250
+ return this._parsed.has(name);
251
+ }
252
+ /**
253
+ * {@link https://wicg.github.io/cookie-store/#CookieStore-set CookieStore#set} without the Promise.
254
+ */
255
+ set(...args) {
256
+ const [name, value, cookie] = args.length === 1 ? [args[0].name, args[0].value, args[0]] : args;
257
+ const map = this._parsed;
258
+ map.set(name, normalizeCookie({ name, value, ...cookie }));
259
+ replace(map, this._headers);
260
+ return this;
261
+ }
262
+ /**
263
+ * {@link https://wicg.github.io/cookie-store/#CookieStore-delete CookieStore#delete} without the Promise.
264
+ */
265
+ delete(...args) {
266
+ const [name, options] = typeof args[0] === "string" ? [args[0]] : [args[0].name, args[0]];
267
+ return this.set({ ...options, name, value: "", expires: /* @__PURE__ */ new Date(0) });
268
+ }
269
+ [Symbol.for("edge-runtime.inspect.custom")]() {
270
+ return `ResponseCookies ${JSON.stringify(Object.fromEntries(this._parsed))}`;
271
+ }
272
+ toString() {
273
+ return [...this._parsed.values()].map(stringifyCookie).join("; ");
274
+ }
275
+ };
276
+ function replace(bag, headers) {
277
+ headers.delete("set-cookie");
278
+ for (const [, value] of bag) {
279
+ const serialized = stringifyCookie(value);
280
+ headers.append("set-cookie", serialized);
281
+ }
282
+ }
283
+ function normalizeCookie(cookie = { name: "", value: "" }) {
284
+ if (typeof cookie.expires === "number") {
285
+ cookie.expires = new Date(cookie.expires);
286
+ }
287
+ if (cookie.maxAge) {
288
+ cookie.expires = new Date(Date.now() + cookie.maxAge * 1e3);
289
+ }
290
+ if (cookie.path === null || cookie.path === void 0) {
291
+ cookie.path = "/";
292
+ }
293
+ return cookie;
294
+ }
295
+ export {
296
+ RequestCookies,
297
+ ResponseCookies,
298
+ parseCookie,
299
+ parseSetCookie,
300
+ stringifyCookie
301
+ };
@@ -0,0 +1,90 @@
1
+ import { decrypt, verifySigned, encrypt } from "./golocal-cloud-wrapper.es152.js";
2
+ import { AbstractSessionStore } from "./golocal-cloud-wrapper.es157.js";
3
+ import { LEGACY_COOKIE_NAME, normalizeStatefulSession } from "./golocal-cloud-wrapper.es204.js";
4
+ const generateId = () => {
5
+ const bytes = new Uint8Array(16);
6
+ crypto.getRandomValues(bytes);
7
+ return Array.from(bytes).map((b) => b.toString(16).padStart(2, "0")).join("");
8
+ };
9
+ class StatefulSessionStore extends AbstractSessionStore {
10
+ constructor({ secret, store, rolling, absoluteDuration, inactivityDuration, cookieOptions }) {
11
+ super({
12
+ secret,
13
+ rolling,
14
+ absoluteDuration,
15
+ inactivityDuration,
16
+ cookieOptions
17
+ });
18
+ this.store = store;
19
+ }
20
+ async get(reqCookies) {
21
+ const cookie = reqCookies.get(this.sessionCookieName) || reqCookies.get(LEGACY_COOKIE_NAME);
22
+ if (!cookie || !cookie.value) {
23
+ return null;
24
+ }
25
+ let sessionId = null;
26
+ try {
27
+ const { payload: sessionCookie } = await decrypt(cookie.value, this.secret);
28
+ sessionId = sessionCookie.id;
29
+ } catch (e) {
30
+ if (e.code === "ERR_JWE_INVALID") {
31
+ const legacySessionId = await verifySigned(cookie.name, cookie.value, this.secret);
32
+ if (!legacySessionId) {
33
+ return null;
34
+ }
35
+ sessionId = legacySessionId;
36
+ }
37
+ }
38
+ if (!sessionId) {
39
+ return null;
40
+ }
41
+ const session = await this.store.get(sessionId);
42
+ if (!session) {
43
+ return null;
44
+ }
45
+ return normalizeStatefulSession(session);
46
+ }
47
+ async set(reqCookies, resCookies, session, isNew = false) {
48
+ var _a;
49
+ let sessionId = null;
50
+ const cookieValue = (_a = reqCookies.get(this.sessionCookieName)) == null ? void 0 : _a.value;
51
+ if (cookieValue) {
52
+ const { payload: sessionCookie } = await decrypt(cookieValue, this.secret);
53
+ sessionId = sessionCookie.id;
54
+ }
55
+ if (sessionId && isNew) {
56
+ await this.store.delete(sessionId);
57
+ sessionId = generateId();
58
+ }
59
+ if (!sessionId) {
60
+ sessionId = generateId();
61
+ }
62
+ const maxAge = this.calculateMaxAge(session.internal.createdAt);
63
+ const expiration = Date.now() / 1e3 + maxAge;
64
+ const jwe = await encrypt({
65
+ id: sessionId
66
+ }, this.secret, expiration);
67
+ resCookies.set(this.sessionCookieName, jwe.toString(), {
68
+ ...this.cookieConfig,
69
+ maxAge
70
+ });
71
+ await this.store.set(sessionId, session);
72
+ reqCookies.set(this.sessionCookieName, jwe.toString());
73
+ if (this.sessionCookieName !== LEGACY_COOKIE_NAME && reqCookies.has(LEGACY_COOKIE_NAME)) {
74
+ resCookies.delete(LEGACY_COOKIE_NAME);
75
+ }
76
+ }
77
+ async delete(reqCookies, resCookies) {
78
+ var _a;
79
+ const cookieValue = (_a = reqCookies.get(this.sessionCookieName)) == null ? void 0 : _a.value;
80
+ await resCookies.delete(this.sessionCookieName);
81
+ if (!cookieValue) {
82
+ return;
83
+ }
84
+ const { payload: session } = await decrypt(cookieValue, this.secret);
85
+ await this.store.delete(session.id);
86
+ }
87
+ }
88
+ export {
89
+ StatefulSessionStore
90
+ };
@@ -0,0 +1,83 @@
1
+ import { getChunkedCookie, decrypt, encrypt, setChunkedCookie, deleteChunkedCookie } from "./golocal-cloud-wrapper.es152.js";
2
+ import { AbstractSessionStore } from "./golocal-cloud-wrapper.es157.js";
3
+ import { normalizeStatelessSession, LEGACY_COOKIE_NAME } from "./golocal-cloud-wrapper.es204.js";
4
+ import { ResponseCookies } from "./golocal-cloud-wrapper.es145.js";
5
+ class StatelessSessionStore extends AbstractSessionStore {
6
+ constructor({ secret, rolling, absoluteDuration, inactivityDuration, cookieOptions }) {
7
+ super({
8
+ secret,
9
+ rolling,
10
+ absoluteDuration,
11
+ inactivityDuration,
12
+ cookieOptions
13
+ });
14
+ this.connectionTokenSetsCookieName = "__FC";
15
+ }
16
+ async get(reqCookies) {
17
+ const cookieValue = getChunkedCookie(this.sessionCookieName, reqCookies) ?? getChunkedCookie(LEGACY_COOKIE_NAME, reqCookies, true);
18
+ if (!cookieValue) {
19
+ return null;
20
+ }
21
+ const originalSession = await decrypt(cookieValue, this.secret);
22
+ const normalizedStatelessSession = normalizeStatelessSession(originalSession);
23
+ const connectionTokenSets = await Promise.all(this.getConnectionTokenSetsCookies(reqCookies).map((cookie) => decrypt(cookie.value, this.secret)));
24
+ return {
25
+ ...normalizedStatelessSession,
26
+ // Ensure that when there are no connection token sets, we omit the property.
27
+ ...connectionTokenSets.length ? {
28
+ connectionTokenSets: connectionTokenSets.map((tokenSet) => tokenSet.payload)
29
+ } : {}
30
+ };
31
+ }
32
+ /**
33
+ * save adds the encrypted session cookie as a `Set-Cookie` header.
34
+ */
35
+ async set(reqCookies, resCookies, session) {
36
+ const { connectionTokenSets, ...originalSession } = session;
37
+ const maxAge = this.calculateMaxAge(session.internal.createdAt);
38
+ const expiration = Math.floor(Date.now() / 1e3) + maxAge;
39
+ const jwe = await encrypt(originalSession, this.secret, expiration);
40
+ const cookieValue = jwe.toString();
41
+ const options = {
42
+ ...this.cookieConfig,
43
+ maxAge
44
+ };
45
+ setChunkedCookie(this.sessionCookieName, cookieValue, options, reqCookies, resCookies);
46
+ if (connectionTokenSets == null ? void 0 : connectionTokenSets.length) {
47
+ await Promise.all(connectionTokenSets.map((connectionTokenSet, index) => this.storeInCookie(reqCookies, resCookies, connectionTokenSet, `${this.connectionTokenSetsCookieName}_${index}`, maxAge)));
48
+ }
49
+ deleteChunkedCookie(LEGACY_COOKIE_NAME, reqCookies, resCookies, true);
50
+ }
51
+ async delete(reqCookies, resCookies) {
52
+ deleteChunkedCookie(this.sessionCookieName, reqCookies, resCookies);
53
+ this.getConnectionTokenSetsCookies(reqCookies).forEach((cookie) => resCookies.delete(cookie.name));
54
+ }
55
+ async storeInCookie(reqCookies, resCookies, session, cookieName, maxAge) {
56
+ const expiration = Math.floor(Date.now() / 1e3 + maxAge);
57
+ const jwe = await encrypt(session, this.secret, expiration);
58
+ const cookieValue = jwe.toString();
59
+ resCookies.set(cookieName, jwe.toString(), {
60
+ ...this.cookieConfig,
61
+ maxAge
62
+ });
63
+ reqCookies.set(cookieName, cookieValue);
64
+ const cookieJarSizeTest = new ResponseCookies(new Headers());
65
+ cookieJarSizeTest.set(cookieName, cookieValue, {
66
+ ...this.cookieConfig,
67
+ maxAge
68
+ });
69
+ if (new TextEncoder().encode(cookieJarSizeTest.toString()).length >= 4096) {
70
+ if (cookieName === this.sessionCookieName) {
71
+ console.warn(`The ${cookieName} cookie size exceeds 4096 bytes, which may cause issues in some browsers. Consider removing any unnecessary custom claims from the access token or the user profile. Alternatively, you can use a stateful session implementation to store the session data in a data store.`);
72
+ } else {
73
+ console.warn(`The ${cookieName} cookie size exceeds 4096 bytes, which may cause issues in some browsers. You can use a stateful session implementation to store the session data in a data store.`);
74
+ }
75
+ }
76
+ }
77
+ getConnectionTokenSetsCookies(cookies) {
78
+ return cookies.getAll().filter((cookie) => cookie.name.startsWith(this.connectionTokenSetsCookieName));
79
+ }
80
+ }
81
+ export {
82
+ StatelessSessionStore
83
+ };
@@ -0,0 +1,65 @@
1
+ import { encrypt, decrypt } from "./golocal-cloud-wrapper.es152.js";
2
+ const TRANSACTION_COOKIE_PREFIX = "__txn_";
3
+ class TransactionStore {
4
+ constructor({ secret, cookieOptions }) {
5
+ this.secret = secret;
6
+ this.transactionCookiePrefix = (cookieOptions == null ? void 0 : cookieOptions.prefix) ?? TRANSACTION_COOKIE_PREFIX;
7
+ this.cookieConfig = {
8
+ httpOnly: true,
9
+ sameSite: (cookieOptions == null ? void 0 : cookieOptions.sameSite) ?? "lax",
10
+ // required to allow the cookie to be sent on the callback request
11
+ secure: (cookieOptions == null ? void 0 : cookieOptions.secure) ?? false,
12
+ path: (cookieOptions == null ? void 0 : cookieOptions.path) ?? "/",
13
+ maxAge: 60 * 60
14
+ // 1 hour in seconds
15
+ };
16
+ }
17
+ /**
18
+ * Returns the name of the cookie used to store the transaction state.
19
+ * The cookie name is derived from the state parameter to prevent collisions
20
+ * between different transactions.
21
+ */
22
+ getTransactionCookieName(state) {
23
+ return `${this.transactionCookiePrefix}${state}`;
24
+ }
25
+ /**
26
+ * Returns the configured prefix for transaction cookies.
27
+ */
28
+ getCookiePrefix() {
29
+ return this.transactionCookiePrefix;
30
+ }
31
+ async save(resCookies, transactionState) {
32
+ const expiration = Math.floor(Date.now() / 1e3 + this.cookieConfig.maxAge);
33
+ const jwe = await encrypt(transactionState, this.secret, expiration);
34
+ if (!transactionState.state) {
35
+ throw new Error("Transaction state is required");
36
+ }
37
+ resCookies.set(this.getTransactionCookieName(transactionState.state), jwe.toString(), this.cookieConfig);
38
+ }
39
+ async get(reqCookies, state) {
40
+ var _a;
41
+ const cookieName = this.getTransactionCookieName(state);
42
+ const cookieValue = (_a = reqCookies.get(cookieName)) == null ? void 0 : _a.value;
43
+ if (!cookieValue) {
44
+ return null;
45
+ }
46
+ return decrypt(cookieValue, this.secret);
47
+ }
48
+ async delete(resCookies, state) {
49
+ await resCookies.delete(this.getTransactionCookieName(state));
50
+ }
51
+ /**
52
+ * Deletes all transaction cookies based on the configured prefix.
53
+ */
54
+ async deleteAll(reqCookies, resCookies) {
55
+ const txnPrefix = this.getCookiePrefix();
56
+ reqCookies.getAll().forEach((cookie) => {
57
+ if (cookie.name.startsWith(txnPrefix)) {
58
+ resCookies.delete(cookie.name);
59
+ }
60
+ });
61
+ }
62
+ }
63
+ export {
64
+ TransactionStore
65
+ };