feat: new docs wip

This commit is contained in:
2024-01-28 01:40:57 +02:00
committed by Chen Asraf
parent 7e5f15a18d
commit 05bd42c8e5
64 changed files with 20170 additions and 6 deletions

View File

@@ -1,4 +1,4 @@
name: Release
name: Documentation
on:
push:
branches:
@@ -9,7 +9,7 @@ permissions:
jobs:
release:
name: Release
name: Release Documentation
runs-on: ubuntu-latest
permissions:
contents: write # to be able to publish a GitHub release
@@ -39,7 +39,7 @@ jobs:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
run: npx semantic-release
- name: Docs
run: pnpm doc
run: pnpm docs:build
- name: Deploy on GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:

1
.gitignore vendored
View File

@@ -105,4 +105,3 @@ dist
# Build
build/
docs/

20
docs/.gitignore vendored Normal file
View File

@@ -0,0 +1,20 @@
# Dependencies
/node_modules
# Production
/build
# Generated files
.docusaurus
.cache-loader
# Misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*

41
docs/README.md Normal file
View File

@@ -0,0 +1,41 @@
# Website
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
### Installation
```
$ yarn
```
### Local Development
```
$ yarn start
```
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
### Build
```
$ yarn build
```
This command generates static content into the `build` directory and can be served using any static contents hosting service.
### Deployment
Using SSH:
```
$ USE_SSH=true yarn deploy
```
Not using SSH:
```
$ GIT_USER=<Your GitHub username> yarn deploy
```
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.

3
docs/babel.config.js Normal file
View File

@@ -0,0 +1,3 @@
module.exports = {
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
};

View File

