effective_bootstrap 0.9.13 → 0.9.14

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e330704dd9363570d7981034a08e14d29347feae21c7374ce073e322ea6cd5ea
4
- data.tar.gz: d618f09047887bec221b95eb3af1b47be80d3914505f82a88e81d7d138e149a6
3
+ metadata.gz: e313590d625cda7f01ce3ef74c94b204bd8459dc59d7d416dae88766756307bc
4
+ data.tar.gz: a16aea2233b4a3ad497017b73383af5223fcf1b112670135ed900eff7266a115
5
5
  SHA512:
6
- metadata.gz: c0ac3afa88825a5af188d069a7a9a41a4ab677890068408d80fd39a62928306e9172a81d4dd0dc20e586d0f2755e172e78a07eaedc138c92bf2e318f3a8d4d2a
7
- data.tar.gz: 332482707c9bf94e22c7be4e04a16ad2367a4bdb8fac87f11d8240b6e5591af9471e9880586211c92db6c40dbf47238ac026b5f4a06e6d0ffb68f07d7ccf0467
6
+ metadata.gz: 7d805f8d09225797f736d6fb82d762b0f592eeeda68fb02a0e3769675deea349dae569c3081bbdbfa52944156af3500a2b56007fc6f9bb4b79ce6f9d3fdfe987
7
+ data.tar.gz: dd2d509c84b4eea2fac7135ed105cb7971fe4a7a4c59b85a084fe2463627145a751eaa4b43d3a1101e1ab3af5244544d86bac05f7efed1f5846bc5664f122843
@@ -18,6 +18,7 @@
18
18
  //= require ./effective_has_many/input
19
19
  //= require ./effective_integer/input
20
20
  //= require ./effective_number_text/input
21
+ //= require ./effective_password/input
21
22
  //= require ./effective_percent/input
22
23
  //= require ./effective_phone/input
23
24
  //= require ./effective_price/input
@@ -0,0 +1,9 @@
1
+ # Prevent non-currency buttons from being pressed
2
+ $(document).on 'click', 'button[data-effective-password]', (event) ->
3
+ $obj = $(event.currentTarget)
4
+ $input = $obj.closest('.input-group')
5
+
6
+ $input.find('input').attr('type', $obj.data('effective-password'))
7
+ $input.find('button[data-effective-password]').toggle()
8
+
9
+ false
@@ -0,0 +1 @@
1
+ //= require ./initialize
@@ -3,11 +3,25 @@ module Effective
3
3
  class PasswordField < Effective::FormInput
4
4
 
5
5
  def input_html_options
6
- { class: 'form-control', id: tag_id }
6
+ { class: 'form-control effective_password', id: tag_id }
7
7
  end
8
8
 
9
9
  def input_group_options
10
- { input_group: { class: 'input-group' }, prepend: content_tag(:span, icon('lock'), class: 'input-group-text') }
10
+ { input_group: { class: 'input-group' }, append: eyes }
11
+ end
12
+
13
+ def eyes
14
+ content_tag(:button, icon('eye'),
15
+ class: 'btn input-group-text',
16
+ title: 'Show password',
17
+ 'data-effective-password': 'text'
18
+ ) +
19
+ content_tag(:button, icon('eye-off'),
20
+ class: 'btn input-group-text',
21
+ title: 'Hide password',
22
+ style: 'display: none;',
23
+ 'data-effective-password': 'password'
24
+ )
11
25
  end
12
26
 
13
27
  def feedback_options
@@ -1,3 +1,3 @@
1
1
  module EffectiveBootstrap
2
- VERSION = '0.9.13'.freeze
2
+ VERSION = '0.9.14'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_bootstrap
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.13
4
+ version: 0.9.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-16 00:00:00.000000000 Z
11
+ date: 2021-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -440,6 +440,8 @@ files:
440
440
  - app/assets/javascripts/effective_integer/input.js
441
441
  - app/assets/javascripts/effective_number_text/initialize.js.coffee
442
442
  - app/assets/javascripts/effective_number_text/input.js
443
+ - app/assets/javascripts/effective_password/initialize.js.coffee
444
+ - app/assets/javascripts/effective_password/input.js
443
445
  - app/assets/javascripts/effective_percent/initialize.js.coffee
444
446
  - app/assets/javascripts/effective_percent/input.js
445
447
  - app/assets/javascripts/effective_phone/initialize.js.coffee