@cyberskill/design 1.0.0 → 1.1.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/DESIGN.md +10 -9
- package/README.md +31 -28
- package/SKILL.md +13 -9
- package/VERSION +1 -1
- package/_ds_bundle.js +660 -202
- package/_ds_manifest.json +1 -1
- package/_esm/cs.mjs +14 -8
- package/_esm/react.d.ts +216 -0
- package/_esm/react.mjs +114 -0
- package/base/collections.css +31 -0
- package/base/components.css +3 -0
- package/base/data.css +33 -0
- package/base/forms.css +8 -0
- package/base/interaction.css +1 -0
- package/base/typography.css +6 -0
- package/components/_i18n/strings.js +8 -4
- package/components/ai/ai-conversation.card.html +2 -2
- package/components/ai/ai-lumi.card.html +2 -2
- package/components/ai/ai.card.html +2 -2
- package/components/brand/brand.card.html +2 -2
- package/components/button/buttons.card.html +2 -2
- package/components/data/AspectRatio.d.ts +16 -0
- package/components/data/AspectRatio.figma.tsx +12 -0
- package/components/data/AspectRatio.jsx +16 -0
- package/components/data/AspectRatio.prompt.md +7 -0
- package/components/data/Collapsible.d.ts +21 -0
- package/components/data/Collapsible.figma.tsx +12 -0
- package/components/data/Collapsible.jsx +49 -0
- package/components/data/Collapsible.prompt.md +7 -0
- package/components/data/Image.d.ts +4 -0
- package/components/data/Image.prompt.md +2 -2
- package/components/data/Item.d.ts +26 -0
- package/components/data/Item.figma.tsx +12 -0
- package/components/data/Item.jsx +63 -0
- package/components/data/Item.prompt.md +10 -0
- package/components/data/ScrollArea.d.ts +16 -0
- package/components/data/ScrollArea.figma.tsx +12 -0
- package/components/data/ScrollArea.jsx +25 -0
- package/components/data/ScrollArea.prompt.md +7 -0
- package/components/data/collections.card.html +15 -4
- package/components/data/data.card.html +15 -4
- package/components/datatable/datatable.card.html +2 -2
- package/components/dialog/dialog.card.html +2 -2
- package/components/feedback/feedback-2.card.html +2 -2
- package/components/feedback/feedback.card.html +2 -2
- package/components/forms/Cascader.jsx +5 -3
- package/components/forms/Editor.prompt.md +1 -1
- package/components/forms/InputGroup.d.ts +4 -0
- package/components/forms/InputGroup.jsx +38 -8
- package/components/forms/InputGroup.prompt.md +3 -3
- package/components/forms/NativeSelect.d.ts +22 -0
- package/components/forms/NativeSelect.figma.tsx +12 -0
- package/components/forms/NativeSelect.jsx +56 -0
- package/components/forms/NativeSelect.prompt.md +10 -0
- package/components/forms/NumberField.d.ts +5 -0
- package/components/forms/NumberField.jsx +51 -7
- package/components/forms/NumberField.prompt.md +2 -2
- package/components/forms/SegmentedControl.jsx +1 -1
- package/components/forms/TagInput.d.ts +3 -0
- package/components/forms/TagInput.jsx +62 -20
- package/components/forms/TagInput.prompt.md +2 -2
- package/components/forms/forms-2.card.html +2 -2
- package/components/forms/forms.card.html +5 -4
- package/components/icon/Icon.prompt.md +1 -1
- package/components/icon/icon.card.html +2 -2
- package/components/logo/Logo.jsx +2 -1
- package/components/logo/logo.card.html +2 -2
- package/components/navigation/Menu.jsx +14 -1
- package/components/navigation/navigation.card.html +2 -2
- package/components/navigation/shell.card.html +2 -2
- package/components/overlays/AlertDialog.d.ts +29 -0
- package/components/overlays/AlertDialog.figma.tsx +12 -0
- package/components/overlays/AlertDialog.jsx +142 -0
- package/components/overlays/AlertDialog.prompt.md +12 -0
- package/components/overlays/Drawer.jsx +1 -1
- package/components/overlays/Popconfirm.jsx +14 -1
- package/components/overlays/Popover.jsx +14 -1
- package/components/overlays/alertdialog.card.html +42 -0
- package/components/overlays/overlays.card.html +2 -2
- package/components/textfield/textfield.card.html +2 -2
- package/docs/benchmark-rubric.md +46 -0
- package/docs/ci-cd.md +17 -11
- package/docs/consumer-grant.md +37 -0
- package/docs/consuming.md +45 -16
- package/docs/contrast-report.md +91 -103
- package/docs/conventions.md +12 -9
- package/docs/decisions.md +33 -10
- package/docs/deploy.md +1 -1
- package/docs/design-styles.md +26 -8
- package/docs/figma.md +3 -3
- package/docs/live-hub.md +5 -3
- package/docs/products.md +13 -11
- package/docs/quality-gates.md +35 -21
- package/docs/release-notes.md +13 -3
- package/docs/status/assets/favicon.svg +5 -0
- package/docs/status/assets/status-legacy.css +399 -0
- package/docs/status/assets/status-legacy.js +505 -0
- package/docs/status/assets/status.css +644 -0
- package/docs/status/assets/status.js +1308 -0
- package/docs/status/data/status-feed.json +1 -0
- package/docs/status/data/task/TASK-REL-001.js +1 -0
- package/docs/status/index.html +45 -0
- package/docs/status/roadmap.html +4 -0
- package/docs/status/status-legacy.html +121 -0
- package/docs/storybook.md +5 -4
- package/docs/sync.md +3 -2
- package/docs/tasks/BACKLOG.md +25 -0
- package/docs/tasks/release/TASK-REL-001-launch-1-1-0/spec.md +55 -0
- package/docs/template-schema-v2.md +15 -3
- package/docs/vi/benchmark-rubric.md +46 -0
- package/docs/vi/ci-cd.md +17 -11
- package/docs/vi/consumer-grant.md +37 -0
- package/docs/vi/consuming.md +45 -16
- package/docs/vi/contrast-report.md +94 -106
- package/docs/vi/conventions.md +12 -9
- package/docs/vi/decisions.md +33 -10
- package/docs/vi/deploy.md +1 -1
- package/docs/vi/design-styles.md +26 -8
- package/docs/vi/figma.md +3 -3
- package/docs/vi/live-hub.md +5 -3
- package/docs/vi/products.md +13 -11
- package/docs/vi/quality-gates.md +35 -21
- package/docs/vi/release-notes.md +18 -8
- package/docs/vi/storybook.md +5 -4
- package/docs/vi/sync.md +3 -2
- package/docs/vi/template-schema-v2.md +15 -3
- package/docs/viewer.html +2 -2
- package/fonts/spacegrotesk-var-latin-ext.woff2 +0 -0
- package/fonts/spacegrotesk-var-latin.woff2 +0 -0
- package/fonts/spacegrotesk-var-vietnamese.woff2 +0 -0
- package/guidelines/atomic-view.html +40 -27
- package/guidelines/elements-geometry.html +69 -0
- package/guidelines/elements-variants.html +17 -17
- package/guidelines/type-families.html +16 -10
- package/llms.txt +17 -11
- package/package.json +38 -16
- package/styles.css +1 -0
- package/templates/ai-cluster-demo.html +29 -14
- package/templates/app-shell/support.js +4 -4
- package/templates/article/content-schema.json +6 -0
- package/templates/article/support.js +4 -4
- package/templates/auth/support.js +4 -4
- package/templates/bod-deck/support.js +4 -4
- package/templates/bod-investor-update/support.js +4 -4
- package/templates/bod-memo/support.js +4 -4
- package/templates/bod-minutes/content-schema.json +12 -0
- package/templates/bod-minutes/support.js +4 -4
- package/templates/bod-report/support.js +4 -4
- package/templates/bod-resolution/support.js +4 -4
- package/templates/culture-event-invite/support.js +4 -4
- package/templates/dashboard/support.js +4 -4
- package/templates/delivery-change-note/support.js +4 -4
- package/templates/delivery-kickoff/support.js +4 -4
- package/templates/delivery-qbr-deck/support.js +4 -4
- package/templates/delivery-runbook/content-schema.json +6 -0
- package/templates/delivery-runbook/support.js +4 -4
- package/templates/delivery-status-email/support.js +4 -4
- package/templates/doc-style-guide/DocStyleGuide.dc.html +2 -2
- package/templates/doc-style-guide/support.js +4 -4
- package/templates/doc-suite-index/support.js +4 -4
- package/templates/doc-templates/DocTemplates.dc.html +1 -1
- package/templates/doc-templates/support.js +4 -4
- package/templates/email/support.js +4 -4
- package/templates/email-safe/README.md +17 -4
- package/templates/email-safe/email-launch.html +3 -3
- package/templates/email-safe/email-newsletter.html +1 -1
- package/templates/finance-dunning-email/support.js +4 -4
- package/templates/finance-expense-report/support.js +4 -4
- package/templates/finance-invoice/support.js +4 -4
- package/templates/finance-quote/support.js +4 -4
- package/templates/hr-announcement/support.js +4 -4
- package/templates/hr-interview-kit/content-schema.json +12 -0
- package/templates/hr-interview-kit/support.js +4 -4
- package/templates/hr-offboarding/content-schema.json +12 -0
- package/templates/hr-offboarding/support.js +4 -4
- package/templates/hr-performance-review/content-schema.json +12 -0
- package/templates/hr-performance-review/support.js +4 -4
- package/templates/hr-pip/content-schema.json +12 -0
- package/templates/hr-pip/support.js +4 -4
- package/templates/legal-msa/content-schema.json +16 -0
- package/templates/legal-msa/support.js +4 -4
- package/templates/legal-sow/support.js +4 -4
- package/templates/marketing-campaign-brief/support.js +4 -4
- package/templates/marketing-case-study/support.js +4 -4
- package/templates/marketing-launch/support.js +4 -4
- package/templates/marketing-newsletter/support.js +4 -4
- package/templates/marketing-page/content-schema.json +0 -1
- package/templates/marketing-page/support.js +4 -4
- package/templates/marketing-press-release/support.js +4 -4
- package/templates/marketing-social-kit/support.js +4 -4
- package/templates/playground.html +8 -4
- package/templates/sales-one-pager/support.js +4 -4
- package/templates/sales-proposal-deck/support.js +4 -4
- package/templates/settings/Settings.dc.html +26 -14
- package/templates/settings/content-schema.json +36 -0
- package/templates/settings/support.js +4 -4
- package/templates/slide-deck/support.js +4 -4
- package/templates/team-meeting-agenda/content-schema.json +16 -0
- package/templates/team-meeting-agenda/support.js +4 -4
- package/templates/tech-incident-report/support.js +4 -4
- package/templates/tech-release-notes/support.js +4 -4
- package/templates/tech-retro/content-schema.json +12 -0
- package/templates/tech-retro/support.js +4 -4
- package/templates/tech-rfc/content-schema.json +6 -0
- package/templates/tech-rfc/support.js +4 -4
- package/templates/vn-appointment-transfer/support.js +4 -4
- package/templates/vn-certificate-of-employment/support.js +4 -4
- package/templates/vn-code-of-conduct/support.js +4 -4
- package/templates/vn-compensation-regulation/support.js +4 -4
- package/templates/vn-contract-amendment/support.js +4 -4
- package/templates/vn-contractor-agreement/support.js +4 -4
- package/templates/vn-data-protection-policy/support.js +4 -4
- package/templates/vn-disciplinary-case-file/support.js +4 -4
- package/templates/vn-disciplinary-schedule/content-schema.json +15 -0
- package/templates/vn-disciplinary-schedule/support.js +4 -4
- package/templates/vn-employee-request/support.js +4 -4
- package/templates/vn-exit-handover/support.js +4 -4
- package/templates/vn-foreign-employee-pack/support.js +4 -4
- package/templates/vn-grassroots-democracy/support.js +4 -4
- package/templates/vn-infosec-policy/support.js +4 -4
- package/templates/vn-internal-labor-regulations/support.js +4 -4
- package/templates/vn-internship-agreement/support.js +4 -4
- package/templates/vn-job-description/support.js +4 -4
- package/templates/vn-labor-contract/support.js +4 -4
- package/templates/vn-labour-management-book/content-schema.json +15 -0
- package/templates/vn-labour-management-book/support.js +4 -4
- package/templates/vn-mutual-nda/support.js +4 -4
- package/templates/vn-ndnca-ip/support.js +4 -4
- package/templates/vn-offer-letter/support.js +4 -4
- package/templates/vn-onboarding-checklist/support.js +4 -4
- package/templates/vn-pdpl-consent/support.js +4 -4
- package/templates/vn-performance-evaluation-regulation/support.js +4 -4
- package/templates/vn-performance-review-form/support.js +4 -4
- package/templates/vn-phantom-stock/support.js +4 -4
- package/templates/vn-probation-contract/support.js +4 -4
- package/templates/vn-receipt-acknowledgement/content-schema.json +15 -0
- package/templates/vn-receipt-acknowledgement/support.js +4 -4
- package/templates/vn-remote-work-policy/support.js +4 -4
- package/templates/vn-resignation-letter/support.js +4 -4
- package/templates/vn-salary-scale/content-schema.json +15 -0
- package/templates/vn-salary-scale/support.js +4 -4
- package/templates/vn-sow-appendix/support.js +4 -4
- package/templates/vn-termination-decision/support.js +4 -4
- package/templates/vn-total-rewards-appendix/support.js +4 -4
- package/templates/vn-training-commitment/support.js +4 -4
- package/templates/vn-travel-expense-policy/support.js +4 -4
- package/tokens/element-seeds.json +112 -0
- package/tokens/elements.css +274 -187
- package/tokens/fonts.css +12 -3
- package/tokens/native/CSTokens.kt +84 -68
- package/tokens/native/CSTokens.swift +84 -68
- package/tokens/native/cs_tokens.dart +84 -68
- package/tokens/provenance.json +9 -9
- package/tokens/styles.css +15 -0
- package/tokens/tokens.dtcg.json +258 -233
- package/tokens/tokens.js +168 -167
- package/tokens/tokens.json +167 -166
- package/tokens/typography.css +9 -1
- package/ui_kits/status-hub/README.md +1 -2
- package/ui_kits/status-hub/index.html +2 -2
- package/ui_kits/status-hub/settings.html +6 -3
- package/ui_kits/website/chat.html +2 -2
- package/ui_kits/website/index.html +2 -2
- package/ui_kits/status-hub/identity-lab.html +0 -134
|
@@ -2,16 +2,29 @@
|
|
|
2
2
|
|
|
3
3
|
Send-ready HTML that survives Gmail, Outlook (Word engine), and Apple Mail — a different medium from the DC email templates in `templates/email*`, which use modern CSS (flex, custom properties, `display:contents`) that email clients strip. Use these when the email will actually be **sent**; use the DC versions for in-product previews / design refs.
|
|
4
4
|
|
|
5
|
-
## What's here —
|
|
5
|
+
## What's here — 3 exemplars + 4 materialized copy-swaps
|
|
6
|
+
|
|
7
|
+
**Exemplars** (the structural references — every DC email shape maps to one of these):
|
|
8
|
+
|
|
6
9
|
- **`email-transactional.html`** — header · message · CTA · footer (the common shape). Bilingual EN·VN.
|
|
7
10
|
|
|
8
11
|
- **`email-newsletter.html`** — header · lead · stacked story cards · CTA (multi-block marketing).
|
|
9
12
|
|
|
10
13
|
- **`email-dunning.html`** — header · message · amount-due box · CTA (transactional with a data panel + gentle urgency).
|
|
11
14
|
|
|
12
|
-
|
|
15
|
+
**Copy-swaps** (same table skeleton as the nearest exemplar, new copy — already materialized on disk):
|
|
16
|
+
|
|
17
|
+
- **`email-announcement.html`** — welcome / team intro (transactional skeleton).
|
|
18
|
+
|
|
19
|
+
- **`email-investor.html`** — investor update (transactional skeleton).
|
|
20
|
+
|
|
21
|
+
- **`email-launch.html`** — product/pack launch (transactional skeleton).
|
|
22
|
+
|
|
23
|
+
- **`email-status.html`** — weekly status (transactional skeleton).
|
|
24
|
+
|
|
25
|
+
Between the three exemplars these cover the structural variety of the whole DC email set; the four copy-swaps prove the pattern by shipping real send-ready variants.
|
|
13
26
|
|
|
14
|
-
## The pattern (follow it for
|
|
27
|
+
## The pattern (follow it for further copy-swaps)
|
|
15
28
|
- Nested `<table role="presentation" cellpadding="0" cellspacing="0" border="0">`; one centered 600px wrapper; single-column stacked rows. No flex/grid/position.
|
|
16
29
|
|
|
17
30
|
- **Every** style inlined on its element. The `<head><style>` carries only media queries (mobile + `prefers-color-scheme: dark`) — clients that drop it still get a correct email from the inline styles.
|
|
@@ -25,4 +38,4 @@ Between them these cover the structural variety of the whole DC email set. The r
|
|
|
25
38
|
- Before sending: replace the logo wordmark with a **hosted** image URL if you want the mark (project images won't exist for recipients), and point the `href`s at real URLs.
|
|
26
39
|
|
|
27
40
|
## Applies to
|
|
28
|
-
The DC emails that have a send path convert to the exemplar closest in structure
|
|
41
|
+
The DC emails that have a send path convert to the exemplar closest in structure — the three exemplar files are the references; the four copy-swaps above are the worked examples. Generate further copy-swaps on request.
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
</head>
|
|
28
28
|
<body class="bodybg" style="margin:0;padding:0;background:#efe6d8;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;">
|
|
29
29
|
<!-- Preheader (previews next to the subject; hidden in the body) -->
|
|
30
|
-
<div style="display:none;max-height:0;overflow:hidden;mso-hide:all;font-size:1px;line-height:1px;color:#efe6d8;opacity:0;">Theme × Element × Language across the system.
|
|
30
|
+
<div style="display:none;max-height:0;overflow:hidden;mso-hide:all;font-size:1px;line-height:1px;color:#efe6d8;opacity:0;">Theme × Element × Language × Style across the system. Bốn trục Theme × Element × Language × Style trên toàn hệ thống.</div>
|
|
31
31
|
<table role="presentation" cellpadding="0" cellspacing="0" border="0" width="100%" class="bodybg" style="background:#efe6d8;">
|
|
32
32
|
<tr>
|
|
33
33
|
<td align="center" style="padding:32px 16px;">
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
<td class="px card" bgcolor="#ffffff" style="background:#ffffff;padding:34px 32px 8px;">
|
|
46
46
|
<p style="margin:0 0 8px;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;color:#6E3B0E;">Just shipped</p>
|
|
47
47
|
<h1 class="h1 ink" style="margin:0 0 14px;font-family:Arial,Helvetica,sans-serif;font-size:27px;line-height:1.2;font-weight:bold;color:#45210E;">15 element packs, verified.</h1>
|
|
48
|
-
<p class="ink" style="margin:0 0 16px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;color:#3d2c1e;">Theme × Element × Language across the whole system. The same components re-skin with no code change.</p>
|
|
48
|
+
<p class="ink" style="margin:0 0 16px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;color:#3d2c1e;">Theme × Element × Language × Style across the whole system. The same components re-skin with no code change.</p>
|
|
49
49
|
<p class="muted" style="margin:0 0 26px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;color:#6e5a4c;">See them live in the playground, then pick your product’s pack.</p>
|
|
50
50
|
<!-- Bulletproof button -->
|
|
51
51
|
<table role="presentation" cellpadding="0" cellspacing="0" border="0"><tr>
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
<td class="px card" lang="vi" bgcolor="#ffffff" style="background:#ffffff;padding:22px 32px 8px;">
|
|
64
64
|
<p style="margin:0 0 8px;font-family:Arial,Helvetica,sans-serif;font-size:12px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;color:#6E3B0E;">Vừa ra mắt</p>
|
|
65
65
|
<h1 class="h1 ink" style="margin:0 0 14px;font-family:Arial,Helvetica,sans-serif;font-size:27px;line-height:1.25;font-weight:bold;color:#45210E;">15 element pack, đã kiểm định.</h1>
|
|
66
|
-
<p class="ink" style="margin:0 0 16px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;color:#3d2c1e;">Theme × Element × Language trên toàn hệ thống. Cùng một component đổi da theo trục mà không cần sửa code.</p>
|
|
66
|
+
<p class="ink" style="margin:0 0 16px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;color:#3d2c1e;">Theme × Element × Language × Style trên toàn hệ thống. Cùng một component đổi da theo trục mà không cần sửa code.</p>
|
|
67
67
|
<p class="muted" style="margin:0 0 26px;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65;color:#6e5a4c;">Xem trực tiếp trong playground, rồi chọn pack cho sản phẩm của bạn.</p>
|
|
68
68
|
<table role="presentation" cellpadding="0" cellspacing="0" border="0"><tr>
|
|
69
69
|
<td align="center" bgcolor="#F4BA17" style="border-radius:26px;">
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
<tr><td class="px" style="padding:12px 32px 4px;">
|
|
42
42
|
<table role="presentation" cellpadding="0" cellspacing="0" border="0" width="100%" class="raise" bgcolor="#fbf4e9" style="background:#fbf4e9;border-radius:12px;"><tr><td style="padding:16px 18px;">
|
|
43
43
|
<p style="margin:0 0 4px;font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;color:#6E3B0E;">15 element packs</p>
|
|
44
|
-
<p class="ink" style="margin:0;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.55;color:#3d2c1e;">Theme × Element × Language — verified across the whole set.</p>
|
|
44
|
+
<p class="ink" style="margin:0;font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.55;color:#3d2c1e;">Theme × Element × Language × Style — verified across the whole set.</p>
|
|
45
45
|
</td></tr></table>
|
|
46
46
|
</td></tr>
|
|
47
47
|
<!-- CTA -->
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schemaVersion": "2.0",
|
|
3
|
+
"template": "legal-msa",
|
|
4
|
+
"slots": [
|
|
5
|
+
{
|
|
6
|
+
"id": "hdrLabel",
|
|
7
|
+
"type": "text",
|
|
8
|
+
"label": "Header document label",
|
|
9
|
+
"maxLength": 28,
|
|
10
|
+
"i18n": {
|
|
11
|
+
"en": "Header document label",
|
|
12
|
+
"vi": "Nhãn tài liệu phần đầu"
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
]
|
|
16
|
+
}
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -25,7 +25,6 @@
|
|
|
25
25
|
{ "id": "navContact", "type": "text", "label": "Nav · Contact", "maxLength": 24 },
|
|
26
26
|
{ "id": "promptSend", "type": "text", "label": "Hero prompt send label", "maxLength": 24 },
|
|
27
27
|
{ "id": "genieLabel", "type": "text", "label": "Chat launcher label", "maxLength": 24 },
|
|
28
|
-
{ "id": "closeChat", "type": "text", "label": "Chat close label", "maxLength": 16 },
|
|
29
28
|
{ "id": "chatHello", "type": "richtext", "label": "Chat greeting", "maxLength": 160 },
|
|
30
29
|
{ "id": "chatPh", "type": "text", "label": "Chat input placeholder", "maxLength": 60 },
|
|
31
30
|
{ "id": "chatSend", "type": "text", "label": "Chat send label", "maxLength": 24 }
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -24,8 +24,9 @@
|
|
|
24
24
|
<div class="grp" id="theme"><span class="k">Theme</span></div>
|
|
25
25
|
<div class="grp" id="element"><span class="k">Element</span></div>
|
|
26
26
|
<div class="grp" id="language"><span class="k">Language</span></div>
|
|
27
|
+
<div class="grp" id="style"><span class="k">Style</span></div>
|
|
27
28
|
</div>
|
|
28
|
-
<div class="stage"><div class="gal" id="stage" data-theme="" data-cs-element="tho" data-cs-variant="" lang="en">
|
|
29
|
+
<div class="stage"><div class="gal" id="stage" data-theme="" data-cs-element="tho" data-cs-variant="" data-cs-style="liquid-glass" lang="en">
|
|
29
30
|
<div class="row"><span class="lbl">Accent swatches (live)</span>
|
|
30
31
|
<div class="swatches">
|
|
31
32
|
<div class="sw" style="background:var(--cs-accent)"></div>
|
|
@@ -49,14 +50,15 @@
|
|
|
49
50
|
<div class="panel" style="flex:1;min-width:220px"><div style="font-weight:700;margin-bottom:6px">Wish card</div><div class="cs-progress" style="margin:6px 0"><div class="cs-progress__fill" style="inline-size:64%"></div></div><span class="cs-badge cs-badge--success"><span class="cs-badge__dot"></span>On track</span></div>
|
|
50
51
|
</div>
|
|
51
52
|
<div class="cs-tabs"><button class="cs-tab" aria-selected="true">Overview</button><button class="cs-tab">Projects</button><button class="cs-tab">Team</button></div>
|
|
52
|
-
<div class="cs-alert cs-alert--info"><div class="cs-alert__icon">ⓘ</div><div><p class="cs-alert__title">Theme × Element × Language are independent</p><p class="cs-alert__body">Switch any axis above — the same markup re-skins with zero code changes.</p></div></div>
|
|
53
|
+
<div class="cs-alert cs-alert--info"><div class="cs-alert__icon">ⓘ</div><div><p class="cs-alert__title">Theme × Element × Language × Style are independent</p><p class="cs-alert__body">Switch any axis above — the same markup re-skins with zero code changes.</p></div></div>
|
|
53
54
|
</div></div>
|
|
54
55
|
<script>
|
|
55
56
|
const stage=document.getElementById('stage');
|
|
56
57
|
const AX={
|
|
57
|
-
theme:[["Light",""],["Dark","dark"]],
|
|
58
|
+
theme:[["Light",""],["Dark","dark"],["System","system"]],
|
|
58
59
|
element:[["Thổ","tho|"],["Thổ·clay","tho|clay"],["Thổ·sand","tho|sand"],["Hỏa","hoa|"],["Hỏa·lava","hoa|lava"],["Hỏa·plasma","hoa|plasma"],["Thủy","thuy|"],["Thủy·ocean","thuy|ocean"],["Thủy·mist","thuy|mist"],["Mộc","moc|"],["Mộc·bamboo","moc|bamboo"],["Mộc·forest","moc|forest"],["Kim","kim|"],["Kim·steel","kim|steel"],["Kim·titanium","kim|titanium"]],
|
|
59
|
-
language:[["English","en"],["Tiếng Việt","vi"]]
|
|
60
|
+
language:[["English","en"],["Tiếng Việt","vi"]],
|
|
61
|
+
style:[["Liquid glass","liquid-glass"]]};
|
|
60
62
|
function build(axis, apply){
|
|
61
63
|
const box=document.getElementById(axis);
|
|
62
64
|
AX[axis].forEach(([label,val],i)=>{
|
|
@@ -69,10 +71,12 @@ function build(axis, apply){
|
|
|
69
71
|
build('theme', v=>{ if(v) stage.setAttribute('data-theme',v); else stage.removeAttribute('data-theme'); });
|
|
70
72
|
build('element', v=>{ const [el,va]=v.split('|'); stage.setAttribute('data-cs-element',el); stage.setAttribute('data-cs-variant',va||''); });
|
|
71
73
|
build('language', v=>{ stage.setAttribute('lang',v||'en'); document.documentElement.setAttribute('lang',v||'en'); });
|
|
74
|
+
build('style', v=>{ if(v) stage.setAttribute('data-cs-style',v); else stage.removeAttribute('data-cs-style'); });
|
|
72
75
|
window.addEventListener('message',function(ev){
|
|
73
76
|
const d=ev.data||{}; if(d.type!=='__cs_axes') return;
|
|
74
77
|
if(d.theme!==undefined){ if(d.theme) stage.setAttribute('data-theme',d.theme); else stage.removeAttribute('data-theme'); }
|
|
75
78
|
if(d.element!==undefined){ if(d.element) stage.setAttribute('data-cs-element',d.element); else stage.removeAttribute('data-cs-element'); if(d.variant) stage.setAttribute('data-cs-variant',d.variant); else stage.removeAttribute('data-cs-variant'); }
|
|
79
|
+
if(d.style!==undefined){ if(d.style) stage.setAttribute('data-cs-style',d.style); else stage.removeAttribute('data-cs-style'); }
|
|
76
80
|
if(d.lang){ stage.setAttribute('lang',d.lang); document.documentElement.setAttribute('lang',d.lang); }
|
|
77
81
|
});
|
|
78
82
|
</script>
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|
|
@@ -1070,10 +1070,10 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var REACT_URL = "https://unpkg.com/react@
|
|
1074
|
-
var REACT_SRI = "sha384
|
|
1075
|
-
var REACT_DOM_URL = "https://unpkg.com/react
|
|
1076
|
-
var REACT_DOM_SRI = "sha384-
|
|
1073
|
+
var REACT_URL = "https://unpkg.com/umd-react@19.2.8/dist/react.production.min.js";
|
|
1074
|
+
var REACT_SRI = "sha384-/nh8CKeV7Pk42Gpda6L4DM1JtZ2bwPOi+eh9O7+a1Y22UkGs8+mw3aW1shQ9FV30";
|
|
1075
|
+
var REACT_DOM_URL = "https://unpkg.com/umd-react@19.2.8/dist/react-dom.production.min.js";
|
|
1076
|
+
var REACT_DOM_SRI = "sha384-rhLCB72qrpcezgY2QW0panvW9IeO32m94nvuDVRD/iEGHXoUbjtijL6Xi/Z5/mzu";
|
|
1077
1077
|
var BABEL_URL = "https://unpkg.com/@babel/standalone@7.29.0/babel.min.js";
|
|
1078
1078
|
var BABEL_SRI = "sha384-m08KidiNqLdpJqLq95G/LEi8Qvjl/xUYll3QILypMoQ65QorJ9Lvtp2RXYGBFj1y";
|
|
1079
1079
|
function cdnScriptFor(url, sri) {
|