@fluentui/react-label 9.0.0-alpha.5 → 9.0.0-alpha.50

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. package/CHANGELOG.json +1189 -1
  2. package/CHANGELOG.md +458 -2
  3. package/README.md +22 -0
  4. package/Spec.md +30 -35
  5. package/dist/react-label.d.ts +40 -23
  6. package/lib/Label.js.map +1 -1
  7. package/lib/common/isConformant.d.ts +1 -1
  8. package/lib/common/isConformant.js +7 -5
  9. package/lib/common/isConformant.js.map +1 -1
  10. package/lib/components/Label/Label.d.ts +3 -3
  11. package/lib/components/Label/Label.js +5 -4
  12. package/lib/components/Label/Label.js.map +1 -1
  13. package/lib/components/Label/Label.types.d.ts +29 -15
  14. package/lib/components/Label/Label.types.js.map +1 -1
  15. package/lib/components/Label/index.js.map +1 -1
  16. package/lib/components/Label/renderLabel.d.ts +1 -1
  17. package/lib/components/Label/renderLabel.js +6 -2
  18. package/lib/components/Label/renderLabel.js.map +1 -1
  19. package/lib/components/Label/useLabel.d.ts +4 -4
  20. package/lib/components/Label/useLabel.js +34 -11
  21. package/lib/components/Label/useLabel.js.map +1 -1
  22. package/lib/components/Label/useLabelStyles.d.ts +1 -1
  23. package/lib/components/Label/useLabelStyles.js +43 -11
  24. package/lib/components/Label/useLabelStyles.js.map +1 -1
  25. package/lib/index.js.map +1 -1
  26. package/lib/tsdoc-metadata.json +1 -1
  27. package/lib-commonjs/Label.js +7 -2
  28. package/lib-commonjs/Label.js.map +1 -1
  29. package/lib-commonjs/common/isConformant.d.ts +1 -1
  30. package/lib-commonjs/common/isConformant.js +16 -7
  31. package/lib-commonjs/common/isConformant.js.map +1 -1
  32. package/lib-commonjs/components/Label/Label.d.ts +3 -3
  33. package/lib-commonjs/components/Label/Label.js +18 -9
  34. package/lib-commonjs/components/Label/Label.js.map +1 -1
  35. package/lib-commonjs/components/Label/Label.types.d.ts +29 -15
  36. package/lib-commonjs/components/Label/Label.types.js +4 -1
  37. package/lib-commonjs/components/Label/Label.types.js.map +1 -1
  38. package/lib-commonjs/components/Label/index.js +11 -2
  39. package/lib-commonjs/components/Label/index.js.map +1 -1
  40. package/lib-commonjs/components/Label/renderLabel.d.ts +1 -1
  41. package/lib-commonjs/components/Label/renderLabel.js +20 -7
  42. package/lib-commonjs/components/Label/renderLabel.js.map +1 -1
  43. package/lib-commonjs/components/Label/useLabel.d.ts +4 -4
  44. package/lib-commonjs/components/Label/useLabel.js +43 -12
  45. package/lib-commonjs/components/Label/useLabel.js.map +1 -1
  46. package/lib-commonjs/components/Label/useLabelStyles.d.ts +1 -1
  47. package/lib-commonjs/components/Label/useLabelStyles.js +50 -12
  48. package/lib-commonjs/components/Label/useLabelStyles.js.map +1 -1
  49. package/lib-commonjs/index.js +7 -2
  50. package/lib-commonjs/index.js.map +1 -1
  51. package/package.json +14 -10
  52. package/config/api-extractor.json +0 -3
  53. package/config/tests.js +0 -7
  54. package/etc/react-label.api.md +0 -44
  55. package/just.config.ts +0 -3
  56. package/lib-amd/Label.d.ts +0 -1
  57. package/lib-amd/Label.js +0 -6
  58. package/lib-amd/Label.js.map +0 -1
  59. package/lib-amd/common/isConformant.d.ts +0 -4
  60. package/lib-amd/common/isConformant.js +0 -14
  61. package/lib-amd/common/isConformant.js.map +0 -1
  62. package/lib-amd/components/Label/Label.d.ts +0 -6
  63. package/lib-amd/components/Label/Label.js +0 -15
  64. package/lib-amd/components/Label/Label.js.map +0 -1
  65. package/lib-amd/components/Label/Label.types.d.ts +0 -24
  66. package/lib-amd/components/Label/Label.types.js +0 -5
  67. package/lib-amd/components/Label/Label.types.js.map +0 -1
  68. package/lib-amd/components/Label/index.d.ts +0 -5
  69. package/lib-amd/components/Label/index.js +0 -10
  70. package/lib-amd/components/Label/index.js.map +0 -1
  71. package/lib-amd/components/Label/renderLabel.d.ts +0 -5
  72. package/lib-amd/components/Label/renderLabel.js +0 -14
  73. package/lib-amd/components/Label/renderLabel.js.map +0 -1
  74. package/lib-amd/components/Label/useLabel.d.ts +0 -17
  75. package/lib-amd/components/Label/useLabel.js +0 -30
  76. package/lib-amd/components/Label/useLabel.js.map +0 -1
  77. package/lib-amd/components/Label/useLabelStyles.d.ts +0 -5
  78. package/lib-amd/components/Label/useLabelStyles.js +0 -25
  79. package/lib-amd/components/Label/useLabelStyles.js.map +0 -1
  80. package/lib-amd/index.d.ts +0 -2
  81. package/lib-amd/index.js +0 -6
  82. package/lib-amd/index.js.map +0 -1
  83. package/src/components/Label/Label.types.ts +0 -33
