@classic-homes/theme-mcp 0.1.5 → 0.1.6

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/dist/cli.js CHANGED
@@ -2389,7 +2389,7 @@ var component_catalog_default = {
2389
2389
  },
2390
2390
  {
2391
2391
  name: "options",
2392
- type: "SelectOption[]",
2392
+ type: "ComboboxOption[]",
2393
2393
  default: "Required",
2394
2394
  required: false,
2395
2395
  description: "Array of options"
@@ -2397,6 +2397,7 @@ var component_catalog_default = {
2397
2397
  {
2398
2398
  name: "placeholder",
2399
2399
  type: "string",
2400
+ default: "'Select an option...'",
2400
2401
  required: false,
2401
2402
  description: "Placeholder text"
2402
2403
  },
@@ -2431,7 +2432,19 @@ var component_catalog_default = {
2431
2432
  name: "id",
2432
2433
  type: "string",
2433
2434
  required: false,
2434
- description: "Element ID"
2435
+ description: "Element ID (auto-generated if empty)"
2436
+ },
2437
+ {
2438
+ name: "label",
2439
+ type: "string",
2440
+ required: false,
2441
+ description: "Label text"
2442
+ },
2443
+ {
2444
+ name: "hint",
2445
+ type: "string",
2446
+ required: false,
2447
+ description: "Hint text below the input"
2435
2448
  },
2436
2449
  {
2437
2450
  name: "error",
@@ -2464,6 +2477,12 @@ var component_catalog_default = {
2464
2477
  type: "(query: string) => void",
2465
2478
  required: false,
2466
2479
  description: "Callback for search queries"
2480
+ },
2481
+ {
2482
+ name: "class",
2483
+ type: "string",
2484
+ required: false,
2485
+ description: "Additional CSS classes"
2467
2486
  }
2468
2487
  ],
2469
2488
  variants: [],
@@ -2492,11 +2511,11 @@ var component_catalog_default = {
2492
2511
  },
2493
2512
  {
2494
2513
  title: "User Search",
2495
- code: '<script>\n let selectedUser = $state(\'\');\n let users = $state([]);\n let loading = $state(false);\n\n async function searchUsers(query: string) {\n if (!query) {\n users = [];\n return;\n }\n loading = true;\n const response = await fetch(`/api/users?search=${query}`);\n users = await response.json();\n loading = false;\n }\n</script>\n\n<Combobox\n options={users}\n bind:value={selectedUser}\n onSearch={searchUsers}\n {loading}\n placeholder="Search users..."\n emptyMessage="No users found"\n/>'
2514
+ code: '<script>\n let selectedUser = $state(\'\');\n let users = $state([]);\n let loading = $state(false);\n\n async function searchUsers(query: string) {\n if (!query) {\n users = [];\n return;\n }\n loading = true;\n const response = await fetch(`/api/users?search=${query}`);\n users = await response.json();\n loading = false;\n }\n</script>\n\n<Combobox\n label="User"\n options={users}\n bind:value={selectedUser}\n onSearch={searchUsers}\n {loading}\n placeholder="Search users..."\n emptyMessage="No users found"\n/>'
2496
2515
  },
2497
2516
  {
2498
2517
  title: "Location Autocomplete",
2499
- code: '<Combobox\n options={locations}\n bind:value\n onSearch={searchLocations}\n placeholder="Enter city or zip code..."\n emptyMessage="No locations found"\n/>'
2518
+ code: '<Combobox\n label="Location"\n hint="Enter a city name or zip code"\n options={locations}\n bind:value\n onSearch={searchLocations}\n placeholder="Enter city or zip code..."\n emptyMessage="No locations found"\n/>'
2500
2519
  }
2501
2520
  ],
2502
2521
  relatedComponents: [
@@ -3701,6 +3720,12 @@ var component_catalog_default = {
3701
3720
  required: false,
3702
3721
  description: "Label text"
3703
3722
  },
3723
+ {
3724
+ name: "hint",
3725
+ type: "string",
3726
+ required: false,
3727
+ description: "Hint text below the picker"
3728
+ },
3704
3729
  {
3705
3730
  name: "error",
3706
3731
  type: "string",
@@ -6622,7 +6647,7 @@ var component_catalog_default = {
6622
6647
  },
6623
6648
  {
6624
6649
  name: "options",
6625
- type: "SelectOption[]",
6650
+ type: "MultiSelectOption[]",
6626
6651
  default: "Required",
6627
6652
  required: false,
6628
6653
  description: "Array of options"
@@ -6630,9 +6655,17 @@ var component_catalog_default = {
6630
6655
  {
6631
6656
  name: "placeholder",
6632
6657
  type: "string",
6658
+ default: "'Select options...'",
6633
6659
  required: false,
6634
6660
  description: "Placeholder text"
6635
6661
  },
6662
+ {
6663
+ name: "emptyMessage",
6664
+ type: "string",
6665
+ default: "'No results found.'",
6666
+ required: false,
6667
+ description: "Message when no options match"
6668
+ },
6636
6669
  {
6637
6670
  name: "disabled",
6638
6671
  type: "boolean",
@@ -6648,10 +6681,28 @@ var component_catalog_default = {
6648
6681
  description: "Marks as required"
6649
6682
  },
6650
6683
  {
6651
- name: "maxItems",
6652
- type: "number",
6684
+ name: "name",
6685
+ type: "string",
6653
6686
  required: false,
6654
- description: "Maximum selections allowed"
6687
+ description: "Name attribute for forms"
6688
+ },
6689
+ {
6690
+ name: "id",
6691
+ type: "string",
6692
+ required: false,
6693
+ description: "Element ID (auto-generated if empty)"
6694
+ },
6695
+ {
6696
+ name: "label",
6697
+ type: "string",
6698
+ required: false,
6699
+ description: "Label text"
6700
+ },
6701
+ {
6702
+ name: "hint",
6703
+ type: "string",
6704
+ required: false,
6705
+ description: "Hint text below the input"
6655
6706
  },
6656
6707
  {
6657
6708
  name: "error",
@@ -6659,11 +6710,43 @@ var component_catalog_default = {
6659
6710
  required: false,
6660
6711
  description: "Error message"
6661
6712
  },
6713
+ {
6714
+ name: "max",
6715
+ type: "number",
6716
+ required: false,
6717
+ description: "Maximum selections allowed"
6718
+ },
6719
+ {
6720
+ name: "loading",
6721
+ type: "boolean",
6722
+ default: "false",
6723
+ required: false,
6724
+ description: "Shows loading state"
6725
+ },
6726
+ {
6727
+ name: "debounceMs",
6728
+ type: "number",
6729
+ default: "300",
6730
+ required: false,
6731
+ description: "Debounce time for search"
6732
+ },
6662
6733
  {
6663
6734
  name: "onValueChange",
6664
6735
  type: "(value: string[]) => void",
6665
6736
  required: false,
6666
6737
  description: "Callback when value changes"
6738
+ },
6739
+ {
6740
+ name: "onSearch",
6741
+ type: "(query: string) => void",
6742
+ required: false,
6743
+ description: "Callback for search queries"
6744
+ },
6745
+ {
6746
+ name: "class",
6747
+ type: "string",
6748
+ required: false,
6749
+ description: "Additional CSS classes"
6667
6750
  }
6668
6751
  ],
6669
6752
  variants: [],
@@ -6703,11 +6786,17 @@ var component_catalog_default = {
6703
6786
  ];
6704
6787
  </script>
6705
6788
 
6706
- <MultiSelect label="Tags" options={tagOptions} bind:value={tags} placeholder="Add tags..." />`
6789
+ <MultiSelect
6790
+ label="Tags"
6791
+ hint="Add relevant tags"
6792
+ options={tagOptions}
6793
+ bind:value={tags}
6794
+ placeholder="Add tags..."
6795
+ />`
6707
6796
  },
6708
6797
  {
6709
6798
  title: "Team Members",
6710
- code: '<MultiSelect\n label="Assign to"\n options={teamMembers}\n bind:value={assignees}\n maxItems={5}\n placeholder="Select team members..."\n/>'
6799
+ code: '<MultiSelect\n label="Assign to"\n hint="Select team members to assign this task"\n options={teamMembers}\n bind:value={assignees}\n max={5}\n placeholder="Select team members..."\n/>'
6711
6800
  }
6712
6801
  ],
6713
6802
  relatedComponents: [
@@ -6852,8 +6941,8 @@ var component_catalog_default = {
6852
6941
  props: [
6853
6942
  {
6854
6943
  name: "value",
6855
- type: "number",
6856
- default: "0",
6944
+ type: "number | null",
6945
+ default: "null",
6857
6946
  required: false,
6858
6947
  description: "Current value (bindable)"
6859
6948
  },
@@ -6883,18 +6972,57 @@ var component_catalog_default = {
6883
6972
  required: false,
6884
6973
  description: "Disables the input"
6885
6974
  },
6975
+ {
6976
+ name: "readonly",
6977
+ type: "boolean",
6978
+ default: "false",
6979
+ required: false,
6980
+ description: "Makes input read-only"
6981
+ },
6982
+ {
6983
+ name: "required",
6984
+ type: "boolean",
6985
+ default: "false",
6986
+ required: false,
6987
+ description: "Marks field as required"
6988
+ },
6886
6989
  {
6887
6990
  name: "placeholder",
6888
6991
  type: "string",
6889
6992
  required: false,
6890
6993
  description: "Placeholder text"
6891
6994
  },
6995
+ {
6996
+ name: "name",
6997
+ type: "string",
6998
+ required: false,
6999
+ description: "Name attribute for form submission"
7000
+ },
7001
+ {
7002
+ name: "id",
7003
+ type: "string",
7004
+ required: false,
7005
+ description: "Element ID (auto-generated if empty)"
7006
+ },
7007
+ {
7008
+ name: "showStepper",
7009
+ type: "boolean",
7010
+ default: "true",
7011
+ required: false,
7012
+ description: "Show +/- stepper buttons"
7013
+ },
6892
7014
  {
6893
7015
  name: "label",
6894
7016
  type: "string",
6895
7017
  required: false,
6896
7018
  description: "Label text"
6897
7019
  },
7020
+ {
7021
+ name: "hint",
7022
+ type: "string",
7023
+ required: false,
7024
+ description: "Hint text below the input"
7025
+ },
6898
7026
  {
6899
7027
  name: "error",
6900
7028
  type: "string",
@@ -6903,9 +7031,15 @@ var component_catalog_default = {
6903
7031
  },
6904
7032
  {
6905
7033
  name: "onValueChange",
6906
- type: "(value: number) => void",
7034
+ type: "(value: number | null) => void",
6907
7035
  required: false,
6908
7036
  description: "Callback when value changes"
7037
+ },
7038
+ {
7039
+ name: "class",
7040
+ type: "string",
7041
+ required: false,
7042
+ description: "Additional CSS classes"
6909
7043
  }
6910
7044
  ],
6911
7045
  variants: [],
@@ -6968,17 +7102,48 @@ var component_catalog_default = {
6968
7102
  description: "Disables the input"
6969
7103
  },
6970
7104
  {
6971
- name: "error",
7105
+ name: "required",
7106
+ type: "boolean",
7107
+ default: "false",
7108
+ required: false,
7109
+ description: "Marks field as required"
7110
+ },
7111
+ {
7112
+ name: "type",
7113
+ type: "'numeric' | 'alphanumeric'",
7114
+ default: "'numeric'",
7115
+ required: false,
7116
+ description: "Input type"
7117
+ },
7118
+ {
7119
+ name: "name",
6972
7120
  type: "string",
6973
7121
  required: false,
6974
- description: "Error message"
7122
+ description: "Name attribute for form submission"
6975
7123
  },
6976
7124
  {
6977
- name: "autoFocus",
6978
- type: "boolean",
6979
- default: "false",
7125
+ name: "id",
7126
+ type: "string",
7127
+ required: false,
7128
+ description: "Element ID (auto-generated if empty)"
7129
+ },
7130
+ {
7131
+ name: "label",
7132
+ type: "string",
6980
7133
  required: false,
6981
- description: "Auto-focus first input"
7134
+ description: "Label text"
7135
+ },
7136
+ {
7137
+ name: "hint",
7138
+ type: "string",
7139
+ required: false,
7140
+ description: "Hint text below the input"
7141
+ },
7142
+ {
7143
+ name: "error",
7144
+ type: "string",
7145
+ required: false,
7146
+ description: "Error message"
6982
7147
  },
6983
7148
  {
6984
7149
  name: "onComplete",
@@ -6991,9 +7156,24 @@ var component_catalog_default = {
6991
7156
  type: "(value: string) => void",
6992
7157
  required: false,
6993
7158
  description: "Callback when value changes"
7159
+ },
7160
+ {
7161
+ name: "class",
7162
+ type: "string",
7163
+ required: false,
7164
+ description: "Additional CSS classes"
7165
+ }
7166
+ ],
7167
+ variants: [
7168
+ {
7169
+ name: "type",
7170
+ values: [
7171
+ "numeric",
7172
+ "alphanumeric"
7173
+ ],
7174
+ default: "numeric"
6994
7175
  }
6995
7176
  ],
6996
- variants: [],
6997
7177
  slots: [
6998
7178
  {
6999
7179
  name: "children",
@@ -7031,8 +7211,13 @@ var component_catalog_default = {
7031
7211
  </script>
7032
7212
 
7033
7213
  <div class="text-center space-y-4">
7034
- <p class="text-muted-foreground">Enter the 6-digit code sent to your email</p>
7035
- <OTPInput bind:value={code} {error} autoFocus onComplete={handleComplete} />
7214
+ <OTPInput
7215
+ label="Verification Code"
7216
+ hint="Enter the 6-digit code sent to your email"
7217
+ bind:value={code}
7218
+ {error}
7219
+ onComplete={handleComplete}
7220
+ />
7036
7221
  {#if verifying}
7037
7222
  <Spinner label="Verifying..." />
7038
7223
  {/if}
@@ -7040,7 +7225,7 @@ var component_catalog_default = {
7040
7225
  },
7041
7226
  {
7042
7227
  title: "Two-Factor Authentication",
7043
- code: "<OTPInput bind:value={twoFactorCode} length={6} autoFocus onComplete={verify2FA} />"
7228
+ code: '<OTPInput\n label="Authentication Code"\n hint="Enter code from your authenticator app"\n bind:value={twoFactorCode}\n length={6}\n onComplete={verify2FA}\n/>'
7044
7229
  }
7045
7230
  ],
7046
7231
  relatedComponents: [
@@ -7734,6 +7919,12 @@ var component_catalog_default = {
7734
7919
  required: false,
7735
7920
  description: "Group label"
7736
7921
  },
7922
+ {
7923
+ name: "hint",
7924
+ type: "string",
7925
+ required: false,
7926
+ description: "Hint text below the radio group"
7927
+ },
7737
7928
  {
7738
7929
  name: "orientation",
7739
7930
  type: "'horizontal' | 'vertical'",
@@ -7759,7 +7950,7 @@ var component_catalog_default = {
7759
7950
  name: "name",
7760
7951
  type: "string",
7761
7952
  required: false,
7762
- description: "Name attribute for forms"
7953
+ description: "Name attribute for forms (auto-generated if empty)"
7763
7954
  },
7764
7955
  {
7765
7956
  name: "error",
@@ -7837,6 +8028,7 @@ var component_catalog_default = {
7837
8028
 
7838
8029
  <RadioGroup
7839
8030
  label="Shipping Method"
8031
+ hint="Free shipping on orders over $50"
7840
8032
  name="shipping"
7841
8033
  options={shippingOptions}
7842
8034
  bind:value={shipping}
@@ -7874,6 +8066,7 @@ var component_catalog_default = {
7874
8066
  title: "Survey Scale",
7875
8067
  code: `<RadioGroup
7876
8068
  label="How satisfied are you?"
8069
+ hint="1 = Very Dissatisfied, 5 = Very Satisfied"
7877
8070
  name="satisfaction"
7878
8071
  options={[
7879
8072
  { value: '1', label: 'Very Dissatisfied' },
@@ -8282,13 +8475,19 @@ var component_catalog_default = {
8282
8475
  name: "id",
8283
8476
  type: "string",
8284
8477
  required: false,
8285
- description: "Element ID for accessibility"
8478
+ description: "Element ID (auto-generated if empty)"
8286
8479
  },
8287
8480
  {
8288
8481
  name: "label",
8289
8482
  type: "string",
8290
8483
  required: false,
8291
- description: "Optional label displayed above"
8484
+ description: "Label text"
8485
+ },
8486
+ {
8487
+ name: "hint",
8488
+ type: "string",
8489
+ required: false,
8490
+ description: "Hint text below the select"
8292
8491
  },
8293
8492
  {
8294
8493
  name: "error",
@@ -9010,6 +9209,18 @@ var component_catalog_default = {
9010
9209
  required: false,
9011
9210
  description: "Label text"
9012
9211
  },
9212
+ {
9213
+ name: "hint",
9214
+ type: "string",
9215
+ required: false,
9216
+ description: "Hint text below the slider"
9217
+ },
9218
+ {
9219
+ name: "error",
9220
+ type: "string",
9221
+ required: false,
9222
+ description: "Error message"
9223
+ },
9013
9224
  {
9014
9225
  name: "showValue",
9015
9226
  type: "boolean",
@@ -9076,15 +9287,15 @@ var component_catalog_default = {
9076
9287
  },
9077
9288
  {
9078
9289
  title: "Volume Control",
9079
- code: '<script>\n let volume = $state([70]);\n</script>\n\n<Slider\n label="Volume"\n bind:value={volume}\n min={0}\n max={100}\n showValue\n formatValue={(v) => `${v}%`}\n/>'
9290
+ code: '<script>\n let volume = $state([70]);\n</script>\n\n<Slider\n label="Volume"\n hint="Adjust speaker volume"\n bind:value={volume}\n min={0}\n max={100}\n showValue\n formatValue={(v) => `${v}%`}\n/>'
9080
9291
  },
9081
9292
  {
9082
9293
  title: "Price Filter",
9083
- code: '<script>\n let priceRange = $state([0, 500]);\n</script>\n\n<Slider\n label="Price Range"\n bind:value={priceRange}\n min={0}\n max={1000}\n step={10}\n showValue\n formatValue={(v) => `$${v}`}\n/>'
9294
+ code: '<script>\n let priceRange = $state([0, 500]);\n</script>\n\n<Slider\n label="Price Range"\n hint="Filter products by price"\n bind:value={priceRange}\n min={0}\n max={1000}\n step={10}\n showValue\n formatValue={(v) => `$${v}`}\n/>'
9084
9295
  },
9085
9296
  {
9086
9297
  title: "Temperature",
9087
- code: '<script>\n let temp = $state([72]);\n</script>\n\n<Slider\n label="Temperature"\n bind:value={temp}\n min={60}\n max={85}\n showValue\n formatValue={(v) => `${v}\xB0F`}\n/>'
9298
+ code: '<script>\n let temp = $state([72]);\n</script>\n\n<Slider\n label="Temperature"\n hint="Set thermostat temperature"\n bind:value={temp}\n min={60}\n max={85}\n showValue\n formatValue={(v) => `${v}\xB0F`}\n/>'
9088
9299
  },
9089
9300
  {
9090
9301
  title: "Opacity Control",
@@ -9099,6 +9310,7 @@ var component_catalog_default = {
9099
9310
 
9100
9311
  <Slider
9101
9312
  label="Rating"
9313
+ hint="Rate your experience"
9102
9314
  bind:value={rating}
9103
9315
  min={1}
9104
9316
  max={5}