open-index/open-npm huggingface dataset:
npm package: @henris/vuepress-theme-henris
Description: Henri's theme for VuePress
Author: Evan You
Latest version: 0.0.1

# @vuepress/theme-default

> theme-default for vuepress

## Plugins

The default theme has the following plugin built in:

- [@vuepress/plugin-active-header-links](https://github.com/vuejs/vuepress/tree/master/packages/@vuepress/plugin-active-header-links)
- [@vuepress/plugin-google-analytics](https://github.com/vuejs/vuepress/tree/master/packages/%40vuepress/plugin-google-analytics)
npm package: @henrist/cdk-cloudfront-auth
Description: CDK Constructs for adding authentication for a CloudFront Distribution
Latest version: 2.1.61

# CloudFront authorization with Cognito for CDK

Easily add Cognito-based authorization to your CloudFront distribution,
to place static files behind authorization.

This is based on https://github.com/aws-samples/cloudfront-authorization-at-edge.

## Usage

```bash
npm install @henrist/cdk-cloudfront-auth
```

Deploy the Lambda@Edge functions to us-east-1:

```ts
// In a stack deployed to us-east-1.
const authLambdas = new AuthLambdas(this, "AuthLambdas", {
  regions: ["eu-west-1"], // Regions to make Lambda version params available.
})
```

Deploy the Cognito and CloudFront setup in whatever region
of your choice:

```ts
const auth = new CloudFrontAuth(this, "Auth", {
  cognitoAuthDomain: `${domain.domainName}.auth.${region}.amazoncognito.com`,
  authLambdas, // AuthLambdas from above
  userPool, // Cognito User Pool
})
const distribution = new cloudfront.Distribution(this, "Distribution", {
  defaultBehavior: auth.createProtectedBehavior(origin),
  additionalBehaviors: auth.createAuthPagesBehaviors(origin),
})
auth.updateClient("ClientUpdate", {
  signOutUrl: `https://${distribution.distributionDomainName}${auth.signOutRedirectTo}`,
  callbackUrl: `https://${distribution.distributionDomainName}${auth.callbackPath}`,
})
```

If using `CloudFrontWebDistribution` instead of `Distribution`:

```ts
const distribution = new cloudfront.CloudFrontWebDistribution(this, "Distribution", {
  originConfigs: [
    {
      behaviors: [
        ...auth.authPages,
        {
          isDefaultBehavior: true,
          lambdaFunctionAssociations: auth.authFilters,
        },
      ],
    },
  ],
})
```

## Customizing authorization

The `CloudFrontAuth` construct accepts a `requireGroupAnyOf` property
that causes access to be restricted to only users in specific groups.
npm package: @henrist/cdk-cross-region-params
Description: CDK Constructs for cross-region SSM Parameters and resources
Latest version: 2.0.1

# CDK Constructs for cross-region SSM Parameters and resources

## Usage

```bash
npm install @henrist/cdk-cross-region-params
```

See the individual constructs for details:

* [CrossRegionParameter](./src/cross-region-parameter.ts) - Store a SSM
  Parameter in another region.
* [ParameterReader](./src/parameter-reader.ts) - Read SSM Parameter as part of
  CloudFormation deployment, with support for cross-region lookup.
* [ParameterResource](./src/parameter-resource.ts) - Define a resource
  to be available for lookup from another region.
npm package: @henrist/cdk-lambda-config
Description: CDK Construct for adding config.json file to a Lambda Function
Latest version: 2.1.67

# CDK Construct for adding config.json file to a Lambda Function

When using Lambda@Edge, a function cannot use environment variables.
This CDK Construct uses a Custom Resource to inject a `config.json`
file with user provided values into an existing function, and
publishes a new version that is ready to be used as part of a
CloudFront Distribution.

Inspired by similar mechanism in https://github.com/aws-samples/cloudfront-authorization-at-edge/

## Usage

```bash
npm install @henrist/cdk-lambda-config
```

Using the construct:

```ts
const originalFunction = lambda.Function.fromFunctionArn(...)
const updatedFunction = new LambdaConfig(this, "UpdatedFunction", {
  function: originalFunction,
  config: {
    Key1: "Some value",
    Nested: {
      Key2: "Other value",
    },
  },
  nonce: "1", // See TSDoc.
}
// Can now retrieve the new version:
updatedFunction.version
```

Read from within the handler:

```ts
const fs = require("fs")
const path = require("path")
const config = JSON.parse(
  fs.readFileSync(path.join(__dirname, "config.json"), "utf-8"),
)
```
npm package: @henrist/cdk-snapshot
Description: Create a snapshot of an CDK application
Latest version: 1.4.0

# CDK snapshot

Create a snapshot friendly version of a
[CDK](https://github.com/aws/aws-cdk) (both v1 and v2)
[Cloud Assembly](https://github.com/aws/aws-cdk/blob/master/packages/@aws-cdk/cloud-assembly-schema/README.md)
that can be commited as part of the source code. The goal is to have
better control over structural stack changes before it is merged.

This can help automate the process of keeping CDK up-to-date while
manually approving structural stack changes. It also helps reviewing
code changes since the affected CloudFormation stack changes will be
reviewable as well.

## Usage

```bash
npm install --save-dev @henrist/cdk-snapshot rimraf
```

Add run-script to `package.json`:

```json
{
  "scripts": {
    "cdk-snapshot": "rimraf cdk.out __snapshots__ && IS_SNAPSHOT=true npm run cdk -- synth && cdk-snapshot"
  }
}
```

Setting `IS_SNAPSHOT` means we can add conditionals in the
code to stub some parts of the templates during snapshot mode.
It is not needed for normal use.

Updated snapshot can now be created by running the script:

```bash
npm run cdk-snapshot
```

By default the `cdk-snapshot` script will take what it finds in
`cdk.out` directory and transform it to a snapshot friendly version that
it stores in `__snapshots__`.

### Asserting snapshot is up-to-date

In your CI/CD-pipeline you can add:

```bash
npm run cdk-snapshot
git status
git diff --exit-code
```

This will cause the build to fail if the snapshot is not up-to-date.

## In depth

A snapshot friendly version means an opinionated transformation of the
Cloud Assembly so that "innocent" changes does not always invalidate the
snapshot, to keep the maintenance burdon down.

The following is performed:

* The `cdk.out` file is removed. This only contains the version of
  the Cloud Manifest, which we think is not neccessary to keep track of.
* The `tree.json` file is removed. We think this does not contribute
  to the goal.
* The asset directories is removed. Asset changes are not kept track of,
  and should generally not invalidate the snapshot.
* The `manifest.json` file is modified to remove the Cloud Assemby version,
  runtime version informasjon (CDK library versions), trace output and
  asset details.
* From every template `*.template.json` the asset details is removed.

## Collapsing changes in PR by default

To make GitHub not show preview of changes to snapshots by default
in a PR, you can add this to the `.gitattributes` file:

```text
# See https://help.github.com/en/github/administering-a-repository/customizing-how-changed-files-appear-on-github
**/__snapshots__/** linguist-generated=true
```
npm package: @henrotaym/nuxt-trustup-io-test
Description: test
Latest version: 0.0.1

# nuxt-trustup-io-test

[![npm version][npm-version-src]][npm-version-href]
[![npm downloads][npm-downloads-src]][npm-downloads-href]
[![License][license-src]][license-href]
[![Nuxt][nuxt-src]][nuxt-href]

test

- [✨ &nbsp;Release Notes](/CHANGELOG.md)
<!-- - [🏀 Online playground](https://stackblitz.com/github/your-org/@henrotaym/nuxt-trustup-io-test?file=playground%2Fapp.vue) -->
<!-- - [📖 &nbsp;Documentation](https://example.com) -->

## Features

<!-- Highlight some of the features your module provide here -->
- ⛰ &nbsp;Foo
- 🚠 &nbsp;Bar
- 🌲 &nbsp;Baz

## Quick Setup

1. Add `@henrotaym/nuxt-trustup-io-test` dependency to your project

```bash
# Using pnpm
pnpm add -D @henrotaym/nuxt-trustup-io-test

# Using yarn
yarn add --dev @henrotaym/nuxt-trustup-io-test

# Using npm
npm install --save-dev @henrotaym/nuxt-trustup-io-test
```

2. Add `@henrotaym/nuxt-trustup-io-test` to the `modules` section of `nuxt.config.ts`

```js
export default defineNuxtConfig({
  modules: [
    '@henrotaym/nuxt-trustup-io-test'
  ],
  trustupIoTest: {}
})
```

That's it! You can now use nuxt-trustup-io-test in your Nuxt app ✨

## Development

### Bootstrap module
Find and replace all on all files (CMD+SHIFT+F):
```shell
  - nuxt-trustup-io-test // nuxt-trustup-io-toasteo
  - test // Our notification package for nuxt.
  - trustupIoTest // trustupIoToasteo
  - @henrotaym // @deegital
  - git@github.com:henrotaym/nuxt-trustup-io-test.git // git@github.com:deegitalbe/nuxt-trustup-io-toasteo.git
```
Start bootstrap script
```shell
./cli bootstrap
```

### Available commands
```bash
# Install dependencies
./cli yarn install

# Generate playground
./cli yarn generate

# Start project
./cli start

# Stop project
./cli start

# Build the playground for production
./cli yarn dev:build

# Run ESLint
./cli yarn lint

# Run Vitest
./cli yarn test
./cli yarn test:watch

# Validate your package (running linter & typecript validation)
./cli yarn check

# Build the package for publication
./cli yarn build

# Release new version
npm version patch
```

<!-- Badges -->
[npm-version-src]: https://img.shields.io/npm/v/@henrotaym/nuxt-trustup-io-test/latest.svg?style=flat&colorA=18181B&colorB=28CF8D
[npm-version-href]: https://npmjs.com/package/@henrotaym/nuxt-trustup-io-test

[npm-downloads-src]: https://img.shields.io/npm/dm/@henrotaym/nuxt-trustup-io-test.svg?style=flat&colorA=18181B&colorB=28CF8D
[npm-downloads-href]: https://npmjs.com/package/@henrotaym/nuxt-trustup-io-test

[license-src]: https://img.shields.io/npm/l/@henrotaym/nuxt-trustup-io-test.svg?style=flat&colorA=18181B&colorB=28CF8D
[license-href]: https://npmjs.com/package/@henrotaym/nuxt-trustup-io-test

[nuxt-src]: https://img.shields.io/badge/Nuxt-18181B?logo=nuxt.js
[nuxt-href]: https://nuxt.com
npm package: @henrotaym/scaffolding-utils
Description: Utils for scaffolding projects.
Author: Henrotay Mathieu
Latest version: 1.2.1

# Scaffolding boilerplate utils

## Installation
```shell
yarn add @henrotaym/scaffolding-utils -D
```

## Usage

### src/index.ts
```typescript
#!/usr/bin/env node

import {
  useCommandName,
  useCurrentPath,
  usePackageStubsPath,
  useGenerator,
  usePrompt
} from "@henrotaym/scaffolding-utils";

// Defining script
export const useMyScript = () => {
  const useStubsPath = usePackageStubsPath("@henrotaym/my-current-package");
  const generator = useGenerator({
    name: usePrompt("your name"),
    lastName: usePrompt("your last name")
  })
  
  generator.copy(
    useStubsPath("devops"),
    useCurrentPath("devops")
  );
}
```

### Build dist directory
```shell
./cli yarn build
```

### bin/myDevops
```typescript
#!/usr/bin/env node

const { useMyScript } = require("../dist");

useMyScript();
```

## Test your script
```shell
./cli node ./bin/myDevops
```
npm package: @henrotaym/ts-boilerplate
Description: scaffolding boilerplate
Author: Henrotay Mathieu
Latest version: 1.2.3

# ts-boilerplate

## Usage
```shell
npx @henrotaym/ts-boilerplate@latest
```

## Development
```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaym/vue-3-forms
Description: Creating reactive forms easily
Latest version: 1.0.1

# Creating reactive vue 3 form. 🔥

## Installation
```shell
yarn add @henrotaym/vue-3-forms
```

## Usage
### Composable
```typescript
import { Field, useReactiveForm } from "../lib";
import { z } from "zod";

const useExampleForm = () => {
  const title = new Field({
    label: "title",
    value: "this is my title",
    validation: z.string(),
  });

  const description = new Field({
    label: "description",
    value: "this is my description",
    validation: z.string(),
  });

  const ratings = new Field({
    label: "ratings",
    value: 0,
    validation: z.number(),
  });

  const isUsing = new Field({
    label: "isUsing",
    value: true,
    validation: z.boolean(),
  });

  const form = useReactiveForm({
    ratings,
    title,
    description,
    isUsing,
  });

  form.onSubmit(async () => {
    // Executed only if form is valid and not already loading
    console.log(Object.keys(form.dirtyFields));
    form.clear();
  });

  return form;
};

export default useExampleForm;
```

### Form component
```vue
<script setup lang="ts">
import { useExampleForm } from "../composables";
import { FormContainer, FormField } from "@henrotaym/vue-3-forms";

const form = useExampleForm();
</script>

<template>
  <FormContainer :form="form" class="w-[500px]">
    <FormField :form-field="form.fields.title"></FormField>
    <FormField :form-field="form.fields.description"></FormField>
    <FormField :form-field="form.fields.isUsing"></FormField>
    <FormField :form-field="form.fields.ratings"></FormField>
  </FormContainer>
</template>
```

## Development
### Initialization
```shell
./cli bootstrap
```

### Usage
#### Start dev server
```shell
./cli start
```

#### Stop dev server
```shell
./cli stop
```

#### Yarn
```shell
./cli yarn install
```

#### Publish versions
You should install npm locally and authenticate yourself first.
```shell
npm version patch
```
npm package: @henrotaym/vue-3-typescript-package-boilerplate
Description: Boilerplate to start a vue 3 package easily.
Latest version: 0.0.13

# Typescript vue 3 package boilerplate 🔥

## Initialization
```shell
./cli bootstrap
```

## Usage
### Start dev server
```shell
./cli start
```

### Stop dev server
```shell
./cli stop
```

### Yarn
```shell
./cli yarn install
```

### Publish versions
```shell
./cli version patch
```
npm package: @henrotaymcorp/api-client-parser-addon
Description: api-client-parser-addon
Author: Henrotay Mathieu
Latest version: 0.0.1

# api-client-parser-addon
api-client-parser-addon

## Installation
```shell
yarn add @henrotaymcorp/api-client-parser-addon
```

## Usage
```typescript
import { Client, Request } from "@henrotaym/api-client";
import { ResponseStatus, useResponseParser } from "@henrotaymcorp/api-client-parser-addon";
import { z } from "zod";

// Defining response schema.
const responseSchema = z.object({
  document: z.object({
    name: z.string(),
    uuid: z.string(),
  }),
});

// Defining endpoint.
const fetchDocument = async () =>
  useResponseParser({
    response: await new Client().try(new Request()),
    schema: responseSchema,
  });

// Using endpoint response.
const { data, status } = await fetchDocument();
if (status === ResponseStatus.API_ERROR) return; // RequestRelatedException<{ document: { name: string; uuid: string; }; } }
if (status === ResponseStatus.ZOD_ERROR) return; // ZodError<{ document: { name: string; uuid: string; } }
new Model(data); // SUCCESS => { document: {  name: string; uuid: string; };
```

## Development
```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/nuxt-boilerplate
Description: A boilerplate to scaffold a nuxt 3 project with ease.
Author: Henrotay Mathieu
Latest version: 0.3.2

# nuxt-boilerplate
A boilerplate to scaffold a nuxt 3 project with ease.

## Usage
```shell
 npx @henrotaymcorp/nuxt-boilerplate@latest
```

## Development
```shell
./cli bootstrap #bootstrap project
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/nuxt-cloudflare-page-deployment
Description: Deploying effortless your nuxt application to cloudflare pages.
Author: Henrotay Mathieu
Latest version: 0.2.0

# nuxt-cloudflare-page-deployment

Deploying your nuxt application to cloudflare pages.

## Installation

```shell
npx @henrotaymcorp/nuxt-cloudflare-page-deployment@latest
```

## Usage

<!-- @TODO -->

## Development

```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/nuxt-modal
Description: A simple package to manage modals.
Author: Henrotay Mathieu
Latest version: 0.0.5

# nuxt-modal

A simple package to manage modals.

## Installation

```shell
yarn add @henrotaymcorp/nuxt-modal
```

Add `@henrotaymcorp/nuxt-modal` to the `modules` section of `nuxt.config.ts`

```typescript
export default defineNuxtConfig({
  modules: [
    '@henrotaymcorp/nuxt-modal'
  ],
  nuxtModal: {}
})
```

That's it! You can now use `nuxt-modal` in your Nuxt app ✨

## Usage

Add `ModalsContainer` to your App.vue (or any component being global to your app)

```vue
<template>
  <div>
    <NuxtLayout>
      <NuxtPage />
    <NuxtLayout>
    <ModalsContainer>
  <div>
</template>
```

Define your modal. Main container has to be one of these : StylelessModal / CenteredModal / RightModal

```vue
<template>
  <RightModal>
    <div class="flex flex-col gap-8">
      <div>name: {{ name }}</div>
      <div>lastName: {{ lastName }}</div>
      <div class="flex items-center gap-8">
        <AppButton @click="open"> open second modal </AppButton>
        <AppButton @click="close"> close modal </AppButton>
      </div>
    </div>
  </RightModal>
</template>

<script setup lang="ts">
type Props = {
  name: string;
  lastName: string;
  close: () => void; // Close is given magically by this package and allow modal removal.
};

defineProps<Props>();
</script>
```

Define a composable to use your modal

```typescript
import MyModal from "path/to/MyModal.vue"

export const useMyModal = () => useModal(MyModal);
```

Use composable in your code

```vue
<template>
  <button @click="openModal"> Open modal </button>
  <button @click="close"> Close </button>
</template>

<script setup lang="ts">
const { open, close } = useMyModal();

// Open parameters are automatically resolved using your component props (omiting close function)
const openModal = () => open({
  firstName: "Mathieu",
  lastName: "Henrotay"
})
</script>
```

## Development

```shell
./cli bootstrap #bootstrap project
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/nuxt-module-boilerplate
Description: nuxt-module-boilerplate
Author: Henrotay Mathieu
Latest version: 0.0.11

# nuxt-module-boilerplate

nuxt-module-boilerplate

## Usage

```shell
npx @henrotaymcorp/nuxt-module-boilerplate@latest
```

## Development

```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/nuxt-module-boilerplate-test
Description: nuxt-module-boilerplate-test
Author: Henrotay Mathieu
Latest version: 0.0.1

#nuxt-module-boilerplate-test

nuxt-module-boilerplate-test

## Installation

```shell
yarn add @henrotaymcorp/nuxt-module-boilerplate-test
```

Add `@henrotaymcorp/nuxt-module-boilerplate-test` to the `modules` section of `nuxt.config.ts`

```typescript
export default defineNuxtConfig({
  modules: [
    '@henrotaymcorp/nuxt-module-boilerplate-test'
  ],
  nuxtModuleBoilerplateTest: {
    // @TODO
  }
})
```

That's it! You can now use `nuxt-module-boilerplate-test` in your Nuxt app ✨

## Usage

```typescript
// @TODO
```

## Development

```shell
./cli bootstrap #bootstrap project
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/vue-boilerplate
Description: Boilerplate to start a vue 3 package easily.
Author: Henrotay Mathieu
Latest version: 0.4.0

# Typescript vue 3 package boilerplate 🔥
Boilerplate to start a vue 3 package easily.

## Usage
```shell
npx @henrotaymcorp/vue-boilerplate@latest
```

## Development
```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/vue-modal
Description: A simple package to manage modals
Author: Henrotay Mathieu
Latest version: 0.0.5

# vue-modal
A simple package to manage modals

## Installation
```shell
yarn add @henrotaymcorp/vue-modal
```

## Usage
<!-- @TODO -->

## Development
```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrotaymcorp/vue-router-typed-query
Description: A simple package to type your query parameters
Author: Henrotay Mathieu
Latest version: 0.0.1

# vue-router-typed-query
A simple package to type your query parameters

## Installation
```shell
yarn add @henrotaymcorp/vue-router-typed-query
```

## Usage

### useQuery
```typescript
import { z } from "zod";
import { useQuery } from "@henrotaymcorp/vue-router-typed-query";

// Construct your validation schema.
const querySchema = z.object({
  name: z.string(),
});

// Await result
const query = await useQuery(querySchema); // { name: string } OR Throws error if invalid
```

### useSafeQuery
```typescript
import { z } from "zod";
import { useQuery } from "@henrotaymcorp/vue-router-typed-query";

// Construct your validation schema.
const querySchema = z.object({
  name: z.string(),
});

// Await result
const safeQuery = await useSafeQuery(querySchema); // { data: { name: string } | ZodError, success: boolean }
if (!safeQuery.success) return safeQuery.error; // ZodError
safeQuery.data; // { name: string }
```

## Caveats
`useQuery` and `useSafeQuery` can't be used after an await or a promise resolution. See this [issue](https://github.com/vuejs/router/issues/257) for details.
```typescript
const ThrowingError = async () => {
  await callApi();
  const query = useQuery(querySchema) // Fails !!
}
```
```typescript
const Correct = async () => {
  await callApi();
  const query = useQuery(querySchema) // OK !!
}
```

## Development
```shell
./cli bootstrap #bootstrap project
./cli yarn install #install dependencies
./cli start #start project
./cli stop #stop project
./cli restart  #restart project
```
npm package: @henrq-crdso/nexus-mythos
Description: Nexus Mythos (OpenClaw-style local agent CLI)
Latest version: 1.0.2

# Nexus Mythos (nexusai)

CLI agent based on the Claude Code-style workflow, adapted to:

- Use **local or hosted OpenAI-compatible APIs** (OpenRouter, Ollama, LiteLLM, etc.)
- Provide an **OpenClaw-style Live Screen viewer** for GUI automation workflows
- Keep config under `~/.nexusmythos/` (Windows: `C:\Users\<user>\.nexusmythos\`)

## Install (global)

After publishing to npm under the configured name:

```bash
npm install -g @henrq-crdso/nexus-mythos
```

Run:

```bash
nexusai
```

## Settings file

Create:

- **Windows:** `C:\Users\<user>\.nexusmythos\settings.json`
- **macOS/Linux:** `~/.nexusmythos/settings.json`

Example (OpenRouter):

```json
{
    "env": {
        "ANTHROPIC_BASE_URL": "https://openrouter.ai/api/v1",
        "ANTHROPIC_API_KEY": "sk-or-v1-...",
        "ANTHROPIC_MODEL": "qwen/qwen3.6-plus:free" // example 
    }
}
```

Example (Ollama local):

```json
{
  "env": {
    "CLAUDE_CODE_USE_OPENAI": "1",
    "OPENAI_BASE_URL": "http://localhost:11434/v1",
    "OPENAI_MODEL": "llama3.1"
  }
}
```

## Live Screen (OpenClaw-style)

Start the CLI **and** a lightweight local viewer:

```bash
nexusai live
```

This starts a local HTTP server (default `http://localhost:7331`) and prints the URL.
The GUI automation tool writes the latest screenshot to:

```
~/.nexusmythos/live/last.png
```

Enable GUI automation tools (mouse/keyboard + screenshots) by setting:

```json
{
  "env": {
    "NEXUS_ENABLE_COMPUTER": "1"
  }
}
```

### Optional dependencies

GUI automation uses optional deps:

- `screenshot-desktop`
- `@nut-tree/nut-js`

If they fail to install on a platform, the CLI still runs; only the Computer tool is disabled.
npm package: @henrts/diana
Description: The Diana System and component library. The purpose of this library is to be used as a foundation for a specific design system. It uses aphrodite and aesthetic under the hood.
Latest version: 2.0.0

## A Template Design System

The Diana System and component library. The purpose of this library is to be used as a foundation for a specific design system. It uses aphrodite and aesthetic under the hood.

### Installation

### Usage

The base building blocks of the library are the HOC `withStyles` and the hooks `useStyles` and `useTheme`
Use `withStyles` to produce `StyledComponents` that can then be wrapped and extended with different styles and be parts.

![](https://raw.githubusercontent.com/Henrts/diana/master/src/stories/systemdiagram.png)

Use `initTheme` with the desired theme at the start of your application.

```javascript
import theme from "../src/tokens/themes/theme.example";

initTheme(theme);
```

#### Creation of an extendable component

```javascript
import { withStyles, WithStylesProps } from "@henrts/diana";

const styleSheet = theme => ({
  exampleStyle: {
    color: "black",
    fontSize: 23,
    margin: 16
  }
});
const ExampleComponent: React.FC<WithStylesProps> = ({
  cx,
  styles,
  children
}) => <div className={cx(styles.exampleStyle)}>{children}</div>;
export default withStyles(styleSheet)(ExampleComponent);
```

#### Extending a Component

```javascript
import { ExampleComponent } from "./ExampleComponent";

export const DerivedComponent = ExampleComponent.extendStyles(theme => ({
  exampleStyle: {
    /* style override */
    fontSize: 12
  }
}));
```
npm package: @henry-hong/common-utils
Description: Common utils for monorepo projects
Author: henry hong
Latest version: 0.1.9

# Common Utils

[![NPM Version](https://img.shields.io/npm/v/%40henry-hong%2Fcommon-utils)](https://www.npmjs.com/package/@henry-hong/common-utils)

Common utils for monorepo projects.

## Installation

```bash
pnpm add @henry-hong/common-utils
```
npm package: @henry-wr/console-icons-react
Description: >
Author: henry-wr
Latest version: 1.0.0

# console-icons-react

> 

[![NPM](https://img.shields.io/npm/v/console-icons-react.svg)](https://www.npmjs.com/package/console-icons-react) [![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Install

```bash
npm install --save console-icons-react
```

## Usage

```jsx
import React, { Component } from 'react'

