Commit Graph

21 Commits

Author SHA1 Message Date
Anders Kaseorg dd3d8e1bc6 tsconfig: Enable verbatimModuleSyntax.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-13 14:10:37 -08:00
Anders Kaseorg 01540b45b0 web: Set "type": "module" and convert various CJS files to ESM.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-13 09:18:56 -08:00
Anders Kaseorg ec3177c834 web: Add explicit extensions to imports.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-11-13 09:18:56 -08:00
Shubham Padia 33ef160b06 help-beta: Create initial starlight project.
We are adding MDX files to `.gitignore` for now since they are
just a result of a build process, once the migration is done,
we will not ignore them.
We're using PNPM workspaces to manage this project.
The new project's tsconfig.json has been copied from the current
root tsconfig.json while omitting some details that are only
relevant to that project.
`help-beta/src/env.d.ts` is a type declaration file auto-generated
by Astro. See https://github.com/withastro/astro/issues/6013.
2024-08-02 18:18:01 -07:00
Anders Kaseorg 1a8d8411a7 tsconfig: Enable composite.
This allows TypeScript to use incremental compilation by default.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-06-09 12:08:03 -07:00
Anders Kaseorg 56753edbcd tsconfig: Organize and sort options consistently.
Organize and sort the options in tsconfig.json according to the way
they’re listed at https://www.typescriptlang.org/tsconfig/.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-06-09 12:08:03 -07:00
Anders Kaseorg 2274716c44 tsconfig: Remove unnecessary options.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-06-09 12:08:03 -07:00
Anders Kaseorg 804c3706ff tsconfig: Enable noUncheckedIndexedAccess.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-05-30 16:29:23 -07:00
Anders Kaseorg 507eb4913c tsconfig: Enable exactOptionalPropertyTypes.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2024-05-16 08:58:20 -07:00
Junyao Chen 4730cdab17 dependencies: Install `@types/jquery.validation for type annotation.
`signup.js` uses `jquery-validation` plugin, which is a javascript
package shipped without type definitions. Installing its corresponding
types help with TypeScript migration by allowing types annotations
involving the plugin methods and obejcts.
2023-08-14 16:00:20 -07:00
Lalit bbf2f5f91f ts: Convert `emoji.js` to TypeScript.
Converted `emoji.js` to TypeScript by adding relevant type definitions,
also modified `target` option in our tsconfig to 'ESNext' so that types
for object methods like `hasOwn` which is being used in `emoji.js` are
included.
2023-04-05 10:29:01 -07:00
Anders Kaseorg c1675913a2 web: Move web app to ‘web’ directory.
Ever since we started bundling the app with webpack, there’s been less
and less overlap between our ‘static’ directory (files belonging to
the frontend app) and Django’s interpretation of the ‘static’
directory (files served directly to the web).

Split the app out to its own ‘web’ directory outside of ‘static’, and
remove all the custom collectstatic --ignore rules.  This makes it
much clearer what’s actually being served to the web, and what’s being
bundled by webpack.  It also shrinks the release tarball by 3%.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2023-02-23 16:04:17 -08:00
Anders Kaseorg d840d80ed4 tsconfig: Enable noImplicitOverride.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-09-13 10:10:34 -07:00
Priyank Patel 9418ae51fa ts: Convert i18n module to TypeScript.
We update our tsconfig target to ES2020 so that we don't get type
errors related to some properties not being in Intl that is used by
@formatjs/intl.
2021-06-22 09:09:36 -07:00
Anders Kaseorg cdff4cfe53 dependencies: Add ts-node.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-22 16:03:10 -08:00
Anders Kaseorg 72d6ff3c3b docs: Fix more capitalization issues.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-10-23 11:46:55 -07:00
Anders Kaseorg 0e0baca41e typescript: Enable strictNullChecks.
Let’s do this right from the beginning instead of making a mess to
clean up later.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-07-28 11:01:35 -07:00
Anders Kaseorg e950344078 tsconfig: Enable resolveJsonModule.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2020-05-26 23:33:40 -07:00
Anders Kaseorg 58e9526586 tsconfig: Disable automatic inclusion of type packages.
Automatic inclusion is for files with global declarations, as opposed
to files declared as modules.  typeRoots already had the side effect
of disabling the default automatic inclusion for node_modules.  Since
we also don’t need it for static/js/types, we may as well disable it
completely.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2020-03-26 17:07:50 -07:00
Anders Kaseorg 35e2013199 tsconfig: Fix typescript-eslint memory usage disaster.
typescript-eslint was using hundreds of megabytes to track `*.js`
files that it shouldn’t be checking.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-11-22 11:38:25 -08:00
Anders Kaseorg 0584a7938f tsconfig: Move to top level.
This way, webpack.config.ts is type checked.

Signed-off-by: Anders Kaseorg <anders@zulipchat.com>
2019-11-04 18:12:11 -08:00