@kaisarsofi/react-native-phone-input 1.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 (91) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +467 -0
  3. package/lib/commonjs/CountryPicker.js +669 -0
  4. package/lib/commonjs/CountryPicker.js.map +1 -0
  5. package/lib/commonjs/Flag.js +23 -0
  6. package/lib/commonjs/Flag.js.map +1 -0
  7. package/lib/commonjs/PhoneInput.js +252 -0
  8. package/lib/commonjs/PhoneInput.js.map +1 -0
  9. package/lib/commonjs/countries.js +75 -0
  10. package/lib/commonjs/countries.js.map +1 -0
  11. package/lib/commonjs/data/countries.json +1472 -0
  12. package/lib/commonjs/index.js +71 -0
  13. package/lib/commonjs/index.js.map +1 -0
  14. package/lib/commonjs/package.json +1 -0
  15. package/lib/commonjs/safeArea.js +44 -0
  16. package/lib/commonjs/safeArea.js.map +1 -0
  17. package/lib/commonjs/theme.js +85 -0
  18. package/lib/commonjs/theme.js.map +1 -0
  19. package/lib/commonjs/types.js +6 -0
  20. package/lib/commonjs/types.js.map +1 -0
  21. package/lib/commonjs/value.js +68 -0
  22. package/lib/commonjs/value.js.map +1 -0
  23. package/lib/module/CountryPicker.js +665 -0
  24. package/lib/module/CountryPicker.js.map +1 -0
  25. package/lib/module/Flag.js +19 -0
  26. package/lib/module/Flag.js.map +1 -0
  27. package/lib/module/PhoneInput.js +248 -0
  28. package/lib/module/PhoneInput.js.map +1 -0
  29. package/lib/module/countries.js +65 -0
  30. package/lib/module/countries.js.map +1 -0
  31. package/lib/module/data/countries.json +1472 -0
  32. package/lib/module/index.js +8 -0
  33. package/lib/module/index.js.map +1 -0
  34. package/lib/module/package.json +1 -0
  35. package/lib/module/safeArea.js +39 -0
  36. package/lib/module/safeArea.js.map +1 -0
  37. package/lib/module/theme.js +81 -0
  38. package/lib/module/theme.js.map +1 -0
  39. package/lib/module/types.js +4 -0
  40. package/lib/module/types.js.map +1 -0
  41. package/lib/module/value.js +62 -0
  42. package/lib/module/value.js.map +1 -0
  43. package/lib/typescript/commonjs/package.json +1 -0
  44. package/lib/typescript/commonjs/src/CountryPicker.d.ts +37 -0
  45. package/lib/typescript/commonjs/src/CountryPicker.d.ts.map +1 -0
  46. package/lib/typescript/commonjs/src/Flag.d.ts +10 -0
  47. package/lib/typescript/commonjs/src/Flag.d.ts.map +1 -0
  48. package/lib/typescript/commonjs/src/PhoneInput.d.ts +3 -0
  49. package/lib/typescript/commonjs/src/PhoneInput.d.ts.map +1 -0
  50. package/lib/typescript/commonjs/src/countries.d.ts +28 -0
  51. package/lib/typescript/commonjs/src/countries.d.ts.map +1 -0
  52. package/lib/typescript/commonjs/src/index.d.ts +9 -0
  53. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  54. package/lib/typescript/commonjs/src/safeArea.d.ts +11 -0
  55. package/lib/typescript/commonjs/src/safeArea.d.ts.map +1 -0
  56. package/lib/typescript/commonjs/src/theme.d.ts +53 -0
  57. package/lib/typescript/commonjs/src/theme.d.ts.map +1 -0
  58. package/lib/typescript/commonjs/src/types.d.ts +211 -0
  59. package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
  60. package/lib/typescript/commonjs/src/value.d.ts +22 -0
  61. package/lib/typescript/commonjs/src/value.d.ts.map +1 -0
  62. package/lib/typescript/module/package.json +1 -0
  63. package/lib/typescript/module/src/CountryPicker.d.ts +37 -0
  64. package/lib/typescript/module/src/CountryPicker.d.ts.map +1 -0
  65. package/lib/typescript/module/src/Flag.d.ts +10 -0
  66. package/lib/typescript/module/src/Flag.d.ts.map +1 -0
  67. package/lib/typescript/module/src/PhoneInput.d.ts +3 -0
  68. package/lib/typescript/module/src/PhoneInput.d.ts.map +1 -0
  69. package/lib/typescript/module/src/countries.d.ts +28 -0
  70. package/lib/typescript/module/src/countries.d.ts.map +1 -0
  71. package/lib/typescript/module/src/index.d.ts +9 -0
  72. package/lib/typescript/module/src/index.d.ts.map +1 -0
  73. package/lib/typescript/module/src/safeArea.d.ts +11 -0
  74. package/lib/typescript/module/src/safeArea.d.ts.map +1 -0
  75. package/lib/typescript/module/src/theme.d.ts +53 -0
  76. package/lib/typescript/module/src/theme.d.ts.map +1 -0
  77. package/lib/typescript/module/src/types.d.ts +211 -0
  78. package/lib/typescript/module/src/types.d.ts.map +1 -0
  79. package/lib/typescript/module/src/value.d.ts +22 -0
  80. package/lib/typescript/module/src/value.d.ts.map +1 -0
  81. package/package.json +215 -0
  82. package/src/CountryPicker.tsx +805 -0
  83. package/src/Flag.tsx +17 -0
  84. package/src/PhoneInput.tsx +363 -0
  85. package/src/countries.ts +95 -0
  86. package/src/data/countries.json +1472 -0
  87. package/src/index.tsx +21 -0
  88. package/src/safeArea.ts +50 -0
  89. package/src/theme.ts +112 -0
  90. package/src/types.ts +229 -0
  91. package/src/value.ts +70 -0
