hindicode 1.0.0 → 1.0.1

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 (2) hide show
  1. package/index.js +128 -12
  2. package/package.json +1 -1
package/index.js CHANGED
@@ -1,26 +1,142 @@
1
1
  const fs = require("fs");
2
-
3
- // Hindi to JavaScript keyword mapping
2
+ const Module = require("module");
3
+ const path = require("path");
4
4
  const hindiToJS = {
5
5
  "अगर": "if",
6
6
  "अन्यथा": "else",
7
7
  "दिखाओ": "console.log",
8
8
  "कार्य": "function",
9
- "लौटाओ": "return"
9
+ "लौटाओ": "return",
10
+ "चलाओ": "for",
11
+ "जबतक": "while",
12
+ "नया": "let",
13
+ "स्थिर": "const",
14
+ "परिभाषा": "var",
15
+ "सही": "true",
16
+ "गलत": "false",
17
+ "शून्य": "null",
18
+ "प्रयास": "try",
19
+ "पकड़ो": "catch",
20
+ "अंततः": "finally",
21
+ "फेंको": "throw",
22
+ "वर्ग": "class",
23
+ "विस्तार": "extends",
24
+ "सुपर": "super",
25
+ "वापसी": "yield",
26
+ "प्रतीक्षा": "await",
27
+ "आयात": "import",
28
+ "निर्यात": "export",
29
+ "डिफ़ॉल्ट": "default",
30
+ "केस": "case",
31
+ "ब्रेक": "break",
32
+ "जारी": "continue",
33
+ "स्विच": "switch",
34
+ "के लिए": "for",
35
+ "प्रत्येक के लिए": "forEach",
36
+ "मानचित्र": "map",
37
+ "फ़िल्टर": "filter",
38
+ "कम करना": "reduce",
39
+ "शामिल": "includes",
40
+ "इंडेक्स": "indexOf",
41
+ "पुश": "push",
42
+ "पॉप": "pop",
43
+ "शिफ्ट": "shift",
44
+ "अनशिफ्ट": "unshift",
45
+ "splice": "splice",
46
+ "concat": "concat",
47
+ "स्लाइस": "slice",
48
+ "लंबाई": "length",
49
+ "प्रकार": "typeof",
50
+ "उदाहरण": "instanceof",
51
+ "में": "in",
52
+ "नया उदाहरण": "new",
53
+ "हटाना": "delete",
54
+ "शून्य करना": "void",
55
+ "साथ": "with",
56
+ "डीबग": "debugger",
57
+ "लेबल": "label",
58
+ "कोशिश": "try",
59
+ "ये": "this",
60
+ "प्रोटो": "prototype",
61
+ "कॉल": "call",
62
+ "लागू": "apply",
63
+ "बाध्य": "bind",
64
+ "अर्जुन": "arguments",
65
+ "बनाएँ": "create",
66
+ "कुंजी": "key",
67
+ "मूल्य": "value",
68
+ "प्रविष्टि": "entry",
69
+ "सेट": "set",
70
+ "प्राप्त": "get",
71
+ "है": "has",
72
+ "साफ़": "clear",
73
+ "आकार": "size",
74
+ "फिर": "then",
75
+ "पकड़": "catch",
76
+ "अंत में": "finally",
77
+ "सभी": "all",
78
+ "रेस": "race",
79
+ "हल": "resolve",
80
+ "अस्वीकार": "reject",
81
+ "से": "from",
82
+ "एक": "as",
83
+ "नाम": "name",
84
+ "भेजें": "send",
85
+ "प्राप्त": "receive",
86
+ "कनेक्ट": "connect",
87
+ "सुनो": "listen",
88
+ "सर्वर": "server",
89
+ "ग्राहक": "client",
90
+ "अनंत": "Infinity",
91
+ "NaN": "NaN",
92
+ "कोड": "code",
93
+ "संदेश": "message",
10
94
  };
95
+ // // Hindi to JavaScript keyword mapping
96
+ // const hindiToJS = {
97
+ // "अगर": "if",
98
+ // "अन्यथा": "else",
99
+ // "दिखाओ": "console.log",
100
+ // "कार्य": "function",
101
+ // "लौटाओ": "return",
102
+ // "चलाओ": "for",
103
+ // "जबतक": "while",
104
+ // "नया": "let",
105
+ // "स्थिर": "const",
106
+ // "परिभाषा": "var"
107
+ // };
11
108
 
12
- // Function to translate Hindi JavaScript code
109
+ // Function to translate Hindi JS code
13
110
  function translateHindiJS(code) {
14
- for (const [hindi, js] of Object.entries(hindiToJS)) {
15
- const regex = new RegExp(`\\b${hindi}\\b`, "g");
111
+ // console.log("🔍 Before Translation:\n", code);
112
+
113
+ Object.entries(hindiToJS).forEach(([hindi, js]) => {
114
+ // console.log(`🔄 Processing: Hindi='${hindi}', JS='${js}'`);
115
+ //const regex = new RegExp(`\\b${hindi}\\b`, "g"); // Match full words
116
+ const regex = new RegExp(`(?<![\\u00BF-\\u1FFF\\u2C00-\\uD7FF\\w])${hindi}(?![\\u00BF-\\u1FFF\\u2C00-\\uD7FF\\w])`, "g");
117
+ if (code.includes(hindi)) {
118
+
119
+ }
16
120
  code = code.replace(regex, js);
17
- }
121
+ });
122
+
123
+
18
124
  return code;
19
125
  }
20
126
 
21
- // Hook into Node.js `require` to automatically translate Hindi JS files
22
- require.extensions[".js"] = function (module, filename) {
23
- let content = fs.readFileSync(filename, "utf8");
24
- content = translateHindiJS(content);
25
- module._compile(content, filename);
127
+ // Custom require hook for `.hindi.js` files
128
+ require.extensions[".hindi.js"] = function (module, filename) {
129
+ try {
130
+ let content = fs.readFileSync(filename, "utf8").trim();
131
+
132
+
133
+ // Translate Hindi to JavaScript
134
+ content = translateHindiJS(content); // Assign the returned value back to 'content'
135
+
136
+
137
+ // Run translated JavaScript code
138
+ module._compile(content, filename);
139
+ } catch (error) {
140
+ console.error("❌ Hindi Transpiler Error:", error);
141
+ }
26
142
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hindicode",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "test": "echo \"Error: no test specified\" && exit 1"