@@ -0,0 +1 @@
label: "API"

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,60 @@
---
id: "MassargExample"
title: "Class: MassargExample"
sidebar_label: "MassargExample"
sidebar_position: 0
custom_edit_url: null
---
## Constructors
### constructor
**new MassargExample**(`config`): [`MassargExample`](MassargExample.md)
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.description?` | `string` | Description of the example. This will appear as a title above the input/output line(s). |
| `config.input?` | `string` | Input of the example. This will appear as a line below the description, with a `$` prefix. The prefix can be changed using the `help()` function on the command. |
| `config.output?` | `string` | Output of the example. This will appear as a line below the input, with a `>` prefix. The prefix can be changed using the `help()` function on the command. |
#### Returns
[`MassargExample`](MassargExample.md)
#### Defined in
[src/example.ts:25](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L25)
## Properties
### description
**description**: `undefined` \| `string`
#### Defined in
[src/example.ts:21](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L21)
___
### input
**input**: `undefined` \| `string`
#### Defined in
[src/example.ts:22](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L22)
___
### output
**output**: `undefined` \| `string`
#### Defined in
[src/example.ts:23](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L23)

View File

@@ -0,0 +1,392 @@
---
id: "MassargFlag"
title: "Class: MassargFlag"
sidebar_label: "MassargFlag"
sidebar_position: 0
custom_edit_url: null
---
An option that can be passed to a command.
A flag is an option that is either present or not. It can be used to toggle
a boolean value, or to indicate that a command should be run in a different
mode.
A flag can be negated by prefixing it with `no-`. For example, `--no-verbose`,
or by prefixing the alias with `^` instead of `-`. This is configurable via the command's
configuration. To turn this behavior on, set `negatable: true` in the flag's configuration.
**`Example`**
```ts
massarg.flag({
name: 'verbose',
aliases: ['v'],
description: 'Enable verbose logging',
defaultValue: false,
})
```
## Hierarchy
- [`MassargOption`](MassargOption.md)\<`boolean`\>
**`MassargFlag`**
↳↳ [`MassargHelpFlag`](MassargHelpFlag.md)
## Constructors
### constructor
**new MassargFlag**(`options`): [`MassargFlag`](MassargFlag.md)
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | `Object` | - |
| `options.name` | `string` | Name of the option |
| `options.description` | `string` | Description of the option, displayed in the help output |
| `options.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `options.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `options.defaultValue?` | `any` | Default value of the option |
| `options.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `options.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `options.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `options.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `options.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `options.negatable?` | `boolean` | Whether the flag can be negated, e.g. `--no-verbose` |
#### Returns
[`MassargFlag`](MassargFlag.md)
#### Overrides
[MassargOption](MassargOption.md).[constructor](MassargOption.md#constructor)
#### Defined in
[src/option.ts:348](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L348)
## Properties
### negatable
**negatable**: `boolean`
#### Defined in
[src/option.ts:346](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L346)
___
### name
**name**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[name](MassargOption.md#name)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
**negationName**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[negationName](MassargOption.md#negationname)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
**description**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[description](MassargOption.md#description)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
`Optional` **defaultValue**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[defaultValue](MassargOption.md#defaultvalue)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
**aliases**: `string`[]
#### Inherited from
[MassargOption](MassargOption.md).[aliases](MassargOption.md#aliases)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
**negationAliases**: `string`[]
#### Inherited from
[MassargOption](MassargOption.md).[negationAliases](MassargOption.md#negationaliases)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
**parse**: [`Parser`](../modules.md#parser)\<[`ArgsObject`](../modules.md#argsobject), `boolean`\>
#### Inherited from
[MassargOption](MassargOption.md).[parse](MassargOption.md#parse)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
**isArray**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isArray](MassargOption.md#isarray)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
**isRequired**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isRequired](MassargOption.md#isrequired)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
**isDefault**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isDefault](MassargOption.md#isdefault)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
`Optional` **outputName**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[outputName](MassargOption.md#outputname)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
**fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules.md#parser)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Inherited from
[MassargOption](MassargOption.md).[fromTypedConfig](MassargOption.md#fromtypedconfig)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `_options`, `prefixes`): `ArgvValue`\<`boolean`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `_options` | [`ArgsObject`](../modules.md#argsobject) |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`ArgvValue`\<`boolean`\>
#### Overrides
[MassargOption](MassargOption.md).[parseDetails](MassargOption.md#parsedetails)
#### Defined in
[src/option.ts:356](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L356)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](MassargOption.md).[getOutputName](MassargOption.md#getoutputname)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](MassargOption.md).[helpString](MassargOption.md#helpstring)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isMatch](MassargOption.md#ismatch)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules.md#qualifiednames)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
[`QualifiedNames`](../modules.md#qualifiednames)
#### Inherited from
[MassargOption](MassargOption.md).[qualifiedNames](MassargOption.md#qualifiednames)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,383 @@
---
id: "MassargHelpFlag"
title: "Class: MassargHelpFlag"
sidebar_label: "MassargHelpFlag"
sidebar_position: 0
custom_edit_url: null
---
An option that can be passed to a command.
A flag is an option that is either present or not. It can be used to toggle
a boolean value, or to indicate that a command should be run in a different
mode.
A flag can be negated by prefixing it with `no-`. For example, `--no-verbose`,
or by prefixing the alias with `^` instead of `-`. This is configurable via the command's
configuration. To turn this behavior on, set `negatable: true` in the flag's configuration.
**`Example`**
```ts
massarg.flag({
name: 'verbose',
aliases: ['v'],
description: 'Enable verbose logging',
defaultValue: false,
})
```
## Hierarchy
- [`MassargFlag`](MassargFlag.md)
**`MassargHelpFlag`**
## Constructors
### constructor
**new MassargHelpFlag**(`config?`): [`MassargHelpFlag`](MassargHelpFlag.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `config` | `Partial`\<`Omit`\<\{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](../modules.md#parser)\<[`ArgsObject`](../modules.md#argsobject), `boolean`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, ``"parse"``\>\> |
#### Returns
[`MassargHelpFlag`](MassargHelpFlag.md)
#### Overrides
[MassargFlag](MassargFlag.md).[constructor](MassargFlag.md#constructor)
#### Defined in
[src/option.ts:397](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L397)
## Properties
### negatable
• **negatable**: `boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[negatable](MassargFlag.md#negatable)
#### Defined in
[src/option.ts:346](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L346)
___
### name
• **name**: `string`
#### Inherited from
[MassargFlag](MassargFlag.md).[name](MassargFlag.md#name)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
• **negationName**: `string`
#### Inherited from
[MassargFlag](MassargFlag.md).[negationName](MassargFlag.md#negationname)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
• **description**: `string`
#### Inherited from
[MassargFlag](MassargFlag.md).[description](MassargFlag.md#description)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
• `Optional` **defaultValue**: `boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[defaultValue](MassargFlag.md#defaultvalue)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
• **aliases**: `string`[]
#### Inherited from
[MassargFlag](MassargFlag.md).[aliases](MassargFlag.md#aliases)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
• **negationAliases**: `string`[]
#### Inherited from
[MassargFlag](MassargFlag.md).[negationAliases](MassargFlag.md#negationaliases)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
• **parse**: [`Parser`](../modules.md#parser)\<[`ArgsObject`](../modules.md#argsobject), `boolean`\>
#### Inherited from
[MassargFlag](MassargFlag.md).[parse](MassargFlag.md#parse)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
• **isArray**: `boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[isArray](MassargFlag.md#isarray)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
• **isRequired**: `boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[isRequired](MassargFlag.md#isrequired)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
• **isDefault**: `boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[isDefault](MassargFlag.md#isdefault)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
• `Optional` **outputName**: `string`
#### Inherited from
[MassargFlag](MassargFlag.md).[outputName](MassargFlag.md#outputname)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
▸ **fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules.md#parser)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Inherited from
[MassargFlag](MassargFlag.md).[fromTypedConfig](MassargFlag.md#fromtypedconfig)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `_options`, `prefixes`): `ArgvValue`\<`boolean`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `_options` | [`ArgsObject`](../modules.md#argsobject) |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`ArgvValue`\<`boolean`\>
#### Inherited from
[MassargFlag](MassargFlag.md).[parseDetails](MassargFlag.md#parsedetails)
#### Defined in
[src/option.ts:356](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L356)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargFlag](MassargFlag.md).[getOutputName](MassargFlag.md#getoutputname)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargFlag](MassargFlag.md).[helpString](MassargFlag.md#helpstring)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`boolean`
#### Inherited from
[MassargFlag](MassargFlag.md).[isMatch](MassargFlag.md#ismatch)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules.md#qualifiednames)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
[`QualifiedNames`](../modules.md#qualifiednames)
#### Inherited from
[MassargFlag](MassargFlag.md).[qualifiedNames](MassargFlag.md#qualifiednames)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,364 @@
---
id: "MassargNumber"
title: "Class: MassargNumber"
sidebar_label: "MassargNumber"
sidebar_position: 0
custom_edit_url: null
---
An option that can be passed to a command.
This type of option parses a number, and fails if it is not a valid number.
**`Example`**
```ts
massarg(options).option({
name: 'number',
description: 'A number',
defaultValue: 0,
aliases: ['n'],
type: 'number',
})
```
## Hierarchy
- [`MassargOption`](MassargOption.md)\<`number`\>
**`MassargNumber`**
## Constructors
### constructor
**new MassargNumber**(`options`): [`MassargNumber`](MassargNumber.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `options` | `Omit`\<\{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](../modules.md#parser)\<[`ArgsObject`](../modules.md#argsobject), `number`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, ``"parse"``\> |
#### Returns
[`MassargNumber`](MassargNumber.md)
#### Overrides
[MassargOption](MassargOption.md).[constructor](MassargOption.md#constructor)
#### Defined in
[src/option.ts:291](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L291)
## Properties
### name
• **name**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[name](MassargOption.md#name)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
• **negationName**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[negationName](MassargOption.md#negationname)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
• **description**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[description](MassargOption.md#description)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
• `Optional` **defaultValue**: `number`
#### Inherited from
[MassargOption](MassargOption.md).[defaultValue](MassargOption.md#defaultvalue)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
• **aliases**: `string`[]
#### Inherited from
[MassargOption](MassargOption.md).[aliases](MassargOption.md#aliases)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
• **negationAliases**: `string`[]
#### Inherited from
[MassargOption](MassargOption.md).[negationAliases](MassargOption.md#negationaliases)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
• **parse**: [`Parser`](../modules.md#parser)\<[`ArgsObject`](../modules.md#argsobject), `number`\>
#### Inherited from
[MassargOption](MassargOption.md).[parse](MassargOption.md#parse)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
• **isArray**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isArray](MassargOption.md#isarray)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
• **isRequired**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isRequired](MassargOption.md#isrequired)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
• **isDefault**: `boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isDefault](MassargOption.md#isdefault)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
• `Optional` **outputName**: `string`
#### Inherited from
[MassargOption](MassargOption.md).[outputName](MassargOption.md#outputname)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
▸ **fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules.md#parser)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Inherited from
[MassargOption](MassargOption.md).[fromTypedConfig](MassargOption.md#fromtypedconfig)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `options`, `prefixes`): `ArgvValue`\<`number`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `options` | [`ArgsObject`](../modules.md#argsobject) |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`ArgvValue`\<`number`\>
#### Overrides
[MassargOption](MassargOption.md).[parseDetails](MassargOption.md#parsedetails)
#### Defined in
[src/option.ts:298](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L298)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](MassargOption.md).[getOutputName](MassargOption.md#getoutputname)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](MassargOption.md).[helpString](MassargOption.md#helpstring)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`boolean`
#### Inherited from
[MassargOption](MassargOption.md).[isMatch](MassargOption.md#ismatch)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules.md#qualifiednames)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
[`QualifiedNames`](../modules.md#qualifiednames)
#### Inherited from
[MassargOption](MassargOption.md).[qualifiedNames](MassargOption.md#qualifiednames)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,366 @@
---
id: "MassargOption"
title: "Class: MassargOption<OptionType, Args>"
sidebar_label: "MassargOption"
sidebar_position: 0
custom_edit_url: null
---
An option that can be passed to a command.
Options can be specified in two ways:
- Using the long form, e.g. `--option value`
- Using the short form, e.g. `-o value`
They can also have a parse function, which will be used to parse the value passed in from the
original argument (string).
**`Example`**
```ts
massarg(options).option({
name: 'option',
description: 'An option',
defaultValue: 'default',
aliases: ['o'],
parse: (value) => value.toUpperCase(),
})
```
## Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | extends `any` = `unknown` |
| `Args` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
## Hierarchy
- **`MassargOption`**
↳ [`MassargNumber`](MassargNumber.md)
↳ [`MassargFlag`](MassargFlag.md)
## Implements
- [`OptionConfig`](../modules.md#optionconfig-1)\<`OptionType`, `Args`\>
## Constructors
### constructor
**new MassargOption**\<`OptionType`, `Args`\>(`options`): [`MassargOption`](MassargOption.md)\<`OptionType`, `Args`\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | extends `unknown` = `unknown` |
| `Args` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | `Object` | - |
| `options.name` | `string` | Name of the option |
| `options.description` | `string` | Description of the option, displayed in the help output |
| `options.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `options.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `options.defaultValue?` | `any` | Default value of the option |
| `options.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `options.parse?` | [`Parser`](../modules.md#parser)\<`Args`, `OptionType`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `options.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `options.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `options.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `options.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `options.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
#### Returns
[`MassargOption`](MassargOption.md)\<`OptionType`, `Args`\>
#### Defined in
[src/option.ts:174](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L174)
## Properties
### name
**name**: `string`
#### Implementation of
OptionConfig.name
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
**negationName**: `string`
#### Implementation of
OptionConfig.negationName
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
**description**: `string`
#### Implementation of
OptionConfig.description
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
`Optional` **defaultValue**: `OptionType`
#### Implementation of
OptionConfig.defaultValue
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
**aliases**: `string`[]
#### Implementation of
OptionConfig.aliases
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
**negationAliases**: `string`[]
#### Implementation of
OptionConfig.negationAliases
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
**parse**: [`Parser`](../modules.md#parser)\<`Args`, `OptionType`\>
#### Implementation of
OptionConfig.parse
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
**isArray**: `boolean`
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
**isRequired**: `boolean`
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
**isDefault**: `boolean`
#### Implementation of
OptionConfig.isDefault
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
`Optional` **outputName**: `string`
#### Implementation of
OptionConfig.outputName
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
**fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules.md#argsobject) = [`ArgsObject`](../modules.md#argsobject) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules.md#parser)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](MassargOption.md)\<`T`, [`ArgsObject`](../modules.md#argsobject)\>
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### parseDetails
▸ **parseDetails**(`argv`, `options`, `prefixes`): `ArgvValue`\<`OptionType`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `options` | [`ArgsObject`](../modules.md#argsobject) |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`ArgvValue`\<`OptionType`\>
#### Defined in
[src/option.ts:203](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L203)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
`boolean`
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules.md#qualifiednames)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules.md#prefixes) |
#### Returns
[`QualifiedNames`](../modules.md#qualifiednames)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,215 @@
---
id: "ParseError"
title: "Class: ParseError"
sidebar_label: "ParseError"
sidebar_position: 0
custom_edit_url: null
---
This error is thrown when a parse fails on an option value.
## Hierarchy
- `Error`
**`ParseError`**
## Constructors
### constructor
**new ParseError**(`«destructured»`): [`ParseError`](ParseError.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `«destructured»` | [`ParseErrorOptions`](../modules.md#parseerroroptions) |
#### Returns
[`ParseError`](ParseError.md)
#### Overrides
Error.constructor
#### Defined in
[src/error.ts:42](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L42)
## Properties
### prepareStackTrace
`Static` `Optional` **prepareStackTrace**: (`err`: `Error`, `stackTraces`: `CallSite`[]) => `any`
Optional override for formatting stack traces
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Type declaration
▸ (`err`, `stackTraces`): `any`
Optional override for formatting stack traces
##### Parameters
| Name | Type |
| :------ | :------ |
| `err` | `Error` |
| `stackTraces` | `CallSite`[] |
##### Returns
`any`
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Inherited from
Error.prepareStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:28
___
### stackTraceLimit
`Static` **stackTraceLimit**: `number`
#### Inherited from
Error.stackTraceLimit
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:30
___
### path
**path**: `string`[]
The path to the value that failed parsing.
#### Defined in
[src/error.ts:34](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L34)
___
### code
**code**: `string`
The error code.
#### Defined in
[src/error.ts:36](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L36)
___
### message
**message**: `string`
The error message.
#### Overrides
Error.message
#### Defined in
[src/error.ts:38](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L38)
___
### received
**received**: `unknown`
The value that failed parsing.
#### Defined in
[src/error.ts:40](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L40)
___
### name
**name**: `string`
#### Inherited from
Error.name
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1067
___
### stack
`Optional` **stack**: `string`
#### Inherited from
Error.stack
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1069
___
### cause
`Optional` **cause**: `unknown`
#### Inherited from
Error.cause
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts:24
## Methods
### captureStackTrace
**captureStackTrace**(`targetObject`, `constructorOpt?`): `void`
Create .stack property on a target object
#### Parameters
| Name | Type |
| :------ | :------ |
| `targetObject` | `object` |
| `constructorOpt?` | `Function` |
#### Returns
`void`
#### Inherited from
Error.captureStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:21

View File

@@ -0,0 +1,203 @@
---
id: "ValidationError"
title: "Class: ValidationError"
sidebar_label: "ValidationError"
sidebar_position: 0
custom_edit_url: null
---
This error is thrown when a validation fails.
## Hierarchy
- `Error`
**`ValidationError`**
## Constructors
### constructor
**new ValidationError**(`«destructured»`): [`ValidationError`](ValidationError.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `«destructured»` | [`ValidationErrorOptions`](../modules.md#validationerroroptions) |
#### Returns
[`ValidationError`](ValidationError.md)
#### Overrides
Error.constructor
#### Defined in
[src/error.ts:14](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L14)
## Properties
### prepareStackTrace
`Static` `Optional` **prepareStackTrace**: (`err`: `Error`, `stackTraces`: `CallSite`[]) => `any`
Optional override for formatting stack traces
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Type declaration
▸ (`err`, `stackTraces`): `any`
Optional override for formatting stack traces
##### Parameters
| Name | Type |
| :------ | :------ |
| `err` | `Error` |
| `stackTraces` | `CallSite`[] |
##### Returns
`any`
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Inherited from
Error.prepareStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:28
___
### stackTraceLimit
`Static` **stackTraceLimit**: `number`
#### Inherited from
Error.stackTraceLimit
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:30
___
### path
**path**: `string`[]
The path to the value that failed validation.
#### Defined in
[src/error.ts:8](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L8)
___
### code
**code**: `string`
The error code.
#### Defined in
[src/error.ts:10](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L10)
___
### message
**message**: `string`
The error message.
#### Overrides
Error.message
#### Defined in
[src/error.ts:12](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L12)
___
### name
**name**: `string`
#### Inherited from
Error.name
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1067
___
### stack
`Optional` **stack**: `string`
#### Inherited from
Error.stack
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1069
___
### cause
`Optional` **cause**: `unknown`
#### Inherited from
Error.cause
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts:24
## Methods
### captureStackTrace
**captureStackTrace**(`targetObject`, `constructorOpt?`): `void`
Create .stack property on a target object
#### Parameters
| Name | Type |
| :------ | :------ |
| `targetObject` | `object` |
| `constructorOpt?` | `Function` |
#### Returns
`void`
#### Inherited from
Error.captureStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:21

View File

@@ -0,0 +1,2 @@
label: "Classes"
position: 3

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,216 @@
---
id: "error.ParseError"
title: "Class: ParseError"
sidebar_label: "ParseError"
custom_edit_url: null
---
[error](../modules/error.md).ParseError
This error is thrown when a parse fails on an option value.
## Hierarchy
- `Error`
**`ParseError`**
## Constructors
### constructor
**new ParseError**(`«destructured»`): [`ParseError`](error.ParseError.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `«destructured»` | [`ParseErrorOptions`](../modules/error.md#parseerroroptions-8) |
#### Returns
[`ParseError`](error.ParseError.md)
#### Overrides
Error.constructor
#### Defined in
[src/error.ts:42](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L42)
## Properties
### prepareStackTrace
`Static` `Optional` **prepareStackTrace**: (`err`: `Error`, `stackTraces`: `CallSite`[]) => `any`
Optional override for formatting stack traces
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Type declaration
▸ (`err`, `stackTraces`): `any`
Optional override for formatting stack traces
##### Parameters
| Name | Type |
| :------ | :------ |
| `err` | `Error` |
| `stackTraces` | `CallSite`[] |
##### Returns
`any`
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Inherited from
Error.prepareStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:28
___
### stackTraceLimit
`Static` **stackTraceLimit**: `number`
#### Inherited from
Error.stackTraceLimit
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:30
___
### path
**path**: `string`[]
The path to the value that failed parsing.
#### Defined in
[src/error.ts:34](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L34)
___
### code
**code**: `string`
The error code.
#### Defined in
[src/error.ts:36](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L36)
___
### message
**message**: `string`
The error message.
#### Overrides
Error.message
#### Defined in
[src/error.ts:38](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L38)
___
### received
**received**: `unknown`
The value that failed parsing.
#### Defined in
[src/error.ts:40](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L40)
___
### name
**name**: `string`
#### Inherited from
Error.name
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1067
___
### stack
`Optional` **stack**: `string`
#### Inherited from
Error.stack
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1069
___
### cause
`Optional` **cause**: `unknown`
#### Inherited from
Error.cause
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts:24
## Methods
### captureStackTrace
**captureStackTrace**(`targetObject`, `constructorOpt?`): `void`
Create .stack property on a target object
#### Parameters
| Name | Type |
| :------ | :------ |
| `targetObject` | `object` |
| `constructorOpt?` | `Function` |
#### Returns
`void`
#### Inherited from
Error.captureStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:21

View File

@@ -0,0 +1,204 @@
---
id: "error.ValidationError"
title: "Class: ValidationError"
sidebar_label: "ValidationError"
custom_edit_url: null
---
[error](../modules/error.md).ValidationError
This error is thrown when a validation fails.
## Hierarchy
- `Error`
**`ValidationError`**
## Constructors
### constructor
**new ValidationError**(`«destructured»`): [`ValidationError`](error.ValidationError.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `«destructured»` | [`ValidationErrorOptions`](../modules/error.md#validationerroroptions-8) |
#### Returns
[`ValidationError`](error.ValidationError.md)
#### Overrides
Error.constructor
#### Defined in
[src/error.ts:14](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L14)
## Properties
### prepareStackTrace
`Static` `Optional` **prepareStackTrace**: (`err`: `Error`, `stackTraces`: `CallSite`[]) => `any`
Optional override for formatting stack traces
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Type declaration
▸ (`err`, `stackTraces`): `any`
Optional override for formatting stack traces
##### Parameters
| Name | Type |
| :------ | :------ |
| `err` | `Error` |
| `stackTraces` | `CallSite`[] |
##### Returns
`any`
**`See`**
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
#### Inherited from
Error.prepareStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:28
___
### stackTraceLimit
`Static` **stackTraceLimit**: `number`
#### Inherited from
Error.stackTraceLimit
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:30
___
### path
**path**: `string`[]
The path to the value that failed validation.
#### Defined in
[src/error.ts:8](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L8)
___
### code
**code**: `string`
The error code.
#### Defined in
[src/error.ts:10](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L10)
___
### message
**message**: `string`
The error message.
#### Overrides
Error.message
#### Defined in
[src/error.ts:12](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L12)
___
### name
**name**: `string`
#### Inherited from
Error.name
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1067
___
### stack
`Optional` **stack**: `string`
#### Inherited from
Error.stack
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es5.d.ts:1069
___
### cause
`Optional` **cause**: `unknown`
#### Inherited from
Error.cause
#### Defined in
docs/node_modules/.pnpm/typescript@5.2.2/node_modules/typescript/lib/lib.es2022.error.d.ts:24
## Methods
### captureStackTrace
**captureStackTrace**(`targetObject`, `constructorOpt?`): `void`
Create .stack property on a target object
#### Parameters
| Name | Type |
| :------ | :------ |
| `targetObject` | `object` |
| `constructorOpt?` | `Function` |
#### Returns
`void`
#### Inherited from
Error.captureStackTrace
#### Defined in
node_modules/.pnpm/@types+node@20.11.5/node_modules/@types/node/globals.d.ts:21

View File

@@ -0,0 +1,61 @@
---
id: "example.MassargExample"
title: "Class: MassargExample"
sidebar_label: "MassargExample"
custom_edit_url: null
---
[example](../modules/example.md).MassargExample
## Constructors
### constructor
**new MassargExample**(`config`): [`MassargExample`](example.MassargExample.md)
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.description?` | `string` | Description of the example. This will appear as a title above the input/output line(s). |
| `config.input?` | `string` | Input of the example. This will appear as a line below the description, with a `$` prefix. The prefix can be changed using the `help()` function on the command. |
| `config.output?` | `string` | Output of the example. This will appear as a line below the input, with a `>` prefix. The prefix can be changed using the `help()` function on the command. |
#### Returns
[`MassargExample`](example.MassargExample.md)
#### Defined in
[src/example.ts:25](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L25)
## Properties
### description
**description**: `undefined` \| `string`
#### Defined in
[src/example.ts:21](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L21)
___
### input
**input**: `undefined` \| `string`
#### Defined in
[src/example.ts:22](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L22)
___
### output
**output**: `undefined` \| `string`
#### Defined in
[src/example.ts:23](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L23)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,393 @@
---
id: "option.MassargFlag"
title: "Class: MassargFlag"
sidebar_label: "MassargFlag"
custom_edit_url: null
---
[option](../modules/option.md).MassargFlag
An option that can be passed to a command.
A flag is an option that is either present or not. It can be used to toggle
a boolean value, or to indicate that a command should be run in a different
mode.
A flag can be negated by prefixing it with `no-`. For example, `--no-verbose`,
or by prefixing the alias with `^` instead of `-`. This is configurable via the command's
configuration. To turn this behavior on, set `negatable: true` in the flag's configuration.
**`Example`**
```ts
massarg.flag({
name: 'verbose',
aliases: ['v'],
description: 'Enable verbose logging',
defaultValue: false,
})
```
## Hierarchy
- [`MassargOption`](option.MassargOption.md)\<`boolean`\>
**`MassargFlag`**
↳↳ [`MassargHelpFlag`](option.MassargHelpFlag.md)
## Constructors
### constructor
**new MassargFlag**(`options`): [`MassargFlag`](option.MassargFlag.md)
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | `Object` | - |
| `options.name` | `string` | Name of the option |
| `options.description` | `string` | Description of the option, displayed in the help output |
| `options.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `options.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `options.defaultValue?` | `any` | Default value of the option |
| `options.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `options.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `options.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `options.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `options.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `options.negatable?` | `boolean` | Whether the flag can be negated, e.g. `--no-verbose` |
#### Returns
[`MassargFlag`](option.MassargFlag.md)
#### Overrides
[MassargOption](option.MassargOption.md).[constructor](option.MassargOption.md#constructor-8)
#### Defined in
[src/option.ts:348](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L348)
## Properties
### negatable
**negatable**: `boolean`
#### Defined in
[src/option.ts:346](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L346)
___
### name
**name**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[name](option.MassargOption.md#name-8)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
**negationName**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[negationName](option.MassargOption.md#negationname-8)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
**description**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[description](option.MassargOption.md#description-8)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
`Optional` **defaultValue**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[defaultValue](option.MassargOption.md#defaultvalue-8)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
**aliases**: `string`[]
#### Inherited from
[MassargOption](option.MassargOption.md).[aliases](option.MassargOption.md#aliases-8)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
**negationAliases**: `string`[]
#### Inherited from
[MassargOption](option.MassargOption.md).[negationAliases](option.MassargOption.md#negationaliases-8)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
**parse**: [`Parser`](../modules/option.md#parser-8)\<[`ArgsObject`](../modules/command.md#argsobject-8), `boolean`\>
#### Inherited from
[MassargOption](option.MassargOption.md).[parse](option.MassargOption.md#parse-8)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
**isArray**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isArray](option.MassargOption.md#isarray-8)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
**isRequired**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isRequired](option.MassargOption.md#isrequired-8)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
**isDefault**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isDefault](option.MassargOption.md#isdefault-8)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
`Optional` **outputName**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[outputName](option.MassargOption.md#outputname-8)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
**fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules/option.md#parser-8)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Inherited from
[MassargOption](option.MassargOption.md).[fromTypedConfig](option.MassargOption.md#fromtypedconfig-8)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `_options`, `prefixes`): `ArgvValue`\<`boolean`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `_options` | [`ArgsObject`](../modules/command.md#argsobject-8) |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`ArgvValue`\<`boolean`\>
#### Overrides
[MassargOption](option.MassargOption.md).[parseDetails](option.MassargOption.md#parsedetails-8)
#### Defined in
[src/option.ts:356](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L356)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](option.MassargOption.md).[getOutputName](option.MassargOption.md#getoutputname-8)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](option.MassargOption.md).[helpString](option.MassargOption.md#helpstring-8)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isMatch](option.MassargOption.md#ismatch-8)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
[`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Inherited from
[MassargOption](option.MassargOption.md).[qualifiedNames](option.MassargOption.md#qualifiednames-8)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,384 @@
---
id: "option.MassargHelpFlag"
title: "Class: MassargHelpFlag"
sidebar_label: "MassargHelpFlag"
custom_edit_url: null
---
[option](../modules/option.md).MassargHelpFlag
An option that can be passed to a command.
A flag is an option that is either present or not. It can be used to toggle
a boolean value, or to indicate that a command should be run in a different
mode.
A flag can be negated by prefixing it with `no-`. For example, `--no-verbose`,
or by prefixing the alias with `^` instead of `-`. This is configurable via the command's
configuration. To turn this behavior on, set `negatable: true` in the flag's configuration.
**`Example`**
```ts
massarg.flag({
name: 'verbose',
aliases: ['v'],
description: 'Enable verbose logging',
defaultValue: false,
})
```
## Hierarchy
- [`MassargFlag`](option.MassargFlag.md)
**`MassargHelpFlag`**
## Constructors
### constructor
**new MassargHelpFlag**(`config?`): [`MassargHelpFlag`](option.MassargHelpFlag.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `config` | `Partial`\<`Omit`\<\{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](../modules/option.md#parser-8)\<[`ArgsObject`](../modules/command.md#argsobject-8), `boolean`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, ``"parse"``\>\> |
#### Returns
[`MassargHelpFlag`](option.MassargHelpFlag.md)
#### Overrides
[MassargFlag](option.MassargFlag.md).[constructor](option.MassargFlag.md#constructor-8)
#### Defined in
[src/option.ts:397](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L397)
## Properties
### negatable
• **negatable**: `boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[negatable](option.MassargFlag.md#negatable-8)
#### Defined in
[src/option.ts:346](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L346)
___
### name
• **name**: `string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[name](option.MassargFlag.md#name-8)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
• **negationName**: `string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[negationName](option.MassargFlag.md#negationname-8)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
• **description**: `string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[description](option.MassargFlag.md#description-8)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
• `Optional` **defaultValue**: `boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[defaultValue](option.MassargFlag.md#defaultvalue-8)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
• **aliases**: `string`[]
#### Inherited from
[MassargFlag](option.MassargFlag.md).[aliases](option.MassargFlag.md#aliases-8)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
• **negationAliases**: `string`[]
#### Inherited from
[MassargFlag](option.MassargFlag.md).[negationAliases](option.MassargFlag.md#negationaliases-8)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
• **parse**: [`Parser`](../modules/option.md#parser-8)\<[`ArgsObject`](../modules/command.md#argsobject-8), `boolean`\>
#### Inherited from
[MassargFlag](option.MassargFlag.md).[parse](option.MassargFlag.md#parse-8)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
• **isArray**: `boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[isArray](option.MassargFlag.md#isarray-8)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
• **isRequired**: `boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[isRequired](option.MassargFlag.md#isrequired-8)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
• **isDefault**: `boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[isDefault](option.MassargFlag.md#isdefault-8)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
• `Optional` **outputName**: `string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[outputName](option.MassargFlag.md#outputname-8)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
▸ **fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules/option.md#parser-8)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Inherited from
[MassargFlag](option.MassargFlag.md).[fromTypedConfig](option.MassargFlag.md#fromtypedconfig-8)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `_options`, `prefixes`): `ArgvValue`\<`boolean`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `_options` | [`ArgsObject`](../modules/command.md#argsobject-8) |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`ArgvValue`\<`boolean`\>
#### Inherited from
[MassargFlag](option.MassargFlag.md).[parseDetails](option.MassargFlag.md#parsedetails-8)
#### Defined in
[src/option.ts:356](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L356)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[getOutputName](option.MassargFlag.md#getoutputname-8)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[helpString](option.MassargFlag.md#helpstring-8)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`boolean`
#### Inherited from
[MassargFlag](option.MassargFlag.md).[isMatch](option.MassargFlag.md#ismatch-8)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
[`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Inherited from
[MassargFlag](option.MassargFlag.md).[qualifiedNames](option.MassargFlag.md#qualifiednames-8)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,365 @@
---
id: "option.MassargNumber"
title: "Class: MassargNumber"
sidebar_label: "MassargNumber"
custom_edit_url: null
---
[option](../modules/option.md).MassargNumber
An option that can be passed to a command.
This type of option parses a number, and fails if it is not a valid number.
**`Example`**
```ts
massarg(options).option({
name: 'number',
description: 'A number',
defaultValue: 0,
aliases: ['n'],
type: 'number',
})
```
## Hierarchy
- [`MassargOption`](option.MassargOption.md)\<`number`\>
**`MassargNumber`**
## Constructors
### constructor
**new MassargNumber**(`options`): [`MassargNumber`](option.MassargNumber.md)
#### Parameters
| Name | Type |
| :------ | :------ |
| `options` | `Omit`\<\{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](../modules/option.md#parser-8)\<[`ArgsObject`](../modules/command.md#argsobject-8), `number`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, ``"parse"``\> |
#### Returns
[`MassargNumber`](option.MassargNumber.md)
#### Overrides
[MassargOption](option.MassargOption.md).[constructor](option.MassargOption.md#constructor-8)
#### Defined in
[src/option.ts:291](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L291)
## Properties
### name
• **name**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[name](option.MassargOption.md#name-8)
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
• **negationName**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[negationName](option.MassargOption.md#negationname-8)
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
• **description**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[description](option.MassargOption.md#description-8)
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
• `Optional` **defaultValue**: `number`
#### Inherited from
[MassargOption](option.MassargOption.md).[defaultValue](option.MassargOption.md#defaultvalue-8)
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
• **aliases**: `string`[]
#### Inherited from
[MassargOption](option.MassargOption.md).[aliases](option.MassargOption.md#aliases-8)
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
• **negationAliases**: `string`[]
#### Inherited from
[MassargOption](option.MassargOption.md).[negationAliases](option.MassargOption.md#negationaliases-8)
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
• **parse**: [`Parser`](../modules/option.md#parser-8)\<[`ArgsObject`](../modules/command.md#argsobject-8), `number`\>
#### Inherited from
[MassargOption](option.MassargOption.md).[parse](option.MassargOption.md#parse-8)
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
• **isArray**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isArray](option.MassargOption.md#isarray-8)
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
• **isRequired**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isRequired](option.MassargOption.md#isrequired-8)
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
• **isDefault**: `boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isDefault](option.MassargOption.md#isdefault-8)
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
• `Optional` **outputName**: `string`
#### Inherited from
[MassargOption](option.MassargOption.md).[outputName](option.MassargOption.md#outputname-8)
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
▸ **fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules/option.md#parser-8)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Inherited from
[MassargOption](option.MassargOption.md).[fromTypedConfig](option.MassargOption.md#fromtypedconfig-8)
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### parseDetails
▸ **parseDetails**(`argv`, `options`, `prefixes`): `ArgvValue`\<`number`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `options` | [`ArgsObject`](../modules/command.md#argsobject-8) |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`ArgvValue`\<`number`\>
#### Overrides
[MassargOption](option.MassargOption.md).[parseDetails](option.MassargOption.md#parsedetails-8)
#### Defined in
[src/option.ts:298](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L298)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](option.MassargOption.md).[getOutputName](option.MassargOption.md#getoutputname-8)
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Inherited from
[MassargOption](option.MassargOption.md).[helpString](option.MassargOption.md#helpstring-8)
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`boolean`
#### Inherited from
[MassargOption](option.MassargOption.md).[isMatch](option.MassargOption.md#ismatch-8)
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
[`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Inherited from
[MassargOption](option.MassargOption.md).[qualifiedNames](option.MassargOption.md#qualifiednames-8)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

View File

@@ -0,0 +1,367 @@
---
id: "option.MassargOption"
title: "Class: MassargOption<OptionType, Args>"
sidebar_label: "MassargOption"
custom_edit_url: null
---
[option](../modules/option.md).MassargOption
An option that can be passed to a command.
Options can be specified in two ways:
- Using the long form, e.g. `--option value`
- Using the short form, e.g. `-o value`
They can also have a parse function, which will be used to parse the value passed in from the
original argument (string).
**`Example`**
```ts
massarg(options).option({
name: 'option',
description: 'An option',
defaultValue: 'default',
aliases: ['o'],
parse: (value) => value.toUpperCase(),
})
```
## Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | extends `any` = `unknown` |
| `Args` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
## Hierarchy
- **`MassargOption`**
↳ [`MassargNumber`](option.MassargNumber.md)
↳ [`MassargFlag`](option.MassargFlag.md)
## Implements
- [`OptionConfig`](../modules/option.md#optionconfig-17)\<`OptionType`, `Args`\>
## Constructors
### constructor
**new MassargOption**\<`OptionType`, `Args`\>(`options`): [`MassargOption`](option.MassargOption.md)\<`OptionType`, `Args`\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | extends `unknown` = `unknown` |
| `Args` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `options` | `Object` | - |
| `options.name` | `string` | Name of the option |
| `options.description` | `string` | Description of the option, displayed in the help output |
| `options.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `options.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `options.defaultValue?` | `any` | Default value of the option |
| `options.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `options.parse?` | [`Parser`](../modules/option.md#parser-8)\<`Args`, `OptionType`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `options.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `options.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `options.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `options.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `options.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
#### Returns
[`MassargOption`](option.MassargOption.md)\<`OptionType`, `Args`\>
#### Defined in
[src/option.ts:174](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L174)
## Properties
### name
**name**: `string`
#### Implementation of
OptionConfig.name
#### Defined in
[src/option.ts:162](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L162)
___
### negationName
**negationName**: `string`
#### Implementation of
OptionConfig.negationName
#### Defined in
[src/option.ts:163](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L163)
___
### description
**description**: `string`
#### Implementation of
OptionConfig.description
#### Defined in
[src/option.ts:164](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L164)
___
### defaultValue
`Optional` **defaultValue**: `OptionType`
#### Implementation of
OptionConfig.defaultValue
#### Defined in
[src/option.ts:165](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L165)
___
### aliases
**aliases**: `string`[]
#### Implementation of
OptionConfig.aliases
#### Defined in
[src/option.ts:166](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L166)
___
### negationAliases
**negationAliases**: `string`[]
#### Implementation of
OptionConfig.negationAliases
#### Defined in
[src/option.ts:167](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L167)
___
### parse
**parse**: [`Parser`](../modules/option.md#parser-8)\<`Args`, `OptionType`\>
#### Implementation of
OptionConfig.parse
#### Defined in
[src/option.ts:168](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L168)
___
### isArray
**isArray**: `boolean`
#### Defined in
[src/option.ts:169](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L169)
___
### isRequired
**isRequired**: `boolean`
#### Defined in
[src/option.ts:170](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L170)
___
### isDefault
**isDefault**: `boolean`
#### Implementation of
OptionConfig.isDefault
#### Defined in
[src/option.ts:171](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L171)
___
### outputName
`Optional` **outputName**: `string`
#### Implementation of
OptionConfig.outputName
#### Defined in
[src/option.ts:172](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L172)
## Methods
### fromTypedConfig
**fromTypedConfig**\<`T`, `A`\>(`config`): [`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `A` | extends [`ArgsObject`](../modules/command.md#argsobject-8) = [`ArgsObject`](../modules/command.md#argsobject-8) |
#### Parameters
| Name | Type | Description |
| :------ | :------ | :------ |
| `config` | `Object` | - |
| `config.name` | `string` | Name of the option |
| `config.description` | `string` | Description of the option, displayed in the help output |
| `config.aliases` | `string`[] | Aliases for the option, which can be used with the shorthand option notation. |
| `config.negationName?` | `string` | Negation name of the option, which can be used with the full option notation, e.g. `loud` for `--loud`. Defaults to `no-{name}`, e.g. `--no-quiet`. |
| `config.defaultValue?` | `any` | Default value of the option |
| `config.negationAliases?` | `string`[] | Negation aliases for the option, which can be used with the shorthand option notation, e.g. `Q` for `-Q`. Defaults to uppercase of each of the aliases provided. |
| `config.array?` | `boolean` | Whether the option is an array. Array options can be specified multiple times, and the values will be collected into an array. Normally, specifying an option multiple times will override the previous value. |
| `config.required?` | `boolean` | Whether the option is required. If it is required, parsing will throw an error if it's not present. |
| `config.isDefault?` | `boolean` | Whether the option is the default option. The default option is the option that is used if no other option is specified, e.g. a value is passed in without an option name. Note that if commands match the same argument first, they will be used instead of the default option. |
| `config.hidden?` | `boolean` | Whether the option is hidden. Hidden options are not displayed in the help output. |
| `config.outputName?` | `string` | Specify a custom name for the output, which will be used when parsing the args. |
| `config.parse?` | [`Parser`](../modules/option.md#parser-8)\<`A`, `T`\> | Parse the value of the option. You can return any type here, or throw an error if the value is invalid. |
| `config.type?` | ``"number"`` | - |
#### Returns
[`MassargOption`](option.MassargOption.md)\<`T`, [`ArgsObject`](../modules/command.md#argsobject-8)\>
#### Defined in
[src/option.ts:189](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L189)
___
### getOutputName
▸ **getOutputName**(): `string`
#### Returns
`string`
#### Defined in
[src/option.ts:199](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L199)
___
### parseDetails
▸ **parseDetails**(`argv`, `options`, `prefixes`): `ArgvValue`\<`OptionType`\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `argv` | `string`[] |
| `options` | [`ArgsObject`](../modules/command.md#argsobject-8) |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`ArgvValue`\<`OptionType`\>
#### Defined in
[src/option.ts:203](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L203)
___
### helpString
▸ **helpString**(): `string`
#### Returns
`string`
#### Defined in
[src/option.ts:231](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L231)
___
### isMatch
▸ **isMatch**(`arg`, `prefixes`): `boolean`
Returns true if the flag (including any prefixes) matches the name or aliases
#### Parameters
| Name | Type |
| :------ | :------ |
| `arg` | `string` |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
`boolean`
#### Defined in
[src/option.ts:237](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L237)
___
### qualifiedNames
▸ **qualifiedNames**(`prefixes`): [`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Parameters
| Name | Type |
| :------ | :------ |
| `prefixes` | [`Prefixes`](../modules/option.md#prefixes-8) |
#### Returns
[`QualifiedNames`](../modules/option.md#qualifiednames-8)
#### Defined in
[src/option.ts:247](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L247)

312
docs/docs/api/index.md Normal file
View File

@@ -0,0 +1,312 @@
---
id: "index"
title: "massarg"
sidebar_label: "Readme"
sidebar_position: 0
custom_edit_url: null
---
# massarg
Massarg is a beautiful, flexible, powerful, and simple-to-use command/argument parser for JS
applications, allowing you to create complex but easy applications that consume command-line
arguments and commands.
It allows you to both parse argument options and flags, as well as hierarchal subcommands, both of
which can be parsed into an automatic help command or flag that displays all the information easily,
with customizable styles, and content.
You should only focus on actually writing the functionality of your CLI, and not waste it on writing
a way to parse the chain of commands, flags or options.
And it should look good too, right?
![colored shell output](https://user-images.githubusercontent.com/167217/126086652-433a523f-2f0a-427c-b58a-18b2131489f4.png)
## Features
- Primary command to be run without args
- Commands to be run from arg
- Options with flexible parsing
- Required options
- Options with multiple values
- Nameless options
- Automatically generated help text:
- Customizable colors
- Customizable header and footer text
- Customizable usage examples
- Automatic text alignment
- Add run examples for your args
- Shows default value and type next to description
- TypeScript-first package: You will always have strong types
## Usage
## Quick Start
### Install
```shell
# pnpm
pnpm install massarg
# npm
npm install massarg
# yarn
yarn add massarg
```
### Import
```ts
import massarg from 'massarg'
```
### Usage
Call the default export function `massarg`, or create a new instance manually using `new Massarg()`,
and then you can start chaining commands. Use `.parse()` to do the final parsing and run the
commands and options.
Here is an example with some commonly used examples to get you started. Keep reading for a complete
documentation of every option.
```ts
const parser = massarg({
name: 'my-cli',
description: "Does really amazing stuff, you wouldn't believe!",
}) // or: new Massarg()
.main((options) => console.log('main command', options))
.command({
name: 'foo',
description: 'a sub command',
aliases: ['f'],
run: (options) => console.log('foo command'),
})
.command(
massarg({
name: 'bar',
description: 'another sub command',
aliases: ['s'],
run: (options) => console.log('bar command', options),
}).option({
name: 'file',
description: 'Filename to use',
aliases: ['f'],
parse: (filename) => path.resolve(process.cwd(), filename),
}),
)
.option({
name: 'my-string',
description: 'A string argument',
aliases: ['s'],
})
.flag({
name: 'flag',
description: 'a flag that will be related to any command (main or sub)',
aliases: ['f'],
})
.example({
description: 'Run the sub command',
input: 'my-bin --flag sub',
output: 'Sub command: flag is true',
})
.help({
bindCommand: true,
footerText: `Copyright © ${new Date().getFullYear()} Me, Myself and I`,
titleStyle: {
bold: true,
color: 'brightWhite',
},
})
```
## Main command
The main command is the one that runs when you supply no other commands.
If no command is specified, and no main command is present, the help usage is automatically printed.
### Example
#### JS/TS
```ts
parser.main((options) => {
console.log('Parsed options:', options)
// do stuff
})
```
#### Shell
```shell
$ ./mybin
# Main command runs without options
$ ./mybin --my-string "Some string"
# Main command runs with options { myString: "Some string" }
$ ./mybin foo
# Foo sub command run with options {}
```
## Commands
Commands are activated when their keyword is included in the args. The first command that matches
will be executed, skipping the rest. Options before will be parsed on the main parser, while
anything after the command will be parsed for that subcommand only.
### Options
| Name | Type | Required | Example | Description |
| ------------- | ----------------------------------- | -------- | ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `name` | `string` | ✅ | `"my-command"` | The name of the command, which will be used in the CLI to trigger it |
| `aliases` | `string[]` | | `["m", "mc"]` | Alternate names for the command, available for use in addition to `name` |
| `description` | `string` | | `"Description of the command"` | Description for the command, only displayed with `--help` or `printHelp()` |
| `run` | `function(options, parser) => void` | ✅ | `(options) => console.log("my-command", options)` | Main function that runs this command. The supplied argument is the options passed via the CLI and parsed by massarg. |
### Example
#### JS/TS
```ts
parser.command({
name: 'do-something',
description: 'This command does something',
aliases: ['do', 'd'],
run: (options) => {
console.log('Parsed options:', options)
// do stuff
},
})
```
#### Shell
```shell
$ ./mybin my-command
# Specified "my-command" runs without options
$ ./mybin my-command --my-string "Some string"
# Specified "my-command" runs with option { myString: "Some string" }
```
## Options
Options are variables you can accept via CLI and parse to use in your commands, e.g. `--my-bool`,
`--my-string string`, `--my-number 1`.
Aliases use the shorthand syntax, as such: `-s string`, `-n 1`.
### Options
| Name | Type | Required | Default | Example | Description |
| ------------- | --------------------------------- | -------- | ------------------ | ------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `name` | `string` | ✅ | | `"my-number"` | The name of the option, which will be used in the CLI to apply it |
| `aliases` | `string[]` | | | `["n"]` | Alternate names for the option, available for use in addition to `name` |
| `description` | `string` | | | `"Description of the command"` | Description for the command, only displayed with `--help` or `printHelp()` |
| `parse` | `function(value, options) => any` | | `(s) => String(s)` | `(value, options) => parseInt(value)` | Function that parses this option. The supplied arguments are the string value from the arg, and other options passed via the CLI and parsed by massarg before this one. Not all options will be available. |
| `isDefault` | `boolean` | | `false` | | When `true`, any args placed without name will be applied to this option. When more than one arg is supplied this way, only the last given will be used (unless the option is an array type). |
| `array` | `boolean` | | `false` | | When set to true, you will be able to take multiple values when using the same option more than once. They will all be parsed properly and put into an array. |
| `required` | `boolean` | | `false` | | When an option is required, parsing will throw a `RequiredError` if it was not given a proper value. If it is attached to a specific (or several) commands, it will only throw if the relevant command was used. |
### Example
#### JS/TS
```ts
parser.option({
name: 'number',
aliases: ['n'],
description:
'This is a number arg, if you include this option, you must supply it with a numeric value.',
defaultValue: 0,
parse: (v) => parseInt(v),
})
```
#### Shell
```shell
$ ./mybin my-command
# Specified "my-command" runs without options
$ ./mybin my-command --my-string "Some string" --my-number 1 --my-bool
# Specified "my-command" runs with option { myString: "Some string", myNumber: 1, myBool: true }
```
## Example Lines
Example lines are annotated samples you can add to your help text. They will be added at the end,
above the footer.
The examples consist of inputs, outputs, and optional descriptions. The descriptions are displayed
atop as titles, if specified.
### Options
| Name | Type | Required | Default | Example | Description |
| ------------- | -------- | -------- | ------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `input` | `string` | ✅ | | `"my-cmd --number 10"` | The input line, an example of user input that will be displayed as "shell" commands. The prefix is customizable through the `help()` options. |
| `output` | `string` | ✅ | | `"you entered my-cmd with the number 10, which is larger than 5"` | The output line, an example of the command's output that will be displayed as "shell" output. The prefix is customizable through the `help()` options. |
| `description` | `string` | | | `"Run the my-cmd command with a number parameter"` | An explanation of the input/output that will be display as a title above the input if specified. |
### Example
#### JS/TS
```ts
parser.example({
input: 'my-cmd --number 10',
output: 'you entered my-cmd with the number 10, which is larger than 5',
description: 'Run the my-cmd command with a number parameter',
})
```
## Help/Usage Command
You can modify some of the styles and behavior of the help text. None of the options are required,
you may override their defaults to modify the behavior.
### Options
| Name | Type | Default | Description |
| ---------------------- | -------------------- | ---------------------- | ------------------------------------------------------------------------------------------------------------- |
| `binName` | `string` | running script name | The name of the binary, to be used when outputting usage information. |
| `printWidth` | `number` | `80` | The amount of characters to allow per line. Use `0` to disable wrapping. |
| `normalColors` | `string \| string[]` | `"dim"` | Colors to use on normal text (descriptions, usage example, etc.) |
| `highlightColors` | `string \| string[]` | `"yellow"` | Colors to use on highlighted text (command names, option names, binary name, etc) |
| `titleColors` | `string \| string[]` | `["bold", "white"]` | Colors to use on title text ("Options", "Usage", etc) |
| `subtitleColors` | `string \| string[]` | `["bold", "dim"]` | Colors to use on subtitle text (e.g. command titles for non-gloal options) |
| `bodyColors` | `string \| string[]` | `"white"` | Colors to use on special body text (header, footer, and default value) |
| `header` | `string` | | Additional content to display below the usage line, and above the rest. |
| `footer` | `string` | | Additional content to display below the commands and options, at the very bottom. |
| `commandNameSeparator` | `string` | `" \| "` | Separator for command name & its aliases. |
| `optionNameSeparator` | `string` | `"\|"` | Separator for option name & its aliases. |
| `useGlobalColumns` | `boolean` | `true` | Decides whether to align the columns of the option/command names and their descriptions globally or per table |
| `usageExample` | `string` | `"[command] [option]"` | Default text to use as suffix for the `binName`, which will be used in the "Usage" line of the help text |
| `useColors` | `boolean` | `true` | When false, no colors will be output in the help. Good for non-supporting systems. |
| `includeDefaults` | `boolean` | `true` | When false, the default values will not be specified after the description of each option. |
### Example
#### JS/TS
```ts
parser.help({
printWidth: 80,
binName: 'my-app',
normalColors: 'dim',
highlightColors: 'yellow',
titleColors: 'white',
subtitleColors: ['bold', 'dim'],
header: 'Header text',
footer: 'Footer text',
commandNameSeparator: ' | ',
optionNameSeparator: '|',
useGlobalColumns: true,
usageExample: 'command [option]',
})
```
#### Shell output

20
docs/docs/api/modules.md Normal file
View File

@@ -0,0 +1,20 @@
---
id: "modules"
title: "massarg"
sidebar_label: "Exports"
sidebar_position: 0.5
custom_edit_url: null
---
## Modules
- [command](modules/command.md)
- [error](modules/error.md)
- [example](modules/example.md)
- [help](modules/help.md)
- [index](modules/)
- [massarg](modules/massarg.md)
- [option](modules/option.md)
- [sample](modules/sample.md)
- [style](modules/style.md)
- [utils](modules/utils.md)

View File

@@ -0,0 +1,2 @@
label: "Modules"
position: 1

View File

@@ -0,0 +1,97 @@
---
id: "command"
title: "Module: command"
sidebar_label: "command"
sidebar_position: 0
custom_edit_url: null
---
## Classes
- [MassargCommand](../classes/command.MassargCommand.md)
- [MassargHelpCommand](../classes/command.MassargHelpCommand.md)
## Type Aliases
### CommandConfig
Ƭ **CommandConfig**\<`RunArgs`\>: `z.infer`\<`ReturnType`\<typeof [`CommandConfig`](command.md#commandconfig-16)\>\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `RunArgs` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Defined in
[src/command.ts:18](https://github.com/chenasraf/massarg/blob/48b3e64/src/command.ts#L18)
[src/command.ts:40](https://github.com/chenasraf/massarg/blob/48b3e64/src/command.ts#L40)
___
### ArgsObject
Ƭ **ArgsObject**: `Record`\<`string` \| `number` \| `symbol`, `any`\>
#### Defined in
[src/command.ts:44](https://github.com/chenasraf/massarg/blob/48b3e64/src/command.ts#L44)
___
### Runner
Ƭ **Runner**\<`Args`\>: (`options`: `Args`, `instance`: [`MassargCommand`](../classes/command.MassargCommand.md)\<`Args`\>) => `Promise`\<`void`\> \| `void`
#### Type parameters
| Name | Type |
| :------ | :------ |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) |
#### Type declaration
▸ (`options`, `instance`): `Promise`\<`void`\> \| `void`
##### Parameters
| Name | Type |
| :------ | :------ |
| `options` | `Args` |
| `instance` | [`MassargCommand`](../classes/command.MassargCommand.md)\<`Args`\> |
##### Returns
`Promise`\<`void`\> \| `void`
#### Defined in
[src/command.ts:46](https://github.com/chenasraf/massarg/blob/48b3e64/src/command.ts#L46)
## Functions
### CommandConfig
**CommandConfig**\<`RunArgs`\>(`args`): `ZodObject`\<\{ `name`: `ZodString` ; `description`: `ZodString` ; `aliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `run`: `ZodType`\<[`Runner`](command.md#runner-8)\<`RunArgs`\>, `ZodTypeDef`, [`Runner`](command.md#runner-8)\<`RunArgs`\>\> ; `optionPrefix`: `ZodOptional`\<`ZodDefault`\<`ZodString`\>\> ; `aliasPrefix`: `ZodOptional`\<`ZodDefault`\<`ZodString`\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `run`: [`Runner`](command.md#runner-8)\<`RunArgs`\> ; `aliases?`: `string`[] ; `optionPrefix?`: `string` ; `aliasPrefix?`: `string` }, \{ `name`: `string` ; `description`: `string` ; `run`: [`Runner`](command.md#runner-8)\<`RunArgs`\> ; `aliases?`: `string`[] ; `optionPrefix?`: `string` ; `aliasPrefix?`: `string` }\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `RunArgs` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Parameters
| Name | Type |
| :------ | :------ |
| `args` | `ZodType`\<`RunArgs`, `ZodTypeDef`, `RunArgs`\> |
#### Returns
`ZodObject`\<\{ `name`: `ZodString` ; `description`: `ZodString` ; `aliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `run`: `ZodType`\<[`Runner`](command.md#runner-8)\<`RunArgs`\>, `ZodTypeDef`, [`Runner`](command.md#runner-8)\<`RunArgs`\>\> ; `optionPrefix`: `ZodOptional`\<`ZodDefault`\<`ZodString`\>\> ; `aliasPrefix`: `ZodOptional`\<`ZodDefault`\<`ZodString`\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `run`: [`Runner`](command.md#runner-8)\<`RunArgs`\> ; `aliases?`: `string`[] ; `optionPrefix?`: `string` ; `aliasPrefix?`: `string` }, \{ `name`: `string` ; `description`: `string` ; `run`: [`Runner`](command.md#runner-8)\<`RunArgs`\> ; `aliases?`: `string`[] ; `optionPrefix?`: `string` ; `aliasPrefix?`: `string` }\>
#### Defined in
[src/command.ts:18](https://github.com/chenasraf/massarg/blob/48b3e64/src/command.ts#L18)

View File

@@ -0,0 +1,69 @@
---
id: "error"
title: "Module: error"
sidebar_label: "error"
sidebar_position: 0
custom_edit_url: null
---
## Classes
- [ValidationError](../classes/error.ValidationError.md)
- [ParseError](../classes/error.ParseError.md)
## Type Aliases
### ValidationErrorOptions
Ƭ **ValidationErrorOptions**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `path` | `string`[] |
| `code` | `string` |
| `message` | `string` |
#### Defined in
[src/error.ts:3](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L3)
___
### ParseErrorOptions
Ƭ **ParseErrorOptions**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `path` | `string`[] |
| `code` | `string` |
| `message` | `string` |
| `received?` | `unknown` |
#### Defined in
[src/error.ts:24](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L24)
## Functions
### isZodError
**isZodError**(`e`): e is ZodError\<any\>
#### Parameters
| Name | Type |
| :------ | :------ |
| `e` | `unknown` |
#### Returns
e is ZodError\<any\>
#### Defined in
[src/error.ts:56](https://github.com/chenasraf/massarg/blob/48b3e64/src/error.ts#L56)

View File

@@ -0,0 +1,35 @@
---
id: "example"
title: "Module: example"
sidebar_label: "example"
sidebar_position: 0
custom_edit_url: null
---
## Classes
- [MassargExample](../classes/example.MassargExample.md)
## Type Aliases
### ExampleConfig
Ƭ **ExampleConfig**: `z.infer`\<typeof [`ExampleConfig`](example.md#exampleconfig-16)\>
#### Defined in
[src/example.ts:4](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L4)
[src/example.ts:18](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L18)
## Variables
### ExampleConfig
`Const` **ExampleConfig**: `ZodObject`\<\{ `description`: `ZodOptional`\<`ZodString`\> ; `input`: `ZodOptional`\<`ZodString`\> ; `output`: `ZodOptional`\<`ZodString`\> }, ``"strip"``, `ZodTypeAny`, \{ `description?`: `string` ; `input?`: `string` ; `output?`: `string` }, \{ `description?`: `string` ; `input?`: `string` ; `output?`: `string` }\>
#### Defined in
[src/example.ts:4](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L4)
[src/example.ts:18](https://github.com/chenasraf/massarg/blob/48b3e64/src/example.ts#L18)

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,25 @@
---
id: "index"
title: "Module: index"
sidebar_label: "index"
sidebar_position: 0
custom_edit_url: null
---
## References
### massarg
Re-exports [massarg](massarg.md#massarg-8)
___
### Massarg
Re-exports [Massarg](../classes/massarg.Massarg.md)
___
### default
Renames and re-exports [massarg](massarg.md#massarg-8)

View File

@@ -0,0 +1,37 @@
---
id: "massarg"
title: "Module: massarg"
sidebar_label: "massarg"
sidebar_position: 0
custom_edit_url: null
---
## Classes
- [Massarg](../classes/massarg.Massarg.md)
## Functions
### massarg
**massarg**\<`Args`\>(`options`): [`MassargCommand`](../classes/command.MassargCommand.md)\<`Args`\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Parameters
| Name | Type |
| :------ | :------ |
| `options` | `MinimalCommandConfig`\<`Args`\> |
#### Returns
[`MassargCommand`](../classes/command.MassargCommand.md)\<`Args`\>
#### Defined in
[src/massarg.ts:23](https://github.com/chenasraf/massarg/blob/48b3e64/src/massarg.ts#L23)

View File

@@ -0,0 +1,291 @@
---
id: "option"
title: "Module: option"
sidebar_label: "option"
sidebar_position: 0
custom_edit_url: null
---
## Classes
- [MassargOption](../classes/option.MassargOption.md)
- [MassargNumber](../classes/option.MassargNumber.md)
- [MassargFlag](../classes/option.MassargFlag.md)
- [MassargHelpFlag](../classes/option.MassargHelpFlag.md)
## Type Aliases
### OptionConfig
Ƭ **OptionConfig**\<`T`, `Args`\>: `z.infer`\<`ReturnType`\<typeof [`OptionConfig`](option.md#optionconfig-16)\>\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Defined in
[src/option.ts:6](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L6)
[src/option.ts:59](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L59)
___
### FlagConfig
Ƭ **FlagConfig**: `z.infer`\<typeof [`FlagConfig`](option.md#flagconfig-16)\>
#### Defined in
[src/option.ts:63](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L63)
[src/option.ts:71](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L71)
___
### Parser
Ƭ **Parser**\<`Args`, `OptionType`\>: (`x`: `string`, `y`: `Args`) => `OptionType`
#### Type parameters
| Name | Type |
| :------ | :------ |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
| `OptionType` | extends `any` = `any` |
#### Type declaration
▸ (`x`, `y`): `OptionType`
##### Parameters
| Name | Type |
| :------ | :------ |
| `x` | `string` |
| `y` | `Args` |
##### Returns
`OptionType`
#### Defined in
[src/option.ts:73](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L73)
___
### TypedOptionConfig
Ƭ **TypedOptionConfig**\<`T`, `A`\>: `z.infer`\<`ReturnType`\<typeof [`TypedOptionConfig`](option.md#typedoptionconfig-16)\>\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `T` |
| `A` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Defined in
[src/option.ts:78](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L78)
[src/option.ts:86](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L86)
___
### ArrayOptionConfig
Ƭ **ArrayOptionConfig**\<`T`\>: `z.infer`\<`ReturnType`\<typeof [`ArrayOptionConfig`](option.md#arrayoptionconfig-16)\>\>
An option that can be passed to a command.
This type represents an array option, which can be specified multiple times.
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `unknown` |
#### Defined in
[src/option.ts:94](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L94)
[src/option.ts:107](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L107)
___
### Prefixes
Ƭ **Prefixes**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `normalPrefix` | `string` |
| `aliasPrefix` | `string` |
#### Defined in
[src/option.ts:115](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L115)
___
### Names
Ƭ **Names**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `name` | `string` |
| `aliases` | `string`[] |
#### Defined in
[src/option.ts:121](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L121)
___
### QualifiedNames
Ƭ **QualifiedNames**: `Object`
Names with prefixes built-in
#### Type declaration
| Name | Type |
| :------ | :------ |
| `name` | `string` |
| `aliases` | `string`[] |
| `negationName` | `string` |
| `negationAliases` | `string`[] |
#### Defined in
[src/option.ts:127](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L127)
## Variables
### FlagConfig
`Const` **FlagConfig**: `ZodObject`\<\{ `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `defaultValue`: `ZodOptional`\<`ZodAny`\> ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> ; `negatable`: `ZodOptional`\<`ZodBoolean`\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `negatable?`: `boolean` }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `negatable?`: `boolean` }\>
#### Defined in
[src/option.ts:63](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L63)
[src/option.ts:71](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L71)
___
### DEFAULT\_OPT\_FULL\_PREFIX
• `Const` **DEFAULT\_OPT\_FULL\_PREFIX**: ``"--"``
#### Defined in
[src/option.ts:111](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L111)
___
### DEFAULT\_OPT\_SHORT\_PREFIX
• `Const` **DEFAULT\_OPT\_SHORT\_PREFIX**: ``"-"``
#### Defined in
[src/option.ts:112](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L112)
## Functions
### OptionConfig
▸ **OptionConfig**\<`OptionType`, `Args`\>(`type`): `ZodObject`\<\{ `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `defaultValue`: `ZodOptional`\<`ZodAny`\> ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | `OptionType` |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Parameters
| Name | Type |
| :------ | :------ |
| `type` | `ZodType`\<`OptionType`, `ZodTypeDef`, `OptionType`\> |
#### Returns
`ZodObject`\<\{ `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `defaultValue`: `ZodOptional`\<`ZodAny`\> ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` }\>
#### Defined in
[src/option.ts:6](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L6)
___
### TypedOptionConfig
▸ **TypedOptionConfig**\<`OptionType`, `Args`\>(`type`): `ZodObject`\<\{ `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `defaultValue`: `ZodOptional`\<`ZodAny`\> ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>\>\> ; `type`: `ZodOptional`\<`ZodEnum`\<[``"number"``]\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `type?`: ``"number"`` }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `type?`: ``"number"`` }\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `OptionType` | `OptionType` |
| `Args` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Parameters
| Name | Type |
| :------ | :------ |
| `type` | `ZodType`\<`OptionType`, `ZodTypeDef`, `OptionType`\> |
#### Returns
`ZodObject`\<\{ `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `defaultValue`: `ZodOptional`\<`ZodAny`\> ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\>\>\> ; `type`: `ZodOptional`\<`ZodEnum`\<[``"number"``]\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `type?`: ``"number"`` }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `negationName?`: `string` ; `defaultValue?`: `any` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`Args`, `OptionType`\> ; `type?`: ``"number"`` }\>
#### Defined in
[src/option.ts:78](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L78)
___
### ArrayOptionConfig
▸ **ArrayOptionConfig**\<`T`, `A`\>(`type`): `ZodObject`\<\{ `type`: `ZodOptional`\<`ZodEnum`\<[``"number"``]\>\> ; `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`A`, `T`[]\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`A`, `T`[]\>\>\> ; `defaultValue`: `ZodOptional`\<`ZodArray`\<`ZodType`\<`T`, `ZodTypeDef`, `T`\>, ``"many"``\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `type?`: ``"number"`` ; `negationName?`: `string` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`A`, `T`[]\> ; `defaultValue?`: `T`[] }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `type?`: ``"number"`` ; `negationName?`: `string` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`A`, `T`[]\> ; `defaultValue?`: `T`[] }\>
#### Type parameters
| Name | Type |
| :------ | :------ |
| `T` | `T` |
| `A` | extends [`ArgsObject`](command.md#argsobject-8) = [`ArgsObject`](command.md#argsobject-8) |
#### Parameters
| Name | Type |
| :------ | :------ |
| `type` | `ZodType`\<`T`, `ZodTypeDef`, `T`\> |
#### Returns
`ZodObject`\<\{ `type`: `ZodOptional`\<`ZodEnum`\<[``"number"``]\>\> ; `name`: `ZodString` ; `negationName`: `ZodOptional`\<`ZodString`\> ; `description`: `ZodString` ; `aliases`: `ZodArray`\<`ZodString`, ``"many"``\> ; `negationAliases`: `ZodOptional`\<`ZodArray`\<`ZodString`, ``"many"``\>\> ; `array`: `ZodOptional`\<`ZodBoolean`\> ; `required`: `ZodOptional`\<`ZodBoolean`\> ; `isDefault`: `ZodOptional`\<`ZodBoolean`\> ; `hidden`: `ZodOptional`\<`ZodBoolean`\> ; `outputName`: `ZodOptional`\<`ZodString`\> ; `parse`: `ZodOptional`\<`ZodType`\<[`Parser`](option.md#parser-8)\<`A`, `T`[]\>, `ZodTypeDef`, [`Parser`](option.md#parser-8)\<`A`, `T`[]\>\>\> ; `defaultValue`: `ZodOptional`\<`ZodArray`\<`ZodType`\<`T`, `ZodTypeDef`, `T`\>, ``"many"``\>\> }, ``"strip"``, `ZodTypeAny`, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `type?`: ``"number"`` ; `negationName?`: `string` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`A`, `T`[]\> ; `defaultValue?`: `T`[] }, \{ `name`: `string` ; `description`: `string` ; `aliases`: `string`[] ; `type?`: ``"number"`` ; `negationName?`: `string` ; `negationAliases?`: `string`[] ; `array?`: `boolean` ; `required?`: `boolean` ; `isDefault?`: `boolean` ; `hidden?`: `boolean` ; `outputName?`: `string` ; `parse?`: [`Parser`](option.md#parser-8)\<`A`, `T`[]\> ; `defaultValue?`: `T`[] }\>
**`See`**
- OptionConfig
- ArrayOptionConfig
#### Defined in
[src/option.ts:94](https://github.com/chenasraf/massarg/blob/48b3e64/src/option.ts#L94)

View File

@@ -0,0 +1,8 @@
---
id: "sample"
title: "Module: sample"
sidebar_label: "sample"
sidebar_position: 0
custom_edit_url: null
---

View File

@@ -0,0 +1,138 @@
---
id: "style"
title: "Module: style"
sidebar_label: "style"
sidebar_position: 0
custom_edit_url: null
---
## References
### strConcat
Re-exports [strConcat](utils.md#strconcat-8)
___
### indent
Re-exports [indent](utils.md#indent-8)
## Type Aliases
### StringStyle
Ƭ **StringStyle**: `z.infer`\<typeof [`StringStyle`](style.md#stringstyle-16)\>
#### Defined in
[src/style.ts:31](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L31)
[src/style.ts:38](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L38)
## Variables
### ansiStyles
`Const` **ansiStyles**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `reset` | `string` |
| `bold` | `string` |
| `underline` | `string` |
| `black` | `string` |
#### Defined in
[src/style.ts:5](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L5)
___
### ansiColors
`Const` **ansiColors**: `Object`
#### Type declaration
| Name | Type |
| :------ | :------ |
| `red` | `string` |
| `green` | `string` |
| `yellow` | `string` |
| `blue` | `string` |
| `magenta` | `string` |
| `cyan` | `string` |
| `white` | `string` |
| `gray` | `string` |
| `grey` | `string` |
| `brightRed` | `string` |
| `brightGreen` | `string` |
| `brightYellow` | `string` |
| `brightBlue` | `string` |
| `brightMagenta` | `string` |
| `brightCyan` | `string` |
| `brightWhite` | `string` |
#### Defined in
[src/style.ts:12](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L12)
___
### StringStyle
`Const` **StringStyle**: `ZodObject`\<\{ `bold`: `ZodOptional`\<`ZodBoolean`\> ; `underline`: `ZodOptional`\<`ZodBoolean`\> ; `color`: `ZodOptional`\<`ZodEnum`\<[``"red"`` \| ``"green"`` \| ``"yellow"`` \| ``"blue"`` \| ``"magenta"`` \| ``"cyan"`` \| ``"white"`` \| ``"gray"`` \| ``"grey"`` \| ``"brightRed"`` \| ``"brightGreen"`` \| ``"brightYellow"`` \| ``"brightBlue"`` \| ``"brightMagenta"`` \| ``"brightCyan"`` \| ``"brightWhite"``, ...("red" \| "green" \| "yellow" \| "blue" \| "magenta" \| "cyan" \| "white" \| "gray" \| "grey" \| "brightRed" \| "brightGreen" \| "brightYellow" \| "brightBlue" \| "brightMagenta" \| "brightCyan" \| "brightWhite")[]]\>\> ; `reset`: `ZodOptional`\<`ZodDefault`\<`ZodBoolean`\>\> }, ``"strip"``, `ZodTypeAny`, \{ `bold?`: `boolean` ; `underline?`: `boolean` ; `color?`: ``"red"`` \| ``"green"`` \| ``"yellow"`` \| ``"blue"`` \| ``"magenta"`` \| ``"cyan"`` \| ``"white"`` \| ``"gray"`` \| ``"grey"`` \| ``"brightRed"`` \| ``"brightGreen"`` \| ``"brightYellow"`` \| ``"brightBlue"`` \| ``"brightMagenta"`` \| ``"brightCyan"`` \| ``"brightWhite"`` ; `reset?`: `boolean` }, \{ `bold?`: `boolean` ; `underline?`: `boolean` ; `color?`: ``"red"`` \| ``"green"`` \| ``"yellow"`` \| ``"blue"`` \| ``"magenta"`` \| ``"cyan"`` \| ``"white"`` \| ``"gray"`` \| ``"grey"`` \| ``"brightRed"`` \| ``"brightGreen"`` \| ``"brightYellow"`` \| ``"brightBlue"`` \| ``"brightMagenta"`` \| ``"brightCyan"`` \| ``"brightWhite"`` ; `reset?`: `boolean` }\>
#### Defined in
[src/style.ts:31](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L31)
[src/style.ts:38](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L38)
## Functions
### format
▸ **format**(`string`, `style?`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `string` | `string` |
| `style` | `Object` |
| `style.bold?` | `boolean` |
| `style.underline?` | `boolean` |
| `style.color?` | ``"red"`` \| ``"green"`` \| ``"yellow"`` \| ``"blue"`` \| ``"magenta"`` \| ``"cyan"`` \| ``"white"`` \| ``"gray"`` \| ``"grey"`` \| ``"brightRed"`` \| ``"brightGreen"`` \| ``"brightYellow"`` \| ``"brightBlue"`` \| ``"brightMagenta"`` \| ``"brightCyan"`` \| ``"brightWhite"`` |
| `style.reset?` | `boolean` |
#### Returns
`string`
#### Defined in
[src/style.ts:40](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L40)
___
### stripStyle
▸ **stripStyle**(`string`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `string` | `string` |
#### Returns
`string`
#### Defined in
[src/style.ts:49](https://github.com/chenasraf/massarg/blob/48b3e64/src/style.ts#L49)

View File

@@ -0,0 +1,178 @@
---
id: "utils"
title: "Module: utils"
sidebar_label: "utils"
sidebar_position: 0
custom_edit_url: null
---
## Type Aliases
### DeepRequired
Ƭ **DeepRequired**\<`T`\>: \{ [P in keyof T]-?: T[P] extends object ? DeepRequired\<T[P]\> : NonNullable\<T[P]\> }
A type that makes all properties of an object required, recursively.
#### Type parameters
| Name |
| :------ |
| `T` |
#### Defined in
[src/utils.ts:17](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L17)
## Functions
### strConcat
**strConcat**(`...strs`): `string`
Concatenates strings, arrays of strings, and objects with truthy values.
It works recursively, so adding an array of strings to an array of strings will work.
Falsy values are ignored, so pasing `undefined` or `null` will not add anything to the result,
and using a boolean will only add it if it is `true`. Using 0 will also not add anything.
#### Parameters
| Name | Type |
| :------ | :------ |
| `...strs` | (`Parseable` \| `Parseable`[])[] |
#### Returns
`string`
#### Defined in
[src/utils.ts:29](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L29)
___
### indent
**indent**(`str`, `indent?`): `string`
Indents a string or an array of strings. Concatenates them all using `strConcat`.
#### Parameters
| Name | Type | Default value |
| :------ | :------ | :------ |
| `str` | `Parseable` \| `Parseable`[] | `undefined` |
| `indent` | `number` | `2` |
#### Returns
`string`
#### Defined in
[src/utils.ts:62](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L62)
___
### capitalize
**capitalize**(`str`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `str` | `string` |
#### Returns
`string`
#### Defined in
[src/utils.ts:90](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L90)
___
### splitWords
**splitWords**(`str`): `string`[]
Splits a name into words, using camelCase, PascalCase, snake_case, and kebab-case or
regular spaced strings.
#### Parameters
| Name | Type |
| :------ | :------ |
| `str` | `string` |
#### Returns
`string`[]
#### Defined in
[src/utils.ts:98](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L98)
___
### toCamelCase
**toCamelCase**(`str`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `str` | `string` |
#### Returns
`string`
#### Defined in
[src/utils.ts:110](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L110)
___
### toPascalCase
**toPascalCase**(`str`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `str` | `string` |
#### Returns
`string`
#### Defined in
[src/utils.ts:116](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L116)
___
### getErrorMessage
**getErrorMessage**(`err`): `string`
#### Parameters
| Name | Type |
| :------ | :------ |
| `err` | `unknown` |
#### Returns
`string`
#### Defined in
[src/utils.ts:122](https://github.com/chenasraf/massarg/blob/48b3e64/src/utils.ts#L122)

View File

@@ -0,0 +1 @@
label: "Usage"

159
docs/docusaurus.config.ts Normal file
View File

@@ -0,0 +1,159 @@
import { themes as prismThemes } from 'prism-react-renderer'
import type { Config } from '@docusaurus/types'
import type * as Preset from '@docusaurus/preset-classic'
const config: Config = {
title: 'Massarg',
tagline: 'Dinosaurs are cool',
favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'https://your-docusaurus-site.example.com',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/',
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: 'facebook', // Usually your GitHub org/user name.
projectName: 'docusaurus', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
// Even if you don't use internationalization, you can use this field to set
// useful metadata like html lang. For example, if your site is Chinese, you
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'en',
locales: ['en'],
},
plugins: [
[
'docusaurus-plugin-typedoc',
// Plugin / TypeDoc options
{
entryPoints: ['../src/*.ts'],
tsconfig: '../tsconfig.json',
// typedoc options
watch: process.env.NODE_ENV === 'development',
excludePrivate: true,
excludeProtected: true,
excludeInternal: true,
// includeVersion: true,
categorizeByGroup: false,
sort: ['visibility'],
categoryOrder: ['Main', '*'],
media: 'media',
entryPointStrategy: 'expand',
validation: {
invalidLink: true,
},
},
],
],
presets: [
[
'classic',
{
docs: {
sidebarPath: './sidebars.ts',
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
},
blog: {
showReadingTime: true,
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
},
theme: {
customCss: './src/css/custom.css',
},
} satisfies Preset.Options,
],
],
themeConfig: {
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg',
navbar: {
title: 'Massarg',
logo: {
alt: 'My Site Logo',
src: 'img/logo.svg',
},
items: [
{
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: 'Docs',
},
{
href: 'https://github.com/facebook/docusaurus',
label: 'GitHub',
position: 'right',
},
],
},
footer: {
style: 'dark',
links: [
{
title: 'Docs',
items: [
{
label: 'Tutorial',
to: '/docs/intro',
},
],
},
{
title: 'Community',
items: [
{
label: 'Stack Overflow',
href: 'https://stackoverflow.com/questions/tagged/docusaurus',
},
{
label: 'Discord',
href: 'https://discordapp.com/invite/docusaurus',
},
{
label: 'Twitter',
href: 'https://twitter.com/docusaurus',
},
],
},
{
title: 'More',
items: [
{
label: 'Blog',
to: '/blog',
},
{
label: 'GitHub',
href: 'https://github.com/facebook/docusaurus',
},
],
},
],
copyright: `Copyright © ${new Date().getFullYear()} My Project, Inc. Built with Docusaurus.`,
},
prism: {
theme: prismThemes.github,
darkTheme: prismThemes.dracula,
},
} satisfies Preset.ThemeConfig,
}
export default config

50
docs/package.json Normal file
View File

@@ -0,0 +1,50 @@
{
"name": "massarg-docs",
"version": "0.0.0",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"start": "docusaurus start --port 3001",
"build": "docusaurus build",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
"serve": "docusaurus serve",
"write-translations": "docusaurus write-translations",
"write-heading-ids": "docusaurus write-heading-ids",
"typecheck": "tsc"
},
"dependencies": {
"@docusaurus/core": "3.1.1",
"@docusaurus/preset-classic": "3.1.1",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.0.0",
"prism-react-renderer": "^2.3.0",
"react": "^18.0.0",
"react-dom": "^18.0.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.1.1",
"@docusaurus/tsconfig": "3.1.1",
"@docusaurus/types": "3.1.1",
"docusaurus-plugin-typedoc": "^0.22.0",
"typedoc": "^0.25.7",
"typedoc-plugin-markdown": "^3.17.1",
"typescript": "~5.2.2"
},
"browserslist": {
"production": [
">0.5%",
"not dead",
"not op_mini all"
],
"development": [
"last 3 chrome version",
"last 3 firefox version",
"last 5 safari version"
]
},
"engines": {
"node": ">=18.0"
}
}

9039
docs/pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load Diff

31
docs/sidebars.ts Normal file
View File

@@ -0,0 +1,31 @@
import type {SidebarsConfig} from '@docusaurus/plugin-content-docs';
/**
* Creating a sidebar enables you to:
- create an ordered group of docs
- render a sidebar for each doc of that group
- provide next/previous navigation
The sidebars can be generated from the filesystem, or explicitly defined here.
Create as many sidebars as you want.
*/
const sidebars: SidebarsConfig = {
// By default, Docusaurus generates a sidebar from the docs folder structure
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
// But you can create a sidebar manually
/*
tutorialSidebar: [
'intro',
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
*/
};
export default sidebars;

View File

@@ -0,0 +1,70 @@
import clsx from 'clsx';
import Heading from '@theme/Heading';
import styles from './styles.module.css';
type FeatureItem = {
title: string;
Svg: React.ComponentType<React.ComponentProps<'svg'>>;
description: JSX.Element;
};
const FeatureList: FeatureItem[] = [
{
title: 'Easy to Use',
Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
description: (
<>
Docusaurus was designed from the ground up to be easily installed and
used to get your website up and running quickly.
</>
),
},
{
title: 'Focus on What Matters',
Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
description: (
<>
Docusaurus lets you focus on your docs, and we&apos;ll do the chores. Go
ahead and move your docs into the <code>docs</code> directory.
</>
),
},
{
title: 'Powered by React',
Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
description: (
<>
Extend or customize your website layout by reusing React. Docusaurus can
be extended while reusing the same header and footer.
</>
),
},
];
function Feature({title, Svg, description}: FeatureItem) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<Heading as="h3">{title}</Heading>
<p>{description}</p>
</div>
</div>
);
}
export default function HomepageFeatures(): JSX.Element {
return (
<section className={styles.features}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (
<Feature key={idx} {...props} />
))}
</div>
</div>
</section>
);
}

View File

@@ -0,0 +1,11 @@
.features {
display: flex;
align-items: center;
padding: 2rem 0;
width: 100%;
}
.featureSvg {
height: 200px;
width: 200px;
}

30
docs/src/css/custom.css Normal file
View File

@@ -0,0 +1,30 @@
/**
* Any CSS included here will be global. The classic template
* bundles Infima by default. Infima is a CSS framework designed to
* work well for content-centric websites.
*/
/* You can override the default Infima variables here. */
:root {
--ifm-color-primary: #2e8555;
--ifm-color-primary-dark: #29784c;
--ifm-color-primary-darker: #277148;
--ifm-color-primary-darkest: #205d3b;
--ifm-color-primary-light: #33925d;
--ifm-color-primary-lighter: #359962;
--ifm-color-primary-lightest: #3cad6e;
--ifm-code-font-size: 95%;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1);
}
/* For readability concerns, you should choose a lighter palette in dark mode. */
[data-theme='dark'] {
--ifm-color-primary: #25c2a0;
--ifm-color-primary-dark: #21af90;
--ifm-color-primary-darker: #1fa588;
--ifm-color-primary-darkest: #1a8870;
--ifm-color-primary-light: #29d5b0;
--ifm-color-primary-lighter: #32d8b4;
--ifm-color-primary-lightest: #4fddbf;
--docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3);
}

View File

@@ -0,0 +1,23 @@
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
.heroBanner {
padding: 4rem 0;
text-align: center;
position: relative;
overflow: hidden;
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
}
}
.buttons {
display: flex;
align-items: center;
justify-content: center;
}

43
docs/src/pages/index.tsx Normal file
View File

@@ -0,0 +1,43 @@
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import HomepageFeatures from '@site/src/components/HomepageFeatures';
import Heading from '@theme/Heading';
import styles from './index.module.css';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<Heading as="h1" className="hero__title">
{siteConfig.title}
</Heading>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<Link
className="button button--secondary button--lg"
to="/docs/intro">
Docusaurus Tutorial - 5min
</Link>
</div>
</div>
</header>
);
}
export default function Home(): JSX.Element {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`Hello from ${siteConfig.title}`}
description="Description will go into a meta tag in <head />">
<HomepageHeader />
<main>
<HomepageFeatures />
</main>
</Layout>
);
}

View File

@@ -0,0 +1,7 @@
---
title: Markdown page example
---
# Markdown page example
You don't need React to write simple standalone pages.

0
docs/static/.nojekyll vendored Normal file
View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

BIN
docs/static/img/docusaurus.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

BIN
docs/static/img/favicon.ico vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

1
docs/static/img/logo.svg vendored Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.3 KiB

View File

@@ -0,0 +1,171 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1088" height="687.962" viewBox="0 0 1088 687.962">
<title>Easy to Use</title>
<g id="Group_12" data-name="Group 12" transform="translate(-57 -56)">
<g id="Group_11" data-name="Group 11" transform="translate(57 56)">
<path id="Path_83" data-name="Path 83" d="M1017.81,560.461c-5.27,45.15-16.22,81.4-31.25,110.31-20,38.52-54.21,54.04-84.77,70.28a193.275,193.275,0,0,1-27.46,11.94c-55.61,19.3-117.85,14.18-166.74,3.99a657.282,657.282,0,0,0-104.09-13.16q-14.97-.675-29.97-.67c-15.42.02-293.07,5.29-360.67-131.57-16.69-33.76-28.13-75-32.24-125.27-11.63-142.12,52.29-235.46,134.74-296.47,155.97-115.41,369.76-110.57,523.43,7.88C941.15,276.621,1036.99,396.031,1017.81,560.461Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_84" data-name="Path 84" d="M986.56,670.771c-20,38.52-47.21,64.04-77.77,80.28a193.272,193.272,0,0,1-27.46,11.94c-55.61,19.3-117.85,14.18-166.74,3.99a657.3,657.3,0,0,0-104.09-13.16q-14.97-.675-29.97-.67-23.13.03-46.25,1.72c-100.17,7.36-253.82-6.43-321.42-143.29L382,283.981,444.95,445.6l20.09,51.59,55.37-75.98L549,381.981l130.2,149.27,36.8-81.27L970.78,657.9l14.21,11.59Z" transform="translate(-56 -106.019)" fill="#f2f2f2"/>
<path id="Path_85" data-name="Path 85" d="M302,282.962l26-57,36,83-31-60Z" opacity="0.1"/>
<path id="Path_86" data-name="Path 86" d="M610.5,753.821q-14.97-.675-29.97-.67L465.04,497.191Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<path id="Path_87" data-name="Path 87" d="M464.411,315.191,493,292.962l130,150-132-128Z" opacity="0.1"/>
<path id="Path_88" data-name="Path 88" d="M908.79,751.051a193.265,193.265,0,0,1-27.46,11.94L679.2,531.251Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<circle id="Ellipse_11" data-name="Ellipse 11" cx="3" cy="3" r="3" transform="translate(479 98.962)" fill="#f2f2f2"/>
<circle id="Ellipse_12" data-name="Ellipse 12" cx="3" cy="3" r="3" transform="translate(396 201.962)" fill="#f2f2f2"/>
<circle id="Ellipse_13" data-name="Ellipse 13" cx="2" cy="2" r="2" transform="translate(600 220.962)" fill="#f2f2f2"/>
<circle id="Ellipse_14" data-name="Ellipse 14" cx="2" cy="2" r="2" transform="translate(180 265.962)" fill="#f2f2f2"/>
<circle id="Ellipse_15" data-name="Ellipse 15" cx="2" cy="2" r="2" transform="translate(612 96.962)" fill="#f2f2f2"/>
<circle id="Ellipse_16" data-name="Ellipse 16" cx="2" cy="2" r="2" transform="translate(736 192.962)" fill="#f2f2f2"/>
<circle id="Ellipse_17" data-name="Ellipse 17" cx="2" cy="2" r="2" transform="translate(858 344.962)" fill="#f2f2f2"/>
<path id="Path_89" data-name="Path 89" d="M306,121.222h-2.76v-2.76h-1.48v2.76H299V122.7h2.76v2.759h1.48V122.7H306Z" fill="#f2f2f2"/>
<path id="Path_90" data-name="Path 90" d="M848,424.222h-2.76v-2.76h-1.48v2.76H841V425.7h2.76v2.759h1.48V425.7H848Z" fill="#f2f2f2"/>
<path id="Path_91" data-name="Path 91" d="M1144,719.981c0,16.569-243.557,74-544,74s-544-57.431-544-74,243.557,14,544,14S1144,703.413,1144,719.981Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_92" data-name="Path 92" d="M1144,719.981c0,16.569-243.557,74-544,74s-544-57.431-544-74,243.557,14,544,14S1144,703.413,1144,719.981Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<ellipse id="Ellipse_18" data-name="Ellipse 18" cx="544" cy="30" rx="544" ry="30" transform="translate(0 583.962)" fill="#3f3d56"/>
<path id="Path_93" data-name="Path 93" d="M624,677.981c0,33.137-14.775,24-33,24s-33,9.137-33-24,33-96,33-96S624,644.844,624,677.981Z" transform="translate(-56 -106.019)" fill="#ff6584"/>
<path id="Path_94" data-name="Path 94" d="M606,690.66c0,15.062-6.716,10.909-15,10.909s-15,4.153-15-10.909,15-43.636,15-43.636S606,675.6,606,690.66Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<rect id="Rectangle_97" data-name="Rectangle 97" width="92" height="18" rx="9" transform="translate(489 604.962)" fill="#2f2e41"/>
<rect id="Rectangle_98" data-name="Rectangle 98" width="92" height="18" rx="9" transform="translate(489 586.962)" fill="#2f2e41"/>
<path id="Path_95" data-name="Path 95" d="M193,596.547c0,55.343,34.719,100.126,77.626,100.126" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_96" data-name="Path 96" d="M270.626,696.673c0-55.965,38.745-101.251,86.626-101.251" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_97" data-name="Path 97" d="M221.125,601.564c0,52.57,22.14,95.109,49.5,95.109" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_98" data-name="Path 98" d="M270.626,696.673c0-71.511,44.783-129.377,100.126-129.377" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_99" data-name="Path 99" d="M254.3,697.379s11.009-.339,14.326-2.7,16.934-5.183,17.757-1.395,16.544,18.844,4.115,18.945-28.879-1.936-32.19-3.953S254.3,697.379,254.3,697.379Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_100" data-name="Path 100" d="M290.716,710.909c-12.429.1-28.879-1.936-32.19-3.953-2.522-1.536-3.527-7.048-3.863-9.591l-.368.014s.7,8.879,4.009,10.9,19.761,4.053,32.19,3.953c3.588-.029,4.827-1.305,4.759-3.2C294.755,710.174,293.386,710.887,290.716,710.909Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_101" data-name="Path 101" d="M777.429,633.081c0,38.029,23.857,68.8,53.341,68.8" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_102" data-name="Path 102" d="M830.769,701.882c0-38.456,26.623-69.575,59.525-69.575" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_103" data-name="Path 103" d="M796.755,636.528c0,36.124,15.213,65.354,34.014,65.354" transform="translate(-56 -106.019)" fill="#6c63ff"/>
<path id="Path_104" data-name="Path 104" d="M830.769,701.882c0-49.139,30.773-88.9,68.8-88.9" transform="translate(-56 -106.019)" fill="#3f3d56"/>
<path id="Path_105" data-name="Path 105" d="M819.548,702.367s7.565-.233,9.844-1.856,11.636-3.562,12.2-.958,11.368,12.949,2.828,13.018-19.844-1.33-22.119-2.716S819.548,702.367,819.548,702.367Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_106" data-name="Path 106" d="M844.574,711.664c-8.54.069-19.844-1.33-22.119-2.716-1.733-1.056-2.423-4.843-2.654-6.59l-.253.01s.479,6.1,2.755,7.487,13.579,2.785,22.119,2.716c2.465-.02,3.317-.9,3.27-2.2C847.349,711.159,846.409,711.649,844.574,711.664Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_107" data-name="Path 107" d="M949.813,724.718s11.36-1.729,14.5-4.591,16.89-7.488,18.217-3.667,19.494,17.447,6.633,19.107-30.153,1.609-33.835-.065S949.813,724.718,949.813,724.718Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_108" data-name="Path 108" d="M989.228,734.173c-12.86,1.659-30.153,1.609-33.835-.065-2.8-1.275-4.535-6.858-5.2-9.45l-.379.061s1.833,9.109,5.516,10.783,20.975,1.725,33.835.065c3.712-.479,4.836-1.956,4.529-3.906C993.319,732.907,991.991,733.817,989.228,734.173Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_109" data-name="Path 109" d="M670.26,723.9s9.587-1.459,12.237-3.875,14.255-6.32,15.374-3.095,16.452,14.725,5.6,16.125-25.448,1.358-28.555-.055S670.26,723.9,670.26,723.9Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_110" data-name="Path 110" d="M703.524,731.875c-10.853,1.4-25.448,1.358-28.555-.055-2.367-1.076-3.827-5.788-4.39-7.976l-.32.051s1.547,7.687,4.655,9.1,17.7,1.456,28.555.055c3.133-.4,4.081-1.651,3.822-3.3C706.977,730.807,705.856,731.575,703.524,731.875Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_111" data-name="Path 111" d="M178.389,719.109s7.463-1.136,9.527-3.016,11.1-4.92,11.969-2.409,12.808,11.463,4.358,12.553-19.811,1.057-22.23-.043S178.389,719.109,178.389,719.109Z" transform="translate(-56 -106.019)" fill="#a8a8a8"/>
<path id="Path_112" data-name="Path 112" d="M204.285,725.321c-8.449,1.09-19.811,1.057-22.23-.043-1.842-.838-2.979-4.506-3.417-6.209l-.249.04s1.2,5.984,3.624,7.085,13.781,1.133,22.23.043c2.439-.315,3.177-1.285,2.976-2.566C206.973,724.489,206.1,725.087,204.285,725.321Z" transform="translate(-56 -106.019)" opacity="0.2"/>
<path id="Path_113" data-name="Path 113" d="M439.7,707.337c0,30.22-42.124,20.873-93.7,20.873s-93.074,9.347-93.074-20.873,42.118-36.793,93.694-36.793S439.7,677.117,439.7,707.337Z" transform="translate(-56 -106.019)" opacity="0.1"/>
<path id="Path_114" data-name="Path 114" d="M439.7,699.9c0,30.22-42.124,20.873-93.7,20.873s-93.074,9.347-93.074-20.873S295.04,663.1,346.616,663.1,439.7,669.676,439.7,699.9Z" transform="translate(-56 -106.019)" fill="#3f3d56"/>
</g>
<g id="docusaurus_keytar" transform="translate(312.271 493.733)">
<path id="Path_40" data-name="Path 40" d="M99,52h91.791V89.153H99Z" transform="translate(5.904 -14.001)" fill="#fff" fill-rule="evenodd"/>
<path id="Path_41" data-name="Path 41" d="M24.855,163.927A21.828,21.828,0,0,1,5.947,153a21.829,21.829,0,0,0,18.908,32.782H46.71V163.927Z" transform="translate(-3 -4.634)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_42" data-name="Path 42" d="M121.861,61.1l76.514-4.782V45.39A21.854,21.854,0,0,0,176.52,23.535H78.173L75.441,18.8a3.154,3.154,0,0,0-5.464,0l-2.732,4.732L64.513,18.8a3.154,3.154,0,0,0-5.464,0l-2.732,4.732L53.586,18.8a3.154,3.154,0,0,0-5.464,0L45.39,23.535c-.024,0-.046,0-.071,0l-4.526-4.525a3.153,3.153,0,0,0-5.276,1.414l-1.5,5.577-5.674-1.521a3.154,3.154,0,0,0-3.863,3.864L26,34.023l-5.575,1.494a3.155,3.155,0,0,0-1.416,5.278l4.526,4.526c0,.023,0,.046,0,.07L18.8,48.122a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,59.05a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,69.977a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,80.9a3.154,3.154,0,0,0,0,5.464L23.535,89.1,18.8,91.832a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,102.76a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,113.687a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,124.615a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,135.542a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,146.469a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,157.4a3.154,3.154,0,0,0,0,5.464l4.732,2.732L18.8,168.324a3.154,3.154,0,0,0,0,5.464l4.732,2.732A21.854,21.854,0,0,0,45.39,198.375H176.52a21.854,21.854,0,0,0,21.855-21.855V89.1l-76.514-4.782a11.632,11.632,0,0,1,0-23.219" transform="translate(-1.681 -17.226)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_43" data-name="Path 43" d="M143,186.71h32.782V143H143Z" transform="translate(9.984 -5.561)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_44" data-name="Path 44" d="M196.71,159.855a5.438,5.438,0,0,0-.7.07c-.042-.164-.081-.329-.127-.493a5.457,5.457,0,1,0-5.4-9.372q-.181-.185-.366-.367a5.454,5.454,0,1,0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467,5.467,0,1,0-10.788,0c-.162.042-.325.08-.486.126a5.457,5.457,0,1,0-9.384,5.4,21.843,21.843,0,1,0,36.421,21.02,5.452,5.452,0,1,0,.7-10.858" transform="translate(10.912 -6.025)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_45" data-name="Path 45" d="M153,124.855h32.782V103H153Z" transform="translate(10.912 -9.271)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_46" data-name="Path 46" d="M194.855,116.765a2.732,2.732,0,1,0,0-5.464,2.811,2.811,0,0,0-.349.035c-.022-.082-.04-.164-.063-.246a2.733,2.733,0,0,0-1.052-5.253,2.7,2.7,0,0,0-1.648.566q-.09-.093-.184-.184a2.7,2.7,0,0,0,.553-1.633,2.732,2.732,0,0,0-5.245-1.07,10.928,10.928,0,1,0,0,21.031,2.732,2.732,0,0,0,5.245-1.07,2.7,2.7,0,0,0-.553-1.633q.093-.09.184-.184a2.7,2.7,0,0,0,1.648.566,2.732,2.732,0,0,0,1.052-5.253c.023-.081.042-.164.063-.246a2.814,2.814,0,0,0,.349.035" transform="translate(12.767 -9.377)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_47" data-name="Path 47" d="M65.087,56.891a2.732,2.732,0,0,1-2.732-2.732,8.2,8.2,0,0,0-16.391,0,2.732,2.732,0,0,1-5.464,0,13.659,13.659,0,0,1,27.319,0,2.732,2.732,0,0,1-2.732,2.732" transform="translate(0.478 -15.068)" fill-rule="evenodd"/>
<path id="Path_48" data-name="Path 48" d="M103,191.347h65.565a21.854,21.854,0,0,0,21.855-21.855V93H124.855A21.854,21.854,0,0,0,103,114.855Z" transform="translate(6.275 -10.199)" fill="#ffff50" fill-rule="evenodd"/>
<path id="Path_49" data-name="Path 49" d="M173.216,129.787H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0,21.855H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186m0,21.855H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0-54.434H118.535a1.093,1.093,0,1,1,0-2.185h54.681a1.093,1.093,0,0,1,0,2.185m0,21.652H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186m0,21.855H118.535a1.093,1.093,0,1,1,0-2.186h54.681a1.093,1.093,0,0,1,0,2.186M189.585,61.611c-.013,0-.024-.007-.037-.005-3.377.115-4.974,3.492-6.384,6.472-1.471,3.114-2.608,5.139-4.473,5.078-2.064-.074-3.244-2.406-4.494-4.874-1.436-2.835-3.075-6.049-6.516-5.929-3.329.114-4.932,3.053-6.346,5.646-1.5,2.762-2.529,4.442-4.5,4.364-2.106-.076-3.225-1.972-4.52-4.167-1.444-2.443-3.112-5.191-6.487-5.1-3.272.113-4.879,2.606-6.3,4.808-1.5,2.328-2.552,3.746-4.551,3.662-2.156-.076-3.27-1.65-4.558-3.472-1.447-2.047-3.077-4.363-6.442-4.251-3.2.109-4.807,2.153-6.224,3.954-1.346,1.709-2.4,3.062-4.621,2.977a1.093,1.093,0,0,0-.079,2.186c3.3.11,4.967-1.967,6.417-3.81,1.286-1.635,2.4-3.045,4.582-3.12,2.1-.09,3.091,1.218,4.584,3.327,1.417,2,3.026,4.277,6.263,4.394,3.391.114,5.022-2.42,6.467-4.663,1.292-2,2.406-3.734,4.535-3.807,1.959-.073,3.026,1.475,4.529,4.022,1.417,2.4,3.023,5.121,6.324,5.241,3.415.118,5.064-2.863,6.5-5.5,1.245-2.282,2.419-4.437,4.5-4.509,1.959-.046,2.981,1.743,4.492,4.732,1.412,2.79,3.013,5.95,6.365,6.071l.185,0c3.348,0,4.937-3.36,6.343-6.331,1.245-2.634,2.423-5.114,4.444-5.216Z" transform="translate(7.109 -13.11)" fill-rule="evenodd"/>
<path id="Path_50" data-name="Path 50" d="M83,186.71h43.71V143H83Z" transform="translate(4.42 -5.561)" fill="#3ecc5f" fill-rule="evenodd"/>
<g id="Group_8" data-name="Group 8" transform="matrix(0.966, -0.259, 0.259, 0.966, 109.327, 91.085)">
<rect id="Rectangle_3" data-name="Rectangle 3" width="92.361" height="36.462" rx="2" transform="translate(0 0)" fill="#d8d8d8"/>
<g id="Group_2" data-name="Group 2" transform="translate(1.531 23.03)">
<rect id="Rectangle_4" data-name="Rectangle 4" width="5.336" height="5.336" rx="1" transform="translate(16.797 0)" fill="#4a4a4a"/>
<rect id="Rectangle_5" data-name="Rectangle 5" width="5.336" height="5.336" rx="1" transform="translate(23.12 0)" fill="#4a4a4a"/>
<rect id="Rectangle_6" data-name="Rectangle 6" width="5.336" height="5.336" rx="1" transform="translate(29.444 0)" fill="#4a4a4a"/>
<rect id="Rectangle_7" data-name="Rectangle 7" width="5.336" height="5.336" rx="1" transform="translate(35.768 0)" fill="#4a4a4a"/>
<rect id="Rectangle_8" data-name="Rectangle 8" width="5.336" height="5.336" rx="1" transform="translate(42.091 0)" fill="#4a4a4a"/>
<rect id="Rectangle_9" data-name="Rectangle 9" width="5.336" height="5.336" rx="1" transform="translate(48.415 0)" fill="#4a4a4a"/>
<rect id="Rectangle_10" data-name="Rectangle 10" width="5.336" height="5.336" rx="1" transform="translate(54.739 0)" fill="#4a4a4a"/>
<rect id="Rectangle_11" data-name="Rectangle 11" width="5.336" height="5.336" rx="1" transform="translate(61.063 0)" fill="#4a4a4a"/>
<rect id="Rectangle_12" data-name="Rectangle 12" width="5.336" height="5.336" rx="1" transform="translate(67.386 0)" fill="#4a4a4a"/>
<path id="Path_51" data-name="Path 51" d="M1.093,0H14.518a1.093,1.093,0,0,1,1.093,1.093V4.243a1.093,1.093,0,0,1-1.093,1.093H1.093A1.093,1.093,0,0,1,0,4.243V1.093A1.093,1.093,0,0,1,1.093,0ZM75,0H88.426a1.093,1.093,0,0,1,1.093,1.093V4.243a1.093,1.093,0,0,1-1.093,1.093H75a1.093,1.093,0,0,1-1.093-1.093V1.093A1.093,1.093,0,0,1,75,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_3" data-name="Group 3" transform="translate(1.531 10.261)">
<path id="Path_52" data-name="Path 52" d="M1.093,0H6.218A1.093,1.093,0,0,1,7.31,1.093V4.242A1.093,1.093,0,0,1,6.218,5.335H1.093A1.093,1.093,0,0,1,0,4.242V1.093A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_13" data-name="Rectangle 13" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_14" data-name="Rectangle 14" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_15" data-name="Rectangle 15" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_16" data-name="Rectangle 16" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_17" data-name="Rectangle 17" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_18" data-name="Rectangle 18" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_19" data-name="Rectangle 19" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_20" data-name="Rectangle 20" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_21" data-name="Rectangle 21" width="5.336" height="5.336" rx="1" transform="translate(58.888 0)" fill="#4a4a4a"/>
<rect id="Rectangle_22" data-name="Rectangle 22" width="5.336" height="5.336" rx="1" transform="translate(65.212 0)" fill="#4a4a4a"/>
<rect id="Rectangle_23" data-name="Rectangle 23" width="5.336" height="5.336" rx="1" transform="translate(71.536 0)" fill="#4a4a4a"/>
<rect id="Rectangle_24" data-name="Rectangle 24" width="5.336" height="5.336" rx="1" transform="translate(77.859 0)" fill="#4a4a4a"/>
<rect id="Rectangle_25" data-name="Rectangle 25" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
</g>
<g id="Group_4" data-name="Group 4" transform="translate(91.05 9.546) rotate(180)">
<path id="Path_53" data-name="Path 53" d="M1.093,0H6.219A1.093,1.093,0,0,1,7.312,1.093v3.15A1.093,1.093,0,0,1,6.219,5.336H1.093A1.093,1.093,0,0,1,0,4.243V1.093A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_26" data-name="Rectangle 26" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_27" data-name="Rectangle 27" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_28" data-name="Rectangle 28" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_29" data-name="Rectangle 29" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_30" data-name="Rectangle 30" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_31" data-name="Rectangle 31" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_32" data-name="Rectangle 32" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_33" data-name="Rectangle 33" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_34" data-name="Rectangle 34" width="5.336" height="5.336" rx="1" transform="translate(58.889 0)" fill="#4a4a4a"/>
<rect id="Rectangle_35" data-name="Rectangle 35" width="5.336" height="5.336" rx="1" transform="translate(65.213 0)" fill="#4a4a4a"/>
<rect id="Rectangle_36" data-name="Rectangle 36" width="5.336" height="5.336" rx="1" transform="translate(71.537 0)" fill="#4a4a4a"/>
<rect id="Rectangle_37" data-name="Rectangle 37" width="5.336" height="5.336" rx="1" transform="translate(77.86 0)" fill="#4a4a4a"/>
<rect id="Rectangle_38" data-name="Rectangle 38" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
<rect id="Rectangle_39" data-name="Rectangle 39" width="5.336" height="5.336" rx="1" transform="translate(8.299 0)" fill="#4a4a4a"/>
<rect id="Rectangle_40" data-name="Rectangle 40" width="5.336" height="5.336" rx="1" transform="translate(14.623 0)" fill="#4a4a4a"/>
<rect id="Rectangle_41" data-name="Rectangle 41" width="5.336" height="5.336" rx="1" transform="translate(20.947 0)" fill="#4a4a4a"/>
<rect id="Rectangle_42" data-name="Rectangle 42" width="5.336" height="5.336" rx="1" transform="translate(27.271 0)" fill="#4a4a4a"/>
<rect id="Rectangle_43" data-name="Rectangle 43" width="5.336" height="5.336" rx="1" transform="translate(33.594 0)" fill="#4a4a4a"/>
<rect id="Rectangle_44" data-name="Rectangle 44" width="5.336" height="5.336" rx="1" transform="translate(39.918 0)" fill="#4a4a4a"/>
<rect id="Rectangle_45" data-name="Rectangle 45" width="5.336" height="5.336" rx="1" transform="translate(46.242 0)" fill="#4a4a4a"/>
<rect id="Rectangle_46" data-name="Rectangle 46" width="5.336" height="5.336" rx="1" transform="translate(52.565 0)" fill="#4a4a4a"/>
<rect id="Rectangle_47" data-name="Rectangle 47" width="5.336" height="5.336" rx="1" transform="translate(58.889 0)" fill="#4a4a4a"/>
<rect id="Rectangle_48" data-name="Rectangle 48" width="5.336" height="5.336" rx="1" transform="translate(65.213 0)" fill="#4a4a4a"/>
<rect id="Rectangle_49" data-name="Rectangle 49" width="5.336" height="5.336" rx="1" transform="translate(71.537 0)" fill="#4a4a4a"/>
<rect id="Rectangle_50" data-name="Rectangle 50" width="5.336" height="5.336" rx="1" transform="translate(77.86 0)" fill="#4a4a4a"/>
<rect id="Rectangle_51" data-name="Rectangle 51" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
</g>
<g id="Group_6" data-name="Group 6" transform="translate(1.531 16.584)">
<path id="Path_54" data-name="Path 54" d="M1.093,0h7.3A1.093,1.093,0,0,1,9.485,1.093v3.15A1.093,1.093,0,0,1,8.392,5.336h-7.3A1.093,1.093,0,0,1,0,4.243V1.094A1.093,1.093,0,0,1,1.093,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<g id="Group_5" data-name="Group 5" transform="translate(10.671 0)">
<rect id="Rectangle_52" data-name="Rectangle 52" width="5.336" height="5.336" rx="1" fill="#4a4a4a"/>
<rect id="Rectangle_53" data-name="Rectangle 53" width="5.336" height="5.336" rx="1" transform="translate(6.324 0)" fill="#4a4a4a"/>
<rect id="Rectangle_54" data-name="Rectangle 54" width="5.336" height="5.336" rx="1" transform="translate(12.647 0)" fill="#4a4a4a"/>
<rect id="Rectangle_55" data-name="Rectangle 55" width="5.336" height="5.336" rx="1" transform="translate(18.971 0)" fill="#4a4a4a"/>
<rect id="Rectangle_56" data-name="Rectangle 56" width="5.336" height="5.336" rx="1" transform="translate(25.295 0)" fill="#4a4a4a"/>
<rect id="Rectangle_57" data-name="Rectangle 57" width="5.336" height="5.336" rx="1" transform="translate(31.619 0)" fill="#4a4a4a"/>
<rect id="Rectangle_58" data-name="Rectangle 58" width="5.336" height="5.336" rx="1" transform="translate(37.942 0)" fill="#4a4a4a"/>
<rect id="Rectangle_59" data-name="Rectangle 59" width="5.336" height="5.336" rx="1" transform="translate(44.265 0)" fill="#4a4a4a"/>
<rect id="Rectangle_60" data-name="Rectangle 60" width="5.336" height="5.336" rx="1" transform="translate(50.589 0)" fill="#4a4a4a"/>
<rect id="Rectangle_61" data-name="Rectangle 61" width="5.336" height="5.336" rx="1" transform="translate(56.912 0)" fill="#4a4a4a"/>
<rect id="Rectangle_62" data-name="Rectangle 62" width="5.336" height="5.336" rx="1" transform="translate(63.236 0)" fill="#4a4a4a"/>
</g>
<path id="Path_55" data-name="Path 55" d="M1.094,0H8A1.093,1.093,0,0,1,9.091,1.093v3.15A1.093,1.093,0,0,1,8,5.336H1.093A1.093,1.093,0,0,1,0,4.243V1.094A1.093,1.093,0,0,1,1.093,0Z" transform="translate(80.428 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_7" data-name="Group 7" transform="translate(1.531 29.627)">
<rect id="Rectangle_63" data-name="Rectangle 63" width="5.336" height="5.336" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_64" data-name="Rectangle 64" width="5.336" height="5.336" rx="1" transform="translate(6.324 0)" fill="#4a4a4a"/>
<rect id="Rectangle_65" data-name="Rectangle 65" width="5.336" height="5.336" rx="1" transform="translate(12.647 0)" fill="#4a4a4a"/>
<rect id="Rectangle_66" data-name="Rectangle 66" width="5.336" height="5.336" rx="1" transform="translate(18.971 0)" fill="#4a4a4a"/>
<path id="Path_56" data-name="Path 56" d="M1.093,0H31.515a1.093,1.093,0,0,1,1.093,1.093V4.244a1.093,1.093,0,0,1-1.093,1.093H1.093A1.093,1.093,0,0,1,0,4.244V1.093A1.093,1.093,0,0,1,1.093,0ZM34.687,0h3.942a1.093,1.093,0,0,1,1.093,1.093V4.244a1.093,1.093,0,0,1-1.093,1.093H34.687a1.093,1.093,0,0,1-1.093-1.093V1.093A1.093,1.093,0,0,1,34.687,0Z" transform="translate(25.294 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_67" data-name="Rectangle 67" width="5.336" height="5.336" rx="1" transform="translate(66.003 0)" fill="#4a4a4a"/>
<rect id="Rectangle_68" data-name="Rectangle 68" width="5.336" height="5.336" rx="1" transform="translate(72.327 0)" fill="#4a4a4a"/>
<rect id="Rectangle_69" data-name="Rectangle 69" width="5.336" height="5.336" rx="1" transform="translate(84.183 0)" fill="#4a4a4a"/>
<path id="Path_57" data-name="Path 57" d="M5.336,0V1.18A1.093,1.093,0,0,1,4.243,2.273H1.093A1.093,1.093,0,0,1,0,1.18V0Z" transform="translate(83.59 2.273) rotate(180)" fill="#4a4a4a"/>
<path id="Path_58" data-name="Path 58" d="M5.336,0V1.18A1.093,1.093,0,0,1,4.243,2.273H1.093A1.093,1.093,0,0,1,0,1.18V0Z" transform="translate(78.255 3.063)" fill="#4a4a4a"/>
</g>
<rect id="Rectangle_70" data-name="Rectangle 70" width="88.927" height="2.371" rx="1.085" transform="translate(1.925 1.17)" fill="#4a4a4a"/>
<rect id="Rectangle_71" data-name="Rectangle 71" width="4.986" height="1.581" rx="0.723" transform="translate(4.1 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_72" data-name="Rectangle 72" width="4.986" height="1.581" rx="0.723" transform="translate(10.923 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_73" data-name="Rectangle 73" width="4.986" height="1.581" rx="0.723" transform="translate(16.173 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_74" data-name="Rectangle 74" width="4.986" height="1.581" rx="0.723" transform="translate(21.421 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_75" data-name="Rectangle 75" width="4.986" height="1.581" rx="0.723" transform="translate(26.671 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_76" data-name="Rectangle 76" width="4.986" height="1.581" rx="0.723" transform="translate(33.232 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_77" data-name="Rectangle 77" width="4.986" height="1.581" rx="0.723" transform="translate(38.48 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_78" data-name="Rectangle 78" width="4.986" height="1.581" rx="0.723" transform="translate(43.73 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_79" data-name="Rectangle 79" width="4.986" height="1.581" rx="0.723" transform="translate(48.978 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_80" data-name="Rectangle 80" width="4.986" height="1.581" rx="0.723" transform="translate(55.54 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_81" data-name="Rectangle 81" width="4.986" height="1.581" rx="0.723" transform="translate(60.788 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_82" data-name="Rectangle 82" width="4.986" height="1.581" rx="0.723" transform="translate(66.038 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_83" data-name="Rectangle 83" width="4.986" height="1.581" rx="0.723" transform="translate(72.599 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_84" data-name="Rectangle 84" width="4.986" height="1.581" rx="0.723" transform="translate(77.847 1.566)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_85" data-name="Rectangle 85" width="4.986" height="1.581" rx="0.723" transform="translate(83.097 1.566)" fill="#d8d8d8" opacity="0.136"/>
</g>
<path id="Path_59" data-name="Path 59" d="M146.71,159.855a5.439,5.439,0,0,0-.7.07c-.042-.164-.081-.329-.127-.493a5.457,5.457,0,1,0-5.4-9.372q-.181-.185-.366-.367a5.454,5.454,0,1,0-9.384-5.4c-.162-.046-.325-.084-.486-.126a5.467,5.467,0,1,0-10.788,0c-.162.042-.325.08-.486.126a5.457,5.457,0,1,0-9.384,5.4,21.843,21.843,0,1,0,36.421,21.02,5.452,5.452,0,1,0,.7-10.858" transform="translate(6.275 -6.025)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_60" data-name="Path 60" d="M83,124.855h43.71V103H83Z" transform="translate(4.42 -9.271)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_61" data-name="Path 61" d="M134.855,116.765a2.732,2.732,0,1,0,0-5.464,2.811,2.811,0,0,0-.349.035c-.022-.082-.04-.164-.063-.246a2.733,2.733,0,0,0-1.052-5.253,2.7,2.7,0,0,0-1.648.566q-.09-.093-.184-.184a2.7,2.7,0,0,0,.553-1.633,2.732,2.732,0,0,0-5.245-1.07,10.928,10.928,0,1,0,0,21.031,2.732,2.732,0,0,0,5.245-1.07,2.7,2.7,0,0,0-.553-1.633q.093-.09.184-.184a2.7,2.7,0,0,0,1.648.566,2.732,2.732,0,0,0,1.052-5.253c.023-.081.042-.164.063-.246a2.811,2.811,0,0,0,.349.035" transform="translate(7.202 -9.377)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_62" data-name="Path 62" d="M143.232,42.33a2.967,2.967,0,0,1-.535-.055,2.754,2.754,0,0,1-.514-.153,2.838,2.838,0,0,1-.471-.251,4.139,4.139,0,0,1-.415-.339,3.2,3.2,0,0,1-.338-.415A2.7,2.7,0,0,1,140.5,39.6a2.968,2.968,0,0,1,.055-.535,3.152,3.152,0,0,1,.152-.514,2.874,2.874,0,0,1,.252-.47,2.633,2.633,0,0,1,.753-.754,2.837,2.837,0,0,1,.471-.251,2.753,2.753,0,0,1,.514-.153,2.527,2.527,0,0,1,1.071,0,2.654,2.654,0,0,1,.983.4,4.139,4.139,0,0,1,.415.339,4.019,4.019,0,0,1,.339.415,2.786,2.786,0,0,1,.251.47,2.864,2.864,0,0,1,.208,1.049,2.77,2.77,0,0,1-.8,1.934,4.139,4.139,0,0,1-.415.339,2.722,2.722,0,0,1-1.519.459m21.855-1.366a2.789,2.789,0,0,1-1.935-.8,4.162,4.162,0,0,1-.338-.415,2.7,2.7,0,0,1-.459-1.519,2.789,2.789,0,0,1,.8-1.934,4.139,4.139,0,0,1,.415-.339,2.838,2.838,0,0,1,.471-.251,2.752,2.752,0,0,1,.514-.153,2.527,2.527,0,0,1,1.071,0,2.654,2.654,0,0,1,.983.4,4.139,4.139,0,0,1,.415.339,2.79,2.79,0,0,1,.8,1.934,3.069,3.069,0,0,1-.055.535,2.779,2.779,0,0,1-.153.514,3.885,3.885,0,0,1-.251.47,4.02,4.02,0,0,1-.339.415,4.138,4.138,0,0,1-.415.339,2.722,2.722,0,0,1-1.519.459" transform="translate(9.753 -15.532)" fill-rule="evenodd"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 31 KiB

View File

@@ -0,0 +1,170 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1041.277" height="554.141" viewBox="0 0 1041.277 554.141">
<title>Powered by React</title>
<g id="Group_24" data-name="Group 24" transform="translate(-440 -263)">
<g id="Group_23" data-name="Group 23" transform="translate(439.989 262.965)">
<path id="Path_299" data-name="Path 299" d="M1040.82,611.12q-1.74,3.75-3.47,7.4-2.7,5.67-5.33,11.12c-.78,1.61-1.56,3.19-2.32,4.77-8.6,17.57-16.63,33.11-23.45,45.89A73.21,73.21,0,0,1,942.44,719l-151.65,1.65h-1.6l-13,.14-11.12.12-34.1.37h-1.38l-17.36.19h-.53l-107,1.16-95.51,1-11.11.12-69,.75H429l-44.75.48h-.48l-141.5,1.53-42.33.46a87.991,87.991,0,0,1-10.79-.54h0c-1.22-.14-2.44-.3-3.65-.49a87.38,87.38,0,0,1-51.29-27.54C116,678.37,102.75,655,93.85,629.64q-1.93-5.49-3.6-11.12C59.44,514.37,97,380,164.6,290.08q4.25-5.64,8.64-11l.07-.08c20.79-25.52,44.1-46.84,68.93-62,44-26.91,92.75-34.49,140.7-11.9,40.57,19.12,78.45,28.11,115.17,30.55,3.71.24,7.42.42,11.11.53,84.23,2.65,163.17-27.7,255.87-47.29,3.69-.78,7.39-1.55,11.12-2.28,66.13-13.16,139.49-20.1,226.73-5.51a189.089,189.089,0,0,1,26.76,6.4q5.77,1.86,11.12,4c41.64,16.94,64.35,48.24,74,87.46q1.37,5.46,2.37,11.11C1134.3,384.41,1084.19,518.23,1040.82,611.12Z" transform="translate(-79.34 -172.91)" fill="#f2f2f2"/>
<path id="Path_300" data-name="Path 300" d="M576.36,618.52a95.21,95.21,0,0,1-1.87,11.12h93.7V618.52Zm-78.25,62.81,11.11-.09V653.77c-3.81-.17-7.52-.34-11.11-.52ZM265.19,618.52v11.12h198.5V618.52ZM1114.87,279h-74V191.51q-5.35-2.17-11.12-4V279H776.21V186.58c-3.73.73-7.43,1.5-11.12,2.28V279H509.22V236.15c-3.69-.11-7.4-.29-11.11-.53V279H242.24V217c-24.83,15.16-48.14,36.48-68.93,62h-.07v.08q-4.4,5.4-8.64,11h8.64V618.52h-83q1.66,5.63,3.6,11.12h79.39v93.62a87,87,0,0,0,12.2,2.79c1.21.19,2.43.35,3.65.49h0a87.991,87.991,0,0,0,10.79.54l42.33-.46v-97H498.11v94.21l11.11-.12V629.64H765.09V721l11.12-.12V629.64H1029.7v4.77c.76-1.58,1.54-3.16,2.32-4.77q2.63-5.45,5.33-11.12,1.73-3.64,3.47-7.4v-321h76.42Q1116.23,284.43,1114.87,279ZM242.24,618.52V290.08H498.11V618.52Zm267,0V290.08H765.09V618.52Zm520.48,0H776.21V290.08H1029.7Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_301" data-name="Path 301" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l46.65-28,93.6-.78,2-.01.66-.01,2-.03,44.94-.37,2.01-.01.64-.01,2-.01L315,509.3l.38-.01,35.55-.3h.29l277.4-2.34,6.79-.05h.68l5.18-.05,37.65-.31,2-.03,1.85-.02h.96l11.71-.09,2.32-.03,3.11-.02,9.75-.09,15.47-.13,2-.02,3.48-.02h.65l74.71-.64Z" fill="#65617d"/>
<path id="Path_302" data-name="Path 302" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l46.65-28,93.6-.78,2-.01.66-.01,2-.03,44.94-.37,2.01-.01.64-.01,2-.01L315,509.3l.38-.01,35.55-.3h.29l277.4-2.34,6.79-.05h.68l5.18-.05,37.65-.31,2-.03,1.85-.02h.96l11.71-.09,2.32-.03,3.11-.02,9.75-.09,15.47-.13,2-.02,3.48-.02h.65l74.71-.64Z" opacity="0.2"/>
<path id="Path_303" data-name="Path 303" d="M375.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<path id="Path_304" data-name="Path 304" d="M375.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_305" data-name="Path 305" d="M377.44,656.57v24.49a6.13,6.13,0,0,1-3.5,5.54,6,6,0,0,1-2.5.6l-34.9.74a6,6,0,0,1-2.7-.57,6.12,6.12,0,0,1-3.57-5.57V656.57Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<rect id="Rectangle_137" data-name="Rectangle 137" width="47.17" height="31.5" transform="translate(680.92 483.65)" fill="#3f3d56"/>
<rect id="Rectangle_138" data-name="Rectangle 138" width="47.17" height="31.5" transform="translate(680.92 483.65)" opacity="0.1"/>
<rect id="Rectangle_139" data-name="Rectangle 139" width="47.17" height="31.5" transform="translate(678.92 483.65)" fill="#3f3d56"/>
<path id="Path_306" data-name="Path 306" d="M298.09,483.65v4.97l-47.17,1.26v-6.23Z" opacity="0.1"/>
<path id="Path_307" data-name="Path 307" d="M460.69,485.27v168.2a4,4,0,0,1-3.85,3.95l-191.65,5.1h-.05a4,4,0,0,1-3.95-3.95V485.27a4,4,0,0,1,3.95-3.95h191.6a4,4,0,0,1,3.95,3.95Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_308" data-name="Path 308" d="M265.19,481.32v181.2h-.05a4,4,0,0,1-3.95-3.95V485.27a4,4,0,0,1,3.95-3.95Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_309" data-name="Path 309" d="M194.59,319.15h177.5V467.4l-177.5,4Z" fill="#39374d"/>
<path id="Path_310" data-name="Path 310" d="M726.09,483.65v6.41l-47.17-1.26v-5.15Z" opacity="0.1"/>
<path id="Path_311" data-name="Path 311" d="M867.69,485.27v173.3a4,4,0,0,1-4,3.95h0L672,657.42a4,4,0,0,1-3.85-3.95V485.27a4,4,0,0,1,3.95-3.95H863.7a4,4,0,0,1,3.99,3.95Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_312" data-name="Path 312" d="M867.69,485.27v173.3a4,4,0,0,1-4,3.95h0V481.32h0a4,4,0,0,1,4,3.95Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_313" data-name="Path 313" d="M775.59,319.15H598.09V467.4l177.5,4Z" fill="#39374d"/>
<path id="Path_314" data-name="Path 314" d="M663.19,485.27v168.2a4,4,0,0,1-3.85,3.95l-191.65,5.1h0a4,4,0,0,1-4-3.95V485.27a4,4,0,0,1,3.95-3.95h191.6A4,4,0,0,1,663.19,485.27Z" transform="translate(-79.34 -172.91)" fill="#65617d"/>
<path id="Path_315" data-name="Path 315" d="M397.09,319.15h177.5V467.4l-177.5,4Z" fill="#4267b2"/>
<path id="Path_316" data-name="Path 316" d="M863.09,533.65v13l-151.92,1.4-1.62.03-57.74.53-1.38.02-17.55.15h-.52l-106.98.99L349.77,551.4h-.15l-44.65.42-.48.01-198.4,1.82v-15l202.51-1.33h.48l40.99-.28h.19l283.08-1.87h.29l.17-.01h.47l4.79-.03h1.46l74.49-.5,4.4-.02.98-.01Z" opacity="0.1"/>
<circle id="Ellipse_111" data-name="Ellipse 111" cx="51.33" cy="51.33" r="51.33" transform="translate(435.93 246.82)" fill="#fbbebe"/>
<path id="Path_317" data-name="Path 317" d="M617.94,550.07s-99.5,12-90,0c3.44-4.34,4.39-17.2,4.2-31.85-.06-4.45-.22-9.06-.45-13.65-1.1-22-3.75-43.5-3.75-43.5s87-41,77-8.5c-4,13.13-2.69,31.57.35,48.88.89,5.05,1.92,10,3,14.7a344.66,344.66,0,0,0,9.65,33.92Z" transform="translate(-79.34 -172.91)" fill="#fbbebe"/>
<path id="Path_318" data-name="Path 318" d="M585.47,546c11.51-2.13,23.7-6,34.53-1.54,2.85,1.17,5.47,2.88,8.39,3.86s6.12,1.22,9.16,1.91c10.68,2.42,19.34,10.55,24.9,20s8.44,20.14,11.26,30.72l6.9,25.83c6,22.45,12,45.09,13.39,68.3a2437.506,2437.506,0,0,1-250.84,1.43c5.44-10.34,11-21.31,10.54-33s-7.19-23.22-4.76-34.74c1.55-7.34,6.57-13.39,9.64-20.22,8.75-19.52,1.94-45.79,17.32-60.65,6.92-6.68,17-9.21,26.63-8.89,12.28.41,24.85,4.24,37,6.11C555.09,547.48,569.79,548.88,585.47,546Z" transform="translate(-79.34 -172.91)" fill="#ff6584"/>
<path id="Path_319" data-name="Path 319" d="M716.37,657.17l-.1,1.43v.1l-.17,2.3-1.33,18.51-1.61,22.3-.46,6.28-1,13.44v.17l-107,1-175.59,1.9v.84h-.14v-1.12l.45-14.36.86-28.06.74-23.79.07-2.37a10.53,10.53,0,0,1,11.42-10.17c4.72.4,10.85.89,18.18,1.41l3,.22c42.33,2.94,120.56,6.74,199.5,2,1.66-.09,3.33-.19,5-.31,12.24-.77,24.47-1.76,36.58-3a10.53,10.53,0,0,1,11.6,11.23Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_320" data-name="Path 320" d="M429.08,725.44v-.84l175.62-1.91,107-1h.3v-.17l1-13.44.43-6,1.64-22.61,1.29-17.9v-.44a10.617,10.617,0,0,0-.11-2.47.3.3,0,0,0,0-.1,10.391,10.391,0,0,0-2-4.64,10.54,10.54,0,0,0-9.42-4c-12.11,1.24-24.34,2.23-36.58,3-1.67.12-3.34.22-5,.31-78.94,4.69-157.17.89-199.5-2l-3-.22c-7.33-.52-13.46-1-18.18-1.41a10.54,10.54,0,0,0-11.24,8.53,11,11,0,0,0-.18,1.64l-.68,22.16L429.54,710l-.44,14.36v1.12Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
<path id="Path_321" data-name="Path 321" d="M716.67,664.18l-1.23,15.33-1.83,22.85-.46,5.72-1,12.81-.06.64v.17h0l-.15,1.48.11-1.48h-.29l-107,1-175.65,1.9v-.28l.49-14.36,1-28.06.64-18.65A6.36,6.36,0,0,1,434.3,658a6.25,6.25,0,0,1,3.78-.9c2.1.17,4.68.37,7.69.59,4.89.36,10.92.78,17.94,1.22,13,.82,29.31,1.7,48,2.42,52,2,122.2,2.67,188.88-3.17,3-.26,6.1-.55,9.13-.84a6.26,6.26,0,0,1,3.48.66,5.159,5.159,0,0,1,.86.54,6.14,6.14,0,0,1,2,2.46,3.564,3.564,0,0,1,.25.61A6.279,6.279,0,0,1,716.67,664.18Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_322" data-name="Path 322" d="M377.44,677.87v3.19a6.13,6.13,0,0,1-3.5,5.54l-40.1.77a6.12,6.12,0,0,1-3.57-5.57v-3Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_323" data-name="Path 323" d="M298.59,515.57l-52.25,1V507.9l52.25-1Z" fill="#3f3d56"/>
<path id="Path_324" data-name="Path 324" d="M298.59,515.57l-52.25,1V507.9l52.25-1Z" opacity="0.1"/>
<path id="Path_325" data-name="Path 325" d="M300.59,515.57l-52.25,1V507.9l52.25-1Z" fill="#3f3d56"/>
<path id="Path_326" data-name="Path 326" d="M758.56,679.87v3.19a6.13,6.13,0,0,0,3.5,5.54l40.1.77a6.12,6.12,0,0,0,3.57-5.57v-3Z" transform="translate(-79.34 -172.91)" opacity="0.1"/>
<path id="Path_327" data-name="Path 327" d="M678.72,517.57l52.25,1V509.9l-52.25-1Z" opacity="0.1"/>
<path id="Path_328" data-name="Path 328" d="M676.72,517.57l52.25,1V509.9l-52.25-1Z" fill="#3f3d56"/>
<path id="Path_329" data-name="Path 329" d="M534.13,486.79c.08,7-3.16,13.6-5.91,20.07a163.491,163.491,0,0,0-12.66,74.71c.73,11,2.58,22,.73,32.9s-8.43,21.77-19,24.9c17.53,10.45,41.26,9.35,57.76-2.66,8.79-6.4,15.34-15.33,21.75-24.11a97.86,97.86,0,0,1-13.31,44.75A103.43,103.43,0,0,0,637,616.53c4.31-5.81,8.06-12.19,9.72-19.23,3.09-13-1.22-26.51-4.51-39.5a266.055,266.055,0,0,1-6.17-33c-.43-3.56-.78-7.22.1-10.7,1-4.07,3.67-7.51,5.64-11.22,5.6-10.54,5.73-23.3,2.86-34.88s-8.49-22.26-14.06-32.81c-4.46-8.46-9.3-17.31-17.46-22.28-5.1-3.1-11-4.39-16.88-5.64l-25.37-5.43c-5.55-1.19-11.26-2.38-16.87-1.51-9.47,1.48-16.14,8.32-22,15.34-4.59,5.46-15.81,15.71-16.6,22.86-.72,6.59,5.1,17.63,6.09,24.58,1.3,9,2.22,6,7.3,11.52C532,478.05,534.07,482,534.13,486.79Z" transform="translate(-79.34 -172.91)" fill="#3f3d56"/>
</g>
<g id="docusaurus_keytar" transform="translate(670.271 615.768)">
<path id="Path_40" data-name="Path 40" d="M99,52h43.635V69.662H99Z" transform="translate(-49.132 -33.936)" fill="#fff" fill-rule="evenodd"/>
<path id="Path_41" data-name="Path 41" d="M13.389,158.195A10.377,10.377,0,0,1,4.4,153a10.377,10.377,0,0,0,8.988,15.584H23.779V158.195Z" transform="translate(-3 -82.47)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_42" data-name="Path 42" d="M66.967,38.083l36.373-2.273V30.615A10.389,10.389,0,0,0,92.95,20.226H46.2l-1.3-2.249a1.5,1.5,0,0,0-2.6,0L41,20.226l-1.3-2.249a1.5,1.5,0,0,0-2.6,0l-1.3,2.249-1.3-2.249a1.5,1.5,0,0,0-2.6,0l-1.3,2.249-.034,0-2.152-2.151a1.5,1.5,0,0,0-2.508.672L25.21,21.4l-2.7-.723a1.5,1.5,0,0,0-1.836,1.837l.722,2.7-2.65.71a1.5,1.5,0,0,0-.673,2.509l2.152,2.152c0,.011,0,.022,0,.033l-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6L20.226,41l-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3-2.249,1.3a1.5,1.5,0,0,0,0,2.6l2.249,1.3A10.389,10.389,0,0,0,30.615,103.34H92.95A10.389,10.389,0,0,0,103.34,92.95V51.393L66.967,49.12a5.53,5.53,0,0,1,0-11.038" transform="translate(-9.836 -17.226)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_43" data-name="Path 43" d="M143,163.779h15.584V143H143Z" transform="translate(-70.275 -77.665)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_44" data-name="Path 44" d="M173.779,148.389a2.582,2.582,0,0,0-.332.033c-.02-.078-.038-.156-.06-.234a2.594,2.594,0,1,0-2.567-4.455q-.086-.088-.174-.175a2.593,2.593,0,1,0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6,2.6,0,1,0-5.128,0c-.077.02-.154.038-.231.06a2.594,2.594,0,1,0-4.461,2.569,10.384,10.384,0,1,0,17.314,9.992,2.592,2.592,0,1,0,.332-5.161" transform="translate(-75.08 -75.262)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_45" data-name="Path 45" d="M153,113.389h15.584V103H153Z" transform="translate(-75.08 -58.444)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_46" data-name="Path 46" d="M183.389,108.944a1.3,1.3,0,1,0,0-2.6,1.336,1.336,0,0,0-.166.017c-.01-.039-.019-.078-.03-.117a1.3,1.3,0,0,0-.5-2.5,1.285,1.285,0,0,0-.783.269q-.043-.044-.087-.087a1.285,1.285,0,0,0,.263-.776,1.3,1.3,0,0,0-2.493-.509,5.195,5.195,0,1,0,0,10,1.3,1.3,0,0,0,2.493-.509,1.285,1.285,0,0,0-.263-.776q.044-.043.087-.087a1.285,1.285,0,0,0,.783.269,1.3,1.3,0,0,0,.5-2.5c.011-.038.02-.078.03-.117a1.337,1.337,0,0,0,.166.017" transform="translate(-84.691 -57.894)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_47" data-name="Path 47" d="M52.188,48.292a1.3,1.3,0,0,1-1.3-1.3,3.9,3.9,0,0,0-7.792,0,1.3,1.3,0,1,1-2.6,0,6.493,6.493,0,0,1,12.987,0,1.3,1.3,0,0,1-1.3,1.3" transform="translate(-21.02 -28.41)" fill-rule="evenodd"/>
<path id="Path_48" data-name="Path 48" d="M103,139.752h31.168a10.389,10.389,0,0,0,10.389-10.389V93H113.389A10.389,10.389,0,0,0,103,103.389Z" transform="translate(-51.054 -53.638)" fill="#ffff50" fill-rule="evenodd"/>
<path id="Path_49" data-name="Path 49" d="M141.1,94.017H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0-25.877H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.293H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m0,10.389H115.106a.519.519,0,1,1,0-1.039H141.1a.519.519,0,0,1,0,1.039m7.782-47.993c-.006,0-.011,0-.018,0-1.605.055-2.365,1.66-3.035,3.077-.7,1.48-1.24,2.443-2.126,2.414-.981-.035-1.542-1.144-2.137-2.317-.683-1.347-1.462-2.876-3.1-2.819-1.582.054-2.344,1.451-3.017,2.684-.715,1.313-1.2,2.112-2.141,2.075-1-.036-1.533-.938-2.149-1.981-.686-1.162-1.479-2.467-3.084-2.423-1.555.053-2.319,1.239-2.994,2.286-.713,1.106-1.213,1.781-2.164,1.741-1.025-.036-1.554-.784-2.167-1.65-.688-.973-1.463-2.074-3.062-2.021a3.815,3.815,0,0,0-2.959,1.879c-.64.812-1.14,1.456-2.2,1.415a.52.52,0,0,0-.037,1.039,3.588,3.588,0,0,0,3.05-1.811c.611-.777,1.139-1.448,2.178-1.483,1-.043,1.47.579,2.179,1.582.674.953,1.438,2.033,2.977,2.089,1.612.054,2.387-1.151,3.074-2.217.614-.953,1.144-1.775,2.156-1.81.931-.035,1.438.7,2.153,1.912.674,1.141,1.437,2.434,3.006,2.491,1.623.056,2.407-1.361,3.09-2.616.592-1.085,1.15-2.109,2.14-2.143.931-.022,1.417.829,2.135,2.249.671,1.326,1.432,2.828,3.026,2.886l.088,0c1.592,0,2.347-1.6,3.015-3.01.592-1.252,1.152-2.431,2.113-2.479Z" transform="translate(-55.378 -38.552)" fill-rule="evenodd"/>
<path id="Path_50" data-name="Path 50" d="M83,163.779h20.779V143H83Z" transform="translate(-41.443 -77.665)" fill="#3ecc5f" fill-rule="evenodd"/>
<g id="Group_8" data-name="Group 8" transform="matrix(0.966, -0.259, 0.259, 0.966, 51.971, 43.3)">
<rect id="Rectangle_3" data-name="Rectangle 3" width="43.906" height="17.333" rx="2" transform="translate(0 0)" fill="#d8d8d8"/>
<g id="Group_2" data-name="Group 2" transform="translate(0.728 10.948)">
<rect id="Rectangle_4" data-name="Rectangle 4" width="2.537" height="2.537" rx="1" transform="translate(7.985 0)" fill="#4a4a4a"/>
<rect id="Rectangle_5" data-name="Rectangle 5" width="2.537" height="2.537" rx="1" transform="translate(10.991 0)" fill="#4a4a4a"/>
<rect id="Rectangle_6" data-name="Rectangle 6" width="2.537" height="2.537" rx="1" transform="translate(13.997 0)" fill="#4a4a4a"/>
<rect id="Rectangle_7" data-name="Rectangle 7" width="2.537" height="2.537" rx="1" transform="translate(17.003 0)" fill="#4a4a4a"/>
<rect id="Rectangle_8" data-name="Rectangle 8" width="2.537" height="2.537" rx="1" transform="translate(20.009 0)" fill="#4a4a4a"/>
<rect id="Rectangle_9" data-name="Rectangle 9" width="2.537" height="2.537" rx="1" transform="translate(23.015 0)" fill="#4a4a4a"/>
<rect id="Rectangle_10" data-name="Rectangle 10" width="2.537" height="2.537" rx="1" transform="translate(26.021 0)" fill="#4a4a4a"/>
<rect id="Rectangle_11" data-name="Rectangle 11" width="2.537" height="2.537" rx="1" transform="translate(29.028 0)" fill="#4a4a4a"/>
<rect id="Rectangle_12" data-name="Rectangle 12" width="2.537" height="2.537" rx="1" transform="translate(32.034 0)" fill="#4a4a4a"/>
<path id="Path_51" data-name="Path 51" d="M.519,0H6.9A.519.519,0,0,1,7.421.52v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0ZM35.653,0h6.383a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H35.652a.519.519,0,0,1-.519-.519V.519A.519.519,0,0,1,35.652,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_3" data-name="Group 3" transform="translate(0.728 4.878)">
<path id="Path_52" data-name="Path 52" d="M.519,0H2.956a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_13" data-name="Rectangle 13" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_14" data-name="Rectangle 14" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_15" data-name="Rectangle 15" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_16" data-name="Rectangle 16" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_17" data-name="Rectangle 17" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_18" data-name="Rectangle 18" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_19" data-name="Rectangle 19" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_20" data-name="Rectangle 20" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_21" data-name="Rectangle 21" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_22" data-name="Rectangle 22" width="2.537" height="2.537" rx="1" transform="translate(31 0)" fill="#4a4a4a"/>
<rect id="Rectangle_23" data-name="Rectangle 23" width="2.537" height="2.537" rx="1" transform="translate(34.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_24" data-name="Rectangle 24" width="2.537" height="2.537" rx="1" transform="translate(37.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_25" data-name="Rectangle 25" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
</g>
<g id="Group_4" data-name="Group 4" transform="translate(43.283 4.538) rotate(180)">
<path id="Path_53" data-name="Path 53" d="M.519,0H2.956a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.519A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_26" data-name="Rectangle 26" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_27" data-name="Rectangle 27" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_28" data-name="Rectangle 28" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_29" data-name="Rectangle 29" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_30" data-name="Rectangle 30" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_31" data-name="Rectangle 31" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_32" data-name="Rectangle 32" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_33" data-name="Rectangle 33" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_34" data-name="Rectangle 34" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_35" data-name="Rectangle 35" width="2.537" height="2.537" rx="1" transform="translate(31.001 0)" fill="#4a4a4a"/>
<rect id="Rectangle_36" data-name="Rectangle 36" width="2.537" height="2.537" rx="1" transform="translate(34.007 0)" fill="#4a4a4a"/>
<rect id="Rectangle_37" data-name="Rectangle 37" width="2.537" height="2.537" rx="1" transform="translate(37.013 0)" fill="#4a4a4a"/>
<rect id="Rectangle_38" data-name="Rectangle 38" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
<rect id="Rectangle_39" data-name="Rectangle 39" width="2.537" height="2.537" rx="1" transform="translate(3.945 0)" fill="#4a4a4a"/>
<rect id="Rectangle_40" data-name="Rectangle 40" width="2.537" height="2.537" rx="1" transform="translate(6.951 0)" fill="#4a4a4a"/>
<rect id="Rectangle_41" data-name="Rectangle 41" width="2.537" height="2.537" rx="1" transform="translate(9.958 0)" fill="#4a4a4a"/>
<rect id="Rectangle_42" data-name="Rectangle 42" width="2.537" height="2.537" rx="1" transform="translate(12.964 0)" fill="#4a4a4a"/>
<rect id="Rectangle_43" data-name="Rectangle 43" width="2.537" height="2.537" rx="1" transform="translate(15.97 0)" fill="#4a4a4a"/>
<rect id="Rectangle_44" data-name="Rectangle 44" width="2.537" height="2.537" rx="1" transform="translate(18.976 0)" fill="#4a4a4a"/>
<rect id="Rectangle_45" data-name="Rectangle 45" width="2.537" height="2.537" rx="1" transform="translate(21.982 0)" fill="#4a4a4a"/>
<rect id="Rectangle_46" data-name="Rectangle 46" width="2.537" height="2.537" rx="1" transform="translate(24.988 0)" fill="#4a4a4a"/>
<rect id="Rectangle_47" data-name="Rectangle 47" width="2.537" height="2.537" rx="1" transform="translate(27.994 0)" fill="#4a4a4a"/>
<rect id="Rectangle_48" data-name="Rectangle 48" width="2.537" height="2.537" rx="1" transform="translate(31.001 0)" fill="#4a4a4a"/>
<rect id="Rectangle_49" data-name="Rectangle 49" width="2.537" height="2.537" rx="1" transform="translate(34.007 0)" fill="#4a4a4a"/>
<rect id="Rectangle_50" data-name="Rectangle 50" width="2.537" height="2.537" rx="1" transform="translate(37.013 0)" fill="#4a4a4a"/>
<rect id="Rectangle_51" data-name="Rectangle 51" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
</g>
<g id="Group_6" data-name="Group 6" transform="translate(0.728 7.883)">
<path id="Path_54" data-name="Path 54" d="M.519,0h3.47a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.52A.519.519,0,0,1,.519,0Z" transform="translate(0 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<g id="Group_5" data-name="Group 5" transform="translate(5.073 0)">
<rect id="Rectangle_52" data-name="Rectangle 52" width="2.537" height="2.537" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_53" data-name="Rectangle 53" width="2.537" height="2.537" rx="1" transform="translate(3.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_54" data-name="Rectangle 54" width="2.537" height="2.537" rx="1" transform="translate(6.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_55" data-name="Rectangle 55" width="2.537" height="2.537" rx="1" transform="translate(9.018 0)" fill="#4a4a4a"/>
<rect id="Rectangle_56" data-name="Rectangle 56" width="2.537" height="2.537" rx="1" transform="translate(12.025 0)" fill="#4a4a4a"/>
<rect id="Rectangle_57" data-name="Rectangle 57" width="2.537" height="2.537" rx="1" transform="translate(15.031 0)" fill="#4a4a4a"/>
<rect id="Rectangle_58" data-name="Rectangle 58" width="2.537" height="2.537" rx="1" transform="translate(18.037 0)" fill="#4a4a4a"/>
<rect id="Rectangle_59" data-name="Rectangle 59" width="2.537" height="2.537" rx="1" transform="translate(21.042 0)" fill="#4a4a4a"/>
<rect id="Rectangle_60" data-name="Rectangle 60" width="2.537" height="2.537" rx="1" transform="translate(24.049 0)" fill="#4a4a4a"/>
<rect id="Rectangle_61" data-name="Rectangle 61" width="2.537" height="2.537" rx="1" transform="translate(27.055 0)" fill="#4a4a4a"/>
<rect id="Rectangle_62" data-name="Rectangle 62" width="2.537" height="2.537" rx="1" transform="translate(30.061 0)" fill="#4a4a4a"/>
</g>
<path id="Path_55" data-name="Path 55" d="M.52,0H3.8a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.017V.52A.519.519,0,0,1,.519,0Z" transform="translate(38.234 0)" fill="#4a4a4a" fill-rule="evenodd"/>
</g>
<g id="Group_7" data-name="Group 7" transform="translate(0.728 14.084)">
<rect id="Rectangle_63" data-name="Rectangle 63" width="2.537" height="2.537" rx="1" transform="translate(0 0)" fill="#4a4a4a"/>
<rect id="Rectangle_64" data-name="Rectangle 64" width="2.537" height="2.537" rx="1" transform="translate(3.006 0)" fill="#4a4a4a"/>
<rect id="Rectangle_65" data-name="Rectangle 65" width="2.537" height="2.537" rx="1" transform="translate(6.012 0)" fill="#4a4a4a"/>
<rect id="Rectangle_66" data-name="Rectangle 66" width="2.537" height="2.537" rx="1" transform="translate(9.018 0)" fill="#4a4a4a"/>
<path id="Path_56" data-name="Path 56" d="M.519,0H14.981A.519.519,0,0,1,15.5.519v1.5a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,2.018V.519A.519.519,0,0,1,.519,0Zm15.97,0h1.874a.519.519,0,0,1,.519.519v1.5a.519.519,0,0,1-.519.519H16.489a.519.519,0,0,1-.519-.519V.519A.519.519,0,0,1,16.489,0Z" transform="translate(12.024 0)" fill="#4a4a4a" fill-rule="evenodd"/>
<rect id="Rectangle_67" data-name="Rectangle 67" width="2.537" height="2.537" rx="1" transform="translate(31.376 0)" fill="#4a4a4a"/>
<rect id="Rectangle_68" data-name="Rectangle 68" width="2.537" height="2.537" rx="1" transform="translate(34.382 0)" fill="#4a4a4a"/>
<rect id="Rectangle_69" data-name="Rectangle 69" width="2.537" height="2.537" rx="1" transform="translate(40.018 0)" fill="#4a4a4a"/>
<path id="Path_57" data-name="Path 57" d="M2.537,0V.561a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,.561V0Z" transform="translate(39.736 1.08) rotate(180)" fill="#4a4a4a"/>
<path id="Path_58" data-name="Path 58" d="M2.537,0V.561a.519.519,0,0,1-.519.519H.519A.519.519,0,0,1,0,.561V0Z" transform="translate(37.2 1.456)" fill="#4a4a4a"/>
</g>
<rect id="Rectangle_70" data-name="Rectangle 70" width="42.273" height="1.127" rx="0.564" transform="translate(0.915 0.556)" fill="#4a4a4a"/>
<rect id="Rectangle_71" data-name="Rectangle 71" width="2.37" height="0.752" rx="0.376" transform="translate(1.949 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_72" data-name="Rectangle 72" width="2.37" height="0.752" rx="0.376" transform="translate(5.193 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_73" data-name="Rectangle 73" width="2.37" height="0.752" rx="0.376" transform="translate(7.688 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_74" data-name="Rectangle 74" width="2.37" height="0.752" rx="0.376" transform="translate(10.183 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_75" data-name="Rectangle 75" width="2.37" height="0.752" rx="0.376" transform="translate(12.679 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_76" data-name="Rectangle 76" width="2.37" height="0.752" rx="0.376" transform="translate(15.797 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_77" data-name="Rectangle 77" width="2.37" height="0.752" rx="0.376" transform="translate(18.292 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_78" data-name="Rectangle 78" width="2.37" height="0.752" rx="0.376" transform="translate(20.788 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_79" data-name="Rectangle 79" width="2.37" height="0.752" rx="0.376" transform="translate(23.283 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_80" data-name="Rectangle 80" width="2.37" height="0.752" rx="0.376" transform="translate(26.402 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_81" data-name="Rectangle 81" width="2.37" height="0.752" rx="0.376" transform="translate(28.897 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_82" data-name="Rectangle 82" width="2.37" height="0.752" rx="0.376" transform="translate(31.393 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_83" data-name="Rectangle 83" width="2.37" height="0.752" rx="0.376" transform="translate(34.512 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_84" data-name="Rectangle 84" width="2.37" height="0.752" rx="0.376" transform="translate(37.007 0.744)" fill="#d8d8d8" opacity="0.136"/>
<rect id="Rectangle_85" data-name="Rectangle 85" width="2.37" height="0.752" rx="0.376" transform="translate(39.502 0.744)" fill="#d8d8d8" opacity="0.136"/>
</g>
<path id="Path_59" data-name="Path 59" d="M123.779,148.389a2.583,2.583,0,0,0-.332.033c-.02-.078-.038-.156-.06-.234a2.594,2.594,0,1,0-2.567-4.455q-.086-.088-.174-.175a2.593,2.593,0,1,0-4.461-2.569c-.077-.022-.154-.04-.231-.06a2.6,2.6,0,1,0-5.128,0c-.077.02-.154.038-.231.06a2.594,2.594,0,1,0-4.461,2.569,10.384,10.384,0,1,0,17.314,9.992,2.592,2.592,0,1,0,.332-5.161" transform="translate(-51.054 -75.262)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_60" data-name="Path 60" d="M83,113.389h20.779V103H83Z" transform="translate(-41.443 -58.444)" fill="#3ecc5f" fill-rule="evenodd"/>
<path id="Path_61" data-name="Path 61" d="M123.389,108.944a1.3,1.3,0,1,0,0-2.6,1.338,1.338,0,0,0-.166.017c-.01-.039-.019-.078-.03-.117a1.3,1.3,0,0,0-.5-2.5,1.285,1.285,0,0,0-.783.269q-.043-.044-.087-.087a1.285,1.285,0,0,0,.263-.776,1.3,1.3,0,0,0-2.493-.509,5.195,5.195,0,1,0,0,10,1.3,1.3,0,0,0,2.493-.509,1.285,1.285,0,0,0-.263-.776q.044-.043.087-.087a1.285,1.285,0,0,0,.783.269,1.3,1.3,0,0,0,.5-2.5c.011-.038.02-.078.03-.117a1.335,1.335,0,0,0,.166.017" transform="translate(-55.859 -57.894)" fill="#44d860" fill-rule="evenodd"/>
<path id="Path_62" data-name="Path 62" d="M141.8,38.745a1.41,1.41,0,0,1-.255-.026,1.309,1.309,0,0,1-.244-.073,1.349,1.349,0,0,1-.224-.119,1.967,1.967,0,0,1-.2-.161,1.52,1.52,0,0,1-.161-.2,1.282,1.282,0,0,1-.218-.722,1.41,1.41,0,0,1,.026-.255,1.5,1.5,0,0,1,.072-.244,1.364,1.364,0,0,1,.12-.223,1.252,1.252,0,0,1,.358-.358,1.349,1.349,0,0,1,.224-.119,1.309,1.309,0,0,1,.244-.073,1.2,1.2,0,0,1,.509,0,1.262,1.262,0,0,1,.468.192,1.968,1.968,0,0,1,.2.161,1.908,1.908,0,0,1,.161.2,1.322,1.322,0,0,1,.12.223,1.361,1.361,0,0,1,.1.5,1.317,1.317,0,0,1-.379.919,1.968,1.968,0,0,1-.2.161,1.346,1.346,0,0,1-.223.119,1.332,1.332,0,0,1-.5.1m10.389-.649a1.326,1.326,0,0,1-.92-.379,1.979,1.979,0,0,1-.161-.2,1.282,1.282,0,0,1-.218-.722,1.326,1.326,0,0,1,.379-.919,1.967,1.967,0,0,1,.2-.161,1.351,1.351,0,0,1,.224-.119,1.308,1.308,0,0,1,.244-.073,1.2,1.2,0,0,1,.509,0,1.262,1.262,0,0,1,.468.192,1.967,1.967,0,0,1,.2.161,1.326,1.326,0,0,1,.379.919,1.461,1.461,0,0,1-.026.255,1.323,1.323,0,0,1-.073.244,1.847,1.847,0,0,1-.119.223,1.911,1.911,0,0,1-.161.2,1.967,1.967,0,0,1-.2.161,1.294,1.294,0,0,1-.722.218" transform="translate(-69.074 -26.006)" fill-rule="evenodd"/>
</g>
<g id="React-icon" transform="translate(906.3 541.56)">
<path id="Path_330" data-name="Path 330" d="M263.668,117.179c0-5.827-7.3-11.35-18.487-14.775,2.582-11.4,1.434-20.477-3.622-23.382a7.861,7.861,0,0,0-4.016-1v4a4.152,4.152,0,0,1,2.044.466c2.439,1.4,3.5,6.724,2.672,13.574-.2,1.685-.52,3.461-.914,5.272a86.9,86.9,0,0,0-11.386-1.954,87.469,87.469,0,0,0-7.459-8.965c5.845-5.433,11.332-8.41,15.062-8.41V78h0c-4.931,0-11.386,3.514-17.913,9.611-6.527-6.061-12.982-9.539-17.913-9.539v4c3.712,0,9.216,2.959,15.062,8.356a84.687,84.687,0,0,0-7.405,8.947,83.732,83.732,0,0,0-11.4,1.972c-.412-1.793-.717-3.532-.932-5.2-.843-6.85.2-12.175,2.618-13.592a3.991,3.991,0,0,1,2.062-.466v-4h0a8,8,0,0,0-4.052,1c-5.039,2.9-6.168,11.96-3.568,23.328-11.153,3.443-18.415,8.947-18.415,14.757,0,5.828,7.3,11.35,18.487,14.775-2.582,11.4-1.434,20.477,3.622,23.382a7.882,7.882,0,0,0,4.034,1c4.931,0,11.386-3.514,17.913-9.611,6.527,6.061,12.982,9.539,17.913,9.539a8,8,0,0,0,4.052-1c5.039-2.9,6.168-11.96,3.568-23.328C256.406,128.511,263.668,122.988,263.668,117.179Zm-23.346-11.96c-.663,2.313-1.488,4.7-2.421,7.083-.735-1.434-1.506-2.869-2.349-4.3-.825-1.434-1.7-2.833-2.582-4.2C235.517,104.179,237.974,104.645,240.323,105.219Zm-8.212,19.1c-1.4,2.421-2.833,4.716-4.321,6.85-2.672.233-5.379.359-8.1.359-2.708,0-5.415-.126-8.069-.341q-2.232-3.2-4.339-6.814-2.044-3.523-3.73-7.136c1.112-2.4,2.367-4.805,3.712-7.154,1.4-2.421,2.833-4.716,4.321-6.85,2.672-.233,5.379-.359,8.1-.359,2.708,0,5.415.126,8.069.341q2.232,3.2,4.339,6.814,2.044,3.523,3.73,7.136C234.692,119.564,233.455,121.966,232.11,124.315Zm5.792-2.331c.968,2.4,1.793,4.805,2.474,7.136-2.349.574-4.823,1.058-7.387,1.434.879-1.381,1.757-2.8,2.582-4.25C236.4,124.871,237.167,123.419,237.9,121.984ZM219.72,141.116a73.921,73.921,0,0,1-4.985-5.738c1.614.072,3.263.126,4.931.126,1.685,0,3.353-.036,4.985-.126A69.993,69.993,0,0,1,219.72,141.116ZM206.38,130.555c-2.546-.377-5-.843-7.352-1.417.663-2.313,1.488-4.7,2.421-7.083.735,1.434,1.506,2.869,2.349,4.3S205.5,129.192,206.38,130.555ZM219.63,93.241a73.924,73.924,0,0,1,4.985,5.738c-1.614-.072-3.263-.126-4.931-.126-1.686,0-3.353.036-4.985.126A69.993,69.993,0,0,1,219.63,93.241ZM206.362,103.8c-.879,1.381-1.757,2.8-2.582,4.25-.825,1.434-1.6,2.869-2.331,4.3-.968-2.4-1.793-4.805-2.474-7.136C201.323,104.663,203.8,104.179,206.362,103.8Zm-16.227,22.449c-6.348-2.708-10.454-6.258-10.454-9.073s4.106-6.383,10.454-9.073c1.542-.663,3.228-1.255,4.967-1.811a86.122,86.122,0,0,0,4.034,10.92,84.9,84.9,0,0,0-3.981,10.866C193.38,127.525,191.694,126.915,190.134,126.252Zm9.647,25.623c-2.439-1.4-3.5-6.724-2.672-13.574.2-1.686.52-3.461.914-5.272a86.9,86.9,0,0,0,11.386,1.954,87.465,87.465,0,0,0,7.459,8.965c-5.845,5.433-11.332,8.41-15.062,8.41A4.279,4.279,0,0,1,199.781,151.875Zm42.532-13.663c.843,6.85-.2,12.175-2.618,13.592a3.99,3.99,0,0,1-2.062.466c-3.712,0-9.216-2.959-15.062-8.356a84.689,84.689,0,0,0,7.405-8.947,83.731,83.731,0,0,0,11.4-1.972A50.194,50.194,0,0,1,242.313,138.212Zm6.9-11.96c-1.542.663-3.228,1.255-4.967,1.811a86.12,86.12,0,0,0-4.034-10.92,84.9,84.9,0,0,0,3.981-10.866c1.775.556,3.461,1.165,5.039,1.829,6.348,2.708,10.454,6.258,10.454,9.073C259.67,119.994,255.564,123.562,249.216,126.252Z" fill="#61dafb"/>
<path id="Path_331" data-name="Path 331" d="M320.8,78.4Z" transform="translate(-119.082 -0.328)" fill="#61dafb"/>
<circle id="Ellipse_112" data-name="Ellipse 112" cx="8.194" cy="8.194" r="8.194" transform="translate(211.472 108.984)" fill="#61dafb"/>
<path id="Path_332" data-name="Path 332" d="M520.5,78.1Z" transform="translate(-282.975 -0.082)" fill="#61dafb"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 35 KiB

View File

@@ -0,0 +1,40 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1129" height="663" viewBox="0 0 1129 663">
<title>Focus on What Matters</title>
<circle cx="321" cy="321" r="321" fill="#f2f2f2" />
<ellipse cx="559" cy="635.49998" rx="514" ry="27.50002" fill="#3f3d56" />
<ellipse cx="558" cy="627" rx="460" ry="22" opacity="0.2" />
<rect x="131" y="152.5" width="840" height="50" fill="#3f3d56" />
<path d="M166.5,727.3299A21.67009,21.67009,0,0,0,188.1701,749H984.8299A21.67009,21.67009,0,0,0,1006.5,727.3299V296h-840Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<path d="M984.8299,236H188.1701A21.67009,21.67009,0,0,0,166.5,257.6701V296h840V257.6701A21.67009,21.67009,0,0,0,984.8299,236Z" transform="translate(-35.5 -118.5)" opacity="0.2" />
<circle cx="181" cy="147.5" r="13" fill="#3f3d56" />
<circle cx="217" cy="147.5" r="13" fill="#3f3d56" />
<circle cx="253" cy="147.5" r="13" fill="#3f3d56" />
<rect x="168" y="213.5" width="337" height="386" rx="5.33505" fill="#606060" />
<rect x="603" y="272.5" width="284" height="22" rx="5.47638" fill="#2e8555" />
<rect x="537" y="352.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="396.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="440.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="537" y="484.5" width="416" height="15" rx="5.47638" fill="#2e8555" />
<rect x="865" y="552.5" width="88" height="26" rx="7.02756" fill="#3ecc5f" />
<path d="M1088.60287,624.61594a30.11371,30.11371,0,0,0,3.98291-15.266c0-13.79652-8.54358-24.98081-19.08256-24.98081s-19.08256,11.18429-19.08256,24.98081a30.11411,30.11411,0,0,0,3.98291,15.266,31.248,31.248,0,0,0,0,30.53213,31.248,31.248,0,0,0,0,30.53208,31.248,31.248,0,0,0,0,30.53208,30.11408,30.11408,0,0,0-3.98291,15.266c0,13.79652,8.54353,24.98081,19.08256,24.98081s19.08256-11.18429,19.08256-24.98081a30.11368,30.11368,0,0,0-3.98291-15.266,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53208,31.248,31.248,0,0,0,0-30.53213Z" transform="translate(-35.5 -118.5)" fill="#3f3d56" />
<ellipse cx="1038.00321" cy="460.31783" rx="19.08256" ry="24.9808" fill="#3f3d56" />
<ellipse cx="1038.00321" cy="429.78574" rx="19.08256" ry="24.9808" fill="#3f3d56" />
<path d="M1144.93871,339.34489a91.61081,91.61081,0,0,0,7.10658-10.46092l-50.141-8.23491,54.22885.4033a91.566,91.566,0,0,0,1.74556-72.42605l-72.75449,37.74139,67.09658-49.32086a91.41255,91.41255,0,1,0-150.971,102.29805,91.45842,91.45842,0,0,0-10.42451,16.66946l65.0866,33.81447-69.40046-23.292a91.46011,91.46011,0,0,0,14.73837,85.83669,91.40575,91.40575,0,1,0,143.68892,0,91.41808,91.41808,0,0,0,0-113.02862Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M981.6885,395.8592a91.01343,91.01343,0,0,0,19.56129,56.51431,91.40575,91.40575,0,1,0,143.68892,0C1157.18982,436.82067,981.6885,385.60008,981.6885,395.8592Z" transform="translate(-35.5 -118.5)" opacity="0.1" />
<path d="M365.62,461.43628H477.094v45.12043H365.62Z" transform="translate(-35.5 -118.5)" fill="#fff" fill-rule="evenodd" />
<path d="M264.76252,608.74122a26.50931,26.50931,0,0,1-22.96231-13.27072,26.50976,26.50976,0,0,0,22.96231,39.81215H291.304V608.74122Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M384.17242,468.57061l92.92155-5.80726V449.49263a26.54091,26.54091,0,0,0-26.54143-26.54143H331.1161l-3.31768-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622-3.31767-5.74622a3.83043,3.83043,0,0,0-6.63536,0l-3.31768,5.74622L301.257,417.205a3.83043,3.83043,0,0,0-6.63536,0L291.304,422.9512c-.02919,0-.05573.004-.08625.004l-5.49674-5.49541a3.8293,3.8293,0,0,0-6.4071,1.71723l-1.81676,6.77338L270.607,424.1031a3.82993,3.82993,0,0,0-4.6912,4.69253l1.84463,6.89148-6.77072,1.81411a3.8315,3.8315,0,0,0-1.71988,6.40975l5.49673,5.49673c0,.02787-.004.05574-.004.08493l-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74621,3.31768L259.0163,466.081a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31767a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768L259.0163,558.976a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768-5.74622,3.31768a3.83042,3.83042,0,0,0,0,6.63535l5.74622,3.31768-5.74622,3.31768a3.83043,3.83043,0,0,0,0,6.63536l5.74622,3.31768A26.54091,26.54091,0,0,0,291.304,635.28265H450.55254A26.5409,26.5409,0,0,0,477.094,608.74122V502.5755l-92.92155-5.80727a14.12639,14.12639,0,0,1,0-28.19762" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M424.01111,635.28265h39.81214V582.19979H424.01111Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M490.36468,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15393-.59852A6.62668,6.62668,0,1,0,482.80568,590.21q-.2203-.22491-.44457-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39414-.10218-.59056-.15262a6.63957,6.63957,0,1,0-13.10086,0c-.1964.05042-.39414.09687-.59056.15262a6.62767,6.62767,0,1,0-11.39688,6.56369,26.52754,26.52754,0,1,0,44.23127,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M437.28182,555.65836H477.094V529.11693H437.28182Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M490.36468,545.70532a3.31768,3.31768,0,0,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M317.84538,466.081a3.31768,3.31768,0,0,1-3.31767-3.31768,9.953,9.953,0,1,0-19.90608,0,3.31768,3.31768,0,1,1-6.63535,0,16.58839,16.58839,0,1,1,33.17678,0,3.31768,3.31768,0,0,1-3.31768,3.31768" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
<path d="M370.92825,635.28265h79.62429A26.5409,26.5409,0,0,0,477.094,608.74122v-92.895H397.46968a26.54091,26.54091,0,0,0-26.54143,26.54143Z" transform="translate(-35.5 -118.5)" fill="#ffff50" fill-rule="evenodd" />
<path d="M457.21444,556.98543H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,1,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0-66.10674H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.29459H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414m0,26.54143H390.80778a1.32707,1.32707,0,0,1,0-2.65414h66.40666a1.32707,1.32707,0,0,1,0,2.65414M477.094,474.19076c-.01592,0-.0292-.008-.04512-.00663-4.10064.13934-6.04083,4.24132-7.75274,7.86024-1.78623,3.78215-3.16771,6.24122-5.43171,6.16691-2.50685-.09024-3.94007-2.92222-5.45825-5.91874-1.74377-3.44243-3.73438-7.34667-7.91333-7.20069-4.04227.138-5.98907,3.70784-7.70631,6.857-1.82738,3.35484-3.07084,5.39455-5.46887,5.30033-2.55727-.09289-3.91619-2.39536-5.48877-5.06013-1.75306-2.96733-3.77951-6.30359-7.8775-6.18946-3.97326.13669-5.92537,3.16507-7.64791,5.83912-1.82207,2.82666-3.09872,4.5492-5.52725,4.447-2.61832-.09289-3.9706-2.00388-5.53522-4.21611-1.757-2.4856-3.737-5.299-7.82308-5.16231-3.88567.13271-5.83779,2.61434-7.559,4.80135-1.635,2.07555-2.9116,3.71846-5.61218,3.615a1.32793,1.32793,0,1,0-.09555,2.65414c4.00377.134,6.03154-2.38873,7.79257-4.6275,1.562-1.9853,2.91027-3.69855,5.56441-3.78879,2.55594-.10882,3.75429,1.47968,5.56707,4.04093,1.7212,2.43385,3.67465,5.19416,7.60545,5.33616,4.11789.138,6.09921-2.93946,7.8536-5.66261,1.56861-2.43385,2.92221-4.53461,5.50734-4.62352,2.37944-.08892,3.67466,1.79154,5.50072,4.885,1.72121,2.91557,3.67069,6.21865,7.67977,6.36463,4.14709.14332,6.14965-3.47693,7.89475-6.68181,1.51155-2.77092,2.93814-5.38791,5.46621-5.4755,2.37944-.05573,3.62025,2.11668,5.45558,5.74622,1.71459,3.388,3.65875,7.22591,7.73019,7.37321l.22429.004c4.06614,0,5.99571-4.08074,7.70364-7.68905,1.51154-3.19825,2.94211-6.21069,5.3972-6.33411Z" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
<path d="M344.38682,635.28265h53.08286V582.19979H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M424.01111,602.10586a6.60242,6.60242,0,0,0-.848.08493c-.05042-.19906-.09821-.39945-.15394-.59852A6.62667,6.62667,0,1,0,416.45211,590.21q-.2203-.22491-.44458-.44589a6.62391,6.62391,0,1,0-11.39689-6.56369c-.1964-.05575-.39413-.10218-.59054-.15262a6.63957,6.63957,0,1,0-13.10084,0c-.19641.05042-.39414.09687-.59055.15262a6.62767,6.62767,0,1,0-11.39689,6.56369,26.52755,26.52755,0,1,0,44.2313,25.52756,6.6211,6.6211,0,1,0,.848-13.18579" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M344.38682,555.65836h53.08286V529.11693H344.38682Z" transform="translate(-35.5 -118.5)" fill="#3ecc5f" fill-rule="evenodd" />
<path d="M410.74039,545.70532a3.31768,3.31768,0,1,0,0-6.63536,3.41133,3.41133,0,0,0-.42333.04247c-.02655-.09953-.04911-.19907-.077-.29859a3.319,3.319,0,0,0-1.278-6.37923,3.28174,3.28174,0,0,0-2.00122.68742q-.10947-.11346-.22294-.22295a3.282,3.282,0,0,0,.67149-1.98265,3.31768,3.31768,0,0,0-6.37-1.2992,13.27078,13.27078,0,1,0,0,25.54082,3.31768,3.31768,0,0,0,6.37-1.2992,3.282,3.282,0,0,0-.67149-1.98265q.11347-.10947.22294-.22294a3.28174,3.28174,0,0,0,2.00122.68742,3.31768,3.31768,0,0,0,1.278-6.37923c.02786-.0982.05042-.19907.077-.29859a3.41325,3.41325,0,0,0,.42333.04246" transform="translate(-35.5 -118.5)" fill="#44d860" fill-rule="evenodd" />
<path d="M424.01111,447.8338a3.60349,3.60349,0,0,1-.65028-.06636,3.34415,3.34415,0,0,1-.62372-.18579,3.44679,3.44679,0,0,1-.572-.30522,5.02708,5.02708,0,0,1-.50429-.4114,3.88726,3.88726,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.60248,3.60248,0,0,1,.06636-.65027,3.82638,3.82638,0,0,1,.18447-.62373,3.48858,3.48858,0,0,1,.30656-.57064,3.197,3.197,0,0,1,.91436-.91568,3.44685,3.44685,0,0,1,.572-.30523,3.344,3.344,0,0,1,.62372-.18578,3.06907,3.06907,0,0,1,1.30053,0,3.22332,3.22332,0,0,1,1.19436.491,5.02835,5.02835,0,0,1,.50429.41139,4.8801,4.8801,0,0,1,.41139.50429,3.38246,3.38246,0,0,1,.30522.57064,3.47806,3.47806,0,0,1,.25215,1.274A3.36394,3.36394,0,0,1,426.36,446.865a5.02708,5.02708,0,0,1-.50429.4114,3.3057,3.3057,0,0,1-1.84463.55737m26.54143-1.65884a3.38754,3.38754,0,0,1-2.35024-.96877,5.04185,5.04185,0,0,1-.41007-.50428,3.27532,3.27532,0,0,1-.55737-1.84463,3.38659,3.38659,0,0,1,.96744-2.34892,5.02559,5.02559,0,0,1,.50429-.41139,3.44685,3.44685,0,0,1,.572-.30523,3.3432,3.3432,0,0,1,.62373-.18579,3.06952,3.06952,0,0,1,1.30052,0,3.22356,3.22356,0,0,1,1.19436.491,5.02559,5.02559,0,0,1,.50429.41139,3.38792,3.38792,0,0,1,.96876,2.34892,3.72635,3.72635,0,0,1-.06636.65026,3.37387,3.37387,0,0,1-.18579.62373,4.71469,4.71469,0,0,1-.30522.57064,4.8801,4.8801,0,0,1-.41139.50429,5.02559,5.02559,0,0,1-.50429.41139,3.30547,3.30547,0,0,1-1.84463.55737" transform="translate(-35.5 -118.5)" fill-rule="evenodd" />
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

7
docs/tsconfig.json Normal file
View File

@@ -0,0 +1,7 @@
{
// This file is not used in compilation. It is here just for a nice editor experience.
"extends": "@docusaurus/tsconfig",
"compilerOptions": {
"baseUrl": "."
}
}

View File

@@ -19,8 +19,9 @@
"dev": "tsc --watch",
"cmd": "ts-node src/sample.ts",
"test": "jest",
"doc": "typedoc",
"deploy-doc": "pnpm doc && gh-pages -d docs",
"docs:build": "cd docs && pnpm build",
"docs:watch": "cd docs && pnpm start",
"docs:deploy": "pnpm docs:build && gh-pages -d docs",
"semantic-release": "semantic-release"
},
"devDependencies": {

View File

@@ -1 +1,5 @@
import { massarg } from './massarg'
export * from './massarg'
export default massarg