feat(rules): 建立共享排版契约并收束 WebKit 与 Unicode 基线
This commit is contained in:
Vendored
+10
-4
@@ -1,6 +1,6 @@
|
||||
/** jz-* 自訂元素名(皆含連字號,合法 custom element,預設 inline)。 */
|
||||
export type JzTag = "jz-hws" | "jz-char" | "jz-inner" | "jz-cs" | "jz-jinze" | "jz-orphan" | "jz-em" | "jz-ruby" | "jz-rb" | "jz-rt";
|
||||
type JzKind = "marker" | "wrap";
|
||||
type JzKind = "wrap";
|
||||
export interface CreateOptions {
|
||||
/** 追加之 class(空白分隔或陣列)。 */
|
||||
classes?: string | string[];
|
||||
@@ -8,16 +8,22 @@ export interface CreateOptions {
|
||||
text?: string;
|
||||
}
|
||||
/** 造一個帶 pass 標記之 jz-* 元素。 */
|
||||
export declare function createJz(tag: JzTag, pass: string, kind: JzKind, opts?: CreateOptions): HTMLElement;
|
||||
export declare function createJz(ownedElements: WeakSet<Element>, tag: JzTag, pass: string, kind: JzKind, opts?: CreateOptions): HTMLElement;
|
||||
/** 記錄後寫屬性;同實例重寫時仍保留最初原值。 */
|
||||
export declare function setOwnedAttribute(el: Element, name: string, value: string, owner: object): void;
|
||||
/** 僅當 DOM 仍是本實例最後寫入之值時還原;外部變更時 fail closed。 */
|
||||
export declare function revertOwnedAttribute(el: Element, name: string, owner: object): void;
|
||||
/** 還原 owner 於 root 本身或子樹寫入之指定屬性,包括已被外部刪除者。 */
|
||||
export declare function revertOwnedAttributes(root: Element, name: string, owner: object): void;
|
||||
/**
|
||||
* 還原某 pass 之全部產物(I6)。以 data-jz 定址,逆文件序處理(先內層後
|
||||
* 外層),marker 移除、wrap 解包,最後 normalize 受影響父節點合併文本。
|
||||
* 外層),wrap 解包,最後 normalize 受影響父節點合併文本。
|
||||
*
|
||||
* splitoff(克隆切分之邊界詞元,見 core/split.ts)須在 wrap 全部解包**之後**才併回:
|
||||
* 否則其前兄弟可能仍是 wrap 殼(如 jz-jinze)而非原元素。故主迴圈跳過 splitoff,於
|
||||
* 解包後第二階段以文件序逐一併回前兄弟(同標籤元素),還原為單一元素(I6 一致)。
|
||||
*/
|
||||
export declare function revertPass(pass: string, root: ParentNode): void;
|
||||
export declare function revertPass(pass: string, root: ParentNode, ownedElements: WeakSet<Element>): void;
|
||||
/** 讀取 jz-char 之 bd-* 子類(無則 null)。 */
|
||||
export declare function bdClassOf(el: Element): string | null;
|
||||
/** 該元素是否為某/任一 pass 之 jz 產物。 */
|
||||
|
||||
Reference in New Issue
Block a user