@servicetitan/marketing-ui 1.14.0 → 1.17.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 (163) hide show
  1. package/CHANGELOG.md +340 -0
  2. package/dist/components/ads/ads-stat.js +13 -18
  3. package/dist/components/ads/ads-stat.js.map +1 -1
  4. package/dist/components/charts/funnel-chart/components/funnel-chart.js +15 -41
  5. package/dist/components/charts/funnel-chart/components/funnel-chart.js.map +1 -1
  6. package/dist/components/charts/funnel-chart/components/funnel-svg.js +9 -16
  7. package/dist/components/charts/funnel-chart/components/funnel-svg.js.map +1 -1
  8. package/dist/components/charts/funnel-chart/funnel-chart.stories.js +11 -14
  9. package/dist/components/charts/funnel-chart/funnel-chart.stories.js.map +1 -1
  10. package/dist/components/charts/funnel-chart/index.js +2 -16
  11. package/dist/components/charts/funnel-chart/index.js.map +1 -1
  12. package/dist/components/charts/funnel-chart/utils/const.js +2 -5
  13. package/dist/components/charts/funnel-chart/utils/const.js.map +1 -1
  14. package/dist/components/charts/funnel-chart/utils/interface.js +1 -2
  15. package/dist/components/charts/line-chart/components/body.js +26 -51
  16. package/dist/components/charts/line-chart/components/body.js.map +1 -1
  17. package/dist/components/charts/line-chart/components/container.js +12 -15
  18. package/dist/components/charts/line-chart/components/container.js.map +1 -1
  19. package/dist/components/charts/line-chart/components/hover-popover.js +20 -45
  20. package/dist/components/charts/line-chart/components/hover-popover.js.map +1 -1
  21. package/dist/components/charts/line-chart/components/sidebar.js +9 -35
  22. package/dist/components/charts/line-chart/components/sidebar.js.map +1 -1
  23. package/dist/components/charts/line-chart/components/stuff.js +13 -41
  24. package/dist/components/charts/line-chart/components/stuff.js.map +1 -1
  25. package/dist/components/charts/line-chart/components/svg-bars.js +14 -17
  26. package/dist/components/charts/line-chart/components/svg-bars.js.map +1 -1
  27. package/dist/components/charts/line-chart/components/svg-body.js +15 -41
  28. package/dist/components/charts/line-chart/components/svg-body.js.map +1 -1
  29. package/dist/components/charts/line-chart/components/svg-lines.js +11 -33
  30. package/dist/components/charts/line-chart/components/svg-lines.js.map +1 -1
  31. package/dist/components/charts/line-chart/index.js +2 -14
  32. package/dist/components/charts/line-chart/index.js.map +1 -1
  33. package/dist/components/charts/line-chart/line-chart.stories.js +19 -27
  34. package/dist/components/charts/line-chart/line-chart.stories.js.map +1 -1
  35. package/dist/components/charts/line-chart/stores/line-chart.store.js +20 -23
  36. package/dist/components/charts/line-chart/stores/line-chart.store.js.map +1 -1
  37. package/dist/components/charts/line-chart/stores/svg.store.js +10 -13
  38. package/dist/components/charts/line-chart/stores/svg.store.js.map +1 -1
  39. package/dist/components/charts/line-chart/utils/const.js +2 -6
  40. package/dist/components/charts/line-chart/utils/const.js.map +1 -1
  41. package/dist/components/charts/line-chart/utils/formatters.js +7 -11
  42. package/dist/components/charts/line-chart/utils/formatters.js.map +1 -1
  43. package/dist/components/charts/line-chart/utils/interfaces.js +1 -2
  44. package/dist/components/charts/line-chart/utils/internal-interfaces.js +1 -2
  45. package/dist/components/charts/line-chart/utils/key.js +1 -5
  46. package/dist/components/charts/line-chart/utils/key.js.map +1 -1
  47. package/dist/components/charts/line-chart/utils/labels.js +19 -26
  48. package/dist/components/charts/line-chart/utils/labels.js.map +1 -1
  49. package/dist/components/charts/pie-chart/components/pie-chart.js +12 -38
  50. package/dist/components/charts/pie-chart/components/pie-chart.js.map +1 -1
  51. package/dist/components/charts/pie-chart/components/pie.js +20 -27
  52. package/dist/components/charts/pie-chart/components/pie.js.map +1 -1
  53. package/dist/components/charts/pie-chart/index.js +1 -5
  54. package/dist/components/charts/pie-chart/index.js.map +1 -1
  55. package/dist/components/charts/pie-chart/pie-chart.stories.js +11 -18
  56. package/dist/components/charts/pie-chart/pie-chart.stories.js.map +1 -1
  57. package/dist/components/charts/pie-chart/utils/const.js +4 -8
  58. package/dist/components/charts/pie-chart/utils/const.js.map +1 -1
  59. package/dist/components/charts/pie-chart/utils/interface.js +1 -2
  60. package/dist/components/image-cropper/image-cropper.js +17 -23
  61. package/dist/components/image-cropper/image-cropper.js.map +1 -1
  62. package/dist/components/image-cropper/image-cropper.stories.js +10 -14
  63. package/dist/components/image-cropper/image-cropper.stories.js.map +1 -1
  64. package/dist/components/stat/stat-card.js +15 -42
  65. package/dist/components/stat/stat-card.js.map +1 -1
  66. package/dist/components/stat/stat-cards.stories.js +10 -13
  67. package/dist/components/stat/stat-cards.stories.js.map +1 -1
  68. package/dist/components/stat/stat-extended-card.js +9 -35
  69. package/dist/components/stat/stat-extended-card.js.map +1 -1
  70. package/dist/components/stat/stat-extended-card.stories.js +8 -11
  71. package/dist/components/stat/stat-extended-card.stories.js.map +1 -1
  72. package/dist/components/ui/action-button/action-button.d.ts +14 -0
  73. package/dist/components/ui/action-button/action-button.d.ts.map +1 -0
  74. package/dist/components/ui/action-button/action-button.js +32 -0
  75. package/dist/components/ui/action-button/action-button.js.map +1 -0
  76. package/dist/components/ui/action-button/action-button.module.less +51 -0
  77. package/dist/components/ui/action-button/action-button.stories.d.ts +10 -0
  78. package/dist/components/ui/action-button/action-button.stories.d.ts.map +1 -0
  79. package/dist/components/ui/action-button/action-button.stories.js +11 -0
  80. package/dist/components/ui/action-button/action-button.stories.js.map +1 -0
  81. package/dist/components/ui/action-button/index.d.ts +2 -0
  82. package/dist/components/ui/action-button/index.d.ts.map +1 -0
  83. package/dist/components/ui/action-button/index.js +2 -0
  84. package/dist/components/ui/action-button/index.js.map +1 -0
  85. package/dist/components/ui/centered-spinner.js +5 -12
  86. package/dist/components/ui/centered-spinner.js.map +1 -1
  87. package/dist/components/ui/centered-spinner.stories.js +8 -11
  88. package/dist/components/ui/centered-spinner.stories.js.map +1 -1
  89. package/dist/components/ui/date-range-picker/date-range-picker.js +11 -36
  90. package/dist/components/ui/date-range-picker/date-range-picker.js.map +1 -1
  91. package/dist/components/ui/date-range-picker/date-range-picker.stories.js +9 -12
  92. package/dist/components/ui/date-range-picker/date-range-picker.stories.js.map +1 -1
  93. package/dist/components/ui/disabled-button.js +4 -8
  94. package/dist/components/ui/disabled-button.js.map +1 -1
  95. package/dist/components/ui/line-text/index.js +1 -13
  96. package/dist/components/ui/line-text/index.js.map +1 -1
  97. package/dist/components/ui/line-text/line-text-body.stories.js +7 -10
  98. package/dist/components/ui/line-text/line-text-body.stories.js.map +1 -1
  99. package/dist/components/ui/line-text/line-text-head.stories.js +7 -10
  100. package/dist/components/ui/line-text/line-text-head.stories.js.map +1 -1
  101. package/dist/components/ui/line-text/line-text.js +15 -42
  102. package/dist/components/ui/line-text/line-text.js.map +1 -1
  103. package/dist/components/ui/title-popover/index.d.ts +2 -0
  104. package/dist/components/ui/title-popover/index.d.ts.map +1 -0
  105. package/dist/components/ui/title-popover/index.js +2 -0
  106. package/dist/components/ui/title-popover/index.js.map +1 -0
  107. package/dist/components/ui/title-popover/title-popover.d.ts +17 -0
  108. package/dist/components/ui/title-popover/title-popover.d.ts.map +1 -0
  109. package/dist/components/ui/title-popover/title-popover.js +96 -0
  110. package/dist/components/ui/title-popover/title-popover.js.map +1 -0
  111. package/dist/components/ui/title-popover/title-popover.module.less +10 -0
  112. package/dist/components/ui/title-popover/title-popover.stories.d.ts +11 -0
  113. package/dist/components/ui/title-popover/title-popover.stories.d.ts.map +1 -0
  114. package/dist/components/ui/title-popover/title-popover.stories.js +17 -0
  115. package/dist/components/ui/title-popover/title-popover.stories.js.map +1 -0
  116. package/dist/index.d.ts +3 -0
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/index.js +15 -24
  119. package/dist/index.js.map +1 -1
  120. package/dist/utils/ads-texts.d.ts +1 -1
  121. package/dist/utils/ads-texts.d.ts.map +1 -1
  122. package/dist/utils/ads-texts.js +3 -5
  123. package/dist/utils/ads-texts.js.map +1 -1
  124. package/dist/utils/date/__mocks__/date-mock.js +1 -5
  125. package/dist/utils/date/__mocks__/date-mock.js.map +1 -1
  126. package/dist/utils/date/date-range-picker-options.js +7 -12
  127. package/dist/utils/date/date-range-picker-options.js.map +1 -1
  128. package/dist/utils/date/date-range-picker-state.js +6 -10
  129. package/dist/utils/date/date-range-picker-state.js.map +1 -1
  130. package/dist/utils/date/date-tenant.js +1 -5
  131. package/dist/utils/date/date-tenant.js.map +1 -1
  132. package/dist/utils/date/date.js +3 -9
  133. package/dist/utils/date/date.js.map +1 -1
  134. package/dist/utils/date/index.js +4 -16
  135. package/dist/utils/date/index.js.map +1 -1
  136. package/dist/utils/format-big-numbers.js +1 -5
  137. package/dist/utils/format-big-numbers.js.map +1 -1
  138. package/dist/utils/formatters.js +13 -41
  139. package/dist/utils/formatters.js.map +1 -1
  140. package/dist/utils/helpers.js +2 -7
  141. package/dist/utils/helpers.js.map +1 -1
  142. package/dist/utils/string-case.js +2 -7
  143. package/dist/utils/string-case.js.map +1 -1
  144. package/dist/utils/use-client-rect.js +7 -11
  145. package/dist/utils/use-client-rect.js.map +1 -1
  146. package/dist/utils/use-target-range-store.d.ts +7 -0
  147. package/dist/utils/use-target-range-store.d.ts.map +1 -0
  148. package/dist/utils/use-target-range-store.js +9 -0
  149. package/dist/utils/use-target-range-store.js.map +1 -0
  150. package/package.json +2 -2
  151. package/src/components/ui/action-button/action-button.module.less +51 -0
  152. package/src/components/ui/action-button/action-button.module.less.d.ts +9 -0
  153. package/src/components/ui/action-button/action-button.stories.tsx +19 -0
  154. package/src/components/ui/action-button/action-button.tsx +82 -0
  155. package/src/components/ui/action-button/index.tsx +1 -0
  156. package/src/components/ui/title-popover/index.tsx +1 -0
  157. package/src/components/ui/title-popover/title-popover.module.less +10 -0
  158. package/src/components/ui/title-popover/title-popover.module.less.d.ts +3 -0
  159. package/src/components/ui/title-popover/title-popover.stories.tsx +28 -0
  160. package/src/components/ui/title-popover/title-popover.tsx +86 -0
  161. package/src/index.ts +3 -0
  162. package/src/utils/ads-texts.tsx +4 -1
  163. package/src/utils/use-target-range-store.ts +17 -0
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -8,20 +7,18 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
8
  });
