@longzai-intelligence/pagination 0.0.1 → 0.0.2
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/.turbo/turbo-build.log +3 -3
- package/.turbo/turbo-test$colon$coverage.log +6 -6
- package/.turbo/turbo-test.log +7 -7
- package/CHANGELOG.md +7 -0
- package/README.md +5 -1
- package/coverage/coverage-final.json +6 -2
- package/coverage/index.html +19 -4
- package/coverage/src/adapters/index.html +1 -16
- package/coverage/src/adapters/typeorm.adapter.ts.html +1 -1
- package/coverage/src/index.html +16 -1
- package/coverage/src/index.ts.html +38 -11
- package/coverage/src/schemas/index.html +161 -0
- package/coverage/src/{adapters → schemas}/index.ts.html +61 -10
- package/coverage/src/schemas/pagination.schemas.ts.html +343 -0
- package/coverage/src/schemas/result.schemas.ts.html +724 -0
- package/coverage/src/schemas/sort.schemas.ts.html +544 -0
- package/coverage/src/typeorm.ts.html +154 -0
- package/coverage/src/types/index.html +1 -1
- package/coverage/src/types/index.ts.html +69 -3
- package/coverage/src/types/pagination.types.ts.html +15 -138
- package/coverage/src/types/result.types.ts.html +11 -299
- package/coverage/src/types/sort.types.ts.html +16 -139
- package/coverage/src/types/typeorm.d.ts.html +1 -1
- package/coverage/src/utils/index.html +1 -1
- package/coverage/src/utils/index.ts.html +1 -1
- package/coverage/src/utils/pagination.util.ts.html +1 -1
- package/coverage/src/utils/validation.util.ts.html +1 -1
- package/dist/index-C8FaNzej.d.mts +145 -0
- package/dist/index-CMiyhlfm.d.cts +145 -0
- package/dist/index.cjs +33 -1
- package/dist/index.d.cts +2 -81
- package/dist/index.d.mts +2 -81
- package/dist/index.mjs +1 -1
- package/dist/typeorm.cjs +129 -0
- package/dist/typeorm.d.cts +26 -0
- package/dist/typeorm.d.mts +26 -0
- package/dist/typeorm.mjs +1 -0
- package/dist/utils-CV6Ovku6.mjs +1 -0
- package/dist/utils-D_qD2YAX.cjs +1 -0
- package/docs/specs/spec-20260413-typeorm-subpath-export/checklist.md +33 -0
- package/docs/specs/spec-20260413-typeorm-subpath-export/spec.md +104 -0
- package/docs/specs/spec-20260413-typeorm-subpath-export/tasks.md +48 -0
- package/package.json +15 -3
- package/src/__tests__/index.test.ts +9 -3
- package/src/__tests__/pagination.util.test.ts +0 -2
- package/src/__tests__/result.schemas.test.ts +142 -0
- package/src/__tests__/sort.schemas.test.ts +157 -0
- package/src/__tests__/typeorm.adapter.test.ts +1 -3
- package/src/__tests__/validation.util.test.ts +0 -2
- package/src/adapters/{typeorm.adapter.ts → typeorm/adapter.ts} +10 -92
- package/src/adapters/typeorm/index.ts +23 -0
- package/src/adapters/typeorm/types.ts +95 -0
- package/src/index.ts +18 -9
- package/src/schemas/index.ts +28 -0
- package/src/schemas/pagination.schemas.ts +86 -0
- package/src/schemas/result.schemas.ts +213 -0
- package/src/schemas/sort.schemas.ts +153 -0
- package/src/typeorm.ts +23 -0
- package/src/types/index.ts +23 -1
- package/src/types/pagination.types.ts +13 -54
- package/src/types/result.types.ts +9 -105
- package/src/types/sort.types.ts +14 -55
- package/tsconfig/.cache/app.tsbuildinfo +1 -1
- package/tsconfig/.cache/node.tsbuildinfo +1 -1
- package/tsconfig/.cache/test.tsbuildinfo +1 -1
- package/tsconfig/app.json +4 -1
- package/tsdown.config.ts +10 -3
- package/src/adapters/index.ts +0 -11
- package/tsconfig/.cache/build.tsbuildinfo +0 -1
- /package/src/{types → adapters/typeorm}/typeorm.d.ts +0 -0
|
@@ -77,199 +77,7 @@
|
|
|
77
77
|
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
78
|
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
79
|
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
-
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
-
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
-
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
-
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
-
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
-
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
-
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
-
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
-
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
-
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
-
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
-
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
-
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
-
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
-
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
-
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
-
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
-
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
-
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
-
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
-
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
-
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
-
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
-
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
-
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
-
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
-
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
-
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
-
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
-
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
-
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
-
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
-
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
-
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
-
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
-
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
-
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
-
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
-
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
-
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
-
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
-
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
-
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
-
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
-
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
|
167
|
-
<a name='L102'></a><a href='#L102'>102</a>
|
|
168
|
-
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
|
-
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
|
-
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
-
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
-
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
-
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
-
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
-
<a name='L111'></a><a href='#L111'>111</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
177
|
-
<span class="cline-any cline-neutral"> </span>
|
|
178
|
-
<span class="cline-any cline-neutral"> </span>
|
|
179
|
-
<span class="cline-any cline-neutral"> </span>
|
|
180
|
-
<span class="cline-any cline-neutral"> </span>
|
|
181
|
-
<span class="cline-any cline-neutral"> </span>
|
|
182
|
-
<span class="cline-any cline-neutral"> </span>
|
|
183
|
-
<span class="cline-any cline-neutral"> </span>
|
|
184
|
-
<span class="cline-any cline-neutral"> </span>
|
|
185
|
-
<span class="cline-any cline-neutral"> </span>
|
|
186
|
-
<span class="cline-any cline-neutral"> </span>
|
|
187
|
-
<span class="cline-any cline-neutral"> </span>
|
|
188
|
-
<span class="cline-any cline-neutral"> </span>
|
|
189
|
-
<span class="cline-any cline-neutral"> </span>
|
|
190
|
-
<span class="cline-any cline-neutral"> </span>
|
|
191
|
-
<span class="cline-any cline-neutral"> </span>
|
|
192
|
-
<span class="cline-any cline-neutral"> </span>
|
|
193
|
-
<span class="cline-any cline-neutral"> </span>
|
|
194
|
-
<span class="cline-any cline-neutral"> </span>
|
|
195
|
-
<span class="cline-any cline-neutral"> </span>
|
|
196
|
-
<span class="cline-any cline-neutral"> </span>
|
|
197
|
-
<span class="cline-any cline-neutral"> </span>
|
|
198
|
-
<span class="cline-any cline-neutral"> </span>
|
|
199
|
-
<span class="cline-any cline-neutral"> </span>
|
|
200
|
-
<span class="cline-any cline-neutral"> </span>
|
|
201
|
-
<span class="cline-any cline-neutral"> </span>
|
|
202
|
-
<span class="cline-any cline-neutral"> </span>
|
|
203
|
-
<span class="cline-any cline-neutral"> </span>
|
|
204
|
-
<span class="cline-any cline-neutral"> </span>
|
|
205
|
-
<span class="cline-any cline-neutral"> </span>
|
|
206
|
-
<span class="cline-any cline-neutral"> </span>
|
|
207
|
-
<span class="cline-any cline-neutral"> </span>
|
|
208
|
-
<span class="cline-any cline-neutral"> </span>
|
|
209
|
-
<span class="cline-any cline-neutral"> </span>
|
|
210
|
-
<span class="cline-any cline-neutral"> </span>
|
|
211
|
-
<span class="cline-any cline-neutral"> </span>
|
|
212
|
-
<span class="cline-any cline-neutral"> </span>
|
|
213
|
-
<span class="cline-any cline-neutral"> </span>
|
|
214
|
-
<span class="cline-any cline-neutral"> </span>
|
|
215
|
-
<span class="cline-any cline-neutral"> </span>
|
|
216
|
-
<span class="cline-any cline-neutral"> </span>
|
|
217
|
-
<span class="cline-any cline-neutral"> </span>
|
|
218
|
-
<span class="cline-any cline-neutral"> </span>
|
|
219
|
-
<span class="cline-any cline-neutral"> </span>
|
|
220
|
-
<span class="cline-any cline-neutral"> </span>
|
|
221
|
-
<span class="cline-any cline-neutral"> </span>
|
|
222
|
-
<span class="cline-any cline-neutral"> </span>
|
|
223
|
-
<span class="cline-any cline-neutral"> </span>
|
|
224
|
-
<span class="cline-any cline-neutral"> </span>
|
|
225
|
-
<span class="cline-any cline-neutral"> </span>
|
|
226
|
-
<span class="cline-any cline-neutral"> </span>
|
|
227
|
-
<span class="cline-any cline-neutral"> </span>
|
|
228
|
-
<span class="cline-any cline-neutral"> </span>
|
|
229
|
-
<span class="cline-any cline-neutral"> </span>
|
|
230
|
-
<span class="cline-any cline-neutral"> </span>
|
|
231
|
-
<span class="cline-any cline-neutral"> </span>
|
|
232
|
-
<span class="cline-any cline-neutral"> </span>
|
|
233
|
-
<span class="cline-any cline-neutral"> </span>
|
|
234
|
-
<span class="cline-any cline-neutral"> </span>
|
|
235
|
-
<span class="cline-any cline-neutral"> </span>
|
|
236
|
-
<span class="cline-any cline-neutral"> </span>
|
|
237
|
-
<span class="cline-any cline-neutral"> </span>
|
|
238
|
-
<span class="cline-any cline-neutral"> </span>
|
|
239
|
-
<span class="cline-any cline-neutral"> </span>
|
|
240
|
-
<span class="cline-any cline-neutral"> </span>
|
|
241
|
-
<span class="cline-any cline-neutral"> </span>
|
|
242
|
-
<span class="cline-any cline-neutral"> </span>
|
|
243
|
-
<span class="cline-any cline-neutral"> </span>
|
|
244
|
-
<span class="cline-any cline-neutral"> </span>
|
|
245
|
-
<span class="cline-any cline-neutral"> </span>
|
|
246
|
-
<span class="cline-any cline-neutral"> </span>
|
|
247
|
-
<span class="cline-any cline-neutral"> </span>
|
|
248
|
-
<span class="cline-any cline-neutral"> </span>
|
|
249
|
-
<span class="cline-any cline-neutral"> </span>
|
|
250
|
-
<span class="cline-any cline-neutral"> </span>
|
|
251
|
-
<span class="cline-any cline-neutral"> </span>
|
|
252
|
-
<span class="cline-any cline-neutral"> </span>
|
|
253
|
-
<span class="cline-any cline-neutral"> </span>
|
|
254
|
-
<span class="cline-any cline-neutral"> </span>
|
|
255
|
-
<span class="cline-any cline-neutral"> </span>
|
|
256
|
-
<span class="cline-any cline-neutral"> </span>
|
|
257
|
-
<span class="cline-any cline-neutral"> </span>
|
|
258
|
-
<span class="cline-any cline-neutral"> </span>
|
|
259
|
-
<span class="cline-any cline-neutral"> </span>
|
|
260
|
-
<span class="cline-any cline-neutral"> </span>
|
|
261
|
-
<span class="cline-any cline-neutral"> </span>
|
|
262
|
-
<span class="cline-any cline-neutral"> </span>
|
|
263
|
-
<span class="cline-any cline-neutral"> </span>
|
|
264
|
-
<span class="cline-any cline-neutral"> </span>
|
|
265
|
-
<span class="cline-any cline-neutral"> </span>
|
|
266
|
-
<span class="cline-any cline-neutral"> </span>
|
|
267
|
-
<span class="cline-any cline-neutral"> </span>
|
|
268
|
-
<span class="cline-any cline-neutral"> </span>
|
|
269
|
-
<span class="cline-any cline-neutral"> </span>
|
|
270
|
-
<span class="cline-any cline-neutral"> </span>
|
|
271
|
-
<span class="cline-any cline-neutral"> </span>
|
|
272
|
-
<span class="cline-any cline-neutral"> </span>
|
|
80
|
+
<a name='L15'></a><a href='#L15'>15</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
273
81
|
<span class="cline-any cline-neutral"> </span>
|
|
274
82
|
<span class="cline-any cline-neutral"> </span>
|
|
275
83
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -285,114 +93,18 @@
|
|
|
285
93
|
<span class="cline-any cline-neutral"> </span>
|
|
286
94
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">/**
|
|
287
95
|
* 分页结果类型定义
|
|
288
|
-
*/
|
|
289
|
-
|
|
290
|
-
/**
|
|
291
|
-
* 分页结果
|
|
292
96
|
*
|
|
293
|
-
*
|
|
294
|
-
*
|
|
295
|
-
* @typeParam T - 数据项类型
|
|
97
|
+
* 类型从 zod schemas 推导导出
|
|
296
98
|
*/
|
|
297
|
-
export type PaginatedResult<T> = {
|
|
298
|
-
/**
|
|
299
|
-
* 数据项数组
|
|
300
|
-
*/
|
|
301
|
-
items: T[];
|
|
302
|
-
|
|
303
|
-
/**
|
|
304
|
-
* 总记录数
|
|
305
|
-
*/
|
|
306
|
-
total: number;
|
|
307
|
-
|
|
308
|
-
/**
|
|
309
|
-
* 当前页码
|
|
310
|
-
*/
|
|
311
|
-
page: number;
|
|
312
|
-
|
|
313
|
-
/**
|
|
314
|
-
* 每页数量
|
|
315
|
-
*/
|
|
316
|
-
pageSize: number;
|
|
317
|
-
|
|
318
|
-
/**
|
|
319
|
-
* 总页数
|
|
320
|
-
*/
|
|
321
|
-
totalPages: number;
|
|
322
|
-
|
|
323
|
-
/**
|
|
324
|
-
* 是否有下一页
|
|
325
|
-
*/
|
|
326
|
-
hasNextPage: boolean;
|
|
327
|
-
|
|
328
|
-
/**
|
|
329
|
-
* 是否有上一页
|
|
330
|
-
*/
|
|
331
|
-
hasPreviousPage: boolean;
|
|
332
|
-
};
|
|
333
|
-
|
|
334
|
-
/**
|
|
335
|
-
* Offset 风格分页结果
|
|
336
|
-
*
|
|
337
|
-
* 包含偏移量分页数据和分页信息
|
|
338
|
-
*
|
|
339
|
-
* @typeParam T - 数据项类型
|
|
340
|
-
*/
|
|
341
|
-
export type OffsetPaginatedResult<T> = {
|
|
342
|
-
/**
|
|
343
|
-
* 数据项数组
|
|
344
|
-
*/
|
|
345
|
-
items: T[];
|
|
346
|
-
|
|
347
|
-
/**
|
|
348
|
-
* 总记录数
|
|
349
|
-
*/
|
|
350
|
-
total: number;
|
|
351
|
-
|
|
352
|
-
/**
|
|
353
|
-
* 限制数量
|
|
354
|
-
*/
|
|
355
|
-
limit: number;
|
|
356
|
-
|
|
357
|
-
/**
|
|
358
|
-
* 偏移量
|
|
359
|
-
*/
|
|
360
|
-
offset: number;
|
|
361
|
-
|
|
362
|
-
/**
|
|
363
|
-
* 是否有更多数据
|
|
364
|
-
*/
|
|
365
|
-
hasMore: boolean;
|
|
366
|
-
};
|
|
367
|
-
|
|
368
|
-
/**
|
|
369
|
-
* 游标分页结果
|
|
370
|
-
*
|
|
371
|
-
* 包含游标分页数据和分页信息
|
|
372
|
-
*
|
|
373
|
-
* @typeParam T - 数据项类型
|
|
374
|
-
*/
|
|
375
|
-
export type CursorPaginatedResult<T> = {
|
|
376
|
-
/**
|
|
377
|
-
* 数据项数组
|
|
378
|
-
*/
|
|
379
|
-
items: T[];
|
|
380
|
-
|
|
381
|
-
/**
|
|
382
|
-
* 下一页游标
|
|
383
|
-
*/
|
|
384
|
-
nextCursor: string | null;
|
|
385
|
-
|
|
386
|
-
/**
|
|
387
|
-
* 上一页游标
|
|
388
|
-
*/
|
|
389
|
-
previousCursor: string | null;
|
|
390
99
|
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
100
|
+
export {
|
|
101
|
+
createPaginatedResultSchema,
|
|
102
|
+
createOffsetPaginatedResultSchema,
|
|
103
|
+
createCursorPaginatedResultSchema,
|
|
104
|
+
type PaginatedResult,
|
|
105
|
+
type OffsetPaginatedResult,
|
|
106
|
+
type CursorPaginatedResult,
|
|
107
|
+
} from '../schemas/result.schemas';
|
|
396
108
|
</pre></td></tr></table></pre>
|
|
397
109
|
|
|
398
110
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -400,7 +112,7 @@ export type CursorPaginatedResult<T> = {
|
|
|
400
112
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
401
113
|
Code coverage generated by
|
|
402
114
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
403
|
-
at 2026-04-
|
|
115
|
+
at 2026-04-12T21:41:37.775Z
|
|
404
116
|
</div>
|
|
405
117
|
<script src="../../prettify.js"></script>
|
|
406
118
|
<script>
|
|
@@ -82,89 +82,7 @@
|
|
|
82
82
|
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
83
|
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
84
|
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
-
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
-
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
-
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
-
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
-
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
-
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
-
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
-
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
-
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
-
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
-
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
-
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
-
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
-
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
-
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
-
<a name='L61'></a><a href='#L61'>61</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
127
|
-
<span class="cline-any cline-neutral"> </span>
|
|
128
|
-
<span class="cline-any cline-neutral"> </span>
|
|
129
|
-
<span class="cline-any cline-neutral"> </span>
|
|
130
|
-
<span class="cline-any cline-neutral"> </span>
|
|
131
|
-
<span class="cline-any cline-neutral"> </span>
|
|
132
|
-
<span class="cline-any cline-neutral"> </span>
|
|
133
|
-
<span class="cline-any cline-neutral"> </span>
|
|
134
|
-
<span class="cline-any cline-neutral"> </span>
|
|
135
|
-
<span class="cline-any cline-neutral"> </span>
|
|
136
|
-
<span class="cline-any cline-neutral"> </span>
|
|
137
|
-
<span class="cline-any cline-neutral"> </span>
|
|
138
|
-
<span class="cline-any cline-neutral"> </span>
|
|
139
|
-
<span class="cline-any cline-neutral"> </span>
|
|
140
|
-
<span class="cline-any cline-neutral"> </span>
|
|
141
|
-
<span class="cline-any cline-neutral"> </span>
|
|
142
|
-
<span class="cline-any cline-neutral"> </span>
|
|
143
|
-
<span class="cline-any cline-neutral"> </span>
|
|
144
|
-
<span class="cline-any cline-neutral"> </span>
|
|
145
|
-
<span class="cline-any cline-neutral"> </span>
|
|
146
|
-
<span class="cline-any cline-neutral"> </span>
|
|
147
|
-
<span class="cline-any cline-neutral"> </span>
|
|
148
|
-
<span class="cline-any cline-neutral"> </span>
|
|
149
|
-
<span class="cline-any cline-neutral"> </span>
|
|
150
|
-
<span class="cline-any cline-neutral"> </span>
|
|
151
|
-
<span class="cline-any cline-neutral"> </span>
|
|
152
|
-
<span class="cline-any cline-neutral"> </span>
|
|
153
|
-
<span class="cline-any cline-neutral"> </span>
|
|
154
|
-
<span class="cline-any cline-neutral"> </span>
|
|
155
|
-
<span class="cline-any cline-neutral"> </span>
|
|
156
|
-
<span class="cline-any cline-neutral"> </span>
|
|
157
|
-
<span class="cline-any cline-neutral"> </span>
|
|
158
|
-
<span class="cline-any cline-neutral"> </span>
|
|
159
|
-
<span class="cline-any cline-neutral"> </span>
|
|
160
|
-
<span class="cline-any cline-neutral"> </span>
|
|
161
|
-
<span class="cline-any cline-neutral"> </span>
|
|
162
|
-
<span class="cline-any cline-neutral"> </span>
|
|
163
|
-
<span class="cline-any cline-neutral"> </span>
|
|
164
|
-
<span class="cline-any cline-neutral"> </span>
|
|
165
|
-
<span class="cline-any cline-neutral"> </span>
|
|
166
|
-
<span class="cline-any cline-neutral"> </span>
|
|
167
|
-
<span class="cline-any cline-neutral"> </span>
|
|
85
|
+
<a name='L20'></a><a href='#L20'>20</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
168
86
|
<span class="cline-any cline-neutral"> </span>
|
|
169
87
|
<span class="cline-any cline-neutral"> </span>
|
|
170
88
|
<span class="cline-any cline-neutral"> </span>
|
|
@@ -185,64 +103,23 @@
|
|
|
185
103
|
<span class="cline-any cline-neutral"> </span>
|
|
186
104
|
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">/**
|
|
187
105
|
* 排序类型定义
|
|
188
|
-
*/
|
|
189
|
-
|
|
190
|
-
/**
|
|
191
|
-
* 排序方向
|
|
192
|
-
*/
|
|
193
|
-
export type SortOrder = 'asc' | 'desc';
|
|
194
|
-
|
|
195
|
-
/**
|
|
196
|
-
* 排序参数
|
|
197
|
-
*
|
|
198
|
-
* 单字段排序参数
|
|
199
106
|
*
|
|
200
|
-
*
|
|
107
|
+
* 类型从 zod schemas 推导导出
|
|
201
108
|
*/
|
|
202
|
-
export type SortParams<T extends string = string> = {
|
|
203
|
-
/**
|
|
204
|
-
* 排序字段
|
|
205
|
-
*/
|
|
206
|
-
sortBy?: T;
|
|
207
109
|
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
export type SortItem<T extends string = string> = {
|
|
222
|
-
/**
|
|
223
|
-
* 排序字段
|
|
224
|
-
*/
|
|
225
|
-
field: T;
|
|
226
|
-
|
|
227
|
-
/**
|
|
228
|
-
* 排序方向
|
|
229
|
-
*/
|
|
230
|
-
order: SortOrder;
|
|
231
|
-
};
|
|
232
|
-
|
|
233
|
-
/**
|
|
234
|
-
* 多字段排序参数
|
|
235
|
-
*
|
|
236
|
-
* 支持多个字段的排序
|
|
237
|
-
*
|
|
238
|
-
* @typeParam T - 排序字段类型
|
|
239
|
-
*/
|
|
240
|
-
export type MultiSortParams<T extends string = string> = {
|
|
241
|
-
/**
|
|
242
|
-
* 排序项数组
|
|
243
|
-
*/
|
|
244
|
-
sort?: SortItem<T>[];
|
|
245
|
-
};
|
|
110
|
+
export {
|
|
111
|
+
SortOrderSchema,
|
|
112
|
+
SortParamsSchema,
|
|
113
|
+
SortItemSchema,
|
|
114
|
+
MultiSortParamsSchema,
|
|
115
|
+
createSortParamsSchema,
|
|
116
|
+
createSortItemSchema,
|
|
117
|
+
createMultiSortParamsSchema,
|
|
118
|
+
type SortOrder,
|
|
119
|
+
type SortParams,
|
|
120
|
+
type SortItem,
|
|
121
|
+
type MultiSortParams,
|
|
122
|
+
} from '../schemas/sort.schemas';
|
|
246
123
|
</pre></td></tr></table></pre>
|
|
247
124
|
|
|
248
125
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -250,7 +127,7 @@ export type MultiSortParams<T extends string = string> = {
|
|
|
250
127
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
251
128
|
Code coverage generated by
|
|
252
129
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
253
|
-
at 2026-04-
|
|
130
|
+
at 2026-04-12T21:41:37.775Z
|
|
254
131
|
</div>
|
|
255
132
|
<script src="../../prettify.js"></script>
|
|
256
133
|
<script>
|
|
@@ -181,7 +181,7 @@ declare module 'typeorm' {
|
|
|
181
181
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
182
182
|
Code coverage generated by
|
|
183
183
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
184
|
-
at 2026-04-
|
|
184
|
+
at 2026-04-12T21:41:37.775Z
|
|
185
185
|
</div>
|
|
186
186
|
<script src="../../prettify.js"></script>
|
|
187
187
|
<script>
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
132
132
|
Code coverage generated by
|
|
133
133
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
134
|
-
at 2026-04-
|
|
134
|
+
at 2026-04-12T21:41:37.775Z
|
|
135
135
|
</div>
|
|
136
136
|
<script src="../../prettify.js"></script>
|
|
137
137
|
<script>
|
|
@@ -163,7 +163,7 @@ export {
|
|
|
163
163
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
164
164
|
Code coverage generated by
|
|
165
165
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
166
|
-
at 2026-04-
|
|
166
|
+
at 2026-04-12T21:41:37.775Z
|
|
167
167
|
</div>
|
|
168
168
|
<script src="../../prettify.js"></script>
|
|
169
169
|
<script>
|
|
@@ -688,7 +688,7 @@ export function createPaginatedResult<T>(
|
|
|
688
688
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
689
689
|
Code coverage generated by
|
|
690
690
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
691
|
-
at 2026-04-
|
|
691
|
+
at 2026-04-12T21:41:37.775Z
|
|
692
692
|
</div>
|
|
693
693
|
<script src="../../prettify.js"></script>
|
|
694
694
|
<script>
|
|
@@ -520,7 +520,7 @@ export function isValidOffsetPagination(
|
|
|
520
520
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
521
521
|
Code coverage generated by
|
|
522
522
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
523
|
-
at 2026-04-
|
|
523
|
+
at 2026-04-12T21:41:37.775Z
|
|
524
524
|
</div>
|
|
525
525
|
<script src="../../prettify.js"></script>
|
|
526
526
|
<script>
|