@app-studio/web 0.9.35 → 0.9.36

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.
@@ -19493,6 +19493,404 @@
19493
19493
  NavigationMenu.Content = NavigationMenuContent;
19494
19494
  NavigationMenu.Link = NavigationMenuLink;
19495
19495
 
19496
+ var _excluded$X = ["value", "max", "color", "backgroundColor", "height", "radius", "views", "themeMode"];
19497
+ var ProgressBarView = _ref => {
19498
+ var {
19499
+ value = 0,
19500
+ max = 100,
19501
+ color = 'theme.primary',
19502
+ backgroundColor = 'color.gray.200',
19503
+ height = 8,
19504
+ radius = 4,
19505
+ views,
19506
+ themeMode: elementMode
19507
+ } = _ref,
19508
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$X);
19509
+ var {
19510
+ getColor,
19511
+ themeMode
19512
+ } = appStudio.useTheme();
19513
+ var currentMode = elementMode ? elementMode : themeMode;
19514
+ var percentage = Math.min(100, Math.max(0, value / max * 100));
19515
+ var trackColor = getColor(backgroundColor, {
19516
+ themeMode: currentMode
19517
+ });
19518
+ var barColor = getColor(color, {
19519
+ themeMode: currentMode
19520
+ });
19521
+ return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
19522
+ role: "progressbar",
19523
+ "aria-valuenow": value,
19524
+ "aria-valuemin": 0,
19525
+ "aria-valuemax": max,
19526
+ width: "100%",
19527
+ height: height,
19528
+ backgroundColor: trackColor,
19529
+ borderRadius: radius,
19530
+ overflow: "hidden"
19531
+ }, views == null ? void 0 : views.container, props), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
19532
+ width: percentage + "%",
19533
+ height: "100%",
19534
+ backgroundColor: barColor,
19535
+ borderRadius: radius
19536
+ }, views == null ? void 0 : views.bar)));
19537
+ };
19538
+
19539
+ /**
19540
+ * ProgressBar component displays completion status of a task or process.
19541
+ */
19542
+ var ProgressBarComponent = props => (/*#__PURE__*/React__default.createElement(ProgressBarView, Object.assign({}, props)));
19543
+ var ProgressBar = ProgressBarComponent;
19544
+
19545
+ var getThemes$2 = themeMode => {
19546
+ return {
19547
+ default: {
19548
+ indicator: {
19549
+ backgroundColor: 'color.gray.400'
19550
+ },
19551
+ label: {
19552
+ color: 'color.gray.700'
19553
+ }
19554
+ },
19555
+ info: {
19556
+ indicator: {
19557
+ backgroundColor: 'color.blue.500'
19558
+ },
19559
+ label: {
19560
+ color: 'color.blue.700'
19561
+ }
19562
+ },
19563
+ success: {
19564
+ indicator: {
19565
+ backgroundColor: 'color.green.500'
19566
+ },
19567
+ label: {
19568
+ color: 'color.green.700'
19569
+ }
19570
+ },
19571
+ warning: {
19572
+ indicator: {
19573
+ backgroundColor: 'color.orange.500'
19574
+ },
19575
+ label: {
19576
+ color: 'color.orange.700'
19577
+ }
19578
+ },
19579
+ error: {
19580
+ indicator: {
19581
+ backgroundColor: 'color.red.500'
19582
+ },
19583
+ label: {
19584
+ color: 'color.red.700'
19585
+ }
19586
+ }
19587
+ };
19588
+ };
19589
+
19590
+ var _excluded$Y = ["label", "status", "views", "themeMode"];
19591
+ var StatusIndicatorView = _ref => {
19592
+ var {
19593
+ label,
19594
+ status = 'default',
19595
+ views,
19596
+ themeMode: elementMode
19597
+ } = _ref,
19598
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);
19599
+ var {
19600
+ themeMode
19601
+ } = appStudio.useTheme();
19602
+ var themes = getThemes$2();
19603
+ return /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19604
+ alignItems: "center",
19605
+ gap: 8,
19606
+ role: "status-indicator"
19607
+ }, views == null ? void 0 : views.container, props), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
19608
+ role: "status-dot",
19609
+ width: "8px",
19610
+ height: "8px",
19611
+ borderRadius: "50%"
19612
+ }, themes[status].indicator, views == null ? void 0 : views.indicator)), label && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19613
+ role: "status-label",
19614
+ fontSize: "14px",
19615
+ lineHeight: "20px"
19616
+ }, themes[status].label, views == null ? void 0 : views.label), label)));
19617
+ };
19618
+
19619
+ var StatusIndicator = props => (/*#__PURE__*/React__default.createElement(StatusIndicatorView, Object.assign({}, props)));
19620
+
19621
+ var getOKRTheme = mode => {
19622
+ var isDark = mode === 'dark';
19623
+ return {
19624
+ container: {
19625
+ width: '100%',
19626
+ gap: 16
19627
+ },
19628
+ objectiveCard: {
19629
+ backgroundColor: isDark ? 'rgba(15, 23, 42, 0.6)' : 'color.white',
19630
+ borderColor: isDark ? 'rgba(148, 163, 184, 0.24)' : 'color.gray.200',
19631
+ borderWidth: '1px',
19632
+ borderStyle: 'solid',
19633
+ borderRadius: 16,
19634
+ padding: 24,
19635
+ gap: 20
19636
+ },
19637
+ tag: {
19638
+ display: 'inline-flex',
19639
+ alignItems: 'center',
19640
+ padding: '4px 10px',
19641
+ borderRadius: 999,
19642
+ backgroundColor: isDark ? 'rgba(148, 163, 184, 0.16)' : 'color.gray.100'
19643
+ },
19644
+ keyResultItem: {
19645
+ padding: 16,
19646
+ borderRadius: 12,
19647
+ borderWidth: '1px',
19648
+ borderStyle: 'solid',
19649
+ borderColor: isDark ? 'rgba(148, 163, 184, 0.18)' : 'color.gray.200',
19650
+ backgroundColor: isDark ? 'rgba(15, 23, 42, 0.35)' : 'color.gray.50',
19651
+ gap: 12
19652
+ },
19653
+ divider: {
19654
+ height: 1,
19655
+ backgroundColor: isDark ? 'rgba(148, 163, 184, 0.24)' : 'color.gray.200',
19656
+ width: '100%'
19657
+ }
19658
+ };
19659
+ };
19660
+ var STATUS_METADATA = {
19661
+ notStarted: {
19662
+ indicator: 'info',
19663
+ label: 'Not started'
19664
+ },
19665
+ onTrack: {
19666
+ indicator: 'success',
19667
+ label: 'On track'
19668
+ },
19669
+ atRisk: {
19670
+ indicator: 'warning',
19671
+ label: 'At risk'
19672
+ },
19673
+ offTrack: {
19674
+ indicator: 'error',
19675
+ label: 'Off track'
19676
+ },
19677
+ achieved: {
19678
+ indicator: 'success',
19679
+ label: 'Achieved'
19680
+ }
19681
+ };
19682
+ var deriveStatusFromProgress = progress => {
19683
+ if (progress >= 100) {
19684
+ return 'achieved';
19685
+ }
19686
+ if (progress >= 70) {
19687
+ return 'onTrack';
19688
+ }
19689
+ if (progress >= 40) {
19690
+ return 'atRisk';
19691
+ }
19692
+ if (progress > 0) {
19693
+ return 'offTrack';
19694
+ }
19695
+ return 'notStarted';
19696
+ };
19697
+ var clampProgress = value => {
19698
+ if (typeof value !== 'number' || Number.isNaN(value)) {
19699
+ return 0;
19700
+ }
19701
+ return Math.max(0, Math.min(100, Math.round(value)));
19702
+ };
19703
+
19704
+ var formatPercentage = value => value + "%";
19705
+ var formatConfidence = confidence => {
19706
+ if (!confidence) {
19707
+ return undefined;
19708
+ }
19709
+ return confidence.charAt(0).toUpperCase() + confidence.slice(1);
19710
+ };
19711
+ var getObjectiveProgress = objective => {
19712
+ if (typeof objective.progress === 'number') {
19713
+ return clampProgress(objective.progress);
19714
+ }
19715
+ if (!objective.keyResults.length) {
19716
+ return 0;
19717
+ }
19718
+ var total = objective.keyResults.reduce((acc, keyResult) => {
19719
+ var _keyResult$progress;
19720
+ return acc + ((_keyResult$progress = keyResult.progress) != null ? _keyResult$progress : 0);
19721
+ }, 0);
19722
+ return clampProgress(total / objective.keyResults.length);
19723
+ };
19724
+ var renderStatusIndicator = (status, themeMode, views) => {
19725
+ var metadata = STATUS_METADATA[status];
19726
+ return /*#__PURE__*/React__default.createElement(StatusIndicator, {
19727
+ themeMode: themeMode,
19728
+ status: metadata.indicator,
19729
+ label: metadata.label,
19730
+ views: views
19731
+ });
19732
+ };
19733
+ var OKRView = _ref => {
19734
+ var {
19735
+ objectives,
19736
+ themeMode: elementMode,
19737
+ views,
19738
+ onKeyResultClick,
19739
+ renderObjectiveFooter,
19740
+ renderKeyResultFooter
19741
+ } = _ref;
19742
+ var {
19743
+ themeMode
19744
+ } = appStudio.useTheme();
19745
+ var currentMode = elementMode || themeMode || 'light';
19746
+ var theme = getOKRTheme(currentMode);
19747
+ var secondaryTextColor = currentMode === 'dark' ? 'color.gray.200' : 'color.gray.600';
19748
+ var subtleTextColor = currentMode === 'dark' ? 'color.gray.300' : 'color.gray.500';
19749
+ var tagTextColor = currentMode === 'dark' ? 'color.gray.100' : 'color.gray.700';
19750
+ return /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({}, theme.container, views == null ? void 0 : views.container), objectives.map(objective => {
19751
+ var _objective$status, _objective$tags, _views$objectiveProgr, _views$objectiveProgr2, _views$objectiveProgr3, _views$objectiveProgr4;
19752
+ var objectiveProgress = getObjectiveProgress(objective);
19753
+ var objectiveStatus = (_objective$status = objective.status) != null ? _objective$status : deriveStatusFromProgress(objectiveProgress);
19754
+ var objectiveFooter = renderObjectiveFooter == null ? void 0 : renderObjectiveFooter(objective);
19755
+ return /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({
19756
+ key: objective.id
19757
+ }, theme.objectiveCard, views == null ? void 0 : views.objectiveCard), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19758
+ justifyContent: "space-between",
19759
+ alignItems: "flex-start",
19760
+ flexWrap: "wrap",
19761
+ gap: 16
19762
+ }, views == null ? void 0 : views.objectiveHeader), /*#__PURE__*/React__default.createElement(appStudio.Vertical, {
19763
+ gap: 10,
19764
+ minWidth: 240
19765
+ }, /*#__PURE__*/React__default.createElement(Text, Object.assign({
19766
+ size: "lg",
19767
+ weight: "semiBold"
19768
+ }, views == null ? void 0 : views.objectiveTitle), objective.title), objective.description && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19769
+ size: "sm",
19770
+ color: secondaryTextColor
19771
+ }, views == null ? void 0 : views.objectiveDescription), objective.description)), (_objective$tags = objective.tags) != null && _objective$tags.length ? (/*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19772
+ gap: 8,
19773
+ flexWrap: "wrap"
19774
+ }, views == null ? void 0 : views.objectiveTags), objective.tags.map(tag => (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
19775
+ key: tag
19776
+ }, theme.tag, views == null ? void 0 : views.tag), /*#__PURE__*/React__default.createElement(Text, Object.assign({
19777
+ size: "xs",
19778
+ weight: "medium",
19779
+ color: tagTextColor
19780
+ }, views == null ? void 0 : views.tagText), tag)))))) : null), /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({
19781
+ gap: 8,
19782
+ alignItems: "flex-end",
19783
+ minWidth: 160
19784
+ }, views == null ? void 0 : views.objectiveMeta), objective.owner && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19785
+ size: "sm",
19786
+ color: secondaryTextColor
19787
+ }, views == null ? void 0 : views.objectiveOwner), "Owner: ", objective.owner)), objective.timeframe && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19788
+ size: "sm",
19789
+ color: subtleTextColor
19790
+ }, views == null ? void 0 : views.objectiveTimeframe), objective.timeframe)), renderStatusIndicator(objectiveStatus, currentMode, views == null ? void 0 : views.objectiveStatus))), /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({
19791
+ gap: 8
19792
+ }, views == null ? void 0 : views.objectiveProgressSection), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, {
19793
+ justifyContent: "space-between",
19794
+ alignItems: "center"
19795
+ }, /*#__PURE__*/React__default.createElement(Text, Object.assign({
19796
+ size: "sm",
19797
+ color: secondaryTextColor
19798
+ }, views == null ? void 0 : views.objectiveProgressLabel), "Progress"), /*#__PURE__*/React__default.createElement(Text, Object.assign({
19799
+ size: "sm",
19800
+ weight: "semiBold"
19801
+ }, views == null ? void 0 : views.objectiveProgressValue), formatPercentage(objectiveProgress))), /*#__PURE__*/React__default.createElement(ProgressBar, {
19802
+ value: objectiveProgress,
19803
+ max: 100,
19804
+ views: {
19805
+ container: Object.assign({
19806
+ width: '100%'
19807
+ }, (_views$objectiveProgr = views == null || (_views$objectiveProgr2 = views.objectiveProgressBar) == null ? void 0 : _views$objectiveProgr2.container) != null ? _views$objectiveProgr : {}),
19808
+ bar: Object.assign({}, (_views$objectiveProgr3 = views == null || (_views$objectiveProgr4 = views.objectiveProgressBar) == null ? void 0 : _views$objectiveProgr4.bar) != null ? _views$objectiveProgr3 : {})
19809
+ }
19810
+ })), /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({
19811
+ gap: 16
19812
+ }, views == null ? void 0 : views.keyResultList), objective.keyResults.map((keyResult, index) => {
19813
+ var _keyResult$status, _keyResult$tags, _views$keyResultProgr, _views$keyResultProgr2, _views$keyResultProgr3, _views$keyResultProgr4;
19814
+ var progress = clampProgress(keyResult.progress);
19815
+ var keyResultStatus = (_keyResult$status = keyResult.status) != null ? _keyResult$status : deriveStatusFromProgress(progress);
19816
+ var keyResultFooter = renderKeyResultFooter == null ? void 0 : renderKeyResultFooter(keyResult, objective);
19817
+ var showDivider = index < objective.keyResults.length - 1;
19818
+ return /*#__PURE__*/React__default.createElement(appStudio.Vertical, {
19819
+ key: keyResult.id,
19820
+ gap: 12
19821
+ }, /*#__PURE__*/React__default.createElement(appStudio.Vertical, Object.assign({
19822
+ role: onKeyResultClick ? 'button' : undefined,
19823
+ cursor: onKeyResultClick ? 'pointer' : undefined,
19824
+ onClick: onKeyResultClick ? () => onKeyResultClick(keyResult, objective) : undefined
19825
+ }, theme.keyResultItem, views == null ? void 0 : views.keyResultItem), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19826
+ justifyContent: "space-between",
19827
+ alignItems: "flex-start",
19828
+ flexWrap: "wrap",
19829
+ gap: 16
19830
+ }, views == null ? void 0 : views.keyResultHeader), /*#__PURE__*/React__default.createElement(appStudio.Vertical, {
19831
+ gap: 8,
19832
+ minWidth: 220
19833
+ }, /*#__PURE__*/React__default.createElement(Text, Object.assign({
19834
+ size: "md",
19835
+ weight: "medium"
19836
+ }, views == null ? void 0 : views.keyResultTitle), keyResult.title), keyResult.description && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19837
+ size: "sm",
19838
+ color: secondaryTextColor
19839
+ }, views == null ? void 0 : views.keyResultDescription), keyResult.description)), (keyResult.metric || keyResult.target || keyResult.current || keyResult.confidence || keyResult.lastUpdated) && (/*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19840
+ gap: 12,
19841
+ flexWrap: "wrap"
19842
+ }, views == null ? void 0 : views.keyResultMeta), keyResult.metric && (/*#__PURE__*/React__default.createElement(Text, {
19843
+ size: "xs",
19844
+ color: secondaryTextColor
19845
+ }, "Metric: ", keyResult.metric)), keyResult.current && (/*#__PURE__*/React__default.createElement(Text, {
19846
+ size: "xs",
19847
+ color: secondaryTextColor
19848
+ }, "Current: ", keyResult.current)), keyResult.target && (/*#__PURE__*/React__default.createElement(Text, {
19849
+ size: "xs",
19850
+ color: secondaryTextColor
19851
+ }, "Target: ", keyResult.target)), keyResult.confidence && (/*#__PURE__*/React__default.createElement(Text, {
19852
+ size: "xs",
19853
+ color: secondaryTextColor
19854
+ }, "Confidence:", ' ', formatConfidence(keyResult.confidence))), keyResult.lastUpdated && (/*#__PURE__*/React__default.createElement(Text, {
19855
+ size: "xs",
19856
+ color: subtleTextColor
19857
+ }, "Updated: ", keyResult.lastUpdated)))), (_keyResult$tags = keyResult.tags) != null && _keyResult$tags.length ? (/*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19858
+ gap: 8,
19859
+ flexWrap: "wrap"
19860
+ }, views == null ? void 0 : views.keyResultTags), keyResult.tags.map(tag => (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
19861
+ key: tag
19862
+ }, theme.tag, views == null ? void 0 : views.keyResultTag), /*#__PURE__*/React__default.createElement(Text, Object.assign({
19863
+ size: "xs",
19864
+ weight: "medium",
19865
+ color: tagTextColor
19866
+ }, views == null ? void 0 : views.keyResultTagText), tag)))))) : null), /*#__PURE__*/React__default.createElement(appStudio.Vertical, {
19867
+ gap: 8,
19868
+ alignItems: "flex-end"
19869
+ }, keyResult.owner && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
19870
+ size: "xs",
19871
+ color: secondaryTextColor
19872
+ }, views == null ? void 0 : views.keyResultOwner), "Owner: ", keyResult.owner)), renderStatusIndicator(keyResultStatus, currentMode, views == null ? void 0 : views.keyResultStatus))), /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
19873
+ alignItems: "center",
19874
+ gap: 12
19875
+ }, views == null ? void 0 : views.keyResultProgressSection), /*#__PURE__*/React__default.createElement(ProgressBar, {
19876
+ value: progress,
19877
+ max: 100,
19878
+ views: {
19879
+ container: Object.assign({
19880
+ width: '100%'
19881
+ }, (_views$keyResultProgr = views == null || (_views$keyResultProgr2 = views.keyResultProgressBar) == null ? void 0 : _views$keyResultProgr2.container) != null ? _views$keyResultProgr : {}),
19882
+ bar: Object.assign({}, (_views$keyResultProgr3 = views == null || (_views$keyResultProgr4 = views.keyResultProgressBar) == null ? void 0 : _views$keyResultProgr4.bar) != null ? _views$keyResultProgr3 : {})
19883
+ }
19884
+ }), /*#__PURE__*/React__default.createElement(Text, Object.assign({
19885
+ size: "xs",
19886
+ weight: "semiBold"
19887
+ }, views == null ? void 0 : views.keyResultProgressValue), formatPercentage(progress))), keyResultFooter ? (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({}, views == null ? void 0 : views.footer), keyResultFooter)) : null), showDivider ? /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({}, theme.divider)) : null);
19888
+ })), objectiveFooter ? (/*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({}, views == null ? void 0 : views.footer), objectiveFooter)) : null);
19889
+ }));
19890
+ };
19891
+
19892
+ var OKR = props => /*#__PURE__*/React__default.createElement(OKRView, Object.assign({}, props));
19893
+
19496
19894
  var defaultStyles = {};
19497
19895
  // Create a context that includes both styles and the onClick function
19498
19896
  var TableContext = /*#__PURE__*/React.createContext({
@@ -20275,7 +20673,7 @@
20275
20673
  })
20276
20674
  };