10
9
  };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.basic = void 0;
13
- const jsx_runtime_1 = require("react/jsx-runtime");
14
- const react_1 = require("react");
15
- const image_cropper_1 = require("./image-cropper");
16
- exports.default = {
10
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
+ import { useRef, useState, Fragment } from 'react';
12
+ import { ImageCropper } from './image-cropper';
13
+ export default {
17
14
  title: 'Marketing UI/ImageCropper/ImageCropper',
18
- component: image_cropper_1.ImageCropper,
15
+ component: ImageCropper,
19
16
  parameters: {},
20
17
  };
21
18
  const BasicExample = () => {
22
- const [imageToEdit, setImageToEdit] = (0, react_1.useState)();
23
- const [croppedImage, setCroppedImage] = (0, react_1.useState)();
24
- const imageCropper = (0, react_1.useRef)(null);
19
+ const [imageToEdit, setImageToEdit] = useState();
20
+ const [croppedImage, setCroppedImage] = useState();
21
+ const imageCropper = useRef(null);
25
22
  const handleFileChange = (e) => {
26
23
  var _a;
27
24
  const file = (_a = e.target.files) === null || _a === void 0 ? void 0 : _a[0];
@@ -45,8 +42,7 @@ const BasicExample = () => {
45
42
  setCroppedImage(reader.result);
46
43
  };
47
44
  });
48
- return ((0, jsx_runtime_1.jsxs)(react_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("input", { type: "file", accept: "image/png, image/jpeg", onChange: handleFileChange }, void 0), imageToEdit && ((0, jsx_runtime_1.jsxs)("div", Object.assign({ style: { marginTop: 30 } }, { children: [(0, jsx_runtime_1.jsx)("button", Object.assign({ onClick: handleSave }, { children: "Save cropped image" }), void 0), (0, jsx_runtime_1.jsx)("div", Object.assign({ style: { marginTop: 30 } }, { children: (0, jsx_runtime_1.jsx)(image_cropper_1.ImageCropper, { file: imageToEdit, ref: imageCropper, crop: { width: 300, height: 300 } }, void 0) }), void 0)] }), void 0)), croppedImage && ((0, jsx_runtime_1.jsxs)("div", Object.assign({ style: { marginTop: 30 } }, { children: [(0, jsx_runtime_1.jsx)("a", Object.assign({ href: croppedImage, download: imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.name }, { children: "Download" }), void 0), (0, jsx_runtime_1.jsx)("div", Object.assign({ style: { marginTop: 30 } }, { children: (0, jsx_runtime_1.jsx)("img", { src: croppedImage }, void 0) }), void 0)] }), void 0))] }, void 0));
45
+ return (_jsxs(Fragment, { children: [_jsx("input", { type: "file", accept: "image/png, image/jpeg", onChange: handleFileChange }), imageToEdit && (_jsxs("div", Object.assign({ style: { marginTop: 30 } }, { children: [_jsx("button", Object.assign({ onClick: handleSave }, { children: "Save cropped image" })), _jsx("div", Object.assign({ style: { marginTop: 30 } }, { children: _jsx(ImageCropper, { file: imageToEdit, ref: imageCropper, crop: { width: 300, height: 300 } }) }))] }))), croppedImage && (_jsxs("div", Object.assign({ style: { marginTop: 30 } }, { children: [_jsx("a", Object.assign({ href: croppedImage, download: imageToEdit === null || imageToEdit === void 0 ? void 0 : imageToEdit.name }, { children: "Download" })), _jsx("div", Object.assign({ style: { marginTop: 30 } }, { children: _jsx("img", { src: croppedImage }) }))] })))] }));
49
46
  };
