mosaic-headless 1.11.2 → 1.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.ja.md CHANGED
@@ -30,6 +30,7 @@ python tools/mo.py type accordion-content # 1 つの型を、全ライブス
30
30
  python tools/mo.py check div text button # 危険な型・未知の型があれば exit 1
31
31
  python tools/mo.py style --grouped # 単独設定では必ず効かない 20 個
32
32
  python tools/mo.py states --verified # 実測でコンパイルされた状態だけ
33
+ python tools/mo.py params text # 1 つの型に設定できるものすべて
33
34
  ```
34
35
 
35
36
  そのうえでページを見る。Mosaic の失敗の仕方は 4 通りあり、
@@ -60,6 +61,7 @@ URL に対応するテンプレなし HTTP 406、未ログインには空の b
60
61
  | **スタイルプロパティ** | 98 / 98 を実ページに書き、コンパイル済み CSS と照合:58 COMPILED、18 ABSENT、21 SKIPPED |
61
62
  | **ノードプロパティ** | 181 / 181 を、各プロパティ自身の validator chain から導いた値で再測定:35 APPLIED、42 NO_EFFECT、55 NO_HOST、47 SKIPPED |
62
63
  | **レスポンシブ** | 2 サイト計 688 件の `_t`/`_m` 宣言を、サイトが実際に配信したスタイルシートに対して 1 件ずつ断言 — 全件検証済み |
64
+ | **コンポーネント** | コンポーネント機構を端から端まで実行し **8 / 8**:カテゴリ配下に作成、ドキュメントを heal、書き込み可能な instance 経由でツリーを投入、読み取り専用の方は同じ書き込みを拒否(ネガティブコントロール)、最後に 2 つのインスタンスが 1 つの定義から描画 |
63
65
  | **スタイル状態** | 53 状態のうち 52 を実ページに書き、テーブルが約束するセレクタと照合:**36 件が完全一致**、12 件 NO_HOST、3 件 SKIPPED、1 件 BROKE_PAGE。どの要素にも使えるグローバル 7 状態はすべて検証済み |
64
66
  | **インタラクション** | JS アニメーション経路を、ネガティブコントロール付きで保存行を読み戻しながら検証:`propertyMetas` は**受理され保存される**。プロパティ値は依然としてバインドされないが、その境界は厳密になった |
65
67
  | **入場アニメーション** | ページ読み込み後の 10 時点をサンプリングし 7 項目を断言 — 再生されること、アニメーションする `@property` カウンタが 100 に達すること、ベールがヒットテストから外れること、ビューポート内に opacity 0 のまま取り残された要素がないこと、実際のクリックが文書に届くこと、そして `prefers-reduced-motion` ではベールがそもそも存在しないこと |
package/README.ko.md CHANGED
@@ -30,6 +30,7 @@ python tools/mo.py type accordion-content # 타입 하나를 모든 라이브
30
30
  python tools/mo.py check div text button # 위험하거나 존재하지 않는 타입이면 exit 1
31
31
  python tools/mo.py style --grouped # 단독으로 설정하면 반드시 무효인 20개
32
32
  python tools/mo.py states --verified # 실측으로 컴파일이 확인된 상태만
33
+ python tools/mo.py params text # 한 타입에 설정 가능한 모든 것
33
34
  ```
34
35
 
35
36
  그리고 페이지를 확인한다. Mosaic의 실패 방식은 네 가지이고,
@@ -60,6 +61,7 @@ URL에 맞는 템플릿 없음 HTTP 406, 로그인하지 않은 사용자
60
61
  | **스타일 속성** | 98 / 98을 실제 페이지에 쓰고 컴파일된 CSS와 대조: 58 COMPILED, 18 ABSENT, 21 SKIPPED |
61
62
  | **노드 속성** | 181 / 181을 각 속성 자신의 validator chain에서 도출한 값으로 재측정: 35 APPLIED, 42 NO_EFFECT, 55 NO_HOST, 47 SKIPPED |
62
63
  | **반응형** | 두 사이트 합쳐 688개의 `_t`/`_m` 선언을, 사이트가 실제로 내보낸 스타일시트에 대해 하나씩 단언 — 전부 검증됨 |