20277
20675
 
20278
- var _excluded$X = ["text", "typingSpeed", "pauseTime", "onComplete", "showCursor", "cursorColor", "textStyle", "as"];
20676
+ var _excluded$Z = ["text", "typingSpeed", "pauseTime", "onComplete", "showCursor", "cursorColor", "textStyle", "as"];
20279
20677
  /**
20280
20678
  * A component that creates a typewriter effect for text
20281
20679
  */
@@ -20289,7 +20687,7 @@
20289
20687
  cursorColor = 'currentColor',
20290
20688
  textStyle
20291
20689
  } = _ref,
20292
- props = _objectWithoutPropertiesLoose(_ref, _excluded$X);
20690
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$Z);
20293
20691
  // Convert text to array if it's a string
20294
20692
  var textArray = Array.isArray(text) ? text : [text];
20295
20693
  // State for the currently displayed text
@@ -20356,7 +20754,7 @@
20356
20754
  }))))));
20357
20755
  };
20358
20756
 
20359
- var _excluded$Y = ["children", "highlightText", "highlightStyle", "highlightColor", "highlightSecondaryColor", "size", "responsive", "centered", "views", "highlightAnimate", "animate", "animationLoop", "highlightAnimationLoop", "highlightTypewriter", "highlightTypewriterDuration"];
20757
+ var _excluded$_ = ["children", "highlightText", "highlightStyle", "highlightColor", "highlightSecondaryColor", "size", "responsive", "centered", "views", "highlightAnimate", "animate", "animationLoop", "highlightAnimationLoop", "highlightTypewriter", "highlightTypewriterDuration"];
20360
20758
  function escapeRegExp(string) {
20361
20759
  return string.replace(/[.*+?^${}()|[\\]\\/g, '\\$&');
20362
20760
  }
@@ -20378,7 +20776,7 @@
20378
20776
  highlightTypewriter: propHighlightTypewriter = false,
20379
20777
  highlightTypewriterDuration = 3000
20380
20778
  } = _ref,
