additory 0.1.0a2__py3-none-any.whl → 0.1.0a3__py3-none-any.whl

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 (43) hide show
  1. additory/__init__.py +4 -0
  2. additory/common/__init__.py +2 -2
  3. additory/common/backend.py +20 -4
  4. additory/common/distributions.py +1 -1
  5. additory/common/sample_data.py +19 -19
  6. additory/core/backends/arrow_bridge.py +7 -0
  7. additory/core/polars_expression_engine.py +66 -16
  8. additory/dynamic_api.py +42 -46
  9. additory/expressions/proxy.py +4 -1
  10. additory/synthetic/__init__.py +7 -95
  11. additory/synthetic/column_name_resolver.py +149 -0
  12. additory/{augment → synthetic}/distributions.py +2 -2
  13. additory/{augment → synthetic}/forecast.py +1 -1
  14. additory/synthetic/linked_list_parser.py +415 -0
  15. additory/synthetic/namespace_lookup.py +129 -0
  16. additory/{augment → synthetic}/smote.py +1 -1
  17. additory/{augment → synthetic}/strategies.py +11 -44
  18. additory/{augment/augmentor.py → synthetic/synthesizer.py} +75 -15
  19. additory/utilities/units.py +4 -1
  20. {additory-0.1.0a2.dist-info → additory-0.1.0a3.dist-info}/METADATA +10 -17
  21. {additory-0.1.0a2.dist-info → additory-0.1.0a3.dist-info}/RECORD +24 -40
  22. {additory-0.1.0a2.dist-info → additory-0.1.0a3.dist-info}/WHEEL +1 -1
  23. additory/augment/__init__.py +0 -24
  24. additory/augment/builtin_lists.py +0 -430
  25. additory/augment/list_registry.py +0 -177
  26. additory/synthetic/api.py +0 -220
  27. additory/synthetic/common_integration.py +0 -314
  28. additory/synthetic/config.py +0 -262
  29. additory/synthetic/engines.py +0 -529
  30. additory/synthetic/exceptions.py +0 -180
  31. additory/synthetic/file_managers.py +0 -518
  32. additory/synthetic/generator.py +0 -702
  33. additory/synthetic/generator_parser.py +0 -68
  34. additory/synthetic/integration.py +0 -319
  35. additory/synthetic/models.py +0 -241
  36. additory/synthetic/pattern_resolver.py +0 -573
  37. additory/synthetic/performance.py +0 -469
  38. additory/synthetic/polars_integration.py +0 -464
  39. additory/synthetic/proxy.py +0 -60
  40. additory/synthetic/schema_parser.py +0 -685
  41. additory/synthetic/validator.py +0 -553
  42. {additory-0.1.0a2.dist-info → additory-0.1.0a3.dist-info}/licenses/LICENSE +0 -0
  43. {additory-0.1.0a2.dist-info → additory-0.1.0a3.dist-info}/top_level.txt +0 -0
@@ -1,28 +1,20 @@
1
- additory/__init__.py,sha256=SSyfaU_p9v5SgoHrMXOmr1m-R7DjFFA5rimGS2MyCB0,331
2
- additory/dynamic_api.py,sha256=STF7a3Vs7bc0AJH5HoynVNsAY7xNvpnFP3xJnI1R-18,12177
1
+ additory/__init__.py,sha256=Q0vhhQxwcI-Wl-8TERWqYaq4_8gJXqUBUGSywlhdD3E,397
2
+ additory/dynamic_api.py,sha256=q38rax223ZX5lRNRPs0I7WXd1YZwBJEF2nm1IG-mzFI,11843
3
3
  additory/analysis/__init__.py,sha256=F_yhD_hcIWbwO1wrRe8Js1RI-vkozaKyWNIIEb-jSMk,986
4
4
  additory/analysis/cardinality.py,sha256=y4ttjk3VFNm3mEfNZaTegVQxH7btnmXgnDUSkctNuTo,2976
5
5
  additory/analysis/correlations.py,sha256=n0vIPW9lTTSPsPlr40YOIohTX3mUgGmSLdlBrkJZa1c,3909
6
6
  additory/analysis/distributions.py,sha256=nkYme_gkzdJ1FWlLJIV31CvoDc3GOOu8KlmeJ2jgkds,10777
7
7
  additory/analysis/quality.py,sha256=chow5ZcPaV7czKrycP-35pmBZJYCpLsy20rQ5U4qgCw,4221
8
8
  additory/analysis/scan.py,sha256=a6rP1VnwMEhapwIwynzYyX2IqfPcWMOJ4Ff2wRDzh40,14200