50
- const basic = () => (0, jsx_runtime_1.jsx)(BasicExample, {}, void 0);
51
- exports.basic = basic;
47
+ export const basic = () => _jsx(BasicExample, {});
52
48
  //# sourceMappingURL=image-cropper.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"image-cropper.stories.js","sourceRoot":"","sources":["../../../src/components/image-cropper/image-cropper.stories.tsx"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,iCAAoE;AACpE,mDAA+C;AAE/C,kBAAe;IACX,KAAK,EAAE,wCAAwC;IAC/C,SAAS,EAAE,4BAAY;IACvB,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,YAAY,GAAO,GAAG,EAAE;IAC1B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,IAAA,gBAAQ,GAAQ,CAAC;IACvD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,IAAA,gBAAQ,GAAU,CAAC;IAE3D,MAAM,YAAY,GAAG,IAAA,cAAM,EAAe,IAAI,CAAC,CAAC;IAEhD,MAAM,gBAAgB,GAAG,CAAC,CAAgC,EAAE,EAAE;;QAC1D,MAAM,IAAI,GAAG,MAAA,CAAC,CAAC,MAAM,CAAC,KAAK,0CAAG,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,EAAE;YACP,OAAO;SACV;QAED,cAAc,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAS,EAAE;;QAC1B,IAAI,CAAC,WAAW,EAAE;YACd,OAAO;SACV;QACD,MAAM,IAAI,GAAG,MAAM,CAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA,CAAC;QAC3F,IAAI,CAAC,IAAI,EAAE;YACP,OAAO;SACV;QACD,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,eAAe,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC;IACN,CAAC,CAAA,CAAC;IAEF,OAAO,CACH,wBAAC,gBAAQ,eACL,kCAAO,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,uBAAuB,EAAC,QAAQ,EAAE,gBAAgB,WAAI,EAC/E,WAAW,IAAI,CACZ,+CAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,iBACzB,iDAAQ,OAAO,EAAE,UAAU,gDAA6B,EACxD,8CAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,gBACzB,uBAAC,4BAAY,IACT,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,WACnC,YACA,aACJ,CACT,EACA,YAAY,IAAI,CACb,+CAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,iBACzB,4CAAG,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,sCAE9C,EACJ,8CAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,gBACzB,gCAAK,GAAG,EAAE,YAAY,WAAI,YACxB,aACJ,CACT,YACM,CACd,CAAC;AACN,CAAC,CAAC;AAEK,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,uBAAC,YAAY,aAAG,CAAC;AAA/B,QAAA,KAAK,SAA0B"}
