react-country-kit 1.2.0 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/components/CountryMultiSelect/CountryMultiSelect.d.ts +2 -3
  2. package/dist/components/CountryMultiSelect.d.ts +2 -0
  3. package/dist/components/CountryPicker/CountryPicker.d.ts +2 -3
  4. package/dist/components/CountryPicker.d.ts +2 -0
  5. package/dist/components/CurrencyMultiSelect/CurrencyMultiSelect.d.ts +2 -3
  6. package/dist/components/CurrencyMultiSelect.d.ts +2 -0
  7. package/dist/components/CurrencyPicker/CurrencyPicker.d.ts +2 -3
  8. package/dist/components/CurrencyPicker.d.ts +2 -0
  9. package/dist/components/DivisionPicker/DivisionPicker.d.ts +2 -3
  10. package/dist/components/DivisionPicker.d.ts +2 -0
  11. package/dist/components/LanguagePicker/LanguagePicker.d.ts +2 -3
  12. package/dist/components/LanguagePicker.d.ts +2 -0
  13. package/dist/components/PhoneInput/PhoneInput.d.ts +2 -3
  14. package/dist/components/PhoneInput.d.ts +3 -0
  15. package/dist/components/TimezonePicker/TimezonePicker.d.ts +2 -3
  16. package/dist/components/TimezonePicker.d.ts +2 -0
  17. package/dist/components/primitives.d.ts +82 -0
  18. package/dist/components/shared/Flag.d.ts +0 -1
  19. package/dist/components/shared/PickerBase.d.ts +0 -1
  20. package/dist/index.js.map +1 -0
  21. package/dist/index.mjs.map +1 -0
  22. package/dist/lib/utils.d.ts +6 -0
  23. package/dist/react-country-kit.cjs.js +3 -2
  24. package/dist/react-country-kit.cjs.js.map +1 -1
  25. package/dist/react-country-kit.css +2 -0
  26. package/dist/react-country-kit.d.ts +1 -0
  27. package/dist/react-country-kit.es.js +993 -749
  28. package/dist/react-country-kit.es.js.map +1 -1
  29. package/dist/ui.cjs.js +3 -0
  30. package/dist/ui.d.ts +17 -0
  31. package/dist/ui.es.js +899 -0
  32. package/package.json +11 -11
  33. package/dist/index.d.ts +0 -9
  34. package/dist/style.css +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-country-kit",
3
- "version": "1.2.0",
3
+ "version": "2.0.0",
4
4
  "type": "module",
5
5
  "description": "A comprehensive React component library for country, currency, timezone, language, and division picking. Supports both vanilla CSS and shadcn/Tailwind CSS variants.",
6
6
  "author": "Kishor Mainali",
@@ -24,14 +24,14 @@
24
24
  "types": "dist/react-country-kit.d.ts",
25
25
  "exports": {
26
26
  ".": {
27
+ "types": "./dist/react-country-kit.d.ts",
27
28
  "import": "./dist/react-country-kit.es.js",
28
- "require": "./dist/react-country-kit.cjs.js",
29
- "types": "./dist/react-country-kit.d.ts"
29
+ "require": "./dist/react-country-kit.cjs.js"
30
30
  },
31
31
  "./ui": {
32
+ "types": "./dist/ui.d.ts",
32
33
  "import": "./dist/ui.es.js",
33
- "require": "./dist/ui.cjs.js",
34
- "types": "./dist/ui.d.ts"
34
+ "require": "./dist/ui.cjs.js"
35
35
  },
36
36
  "./styles": "./dist/style.css"
37
37
  },
@@ -43,7 +43,7 @@
43
43
  ],
44
44
  "scripts": {
45
45
  "dev": "vite",
46
- "build": "vite build",
46
+ "build": "vite build && cp -r ../ui/dist/* ./dist/ && mv ./dist/index.js ./dist/ui.cjs.js && mv ./dist/index.mjs ./dist/ui.es.js && mv ./dist/index.d.ts ./dist/ui.d.ts",
47
47
  "build:types": "tsc --emitDeclarationOnly",
48
48
  "preview": "vite preview",
49
49
  "lint": "eslint src --ext ts,tsx --report-unused-disable-directives --max-warnings 0"
@@ -80,12 +80,12 @@
80
80
  "clsx": "^2.1.0",
81
81
  "tailwind-merge": "^2.3.0",
82
82
  "typescript": "^5.2.2",
83
- "vite": "^5.0.0",
84
- "vite-plugin-dts": "^3.7.0"
83
+ "vite": "^8.0.13",
84
+ "vite-plugin-dts": "^5.0.0"
85
85
  },
