More progress, committing to get assistance with TS

This commit is contained in:
Dane Everitt 2018-12-29 15:51:13 -08:00
parent a76bde5b1d
commit ed5ebe9155
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
8 changed files with 45 additions and 27 deletions

View file

@ -1,19 +1,23 @@
import axios from 'axios';
import axios, {AxiosInstance} from 'axios';
// This token is set in the bootstrap.js file at the beginning of the request
// and is carried through from there.
// const token: string = '';
const http = axios.create({
'X-Requested-With': 'XMLHttpRequest',
'Accept': 'application/json',
'Content-Type': 'application/json',
const http: AxiosInstance = axios.create({
headers: {
'X-Requested-With': 'XMLHttpRequest',
'Accept': 'application/json',
'Content-Type': 'application/json',
},
});
// If we have a phpdebugbar instance registered at this point in time go
// ahead and route the response data through to it so things show up.
// @ts-ignore
if (typeof window.phpdebugbar !== 'undefined') {
http.interceptors.response.use(response => {
// @ts-ignore
window.phpdebugbar.ajaxHandler.handle(response.request);
return response;

View file

@ -1,16 +1,13 @@
import http from './../http';
import filter from 'lodash/filter';
import isObject from 'lodash/isObject';
import http from '../http';
import { filter, isObject } from 'lodash';
// @ts-ignore
import route from '../../../../../vendor/tightenco/ziggy/src/js/route';
import {DirectoryContents} from "./types";
/**
* Get the contents of a specific directory for a given server.
*
* @param {String} server
* @param {String} directory
* @return {Promise}
*/
export function getDirectoryContents (server, directory) {
export function getDirectoryContents (server: string, directory: string): Promise<DirectoryContents> {
return new Promise((resolve, reject) => {
http.get(route('server.files', { server, directory }))
.then((response) => {
@ -30,7 +27,7 @@ export function getDirectoryContents (server, directory) {
}
if (err.response.data && isObject(err.response.data.errors)) {
err.response.data.errors.forEach(error => {
err.response.data.errors.forEach((error: any) => {
return reject(error.detail);
});
}

View file

@ -0,0 +1,5 @@
export type DirectoryContents = {
files: Array<string>,
directories: Array<string>,
editable: Array<string>
}