New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

language-manager

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

language-manager - npm Package Compare versions

Comparing version 0.0.5 to 0.0.6

src/data/index.js

21

package.json
{
"name": "language-manager",
"version": "0.0.5",
"version": "0.0.6",
"description": "The most flexible version of multi-language management. Manages language resources. Makes it easy to switch between different language sources.",
"author": "azmisahin@outlook.com",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/azmisahin/azmisahin-software-web-component-language-manager-node.git"
},
"keywords": [

@@ -15,11 +11,20 @@ "flexible",

"managament",
"resource"
"resource",
"translate",
"js",
"json",
"xml",
"csv"
],
"homepage": "https://github.com/azmisahin/azmisahin-software-web-component-language-manager-node#readme",
"repository": {
"type": "git",
"url": "git+https://github.com/azmisahin/azmisahin-software-web-component-language-manager-node.git"
},
"bugs": {
"url": "https://github.com/azmisahin/azmisahin-software-web-component-language-manager-node/issues"
},
"homepage": "https://github.com/azmisahin/azmisahin-software-web-component-language-manager-node#readme",
"main": "src/index.js",
"scripts": {
"lint": "eslint src && eslint tests",
"lint": "eslint src --fix && eslint tests --fix",
"test": "node tests"

@@ -26,0 +31,0 @@ },

@@ -14,9 +14,43 @@ # language-manager

```js
// Load the full build
/// Language Manager Reference
var LanguageManager = require('language-manager')
// Instance create
/// Test object
var l = new LanguageManager()
// Resource Type format
.setType(LanguageManager.ResourceType.Json)
// Resource file folder
.setPath('tests/resource')
// Resource language code
.setLang('en-us')
/// Expected test result
var expected = 'Language Manager'
/// Actual test result
var actual = l
// Get resource item value string
.Val('app.name')
// Test output
console.log(`${l.Lang} : ${actual}`)
```
> en-us : Language Manager
```js
/// Change language
l.setLang('tr-tr')
/// Expected test result
expected = 'Dil Yöneticisi'
/// Actual test result
actual = l
// Get resource item value string
.Val('app.name')
// Test output
console.log(`${l.Lang} : ${actual}`)
```
> tr-tr : Dil Yöneticisi
# Test

@@ -23,0 +57,0 @@

@@ -0,6 +1,16 @@

/// Data Model Reference
var Data = require('./data')
/// Data Resource Model Reference
var Resource = require('./data/resource')
/// Parser Manager Reference
var Parser = require('./parse-manager')
/// File Manager Reference
var FileManger = require('./file-manager')
/**
* Language Manager
*
* @param { string } langCode Resource Lang Code
*
* @example

@@ -21,17 +31,218 @@ * var l = new LanguageManager()

*
* new LanguageManager()
* new LanguageManager('tr')
* new LanguageManager('en')
* /// Test object
* var l = new LanguageManager()
* // Resource Type format
* .setType(LanguageManager.ResourceType.Json)
* // Resource file folder
* .setPath('tests/resource')
* // Resource language code
* .setLang('en-us')
*
* @param {string} langCode Language short code
* /// Test criterion
* var expected = 'Language Manager'
* var actual = l.Val('app.name')
*
* @returns <LanguageManager>
*/
constructor(langCode) {
constructor() {
/// Name property
this.Name = 'language-manager'
this.LangCode = langCode ? langCode : 'tr'
/// result LanguageManager instance
return this
}
/**
* Language Manager Resource Types
*
* @returns enum
*/
static get ResourceType() {
return {
Json: 'json'
}
}
}
/**
* Language Code
*
* @param {string} resourceLang Language Code
*
* @returns <LanguageManager>
*/
LanguageManager.prototype.setLang = function (resourceLang) {
/// Lang property
this.Lang = resourceLang
/// result LanguageManager instance
return this
}
/**
* Language path base
*
* @param {string} resourceType base path
*
* @returns <LanguageManager>
*/
LanguageManager.prototype.setPath = function (resourcePath) {
/// Path property
this.Path = resourcePath
/// result LanguageManager instance
return this
}
LanguageManager.prototype.FullPath = function () {
/// result Full Path string
return `${this.Path}/${this.Type}/${this.Lang}.${this.Type}`
}
/**
* Language resource type
*
* @param {string} resourceType resource type
*
* @returns <LanguageManager>
*/
LanguageManager.prototype.setType = function (resourceType) {
/// Type property
this.Type = resourceType
/// result LanguageManager instance
return this
}
/**
* List All Data
*
* @returns <Resource>
* */
LanguageManager.prototype.List = function () {
/// All resource data
this.Resources = new Data()
// File Manager instance
var fileManager = new FileManger()
// string data
var fileString = ''
// Parser instance
var parser = new Parser()
/// Resource file type
switch (this.Type) {
/// Resource Type `json`
case LanguageManager.ResourceType.Json:
// Get STRING from file
fileString = fileManager
.setFile(this.FullPath())
.GetString()
// Parser instance
parser = new Parser()
// Get JSON object from string
this.Resources = parser
.setString(fileString)
.GetJson()
break
/// Resource Type Undefine
default:
// Get STRING from file
fileString = fileManager
.setFile(this.FullPath())
.GetString()
// Parser instance
parser = new Parser()
// Get JSON object from string
this.Resources = parser
.setString(fileString)
.GetJson()
break
}
/// result LanguageManager instance
return this
}
/**
* Search value with Name
*
* @param {string} name Resouce `Name`
*
* @returns <Resource> item
*/
LanguageManager.prototype.Search = function (name) {
/// Default model
var result = new Resource()
/// Search in data
this.Resources.root.data.forEach(item => {
// Key found
if (item.name === name) {
// resource model item
result.Name = item.name
result.Value = item.value
result.Type = item.type
}
})
/// result Resource model
return result
}
/**
* Get resource item with name
*
* @param {string} name Resouce `Name`
*
* @returns <Resource> item
*/
LanguageManager.prototype.Get = function (name) {
/// Resource initalize
this.List()
/// Search in data
var result = this.Search(name)
/// result Resource model
return result
}
/**
* Get value with name
*
* @param {string} name Resouce `Name`
*
* @returns string
*/
LanguageManager.prototype.Val = function (name) {
/// get in data
var result = this.Get(name)
/// result Resource model.`Value`
return result.Value
}
module.exports = LanguageManager