package/package.json ADDED
@@ -0,0 +1,215 @@
1
+ {
2
+ "name": "@kaisarsofi/react-native-phone-input",
3
+ "version": "1.0.0",
4
+ "description": "Zero-native-module phone number input for React Native, Expo, and react-native-web, with a country picker, live libphonenumber-js validation, and E.164 output.",
5
+ "main": "./lib/commonjs/index.js",
6
+ "module": "./lib/module/index.js",
7
+ "types": "./lib/typescript/module/src/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "react-native-phone-input-source": "./src/index.tsx",
11
+ "types": "./lib/typescript/module/src/index.d.ts",
12
+ "require": {
13
+ "types": "./lib/typescript/commonjs/src/index.d.ts",
14
+ "default": "./lib/commonjs/index.js"
15
+ },
16
+ "default": "./lib/module/index.js"
17
+ },
18
+ "./package.json": "./package.json"
19
+ },
20
+ "files": [
21
+ "src",
22
+ "lib",
23
+ "android",
24
+ "ios",
25
+ "cpp",
26
+ "*.podspec",
27
+ "react-native.config.js",
28
+ "!ios/build",
29
+ "!android/build",
30
+ "!android/gradle",
31
+ "!android/gradlew",
32
+ "!android/gradlew.bat",
33
+ "!android/local.properties",
34
+ "!**/__tests__",
35
+ "!**/__fixtures__",
36
+ "!**/__mocks__",
37
+ "!**/.*"
38
+ ],
39
+ "scripts": {
40
+ "example": "yarn workspace react-native-phone-input-example",
41
+ "clean": "del-cli lib",
42
+ "prepare": "bob build",
43
+ "typecheck": "tsc",
44
+ "lint": "eslint \"**/*.{js,ts,tsx}\"",
45
+ "test": "jest",
46
+ "validate": "yarn typecheck && yarn lint && yarn test",
47
+ "release": "release-it --only-version"
48
+ },
49
+ "keywords": [
50
+ "react-native",
51
+ "expo",
52
+ "expo-go",
53
+ "expo-router",
54
+ "react-native-web",
55
+ "phone-input",
56
+ "phone-number-input",
57
+ "country-picker",
58
+ "country-code-picker",
59
+ "country-code-input",
60
+ "dial-code-picker",
61
+ "calling-code",
62
+ "libphonenumber-js",
63
+ "e164",
64
+ "phone-validation",
65
+ "form-validation",
66
+ "as-you-type",
67
+ "alphabet-index",
68
+ "flag-picker",
69
+ "react-hook-form",
70
+ "controlled-input",
71
+ "form-input",
72
+ "typescript",
73
+ "nativewind",
74
+ "shadcn",
75
+ "zero-dependencies",
76
+ "no-native-modules",
77
+ "signup-form",
78
+ "login-form",
79
+ "ios",
80
+ "android"
81
+ ],
82
+ "repository": {
83
+ "type": "git",
84
+ "url": "git+https://github.com/kaisarsofi/react-native-phone-input.git"
85
+ },
86
+ "author": "Kaisar Sofi <kaisersofi.ks2515@gmail.com> (https://github.com/kaisarsofi)",
87
+ "license": "MIT",
88
+ "bugs": {
89
+ "url": "https://github.com/kaisarsofi/react-native-phone-input/issues"
90
+ },
91
+ "homepage": "https://github.com/kaisarsofi/react-native-phone-input#readme",
92
+ "publishConfig": {
93
+ "registry": "https://registry.npmjs.org/",
94
+ "access": "public"
95
+ },
96
+ "devDependencies": {
97
+ "@eslint/compat": "^2.1.0",
98
+ "@eslint/eslintrc": "^3.3.5",
99
+ "@eslint/js": "^10.0.1",
100
+ "@jest/globals": "^29.7.0",
101
+ "@react-native/babel-preset": "0.85.0",
102
+ "@react-native/eslint-config": "0.85.0",
103
+ "@react-native/jest-preset": "0.85.0",
104
+ "@release-it/conventional-changelog": "^11.0.1",
105
+ "@types/react": "^19.2.0",
106
+ "del-cli": "^7.0.0",
107
+ "eslint": "^9.39.4",
108
+ "eslint-config-prettier": "^10.1.8",
109
+ "eslint-plugin-ft-flow": "^3.0.11",
110
+ "eslint-plugin-prettier": "^5.5.6",
111
+ "jest": "^29.7.0",
112
+ "prettier": "^3.8.3",
113
+ "react": "19.2.0",
114
+ "react-native": "0.83.10",
115
+ "react-native-builder-bob": "^0.43.0",
116
+ "release-it": "^20.2.0",
117
+ "turbo": "^2.9.16",
118
+ "typescript": "^6.0.3"
119
+ },
120
+ "peerDependencies": {
121
+ "react": ">=18.0.0",
122
+ "react-native": ">=0.71.0",
123
+ "react-native-safe-area-context": ">=4.0.0"
124
+ },
125
+ "engines": {
126
+ "node": ">=18.0.0"
127
+ },
128
+ "sideEffects": false,
129
+ "workspaces": [
130
+ "example"
131
+ ],
132
+ "packageManager": "yarn@4.11.0",
133
+ "react-native-builder-bob": {
134
+ "source": "src",
135
+ "output": "lib",
136
+ "targets": [
137
+ [
138
+ "commonjs",
139
+ {
140
+ "esm": true
141
+ }
142
+ ],
143
+ [
144
+ "module",
145
+ {
146
+ "esm": true
147
+ }
148
+ ],
149
+ [
150
+ "typescript",
151
+ {
152
+ "project": "tsconfig.build.json"
153
+ }
154
+ ]
155
+ ]
156
+ },
157
+ "prettier": {
158
+ "quoteProps": "consistent",
159
+ "singleQuote": true,
160
+ "tabWidth": 2,
161
+ "trailingComma": "es5",
162
+ "useTabs": false
163
+ },
164
+ "jest": {
165
+ "preset": "@react-native/jest-preset",
166
+ "testEnvironmentOptions": {
167
+ "customExportConditions": [
168
+ "require",
169
+ "react-native",
170
+ "react-native-phone-input-source"
171
+ ]
172
+ },
173
+ "modulePathIgnorePatterns": [
174
+ "<rootDir>/example/node_modules",
175
+ "<rootDir>/lib/"
176
+ ]
177
+ },
178
+ "release-it": {
179
+ "git": {
180
+ "commitMessage": "chore: release ${version}",
181
+ "tagName": "v${version}"
182
+ },
183
+ "npm": {
184
+ "publish": true
185
+ },
186
+ "github": {
187
+ "release": true
188
+ },
189
+ "plugins": {
190
+ "@release-it/conventional-changelog": {
191
+ "preset": {
192
+ "name": "angular"
193
+ }
194
+ }
195
+ }
196
+ },
197
+ "create-react-native-library": {
198
+ "type": "library",
199
+ "languages": "js",
200
+ "tools": [
201
+ "eslint",
202
+ "jest",
203
+ "release-it"
204
+ ],
205
+ "version": "0.63.0"
206
+ },
207
+ "dependencies": {
208
+ "libphonenumber-js": "^1.13.12"
209
+ },
210
+ "peerDependenciesMeta": {
211
+ "react-native-safe-area-context": {
212
+ "optional": true
213
+ }
214
+ }
215
+ }