@peculiar/react-components 0.1.9 → 0.1.10

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.
@@ -39,14 +39,11 @@ var SIZE = 44;
39
39
  var THICKNESS = 4;
40
40
  var circularRotateKeyframe = (0, styles_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"], ["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"])));
41
41
  var circularDashKeyframe = (0, styles_1.keyframes)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n"], ["\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n"])));
42
- var stylesBase = function (color) { return (0, styles_1.css)({
43
- label: 'CircularProgress',
44
- overflow: 'hidden',
45
- position: 'relative',
46
- display: 'inline-block',
47
- color: "var(--pv-color-".concat(color, ")"),
42
+ var stylesBase = function (color, variant) { return (0, styles_1.css)(__assign({ label: 'CircularProgress', overflow: 'hidden', position: 'relative', display: 'inline-block', color: "var(--pv-color-".concat(color, ")") }, (variant === 'indeterminate' ? {
48
43
  animation: "".concat(circularRotateKeyframe, " 1.4s linear infinite"),
49
- }); };
44
+ } : {
45
+ transform: 'rotate(-90deg)',
46
+ }))); };
50
47
  var stylesBaseSmall = function () { return (0, styles_1.css)({
51
48
  label: 'small',
52
49
  height: 'var(--pv-size-base-3)',
@@ -61,32 +58,36 @@ var stylesProgressSvg = function () { return (0, styles_1.css)({
61
58
  label: 'CircularProgress-svg',
62
59
  display: 'block',
63
60
  }); };
64
- var stylesProgressCircle = function () { return (0, styles_1.css)({
65
- label: 'CircularProgress-circle',
66
- stroke: 'currentcolor',
67
- strokeDasharray: '80px, 200px',
68
- strokeDashoffset: 0,
61
+ var stylesProgressCircle = function (variant) { return (0, styles_1.css)(__assign({ label: 'CircularProgress-circle', stroke: 'currentcolor', strokeDasharray: '80px, 200px', strokeDashoffset: 0 }, (variant === 'indeterminate' && {
69
62
  animation: "".concat(circularDashKeyframe, " 1.4s ease-in-out infinite"),
70
- }); };
63
+ }))); };
71
64
  /**
72
65
  *
73
66
  */
74
67
  exports.CircularProgress = react_1.default.forwardRef(function (props, ref) {
75
68
  var _a;
76
- var color = props.color, className = props.className, size = props.size, other = __rest(props, ["color", "className", "size"]);
69
+ var color = props.color, className = props.className, size = props.size, _b = props.variant, variant = _b === void 0 ? 'indeterminate' : _b, _c = props.value, value = _c === void 0 ? 0 : _c, other = __rest(props, ["color", "className", "size", "variant", "value"]);
70
+ var circleStyle = {};
71
+ if (variant === 'determinate') {
72
+ var circumference = 2 * Math.PI * ((SIZE - THICKNESS) / 2);
73
+ circleStyle.strokeDasharray = circumference.toFixed(3);
74
+ circleStyle.strokeDashoffset = "".concat((((100 - value) / 100) * circumference).toFixed(3), "px");
75
+ }
77
76
  return (react_1.default.createElement("div", __assign({}, other, { ref: ref, className: (0, styles_1.cx)((_a = {},
78
- _a[stylesBase(color)] = true,
77
+ _a[stylesBase(color, variant)] = true,
79
78
  _a[stylesBaseSmall()] = size === 'small',
80
79
  _a[stylesBaseLarge()] = size === 'large',
81
80
  _a[className] = !!className,
82
81
  _a)), role: "progressbar" }),
83
82
  react_1.default.createElement("svg", { viewBox: "".concat(SIZE / 2, " ").concat(SIZE / 2, " ").concat(SIZE, " ").concat(SIZE), className: stylesProgressSvg() },
84
- react_1.default.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle() }))));
83
+ react_1.default.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle(variant), style: circleStyle }))));
85
84
  });
86
85
  exports.CircularProgress.displayName = 'CircularProgress';
87
86
  exports.CircularProgress.defaultProps = {
88
87
  color: 'primary',
89
88
  size: 'large',
89
+ variant: 'indeterminate',
90
+ value: 0,
90
91
  };
91
92
  var templateObject_1, templateObject_2;
