@shopify/shopify-app-remix 1.0.4 → 1.2.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 (435) hide show
  1. package/README.md +19 -23
  2. package/build/cjs/react/components/AppProvider/AppProvider.js +67 -0
  3. package/build/cjs/react/components/RemixPolarisLink.js +22 -0
  4. package/build/cjs/react/const.js +7 -0
  5. package/build/cjs/react/index.js +9 -0
  6. package/build/cjs/{adapters → server/adapters}/node/index.js +1 -3
  7. package/build/cjs/{auth → server/authenticate}/admin/authenticate.js +39 -94
  8. package/build/cjs/{billing → server/authenticate/admin/billing}/cancel.js +1 -2
  9. package/build/cjs/{billing → server/authenticate/admin/billing}/request.js +2 -3
  10. package/build/cjs/{billing → server/authenticate/admin/billing}/require.js +1 -2
  11. package/build/cjs/server/authenticate/admin/helpers/handle-client-error.js +39 -0
  12. package/build/cjs/{auth → server/authenticate/admin}/helpers/redirect-to-auth-page.js +6 -1
  13. package/build/cjs/{auth → server/authenticate/admin}/helpers/redirect-with-app-bridge-headers.js +2 -6
  14. package/build/cjs/server/authenticate/admin/helpers/redirect.js +67 -0
  15. package/build/cjs/server/authenticate/admin/helpers/render-app-bridge.js +30 -0
  16. package/build/cjs/{auth → server/authenticate}/helpers/ensure-cors-headers.js +3 -2
  17. package/build/cjs/{auth → server/authenticate}/helpers/respond-to-options-request.js +2 -2
  18. package/build/cjs/{auth → server/authenticate}/helpers/validate-session-token.js +6 -2
  19. package/build/cjs/{auth → server/authenticate}/login/login.js +1 -1
  20. package/build/cjs/server/authenticate/public/appProxy/authenticate.js +82 -0
  21. package/build/cjs/server/authenticate/public/checkout/authenticate.js +38 -0
  22. package/build/cjs/server/authenticate/public/factory.js +22 -0
  23. package/build/cjs/{boundary → server/boundary}/error.js +7 -1
  24. package/build/cjs/server/boundary/index.js +44 -0
  25. package/build/cjs/server/clients/admin/factory.js +27 -0
  26. package/build/cjs/{auth/admin/graphql-client.js → server/clients/admin/graphql.js} +10 -18
  27. package/build/cjs/{auth/admin/rest-client.js → server/clients/admin/rest.js} +54 -33
  28. package/build/cjs/server/index.js +39 -0
  29. package/build/cjs/{index.js → server/shopify-app.js} +13 -76
  30. package/build/cjs/server/unauthenticated/admin/factory.js +25 -0
  31. package/build/cjs/{version.js → server/version.js} +1 -1
  32. package/build/ts/react/components/AppProvider/AppProvider.d.ts +50 -0
  33. package/build/ts/react/components/AppProvider/AppProvider.d.ts.map +1 -0
  34. package/build/ts/react/components/AppProvider/AppProvider.js +44 -0
  35. package/build/ts/react/components/AppProvider/AppProvider.js.map +1 -0
  36. package/build/ts/react/components/AppProvider/index.d.ts +2 -0
  37. package/build/ts/react/components/AppProvider/index.d.ts.map +1 -0
  38. package/build/ts/react/components/AppProvider/index.js +5 -0
  39. package/build/ts/react/components/AppProvider/index.js.map +1 -0
  40. package/build/ts/react/components/RemixPolarisLink.d.ts +3 -0
  41. package/build/ts/react/components/RemixPolarisLink.d.ts.map +1 -0
  42. package/build/ts/react/components/RemixPolarisLink.js +12 -0
  43. package/build/ts/react/components/RemixPolarisLink.js.map +1 -0
  44. package/build/ts/react/components/index.d.ts +2 -0
  45. package/build/ts/react/components/index.d.ts.map +1 -0
  46. package/build/ts/react/components/index.js +5 -0
  47. package/build/ts/react/components/index.js.map +1 -0
  48. package/build/ts/react/const.d.ts +2 -0
  49. package/build/ts/react/const.d.ts.map +1 -0
  50. package/build/ts/react/const.js +5 -0
  51. package/build/ts/react/const.js.map +1 -0
  52. package/build/ts/react/index.d.ts +2 -0
  53. package/build/ts/react/index.d.ts.map +1 -0
  54. package/build/ts/react/index.js +5 -0
  55. package/build/ts/react/index.js.map +1 -0
  56. package/build/ts/server/__test-helpers/const.d.ts +9 -0
  57. package/build/ts/server/__test-helpers/const.d.ts.map +1 -0
  58. package/build/ts/server/__test-helpers/const.js +13 -0
  59. package/build/ts/server/__test-helpers/const.js.map +1 -0
  60. package/build/ts/server/__test-helpers/expect-admin-api-client.d.ts +8 -0
  61. package/build/ts/server/__test-helpers/expect-admin-api-client.d.ts.map +1 -0
  62. package/build/ts/server/__test-helpers/expect-admin-api-client.js +165 -0
  63. package/build/ts/server/__test-helpers/expect-admin-api-client.js.map +1 -0
  64. package/build/ts/server/__test-helpers/expect-begin-auth-redirect.d.ts +3 -0
  65. package/build/ts/server/__test-helpers/expect-begin-auth-redirect.d.ts.map +1 -0
  66. package/build/ts/server/__test-helpers/expect-begin-auth-redirect.js +16 -0
  67. package/build/ts/server/__test-helpers/expect-begin-auth-redirect.js.map +1 -0
  68. package/build/ts/server/__test-helpers/expect-document-request-headers.d.ts +2 -0
  69. package/build/ts/server/__test-helpers/expect-document-request-headers.d.ts.map +1 -0
  70. package/build/ts/server/__test-helpers/expect-document-request-headers.js +18 -0
  71. package/build/ts/server/__test-helpers/expect-document-request-headers.js.map +1 -0
  72. package/build/ts/server/__test-helpers/expect-exit-iframe.d.ts +8 -0
  73. package/build/ts/server/__test-helpers/expect-exit-iframe.d.ts.map +1 -0
  74. package/build/ts/server/__test-helpers/expect-exit-iframe.js +17 -0
  75. package/build/ts/server/__test-helpers/expect-exit-iframe.js.map +1 -0
  76. package/build/ts/server/__test-helpers/expect-login-redirect.d.ts +2 -0
  77. package/build/ts/server/__test-helpers/expect-login-redirect.d.ts.map +1 -0
  78. package/build/ts/server/__test-helpers/expect-login-redirect.js +11 -0
  79. package/build/ts/server/__test-helpers/expect-login-redirect.js.map +1 -0
  80. package/build/ts/server/__test-helpers/get-hmac.d.ts +2 -0
  81. package/build/ts/server/__test-helpers/get-hmac.d.ts.map +1 -0
  82. package/build/ts/server/__test-helpers/get-hmac.js +14 -0
  83. package/build/ts/server/__test-helpers/get-hmac.js.map +1 -0
  84. package/build/ts/server/__test-helpers/get-jwt.d.ts +8 -0
  85. package/build/ts/server/__test-helpers/get-jwt.d.ts.map +1 -0
  86. package/build/ts/server/__test-helpers/get-jwt.js +17 -0
  87. package/build/ts/server/__test-helpers/get-jwt.js.map +1 -0
  88. package/build/ts/server/__test-helpers/get-thrown-response.d.ts +2 -0
  89. package/build/ts/server/__test-helpers/get-thrown-response.d.ts.map +1 -0
  90. package/build/ts/server/__test-helpers/get-thrown-response.js +28 -0
  91. package/build/ts/server/__test-helpers/get-thrown-response.js.map +1 -0
  92. package/build/ts/server/__test-helpers/index.d.ts +16 -0
  93. package/build/ts/server/__test-helpers/index.d.ts.map +1 -0
  94. package/build/ts/server/__test-helpers/index.js +19 -0
  95. package/build/ts/server/__test-helpers/index.js.map +1 -0
  96. package/build/ts/server/__test-helpers/request-mock.d.ts +10 -0
  97. package/build/ts/server/__test-helpers/request-mock.d.ts.map +1 -0
  98. package/build/ts/server/__test-helpers/request-mock.js +192 -0
  99. package/build/ts/server/__test-helpers/request-mock.js.map +1 -0
  100. package/build/ts/server/__test-helpers/setup-valid-session.d.ts +4 -0
  101. package/build/ts/server/__test-helpers/setup-valid-session.d.ts.map +1 -0
  102. package/build/ts/server/__test-helpers/setup-valid-session.js +45 -0
  103. package/build/ts/server/__test-helpers/setup-valid-session.js.map +1 -0
  104. package/build/ts/server/__test-helpers/sign-request-cookie.d.ts +6 -0
  105. package/build/ts/server/__test-helpers/sign-request-cookie.d.ts.map +1 -0
  106. package/build/ts/server/__test-helpers/sign-request-cookie.js +14 -0
  107. package/build/ts/server/__test-helpers/sign-request-cookie.js.map +1 -0
  108. package/build/ts/server/__test-helpers/test-config.d.ts +6 -0
  109. package/build/ts/server/__test-helpers/test-config.d.ts.map +1 -0
  110. package/build/ts/server/__test-helpers/test-config.js +16 -0
  111. package/build/ts/server/__test-helpers/test-config.js.map +1 -0
  112. package/build/ts/server/adapters/node/index.d.ts.map +1 -0
  113. package/build/ts/{adapters → server/adapters}/node/index.js +1 -1
  114. package/build/ts/server/adapters/node/index.js.map +1 -0
  115. package/build/ts/{auth → server/authenticate}/admin/authenticate.d.ts +0 -2
  116. package/build/ts/server/authenticate/admin/authenticate.d.ts.map +1 -0
  117. package/build/ts/{auth → server/authenticate}/admin/authenticate.js +31 -78
  118. package/build/ts/server/authenticate/admin/authenticate.js.map +1 -0
  119. package/build/ts/{billing → server/authenticate/admin/billing}/cancel.d.ts +1 -1
  120. package/build/ts/server/authenticate/admin/billing/cancel.d.ts.map +1 -0
  121. package/build/ts/{billing → server/authenticate/admin/billing}/cancel.js +1 -1
  122. package/build/ts/server/authenticate/admin/billing/cancel.js.map +1 -0
  123. package/build/ts/server/authenticate/admin/billing/index.d.ts.map +1 -0
  124. package/build/ts/server/authenticate/admin/billing/index.js.map +1 -0
  125. package/build/ts/{billing → server/authenticate/admin/billing}/request.d.ts +2 -2
  126. package/build/ts/server/authenticate/admin/billing/request.d.ts.map +1 -0
  127. package/build/ts/{billing → server/authenticate/admin/billing}/request.js +2 -3
  128. package/build/ts/server/authenticate/admin/billing/request.js.map +1 -0
  129. package/build/ts/{billing → server/authenticate/admin/billing}/require.d.ts +2 -2
  130. package/build/ts/server/authenticate/admin/billing/require.d.ts.map +1 -0
  131. package/build/ts/{billing → server/authenticate/admin/billing}/require.js +1 -1
  132. package/build/ts/server/authenticate/admin/billing/require.js.map +1 -0
  133. package/build/ts/{billing → server/authenticate/admin/billing}/types.d.ts +1 -1
  134. package/build/ts/server/authenticate/admin/billing/types.d.ts.map +1 -0
  135. package/build/ts/server/authenticate/admin/billing/types.js.map +1 -0
  136. package/build/ts/{auth → server/authenticate/admin}/helpers/begin-auth.d.ts +1 -1
  137. package/build/ts/server/authenticate/admin/helpers/begin-auth.d.ts.map +1 -0
  138. package/build/ts/server/authenticate/admin/helpers/begin-auth.js.map +1 -0
  139. package/build/ts/server/authenticate/admin/helpers/handle-client-error.d.ts +7 -0
  140. package/build/ts/server/authenticate/admin/helpers/handle-client-error.d.ts.map +1 -0
  141. package/build/ts/server/authenticate/admin/helpers/handle-client-error.js +41 -0
  142. package/build/ts/server/authenticate/admin/helpers/handle-client-error.js.map +1 -0
  143. package/build/ts/server/authenticate/admin/helpers/index.d.ts +8 -0
  144. package/build/ts/server/authenticate/admin/helpers/index.d.ts.map +1 -0
  145. package/build/ts/server/authenticate/admin/helpers/index.js +11 -0
  146. package/build/ts/server/authenticate/admin/helpers/index.js.map +1 -0
  147. package/build/ts/{auth → server/authenticate/admin}/helpers/redirect-to-auth-page.d.ts +1 -1
  148. package/build/ts/server/authenticate/admin/helpers/redirect-to-auth-page.d.ts.map +1 -0
  149. package/build/ts/{auth → server/authenticate/admin}/helpers/redirect-to-auth-page.js +5 -2
  150. package/build/ts/server/authenticate/admin/helpers/redirect-to-auth-page.js.map +1 -0
  151. package/build/ts/server/authenticate/admin/helpers/redirect-with-app-bridge-headers.d.ts +3 -0
  152. package/build/ts/server/authenticate/admin/helpers/redirect-with-app-bridge-headers.d.ts.map +1 -0
  153. package/build/ts/{auth → server/authenticate/admin}/helpers/redirect-with-app-bridge-headers.js +2 -4
  154. package/build/ts/server/authenticate/admin/helpers/redirect-with-app-bridge-headers.js.map +1 -0
  155. package/build/ts/{auth → server/authenticate/admin}/helpers/redirect-with-exitiframe.d.ts +1 -1
  156. package/build/ts/server/authenticate/admin/helpers/redirect-with-exitiframe.d.ts.map +1 -0
  157. package/build/ts/server/authenticate/admin/helpers/redirect-with-exitiframe.js.map +1 -0
  158. package/build/ts/server/authenticate/admin/helpers/redirect.d.ts +9 -0
  159. package/build/ts/server/authenticate/admin/helpers/redirect.d.ts.map +1 -0
  160. package/build/ts/server/authenticate/admin/helpers/redirect.js +64 -0
  161. package/build/ts/server/authenticate/admin/helpers/redirect.js.map +1 -0
  162. package/build/ts/server/authenticate/admin/helpers/render-app-bridge.d.ts +8 -0
  163. package/build/ts/server/authenticate/admin/helpers/render-app-bridge.d.ts.map +1 -0
  164. package/build/ts/server/authenticate/admin/helpers/render-app-bridge.js +22 -0
  165. package/build/ts/server/authenticate/admin/helpers/render-app-bridge.js.map +1 -0
  166. package/build/ts/{auth → server/authenticate}/admin/types.d.ts +22 -2
  167. package/build/ts/server/authenticate/admin/types.d.ts.map +1 -0
  168. package/build/ts/server/authenticate/admin/types.js.map +1 -0
  169. package/build/ts/server/authenticate/const.d.ts.map +1 -0
  170. package/build/ts/server/authenticate/const.js.map +1 -0
  171. package/build/ts/server/authenticate/helpers/add-response-headers.d.ts.map +1 -0
  172. package/build/ts/server/authenticate/helpers/add-response-headers.js.map +1 -0
  173. package/build/ts/server/authenticate/helpers/app-bridge-url.d.ts.map +1 -0
  174. package/build/ts/server/authenticate/helpers/app-bridge-url.js.map +1 -0
  175. package/build/ts/{auth → server/authenticate}/helpers/ensure-cors-headers.d.ts +1 -1
  176. package/build/ts/server/authenticate/helpers/ensure-cors-headers.d.ts.map +1 -0
  177. package/build/ts/{auth → server/authenticate}/helpers/ensure-cors-headers.js +8 -2
  178. package/build/ts/server/authenticate/helpers/ensure-cors-headers.js.map +1 -0
  179. package/build/ts/server/authenticate/helpers/get-session-token-header.d.ts.map +1 -0
  180. package/build/ts/server/authenticate/helpers/get-session-token-header.js.map +1 -0
  181. package/build/ts/{auth → server/authenticate}/helpers/index.d.ts +0 -4
  182. package/build/ts/server/authenticate/helpers/index.d.ts.map +1 -0
  183. package/build/ts/{auth → server/authenticate}/helpers/index.js +0 -4
  184. package/build/ts/server/authenticate/helpers/index.js.map +1 -0
  185. package/build/ts/server/authenticate/helpers/reject-bot-request.d.ts.map +1 -0
  186. package/build/ts/server/authenticate/helpers/reject-bot-request.js.map +1 -0
  187. package/build/ts/server/authenticate/helpers/respond-to-options-request.d.ts +3 -0
  188. package/build/ts/server/authenticate/helpers/respond-to-options-request.d.ts.map +1 -0
  189. package/build/ts/{auth → server/authenticate}/helpers/respond-to-options-request.js +2 -2
  190. package/build/ts/server/authenticate/helpers/respond-to-options-request.js.map +1 -0
  191. package/build/ts/server/authenticate/helpers/validate-session-token.d.ts +8 -0
  192. package/build/ts/server/authenticate/helpers/validate-session-token.d.ts.map +1 -0
  193. package/build/ts/{auth → server/authenticate}/helpers/validate-session-token.js +11 -8
  194. package/build/ts/server/authenticate/helpers/validate-session-token.js.map +1 -0
  195. package/build/ts/server/authenticate/login/login.d.ts.map +1 -0
  196. package/build/ts/{auth → server/authenticate}/login/login.js +3 -1
  197. package/build/ts/server/authenticate/login/login.js.map +1 -0
  198. package/build/ts/server/authenticate/public/appProxy/authenticate.d.ts +5 -0
  199. package/build/ts/server/authenticate/public/appProxy/authenticate.d.ts.map +1 -0
  200. package/build/ts/server/authenticate/public/appProxy/authenticate.js +79 -0
  201. package/build/ts/server/authenticate/public/appProxy/authenticate.js.map +1 -0
  202. package/build/ts/server/authenticate/public/appProxy/types.d.ts +70 -0
  203. package/build/ts/server/authenticate/public/appProxy/types.d.ts.map +1 -0
  204. package/build/ts/server/authenticate/public/appProxy/types.js.map +1 -0
  205. package/build/ts/server/authenticate/public/checkout/authenticate.d.ts +4 -0
  206. package/build/ts/server/authenticate/public/checkout/authenticate.d.ts.map +1 -0
  207. package/build/ts/server/authenticate/public/checkout/authenticate.js +42 -0
  208. package/build/ts/server/authenticate/public/checkout/authenticate.js.map +1 -0
  209. package/build/ts/{auth/public → server/authenticate/public/checkout}/types.d.ts +13 -7
  210. package/build/ts/server/authenticate/public/checkout/types.d.ts.map +1 -0
  211. package/build/ts/server/authenticate/public/checkout/types.js.map +1 -0
  212. package/build/ts/server/authenticate/public/factory.d.ts +5 -0
  213. package/build/ts/server/authenticate/public/factory.d.ts.map +1 -0
  214. package/build/ts/server/authenticate/public/factory.js +18 -0
  215. package/build/ts/server/authenticate/public/factory.js.map +1 -0
  216. package/build/ts/server/authenticate/public/index.d.ts +2 -0
  217. package/build/ts/server/authenticate/public/index.d.ts.map +1 -0
  218. package/build/ts/server/authenticate/public/index.js +5 -0
  219. package/build/ts/server/authenticate/public/index.js.map +1 -0
  220. package/build/ts/server/authenticate/public/types.d.ts +61 -0
  221. package/build/ts/server/authenticate/public/types.d.ts.map +1 -0
  222. package/build/ts/server/authenticate/public/types.js.map +1 -0
  223. package/build/ts/server/authenticate/webhooks/authenticate.d.ts.map +1 -0
  224. package/build/ts/server/authenticate/webhooks/authenticate.js.map +1 -0
  225. package/build/ts/server/authenticate/webhooks/index.d.ts.map +1 -0
  226. package/build/ts/server/authenticate/webhooks/index.js.map +1 -0
  227. package/build/ts/server/authenticate/webhooks/register.d.ts.map +1 -0
  228. package/build/ts/server/authenticate/webhooks/register.js.map +1 -0
  229. package/build/ts/server/authenticate/webhooks/types.d.ts.map +1 -0
  230. package/build/ts/server/authenticate/webhooks/types.js +3 -0
  231. package/build/ts/server/authenticate/webhooks/types.js.map +1 -0
  232. package/build/ts/server/boundary/error.d.ts +2 -0
  233. package/build/ts/server/boundary/error.d.ts.map +1 -0
  234. package/build/ts/{boundary → server/boundary}/error.js +2 -1
  235. package/build/ts/server/boundary/error.js.map +1 -0
  236. package/build/ts/server/boundary/headers.d.ts.map +1 -0
  237. package/build/ts/server/boundary/headers.js.map +1 -0
  238. package/build/ts/server/boundary/index.d.ts +38 -0
  239. package/build/ts/server/boundary/index.d.ts.map +1 -0
  240. package/build/ts/server/boundary/index.js +41 -0
  241. package/build/ts/server/boundary/index.js.map +1 -0
  242. package/build/ts/server/boundary/types.d.ts.map +1 -0
  243. package/build/ts/server/boundary/types.js +3 -0
  244. package/build/ts/{auth/admin → server/boundary}/types.js.map +1 -1
  245. package/build/ts/server/clients/admin/factory.d.ts +11 -0
  246. package/build/ts/server/clients/admin/factory.d.ts.map +1 -0
  247. package/build/ts/server/clients/admin/factory.js +18 -0
  248. package/build/ts/server/clients/admin/factory.js.map +1 -0
  249. package/build/ts/server/clients/admin/graphql.d.ts +17 -0
  250. package/build/ts/server/clients/admin/graphql.d.ts.map +1 -0
  251. package/build/ts/{auth/admin/graphql-client.js → server/clients/admin/graphql.js} +9 -14
  252. package/build/ts/server/clients/admin/graphql.js.map +1 -0
  253. package/build/ts/server/clients/admin/index.d.ts +2 -0
  254. package/build/ts/server/clients/admin/index.d.ts.map +1 -0
  255. package/build/ts/server/clients/admin/index.js +5 -0
  256. package/build/ts/server/clients/admin/index.js.map +1 -0
  257. package/build/ts/{auth/admin/rest-client.d.ts → server/clients/admin/rest.d.ts} +10 -13
  258. package/build/ts/server/clients/admin/rest.d.ts.map +1 -0
  259. package/build/ts/{auth/admin/rest-client.js → server/clients/admin/rest.js} +56 -25
  260. package/build/ts/server/clients/admin/rest.js.map +1 -0
  261. package/build/ts/server/clients/admin/types.d.ts +13 -0
  262. package/build/ts/server/clients/admin/types.d.ts.map +1 -0
  263. package/build/ts/server/clients/admin/types.js +3 -0
  264. package/build/ts/server/clients/admin/types.js.map +1 -0
  265. package/build/ts/{config-types.d.ts → server/config-types.d.ts} +3 -3
  266. package/build/ts/server/config-types.d.ts.map +1 -0
  267. package/build/ts/server/config-types.js.map +1 -0
  268. package/build/ts/server/index.d.ts +7 -0
  269. package/build/ts/server/index.d.ts.map +1 -0
  270. package/build/ts/server/index.js +22 -0
  271. package/build/ts/server/index.js.map +1 -0
  272. package/build/ts/server/override-logger.d.ts.map +1 -0
  273. package/build/ts/server/override-logger.js.map +1 -0
  274. package/build/ts/server/shopify-app.d.ts +27 -0
  275. package/build/ts/server/shopify-app.d.ts.map +1 -0
  276. package/build/ts/{index.js → server/shopify-app.js} +13 -59
  277. package/build/ts/server/shopify-app.js.map +1 -0
  278. package/build/ts/{types.d.ts → server/types.d.ts} +45 -13
  279. package/build/ts/server/types.d.ts.map +1 -0
  280. package/build/ts/server/types.js.map +1 -0
  281. package/build/ts/server/unauthenticated/admin/factory.d.ts +5 -0
  282. package/build/ts/server/unauthenticated/admin/factory.d.ts.map +1 -0
  283. package/build/ts/server/unauthenticated/admin/factory.js +30 -0
  284. package/build/ts/server/unauthenticated/admin/factory.js.map +1 -0
  285. package/build/ts/server/unauthenticated/admin/index.d.ts +2 -0
  286. package/build/ts/server/unauthenticated/admin/index.d.ts.map +1 -0
  287. package/build/ts/server/unauthenticated/admin/index.js +5 -0
  288. package/build/ts/server/unauthenticated/admin/index.js.map +1 -0
  289. package/build/ts/server/unauthenticated/admin/types.d.ts +32 -0
  290. package/build/ts/server/unauthenticated/admin/types.d.ts.map +1 -0
  291. package/build/ts/server/unauthenticated/admin/types.js +3 -0
  292. package/build/ts/server/unauthenticated/admin/types.js.map +1 -0
  293. package/build/ts/server/version.d.ts +2 -0
  294. package/build/ts/server/version.d.ts.map +1 -0
  295. package/build/ts/{version.js → server/version.js} +1 -1
  296. package/build/ts/server/version.js.map +1 -0
  297. package/build/tsconfig.tsbuildinfo +1 -1
  298. package/package.json +34 -10
  299. package/build/cjs/auth/helpers/handle-client-error.js +0 -37
  300. package/build/cjs/auth/public/authenticate.js +0 -36
  301. package/build/ts/adapters/node/index.d.ts.map +0 -1
  302. package/build/ts/adapters/node/index.js.map +0 -1
  303. package/build/ts/auth/admin/authenticate.d.ts.map +0 -1
  304. package/build/ts/auth/admin/authenticate.js.map +0 -1
  305. package/build/ts/auth/admin/graphql-client.d.ts +0 -22
  306. package/build/ts/auth/admin/graphql-client.d.ts.map +0 -1
  307. package/build/ts/auth/admin/graphql-client.js.map +0 -1
  308. package/build/ts/auth/admin/rest-client.d.ts.map +0 -1
  309. package/build/ts/auth/admin/rest-client.js.map +0 -1
  310. package/build/ts/auth/admin/types.d.ts.map +0 -1
  311. package/build/ts/auth/const.d.ts.map +0 -1
  312. package/build/ts/auth/const.js.map +0 -1
  313. package/build/ts/auth/helpers/add-response-headers.d.ts.map +0 -1
  314. package/build/ts/auth/helpers/add-response-headers.js.map +0 -1
  315. package/build/ts/auth/helpers/app-bridge-url.d.ts.map +0 -1
  316. package/build/ts/auth/helpers/app-bridge-url.js.map +0 -1
  317. package/build/ts/auth/helpers/begin-auth.d.ts.map +0 -1
  318. package/build/ts/auth/helpers/begin-auth.js.map +0 -1
  319. package/build/ts/auth/helpers/ensure-cors-headers.d.ts.map +0 -1
  320. package/build/ts/auth/helpers/ensure-cors-headers.js.map +0 -1
  321. package/build/ts/auth/helpers/get-session-token-header.d.ts.map +0 -1
  322. package/build/ts/auth/helpers/get-session-token-header.js.map +0 -1
  323. package/build/ts/auth/helpers/handle-client-error.d.ts +0 -11
  324. package/build/ts/auth/helpers/handle-client-error.d.ts.map +0 -1
  325. package/build/ts/auth/helpers/handle-client-error.js +0 -40
  326. package/build/ts/auth/helpers/handle-client-error.js.map +0 -1
  327. package/build/ts/auth/helpers/index.d.ts.map +0 -1
  328. package/build/ts/auth/helpers/index.js.map +0 -1
  329. package/build/ts/auth/helpers/redirect-to-auth-page.d.ts.map +0 -1
  330. package/build/ts/auth/helpers/redirect-to-auth-page.js.map +0 -1
  331. package/build/ts/auth/helpers/redirect-with-app-bridge-headers.d.ts +0 -4
  332. package/build/ts/auth/helpers/redirect-with-app-bridge-headers.d.ts.map +0 -1
  333. package/build/ts/auth/helpers/redirect-with-app-bridge-headers.js.map +0 -1
  334. package/build/ts/auth/helpers/redirect-with-exitiframe.d.ts.map +0 -1
  335. package/build/ts/auth/helpers/redirect-with-exitiframe.js.map +0 -1
  336. package/build/ts/auth/helpers/reject-bot-request.d.ts.map +0 -1
  337. package/build/ts/auth/helpers/reject-bot-request.js.map +0 -1
  338. package/build/ts/auth/helpers/respond-to-options-request.d.ts +0 -3
  339. package/build/ts/auth/helpers/respond-to-options-request.d.ts.map +0 -1
  340. package/build/ts/auth/helpers/respond-to-options-request.js.map +0 -1
  341. package/build/ts/auth/helpers/validate-session-token.d.ts +0 -4
  342. package/build/ts/auth/helpers/validate-session-token.d.ts.map +0 -1
  343. package/build/ts/auth/helpers/validate-session-token.js.map +0 -1
  344. package/build/ts/auth/login/login.d.ts.map +0 -1
  345. package/build/ts/auth/login/login.js.map +0 -1
  346. package/build/ts/auth/public/authenticate.d.ts +0 -4
  347. package/build/ts/auth/public/authenticate.d.ts.map +0 -1
  348. package/build/ts/auth/public/authenticate.js +0 -37
  349. package/build/ts/auth/public/authenticate.js.map +0 -1
  350. package/build/ts/auth/public/types.d.ts.map +0 -1
  351. package/build/ts/auth/public/types.js.map +0 -1
  352. package/build/ts/auth/webhooks/authenticate.d.ts.map +0 -1
  353. package/build/ts/auth/webhooks/authenticate.js.map +0 -1
  354. package/build/ts/auth/webhooks/index.d.ts.map +0 -1
  355. package/build/ts/auth/webhooks/index.js.map +0 -1
  356. package/build/ts/auth/webhooks/register.d.ts.map +0 -1
  357. package/build/ts/auth/webhooks/register.js.map +0 -1
  358. package/build/ts/auth/webhooks/types.d.ts.map +0 -1
  359. package/build/ts/auth/webhooks/types.js.map +0 -1
  360. package/build/ts/billing/cancel.d.ts.map +0 -1
  361. package/build/ts/billing/cancel.js.map +0 -1
  362. package/build/ts/billing/index.d.ts.map +0 -1
  363. package/build/ts/billing/index.js.map +0 -1
  364. package/build/ts/billing/request.d.ts.map +0 -1
  365. package/build/ts/billing/request.js.map +0 -1
  366. package/build/ts/billing/require.d.ts.map +0 -1
  367. package/build/ts/billing/require.js.map +0 -1
  368. package/build/ts/billing/types.d.ts.map +0 -1
  369. package/build/ts/billing/types.js.map +0 -1
  370. package/build/ts/boundary/error.d.ts +0 -2
  371. package/build/ts/boundary/error.d.ts.map +0 -1
  372. package/build/ts/boundary/error.js.map +0 -1
  373. package/build/ts/boundary/headers.d.ts.map +0 -1
  374. package/build/ts/boundary/headers.js.map +0 -1
  375. package/build/ts/boundary/types.d.ts.map +0 -1
  376. package/build/ts/boundary/types.js.map +0 -1
  377. package/build/ts/config-types.d.ts.map +0 -1
  378. package/build/ts/config-types.js.map +0 -1
  379. package/build/ts/index.d.ts +0 -67
  380. package/build/ts/index.d.ts.map +0 -1
  381. package/build/ts/index.js.map +0 -1
  382. package/build/ts/override-logger.d.ts.map +0 -1
  383. package/build/ts/override-logger.js.map +0 -1
  384. package/build/ts/types.d.ts.map +0 -1
  385. package/build/ts/types.js.map +0 -1
  386. package/build/ts/version.d.ts +0 -2
  387. package/build/ts/version.d.ts.map +0 -1
  388. package/build/ts/version.js.map +0 -1
  389. /package/build/cjs/{auth → server/authenticate/admin}/helpers/begin-auth.js +0 -0
  390. /package/build/cjs/{auth → server/authenticate/admin}/helpers/redirect-with-exitiframe.js +0 -0
  391. /package/build/cjs/{auth → server/authenticate}/const.js +0 -0
  392. /package/build/cjs/{auth → server/authenticate}/helpers/add-response-headers.js +0 -0
  393. /package/build/cjs/{auth → server/authenticate}/helpers/app-bridge-url.js +0 -0
  394. /package/build/cjs/{auth → server/authenticate}/helpers/get-session-token-header.js +0 -0
  395. /package/build/cjs/{auth → server/authenticate}/helpers/reject-bot-request.js +0 -0
  396. /package/build/cjs/{auth → server/authenticate}/webhooks/authenticate.js +0 -0
  397. /package/build/cjs/{auth → server/authenticate}/webhooks/register.js +0 -0
  398. /package/build/cjs/{boundary → server/boundary}/headers.js +0 -0
  399. /package/build/cjs/{override-logger.js → server/override-logger.js} +0 -0
  400. /package/build/cjs/{types.js → server/types.js} +0 -0
  401. /package/build/ts/{adapters → server/adapters}/node/index.d.ts +0 -0
  402. /package/build/ts/{billing → server/authenticate/admin/billing}/index.d.ts +0 -0
  403. /package/build/ts/{billing → server/authenticate/admin/billing}/index.js +0 -0
  404. /package/build/ts/{auth/admin → server/authenticate/admin/billing}/types.js +0 -0
  405. /package/build/ts/{auth → server/authenticate/admin}/helpers/begin-auth.js +0 -0
  406. /package/build/ts/{auth → server/authenticate/admin}/helpers/redirect-with-exitiframe.js +0 -0
  407. /package/build/ts/{auth/public → server/authenticate/admin}/types.js +0 -0
  408. /package/build/ts/{auth → server/authenticate}/const.d.ts +0 -0
  409. /package/build/ts/{auth → server/authenticate}/const.js +0 -0
  410. /package/build/ts/{auth → server/authenticate}/helpers/add-response-headers.d.ts +0 -0
  411. /package/build/ts/{auth → server/authenticate}/helpers/add-response-headers.js +0 -0
  412. /package/build/ts/{auth → server/authenticate}/helpers/app-bridge-url.d.ts +0 -0
  413. /package/build/ts/{auth → server/authenticate}/helpers/app-bridge-url.js +0 -0
  414. /package/build/ts/{auth → server/authenticate}/helpers/get-session-token-header.d.ts +0 -0
  415. /package/build/ts/{auth → server/authenticate}/helpers/get-session-token-header.js +0 -0
  416. /package/build/ts/{auth → server/authenticate}/helpers/reject-bot-request.d.ts +0 -0
  417. /package/build/ts/{auth → server/authenticate}/helpers/reject-bot-request.js +0 -0
  418. /package/build/ts/{auth → server/authenticate}/login/login.d.ts +0 -0
  419. /package/build/ts/{auth/webhooks → server/authenticate/public/appProxy}/types.js +0 -0
  420. /package/build/ts/{billing → server/authenticate/public/checkout}/types.js +0 -0
  421. /package/build/ts/{boundary → server/authenticate/public}/types.js +0 -0
  422. /package/build/ts/{auth → server/authenticate}/webhooks/authenticate.d.ts +0 -0
  423. /package/build/ts/{auth → server/authenticate}/webhooks/authenticate.js +0 -0
  424. /package/build/ts/{auth → server/authenticate}/webhooks/index.d.ts +0 -0
  425. /package/build/ts/{auth → server/authenticate}/webhooks/index.js +0 -0
  426. /package/build/ts/{auth → server/authenticate}/webhooks/register.d.ts +0 -0
  427. /package/build/ts/{auth → server/authenticate}/webhooks/register.js +0 -0
  428. /package/build/ts/{auth → server/authenticate}/webhooks/types.d.ts +0 -0
  429. /package/build/ts/{boundary → server/boundary}/headers.d.ts +0 -0
  430. /package/build/ts/{boundary → server/boundary}/headers.js +0 -0
  431. /package/build/ts/{boundary → server/boundary}/types.d.ts +0 -0
  432. /package/build/ts/{config-types.js → server/config-types.js} +0 -0
  433. /package/build/ts/{override-logger.d.ts → server/override-logger.d.ts} +0 -0
  434. /package/build/ts/{override-logger.js → server/override-logger.js} +0 -0
  435. /package/build/ts/{types.js → server/types.js} +0 -0
