@cck-ui/core 0.20.2 → 0.21.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.
Files changed (34) hide show
  1. package/cjs/components/file-button/file-button.cjs +116 -0
  2. package/cjs/components/file-button/file-button.cjs.map +1 -0
  3. package/cjs/components/file-button/index.cjs +10 -0
  4. package/cjs/components/file-button/index.cjs.map +1 -0
  5. package/cjs/components/typography/index.cjs +13 -0
  6. package/cjs/components/typography/index.cjs.map +1 -0
  7. package/cjs/components/typography/typography.cjs +381 -0
  8. package/cjs/components/typography/typography.cjs.map +1 -0
  9. package/cjs/components/typography/typography.module.cjs +7 -0
  10. package/cjs/components/typography/typography.module.cjs.map +1 -0
  11. package/cjs/index.cjs +46 -40
  12. package/cjs/index.cjs.map +1 -1
  13. package/esm/components/file-button/file-button.mjs +116 -0
  14. package/esm/components/file-button/file-button.mjs.map +1 -0
  15. package/esm/components/file-button/index.mjs +9 -0
  16. package/esm/components/file-button/index.mjs.map +1 -0
  17. package/esm/components/typography/index.mjs +10 -0
  18. package/esm/components/typography/index.mjs.map +1 -0
  19. package/esm/components/typography/typography.mjs +381 -0
  20. package/esm/components/typography/typography.mjs.map +1 -0
  21. package/esm/components/typography/typography.module.mjs +7 -0
  22. package/esm/components/typography/typography.module.mjs.map +1 -0
  23. package/esm/index.mjs +5 -1
  24. package/esm/index.mjs.map +1 -1
  25. package/lib/components/file-button/file-button.types.d.ts +31 -0
  26. package/lib/components/file-button/index.d.ts +3 -0
  27. package/lib/components/index.d.ts +2 -0
  28. package/lib/components/typography/index.d.ts +6 -0
  29. package/lib/components/typography/typography.types.d.ts +9 -0
  30. package/package.json +1 -1
  31. package/styles/typography.css +208 -0
  32. package/styles/typography.layer.css +209 -0
  33. package/styles.css +209 -0
  34. package/styles.layer.css +209 -0
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ //#region packages/@cck-ui/core/src/components/typography/typography.module.css
3
+ var typography_module_default = { "root": "m_487612c0" };
4
+ //#endregion
5
+ export { typography_module_default as default };
6
+
7
+ //# sourceMappingURL=typography.module.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.module.mjs","names":[],"sources":["../../../src/components/typography/typography.module.css"],"sourcesContent":[".root {\n & :first-child {\n margin-top: 0;\n }\n\n & :last-child {\n margin-bottom: 0;\n }\n\n & :where(h1, h2, h3, h4, h5, h6) {\n margin-bottom: var(--c-spacing-xs);\n text-wrap: var(--c-heading-text-wrap);\n font-family: var(--c-font-family-headings);\n }\n\n & :where(h1) {\n margin-top: calc(1.5 * var(--c-spacing-xl));\n font-size: var(--c-h1-font-size);\n line-height: var(--c-h1-line-height);\n font-weight: var(--c-h1-font-weight);\n }\n\n & :where(h2) {\n margin-top: calc(--c-spacing-xl);\n font-size: var(--c-h2-font-size);\n line-height: var(--c-h2-line-height);\n font-weight: var(--c-h2-font-weight);\n }\n\n & :where(h3) {\n margin-top: calc(0.8 * var(--c-spacing-xl));\n font-size: var(--c-h3-font-size);\n line-height: var(--c-h3-line-height);\n font-weight: var(--c-h3-font-weight);\n }\n\n & :where(h4) {\n margin-top: calc(0.8 * var(--c-spacing-xl));\n font-size: var(--c-h4-font-size);\n line-height: var(--c-h4-line-height);\n font-weight: var(--c-h4-font-weight);\n }\n\n & :where(h5) {\n margin-top: calc(0.5 * var(--c-spacing-xl));\n font-size: var(--c-h5-font-size);\n line-height: var(--c-h5-line-height);\n font-weight: var(--c-h5-font-weight);\n }\n\n & :where(h6) {\n margin-top: calc(0.5 * var(--c-spacing-xl));\n font-size: var(--c-h6-font-size);\n line-height: var(--c-h6-line-height);\n font-weight: var(--c-h6-font-weight);\n }\n\n & :where(img) {\n max-width: 100%;\n margin-bottom: var(--c-spacing-xs);\n }\n\n & :where(p) {\n margin-top: 0;\n margin-bottom: var(--c-spacing-lg);\n }\n\n & :where(mark) {\n @mixin where-light {\n background-color: var(--c-color-yellow-2);\n color: inherit;\n }\n\n @mixin where-dark {\n background-color: var(--c-color-yellow-5);\n color: var(--c-color-black);\n }\n }\n\n & :where(a) {\n color: var(--c-color-anchor);\n text-decoration: none;\n\n @mixin hover {\n text-decoration: underline;\n }\n }\n\n & :where(hr) {\n margin-top: var(--c-spacing-md);\n margin-bottom: var(--c-spacing-md);\n border: 0;\n border-top: 1px solid;\n\n @mixin where-light {\n border-color: var(--c-color-gray-3);\n }\n\n @mixin where-dark {\n border-color: var(--c-color-dark-3);\n }\n }\n\n & :where(pre) {\n padding: var(--c-spacing-xs);\n line-height: var(--c-line-height);\n margin: 0;\n margin-top: var(--c-spacing-md);\n margin-bottom: var(--c-spacing-md);\n overflow-x: auto;\n font-family: var(--c-font-family-monospace);\n font-size: var(--c-font-size-xs);\n border-radius: var(--c-radius-sm);\n\n @mixin where-light {\n background-color: var(--c-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--c-color-dark-8);\n }\n\n & :where(code) {\n background-color: transparent;\n padding: 0;\n border-radius: 0;\n color: inherit;\n border: 0;\n }\n }\n\n & :where(kbd) {\n --kbd-fz: 12px;\n --kbd-padding: 3px 5px;\n\n font-family: var(--c-font-family-monospace);\n line-height: var(--c-line-height);\n padding: var(--kbd-padding);\n font-size: var(--kbd-fz);\n border-radius: var(--c-radius-sm);\n border: 1px solid;\n border-bottom-width: 3px;\n\n @mixin where-light {\n border-color: var(--c-color-gray-3);\n color: var(--c-color-gray-7);\n background-color: var(--c-color-gray-0);\n }\n\n @mixin where-dark {\n border-color: var(--c-color-dark-3);\n color: var(--c-color-dark-0);\n background-color: var(--c-color-dark-5);\n }\n }\n\n & :where(code) {\n line-height: var(--c-line-height);\n padding: 1px 5px;\n border-radius: var(--c-radius-sm);\n font-family: var(--c-font-family-monospace);\n font-size: var(--c-font-size-xs);\n\n @mixin where-light {\n background-color: var(--c-color-gray-0);\n color: var(--c-color-black);\n }\n\n @mixin where-dark {\n background-color: var(--c-color-dark-5);\n color: var(--c-color-white);\n }\n }\n\n & :where(ul, ol):not([data-type='taskList']) {\n margin-bottom: var(--c-spacing-md);\n padding-inline-start: var(--c-spacing-xl);\n list-style-position: outside;\n }\n\n & :where(table) {\n width: 100%;\n border-collapse: collapse;\n caption-side: bottom;\n margin-bottom: var(--c-spacing-md);\n\n @mixin where-light {\n --table-border-color: var(--c-color-gray-3);\n }\n\n @mixin where-dark {\n --table-border-color: var(--c-color-dark-4);\n }\n\n & :where(caption) {\n margin-top: var(--c-spacing-xs);\n font-size: var(--c-font-size-sm);\n color: var(--c-color-dimmed);\n }\n\n & :where(th) {\n text-align: start;\n font-weight: bold;\n font-size: var(--c-font-size-sm);\n padding: var(--c-spacing-xs) var(--c-spacing-sm);\n }\n\n & :where(thead th) {\n border-bottom: 1px solid;\n border-color: var(--table-border-color);\n }\n\n & :where(tfoot th) {\n border-top: 1px solid;\n border-color: var(--table-border-color);\n }\n\n & :where(td) {\n padding: var(--c-spacing-xs) var(--c-spacing-sm);\n border-bottom: 1px solid;\n border-color: var(--table-border-color);\n font-size: var(--c-font-size-sm);\n }\n\n & :where(tr:last-of-type td) {\n border-bottom: 0;\n }\n }\n\n & :where(blockquote) {\n font-size: var(--c-font-size-lg);\n line-height: var(--c-line-height);\n margin: var(--c-spacing-md) 0;\n border-radius: var(--c-radius-sm);\n padding: var(--c-spacing-md) var(--c-spacing-lg);\n\n @mixin where-light {\n background-color: var(--c-color-gray-0);\n }\n\n @mixin where-dark {\n background-color: var(--c-color-dark-8);\n }\n }\n}\n"],"mappings":";;AAAA,IAAA,4BAAe,EAAC,QAAO,aAAY"}
package/esm/index.mjs CHANGED
@@ -64,6 +64,7 @@ import { CCenter } from "./components/center/index.mjs";
64
64
  import { CContainer } from "./components/container/index.mjs";