92
93
  //# sourceMappingURL=circular_progress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,oCAA+C;AAuB/C;;GAEG;AACH,IAAM,IAAI,GAAG,EAAE,CAAC;AAChB,IAAM,SAAS,GAAG,CAAC,CAAC;AAEpB,IAAM,sBAAsB,OAAG,kBAAS,kKAAA,8FAOvC,IAAA,CAAC;AAEF,IAAM,oBAAoB,OAAG,kBAAS,yTAAA,qPAarC,IAAA,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,KAAyB,IAAK,OAAA,IAAA,YAAG,EAAC;IACpD,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,yBAAkB,KAAK,MAAG;IACjC,SAAS,EAAE,UAAG,sBAAsB,0BAAuB;CAC5D,CAAC,EAPgD,CAOhD,CAAC;AAEH,IAAM,eAAe,GAAG,cAAM,OAAA,IAAA,YAAG,EAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,EAJ4B,CAI5B,CAAC;AAEH,IAAM,eAAe,GAAG,cAAM,OAAA,IAAA,YAAG,EAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,EAJ4B,CAI5B,CAAC;AAEH,IAAM,iBAAiB,GAAG,cAAM,OAAA,IAAA,YAAG,EAAC;IAClC,KAAK,EAAE,sBAAsB;IAC7B,OAAO,EAAE,OAAO;CACjB,CAAC,EAH8B,CAG9B,CAAC;AAEH,IAAM,oBAAoB,GAAG,cAAM,OAAA,IAAA,YAAG,EAAC;IACrC,KAAK,EAAE,yBAAyB;IAChC,MAAM,EAAE,cAAc;IACtB,eAAe,EAAE,aAAa;IAC9B,gBAAgB,EAAE,CAAC;IACnB,SAAS,EAAE,UAAG,oBAAoB,+BAA4B;CAC/D,CAAC,EANiC,CAMjC,CAAC;AACH;;GAEG;AAEU,QAAA,gBAAgB,GAAG,eAAK,CAAC,UAAU,CAC9C,UAAC,KAAK,EAAE,GAAG;;IAEP,IAAA,KAAK,GAIH,KAAK,MAJF,EACL,SAAS,GAGP,KAAK,UAHE,EACT,IAAI,GAEF,KAAK,KAFH,EACD,KAAK,UACN,KAAK,EALH,8BAKL,CADS,CACA;IAEV,OAAO,CACL,kDACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,WAAE;YACX,GAAC,UAAU,CAAC,KAAK,CAAC,IAAG,IAAI;YACzB,GAAC,eAAe,EAAE,IAAG,IAAI,KAAK,OAAO;YACrC,GAAC,eAAe,EAAE,IAAG,IAAI,KAAK,OAAO;YACrC,GAAC,SAAS,IAAG,CAAC,CAAC,SAAS;gBACxB,EACF,IAAI,EAAC,aAAa;QAElB,uCACE,OAAO,EAAE,UAAG,IAAI,GAAG,CAAC,cAAI,IAAI,GAAG,CAAC,cAAI,IAAI,cAAI,IAAI,CAAE,EAClD,SAAS,EAAE,iBAAiB,EAAE;YAE9B,0CACE,EAAE,EAAE,IAAI,EACR,EAAE,EAAE,IAAI,EACR,CAAC,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,EACzB,IAAI,EAAC,MAAM,EACX,WAAW,EAAE,SAAS,EACtB,SAAS,EAAE,oBAAoB,EAAE,GACjC,CACE,CACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,wBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAElD,wBAAgB,CAAC,YAAY,GAAG;IAC9B,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,OAAO;CACd,CAAC"}