@@ -1,24 +1,38 @@
1
+ import type { ComponentProps, ComponentState, IntrinsicShorthandProps, ObjectShorthandProps } from '@fluentui/react-utilities';
1
2
  import * as React from 'react';
2
- import { ComponentProps, ComponentState } from '@fluentui/react-utilities';
3
3
  /**
4
4
  * Label Props
5
5
  */
6
- export interface LabelProps extends ComponentProps, React.HTMLAttributes<HTMLElement> {
7
- }
8
- /**
9
- * Names of the shorthand properties in LabelProps
10
- */
11
- export declare type LabelShorthandProps = never;
12
- /**
13
- * Names of LabelProps that have a default value in useLabel
14
- */
15
- export declare type LabelDefaultedProps = never;
6
+ export declare type LabelCommons = {
7
+ /**
8
+ * Renders the label as disabled
9
+ * @defaultvalue false
10
+ */
11
+ disabled: boolean;
12
+ /**
13
+ * A label supports different sizes.
14
+ * @defaultvalue 'medium'
15
+ */
16
+ size: 'small' | 'medium' | 'large';
17
+ /**
18
+ * A label supports semibold/strong fontweight.
19
+ * @defaultvalue false
20
+ */
21
+ strong: boolean;
22
+ };
23
+ export declare type LabelSlots = {
24
+ root: IntrinsicShorthandProps<'label'>;
25
+ required?: IntrinsicShorthandProps<'span'>;
26
+ };
16
27
  /**
17
28
  * State used in rendering Label
18
29
  */
19
- export interface LabelState extends ComponentState<LabelProps, LabelShorthandProps, LabelDefaultedProps> {
30
+ export declare type LabelState = ComponentState<LabelSlots> & LabelCommons;
31
+ export declare type LabelProps = Omit<ComponentProps<LabelSlots>, 'required'> & Partial<LabelCommons> & {
20
32
  /**
21
- * Ref to the root element
33
+ * Displays and indicator that the label is for a required field. The required prop can be set to true to display
34
+ * an asterisk (*). Or it can be set to a string or jsx content to display a different indicator.
35
+ * @defaultvalue false
22
36
  */
23
- ref: React.Ref<HTMLElement>;
24
- }
37
+ required?: boolean | ObjectShorthandProps<React.HTMLAttributes<HTMLElement>> | React.ReactNode;
38
+ };
@@ -1,3 +1,6 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  //# sourceMappingURL=Label.types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Label.types.js","sourceRoot":"../src/","sources":["components/Label/Label.types.ts"],"names":[],"mappings":"","sourcesContent":["import * as React from 'react';\nimport { ComponentProps, ComponentState } from '@fluentui/react-utilities';\n\n/**\n * Label Props\n */\nexport interface LabelProps extends ComponentProps, React.HTMLAttributes<HTMLElement> {\n /*\n * TODO Add props and slots here\n * Any slot property should be listed in the labelShorthandProps array below\n * Any property that has a default value should be listed in LabelDefaultedProps as e.g. 'size' | 'icon'\n */\n}\n\n/**\n * Names of the shorthand properties in LabelProps\n */\nexport type LabelShorthandProps = never; // TODO add shorthand property names\n\n/**\n * Names of LabelProps that have a default value in useLabel\n */\nexport type LabelDefaultedProps = never; // TODO add names of properties with default values\n\n/**\n * State used in rendering Label\n */\nexport interface LabelState extends ComponentState<LabelProps, LabelShorthandProps, LabelDefaultedProps> {\n /**\n * Ref to the root element\n */\n ref: React.Ref<HTMLElement>;\n}\n"]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourceRoot":""}
@@ -1,9 +1,18 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var tslib_1 = /*#__PURE__*/require("tslib");
8
+
4
9
  tslib_1.__exportStar(require("./Label"), exports);
10
+
5
11
  tslib_1.__exportStar(require("./Label.types"), exports);
12
+
6
13
  tslib_1.__exportStar(require("./renderLabel"), exports);
14
+
7
15
  tslib_1.__exportStar(require("./useLabel"), exports);
16
+
8
17
  tslib_1.__exportStar(require("./useLabelStyles"), exports);
9
18
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/Label/index.ts"],"names":[],"mappings":";;;AAAA,kDAAwB;AACxB,wDAA8B;AAC9B,wDAA8B;AAC9B,qDAA2B;AAC3B,2DAAiC","sourcesContent":["export * from './Label';\nexport * from './Label.types';\nexport * from './renderLabel';\nexport * from './useLabel';\nexport * from './useLabelStyles';\n"]}
1
+ {"version":3,"sources":["../../../src/components/Label/index.ts"],"names":[],"mappings":";;;;;;;;AAAA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,SAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,eAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,YAAA,CAAA,EAAA,OAAA;;AACA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,kBAAA,CAAA,EAAA,OAAA","sourceRoot":""}
@@ -1,4 +1,4 @@
1
- import { LabelState } from './Label.types';
1
+ import type { LabelState } from './Label.types';
2
2
  /**
3
3
  * Render the final JSX of Label
4
4
  */
@@ -1,16 +1,29 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  exports.renderLabel = void 0;
4
- var tslib_1 = require("tslib");
5
- var React = require("react");
6
- var react_utilities_1 = require("@fluentui/react-utilities");
7
- var useLabel_1 = require("./useLabel");
7
+
8
+ var tslib_1 = /*#__PURE__*/require("tslib");
9
+
10
+ var React = /*#__PURE__*/require("react");
11
+
12
+ var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
13
+
14
+ var useLabel_1 = /*#__PURE__*/require("./useLabel");
8
15
  /**
9
16
  * Render the final JSX of Label
10
17
  */
