@momentum-design/components 0.3.0 → 0.4.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/dist/browser/index.js +248 -110
- package/dist/browser/index.js.map +4 -4
- package/dist/components/iconprovider/iconprovider.component.d.ts +1 -1
- package/dist/components/iconprovider/iconprovider.component.js +1 -1
- package/dist/components/text/fonts.styles.js +211 -74
- package/dist/components/text/text.component.d.ts +56 -13
- package/dist/components/text/text.component.js +80 -16
- package/dist/components/text/text.constants.d.ts +7 -4
- package/dist/components/text/text.constants.js +48 -16
- package/dist/components/text/text.types.d.ts +2 -1
- package/dist/components/themeprovider/themeprovider.component.d.ts +1 -1
- package/dist/components/themeprovider/themeprovider.component.js +1 -1
- package/dist/custom-elements.json +39 -18
- package/dist/react/iconprovider/index.d.ts +1 -1
- package/dist/react/iconprovider/index.js +1 -1
- package/dist/react/text/index.d.ts +12 -5
- package/dist/react/text/index.js +12 -5
- package/dist/react/themeprovider/index.d.ts +1 -1
- package/dist/react/themeprovider/index.js +1 -1
- package/package.json +1 -1
- package/dist/components/text/text.utils.d.ts +0 -20
- package/dist/components/text/text.utils.js +0 -50
@@ -439,7 +439,7 @@
|
|
439
439
|
"slots": [
|
440
440
|
{
|
441
441
|
"description": "children",
|
442
|
-
"name": "
|
442
|
+
"name": ""
|
443
443
|
}
|
444
444
|
],
|
445
445
|
"members": [
|
@@ -547,7 +547,7 @@
|
|
547
547
|
"module": "/src/models"
|
548
548
|
},
|
549
549
|
"tagName": "mdc-iconprovider",
|
550
|
-
"jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Bundling icons will be up to the consumer of this component, such\n * that only a url has to be passed in from which the icons will be\n * fetched.\n *\n * @tagname mdc-iconprovider\n *\n * @slot
|
550
|
+
"jsDoc": "/**\n * IconProvider component, which allows to be consumed from sub components\n * (see `providerUtils.consume` for how to consume)\n *\n * Bundling icons will be up to the consumer of this component, such\n * that only a url has to be passed in from which the icons will be\n * fetched.\n *\n * @tagname mdc-iconprovider\n *\n * @slot - children\n */",
|
551
551
|
"customElement": true
|
552
552
|
}
|
553
553
|
],
|
@@ -568,39 +568,60 @@
|
|
568
568
|
"declarations": [
|
569
569
|
{
|
570
570
|
"kind": "class",
|
571
|
-
"description": "Text component
|
571
|
+
"description": "Text component for creating styled text elements.\nIt has to be mounted within the ThemeProvider to access color and font tokens.\n\nThe `type` attribute allows changing the text style.\nThe `tagname` attribute allows changing the tag name of the text element.\nThe default tag name is `p`.\n\nThe `tagname` attribute should be a valid HTML tag name.\nIf the `tagname` attribute is not a valid HTML tag name, the default tag name will be used.\n\nThe styling is applied based on the `type` attribute.",
|
572
572
|
"name": "Text",
|
573
|
+
"cssParts": [
|
574
|
+
{
|
575
|
+
"description": "The text element",
|
576
|
+
"name": "text"
|
577
|
+
}
|
578
|
+
],
|
579
|
+
"slots": [
|
580
|
+
{
|
581
|
+
"description": "Default slot for text content",
|
582
|
+
"name": ""
|
583
|
+
}
|
584
|
+
],
|
573
585
|
"members": [
|
574
586
|
{
|
575
587
|
"kind": "field",
|
576
588
|
"name": "type",
|
577
589
|
"type": {
|
578
|
-
"text": "FontType
|
590
|
+
"text": "FontType"
|
579
591
|
},
|
580
592
|
"privacy": "public",
|
581
|
-
"description": "
|
593
|
+
"description": "Specifies the text style to be applied.\n\nAcceptable values include:\n\n- 'body-small-regular'\n- 'body-small-medium'\n- 'body-small-bold'\n- 'body-midsize-regular'\n- 'body-midsize-medium'\n- 'body-midsize-bold'\n- 'body-large-regular'\n- 'body-large-medium'\n- 'body-large-bold'\n- 'body-small-regular-underline'\n- 'body-small-medium-underline'\n- 'body-midsize-regular-underline'\n- 'body-midsize-medium-underline'\n- 'body-large-regular-underline'\n- 'body-large-medium-underline'\n- 'heading-small-regular'\n- 'heading-small-medium'\n- 'heading-small-bold'\n- 'heading-midsize-regular'\n- 'heading-midsize-medium'\n- 'heading-midsize-bold'\n- 'heading-large-regular'\n- 'heading-large-medium'\n- 'heading-large-bold'\n- 'heading-xlarge-regular'\n- 'heading-xlarge-medium'\n- 'heading-xlarge-bold'\n- 'headline-small-light'\n- 'headline-small-regular'",
|
582
594
|
"attribute": "type",
|
583
595
|
"reflects": true
|
584
596
|
},
|
585
597
|
{
|
586
|
-
"kind": "
|
587
|
-
"name": "
|
588
|
-
"
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
598
|
+
"kind": "field",
|
599
|
+
"name": "tagname",
|
600
|
+
"type": {
|
601
|
+
"text": "ValidTextTags | undefined"
|
602
|
+
},
|
603
|
+
"privacy": "public",
|
604
|
+
"description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the text element.\n\nAcceptable values include: 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'small', 'span', 'div', 'section'.\n\nFor instance, setting this attribute to `h2` will render the text element as an `h2` element.\nNote that the styling is determined by the `type` attribute.",
|
605
|
+
"attribute": "tagname",
|
606
|
+
"reflects": true
|
594
607
|
}
|
595
608
|
],
|
596
609
|
"attributes": [
|
597
610
|
{
|
598
611
|
"name": "type",
|
599
612
|
"type": {
|
600
|
-
"text": "FontType
|
613
|
+
"text": "FontType"
|
601
614
|
},
|
602
|
-
"description": "
|
615
|
+
"description": "Specifies the text style to be applied.\n\nAcceptable values include:\n\n- 'body-small-regular'\n- 'body-small-medium'\n- 'body-small-bold'\n- 'body-midsize-regular'\n- 'body-midsize-medium'\n- 'body-midsize-bold'\n- 'body-large-regular'\n- 'body-large-medium'\n- 'body-large-bold'\n- 'body-small-regular-underline'\n- 'body-small-medium-underline'\n- 'body-midsize-regular-underline'\n- 'body-midsize-medium-underline'\n- 'body-large-regular-underline'\n- 'body-large-medium-underline'\n- 'heading-small-regular'\n- 'heading-small-medium'\n- 'heading-small-bold'\n- 'heading-midsize-regular'\n- 'heading-midsize-medium'\n- 'heading-midsize-bold'\n- 'heading-large-regular'\n- 'heading-large-medium'\n- 'heading-large-bold'\n- 'heading-xlarge-regular'\n- 'heading-xlarge-medium'\n- 'heading-xlarge-bold'\n- 'headline-small-light'\n- 'headline-small-regular'",
|
603
616
|
"fieldName": "type"
|
617
|
+
},
|
618
|
+
{
|
619
|
+
"name": "tagname",
|
620
|
+
"type": {
|
621
|
+
"text": "ValidTextTags | undefined"
|
622
|
+
},
|
623
|
+
"description": "Specifies the HTML tag name for the text element. The default tag name is `p`.\nThis attribute is optional. When set, it changes the tag name of the text element.\n\nAcceptable values include: 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'p', 'small', 'span', 'div', 'section'.\n\nFor instance, setting this attribute to `h2` will render the text element as an `h2` element.\nNote that the styling is determined by the `type` attribute.",
|
624
|
+
"fieldName": "tagname"
|
604
625
|
}
|
605
626
|
],
|
606
627
|
"superclass": {
|
@@ -608,7 +629,7 @@
|
|
608
629
|
"module": "/src/models"
|
609
630
|
},
|
610
631
|
"tagName": "mdc-text",
|
611
|
-
"jsDoc": "/**\n * Text component
|
632
|
+
"jsDoc": "/**\n * Text component for creating styled text elements.\n * It has to be mounted within the ThemeProvider to access color and font tokens.\n *\n * The `type` attribute allows changing the text style.\n * The `tagname` attribute allows changing the tag name of the text element.\n * The default tag name is `p`.\n *\n * The `tagname` attribute should be a valid HTML tag name.\n * If the `tagname` attribute is not a valid HTML tag name, the default tag name will be used.\n *\n * The styling is applied based on the `type` attribute.\n *\n * @tagname mdc-text\n * @slot - Default slot for text content\n *\n * @csspart text - The text element\n */",
|
612
633
|
"customElement": true
|
613
634
|
}
|
614
635
|
],
|
@@ -652,7 +673,7 @@
|
|
652
673
|
"slots": [
|
653
674
|
{
|
654
675
|
"description": "children",
|
655
|
-
"name": "
|
676
|
+
"name": ""
|
656
677
|
}
|
657
678
|
],
|
658
679
|
"members": [
|
@@ -706,7 +727,7 @@
|
|
706
727
|
"module": "/src/models"
|
707
728
|
},
|
708
729
|
"tagName": "mdc-themeprovider",
|
709
|
-
"jsDoc": "/**\n * ThemeProvider component, which sets the passed in themeclass as class.\n * If the themeclass switches, the existing themeclass will be removed as a class\n * and the new themeclass will be added.\n *\n * CSS variables defined in the themeclass will be used for the styling of child dom nodes.\n *\n * Themeclass context can be be consumed from Lit child components\n * (see providerUtils.consume for how to consume)\n *\n * ThemeProvider also includes basic font defaults for text.\n *\n * @tagname mdc-themeprovider\n *\n * @slot
|
730
|
+
"jsDoc": "/**\n * ThemeProvider component, which sets the passed in themeclass as class.\n * If the themeclass switches, the existing themeclass will be removed as a class\n * and the new themeclass will be added.\n *\n * CSS variables defined in the themeclass will be used for the styling of child dom nodes.\n *\n * Themeclass context can be be consumed from Lit child components\n * (see providerUtils.consume for how to consume)\n *\n * ThemeProvider also includes basic font defaults for text.\n *\n * @tagname mdc-themeprovider\n *\n * @slot - children\n *\n * @cssproperty --mdc-themeprovider-color-default - Option to override the default color,\n * default: color-theme-text-primary-normal\n * @cssproperty --mdc-themeprovider-font-family - Option to override the font family,\n * default: `Momentum` (from momentum-design/fonts)\n * @cssproperty --mdc-themeprovider-font-weight - Option to override the font weight, default: `400`\n * @cssproperty --mdc-themeprovider-letter-spacing-adjustment - Option to override the default letter-spacing,\n * default: `-0.25px` (this is to match the old CiscoSans)\n */",
|
710
731
|
"customElement": true
|
711
732
|
}
|
712
733
|
],
|
@@ -9,7 +9,7 @@ import Component from '../../components/iconprovider';
|
|
9
9
|
*
|
10
10
|
* @tagname mdc-iconprovider
|
11
11
|
*
|
12
|
-
* @slot
|
12
|
+
* @slot - children
|
13
13
|
*/
|
14
14
|
declare const reactWrapper: import("@lit/react").ReactWebComponent<Component, {}>;
|
15
15
|
export default reactWrapper;
|
@@ -15,7 +15,7 @@ const iconprovider_constants_1 = require("../../components/iconprovider/iconprov
|
|
15
15
|
*
|
16
16
|
* @tagname mdc-iconprovider
|
17
17
|
*
|
18
|
-
* @slot
|
18
|
+
* @slot - children
|
19
19
|
*/
|
20
20
|
const reactWrapper = (0, react_1.createComponent)({
|
21
21
|
tagName: iconprovider_constants_1.TAG_NAME,
|
@@ -1,14 +1,21 @@
|
|
1
1
|
import Component from '../../components/text';
|
2
2
|
/**
|
3
|
-
* Text component
|
4
|
-
*
|
3
|
+
* Text component for creating styled text elements.
|
4
|
+
* It has to be mounted within the ThemeProvider to access color and font tokens.
|
5
5
|
*
|
6
|
-
* The `type` attribute allows changing the
|
6
|
+
* The `type` attribute allows changing the text style.
|
7
|
+
* The `tagname` attribute allows changing the tag name of the text element.
|
8
|
+
* The default tag name is `p`.
|
7
9
|
*
|
8
|
-
*
|
9
|
-
*
|
10
|
+
* The `tagname` attribute should be a valid HTML tag name.
|
11
|
+
* If the `tagname` attribute is not a valid HTML tag name, the default tag name will be used.
|
12
|
+
*
|
13
|
+
* The styling is applied based on the `type` attribute.
|
10
14
|
*
|
11
15
|
* @tagname mdc-text
|
16
|
+
* @slot - Default slot for text content
|
17
|
+
*
|
18
|
+
* @csspart text - The text element
|
12
19
|
*/
|
13
20
|
declare const reactWrapper: import("@lit/react").ReactWebComponent<Component, {}>;
|
14
21
|
export default reactWrapper;
|
package/dist/react/text/index.js
CHANGED
@@ -6,15 +6,22 @@ const react_1 = require("@lit/react");
|
|
6
6
|
const text_1 = tslib_1.__importDefault(require("../../components/text"));
|
7
7
|
const text_constants_1 = require("../../components/text/text.constants");
|
8
8
|
/**
|
9
|
-
* Text component
|
10
|
-
*
|
9
|
+
* Text component for creating styled text elements.
|
10
|
+
* It has to be mounted within the ThemeProvider to access color and font tokens.
|
11
11
|
*
|
12
|
-
* The `type` attribute allows changing the
|
12
|
+
* The `type` attribute allows changing the text style.
|
13
|
+
* The `tagname` attribute allows changing the tag name of the text element.
|
14
|
+
* The default tag name is `p`.
|
13
15
|
*
|
14
|
-
*
|
15
|
-
*
|
16
|
+
* The `tagname` attribute should be a valid HTML tag name.
|
17
|
+
* If the `tagname` attribute is not a valid HTML tag name, the default tag name will be used.
|
18
|
+
*
|
19
|
+
* The styling is applied based on the `type` attribute.
|
16
20
|
*
|
17
21
|
* @tagname mdc-text
|
22
|
+
* @slot - Default slot for text content
|
23
|
+
*
|
24
|
+
* @csspart text - The text element
|
18
25
|
*/
|
19
26
|
const reactWrapper = (0, react_1.createComponent)({
|
20
27
|
tagName: text_constants_1.TAG_NAME,
|
@@ -13,7 +13,7 @@ import Component from '../../components/themeprovider';
|
|
13
13
|
*
|
14
14
|
* @tagname mdc-themeprovider
|
15
15
|
*
|
16
|
-
* @slot
|
16
|
+
* @slot - children
|
17
17
|
*
|
18
18
|
* @cssproperty --mdc-themeprovider-color-default - Option to override the default color,
|
19
19
|
* default: color-theme-text-primary-normal
|
@@ -19,7 +19,7 @@ const themeprovider_constants_1 = require("../../components/themeprovider/themep
|
|
19
19
|
*
|
20
20
|
* @tagname mdc-themeprovider
|
21
21
|
*
|
22
|
-
* @slot
|
22
|
+
* @slot - children
|
23
23
|
*
|
24
24
|
* @cssproperty --mdc-themeprovider-color-default - Option to override the default color,
|
25
25
|
* default: color-theme-text-primary-normal
|
package/package.json
CHANGED
@@ -1,20 +0,0 @@
|
|
1
|
-
import { FontType } from './text.types';
|
2
|
-
/**
|
3
|
-
* Check if passed in type is a heading
|
4
|
-
* @param type - type to check
|
5
|
-
* @returns boolean, true if it is a heading
|
6
|
-
*/
|
7
|
-
declare const isHeading: (type: FontType) => boolean;
|
8
|
-
/**
|
9
|
-
* Get corresponding aria-role to type
|
10
|
-
* @param type - type to find corresponding role for
|
11
|
-
* @returns role
|
12
|
-
*/
|
13
|
-
declare const getRole: (type?: FontType) => "heading" | "paragraph" | null;
|
14
|
-
/**
|
15
|
-
* Get corresponding aria-level to type
|
16
|
-
* @param type - type to find corresponding level for
|
17
|
-
* @returns aria-level (has to be a number)
|
18
|
-
*/
|
19
|
-
declare const getAriaLevel: (type?: FontType) => string | null;
|
20
|
-
export { isHeading, getAriaLevel, getRole };
|
@@ -1,50 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.getRole = exports.getAriaLevel = exports.isHeading = void 0;
|
4
|
-
/**
|
5
|
-
* Split the passed in type and return the parts
|
6
|
-
*/
|
7
|
-
const getTypeParts = (type) => {
|
8
|
-
const parts = type.split('-');
|
9
|
-
return { firstPart: parts[0], secondPart: parts[1] };
|
10
|
-
};
|
11
|
-
/**
|
12
|
-
* Check if passed in type is a heading
|
13
|
-
* @param type - type to check
|
14
|
-
* @returns boolean, true if it is a heading
|
15
|
-
*/
|
16
|
-
const isHeading = (type) => {
|
17
|
-
const { firstPart, secondPart } = getTypeParts(type);
|
18
|
-
return firstPart === 'heading' && +secondPart > 0 && +secondPart < 7;
|
19
|
-
};
|
20
|
-
exports.isHeading = isHeading;
|
21
|
-
/**
|
22
|
-
* Get corresponding aria-role to type
|
23
|
-
* @param type - type to find corresponding role for
|
24
|
-
* @returns role
|
25
|
-
*/
|
26
|
-
const getRole = (type) => {
|
27
|
-
if (type) {
|
28
|
-
if (isHeading(type)) {
|
29
|
-
return 'heading';
|
30
|
-
}
|
31
|
-
return 'paragraph';
|
32
|
-
}
|
33
|
-
return null;
|
34
|
-
};
|
35
|
-
exports.getRole = getRole;
|
36
|
-
/**
|
37
|
-
* Get corresponding aria-level to type
|
38
|
-
* @param type - type to find corresponding level for
|
39
|
-
* @returns aria-level (has to be a number)
|
40
|
-
*/
|
41
|
-
const getAriaLevel = (type) => {
|
42
|
-
if (type) {
|
43
|
-
if (isHeading(type)) {
|
44
|
-
const { secondPart } = getTypeParts(type);
|
45
|
-
return secondPart;
|
46
|
-
}
|
47
|
-
}
|
48
|
-
return null;
|
49
|
-
};
|
50
|
-
exports.getAriaLevel = getAriaLevel;
|