1
+ {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":"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"}
@@ -33,14 +33,11 @@ var SIZE = 44;
33
33
  var THICKNESS = 4;
34
34
  var circularRotateKeyframe = keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"], ["\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n"])));
35
35
  var circularDashKeyframe = keyframes(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n"], ["\n 0% {\n stroke-dasharray: 1px, 200px;\n stroke-dashoffset: 0;\n }\n 50% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -15px;\n }\n 100% {\n stroke-dasharray: 100px, 200px;\n stroke-dashoffset: -125px;\n }\n"])));
36
- var stylesBase = function (color) { return css({
37
- label: 'CircularProgress',
38
- overflow: 'hidden',
39
- position: 'relative',
40
- display: 'inline-block',
41
- color: "var(--pv-color-".concat(color, ")"),
36
+ var stylesBase = function (color, variant) { return css(__assign({ label: 'CircularProgress', overflow: 'hidden', position: 'relative', display: 'inline-block', color: "var(--pv-color-".concat(color, ")") }, (variant === 'indeterminate' ? {
42
37
  animation: "".concat(circularRotateKeyframe, " 1.4s linear infinite"),
43
- }); };
38
+ } : {
39
+ transform: 'rotate(-90deg)',
40
+ }))); };
44
41
  var stylesBaseSmall = function () { return css({
45
42
  label: 'small',
46
43
  height: 'var(--pv-size-base-3)',
@@ -55,32 +52,36 @@ var stylesProgressSvg = function () { return css({
55
52
  label: 'CircularProgress-svg',
56
53
  display: 'block',
57
54
  }); };
58
- var stylesProgressCircle = function () { return css({
59
- label: 'CircularProgress-circle',
60
- stroke: 'currentcolor',
61
- strokeDasharray: '80px, 200px',
62
- strokeDashoffset: 0,
55
+ var stylesProgressCircle = function (variant) { return css(__assign({ label: 'CircularProgress-circle', stroke: 'currentcolor', strokeDasharray: '80px, 200px', strokeDashoffset: 0 }, (variant === 'indeterminate' && {
63
56
  animation: "".concat(circularDashKeyframe, " 1.4s ease-in-out infinite"),
64
- }); };
57
+ }))); };
65
58
  /**
66
59
  *
67
60
  */
68
61
  export var CircularProgress = React.forwardRef(function (props, ref) {
69
62
  var _a;
70
- var color = props.color, className = props.className, size = props.size, other = __rest(props, ["color", "className", "size"]);
63
+ var color = props.color, className = props.className, size = props.size, _b = props.variant, variant = _b === void 0 ? 'indeterminate' : _b, _c = props.value, value = _c === void 0 ? 0 : _c, other = __rest(props, ["color", "className", "size", "variant", "value"]);
64
+ var circleStyle = {};
65
+ if (variant === 'determinate') {
66
+ var circumference = 2 * Math.PI * ((SIZE - THICKNESS) / 2);
67
+ circleStyle.strokeDasharray = circumference.toFixed(3);
68
+ circleStyle.strokeDashoffset = "".concat((((100 - value) / 100) * circumference).toFixed(3), "px");
69
+ }
71
70
  return (React.createElement("div", __assign({}, other, { ref: ref, className: cx((_a = {},
72
- _a[stylesBase(color)] = true,
71
+ _a[stylesBase(color, variant)] = true,
73
72
  _a[stylesBaseSmall()] = size === 'small',
74
73
  _a[stylesBaseLarge()] = size === 'large',
75
74
  _a[className] = !!className,
76
75
  _a)), role: "progressbar" }),
77
76
  React.createElement("svg", { viewBox: "".concat(SIZE / 2, " ").concat(SIZE / 2, " ").concat(SIZE, " ").concat(SIZE), className: stylesProgressSvg() },
78
- React.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle() }))));
77
+ React.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle(variant), style: circleStyle }))));
79
78
  });
80
79
  CircularProgress.displayName = 'CircularProgress';
81
80
  CircularProgress.defaultProps = {
82
81
  color: 'primary',
83
82
  size: 'large',
83
+ variant: 'indeterminate',
84
+ value: 0,
84
85
  };
85
86
  var templateObject_1, templateObject_2;