18
+
19
+
11
20
  var renderLabel = function (state) {
12
- var _a = react_utilities_1.getSlots(state, useLabel_1.labelShorthandProps), slots = _a.slots, slotProps = _a.slotProps;
13
- return (React.createElement(slots.root, tslib_1.__assign({}, slotProps.root), state.children));
21
+ var _a = react_utilities_1.getSlots(state, useLabel_1.labelShorthandProps),
22
+ slots = _a.slots,
23
+ slotProps = _a.slotProps;
24
+
25
+ return React.createElement(slots.root, tslib_1.__assign({}, slotProps.root), state.root.children, React.createElement(slots.required, tslib_1.__assign({}, slotProps.required)));
14
26
  };
27
+
15
28
  exports.renderLabel = renderLabel;
16
29
  //# sourceMappingURL=renderLabel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderLabel.js","sourceRoot":"../src/","sources":["components/Label/renderLabel.tsx"],"names":[],"mappings":";;;;AAAA,6BAA+B;AAC/B,6DAAqD;AAErD,uCAAiD;AAEjD;;GAEG;AACI,IAAM,WAAW,GAAG,UAAC,KAAiB;IACrC,IAAA,KAAuB,0BAAQ,CAAC,KAAK,EAAE,8BAAmB,CAAC,EAAzD,KAAK,WAAA,EAAE,SAAS,eAAyC,CAAC;IAElE,OAAO,CACL,oBAAC,KAAK,CAAC,IAAI,uBAAK,SAAS,CAAC,IAAI,GAE3B,KAAK,CAAC,QAAQ,CACJ,CACd,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,WAAW,eAStB","sourcesContent":["import * as React from 'react';\nimport { getSlots } from '@fluentui/react-utilities';\nimport { LabelState } from './Label.types';\nimport { labelShorthandProps } from './useLabel';\n\n/**\n * Render the final JSX of Label\n */\nexport const renderLabel = (state: LabelState) => {\n const { slots, slotProps } = getSlots(state, labelShorthandProps);\n\n return (\n <slots.root {...slotProps.root}>\n {/* TODO Add additional slots in the appropriate place */}\n {state.children}\n </slots.root>\n );\n};\n"]}
1
+ {"version":3,"sources":["../../../src/components/Label/renderLabel.tsx"],"names":[],"mappings":";;;;;;;;;AAAA,IAAA,KAAA,gBAAA,OAAA,CAAA,OAAA,CAAA;;AACA,IAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AACA,IAAA,UAAA,gBAAA,OAAA,CAAA,YAAA,CAAA;AAGA;;AAEG;;;AACI,IAAM,WAAW,GAAG,UAAC,KAAD,EAAkB;AACrC,MAAA,EAAA,GAAuB,iBAAA,CAAA,QAAA,CAAqB,KAArB,EAA4B,UAAA,CAAA,mBAA5B,CAAvB;AAAA,MAAE,KAAK,GAAA,EAAA,CAAA,KAAP;AAAA,MAAS,SAAS,GAAA,EAAA,CAAA,SAAlB;;AAEN,SACE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,IAAP,EAAW,OAAA,CAAA,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,IAAf,CAAX,EACG,KAAK,CAAC,IAAN,CAAW,QADd,EAEE,KAAA,CAAA,aAAA,CAAC,KAAK,CAAC,QAAP,EAAe,OAAA,CAAA,QAAA,CAAA,EAAA,EAAK,SAAS,CAAC,QAAf,CAAf,CAFF,CADF;AAMD,CATM;;AAAM,OAAA,CAAA,WAAA,GAAW,WAAX","sourceRoot":""}
@@ -1,9 +1,10 @@
1
1
  import * as React from 'react';
2
- import { LabelProps, LabelShorthandProps, LabelState } from './Label.types';
2
+ import type { LabelProps, LabelSlots, LabelState } from './Label.types';
3
3
  /**
4
4
  * Array of all shorthand properties listed in LabelShorthandProps
5
+ * {@docCatergory Label}
5
6
  */
6
- export declare const labelShorthandProps: LabelShorthandProps[];
7
+ export declare const labelShorthandProps: Array<keyof LabelSlots>;
7
8
  /**
8
9
  * Create the state required to render Label.
9
10
  *
@@ -12,6 +13,5 @@ export declare const labelShorthandProps: LabelShorthandProps[];
12
13
  *
13
14
  * @param props - props from this instance of Label
14
15
  * @param ref - reference to root HTMLElement of Label
15
- * @param defaultProps - (optional) default prop values provided by the implementing type
16
16
  */
17
- export declare const useLabel: (props: LabelProps, ref: React.Ref<HTMLElement>, defaultProps?: LabelProps | undefined) => LabelState;
17
+ export declare const useLabel: (props: LabelProps, ref: React.Ref<HTMLElement>) => LabelState;
@@ -1,14 +1,22 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  exports.useLabel = exports.labelShorthandProps = void 0;
4
- var react_utilities_1 = require("@fluentui/react-utilities");
7
+
8
+ var tslib_1 = /*#__PURE__*/require("tslib");
9
+
10
+ var react_utilities_1 = /*#__PURE__*/require("@fluentui/react-utilities");
11
+
12
+ var react_utilities_2 = /*#__PURE__*/require("@fluentui/react-utilities");
5
13
  /**
6
14
  * Array of all shorthand properties listed in LabelShorthandProps
15
+ * {@docCatergory Label}
7
16
  */