import MyComponent from 'console-icons-react'

class Example extends Component {
  render () {
    return (
      <MyComponent />
    )
  }
}
```

## License

MIT © [henry-wr](https://github.com/henry-wr)
npm package: @henry-yslin/ts-regex
Description: Strongly-typed regex checker written entirely in TypeScript type definitions.
Author: Henry Lin
Latest version: 1.0.1

<h1 align="center">ts-regex</h1>

<div align="center">

[![CI](https://github.com/hlysine/ts-regex/actions/workflows/main.yml/badge.svg)](https://github.com/hlysine/ts-regex/actions/workflows/main.yml)
[![Coverage Status](https://coveralls.io/repos/github/hlysine/ts-regex/badge.svg?branch=main)](https://coveralls.io/github/hlysine/ts-regex?branch=main)
[![TypeScript](https://img.shields.io/badge/built%20with-TypeScript-blue)](https://www.typescriptlang.org/)
[![npm](https://img.shields.io/npm/v/@henry-yslin/ts-regex)](https://www.npmjs.com/package/@henry-yslin/ts-regex)
[![npm bundle size](https://img.shields.io/bundlephobia/minzip/@henry-yslin/ts-regex)](https://www.npmjs.com/package/@henry-yslin/ts-regex)
[![Dependency Count](https://img.shields.io/badge/dynamic/json?color=%24.dependencies.color&label=dependencies&query=%24.dependencies.count&url=https%3A%2F%2Fapi.npmutil.com%2Fpackage%2F%40henry-yslin%252Fts-regex)](https://www.npmjs.com/package/@henry-yslin/ts-regex)

</div>

<p align="center">
Strongly typed RegExp wrapper.
</p>

## Installation

Install ts-regex with your preferred package manager, and then import it with CommonJS or ES Modules syntax:

```bash
npm install @henry-yslin/ts-regex

