Optionalseed: Readonly<Record<string, string>>Optionalparent: IconRegistry이 레지스트리를 부모로 하는 자식(per-instance 오버라이드용) 생성.
Create a child registry with this as parent (for per-instance overrides).
このレジストリを親とする子(per-instance のオーバーライド用)を生成。
创建以本注册表为父的子注册表(用于 per-instance 覆盖)。
role 이 (자신 또는 부모 체인에) 등록돼 있는가.
Whether a role is registered (self or parent chain).
role が(自身または親チェーンに)登録されているか。
role 是否已注册(在自身或父链中)。
role 에 글리프를 등록/교체. svgOrKey 가 알려진 아이콘 key 면 그 본문을, 아니면 원시 SVG 본문 마크업으로 간주한다(코어 편집 없이 아이콘 교체 — OCP).
Register/replace a glyph for a role. A known icon key resolves to its body; otherwise svgOrKey is treated as raw SVG body markup (swap icons without editing core — OCP).
role にグリフを登録/差し替え。svgOrKey が既知のアイコン key であればその本文を、そうでなければ生の SVG 本文マークアップとみなします(コアを編集せずにアイコンを差し替え — OCP)。
为 role 注册/替换字形。svgOrKey 是已知图标 key 时取其主体,否则视为原始 SVG 主体标记 (无需编辑核心即可替换图标 — OCP)。
시맨틱 역할 키(예: 'sort.asc')
Semantic role key (e.g. 'sort.asc')
セマンティックな役割キー(例: 'sort.asc')
语义角色键(例: 'sort.asc')
알려진 아이콘 key 또는 원시 SVG 본문
A known icon key or raw SVG body
既知のアイコン key または生の SVG 本文
已知的图标 key 或原始 SVG 主体
체이닝용 this
this for chaining
チェーン用の this
用于链式调用的 this
role 을 <svg viewBox=ICON_VIEWBOX> 로 렌더. 기본 반환은 SVG 마크업 문자열(innerHTML 용);
opts.el 이면 SVGElement. 미지원 role 은 빈 svg 폴백(never throw).
스킨 토큰: fill=currentColor(presentation attr) + stroke-linejoin=var(--og-icon-corner,miter).
Render a role as <svg viewBox=ICON_VIEWBOX>. Returns SVG markup string by default (for innerHTML);
opts.el returns an SVGElement. Unknown roles fall back to an empty svg (never throws).
role を <svg viewBox=ICON_VIEWBOX> としてレンダー。既定の戻り値は SVG マークアップ文字列(innerHTML 用)、
opts.el なら SVGElement。未対応の role は空の svg にフォールバック(never throw)。
スキントークン: fill=currentColor(presentation attr) + stroke-linejoin=var(--og-icon-corner,miter)。
把 role 渲染为 <svg viewBox=ICON_VIEWBOX>。默认返回 SVG 标记字符串(供 innerHTML 使用);
指定 opts.el 则返回 SVGElement。不支持的 role 回退为空 svg(never throw)。
皮肤令牌: fill=currentColor(presentation attr) + stroke-linejoin=var(--og-icon-corner,miter)。
렌더할 역할 키
Role key to render
レンダーする役割キー
要渲染的角色键
Optionalopts: IconRenderOptions렌더 옵션
Render options
レンダーオプション
渲染选项
SVG 마크업 문자열 또는 SVGElement(opts.el)
SVG markup string, or SVGElement when opts.el
SVG マークアップ文字列、または SVGElement(opts.el の場合)
SVG 标记字符串,或指定 opts.el 时返回 SVGElement
role → 글리프 본문(inner markup). 미등록이면 null(부모 체인까지 조회).
role → glyph body (inner markup); null if unregistered (searches up the parent chain).
role → グリフ本文(inner markup)。未登録なら null(親チェーンまで照会)。
role → 字形主体(inner markup)。未注册则返回 null(沿父链向上查找)。
조회할 역할 키
Role key to resolve
照会する役割キー
要查找的角色键
글리프 본문 또는 null
Glyph body or null
グリフ本文または null
字形主体或 null
등록된 role 목록(자신만, 디버깅/테스트용).
List of registered roles (self only; for debugging/tests).
登録された role の一覧(自身のみ、デバッグ/テスト用)。
已注册的 role 列表(仅自身,供调试/测试用)。
IconRegistry — 시맨틱 role(예: 'sort.asc') 을 실제 아이콘 SVG 로 바꿔주는 등록소. 정렬 화살표·필터 깔때기 같은 아이콘을 코드 곳곳에 인라인 SVG 로 박아 두면, 아이콘 하나를 바꾸려 해도 렌더러 파일들을 찾아 고쳐야 한다 — 대신 렌더 코드는 "sort.asc 를 그려줘"라고만 요청하고, 실제 어떤 글리프인지는 이 레지스트리가 결정한다. 동작 순서: ①/ 마크업)뿐이라, register(role, svgOrKey) 는
register(role, svgOrKey)로 role↔글리프 매핑을 등록해 두면 → ② 렌더 시점에render(role)가 호출되어 → ③ 등록된 본문을<svg>로 감싸 문자열(또는 SVGElement)로 돌려준다. 저장 단위는 글리프 본문 문자열(BOOTSTRAP_ICONS의 알려진 key 면 그 본문으로,IconRegistry — a registry that turns a semantic role (e.g. 'sort.asc') into an actual icon SVG. Hardcoding inline SVG for every sort arrow or filter funnel across render code means hunting down every renderer file just to swap one icon — instead render code simply asks "draw sort.asc", and this registry decides which glyph that is. Flow: ①/ markup), so register(role, svgOrKey) stores either the body
of a known
register(role, svgOrKey)records a role↔glyph mapping → ② at render timerender(role)is called → ③ it wraps the registered body in an<svg>and returns a string (or SVGElement). The storage unit is only the glyph body string (BOOTSTRAP_ICONSkey, or the raw SVG body otherwise. A parent chain (_parent) layers a per-instance override registry on top of the global one (multi-grid isolation).IconRegistry — セマンティックな role(例: 'sort.asc')を実際のアイコン SVG に変えてくれるレジストリ。 ソート矢印やフィルターの漏斗のようなアイコンをコードのあちこちにインライン SVG で埋め込んでおくと、 アイコン一つを変えるだけでもレンダラーのファイルを探して直さなければなりません — 代わりにレンダーコードは 「sort.asc を描いて」と頼むだけで、実際にどのグリフなのかはこのレジストリが決めます。動作の順序: ①/ マークアップ)だけなので、register(role, svgOrKey) は
register(role, svgOrKey)で role↔グリフのマッピングを登録しておくと → ② レンダー時点でrender(role)が呼ばれ → ③ 登録された本文を<svg>で包んで文字列(または SVGElement)として返します。保存の単位は グリフ本文の文字列(BOOTSTRAP_ICONSの既知の key であればその本文として、IconRegistry — 把语义 role(例: 'sort.asc')换成实际图标 SVG 的注册表。 若把排序箭头、筛选漏斗这类图标以内联 SVG 硬编码在渲染代码各处,只换一个图标也得翻遍渲染器文件逐一修改 — 改由渲染代码只提出「画出 sort.asc」的请求,具体是哪个字形则交给这个注册表决定。执行顺序: ① 用/ 标记),因此 register(role, svgOrKey) 的存储方式为:
register(role, svgOrKey)登记 role↔字形的映射 → ② 渲染时调用render(role)→ ③ 把登记的主体包进<svg>,返回字符串(或 SVGElement)。存储单位只有 字形主体字符串(BOOTSTRAP_ICONS的已知 key 时,存其主体;Example