Changes
4 changed files (+10/-10)
-
-
@@ -3,7 +3,7 @@ // SPDX-License-Identifier: AGPL-3.0-onlyexport interface UIComponent< TagName extends string, Element extends typeof YamoriComponent, Element extends typeof YamoriElement, > { readonly tagName: TagName; readonly constructor: Element;
-
@@ -15,7 +15,7 @@ * CustomElement を使いやすい I/F にラップする。* 渡された CustomElement は自動的に `nonUAMixin` が適用され、 * `:is(:state(nonua), :--nonua, [nonua])` でクエリできるようになる。 */ export function component<TagName extends string, Element extends typeof YamoriComponent>( export function wrapElement<TagName extends string, Element extends typeof YamoriElement>( tagName: TagName, constructor: Element, ): UIComponent<TagName, Element> {
-
@@ -56,7 +56,7 @@ * ```css* :is(:state(nonua), :--nonua, [nonua]) * ``` */ export class YamoriComponent extends HTMLElement { export class YamoriElement extends HTMLElement { internals: ElementInternals; setCustomState(name: string): void {
-
-
-
@@ -1,7 +1,7 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only import { component, YamoriComponent } from "../_utils"; import { wrapElement, YamoriElement } from "../../element.ts"; import css from "./button.css?inline";
-
@@ -10,9 +10,9 @@/** * 表示サンプル用コンポーネント。 */ export const YamoriButton = component( export const YamoriButton = wrapElement( "yamori-button", class extends YamoriComponent { class extends YamoriElement { static formAssociated = true; static get observedAttributes(): ObservedAttributes {
-
-
-
@@ -1,16 +1,16 @@// SPDX-FileCopyrightText: 2024 Shota FUJI <pockawoooh@gmail.com> // SPDX-License-Identifier: AGPL-3.0-only import { component, YamoriComponent } from "../../components/_utils.ts"; import { wrapElement, YamoriElement } from "../../element.ts"; import base from "../../vars/base.css?inline"; import dark from "../../vars/dark.css?inline"; import contrast from "../../vars/contrast.css?inline"; import darkContrast from "../../vars/dark-contrast.css?inline"; export const DocsThemeOverride = component( export const DocsThemeOverride = wrapElement( "docs-theme-override", class DocsThemeOverride extends YamoriComponent { class DocsThemeOverride extends YamoriElement { static get observedAttributes() { return ["color-scheme", "contrast"] as const; }
-
-
-
@@ -13,7 +13,7 @@ Yamori のスタイルシートとコンポーネントのドキュメント兼デモサイトです。</p> <h2>Components</h2> <p> CustomElement で実装されたセマンティクスを持つ UI 要素です。 CustomElement で実装された汎用的な UI 要素です。 </p> <p> ドメインデータには関与せず、インタラクションや表示といったユーザとのやりとりにのみ関心を持ちます。そのため
-