valtio-history 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/index.d.ts +32 -0
- package/src/index.js +43 -0
- package/src/index.js.map +1 -1
package/package.json
CHANGED
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":"AAAA,OAAO,EACL,2BAA2B,IAAI,kBAAkB,EACjD,KAAK,EACL,GAAG,EACH,QAAQ,EACR,SAAS,GACV,MAAM,gBAAgB,CAAC;AA2CxB,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAmB,EAAE,CACnD,CAAC,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC;AAEvC,IAAI,MAAmC,CAAC;AAExC,MAAM,SAAS,GAAG,CAAI,KAAQ,EAAK,EAAE;IACnC,IAAI,CAAC,MAAM,EAAE;QACX,MAAM,GAAG,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC;KAClC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QACzC,OAAO,KAAK,CAAC;KACd;IACD,MAAM,UAAU,GAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACxC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACrC,UAAU,CAAC,GAAc,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAc,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,OAAkC,EAClB,EAAE;IAClB,IAAI,OAAO,OAAO,KAAK,SAAS,EAAE;QAChC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,KAAK,YAAY,EAAE;YAC1C,OAAO,CAAC,IAAI,CAAC;;;;OAIZ,CAAC,CAAC;SACJ;QACD,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;KACnC;IAED,MAAM,cAAc,GAAG;QACrB,aAAa,EAAE,KAAK;KACrB,CAAC;IAEF,IAAI,CAAC,OAAO;QAAE,OAAO,cAAc,CAAC;IAEpC,OAAO;QACL,GAAG,cAAc;QACjB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAAe,EACf,OAAkC;IAElC,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,WAAW,GAAG,KAAK,CAAC;QACxB;;WAEG;QACH,KAAK,EAAE,YAAY;QACnB;;;;;WAKG;QACH,OAAO,EAAE,GAAG,CAAa;YACvB,GAAG,EAAE,SAAS;YACd,KAAK,EAAE,EAAE;YACT,KAAK,EAAE,CAAC,CAAC;SACV,CAAC;QACF
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/history-utility/src/index.ts"],"names":[],"mappings":"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"}
|