@bariskuran/base 0.0.0-stage → 0.0.1
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/LICENSE +21 -0
- package/README.md +114 -2
- package/package.json +93 -4
- package/src/.prettierrc.cjs +1 -0
- package/src/.vscode/launch.json +15 -0
- package/src/.vscode/settings.json +13 -0
- package/src/constants/API_RESPONSE_CODES.js +300 -0
- package/src/constants/COUNTRY_INFORMATION.js +8322 -0
- package/src/constants/COUNTRY_INFORMATION_dS.jsx +57 -0
- package/src/constants/DATE_DEFAULTS.js +10 -0
- package/src/constants/DEFAULT_BREAKPOINTS.js +8 -0
- package/src/constants/DEFAULT_GLOBAL_CORESTORE_VARIABLES.js +4 -0
- package/src/constants/DEFAULT_GLOBAL_STYLE.js +73 -0
- package/src/constants/DEFAULT_MAX_ASP_RATIO.js +1 -0
- package/src/constants/DEFAULT_MIN_ASP_RATIO.js +1 -0
- package/src/constants/DEFAULT_PRIMARY_FONT.js +10 -0
- package/src/constants/DEFAULT_REM_SETTINGS.js +22 -0
- package/src/constants/DEFAULT_THEME.js +10 -0
- package/src/constants/LANGUAGES.js +2396 -0
- package/src/constants/LANGUAGES_dS.jsx +37 -0
- package/src/constants/LOREM_VOCABULARY.js +177 -0
- package/src/constants/LOWER_CASE_ALPHABET.js +1 -0
- package/src/constants/LOWER_CASE_ALPHABET_dS.jsx +24 -0
- package/src/constants/NUMBERS.js +1 -0
- package/src/constants/NUMBERS_dS.jsx +24 -0
- package/src/constants/SYMBOLS.js +1 -0
- package/src/constants/SYMBOLS_dS.jsx +24 -0
- package/src/constants/SYS.js +3 -0
- package/src/constants/TEXT_LIBRARY.js +72 -0
- package/src/constants/UPPER_CASE_ALPHABET.js +1 -0
- package/src/constants/UPPER_CASE_ALPHABET_dS.jsx +24 -0
- package/src/constants/VALIDATION_RULES.js +1310 -0
- package/src/design-system.js +5 -0
- package/src/helpers/NestedBaseUi/_dS.jsx +70 -0
- package/src/helpers/NestedBaseUi/index.jsx +80 -0
- package/src/helpers/NotifierListener/DefaultVariant.js +47 -0
- package/src/helpers/NotifierListener/index.js +3 -0
- package/src/helpers/NotifierListener/tools/Base.jsx +51 -0
- package/src/helpers/NotifierListener/tools/Box.jsx +116 -0
- package/src/helpers/NotifierListener/tools/TimeBar.jsx +49 -0
- package/src/helpers/NotifierListener/tools/_styled.js +74 -0
- package/src/helpers/NotifierListener/tools/useDisplayQueue.js +85 -0
- package/src/helpers/NotifierListener/tools/useVars.js +33 -0
- package/src/helpers/componentCreator/index.jsx +111 -0
- package/src/helpers/getScrollParent/index.js +173 -0
- package/src/helpers/getScrollParent/useScrollTarget.js +102 -0
- package/src/helpers/useExportedData/index.js +36 -0
- package/src/index.js +184 -0
- package/src/libs/@Base/ErrorPage/_styled.js +98 -0
- package/src/libs/@Base/ErrorPage/index.jsx +109 -0
- package/src/libs/@Base/GlobalDataAndRouter/index.jsx +100 -0
- package/src/libs/@Base/GlobalDataProvider/index.js +277 -0
- package/src/libs/@Base/GlobalDataProvider/resolveLanguage.js +180 -0
- package/src/libs/@Base/LanguageManager/index.js +99 -0
- package/src/libs/@Base/Suspense/index.jsx +12 -0
- package/src/libs/@Base/_dS.jsx +54 -0
- package/src/libs/@Base/_dS_howToSetup.jsx +151 -0
- package/src/libs/@Base/_dS_projectSettings.jsx +370 -0
- package/src/libs/@Base/index.jsx +44 -0
- package/src/libs/@Base/loadingQueueManager/_tools.js +186 -0
- package/src/libs/@Base/loadingQueueManager/index.js +63 -0
- package/src/libs/@Base/loadingQueueManager/loadingApi.js +100 -0
- package/src/libs/@Base/prepareRoutes/index.js +176 -0
- package/src/libs/@Base/styling/GlobalStyle.js +7 -0
- package/src/libs/@Base/styling/fontCss.js +64 -0
- package/src/libs/@Base/styling/generateMediaFunctions.js +143 -0
- package/src/libs/@Base/styling/generateMediaFunctions.test.js +56 -0
- package/src/libs/@Base/styling/index.jsx +73 -0
- package/src/libs/@Base/styling/injectInitialRemAndBodyFontStyle.js +43 -0
- package/src/libs/@Base/styling/prepareRemSettings.js +6 -0
- package/src/libs/@Base/styling/useTheme.js +137 -0
- package/src/libs/@Base/useEffects/index.js +46 -0
- package/src/libs/BlockBuilder/Amedist/_styled.js +13 -0
- package/src/libs/BlockBuilder/Amedist/index.jsx +34 -0
- package/src/libs/BlockBuilder/_dS.jsx +85 -0
- package/src/libs/BlockBuilder/amedistHorizontalLeft/_styled.js +85 -0
- package/src/libs/BlockBuilder/amedistHorizontalLeft/index.jsx +43 -0
- package/src/libs/BlockBuilder/amedistHorizontalRight/_styled.js +85 -0
- package/src/libs/BlockBuilder/amedistHorizontalRight/index.jsx +43 -0
- package/src/libs/BlockBuilder/amedistVertical/_styled.js +112 -0
- package/src/libs/BlockBuilder/amedistVertical/index.jsx +56 -0
- package/src/libs/BlockBuilder/index.js +22 -0
- package/src/libs/Button/Amedist.js +50 -0
- package/src/libs/Button/AnimatedBg.js +50 -0
- package/src/libs/Button/Brackets.js +61 -0
- package/src/libs/Button/DefaultVariant.js +52 -0
- package/src/libs/Button/Plain.js +34 -0
- package/src/libs/Button/SquareOnRight.js +65 -0
- package/src/libs/Button/String.js +94 -0
- package/src/libs/Button/Underline.js +61 -0
- package/src/libs/Button/WithCopyIcon.js +22 -0
- package/src/libs/Button/_Base.jsx +151 -0
- package/src/libs/Button/_dS.jsx +787 -0
- package/src/libs/Button/index.js +59 -0
- package/src/libs/Button/tools/IconArea.jsx +109 -0
- package/src/libs/Button/tools/ScaleWrapper.jsx +29 -0
- package/src/libs/Button/tools/_styled.js +96 -0
- package/src/libs/Button/tools/backgroundFill.js +20 -0
- package/src/libs/Button/tools/generateColors.js +207 -0
- package/src/libs/Button/tools/useTimers.js +86 -0
- package/src/libs/Button/tools/useVars.js +461 -0
- package/src/libs/ButtonGroup/DefaultVariant.js +12 -0
- package/src/libs/ButtonGroup/PlainVariant.js +14 -0
- package/src/libs/ButtonGroup/_dS.jsx +280 -0
- package/src/libs/ButtonGroup/index.jsx +60 -0
- package/src/libs/ButtonGroup/tools/ScrollEdgeShadowLayers.jsx +76 -0
- package/src/libs/ButtonGroup/tools/_Base.jsx +129 -0
- package/src/libs/ButtonGroup/tools/useScrollEdgeShadow.js +82 -0
- package/src/libs/ButtonGroup/tools/useVars.js +54 -0
- package/src/libs/COLORS/_dS.jsx +93 -0
- package/src/libs/COLORS/_styled.js +62 -0
- package/src/libs/COLORS/index.js +6 -0
- package/src/libs/COLORS/themeScales.js +68 -0
- package/src/libs/Card/Amedist/_styled.js +161 -0
- package/src/libs/Card/Amedist/index.jsx +38 -0
- package/src/libs/Card/_Base.jsx +94 -0
- package/src/libs/Card/_dS.jsx +177 -0
- package/src/libs/Card/index.js +14 -0
- package/src/libs/Card/tools/useVars.js +95 -0
- package/src/libs/CardViewer/Grid.js +7 -0
- package/src/libs/CardViewer/Masonry.js +7 -0
- package/src/libs/CardViewer/_dS.jsx +214 -0
- package/src/libs/CardViewer/index.jsx +107 -0
- package/src/libs/CardViewer/index.test.jsx +13 -0
- package/src/libs/CardViewer/tools/_styled.js +94 -0
- package/src/libs/CardViewer/tools/useVars.js +34 -0
- package/src/libs/DesignSystem/ApiViewer/_dS.jsx +71 -0
- package/src/libs/DesignSystem/ApiViewer/_styled.js +58 -0
- package/src/libs/DesignSystem/ApiViewer/index.jsx +149 -0
- package/src/libs/DesignSystem/Block/_dS.jsx +62 -0
- package/src/libs/DesignSystem/Block/_styled.js +99 -0
- package/src/libs/DesignSystem/Block/index.jsx +104 -0
- package/src/libs/DesignSystem/CodeViewer/_dS.jsx +75 -0
- package/src/libs/DesignSystem/CodeViewer/_styled.js +39 -0
- package/src/libs/DesignSystem/CodeViewer/index.jsx +46 -0
- package/src/libs/DesignSystem/CodeViewer/tools/codeFormatters.jsx +558 -0
- package/src/libs/DesignSystem/Layout/_styled.js +40 -0
- package/src/libs/DesignSystem/Layout/index.jsx +107 -0
- package/src/libs/DesignSystem/Layout/tools/pageTitle.js +4 -0
- package/src/libs/DesignSystem/Layout/useVars.js +15 -0
- package/src/libs/DesignSystem/OutputArea/index.jsx +150 -0
- package/src/libs/DesignSystem/Page/index.jsx +56 -0
- package/src/libs/DesignSystem/Routes.jsx +27 -0
- package/src/libs/DesignSystem/VariantViewer/_styled.js +22 -0
- package/src/libs/DesignSystem/VariantViewer/index.jsx +20 -0
- package/src/libs/DesignSystem/_dS.jsx +60 -0
- package/src/libs/DesignSystem/_dS_welcome.jsx +48 -0
- package/src/libs/DesignSystem/formatJsonForDisplay.js +110 -0
- package/src/libs/DesignSystem/index.jsx +210 -0
- package/src/libs/DesignSystem/isJsxDescription.js +12 -0
- package/src/libs/DesignSystem/useOutputViewer/index.jsx +75 -0
- package/src/libs/Dropdown/_styled.js +24 -0
- package/src/libs/Dropdown/index.jsx +91 -0
- package/src/libs/Flag/_dS.jsx +73 -0
- package/src/libs/Flag/_dSLibrary.jsx +120 -0
- package/src/libs/Flag/flags/ad.js +1 -0
- package/src/libs/Flag/flags/ae.js +1 -0
- package/src/libs/Flag/flags/af.js +1 -0
- package/src/libs/Flag/flags/ag.js +1 -0
- package/src/libs/Flag/flags/ai.js +1 -0
- package/src/libs/Flag/flags/al.js +1 -0
- package/src/libs/Flag/flags/am.js +1 -0
- package/src/libs/Flag/flags/ao.js +1 -0
- package/src/libs/Flag/flags/aq.js +1 -0
- package/src/libs/Flag/flags/ar.js +1 -0
- package/src/libs/Flag/flags/as.js +1 -0
- package/src/libs/Flag/flags/at.js +1 -0
- package/src/libs/Flag/flags/au.js +1 -0
- package/src/libs/Flag/flags/aw.js +1 -0
- package/src/libs/Flag/flags/ax.js +1 -0
- package/src/libs/Flag/flags/az.js +1 -0
- package/src/libs/Flag/flags/ba.js +1 -0
- package/src/libs/Flag/flags/bb.js +1 -0
- package/src/libs/Flag/flags/bd.js +1 -0
- package/src/libs/Flag/flags/be.js +1 -0
- package/src/libs/Flag/flags/bf.js +1 -0
- package/src/libs/Flag/flags/bg.js +1 -0
- package/src/libs/Flag/flags/bh.js +1 -0
- package/src/libs/Flag/flags/bi.js +1 -0
- package/src/libs/Flag/flags/bj.js +1 -0
- package/src/libs/Flag/flags/bl.js +1 -0
- package/src/libs/Flag/flags/blank.js +1 -0
- package/src/libs/Flag/flags/bm.js +1 -0
- package/src/libs/Flag/flags/bn.js +1 -0
- package/src/libs/Flag/flags/bo.js +1 -0
- package/src/libs/Flag/flags/bq.js +1 -0
- package/src/libs/Flag/flags/br.js +1 -0
- package/src/libs/Flag/flags/bs.js +1 -0
- package/src/libs/Flag/flags/bt.js +1 -0
- package/src/libs/Flag/flags/bv.js +1 -0
- package/src/libs/Flag/flags/bw.js +1 -0
- package/src/libs/Flag/flags/by.js +1 -0
- package/src/libs/Flag/flags/bz.js +1 -0
- package/src/libs/Flag/flags/ca.js +1 -0
- package/src/libs/Flag/flags/cc.js +1 -0
- package/src/libs/Flag/flags/cd.js +1 -0
- package/src/libs/Flag/flags/cf.js +1 -0
- package/src/libs/Flag/flags/cg.js +1 -0
- package/src/libs/Flag/flags/ch.js +1 -0
- package/src/libs/Flag/flags/ci.js +1 -0
- package/src/libs/Flag/flags/ck.js +1 -0
- package/src/libs/Flag/flags/cl.js +1 -0
- package/src/libs/Flag/flags/cm.js +1 -0
- package/src/libs/Flag/flags/cn.js +1 -0
- package/src/libs/Flag/flags/co.js +1 -0
- package/src/libs/Flag/flags/cr.js +1 -0
- package/src/libs/Flag/flags/cu.js +1 -0
- package/src/libs/Flag/flags/cv.js +1 -0
- package/src/libs/Flag/flags/cw.js +1 -0
- package/src/libs/Flag/flags/cx.js +1 -0
- package/src/libs/Flag/flags/cy.js +1 -0
- package/src/libs/Flag/flags/cz.js +1 -0
- package/src/libs/Flag/flags/de.js +1 -0
- package/src/libs/Flag/flags/dj.js +1 -0
- package/src/libs/Flag/flags/dk.js +1 -0
- package/src/libs/Flag/flags/dm.js +1 -0
- package/src/libs/Flag/flags/do.js +1 -0
- package/src/libs/Flag/flags/dz.js +1 -0
- package/src/libs/Flag/flags/ec.js +1 -0
- package/src/libs/Flag/flags/ee.js +1 -0
- package/src/libs/Flag/flags/eg.js +1 -0
- package/src/libs/Flag/flags/eh.js +1 -0
- package/src/libs/Flag/flags/er.js +1 -0
- package/src/libs/Flag/flags/es.js +1 -0
- package/src/libs/Flag/flags/et.js +1 -0
- package/src/libs/Flag/flags/eu.js +1 -0
- package/src/libs/Flag/flags/fi.js +1 -0
- package/src/libs/Flag/flags/fj.js +1 -0
- package/src/libs/Flag/flags/fk.js +1 -0
- package/src/libs/Flag/flags/fm.js +1 -0
- package/src/libs/Flag/flags/fo.js +1 -0
- package/src/libs/Flag/flags/fr.js +1 -0
- package/src/libs/Flag/flags/ga.js +1 -0
- package/src/libs/Flag/flags/gb-eng.js +1 -0
- package/src/libs/Flag/flags/gb-nir.js +1 -0
- package/src/libs/Flag/flags/gb-sct.js +1 -0
- package/src/libs/Flag/flags/gb-wls.js +1 -0
- package/src/libs/Flag/flags/gb.js +1 -0
- package/src/libs/Flag/flags/gd.js +1 -0
- package/src/libs/Flag/flags/ge.js +1 -0
- package/src/libs/Flag/flags/gf.js +1 -0
- package/src/libs/Flag/flags/gg.js +1 -0
- package/src/libs/Flag/flags/gh.js +1 -0
- package/src/libs/Flag/flags/gi.js +1 -0
- package/src/libs/Flag/flags/gl.js +1 -0
- package/src/libs/Flag/flags/global.js +1 -0
- package/src/libs/Flag/flags/gm.js +1 -0
- package/src/libs/Flag/flags/gn.js +1 -0
- package/src/libs/Flag/flags/gp.js +1 -0
- package/src/libs/Flag/flags/gq.js +1 -0
- package/src/libs/Flag/flags/gr.js +1 -0
- package/src/libs/Flag/flags/gs.js +1 -0
- package/src/libs/Flag/flags/gt.js +1 -0
- package/src/libs/Flag/flags/gu.js +1 -0
- package/src/libs/Flag/flags/gw.js +1 -0
- package/src/libs/Flag/flags/gy.js +1 -0
- package/src/libs/Flag/flags/hk.js +1 -0
- package/src/libs/Flag/flags/hm.js +1 -0
- package/src/libs/Flag/flags/hn.js +1 -0
- package/src/libs/Flag/flags/hr.js +1 -0
- package/src/libs/Flag/flags/ht.js +1 -0
- package/src/libs/Flag/flags/hu.js +1 -0
- package/src/libs/Flag/flags/id.js +1 -0
- package/src/libs/Flag/flags/ie.js +1 -0
- package/src/libs/Flag/flags/il.js +1 -0
- package/src/libs/Flag/flags/im.js +1 -0
- package/src/libs/Flag/flags/in.js +1 -0
- package/src/libs/Flag/flags/io.js +1 -0
- package/src/libs/Flag/flags/iq.js +1 -0
- package/src/libs/Flag/flags/ir.js +1 -0
- package/src/libs/Flag/flags/is.js +1 -0
- package/src/libs/Flag/flags/it.js +1 -0
- package/src/libs/Flag/flags/je.js +1 -0
- package/src/libs/Flag/flags/jm.js +1 -0
- package/src/libs/Flag/flags/jo.js +1 -0
- package/src/libs/Flag/flags/jp.js +1 -0
- package/src/libs/Flag/flags/ke.js +1 -0
- package/src/libs/Flag/flags/kg.js +1 -0
- package/src/libs/Flag/flags/kh.js +1 -0
- package/src/libs/Flag/flags/ki.js +1 -0
- package/src/libs/Flag/flags/km.js +1 -0
- package/src/libs/Flag/flags/kn.js +1 -0
- package/src/libs/Flag/flags/kp.js +1 -0
- package/src/libs/Flag/flags/kr.js +1 -0
- package/src/libs/Flag/flags/kw.js +1 -0
- package/src/libs/Flag/flags/ky.js +1 -0
- package/src/libs/Flag/flags/kz.js +1 -0
- package/src/libs/Flag/flags/la.js +1 -0
- package/src/libs/Flag/flags/lb.js +1 -0
- package/src/libs/Flag/flags/lc.js +1 -0
- package/src/libs/Flag/flags/li.js +1 -0
- package/src/libs/Flag/flags/lk.js +1 -0
- package/src/libs/Flag/flags/lr.js +1 -0
- package/src/libs/Flag/flags/ls.js +1 -0
- package/src/libs/Flag/flags/lt.js +1 -0
- package/src/libs/Flag/flags/lu.js +1 -0
- package/src/libs/Flag/flags/lv.js +1 -0
- package/src/libs/Flag/flags/ly.js +1 -0
- package/src/libs/Flag/flags/ma.js +1 -0
- package/src/libs/Flag/flags/mc.js +1 -0
- package/src/libs/Flag/flags/md.js +1 -0
- package/src/libs/Flag/flags/me.js +1 -0
- package/src/libs/Flag/flags/mf.js +1 -0
- package/src/libs/Flag/flags/mg.js +1 -0
- package/src/libs/Flag/flags/mh.js +1 -0
- package/src/libs/Flag/flags/mk.js +1 -0
- package/src/libs/Flag/flags/ml.js +1 -0
- package/src/libs/Flag/flags/mm.js +1 -0
- package/src/libs/Flag/flags/mn.js +1 -0
- package/src/libs/Flag/flags/mo.js +1 -0
- package/src/libs/Flag/flags/mp.js +1 -0
- package/src/libs/Flag/flags/mq.js +1 -0
- package/src/libs/Flag/flags/mr.js +1 -0
- package/src/libs/Flag/flags/ms.js +1 -0
- package/src/libs/Flag/flags/mt.js +1 -0
- package/src/libs/Flag/flags/mu.js +1 -0
- package/src/libs/Flag/flags/mv.js +1 -0
- package/src/libs/Flag/flags/mw.js +1 -0
- package/src/libs/Flag/flags/mx.js +1 -0
- package/src/libs/Flag/flags/my.js +1 -0
- package/src/libs/Flag/flags/mz.js +1 -0
- package/src/libs/Flag/flags/na.js +1 -0
- package/src/libs/Flag/flags/nc.js +1 -0
- package/src/libs/Flag/flags/ne.js +1 -0
- package/src/libs/Flag/flags/nf.js +1 -0
- package/src/libs/Flag/flags/ng.js +1 -0
- package/src/libs/Flag/flags/ni.js +1 -0
- package/src/libs/Flag/flags/nl.js +1 -0
- package/src/libs/Flag/flags/no.js +1 -0
- package/src/libs/Flag/flags/np.js +1 -0
- package/src/libs/Flag/flags/nr.js +1 -0
- package/src/libs/Flag/flags/nu.js +1 -0
- package/src/libs/Flag/flags/nz.js +1 -0
- package/src/libs/Flag/flags/om.js +1 -0
- package/src/libs/Flag/flags/pa.js +1 -0
- package/src/libs/Flag/flags/pe.js +1 -0
- package/src/libs/Flag/flags/pf.js +1 -0
- package/src/libs/Flag/flags/pg.js +1 -0
- package/src/libs/Flag/flags/ph.js +1 -0
- package/src/libs/Flag/flags/pk.js +1 -0
- package/src/libs/Flag/flags/pl.js +1 -0
- package/src/libs/Flag/flags/pm.js +1 -0
- package/src/libs/Flag/flags/pn.js +1 -0
- package/src/libs/Flag/flags/po.js +1 -0
- package/src/libs/Flag/flags/pr.js +1 -0
- package/src/libs/Flag/flags/ps.js +1 -0
- package/src/libs/Flag/flags/pt.js +1 -0
- package/src/libs/Flag/flags/pw.js +1 -0
- package/src/libs/Flag/flags/py.js +1 -0
- package/src/libs/Flag/flags/qa.js +1 -0
- package/src/libs/Flag/flags/re.js +1 -0
- package/src/libs/Flag/flags/ro.js +1 -0
- package/src/libs/Flag/flags/rs.js +1 -0
- package/src/libs/Flag/flags/ru.js +1 -0
- package/src/libs/Flag/flags/rw.js +1 -0
- package/src/libs/Flag/flags/sa.js +1 -0
- package/src/libs/Flag/flags/sb.js +1 -0
- package/src/libs/Flag/flags/sc.js +1 -0
- package/src/libs/Flag/flags/sd.js +1 -0
- package/src/libs/Flag/flags/se.js +1 -0
- package/src/libs/Flag/flags/sg.js +1 -0
- package/src/libs/Flag/flags/sh.js +1 -0
- package/src/libs/Flag/flags/si.js +1 -0
- package/src/libs/Flag/flags/sj.js +1 -0
- package/src/libs/Flag/flags/sk.js +1 -0
- package/src/libs/Flag/flags/sl.js +1 -0
- package/src/libs/Flag/flags/sm.js +1 -0
- package/src/libs/Flag/flags/sn.js +1 -0
- package/src/libs/Flag/flags/so.js +1 -0
- package/src/libs/Flag/flags/sr.js +1 -0
- package/src/libs/Flag/flags/ss.js +1 -0
- package/src/libs/Flag/flags/st.js +1 -0
- package/src/libs/Flag/flags/sv.js +1 -0
- package/src/libs/Flag/flags/sx.js +1 -0
- package/src/libs/Flag/flags/sy.js +1 -0
- package/src/libs/Flag/flags/sz.js +1 -0
- package/src/libs/Flag/flags/tc.js +1 -0
- package/src/libs/Flag/flags/td.js +1 -0
- package/src/libs/Flag/flags/tf.js +1 -0
- package/src/libs/Flag/flags/tg.js +1 -0
- package/src/libs/Flag/flags/th.js +1 -0
- package/src/libs/Flag/flags/tj.js +1 -0
- package/src/libs/Flag/flags/tk.js +1 -0
- package/src/libs/Flag/flags/tl.js +1 -0
- package/src/libs/Flag/flags/tm.js +1 -0
- package/src/libs/Flag/flags/tn.js +1 -0
- package/src/libs/Flag/flags/to.js +1 -0
- package/src/libs/Flag/flags/tr.js +1 -0
- package/src/libs/Flag/flags/tt.js +1 -0
- package/src/libs/Flag/flags/tv.js +1 -0
- package/src/libs/Flag/flags/tw.js +1 -0
- package/src/libs/Flag/flags/tz.js +1 -0
- package/src/libs/Flag/flags/ua.js +1 -0
- package/src/libs/Flag/flags/ug.js +1 -0
- package/src/libs/Flag/flags/um.js +1 -0
- package/src/libs/Flag/flags/us.js +1 -0
- package/src/libs/Flag/flags/uy.js +1 -0
- package/src/libs/Flag/flags/uz.js +1 -0
- package/src/libs/Flag/flags/va.js +1 -0
- package/src/libs/Flag/flags/vc.js +1 -0
- package/src/libs/Flag/flags/ve.js +1 -0
- package/src/libs/Flag/flags/vg.js +1 -0
- package/src/libs/Flag/flags/vi.js +1 -0
- package/src/libs/Flag/flags/vn.js +1 -0
- package/src/libs/Flag/flags/vu.js +1 -0
- package/src/libs/Flag/flags/wf.js +1 -0
- package/src/libs/Flag/flags/ws.js +1 -0
- package/src/libs/Flag/flags/xk.js +1 -0
- package/src/libs/Flag/flags/ye.js +1 -0
- package/src/libs/Flag/flags/yt.js +1 -0
- package/src/libs/Flag/flags/za.js +1 -0
- package/src/libs/Flag/flags/zm.js +1 -0
- package/src/libs/Flag/flags/zw.js +1 -0
- package/src/libs/Flag/flags.js +37 -0
- package/src/libs/Flag/index.jsx +16 -0
- package/src/libs/Flex/_dS.jsx +610 -0
- package/src/libs/Flex/index.js +34 -0
- package/src/libs/Flex/tools/FlexTestPage.jsx +228 -0
- package/src/libs/Flex/tools/_Base.jsx +76 -0
- package/src/libs/Flex/tools/_styled.js +124 -0
- package/src/libs/Flex/tools/flexParentDetection.js +9 -0
- package/src/libs/Flex/tools/generateProps.js +826 -0
- package/src/libs/Flex/tools/getFlexDomRestProps.js +29 -0
- package/src/libs/Flex/tools/getNumber.js +4 -0
- package/src/libs/Flex/tools/mergeStyles.js +11 -0
- package/src/libs/Flex/tools/resolveFlexBorder.js +145 -0
- package/src/libs/Flex/tools/resolveFlexMotion.js +214 -0
- package/src/libs/Flex/tools/resolveFlexTypoWrap.js +20 -0
- package/src/libs/Flex/tools/splitUserStyle.js +57 -0
- package/src/libs/Flex/tools/sysDefaults.js +5 -0
- package/src/libs/Flex/tools/useVars.js +336 -0
- package/src/libs/FloatingUi/DefaultVariant.js +126 -0
- package/src/libs/FloatingUi/PlainVariant.js +111 -0
- package/src/libs/FloatingUi/_dS.jsx +307 -0
- package/src/libs/FloatingUi/_styled.js +8 -0
- package/src/libs/FloatingUi/index.js +12 -0
- package/src/libs/FloatingUi/tools/_Base.jsx +90 -0
- package/src/libs/FloatingUi/tools/floatingMountHost.js +106 -0
- package/src/libs/FloatingUi/tools/getPosition.js +307 -0
- package/src/libs/FloatingUi/tools/useVars.js +450 -0
- package/src/libs/GoogleMapViewer/_dS.jsx +69 -0
- package/src/libs/GoogleMapViewer/_styled.js +17 -0
- package/src/libs/GoogleMapViewer/index.jsx +26 -0
- package/src/libs/GoogleMapViewer/useVars.js +38 -0
- package/src/libs/Group/_dS.jsx +154 -0
- package/src/libs/Group/index.jsx +35 -0
- package/src/libs/HeaderCover/Amedist/_styled.js +185 -0
- package/src/libs/HeaderCover/Amedist/index.jsx +82 -0
- package/src/libs/HeaderCover/Amedist/useVars.js +81 -0
- package/src/libs/HeaderCover/index.js +11 -0
- package/src/libs/Icon/_dS.jsx +401 -0
- package/src/libs/Icon/_dSLibrary.jsx +145 -0
- package/src/libs/Icon/icons/abstract1.js +1 -0
- package/src/libs/Icon/icons/abstract10.js +1 -0
- package/src/libs/Icon/icons/abstract11.js +1 -0
- package/src/libs/Icon/icons/abstract12.js +1 -0
- package/src/libs/Icon/icons/abstract13.js +1 -0
- package/src/libs/Icon/icons/abstract14.js +1 -0
- package/src/libs/Icon/icons/abstract15.js +1 -0
- package/src/libs/Icon/icons/abstract16.js +1 -0
- package/src/libs/Icon/icons/abstract17.js +1 -0
- package/src/libs/Icon/icons/abstract18.js +1 -0
- package/src/libs/Icon/icons/abstract19.js +1 -0
- package/src/libs/Icon/icons/abstract2.js +1 -0
- package/src/libs/Icon/icons/abstract20.js +1 -0
- package/src/libs/Icon/icons/abstract21.js +1 -0
- package/src/libs/Icon/icons/abstract22.js +1 -0
- package/src/libs/Icon/icons/abstract23.js +1 -0
- package/src/libs/Icon/icons/abstract24.js +1 -0
- package/src/libs/Icon/icons/abstract25.js +1 -0
- package/src/libs/Icon/icons/abstract26.js +1 -0
- package/src/libs/Icon/icons/abstract27.js +1 -0
- package/src/libs/Icon/icons/abstract28.js +1 -0
- package/src/libs/Icon/icons/abstract29.js +1 -0
- package/src/libs/Icon/icons/abstract3.js +1 -0
- package/src/libs/Icon/icons/abstract30.js +1 -0
- package/src/libs/Icon/icons/abstract31.js +1 -0
- package/src/libs/Icon/icons/abstract32.js +1 -0
- package/src/libs/Icon/icons/abstract33.js +1 -0
- package/src/libs/Icon/icons/abstract34.js +1 -0
- package/src/libs/Icon/icons/abstract35.js +1 -0
- package/src/libs/Icon/icons/abstract36.js +1 -0
- package/src/libs/Icon/icons/abstract37.js +1 -0
- package/src/libs/Icon/icons/abstract38.js +1 -0
- package/src/libs/Icon/icons/abstract39.js +1 -0
- package/src/libs/Icon/icons/abstract4.js +1 -0
- package/src/libs/Icon/icons/abstract40.js +1 -0
- package/src/libs/Icon/icons/abstract41.js +1 -0
- package/src/libs/Icon/icons/abstract42.js +1 -0
- package/src/libs/Icon/icons/abstract43.js +1 -0
- package/src/libs/Icon/icons/abstract44.js +1 -0
- package/src/libs/Icon/icons/abstract45.js +1 -0
- package/src/libs/Icon/icons/abstract46.js +1 -0
- package/src/libs/Icon/icons/abstract47.js +1 -0
- package/src/libs/Icon/icons/abstract48.js +1 -0
- package/src/libs/Icon/icons/abstract49.js +1 -0
- package/src/libs/Icon/icons/abstract5.js +1 -0
- package/src/libs/Icon/icons/abstract50.js +1 -0
- package/src/libs/Icon/icons/abstract51.js +1 -0
- package/src/libs/Icon/icons/abstract52.js +1 -0
- package/src/libs/Icon/icons/abstract53.js +1 -0
- package/src/libs/Icon/icons/abstract54.js +1 -0
- package/src/libs/Icon/icons/abstract55.js +1 -0
- package/src/libs/Icon/icons/abstract56.js +1 -0
- package/src/libs/Icon/icons/abstract57.js +1 -0
- package/src/libs/Icon/icons/abstract58.js +1 -0
- package/src/libs/Icon/icons/abstract59.js +1 -0
- package/src/libs/Icon/icons/abstract6.js +1 -0
- package/src/libs/Icon/icons/abstract60.js +1 -0
- package/src/libs/Icon/icons/abstract61.js +1 -0
- package/src/libs/Icon/icons/abstract62.js +1 -0
- package/src/libs/Icon/icons/abstract63.js +1 -0
- package/src/libs/Icon/icons/abstract64.js +1 -0
- package/src/libs/Icon/icons/abstract65.js +1 -0
- package/src/libs/Icon/icons/abstract66.js +1 -0
- package/src/libs/Icon/icons/abstract67.js +1 -0
- package/src/libs/Icon/icons/abstract68.js +1 -0
- package/src/libs/Icon/icons/abstract69.js +1 -0
- package/src/libs/Icon/icons/abstract7.js +1 -0
- package/src/libs/Icon/icons/abstract70.js +1 -0
- package/src/libs/Icon/icons/abstract71.js +1 -0
- package/src/libs/Icon/icons/abstract72.js +1 -0
- package/src/libs/Icon/icons/abstract73.js +1 -0
- package/src/libs/Icon/icons/abstract74.js +1 -0
- package/src/libs/Icon/icons/abstract75.js +1 -0
- package/src/libs/Icon/icons/abstract8.js +1 -0
- package/src/libs/Icon/icons/abstract9.js +1 -0
- package/src/libs/Icon/icons/adNetworkIcon.js +1 -0
- package/src/libs/Icon/icons/add.js +1 -0
- package/src/libs/Icon/icons/addToBookmarks.js +1 -0
- package/src/libs/Icon/icons/addToFavs.js +1 -0
- package/src/libs/Icon/icons/all.js +1 -0
- package/src/libs/Icon/icons/ancient.js +1 -0
- package/src/libs/Icon/icons/android.js +1 -0
- package/src/libs/Icon/icons/apple.js +1 -0
- package/src/libs/Icon/icons/archieved.js +1 -0
- package/src/libs/Icon/icons/arrowDown.js +1 -0
- package/src/libs/Icon/icons/arrowLeft.js +1 -0
- package/src/libs/Icon/icons/arrowRight.js +1 -0
- package/src/libs/Icon/icons/arrowUp.js +1 -0
- package/src/libs/Icon/icons/asteriks.js +1 -0
- package/src/libs/Icon/icons/asteriks2.js +1 -0
- package/src/libs/Icon/icons/back.js +1 -0
- package/src/libs/Icon/icons/backFlip.js +1 -0
- package/src/libs/Icon/icons/backSpace.js +1 -0
- package/src/libs/Icon/icons/baseLogo.js +1 -0
- package/src/libs/Icon/icons/book.js +1 -0
- package/src/libs/Icon/icons/bookmarks.js +1 -0
- package/src/libs/Icon/icons/box.js +1 -0
- package/src/libs/Icon/icons/bracketLeft.js +1 -0
- package/src/libs/Icon/icons/bracketRight.js +1 -0
- package/src/libs/Icon/icons/bridge.js +1 -0
- package/src/libs/Icon/icons/building.js +1 -0
- package/src/libs/Icon/icons/campaign.js +1 -0
- package/src/libs/Icon/icons/cancel.js +1 -0
- package/src/libs/Icon/icons/car.js +1 -0
- package/src/libs/Icon/icons/castle.js +1 -0
- package/src/libs/Icon/icons/chart.js +1 -0
- package/src/libs/Icon/icons/check.js +1 -0
- package/src/libs/Icon/icons/chrome.js +1 -0
- package/src/libs/Icon/icons/close.js +1 -0
- package/src/libs/Icon/icons/closeThin.js +1 -0
- package/src/libs/Icon/icons/code.js +1 -0
- package/src/libs/Icon/icons/collapse.js +1 -0
- package/src/libs/Icon/icons/columns.js +1 -0
- package/src/libs/Icon/icons/compass.js +1 -0
- package/src/libs/Icon/icons/copy.js +1 -0
- package/src/libs/Icon/icons/description.js +1 -0
- package/src/libs/Icon/icons/desktopAll.js +1 -0
- package/src/libs/Icon/icons/desktopAll1.js +1 -0
- package/src/libs/Icon/icons/desktopApple.js +1 -0
- package/src/libs/Icon/icons/desktopLinux.js +1 -0
- package/src/libs/Icon/icons/desktopWin.js +1 -0
- package/src/libs/Icon/icons/dot.js +1 -0
- package/src/libs/Icon/icons/dotSmall.js +1 -0
- package/src/libs/Icon/icons/doubleArrow.js +1 -0
- package/src/libs/Icon/icons/dove.js +1 -0
- package/src/libs/Icon/icons/download.js +1 -0
- package/src/libs/Icon/icons/download2.js +1 -0
- package/src/libs/Icon/icons/drag.js +1 -0
- package/src/libs/Icon/icons/duplicate.js +1 -0
- package/src/libs/Icon/icons/edge.js +1 -0
- package/src/libs/Icon/icons/edit.js +1 -0
- package/src/libs/Icon/icons/expand.js +1 -0
- package/src/libs/Icon/icons/eyeClose.js +1 -0
- package/src/libs/Icon/icons/eyeOpen.js +1 -0
- package/src/libs/Icon/icons/facebook.js +1 -0
- package/src/libs/Icon/icons/filter.js +1 -0
- package/src/libs/Icon/icons/filterClear.js +1 -0
- package/src/libs/Icon/icons/finance.js +1 -0
- package/src/libs/Icon/icons/firefox.js +1 -0
- package/src/libs/Icon/icons/focus.js +1 -0
- package/src/libs/Icon/icons/fullArrowDown.js +1 -0
- package/src/libs/Icon/icons/fullArrowLeft.js +1 -0
- package/src/libs/Icon/icons/fullArrowRight.js +1 -0
- package/src/libs/Icon/icons/fullArrowUp.js +1 -0
- package/src/libs/Icon/icons/globe.js +1 -0
- package/src/libs/Icon/icons/home.js +1 -0
- package/src/libs/Icon/icons/iOs.js +1 -0
- package/src/libs/Icon/icons/information.js +1 -0
- package/src/libs/Icon/icons/information_square.js +1 -0
- package/src/libs/Icon/icons/instagram.js +1 -0
- package/src/libs/Icon/icons/internetExplorer.js +1 -0
- package/src/libs/Icon/icons/islam.js +1 -0
- package/src/libs/Icon/icons/key.js +1 -0
- package/src/libs/Icon/icons/labelCustom.js +1 -0
- package/src/libs/Icon/icons/labelCustom2.js +1 -0
- package/src/libs/Icon/icons/laptop.js +1 -0
- package/src/libs/Icon/icons/link.js +1 -0
- package/src/libs/Icon/icons/linkedIn.js +1 -0
- package/src/libs/Icon/icons/linux.js +1 -0
- package/src/libs/Icon/icons/loading.js +1 -0
- package/src/libs/Icon/icons/loading2.js +1 -0
- package/src/libs/Icon/icons/loading3.js +1 -0
- package/src/libs/Icon/icons/loading4.js +1 -0
- package/src/libs/Icon/icons/loading5.js +1 -0
- package/src/libs/Icon/icons/loading6.js +1 -0
- package/src/libs/Icon/icons/loading7.js +1 -0
- package/src/libs/Icon/icons/location.js +1 -0
- package/src/libs/Icon/icons/lockClose.js +1 -0
- package/src/libs/Icon/icons/lockOpen.js +1 -0
- package/src/libs/Icon/icons/logoHead.js +1 -0
- package/src/libs/Icon/icons/macOs.js +1 -0
- package/src/libs/Icon/icons/mail.js +1 -0
- package/src/libs/Icon/icons/mail2.js +1 -0
- package/src/libs/Icon/icons/menu.js +1 -0
- package/src/libs/Icon/icons/menu2.js +1 -0
- package/src/libs/Icon/icons/menuStylish.js +1 -0
- package/src/libs/Icon/icons/menuStylishFull.js +1 -0
- package/src/libs/Icon/icons/mobile.js +1 -0
- package/src/libs/Icon/icons/mobileAll.js +1 -0
- package/src/libs/Icon/icons/mobileAll2.js +1 -0
- package/src/libs/Icon/icons/mobileAndroid.js +1 -0
- package/src/libs/Icon/icons/mobileApple.js +1 -0
- package/src/libs/Icon/icons/mobileWin.js +1 -0
- package/src/libs/Icon/icons/museum.js +1 -0
- package/src/libs/Icon/icons/notification.js +1 -0
- package/src/libs/Icon/icons/offer.js +1 -0
- package/src/libs/Icon/icons/opera.js +1 -0
- package/src/libs/Icon/icons/path.js +1 -0
- package/src/libs/Icon/icons/pause.js +1 -0
- package/src/libs/Icon/icons/phone.js +1 -0
- package/src/libs/Icon/icons/phone2.js +1 -0
- package/src/libs/Icon/icons/pin.js +1 -0
- package/src/libs/Icon/icons/pixels.js +1 -0
- package/src/libs/Icon/icons/plane.js +1 -0
- package/src/libs/Icon/icons/play.js +1 -0
- package/src/libs/Icon/icons/plus.js +1 -0
- package/src/libs/Icon/icons/preview.js +1 -0
- package/src/libs/Icon/icons/question.js +1 -0
- package/src/libs/Icon/icons/quote1.js +1 -0
- package/src/libs/Icon/icons/quote2.js +1 -0
- package/src/libs/Icon/icons/refresh.js +1 -0
- package/src/libs/Icon/icons/rejected.js +1 -0
- package/src/libs/Icon/icons/report.js +1 -0
- package/src/libs/Icon/icons/reset.js +1 -0
- package/src/libs/Icon/icons/restaurant.js +1 -0
- package/src/libs/Icon/icons/route.js +1 -0
- package/src/libs/Icon/icons/safari.js +1 -0
- package/src/libs/Icon/icons/samsungExplorer.js +1 -0
- package/src/libs/Icon/icons/sandclock.js +1 -0
- package/src/libs/Icon/icons/screenMobile.js +1 -0
- package/src/libs/Icon/icons/screenRegular.js +1 -0
- package/src/libs/Icon/icons/screenWide.js +1 -0
- package/src/libs/Icon/icons/search.js +1 -0
- package/src/libs/Icon/icons/selectAll.js +1 -0
- package/src/libs/Icon/icons/selectNone.js +1 -0
- package/src/libs/Icon/icons/settings.js +1 -0
- package/src/libs/Icon/icons/share.js +1 -0
- package/src/libs/Icon/icons/shop.js +1 -0
- package/src/libs/Icon/icons/star.js +1 -0
- package/src/libs/Icon/icons/starEmpty.js +1 -0
- package/src/libs/Icon/icons/starHalf.js +1 -0
- package/src/libs/Icon/icons/stop.js +1 -0
- package/src/libs/Icon/icons/style.js +1 -0
- package/src/libs/Icon/icons/switch.js +1 -0
- package/src/libs/Icon/icons/tablet.js +1 -0
- package/src/libs/Icon/icons/tag.js +1 -0
- package/src/libs/Icon/icons/targeting.js +1 -0
- package/src/libs/Icon/icons/threeDots.js +1 -0
- package/src/libs/Icon/icons/threeDotsLarge.js +1 -0
- package/src/libs/Icon/icons/threeDotsLargeHorizontal.js +1 -0
- package/src/libs/Icon/icons/trash.js +1 -0
- package/src/libs/Icon/icons/trees.js +1 -0
- package/src/libs/Icon/icons/ubuntu.js +1 -0
- package/src/libs/Icon/icons/ucExplorer.js +1 -0
- package/src/libs/Icon/icons/upload.js +1 -0
- package/src/libs/Icon/icons/user.js +1 -0
- package/src/libs/Icon/icons/userAdvanced.js +1 -0
- package/src/libs/Icon/icons/volumeOff.js +1 -0
- package/src/libs/Icon/icons/volumeOn.js +1 -0
- package/src/libs/Icon/icons/walk.js +1 -0
- package/src/libs/Icon/icons/warning.js +1 -0
- package/src/libs/Icon/icons/warning2.js +1 -0
- package/src/libs/Icon/icons/website.js +1 -0
- package/src/libs/Icon/icons/widget.js +1 -0
- package/src/libs/Icon/icons/win.js +1 -0
- package/src/libs/Icon/icons/windows.js +1 -0
- package/src/libs/Icon/icons.js +37 -0
- package/src/libs/Icon/index.jsx +285 -0
- package/src/libs/Icon/tools/IconLayer.jsx +221 -0
- package/src/libs/Icon/tools/PopTipWrapper.jsx +6 -0
- package/src/libs/Icon/tools/iconMeta.js +65 -0
- package/src/libs/Icon/tools/pathBounds.js +166 -0
- package/src/libs/Icon/tools/styled.js +115 -0
- package/src/libs/Icon/tools/validators.js +20 -0
- package/src/libs/Icon/tools/visualScale.js +31 -0
- package/src/libs/IdleManager/_dS.jsx +74 -0
- package/src/libs/IdleManager/index.js +164 -0
- package/src/libs/Image/_dS.jsx +271 -0
- package/src/libs/Image/_styled.js +29 -0
- package/src/libs/Image/animations/index.js +16 -0
- package/src/libs/Image/animations/pulse.js +9 -0
- package/src/libs/Image/assets/sample-landscape.svg +5 -0
- package/src/libs/Image/index.jsx +91 -0
- package/src/libs/Image/useVars.js +393 -0
- package/src/libs/Image/useVars.test.jsx +93 -0
- package/src/libs/ImageGalery/Amedist/_styled.js +193 -0
- package/src/libs/ImageGalery/Amedist/index.jsx +285 -0
- package/src/libs/ImageGalery/_Base.jsx +139 -0
- package/src/libs/ImageGalery/_Base.test.jsx +66 -0
- package/src/libs/ImageGalery/_dS.jsx +71 -0
- package/src/libs/ImageGalery/index.jsx +23 -0
- package/src/libs/Layout/ControllerError.jsx +28 -0
- package/src/libs/Layout/_dS_footerAmedist.jsx +62 -0
- package/src/libs/Layout/_dS_headerAmedist.jsx +139 -0
- package/src/libs/Layout/_dS_mainAmedist.jsx +87 -0
- package/src/libs/Layout/_dS_useLayout.jsx +55 -0
- package/src/libs/Layout/controllerRegistry.js +121 -0
- package/src/libs/Layout/controllerRegistry.test.jsx +99 -0
- package/src/libs/Layout/controllers.js +169 -0
- package/src/libs/Layout/footerAmedist/_styled.js +75 -0
- package/src/libs/Layout/footerAmedist/index.jsx +22 -0
- package/src/libs/Layout/headerAmedist/_styled.js +151 -0
- package/src/libs/Layout/headerAmedist/index.jsx +240 -0
- package/src/libs/Layout/index.js +51 -0
- package/src/libs/Layout/mainAmedist/_styled.js +87 -0
- package/src/libs/Layout/mainAmedist/index.jsx +45 -0
- package/src/libs/LottiePlayer/_ds.jsx +308 -0
- package/src/libs/LottiePlayer/_eski/StickyLottiePlayer.js +91 -0
- package/src/libs/LottiePlayer/_eski/_styled.js +23 -0
- package/src/libs/LottiePlayer/_eski/index.js +224 -0
- package/src/libs/LottiePlayer/_styled.js +87 -0
- package/src/libs/LottiePlayer/index.jsx +455 -0
- package/src/libs/LottiePlayer/test.json +344 -0
- package/src/libs/ParalaxItem/_dS.jsx +253 -0
- package/src/libs/ParalaxItem/_styled.js +79 -0
- package/src/libs/ParalaxItem/index.jsx +64 -0
- package/src/libs/ParalaxItem/useCoverImageVars.js +98 -0
- package/src/libs/ParalaxItem/useVars.js +208 -0
- package/src/libs/PopConfirm/_dS.jsx +148 -0
- package/src/libs/PopConfirm/index.js +8 -0
- package/src/libs/PopConfirm/tools/_Base.jsx +21 -0
- package/src/libs/PopConfirm/tools/buttonActionProps.js +206 -0
- package/src/libs/PopConfirm/tools/defaultPopConfirmProps.js +33 -0
- package/src/libs/PopConfirm/tools/useVars.js +157 -0
- package/src/libs/PopOver/_dS.jsx +227 -0
- package/src/libs/PopOver/index.js +14 -0
- package/src/libs/PopOver/tools/_Base.jsx +68 -0
- package/src/libs/PopOver/tools/resolveFloatingUiProps.js +25 -0
- package/src/libs/PopOver/tools/useVars.js +65 -0
- package/src/libs/PopTip/_dS.jsx +263 -0
- package/src/libs/PopTip/index.js +14 -0
- package/src/libs/PopTip/tools/_Base.jsx +24 -0
- package/src/libs/PopTip/tools/useVars.js +37 -0
- package/src/libs/PopUp/_dS.jsx +230 -0
- package/src/libs/PopUp/index.js +8 -0
- package/src/libs/PopUp/tools/_Base.jsx +49 -0
- package/src/libs/PopUp/tools/_styled.js +74 -0
- package/src/libs/PopUp/tools/defaultPopUpProps.js +30 -0
- package/src/libs/PopUp/tools/mergeActionButtonProps.js +13 -0
- package/src/libs/PopUp/tools/popUpBodyWrapper.jsx +66 -0
- package/src/libs/PopUp/tools/useVars.js +173 -0
- package/src/libs/ScrollAnimatedItem/Amedist/_styled.js +33 -0
- package/src/libs/ScrollAnimatedItem/Amedist/index.jsx +65 -0
- package/src/libs/ScrollAnimatedItem/_dS.jsx +81 -0
- package/src/libs/ScrollAnimatedItem/index.js +13 -0
- package/src/libs/ScrollBar/Body.js +32 -0
- package/src/libs/ScrollBar/DefaultVariant.js +43 -0
- package/src/libs/ScrollBar/_dS.jsx +502 -0
- package/src/libs/ScrollBar/index.js +25 -0
- package/src/libs/ScrollBar/tools/_Base.jsx +317 -0
- package/src/libs/ScrollBar/tools/_styled.js +9 -0
- package/src/libs/ScrollBar/tools/getScrollHost.js +7 -0
- package/src/libs/ScrollBar/tools/getScrollMetrics.js +83 -0
- package/src/libs/ScrollBar/tools/getThumbProps.js +133 -0
- package/src/libs/ScrollBar/tools/manageBrowsersScrollBar.js +70 -0
- package/src/libs/ScrollBar/tools/scrollBarAxis.js +17 -0
- package/src/libs/ScrollBar/tools/useVars.js +871 -0
- package/src/libs/ScrollBar/tools/useVars.test.jsx +66 -0
- package/src/libs/ScrollFlex/DefaultVariant.js +17 -0
- package/src/libs/ScrollFlex/HoverShadow.js +14 -0
- package/src/libs/ScrollFlex/Plain.js +7 -0
- package/src/libs/ScrollFlex/Shadow.js +16 -0
- package/src/libs/ScrollFlex/_dS.jsx +478 -0
- package/src/libs/ScrollFlex/index.js +20 -0
- package/src/libs/ScrollFlex/tools/01.jpg +0 -0
- package/src/libs/ScrollFlex/tools/_Base.jsx +68 -0
- package/src/libs/ScrollFlex/tools/_styled.js +27 -0
- package/src/libs/ScrollFlex/tools/buildVariantOuterStyle.js +125 -0
- package/src/libs/ScrollFlex/tools/computeDragScrollDelta.js +5 -0
- package/src/libs/ScrollFlex/tools/constants.js +32 -0
- package/src/libs/ScrollFlex/tools/containerDimensions.js +34 -0
- package/src/libs/ScrollFlex/tools/containerExtraInset.js +9 -0
- package/src/libs/ScrollFlex/tools/contentFlexProps.js +67 -0
- package/src/libs/ScrollFlex/tools/contentMeasure.js +96 -0
- package/src/libs/ScrollFlex/tools/cssSizeUtils.js +59 -0
- package/src/libs/ScrollFlex/tools/domInsets.js +25 -0
- package/src/libs/ScrollFlex/tools/organizedFlexProps.js +92 -0
- package/src/libs/ScrollFlex/tools/parentMeasure.js +82 -0
- package/src/libs/ScrollFlex/tools/refUtils.js +23 -0
- package/src/libs/ScrollFlex/tools/scrollBarLayout.js +114 -0
- package/src/libs/ScrollFlex/tools/shellPadding.js +147 -0
- package/src/libs/ScrollFlex/tools/shellTextSelection.js +13 -0
- package/src/libs/ScrollFlex/tools/useScrollFlexMeasureEffects.js +308 -0
- package/src/libs/ScrollFlex/tools/useShellDrag.js +159 -0
- package/src/libs/ScrollFlex/tools/useShellDrag.test.jsx +40 -0
- package/src/libs/ScrollFlex/tools/useVars.js +424 -0
- package/src/libs/Slider/Amedist/_styled.js +532 -0
- package/src/libs/Slider/Amedist/index.jsx +245 -0
- package/src/libs/Slider/Amedist/useTrackpadNavigation.js +78 -0
- package/src/libs/Slider/Amedist/useTrackpadNavigation.test.jsx +112 -0
- package/src/libs/Slider/Amedist/useVars.jsx +674 -0
- package/src/libs/Slider/_dS.jsx +270 -0
- package/src/libs/Slider/index.js +13 -0
- package/src/libs/Space/_dS.jsx +54 -0
- package/src/libs/Space/_styled.js +10 -0
- package/src/libs/Space/index.jsx +23 -0
- package/src/libs/StoryTeller/Amedist/_styled.js +100 -0
- package/src/libs/StoryTeller/Amedist/index.jsx +112 -0
- package/src/libs/StoryTeller/Amedist/useVars.js +210 -0
- package/src/libs/StoryTeller/Amedist/useVars.test.js +18 -0
- package/src/libs/StoryTeller/AmedistHorizontalLeft/index.jsx +147 -0
- package/src/libs/StoryTeller/AmedistHorizontalRight/index.jsx +147 -0
- package/src/libs/StoryTeller/AmedistVertical/index.jsx +205 -0
- package/src/libs/StoryTeller/AmedistVertical/index.test.js +39 -0
- package/src/libs/StoryTeller/index.js +16 -0
- package/src/libs/StoryTeller/slideDesigns.js +9 -0
- package/src/libs/StoryTeller/textItems.jsx +51 -0
- package/src/libs/StoryTeller/textItems.test.jsx +60 -0
- package/src/libs/Table/_dS.jsx +7 -0
- package/src/libs/Table/index.js +1 -0
- package/src/libs/TemplateLiteral/_dS.jsx +73 -0
- package/src/libs/TemplateLiteral/index.jsx +37 -0
- package/src/libs/TextArea/index.jsx +66 -0
- package/src/libs/Typo/_dS.jsx +406 -0
- package/src/libs/Typo/index.js +38 -0
- package/src/libs/Typo/tools/_Base.jsx +153 -0
- package/src/libs/Typo/tools/_styled.js +373 -0
- package/src/libs/Typo/tools/getTruncatedHtml.js +277 -0
- package/src/libs/Typo/tools/isTypoPhrasingOnlyHostTag.js +5 -0
- package/src/libs/Typo/tools/useVars.js +291 -0
- package/src/libs/TypoAnimated/_dS.jsx +243 -0
- package/src/libs/TypoAnimated/animations/animatedWriter.jsx +94 -0
- package/src/libs/TypoAnimated/animations/scatterLines.jsx +126 -0
- package/src/libs/TypoAnimated/animations/scrambleReveal.js +10 -0
- package/src/libs/TypoAnimated/animations/stackedWords.jsx +219 -0
- package/src/libs/TypoAnimated/animations/typewriter.js +10 -0
- package/src/libs/TypoAnimated/index.jsx +14 -0
- package/src/libs/TypoAnimated/tools/AnimationSlot.jsx +32 -0
- package/src/libs/TypoAnimated/tools/Base.jsx +71 -0
- package/src/libs/TypoAnimated/tools/animationRegistry.js +20 -0
- package/src/libs/TypoAnimated/tools/animationUtils.js +112 -0
- package/src/libs/TypoAnimated/tools/autoDuration.js +49 -0
- package/src/libs/TypoAnimated/tools/useAnimations.js +136 -0
- package/src/libs/Visibility/_dS.jsx +122 -0
- package/src/libs/Visibility/index.jsx +27 -0
- package/src/libs/Visibility/useVars.js +12 -0
- package/src/libs/baseDate/_dS.jsx +595 -0
- package/src/libs/baseDate/createBaseDatePackage.js +460 -0
- package/src/libs/baseDate/index.js +202 -0
- package/src/libs/baseDate/tools.js +384 -0
- package/src/libs/baseFetch/_dS.jsx +121 -0
- package/src/libs/baseFetch/_tools.js +232 -0
- package/src/libs/baseFetch/index.js +349 -0
- package/src/libs/baseForm/BaseForm.jsx +19 -0
- package/src/libs/baseForm/BaseFormItem.jsx +284 -0
- package/src/libs/baseForm/BaseFormTest.jsx +145 -0
- package/src/libs/baseForm/DefaultHelper/index.jsx +125 -0
- package/src/libs/baseForm/_dS.jsx +127 -0
- package/src/libs/baseForm/index.js +1 -0
- package/src/libs/baseForm/inputComponents/index.js +7 -0
- package/src/libs/baseForm/tools/clearForm.js +1 -0
- package/src/libs/baseForm/tools/getField.js +22 -0
- package/src/libs/baseForm/tools/getPath.js +16 -0
- package/src/libs/baseForm/tools/mountForm.js +64 -0
- package/src/libs/baseForm/tools/mountItem.js +180 -0
- package/src/libs/baseForm/tools/resetToDefaults.js +1 -0
- package/src/libs/baseForm/tools/resetToLastSubmit.js +1 -0
- package/src/libs/baseForm/tools/setField.js +39 -0
- package/src/libs/baseForm/tools/setFields.js +1 -0
- package/src/libs/baseForm/tools/submitForm.js +1 -0
- package/src/libs/baseForm/tools/unmountForm.js +3 -0
- package/src/libs/baseForm/tools/unmountItem.js +1 -0
- package/src/libs/baseForm/tools/useDefineStore.js +27 -0
- package/src/libs/baseForm/tools/useHelper.js +80 -0
- package/src/libs/baseForm/tools/validateField.js +74 -0
- package/src/libs/baseForm/tools/validateForm.js +20 -0
- package/src/libs/baseForm/useBaseForm.jsx +65 -0
- package/src/libs/baseStore/_dS_useAndCreate.jsx +466 -0
- package/src/libs/baseStore/_dS_useGlobal.jsx +104 -0
- package/src/libs/baseStore/_dS_useLocal.jsx +84 -0
- package/src/libs/baseStore/create/index.js +189 -0
- package/src/libs/baseStore/globalData/index.js +3 -0
- package/src/libs/baseStore/index.js +13 -0
- package/src/libs/baseStore/use/index.js +94 -0
- package/src/libs/baseStore/useGlobal/index.js +7 -0
- package/src/libs/baseStore/useLocal/index.js +11 -0
- package/src/libs/byPath/_dS.jsx +232 -0
- package/src/libs/byPath/index.js +154 -0
- package/src/libs/cleanFalsyValues/_dS.jsx +187 -0
- package/src/libs/cleanFalsyValues/index.js +86 -0
- package/src/libs/colorAlpha/_dS.jsx +123 -0
- package/src/libs/colorAlpha/index.js +25 -0
- package/src/libs/colorConverter/_dS.jsx +105 -0
- package/src/libs/colorConverter/index.js +497 -0
- package/src/libs/colorFind/_dS.jsx +115 -0
- package/src/libs/colorFind/index.js +70 -0
- package/src/libs/colorGet/_dS.jsx +101 -0
- package/src/libs/colorGet/index.js +149 -0
- package/src/libs/colorGet3DShadow/_dS.jsx +166 -0
- package/src/libs/colorGet3DShadow/index.js +45 -0
- package/src/libs/colorPickHigherContrast/_dS.jsx +136 -0
- package/src/libs/colorPickHigherContrast/index.js +18 -0
- package/src/libs/colorShader/_dS.jsx +110 -0
- package/src/libs/colorShader/index.js +40 -0
- package/src/libs/colorTinter/_dS.jsx +107 -0
- package/src/libs/colorTinter/index.js +42 -0
- package/src/libs/colorWcagMatch/_dS.jsx +327 -0
- package/src/libs/colorWcagMatch/index.js +76 -0
- package/src/libs/colorWcagValue/_dS.jsx +120 -0
- package/src/libs/colorWcagValue/index.js +18 -0
- package/src/libs/columnTypes/_dS.jsx +90 -0
- package/src/libs/columnTypes/index.jsx +107 -0
- package/src/libs/copyToClipboard/_dS.jsx +215 -0
- package/src/libs/copyToClipboard/index.js +147 -0
- package/src/libs/copyToClipboard/reactNodeToPlainText.js +80 -0
- package/src/libs/createImageCatalog/_dS.jsx +260 -0
- package/src/libs/createImageCatalog/index.js +100 -0
- package/src/libs/createImageCatalog/tools/base-image-catalog-setup.cjs +10 -0
- package/src/libs/createImageCatalog/tools/base-image-index.cjs +9 -0
- package/src/libs/createImageCatalog/vars.js +875 -0
- package/src/libs/cssNormalizeSize/_dS.jsx +49 -0
- package/src/libs/cssNormalizeSize/index.js +30 -0
- package/src/libs/cssSpacingResolver/_dS.jsx +57 -0
- package/src/libs/cssSpacingResolver/index.js +51 -0
- package/src/libs/debouncedFunction/_dS.jsx +308 -0
- package/src/libs/debouncedFunction/index.js +121 -0
- package/src/libs/deepMerge/_dS.jsx +88 -0
- package/src/libs/deepMerge/index.js +30 -0
- package/src/libs/delayedFunction/_dS.jsx +148 -0
- package/src/libs/delayedFunction/index.js +52 -0
- package/src/libs/downloadAsCsv/_dS.jsx +143 -0
- package/src/libs/downloadAsCsv/index.js +57 -0
- package/src/libs/findDifferences/_dS.jsx +78 -0
- package/src/libs/findDifferences/index.js +120 -0
- package/src/libs/generateRandom/_dS.jsx +199 -0
- package/src/libs/generateRandom/index.js +136 -0
- package/src/libs/getClientData/_dS.jsx +185 -0
- package/src/libs/getClientData/index.js +208 -0
- package/src/libs/getPageRrdInfo/_dS.jsx +78 -0
- package/src/libs/getPageRrdInfo/index.js +59 -0
- package/src/libs/getText/_dS.jsx +192 -0
- package/src/libs/getText/index.js +39 -0
- package/src/libs/getTimeDiff/_dS.jsx +345 -0
- package/src/libs/getTimeDiff/index.js +245 -0
- package/src/libs/isArray/_dS.jsx +68 -0
- package/src/libs/isArray/index.js +2 -0
- package/src/libs/isArrayOrPlainObject/_dS.jsx +75 -0
- package/src/libs/isArrayOrPlainObject/index.js +4 -0
- package/src/libs/isDeepEqual/_dS.jsx +343 -0
- package/src/libs/isDeepEqual/index.js +83 -0
- package/src/libs/isNumber/_dS.jsx +71 -0
- package/src/libs/isNumber/index.js +1 -0
- package/src/libs/isPlainObject/_dS.jsx +75 -0
- package/src/libs/isPlainObject/index.js +7 -0
- package/src/libs/isShallowEqual/_dS.jsx +82 -0
- package/src/libs/isShallowEqual/index.js +34 -0
- package/src/libs/logReferrers/index.js +7 -0
- package/src/libs/manageSearchParams/_dS.jsx +496 -0
- package/src/libs/manageSearchParams/index.js +426 -0
- package/src/libs/notifier/_Base.js +258 -0
- package/src/libs/notifier/_dS.jsx +219 -0
- package/src/libs/notifier/index.js +16 -0
- package/src/libs/pushAsSorted/_dS.jsx +169 -0
- package/src/libs/pushAsSorted/index.js +46 -0
- package/src/libs/queryConverter/_dS.jsx +339 -0
- package/src/libs/queryConverter/index.js +146 -0
- package/src/libs/queryConverter/mergeImportIntoStore.js +48 -0
- package/src/libs/queryConverter/prefixPath.js +30 -0
- package/src/libs/scrollLock/_dS.jsx +69 -0
- package/src/libs/scrollLock/index.js +33 -0
- package/src/libs/sleep/_dS.jsx +54 -0
- package/src/libs/sleep/index.js +2 -0
- package/src/libs/sortBy/_dS.jsx +96 -0
- package/src/libs/sortBy/index.js +38 -0
- package/src/libs/stringCaseConverter/_dS.jsx +120 -0
- package/src/libs/stringCaseConverter/index.js +97 -0
- package/src/libs/templateLiteralTo/_dS.jsx +82 -0
- package/src/libs/templateLiteralTo/dedent.js +46 -0
- package/src/libs/templateLiteralTo/index.js +49 -0
- package/src/libs/typeOf/_dS.jsx +70 -0
- package/src/libs/typeOf/index.js +20 -0
- package/src/libs/useBaseEffect/_dS.jsx +390 -0
- package/src/libs/useBaseEffect/index.js +87 -0
- package/src/libs/useBaseFetch/index.js +208 -0
- package/src/libs/useCatalogImage/_dS.jsx +100 -0
- package/src/libs/useCatalogImage/index.js +9 -0
- package/src/libs/useCheckOverflow/_dS.jsx +264 -0
- package/src/libs/useCheckOverflow/index.js +122 -0
- package/src/libs/useCountNumber/_dS.jsx +236 -0
- package/src/libs/useCountNumber/format.js +94 -0
- package/src/libs/useCountNumber/format.test.js +47 -0
- package/src/libs/useCountNumber/index.js +47 -0
- package/src/libs/useCountNumber/useVars.js +360 -0
- package/src/libs/useDebouncedFunction/_dS.jsx +168 -0
- package/src/libs/useDebouncedFunction/index.js +41 -0
- package/src/libs/useDebouncedFunction/useStableCallback.js +7 -0
- package/src/libs/useDebouncedValue/_dS.jsx +120 -0
- package/src/libs/useDebouncedValue/index.js +85 -0
- package/src/libs/useDeepEqual/_dS.jsx +116 -0
- package/src/libs/useDeepEqual/index.js +6 -0
- package/src/libs/useDelayedFunction/_dS.jsx +142 -0
- package/src/libs/useDelayedFunction/index.js +61 -0
- package/src/libs/useEffectAfterMount/_dS.jsx +78 -0
- package/src/libs/useEffectAfterMount/index.js +15 -0
- package/src/libs/useEventListener/_dS.jsx +114 -0
- package/src/libs/useEventListener/index.js +68 -0
- package/src/libs/useImagePreloader/_dS.jsx +50 -0
- package/src/libs/useImagePreloader/index.js +65 -0
- package/src/libs/useImagesReady/_dS.jsx +51 -0
- package/src/libs/useImagesReady/index.js +74 -0
- package/src/libs/useMouseXY/_dS.jsx +61 -0
- package/src/libs/useMouseXY/index.js +62 -0
- package/src/libs/useObserver/_dS.jsx +260 -0
- package/src/libs/useObserver/index.js +239 -0
- package/src/libs/useObserver/index.test.js +72 -0
- package/src/libs/usePrevious/_dS.jsx +99 -0
- package/src/libs/usePrevious/index.js +37 -0
- package/src/libs/useRevealNavItem/_dS.jsx +129 -0
- package/src/libs/useRevealNavItem/index.js +96 -0
- package/src/libs/useScrollThrottle/_dS.jsx +179 -0
- package/src/libs/useScrollThrottle/index.js +29 -0
- package/src/libs/useScrollTopLeft/_dS.jsx +175 -0
- package/src/libs/useScrollTopLeft/index.js +77 -0
- package/src/libs/useScrollWidthHeight/_dS.jsx +127 -0
- package/src/libs/useScrollWidthHeight/index.js +56 -0
- package/src/libs/useSearchParams/_dS.jsx +65 -0
- package/src/libs/useSearchParams/index.js +32 -0
- package/src/libs/useTimer/_dS.jsx +120 -0
- package/src/libs/useTimer/index.js +186 -0
- package/vite.aliases.mjs +43 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { baseStore } from "../../baseStore";
|
|
2
|
+
|
|
3
|
+
const normalizeUrl = (rawUrl = "") => {
|
|
4
|
+
try {
|
|
5
|
+
const u = new URL(
|
|
6
|
+
rawUrl,
|
|
7
|
+
typeof window !== "undefined" ? window.location.origin : "http://x",
|
|
8
|
+
);
|
|
9
|
+
u.hash = "";
|
|
10
|
+
const params = Array.from(u.searchParams.entries()).sort(([aK, aV], [bK, bV]) =>
|
|
11
|
+
aK === bK ? String(aV).localeCompare(String(bV)) : aK.localeCompare(bK),
|
|
12
|
+
);
|
|
13
|
+
u.search = "";
|
|
14
|
+
for (const [k, v] of params) u.searchParams.append(k, v);
|
|
15
|
+
return u.pathname + (u.search ? `?${u.searchParams.toString()}` : "");
|
|
16
|
+
} catch {
|
|
17
|
+
return String(rawUrl).trim();
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
const buildDedupeKey = ({ url = "unknown", method = "GET" } = {}, location) => {
|
|
22
|
+
return `${location.pathname}|${String(method).toUpperCase()}|${normalizeUrl(url)}`;
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export const loadingApi = {
|
|
26
|
+
add: (item = {}, settings = {}) => {
|
|
27
|
+
const setGlobal = baseStore.globalData.set;
|
|
28
|
+
const {
|
|
29
|
+
_loadingManager: { apiQueue = [] } = {},
|
|
30
|
+
isDevMode,
|
|
31
|
+
_reactRouterDom: { location } = {},
|
|
32
|
+
} = baseStore.globalData.get();
|
|
33
|
+
|
|
34
|
+
const { queueName = buildDedupeKey(item, location), url = "unknown" } = item;
|
|
35
|
+
const { enableMultiple = false } = settings;
|
|
36
|
+
|
|
37
|
+
if (!url) return false;
|
|
38
|
+
|
|
39
|
+
const find = apiQueue.find((q) => q.queueName === queueName);
|
|
40
|
+
|
|
41
|
+
if (!enableMultiple && find) {
|
|
42
|
+
isDevMode && console.log("Allready in queue.");
|
|
43
|
+
return false;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
setGlobal((s) => {
|
|
47
|
+
s.isLoadingApi = true;
|
|
48
|
+
s.isLoading = true;
|
|
49
|
+
s._loadingManager = {
|
|
50
|
+
...s._loadingManager,
|
|
51
|
+
apiQueue: [...s._loadingManager.apiQueue, { queueName, url }],
|
|
52
|
+
};
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
return queueName;
|
|
56
|
+
},
|
|
57
|
+
remove: (queueName) => {
|
|
58
|
+
if (!queueName) return false;
|
|
59
|
+
const setGlobal = baseStore.globalData.set;
|
|
60
|
+
const {
|
|
61
|
+
isLoadingPage,
|
|
62
|
+
_loadingManager: { apiQueue = [] } = {},
|
|
63
|
+
isDevMode,
|
|
64
|
+
} = baseStore.globalData.get();
|
|
65
|
+
|
|
66
|
+
const find = apiQueue.find((q) => q.queueName === queueName);
|
|
67
|
+
|
|
68
|
+
if (!find) {
|
|
69
|
+
isDevMode && console.log("Not found in queue.");
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const newApiQueue = apiQueue.filter((q) => q.queueName !== queueName);
|
|
74
|
+
|
|
75
|
+
setGlobal((s) => {
|
|
76
|
+
s.isLoadingApi = newApiQueue.length > 0;
|
|
77
|
+
s.isLoading = newApiQueue.length > 0 || isLoadingPage;
|
|
78
|
+
s._loadingManager = {
|
|
79
|
+
...s._loadingManager,
|
|
80
|
+
apiQueue: newApiQueue,
|
|
81
|
+
};
|
|
82
|
+
});
|
|
83
|
+
|
|
84
|
+
return true;
|
|
85
|
+
},
|
|
86
|
+
clear: () => {
|
|
87
|
+
const setGlobal = baseStore.globalData.set;
|
|
88
|
+
const { isLoadingPage } = baseStore.globalData.get();
|
|
89
|
+
setGlobal((s) => {
|
|
90
|
+
s.isLoadingApi = false;
|
|
91
|
+
s.isLoading = isLoadingPage;
|
|
92
|
+
s._loadingManager = {
|
|
93
|
+
...s._loadingManager,
|
|
94
|
+
apiQueue: [],
|
|
95
|
+
};
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
return true;
|
|
99
|
+
},
|
|
100
|
+
};
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
import { typeOf } from "../../typeOf";
|
|
2
|
+
|
|
3
|
+
const trimSegment = (segment) => String(segment ?? "").replace(/^\/+|\/+$/g, "");
|
|
4
|
+
|
|
5
|
+
const resolvePrefixSegment = (prefixPath, language) => {
|
|
6
|
+
if (prefixPath == null || prefixPath === "") return null;
|
|
7
|
+
if (typeof prefixPath === "string") {
|
|
8
|
+
const trimmed = trimSegment(prefixPath);
|
|
9
|
+
return trimmed || null;
|
|
10
|
+
}
|
|
11
|
+
if (typeOf(prefixPath) === "object") {
|
|
12
|
+
const value = prefixPath[language] ?? prefixPath.en ?? null;
|
|
13
|
+
const trimmed = trimSegment(value);
|
|
14
|
+
return trimmed || null;
|
|
15
|
+
}
|
|
16
|
+
return null;
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
/** RRD path segment(s) without leading slash; relatives use a leading slash. */
|
|
20
|
+
export const joinRouteSegments = (...segments) => {
|
|
21
|
+
const parts = segments.map(trimSegment).filter(Boolean);
|
|
22
|
+
return parts.join("/");
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
export const joinRoutePathname = (...segments) => {
|
|
26
|
+
const joined = joinRouteSegments(...segments);
|
|
27
|
+
return joined ? `/${joined}` : "/";
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
const isNavGroup = (node) =>
|
|
31
|
+
Array.isArray(node?.children) && node.children.length > 0 && !node.Component;
|
|
32
|
+
|
|
33
|
+
const collectLanguagesFromPath = (path) => {
|
|
34
|
+
if (typeOf(path) === "object") return Object.keys(path);
|
|
35
|
+
return [];
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const collectLanguagesForRoute = (pagePath, categories) => {
|
|
39
|
+
if (typeOf(pagePath) === "object") return collectLanguagesFromPath(pagePath);
|
|
40
|
+
const languages = new Set(["en"]);
|
|
41
|
+
categories.forEach((category) => {
|
|
42
|
+
if (typeOf(category.prefixPath) === "object") {
|
|
43
|
+
Object.keys(category.prefixPath).forEach((lang) => languages.add(lang));
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
return [...languages];
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
const buildRelativesMap = (pagePath, categories) => {
|
|
50
|
+
const pagePathIsObject = typeOf(pagePath) === "object";
|
|
51
|
+
const languages = collectLanguagesForRoute(pagePath, categories);
|
|
52
|
+
|
|
53
|
+
const relatives = {};
|
|
54
|
+
for (const language of languages) {
|
|
55
|
+
const pageSegment = pagePathIsObject ? pagePath[language] : pagePath;
|
|
56
|
+
const prefixSegments = categories.map((category) =>
|
|
57
|
+
resolvePrefixSegment(category.prefixPath, language),
|
|
58
|
+
);
|
|
59
|
+
relatives[language] = joinRoutePathname(...prefixSegments, pageSegment);
|
|
60
|
+
}
|
|
61
|
+
return relatives;
|
|
62
|
+
};
|
|
63
|
+
|
|
64
|
+
const pushPreparedRoute = (routes, routeConfig) => {
|
|
65
|
+
routes.push(routeConfig);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
const prepareRouteNode = (routes, route, context) => {
|
|
69
|
+
if (!route) return;
|
|
70
|
+
|
|
71
|
+
const { path, handle, children, title, prefixPath, ...rest } = route;
|
|
72
|
+
const { title: handleTitle, pageTitle, ...restHandle } = handle || {};
|
|
73
|
+
const mergedTitle = handleTitle ?? title;
|
|
74
|
+
|
|
75
|
+
if (isNavGroup(route)) {
|
|
76
|
+
const categoryEntry = {
|
|
77
|
+
...(mergedTitle != null ? { title: mergedTitle } : {}),
|
|
78
|
+
...(prefixPath != null ? { prefixPath } : {}),
|
|
79
|
+
};
|
|
80
|
+
const nextContext = {
|
|
81
|
+
categories: [...context.categories, categoryEntry],
|
|
82
|
+
};
|
|
83
|
+
route.children.forEach((child) => prepareRouteNode(routes, child, nextContext));
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
const categories = context.categories;
|
|
88
|
+
|
|
89
|
+
if (typeOf(path) === "object") {
|
|
90
|
+
const relatives = buildRelativesMap(path, categories);
|
|
91
|
+
Object.keys(path).forEach((language) => {
|
|
92
|
+
const routePath = joinRouteSegments(
|
|
93
|
+
...categories.map((category) => resolvePrefixSegment(category.prefixPath, language)),
|
|
94
|
+
path[language],
|
|
95
|
+
);
|
|
96
|
+
pushPreparedRoute(routes, {
|
|
97
|
+
...rest,
|
|
98
|
+
path: routePath,
|
|
99
|
+
handle: {
|
|
100
|
+
language,
|
|
101
|
+
relatives,
|
|
102
|
+
...(categories.length > 0 ? { categories: [...categories] } : {}),
|
|
103
|
+
...(mergedTitle?.[language] != null ? { title: mergedTitle[language] } : {}),
|
|
104
|
+
...(pageTitle?.[language] != null ? { pageTitle: pageTitle[language] } : {}),
|
|
105
|
+
...restHandle,
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
if (path === "/" || path === "") {
|
|
113
|
+
pushPreparedRoute(routes, {
|
|
114
|
+
...rest,
|
|
115
|
+
path: path === "" ? "/" : path,
|
|
116
|
+
handle: {
|
|
117
|
+
...(categories.length > 0 ? { categories: [...categories] } : {}),
|
|
118
|
+
...restHandle,
|
|
119
|
+
},
|
|
120
|
+
});
|
|
121
|
+
return;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
if (path != null && path !== "") {
|
|
125
|
+
const languages = collectLanguagesForRoute(path, categories);
|
|
126
|
+
const primaryLanguage = languages[0] ?? "en";
|
|
127
|
+
const routePath = joinRouteSegments(
|
|
128
|
+
...categories.map((category) =>
|
|
129
|
+
resolvePrefixSegment(category.prefixPath, primaryLanguage),
|
|
130
|
+
),
|
|
131
|
+
path,
|
|
132
|
+
);
|
|
133
|
+
const relatives = buildRelativesMap(path, categories);
|
|
134
|
+
pushPreparedRoute(routes, {
|
|
135
|
+
...rest,
|
|
136
|
+
path: routePath || trimSegment(path),
|
|
137
|
+
handle: {
|
|
138
|
+
relatives,
|
|
139
|
+
...(categories.length > 0 ? { categories: [...categories] } : {}),
|
|
140
|
+
...restHandle,
|
|
141
|
+
...(typeOf(mergedTitle) === "object" ? {} : mergedTitle != null ? { title: mergedTitle } : {}),
|
|
142
|
+
},
|
|
143
|
+
});
|
|
144
|
+
return;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
pushPreparedRoute(routes, route);
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
/**
|
|
151
|
+
* Flattens SITEMAP (pages + nested category groups) into RRD-ready route objects.
|
|
152
|
+
* Category prefixPath stacks per level; missing prefix at a level adds no segment.
|
|
153
|
+
*/
|
|
154
|
+
export const prepareRoutes = (arr = []) => {
|
|
155
|
+
const routes = [];
|
|
156
|
+
if (!Array.isArray(arr)) return routes;
|
|
157
|
+
arr.forEach((route) => prepareRouteNode(routes, route, { categories: [] }));
|
|
158
|
+
return routes;
|
|
159
|
+
};
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Builds the app route tree passed to createBrowserRouter (Layout wrapper + prepared children).
|
|
163
|
+
*/
|
|
164
|
+
export const buildAppRoutes = (rrdSettings = {}) => {
|
|
165
|
+
const { Layout, SITEMAP = [], overridePrepareRoutes } = rrdSettings;
|
|
166
|
+
const prepare =
|
|
167
|
+
typeof overridePrepareRoutes === "function" ? overridePrepareRoutes : prepareRoutes;
|
|
168
|
+
const preparedRoutes = prepare(SITEMAP);
|
|
169
|
+
|
|
170
|
+
if (!Layout) return { appRoutes: preparedRoutes, preparedRoutes };
|
|
171
|
+
|
|
172
|
+
return {
|
|
173
|
+
appRoutes: [{ Component: Layout, children: preparedRoutes }],
|
|
174
|
+
preparedRoutes,
|
|
175
|
+
};
|
|
176
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { createGlobalStyle } from "styled-components";
|
|
2
|
+
|
|
3
|
+
/** Do not interpolate @import here — it breaks production CSSOM injection for component rules. */
|
|
4
|
+
export const GlobalStyle = createGlobalStyle`
|
|
5
|
+
${({ defaultGlobalStyle }) => defaultGlobalStyle}
|
|
6
|
+
${({ globalStyle }) => globalStyle}
|
|
7
|
+
`;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { css } from "styled-components";
|
|
2
|
+
|
|
3
|
+
const CSS_IMPORT_RE = /@import\s+(?:url\([^)]+\)|["'][^"']+["'])[^;]*;/gi;
|
|
4
|
+
const CSS_IMPORT_URL_RE =
|
|
5
|
+
/@import\s+(?:url\(\s*(['"]?)([^"')]+)\1\s*\)|(['"])([^"']+)\3)[^;]*;/gi;
|
|
6
|
+
|
|
7
|
+
const collectCssStrings = (value) => {
|
|
8
|
+
if (value == null) return [];
|
|
9
|
+
if (typeof value === "string" || typeof value === "number") return [String(value)];
|
|
10
|
+
if (Array.isArray(value)) return value.flatMap(collectCssStrings);
|
|
11
|
+
return [];
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export const getCssDeclarationValue = (value, propertyName) => {
|
|
15
|
+
if (!propertyName) return null;
|
|
16
|
+
const declarationRe = new RegExp(`${propertyName}\\s*:\\s*([^;]+)`, "i");
|
|
17
|
+
|
|
18
|
+
for (const chunk of collectCssStrings(value)) {
|
|
19
|
+
const match = declarationRe.exec(chunk);
|
|
20
|
+
if (match?.[1]) return match[1].replace(/\s*!important\s*$/i, "").trim();
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
return null;
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
export const collectFontImports = (fonts = {}) => {
|
|
27
|
+
const imports = new Set();
|
|
28
|
+
|
|
29
|
+
Object.values(fonts || {}).forEach((fontCss) => {
|
|
30
|
+
collectCssStrings(fontCss).forEach((chunk) => {
|
|
31
|
+
const matches = chunk.match(CSS_IMPORT_RE);
|
|
32
|
+
matches?.forEach((match) => imports.add(match.trim()));
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
|
|
36
|
+
return imports.size ? css`${Array.from(imports).join("\n")}` : null;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export const collectFontImportUrls = (fonts = {}) => {
|
|
40
|
+
const urls = new Set();
|
|
41
|
+
|
|
42
|
+
Object.values(fonts || {}).forEach((fontCss) => {
|
|
43
|
+
collectCssStrings(fontCss).forEach((chunk) => {
|
|
44
|
+
CSS_IMPORT_URL_RE.lastIndex = 0;
|
|
45
|
+
let match = CSS_IMPORT_URL_RE.exec(chunk);
|
|
46
|
+
while (match) {
|
|
47
|
+
const url = match[2] || match[4];
|
|
48
|
+
if (url) urls.add(url.trim());
|
|
49
|
+
match = CSS_IMPORT_URL_RE.exec(chunk);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
return Array.from(urls);
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
export const stripCssImports = (value) => {
|
|
58
|
+
if (value == null) return value;
|
|
59
|
+
if (typeof value === "string") return value.replace(CSS_IMPORT_RE, "");
|
|
60
|
+
if (Array.isArray(value)) {
|
|
61
|
+
return value.map((item) => (typeof item === "string" ? stripCssImports(item) : item));
|
|
62
|
+
}
|
|
63
|
+
return value;
|
|
64
|
+
};
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
import { css } from "styled-components";
|
|
4
|
+
import { DEFAULT_BREAKPOINTS } from "../../../constants/DEFAULT_BREAKPOINTS";
|
|
5
|
+
import { DEFAULT_MAX_ASP_RATIO } from "../../../constants/DEFAULT_MAX_ASP_RATIO";
|
|
6
|
+
import { DEFAULT_MIN_ASP_RATIO } from "../../../constants/DEFAULT_MIN_ASP_RATIO";
|
|
7
|
+
import { colorAlpha } from "../../colorAlpha";
|
|
8
|
+
import { colorTinter } from "../../colorTinter";
|
|
9
|
+
import { colorShader } from "../../colorShader";
|
|
10
|
+
import { colorConverter } from "../../colorConverter";
|
|
11
|
+
import { colorWcagMatch } from "../../colorWcagMatch";
|
|
12
|
+
import { colorWcagValue } from "../../colorWcagValue";
|
|
13
|
+
import { colorGet } from "../../colorGet";
|
|
14
|
+
import { colorFind } from "../../colorFind";
|
|
15
|
+
import { cssNormalizeSize } from "../../cssNormalizeSize";
|
|
16
|
+
import { cssSpacingResolver } from "../../cssSpacingResolver";
|
|
17
|
+
import { get3DShadow } from "../../colorGet3DShadow";
|
|
18
|
+
|
|
19
|
+
export const generateMediaFunctions = ({
|
|
20
|
+
breakpoints = DEFAULT_BREAKPOINTS,
|
|
21
|
+
maxAspRatio = DEFAULT_MAX_ASP_RATIO,
|
|
22
|
+
minAspRatio = DEFAULT_MIN_ASP_RATIO,
|
|
23
|
+
} = {}) => {
|
|
24
|
+
const mediaFunctions = {
|
|
25
|
+
phone: (content) => {
|
|
26
|
+
return css`
|
|
27
|
+
@media (max-aspect-ratio: ${maxAspRatio}),
|
|
28
|
+
(min-aspect-ratio: ${minAspRatio}),
|
|
29
|
+
(max-width: ${breakpoints.tablet[0] + "px"}) {
|
|
30
|
+
${content}
|
|
31
|
+
}
|
|
32
|
+
`;
|
|
33
|
+
},
|
|
34
|
+
|
|
35
|
+
tablet: (content) => css`
|
|
36
|
+
@media (min-aspect-ratio: ${maxAspRatio})
|
|
37
|
+
and (max-aspect-ratio: ${minAspRatio})
|
|
38
|
+
and (min-width: ${breakpoints.tablet[0] + "px"})
|
|
39
|
+
and (max-width: ${breakpoints.desktop[0] + "px"}) {
|
|
40
|
+
${content}
|
|
41
|
+
}
|
|
42
|
+
`,
|
|
43
|
+
|
|
44
|
+
desktop: (content) => css`
|
|
45
|
+
@media (min-aspect-ratio: ${maxAspRatio})
|
|
46
|
+
and (max-aspect-ratio: ${minAspRatio})
|
|
47
|
+
and (min-width: ${breakpoints.desktop[0] + "px"})
|
|
48
|
+
and (max-width: ${breakpoints.large[0] + "px"}) {
|
|
49
|
+
${content}
|
|
50
|
+
}
|
|
51
|
+
`,
|
|
52
|
+
|
|
53
|
+
large: (content) => css`
|
|
54
|
+
@media (min-aspect-ratio: ${maxAspRatio})
|
|
55
|
+
and (max-aspect-ratio: ${minAspRatio})
|
|
56
|
+
and (min-width: ${breakpoints.large[0] + "px"})
|
|
57
|
+
and (max-width: ${breakpoints.uhd[0] + "px"}) {
|
|
58
|
+
${content}
|
|
59
|
+
}
|
|
60
|
+
`,
|
|
61
|
+
|
|
62
|
+
uhd: (content) => css`
|
|
63
|
+
@media (min-aspect-ratio: ${maxAspRatio})
|
|
64
|
+
and (max-aspect-ratio: ${minAspRatio})
|
|
65
|
+
and (min-width: ${breakpoints.uhd[0] + "px"})
|
|
66
|
+
and (max-width: ${breakpoints.uhd8[0] + "px"}) {
|
|
67
|
+
${content}
|
|
68
|
+
}
|
|
69
|
+
`,
|
|
70
|
+
|
|
71
|
+
uhd8: (content) => css`
|
|
72
|
+
@media (min-aspect-ratio: ${maxAspRatio})
|
|
73
|
+
and (max-aspect-ratio: ${minAspRatio})
|
|
74
|
+
and (min-width: ${breakpoints.uhd8[0] + "px"}) {
|
|
75
|
+
${content}
|
|
76
|
+
}
|
|
77
|
+
`,
|
|
78
|
+
|
|
79
|
+
vertical: (content) => css`
|
|
80
|
+
@media (max-aspect-ratio: ${maxAspRatio}) {
|
|
81
|
+
${content}
|
|
82
|
+
}
|
|
83
|
+
`,
|
|
84
|
+
|
|
85
|
+
square: (content) => css`
|
|
86
|
+
@media (aspect-ratio: 1/1) {
|
|
87
|
+
${content}
|
|
88
|
+
}
|
|
89
|
+
`,
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
mediaFunctions.responsive = (arrStr = "", content) => {
|
|
93
|
+
const arr = arrStr.replace(/\s/g, "").split?.(",");
|
|
94
|
+
return css`
|
|
95
|
+
${arr.includes("phone") && mediaFunctions.phone(content)}
|
|
96
|
+
${arr.includes("tablet") && mediaFunctions.tablet(content)}
|
|
97
|
+
${arr.includes("desktop") && mediaFunctions.desktop(content)}
|
|
98
|
+
${arr.includes("large") && mediaFunctions.large(content)}
|
|
99
|
+
${arr.includes("uhd") && mediaFunctions.uhd(content)}
|
|
100
|
+
${arr.includes("uhd8") && mediaFunctions.uhd8(content)}
|
|
101
|
+
${arr.includes("vertical") && mediaFunctions.vertical(content)}
|
|
102
|
+
${arr.includes("square") && mediaFunctions.square(content)}
|
|
103
|
+
`;
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
const keys = ["phone", "tablet", "desktop", "large", "uhd", "uhd8", "vertical", "square"];
|
|
107
|
+
|
|
108
|
+
keys.forEach((key) => {
|
|
109
|
+
mediaFunctions.responsive[key] = (content) => mediaFunctions[key](content);
|
|
110
|
+
});
|
|
111
|
+
|
|
112
|
+
mediaFunctions.freeBpMixin = (prop, obj) => {
|
|
113
|
+
let styles = "";
|
|
114
|
+
for (let i = 0; i < obj.length; i++) {
|
|
115
|
+
const bpRange = obj[i];
|
|
116
|
+
const min = bpRange[0];
|
|
117
|
+
const max = bpRange[1];
|
|
118
|
+
const value = obj[i][2];
|
|
119
|
+
styles += `
|
|
120
|
+
@media (min-width: ${min}px) and (max-width: ${max}px) {
|
|
121
|
+
${prop}: ${value};
|
|
122
|
+
}
|
|
123
|
+
`;
|
|
124
|
+
}
|
|
125
|
+
return css`
|
|
126
|
+
${styles}
|
|
127
|
+
`;
|
|
128
|
+
};
|
|
129
|
+
|
|
130
|
+
mediaFunctions.colorAlpha = colorAlpha;
|
|
131
|
+
mediaFunctions.colorTinter = colorTinter;
|
|
132
|
+
mediaFunctions.colorShader = colorShader;
|
|
133
|
+
mediaFunctions.colorConverter = colorConverter;
|
|
134
|
+
mediaFunctions.colorWcagMatch = colorWcagMatch;
|
|
135
|
+
mediaFunctions.colorWcagValue = colorWcagValue;
|
|
136
|
+
mediaFunctions.colorGet = colorGet;
|
|
137
|
+
mediaFunctions.colorFind = colorFind;
|
|
138
|
+
mediaFunctions.get3DShadow = get3DShadow;
|
|
139
|
+
mediaFunctions.cssNormalizeSize = cssNormalizeSize;
|
|
140
|
+
mediaFunctions.cssSpacingResolver = cssSpacingResolver;
|
|
141
|
+
|
|
142
|
+
return mediaFunctions;
|
|
143
|
+
};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { generateMediaFunctions } from "./generateMediaFunctions";
|
|
3
|
+
|
|
4
|
+
const flattenCss = (value) => {
|
|
5
|
+
if (value == null || typeof value === "boolean") return "";
|
|
6
|
+
if (typeof value === "string" || typeof value === "number") return String(value);
|
|
7
|
+
if (typeof value.join === "function") return value.join("");
|
|
8
|
+
if (Array.isArray(value)) return value.map(flattenCss).join("");
|
|
9
|
+
return "";
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
describe("generateMediaFunctions", () => {
|
|
13
|
+
it("exposes vertical and square helpers on theme.responsive", () => {
|
|
14
|
+
const media = generateMediaFunctions({
|
|
15
|
+
maxAspRatio: 0.5,
|
|
16
|
+
minAspRatio: 3,
|
|
17
|
+
breakpoints: {
|
|
18
|
+
tablet: [601],
|
|
19
|
+
desktop: [961],
|
|
20
|
+
large: [1441],
|
|
21
|
+
uhd: [1921],
|
|
22
|
+
uhd8: [3841],
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
expect(typeof media.vertical).toBe("function");
|
|
27
|
+
expect(typeof media.square).toBe("function");
|
|
28
|
+
expect(typeof media.responsive.vertical).toBe("function");
|
|
29
|
+
expect(typeof media.responsive.square).toBe("function");
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
it("vertical uses max-aspect-ratio from maxAspRatio", () => {
|
|
33
|
+
const media = generateMediaFunctions({ maxAspRatio: 0.5 });
|
|
34
|
+
const cssText = flattenCss(media.vertical("vertical-styles"));
|
|
35
|
+
|
|
36
|
+
expect(cssText).toContain("max-aspect-ratio: 0.5");
|
|
37
|
+
expect(cssText).toContain("vertical-styles");
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
it("square targets 1/1 aspect ratio", () => {
|
|
41
|
+
const media = generateMediaFunctions();
|
|
42
|
+
const cssText = flattenCss(media.square("square-styles"));
|
|
43
|
+
|
|
44
|
+
expect(cssText).toContain("aspect-ratio: 1/1");
|
|
45
|
+
expect(cssText).toContain("square-styles");
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
it("responsive combinator can mix width and ratio axes", () => {
|
|
49
|
+
const media = generateMediaFunctions({ maxAspRatio: 0.5 });
|
|
50
|
+
const cssText = flattenCss(media.responsive("tablet, vertical", "mixed-styles"));
|
|
51
|
+
|
|
52
|
+
expect(cssText).toContain("min-width: 601px");
|
|
53
|
+
expect(cssText).toContain("max-aspect-ratio: 0.5");
|
|
54
|
+
expect(cssText).toContain("mixed-styles");
|
|
55
|
+
});
|
|
56
|
+
});
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { useEffect, useMemo } from "react";
|
|
2
|
+
import { ThemeProvider } from "styled-components";
|
|
3
|
+
import { useTheme } from "./useTheme";
|
|
4
|
+
import { generateMediaFunctions } from "./generateMediaFunctions";
|
|
5
|
+
import { prepareRemSettings } from "./prepareRemSettings";
|
|
6
|
+
import { GlobalStyle } from "./GlobalStyle";
|
|
7
|
+
import { DEFAULT_PRIMARY_FONT } from "../../../constants/DEFAULT_PRIMARY_FONT";
|
|
8
|
+
import { DEFAULT_GLOBAL_STYLE } from "../../../constants/DEFAULT_GLOBAL_STYLE";
|
|
9
|
+
import { collectFontImportUrls, stripCssImports } from "./fontCss";
|
|
10
|
+
|
|
11
|
+
export const StyledComponentsWrapper = ({ children, styledSettings }) => {
|
|
12
|
+
const {
|
|
13
|
+
globalStyle,
|
|
14
|
+
maxAspRatio,
|
|
15
|
+
minAspRatio,
|
|
16
|
+
otherStyledComponentsProps,
|
|
17
|
+
fonts,
|
|
18
|
+
primaryFont,
|
|
19
|
+
remSettings,
|
|
20
|
+
breakpoints,
|
|
21
|
+
themes,
|
|
22
|
+
} = styledSettings || {};
|
|
23
|
+
|
|
24
|
+
const availableFonts = {
|
|
25
|
+
primaryFont: primaryFont || DEFAULT_PRIMARY_FONT,
|
|
26
|
+
...(fonts || {}),
|
|
27
|
+
};
|
|
28
|
+
const primaryFontCss = stripCssImports(availableFonts.primaryFont);
|
|
29
|
+
// Fonts must load via <link>, never via @import inside the styled-components sheet.
|
|
30
|
+
// @import in that sheet causes production CSSOM insertRule drops (missing Button/Icon/Flex rules).
|
|
31
|
+
const fontImportUrls = useMemo(() => collectFontImportUrls(availableFonts), [fonts, primaryFont]);
|
|
32
|
+
|
|
33
|
+
const { theme } = useTheme({ theme: themes });
|
|
34
|
+
|
|
35
|
+
const mediaFunctions = useMemo(
|
|
36
|
+
() => generateMediaFunctions({ maxAspRatio, minAspRatio, breakpoints }),
|
|
37
|
+
[maxAspRatio, minAspRatio, breakpoints],
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
const preparedRemSettings = useMemo(
|
|
41
|
+
() => prepareRemSettings({ remSettings, mediaFunctions }),
|
|
42
|
+
[remSettings, mediaFunctions],
|
|
43
|
+
);
|
|
44
|
+
|
|
45
|
+
useEffect(() => {
|
|
46
|
+
if (typeof document === "undefined") return;
|
|
47
|
+
|
|
48
|
+
fontImportUrls.forEach((href) => {
|
|
49
|
+
const exists = Array.from(
|
|
50
|
+
document.head.querySelectorAll('link[data-base-font-import="1"]'),
|
|
51
|
+
).some((link) => link.getAttribute("href") === href);
|
|
52
|
+
if (exists) return;
|
|
53
|
+
|
|
54
|
+
const link = document.createElement("link");
|
|
55
|
+
link.setAttribute("data-base-font-import", "1");
|
|
56
|
+
link.rel = "stylesheet";
|
|
57
|
+
link.href = href;
|
|
58
|
+
document.head.appendChild(link);
|
|
59
|
+
});
|
|
60
|
+
}, [fontImportUrls]);
|
|
61
|
+
|
|
62
|
+
return (
|
|
63
|
+
<ThemeProvider theme={{ ...theme, ...mediaFunctions }} {...otherStyledComponentsProps}>
|
|
64
|
+
<GlobalStyle
|
|
65
|
+
preparedRemSettings={preparedRemSettings}
|
|
66
|
+
primaryFont={primaryFontCss}
|
|
67
|
+
defaultGlobalStyle={DEFAULT_GLOBAL_STYLE}
|
|
68
|
+
globalStyle={globalStyle}
|
|
69
|
+
/>
|
|
70
|
+
{children}
|
|
71
|
+
</ThemeProvider>
|
|
72
|
+
);
|
|
73
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DEFAULT_REM_SETTINGS } from "../../../constants/DEFAULT_REM_SETTINGS";
|
|
2
|
+
|
|
3
|
+
let __initialFontStyleInjected = false;
|
|
4
|
+
|
|
5
|
+
function getViewportWidth() {
|
|
6
|
+
const docEl = document.documentElement;
|
|
7
|
+
return Math.round(window.innerWidth || docEl.clientWidth || 0);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
function pickHtmlFontSizePx(width, remSettings) {
|
|
11
|
+
let picked = null;
|
|
12
|
+
|
|
13
|
+
for (let i = 0; i < remSettings.length; i++) {
|
|
14
|
+
const [min, max, value] = remSettings[i];
|
|
15
|
+
if (width >= min && width <= max) picked = value;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
if (picked) return picked;
|
|
19
|
+
const firstMin = remSettings[0]?.[0];
|
|
20
|
+
const firstVal = remSettings[0]?.[2];
|
|
21
|
+
const lastVal = remSettings[remSettings.length - 1]?.[2];
|
|
22
|
+
|
|
23
|
+
if (typeof firstMin === "number" && width < firstMin) return firstVal || "1px";
|
|
24
|
+
return lastVal || "1px";
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function injectInitialRemAndBodyFontStyle(remSettings = DEFAULT_REM_SETTINGS) {
|
|
28
|
+
if (__initialFontStyleInjected) return;
|
|
29
|
+
if (typeof document === "undefined") return;
|
|
30
|
+
|
|
31
|
+
const width = getViewportWidth();
|
|
32
|
+
const htmlFontSize = pickHtmlFontSizePx(width, remSettings);
|
|
33
|
+
|
|
34
|
+
const style = document.createElement("style");
|
|
35
|
+
style.setAttribute("data-initial-rem-style", "1");
|
|
36
|
+
style.textContent = `
|
|
37
|
+
html { font-size: ${htmlFontSize}; }
|
|
38
|
+
body { font-size: 14rem; }
|
|
39
|
+
`;
|
|
40
|
+
|
|
41
|
+
document.head.appendChild(style);
|
|
42
|
+
__initialFontStyleInjected = true;
|
|
43
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { DEFAULT_REM_SETTINGS } from "../../../constants/DEFAULT_REM_SETTINGS";
|
|
2
|
+
|
|
3
|
+
export const prepareRemSettings = ({ remSettings = DEFAULT_REM_SETTINGS, mediaFunctions }) => {
|
|
4
|
+
const mixin = mediaFunctions?.freeBpMixin?.("font-size", remSettings);
|
|
5
|
+
return mixin;
|
|
6
|
+
};
|