impact-nova 2.5.6 → 2.5.8

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 (192) hide show
  1. package/dist/components/data/ag-grid-react/ag-grid.types.d.ts +2 -2
  2. package/dist/components/data/ag-grid-react/headers/components/date-filter-picker.d.ts +4 -2
  3. package/dist/components/data/ag-grid-react/headers/header-search-input.js +65 -65
  4. package/dist/components/data/ag-grid-react/headers/utils/date-utils.js +55 -48
  5. package/dist/components/data-display/calendar/calendar-apply-validation.d.ts +4 -2
  6. package/dist/components/data-display/calendar/calendar-apply-validation.js +82 -51
  7. package/dist/components/data-display/calendar/calendar-config.d.ts +13 -5
  8. package/dist/components/data-display/calendar/calendar-config.js +31 -20
  9. package/dist/components/data-display/calendar/calendar-day-button.js +43 -35
  10. package/dist/components/data-display/calendar/calendar-day-hover.d.ts +8 -0
  11. package/dist/components/data-display/calendar/calendar-day-hover.js +20 -0
  12. package/dist/components/data-display/calendar/calendar-day-picker-classnames.d.ts +8 -1
  13. package/dist/components/data-display/calendar/calendar-day-picker-classnames.js +40 -20
  14. package/dist/components/data-display/calendar/calendar-day-picker-components.d.ts +12 -1
  15. package/dist/components/data-display/calendar/calendar-day-picker-components.js +199 -98
  16. package/dist/components/data-display/calendar/calendar-day-picker-view.d.ts +12 -4
  17. package/dist/components/data-display/calendar/calendar-day-picker-view.js +139 -92
  18. package/dist/components/data-display/calendar/calendar-fiscal-labels.d.ts +38 -0
  19. package/dist/components/data-display/calendar/calendar-fiscal-labels.js +90 -0
  20. package/dist/components/data-display/calendar/calendar-footer-summary.d.ts +13 -4
  21. package/dist/components/data-display/calendar/calendar-footer-summary.js +101 -50
  22. package/dist/components/data-display/calendar/calendar-footer.d.ts +16 -7
  23. package/dist/components/data-display/calendar/calendar-footer.js +88 -66
  24. package/dist/components/data-display/calendar/calendar-gregorian-presets.d.ts +2 -0
  25. package/dist/components/data-display/calendar/calendar-gregorian-presets.js +26 -0
  26. package/dist/components/data-display/calendar/calendar-interval-caption.d.ts +1 -0
  27. package/dist/components/data-display/calendar/calendar-interval-caption.js +10 -0
  28. package/dist/components/data-display/calendar/calendar-interval-utils.d.ts +23 -0
  29. package/dist/components/data-display/calendar/calendar-interval-utils.js +154 -0
  30. package/dist/components/data-display/calendar/calendar-month-panes.d.ts +5 -1
  31. package/dist/components/data-display/calendar/calendar-month-panes.js +9 -7
  32. package/dist/components/data-display/calendar/calendar-month-picker-panel.d.ts +5 -1
  33. package/dist/components/data-display/calendar/calendar-month-picker-panel.js +76 -77
  34. package/dist/components/data-display/calendar/calendar-month-utils.d.ts +2 -0
  35. package/dist/components/data-display/calendar/calendar-month-utils.js +69 -60
  36. package/dist/components/data-display/calendar/calendar-padding-week.utils.d.ts +15 -0
  37. package/dist/components/data-display/calendar/calendar-padding-week.utils.js +22 -3
  38. package/dist/components/data-display/calendar/calendar-panel-context.d.ts +1 -1
  39. package/dist/components/data-display/calendar/calendar-period-cell.d.ts +18 -0
  40. package/dist/components/data-display/calendar/calendar-period-cell.js +89 -0
  41. package/dist/components/data-display/calendar/calendar-period-keyboard.d.ts +2 -0
  42. package/dist/components/data-display/calendar/calendar-period-keyboard.js +18 -0
  43. package/dist/components/data-display/calendar/calendar-preset-strip.d.ts +6 -0
  44. package/dist/components/data-display/calendar/calendar-preset-strip.js +26 -0
  45. package/dist/components/data-display/calendar/calendar-quarter-panes.d.ts +24 -0
  46. package/dist/components/data-display/calendar/calendar-quarter-panes.js +115 -0
  47. package/dist/components/data-display/calendar/calendar-quarter-utils.d.ts +19 -0
  48. package/dist/components/data-display/calendar/calendar-quarter-utils.js +95 -0
  49. package/dist/components/data-display/calendar/calendar-selection-appearance.d.ts +38 -0
  50. package/dist/components/data-display/calendar/calendar-selection-appearance.js +72 -0
  51. package/dist/components/data-display/calendar/calendar-selection.d.ts +20 -0
  52. package/dist/components/data-display/calendar/calendar-selection.js +31 -0
  53. package/dist/components/data-display/calendar/calendar-week-number-cell.d.ts +6 -1
  54. package/dist/components/data-display/calendar/calendar-week-number-cell.js +53 -38
  55. package/dist/components/data-display/calendar/calendar-week-number-header.d.ts +4 -0
  56. package/dist/components/data-display/calendar/calendar-week-number-header.js +15 -0
  57. package/dist/components/data-display/calendar/calendar-week-utils.d.ts +11 -3
  58. package/dist/components/data-display/calendar/calendar-week-utils.js +50 -42
  59. package/dist/components/data-display/calendar/calendar-year-panes.d.ts +18 -0
  60. package/dist/components/data-display/calendar/calendar-year-panes.js +98 -0
  61. package/dist/components/data-display/calendar/calendar-year-utils.d.ts +17 -0
  62. package/dist/components/data-display/calendar/calendar-year-utils.js +75 -0
  63. package/dist/components/data-display/calendar/calendar.d.ts +1 -1
  64. package/dist/components/data-display/calendar/calendar.js +303 -181
  65. package/dist/components/data-display/calendar/calendar.types.d.ts +53 -16
  66. package/dist/components/data-display/calendar/fiscal-period-caption-select.d.ts +7 -0
  67. package/dist/components/data-display/calendar/fiscal-period-caption-select.js +63 -0
  68. package/dist/components/data-display/calendar/index.d.ts +1 -1
  69. package/dist/components/data-display/calendar/use-calendar-day-picker-config.d.ts +12 -2
  70. package/dist/components/data-display/calendar/use-calendar-day-picker-config.js +92 -62
  71. package/dist/components/data-display/calendar/use-calendar-state.d.ts +32 -12
  72. package/dist/components/data-display/calendar/use-calendar-state.js +371 -164
  73. package/dist/components/data-display/calendar/use-fiscal-calendar.d.ts +5 -0
  74. package/dist/components/data-display/calendar/use-fiscal-calendar.js +24 -0
  75. package/dist/components/feedback/tooltip/overflow-tooltip.js +57 -57
  76. package/dist/components/flows/guidance/guidance-error-boundary.js +22 -14
  77. package/dist/components/flows/guidance/guidance-layer.js +34 -32
  78. package/dist/components/flows/guidance/help-center/assets/whats-new-guide-icon.svg.js +4 -0
  79. package/dist/components/flows/guidance/help-center/filter-help-center-guides.js +10 -7
  80. package/dist/components/flows/guidance/help-center/guide-catalog-section.d.ts +7 -0
  81. package/dist/components/flows/guidance/help-center/guide-catalog-section.js +24 -0
  82. package/dist/components/flows/guidance/help-center/guide-catalog-utils.d.ts +3 -0
  83. package/dist/components/flows/guidance/help-center/guide-catalog-utils.js +19 -0
  84. package/dist/components/flows/guidance/help-center/guide-catalog.d.ts +1 -1
  85. package/dist/components/flows/guidance/help-center/guide-catalog.js +89 -79
  86. package/dist/components/flows/guidance/help-center/help-center-guide-labels.d.ts +6 -0
  87. package/dist/components/flows/guidance/help-center/help-center-guide-labels.js +33 -0
  88. package/dist/components/flows/guidance/help-center/help-center-guide-row.d.ts +12 -0
  89. package/dist/components/flows/guidance/help-center/help-center-guide-row.js +57 -0
  90. package/dist/components/flows/guidance/help-center/help-center-guide-type-icons.d.ts +9 -0
  91. package/dist/components/flows/guidance/help-center/help-center-guide-type-icons.js +114 -0
  92. package/dist/components/flows/guidance/help-center/help-center-header.d.ts +1 -1
  93. package/dist/components/flows/guidance/help-center/help-center-header.js +20 -16
  94. package/dist/components/flows/guidance/help-center/help-center.constants.d.ts +1 -1
  95. package/dist/components/flows/guidance/help-center/help-center.constants.js +1 -1
  96. package/dist/components/flows/guidance/help-center/help-center.d.ts +3 -1
  97. package/dist/components/flows/guidance/help-center/help-center.js +74 -51
  98. package/dist/components/flows/guidance/help-center/help-center.types.d.ts +9 -1
  99. package/dist/components/flows/guidance/help-center/renderHelpCenterGuideTypeIcon.d.ts +4 -0
  100. package/dist/components/flows/guidance/help-center/renderHelpCenterGuideTypeIcon.js +18 -0
  101. package/dist/components/flows/guidance/help-center.d.ts +4 -2
  102. package/dist/components/flows/guidance/help-center.js +23 -14
  103. package/dist/components/flows/guidance/hooks/useGuidanceOverlayGeometry.js +19 -17
  104. package/dist/components/flows/guidance/index.d.ts +1 -1
  105. package/dist/components/flows/guidance/renderers/announcement-renderer.d.ts +1 -1
  106. package/dist/components/flows/guidance/renderers/announcement-renderer.js +20 -12
  107. package/dist/components/flows/guidance/renderers/guidance-card-shared.d.ts +9 -11
  108. package/dist/components/flows/guidance/renderers/guidance-card-shared.js +124 -177
  109. package/dist/components/flows/guidance/renderers/guidance-renderer-shared.d.ts +1 -1
  110. package/dist/components/flows/guidance/renderers/guidance-renderer-shared.js +57 -72
  111. package/dist/components/flows/guidance/renderers/guidance-tour-overlay.js +23 -23
  112. package/dist/components/flows/wizard/wizard.js +41 -38
  113. package/dist/components/forms/date-picker/date-input-behavior.d.ts +7 -0
  114. package/dist/components/forms/date-picker/date-input-behavior.js +28 -24
  115. package/dist/components/forms/date-picker/date-picker-shell.d.ts +13 -0
  116. package/dist/components/forms/date-picker/date-picker-shell.js +31 -0
  117. package/dist/components/forms/date-picker/date-picker.js +187 -167
  118. package/dist/components/forms/date-picker/date-picker.types.d.ts +90 -43
  119. package/dist/components/forms/date-picker/date-range-picker.js +273 -224
  120. package/dist/components/forms/date-picker/fiscal-pass-through.d.ts +13 -0
  121. package/dist/components/forms/date-picker/fiscal-pass-through.js +17 -0
  122. package/dist/components/forms/date-picker/fiscal-period-format.d.ts +9 -0
  123. package/dist/components/forms/date-picker/fiscal-period-format.js +50 -0
  124. package/dist/components/forms/date-picker/index.d.ts +12 -0
  125. package/dist/components/forms/date-picker/index.js +19 -7
  126. package/dist/components/forms/date-picker/month-picker.js +225 -182
  127. package/dist/components/forms/date-picker/month-range-picker.js +134 -110
  128. package/dist/components/forms/date-picker/multi-date-picker.js +77 -56
  129. package/dist/components/forms/date-picker/multi-month-picker.js +78 -57
  130. package/dist/components/forms/date-picker/multi-quarter-picker.d.ts +3 -0
  131. package/dist/components/forms/date-picker/multi-quarter-picker.js +177 -0
  132. package/dist/components/forms/date-picker/multi-week-picker.js +81 -70
  133. package/dist/components/forms/date-picker/multi-year-picker.d.ts +3 -0
  134. package/dist/components/forms/date-picker/multi-year-picker.js +179 -0
  135. package/dist/components/forms/date-picker/quarter-picker.d.ts +3 -0
  136. package/dist/components/forms/date-picker/quarter-picker.js +176 -0
  137. package/dist/components/forms/date-picker/quarter-range-picker.d.ts +3 -0
  138. package/dist/components/forms/date-picker/quarter-range-picker.js +177 -0
  139. package/dist/components/forms/date-picker/week-picker.js +148 -137
  140. package/dist/components/forms/date-picker/week-range-picker.js +216 -205
  141. package/dist/components/forms/date-picker/year-picker.d.ts +3 -0
  142. package/dist/components/forms/date-picker/year-picker.js +176 -0
  143. package/dist/components/forms/date-picker/year-range-picker.d.ts +3 -0
  144. package/dist/components/forms/date-picker/year-range-picker.js +179 -0
  145. package/dist/components/layout/horizontal-scroller/horizontal-scroller.js +35 -53
  146. package/dist/form-react/Fields/DateInputField.js +63 -58
  147. package/dist/form-react/Fields/DateRangeField.js +42 -37
  148. package/dist/form-react/Fields/MonthRangeField.js +50 -45
  149. package/dist/form-react/Fields/MultiWeekPickerField.js +7 -7
  150. package/dist/form-react/Fields/WeekRangePicker.js +44 -45
  151. package/dist/form-react/components/FieldRenderer.js +21 -23
  152. package/dist/form-react/registry/defaultFieldRegistrations.d.ts +9 -1
  153. package/dist/form-react/registry/defaultFieldRegistrations.js +11 -12
  154. package/dist/form-react/registry/resolveFieldComponent.d.ts +3 -2
  155. package/dist/form-react/registry/resolveFieldComponent.js +9 -133
  156. package/dist/form-react/types/fields.types.d.ts +22 -7
  157. package/dist/form-react/utils/date.utils.d.ts +3 -1
  158. package/dist/form-react/utils/date.utils.js +82 -53
  159. package/dist/i18n/defaultMessages.d.ts +29 -1
  160. package/dist/i18n/defaultMessages.js +54 -27
  161. package/dist/i18n/locales/de.js +31 -4
  162. package/dist/i18n/locales/es.js +31 -4
  163. package/dist/i18n/locales/hi.js +31 -4
  164. package/dist/i18n/locales/kn.js +31 -4
  165. package/dist/impact-nova-components.css +379 -3
  166. package/dist/impact-nova.css +1 -1
  167. package/dist/index.js +528 -516
  168. package/dist/lib/fiscal-calendar/build-year.d.ts +8 -0
  169. package/dist/lib/fiscal-calendar/build-year.js +173 -0
  170. package/dist/lib/fiscal-calendar/civil-date.d.ts +21 -0
  171. package/dist/lib/fiscal-calendar/civil-date.js +94 -0
  172. package/dist/lib/fiscal-calendar/index.d.ts +10 -0
  173. package/dist/lib/fiscal-calendar/index.js +40 -0
  174. package/dist/lib/fiscal-calendar/lookup.d.ts +4 -0
  175. package/dist/lib/fiscal-calendar/lookup.js +70 -0
  176. package/dist/lib/fiscal-calendar/presets.d.ts +8 -0
  177. package/dist/lib/fiscal-calendar/presets.js +99 -0
  178. package/dist/lib/fiscal-calendar/selection.d.ts +18 -0
  179. package/dist/lib/fiscal-calendar/selection.js +32 -0
  180. package/dist/lib/fiscal-calendar/types.d.ts +145 -0
  181. package/dist/lib/fiscal-calendar/types.js +10 -0
  182. package/dist/lib/fiscal-calendar/week-selection.d.ts +22 -0
  183. package/dist/lib/fiscal-calendar/week-selection.js +107 -0
  184. package/dist/lib/guidance/engine/guidance-engine.d.ts +7 -5
  185. package/dist/lib/guidance/engine/guidance-engine.js +115 -47
  186. package/dist/lib/guidance/triggers/trigger-registry.js +6 -6
  187. package/dist/lib/guidance/types/guidance.types.d.ts +11 -1
  188. package/dist/llms/rules/installation.js +1 -1
  189. package/dist/llms/rules/requirements.js +1 -1
  190. package/package.json +5 -1
  191. package/dist/lib/fiscal-calendar.d.ts +0 -62
  192. package/dist/lib/fiscal-calendar.js +0 -99
