Skip to content

Commit

Permalink
style: تكبير عدد الأحرف في السطر
Browse files Browse the repository at this point in the history
  • Loading branch information
Assayyaad committed Jul 15, 2024
1 parent af9108f commit 150cebc
Show file tree
Hide file tree
Showing 9 changed files with 30 additions and 120 deletions.
1 change: 1 addition & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"tabWidth": 2,
"printWidth": 120,
"semi": false,
"useTabs": false,
"singleQuote": true,
Expand Down
10 changes: 1 addition & 9 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,15 +40,7 @@
"CHANGELOG.md",
"{LICENSE,LICENSE.*}"
],
"todo-tree.general.tags": [
"LOCK",
"BUG",
"FIX",
"TODO",
"BOOKMARK",
"NOTE",
"///"
],
"todo-tree.general.tags": ["LOCK", "BUG", "FIX", "TODO", "BOOKMARK", "NOTE", "///"],
"todo-tree.general.tagGroups": {
"FIX": ["FIXME", "FIXIT"]
},
Expand Down
7 changes: 2 additions & 5 deletions cli/docs.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,6 @@ const app = await Application.bootstrapWithPlugins()
const project = await app.convert()

// التحقق مما إذا تم تحويل المشروع بنجاح
if (project)
await app.generateDocs(
project,
'docs'
) // إذا تم تحويل المشروع، يتم توليد الوثائق في مجلد 'docs'
if (project) await app.generateDocs(project, 'docs')
// إذا تم تحويل المشروع، يتم توليد الوثائق في مجلد 'docs'
else console.error('No project found') // إذا لم يتم العثور على المشروع، يتم طباعة رسالة خطأ
16 changes: 4 additions & 12 deletions cli/func/clean.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,7 @@ export async function cleanFolder(path) {
const newFiles = new Map()

// تنظيف كل ملف وتخزينه في الخريطة
for (let i = 0; i < filePaths.length; i++)
newFiles.set(filePaths[i], cleanFile(filesData[i]))
for (let i = 0; i < filePaths.length; i++) newFiles.set(filePaths[i], cleanFile(filesData[i]))

return newFiles
}
Expand All @@ -35,14 +34,8 @@ export function cleanFile(data) {

// استبدال الأنماط غير المرغوب فيها بأنماط جديدة
data = data
.replace(
/\.\.\.([_a-zA-Z0-9]+): (([_a-zA-Z0-9]+)(\[[_a-zA-Z0-9]*\])?)\[\]/g,
'...$1: $2'
)
.replace(
/\n?(export type (\w+) = \2;|\/\*\* @typedef {(\w+)} \3 \*\/)/g,
''
)
.replace(/\.\.\.([_a-zA-Z0-9]+): (([_a-zA-Z0-9]+)(\[[_a-zA-Z0-9]*\])?)\[\]/g, '...$1: $2')
.replace(/\n?(export type (\w+) = \2;|\/\*\* @typedef {(\w+)} \3 \*\/)/g, '')
.replace(/export(?!s)(?!\s+(\*|declare|=|{))/g, 'export declare')
.replace(/export(?!s)(\s+=)/g, 'export default')

Expand Down Expand Up @@ -83,8 +76,7 @@ export function cleanImports(data) {
}

// تحذير إذا تم الوصول إلى الحد الأقصى للحلقات
if (count === threshold)
console.warn(`Reached threshold of ${threshold} loops`)
if (count === threshold) console.warn(`Reached threshold of ${threshold} loops`)

// إذا كانت هناك واردات، يتم كتابتها وإضافتها إلى البيانات
if (imports.size > 0) return writeImports(imports) + '\n' + data
Expand Down
22 changes: 5 additions & 17 deletions src/line/func/create.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,26 +26,17 @@
*/
export function one({ dis = 1, end = 1, spacing = 1, count = 2, neg = false }) {
// التحقق من القيم المقدمة
if (!Number.isNaN(dis) && dis < 0)
throw new Error('يجب أن تكون المسافة موجباً')
if (!Number.isNaN(spacing) && spacing < 0)
throw new Error('يجب أن يكون التباعد موجباً')
if (!Number.isNaN(count) && count < 2)
throw new Error('يجب أن يكون عدد النقاط أكبر من أو يساوي 2')
if (!Number.isNaN(dis) && dis < 0) throw new Error('يجب أن تكون المسافة موجباً')
if (!Number.isNaN(spacing) && spacing < 0) throw new Error('يجب أن يكون التباعد موجباً')
if (!Number.isNaN(count) && count < 2) throw new Error('يجب أن يكون عدد النقاط أكبر من أو يساوي 2')

// تهيئة كائن المستقيم
const l = {}

l.neg = end !== undefined ? end < 0 : neg
l.count = count !== undefined ? count : spacing ? dis / spacing + 1 : 2
l.dis =
end !== undefined
? Math.abs(end)
: dis !== undefined
? dis
: spacing !== undefined
? spacing * (l.count - 1)
: 1
end !== undefined ? Math.abs(end) : dis !== undefined ? dis : spacing !== undefined ? spacing * (l.count - 1) : 1

// تعريف الخصائص المحسوبة
Object.defineProperties(l, {
Expand All @@ -71,10 +62,7 @@ export function one({ dis = 1, end = 1, spacing = 1, count = 2, neg = false }) {
},
points: {
get() {
return Array.from(
{ length: this.count },
(_, i) => this.spacing * i * (this.neg ? -1 : 1)
)
return Array.from({ length: this.count }, (_, i) => this.spacing * i * (this.neg ? -1 : 1))
}
}
})
Expand Down
12 changes: 3 additions & 9 deletions tests/_cli/clean.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -28,18 +28,12 @@ describe('1: تنظيف الأسطر', function () {
})

it('1.6: تحويل نوع التصدير إلى إعلان نوع التصدير', function () {
const a = cleanFile(
'export type example = typeof import("./file/path.js");'
)
strictEqual(
a,
'export declare type example = typeof import("./file/path.js");'
)
const a = cleanFile('export type example = typeof import("./file/path.js");')
strictEqual(a, 'export declare type example = typeof import("./file/path.js");')
})

it('1.7: تحويل دالة التصدير إلى دالة إعلان التصدير', function () {
const a =
cleanFile(`export function (...args: example[][], ...args2: example[example][], ...args3: example[][][]) :
const a = cleanFile(`export function (...args: example[][], ...args2: example[example][], ...args3: example[][][]) :
| Promise<import("file/path.js").example | void>
| example
| void { }`)
Expand Down
54 changes: 10 additions & 44 deletions tests/_cli/read.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,7 @@ describe('1: قراءة مسارات المجلدات', function () {
const paths = await readFolder('cli')
deepStrictEqual(
paths,
[
'clean.js',
'docs.js',
'func/clean.js',
'func/read.js',
'func/write.js'
].map((subPath) =>
['clean.js', 'docs.js', 'func/clean.js', 'func/read.js', 'func/write.js'].map((subPath) =>
(process.cwd() + '/cli/' + subPath).replace(/\//g, sep)
)
)
Expand Down Expand Up @@ -58,15 +52,9 @@ describe('2: قراءة محتويات الملفات', function () {
})

it('2.6: إعادة المسار والنوع الصحيحين مع tuple', function () {
let a = readImport(
'@param {[import("./file").string, import("./file").number]} str'
)
let a = readImport('@param {[import("./file").string, import("./file").number]} str')

deepStrictEqual(a, [
'@param {[string, import("./file").number]} str',
'./file',
'string'
])
deepStrictEqual(a, ['@param {[string, import("./file").number]} str', './file', 'string'])

a = readImport(a[0])
deepStrictEqual(a, ['@param {[string, number]} str', './file', 'number'])
Expand All @@ -83,56 +71,34 @@ describe('2: قراءة محتويات الملفات', function () {
})

it('2.9: إعادة المسار والنوع الصحيحين مع Map', function () {
let a = readImport(
'@param {Map<import("./file").string, import("./file").number>} str'
)
let a = readImport('@param {Map<import("./file").string, import("./file").number>} str')

deepStrictEqual(a, [
'@param {Map<string, import("./file").number>} str',
'./file',
'string'
])
deepStrictEqual(a, ['@param {Map<string, import("./file").number>} str', './file', 'string'])

a = readImport(a[0])
deepStrictEqual(a, ['@param {Map<string, number>} str', './file', 'number'])
})

it('2.10: إعادة المسار والنوع الصحيحين مع نفس المسار استيرادات متعددة', function () {
let a = readImport(
'@param {import("./file").string|import("./file").number} str'
)
let a = readImport('@param {import("./file").string|import("./file").number} str')

deepStrictEqual(a, [
'@param {string|import("./file").number} str',
'./file',
'string'
])
deepStrictEqual(a, ['@param {string|import("./file").number} str', './file', 'string'])

a = readImport(a[0])
deepStrictEqual(a, ['@param {string|number} str', './file', 'number'])
})

it('2.11: إعادة المسار والنوع الصحيحين مع مسارات مختلفة استيرادات متعددة', function () {
let a = readImport(
'@param {import("./file1").string|import("./file2").number} str'
)
deepStrictEqual(a, [
'@param {string|import("./file2").number} str',
'./file1',
'string'
])
let a = readImport('@param {import("./file1").string|import("./file2").number} str')
deepStrictEqual(a, ['@param {string|import("./file2").number} str', './file1', 'string'])

a = readImport(a[0])
deepStrictEqual(a, ['@param {string|number} str', './file2', 'number'])
})

it('2.12: إعادة المسار والنوع الصحيحين مع استيرادات كاملة', function () {
const a = readImport('export type string = typeof import("./file");')
deepStrictEqual(a, [
'export type string = typeof import("./file");',
null,
null
])
deepStrictEqual(a, ['export type string = typeof import("./file");', null, null])
})
})

Expand Down
5 changes: 1 addition & 4 deletions tests/_cli/write.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,7 @@ describe('1: تحويل خريطة الأنواع إلى واردات', function
['./file2', ['number']]
])
)
equal(
a,
'import type { string } from "./file1";\nimport type { number } from "./file2";\n'
)
equal(a, 'import type { string } from "./file1";\nimport type { number } from "./file2";\n')
})
})

Expand Down
23 changes: 3 additions & 20 deletions typedoc.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
{
"$schema": "https://typedoc.org/schema.json",

"plugin": [
"@mxssfd/typedoc-theme",
"typedoc-plugin-missing-exports",
"typedoc-plugin-extras"
],
"plugin": ["@mxssfd/typedoc-theme", "typedoc-plugin-missing-exports", "typedoc-plugin-extras"],
"entryPoints": ["./types/exports.*"],

"cname": "anthima-alaab.github.io",
Expand Down Expand Up @@ -46,12 +42,7 @@
"external": false
},

"sort": [
"kind",
"enum-member-source-order",
"instance-first",
"alphabetical"
],
"sort": ["kind", "enum-member-source-order", "instance-first", "alphabetical"],

"exclude": ["**/node_modules/**/*"],
"excludePrivate": true,
Expand All @@ -65,13 +56,5 @@
"version": true,
"pretty": true,

"highlightLanguages": [
"bash",
"console",
"javascript",
"json",
"jsonc",
"json5",
"typescript"
]
"highlightLanguages": ["bash", "console", "javascript", "json", "jsonc", "json5", "typescript"]
}

0 comments on commit 150cebc

Please sign in to comment.