==========================================================================
onykia-engine - Third-Party Notices
==========================================================================

This NOTICE enumerates the third-party software incorporated into
onykia-engine's distributed artefacts and the upstream attributions
that travel with them.

The project itself is licensed under the MIT License (see LICENSE).

Every license body referenced below is reproduced once, in
THIRD-PARTY-LICENSES.txt, which ships alongside this NOTICE in every
artefact. Any redistribution must include both files.

Artefacts this NOTICE applies to:

* npm packages @mudomi/onykia-engine, @mudomi/onykia-codemirror,
   @mudomi/onykia-monaco (TypeScript sources / built JS).
* The compiled WebAssembly module onykia_engine.wasm and the
   wasm-bindgen JavaScript glue produced from src/rust/ and shipped
   inside @mudomi/onykia-engine.

THIRD-PARTY-LICENSES.txt sections:

   §1  Rust crates statically linked into onykia_engine.wasm.
   §2  Bundled fonts (typst-assets default font set).
   §3  Typst-internal upstream attributions (LLVM Exception, LPPL,
       NCSA).


==========================================================================
1. Typst (https://github.com/typst/typst)
==========================================================================

Copyright (c) 2023 The Typst Project Developers.
Licensed under the Apache License 2.0.

The onykia_core WebAssembly module statically links the following
Typst crates at version 0.14:

   typst, typst-assets (with the "fonts" feature), typst-eval,
   typst-html, typst-ide, typst-library, typst-pdf, typst-render,
   typst-svg, typst-syntax, typst-utils.

Subsections 1.1 - 1.5 reproduce required upstream NOTICE attributions
from Typst and Typst-linked crates, preserved per Apache 2.0 §4(d).
They cite components that are present in onykia_engine.wasm. License
bodies for the referenced SPDX licenses are reproduced in
THIRD-PARTY-LICENSES.txt; the Creative Commons BY-SA 3.0 notice below
is carried with its canonical URL as in upstream.

--------------------------------------------------------------------------
1.1  Components inside Typst under the MIT License
--------------------------------------------------------------------------

The MIT License applies to:

* The default color set in crates/typst/src/visualize/color.rs,
   adapted from the colors.css project (https://clrs.cc/).

* The path diffing algorithm in crates/typst-syntax/src/path.rs,
   modified from rustc's path_relative_from
   (https://github.com/rust-lang/rust/blob/e1d0de82cc40b666b88d4a6d2c9dcbc81d7ed27f/src/librustc_back/rpath.rs#L116-L158).
   Copyright 2012-2015 The Rust Project Developers.

* The SyntaxSet in crates/typst-syntax/src/set.rs, based on the
   TokenSet from rust-analyzer
   (https://github.com/rust-lang/rust-analyzer/blob/master/crates/parser/src/token_set.rs).

* The Lorem Ipsum generator in crates/typst-library/src/text/lorem.rs,
   based on the lipsum crate
   (https://github.com/mgeisler/lipsum/blob/0.9.1/src/lib.rs).
   Copyright (c) 2017 Martin Geisler.

--------------------------------------------------------------------------
1.2  Translations (LaTeX Project Public License)
--------------------------------------------------------------------------

Translation strings in crates/typst-library/translations/ are adapted
from:

* Babel (https://ctan.org/pkg/babel)
   Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams.
   Copyright (C) 1989-2012 Johannes L. Braams and any individual
   authors listed elsewhere. All rights reserved.

* Cleveref (https://ctan.org/pkg/cleveref)
   Copyright 2006-2018 Toby Cubitt.

Both are distributed under the LaTeX Project Public License.
Babel uses LPPL 1.3+; Cleveref uses LPPL 1.2+.

--------------------------------------------------------------------------
1.3  Skia (BSD 3-Clause)
--------------------------------------------------------------------------

Alpha multiplication and source-over blending in
crates/typst-render/src/text.rs are ported from Skia
(https://skia.googlesource.com/skia/+/refs/heads/main/include/core/SkColorPriv.h).

Copyright (c) 2011 Google Inc. All rights reserved.

--------------------------------------------------------------------------
1.4  LLVM compiler-rt (Apache 2.0 with LLVM Exception)
--------------------------------------------------------------------------

Scalar::powi in crates/typst-utils/src/scalar.rs is ported from
https://github.com/llvm/llvm-project/blob/0ee439b/compiler-rt/lib/builtins/powidf2.c.

Copyright (c) 2003-2019 University of Illinois at Urbana-Champaign
and the LLVM contributors.

Distributed under the Apache 2.0 License with LLVM Exception. The
legacy LLVM/NCSA license is reproduced for completeness.

--------------------------------------------------------------------------
1.5  Additional Typst-linked crate NOTICE attributions
--------------------------------------------------------------------------

The following transitive crates linked into onykia_engine.wasm ship an
upstream NOTICE file:

* pixglyph
    Apache 2.0 attribution applies to rasterization code in `Canvas`
    adapted from font-rs (Copyright 2015 Google Inc.) and cubic-to-
    quadratic bezier conversion in `Canvas::cubic` adapted from kurbo
    (Copyright 2018 The kurbo Authors).

* subsetter
    MIT attribution applies to code adapted from ttf-parser (Copyright
    (c) 2018 Yevhenii Reizner) and fonttools (Copyright (c) 2017 Just
    van Rossum).

* hayagriva
    The Creative Commons BY-SA 3.0 DEED attribution from hayagriva's
    upstream NOTICE applies to CSL styles/locales bundled in
    `archive/` (https://creativecommons.org/licenses/by-sa/3.0/).

* citationberg
    Its upstream NOTICE covers CSL test assets under `tests/*` only.
    Those test assets are not redistributed as part of onykia-engine.


==========================================================================
2. Bundled fonts (typst-assets "fonts" feature)
==========================================================================

onykia_engine.wasm embeds the default font set from typst-assets, a
mix of OFL-1.1, Bitstream Vera, CC0 and other font licenses. The
authoritative per-font attributions and license bodies are reproduced
verbatim in THIRD-PARTY-LICENSES.txt §2 from the upstream
typst-assets NOTICE at the version pinned in Cargo.lock.


==========================================================================
3. Rust transitive dependencies
==========================================================================

onykia_engine.wasm statically links a number of Rust crates beyond
Typst itself. Each crate is enumerated in THIRD-PARTY-LICENSES.txt §1,
grouped by SPDX license, with per-crate copyright attribution and the
canonical license text reproduced once.


==========================================================================
4. JavaScript / TypeScript dependencies
==========================================================================

@mudomi/onykia-engine has no runtime npm dependencies.

@mudomi/onykia-codemirror declares the following peerDependencies
(MIT-licensed, supplied by the consumer, not bundled):

   @codemirror/autocomplete, @codemirror/commands,
   @codemirror/language, @codemirror/lint, @codemirror/state,
   @codemirror/view, @lezer/highlight

@mudomi/onykia-monaco declares as peerDependency:

   monaco-editor (MIT)

Because peer dependencies are not bundled into the published
artefacts, this NOTICE does not reproduce their license texts.
Consumers redistributing a bundled application that includes those
packages must include their respective LICENSE files separately.


==========================================================================
End of NOTICE
==========================================================================
