using requestIdleCallback in typescript requires using @types/requestidlecallback
import {requestIdleCallback} from "requestidlecallback";
export async function Test() : Promise<void> {
return new Promise((yup) => {
requestIdleCallback(() => {
alert('done');
yup();
});
});
}import { requestIdleCallback } from "requestidlecallback";
export async function Test() {
return new Promise((yup) => {
requestIdleCallback(() => {
alert('done');
yup();
});
});
}export async function Test() {
return new Promise((yup) => {
requestIdleCallback(() => {
alert('done');
yup();
});
});
}
//# sourceMappingURL=test.module.js.mapgulp-replace is used mostly to strip out the import statement, but also to force typescript to behave and use tabs instead of spaces (input tabs, you output spaces for some reason), as per discussion on twitter & reddit regarding the accessibility impact of tabs & spaces.
const gulp = require('gulp');
const typescript = require('gulp-typescript');
const replace = require('gulp-replace');
const sourcemaps = require('gulp-sourcemaps');
gulp.task('default', () => {
return gulp.src(
'./ts/**/*.module.ts'
).pipe(
sourcemaps.init()
).pipe(
typescript.createProject('./tsconfig.json')()
).pipe(
replace(
'import { requestIdleCallback } from "requestidlecallback";\n',
''
)
).pipe(
replace(
/ {4}/g,
'\t'
)
).pipe(
sourcemaps.write('./', {
includeContent: false,
})
).pipe(
gulp.dest('./js/')
);
});