@mhmo91/schmancy 0.9.14 → 0.9.16
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/custom-elements.json +57 -30
- package/dist/agent/schmancy.agent.js +178 -25
- package/dist/agent/schmancy.agent.js.map +1 -1
- package/dist/agent/schmancy.manifest.json +208 -12
- package/dist/autocomplete-CgWUCUU-.js.map +1 -1
- package/dist/autocomplete-EM0jE7X2.cjs.map +1 -1
- package/dist/button.cjs.map +1 -1
- package/dist/button.js.map +1 -1
- package/dist/checkbox-Br84TiCs.js.map +1 -1
- package/dist/checkbox-DtcFMgZL.cjs.map +1 -1
- package/dist/chips-BNYOweGm.js.map +1 -1
- package/dist/chips-DoCu5YQb.cjs.map +1 -1
- package/dist/extra-BUgyMgjl.cjs.map +1 -1
- package/dist/extra-HwbaUnCD.js.map +1 -1
- package/dist/form-rCZqoAoK.js.map +1 -1
- package/dist/form-wI58M85H.cjs.map +1 -1
- package/dist/handover/agent-runtime-followups.md +247 -0
- package/dist/handover/agent-runtime-v1.md +109 -0
- package/dist/input-BGNZlfL8.cjs.map +1 -1
- package/dist/input-Bc3bVISm.js.map +1 -1
- package/dist/input-chip-CiG61y-N.js.map +1 -1
- package/dist/input-chip-p24lkYtY.cjs.map +1 -1
- package/dist/radio-group-B72sYGnS.js.map +1 -1
- package/dist/radio-group-B7DuNxUq.cjs.map +1 -1
- package/dist/select-DFxoBgEf.cjs.map +1 -1
- package/dist/select-wFDKDLQI.js.map +1 -1
- package/dist/switch.cjs.map +1 -1
- package/dist/switch.js.map +1 -1
- package/dist/textarea-B2544vx9.cjs.map +1 -1
- package/dist/textarea-CS-KdSLz.js.map +1 -1
- package/package.json +3 -2
- package/src/autocomplete/autocomplete.ts +12 -1
- package/src/button/button.ts +6 -1
- package/src/button/icon-button.ts +7 -1
- package/src/checkbox/checkbox.ts +7 -1
- package/src/chips/chips.ts +14 -0
- package/src/chips/input-chip.ts +6 -6
- package/src/extra/countries/countries.ts +10 -0
- package/src/extra/timezone/timezone.ts +8 -1
- package/src/form/form.ts +9 -2
- package/src/input/input.ts +11 -4
- package/src/radio-group/radio-button.ts +10 -1
- package/src/radio-group/radio-group.ts +18 -0
- package/src/select/select.ts +12 -1
- package/src/switch/switch.ts +7 -4
- package/src/textarea/textarea.ts +9 -1
- package/types/src/autocomplete/autocomplete.d.ts +12 -1
- package/types/src/button/button.d.ts +6 -1
- package/types/src/button/icon-button.d.ts +7 -1
- package/types/src/checkbox/checkbox.d.ts +7 -1
- package/types/src/chips/chips.d.ts +14 -0
- package/types/src/chips/input-chip.d.ts +6 -6
- package/types/src/extra/countries/countries.d.ts +10 -0
- package/types/src/extra/timezone/timezone.d.ts +8 -1
- package/types/src/form/form.d.ts +9 -2
- package/types/src/input/input.d.ts +11 -4
- package/types/src/radio-group/radio-button.d.ts +10 -1
- package/types/src/radio-group/radio-group.d.ts +18 -0
- package/types/src/select/select.d.ts +12 -1
- package/types/src/switch/switch.d.ts +7 -4
- package/types/src/textarea/textarea.d.ts +9 -1
|
@@ -31228,7 +31228,13 @@ var qp = {
|
|
|
31228
31228
|
kind: "class",
|
|
31229
31229
|
name: "SchmancyAutocomplete",
|
|
31230
31230
|
tagName: "schmancy-autocomplete",
|
|
31231
|
-
description: "
|
|
31231
|
+
description: "Combobox with type-ahead filtering over a list of `<schmancy-option>` children. Single or multi-select. Form-associated.",
|
|
31232
|
+
summary: "Use when users need to pick from a known list of options but the list is too long for a plain select dropdown. Prefer schmancy-select for short static lists.",
|
|
31233
|
+
platformPrimitive: {
|
|
31234
|
+
tag: "combobox",
|
|
31235
|
+
mode: "change",
|
|
31236
|
+
note: "Composed of a schmancy-input + a floating listbox populated from `<schmancy-option>` children. Multi-select renders selections as schmancy-input-chip chips. Degrades to a datalist-backed native input if the tag never registers."
|
|
31237
|
+
},
|
|
31232
31238
|
attributes: [
|
|
31233
31239
|
{
|
|
31234
31240
|
name: "required",
|
|
@@ -31302,7 +31308,12 @@ var qp = {
|
|
|
31302
31308
|
type: { text: "string" },
|
|
31303
31309
|
default: "''"
|
|
31304
31310
|
}
|
|
31305
|
-
]
|
|
31311
|
+
],
|
|
31312
|
+
events: [{
|
|
31313
|
+
name: "change",
|
|
31314
|
+
description: "`SchmancyAutocompleteChangeEvent` with `{ value }` (single) or `{ value, values }` (multi)."
|
|
31315
|
+
}],
|
|
31316
|
+
examples: ["<schmancy-autocomplete name=\"country\" label=\"Country\" placeholder=\"Start typing…\">\n <schmancy-option value=\"US\">United States</schmancy-option>\n <schmancy-option value=\"CA\">Canada</schmancy-option>\n <schmancy-option value=\"GB\">United Kingdom</schmancy-option>\n</schmancy-autocomplete>"]
|
|
31306
31317
|
}]
|
|
31307
31318
|
},
|
|
31308
31319
|
{
|
|
@@ -31550,7 +31561,13 @@ var qp = {
|
|
|
31550
31561
|
kind: "class",
|
|
31551
31562
|
name: "SchmancyButton",
|
|
31552
31563
|
tagName: "schmancy-button",
|
|
31553
|
-
description: "
|
|
31564
|
+
description: "Material Design button — primary interactive surface for triggering actions or navigation.",
|
|
31565
|
+
summary: "Trigger actions or navigate. Form-associated; participates in native form submission.",
|
|
31566
|
+
platformPrimitive: {
|
|
31567
|
+
tag: "button",
|
|
31568
|
+
mode: "click",
|
|
31569
|
+
note: "Schmancy-skinned native `<button type=\"submit\">`. When `href` is set, degrades to `<a href=\"…\">`. Falls back to plain `<button>` styled with Tailwind if the tag never registers."
|
|
31570
|
+
},
|
|
31554
31571
|
attributes: [
|
|
31555
31572
|
{
|
|
31556
31573
|
name: "variant",
|
|
@@ -31641,6 +31658,7 @@ var qp = {
|
|
|
31641
31658
|
name: "base",
|
|
31642
31659
|
description: "The underlying native `<button>` (or `<a>` when `href` is set)."
|
|
31643
31660
|
}],
|
|
31661
|
+
examples: ["<schmancy-button variant=\"filled\" @click=${() => save()}>Save</schmancy-button>\n<schmancy-button variant=\"outlined\" href=\"/next\">Continue</schmancy-button>"],
|
|
31644
31662
|
contexts: [{
|
|
31645
31663
|
name: "SchmancyButtonSizeContext",
|
|
31646
31664
|
kind: "provide"
|
|
@@ -31654,7 +31672,13 @@ var qp = {
|
|
|
31654
31672
|
kind: "class",
|
|
31655
31673
|
name: "SchmnacyIconButton",
|
|
31656
31674
|
tagName: "schmancy-icon-button",
|
|
31657
|
-
description: "
|
|
31675
|
+
description: "Icon-only button for toolbar actions, close affordances, or overflow menus.",
|
|
31676
|
+
summary: "Compact round/square button wrapping a single icon glyph. Form-associated like schmancy-button.",
|
|
31677
|
+
platformPrimitive: {
|
|
31678
|
+
tag: "button",
|
|
31679
|
+
mode: "click",
|
|
31680
|
+
note: "Schmancy-skinned native `<button>` (or `<a>` when `href` is set). aria-label is required for a11y because there's no text content."
|
|
31681
|
+
},
|
|
31658
31682
|
attributes: [
|
|
31659
31683
|
{
|
|
31660
31684
|
name: "size",
|
|
@@ -31732,7 +31756,8 @@ var qp = {
|
|
|
31732
31756
|
cssParts: [{
|
|
31733
31757
|
name: "base",
|
|
31734
31758
|
description: "The underlying native `<button>` (or `<a>` when `href` is set)."
|
|
31735
|
-
}]
|
|
31759
|
+
}],
|
|
31760
|
+
examples: ["<schmancy-icon-button aria-label=\"Close\" @click=${() => close()}>\n <schmancy-icon>close</schmancy-icon>\n</schmancy-icon-button>"]
|
|
31736
31761
|
}]
|
|
31737
31762
|
},
|
|
31738
31763
|
{
|
|
@@ -32013,6 +32038,13 @@ var qp = {
|
|
|
32013
32038
|
kind: "class",
|
|
32014
32039
|
name: "SchmancyCheckboxElement",
|
|
32015
32040
|
tagName: "schmancy-checkbox",
|
|
32041
|
+
description: "Binary checkbox for multi-select or boolean form fields. Wraps Material Web's `<md-checkbox>`; form-associated.",
|
|
32042
|
+
summary: "Use for \"select many from a list\" or any boolean that's part of a form submission. Prefer schmancy-switch for immediate-effect toggles.",
|
|
32043
|
+
platformPrimitive: {
|
|
32044
|
+
tag: "checkbox",
|
|
32045
|
+
mode: "change",
|
|
32046
|
+
note: "Wraps `<md-checkbox>` from `@material/web`. Degrades to styled native `<input type=\"checkbox\">` if the tag never registers."
|
|
32047
|
+
},
|
|
32016
32048
|
attributes: [
|
|
32017
32049
|
{
|
|
32018
32050
|
name: "value",
|
|
@@ -32058,12 +32090,13 @@ var qp = {
|
|
|
32058
32090
|
],
|
|
32059
32091
|
events: [{
|
|
32060
32092
|
name: "valueChange",
|
|
32061
|
-
description: "
|
|
32093
|
+
description: "`CustomEvent<{ value: boolean }>` when the checkbox is toggled."
|
|
32062
32094
|
}],
|
|
32063
32095
|
slots: [{
|
|
32064
32096
|
name: "",
|
|
32065
32097
|
description: "The label for the checkbox."
|
|
32066
|
-
}]
|
|
32098
|
+
}],
|
|
32099
|
+
examples: ["<schmancy-checkbox name=\"tos\" required>I accept the terms</schmancy-checkbox>"]
|
|
32067
32100
|
}]
|
|
32068
32101
|
},
|
|
32069
32102
|
{
|
|
@@ -32121,6 +32154,13 @@ var qp = {
|
|
|
32121
32154
|
kind: "class",
|
|
32122
32155
|
name: "SchmancyChips",
|
|
32123
32156
|
tagName: "schmancy-chips",
|
|
32157
|
+
description: "Filter-chip group — container for selectable `<schmancy-chip>` children. Single or multi-select.",
|
|
32158
|
+
summary: "Use for filtering or choosing from 2–8 mutually-visible options (\"Status: active / paused / archived\"). Prefer schmancy-select when the list gets long or vertical.",
|
|
32159
|
+
platformPrimitive: {
|
|
32160
|
+
tag: "chip-group",
|
|
32161
|
+
mode: "change",
|
|
32162
|
+
note: "No direct native equivalent. Degrades to a styled schmancy-select with similar semantics if the tag never registers."
|
|
32163
|
+
},
|
|
32124
32164
|
attributes: [
|
|
32125
32165
|
{
|
|
32126
32166
|
name: "wrap",
|
|
@@ -32142,7 +32182,12 @@ var qp = {
|
|
|
32142
32182
|
],
|
|
32143
32183
|
default: "'start'"
|
|
32144
32184
|
}
|
|
32145
|
-
]
|
|
32185
|
+
],
|
|
32186
|
+
events: [{
|
|
32187
|
+
name: "change",
|
|
32188
|
+
description: "`CustomEvent<{ value: string }>` (single) or `{ values: string[] }` (multi)."
|
|
32189
|
+
}],
|
|
32190
|
+
examples: ["<schmancy-chips multi @change=${(e) => this.filters = e.detail.values}>\n <schmancy-chip value=\"active\">Active</schmancy-chip>\n <schmancy-chip value=\"paused\">Paused</schmancy-chip>\n <schmancy-chip value=\"archived\">Archived</schmancy-chip>\n</schmancy-chips>"]
|
|
32146
32191
|
}]
|
|
32147
32192
|
},
|
|
32148
32193
|
{
|
|
@@ -32152,7 +32197,13 @@ var qp = {
|
|
|
32152
32197
|
kind: "class",
|
|
32153
32198
|
name: "SchmancyInputChip",
|
|
32154
32199
|
tagName: "schmancy-input-chip",
|
|
32155
|
-
description: "Input chip
|
|
32200
|
+
description: "Input chip — displays user-provided information (tags, recipients, filters) that can be removed but not toggled. IMPORTANT: Per Material Design 3 specification, input chips do NOT have selected state. They represent discrete pieces of user input (like entered tags, selections from lists, etc.) that can only be removed, not toggled on/off. Use cases: - Displaying selected recipients in an email - Showing applied filters that can be removed - Tags or keywords entered by the user - Selected items from a multi-select dropdown",
|
|
32201
|
+
summary: "Removable pill that represents a single user input value. No selected state — use schmancy-chip (filter chip) for toggleable options.",
|
|
32202
|
+
platformPrimitive: {
|
|
32203
|
+
tag: "chip",
|
|
32204
|
+
mode: "remove",
|
|
32205
|
+
note: "No native equivalent. Composed of a labeled pill + close button. Degrades to a styled `<span>` with a trailing close `<button>` if the tag never registers."
|
|
32206
|
+
},
|
|
32156
32207
|
attributes: [
|
|
32157
32208
|
{
|
|
32158
32209
|
name: "value",
|
|
@@ -33089,14 +33140,21 @@ var qp = {
|
|
|
33089
33140
|
kind: "class",
|
|
33090
33141
|
name: "SchmancyForm",
|
|
33091
33142
|
tagName: "schmancy-form",
|
|
33092
|
-
description: "
|
|
33143
|
+
description: "Ergonomic wrapper around a native `<form>`. Children are reparented into a light-DOM `<form>` on connection so form-associated custom elements resolve `internals.form` via native DOM ancestry. - Form-associated custom elements (FACE) resolve their `internals.form` correctly via native DOM ancestry. - `new FormData(form)` collects values from every FACE + native control without any manual walking. - `form.reset()` triggers `formResetCallback()` on every FACE. - `form.reportValidity()` runs native validation UI. - `<button type=\"submit\">` and `<schmancy-button type=\"submit\">` both submit the form via the native submitter pipeline. This component exists only to translate the native `submit` / `reset` events into the Schmancy event shape (`detail: FormData`). All heavy lifting is the platform's.",
|
|
33144
|
+
summary: "Always wrap form-associated schmancy components in schmancy-form (or a native `<form>`) so `new FormData(form)` just works.",
|
|
33145
|
+
platformPrimitive: {
|
|
33146
|
+
tag: "form",
|
|
33147
|
+
mode: "submit",
|
|
33148
|
+
note: "Light-DOM native `<form>` element. Degrades to a `<form>` if the tag never registers — same semantics, just no CustomEvent translation."
|
|
33149
|
+
},
|
|
33093
33150
|
events: [{
|
|
33094
33151
|
name: "submit",
|
|
33095
33152
|
description: "`CustomEvent<FormData>` emitted when the form is submitted."
|
|
33096
33153
|
}, {
|
|
33097
33154
|
name: "reset",
|
|
33098
33155
|
description: "Emitted after the underlying form resets."
|
|
33099
|
-
}]
|
|
33156
|
+
}],
|
|
33157
|
+
examples: ["<schmancy-form @submit=${(e) => console.log(Object.fromEntries(e.detail))}>\n <schmancy-input name=\"email\" type=\"email\" required></schmancy-input>\n <schmancy-input name=\"password\" type=\"password\" required></schmancy-input>\n <schmancy-button type=\"submit\" variant=\"filled\">Sign in</schmancy-button>\n</schmancy-form>"]
|
|
33100
33158
|
}]
|
|
33101
33159
|
},
|
|
33102
33160
|
{
|
|
@@ -33238,7 +33296,13 @@ var qp = {
|
|
|
33238
33296
|
kind: "class",
|
|
33239
33297
|
name: "SchmancyInput",
|
|
33240
33298
|
tagName: "schmancy-input",
|
|
33241
|
-
description: "
|
|
33299
|
+
description: "Single-line text input — the primary form-text primitive. Form-associated via ElementInternals, so it participates in native `<form>` submission, validation, and reset without additional wiring.",
|
|
33300
|
+
summary: "Text input with Material Design styling, native form integration, and RxJS-debounced input/change/enter events.",
|
|
33301
|
+
platformPrimitive: {
|
|
33302
|
+
tag: "input",
|
|
33303
|
+
mode: "change",
|
|
33304
|
+
note: "Schmancy-skinned native `<input>`. Degrades to `<input class=\"…\">` styled via Tailwind if the tag never registers."
|
|
33305
|
+
},
|
|
33242
33306
|
attributes: [
|
|
33243
33307
|
{
|
|
33244
33308
|
name: "value",
|
|
@@ -33369,7 +33433,22 @@ var qp = {
|
|
|
33369
33433
|
type: { text: "string" },
|
|
33370
33434
|
description: "For datalist support"
|
|
33371
33435
|
}
|
|
33372
|
-
]
|
|
33436
|
+
],
|
|
33437
|
+
events: [
|
|
33438
|
+
{
|
|
33439
|
+
name: "input",
|
|
33440
|
+
description: "`CustomEvent<{value: string}>` on every keystroke."
|
|
33441
|
+
},
|
|
33442
|
+
{
|
|
33443
|
+
name: "change",
|
|
33444
|
+
description: "`CustomEvent<{value: string}>` on blur/change."
|
|
33445
|
+
},
|
|
33446
|
+
{
|
|
33447
|
+
name: "enter",
|
|
33448
|
+
description: "`CustomEvent<{value: string}>` when user presses Enter."
|
|
33449
|
+
}
|
|
33450
|
+
],
|
|
33451
|
+
examples: ["<schmancy-form @submit=${onSubmit}>\n <schmancy-input name=\"email\" type=\"email\" label=\"Email\" required></schmancy-input>\n</schmancy-form>"]
|
|
33373
33452
|
}, {
|
|
33374
33453
|
kind: "class",
|
|
33375
33454
|
name: "SchmancyInputCompat",
|
|
@@ -34700,7 +34779,13 @@ var qp = {
|
|
|
34700
34779
|
kind: "class",
|
|
34701
34780
|
name: "RadioButton",
|
|
34702
34781
|
tagName: "schmancy-radio-button",
|
|
34703
|
-
description: "
|
|
34782
|
+
description: "Single radio button — always rendered as a child of `<schmancy-radio-group>`, never standalone.",
|
|
34783
|
+
summary: "Low-level primitive. Use schmancy-radio-group and pass `.options` for the common path; only instantiate schmancy-radio-button directly when you need per-button custom rendering.",
|
|
34784
|
+
platformPrimitive: {
|
|
34785
|
+
tag: "radio",
|
|
34786
|
+
mode: "change",
|
|
34787
|
+
note: "Schmancy-skinned `<input type=\"radio\">` semantics. Degrades to native radio if the tag never registers."
|
|
34788
|
+
},
|
|
34704
34789
|
attributes: [
|
|
34705
34790
|
{
|
|
34706
34791
|
name: "value",
|
|
@@ -34722,7 +34807,8 @@ var qp = {
|
|
|
34722
34807
|
type: { text: "string" },
|
|
34723
34808
|
default: "''"
|
|
34724
34809
|
}
|
|
34725
|
-
]
|
|
34810
|
+
],
|
|
34811
|
+
examples: ["<schmancy-radio-group name=\"plan\">\n <schmancy-radio-button value=\"free\">Free</schmancy-radio-button>\n <schmancy-radio-button value=\"pro\" checked>Pro</schmancy-radio-button>\n</schmancy-radio-group>"]
|
|
34726
34812
|
}]
|
|
34727
34813
|
},
|
|
34728
34814
|
{
|
|
@@ -34732,6 +34818,13 @@ var qp = {
|
|
|
34732
34818
|
kind: "class",
|
|
34733
34819
|
name: "RadioGroup",
|
|
34734
34820
|
tagName: "schmancy-radio-group",
|
|
34821
|
+
description: "Radio-button group — single-select from a static list of mutually-exclusive options. Form-associated.",
|
|
34822
|
+
summary: "Use for 2–5 mutually-exclusive options where all should stay visible (\"Shipping: standard / express / overnight\"). Prefer schmancy-select when the list grows.",
|
|
34823
|
+
platformPrimitive: {
|
|
34824
|
+
tag: "radiogroup",
|
|
34825
|
+
mode: "change",
|
|
34826
|
+
note: "Renders schmancy-radio-button children. Degrades to a fieldset with native `<input type=\"radio\" name=\"…\">` siblings if the tag never registers."
|
|
34827
|
+
},
|
|
34735
34828
|
attributes: [
|
|
34736
34829
|
{
|
|
34737
34830
|
name: "label",
|
|
@@ -34758,7 +34851,12 @@ var qp = {
|
|
|
34758
34851
|
type: { text: "boolean" },
|
|
34759
34852
|
default: "false"
|
|
34760
34853
|
}
|
|
34761
|
-
]
|
|
34854
|
+
],
|
|
34855
|
+
events: [{
|
|
34856
|
+
name: "change",
|
|
34857
|
+
description: "`SchmancyRadioGroupChangeEvent` with the selected `value`."
|
|
34858
|
+
}],
|
|
34859
|
+
examples: ["<schmancy-radio-group\n name=\"shipping\"\n label=\"Shipping\"\n .options=${[\n { label: 'Standard (5 days)', value: 'standard' },\n { label: 'Express (2 days)', value: 'express' },\n { label: 'Overnight', value: 'overnight' },\n ]}\n></schmancy-radio-group>"]
|
|
34762
34860
|
}]
|
|
34763
34861
|
},
|
|
34764
34862
|
{
|
|
@@ -34812,7 +34910,13 @@ var qp = {
|
|
|
34812
34910
|
kind: "class",
|
|
34813
34911
|
name: "SchmancySelect",
|
|
34814
34912
|
tagName: "schmancy-select",
|
|
34815
|
-
description: "
|
|
34913
|
+
description: "Dropdown selector — single or multi-select from a list of `<schmancy-option>` children. Form-associated.",
|
|
34914
|
+
summary: "Material Design dropdown with type-to-filter, keyboard nav, single or multi-select. Options are declared as `<schmancy-option>` children; value / values props sync with selection.",
|
|
34915
|
+
platformPrimitive: {
|
|
34916
|
+
tag: "select",
|
|
34917
|
+
mode: "change",
|
|
34918
|
+
note: "Floating-UI-positioned listbox. Degrades to native `<select>` styled via Tailwind if the tag never registers, though multi-select UX is lost."
|
|
34919
|
+
},
|
|
34816
34920
|
attributes: [
|
|
34817
34921
|
{
|
|
34818
34922
|
name: "name",
|
|
@@ -34876,7 +34980,12 @@ var qp = {
|
|
|
34876
34980
|
type: { text: "string" },
|
|
34877
34981
|
default: "''"
|
|
34878
34982
|
}
|
|
34879
|
-
]
|
|
34983
|
+
],
|
|
34984
|
+
events: [{
|
|
34985
|
+
name: "change",
|
|
34986
|
+
description: "`SchmancySelectChangeEvent` with `{ value }` (single) or `{ value: string[] }` (multi)."
|
|
34987
|
+
}],
|
|
34988
|
+
examples: ["<schmancy-select name=\"priority\" label=\"Priority\" value=\"medium\">\n <schmancy-option value=\"low\">Low</schmancy-option>\n <schmancy-option value=\"medium\">Medium</schmancy-option>\n <schmancy-option value=\"high\">High</schmancy-option>\n</schmancy-select>"]
|
|
34880
34989
|
}]
|
|
34881
34990
|
},
|
|
34882
34991
|
{
|
|
@@ -35220,7 +35329,13 @@ var qp = {
|
|
|
35220
35329
|
kind: "class",
|
|
35221
35330
|
name: "SchmancySwitch",
|
|
35222
35331
|
tagName: "schmancy-switch",
|
|
35223
|
-
description: "Binary on/off control. Form-associated, keyboard-accessible, semantically a switch (ARIA role=\"switch\"). Distinct from `schmancy-checkbox`: a switch represents an immediate state change, a checkbox represents a selection in a form to be submitted.",
|
|
35332
|
+
description: "Binary on/off control with immediate effect. Form-associated, keyboard-accessible, semantically a switch (ARIA role=\"switch\"). Distinct from `schmancy-checkbox`: a switch represents an immediate state change, a checkbox represents a selection in a form to be submitted.",
|
|
35333
|
+
summary: "Use when flipping the control takes effect right away (e.g. \"Dark mode\", \"Enable notifications\"). Prefer schmancy-checkbox for form submissions.",
|
|
35334
|
+
platformPrimitive: {
|
|
35335
|
+
tag: "switch",
|
|
35336
|
+
mode: "change",
|
|
35337
|
+
note: "Accessible native `<button role=\"switch\" aria-checked>` under the hood. No native HTML element exists; falls back to a styled checkbox if the tag never registers."
|
|
35338
|
+
},
|
|
35224
35339
|
attributes: [
|
|
35225
35340
|
{
|
|
35226
35341
|
name: "checked",
|
|
@@ -35263,7 +35378,8 @@ var qp = {
|
|
|
35263
35378
|
}, {
|
|
35264
35379
|
name: "thumb",
|
|
35265
35380
|
description: "The moving thumb."
|
|
35266
|
-
}]
|
|
35381
|
+
}],
|
|
35382
|
+
examples: ["<schmancy-switch ?checked=${this.darkMode} @change=${(e) => this.darkMode = e.detail.value}>\n Dark mode\n</schmancy-switch>"]
|
|
35267
35383
|
}]
|
|
35268
35384
|
},
|
|
35269
35385
|
{
|
|
@@ -35404,7 +35520,13 @@ var qp = {
|
|
|
35404
35520
|
kind: "class",
|
|
35405
35521
|
name: "SchmancyTextarea",
|
|
35406
35522
|
tagName: "schmancy-textarea",
|
|
35407
|
-
description: "
|
|
35523
|
+
description: "Multi-line text input with auto-resize and form integration. Form-associated.",
|
|
35524
|
+
summary: "Textarea for freeform text — notes, descriptions, messages. Auto-grows with content up to a maxlength.",
|
|
35525
|
+
platformPrimitive: {
|
|
35526
|
+
tag: "textarea",
|
|
35527
|
+
mode: "change",
|
|
35528
|
+
note: "Schmancy-skinned native `<textarea>`. Degrades to styled native `<textarea>` if the tag never registers."
|
|
35529
|
+
},
|
|
35408
35530
|
attributes: [
|
|
35409
35531
|
{
|
|
35410
35532
|
name: "label",
|
|
@@ -35536,7 +35658,15 @@ var qp = {
|
|
|
35536
35658
|
type: { text: "boolean" },
|
|
35537
35659
|
default: "false"
|
|
35538
35660
|
}
|
|
35539
|
-
]
|
|
35661
|
+
],
|
|
35662
|
+
events: [{
|
|
35663
|
+
name: "input",
|
|
35664
|
+
description: "On every keystroke."
|
|
35665
|
+
}, {
|
|
35666
|
+
name: "change",
|
|
35667
|
+
description: "On blur."
|
|
35668
|
+
}],
|
|
35669
|
+
examples: ["<schmancy-textarea name=\"description\" label=\"Description\" rows=\"4\" maxlength=\"500\"></schmancy-textarea>"]
|
|
35540
35670
|
}]
|
|
35541
35671
|
},
|
|
35542
35672
|
{
|
|
@@ -35968,6 +36098,13 @@ var qp = {
|
|
|
35968
36098
|
kind: "class",
|
|
35969
36099
|
name: "SchmancyCountriesSelect",
|
|
35970
36100
|
tagName: "schmancy-select-countries",
|
|
36101
|
+
description: "Country picker — type-ahead autocomplete over the ISO 3166-1 country list. Form-associated.",
|
|
36102
|
+
summary: "Drop-in replacement for schmancy-autocomplete when the options are specifically \"every country\". Pre-seeds the list from countries.data.",
|
|
36103
|
+
platformPrimitive: {
|
|
36104
|
+
tag: "combobox",
|
|
36105
|
+
mode: "change",
|
|
36106
|
+
note: "Composes schmancy-autocomplete with a static options list. Value is the 2-letter ISO code."
|
|
36107
|
+
},
|
|
35971
36108
|
attributes: [
|
|
35972
36109
|
{
|
|
35973
36110
|
name: "value",
|
|
@@ -35998,7 +36135,12 @@ var qp = {
|
|
|
35998
36135
|
type: { text: "string" },
|
|
35999
36136
|
default: "''"
|
|
36000
36137
|
}
|
|
36001
|
-
]
|
|
36138
|
+
],
|
|
36139
|
+
events: [{
|
|
36140
|
+
name: "change",
|
|
36141
|
+
description: "`SchmancyAutocompleteChangeEvent` with `{ value: string }` (the ISO code)."
|
|
36142
|
+
}],
|
|
36143
|
+
examples: ["<schmancy-select-countries name=\"country\" label=\"Shipping country\" required></schmancy-select-countries>"]
|
|
36002
36144
|
}]
|
|
36003
36145
|
},
|
|
36004
36146
|
{
|
|
@@ -36008,7 +36150,13 @@ var qp = {
|
|
|
36008
36150
|
kind: "class",
|
|
36009
36151
|
name: "SchmancyTimezonesSelect",
|
|
36010
36152
|
tagName: "schmancy-select-timezones",
|
|
36011
|
-
description: "Timezone
|
|
36153
|
+
description: "Timezone picker — type-ahead autocomplete over the IANA tz database. Form-associated.",
|
|
36154
|
+
summary: "Drop-in replacement for schmancy-autocomplete when the options are IANA timezone names. Value is the IANA identifier (\"America/Los_Angeles\").",
|
|
36155
|
+
platformPrimitive: {
|
|
36156
|
+
tag: "combobox",
|
|
36157
|
+
mode: "change",
|
|
36158
|
+
note: "Composes schmancy-autocomplete with a static IANA timezones list."
|
|
36159
|
+
},
|
|
36012
36160
|
attributes: [
|
|
36013
36161
|
{
|
|
36014
36162
|
name: "value",
|
|
@@ -36039,7 +36187,12 @@ var qp = {
|
|
|
36039
36187
|
type: { text: "string" },
|
|
36040
36188
|
default: "''"
|
|
36041
36189
|
}
|
|
36042
|
-
]
|
|
36190
|
+
],
|
|
36191
|
+
events: [{
|
|
36192
|
+
name: "change",
|
|
36193
|
+
description: "`SchmancyAutocompleteChangeEvent` with `{ value: string }` (the IANA tz name)."
|
|
36194
|
+
}],
|
|
36195
|
+
examples: ["<schmancy-select-timezones name=\"tz\" label=\"Timezone\" value=\"America/New_York\"></schmancy-select-timezones>"]
|
|
36043
36196
|
}]
|
|
36044
36197
|
},
|
|
36045
36198
|
{
|