@cyberskill/design 1.1.1 → 1.2.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 +25 -3
- package/README.md +3 -3
- package/SKILL.md +3 -3
- package/VERSION +1 -1
- package/_ds_bundle.js +819 -416
- package/_ds_manifest.json +1 -1
- package/_esm/cs.mjs +18 -4
- package/_esm/react.d.ts +2 -0
- package/_esm/react.mjs +1 -0
- package/base/a11y.css +18 -0
- package/base/ai.css +2 -2
- package/base/collections.css +8 -3
- package/base/components.css +11 -2
- package/base/controls.css +61 -48
- package/base/data.css +3 -3
- package/base/feedback.css +5 -0
- package/base/forms.css +9 -3
- package/base/glass.css +6 -0
- package/base/navigation.css +8 -2
- package/base/reset.css +1 -1
- package/base/responsive.css +25 -0
- package/base/shell.css +7 -1
- package/components/_i18n/i18n.js +13 -1
- package/components/_i18n/strings.js +52 -3
- package/components/ai/ConfidenceMeter.jsx +8 -6
- package/components/data/Watermark.jsx +11 -3
- package/components/datatable/DataGrid.jsx +10 -1
- package/components/dialog/Dialog.jsx +13 -45
- package/components/feedback/ProgressBar.jsx +4 -2
- package/components/forms/Cascader.jsx +69 -6
- package/components/forms/Editor.jsx +37 -2
- package/components/forms/FileUpload.jsx +22 -8
- package/components/forms/Switch.jsx +16 -2
- package/components/forms/TimePicker.jsx +3 -1
- package/components/icon/Icon.jsx +1 -0
- package/components/navigation/CommandPalette.jsx +22 -7
- package/components/navigation/Toolbar.jsx +2 -1
- package/components/overlays/AlertDialog.jsx +19 -49
- package/components/overlays/Drawer.jsx +24 -20
- package/components/overlays/OverlayManager.d.ts +40 -0
- package/components/overlays/OverlayManager.jsx +214 -0
- package/components/overlays/OverlayManager.prompt.md +12 -0
- package/components/overlays/Tour.jsx +14 -7
- package/dist/styles.min.css +2004 -0
- package/docs/benchmark-rubric.md +1 -1
- package/docs/ci-cd.md +3 -1
- package/docs/consuming.md +6 -6
- package/docs/conventions.md +4 -4
- package/docs/decisions/container-query-migration.md +18 -0
- package/docs/decisions/overlay-manager-design.md +101 -0
- package/docs/decisions.md +5 -5
- package/docs/design-styles.md +1 -1
- package/docs/plans/cyberskill-design-system-audit-and-12-month-evolution-plan.md +1490 -0
- package/docs/quality-gates.md +20 -8
- package/docs/release-notes.md +2 -2
- package/docs/status/data/status-feed.json +1 -1
- package/docs/status/index.html +9 -5
- package/docs/status/status-legacy.html +12 -7
- package/docs/sync.md +1 -1
- package/docs/tasks/_state/commit-links.yaml +14 -0
- package/docs/vi/benchmark-rubric.md +1 -1
- package/docs/vi/ci-cd.md +3 -1
- package/docs/vi/consuming.md +6 -6
- package/docs/vi/conventions.md +2 -2
- package/docs/vi/decisions.md +4 -4
- package/docs/vi/quality-gates.md +21 -9
- package/docs/vi/release-notes.md +2 -2
- package/docs/vi/sync.md +1 -1
- package/guidelines/atomic-view.html +11 -7
- package/llms.txt +2 -2
- package/package.json +14 -6
- package/templates/_ds-base.canonical.js +55 -0
- package/templates/ai-cluster-demo.html +2 -2
- package/templates/app-shell/AppShell.dc.html +5 -3
- package/templates/app-shell/ds-base.js +33 -1
- package/templates/app-shell/support.js +13 -20
- package/templates/article/Article.dc.html +5 -1
- package/templates/article/ds-base.js +33 -1
- package/templates/article/support.js +13 -20
- package/templates/auth/Auth.dc.html +10 -5
- package/templates/auth/content-schema.json +12 -0
- package/templates/auth/ds-base.js +33 -1
- package/templates/auth/support.js +13 -20
- package/templates/bod-deck/BodDeck.dc.html +11 -10
- package/templates/bod-deck/ds-base.js +33 -1
- package/templates/bod-deck/support.js +13 -20
- package/templates/bod-investor-update/BodInvestorUpdate.dc.html +4 -3
- package/templates/bod-investor-update/ds-base.js +33 -1
- package/templates/bod-investor-update/support.js +13 -20
- package/templates/bod-memo/BodMemo.dc.html +6 -5
- package/templates/bod-memo/ds-base.js +33 -1
- package/templates/bod-memo/support.js +13 -20
- package/templates/bod-minutes/BodMinutes.dc.html +2 -1
- package/templates/bod-minutes/ds-base.js +33 -1
- package/templates/bod-minutes/support.js +13 -20
- package/templates/bod-report/BodReport.dc.html +3 -2
- package/templates/bod-report/ds-base.js +33 -1
- package/templates/bod-report/support.js +13 -20
- package/templates/bod-resolution/BodResolution.dc.html +5 -4
- package/templates/bod-resolution/ds-base.js +33 -1
- package/templates/bod-resolution/support.js +13 -20
- package/templates/culture-event-invite/CultureEventInvite.dc.html +3 -2
- package/templates/culture-event-invite/ds-base.js +33 -1
- package/templates/culture-event-invite/support.js +13 -20
- package/templates/dashboard/Dashboard.dc.html +7 -3
- package/templates/dashboard/ds-base.js +33 -1
- package/templates/dashboard/support.js +13 -20
- package/templates/delivery-change-note/DeliveryChangeNote.dc.html +2 -1
- package/templates/delivery-change-note/ds-base.js +33 -1
- package/templates/delivery-change-note/support.js +13 -20
- package/templates/delivery-kickoff/DeliveryKickoff.dc.html +3 -2
- package/templates/delivery-kickoff/ds-base.js +33 -1
- package/templates/delivery-kickoff/support.js +13 -20
- package/templates/delivery-qbr-deck/DeliveryQbrDeck.dc.html +6 -5
- package/templates/delivery-qbr-deck/ds-base.js +33 -1
- package/templates/delivery-qbr-deck/support.js +13 -20
- package/templates/delivery-runbook/DeliveryRunbook.dc.html +3 -2
- package/templates/delivery-runbook/ds-base.js +33 -1
- package/templates/delivery-runbook/support.js +13 -20
- package/templates/delivery-status-email/DeliveryStatusEmail.dc.html +3 -2
- package/templates/delivery-status-email/ds-base.js +33 -1
- package/templates/delivery-status-email/support.js +13 -20
- package/templates/doc-style-guide/DocStyleGuide.dc.html +67 -64
- package/templates/doc-style-guide/ds-base.js +33 -1
- package/templates/doc-style-guide/support.js +13 -20
- package/templates/doc-suite-index/DocSuiteIndex.dc.html +46 -45
- package/templates/doc-suite-index/ds-base.js +33 -1
- package/templates/doc-suite-index/support.js +13 -20
- package/templates/doc-templates/DocTemplates.dc.html +42 -41
- package/templates/doc-templates/ds-base.js +33 -1
- package/templates/doc-templates/support.js +13 -20
- package/templates/email/Email.dc.html +3 -2
- package/templates/email/ds-base.js +33 -1
- package/templates/email/support.js +13 -20
- package/templates/finance-dunning-email/FinanceDunningEmail.dc.html +4 -3
- package/templates/finance-dunning-email/ds-base.js +33 -1
- package/templates/finance-dunning-email/support.js +13 -20
- package/templates/finance-expense-report/FinanceExpenseReport.dc.html +4 -3
- package/templates/finance-expense-report/ds-base.js +33 -1
- package/templates/finance-expense-report/support.js +13 -20
- package/templates/finance-invoice/FinanceInvoice.dc.html +4 -3
- package/templates/finance-invoice/ds-base.js +33 -1
- package/templates/finance-invoice/support.js +13 -20
- package/templates/finance-quote/FinanceQuote.dc.html +4 -3
- package/templates/finance-quote/ds-base.js +33 -1
- package/templates/finance-quote/support.js +13 -20
- package/templates/hr-announcement/HrAnnouncement.dc.html +5 -4
- package/templates/hr-announcement/ds-base.js +33 -1
- package/templates/hr-announcement/support.js +13 -20
- package/templates/hr-interview-kit/HrInterviewKit.dc.html +4 -3
- package/templates/hr-interview-kit/ds-base.js +33 -1
- package/templates/hr-interview-kit/support.js +13 -20
- package/templates/hr-offboarding/HrOffboarding.dc.html +2 -1
- package/templates/hr-offboarding/ds-base.js +33 -1
- package/templates/hr-offboarding/support.js +13 -20
- package/templates/hr-performance-review/HrPerformanceReview.dc.html +2 -1
- package/templates/hr-performance-review/ds-base.js +33 -1
- package/templates/hr-performance-review/support.js +13 -20
- package/templates/hr-pip/HrPip.dc.html +2 -1
- package/templates/hr-pip/ds-base.js +33 -1
- package/templates/hr-pip/support.js +13 -20
- package/templates/kitchen-sink.html +9 -4
- package/templates/legal-msa/LegalMsa.dc.html +2 -1
- package/templates/legal-msa/ds-base.js +33 -1
- package/templates/legal-msa/support.js +13 -20
- package/templates/legal-sow/LegalSow.dc.html +2 -1
- package/templates/legal-sow/ds-base.js +33 -1
- package/templates/legal-sow/support.js +13 -20
- package/templates/marketing-campaign-brief/MarketingCampaignBrief.dc.html +3 -2
- package/templates/marketing-campaign-brief/ds-base.js +33 -1
- package/templates/marketing-campaign-brief/support.js +13 -20
- package/templates/marketing-case-study/MarketingCaseStudy.dc.html +5 -4
- package/templates/marketing-case-study/ds-base.js +33 -1
- package/templates/marketing-case-study/support.js +13 -20
- package/templates/marketing-launch/MarketingLaunch.dc.html +6 -5
- package/templates/marketing-launch/ds-base.js +33 -1
- package/templates/marketing-launch/support.js +13 -20
- package/templates/marketing-newsletter/MarketingNewsletter.dc.html +13 -12
- package/templates/marketing-newsletter/ds-base.js +33 -1
- package/templates/marketing-newsletter/support.js +13 -20
- package/templates/marketing-page/MarketingPage.dc.html +17 -12
- package/templates/marketing-page/ds-base.js +33 -1
- package/templates/marketing-page/support.js +13 -20
- package/templates/marketing-press-release/MarketingPressRelease.dc.html +2 -1
- package/templates/marketing-press-release/ds-base.js +33 -1
- package/templates/marketing-press-release/support.js +13 -20
- package/templates/marketing-social-kit/MarketingSocialKit.dc.html +5 -4
- package/templates/marketing-social-kit/ds-base.js +33 -1
- package/templates/marketing-social-kit/support.js +13 -20
- package/templates/sales-one-pager/SalesOnePager.dc.html +5 -4
- package/templates/sales-one-pager/ds-base.js +33 -1
- package/templates/sales-one-pager/support.js +13 -20
- package/templates/sales-proposal-deck/SalesProposalDeck.dc.html +7 -6
- package/templates/sales-proposal-deck/ds-base.js +33 -1
- package/templates/sales-proposal-deck/support.js +13 -20
- package/templates/settings/Settings.dc.html +5 -1
- package/templates/settings/ds-base.js +33 -1
- package/templates/settings/support.js +13 -20
- package/templates/slide-deck/SlideDeck.dc.html +5 -4
- package/templates/slide-deck/ds-base.js +33 -1
- package/templates/slide-deck/support.js +13 -20
- package/templates/team-meeting-agenda/TeamMeetingAgenda.dc.html +2 -1
- package/templates/team-meeting-agenda/ds-base.js +33 -1
- package/templates/team-meeting-agenda/support.js +13 -20
- package/templates/tech-incident-report/TechIncidentReport.dc.html +3 -2
- package/templates/tech-incident-report/ds-base.js +33 -1
- package/templates/tech-incident-report/support.js +13 -20
- package/templates/tech-release-notes/TechReleaseNotes.dc.html +6 -5
- package/templates/tech-release-notes/ds-base.js +33 -1
- package/templates/tech-release-notes/support.js +13 -20
- package/templates/tech-retro/TechRetro.dc.html +4 -3
- package/templates/tech-retro/ds-base.js +33 -1
- package/templates/tech-retro/support.js +13 -20
- package/templates/tech-rfc/TechRfc.dc.html +3 -2
- package/templates/tech-rfc/ds-base.js +33 -1
- package/templates/tech-rfc/support.js +13 -20
- package/templates/vn-appointment-transfer/VnAppointmentTransfer.dc.html +36 -35
- package/templates/vn-appointment-transfer/ds-base.js +33 -1
- package/templates/vn-appointment-transfer/support.js +13 -20
- package/templates/vn-certificate-of-employment/VnCertificateOfEmployment.dc.html +27 -26
- package/templates/vn-certificate-of-employment/ds-base.js +33 -1
- package/templates/vn-certificate-of-employment/support.js +13 -20
- package/templates/vn-code-of-conduct/VnCodeOfConduct.dc.html +44 -43
- package/templates/vn-code-of-conduct/ds-base.js +33 -1
- package/templates/vn-code-of-conduct/support.js +13 -20
- package/templates/vn-compensation-regulation/VnCompensationRegulation.dc.html +53 -52
- package/templates/vn-compensation-regulation/ds-base.js +33 -1
- package/templates/vn-compensation-regulation/support.js +13 -20
- package/templates/vn-contract-amendment/VnContractAmendment.dc.html +41 -40
- package/templates/vn-contract-amendment/ds-base.js +33 -1
- package/templates/vn-contract-amendment/support.js +13 -20
- package/templates/vn-contractor-agreement/VnContractorAgreement.dc.html +50 -49
- package/templates/vn-contractor-agreement/ds-base.js +33 -1
- package/templates/vn-contractor-agreement/support.js +13 -20
- package/templates/vn-data-protection-policy/VnDataProtectionPolicy.dc.html +54 -53
- package/templates/vn-data-protection-policy/ds-base.js +33 -1
- package/templates/vn-data-protection-policy/support.js +13 -20
- package/templates/vn-disciplinary-case-file/VnDisciplinaryCaseFile.dc.html +72 -71
- package/templates/vn-disciplinary-case-file/ds-base.js +33 -1
- package/templates/vn-disciplinary-case-file/support.js +13 -20
- package/templates/vn-disciplinary-schedule/VnDisciplinarySchedule.dc.html +21 -20
- package/templates/vn-disciplinary-schedule/ds-base.js +33 -1
- package/templates/vn-disciplinary-schedule/support.js +13 -20
- package/templates/vn-employee-request/VnEmployeeRequest.dc.html +54 -53
- package/templates/vn-employee-request/ds-base.js +33 -1
- package/templates/vn-employee-request/support.js +13 -20
- package/templates/vn-exit-handover/VnExitHandover.dc.html +122 -121
- package/templates/vn-exit-handover/ds-base.js +33 -1
- package/templates/vn-exit-handover/support.js +13 -20
- package/templates/vn-foreign-employee-pack/VnForeignEmployeePack.dc.html +31 -30
- package/templates/vn-foreign-employee-pack/ds-base.js +33 -1
- package/templates/vn-foreign-employee-pack/support.js +13 -20
- package/templates/vn-grassroots-democracy/VnGrassrootsDemocracy.dc.html +54 -53
- package/templates/vn-grassroots-democracy/ds-base.js +33 -1
- package/templates/vn-grassroots-democracy/support.js +13 -20
- package/templates/vn-infosec-policy/VnInfosecPolicy.dc.html +50 -49
- package/templates/vn-infosec-policy/ds-base.js +33 -1
- package/templates/vn-infosec-policy/support.js +13 -20
- package/templates/vn-internal-labor-regulations/VnInternalLaborRegulations.dc.html +84 -83
- package/templates/vn-internal-labor-regulations/ds-base.js +33 -1
- package/templates/vn-internal-labor-regulations/support.js +13 -20
- package/templates/vn-internship-agreement/VnInternshipAgreement.dc.html +44 -43
- package/templates/vn-internship-agreement/ds-base.js +33 -1
- package/templates/vn-internship-agreement/support.js +13 -20
- package/templates/vn-job-description/VnJobDescription.dc.html +28 -27
- package/templates/vn-job-description/ds-base.js +33 -1
- package/templates/vn-job-description/support.js +13 -20
- package/templates/vn-labor-contract/VnLaborContract.dc.html +109 -108
- package/templates/vn-labor-contract/ds-base.js +33 -1
- package/templates/vn-labor-contract/support.js +13 -20
- package/templates/vn-labour-management-book/VnLabourManagementBook.dc.html +32 -31
- package/templates/vn-labour-management-book/ds-base.js +33 -1
- package/templates/vn-labour-management-book/support.js +13 -20
- package/templates/vn-mutual-nda/VnMutualNda.dc.html +45 -44
- package/templates/vn-mutual-nda/ds-base.js +33 -1
- package/templates/vn-mutual-nda/support.js +13 -20
- package/templates/vn-ndnca-ip/VnNdncaIp.dc.html +73 -72
- package/templates/vn-ndnca-ip/ds-base.js +33 -1
- package/templates/vn-ndnca-ip/support.js +13 -20
- package/templates/vn-offer-letter/VnOfferLetter.dc.html +32 -31
- package/templates/vn-offer-letter/ds-base.js +33 -1
- package/templates/vn-offer-letter/support.js +13 -20
- package/templates/vn-onboarding-checklist/VnOnboardingChecklist.dc.html +16 -15
- package/templates/vn-onboarding-checklist/ds-base.js +33 -1
- package/templates/vn-onboarding-checklist/support.js +13 -20
- package/templates/vn-pdpl-consent/VnPdplConsent.dc.html +43 -42
- package/templates/vn-pdpl-consent/ds-base.js +33 -1
- package/templates/vn-pdpl-consent/support.js +13 -20
- package/templates/vn-performance-evaluation-regulation/VnPerformanceEvaluationRegulation.dc.html +65 -64
- package/templates/vn-performance-evaluation-regulation/ds-base.js +33 -1
- package/templates/vn-performance-evaluation-regulation/support.js +13 -20
- package/templates/vn-performance-review-form/VnPerformanceReviewForm.dc.html +49 -48
- package/templates/vn-performance-review-form/ds-base.js +33 -1
- package/templates/vn-performance-review-form/support.js +13 -20
- package/templates/vn-phantom-stock/VnPhantomStock.dc.html +41 -40
- package/templates/vn-phantom-stock/ds-base.js +33 -1
- package/templates/vn-phantom-stock/support.js +13 -20
- package/templates/vn-probation-contract/VnProbationContract.dc.html +56 -55
- package/templates/vn-probation-contract/ds-base.js +33 -1
- package/templates/vn-probation-contract/support.js +13 -20
- package/templates/vn-receipt-acknowledgement/VnReceiptAcknowledgement.dc.html +28 -27
- package/templates/vn-receipt-acknowledgement/ds-base.js +33 -1
- package/templates/vn-receipt-acknowledgement/support.js +13 -20
- package/templates/vn-remote-work-policy/VnRemoteWorkPolicy.dc.html +44 -43
- package/templates/vn-remote-work-policy/ds-base.js +33 -1
- package/templates/vn-remote-work-policy/support.js +13 -20
- package/templates/vn-resignation-letter/VnResignationLetter.dc.html +20 -19
- package/templates/vn-resignation-letter/ds-base.js +33 -1
- package/templates/vn-resignation-letter/support.js +13 -20
- package/templates/vn-salary-scale/VnSalaryScale.dc.html +39 -38
- package/templates/vn-salary-scale/ds-base.js +33 -1
- package/templates/vn-salary-scale/support.js +13 -20
- package/templates/vn-sow-appendix/VnSowAppendix.dc.html +21 -20
- package/templates/vn-sow-appendix/ds-base.js +33 -1
- package/templates/vn-sow-appendix/support.js +13 -20
- package/templates/vn-termination-decision/VnTerminationDecision.dc.html +25 -24
- package/templates/vn-termination-decision/ds-base.js +33 -1
- package/templates/vn-termination-decision/support.js +13 -20
- package/templates/vn-total-rewards-appendix/VnTotalRewardsAppendix.dc.html +63 -62
- package/templates/vn-total-rewards-appendix/ds-base.js +33 -1
- package/templates/vn-total-rewards-appendix/support.js +13 -20
- package/templates/vn-training-commitment/VnTrainingCommitment.dc.html +39 -38
- package/templates/vn-training-commitment/ds-base.js +33 -1
- package/templates/vn-training-commitment/support.js +13 -20
- package/templates/vn-travel-expense-policy/VnTravelExpensePolicy.dc.html +50 -49
- package/templates/vn-travel-expense-policy/ds-base.js +33 -1
- package/templates/vn-travel-expense-policy/support.js +13 -20
- package/tokens/colors.css +19 -1
- package/tokens/component-tokens.css +1 -0
- package/tokens/elements.css +35 -2
- package/tokens/elevation.css +8 -2
- package/tokens/native/CSTokens.kt +35 -1
- package/tokens/native/CSTokens.swift +35 -1
- package/tokens/native/cs_tokens.dart +35 -1
- package/tokens/provenance.json +12 -12
- package/tokens/spacing.css +2 -0
- package/tokens/tokens.dtcg.json +111 -3
- package/tokens/tokens.js +46 -6
- package/tokens/tokens.json +45 -5
- package/tokens/typography.css +2 -0
- package/ui_kits/deck/index.html +4 -0
- package/ui_kits/status-hub/StatusHub.jsx +30 -4
- package/ui_kits/status-hub/index.html +3 -3
- package/ui_kits/status-hub/login.html +4 -0
- package/ui_kits/status-hub/project.html +4 -0
- package/ui_kits/status-hub/settings.html +35 -13
- package/ui_kits/status-hub/status.css +5 -1
- package/ui_kits/website/Website.jsx +25 -3
- package/ui_kits/website/careers.html +4 -0
- package/ui_kits/website/chat.html +5 -3
- package/ui_kits/website/index.html +3 -3
- package/ui_kits/website/site.css +2 -2
- package/ui_kits/website/work.html +4 -0
|
@@ -1070,16 +1070,15 @@
|
|
|
1070
1070
|
}
|
|
1071
1071
|
|
|
1072
1072
|
// src/cdn.ts
|
|
1073
|
-
var
|
|
1074
|
-
var
|
|
1075
|
-
var
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
function cdnScriptFor(url, sri) {
|
|
1073
|
+
var REACT_LOCAL = "../../_vendor/react/react.production.min.js";
|
|
1074
|
+
var REACT_DOM_LOCAL = "../../_vendor/react/react-dom.production.min.js";
|
|
1075
|
+
var BABEL_LOCAL = "../../_vendor/babel/babel.min.js";
|
|
1076
|
+
// Product surfaces are offline-first (UX-026 / D4): no third-party script origins.
|
|
1077
|
+
// Host editors may still remap via window.__resources[localPath].
|
|
1078
|
+
function localScriptFor(path) {
|
|
1080
1079
|
const res = window.__resources;
|
|
1081
|
-
const v = res ? res[
|
|
1082
|
-
return typeof v === "string" && v ?
|
|
1080
|
+
const v = res ? res[path] : void 0;
|
|
1081
|
+
return typeof v === "string" && v ? v : path;
|
|
1083
1082
|
}
|
|
1084
1083
|
|
|
1085
1084
|
// src/external.ts
|
|
@@ -1106,16 +1105,12 @@
|
|
|
1106
1105
|
function ensureBabel() {
|
|
1107
1106
|
if (window.Babel) return Promise.resolve();
|
|
1108
1107
|
if (babelLoading) return babelLoading;
|
|
1109
|
-
const
|
|
1108
|
+
const src = localScriptFor(BABEL_LOCAL);
|
|
1110
1109
|
babelLoading = new Promise((res, rej) => {
|
|
1111
1110
|
const s = document.createElement("script");
|
|
1112
|
-
s.src =
|
|
1113
|
-
if (babel.integrity) {
|
|
1114
|
-
s.integrity = babel.integrity;
|
|
1115
|
-
s.crossOrigin = "anonymous";
|
|
1116
|
-
}
|
|
1111
|
+
s.src = src;
|
|
1117
1112
|
s.onload = () => res();
|
|
1118
|
-
s.onerror = rej;
|
|
1113
|
+
s.onerror = () => rej(new Error("failed to load local Babel: " + src));
|
|
1119
1114
|
document.head.appendChild(s);
|
|
1120
1115
|
});
|
|
1121
1116
|
return babelLoading;
|
|
@@ -1768,11 +1763,9 @@
|
|
|
1768
1763
|
function loadReactUmd() {
|
|
1769
1764
|
const w = window;
|
|
1770
1765
|
if (w.React && w.ReactDOM) return Promise.resolve();
|
|
1771
|
-
const react = cdnScriptFor(REACT_URL, REACT_SRI);
|
|
1772
|
-
const reactDom = cdnScriptFor(REACT_DOM_URL, REACT_DOM_SRI);
|
|
1773
1766
|
return Promise.all([
|
|
1774
|
-
loadScript(
|
|
1775
|
-
loadScript(
|
|
1767
|
+
loadScript(localScriptFor(REACT_LOCAL)),
|
|
1768
|
+
loadScript(localScriptFor(REACT_DOM_LOCAL))
|
|
1776
1769
|
]).then(() => void 0);
|
|
1777
1770
|
}
|
|
1778
1771
|
function init() {
|
package/tokens/colors.css
CHANGED
|
@@ -20,11 +20,21 @@
|
|
|
20
20
|
--cs-color-text-accent: #6E3B0E; /* accessible ochre-adjacent link/accent text */
|
|
21
21
|
--cs-color-text-muted: #6E5A4C; /* APCA-safe secondary text on page */
|
|
22
22
|
|
|
23
|
-
/* ---- Semantic foregrounds ---- */
|
|
23
|
+
/* ---- Semantic fills + paired foregrounds (literal-on-semantic, UX-008) ---- */
|
|
24
24
|
--cs-color-semantic-success: #166534;
|
|
25
25
|
--cs-color-semantic-danger: #B42318;
|
|
26
26
|
--cs-color-semantic-warning: #92400E;
|
|
27
27
|
--cs-color-semantic-info: #1D4ED8;
|
|
28
|
+
--cs-color-semantic-success-fg: #FFFFFF;
|
|
29
|
+
--cs-color-semantic-danger-fg: #FFFFFF;
|
|
30
|
+
--cs-color-semantic-warning-fg: #FFFFFF;
|
|
31
|
+
--cs-color-semantic-info-fg: #FFFFFF;
|
|
32
|
+
|
|
33
|
+
/* ---- Document palette (Style Guide Articles · legal A4 instruments) ---- */
|
|
34
|
+
--cs-doc-ink: #1A1614;
|
|
35
|
+
--cs-doc-slate: #3F4C55;
|
|
36
|
+
--cs-doc-fill: #FDE68A;
|
|
37
|
+
--cs-doc-fill-ink: #1A1614;
|
|
28
38
|
|
|
29
39
|
/* ---- Accent alias + border ---- */
|
|
30
40
|
--cs-color-accent-ochre: #F4BA17; /* focus rings */
|
|
@@ -52,6 +62,10 @@ a:hover { color: var(--cs-color-link-hover); }
|
|
|
52
62
|
--cs-color-semantic-danger: #F87171;
|
|
53
63
|
--cs-color-semantic-warning: #FBBF24;
|
|
54
64
|
--cs-color-semantic-info: #7CB2FB;
|
|
65
|
+
--cs-color-semantic-success-fg: #1a1108;
|
|
66
|
+
--cs-color-semantic-danger-fg: #1a1108;
|
|
67
|
+
--cs-color-semantic-warning-fg: #1a1108;
|
|
68
|
+
--cs-color-semantic-info-fg: #1a1108;
|
|
55
69
|
--cs-color-border-default: #4a3a2c;
|
|
56
70
|
--cs-color-link: #f4ba17;
|
|
57
71
|
--cs-color-link-hover: #f5ead9;
|
|
@@ -70,6 +84,10 @@ a:hover { color: var(--cs-color-link-hover); }
|
|
|
70
84
|
--cs-color-semantic-danger: #F87171;
|
|
71
85
|
--cs-color-semantic-warning: #FBBF24;
|
|
72
86
|
--cs-color-semantic-info: #7CB2FB;
|
|
87
|
+
--cs-color-semantic-success-fg: #1a1108;
|
|
88
|
+
--cs-color-semantic-danger-fg: #1a1108;
|
|
89
|
+
--cs-color-semantic-warning-fg: #1a1108;
|
|
90
|
+
--cs-color-semantic-info-fg: #1a1108;
|
|
73
91
|
--cs-color-border-default: #4a3a2c;
|
|
74
92
|
--cs-color-link: #f4ba17;
|
|
75
93
|
--cs-color-link-hover: #f5ead9;
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Exact values from @cyberskill/tokens. Buttons carry a full size ramp with a
|
|
3
3
|
* 44px comfortable default touch target; TextField matches. */
|
|
4
4
|
:root {
|
|
5
|
+
--cs-focus-ring: 3px; /* @kind other */ /* signature focus outline width */
|
|
5
6
|
/* Button */
|
|
6
7
|
--cs-component-button-primary-bg: #45210E;
|
|
7
8
|
--cs-component-button-primary-fg: #FFFFFF;
|
package/tokens/elements.css
CHANGED
|
@@ -5,10 +5,12 @@
|
|
|
5
5
|
* Five elements: Kim (metal) · Mộc (wood) · Thủy (water) · Hỏa (fire) · Thổ (earth).
|
|
6
6
|
* Soft / middle / deep intensity ladder (middle = default). Thổ middle pins logo ochre.
|
|
7
7
|
*
|
|
8
|
-
* Contract — every element/variant sets exactly these
|
|
8
|
+
* Contract — every element/variant sets exactly these 10 role tokens:
|
|
9
9
|
* --cs-accent · --cs-accent-strong · --cs-accent-bright · --cs-accent-on
|
|
10
|
-
* --cs-accent-
|
|
10
|
+
* --cs-accent-on-strong · --cs-accent-tint · --cs-accent-ink
|
|
11
|
+
* --cs-accent-glow · --cs-accent-grad-a/b
|
|
11
12
|
* TEXT RULE: text sits on -bright or -tint only — never on the mid-tone -accent.
|
|
13
|
+
* Text on -strong uses --cs-accent-on-strong (WCAG AA ≥4.5:1 light and dark).
|
|
12
14
|
* Focus ring --cs-color-accent-ochre and semantic status tokens NEVER remap.
|
|
13
15
|
* Generative cycle (Tương sinh) only for grad-b: Mộc→Hỏa→Thổ→Kim→Thủy→Mộc. */
|
|
14
16
|
:root {
|
|
@@ -16,6 +18,7 @@
|
|
|
16
18
|
--cs-accent-strong: #A47D17;
|
|
17
19
|
--cs-accent-bright: #F4BA17;
|
|
18
20
|
--cs-accent-on: #45210E;
|
|
21
|
+
--cs-accent-on-strong: #1A1108;
|
|
19
22
|
--cs-accent-tint: #FBF4E9;
|
|
20
23
|
--cs-accent-ink: #45210E;
|
|
21
24
|
--cs-accent-glow: rgba(244, 186, 23, 0.48);
|
|
@@ -51,6 +54,7 @@
|
|
|
51
54
|
--cs-accent-strong: #A47D17;
|
|
52
55
|
--cs-accent-bright: #F4BA17;
|
|
53
56
|
--cs-accent-on: #45210E;
|
|
57
|
+
--cs-accent-on-strong: #1A1108;
|
|
54
58
|
--cs-accent-tint: #FBF4E9;
|
|
55
59
|
--cs-accent-ink: #45210E;
|
|
56
60
|
--cs-accent-glow: rgba(244, 186, 23, 0.48);
|
|
@@ -62,6 +66,7 @@
|
|
|
62
66
|
--cs-accent-strong: #90825E;
|
|
63
67
|
--cs-accent-bright: #F6EBCC;
|
|
64
68
|
--cs-accent-on: #292414;
|
|
69
|
+
--cs-accent-on-strong: #1A1108;
|
|
65
70
|
--cs-accent-tint: #FBF7EA;
|
|
66
71
|
--cs-accent-ink: #292414;
|
|
67
72
|
--cs-accent-glow: rgba(248, 233, 192, 0.48);
|
|
@@ -75,6 +80,7 @@
|
|
|
75
80
|
--cs-accent-strong: #201300;
|
|
76
81
|
--cs-accent-bright: #DEC7A2;
|
|
77
82
|
--cs-accent-on: #2D220E;
|
|
83
|
+
--cs-accent-on-strong: #FFFFFF;
|
|
78
84
|
--cs-accent-tint: #FFF6E7;
|
|
79
85
|
--cs-accent-ink: #2D220E;
|
|
80
86
|
--cs-accent-glow: rgba(81, 56, 1, 0.48);
|
|
@@ -90,6 +96,7 @@
|
|
|
90
96
|
--cs-accent-strong: #B47054;
|
|
91
97
|
--cs-accent-bright: #FED3C3;
|
|
92
98
|
--cs-accent-on: #381B10;
|
|
99
|
+
--cs-accent-on-strong: #1A1108;
|
|
93
100
|
--cs-accent-tint: #FFF4F0;
|
|
94
101
|
--cs-accent-ink: #381B10;
|
|
95
102
|
--cs-accent-glow: rgba(252, 175, 145, 0.48);
|
|
@@ -103,6 +110,7 @@
|
|
|
103
110
|
--cs-accent-strong: #967C75;
|
|
104
111
|
--cs-accent-bright: #FCE6DF;
|
|
105
112
|
--cs-accent-on: #2C211E;
|
|
113
|
+
--cs-accent-on-strong: #1A1108;
|
|
106
114
|
--cs-accent-tint: #FEF4F2;
|
|
107
115
|
--cs-accent-ink: #2C211E;
|
|
108
116
|
--cs-accent-glow: rgba(255, 225, 216, 0.48);
|
|
@@ -116,6 +124,7 @@
|
|
|
116
124
|
--cs-accent-strong: #280D00;
|
|
117
125
|
--cs-accent-bright: #F1BEA4;
|
|
118
126
|
--cs-accent-on: #361D0F;
|
|
127
|
+
--cs-accent-on-strong: #FFFFFF;
|
|
119
128
|
--cs-accent-tint: #FFF4EF;
|
|
120
129
|
--cs-accent-ink: #361D0F;
|
|
121
130
|
--cs-accent-glow: rgba(98, 43, 6, 0.48);
|
|
@@ -131,6 +140,7 @@
|
|
|
131
140
|
--cs-accent-strong: #108EA0;
|
|
132
141
|
--cs-accent-bright: #99EEFF;
|
|
133
142
|
--cs-accent-on: #012A30;
|
|
143
|
+
--cs-accent-on-strong: #1A1108;
|
|
134
144
|
--cs-accent-tint: #E7FBFF;
|
|
135
145
|
--cs-accent-ink: #012A30;
|
|
136
146
|
--cs-accent-glow: rgba(46, 219, 247, 0.48);
|
|
@@ -144,6 +154,7 @@
|
|
|
144
154
|
--cs-accent-strong: #5A8A90;
|
|
145
155
|
--cs-accent-bright: #CDF4F9;
|
|
146
156
|
--cs-accent-on: #13282B;
|
|
157
|
+
--cs-accent-on-strong: #1A1108;
|
|
147
158
|
--cs-accent-tint: #EBFAFC;
|
|
148
159
|
--cs-accent-ink: #13282B;
|
|
149
160
|
--cs-accent-glow: rgba(192, 245, 252, 0.48);
|
|
@@ -157,6 +168,7 @@
|
|
|
157
168
|
--cs-accent-strong: #011A21;
|
|
158
169
|
--cs-accent-bright: #A8D3E0;
|
|
159
170
|
--cs-accent-on: #10282F;
|
|
171
|
+
--cs-accent-on-strong: #FFFFFF;
|
|
160
172
|
--cs-accent-tint: #EAFAFF;
|
|
161
173
|
--cs-accent-ink: #10282F;
|
|
162
174
|
--cs-accent-glow: rgba(0, 69, 84, 0.48);
|
|
@@ -172,6 +184,7 @@
|
|
|
172
184
|
--cs-accent-strong: #629122;
|
|
173
185
|
--cs-accent-bright: #C5ED9C;
|
|
174
186
|
--cs-accent-on: #182A00;
|
|
187
|
+
--cs-accent-on-strong: #1A1108;
|
|
175
188
|
--cs-accent-tint: #EFFCE3;
|
|
176
189
|
--cs-accent-ink: #182A00;
|
|
177
190
|
--cs-accent-glow: rgba(163, 215, 104, 0.48);
|
|
@@ -185,6 +198,7 @@
|
|
|
185
198
|
--cs-accent-strong: #7C8965;
|
|
186
199
|
--cs-accent-bright: #E5F1D2;
|
|
187
200
|
--cs-accent-on: #212617;
|
|
201
|
+
--cs-accent-on-strong: #1A1108;
|
|
188
202
|
--cs-accent-tint: #F4F9ED;
|
|
189
203
|
--cs-accent-ink: #212617;
|
|
190
204
|
--cs-accent-glow: rgba(225, 241, 200, 0.48);
|
|
@@ -198,6 +212,7 @@
|
|
|
198
212
|
--cs-accent-strong: #051D00;
|
|
199
213
|
--cs-accent-bright: #B0D8A3;
|
|
200
214
|
--cs-accent-on: #162A0E;
|
|
215
|
+
--cs-accent-on-strong: #FFFFFF;
|
|
201
216
|
--cs-accent-tint: #ECFDE7;
|
|
202
217
|
--cs-accent-ink: #162A0E;
|
|
203
218
|
--cs-accent-glow: rgba(26, 74, 1, 0.48);
|
|
@@ -213,6 +228,7 @@
|
|
|
213
228
|
--cs-accent-strong: #AC780B;
|
|
214
229
|
--cs-accent-bright: #FDD89F;
|
|
215
230
|
--cs-accent-on: #312002;
|
|
231
|
+
--cs-accent-on-strong: #1A1108;
|
|
216
232
|
--cs-accent-tint: #FFF5E7;
|
|
217
233
|
--cs-accent-ink: #312002;
|
|
218
234
|
--cs-accent-glow: rgba(243, 185, 88, 0.48);
|
|
@@ -226,6 +242,7 @@
|
|
|
226
242
|
--cs-accent-strong: #947F65;
|
|
227
243
|
--cs-accent-bright: #FBE8D2;
|
|
228
244
|
--cs-accent-on: #2B2217;
|
|
245
|
+
--cs-accent-on-strong: #1A1108;
|
|
229
246
|
--cs-accent-tint: #FDF5ED;
|
|
230
247
|
--cs-accent-ink: #2B2217;
|
|
231
248
|
--cs-accent-glow: rgba(254, 229, 199, 0.48);
|
|
@@ -239,6 +256,7 @@
|
|
|
239
256
|
--cs-accent-strong: #1F1400;
|
|
240
257
|
--cs-accent-bright: #DCC8A2;
|
|
241
258
|
--cs-accent-on: #2D220E;
|
|
259
|
+
--cs-accent-on-strong: #FFFFFF;
|
|
242
260
|
--cs-accent-tint: #FEF6E7;
|
|
243
261
|
--cs-accent-ink: #2D220E;
|
|
244
262
|
--cs-accent-glow: rgba(80, 57, 1, 0.48);
|
|
@@ -270,6 +288,7 @@
|
|
|
270
288
|
--cs-accent-bright: #F6EBCC;
|
|
271
289
|
--cs-accent-strong: #665A37;
|
|
272
290
|
--cs-accent-on: #f5ead9;
|
|
291
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
273
292
|
--cs-accent-tint: #332701;
|
|
274
293
|
--cs-accent-ink: #F6EBCC;
|
|
275
294
|
}
|
|
@@ -278,6 +297,7 @@
|
|
|
278
297
|
--cs-accent-bright: #FEC42C;
|
|
279
298
|
--cs-accent-strong: #73560B;
|
|
280
299
|
--cs-accent-on: #f5ead9;
|
|
300
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
281
301
|
--cs-accent-tint: #352602;
|
|
282
302
|
--cs-accent-ink: #FECD5E;
|
|
283
303
|
}
|
|
@@ -286,6 +306,7 @@
|
|
|
286
306
|
--cs-accent-bright: #E4CDA8;
|
|
287
307
|
--cs-accent-strong: #1F1300;
|
|
288
308
|
--cs-accent-on: #f5ead9;
|
|
309
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
289
310
|
--cs-accent-tint: #372502;
|
|
290
311
|
--cs-accent-ink: #E7D0AB;
|
|
291
312
|
}
|
|
@@ -294,6 +315,7 @@
|
|
|
294
315
|
--cs-accent-bright: #FCE6DF;
|
|
295
316
|
--cs-accent-strong: #6F5750;
|
|
296
317
|
--cs-accent-on: #f5ead9;
|
|
318
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
297
319
|
--cs-accent-tint: #38231C;
|
|
298
320
|
--cs-accent-ink: #FCE6DF;
|
|
299
321
|
}
|
|
@@ -302,6 +324,7 @@
|
|
|
302
324
|
--cs-accent-bright: #FED3C3;
|
|
303
325
|
--cs-accent-strong: #8A4A30;
|
|
304
326
|
--cs-accent-on: #f5ead9;
|
|
327
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
305
328
|
--cs-accent-tint: #411E0F;
|
|
306
329
|
--cs-accent-ink: #FED3C3;
|
|
307
330
|
}
|
|
@@ -310,6 +333,7 @@
|
|
|
310
333
|
--cs-accent-bright: #F8C4AA;
|
|
311
334
|
--cs-accent-strong: #280D00;
|
|
312
335
|
--cs-accent-on: #f5ead9;
|
|
336
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
313
337
|
--cs-accent-tint: #401F0B;
|
|
314
338
|
--cs-accent-ink: #FBC7AD;
|
|
315
339
|
}
|
|
@@ -318,6 +342,7 @@
|
|
|
318
342
|
--cs-accent-bright: #CDF4F9;
|
|
319
343
|
--cs-accent-strong: #316167;
|
|
320
344
|
--cs-accent-on: #f5ead9;
|
|
345
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
321
346
|
--cs-accent-tint: #022F34;
|
|
322
347
|
--cs-accent-ink: #CDF4F9;
|
|
323
348
|
}
|
|
@@ -326,6 +351,7 @@
|
|
|
326
351
|
--cs-accent-bright: #99EEFF;
|
|
327
352
|
--cs-accent-strong: #046270;
|
|
328
353
|
--cs-accent-on: #f5ead9;
|
|
354
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
329
355
|
--cs-accent-tint: #032F36;
|
|
330
356
|
--cs-accent-ink: #99EEFF;
|
|
331
357
|
}
|
|
@@ -334,6 +360,7 @@
|
|
|
334
360
|
--cs-accent-bright: #ABD6E3;
|
|
335
361
|
--cs-accent-strong: #011A21;
|
|
336
362
|
--cs-accent-on: #f5ead9;
|
|
363
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
337
364
|
--cs-accent-tint: #002F3A;
|
|
338
365
|
--cs-accent-ink: #AED9E6;
|
|
339
366
|
}
|
|
@@ -342,6 +369,7 @@
|
|
|
342
369
|
--cs-accent-bright: #E5F1D2;
|
|
343
370
|
--cs-accent-strong: #54603E;
|
|
344
371
|
--cs-accent-on: #f5ead9;
|
|
372
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
345
373
|
--cs-accent-tint: #232D0B;
|
|
346
374
|
--cs-accent-ink: #E5F1D2;
|
|
347
375
|
}
|
|
@@ -350,6 +378,7 @@
|
|
|
350
378
|
--cs-accent-bright: #C5ED9C;
|
|
351
379
|
--cs-accent-strong: #416501;
|
|
352
380
|
--cs-accent-on: #f5ead9;
|
|
381
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
353
382
|
--cs-accent-tint: #1F2E0B;
|
|
354
383
|
--cs-accent-ink: #C5ED9C;
|
|
355
384
|
}
|
|
@@ -358,6 +387,7 @@
|
|
|
358
387
|
--cs-accent-bright: #B0D8A3;
|
|
359
388
|
--cs-accent-strong: #061D00;
|
|
360
389
|
--cs-accent-on: #f5ead9;
|
|
390
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
361
391
|
--cs-accent-tint: #193011;
|
|
362
392
|
--cs-accent-ink: #B6DFA9;
|
|
363
393
|
}
|
|
@@ -366,6 +396,7 @@
|
|
|
366
396
|
--cs-accent-bright: #FBE8D2;
|
|
367
397
|
--cs-accent-strong: #6B573E;
|
|
368
398
|
--cs-accent-on: #f5ead9;
|
|
399
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
369
400
|
--cs-accent-tint: #37250B;
|
|
370
401
|
--cs-accent-ink: #FBE8D2;
|
|
371
402
|
}
|
|
@@ -374,6 +405,7 @@
|
|
|
374
405
|
--cs-accent-bright: #FDD89F;
|
|
375
406
|
--cs-accent-strong: #795303;
|
|
376
407
|
--cs-accent-on: #f5ead9;
|
|
408
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
377
409
|
--cs-accent-tint: #382503;
|
|
378
410
|
--cs-accent-ink: #FDD89F;
|
|
379
411
|
}
|
|
@@ -382,6 +414,7 @@
|
|
|
382
414
|
--cs-accent-bright: #DFCBA5;
|
|
383
415
|
--cs-accent-strong: #1F1400;
|
|
384
416
|
--cs-accent-on: #f5ead9;
|
|
417
|
+
--cs-accent-on-strong: #FFFDF8;
|
|
385
418
|
--cs-accent-tint: #362602;
|
|
386
419
|
--cs-accent-ink: #E6D1AB;
|
|
387
420
|
}
|
package/tokens/elevation.css
CHANGED
|
@@ -4,13 +4,19 @@
|
|
|
4
4
|
* the material composition + classes live in base/glass.css.
|
|
5
5
|
* Shadow values are warm (umber-tinted), taken from the shipped surfaces. */
|
|
6
6
|
:root {
|
|
7
|
-
/* ---- Depth (z-index) ----
|
|
7
|
+
/* ---- Depth (z-index) ----
|
|
8
|
+
* Order (low → high): bg < section < card < nav < dropdown < overlay < modal < toast.
|
|
9
|
+
* Toasts intentionally stack above modals so save-confirmation feedback stays visible
|
|
10
|
+
* while a dialog is open (UX-009). Dropdown sits above sticky nav; overlay (scrims
|
|
11
|
+
* that are not modal-owned) sits between dropdown and modal. */
|
|
8
12
|
--cs-depth-bg: 0; /* @kind other */ /* page background / hero washes */
|
|
9
13
|
--cs-depth-section: 5; /* @kind other */ /* major sections (matte, no glass) */
|
|
10
14
|
--cs-depth-card: 10; /* @kind other */ /* cards/panels (Standard Glass) */
|
|
11
15
|
--cs-depth-nav: 50; /* @kind other */ /* sticky nav (Light Glass) */
|
|
16
|
+
--cs-depth-dropdown: 60; /* @kind other */ /* menus, combobox, datepicker pops */
|
|
17
|
+
--cs-depth-overlay: 80; /* @kind other */ /* non-modal scrims / light overlays */
|
|
12
18
|
--cs-depth-modal: 100; /* @kind other */ /* modals, command palette (Heavy Glass) */
|
|
13
|
-
--cs-depth-toast: 200; /* @kind other */ /* toasts
|
|
19
|
+
--cs-depth-toast: 200; /* @kind other */ /* toasts above modals (Heavy Glass) */
|
|
14
20
|
|
|
15
21
|
/* ---- Glass material scalars (blur / saturate / surface opacity) ---- */
|
|
16
22
|
--cs-glass-whisper-blur: 8px; --cs-glass-whisper-saturate: 110%; --cs-glass-whisper-opacity: 60%;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// CyberSkill Design System — native design tokens.
|
|
2
2
|
// GENERATED from tokens/tokens.dtcg.json — do not hand-edit; regenerate on token change.
|
|
3
|
-
// release v1.1.1 · source sha256
|
|
3
|
+
// release v1.1.1 · source sha256 16b39bda3ee5b664…
|
|
4
4
|
// conversions: rem→px at 16 · em→…Em relative doubles · rgba alpha→ARGB byte (round(a*255)) · durations in ms
|
|
5
5
|
// dark element packs: see $extensions.overrides.elementsDark
|
|
6
6
|
// provenance: tokens/provenance.json · parity gate: _audit/token-pipeline-test.html
|
|
@@ -28,6 +28,10 @@ object CSTokens {
|
|
|
28
28
|
val colorBorderDefault = Color(0xFFE7D9C6)
|
|
29
29
|
val colorLink = Color(0xFF6E3B0E)
|
|
30
30
|
val colorLinkHover = Color(0xFF45210E)
|
|
31
|
+
val colorSemanticSuccessFg = Color(0xFFFFFFFF)
|
|
32
|
+
val colorSemanticDangerFg = Color(0xFFFFFFFF)
|
|
33
|
+
val colorSemanticWarningFg = Color(0xFFFFFFFF)
|
|
34
|
+
val colorSemanticInfoFg = Color(0xFFFFFFFF)
|
|
31
35
|
val componentButtonPrimaryBg = Color(0xFF45210E)
|
|
32
36
|
val componentButtonPrimaryFg = Color(0xFFFFFFFF)
|
|
33
37
|
val componentButtonGap = 8.dp
|
|
@@ -52,6 +56,7 @@ object CSTokens {
|
|
|
52
56
|
val componentTextfieldPaddingY = 10.dp
|
|
53
57
|
val componentTextfieldPaddingX = 12.dp
|
|
54
58
|
val componentTextfieldMinHeight = 44.dp
|
|
59
|
+
val focusRing = 3.dp
|
|
55
60
|
val accent = Color(0xFFF4BA17)
|
|
56
61
|
val accentStrong = Color(0xFFA47D17)
|
|
57
62
|
val accentBright = Color(0xFFF4BA17)
|
|
@@ -61,12 +66,15 @@ object CSTokens {
|
|
|
61
66
|
val accentGlow = Color(0x7AF4BA17)
|
|
62
67
|
val accentGradA = Color(0xFFF4BA17)
|
|
63
68
|
val accentGradB = Color(0xFFFCAF91)
|
|
69
|
+
val accentOnStrong = Color(0xFF1A1108)
|
|
64
70
|
val depthBg = 0
|
|
65
71
|
val depthSection = 5
|
|
66
72
|
val depthCard = 10
|
|
67
73
|
val depthNav = 50
|
|
68
74
|
val depthModal = 100
|
|
69
75
|
val depthToast = 200
|
|
76
|
+
val depthDropdown = 60
|
|
77
|
+
val depthOverlay = 80
|
|
70
78
|
val glassWhisperBlur = 8.dp
|
|
71
79
|
val glassWhisperSaturate = "110%"
|
|
72
80
|
val glassWhisperOpacity = "60%"
|
|
@@ -116,6 +124,7 @@ object CSTokens {
|
|
|
116
124
|
val breakpointXl = 1280.dp
|
|
117
125
|
val breakpoint2xl = 1536.dp
|
|
118
126
|
val containerMax = 1320.dp
|
|
127
|
+
val proseMeasure = 720.dp
|
|
119
128
|
val fontFamilyUi = "Be Vietnam Pro, ui-sans-serif, system-ui, sans-serif"
|
|
120
129
|
val fontFamilyDisplay = "Space Grotesk, Be Vietnam Pro, ui-sans-serif, system-ui, sans-serif"
|
|
121
130
|
val fontFamilyMono = "JetBrains Mono, ui-monospace, SFMono-Regular, Menlo, Consolas, monospace"
|
|
@@ -127,6 +136,7 @@ object CSTokens {
|
|
|
127
136
|
val fontLineHeightBody = 1.5f
|
|
128
137
|
val fontLineHeightHeading = 1.35f
|
|
129
138
|
val fontLineHeightTight = 1.15f
|
|
139
|
+
val fontSize2xs = 11.dp
|
|
130
140
|
val fontSizeXs = 12.dp
|
|
131
141
|
val fontSizeSm = 14.dp
|
|
132
142
|
val fontSizeBase = 16.dp
|
|
@@ -145,6 +155,7 @@ object CSTokens {
|
|
|
145
155
|
val textBodyLg = "var(--cs-font-size-md)"
|
|
146
156
|
val textBody = "var(--cs-font-size-base)"
|
|
147
157
|
val textSecondary = "var(--cs-font-size-sm)"
|
|
158
|
+
val textMicro = "var(--cs-font-size-2xs)"
|
|
148
159
|
val textCaption = "var(--cs-font-size-xs)"
|
|
149
160
|
val textEyebrow = "var(--cs-font-size-xs)"
|
|
150
161
|
val letterSpacingTightEm = -0.01f
|
|
@@ -157,6 +168,10 @@ object CSTokens {
|
|
|
157
168
|
val iconSm = 16.dp
|
|
158
169
|
val iconMd = 20.dp
|
|
159
170
|
val iconLg = 24.dp
|
|
171
|
+
val docInk = Color(0xFF1A1614)
|
|
172
|
+
val docSlate = Color(0xFF3F4C55)
|
|
173
|
+
val docFill = Color(0xFFFDE68A)
|
|
174
|
+
val docFillInk = Color(0xFF1A1614)
|
|
160
175
|
|
|
161
176
|
// dark-theme color overrides
|
|
162
177
|
val colorSurfacePageDark = Color(0xFF1A1108)
|
|
@@ -176,96 +191,115 @@ object CSTokens {
|
|
|
176
191
|
val componentButtonPrimaryBgDark = Color(0xFFF4BA17)
|
|
177
192
|
val componentButtonPrimaryFgDark = Color(0xFF1A1108)
|
|
178
193
|
val componentTextfieldBorderDefaultDark = Color(0xFF5A4636)
|
|
194
|
+
val colorSemanticSuccessFgDark = Color(0xFF1A1108)
|
|
195
|
+
val colorSemanticDangerFgDark = Color(0xFF1A1108)
|
|
196
|
+
val colorSemanticWarningFgDark = Color(0xFF1A1108)
|
|
197
|
+
val colorSemanticInfoFgDark = Color(0xFF1A1108)
|
|
179
198
|
|
|
180
199
|
// dark elemental accent packs (APCA-derived, v4.0.0)
|
|
181
200
|
val accentThoSandDark = Color(0xFFF8E9C0)
|
|
182
201
|
val accentBrightThoSandDark = Color(0xFFF6EBCC)
|
|
183
202
|
val accentStrongThoSandDark = Color(0xFF665A37)
|
|
184
203
|
val accentOnThoSandDark = Color(0xFFF5EAD9)
|
|
204
|
+
val accentOnStrongThoSandDark = Color(0xFFFFFDF8)
|
|
185
205
|
val accentTintThoSandDark = Color(0xFF332701)
|
|
186
206
|
val accentInkThoSandDark = Color(0xFFF6EBCC)
|
|
187
207
|
val accentThoDark = Color(0xFFF4BA17)
|
|
188
208
|
val accentBrightThoDark = Color(0xFFFEC42C)
|
|
189
209
|
val accentStrongThoDark = Color(0xFF73560B)
|
|
190
210
|
val accentOnThoDark = Color(0xFFF5EAD9)
|
|
211
|
+
val accentOnStrongThoDark = Color(0xFFFFFDF8)
|
|
191
212
|
val accentTintThoDark = Color(0xFF352602)
|
|
192
213
|
val accentInkThoDark = Color(0xFFFECD5E)
|
|
193
214
|
val accentThoClayDark = Color(0xFFCDB07E)
|
|
194
215
|
val accentBrightThoClayDark = Color(0xFFE4CDA8)
|
|
195
216
|
val accentStrongThoClayDark = Color(0xFF1F1300)
|
|
196
217
|
val accentOnThoClayDark = Color(0xFFF5EAD9)
|
|
218
|
+
val accentOnStrongThoClayDark = Color(0xFFFFFDF8)
|
|
197
219
|
val accentTintThoClayDark = Color(0xFF372502)
|
|
198
220
|
val accentInkThoClayDark = Color(0xFFE7D0AB)
|
|
199
221
|
val accentHoaPlasmaDark = Color(0xFFFFE1D8)
|
|
200
222
|
val accentBrightHoaPlasmaDark = Color(0xFFFCE6DF)
|
|
201
223
|
val accentStrongHoaPlasmaDark = Color(0xFF6F5750)
|
|
202
224
|
val accentOnHoaPlasmaDark = Color(0xFFF5EAD9)
|
|
225
|
+
val accentOnStrongHoaPlasmaDark = Color(0xFFFFFDF8)
|
|
203
226
|
val accentTintHoaPlasmaDark = Color(0xFF38231C)
|
|
204
227
|
val accentInkHoaPlasmaDark = Color(0xFFFCE6DF)
|
|
205
228
|
val accentHoaDark = Color(0xFFFCAF91)
|
|
206
229
|
val accentBrightHoaDark = Color(0xFFFED3C3)
|
|
207
230
|
val accentStrongHoaDark = Color(0xFF8A4A30)
|
|
208
231
|
val accentOnHoaDark = Color(0xFFF5EAD9)
|
|
232
|
+
val accentOnStrongHoaDark = Color(0xFFFFFDF8)
|
|
209
233
|
val accentTintHoaDark = Color(0xFF411E0F)
|
|
210
234
|
val accentInkHoaDark = Color(0xFFFED3C3)
|
|
211
235
|
val accentHoaLavaDark = Color(0xFFE8A683)
|
|
212
236
|
val accentBrightHoaLavaDark = Color(0xFFF8C4AA)
|
|
213
237
|
val accentStrongHoaLavaDark = Color(0xFF280D00)
|
|
214
238
|
val accentOnHoaLavaDark = Color(0xFFF5EAD9)
|
|
239
|
+
val accentOnStrongHoaLavaDark = Color(0xFFFFFDF8)
|
|
215
240
|
val accentTintHoaLavaDark = Color(0xFF401F0B)
|
|
216
241
|
val accentInkHoaLavaDark = Color(0xFFFBC7AD)
|
|
217
242
|
val accentThuyMistDark = Color(0xFFC0F5FC)
|
|
218
243
|
val accentBrightThuyMistDark = Color(0xFFCDF4F9)
|
|
219
244
|
val accentStrongThuyMistDark = Color(0xFF316167)
|
|
220
245
|
val accentOnThuyMistDark = Color(0xFFF5EAD9)
|
|
246
|
+
val accentOnStrongThuyMistDark = Color(0xFFFFFDF8)
|
|
221
247
|
val accentTintThuyMistDark = Color(0xFF022F34)
|
|
222
248
|
val accentInkThuyMistDark = Color(0xFFCDF4F9)
|
|
223
249
|
val accentThuyDark = Color(0xFF2EDBF7)
|
|
224
250
|
val accentBrightThuyDark = Color(0xFF99EEFF)
|
|
225
251
|
val accentStrongThuyDark = Color(0xFF046270)
|
|
226
252
|
val accentOnThuyDark = Color(0xFFF5EAD9)
|
|
253
|
+
val accentOnStrongThuyDark = Color(0xFFFFFDF8)
|
|
227
254
|
val accentTintThuyDark = Color(0xFF032F36)
|
|
228
255
|
val accentInkThuyDark = Color(0xFF99EEFF)
|
|
229
256
|
val accentThuyOceanDark = Color(0xFF82BCCD)
|
|
230
257
|
val accentBrightThuyOceanDark = Color(0xFFABD6E3)
|
|
231
258
|
val accentStrongThuyOceanDark = Color(0xFF011A21)
|
|
232
259
|
val accentOnThuyOceanDark = Color(0xFFF5EAD9)
|
|
260
|
+
val accentOnStrongThuyOceanDark = Color(0xFFFFFDF8)
|
|
233
261
|
val accentTintThuyOceanDark = Color(0xFF002F3A)
|
|
234
262
|
val accentInkThuyOceanDark = Color(0xFFAED9E6)
|
|
235
263
|
val accentMocBambooDark = Color(0xFFE1F1C8)
|
|
236
264
|
val accentBrightMocBambooDark = Color(0xFFE5F1D2)
|
|
237
265
|
val accentStrongMocBambooDark = Color(0xFF54603E)
|
|
238
266
|
val accentOnMocBambooDark = Color(0xFFF5EAD9)
|
|
267
|
+
val accentOnStrongMocBambooDark = Color(0xFFFFFDF8)
|
|
239
268
|
val accentTintMocBambooDark = Color(0xFF232D0B)
|
|
240
269
|
val accentInkMocBambooDark = Color(0xFFE5F1D2)
|
|
241
270
|
val accentMocDark = Color(0xFFA3D768)
|
|
242
271
|
val accentBrightMocDark = Color(0xFFC5ED9C)
|
|
243
272
|
val accentStrongMocDark = Color(0xFF416501)
|
|
244
273
|
val accentOnMocDark = Color(0xFFF5EAD9)
|
|
274
|
+
val accentOnStrongMocDark = Color(0xFFFFFDF8)
|
|
245
275
|
val accentTintMocDark = Color(0xFF1F2E0B)
|
|
246
276
|
val accentInkMocDark = Color(0xFFC5ED9C)
|
|
247
277
|
val accentMocForestDark = Color(0xFF8EC27D)
|
|
248
278
|
val accentBrightMocForestDark = Color(0xFFB0D8A3)
|
|
249
279
|
val accentStrongMocForestDark = Color(0xFF061D00)
|
|
250
280
|
val accentOnMocForestDark = Color(0xFFF5EAD9)
|
|
281
|
+
val accentOnStrongMocForestDark = Color(0xFFFFFDF8)
|
|
251
282
|
val accentTintMocForestDark = Color(0xFF193011)
|
|
252
283
|
val accentInkMocForestDark = Color(0xFFB6DFA9)
|
|
253
284
|
val accentKimTitaniumDark = Color(0xFFFEE5C7)
|
|
254
285
|
val accentBrightKimTitaniumDark = Color(0xFFFBE8D2)
|
|
255
286
|
val accentStrongKimTitaniumDark = Color(0xFF6B573E)
|
|
256
287
|
val accentOnKimTitaniumDark = Color(0xFFF5EAD9)
|
|
288
|
+
val accentOnStrongKimTitaniumDark = Color(0xFFFFFDF8)
|
|
257
289
|
val accentTintKimTitaniumDark = Color(0xFF37250B)
|
|
258
290
|
val accentInkKimTitaniumDark = Color(0xFFFBE8D2)
|
|
259
291
|
val accentKimDark = Color(0xFFF3B958)
|
|
260
292
|
val accentBrightKimDark = Color(0xFFFDD89F)
|
|
261
293
|
val accentStrongKimDark = Color(0xFF795303)
|
|
262
294
|
val accentOnKimDark = Color(0xFFF5EAD9)
|
|
295
|
+
val accentOnStrongKimDark = Color(0xFFFFFDF8)
|
|
263
296
|
val accentTintKimDark = Color(0xFF382503)
|
|
264
297
|
val accentInkKimDark = Color(0xFFFDD89F)
|
|
265
298
|
val accentKimSteelDark = Color(0xFFCCB17E)
|
|
266
299
|
val accentBrightKimSteelDark = Color(0xFFDFCBA5)
|
|
267
300
|
val accentStrongKimSteelDark = Color(0xFF1F1400)
|
|
268
301
|
val accentOnKimSteelDark = Color(0xFFF5EAD9)
|
|
302
|
+
val accentOnStrongKimSteelDark = Color(0xFFFFFDF8)
|
|
269
303
|
val accentTintKimSteelDark = Color(0xFF362602)
|
|
270
304
|
val accentInkKimSteelDark = Color(0xFFE6D1AB)
|
|
271
305
|
}
|