@@ -0,0 +1,50 @@
1
+ import React from 'react';
2
+ import { AppProviderProps as PolarisAppProviderProps } from '@shopify/polaris';
3
+ export interface AppProviderProps extends Omit<PolarisAppProviderProps, 'linkComponent' | 'i18n'> {
4
+ children: React.ReactNode;
5
+ /**
6
+ * The API key for your Shopify app.
7
+ */
8
+ apiKey: string;
9
+ /**
10
+ * Whether the app is embedded or not. Defaults to `true`.
11
+ */
12
+ isEmbeddedApp?: boolean;
13
+ /**
14
+ * The i18n configuration for your Polaris provider.
15
+ *
16
+ * {@link https://polaris.shopify.com/components/utilities/app-provider}
17
+ */
18
+ i18n?: PolarisAppProviderProps['i18n'];
19
+ }
20
+ /**
21
+ * Sets up the Polaris AppProvider and injects the App Bridge script.
22
+ *
23
+ * {@link https://polaris.shopify.com/components/utilities/app-provider}
24
+ * {@link https://shopify.dev/tools/app-bridge}
25
+ *
26
+ * @example
27
+ * Wrap your app in the `AppProvider` component and pass in your API key.
28
+ * ```ts
29
+ * import {authenticate} from '~/shopify.server';
30
+ * import {AppProvider} from '@shopify/shopify-app-remix/react';
31
+ *
32
+ * export async function loader({ request }) {
33
+ * await authenticate.admin(request);
34
+ *
35
+ * return json({ apiKey: process.env.SHOPIFY_API_KEY });
36
+ * }
37
+ *
38
+ * export default function App() {
39
+ * const { apiKey } = useLoaderData();
40
+ *
41
+ * return (
42
+ * <AppProvider apiKey={apiKey}>
43
+ * <Outlet />
44
+ * </AppProvider>
45
+ * );
46
+ * }
47
+ * ```
48
+ */
49
+ export declare function AppProvider(props: AppProviderProps): import("react/jsx-runtime").JSX.Element;
50
+ //# sourceMappingURL=AppProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppProvider.d.ts","sourceRoot":"","sources":["../../../../../src/react/components/AppProvider/AppProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAEL,gBAAgB,IAAI,uBAAuB,EAC5C,MAAM,kBAAkB,CAAC;AAM1B,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,uBAAuB,EAAE,eAAe,GAAG,MAAM,CAAC;IAC/D,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,IAAI,CAAC,EAAE,uBAAuB,CAAC,MAAM,CAAC,CAAC;CAMxC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAsBlD"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AppProvider = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var polaris_1 = require("@shopify/polaris");
7
+ var en_json_1 = tslib_1.__importDefault(require("@shopify/polaris/locales/en.json"));
8
+ var const_1 = require("../../const");
9
+ var RemixPolarisLink_1 = require("../RemixPolarisLink");
10
+ /**
11
+ * Sets up the Polaris AppProvider and injects the App Bridge script.
12
+ *
13
+ * {@link https://polaris.shopify.com/components/utilities/app-provider}
14
+ * {@link https://shopify.dev/tools/app-bridge}
15
+ *
16
+ * @example
17
+ * Wrap your app in the `AppProvider` component and pass in your API key.
18
+ * ```ts
19
+ * import {authenticate} from '~/shopify.server';
20
+ * import {AppProvider} from '@shopify/shopify-app-remix/react';
21
+ *
22
+ * export async function loader({ request }) {
23
+ * await authenticate.admin(request);
24
+ *
25
+ * return json({ apiKey: process.env.SHOPIFY_API_KEY });
26
+ * }
27
+ *
28
+ * export default function App() {
29
+ * const { apiKey } = useLoaderData();
30
+ *
31
+ * return (
32
+ * <AppProvider apiKey={apiKey}>
33
+ * <Outlet />
34
+ * </AppProvider>
35
+ * );
36
+ * }
37
+ * ```
38
+ */
39
+ function AppProvider(props) {
40
+ var children = props.children, apiKey = props.apiKey, i18n = props.i18n, _a = props.isEmbeddedApp, isEmbeddedApp = _a === void 0 ? true : _a, _b = props.__APP_BRIDGE_URL, __APP_BRIDGE_URL = _b === void 0 ? const_1.APP_BRIDGE_URL : _b, polarisProps = tslib_1.__rest(props, ["children", "apiKey", "i18n", "isEmbeddedApp", "__APP_BRIDGE_URL"]);
41
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [isEmbeddedApp && (0, jsx_runtime_1.jsx)("script", { src: __APP_BRIDGE_URL, "data-api-key": apiKey }), (0, jsx_runtime_1.jsx)(polaris_1.AppProvider, tslib_1.__assign({}, polarisProps, { linkComponent: RemixPolarisLink_1.RemixPolarisLink, i18n: i18n || en_json_1.default }, { children: children }))] }));
42
+ }
43
+ exports.AppProvider = AppProvider;
44
+ //# sourceMappingURL=AppProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppProvider.js","sourceRoot":"","sources":["../../../../../src/react/components/AppProvider/AppProvider.tsx"],"names":[],"mappings":";;;;;AACA,4CAG0B;AAC1B,qFAA2D;AAE3D,qCAA2C;AAC3C,wDAAqD;AA0BrD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,SAAgB,WAAW,CAAC,KAAuB;IAE/C,IAAA,QAAQ,GAMN,KAAK,SANC,EACR,MAAM,GAKJ,KAAK,OALD,EACN,IAAI,GAIF,KAAK,KAJH,EACJ,KAGE,KAAK,cAHa,EAApB,aAAa,mBAAG,IAAI,KAAA,EACpB,KAEE,KAAK,iBAF0B,EAAjC,gBAAgB,mBAAG,sBAAc,KAAA,EAC9B,YAAY,kBACb,KAAK,EAPH,mEAOL,CADgB,CACP;IAEV,OAAO,CACL,6DACG,aAAa,IAAI,mCAAQ,GAAG,EAAE,gBAAgB,kBAAgB,MAAM,GAAI,EACzE,uBAAC,qBAAkB,uBACb,YAAY,IAChB,aAAa,EAAE,mCAAgB,EAC/B,IAAI,EAAE,IAAI,IAAI,iBAAW,gBAExB,QAAQ,IACU,IACpB,CACJ,CAAC;AACJ,CAAC;AAtBD,kCAsBC"}
@@ -0,0 +1,2 @@
1
+ export * from './AppProvider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/react/components/AppProvider/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./AppProvider"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/react/components/AppProvider/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B"}
@@ -0,0 +1,3 @@
1
+ import type { LinkLikeComponent } from '@shopify/polaris/build/ts/src/utilities/link';
2
+ export declare const RemixPolarisLink: LinkLikeComponent;
3
+ //# sourceMappingURL=RemixPolarisLink.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemixPolarisLink.d.ts","sourceRoot":"","sources":["../../../../src/react/components/RemixPolarisLink.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,iBAAiB,EAElB,MAAM,8CAA8C,CAAC;AAEtD,eAAO,MAAM,gBAAgB,mBAKN,CAAC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RemixPolarisLink = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsx_runtime_1 = require("react/jsx-runtime");
6
+ var react_1 = tslib_1.__importDefault(require("react"));
7
+ var react_2 = require("@remix-run/react");
8
+ exports.RemixPolarisLink = react_1.default.forwardRef(function (props, ref) {
9
+ var _a;
10
+ return ((0, jsx_runtime_1.jsx)(react_2.Link, tslib_1.__assign({}, props, { to: (_a = props.url) !== null && _a !== void 0 ? _a : props.to, ref: ref })));
11
+ });
12
+ //# sourceMappingURL=RemixPolarisLink.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RemixPolarisLink.js","sourceRoot":"","sources":["../../../../src/react/components/RemixPolarisLink.tsx"],"names":[],"mappings":";;;;;AAAA,wDAA0B;AAC1B,0CAAsC;AAOzB,QAAA,gBAAgB,GAAG,eAAK,CAAC,UAAU,CAG9C,UAAC,KAAK,EAAE,GAAG;;IAAK,OAAA,CAChB,uBAAC,YAAI,uBAAK,KAAK,IAAE,EAAE,EAAE,MAAA,KAAK,CAAC,GAAG,mCAAI,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CACzD,CAAA;CAAA,CAAsB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './AppProvider';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./AppProvider"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/react/components/index.ts"],"names":[],"mappings":";;;AAAA,wDAA8B"}
@@ -0,0 +1,2 @@
1
+ export declare const APP_BRIDGE_URL = "https://cdn.shopify.com/shopifycloud/app-bridge.js";
2
+ //# sourceMappingURL=const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../src/react/const.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,uDAC2B,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.APP_BRIDGE_URL = void 0;
4
+ exports.APP_BRIDGE_URL = 'https://cdn.shopify.com/shopifycloud/app-bridge.js';
5
+ //# sourceMappingURL=const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../src/react/const.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GACzB,oDAAoD,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./components"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/react/index.ts"],"names":[],"mappings":";;;AAAA,uDAA6B"}
@@ -0,0 +1,9 @@
1
+ export declare const API_SECRET_KEY = "testApiSecretKey";
2
+ export declare const API_KEY = "testApiKey";
3
+ export declare const APP_URL = "https://my-test-app.myshopify.io";
4
+ export declare const SHOPIFY_HOST = "totally-real-host.myshopify.io";
5
+ export declare const BASE64_HOST: string;
6
+ export declare const TEST_SHOP = "test-shop.myshopify.com";
7
+ export declare const GRAPHQL_URL: string;
8
+ export declare const USER_ID = 12345;
9
+ //# sourceMappingURL=const.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/const.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,eAAO,MAAM,OAAO,eAAe,CAAC;AACpC,eAAO,MAAM,OAAO,qCAAqC,CAAC;AAC1D,eAAO,MAAM,YAAY,mCAAmC,CAAC;AAC7D,eAAO,MAAM,WAAW,QAA+C,CAAC;AACxE,eAAO,MAAM,SAAS,4BAA4B,CAAC;AACnD,eAAO,MAAM,WAAW,QAAsE,CAAC;AAC/F,eAAO,MAAM,OAAO,QAAQ,CAAC"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.USER_ID = exports.GRAPHQL_URL = exports.TEST_SHOP = exports.BASE64_HOST = exports.SHOPIFY_HOST = exports.APP_URL = exports.API_KEY = exports.API_SECRET_KEY = void 0;
4
+ var shopify_api_1 = require("@shopify/shopify-api");
5
+ exports.API_SECRET_KEY = 'testApiSecretKey';
6
+ exports.API_KEY = 'testApiKey';
7
+ exports.APP_URL = 'https://my-test-app.myshopify.io';
8
+ exports.SHOPIFY_HOST = 'totally-real-host.myshopify.io';
9
+ exports.BASE64_HOST = Buffer.from(exports.SHOPIFY_HOST).toString('base64');
10
+ exports.TEST_SHOP = 'test-shop.myshopify.com';
11
+ exports.GRAPHQL_URL = "https://".concat(exports.TEST_SHOP, "/admin/api/").concat(shopify_api_1.LATEST_API_VERSION, "/graphql.json");
12
+ exports.USER_ID = 12345;
13
+ //# sourceMappingURL=const.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/const.ts"],"names":[],"mappings":";;;AAAA,oDAAwD;AAE3C,QAAA,cAAc,GAAG,kBAAkB,CAAC;AACpC,QAAA,OAAO,GAAG,YAAY,CAAC;AACvB,QAAA,OAAO,GAAG,kCAAkC,CAAC;AAC7C,QAAA,YAAY,GAAG,gCAAgC,CAAC;AAChD,QAAA,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,oBAAY,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC3D,QAAA,SAAS,GAAG,yBAAyB,CAAC;AACtC,QAAA,WAAW,GAAG,kBAAW,iBAAS,wBAAc,gCAAkB,kBAAe,CAAC;AAClF,QAAA,OAAO,GAAG,KAAK,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { Session } from '@shopify/shopify-api';
2
+ import { AdminApiContext } from '../config-types';
3
+ export declare function expectAdminApiClient(factory: () => Promise<{
4
+ admin: AdminApiContext;
5
+ expectedSession: Session;
6
+ actualSession: Session;
7
+ }>): void;
8
+ //# sourceMappingURL=expect-admin-api-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-admin-api-client.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-admin-api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAG7C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAOhD,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,OAAO,CAAC;IACrB,KAAK,EAAE,eAAe,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;CACxB,CAAC,QAqGH"}
@@ -0,0 +1,165 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectAdminApiClient = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var __1 = require("..");
6
+ var request_mock_1 = require("./request-mock");
7
+ var const_1 = require("./const");
8
+ var REQUEST_URL = "https://".concat(const_1.TEST_SHOP, "/admin/api/").concat(__1.LATEST_API_VERSION, "/customers.json");
9
+ function expectAdminApiClient(factory) {
10
+ var _this = this;
11
+ it('REST client can perform GET requests', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
12
+ var admin, response, _a;
13
+ return tslib_1.__generator(this, function (_b) {
14
+ switch (_b.label) {
15
+ case 0: return [4 /*yield*/, factory()];
16
+ case 1:
17
+ admin = (_b.sent()).admin;
18
+ return [4 /*yield*/, (0, request_mock_1.mockExternalRequest)({
19
+ request: new Request(REQUEST_URL),
20
+ response: new Response(JSON.stringify({ customers: [] })),
21
+ })];
22
+ case 2:
23
+ _b.sent();
24
+ return [4 /*yield*/, admin.rest.get({ path: 'customers' })];
25
+ case 3:
26
+ response = _b.sent();
27
+ // THEN
28
+ expect(response.status).toEqual(200);
29
+ _a = expect;
30
+ return [4 /*yield*/, response.json()];
31
+ case 4:
32
+ _a.apply(void 0, [_b.sent()]).toEqual({ customers: [] });
33
+ return [2 /*return*/];
34
+ }
35
+ });
36
+ }); });
37
+ it('REST client can perform POST requests', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
38
+ var admin, response, _a;
39
+ return tslib_1.__generator(this, function (_b) {
40
+ switch (_b.label) {
41
+ case 0: return [4 /*yield*/, factory()];
42
+ case 1:
43
+ admin = (_b.sent()).admin;
44
+ return [4 /*yield*/, (0, request_mock_1.mockExternalRequest)({
45
+ request: new Request(REQUEST_URL, { method: 'POST' }),
46
+ response: new Response(JSON.stringify({ customers: [] })),
47
+ })];
48
+ case 2:
49
+ _b.sent();
50
+ return [4 /*yield*/, admin.rest.post({
51
+ path: '/customers.json',
52
+ data: '',
53
+ })];
54
+ case 3:
55
+ response = _b.sent();
56
+ // THEN
57
+ expect(response.status).toEqual(200);
58
+ _a = expect;
59
+ return [4 /*yield*/, response.json()];
60
+ case 4:
61
+ _a.apply(void 0, [_b.sent()]).toEqual({ customers: [] });
62
+ return [2 /*return*/];
63
+ }
64
+ });
65
+ }); });
66
+ it('REST client can perform PUT requests', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
67
+ var admin, response, _a;
68
+ return tslib_1.__generator(this, function (_b) {
69
+ switch (_b.label) {
70
+ case 0: return [4 /*yield*/, factory()];
71
+ case 1:
72
+ admin = (_b.sent()).admin;
73
+ return [4 /*yield*/, (0, request_mock_1.mockExternalRequest)({
74
+ request: new Request(REQUEST_URL, { method: 'PUT' }),
75
+ response: new Response(JSON.stringify({ customers: [] })),
76
+ })];
77
+ case 2:
78
+ _b.sent();
79
+ return [4 /*yield*/, admin.rest.put({
80
+ path: '/customers.json',
81
+ data: '',
82
+ })];
83
+ case 3:
84
+ response = _b.sent();
85
+ // THEN
86
+ expect(response.status).toEqual(200);
87
+ _a = expect;
88
+ return [4 /*yield*/, response.json()];
89
+ case 4:
90
+ _a.apply(void 0, [_b.sent()]).toEqual({ customers: [] });
91
+ return [2 /*return*/];
92
+ }
93
+ });
94
+ }); });
95
+ it('REST client can perform DELETE requests', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
96
+ var admin, response, _a;
97
+ return tslib_1.__generator(this, function (_b) {
98
+ switch (_b.label) {
99
+ case 0: return [4 /*yield*/, factory()];
100
+ case 1:
101
+ admin = (_b.sent()).admin;
102
+ return [4 /*yield*/, (0, request_mock_1.mockExternalRequest)({
103
+ request: new Request(REQUEST_URL, { method: 'DELETE' }),
104
+ response: new Response(JSON.stringify({ customers: [] })),
105
+ })];
106
+ case 2:
107
+ _b.sent();
108
+ return [4 /*yield*/, admin.rest.delete({ path: '/customers.json' })];
109
+ case 3:
110
+ response = _b.sent();
111
+ // THEN
112
+ expect(response.status).toEqual(200);
113
+ _a = expect;
114
+ return [4 /*yield*/, response.json()];
115
+ case 4:
116
+ _a.apply(void 0, [_b.sent()]).toEqual({ customers: [] });
117
+ return [2 /*return*/];
118
+ }
119
+ });
120
+ }); });
121
+ it('GraphQL client can perform requests', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
122
+ var _a, admin, actualSession, response, _b;
123
+ return tslib_1.__generator(this, function (_c) {
124
+ switch (_c.label) {
125
+ case 0: return [4 /*yield*/, factory()];
126
+ case 1:
127
+ _a = _c.sent(), admin = _a.admin, actualSession = _a.actualSession;
128
+ return [4 /*yield*/, (0, request_mock_1.mockExternalRequest)({
129
+ request: new Request("https://".concat(const_1.TEST_SHOP, "/admin/api/").concat(__1.LATEST_API_VERSION, "/graphql.json"), {
130
+ method: 'POST',
131
+ headers: { 'X-Shopify-Access-Token': actualSession.accessToken },
132
+ }),
133
+ response: new Response(JSON.stringify({ shop: { name: 'Test shop' } })),
134
+ })];
135
+ case 2:
136
+ _c.sent();
137
+ return [4 /*yield*/, admin.graphql('{ shop { name } }')];
138
+ case 3:
139
+ response = _c.sent();
140
+ // THEN
141
+ expect(response.status).toEqual(200);
142
+ _b = expect;
143
+ return [4 /*yield*/, response.json()];
144
+ case 4:
145
+ _b.apply(void 0, [_c.sent()]).toEqual({ shop: { name: 'Test shop' } });
146
+ return [2 /*return*/];
147
+ }
148
+ });
149
+ }); });
150
+ it('returns a session object as part of the context', function () { return tslib_1.__awaiter(_this, void 0, void 0, function () {
151
+ var _a, expectedSession, actualSession;
152
+ return tslib_1.__generator(this, function (_b) {
153
+ switch (_b.label) {
154
+ case 0: return [4 /*yield*/, factory()];
155
+ case 1:
156
+ _a = _b.sent(), expectedSession = _a.expectedSession, actualSession = _a.actualSession;
157
+ // THEN
158
+ expect(expectedSession).toEqual(actualSession);
159
+ return [2 /*return*/];
160
+ }
161
+ });
162
+ }); });
163
+ }
164
+ exports.expectAdminApiClient = expectAdminApiClient;
165
+ //# sourceMappingURL=expect-admin-api-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-admin-api-client.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-admin-api-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { testConfig } from './test-config';
2
+ export declare function expectBeginAuthRedirect(config: ReturnType<typeof testConfig>, response: Response): void;
3
+ //# sourceMappingURL=expect-begin-auth-redirect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-begin-auth-redirect.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-begin-auth-redirect.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AAEzC,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,EACrC,QAAQ,EAAE,QAAQ,QAgBnB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectBeginAuthRedirect = void 0;
4
+ var const_1 = require("./const");
5
+ function expectBeginAuthRedirect(config, response) {
6
+ expect(response.status).toEqual(302);
7
+ var _a = new URL(response.headers.get('location')), hostname = _a.hostname, pathname = _a.pathname, searchParams = _a.searchParams;
8
+ expect(hostname).toBe(const_1.TEST_SHOP);
9
+ expect(pathname).toBe('/admin/oauth/authorize');
10
+ expect(searchParams.get('client_id')).toBe(config.apiKey);
11
+ expect(searchParams.get('scope')).toBe(config.scopes.toString());
12
+ expect(searchParams.get('redirect_uri')).toBe("".concat(config.appUrl, "/auth/callback"));
13
+ expect(searchParams.get('state')).toStrictEqual(expect.any(String));
14
+ }
15
+ exports.expectBeginAuthRedirect = expectBeginAuthRedirect;
16
+ //# sourceMappingURL=expect-begin-auth-redirect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-begin-auth-redirect.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-begin-auth-redirect.ts"],"names":[],"mappings":";;;AAAA,iCAAkC;AAGlC,SAAgB,uBAAuB,CACrC,MAAqC,EACrC,QAAkB;IAElB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAA,KAAqC,IAAI,GAAG,CAChD,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,CAClC,EAFM,QAAQ,cAAA,EAAE,QAAQ,cAAA,EAAE,YAAY,kBAEtC,CAAC;IAEF,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,iBAAS,CAAC,CAAC;IACjC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAChD,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,MAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CAC3C,UAAG,MAAM,CAAC,MAAM,mBAAgB,CACjC,CAAC;IACF,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AACtE,CAAC;AAlBD,0DAkBC"}
@@ -0,0 +1,2 @@
1
+ export declare function expectDocumentRequestHeaders(response: Response, isEmbeddedApp?: boolean): void;
2
+ //# sourceMappingURL=expect-document-request-headers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-document-request-headers.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-document-request-headers.ts"],"names":[],"mappings":"AAIA,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,QAAQ,EAClB,aAAa,UAAO,QAkBrB"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectDocumentRequestHeaders = void 0;
4
+ var const_1 = require("../authenticate/const");
5
+ var const_2 = require("./const");
6
+ function expectDocumentRequestHeaders(response, isEmbeddedApp) {
7
+ if (isEmbeddedApp === void 0) { isEmbeddedApp = true; }
8
+ var headers = response.headers;
9
+ if (isEmbeddedApp) {
10
+ expect(headers.get('Content-Security-Policy')).toEqual("frame-ancestors https://".concat(encodeURIComponent(const_2.TEST_SHOP), " https://admin.shopify.com https://*.spin.dev;"));
11
+ expect(headers.get('Link')).toEqual("<".concat(const_1.APP_BRIDGE_URL, ">; rel=\"preload\"; as=\"script\";"));
12
+ }
13
+ else {
14
+ expect(headers.get('Content-Security-Policy')).toEqual("frame-ancestors 'none';");
15
+ }
16
+ }
17
+ exports.expectDocumentRequestHeaders = expectDocumentRequestHeaders;
18
+ //# sourceMappingURL=expect-document-request-headers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-document-request-headers.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-document-request-headers.ts"],"names":[],"mappings":";;;AAAA,+CAAqD;AAErD,iCAAkC;AAElC,SAAgB,4BAA4B,CAC1C,QAAkB,EAClB,aAAoB;IAApB,8BAAA,EAAA,oBAAoB;IAEpB,IAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IAEjC,IAAI,aAAa,EAAE;QACjB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CACpD,kCAA2B,kBAAkB,CAC3C,iBAAS,CACV,mDAAgD,CAClD,CAAC;QACF,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CACjC,WAAI,sBAAc,uCAAgC,CACnD,CAAC;KACH;SAAM;QACL,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CACpD,yBAAyB,CAC1B,CAAC;KACH;AACH,CAAC;AApBD,oEAoBC"}
@@ -0,0 +1,8 @@
1
+ interface ExpectExitIframeRedirectOptions {
2
+ shop?: string;
3
+ host?: string | null;
4
+ destination?: string;
5
+ }
6
+ export declare function expectExitIframeRedirect(response: Response, { shop, host, destination, }?: ExpectExitIframeRedirectOptions): void;
7
+ export {};
8
+ //# sourceMappingURL=expect-exit-iframe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-exit-iframe.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-exit-iframe.ts"],"names":[],"mappings":"AAEA,UAAU,+BAA+B;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,QAAQ,EAClB,EACE,IAAgB,EAChB,IAAkB,EAClB,WAAkC,GACnC,GAAE,+BAAoC,QAgBxC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectExitIframeRedirect = void 0;
4
+ var const_1 = require("./const");
5
+ function expectExitIframeRedirect(response, _a) {
6
+ var _b = _a === void 0 ? {} : _a, _c = _b.shop, shop = _c === void 0 ? const_1.TEST_SHOP : _c, _d = _b.host, host = _d === void 0 ? const_1.BASE64_HOST : _d, _e = _b.destination, destination = _e === void 0 ? "/auth?shop=".concat(shop) : _e;
7
+ expect(response.status).toBe(302);
8
+ var _f = new URL(response.headers.get('location'), const_1.APP_URL), pathname = _f.pathname, searchParams = _f.searchParams;
9
+ expect(pathname).toBe('/auth/exit-iframe');
10
+ expect(searchParams.get('shop')).toBe(shop);
11
+ expect(searchParams.get('exitIframe')).toBe(destination);
12
+ if (host) {
13
+ expect(searchParams.get('host')).toBe(host);
14
+ }
15
+ }
16
+ exports.expectExitIframeRedirect = expectExitIframeRedirect;
17
+ //# sourceMappingURL=expect-exit-iframe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-exit-iframe.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-exit-iframe.ts"],"names":[],"mappings":";;;AAAA,iCAAwD;AAQxD,SAAgB,wBAAwB,CACtC,QAAkB,EAClB,EAIuC;QAJvC,qBAIqC,EAAE,KAAA,EAHrC,YAAgB,EAAhB,IAAI,mBAAG,iBAAS,KAAA,EAChB,YAAkB,EAAlB,IAAI,mBAAG,mBAAW,KAAA,EAClB,mBAAkC,EAAlC,WAAW,mBAAG,qBAAc,IAAI,CAAE,KAAA;IAGpC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE5B,IAAA,KAA2B,IAAI,GAAG,CACtC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,EACjC,eAAO,CACR,EAHM,QAAQ,cAAA,EAAE,YAAY,kBAG5B,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAE3C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAEzD,IAAI,IAAI,EAAE;QACR,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC7C;AACH,CAAC;AAtBD,4DAsBC"}
@@ -0,0 +1,2 @@
1
+ export declare function expectLoginRedirect(response: Response): void;
2
+ //# sourceMappingURL=expect-login-redirect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-login-redirect.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-login-redirect.ts"],"names":[],"mappings":"AAEA,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,QAKrD"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.expectLoginRedirect = void 0;
4
+ var const_1 = require("./const");
5
+ function expectLoginRedirect(response) {
6
+ expect(response.status).toBe(302);
7
+ var pathname = new URL(response.headers.get('location'), const_1.APP_URL).pathname;
8
+ expect(pathname).toBe('/auth/login');
9
+ }
10
+ exports.expectLoginRedirect = expectLoginRedirect;
11
+ //# sourceMappingURL=expect-login-redirect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expect-login-redirect.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/expect-login-redirect.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAEhC,SAAgB,mBAAmB,CAAC,QAAkB;IACpD,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAE3B,IAAA,QAAQ,GAAI,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAE,EAAE,eAAO,CAAC,SAAvD,CAAwD;IACvE,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACvC,CAAC;AALD,kDAKC"}
@@ -0,0 +1,2 @@
1
+ export declare function getHmac(body: string): string;
2
+ //# sourceMappingURL=get-hmac.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-hmac.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/get-hmac.ts"],"names":[],"mappings":"AAIA,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAK5C"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getHmac = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var crypto_1 = tslib_1.__importDefault(require("crypto"));
6
+ var const_1 = require("./const");
7
+ function getHmac(body) {
8
+ return crypto_1.default
9
+ .createHmac('sha256', const_1.API_SECRET_KEY)
10
+ .update(body, 'utf8')
11
+ .digest('base64');
12
+ }
13
+ exports.getHmac = getHmac;
14
+ //# sourceMappingURL=get-hmac.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-hmac.js","sourceRoot":"","sources":["../../../../src/server/__test-helpers/get-hmac.ts"],"names":[],"mappings":";;;;AAAA,0DAA4B;AAE5B,iCAAuC;AAEvC,SAAgB,OAAO,CAAC,IAAY;IAClC,OAAO,gBAAM;SACV,UAAU,CAAC,QAAQ,EAAE,sBAAc,CAAC;SACpC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;SACpB,MAAM,CAAC,QAAQ,CAAC,CAAC;AACtB,CAAC;AALD,0BAKC"}
@@ -0,0 +1,8 @@
1
+ import { JwtPayload } from '@shopify/shopify-api';
2
+ interface TestJwt {
3
+ token: string;
4
+ payload: JwtPayload;
5
+ }
6
+ export declare function getJwt(overrides?: Partial<JwtPayload>): TestJwt;
7
+ export {};
8
+ //# sourceMappingURL=get-jwt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-jwt.d.ts","sourceRoot":"","sources":["../../../../src/server/__test-helpers/get-jwt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,sBAAsB,CAAC;AAKhD,UAAU,OAAO;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,UAAU,CAAC;CACrB;AAED,wBAAgB,MAAM,CAAC,SAAS,GAAE,OAAO,CAAC,UAAU,CAAM,GAAG,OAAO,CAoBnE"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getJwt = void 0;
4
+ var tslib_1 = require("tslib");
5
+ var jsonwebtoken_1 = tslib_1.__importDefault(require("jsonwebtoken"));
6
+ var const_1 = require("./const");
7
+ function getJwt(overrides) {
8
+ if (overrides === void 0) { overrides = {}; }
9
+ var date = new Date();
10
+ var payload = tslib_1.__assign({ iss: "".concat(const_1.TEST_SHOP, "/admin"), dest: "https://".concat(const_1.TEST_SHOP), aud: const_1.API_KEY, sub: "".concat(const_1.USER_ID), exp: date.getTime() / 1000 + 3600, nbf: date.getTime() / 1000 - 3600, iat: date.getTime() / 1000 - 3600, jti: '1234567890', sid: '0987654321' }, overrides);
11
+ var token = jsonwebtoken_1.default.sign(payload, const_1.API_SECRET_KEY, {
12
+ algorithm: 'HS256',
13
+ });
14
+ return { token: token, payload: payload };
15
+ }
16
+ exports.getJwt = getJwt;
17
+ //# sourceMappingURL=get-jwt.js.map