1import { RequestInterceptor } from "@rails/request.js" 2import { FetchRequest } from "@rails/request.js" 3 4// 5// Inject Authorization & Content-Type into @rails/request.js requests. 6RequestInterceptor.register(async (request) => { 7 request.addHeader("Authorization", `Bearer ${OAUTH_TOKEN}`) 8}) 9 10// 11// Setup Turbo Progress bar on @rails/request.js requests. 12export function showProgressBar() { 13 Turbo.navigator.delegate.adapter.progressBar.setValue(0) 14 Turbo.navigator.delegate.adapter.progressBar.show() 15} 16 17export function hideProgressBar() { 18 Turbo.navigator.delegate.adapter.progressBar.setValue(1) 19 Turbo.navigator.delegate.adapter.progressBar.hide() 20} 21 22export function withProgress(request) { 23 new Promise(resolve => { 24 showProgressBar() 25 resolve(request.then(hideProgressBar)) 26 }) 27 return request 28} 29 30export function get (url, options) { 31 const request = new FetchRequest("get", url, options) 32 return withProgress(request.perform()) 33} 34 35export function post (url, options) { 36 const request = new FetchRequest("post", url, options) 37 return withProgress(request.perform()) 38} 39 40export function put (url, options) { 41 const request = new FetchRequest("put", url, options) 42 return withProgress(request.perform()) 43} 44 45export function patch (url, options) { 46 const request = new FetchRequest("patch", url, options) 47 return withProgress(request.perform()) 48} 49 50export function destroy (url, options) { 51 const request = new FetchRequest("delete", url, options) 52 return withProgress(request.perform()) 53};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.