super 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +165 -0
  3. data/README.md +102 -8
  4. data/app/assets/config/super_manifest.js +1 -0
  5. data/app/assets/javascripts/super/application.js +3483 -0
  6. data/app/assets/stylesheets/super/application.css +35265 -0
  7. data/app/controllers/super/application_controller.rb +84 -0
  8. data/app/views/layouts/super/application.html.erb +39 -0
  9. data/app/views/super/application/_form.html.erb +13 -0
  10. data/app/views/super/application/_form_field.html.erb +7 -0
  11. data/app/views/super/application/_form_generic_select.html.erb +19 -0
  12. data/app/views/super/application/_form_generic_text.html.erb +7 -0
  13. data/app/views/super/application/_index.html.erb +58 -0
  14. data/app/views/super/application/edit.html.erb +7 -0
  15. data/app/views/super/application/index.html.erb +1 -0
  16. data/app/views/super/application/new.html.erb +7 -0
  17. data/app/views/super/application/show.html.erb +10 -0
  18. data/app/views/super/feather/README.md +32 -0
  19. data/app/views/super/feather/_chevron_down.svg +1 -0
  20. data/frontend/super-frontend/build.js +34 -0
  21. data/frontend/super-frontend/dist/application.css +35265 -0
  22. data/frontend/super-frontend/dist/application.js +3483 -0
  23. data/frontend/super-frontend/package.json +14 -0
  24. data/frontend/super-frontend/postcss.config.js +6 -0
  25. data/frontend/super-frontend/src/javascripts/super/application.js +11 -0
  26. data/frontend/super-frontend/src/stylesheets/super/application.css +14 -0
  27. data/frontend/super-frontend/tailwind.config.js +7 -0
  28. data/frontend/super-frontend/yarn.lock +5355 -0
  29. data/lib/generators/super/install/USAGE +32 -0
  30. data/lib/generators/super/install/install_generator.rb +47 -0
  31. data/lib/generators/super/install/templates/base_controller.rb.tt +2 -0
  32. data/lib/generators/super/install/templates/initializer.rb.tt +5 -0
  33. data/lib/generators/super/resource/USAGE +9 -0
  34. data/lib/generators/super/resource/resource_generator.rb +54 -0
  35. data/lib/generators/super/resource/templates/resource_dashboard.rb.tt +65 -0
  36. data/lib/generators/super/resource/templates/resources_controller.rb.tt +9 -0
  37. data/lib/generators/super/webpacker/USAGE +14 -0
  38. data/lib/generators/super/webpacker/templates/pack_super_application.js.erb.tt +2 -0
  39. data/lib/generators/super/webpacker/webpacker_generator.rb +17 -0
  40. data/lib/super.rb +17 -4
  41. data/lib/super/assets.rb +62 -0
  42. data/lib/super/configuration.rb +88 -0
  43. data/lib/super/controls.rb +25 -0
  44. data/lib/super/display.rb +9 -0
  45. data/lib/super/display/schema_types.rb +41 -0
  46. data/lib/super/engine.rb +5 -0
  47. data/lib/super/error.rb +8 -0
  48. data/lib/super/form/schema_types.rb +47 -0
  49. data/lib/super/inline_callback.rb +82 -0
  50. data/lib/super/navigation/automatic.rb +69 -0
  51. data/lib/super/pagination.rb +59 -0
  52. data/lib/super/plugin.rb +89 -0
  53. data/lib/super/schema.rb +24 -0
  54. data/lib/super/test_support/fixtures/members.yml +336 -0
  55. data/lib/super/test_support/fixtures/ships.yml +10 -0
  56. data/lib/super/test_support/setup.rb +79 -0
  57. data/lib/super/test_support/starfleet_seeder.rb +49 -0
  58. data/lib/super/test_support/templates/20190216224956_create_members.rb +11 -0
  59. data/lib/super/test_support/templates/20190803143320_create_ships.rb +11 -0
  60. data/lib/super/test_support/templates/20190806014121_add_ship_to_members.rb +5 -0
  61. data/lib/super/test_support/templates/admin/members_controller.rb +9 -0
  62. data/lib/super/test_support/templates/admin/ships_controller.rb +9 -0
  63. data/lib/super/test_support/templates/admin_controller.rb +2 -0
  64. data/lib/super/test_support/templates/member.rb +16 -0
  65. data/lib/super/test_support/templates/member_dashboard.rb +90 -0
  66. data/lib/super/test_support/templates/routes.rb +10 -0
  67. data/lib/super/test_support/templates/seeds.rb +2 -0
  68. data/lib/super/test_support/templates/ship.rb +3 -0
  69. data/lib/super/test_support/templates/ship_dashboard.rb +79 -0
  70. data/lib/super/version.rb +1 -1
  71. data/lib/super/view.rb +25 -0
  72. metadata +131 -12
  73. data/LICENSE.txt +0 -40
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8fab4db6e7d173cf9cbc0e0e75ca591b8713701420074507aafa20399725e644
4
- data.tar.gz: 5a5dcc7ab979a1b97c36cb5131e39dad148fd2777b745829875622430429e6b3
3
+ metadata.gz: b163f7e235c08db1d35265eb7d775ed897efc11efcb2a20afb488c9bf1a3a5f4
4
+ data.tar.gz: b09f70d36011346bd2d159a10f2fe3a0e355b33b8fd85f358b0d4468e779e9e2
5
5
  SHA512:
6
- metadata.gz: 58a086effc3234a454f7bbf06ee8560dd263bd8fa7b905a913e09181fd485debf6cbc9f23660a3a1d0204db1ee2db1439777f76009bca54526e4d19233b5773d
7
- data.tar.gz: 02301b7074c541457cd396547870f1fd92bf8c83ca55bc571b801c8c0f50ee073f8691f265dbaf98df1ad3398cb95d5dec0f45a1ced7c450d0bf3df821d065af
6
+ metadata.gz: a98e6f5cacff41948d7bf5eba93c1b73e0425180b142e214a66e07c3e10ee56f5c8236e80658f0d9bccf32201cd576b628a1f06abffd684c00df1a390ebac518
7
+ data.tar.gz: 840ab8f2d560c5f0fb5abdc9de0e2398be6a2f6fc835af76d7a66b0d2a41c2c2f35fd664069948808c8839d5e6c19a649bc420731abd424e9410e62751edb44c
data/LICENSE ADDED
@@ -0,0 +1,165 @@
1
+ GNU LESSER GENERAL PUBLIC LICENSE
2
+ Version 3, 29 June 2007
3
+
4
+ Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
5
+ Everyone is permitted to copy and distribute verbatim copies
6
+ of this license document, but changing it is not allowed.
7
+
8
+
9
+ This version of the GNU Lesser General Public License incorporates
10
+ the terms and conditions of version 3 of the GNU General Public
11
+ License, supplemented by the additional permissions listed below.
12
+
13
+ 0. Additional Definitions.
14
+
15
+ As used herein, "this License" refers to version 3 of the GNU Lesser
16
+ General Public License, and the "GNU GPL" refers to version 3 of the GNU
17
+ General Public License.
18
+
19
+ "The Library" refers to a covered work governed by this License,
20
+ other than an Application or a Combined Work as defined below.
21
+
22
+ An "Application" is any work that makes use of an interface provided
23
+ by the Library, but which is not otherwise based on the Library.
24
+ Defining a subclass of a class defined by the Library is deemed a mode
25
+ of using an interface provided by the Library.
26
+
27
+ A "Combined Work" is a work produced by combining or linking an
28
+ Application with the Library. The particular version of the Library
29
+ with which the Combined Work was made is also called the "Linked
30
+ Version".
31
+
32
+ The "Minimal Corresponding Source" for a Combined Work means the
33
+ Corresponding Source for the Combined Work, excluding any source code
34
+ for portions of the Combined Work that, considered in isolation, are
35
+ based on the Application, and not on the Linked Version.
36
+
37
+ The "Corresponding Application Code" for a Combined Work means the
38
+ object code and/or source code for the Application, including any data
39
+ and utility programs needed for reproducing the Combined Work from the
40
+ Application, but excluding the System Libraries of the Combined Work.
41
+
42
+ 1. Exception to Section 3 of the GNU GPL.
43
+
44
+ You may convey a covered work under sections 3 and 4 of this License
45
+ without being bound by section 3 of the GNU GPL.
46
+
47
+ 2. Conveying Modified Versions.
48
+
49
+ If you modify a copy of the Library, and, in your modifications, a
50
+ facility refers to a function or data to be supplied by an Application
51
+ that uses the facility (other than as an argument passed when the
52
+ facility is invoked), then you may convey a copy of the modified
53
+ version:
54
+
55
+ a) under this License, provided that you make a good faith effort to
56
+ ensure that, in the event an Application does not supply the
57
+ function or data, the facility still operates, and performs
58
+ whatever part of its purpose remains meaningful, or
59
+
60
+ b) under the GNU GPL, with none of the additional permissions of
61
+ this License applicable to that copy.
62
+
63
+ 3. Object Code Incorporating Material from Library Header Files.
64
+
65
+ The object code form of an Application may incorporate material from
66
+ a header file that is part of the Library. You may convey such object
67
+ code under terms of your choice, provided that, if the incorporated
68
+ material is not limited to numerical parameters, data structure
69
+ layouts and accessors, or small macros, inline functions and templates
70
+ (ten or fewer lines in length), you do both of the following:
71
+
72
+ a) Give prominent notice with each copy of the object code that the
73
+ Library is used in it and that the Library and its use are
74
+ covered by this License.
75
+
76
+ b) Accompany the object code with a copy of the GNU GPL and this license
77
+ document.
78
+
79
+ 4. Combined Works.
80
+
81
+ You may convey a Combined Work under terms of your choice that,
82
+ taken together, effectively do not restrict modification of the
83
+ portions of the Library contained in the Combined Work and reverse
84
+ engineering for debugging such modifications, if you also do each of
85
+ the following:
86
+
87
+ a) Give prominent notice with each copy of the Combined Work that
88
+ the Library is used in it and that the Library and its use are
89
+ covered by this License.
90
+
91
+ b) Accompany the Combined Work with a copy of the GNU GPL and this license
92
+ document.
93
+
94
+ c) For a Combined Work that displays copyright notices during
95
+ execution, include the copyright notice for the Library among
96
+ these notices, as well as a reference directing the user to the
97
+ copies of the GNU GPL and this license document.
98
+
99
+ d) Do one of the following:
100
+
101
+ 0) Convey the Minimal Corresponding Source under the terms of this
102
+ License, and the Corresponding Application Code in a form
103
+ suitable for, and under terms that permit, the user to
104
+ recombine or relink the Application with a modified version of
105
+ the Linked Version to produce a modified Combined Work, in the
106
+ manner specified by section 6 of the GNU GPL for conveying
107
+ Corresponding Source.
108
+
109
+ 1) Use a suitable shared library mechanism for linking with the
110
+ Library. A suitable mechanism is one that (a) uses at run time
111
+ a copy of the Library already present on the user's computer
112
+ system, and (b) will operate properly with a modified version
113
+ of the Library that is interface-compatible with the Linked
114
+ Version.
115
+
116
+ e) Provide Installation Information, but only if you would otherwise
117
+ be required to provide such information under section 6 of the
118
+ GNU GPL, and only to the extent that such information is
119
+ necessary to install and execute a modified version of the
120
+ Combined Work produced by recombining or relinking the
121
+ Application with a modified version of the Linked Version. (If
122
+ you use option 4d0, the Installation Information must accompany
123
+ the Minimal Corresponding Source and Corresponding Application
124
+ Code. If you use option 4d1, you must provide the Installation
125
+ Information in the manner specified by section 6 of the GNU GPL
126
+ for conveying Corresponding Source.)
127
+
128
+ 5. Combined Libraries.
129
+
130
+ You may place library facilities that are a work based on the
131
+ Library side by side in a single library together with other library
132
+ facilities that are not Applications and are not covered by this
133
+ License, and convey such a combined library under terms of your
134
+ choice, if you do both of the following:
135
+
136
+ a) Accompany the combined library with a copy of the same work based
137
+ on the Library, uncombined with any other library facilities,
138
+ conveyed under the terms of this License.
139
+
140
+ b) Give prominent notice with the combined library that part of it
141
+ is a work based on the Library, and explaining where to find the
142
+ accompanying uncombined form of the same work.
143
+
144
+ 6. Revised Versions of the GNU Lesser General Public License.
145
+
146
+ The Free Software Foundation may publish revised and/or new versions
147
+ of the GNU Lesser General Public License from time to time. Such new
148
+ versions will be similar in spirit to the present version, but may
149
+ differ in detail to address new problems or concerns.
150
+
151
+ Each version is given a distinguishing version number. If the
152
+ Library as you received it specifies that a certain numbered version
153
+ of the GNU Lesser General Public License "or any later version"
154
+ applies to it, you have the option of following the terms and
155
+ conditions either of that published version or of any later version
156
+ published by the Free Software Foundation. If the Library as you
157
+ received it does not specify a version number of the GNU Lesser
158
+ General Public License, you may choose any version of the GNU Lesser
159
+ General Public License ever published by the Free Software Foundation.
160
+
161
+ If the Library as you received it specifies that a proxy can decide
162
+ whether future versions of the GNU Lesser General Public License shall
163
+ apply, that proxy's public statement of acceptance of any version is
164
+ permanent authorization for you to choose that version for the
165
+ Library.
data/README.md CHANGED
@@ -1,28 +1,122 @@
1
1
  # Super
