adt-js-components 0.0.2 → 1.0.5

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "adt-js-components",
3
- "version": "0.0.2",
3
+ "version": "1.0.5",
4
4
  "description": "JavaScript components for Nette framework",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -12,7 +12,7 @@
12
12
  },
13
13
  "dependencies": {
14
14
  "select2": "^4.0.13",
15
- "@ttskch/select2-bootstrap4-theme": "^1.4.0",
15
+ "select2-bootstrap-5-theme": "^1.1.1",
16
16
  "autonumeric": "^4.6.0",
17
17
  "flatpickr": "^4.6.3",
18
18
  "script-loader": "^0.7.2",
@@ -1,6 +1,6 @@
1
1
  import 'select2';
2
2
  import 'select2/dist/css/select2.min.css';
3
- import '@ttskch/select2-bootstrap4-theme/dist/select2-bootstrap4.min.css';
3
+ import 'select2-bootstrap-5-theme/dist/select2-bootstrap-5-theme.css'
4
4
  import 'select2/dist/js/i18n/cs'
5
5
 
6
6
  function run(options) {
@@ -96,7 +96,7 @@ function run(options) {
96
96
  },
97
97
  cache: true
98
98
  },
99
- theme: 'bootstrap4',
99
+ theme: 'bootstrap-5',
100
100
  width: '100%',
101
101
  });
102
102
 
@@ -118,4 +118,4 @@ function run(options) {
118
118
 
119
119
  }
120
120
 
121
- export default { run }
121
+ export default { run }
@@ -1,6 +1,6 @@
1
1
  import 'select2';
2
2
  import 'select2/dist/css/select2.min.css';
3
- import '@ttskch/select2-bootstrap4-theme/dist/select2-bootstrap4.min.css'
3
+ import 'select2-bootstrap-5-theme/dist/select2-bootstrap-5-theme.css'
4
4
  import 'select2/dist/js/i18n/cs'
5
5
 
6
6
  function run(options) {
@@ -8,9 +8,9 @@ function run(options) {
8
8
 
9
9
  $el.find('[data-adt-select2]').each(function () {
10
10
  // musí zde být defaultní jazyk "en", pokud zde nebyl a byla importována čeština.. tak se i bez poslání json params nastavila čeština
11
- $(this).select2($.extend({theme: 'bootstrap4', language: "en"}, $(this).data('adt-select2') || {}));
11
+ $(this).select2($.extend({theme: 'bootstrap-5', language: "en"}, $(this).data('adt-select2') || {}));
12
12
  });
13
13
  });
14
14
  }
15
15
 
16
- export default { run }
16
+ export default { run }
@@ -3,32 +3,39 @@ const Scrollparent = require("scrollparent");
3
3
  function run(options) {
4
4
  $.nette.ext("submitForm", {
5
5
  before: function (xhr, settings) {
6
- if (settings.nette) {
7
- settings.nette.el.closest('form').find('button').prop('disabled', true);
8
- settings.nette.el.find('.js-spinner').removeClass('d-none');
9
- settings.nette.el.closest('form').find('.js-error').remove();
10
- settings.nette.el.closest('form').find('.is-invalid').removeClass('is-invalid');
6
+ if (settings.nette && settings.nette.form && settings.nette.form.attr('data-adt-submit-form') !== undefined) {
7
+ settings.nette.form.data('enabledButtons', settings.nette.form.find('button:enabled'));
8
+ settings.nette.form.find('button').prop('disabled', true);
9
+ settings.nette.el.css('width', settings.nette.el.outerWidth());
10
+ settings.nette.el.data('originalContent', settings.nette.el.html());
11
+ settings.nette.el.html('<span class="spinner-border spinner-border-sm"></span>');
12
+ settings.nette.form.find('.alert-danger').remove();
13
+ settings.nette.form.find('.is-invalid').removeClass('is-invalid');
11
14
  }
12
15
  },
13
16
  success: function (payload, status, xhr, settings) {
14
17
  // if there is no redirect, we will enable buttons
15
- if (!payload.redirect && settings.nette) {
16
- settings.nette.el.find('.js-spinner').addClass('d-none');
17
- settings.nette.el.closest('form').find('button').prop('disabled', false);
18
+ if (!payload.redirect && settings.nette && settings.nette.form && settings.nette.form.attr('data-adt-submit-form') !== undefined) {
19
+ settings.nette.el.html(settings.nette.el.data('originalContent'));
20
+ settings.nette.form.data('enabledButtons').each(function () {
21
+ $(this).prop('disabled', false);
22
+ });
18
23
  }
19
24
  },
20
25
  error: function (xhr, status, error, settings) {
21
- if (settings.nette) {
22
- settings.nette.el.closest('form').find('.js-errors').append('<div class="alert alert-danger js-error">' + xhr.responseJSON['error'] + '</div>');
26
+ if (settings.nette && settings.nette.form && settings.nette.form.attr('data-adt-submit-form') !== undefined) {
27
+ settings.nette.form.prepend('<div class="alert alert-danger">' + xhr.responseText + '</div>');
23
28
 
24
- settings.nette.el.find('.js-spinner').addClass('d-none');
25
- settings.nette.el.closest('form').find('button').prop('disabled', false);
29
+ settings.nette.el.html(settings.nette.el.data('originalContent'));
30
+ settings.nette.form.data('enabledButtons').each(function () {
31
+ $(this).prop('disabled', false);
32
+ });
26
33
  }
27
34
  },
28
35
  complete: function (xhr, status, settings) {
29
36
  // if there are errors we will scroll to first of them
30
- if (settings.nette && settings.nette.el.closest('form').find('.js-error').length > 0) {
31
- const $error = settings.nette.el.closest('form').find('.js-error:first');
37
+ if (settings.nette && settings.nette.form && settings.nette.form.attr('data-adt-submit-form') !== undefined && settings.nette.form.find('.alert-danger').length > 0) {
38
+ const $error = settings.nette.form.find('.alert-danger:first');
32
39
 
33
40
  // we have to find first scrollable element (it can be document or modal for example)
34
41
  let scrollParent = Scrollparent($error[0]);
@@ -44,4 +51,4 @@ function run(options) {
44
51
  });
45
52
  }
46
53
 
47
- export default { run }
54
+ export default { run }