9
- additory/augment/__init__.py,sha256=Z4RiLUU_Ym3sZYePArI7BwX2ETwY_wMACopYFQ0_KwU,510
10
- additory/augment/augmentor.py,sha256=Ps3UcxqqgRpIbOopSiaO06dvR7mrQL0owrJc2nrLr4g,23754
11
- additory/augment/builtin_lists.py,sha256=NS45InOjDEDa7SkVK7O0RGWeFY9_IGP5e81XlogApg8,17791
12
- additory/augment/distributions.py,sha256=KE6w4xjBD05C1pYWCHK3WzNU7I1c0gUWGZNpmqvvsTk,695
13
- additory/augment/forecast.py,sha256=Rpmw8lCV5K7rKJR5JZ8rTAg6lXjkgalzNmp7IzG8A0E,34812
14
- additory/augment/list_registry.py,sha256=9pEPCGvMwMsOdlgLFNFTBmm0o2Uamf6l6AR_ALVMXd0,4332
15
- additory/augment/smote.py,sha256=3pUa_aiUebSBfOqaRbp3OXCflXEBIimDCFVSu-dGp2o,9084
16
- additory/augment/strategies.py,sha256=PUcplO4r9T9zqFdo75Yr8n8SMQ3RaWqKSGp_ejL5OK8,27520
17
- additory/common/__init__.py,sha256=QnCIhtPZxDQ5uPrYcE5kFst3quEIolIYavhKpA87RDY,3544
18
- additory/common/backend.py,sha256=WsePGyJdNC3ZwenQiTti_-SOLNODpleHMscv121Kzb4,9837
9
+ additory/common/__init__.py,sha256=yxwq52uABz5dpC2N7F2wPyvxcsczAxdWNkAKvjwRgys,3551
10
+ additory/common/backend.py,sha256=_VK2RGA4Ee_pUvuubBfdNYK3YU0zrEcYqNk-YkiIG4Y,10571
19
11
  additory/common/column_utils.py,sha256=w2zqmiogavgzD2K9-yeH4GLg0f6xLQkID-9QP_8JLxk,5333
20
- additory/common/distributions.py,sha256=_fUr0P2lxiQOakpYSWjWbFZQ0ckw5HmsU-CqjOE7n_A,21966
12
+ additory/common/distributions.py,sha256=5GZ-1V-E5-T0i1wXuD8v2N3lVbnZAjF18exLG_PE_Qk,21974
21
13
  additory/common/exceptions.py,sha256=S6l0Au0_y2HybPnB2c3SUl9M--HgqLLpj6TJasN5mlc,1207
22
14
  additory/common/lists.py,sha256=ItbUpm4YFTqBR5RfryeoIiyQdiRVvKHOnu9ZFshPjcw,6443
23
15
  additory/common/patterns.py,sha256=_Z6AVItn72nNYMJX-r93Z7SSZmVngQ7pzqbvhKgmBUQ,6892
24
16
  additory/common/resolver.py,sha256=9sfuWbHlvYvJlRx18W6BZU-3sgdo7qNRXB0WuzeZjUc,20574
25
- additory/common/sample_data.py,sha256=Jh1fi56_dBtVUGJPNbGk_4i8c6vlcofruriYPdIWsI8,5798
17
+ additory/common/sample_data.py,sha256=Zqjz4Ed-nUptOBw48A0L4BKwo3HEBN9hCnwpnQnM_1w,5838
26
18
  additory/common/validation.py,sha256=P3OQa6ae1NST_UcEW_MgWzSUKUPQpTwoZ5h4OnPGu5E,5930
27
19
  additory/core/__init__.py,sha256=dhEBneupBndNBlsQI8niFZgQjUJDLORzRcFtvXGXg-E,630
28
20
  additory/core/ast_builder.py,sha256=cW65w-utVGjUJos1ffmfEPgPbxVwN6WU-vcDKrBPy8o,5303
@@ -39,37 +31,29 @@ additory/core/logging.py,sha256=5wv_J4I0eaedqcXwrkD7T5zqOfNMCXCrMCOZY__PeCw,695
39
31
  additory/core/memory_manager.py,sha256=b1H1juAg2CXioSI4N65XldPdKxHTXRI3MSTSAtKV3S0,20178
40
32
  additory/core/namespace_manager.py,sha256=RWbMZBcoXvpdcz5km2CJlXcrDwWE4DES-lGET4r98Pk,23325
41
33
  additory/core/parser.py,sha256=yVh87CiE4fmrg4jFisNMKTHlz4OpAMNVFF4thq6I0JE,4748
42
- additory/core/polars_expression_engine.py,sha256=BVXllRGDxBrhvFrZwblIW_T7o5fpMIRXFe5v7hK_WiU,21138
34
+ additory/core/polars_expression_engine.py,sha256=O4s-ZtHgP2SQd_LsdGgCPVOACJgJsL7W48wj6CbutFw,23158
43
35
  additory/core/registry.py,sha256=_K9DY4lprBUbMJl5D18D9lmOjwhDawxXpV4_hdSBy7o,5621
44
36
  additory/core/sample_data_manager.py,sha256=urBT2T5NZZM0KXriuW5xfCwC1SA3WHwraVMtz5qyw7Y,19800
45
37
  additory/core/user_namespace.py,sha256=qgPhuHuhiePa9Qr2CtBCuflpUfxD8wTakWFcp5Ve2xU,22522
46
38
  additory/core/validator.py,sha256=em71_1TAdk44B2yyNwzmxkh4pMpqAq1JN_oHoDH7fCk,588
47
39
  additory/core/backends/__init__.py,sha256=Qp70UI5UEGBjr8TDcD3ZQKjtL91JPUEv6wXWLNqk6XI,587
48
- additory/core/backends/arrow_bridge.py,sha256=5f69I1fSjIKCk-xkgBVY-FEuNjt4wUvwc0r4RaWP4Mk,16718
40
+ additory/core/backends/arrow_bridge.py,sha256=2BCWkoCxmI5jr9ZgmJTB-hpWaMj2B9S6BTtvFuLrm_o,16876
49
41
  additory/core/backends/cudf_bridge.py,sha256=TWthiZIZFUPdrXRjml6y63SOLkqgVL7dZ0eqaidx2LY,12821
50
42
  additory/expressions/__init__.py,sha256=FYZjHA7zJie1HRAQjMo6MdQxwYW2owrHulKXjfBFg4A,781
51
43
  additory/expressions/engine.py,sha256=yOzZDNKjltP-HLVKBL4BXke63ALqgRFXgHK4YeeXLQ8,21138
