masks 0.3.2 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/builds/masks/application.css +1 -1
  3. data/app/assets/builds/masks/application.js +90 -3
  4. data/app/assets/builds/masks/application.js.map +4 -4
  5. data/app/assets/javascripts/controllers/application.js +1 -1
  6. data/app/assets/javascripts/controllers/index.js +9 -0
  7. data/app/assets/javascripts/controllers/table_controller.js +15 -0
  8. data/app/assets/stylesheets/application.css +12 -4
  9. data/app/controllers/concerns/masks/controller.rb +1 -1
  10. data/app/controllers/masks/manage/actors_controller.rb +72 -1
  11. data/app/controllers/masks/manage/base_controller.rb +10 -2
  12. data/app/controllers/masks/manage/clients_controller.rb +84 -0
  13. data/app/controllers/masks/manage/dashboard_controller.rb +15 -0
  14. data/app/controllers/masks/manage/devices_controller.rb +19 -0
  15. data/app/controllers/masks/openid/authorizations_controller.rb +45 -0
  16. data/app/controllers/masks/openid/discoveries_controller.rb +55 -0
  17. data/app/controllers/masks/openid/tokens_controller.rb +45 -0
  18. data/app/controllers/masks/openid/userinfo_controller.rb +28 -0
  19. data/app/controllers/masks/sessions_controller.rb +1 -1
  20. data/app/models/concerns/masks/access.rb +2 -2
  21. data/app/models/masks/access/actor_password.rb +2 -1
  22. data/app/models/masks/access/actor_signup.rb +1 -2
  23. data/app/models/masks/credentials/access_token.rb +60 -0
  24. data/app/models/masks/credentials/key.rb +1 -1
  25. data/app/models/masks/credentials/return_to.rb +27 -0
  26. data/app/models/masks/mask.rb +12 -1
  27. data/app/models/masks/openid/authorization.rb +116 -0
  28. data/app/models/masks/openid/token.rb +56 -0
  29. data/app/models/masks/rails/actor.rb +23 -1
  30. data/app/models/masks/rails/openid/access_token.rb +55 -0
  31. data/app/models/masks/rails/openid/authorization.rb +45 -0
  32. data/app/models/masks/rails/openid/client.rb +186 -0
  33. data/app/models/masks/rails/openid/id_token.rb +43 -0
  34. data/app/models/masks/sessions/access.rb +2 -1
  35. data/app/resources/masks/session_resource.rb +1 -1
  36. data/app/views/layouts/masks/manage.html.erb +22 -5
  37. data/app/views/masks/actor_mailer/recover_credentials.html.erb +2 -3
  38. data/app/views/masks/actor_mailer/verify_email.html.erb +2 -3
  39. data/app/views/masks/actors/current.html.erb +7 -14
  40. data/app/views/masks/application/_header.html.erb +3 -4
  41. data/app/views/masks/backup_codes/new.html.erb +34 -20
  42. data/app/views/masks/emails/new.html.erb +14 -8
  43. data/app/views/masks/keys/new.html.erb +7 -7
  44. data/app/views/masks/manage/actors/index.html.erb +101 -37
  45. data/app/views/masks/manage/{actor → actors}/show.html.erb +63 -17
  46. data/app/views/masks/manage/clients/index.html.erb +102 -0
  47. data/app/views/masks/manage/clients/show.html.erb +156 -0
  48. data/app/views/masks/manage/dashboard/index.html.erb +10 -0
  49. data/app/views/masks/manage/devices/index.html.erb +47 -0
  50. data/app/views/masks/one_time_code/new.html.erb +41 -24
  51. data/app/views/masks/openid/authorizations/error.html.erb +23 -0
  52. data/app/views/masks/openid/authorizations/new.html.erb +46 -0
  53. data/app/views/masks/passwords/edit.html.erb +20 -7
  54. data/app/views/masks/recoveries/new.html.erb +2 -4
  55. data/app/views/masks/recoveries/password.html.erb +2 -3
  56. data/app/views/masks/sessions/new.html.erb +22 -23
  57. data/config/initializers/inflections.rb +5 -0
  58. data/config/locales/en.yml +23 -2
  59. data/config/routes.rb +40 -3
  60. data/db/migrate/20240329182422_support_openid.rb +64 -0
  61. data/lib/generators/masks/install/templates/masks.json +4 -1
  62. data/lib/masks/configuration.rb +22 -9
  63. data/lib/masks/version.rb +1 -1
  64. data/lib/masks.rb +1 -0
  65. data/lib/tasks/masks_tasks.rake +2 -2
  66. data/masks.json +44 -6
  67. metadata +59 -11
  68. data/app/assets/builds/application.css +0 -4764
  69. data/app/assets/builds/application.js +0 -8236
  70. data/app/assets/builds/application.js.map +0 -7
  71. data/app/controllers/masks/manage/actor_controller.rb +0 -35
@@ -5021,7 +5021,7 @@
5021
5021
  function setFormMode(mode) {
5022
5022
  session.setFormMode(mode);
5023
5023
  }