2
- Short description and motivation.
2
+
3
+ Super is a single dependency admin framework for Ruby on Rails applications.
4
+
5
+ Its mission: to evade dependencies, to improve developer productivity and admin
6
+ efficiency, to go where no one has gone before. Most of the alternatives I tried
7
+ were either too limited or required a large and complicated DSL for
8
+ configuration.
9
+
10
+ Super is built be powerful but to stay out of your way; it should be easier to
11
+ maintain relative to other admin frameworks. Because of its lack of
12
+ dependencies, for example, it'll stay out of your way when you have to upgrade
13
+ your application's Rails version or any other gem.
14
+
15
+
16
+ ## Features
17
+
18
+ * Fully compatible with both Sprockets and Webpacker
19
+ * Note: Webpacker support depends on one additional NPM package for parsing
20
+ ERB
21
+ * Built in pagination
22
+ * Configurable forms (new and edit forms)
23
+ * Configurable display (index and show tables)
24
+ * Supports Rails 5.0+, Ruby 2.3+
25
+ * Configurable without a DSL
26
+ * Looks reasonably nice and modern
27
+ * All assets are vendored (doesn't require Sass, PostCSS, Babel, etc)
28
+
29
+ Super was inspired in part by the admin frameworks [ActiveAdmin](activeadmin)
30
+ and [Administrate](administrate). If Super doesn't quite fit your requirements
31
+ at this moment, one of those might meet your needs better.
32
+
33
+
34
+ ## Professional edition
35
+
36
+ Super Professional is a paid add-on and provides additional benefits:
37
+
38
+ * Feature: Filtering by column values
39
+ * Priority email support
40
+ * Supporting long term development of Super
41
+ * An LGPL exemption
42
+
43
+ It will be available soon. Subscribe to the [newsletter](newsletter) to be
44
+ notified of its availability or for brief, occasional updates.
45
+
46
+
47
+ ## Demos
48
+
49
+ * [Super Demo](https://demo-super.herokuapp.com/admin/members)
50
+ * [Super Demo source](https://github.com/zachahn/super_demo)
51
+ * [Super Professional Demo](https://demo-super-professional.herokuapp.com/admin/members)
52
+
3
53
 
4
54
  ## Usage
5
- How to use my plugin.
55
+
56
+ ### Creating new admin pages
57
+
58
+ ```bash
59
+ $ bundle exec rails g super:resource Thing # check out the `--help` option!
60
+ ```
61
+
62
+ In the example above, it will create two files, the appropriate admin controller
63
+ and its related "dashboard" file. The dashboard file is where most configuration
64
+ lives, so it's unlikely you'll need to modify the controller.
65
+
66
+ In addition, you'll have to manually update your routes file. It'll probably
67
+ look something like the following:
68
+
69
+ ```ruby
70
+ namespace :admin do
71
+ resources :things
72
+ end
73
+ ```
74
+
6
75
 
7
76
  ## Installation
77
+
8
78
  Add this line to your application's Gemfile:
9
79
 
10
80
  ```ruby
11
- gem 'super'
81
+ gem "super"
12
82
  ```
13
83
 
14
84
  And then execute:
85
+
15
86
  ```bash
16
- $ bundle
87
+ $ bundle install
88
+ $ bundle exec rails g super:install # check out the `--help` option!
17
89
  ```
18
90
 
19
- Or install it yourself as:
91
+ Super supports using Webpacker instead of Sprockets. Note though that you need
92
+ to set up ERB templates under Webpacker. There are no other requirements or
93
+ dependencies.
94
+
20
95
  ```bash
21
- $ gem install super
96
+ $ bundle exec rails webpacker:install:erb # if you haven't already
97
+ $ bundle exec rails g super:webpacker
22
98
  ```
23
99
 
100
+ Lastly, update your Super initializer
101
+
102
+ ```ruby
103
+ Super.configuration do |c|
104
+ # ...
105
+ c.asset_handler = Super::Assets.webpacker
106
+ end
107
+ ```
108
+
109
+
24
110
  ## Contributing
25
- Contribution directions go here.
111
+
112
+ See [CONTRIBUTING](./CONTRIBUTING.md)
113
+
26
114
 
27
115
  ## License
28
- The gem is available under the terms of the [Fair Source 5 License](https://fair.io).
116
+
117
+ The gem is available under the terms of the [GNU LGPLv3](./LICENSE).
118
+
119
+
120
+ [administrate]: https://github.com/thoughtbot/administrate
121
+ [activeadmin]: https://github.com/activeadmin/activeadmin
122
+ [newsletter]: https://tinyletter.com/zachahn
@@ -0,0 +1 @@
1
+ //= link_tree ../frontend
@@ -0,0 +1,3483 @@
1
+ // modules are defined as an array
2
+ // [ module function, map of requires ]
3
+ //
4
+ // map of requires is short require name -> numeric require
5
+ //
6
+ // anything defined in a previous bundle is accessed via the
7
+ // orig method which is the require for previous bundles
8
+ parcelRequire = (function (modules, cache, entry, globalName) {
9
+ // Save the require from previous bundle to this closure if any
10
+ var previousRequire = typeof parcelRequire === 'function' && parcelRequire;
11
+ var nodeRequire = typeof require === 'function' && require;
12
+
13
+ function newRequire(name, jumped) {
14
+ if (!cache[name]) {
15
+ if (!modules[name]) {
16
+ // if we cannot find the module within our internal map or
17
+ // cache jump to the current global require ie. the last bundle
18
+ // that was added to the page.
19
+ var currentRequire = typeof parcelRequire === 'function' && parcelRequire;
20
+ if (!jumped && currentRequire) {
21
+ return currentRequire(name, true);
22
+ }
23
+
24
+ // If there are other bundles on this page the require from the
25
+ // previous one is saved to 'previousRequire'. Repeat this as
26
+ // many times as there are bundles until the module is found or
27
+ // we exhaust the require chain.
28
+ if (previousRequire) {
29
+ return previousRequire(name, true);
30
+ }
31
+
32
+ // Try the node require function if it exists.
33
+ if (nodeRequire && typeof name === 'string') {
34
+ return nodeRequire(name);
35
+ }
36
+
37
+ var err = new Error('Cannot find module \'' + name + '\'');
38
+ err.code = 'MODULE_NOT_FOUND';
39
+ throw err;
40
+ }
41
+
42
+ localRequire.resolve = resolve;
43
+ localRequire.cache = {};
44
+
45
+ var module = cache[name] = new newRequire.Module(name);
46
+
47
+ modules[name][0].call(module.exports, localRequire, module, module.exports, this);
48
+ }
49
+
50
+ return cache[name].exports;
51
+
52
+ function localRequire(x){
53
+ return newRequire(localRequire.resolve(x));
54
+ }
55
+
56
+ function resolve(x){
57
+ return modules[name][1][x] || x;
58
+ }
59
+ }
60
+
61
+ function Module(moduleName) {
62
+ this.id = moduleName;
63
+ this.bundle = newRequire;
64
+ this.exports = {};
65
+ }
66
+
67
+ newRequire.isParcelRequire = true;
68
+ newRequire.Module = Module;
69
+ newRequire.modules = modules;
70
+ newRequire.cache = cache;
71
+ newRequire.parent = previousRequire;
72
+ newRequire.register = function (id, exports) {
73
+ modules[id] = [function (require, module) {
74
+ module.exports = exports;
75
+ }, {}];
76
+ };
77
+
78
+ var error;
79
+ for (var i = 0; i < entry.length; i++) {
80
+ try {
81
+ newRequire(entry[i]);
82
+ } catch (e) {
83
+ // Save first error but execute all entries
84
+ if (!error) {
85
+ error = e;
86
+ }
87
+ }
88
+ }
89
+
90
+ if (entry.length) {
91
+ // Expose entry point to Node, AMD or browser globals
92
+ // Based on https://github.com/ForbesLindesay/umd/blob/master/template.js
93
+ var mainExports = newRequire(entry[entry.length - 1]);
94
+
95
+ // CommonJS
96
+ if (typeof exports === "object" && typeof module !== "undefined") {
97
+ module.exports = mainExports;
98
+
99
+ // RequireJS
100
+ } else if (typeof define === "function" && define.amd) {
101
+ define(function () {
102
+ return mainExports;
103
+ });
104
+
105
+ // <script>
106
+ } else if (globalName) {
107
+ this[globalName] = mainExports;
108
+ }
109
+ }
110
+
111
+ // Override the current require with this new one
112
+ parcelRequire = newRequire;
113
+
114
+ if (error) {
115
+ // throw error from earlier, _after updating parcelRequire_
116
+ throw error;
117
+ }
118
+
119
+ return newRequire;
120
+ })({"../node_modules/rails-ujs/lib/assets/compiled/rails-ujs.js":[function(require,module,exports) {
121
+ var define;
122
+ /*
123
+ Unobtrusive JavaScript
124
+ https://github.com/rails/rails/blob/master/actionview/app/assets/javascripts
125
+ Released under the MIT license
126
+ */
127
+
128
+ (function() {
129
+ var context = this;
130
+
131
+ (function() {
132
+ (function() {
133
+ this.Rails = {
134
+ linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote]:not([disabled]), a[data-disable-with], a[data-disable]',
135
+ buttonClickSelector: {
136
+ selector: 'button[data-remote]:not([form]), button[data-confirm]:not([form])',
137
+ exclude: 'form button'
138
+ },
139
+ inputChangeSelector: 'select[data-remote], input[data-remote], textarea[data-remote]',
140
+ formSubmitSelector: 'form',
141
+ formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type]), input[type=submit][form], input[type=image][form], button[type=submit][form], button[form]:not([type])',
142
+ formDisableSelector: 'input[data-disable-with]:enabled, button[data-disable-with]:enabled, textarea[data-disable-with]:enabled, input[data-disable]:enabled, button[data-disable]:enabled, textarea[data-disable]:enabled',
143
+ formEnableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled, input[data-disable]:disabled, button[data-disable]:disabled, textarea[data-disable]:disabled',
144
+ fileInputSelector: 'input[name][type=file]:not([disabled])',
145
+ linkDisableSelector: 'a[data-disable-with], a[data-disable]',
146
+ buttonDisableSelector: 'button[data-remote][data-disable-with], button[data-remote][data-disable]'
147
+ };
148
+
149
+ }).call(this);
150
+ }).call(context);
151
+
152
+ var Rails = context.Rails;
153
+
154
+ (function() {
155
+ (function() {
156
+ var nonce;
157
+
158
+ nonce = null;
159
+
160
+ Rails.loadCSPNonce = function() {
161
+ var ref;
162
+ return nonce = (ref = document.querySelector("meta[name=csp-nonce]")) != null ? ref.content : void 0;
163
+ };
164
+
165
+ Rails.cspNonce = function() {
166
+ return nonce != null ? nonce : Rails.loadCSPNonce();
167
+ };
168
+
169
+ }).call(this);
170
+ (function() {
171
+ var expando, m;
172
+
173
+ m = Element.prototype.matches || Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector;
174
+
175
+ Rails.matches = function(element, selector) {
176
+ if (selector.exclude != null) {
177
+ return m.call(element, selector.selector) && !m.call(element, selector.exclude);
178
+ } else {
179
+ return m.call(element, selector);
180
+ }
181
+ };
182
+
183
+ expando = '_ujsData';
184
+
185
+ Rails.getData = function(element, key) {
186
+ var ref;
187
+ return (ref = element[expando]) != null ? ref[key] : void 0;
188
+ };
189
+
190
+ Rails.setData = function(element, key, value) {
191
+ if (element[expando] == null) {
192
+ element[expando] = {};
193
+ }
194
+ return element[expando][key] = value;
195
+ };
196
+
197
+ Rails.$ = function(selector) {
198
+ return Array.prototype.slice.call(document.querySelectorAll(selector));
199
+ };
200
+
201
+ }).call(this);
202
+ (function() {
203
+ var $, csrfParam, csrfToken;
204
+
205
+ $ = Rails.$;
206
+
207
+ csrfToken = Rails.csrfToken = function() {
208
+ var meta;
209
+ meta = document.querySelector('meta[name=csrf-token]');
210
+ return meta && meta.content;
211
+ };
212
+
213
+ csrfParam = Rails.csrfParam = function() {
214
+ var meta;
215
+ meta = document.querySelector('meta[name=csrf-param]');
216
+ return meta && meta.content;
217
+ };
218
+
219
+ Rails.CSRFProtection = function(xhr) {
220
+ var token;
221
+ token = csrfToken();
222
+ if (token != null) {
223
+ return xhr.setRequestHeader('X-CSRF-Token', token);
224
+ }
225
+ };
226
+
227
+ Rails.refreshCSRFTokens = function() {
228
+ var param, token;
229
+ token = csrfToken();
230
+ param = csrfParam();
231
+ if ((token != null) && (param != null)) {
232
+ return $('form input[name="' + param + '"]').forEach(function(input) {
233
+ return input.value = token;
234
+ });
235
+ }
236
+ };
237
+
238
+ }).call(this);
239
+ (function() {
240
+ var CustomEvent, fire, matches, preventDefault;
241
+
242
+ matches = Rails.matches;
243
+
244
+ CustomEvent = window.CustomEvent;
245
+
246
+ if (typeof CustomEvent !== 'function') {
247
+ CustomEvent = function(event, params) {
248
+ var evt;
249
+ evt = document.createEvent('CustomEvent');
250
+ evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
251
+ return evt;
252
+ };
253
+ CustomEvent.prototype = window.Event.prototype;
254
+ preventDefault = CustomEvent.prototype.preventDefault;
255
+ CustomEvent.prototype.preventDefault = function() {
256
+ var result;
257
+ result = preventDefault.call(this);
258
+ if (this.cancelable && !this.defaultPrevented) {
259
+ Object.defineProperty(this, 'defaultPrevented', {
260
+ get: function() {
261
+ return true;
262
+ }
263
+ });
264
+ }
265
+ return result;
266
+ };
267
+ }
268
+
269
+ fire = Rails.fire = function(obj, name, data) {
270
+ var event;
271
+ event = new CustomEvent(name, {
272
+ bubbles: true,
273
+ cancelable: true,
274
+ detail: data
275
+ });
276
+ obj.dispatchEvent(event);
277
+ return !event.defaultPrevented;
278
+ };
279
+
280
+ Rails.stopEverything = function(e) {
281
+ fire(e.target, 'ujs:everythingStopped');
282
+ e.preventDefault();
283
+ e.stopPropagation();
284
+ return e.stopImmediatePropagation();
285
+ };
286
+
287
+ Rails.delegate = function(element, selector, eventType, handler) {
288
+ return element.addEventListener(eventType, function(e) {
289
+ var target;
290
+ target = e.target;
291
+ while (!(!(target instanceof Element) || matches(target, selector))) {
292
+ target = target.parentNode;
293
+ }
294
+ if (target instanceof Element && handler.call(target, e) === false) {
295
+ e.preventDefault();
296
+ return e.stopPropagation();
297
+ }
298
+ });
299
+ };
300
+
301
+ }).call(this);
302
+ (function() {
303
+ var AcceptHeaders, CSRFProtection, createXHR, cspNonce, fire, prepareOptions, processResponse;
304
+
305
+ cspNonce = Rails.cspNonce, CSRFProtection = Rails.CSRFProtection, fire = Rails.fire;
306
+
307
+ AcceptHeaders = {
308
+ '*': '*/*',
309
+ text: 'text/plain',
310
+ html: 'text/html',
311
+ xml: 'application/xml, text/xml',
312
+ json: 'application/json, text/javascript',
313
+ script: 'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript'
314
+ };
315
+
316
+ Rails.ajax = function(options) {
317
+ var xhr;
318
+ options = prepareOptions(options);
319
+ xhr = createXHR(options, function() {
320
+ var ref, response;
321
+ response = processResponse((ref = xhr.response) != null ? ref : xhr.responseText, xhr.getResponseHeader('Content-Type'));
322
+ if (Math.floor(xhr.status / 100) === 2) {
323
+ if (typeof options.success === "function") {
324
+ options.success(response, xhr.statusText, xhr);
325
+ }
326
+ } else {
327
+ if (typeof options.error === "function") {
328
+ options.error(response, xhr.statusText, xhr);
329
+ }
330
+ }
331
+ return typeof options.complete === "function" ? options.complete(xhr, xhr.statusText) : void 0;
332
+ });
333
+ if ((options.beforeSend != null) && !options.beforeSend(xhr, options)) {
334
+ return false;
335
+ }
336
+ if (xhr.readyState === XMLHttpRequest.OPENED) {
337
+ return xhr.send(options.data);
338
+ }
339
+ };
340
+
341
+ prepareOptions = function(options) {
342
+ options.url = options.url || location.href;
343
+ options.type = options.type.toUpperCase();
344
+ if (options.type === 'GET' && options.data) {
345
+ if (options.url.indexOf('?') < 0) {
346
+ options.url += '?' + options.data;
347
+ } else {
348
+ options.url += '&' + options.data;
349
+ }
350
+ }
351
+ if (AcceptHeaders[options.dataType] == null) {
352
+ options.dataType = '*';
353
+ }
354
+ options.accept = AcceptHeaders[options.dataType];
355
+ if (options.dataType !== '*') {
356
+ options.accept += ', */*; q=0.01';
357
+ }
358
+ return options;
359
+ };
360
+
361
+ createXHR = function(options, done) {
362
+ var xhr;
363
+ xhr = new XMLHttpRequest();
364
+ xhr.open(options.type, options.url, true);
365
+ xhr.setRequestHeader('Accept', options.accept);
366
+ if (typeof options.data === 'string') {
367
+ xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');
368
+ }
369
+ if (!options.crossDomain) {
370
+ xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
371
+ }
372
+ CSRFProtection(xhr);
373
+ xhr.withCredentials = !!options.withCredentials;
374
+ xhr.onreadystatechange = function() {
375
+ if (xhr.readyState === XMLHttpRequest.DONE) {
376
+ return done(xhr);
377
+ }
378
+ };
379
+ return xhr;
380
+ };
381
+
382
+ processResponse = function(response, type) {
383
+ var parser, script;
384
+ if (typeof response === 'string' && typeof type === 'string') {
385
+ if (type.match(/\bjson\b/)) {
386
+ try {
387
+ response = JSON.parse(response);
388
+ } catch (error) {}
389
+ } else if (type.match(/\b(?:java|ecma)script\b/)) {
390
+ script = document.createElement('script');
391
+ script.setAttribute('nonce', cspNonce());
392
+ script.text = response;
393
+ document.head.appendChild(script).parentNode.removeChild(script);
394
+ } else if (type.match(/\b(xml|html|svg)\b/)) {
395
+ parser = new DOMParser();
396
+ type = type.replace(/;.+/, '');
397
+ try {
398
+ response = parser.parseFromString(response, type);
399
+ } catch (error) {}
400
+ }
401
+ }
402
+ return response;
403
+ };
404
+
405
+ Rails.href = function(element) {
406
+ return element.href;
407
+ };
408
+
409
+ Rails.isCrossDomain = function(url) {
410
+ var e, originAnchor, urlAnchor;
411
+ originAnchor = document.createElement('a');
412
+ originAnchor.href = location.href;
413
+ urlAnchor = document.createElement('a');
414
+ try {
415
+ urlAnchor.href = url;
416
+ return !(((!urlAnchor.protocol || urlAnchor.protocol === ':') && !urlAnchor.host) || (originAnchor.protocol + '//' + originAnchor.host === urlAnchor.protocol + '//' + urlAnchor.host));
417
+ } catch (error) {
418
+ e = error;
419
+ return true;
420
+ }
421
+ };
422
+
423
+ }).call(this);
424
+ (function() {
425
+ var matches, toArray;
426
+
427
+ matches = Rails.matches;
428
+
429
+ toArray = function(e) {
430
+ return Array.prototype.slice.call(e);
431
+ };
432
+
433
+ Rails.serializeElement = function(element, additionalParam) {
434
+ var inputs, params;
435
+ inputs = [element];
436
+ if (matches(element, 'form')) {
437
+ inputs = toArray(element.elements);
438
+ }
439
+ params = [];
440
+ inputs.forEach(function(input) {
441
+ if (!input.name || input.disabled) {
442
+ return;
443
+ }
444
+ if (matches(input, 'select')) {
445
+ return toArray(input.options).forEach(function(option) {
446
+ if (option.selected) {
447
+ return params.push({
448
+ name: input.name,
449
+ value: option.value
450
+ });
451
+ }
452
+ });
453
+ } else if (input.checked || ['radio', 'checkbox', 'submit'].indexOf(input.type) === -1) {
454
+ return params.push({
455
+ name: input.name,
456
+ value: input.value
457
+ });
458
+ }
459
+ });
460
+ if (additionalParam) {
461
+ params.push(additionalParam);
462
+ }
463
+ return params.map(function(param) {
464
+ if (param.name != null) {
465
+ return (encodeURIComponent(param.name)) + "=" + (encodeURIComponent(param.value));
466
+ } else {
467
+ return param;
468
+ }
469
+ }).join('&');
470
+ };
471
+
472
+ Rails.formElements = function(form, selector) {
473
+ if (matches(form, 'form')) {
474
+ return toArray(form.elements).filter(function(el) {
475
+ return matches(el, selector);
476
+ });
477
+ } else {
478
+ return toArray(form.querySelectorAll(selector));
479
+ }
480
+ };
481
+
482
+ }).call(this);
483
+ (function() {
484
+ var allowAction, fire, stopEverything;
485
+
486
+ fire = Rails.fire, stopEverything = Rails.stopEverything;
487
+
488
+ Rails.handleConfirm = function(e) {
489
+ if (!allowAction(this)) {
490
+ return stopEverything(e);
491
+ }
492
+ };
493
+
494
+ allowAction = function(element) {
495
+ var answer, callback, message;
496
+ message = element.getAttribute('data-confirm');
497
+ if (!message) {
498
+ return true;
499
+ }
500
+ answer = false;
501
+ if (fire(element, 'confirm')) {
502
+ try {
503
+ answer = confirm(message);
504
+ } catch (error) {}
505
+ callback = fire(element, 'confirm:complete', [answer]);
506
+ }
507
+ return answer && callback;
508
+ };
509
+
510
+ }).call(this);
511
+ (function() {
512
+ var disableFormElement, disableFormElements, disableLinkElement, enableFormElement, enableFormElements, enableLinkElement, formElements, getData, matches, setData, stopEverything;
513
+
514
+ matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, stopEverything = Rails.stopEverything, formElements = Rails.formElements;
515
+
516
+ Rails.handleDisabledElement = function(e) {
517
+ var element;
518
+ element = this;
519
+ if (element.disabled) {
520
+ return stopEverything(e);
521
+ }
522
+ };
523
+
524
+ Rails.enableElement = function(e) {
525
+ var element;
526
+ element = e instanceof Event ? e.target : e;
527
+ if (matches(element, Rails.linkDisableSelector)) {
528
+ return enableLinkElement(element);
529
+ } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formEnableSelector)) {
530
+ return enableFormElement(element);
531
+ } else if (matches(element, Rails.formSubmitSelector)) {
532
+ return enableFormElements(element);
533
+ }
534
+ };
535
+
536
+ Rails.disableElement = function(e) {
537
+ var element;
538
+ element = e instanceof Event ? e.target : e;
539
+ if (matches(element, Rails.linkDisableSelector)) {
540
+ return disableLinkElement(element);
541
+ } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formDisableSelector)) {
542
+ return disableFormElement(element);
543
+ } else if (matches(element, Rails.formSubmitSelector)) {
544
+ return disableFormElements(element);
545
+ }
546
+ };
547
+
548
+ disableLinkElement = function(element) {
549
+ var replacement;
550
+ replacement = element.getAttribute('data-disable-with');
551
+ if (replacement != null) {
552
+ setData(element, 'ujs:enable-with', element.innerHTML);
553
+ element.innerHTML = replacement;
554
+ }
555
+ element.addEventListener('click', stopEverything);
556
+ return setData(element, 'ujs:disabled', true);
557
+ };
558
+
559
+ enableLinkElement = function(element) {
560
+ var originalText;
561
+ originalText = getData(element, 'ujs:enable-with');
562
+ if (originalText != null) {
563
+ element.innerHTML = originalText;
564
+ setData(element, 'ujs:enable-with', null);
565
+ }
566
+ element.removeEventListener('click', stopEverything);
567
+ return setData(element, 'ujs:disabled', null);
568
+ };
569
+
570
+ disableFormElements = function(form) {
571
+ return formElements(form, Rails.formDisableSelector).forEach(disableFormElement);
572
+ };
573
+
574
+ disableFormElement = function(element) {
575
+ var replacement;
576
+ replacement = element.getAttribute('data-disable-with');
577
+ if (replacement != null) {
578
+ if (matches(element, 'button')) {
579
+ setData(element, 'ujs:enable-with', element.innerHTML);
580
+ element.innerHTML = replacement;
581
+ } else {
582
+ setData(element, 'ujs:enable-with', element.value);
583
+ element.value = replacement;
584
+ }
585
+ }
586
+ element.disabled = true;
587
+ return setData(element, 'ujs:disabled', true);
588
+ };
589
+
590
+ enableFormElements = function(form) {
591
+ return formElements(form, Rails.formEnableSelector).forEach(enableFormElement);
592
+ };
593
+
594
+ enableFormElement = function(element) {
595
+ var originalText;
596
+ originalText = getData(element, 'ujs:enable-with');
597
+ if (originalText != null) {
598
+ if (matches(element, 'button')) {
599
+ element.innerHTML = originalText;
600
+ } else {
601
+ element.value = originalText;
602
+ }
603
+ setData(element, 'ujs:enable-with', null);
604
+ }
605
+ element.disabled = false;
606
+ return setData(element, 'ujs:disabled', null);
607
+ };
608
+
609
+ }).call(this);
610
+ (function() {
611
+ var stopEverything;
612
+
613
+ stopEverything = Rails.stopEverything;
614
+
615
+ Rails.handleMethod = function(e) {
616
+ var csrfParam, csrfToken, form, formContent, href, link, method;
617
+ link = this;
618
+ method = link.getAttribute('data-method');
619
+ if (!method) {
620
+ return;
621
+ }
622
+ href = Rails.href(link);
623
+ csrfToken = Rails.csrfToken();
624
+ csrfParam = Rails.csrfParam();
625
+ form = document.createElement('form');
626
+ formContent = "<input name='_method' value='" + method + "' type='hidden' />";
627
+ if ((csrfParam != null) && (csrfToken != null) && !Rails.isCrossDomain(href)) {
628
+ formContent += "<input name='" + csrfParam + "' value='" + csrfToken + "' type='hidden' />";
629
+ }
630
+ formContent += '<input type="submit" />';
631
+ form.method = 'post';
632
+ form.action = href;
633
+ form.target = link.target;
634
+ form.innerHTML = formContent;
635
+ form.style.display = 'none';
636
+ document.body.appendChild(form);
637
+ form.querySelector('[type="submit"]').click();
638
+ return stopEverything(e);
639
+ };
640
+
641
+ }).call(this);
642
+ (function() {
643
+ var ajax, fire, getData, isCrossDomain, isRemote, matches, serializeElement, setData, stopEverything,
644
+ slice = [].slice;
645
+
646
+ matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, fire = Rails.fire, stopEverything = Rails.stopEverything, ajax = Rails.ajax, isCrossDomain = Rails.isCrossDomain, serializeElement = Rails.serializeElement;
647
+
648
+ isRemote = function(element) {
649
+ var value;
650
+ value = element.getAttribute('data-remote');
651
+ return (value != null) && value !== 'false';
652
+ };
653
+
654
+ Rails.handleRemote = function(e) {
655
+ var button, data, dataType, element, method, url, withCredentials;
656
+ element = this;
657
+ if (!isRemote(element)) {
658
+ return true;
659
+ }
660
+ if (!fire(element, 'ajax:before')) {
661
+ fire(element, 'ajax:stopped');
662
+ return false;
663
+ }
664
+ withCredentials = element.getAttribute('data-with-credentials');
665
+ dataType = element.getAttribute('data-type') || 'script';
666
+ if (matches(element, Rails.formSubmitSelector)) {
667
+ button = getData(element, 'ujs:submit-button');
668
+ method = getData(element, 'ujs:submit-button-formmethod') || element.method;
669
+ url = getData(element, 'ujs:submit-button-formaction') || element.getAttribute('action') || location.href;
670
+ if (method.toUpperCase() === 'GET') {
671
+ url = url.replace(/\?.*$/, '');
672
+ }
673
+ if (element.enctype === 'multipart/form-data') {
674
+ data = new FormData(element);
675
+ if (button != null) {
676
+ data.append(button.name, button.value);
677
+ }
678
+ } else {
679
+ data = serializeElement(element, button);
680
+ }
681
+ setData(element, 'ujs:submit-button', null);
682
+ setData(element, 'ujs:submit-button-formmethod', null);
683
+ setData(element, 'ujs:submit-button-formaction', null);
684
+ } else if (matches(element, Rails.buttonClickSelector) || matches(element, Rails.inputChangeSelector)) {
685
+ method = element.getAttribute('data-method');
686
+ url = element.getAttribute('data-url');
687
+ data = serializeElement(element, element.getAttribute('data-params'));
688
+ } else {
689
+ method = element.getAttribute('data-method');
690
+ url = Rails.href(element);
691
+ data = element.getAttribute('data-params');
692
+ }
693
+ ajax({
694
+ type: method || 'GET',
695
+ url: url,
696
+ data: data,
697
+ dataType: dataType,
698
+ beforeSend: function(xhr, options) {
699
+ if (fire(element, 'ajax:beforeSend', [xhr, options])) {
700
+ return fire(element, 'ajax:send', [xhr]);
701
+ } else {
702
+ fire(element, 'ajax:stopped');
703
+ return false;
704
+ }
705
+ },
706
+ success: function() {
707
+ var args;
708
+ args = 1 <= arguments.length ? slice.call(arguments, 0) : [];
709
+ return fire(element, 'ajax:success', args);
710
+ },
711
+ error: function() {
712
+ var args;
713
+ args = 1 <= arguments.length ? slice.call(arguments, 0) : [];
714
+ return fire(element, 'ajax:error', args);
715
+ },
716
+ complete: function() {
717
+ var args;
718
+ args = 1 <= arguments.length ? slice.call(arguments, 0) : [];
719
+ return fire(element, 'ajax:complete', args);
720
+ },
721
+ crossDomain: isCrossDomain(url),
722
+ withCredentials: (withCredentials != null) && withCredentials !== 'false'
723
+ });
724
+ return stopEverything(e);
725
+ };
726
+
727
+ Rails.formSubmitButtonClick = function(e) {
728
+ var button, form;
729
+ button = this;
730
+ form = button.form;
731
+ if (!form) {
732
+ return;
733
+ }
734
+ if (button.name) {
735
+ setData(form, 'ujs:submit-button', {
736
+ name: button.name,
737
+ value: button.value
738
+ });
739
+ }
740
+ setData(form, 'ujs:formnovalidate-button', button.formNoValidate);
741
+ setData(form, 'ujs:submit-button-formaction', button.getAttribute('formaction'));
742
+ return setData(form, 'ujs:submit-button-formmethod', button.getAttribute('formmethod'));
743
+ };
744
+
745
+ Rails.preventInsignificantClick = function(e) {
746
+ var data, insignificantMetaClick, link, metaClick, method, primaryMouseKey;
747
+ link = this;
748
+ method = (link.getAttribute('data-method') || 'GET').toUpperCase();
749
+ data = link.getAttribute('data-params');
750
+ metaClick = e.metaKey || e.ctrlKey;
751
+ insignificantMetaClick = metaClick && method === 'GET' && !data;
752
+ primaryMouseKey = e.button === 0;
753
+ if (!primaryMouseKey || insignificantMetaClick) {
754
+ return e.stopImmediatePropagation();
755
+ }
756
+ };
757
+
758
+ }).call(this);
759
+ (function() {
760
+ var $, CSRFProtection, delegate, disableElement, enableElement, fire, formSubmitButtonClick, getData, handleConfirm, handleDisabledElement, handleMethod, handleRemote, loadCSPNonce, preventInsignificantClick, refreshCSRFTokens;
761
+
762
+ fire = Rails.fire, delegate = Rails.delegate, getData = Rails.getData, $ = Rails.$, refreshCSRFTokens = Rails.refreshCSRFTokens, CSRFProtection = Rails.CSRFProtection, loadCSPNonce = Rails.loadCSPNonce, enableElement = Rails.enableElement, disableElement = Rails.disableElement, handleDisabledElement = Rails.handleDisabledElement, handleConfirm = Rails.handleConfirm, preventInsignificantClick = Rails.preventInsignificantClick, handleRemote = Rails.handleRemote, formSubmitButtonClick = Rails.formSubmitButtonClick, handleMethod = Rails.handleMethod;
763
+
764
+ if ((typeof jQuery !== "undefined" && jQuery !== null) && (jQuery.ajax != null)) {
765
+ if (jQuery.rails) {
766
+ throw new Error('If you load both jquery_ujs and rails-ujs, use rails-ujs only.');
767
+ }
768
+ jQuery.rails = Rails;
769
+ jQuery.ajaxPrefilter(function(options, originalOptions, xhr) {
770
+ if (!options.crossDomain) {
771
+ return CSRFProtection(xhr);
772
+ }
773
+ });
774
+ }
775
+
776
+ Rails.start = function() {
777
+ if (window._rails_loaded) {
778
+ throw new Error('rails-ujs has already been loaded!');
779
+ }
780
+ window.addEventListener('pageshow', function() {
781
+ $(Rails.formEnableSelector).forEach(function(el) {
782
+ if (getData(el, 'ujs:disabled')) {
783
+ return enableElement(el);
784
+ }
785
+ });
786
+ return $(Rails.linkDisableSelector).forEach(function(el) {
787
+ if (getData(el, 'ujs:disabled')) {
788
+ return enableElement(el);
789
+ }
790
+ });
791
+ });
792
+ delegate(document, Rails.linkDisableSelector, 'ajax:complete', enableElement);
793
+ delegate(document, Rails.linkDisableSelector, 'ajax:stopped', enableElement);
794
+ delegate(document, Rails.buttonDisableSelector, 'ajax:complete', enableElement);
795
+ delegate(document, Rails.buttonDisableSelector, 'ajax:stopped', enableElement);
796
+ delegate(document, Rails.linkClickSelector, 'click', preventInsignificantClick);
797
+ delegate(document, Rails.linkClickSelector, 'click', handleDisabledElement);
798
+ delegate(document, Rails.linkClickSelector, 'click', handleConfirm);
799
+ delegate(document, Rails.linkClickSelector, 'click', disableElement);
800
+ delegate(document, Rails.linkClickSelector, 'click', handleRemote);
801
+ delegate(document, Rails.linkClickSelector, 'click', handleMethod);
802
+ delegate(document, Rails.buttonClickSelector, 'click', preventInsignificantClick);
803
+ delegate(document, Rails.buttonClickSelector, 'click', handleDisabledElement);
804
+ delegate(document, Rails.buttonClickSelector, 'click', handleConfirm);
805
+ delegate(document, Rails.buttonClickSelector, 'click', disableElement);
806
+ delegate(document, Rails.buttonClickSelector, 'click', handleRemote);
807
+ delegate(document, Rails.inputChangeSelector, 'change', handleDisabledElement);
808
+ delegate(document, Rails.inputChangeSelector, 'change', handleConfirm);
809
+ delegate(document, Rails.inputChangeSelector, 'change', handleRemote);
810
+ delegate(document, Rails.formSubmitSelector, 'submit', handleDisabledElement);
811
+ delegate(document, Rails.formSubmitSelector, 'submit', handleConfirm);
812
+ delegate(document, Rails.formSubmitSelector, 'submit', handleRemote);
813
+ delegate(document, Rails.formSubmitSelector, 'submit', function(e) {
814
+ return setTimeout((function() {
815
+ return disableElement(e);
816
+ }), 13);
817
+ });
818
+ delegate(document, Rails.formSubmitSelector, 'ajax:send', disableElement);
819
+ delegate(document, Rails.formSubmitSelector, 'ajax:complete', enableElement);
820
+ delegate(document, Rails.formInputClickSelector, 'click', preventInsignificantClick);
821
+ delegate(document, Rails.formInputClickSelector, 'click', handleDisabledElement);
822
+ delegate(document, Rails.formInputClickSelector, 'click', handleConfirm);
823
+ delegate(document, Rails.formInputClickSelector, 'click', formSubmitButtonClick);
824
+ document.addEventListener('DOMContentLoaded', refreshCSRFTokens);
825
+ document.addEventListener('DOMContentLoaded', loadCSPNonce);
826
+ return window._rails_loaded = true;
827
+ };
828
+
829
+ if (window.Rails === Rails && fire(document, 'rails:attachBindings')) {
830
+ Rails.start();
831
+ }
832
+
833
+ }).call(this);
834
+ }).call(this);
835
+
836
+ if (typeof module === "object" && module.exports) {
837
+ module.exports = Rails;
838
+ } else if (typeof define === "function" && define.amd) {
839
+ define(Rails);
840
+ }
841
+ }).call(this);
842
+
843
+ },{}],"../node_modules/@stimulus/core/dist/src/event_listener.js":[function(require,module,exports) {
844
+ "use strict";
845
+
846
+ Object.defineProperty(exports, "__esModule", {
847
+ value: true
848
+ });
849
+ exports.EventListener = void 0;
850
+
851
+ var EventListener =
852
+ /** @class */
853
+ function () {
854
+ function EventListener(eventTarget, eventName) {
855
+ this.eventTarget = eventTarget;
856
+ this.eventName = eventName;
857
+ this.unorderedBindings = new Set();
858
+ }
859
+
860
+ EventListener.prototype.connect = function () {
861
+ this.eventTarget.addEventListener(this.eventName, this, false);
862
+ };
863
+
864
+ EventListener.prototype.disconnect = function () {
865
+ this.eventTarget.removeEventListener(this.eventName, this, false);
866
+ }; // Binding observer delegate
867
+
868
+ /** @hidden */
869
+
870
+
871
+ EventListener.prototype.bindingConnected = function (binding) {
872
+ this.unorderedBindings.add(binding);
873
+ };
874
+ /** @hidden */
875
+
876
+
877
+ EventListener.prototype.bindingDisconnected = function (binding) {
878
+ this.unorderedBindings.delete(binding);
879
+ };
880
+
881
+ EventListener.prototype.handleEvent = function (event) {
882
+ var extendedEvent = extendEvent(event);
883
+
884
+ for (var _i = 0, _a = this.bindings; _i < _a.length; _i++) {
885
+ var binding = _a[_i];
886
+
887
+ if (extendedEvent.immediatePropagationStopped) {
888
+ break;
889
+ } else {
890
+ binding.handleEvent(extendedEvent);
891
+ }
892
+ }
893
+ };
894
+
895
+ Object.defineProperty(EventListener.prototype, "bindings", {
896
+ get: function () {
897
+ return Array.from(this.unorderedBindings).sort(function (left, right) {
898
+ var leftIndex = left.index,
899
+ rightIndex = right.index;
900
+ return leftIndex < rightIndex ? -1 : leftIndex > rightIndex ? 1 : 0;
901
+ });
902
+ },
903
+ enumerable: true,
904
+ configurable: true
905
+ });
906
+ return EventListener;
907
+ }();
908
+
909
+ exports.EventListener = EventListener;
910
+
911
+ function extendEvent(event) {
912
+ if ("immediatePropagationStopped" in event) {
913
+ return event;
914
+ } else {
915
+ var stopImmediatePropagation_1 = event.stopImmediatePropagation;
916
+ return Object.assign(event, {
917
+ immediatePropagationStopped: false,
918
+ stopImmediatePropagation: function () {
919
+ this.immediatePropagationStopped = true;
920
+ stopImmediatePropagation_1.call(this);
921
+ }
922
+ });
923
+ }
924
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRfbGlzdGVuZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZXZlbnRfbGlzdGVuZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7SUFLRSx1QkFBWSxXQUF3QixFQUFFLFNBQWlCO1FBQ3JELElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFBO1FBQzFCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsQ0FBQTtJQUNsQyxDQUFDO0lBRUQsK0JBQU8sR0FBUDtRQUNFLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDaEUsQ0FBQztJQUVELGtDQUFVLEdBQVY7UUFDRSxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ25FLENBQUM7SUFFRCw0QkFBNEI7SUFFNUIsY0FBYztJQUNkLHdDQUFnQixHQUFoQixVQUFpQixPQUFnQjtRQUMvQixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFRCxjQUFjO0lBQ2QsMkNBQW1CLEdBQW5CLFVBQW9CLE9BQWdCO1FBQ2xDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDeEMsQ0FBQztJQUVELG1DQUFXLEdBQVgsVUFBWSxLQUFZO1FBQ3RCLElBQU0sYUFBYSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUN4QyxLQUFzQixVQUFhLEVBQWIsS0FBQSxJQUFJLENBQUMsUUFBUSxFQUFiLGNBQWEsRUFBYixJQUFhLEVBQUU7WUFBaEMsSUFBTSxPQUFPLFNBQUE7WUFDaEIsSUFBSSxhQUFhLENBQUMsMkJBQTJCLEVBQUU7Z0JBQzdDLE1BQUs7YUFDTjtpQkFBTTtnQkFDTCxPQUFPLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxDQUFBO2FBQ25DO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsc0JBQUksbUNBQVE7YUFBWjtZQUNFLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBQyxJQUFJLEVBQUUsS0FBSztnQkFDekQsSUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQTtnQkFDdEQsT0FBTyxTQUFTLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7WUFDckUsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDOzs7T0FBQTtJQUNILG9CQUFDO0FBQUQsQ0FBQyxBQWhERCxJQWdEQzs7QUFFRCxxQkFBcUIsS0FBWTtJQUMvQixJQUFJLDZCQUE2QixJQUFJLEtBQUssRUFBRTtRQUMxQyxPQUFPLEtBQUssQ0FBQTtLQUNiO1NBQU07UUFDRyxJQUFBLDJEQUF3QixDQUFVO1FBQzFDLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUU7WUFDMUIsMkJBQTJCLEVBQUUsS0FBSztZQUNsQyx3QkFBd0I7Z0JBQ3RCLElBQUksQ0FBQywyQkFBMkIsR0FBRyxJQUFJLENBQUE7Z0JBQ3ZDLDBCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtZQUNyQyxDQUFDO1NBQ0YsQ0FBQyxDQUFBO0tBQ0g7QUFDSCxDQUFDIn0=
925
+ },{}],"../node_modules/@stimulus/core/dist/src/dispatcher.js":[function(require,module,exports) {
926
+ "use strict";
927
+
928
+ Object.defineProperty(exports, "__esModule", {
929
+ value: true
930
+ });
931
+ exports.Dispatcher = void 0;
932
+
933
+ var _event_listener = require("./event_listener");
934
+
935
+ var Dispatcher =
936
+ /** @class */
937
+ function () {
938
+ function Dispatcher(application) {
939
+ this.application = application;
940
+ this.eventListenerMaps = new Map();
941
+ this.started = false;
942
+ }
943
+
944
+ Dispatcher.prototype.start = function () {
945
+ if (!this.started) {
946
+ this.started = true;
947
+ this.eventListeners.forEach(function (eventListener) {
948
+ return eventListener.connect();
949
+ });
950
+ }
951
+ };
952
+
953
+ Dispatcher.prototype.stop = function () {
954
+ if (this.started) {
955
+ this.started = false;
956
+ this.eventListeners.forEach(function (eventListener) {
957
+ return eventListener.disconnect();
958
+ });
959
+ }
960
+ };
961
+
962
+ Object.defineProperty(Dispatcher.prototype, "eventListeners", {
963
+ get: function () {
964
+ return Array.from(this.eventListenerMaps.values()).reduce(function (listeners, map) {
965
+ return listeners.concat(Array.from(map.values()));
966
+ }, []);
967
+ },
968
+ enumerable: true,
969
+ configurable: true
970
+ }); // Binding observer delegate
971
+
972
+ /** @hidden */
973
+
974
+ Dispatcher.prototype.bindingConnected = function (binding) {
975
+ this.fetchEventListenerForBinding(binding).bindingConnected(binding);
976
+ };
977
+ /** @hidden */
978
+
979
+
980
+ Dispatcher.prototype.bindingDisconnected = function (binding) {
981
+ this.fetchEventListenerForBinding(binding).bindingDisconnected(binding);
982
+ }; // Error handling
983
+
984
+
985
+ Dispatcher.prototype.handleError = function (error, message, detail) {
986
+ if (detail === void 0) {
987
+ detail = {};
988
+ }
989
+
990
+ this.application.handleError(error, "Error " + message, detail);
991
+ };
992
+
993
+ Dispatcher.prototype.fetchEventListenerForBinding = function (binding) {
994
+ var eventTarget = binding.eventTarget,
995
+ eventName = binding.eventName;
996
+ return this.fetchEventListener(eventTarget, eventName);
997
+ };
998
+
999
+ Dispatcher.prototype.fetchEventListener = function (eventTarget, eventName) {
1000
+ var eventListenerMap = this.fetchEventListenerMapForEventTarget(eventTarget);
1001
+ var eventListener = eventListenerMap.get(eventName);
1002
+
1003
+ if (!eventListener) {
1004
+ eventListener = this.createEventListener(eventTarget, eventName);
1005
+ eventListenerMap.set(eventName, eventListener);
1006
+ }
1007
+
1008
+ return eventListener;
1009
+ };
1010
+
1011
+ Dispatcher.prototype.createEventListener = function (eventTarget, eventName) {
1012
+ var eventListener = new _event_listener.EventListener(eventTarget, eventName);
1013
+
1014
+ if (this.started) {
1015
+ eventListener.connect();
1016
+ }
1017
+
1018
+ return eventListener;
1019
+ };
1020
+
1021
+ Dispatcher.prototype.fetchEventListenerMapForEventTarget = function (eventTarget) {
1022
+ var eventListenerMap = this.eventListenerMaps.get(eventTarget);
1023
+
1024
+ if (!eventListenerMap) {
1025
+ eventListenerMap = new Map();
1026
+ this.eventListenerMaps.set(eventTarget, eventListenerMap);
1027
+ }
1028
+
1029
+ return eventListenerMap;
1030
+ };
1031
+
1032
+ return Dispatcher;
1033
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzcGF0Y2hlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaXNwYXRjaGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUVoRDtJQUtFLG9CQUFZLFdBQXdCO1FBQ2xDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQzlCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLEdBQUcsQ0FBQTtRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQTtJQUN0QixDQUFDO0lBRUQsMEJBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1lBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLFVBQUEsYUFBYSxJQUFJLE9BQUEsYUFBYSxDQUFDLE9BQU8sRUFBRSxFQUF2QixDQUF1QixDQUFDLENBQUE7U0FDdEU7SUFDSCxDQUFDO0lBRUQseUJBQUksR0FBSjtRQUNFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQTtZQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxVQUFBLGFBQWEsSUFBSSxPQUFBLGFBQWEsQ0FBQyxVQUFVLEVBQUUsRUFBMUIsQ0FBMEIsQ0FBQyxDQUFBO1NBQ3pFO0lBQ0gsQ0FBQztJQUVELHNCQUFJLHNDQUFjO2FBQWxCO1lBQ0UsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQztpQkFDL0MsTUFBTSxDQUFDLFVBQUMsU0FBUyxFQUFFLEdBQUcsSUFBSyxPQUFBLFNBQVMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUExQyxDQUEwQyxFQUFFLEVBQXFCLENBQUMsQ0FBQTtRQUNsRyxDQUFDOzs7T0FBQTtJQUVELDRCQUE0QjtJQUU1QixjQUFjO0lBQ2QscUNBQWdCLEdBQWhCLFVBQWlCLE9BQWdCO1FBQy9CLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUN0RSxDQUFDO0lBRUQsY0FBYztJQUNkLHdDQUFtQixHQUFuQixVQUFvQixPQUFnQjtRQUNsQyxJQUFJLENBQUMsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDekUsQ0FBQztJQUVELGlCQUFpQjtJQUVqQixnQ0FBVyxHQUFYLFVBQVksS0FBWSxFQUFFLE9BQWUsRUFBRSxNQUFtQjtRQUFuQix1QkFBQSxFQUFBLFdBQW1CO1FBQzVELElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxXQUFTLE9BQVMsRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUNqRSxDQUFDO0lBRU8saURBQTRCLEdBQXBDLFVBQXFDLE9BQWdCO1FBQzNDLElBQUEsaUNBQVcsRUFBRSw2QkFBUyxDQUFZO1FBQzFDLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQTtJQUN4RCxDQUFDO0lBRU8sdUNBQWtCLEdBQTFCLFVBQTJCLFdBQXdCLEVBQUUsU0FBaUI7UUFDcEUsSUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUNBQW1DLENBQUMsV0FBVyxDQUFDLENBQUE7UUFDOUUsSUFBSSxhQUFhLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQ25ELElBQUksQ0FBQyxhQUFhLEVBQUU7WUFDbEIsYUFBYSxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUE7WUFDaEUsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQTtTQUMvQztRQUNELE9BQU8sYUFBYSxDQUFBO0lBQ3RCLENBQUM7SUFFTyx3Q0FBbUIsR0FBM0IsVUFBNEIsV0FBd0IsRUFBRSxTQUFpQjtRQUNyRSxJQUFNLGFBQWEsR0FBRyxJQUFJLGFBQWEsQ0FBQyxXQUFXLEVBQUUsU0FBUyxDQUFDLENBQUE7UUFDL0QsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtTQUN4QjtRQUNELE9BQU8sYUFBYSxDQUFBO0lBQ3RCLENBQUM7SUFFTyx3REFBbUMsR0FBM0MsVUFBNEMsV0FBd0I7UUFDbEUsSUFBSSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzlELElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNyQixnQkFBZ0IsR0FBRyxJQUFJLEdBQUcsQ0FBQTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFBO1NBQzFEO1FBQ0QsT0FBTyxnQkFBZ0IsQ0FBQTtJQUN6QixDQUFDO0lBQ0gsaUJBQUM7QUFBRCxDQUFDLEFBL0VELElBK0VDIn0=
1034
+
1035
+
1036
+ exports.Dispatcher = Dispatcher;
1037
+ },{"./event_listener":"../node_modules/@stimulus/core/dist/src/event_listener.js"}],"../node_modules/@stimulus/core/dist/src/action_descriptor.js":[function(require,module,exports) {
1038
+ "use strict";
1039
+
1040
+ Object.defineProperty(exports, "__esModule", {
1041
+ value: true
1042
+ });
1043
+ exports.parseDescriptorString = parseDescriptorString;
1044
+ exports.stringifyEventTarget = stringifyEventTarget;
1045
+ // capture nos.: 12 23 4 43 1 5 56 7 76
1046
+ var descriptorPattern = /^((.+?)(@(window|document))?->)?(.+?)(#(.+))?$/;
1047
+
1048
+ function parseDescriptorString(descriptorString) {
1049
+ var source = descriptorString.trim();
1050
+ var matches = source.match(descriptorPattern) || [];
1051
+ return {
1052
+ eventTarget: parseEventTarget(matches[4]),
1053
+ eventName: matches[2],
1054
+ identifier: matches[5],
1055
+ methodName: matches[7]
1056
+ };
1057
+ }
1058
+
1059
+ function parseEventTarget(eventTargetName) {
1060
+ if (eventTargetName == "window") {
1061
+ return window;
1062
+ } else if (eventTargetName == "document") {
1063
+ return document;
1064
+ }
1065
+ }
1066
+
1067
+ function stringifyEventTarget(eventTarget) {
1068
+ if (eventTarget == window) {
1069
+ return "window";
1070
+ } else if (eventTarget == document) {
1071
+ return "document";
1072
+ }
1073
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uX2Rlc2NyaXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9uX2Rlc2NyaXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsdUVBQXVFO0FBQ3ZFLElBQU0saUJBQWlCLEdBQUcsZ0RBQWdELENBQUE7QUFFMUUsTUFBTSxnQ0FBZ0MsZ0JBQXdCO0lBQzVELElBQU0sTUFBTSxHQUFHLGdCQUFnQixDQUFDLElBQUksRUFBRSxDQUFBO0lBQ3RDLElBQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDckQsT0FBTztRQUNMLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekMsU0FBUyxFQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDdkIsVUFBVSxFQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDdkIsVUFBVSxFQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7S0FDeEIsQ0FBQTtBQUNILENBQUM7QUFFRCwwQkFBMEIsZUFBdUI7SUFDL0MsSUFBSSxlQUFlLElBQUksUUFBUSxFQUFFO1FBQy9CLE9BQU8sTUFBTSxDQUFBO0tBQ2Q7U0FBTSxJQUFJLGVBQWUsSUFBSSxVQUFVLEVBQUU7UUFDeEMsT0FBTyxRQUFRLENBQUE7S0FDaEI7QUFDSCxDQUFDO0FBRUQsTUFBTSwrQkFBK0IsV0FBd0I7SUFDM0QsSUFBSSxXQUFXLElBQUksTUFBTSxFQUFFO1FBQ3pCLE9BQU8sUUFBUSxDQUFBO0tBQ2hCO1NBQU0sSUFBSSxXQUFXLElBQUksUUFBUSxFQUFFO1FBQ2xDLE9BQU8sVUFBVSxDQUFBO0tBQ2xCO0FBQ0gsQ0FBQyJ9
1074
+ },{}],"../node_modules/@stimulus/core/dist/src/action.js":[function(require,module,exports) {
1075
+ "use strict";
1076
+
1077
+ Object.defineProperty(exports, "__esModule", {
1078
+ value: true
1079
+ });
1080
+ exports.getDefaultEventNameForElement = getDefaultEventNameForElement;
1081
+ exports.Action = void 0;
1082
+
1083
+ var _action_descriptor = require("./action_descriptor");
1084
+
1085
+ var Action =
1086
+ /** @class */
1087
+ function () {
1088
+ function Action(element, index, descriptor) {
1089
+ this.element = element;
1090
+ this.index = index;
1091
+ this.eventTarget = descriptor.eventTarget || element;
1092
+ this.eventName = descriptor.eventName || getDefaultEventNameForElement(element) || error("missing event name");
1093
+ this.identifier = descriptor.identifier || error("missing identifier");
1094
+ this.methodName = descriptor.methodName || error("missing method name");
1095
+ }
1096
+
1097
+ Action.forToken = function (token) {
1098
+ return new this(token.element, token.index, (0, _action_descriptor.parseDescriptorString)(token.content));
1099
+ };
1100
+
1101
+ Action.prototype.toString = function () {
1102
+ var eventNameSuffix = this.eventTargetName ? "@" + this.eventTargetName : "";
1103
+ return "" + this.eventName + eventNameSuffix + "->" + this.identifier + "#" + this.methodName;
1104
+ };
1105
+
1106
+ Object.defineProperty(Action.prototype, "eventTargetName", {
1107
+ get: function () {
1108
+ return (0, _action_descriptor.stringifyEventTarget)(this.eventTarget);
1109
+ },
1110
+ enumerable: true,
1111
+ configurable: true
1112
+ });
1113
+ return Action;
1114
+ }();
1115
+
1116
+ exports.Action = Action;
1117
+ var defaultEventNames = {
1118
+ "a": function (e) {
1119
+ return "click";
1120
+ },
1121
+ "button": function (e) {
1122
+ return "click";
1123
+ },
1124
+ "form": function (e) {
1125
+ return "submit";
1126
+ },
1127
+ "input": function (e) {
1128
+ return e.getAttribute("type") == "submit" ? "click" : "change";
1129
+ },
1130
+ "select": function (e) {
1131
+ return "change";
1132
+ },
1133
+ "textarea": function (e) {
1134
+ return "change";
1135
+ }
1136
+ };
1137
+
1138
+ function getDefaultEventNameForElement(element) {
1139
+ var tagName = element.tagName.toLowerCase();
1140
+
1141
+ if (tagName in defaultEventNames) {
1142
+ return defaultEventNames[tagName](element);
1143
+ }
1144
+ }
1145
+
1146
+ function error(message) {
1147
+ throw new Error(message);
1148
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFHbkc7SUFZRSxnQkFBWSxPQUFnQixFQUFFLEtBQWEsRUFBRSxVQUFxQztRQUNoRixJQUFJLENBQUMsT0FBTyxHQUFPLE9BQU8sQ0FBQTtRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFTLEtBQUssQ0FBQTtRQUN4QixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxXQUFXLElBQUksT0FBTyxDQUFBO1FBQ3BELElBQUksQ0FBQyxTQUFTLEdBQUssVUFBVSxDQUFDLFNBQVMsSUFBSSw2QkFBNkIsQ0FBQyxPQUFPLENBQUMsSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtRQUNoSCxJQUFJLENBQUMsVUFBVSxHQUFJLFVBQVUsQ0FBQyxVQUFVLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUE7UUFDdkUsSUFBSSxDQUFDLFVBQVUsR0FBSSxVQUFVLENBQUMsVUFBVSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0lBQzFFLENBQUM7SUFYTSxlQUFRLEdBQWYsVUFBZ0IsS0FBWTtRQUMxQixPQUFPLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQTtJQUNuRixDQUFDO0lBV0QseUJBQVEsR0FBUjtRQUNFLElBQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE1BQUksSUFBSSxDQUFDLGVBQWlCLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtRQUM5RSxPQUFPLEtBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxlQUFlLFVBQUssSUFBSSxDQUFDLFVBQVUsU0FBSSxJQUFJLENBQUMsVUFBWSxDQUFBO0lBQ3JGLENBQUM7SUFFRCxzQkFBWSxtQ0FBZTthQUEzQjtZQUNFLE9BQU8sb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQy9DLENBQUM7OztPQUFBO0lBQ0gsYUFBQztBQUFELENBQUMsQUE3QkQsSUE2QkM7O0FBRUQsSUFBTSxpQkFBaUIsR0FBd0Q7SUFDN0UsR0FBRyxFQUFTLFVBQUEsQ0FBQyxJQUFJLE9BQUEsT0FBTyxFQUFQLENBQU87SUFDeEIsUUFBUSxFQUFJLFVBQUEsQ0FBQyxJQUFJLE9BQUEsT0FBTyxFQUFQLENBQU87SUFDeEIsTUFBTSxFQUFNLFVBQUEsQ0FBQyxJQUFJLE9BQUEsUUFBUSxFQUFSLENBQVE7SUFDekIsT0FBTyxFQUFLLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUF2RCxDQUF1RDtJQUN4RSxRQUFRLEVBQUksVUFBQSxDQUFDLElBQUksT0FBQSxRQUFRLEVBQVIsQ0FBUTtJQUN6QixVQUFVLEVBQUUsVUFBQSxDQUFDLElBQUksT0FBQSxRQUFRLEVBQVIsQ0FBUTtDQUMxQixDQUFBO0FBRUQsTUFBTSx3Q0FBd0MsT0FBZ0I7SUFDNUQsSUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUM3QyxJQUFJLE9BQU8sSUFBSSxpQkFBaUIsRUFBRTtRQUNoQyxPQUFPLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0tBQzNDO0FBQ0gsQ0FBQztBQUVELGVBQWUsT0FBZTtJQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFBO0FBQzFCLENBQUMifQ==
1149
+ },{"./action_descriptor":"../node_modules/@stimulus/core/dist/src/action_descriptor.js"}],"../node_modules/@stimulus/core/dist/src/binding.js":[function(require,module,exports) {
1150
+ "use strict";
1151
+
1152
+ Object.defineProperty(exports, "__esModule", {
1153
+ value: true
1154
+ });
1155
+ exports.Binding = void 0;
1156
+
1157
+ var Binding =
1158
+ /** @class */
1159
+ function () {
1160
+ function Binding(context, action) {
1161
+ this.context = context;
1162
+ this.action = action;
1163
+ }
1164
+
1165
+ Object.defineProperty(Binding.prototype, "index", {
1166
+ get: function () {
1167
+ return this.action.index;
1168
+ },
1169
+ enumerable: true,
1170
+ configurable: true
1171
+ });
1172
+ Object.defineProperty(Binding.prototype, "eventTarget", {
1173
+ get: function () {
1174
+ return this.action.eventTarget;
1175
+ },
1176
+ enumerable: true,
1177
+ configurable: true
1178
+ });
1179
+ Object.defineProperty(Binding.prototype, "identifier", {
1180
+ get: function () {
1181
+ return this.context.identifier;
1182
+ },
1183
+ enumerable: true,
1184
+ configurable: true
1185
+ });
1186
+
1187
+ Binding.prototype.handleEvent = function (event) {
1188
+ if (this.willBeInvokedByEvent(event)) {
1189
+ this.invokeWithEvent(event);
1190
+ }
1191
+ };
1192
+
1193
+ Object.defineProperty(Binding.prototype, "eventName", {
1194
+ get: function () {
1195
+ return this.action.eventName;
1196
+ },
1197
+ enumerable: true,
1198
+ configurable: true
1199
+ });
1200
+ Object.defineProperty(Binding.prototype, "method", {
1201
+ get: function () {
1202
+ var method = this.controller[this.methodName];
1203
+
1204
+ if (typeof method == "function") {
1205
+ return method;
1206
+ }
1207
+
1208
+ throw new Error("Action \"" + this.action + "\" references undefined method \"" + this.methodName + "\"");
1209
+ },
1210
+ enumerable: true,
1211
+ configurable: true
1212
+ });
1213
+
1214
+ Binding.prototype.invokeWithEvent = function (event) {
1215
+ try {
1216
+ this.method.call(this.controller, event);
1217
+ } catch (error) {
1218
+ var _a = this,
1219
+ identifier = _a.identifier,
1220
+ controller = _a.controller,
1221
+ element = _a.element,
1222
+ index = _a.index;
1223
+
1224
+ var detail = {
1225
+ identifier: identifier,
1226
+ controller: controller,
1227
+ element: element,
1228
+ index: index,
1229
+ event: event
1230
+ };
1231
+ this.context.handleError(error, "invoking action \"" + this.action + "\"", detail);
1232
+ }
1233
+ };
1234
+
1235
+ Binding.prototype.willBeInvokedByEvent = function (event) {
1236
+ var eventTarget = event.target;
1237
+
1238
+ if (this.element === eventTarget) {
1239
+ return true;
1240
+ } else if (eventTarget instanceof Element && this.element.contains(eventTarget)) {
1241
+ return this.scope.containsElement(eventTarget);
1242
+ } else {
1243
+ return true;
1244
+ }
1245
+ };
1246
+
1247
+ Object.defineProperty(Binding.prototype, "controller", {
1248
+ get: function () {
1249
+ return this.context.controller;
1250
+ },
1251
+ enumerable: true,
1252
+ configurable: true
1253
+ });
1254
+ Object.defineProperty(Binding.prototype, "methodName", {
1255
+ get: function () {
1256
+ return this.action.methodName;
1257
+ },
1258
+ enumerable: true,
1259
+ configurable: true
1260
+ });
1261
+ Object.defineProperty(Binding.prototype, "element", {
1262
+ get: function () {
1263
+ return this.scope.element;
1264
+ },
1265
+ enumerable: true,
1266
+ configurable: true
1267
+ });
1268
+ Object.defineProperty(Binding.prototype, "scope", {
1269
+ get: function () {
1270
+ return this.context.scope;
1271
+ },
1272
+ enumerable: true,
1273
+ configurable: true
1274
+ });
1275
+ return Binding;
1276
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW5kaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBO0lBSUUsaUJBQVksT0FBZ0IsRUFBRSxNQUFjO1FBQzFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO0lBQ3RCLENBQUM7SUFFRCxzQkFBSSwwQkFBSzthQUFUO1lBQ0UsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQTtRQUMxQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLGdDQUFXO2FBQWY7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFBO1FBQ2hDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksK0JBQVU7YUFBZDtZQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUE7UUFDaEMsQ0FBQzs7O09BQUE7SUFFRCw2QkFBVyxHQUFYLFVBQVksS0FBWTtRQUN0QixJQUFJLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNwQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFBO1NBQzVCO0lBQ0gsQ0FBQztJQUVELHNCQUFJLDhCQUFTO2FBQWI7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFBO1FBQzlCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksMkJBQU07YUFBVjtZQUNFLElBQU0sTUFBTSxHQUFJLElBQUksQ0FBQyxVQUFrQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUN4RCxJQUFJLE9BQU8sTUFBTSxJQUFJLFVBQVUsRUFBRTtnQkFDL0IsT0FBTyxNQUFNLENBQUE7YUFDZDtZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsY0FBVyxJQUFJLENBQUMsTUFBTSx5Q0FBa0MsSUFBSSxDQUFDLFVBQVUsT0FBRyxDQUFDLENBQUE7UUFDN0YsQ0FBQzs7O09BQUE7SUFFTyxpQ0FBZSxHQUF2QixVQUF3QixLQUFZO1FBQ2xDLElBQUk7WUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFBO1NBQ3pDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDUixJQUFBLFNBQWlELEVBQS9DLDBCQUFVLEVBQUUsMEJBQVUsRUFBRSxvQkFBTyxFQUFFLGdCQUFLLENBQVM7WUFDdkQsSUFBTSxNQUFNLEdBQUcsRUFBRSxVQUFVLFlBQUEsRUFBRSxVQUFVLFlBQUEsRUFBRSxPQUFPLFNBQUEsRUFBRSxLQUFLLE9BQUEsRUFBRSxLQUFLLE9BQUEsRUFBRSxDQUFBO1lBQ2hFLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSx1QkFBb0IsSUFBSSxDQUFDLE1BQU0sT0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFBO1NBQzVFO0lBQ0gsQ0FBQztJQUVPLHNDQUFvQixHQUE1QixVQUE2QixLQUFZO1FBQ3ZDLElBQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUE7UUFDaEMsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsRUFBRTtZQUNoQyxPQUFPLElBQUksQ0FBQTtTQUNaO2FBQU0sSUFBSSxXQUFXLFlBQVksT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQy9FLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUE7U0FDL0M7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFBO1NBQ1o7SUFDSCxDQUFDO0lBRUQsc0JBQVksK0JBQVU7YUFBdEI7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFBO1FBQ2hDLENBQUM7OztPQUFBO0lBRUQsc0JBQVksK0JBQVU7YUFBdEI7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFBO1FBQy9CLENBQUM7OztPQUFBO0lBRUQsc0JBQVksNEJBQU87YUFBbkI7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFBO1FBQzNCLENBQUM7OztPQUFBO0lBRUQsc0JBQVksMEJBQUs7YUFBakI7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFBO1FBQzNCLENBQUM7OztPQUFBO0lBQ0gsY0FBQztBQUFELENBQUMsQUEzRUQsSUEyRUMifQ==
1277
+
1278
+
1279
+ exports.Binding = Binding;
1280
+ },{}],"../node_modules/@stimulus/mutation-observers/dist/src/element_observer.js":[function(require,module,exports) {
1281
+ "use strict";
1282
+
1283
+ Object.defineProperty(exports, "__esModule", {
1284
+ value: true
1285
+ });
1286
+ exports.ElementObserver = void 0;
1287
+
1288
+ var ElementObserver =
1289
+ /** @class */
1290
+ function () {
1291
+ function ElementObserver(element, delegate) {
1292
+ var _this = this;
1293
+
1294
+ this.element = element;
1295
+ this.started = false;
1296
+ this.delegate = delegate;
1297
+ this.elements = new Set();
1298
+ this.mutationObserver = new MutationObserver(function (mutations) {
1299
+ return _this.processMutations(mutations);
1300
+ });
1301
+ }
1302
+
1303
+ ElementObserver.prototype.start = function () {
1304
+ if (!this.started) {
1305
+ this.started = true;
1306
+ this.mutationObserver.observe(this.element, {
1307
+ attributes: true,
1308
+ childList: true,
1309
+ subtree: true
1310
+ });
1311
+ this.refresh();
1312
+ }
1313
+ };
1314
+
1315
+ ElementObserver.prototype.stop = function () {
1316
+ if (this.started) {
1317
+ this.mutationObserver.takeRecords();
1318
+ this.mutationObserver.disconnect();
1319
+ this.started = false;
1320
+ }
1321
+ };
1322
+
1323
+ ElementObserver.prototype.refresh = function () {
1324
+ if (this.started) {
1325
+ var matches = new Set(this.matchElementsInTree());
1326
+
1327
+ for (var _i = 0, _a = Array.from(this.elements); _i < _a.length; _i++) {
1328
+ var element = _a[_i];
1329
+
1330
+ if (!matches.has(element)) {
1331
+ this.removeElement(element);
1332
+ }
1333
+ }
1334
+
1335
+ for (var _b = 0, _c = Array.from(matches); _b < _c.length; _b++) {
1336
+ var element = _c[_b];
1337
+ this.addElement(element);
1338
+ }
1339
+ }
1340
+ }; // Mutation record processing
1341
+
1342
+
1343
+ ElementObserver.prototype.processMutations = function (mutations) {
1344
+ if (this.started) {
1345
+ for (var _i = 0, mutations_1 = mutations; _i < mutations_1.length; _i++) {
1346
+ var mutation = mutations_1[_i];
1347
+ this.processMutation(mutation);
1348
+ }
1349
+ }
1350
+ };
1351
+
1352
+ ElementObserver.prototype.processMutation = function (mutation) {
1353
+ if (mutation.type == "attributes") {
1354
+ this.processAttributeChange(mutation.target, mutation.attributeName);
1355
+ } else if (mutation.type == "childList") {
1356
+ this.processRemovedNodes(mutation.removedNodes);
1357
+ this.processAddedNodes(mutation.addedNodes);
1358
+ }
1359
+ };
1360
+
1361
+ ElementObserver.prototype.processAttributeChange = function (node, attributeName) {
1362
+ var element = node;
1363
+
1364
+ if (this.elements.has(element)) {
1365
+ if (this.delegate.elementAttributeChanged && this.matchElement(element)) {
1366
+ this.delegate.elementAttributeChanged(element, attributeName);
1367
+ } else {
1368
+ this.removeElement(element);
1369
+ }
1370
+ } else if (this.matchElement(element)) {
1371
+ this.addElement(element);
1372
+ }
1373
+ };
1374
+
1375
+ ElementObserver.prototype.processRemovedNodes = function (nodes) {
1376
+ for (var _i = 0, _a = Array.from(nodes); _i < _a.length; _i++) {
1377
+ var node = _a[_i];
1378
+ var element = this.elementFromNode(node);
1379
+
1380
+ if (element) {
1381
+ this.processTree(element, this.removeElement);
1382
+ }
1383
+ }
1384
+ };
1385
+
1386
+ ElementObserver.prototype.processAddedNodes = function (nodes) {
1387
+ for (var _i = 0, _a = Array.from(nodes); _i < _a.length; _i++) {
1388
+ var node = _a[_i];
1389
+ var element = this.elementFromNode(node);
1390
+
1391
+ if (element && this.elementIsActive(element)) {
1392
+ this.processTree(element, this.addElement);
1393
+ }
1394
+ }
1395
+ }; // Element matching
1396
+
1397
+
1398
+ ElementObserver.prototype.matchElement = function (element) {
1399
+ return this.delegate.matchElement(element);
1400
+ };
1401
+
1402
+ ElementObserver.prototype.matchElementsInTree = function (tree) {
1403
+ if (tree === void 0) {
1404
+ tree = this.element;
1405
+ }
1406
+
1407
+ return this.delegate.matchElementsInTree(tree);
1408
+ };
1409
+
1410
+ ElementObserver.prototype.processTree = function (tree, processor) {
1411
+ for (var _i = 0, _a = this.matchElementsInTree(tree); _i < _a.length; _i++) {
1412
+ var element = _a[_i];
1413
+ processor.call(this, element);
1414
+ }
1415
+ };
1416
+
1417
+ ElementObserver.prototype.elementFromNode = function (node) {
1418
+ if (node.nodeType == Node.ELEMENT_NODE) {
1419
+ return node;
1420
+ }
1421
+ };
1422
+
1423
+ ElementObserver.prototype.elementIsActive = function (element) {
1424
+ if (element.isConnected != this.element.isConnected) {
1425
+ return false;
1426
+ } else {
1427
+ return this.element.contains(element);
1428
+ }
1429
+ }; // Element tracking
1430
+
1431
+
1432
+ ElementObserver.prototype.addElement = function (element) {
1433
+ if (!this.elements.has(element)) {
1434
+ if (this.elementIsActive(element)) {
1435
+ this.elements.add(element);
1436
+
1437
+ if (this.delegate.elementMatched) {
1438
+ this.delegate.elementMatched(element);
1439
+ }
1440
+ }
1441
+ }
1442
+ };
1443
+
1444
+ ElementObserver.prototype.removeElement = function (element) {
1445
+ if (this.elements.has(element)) {
1446
+ this.elements.delete(element);
1447
+
1448
+ if (this.delegate.elementUnmatched) {
1449
+ this.delegate.elementUnmatched(element);
1450
+ }
1451
+ }
1452
+ };
1453
+
1454
+ return ElementObserver;
1455
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudF9vYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9lbGVtZW50X29ic2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBO0lBUUUseUJBQVksT0FBZ0IsRUFBRSxRQUFpQztRQUEvRCxpQkFPQztRQU5DLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFBO1FBQ3BCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBRXhCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxHQUFHLENBQUE7UUFDdkIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksZ0JBQWdCLENBQUMsVUFBQyxTQUFTLElBQUssT0FBQSxLQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLEVBQWhDLENBQWdDLENBQUMsQ0FBQTtJQUMvRixDQUFDO0lBRUQsK0JBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFBO1lBQ25CLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUNqRyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUE7U0FDZjtJQUNILENBQUM7SUFFRCw4QkFBSSxHQUFKO1FBQ0UsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtZQUNuQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLENBQUE7WUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUE7U0FDckI7SUFDSCxDQUFDO0lB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
1456
+
1457
+
1458
+ exports.ElementObserver = ElementObserver;
1459
+ },{}],"../node_modules/@stimulus/mutation-observers/dist/src/attribute_observer.js":[function(require,module,exports) {
1460
+ "use strict";
1461
+
1462
+ Object.defineProperty(exports, "__esModule", {
1463
+ value: true
1464
+ });
1465
+ exports.AttributeObserver = void 0;
1466
+
1467
+ var _element_observer = require("./element_observer");
1468
+
1469
+ var AttributeObserver =
1470
+ /** @class */
1471
+ function () {
1472
+ function AttributeObserver(element, attributeName, delegate) {
1473
+ this.attributeName = attributeName;
1474
+ this.delegate = delegate;
1475
+ this.elementObserver = new _element_observer.ElementObserver(element, this);
1476
+ }
1477
+
1478
+ Object.defineProperty(AttributeObserver.prototype, "element", {
1479
+ get: function () {
1480
+ return this.elementObserver.element;
1481
+ },
1482
+ enumerable: true,
1483
+ configurable: true
1484
+ });
1485
+ Object.defineProperty(AttributeObserver.prototype, "selector", {
1486
+ get: function () {
1487
+ return "[" + this.attributeName + "]";
1488
+ },
1489
+ enumerable: true,
1490
+ configurable: true
1491
+ });
1492
+
1493
+ AttributeObserver.prototype.start = function () {
1494
+ this.elementObserver.start();
1495
+ };
1496
+
1497
+ AttributeObserver.prototype.stop = function () {
1498
+ this.elementObserver.stop();
1499
+ };
1500
+
1501
+ AttributeObserver.prototype.refresh = function () {
1502
+ this.elementObserver.refresh();
1503
+ };
1504
+
1505
+ Object.defineProperty(AttributeObserver.prototype, "started", {
1506
+ get: function () {
1507
+ return this.elementObserver.started;
1508
+ },
1509
+ enumerable: true,
1510
+ configurable: true
1511
+ }); // Element observer delegate
1512
+
1513
+ AttributeObserver.prototype.matchElement = function (element) {
1514
+ return element.hasAttribute(this.attributeName);
1515
+ };
1516
+
1517
+ AttributeObserver.prototype.matchElementsInTree = function (tree) {
1518
+ var match = this.matchElement(tree) ? [tree] : [];
1519
+ var matches = Array.from(tree.querySelectorAll(this.selector));
1520
+ return match.concat(matches);
1521
+ };
1522
+
1523
+ AttributeObserver.prototype.elementMatched = function (element) {
1524
+ if (this.delegate.elementMatchedAttribute) {
1525
+ this.delegate.elementMatchedAttribute(element, this.attributeName);
1526
+ }
1527
+ };
1528
+
1529
+ AttributeObserver.prototype.elementUnmatched = function (element) {
1530
+ if (this.delegate.elementUnmatchedAttribute) {
1531
+ this.delegate.elementUnmatchedAttribute(element, this.attributeName);
1532
+ }
1533
+ };
1534
+
1535
+ AttributeObserver.prototype.elementAttributeChanged = function (element, attributeName) {
1536
+ if (this.delegate.elementAttributeValueChanged && this.attributeName == attributeName) {
1537
+ this.delegate.elementAttributeValueChanged(element, attributeName);
1538
+ }
1539
+ };
1540
+
1541
+ return AttributeObserver;
1542
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlX29ic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F0dHJpYnV0ZV9vYnNlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUEyQixNQUFNLG9CQUFvQixDQUFBO0FBUTdFO0lBTUUsMkJBQVksT0FBZ0IsRUFBRSxhQUFxQixFQUFFLFFBQW1DO1FBQ3RGLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFBO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBRXhCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxlQUFlLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzNELENBQUM7SUFFRCxzQkFBSSxzQ0FBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQTtRQUNyQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHVDQUFRO2FBQVo7WUFDRSxPQUFPLE1BQUksSUFBSSxDQUFDLGFBQWEsTUFBRyxDQUFBO1FBQ2xDLENBQUM7OztPQUFBO0lBRUQsaUNBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDOUIsQ0FBQztJQUVELGdDQUFJLEdBQUo7UUFDRSxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxDQUFBO0lBQzdCLENBQUM7SUFFRCxtQ0FBTyxHQUFQO1FBQ0UsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsc0JBQUksc0NBQU87YUFBWDtZQUNFLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUE7UUFDckMsQ0FBQzs7O09BQUE7SUFFRCw0QkFBNEI7SUFFNUIsd0NBQVksR0FBWixVQUFhLE9BQWdCO1FBQzNCLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUE7SUFDakQsQ0FBQztJQUVELCtDQUFtQixHQUFuQixVQUFvQixJQUFhO1FBQy9CLElBQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtRQUNuRCxJQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtRQUNoRSxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUE7SUFDOUIsQ0FBQztJQUVELDBDQUFjLEdBQWQsVUFBZSxPQUFnQjtRQUM3QixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsdUJBQXVCLEVBQUU7WUFDekMsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1NBQ25FO0lBQ0gsQ0FBQztJQUVELDRDQUFnQixHQUFoQixVQUFpQixPQUFnQjtRQUMvQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMseUJBQXlCLEVBQUU7WUFDM0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFBO1NBQ3JFO0lBQ0gsQ0FBQztJQUVELG1EQUF1QixHQUF2QixVQUF3QixPQUFnQixFQUFFLGFBQXFCO1FBQzdELElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyw0QkFBNEIsSUFBSSxJQUFJLENBQUMsYUFBYSxJQUFJLGFBQWEsRUFBRTtZQUNyRixJQUFJLENBQUMsUUFBUSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQTtTQUNuRTtJQUNILENBQUM7SUFDSCx3QkFBQztBQUFELENBQUMsQUFsRUQsSUFrRUMifQ==
1543
+
1544
+
1545
+ exports.AttributeObserver = AttributeObserver;
1546
+ },{"./element_observer":"../node_modules/@stimulus/mutation-observers/dist/src/element_observer.js"}],"../node_modules/@stimulus/multimap/dist/src/set_operations.js":[function(require,module,exports) {
1547
+ "use strict";
1548
+
1549
+ Object.defineProperty(exports, "__esModule", {
1550
+ value: true
1551
+ });
1552
+ exports.add = add;
1553
+ exports.del = del;
1554
+ exports.fetch = fetch;
1555
+ exports.prune = prune;
1556
+
1557
+ function add(map, key, value) {
1558
+ fetch(map, key).add(value);
1559
+ }
1560
+
1561
+ function del(map, key, value) {
1562
+ fetch(map, key).delete(value);
1563
+ prune(map, key);
1564
+ }
1565
+
1566
+ function fetch(map, key) {
1567
+ var values = map.get(key);
1568
+
1569
+ if (!values) {
1570
+ values = new Set();
1571
+ map.set(key, values);
1572
+ }
1573
+
1574
+ return values;
1575
+ }
1576
+
1577
+ function prune(map, key) {
1578
+ var values = map.get(key);
1579
+
1580
+ if (values != null && values.size == 0) {
1581
+ map.delete(key);
1582
+ }
1583
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0X29wZXJhdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2V0X29wZXJhdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxjQUFvQixHQUFtQixFQUFFLEdBQU0sRUFBRSxLQUFRO0lBQzdELEtBQUssQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO0FBQzVCLENBQUM7QUFFRCxNQUFNLGNBQW9CLEdBQW1CLEVBQUUsR0FBTSxFQUFFLEtBQVE7SUFDN0QsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDN0IsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQTtBQUNqQixDQUFDO0FBRUQsTUFBTSxnQkFBc0IsR0FBbUIsRUFBRSxHQUFNO0lBQ3JELElBQUksTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDekIsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFBO1FBQ2xCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0tBQ3JCO0lBQ0QsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDO0FBRUQsTUFBTSxnQkFBc0IsR0FBbUIsRUFBRSxHQUFNO0lBQ3JELElBQU0sTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7SUFDM0IsSUFBSSxNQUFNLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFO1FBQ3RDLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUE7S0FDaEI7QUFDSCxDQUFDIn0=
1584
+ },{}],"../node_modules/@stimulus/multimap/dist/src/multimap.js":[function(require,module,exports) {
1585
+ "use strict";
1586
+
1587
+ Object.defineProperty(exports, "__esModule", {
1588
+ value: true
1589
+ });
1590
+ exports.Multimap = void 0;
1591
+
1592
+ var _set_operations = require("./set_operations");
1593
+
1594
+ var Multimap =
1595
+ /** @class */
1596
+ function () {
1597
+ function Multimap() {
1598
+ this.valuesByKey = new Map();
1599
+ }
1600
+
1601
+ Object.defineProperty(Multimap.prototype, "values", {
1602
+ get: function () {
1603
+ var sets = Array.from(this.valuesByKey.values());
1604
+ return sets.reduce(function (values, set) {
1605
+ return values.concat(Array.from(set));
1606
+ }, []);
1607
+ },
1608
+ enumerable: true,
1609
+ configurable: true
1610
+ });
1611
+ Object.defineProperty(Multimap.prototype, "size", {
1612
+ get: function () {
1613
+ var sets = Array.from(this.valuesByKey.values());
1614
+ return sets.reduce(function (size, set) {
1615
+ return size + set.size;
1616
+ }, 0);
1617
+ },
1618
+ enumerable: true,
1619
+ configurable: true
1620
+ });
1621
+
1622
+ Multimap.prototype.add = function (key, value) {
1623
+ (0, _set_operations.add)(this.valuesByKey, key, value);
1624
+ };
1625
+
1626
+ Multimap.prototype.delete = function (key, value) {
1627
+ (0, _set_operations.del)(this.valuesByKey, key, value);
1628
+ };
1629
+
1630
+ Multimap.prototype.has = function (key, value) {
1631
+ var values = this.valuesByKey.get(key);
1632
+ return values != null && values.has(value);
1633
+ };
1634
+
1635
+ Multimap.prototype.hasKey = function (key) {
1636
+ return this.valuesByKey.has(key);
1637
+ };
1638
+
1639
+ Multimap.prototype.hasValue = function (value) {
1640
+ var sets = Array.from(this.valuesByKey.values());
1641
+ return sets.some(function (set) {
1642
+ return set.has(value);
1643
+ });
1644
+ };
1645
+
1646
+ Multimap.prototype.getValuesForKey = function (key) {
1647
+ var values = this.valuesByKey.get(key);
1648
+ return values ? Array.from(values) : [];
1649
+ };
1650
+
1651
+ Multimap.prototype.getKeysForValue = function (value) {
1652
+ return Array.from(this.valuesByKey).filter(function (_a) {
1653
+ var key = _a[0],
1654
+ values = _a[1];
1655
+ return values.has(value);
1656
+ }).map(function (_a) {
1657
+ var key = _a[0],
1658
+ values = _a[1];
1659
+ return key;
1660
+ });
1661
+ };
1662
+
1663
+ return Multimap;
1664
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGltYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbXVsdGltYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQTtBQUUzQztJQUdFO1FBQ0UsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEdBQUcsRUFBYSxDQUFBO0lBQ3pDLENBQUM7SUFFRCxzQkFBSSw0QkFBTTthQUFWO1lBQ0UsSUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7WUFDbEQsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSyxPQUFBLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUE5QixDQUE4QixFQUFRLEVBQUUsQ0FBQyxDQUFBO1FBQy9FLENBQUM7OztPQUFBO0lBRUQsc0JBQUksMEJBQUk7YUFBUjtZQUNFLElBQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFBO1lBQ2xELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFDLElBQUksRUFBRSxHQUFHLElBQUssT0FBQSxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBZixDQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUE7UUFDdkQsQ0FBQzs7O09BQUE7SUFFRCxzQkFBRyxHQUFILFVBQUksR0FBTSxFQUFFLEtBQVE7UUFDbEIsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCx5QkFBTSxHQUFOLFVBQU8sR0FBTSxFQUFFLEtBQVE7UUFDckIsR0FBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ25DLENBQUM7SUFFRCxzQkFBRyxHQUFILFVBQUksR0FBTSxFQUFFLEtBQVE7UUFDbEIsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDeEMsT0FBTyxNQUFNLElBQUksSUFBSSxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDNUMsQ0FBQztJQUVELHlCQUFNLEdBQU4sVUFBTyxHQUFNO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUNsQyxDQUFDO0lBRUQsMkJBQVEsR0FBUixVQUFTLEtBQVE7UUFDZixJQUFNLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQTtRQUNsRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBQSxHQUFHLElBQUksT0FBQSxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFkLENBQWMsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFFRCxrQ0FBZSxHQUFmLFVBQWdCLEdBQU07UUFDcEIsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDeEMsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUN6QyxDQUFDO0lBRUQsa0NBQWUsR0FBZixVQUFnQixLQUFRO1FBQ3RCLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDO2FBQ2hDLE1BQU0sQ0FBQyxVQUFDLEVBQWE7Z0JBQVosV0FBRyxFQUFFLGNBQU07WUFBTSxPQUFBLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO1FBQWpCLENBQWlCLENBQUM7YUFDNUMsR0FBRyxDQUFDLFVBQUMsRUFBYTtnQkFBWixXQUFHLEVBQUUsY0FBTTtZQUFNLE9BQUEsR0FBRztRQUFILENBQUcsQ0FBQyxDQUFBO0lBQ2hDLENBQUM7SUFDSCxlQUFDO0FBQUQsQ0FBQyxBQWpERCxJQWlEQyJ9
1665
+
1666
+
1667
+ exports.Multimap = Multimap;
1668
+ },{"./set_operations":"../node_modules/@stimulus/multimap/dist/src/set_operations.js"}],"../node_modules/@stimulus/multimap/dist/src/indexed_multimap.js":[function(require,module,exports) {
1669
+ "use strict";
1670
+
1671
+ Object.defineProperty(exports, "__esModule", {
1672
+ value: true
1673
+ });
1674
+ exports.IndexedMultimap = void 0;
1675
+
1676
+ var _multimap = require("./multimap");
1677
+
1678
+ var _set_operations = require("./set_operations");
1679
+
1680
+ var __extends = void 0 && (void 0).__extends || function () {
1681
+ var extendStatics = Object.setPrototypeOf || {
1682
+ __proto__: []
1683
+ } instanceof Array && function (d, b) {
1684
+ d.__proto__ = b;
1685
+ } || function (d, b) {
1686
+ for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
1687
+ };
1688
+
1689
+ return function (d, b) {
1690
+ extendStatics(d, b);
1691
+
1692
+ function __() {
1693
+ this.constructor = d;
1694
+ }
1695
+
1696
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
1697
+ };
1698
+ }();
1699
+
1700
+ var IndexedMultimap =
1701
+ /** @class */
1702
+ function (_super) {
1703
+ __extends(IndexedMultimap, _super);
1704
+
1705
+ function IndexedMultimap() {
1706
+ var _this = _super.call(this) || this;
1707
+
1708
+ _this.keysByValue = new Map();
1709
+ return _this;
1710
+ }
1711
+
1712
+ Object.defineProperty(IndexedMultimap.prototype, "values", {
1713
+ get: function () {
1714
+ return Array.from(this.keysByValue.keys());
1715
+ },
1716
+ enumerable: true,
1717
+ configurable: true
1718
+ });
1719
+
1720
+ IndexedMultimap.prototype.add = function (key, value) {
1721
+ _super.prototype.add.call(this, key, value);
1722
+
1723
+ (0, _set_operations.add)(this.keysByValue, value, key);
1724
+ };
1725
+
1726
+ IndexedMultimap.prototype.delete = function (key, value) {
1727
+ _super.prototype.delete.call(this, key, value);
1728
+
1729
+ (0, _set_operations.del)(this.keysByValue, value, key);
1730
+ };
1731
+
1732
+ IndexedMultimap.prototype.hasValue = function (value) {
1733
+ return this.keysByValue.has(value);
1734
+ };
1735
+
1736
+ IndexedMultimap.prototype.getKeysForValue = function (value) {
1737
+ var set = this.keysByValue.get(value);
1738
+ return set ? Array.from(set) : [];
1739
+ };
1740
+
1741
+ return IndexedMultimap;
1742
+ }(_multimap.Multimap); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXhlZF9tdWx0aW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbmRleGVkX211bHRpbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3JDLE9BQU8sRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFFM0M7SUFBMkMsbUNBQWM7SUFHdkQ7UUFBQSxZQUNFLGlCQUFPLFNBRVI7UUFEQyxLQUFJLENBQUMsV0FBVyxHQUFHLElBQUksR0FBRyxDQUFBOztJQUM1QixDQUFDO0lBRUQsc0JBQUksbUNBQU07YUFBVjtZQUNFLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUE7UUFDNUMsQ0FBQzs7O09BQUE7SUFFRCw2QkFBRyxHQUFILFVBQUksR0FBTSxFQUFFLEtBQVE7UUFDbEIsaUJBQU0sR0FBRyxZQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsQ0FBQTtRQUNyQixHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7SUFDbkMsQ0FBQztJQUVELGdDQUFNLEdBQU4sVUFBTyxHQUFNLEVBQUUsS0FBUTtRQUNyQixpQkFBTSxNQUFNLFlBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3hCLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUNuQyxDQUFDO0lBRUQsa0NBQVEsR0FBUixVQUFTLEtBQVE7UUFDZixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCx5Q0FBZSxHQUFmLFVBQWdCLEtBQVE7UUFDdEIsSUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDdkMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQTtJQUNuQyxDQUFDO0lBQ0gsc0JBQUM7QUFBRCxDQUFDLEFBOUJELENBQTJDLFFBQVEsR0E4QmxEIn0=
1743
+
1744
+
1745
+ exports.IndexedMultimap = IndexedMultimap;
1746
+ },{"./multimap":"../node_modules/@stimulus/multimap/dist/src/multimap.js","./set_operations":"../node_modules/@stimulus/multimap/dist/src/set_operations.js"}],"../node_modules/@stimulus/multimap/dist/index.js":[function(require,module,exports) {
1747
+ "use strict";
1748
+
1749
+ Object.defineProperty(exports, "__esModule", {
1750
+ value: true
1751
+ });
1752
+
1753
+ var _multimap = require("./src/multimap");
1754
+
1755
+ Object.keys(_multimap).forEach(function (key) {
1756
+ if (key === "default" || key === "__esModule") return;
1757
+ Object.defineProperty(exports, key, {
1758
+ enumerable: true,
1759
+ get: function () {
1760
+ return _multimap[key];
1761
+ }
1762
+ });
1763
+ });
1764
+
1765
+ var _indexed_multimap = require("./src/indexed_multimap");
1766
+
1767
+ Object.keys(_indexed_multimap).forEach(function (key) {
1768
+ if (key === "default" || key === "__esModule") return;
1769
+ Object.defineProperty(exports, key, {
1770
+ enumerable: true,
1771
+ get: function () {
1772
+ return _indexed_multimap[key];
1773
+ }
1774
+ });
1775
+ });
1776
+ },{"./src/multimap":"../node_modules/@stimulus/multimap/dist/src/multimap.js","./src/indexed_multimap":"../node_modules/@stimulus/multimap/dist/src/indexed_multimap.js"}],"../node_modules/@stimulus/mutation-observers/dist/src/token_list_observer.js":[function(require,module,exports) {
1777
+ "use strict";
1778
+
1779
+ Object.defineProperty(exports, "__esModule", {
1780
+ value: true
1781
+ });
1782
+ exports.TokenListObserver = void 0;
1783
+
1784
+ var _attribute_observer = require("./attribute_observer");
1785
+
1786
+ var _multimap = require("@stimulus/multimap");
1787
+
1788
+ var TokenListObserver =
1789
+ /** @class */
1790
+ function () {
1791
+ function TokenListObserver(element, attributeName, delegate) {
1792
+ this.attributeObserver = new _attribute_observer.AttributeObserver(element, attributeName, this);
1793
+ this.delegate = delegate;
1794
+ this.tokensByElement = new _multimap.Multimap();
1795
+ }
1796
+
1797
+ Object.defineProperty(TokenListObserver.prototype, "started", {
1798
+ get: function () {
1799
+ return this.attributeObserver.started;
1800
+ },
1801
+ enumerable: true,
1802
+ configurable: true
1803
+ });
1804
+
1805
+ TokenListObserver.prototype.start = function () {
1806
+ this.attributeObserver.start();
1807
+ };
1808
+
1809
+ TokenListObserver.prototype.stop = function () {
1810
+ this.attributeObserver.stop();
1811
+ };
1812
+
1813
+ TokenListObserver.prototype.refresh = function () {
1814
+ this.attributeObserver.refresh();
1815
+ };
1816
+
1817
+ Object.defineProperty(TokenListObserver.prototype, "element", {
1818
+ get: function () {
1819
+ return this.attributeObserver.element;
1820
+ },
1821
+ enumerable: true,
1822
+ configurable: true
1823
+ });
1824
+ Object.defineProperty(TokenListObserver.prototype, "attributeName", {
1825
+ get: function () {
1826
+ return this.attributeObserver.attributeName;
1827
+ },
1828
+ enumerable: true,
1829
+ configurable: true
1830
+ }); // Attribute observer delegate
1831
+
1832
+ TokenListObserver.prototype.elementMatchedAttribute = function (element) {
1833
+ this.tokensMatched(this.readTokensForElement(element));
1834
+ };
1835
+
1836
+ TokenListObserver.prototype.elementAttributeValueChanged = function (element) {
1837
+ var _a = this.refreshTokensForElement(element),
1838
+ unmatchedTokens = _a[0],
1839
+ matchedTokens = _a[1];
1840
+
1841
+ this.tokensUnmatched(unmatchedTokens);
1842
+ this.tokensMatched(matchedTokens);
1843
+ };
1844
+
1845
+ TokenListObserver.prototype.elementUnmatchedAttribute = function (element) {
1846
+ this.tokensUnmatched(this.tokensByElement.getValuesForKey(element));
1847
+ };
1848
+
1849
+ TokenListObserver.prototype.tokensMatched = function (tokens) {
1850
+ var _this = this;
1851
+
1852
+ tokens.forEach(function (token) {
1853
+ return _this.tokenMatched(token);
1854
+ });
1855
+ };
1856
+
1857
+ TokenListObserver.prototype.tokensUnmatched = function (tokens) {
1858
+ var _this = this;
1859
+
1860
+ tokens.forEach(function (token) {
1861
+ return _this.tokenUnmatched(token);
1862
+ });
1863
+ };
1864
+
1865
+ TokenListObserver.prototype.tokenMatched = function (token) {
1866
+ this.delegate.tokenMatched(token);
1867
+ this.tokensByElement.add(token.element, token);
1868
+ };
1869
+
1870
+ TokenListObserver.prototype.tokenUnmatched = function (token) {
1871
+ this.delegate.tokenUnmatched(token);
1872
+ this.tokensByElement.delete(token.element, token);
1873
+ };
1874
+
1875
+ TokenListObserver.prototype.refreshTokensForElement = function (element) {
1876
+ var previousTokens = this.tokensByElement.getValuesForKey(element);
1877
+ var currentTokens = this.readTokensForElement(element);
1878
+ var firstDifferingIndex = zip(previousTokens, currentTokens).findIndex(function (_a) {
1879
+ var previousToken = _a[0],
1880
+ currentToken = _a[1];
1881
+ return !tokensAreEqual(previousToken, currentToken);
1882
+ });
1883
+
1884
+ if (firstDifferingIndex == -1) {
1885
+ return [[], []];
1886
+ } else {
1887
+ return [previousTokens.slice(firstDifferingIndex), currentTokens.slice(firstDifferingIndex)];
1888
+ }
1889
+ };
1890
+
1891
+ TokenListObserver.prototype.readTokensForElement = function (element) {
1892
+ var attributeName = this.attributeName;
1893
+ var tokenString = element.getAttribute(attributeName) || "";
1894
+ return parseTokenString(tokenString, element, attributeName);
1895
+ };
1896
+
1897
+ return TokenListObserver;
1898
+ }();
1899
+
1900
+ exports.TokenListObserver = TokenListObserver;
1901
+
1902
+ function parseTokenString(tokenString, element, attributeName) {
1903
+ return tokenString.trim().split(/\s+/).filter(function (content) {
1904
+ return content.length;
1905
+ }).map(function (content, index) {
1906
+ return {
1907
+ element: element,
1908
+ attributeName: attributeName,
1909
+ content: content,
1910
+ index: index
1911
+ };
1912
+ });
1913
+ }
1914
+
1915
+ function zip(left, right) {
1916
+ var length = Math.max(left.length, right.length);
1917
+ return Array.from({
1918
+ length: length
1919
+ }, function (_, index) {
1920
+ return [left[index], right[index]];
1921
+ });
1922
+ }
1923
+
1924
+ function tokensAreEqual(left, right) {
1925
+ return left && right && left.index == right.index && left.content == right.content;
1926
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9rZW5fbGlzdF9vYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90b2tlbl9saXN0X29ic2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBNkIsTUFBTSxzQkFBc0IsQ0FBQTtBQUNuRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sb0JBQW9CLENBQUE7QUFjN0M7SUFLRSwyQkFBWSxPQUFnQixFQUFFLGFBQXFCLEVBQUUsUUFBbUM7UUFDdEYsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksaUJBQWlCLENBQUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUM1RSxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksUUFBUSxDQUFBO0lBQ3JDLENBQUM7SUFFRCxzQkFBSSxzQ0FBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFBO1FBQ3ZDLENBQUM7OztPQUFBO0lBRUQsaUNBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsZ0NBQUksR0FBSjtRQUNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUMvQixDQUFDO0lBRUQsbUNBQU8sR0FBUDtRQUNFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUNsQyxDQUFDO0lBRUQsc0JBQUksc0NBQU87YUFBWDtZQUNFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQTtRQUN2QyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDRDQUFhO2FBQWpCO1lBQ0UsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFBO1FBQzdDLENBQUM7OztPQUFBO0lBRUQsOEJBQThCO0lB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
1927
+ },{"./attribute_observer":"../node_modules/@stimulus/mutation-observers/dist/src/attribute_observer.js","@stimulus/multimap":"../node_modules/@stimulus/multimap/dist/index.js"}],"../node_modules/@stimulus/mutation-observers/dist/src/value_list_observer.js":[function(require,module,exports) {
1928
+ "use strict";
1929
+
1930
+ Object.defineProperty(exports, "__esModule", {
1931
+ value: true
1932
+ });
1933
+ exports.ValueListObserver = void 0;
1934
+
1935
+ var _token_list_observer = require("./token_list_observer");
1936
+
1937
+ var ValueListObserver =
1938
+ /** @class */
1939
+ function () {
1940
+ function ValueListObserver(element, attributeName, delegate) {
1941
+ this.tokenListObserver = new _token_list_observer.TokenListObserver(element, attributeName, this);
1942
+ this.delegate = delegate;
1943
+ this.parseResultsByToken = new WeakMap();
1944
+ this.valuesByTokenByElement = new WeakMap();
1945
+ }
1946
+
1947
+ Object.defineProperty(ValueListObserver.prototype, "started", {
1948
+ get: function () {
1949
+ return this.tokenListObserver.started;
1950
+ },
1951
+ enumerable: true,
1952
+ configurable: true
1953
+ });
1954
+
1955
+ ValueListObserver.prototype.start = function () {
1956
+ this.tokenListObserver.start();
1957
+ };
1958
+
1959
+ ValueListObserver.prototype.stop = function () {
1960
+ this.tokenListObserver.stop();
1961
+ };
1962
+
1963
+ ValueListObserver.prototype.refresh = function () {
1964
+ this.tokenListObserver.refresh();
1965
+ };
1966
+
1967
+ Object.defineProperty(ValueListObserver.prototype, "element", {
1968
+ get: function () {
1969
+ return this.tokenListObserver.element;
1970
+ },
1971
+ enumerable: true,
1972
+ configurable: true
1973
+ });
1974
+ Object.defineProperty(ValueListObserver.prototype, "attributeName", {
1975
+ get: function () {
1976
+ return this.tokenListObserver.attributeName;
1977
+ },
1978
+ enumerable: true,
1979
+ configurable: true
1980
+ });
1981
+
1982
+ ValueListObserver.prototype.tokenMatched = function (token) {
1983
+ var element = token.element;
1984
+ var value = this.fetchParseResultForToken(token).value;
1985
+
1986
+ if (value) {
1987
+ this.fetchValuesByTokenForElement(element).set(token, value);
1988
+ this.delegate.elementMatchedValue(element, value);
1989
+ }
1990
+ };
1991
+
1992
+ ValueListObserver.prototype.tokenUnmatched = function (token) {
1993
+ var element = token.element;
1994
+ var value = this.fetchParseResultForToken(token).value;
1995
+
1996
+ if (value) {
1997
+ this.fetchValuesByTokenForElement(element).delete(token);
1998
+ this.delegate.elementUnmatchedValue(element, value);
1999
+ }
2000
+ };
2001
+
2002
+ ValueListObserver.prototype.fetchParseResultForToken = function (token) {
2003
+ var parseResult = this.parseResultsByToken.get(token);
2004
+
2005
+ if (!parseResult) {
2006
+ parseResult = this.parseToken(token);
2007
+ this.parseResultsByToken.set(token, parseResult);
2008
+ }
2009
+
2010
+ return parseResult;
2011
+ };
2012
+
2013
+ ValueListObserver.prototype.fetchValuesByTokenForElement = function (element) {
2014
+ var valuesByToken = this.valuesByTokenByElement.get(element);
2015
+
2016
+ if (!valuesByToken) {
2017
+ valuesByToken = new Map();
2018
+ this.valuesByTokenByElement.set(element, valuesByToken);
2019
+ }
2020
+
2021
+ return valuesByToken;
2022
+ };
2023
+
2024
+ ValueListObserver.prototype.parseToken = function (token) {
2025
+ try {
2026
+ var value = this.delegate.parseValueForToken(token);
2027
+ return {
2028
+ value: value
2029
+ };
2030
+ } catch (error) {
2031
+ return {
2032
+ error: error
2033
+ };
2034
+ }
2035
+ };
2036
+
2037
+ return ValueListObserver;
2038
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWVfbGlzdF9vYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy92YWx1ZV9saXN0X29ic2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUyxpQkFBaUIsRUFBNkIsTUFBTSx1QkFBdUIsQ0FBQTtBQWEzRjtJQU1FLDJCQUFZLE9BQWdCLEVBQUUsYUFBcUIsRUFBRSxRQUFzQztRQUN6RixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQzVFLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLE9BQU8sQ0FBQTtRQUN0QyxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxPQUFPLENBQUE7SUFDM0MsQ0FBQztJQUVELHNCQUFJLHNDQUFPO2FBQVg7WUFDRSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUE7UUFDdkMsQ0FBQzs7O09BQUE7SUFFRCxpQ0FBSyxHQUFMO1FBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRCxnQ0FBSSxHQUFKO1FBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFBO0lBQy9CLENBQUM7SUFFRCxtQ0FBTyxHQUFQO1FBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sRUFBRSxDQUFBO0lBQ2xDLENBQUM7SUFFRCxzQkFBSSxzQ0FBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFBO1FBQ3ZDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNENBQWE7YUFBakI7WUFDRSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLENBQUE7UUFDN0MsQ0FBQzs7O09BQUE7SUFFRCx3Q0FBWSxHQUFaLFVBQWEsS0FBWTtRQUNmLElBQUEsdUJBQU8sQ0FBVTtRQUNqQixJQUFBLGtEQUFLLENBQXlDO1FBQ3RELElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDNUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUE7U0FDbEQ7SUFDSCxDQUFDO0lBRUQsMENBQWMsR0FBZCxVQUFlLEtBQVk7UUFDakIsSUFBQSx1QkFBTyxDQUFVO1FBQ2pCLElBQUEsa0RBQUssQ0FBeUM7UUFDdEQsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsNEJBQTRCLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3hELElBQUksQ0FBQyxRQUFRLENBQUMscUJBQXFCLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFBO1NBQ3BEO0lBQ0gsQ0FBQztJQUVPLG9EQUF3QixHQUFoQyxVQUFpQyxLQUFZO1FBQzNDLElBQUksV0FBVyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDckQsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNoQixXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtZQUNwQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQTtTQUNqRDtRQUNELE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFFTyx3REFBNEIsR0FBcEMsVUFBcUMsT0FBZ0I7UUFDbkQsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUM1RCxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ2xCLGFBQWEsR0FBRyxJQUFJLEdBQUcsQ0FBQTtZQUN2QixJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQTtTQUN4RDtRQUNELE9BQU8sYUFBYSxDQUFBO0lBQ3RCLENBQUM7SUFFTyxzQ0FBVSxHQUFsQixVQUFtQixLQUFZO1FBQzdCLElBQUk7WUFDRixJQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3JELE9BQU8sRUFBRSxLQUFLLE9BQUEsRUFBRSxDQUFBO1NBQ2pCO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxPQUFPLEVBQUUsS0FBSyxPQUFBLEVBQUUsQ0FBQTtTQUNqQjtJQUNILENBQUM7SUFDSCx3QkFBQztBQUFELENBQUMsQUFqRkQsSUFpRkMifQ==
2039
+
2040
+
2041
+ exports.ValueListObserver = ValueListObserver;
2042
+ },{"./token_list_observer":"../node_modules/@stimulus/mutation-observers/dist/src/token_list_observer.js"}],"../node_modules/@stimulus/mutation-observers/dist/index.js":[function(require,module,exports) {
2043
+ "use strict";
2044
+
2045
+ Object.defineProperty(exports, "__esModule", {
2046
+ value: true
2047
+ });
2048
+
2049
+ var _attribute_observer = require("./src/attribute_observer");
2050
+
2051
+ Object.keys(_attribute_observer).forEach(function (key) {
2052
+ if (key === "default" || key === "__esModule") return;
2053
+ Object.defineProperty(exports, key, {
2054
+ enumerable: true,
2055
+ get: function () {
2056
+ return _attribute_observer[key];
2057
+ }
2058
+ });
2059
+ });
2060
+
2061
+ var _element_observer = require("./src/element_observer");
2062
+
2063
+ Object.keys(_element_observer).forEach(function (key) {
2064
+ if (key === "default" || key === "__esModule") return;
2065
+ Object.defineProperty(exports, key, {
2066
+ enumerable: true,
2067
+ get: function () {
2068
+ return _element_observer[key];
2069
+ }
2070
+ });
2071
+ });
2072
+
2073
+ var _token_list_observer = require("./src/token_list_observer");
2074
+
2075
+ Object.keys(_token_list_observer).forEach(function (key) {
2076
+ if (key === "default" || key === "__esModule") return;
2077
+ Object.defineProperty(exports, key, {
2078
+ enumerable: true,
2079
+ get: function () {
2080
+ return _token_list_observer[key];
2081
+ }
2082
+ });
2083
+ });
2084
+
2085
+ var _value_list_observer = require("./src/value_list_observer");
2086
+
2087
+ Object.keys(_value_list_observer).forEach(function (key) {
2088
+ if (key === "default" || key === "__esModule") return;
2089
+ Object.defineProperty(exports, key, {
2090
+ enumerable: true,
2091
+ get: function () {
2092
+ return _value_list_observer[key];
2093
+ }
2094
+ });
2095
+ });
2096
+ },{"./src/attribute_observer":"../node_modules/@stimulus/mutation-observers/dist/src/attribute_observer.js","./src/element_observer":"../node_modules/@stimulus/mutation-observers/dist/src/element_observer.js","./src/token_list_observer":"../node_modules/@stimulus/mutation-observers/dist/src/token_list_observer.js","./src/value_list_observer":"../node_modules/@stimulus/mutation-observers/dist/src/value_list_observer.js"}],"../node_modules/@stimulus/core/dist/src/binding_observer.js":[function(require,module,exports) {
2097
+ "use strict";
2098
+
2099
+ Object.defineProperty(exports, "__esModule", {
2100
+ value: true
2101
+ });
2102
+ exports.BindingObserver = void 0;
2103
+
2104
+ var _action = require("./action");
2105
+
2106
+ var _binding = require("./binding");
2107
+
2108
+ var _mutationObservers = require("@stimulus/mutation-observers");
2109
+
2110
+ var BindingObserver =
2111
+ /** @class */
2112
+ function () {
2113
+ function BindingObserver(context, delegate) {
2114
+ this.context = context;
2115
+ this.delegate = delegate;
2116
+ this.bindingsByAction = new Map();
2117
+ }
2118
+
2119
+ BindingObserver.prototype.start = function () {
2120
+ if (!this.valueListObserver) {
2121
+ this.valueListObserver = new _mutationObservers.ValueListObserver(this.element, this.actionAttribute, this);
2122
+ this.valueListObserver.start();
2123
+ }
2124
+ };
2125
+
2126
+ BindingObserver.prototype.stop = function () {
2127
+ if (this.valueListObserver) {
2128
+ this.valueListObserver.stop();
2129
+ delete this.valueListObserver;
2130
+ this.disconnectAllActions();
2131
+ }
2132
+ };
2133
+
2134
+ Object.defineProperty(BindingObserver.prototype, "element", {
2135
+ get: function () {
2136
+ return this.context.element;
2137
+ },
2138
+ enumerable: true,
2139
+ configurable: true
2140
+ });
2141
+ Object.defineProperty(BindingObserver.prototype, "identifier", {
2142
+ get: function () {
2143
+ return this.context.identifier;
2144
+ },
2145
+ enumerable: true,
2146
+ configurable: true
2147
+ });
2148
+ Object.defineProperty(BindingObserver.prototype, "actionAttribute", {
2149
+ get: function () {
2150
+ return this.schema.actionAttribute;
2151
+ },
2152
+ enumerable: true,
2153
+ configurable: true
2154
+ });
2155
+ Object.defineProperty(BindingObserver.prototype, "schema", {
2156
+ get: function () {
2157
+ return this.context.schema;
2158
+ },
2159
+ enumerable: true,
2160
+ configurable: true
2161
+ });
2162
+ Object.defineProperty(BindingObserver.prototype, "bindings", {
2163
+ get: function () {
2164
+ return Array.from(this.bindingsByAction.values());
2165
+ },
2166
+ enumerable: true,
2167
+ configurable: true
2168
+ });
2169
+
2170
+ BindingObserver.prototype.connectAction = function (action) {
2171
+ var binding = new _binding.Binding(this.context, action);
2172
+ this.bindingsByAction.set(action, binding);
2173
+ this.delegate.bindingConnected(binding);
2174
+ };
2175
+
2176
+ BindingObserver.prototype.disconnectAction = function (action) {
2177
+ var binding = this.bindingsByAction.get(action);
2178
+
2179
+ if (binding) {
2180
+ this.bindingsByAction.delete(action);
2181
+ this.delegate.bindingDisconnected(binding);
2182
+ }
2183
+ };
2184
+
2185
+ BindingObserver.prototype.disconnectAllActions = function () {
2186
+ var _this = this;
2187
+
2188
+ this.bindings.forEach(function (binding) {
2189
+ return _this.delegate.bindingDisconnected(binding);
2190
+ });
2191
+ this.bindingsByAction.clear();
2192
+ }; // Value observer delegate
2193
+
2194
+
2195
+ BindingObserver.prototype.parseValueForToken = function (token) {
2196
+ var action = _action.Action.forToken(token);
2197
+
2198
+ if (action.identifier == this.identifier) {
2199
+ return action;
2200
+ }
2201
+ };
2202
+
2203
+ BindingObserver.prototype.elementMatchedValue = function (element, action) {
2204
+ this.connectAction(action);
2205
+ };
2206
+
2207
+ BindingObserver.prototype.elementUnmatchedValue = function (element, action) {
2208
+ this.disconnectAction(action);
2209
+ };
2210
+
2211
+ return BindingObserver;
2212
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmluZGluZ19vYnNlcnZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iaW5kaW5nX29ic2VydmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDakMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFdBQVcsQ0FBQTtBQUluQyxPQUFPLEVBQVMsaUJBQWlCLEVBQTZCLE1BQU0sOEJBQThCLENBQUE7QUFPbEc7SUFNRSx5QkFBWSxPQUFnQixFQUFFLFFBQWlDO1FBQzdELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFBO1FBQ3hCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLEdBQUcsQ0FBQTtJQUNqQyxDQUFDO0lBRUQsK0JBQUssR0FBTDtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFBO1lBQ3hGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtTQUMvQjtJQUNILENBQUM7SUFFRCw4QkFBSSxHQUFKO1FBQ0UsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFBO1lBQzdCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFBO1lBQzdCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFBO1NBQzVCO0lBQ0gsQ0FBQztJQUVELHNCQUFJLG9DQUFPO2FBQVg7WUFDRSxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFBO1FBQzdCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksdUNBQVU7YUFBZDtZQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUE7UUFDaEMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0Q0FBZTthQUFuQjtZQUNFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUE7UUFDcEMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxtQ0FBTTthQUFWO1lBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQTtRQUM1QixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHFDQUFRO2FBQVo7WUFDRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFDbkQsQ0FBQzs7O09BQUE7SUFFTyx1Q0FBYSxHQUFyQixVQUFzQixNQUFjO1FBQ2xDLElBQU0sT0FBTyxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDakQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUE7UUFDMUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRU8sMENBQWdCLEdBQXhCLFVBQXlCLE1BQWM7UUFDckMsSUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNqRCxJQUFJLE9BQU8sRUFBRTtZQUNYLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDcEMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQTtTQUMzQztJQUNILENBQUM7SUFFTyw4Q0FBb0IsR0FBNUI7UUFBQSxpQkFHQztRQUZDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFVBQUEsT0FBTyxJQUFJLE9BQUEsS0FBSSxDQUFDLFFBQVEsQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsRUFBMUMsQ0FBMEMsQ0FBQyxDQUFBO1FBQzVFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUMvQixDQUFDO0lBRUQsMEJBQTBCO0lBRTFCLDRDQUFrQixHQUFsQixVQUFtQixLQUFZO1FBQzdCLElBQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDckMsSUFBSSxNQUFNLENBQUMsVUFBVSxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDeEMsT0FBTyxNQUFNLENBQUE7U0FDZDtJQUNILENBQUM7SUFFRCw2Q0FBbUIsR0FBbkIsVUFBb0IsT0FBZ0IsRUFBRSxNQUFjO1FBQ2xELElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDNUIsQ0FBQztJQUVELCtDQUFxQixHQUFyQixVQUFzQixPQUFnQixFQUFFLE1BQWM7UUFDcEQsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFDSCxzQkFBQztBQUFELENBQUMsQUFsRkQsSUFrRkMifQ==
2213
+
2214
+
2215
+ exports.BindingObserver = BindingObserver;
2216
+ },{"./action":"../node_modules/@stimulus/core/dist/src/action.js","./binding":"../node_modules/@stimulus/core/dist/src/binding.js","@stimulus/mutation-observers":"../node_modules/@stimulus/mutation-observers/dist/index.js"}],"../node_modules/@stimulus/core/dist/src/context.js":[function(require,module,exports) {
2217
+ "use strict";
2218
+
2219
+ Object.defineProperty(exports, "__esModule", {
2220
+ value: true
2221
+ });
2222
+ exports.Context = void 0;
2223
+
2224
+ var _binding_observer = require("./binding_observer");
2225
+
2226
+ var Context =
2227
+ /** @class */
2228
+ function () {
2229
+ function Context(module, scope) {
2230
+ this.module = module;
2231
+ this.scope = scope;
2232
+ this.controller = new module.controllerConstructor(this);
2233
+ this.bindingObserver = new _binding_observer.BindingObserver(this, this.dispatcher);
2234
+
2235
+ try {
2236
+ this.controller.initialize();
2237
+ } catch (error) {
2238
+ this.handleError(error, "initializing controller");
2239
+ }
2240
+ }
2241
+
2242
+ Context.prototype.connect = function () {
2243
+ this.bindingObserver.start();
2244
+
2245
+ try {
2246
+ this.controller.connect();
2247
+ } catch (error) {
2248
+ this.handleError(error, "connecting controller");
2249
+ }
2250
+ };
2251
+
2252
+ Context.prototype.disconnect = function () {
2253
+ try {
2254
+ this.controller.disconnect();
2255
+ } catch (error) {
2256
+ this.handleError(error, "disconnecting controller");
2257
+ }
2258
+
2259
+ this.bindingObserver.stop();
2260
+ };
2261
+
2262
+ Object.defineProperty(Context.prototype, "application", {
2263
+ get: function () {
2264
+ return this.module.application;
2265
+ },
2266
+ enumerable: true,
2267
+ configurable: true
2268
+ });
2269
+ Object.defineProperty(Context.prototype, "identifier", {
2270
+ get: function () {
2271
+ return this.module.identifier;
2272
+ },
2273
+ enumerable: true,
2274
+ configurable: true
2275
+ });
2276
+ Object.defineProperty(Context.prototype, "schema", {
2277
+ get: function () {
2278
+ return this.application.schema;
2279
+ },
2280
+ enumerable: true,
2281
+ configurable: true
2282
+ });
2283
+ Object.defineProperty(Context.prototype, "dispatcher", {
2284
+ get: function () {
2285
+ return this.application.dispatcher;
2286
+ },
2287
+ enumerable: true,
2288
+ configurable: true
2289
+ });
2290
+ Object.defineProperty(Context.prototype, "element", {
2291
+ get: function () {
2292
+ return this.scope.element;
2293
+ },
2294
+ enumerable: true,
2295
+ configurable: true
2296
+ });
2297
+ Object.defineProperty(Context.prototype, "parentElement", {
2298
+ get: function () {
2299
+ return this.element.parentElement;
2300
+ },
2301
+ enumerable: true,
2302
+ configurable: true
2303
+ }); // Error handling
2304
+
2305
+ Context.prototype.handleError = function (error, message, detail) {
2306
+ if (detail === void 0) {
2307
+ detail = {};
2308
+ }
2309
+
2310
+ var _a = this,
2311
+ identifier = _a.identifier,
2312
+ controller = _a.controller,
2313
+ element = _a.element;
2314
+
2315
+ detail = Object.assign({
2316
+ identifier: identifier,
2317
+ controller: controller,
2318
+ element: element
2319
+ }, detail);
2320
+ this.application.handleError(error, "Error " + message, detail);
2321
+ };
2322
+
2323
+ return Context;
2324
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQVFwRDtJQU1FLGlCQUFZLE1BQWMsRUFBRSxLQUFZO1FBQ3RDLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxNQUFNLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBRWpFLElBQUk7WUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxDQUFBO1NBQzdCO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSx5QkFBeUIsQ0FBQyxDQUFBO1NBQ25EO0lBQ0gsQ0FBQztJQUVELHlCQUFPLEdBQVA7UUFDRSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxDQUFBO1FBRTVCLElBQUk7WUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sRUFBRSxDQUFBO1NBQzFCO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSx1QkFBdUIsQ0FBQyxDQUFBO1NBQ2pEO0lBQ0gsQ0FBQztJQUVELDRCQUFVLEdBQVY7UUFDRSxJQUFJO1lBQ0YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEVBQUUsQ0FBQTtTQUM3QjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsMEJBQTBCLENBQUMsQ0FBQTtTQUNwRDtRQUVELElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDN0IsQ0FBQztJQUVELHNCQUFJLGdDQUFXO2FBQWY7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFBO1FBQ2hDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksK0JBQVU7YUFBZDtZQUNFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUE7UUFDL0IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSwyQkFBTTthQUFWO1lBQ0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQTtRQUNoQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLCtCQUFVO2FBQWQ7WUFDRSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFBO1FBQ3BDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksNEJBQU87YUFBWDtZQUNFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUE7UUFDM0IsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSxrQ0FBYTthQUFqQjtZQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUE7UUFDbkMsQ0FBQzs7O09BQUE7SUFFRCxpQkFBaUI7SUFFakIsNkJBQVcsR0FBWCxVQUFZLEtBQVksRUFBRSxPQUFlLEVBQUUsTUFBbUI7UUFBbkIsdUJBQUEsRUFBQSxXQUFtQjtRQUN0RCxJQUFBLFNBQTBDLEVBQXhDLDBCQUFVLEVBQUUsMEJBQVUsRUFBRSxvQkFBTyxDQUFTO1FBQ2hELE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsVUFBVSxZQUFBLEVBQUUsVUFBVSxZQUFBLEVBQUUsT0FBTyxTQUFBLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQTtRQUNuRSxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsV0FBUyxPQUFTLEVBQUUsTUFBTSxDQUFDLENBQUE7SUFDakUsQ0FBQztJQUNILGNBQUM7QUFBRCxDQUFDLEFBdEVELElBc0VDIn0=
2325
+
2326
+
2327
+ exports.Context = Context;
2328
+ },{"./binding_observer":"../node_modules/@stimulus/core/dist/src/binding_observer.js"}],"../node_modules/@stimulus/core/dist/src/definition.js":[function(require,module,exports) {
2329
+ "use strict";
2330
+
2331
+ Object.defineProperty(exports, "__esModule", {
2332
+ value: true
2333
+ });
2334
+ exports.blessDefinition = blessDefinition;
2335
+
2336
+ var __extends = void 0 && (void 0).__extends || function () {
2337
+ var extendStatics = Object.setPrototypeOf || {
2338
+ __proto__: []
2339
+ } instanceof Array && function (d, b) {
2340
+ d.__proto__ = b;
2341
+ } || function (d, b) {
2342
+ for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];
2343
+ };
2344
+
2345
+ return function (d, b) {
2346
+ extendStatics(d, b);
2347
+
2348
+ function __() {
2349
+ this.constructor = d;
2350
+ }
2351
+
2352
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
2353
+ };
2354
+ }();
2355
+ /** @hidden */
2356
+
2357
+
2358
+ function blessDefinition(definition) {
2359
+ return {
2360
+ identifier: definition.identifier,
2361
+ controllerConstructor: blessControllerConstructor(definition.controllerConstructor)
2362
+ };
2363
+ }
2364
+
2365
+ function blessControllerConstructor(controllerConstructor) {
2366
+ var constructor = extend(controllerConstructor);
2367
+ constructor.bless();
2368
+ return constructor;
2369
+ }
2370
+
2371
+ var extend = function () {
2372
+ function extendWithReflect(constructor) {
2373
+ function Controller() {
2374
+ var _newTarget = this && this instanceof Controller ? this.constructor : void 0;
2375
+
2376
+ return Reflect.construct(constructor, arguments, _newTarget);
2377
+ }
2378
+
2379
+ Controller.prototype = Object.create(constructor.prototype, {
2380
+ constructor: {
2381
+ value: Controller
2382
+ }
2383
+ });
2384
+ Reflect.setPrototypeOf(Controller, constructor);
2385
+ return Controller;
2386
+ }
2387
+
2388
+ function testReflectExtension() {
2389
+ var a = function () {
2390
+ this.a.call(this);
2391
+ };
2392
+
2393
+ var b = extendWithReflect(a);
2394
+
2395
+ b.prototype.a = function () {};
2396
+
2397
+ return new b();
2398
+ }
2399
+
2400
+ try {
2401
+ testReflectExtension();
2402
+ return extendWithReflect;
2403
+ } catch (error) {
2404
+ return function (constructor) {
2405
+ return (
2406
+ /** @class */
2407
+ function (_super) {
2408
+ __extends(Controller, _super);
2409
+
2410
+ function Controller() {
2411
+ return _super !== null && _super.apply(this, arguments) || this;
2412
+ }
2413
+
2414
+ return Controller;
2415
+ }(constructor)
2416
+ );
2417
+ };
2418
+ }
2419
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmaW5pdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kZWZpbml0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7QUFPQSxjQUFjO0FBQ2QsTUFBTSwwQkFBMEIsVUFBc0I7SUFDcEQsT0FBTztRQUNMLFVBQVUsRUFBRSxVQUFVLENBQUMsVUFBVTtRQUNqQyxxQkFBcUIsRUFBRSwwQkFBMEIsQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUM7S0FDcEYsQ0FBQTtBQUNILENBQUM7QUFFRCxvQ0FBb0MscUJBQTRDO0lBQzlFLElBQU0sV0FBVyxHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFBO0lBQ2pELFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQTtJQUNuQixPQUFPLFdBQVcsQ0FBQTtBQUNwQixDQUFDO0FBRUQsSUFBTSxNQUFNLEdBQUcsQ0FBQztJQUdkLDJCQUFzRCxXQUFjO1FBQ2xFOztZQUNFLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsU0FBUyxhQUFhLENBQUE7UUFDOUQsQ0FBQztRQUVELFVBQVUsQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFO1lBQzFELFdBQVcsRUFBRSxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUU7U0FDbkMsQ0FBQyxDQUFBO1FBRUYsT0FBTyxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUE7UUFDL0MsT0FBTyxVQUFpQixDQUFBO0lBQzFCLENBQUM7SUFFRDtRQUNFLElBQU0sQ0FBQyxHQUFHLGNBQXNCLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBLENBQUMsQ0FBUSxDQUFBO1FBQzFELElBQU0sQ0FBQyxHQUFHLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQzlCLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLGNBQVksQ0FBQyxDQUFBO1FBQzdCLE9BQU8sSUFBSSxDQUFDLENBQUE7SUFDZCxDQUFDO0lBRUQsSUFBSTtRQUNGLG9CQUFvQixFQUFFLENBQUE7UUFDdEIsT0FBTyxpQkFBaUIsQ0FBQTtLQUN6QjtJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsT0FBTyxVQUE0QixXQUFjLElBQUs7WUFBeUIsOEJBQVc7WUFBcEM7O1lBQXNDLENBQUM7WUFBRCxpQkFBQztRQUFELENBQUMsQUFBdkMsQ0FBeUIsV0FBVyxJQUFwQyxDQUF1QyxDQUFBO0tBQzlGO0FBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQSJ9
2420
+ },{}],"../node_modules/@stimulus/core/dist/src/module.js":[function(require,module,exports) {
2421
+ "use strict";
2422
+
2423
+ Object.defineProperty(exports, "__esModule", {
2424
+ value: true
2425
+ });
2426
+ exports.Module = void 0;
2427
+
2428
+ var _context = require("./context");
2429
+
2430
+ var _definition = require("./definition");
2431
+
2432
+ var Module =
2433
+ /** @class */
2434
+ function () {
2435
+ function Module(application, definition) {
2436
+ this.application = application;
2437
+ this.definition = (0, _definition.blessDefinition)(definition);
2438
+ this.contextsByScope = new WeakMap();
2439
+ this.connectedContexts = new Set();
2440
+ }
2441
+
2442
+ Object.defineProperty(Module.prototype, "identifier", {
2443
+ get: function () {
2444
+ return this.definition.identifier;
2445
+ },
2446
+ enumerable: true,
2447
+ configurable: true
2448
+ });
2449
+ Object.defineProperty(Module.prototype, "controllerConstructor", {
2450
+ get: function () {
2451
+ return this.definition.controllerConstructor;
2452
+ },
2453
+ enumerable: true,
2454
+ configurable: true
2455
+ });
2456
+ Object.defineProperty(Module.prototype, "contexts", {
2457
+ get: function () {
2458
+ return Array.from(this.connectedContexts);
2459
+ },
2460
+ enumerable: true,
2461
+ configurable: true
2462
+ });
2463
+
2464
+ Module.prototype.connectContextForScope = function (scope) {
2465
+ var context = this.fetchContextForScope(scope);
2466
+ this.connectedContexts.add(context);
2467
+ context.connect();
2468
+ };
2469
+
2470
+ Module.prototype.disconnectContextForScope = function (scope) {
2471
+ var context = this.contextsByScope.get(scope);
2472
+
2473
+ if (context) {
2474
+ this.connectedContexts.delete(context);
2475
+ context.disconnect();
2476
+ }
2477
+ };
2478
+
2479
+ Module.prototype.fetchContextForScope = function (scope) {
2480
+ var context = this.contextsByScope.get(scope);
2481
+
2482
+ if (!context) {
2483
+ context = new _context.Context(this, scope);
2484
+ this.contextsByScope.set(scope, context);
2485
+ }
2486
+
2487
+ return context;
2488
+ };
2489
+
2490
+ return Module;
2491
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFBO0FBRW5DLE9BQU8sRUFBYyxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUE7QUFHMUQ7SUFNRSxnQkFBWSxXQUF3QixFQUFFLFVBQXNCO1FBQzFELElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFBO1FBQzlCLElBQUksQ0FBQyxVQUFVLEdBQUcsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFBO1FBQzdDLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxPQUFPLENBQUE7UUFDbEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksR0FBRyxDQUFBO0lBQ2xDLENBQUM7SUFFRCxzQkFBSSw4QkFBVTthQUFkO1lBQ0UsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQTtRQUNuQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHlDQUFxQjthQUF6QjtZQUNFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxxQkFBcUIsQ0FBQTtRQUM5QyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDRCQUFRO2FBQVo7WUFDRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFDM0MsQ0FBQzs7O09BQUE7SUFFRCx1Q0FBc0IsR0FBdEIsVUFBdUIsS0FBWTtRQUNqQyxJQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEQsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUNuQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUVELDBDQUF5QixHQUF6QixVQUEwQixLQUFZO1FBQ3BDLElBQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQy9DLElBQUksT0FBTyxFQUFFO1lBQ1gsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQTtZQUN0QyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUE7U0FDckI7SUFDSCxDQUFDO0lBRU8scUNBQW9CLEdBQTVCLFVBQTZCLEtBQVk7UUFDdkMsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDN0MsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNaLE9BQU8sR0FBRyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDbEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFBO1NBQ3pDO1FBQ0QsT0FBTyxPQUFPLENBQUE7SUFDaEIsQ0FBQztJQUNILGFBQUM7QUFBRCxDQUFDLEFBL0NELElBK0NDIn0=
2492
+
2493
+
2494
+ exports.Module = Module;
2495
+ },{"./context":"../node_modules/@stimulus/core/dist/src/context.js","./definition":"../node_modules/@stimulus/core/dist/src/definition.js"}],"../node_modules/@stimulus/core/dist/src/data_map.js":[function(require,module,exports) {
2496
+ "use strict";
2497
+
2498
+ Object.defineProperty(exports, "__esModule", {
2499
+ value: true
2500
+ });
2501
+ exports.DataMap = void 0;
2502
+
2503
+ var DataMap =
2504
+ /** @class */
2505
+ function () {
2506
+ function DataMap(scope) {
2507
+ this.scope = scope;
2508
+ }
2509
+
2510
+ Object.defineProperty(DataMap.prototype, "element", {
2511
+ get: function () {
2512
+ return this.scope.element;
2513
+ },
2514
+ enumerable: true,
2515
+ configurable: true
2516
+ });
2517
+ Object.defineProperty(DataMap.prototype, "identifier", {
2518
+ get: function () {
2519
+ return this.scope.identifier;
2520
+ },
2521
+ enumerable: true,
2522
+ configurable: true
2523
+ });
2524
+
2525
+ DataMap.prototype.get = function (key) {
2526
+ key = this.getFormattedKey(key);
2527
+ return this.element.getAttribute(key);
2528
+ };
2529
+
2530
+ DataMap.prototype.set = function (key, value) {
2531
+ key = this.getFormattedKey(key);
2532
+ this.element.setAttribute(key, value);
2533
+ return this.get(key);
2534
+ };
2535
+
2536
+ DataMap.prototype.has = function (key) {
2537
+ key = this.getFormattedKey(key);
2538
+ return this.element.hasAttribute(key);
2539
+ };
2540
+
2541
+ DataMap.prototype.delete = function (key) {
2542
+ if (this.has(key)) {
2543
+ key = this.getFormattedKey(key);
2544
+ this.element.removeAttribute(key);
2545
+ return true;
2546
+ } else {
2547
+ return false;
2548
+ }
2549
+ };
2550
+
2551
+ DataMap.prototype.getFormattedKey = function (key) {
2552
+ return "data-" + this.identifier + "-" + dasherize(key);
2553
+ };
2554
+
2555
+ return DataMap;
2556
+ }();
2557
+
2558
+ exports.DataMap = DataMap;
2559
+
2560
+ function dasherize(value) {
2561
+ return value.replace(/([A-Z])/g, function (_, char) {
2562
+ return "-" + char.toLowerCase();
2563
+ });
2564
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YV9tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YV9tYXAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUE7SUFHRSxpQkFBWSxLQUFZO1FBQ3RCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFBO0lBQ3BCLENBQUM7SUFFRCxzQkFBSSw0QkFBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQTtRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLCtCQUFVO2FBQWQ7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFBO1FBQzlCLENBQUM7OztPQUFBO0lBRUQscUJBQUcsR0FBSCxVQUFJLEdBQVc7UUFDYixHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7SUFFRCxxQkFBRyxHQUFILFVBQUksR0FBVyxFQUFFLEtBQWE7UUFDNUIsR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3JDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUN0QixDQUFDO0lBRUQscUJBQUcsR0FBSCxVQUFJLEdBQVc7UUFDYixHQUFHLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUMvQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFBO0lBQ3ZDLENBQUM7SUFFRCx3QkFBTSxHQUFOLFVBQU8sR0FBVztRQUNoQixJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakIsR0FBRyxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLENBQUE7WUFDakMsT0FBTyxJQUFJLENBQUE7U0FDWjthQUFNO1lBQ0wsT0FBTyxLQUFLLENBQUE7U0FDYjtJQUNILENBQUM7SUFFTyxpQ0FBZSxHQUF2QixVQUF3QixHQUFXO1FBQ2pDLE9BQU8sVUFBUSxJQUFJLENBQUMsVUFBVSxTQUFJLFNBQVMsQ0FBQyxHQUFHLENBQUcsQ0FBQTtJQUNwRCxDQUFDO0lBQ0gsY0FBQztBQUFELENBQUMsQUE1Q0QsSUE0Q0M7O0FBRUQsbUJBQW1CLEtBQWE7SUFDOUIsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxVQUFDLENBQUMsRUFBRSxJQUFJLElBQUssT0FBQSxNQUFJLElBQUksQ0FBQyxXQUFXLEVBQUksRUFBeEIsQ0FBd0IsQ0FBQyxDQUFBO0FBQ3pFLENBQUMifQ==
2565
+ },{}],"../node_modules/@stimulus/core/dist/src/selectors.js":[function(require,module,exports) {
2566
+ "use strict";
2567
+
2568
+ Object.defineProperty(exports, "__esModule", {
2569
+ value: true
2570
+ });
2571
+ exports.attributeValueContainsToken = attributeValueContainsToken;
2572
+
2573
+ /** @hidden */
2574
+ function attributeValueContainsToken(attributeName, token) {
2575
+ return "[" + attributeName + "~=\"" + token + "\"]";
2576
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0b3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlbGVjdG9ycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjO0FBQ2QsTUFBTSxzQ0FBc0MsYUFBcUIsRUFBRSxLQUFhO0lBQzlFLE9BQU8sTUFBSSxhQUFhLFlBQU0sS0FBSyxRQUFJLENBQUE7QUFDekMsQ0FBQyJ9
2577
+ },{}],"../node_modules/@stimulus/core/dist/src/target_set.js":[function(require,module,exports) {
2578
+ "use strict";
2579
+
2580
+ Object.defineProperty(exports, "__esModule", {
2581
+ value: true
2582
+ });
2583
+ exports.TargetSet = void 0;
2584
+
2585
+ var _selectors = require("./selectors");
2586
+
2587
+ var TargetSet =
2588
+ /** @class */
2589
+ function () {
2590
+ function TargetSet(scope) {
2591
+ this.scope = scope;
2592
+ }
2593
+
2594
+ Object.defineProperty(TargetSet.prototype, "element", {
2595
+ get: function () {
2596
+ return this.scope.element;
2597
+ },
2598
+ enumerable: true,
2599
+ configurable: true
2600
+ });
2601
+ Object.defineProperty(TargetSet.prototype, "identifier", {
2602
+ get: function () {
2603
+ return this.scope.identifier;
2604
+ },
2605
+ enumerable: true,
2606
+ configurable: true
2607
+ });
2608
+ Object.defineProperty(TargetSet.prototype, "schema", {
2609
+ get: function () {
2610
+ return this.scope.schema;
2611
+ },
2612
+ enumerable: true,
2613
+ configurable: true
2614
+ });
2615
+
2616
+ TargetSet.prototype.has = function (targetName) {
2617
+ return this.find(targetName) != null;
2618
+ };
2619
+
2620
+ TargetSet.prototype.find = function () {
2621
+ var targetNames = [];
2622
+
2623
+ for (var _i = 0; _i < arguments.length; _i++) {
2624
+ targetNames[_i] = arguments[_i];
2625
+ }
2626
+
2627
+ var selector = this.getSelectorForTargetNames(targetNames);
2628
+ return this.scope.findElement(selector);
2629
+ };
2630
+
2631
+ TargetSet.prototype.findAll = function () {
2632
+ var targetNames = [];
2633
+
2634
+ for (var _i = 0; _i < arguments.length; _i++) {
2635
+ targetNames[_i] = arguments[_i];
2636
+ }
2637
+
2638
+ var selector = this.getSelectorForTargetNames(targetNames);
2639
+ return this.scope.findAllElements(selector);
2640
+ };
2641
+
2642
+ TargetSet.prototype.getSelectorForTargetNames = function (targetNames) {
2643
+ var _this = this;
2644
+
2645
+ return targetNames.map(function (targetName) {
2646
+ return _this.getSelectorForTargetName(targetName);
2647
+ }).join(", ");
2648
+ };
2649
+
2650
+ TargetSet.prototype.getSelectorForTargetName = function (targetName) {
2651
+ var targetDescriptor = this.identifier + "." + targetName;
2652
+ return (0, _selectors.attributeValueContainsToken)(this.schema.targetAttribute, targetDescriptor);
2653
+ };
2654
+
2655
+ return TargetSet;
2656
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFyZ2V0X3NldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90YXJnZXRfc2V0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6RDtJQUdFLG1CQUFZLEtBQVk7UUFDdEIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUE7SUFDcEIsQ0FBQztJQUVELHNCQUFJLDhCQUFPO2FBQVg7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFBO1FBQzNCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksaUNBQVU7YUFBZDtZQUNFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUE7UUFDOUIsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2QkFBTTthQUFWO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQTtRQUMxQixDQUFDOzs7T0FBQTtJQUVELHVCQUFHLEdBQUgsVUFBSSxVQUFrQjtRQUNwQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFBO0lBQ3RDLENBQUM7SUFFRCx3QkFBSSxHQUFKO1FBQUsscUJBQXdCO2FBQXhCLFVBQXdCLEVBQXhCLHFCQUF3QixFQUF4QixJQUF3QjtZQUF4QixnQ0FBd0I7O1FBQzNCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUM1RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ3pDLENBQUM7SUFFRCwyQkFBTyxHQUFQO1FBQVEscUJBQXdCO2FBQXhCLFVBQXdCLEVBQXhCLHFCQUF3QixFQUF4QixJQUF3QjtZQUF4QixnQ0FBd0I7O1FBQzlCLElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUM1RCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQzdDLENBQUM7SUFFTyw2Q0FBeUIsR0FBakMsVUFBa0MsV0FBcUI7UUFBdkQsaUJBRUM7UUFEQyxPQUFPLFdBQVcsQ0FBQyxHQUFHLENBQUMsVUFBQSxVQUFVLElBQUksT0FBQSxLQUFJLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLEVBQXpDLENBQXlDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDNUYsQ0FBQztJQUVPLDRDQUF3QixHQUFoQyxVQUFpQyxVQUFrQjtRQUNqRCxJQUFNLGdCQUFnQixHQUFNLElBQUksQ0FBQyxVQUFVLFNBQUksVUFBWSxDQUFBO1FBQzNELE9BQU8sMkJBQTJCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTtJQUNuRixDQUFDO0lBQ0gsZ0JBQUM7QUFBRCxDQUFDLEFBekNELElBeUNDIn0=
2657
+
2658
+
2659
+ exports.TargetSet = TargetSet;
2660
+ },{"./selectors":"../node_modules/@stimulus/core/dist/src/selectors.js"}],"../node_modules/@stimulus/core/dist/src/scope.js":[function(require,module,exports) {
2661
+ "use strict";
2662
+
2663
+ Object.defineProperty(exports, "__esModule", {
2664
+ value: true
2665
+ });
2666
+ exports.Scope = void 0;
2667
+
2668
+ var _data_map = require("./data_map");
2669
+
2670
+ var _target_set = require("./target_set");
2671
+
2672
+ var _selectors = require("./selectors");
2673
+
2674
+ var Scope =
2675
+ /** @class */
2676
+ function () {
2677
+ function Scope(schema, identifier, element) {
2678
+ this.schema = schema;
2679
+ this.identifier = identifier;
2680
+ this.element = element;
2681
+ this.targets = new _target_set.TargetSet(this);
2682
+ this.data = new _data_map.DataMap(this);
2683
+ }
2684
+
2685
+ Scope.prototype.findElement = function (selector) {
2686
+ return this.findAllElements(selector)[0];
2687
+ };
2688
+
2689
+ Scope.prototype.findAllElements = function (selector) {
2690
+ var head = this.element.matches(selector) ? [this.element] : [];
2691
+ var tail = this.filterElements(Array.from(this.element.querySelectorAll(selector)));
2692
+ return head.concat(tail);
2693
+ };
2694
+
2695
+ Scope.prototype.filterElements = function (elements) {
2696
+ var _this = this;
2697
+
2698
+ return elements.filter(function (element) {
2699
+ return _this.containsElement(element);
2700
+ });
2701
+ };
2702
+
2703
+ Scope.prototype.containsElement = function (element) {
2704
+ return element.closest(this.controllerSelector) === this.element;
2705
+ };
2706
+
2707
+ Object.defineProperty(Scope.prototype, "controllerSelector", {
2708
+ get: function () {
2709
+ return (0, _selectors.attributeValueContainsToken)(this.schema.controllerAttribute, this.identifier);
2710
+ },
2711
+ enumerable: true,
2712
+ configurable: true
2713
+ });
2714
+ return Scope;
2715
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NvcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUVwQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3hDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUV6RDtJQU9FLGVBQVksTUFBYyxFQUFFLFVBQWtCLEVBQUUsT0FBZ0I7UUFDOUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUE7UUFDcEIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUE7UUFDNUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNsQyxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFRCwyQkFBVyxHQUFYLFVBQVksUUFBZ0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQzFDLENBQUM7SUFFRCwrQkFBZSxHQUFmLFVBQWdCLFFBQWdCO1FBQzlCLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFBO1FBQ2pFLElBQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQTtRQUNyRixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDMUIsQ0FBQztJQUVELDhCQUFjLEdBQWQsVUFBZSxRQUFtQjtRQUFsQyxpQkFFQztRQURDLE9BQU8sUUFBUSxDQUFDLE1BQU0sQ0FBQyxVQUFBLE9BQU8sSUFBSSxPQUFBLEtBQUksQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLEVBQTdCLENBQTZCLENBQUMsQ0FBQTtJQUNsRSxDQUFDO0lBRUQsK0JBQWUsR0FBZixVQUFnQixPQUFnQjtRQUM5QixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sQ0FBQTtJQUNsRSxDQUFDO0lBRUQsc0JBQVkscUNBQWtCO2FBQTlCO1lBQ0UsT0FBTywyQkFBMkIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtRQUN0RixDQUFDOzs7T0FBQTtJQUNILFlBQUM7QUFBRCxDQUFDLEFBcENELElBb0NDIn0=
2716
+
2717
+
2718
+ exports.Scope = Scope;
2719
+ },{"./data_map":"../node_modules/@stimulus/core/dist/src/data_map.js","./target_set":"../node_modules/@stimulus/core/dist/src/target_set.js","./selectors":"../node_modules/@stimulus/core/dist/src/selectors.js"}],"../node_modules/@stimulus/core/dist/src/scope_observer.js":[function(require,module,exports) {
2720
+ "use strict";
2721
+
2722
+ Object.defineProperty(exports, "__esModule", {
2723
+ value: true
2724
+ });
2725
+ exports.ScopeObserver = void 0;
2726
+
2727
+ var _scope = require("./scope");
2728
+
2729
+ var _mutationObservers = require("@stimulus/mutation-observers");
2730
+
2731
+ var ScopeObserver =
2732
+ /** @class */
2733
+ function () {
2734
+ function ScopeObserver(element, schema, delegate) {
2735
+ this.element = element;
2736
+ this.schema = schema;
2737
+ this.delegate = delegate;
2738
+ this.valueListObserver = new _mutationObservers.ValueListObserver(this.element, this.controllerAttribute, this);
2739
+ this.scopesByIdentifierByElement = new WeakMap();
2740
+ this.scopeReferenceCounts = new WeakMap();
2741
+ }
2742
+
2743
+ ScopeObserver.prototype.start = function () {
2744
+ this.valueListObserver.start();
2745
+ };
2746
+
2747
+ ScopeObserver.prototype.stop = function () {
2748
+ this.valueListObserver.stop();
2749
+ };
2750
+
2751
+ Object.defineProperty(ScopeObserver.prototype, "controllerAttribute", {
2752
+ get: function () {
2753
+ return this.schema.controllerAttribute;
2754
+ },
2755
+ enumerable: true,
2756
+ configurable: true
2757
+ }); // Value observer delegate
2758
+
2759
+ /** @hidden */
2760
+
2761
+ ScopeObserver.prototype.parseValueForToken = function (token) {
2762
+ var element = token.element,
2763
+ identifier = token.content;
2764
+ var scopesByIdentifier = this.fetchScopesByIdentifierForElement(element);
2765
+ var scope = scopesByIdentifier.get(identifier);
2766
+
2767
+ if (!scope) {
2768
+ scope = new _scope.Scope(this.schema, identifier, element);
2769
+ scopesByIdentifier.set(identifier, scope);
2770
+ }
2771
+
2772
+ return scope;
2773
+ };
2774
+ /** @hidden */
2775
+
2776
+
2777
+ ScopeObserver.prototype.elementMatchedValue = function (element, value) {
2778
+ var referenceCount = (this.scopeReferenceCounts.get(value) || 0) + 1;
2779
+ this.scopeReferenceCounts.set(value, referenceCount);
2780
+
2781
+ if (referenceCount == 1) {
2782
+ this.delegate.scopeConnected(value);
2783
+ }
2784
+ };
2785
+ /** @hidden */
2786
+
2787
+
2788
+ ScopeObserver.prototype.elementUnmatchedValue = function (element, value) {
2789
+ var referenceCount = this.scopeReferenceCounts.get(value);
2790
+
2791
+ if (referenceCount) {
2792
+ this.scopeReferenceCounts.set(value, referenceCount - 1);
2793
+
2794
+ if (referenceCount == 1) {
2795
+ this.delegate.scopeDisconnected(value);
2796
+ }
2797
+ }
2798
+ };
2799
+
2800
+ ScopeObserver.prototype.fetchScopesByIdentifierForElement = function (element) {
2801
+ var scopesByIdentifier = this.scopesByIdentifierByElement.get(element);
2802
+
2803
+ if (!scopesByIdentifier) {
2804
+ scopesByIdentifier = new Map();
2805
+ this.scopesByIdentifierByElement.set(element, scopesByIdentifier);
2806
+ }
2807
+
2808
+ return scopesByIdentifier;
2809
+ };
2810
+
2811
+ return ScopeObserver;
2812
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NvcGVfb2JzZXJ2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NvcGVfb2JzZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUMvQixPQUFPLEVBQVMsaUJBQWlCLEVBQTZCLE1BQU0sOEJBQThCLENBQUE7QUFPbEc7SUFRRSx1QkFBWSxPQUFnQixFQUFFLE1BQWMsRUFBRSxRQUErQjtRQUMzRSxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQTtRQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQTtRQUNwQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQTtRQUN4QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUM1RixJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxPQUFPLENBQUE7UUFDOUMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksT0FBTyxDQUFBO0lBQ3pDLENBQUM7SUFFRCw2QkFBSyxHQUFMO1FBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRCw0QkFBSSxHQUFKO1FBQ0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRSxDQUFBO0lBQy9CLENBQUM7SUFFRCxzQkFBSSw4Q0FBbUI7YUFBdkI7WUFDRSxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsbUJBQW1CLENBQUE7UUFDeEMsQ0FBQzs7O09BQUE7SUFFRCwwQkFBMEI7SUFFMUIsY0FBYztJQUNkLDBDQUFrQixHQUFsQixVQUFtQixLQUFZO1FBQ3JCLElBQUEsdUJBQU8sRUFBRSwwQkFBbUIsQ0FBVTtRQUM5QyxJQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUUxRSxJQUFJLEtBQUssR0FBRyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLENBQUE7UUFDOUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQTtZQUNuRCxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFBO1NBQzFDO1FBRUQsT0FBTyxLQUFLLENBQUE7SUFDZCxDQUFDO0lBRUQsY0FBYztJQUNkLDJDQUFtQixHQUFuQixVQUFvQixPQUFnQixFQUFFLEtBQVk7UUFDaEQsSUFBTSxjQUFjLEdBQUcsQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN0RSxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxjQUFjLENBQUMsQ0FBQTtRQUNwRCxJQUFJLGNBQWMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUE7U0FDcEM7SUFDSCxDQUFDO0lBRUQsY0FBYztJQUNkLDZDQUFxQixHQUFyQixVQUFzQixPQUFnQixFQUFFLEtBQVk7UUFDbEQsSUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMzRCxJQUFJLGNBQWMsRUFBRTtZQUNsQixJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxjQUFjLEdBQUcsQ0FBQyxDQUFDLENBQUE7WUFDeEQsSUFBSSxjQUFjLElBQUksQ0FBQyxFQUFFO2dCQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFBO2FBQ3ZDO1NBQ0Y7SUFDSCxDQUFDO0lBRU8seURBQWlDLEdBQXpDLFVBQTBDLE9BQWdCO1FBQ3hELElBQUksa0JBQWtCLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQUN0RSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDdkIsa0JBQWtCLEdBQUcsSUFBSSxHQUFHLENBQUE7WUFDNUIsSUFBSSxDQUFDLDJCQUEyQixDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQTtTQUNsRTtRQUNELE9BQU8sa0JBQWtCLENBQUE7SUFDM0IsQ0FBQztJQUNILG9CQUFDO0FBQUQsQ0FBQyxBQXpFRCxJQXlFQyJ9
2813
+
2814
+
2815
+ exports.ScopeObserver = ScopeObserver;
2816
+ },{"./scope":"../node_modules/@stimulus/core/dist/src/scope.js","@stimulus/mutation-observers":"../node_modules/@stimulus/mutation-observers/dist/index.js"}],"../node_modules/@stimulus/core/dist/src/router.js":[function(require,module,exports) {
2817
+ "use strict";
2818
+
2819
+ Object.defineProperty(exports, "__esModule", {
2820
+ value: true
2821
+ });
2822
+ exports.Router = void 0;
2823
+
2824
+ var _module = require("./module");
2825
+
2826
+ var _multimap = require("@stimulus/multimap");
2827
+
2828
+ var _scope_observer = require("./scope_observer");
2829
+
2830
+ var Router =
2831
+ /** @class */
2832
+ function () {
2833
+ function Router(application) {
2834
+ this.application = application;
2835
+ this.scopeObserver = new _scope_observer.ScopeObserver(this.element, this.schema, this);
2836
+ this.scopesByIdentifier = new _multimap.Multimap();
2837
+ this.modulesByIdentifier = new Map();
2838
+ }
2839
+
2840
+ Object.defineProperty(Router.prototype, "element", {
2841
+ get: function () {
2842
+ return this.application.element;
2843
+ },
2844
+ enumerable: true,
2845
+ configurable: true
2846
+ });
2847
+ Object.defineProperty(Router.prototype, "schema", {
2848
+ get: function () {
2849
+ return this.application.schema;
2850
+ },
2851
+ enumerable: true,
2852
+ configurable: true
2853
+ });
2854
+ Object.defineProperty(Router.prototype, "controllerAttribute", {
2855
+ get: function () {
2856
+ return this.schema.controllerAttribute;
2857
+ },
2858
+ enumerable: true,
2859
+ configurable: true
2860
+ });
2861
+ Object.defineProperty(Router.prototype, "modules", {
2862
+ get: function () {
2863
+ return Array.from(this.modulesByIdentifier.values());
2864
+ },
2865
+ enumerable: true,
2866
+ configurable: true
2867
+ });
2868
+ Object.defineProperty(Router.prototype, "contexts", {
2869
+ get: function () {
2870
+ return this.modules.reduce(function (contexts, module) {
2871
+ return contexts.concat(module.contexts);
2872
+ }, []);
2873
+ },
2874
+ enumerable: true,
2875
+ configurable: true
2876
+ });
2877
+
2878
+ Router.prototype.start = function () {
2879
+ this.scopeObserver.start();
2880
+ };
2881
+
2882
+ Router.prototype.stop = function () {
2883
+ this.scopeObserver.stop();
2884
+ };
2885
+
2886
+ Router.prototype.loadDefinition = function (definition) {
2887
+ this.unloadIdentifier(definition.identifier);
2888
+ var module = new _module.Module(this.application, definition);
2889
+ this.connectModule(module);
2890
+ };
2891
+
2892
+ Router.prototype.unloadIdentifier = function (identifier) {
2893
+ var module = this.modulesByIdentifier.get(identifier);
2894
+
2895
+ if (module) {
2896
+ this.disconnectModule(module);
2897
+ }
2898
+ };
2899
+
2900
+ Router.prototype.getContextForElementAndIdentifier = function (element, identifier) {
2901
+ var module = this.modulesByIdentifier.get(identifier);
2902
+
2903
+ if (module) {
2904
+ return module.contexts.find(function (context) {
2905
+ return context.element == element;
2906
+ });
2907
+ }
2908
+ }; // Error handler delegate
2909
+
2910
+ /** @hidden */
2911
+
2912
+
2913
+ Router.prototype.handleError = function (error, message, detail) {
2914
+ this.application.handleError(error, message, detail);
2915
+ }; // Scope observer delegate
2916
+
2917
+ /** @hidden */
2918
+
2919
+
2920
+ Router.prototype.scopeConnected = function (scope) {
2921
+ this.scopesByIdentifier.add(scope.identifier, scope);
2922
+ var module = this.modulesByIdentifier.get(scope.identifier);
2923
+
2924
+ if (module) {
2925
+ module.connectContextForScope(scope);
2926
+ }
2927
+ };
2928
+ /** @hidden */
2929
+
2930
+
2931
+ Router.prototype.scopeDisconnected = function (scope) {
2932
+ this.scopesByIdentifier.delete(scope.identifier, scope);
2933
+ var module = this.modulesByIdentifier.get(scope.identifier);
2934
+
2935
+ if (module) {
2936
+ module.disconnectContextForScope(scope);
2937
+ }
2938
+ }; // Modules
2939
+
2940
+
2941
+ Router.prototype.connectModule = function (module) {
2942
+ this.modulesByIdentifier.set(module.identifier, module);
2943
+ var scopes = this.scopesByIdentifier.getValuesForKey(module.identifier);
2944
+ scopes.forEach(function (scope) {
2945
+ return module.connectContextForScope(scope);
2946
+ });
2947
+ };
2948
+
2949
+ Router.prototype.disconnectModule = function (module) {
2950
+ this.modulesByIdentifier.delete(module.identifier);
2951
+ var scopes = this.scopesByIdentifier.getValuesForKey(module.identifier);
2952
+ scopes.forEach(function (scope) {
2953
+ return module.disconnectContextForScope(scope);
2954
+ });
2955
+ };
2956
+
2957
+ return Router;
2958
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3JvdXRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFBO0FBQ2pDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQTtBQUc3QyxPQUFPLEVBQUUsYUFBYSxFQUF5QixNQUFNLGtCQUFrQixDQUFBO0FBRXZFO0lBTUUsZ0JBQVksV0FBd0I7UUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUE7UUFDOUIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUE7UUFDdkUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksUUFBUSxDQUFBO1FBQ3RDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLEdBQUcsQ0FBQTtJQUNwQyxDQUFDO0lBRUQsc0JBQUksMkJBQU87YUFBWDtZQUNFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUE7UUFDakMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSwwQkFBTTthQUFWO1lBQ0UsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQTtRQUNoQyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLHVDQUFtQjthQUF2QjtZQUNFLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQTtRQUN4QyxDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDJCQUFPO2FBQVg7WUFDRSxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7UUFDdEQsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw0QkFBUTthQUFaO1lBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FB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
2959
+
2960
+
2961
+ exports.Router = Router;
2962
+ },{"./module":"../node_modules/@stimulus/core/dist/src/module.js","@stimulus/multimap":"../node_modules/@stimulus/multimap/dist/index.js","./scope_observer":"../node_modules/@stimulus/core/dist/src/scope_observer.js"}],"../node_modules/@stimulus/core/dist/src/schema.js":[function(require,module,exports) {
2963
+ "use strict";
2964
+
2965
+ Object.defineProperty(exports, "__esModule", {
2966
+ value: true
2967
+ });
2968
+ exports.defaultSchema = void 0;
2969
+ var defaultSchema = {
2970
+ controllerAttribute: "data-controller",
2971
+ actionAttribute: "data-action",
2972
+ targetAttribute: "data-target"
2973
+ }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxNQUFNLENBQUMsSUFBTSxhQUFhLEdBQVc7SUFDbkMsbUJBQW1CLEVBQUUsaUJBQWlCO0lBQ3RDLGVBQWUsRUFBRSxhQUFhO0lBQzlCLGVBQWUsRUFBRSxhQUFhO0NBQy9CLENBQUEifQ==
2974
+
2975
+ exports.defaultSchema = defaultSchema;
2976
+ },{}],"../node_modules/@stimulus/core/dist/src/application.js":[function(require,module,exports) {
2977
+ "use strict";
2978
+
2979
+ Object.defineProperty(exports, "__esModule", {
2980
+ value: true
2981
+ });
2982
+ exports.Application = void 0;
2983
+
2984
+ var _dispatcher = require("./dispatcher");
2985
+
2986
+ var _router = require("./router");
2987
+
2988
+ var _schema = require("./schema");
2989
+
2990
+ var __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
2991
+ return new (P || (P = Promise))(function (resolve, reject) {
2992
+ function fulfilled(value) {
2993
+ try {
2994
+ step(generator.next(value));
2995
+ } catch (e) {
2996
+ reject(e);
2997
+ }
2998
+ }
2999
+
3000
+ function rejected(value) {
3001
+ try {
3002
+ step(generator["throw"](value));
3003
+ } catch (e) {
3004
+ reject(e);
3005
+ }
3006
+ }
3007
+
3008
+ function step(result) {
3009
+ result.done ? resolve(result.value) : new P(function (resolve) {
3010
+ resolve(result.value);
3011
+ }).then(fulfilled, rejected);
3012
+ }
3013
+
3014
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
3015
+ });
3016
+ };
3017
+
3018
+ var __generator = void 0 && (void 0).__generator || function (thisArg, body) {
3019
+ var _ = {
3020
+ label: 0,
3021
+ sent: function () {
3022
+ if (t[0] & 1) throw t[1];
3023
+ return t[1];
3024
+ },
3025
+ trys: [],
3026
+ ops: []
3027
+ },
3028
+ f,
3029
+ y,
3030
+ t,
3031
+ g;
3032
+ return g = {
3033
+ next: verb(0),
3034
+ "throw": verb(1),
3035
+ "return": verb(2)
3036
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function () {
3037
+ return this;
3038
+ }), g;
3039
+
3040
+ function verb(n) {
3041
+ return function (v) {
3042
+ return step([n, v]);
3043
+ };
3044
+ }
3045
+
3046
+ function step(op) {
3047
+ if (f) throw new TypeError("Generator is already executing.");
3048
+
3049
+ while (_) try {
3050
+ if (f = 1, y && (t = y[op[0] & 2 ? "return" : op[0] ? "throw" : "next"]) && !(t = t.call(y, op[1])).done) return t;
3051
+ if (y = 0, t) op = [0, t.value];
3052
+
3053
+ switch (op[0]) {
3054
+ case 0:
3055
+ case 1:
3056
+ t = op;
3057
+ break;
3058
+
3059
+ case 4:
3060
+ _.label++;
3061
+ return {
3062
+ value: op[1],
3063
+ done: false
3064
+ };
3065
+
3066
+ case 5:
3067
+ _.label++;
3068
+ y = op[1];
3069
+ op = [0];
3070
+ continue;
3071
+
3072
+ case 7:
3073
+ op = _.ops.pop();
3074
+
3075
+ _.trys.pop();
3076
+
3077
+ continue;
3078
+
3079
+ default:
3080
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
3081
+ _ = 0;
3082
+ continue;
3083
+ }
3084
+
3085
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
3086
+ _.label = op[1];
3087
+ break;
3088
+ }
3089
+
3090
+ if (op[0] === 6 && _.label < t[1]) {
3091
+ _.label = t[1];
3092
+ t = op;
3093
+ break;
3094
+ }
3095
+
3096
+ if (t && _.label < t[2]) {
3097
+ _.label = t[2];
3098
+
3099
+ _.ops.push(op);
3100
+
3101
+ break;
3102
+ }
3103
+
3104
+ if (t[2]) _.ops.pop();
3105
+
3106
+ _.trys.pop();
3107
+
3108
+ continue;
3109
+ }
3110
+
3111
+ op = body.call(thisArg, _);
3112
+ } catch (e) {
3113
+ op = [6, e];
3114
+ y = 0;
3115
+ } finally {
3116
+ f = t = 0;
3117
+ }
3118
+
3119
+ if (op[0] & 5) throw op[1];
3120
+ return {
3121
+ value: op[0] ? op[1] : void 0,
3122
+ done: true
3123
+ };
3124
+ }
3125
+ };
3126
+
3127
+ var Application =
3128
+ /** @class */
3129
+ function () {
3130
+ function Application(element, schema) {
3131
+ if (element === void 0) {
3132
+ element = document.documentElement;
3133
+ }
3134
+
3135
+ if (schema === void 0) {
3136
+ schema = _schema.defaultSchema;
3137
+ }
3138
+
3139
+ this.element = element;
3140
+ this.schema = schema;
3141
+ this.dispatcher = new _dispatcher.Dispatcher(this);
3142
+ this.router = new _router.Router(this);
3143
+ }
3144
+
3145
+ Application.start = function (element, schema) {
3146
+ var application = new Application(element, schema);
3147
+ application.start();
3148
+ return application;
3149
+ };
3150
+
3151
+ Application.prototype.start = function () {
3152
+ return __awaiter(this, void 0, void 0, function () {
3153
+ return __generator(this, function (_a) {
3154
+ switch (_a.label) {
3155
+ case 0:
3156
+ return [4
3157
+ /*yield*/
3158
+ , domReady()];
3159
+
3160
+ case 1:
3161
+ _a.sent();
3162
+
3163
+ this.router.start();
3164
+ this.dispatcher.start();
3165
+ return [2
3166
+ /*return*/
3167
+ ];
3168
+ }
3169
+ });
3170
+ });
3171
+ };
3172
+
3173
+ Application.prototype.stop = function () {
3174
+ this.router.stop();
3175
+ this.dispatcher.stop();
3176
+ };
3177
+
3178
+ Application.prototype.register = function (identifier, controllerConstructor) {
3179
+ this.load({
3180
+ identifier: identifier,
3181
+ controllerConstructor: controllerConstructor
3182
+ });
3183
+ };
3184
+
3185
+ Application.prototype.load = function (head) {
3186
+ var _this = this;
3187
+
3188
+ var rest = [];
3189
+
3190
+ for (var _i = 1; _i < arguments.length; _i++) {
3191
+ rest[_i - 1] = arguments[_i];
3192
+ }
3193
+
3194
+ var definitions = Array.isArray(head) ? head : [head].concat(rest);
3195
+ definitions.forEach(function (definition) {
3196
+ return _this.router.loadDefinition(definition);
3197
+ });
3198
+ };
3199
+
3200
+ Application.prototype.unload = function (head) {
3201
+ var _this = this;
3202
+
3203
+ var rest = [];
3204
+
3205
+ for (var _i = 1; _i < arguments.length; _i++) {
3206
+ rest[_i - 1] = arguments[_i];
3207
+ }
3208
+
3209
+ var identifiers = Array.isArray(head) ? head : [head].concat(rest);
3210
+ identifiers.forEach(function (identifier) {
3211
+ return _this.router.unloadIdentifier(identifier);
3212
+ });
3213
+ };
3214
+
3215
+ Object.defineProperty(Application.prototype, "controllers", {
3216
+ // Controllers
3217
+ get: function () {
3218
+ return this.router.contexts.map(function (context) {
3219
+ return context.controller;
3220
+ });
3221
+ },
3222
+ enumerable: true,
3223
+ configurable: true
3224
+ });
3225
+
3226
+ Application.prototype.getControllerForElementAndIdentifier = function (element, identifier) {
3227
+ var context = this.router.getContextForElementAndIdentifier(element, identifier);
3228
+ return context ? context.controller : null;
3229
+ }; // Error handling
3230
+
3231
+
3232
+ Application.prototype.handleError = function (error, message, detail) {
3233
+ console.error("%s\n\n%o\n\n%o", message, error, detail);
3234
+ };
3235
+
3236
+ return Application;
3237
+ }();
3238
+
3239
+ exports.Application = Application;
3240
+
3241
+ function domReady() {
3242
+ return new Promise(function (resolve) {
3243
+ if (document.readyState == "loading") {
3244
+ document.addEventListener("DOMContentLoaded", resolve);
3245
+ } else {
3246
+ resolve();
3247
+ }
3248
+ });
3249
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBwbGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBRXpDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDakMsT0FBTyxFQUFVLGFBQWEsRUFBRSxNQUFNLFVBQVUsQ0FBQTtBQUVoRDtJQVlFLHFCQUFZLE9BQTJDLEVBQUUsTUFBOEI7UUFBM0Usd0JBQUEsRUFBQSxVQUFtQixRQUFRLENBQUMsZUFBZTtRQUFFLHVCQUFBLEVBQUEsc0JBQThCO1FBQ3JGLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDdEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoQyxDQUFDO0lBWE0saUJBQUssR0FBWixVQUFhLE9BQWlCLEVBQUUsTUFBZTtRQUM3QyxJQUFNLFdBQVcsR0FBRyxJQUFJLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUE7UUFDcEQsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFBO1FBQ25CLE9BQU8sV0FBVyxDQUFBO0lBQ3BCLENBQUM7SUFTSywyQkFBSyxHQUFYOzs7OzRCQUNFLHFCQUFNLFFBQVEsRUFBRSxFQUFBOzt3QkFBaEIsU0FBZ0IsQ0FBQTt3QkFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQTt3QkFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQTs7Ozs7S0FDeEI7SUFFRCwwQkFBSSxHQUFKO1FB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
3250
+ },{"./dispatcher":"../node_modules/@stimulus/core/dist/src/dispatcher.js","./router":"../node_modules/@stimulus/core/dist/src/router.js","./schema":"../node_modules/@stimulus/core/dist/src/schema.js"}],"../node_modules/@stimulus/core/dist/src/target_properties.js":[function(require,module,exports) {
3251
+ "use strict";
3252
+
3253
+ Object.defineProperty(exports, "__esModule", {
3254
+ value: true
3255
+ });
3256
+ exports.defineTargetProperties = defineTargetProperties;
3257
+
3258
+ /** @hidden */
3259
+ function defineTargetProperties(constructor) {
3260
+ var prototype = constructor.prototype;
3261
+ var targetNames = getTargetNamesForConstructor(constructor);
3262
+ targetNames.forEach(function (name) {
3263
+ var _a;
3264
+
3265
+ return defineLinkedProperties(prototype, (_a = {}, _a[name + "Target"] = {
3266
+ get: function () {
3267
+ var target = this.targets.find(name);
3268
+
3269
+ if (target) {
3270
+ return target;
3271
+ } else {
3272
+ throw new Error("Missing target element \"" + this.identifier + "." + name + "\"");
3273
+ }
3274
+ }
3275
+ }, _a[name + "Targets"] = {
3276
+ get: function () {
3277
+ return this.targets.findAll(name);
3278
+ }
3279
+ }, _a["has" + capitalize(name) + "Target"] = {
3280
+ get: function () {
3281
+ return this.targets.has(name);
3282
+ }
3283
+ }, _a));
3284
+ });
3285
+ }
3286
+
3287
+ function getTargetNamesForConstructor(constructor) {
3288
+ var ancestors = getAncestorsForConstructor(constructor);
3289
+ return Array.from(ancestors.reduce(function (targetNames, constructor) {
3290
+ getOwnTargetNamesForConstructor(constructor).forEach(function (name) {
3291
+ return targetNames.add(name);
3292
+ });
3293
+ return targetNames;
3294
+ }, new Set()));
3295
+ }
3296
+
3297
+ function getAncestorsForConstructor(constructor) {
3298
+ var ancestors = [];
3299
+
3300
+ while (constructor) {
3301
+ ancestors.push(constructor);
3302
+ constructor = Object.getPrototypeOf(constructor);
3303
+ }
3304
+
3305
+ return ancestors;
3306
+ }
3307
+
3308
+ function getOwnTargetNamesForConstructor(constructor) {
3309
+ var definition = constructor["targets"];
3310
+ return Array.isArray(definition) ? definition : [];
3311
+ }
3312
+
3313
+ function defineLinkedProperties(object, properties) {
3314
+ Object.keys(properties).forEach(function (name) {
3315
+ if (!(name in object)) {
3316
+ var descriptor = properties[name];
3317
+ Object.defineProperty(object, name, descriptor);
3318
+ }
3319
+ });
3320
+ }
3321
+
3322
+ function capitalize(name) {
3323
+ return name.charAt(0).toUpperCase() + name.slice(1);
3324
+ } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFyZ2V0X3Byb3BlcnRpZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdGFyZ2V0X3Byb3BlcnRpZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsY0FBYztBQUNkLE1BQU0saUNBQWlDLFdBQXFCO0lBQzFELElBQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUE7SUFDdkMsSUFBTSxXQUFXLEdBQUcsNEJBQTRCLENBQUMsV0FBVyxDQUFDLENBQUE7SUFDN0QsV0FBVyxDQUFDLE9BQU8sQ0FBQyxVQUFBLElBQUk7O1FBQUksT0FBQSxzQkFBc0IsQ0FBQyxTQUFTO1lBQzFELEdBQUksSUFBSSxXQUFRLElBQUc7Z0JBQ2pCLEdBQUc7b0JBQ0QsSUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7b0JBQ3RDLElBQUksTUFBTSxFQUFFO3dCQUNWLE9BQU8sTUFBTSxDQUFBO3FCQUNkO3lCQUFNO3dCQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQTJCLElBQUksQ0FBQyxVQUFVLFNBQUksSUFBSSxPQUFHLENBQUMsQ0FBQTtxQkFDdkU7Z0JBQ0gsQ0FBQzthQUNGO1lBQ0QsR0FBSSxJQUFJLFlBQVMsSUFBRztnQkFDbEIsR0FBRztvQkFDRCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNuQyxDQUFDO2FBQ0Y7WUFDRCxHQUFDLFFBQU0sVUFBVSxDQUFDLElBQUksQ0FBQyxXQUFRLElBQUc7Z0JBQ2hDLEdBQUc7b0JBQ0QsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQTtnQkFDL0IsQ0FBQzthQUNGO2dCQUNEO0lBckIwQixDQXFCMUIsQ0FBQyxDQUFBO0FBQ0wsQ0FBQztBQUVELHNDQUFzQyxXQUFxQjtJQUN6RCxJQUFNLFNBQVMsR0FBRywwQkFBMEIsQ0FBQyxXQUFXLENBQUMsQ0FBQTtJQUN6RCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxVQUFDLFdBQVcsRUFBRSxXQUFXO1FBQzFELCtCQUErQixDQUFDLFdBQVcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFBLElBQUksSUFBSSxPQUFBLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQXJCLENBQXFCLENBQUMsQ0FBQTtRQUNuRixPQUFPLFdBQVcsQ0FBQTtJQUNwQixDQUFDLEVBQUUsSUFBSSxHQUFrQixDQUFDLENBQUMsQ0FBQTtBQUM3QixDQUFDO0FBRUQsb0NBQW9DLFdBQXFCO0lBQ3ZELElBQU0sU0FBUyxHQUFlLEVBQUUsQ0FBQTtJQUNoQyxPQUFPLFdBQVcsRUFBRTtRQUNsQixTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBQzNCLFdBQVcsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFBO0tBQ2pEO0lBQ0QsT0FBTyxTQUFTLENBQUE7QUFDbEIsQ0FBQztBQUVELHlDQUF5QyxXQUFxQjtJQUM1RCxJQUFNLFVBQVUsR0FBSSxXQUFtQixDQUFDLFNBQVMsQ0FBQyxDQUFBO0lBQ2xELE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUE7QUFDcEQsQ0FBQztBQUVELGdDQUFnQyxNQUFXLEVBQUUsVUFBaUM7SUFDNUUsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQyxJQUFJO1FBQ25DLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxNQUFNLENBQUMsRUFBRTtZQUNyQixJQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUE7WUFDbkMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFBO1NBQ2hEO0lBQ0gsQ0FBQyxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsb0JBQW9CLElBQVk7SUFDOUIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUE7QUFDckQsQ0FBQyJ9
3325
+ },{}],"../node_modules/@stimulus/core/dist/src/controller.js":[function(require,module,exports) {
3326
+ "use strict";
3327
+
3328
+ Object.defineProperty(exports, "__esModule", {
3329
+ value: true
3330
+ });
3331
+ exports.Controller = void 0;
3332
+
3333
+ var _target_properties = require("./target_properties");
3334
+
3335
+ var Controller =
3336
+ /** @class */
3337
+ function () {
3338
+ function Controller(context) {
3339
+ this.context = context;
3340
+ }
3341
+
3342
+ Controller.bless = function () {
3343
+ (0, _target_properties.defineTargetProperties)(this);
3344
+ };
3345
+
3346
+ Object.defineProperty(Controller.prototype, "application", {
3347
+ get: function () {
3348
+ return this.context.application;
3349
+ },
3350
+ enumerable: true,
3351
+ configurable: true
3352
+ });
3353
+ Object.defineProperty(Controller.prototype, "scope", {
3354
+ get: function () {
3355
+ return this.context.scope;
3356
+ },
3357
+ enumerable: true,
3358
+ configurable: true
3359
+ });
3360
+ Object.defineProperty(Controller.prototype, "element", {
3361
+ get: function () {
3362
+ return this.scope.element;
3363
+ },
3364
+ enumerable: true,
3365
+ configurable: true
3366
+ });
3367
+ Object.defineProperty(Controller.prototype, "identifier", {
3368
+ get: function () {
3369
+ return this.scope.identifier;
3370
+ },
3371
+ enumerable: true,
3372
+ configurable: true
3373
+ });
3374
+ Object.defineProperty(Controller.prototype, "targets", {
3375
+ get: function () {
3376
+ return this.scope.targets;
3377
+ },
3378
+ enumerable: true,
3379
+ configurable: true
3380
+ });
3381
+ Object.defineProperty(Controller.prototype, "data", {
3382
+ get: function () {
3383
+ return this.scope.data;
3384
+ },
3385
+ enumerable: true,
3386
+ configurable: true
3387
+ });
3388
+
3389
+ Controller.prototype.initialize = function () {// Override in your subclass to set up initial controller state
3390
+ };
3391
+
3392
+ Controller.prototype.connect = function () {// Override in your subclass to respond when the controller is connected to the DOM
3393
+ };
3394
+
3395
+ Controller.prototype.disconnect = function () {// Override in your subclass to respond when the controller is disconnected from the DOM
3396
+ };
3397
+
3398
+ Controller.targets = [];
3399
+ return Controller;
3400
+ }(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb250cm9sbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBTzVEO0lBU0Usb0JBQVksT0FBZ0I7UUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7SUFDeEIsQ0FBQztJQU5NLGdCQUFLLEdBQVo7UUFDRSxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM5QixDQUFDO0lBTUQsc0JBQUksbUNBQVc7YUFBZjtZQUNFLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUE7UUFDakMsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSw2QkFBSzthQUFUO1lBQ0UsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQTtRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLCtCQUFPO2FBQVg7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFBO1FBQzNCLENBQUM7OztPQUFBO0lBRUQsc0JBQUksa0NBQVU7YUFBZDtZQUNFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUE7UUFDOUIsQ0FBQzs7O09BQUE7SUFFRCxzQkFBSSwrQkFBTzthQUFYO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQTtRQUMzQixDQUFDOzs7T0FBQTtJQUVELHNCQUFJLDRCQUFJO2FBQVI7WUFDRSxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFBO1FBQ3hCLENBQUM7OztPQUFBO0lBRUQsK0JBQVUsR0FBVjtRQUNFLCtEQUErRDtJQUNqRSxDQUFDO0lBRUQsNEJBQU8sR0FBUDtRQUNFLG1GQUFtRjtJQUNyRixDQUFDO0lBRUQsK0JBQVUsR0FBVjtRQUNFLHdGQUF3RjtJQUMxRixDQUFDO0lBOUNNLGtCQUFPLEdBQWEsRUFBRSxDQUFBO0lBK0MvQixpQkFBQztDQUFBLEFBaERELElBZ0RDO1NBaERZLFVBQVUifQ==
3401
+
3402
+
3403
+ exports.Controller = Controller;
3404
+ },{"./target_properties":"../node_modules/@stimulus/core/dist/src/target_properties.js"}],"../node_modules/@stimulus/core/dist/index.js":[function(require,module,exports) {
3405
+ "use strict";
3406
+
3407
+ Object.defineProperty(exports, "__esModule", {
3408
+ value: true
3409
+ });
3410
+ Object.defineProperty(exports, "Application", {
3411
+ enumerable: true,
3412
+ get: function () {
3413
+ return _application.Application;
3414
+ }
3415
+ });
3416
+ Object.defineProperty(exports, "Context", {
3417
+ enumerable: true,
3418
+ get: function () {
3419
+ return _context.Context;
3420
+ }
3421
+ });
3422
+ Object.defineProperty(exports, "Controller", {
3423
+ enumerable: true,
3424
+ get: function () {
3425
+ return _controller.Controller;
3426
+ }
3427
+ });
3428
+ Object.defineProperty(exports, "defaultSchema", {
3429
+ enumerable: true,
3430
+ get: function () {
3431
+ return _schema.defaultSchema;
3432
+ }
3433
+ });
3434
+
3435
+ var _application = require("./src/application");
3436
+
3437
+ var _context = require("./src/context");
3438
+
3439
+ var _controller = require("./src/controller");
3440
+
3441
+ var _schema = require("./src/schema");
3442
+ },{"./src/application":"../node_modules/@stimulus/core/dist/src/application.js","./src/context":"../node_modules/@stimulus/core/dist/src/context.js","./src/controller":"../node_modules/@stimulus/core/dist/src/controller.js","./src/schema":"../node_modules/@stimulus/core/dist/src/schema.js"}],"../node_modules/stimulus/index.js":[function(require,module,exports) {
3443
+ "use strict";
3444
+
3445
+ Object.defineProperty(exports, "__esModule", {
3446
+ value: true
3447
+ });
3448
+
3449
+ var _core = require("@stimulus/core");
3450
+
3451
+ Object.keys(_core).forEach(function (key) {
3452
+ if (key === "default" || key === "__esModule") return;
3453
+ Object.defineProperty(exports, key, {
3454
+ enumerable: true,
3455
+ get: function () {
3456
+ return _core[key];
3457
+ }
3458
+ });
3459
+ });
3460
+ },{"@stimulus/core":"../node_modules/@stimulus/core/dist/index.js"}],"javascripts/super/application.js":[function(require,module,exports) {
3461
+ "use strict";
3462
+
3463
+ Object.defineProperty(exports, "__esModule", {
3464
+ value: true
3465
+ });
3466
+ exports.default = void 0;
3467
+
3468
+ var _railsUjs = _interopRequireDefault(require("rails-ujs"));
3469
+
3470
+ var _stimulus = require("stimulus");
3471
+
3472
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
3473
+
3474
+ _railsUjs.default.start();
3475
+
3476
+ var application = _stimulus.Application.start();
3477
+
3478
+ var _default = {
3479
+ StimulusApplication: application,
3480
+ StimulusController: _stimulus.Controller
3481
+ };
3482
+ exports.default = _default;
3483
+ },{"rails-ujs":"../node_modules/rails-ujs/lib/assets/compiled/rails-ujs.js","stimulus":"../node_modules/stimulus/index.js"}]},{},["javascripts/super/application.js"], "Super")