diff --git a/packages/common/package.json b/packages/common/package.json
index ceda0d26c396344b3e180e3df8a01d8ec81e07f6..cef9b7e0582c7a350fda633e1badbbf18e4b54c0 100644
--- a/packages/common/package.json
+++ b/packages/common/package.json
@@ -1,7 +1,7 @@
 {
   "name": "@dbp-toolkit/common",
   "homepage": "https://gitlab.tugraz.at/dbp/web-components/toolkit/-/tree/master/packages/common",
-  "version": "0.2.5",
+  "version": "0.2.6",
   "module": "index.js",
   "license": "LGPL-2.1-or-later",
   "repository": {
diff --git a/packages/common/utils.js b/packages/common/utils.js
index 64f7b396b9cd77d269b04d5cffc9fcd5d82a119b..5fb9d93b2b0870ee6f9c238218621a5edd4d5bc1 100644
--- a/packages/common/utils.js
+++ b/packages/common/utils.js
@@ -335,3 +335,23 @@ export const getBaseName = (str) => {
 export const getFileExtension = (str) => {
     return str.split('.').pop();
 };
+
+/**
+ * Queries for "selector" in "root" in the slot html
+ *
+ * @param root
+ * @param selector
+ * @returns {*[]}
+ */
+export const querySlotted = (root, selector) => {
+    let slots = root.querySelectorAll('slot');
+    let matched = [];
+
+    slots.forEach((slot) => {
+        matched = matched.concat(slot.assignedElements().filter((el) => {
+            return el.matches(selector);
+        }));
+    });
+
+    return matched;
+};