active_element 0.0.16 → 0.0.17

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a5061acace969c49903b783f1395dfcac9683001fca5b18099b50222b62ce25d
4
- data.tar.gz: b884bb15effdeca54b82c1a27140418304e09d10c17f3b8d49253d75f9dc8a76
3
+ metadata.gz: 400b6c6c72f4bf41706eb1266704d9c7ae5a9807969ceb069dce935387db8012
4
+ data.tar.gz: 716241936a61a2bab52158b538d50ea48880af24f38b0d292f2a2c581a180361
5
5
  SHA512:
6
- metadata.gz: b3b3b9df909c578397d11260209daabfe8e6e9af8424ce9865c28da05be980f3cea7614dc898fd585e0ab695befe8e214ec16d5cf40ddb2b69e05c8067a3d3c0
7
- data.tar.gz: ce25ad80b730f77837e06967e4e4d5217878af9609c1c88bfbaa09eb5f86cbaebbe92233465c3a542b58bf27d842b2cc9ef7a91b2f4b4e565044d9bc030adda9
6
+ metadata.gz: 1cc434c86434948327d8b1c768883a8a806a3440ddc866087627abcd576a777bdc0bab24cd91330336819bf8e12937c144da29d479b8dc1419bb28e6f7ee3dcc
7
+ data.tar.gz: 0fc355d84b115702c99a162b2f2df2d8728948b192fe643a99db6bbd0abb58d085ede47af66f087f714bdd24731d8a82637b9bb6998e12be2d7c14a643703d4a
@@ -1,2 +1,2 @@
1
- //= link active_element/application.js
2
- //= link active_element/application.css
1
+ //= link active_element/active_element.js
2
+ //= link active_element/active_element.css
@@ -1,4 +1,3 @@
1
- //= require rails-ujs
2
1
  //= require bootstrap
3
2
  //= require active_element/setup
4
3
  //= require active_element/theme