8
- exports.labelShorthandProps = [
9
- /* TODO add shorthand property names */
10
- ];
11
- var mergeProps = react_utilities_1.makeMergeProps({ deepMerge: exports.labelShorthandProps });
17
+
18
+
19
+ exports.labelShorthandProps = ['root', 'required'];
12
20
  /**
13
21
  * Create the state required to render Label.
14
22
  *
@@ -17,13 +25,36 @@ var mergeProps = react_utilities_1.makeMergeProps({ deepMerge: exports.labelShor
17
25
  *
18
26
  * @param props - props from this instance of Label
19
27
  * @param ref - reference to root HTMLElement of Label
20
- * @param defaultProps - (optional) default prop values provided by the implementing type
21
28
  */
22
- var useLabel = function (props, ref, defaultProps) {
23
- var state = mergeProps({
24
- ref: ref,
25
- }, defaultProps && react_utilities_1.resolveShorthandProps(defaultProps, exports.labelShorthandProps), react_utilities_1.resolveShorthandProps(props, exports.labelShorthandProps));
26
- return state;
29
+
30
+ var useLabel = function (props, ref) {
31
+ var _a = props.disabled,
32
+ disabled = _a === void 0 ? false : _a,
33
+ _b = props.required,
34
+ required = _b === void 0 ? false : _b,
35
+ _c = props.strong,
36
+ strong = _c === void 0 ? false : _c,
37
+ _d = props.size,
38
+ size = _d === void 0 ? 'medium' : _d;
39
+ return {
40
+ disabled: disabled,
41
+ required: react_utilities_2.resolveShorthand(required === false ? null : required, {
42
+ required: !!required,
43
+ defaultProps: {
44
+ children: '*'
45
+ }
46
+ }),
47
+ strong: strong,
48
+ size: size,
49
+ components: {
50
+ root: 'label',
51
+ required: 'span'
52
+ },
53
+ root: react_utilities_1.getNativeElementProps('label', tslib_1.__assign({
54
+ ref: ref
55
+ }, props))
56
+ };
27
57
  };
58
+
28
59
  exports.useLabel = useLabel;
29
60
  //# sourceMappingURL=useLabel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLabel.js","sourceRoot":"../src/","sources":["components/Label/useLabel.ts"],"names":[],"mappings":";;;AACA,6DAAkF;AAGlF;;GAEG;AACU,QAAA,mBAAmB,GAA0B;AACxD,uCAAuC;CACxC,CAAC;AAEF,IAAM,UAAU,GAAG,gCAAc,CAAa,EAAE,SAAS,EAAE,2BAAmB,EAAE,CAAC,CAAC;AAElF;;;;;;;;;GASG;AACI,IAAM,QAAQ,GAAG,UAAC,KAAiB,EAAE,GAA2B,EAAE,YAAyB;IAChG,IAAM,KAAK,GAAG,UAAU,CACtB;QACE,GAAG,KAAA;KACJ,EACD,YAAY,IAAI,uCAAqB,CAAC,YAAY,EAAE,2BAAmB,CAAC,EACxE,uCAAqB,CAAC,KAAK,EAAE,2BAAmB,CAAC,CAClD,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAVW,QAAA,QAAQ,YAUnB","sourcesContent":["import * as React from 'react';\nimport { makeMergeProps, resolveShorthandProps } from '@fluentui/react-utilities';\nimport { LabelProps, LabelShorthandProps, LabelState } from './Label.types';\n\n/**\n * Array of all shorthand properties listed in LabelShorthandProps\n */\nexport const labelShorthandProps: LabelShorthandProps[] = [\n /* TODO add shorthand property names */\n];\n\nconst mergeProps = makeMergeProps<LabelState>({ deepMerge: labelShorthandProps });\n\n/**\n * Create the state required to render Label.\n *\n * The returned state can be modified with hooks such as useLabelStyles,\n * before being passed to renderLabel.\n *\n * @param props - props from this instance of Label\n * @param ref - reference to root HTMLElement of Label\n * @param defaultProps - (optional) default prop values provided by the implementing type\n */\nexport const useLabel = (props: LabelProps, ref: React.Ref<HTMLElement>, defaultProps?: LabelProps): LabelState => {\n const state = mergeProps(\n {\n ref,\n },\n defaultProps && resolveShorthandProps(defaultProps, labelShorthandProps),\n resolveShorthandProps(props, labelShorthandProps),\n );\n\n return state;\n};\n"]}
1
+ {"version":3,"sources":["../../../src/components/Label/useLabel.tsx"],"names":[],"mappings":";;;;;;;;;AACA,IAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;;AAEA,IAAA,iBAAA,gBAAA,OAAA,CAAA,2BAAA,CAAA;AAEA;;;AAGG;;;AACU,OAAA,CAAA,mBAAA,GAA+C,CAAC,MAAD,EAAS,UAAT,CAA/C;AAEb;;;;;;;;AAQG;;AACI,IAAM,QAAQ,GAAG,UAAC,KAAD,EAAoB,GAApB,EAA+C;AAC7D,MAAA,EAAA,GAAwE,KAAK,CAA7D,QAAhB;AAAA,MAAA,QAAQ,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQ,EAAhB;AAAA,MAAkB,EAAA,GAAsD,KAAK,CAA3C,QAAlC;AAAA,MAAkB,QAAQ,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQ,EAAlC;AAAA,MAAoC,EAAA,GAAoC,KAAK,CAA3B,MAAlD;AAAA,MAAoC,MAAM,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,KAAH,GAAQ,EAAlD;AAAA,MAAoD,EAAA,GAAoB,KAAK,CAAV,IAAnE;AAAA,MAAoD,IAAI,GAAA,EAAA,KAAA,KAAA,CAAA,GAAG,QAAH,GAAW,EAAnE;AACR,SAAO;AACL,IAAA,QAAQ,EAAA,QADH;AAEL,IAAA,QAAQ,EAAE,iBAAA,CAAA,gBAAA,CAAiB,QAAQ,KAAK,KAAb,GAAqB,IAArB,GAA4B,QAA7C,EAAuD;AAC/D,MAAA,QAAQ,EAAE,CAAC,CAAC,QADmD;AAE/D,MAAA,YAAY,EAAE;AAAE,QAAA,QAAQ,EAAE;AAAZ;AAFiD,KAAvD,CAFL;AAML,IAAA,MAAM,EAAA,MAND;AAOL,IAAA,IAAI,EAAA,IAPC;AAQL,IAAA,UAAU,EAAE;AAAE,MAAA,IAAI,EAAE,OAAR;AAAiB,MAAA,QAAQ,EAAE;AAA3B,KARP;AASL,IAAA,IAAI,EAAE,iBAAA,CAAA,qBAAA,CAAsB,OAAtB,EAA6B,OAAA,CAAA,QAAA,CAAA;AAAI,MAAA,GAAG,EAAA;AAAP,KAAA,EAAY,KAAZ,CAA7B;AATD,GAAP;AAWD,CAbM;;AAAM,OAAA,CAAA,QAAA,GAAQ,QAAR","sourceRoot":""}
@@ -1,4 +1,4 @@
1
- import { LabelState } from './Label.types';
1
+ import type { LabelState } from './Label.types';
2
2
  /**
3
3
  * Apply styling to the Label slots based on the state
4
4
  */
@@ -1,24 +1,62 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
3
6
  exports.useLabelStyles = void 0;
4
- var react_make_styles_1 = require("@fluentui/react-make-styles");
7
+
8
+ var react_make_styles_1 = /*#__PURE__*/require("@fluentui/react-make-styles");
5
9
  /**
6
- * Styles for the root slot
10
+ * Styles for the label
7
11
  */
8
- var useStyles = react_make_styles_1.makeStyles({
9
- root: function (theme) { return ({
10
- // TODO Add default styles for the root element
11
- }); },
12
+
13
+
14
+ var useStyles = /*#__PURE__*/react_make_styles_1.__styles({
15
+ "root": {
16
+ "Bahqtrf": "fk6fouc",
17
+ "sj55zd": "f19n0e5"
18
+ },
19
+ "disabled": {
20
+ "sj55zd": "f1s2aq7o"
21
+ },
22
+ "required": {
23
+ "sj55zd": "f1whyuy6",
24
+ "uwmqm3": ["fycuoez", "f8wuabp"]
25
+ },
26
+ "small": {
27
+ "Be2twd7": "fy9rknc",
28
+ "Bg96gwp": "fwrc4pm"
29
+ },
30
+ "medium": {
31
+ "Be2twd7": "fkhj508",
32
+ "Bg96gwp": "f1i3iumi"
33
+ },
34
+ "large": {
35
+ "Be2twd7": "fod5ikn",
36
+ "Bg96gwp": "faaz57k",
37
+ "Bhrd7zp": "fl43uef"
38
+ },
39
+ "strong": {
40
+ "Bhrd7zp": "fl43uef"
41
+ }
42
+ }, {
43
+ "d": [".fk6fouc{font-family:var(--fontFamilyBase);}", ".f19n0e5{color:var(--colorNeutralForeground1);}", ".f1s2aq7o{color:var(--colorNeutralForegroundDisabled);}", ".f1whyuy6{color:var(--colorPaletteRedForeground3);}", ".fycuoez{padding-left:4px;}", ".f8wuabp{padding-right:4px;}", ".fy9rknc{font-size:var(--fontSizeBase200);}", ".fwrc4pm{line-height:var(--lineHeightBase200);}", ".fkhj508{font-size:var(--fontSizeBase300);}", ".f1i3iumi{line-height:var(--lineHeightBase300);}", ".fod5ikn{font-size:var(--fontSizeBase400);}", ".faaz57k{line-height:var(--lineHeightBase400);}", ".fl43uef{font-weight:var(--fontWeightSemibold);}"]
12
44
  });
13
45
  /**
14
46
  * Apply styling to the Label slots based on the state
15
47
  */
48
+
49
+
16
50
  var useLabelStyles = function (state) {
17
- var styles = useStyles();
18
- state.className = react_make_styles_1.mergeClasses(styles.root, state.className);
19
- // TODO Add class names to slots, for example:
20
- // state.mySlot.className = mergeClasses(styles.mySlot, state.mySlot.className);
21
- return state;
51
+ var styles = useStyles();
52
+ state.root.className = react_make_styles_1.mergeClasses(styles.root, state.disabled && styles.disabled, styles[state.size], state.strong && styles.strong, state.root.className);
53
+
54
+ if (state.required) {
55
+ state.required.className = react_make_styles_1.mergeClasses(styles.required, state.required.className);
56
+ }
57
+
58
+ return state;
22
59
  };
60
+
23
61
  exports.useLabelStyles = useLabelStyles;
24
62
  //# sourceMappingURL=useLabelStyles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useLabelStyles.js","sourceRoot":"../src/","sources":["components/Label/useLabelStyles.ts"],"names":[],"mappings":";;;AAAA,iEAAuE;AAGvE;;GAEG;AACH,IAAM,SAAS,GAAG,8BAAU,CAAC;IAC3B,IAAI,EAAE,UAAA,KAAK,IAAI,OAAA,CAAC;IACd,+CAA+C;KAChD,CAAC,EAFa,CAEb;CAGH,CAAC,CAAC;AAEH;;GAEG;AACI,IAAM,cAAc,GAAG,UAAC,KAAiB;IAC9C,IAAM,MAAM,GAAG,SAAS,EAAE,CAAC;IAC3B,KAAK,CAAC,SAAS,GAAG,gCAAY,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAE7D,8CAA8C;IAC9C,gFAAgF;IAEhF,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AARW,QAAA,cAAc,kBAQzB","sourcesContent":["import { makeStyles, mergeClasses } from '@fluentui/react-make-styles';\nimport { LabelState } from './Label.types';\n\n/**\n * Styles for the root slot\n */\nconst useStyles = makeStyles({\n root: theme => ({\n // TODO Add default styles for the root element\n }),\n\n // TODO add additional classes for different states and/or slots\n});\n\n/**\n * Apply styling to the Label slots based on the state\n */\nexport const useLabelStyles = (state: LabelState): LabelState => {\n const styles = useStyles();\n state.className = mergeClasses(styles.root, state.className);\n\n // TODO Add class names to slots, for example:\n // state.mySlot.className = mergeClasses(styles.mySlot, state.mySlot.className);\n\n return state;\n};\n"]}
1
+ {"version":3,"sources":["../../../src/components/Label/useLabelStyles.ts"],"names":[],"mappings":";;;;;;;AAAA,IAAA,mBAAA,gBAAA,OAAA,CAAA,6BAAA,CAAA;AAGA;;AAEG;;;AACH,IAAM,SAAS,gBAAG,mBAAA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAAlB;AAoCA;;AAEG;;;AACI,IAAM,cAAc,GAAG,UAAC,KAAD,EAAkB;AAC9C,MAAM,MAAM,GAAG,SAAS,EAAxB;AACA,EAAA,KAAK,CAAC,IAAN,CAAW,SAAX,GAAuB,mBAAA,CAAA,YAAA,CACrB,MAAM,CAAC,IADc,EAErB,KAAK,CAAC,QAAN,IAAkB,MAAM,CAAC,QAFJ,EAGrB,MAAM,CAAC,KAAK,CAAC,IAAP,CAHe,EAIrB,KAAK,CAAC,MAAN,IAAgB,MAAM,CAAC,MAJF,EAKrB,KAAK,CAAC,IAAN,CAAW,SALU,CAAvB;;AAQA,MAAI,KAAK,CAAC,QAAV,EAAoB;AAClB,IAAA,KAAK,CAAC,QAAN,CAAe,SAAf,GAA2B,mBAAA,CAAA,YAAA,CAAa,MAAM,CAAC,QAApB,EAA8B,KAAK,CAAC,QAAN,CAAe,SAA7C,CAA3B;AACD;;AAED,SAAO,KAAP;AACD,CAfM;;AAAM,OAAA,CAAA,cAAA,GAAc,cAAd","sourceRoot":""}
@@ -1,5 +1,10 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var tslib_1 = require("tslib");
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var tslib_1 = /*#__PURE__*/require("tslib");
8
+
4
9
  tslib_1.__exportStar(require("./Label"), exports);
5
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":";;;AAEA,kDAAwB","sourcesContent":["// TODO: replace with real exports\nexport {};\nexport * from './Label';\n"]}
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;AAEA,OAAA,CAAA,YAAA,CAAA,OAAA,CAAA,SAAA,CAAA,EAAA,OAAA","sourceRoot":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluentui/react-label",
3
- "version": "9.0.0-alpha.5",
3
+ "version": "9.0.0-alpha.50",
4
4
  "description": "Label component for FluentUI library.",
5
5
  "main": "lib-commonjs/index.js",
6
6
  "module": "lib/index.js",
@@ -13,19 +13,23 @@
13
13
  "license": "MIT",
14
14
  "scripts": {
15
15
  "build": "just-scripts build",
16
+ "bundle-size": "bundle-size measure",
16
17
  "clean": "just-scripts clean",
17
18
  "code-style": "just-scripts code-style",
18
19
  "just": "just-scripts",
19
20
  "lint": "just-scripts lint",
20
- "start": "just-scripts dev:storybook",
21
- "start-test": "just-scripts jest-watch",
22
- "test": "just-scripts test",
23
- "update-snapshots": "just-scripts jest -u"
21
+ "start": "yarn storybook",
22
+ "test": "jest",
23
+ "docs": "api-extractor run --config=config/api-extractor.local.json --local",
24
+ "build:local": "tsc -p . --module esnext --emitDeclarationOnly && node ../../scripts/typescript/normalize-import --output dist/packages/react-label/src && yarn docs",
25
+ "storybook": "start-storybook"
24
26
  },
25
27
  "devDependencies": {
26
- "@fluentui/eslint-plugin": "^1.3.0",
27
- "@fluentui/jest-serializer-make-styles": "^9.0.0-alpha.16",
28
- "@fluentui/react-conformance": "^0.4.0",
28
+ "@fluentui/babel-make-styles": "9.0.0-alpha.59",
29
+ "@fluentui/eslint-plugin": "*",
30
+ "@fluentui/jest-serializer-make-styles": "9.0.0-alpha.52",
31
+ "@fluentui/react-conformance": "*",
32
+ "@fluentui/react-conformance-make-styles": "9.0.0-alpha.21",
29
33
  "@fluentui/scripts": "^1.0.0",
30
34
  "@types/enzyme": "3.10.3",
31
35
  "@types/enzyme-adapter-react-16": "1.0.3",
@@ -39,8 +43,8 @@
39
43
  "react-test-renderer": "^16.3.0"
40
44
  },
41
45
  "dependencies": {
42
- "@fluentui/react-make-styles": "^9.0.0-alpha.40",
43
- "@fluentui/react-utilities": "^9.0.0-alpha.27",
46
+ "@fluentui/react-make-styles": "9.0.0-alpha.77",
47
+ "@fluentui/react-utilities": "9.0.0-alpha.56",
44
48
  "tslib": "^2.1.0"
45
49
  },
46
50
  "peerDependencies": {
@@ -1,3 +0,0 @@
1
- {
2
- "extends": "@fluentui/scripts/api-extractor/api-extractor.common.json"
3
- }
package/config/tests.js DELETED
@@ -1,7 +0,0 @@
1
- /** Jest test setup file. */
2
-
3
- const { configure } = require('enzyme');
4
- const Adapter = require('enzyme-adapter-react-16');
5
-
6
- // Configure enzyme.
7
- configure({ adapter: new Adapter() });
@@ -1,44 +0,0 @@
1
- ## API Report File for "@fluentui/react-label"
2
-
3
- > Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/).
4
-
5
- ```ts
6
-
7
- import { ComponentProps } from '@fluentui/react-utilities';
8
- import { ComponentState } from '@fluentui/react-utilities';
9
- import * as React_2 from 'react';
10
-
11
- // @public
12
- export const Label: React_2.ForwardRefExoticComponent<LabelProps & React_2.RefAttributes<HTMLElement>>;
13
-
14
- // @public
15
- export type LabelDefaultedProps = never;
16
-
17
- // @public
18
- export interface LabelProps extends ComponentProps, React_2.HTMLAttributes<HTMLElement> {
19
- }
20
-
21
- // @public
22
- export type LabelShorthandProps = never;
23
-
24
- // @public
25
- export const labelShorthandProps: LabelShorthandProps[];
26
-
27
- // @public
28
- export interface LabelState extends ComponentState<LabelProps, LabelShorthandProps, LabelDefaultedProps> {
29
- ref: React_2.Ref<HTMLElement>;
30
- }
31
-
32
- // @public
33
- export const renderLabel: (state: LabelState) => JSX.Element;
34
-
35
- // @public
36
- export const useLabel: (props: LabelProps, ref: React_2.Ref<HTMLElement>, defaultProps?: LabelProps | undefined) => LabelState;
37
-
38
- // @public
39
- export const useLabelStyles: (state: LabelState) => LabelState;
40
-
41
-
42
- // (No @packageDocumentation comment for this package)
43
-
44
- ```
package/just.config.ts DELETED
@@ -1,3 +0,0 @@
1
- import { preset } from '@fluentui/scripts';
2
-
3
- preset();
@@ -1 +0,0 @@
1
- export * from './components/Label/index';
package/lib-amd/Label.js DELETED
@@ -1,6 +0,0 @@
1
- define(["require", "exports", "tslib", "./components/Label/index"], function (require, exports, tslib_1, index_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- tslib_1.__exportStar(index_1, exports);
5
- });
6
- //# sourceMappingURL=Label.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"../src/","sources":["Label.ts"],"names":[],"mappings":";;;IAAA,uCAAyC","sourcesContent":["export * from './components/Label/index';\n"]}
@@ -1,4 +0,0 @@
1
- import { IsConformantOptions } from '@fluentui/react-conformance';
2
- export declare function isConformant<TProps = {}>(testInfo: Omit<IsConformantOptions<TProps>, 'componentPath'> & {
3
- componentPath?: string;
4
- }): void;
@@ -1,14 +0,0 @@
1
- define(["require", "exports", "@fluentui/react-conformance"], function (require, exports, react_conformance_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.isConformant = void 0;
5
- function isConformant(testInfo) {
6
- var defaultOptions = {
7
- asPropHandlesRef: true,
8
- componentPath: module.parent.filename.replace('.test', ''),
9
- };
10
- react_conformance_1.isConformant(defaultOptions, testInfo);
11
- }
12
- exports.isConformant = isConformant;
13
- });
14
- //# sourceMappingURL=isConformant.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"isConformant.js","sourceRoot":"../src/","sources":["common/isConformant.ts"],"names":[],"mappings":";;;;IAEA,SAAgB,YAAY,CAC1B,QAAyF;QAEzF,IAAM,cAAc,GAAyC;YAC3D,gBAAgB,EAAE,IAAI;YACtB,aAAa,EAAE,MAAO,CAAC,MAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SAC7D,CAAC;QAEF,gCAAgB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IAC7C,CAAC;IATD,oCASC","sourcesContent":["import { isConformant as baseIsConformant, IsConformantOptions } from '@fluentui/react-conformance';\n\nexport function isConformant<TProps = {}>(\n testInfo: Omit<IsConformantOptions<TProps>, 'componentPath'> & { componentPath?: string },\n) {\n const defaultOptions: Partial<IsConformantOptions<TProps>> = {\n asPropHandlesRef: true,\n componentPath: module!.parent!.filename.replace('.test', ''),\n };\n\n baseIsConformant(defaultOptions, testInfo);\n}\n"]}
@@ -1,6 +0,0 @@
1
- import * as React from 'react';
2
- import { LabelProps } from './Label.types';
3
- /**
4
- * A label component provides a title or name to a component.
5
- */
6
- export declare const Label: React.ForwardRefExoticComponent<LabelProps & React.RefAttributes<HTMLElement>>;
@@ -1,15 +0,0 @@
1
- define(["require", "exports", "react", "./useLabel", "./renderLabel", "./useLabelStyles"], function (require, exports, React, useLabel_1, renderLabel_1, useLabelStyles_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Label = void 0;
5
- /**
6
- * A label component provides a title or name to a component.
7
- */
8
- exports.Label = React.forwardRef(function (props, ref) {
9
- var state = useLabel_1.useLabel(props, ref);
10
- useLabelStyles_1.useLabelStyles(state);
11
- return renderLabel_1.renderLabel(state);
12
- });
13
- exports.Label.displayName = 'Label';
14
- });
15
- //# sourceMappingURL=Label.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Label.js","sourceRoot":"../src/","sources":["components/Label/Label.tsx"],"names":[],"mappings":";;;;IAMA;;OAEG;IACU,QAAA,KAAK,GAAG,KAAK,CAAC,UAAU,CAA0B,UAAC,KAAK,EAAE,GAAG;QACxE,IAAM,KAAK,GAAG,mBAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAEnC,+BAAc,CAAC,KAAK,CAAC,CAAC;QACtB,OAAO,yBAAW,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,aAAK,CAAC,WAAW,GAAG,OAAO,CAAC","sourcesContent":["import * as React from 'react';\nimport { useLabel } from './useLabel';\nimport { LabelProps } from './Label.types';\nimport { renderLabel } from './renderLabel';\nimport { useLabelStyles } from './useLabelStyles';\n\n/**\n * A label component provides a title or name to a component.\n */\nexport const Label = React.forwardRef<HTMLElement, LabelProps>((props, ref) => {\n const state = useLabel(props, ref);\n\n useLabelStyles(state);\n return renderLabel(state);\n});\n\nLabel.displayName = 'Label';\n"]}
@@ -1,24 +0,0 @@
1
- import * as React from 'react';
2
- import { ComponentProps, ComponentState } from '@fluentui/react-utilities';
3
- /**
4
- * Label Props
5
- */
6
- export interface LabelProps extends ComponentProps, React.HTMLAttributes<HTMLElement> {
7
- }
8
- /**
9
- * Names of the shorthand properties in LabelProps
10
- */
11
- export declare type LabelShorthandProps = never;
12
- /**
13
- * Names of LabelProps that have a default value in useLabel
14
- */
15
- export declare type LabelDefaultedProps = never;
16
- /**
17
- * State used in rendering Label
18
- */
19
- export interface LabelState extends ComponentState<LabelProps, LabelShorthandProps, LabelDefaultedProps> {
20
- /**
21
- * Ref to the root element
22
- */
23
- ref: React.Ref<HTMLElement>;
24
- }
@@ -1,5 +0,0 @@
1
- define(["require", "exports"], function (require, exports) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- });
5
- //# sourceMappingURL=Label.types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Label.types.js","sourceRoot":"../src/","sources":["components/Label/Label.types.ts"],"names":[],"mappings":"","sourcesContent":["import * as React from 'react';\nimport { ComponentProps, ComponentState } from '@fluentui/react-utilities';\n\n/**\n * Label Props\n */\nexport interface LabelProps extends ComponentProps, React.HTMLAttributes<HTMLElement> {\n /*\n * TODO Add props and slots here\n * Any slot property should be listed in the labelShorthandProps array below\n * Any property that has a default value should be listed in LabelDefaultedProps as e.g. 'size' | 'icon'\n */\n}\n\n/**\n * Names of the shorthand properties in LabelProps\n */\nexport type LabelShorthandProps = never; // TODO add shorthand property names\n\n/**\n * Names of LabelProps that have a default value in useLabel\n */\nexport type LabelDefaultedProps = never; // TODO add names of properties with default values\n\n/**\n * State used in rendering Label\n */\nexport interface LabelState extends ComponentState<LabelProps, LabelShorthandProps, LabelDefaultedProps> {\n /**\n * Ref to the root element\n */\n ref: React.Ref<HTMLElement>;\n}\n"]}
@@ -1,5 +0,0 @@
1
- export * from './Label';
2
- export * from './Label.types';
3
- export * from './renderLabel';
4
- export * from './useLabel';
5
- export * from './useLabelStyles';
@@ -1,10 +0,0 @@
1
- define(["require", "exports", "tslib", "./Label", "./Label.types", "./renderLabel", "./useLabel", "./useLabelStyles"], function (require, exports, tslib_1, Label_1, Label_types_1, renderLabel_1, useLabel_1, useLabelStyles_1) {
2
- "use strict";
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- tslib_1.__exportStar(Label_1, exports);
5
- tslib_1.__exportStar(Label_types_1, exports);
6
- tslib_1.__exportStar(renderLabel_1, exports);
7
- tslib_1.__exportStar(useLabel_1, exports);
8
- tslib_1.__exportStar(useLabelStyles_1, exports);
9
- });
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/Label/index.ts"],"names":[],"mappings":";;;IAAA,uCAAwB;IACxB,6CAA8B;IAC9B,6CAA8B;IAC9B,0CAA2B;IAC3B,gDAAiC","sourcesContent":["export * from './Label';\nexport * from './Label.types';\nexport * from './renderLabel';\nexport * from './useLabel';\nexport * from './useLabelStyles';\n"]}
@@ -1,5 +0,0 @@
1
- import { LabelState } from './Label.types';
2
- /**
3
- * Render the final JSX of Label
4
- */
5
- export declare const renderLabel: (state: LabelState) => JSX.Element;