---
agentTools:
  projectIndex: https://support.onify.co/llms.txt
---

# Onify Helix 0.30.0 released

Changelog for 0.28.2 to 0.30.0

> To upgrade to v0.30.0, run the following command in your custom Helix (app) repo:
>
> ```shell
> npx giget "gh:onify/helix/apps/helix-app#v0.30.0" ./ --auth="<ONIFY_GITHUB_ACCESS_TOKEN>" --force --verbose
> ```
>
> Make sure you run `npm i` after to update packages. Check `README.me` for more details.

## v0.30.0

### `helix-app`

* **Features**

  * adds example page for `h-dialog`

* **Fixes**

  * fixes `helix-app` not automatically loading `scss` files
  * adjust example pages for breaking changes in `helix-components`

* **Breaking Changes**

  * refactors `vite.config.js`

  ```diff
  --- vite.config.js

  ...

  import {
    generatePageRoutesPlugin,
    generateThemePacksPlugin,
    generateSettingsPlugin,
    watchHelixYamlFiles,
    generateTranslationsPlugin,
  + getEnv,
  } from '@onify/helix-tools';

  ...

  // https://vitejs.dev/config/
  export default async ({ mode }) => {
  const allowedPrefixes = ['ONIFY_', 'VITE_', 'HELIX_'];
  - process.env = { ...process.env, ...loadEnv(mode, process.cwd(), allowedPrefixes) };
  + getEnv(process.env, mode, allowedPrefixes);

  return defineConfig({
    plugins: [
      sassGlobImports(),
      Unimport.vite({
        dts: true,
        addons: {
          vueTemplate: true,
        },
  ...
  ```

### `helix-components`

* **Features**

  * adds `h-loader` component
  * adds `h-route-renderer` component to render `helix-app` pages using a url
  * adds `h-dialog`

* **Improvements**

  * improves `h-item-card` responsiveness
  * `h-page-head` can now wrap other elements/components

    **Example**

    ```html
    <h-page-head page-title="Page Title" page-prefix="Page Prefix">
      <custom-component></custom-component>
      <h2>Header Text</h2>
      <p>Main Content Here</p>
    </h-page-head>
    ```

* **Fixes**

  * removes break-spaces property value from buttons to be compliant with `md3`
  * increases alerts' `z-index` to bring alerts in front of dialog overlay

* **Breaking Changes**

  * refactors `h-page-head` props

    * `title` changed to `page-title`
    * `prefix` changed to `page-prefix`
    * `meta` changed to `page-meta`

    ```diff
      <div class="page-container">
    -   <h-page-head title="Tab Title" prefix="Tab Prefix"></h-page-head>
    +   <h-page-head page-title="Tab Title" page-prefix="Tab Prefix"></h-page-head>
        <h-page-title>Content Title</h-page-title>
      </div>
    ```

  * integrates `h-page-head` with `h-generic-container`, `h-form-container` and `h-legacy-form-container`

    * if you are using `h-page-head` inside any of these containers, they will need to be removed and new props (`page-title` and `page-prefix`) need to be added to the containers.

    **Example**

    ```diff
    + <h-generic-container page-title="Page Title" page-prefix="Prefix - ">
    - <h-generic-container>
    -   <h-page-head title="Page Title" prefix="Prefix - ">

        ...
      </h-generic-container>
    ```

### `helix-pages`

* **Improvements**

  * improves `h-user-settings`

### `helix-tools`

* **Features**

  * adds `getEnv` utility for loading/reloading `process.env` from the appropriate `.env` file for `vite`

## v0.29.1

### `helix-components`

* **Improvements**

  * adds `no-route` property to enable redirecting to relative paths beginning from the app's host url in `h-action-link`.

## v0.29.0

### `helix-app`

* **Features**

  * adds example content under `./src/examples`

* **Improvements**

  * adds reset style for `html` to make sure scrollbar doesn't appear when not needed

### `helix-components`

* **Improvements**

  * improves customizability of `h-shortcut`

### `helix-core`

* **Fixes**

  * addresses cases when the passed url is empty or undefined for `isExternalUrl`

## v0.28.2

### `helix-core`

* **Improvements**

  * `HBindQueryParams`: string query params no longer need to be wrapped in double quotes
  * `HBindQueryParams`: disables binding of query params for objects as they can get too long

### `helix-components`

* **Fixes**

  * fixes `h-autocomplete` component not binding to or reading from url query params