Просмотр исходного кода

docs: add comment for complex filter

mizozobu 3 лет назад
Родитель
Сommit
fa26495e77
1 измененных файлов с 42 добавлено и 0 удалено
  1. 42 0
      packages/app/src/server/service/g2g-transfer.ts

+ 42 - 0
packages/app/src/server/service/g2g-transfer.ts

@@ -301,6 +301,48 @@ export class G2GTransferPusherService implements Pusher {
     const { fileUploadService } = this.crowi;
     const Attachment = this.crowi.model('Attachment');
     const filesFromNewGrowi = await this.listFilesInStorage(tk);
+
+    /**
+     * Given these documents,
+     *
+     * | fileName | fileSize |
+     * | -- | -- |
+     * | a.png | 1024 |
+     * | b.png | 2048 |
+     * | c.png | 1024 |
+     * | d.png | 2048 |
+     *
+     * this filter
+     *
+     * ```jsonc
+     * {
+     *   $and: [
+     *     // a file transferred
+     *     {
+     *       $or: [
+     *         { fileName: { $ne: "a.png" } },
+     *         { fileSize: { $ne: 1024 } }
+     *       ]
+     *     },
+     *     // a file failed to transfer
+     *     {
+     *       $or: [
+     *         { fileName: { $ne: "b.png" } },
+     *         { fileSize: { $ne: 0 } }
+     *       ]
+     *     }
+     *   ]
+     * }
+     * ```
+     *
+     * results in
+     *
+     * | fileName | fileSize |
+     * | -- | -- |
+     * | b.png | 2048 |
+     * | c.png | 1024 |
+     * | d.png | 2048 |
+     */
     const filter = filesFromNewGrowi.length > 0 ? {
       $and: filesFromNewGrowi.map(({ name, size }) => ({
         $or: [