@@ -1,92 +1,92 @@
1
- import { jsx as n, jsxs as A } from "react/jsx-runtime";
2
- import { cn as b } from "../../../lib/utils.js";
3
- import { Tooltip as G, TooltipTrigger as H, TooltipContent as R } from "./tooltip.js";
4
- import { useOverflowTooltip as q } from "./use-overflow-tooltip.js";
5
- function M({
1
+ import { jsx as n, jsxs as G } from "react/jsx-runtime";
2
+ import { cn as m } from "../../../lib/utils.js";
3
+ import { Tooltip as H, TooltipTrigger as R, TooltipContent as q } from "./tooltip.js";
4
+ import { useOverflowTooltip as z } from "./use-overflow-tooltip.js";
5
+ function N({
6
6
  children: o,
7
7
  content: i,
8
- overflowMode: m = "ellipsis",
9
- side: P = "top",
8
+ overflowMode: P = "ellipsis",
9
+ side: x = "top",
10
10
  align: l,
11
11
  variant: s,
12
12
  className: t,
13
13
  triggerClassName: r,
14
- as: x = "span",
15
- alwaysShow: C = !1,
14
+ as: C = "span",
15
+ alwaysShow: w = !1,
16
16
  disabled: p = !1,
17
- focusable: w = !1
17
+ focusable: d = !1
18
18
  }) {
19
- const a = x, d = i ?? o, {
20
- setTriggerRef: v,
21
- onTriggerPointerEnter: h,
22
- onTriggerPointerLeave: L,
23
- onTriggerFocus: E,
24
- onContentPointerEnter: O,
25
- onContentPointerDown: F,
26
- onContentPointerLeave: k,
27
- onContentPointerUp: y,
28
- triggerTabIndex: D,
19
+ const a = C, v = i ?? o, {
20
+ setTriggerRef: h,
21
+ onTriggerPointerEnter: L,
22
+ onTriggerPointerLeave: E,
23
+ onTriggerFocus: O,
24
+ onContentPointerEnter: F,
25
+ onContentPointerDown: k,
26
+ onContentPointerLeave: y,
27
+ onContentPointerUp: D,
28
+ triggerTabIndex: I,
29
29
  isTooltipArmed: c,
30
- isTooltipOpen: I,
31
- tooltipContent: j,
32
- handleTooltipOpenChange: U
33
- } = q(o, {
30
+ isTooltipOpen: j,
31
+ tooltipContent: U,
32
+ handleTooltipOpenChange: $
33
+ } = z(o, {
34
34
  content: i,
35
- overflowMode: m,
36
- alwaysShow: C,
35
+ overflowMode: P,
36
+ alwaysShow: w,
37
37
  disabled: p,
38
- focusable: w,
39
- contentDependency: d
38
+ focusable: d,
39
+ contentDependency: v
40
40
  }), e = `${r ?? ""} ${t ?? ""}`, f = /\btruncate\b/.test(e), g = /\b(inline-block|inline-flex|inline)\b/.test(
41
41
  e
42
- ), T = /\bflex\b/.test(e), u = /\bflex-1\b/.test(e), $ = b(
42
+ ), T = /\bflex\b/.test(e), u = /\bflex-1\b/.test(e), A = m(
43
43
  "outline-none min-w-0 max-w-full",
44
44
  f && !g && !T && !u && "block w-full",
45
45
  f && !g && !T && u && "block",
46
46
  r,
47
47
  t
48
+ ), b = /* @__PURE__ */ n(
49
+ a,
50
+ {
51
+ ref: h,
52
+ "data-component": "overflow-tooltip-trigger",
53
+ className: A,
54
+ onPointerEnter: L,
55
+ onPointerLeave: E,
56
+ tabIndex: I,
57
+ onFocus: O,
58
+ children: o
59
+ }
48
60
  );
49
- return p ? /* @__PURE__ */ n(a, { className: b(r, t), children: o }) : /* @__PURE__ */ A(
50
- G,
61
+ return p ? /* @__PURE__ */ n(a, { className: m(r, t), children: o }) : c ? /* @__PURE__ */ G(
62
+ H,
51
63
  {
52
64
  disableHoverableContent: !1,
53
- open: c && I,
54
- onOpenChange: U,
65
+ open: c && j,
66
+ onOpenChange: $,
55
67
  children: [
56
- /* @__PURE__ */ n(H, { asChild: !0, children: /* @__PURE__ */ n(
57
- a,
68
+ /* @__PURE__ */ n(R, { asChild: !0, children: b }),
69
+ /* @__PURE__ */ n(
70
+ q,
58
71
  {
59
- ref: v,
60
- "data-component": "overflow-tooltip-trigger",
61
- className: $,
62
- onPointerEnter: h,
63
- onPointerLeave: L,
64
- tabIndex: D,
65
- onFocus: E,
66
- children: o
67
- }
68
- ) }),
69
- c ? /* @__PURE__ */ n(
70
- R,
71
- {
72
- side: P,
72
+ side: x,
73
73
  ...l ? { align: l } : {},
74
74
  ...s ? { variant: s } : {},
75
- onPointerEnter: O,
76
- onPointerLeave: k,
75
+ onPointerEnter: F,
76
+ onPointerLeave: y,
77
77
  onPointerDown: () => {
78
- F();
78
+ k();
79
79
  },
80
80
  onPointerUp: () => {
81
- y();
81
+ D();
82
82
  },
83
- children: j
83
+ children: U
84
84
  }
85
- ) : null
85
+ )
86
86
  ]
87
87
  }
88
- );
88
+ ) : b;
89
89
  }
90
90
  export {
91
- M as OverflowTooltip
91
+ N as OverflowTooltip
92
92
  };
@@ -1,25 +1,25 @@
1
1
  import { jsxs as t, jsx as o } from "react/jsx-runtime";
2
2
  import * as a from "react";
3
3
  import { useGuidanceContext as d } from "./guidance-context.js";
4
- class u extends a.Component {
5
- constructor(e) {
6
- super(e), this.state = { hasError: !1 };
4
+ class l extends a.Component {
5
+ constructor(r) {
6
+ super(r), this.state = { hasError: !1 };
7
7
  }
8
8
  static getDerivedStateFromError() {
9
9
  return { hasError: !0 };
10
10
  }
11
- componentDidCatch(e) {
12
- this.props.onError?.(e);
11
+ componentDidCatch(r) {
12
+ this.props.onError?.(r);
13
13
  }
14
14
  render() {
15
15
  return this.state.hasError ? null : this.props.children;
16
16
  }
17
17
  }
18
- function l() {
19
- const { engine: r, debug: e } = d();
20
- if (!e)
18
+ function u() {
19
+ const { engine: n, debug: r } = d();
20
+ if (!r)
21
21
  return null;
22
- const s = r.registry.getAll(), n = r.state;
22
+ const s = n.registry.getAll(), e = n.state;
23
23
  return /* @__PURE__ */ t(
24
24
  "div",
25
25
  {
@@ -29,21 +29,29 @@ function l() {
29
29
  /* @__PURE__ */ o("div", { className: "font-semibold text-content-primary", children: "Guidance Debug" }),
30
30
  /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
31
31
  "Status: ",
32
- n.status
32
+ e.status
33
33
  ] }),
34
+ e.stepId ? /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
35
+ "Step: ",
36
+ e.stepId
37
+ ] }) : null,
38
+ "reason" in e && e.reason ? /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
39
+ "Reason: ",
40
+ e.reason
41
+ ] }) : null,
34
42
  /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
35
43
  "Registered guides: ",
36
44
  s.length
37
45
  ] }),
