@optionfactory/fml 9.0.0-rc13 → 9.0.0-rc14

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.
@@ -21,7 +21,7 @@
21
21
  },
22
22
  {
23
23
  "name": "ful-dialog",
24
- "description": "A modal dialog on the native platform: header, body and buttons, the header attribute naming its heading, opened by any element carrying dialog-target set to its id, or programmatically through open()/ask(), which answer with how the dialog ended, or through update(callback), which opens it on a loading state and then shows either what the callback delivered or the problems of a rejection. Longer explanations belong here, shorter ones in ful-tooltip.",
24
+ "description": "A modal dialog on the native platform: header, body and buttons, the header attribute naming its heading, opened by any element carrying dialog-target set to its id, or programmatically through open()/ask(), which answer with how the dialog ended, or through update(callback), which opens it on a loading state and then shows either what the callback delivered or the problems of a rejection. Longer explanations belong here, shorter ones in ful-tooltip. Dialog.ask(header, body, buttons) and Dialog.confirm(header, body, labels) ask a question in a transient one, building, showing, answering and removing the element themselves; a confirm's cancel, close and Escape all answer the negative.",
25
25
  "attributes": [
26
26
  {
27
27
  "name": "header",
@@ -39,10 +39,10 @@
39
39
  },
40
40
  {
41
41
  "name": "ful-drawer",
42
- "description": "A side panel drawer on the native dialog platform: a header with its title (the title attribute, or update()'s own) and close button, and a body that opens in a loading state, then shows either the content delivered by update(title, callback) (or the slotted one, when it is never updated) or the error a rejecting callback carries. placement picks the side, end by default, start its mirror. Any element carrying dialog-target set to its id opens it too.",
42
+ "description": "A side panel drawer on the native dialog platform: a header with its title (the header attribute, or update()'s own) and close button, and a body that opens in a loading state, then shows either the content delivered by update(header, callback) (or the slotted one, when it is never updated) or the error a rejecting callback carries. placement picks the side, end by default, start its mirror. Any element carrying dialog-target set to its id opens it too.",
43
43
  "attributes": [
44
44
  {
45
- "name": "title",
45
+ "name": "header",
46
46
  "description": "The drawer's title, shown in its header. Text only, and also what update() re-titles the panel with. (string)"
47
47
  },
48
48
  {
@@ -57,7 +57,7 @@
57
57
  },
58
58
  {
59
59
  "name": "ful-toasts",
60
- "description": "A transient feedback region, one per page: each show() (or a show-toast document event carrying the same detail) appends a toast that dismisses itself after its timeout, the element's timeout attribute or five seconds by default, and carries its own dismiss button. severity picks the theme and the announcement, info by default, success, warning and error, the error one announced as an alert; a Failure message shows its problems' reasons.",
60
+ "description": "A transient feedback region, one per page: each show() (or a show-toast document event carrying the same detail) appends a toast that dismisses itself after its timeout, the element's timeout attribute or five seconds by default, and carries its own dismiss button. severity picks the theme and the announcement, info by default, success, warning and error, the error one announced as an alert; a Failure message shows its problems' reasons. The timer holds while the toast is hovered or holds the focus, and action: { label, onClick } renders a button beside the message whose click answers and retires the toast, the same option travelling in the event detail.",
61
61
  "attributes": [
62
62
  {
63
63
  "name": "timeout",
@@ -71,7 +71,7 @@
71
71
  "attributes": [
72
72
  {
73
73
  "name": "active",
74
- "description": "The index of the visible panel, zero based, reflected as the active attribute. Clicks, the arrow keys and the property all move it, each move answering with a change event. (number)"
74
+ "description": "The index of the visible panel, zero based, reflected as the active attribute. Clicks, the arrow keys and the property all move it, each move answering with a tabs:change event. (number)"
75
75
  }
76
76
  ]
77
77
  },
@@ -657,6 +657,10 @@
657
657
  "name": "autocomplete",
658
658
  "description": "The autofill token the browser classifies the control by, one of the names the html autocomplete grammar defines (name, given-name, street-address, postal-code, one-time-code, off, ...). It is set on the control itself because the control carries form=\"\", which leaves it without a form owner to inherit a form-wide setting from. Read once at the upgrade. A value outside the grammar reads as on, so an identifier of your own does not switch autofill off. (string)"
659
659
  },
660
+ {
661
+ "name": "operator",
662
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default. (string)"
663
+ },
660
664
  {
661
665
  "name": "disabled",
662
666
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state. (boolean)"
@@ -719,6 +723,10 @@
719
723
  "name": "autocomplete",
720
724
  "description": "The autofill token the browser classifies the control by, one of the names the html autocomplete grammar defines (name, given-name, street-address, postal-code, one-time-code, off, ...). It is set on the control itself because the control carries form=\"\", which leaves it without a form owner to inherit a form-wide setting from. Read once at the upgrade. A value outside the grammar reads as on, so an identifier of your own does not switch autofill off. (string)"
721
725
  },
726
+ {
727
+ "name": "operator",
728
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default. (string)"
729
+ },
722
730
  {
723
731
  "name": "disabled",
724
732
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state. (boolean)"
@@ -781,6 +789,10 @@
781
789
  "name": "autocomplete",
782
790
  "description": "The autofill token the browser classifies the control by, one of the names the html autocomplete grammar defines (name, given-name, street-address, postal-code, one-time-code, off, ...). It is set on the control itself because the control carries form=\"\", which leaves it without a form owner to inherit a form-wide setting from. Read once at the upgrade. A value outside the grammar reads as on, so an identifier of your own does not switch autofill off. (string)"
783
791
  },
792
+ {
793
+ "name": "operator",
794
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default. (string)"
795
+ },
784
796
  {
785
797
  "name": "disabled",
786
798
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state. (boolean)"
@@ -869,6 +881,14 @@
869
881
  "name": "autocomplete",
870
882
  "description": "The autofill token the browser classifies the control by, one of the names the html autocomplete grammar defines (name, given-name, street-address, postal-code, one-time-code, off, ...). It is set on the control itself because the control carries form=\"\", which leaves it without a form owner to inherit a form-wide setting from. Read once at the upgrade. A value outside the grammar reads as on, so an identifier of your own does not switch autofill off. (string)"
871
883
  },
884
+ {
885
+ "name": "operator",
886
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default. (string)"
887
+ },
888
+ {
889
+ "name": "sensitivity",
890
+ "description": "Fixes the case sensitivity for the element's life, on the operator's terms: the button leaves and every tuple carries it. (string)"
891
+ },
872
892
  {
873
893
  "name": "disabled",
874
894
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state. (boolean)"
@@ -1055,7 +1075,7 @@
1055
1075
  },
1056
1076
  {
1057
1077
  "name": "value",
1058
- "description": "The selected keys, comma separated, whether or not the select is multiple. A key given here is trimmed and cannot contain a comma; assign such a key through the property instead. The property answers a key for a single select and an array for a multiple one. (string)"
1078
+ "description": "The selected keys, comma separated, whether or not the select is multiple. A key given here is trimmed and cannot contain a comma; assign such a key through the property instead. The property answers a key for a single select and an array for a multiple one. A single select reads a present but empty attribute as the empty key, the one an <option value=\"\"> carries, where an absent attribute means no selection; a multiple select reads it as no keys. (string)"
1059
1079
  },
1060
1080
  {
1061
1081
  "name": "multiple",
@@ -1069,7 +1089,7 @@
1069
1089
  },
1070
1090
  {
1071
1091
  "name": "ful-dropdown",
1072
- "description": "The options popup of a ful-select, with a localized no-results message when the search matches nothing. Rarely used on its own.",
1092
+ "description": "The options popup of a ful-select, with a localized no-results message when the search matches nothing. An entry whose metadata.disabled is truthy is refused: its row carries aria-disabled and metadata.reason as its title, the arrows and Home/End walk past it, and a click on it changes nothing. Rarely used on its own.",
1073
1093
  "attributes": [
1074
1094
  {
1075
1095
  "name": "listbox",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@optionfactory/fml",
4
- "version": "9.0.0-rc13",
4
+ "version": "9.0.0-rc14",
5
5
  "description-markup": "none",
6
6
  "contributions": {
7
7
  "html": {
@@ -45,7 +45,7 @@
45
45
  },
46
46
  {
47
47
  "name": "ful-dialog",
48
- "description": "A modal dialog on the native platform: header, body and buttons, the header attribute naming its heading, opened by any element carrying dialog-target set to its id, or programmatically through open()/ask(), which answer with how the dialog ended, or through update(callback), which opens it on a loading state and then shows either what the callback delivered or the problems of a rejection. Longer explanations belong here, shorter ones in ful-tooltip.",
48
+ "description": "A modal dialog on the native platform: header, body and buttons, the header attribute naming its heading, opened by any element carrying dialog-target set to its id, or programmatically through open()/ask(), which answer with how the dialog ended, or through update(callback), which opens it on a loading state and then shows either what the callback delivered or the problems of a rejection. Longer explanations belong here, shorter ones in ful-tooltip. Dialog.ask(header, body, buttons) and Dialog.confirm(header, body, labels) ask a question in a transient one, building, showing, answering and removing the element themselves; a confirm's cancel, close and Escape all answer the negative.",
49
49
  "attributes": [
50
50
  {
51
51
  "name": "header",
@@ -99,10 +99,10 @@
99
99
  },
100
100
  {
101
101
  "name": "ful-drawer",
102
- "description": "A side panel drawer on the native dialog platform: a header with its title (the title attribute, or update()'s own) and close button, and a body that opens in a loading state, then shows either the content delivered by update(title, callback) (or the slotted one, when it is never updated) or the error a rejecting callback carries. placement picks the side, end by default, start its mirror. Any element carrying dialog-target set to its id opens it too.",
102
+ "description": "A side panel drawer on the native dialog platform: a header with its title (the header attribute, or update()'s own) and close button, and a body that opens in a loading state, then shows either the content delivered by update(header, callback) (or the slotted one, when it is never updated) or the error a rejecting callback carries. placement picks the side, end by default, start its mirror. Any element carrying dialog-target set to its id opens it too.",
103
103
  "attributes": [
104
104
  {
105
- "name": "title",
105
+ "name": "header",
106
106
  "description": "The drawer's title, shown in its header. Text only, and also what update() re-titles the panel with.",
107
107
  "value": {
108
108
  "kind": "plain",
@@ -149,7 +149,7 @@
149
149
  },
150
150
  {
151
151
  "name": "ful-toasts",
152
- "description": "A transient feedback region, one per page: each show() (or a show-toast document event carrying the same detail) appends a toast that dismisses itself after its timeout, the element's timeout attribute or five seconds by default, and carries its own dismiss button. severity picks the theme and the announcement, info by default, success, warning and error, the error one announced as an alert; a Failure message shows its problems' reasons.",
152
+ "description": "A transient feedback region, one per page: each show() (or a show-toast document event carrying the same detail) appends a toast that dismisses itself after its timeout, the element's timeout attribute or five seconds by default, and carries its own dismiss button. severity picks the theme and the announcement, info by default, success, warning and error, the error one announced as an alert; a Failure message shows its problems' reasons. The timer holds while the toast is hovered or holds the focus, and action: { label, onClick } renders a button beside the message whose click answers and retires the toast, the same option travelling in the event detail.",
153
153
  "attributes": [
154
154
  {
155
155
  "name": "timeout",
@@ -169,7 +169,7 @@
169
169
  "attributes": [
170
170
  {
171
171
  "name": "active",
172
- "description": "The index of the visible panel, zero based, reflected as the active attribute. Clicks, the arrow keys and the property all move it, each move answering with a change event.",
172
+ "description": "The index of the visible panel, zero based, reflected as the active attribute. Clicks, the arrow keys and the property all move it, each move answering with a tabs:change event.",
173
173
  "value": {
174
174
  "kind": "plain",
175
175
  "type": "number"
@@ -188,8 +188,8 @@
188
188
  ],
189
189
  "events": [
190
190
  {
191
- "name": "change",
192
- "description": "Fired with the active index and the previous one whenever the visible panel moves."
191
+ "name": "tabs:change",
192
+ "description": "Fired with the active index and the previous one whenever the visible panel moves. A name of its own rather than the fields' change: the panels are the host's children, so every native change of a field inside them bubbles through the host under that name."
193
193
  },
194
194
  {
195
195
  "name": "section:requested",
@@ -1367,7 +1367,7 @@
1367
1367
  },
1368
1368
  {
1369
1369
  "name": "empty",
1370
- "description": "Shown in place of the rows when a load returns none, replacing the localized default message."
1370
+ "description": "Shown in place of the rows when a load returns none, replacing the localized default message. Rendered per load in the rows' own scope, so its expressions read schema, pageRequest, filterRequest and pageResponse: an empty state can tell nothing-there from a filter that matched nothing."
1371
1371
  },
1372
1372
  {
1373
1373
  "name": "footer",
@@ -1519,6 +1519,14 @@
1519
1519
  "type": "string"
1520
1520
  }
1521
1521
  },
1522
+ {
1523
+ "name": "operator",
1524
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default.",
1525
+ "value": {
1526
+ "kind": "plain",
1527
+ "type": "string"
1528
+ }
1529
+ },
1522
1530
  {
1523
1531
  "name": "disabled",
1524
1532
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state.",
@@ -1661,6 +1669,14 @@
1661
1669
  "type": "string"
1662
1670
  }
1663
1671
  },
1672
+ {
1673
+ "name": "operator",
1674
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default.",
1675
+ "value": {
1676
+ "kind": "plain",
1677
+ "type": "string"
1678
+ }
1679
+ },
1664
1680
  {
1665
1681
  "name": "disabled",
1666
1682
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state.",
@@ -1803,6 +1819,14 @@
1803
1819
  "type": "string"
1804
1820
  }
1805
1821
  },
1822
+ {
1823
+ "name": "operator",
1824
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default.",
1825
+ "value": {
1826
+ "kind": "plain",
1827
+ "type": "string"
1828
+ }
1829
+ },
1806
1830
  {
1807
1831
  "name": "disabled",
1808
1832
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state.",
@@ -2015,6 +2039,22 @@
2015
2039
  "type": "string"
2016
2040
  }
2017
2041
  },
2042
+ {
2043
+ "name": "operator",
2044
+ "description": "Fixes the operator for the element's life: no menu and no button render, and every tuple carries it. The plural is the menu's whitelist; declaring both warns, the singular winning, and an unknown name warns and pins the filter's default.",
2045
+ "value": {
2046
+ "kind": "plain",
2047
+ "type": "string"
2048
+ }
2049
+ },
2050
+ {
2051
+ "name": "sensitivity",
2052
+ "description": "Fixes the case sensitivity for the element's life, on the operator's terms: the button leaves and every tuple carries it.",
2053
+ "value": {
2054
+ "kind": "plain",
2055
+ "type": "string"
2056
+ }
2057
+ },
2018
2058
  {
2019
2059
  "name": "disabled",
2020
2060
  "description": "The field's own disabled claim: the control is disabled and the field is left out of the submitted values, composed with a disabled fieldset ancestry. The property reflects the claim only, matches(':disabled') tells the effective state.",
@@ -2425,7 +2465,7 @@
2425
2465
  },
2426
2466
  {
2427
2467
  "name": "value",
2428
- "description": "The selected keys, comma separated, whether or not the select is multiple. A key given here is trimmed and cannot contain a comma; assign such a key through the property instead. The property answers a key for a single select and an array for a multiple one.",
2468
+ "description": "The selected keys, comma separated, whether or not the select is multiple. A key given here is trimmed and cannot contain a comma; assign such a key through the property instead. The property answers a key for a single select and an array for a multiple one. A single select reads a present but empty attribute as the empty key, the one an <option value=\"\"> carries, where an absent attribute means no selection; a multiple select reads it as no keys.",
2429
2469
  "value": {
2430
2470
  "kind": "plain",
2431
2471
  "type": "string"
@@ -2479,7 +2519,7 @@
2479
2519
  },
2480
2520
  {
2481
2521
  "name": "ful-dropdown",
2482
- "description": "The options popup of a ful-select, with a localized no-results message when the search matches nothing. Rarely used on its own.",
2522
+ "description": "The options popup of a ful-select, with a localized no-results message when the search matches nothing. An entry whose metadata.disabled is truthy is refused: its row carries aria-disabled and metadata.reason as its title, the arrows and Home/End walk past it, and a click on it changes nothing. Rarely used on its own.",
2483
2523
  "attributes": [
2484
2524
  {
2485
2525
  "name": "listbox",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optionfactory/fml",
3
- "version": "9.0.0-rc13",
3
+ "version": "9.0.0-rc14",
4
4
  "type": "module",
5
5
  "main": "./dist/fml.mjs",
6
6
  "module": "./dist/fml.mjs",