From dc5b010d0913d2151b4851f8da5df72d2c8f42e7 Mon Sep 17 00:00:00 2001 From: Sam Atkins Date: Wed, 24 Apr 2024 12:29:56 +0100 Subject: [PATCH] feat: Allow querying puter-apps driver by partial app names --- packages/backend/src/om/entitystorage/AppES.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/packages/backend/src/om/entitystorage/AppES.js b/packages/backend/src/om/entitystorage/AppES.js index 671d927a7..3a2eac87a 100644 --- a/packages/backend/src/om/entitystorage/AppES.js +++ b/packages/backend/src/om/entitystorage/AppES.js @@ -23,7 +23,7 @@ const { AppUnderUserActorType } = require("../../services/auth/Actor"); const { DB_WRITE } = require("../../services/database/consts"); const { Context } = require("../../util/context"); const { origin_from_url } = require("../../util/urlutil"); -const { Eq, Or } = require("../query/query"); +const { Eq, Like, Or } = require("../query/query"); const { BaseES } = require("./BaseES"); const uuidv4 = require('uuid').v4; @@ -34,13 +34,19 @@ class AppES extends BaseES { const services = this.context.get('services'); this.db = services.get('database').get(DB_WRITE, 'apps'); }, - async create_predicate (id) { + async create_predicate (id, ...args) { if ( id === 'user-can-edit' ) { return new Eq({ key: 'owner', value: Context.get('user').id, }); } + if ( id === 'name-like' ) { + return new Like({ + key: 'name', + value: args[0], + }); + } }, async delete (uid, extra) { const svc_appInformation = this.context.get('services').get('app-information');