# x-class

> JavaScript Development Kit that extends meta-class (Prototype) of Predefined and customized JS Class.

Latest version **1.0.21** (published 2016-10-06) · MIT license · 0 weekly downloads

## Install

```sh
npm install x-class
pnpm add x-class
yarn add x-class
bun add x-class
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.21 |
| Published | 2016-10-06 |
| First published | 2016-07-16 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 6 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | Abdennour TOUMI |
| Maintainers | abdennour |
| Keywords | meta-class, jsdk, kit, prototype, oop, aop |

## Links

- npm: https://www.npmjs.com/package/x-class
- npm.io page: https://npm.io/package/x-class

## Dependencies (6)

- [x-date](https://npm.io/package/x-date.md) ^1.0.2
- [x-array](https://npm.io/package/x-array.md) ^1.0.15
- [x-number](https://npm.io/package/x-number.md) ^1.0.1
- [x-object](https://npm.io/package/x-object.md) ^1.0.2
- [x-string](https://npm.io/package/x-string.md) ^1.0.7
- [x-function](https://npm.io/package/x-function.md) ^1.0.3

## Alternatives

- [@sveltejs/kit](https://npm.io/package/@sveltejs/kit.md) — 2.2M weekly downloads
- [@tangle-network/brand](https://npm.io/package/@tangle-network/brand.md) — 10.0K weekly downloads
- [seneca](https://npm.io/package/seneca.md) — 7.4K weekly downloads
- [@bsb/base](https://npm.io/package/@bsb/base.md) — 7.2K weekly downloads
- [@modern-js/plugin-swc](https://npm.io/package/@modern-js/plugin-swc.md) — 3.4K weekly downloads

## Recent versions

- 1.0.21 (latest) — 2016-10-06
- 1.0.20 — 2016-08-21
- 1.0.19 — 2016-08-18
- 1.0.18 — 2016-08-17
- 1.0.17 — 2016-08-16
- 1.0.16 — 2016-08-12
- 1.0.15 — 2016-07-30
- 1.0.14 — 2016-07-29
- 1.0.13 — 2016-07-29
- 1.0.12 — 2016-07-26
- 1.0.11 — 2016-07-26
- 1.0.10 — 2016-07-25
- 1.0.9 — 2016-07-25
- 1.0.8 — 2016-07-25
- 1.0.7 — 2016-07-22
- … 7 more at https://npm.io/package/x-class/versions

## README

# X-Class Module :

 JavaScript Development Kit that extends meta-class (Prototype) of Predefined and customized JS Class.


# Modules :

  X-Class is just a container for X-modules , which  are :

 1. **X-String** : extends String class.
 2. **X-Number** : extends Number class.
 3. **X-Array** : extends Array class.
 4. **X-Date** : extends Date class.
 5. **X-Boolean** : extends Boolean class.
 6. **X-Function** : extends Function class.
 7. **X-M** : extends Math class.
 8. **X-Global** : extends Global class.
 9. **X-Storage** : extends Storage class (SessionStorage & LocalStorage classes).
 10. **X-Conversion** : extends Conversion class.
 11. **X-Operators** : extends Operators class.
 12. **X-RegExp** : extends RegExp class.
 13. **X-Statements** : extends Statements class.
 14. **X-Object** : extends Object class.
 15. **X-Masfufa** : extends Masfufa class. (Masfufa= مصفوفة =Matrix)
 16. **X-HijriDate** : extends HijriDate class.

# Install ;

- Install all X-modules :

 ```bash
     npm install x-class
 ```
- Install one module

 ```bash
     npm install x-[NAME-of-Module]
    # npm install x-string
    # npm install x-date
    # ..... so on
 ```

# How to use  :

- Just call the famous NodeJS function `require` , even , without assigning it output to variable.

- If you want to profit static utils of XCLass , you must assign `require` call to output variable   
 ```js
          var JsDK=require('x-class');
          JsDK.overload(api.orm,'add');
          /**---- JsDK Overload
          * will create a method api.orm.add that forwards its call to other function, according to 2 things:
                 1. Number of arguments on calling.
                 2. type of arguments.
                 So , if you want to call :
                    - api.orm.add(1,2)=> you should declare "api.orm.add_1_number_number" function  
                    - api.orm.add("ab","cd",[3,45]) => you should declare "api.orm.add_3_string_string_object" function

            */
            JsDK.extends({a:1},{a:2,b:3}) // return : {a:1,b:3}

  ```

______________

# X-String  :

  X-String module extends `String` class & it added to String Class the following methods :

  | Method        | Arguments              | Output    | dependencies|
  | ------------- |:----------------------:|:---------:|------------:|
  | capitalize    | | ||
  | fileExtension    | || |
  | urlReady    | | ||
  | urlParams    | | ||
  | urlParsing    | | ||
  | toHHMMSS    | | ||
  | toFunction    | | ||
  | linkify    | | ||
  | passwordColor    || | |
  | passwordSecurity  |  | | |
  | passwordScore    | || |
  | toInstance    | | ||
  | toDate    | | ||
  | strRight    | | ||
  | strLeft    | | ||
  | strCenter    | | ||
  | noSpace    | | ||
  | noParenthesesInner    | | |  |
  | replaceAll    | | ||
  | reduceWhiteSpace    || | |
  | belongTo    | | ||
  | toInt    | | ||
  | toASCII    | | |||





# X-Number

* isOdd
* isEven
* `..`
* fromRoman
* toRoman

For more details see [X-Number documentation](https://github.com/abdennour/xnumber#readme)

# X-Array

TODO

# X-Date

TODO
# ....

_________

 `Note : Documentation & some modules are not published yet...coming soon`

---
_Source: https://npm.io/package/x-class · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
