• Correct Ts Specifiers

    This package transforms import specifiers in source-code from the broken state TypeScript's compiler (tsc) required (prior TypeScript v5.7 RC) into proper ones. This is useful when source-code is processed by standards-compliant software like Node.js. This is a one-and-done process, and the updated source-code should be committed to your version control (ex git); thereafter, source-code import statements should be authored compliant with the ECMAScript (JavaScript) standard.

  • Sveltekit Vite Preprocess Migration

    This codemod updates import paths and ensures compatibility with changes in library structures. In this example, it modifies the import statement for vitePreprocess to reflect updates in the library's API.

  • Sveltekit Import And Path Simplification

    This codemod simplifies the import statements and path resolution in your SvelteKit project. It replaces the usage of resolvePath and concatenation with base by using the resolveRoute function from $app/paths. This results in cleaner and more readable code.

  • Goto To Location Href

    Codemod Description

    This codemod is designed to replace specific patterns in TypeScript files with updated code logic. It transforms instances of goto($A) into window.location.href = $A; when the $A value is a URL starting with http:// or https://. This refactor makes external navigation more explicit by using window.location.href.

  • Dynamic To Static Env Transformer

    This codemod transforms import {$A} from '$env/dynamic/public'; and import {$A} from '$env/dynamic/private'; into their static counterparts, replacing them with import {$A} from '$env/static/public'; and import {$A} from '$env/static/private';, respectively. It ensures compatibility for prerendered pages and static deployments.

  • Add Status To Error Handling

    This codemod improves error handling in SvelteKit by updating the way errors are returned in the load function. In SvelteKit 1, errors were handled inconsistently, often missing the status property or failing to trigger the handleError hook. SvelteKit 2 standardizes error handling by automatically including the status and message properties in error responses.

  • Add Multipart Enctype To Forms With File Input

    This codemod automatically adds the enctype="multipart/form-data" attribute to forms containing file input fields. It ensures that forms with file inputs properly handle file uploads during non-JS submissions, which is a requirement for SvelteKit v2.

  • Add Cookie Path To All Methods

    This codemod adds { path: '/' } to all cookies method calls in your TypeScript project. It ensures that cookies are set, deleted, or serialized with the correct path specified, which helps in consistent cookie handling across different environments.

  • Replace Throw With Error Call

    This codemod simplifies error handling and redirects in your TypeScript project by replacing throw error() and throw redirect() statements with direct calls to error() and redirect(). This change aligns with modern practices and results in cleaner, more readable code.

  • Import Change Js To Ts Extensions

    This codemod changes .js to .ts file extension in relative, top-level imports. If no .js file extension was previously used, it adds .ts file extension instead.

  • Event Handling On Change

    This codemod automates the update of your onChange event handler function to support the new Descendant[] type and selection handling introduced in version 0.104.

  • Insert Nodes

    Theis transformation ensures that calls to Transforms.insertNodes in the updated API remain functional and behave identically to their usage in the older API (v0.88) while adhering to the new, more explicit parameterization.

  • With React Integration

    This codemod transforms the usage of withReact(createEditor()) into a useMemo-based structure, which wraps the editor creation and introduces an inline-checking function (isInline) for the editor instance. This transformation optimizes the creation of the editor object by memoizing it.

  • Editor State

    This codemod migrates from using useContext(EditorContext) to the new useSlate() hook in Slate. It transforms the editor state management approach and adds new state hooks.

  • Cursor Selection Handling

    This codemod shows how to migrate cursor and selection handling from Slate v0.88 to v0.104, including the Preventing runtime errors from null selections.

  • Editor Node

    This codemod transforms Editor.node usage into Editor.nodes format. It also handles cases with both destructuring and non-destructuring .The new API returns an iterator of nodes instead of a single node, requiring changes to existing code patterns.

  • Editor Has Path

    This guide covers the migration of Editor.hasPath usage from Slate.js v0.88 to v0.104. The API has changed from a property-based check to a function call pattern, requiring updates to existing code.

  • Editor Has Block

    Transform Editor.hasBlock to Editor.nodes

    This codemod replaces occurrences of Editor.hasBlock with the equivalent Editor.nodes structure. The transformation updates the code to use a more modern API, ensuring compatibility and improved functionality.

  • Custom Renderers

    This codemod updates the renderElement function to include TypeScript typings and adds a default case for rendering unsupported element types.

  • Rename Deno Interfaces

    This codemod renames Deno typscript interface names in your codebase to their new names.