For AI agents: the complete documentation index is available at /annealer/ja/llms.txt, the full documentation bundle is available at /annealer/ja/llms-full.txt, and this page is available as Markdown at /annealer/ja/api/javascript.md.
  • 日本語
  • JavaScript API

    import { builtinClassOrder, builtinProfile, format, init, languageFromPath } from 'annealer';

    このパッケージは Rust コアの WebAssembly ビルドと TypeScript ラッパーです。Node.js、ブラウザー、UMD ビルドで動きます。

    WebAssembly バイナリ(約 1.5 MB、gzip 後 0.7 MB)は base64 でパッケージに埋め込まれています。アセットの読み込み設定は不要で、format() は同期関数です。

    format(input, options?)

    function format(input: string, options?: FormatOptions): string;

    属性(HTML、Vue)または宣言(CSS、SCSS、Sass、Less)を並べ替えます。

    • options.language: 入力の言語。既定は 'html'。
    • options.profile: 組み込みプロファイル名('html'、'vue')またはプロファイルの YAML テキスト。既定は language に対応する組み込みプロファイル。
    • options.classOrder: 組み込みのクラス順の名前('tailwind')またはクラス順の YAML テキスト。静的な class 属性のクラスを並べ替え、プロファイルの classOrder より優先されます。既定ではクラスは元の順のままです。クラス順を参照してください。

    入力やプロファイルが不正な場合は Error を投げます。

    format('<a title="Home" href="/" id="home">Home</a>');
    // => '<a id="home" title="Home" href="/">Home</a>'
    
    format(source, { language: 'vue' });
    format(source, { language: 'html', profile: yamlText });
    format(source, { language: 'vue', classOrder: 'tailwind' });

    init()

    function init(): Promise<void>;

    WebAssembly モジュールを、処理をブロックせずに事前コンパイルします。省略可能で、呼ばなければ format() の初回呼び出し時に同期的にコンパイルします。

    languageFromPath(path)

    function languageFromPath(path: string): Language | undefined;

    ファイル名やパスから言語を推定します(.html、.htm、.vue、.css、.scss、.sass、.less)。それ以外の拡張子では undefined を返します。

    builtinProfile(name)

    function builtinProfile(name: 'html' | 'vue'): string;

    組み込みプロファイルの YAML テキストを返します。独自プロファイルを作る出発点として使えます。

    const yaml = builtinProfile('vue').replace(
      'oneAttributePerLine: true',
      'oneAttributePerLine: false'
    );
    format(source, { language: 'vue', profile: yaml });

    builtinClassOrder(name)

    function builtinClassOrder(name: 'tailwind'): string;

    組み込みのクラス順の YAML テキストを返します。独自のクラス順の出発点として使えます。

    型

    type Language = 'html' | 'vue' | 'css' | 'scss' | 'sass' | 'less';
    
    type FormatOptions = {
      language?: Language;
      profile?: string;
      classOrder?: string;
    };
    
    type Meta = {
      version: string;
      date: string;
    };

    Language、FormatOptions、Meta は値としてもエクスポートされます。それぞれ拡張子と言語の対応表、既定のオプション、ビルド情報です。