20381
- props = _objectWithoutPropertiesLoose(_ref, _excluded$Y);
20779
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$_);
20382
20780
  var {
20383
20781
  ref,
20384
20782
  inView
@@ -20653,7 +21051,7 @@
20653
21051
  }
20654
21052
  });
20655
21053
 
20656
- var _excluded$Z = ["children", "shape", "variant", "isHovered", "setIsHovered", "isDisabled", "isToggle", "setIsToggled", "onToggle", "views", "backgroundColor", "color", "themeMode"];
21054
+ var _excluded$$ = ["children", "shape", "variant", "isHovered", "setIsHovered", "isDisabled", "isToggle", "setIsToggled", "onToggle", "views", "backgroundColor", "color", "themeMode"];
20657
21055
  var ToggleView = _ref => {
20658
21056
  var _ref2;
20659
21057
  var {
@@ -20673,7 +21071,7 @@
20673
21071
  // 2nd candidate for main color
20674
21072
  themeMode: elementMode
20675
21073
  } = _ref,
20676
- props = _objectWithoutPropertiesLoose(_ref, _excluded$Z);
21074
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$$);
20677
21075
  /* theme helpers */
20678
21076
  var {
20679
21077
  getColor,
@@ -20717,7 +21115,7 @@
20717
21115
  }, props, views == null ? void 0 : views.container), children);
