@buoy-gg/redux 7.0.31 → 7.0.33

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.
@@ -38,24 +38,27 @@ const FREE_TIER_ACTION_LIMIT = exports.FREE_TIER_ACTION_LIMIT = _sharedUi.TIER_L
38
38
  */
39
39
  function EmptyState({
40
40
  isEnabled,
41
- query
41
+ query,
42
+ totalActions
42
43
  }) {
43
- const isFiltered = query.length > 0;
44
- return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
45
- style: styles.emptyState,
46
- testID: `${_testIDs.REDUX_TEST_ID}-empty`,
47
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.Zap, {
48
- size: 32,
49
- color: _sharedUi.night.color.textTertiary
50
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
51
- style: styles.emptyTitle,
52
- testID: `${_testIDs.REDUX_TEST_ID}-empty-title`,
53
- children: isFiltered ? "No Matches" : "No Redux actions"
54
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
55
- style: styles.emptyText,
56
- testID: `${_testIDs.REDUX_TEST_ID}-empty-text`,
57
- children: isFiltered ? `No action type contains "${query}"` : isEnabled ? "Actions will appear here as they are dispatched" : "Enable capture to start recording actions"
58
- })]
44
+ const content = (0, _sharedUi.resolveListEmptyState)({
45
+ subject: "actions",
46
+ search: query,
47
+ total: totalActions,
48
+ capturing: isEnabled,
49
+ waiting: {
50
+ otto: "waiting",
51
+ title: "No Redux actions",
52
+ message: "Actions will appear here as they are dispatched"
53
+ },
54
+ paused: {
55
+ title: "No Redux actions",
56
+ message: "Enable capture to start recording actions"
57
+ }
58
+ });
59
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_sharedUi.ToolEmptyState, {
60
+ ...content,
61
+ testID: `${_testIDs.REDUX_TEST_ID}-empty`
59
62
  });
60
63
  }
61
64
  function ReduxModal({
@@ -512,7 +515,8 @@ function ReduxModal({
512
515
  updateCellsBatchingPeriod: 50
513
516
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(EmptyState, {
514
517
  isEnabled: isEnabled,
515
- query: searchText
518
+ query: searchText,
519
+ totalActions: stats.totalActions
516
520
  })]
517
521
  })
518
522
  });
@@ -530,6 +534,7 @@ function ReduxModal({
530
534
  style: styles.inlineRoot,
531
535
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
532
536
  style: styles.inlineHeader,
537
+ ..._sharedUi.windowDragProps,
533
538
  children: renderHeaderContent()
534
539
  }), body, footerNode]
535
540
  }), upgradeModal]
@@ -708,22 +713,6 @@ const styles = _reactNative.StyleSheet.create({
708
713
  paddingTop: 8,
709
714
  paddingBottom: 20
710
715
  },
711
- emptyState: {
712
- alignItems: "center",
713
- paddingVertical: 40
714
- },
715
- emptyTitle: {
716
- color: _sharedUi.night.color.text,
717
- fontSize: 14,
718
- fontWeight: "600",
719
- marginTop: 12,
720
- marginBottom: 6
721
- },
722
- emptyText: {
723
- color: _sharedUi.night.color.textTertiary,
724
- fontSize: 12,
725
- textAlign: "center"
726
- },
727
716
  // Locked actions banner styles
728
717
  lockedBanner: {
729
718
  flexDirection: "row",
@@ -9,7 +9,7 @@
9
9
 
10
10
  import { useState, useMemo, useRef, useCallback, useEffect } from "react";
11
11
  import { View, Text, StyleSheet, FlatList, TextInput, TouchableOpacity } from "react-native";
12
- import { JsModal, ModalHeader, macOSColors, night, Search, Trash2, Power, X, Zap, CheckCircle, Copy, Lock, AlertTriangle, devToolsStorageKeys, copyToClipboard, ProUpgradeModal, PowerToggleButton, TickProvider, useLimit, TIER_LIMITS } from "@buoy-gg/shared-ui";
12
+ import { JsModal, ModalHeader, macOSColors, night, Search, Trash2, Power, X, Zap, CheckCircle, Copy, Lock, AlertTriangle, devToolsStorageKeys, copyToClipboard, ProUpgradeModal, PowerToggleButton, TickProvider, useLimit, TIER_LIMITS, windowDragProps, ToolEmptyState, resolveListEmptyState } from "@buoy-gg/shared-ui";
13
13
  import { useIsPro } from "@buoy-gg/license";
14
14
  import { useReduxActions } from "../hooks/useReduxActions";
15
15
  import { reduxActionStore } from "../utils/reduxActionStore";
@@ -33,24 +33,27 @@ export const FREE_TIER_ACTION_LIMIT = TIER_LIMITS["redux.actions"].free;
33
33
  */
34
34
  function EmptyState({
35
35
  isEnabled,
36
- query
36
+ query,
37
+ totalActions
37
38
  }) {
38
- const isFiltered = query.length > 0;
39
- return /*#__PURE__*/_jsxs(View, {
40
- style: styles.emptyState,
41
- testID: `${REDUX_TEST_ID}-empty`,
42
- children: [/*#__PURE__*/_jsx(Zap, {
43
- size: 32,
44
- color: night.color.textTertiary
45
- }), /*#__PURE__*/_jsx(Text, {
46
- style: styles.emptyTitle,
47
- testID: `${REDUX_TEST_ID}-empty-title`,
48
- children: isFiltered ? "No Matches" : "No Redux actions"
49
- }), /*#__PURE__*/_jsx(Text, {
50
- style: styles.emptyText,
51
- testID: `${REDUX_TEST_ID}-empty-text`,
52
- children: isFiltered ? `No action type contains "${query}"` : isEnabled ? "Actions will appear here as they are dispatched" : "Enable capture to start recording actions"
53
- })]
39
+ const content = resolveListEmptyState({
40
+ subject: "actions",
41
+ search: query,
42
+ total: totalActions,
43
+ capturing: isEnabled,
44
+ waiting: {
45
+ otto: "waiting",
46
+ title: "No Redux actions",
47
+ message: "Actions will appear here as they are dispatched"
48
+ },
49
+ paused: {
50
+ title: "No Redux actions",
51
+ message: "Enable capture to start recording actions"
52
+ }
53
+ });
54
+ return /*#__PURE__*/_jsx(ToolEmptyState, {
55
+ ...content,
56
+ testID: `${REDUX_TEST_ID}-empty`
54
57
  });
55
58
  }
56
59
  export function ReduxModal({
@@ -507,7 +510,8 @@ export function ReduxModal({
507
510
  updateCellsBatchingPeriod: 50
508
511
  }) : /*#__PURE__*/_jsx(EmptyState, {
509
512
  isEnabled: isEnabled,
510
- query: searchText
513
+ query: searchText,
514
+ totalActions: stats.totalActions
511
515
  })]
512
516
  })
513
517
  });
@@ -525,6 +529,7 @@ export function ReduxModal({
525
529
  style: styles.inlineRoot,
526
530
  children: [/*#__PURE__*/_jsx(View, {
527
531
  style: styles.inlineHeader,
532
+ ...windowDragProps,
528
533
  children: renderHeaderContent()
529
534
  }), body, footerNode]
530
535
  }), upgradeModal]
@@ -703,22 +708,6 @@ const styles = StyleSheet.create({
703
708
  paddingTop: 8,
704
709
  paddingBottom: 20
705
710
  },
706
- emptyState: {
707
- alignItems: "center",
708
- paddingVertical: 40
709
- },
710
- emptyTitle: {
711
- color: night.color.text,
712
- fontSize: 14,
713
- fontWeight: "600",
714
- marginTop: 12,
715
- marginBottom: 6
716
- },
717
- emptyText: {
718
- color: night.color.textTertiary,
719
- fontSize: 12,
720
- textAlign: "center"
721
- },
722
711
  // Locked actions banner styles
723
712
  lockedBanner: {
724
713
  flexDirection: "row",
@@ -1 +1 @@
1
- {"version":3,"file":"ReduxModal.d.ts","sourceRoot":"","sources":["../../../../src/redux/components/ReduxModal.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AA2CH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAoC,CAAC;AAExE,UAAU,eAAe;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC/C;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,mBAAmB,CAAC;CACzC;AAiCD,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,OAAO,EACP,MAAM,EACN,UAAU,EACV,2BAAmC,EACnC,MAAc,EACd,cAAc,EACd,uBAAuB,EACvB,iBAAiB,GAClB,EAAE,eAAe,sCAslBjB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,GAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAM,+BAGpE"}
1
+ {"version":3,"file":"ReduxModal.d.ts","sourceRoot":"","sources":["../../../../src/redux/components/ReduxModal.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AA+CH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAG5C;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,QAAoC,CAAC;AAExE,UAAU,eAAe;IACvB;;;;;OAKG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3C,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,KAAK,IAAI,CAAC;IAC/C;;;;;;;OAOG;IACH,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,+EAA+E;IAC/E,iBAAiB,CAAC,EAAE,mBAAmB,CAAC;CACzC;AAoCD,wBAAgB,UAAU,CAAC,EACzB,OAAO,EACP,OAAO,EACP,MAAM,EACN,UAAU,EACV,2BAAmC,EACnC,MAAc,EACd,cAAc,EACd,uBAAuB,EACvB,iBAAiB,GAClB,EAAE,eAAe,sCA0lBjB;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAC3B,KAAK,GAAE,IAAI,CAAC,eAAe,EAAE,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAM,+BAGpE"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@buoy-gg/redux",
3
- "version": "7.0.31",
3
+ "version": "7.0.33",
4
4
  "description": "Redux DevTools inside your React Native app — action log, state diffs & time travel with zero store changes. Part of Buoy devtools.",
5
5
  "main": "lib/commonjs/index.js",
6
6
  "module": "lib/module/index.js",
@@ -31,9 +31,9 @@
31
31
  "**/snapshotProvider.ts"
32
32
  ],
33
33
  "dependencies": {
34
- "@buoy-gg/shared-ui": "^7.0.31",
35
- "@buoy-gg/floating-tools-core": "^7.0.31",
36
- "@buoy-gg/license": "^7.0.31"
34
+ "@buoy-gg/shared-ui": "^7.0.33",
35
+ "@buoy-gg/license": "^7.0.33",
36
+ "@buoy-gg/floating-tools-core": "^7.0.33"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "@reduxjs/toolkit": ">=1.9.0",