65
65
  import { CCopyButton } from "./components/copy-button/index.mjs";
66
66
  import { CEmptyState, CEmptyStateActions, CEmptyStateDescription, CEmptyStateIndicator, CEmptyStateTitle } from "./components/empty-state/index.mjs";
67
+ import { CFileButton } from "./components/file-button/index.mjs";
67
68
  import { CFlex } from "./components/flex/index.mjs";
68
69
  import { CCol, CGrid } from "./components/grid/index.mjs";
69
70
  import { CGroup } from "./components/group/index.mjs";
@@ -76,6 +77,7 @@ import { CSpace } from "./components/space/index.mjs";
76
77
  import { CSplitter, CSplitterPane } from "./components/splitter/index.mjs";
77
78
  import { CStack } from "./components/stack/index.mjs";
78
79
  import { CText } from "./components/text/index.mjs";
80
+ import { CTypography } from "./components/typography/index.mjs";
79
81
  //#region packages/@cck-ui/core/src/index.ts
80
82
  const INSTALLED_KEY = Symbol("INSTALLED_KEY");
81
83
  const components = [
@@ -99,6 +101,7 @@ const components = [
99
101
  CEmptyStateDescription,
100
102
  CEmptyStateIndicator,
101
103
  CEmptyStateTitle,
104
+ CFileButton,
102
105
  CFlex,
103
106
  CGrid,
104
107
  CGroup,
@@ -114,6 +117,7 @@ const components = [
114
117
  CStack,
115
118
  CText,
116
119
  CTransition,
120
+ CTypography,
117
121
  UnstyledButton
118
122
  ];
119
123
  const CckUI = { install(app) {
@@ -124,6 +128,6 @@ const CckUI = { install(app) {
124
128
  });
125
129
  } };
126
130
  //#endregion
127
- export { CActionIcon, CActionIconGroup, CActionIconGroupSection, CAlert, CAspectRatio, CBox, CButton, CButtonGroup, CButtonGroupSection, transitions as CCK_TRANSITIONS, CCenter, CCloseButton, CCol, CContainer, CCopyButton, CDefaultLoaders, CEmptyState, CEmptyStateActions, CEmptyStateDescription, CEmptyStateIndicator, CEmptyStateTitle, CFlex, CGrid, CGroup, CImage, CLoader, CONFIG_KEY, CPaper, CSemiCircleProgress, CSimpleGrid, CSkeleton, CSpace, CSplitter, CSplitterPane, CStack, CText, CTransition, CckConfigProvider, CckUI, CckUI as default, DEFAULT_THEME, FOCUS_CLASS_NAMES, STYLE_PROPS_DATA, THEME_KEY, UnstyledButton, alpha, camelToKebabCase, colorsTuple, createTheme, createVarsResolver, darken, deepMerge, defaultCssVariablesResolver, defaultVariantColorsResolver, em, extractStyleProps, filterProps, getBaseValue, getBreakpointValue, getCSSColorVariables, getComponentName, getFontSize, getGradient, getLineHeight, getPrimaryShade, getRadius, getShadow, getSize, getSortedBreakpoints, getSpacing, getThemeColor, getTransitionProps, hashStyleProps, isLightColor, isNumber, isNumberLike, isString, isStringNumber, isUndefined, isVirtualColor, keys, luminance, mergeThemeOverrides, normalizeNumberLikeStringProp, numberLikeStringToNumber, parseStyleProps, parseThemeColor, px, rem, resolveClassNames, resolveStyles, responsiveStyleManager, rgb, rgba, stylesToString, toRgba, useCckClassNamesPrefix, useCckColorScheme, useCckCssVariablesResolver, useCckEnv, useCckIsHeadless, useCckStyleNonce, useCckStylesTransform, useCckSxTransform, useCckTheme, useCckWithStaticClasses, useComponentProps, useConfigContext, useProviderColorScheme, useRandomClassName, useStyles, virtualColor, withClasses, withExtend, withInstall, withPropsDefaultSetter, withPropsFactory, withVarsResolver };
131
+ export { CActionIcon, CActionIconGroup, CActionIconGroupSection, CAlert, CAspectRatio, CBox, CButton, CButtonGroup, CButtonGroupSection, transitions as CCK_TRANSITIONS, CCenter, CCloseButton, CCol, CContainer, CCopyButton, CDefaultLoaders, CEmptyState, CEmptyStateActions, CEmptyStateDescription, CEmptyStateIndicator, CEmptyStateTitle, CFileButton, CFlex, CGrid, CGroup, CImage, CLoader, CONFIG_KEY, CPaper, CSemiCircleProgress, CSimpleGrid, CSkeleton, CSpace, CSplitter, CSplitterPane, CStack, CText, CTransition, CTypography, CckConfigProvider, CckUI, CckUI as default, DEFAULT_THEME, FOCUS_CLASS_NAMES, STYLE_PROPS_DATA, THEME_KEY, UnstyledButton, alpha, camelToKebabCase, colorsTuple, createTheme, createVarsResolver, darken, deepMerge, defaultCssVariablesResolver, defaultVariantColorsResolver, em, extractStyleProps, filterProps, getBaseValue, getBreakpointValue, getCSSColorVariables, getComponentName, getFontSize, getGradient, getLineHeight, getPrimaryShade, getRadius, getShadow, getSize, getSortedBreakpoints, getSpacing, getThemeColor, getTransitionProps, hashStyleProps, isLightColor, isNumber, isNumberLike, isString, isStringNumber, isUndefined, isVirtualColor, keys, luminance, mergeThemeOverrides, normalizeNumberLikeStringProp, numberLikeStringToNumber, parseStyleProps, parseThemeColor, px, rem, resolveClassNames, resolveStyles, responsiveStyleManager, rgb, rgba, stylesToString, toRgba, useCckClassNamesPrefix, useCckColorScheme, useCckCssVariablesResolver, useCckEnv, useCckIsHeadless, useCckStyleNonce, useCckStylesTransform, useCckSxTransform, useCckTheme, useCckWithStaticClasses, useComponentProps, useConfigContext, useProviderColorScheme, useRandomClassName, useStyles, virtualColor, withClasses, withExtend, withInstall, withPropsDefaultSetter, withPropsFactory, withVarsResolver };
128
132
 
129
133
  //# sourceMappingURL=index.mjs.map
package/esm/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["import type { App, Plugin } from 'vue'\nimport {\n CActionIcon,\n CActionIconGroup,\n CActionIconGroupSection,\n CAlert,\n CAspectRatio,\n CButton,\n CButtonGroup,\n CButtonGroupSection,\n CCenter,\n CCloseButton,\n CCol,\n CContainer,\n CCopyButton,\n CEmptyState,\n CEmptyStateActions,\n CEmptyStateDescription,\n CEmptyStateIndicator,\n CEmptyStateTitle,\n CFlex,\n CGrid,\n CGroup,\n CImage,\n CLoader,\n CPaper,\n CSemiCircleProgress,\n CSimpleGrid,\n CSkeleton,\n CSpace,\n CSplitter,\n CSplitterPane,\n CStack,\n CText,\n CTransition,\n UnstyledButton,\n} from './components'\nimport { CckConfigProvider, CBox } from './core'\n\nconst INSTALLED_KEY = Symbol('INSTALLED_KEY')\n\nconst components = [\n CckConfigProvider,\n CBox,\n CActionIcon,\n CActionIconGroup,\n CActionIconGroupSection,\n CAlert,\n CAspectRatio,\n CButton,\n CButtonGroup,\n CButtonGroupSection,\n CCenter,\n CCloseButton,\n CCol,\n CContainer,\n CCopyButton,\n CEmptyState,\n CEmptyStateActions,\n CEmptyStateDescription,\n CEmptyStateIndicator,\n CEmptyStateTitle,\n CFlex,\n CGrid,\n CGroup,\n CImage,\n CLoader,\n CPaper,\n CSemiCircleProgress,\n CSimpleGrid,\n CSkeleton,\n CSpace,\n CSplitter,\n CSplitterPane,\n CStack,\n CText,\n CTransition,\n UnstyledButton,\n]\n\nconst CckUI: Plugin = {\n install(app: App) {\n if ((app as any)[INSTALLED_KEY]) {\n return\n }\n ;(app as any)[INSTALLED_KEY] = true\n components.forEach((c) => {\n if (c.name) {\n app.component(c.name, c)\n }\n })\n },\n}\n\nexport default CckUI\nexport { CckUI }\n\nexport * from './components'\nexport * from './core'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAM,gBAAgB,OAAO,eAAe;AAE5C,MAAM,aAAa;CACjB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAM,QAAgB,EACpB,QAAQ,KAAU;CAChB,IAAK,IAAY,gBACf;CAED,IAAa,iBAAiB;CAC/B,WAAW,SAAS,MAAM;EACxB,IAAI,EAAE,MACJ,IAAI,UAAU,EAAE,MAAM,CAAC;CAE3B,CAAC;AACH,EACF"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../src/index.ts"],"sourcesContent":["import type { App, Plugin } from 'vue'\nimport {\n CActionIcon,\n CActionIconGroup,\n CActionIconGroupSection,\n CAlert,\n CAspectRatio,\n CButton,\n CButtonGroup,\n CButtonGroupSection,\n CCenter,\n CCloseButton,\n CCol,\n CContainer,\n CCopyButton,\n CEmptyState,\n CEmptyStateActions,\n CEmptyStateDescription,\n CEmptyStateIndicator,\n CEmptyStateTitle,\n CFileButton,\n CFlex,\n CGrid,\n CGroup,\n CImage,\n CLoader,\n CPaper,\n CSemiCircleProgress,\n CSimpleGrid,\n CSkeleton,\n CSpace,\n CSplitter,\n CSplitterPane,\n CStack,\n CText,\n CTransition,\n CTypography,\n UnstyledButton,\n} from './components'\nimport { CckConfigProvider, CBox } from './core'\n\nconst INSTALLED_KEY = Symbol('INSTALLED_KEY')\n\nconst components = [\n CckConfigProvider,\n CBox,\n CActionIcon,\n CActionIconGroup,\n CActionIconGroupSection,\n CAlert,\n CAspectRatio,\n CButton,\n CButtonGroup,\n CButtonGroupSection,\n CCenter,\n CCloseButton,\n CCol,\n CContainer,\n CCopyButton,\n CEmptyState,\n CEmptyStateActions,\n CEmptyStateDescription,\n CEmptyStateIndicator,\n CEmptyStateTitle,\n CFileButton,\n CFlex,\n CGrid,\n CGroup,\n CImage,\n CLoader,\n CPaper,\n CSemiCircleProgress,\n CSimpleGrid,\n CSkeleton,\n CSpace,\n CSplitter,\n CSplitterPane,\n CStack,\n CText,\n CTransition,\n CTypography,\n UnstyledButton,\n]\n\nconst CckUI: Plugin = {\n install(app: App) {\n if ((app as any)[INSTALLED_KEY]) {\n return\n }\n ;(app as any)[INSTALLED_KEY] = true\n components.forEach((c) => {\n if (c.name) {\n app.component(c.name, c)\n }\n })\n },\n}\n\nexport default CckUI\nexport { CckUI }\n\nexport * from './components'\nexport * from './core'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyCA,MAAM,gBAAgB,OAAO,eAAe;AAE5C,MAAM,aAAa;CACjB;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AAEA,MAAM,QAAgB,EACpB,QAAQ,KAAU;CAChB,IAAK,IAAY,gBACf;CAED,IAAa,iBAAiB;CAC/B,WAAW,SAAS,MAAM;EACxB,IAAI,EAAE,MACJ,IAAI,UAAU,EAAE,MAAM,CAAC;CAE3B,CAAC;AACH,EACF"}
@@ -0,0 +1,31 @@
1
+ import { ElementProps } from '../../core';
2
+ export interface FileButtonProps {
3
+ /**
4
+ * @description If set, user can pick more than one file
5
+ */
6
+ multiple?: boolean;
7
+ /**
8
+ * @description File input accept attribute, for example, `"image/png,image/jpeg"`
9
+ */
10
+ accept?: string;
11
+ /**
12
+ * @description Input name attribute
13
+ */
14
+ name?: string;
15
+ /**
16
+ * @description Input form attribute
17
+ */
18
+ form?: string;
19
+ /**
20
+ * @description Disables file picker
21
+ */
22
+ disabled?: boolean;
23
+ /**
24
+ * @description Specifies that, optionally, a new file should be captured, and which device should be used to capture that new media of a type defined by the accept attribute.
25
+ */
26
+ capture?: boolean | 'user' | 'environment';
27
+ /**
28
+ * @description Passes down props to the input element used to capture files
29
+ */
30
+ inputProps?: ElementProps<'input'>;
31
+ }
@@ -0,0 +1,3 @@
1
+ export declare const CFileButton: any;
2
+ export default CFileButton;
3
+ export * from './file-button.types';
@@ -7,6 +7,7 @@ export * from './close-button';
7
7
  export * from './container';
8
8
  export * from './copy-button';
9
9
  export * from './empty-state';
10
+ export * from './file-button';
10
11
  export * from './flex';
11
12
  export * from './grid';
12
13
  export * from './group';
@@ -21,4 +22,5 @@ export * from './splitter';
21
22
  export * from './stack';
22
23
  export * from './transition';
23
24
  export * from './text';
25
+ export * from './typography';
24
26
  export * from './unstyled-button';
@@ -0,0 +1,6 @@
1
+ import { SFCWithInstallAndClasses } from '../../core';
2
+ import classes from './typography.module.css';
3
+ import Typography from './typography.vue';
4
+ export declare const CTypography: SFCWithInstallAndClasses<typeof Typography, typeof classes>;
5
+ export default CTypography;
6
+ export * from './typography.types';
@@ -0,0 +1,9 @@
1
+ import { BoxProps, ElementProps, Factory, StylesApiProps } from '../../core';
2
+ export type TypographyStylesNames = 'root';
3
+ export interface TypographyProps extends BoxProps, StylesApiProps<TypographyFactory>, /* @vue-ignore */ ElementProps<'div'> {
4
+ }
5
+ export type TypographyFactory = Factory<{
6
+ props: TypographyProps;
7
+ ref: HTMLDivElement;
8
+ stylesNames: TypographyStylesNames;
9
+ }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cck-ui/core",
3
- "version": "0.20.2",
3
+ "version": "0.21.0",
4
4
  "description": "Vue component library focused on usability, accessibility and developer experience",
5
5
  "homepage": "https://cck-ui.jackatlas.xyz",
6
6
  "license": "ISC",
@@ -0,0 +1,208 @@
1
+ .m_487612c0 :first-child {
2
+ margin-top: 0;
3
+ }
4
+ .m_487612c0 :last-child {
5
+ margin-bottom: 0;
6
+ }
7
+ .m_487612c0 :where(h1, h2, h3, h4, h5, h6) {
8
+ margin-bottom: var(--c-spacing-xs);
9
+ text-wrap: var(--c-heading-text-wrap);
10
+ font-family: var(--c-font-family-headings);
11
+ }
12
+ .m_487612c0 :where(h1) {
13
+ margin-top: calc(1.5 * var(--c-spacing-xl));
14
+ font-size: var(--c-h1-font-size);
15
+ line-height: var(--c-h1-line-height);
16
+ font-weight: var(--c-h1-font-weight);
17
+ }
18
+ .m_487612c0 :where(h2) {
19
+ margin-top: calc(--c-spacing-xl);
20
+ font-size: var(--c-h2-font-size);
21
+ line-height: var(--c-h2-line-height);
22
+ font-weight: var(--c-h2-font-weight);
23
+ }
24
+ .m_487612c0 :where(h3) {
25
+ margin-top: calc(0.8 * var(--c-spacing-xl));
26
+ font-size: var(--c-h3-font-size);
27
+ line-height: var(--c-h3-line-height);
28
+ font-weight: var(--c-h3-font-weight);
29
+ }
30
+ .m_487612c0 :where(h4) {
31
+ margin-top: calc(0.8 * var(--c-spacing-xl));
32
+ font-size: var(--c-h4-font-size);
33
+ line-height: var(--c-h4-line-height);
34
+ font-weight: var(--c-h4-font-weight);
35
+ }
36
+ .m_487612c0 :where(h5) {
37
+ margin-top: calc(0.5 * var(--c-spacing-xl));
38
+ font-size: var(--c-h5-font-size);
39
+ line-height: var(--c-h5-line-height);
40
+ font-weight: var(--c-h5-font-weight);
41
+ }
42
+ .m_487612c0 :where(h6) {
43
+ margin-top: calc(0.5 * var(--c-spacing-xl));
44
+ font-size: var(--c-h6-font-size);
45
+ line-height: var(--c-h6-line-height);
46
+ font-weight: var(--c-h6-font-weight);
47
+ }
48
+ .m_487612c0 :where(img) {
49
+ max-width: 100%;
50
+ margin-bottom: var(--c-spacing-xs);
51
+ }
52
+ .m_487612c0 :where(p) {
53
+ margin-top: 0;
54
+ margin-bottom: var(--c-spacing-lg);
55
+ }
56
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(mark) {
57
+ background-color: var(--c-color-yellow-2);
58
+ color: inherit;
59
+ }
60
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(mark) {
61
+ background-color: var(--c-color-yellow-5);
62
+ color: var(--c-color-black);
63
+ }
64
+ .m_487612c0 :where(a) {
65
+ color: var(--c-color-anchor);
66
+ text-decoration: none;
67
+ }
68
+ @media (hover: hover) {
69
+ .m_487612c0 :where(a):hover {
70
+ text-decoration: underline;
71
+ }
72
+ }
73
+ @media (hover: none) {
74
+ .m_487612c0 :where(a):active {
75
+ text-decoration: underline;
76
+ }
77
+ }
78
+ .m_487612c0 :where(hr) {
79
+ margin-top: var(--c-spacing-md);
80
+ margin-bottom: var(--c-spacing-md);
81
+ border: 0;
82
+ border-top: calc(0.0625rem * var(--c-scale)) solid;
83
+ }
84
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(hr) {
85
+ border-color: var(--c-color-gray-3);
86
+ }
87
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(hr) {
88
+ border-color: var(--c-color-dark-3);
89
+ }
90
+ .m_487612c0 :where(pre) {
91
+ padding: var(--c-spacing-xs);
92
+ line-height: var(--c-line-height);
93
+ margin: 0;
94
+ margin-top: var(--c-spacing-md);
95
+ margin-bottom: var(--c-spacing-md);
96
+ overflow-x: auto;
97
+ font-family: var(--c-font-family-monospace);
98
+ font-size: var(--c-font-size-xs);
99
+ border-radius: var(--c-radius-sm);
100
+ }
101
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(pre) {
102
+ background-color: var(--c-color-gray-0);
103
+ }
104
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(pre) {
105
+ background-color: var(--c-color-dark-8);
106
+ }
107
+ .m_487612c0 :where(pre) :where(code) {
108
+ background-color: transparent;
109
+ padding: 0;
110
+ border-radius: 0;
111
+ color: inherit;
112
+ border: 0;
113
+ }
114
+ .m_487612c0 :where(kbd) {
115
+ --kbd-fz: calc(0.75rem * var(--c-scale));
116
+ --kbd-padding: calc(0.1875rem * var(--c-scale)) calc(0.3125rem * var(--c-scale));
117
+
118
+ font-family: var(--c-font-family-monospace);
119
+ line-height: var(--c-line-height);
120
+ padding: var(--kbd-padding);
121
+ font-size: var(--kbd-fz);
122
+ border-radius: var(--c-radius-sm);
123
+ border: calc(0.0625rem * var(--c-scale)) solid;
124
+ border-bottom-width: calc(0.1875rem * var(--c-scale));
125
+ }
126
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(kbd) {
127
+ border-color: var(--c-color-gray-3);
128
+ color: var(--c-color-gray-7);
129
+ background-color: var(--c-color-gray-0);
130
+ }
131
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(kbd) {
132
+ border-color: var(--c-color-dark-3);
133
+ color: var(--c-color-dark-0);
134
+ background-color: var(--c-color-dark-5);
135
+ }
136
+ .m_487612c0 :where(code) {
137
+ line-height: var(--c-line-height);
138
+ padding: calc(0.0625rem * var(--c-scale)) calc(0.3125rem * var(--c-scale));
139
+ border-radius: var(--c-radius-sm);
140
+ font-family: var(--c-font-family-monospace);
141
+ font-size: var(--c-font-size-xs);
142
+ }
143
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(code) {
144
+ background-color: var(--c-color-gray-0);
145
+ color: var(--c-color-black);
146
+ }
147
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(code) {
148
+ background-color: var(--c-color-dark-5);
149
+ color: var(--c-color-white);
150
+ }
151
+ .m_487612c0 :where(ul, ol):not([data-type='taskList']) {
152
+ margin-bottom: var(--c-spacing-md);
153
+ padding-inline-start: var(--c-spacing-xl);
154
+ list-style-position: outside;
155
+ }
156
+ .m_487612c0 :where(table) {
157
+ width: 100%;
158
+ border-collapse: collapse;
159
+ caption-side: bottom;
160
+ margin-bottom: var(--c-spacing-md);
161
+ }
162
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(table) {
163
+ --table-border-color: var(--c-color-gray-3);
164
+ }
165
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(table) {
166
+ --table-border-color: var(--c-color-dark-4);
167
+ }
168
+ .m_487612c0 :where(table) :where(caption) {
169
+ margin-top: var(--c-spacing-xs);
170
+ font-size: var(--c-font-size-sm);
171
+ color: var(--c-color-dimmed);
172
+ }
173
+ .m_487612c0 :where(table) :where(th) {
174
+ text-align: start;
175
+ font-weight: bold;
176
+ font-size: var(--c-font-size-sm);
177
+ padding: var(--c-spacing-xs) var(--c-spacing-sm);
178
+ }
179
+ .m_487612c0 :where(table) :where(thead th) {
180
+ border-bottom: calc(0.0625rem * var(--c-scale)) solid;
181
+ border-color: var(--table-border-color);
182
+ }
183
+ .m_487612c0 :where(table) :where(tfoot th) {
184
+ border-top: calc(0.0625rem * var(--c-scale)) solid;
185
+ border-color: var(--table-border-color);
186
+ }
187
+ .m_487612c0 :where(table) :where(td) {
188
+ padding: var(--c-spacing-xs) var(--c-spacing-sm);
189
+ border-bottom: calc(0.0625rem * var(--c-scale)) solid;
190
+ border-color: var(--table-border-color);
191
+ font-size: var(--c-font-size-sm);
192
+ }
193
+ .m_487612c0 :where(table) :where(tr:last-of-type td) {
194
+ border-bottom: 0;
195
+ }
196
+ .m_487612c0 :where(blockquote) {
197
+ font-size: var(--c-font-size-lg);
198
+ line-height: var(--c-line-height);
199
+ margin: var(--c-spacing-md) 0;
200
+ border-radius: var(--c-radius-sm);
201
+ padding: var(--c-spacing-md) var(--c-spacing-lg);
202
+ }
203
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(blockquote) {
204
+ background-color: var(--c-color-gray-0);
205
+ }
206
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(blockquote) {
207
+ background-color: var(--c-color-dark-8);
208
+ }
@@ -0,0 +1,209 @@
1
+ @layer cck {.m_487612c0 :first-child {
2
+ margin-top: 0;
3
+ }
4
+ .m_487612c0 :last-child {
5
+ margin-bottom: 0;
6
+ }
7
+ .m_487612c0 :where(h1, h2, h3, h4, h5, h6) {
8
+ margin-bottom: var(--c-spacing-xs);
9
+ text-wrap: var(--c-heading-text-wrap);
10
+ font-family: var(--c-font-family-headings);
11
+ }
12
+ .m_487612c0 :where(h1) {
13
+ margin-top: calc(1.5 * var(--c-spacing-xl));
14
+ font-size: var(--c-h1-font-size);
15
+ line-height: var(--c-h1-line-height);
16
+ font-weight: var(--c-h1-font-weight);
17
+ }
18
+ .m_487612c0 :where(h2) {
19
+ margin-top: calc(--c-spacing-xl);
20
+ font-size: var(--c-h2-font-size);
21
+ line-height: var(--c-h2-line-height);
22
+ font-weight: var(--c-h2-font-weight);
23
+ }
24
+ .m_487612c0 :where(h3) {
25
+ margin-top: calc(0.8 * var(--c-spacing-xl));
26
+ font-size: var(--c-h3-font-size);
27
+ line-height: var(--c-h3-line-height);
28
+ font-weight: var(--c-h3-font-weight);
29
+ }
30
+ .m_487612c0 :where(h4) {
31
+ margin-top: calc(0.8 * var(--c-spacing-xl));
32
+ font-size: var(--c-h4-font-size);
33
+ line-height: var(--c-h4-line-height);
34
+ font-weight: var(--c-h4-font-weight);
35
+ }
36
+ .m_487612c0 :where(h5) {
37
+ margin-top: calc(0.5 * var(--c-spacing-xl));
38
+ font-size: var(--c-h5-font-size);
39
+ line-height: var(--c-h5-line-height);
40
+ font-weight: var(--c-h5-font-weight);
41
+ }
42
+ .m_487612c0 :where(h6) {
43
+ margin-top: calc(0.5 * var(--c-spacing-xl));
44
+ font-size: var(--c-h6-font-size);
45
+ line-height: var(--c-h6-line-height);
46
+ font-weight: var(--c-h6-font-weight);
47
+ }
48
+ .m_487612c0 :where(img) {
49
+ max-width: 100%;
50
+ margin-bottom: var(--c-spacing-xs);
51
+ }
52
+ .m_487612c0 :where(p) {
53
+ margin-top: 0;
54
+ margin-bottom: var(--c-spacing-lg);
55
+ }
56
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(mark) {
57
+ background-color: var(--c-color-yellow-2);
58
+ color: inherit;
59
+ }
60
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(mark) {
61
+ background-color: var(--c-color-yellow-5);
62
+ color: var(--c-color-black);
63
+ }
64
+ .m_487612c0 :where(a) {
65
+ color: var(--c-color-anchor);
66
+ text-decoration: none;
67
+ }
68
+ @media (hover: hover) {
69
+ .m_487612c0 :where(a):hover {
70
+ text-decoration: underline;
71
+ }
72
+ }
73
+ @media (hover: none) {
74
+ .m_487612c0 :where(a):active {
75
+ text-decoration: underline;
76
+ }
77
+ }
78
+ .m_487612c0 :where(hr) {
79
+ margin-top: var(--c-spacing-md);
80
+ margin-bottom: var(--c-spacing-md);
81
+ border: 0;
82
+ border-top: calc(0.0625rem * var(--c-scale)) solid;
83
+ }
84
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(hr) {
85
+ border-color: var(--c-color-gray-3);
86
+ }
87
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(hr) {
88
+ border-color: var(--c-color-dark-3);
89
+ }
90
+ .m_487612c0 :where(pre) {
91
+ padding: var(--c-spacing-xs);
92
+ line-height: var(--c-line-height);
93
+ margin: 0;
94
+ margin-top: var(--c-spacing-md);
95
+ margin-bottom: var(--c-spacing-md);
96
+ overflow-x: auto;
97
+ font-family: var(--c-font-family-monospace);
98
+ font-size: var(--c-font-size-xs);
99
+ border-radius: var(--c-radius-sm);
100
+ }
101
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(pre) {
102
+ background-color: var(--c-color-gray-0);
103
+ }
104
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(pre) {
105
+ background-color: var(--c-color-dark-8);
106
+ }
107
+ .m_487612c0 :where(pre) :where(code) {
108
+ background-color: transparent;
109
+ padding: 0;
110
+ border-radius: 0;
111
+ color: inherit;
112
+ border: 0;
113
+ }
114
+ .m_487612c0 :where(kbd) {
115
+ --kbd-fz: calc(0.75rem * var(--c-scale));
116
+ --kbd-padding: calc(0.1875rem * var(--c-scale)) calc(0.3125rem * var(--c-scale));
117
+
118
+ font-family: var(--c-font-family-monospace);
119
+ line-height: var(--c-line-height);
120
+ padding: var(--kbd-padding);
121
+ font-size: var(--kbd-fz);
122
+ border-radius: var(--c-radius-sm);
123
+ border: calc(0.0625rem * var(--c-scale)) solid;
124
+ border-bottom-width: calc(0.1875rem * var(--c-scale));
125
+ }
126
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(kbd) {
127
+ border-color: var(--c-color-gray-3);
128
+ color: var(--c-color-gray-7);
129
+ background-color: var(--c-color-gray-0);
130
+ }
131
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(kbd) {
132
+ border-color: var(--c-color-dark-3);
133
+ color: var(--c-color-dark-0);
134
+ background-color: var(--c-color-dark-5);
135
+ }
136
+ .m_487612c0 :where(code) {
137
+ line-height: var(--c-line-height);
138
+ padding: calc(0.0625rem * var(--c-scale)) calc(0.3125rem * var(--c-scale));
139
+ border-radius: var(--c-radius-sm);
140
+ font-family: var(--c-font-family-monospace);
141
+ font-size: var(--c-font-size-xs);
142
+ }
143
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(code) {
144
+ background-color: var(--c-color-gray-0);
145
+ color: var(--c-color-black);
146
+ }
147
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(code) {
148
+ background-color: var(--c-color-dark-5);
149
+ color: var(--c-color-white);
150
+ }
151
+ .m_487612c0 :where(ul, ol):not([data-type='taskList']) {
152
+ margin-bottom: var(--c-spacing-md);
153
+ padding-inline-start: var(--c-spacing-xl);
154
+ list-style-position: outside;
155
+ }
156
+ .m_487612c0 :where(table) {
157
+ width: 100%;
158
+ border-collapse: collapse;
159
+ caption-side: bottom;
160
+ margin-bottom: var(--c-spacing-md);
161
+ }
162
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(table) {
163
+ --table-border-color: var(--c-color-gray-3);
164
+ }
165
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(table) {
166
+ --table-border-color: var(--c-color-dark-4);
167
+ }
168
+ .m_487612c0 :where(table) :where(caption) {
169
+ margin-top: var(--c-spacing-xs);
170
+ font-size: var(--c-font-size-sm);
171
+ color: var(--c-color-dimmed);
172
+ }
173
+ .m_487612c0 :where(table) :where(th) {
174
+ text-align: start;
175
+ font-weight: bold;
176
+ font-size: var(--c-font-size-sm);
177
+ padding: var(--c-spacing-xs) var(--c-spacing-sm);
178
+ }
179
+ .m_487612c0 :where(table) :where(thead th) {
180
+ border-bottom: calc(0.0625rem * var(--c-scale)) solid;
181
+ border-color: var(--table-border-color);
182
+ }
183
+ .m_487612c0 :where(table) :where(tfoot th) {
184
+ border-top: calc(0.0625rem * var(--c-scale)) solid;
185
+ border-color: var(--table-border-color);
186
+ }
187
+ .m_487612c0 :where(table) :where(td) {
188
+ padding: var(--c-spacing-xs) var(--c-spacing-sm);
189
+ border-bottom: calc(0.0625rem * var(--c-scale)) solid;
190
+ border-color: var(--table-border-color);
191
+ font-size: var(--c-font-size-sm);
192
+ }
193
+ .m_487612c0 :where(table) :where(tr:last-of-type td) {
194
+ border-bottom: 0;
195
+ }
196
+ .m_487612c0 :where(blockquote) {
197
+ font-size: var(--c-font-size-lg);
198
+ line-height: var(--c-line-height);
199
+ margin: var(--c-spacing-md) 0;
200
+ border-radius: var(--c-radius-sm);
201
+ padding: var(--c-spacing-md) var(--c-spacing-lg);
202
+ }
203
+ :where([data-c-color-scheme='light']) .m_487612c0 :where(blockquote) {
204
+ background-color: var(--c-color-gray-0);
205
+ }
206
+ :where([data-c-color-scheme='dark']) .m_487612c0 :where(blockquote) {
207
+ background-color: var(--c-color-dark-8);
208
+ }
209
+ }