20718
21116
  };
20719
21117
 
20720
- var _excluded$_ = ["children", "shape", "variant", "isDisabled", "isToggled", "onToggle"];
21118
+ var _excluded$10 = ["children", "shape", "variant", "isDisabled", "isToggled", "onToggle"];
20721
21119
  // Destructuring properties from ToggleProps to be used within the ToggleComponent.
20722
21120
  var ToggleComponent = _ref => {
20723
21121
  var {
@@ -20729,7 +21127,7 @@
20729
21127
  isToggled = false,
20730
21128
  onToggle
20731
21129
  } = _ref,
20732
- props = _objectWithoutPropertiesLoose(_ref, _excluded$_);
21130
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$10);
20733
21131
  // Initializing toggle state and set state functions using the custom hook useToggleState.
20734
21132
  var {
20735
21133
  isHovered,
@@ -21064,7 +21462,7 @@
21064
21462
  }
21065
21463
  };
21066
21464
 
21067
- var _excluded$$ = ["children", "views"],
21465
+ var _excluded$11 = ["children", "views"],
21068
21466
  _excluded2$f = ["items", "side", "align", "views"],
21069
21467
  _excluded3$9 = ["item", "views"],
21070
21468
  _excluded4$8 = ["views"],
@@ -21105,7 +21503,7 @@
21105
21503
  children,
