From b52d3c7d29838ab373feb3605ab5b83430aa325c Mon Sep 17 00:00:00 2001 From: Martin Brennan Date: Thu, 2 May 2024 12:42:30 +1000 Subject: [PATCH] DEV: Moving around admin persona config routes again (#586) The initial setup done in fb0d56324f9139f432c8797f25c30151ae66723b clashed with other plugins, I found this when trying to do the same for Gamification. This uses a better routing setup and removes the need to define the config nav link for Settings -- that is always inserted. Relies on https://github.com/discourse/discourse/pull/26707 --- ...in-plugins-show-discourse-ai-ai-personas-index.js | 7 ------- .../routes/admin-plugins-show-discourse-ai-index.js | 12 ------------ ... admin-plugins-show-discourse-ai-personas-new.js} | 2 +- ...admin-plugins-show-discourse-ai-personas-show.js} | 4 ++-- ...s => admin-plugins-show-discourse-ai-personas.js} | 0 .../ai-personas => discourse-ai-personas}/index.hbs | 0 .../ai-personas => discourse-ai-personas}/new.hbs | 0 .../ai-personas => discourse-ai-personas}/show.hbs | 0 .../discourse/admin-discourse-ai-plugin-route-map.js | 8 +++----- .../discourse/components/ai-persona-editor.gjs | 6 +++--- .../discourse/components/ai-persona-list-editor.gjs | 4 ++-- .../templates/admin-plugins/ai-personas/index.hbs | 1 - .../admin-plugins/discourse-ai/ai-personas/index.hbs | 1 - .../initializers/admin-plugin-configuration-nav.js | 6 +----- 14 files changed, 12 insertions(+), 39 deletions(-) delete mode 100644 admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-index.js delete mode 100644 admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-index.js rename admin/assets/javascripts/discourse/routes/{admin-plugins-show-discourse-ai-ai-personas-new.js => admin-plugins-show-discourse-ai-personas-new.js} (91%) rename admin/assets/javascripts/discourse/routes/{admin-plugins-show-discourse-ai-ai-personas-show.js => admin-plugins-show-discourse-ai-personas-show.js} (76%) rename admin/assets/javascripts/discourse/routes/{admin-plugins-show-discourse-ai-ai-personas.js => admin-plugins-show-discourse-ai-personas.js} (100%) rename admin/assets/javascripts/discourse/templates/admin-plugins/show/{discourse-ai/ai-personas => discourse-ai-personas}/index.hbs (100%) rename admin/assets/javascripts/discourse/templates/admin-plugins/show/{discourse-ai/ai-personas => discourse-ai-personas}/new.hbs (100%) rename admin/assets/javascripts/discourse/templates/admin-plugins/show/{discourse-ai/ai-personas => discourse-ai-personas}/show.hbs (100%) delete mode 100644 assets/javascripts/discourse/templates/admin-plugins/ai-personas/index.hbs delete mode 100644 assets/javascripts/discourse/templates/admin-plugins/discourse-ai/ai-personas/index.hbs diff --git a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-index.js b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-index.js deleted file mode 100644 index c41abaee..00000000 --- a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-index.js +++ /dev/null @@ -1,7 +0,0 @@ -import DiscourseRoute from "discourse/routes/discourse"; - -export default DiscourseRoute.extend({ - model() { - return this.modelFor("adminPlugins.show.discourse-ai.ai-personas"); - }, -}); diff --git a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-index.js b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-index.js deleted file mode 100644 index 6d3c5aa8..00000000 --- a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-index.js +++ /dev/null @@ -1,12 +0,0 @@ -import { inject as service } from "@ember/service"; -import DiscourseRoute from "discourse/routes/discourse"; - -export default class DiscourseAiIndexRoute extends DiscourseRoute { - @service router; - - beforeModel() { - return this.router.transitionTo( - "adminPlugins.show.discourse-ai.ai-personas.index" - ); - } -} diff --git a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-new.js b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-new.js similarity index 91% rename from admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-new.js rename to admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-new.js index 03d2a493..03be10ea 100644 --- a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-new.js +++ b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-new.js @@ -17,7 +17,7 @@ export default DiscourseRoute.extend({ this._super(controller, model); controller.set( "allPersonas", - this.modelFor("adminPlugins.show.discourse-ai.ai-personas") + this.modelFor("adminPlugins.show.discourse-ai-personas") ); }, }); diff --git a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-show.js b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-show.js similarity index 76% rename from admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-show.js rename to admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-show.js index e24c218d..2eb73816 100644 --- a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas-show.js +++ b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas-show.js @@ -3,7 +3,7 @@ import DiscourseRoute from "discourse/routes/discourse"; export default DiscourseRoute.extend({ async model(params) { const allPersonas = this.modelFor( - "adminPlugins.show.discourse-ai.ai-personas" + "adminPlugins.show.discourse-ai-personas" ); const id = parseInt(params.id, 10); return allPersonas.findBy("id", id); @@ -13,7 +13,7 @@ export default DiscourseRoute.extend({ this._super(controller, model); controller.set( "allPersonas", - this.modelFor("adminPlugins.show.discourse-ai.ai-personas") + this.modelFor("adminPlugins.show.discourse-ai-personas") ); }, }); diff --git a/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas.js b/admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas.js similarity index 100% rename from admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-ai-personas.js rename to admin/assets/javascripts/discourse/routes/admin-plugins-show-discourse-ai-personas.js diff --git a/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/index.hbs b/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/index.hbs similarity index 100% rename from admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/index.hbs rename to admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/index.hbs diff --git a/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/new.hbs b/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/new.hbs similarity index 100% rename from admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/new.hbs rename to admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/new.hbs diff --git a/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/show.hbs b/admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/show.hbs similarity index 100% rename from admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai/ai-personas/show.hbs rename to admin/assets/javascripts/discourse/templates/admin-plugins/show/discourse-ai-personas/show.hbs diff --git a/assets/javascripts/discourse/admin-discourse-ai-plugin-route-map.js b/assets/javascripts/discourse/admin-discourse-ai-plugin-route-map.js index 1db0e5aa..54411f90 100644 --- a/assets/javascripts/discourse/admin-discourse-ai-plugin-route-map.js +++ b/assets/javascripts/discourse/admin-discourse-ai-plugin-route-map.js @@ -4,11 +4,9 @@ export default { path: "/plugins", map() { - this.route("discourse-ai", { path: "/" }, function () { - this.route("ai-personas", function () { - this.route("new"); - this.route("show", { path: "/:id" }); - }); + this.route("discourse-ai-personas", { path: "ai-personas" }, function () { + this.route("new"); + this.route("show", { path: "/:id" }); }); }, }; diff --git a/assets/javascripts/discourse/components/ai-persona-editor.gjs b/assets/javascripts/discourse/components/ai-persona-editor.gjs index 334f7af8..1ed1474b 100644 --- a/assets/javascripts/discourse/components/ai-persona-editor.gjs +++ b/assets/javascripts/discourse/components/ai-persona-editor.gjs @@ -102,7 +102,7 @@ export default class PersonaEditor extends Component { if (isNew && this.args.model.rag_uploads.length === 0) { this.args.personas.addObject(this.args.model); this.router.transitionTo( - "adminPlugins.show.discourse-ai.ai-personas.show", + "adminPlugins.show.discourse-ai-personas.show", this.args.model ); } else { @@ -175,7 +175,7 @@ export default class PersonaEditor extends Component { return this.args.model.destroyRecord().then(() => { this.args.personas.removeObject(this.args.model); this.router.transitionTo( - "adminPlugins.show.discourse-ai.ai-personas.index" + "adminPlugins.show.discourse-ai-personas.index" ); }); }, @@ -265,7 +265,7 @@ export default class PersonaEditor extends Component {