my_phone_codes_gem 0.1.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 (4) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +51 -0
  3. data/lib/my_phone_codes_gem.rb +263 -0
  4. metadata +58 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: c3b54a4f747116d79d3728214fc20dc7c00044ffa90acd373805396bb928de79
4
+ data.tar.gz: fb998c5ee86c94dfece623f2da123af29601c3d5e9418afb26504e2bf179e01f
5
+ SHA512:
6
+ metadata.gz: e31e3921b784c7e7fb938066eaa0f8e6222dfd052f83cd1408aac62b2405e7ebd4b102a0f9509cac78f2fee07f4b395d1d59ca6d6e08ae16a0c4199a67ff8c52
7
+ data.tar.gz: 217185d262991eb362eb4a0a5c17432f562d0f2c8967ccea256d4a849b81ef3d01c40ddd4a9cd3bc2eea50a95140745fc04da902f645f89831eafdb5e3ace4c1
data/README.md ADDED
@@ -0,0 +1,51 @@
1
+ # My Phone Codes Gem
2
+
3
+ This gem provides information about country phone codes, country names, and related details. It allows you to search for country phone codes, find country information based on the phone code, and retrieve a list of all available country phone codes.
4
+
5
+ ## Installation
6
+
7
+ You can install the gem by adding it to your Gemfile:
8
+
9
+ ```
10
+ gem 'my_phone_codes_gem'
11
+ ```
12
+
13
+ then run:
14
+
15
+ ```
16
+ bundle install
17
+ ```
18
+
19
+ Or install it directly via RubyGems:
20
+
21
+ ```
22
+ gem install my_phone_codes_gem
23
+ ```
24
+
25
+ # Usage/Examples
26
+
27
+ ## Get Information of a Specific Country
28
+ You can search for a specific country by name to get details including country code, phone code, ISO code, and flag.
29
+
30
+ ```
31
+ MyPhoneCodesGem.get_phone_code("Canada")
32
+ ```
33
+
34
+ This will return a hash with details of the country or a message saying "Country not found" if the country is not found.
35
+
36
+ ## Get Information of a Specific Country from Phone Code
37
+ You can search for a country by its phone code. The method will return the countryโ€™s details if found.
38
+
39
+ ```
40
+ MyPhoneCodesGem.get_country_from_code("+1")
41
+ ```
42
+
43
+ This will return a list of countries that use the given phone code, or "Country not found" if no match is found.
44
+
45
+ ## Get All Available Phone Codes
46
+ You can get all available phone codes with their respective details (country name, country code, phone code, country ISO code, and flag).
47
+
48
+ ```
49
+ MyPhoneCodesGem.get_all_phone_codes
50
+ ```
51
+ This will return an array of all country phone code records.
@@ -0,0 +1,263 @@
1
+ # lib/my_phone_codes_gem.rb
2
+
3
+ module MyPhoneCodesGem
4
+
5
+ PHONE_CODES = [
6
+ {:name=>"Afghanistan", :short_name=>"AF", :code=>"+93", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ซ"},
7
+ {:name=>"Albania", :short_name=>"AL", :code=>"+355", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฑ"},
8
+ {:name=>"Algeria", :short_name=>"DZ", :code=>"+213", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ฟ"},
9
+ {:name=>"American Samoa", :short_name=>"AS", :code=>"+1", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ธ"},
10
+ {:name=>"Andorra", :short_name=>"AD", :code=>"+376", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฉ"},
11
+ {:name=>"Angola", :short_name=>"AO", :code=>"+244", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ด"},
12
+ {:name=>"Anguilla", :short_name=>"AI", :code=>"+1", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฎ"},
13
+ {:name=>"Antigua and Barbuda", :short_name=>"AG", :code=>"+1", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฌ"},
14
+ {:name=>"Argentina", :short_name=>"AR", :code=>"+54", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ท"},
15
+ {:name=>"Armenia", :short_name=>"AM", :code=>"+374", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฒ"},
16
+ {:name=>"Aruba", :short_name=>"AW", :code=>"+297", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ผ"},
17
+ {:name=>"Australia", :short_name=>"AU", :code=>"+61", :flag=>"๐Ÿ‡ฆ๐Ÿ‡บ"},
18
+ {:name=>"Austria", :short_name=>"AT", :code=>"+43", :flag=>"๐Ÿ‡ฆ๐Ÿ‡น"},
19
+ {:name=>"Azerbaijan", :short_name=>"AZ", :code=>"+994", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฟ"},
20
+ {:name=>"Bahamas", :short_name=>"BS", :code=>"+1", :flag=>"๐Ÿ‡ง๐Ÿ‡ธ"},
21
+ {:name=>"Bahrain", :short_name=>"BH", :code=>"+973", :flag=>"๐Ÿ‡ง๐Ÿ‡ญ"},
22
+ {:name=>"Bangladesh", :short_name=>"BD", :code=>"+880", :flag=>"๐Ÿ‡ง๐Ÿ‡ฉ"},
23
+ {:name=>"Barbados", :short_name=>"BB", :code=>"+1", :flag=>"๐Ÿ‡ง๐Ÿ‡ง"},
24
+ {:name=>"Belarus", :short_name=>"BY", :code=>"+375", :flag=>"๐Ÿ‡ง๐Ÿ‡พ"},
25
+ {:name=>"Belgium", :short_name=>"BE", :code=>"+32", :flag=>"๐Ÿ‡ง๐Ÿ‡ช"},
26
+ {:name=>"Belize", :short_name=>"BZ", :code=>"+501", :flag=>"๐Ÿ‡ง๐Ÿ‡ฟ"},
27
+ {:name=>"Benin", :short_name=>"BJ", :code=>"+229", :flag=>"๐Ÿ‡ง๐Ÿ‡ฏ"},
28
+ {:name=>"Bermuda", :short_name=>"BM", :code=>"+1", :flag=>"๐Ÿ‡ง๐Ÿ‡ฒ"},
29
+ {:name=>"Bhutan", :short_name=>"BT", :code=>"+975", :flag=>"๐Ÿ‡ง๐Ÿ‡น"},
30
+ {:name=>"Bolivia", :short_name=>"BO", :code=>"+591", :flag=>"๐Ÿ‡ง๐Ÿ‡ด"},
31
+ {:name=>"Bonaire, Sint Eustatius and Saba", :short_name=>"BQ", :code=>"+599", :flag=>"๐Ÿ‡ง๐Ÿ‡ถ"},
32
+ {:name=>"Bosnia and Herzegovina", :short_name=>"BA", :code=>"+387", :flag=>"๐Ÿ‡ง๐Ÿ‡ฆ"},
33
+ {:name=>"Botswana", :short_name=>"BW", :code=>"+267", :flag=>"๐Ÿ‡ง๐Ÿ‡ผ"},
34
+ {:name=>"Brazil", :short_name=>"BR", :code=>"+55", :flag=>"๐Ÿ‡ง๐Ÿ‡ท"},
35
+ {:name=>"British Indian Ocean Territory", :short_name=>"IO", :code=>"+246", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ด"},
36
+ {:name=>"Brunei Darussalam", :short_name=>"BN", :code=>"+673", :flag=>"๐Ÿ‡ง๐Ÿ‡ณ"},
37
+ {:name=>"Bulgaria", :short_name=>"BG", :code=>"+359", :flag=>"๐Ÿ‡ง๐Ÿ‡ฌ"},
38
+ {:name=>"Burkina Faso", :short_name=>"BF", :code=>"+226", :flag=>"๐Ÿ‡ง๐Ÿ‡ซ"},
39
+ {:name=>"Burundi", :short_name=>"BI", :code=>"+257", :flag=>"๐Ÿ‡ง๐Ÿ‡ฎ"},
40
+ {:name=>"Cabo Verde", :short_name=>"CV", :code=>"+238", :flag=>"๐Ÿ‡จ๐Ÿ‡ป"},
41
+ {:name=>"Cambodia", :short_name=>"KH", :code=>"+855", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ญ"},
42
+ {:name=>"Cameroon", :short_name=>"CM", :code=>"+237", :flag=>"๐Ÿ‡จ๐Ÿ‡ฒ"},
43
+ {:name=>"Canada", :short_name=>"CA", :code=>"+1", :flag=>"๐Ÿ‡จ๐Ÿ‡ฆ"},
44
+ {:name=>"Cayman Islands", :short_name=>"KY", :code=>"+1", :flag=>"๐Ÿ‡ฐ๐Ÿ‡พ"},
45
+ {:name=>"Central African Republic", :short_name=>"CF", :code=>"+236", :flag=>"๐Ÿ‡จ๐Ÿ‡ซ"},
46
+ {:name=>"Chad", :short_name=>"TD", :code=>"+235", :flag=>"๐Ÿ‡น๐Ÿ‡ฉ"},
47
+ {:name=>"Chile", :short_name=>"CL", :code=>"+56", :flag=>"๐Ÿ‡จ๐Ÿ‡ฑ"},
48
+ {:name=>"China", :short_name=>"CN", :code=>"+86", :flag=>"๐Ÿ‡จ๐Ÿ‡ณ"},
49
+ {:name=>"Christmas Island", :short_name=>"CX", :code=>"+61", :flag=>"๐Ÿ‡จ๐Ÿ‡ฝ"},
50
+ {:name=>"Cocos (Keeling) Islands", :short_name=>"CC", :code=>"+61", :flag=>"๐Ÿ‡จ๐Ÿ‡จ"},
51
+ {:name=>"Colombia", :short_name=>"CO", :code=>"+57", :flag=>"๐Ÿ‡จ๐Ÿ‡ด"},
52
+ {:name=>"Comoros", :short_name=>"KM", :code=>"+269", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ฒ"},
53
+ {:name=>"Congo", :short_name=>"CG", :code=>"+242", :flag=>"๐Ÿ‡จ๐Ÿ‡ฌ"},
54
+ {:name=>"Congo, The Democratic Republic of the", :short_name=>"CD", :code=>"+243", :flag=>"๐Ÿ‡จ๐Ÿ‡ฉ"},
55
+ {:name=>"Cook Islands", :short_name=>"CK", :code=>"+682", :flag=>"๐Ÿ‡จ๐Ÿ‡ฐ"},
56
+ {:name=>"Costa Rica", :short_name=>"CR", :code=>"+506", :flag=>"๐Ÿ‡จ๐Ÿ‡ท"},
57
+ {:name=>"Croatia", :short_name=>"HR", :code=>"+385", :flag=>"๐Ÿ‡ญ๐Ÿ‡ท"},
58
+ {:name=>"Cuba", :short_name=>"CU", :code=>"+53", :flag=>"๐Ÿ‡จ๐Ÿ‡บ"},
59
+ {:name=>"Curaรงao", :short_name=>"CW", :code=>"+599", :flag=>"๐Ÿ‡จ๐Ÿ‡ผ"},
60
+ {:name=>"Cyprus", :short_name=>"CY", :code=>"+357", :flag=>"๐Ÿ‡จ๐Ÿ‡พ"},
61
+ {:name=>"Czechia", :short_name=>"CZ", :code=>"+420", :flag=>"๐Ÿ‡จ๐Ÿ‡ฟ"},
62
+ {:name=>"Cรดte d'Ivoire", :short_name=>"CI", :code=>"+225", :flag=>"๐Ÿ‡จ๐Ÿ‡ฎ"},
63
+ {:name=>"Denmark", :short_name=>"DK", :code=>"+45", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ฐ"},
64
+ {:name=>"Djibouti", :short_name=>"DJ", :code=>"+253", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ฏ"},
65
+ {:name=>"Dominica", :short_name=>"DM", :code=>"+1", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ฒ"},
66
+ {:name=>"Dominican Republic", :short_name=>"DO", :code=>"+1", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ด"},
67
+ {:name=>"Ecuador", :short_name=>"EC", :code=>"+593", :flag=>"๐Ÿ‡ช๐Ÿ‡จ"},
68
+ {:name=>"Egypt", :short_name=>"EG", :code=>"+20", :flag=>"๐Ÿ‡ช๐Ÿ‡ฌ"},
69
+ {:name=>"El Salvador", :short_name=>"SV", :code=>"+503", :flag=>"๐Ÿ‡ธ๐Ÿ‡ป"},
70
+ {:name=>"Equatorial Guinea", :short_name=>"GQ", :code=>"+240", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ถ"},
71
+ {:name=>"Eritrea", :short_name=>"ER", :code=>"+291", :flag=>"๐Ÿ‡ช๐Ÿ‡ท"},
72
+ {:name=>"Estonia", :short_name=>"EE", :code=>"+372", :flag=>"๐Ÿ‡ช๐Ÿ‡ช"},
73
+ {:name=>"Eswatini", :short_name=>"SZ", :code=>"+268", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฟ"},
74
+ {:name=>"Ethiopia", :short_name=>"ET", :code=>"+251", :flag=>"๐Ÿ‡ช๐Ÿ‡น"},
75
+ {:name=>"Falkland Islands (Malvinas)", :short_name=>"FK", :code=>"+500", :flag=>"๐Ÿ‡ซ๐Ÿ‡ฐ"},
76
+ {:name=>"Faroe Islands", :short_name=>"FO", :code=>"+298", :flag=>"๐Ÿ‡ซ๐Ÿ‡ด"},
77
+ {:name=>"Fiji", :short_name=>"FJ", :code=>"+679", :flag=>"๐Ÿ‡ซ๐Ÿ‡ฏ"},
78
+ {:name=>"Finland", :short_name=>"FI", :code=>"+358", :flag=>"๐Ÿ‡ซ๐Ÿ‡ฎ"},
79
+ {:name=>"France", :short_name=>"FR", :code=>"+33", :flag=>"๐Ÿ‡ซ๐Ÿ‡ท"},
80
+ {:name=>"French Guiana", :short_name=>"GF", :code=>"+594", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ซ"},
81
+ {:name=>"French Polynesia", :short_name=>"PF", :code=>"+689", :flag=>"๐Ÿ‡ต๐Ÿ‡ซ"},
82
+ {:name=>"Gabon", :short_name=>"GA", :code=>"+241", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฆ"},
83
+ {:name=>"Gambia", :short_name=>"GM", :code=>"+220", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฒ"},
84
+ {:name=>"Georgia", :short_name=>"GE", :code=>"+995", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ช"},
85
+ {:name=>"Germany", :short_name=>"DE", :code=>"+49", :flag=>"๐Ÿ‡ฉ๐Ÿ‡ช"},
86
+ {:name=>"Ghana", :short_name=>"GH", :code=>"+233", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ญ"},
87
+ {:name=>"Gibraltar", :short_name=>"GI", :code=>"+350", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฎ"},
88
+ {:name=>"Greece", :short_name=>"GR", :code=>"+30", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ท"},
89
+ {:name=>"Greenland", :short_name=>"GL", :code=>"+299", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฑ"},
90
+ {:name=>"Grenada", :short_name=>"GD", :code=>"+1", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฉ"},
91
+ {:name=>"Guadeloupe", :short_name=>"GP", :code=>"+590", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ต"},
92
+ {:name=>"Guam", :short_name=>"GU", :code=>"+1", :flag=>"๐Ÿ‡ฌ๐Ÿ‡บ"},
93
+ {:name=>"Guatemala", :short_name=>"GT", :code=>"+502", :flag=>"๐Ÿ‡ฌ๐Ÿ‡น"},
94
+ {:name=>"Guernsey", :short_name=>"GG", :code=>"+44", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ฌ"},
95
+ {:name=>"Guinea", :short_name=>"GN", :code=>"+224", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ณ"},
96
+ {:name=>"Guinea-Bissau", :short_name=>"GW", :code=>"+245", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ผ"},
97
+ {:name=>"Guyana", :short_name=>"GY", :code=>"+592", :flag=>"๐Ÿ‡ฌ๐Ÿ‡พ"},
98
+ {:name=>"Haiti", :short_name=>"HT", :code=>"+509", :flag=>"๐Ÿ‡ญ๐Ÿ‡น"},
99
+ {:name=>"Holy See (Vatican City State)", :short_name=>"VA", :code=>"+39", :flag=>"๐Ÿ‡ป๐Ÿ‡ฆ"},
100
+ {:name=>"Honduras", :short_name=>"HN", :code=>"+504", :flag=>"๐Ÿ‡ญ๐Ÿ‡ณ"},
101
+ {:name=>"Hong Kong", :short_name=>"HK", :code=>"+852", :flag=>"๐Ÿ‡ญ๐Ÿ‡ฐ"},
102
+ {:name=>"Hungary", :short_name=>"HU", :code=>"+36", :flag=>"๐Ÿ‡ญ๐Ÿ‡บ"},
103
+ {:name=>"Iceland", :short_name=>"IS", :code=>"+354", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ธ"},
104
+ {:name=>"India", :short_name=>"IN", :code=>"+91", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ณ"},
105
+ {:name=>"Indonesia", :short_name=>"ID", :code=>"+62", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ฉ"},
106
+ {:name=>"Iran", :short_name=>"IR", :code=>"+98", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ท"},
107
+ {:name=>"Iraq", :short_name=>"IQ", :code=>"+964", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ถ"},
108
+ {:name=>"Ireland", :short_name=>"IE", :code=>"+353", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ช"},
109
+ {:name=>"Isle of Man", :short_name=>"IM", :code=>"+44", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ฒ"},
110
+ {:name=>"Israel", :short_name=>"IL", :code=>"+972", :flag=>"๐Ÿ‡ฎ๐Ÿ‡ฑ"},
111
+ {:name=>"Italy", :short_name=>"IT", :code=>"+39", :flag=>"๐Ÿ‡ฎ๐Ÿ‡น"},
112
+ {:name=>"Jamaica", :short_name=>"JM", :code=>"+1", :flag=>"๐Ÿ‡ฏ๐Ÿ‡ฒ"},
113
+ {:name=>"Japan", :short_name=>"JP", :code=>"+81", :flag=>"๐Ÿ‡ฏ๐Ÿ‡ต"},
114
+ {:name=>"Jersey", :short_name=>"JE", :code=>"+44", :flag=>"๐Ÿ‡ฏ๐Ÿ‡ช"},
115
+ {:name=>"Jordan", :short_name=>"JO", :code=>"+962", :flag=>"๐Ÿ‡ฏ๐Ÿ‡ด"},
116
+ {:name=>"Kazakhstan", :short_name=>"KZ", :code=>"+7", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ฟ"},
117
+ {:name=>"Kenya", :short_name=>"KE", :code=>"+254", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ช"},
118
+ {:name=>"Kiribati", :short_name=>"KI", :code=>"+686", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ฎ"},
119
+ {:name=>"Kuwait", :short_name=>"KW", :code=>"+965", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ผ"},
120
+ {:name=>"Kyrgyzstan", :short_name=>"KG", :code=>"+996", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ฌ"},
121
+ {:name=>"Lao People's Democratic Republic", :short_name=>"LA", :code=>"+856", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ฆ"},
122
+ {:name=>"Latvia", :short_name=>"LV", :code=>"+371", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ป"},
123
+ {:name=>"Lebanon", :short_name=>"LB", :code=>"+961", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ง"},
124
+ {:name=>"Lesotho", :short_name=>"LS", :code=>"+266", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ธ"},
125
+ {:name=>"Liberia", :short_name=>"LR", :code=>"+231", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ท"},
126
+ {:name=>"Libya", :short_name=>"LY", :code=>"+218", :flag=>"๐Ÿ‡ฑ๐Ÿ‡พ"},
127
+ {:name=>"Liechtenstein", :short_name=>"LI", :code=>"+423", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ฎ"},
128
+ {:name=>"Lithuania", :short_name=>"LT", :code=>"+370", :flag=>"๐Ÿ‡ฑ๐Ÿ‡น"},
129
+ {:name=>"Luxembourg", :short_name=>"LU", :code=>"+352", :flag=>"๐Ÿ‡ฑ๐Ÿ‡บ"},
130
+ {:name=>"Macao", :short_name=>"MO", :code=>"+853", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ด"},
131
+ {:name=>"Madagascar", :short_name=>"MG", :code=>"+261", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฌ"},
132
+ {:name=>"Malawi", :short_name=>"MW", :code=>"+265", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ผ"},
133
+ {:name=>"Malaysia", :short_name=>"MY", :code=>"+60", :flag=>"๐Ÿ‡ฒ๐Ÿ‡พ"},
134
+ {:name=>"Maldives", :short_name=>"MV", :code=>"+960", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ป"},
135
+ {:name=>"Mali", :short_name=>"ML", :code=>"+223", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฑ"},
136
+ {:name=>"Malta", :short_name=>"MT", :code=>"+356", :flag=>"๐Ÿ‡ฒ๐Ÿ‡น"},
137
+ {:name=>"Marshall Islands", :short_name=>"MH", :code=>"+692", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ญ"},
138
+ {:name=>"Martinique", :short_name=>"MQ", :code=>"+596", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ถ"},
139
+ {:name=>"Mauritania", :short_name=>"MR", :code=>"+222", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ท"},
140
+ {:name=>"Mauritius", :short_name=>"MU", :code=>"+230", :flag=>"๐Ÿ‡ฒ๐Ÿ‡บ"},
141
+ {:name=>"Mayotte", :short_name=>"YT", :code=>"+262", :flag=>"๐Ÿ‡พ๐Ÿ‡น"},
142
+ {:name=>"Mexico", :short_name=>"MX", :code=>"+52", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฝ"},
143
+ {:name=>"Micronesia, Federated States of", :short_name=>"FM", :code=>"+691", :flag=>"๐Ÿ‡ซ๐Ÿ‡ฒ"},
144
+ {:name=>"Moldova", :short_name=>"MD", :code=>"+373", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฉ"},
145
+ {:name=>"Monaco", :short_name=>"MC", :code=>"+377", :flag=>"๐Ÿ‡ฒ๐Ÿ‡จ"},
146
+ {:name=>"Mongolia", :short_name=>"MN", :code=>"+976", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ณ"},
147
+ {:name=>"Montenegro", :short_name=>"ME", :code=>"+382", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ช"},
148
+ {:name=>"Montserrat", :short_name=>"MS", :code=>"+1", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ธ"},
149
+ {:name=>"Morocco", :short_name=>"MA", :code=>"+212", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฆ"},
150
+ {:name=>"Mozambique", :short_name=>"MZ", :code=>"+258", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฟ"},
151
+ {:name=>"Myanmar", :short_name=>"MM", :code=>"+95", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฒ"},
152
+ {:name=>"Namibia", :short_name=>"NA", :code=>"+264", :flag=>"๐Ÿ‡ณ๐Ÿ‡ฆ"},
153
+ {:name=>"Nauru", :short_name=>"NR", :code=>"+674", :flag=>"๐Ÿ‡ณ๐Ÿ‡ท"},
154
+ {:name=>"Nepal", :short_name=>"NP", :code=>"+977", :flag=>"๐Ÿ‡ณ๐Ÿ‡ต"},
155
+ {:name=>"Netherlands", :short_name=>"NL", :code=>"+31", :flag=>"๐Ÿ‡ณ๐Ÿ‡ฑ"},
156
+ {:name=>"New Caledonia", :short_name=>"NC", :code=>"+687", :flag=>"๐Ÿ‡ณ๐Ÿ‡จ"},
157
+ {:name=>"New Zealand", :short_name=>"NZ", :code=>"+64", :flag=>"๐Ÿ‡ณ๐Ÿ‡ฟ"},
158
+ {:name=>"Nicaragua", :short_name=>"NI", :code=>"+505", :flag=>"๐Ÿ‡ณ๐Ÿ‡ฎ"},
159
+ {:name=>"Niger", :short_name=>"NE", :code=>"+227", :flag=>"๐Ÿ‡ณ๐Ÿ‡ช"},
160
+ {:name=>"Nigeria", :short_name=>"NG", :code=>"+234", :flag=>"๐Ÿ‡ณ๐Ÿ‡ฌ"},
161
+ {:name=>"Niue", :short_name=>"NU", :code=>"+683", :flag=>"๐Ÿ‡ณ๐Ÿ‡บ"},
162
+ {:name=>"Norfolk Island", :short_name=>"NF", :code=>"+672", :flag=>"๐Ÿ‡ณ๐Ÿ‡ซ"},
163
+ {:name=>"North Macedonia", :short_name=>"MK", :code=>"+389", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ฐ"},
164
+ {:name=>"Northern Mariana Islands", :short_name=>"MP", :code=>"+1", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ต"},
165
+ {:name=>"Norway", :short_name=>"NO", :code=>"+47", :flag=>"๐Ÿ‡ณ๐Ÿ‡ด"},
166
+ {:name=>"Oman", :short_name=>"OM", :code=>"+968", :flag=>"๐Ÿ‡ด๐Ÿ‡ฒ"},
167
+ {:name=>"Pakistan", :short_name=>"PK", :code=>"+92", :flag=>"๐Ÿ‡ต๐Ÿ‡ฐ"},
168
+ {:name=>"Palau", :short_name=>"PW", :code=>"+680", :flag=>"๐Ÿ‡ต๐Ÿ‡ผ"},
169
+ {:name=>"Palestine", :short_name=>"PS", :code=>"+970", :flag=>"๐Ÿ‡ต๐Ÿ‡ธ"},
170
+ {:name=>"Panama", :short_name=>"PA", :code=>"+507", :flag=>"๐Ÿ‡ต๐Ÿ‡ฆ"},
171
+ {:name=>"Papua New Guinea", :short_name=>"PG", :code=>"+675", :flag=>"๐Ÿ‡ต๐Ÿ‡ฌ"},
172
+ {:name=>"Paraguay", :short_name=>"PY", :code=>"+595", :flag=>"๐Ÿ‡ต๐Ÿ‡พ"},
173
+ {:name=>"Peru", :short_name=>"PE", :code=>"+51", :flag=>"๐Ÿ‡ต๐Ÿ‡ช"},
174
+ {:name=>"Philippines", :short_name=>"PH", :code=>"+63", :flag=>"๐Ÿ‡ต๐Ÿ‡ญ"},
175
+ {:name=>"Pitcairn Islands", :short_name=>"PN", :code=>"+64", :flag=>"๐Ÿ‡ต๐Ÿ‡ณ"},
176
+ {:name=>"Poland", :short_name=>"PL", :code=>"+48", :flag=>"๐Ÿ‡ต๐Ÿ‡ฑ"},
177
+ {:name=>"Portugal", :short_name=>"PT", :code=>"+351", :flag=>"๐Ÿ‡ต๐Ÿ‡น"},
178
+ {:name=>"Puerto Rico", :short_name=>"PR", :code=>"+1", :flag=>"๐Ÿ‡ต๐Ÿ‡ท"},
179
+ {:name=>"Qatar", :short_name=>"QA", :code=>"+974", :flag=>"๐Ÿ‡ถ๐Ÿ‡ฆ"},
180
+ {:name=>"Rรฉunion", :short_name=>"RE", :code=>"+262", :flag=>"๐Ÿ‡ท๐Ÿ‡ช"},
181
+ {:name=>"Romania", :short_name=>"RO", :code=>"+40", :flag=>"๐Ÿ‡ท๐Ÿ‡ด"},
182
+ {:name=>"Russia", :short_name=>"RU", :code=>"+7", :flag=>"๐Ÿ‡ท๐Ÿ‡บ"},
183
+ {:name=>"Rwanda", :short_name=>"RW", :code=>"+250", :flag=>"๐Ÿ‡ท๐Ÿ‡ผ"},
184
+ {:name=>"Saint Barthรฉlemy", :short_name=>"BL", :code=>"+590", :flag=>"๐Ÿ‡ง๐Ÿ‡ฑ"},
185
+ {:name=>"Saint Helena, Ascension and Tristan da Cunha", :short_name=>"SH", :code=>"+290", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ธ"},
186
+ {:name=>"Saint Kitts and Nevis", :short_name=>"KN", :code=>"+1", :flag=>"๐Ÿ‡ฐ๐Ÿ‡ณ"},
187
+ {:name=>"Saint Lucia", :short_name=>"LC", :code=>"+1", :flag=>"๐Ÿ‡ฑ๐Ÿ‡จ"},
188
+ {:name=>"Saint Martin (French part)", :short_name=>"MF", :code=>"+590", :flag=>"๐Ÿ‡ฒ๐Ÿ‡ซ"},
189
+ {:name=>"Saint Pierre and Miquelon", :short_name=>"PM", :code=>"+508", :flag=>"๐Ÿ‡ต๐Ÿ‡ฒ"},
190
+ {:name=>"Saint Vincent and the Grenadines", :short_name=>"VC", :code=>"+1", :flag=>"๐Ÿ‡ป๐Ÿ‡จ"},
191
+ {:name=>"Samoa", :short_name=>"WS", :code=>"+685", :flag=>"๐Ÿ‡ผ๐Ÿ‡ธ"},
192
+ {:name=>"San Marino", :short_name=>"SM", :code=>"+378", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฒ"},
193
+ {:name=>"Sao Tome and Principe", :short_name=>"ST", :code=>"+239", :flag=>"๐Ÿ‡ธ๐Ÿ‡น"},
194
+ {:name=>"Saudi Arabia", :short_name=>"SA", :code=>"+966", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฆ"},
195
+ {:name=>"Senegal", :short_name=>"SN", :code=>"+221", :flag=>"๐Ÿ‡ธ๐Ÿ‡ณ"},
196
+ {:name=>"Serbia", :short_name=>"RS", :code=>"+381", :flag=>"๐Ÿ‡ท๐Ÿ‡ธ"},
197
+ {:name=>"Seychelles", :short_name=>"SC", :code=>"+248", :flag=>"๐Ÿ‡ธ๐Ÿ‡จ"},
198
+ {:name=>"Sierra Leone", :short_name=>"SL", :code=>"+232", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฑ"},
199
+ {:name=>"Singapore", :short_name=>"SG", :code=>"+65", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฌ"},
200
+ {:name=>"Sint Maarten (Dutch part)", :short_name=>"SX", :code=>"+1", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฝ"},
201
+ {:name=>"Slovakia", :short_name=>"SK", :code=>"+421", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฐ"},
202
+ {:name=>"Slovenia", :short_name=>"SI", :code=>"+386", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฎ"},
203
+ {:name=>"Solomon Islands", :short_name=>"SB", :code=>"+677", :flag=>"๐Ÿ‡ธ๐Ÿ‡ง"},
204
+ {:name=>"Somalia", :short_name=>"SO", :code=>"+252", :flag=>"๐Ÿ‡ธ๐Ÿ‡ด"},
205
+ {:name=>"South Africa", :short_name=>"ZA", :code=>"+27", :flag=>"๐Ÿ‡ฟ๐Ÿ‡ฆ"},
206
+ {:name=>"South Georgia and the South Sandwich Islands", :short_name=>"GS", :code=>"+500", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ธ"},
207
+ {:name=>"South Sudan", :short_name=>"SS", :code=>"+211", :flag=>"๐Ÿ‡ธ๐Ÿ‡ธ"},
208
+ {:name=>"Spain", :short_name=>"ES", :code=>"+34", :flag=>"๐Ÿ‡ช๐Ÿ‡ธ"},
209
+ {:name=>"Sri Lanka", :short_name=>"LK", :code=>"+94", :flag=>"๐Ÿ‡ฑ๐Ÿ‡ฐ"},
210
+ {:name=>"Sudan", :short_name=>"SD", :code=>"+249", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฉ"},
211
+ {:name=>"Suriname", :short_name=>"SR", :code=>"+597", :flag=>"๐Ÿ‡ธ๐Ÿ‡ท"},
212
+ {:name=>"Svalbard and Jan Mayen", :short_name=>"SJ", :code=>"+47", :flag=>"๐Ÿ‡ธ๐Ÿ‡ฏ"},
213
+ {:name=>"Sweden", :short_name=>"SE", :code=>"+46", :flag=>"๐Ÿ‡ธ๐Ÿ‡ช"},
214
+ {:name=>"Switzerland", :short_name=>"CH", :code=>"+41", :flag=>"๐Ÿ‡จ๐Ÿ‡ญ"},
215
+ {:name=>"Syria", :short_name=>"SY", :code=>"+963", :flag=>"๐Ÿ‡ธ๐Ÿ‡พ"},
216
+ {:name=>"Taiwan", :short_name=>"TW", :code=>"+886", :flag=>"๐Ÿ‡น๐Ÿ‡ผ"},
217
+ {:name=>"Tajikistan", :short_name=>"TJ", :code=>"+992", :flag=>"๐Ÿ‡น๐Ÿ‡ฏ"},
218
+ {:name=>"Tanzania", :short_name=>"TZ", :code=>"+255", :flag=>"๐Ÿ‡น๐Ÿ‡ฟ"},
219
+ {:name=>"Thailand", :short_name=>"TH", :code=>"+66", :flag=>"๐Ÿ‡น๐Ÿ‡ญ"},
220
+ {:name=>"Timor-Leste", :short_name=>"TL", :code=>"+670", :flag=>"๐Ÿ‡น๐Ÿ‡ฑ"},
221
+ {:name=>"Togo", :short_name=>"TG", :code=>"+228", :flag=>"๐Ÿ‡น๐Ÿ‡ฌ"},
222
+ {:name=>"Tokelau", :short_name=>"TK", :code=>"+690", :flag=>"๐Ÿ‡น๐Ÿ‡ฐ"},
223
+ {:name=>"Tonga", :short_name=>"TO", :code=>"+676", :flag=>"๐Ÿ‡น๐Ÿ‡ด"},
224
+ {:name=>"Trinidad and Tobago", :short_name=>"TT", :code=>"+1", :flag=>"๐Ÿ‡น๐Ÿ‡น"},
225
+ {:name=>"Tunisia", :short_name=>"TN", :code=>"+216", :flag=>"๐Ÿ‡น๐Ÿ‡ณ"},
226
+ {:name=>"Turkey", :short_name=>"TR", :code=>"+90", :flag=>"๐Ÿ‡น๐Ÿ‡ท"},
227
+ {:name=>"Turkmenistan", :short_name=>"TM", :code=>"+993", :flag=>"๐Ÿ‡น๐Ÿ‡ฒ"},
228
+ {:name=>"Tuvalu", :short_name=>"TV", :code=>"+688", :flag=>"๐Ÿ‡น๐Ÿ‡ป"},
229
+ {:name=>"Uganda", :short_name=>"UG", :code=>"+256", :flag=>"๐Ÿ‡บ๐Ÿ‡ฌ"},
230
+ {:name=>"Ukraine", :short_name=>"UA", :code=>"+380", :flag=>"๐Ÿ‡บ๐Ÿ‡ฆ"},
231
+ {:name=>"United Arab Emirates", :short_name=>"AE", :code=>"+971", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ช"},
232
+ {:name=>"United Kingdom", :short_name=>"GB", :code=>"+44", :flag=>"๐Ÿ‡ฌ๐Ÿ‡ง"},
233
+ {:name=>"United States", :short_name=>"US", :code=>"+1", :flag=>"๐Ÿ‡บ๐Ÿ‡ธ"},
234
+ {:name=>"Uruguay", :short_name=>"UY", :code=>"+598", :flag=>"๐Ÿ‡บ๐Ÿ‡พ"},
235
+ {:name=>"Uzbekistan", :short_name=>"UZ", :code=>"+998", :flag=>"๐Ÿ‡บ๐Ÿ‡ฟ"},
236
+ {:name=>"Vanuatu", :short_name=>"VU", :code=>"+678", :flag=>"๐Ÿ‡ป๐Ÿ‡บ"},
237
+ {:name=>"Venezuela", :short_name=>"VE", :code=>"+58", :flag=>"๐Ÿ‡ป๐Ÿ‡ช"},
238
+ {:name=>"Vietnam", :short_name=>"VN", :code=>"+84", :flag=>"๐Ÿ‡ป๐Ÿ‡ณ"},
239
+ {:name=>"Western Sahara", :short_name=>"EH", :code=>"+212", :flag=>"๐Ÿ‡ช๐Ÿ‡ญ"},
240
+ {:name=>"Yemen", :short_name=>"YE", :code=>"+967", :flag=>"๐Ÿ‡พ๐Ÿ‡ช"},
241
+ {:name=>"Zambia", :short_name=>"ZM", :code=>"+260", :flag=>"๐Ÿ‡ฟ๐Ÿ‡ฒ"},
242
+ {:name=>"Zimbabwe", :short_name=>"ZW", :code=>"+263", :flag=>"๐Ÿ‡ฟ๐Ÿ‡ผ"},
243
+ {:name=>"ร…land Islands", :short_name=>"AX", :code=>"+358", :flag=>"๐Ÿ‡ฆ๐Ÿ‡ฝ"}
244
+ ]
245
+
246
+ # get information of a specific country
247
+ def self.get_phone_code(country_name)
248
+ country = PHONE_CODES.find { |code| code[:name].downcase.include?(country_name.downcase) }
249
+ country || "Country not found"
250
+ end
251
+
252
+ # get information of a specific country
253
+ def self.get_country_from_code(phone_code)
254
+ countries = PHONE_CODES.select { |code| code[:code] == phone_code }
255
+ countries.empty? ? "Country not found" : countries
256
+ end
257
+
258
+ # get all the phone codes
259
+ def self.get_all_phone_codes()
260
+ PHONE_CODES
261
+ end
262
+
263
+ end
metadata ADDED
@@ -0,0 +1,58 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: my_phone_codes_gem
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Ali Haider
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-01-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: json
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.5'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.5'
27
+ description:
28
+ email: alihaider1793@gmail.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - README.md
34
+ - lib/my_phone_codes_gem.rb
35
+ homepage: https://github.com/alihaider1793/my_phone_codes_gem
36
+ licenses:
37
+ - MIT
38
+ metadata: {}
39
+ post_install_message:
40
+ rdoc_options: []
41
+ require_paths:
42
+ - lib
43
+ required_ruby_version: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ required_rubygems_version: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: '0'
53
+ requirements: []
54
+ rubygems_version: 3.2.33
55
+ signing_key:
56
+ specification_version: 4
57
+ summary: A gem to access phone codes and flags for different countries.
58
+ test_files: []