21106
21504
  views
21107
21505
  } = _ref2,
21108
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$$);
21506
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$11);
21109
21507
  var {
21110
21508
  isOpen,
21111
21509
  setIsOpen,
@@ -21358,7 +21756,7 @@
21358
21756
  }));
21359
21757
  };
21360
21758
 
21361
- var _excluded$10 = ["trigger", "items", "size", "variant", "side", "align", "defaultOpen", "views"];
21759
+ var _excluded$12 = ["trigger", "items", "size", "variant", "side", "align", "defaultOpen", "views"];
21362
21760
  /**
21363
21761
  * DropdownMenu component for displaying a menu when clicking on a trigger element.
21364
21762
  */
@@ -21373,7 +21771,7 @@
21373
21771
  defaultOpen = false,
21374
21772
  views
21375
21773
  } = _ref,
21376
- props = _objectWithoutPropertiesLoose(_ref, _excluded$10);
21774
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$12);
21377
21775
  var {
21378
21776
  isOpen,
21379
21777
  setIsOpen,
@@ -21787,7 +22185,7 @@
21787
22185
  category: 'neutral'
21788
22186
  }];
21789
22187
 
21790
- var _excluded$11 = ["id", "name", "label", "placeholder", "helperText", "views", "size", "shape", "variant", "error", "isDisabled", "isReadOnly", "predefinedColors", "showCustomInput", "showRecentColors", "isOpen", "selectedColor", "recentColors", "customColor", "handleToggle", "handleColorSelect", "handleCustomColorChange", "handleCustomColorSubmit", "triggerRef", "dropdownRef"];
22188
+ var _excluded$13 = ["id", "name", "label", "placeholder", "helperText", "views", "size", "shape", "variant", "error", "isDisabled", "isReadOnly", "predefinedColors", "showCustomInput", "showRecentColors", "isOpen", "selectedColor", "recentColors", "customColor", "handleToggle", "handleColorSelect", "handleCustomColorChange", "handleCustomColorSubmit", "triggerRef", "dropdownRef"];
21791
22189
  var ColorPickerView = _ref => {
21792
22190
  var {
21793
22191
  // Basic props
@@ -21822,7 +22220,7 @@
21822
22220
  dropdownRef
21823
22221
  // Other props
21824
22222
  } = _ref,
21825
- props = _objectWithoutPropertiesLoose(_ref, _excluded$11);
22223
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$13);
21826
22224
  var {
21827
22225
  getColor
21828
22226
  } = appStudio.useTheme();
@@ -24152,7 +24550,7 @@
24152
24550
  };
24153
24551
  };
24154
24552
 
24155
- var _excluded$12 = ["id", "name", "label", "placeholder", "helperText", "views", "size", "shape", "variant", "error", "isDisabled", "isReadOnly", "showSearch", "showCategories", "showRecentEmojis", "enabledCategories", "isOpen", "selectedEmoji", "recentEmojis", "searchQuery", "activeCategory", "filteredEmojis", "handleToggle", "handleEmojiSelect", "handleSearchChange", "handleCategoryChange", "triggerRef", "dropdownRef"];
24553
+ var _excluded$14 = ["id", "name", "label", "placeholder", "helperText", "views", "size", "shape", "variant", "error", "isDisabled", "isReadOnly", "showSearch", "showCategories", "showRecentEmojis", "enabledCategories", "isOpen", "selectedEmoji", "recentEmojis", "searchQuery", "activeCategory", "filteredEmojis", "handleToggle", "handleEmojiSelect", "handleSearchChange", "handleCategoryChange", "triggerRef", "dropdownRef"];
24156
24554
  var EmojiPickerView = _ref => {
24157
24555
  var {
24158
24556
  // Basic props
@@ -24190,7 +24588,7 @@
24190
24588
  dropdownRef
24191
24589
  // Other props
24192
24590
  } = _ref,
24193
- props = _objectWithoutPropertiesLoose(_ref, _excluded$12);
24591
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$14);
24194
24592
  var {
24195
24593
  getColor
24196
24594
  } = appStudio.useTheme();
@@ -24379,7 +24777,7 @@
24379
24777
  }
24380
24778
  };
24381
24779
 
24382
- var _excluded$13 = ["children", "orientation", "size", "variant", "views"];
24780
+ var _excluded$15 = ["children", "orientation", "size", "variant", "views"];
24383
24781
  // Create context for the Menubar
24384
24782
  var MenubarContext = /*#__PURE__*/React.createContext({
24385
24783
  activeMenuId: null,
@@ -24416,7 +24814,7 @@
24416
24814
  variant = 'default',
24417
24815
  views
24418
24816
  } = _ref2,
24419
- props = _objectWithoutPropertiesLoose(_ref2, _excluded$13);
24817
+ props = _objectWithoutPropertiesLoose(_ref2, _excluded$15);
24420
24818
  var Container = orientation === 'horizontal' ? appStudio.Horizontal : appStudio.Vertical;
24421
24819
  return /*#__PURE__*/React__default.createElement(Container, Object.assign({
24422
24820
  role: "menubar",
@@ -24736,7 +25134,7 @@
24736
25134
  })))))));
24737
25135
  };
24738
25136
 
24739
- var _excluded$14 = ["items", "orientation", "size", "variant", "defaultActiveMenuId", "defaultOpenMenuId", "views"];
25137
+ var _excluded$16 = ["items", "orientation", "size", "variant", "defaultActiveMenuId", "defaultOpenMenuId", "views"];
24740
25138
  /**
24741
25139
  * Menubar component for creating horizontal or vertical menu bars with dropdown menus.
24742
25140
  */
@@ -24750,7 +25148,7 @@
24750
25148
  defaultOpenMenuId = null,
24751
25149
  views
24752
25150
  } = _ref,
24753
- props = _objectWithoutPropertiesLoose(_ref, _excluded$14);
25151
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$16);
24754
25152
  var {
24755
25153
  activeMenuId,
24756
25154
  setActiveMenuId,
@@ -24932,7 +25330,7 @@
24932
25330
  }
24933
25331
  };
24934
25332
 
24935
- var _excluded$15 = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "visiblePageNumbers", "views"];
25333
+ var _excluded$17 = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "visiblePageNumbers", "views"];
24936
25334
  var PaginationView = _ref => {
24937
25335
  var {
24938
25336
  currentPage,
@@ -24963,7 +25361,7 @@
24963
25361
  visiblePageNumbers,
24964
25362
  views
24965
25363
  } = _ref,
24966
- props = _objectWithoutPropertiesLoose(_ref, _excluded$15);
25364
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$17);
24967
25365
  var handlePageChange = page => {
24968
25366
  if (page < 1 || page > totalPages || page === currentPage) {
24969
25367
  return;
@@ -25082,7 +25480,7 @@
25082
25480
  }, option.label))))));
25083
25481
  };
25084
25482
 
25085
- var _excluded$16 = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "views"];
25483
+ var _excluded$18 = ["currentPage", "totalPages", "onPageChange", "pageSize", "pageSizeOptions", "onPageSizeChange", "showPageSizeSelector", "showPageInfo", "maxPageButtons", "showFirstLastButtons", "size", "variant", "shape", "views"];
25086
25484
  /**
25087
25485
  * Pagination component for navigating through pages of content.
25088
25486
  */
@@ -25103,7 +25501,7 @@
25103
25501
  shape = 'rounded',
25104
25502
  views
25105
25503
  } = _ref,
25106
- props = _objectWithoutPropertiesLoose(_ref, _excluded$16);
25504
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$18);
25107
25505
  var {
25108
25506
  visiblePageNumbers
25109
25507
  } = usePaginationState(currentPage, totalPages, maxPageButtons);
@@ -25127,55 +25525,6 @@
25127
25525
  };
25128
25526
  var Pagination = PaginationComponent;
25129
25527
 
25130
- var _excluded$17 = ["value", "max", "color", "backgroundColor", "height", "radius", "views", "themeMode"];
25131
- var ProgressBarView = _ref => {
25132
- var {
25133
- value = 0,
25134
- max = 100,
25135
- color = 'theme.primary',
25136
- backgroundColor = 'color.gray.200',
25137
- height = 8,
25138
- radius = 4,
25139
- views,
25140
- themeMode: elementMode
25141
- } = _ref,
25142
- props = _objectWithoutPropertiesLoose(_ref, _excluded$17);
25143
- var {
25144
- getColor,
25145
- themeMode
25146
- } = appStudio.useTheme();
25147
- var currentMode = elementMode ? elementMode : themeMode;
25148
- var percentage = Math.min(100, Math.max(0, value / max * 100));
25149
- var trackColor = getColor(backgroundColor, {
25150
- themeMode: currentMode
25151
- });
25152
- var barColor = getColor(color, {
25153
- themeMode: currentMode
25154
- });
25155
- return /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
25156
- role: "progressbar",
25157
- "aria-valuenow": value,
25158
- "aria-valuemin": 0,
25159
- "aria-valuemax": max,
25160
- width: "100%",
25161
- height: height,
25162
- backgroundColor: trackColor,
25163
- borderRadius: radius,
25164
- overflow: "hidden"
25165
- }, views == null ? void 0 : views.container, props), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
25166
- width: percentage + "%",
25167
- height: "100%",
25168
- backgroundColor: barColor,
25169
- borderRadius: radius
25170
- }, views == null ? void 0 : views.bar)));
25171
- };
25172
-
25173
- /**
25174
- * ProgressBar component displays completion status of a task or process.
25175
- */
25176
- var ProgressBarComponent = props => (/*#__PURE__*/React__default.createElement(ProgressBarView, Object.assign({}, props)));
25177
- var ProgressBar = ProgressBarComponent;
25178
-
25179
25528
  /**
25180
25529
  * Separator Styles
25181
25530
  *
@@ -25229,7 +25578,7 @@
25229
25578
  }
25230
25579
  };
25231
25580
 
25232
- var _excluded$18 = ["orientation", "variant", "thickness", "color", "spacing", "label", "decorative", "views", "themeMode"];
25581
+ var _excluded$19 = ["orientation", "variant", "thickness", "color", "spacing", "label", "decorative", "views", "themeMode"];
25233
25582
  var SeparatorView = _ref => {
25234
25583
  var {
25235
25584
  orientation = 'horizontal',
@@ -25241,7 +25590,7 @@
25241
25590
  decorative = false,
25242
25591
  views
25243
25592
  } = _ref,
25244
- props = _objectWithoutPropertiesLoose(_ref, _excluded$18);
25593
+ props = _objectWithoutPropertiesLoose(_ref, _excluded$19);
25245
25594
  // Access theme if needed for future enhancements
25246
25595
  var {
25247
25596
  themeMode
@@ -25309,7 +25658,7 @@
25309
25658
  var Separator = SeparatorComponent;
25310
25659
  var Divider = SeparatorComponent;
25311
25660
 
25312
- var _excluded$19 = ["isSupported", "isSharing", "onShare", "label", "children", "icon", "size", "isDisabled", "isLoading", "iconPosition", "disableWhenUnsupported"];
25661
+ var _excluded$1a = ["isSupported", "isSharing", "onShare", "label", "children", "icon", "size", "isDisabled", "isLoading", "iconPosition", "disableWhenUnsupported"];
25313
25662
  var ICON_SIZE_MAP = {
25314
25663
  xs: 12,
25315
25664
  sm: 14,
@@ -25332,7 +25681,7 @@
25332
25681
  iconPosition,
25333
25682
  disableWhenUnsupported = true
25334
25683
  } = _ref,
25335
- rest = _objectWithoutPropertiesLoose(_ref, _excluded$19);
25684
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1a);
25336
25685
  var resolvedSize = size != null ? size : 'md';
25337
25686
  var resolvedIcon = icon != null ? icon : (/*#__PURE__*/React__default.createElement(ShareIcon, {
25338
25687
  widthHeight: ICON_SIZE_MAP[resolvedSize],
@@ -25434,14 +25783,14 @@
25434
25783
  };
25435
25784
  };
25436
25785
 
25437
- var _excluded$1a = ["shareData", "onShareStart", "onShareSuccess", "onShareCancel", "onShareError", "onUnsupported", "onClick"];
25786
+ var _excluded$1b = ["shareData", "onShareStart", "onShareSuccess", "onShareCancel", "onShareError", "onUnsupported", "onClick"];
25438
25787
  var ShareButtonComponent = props => {
25439
25788
  var {
25440
25789
  isSupported,
25441
25790
  isSharing,
25442
25791
  handleShare
25443
25792
  } = useShareButton(props);
25444
- var viewProps = _objectWithoutPropertiesLoose(props, _excluded$1a);
25793
+ var viewProps = _objectWithoutPropertiesLoose(props, _excluded$1b);
25445
25794
  return /*#__PURE__*/React__default.createElement(ShareButtonView, Object.assign({}, viewProps, {
25446
25795
  isSupported: isSupported,
25447
25796
  isSharing: isSharing,
@@ -25450,82 +25799,6 @@
25450
25799
  };
25451
25800
  var ShareButton = ShareButtonComponent;
25452
25801
 
25453
- var getThemes$2 = themeMode => {
25454
- return {
25455
- default: {
25456
- indicator: {
25457
- backgroundColor: 'color.gray.400'
25458
- },
25459
- label: {
25460
- color: 'color.gray.700'
25461
- }
25462
- },
25463
- info: {
25464
- indicator: {
25465
- backgroundColor: 'color.blue.500'
25466
- },
25467
- label: {
25468
- color: 'color.blue.700'
25469
- }
25470
- },
25471
- success: {
25472
- indicator: {
25473
- backgroundColor: 'color.green.500'
25474
- },
25475
- label: {
25476
- color: 'color.green.700'
25477
- }
25478
- },
25479
- warning: {
25480
- indicator: {
25481
- backgroundColor: 'color.orange.500'
25482
- },
25483
- label: {
25484
- color: 'color.orange.700'
25485
- }
25486
- },
25487
- error: {
25488
- indicator: {
25489
- backgroundColor: 'color.red.500'
25490
- },
25491
- label: {
25492
- color: 'color.red.700'
25493
- }
25494
- }
25495
- };
25496
- };
25497
-
25498
- var _excluded$1b = ["label", "status", "views", "themeMode"];
25499
- var StatusIndicatorView = _ref => {
25500
- var {
25501
- label,
25502
- status = 'default',
25503
- views,
25504
- themeMode: elementMode
25505
- } = _ref,
25506
- props = _objectWithoutPropertiesLoose(_ref, _excluded$1b);
25507
- var {
25508
- themeMode
25509
- } = appStudio.useTheme();
25510
- var themes = getThemes$2();
25511
- return /*#__PURE__*/React__default.createElement(appStudio.Horizontal, Object.assign({
25512
- alignItems: "center",
25513
- gap: 8,
25514
- role: "status-indicator"
25515
- }, views == null ? void 0 : views.container, props), /*#__PURE__*/React__default.createElement(appStudio.View, Object.assign({
25516
- role: "status-dot",
25517
- width: "8px",
25518
- height: "8px",
25519
- borderRadius: "50%"
25520
- }, themes[status].indicator, views == null ? void 0 : views.indicator)), label && (/*#__PURE__*/React__default.createElement(Text, Object.assign({
25521
- role: "status-label",
25522
- fontSize: "14px",
25523
- lineHeight: "20px"
25524
- }, themes[status].label, views == null ? void 0 : views.label), label)));
25525
- };
25526
-
25527
- var StatusIndicator = props => (/*#__PURE__*/React__default.createElement(StatusIndicatorView, Object.assign({}, props)));
25528
-
25529
25802
  var useSidebarState = function useSidebarState(defaultExpanded, expanded, onExpandedChange, breakpoint) {
25530
25803
  if (defaultExpanded === void 0) {
25531
25804
  defaultExpanded = true;
@@ -37271,6 +37544,7 @@
37271
37544
  exports.MoonIcon = MoonIcon;
37272
37545
  exports.NavigationMenu = NavigationMenu;
37273
37546
  exports.NotificationIcon = NotificationIcon;
37547
+ exports.OKR = OKR;
37274
37548
  exports.OTPInput = OTPInput;
37275
37549
  exports.OpenEyeIcon = OpenEyeIcon;
37276
37550
  exports.Pagination = Pagination;