@neuronection/assistant-ui 0.48.0 → 0.49.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.
- package/CHANGELOG.md +6 -0
- package/dist/{chunk-GNHADPX6.js → chunk-67FLOT4X.js} +3 -3
- package/dist/{chunk-GNHADPX6.js.map → chunk-67FLOT4X.js.map} +1 -1
- package/dist/{chunk-4XV2FGBS.js → chunk-BCKOBT7T.js} +21 -17
- package/dist/chunk-BCKOBT7T.js.map +1 -0
- package/dist/{chunk-OEBCS7EF.js → chunk-PTTJJEYJ.js} +3 -3
- package/dist/{chunk-OEBCS7EF.js.map → chunk-PTTJJEYJ.js.map} +1 -1
- package/dist/chunk-Q6LSPNCL.js +3 -0
- package/dist/chunk-Q6LSPNCL.js.map +1 -0
- package/dist/{chunk-HA7ZIB7V.js → chunk-RXFQZMSF.js} +3 -3
- package/dist/{chunk-HA7ZIB7V.js.map → chunk-RXFQZMSF.js.map} +1 -1
- package/dist/{chunk-UAZYDEXA.js → chunk-URLF67WR.js} +2 -2
- package/dist/{chunk-UAZYDEXA.js.map → chunk-URLF67WR.js.map} +1 -1
- package/dist/combobox.js +1 -1
- package/dist/countries.d.ts +19 -5
- package/dist/countries.js +212 -53
- package/dist/countries.js.map +1 -1
- package/dist/index.d.ts +7 -0
- package/dist/index.js +7 -7
- package/dist/languages.d.ts +28 -0
- package/dist/languages.js +75 -0
- package/dist/languages.js.map +1 -0
- package/dist/model-picker.js +1 -1
- package/dist/model-registry.js +1 -1
- package/dist/provider-form.d.ts +7 -0
- package/dist/provider-form.js +1 -1
- package/dist/task-assignment-picker.js +1 -1
- package/package.json +5 -1
- package/dist/chunk-4XV2FGBS.js.map +0 -1
package/dist/countries.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/lib/countries.ts"],"names":[],"mappings":"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","file":"countries.js","sourcesContent":["/**\n * Shared country catalog (ISO 3166-1 alpha-2 + English name + flag emoji)\n * for provider-data-residency pickers. Data-only export (ADR-006) — apps\n * render labels/translations as they see fit. Consumed via the\n * `@neuronection/assistant-ui/countries` subpath.\n */\n\nexport interface CountryOption {\n code: string\n name: string\n flag: string\n}\n\nexport const COUNTRIES: CountryOption[] = [\n { code: 'AF', name: 'Afghanistan', flag: '🇦🇫' },\n { code: 'AL', name: 'Albania', flag: '🇦🇱' },\n { code: 'DZ', name: 'Algeria', flag: '🇩🇿' },\n { code: 'AD', name: 'Andorra', flag: '🇦🇩' },\n { code: 'AO', name: 'Angola', flag: '🇦🇴' },\n { code: 'AR', name: 'Argentina', flag: '🇦🇷' },\n { code: 'AM', name: 'Armenia', flag: '🇦🇲' },\n { code: 'AU', name: 'Australia', flag: '🇦🇺' },\n { code: 'AT', name: 'Austria', flag: '🇦🇹' },\n { code: 'AZ', name: 'Azerbaijan', flag: '🇦🇿' },\n { code: 'BS', name: 'Bahamas', flag: '🇧🇸' },\n { code: 'BH', name: 'Bahrain', flag: '🇧🇭' },\n { code: 'BD', name: 'Bangladesh', flag: '🇧🇩' },\n { code: 'BE', name: 'Belgium', flag: '🇧🇪' },\n { code: 'BZ', name: 'Belize', flag: '🇧🇿' },\n { code: 'BJ', name: 'Benin', flag: '🇧🇯' },\n { code: 'BT', name: 'Bhutan', flag: '🇧🇹' },\n { code: 'BO', name: 'Bolivia', flag: '🇧🇴' },\n { code: 'BA', name: 'Bosnia and Herzegovina', flag: '🇧🇦' },\n { code: 'BW', name: 'Botswana', flag: '🇧🇼' },\n { code: 'BR', name: 'Brazil', flag: '🇧🇷' },\n { code: 'BG', name: 'Bulgaria', flag: '🇧🇬' },\n { code: 'BF', name: 'Burkina Faso', flag: '🇧🇫' },\n { code: 'KH', name: 'Cambodia', flag: '🇰🇭' },\n { code: 'CM', name: 'Cameroon', flag: '🇨🇲' },\n { code: 'CA', name: 'Canada', flag: '🇨🇦' },\n { code: 'CL', name: 'Chile', flag: '🇨🇱' },\n { code: 'CN', name: 'China', flag: '🇨🇳' },\n { code: 'CO', name: 'Colombia', flag: '🇨🇴' },\n { code: 'CR', name: 'Costa Rica', flag: '🇨🇷' },\n { code: 'HR', name: 'Croatia', flag: '🇭🇷' },\n { code: 'CU', name: 'Cuba', flag: '🇨🇺' },\n { code: 'CY', name: 'Cyprus', flag: '🇨🇾' },\n { code: 'CZ', name: 'Czech Republic', flag: '🇨🇿' },\n { code: 'DK', name: 'Denmark', flag: '🇩🇰' },\n { code: 'DO', name: 'Dominican Republic', flag: '🇩🇴' },\n { code: 'EC', name: 'Ecuador', flag: '🇪🇨' },\n { code: 'EG', name: 'Egypt', flag: '🇪🇬' },\n { code: 'SV', name: 'El Salvador', flag: '🇸🇻' },\n { code: 'EE', name: 'Estonia', flag: '🇪🇪' },\n { code: 'ET', name: 'Ethiopia', flag: '🇪🇹' },\n { code: 'FJ', name: 'Fiji', flag: '🇫🇯' },\n { code: 'FI', name: 'Finland', flag: '🇫🇮' },\n { code: 'FR', name: 'France', flag: '🇫🇷' },\n { code: 'GE', name: 'Georgia', flag: '🇬🇪' },\n { code: 'DE', name: 'Germany', flag: '🇩🇪' },\n { code: 'GH', name: 'Ghana', flag: '🇬🇭' },\n { code: 'GR', name: 'Greece', flag: '🇬🇷' },\n { code: 'GT', name: 'Guatemala', flag: '🇬🇹' },\n { code: 'HN', name: 'Honduras', flag: '🇭🇳' },\n { code: 'HU', name: 'Hungary', flag: '🇭🇺' },\n { code: 'IS', name: 'Iceland', flag: '🇮🇸' },\n { code: 'IN', name: 'India', flag: '🇮🇳' },\n { code: 'ID', name: 'Indonesia', flag: '🇮🇩' },\n { code: 'IR', name: 'Iran', flag: '🇮🇷' },\n { code: 'IQ', name: 'Iraq', flag: '🇮🇶' },\n { code: 'IE', name: 'Ireland', flag: '🇮🇪' },\n { code: 'IL', name: 'Israel', flag: '🇮🇱' },\n { code: 'IT', name: 'Italy', flag: '🇮🇹' },\n { code: 'JM', name: 'Jamaica', flag: '🇯🇲' },\n { code: 'JP', name: 'Japan', flag: '🇯🇵' },\n { code: 'JO', name: 'Jordan', flag: '🇯🇴' },\n { code: 'KZ', name: 'Kazakhstan', flag: '🇰🇿' },\n { code: 'KE', name: 'Kenya', flag: '🇰🇪' },\n { code: 'KR', name: 'Korea (South)', flag: '🇰🇷' },\n { code: 'KW', name: 'Kuwait', flag: '🇰🇼' },\n { code: 'LV', name: 'Latvia', flag: '🇱🇻' },\n { code: 'LB', name: 'Lebanon', flag: '🇱🇧' },\n { code: 'LY', name: 'Libya', flag: '🇱🇾' },\n { code: 'LT', name: 'Lithuania', flag: '🇱🇹' },\n { code: 'LU', name: 'Luxembourg', flag: '🇱🇺' },\n { code: 'MY', name: 'Malaysia', flag: '🇲🇾' },\n { code: 'MT', name: 'Malta', flag: '🇲🇹' },\n { code: 'MX', name: 'Mexico', flag: '🇲🇽' },\n { code: 'MC', name: 'Monaco', flag: '🇲🇨' },\n { code: 'ME', name: 'Montenegro', flag: '🇲🇪' },\n { code: 'MA', name: 'Morocco', flag: '🇲🇦' },\n { code: 'NL', name: 'Netherlands', flag: '🇳🇱' },\n { code: 'NZ', name: 'New Zealand', flag: '🇳🇿' },\n { code: 'NG', name: 'Nigeria', flag: '🇳🇬' },\n { code: 'NO', name: 'Norway', flag: '🇳🇴' },\n { code: 'PK', name: 'Pakistan', flag: '🇵🇰' },\n { code: 'PA', name: 'Panama', flag: '🇵🇦' },\n { code: 'PY', name: 'Paraguay', flag: '🇵🇾' },\n { code: 'PE', name: 'Peru', flag: '🇵🇪' },\n { code: 'PH', name: 'Philippines', flag: '🇵🇭' },\n { code: 'PL', name: 'Poland', flag: '🇵🇱' },\n { code: 'PT', name: 'Portugal', flag: '🇵🇹' },\n { code: 'QA', name: 'Qatar', flag: '🇶🇦' },\n { code: 'RO', name: 'Romania', flag: '🇷🇴' },\n { code: 'RU', name: 'Russia', flag: '🇷🇺' },\n { code: 'SA', name: 'Saudi Arabia', flag: '🇸🇦' },\n { code: 'RS', name: 'Serbia', flag: '🇷🇸' },\n { code: 'SG', name: 'Singapore', flag: '🇸🇬' },\n { code: 'SK', name: 'Slovakia', flag: '🇸🇰' },\n { code: 'SI', name: 'Slovenia', flag: '🇸🇮' },\n { code: 'ZA', name: 'South Africa', flag: '🇿🇦' },\n { code: 'ES', name: 'Spain', flag: '🇪🇸' },\n { code: 'SE', name: 'Sweden', flag: '🇸🇪' },\n { code: 'CH', name: 'Switzerland', flag: '🇨🇭' },\n { code: 'TW', name: 'Taiwan', flag: '🇹🇼' },\n { code: 'TH', name: 'Thailand', flag: '🇹🇭' },\n { code: 'TN', name: 'Tunisia', flag: '🇹🇳' },\n { code: 'TR', name: 'Turkey', flag: '🇹🇷' },\n { code: 'UA', name: 'Ukraine', flag: '🇺🇦' },\n { code: 'AE', name: 'UAE', flag: '🇦🇪' },\n { code: 'UK', name: 'United Kingdom', flag: '🇬🇧' },\n { code: 'US', name: 'United States', flag: '🇺🇸' },\n { code: 'UY', name: 'Uruguay', flag: '🇺🇾' },\n { code: 'UZ', name: 'Uzbekistan', flag: '🇺🇿' },\n { code: 'VE', name: 'Venezuela', flag: '🇻🇪' },\n { code: 'VN', name: 'Vietnam', flag: '🇻🇳' },\n]\n\nexport const getCountryFlag = (code?: string): string => {\n if (!code) return ''\n const country = COUNTRIES.find(c => c.code === code)\n return country ? country.flag : code\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/lib/countries.ts"],"names":[],"mappings":"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","file":"countries.js","sourcesContent":["/**\n * Shared country catalog: the officially assigned ISO 3166-1 alpha-2\n * list (249 entries) with CLDR English names and\n * code-derived flag emoji, for any country picker (provider data\n * residency, billing, locale pickers). Data-only export (library\n * ADR-006; family ADR-0024) — apps render labels via\n * `countryDisplayName` or their own i18n. Consumed via the\n * `@neuronection/assistant-ui/countries` subpath.\n *\n * No legacy: `GB` is the United Kingdom code (never `UK`); no alias\n * maps, no normalization shims (ADR-0024 policy: zero users, zero\n * compat). `pickCountries` preserves caller order.\n */\n\nexport interface CountryOption {\n code: string\n name: string\n flag: string\n}\n\nexport const COUNTRIES: CountryOption[] = [\n { code: 'AD', name: 'Andorra', flag: '🇦🇩' },\n { code: 'AE', name: 'United Arab Emirates', flag: '🇦🇪' },\n { code: 'AF', name: 'Afghanistan', flag: '🇦🇫' },\n { code: 'AG', name: 'Antigua & Barbuda', flag: '🇦🇬' },\n { code: 'AI', name: 'Anguilla', flag: '🇦🇮' },\n { code: 'AL', name: 'Albania', flag: '🇦🇱' },\n { code: 'AM', name: 'Armenia', flag: '🇦🇲' },\n { code: 'AO', name: 'Angola', flag: '🇦🇴' },\n { code: 'AQ', name: 'Antarctica', flag: '🇦🇶' },\n { code: 'AR', name: 'Argentina', flag: '🇦🇷' },\n { code: 'AS', name: 'American Samoa', flag: '🇦🇸' },\n { code: 'AT', name: 'Austria', flag: '🇦🇹' },\n { code: 'AU', name: 'Australia', flag: '🇦🇺' },\n { code: 'AW', name: 'Aruba', flag: '🇦🇼' },\n { code: 'AX', name: 'Åland Islands', flag: '🇦🇽' },\n { code: 'AZ', name: 'Azerbaijan', flag: '🇦🇿' },\n { code: 'BA', name: 'Bosnia & Herzegovina', flag: '🇧🇦' },\n { code: 'BB', name: 'Barbados', flag: '🇧🇧' },\n { code: 'BD', name: 'Bangladesh', flag: '🇧🇩' },\n { code: 'BE', name: 'Belgium', flag: '🇧🇪' },\n { code: 'BF', name: 'Burkina Faso', flag: '🇧🇫' },\n { code: 'BG', name: 'Bulgaria', flag: '🇧🇬' },\n { code: 'BH', name: 'Bahrain', flag: '🇧🇭' },\n { code: 'BI', name: 'Burundi', flag: '🇧🇮' },\n { code: 'BJ', name: 'Benin', flag: '🇧🇯' },\n { code: 'BL', name: 'St. Barthélemy', flag: '🇧🇱' },\n { code: 'BM', name: 'Bermuda', flag: '🇧🇲' },\n { code: 'BN', name: 'Brunei', flag: '🇧🇳' },\n { code: 'BO', name: 'Bolivia', flag: '🇧🇴' },\n { code: 'BQ', name: 'Caribbean Netherlands', flag: '🇧🇶' },\n { code: 'BR', name: 'Brazil', flag: '🇧🇷' },\n { code: 'BS', name: 'Bahamas', flag: '🇧🇸' },\n { code: 'BT', name: 'Bhutan', flag: '🇧🇹' },\n { code: 'BV', name: 'Bouvet Island', flag: '🇧🇻' },\n { code: 'BW', name: 'Botswana', flag: '🇧🇼' },\n { code: 'BY', name: 'Belarus', flag: '🇧🇾' },\n { code: 'BZ', name: 'Belize', flag: '🇧🇿' },\n { code: 'CA', name: 'Canada', flag: '🇨🇦' },\n { code: 'CC', name: 'Cocos (Keeling) Islands', flag: '🇨🇨' },\n { code: 'CD', name: 'Congo - Kinshasa', flag: '🇨🇩' },\n { code: 'CF', name: 'Central African Republic', flag: '🇨🇫' },\n { code: 'CG', name: 'Congo - Brazzaville', flag: '🇨🇬' },\n { code: 'CH', name: 'Switzerland', flag: '🇨🇭' },\n { code: 'CI', name: 'Côte d’Ivoire', flag: '🇨🇮' },\n { code: 'CK', name: 'Cook Islands', flag: '🇨🇰' },\n { code: 'CL', name: 'Chile', flag: '🇨🇱' },\n { code: 'CM', name: 'Cameroon', flag: '🇨🇲' },\n { code: 'CN', name: 'China', flag: '🇨🇳' },\n { code: 'CO', name: 'Colombia', flag: '🇨🇴' },\n { code: 'CR', name: 'Costa Rica', flag: '🇨🇷' },\n { code: 'CU', name: 'Cuba', flag: '🇨🇺' },\n { code: 'CV', name: 'Cape Verde', flag: '🇨🇻' },\n { code: 'CW', name: 'Curaçao', flag: '🇨🇼' },\n { code: 'CX', name: 'Christmas Island', flag: '🇨🇽' },\n { code: 'CY', name: 'Cyprus', flag: '🇨🇾' },\n { code: 'CZ', name: 'Czechia', flag: '🇨🇿' },\n { code: 'DE', name: 'Germany', flag: '🇩🇪' },\n { code: 'DJ', name: 'Djibouti', flag: '🇩🇯' },\n { code: 'DK', name: 'Denmark', flag: '🇩🇰' },\n { code: 'DM', name: 'Dominica', flag: '🇩🇲' },\n { code: 'DO', name: 'Dominican Republic', flag: '🇩🇴' },\n { code: 'DZ', name: 'Algeria', flag: '🇩🇿' },\n { code: 'EC', name: 'Ecuador', flag: '🇪🇨' },\n { code: 'EE', name: 'Estonia', flag: '🇪🇪' },\n { code: 'EG', name: 'Egypt', flag: '🇪🇬' },\n { code: 'EH', name: 'Western Sahara', flag: '🇪🇭' },\n { code: 'ER', name: 'Eritrea', flag: '🇪🇷' },\n { code: 'ES', name: 'Spain', flag: '🇪🇸' },\n { code: 'ET', name: 'Ethiopia', flag: '🇪🇹' },\n { code: 'FI', name: 'Finland', flag: '🇫🇮' },\n { code: 'FJ', name: 'Fiji', flag: '🇫🇯' },\n { code: 'FK', name: 'Falkland Islands', flag: '🇫🇰' },\n { code: 'FM', name: 'Micronesia', flag: '🇫🇲' },\n { code: 'FO', name: 'Faroe Islands', flag: '🇫🇴' },\n { code: 'FR', name: 'France', flag: '🇫🇷' },\n { code: 'GA', name: 'Gabon', flag: '🇬🇦' },\n { code: 'GB', name: 'United Kingdom', flag: '🇬🇧' },\n { code: 'GD', name: 'Grenada', flag: '🇬🇩' },\n { code: 'GE', name: 'Georgia', flag: '🇬🇪' },\n { code: 'GF', name: 'French Guiana', flag: '🇬🇫' },\n { code: 'GG', name: 'Guernsey', flag: '🇬🇬' },\n { code: 'GH', name: 'Ghana', flag: '🇬🇭' },\n { code: 'GI', name: 'Gibraltar', flag: '🇬🇮' },\n { code: 'GL', name: 'Greenland', flag: '🇬🇱' },\n { code: 'GM', name: 'Gambia', flag: '🇬🇲' },\n { code: 'GN', name: 'Guinea', flag: '🇬🇳' },\n { code: 'GP', name: 'Guadeloupe', flag: '🇬🇵' },\n { code: 'GQ', name: 'Equatorial Guinea', flag: '🇬🇶' },\n { code: 'GR', name: 'Greece', flag: '🇬🇷' },\n { code: 'GS', name: 'South Georgia & South Sandwich Islands', flag: '🇬🇸' },\n { code: 'GT', name: 'Guatemala', flag: '🇬🇹' },\n { code: 'GU', name: 'Guam', flag: '🇬🇺' },\n { code: 'GW', name: 'Guinea-Bissau', flag: '🇬🇼' },\n { code: 'GY', name: 'Guyana', flag: '🇬🇾' },\n { code: 'HK', name: 'Hong Kong SAR China', flag: '🇭🇰' },\n { code: 'HM', name: 'Heard & McDonald Islands', flag: '🇭🇲' },\n { code: 'HN', name: 'Honduras', flag: '🇭🇳' },\n { code: 'HR', name: 'Croatia', flag: '🇭🇷' },\n { code: 'HT', name: 'Haiti', flag: '🇭🇹' },\n { code: 'HU', name: 'Hungary', flag: '🇭🇺' },\n { code: 'ID', name: 'Indonesia', flag: '🇮🇩' },\n { code: 'IE', name: 'Ireland', flag: '🇮🇪' },\n { code: 'IL', name: 'Israel', flag: '🇮🇱' },\n { code: 'IM', name: 'Isle of Man', flag: '🇮🇲' },\n { code: 'IN', name: 'India', flag: '🇮🇳' },\n { code: 'IO', name: 'British Indian Ocean Territory', flag: '🇮🇴' },\n { code: 'IQ', name: 'Iraq', flag: '🇮🇶' },\n { code: 'IR', name: 'Iran', flag: '🇮🇷' },\n { code: 'IS', name: 'Iceland', flag: '🇮🇸' },\n { code: 'IT', name: 'Italy', flag: '🇮🇹' },\n { code: 'JE', name: 'Jersey', flag: '🇯🇪' },\n { code: 'JM', name: 'Jamaica', flag: '🇯🇲' },\n { code: 'JO', name: 'Jordan', flag: '🇯🇴' },\n { code: 'JP', name: 'Japan', flag: '🇯🇵' },\n { code: 'KE', name: 'Kenya', flag: '🇰🇪' },\n { code: 'KG', name: 'Kyrgyzstan', flag: '🇰🇬' },\n { code: 'KH', name: 'Cambodia', flag: '🇰🇭' },\n { code: 'KI', name: 'Kiribati', flag: '🇰🇮' },\n { code: 'KM', name: 'Comoros', flag: '🇰🇲' },\n { code: 'KN', name: 'St. Kitts & Nevis', flag: '🇰🇳' },\n { code: 'KP', name: 'North Korea', flag: '🇰🇵' },\n { code: 'KR', name: 'South Korea', flag: '🇰🇷' },\n { code: 'KW', name: 'Kuwait', flag: '🇰🇼' },\n { code: 'KY', name: 'Cayman Islands', flag: '🇰🇾' },\n { code: 'KZ', name: 'Kazakhstan', flag: '🇰🇿' },\n { code: 'LA', name: 'Laos', flag: '🇱🇦' },\n { code: 'LB', name: 'Lebanon', flag: '🇱🇧' },\n { code: 'LC', name: 'St. Lucia', flag: '🇱🇨' },\n { code: 'LI', name: 'Liechtenstein', flag: '🇱🇮' },\n { code: 'LK', name: 'Sri Lanka', flag: '🇱🇰' },\n { code: 'LR', name: 'Liberia', flag: '🇱🇷' },\n { code: 'LS', name: 'Lesotho', flag: '🇱🇸' },\n { code: 'LT', name: 'Lithuania', flag: '🇱🇹' },\n { code: 'LU', name: 'Luxembourg', flag: '🇱🇺' },\n { code: 'LV', name: 'Latvia', flag: '🇱🇻' },\n { code: 'LY', name: 'Libya', flag: '🇱🇾' },\n { code: 'MA', name: 'Morocco', flag: '🇲🇦' },\n { code: 'MC', name: 'Monaco', flag: '🇲🇨' },\n { code: 'MD', name: 'Moldova', flag: '🇲🇩' },\n { code: 'ME', name: 'Montenegro', flag: '🇲🇪' },\n { code: 'MF', name: 'St. Martin', flag: '🇲🇫' },\n { code: 'MG', name: 'Madagascar', flag: '🇲🇬' },\n { code: 'MH', name: 'Marshall Islands', flag: '🇲🇭' },\n { code: 'MK', name: 'North Macedonia', flag: '🇲🇰' },\n { code: 'ML', name: 'Mali', flag: '🇲🇱' },\n { code: 'MM', name: 'Myanmar (Burma)', flag: '🇲🇲' },\n { code: 'MN', name: 'Mongolia', flag: '🇲🇳' },\n { code: 'MO', name: 'Macao SAR China', flag: '🇲🇴' },\n { code: 'MP', name: 'Northern Mariana Islands', flag: '🇲🇵' },\n { code: 'MQ', name: 'Martinique', flag: '🇲🇶' },\n { code: 'MR', name: 'Mauritania', flag: '🇲🇷' },\n { code: 'MS', name: 'Montserrat', flag: '🇲🇸' },\n { code: 'MT', name: 'Malta', flag: '🇲🇹' },\n { code: 'MU', name: 'Mauritius', flag: '🇲🇺' },\n { code: 'MV', name: 'Maldives', flag: '🇲🇻' },\n { code: 'MW', name: 'Malawi', flag: '🇲🇼' },\n { code: 'MX', name: 'Mexico', flag: '🇲🇽' },\n { code: 'MY', name: 'Malaysia', flag: '🇲🇾' },\n { code: 'MZ', name: 'Mozambique', flag: '🇲🇿' },\n { code: 'NA', name: 'Namibia', flag: '🇳🇦' },\n { code: 'NC', name: 'New Caledonia', flag: '🇳🇨' },\n { code: 'NE', name: 'Niger', flag: '🇳🇪' },\n { code: 'NF', name: 'Norfolk Island', flag: '🇳🇫' },\n { code: 'NG', name: 'Nigeria', flag: '🇳🇬' },\n { code: 'NI', name: 'Nicaragua', flag: '🇳🇮' },\n { code: 'NL', name: 'Netherlands', flag: '🇳🇱' },\n { code: 'NO', name: 'Norway', flag: '🇳🇴' },\n { code: 'NP', name: 'Nepal', flag: '🇳🇵' },\n { code: 'NR', name: 'Nauru', flag: '🇳🇷' },\n { code: 'NU', name: 'Niue', flag: '🇳🇺' },\n { code: 'NZ', name: 'New Zealand', flag: '🇳🇿' },\n { code: 'OM', name: 'Oman', flag: '🇴🇲' },\n { code: 'PA', name: 'Panama', flag: '🇵🇦' },\n { code: 'PE', name: 'Peru', flag: '🇵🇪' },\n { code: 'PF', name: 'French Polynesia', flag: '🇵🇫' },\n { code: 'PG', name: 'Papua New Guinea', flag: '🇵🇬' },\n { code: 'PH', name: 'Philippines', flag: '🇵🇭' },\n { code: 'PK', name: 'Pakistan', flag: '🇵🇰' },\n { code: 'PL', name: 'Poland', flag: '🇵🇱' },\n { code: 'PM', name: 'St. Pierre & Miquelon', flag: '🇵🇲' },\n { code: 'PN', name: 'Pitcairn Islands', flag: '🇵🇳' },\n { code: 'PR', name: 'Puerto Rico', flag: '🇵🇷' },\n { code: 'PS', name: 'Palestinian Territories', flag: '🇵🇸' },\n { code: 'PT', name: 'Portugal', flag: '🇵🇹' },\n { code: 'PW', name: 'Palau', flag: '🇵🇼' },\n { code: 'PY', name: 'Paraguay', flag: '🇵🇾' },\n { code: 'QA', name: 'Qatar', flag: '🇶🇦' },\n { code: 'RE', name: 'Réunion', flag: '🇷🇪' },\n { code: 'RO', name: 'Romania', flag: '🇷🇴' },\n { code: 'RS', name: 'Serbia', flag: '🇷🇸' },\n { code: 'RU', name: 'Russia', flag: '🇷🇺' },\n { code: 'RW', name: 'Rwanda', flag: '🇷🇼' },\n { code: 'SA', name: 'Saudi Arabia', flag: '🇸🇦' },\n { code: 'SB', name: 'Solomon Islands', flag: '🇸🇧' },\n { code: 'SC', name: 'Seychelles', flag: '🇸🇨' },\n { code: 'SD', name: 'Sudan', flag: '🇸🇩' },\n { code: 'SE', name: 'Sweden', flag: '🇸🇪' },\n { code: 'SG', name: 'Singapore', flag: '🇸🇬' },\n { code: 'SH', name: 'St. Helena', flag: '🇸🇭' },\n { code: 'SI', name: 'Slovenia', flag: '🇸🇮' },\n { code: 'SJ', name: 'Svalbard & Jan Mayen', flag: '🇸🇯' },\n { code: 'SK', name: 'Slovakia', flag: '🇸🇰' },\n { code: 'SL', name: 'Sierra Leone', flag: '🇸🇱' },\n { code: 'SM', name: 'San Marino', flag: '🇸🇲' },\n { code: 'SN', name: 'Senegal', flag: '🇸🇳' },\n { code: 'SO', name: 'Somalia', flag: '🇸🇴' },\n { code: 'SR', name: 'Suriname', flag: '🇸🇷' },\n { code: 'SS', name: 'South Sudan', flag: '🇸🇸' },\n { code: 'ST', name: 'São Tomé & Príncipe', flag: '🇸🇹' },\n { code: 'SV', name: 'El Salvador', flag: '🇸🇻' },\n { code: 'SX', name: 'Sint Maarten', flag: '🇸🇽' },\n { code: 'SY', name: 'Syria', flag: '🇸🇾' },\n { code: 'SZ', name: 'Eswatini', flag: '🇸🇿' },\n { code: 'TC', name: 'Turks & Caicos Islands', flag: '🇹🇨' },\n { code: 'TD', name: 'Chad', flag: '🇹🇩' },\n { code: 'TF', name: 'French Southern Territories', flag: '🇹🇫' },\n { code: 'TG', name: 'Togo', flag: '🇹🇬' },\n { code: 'TH', name: 'Thailand', flag: '🇹🇭' },\n { code: 'TJ', name: 'Tajikistan', flag: '🇹🇯' },\n { code: 'TK', name: 'Tokelau', flag: '🇹🇰' },\n { code: 'TL', name: 'Timor-Leste', flag: '🇹🇱' },\n { code: 'TM', name: 'Turkmenistan', flag: '🇹🇲' },\n { code: 'TN', name: 'Tunisia', flag: '🇹🇳' },\n { code: 'TO', name: 'Tonga', flag: '🇹🇴' },\n { code: 'TR', name: 'Türkiye', flag: '🇹🇷' },\n { code: 'TT', name: 'Trinidad & Tobago', flag: '🇹🇹' },\n { code: 'TV', name: 'Tuvalu', flag: '🇹🇻' },\n { code: 'TW', name: 'Taiwan', flag: '🇹🇼' },\n { code: 'TZ', name: 'Tanzania', flag: '🇹🇿' },\n { code: 'UA', name: 'Ukraine', flag: '🇺🇦' },\n { code: 'UG', name: 'Uganda', flag: '🇺🇬' },\n { code: 'UM', name: 'U.S. Outlying Islands', flag: '🇺🇲' },\n { code: 'US', name: 'United States', flag: '🇺🇸' },\n { code: 'UY', name: 'Uruguay', flag: '🇺🇾' },\n { code: 'UZ', name: 'Uzbekistan', flag: '🇺🇿' },\n { code: 'VA', name: 'Vatican City', flag: '🇻🇦' },\n { code: 'VC', name: 'St. Vincent & Grenadines', flag: '🇻🇨' },\n { code: 'VE', name: 'Venezuela', flag: '🇻🇪' },\n { code: 'VG', name: 'British Virgin Islands', flag: '🇻🇬' },\n { code: 'VI', name: 'U.S. Virgin Islands', flag: '🇻🇮' },\n { code: 'VN', name: 'Vietnam', flag: '🇻🇳' },\n { code: 'VU', name: 'Vanuatu', flag: '🇻🇺' },\n { code: 'WF', name: 'Wallis & Futuna', flag: '🇼🇫' },\n { code: 'WS', name: 'Samoa', flag: '🇼🇸' },\n { code: 'YE', name: 'Yemen', flag: '🇾🇪' },\n { code: 'YT', name: 'Mayotte', flag: '🇾🇹' },\n { code: 'ZA', name: 'South Africa', flag: '🇿🇦' },\n { code: 'ZM', name: 'Zambia', flag: '🇿🇲' },\n { code: 'ZW', name: 'Zimbabwe', flag: '🇿🇼' },\n]\n\nexport function findCountry(code?: string): CountryOption | undefined {\n if (!code) return undefined\n return COUNTRIES.find((entry) => entry.code === code.toUpperCase())\n}\n\nexport function pickCountries(codes: string[]): CountryOption[] {\n const picked: CountryOption[] = []\n for (const code of codes) {\n const entry = findCountry(code)\n if (entry) picked.push(entry)\n else console.warn(`[assistant-ui] pickCountries: unknown country code ${code}`)\n }\n return picked\n}\n\nexport function getCountryFlag(code?: string): string {\n if (!code) return ''\n return findCountry(code)?.flag ?? code\n}\n\n/** Localized country name via Intl.DisplayNames; falls back to the\n * catalog English name, then the raw code. Never throws. (`ZZ` is\n * CLDR's \"unknown region\" sentinel — treated as unknown so callers\n * get the raw-code fallback, matching `getCountryFlag`.) */\nexport function countryDisplayName(code: string, locale = 'en'): string {\n const normalized = code.toUpperCase()\n if (normalized === 'ZZ') return findCountry(normalized)?.name ?? normalized\n try {\n const displayed = new Intl.DisplayNames([locale], { type: 'region' }).of(normalized)\n if (displayed && displayed !== normalized) return displayed\n } catch {\n // fall through to catalog fallback\n }\n return findCountry(normalized)?.name ?? normalized\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -574,6 +574,13 @@ interface ProviderFormProps extends React.ComponentProps<'div'> {
|
|
|
574
574
|
label: string;
|
|
575
575
|
}[];
|
|
576
576
|
countryPlaceholder?: string;
|
|
577
|
+
/** Search-input placeholder for the country picker (searchable — the
|
|
578
|
+
* catalog is ~250 entries, ADR-0024). */
|
|
579
|
+
countrySearchPlaceholder?: string;
|
|
580
|
+
/** Empty-search result label for the country picker. */
|
|
581
|
+
countryEmptyLabel?: string;
|
|
582
|
+
/** Accessible name of the country picker's clear button. */
|
|
583
|
+
countryClearLabel?: string;
|
|
577
584
|
/** Hint under the key field; apps mention keyring storage here. */
|
|
578
585
|
apiKeyHelp?: string;
|
|
579
586
|
/** The provider already stores a key (write-only field shows no value). */
|
package/dist/index.js
CHANGED
|
@@ -1,25 +1,25 @@
|
|
|
1
|
+
export { ThemeScope } from './chunk-TGU3PKNM.js';
|
|
1
2
|
export { TimeList } from './chunk-67W2OLOQ.js';
|
|
2
3
|
export { TimePicker, TimePickerContent } from './chunk-WQ5MPOYG.js';
|
|
3
4
|
export { InfoTooltip, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from './chunk-NDZ22QGX.js';
|
|
4
5
|
export { UndoNotice } from './chunk-AT32ANZW.js';
|
|
5
6
|
export { ViewToggle } from './chunk-XZIJIGEB.js';
|
|
6
7
|
export { Stepper, Wizard } from './chunk-ZNVWHGKM.js';
|
|
8
|
+
export { Skeleton, SkeletonText } from './chunk-4OJXAFGA.js';
|
|
7
9
|
export { HoverCard, HoverCardContent, HoverCardPortal, HoverCardTrigger } from './chunk-PNYJ5VX2.js';
|
|
8
10
|
export { Table } from './chunk-53JFRZAO.js';
|
|
9
|
-
export { TaskAssignmentPicker } from './chunk-
|
|
11
|
+
export { TaskAssignmentPicker } from './chunk-RXFQZMSF.js';
|
|
10
12
|
export { SettingsShell } from './chunk-YPDIA54W.js';
|
|
11
13
|
export { SidebarNav } from './chunk-VAUB5TDF.js';
|
|
12
14
|
export { UserMenu } from './chunk-CYK3ZLAB.js';
|
|
13
|
-
export { ThemeScope } from './chunk-TGU3PKNM.js';
|
|
14
15
|
export { SearchInput } from './chunk-UUIMMMSJ.js';
|
|
15
|
-
export { ModelRegistry } from './chunk-
|
|
16
|
+
export { ModelRegistry } from './chunk-67FLOT4X.js';
|
|
16
17
|
export { CapabilityChips } from './chunk-SY5FR4HC.js';
|
|
17
18
|
export { SegmentedTabs } from './chunk-5IEBIDXQ.js';
|
|
18
19
|
export { SelectionBar } from './chunk-LXKRUJIS.js';
|
|
19
|
-
export { Skeleton, SkeletonText } from './chunk-4OJXAFGA.js';
|
|
20
20
|
export { PanelModal } from './chunk-6O4LOWZG.js';
|
|
21
21
|
export { ProfileSwitcher } from './chunk-WY5TO6R4.js';
|
|
22
|
-
export { CUSTOM_PRESET_KEY, ProviderForm } from './chunk-
|
|
22
|
+
export { CUSTOM_PRESET_KEY, ProviderForm } from './chunk-BCKOBT7T.js';
|
|
23
23
|
export { RangeBar } from './chunk-3UDWLHLD.js';
|
|
24
24
|
export { ScaleSlider, scaleColorForValue } from './chunk-NLHODVBI.js';
|
|
25
25
|
export { RichTextEditor } from './chunk-QYZNTE6Y.js';
|
|
@@ -27,7 +27,7 @@ export { DictationButton, DictationStrip, useDictation } from './chunk-QRTECV3V.
|
|
|
27
27
|
export { useAiTextTransform } from './chunk-BKAO7BTU.js';
|
|
28
28
|
export { MarqueeBand, MarqueeSurface, hitTestIds, marqueeRect, rectsIntersect, useMarquee } from './chunk-RU3DEF2O.js';
|
|
29
29
|
export { MarkdownDiffView, splitMarkdownBlocks } from './chunk-QUVVOG7K.js';
|
|
30
|
-
export { ModelPicker } from './chunk-
|
|
30
|
+
export { ModelPicker } from './chunk-PTTJJEYJ.js';
|
|
31
31
|
export { FieldLabel } from './chunk-UTECJFDO.js';
|
|
32
32
|
export { InfoButton } from './chunk-2M4BWGLD.js';
|
|
33
33
|
export { LoginForm } from './chunk-3V5EBB4N.js';
|
|
@@ -40,7 +40,7 @@ export { FlowStatusCard } from './chunk-E5GKW4XN.js';
|
|
|
40
40
|
export { FlowTelemetryStrip, FlowTraceCard, formatFlowLatency } from './chunk-HMUM3RAS.js';
|
|
41
41
|
export { CheckIndicator } from './chunk-FVIIVWRC.js';
|
|
42
42
|
export { ChipInput } from './chunk-HQN55NOV.js';
|
|
43
|
-
export { Combobox, ComboboxMulti } from './chunk-
|
|
43
|
+
export { Combobox, ComboboxMulti } from './chunk-URLF67WR.js';
|
|
44
44
|
export { ConfirmationModal } from './chunk-SE2AHFA5.js';
|
|
45
45
|
export { ContextMenu } from './chunk-A64IW7ID.js';
|
|
46
46
|
export { ActionMenu, Menu, MenuCheckboxItem, MenuContent, MenuGroup, MenuItem, MenuLabel, MenuSeparator, MenuSub, MenuSubContent, MenuSubTrigger, MenuTrigger } from './chunk-3UCBKZ2O.js';
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared language catalog: an ISO 639-1 superset (43 entries)
|
|
3
|
+
* with English name + nativeName (endonym — the default picker label)
|
|
4
|
+
* and an optional `flag` (most-associated country, presentational
|
|
5
|
+
* only; omitted where no uncontroversial primary exists — ar, ca, sw,
|
|
6
|
+
* ta). Data-only export (library ADR-006; family ADR-0024). Consumed
|
|
7
|
+
* via the `@neuronection/assistant-ui/languages` subpath.
|
|
8
|
+
*
|
|
9
|
+
* `nb` (Bokmål) and `no` (macro) both exist; STT surfaces may prefer
|
|
10
|
+
* `nb` where the provider distinguishes. Locale-tag lookups use the
|
|
11
|
+
* language subtag (`pt-BR` → `pt`). `pickLanguages` preserves caller
|
|
12
|
+
* order — Greek-first slices stay Greek-first.
|
|
13
|
+
*/
|
|
14
|
+
interface LanguageOption {
|
|
15
|
+
code: string;
|
|
16
|
+
name: string;
|
|
17
|
+
nativeName: string;
|
|
18
|
+
flag?: string;
|
|
19
|
+
}
|
|
20
|
+
declare const LANGUAGES: LanguageOption[];
|
|
21
|
+
declare function findLanguage(code?: string): LanguageOption | undefined;
|
|
22
|
+
declare function isLanguageCode(code?: string): boolean;
|
|
23
|
+
declare function pickLanguages(codes: string[]): LanguageOption[];
|
|
24
|
+
/** Localized language name via Intl.DisplayNames; falls back to the
|
|
25
|
+
* catalog English name, then the raw code. Never throws. */
|
|
26
|
+
declare function languageDisplayName(code: string, locale?: string): string;
|
|
27
|
+
|
|
28
|
+
export { LANGUAGES, type LanguageOption, findLanguage, isLanguageCode, languageDisplayName, pickLanguages };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// src/lib/languages.ts
|
|
2
|
+
var LANGUAGES = [
|
|
3
|
+
{ code: "ar", name: "Arabic", nativeName: "\u0627\u0644\u0639\u0631\u0628\u064A\u0629" },
|
|
4
|
+
{ code: "bg", name: "Bulgarian", nativeName: "\u0431\u044A\u043B\u0433\u0430\u0440\u0441\u043A\u0438", flag: "\u{1F1E7}\u{1F1EC}" },
|
|
5
|
+
{ code: "bn", name: "Bangla", nativeName: "\u09AC\u09BE\u0982\u09B2\u09BE", flag: "\u{1F1E7}\u{1F1E9}" },
|
|
6
|
+
{ code: "ca", name: "Catalan", nativeName: "catal\xE0" },
|
|
7
|
+
{ code: "cs", name: "Czech", nativeName: "\u010De\u0161tina", flag: "\u{1F1E8}\u{1F1FF}" },
|
|
8
|
+
{ code: "da", name: "Danish", nativeName: "dansk", flag: "\u{1F1E9}\u{1F1F0}" },
|
|
9
|
+
{ code: "de", name: "German", nativeName: "Deutsch", flag: "\u{1F1E9}\u{1F1EA}" },
|
|
10
|
+
{ code: "el", name: "Greek", nativeName: "\u0395\u03BB\u03BB\u03B7\u03BD\u03B9\u03BA\u03AC", flag: "\u{1F1EC}\u{1F1F7}" },
|
|
11
|
+
{ code: "en", name: "English", nativeName: "English", flag: "\u{1F1EC}\u{1F1E7}" },
|
|
12
|
+
{ code: "es", name: "Spanish", nativeName: "espa\xF1ol", flag: "\u{1F1EA}\u{1F1F8}" },
|
|
13
|
+
{ code: "fa", name: "Persian", nativeName: "\u0641\u0627\u0631\u0633\u06CC", flag: "\u{1F1EE}\u{1F1F7}" },
|
|
14
|
+
{ code: "fi", name: "Finnish", nativeName: "suomi", flag: "\u{1F1EB}\u{1F1EE}" },
|
|
15
|
+
{ code: "fr", name: "French", nativeName: "fran\xE7ais", flag: "\u{1F1EB}\u{1F1F7}" },
|
|
16
|
+
{ code: "he", name: "Hebrew", nativeName: "\u05E2\u05D1\u05E8\u05D9\u05EA", flag: "\u{1F1EE}\u{1F1F1}" },
|
|
17
|
+
{ code: "hi", name: "Hindi", nativeName: "\u0939\u093F\u0928\u094D\u0926\u0940", flag: "\u{1F1EE}\u{1F1F3}" },
|
|
18
|
+
{ code: "hr", name: "Croatian", nativeName: "hrvatski", flag: "\u{1F1ED}\u{1F1F7}" },
|
|
19
|
+
{ code: "hu", name: "Hungarian", nativeName: "magyar", flag: "\u{1F1ED}\u{1F1FA}" },
|
|
20
|
+
{ code: "id", name: "Indonesian", nativeName: "Indonesia", flag: "\u{1F1EE}\u{1F1E9}" },
|
|
21
|
+
{ code: "is", name: "Icelandic", nativeName: "\xEDslenska", flag: "\u{1F1EE}\u{1F1F8}" },
|
|
22
|
+
{ code: "it", name: "Italian", nativeName: "italiano", flag: "\u{1F1EE}\u{1F1F9}" },
|
|
23
|
+
{ code: "ja", name: "Japanese", nativeName: "\u65E5\u672C\u8A9E", flag: "\u{1F1EF}\u{1F1F5}" },
|
|
24
|
+
{ code: "ko", name: "Korean", nativeName: "\uD55C\uAD6D\uC5B4", flag: "\u{1F1F0}\u{1F1F7}" },
|
|
25
|
+
{ code: "ms", name: "Malay", nativeName: "Melayu", flag: "\u{1F1F2}\u{1F1FE}" },
|
|
26
|
+
{ code: "nb", name: "Norwegian Bokm\xE5l", nativeName: "norsk bokm\xE5l", flag: "\u{1F1F3}\u{1F1F4}" },
|
|
27
|
+
{ code: "nl", name: "Dutch", nativeName: "Nederlands", flag: "\u{1F1F3}\u{1F1F1}" },
|
|
28
|
+
{ code: "nn", name: "Norwegian Nynorsk", nativeName: "norsk nynorsk", flag: "\u{1F1F3}\u{1F1F4}" },
|
|
29
|
+
{ code: "no", name: "Norwegian", nativeName: "norsk", flag: "\u{1F1F3}\u{1F1F4}" },
|
|
30
|
+
{ code: "pl", name: "Polish", nativeName: "polski", flag: "\u{1F1F5}\u{1F1F1}" },
|
|
31
|
+
{ code: "pt", name: "Portuguese", nativeName: "portugu\xEAs", flag: "\u{1F1F5}\u{1F1F9}" },
|
|
32
|
+
{ code: "ro", name: "Romanian", nativeName: "rom\xE2n\u0103", flag: "\u{1F1F7}\u{1F1F4}" },
|
|
33
|
+
{ code: "ru", name: "Russian", nativeName: "\u0440\u0443\u0441\u0441\u043A\u0438\u0439", flag: "\u{1F1F7}\u{1F1FA}" },
|
|
34
|
+
{ code: "sk", name: "Slovak", nativeName: "sloven\u010Dina", flag: "\u{1F1F8}\u{1F1F0}" },
|
|
35
|
+
{ code: "sl", name: "Slovenian", nativeName: "sloven\u0161\u010Dina", flag: "\u{1F1F8}\u{1F1EE}" },
|
|
36
|
+
{ code: "sr", name: "Serbian", nativeName: "\u0441\u0440\u043F\u0441\u043A\u0438", flag: "\u{1F1F7}\u{1F1F8}" },
|
|
37
|
+
{ code: "sv", name: "Swedish", nativeName: "svenska", flag: "\u{1F1F8}\u{1F1EA}" },
|
|
38
|
+
{ code: "sw", name: "Swahili", nativeName: "Kiswahili" },
|
|
39
|
+
{ code: "ta", name: "Tamil", nativeName: "\u0BA4\u0BAE\u0BBF\u0BB4\u0BCD" },
|
|
40
|
+
{ code: "th", name: "Thai", nativeName: "\u0E44\u0E17\u0E22", flag: "\u{1F1F9}\u{1F1ED}" },
|
|
41
|
+
{ code: "tr", name: "Turkish", nativeName: "T\xFCrk\xE7e", flag: "\u{1F1F9}\u{1F1F7}" },
|
|
42
|
+
{ code: "uk", name: "Ukrainian", nativeName: "\u0443\u043A\u0440\u0430\u0457\u043D\u0441\u044C\u043A\u0430", flag: "\u{1F1FA}\u{1F1E6}" },
|
|
43
|
+
{ code: "ur", name: "Urdu", nativeName: "\u0627\u0631\u062F\u0648", flag: "\u{1F1F5}\u{1F1F0}" },
|
|
44
|
+
{ code: "vi", name: "Vietnamese", nativeName: "Ti\u1EBFng Vi\u1EC7t", flag: "\u{1F1FB}\u{1F1F3}" },
|
|
45
|
+
{ code: "zh", name: "Chinese", nativeName: "\u4E2D\u6587", flag: "\u{1F1E8}\u{1F1F3}" }
|
|
46
|
+
];
|
|
47
|
+
function findLanguage(code) {
|
|
48
|
+
if (!code) return void 0;
|
|
49
|
+
const base = code.trim().toLowerCase().split("-")[0];
|
|
50
|
+
return LANGUAGES.find((entry) => entry.code === base);
|
|
51
|
+
}
|
|
52
|
+
function isLanguageCode(code) {
|
|
53
|
+
return findLanguage(code) !== void 0;
|
|
54
|
+
}
|
|
55
|
+
function pickLanguages(codes) {
|
|
56
|
+
const picked = [];
|
|
57
|
+
for (const code of codes) {
|
|
58
|
+
const entry = findLanguage(code);
|
|
59
|
+
if (entry) picked.push(entry);
|
|
60
|
+
else console.warn(`[assistant-ui] pickLanguages: unknown language code ${code}`);
|
|
61
|
+
}
|
|
62
|
+
return picked;
|
|
63
|
+
}
|
|
64
|
+
function languageDisplayName(code, locale = "en") {
|
|
65
|
+
try {
|
|
66
|
+
const displayed = new Intl.DisplayNames([locale], { type: "language" }).of(code);
|
|
67
|
+
if (displayed && displayed !== code) return displayed;
|
|
68
|
+
} catch {
|
|
69
|
+
}
|
|
70
|
+
return findLanguage(code)?.name ?? code;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export { LANGUAGES, findLanguage, isLanguageCode, languageDisplayName, pickLanguages };
|
|
74
|
+
//# sourceMappingURL=languages.js.map
|
|
75
|
+
//# sourceMappingURL=languages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/lib/languages.ts"],"names":[],"mappings":";AAqBO,IAAM,SAAA,GAA8B;AAAA,EACzC,EAAE,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,QAAA,EAAU,YAAY,4CAAA,EAAU;AAAA,EACpD,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,wDAAA,EAAa,MAAM,oBAAA,EAAO;AAAA,EACvE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,gCAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,SAAA,EAAW,YAAY,WAAA,EAAS;AAAA,EACpD,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,SAAS,UAAA,EAAY,mBAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EACjE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,OAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,SAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EAClE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,SAAS,UAAA,EAAY,kDAAA,EAAY,MAAM,oBAAA,EAAO;AAAA,EAClE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,SAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,YAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,gCAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EACjE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,OAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EACjE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,aAAA,EAAY,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,gCAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,SAAS,UAAA,EAAY,sCAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,YAAY,UAAA,EAAY,UAAA,EAAY,MAAM,oBAAA,EAAO;AAAA,EACrE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,QAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EACpE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,cAAc,UAAA,EAAY,WAAA,EAAa,MAAM,oBAAA,EAAO;AAAA,EACxE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,aAAA,EAAY,MAAM,oBAAA,EAAO;AAAA,EACtE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,UAAA,EAAY,MAAM,oBAAA,EAAO;AAAA,EACpE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,YAAY,UAAA,EAAY,oBAAA,EAAO,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,oBAAA,EAAO,MAAM,oBAAA,EAAO;AAAA,EAC9D,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,SAAS,UAAA,EAAY,QAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EAChE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,uBAAoB,UAAA,EAAY,iBAAA,EAAgB,MAAM,oBAAA,EAAO;AAAA,EACjF,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,SAAS,UAAA,EAAY,YAAA,EAAc,MAAM,oBAAA,EAAO;AAAA,EACpE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,qBAAqB,UAAA,EAAY,eAAA,EAAiB,MAAM,oBAAA,EAAO;AAAA,EACnF,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,OAAA,EAAS,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,QAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EACjE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,cAAc,UAAA,EAAY,cAAA,EAAa,MAAM,oBAAA,EAAO;AAAA,EACxE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,YAAY,UAAA,EAAY,gBAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,4CAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,UAAU,UAAA,EAAY,iBAAA,EAAc,MAAM,oBAAA,EAAO;AAAA,EACrE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,uBAAA,EAAe,MAAM,oBAAA,EAAO;AAAA,EACzE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,sCAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EAClE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,SAAA,EAAW,MAAM,oBAAA,EAAO;AAAA,EACnE,EAAE,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,SAAA,EAAW,YAAY,WAAA,EAAY;AAAA,EACvD,EAAE,IAAA,EAAM,IAAA,EAAM,IAAA,EAAM,OAAA,EAAS,YAAY,gCAAA,EAAQ;AAAA,EACjD,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,QAAQ,UAAA,EAAY,oBAAA,EAAO,MAAM,oBAAA,EAAO;AAAA,EAC5D,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,cAAA,EAAU,MAAM,oBAAA,EAAO;AAAA,EAClE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,aAAa,UAAA,EAAY,8DAAA,EAAc,MAAM,oBAAA,EAAO;AAAA,EACxE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,QAAQ,UAAA,EAAY,0BAAA,EAAQ,MAAM,oBAAA,EAAO;AAAA,EAC7D,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,cAAc,UAAA,EAAY,sBAAA,EAAc,MAAM,oBAAA,EAAO;AAAA,EACzE,EAAE,MAAM,IAAA,EAAM,IAAA,EAAM,WAAW,UAAA,EAAY,cAAA,EAAM,MAAM,oBAAA;AACzD;AAEO,SAAS,aAAa,IAAA,EAA2C;AACtE,EAAA,IAAI,CAAC,MAAM,OAAO,MAAA;AAClB,EAAA,MAAM,IAAA,GAAO,KAAK,IAAA,EAAK,CAAE,aAAY,CAAE,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAA;AACnD,EAAA,OAAO,UAAU,IAAA,CAAK,CAAC,KAAA,KAAU,KAAA,CAAM,SAAS,IAAI,CAAA;AACtD;AAEO,SAAS,eAAe,IAAA,EAAwB;AACrD,EAAA,OAAO,YAAA,CAAa,IAAI,CAAA,KAAM,MAAA;AAChC;AAEO,SAAS,cAAc,KAAA,EAAmC;AAC/D,EAAA,MAAM,SAA2B,EAAC;AAClC,EAAA,KAAA,MAAW,QAAQ,KAAA,EAAO;AACxB,IAAA,MAAM,KAAA,GAAQ,aAAa,IAAI,CAAA;AAC/B,IAAA,IAAI,KAAA,EAAO,MAAA,CAAO,IAAA,CAAK,KAAK,CAAA;AAAA,SACvB,OAAA,CAAQ,IAAA,CAAK,CAAA,oDAAA,EAAuD,IAAI,CAAA,CAAE,CAAA;AAAA,EACjF;AACA,EAAA,OAAO,MAAA;AACT;AAIO,SAAS,mBAAA,CAAoB,IAAA,EAAc,MAAA,GAAS,IAAA,EAAc;AACvE,EAAA,IAAI;AACF,IAAA,MAAM,SAAA,GAAY,IAAI,IAAA,CAAK,YAAA,CAAa,CAAC,MAAM,CAAA,EAAG,EAAE,IAAA,EAAM,UAAA,EAAY,CAAA,CAAE,GAAG,IAAI,CAAA;AAC/E,IAAA,IAAI,SAAA,IAAa,SAAA,KAAc,IAAA,EAAM,OAAO,SAAA;AAAA,EAC9C,CAAA,CAAA,MAAQ;AAAA,EAER;AACA,EAAA,OAAO,YAAA,CAAa,IAAI,CAAA,EAAG,IAAA,IAAQ,IAAA;AACrC","file":"languages.js","sourcesContent":["/**\n * Shared language catalog: an ISO 639-1 superset (43 entries)\n * with English name + nativeName (endonym — the default picker label)\n * and an optional `flag` (most-associated country, presentational\n * only; omitted where no uncontroversial primary exists — ar, ca, sw,\n * ta). Data-only export (library ADR-006; family ADR-0024). Consumed\n * via the `@neuronection/assistant-ui/languages` subpath.\n *\n * `nb` (Bokmål) and `no` (macro) both exist; STT surfaces may prefer\n * `nb` where the provider distinguishes. Locale-tag lookups use the\n * language subtag (`pt-BR` → `pt`). `pickLanguages` preserves caller\n * order — Greek-first slices stay Greek-first.\n */\n\nexport interface LanguageOption {\n code: string\n name: string\n nativeName: string\n flag?: string\n}\n\nexport const LANGUAGES: LanguageOption[] = [\n { code: 'ar', name: 'Arabic', nativeName: 'العربية' },\n { code: 'bg', name: 'Bulgarian', nativeName: 'български', flag: '🇧🇬' },\n { code: 'bn', name: 'Bangla', nativeName: 'বাংলা', flag: '🇧🇩' },\n { code: 'ca', name: 'Catalan', nativeName: 'català' },\n { code: 'cs', name: 'Czech', nativeName: 'čeština', flag: '🇨🇿' },\n { code: 'da', name: 'Danish', nativeName: 'dansk', flag: '🇩🇰' },\n { code: 'de', name: 'German', nativeName: 'Deutsch', flag: '🇩🇪' },\n { code: 'el', name: 'Greek', nativeName: 'Ελληνικά', flag: '🇬🇷' },\n { code: 'en', name: 'English', nativeName: 'English', flag: '🇬🇧' },\n { code: 'es', name: 'Spanish', nativeName: 'español', flag: '🇪🇸' },\n { code: 'fa', name: 'Persian', nativeName: 'فارسی', flag: '🇮🇷' },\n { code: 'fi', name: 'Finnish', nativeName: 'suomi', flag: '🇫🇮' },\n { code: 'fr', name: 'French', nativeName: 'français', flag: '🇫🇷' },\n { code: 'he', name: 'Hebrew', nativeName: 'עברית', flag: '🇮🇱' },\n { code: 'hi', name: 'Hindi', nativeName: 'हिन्दी', flag: '🇮🇳' },\n { code: 'hr', name: 'Croatian', nativeName: 'hrvatski', flag: '🇭🇷' },\n { code: 'hu', name: 'Hungarian', nativeName: 'magyar', flag: '🇭🇺' },\n { code: 'id', name: 'Indonesian', nativeName: 'Indonesia', flag: '🇮🇩' },\n { code: 'is', name: 'Icelandic', nativeName: 'íslenska', flag: '🇮🇸' },\n { code: 'it', name: 'Italian', nativeName: 'italiano', flag: '🇮🇹' },\n { code: 'ja', name: 'Japanese', nativeName: '日本語', flag: '🇯🇵' },\n { code: 'ko', name: 'Korean', nativeName: '한국어', flag: '🇰🇷' },\n { code: 'ms', name: 'Malay', nativeName: 'Melayu', flag: '🇲🇾' },\n { code: 'nb', name: 'Norwegian Bokmål', nativeName: 'norsk bokmål', flag: '🇳🇴' },\n { code: 'nl', name: 'Dutch', nativeName: 'Nederlands', flag: '🇳🇱' },\n { code: 'nn', name: 'Norwegian Nynorsk', nativeName: 'norsk nynorsk', flag: '🇳🇴' },\n { code: 'no', name: 'Norwegian', nativeName: 'norsk', flag: '🇳🇴' },\n { code: 'pl', name: 'Polish', nativeName: 'polski', flag: '🇵🇱' },\n { code: 'pt', name: 'Portuguese', nativeName: 'português', flag: '🇵🇹' },\n { code: 'ro', name: 'Romanian', nativeName: 'română', flag: '🇷🇴' },\n { code: 'ru', name: 'Russian', nativeName: 'русский', flag: '🇷🇺' },\n { code: 'sk', name: 'Slovak', nativeName: 'slovenčina', flag: '🇸🇰' },\n { code: 'sl', name: 'Slovenian', nativeName: 'slovenščina', flag: '🇸🇮' },\n { code: 'sr', name: 'Serbian', nativeName: 'српски', flag: '🇷🇸' },\n { code: 'sv', name: 'Swedish', nativeName: 'svenska', flag: '🇸🇪' },\n { code: 'sw', name: 'Swahili', nativeName: 'Kiswahili' },\n { code: 'ta', name: 'Tamil', nativeName: 'தமிழ்' },\n { code: 'th', name: 'Thai', nativeName: 'ไทย', flag: '🇹🇭' },\n { code: 'tr', name: 'Turkish', nativeName: 'Türkçe', flag: '🇹🇷' },\n { code: 'uk', name: 'Ukrainian', nativeName: 'українська', flag: '🇺🇦' },\n { code: 'ur', name: 'Urdu', nativeName: 'اردو', flag: '🇵🇰' },\n { code: 'vi', name: 'Vietnamese', nativeName: 'Tiếng Việt', flag: '🇻🇳' },\n { code: 'zh', name: 'Chinese', nativeName: '中文', flag: '🇨🇳' },\n]\n\nexport function findLanguage(code?: string): LanguageOption | undefined {\n if (!code) return undefined\n const base = code.trim().toLowerCase().split('-')[0]\n return LANGUAGES.find((entry) => entry.code === base)\n}\n\nexport function isLanguageCode(code?: string): boolean {\n return findLanguage(code) !== undefined\n}\n\nexport function pickLanguages(codes: string[]): LanguageOption[] {\n const picked: LanguageOption[] = []\n for (const code of codes) {\n const entry = findLanguage(code)\n if (entry) picked.push(entry)\n else console.warn(`[assistant-ui] pickLanguages: unknown language code ${code}`)\n }\n return picked\n}\n\n/** Localized language name via Intl.DisplayNames; falls back to the\n * catalog English name, then the raw code. Never throws. */\nexport function languageDisplayName(code: string, locale = 'en'): string {\n try {\n const displayed = new Intl.DisplayNames([locale], { type: 'language' }).of(code)\n if (displayed && displayed !== code) return displayed\n } catch {\n // fall through to catalog fallback\n }\n return findLanguage(code)?.name ?? code\n}\n"]}
|
package/dist/model-picker.js
CHANGED
package/dist/model-registry.js
CHANGED
package/dist/provider-form.d.ts
CHANGED
|
@@ -47,6 +47,13 @@ interface ProviderFormProps extends React.ComponentProps<'div'> {
|
|
|
47
47
|
label: string;
|
|
48
48
|
}[];
|
|
49
49
|
countryPlaceholder?: string;
|
|
50
|
+
/** Search-input placeholder for the country picker (searchable — the
|
|
51
|
+
* catalog is ~250 entries, ADR-0024). */
|
|
52
|
+
countrySearchPlaceholder?: string;
|
|
53
|
+
/** Empty-search result label for the country picker. */
|
|
54
|
+
countryEmptyLabel?: string;
|
|
55
|
+
/** Accessible name of the country picker's clear button. */
|
|
56
|
+
countryClearLabel?: string;
|
|
50
57
|
/** Hint under the key field; apps mention keyring storage here. */
|
|
51
58
|
apiKeyHelp?: string;
|
|
52
59
|
/** The provider already stores a key (write-only field shows no value). */
|
package/dist/provider-form.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neuronection/assistant-ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.49.0",
|
|
4
4
|
"description": "Shared React component library for the Assistant family (career-, study-, health-, desktop-assistant). Family look by default, app-flavored via CSS-variable tokens.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -389,6 +389,10 @@
|
|
|
389
389
|
"./countries": {
|
|
390
390
|
"types": "./dist/countries.d.ts",
|
|
391
391
|
"import": "./dist/countries.js"
|
|
392
|
+
},
|
|
393
|
+
"./languages": {
|
|
394
|
+
"types": "./dist/languages.d.ts",
|
|
395
|
+
"import": "./dist/languages.js"
|
|
392
396
|
}
|
|
393
397
|
},
|
|
394
398
|
"peerDependencies": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/components/provider-form/ProviderForm.tsx"],"names":["ProviderForm"],"mappings":"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","file":"chunk-4XV2FGBS.js","sourcesContent":["import * as React from 'react'\nimport { Building2, House, KeyRound } from 'lucide-react'\nimport { cn } from '../../lib/utils'\nimport { Input } from '../input/Input'\n\n/** One entry of the app's provider catalog (ADR-006: the catalog lives in\n * the app/backend — the form only renders the picker and reports the key). */\nexport interface ProviderPresetOption {\n key: string\n name: string\n /** Local/on-premise preset — apps may default the hosting toggle from it. */\n local?: boolean\n}\n\n/** Reserved key of the built-in \"custom\" preset entry (never a catalog key). */\nexport const CUSTOM_PRESET_KEY = 'custom'\n\nexport interface ProviderFormProps extends React.ComponentProps<'div'> {\n name: string\n onNameChange: (value: string) => void\n baseUrl: string\n onBaseUrlChange: (value: string) => void\n apiKey: string\n onApiKeyChange: (value: string) => void\n namePlaceholder?: string\n baseUrlPlaceholder?: string\n nameLabel?: string\n baseUrlLabel?: string\n /** Hide the base URL field for provider types that have a fixed endpoint. */\n hideBaseUrl?: boolean\n apiKeyLabel?: string\n /** Optional preset catalog select — render only when `presets` is non-empty. */\n presets?: ProviderPresetOption[]\n presetKey?: string\n onPresetChange?: (key: string) => void\n presetLabel?: string\n customPresetLabel?: string\n /** Optional Local/Cloud toggle — render only when `showLocationKind`. */\n showLocationKind?: boolean\n locationKind?: 'local' | 'cloud'\n onLocationKindChange?: (kind: 'local' | 'cloud') => void\n locationLabel?: string\n localLabel?: string\n cloudLabel?: string\n /** Optional country select — render only when `showCountry`. */\n showCountry?: boolean\n country?: string\n onCountryChange?: (country: string) => void\n countryLabel?: string\n countryOptions?: { value: string; label: string }[]\n countryPlaceholder?: string\n /** Hint under the key field; apps mention keyring storage here. */\n apiKeyHelp?: string\n /** The provider already stores a key (write-only field shows no value). */\n hasStoredKey?: boolean\n storedKeyLabel?: string\n keyPlaceholder?: string\n error?: string\n children?: React.ReactNode\n}\n\n/**\n * Standard provider credential fields: name, base URL and a **write-only**\n * masked API key (`onChange` only — the library never renders a stored key;\n * keyring/storage is the app's business, ADR-006).\n */\nexport const ProviderForm = React.forwardRef<HTMLDivElement, ProviderFormProps>(\n function ProviderForm(\n {\n name,\n onNameChange,\n baseUrl,\n onBaseUrlChange,\n apiKey,\n onApiKeyChange,\n namePlaceholder = 'Provider name',\n baseUrlPlaceholder = 'https://api.example.com/v1',\n nameLabel = 'Name',\n baseUrlLabel = 'API base URL',\n hideBaseUrl = false,\n apiKeyLabel = 'API key',\n apiKeyHelp,\n hasStoredKey = false,\n presets,\n presetKey = '',\n onPresetChange,\n presetLabel = 'Provider',\n customPresetLabel = 'Custom…',\n showLocationKind = false,\n locationKind = 'cloud',\n onLocationKindChange,\n locationLabel = 'Hosting',\n localLabel = 'Local / on-premise',\n cloudLabel = 'Cloud',\n showCountry = false,\n country,\n onCountryChange,\n countryLabel = 'Country',\n countryOptions = [],\n countryPlaceholder = 'Select a country…',\n storedKeyLabel = 'Stored — leave empty to keep',\n keyPlaceholder = 'sk-…',\n error,\n children,\n className,\n ...props\n },\n ref,\n ) {\n return (\n <div\n ref={ref}\n data-as=\"provider-form\"\n className={cn('flex w-full flex-col gap-4', className)}\n {...props}\n >\n {presets && presets.length > 0 && onPresetChange ? (\n <label className=\"block space-y-1 text-sm\">\n <span className=\"text-sm font-medium text-[var(--as-fg)]\">{presetLabel}</span>\n <select\n value={presetKey}\n onChange={(event) => onPresetChange(event.target.value)}\n className=\"w-full rounded-[var(--as-radius)] border border-[var(--as-border)] bg-[var(--as-surface)] px-3 py-2 text-sm text-[var(--as-fg)]\"\n >\n {presets.map((preset) => (\n <option key={preset.key} value={preset.key}>\n {preset.name}\n </option>\n ))}\n <option value={CUSTOM_PRESET_KEY}>{customPresetLabel}</option>\n </select>\n </label>\n ) : null}\n <Input\n label={nameLabel}\n value={name}\n onChange={(event) => onNameChange(event.target.value)}\n placeholder={namePlaceholder}\n />\n {hideBaseUrl ? null : (\n <Input\n label={baseUrlLabel}\n value={baseUrl}\n onChange={(event) => onBaseUrlChange(event.target.value)}\n placeholder={baseUrlPlaceholder}\n className=\"font-mono\"\n />\n )}\n <Input\n label={\n hasStoredKey ? (\n <>\n {apiKeyLabel}{' '}\n <span className=\"font-normal text-[var(--as-muted-fg)]\">\n ({storedKeyLabel})\n </span>\n </>\n ) : (\n apiKeyLabel\n )\n }\n type=\"password\"\n value={apiKey}\n onChange={(event) => onApiKeyChange(event.target.value)}\n placeholder={hasStoredKey ? '•••' : keyPlaceholder}\n autoComplete=\"new-password\"\n hint={\n apiKeyHelp ? (\n <span className=\"inline-flex items-center gap-1\">\n <KeyRound className=\"size-3\" aria-hidden />\n {apiKeyHelp}\n </span>\n ) : undefined\n }\n />\n {showLocationKind && onLocationKindChange ? (\n <div className=\"space-y-1\">\n <span className=\"text-sm font-medium text-[var(--as-fg)]\">{locationLabel}</span>\n <div className=\"flex gap-2\" role=\"group\" aria-label={locationLabel}>\n {(\n [\n { kind: 'local' as const, label: localLabel, Icon: House },\n { kind: 'cloud' as const, label: cloudLabel, Icon: Building2 },\n ]\n ).map(({ kind, label, Icon }) => {\n const on = locationKind === kind\n return (\n <button\n key={kind}\n type=\"button\"\n data-as-location={kind}\n aria-pressed={on}\n onClick={() => onLocationKindChange(kind)}\n className={cn(\n 'flex flex-1 cursor-pointer items-center justify-center gap-1.5 rounded-[var(--as-radius)] border px-3 py-2 text-xs font-semibold transition-all',\n 'focus-visible:outline-2 focus-visible:outline-offset-1 focus-visible:outline-[var(--as-focus-ring)]',\n on\n ? 'border-[var(--as-primary)]/30 bg-[var(--as-primary)]/10 text-[var(--as-primary)] shadow-[var(--as-shadow-1)]'\n : 'border-[var(--as-border)] bg-[var(--as-surface)] text-[var(--as-muted-fg)] hover:border-[var(--as-muted-fg)]/40',\n )}\n >\n <Icon className=\"size-3.5\" aria-hidden />\n {label}\n </button>\n )\n })}\n </div>\n </div>\n ) : null}\n {showCountry && onCountryChange ? (\n <label className=\"block space-y-1 text-sm\">\n <span className=\"text-sm font-medium text-[var(--as-fg)]\">{countryLabel}</span>\n <select\n value={country ?? ''}\n onChange={(event) => onCountryChange(event.target.value)}\n className=\"w-full rounded-[var(--as-radius)] border border-[var(--as-border)] bg-[var(--as-surface)] px-3 py-2 text-sm text-[var(--as-fg)]\"\n >\n <option value=\"\">{countryPlaceholder}</option>\n {countryOptions.map((option) => (\n <option key={option.value} value={option.value}>\n {option.label}\n </option>\n ))}\n </select>\n </label>\n ) : null}\n {children}\n {error ? (\n <p role=\"alert\" className=\"text-sm font-medium text-[var(--as-danger)]\">\n {error}\n </p>\n ) : null}\n </div>\n )\n },\n)\n"]}
|