yarn add @henry-yslin/ts-regex
```

```js
import { regex } from '@henry-yslin/ts-regex';

const { regex } = require('@henry-yslin/ts-regex');
```

## Usage

Simply use the provided `regex` function to create `RegExp` objects. You will get strongly-typed match results and
compile-time regex syntax check for free!

```ts
import { regex } from '@henry-yslin/ts-regex';

const nameRegex = regex('(?<first>[a-zA-Z_$])[a-zA-Z0-9_$]*');

const result = nameRegex.exec('foo');

// @ts-expect-error Property 'second' does not exist on type '{ first: string; }'.
console.log(result?.groups.second);
```

```ts
// @ts-expect-error '\\2' is being parsed as an octal character escape sequence, which is banned because it is easily confused with a back-reference.
const backRefRegex = regex('(.+)\\2');
```

```ts
// @ts-expect-error '\\u134' is not a valid unicode escape sequence and is being parsed literally. Do not escape the 'u' character when not in a unicode escape sequence.
const unicodeRegex = regex('\\u134');
```

```ts
const nameRegex = regex('www\\.(?<name>.+)\\.com');
const result = 'https://www.google.com'.match(nameRegex);

console.log(result?.groups.name); // strongly-typed match result

// @ts-expect-error the named capture group "domain" does not exist
console.log(result?.groups.domain);
```
npm package: @henry.fernandez/tiny
Description: Removes all spaces from a string
Latest version: 2.0.0

# @henry.fernandez/tiny

[![npm (scoped)](https://img.shields.io/npm/v/@bamblehorse/tiny.svg)](https://www.npmjs.com/package/@henry.fernandez/tiny)
[![npm bundle size (minified)](https://img.shields.io/bundlephobia/min/@bamblehorse/tiny.svg)](https://www.npmjs.com/package/@henry.fernandez/tiny)

Removes all spaces from a string.

## Install

```
$ npm install @henry.fernandez/tiny
```

## Usage

```js
const tiny = require("@henry.fernandez/tiny");