5024
- var Turbo = /* @__PURE__ */ Object.freeze({
5024
+ var Turbo2 = /* @__PURE__ */ Object.freeze({
5025
5025
  __proto__: null,
5026
5026
  navigator: navigator$1,
5027
5027
  session,
@@ -5718,7 +5718,7 @@
5718
5718
  element = element.parentElement;
5719
5719
  }
5720
5720
  })();
5721
- window.Turbo = { ...Turbo, StreamActions };
5721
+ window.Turbo = { ...Turbo2, StreamActions };
5722
5722
  start();
5723
5723
 
5724
5724
  // node_modules/@hotwired/turbo-rails/app/javascript/turbo/cable.js
@@ -8291,9 +8291,79 @@
8291
8291
 
8292
8292
  // app/assets/javascripts/controllers/application.js
8293
8293
  var application = Application.start();
8294
- application.debug = false;
8294
+ application.debug = true;
8295
8295
  window.Stimulus = application;
8296
8296
 
8297
+ // node_modules/@stimulus-components/password-visibility/dist/stimulus-password-visibility.mjs
8298
+ var _PasswordVisibility = class _PasswordVisibility2 extends Controller {
8299
+ connect() {
8300
+ this.hidden = this.inputTarget.type === "password", this.class = this.hasHiddenClass ? this.hiddenClass : "hidden";
8301
+ }
8302
+ toggle(e) {
8303
+ e.preventDefault(), this.inputTarget.type = this.hidden ? "text" : "password", this.hidden = !this.hidden, this.iconTargets.forEach((icon) => icon.classList.toggle(this.class));
8304
+ }
8305
+ };
8306
+ _PasswordVisibility.targets = ["input", "icon"], _PasswordVisibility.classes = ["hidden"];
8307
+ var PasswordVisibility = _PasswordVisibility;
8308
+
8309
+ // node_modules/@stimulus-components/reveal/dist/stimulus-reveal-controller.mjs
8310
+ var _Reveal = class _Reveal2 extends Controller {
8311
+ connect() {
8312
+ this.class = this.hasHiddenClass ? this.hiddenClass : "hidden";
8313
+ }
8314
+ toggle() {
8315
+ this.itemTargets.forEach((item) => {
8316
+ item.classList.toggle(this.class);
8317
+ });
8318
+ }
8319
+ show() {
8320
+ this.itemTargets.forEach((item) => {
8321
+ item.classList.remove(this.class);
8322
+ });
8323
+ }
8324
+ hide() {
8325
+ this.itemTargets.forEach((item) => {
8326
+ item.classList.add(this.class);
8327
+ });
8328
+ }
8329
+ };
8330
+ _Reveal.targets = ["item"], _Reveal.classes = ["hidden"];
8331
+ var Reveal = _Reveal;
8332
+
8333
+ // node_modules/@stimulus-components/dialog/dist/stimulus-dialog.mjs
8334
+ var _Dialog = class _Dialog2 extends Controller {
8335
+ initialize() {
8336
+ this.forceClose = this.forceClose.bind(this);
8337
+ }
8338
+ connect() {
8339
+ this.openValue && this.open(), document.addEventListener("turbo:before-render", this.forceClose);
8340
+ }
8341
+ disconnect() {
8342
+ document.removeEventListener("turbo:before-render", this.forceClose);
8343
+ }
8344
+ open() {
8345
+ this.dialogTarget.showModal();
8346
+ }
8347
+ close() {
8348
+ this.dialogTarget.setAttribute("closing", ""), Promise.all(this.dialogTarget.getAnimations().map((animation) => animation.finished)).then(() => {
8349
+ this.dialogTarget.removeAttribute("closing"), this.dialogTarget.close();
8350
+ });
8351
+ }
8352
+ backdropClose(event) {
8353
+ event.target === this.dialogTarget && this.close();
8354
+ }
8355
+ forceClose() {
8356
+ this.dialogTarget.close();
8357
+ }
8358
+ };
8359
+ _Dialog.targets = ["dialog"], _Dialog.values = {
8360
+ open: {
8361
+ type: Boolean,
8362
+ default: false
8363
+ }
8364
+ };
8365
+ var Dialog = _Dialog;
8366
+
8297
8367
  // app/assets/javascripts/controllers/session_controller.js
8298
8368
  var session_controller_default = class extends Controller {
8299
8369
  static get targets() {
@@ -8444,12 +8514,29 @@
8444
8514
  }
8445
8515
  };
8446
8516
 
8517
+ // app/assets/javascripts/controllers/table_controller.js
8518
+ var table_controller_default = class extends Controller {
8519
+ static get targets() {
8520
+ return ["url"];
8521
+ }
8522
+ get href() {
8523
+ return this.urlTarget.href;
8524
+ }
8525
+ click(e) {
8526
+ Turbo.visit(this.href);
8527
+ }
8528
+ };
8529
+
8447
8530
  // app/assets/javascripts/controllers/index.js
8448
8531
  application.register("session", session_controller_default);
8449
8532
  application.register("recover", recover_controller_default);
8450
8533
  application.register("recover-password", recover_password_controller_default);
8451
8534
  application.register("emails", emails_controller_default);
8452
8535
  application.register("keys", keys_controller_default);
8536
+ application.register("table", table_controller_default);
8537
+ application.register("password-visibility", PasswordVisibility);
8538
+ application.register("reveal", Reveal);
8539
+ application.register("dialog", Dialog);
8453
8540
  })();
8454
8541
  /*! Bundled license information:
8455
8542