Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Sep 11, 2025

Note: This PR body was truncated due to platform limits.

This PR contains the following updates:

Package Change Age Confidence
@conform-to/react (source) 1.6.01.15.1 age confidence
@conform-to/zod (source) 1.7.21.15.1 age confidence
@digdir/designsystemet-css (source) 1.1.21.9.0 age confidence
@digdir/designsystemet-react (source) 1.1.21.9.0 age confidence
@digdir/designsystemet-theme (source) 1.1.11.9.0 age confidence
@eslint/js (source) 9.29.09.39.2 age confidence
@navikt/aksel-icons (source) 7.24.07.36.0 age confidence
@playwright/test (source) 1.53.11.57.0 age confidence
@react-router/dev (source) 7.6.27.11.0 age confidence
@react-router/fs-routes (source) 7.6.27.11.0 age confidence
@react-router/node (source) 7.6.27.11.0 age confidence
@react-router/serve (source) 7.6.27.11.0 age confidence
@types/node (source) 24.0.424.10.4 age confidence
@types/react (source) 19.1.819.2.7 age confidence
@types/react-dom (source) 19.1.619.2.3 age confidence
autoprefixer 10.4.2110.4.23 age confidence
eslint (source) 9.29.09.39.2 age confidence
eslint-import-resolver-typescript 4.3.54.4.4 age confidence
eslint-plugin-import 2.31.02.32.0 age confidence
globals 16.2.016.5.0 age confidence
isbot (source) 5.1.285.1.32 age confidence
openapi-typescript (source) 7.8.07.10.1 age confidence
openid-client 6.5.16.8.1 age confidence
postcss (source) 8.5.58.5.6 age confidence
react (source) 19.1.019.2.3 age confidence
react-dom (source) 19.1.019.2.3 age confidence
react-router (source) 7.6.27.11.0 age confidence
tailwindcss (source) 3.4.173.4.19 age confidence
typescript (source) 5.8.35.9.3 age confidence
typescript-eslint (source) 8.32.18.51.0 age confidence
vitest (source) 3.1.43.2.4 age confidence
zod (source) 3.25.673.25.76 age confidence

Release Notes

edmundhung/conform (@​conform-to/react)

v1.15.1

Compare Source