tiny("So much space!");
//=> "Somuchspace!"

tiny(1337);
//=> Uncaught TypeError: Tiny wants a string!
//    at tiny (<anonymous>:2:41)
//    at <anonymous>:1:1
```
npm package: @henry2323/microsoft-outlook-tool-credentialid
Description: Microsoft Outlook Tool with Credential ID support for n8n AI Agent
Author: henry2323
Latest version: 0.1.0

# n8n Microsoft Outlook Tool with Credential ID

This is a custom n8n node that provides Microsoft Outlook functionality with Credential ID support, specifically designed to work with n8n's AI Agent feature. It allows you to perform various Outlook operations such as sending emails, listing messages, and managing calendar events.

## Features

- Send emails through Microsoft Outlook
- List inbox messages
- Create calendar events
- List calendar events
- AI Tool integration for n8n AI Agent
- Credential ID support for secure authentication

## Installation

To install this custom node in your n8n instance:

```bash
npm install @henry2323/microsoft-outlook-tool-credentialid
```

## Prerequisites

1. Microsoft Azure Account
2. Registered Azure Application with the following permissions:
   - Mail.ReadWrite
   - Mail.Send
   - Calendars.ReadWrite
   - User.Read
   - offline_access

## Setup

1. Register an application in Azure Portal (https://portal.azure.com)
2. Add the required permissions listed above
3. Get the following credentials:
   - Client ID
   - Client Secret
   - Tenant ID (or use 'common' for multi-tenant)
4. Configure these credentials in n8n's credentials manager

## Operations

### Send Email
- Send emails with text content
- Specify recipient, subject, and body

### List Messages
- Retrieve messages from inbox
- Filter and sort capabilities
- Configurable limit on number of messages

### Create Calendar Event
- Create new calendar events
- Set start and end times
- Specify time zone
- Add event description

### List Calendar Events
- View upcoming calendar events
- Filter by date range
- Time zone support
- Option to find first available slot

## AI Tool Integration

This node is compatible with n8n's AI Agent feature, allowing for natural language processing of Outlook-related tasks. The AI Tool interface supports all operations through a standardized schema.

## Example Usage

### As Regular Node

1. Add the node to your workflow
2. Configure Microsoft Outlook OAuth2 credentials
3. Select desired operation
4. Configure operation-specific parameters
5. Execute workflow

### As AI Tool

```javascript
// Example AI Agent interaction
{
  "operation": "sendEmail",
  "to": "recipient@example.com",
  "subject": "Test Email",
  "body": "This is a test email sent via n8n AI Agent"
}
```

## License

[MIT License](LICENSE.md)
npm package: @henry2323/n8n-nodes-calendar-tool-wrapper
Description: Wrapper for Microsoft Calendar AI Tool integration
Author: Henry
Latest version: 0.1.4

![Banner image](https://user-images.githubusercontent.com/10284570/173569848-c624317f-42b1-45a6-ab09-f0ea3c247648.png)


# n8n-nodes-run-node-with-credentials-x

The node allows you to dynamically set the credentials to be used for a specific node you want to run.
With this you have to paste in a node you want to use, this can be any node with any parameters set. By then also entering the credentials ID the node is ran with those credentials.

> **Warning**
> You can only use the same type of credentials as the original one set in the node that is pasted in.
> Be sure to enter credentials, so the node know which credentials need to be replaced. Without credentials set, the node cannot determine the credentialtype name and therefore cannot set it.

![NodeExample](https://github.com/bramkn/n8n-nodes-run-node-with-credentials/blob/master/img/credentialsNodeImg.png)

## Developer

Hi, 

My name is Bram and I am the developer of this node.
I am an independant consultant and expert partner of n8n.
My nodes are free to use for everyone, but please consider [donating](https://donate.stripe.com/3cs5oe7xM6L77Yc5ko) when you use my nodes.
This helps me to build and maintain nodes for everyone to use.

If you are looking for some outside help with n8n, I can of course also offer my services.
* Node Development
* Workflow Development
* Mentoring
* Support

Please contact me @ bram@knitco.nl if you want to make use of my services.

For questions or issues with nodes, please open an issue on Github.
npm package: @henry2323/n8n-nodes-microsoft-outlook-tool-credentialid
Description: Microsoft Outlook Tool with Credential ID support for n8n AI Agent
Author: henry2323
Latest version: 0.1.0

# n8n Microsoft Outlook Tool with Credential ID

This is a custom n8n node that provides Microsoft Outlook functionality with Credential ID support, specifically designed to work with n8n's AI Agent feature. It allows you to perform various Outlook operations such as sending emails, listing messages, and managing calendar events.

## Features

- Send emails through Microsoft Outlook
- List inbox messages
- Create calendar events
- List calendar events
- AI Tool integration for n8n AI Agent
- Credential ID support for secure authentication

## Installation

To install this custom node in your n8n instance:

```bash
npm install @henry2323/n8n-nodes-microsoft-outlook-tool-credentialid
```

## Prerequisites

1. Microsoft Azure Account
2. Registered Azure Application with the following permissions:
   - Mail.ReadWrite
   - Mail.Send
   - Calendars.ReadWrite
   - User.Read
   - offline_access

## Setup

1. Register an application in Azure Portal (https://portal.azure.com)
2. Add the required permissions listed above
3. Get the following credentials:
   - Client ID
   - Client Secret
   - Tenant ID (or use 'common' for multi-tenant)
4. Configure these credentials in n8n's credentials manager

## Operations

### Send Email
- Send emails with text content
- Specify recipient, subject, and body

### List Messages
- Retrieve messages from inbox
- Filter and sort capabilities
- Configurable limit on number of messages

### Create Calendar Event
- Create new calendar events
- Set start and end times
- Specify time zone
- Add event description

### List Calendar Events
- View upcoming calendar events
- Filter by date range
- Time zone support
- Option to find first available slot

## AI Tool Integration

This node is compatible with n8n's AI Agent feature, allowing for natural language processing of Outlook-related tasks. The AI Tool interface supports all operations through a standardized schema.

## Example Usage

### As Regular Node

1. Add the node to your workflow
2. Configure Microsoft Outlook OAuth2 credentials
3. Select desired operation
4. Configure operation-specific parameters
5. Execute workflow

### As AI Tool

```javascript
// Example AI Agent interaction
{
  "operation": "sendEmail",
  "to": "recipient@example.com",
  "subject": "Test Email",
  "body": "This is a test email sent via n8n AI Agent"
}
```

## License

[MIT License](LICENSE.md)
npm package: @henry6/bsctestabcsdk
Description: 🛠 An SDK for building applications on top of Uniswap.
Latest version: 1.0.1

# Uniswap SDK

[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
[![Actions Status](https://github.com/Uniswap/uniswap-sdk/workflows/CI/badge.svg)](https://github.com/Uniswap/uniswap-sdk)
[![npm version](https://img.shields.io/npm/v/@uniswap/sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/Uniswap/uniswap-sdk.git
```

Move into the uniswap-sdk working directory

```sh
cd uniswap-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @henry6/tzswapsdk
Description: 🛠 An SDK for building applications on top of Uniswap.
Latest version: 1.0.0

# Uniswap SDK

[![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
[![Actions Status](https://github.com/Uniswap/uniswap-sdk/workflows/CI/badge.svg)](https://github.com/Uniswap/uniswap-sdk)
[![npm version](https://img.shields.io/npm/v/@uniswap/sdk/latest.svg)](https://www.npmjs.com/package/@uniswap/sdk/v/latest)
[![npm bundle size (scoped version)](https://img.shields.io/bundlephobia/minzip/@uniswap/sdk/latest.svg)](https://bundlephobia.com/result?p=@uniswap/sdk@latest)

In-depth documentation on this SDK is available at [uniswap.org](https://uniswap.org/docs/v2/SDK/getting-started/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/Uniswap/uniswap-sdk.git
```

Move into the uniswap-sdk working directory

```sh
cd uniswap-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```