@0001-labs/design-system-1 0.3.0-alpha.28 → 0.3.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/DS1/0-face/button-label.ts +28 -0
- package/DS1/0-face/calendar.ts +6 -4
- package/DS1/0-face/carousel.ts +70 -0
- package/DS1/0-face/constraint-panel.ts +422 -0
- package/DS1/0-face/constraint-site.ts +200 -0
- package/DS1/0-face/constraints.ts +281 -0
- package/DS1/0-face/copy-text.ts +1 -1
- package/DS1/0-face/cut-fade.ts +312 -0
- package/DS1/0-face/define.ts +30 -2
- package/DS1/0-face/face-correction.ts +96 -0
- package/DS1/0-face/failures.ts +32 -0
- package/DS1/0-face/feedback-overlays.ts +5 -3
- package/DS1/0-face/feedback.ts +3 -0
- package/DS1/0-face/focus-vision.swift +31 -0
- package/DS1/0-face/focus.ts +181 -0
- package/DS1/0-face/google-face-metrics.json +102 -0
- package/DS1/0-face/grid.ts +61 -4
- package/DS1/0-face/i18n.ts +36 -18
- package/DS1/0-face/layout-inspector.ts +124 -98
- package/DS1/0-face/preference-options.ts +4 -0
- package/DS1/0-face/scaling.ts +21 -3
- package/DS1/0-face/shape.ts +43 -0
- package/DS1/0-face/text-contrast.ts +164 -0
- package/DS1/0-face/theme-bootstrap.js +43 -0
- package/DS1/0-face/toast-queue.ts +7 -1
- package/DS1/0-face/translations/da.json +10 -1
- package/DS1/0-face/translations/de.json +10 -1
- package/DS1/0-face/translations/en.json +10 -1
- package/DS1/0-face/translations/es.json +10 -1
- package/DS1/0-face/translations/fi.json +10 -1
- package/DS1/0-face/translations/fr.json +10 -1
- package/DS1/0-face/translations/is.json +10 -1
- package/DS1/0-face/translations/it.json +10 -1
- package/DS1/0-face/translations/ja.json +10 -1
- package/DS1/0-face/translations/ko.json +10 -1
- package/DS1/0-face/translations/nb.json +10 -1
- package/DS1/0-face/translations/pt-BR.json +10 -1
- package/DS1/0-face/translations/pt.json +10 -1
- package/DS1/0-face/translations/sv.json +10 -1
- package/DS1/0-face/translations/zh.json +10 -1
- package/DS1/0-face/word-wrap.ts +113 -0
- package/DS1/1-root/card.css +47 -20
- package/DS1/1-root/carousel.css +7 -0
- package/DS1/1-root/cjk.css +1 -1
- package/DS1/1-root/component-tokens.css +3 -2
- package/DS1/1-root/context.css +44 -6
- package/DS1/1-root/controls.css +99 -8
- package/DS1/1-root/document.css +9 -1
- package/DS1/1-root/empty.css +46 -5
- package/DS1/1-root/figures.css +50 -3
- package/DS1/1-root/fonts.css +1 -1
- package/DS1/1-root/footer.css +147 -16
- package/DS1/1-root/foundation.ts +60 -0
- package/DS1/1-root/guide.css +35 -0
- package/DS1/1-root/header.css +30 -9
- package/DS1/1-root/material.css +67 -0
- package/DS1/1-root/notice.css +10 -2
- package/DS1/1-root/one.css +14 -7
- package/DS1/1-root/progress.css +9 -1
- package/DS1/1-root/row.css +68 -2
- package/DS1/1-root/table.css +47 -4
- package/DS1/1-root/text.css +26 -0
- package/DS1/2-core/button-split.ts +10 -5
- package/DS1/2-core/chart/chart.css +71 -2
- package/DS1/2-core/chart/grid-chart.ts +2 -1
- package/DS1/2-core/ds-activity.ts +32 -0
- package/DS1/2-core/ds-app-chrome.ts +1 -0
- package/DS1/2-core/ds-avatar.ts +35 -6
- package/DS1/2-core/ds-badge.ts +8 -1
- package/DS1/2-core/ds-button.ts +7 -1
- package/DS1/2-core/ds-chart.ts +184 -49
- package/DS1/2-core/ds-cycle.ts +27 -186
- package/DS1/2-core/ds-device-bezel.ts +1 -0
- package/DS1/2-core/ds-empty.ts +6 -4
- package/DS1/2-core/ds-input.ts +23 -3
- package/DS1/2-core/ds-message.ts +22 -0
- package/DS1/2-core/ds-number.ts +349 -0
- package/DS1/2-core/ds-progress.ts +3 -0
- package/DS1/2-core/ds-radio.ts +3 -0
- package/DS1/2-core/ds-stat.ts +3 -0
- package/DS1/2-core/ds-switch.ts +5 -1
- package/DS1/2-core/ds-tag.ts +9 -2
- package/DS1/2-core/ds-text.ts +7 -0
- package/DS1/2-core/ds-token.ts +3 -0
- package/DS1/2-core/ds-tooltip.ts +17 -2
- package/DS1/2-core/ds-window.ts +1 -0
- package/DS1/2-core/generated/ds-icon-map.ts +47 -5
- package/DS1/2-core/generated/icons-extra.ts +24 -3
- package/DS1/2-core/generated/icons-immediate.ts +3 -3
- package/DS1/2-core/number-expression.ts +64 -0
- package/DS1/2-core/styles/ds-activity.css +16 -0
- package/DS1/2-core/styles/ds-badge.css +4 -1
- package/DS1/2-core/styles/ds-button-host.css +45 -12
- package/DS1/2-core/styles/ds-button-split.css +8 -0
- package/DS1/2-core/styles/ds-button.css +92 -19
- package/DS1/2-core/styles/ds-card.css +6 -0
- package/DS1/2-core/styles/ds-checkbox.css +20 -8
- package/DS1/2-core/styles/ds-image.css +2 -1
- package/DS1/2-core/styles/ds-input.css +37 -4
- package/DS1/2-core/styles/ds-number.css +127 -0
- package/DS1/2-core/styles/ds-radio.css +4 -1
- package/DS1/2-core/styles/ds-switch.css +34 -4
- package/DS1/2-core/styles/ds-tag.css +32 -5
- package/DS1/2-core/styles/ds-text.css +13 -4
- package/DS1/2-core/styles/ds-token.css +4 -1
- package/DS1/2-core/styles/ds-tooltip.css +13 -7
- package/DS1/3-unit/calendar-base.ts +5 -2
- package/DS1/3-unit/ds-calendar.ts +711 -37
- package/DS1/3-unit/ds-carousel.ts +13 -1
- package/DS1/3-unit/ds-context.ts +40 -2
- package/DS1/3-unit/ds-form.ts +45 -10
- package/DS1/3-unit/ds-list.ts +31 -3
- package/DS1/3-unit/ds-matrix.ts +3 -0
- package/DS1/3-unit/ds-menu.ts +9 -5
- package/DS1/3-unit/ds-row.ts +17 -2
- package/DS1/3-unit/ds-select.ts +1 -1
- package/DS1/3-unit/ds-sidebar.ts +18 -3
- package/DS1/3-unit/ds-table-of-contents.ts +166 -0
- package/DS1/3-unit/ds-tabs.ts +40 -2
- package/DS1/3-unit/styles/ds-calendar.css +356 -42
- package/DS1/3-unit/styles/ds-context.css +38 -0
- package/DS1/3-unit/styles/ds-list.css +26 -1
- package/DS1/3-unit/styles/ds-matrix.css +4 -1
- package/DS1/3-unit/styles/ds-row.css +39 -0
- package/DS1/3-unit/styles/ds-select.css +22 -12
- package/DS1/3-unit/styles/ds-sidebar.css +16 -2
- package/DS1/3-unit/styles/ds-table-of-contents.css +40 -0
- package/DS1/3-unit/styles/ds-tabs.css +95 -0
- package/DS1/4-page/ds-document.ts +3 -0
- package/DS1/4-page/ds-footer.ts +93 -18
- package/DS1/4-page/ds-header.ts +5 -1
- package/DS1/4-page/ds-overlay.ts +8 -3
- package/DS1/4-page/ds-page.ts +22 -1
- package/DS1/4-page/email.ts +7 -4
- package/DS1/4-page/styles/ds-container.css +0 -1
- package/DS1/4-page/styles/ds-overlay.css +7 -0
- package/DS1/4-page/styles/ds-page.css +10 -0
- package/DS1/5-visual-kit/app-chrome.ts +129 -0
- package/DS1/5-visual-kit/bezels.ts +394 -0
- package/DS1/5-visual-kit/browser-icons.LICENSE +53 -0
- package/DS1/5-visual-kit/browser-icons.ts +47 -0
- package/DS1/5-visual-kit/browser-styles.ts +53 -0
- package/DS1/5-visual-kit/device-bezel.ts +55 -0
- package/DS1/5-visual-kit/instagram-frame.ts +15 -0
- package/DS1/5-visual-kit/instagram.ts +41 -0
- package/DS1/5-visual-kit/mobile-chrome.ts +25 -0
- package/DS1/5-visual-kit/native-icon-paths.ts +145 -0
- package/DS1/5-visual-kit/window.ts +22 -0
- package/DS1/components.ts +1 -0
- package/DS1/index.ts +14 -1
- package/DS1/react/choice.ts +4 -2
- package/DS1/react/context.ts +11 -6
- package/DS1/react/empty.ts +2 -2
- package/DS1/react/footer.ts +5 -5
- package/DS1/react/header.ts +1 -1
- package/DS1/react/message.ts +4 -2
- package/DS1/react/number.ts +53 -0
- package/DS1/react/sidebar.ts +4 -2
- package/DS1/react/table-of-contents.ts +28 -0
- package/DS1/x-flag/LICENSE.md +26 -0
- package/DS1/x-flag/ac.svg +1 -0
- package/DS1/x-flag/ad.svg +1 -0
- package/DS1/x-flag/ae.svg +1 -0
- package/DS1/x-flag/af.svg +1 -0
- package/DS1/x-flag/ag.svg +1 -0
- package/DS1/x-flag/ai.svg +1 -0
- package/DS1/x-flag/al.svg +1 -0
- package/DS1/x-flag/am.svg +1 -0
- package/DS1/x-flag/ao.svg +1 -0
- package/DS1/x-flag/aq.svg +1 -0
- package/DS1/x-flag/ar.svg +1 -0
- package/DS1/x-flag/as.svg +1 -0
- package/DS1/x-flag/at.svg +1 -0
- package/DS1/x-flag/au.svg +1 -0
- package/DS1/x-flag/aw.svg +1 -0
- package/DS1/x-flag/ax.svg +1 -0
- package/DS1/x-flag/az.svg +1 -0
- package/DS1/x-flag/ba.svg +1 -0
- package/DS1/x-flag/bb.svg +1 -0
- package/DS1/x-flag/bd.svg +1 -0
- package/DS1/x-flag/be.svg +1 -0
- package/DS1/x-flag/bf.svg +1 -0
- package/DS1/x-flag/bg.svg +1 -0
- package/DS1/x-flag/bh.svg +1 -0
- package/DS1/x-flag/bi.svg +1 -0
- package/DS1/x-flag/bj.svg +1 -0
- package/DS1/x-flag/bl.svg +1 -0
- package/DS1/x-flag/bm.svg +1 -0
- package/DS1/x-flag/bn.svg +1 -0
- package/DS1/x-flag/bo.svg +1 -0
- package/DS1/x-flag/bq-bo.svg +1 -0
- package/DS1/x-flag/bq-sa.svg +1 -0
- package/DS1/x-flag/bq-se.svg +1 -0
- package/DS1/x-flag/bq.svg +1 -0
- package/DS1/x-flag/br.svg +1 -0
- package/DS1/x-flag/bs.svg +1 -0
- package/DS1/x-flag/bt.svg +1 -0
- package/DS1/x-flag/bv.svg +1 -0
- package/DS1/x-flag/bw.svg +1 -0
- package/DS1/x-flag/by.svg +1 -0
- package/DS1/x-flag/bz.svg +1 -0
- package/DS1/x-flag/ca.svg +1 -0
- package/DS1/x-flag/cc.svg +1 -0
- package/DS1/x-flag/cd.svg +1 -0
- package/DS1/x-flag/cf.svg +1 -0
- package/DS1/x-flag/cg.svg +1 -0
- package/DS1/x-flag/ch.svg +1 -0
- package/DS1/x-flag/ci.svg +1 -0
- package/DS1/x-flag/ck.svg +1 -0
- package/DS1/x-flag/cl.svg +1 -0
- package/DS1/x-flag/cm.svg +1 -0
- package/DS1/x-flag/cn.svg +1 -0
- package/DS1/x-flag/co.svg +1 -0
- package/DS1/x-flag/cr.svg +1 -0
- package/DS1/x-flag/cu.svg +1 -0
- package/DS1/x-flag/cv.svg +1 -0
- package/DS1/x-flag/cw.svg +1 -0
- package/DS1/x-flag/cx.svg +1 -0
- package/DS1/x-flag/cy.svg +1 -0
- package/DS1/x-flag/cz.svg +1 -0
- package/DS1/x-flag/de.svg +1 -0
- package/DS1/x-flag/dj.svg +1 -0
- package/DS1/x-flag/dk.svg +1 -0
- package/DS1/x-flag/dm.svg +1 -0
- package/DS1/x-flag/do.svg +1 -0
- package/DS1/x-flag/dz.svg +1 -0
- package/DS1/x-flag/ec.svg +1 -0
- package/DS1/x-flag/ee.svg +1 -0
- package/DS1/x-flag/eg.svg +1 -0
- package/DS1/x-flag/eh.svg +1 -0
- package/DS1/x-flag/er.svg +1 -0
- package/DS1/x-flag/es-ct.svg +1 -0
- package/DS1/x-flag/es.svg +1 -0
- package/DS1/x-flag/et.svg +1 -0
- package/DS1/x-flag/eu.svg +1 -0
- package/DS1/x-flag/fi.svg +1 -0
- package/DS1/x-flag/fj.svg +1 -0
- package/DS1/x-flag/fk.svg +1 -0
- package/DS1/x-flag/fm.svg +1 -0
- package/DS1/x-flag/fo.svg +1 -0
- package/DS1/x-flag/fr.svg +1 -0
- package/DS1/x-flag/ga.svg +1 -0
- package/DS1/x-flag/gb-eng.svg +1 -0
- package/DS1/x-flag/gb-nir.svg +1 -0
- package/DS1/x-flag/gb-sct.svg +1 -0
- package/DS1/x-flag/gb-wls.svg +1 -0
- package/DS1/x-flag/gb.svg +1 -0
- package/DS1/x-flag/gd.svg +1 -0
- package/DS1/x-flag/ge.svg +1 -0
- package/DS1/x-flag/gf.svg +1 -0
- package/DS1/x-flag/gg.svg +1 -0
- package/DS1/x-flag/gh.svg +1 -0
- package/DS1/x-flag/gi.svg +1 -0
- package/DS1/x-flag/gl.svg +1 -0
- package/DS1/x-flag/gm.svg +1 -0
- package/DS1/x-flag/gn.svg +1 -0
- package/DS1/x-flag/gp.svg +1 -0
- package/DS1/x-flag/gq.svg +1 -0
- package/DS1/x-flag/gr.svg +1 -0
- package/DS1/x-flag/gs.svg +1 -0
- package/DS1/x-flag/gt.svg +1 -0
- package/DS1/x-flag/gu.svg +1 -0
- package/DS1/x-flag/gw.svg +1 -0
- package/DS1/x-flag/gy.svg +1 -0
- package/DS1/x-flag/hk.svg +1 -0
- package/DS1/x-flag/hm.svg +1 -0
- package/DS1/x-flag/hn.svg +1 -0
- package/DS1/x-flag/hr.svg +1 -0
- package/DS1/x-flag/ht.svg +1 -0
- package/DS1/x-flag/hu.svg +1 -0
- package/DS1/x-flag/ic.svg +1 -0
- package/DS1/x-flag/id.svg +1 -0
- package/DS1/x-flag/ie.svg +1 -0
- package/DS1/x-flag/il.svg +1 -0
- package/DS1/x-flag/im.svg +1 -0
- package/DS1/x-flag/in.svg +1 -0
- package/DS1/x-flag/io.svg +1 -0
- package/DS1/x-flag/iq.svg +1 -0
- package/DS1/x-flag/ir.svg +1 -0
- package/DS1/x-flag/is.svg +1 -0
- package/DS1/x-flag/it.svg +1 -0
- package/DS1/x-flag/je.svg +1 -0
- package/DS1/x-flag/jm.svg +1 -0
- package/DS1/x-flag/jo.svg +1 -0
- package/DS1/x-flag/jp.svg +1 -0
- package/DS1/x-flag/ke.svg +1 -0
- package/DS1/x-flag/kg.svg +1 -0
- package/DS1/x-flag/kh.svg +1 -0
- package/DS1/x-flag/ki.svg +1 -0
- package/DS1/x-flag/km.svg +1 -0
- package/DS1/x-flag/kn.svg +1 -0
- package/DS1/x-flag/kp.svg +1 -0
- package/DS1/x-flag/kr.svg +1 -0
- package/DS1/x-flag/kw.svg +1 -0
- package/DS1/x-flag/ky.svg +1 -0
- package/DS1/x-flag/kz.svg +1 -0
- package/DS1/x-flag/la.svg +1 -0
- package/DS1/x-flag/lb.svg +1 -0
- package/DS1/x-flag/lc.svg +1 -0
- package/DS1/x-flag/li.svg +1 -0
- package/DS1/x-flag/lk.svg +1 -0
- package/DS1/x-flag/lr.svg +1 -0
- package/DS1/x-flag/ls.svg +1 -0
- package/DS1/x-flag/lt.svg +1 -0
- package/DS1/x-flag/lu.svg +1 -0
- package/DS1/x-flag/lv.svg +1 -0
- package/DS1/x-flag/ly.svg +1 -0
- package/DS1/x-flag/ma.svg +1 -0
- package/DS1/x-flag/mc.svg +1 -0
- package/DS1/x-flag/md.svg +1 -0
- package/DS1/x-flag/me.svg +1 -0
- package/DS1/x-flag/mf.svg +1 -0
- package/DS1/x-flag/mg.svg +1 -0
- package/DS1/x-flag/mh.svg +1 -0
- package/DS1/x-flag/mk.svg +1 -0
- package/DS1/x-flag/ml.svg +1 -0
- package/DS1/x-flag/mm.svg +1 -0
- package/DS1/x-flag/mn.svg +1 -0
- package/DS1/x-flag/mo.svg +1 -0
- package/DS1/x-flag/mp.svg +1 -0
- package/DS1/x-flag/mq.svg +1 -0
- package/DS1/x-flag/mr.svg +1 -0
- package/DS1/x-flag/ms.svg +1 -0
- package/DS1/x-flag/mt.svg +1 -0
- package/DS1/x-flag/mu.svg +1 -0
- package/DS1/x-flag/mv.svg +1 -0
- package/DS1/x-flag/mw.svg +1 -0
- package/DS1/x-flag/mx.svg +1 -0
- package/DS1/x-flag/my.svg +1 -0
- package/DS1/x-flag/mz.svg +1 -0
- package/DS1/x-flag/na.svg +1 -0
- package/DS1/x-flag/nc.svg +1 -0
- package/DS1/x-flag/ne.svg +1 -0
- package/DS1/x-flag/nf.svg +1 -0
- package/DS1/x-flag/ng.svg +1 -0
- package/DS1/x-flag/ni.svg +1 -0
- package/DS1/x-flag/nl.svg +1 -0
- package/DS1/x-flag/no.svg +1 -0
- package/DS1/x-flag/np.svg +1 -0
- package/DS1/x-flag/nr.svg +1 -0
- package/DS1/x-flag/nu.svg +1 -0
- package/DS1/x-flag/nz.svg +1 -0
- package/DS1/x-flag/om.svg +1 -0
- package/DS1/x-flag/pa.svg +1 -0
- package/DS1/x-flag/pe.svg +1 -0
- package/DS1/x-flag/pf.svg +1 -0
- package/DS1/x-flag/pg.svg +1 -0
- package/DS1/x-flag/ph.svg +1 -0
- package/DS1/x-flag/pk.svg +1 -0
- package/DS1/x-flag/pl.svg +1 -0
- package/DS1/x-flag/pm.svg +1 -0
- package/DS1/x-flag/pn.svg +1 -0
- package/DS1/x-flag/pr.svg +1 -0
- package/DS1/x-flag/ps.svg +1 -0
- package/DS1/x-flag/pt.svg +1 -0
- package/DS1/x-flag/pw.svg +1 -0
- package/DS1/x-flag/py.svg +1 -0
- package/DS1/x-flag/qa.svg +1 -0
- package/DS1/x-flag/re.svg +1 -0
- package/DS1/x-flag/ro.svg +1 -0
- package/DS1/x-flag/rs.svg +1 -0
- package/DS1/x-flag/ru.svg +1 -0
- package/DS1/x-flag/rw.svg +1 -0
- package/DS1/x-flag/sa.svg +1 -0
- package/DS1/x-flag/sb.svg +1 -0
- package/DS1/x-flag/sc.svg +1 -0
- package/DS1/x-flag/sd.svg +1 -0
- package/DS1/x-flag/se.svg +1 -0
- package/DS1/x-flag/sg.svg +1 -0
- package/DS1/x-flag/sh.svg +1 -0
- package/DS1/x-flag/si.svg +1 -0
- package/DS1/x-flag/sj.svg +1 -0
- package/DS1/x-flag/sk.svg +1 -0
- package/DS1/x-flag/sl.svg +1 -0
- package/DS1/x-flag/sm.svg +1 -0
- package/DS1/x-flag/sn.svg +1 -0
- package/DS1/x-flag/so.svg +1 -0
- package/DS1/x-flag/sr.svg +1 -0
- package/DS1/x-flag/ss.svg +1 -0
- package/DS1/x-flag/st.svg +1 -0
- package/DS1/x-flag/sv.svg +1 -0
- package/DS1/x-flag/sx.svg +1 -0
- package/DS1/x-flag/sy.svg +1 -0
- package/DS1/x-flag/sz.svg +1 -0
- package/DS1/x-flag/ta.svg +1 -0
- package/DS1/x-flag/tc.svg +1 -0
- package/DS1/x-flag/td.svg +1 -0
- package/DS1/x-flag/tf.svg +1 -0
- package/DS1/x-flag/tg.svg +1 -0
- package/DS1/x-flag/th.svg +1 -0
- package/DS1/x-flag/tj.svg +1 -0
- package/DS1/x-flag/tk.svg +1 -0
- package/DS1/x-flag/tl.svg +1 -0
- package/DS1/x-flag/tm.svg +1 -0
- package/DS1/x-flag/tn.svg +1 -0
- package/DS1/x-flag/to.svg +1 -0
- package/DS1/x-flag/tr.svg +1 -0
- package/DS1/x-flag/tt.svg +1 -0
- package/DS1/x-flag/tv.svg +1 -0
- package/DS1/x-flag/tw.svg +1 -0
- package/DS1/x-flag/tz.svg +1 -0
- package/DS1/x-flag/ua.svg +1 -0
- package/DS1/x-flag/ug.svg +1 -0
- package/DS1/x-flag/um.svg +1 -0
- package/DS1/x-flag/us.svg +1 -0
- package/DS1/x-flag/uy.svg +1 -0
- package/DS1/x-flag/uz.svg +1 -0
- package/DS1/x-flag/va.svg +1 -0
- package/DS1/x-flag/vc.svg +1 -0
- package/DS1/x-flag/ve.svg +1 -0
- package/DS1/x-flag/vg.svg +1 -0
- package/DS1/x-flag/vi.svg +1 -0
- package/DS1/x-flag/vn.svg +1 -0
- package/DS1/x-flag/vu.svg +1 -0
- package/DS1/x-flag/wf.svg +1 -0
- package/DS1/x-flag/ws.svg +1 -0
- package/DS1/x-flag/xk.svg +1 -0
- package/DS1/x-flag/ye.svg +1 -0
- package/DS1/x-flag/yt.svg +1 -0
- package/DS1/x-flag/za.svg +1 -0
- package/DS1/x-flag/zm.svg +1 -0
- package/DS1/x-flag/zw.svg +1 -0
- package/DS1/x-icon/android.svg +9 -0
- package/DS1/x-icon/arrange-check.svg +1 -1
- package/DS1/x-icon/arrange-page.svg +1 -1
- package/DS1/x-icon/chrome.svg +7 -0
- package/DS1/x-icon/edge-brand.svg +6 -0
- package/DS1/x-icon/firefox.svg +4 -0
- package/DS1/x-icon/health.svg +3 -0
- package/DS1/x-icon/left.svg +2 -3
- package/DS1/x-icon/linux.svg +1 -0
- package/DS1/x-icon/material.svg +1 -0
- package/DS1/x-icon/milestone-planned.svg +3 -0
- package/DS1/x-icon/milestone.svg +3 -0
- package/DS1/x-icon/more.svg +1 -5
- package/DS1/x-icon/network.svg +3 -0
- package/DS1/x-icon/opera.svg +4 -0
- package/DS1/x-icon/prediction.svg +3 -0
- package/DS1/x-icon/priority-high.svg +3 -0
- package/DS1/x-icon/priority-low.svg +3 -0
- package/DS1/x-icon/priority-medium.svg +3 -0
- package/DS1/x-icon/project.svg +3 -0
- package/DS1/x-icon/redo.svg +2 -2
- package/DS1/x-icon/repeat-small.svg +3 -0
- package/DS1/x-icon/safari.svg +4 -0
- package/DS1/x-icon/scaling.svg +3 -0
- package/DS1/x-icon/tabs.svg +4 -0
- package/DS1/x-icon/windows.svg +5 -0
- package/README.md +3 -3
- package/dist/0-face/button-label.d.ts +5 -0
- package/dist/0-face/button-label.d.ts.map +1 -0
- package/dist/0-face/button-label.js +31 -0
- package/dist/0-face/calendar.d.ts +1 -1
- package/dist/0-face/calendar.d.ts.map +1 -1
- package/dist/0-face/calendar.js +6 -3
- package/dist/0-face/carousel.d.ts +9 -0
- package/dist/0-face/carousel.d.ts.map +1 -1
- package/dist/0-face/carousel.js +80 -0
- package/dist/0-face/constraint-panel.d.ts +43 -0
- package/dist/0-face/constraint-panel.d.ts.map +1 -0
- package/dist/0-face/constraint-panel.js +429 -0
- package/dist/0-face/constraint-site.d.ts +72 -0
- package/dist/0-face/constraint-site.d.ts.map +1 -0
- package/dist/0-face/constraint-site.js +185 -0
- package/dist/0-face/constraints.d.ts +47 -0
- package/dist/0-face/constraints.d.ts.map +1 -0
- package/dist/0-face/constraints.js +247 -0
- package/dist/0-face/copy-text.js +1 -1
- package/dist/0-face/cut-fade.d.ts +112 -0
- package/dist/0-face/cut-fade.d.ts.map +1 -0
- package/dist/0-face/cut-fade.js +274 -0
- package/dist/0-face/define.d.ts.map +1 -1
- package/dist/0-face/define.js +24 -3
- package/dist/0-face/face-correction.d.ts +51 -0
- package/dist/0-face/face-correction.d.ts.map +1 -0
- package/dist/0-face/face-correction.js +80 -0
- package/dist/0-face/failures.d.ts +16 -0
- package/dist/0-face/failures.d.ts.map +1 -0
- package/dist/0-face/failures.js +21 -0
- package/dist/0-face/feedback-overlays.d.ts.map +1 -1
- package/dist/0-face/feedback-overlays.js +5 -3
- package/dist/0-face/feedback.d.ts +2 -0
- package/dist/0-face/feedback.d.ts.map +1 -1
- package/dist/0-face/feedback.js +1 -0
- package/dist/0-face/focus.d.ts +71 -0
- package/dist/0-face/focus.d.ts.map +1 -0
- package/dist/0-face/focus.js +196 -0
- package/dist/0-face/grid.d.ts +11 -1
- package/dist/0-face/grid.d.ts.map +1 -1
- package/dist/0-face/grid.js +90 -4
- package/dist/0-face/i18n.d.ts.map +1 -1
- package/dist/0-face/i18n.js +38 -16
- package/dist/0-face/layout-inspector.d.ts +5 -1
- package/dist/0-face/layout-inspector.d.ts.map +1 -1
- package/dist/0-face/layout-inspector.js +130 -104
- package/dist/0-face/preference-options.d.ts +4 -0
- package/dist/0-face/preference-options.d.ts.map +1 -1
- package/dist/0-face/scaling.d.ts +8 -1
- package/dist/0-face/scaling.d.ts.map +1 -1
- package/dist/0-face/scaling.js +19 -2
- package/dist/0-face/shape.d.ts +35 -0
- package/dist/0-face/shape.d.ts.map +1 -0
- package/dist/0-face/shape.js +23 -0
- package/dist/0-face/text-contrast.d.ts +22 -0
- package/dist/0-face/text-contrast.d.ts.map +1 -0
- package/dist/0-face/text-contrast.js +178 -0
- package/dist/0-face/theme-bootstrap.js +56 -0
- package/dist/0-face/toast-queue.d.ts +4 -0
- package/dist/0-face/toast-queue.d.ts.map +1 -1
- package/dist/0-face/toast-queue.js +4 -1
- package/dist/0-face/translations/da.json +10 -1
- package/dist/0-face/translations/de.json +10 -1
- package/dist/0-face/translations/en.json +10 -1
- package/dist/0-face/translations/es.json +10 -1
- package/dist/0-face/translations/fi.json +10 -1
- package/dist/0-face/translations/fr.json +10 -1
- package/dist/0-face/translations/is.json +10 -1
- package/dist/0-face/translations/it.json +10 -1
- package/dist/0-face/translations/ja.json +10 -1
- package/dist/0-face/translations/ko.json +10 -1
- package/dist/0-face/translations/nb.json +10 -1
- package/dist/0-face/translations/pt-BR.json +10 -1
- package/dist/0-face/translations/pt.json +10 -1
- package/dist/0-face/translations/sv.json +10 -1
- package/dist/0-face/translations/zh.json +10 -1
- package/dist/0-face/word-wrap.d.ts +6 -0
- package/dist/0-face/word-wrap.d.ts.map +1 -0
- package/dist/0-face/word-wrap.js +119 -0
- package/dist/1-root/foundation.d.ts +12 -0
- package/dist/1-root/foundation.d.ts.map +1 -0
- package/dist/1-root/foundation.js +59 -0
- package/dist/2-core/button-split.d.ts +1 -0
- package/dist/2-core/button-split.d.ts.map +1 -1
- package/dist/2-core/button-split.js +9 -4
- package/dist/2-core/chart/grid-chart.d.ts +2 -0
- package/dist/2-core/chart/grid-chart.d.ts.map +1 -1
- package/dist/2-core/chart/grid-chart.js +2 -1
- package/dist/2-core/ds-activity.d.ts +25 -0
- package/dist/2-core/ds-activity.d.ts.map +1 -0
- package/dist/2-core/ds-activity.js +28 -0
- package/dist/2-core/ds-app-chrome.d.ts +2 -0
- package/dist/2-core/ds-app-chrome.d.ts.map +1 -0
- package/dist/2-core/ds-app-chrome.js +1 -0
- package/dist/2-core/ds-avatar.d.ts +7 -0
- package/dist/2-core/ds-avatar.d.ts.map +1 -1
- package/dist/2-core/ds-avatar.js +41 -6
- package/dist/2-core/ds-badge.d.ts +7 -1
- package/dist/2-core/ds-badge.d.ts.map +1 -1
- package/dist/2-core/ds-badge.js +8 -1
- package/dist/2-core/ds-button.d.ts +12 -0
- package/dist/2-core/ds-button.d.ts.map +1 -1
- package/dist/2-core/ds-button.js +4 -0
- package/dist/2-core/ds-chart.d.ts +28 -3
- package/dist/2-core/ds-chart.d.ts.map +1 -1
- package/dist/2-core/ds-chart.js +110 -130
- package/dist/2-core/ds-cycle.d.ts +2 -2
- package/dist/2-core/ds-cycle.d.ts.map +1 -1
- package/dist/2-core/ds-cycle.js +36 -171
- package/dist/2-core/ds-device-bezel.d.ts +2 -0
- package/dist/2-core/ds-device-bezel.d.ts.map +1 -0
- package/dist/2-core/ds-device-bezel.js +1 -0
- package/dist/2-core/ds-empty.d.ts +2 -2
- package/dist/2-core/ds-empty.d.ts.map +1 -1
- package/dist/2-core/ds-empty.js +6 -4
- package/dist/2-core/ds-input.d.ts +7 -0
- package/dist/2-core/ds-input.d.ts.map +1 -1
- package/dist/2-core/ds-input.js +23 -3
- package/dist/2-core/ds-message.d.ts +11 -0
- package/dist/2-core/ds-message.d.ts.map +1 -1
- package/dist/2-core/ds-message.js +18 -0
- package/dist/2-core/ds-number.d.ts +86 -0
- package/dist/2-core/ds-number.d.ts.map +1 -0
- package/dist/2-core/ds-number.js +326 -0
- package/dist/2-core/ds-progress.d.ts +3 -0
- package/dist/2-core/ds-progress.d.ts.map +1 -1
- package/dist/2-core/ds-progress.js +3 -0
- package/dist/2-core/ds-radio.d.ts +3 -0
- package/dist/2-core/ds-radio.d.ts.map +1 -1
- package/dist/2-core/ds-radio.js +10 -1
- package/dist/2-core/ds-stat.d.ts +3 -0
- package/dist/2-core/ds-stat.d.ts.map +1 -1
- package/dist/2-core/ds-stat.js +3 -0
- package/dist/2-core/ds-switch.d.ts +14 -1
- package/dist/2-core/ds-switch.d.ts.map +1 -1
- package/dist/2-core/ds-switch.js +3 -1
- package/dist/2-core/ds-tag.d.ts +8 -1
- package/dist/2-core/ds-tag.d.ts.map +1 -1
- package/dist/2-core/ds-tag.js +12 -2
- package/dist/2-core/ds-text.d.ts +7 -0
- package/dist/2-core/ds-text.d.ts.map +1 -1
- package/dist/2-core/ds-text.js +7 -0
- package/dist/2-core/ds-token.d.ts +3 -0
- package/dist/2-core/ds-token.d.ts.map +1 -1
- package/dist/2-core/ds-token.js +3 -0
- package/dist/2-core/ds-tooltip.d.ts.map +1 -1
- package/dist/2-core/ds-tooltip.js +23 -2
- package/dist/2-core/ds-window.d.ts +2 -0
- package/dist/2-core/ds-window.d.ts.map +1 -0
- package/dist/2-core/ds-window.js +1 -0
- package/dist/2-core/generated/ds-icon-map.d.ts +27 -6
- package/dist/2-core/generated/ds-icon-map.d.ts.map +1 -1
- package/dist/2-core/generated/ds-icon-map.js +47 -5
- package/dist/2-core/generated/icons-extra.d.ts.map +1 -1
- package/dist/2-core/generated/icons-extra.js +24 -3
- package/dist/2-core/generated/icons-immediate.d.ts +1 -1
- package/dist/2-core/generated/icons-immediate.d.ts.map +1 -1
- package/dist/2-core/generated/icons-immediate.js +3 -3
- package/dist/2-core/number-expression.d.ts +12 -0
- package/dist/2-core/number-expression.d.ts.map +1 -0
- package/dist/2-core/number-expression.js +82 -0
- package/dist/3-unit/calendar-base.d.ts +5 -0
- package/dist/3-unit/calendar-base.d.ts.map +1 -1
- package/dist/3-unit/calendar-base.js +3 -2
- package/dist/3-unit/ds-calendar.d.ts +197 -4
- package/dist/3-unit/ds-calendar.d.ts.map +1 -1
- package/dist/3-unit/ds-calendar.js +687 -45
- package/dist/3-unit/ds-carousel.d.ts +3 -0
- package/dist/3-unit/ds-carousel.d.ts.map +1 -1
- package/dist/3-unit/ds-carousel.js +13 -1
- package/dist/3-unit/ds-context.d.ts +18 -1
- package/dist/3-unit/ds-context.d.ts.map +1 -1
- package/dist/3-unit/ds-context.js +37 -1
- package/dist/3-unit/ds-form.d.ts +9 -0
- package/dist/3-unit/ds-form.d.ts.map +1 -1
- package/dist/3-unit/ds-form.js +50 -10
- package/dist/3-unit/ds-list.d.ts +20 -1
- package/dist/3-unit/ds-list.d.ts.map +1 -1
- package/dist/3-unit/ds-list.js +31 -3
- package/dist/3-unit/ds-matrix.d.ts +3 -0
- package/dist/3-unit/ds-matrix.d.ts.map +1 -1
- package/dist/3-unit/ds-matrix.js +3 -0
- package/dist/3-unit/ds-menu.d.ts.map +1 -1
- package/dist/3-unit/ds-menu.js +17 -1
- package/dist/3-unit/ds-row.d.ts +13 -0
- package/dist/3-unit/ds-row.d.ts.map +1 -1
- package/dist/3-unit/ds-row.js +15 -2
- package/dist/3-unit/ds-select.js +1 -1
- package/dist/3-unit/ds-sidebar.d.ts +17 -0
- package/dist/3-unit/ds-sidebar.d.ts.map +1 -1
- package/dist/3-unit/ds-sidebar.js +14 -3
- package/dist/3-unit/ds-table-of-contents.d.ts +68 -0
- package/dist/3-unit/ds-table-of-contents.d.ts.map +1 -0
- package/dist/3-unit/ds-table-of-contents.js +190 -0
- package/dist/3-unit/ds-tabs.d.ts +32 -1
- package/dist/3-unit/ds-tabs.d.ts.map +1 -1
- package/dist/3-unit/ds-tabs.js +39 -1
- package/dist/4-page/ds-document.d.ts +3 -0
- package/dist/4-page/ds-document.d.ts.map +1 -1
- package/dist/4-page/ds-document.js +3 -0
- package/dist/4-page/ds-footer.d.ts +47 -7
- package/dist/4-page/ds-footer.d.ts.map +1 -1
- package/dist/4-page/ds-footer.js +58 -14
- package/dist/4-page/ds-header.d.ts +6 -0
- package/dist/4-page/ds-header.d.ts.map +1 -1
- package/dist/4-page/ds-header.js +4 -1
- package/dist/4-page/ds-overlay.d.ts +2 -2
- package/dist/4-page/ds-overlay.d.ts.map +1 -1
- package/dist/4-page/ds-overlay.js +8 -3
- package/dist/4-page/ds-page.d.ts +12 -0
- package/dist/4-page/ds-page.d.ts.map +1 -1
- package/dist/4-page/ds-page.js +19 -1
- package/dist/4-page/email.d.ts +2 -0
- package/dist/4-page/email.d.ts.map +1 -1
- package/dist/4-page/email.js +5 -4
- package/dist/5-visual-kit/app-chrome.d.ts +98 -0
- package/dist/5-visual-kit/app-chrome.d.ts.map +1 -0
- package/dist/5-visual-kit/app-chrome.js +119 -0
- package/dist/5-visual-kit/bezels.d.ts +30 -0
- package/dist/5-visual-kit/bezels.d.ts.map +1 -0
- package/dist/5-visual-kit/bezels.js +388 -0
- package/dist/5-visual-kit/browser-icons.d.ts +5 -0
- package/dist/5-visual-kit/browser-icons.d.ts.map +1 -0
- package/dist/5-visual-kit/browser-icons.js +51 -0
- package/dist/5-visual-kit/browser-styles.d.ts +3 -0
- package/dist/5-visual-kit/browser-styles.d.ts.map +1 -0
- package/dist/5-visual-kit/browser-styles.js +52 -0
- package/dist/5-visual-kit/device-bezel.d.ts +84 -0
- package/dist/5-visual-kit/device-bezel.d.ts.map +1 -0
- package/dist/5-visual-kit/device-bezel.js +56 -0
- package/dist/5-visual-kit/instagram-frame.d.ts +8 -0
- package/dist/5-visual-kit/instagram-frame.d.ts.map +1 -0
- package/dist/5-visual-kit/instagram-frame.js +13 -0
- package/dist/5-visual-kit/instagram.d.ts +18 -0
- package/dist/5-visual-kit/instagram.d.ts.map +1 -0
- package/dist/5-visual-kit/instagram.js +39 -0
- package/dist/5-visual-kit/mobile-chrome.d.ts +4 -0
- package/dist/5-visual-kit/mobile-chrome.d.ts.map +1 -0
- package/dist/5-visual-kit/mobile-chrome.js +24 -0
- package/dist/5-visual-kit/native-icon-paths.d.ts +146 -0
- package/dist/5-visual-kit/native-icon-paths.d.ts.map +1 -0
- package/dist/5-visual-kit/native-icon-paths.js +145 -0
- package/dist/5-visual-kit/window.d.ts +51 -0
- package/dist/5-visual-kit/window.d.ts.map +1 -0
- package/dist/5-visual-kit/window.js +20 -0
- package/dist/browser-icons-BFbS1tIx.js +56 -0
- package/dist/browser-icons-BFbS1tIx.js.map +1 -0
- package/dist/browser-icons-CT8qU77Z.js +48 -0
- package/dist/browser-icons-CT8qU77Z.js.map +1 -0
- package/dist/components.d.ts +1 -0
- package/dist/components.d.ts.map +1 -1
- package/dist/components.js +1 -0
- package/dist/design-system-1.bundle.js +5514 -2077
- package/dist/design-system-1.bundle.js.map +1 -1
- package/dist/design-system-1.bundle.min.js +7026 -4628
- package/dist/design-system-1.bundle.min.js.map +1 -1
- package/dist/design-system-1.css +1 -1
- package/dist/feedback.js +197 -167
- package/dist/feedback.js.map +1 -1
- package/dist/{icons-extra-CRxxWFjX.js → icons-extra-BMPvmQPI.js} +25 -4
- package/dist/icons-extra-BMPvmQPI.js.map +1 -0
- package/dist/{icons-extra-H5pqCM_R.js → icons-extra-BfYOw-cR.js} +83 -5
- package/dist/icons-extra-BfYOw-cR.js.map +1 -0
- package/dist/index.d.ts +12 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -1
- package/dist/instagram-CKofs55A.js +50 -0
- package/dist/instagram-CKofs55A.js.map +1 -0
- package/dist/instagram-CcYf5oiM.js +48 -0
- package/dist/instagram-CcYf5oiM.js.map +1 -0
- package/dist/lit-Ce_uWYM4.js +612 -0
- package/dist/lit-Ce_uWYM4.js.map +1 -0
- package/dist/lit-DGUVm1Ce.js +557 -0
- package/dist/lit-DGUVm1Ce.js.map +1 -0
- package/dist/native-icon-paths-CB9evXBM.js +93 -0
- package/dist/native-icon-paths-CB9evXBM.js.map +1 -0
- package/dist/native-icon-paths-zay-3g_n.js +150 -0
- package/dist/native-icon-paths-zay-3g_n.js.map +1 -0
- package/dist/react/avatar.d.ts +1 -1
- package/dist/react/choice.d.ts +4 -0
- package/dist/react/choice.d.ts.map +1 -1
- package/dist/react/choice.js +2 -2
- package/dist/react/context.d.ts +19 -4
- package/dist/react/context.d.ts.map +1 -1
- package/dist/react/context.js +4 -4
- package/dist/react/empty.d.ts +2 -2
- package/dist/react/empty.d.ts.map +1 -1
- package/dist/react/empty.js +1 -1
- package/dist/react/footer.d.ts +5 -5
- package/dist/react/footer.d.ts.map +1 -1
- package/dist/react/footer.js +2 -2
- package/dist/react/header.d.ts +2 -2
- package/dist/react/header.d.ts.map +1 -1
- package/dist/react/message.d.ts +4 -0
- package/dist/react/message.d.ts.map +1 -1
- package/dist/react/message.js +2 -2
- package/dist/react/number.d.ts +53 -0
- package/dist/react/number.d.ts.map +1 -0
- package/dist/react/number.js +25 -0
- package/dist/react/page.d.ts +1 -1
- package/dist/react/sidebar.d.ts +4 -0
- package/dist/react/sidebar.d.ts.map +1 -1
- package/dist/react/sidebar.js +2 -2
- package/dist/react/table-of-contents.d.ts +19 -0
- package/dist/react/table-of-contents.d.ts.map +1 -0
- package/dist/react/table-of-contents.js +28 -0
- package/dist/{shared-words-CdMDVtXx.js → shared-words-C5cjxMjZ.js} +151 -16
- package/dist/shared-words-C5cjxMjZ.js.map +1 -0
- package/dist/{shared-words-BtRee8xR.js → shared-words-Cdm7xd-_.js} +163 -28
- package/dist/shared-words-Cdm7xd-_.js.map +1 -0
- package/package.json +23 -12
- package/DS1/3-unit/ds-calendar-large.ts +0 -353
- package/DS1/3-unit/styles/ds-calendar-large.css +0 -178
- package/dist/3-unit/ds-calendar-large.d.ts +0 -142
- package/dist/3-unit/ds-calendar-large.d.ts.map +0 -1
- package/dist/3-unit/ds-calendar-large.js +0 -308
- package/dist/icons-extra-CRxxWFjX.js.map +0 -1
- package/dist/icons-extra-H5pqCM_R.js.map +0 -1
- package/dist/shared-words-BtRee8xR.js.map +0 -1
- package/dist/shared-words-CdMDVtXx.js.map +0 -1
package/DS1/1-root/footer.css
CHANGED
|
@@ -4,13 +4,19 @@
|
|
|
4
4
|
* A site footer, as plain classes on native elements.
|
|
5
5
|
*
|
|
6
6
|
* The brand and its line at the start, twelve squares wide; the columns of
|
|
7
|
-
* links beside it, eight squares each
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
7
|
+
* links beside it, eight squares each (or the whole squares a column names in
|
|
8
|
+
* `--ds-footer-column-width`), two squares apart; then, two squares below, the
|
|
9
|
+
* legal line at the start, the policies under it as secondary buttons, and the
|
|
10
|
+
* preferences (language and theme, as `ds-cycle` or native buttons) at the
|
|
11
|
+
* end. Every line is one square, the column headings in the title grey, the
|
|
12
|
+
* links in the text's ink with a faint hairline under the pointer. A column of
|
|
13
|
+
* contact lines mixes words alone (`<span>`) with links: its links, and a
|
|
14
|
+
* heading that is a link, are underlined as `.ds-link` is. A stacked column
|
|
15
|
+
* (`--stack`) draws its icon links as round marks one control high, one a
|
|
16
|
+
* line, one square wide at the end of the row. A hairline runs along its top.
|
|
17
|
+
* Columns that do not fit beside the brand go below it, and on a narrow screen
|
|
18
|
+
* everything stands in one column. The `ds-footer` element draws the same
|
|
19
|
+
* parts from data.
|
|
14
20
|
*
|
|
15
21
|
* ds-footer the block, a <footer>
|
|
16
22
|
* ds-footer__brand the mark and its line
|
|
@@ -18,13 +24,19 @@
|
|
|
18
24
|
* ds-footer__tagline a line about the site, muted
|
|
19
25
|
* ds-footer__columns the columns, a <nav> or <div>
|
|
20
26
|
* ds-footer__column one column: a heading and its links
|
|
21
|
-
* ds-
|
|
22
|
-
* ds-
|
|
27
|
+
* ds-footer__column--stack a column of round marks, one square wide at the row's end
|
|
28
|
+
* ds-footer__heading the column's heading, one line in the title grey, or an <a> in it
|
|
29
|
+
* ds-footer__icons a column's icon links, a row of marks (a stack in --stack)
|
|
30
|
+
* ds-footer__links the lines, a <ul> with one <a> or <span> per <li>
|
|
23
31
|
* ds-footer__base the last row, two squares below
|
|
24
32
|
* ds-footer__legal in it, the copyright and legal line, muted
|
|
33
|
+
* ds-footer__policies under it, links as secondary buttons (a.ds-button.ds-button--secondary)
|
|
25
34
|
* ds-footer__preferences in it, the language and theme controls, at its end
|
|
26
35
|
*
|
|
27
|
-
* Tokens: `--ds-footer-line` (the hairline along the top)
|
|
36
|
+
* Tokens: `--ds-footer-line` (the hairline along the top),
|
|
37
|
+
* `--ds-footer-column-width` (a column's width in squares, 8),
|
|
38
|
+
* `--ds-footer-mark-background` and `--ds-footer-mark-color` (a round mark's
|
|
39
|
+
* disc and glyph: the ink and the paper).
|
|
28
40
|
*/
|
|
29
41
|
|
|
30
42
|
.ds-footer {
|
|
@@ -96,7 +108,7 @@
|
|
|
96
108
|
|
|
97
109
|
.ds-footer__column {
|
|
98
110
|
display: flex;
|
|
99
|
-
flex: 0 0 calc(8 * var(--ds-unit));
|
|
111
|
+
flex: 0 0 calc(var(--ds-footer-column-width, 8) * var(--ds-unit));
|
|
100
112
|
flex-direction: column;
|
|
101
113
|
max-width: 100%;
|
|
102
114
|
min-width: 0;
|
|
@@ -116,7 +128,8 @@
|
|
|
116
128
|
padding: 0;
|
|
117
129
|
}
|
|
118
130
|
|
|
119
|
-
.ds-footer__links
|
|
131
|
+
.ds-footer__links > li > *,
|
|
132
|
+
.ds-footer__heading > a {
|
|
120
133
|
display: inline-block;
|
|
121
134
|
max-width: 100%;
|
|
122
135
|
overflow: hidden;
|
|
@@ -124,36 +137,146 @@
|
|
|
124
137
|
text-decoration-line: underline;
|
|
125
138
|
text-decoration-thickness: 1px;
|
|
126
139
|
text-decoration-color: transparent;
|
|
127
|
-
text-overflow:
|
|
140
|
+
text-overflow: clip;
|
|
128
141
|
text-underline-offset: calc(2px * var(--ds-sf));
|
|
129
142
|
vertical-align: top;
|
|
130
143
|
white-space: nowrap;
|
|
131
144
|
}
|
|
132
145
|
|
|
146
|
+
/* A cut line fades over its last square, never an ellipsis (0-face/cut-fade.ts marks it). */
|
|
147
|
+
:is(.ds-footer__links > li > *, .ds-footer__heading > a)[data-cut="end"] {
|
|
148
|
+
mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-unit)), transparent);
|
|
149
|
+
}
|
|
150
|
+
:is(.ds-footer__links > li > *, .ds-footer__heading > a)[data-cut="end"]:dir(rtl) {
|
|
151
|
+
mask-image: linear-gradient(to left, #000 calc(100% - var(--ds-unit)), transparent);
|
|
152
|
+
}
|
|
153
|
+
|
|
133
154
|
.ds-footer__links a:hover {
|
|
134
155
|
text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
|
|
135
156
|
}
|
|
136
157
|
|
|
158
|
+
/* Among words alone (a contact column) a link, and a heading that is a link, is
|
|
159
|
+
underlined as .ds-link is: the text's ink, a hairline 40% of it, full under the pointer. */
|
|
160
|
+
.ds-footer .ds-footer__heading > a,
|
|
161
|
+
.ds-footer__links:has(> li > :not(a)) a {
|
|
162
|
+
color: var(--ds-text-color);
|
|
163
|
+
text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
:is(.ds-footer__heading > a, .ds-footer__links:has(> li > :not(a)) a):hover {
|
|
167
|
+
text-decoration-color: currentColor;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/* A column's icon links (a brand's marks: Instagram, Facebook, LinkedIn) stand first, in a row of
|
|
171
|
+
their own one square high, each mark a whole square, half a square apart, named by its label. */
|
|
172
|
+
.ds-footer .ds-footer__icons {
|
|
173
|
+
display: flex;
|
|
174
|
+
flex-wrap: wrap;
|
|
175
|
+
gap: 0 calc(var(--ds-unit) / 2);
|
|
176
|
+
margin: 0;
|
|
177
|
+
padding: 0;
|
|
178
|
+
list-style: none;
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
.ds-footer__icons li {
|
|
182
|
+
margin: 0;
|
|
183
|
+
padding: 0;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
.ds-footer__icons a {
|
|
187
|
+
display: flex;
|
|
188
|
+
align-items: flex-end;
|
|
189
|
+
height: var(--ds-unit);
|
|
190
|
+
color: inherit;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
.ds-footer__icons .ds-icon {
|
|
194
|
+
--ds-icon-size: 20px;
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
.ds-footer__icons a:hover {
|
|
198
|
+
color: var(--ds-text-color-muted);
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
/* A stacked column: its marks one a line at the end of the row, each a round
|
|
202
|
+
disc one control high in the ink on the sixteen of its square, the glyph in
|
|
203
|
+
the paper's colour, flush with the square's start. */
|
|
204
|
+
.ds-footer .ds-footer__column--stack {
|
|
205
|
+
flex: 0 0 var(--ds-unit);
|
|
206
|
+
margin-inline-start: auto;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
.ds-footer__column--stack .ds-footer__icons {
|
|
210
|
+
flex-direction: column;
|
|
211
|
+
flex-wrap: nowrap;
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.ds-footer__column--stack .ds-footer__icons li {
|
|
215
|
+
display: flex;
|
|
216
|
+
align-items: flex-end;
|
|
217
|
+
height: var(--ds-unit);
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.ds-footer__column--stack .ds-footer__icons a {
|
|
221
|
+
display: grid;
|
|
222
|
+
place-items: center;
|
|
223
|
+
width: var(--ds-control-height);
|
|
224
|
+
height: var(--ds-control-height);
|
|
225
|
+
border-radius: 50%;
|
|
226
|
+
corner-shape: round;
|
|
227
|
+
background: var(--ds-footer-mark-background, var(--ds-text-color));
|
|
228
|
+
color: var(--ds-footer-mark-color, light-dark(var(--ds-white), var(--ds-black)));
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
.ds-footer__column--stack .ds-footer__icons .ds-icon {
|
|
232
|
+
--ds-icon-size: 14px;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
.ds-footer__column--stack .ds-footer__icons a:hover {
|
|
236
|
+
background: var(--ds-text-color-muted);
|
|
237
|
+
color: var(--ds-footer-mark-color, light-dark(var(--ds-white), var(--ds-black)));
|
|
238
|
+
}
|
|
239
|
+
|
|
137
240
|
.ds-footer__links a[aria-current]:not([aria-current="false"]) {
|
|
138
241
|
text-decoration-color: currentColor;
|
|
139
242
|
}
|
|
140
243
|
|
|
141
|
-
:is(.ds-footer__links a, .ds-footer__mark):focus-visible {
|
|
244
|
+
:is(.ds-footer__links a, .ds-footer__heading a, .ds-footer__icons a, .ds-footer__mark):focus-visible {
|
|
142
245
|
outline: 2px solid var(--ds-focus-ring);
|
|
143
246
|
outline-offset: 1px;
|
|
144
247
|
}
|
|
145
248
|
|
|
146
249
|
/* The last row, two squares below: the legal line at the start, the
|
|
147
|
-
preferences at the end; on a narrow
|
|
250
|
+
policies on the square under it, the preferences at the end; on a narrow
|
|
251
|
+
screen the preferences go first, a square above the legal line. */
|
|
148
252
|
.ds-footer__base {
|
|
149
253
|
display: flex;
|
|
150
254
|
flex: 0 0 100%;
|
|
151
255
|
flex-wrap: wrap;
|
|
152
256
|
align-items: flex-start;
|
|
153
|
-
gap:
|
|
257
|
+
gap: 0 calc(2 * var(--ds-unit));
|
|
154
258
|
min-width: 0;
|
|
155
259
|
}
|
|
156
260
|
|
|
261
|
+
.ds-footer .ds-footer__policies {
|
|
262
|
+
display: flex;
|
|
263
|
+
flex: 0 0 100%;
|
|
264
|
+
flex-wrap: wrap;
|
|
265
|
+
order: 1;
|
|
266
|
+
gap: 0 calc(var(--ds-unit) / 2);
|
|
267
|
+
margin: 0;
|
|
268
|
+
padding: 0;
|
|
269
|
+
list-style: none;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
.ds-footer__policies li {
|
|
273
|
+
display: flex;
|
|
274
|
+
align-items: flex-end;
|
|
275
|
+
height: var(--ds-unit);
|
|
276
|
+
margin: 0;
|
|
277
|
+
padding: 0;
|
|
278
|
+
}
|
|
279
|
+
|
|
157
280
|
.ds-footer__legal {
|
|
158
281
|
flex: 1 1 auto;
|
|
159
282
|
min-width: 0;
|
|
@@ -183,4 +306,12 @@
|
|
|
183
306
|
order: -1;
|
|
184
307
|
margin-inline-start: 0;
|
|
185
308
|
}
|
|
309
|
+
|
|
310
|
+
.ds-footer__preferences:not([hidden]) {
|
|
311
|
+
margin-block-end: var(--ds-unit);
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
.ds-footer .ds-footer__policies {
|
|
315
|
+
flex-basis: auto;
|
|
316
|
+
}
|
|
186
317
|
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { measures } from './measures';
|
|
2
|
+
|
|
3
|
+
/** Shared geometry belongs to the foundation, not to a design library's appearance.
|
|
4
|
+
* These are unscaled inputs; device scaling and resolved component metrics stay shared.
|
|
5
|
+
* Rendered constraints still check layout, contrast, labels and font alignment.
|
|
6
|
+
*/
|
|
7
|
+
export const FOUNDATION_TOKENS: Readonly<Record<string, string>> = {
|
|
8
|
+
'--ds-1': `${measures.square}px`,
|
|
9
|
+
'--one-unit': `${measures.square}px`,
|
|
10
|
+
'--ds-control-size': `${measures.control}px`,
|
|
11
|
+
'--one-control-height': `${measures.control}px`,
|
|
12
|
+
'--ds-row-size': `${measures.row}px`,
|
|
13
|
+
'--ds-text-leading': `${measures.leading}px`,
|
|
14
|
+
'--ds-08': 'calc(var(--ds-1) * 0.8)',
|
|
15
|
+
'--ds-unit': 'calc(var(--ds-1, 20px) * var(--ds-sf, 1))',
|
|
16
|
+
'--ds-control-height': 'calc(var(--ds-control-size, var(--ds-08, 16px)) * var(--ds-sf, 1))',
|
|
17
|
+
'--ds-row-height': 'calc(var(--ds-row-size, var(--ds-1, 20px)) * var(--ds-sf, 1))',
|
|
18
|
+
'--ds-type-lineheight-default': 'calc(var(--ds-text-leading, 16px) * var(--ds-sf, 1))',
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
/** The squares a design may stand on: the default 20px, a finer 10px for tuning, or a coarser 30px. */
|
|
22
|
+
export const SUPPORTED_UNITS = [10, measures.square, 30] as const;
|
|
23
|
+
/** The finest supported square: rows stand on whole multiples of it. */
|
|
24
|
+
const finest = Math.min(...SUPPORTED_UNITS);
|
|
25
|
+
/** A control is its row less the spare four, as the default 16px control sits in its 20px row. */
|
|
26
|
+
const spare = measures.square - measures.control;
|
|
27
|
+
|
|
28
|
+
const onTens = (px: number) => px > 0 && px % finest === 0;
|
|
29
|
+
/** A control fills whole squares, or stands in them less the spare four. */
|
|
30
|
+
const controlOnTens = (px: number) => px >= measures.control && (onTens(px) || onTens(px + spare));
|
|
31
|
+
/** A line of text's box keeps to the spare four, from the default 16px up. */
|
|
32
|
+
const leadingOnFours = (px: number) => px >= measures.leading && px % spare === 0;
|
|
33
|
+
|
|
34
|
+
/** The geometry inputs a design may set within the foundation, with the values they accept. */
|
|
35
|
+
const SCALES: Readonly<Record<string, { allows: (px: number) => boolean; words: string }>> = {
|
|
36
|
+
'--ds-1': { allows: (px) => (SUPPORTED_UNITS as readonly number[]).includes(px), words: `one of ${SUPPORTED_UNITS.join(', ')}px` },
|
|
37
|
+
'--one-unit': { allows: (px) => (SUPPORTED_UNITS as readonly number[]).includes(px), words: `one of ${SUPPORTED_UNITS.join(', ')}px` },
|
|
38
|
+
'--ds-row-size': { allows: onTens, words: `a whole number of ${finest}px squares` },
|
|
39
|
+
'--ds-control-size': { allows: controlOnTens, words: `whole ${finest}px squares, or those less ${spare}px, ${measures.control}px or more` },
|
|
40
|
+
'--one-control-height': { allows: controlOnTens, words: `whole ${finest}px squares, or those less ${spare}px, ${measures.control}px or more` },
|
|
41
|
+
'--ds-text-leading': { allows: leadingOnFours, words: `a multiple of ${spare}px, ${measures.leading}px or more` },
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
/** A foundation input a design may change within its supported scales, rather than one fixed. */
|
|
45
|
+
export const foundationScale = (name: string) => name in SCALES;
|
|
46
|
+
|
|
47
|
+
/** A design can repeat a foundation default or choose a supported scale; anything else requires a foundation release. */
|
|
48
|
+
export function foundationTokenIssue(name: string, value: string): string | undefined {
|
|
49
|
+
const expected = FOUNDATION_TOKENS[name];
|
|
50
|
+
if (!expected) return;
|
|
51
|
+
if (value.replace(/\s/g, '') === expected.replace(/\s/g, '')) return;
|
|
52
|
+
// The published compatibility bridge derives these inputs from protected library tokens.
|
|
53
|
+
if ((name === '--ds-1' && value.trim() === 'var(--one-unit)') ||
|
|
54
|
+
(name === '--ds-control-size' && value.trim() === 'var(--one-control-height)')) return;
|
|
55
|
+
const literal = /^([0-9]+(?:\.[0-9]+)?)px$/i.exec(value.trim());
|
|
56
|
+
const scale = SCALES[name];
|
|
57
|
+
if (literal && (scale ? scale.allows(Number(literal[1])) : Number(literal[1]) === Number.parseFloat(expected))) return;
|
|
58
|
+
if (scale) return `${name} belongs to the shared foundation and must be ${scale.words}. Change colours, fonts and appearance within its constraints.`;
|
|
59
|
+
return `${name} belongs to the shared foundation and must stay ${expected}. Change colours, fonts and appearance within its constraints.`;
|
|
60
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/* Product guides: semantic prose beside real, captioned device examples.
|
|
2
|
+
Load after the foundation and before product styles. Device chrome stays
|
|
3
|
+
in ds-device-bezel and ds-window; screenshots and words belong to the app. */
|
|
4
|
+
.ds-guide { --ds-guide-read: calc(32 * var(--ds-unit)); --ds-title-color: var(--ds-text-color-muted); }
|
|
5
|
+
.ds-guide .ds-guide-footer { color: var(--ds-text-color-muted); }
|
|
6
|
+
.ds-guide-illustrated {
|
|
7
|
+
display: grid;
|
|
8
|
+
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
|
|
9
|
+
align-items: start;
|
|
10
|
+
gap: calc(2 * var(--ds-unit));
|
|
11
|
+
min-width: 0;
|
|
12
|
+
}
|
|
13
|
+
.ds-guide-illustrated--phone {
|
|
14
|
+
grid-template-columns: minmax(0, calc(14 * var(--ds-unit))) minmax(0, var(--ds-guide-read));
|
|
15
|
+
}
|
|
16
|
+
.ds-guide-words { min-width: 0; max-width: var(--ds-guide-read); }
|
|
17
|
+
.ds-guide-example { min-width: 0; margin: 0; }
|
|
18
|
+
.ds-guide-example img { display: block; width: 100%; height: auto; }
|
|
19
|
+
.ds-guide-example figcaption {
|
|
20
|
+
margin-top: var(--ds-unit);
|
|
21
|
+
font-size: calc(12px * var(--ds-sf, 1));
|
|
22
|
+
line-height: var(--ds-unit);
|
|
23
|
+
color: var(--ds-text-color-muted);
|
|
24
|
+
}
|
|
25
|
+
.ds-guide-example-note { display: block; margin-top: calc(var(--ds-unit) / 2); }
|
|
26
|
+
.ds-guide-example--phone { width: calc(14 * var(--ds-unit)); max-width: 100%; }
|
|
27
|
+
.ds-guide .aa-partial { display: inline-block; vertical-align: baseline; max-width: 100%; }
|
|
28
|
+
.ds-guide .aa-partial > ds-button { pointer-events: none; }
|
|
29
|
+
@media (max-width: 1199px) {
|
|
30
|
+
.ds-guide-illustrated:not(.ds-guide-illustrated--phone) { grid-template-columns: minmax(0, 1fr); }
|
|
31
|
+
}
|
|
32
|
+
@media (max-width: 680px) {
|
|
33
|
+
.ds-guide-illustrated--phone { grid-template-columns: minmax(0, 1fr); }
|
|
34
|
+
.ds-guide-example--phone { position: static; margin-inline: auto; }
|
|
35
|
+
}
|
package/DS1/1-root/header.css
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
* A site header, as plain classes on native elements.
|
|
6
6
|
*
|
|
7
7
|
* One row of one square, a square of room around it: the brand at the start
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* (at least twelve squares), the navigation in the middle of the row, centred
|
|
9
|
+
* on the page whatever the brand and the actions hold, the actions at the end:
|
|
10
|
+
* three columns, the two outer ones sharing what the middle leaves. Every link is
|
|
10
11
|
* one square high, a square apart, in the text's ink; the page you are on
|
|
11
12
|
* (`aria-current="page"`) stands on a hairline of the full ink, the others
|
|
12
13
|
* show a faint one under the pointer. Below thirty squares of width the
|
|
@@ -30,7 +31,8 @@
|
|
|
30
31
|
.ds-header {
|
|
31
32
|
box-sizing: border-box;
|
|
32
33
|
container-type: inline-size;
|
|
33
|
-
display:
|
|
34
|
+
display: grid;
|
|
35
|
+
grid-template-columns: minmax(max-content, 1fr) auto minmax(max-content, 1fr);
|
|
34
36
|
align-items: center;
|
|
35
37
|
gap: calc(2 * var(--ds-unit));
|
|
36
38
|
min-width: 0;
|
|
@@ -56,6 +58,8 @@
|
|
|
56
58
|
|
|
57
59
|
.ds-header__brand {
|
|
58
60
|
box-sizing: border-box;
|
|
61
|
+
grid-column: 1;
|
|
62
|
+
justify-self: start;
|
|
59
63
|
display: inline-flex;
|
|
60
64
|
flex: 0 0 auto;
|
|
61
65
|
min-width: var(--ds-header-brand, calc(12 * var(--ds-unit)));
|
|
@@ -85,17 +89,18 @@
|
|
|
85
89
|
padding: 0;
|
|
86
90
|
}
|
|
87
91
|
|
|
88
|
-
.ds-header__nav {
|
|
89
|
-
|
|
92
|
+
.ds-header > .ds-header__nav {
|
|
93
|
+
grid-column: 2;
|
|
94
|
+
justify-content: center;
|
|
90
95
|
flex-wrap: wrap;
|
|
91
96
|
row-gap: 0;
|
|
92
97
|
}
|
|
93
98
|
|
|
94
|
-
.ds-header__actions {
|
|
95
|
-
|
|
99
|
+
.ds-header > .ds-header__actions {
|
|
100
|
+
grid-column: 3;
|
|
101
|
+
justify-self: end;
|
|
96
102
|
justify-content: flex-end;
|
|
97
103
|
gap: calc(var(--ds-unit) / 2);
|
|
98
|
-
margin-inline-start: auto;
|
|
99
104
|
}
|
|
100
105
|
|
|
101
106
|
/* A link in the navigation: the text's ink on a one-square line. */
|
|
@@ -128,7 +133,8 @@
|
|
|
128
133
|
Two classes, so the button's own display and margin do not undo it. */
|
|
129
134
|
.ds-header > .ds-header__toggle {
|
|
130
135
|
display: none;
|
|
131
|
-
|
|
136
|
+
grid-column: 3;
|
|
137
|
+
justify-self: end;
|
|
132
138
|
/* Centred in the last square of the row, where the close button stands too. */
|
|
133
139
|
margin-inline-end: calc((var(--ds-unit) - var(--ds-control-height)) / 2);
|
|
134
140
|
}
|
|
@@ -163,3 +169,18 @@
|
|
|
163
169
|
flex-wrap: wrap;
|
|
164
170
|
gap: calc(var(--ds-unit) / 2);
|
|
165
171
|
}
|
|
172
|
+
|
|
173
|
+
/* App title bar: two squares high, one square inset, regular title and a hairline. */
|
|
174
|
+
.ds-header--app {
|
|
175
|
+
height: calc(2 * var(--ds-unit));
|
|
176
|
+
min-height: calc(2 * var(--ds-unit));
|
|
177
|
+
padding: 0 var(--ds-unit);
|
|
178
|
+
gap: var(--ds-unit);
|
|
179
|
+
background: var(--ds-header-paper, var(--background, Canvas));
|
|
180
|
+
box-shadow: inset 0 -1px var(--ds-header-line, var(--ds-border-color));
|
|
181
|
+
}
|
|
182
|
+
.ds-header--app .ds-header__brand {
|
|
183
|
+
min-width: 0;
|
|
184
|
+
font-family: var(--ds-typeface-regular);
|
|
185
|
+
font-weight: var(--ds-type-weight-default);
|
|
186
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/* Opt-in surface finishes. Load after one.css. Materials paint only their
|
|
2
|
+
* own background: no extra elements, text filters, layout or runtime. */
|
|
3
|
+
:where([data-ds-material="solid"], [data-ds-material="paper"], [data-ds-material="glass"], [data-ds-material="wash"]) {
|
|
4
|
+
color: var(--ds-material-ink, var(--ds-text-color));
|
|
5
|
+
background-color: var(--ds-material-base, var(--ds-paper));
|
|
6
|
+
background-image: none;
|
|
7
|
+
background-repeat: repeat;
|
|
8
|
+
background-size: auto;
|
|
9
|
+
-webkit-backdrop-filter: none;
|
|
10
|
+
backdrop-filter: none;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
:where([data-ds-material="paper"]) {
|
|
14
|
+
background-color: color-mix(in srgb, var(--ds-material-base, var(--ds-paper)) 97%, var(--ds-orange));
|
|
15
|
+
/* paper-tile:start */
|
|
16
|
+
background-image: url("data:image/png;base64,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");
|
|
17
|
+
/* paper-tile:end */
|
|
18
|
+
background-size: calc(128px * var(--ds-sf, 1)) calc(128px * var(--ds-sf, 1));
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:where([data-ds-material="wash"]) {
|
|
22
|
+
background-color: color-mix(in srgb, var(--ds-material-base, var(--ds-paper)) 92%, var(--ds-material-tint, var(--ds-sharp-blue)));
|
|
23
|
+
background-image: linear-gradient(180deg, color-mix(in srgb, var(--ds-material-tint, var(--ds-sharp-blue)) 6%, transparent), transparent);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/* Opaque unless blur is supported. Keep blur small and constant; never animate
|
|
27
|
+
* it or stack it. Tint leaves text legible over a changing backdrop. */
|
|
28
|
+
@supports ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
|
|
29
|
+
:where([data-ds-material="glass"]) {
|
|
30
|
+
background-color: color-mix(in srgb, var(--ds-material-base, var(--ds-paper)) 88%, transparent);
|
|
31
|
+
-webkit-backdrop-filter: blur(8px);
|
|
32
|
+
backdrop-filter: blur(8px);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/* An inner pane does not add another backdrop pass. */
|
|
37
|
+
:where([data-ds-material="glass"] [data-ds-material="glass"]) {
|
|
38
|
+
background-color: var(--ds-material-base, var(--ds-paper));
|
|
39
|
+
-webkit-backdrop-filter: none;
|
|
40
|
+
backdrop-filter: none;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/* A product may disable effects on one surface or on a whole subtree. */
|
|
44
|
+
:where([data-ds-material-effects="off"][data-ds-material], [data-ds-material-effects="off"] [data-ds-material]) {
|
|
45
|
+
background-color: var(--ds-material-base, var(--ds-paper));
|
|
46
|
+
background-image: none;
|
|
47
|
+
-webkit-backdrop-filter: none;
|
|
48
|
+
backdrop-filter: none;
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@media (prefers-reduced-transparency: reduce), (prefers-contrast: more), print {
|
|
52
|
+
:where([data-ds-material]) {
|
|
53
|
+
background-color: var(--ds-material-base, var(--ds-paper));
|
|
54
|
+
background-image: none;
|
|
55
|
+
-webkit-backdrop-filter: none;
|
|
56
|
+
backdrop-filter: none;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
@media (forced-colors: active) {
|
|
61
|
+
:where([data-ds-material]) {
|
|
62
|
+
color: CanvasText;
|
|
63
|
+
background: Canvas;
|
|
64
|
+
-webkit-backdrop-filter: none;
|
|
65
|
+
backdrop-filter: none;
|
|
66
|
+
}
|
|
67
|
+
}
|
package/DS1/1-root/notice.css
CHANGED
|
@@ -158,7 +158,15 @@
|
|
|
158
158
|
min-width: 0;
|
|
159
159
|
white-space: nowrap;
|
|
160
160
|
overflow: hidden;
|
|
161
|
-
text-overflow:
|
|
161
|
+
text-overflow: clip;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/* Cut words fade over their last square, never an ellipsis (0-face/cut-fade.ts marks them). */
|
|
165
|
+
:is(.ds-notice--banner, .ds-notice--app) :is(.ds-notice__title, .ds-notice__text)[data-cut="end"] {
|
|
166
|
+
mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-unit)), transparent);
|
|
167
|
+
}
|
|
168
|
+
:is(.ds-notice--banner, .ds-notice--app) :is(.ds-notice__title, .ds-notice__text)[data-cut="end"]:dir(rtl) {
|
|
169
|
+
mask-image: linear-gradient(to left, #000 calc(100% - var(--ds-unit)), transparent);
|
|
162
170
|
}
|
|
163
171
|
|
|
164
172
|
.ds-notice--banner .ds-notice__text {
|
|
@@ -219,7 +227,7 @@
|
|
|
219
227
|
grid-column: 2;
|
|
220
228
|
white-space: nowrap;
|
|
221
229
|
overflow: hidden;
|
|
222
|
-
text-overflow:
|
|
230
|
+
text-overflow: clip;
|
|
223
231
|
}
|
|
224
232
|
|
|
225
233
|
.ds-notice--app .ds-notice__title { grid-row: 1; }
|
package/DS1/1-root/one.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* version 0.3.0
|
|
1
|
+
/* version 0.3.0 */
|
|
2
2
|
|
|
3
3
|
@import "./grid.css";
|
|
4
4
|
@import "./component-tokens.css";
|
|
@@ -246,7 +246,7 @@ body {
|
|
|
246
246
|
}
|
|
247
247
|
|
|
248
248
|
.ds-input::placeholder {
|
|
249
|
-
color: var(--
|
|
249
|
+
color: var(--ds-input-placeholder-color, var(--ds-text-color-muted));
|
|
250
250
|
}
|
|
251
251
|
|
|
252
252
|
.ds-card {
|
|
@@ -431,8 +431,7 @@ body {
|
|
|
431
431
|
}
|
|
432
432
|
|
|
433
433
|
.header.dragging {
|
|
434
|
-
outline: calc(
|
|
435
|
-
outline-offset: calc(var(--outline-stroke-offset) * var(--sf));
|
|
434
|
+
outline: calc(1px * var(--sf)) solid var(--black);
|
|
436
435
|
background-color: var(--white);
|
|
437
436
|
}
|
|
438
437
|
|
|
@@ -448,7 +447,7 @@ body {
|
|
|
448
447
|
margin-right: var(--margin-correction);
|
|
449
448
|
outline: var(--outline-stroke);
|
|
450
449
|
background-color: light-dark(var(--white), var(--slate-dark));
|
|
451
|
-
color: var(--text-color
|
|
450
|
+
color: var(--text-color);
|
|
452
451
|
}
|
|
453
452
|
|
|
454
453
|
.mobile .card {
|
|
@@ -469,7 +468,7 @@ body {
|
|
|
469
468
|
z-index: 99;
|
|
470
469
|
margin-bottom: 2px;
|
|
471
470
|
padding-left: calc(3px * var(--sf));
|
|
472
|
-
color: var(--text-color
|
|
471
|
+
color: var(--text-color);
|
|
473
472
|
outline: var(--outline-stroke);
|
|
474
473
|
background-color: transparent;
|
|
475
474
|
}
|
|
@@ -505,10 +504,18 @@ body {
|
|
|
505
504
|
width: var(--item-width);
|
|
506
505
|
padding-left: calc(5px * var(--sf));
|
|
507
506
|
overflow: hidden;
|
|
508
|
-
text-overflow:
|
|
507
|
+
text-overflow: clip;
|
|
509
508
|
white-space: nowrap;
|
|
510
509
|
}
|
|
511
510
|
|
|
511
|
+
/* Cut words fade over the last square, never an ellipsis (0-face/cut-fade.ts marks them). */
|
|
512
|
+
.item-text[data-cut="end"] {
|
|
513
|
+
mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-unit)), transparent);
|
|
514
|
+
}
|
|
515
|
+
.item-text[data-cut="end"]:dir(rtl) {
|
|
516
|
+
mask-image: linear-gradient(to left, #000 calc(100% - var(--ds-unit)), transparent);
|
|
517
|
+
}
|
|
518
|
+
|
|
512
519
|
.grouped-item {
|
|
513
520
|
width: var(--item-width);
|
|
514
521
|
background-color: transparent;
|
package/DS1/1-root/progress.css
CHANGED
|
@@ -238,7 +238,15 @@
|
|
|
238
238
|
padding-inline-end: calc(4px * var(--ds-sf, 1));
|
|
239
239
|
overflow: hidden;
|
|
240
240
|
white-space: nowrap;
|
|
241
|
-
text-overflow:
|
|
241
|
+
text-overflow: clip;
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
/* A cut step name fades over its last square, never an ellipsis (0-face/cut-fade.ts marks it). */
|
|
245
|
+
.ds-progress__label[data-cut="end"] {
|
|
246
|
+
mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-unit)), transparent);
|
|
247
|
+
}
|
|
248
|
+
.ds-progress__label[data-cut="end"]:dir(rtl) {
|
|
249
|
+
mask-image: linear-gradient(to left, #000 calc(100% - var(--ds-unit)), transparent);
|
|
242
250
|
}
|
|
243
251
|
|
|
244
252
|
.ds-progress__step--current .ds-progress__label {
|