52
44
  additory/expressions/parser.py,sha256=yVh87CiE4fmrg4jFisNMKTHlz4OpAMNVFF4thq6I0JE,4748
53
- additory/expressions/proxy.py,sha256=DgeQMim_ija2XU617zTNHBv78v4v3YKVX9J2p4Vu7JI,21910
45
+ additory/expressions/proxy.py,sha256=kohaZTtU5f_r3O_WidnNKXzN3IAmAnt6M0L5F3mpb7I,22044
54
46
  additory/expressions/registry.py,sha256=R0nj3-qRx5Q9OxsevIeWGOfIvBcltYNmnUf8QCu06s8,11015
55
47
  additory/expressions/samples.py,sha256=urBT2T5NZZM0KXriuW5xfCwC1SA3WHwraVMtz5qyw7Y,19800
56
- additory/synthetic/__init__.py,sha256=IpT3BjKNC3YeCY68cdwEjiHvcrDmmJ1FWMBbx9xPhSs,2529
57
- additory/synthetic/api.py,sha256=iKrx7BiEi2F12I7-lOVFbh7N0Rmz0b5eL1kG2EBWUG0,7576
58
- additory/synthetic/common_integration.py,sha256=HlFL76sy8fWxpgqcS7PYlfN7OCY9k0dfJWht1x-aVb8,10597
59
- additory/synthetic/config.py,sha256=5XEI2IuS0MVu8OoPU-D1zl5o5XmLEZyhaUY8DZ65d14,9437
60
- additory/synthetic/engines.py,sha256=MAn5eNNSIkwccukzIJzUlhF-BPpdfcZxdfU04UqxFCE,22051
61
- additory/synthetic/exceptions.py,sha256=rsnzvPRQ_HjtYZoP0iDZrXKvhBmUuoaysBwCAxR_k-Y,6722
62
- additory/synthetic/file_managers.py,sha256=e89WQlSFDTSqGRVUVKi02GM4KIG0MNyY5lbETiRWrdI,18484
63
- additory/synthetic/generator.py,sha256=LzSdF01JwXmA3K5xQBA4PC7rPxxYhEd9U9yUAdJvrbM,30610
64
- additory/synthetic/generator_parser.py,sha256=QMStjZrQMc5iQFtouiWfNI-yGddZ4zfL1E2mZyhABcg,1881
65
- additory/synthetic/integration.py,sha256=XgGrJS1iQQ8AjYWsRFNabrEpc_iBHb_FKhZJmrJIlUk,12351
66
- additory/synthetic/models.py,sha256=x2cmfboIJ6GJzB930KlVLigE0F6CLPk_FaemGaR9XzE,8144
67
- additory/synthetic/pattern_resolver.py,sha256=UuXro8c7QawB8zg1iuyDN5LXLnLh62QpR1TLKolnxWQ,24526
68
- additory/synthetic/performance.py,sha256=9B8ai_-VgRckqH4AABneELR5epuu7Xe63kIBez6pxF4,19132
69
- additory/synthetic/polars_integration.py,sha256=Rx0n_pwOo3IWEYBjW03iTbaFL4GLoFPCrLvRimDpAcg,18379
70
- additory/synthetic/proxy.py,sha256=pfpkk4ZVYwRFkoX9a8zMjCG0PcNEcOdiDCOnDuWmmdk,1709
71
- additory/synthetic/schema_parser.py,sha256=MpqmMWtldxBr9HMKiNGmw5gf0tGL9cQTpRxIzt2FHr4,28644
72
- additory/synthetic/validator.py,sha256=uobkWARyoq8QXl2n8yPDgZztjaDOec_3blLZT_1_oAI,22800
48
+ additory/synthetic/__init__.py,sha256=Zw0GqXXh5v6_1S6SxPcEYL7CzNmaRuVk1aC3qBOQ2RE,342
49
+ additory/synthetic/column_name_resolver.py,sha256=-kh6bxitaSUwk28TZ5yPzbLUe6nxU7oYsazKEwumtRA,4913
50
+ additory/synthetic/distributions.py,sha256=jrwDGVy_Vcm5XXoGKy-V0LrpnxdGM5p84GklKq-0b_A,705
51
+ additory/synthetic/forecast.py,sha256=F2XoKEDFDJ47W6bSzy2jXYWU3PN5X0l16YvtfxXc4GU,34820
52
+ additory/synthetic/linked_list_parser.py,sha256=YysP1ODyABJzUe82QLEfbuxGknTCyWb81tf8Pueg-oE,13002
53
+ additory/synthetic/namespace_lookup.py,sha256=4ILe1MWubGvRsF_xbQLybBbr3hG0iMTseypigB_66TI,4096
54
+ additory/synthetic/smote.py,sha256=ub8pTA5Ez3WjXP15GtyUqCRztiPr7XfHbNGTucUFErA,9092
55
+ additory/synthetic/strategies.py,sha256=k0gc5ic6LfJ2gjp8UiEP9txAqeIcen911jaAXhSkgGs,26269
56
+ additory/synthetic/synthesizer.py,sha256=9YHXyA9wfUyMZLse7nBMJ1hQ0F9SJmF4j01y4Oyebzg,26405
73
57
  additory/utilities/__init__.py,sha256=I28c5ZqqZ2VsMIG40fUBJhnc930cFXHJX22xQWARXq8,1679
74
58
  additory/utilities/encoding.py,sha256=DhTaTeUlJOSixQ3-hgUwSy1jMJAYadV2bQHuONVzzEY,20995
