Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
e8924c9
feat(containers): sort the tiles in a container by hand, alphabetical…
rubenvdlinde Sep 30, 2026
25050f7
docs(openspec): archive launcher-tile-sorting, tile-most-used and d-t…
rubenvdlinde Sep 30, 2026
e0d60b8
chore(containers): tag the local tile use helpers with their spec
rubenvdlinde Sep 30, 2026
6b68477
feat(search): administrators define search shortcuts, a prefix that s…
rubenvdlinde Sep 30, 2026
af2c9ec
feat(search): a known prefix sends the query straight to its site, an…
rubenvdlinde Sep 30, 2026
51d4103
docs(openspec): archive search-ai-prefix-shortcuts, d-search-prefix i…
rubenvdlinde Sep 30, 2026
0f49b0f
Merge remote-tracking branch 'origin/feat/widgets-people-expertise-an…
rubenvdlinde Sep 30, 2026
95ec33d
Merge branch 'feat/launcher-tile-sorting' into feat/search-ai-prefix-…
rubenvdlinde Sep 30, 2026
bc924c6
Merge branch 'feat/widgets-people-expertise-and-fields' into feat/lau…
rubenvdlinde Sep 30, 2026
59cecee
Merge branch 'feat/widgets-people-expertise-and-fields' into feat/lau…
rubenvdlinde Sep 30, 2026
bd3ef26
Merge remote-tracking branch 'origin/feat/launcher-tile-sorting' into…
rubenvdlinde Sep 30, 2026
4f3c820
fix(containers): count tile clicks with one delegated listener, so th…
rubenvdlinde Sep 30, 2026
08cd265
Merge remote-tracking branch 'origin/feat/launcher-tile-sorting' into…
rubenvdlinde Sep 30, 2026
2bc7583
Merge branch 'feat/widgets-people-expertise-and-fields' into feat/lau…
rubenvdlinde Oct 5, 2026
7df9014
Merge branch 'feat/launcher-tile-sorting' into feat/search-ai-prefix-…
rubenvdlinde Oct 5, 2026
ac0852a
docs(tiles): tag the container widget's lifecycle hooks with their sp…
rubenvdlinde Oct 5, 2026
0ed77d6
Merge branch 'feat/launcher-tile-sorting' into feat/search-ai-prefix-…
rubenvdlinde Oct 5, 2026
984a7fa
docs(search): tag the shortcuts watcher with its spec (gate 16)
rubenvdlinde Oct 5, 2026
98000a9
Merge branch 'feat/widgets-people-expertise-and-fields' into feat/lau…
rubenvdlinde Oct 5, 2026
287bf74
Merge branch 'feat/launcher-tile-sorting' into feat/search-ai-prefix-…
rubenvdlinde Oct 5, 2026
3d3a3b6
test(search): cover the shortcuts endpoint through the real service: …
rubenvdlinde Oct 5, 2026
f46ccf4
Merge remote-tracking branch 'origin/development' into feat/launcher-…
rubenvdlinde Oct 23, 2026
ae2e4ce
Merge branch 'feat/launcher-tile-sorting' into feat/search-ai-prefix-…
rubenvdlinde Oct 23, 2026
9120146
test(admin): the search shortcuts tab is the thirteenth admin tab
rubenvdlinde Oct 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions appinfo/routes.php
Original file line number Diff line number Diff line change
Expand Up @@ -468,6 +468,10 @@
// returns `{users, total, hasMore}` with offset-based pagination.
['name' => 'peopleWidget#getUsers', 'url' => '/api/people', 'verb' => 'GET'],

// Search shortcuts (search-ai-prefix-shortcuts REQ-QSP-001): admin list.
['name' => 'searchShortcuts#index', 'url' => '/api/admin/search-shortcuts', 'verb' => 'GET'],
['name' => 'searchShortcuts#save', 'url' => '/api/admin/search-shortcuts', 'verb' => 'PUT'],

// Custom profile fields (REQ-PEX-001, REQ-PEX-002): own values for
// every signed-in person, definitions for administrators.
['name' => 'profileFields#getOwn', 'url' => '/api/profile-fields/me', 'verb' => 'GET'],
Expand Down
23 changes: 23 additions & 0 deletions l10n/be.js
Original file line number Diff line number Diff line change
Expand Up @@ -1324,6 +1324,29 @@ OC.L10N.register(
"Save profile fields" : "Захаваць палі профілю",
"The profile fields could not be loaded." : "Не ўдалося загрузіць палі профілю.",
"The profile fields could not be saved." : "Не ўдалося захаваць палі профілю.",
"Forget my usage" : "Забыць маё выкарыстанне",
"Sorted alphabetically" : "Упарадкавана па алфавіце",
"Sorted by most used" : "Упарадкавана па частаце выкарыстання",
"Sorted by last used" : "Упарадкавана па апошнім выкарыстанні",
"Sorted at random" : "Упарадкавана выпадкова",
"Sort tiles" : "Парадак плітак",
"By hand" : "Уручную",
"Alphabetically" : "Па алфавіце",
"Most used" : "Найчасцей выкарыстоўваныя",
"Last used" : "Апошнія выкарыстаныя",
"At random" : "Выпадкова",
"Search shortcuts" : "Ярлыкі пошуку",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts." : "Пошук, які пачынаецца з прэфікса, напрыклад !t printer, адразу адкрывае гэты сайт у новай укладцы. Увод ? у полі пошуку паказвае спіс ярлыкоў.",
"Prefix" : "Прэфікс",
"Address with {query}" : "Адрас з {query}",
"No search shortcuts yet." : "Ярлыкоў пошуку пакуль няма.",
"Search shortcuts saved." : "Ярлыкі пошуку захаваны.",
"Add shortcut" : "Дадаць ярлык",
"Save search shortcuts" : "Захаваць ярлыкі пошуку",
"The search shortcuts could not be loaded." : "Не ўдалося загрузіць ярлыкі пошуку.",
"The search shortcuts could not be saved." : "Не ўдалося захаваць ярлыкі пошуку.",
"Search {name} for {query}" : "Шукаць у {name}: {query}",
"Type what to search for in {name}" : "Увядзіце, што шукаць у {name}",
"Update template" : "Update template",
"Working out what changes." : "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are." : "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/be.json
Original file line number Diff line number Diff line change
Expand Up @@ -1301,6 +1301,29 @@
"Save profile fields": "Захаваць палі профілю",
"The profile fields could not be loaded.": "Не ўдалося загрузіць палі профілю.",
"The profile fields could not be saved.": "Не ўдалося захаваць палі профілю.",
"Forget my usage": "Забыць маё выкарыстанне",
"Sorted alphabetically": "Упарадкавана па алфавіце",
"Sorted by most used": "Упарадкавана па частаце выкарыстання",
"Sorted by last used": "Упарадкавана па апошнім выкарыстанні",
"Sorted at random": "Упарадкавана выпадкова",
"Sort tiles": "Парадак плітак",
"By hand": "Уручную",
"Alphabetically": "Па алфавіце",
"Most used": "Найчасцей выкарыстоўваныя",
"Last used": "Апошнія выкарыстаныя",
"At random": "Выпадкова",
"Search shortcuts": "Ярлыкі пошуку",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts.": "Пошук, які пачынаецца з прэфікса, напрыклад !t printer, адразу адкрывае гэты сайт у новай укладцы. Увод ? у полі пошуку паказвае спіс ярлыкоў.",
"Prefix": "Прэфікс",
"Address with {query}": "Адрас з {query}",
"No search shortcuts yet.": "Ярлыкоў пошуку пакуль няма.",
"Search shortcuts saved.": "Ярлыкі пошуку захаваны.",
"Add shortcut": "Дадаць ярлык",
"Save search shortcuts": "Захаваць ярлыкі пошуку",
"The search shortcuts could not be loaded.": "Не ўдалося загрузіць ярлыкі пошуку.",
"The search shortcuts could not be saved.": "Не ўдалося захаваць ярлыкі пошуку.",
"Search {name} for {query}": "Шукаць у {name}: {query}",
"Type what to search for in {name}": "Увядзіце, што шукаць у {name}",
"Update template": "Update template",
"Working out what changes.": "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.": "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/bg.js
Original file line number Diff line number Diff line change
Expand Up @@ -1333,6 +1333,29 @@ OC.L10N.register(
"Save profile fields" : "Запазване на полетата на профила",
"The profile fields could not be loaded." : "Полетата на профила не можаха да се заредят.",
"The profile fields could not be saved." : "Полетата на профила не можаха да се запазят.",
"Forget my usage" : "Забрави използването ми",
"Sorted alphabetically" : "Подредено по азбучен ред",
"Sorted by most used" : "Подредено по най-използвани",
"Sorted by last used" : "Подредено по последно използвани",
"Sorted at random" : "Подредено в случаен ред",
"Sort tiles" : "Подреждане на плочките",
"By hand" : "Ръчно",
"Alphabetically" : "По азбучен ред",
"Most used" : "Най-използвани",
"Last used" : "Последно използвани",
"At random" : "В случаен ред",
"Search shortcuts" : "Преки пътища за търсене",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts." : "Търсене, което започва с префикс, например !t printer, отива направо към този сайт в нов раздел. Въвеждането на ? в поле за търсене показва преките пътища.",
"Prefix" : "Префикс",
"Address with {query}" : "Адрес с {query}",
"No search shortcuts yet." : "Все още няма преки пътища за търсене.",
"Search shortcuts saved." : "Преките пътища за търсене са запазени.",
"Add shortcut" : "Добавяне на пряк път",
"Save search shortcuts" : "Запазване на преките пътища за търсене",
"The search shortcuts could not be loaded." : "Преките пътища за търсене не можаха да се заредят.",
"The search shortcuts could not be saved." : "Преките пътища за търсене не можаха да се запазят.",
"Search {name} for {query}" : "Търсене в {name} за {query}",
"Type what to search for in {name}" : "Въведете какво да търсите в {name}",
"Update template" : "Update template",
"Working out what changes." : "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are." : "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/bg.json
Original file line number Diff line number Diff line change
Expand Up @@ -1300,6 +1300,29 @@
"Save profile fields": "Запазване на полетата на профила",
"The profile fields could not be loaded.": "Полетата на профила не можаха да се заредят.",
"The profile fields could not be saved.": "Полетата на профила не можаха да се запазят.",
"Forget my usage": "Забрави използването ми",
"Sorted alphabetically": "Подредено по азбучен ред",
"Sorted by most used": "Подредено по най-използвани",
"Sorted by last used": "Подредено по последно използвани",
"Sorted at random": "Подредено в случаен ред",
"Sort tiles": "Подреждане на плочките",
"By hand": "Ръчно",
"Alphabetically": "По азбучен ред",
"Most used": "Най-използвани",
"Last used": "Последно използвани",
"At random": "В случаен ред",
"Search shortcuts": "Преки пътища за търсене",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts.": "Търсене, което започва с префикс, например !t printer, отива направо към този сайт в нов раздел. Въвеждането на ? в поле за търсене показва преките пътища.",
"Prefix": "Префикс",
"Address with {query}": "Адрес с {query}",
"No search shortcuts yet.": "Все още няма преки пътища за търсене.",
"Search shortcuts saved.": "Преките пътища за търсене са запазени.",
"Add shortcut": "Добавяне на пряк път",
"Save search shortcuts": "Запазване на преките пътища за търсене",
"The search shortcuts could not be loaded.": "Преките пътища за търсене не можаха да се заредят.",
"The search shortcuts could not be saved.": "Преките пътища за търсене не можаха да се запазят.",
"Search {name} for {query}": "Търсене в {name} за {query}",
"Type what to search for in {name}": "Въведете какво да търсите в {name}",
"Update template": "Update template",
"Working out what changes.": "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.": "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/bs.js
Original file line number Diff line number Diff line change
Expand Up @@ -1333,6 +1333,29 @@ OC.L10N.register(
"Save profile fields" : "Spremi polja profila",
"The profile fields could not be loaded." : "Polja profila nisu mogla biti učitana.",
"The profile fields could not be saved." : "Polja profila nisu mogla biti spremljena.",
"Forget my usage" : "Zaboravi moje korištenje",
"Sorted alphabetically" : "Poredano abecedno",
"Sorted by most used" : "Poredano po najčešće korištenim",
"Sorted by last used" : "Poredano po zadnje korištenim",
"Sorted at random" : "Poredano nasumično",
"Sort tiles" : "Poredaj pločice",
"By hand" : "Ručno",
"Alphabetically" : "Abecedno",
"Most used" : "Najčešće korišteno",
"Last used" : "Zadnje korišteno",
"At random" : "Nasumično",
"Search shortcuts" : "Prečaci za pretragu",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts." : "Pretraga koja počinje prefiksom, npr. !t printer, ide ravno na tu stranicu u novoj kartici. Upisivanje ? u polje za pretragu prikazuje prečace.",
"Prefix" : "Prefiks",
"Address with {query}" : "Adresa s {query}",
"No search shortcuts yet." : "Još nema prečaca za pretragu.",
"Search shortcuts saved." : "Prečaci za pretragu su spremljeni.",
"Add shortcut" : "Dodaj prečac",
"Save search shortcuts" : "Spremi prečace za pretragu",
"The search shortcuts could not be loaded." : "Prečaci za pretragu nisu mogli biti učitani.",
"The search shortcuts could not be saved." : "Prečaci za pretragu nisu mogli biti spremljeni.",
"Search {name} for {query}" : "Pretraži {name} za {query}",
"Type what to search for in {name}" : "Upišite što tražite u {name}",
"Update template" : "Update template",
"Working out what changes." : "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are." : "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/bs.json
Original file line number Diff line number Diff line change
Expand Up @@ -1301,6 +1301,29 @@
"Save profile fields": "Spremi polja profila",
"The profile fields could not be loaded.": "Polja profila nisu mogla biti učitana.",
"The profile fields could not be saved.": "Polja profila nisu mogla biti spremljena.",
"Forget my usage": "Zaboravi moje korištenje",
"Sorted alphabetically": "Poredano abecedno",
"Sorted by most used": "Poredano po najčešće korištenim",
"Sorted by last used": "Poredano po zadnje korištenim",
"Sorted at random": "Poredano nasumično",
"Sort tiles": "Poredaj pločice",
"By hand": "Ručno",
"Alphabetically": "Abecedno",
"Most used": "Najčešće korišteno",
"Last used": "Zadnje korišteno",
"At random": "Nasumično",
"Search shortcuts": "Prečaci za pretragu",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts.": "Pretraga koja počinje prefiksom, npr. !t printer, ide ravno na tu stranicu u novoj kartici. Upisivanje ? u polje za pretragu prikazuje prečace.",
"Prefix": "Prefiks",
"Address with {query}": "Adresa s {query}",
"No search shortcuts yet.": "Još nema prečaca za pretragu.",
"Search shortcuts saved.": "Prečaci za pretragu su spremljeni.",
"Add shortcut": "Dodaj prečac",
"Save search shortcuts": "Spremi prečace za pretragu",
"The search shortcuts could not be loaded.": "Prečaci za pretragu nisu mogli biti učitani.",
"The search shortcuts could not be saved.": "Prečaci za pretragu nisu mogli biti spremljeni.",
"Search {name} for {query}": "Pretraži {name} za {query}",
"Type what to search for in {name}": "Upišite što tražite u {name}",
"Update template": "Update template",
"Working out what changes.": "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.": "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
23 changes: 23 additions & 0 deletions l10n/ca.js
Original file line number Diff line number Diff line change
Expand Up @@ -1333,6 +1333,29 @@ OC.L10N.register(
"Save profile fields" : "Desa els camps del perfil",
"The profile fields could not be loaded." : "No s'han pogut carregar els camps del perfil.",
"The profile fields could not be saved." : "No s'han pogut desar els camps del perfil.",
"Forget my usage" : "Oblida el meu ús",
"Sorted alphabetically" : "Ordenat alfabèticament",
"Sorted by most used" : "Ordenat pels més usats",
"Sorted by last used" : "Ordenat pels darrers usats",
"Sorted at random" : "Ordenat a l'atzar",
"Sort tiles" : "Ordena les rajoles",
"By hand" : "A mà",
"Alphabetically" : "Alfabèticament",
"Most used" : "Els més usats",
"Last used" : "Darrers usats",
"At random" : "A l'atzar",
"Search shortcuts" : "Dreceres de cerca",
"A search that starts with a prefix, such as !t printer, goes straight to that site in a new tab. Typing ? in a search box lists the shortcuts." : "Una cerca que comença amb un prefix, com ara !t printer, va directament a aquell lloc en una pestanya nova. Escriure ? en un quadre de cerca mostra les dreceres.",
"Prefix" : "Prefix",
"Address with {query}" : "Adreça amb {query}",
"No search shortcuts yet." : "Encara no hi ha dreceres de cerca.",
"Search shortcuts saved." : "S'han desat les dreceres de cerca.",
"Add shortcut" : "Afegeix una drecera",
"Save search shortcuts" : "Desa les dreceres de cerca",
"The search shortcuts could not be loaded." : "No s'han pogut carregar les dreceres de cerca.",
"The search shortcuts could not be saved." : "No s'han pogut desar les dreceres de cerca.",
"Search {name} for {query}" : "Cerca {query} a {name}",
"Type what to search for in {name}" : "Escriviu què voleu cercar a {name}",
"Update template" : "Update template",
"Working out what changes." : "Working out what changes.",
"This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are." : "This brings \"{name}\" from version {from} to version {to}. Its name, its groups and whether it is the default stay as they are.",
Expand Down
Loading
Loading