38
- n.guideId ? /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
46
+ e.guideId ? /* @__PURE__ */ t("div", { className: "mt-1 text-content-secondary", children: [
39
47
  "Active: ",
40
- n.guideId
48
+ e.guideId
41
49
  ] }) : null
42
50
  ]
43
51
  }
44
52
  );
45
53
  }
46
54
  export {
47
- l as GuidanceDebugPanel,
48
- u as GuidanceErrorBoundary
55
+ u as GuidanceDebugPanel,
56
+ l as GuidanceErrorBoundary
49
57
  };
@@ -1,49 +1,51 @@
1
- import { jsxs as i, jsx as t } from "react/jsx-runtime";
2
- import * as s from "react";
3
- import { useSyncExternalStore as d } from "react";
4
- import { useGuidanceContext as m } from "./guidance-context.js";
5
- import { SpotlightRenderer as p } from "./renderers/spotlight-renderer.js";
6
- import { CoachMarkRenderer as f } from "./renderers/coach-mark-renderer.js";
7
- import { AnnouncementRenderer as b } from "./renderers/announcement-renderer.js";
8
- import { endTourScrollSnapshot as h } from "./renderers/guidance-renderer-shared.js";
9
- import { Button as l } from "../../primitives/button/button.js";
10
- function k(e, n) {
1
+ import { jsxs as i, jsx as n } from "react/jsx-runtime";
2
+ import * as t from "react";
3
+ import { useSyncExternalStore as c } from "react";
4
+ import { useGuidanceContext as p } from "./guidance-context.js";
5
+ import { SpotlightRenderer as f } from "./renderers/spotlight-renderer.js";
6
+ import { CoachMarkRenderer as b } from "./renderers/coach-mark-renderer.js";
7
+ import { AnnouncementRenderer as h } from "./renderers/announcement-renderer.js";
8
+ import { endTourScrollSnapshot as k } from "./renderers/guidance-renderer-shared.js";
9
+ import { Button as d } from "../../primitives/button/button.js";
10
+ function x(e, s) {
11
11
  const r = {
12
12
  instruction: e,
13
- ...n
13
+ ...s
14
14
  };
15
15
  switch (e.renderer) {
16
16
  case "spotlight":
17
- return /* @__PURE__ */ t(p, { ...r });
17
+ return /* @__PURE__ */ n(f, { ...r });
18
18
  case "coach-mark":
19
- return /* @__PURE__ */ t(f, { ...r });
19
+ return /* @__PURE__ */ n(b, { ...r });
20
20
  case "announcement":
21
- return /* @__PURE__ */ t(b, { ...r });
21
+ return /* @__PURE__ */ n(h, { ...r });
22
22
  default:
23
23
  return null;
24
24
  }
25
25
  }
26
- function G() {
27
- const { engine: e } = m();
28
- s.useEffect(() => e.on("guideEnd", () => {
29
- h();
26
+ function z() {
27
+ const { engine: e } = p();
28
+ t.useEffect(() => e.on("guideEnd", () => {
29
+ k();
30
30
  }), [e]);
31
- const n = d(
31
+ const s = c(
32
32
  (o) => e.subscribe(o),
33
33
  () => e.state,
34
34
  () => ({ status: "idle" })
35
- ), r = d(
35
+ ), r = c(
36
36
  (o) => e.subscribe(o),
37
37
  () => e.getRenderInstruction(),
38
38
  () => null
39
- ), a = s.useCallback(() => {
39
+ ), l = t.useCallback(() => {
40
40
  e.advanceStep();
41
- }, [e]), u = s.useCallback(() => {
42
- e.skipStep();
43
- }, [e]), c = s.useCallback(() => {
41
+ }, [e]), u = t.useCallback(() => {
44
42
  e.dismiss("session");
43
+ }, [e]), a = t.useCallback(() => {
44
+ e.dismiss("session");
45
+ }, [e]), m = t.useCallback(() => {
46
+ e.retryCurrentStep();
45
47
  }, [e]);
46
- return n.status === "blocked" ? /* @__PURE__ */ i(
48
+ return s.status === "blocked" ? /* @__PURE__ */ i(
47
49
  "div",
48
50
  {
49
51
  "data-component": "guidance-blocked",
@@ -52,20 +54,20 @@ function G() {
52
54
  children: [
53
55
  /* @__PURE__ */ i("p", { className: "text-sm text-content-secondary", children: [
54
56
  "Guide step is blocked: ",
55
- n.reason
57
+ s.reason
56
58
  ] }),
57
59
  /* @__PURE__ */ i("div", { className: "mt-2 flex gap-2", children: [
58
- /* @__PURE__ */ t(l, { size: "sm", onClick: a, children: "Retry" }),
59
- /* @__PURE__ */ t(l, { variant: "secondary", size: "sm", onClick: c, children: "Dismiss" })
60
+ /* @__PURE__ */ n(d, { size: "sm", onClick: m, children: "Retry" }),
61
+ /* @__PURE__ */ n(d, { variant: "secondary", size: "sm", onClick: a, children: "Dismiss" })
60
62
  ] })
61
63
  ]
62
64
  }
63
- ) : r ? k(r, {
64
- onNext: a,
65
+ ) : r ? x(r, {
66
+ onNext: l,
65
67
  onSkip: u,
66
- onDismiss: c
68
+ onDismiss: a
67
69
  }) : null;
68
70
  }
69
71
  export {
70
- G as GuidanceLayer
72
+ z as GuidanceLayer
71
73
  };
@@ -0,0 +1,4 @@
1
+ const c = "data:image/svg+xml,%3csvg%20viewBox='0%200%20128%20128'%20xmlns='http://www.w3.org/2000/svg'%20aria-hidden='true'%3e%3cpath%20d='M121.59%2060.83l-13.93-4.49c-8.91-2.94-14.13-10.15-16.58-19.21L84.95%207.27c-.16-.59-.55-1.38-1.75-1.38c-1.01%200-1.59.79-1.75%201.38l-6.13%2029.87c-2.46%209.06-7.67%2016.27-16.58%2019.21l-13.93%204.49c-1.97.64-2%203.42-.04%204.09l14.03%204.83c8.88%202.95%2014.06%2010.15%2016.52%2019.17l6.14%2029.53c.16.59.49%201.65%201.75%201.65c1.33%200%201.59-1.06%201.75-1.65l6.14-29.53c2.46-9.03%207.64-16.23%2016.52-19.17l14.03-4.83c1.94-.68%201.91-3.46-.06-4.1z'%20fill='%23fdd835'/%3e%3cpath%20d='M122.91%2062.08c-.22-.55-.65-1.03-1.32-1.25l-13.93-4.49c-8.91-2.94-14.13-10.15-16.58-19.21L84.95%207.27c-.09-.34-.41-.96-.78-1.14l1.98%2029.97c1.47%2013.68%202.73%2020.12%2013.65%2022c9.38%201.62%2020.23%203.48%2023.11%203.98z'%20fill='%23ffee58'/%3e%3cpath%20d='M122.94%2063.64l-24.16%205.54c-8.51%202.16-13.2%207.09-13.2%2019.99l-2.37%2030.94c.81-.08%201.47-.52%201.75-1.65l6.14-29.53c2.46-9.03%207.64-16.23%2016.52-19.17l14.03-4.83c.66-.24%201.08-.73%201.29-1.29z'%20fill='%23f4b400'/%3e%3cpath%20d='M41.81%2086.81c-8.33-2.75-9.09-5.85-10.49-11.08l-3.49-12.24c-.21-.79-2.27-.79-2.49%200L22.97%2074.8c-1.41%205.21-4.41%209.35-9.53%2011.04l-8.16%203.54c-1.13.37-1.15%201.97-.02%202.35l8.22%202.91c5.1%201.69%208.08%205.83%209.5%2011.02l2.37%2010.82c.22.79%202.27.79%202.48%200l2.78-10.77c1.41-5.22%203.57-9.37%2010.5-11.07l7.72-2.91c1.13-.39%201.12-1.99-.02-2.36l-7-2.56z'%20fill='%23fdd835'/%3e%3cpath%20d='M28.49%2075.55c.85%207.86%201.28%2010.04%207.65%2011.67l13.27%202.59c-.14-.19-.34-.35-.61-.43l-7-2.57c-7.31-2.5-9.33-5.68-10.7-12.04c-1.37-6.36-2.83-10.51-2.83-10.51c-.51-1.37-1.24-1.3-1.24-1.3l1.46%2012.59z'%20fill='%23ffee58'/%3e%3cpath%20d='M28.73%20102.99c0-7.41%204.05-11.08%2010.49-11.08l10.02-.41s-.58.77-1.59%201.01l-6.54%202.13c-5.55%202.23-8.08%203.35-9.8%2010.94c0%200-2.22%208.83-2.64%209.76c-.58%201.3-1.27%201.57-1.27%201.57l1.33-13.92z'%20fill='%23f4b400'/%3e%3cpath%20d='M59.74%2028.14c.56-.19.54-.99-.03-1.15l-7.72-2.08a4.77%204.77%200%200%201-3.34-3.3L45.61%209.06c-.15-.61-1.02-.61-1.17.01l-2.86%2012.5a4.734%204.734%200%200%201-3.4%203.37l-7.67%201.99c-.57.15-.61.95-.05%201.15l8.09%202.8c1.45.5%202.57%201.68%203.01%203.15l2.89%2011.59c.15.6%201.01.61%201.16%200l2.99-11.63a4.773%204.773%200%200%201%203.04-3.13l8.1-2.72z'%20fill='%23f4b400'%20stroke='%23f4b400'%20stroke-miterlimit='10'/%3e%3c/svg%3e";
2
+ export {
3
+ c as default
4
+ };
@@ -1,11 +1,14 @@
1
- import { HELP_CENTER_ALL_CATEGORY_VALUE as u } from "./help-center.constants.js";
2
- function y(o, e) {
3
- const l = e.allCategoryValue ?? u, r = e.categoryValue === l ? null : e.categoryValue, t = e.searchQuery.trim().toLowerCase();
4
- return o.filter((a) => {
5
- const c = a.metadata.category ?? "general", s = !r || c === r, n = !t || a.metadata.title?.toLowerCase().includes(t) || a.metadata.description?.toLowerCase().includes(t) || a.id.toLowerCase().includes(t);
6
- return s && n;
1
+ import { HELP_CENTER_ALL_CATEGORY_VALUE as i } from "./help-center.constants.js";
2
+ import { getGuideTypeSearchTerms as y, resolveGuideType as C } from "./guide-catalog-utils.js";
3
+ function g(o, r) {
4
+ const c = r.allCategoryValue ?? i, a = r.categoryValue === c ? null : r.categoryValue, e = r.searchQuery.trim().toLowerCase();
5
+ return o.filter((t) => {
6
+ const s = t.metadata.category ?? "general", l = !a || s === a, n = y(C(t)), u = !e || t.metadata.title?.toLowerCase().includes(e) || t.metadata.description?.toLowerCase().includes(e) || t.id.toLowerCase().includes(e) || n.some(
7
+ (m) => m.toLowerCase().includes(e)
8
+ );
9
+ return l && u;
7
10
  });
8
11
  }
9
12
  export {
10
- y as filterHelpCenterGuides
13
+ g as filterHelpCenterGuides
11
14
  };
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ export interface GuideCatalogSectionProps {
3
+ title: string;
4
+ children: React.ReactNode;
5
+ className?: string;
6
+ }
7
+ export declare function GuideCatalogSection({ title, children, className, }: GuideCatalogSectionProps): React.ReactElement;
@@ -0,0 +1,24 @@
1
+ import { jsxs as i, jsx as o } from "react/jsx-runtime";
2
+ import "react";
3
+ import { cn as r } from "../../../../lib/utils.js";
4
+ function m({
5
+ title: t,
6
+ children: e,
7
+ className: a
8
+ }) {
9
+ return /* @__PURE__ */ i(
10
+ "section",
11
+ {
12
+ className: r("px-4 pb-2 last:pb-3", a),
13
+ "data-component": "guidance-guide-catalog-section",
14
+ "aria-label": t,
15
+ children: [
16
+ /* @__PURE__ */ o("h2", { className: "mb-2 mt-5 text-xs font-semibold uppercase tracking-wider text-content-tertiary first:mt-3", children: t }),
17
+ e
18
+ ]
19
+ }
20
+ );
21
+ }
22
+ export {
23
+ m as GuideCatalogSection
24
+ };
@@ -0,0 +1,3 @@
1
+ import { GuideManifest, GuideType } from '../../../../lib/guidance';
2
+ export declare function resolveGuideType(guide: GuideManifest): GuideType;
3
+ export declare function getGuideTypeSearchTerms(guideType: GuideType): string[];
@@ -0,0 +1,19 @@
1
+ function t(e) {
2
+ return e.metadata.guideType ? e.metadata.guideType : e.metadata.category === "announcements" ? "whats-new" : "tour";
3
+ }
4
+ function r(e) {
5
+ switch (e) {
6
+ case "whats-new":
7
+ return ["whats new", "what's new", "update", "release", "announcement"];
8
+ case "how-to":
9
+ return ["how to", "how-to", "workflow", "walkthrough"];
10
+ case "tip":
11
+ return ["tip", "quick tip", "shortcut"];
12
+ default:
13
+ return ["tour", "guided tour", "onboarding"];
14
+ }
15
+ }
16
+ export {
17
+ r as getGuideTypeSearchTerms,
18
+ t as resolveGuideType
19
+ };
@@ -1,3 +1,3 @@
1
1
  import { GuideCatalogProps } from './help-center.types';
2
2
  import * as React from 'react';
3
- export declare function GuideCatalog({ guides, onLaunchGuide, replayLabel, emptyStateMessage, getStepCountLabel, className, }: GuideCatalogProps): React.ReactElement;
3
+ export declare function GuideCatalog({ guides, onLaunchGuide, replayLabel, getLaunchLabel, getGuideTypeLabel, emptyStateMessage, scrollable, className, }: GuideCatalogProps): React.ReactElement;
@@ -1,118 +1,128 @@
1
- import { jsx as e, jsxs as o } from "react/jsx-runtime";
2
- import * as f from "react";
3
- import { useVirtualizer as x } from "@tanstack/react-virtual";
4
- import { Button as g } from "../../../primitives/button/button.js";
5
- import { cn as u } from "../../../../lib/utils.js";
6
- import { GUIDE_LIST_VIRTUALIZATION_THRESHOLD as b, GUIDE_LIST_ROW_GAP as N, GUIDE_CARD_ESTIMATE_HEIGHT as v } from "./help-center.constants.js";
1
+ import { jsx as t } from "react/jsx-runtime";
2
+ import * as x from "react";
3
+ import { useVirtualizer as T } from "@tanstack/react-virtual";
4
+ import { cn as h } from "../../../../lib/utils.js";
5
+ import { resolveGuideType as v } from "./guide-catalog-utils.js";
6
+ import { HelpCenterGuideRow as y } from "./help-center-guide-row.js";
7
+ import { GUIDE_LIST_VIRTUALIZATION_THRESHOLD as w, GUIDE_LIST_ROW_GAP as I, GUIDE_CARD_ESTIMATE_HEIGHT as E } from "./help-center.constants.js";
7
8
  /* empty css */
8
- function R({
9
- guides: t,
9
+ function z({
10
+ guides: e,
10
11
  onLaunchGuide: r,
11
- replayLabel: n = "Replay",
12
- emptyStateMessage: i = "No guides match your search.",
13
- getStepCountLabel: d = (a) => `${a} steps`,
14
- className: m
12
+ replayLabel: i = "Replay",
13
+ getLaunchLabel: c,
14
+ getGuideTypeLabel: d,
15
+ emptyStateMessage: s = "No guides match your search.",
16
+ scrollable: a = !0,
17
+ className: o
15
18
  }) {
16
- const a = f.useRef(null), p = t.length >= b, c = x({
17
- count: p ? t.length : 0,
18
- getScrollElement: () => a.current,
19
- estimateSize: () => v,
20
- gap: N,
19
+ const l = x.useRef(null), p = a && e.length >= w, m = T({
20
+ count: p ? e.length : 0,
21
+ getScrollElement: () => l.current,
22
+ estimateSize: () => E,
23
+ gap: I,
21
24
  overscan: 5
22
25
  });
23
- return t.length ? /* @__PURE__ */ e(
26
+ if (!e.length)
27
+ return /* @__PURE__ */ t(
28
+ "div",
29
+ {
30
+ className: h(
31
+ a ? "guidance-help-center-scroll min-h-0 flex-1 overflow-y-auto px-4 pb-4 pt-2" : "px-0 pb-0 pt-0",
32
+ o
33
+ ),
34
+ "data-component": "guidance-help-center-scroll",
35
+ children: /* @__PURE__ */ t("p", { className: "py-6 text-center text-sm text-content-secondary", children: s })
36
+ }
37
+ );
38
+ const f = e.map((n) => /* @__PURE__ */ t(
39
+ g,
40
+ {
41
+ guide: n,
42
+ onLaunchGuide: r,
43
+ replayLabel: i,
44
+ getLaunchLabel: c,
45
+ getGuideTypeLabel: d
46
+ },
47
+ n.id
48
+ ));
49
+ return a ? /* @__PURE__ */ t(
24
50
  "div",
25
51
  {
26
- ref: a,
27
- className: u(
28
- "guidance-help-center-scroll min-h-0 flex-1 overflow-y-auto px-4 pb-3 pt-3",
29
- m
52
+ ref: l,
53
+ className: h(
54
+ "guidance-help-center-scroll min-h-0 flex-1 overflow-y-auto px-4 pb-4 pt-2",
55
+ o
30
56
  ),
31
57
  "data-component": "guidance-help-center-scroll",
32
- children: p ? /* @__PURE__ */ e(
58
+ children: p ? /* @__PURE__ */ t(
33
59
  "div",
34
60
  {
35
61
  className: "relative w-full",
36
62
  "data-component": "guidance-guide-catalog",
37
- style: { height: c.getTotalSize() },
38
- children: c.getVirtualItems().map((l) => {
39
- const s = t[l.index];
40
- return s ? /* @__PURE__ */ e(
63
+ style: { height: m.getTotalSize() },
64
+ children: m.getVirtualItems().map((n) => {
65
+ const u = e[n.index];
66
+ return u ? /* @__PURE__ */ t(
41
67
  "div",
42
68
  {
43
- ref: c.measureElement,
44
- "data-index": l.index,
69
+ ref: m.measureElement,
70
+ "data-index": n.index,
45
71
  className: "absolute left-0 top-0 w-full",
46
- style: { transform: `translateY(${l.start}px)` },
47
- children: /* @__PURE__ */ e(
48
- h,
72
+ style: { transform: `translateY(${n.start}px)` },
73
+ children: /* @__PURE__ */ t(
74
+ g,
49
75
  {
50
- guide: s,
76
+ guide: u,
51
77
  onLaunchGuide: r,
52
- replayLabel: n,
53
- getStepCountLabel: d
78
+ replayLabel: i,
79
+ getLaunchLabel: c,
80
+ getGuideTypeLabel: d
54
81
  }
55
82
  )
56
83
  },
57
- s.id
84
+ u.id
58
85
  ) : null;
59
86
  })
60
87
  }
61
- ) : /* @__PURE__ */ e(
62
- "ul",
88
+ ) : /* @__PURE__ */ t(
89
+ "div",
63
90
  {
64
91
  className: "flex flex-col gap-2",
65
92
  "data-component": "guidance-guide-catalog",
66
- children: t.map((l) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
67
- h,
68
- {
69
- guide: l,
70
- onLaunchGuide: r,
71
- replayLabel: n,
72
- getStepCountLabel: d
73
- }
74
- ) }, l.id))
93
+ children: f
75
94
  }
76
95
  )
77
96
  }
78
- ) : /* @__PURE__ */ e(
97
+ ) : /* @__PURE__ */ t("div", { className: o, "data-component": "guidance-guide-catalog-embedded", children: /* @__PURE__ */ t(
79
98
  "div",
80
99
  {
81
- className: u(
82
- "guidance-help-center-scroll min-h-0 flex-1 overflow-y-auto px-4 pb-3 pt-3",
83
- m
84
- ),
85
- "data-component": "guidance-help-center-scroll",
86
- children: /* @__PURE__ */ e("p", { className: "rounded-lg border border-dashed border-border-subtle px-4 py-8 text-center text-sm text-content-secondary", children: i })
100
+ className: "flex flex-col gap-2",
101
+ "data-component": "guidance-guide-catalog",
102
+ children: f
87
103
  }
88
- );
104
+ ) });
89
105
  }
90
- function h({
91
- guide: t,
106
+ function g({
107
+ guide: e,
92
108
  onLaunchGuide: r,
93
- replayLabel: n,
94
- getStepCountLabel: i
109
+ replayLabel: i,
110
+ getLaunchLabel: c,
111
+ getGuideTypeLabel: d
95
112
  }) {
96
- return /* @__PURE__ */ e("article", { className: "rounded-lg border border-border-subtle bg-canvas-elevated px-3 py-2.5", children: /* @__PURE__ */ o("div", { className: "flex items-start justify-between gap-3", children: [
97
- /* @__PURE__ */ o("div", { className: "min-w-0 flex-1", children: [
98
- /* @__PURE__ */ o("div", { className: "flex min-w-0 items-center gap-2", children: [
99
- /* @__PURE__ */ e("h3", { className: "truncate text-sm font-semibold text-content-primary", children: t.metadata.title ?? t.id }),
100
- /* @__PURE__ */ e("span", { className: "shrink-0 rounded-full bg-brand-tint px-2 py-0.5 text-[11px] font-medium leading-none text-brand", children: i(t.steps.length) })
101
- ] }),
102
- t.metadata.description ? /* @__PURE__ */ e("p", { className: "mt-1 line-clamp-2 text-xs leading-relaxed text-content-secondary", children: t.metadata.description }) : null
103
- ] }),
104
- /* @__PURE__ */ e(
105
- g,
106
- {
107
- variant: "outline",
108
- size: "sm",
109
- className: "shrink-0",
110
- onClick: () => r(t.id),
111
- children: n
112
- }
113
- )
114
- ] }) });
113
+ const s = e.metadata.title ?? e.id, a = c?.(e) ?? i, o = d?.(e), l = v(e), p = o && l !== "whats-new" && !s.toLowerCase().includes(o.toLowerCase());
114
+ return /* @__PURE__ */ t(
115
+ y,
116
+ {
117
+ title: s,
118
+ description: e.metadata.description,
119
+ typeLabel: p ? o : void 0,
120
+ launchLabel: a,
121
+ guideType: l,
122
+ onLaunch: () => r(e.id)
123
+ }
124
+ );
115
125
  }
116
126
  export {
117
- R as GuideCatalog
127
+ z as GuideCatalog
118
128
  };
@@ -0,0 +1,6 @@
1
+ import { GuideManifest } from '../../../../lib/guidance';
2
+ type HelpCenterTranslate = (key: string, params?: Record<string, string | number>) => string;
3
+ export declare function getHelpCenterGuideTypeLabel(guide: GuideManifest, translate: HelpCenterTranslate): string;
4
+ export declare function getHelpCenterGuideLaunchLabel(guide: GuideManifest, translate: HelpCenterTranslate): string;
5
+ export declare function getHelpCenterGuideStepCountLabel(guide: GuideManifest, stepCount: number, translate: HelpCenterTranslate): string;
6
+ export {};