75
59
  additory/utilities/games.py,sha256=nEPGUup0RHgzVKdgg8sRMraDxACaIVDFmMuBBjGDrVI,8364
@@ -78,10 +62,10 @@ additory/utilities/lookup.py,sha256=itE_ntAFHae92tQS43P165-87PHF5hTaH1Qy7ENoYak,
78
62
  additory/utilities/matchers.py,sha256=x8Nve49_TzJ7jneueiXvnzMgI3ov3o0dlU_h4xFr8Qw,6120
79
63
  additory/utilities/resolvers.py,sha256=ykMfce2f9in9wqHgmljCFIil8xGcalT0FBwFIwHOlnk,7127
80
64
  additory/utilities/settings.py,sha256=5XB2S3L7Ht486LZMDacYTuyB_ta7sVohUFEKzMo1nDU,4698
81
- additory/utilities/units.py,sha256=BysabwFBFZmMHwIYV4l0ikXP3HdRSlEVrwfLiucPTQE,30439
65
+ additory/utilities/units.py,sha256=75VFSLCVhX3dcFokh-jbZepDRaFRuO2QpGZNQbG8fag,30526
82
66
  additory/utilities/validators.py,sha256=K1ZYsPL3W7XkIUECVWov4HZxTlzqs9Rbc61Vidh2F8o,4213