86
87
  //# sourceMappingURL=circular_progress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAuB/C;;GAEG;AACH,IAAM,IAAI,GAAG,EAAE,CAAC;AAChB,IAAM,SAAS,GAAG,CAAC,CAAC;AAEpB,IAAM,sBAAsB,GAAG,SAAS,iKAAA,8FAOvC,IAAA,CAAC;AAEF,IAAM,oBAAoB,GAAG,SAAS,wTAAA,qPAarC,IAAA,CAAC;AAEF,IAAM,UAAU,GAAG,UAAC,KAAyB,IAAK,OAAA,GAAG,CAAC;IACpD,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,yBAAkB,KAAK,MAAG;IACjC,SAAS,EAAE,UAAG,sBAAsB,0BAAuB;CAC5D,CAAC,EAPgD,CAOhD,CAAC;AAEH,IAAM,eAAe,GAAG,cAAM,OAAA,GAAG,CAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,EAJ4B,CAI5B,CAAC;AAEH,IAAM,eAAe,GAAG,cAAM,OAAA,GAAG,CAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,EAJ4B,CAI5B,CAAC;AAEH,IAAM,iBAAiB,GAAG,cAAM,OAAA,GAAG,CAAC;IAClC,KAAK,EAAE,sBAAsB;IAC7B,OAAO,EAAE,OAAO;CACjB,CAAC,EAH8B,CAG9B,CAAC;AAEH,IAAM,oBAAoB,GAAG,cAAM,OAAA,GAAG,CAAC;IACrC,KAAK,EAAE,yBAAyB;IAChC,MAAM,EAAE,cAAc;IACtB,eAAe,EAAE,aAAa;IAC9B,gBAAgB,EAAE,CAAC;IACnB,SAAS,EAAE,UAAG,oBAAoB,+BAA4B;CAC/D,CAAC,EANiC,CAMjC,CAAC;AACH;;GAEG;AAEH,MAAM,CAAC,IAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAC9C,UAAC,KAAK,EAAE,GAAG;;IAEP,IAAA,KAAK,GAIH,KAAK,MAJF,EACL,SAAS,GAGP,KAAK,UAHE,EACT,IAAI,GAEF,KAAK,KAFH,EACD,KAAK,UACN,KAAK,EALH,8BAKL,CADS,CACA;IAEV,OAAO,CACL,wCACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE;YACX,GAAC,UAAU,CAAC,KAAK,CAAC,IAAG,IAAI;YACzB,GAAC,eAAe,EAAE,IAAG,IAAI,KAAK,OAAO;YACrC,GAAC,eAAe,EAAE,IAAG,IAAI,KAAK,OAAO;YACrC,GAAC,SAAS,IAAG,CAAC,CAAC,SAAS;gBACxB,EACF,IAAI,EAAC,aAAa;QAElB,6BACE,OAAO,EAAE,UAAG,IAAI,GAAG,CAAC,cAAI,IAAI,GAAG,CAAC,cAAI,IAAI,cAAI,IAAI,CAAE,EAClD,SAAS,EAAE,iBAAiB,EAAE;YAE9B,gCACE,EAAE,EAAE,IAAI,EACR,EAAE,EAAE,IAAI,EACR,CAAC,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,EACzB,IAAI,EAAC,MAAM,EACX,WAAW,EAAE,SAAS,EACtB,SAAS,EAAE,oBAAoB,EAAE,GACjC,CACE,CACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAElD,gBAAgB,CAAC,YAAY,GAAG;IAC9B,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,OAAO;CACd,CAAC"}