@@ -1,7 +1,7 @@
1
1
  (() => {
2
2
  const cloneElement = (id) => ActiveElement.cloneElement('form', id);
3
3
 
4
- window.addEventListener('DOMContentLoaded', () => {
4
+ window.addEventListener(ActiveElement.reloadEvent, () => {
5
5
  const confirmLinks = document.querySelectorAll('[data-confirm-action="true"]');
6
6
 
7
7
  confirmLinks.forEach((element) => {
@@ -39,7 +39,7 @@
39
39
  });
40
40
  };
41
41
 
42
- window.addEventListener('DOMContentLoaded', () => {
42
+ window.addEventListener(ActiveElement.reloadEvent, () => {
43
43
  initModalButtons();
44
44
  initClearFormButtons();
45
45
  });
@@ -602,7 +602,7 @@ ActiveElement.JsonField = (() => {
602
602
  })();
603
603
 
604
604
  (() => {
605
- window.addEventListener('DOMContentLoaded', () => {
605
+ window.addEventListener(ActiveElement.reloadEvent, () => {
606
606
  document.querySelectorAll('.json-field').forEach((element) => {
607
607
  ActiveElement.JsonField(element);
608
608
  });
@@ -1,5 +1,5 @@
1
1
  (() => {
2
- window.addEventListener('DOMContentLoaded', () => {
2
+ window.addEventListener(ActiveElement.reloadEvent, () => {
3
3
  const paginationSelect = document.querySelector('#collection-table-page-size-selector');
4
4
 
5
5
  if (paginationSelect) {
@@ -1,5 +1,5 @@
1
1
  (() => {
2
- window.addEventListener('DOMContentLoaded', () => {
2
+ window.addEventListener(ActiveElement.reloadEvent, () => {
3
3
  const popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
4
4
  const popoverList = popoverTriggerList.map(function (element) {
5
5
  return new bootstrap.Popover(element)
@@ -1,7 +1,7 @@
1
1
  (() => {
2
2
  const cloneElement = (id) => ActiveElement.cloneElement('secret', id);
3
3
 
4
- window.addEventListener('DOMContentLoaded', () => {
4
+ window.addEventListener(ActiveElement.reloadEvent, () => {
5
5
  document.querySelectorAll('span[data-field-type="secret"]').forEach((element) => {
6
6
  const secret = element.dataset.secret;
7
7
  const showButton = cloneElement('show-button');
@@ -33,6 +33,7 @@
33
33
 
34
34
  const ActiveElement = {
35
35
  debug: false,
36
+ reloadEvent: window.ActiveElement.turbo ? 'turbo:load' : 'DOMContentLoaded',
36
37
  log: {
37
38
  debug: (message) => { ActiveElement.debug && console.log(`[ActiveElement:debug]`, message); },
38
39
  info: (message) => { console.log(`[ActiveElement:info] ${message}`); },
@@ -47,7 +48,7 @@
47
48
  controller_path: document.querySelector('meta[name="active_element_controller_path"]').content
48
49
  };
49
50
 
50
- window.ActiveElement = ActiveElement;
51
+ window.ActiveElement = { ...(window.ActiveElement || {}), ...ActiveElement };
51
52
  })();
52
53
 
53
54
  ActiveElement.log.info('Initialized');
@@ -58,7 +58,7 @@
58
58
  }
59
59
  };
60
60
 
61
- window.addEventListener('DOMContentLoaded', () => {
61
+ window.addEventListener(ActiveElement.reloadEvent, () => {
62
62
  document.querySelectorAll('[data-field-type="text-search"]').forEach((element) => {
63
63
  const id = element.id;
64
64
  const hiddenId = `${id}-hidden-value`;
@@ -1,7 +1,7 @@
1
1
  (() => {
2
2
  const cloneElement = (id) => ActiveElement.cloneElement('theme', id);
3
3
 
4
- window.addEventListener('DOMContentLoaded', () => {
4
+ window.addEventListener(ActiveElement.reloadEvent, () => {
5
5
  const themeSelect = document.querySelector('#theme-select');
6
6
 
7
7
  const setTheme = (theme) => {
@@ -1,5 +1,5 @@
1
1
  (() => {
2
- window.addEventListener('DOMContentLoaded', () => {
2
+ window.addEventListener(ActiveElement.reloadEvent, () => {
3
3
  const timezoneOffset = new Date().getTimezoneOffset();
4
4
  document.cookie = `timezone_offset=${timezoneOffset};`;
5
5
  });
@@ -1,9 +1,24 @@
1
1
  <html>
2
2
  <head>
3
+ <script>
4
+ window.ActiveElement = window.ActiveElement || {};
5
+ </script>
6
+
3
7
  <%= render_active_element_hook 'active_element/before_head' %>
4
8
  <%= render_active_element_hook 'active_element/favicon' %>
5
9
  <%= render_active_element_hook 'active_element/title' %>
6
10
 
11
+ <% if respond_to?(:javascript_importmap_tags) %>
12
+ <%= javascript_importmap_tags %>
13
+ <script>
14
+ window.ActiveElement.turbo = true;
15
+ </script>
16
+ <% else %>
17
+ <script>
18
+ window.ActiveElement.turbo = false;
19
+ </script>
20
+ <% end %>
21
+
7
22
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css" integrity="sha512-iecdLmaskl7CVkqkXNQ/ZH/XLlvWZOJyj7Yy7tcenmpD1ypASozpmT/E0iPtmFIB46ZmdtAc9eNBvH0H/ZpiBw==" crossorigin="anonymous" referrerpolicy="no-referrer" />
8
23
  <link rel="stylesheet"
9
24
  href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/styles/default.min.css">
@@ -48,16 +63,16 @@
48
63
  window.ActiveElement = window.ActiveElement || {};
49
64
  </script>
50
65
 
51
- <%= stylesheet_link_tag 'active_element/application', 'data-turbolinks-track': 'reload' %>
66
+ <%= csrf_meta_tag %>
67
+ <meta name="active_element_controller_path" content="<%= controller_path %>">
68
+
69
+ <%= stylesheet_link_tag 'active_element/active_element' %>
70
+ <%= javascript_include_tag 'active_element/active_element' %>
52
71
 
53
72
  <% if Rails.application.assets&.find_asset('application.css').present? %>
54
- <%= stylesheet_link_tag 'application', 'data-turbolinks-track': 'reload' %>
73
+ <%= stylesheet_link_tag 'application' %>
55
74
  <% end %>
56
75
 
57
- <%= csrf_meta_tag %>
58
-
59
- <meta name="active_element_controller_path" content="<%= controller_path %>">
60
-
61
76
  <%= render_active_element_hook 'active_element/after_head' %>
62
77
  </head>
63
78
 
@@ -97,9 +112,10 @@
97
112
 
98
113
  <%= render_active_element_hook 'active_element/after_content' %>
99
114
 
100
- <%= javascript_include_tag 'active_element/application', 'data-turbolinks-track': 'reload' %>
101
- <% if Rails.application.assets&.find_asset('application.js').present? %>
102
- <%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
115
+ <% if !respond_to?(:javascript_importmap_tags) && Rails.application.assets&.find_asset('application.js').present? %>
116
+ <%= javascript_include_tag 'active_element/active_element', 'data-turbo-track': 'reload', 'data-turbolinks-track': 'reload' %>
117
+ <%= javascript_include_tag 'application', 'data-turbo-track': 'reload', 'data-turbolinks-track': 'reload' %>
103
118
  <% end %>
119
+
104
120
  </body>
105
121
  </html>
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ActiveElement
4
- VERSION = '0.0.16'
4
+ VERSION = '0.0.17'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active_element
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.16
4
+ version: 0.0.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Bob Farrell
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-01-11 00:00:00.000000000 Z
11
+ date: 2024-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootstrap
@@ -113,7 +113,7 @@ files:
113
113
  - Rakefile
114
114
  - active_element.gemspec
115
115
  - app/assets/config/active_element/manifest.js
116
- - app/assets/javascripts/active_element/application.js
116
+ - app/assets/javascripts/active_element/active_element.js
117
117
  - app/assets/javascripts/active_element/confirm.js
118
118
  - app/assets/javascripts/active_element/form.js
119
119
  - app/assets/javascripts/active_element/highlight.js
@@ -128,7 +128,7 @@ files:
128
128
  - app/assets/javascripts/active_element/toast.js
129
129
  - app/assets/stylesheets/active_element/_dark.scss
130
130
  - app/assets/stylesheets/active_element/_variables.scss
131
- - app/assets/stylesheets/active_element/application.scss
131
+ - app/assets/stylesheets/active_element/active_element.scss
132
132
  - app/controllers/active_element/application_controller.rb
133
133
  - app/controllers/concerns/active_element/default_controller_actions.rb
134
134
  - app/views/active_element/_title.html.erb