اعداد

أداة Sumor Cloud .
المزيد من التوثيق قارئ الإعداد يدعم ملفات yaml و json. يمكنه تحميل جميع الملفات في دليل ما. وتحويل الملف تلقائياً إلى التنسيق المحدد.

CI Test Coverage Audit

التثبيت

npm i @sumor/config --save

المتطلبات

نسخة Node.JS

تتطلب نسخة Node.JS 16.x أو أعلى

المتطلبات ES لـ Node.JS

نظرًا لأن هذه الحزمة مكتوبة بتنسيق ES module، يرجى تغيير الشفرة التالية في ملف package.json الخاص بك:

{
  "type": "module"
}

الاستخدام

الطرق الدخولية

load

import { load } from '@sumor/config'

search

تحميل جميع الملفات في الدليل

import { meta } from '@sumor/config'

const config = await meta(process.cwd(), ['js', 'sql'])

/*
هيكل الدليل التجريبي
- root
  - car.json
  - car.sql
  - ship.js
  - plane.yml
*/

// سيقوم بتحميل جميع ملفات التكوين كما يلي
/*
{
  car: {
    name: 'car',
    sql: "..."
  },
  ship: {
    name: 'ship'
    js: '<root>/ship.js'
  },
  plane: {
    name: 'plane'
  }
}
*/

الطرق القديمة

find

import { find } from '@sumor/config'

findReference

import { findReference } from '@sumor/config'

تحميل ملف التكوين

import { load } from '@sumor/config'

const config1 = await load(process.cwd(), 'demo')
// سيقوم بتحميل demo.yml أو demo.json في الدليل الجذري

const config2 = await load(process.cwd(), 'demo', 'yaml')
// سيقوم بتحميل demo.yml أو demo.json في الدليل الجذري، وتحويله إلى ملف بتنسيق yaml

البحث عن ملفات التكوين

import { find } from '@sumor/config'

const config = await find(process.cwd(), 'entity')
// سيقوم بتحميل جميع ملفات *.entity.yml أو *.entity.json في الدليل الجذري
/*
 * مثال:
 *   car.entity.yml, bike.entity.json
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */

البحث عن ملفات التكوين من ملفات أخرى

مثل ملفات .vue, .js، لديها ملف تكوين باسم نفسه

import { findReference } from '@sumor/config'

const config = await findReference(process.cwd(), ['vue', 'js'])
// سيقوم بتحميل جميع ملفات *.entity.yml أو *.entity.json التي لها نفس الاسم مع *.vue أو *.js في الدليل الجذري
/*
 * مثال:
 *   car.entity.yml, bike.entity.json
 *   car.vue, bike.js
 *   {
 *       "car": {...}
 *       "bike": {...}
 *   }
 * */