86
86
  "dependencies": {
87
- "react-country-kit-core": "^1.2.0",
88
- "libphonenumber-js": "^1.12.42"
87
+ "libphonenumber-js": "^1.12.42",
88
+ "react-country-kit-core": "^2.0.0"
89
89
  },
90
90
  "repository": {
91
91
  "type": "git",
@@ -95,4 +95,4 @@
95
95
  "publishConfig": {
96
96
  "access": "public"
97
97
  }
98
- }
98
+ }
package/dist/index.d.ts DELETED
@@ -1,9 +0,0 @@
1
- export * from '../../core/src/index.ts';
2
- export { CountryMultiSelect } from './components/CountryMultiSelect/CountryMultiSelect';
3
- export { CountryPicker } from './components/CountryPicker/CountryPicker';
4
- export { CurrencyMultiSelect } from './components/CurrencyMultiSelect/CurrencyMultiSelect';
5
- export { CurrencyPicker } from './components/CurrencyPicker/CurrencyPicker';
6
- export { DivisionPicker } from './components/DivisionPicker/DivisionPicker';
7
- export { LanguagePicker } from './components/LanguagePicker/LanguagePicker';
8
- export { PhoneInput } from './components/PhoneInput/PhoneInput';
9
- export { TimezonePicker } from './components/TimezonePicker/TimezonePicker';
package/dist/style.css DELETED
@@ -1 +0,0 @@
1
- @import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap";:root{--rck-font: "Inter", system-ui, -apple-system, sans-serif;--rck-bg: #ffffff;--rck-surface: #f8fafc;--rck-surface-hover: #f1f5f9;--rck-border: #e2e8f0;--rck-border-focus: #6366f1;--rck-text-primary: #0f172a;--rck-text-secondary: #64748b;--rck-text-placeholder: #94a3b8;--rck-accent: #6366f1;--rck-accent-light: #eef2ff;--rck-accent-dark: #4f46e5;--rck-selected-bg: #eef2ff;--rck-selected-text: #4f46e5;--rck-shadow-sm: 0 1px 3px rgba(0, 0, 0, .08), 0 1px 2px rgba(0, 0, 0, .05);--rck-shadow-md: 0 4px 16px rgba(0, 0, 0, .1), 0 2px 6px rgba(0, 0, 0, .06);--rck-shadow-lg: 0 10px 30px rgba(0, 0, 0, .12), 0 4px 10px rgba(0, 0, 0, .07);--rck-radius-sm: 8px;--rck-radius-md: 12px;--rck-radius-lg: 16px;--rck-transition: .18s cubic-bezier(.4, 0, .2, 1);--rck-dropdown-max-height: 320px;--rck-z-index: 9999}[data-theme=dark]{--rck-bg: #1e293b;--rck-surface: #0f172a;--rck-surface-hover: #1e293b;--rck-border: #334155;--rck-border-focus: #818cf8;--rck-text-primary: #f8fafc;--rck-text-secondary: #94a3b8;--rck-text-placeholder: #64748b;--rck-accent: #818cf8;--rck-accent-light: #1e1b4b;--rck-accent-dark: #6366f1;--rck-selected-bg: #1e1b4b;--rck-selected-text: #a5b4fc;--rck-shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--rck-shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--rck-shadow-lg: 0 10px 30px rgba(0, 0, 0, .5)}.rck-picker{position:relative;display:inline-flex;flex-direction:column;font-family:var(--rck-font);width:100%}.rck-label{display:block;font-size:.8125rem;font-weight:600;color:var(--rck-text-secondary);margin-bottom:6px;letter-spacing:.02em;text-transform:uppercase}.rck-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;background:var(--rck-bg);border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-md);cursor:pointer;font-family:var(--rck-font);font-size:.9375rem;color:var(--rck-text-primary);text-align:left;transition:border-color var(--rck-transition),box-shadow var(--rck-transition),background var(--rck-transition);outline:none;box-shadow:var(--rck-shadow-sm);min-height:46px;-webkit-user-select:none;user-select:none}.rck-trigger:hover:not(:disabled){border-color:var(--rck-accent);box-shadow:var(--rck-shadow-md)}.rck-trigger:focus-visible{border-color:var(--rck-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--rck-accent) 20%,transparent)}.rck-trigger.rck-open{border-color:var(--rck-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--rck-accent) 20%,transparent)}.rck-trigger:disabled{opacity:.5;cursor:not-allowed;background:var(--rck-surface)}.rck-trigger-content{flex:1;display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden}.rck-trigger-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rck-placeholder{color:var(--rck-text-placeholder)}.rck-badge{display:inline-flex;align-items:center;padding:2px 8px;background:var(--rck-accent-light);color:var(--rck-accent-dark);border-radius:100px;font-size:.75rem;font-weight:600;letter-spacing:.03em;flex-shrink:0}.rck-flag{font-size:1.375rem;line-height:1;flex-shrink:0;display:flex;align-items:center}.rck-flag-img{width:24px;height:16px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #0000000d}.rck-flag-wrapper{display:inline-flex;align-items:center}.rck-chevron{flex-shrink:0;width:18px;height:18px;color:var(--rck-text-secondary);transition:transform var(--rck-transition),color var(--rck-transition)}.rck-trigger.rck-open .rck-chevron{transform:rotate(180deg);color:var(--rck-accent)}.rck-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:var(--rck-z-index);background:var(--rck-bg);border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-lg);box-shadow:var(--rck-shadow-lg);overflow:hidden;display:flex;flex-direction:column;animation:rck-dropdown-in var(--rck-transition) both;transform-origin:top}@keyframes rck-dropdown-in{0%{opacity:0;transform:scaleY(.92) translateY(-6px)}to{opacity:1;transform:scaleY(1) translateY(0)}}.rck-search-wrapper{padding:12px 12px 8px;border-bottom:1px solid var(--rck-border)}.rck-search{display:flex;align-items:center;gap:8px;background:var(--rck-surface);border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-sm);padding:8px 12px;transition:border-color var(--rck-transition),box-shadow var(--rck-transition)}.rck-search:focus-within{border-color:var(--rck-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--rck-accent) 15%,transparent)}.rck-search-icon{width:15px;height:15px;color:var(--rck-text-placeholder);flex-shrink:0}.rck-search input{flex:1;border:none;background:transparent;font-family:var(--rck-font);font-size:.875rem;color:var(--rck-text-primary);outline:none;min-width:0}.rck-search input::placeholder{color:var(--rck-text-placeholder)}.rck-list{overflow-y:auto;max-height:var(--rck-dropdown-max-height);padding:6px;scrollbar-width:thin;scrollbar-color:var(--rck-border) transparent}.rck-list::-webkit-scrollbar{width:4px}.rck-list::-webkit-scrollbar-track{background:transparent}.rck-list::-webkit-scrollbar-thumb{background:var(--rck-border);border-radius:99px}.rck-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--rck-radius-sm);cursor:pointer;transition:background var(--rck-transition),color var(--rck-transition);font-family:var(--rck-font);font-size:.9rem;color:var(--rck-text-primary);border:none;background:transparent;width:100%;text-align:left;-webkit-user-select:none;user-select:none;outline:none}.rck-item:hover,.rck-item:focus-visible{background:var(--rck-surface-hover)}.rck-item.rck-item-selected{background:var(--rck-selected-bg);color:var(--rck-selected-text);font-weight:600}.rck-item-flag{font-size:1.25rem;line-height:1;flex-shrink:0}.rck-item-main{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.rck-item-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rck-item-sub{font-size:.76rem;color:var(--rck-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rck-item-selected .rck-item-sub{color:var(--rck-accent-dark);opacity:.8}.rck-item-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.rck-item-phone{font-size:.78rem;color:var(--rck-text-secondary);font-variant-numeric:tabular-nums;background:var(--rck-surface);padding:2px 6px;border-radius:4px}.rck-item-symbol{font-size:1rem;font-weight:600;color:var(--rck-accent);min-width:24px;text-align:center}.rck-item-check{width:16px;height:16px;color:var(--rck-accent);flex-shrink:0}.rck-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 16px;gap:8px;color:var(--rck-text-secondary);font-size:.875rem}.rck-empty-icon{font-size:2rem;opacity:.4}.rck-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--rck-z-index) - 1)}.rck-offset-badge{font-size:.72rem;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--rck-accent-light);color:var(--rck-accent-dark);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.rck-native-name{font-size:.78rem;color:var(--rck-text-secondary);font-style:italic}.rck-phone-wrapper{display:flex;flex-direction:column;gap:6px;font-family:var(--rck-font);width:100%;position:relative}.rck-phone-field{display:flex;align-items:stretch;border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-md);background:var(--rck-bg);box-shadow:var(--rck-shadow-sm);overflow:visible;position:relative;transition:border-color var(--rck-transition),box-shadow var(--rck-transition);min-height:46px}.rck-phone-field:focus-within{border-color:var(--rck-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--rck-accent) 20%,transparent)}.rck-phone-field.rck-phone-disabled{opacity:.5;pointer-events:none;background:var(--rck-surface)}.rck-phone-country-btn{display:flex;align-items:center;gap:5px;padding:0 12px;border:none;border-right:1.5px solid var(--rck-border);border-radius:var(--rck-radius-md) 0 0 var(--rck-radius-md);background:var(--rck-surface);cursor:pointer;font-family:var(--rck-font);font-size:.875rem;font-weight:600;color:var(--rck-text-primary);white-space:nowrap;flex-shrink:0;transition:background var(--rck-transition);outline:none}.rck-phone-country-btn:hover:not(:disabled){background:var(--rck-surface-hover)}.rck-phone-flag{font-size:1.25rem;line-height:1}.rck-phone-dial{font-size:.875rem;font-weight:600;color:var(--rck-accent);font-variant-numeric:tabular-nums;letter-spacing:.01em}.rck-phone-chevron{width:14px;height:14px;color:var(--rck-text-secondary);transition:transform var(--rck-transition)}.rck-phone-country-btn[aria-expanded=true] .rck-phone-chevron{transform:rotate(180deg)}.rck-phone-input{flex:1;border:none;background:transparent;font-family:var(--rck-font);font-size:.9375rem;color:var(--rck-text-primary);padding:0 14px;outline:none;min-width:0}.rck-phone-input::placeholder{color:var(--rck-text-placeholder)}.rck-phone-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:280px;z-index:var(--rck-z-index);background:var(--rck-bg);border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-lg);box-shadow:var(--rck-shadow-lg);overflow:hidden;animation:rck-dropdown-in var(--rck-transition) both}.rck-multiselect-trigger{display:flex;align-items:center;gap:6px;width:100%;min-height:46px;padding:7px 14px;background:var(--rck-bg);border:1.5px solid var(--rck-border);border-radius:var(--rck-radius-md);cursor:pointer;font-family:var(--rck-font);text-align:left;transition:border-color var(--rck-transition),box-shadow var(--rck-transition);outline:none;box-shadow:var(--rck-shadow-sm)}.rck-multiselect-trigger:hover:not(:disabled){border-color:var(--rck-accent);box-shadow:var(--rck-shadow-md)}.rck-multiselect-trigger:focus-visible,.rck-multiselect-trigger.rck-open{border-color:var(--rck-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--rck-accent) 20%,transparent)}.rck-multiselect-trigger:disabled{opacity:.5;cursor:not-allowed}.rck-chips-area{flex:1;display:flex;flex-wrap:wrap;gap:5px;min-width:0;align-items:center}.rck-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;background:var(--rck-accent-light);color:var(--rck-accent-dark);border-radius:100px;font-size:.8rem;font-weight:600;white-space:nowrap;max-width:140px;overflow:hidden}.rck-chip-label{overflow:hidden;text-overflow:ellipsis}.rck-chip-remove{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;padding:0;color:var(--rck-accent-dark);opacity:.6;transition:opacity .15s;flex-shrink:0}.rck-chip-remove:hover{opacity:1}.rck-chip-overflow{display:inline-flex;align-items:center;padding:3px 8px;background:var(--rck-surface-hover);color:var(--rck-text-secondary);border-radius:100px;font-size:.78rem;font-weight:600;white-space:nowrap}.rck-multiselect-clear{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--rck-text-secondary);padding:2px;border-radius:4px;transition:color .15s,background .15s;flex-shrink:0}.rck-multiselect-clear:hover{color:var(--rck-text-primary);background:var(--rck-surface-hover)}.rck-item-check-multi{width:16px;height:16px;background:var(--rck-accent);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rck-item-check-multi svg{width:10px;height:10px;stroke:#fff}.rck-item-check-empty{width:16px;height:16px;border:1.5px solid var(--rck-border);border-radius:50%;flex-shrink:0}