83
- additory-0.1.0a2.dist-info/licenses/LICENSE,sha256=ztobegtjJRyvQntGjQ1w80MGuTOeMmWkh5Be-pFyq3I,1079
84
- additory-0.1.0a2.dist-info/METADATA,sha256=2-WVNHfNioIQnA1B7u46x6VwlMPNvep2GZhq7LfJCj8,8491
85
- additory-0.1.0a2.dist-info/WHEEL,sha256=qELbo2s1Yzl39ZmrAibXA2jjPLUYfnVhUNTlyF1rq0Y,92
86
- additory-0.1.0a2.dist-info/top_level.txt,sha256=4zphwXiI6HEl40fdjMXoUp9JNIqQ-tgYWeo3zqKqvEk,9
87
- additory-0.1.0a2.dist-info/RECORD,,
67
+ additory-0.1.0a3.dist-info/licenses/LICENSE,sha256=ztobegtjJRyvQntGjQ1w80MGuTOeMmWkh5Be-pFyq3I,1079
68
+ additory-0.1.0a3.dist-info/METADATA,sha256=4mlzxPW1q3nCdKAj27Fr3KVv4FTZhbrVtYOYRAcMdsw,8094
69
+ additory-0.1.0a3.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
70
+ additory-0.1.0a3.dist-info/top_level.txt,sha256=4zphwXiI6HEl40fdjMXoUp9JNIqQ-tgYWeo3zqKqvEk,9
71
+ additory-0.1.0a3.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.10.1)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,24 +0,0 @@
1
- """
2
- Augment Module - Data Augmentation Functionality
3
-
4
- This module provides data augmentation capabilities to add synthetic rows
5
- to existing dataframes by intelligently sampling from existing data.
6
- """
7
-
8
- from additory.augment.augmentor import augment
9
- from additory.augment.list_registry import (
10
- register_list,
11
- list_available,
12
- list_show,
13
- list_exists,
14
- list_remove
15
- )
16
-
17
- __all__ = [
18
- "augment",
19
- "register_list",
20
- "list_available",
21
- "list_show",
22
- "list_exists",
23
- "list_remove"
24
- ]
@@ -1,430 +0,0 @@
1
- """
2
- Built-in Lists Registry for Data Augmentation
3
-
4
- Provides globally available lists for choice-based augmentation strategies.
5
- These lists are loaded in memory for instant access (O(1) lookup, zero I/O).
6
-
7
- Users can override any list using add.register_list("list_name", [...])
8
-
9
- List Resolution Order:
10
- 1. User-registered lists (highest priority)
11
- 2. Built-in lists (this module)
12
- 3. Error if not found
13
- """
14
-
15
- # =============================================================================
16
- # NAMES - Globally diverse names representing major world regions
17
- # =============================================================================
18
-
19
- FIRST_NAMES = [
20
- # India & South Asia
21
- "Arjun", "Vikram", "Samuel", "Harpreet", "Kabir", "Aarav", "Aadhya",
22
- "Fatima", "Anita", "Zoya", "Meera", "Nisha", "Ayesha", "Ritika", "Ira",
23
- "Dev", "Karan", "Rhea", "Tanvi", "Varun", "Neha", "Ishaan", "Tara",
24
- "Aditya", "Kavya", "Suresh", "Priya", "Manish", "Shreya", "Naveen",
25
- "Diya", "Rohit", "Ananya", "Kunal", "Pooja", "Raj", "Sneha", "Suraj",
26
- "Lavanya", "Gaurav", "Shalini", "Mohan", "Vandana", "Karthik", "Bhavana",
27
- "Raghav", "Simran", "Tejas", "Anjali", "Nitin", "Radhika", "Abhishek",
28
- "Shweta", "Parth", "Ishita", "Siddharth", "Malini", "Vivek", "Yamini",
29
- "Pranav", "Aarti", "Rajesh", "Komal", "Sanjay", "Madhuri", "Deepak",
30
- "Sonali", "Hemant", "Kirti", "Ashok", "Rupa", "Jatin", "Leela", "Vinay",
31
- "Charu", "Harish", "Nandini", "Shankar", "Pallavi", "Arvind", "Kusum",
32
- "Manoj", "Gayatri", "Sagar", "Ritu", "Bharat", "Chitra", "Keshav", "Lata",
33
- "Om", "Padma", "Yash", "Seema", "Kartik", "Madhav", "Veena", "Rohan",
34
- "Amar", "Abdul", "Antony",
35
- # Americas & Europe
36
- "James", "Mary", "Robert", "Oliver", "Olivia", "George",
37
- # East Asia
38
- "Wei", "Mei", "Jun", "Haruto", "Yui", "Ren", "Min-jun", "Seo-yeon", "Ji-ho",
39
- # Europe
40
- "Gabriel", "Emma", "Louis", "Noah", "Emilia", "Leon", "Hugo", "Lucia",
41
- "Mateo", "Leonardo", "Sofia", "Francesco", "Miguel", "Helena", "Arthur",
42
- "Santiago", "Maria", "Jose", "Liam", "Charlotte", "William", "Alexander",
43
- "Dmitry", "Mia", "Ethan",
44
- # Africa
45
- "Chinedu", "Aisha", "Oluwaseun",
46
- # Middle East
47
- "Mohamed", "Fatima", "Ahmed", "Yusuf", "Elif", "Mustafa", "Abdullah",
48
- "Omar", "Mariam",
49
- # Southeast Asia
50
- "Putra", "Siti", "Agus", "Juan", "Angel", "Jose", "Rahim", "Ayesha",
51
- "Karim", "Anh", "Linh", "Minh", "Niran", "Mali", "Arun",
52
- # Additional
53
- "Chloe", "Jayden", "Saif", "Khalid", "Daan", "Sem", "Lucas", "Alice",
54
- "William", "Jakob", "Nora", "Emil", "Oscar", "Alma", "Jack", "Aoife",
55
- "Conor", "Leo", "Isla"
56
- ]
57
-
58
- LAST_NAMES = [
59
- # India & South Asia
60
- "Rao", "Sharma", "Gupta", "Kumar", "Reddy", "Iyer", "Nair", "Pillai",
61
- "Shetty", "Gowda", "Verma", "Yadav", "Chauhan", "Thakur", "Jha", "Tiwari",
62
- "Mishra", "Pandey", "Shukla", "Saxena", "Bhat", "Naidu", "Kulkarni",
63
- "Deshmukh", "Patil", "Joshi", "Shinde", "Gaikwad", "Salvi", "Khatri",
64
- "Kapoor", "Khanna", "Mehta", "Shah", "Soni", "Modi", "Jain", "Agarwal",
65
- "Bansal", "Mahajan", "Chawla", "Sethi", "Malhotra", "Anand", "Chopra",
66
- "Gill", "Sandhu", "Sidhu", "Ahluwalia", "Bajwa", "Rawat", "Negi", "Bisht",
67
- "Rana", "Sinha", "Bose", "Roy", "Dutta", "Mukherjee", "Sengupta",
68
- "Chakraborty", "Basu", "Deb", "Paul", "Sen", "Konar", "Mondal", "Pal",
69
- "Saha", "Halder", "Barik", "Behera", "Pradhan", "Swain", "Mohanty", "Raut",
70
- "Jadhav", "Pawar", "Kamble", "More", "Wagh", "Lokhande", "Bendre", "Naik",
71
- "Hegde", "Babu", "Varma", "Menon", "Cherian", "Kurian", "Thomas", "Mathew",
72
- "George", "Abraham", "Philip", "Sunny", "Chacko", "Joseph", "Antony",
73
- # Americas & Europe
74
- "Smith", "Johnson", "Williams", "Jones", "Taylor", "Wang", "Chen", "Zhao",
75
- "Sato", "Suzuki", "Takahashi", "Kim", "Lee", "Park", "Martin", "Bernard",
76
- "Dubois", "Muller", "Schmidt", "Schneider", "Garcia", "Fernandez", "Lopez",
77
- "Rossi", "Russo", "Ferrari", "Silva", "Santos", "Oliveira", "Hernandez",
78
- "Martinez", "Brown", "Tremblay", "Ivanov", "Smirnov", "Kuznetsov",
79
- # Africa
80
- "Nkosi", "Botha", "Dlamini", "Okafor", "Ibrahim", "Adeyemi",
81
- # Middle East
82
- "Hassan", "Ali", "Youssef", "Yilmaz", "Kaya", "Demir", "Al-Saud",
83
- "Al-Harbi", "Al-Qahtani",
84
- # Southeast Asia
85
- "Pratama", "Wijaya", "Saputra", "Dela Cruz", "Reyes", "Khan", "Malik",
86
- "Chowdhury", "Islam", "Rahman", "Ahmed", "Nguyen", "Tran", "Le", "Saetang",
87
- "Boonmee", "Chaiyaporn", "Tan", "Lim", "Al-Nahyan", "Al-Mansoori",
88
- "Al-Falasi", "de Jong", "Jansen", "de Vries", "Andersson", "Johansson",
89
- "Karlsson", "Hansen", "Johansen", "Olsen", "Nielsen", "Jensen", "Murphy",
90
- "Kelly", "O'Brien", "Patel", "Das", "Chatterjee", "Banerjee", "Ghosh"
91
- ]
92
-
93
- # =============================================================================
94
- # FINANCIAL - Major global banks and financial institutions
95
- # =============================================================================
96
-
97
- BANKS = [
98
- # India
99
- "State Bank of India (SBI)", "HDFC Bank", "ICICI Bank", "Axis Bank",
100
- "Kotak Mahindra Bank", "Bank of Baroda", "Punjab National Bank",
101
- "Canara Bank", "Union Bank of India", "IDFC First Bank",
102
- # China
103
- "Industrial and Commercial Bank of China", "China Construction Bank",
104
- "Agricultural Bank of China", "Bank of China", "Bank of Communications",
105
- "China Merchants Bank", "Postal Savings Bank of China", "Industrial Bank Co",
106
- "Shanghai Pudong Development Bank",
107
- # Japan
108
- "Mitsubishi UFJ Financial Group", "Sumitomo Mitsui Financial Group",
109
- "Mizuho Financial Group", "Resona Holdings", "Japan Post Bank",
110
- # United States
111
- "JPMorgan Chase", "Bank of America", "Citibank", "Wells Fargo",
112
- "Goldman Sachs", "Morgan Stanley", "US Bank", "PNC Financial",
113
- "Truist Financial", "Capital One",
114
- # United Kingdom
115
- "HSBC", "Barclays", "Lloyds Banking Group", "NatWest Group",
116
- "Standard Chartered",
117
- # Canada
118
- "Royal Bank of Canada", "Toronto Dominion Bank", "Scotiabank",
119
- "Bank of Montreal", "CIBC",
120
- # France
121
- "BNP Paribas", "Credit Agricole", "Societe Generale", "BPCE Group",
122
- "La Banque Postale",
123
- # Germany
124
- "Deutsche Bank", "Commerzbank", "KfW Bankengruppe", "DZ Bank",
125
- "Landesbank Baden Wuerttemberg",
126
- # Switzerland
127
- "UBS", "Julius Baer", "Raiffeisen Switzerland",
128
- # Italy
129
- "UniCredit", "Intesa Sanpaolo", "Banco BPM", "BPER Banca",
130
- # Spain
131
- "Santander", "BBVA", "CaixaBank", "Bankinter",
132
- # Netherlands
133
- "ING Group", "Rabobank", "ABN AMRO",
134
- # Sweden
135
- "Nordea", "SEB", "Swedbank", "Handelsbanken",
136
- # Norway & Denmark
137
- "DNB", "Danske Bank",
138
- # Singapore
139
- "DBS Bank", "OCBC Bank", "UOB",
140
- # Malaysia
141
- "Maybank", "CIMB Group", "RHB Bank",
142
- # Indonesia
143
- "Bank Mandiri", "Bank Rakyat Indonesia", "Bank Central Asia",
144
- # South Korea
145
- "KB Financial Group", "Shinhan Financial Group", "Hana Financial Group",
146
- "Woori Bank",
147
- # Australia
148
- "Commonwealth Bank of Australia", "Westpac", "ANZ", "NAB",
149
- # Brazil
150
- "Itau Unibanco", "Banco Bradesco", "Banco do Brasil",
151
- "Caixa Economica Federal",
152
- # Mexico
153
- "BBVA Mexico", "Banorte"
154
- ]
155
-
156
- CREDIT_CARD_NETWORKS = [
157
- # Global majors
158
- "Visa", "Mastercard", "American Express", "Discover",
159
- "Diners Club International", "UnionPay",
160
- # Japan
161
- "JCB",
162
- # India
163
- "RuPay", "NCMC National Common Mobility Card",
164
- # United States (additional networks)
165
- "Pulse", "Star", "NYCE", "Accel", "Shazam", "Interlink", "Maestro",
166
- "Cirrus", "Plus",
167
- # Europe
168
- "Girocard", "Cartes Bancaires", "Bancontact", "V Pay",
169
- "EAPS European Alliance Payment Scheme", "Link UK ATM Network",
170
- "PostePay Italy", "Multibanco Portugal",
171
- # United Kingdom
172
- "Switch", "Solo",
173
- # Canada
174
- "Interac", "Debit Mastercard Canada", "Visa Debit Canada",
175
- # Latin America
176
- "Elo Brazil", "Hipercard Brazil", "Cabal Argentina", "Naranja X Argentina",
177
- "Red Link Argentina", "Banelco Argentina",
178
- # Middle East
179
- "Meeza Egypt", "Benefit Bahrain", "KNET Kuwait", "Mada Saudi Arabia",
180
- "QatarPay", "OmanNet", "UAE Switch",
181
- # Africa
182
- "Verve Nigeria", "Interswitch", "GhLink Ghana", "Zimswitch Zimbabwe",
183
- "KenSwitch Kenya", "Namclear Namibia",
184
- # Southeast Asia
185
- "GPN Indonesia", "PromptCard Thailand", "NETS Singapore",
186
- "Touch n Go Malaysia", "MyDebit Malaysia", "BancNet Philippines",
187
- "Vietcombank Card Vietnam",
188
- # East Asia (non China/Japan)
189
- "T Money Korea", "Cashbee Korea",
190
- # China (additional)
191
- "QuickPass", "China T Union Transit Card",
192
- # Australia / New Zealand
193
- "eftpos Australia", "BPAY", "Paymark New Zealand",
194
- # Digital only / fintech card networks
195
- "Revolut Card Network", "Nubank Card Network", "Monzo Card Network",
196
- "Starling Card Network", "Chime Card Network", "Cash App Card Network",
197
- # Private label / store card networks
198
- "Target RedCard Network", "Walmart Card Network", "Costco Card Network",
199
- "Amazon Store Card Network", "Best Buy Card Network"
200
- ]
201
-
202
- # =============================================================================
203
- # RETAIL - Major global retailers and e-commerce platforms
204
- # =============================================================================
205
-
206
- RETAILERS = [
207
- # India
208
- "Reliance Retail", "DMart", "Tata Croma", "Big Bazaar", "Spencers Retail",
209
- "V Mart", "More Retail", "Trent Westside", "Future Retail", "Shoppers Stop",
210
- "Lifestyle India", "Pantaloons", "Fabindia", "Nykaa", "Myntra", "Flipkart",
211
- "Tanishq", "Titan Company", "Apollo Pharmacy", "MedPlus",
212
- # United States
213
- "Walmart", "Amazon", "Costco", "Target", "Kroger", "Home Depot", "Lowes",
214
- "Best Buy", "Walgreens", "CVS Pharmacy", "Macys", "Kohl's", "TJ Maxx",
215
- "Dollar General", "Dollar Tree", "Nordstrom", "Sears", "Staples",
216
- "Office Depot", "Whole Foods Market",
217
- # United Kingdom
218
- "Tesco", "Sainsbury's", "Asda", "Marks and Spencer", "John Lewis", "Argos",
219
- "Boots", "Morrisons", "Next", "Primark",
220
- # Europe (France, Germany, Spain, etc.)
221
- "Carrefour", "Auchan", "Aldi", "Lidl", "Metro AG", "Edeka", "Rewe",
222
- "El Corte Ingles", "MediaMarkt", "Decathlon",
223
- # Japan
224
- "Aeon", "Seven and I Holdings", "FamilyMart", "Lawson", "Don Quijote",
225
- # China
226
- "JD Retail", "Alibaba Tmall", "Suning", "Gome Retail", "Yonghui Superstores",
227
- # South Korea
228
- "Lotte Mart", "Shinsegae", "E Mart", "Homeplus",
229
- # Southeast Asia
230
- "Robinsons Philippines", "SM Retail", "Central Group Thailand",
231
- "Big C Thailand", "VinMart Vietnam",
232
- # Middle East
233
- "Lulu Hypermarket", "Carrefour UAE", "Danube Saudi Arabia",
234
- "Panda Retail Saudi Arabia", "Choithrams",
235
- # Australia
236
- "Woolworths Australia", "Coles", "JB Hi Fi", "Harvey Norman", "Myer",
237
- # Africa
238
- "Shoprite", "Pick n Pay", "Game Stores", "Massmart", "Nakumatt",
239
- # Latin America
240
- "Mercado Libre", "Falabella", "Cencosud", "Grupo Pao de Acucar",
241
- "Liverpool Mexico"
242
- ]
243
-
244
- # =============================================================================
245
- # TECHNOLOGY - Major global technology companies
246
- # =============================================================================
247
-
248
- TECH_COMPANIES = [
249
- # India
250
- "Tata Consultancy Services", "Infosys", "Wipro", "HCL Technologies",
251
- "Tech Mahindra", "Larsen and Toubro Infotech", "Mindtree",
252
- "Persistent Systems", "Mphasis", "Zensar Technologies", "Birlasoft",
253
- "Hexaware Technologies", "NIIT Technologies", "Coforge",
254
- "Reliance Jio Platforms", "Bharti Airtel Digital", "Zoho", "Freshworks",
255
- "InMobi", "Quick Heal",
256
- # Taiwan
257
- "TSMC", "MediaTek", "Foxconn", "UMC", "ASE Technology",
258
- "Realtek Semiconductor", "Novatek Microelectronics", "AU Optronics",
259
- "Delta Electronics", "Pegatron", "Quanta Computer", "Compal Electronics",
260
- "Wistron", "Macronix", "Winbond Electronics",
261
- # United States
262
- "Apple", "Microsoft", "Google", "Amazon Web Services", "Meta Platforms",
263
- "IBM", "Intel", "Nvidia", "AMD", "Oracle", "Salesforce", "Adobe", "Cisco",
264
- "Qualcomm", "HP", "Dell Technologies", "Uber", "Airbnb", "Palantir",
265
- "Snowflake",
266
- # United Kingdom
267
- "ARM", "Sage Group", "Micro Focus", "BT Group", "Vodafone",
268
- # Europe
269
- "SAP", "Siemens", "Bosch", "Capgemini", "Atos", "Nokia", "Ericsson",
270
- "Dassault Systemes", "Infineon Technologies", "STMicroelectronics",
271
- # Japan
272
- "Sony", "Panasonic", "Toshiba", "Fujitsu", "NEC", "Hitachi", "SoftBank",
273
- "Rakuten", "Nintendo", "Canon",
274
- # China
275
- "Huawei", "Tencent", "Alibaba", "Baidu", "Xiaomi", "Lenovo", "ZTE",
276
- "ByteDance", "JD Technology", "Hikvision",
277
- # South Korea
278
- "Samsung Electronics", "LG Electronics", "SK Hynix", "Naver", "Kakao",
279
- # Southeast Asia
280
- "Grab", "Sea Group", "GoTo Group", "FPT Software", "VNG Corporation",
281
- # Middle East
282
- "STC Solutions", "eFinance Egypt", "Etisalat Digital", "Aramco Digital",
283
- "Beeah Digital",
284
- # Australia
285
- "Atlassian", "Telstra", "WiseTech Global", "Afterpay", "Canva",
286
- # Africa
287
- "MTN Group", "Safaricom", "Liquid Intelligent Technologies", "Naspers",
288
- "Cell C",
289
- # Latin America
290
- "Mercado Libre", "Nubank", "TOTVS", "PagSeguro", "Globant"
291
- ]
292
-
293
- EMAIL_PROVIDERS = [
294
- # Global giants
295
- "gmail.com", "yahoo.com", "outlook.com", "hotmail.com", "live.com",
296
- "icloud.com", "aol.com", "protonmail.com", "zoho.com", "mail.com",
297
- # India
298
- "rediffmail.com", "in.com", "sify.com", "airtelmail.in", "bsnl.in",
299
- # USA
300
- "msn.com", "comcast.net", "verizon.net", "att.net", "me.com", "mac.com",
301
- # Europe
302
- "gmx.com", "gmx.de", "web.de", "orange.fr", "free.fr", "laposte.net",
303
- "btinternet.com", "virginmedia.com", "sky.com",
304
- # UK
305
- "hotmail.co.uk", "yahoo.co.uk", "live.co.uk",
306
- # Germany
307
- "t-online.de", "posteo.de", "mailbox.org",
308
- # France
309
- "sfr.fr", "wanadoo.fr",
310
- # Russia
311
- "mail.ru", "yandex.com", "yandex.ru", "rambler.ru",
312
- # China
313
- "qq.com", "163.com", "126.com", "sina.com", "sohu.com",
314
- # Japan
315
- "yahoo.co.jp", "docomo.ne.jp", "ezweb.ne.jp", "softbank.ne.jp",
316
- # Korea
317
- "naver.com", "daum.net", "hanmail.net",
318
- # Middle East
319
- "emirates.net.ae", "etisalat.ae", "saudi.net.sa",
320
- # Africa
321
- "webmail.co.za", "mtn.co.za",
322
- # Latin America
323
- "uol.com.br", "bol.com.br", "terra.com.br", "hotmail.com.mx", "live.com.mx",
324
- # Southeast Asia
325
- "singnet.com.sg", "starhub.net.sg", "tm.net.my", "pldt.com.ph",
326
- "yahoo.com.ph",
327
- # Australia / NZ
328
- "bigpond.com", "optusnet.com.au", "xtra.co.nz",
329
- # Privacy-focused / SaaS
330
- "fastmail.com", "hey.com",
331
- # Generic / testing domains
332
- "example.com", "test.com", "demo.com", "sample.com", "mailtest.com",
333
- "placeholder.com", "domain.com"
334
- ]
335
-
336
- # =============================================================================
337
- # BUSINESS - Common business categories and classifications
338
- # =============================================================================
339
-
340
- DEPARTMENTS = [
341
- # Core Business Functions
342
- "Human Resources", "Finance", "Accounting", "Sales", "Marketing",
343
- "Operations", "Customer Service", "Customer Support",
344
- # Technology & Engineering
345
- "Information Technology", "Engineering", "Research and Development",
346
- "Product Development", "Data Science", "Quality Assurance",
347
- # Supply Chain & Logistics
348
- "Supply Chain", "Procurement", "Logistics", "Warehouse",
349
- # Legal & Compliance
350
- "Legal", "Compliance", "Risk Management", "Internal Audit",
351
- # Strategic & Executive
352
- "Strategy", "Business Development", "Corporate Development", "Executive",
353
- # Specialized
354
- "Manufacturing", "Production", "Facilities", "Security", "Administration",
355
- "Training", "Communications", "Public Relations"
356
- ]
357
-
358
- STATUSES = [
359
- "Active", "Inactive", "Pending", "Completed", "Cancelled",
360
- "In Progress", "On Hold", "Approved", "Rejected", "Draft"
361
- ]
362
-
363
- SEVERITIES = [
364
- "Low", "Medium", "High", "Critical", "Urgent"
365
- ]
366
-
367
- PRIORITIES = [
368
- "Low", "Medium", "High", "Critical"
369
- ]
370
-
371
- # =============================================================================
372
- # MEDICAL - Common medical and healthcare terms
373
- # =============================================================================
374
-
375
- ADVERSE_EVENTS = [
376
- "Headache", "Nausea", "Vomiting", "Dizziness", "Fatigue",
377
- "Fever", "Chills", "Rash", "Itching", "Swelling",
378
- "Pain", "Muscle Ache", "Joint Pain", "Weakness", "Insomnia",
379
- "Anxiety", "Depression", "Confusion", "Tremor", "Seizure",
380
- "Shortness of Breath", "Cough", "Chest Pain", "Palpitations",
381
- "Edema", "Hypertension", "Hypotension", "Tachycardia"
382
- ]
383
-
384
- # =============================================================================
385
- # MASTER REGISTRY - Maps list names to actual lists
386
- # =============================================================================
387
-
388
- BUILTIN_LISTS = {
389
- # Names
390
- "first_names": FIRST_NAMES,
391
- "last_names": LAST_NAMES,
392
- # Financial
393
- "banks": BANKS,
394
- "credit_card_networks": CREDIT_CARD_NETWORKS,
395
- # Retail
396
- "retailers": RETAILERS,
397
- # Technology
398
- "tech_companies": TECH_COMPANIES,
399
- "email_providers": EMAIL_PROVIDERS,
400
- # Business
401
- "departments": DEPARTMENTS,
402
- "statuses": STATUSES,
403
- "severities": SEVERITIES,
404
- "priorities": PRIORITIES,
405
- # Medical
406
- "adverse_events": ADVERSE_EVENTS,
407
- }
408
-
409
-
410
- def get_builtin_list(name: str):
411
- """
412
- Get a built-in list by name.
413
-
414
- Args:
415
- name: List name (e.g., "first_names", "banks")
416
-
417
- Returns:
418
- List of values or None if not found
419
- """
420
- return BUILTIN_LISTS.get(name)
421
-
422
-
423
- def list_builtin_names():
424
- """
425
- Get all available built-in list names.
426
-
427
- Returns:
428
- List of list names
429
- """
430
- return list(BUILTIN_LISTS.keys())