64
+ | **컴포넌트** | 컴포넌트 체계를 끝까지 구동해 **8 / 8**: 카테고리 아래 생성, 문서 heal, 쓰기 가능한 instance로 트리 주입, 읽기 전용 쪽은 같은 쓰기를 거부(음성 대조군), 마지막으로 인스턴스 2개가 정의 하나로 렌더링 |
63
65
  | **스타일 상태** | 53개 상태 중 52개를 실제 페이지에 쓰고 표가 약속한 셀렉터와 대조: **36개가 정확히 일치**, 12개 NO_HOST, 3개 SKIPPED, 1개 BROKE_PAGE. 어떤 요소에나 쓸 수 있는 전역 7개 상태는 전부 검증됨 |
64
66
  | **인터랙션** | JS 애니메이션 경로를 음성 대조군과 함께, 저장된 행을 되읽으며 검증: `propertyMetas`는 **수용되고 저장된다**. 속성 값은 여전히 바인딩되지 않지만 그 경계는 이제 정확하다 |
65
67
  | **인트로 애니메이션** | 페이지 로드 후 10개 시점을 샘플링해 7가지를 단언 — 재생될 것, 애니메이션되는 `@property` 카운터가 100에 도달할 것, 베일이 히트 테스트에서 빠질 것, 뷰포트 안에 opacity 0으로 갇힌 요소가 없을 것, 실제 클릭이 문서에 닿을 것, 그리고 `prefers-reduced-motion`에서는 베일이 아예 존재하지 않을 것 |
package/README.md CHANGED
@@ -30,6 +30,7 @@ python tools/mo.py type accordion-content # one type, joined to every live swe
30
30
  python tools/mo.py check div text button # exits 1 on an unsafe or unknown type
31
31
  python tools/mo.py style --grouped # the 20 that are inert set on their own
32
32
  python tools/mo.py states --verified # the states measured to compile
33
+ python tools/mo.py params text # everything settable on one type
33
34
  ```
34
35
 
35
36
  Then check the page. Mosaic has four failure modes and **only one of them changes the
@@ -61,6 +62,7 @@ factories, so Pro types register and render regardless.
61
62
  | **style properties** | 98 / 98 written to a live page and checked against the compiled CSS: 58 COMPILED, 18 ABSENT, 21 SKIPPED |
62
63
  | **node properties** | 181 / 181 re-probed with a value shaped by each property's own validator chain: 35 APPLIED, 42 NO_EFFECT, 55 NO_HOST, 47 SKIPPED |
63
64
  | **responsive** | 688 `_t`/`_m` declarations across two sites asserted against the stylesheet the site actually served — all verified |
65
+ | **components** | the component system driven end to end, **8 of 8**: created under a category, document healed, tree filled through the writable instance, the read-only one refused the same write as a negative control, and two instances on a page rendering one definition twice |
64
66
  | **style states** | 52 of the 53 states written to a live page and matched against the selector the table promises: **36 compiled exactly**, 12 NO_HOST, 3 SKIPPED, 1 BROKE_PAGE. All seven globally usable states verified |
65
67
  | **interactions** | the JS animation path probed with negative controls and the row read back: `propertyMetas` **is** accepted and stored; the property values still do not bind, and the boundary is now exact |
66
68
  | **entrance animation** | the page-load sequence sampled at ten timestamps and asserted on seven counts — it plays, its animated `@property` counter reaches 100, the veil leaves hit-testing, nothing in the viewport is stranded at opacity 0, a real click reaches the document, and under `prefers-reduced-motion` the veil never exists at all |
package/README.zh-TW.md CHANGED
@@ -26,6 +26,7 @@ python tools/mo.py type accordion-content # 一個型別,接上所有線上
26
26
  python tools/mo.py check div text button # 型別不安全或不存在就 exit 1
27
27
  python tools/mo.py style --grouped # 那 20 個單獨設定必然無效的屬性
28
28
  python tools/mo.py states --verified # 實測會編譯出來的狀態
29
+ python tools/mo.py params text # 一個型別上所有能設的東西
29
30
  ```
30
31
 
31
32
  然後去看頁面。Mosaic 有四種失效模式,**其中只有一種會改變 HTTP 狀態碼**:
@@ -53,6 +54,7 @@ commit 時 PHP fatal HTTP 500 (122 種型別裡有 15 種,光放在 div
53
54
  | **樣式屬性** | 98 / 98 寫進真實頁面並對照編譯後的 CSS:58 COMPILED、18 ABSENT、21 SKIPPED |
54
55
  | **節點屬性** | 181 / 181,用每個屬性自己的 validator chain 推導出的值重測:35 APPLIED、42 NO_EFFECT、55 NO_HOST、47 SKIPPED |
55
56
  | **響應式** | 兩個站共 688 條 `_t`/`_m` 宣告,對照網站實際送出的樣式表逐條斷言——全數通過 |
57
+ | **元件系統** | 完整驅動過一遍,**8 / 8**:在分類下建立、文件 heal、透過可寫的 instance 填入內容、唯讀的那個作為負對照組確實拒絕同一個寫入,最後兩個實例在頁面上由同一份定義渲染兩次 |
56
58
  | **樣式狀態** | 53 個狀態中的 52 個寫進真實頁面,對照表格承諾的選擇器逐一比對:**36 個完全吻合**、12 個 NO_HOST、3 個 SKIPPED、1 個 BROKE_PAGE。七個可用於任何元素的狀態全數驗證 |
57
59
  | **互動動畫** | 帶負對照組並讀回儲存列來探測 JS 動畫路徑:`propertyMetas` **確實**會被接受並儲存;屬性值仍然無法綁定,但界線現在很精確 |
58
60
  | **入口動畫** | 在載入後十個時間點取樣並做七項斷言——它有播、被動畫的 `@property` 計數器跑到 100、遮罩退出點擊判定、視窗內沒有任何內容卡在 opacity 0、真實點擊落在文件上,而在 `prefers-reduced-motion` 下遮罩根本不存在 |
package/SKILL.md CHANGED
@@ -4,7 +4,7 @@ description: |
4
4
  Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface with `mo.py`, which joins every source table to the live sweeps so a lookup leads with the measured verdict rather than the declaration (122 node types, 181 properties, 98 style properties with 20 structured value shapes pinned down, 53 style states, 151 element classes, 74 dynamic variables, 12 interaction triggers, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, the design-token and element-class layers verified against compiled CSS, the @VAR() dynamic language verified against rendered output, nine designed pages built through the tables themselves, and the delivered page re-read in Chromium at three viewports so a rule that is present, correct and still wrong cannot pass.
5
5
  license: "MIT"
6
6
  author: "moksa (https://moksaweb.com)"
7
- version: "1.11.2"
7
+ version: "1.13.0"
8
8
  ---
9
9
 
10
10
  # Headless Mosaic
@@ -30,6 +30,9 @@ thing about that type worth knowing.
30
30
  ```bash
31
31
  python tools/mo.py stats # the surface, and what is unsafe
32
32
  python tools/mo.py type accordion-content # ONE type, joined to every sweep
33
+ python tools/mo.py params text # EVERYTHING settable on a type:
34
+ # data properties, the states that
35
+ # reach it, the style surface, placement
33
36
  python tools/mo.py types --edition pro --safe
34
37
  python tools/mo.py check div text button # exits 1 on an unsafe or unknown type
35
38
  python tools/mo.py placement accordion-item # what goes inside what, both directions
@@ -147,6 +150,12 @@ STATES 52 of the 53 style states written to a live page and matched agains
147
150
  pseudo-classes are emitted UPPERCASE (`.M_EL9:HOVER`), so grepping a
148
151
  stylesheet for `:hover` finds nothing. data/style-state-verification.csv
149
152
 
153
+ COMPONENTS the component system driven end to end, 8 of 8 checks: a component
154
+ created under a category, its document healed, its tree filled through
155
+ the WRITABLE instance, the read-only one refused the same write as a
156
+ negative control, and two instances placed on a page rendering the one
157
+ definition twice. data/component-verification.csv
158
+
150
159
  INTERACTION the JS animation path, probed with negative controls and the row read
151
160
  back: `propertyMetas` IS accepted and stored (the earlier claim that it
152
161
  never survived was wrong), `uuid` per item is optional on create and
@@ -316,9 +325,12 @@ so the pattern is in the data, not just in this paragraph.
316
325
  | `data/style-verification.csv` | 98 | **swept live** — every style property written to a page and checked against the compiled CSS, with its group beside the result |
317
326
  | `data/rwd-verification.csv` | 688 | **checked live** - every `_t`/`_m` declaration vs the served stylesheet, with status per row |
318
327
  | `data/browser-verification.csv` | 3637 | **computed in Chromium** - declared vs `getComputedStyle` at three viewports, `not-comparable` labelled per row |
319
- | `data/design-audit.csv` | 0 | **computed in Chromium** - contrast, font fallback, CJK tracking, overflow, measure. Empty means it ran and found nothing |
328
+ | `data/design-audit-acknowledged.csv` | 1 | reviewed findings that will not be fixed, each with a written reason. An acknowledgement without a reason is a suppression wearing a better name, and the release gate refuses one |
329
+ | `data/design-audit.csv` | 24 | **computed in Chromium** - contrast, font fallback, CJK tracking, overflow, measure. Empty means it ran and found nothing |
320
330
  | `data/data-class-hierarchy.csv` | 121 | source - every data class and its parent, so a type's inherited properties can be resolved |
321
331
  | `data/style-state-verification.csv` | 52 | **swept live** - each state written on a host of its own type and matched against its promised selector |
332
+ | `data/component-verification.csv` | 8 | **driven live** - the component lifecycle, each step asserted against the row or the delivered HTML |
333
+ | `data/node-type-notes.csv` | 4 | where a sweep outcome is true but misleading on its own, why. Surfaced by `mo.py type` |
322
334
  | `data/interaction-verification.csv` | 7 | **probed live** - interaction animation shapes, with negative controls and the stored row beside the payload |
323
335
  | `data/intro-verification.csv` | 7 + 10 | **sampled live** - the entrance sequence over ten timestamps, plus the seven assertions about it |
324
336
  | `data/element-classes.csv` | 151 | **live** — the built-in class metas; their IDs are what an `elementClass` record must use |
@@ -432,6 +444,7 @@ post — `build_all.py` resets first for that reason.
432
444
  | `sweep_style_properties.py` | write every style property and check the compiled CSS |
433
445
  | `sweep_node_properties.py` | probe every node property with a value from its own validator chain |
434
446
  | `sweep_style_states.py` | write every style state and check the selector it compiled to |
447
+ | `sweep_components.py` | build a component, instance it twice, and prove one definition served both |
435
448
  | `sweep_interactions.py` | which interaction animation shapes survive to the frontend payload |
436
449
  | `theme_export.php` / `theme_import.php` | move a whole theme across installs, ids intact |
437
450
  | `copy_styles.py` | push one node's style onto others, by attrID or prefix |
@@ -20,7 +20,7 @@
20
20
  "description": "Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface (122 node types, 181 node properties, 98 style properties, 53 style states, 151 element classes, 74 dynamic variables, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, every style and node property swept against the compiled CSS and markup, and 569 responsive declarations checked against the stylesheet the site actually served.",
21
21
  "license": "MIT",
22
22
  "author": "moksa (https://moksaweb.com)",
23
- "version": "1.11.2"
23
+ "version": "1.13.0"
24
24
  },
25
25
  "loaderBehaviour": "Upload via Settings -> Skills -> Upload. Claude.ai parses SKILL.md frontmatter and surfaces the skill in your library. The extraction tool (extract-block-schema.php) needs a live WP-CLI connection and won't run in the sandbox; use it from a local terminal against your own site instead.",
26
26
  "uploadSteps": [
@@ -20,7 +20,7 @@
20
20
  "description": "Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface (122 node types, 181 node properties, 98 style properties, 53 style states, 151 element classes, 74 dynamic variables, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, every style and node property swept against the compiled CSS and markup, and 569 responsive declarations checked against the stylesheet the site actually served.",
21
21
  "license": "MIT",
22
22
  "author": "moksa (https://moksaweb.com)",
23
- "version": "1.11.2"
23
+ "version": "1.13.0"
24
24
  },
25
25
  "loaderBehaviour": "Auto-loads on session start when SKILL.md frontmatter parses successfully.",
26
26
  "verified": true,
@@ -20,7 +20,7 @@
20
20
  "description": "Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface (122 node types, 181 node properties, 98 style properties, 53 style states, 151 element classes, 74 dynamic variables, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, every style and node property swept against the compiled CSS and markup, and 569 responsive declarations checked against the stylesheet the site actually served.",
21
21
  "license": "MIT",
22
22
  "author": "moksa (https://moksaweb.com)",
23
- "version": "1.11.2"
23
+ "version": "1.13.0"
24
24
  },
25
25
  "loaderBehaviour": "Confirmed (2026-07-11): Codex CLI natively supports the SKILL.md spec. Place SKILL.md under .codex/skills/<name>/ (project) or ~/.codex/skills/<name>/ (personal) and Codex loads the name+description at session start, then the full body on demand. A parallel, broader convention .agents/skills/ (searched from cwd up to repo root, then ~/.agents/skills/) also exists across multiple tools - if your Codex CLI version prioritizes that path instead, mirror the same SKILL.md there.",
26
26
  "verified": true,
@@ -20,7 +20,7 @@
20
20
  "description": "Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface (122 node types, 181 node properties, 98 style properties, 53 style states, 151 element classes, 74 dynamic variables, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, every style and node property swept against the compiled CSS and markup, and 569 responsive declarations checked against the stylesheet the site actually served.",
21
21
  "license": "MIT",
22
22
  "author": "moksa (https://moksaweb.com)",
23
- "version": "1.11.2"
23
+ "version": "1.13.0"
24
24
  },
25
25
  "loaderBehaviour": "CHANGED as of 2026-07-11: GitHub Copilot added a proper '.github/skills/' Agent Skills directory (December 2025), alongside the older single-file .github/copilot-instructions.md convention. This config targets the new skills-directory form. If your Copilot version predates this (pre Dec 2025), use the instructions-append fallback instead (see fallback below).",
26
26
  "fallback": {
@@ -20,7 +20,7 @@
20
20
  "description": "Build and modify Mosaic Pro (Nextend) sites by writing the underlying data model directly - no visual editor, no DOM. Query the real surface (122 node types, 181 node properties, 98 style properties, 53 style states, 151 element classes, 74 dynamic variables, 114 REST routes, 23 tables) instead of guessing, with every node type placed on a live site one at a time and asserted against the delivered HTML, every style and node property swept against the compiled CSS and markup, and 569 responsive declarations checked against the stylesheet the site actually served.",
21
21
  "license": "MIT",
22
22
  "author": "moksa (https://moksaweb.com)",
23
- "version": "1.11.2"
23
+ "version": "1.13.0"
24
24
  },
25
25
  "loaderBehaviour": "CHANGED as of 2026-07-11: Gemini CLI now natively supports the same SKILL.md standard as Claude Code and Codex CLI - the same directory-based skill works unmodified. Gemini CLI discovers skills in this precedence order: built-in, extension skills, ~/.gemini/skills/ (personal), .gemini/skills/ (project, shared via version control). At session start Gemini injects each discovered skill's name+description into the system prompt and calls activate_skill when a task matches.",
26
26
  "verified": true,
@@ -128,6 +128,25 @@ if (!audit.startsWith("url,breakpoints,check,level"))
128
128
  if (audit.includes(",error,"))
129
129
  fail("data/design-audit.csv carries unresolved design errors");
130
130
 
131
+ // Stronger than "no errors": every finding must be either FIXED or ACKNOWLEDGED in
132
+ // writing. A warning that nobody has ruled on is the state this gate exists to
133
+ // prevent - it is how a list of findings turns into a list nobody reads.
134
+ if (audit.includes(",warn,"))
135
+ fail("data/design-audit.csv carries warnings that are neither fixed nor "
136
+ + "acknowledged in data/design-audit-acknowledged.csv");
137
+ const ackFile = "data/design-audit-acknowledged.csv";
138
+ if (!fs.existsSync(path.join(ROOT, ackFile))) fail(`${ackFile} missing`);
139
+ else {
140
+ const ack = read(ackFile);
141
+ if (!ack.startsWith("check,node_prefix,reason"))
142
+ fail(`${ackFile} is not the acknowledgement table verify_browser.py reads`);
143
+ // an acknowledgement without a reason is a suppression wearing a better name
144
+ for (const line of ack.trim().split("\n").slice(1))
145
+ if (line.length < 60)
146
+ fail(`${ackFile}: an acknowledgement has no substantive reason: `
147
+ + line.slice(0, 60));
148
+ }
149
+
131
150
  // ---------- nothing private ships -------------------------------------------
132
151
 
133
152
  // npm's `files` allowlist OVERRIDES .gitignore: naming a directory there ships
@@ -0,0 +1,9 @@
1
+ step,result,detail
2
+ categories exist,PASS,"Page, Block, Part"
3
+ component created,PASS,parented to 'Page'
4
+ document healed,PASS,"first GET 404'd, second gave component-internal"
5
+ component filled,PASS,"tree is component-internal, div, text, wysiwyg-text"
6
+ read-only instance refuses,PASS,componentNodeEditorInstance rejected the same commit
7
+ instances committed,PASS,type carries the component id
8
+ both instances rendered,PASS,2 instance elements in the delivered HTML
9
+ component content reused,PASS,the component's own text appears 2 times from ONE definition
@@ -0,0 +1,2 @@
1
+ check,node_prefix,reason
2
+ DECORATIVE_TEXT,mk-code-,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
@@ -1,28 +1,25 @@
1
- url,breakpoints,check,level,node,detail,sample
2
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",PY
3
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible","@app.post(\""/orders/{id}/pai"
4
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",async def paid(id: str):
5
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", o = await repo.get(id)
6
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," await tasks(\""invoice\"","
7
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c0-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," return {\""ok\"": True}"
8
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",TSX
9
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",<section
10
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," className=\""grid gap-6"
11
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", md:grid-cols-3\
12
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", <Card {...order} />
13
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c1-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",</section>
14
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",VITE
15
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",export default defineConfig(
16
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," plugins: [react()],"
17
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", build: { target: 'es2022'
18
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," server: { port: 5173 },"
19
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c2-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",})
20
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",JS
21
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",const o = await prisma.order
22
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", .findUnique({ where: { id
23
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await n8n.trigger('order.pai
24
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await line.push(o.customerId
25
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,warn,mk-code-c3-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await ecpay.issue(o)
26
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",TEXT_CLIP,warn,p.M_EL274,"color is rgba(0, 0, 0, 0); painted by something else - contrast NOT checked here",01
27
- https://mosaic.moksaweb.com/moksa/,"_,_t,_m",TEXT_CLIP,warn,h2.M_EL277,"color is rgba(0, 0, 0, 0); painted by background-clip:text - contrast NOT checked here","技術是拿來解決問題的,
28
- 不是拿來炫耀的。"
1
+ url,breakpoints,check,level,node,detail,sample,acknowledged_because
2
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",PY,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
3
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible","@app.post(\""/orders/{id}/pai","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
4
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",async def paid(id: str):,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
5
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", o = await repo.get(id),"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
6
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," await tasks(\""invoice\"",","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
7
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c0-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," return {\""ok\"": True}","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
8
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",TSX,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
9
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",<section,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
10
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," className=\""grid gap-6","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
11
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", md:grid-cols-3\,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
12
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", <Card {...order} />,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
13
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c1-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",</section>,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
14
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",VITE,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
15
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",export default defineConfig(,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
16
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," plugins: [react()],","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
17
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", build: { target: 'es2022' ,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
18
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible"," server: { port: 5173 },","The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
19
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c2-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",}),"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
20
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-h::after,"2.71:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",JS,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
21
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-l0::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",const o = await prisma.order,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
22
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-l1::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible", .findUnique({ where: { id ,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
23
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-l2::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await n8n.trigger('order.pai,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
24
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-l3::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await line.push(o.customerId,"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."
25
+ https://mosaic.moksaweb.com/moksa/,"_,_t,_m",DECORATIVE_TEXT,ack,mk-code-c3-l4::after,"1.46:1 - drawn by CSS content, so it is out of the accessibility tree and exempt, but it IS visible",await ecpay.issue(o),"The hero's code layer. Drawn by CSS `content` so it is not in the accessibility tree, and WCAG 1.4.3 exempts incidental text that is part of a picture with other significant visual content. Measured at 1.46:1 under the headline and 2.71:1 to the right; raising it to 4.5:1 would make the background a foreground. The lede and the spec column carry their own paper so no real content is ever read against it."