1
+ {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":"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"}
@@ -27,13 +27,17 @@ const circularDashKeyframe = keyframes `
27
27
  stroke-dashoffset: -125px;
28
28
  }
29
29
  `;
30
- const stylesBase = (color) => css({
30
+ const stylesBase = (color, variant) => css({
31
31
  label: 'CircularProgress',
32
32
  overflow: 'hidden',
33
33
  position: 'relative',
34
34
  display: 'inline-block',
35
35
  color: `var(--pv-color-${color})`,
36
- animation: `${circularRotateKeyframe} 1.4s linear infinite`,
36
+ ...(variant === 'indeterminate' ? {
37
+ animation: `${circularRotateKeyframe} 1.4s linear infinite`,
38
+ } : {
39
+ transform: 'rotate(-90deg)',
40
+ }),
37
41
  });
38
42
  const stylesBaseSmall = () => css({
39
43
  label: 'small',
@@ -49,30 +53,40 @@ const stylesProgressSvg = () => css({
49
53
  label: 'CircularProgress-svg',
50
54
  display: 'block',
51
55
  });
52
- const stylesProgressCircle = () => css({
56
+ const stylesProgressCircle = (variant) => css({
53
57
  label: 'CircularProgress-circle',
54
58
  stroke: 'currentcolor',
55
59
  strokeDasharray: '80px, 200px',
56
60
  strokeDashoffset: 0,
57
- animation: `${circularDashKeyframe} 1.4s ease-in-out infinite`,
61
+ ...(variant === 'indeterminate' && {
62
+ animation: `${circularDashKeyframe} 1.4s ease-in-out infinite`,
63
+ }),
58
64
  });
59
65
  /**
60
66
  *
61
67
  */
62
68
  export const CircularProgress = React.forwardRef((props, ref) => {
63
- const { color, className, size, ...other } = props;
69
+ const { color, className, size, variant = 'indeterminate', value = 0, ...other } = props;
70
+ const circleStyle = {};
71
+ if (variant === 'determinate') {
72
+ const circumference = 2 * Math.PI * ((SIZE - THICKNESS) / 2);
73
+ circleStyle.strokeDasharray = circumference.toFixed(3);
74
+ circleStyle.strokeDashoffset = `${(((100 - value) / 100) * circumference).toFixed(3)}px`;
75
+ }
64
76
  return (React.createElement("div", { ...other, ref: ref, className: cx({
65
- [stylesBase(color)]: true,
77
+ [stylesBase(color, variant)]: true,
66
78
  [stylesBaseSmall()]: size === 'small',
67
79
  [stylesBaseLarge()]: size === 'large',
68
80
  [className]: !!className,
69
81
  }), role: "progressbar" },
70
82
  React.createElement("svg", { viewBox: `${SIZE / 2} ${SIZE / 2} ${SIZE} ${SIZE}`, className: stylesProgressSvg() },
71
- React.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle() }))));
83
+ React.createElement("circle", { cx: SIZE, cy: SIZE, r: (SIZE - THICKNESS) / 2, fill: "none", strokeWidth: THICKNESS, className: stylesProgressCircle(variant), style: circleStyle }))));
72
84
  });
73
85
  CircularProgress.displayName = 'CircularProgress';
74
86
  CircularProgress.defaultProps = {
75
87
  color: 'primary',
76
88
  size: 'large',
89
+ variant: 'indeterminate',
90
+ value: 0,
77
91
  };
78
92
  //# sourceMappingURL=circular_progress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAuB/C;;GAEG;AACH,MAAM,IAAI,GAAG,EAAE,CAAC;AAChB,MAAM,SAAS,GAAG,CAAC,CAAC;AAEpB,MAAM,sBAAsB,GAAG,SAAS,CAAA;;;;;;;CAOvC,CAAC;AAEF,MAAM,oBAAoB,GAAG,SAAS,CAAA;;;;;;;;;;;;;CAarC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAE,EAAE,CAAC,GAAG,CAAC;IACpD,KAAK,EAAE,kBAAkB;IACzB,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,UAAU;IACpB,OAAO,EAAE,cAAc;IACvB,KAAK,EAAE,kBAAkB,KAAK,GAAG;IACjC,SAAS,EAAE,GAAG,sBAAsB,uBAAuB;CAC5D,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAChC,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,uBAAuB;IAC/B,KAAK,EAAE,uBAAuB;CAC/B,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAClC,KAAK,EAAE,sBAAsB;IAC7B,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IACrC,KAAK,EAAE,yBAAyB;IAChC,MAAM,EAAE,cAAc;IACtB,eAAe,EAAE,aAAa;IAC9B,gBAAgB,EAAE,CAAC;IACnB,SAAS,EAAE,GAAG,oBAAoB,4BAA4B;CAC/D,CAAC,CAAC;AACH;;GAEG;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAC9C,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACb,MAAM,EACJ,KAAK,EACL,SAAS,EACT,IAAI,EACJ,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,gCACM,KAAK,EACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI;YACzB,CAAC,eAAe,EAAE,CAAC,EAAE,IAAI,KAAK,OAAO;YACrC,CAAC,eAAe,EAAE,CAAC,EAAE,IAAI,KAAK,OAAO;YACrC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,EACF,IAAI,EAAC,aAAa;QAElB,6BACE,OAAO,EAAE,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,EAAE,EAClD,SAAS,EAAE,iBAAiB,EAAE;YAE9B,gCACE,EAAE,EAAE,IAAI,EACR,EAAE,EAAE,IAAI,EACR,CAAC,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,EACzB,IAAI,EAAC,MAAM,EACX,WAAW,EAAE,SAAS,EACtB,SAAS,EAAE,oBAAoB,EAAE,GACjC,CACE,CACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC;AAElD,gBAAgB,CAAC,YAAY,GAAG;IAC9B,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,OAAO;CACd,CAAC"}
1
+ {"version":3,"file":"circular_progress.js","sourceRoot":"","sources":["../../../src/CircularProgress/circular_progress.tsx"],"names":[],"mappings":"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"}
@@ -12,6 +12,16 @@ declare type BaseProps = {
12
12
  * The size of the progress.
13
13
  */
14
14
  size?: ('small' | 'large');
15
+ /**
16
+ * The variant to use.
17
+ * Use indeterminate when there is no progress value.
18
+ */
19
+ variant?: 'determinate' | 'indeterminate';
20
+ /**
21
+ * The value of the progress indicator for the determinate variant.
22
+ * Value between 0 and 100.
23
+ */
24
+ value?: number;
15
25
  };
16
26
  export declare type CircularProgressProps = BaseProps & Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>;
17
27
  /**
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@peculiar/react-components",
3
3
  "private": false,
4
- "version": "0.1.9",
4
+ "version": "0.1.10",
5
5
  "author": "PeculiarVentures Team",
6
6
  "description": "A simple and customizable component library to build faster, beautiful, and more accessible React applications.",
7
7
  "keywords": [
@@ -103,5 +103,5 @@
103
103
  "node": ">=12.x"
104
104
  },
105
105
  "license": "MIT",
106
- "gitHead": "92c8e5ca3d78107b0e252bb3adcb670f03309c29"
106
+ "gitHead": "79367fd4380886c84b1b379261094d2d0eafdfa4"
107
107
  }