What's Changed

  • Added support for nullable constraints in getZodConstraint (#​1126)
  • Fixed useControl not reflecting the input's default value in the DOM (#​1121)
  • Fixed useControl not dispatching a change event when calling control.change() with the input's default value (#​1122)
  • Fixed parseWithZod and parseWithValibot incorrectly treating falsy result values as errors (#​1115)

New Contributors

Full Changelog: edmundhung/conform@v1.15.0...v1.15.1

v1.15.0

Compare Source

What's Changed
  • Added a getFieldValue helper to extract and validate field values from FormData or URLSearchParams. (#​1112)

    import { getFieldValue } from '@​conform-to/react/future';
    
    // Basic: returns `unknown`
    const email = getFieldValue(formData, 'email');
    
    // With type guard: returns `string`, throws if not a string
    const name = getFieldValue(formData, 'name', { type: 'string' });
    
    // File type: returns `File`, throws if not a File
    const avatar = getFieldValue(formData, 'avatar', { type: 'file' });
    
    // Object type: parses nested fields into `{ city: unknown, ... }`
    const address = getFieldValue<Address>(formData, 'address', { type: 'object' });
    
    // Array: returns `unknown[]`
    const tags = getFieldValue(formData, 'tags', { array: true });
    
    // Array of objects: returns `Array<{ name: unknown, ... }>`
    const items = getFieldValue<Item[]>(formData, 'items', {
      type: 'object',
      array: true,
    });
    
    // Optional: returns `string | undefined`, no error if missing
    const bio = getFieldValue(formData, 'bio', { type: 'string', optional: true });

    It also infers types from the field name:

    import { useForm, useFormData, getFieldValue } from '@&#8203;conform-to/react/future';
    
    function Example() {
      const { form, fields } = useForm();
      // Retrieves the value of the `address` fieldset as an object, e.g. `{ city: unknown; ... }`
      const address = useFormData(form.id, (formData) =>
        getFieldValue(formData, fields.address.name, { type: 'object' }),
      );
    
      // ...
    }

Full Changelog: edmundhung/conform@v1.14.1...v1.15.0

v1.14.1

Compare Source

What's Changed

  • Relaxed the FormConfig type to allow both lastResult and onSubmit to be optional (#​1116)

Full Changelog: edmundhung/conform@v1.14.0...v1.14.1

v1.14.0

Compare Source

Breaking Changes (Future APIs)

  • The intendedValue option in the report helper has been renamed to value and now works as the defaultValue when resetting the form. Previously, this option was ignored when resetting and the form would always reset to the default value. You can now use the value option to update or reset forms to a specific value. (#​1079)

    // Update form to a specific value after submission
    return {
      result: report(submission, {
        value: updatedValue,
      }),
    };
    
    // Reset form to a specific value after submission
    return {
      result: report(submission, {
        reset: true,
        value: defaultValue,
      }),
    };
  • parseSubmission now strips empty values by default. This makes it easier to work with schemas directly (without coerceFormValue) since you no longer need extra validation like .min(1) for required fields. You can set stripEmptyValues: false to preserve empty values if needed. (#​1110)

    const formData = new FormData();
    // Empty text input
    formData.append('name', '');
    // Empty file input
    formData.append('files[]', new File([], ''));
    parseSubmission(formData);
    // { payload: {} }
    parseSubmission(formData, { stripEmptyValues: false });
    // { payload: { name: '', files: [new File([], '')] } }

What's Changed

  • Schema-first future useForm hook with improved type inference (#​1106)

    The schema option is now promoted to the first argument of useForm for better type inference:

    // Before: schema in options
    const { form, fields } = useForm({
      schema: mySchema,
      onSubmit(event, { value }) {
        // value type inference could be inconsistent
      },
    });
    
    // After: schema as first argument
    const { form, fields } = useForm(mySchema, {
      onSubmit(event, { value }) {
        // value is fully typed based on your schema
      },
    });
    • onValidate is now required when not using a schema
    • Either onSubmit or lastResult must be provided (Relaxed the type to allow both to be optional in v1.14.1)

    The old API with schema in options still works but is now deprecated. It will be removed in the next minor release.

  • Fixed parseSubmission array handling for entries ending with []. Previously, when multiple form entries had the same name ending with [] (e.g., todos[]), all items were incorrectly pushed as a single nested array element. Now they are correctly spread as individual array items. (#​1108)

    const formData = new FormData();
    formData.append('todos[]', 'Buy milk');
    formData.append('todos[]', 'Walk dog');
    formData.append('todos[]', 'Write tests');
    
    parseSubmission(formData);
    // Before (incorrect): { todos: [['Buy milk', 'Walk dog', 'Write tests']] }
    
    // After (correct): { todos: ['Buy milk', 'Walk dog', 'Write tests'] }

Improvements

  • You can now import from @conform-to/zod/v3 if you need to work with v3 schema using zod v4. (Thanks @​kesoji - #​1090)
  • Fixed type inference for getFieldset() with interface declarations (#​1097)
  • Moved lastResult logic from an effect to the render phase. Your form component may now render twice within a single lifecycle when needed, but state updates that previously spanned two separate lifecycles now complete in one. (#​1103)
  • Improved FormOptions and ValidationAttributes types compatibility with exactOptionalPropertyTypes setting in tsconfig. (#​1105)

Full Changelog: edmundhung/conform@v1.13.3...v1.14.0

v1.13.3

Compare Source

What's Changed

Full Changelog: edmundhung/conform@v1.13.2...v1.13.3

v1.13.2

Compare Source

What's Changed
  • Fix change detection to avoid triggering unnecessary change events when a File input or select value hasn't actually changed (#​1078)
  • Updated vitest and vitest/browser dependencies to latest versions by @​chimame (#​1077)

Full Changelog: edmundhung/conform@v1.13.1...v1.13.2

v1.13.1

Compare Source

What's Changed
  • Fixed a type regression with DefaultValue that prevented setting undefined on required fields when exactOptionalPropertyTypes is enabled. (#​1072)

Full Changelog: edmundhung/conform@v1.13.0...v1.13.1

v1.13.0

Compare Source

Breaking changes on future exports

The following metadata will no longer returns undefined to resolves behavior difference on React 18 and 19 with regards to the defaultValue property:

  • metadata.defaultValue now returns an empty string '' instead of undefined when no default value is set or the value cannot be serialized
  • metadata.defaultOptions now returns an empty array [] instead of undefined when no default options are set or the value cannot be serialized
  • metadata.defaultChecked now explicitly returns false instead of undefined when the field value is not 'on'
What's Changed
  • The intent.reset() method now accepts an optional defaultValue parameter to reset forms to a different value (#​1065)

    // Clear all fields
    <button type="button" onClick={() => intent.reset({ defaultValue: null })}>
      Clear
    </button>
    
    // Restore to a specific snapshot
    <button type="button" onClick={() => intent.reset({ defaultValue: savedValue })}>
      Restore
    </button>

    Additionally, intent.update() has been optimized to behave more consistently with intent.reset(), with improved type inference when updating form value by not specifying the name option.

  • Added formRef to useControl hook (#​1059)

    The useControl hook now exposes a formRef property that provides access to the form element associated with the registered input. This is particularly useful when using useControl with other form-level hooks like useFormData() and useIntent().

    const control = useControl({ defaultValue: '' });
    
    // Dispatch intent with useIntent
    const intent = useIntent(control.formRef);
    
    // The formRef automatically stays in sync even if the form attribute changes
    <input ref={control.register} form="dynamic-form-id" />;
  • Fixed an issue with coerceFormValue widening the schema type to GenericSchema | GenericSchemaAsync. It now preserves the exact schema type with compatibility to the standard schema types. (#​1060)

Full Changelog: edmundhung/conform@v1.12.1...v1.13.0

v1.12.1

Compare Source

What's Changed
  • Fixed an issue where React DevTools would throw an error when inspecting field metadata. The Proxy now handles symbol properties used by React internals gracefully. (#​1062)
  • Fixed insert and update intent type inference when field shape cannot be inferred. (#​1063)

Full Changelog: edmundhung/conform@v1.12.0...v1.12.1

v1.12.0

Compare Source

What's changed

Metadata Customization

This update introduces a <FormOptionsProvider /> component under the future export. (#​1047)

You can now define global form options, including custom metadata properties that match your form component types when integrating with UI libraries or any custom components.

import {
  FormOptionsProvider,
  type BaseMetadata,
} from '@&#8203;conform-to/react/future';
import { TextField } from './components/TextField';

// Define custom metadata properties that matches the type of our custom form components
function defineCustomMetadata<FieldShape, ErrorShape>(
  metadata: BaseMetadata<FieldShape, ErrorShape>,
) {
  return {
    get textFieldProps() {
      return {
        name: metadata.name,
        defaultValue: metadata.defaultValue,
        isInvalid: !metadata.valid,
      } satisfies Partial<React.ComponentProps<typeof TextField>>;
    },
  };
}

// Extend the CustomMetadata interface with our implementation
// This makes the custom metadata types available on all field metadata objects
declare module '@&#8203;conform-to/react/future' {
  interface CustomMetadata<FieldShape, ErrorShape>
    extends ReturnType<typeof defineCustomMetadata<FieldShape, ErrorShape>> {}
}

// Wrap your app with FormOptionsProvider
<FormOptionsProvider
  shouldValidate="onBlur"
  defineCustomMetadata={defineCustomMetadata}
>
  <App />
</FormOptionsProvider>;

// Use custom metadata properties in your components
function Example() {
  const { form, fields } = useForm({
    // shouldValidate now defaults to "onBlur"
  });

  return (
    <form {...form.props}>
      <TextField {...fields.email.textFieldProps} />
    </form>
  );
}

Additionally, you can now customize the base error shape globally using the CustomTypes interface:

declare module '@&#8203;conform-to/react/future' {
  interface CustomTypes {
    errorShape: { message: string; code: string };
  }
}

This restricts the error shape expected from forms and improves type inference when using useField and useFormMetadata.

Improvements

  • Added ariaInvalid and ariaDescribedBy field metadata (#​1047)
  • Added Zod 4 prefault schema support (#​1052) - Thanks @​chimame!
  • Improved docs layout setup (#​1051) - Thanks @​fiws!
  • Fixed an issue with checkbox not being marked as touched on form submit with async validation (#​1048)
  • Fixed a bug with default values from Zod 3 default schema not being validated when coercion is enabled (#​1050)

Full Changelog: edmundhung/conform@v1.11.0...v1.12.0

v1.11.0

Compare Source

What's Changed

Breaking change (Future APIs)

In this release, we simplified some of the type signatures by removing the Metadata generic parameter (#​1045):

  • FormMetadata<ErrorShape = string> (previously FormMetadata<ErrorShape, Metadata>)
  • FieldMetadata<FieldShape, ErrorShape = string> (previously FieldMetadata<FieldShape, Metadata>)
  • Fieldset<FieldShape, ErrorShape = string> (previously Fieldset<FieldShape, Metadata>)
Improvements
  • Added standard schema issue support to report (#​1041)

    The report helper now accepts standard schema issues directly, eliminating the need to use formatResult in most cases:

    return report(submission, {
    +  error: { issues: result.error.issues },  // Zod
    +  error: { issues: result.issues },        // Valibot
    -  error: formatResult(result),
    });

    When both issues and formErrors / fieldErrors are provided, they will be merged together, with issues being formatted first:

    return report(submission, {
      error: {
        issues: result.error.issues,
        formErrors: ['Custom form error'],
      },
    });

    This allows you to pass the validation results from Zod and Valibot to report directly without using formatResult. But it is still useful when you need to customize the error shape.

  • Added schemaValue property to the onValidate callback argument containing the validated value from successful schema validation. This property is undefined when no schema is provided or when validation fails. (#​1046)

    const form = useForm({
      schema: z.object({ email: z.string().email() }),
      onValidate({ schemaValue }) {
        if (schemaValue) {
          // Access the validated data: { email: string }
          console.log(schemaValue.email);
        }
      },
    });

Full Changelog: edmundhung/conform@v1.10.1...v1.11.0

v1.10.1

Compare Source

What's Changed

  • Fixed an issue with form.getFieldset() requiring a name parameter. This should be optional instead. (#​1037 by @​luchsamapparat)
  • Improved the form state setup to fix Next.js prerendering hydration issues (#​1039 by @​apostolos)

New Contributors

Full Changelog: edmundhung/conform@v1.10.0...v1.10.1

v1.10.0

Compare Source

What's changed

This release brings better Valibot integration with the future useForm hook while also fixing a few rough edges.

Breaking change
  • The memoize helper has moved into @conform-to/react/future. (#​1022 by @​chimame)
    If you were previously importing it from @conform-to/zod/v3/future or @conform-to/zod/v4/future, you will need to update your imports:

    - import { memoize } from '@&#8203;conform-to/zod/v4/future';
    + import { memoize } from '@&#8203;conform-to/react/future';

    No other changes are required.

New in @conform-to/react/future
  • Exposed several internal types, which can be useful if you are building abstractions on top of Conform:
    Submission, SubmissionResult, FormContext, FormMetadata, FormRef, FieldMetadata, FieldName, and IntentDispatcher. (#​1033)
New in @conform-to/valibot/future
Fixes and improvements
  • Fixed an issue where the valid metadata did not properly consider subfield errors. (#​1024)
  • Fixed an issue where useForm might clear all form values during form submission after a form reset. (#​1028)
  • Inlined types from @standard-schema/spec to fix type inference issues with standard schema. (#​1029)
  • Improved file handling so that the future useForm hook does not crash when submitting an empty file input. (#​1027)

Full Changelog: edmundhung/conform@v1.9.1...v1.10.0

v1.9.1

Compare Source

What's Changed

This release restored form and field metadata that were present in v1 but accidentally omitted from the future useForm hook (#​1020). This includes:

  • Adding key, errorId and descriptionId properties to form metadata
  • Adding valid property to both form and field metadata with invalid deprecated and to be removed in 1.10.0
  • Adding formId property to field metadata
  • Adding fieldErrors to field metadata (renamed from v1's allErrors) with improvements:
    • Keys use relative paths scoped to the parent field instead of full field names
    • Excludes the current field's own errors (only includes child field errors)

Full Changelog: edmundhung/conform@v1.9.0...v1.9.1

v1.9.0

Compare Source

What's changed

This version introduces a set of new experimental APIs under the future export.

Learn more about these APIs in the announcement post.

New React APIs (@conform-to/react/future)
  • useForm: The future main hook for form state, validation, and submission
  • useFormMetadata: Access form-level metadata (errors, validation state)
  • useField: Access individual field metadata with auto-generated IDs
  • useIntent: Create intent dispatchers for programmatic form actions
  • parseSubmission: Parses FormData/URLSearchParams into structured objects with nested data support. This is already used internally by the isDirty helper.
  • report: Creates submission results with validation errors and security features
Enhanced Zod Integration (@conform-to/zod/v3/future or @conform-to/zod/v4/future):
  • coerceFormValue: Enhances the schema to strip empty value and coerce form value
  • formatResult: Transforms Zod validation results into Conform's error format, supporting value extraction and custom error formatting
  • memoize: Caches most recent result to prevent redundant API calls during async validation
Additional Changes
  • Improved ZodPipe resolution in getZodConstraint() with zod v4. Thanks @​taku-hatano!

No changes were made to the existing future hook in this release. Everything should continue to work as expected.

Full Changelog: edmundhung/conform@v1.8.2...v1.9.0

v1.8.2

Compare Source

What's Changed

New Contributors

Full Changelog: edmundhung/conform@v1.8.1...v1.8.2

v1.8.1

Compare Source

What's Changed

  • fix(future-export): useControl now properly resets file inputs when receiving an empty array (#​976)

Full Changelog: edmundhung/conform@v1.8.0...v1.8.1

v1.8.0

Compare Source

What's changed

This version introduced two new experimental APIs under the future export.

  • useFormData: A low-level React hook that lets you derive a value from the current FormData of a form and re-render only when that value changes.

    const fullName = useFormData(
      formRef,
      (formData) => formData?.get('role') === 'admin',
    );
  • isDirty: A utility function for checking whether the current form values differ from the default values.

    const dirty = isDirty(formData, { defaultValue });

These APIs are designed to decouple form state from the core logic and provide more flexibility for reacting to form changes without relying on internal context. They are also part of the groundwork for a simpler useForm model in future versions.

Learn more in the announcement post.

No changes were made to the future useControl hook in this release. Everything should continue to work as expected.

Full Changelog: edmundhung/conform@v1.7.2...v1.8.0

v1.7.2

Compare Source

What's Changed

Full Changelog: edmundhung/conform@v1.7.1...v1.7.2

v1.7.1

Compare Source

What's Changed

  • Stop setting aria-invalid attriabute when using getFormProps or getFieldsetProps by @​evaogbe (#​963)
  • Ensure the useControl future export works when File or FileList is undefined by @​edmundhung (#​966)

New Contributors

Full Changelog: edmundhung/conform@v1.7.0...v1.7.1

v1.7.0

What's changed

The future export and useControl hook

We’ve introduced the first API under the new future export: useControl.

The future export is a new entry point for previewing upcoming features that may evolve before being stabilized in a future major version. If you haven’t seen it yet, check out our announcement for context.

The first experimental API is useControl — a new hook that helps you integrate custom inputs with Conform. Compared to useInputControl, it offers a more flexible setup with better support for multi-select, file inputs, and checkbox groups.

We’ve documented it in detail:

Give it a try — and let us know what you think!

New field metadata for default values

Field metadata now includes three new properties:

  • defaultValue (string | undefined)
  • defaultChecked (boolean | undefined)
  • defaultOptions (string[] | undefined)
const { fields } = useForm({
  defaultValue: {
    username: 'edmundhung',
    tags: ['react', 'forms'],
    subscribe: true,
  }
});

fields.username.defaultValue; // 'edmundhung'
fields.tags.defaultOptions;   // ['react', 'forms']
fields.subscribe.defaultChecked; // true

These values are automatically derived from your form’s defaultValue, making it easier to connect each field with useControl and wire up individual input elements.

Full Changelog: edmundhung/conform@v1.6.0...v1.7.0

digdir/designsystemet (@​digdir/designsystemet-css)

v1.9.0

Compare Source

@​digdir/designsystemet@​1.9.0
Minor Changes
  • Add ability to override focus colors from config: (#​4320)

    {
      "overrides": {
        "focus": {
          "inner": { "light": "HEX", "dark": "HEX" },
          "outer": { "light": "HEX", "dark": "HEX" }
        }
      }
    }

    This comes with a change to you design tokens, where focus colors are now on the theme layer.
    Make sure you rebuild your tokens: npx @&#8203;digdir/designsystemet tokens create <options> --clean

Patch Changes
@​digdir/designsystemet-css@​1.9.0
Minor Changes
  • Dialog: data-placement selector styles the Dialog as a "drawer"-component from the direction given (left | right | top | bottom or center which is the default) (#​4323)
    Added 3 new local variables:
    • --dsc-dialog-placement-inline-max-width (max-width when placement="left | right")
    • --dsc-dialog-placement-block-max-width (max-width when placement="top | bottom")
    • --dsc-dialog-transition-duration (duration for the slide in animations)
Patch Changes
  • Input, Search, Suggestion, Textfield: Uppercase Å was cut off at the top in Chrome and Safari, making it look like Ă (#​4301)

  • link: Style background, border, and padding regardless of default browser styles (#​4231) (#​4302)

  • Add export for a default theme under /theme. (#​4328)
    If you are using the default theme from @digdir/designsystemet-theme, we recommend importing the CSS from @digdir/designsystemet-css/theme.css and removing @digdir/designsystemet-theme from your dependencies.

@​digdir/designsystemet-react@​1.9.0
Minor Changes
  • Dialog: added placement prop. This will set data-placement and style the Dialog as a "drawer"-component from the direction given: left | right | top | bottom or center (default) (#​4323)
Patch Changes
@​digdir/designsystemet-theme@​1.9.0
Patch Changes
@​digdir/designsystemet-types@​1.9.0

v1.8.0

Compare Source

@​digdir/designsystemet-theme
Minor Changes
  • Move submodule @digdir/designsystemet/types to a new package @digdir/designsystemet-types and change all references. (#​4241)

    After re-running tokens build downstream, this removes transitive dependencies on runtime dependencies on CLI tools like commander and style-dictionary which are never used in runtime, but are required for the CLI to function. It also makes code which doesn't use the CLI unaffected by our node version limitations (currently >= 22 due to style-dictionary).

    @digdir/designsystemet/types is preserved for now as a deprecated re-export of @digdir/designsystemet-types to avoid breaking people's builds.

Patch Changes
@​digdir/designsystemet-react
Minor Changes
  • Move submodule @digdir/designsystemet/types to a new package @digdir/designsystemet-types and change all references. (#​4241)

    After re-running tokens build downstream, this removes transitive dependencies on runtime dependencies on CLI tools like commander and style-dictionary which are never used in runtime, but are required for the CLI to function. It also makes code which doesn't use the CLI unaffected by our node version limitations (currently >= 22 due to style-dictionary).

    @digdir/designsystemet/types is preserved for now as a deprecated re-export of @digdir/designsystemet-types to avoid breaking people's builds.

Patch Changes
  • Update npm non-major dependencies (#​4275)

  • Update npm non-major dependencies (#​4242)

  • Popover: Fix unnecesary call of onOpen and missing call of onClose (#​4230)

    • Don't call onOpen when clicking Popover.Trigger when Popover is already open.
    • Call onClose when a controlled Popover is closed by clicking on Popover.Trigger.
  • Update npm non-major dependencies (#​4262)

  • Update react and react-dom to 19.2.1 (#​4276)

  • Updated dependencies [c2faf2e]:

@​digdir/designsystemet-css
Patch Changes
  • badge: Set display: inline-flex on .ds-badge (#​4269)

  • Update npm non-major dependencies (#​4242)

  • select: Fix :hover on <label> adding border to <select> (#​4248)

  • Update npm non-major dependencies (#​4262)

@​digdir/designsystemet
Minor Changes
  • Move submodule @digdir/designsystemet/types to a new package @digdir/designsystemet-types and change all references. (#​4241)

    After re-running tokens build downstream, this removes transitive dependencies on runtime dependencies on CLI tools like commander and style-dictionary which are never used in runtime, but are required for the CLI to function. It also makes code which doesn't use the CLI unaffected by our node version limitations (currently >= 22 due to style-dictionary).

    @digdir/designsystemet/types is preserved for now as a deprecated re-export of @digdir/designsystemet-types to avoid breaking people's builds.

Patch Changes
@​digdir/designsystemet-types@​1.8.0
Minor Changes
  • Move submodule @digdir/designsystemet/types to a new package @digdir/designsystemet-types and change all references. (#​4241)

    After re-running tokens build downstream, this removes transitive dependencies on runtime dependencies on CLI tools like commander and style-dictionary which are never used in runtime, but are required for the CLI to function. It also makes code which doesn't use the CLI unaffected by our node version limitations (currently >= 22 due to style-dictionary).

    @digdir/designsystemet/types is preserved for now as a deprecated re-export of @digdir/designsystemet-types to avoid breaking people's builds.

v1.7.3

Compare Source

@​digdir/designsystemet@​1.7.3
[@​digdir/designsystemet-css](https://redirect.github.com/digdir/designsyste

Configuration

📅 Schedule: Branch creation - "before 07:00 on Thursday" in timezone Europe/Oslo, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 6 times, most recently from bd25740 to 91f9403 Compare September 18, 2025 12:33
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 6 times, most recently from f091f5f to 6913b7c Compare September 25, 2025 12:25
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 7 times, most recently from 1763bc8 to 96405c7 Compare October 3, 2025 12:11
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 5 times, most recently from 085088c to 2fe84d6 Compare October 10, 2025 20:03
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 5 times, most recently from d0d6741 to 3469f8d Compare October 18, 2025 12:14
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch from 3469f8d to 5ffe5bd Compare October 19, 2025 08:12
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 3 times, most recently from fcc196d to 7ca4995 Compare October 30, 2025 12:24
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 2 times, most recently from e1030cc to 720d5ac Compare November 8, 2025 15:58
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 4 times, most recently from 6f0c8e3 to 4d322b2 Compare November 22, 2025 16:12
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 4 times, most recently from da806b2 to e5f2b21 Compare December 1, 2025 07:37
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 5 times, most recently from 77a2d6c to 72b8825 Compare December 10, 2025 07:31
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 4 times, most recently from 8da595b to c7c9f51 Compare December 17, 2025 07:56
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 3 times, most recently from 3b4607d to 3d54a42 Compare December 22, 2025 12:08
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch 3 times, most recently from d627a69 to 1a0832d Compare January 1, 2026 08:15
@renovate renovate bot force-pushed the renovate/npm-minor-patch branch from 1a0832d to 4e83d82 Compare January 2, 2026 03:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant