valtio-history 0.2.1 → 0.3.1

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.
package/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  # valtio-history
2
2
 
3
- [![npm version](https://badge.fury.io/js/valtio-history.svg)](https://badge.fury.io/js/valtio-history)
4
-
5
3
  valtio utility for creating a proxy state with history tracking
6
4
 
5
+ [![npm version](https://badge.fury.io/js/valtio-history.svg)](https://badge.fury.io/js/valtio-history)
6
+
7
7
  https://valtio.pmnd.rs/docs/api/utils/proxyWithHistory
8
8
 
9
9
  see detailed [api docs](https://github.com/valtiojs/valtio-history/blob/main/packages/history-utility/docs/modules.md) for more info.
@@ -35,10 +35,9 @@ export default function App() {
35
35
  undo,
36
36
  redo,
37
37
  history,
38
- canUndo,
39
- canRedo,
40
- getCurrentChangeDate,
41
- getNode,
38
+ isUndoEnabled,
39
+ isRedoEnabled,
40
+ currentChangeDate,
42
41
  remove,
43
42
  replace,
44
43
  } = useSnapshot(state);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valtio-history",
3
- "version": "0.2.1",
3
+ "version": "0.3.1",
4
4
  "author": "Daishi Kato",
5
5
  "repository": {
6
6
  "type": "git",
package/src/index.d.ts CHANGED
@@ -83,9 +83,27 @@ export declare function proxyWithHistory<V>(initialValue: V, options?: HistoryOp
83
83
  /**
84
84
  * get the date when a node was entered into history.
85
85
  *
86
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
86
87
  * @returns date
87
88
  */
88
89
  getCurrentChangeDate: () => Date | undefined;
90
+ /**
91
+ * get the date when a node was entered into history.
92
+ *
93
+ * @returns date
94
+ */
95
+ readonly currentChangeDate: Date | undefined;
96
+ /**
97
+ * the current history node index.
98
+ *
99
+ * @returns number
100
+ */
101
+ readonly currentIndex: number;
102
+ /**the total number of the history nodes.
103
+ *
104
+ * @returns number
105
+ */
106
+ readonly historyNodeCount: number;
89
107
  /**
90
108
  * utility method to get a history node.
91
109
  * The snapshot within this node is already cloned and
@@ -136,8 +154,20 @@ export declare function proxyWithHistory<V>(initialValue: V, options?: HistoryOp
136
154
  * a function to go to a specific index in history
137
155
  */
138
156
  goTo: (index: number) => void;
157
+ /**
158
+ * a getter to return true if undo is available
159
+ * @returns boolean
160
+ */
161
+ readonly isUndoEnabled: boolean;
162
+ /**
163
+ * a getter to return true if redo is available
164
+ * @returns boolean
165
+ */
166
+ readonly isRedoEnabled: boolean;
139
167
  /**
140
168
  * a function to return true if undo is available
169
+ *
170
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
141
171
  * @returns boolean
142
172
  */
143
173
  canUndo: () => boolean;
@@ -147,6 +177,8 @@ export declare function proxyWithHistory<V>(initialValue: V, options?: HistoryOp
147
177
  undo: () => void;
148
178
  /**
149
179
  * a function to return true if redo is available
180
+ *
181
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
150
182
  * @returns boolean
151
183
  */
152
184
  canRedo: () => boolean;
package/src/index.js CHANGED
@@ -90,12 +90,37 @@ export function proxyWithHistory(initialValue, options) {
90
90
  /**
91
91
  * get the date when a node was entered into history.
92
92
  *
93
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
93
94
  * @returns date
94
95
  */
95
96
  getCurrentChangeDate: () => {
96
97
  const node = proxyObject.history.nodes[proxyObject.history.index];
97
98
  return node?.createdAt;
98
99
  },
100
+ /**
101
+ * get the date when a node was entered into history.
102
+ *
103
+ * @returns date
104
+ */
105
+ get currentChangeDate() {
106
+ const node = this.history.nodes[this.history.index];
107
+ return node?.createdAt;
108
+ },
109
+ /**
110
+ * the current history node index.
111
+ *
112
+ * @returns number
113
+ */
114
+ get currentIndex() {
115
+ return this.history.index;
116
+ },
117
+ /**the total number of the history nodes.
118
+ *
119
+ * @returns number
120
+ */
121
+ get historyNodeCount() {
122
+ return this.history.nodes.length;
123
+ },
99
124
  /**
100
125
  * utility method to get a history node.
101
126
  * The snapshot within this node is already cloned and
@@ -125,8 +150,24 @@ export function proxyWithHistory(initialValue, options) {
125
150
  proxyObject.value = proxyObject.history.wip;
126
151
  proxyObject.history.index = index;
127
152
  },
153
+ /**
154
+ * a getter to return true if undo is available
155
+ * @returns boolean
156
+ */
157
+ get isUndoEnabled() {
158
+ return this.history.index > 0;
159
+ },
160
+ /**
161
+ * a getter to return true if redo is available
162
+ * @returns boolean
163
+ */
164
+ get isRedoEnabled() {
165
+ return this.history.index < this.history.nodes.length - 1;
166
+ },
128
167
  /**
129
168
  * a function to return true if undo is available
169
+ *
170
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
130
171
  * @returns boolean
131
172
  */
132
173
  canUndo: () => proxyObject.history.index > 0,
@@ -141,6 +182,8 @@ export function proxyWithHistory(initialValue, options) {
141
182
  },
142
183
  /**
143
184
  * a function to return true if redo is available
185
+ *
186
+ * @deprecated @see {@link https://github.com/valtiojs/valtio-history/issues/10}
144
187
  * @returns boolean
145
188
  */
146
189
  canRedo: () => proxyObject.history.index < proxyObject.history.nodes.length - 1,
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/history-utility/src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/history-utility/src/index.ts"],"names":[],"mappings":"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"}