diff --git a/src/components/actions/actions/ToggleAction.tsx b/src/components/actions/actions/ToggleAction.tsx
index b1ce191..4a734b0 100644
--- a/src/components/actions/actions/ToggleAction.tsx
+++ b/src/components/actions/actions/ToggleAction.tsx
@@ -1,7 +1,7 @@
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { formatShortcut } from "../../../features/_utils/string.utils";
import styles from "../Actions.module.css";
-import { ReactNode, useState } from "react";
+import { ReactElement, useState } from "react";
import { faSquare } from "@fortawesome/free-regular-svg-icons";
import { faSquareCheck } from "@fortawesome/free-solid-svg-icons";
import { ActionProps } from "../Actions";
@@ -10,7 +10,7 @@ interface ToggleActionProps extends ActionProps {
initialValue: boolean;
}
-export function ToggleAction({ actionId, label, shortcut, initialValue, onTrigger }: ToggleActionProps): ReactNode {
+export function ToggleAction({ actionId, label, shortcut, initialValue, onTrigger }: ToggleActionProps): ReactElement {
const [active, setActive] = useState(initialValue ?? false);
return (
{
diff --git a/src/components/apps/browser/Browser.tsx b/src/components/apps/browser/Browser.tsx
index 89dc1b2..afd6dfc 100644
--- a/src/components/apps/browser/Browser.tsx
+++ b/src/components/apps/browser/Browser.tsx
@@ -6,9 +6,13 @@ import { faCaretLeft, faCaretRight, faHome, faRotateRight } from "@fortawesome/f
import { HOME_URL, SEARCH_URL } from "../../../config/apps/browser.config";
import { isValidUrl } from "../../../features/_utils/browser.utils";
import { useHistory } from "../../../hooks/_utils/history";
+import { WindowProps } from "../../windows/WindowView";
-/** @type {import("../../windows/WindowView.jsx").windowProps} */
-export function Browser({ startUrl, focus }) {
+interface BrowserProps extends WindowProps {
+ startUrl?: string;
+}
+
+export function Browser({ startUrl, focus }: BrowserProps) {
const initialUrl = startUrl ?? HOME_URL;
const [url, setUrl] = useState(initialUrl);
diff --git a/src/components/apps/calculator/Calculator.tsx b/src/components/apps/calculator/Calculator.tsx
index 746581c..11a2c62 100644
--- a/src/components/apps/calculator/Calculator.tsx
+++ b/src/components/apps/calculator/Calculator.tsx
@@ -1,9 +1,9 @@
import { useCallback, useEffect, useState } from "react";
import { Button } from "../../_utils/button/Button";
import styles from "./Calculator.module.css";
+import { WindowProps } from "../../windows/WindowView";
-/** @type {import("../../windows/WindowView.jsx").windowProps} */
-export function Calculator({ active }) {
+export function Calculator({ active }: WindowProps) {
const [input, setInput] = useState("0");
const [firstNumber, setFirstNumber] = useState(null);
const [secondNumber, setSecondNumber] = useState(null);
diff --git a/src/components/apps/file-explorer/directory-list/DirectoryList.tsx b/src/components/apps/file-explorer/directory-list/DirectoryList.tsx
index 586694f..de8157f 100644
--- a/src/components/apps/file-explorer/directory-list/DirectoryList.tsx
+++ b/src/components/apps/file-explorer/directory-list/DirectoryList.tsx
@@ -1,4 +1,4 @@
-import { ReactNode, useEffect, useRef, useState } from "react";
+import { ReactElement, useEffect, useRef, useState } from "react";
import { VirtualFile } from "../../../../features/virtual-drive/file/virtualFile";
import { VirtualFolder } from "../../../../features/virtual-drive/folder/virtualFolder";
import { Interactable } from "../../../_utils/interactable/Interactable";
@@ -30,7 +30,7 @@ interface DirectoryListProps {
}
export function DirectoryList({ directory, showHidden = false, folderClassName, fileClassName, className,
- onContextMenuFile, onContextMenuFolder, onOpenFile, onOpenFolder, allowMultiSelect = true, onSelectionChange, ...props }: DirectoryListProps): ReactNode {
+ onContextMenuFile, onContextMenuFolder, onOpenFile, onOpenFolder, allowMultiSelect = true, onSelectionChange, ...props }: DirectoryListProps): ReactElement {
const [selectedFolders, setSelectedFolders] = useState([]);
const [selectedFiles, setSelectedFiles] = useState([]);
diff --git a/src/components/apps/media-viewer/MediaViewer.tsx b/src/components/apps/media-viewer/MediaViewer.tsx
index b27e062..14b71ad 100644
--- a/src/components/apps/media-viewer/MediaViewer.tsx
+++ b/src/components/apps/media-viewer/MediaViewer.tsx
@@ -4,11 +4,14 @@ import { useWindowsManager } from "../../../hooks/windows/windowsManagerContext"
import styles from "./MediaViewer.module.css";
import { APPS } from "../../../config/apps.config";
import { IMAGE_FORMATS } from "../../../config/apps/mediaViewer.config";
+import { VirtualFile } from "../../../features/virtual-drive/file/virtualFile";
+import { WindowProps } from "../../windows/WindowView";
-/**
- * @param {import("../../windows/WindowView.jsx").windowProps} props
- */
-export function MediaViewer({ file, close, setTitle }) {
+interface MediaViewerProps extends WindowProps {
+ file?: VirtualFile;
+}
+
+export function MediaViewer({ file, close, setTitle }: MediaViewerProps) {
const windowsManager = useWindowsManager();
useEffect(() => {
diff --git a/src/components/apps/settings/Settings.tsx b/src/components/apps/settings/Settings.tsx
index 183eff8..1d2e464 100644
--- a/src/components/apps/settings/Settings.tsx
+++ b/src/components/apps/settings/Settings.tsx
@@ -7,11 +7,13 @@ import { AppearanceSettings } from "./tabs/AppearanceSettings";
import { AboutSettings } from "./tabs/AboutSettings";
import { StorageTab } from "./tabs/StorageSettings";
import { AppsSettings } from "./tabs/AppsSettings";
+import { WindowProps } from "../../windows/WindowView";
-/**
- * @param {import("../../windows/WindowView.jsx").windowProps} props
- */
-export function Settings({ tab, modalsManager }) {
+interface SettingsProps extends WindowProps {
+ tab?: number;
+}
+
+export function Settings({ tab }: SettingsProps) {
return (
- {(virtualRoot.navigate(WALLPAPERS_PATH) as VirtualFolder)?.getFiles()?.toReversed().map(({ id, source }) =>
+ {(virtualRoot.navigate(WALLPAPERS_PATH) as VirtualFolder)?.getFiles()?.reverse().map(({ id, source }) =>
{
+ onFinish={(file: VirtualFile) => {
setCurrentFile(file);
setUnsavedChanges(false);
}}
diff --git a/src/components/modals/ModalView.tsx b/src/components/modals/ModalView.tsx
index 90aa38f..dda3f03 100644
--- a/src/components/modals/ModalView.tsx
+++ b/src/components/modals/ModalView.tsx
@@ -4,18 +4,11 @@ import OutsideClickListener from "../../hooks/_utils/outsideClick";
import styles from "./ModalView.module.css";
import { useEffect } from "react";
-/**
- * @typedef {object} modalProps
- * @param {object} props
- * @param {Modal} props.modal
- * @param {*} props.params
- * @param {Function} props.onFinish
- */
-
export interface ModalProps {
modal: Modal;
params?: Record;
children?: ReactNode;
+ onFinish?: Function;
[key: string]: any;
}
diff --git a/src/components/modals/file-properties/FileProperties.tsx b/src/components/modals/file-properties/FileProperties.tsx
index ab7ffcd..59fedd3 100644
--- a/src/components/modals/file-properties/FileProperties.tsx
+++ b/src/components/modals/file-properties/FileProperties.tsx
@@ -5,7 +5,7 @@ import utilStyles from "../../../styles/utils.module.css";
import { StorageManager } from "../../../features/storage/storageManager";
import AppsManager from "../../../features/apps/appsManager";
import { ModalProps } from "../ModalView.js";
-import { VirtualFile } from "../../../features/virtual-drive/file/virtualFile.js";
+import { VirtualFile } from "../../../features/virtual-drive/file/virtualFile";
interface FilePropetiesProps extends ModalProps {
file: VirtualFile;
diff --git a/src/components/modals/share/Share.tsx b/src/components/modals/share/Share.tsx
index 2d52fd2..05b7ccf 100644
--- a/src/components/modals/share/Share.tsx
+++ b/src/components/modals/share/Share.tsx
@@ -11,6 +11,7 @@ import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { faSquare } from "@fortawesome/free-regular-svg-icons";
import { faSquareCheck } from "@fortawesome/free-solid-svg-icons";
import { useAlert } from "../../../hooks/modals/alert";
+import { ModalProps } from "../ModalView";
const APP_OPTIONS = {
"terminal": [
@@ -33,8 +34,7 @@ const APP_OPTIONS = {
]
};
-/** @type {import("../ModalView.jsx").modalProps} */
-export function Share({ modal, params, ...props }) {
+export function Share({ modal, params, ...props }: ModalProps) {
const [appId, setAppId] = useState(params.appId ?? "");
const [fullscreen, setFullscreen] = useState(params.fullscreen ?? false);
const [options, setOptions] = useState({});
diff --git a/src/components/windows/WindowFallbackView.tsx b/src/components/windows/WindowFallbackView.tsx
index 3f41716..a08f767 100644
--- a/src/components/windows/WindowFallbackView.tsx
+++ b/src/components/windows/WindowFallbackView.tsx
@@ -1,4 +1,4 @@
-import { ReactNode, useEffect, useState } from "react";
+import { ReactElement, useEffect, useState } from "react";
import { useAlert } from "../../hooks/modals/alert";
import AppsManager from "../../features/apps/appsManager";
import Vector2 from "../../features/math/vector2";
@@ -12,7 +12,7 @@ export interface WindowFallbackViewProps {
}
// I don't know why this component's type needs to be ReactNode instead of FC, it has something to do with the way it's implemented
-export default function WindowFallbackView({ error, resetErrorBoundary, app, closeWindow }: WindowFallbackViewProps): ReactNode {
+export default function WindowFallbackView({ error, resetErrorBoundary, app, closeWindow }: WindowFallbackViewProps): ReactElement {
const { alert } = useAlert();
const [alerted, setAlerted] = useState(false);
diff --git a/src/config/apps/textEditor.config.ts b/src/config/apps/textEditor.config.ts
index 9d719e5..b382a6e 100644
--- a/src/config/apps/textEditor.config.ts
+++ b/src/config/apps/textEditor.config.ts
@@ -3,6 +3,8 @@ export const ZOOM_FACTOR = 4;
export const CODE_FORMATS = [
"js",
"jsx",
+ "ts",
+ "tsx",
"json",
"css",
"html",
@@ -13,5 +15,7 @@ export const CODE_FORMATS = [
export const EXTENSION_TO_LANGUAGE = {
"js": "javascript",
"jsx": "javascript",
+ "ts": "typescript",
+ "tsx": "typescript",
"yml": "yaml",
};
\ No newline at end of file
diff --git a/src/features/apps/app.tsx b/src/features/apps/app.tsx
index 2de2c52..c776c7d 100644
--- a/src/features/apps/app.tsx
+++ b/src/features/apps/app.tsx
@@ -1,6 +1,6 @@
-import React from "react";
import Vector2 from "../math/vector2";
import { WindowProps } from "../../components/windows/WindowView";
+import { FC } from "react";
export default class App {
name: string;
@@ -14,14 +14,14 @@ export default class App {
/**
* @param windowOptions - Default window options
*/
- constructor(name: string, id: string, windowContent: React.FC, windowOptions?: object | null) {
+ constructor(name: string, id: string, windowContent: FC, windowOptions?: object | null) {
Object.assign(this, { name, id, windowContent, windowOptions });
if (this.windowContent == null)
console.warn(`App (${this.id}) is missing the windowContent property.`);
}
- WindowContent = (props: React.JSX.IntrinsicAttributes & WindowProps) => {
+ WindowContent = (props: JSX.IntrinsicAttributes & WindowProps) => {
props = { ...props, ...this.windowOptions };
if (this.windowContent == null) {
diff --git a/src/features/virtual-drive/file/virtualFile.ts b/src/features/virtual-drive/file/virtualFile.ts
index 47244d4..f53417e 100644
--- a/src/features/virtual-drive/file/virtualFile.ts
+++ b/src/features/virtual-drive/file/virtualFile.ts
@@ -131,6 +131,8 @@ export class VirtualFile extends VirtualBase {
case "js":
case "json":
case "jsx":
+ case "ts":
+ case "tsx":
case "css":
case "html":
case "yml":
diff --git a/src/features/virtual-drive/root/defaultData.ts b/src/features/virtual-drive/root/defaultData.ts
index eb76669..6b881e8 100644
--- a/src/features/virtual-drive/root/defaultData.ts
+++ b/src/features/virtual-drive/root/defaultData.ts
@@ -155,9 +155,9 @@ export function loadDefaultData(virtualRoot: VirtualRoot) {
.createFolder("features")
.createFolder("hooks")
.createFolder("styles")
- .createFile("App", "jsx", (file) => {
- file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/src/App.jsx");
- }).createFile("index", "js", (file) => {
+ .createFile("App", "tsx", (file) => {
+ file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/src/App.tsx");
+ }).createFile("index", "tsx", (file) => {
file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/src/index");
});
});
@@ -172,5 +172,9 @@ export function loadDefaultData(virtualRoot: VirtualRoot) {
file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/README.md");
}).createFile("package", "json", (file) => {
file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/package.json");
+ }).createFile("deploy", "sh", (file) => {
+ file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/deploy.sh");
+ }).createFile("tsconfig", "json", (file) => {
+ file.setSource("https://raw.githubusercontent.com/Prozilla/Prozilla-OS/main/tsconfig.json");
});
}
\ No newline at end of file
diff --git a/src/hooks/modals/contextMenu.tsx b/src/hooks/modals/contextMenu.tsx
index c832aa8..88f0d43 100644
--- a/src/hooks/modals/contextMenu.tsx
+++ b/src/hooks/modals/contextMenu.tsx
@@ -5,22 +5,6 @@ import { ActionsProps, STYLES } from "../../components/actions/Actions";
import { useModalsManager } from "./modalsManagerContext";
import { ModalProps } from "../../components/modals/ModalView";
-/**
- * @callback onContextMenuType
- * @param {object} event
- * @param {object} params
- * @returns {Modal}
- */
-
-/**
- * @param {object} props
- * @param {import("../../components/actions/Actions.jsx").actionsType} props.Actions
- * @returns {{
- * onContextMenu: onContextMenuType,
- * ShortcutsListener: import("../../components/actions/Actions.jsx").actionsType
- * }}
- */
-
interface UseContextMenuParams {
Actions: FC;
}
diff --git a/src/index.tsx b/src/index.tsx
index a96201a..440947c 100644
--- a/src/index.tsx
+++ b/src/index.tsx
@@ -2,7 +2,6 @@ import React from "react";
import ReactDOM from "react-dom/client";
import "./styles/global.css";
import App from "./App";
-// eslint-disable-next-line @typescript-eslint/no-unused-vars
import reportWebVitals from "./reportWebVitals";
import { ASCII_LOGO, NAME } from "./config/branding.config";
diff --git a/tsconfig.json b/tsconfig.json
index 1044570..8c28c13 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -1,110 +1,30 @@
{
"compilerOptions": {
- /* Visit https://aka.ms/tsconfig to read more about this file */
-
- /* Projects */
- // "incremental": true, /* Save .tsbuildinfo files to allow for incremental compilation of projects. */
- // "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */
- // "tsBuildInfoFile": "./.tsbuildinfo", /* Specify the path to .tsbuildinfo incremental compilation file. */
- // "disableSourceOfProjectReferenceRedirect": true, /* Disable preferring source files instead of declaration files when referencing composite projects. */
- // "disableSolutionSearching": true, /* Opt a project out of multi-project reference checking when editing. */
- // "disableReferencedProjectLoad": true, /* Reduce the number of projects loaded automatically by TypeScript. */
-
/* Language and Environment */
- "target": "ESNext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
- // "lib": [], /* Specify a set of bundled library declaration files that describe the target runtime environment. */
- "jsx": "react-jsx", /* Specify what JSX code is generated. */
- // "experimentalDecorators": true, /* Enable experimental support for legacy experimental decorators. */
- // "emitDecoratorMetadata": true, /* Emit design-type metadata for decorated declarations in source files. */
- // "jsxFactory": "", /* Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'. */
- // "jsxFragmentFactory": "", /* Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'. */
- // "jsxImportSource": "", /* Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'. */
- // "reactNamespace": "", /* Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit. */
- // "noLib": true, /* Disable including any library files, including the default lib.d.ts. */
- // "useDefineForClassFields": true, /* Emit ECMAScript-standard-compliant class fields. */
- // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */
+ "target": "ESNext",
+ "jsx": "react-jsx",
/* Modules */
- "module": "commonjs", /* Specify what module code is generated. */
- // "rootDir": "./", /* Specify the root folder within your source files. */
- "moduleResolution": "Node", /* Specify how TypeScript looks up a file from a given module specifier. */
- // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */
- // "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
- // "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
- // "typeRoots": [], /* Specify multiple folders that act like './node_modules/@types'. */
- "types": ["webpack-env"], /* Specify type package names to be included without being referenced in a source file. */
- "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
- // "moduleSuffixes": [], /* List of file name suffixes to search when resolving a module. */
- // "allowImportingTsExtensions": true, /* Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set. */
- // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */
- // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */
- // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */
- "resolveJsonModule": true, /* Enable importing .json files. */
- // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */
- // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */
+ "module": "commonjs",
+ "moduleResolution": "Node",
+ "types": ["webpack-env"],
+ "allowUmdGlobalAccess": true,
+ "resolveJsonModule": true,
/* JavaScript Support */
- "allowJs": true, /* Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files. */
- "checkJs": false, /* Enable error reporting in type-checked JavaScript files. */
- // "maxNodeModuleJsDepth": 1, /* Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'. */
+ "allowJs": true,
+ "checkJs": true,
/* Emit */
- // "declaration": true, /* Generate .d.ts files from TypeScript and JavaScript files in your project. */
- // "declarationMap": true, /* Create sourcemaps for d.ts files. */
- // "emitDeclarationOnly": true, /* Only output d.ts files and not JavaScript files. */
- // "sourceMap": true, /* Create source map files for emitted JavaScript files. */
- // "inlineSourceMap": true, /* Include sourcemap files inside the emitted JavaScript. */
- // "outFile": "./", /* Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output. */
- // "outDir": "./", /* Specify an output folder for all emitted files. */
- // "removeComments": true, /* Disable emitting comments. */
- "noEmit": true, /* Disable emitting files from a compilation. */
- // "importHelpers": true, /* Allow importing helper functions from tslib once per project, instead of including them per-file. */
- // "importsNotUsedAsValues": "remove", /* Specify emit/checking behavior for imports that are only used for types. */
- // "downlevelIteration": true, /* Emit more compliant, but verbose and less performant JavaScript for iteration. */
- // "sourceRoot": "", /* Specify the root path for debuggers to find the reference source code. */
- // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
- // "inlineSources": true, /* Include source code in the sourcemaps inside the emitted JavaScript. */
- // "emitBOM": true, /* Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files. */
- // "newLine": "crlf", /* Set the newline character for emitting files. */
- // "stripInternal": true, /* Disable emitting declarations that have '@internal' in their JSDoc comments. */
- // "noEmitHelpers": true, /* Disable generating custom helper functions like '__extends' in compiled output. */
- // "noEmitOnError": true, /* Disable emitting files if any type checking errors are reported. */
- // "preserveConstEnums": true, /* Disable erasing 'const enum' declarations in generated code. */
- // "declarationDir": "./", /* Specify the output directory for generated declaration files. */
- // "preserveValueImports": true, /* Preserve unused imported values in the JavaScript output that would otherwise be removed. */
+ "noEmit": true,
/* Interop Constraints */
- // "isolatedModules": true, /* Ensure that each file can be safely transpiled without relying on other imports. */
- // "verbatimModuleSyntax": true, /* Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting. */
- "allowSyntheticDefaultImports": true, /* Allow 'import x from y' when a module doesn't have a default export. */
- "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility. */
- // "preserveSymlinks": true, /* Disable resolving symlinks to their realpath. This correlates to the same flag in node. */
- "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
+ "allowSyntheticDefaultImports": true,
+ "esModuleInterop": true,
+ "forceConsistentCasingInFileNames": true,
/* Type Checking */
- "strict": false, /* Enable all strict type-checking options. */
- // "noImplicitAny": false, /* Enable error reporting for expressions and declarations with an implied 'any' type. */
- // "strictNullChecks": false, /* When type checking, take into account 'null' and 'undefined'. */
- // "strictFunctionTypes": false, /* When assigning functions, check to ensure parameters and the return values are subtype-compatible. */
- // "strictBindCallApply": true, /* Check that the arguments for 'bind', 'call', and 'apply' methods match the original function. */
- // "strictPropertyInitialization": false, /* Check for class properties that are declared but not set in the constructor. */
- // "noImplicitThis": true, /* Enable error reporting when 'this' is given the type 'any'. */
- // "useUnknownInCatchVariables": true, /* Default catch clause variables as 'unknown' instead of 'any'. */
- // "alwaysStrict": true, /* Ensure 'use strict' is always emitted. */
- // "noUnusedLocals": true, /* Enable error reporting when local variables aren't read. */
- // "noUnusedParameters": true, /* Raise an error when a function parameter isn't read. */
- // "exactOptionalPropertyTypes": false, /* Interpret optional property types as written, rather than adding 'undefined'. */
- // "noImplicitReturns": true, /* Enable error reporting for codepaths that do not explicitly return in a function. */
- // "noFallthroughCasesInSwitch": true, /* Enable error reporting for fallthrough cases in switch statements. */
- // "noUncheckedIndexedAccess": true, /* Add 'undefined' to a type when accessed using an index. */
- // "noImplicitOverride": true, /* Ensure overriding members in derived classes are marked with an override modifier. */
- // "noPropertyAccessFromIndexSignature": true, /* Enforces using indexed accessors for keys declared using an indexed type. */
- // "allowUnusedLabels": true, /* Disable error reporting for unused labels. */
- // "allowUnreachableCode": true, /* Disable error reporting for unreachable code. */
-
- /* Completeness */
- // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
- // "skipLibCheck": true /* Skip type checking all .d.ts files. */
+ "strict": false,
},
"include": [
"src/**/*"