+
+
+
+ {{t
+ 'resources.target.enable-session-recording.form.filter.label'
+ }}
+
+
+ {{#if this.toggleEnabled}}
+
+ {{t
+ 'resources.target.enable-session-recording.form.select.label'
+ }}
+
+ {{!TODO: add correct description for form-select}}
+
+ {{t
+ 'resources.target.enable-session-recording.form.select.description'
+ }}
+
+
+ {{!TODO: replace dummy data with storage-bucket name and remove uneeded translations}}
+
+
+
+
+
+ {{#if @model.errors.name}}
+
+ {{#each @model.errors.name as |error|}}
+ {{error.message}}
+ {{/each}}
+
+ {{/if}}
+
+ {{/if}}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/ui/admin/app/components/form/enable-session-recording/index.js b/ui/admin/app/components/form/enable-session-recording/index.js
new file mode 100644
index 000000000..2ad3f2629
--- /dev/null
+++ b/ui/admin/app/components/form/enable-session-recording/index.js
@@ -0,0 +1,7 @@
+import Component from '@glimmer/component';
+import { tracked } from '@glimmer/tracking';
+
+export default class FormEnableSessionRecordingIndexComponent extends Component {
+ // =attributes
+ @tracked toggleEnabled = true;
+}
diff --git a/ui/admin/app/controllers/scopes/scope/targets/target/enable-session-recording.js b/ui/admin/app/controllers/scopes/scope/targets/target/enable-session-recording.js
new file mode 100644
index 000000000..1af8f7f7d
--- /dev/null
+++ b/ui/admin/app/controllers/scopes/scope/targets/target/enable-session-recording.js
@@ -0,0 +1,18 @@
+import Controller from '@ember/controller';
+import { inject as service } from '@ember/service';
+
+export default class ScopesScopeTargetsTargetEnableSessionRecordingController extends Controller {
+ // =services
+
+ @service intl;
+
+ // =attributes
+
+ /**
+ * Translated enable session recording breadcrumb
+ * @type {string}
+ */
+ get breadCrumb() {
+ return this.intl.t('resources.target.enable-session-recording.title');
+ }
+}
diff --git a/ui/admin/app/routes/scopes/scope/targets/target/enable-session-recording.js b/ui/admin/app/routes/scopes/scope/targets/target/enable-session-recording.js
index d6dd6e257..5dd07dd22 100644
--- a/ui/admin/app/routes/scopes/scope/targets/target/enable-session-recording.js
+++ b/ui/admin/app/routes/scopes/scope/targets/target/enable-session-recording.js
@@ -1,3 +1,20 @@
import Route from '@ember/routing/route';
+import { inject as service } from '@ember/service';
-export default class ScopesScopeTargetsTargetEnableSessionRecordingRoute extends Route {}
+export default class ScopesScopeTargetsTargetEnableSessionRecordingRoute extends Route {
+ // =services
+
+ @service router;
+
+ // =methods
+
+ /**
+ * Returns the current target and all storage buckets.
+ * @return {{target: TargetModel, storageBuckets: [StorageBucketModel]}}
+ */
+
+ async model() {
+ // TODO: need model for storage_bucket as well
+ return this.modelFor('scopes.scope.targets.target');
+ }
+}
diff --git a/ui/admin/app/styles/app.scss b/ui/admin/app/styles/app.scss
index 4131c3e5b..99cf43f94 100644
--- a/ui/admin/app/styles/app.scss
+++ b/ui/admin/app/styles/app.scss
@@ -643,6 +643,21 @@
}
}
+.enable-session-recording-toggle {
+ width: 50%;
+ margin-top: 1.5rem;
+
+ .hds-form-field--layout-vertical,
+ .hds-link-standalone {
+ margin-left: 2.5rem;
+ }
+
+ .hds-link-standalone {
+ margin-top: 0.75rem;
+ margin-bottom: 1.5rem;
+ }
+}
+
// target sidebar
.target-sidebar {
.title-wrapper {
diff --git a/ui/admin/app/templates/scopes/scope/targets/target/enable-session-recording.hbs b/ui/admin/app/templates/scopes/scope/targets/target/enable-session-recording.hbs
index 559ab26d4..81e7bad08 100644
--- a/ui/admin/app/templates/scopes/scope/targets/target/enable-session-recording.hbs
+++ b/ui/admin/app/templates/scopes/scope/targets/target/enable-session-recording.hbs
@@ -1,2 +1,30 @@
{{page-title (t 'resources.target.actions.enable-session-recording')}}
-{{outlet}}
\ No newline at end of file
+
+