1
+ {"version":3,"file":"image-cropper.stories.js","sourceRoot":"","sources":["../../../src/components/image-cropper/image-cropper.stories.tsx"],"names":[],"mappings":";;;;;;;;;;AAAA,OAAO,EAAmB,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,eAAe;IACX,KAAK,EAAE,wCAAwC;IAC/C,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,YAAY,GAAO,GAAG,EAAE;IAC1B,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,EAAQ,CAAC;IACvD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,EAAU,CAAC;IAE3D,MAAM,YAAY,GAAG,MAAM,CAAe,IAAI,CAAC,CAAC;IAEhD,MAAM,gBAAgB,GAAG,CAAC,CAAgC,EAAE,EAAE;;QAC1D,MAAM,IAAI,GAAG,MAAA,CAAC,CAAC,MAAM,CAAC,KAAK,0CAAG,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,EAAE;YACP,OAAO;SACV;QAED,cAAc,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAS,EAAE;;QAC1B,IAAI,CAAC,WAAW,EAAE;YACd,OAAO;SACV;QACD,MAAM,IAAI,GAAG,MAAM,CAAA,MAAA,YAAY,CAAC,OAAO,0CAAE,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA,CAAC;QAC3F,IAAI,CAAC,IAAI,EAAE;YACP,OAAO;SACV;QACD,MAAM,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAChC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC3B,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,eAAe,CAAC,MAAM,CAAC,MAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC;IACN,CAAC,CAAA,CAAC;IAEF,OAAO,CACH,MAAC,QAAQ,eACL,gBAAO,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC,uBAAuB,EAAC,QAAQ,EAAE,gBAAgB,GAAI,EAC/E,WAAW,IAAI,CACZ,6BAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,iBACzB,+BAAQ,OAAO,EAAE,UAAU,wCAA6B,EACxD,4BAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,gBACzB,KAAC,YAAY,IACT,IAAI,EAAE,WAAW,EACjB,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GACnC,IACA,KACJ,CACT,EACA,YAAY,IAAI,CACb,6BAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,iBACzB,0BAAG,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,8BAE9C,EACJ,4BAAK,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,gBACzB,cAAK,GAAG,EAAE,YAAY,GAAI,IACxB,KACJ,CACT,IACM,CACd,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,KAAC,YAAY,KAAG,CAAC"}
@@ -1,33 +1,8 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.StatCard = exports.StatDiff = void 0;
26
- const jsx_runtime_1 = require("react/jsx-runtime");
27
- const classnames_1 = __importDefault(require("classnames"));
28
- const design_system_1 = require("@servicetitan/design-system");
29
- const Styles = __importStar(require("./stat-card.module.less"));
30
- const formatters_1 = require("../../utils/formatters");
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { BodyText, Eyebrow, Stack, Tooltip, } from '@servicetitan/design-system';
4
+ import * as Styles from './stat-card.module.less';
5
+ import { formatValue } from '../../utils/formatters';
31
6
  const calculateDiff = (value, prev, percents) => {
32
7
  const diff = (value - prev) * (percents ? 100 : 1);
33
8
  const absDiff = Math.abs(diff);
@@ -35,15 +10,15 @@ const calculateDiff = (value, prev, percents) => {
35
10
  return [absDiff, diffPercent, diff >= 0];
36
11
  };
37
12
  const formatDifference = (value, isPlus, format) => {
38
- return (isPlus ? '+' : '-') + (0, formatters_1.formatValue)(value, format);
13
+ return (isPlus ? '+' : '-') + formatValue(value, format);
39
14
  };
40
15
  const formatDifferencePercentage = (value, isPlus) => {
41
16
  if (!value) {
42
17
  return '';
43
18
  }
44
- return (isPlus ? '+' : '-') + (0, formatters_1.formatValue)(value, 'percent-100');
19
+ return (isPlus ? '+' : '-') + formatValue(value, 'percent-100');
45
20
  };
46
- const StatDiff = ({ value, prev, size, format, inverted, neutral, className, diffPercentOnly = false, }) => {
21
+ export const StatDiff = ({ value, prev, size, format, inverted, neutral, className, diffPercentOnly = false, }) => {
47
22
  const percents = format === 'percent';
48
23
  const [absDiff, diffPercent, isIncrease] = calculateDiff(value !== null && value !== void 0 ? value : 0, prev !== null && prev !== void 0 ? prev : 0, percents);
49
24
  const diff = absDiff === 0 ? '' : isIncrease ? '▲ ' : '▼ ';
@@ -63,21 +38,19 @@ const StatDiff = ({ value, prev, size, format, inverted, neutral, className, dif
63
38
  }
64
39
  }
65
40
  }
66
- return ((0, jsx_runtime_1.jsxs)(design_system_1.BodyText, Object.assign({ className: (0, classnames_1.default)(Styles.statDiff, {
41
+ return (_jsxs(BodyText, Object.assign({ className: classNames(Styles.statDiff, {
67
42
  'c-red-500': !neutral && (inverted ? isIncrease : !isIncrease),
68
43
  'c-green-500': !neutral && (inverted ? !isIncrease : isIncrease),
69
44
  'c-neutral-200': !!neutral,
70
- }, className), size: size !== null && size !== void 0 ? size : 'small' }, { children: [(0, jsx_runtime_1.jsx)("span", { children: diff }, void 0), value === undefined ? '\u00A0' : text] }), void 0));
45
+ }, className), size: size !== null && size !== void 0 ? size : 'small' }, { children: [_jsx("span", { children: diff }), value === undefined ? '\u00A0' : text] })));
71
46
  };
72
- exports.StatDiff = StatDiff;
73
- const StatCard = ({ title, description, value, percent, money, rate, prev, clean, inverted, neutral, fill, valueOnly, className, diffPercentOnly = false, }) => {
47
+ export const StatCard = ({ title, description, value, percent, money, rate, prev, clean, inverted, neutral, fill, valueOnly, className, diffPercentOnly = false, }) => {
74
48
  const format = money ? 'money' : percent ? 'percent' : rate ? 'rate' : 'number';
75
- const val = value === undefined ? '\u00A0' : (0, formatters_1.formatValue)(value, format);
76
- const eyebrow = (0, jsx_runtime_1.jsx)(design_system_1.Eyebrow, Object.assign({ className: (0, classnames_1.default)(Styles.title, 'ta-center') }, { children: title }), void 0);
77
- return ((0, jsx_runtime_1.jsxs)(design_system_1.Stack, Object.assign({ direction: "column", alignItems: "center", className: (0, classnames_1.default)('p-y-3', {
49
+ const val = value === undefined ? '\u00A0' : formatValue(value, format);
50
+ const eyebrow = _jsx(Eyebrow, Object.assign({ className: classNames(Styles.title, 'ta-center') }, { children: title }));
51
+ return (_jsxs(Stack, Object.assign({ direction: "column", alignItems: "center", className: classNames('p-y-3', {
78
52
  'bg-white border-radius-2 border': !clean,
79
53
  'flex-grow-1 flex-basis-0': fill,
80
- }, className) }, { children: [description ? (0, jsx_runtime_1.jsx)(design_system_1.Tooltip, Object.assign({ text: description }, { children: eyebrow }), void 0) : eyebrow, (0, jsx_runtime_1.jsx)(design_system_1.BodyText, Object.assign({ className: "fs-6-i ff-display" }, { children: val }), void 0), !valueOnly && ((0, jsx_runtime_1.jsx)(exports.StatDiff, { value: value, prev: prev, format: format, inverted: inverted, neutral: neutral, diffPercentOnly: diffPercentOnly }, void 0))] }), void 0));
54
+ }, className) }, { children: [description ? _jsx(Tooltip, Object.assign({ text: description }, { children: eyebrow })) : eyebrow, _jsx(BodyText, Object.assign({ className: "fs-6-i ff-display" }, { children: val })), !valueOnly && (_jsx(StatDiff, { value: value, prev: prev, format: format, inverted: inverted, neutral: neutral, diffPercentOnly: diffPercentOnly }))] })));
81
55
  };
82
- exports.StatCard = StatCard;
83
56
  //# sourceMappingURL=stat-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stat-card.js","sourceRoot":"","sources":["../../../src/components/stat/stat-card.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stat-card.js","sourceRoot":"","sources":["../../../src/components/stat/stat-card.tsx"],"names":[],"mappings":"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"}
@@ -1,17 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.statCardRate = exports.statCardPercentInverted = exports.statCardMoney = exports.statDiffNumberPercentOnly = exports.statCardNumber = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const stat_card_1 = require("./stat-card");
6
- exports.default = {
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { StatCard } from './stat-card';
3
+ export default {
7
4
  title: 'Marketing UI/stat/StatCard',
8
- component: stat_card_1.StatCard,
5
+ component: StatCard,
9
6
  parameters: {},
10
7
  };
11
- const w = (cb) => () => (0, jsx_runtime_1.jsx)("div", Object.assign({ style: { width: '400px' } }, { children: cb() }), void 0);
12
- exports.statCardNumber = w(() => (0, jsx_runtime_1.jsx)(stat_card_1.StatCard, { title: "number", value: 133, prev: 1000 }, void 0));
13
- exports.statDiffNumberPercentOnly = w(() => ((0, jsx_runtime_1.jsx)(stat_card_1.StatCard, { title: "number", value: 133, prev: 1000, diffPercentOnly: true }, void 0)));
14
- exports.statCardMoney = w(() => (0, jsx_runtime_1.jsx)(stat_card_1.StatCard, { title: "money", value: 10000, prev: 11000, money: true }, void 0));
15
- exports.statCardPercentInverted = w(() => ((0, jsx_runtime_1.jsx)(stat_card_1.StatCard, { title: "percent", value: 0.27, prev: 0.27333, percent: true, inverted: true }, void 0)));
16
- exports.statCardRate = w(() => (0, jsx_runtime_1.jsx)(stat_card_1.StatCard, { title: "rate", value: 5.5, prev: 4.5, rate: true }, void 0));
8
+ const w = (cb) => () => _jsx("div", Object.assign({ style: { width: '400px' } }, { children: cb() }));
9
+ export const statCardNumber = w(() => _jsx(StatCard, { title: "number", value: 133, prev: 1000 }));
10
+ export const statDiffNumberPercentOnly = w(() => (_jsx(StatCard, { title: "number", value: 133, prev: 1000, diffPercentOnly: true })));
11
+ export const statCardMoney = w(() => _jsx(StatCard, { title: "money", value: 10000, prev: 11000, money: true }));
12
+ export const statCardPercentInverted = w(() => (_jsx(StatCard, { title: "percent", value: 0.27, prev: 0.27333, percent: true, inverted: true })));
13
+ export const statCardRate = w(() => _jsx(StatCard, { title: "rate", value: 5.5, prev: 4.5, rate: true }));
17
14
  //# sourceMappingURL=stat-cards.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stat-cards.stories.js","sourceRoot":"","sources":["../../../src/components/stat/stat-cards.stories.tsx"],"names":[],"mappings":";;;;AACA,2CAAuC;AAEvC,kBAAe;IACX,KAAK,EAAE,4BAA4B;IACnC,SAAS,EAAE,oBAAQ;IACnB,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,8CAAK,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAG,EAAE,EAAE,YAAO,CAAC;AAE5E,QAAA,cAAc,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,uBAAC,oBAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,WAAI,CAAC,CAAC;AAC9E,QAAA,yBAAyB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC7C,uBAAC,oBAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,iBAAG,CACtE,CAAC,CAAC;AACU,QAAA,aAAa,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,uBAAC,oBAAQ,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,iBAAG,CAAC,CAAC;AACrF,QAAA,uBAAuB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC3C,uBAAC,oBAAQ,IAAC,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,QAAC,QAAQ,iBAAG,CAC5E,CAAC,CAAC;AACU,QAAA,YAAY,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,uBAAC,oBAAQ,IAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,iBAAG,CAAC,CAAC"}
1
+ {"version":3,"file":"stat-cards.stories.js","sourceRoot":"","sources":["../../../src/components/stat/stat-cards.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,eAAe;IACX,KAAK,EAAE,4BAA4B;IACnC,SAAS,EAAE,QAAQ;IACnB,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,4BAAK,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAG,EAAE,EAAE,IAAO,CAAC;AAEzF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,KAAC,QAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,GAAI,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC7C,KAAC,QAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,SAAG,CACtE,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,KAAC,QAAQ,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,SAAG,CAAC,CAAC;AAClG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC3C,KAAC,QAAQ,IAAC,KAAK,EAAC,SAAS,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,QAAC,QAAQ,SAAG,CAC5E,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,KAAC,QAAQ,IAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,SAAG,CAAC,CAAC"}
@@ -1,39 +1,13 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
- Object.defineProperty(o, "default", { enumerable: true, value: v });
11
- }) : function(o, v) {
12
- o["default"] = v;
13
- });
14
- var __importStar = (this && this.__importStar) || function (mod) {
15
- if (mod && mod.__esModule) return mod;
16
- var result = {};
17
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
- __setModuleDefault(result, mod);
19
- return result;
20
- };
21
- var __importDefault = (this && this.__importDefault) || function (mod) {
22
- return (mod && mod.__esModule) ? mod : { "default": mod };
23
- };
24
- Object.defineProperty(exports, "__esModule", { value: true });
25
- exports.StatExtendedCard = void 0;
26
- const jsx_runtime_1 = require("react/jsx-runtime");
27
- const classnames_1 = __importDefault(require("classnames"));
28
- const design_system_1 = require("@servicetitan/design-system");
29
- const formatters_1 = require("../../utils/formatters");
30
- const stat_card_1 = require("./stat-card");
31
- const Styles = __importStar(require("./stat-card.module.less"));
32
- const StatExtendedCard = ({ title, title2, description, value, goal, prev, percent, money, rate, inverted, neutral, fill, className, }) => {
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { BodyText, Icon, Headline, Eyebrow, Stack, Tooltip } from '@servicetitan/design-system';
4
+ import { formatValue } from '../../utils/formatters';
5
+ import { StatDiff } from './stat-card';
6
+ import * as Styles from './stat-card.module.less';
7
+ export const StatExtendedCard = ({ title, title2, description, value, goal, prev, percent, money, rate, inverted, neutral, fill, className, }) => {
33
8
  const format = money ? 'money' : percent ? 'percent' : rate ? 'rate' : 'number';
34
- return ((0, jsx_runtime_1.jsxs)("div", Object.assign({ className: (0, classnames_1.default)('p-3 bg-white border border-radius-2', {
9
+ return (_jsxs("div", Object.assign({ className: classNames('p-3 bg-white border border-radius-2', {
35
10
  'flex-grow-1 flex-basis-0': fill,
36
- }, className) }, { children: [(0, jsx_runtime_1.jsxs)(design_system_1.Stack, { children: [(0, jsx_runtime_1.jsx)(design_system_1.Headline, Object.assign({ size: "small" }, { children: title }), void 0), !!description && ((0, jsx_runtime_1.jsx)(design_system_1.Tooltip, Object.assign({ text: description }, { children: (0, jsx_runtime_1.jsx)(design_system_1.Icon, { name: "info", size: 18, className: "c-neutral-80 m-l-half" }, void 0) }), void 0))] }, void 0), (0, jsx_runtime_1.jsx)(design_system_1.Eyebrow, Object.assign({ size: "small", className: "m-t-2 c-black" }, { children: title2 }), void 0), (0, jsx_runtime_1.jsx)(design_system_1.Stack, Object.assign({ justifyContent: "space-between", className: "m-t-half" }, { children: (0, jsx_runtime_1.jsxs)(design_system_1.Stack, Object.assign({ alignItems: "flex-end", className: "flex-grow-1 flex-basis-0" }, { children: [(0, jsx_runtime_1.jsx)(design_system_1.Headline, Object.assign({ className: "m-b-0-i m-r-half fw-normal-i", size: "xlarge" }, { children: (0, formatters_1.formatValue)(value, format) }), void 0), goal !== undefined ? ((0, jsx_runtime_1.jsxs)(design_system_1.BodyText, Object.assign({ subdued: true }, { children: ["/ ", (0, formatters_1.formatValue)(goal, format), " (Goal)"] }), void 0)) : prev !== undefined ? ((0, jsx_runtime_1.jsx)(stat_card_1.StatDiff, { value: value, prev: prev, format: format, inverted: inverted, neutral: neutral, className: (0, classnames_1.default)(Styles.statExtendedDiff, 'm-l-1') }, void 0)) : undefined] }), void 0) }), void 0)] }), void 0));
11
+ }, className) }, { children: [_jsxs(Stack, { children: [_jsx(Headline, Object.assign({ size: "small" }, { children: title })), !!description && (_jsx(Tooltip, Object.assign({ text: description }, { children: _jsx(Icon, { name: "info", size: 18, className: "c-neutral-80 m-l-half" }) })))] }), _jsx(Eyebrow, Object.assign({ size: "small", className: "m-t-2 c-black" }, { children: title2 })), _jsx(Stack, Object.assign({ justifyContent: "space-between", className: "m-t-half" }, { children: _jsxs(Stack, Object.assign({ alignItems: "flex-end", className: "flex-grow-1 flex-basis-0" }, { children: [_jsx(Headline, Object.assign({ className: "m-b-0-i m-r-half fw-normal-i", size: "xlarge" }, { children: formatValue(value, format) })), goal !== undefined ? (_jsxs(BodyText, Object.assign({ subdued: true }, { children: ["/ ", formatValue(goal, format), " (Goal)"] }))) : prev !== undefined ? (_jsx(StatDiff, { value: value, prev: prev, format: format, inverted: inverted, neutral: neutral, className: classNames(Styles.statExtendedDiff, 'm-l-1') })) : undefined] })) }))] })));
37
12
  };
38
- exports.StatExtendedCard = StatExtendedCard;
39
13
  //# sourceMappingURL=stat-extended-card.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stat-extended-card.js","sourceRoot":"","sources":["../../../src/components/stat/stat-extended-card.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,4DAAoC;AACpC,+DAAgG;AAChG,uDAAqD;AACrD,2CAAuC;AACvC,gEAAkD;AAiB3C,MAAM,gBAAgB,GAA8B,CAAC,EACxD,KAAK,EACL,MAAM,EACN,WAAW,EACX,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEhF,OAAO,CACH,+CACI,SAAS,EAAE,IAAA,oBAAU,EACjB,qCAAqC,EACrC;YACI,0BAA0B,EAAE,IAAI;SACnC,EACD,SAAS,CACZ,iBAED,wBAAC,qBAAK,eACF,uBAAC,wBAAQ,kBAAC,IAAI,EAAC,OAAO,gBAAE,KAAK,YAAY,EACxC,CAAC,CAAC,WAAW,IAAI,CACd,uBAAC,uBAAO,kBAAC,IAAI,EAAE,WAAW,gBACtB,uBAAC,oBAAI,IAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,WAAG,YAC1D,CACb,YACG,EACR,uBAAC,uBAAO,kBAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,eAAe,gBAC1C,MAAM,YACD,EAEV,uBAAC,qBAAK,kBAAC,cAAc,EAAC,eAAe,EAAC,SAAS,EAAC,UAAU,gBACtD,wBAAC,qBAAK,kBAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,0BAA0B,iBAC7D,uBAAC,wBAAQ,kBAAC,SAAS,EAAC,8BAA8B,EAAC,IAAI,EAAC,QAAQ,gBAC3D,IAAA,wBAAW,EAAC,KAAK,EAAE,MAAM,CAAC,YACpB,EACV,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAClB,wBAAC,wBAAQ,kBAAC,OAAO,6BAAI,IAAA,wBAAW,EAAC,IAAI,EAAE,MAAM,CAAC,wBAAmB,CACpE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACrB,uBAAC,oBAAQ,IACL,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAA,oBAAU,EAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,WACzD,CACL,CAAC,CAAC,CAAC,SAAS,aACT,YACJ,aACN,CACT,CAAC;AACN,CAAC,CAAC;AA5DW,QAAA,gBAAgB,oBA4D3B"}
1
+ {"version":3,"file":"stat-extended-card.js","sourceRoot":"","sources":["../../../src/components/stat/stat-extended-card.tsx"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAChG,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,yBAAyB,CAAC;AAiBlD,MAAM,CAAC,MAAM,gBAAgB,GAA8B,CAAC,EACxD,KAAK,EACL,MAAM,EACN,WAAW,EACX,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,SAAS,GACZ,EAAE,EAAE;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEhF,OAAO,CACH,6BACI,SAAS,EAAE,UAAU,CACjB,qCAAqC,EACrC;YACI,0BAA0B,EAAE,IAAI;SACnC,EACD,SAAS,CACZ,iBAED,MAAC,KAAK,eACF,KAAC,QAAQ,kBAAC,IAAI,EAAC,OAAO,gBAAE,KAAK,IAAY,EACxC,CAAC,CAAC,WAAW,IAAI,CACd,KAAC,OAAO,kBAAC,IAAI,EAAE,WAAW,gBACtB,KAAC,IAAI,IAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAC,uBAAuB,GAAG,IAC1D,CACb,IACG,EACR,KAAC,OAAO,kBAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,eAAe,gBAC1C,MAAM,IACD,EAEV,KAAC,KAAK,kBAAC,cAAc,EAAC,eAAe,EAAC,SAAS,EAAC,UAAU,gBACtD,MAAC,KAAK,kBAAC,UAAU,EAAC,UAAU,EAAC,SAAS,EAAC,0BAA0B,iBAC7D,KAAC,QAAQ,kBAAC,SAAS,EAAC,8BAA8B,EAAC,IAAI,EAAC,QAAQ,gBAC3D,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,IACpB,EACV,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CAClB,MAAC,QAAQ,kBAAC,OAAO,6BAAI,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,gBAAmB,CACpE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACrB,KAAC,QAAQ,IACL,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,GACzD,CACL,CAAC,CAAC,CAAC,SAAS,KACT,IACJ,KACN,CACT,CAAC;AACN,CAAC,CAAC"}
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.statCardPercentWithPrev = exports.statCardMoneyWithGoal = exports.statCardMoneyWithPrev = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const stat_extended_card_1 = require("./stat-extended-card");
6
- exports.default = {
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { StatExtendedCard } from './stat-extended-card';
3
+ export default {
7
4
  title: 'Marketing UI/stat/StatExtendedCard',
8
- component: stat_extended_card_1.StatExtendedCard,
5
+ component: StatExtendedCard,
9
6
  parameters: {},
10
7
  };
11
- const w = (cb) => () => (0, jsx_runtime_1.jsx)("div", Object.assign({ style: { width: '400px' } }, { children: cb() }), void 0);
12
- exports.statCardMoneyWithPrev = w(() => ((0, jsx_runtime_1.jsx)(stat_extended_card_1.StatExtendedCard, { title: "number", title2: "total number", description: "hint for stat", value: 800, prev: 1000, money: true, fill: true }, void 0)));
13
- exports.statCardMoneyWithGoal = w(() => ((0, jsx_runtime_1.jsx)(stat_extended_card_1.StatExtendedCard, { title: "money", title2: "total money", value: 10000, goal: 18000, money: true, fill: true }, void 0)));
14
- exports.statCardPercentWithPrev = w(() => ((0, jsx_runtime_1.jsx)(stat_extended_card_1.StatExtendedCard, { title: "percent", title2: "total percent", value: 0.27, prev: 0.33, percent: true, fill: true }, void 0)));
8
+ const w = (cb) => () => _jsx("div", Object.assign({ style: { width: '400px' } }, { children: cb() }));
9
+ export const statCardMoneyWithPrev = w(() => (_jsx(StatExtendedCard, { title: "number", title2: "total number", description: "hint for stat", value: 800, prev: 1000, money: true, fill: true })));
10
+ export const statCardMoneyWithGoal = w(() => (_jsx(StatExtendedCard, { title: "money", title2: "total money", value: 10000, goal: 18000, money: true, fill: true })));
11
+ export const statCardPercentWithPrev = w(() => (_jsx(StatExtendedCard, { title: "percent", title2: "total percent", value: 0.27, prev: 0.33, percent: true, fill: true })));
15
12
  //# sourceMappingURL=stat-extended-card.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stat-extended-card.stories.js","sourceRoot":"","sources":["../../../src/components/stat/stat-extended-card.stories.tsx"],"names":[],"mappings":";;;;AACA,6DAAwD;AAExD,kBAAe;IACX,KAAK,EAAE,oCAAoC;IAC3C,SAAS,EAAE,qCAAgB;IAC3B,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,8CAAK,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAG,EAAE,EAAE,YAAO,CAAC;AAE5E,QAAA,qBAAqB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CACzC,uBAAC,qCAAgB,IACb,KAAK,EAAC,QAAQ,EACd,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,eAAe,EAC3B,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,IAAI,EACV,KAAK,QACL,IAAI,iBACN,CACL,CAAC,CAAC;AACU,QAAA,qBAAqB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CACzC,uBAAC,qCAAgB,IAAC,KAAK,EAAC,OAAO,EAAC,MAAM,EAAC,aAAa,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,QAAC,IAAI,iBAAG,CAChG,CAAC,CAAC;AACU,QAAA,uBAAuB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC3C,uBAAC,qCAAgB,IACb,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,eAAe,EACtB,KAAK,EAAE,IAAI,EACX,IAAI,EAAE,IAAI,EACV,OAAO,QACP,IAAI,iBACN,CACL,CAAC,CAAC"}
1
+ {"version":3,"file":"stat-extended-card.stories.js","sourceRoot":"","sources":["../../../src/components/stat/stat-extended-card.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,eAAe;IACX,KAAK,EAAE,oCAAoC;IAC3C,SAAS,EAAE,gBAAgB;IAC3B,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,4BAAK,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,gBAAG,EAAE,EAAE,IAAO,CAAC;AAEzF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CACzC,KAAC,gBAAgB,IACb,KAAK,EAAC,QAAQ,EACd,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,eAAe,EAC3B,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,IAAI,EACV,KAAK,QACL,IAAI,SACN,CACL,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CACzC,KAAC,gBAAgB,IAAC,KAAK,EAAC,OAAO,EAAC,MAAM,EAAC,aAAa,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,QAAC,IAAI,SAAG,CAChG,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,CAC3C,KAAC,gBAAgB,IACb,KAAK,EAAC,SAAS,EACf,MAAM,EAAC,eAAe,EACtB,KAAK,EAAE,IAAI,EACX,IAAI,EAAE,IAAI,EACV,OAAO,QACP,IAAI,SACN,CACL,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { ReactNode, FC } from 'react';
2
+ import { IconNameType } from '@servicetitan/design-system';
3
+ export interface ActionButtonProps {
4
+ children: ReactNode;
5
+ iconName?: IconNameType;
6
+ hover?: 'primary' | 'negative' | 'none';
7
+ disabled?: boolean;
8
+ tooltip?: string;
9
+ qaPrefix?: string;
10
+ active?: boolean;
11
+ onClick?(): void;
12
+ }
13
+ export declare const ActionButton: FC<ActionButtonProps>;
14
+ //# sourceMappingURL=action-button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/action-button/action-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,EAAE,EAAU,MAAM,OAAO,CAAC;AAE9C,OAAO,EAGH,YAAY,EAGf,MAAM,6BAA6B,CAAC;AAGrC,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,KAAK,CAAC,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,IAAI,IAAI,CAAC;CACpB;AAED,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CA2D9C,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useRef } from 'react';
3
+ import classnames from 'classnames';
4
+ import { Icon, BodyText, Tooltip, useFocusVisible, } from '@servicetitan/design-system';
5
+ import * as Styles from './action-button.module.less';
6
+ export const ActionButton = ({ onClick, disabled, children, iconName, hover, qaPrefix, active, tooltip, }) => {
7
+ const buttonRef = useRef(null);
8
+ const { isFocusVisible, focusFunction, blurFunction } = useFocusVisible(buttonRef);
9
+ const handleClick = () => {
10
+ if (disabled) {
11
+ return;
12
+ }
13
+ if (onClick) {
14
+ onClick();
15
+ }
16
+ };
17
+ const getButton = () => {
18
+ const classes = classnames(Styles.actionButton, qaPrefix, {
19
+ [Styles.primary]: hover === 'primary' && !disabled,
20
+ [Styles.negative]: hover === 'negative' && !disabled,
21
+ [Styles.active]: active && !disabled,
22
+ [Styles.disabled]: disabled,
23
+ [Styles.focusVisible]: isFocusVisible,
24
+ });
25
+ return (_jsxs("button", Object.assign({ type: "button", ref: buttonRef, className: classes, onClick: handleClick, disabled: disabled, onFocus: focusFunction, onBlur: blurFunction }, { children: [iconName && _jsx(Icon, { name: iconName, size: "20px", className: "m-r-1" }), _jsx(BodyText, Object.assign({ className: classnames(Styles.text, `${qaPrefix}-text`) }, { children: children }))] })));
26
+ };
27
+ if (!tooltip) {
28
+ return getButton();
29
+ }
30
+ return (_jsx(Tooltip, Object.assign({ text: tooltip, direction: "l", el: "div", className: `${qaPrefix}-tooltip` }, { children: getButton() })));
31
+ };
32
+ //# sourceMappingURL=action-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-button.js","sourceRoot":"","sources":["../../../../src/components/ui/action-button/action-button.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAiB,MAAM,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EACH,IAAI,EACJ,QAAQ,EAER,OAAO,EACP,eAAe,GAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAC;AAatD,MAAM,CAAC,MAAM,YAAY,GAA0B,CAAC,EAChD,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,QAAQ,EACR,MAAM,EACN,OAAO,GACV,EAAE,EAAE;IACD,MAAM,SAAS,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;IAClD,MAAM,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IAEnF,MAAM,WAAW,GAAG,GAAG,EAAE;QACrB,IAAI,QAAQ,EAAE;YACV,OAAO;SACV;QAED,IAAI,OAAO,EAAE;YACT,OAAO,EAAE,CAAC;SACb;IACL,CAAC,CAAC;IAEF,MAAM,SAAS,GAAG,GAAG,EAAE;QACnB,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,YAAY,EAAE,QAAQ,EAAE;YACtD,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,SAAS,IAAI,CAAC,QAAQ;YAClD,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,UAAU,IAAI,CAAC,QAAQ;YACpD,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC,QAAQ;YACpC,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ;YAC3B,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,cAAc;SACxC,CAAC,CAAC;QAEH,OAAO,CACH,gCACI,IAAI,EAAC,QAAQ,EACb,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,YAAY,iBAEnB,QAAQ,IAAI,KAAC,IAAI,IAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAC,MAAM,EAAC,SAAS,EAAC,OAAO,GAAG,EACnE,KAAC,QAAQ,kBAAC,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,QAAQ,OAAO,CAAC,gBAC3D,QAAQ,IACF,KACN,CACZ,CAAC;IACN,CAAC,CAAC;IAEF,IAAI,CAAC,OAAO,EAAE;QACV,OAAO,SAAS,EAAE,CAAC;KACtB;IAED,OAAO,CACH,KAAC,OAAO,kBAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,EAAC,SAAS,EAAE,GAAG,QAAQ,UAAU,gBAC1E,SAAS,EAAE,IACN,CACb,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,51 @@
1
+ @import (reference) '@servicetitan/tokens/dist/tokens.less';
2
+
3
+ .action-button {
4
+ color: @color-neutral-80;
5
+ padding: @spacing-half @spacing-2;
6
+ box-sizing: border-box;
7
+ border: none;
8
+ background-color: transparent;
9
+ width: 100%;
10
+ display: flex;
11
+ align-items: center;
12
+
13
+ &.active {
14
+ background-color: @color-neutral-60;
15
+ }
16
+
17
+ &.disabled {
18
+ cursor: default;
19
+ color: @color-blue-grey-400;
20
+
21
+ .text {
22
+ color: @color-blue-grey-400;
23
+ }
24
+ }
25
+
26
+ &.primary,
27
+ &.negative {
28
+ &:focus {
29
+ outline: none;
30
+ }
31
+
32
+ &:hover,
33
+ &.focus-visible:focus {
34
+ color: @color-white;
35
+
36
+ .text {
37
+ color: @color-white;
38
+ }
39
+ }
40
+ }
41
+
42
+ &.primary:hover,
43
+ &.primary.focus-visible:focus {
44
+ background-color: @color-blue-400;
45
+ }
46
+
47
+ &.negative:hover,
48
+ &.negative.focus-visible:focus {
49
+ background-color: @color-red-400;
50
+ }
51
+ }
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ declare const _default: {
3
+ title: string;
4
+ component: import("react").FC<import("./action-button").ActionButtonProps>;
5
+ parameters: {};
6
+ };
7
+ export default _default;
8
+ export declare const actionButtonHoverPrimary: () => JSX.Element;
9
+ export declare const actionButtonHoverNegative: () => JSX.Element;
10
+ //# sourceMappingURL=action-button.stories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-button.stories.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/action-button/action-button.stories.tsx"],"names":[],"mappings":";;;;;;AAGA,wBAIE;AAKF,eAAO,MAAM,wBAAwB,mBAEnC,CAAC;AAEH,eAAO,MAAM,yBAAyB,mBAEpC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ActionButton } from './action-button';
3
+ export default {
4
+ title: 'Marketing UI/ui/ActionButton',
5
+ component: ActionButton,
6
+ parameters: {},
7
+ };
8
+ const w = (style, cb) => () => _jsx("div", Object.assign({ style: style }, { children: cb() }));
9
+ export const actionButtonHoverPrimary = w({}, () => (_jsx(ActionButton, Object.assign({ hover: "primary" }, { children: "Button" }))));
10
+ export const actionButtonHoverNegative = w({}, () => (_jsx(ActionButton, Object.assign({ hover: "negative" }, { children: "Button" }))));
11
+ //# sourceMappingURL=action-button.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-button.stories.js","sourceRoot":"","sources":["../../../../src/components/ui/action-button/action-button.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,eAAe;IACX,KAAK,EAAE,8BAA8B;IACrC,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,KAA0C,EAAE,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CACnF,4BAAK,KAAK,EAAE,KAAK,gBAAG,EAAE,EAAE,IAAO,CAAC;AAEpC,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAChD,KAAC,YAAY,kBAAC,KAAK,EAAC,SAAS,4BAAsB,CACtD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CACjD,KAAC,YAAY,kBAAC,KAAK,EAAC,UAAU,4BAAsB,CACvD,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './action-button';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/action-button/index.tsx"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './action-button';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/ui/action-button/index.tsx"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -1,14 +1,7 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classnames from 'classnames';
3
+ import { BodyText, Stack, Spinner } from '@servicetitan/design-system';
4
+ export const CenteredSpinner = ({ size, className, info }) => {
5
+ return (_jsxs(Stack, Object.assign({ justifyContent: "center", alignItems: "center", direction: "column", className: classnames(className, 'h-100 w-100') }, { children: [_jsx(Spinner, { className: "of-hidden", size: size }), !!info && (_jsx(BodyText, Object.assign({ size: "small", className: "m-t-1", subdued: true }, { children: info })))] })));
4
6
  };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.CenteredSpinner = void 0;
7
- const jsx_runtime_1 = require("react/jsx-runtime");
8
- const classnames_1 = __importDefault(require("classnames"));
9
- const design_system_1 = require("@servicetitan/design-system");
10
- const CenteredSpinner = ({ size, className, info }) => {
11
- return ((0, jsx_runtime_1.jsxs)(design_system_1.Stack, Object.assign({ justifyContent: "center", alignItems: "center", direction: "column", className: (0, classnames_1.default)(className, 'h-100 w-100') }, { children: [(0, jsx_runtime_1.jsx)(design_system_1.Spinner, { className: "of-hidden", size: size }, void 0), !!info && ((0, jsx_runtime_1.jsx)(design_system_1.BodyText, Object.assign({ size: "small", className: "m-t-1", subdued: true }, { children: info }), void 0))] }), void 0));
12
- };
13
- exports.CenteredSpinner = CenteredSpinner;
14
7
  //# sourceMappingURL=centered-spinner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"centered-spinner.js","sourceRoot":"","sources":["../../../src/components/ui/centered-spinner.tsx"],"names":[],"mappings":";;;;;;;AACA,4DAAoC;AACpC,+DAAuE;AAShE,MAAM,eAAe,GAAmC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;IACzF,OAAO,CACH,wBAAC,qBAAK,kBACF,cAAc,EAAC,QAAQ,EACvB,UAAU,EAAC,QAAQ,EACnB,SAAS,EAAC,QAAQ,EAClB,SAAS,EAAE,IAAA,oBAAU,EAAC,SAAS,EAAE,aAAa,CAAC,iBAE/C,uBAAC,uBAAO,IAAC,SAAS,EAAC,WAAW,EAAC,IAAI,EAAE,IAAI,WAAI,EAC5C,CAAC,CAAC,IAAI,IAAI,CACP,uBAAC,wBAAQ,kBAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,sBAC3C,IAAI,YACE,CACd,aACG,CACX,CAAC;AACN,CAAC,CAAC;AAhBW,QAAA,eAAe,mBAgB1B"}
1
+ {"version":3,"file":"centered-spinner.js","sourceRoot":"","sources":["../../../src/components/ui/centered-spinner.tsx"],"names":[],"mappings":";AACA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AASvE,MAAM,CAAC,MAAM,eAAe,GAAmC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE;IACzF,OAAO,CACH,MAAC,KAAK,kBACF,cAAc,EAAC,QAAQ,EACvB,UAAU,EAAC,QAAQ,EACnB,SAAS,EAAC,QAAQ,EAClB,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,aAAa,CAAC,iBAE/C,KAAC,OAAO,IAAC,SAAS,EAAC,WAAW,EAAC,IAAI,EAAE,IAAI,GAAI,EAC5C,CAAC,CAAC,IAAI,IAAI,CACP,KAAC,QAAQ,kBAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,EAAC,OAAO,sBAC3C,IAAI,IACE,CACd,KACG,CACX,CAAC;AACN,CAAC,CAAC"}
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.centeredSpinnerTitled = exports.centeredSpinner = exports.centeredSpinnerTiny = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const centered_spinner_1 = require("./centered-spinner");
6
- exports.default = {
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { CenteredSpinner } from './centered-spinner';
3
+ export default {
7
4
  title: 'Marketing UI/ui/CenteredSpinner',
8
- component: centered_spinner_1.CenteredSpinner,
5
+ component: CenteredSpinner,
9
6
  parameters: {},
10
7
  };
11
- const w = (style, cb) => () => (0, jsx_runtime_1.jsx)("div", Object.assign({ style: style }, { children: cb() }), void 0);
12
- exports.centeredSpinnerTiny = w({}, () => (0, jsx_runtime_1.jsx)(centered_spinner_1.CenteredSpinner, { size: "tiny" }, void 0));
13
- exports.centeredSpinner = w({ width: '400px', height: '400px' }, () => (0, jsx_runtime_1.jsx)(centered_spinner_1.CenteredSpinner, {}, void 0));
14
- exports.centeredSpinnerTitled = w({ width: '400px', height: '400px' }, () => ((0, jsx_runtime_1.jsx)(centered_spinner_1.CenteredSpinner, { info: "Wait for data fetch" }, void 0)));
8
+ const w = (style, cb) => () => _jsx("div", Object.assign({ style: style }, { children: cb() }));
9
+ export const centeredSpinnerTiny = w({}, () => _jsx(CenteredSpinner, { size: "tiny" }));
10
+ export const centeredSpinner = w({ width: '400px', height: '400px' }, () => _jsx(CenteredSpinner, {}));
11
+ export const centeredSpinnerTitled = w({ width: '400px', height: '400px' }, () => (_jsx(CenteredSpinner, { info: "Wait for data fetch" })));
15
12
  //# sourceMappingURL=centered-spinner.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"centered-spinner.stories.js","sourceRoot":"","sources":["../../../src/components/ui/centered-spinner.stories.tsx"],"names":[],"mappings":";;;;AACA,yDAAqD;AAErD,kBAAe;IACX,KAAK,EAAE,iCAAiC;IACxC,SAAS,EAAE,kCAAe;IAC1B,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,KAA0C,EAAE,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CACnF,8CAAK,KAAK,EAAE,KAAK,gBAAG,EAAE,EAAE,YAAO,CAAC;AAEvB,QAAA,mBAAmB,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,uBAAC,kCAAe,IAAC,IAAI,EAAC,MAAM,WAAG,CAAC,CAAC;AACnE,QAAA,eAAe,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,uBAAC,kCAAe,aAAG,CAAC,CAAC;AACpF,QAAA,qBAAqB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,CAC9E,uBAAC,kCAAe,IAAC,IAAI,EAAC,qBAAqB,WAAG,CACjD,CAAC,CAAC"}
1
+ {"version":3,"file":"centered-spinner.stories.js","sourceRoot":"","sources":["../../../src/components/ui/centered-spinner.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,eAAe;IACX,KAAK,EAAE,iCAAiC;IACxC,SAAS,EAAE,eAAe;IAC1B,UAAU,EAAE,EAAE;CACjB,CAAC;AAEF,MAAM,CAAC,GAAG,CAAC,KAA0C,EAAE,EAAsB,EAAE,EAAE,CAAC,GAAG,EAAE,CACnF,4BAAK,KAAK,EAAE,KAAK,gBAAG,EAAE,EAAE,IAAO,CAAC;AAEpC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,KAAC,eAAe,IAAC,IAAI,EAAC,MAAM,GAAG,CAAC,CAAC;AAChF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,KAAC,eAAe,KAAG,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,CAAC,CAC9E,KAAC,eAAe,IAAC,IAAI,EAAC,qBAAqB,GAAG,CACjD,CAAC,CAAC"}