@@ -1,12 +0,24 @@

// Test Tool
/// Test Manager Reference
var TestManager = require('test-management')
/// Test Tool Instance
var tt = new TestManager(true)
/// Test object referance
var LanguageManager = require('../src')
/**
* Instance Test
*/
var DefaultTest = function (){
var LanguageManager = require('../src')
var l = new LanguageManager()
tt.Test('Is the instance initialized?', 'language-manager', l.Name)
var DefaultTest = function () {
/// Test object
var instance = new LanguageManager()
/// Test criterion
var expected = 'language-manager'
var actual = instance.Name
/// Test definition
tt.Test('Is the instance initialized?', expected, actual)
}

@@ -16,21 +28,105 @@ DefaultTest()

/**
* Result Test
* Get resource item value with name. Simple Zero Configure?
*/
var ResultTest = function (){
var LanguageManager = require('../src')
var property = 'tr'
var l = new LanguageManager()
tt.Test('Instance is the default property true?', property, l.LangCode)
var InstanceApiSimpleZeroTest = function () {
/// Test object
var instance = new LanguageManager()
// Resource Type format
.setType(LanguageManager.ResourceType.Json)
// Resource file folder
.setPath('tests/resource')
// Resource language code
.setLang('en-us')
/// Test criterion
var expected = 'Language Manager'
var actual = instance
// Get resource item value string
.Val('app.name')
/// Test definition
tt.Test('Get resource item with name. Simple Zero Configure?', expected, actual)
}
ResultTest()
InstanceApiSimpleZeroTest()
/**
* Parameter test
* Get resource item with name. Zero Configure?
*/
var ParameterTest = function (){
var LanguageManager = require('../src')
var property = 'en'
var l = new LanguageManager(property)
tt.Test('Instance is the property true?', property, l.LangCode)
var InstanceApiZeroTest = function () {
/// Test object
var instance = new LanguageManager()
// Resource Type format
.setType(LanguageManager.ResourceType.Json)
// Resource file folder
.setPath('tests/resource')
// Resource language code
.setLang('en-us')
/// Test criterion
var expected = 'Language Manager'
var actual = instance
// Get resource item
.Get('app.name')
// item value string
.Value
/// Test definition
tt.Test('Get resource item with name. Zero Configure?', expected, actual)
}
ParameterTest()
InstanceApiZeroTest()
/**
* Get resource item with name. Full Configure?
*/
var InstanceApiFullTest = function () {
/// Test object
var instance = new LanguageManager()
/// Test criterion
var expected = 'Language Manager'
var actual = instance
// Resource Type format
.setType(LanguageManager.ResourceType.Json)
// Resource file folder
.setPath('tests/resource')
// Resource language code
.setLang('en-us')
// Get resource item
.Get('app.name')
// item value string
.Value
/// Test definition
tt.Test('Get resource item with name. Full Configure?', expected, actual)
}
InstanceApiFullTest()
/**
* Get resource item with name. Full Configure TR?
*/
var InstanceApiFullTest_tr = function () {
/// Test object
var instance = new LanguageManager()
/// Test criterion
var expected = 'Dil Yöneticisi'
var actual = instance
// Resource Type format
.setType(LanguageManager.ResourceType.Json)
// Resource file folder
.setPath('tests/resource')
// Resource language code
.setLang('tr-tr')
// Get resource item
.Get('app.name')
// item value string
.Value
/// Test definition
tt.Test('Get resource item with name. Full Configure TR?', expected, actual)
}
InstanceApiFullTest_tr()
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc