alchemy-form 0.1.12 → 0.2.0

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 (88) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/assets/stylesheets/form/alchemy_form.scss +2 -16
  3. package/assets/stylesheets/form/elements/_button.scss +52 -0
  4. package/assets/stylesheets/form/{alchemy_code_input.scss → elements/_code_input.scss} +1 -1
  5. package/assets/stylesheets/form/{alchemy_feedback_input.scss → elements/_feedback_input.scss} +6 -8
  6. package/assets/stylesheets/form/{alchemy_field.scss → elements/_field.scss} +1 -1
  7. package/assets/stylesheets/form/{alchemy_field_array.scss → elements/_field_array.scss} +2 -2
  8. package/assets/stylesheets/form/{alchemy_field_translatable.scss → elements/_field_translatable.scss} +1 -1
  9. package/assets/stylesheets/form/elements/_form.scss +16 -0
  10. package/assets/stylesheets/form/{alchemy_pager.scss → elements/_pager.scss} +1 -1
  11. package/assets/stylesheets/form/{query_builder.scss → elements/_query_builder.scss} +7 -7
  12. package/assets/stylesheets/form/{alchemy_select.scss → elements/_select.scss} +2 -2
  13. package/assets/stylesheets/form/elements/_state.scss +8 -0
  14. package/assets/stylesheets/form/{alchemy_table.scss → elements/_table.scss} +2 -2
  15. package/assets/stylesheets/form/elements/_tabs.scss +47 -0
  16. package/assets/stylesheets/form/{alchemy_toggle.scss → elements/_toggle.scss} +1 -1
  17. package/assets/stylesheets/form/elements/index.scss +14 -0
  18. package/element/00_form_base.js +16 -8
  19. package/element/05_feedback_input.js +4 -13
  20. package/element/10_alchemy_field_custom.js +13 -15
  21. package/element/10_dataprovider.js +282 -0
  22. package/element/15_alchemy_field_entry.js +8 -10
  23. package/element/20_query_builder_base.js +4 -13
  24. package/element/25_query_builder_data.js +2 -2
  25. package/element/30_tab_base.js +29 -0
  26. package/element/40_stateful.js +125 -0
  27. package/element/al_button.js +109 -0
  28. package/element/{code_input.js → al_code_input.js} +1 -10
  29. package/element/{alchemy_field.js → al_field.js} +15 -24
  30. package/element/{alchemy_field_array.js → al_field_array.js} +7 -18
  31. package/element/{alchemy_field_array_entry.js → al_field_array_entry.js} +7 -9
  32. package/element/{alchemy_field_schema.js → al_field_schema.js} +3 -3
  33. package/element/{alchemy_field_translatable.js → al_field_translatable.js} +6 -17
  34. package/element/{alchemy_field_translatable_entry.js → al_field_translatable_entry.js} +2 -4
  35. package/element/{alchemy_form.js → al_form.js} +7 -16
  36. package/element/{alchemy_label.js → al_label.js} +1 -10
  37. package/element/{number_input.js → al_number_input.js} +2 -2
  38. package/element/{alchemy_pager.js → al_pager.js} +49 -41
  39. package/element/{alchemy_password_input.js → al_password_input.js} +0 -0
  40. package/element/{query_builder.js → al_query_builder.js} +3 -12
  41. package/element/{query_builder_entry.js → al_query_builder_entry.js} +2 -2
  42. package/element/{query_builder_group.js → al_query_builder_group.js} +7 -7
  43. package/element/{query_builder_value.js → al_query_builder_value.js} +2 -2
  44. package/element/{query_builder_variable.js → al_query_builder_variable.js} +1 -1
  45. package/element/{alchemy_select.js → al_select.js} +35 -108
  46. package/element/{alchemy_select_item.js → al_select_item.js} +15 -9
  47. package/element/al_state.js +26 -0
  48. package/element/{string_input.js → al_string_input.js} +2 -2
  49. package/element/al_tab_button.js +138 -0
  50. package/element/al_tab_context.js +102 -0
  51. package/element/al_tab_list.js +66 -0
  52. package/element/al_tab_panel.js +44 -0
  53. package/element/{alchemy_table.js → al_table.js} +187 -174
  54. package/element/{alchemy_toggle.js → al_toggle.js} +1 -10
  55. package/helper/form_actions/00_form_action.js +15 -4
  56. package/helper/form_actions/url_action.js +3 -2
  57. package/helper/query_builder_variable_definition/boolean_variable_definition.js +1 -1
  58. package/helper_field/query_builder_field.js +2 -2
  59. package/package.json +2 -2
  60. package/view/form/elements/alchemy_button.hwk +1 -0
  61. package/view/form/elements/alchemy_field.hwk +4 -4
  62. package/view/form/elements/alchemy_field_array.hwk +2 -2
  63. package/view/form/elements/alchemy_field_schema.hwk +2 -2
  64. package/view/form/elements/alchemy_field_translatable.hwk +2 -2
  65. package/view/form/elements/alchemy_field_translatable_entry.hwk +2 -2
  66. package/view/form/elements/query_builder.hwk +1 -1
  67. package/view/form/elements/query_builder_entry.hwk +6 -6
  68. package/view/form/elements/query_builder_value.hwk +2 -2
  69. package/view/form/elements/query_builder_variable.hwk +2 -2
  70. package/view/form/inputs/edit/belongs_to.hwk +2 -2
  71. package/view/form/inputs/edit/boolean.hwk +2 -2
  72. package/view/form/inputs/edit/enum.hwk +2 -2
  73. package/view/form/inputs/edit/has_and_belongs_to_many.hwk +2 -2
  74. package/view/form/inputs/edit/html.hwk +2 -2
  75. package/view/form/inputs/edit/query_builder.hwk +2 -2
  76. package/view/form/inputs/edit/query_builder_assignment.hwk +2 -2
  77. package/view/form/inputs/edit/query_builder_value.hwk +2 -2
  78. package/view/form/inputs/edit/query_builder_variable.hwk +2 -2
  79. package/view/form/inputs/edit/schema.hwk +2 -2
  80. package/view/form/inputs/edit/sourcecode.hwk +2 -2
  81. package/view/form/inputs/edit_inline/boolean.hwk +2 -2
  82. package/view/form/inputs/view/string.hwk +6 -1
  83. package/view/form/inputs/view_inline/datetime.hwk +8 -4
  84. package/view/form/inputs/view_inline/string.hwk +6 -1
  85. package/view/form/wrappers/default/default.hwk +2 -2
  86. package/helper/widgets/alchemy_field_widget.js +0 -112
  87. package/helper/widgets/alchemy_form_widget.js +0 -183
  88. package/helper/widgets/alchemy_table_widget.js +0 -67
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The alchemy-field element
2
+ * The al-field element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
@@ -16,15 +16,6 @@ const Field = Function.inherits('Alchemy.Element.Form.Base', 'Field');
16
16
  */
17
17
  Field.setTemplateFile('form/elements/alchemy_field');
18
18
 
19
- /**
20
- * The stylesheet to load for this element
21
- *
22
- * @author Jelle De Loecker <jelle@develry.be>
23
- * @since 0.1.0
24
- * @version 0.1.0
25
- */
26
- Field.setStylesheetFile('form/alchemy_field');
27
-
28
19
  /**
29
20
  * Use a new Renderer scope for the contents
30
21
  *
@@ -98,19 +89,19 @@ Field.setAttribute('readonly', {boolean: true});
98
89
  Field.setAssignedProperty('widget_settings');
99
90
 
100
91
  /**
101
- * Get the parent alchemy-form element
92
+ * Get the parent al-form element
102
93
  *
103
94
  * @author Jelle De Loecker <jelle@elevenways.be>
104
95
  * @since 0.1.0
105
- * @version 0.1.4
96
+ * @version 0.2.0
106
97
  */
107
98
  Field.enforceProperty(function alchemy_form(new_value) {
108
99
 
109
100
  if (new_value == null) {
110
- new_value = this.queryUp('alchemy-form');
101
+ new_value = this.queryUp('al-form');
111
102
 
112
103
  if (!new_value && this.field_context) {
113
- new_value = this.field_context.queryUp('alchemy-form');
104
+ new_value = this.field_context.queryUp('al-form');
114
105
  }
115
106
 
116
107
  if (!new_value && this.alchemy_field_schema && this.alchemy_field_schema.alchemy_field) {
@@ -131,16 +122,16 @@ Field.enforceProperty(function alchemy_form(new_value) {
131
122
  Field.addElementGetter('error_area', '.error-area');
132
123
 
133
124
  /**
134
- * Get the optional alchemy-field-schema it belongs to
125
+ * Get the optional al-field-schema it belongs to
135
126
  *
136
127
  * @author Jelle De Loecker <jelle@elevenways.be>
137
128
  * @since 0.1.0
138
- * @version 0.1.0
129
+ * @version 0.2.0
139
130
  */
140
131
  Field.enforceProperty(function alchemy_field_schema(new_value, old_value) {
141
132
 
142
133
  if (!new_value) {
143
- new_value = this.queryUp('alchemy-field-schema');
134
+ new_value = this.queryUp('al-field-schema');
144
135
  }
145
136
 
146
137
  return new_value;
@@ -189,7 +180,7 @@ Field.enforceProperty(function schema(new_value, old_value) {
189
180
  }
190
181
  }
191
182
 
192
- // See if the alchemy-form element has an explicit schema instance
183
+ // See if the al-form element has an explicit schema instance
193
184
  if (!new_value && this.alchemy_form) {
194
185
  new_value = this.alchemy_form.schema;
195
186
  }
@@ -535,7 +526,7 @@ Field.setProperty(function original_value() {
535
526
  *
536
527
  * @author Jelle De Loecker <jelle@elevenways.be>
537
528
  * @since 0.1.0
538
- * @version 0.1.4
529
+ * @version 0.2.0
539
530
  */
540
531
  Field.setProperty(function value_element() {
541
532
 
@@ -543,11 +534,11 @@ Field.setProperty(function value_element() {
543
534
 
544
535
  // Translations always get preference
545
536
  if (this.is_translatable) {
546
- input = this.querySelector('alchemy-field-translatable');
537
+ input = this.querySelector('al-field-translatable');
547
538
  } else if (this.is_array) {
548
- input = this.querySelector('alchemy-field-array');
539
+ input = this.querySelector('al-field-array');
549
540
  } else if (this.contains_schema) {
550
- input = this.querySelector('alchemy-field-schema');
541
+ input = this.querySelector('al-field-schema');
551
542
  }
552
543
 
553
544
  if (!input) {
@@ -779,7 +770,7 @@ Field.setMethod(function removeErrors() {
779
770
  *
780
771
  * @author Jelle De Loecker <jelle@elevenways.be>
781
772
  * @since 0.1.0
782
- * @version 0.1.3
773
+ * @version 0.2.0
783
774
  */
784
775
  Field.setMethod(function retained() {
785
776
 
@@ -795,7 +786,7 @@ Field.setMethod(function retained() {
795
786
  this.id = id;
796
787
  }
797
788
 
798
- let label = this.querySelector('.form-field-info alchemy-label');
789
+ let label = this.querySelector('.form-field-info al-label');
799
790
 
800
791
  if (label && this.value_element) {
801
792
  let v_id = this.id + '_fv';
@@ -1,13 +1,11 @@
1
1
  /**
2
- * The alchemy-field-array element
2
+ * The al-field-array element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
6
6
  * @version 0.1.0
7
7
  */
8
- var FieldArray = Function.inherits('Alchemy.Element.Form.FieldCustom', function FieldArray() {
9
- FieldArray.super.call(this);
10
- });
8
+ const FieldArray = Function.inherits('Alchemy.Element.Form.FieldCustom', 'FieldArray');
11
9
 
12
10
  /**
13
11
  * The template to use for the content of this element
@@ -18,25 +16,16 @@ var FieldArray = Function.inherits('Alchemy.Element.Form.FieldCustom', function
18
16
  */
19
17
  FieldArray.setTemplateFile('form/elements/alchemy_field_array');
20
18
 
21
- /**
22
- * The stylesheet to load for this element
23
- *
24
- * @author Jelle De Loecker <jelle@develry.be>
25
- * @since 0.1.0
26
- * @version 0.1.0
27
- */
28
- FieldArray.setStylesheetFile('form/alchemy_field_array');
29
-
30
19
  /**
31
20
  * Get the live value
32
21
  *
33
22
  * @author Jelle De Loecker <jelle@elevenways.be>
34
23
  * @since 0.1.0
35
- * @version 0.1.0
24
+ * @version 0.2.0
36
25
  */
37
26
  FieldArray.setProperty(function value() {
38
27
 
39
- let entries = this.queryAllNotNested('alchemy-field-array-entry'),
28
+ let entries = this.queryAllNotNested('al-field-array-entry'),
40
29
  result = [],
41
30
  entry,
42
31
  i;
@@ -58,7 +47,7 @@ FieldArray.setProperty(function value() {
58
47
  *
59
48
  * @author Jelle De Loecker <jelle@elevenways.be>
60
49
  * @since 0.1.0
61
- * @version 0.1.0
50
+ * @version 0.2.0
62
51
  */
63
52
  FieldArray.setMethod(function introduced() {
64
53
 
@@ -68,7 +57,7 @@ FieldArray.setMethod(function introduced() {
68
57
 
69
58
  e.preventDefault();
70
59
 
71
- let entry = e.target.queryUp('alchemy-field-array-entry');
60
+ let entry = e.target.queryUp('al-field-array-entry');
72
61
 
73
62
  entry.remove();
74
63
  });
@@ -89,7 +78,7 @@ FieldArray.setMethod(function introduced() {
89
78
  throw new Error('Unable to add new entry for field "' + alchemy_field.field_title + '", no view files found');
90
79
  }
91
80
 
92
- let new_entry = that.createElement('alchemy-field-array-entry');
81
+ let new_entry = that.createElement('al-field-array-entry');
93
82
 
94
83
  new_entry.alchemy_field_array = that;
95
84
 
@@ -1,13 +1,11 @@
1
1
  /**
2
- * The alchemy-field-array-entry element
2
+ * The al-field-array-entry element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
6
6
  * @version 0.1.0
7
7
  */
8
- var FieldArrayEntry = Function.inherits('Alchemy.Element.Form.FieldEntry', function FieldArrayEntry() {
9
- FieldArrayEntry.super.call(this);
10
- });
8
+ const FieldArrayEntry = Function.inherits('Alchemy.Element.Form.FieldEntry', 'FieldArrayEntry');
11
9
 
12
10
  /**
13
11
  * The template to use for the content of this element
@@ -19,16 +17,16 @@ var FieldArrayEntry = Function.inherits('Alchemy.Element.Form.FieldEntry', funct
19
17
  FieldArrayEntry.setTemplateFile('form/elements/alchemy_field_array_entry');
20
18
 
21
19
  /**
22
- * Get a reference to the alchemy-field-array parent
20
+ * Get a reference to the al-field-array parent
23
21
  *
24
22
  * @author Jelle De Loecker <jelle@elevenways.be>
25
23
  * @since 0.1.0
26
- * @version 0.1.0
24
+ * @version 0.2.0
27
25
  */
28
26
  FieldArrayEntry.enforceProperty(function alchemy_field_array(new_value, old_value) {
29
27
 
30
28
  if (!new_value) {
31
- new_value = this.queryUp('alchemy-field-array');
29
+ new_value = this.queryUp('al-field-array');
32
30
  }
33
31
 
34
32
  return new_value;
@@ -39,7 +37,7 @@ FieldArrayEntry.enforceProperty(function alchemy_field_array(new_value, old_valu
39
37
  *
40
38
  * @author Jelle De Loecker <jelle@elevenways.be>
41
39
  * @since 0.1.3
42
- * @version 0.1.3
40
+ * @version 0.2.0
43
41
  */
44
42
  FieldArrayEntry.setProperty(function index() {
45
43
 
@@ -59,7 +57,7 @@ FieldArrayEntry.setProperty(function index() {
59
57
  for (let i = 0; i < container.entries_element.children.length; i++) {
60
58
  child = container.entries_element.children[i];
61
59
 
62
- if (child.tagName == 'ALCHEMY-FIELD-ARRAY-ENTRY') {
60
+ if (child.tagName == 'AL-FIELD-ARRAY-ENTRY') {
63
61
  counter++;
64
62
  }
65
63
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The alchemy-field-schema element
2
+ * The al-field-schema element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
@@ -98,11 +98,11 @@ FieldSchema.setProperty(function sub_fields() {
98
98
  *
99
99
  * @author Jelle De Loecker <jelle@elevenways.be>
100
100
  * @since 0.1.0
101
- * @version 0.1.0
101
+ * @version 0.2.0
102
102
  */
103
103
  FieldSchema.setProperty(function value() {
104
104
 
105
- let entries = this.queryAllNotNested('alchemy-field'),
105
+ let entries = this.queryAllNotNested('al-field'),
106
106
  result = {},
107
107
  entry,
108
108
  i;
@@ -1,13 +1,11 @@
1
1
  /**
2
- * The alchemy-field-translatable element
2
+ * The al-field-translatable element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
6
6
  * @version 0.1.0
7
7
  */
8
- var FieldTranslatable = Function.inherits('Alchemy.Element.Form.FieldCustom', function FieldTranslatable() {
9
- FieldTranslatable.super.call(this);
10
- });
8
+ const FieldTranslatable = Function.inherits('Alchemy.Element.Form.FieldCustom', 'FieldTranslatable');
11
9
 
12
10
  /**
13
11
  * The template to use for the content of this element
@@ -18,25 +16,16 @@ var FieldTranslatable = Function.inherits('Alchemy.Element.Form.FieldCustom', fu
18
16
  */
19
17
  FieldTranslatable.setTemplateFile('form/elements/alchemy_field_translatable');
20
18
 
21
- /**
22
- * The stylesheet to load for this element
23
- *
24
- * @author Jelle De Loecker <jelle@elevenways.be>
25
- * @since 0.1.0
26
- * @version 0.1.0
27
- */
28
- FieldTranslatable.setStylesheetFile('form/alchemy_field_translatable');
29
-
30
19
  /**
31
20
  * Get the live value
32
21
  *
33
22
  * @author Jelle De Loecker <jelle@elevenways.be>
34
23
  * @since 0.1.0
35
- * @version 0.1.0
24
+ * @version 0.2.0
36
25
  */
37
26
  FieldTranslatable.setProperty(function value() {
38
27
 
39
- let entries = this.queryAllNotNested('alchemy-field-translatable-entry'),
28
+ let entries = this.queryAllNotNested('al-field-translatable-entry'),
40
29
  result = {},
41
30
  entry,
42
31
  i;
@@ -58,12 +47,12 @@ FieldTranslatable.setProperty(function value() {
58
47
  *
59
48
  * @author Jelle De Loecker <jelle@elevenways.be>
60
49
  * @since 0.1.0
61
- * @version 0.1.0
50
+ * @version 0.2.0
62
51
  */
63
52
  FieldTranslatable.setMethod(function showPrefix(prefix) {
64
53
 
65
54
  let buttons = this.queryAllNotNested('.prefix-buttons button'),
66
- entries = this.queryAllNotNested('alchemy-field-translatable-entry'),
55
+ entries = this.queryAllNotNested('al-field-translatable-entry'),
67
56
  element,
68
57
  i;
69
58
 
@@ -1,13 +1,11 @@
1
1
  /**
2
- * The alchemy-field-translatable-entry element
2
+ * The al-field-translatable-entry element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
6
6
  * @version 0.1.0
7
7
  */
8
- var FieldTranslatableEntry = Function.inherits('Alchemy.Element.Form.FieldEntry', function FieldTranslatableEntry() {
9
- FieldTranslatableEntry.super.call(this);
10
- });
8
+ const FieldTranslatableEntry = Function.inherits('Alchemy.Element.Form.FieldEntry', 'FieldTranslatableEntry');
11
9
 
12
10
  /**
13
11
  * The template to use for the content of this element
@@ -1,20 +1,11 @@
1
1
  /**
2
- * The alchemy-form element
2
+ * The al-form element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
6
6
  * @version 0.1.0
7
7
  */
8
- var Form = Function.inherits('Alchemy.Element.Form.Base', 'Form');
9
-
10
- /**
11
- * The stylesheet to load for this element
12
- *
13
- * @author Jelle De Loecker <jelle@develry.be>
14
- * @since 0.1.0
15
- * @version 0.1.0
16
- */
17
- Form.setStylesheetFile('form/alchemy_form');
8
+ const Form = Function.inherits('Alchemy.Element.Form.Base', 'Form');
18
9
 
19
10
  /**
20
11
  * The attribute to use for the route
@@ -97,11 +88,11 @@ Form.setProperty(function main_error_area() {
97
88
  *
98
89
  * @author Jelle De Loecker <jelle@elevenways.be>
99
90
  * @since 0.1.0
100
- * @version 0.1.2
91
+ * @version 0.2.0
101
92
  */
102
93
  Form.setProperty(function value() {
103
94
 
104
- let fields = this.queryAllNotNested('alchemy-field'),
95
+ let fields = this.queryAllNotNested('al-field'),
105
96
  result = {},
106
97
  field,
107
98
  key,
@@ -282,7 +273,7 @@ Form.setMethod(async function showViolations(err) {
282
273
  *
283
274
  * @author Jelle De Loecker <jelle@elevenways.be>
284
275
  * @since 0.1.0
285
- * @version 0.1.0
276
+ * @version 0.2.0
286
277
  *
287
278
  * @param {String} path
288
279
  *
@@ -304,9 +295,9 @@ Form.setMethod(function findFieldByPath(path) {
304
295
  }
305
296
 
306
297
  if (current.config && current.config.is_array) {
307
- query = 'alchemy-field-array-entry:nth-child(' + (Number(piece) + 1) + ') .field > *';
298
+ query = 'al-field-array-entry:nth-child(' + (Number(piece) + 1) + ') .field > *';
308
299
  } else {
309
- query = 'alchemy-field[field-name="' + piece + '"]';
300
+ query = 'al-field[field-name="' + piece + '"]';
310
301
  }
311
302
 
312
303
  current = current.queryAllNotNested(query)[0];
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The alchemy-label custom element
2
+ * The al-label custom element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
@@ -7,15 +7,6 @@
7
7
  */
8
8
  const AlchemyLabel = Function.inherits('Alchemy.Element.Form.Base', 'Label');
9
9
 
10
- /**
11
- * The stylesheet to load for this element
12
- *
13
- * @author Jelle De Loecker <jelle@develry.be>
14
- * @since 0.1.0
15
- * @version 0.1.0
16
- */
17
- AlchemyLabel.setStylesheetFile('form/alchemy_form');
18
-
19
10
  /**
20
11
  * The linked element
21
12
  *
@@ -1,11 +1,11 @@
1
1
  /**
2
- * The alchemy-number-input custom element
2
+ * The al-number-input custom element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.3
6
6
  * @version 0.1.3
7
7
  */
8
- var NumberInput = Function.inherits('Alchemy.Element.Form.FeedbackInput', 'NumberInput');
8
+ const NumberInput = Function.inherits('Alchemy.Element.Form.FeedbackInput', 'NumberInput');
9
9
 
10
10
  /**
11
11
  * The hawkejs template to use
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The alchemy-pager element
2
+ * The al-pager element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.0
@@ -12,41 +12,32 @@ const Pager = Function.inherits('Alchemy.Element.Form.Base', 'Pager');
12
12
  *
13
13
  * @author Jelle De Loecker <jelle@elevenways.be>
14
14
  * @since 0.1.0
15
- * @version 0.1.12
15
+ * @version 0.2.0
16
16
  */
17
17
  Pager.setTemplate(`<ul>
18
18
  <li class="afp-first">
19
19
  <a href="#" aria-label="First page">
20
- <al-ico icon-name="left-to-line"></al-ico>
20
+ <al-icon icon-name="left-to-line"></al-icon>
21
21
  </a>
22
22
  </li>
23
23
  <li class="afp-prev">
24
24
  <a href="#" aria-label="Previous page">
25
- <al-ico icon-name="left"></al-ico>
25
+ <al-icon icon-name="left"></al-icon>
26
26
  </a>
27
27
  </li>
28
28
 
29
29
  <li class="afp-next">
30
30
  <a href="#" aria-label="Next page">
31
- <al-ico icon-name="right"></al-ico>
31
+ <al-icon icon-name="right"></al-icon>
32
32
  </a>
33
33
  </li>
34
34
  <li class="afp-last">
35
35
  <a href="#" aria-label="Last page">
36
- <al-ico icon-name="right-to-line"></al-ico>
36
+ <al-icon icon-name="right-to-line"></al-icon>
37
37
  </a>
38
38
  </li>
39
39
  </ul>`, true);
40
40
 
41
- /**
42
- * The stylesheet to load for this element
43
- *
44
- * @author Jelle De Loecker <jelle@develry.be>
45
- * @since 0.1.0
46
- * @version 0.1.0
47
- */
48
- Pager.setStylesheetFile('form/alchemy_pager');
49
-
50
41
  /**
51
42
  * Pager links
52
43
  *
@@ -176,7 +167,7 @@ Pager.setMethod(function getVisiblePagesElements() {
176
167
  *
177
168
  * @author Jelle De Loecker <jelle@elevenways.be>
178
169
  * @since 0.1.0
179
- * @version 0.1.0
170
+ * @version 0.2.0
180
171
  *
181
172
  * @param {Number} page
182
173
  * @param {Number} amount_of_pages
@@ -209,7 +200,8 @@ Pager.setMethod(function showPage(page, amount_of_pages) {
209
200
  nr,
210
201
  i;
211
202
 
212
- if (src && url_param) {
203
+ // Create let scope
204
+ if (true) {
213
205
  let first_anchor = this.link_first.children[0],
214
206
  prev_anchor = this.link_prev.children[0],
215
207
  next_anchor = this.link_next.children[0],
@@ -217,46 +209,59 @@ Pager.setMethod(function showPage(page, amount_of_pages) {
217
209
  data,
218
210
  url;
219
211
 
220
- data = {};
221
- data[url_param] = {page: 1};
222
- url = RURL.parse(src);
223
- url.param(data);
212
+ if (url_param) {
213
+ data = {};
214
+ data[url_param] = {page: 1};
215
+ url = RURL.parse(src);
216
+ url.param(data);
217
+ first_anchor.setAttribute('href', url);
218
+ }
224
219
 
225
- first_anchor.setAttribute('href', url);
220
+ first_anchor.dataset.page = 1;
226
221
 
227
222
  let prev = page - 1;
228
223
 
229
224
  if (prev < 1) prev = 1;
230
225
 
231
- data = {};
232
- data[url_param] = {page: prev};
233
- url = RURL.parse(src);
234
- url.param(data);
226
+ if (url_param) {
227
+ data = {};
228
+ data[url_param] = {page: prev};
229
+ url = RURL.parse(src);
230
+ url.param(data);
231
+ prev_anchor.setAttribute('href', url);
232
+ }
235
233
 
236
- prev_anchor.setAttribute('href', url);
234
+ prev_anchor.dataset.page = prev;
237
235
 
238
236
  let next = page + 1;
239
237
 
240
238
  if (next > amount_of_pages) {
241
239
  next_anchor.href = '#';
242
240
  next_anchor.disabled = true;
241
+ next_anchor.removeAttribute('data-page');
243
242
  } else {
244
243
  next_anchor.disabled = false;
245
244
 
245
+ if (url_param) {
246
+ data = {};
247
+ data[url_param] = {page: next};
248
+ url = RURL.parse(src);
249
+ url.param(data);
250
+ next_anchor.setAttribute('href', url);
251
+ }
252
+
253
+ next_anchor.dataset.page = next;
254
+ }
255
+
256
+ if (url_param) {
246
257
  data = {};
247
- data[url_param] = {page: next};
258
+ data[url_param] = {page: amount_of_pages};
248
259
  url = RURL.parse(src);
249
260
  url.param(data);
250
-
251
- next_anchor.setAttribute('href', url);
261
+ last_anchor.setAttribute('href', url);
252
262
  }
253
263
 
254
- data = {};
255
- data[url_param] = {page: amount_of_pages};
256
- url = RURL.parse(src);
257
- url.param(data);
258
-
259
- last_anchor.setAttribute('href', url);
264
+ last_anchor.dataset.page = amount_of_pages;
260
265
  }
261
266
 
262
267
  for (i = 0; i < page_links.length; i++) {
@@ -316,13 +321,16 @@ Pager.setMethod(function introduced() {
316
321
 
317
322
  this.addEventListener('click', function onClick(e) {
318
323
 
319
- if (e.target.nodeName != 'A') {
320
- return;
321
- }
322
-
323
- let page_nr_el = e.target.queryParents('[data-page]');
324
+ let page_nr_el = e.target.queryUp('[data-page]');
324
325
 
325
326
  if (!page_nr_el) {
327
+
328
+ let anchor = e.target.queryUp('a');
329
+
330
+ if (anchor && anchor.href == '#') {
331
+ e.preventDefault();
332
+ }
333
+
326
334
  return;
327
335
  }
328
336
 
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The alchemy-toggle custom element
2
+ * The al-toggle custom element
3
3
  *
4
4
  * @author Jelle De Loecker <jelle@elevenways.be>
5
5
  * @since 0.1.6
@@ -14,16 +14,7 @@ const QueryBuilder = Function.inherits('Alchemy.Element.Form.Base', 'QueryBuilde
14
14
  * @since 0.1.6
15
15
  * @version 0.1.6
16
16
  */
17
- QueryBuilder.setTemplate(`<alchemy-query-builder-group></alchemy-query-builder-group>`, {plain_html: true, render_immediate: true});
18
-
19
- /**
20
- * The stylesheet to load for this element
21
- *
22
- * @author Jelle De Loecker <jelle@elevenways.be>
23
- * @since 0.1.6
24
- * @version 0.1.6
25
- */
26
- QueryBuilder.setStylesheetFile('form/query_builder');
17
+ QueryBuilder.setTemplate(`<al-query-builder-group></al-query-builder-group>`, {plain_html: true, render_immediate: true});
27
18
 
28
19
  /**
29
20
  * The dataprovider used to get the variables
@@ -41,7 +32,7 @@ QueryBuilder.setAssignedProperty('dataprovider');
41
32
  * @since 0.1.6
42
33
  * @version 0.1.6
43
34
  */
44
- QueryBuilder.addElementGetter('root_group', ':scope > alchemy-query-builder-group');
35
+ QueryBuilder.addElementGetter('root_group', ':scope > al-query-builder-group');
45
36
 
46
37
  /**
47
38
  * Get/set the value
@@ -335,7 +335,7 @@ QueryBuilderEntry.setMethod(async function applyValue(value) {
335
335
  *
336
336
  * @author Jelle De Loecker <jelle@elevenways.be>
337
337
  * @since 0.1.6
338
- * @version 0.1.6
338
+ * @version 0.2.0
339
339
  */
340
340
  QueryBuilderEntry.setMethod(async function applyValueTypeChanges() {
341
341
 
@@ -344,7 +344,7 @@ QueryBuilderEntry.setMethod(async function applyValueTypeChanges() {
344
344
  let type = this.value_type_select.value;
345
345
 
346
346
  if (type == 'variable') {
347
- let select = this.createElement('alchemy-select');
347
+ let select = this.createElement('al-select');
348
348
  select.value_item_template = 'form/select/qb_item';
349
349
  select.option_item_template = 'form/select/qb_item';
350
350