open-index/open-npm huggingface dataset:
npm package: @microtica/mocks
Description: Mock services for automated tests
Author: Microtica
Latest version: 1.4.9

# Microtica test-friendly mocks

A library which provides various mocking utilities, mainly for AWS APIs and databases.

Some of the features require installed and running Docker engine

## Installation
```console
npm i @microtica/mocks -D
```

## Usage

### Docker
Exported classes which have docker in their name require docker engine to be running in order to be used

```js
import * as DynamoDB from "aws-sdk/clients/dynamodb";
import { LocalStackDocker } from "@microtica/mocks";

(async () => {
    const server = new LocalStackDocker();
    try {
        await server.start(); // starts new LocalStack container
        const client = new DynamoDB();
        console.log(await client.listTables().promise()); // check whether local AWS APIs are running
    } catch (e) {
        console.error(e);
    } finally {
        server.stop(); // optionally, you can stop the container or leave it for future usages
    }
})();
```

# Mocks
npm package: @microtime-rs/node
Description: Get the current time in microseconds(Rust version)
Latest version: 1.0.0

# @microtime-rs/node

[![npm](https://img.shields.io/npm/dm/@microtime-rs/node.svg)](https://www.npmjs.com/package/@microtime-rs/node)
[![npm](https://img.shields.io/npm/v/@microtime-rs/node.svg)](https://www.npmjs.com/package/@microtime-rs/node)

Date.now() will only give you accuracy in milliseconds. This module calls
`gettimeofday(2)` to get the time in microseconds and provides it in a few
different formats. The same warning from that function applies:
_The resolution of the system clock is hardware dependent, and the time may
be updated continuously or in ``ticks.''_

# Installation

    npm install @microtime-rs/node

# Usage

### microtime.now()

Get the current time in microseconds as an integer.

<!-- ### microtime.nowDouble()

Get the current time in seconds as a floating point number with microsecond
accuracy (similar to `time.time()` in Python and `Time.now.to_f` in Ruby).

### microtime.nowStruct()

Get the current time and return as a list with seconds and microseconds (matching the return value of `gettimeofday(2)`). -->

# Example

    > var microtime = require('microtime')
    > microtime.now()
    1297448895297028
    <!-- > microtime.nowDouble()
    1297448897.600976
    > microtime.nowStruct()
    [ 1297448902, 753875 ] -->
npm package: @microtime-rs/node-freebsd-x64
Description: This is the **x86_64-unknown-freebsd** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-freebsd-x64`

This is the **x86_64-unknown-freebsd** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-linux-arm-gnueabihf
Description: This is the **armv7-unknown-linux-gnueabihf** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-linux-arm-gnueabihf`

This is the **armv7-unknown-linux-gnueabihf** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-linux-arm64-musl
Description: This is the **aarch64-unknown-linux-musl** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-linux-arm64-musl`

This is the **aarch64-unknown-linux-musl** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-linux-x64-gnu
Description: This is the **x86_64-unknown-linux-gnu** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-linux-x64-gnu`

This is the **x86_64-unknown-linux-gnu** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-linux-x64-musl
Description: This is the **x86_64-unknown-linux-musl** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-linux-x64-musl`

This is the **x86_64-unknown-linux-musl** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-win32-arm64-msvc
Description: This is the **aarch64-pc-windows-msvc** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-win32-arm64-msvc`

This is the **aarch64-pc-windows-msvc** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-win32-ia32-msvc
Description: This is the **i686-pc-windows-msvc** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-win32-ia32-msvc`

This is the **i686-pc-windows-msvc** binary for `@microtime-rs/node`
npm package: @microtime-rs/node-win32-x64-msvc
Description: This is the **x86_64-pc-windows-msvc** binary for `@microtime-rs/node`
Latest version: 1.0.0

# `@microtime-rs/node-win32-x64-msvc`

This is the **x86_64-pc-windows-msvc** binary for `@microtime-rs/node`
npm package: @microting/schematics-core
Description: Schematic Utilities
Author: Kevin Schuchard
Latest version: 0.5.2

# schematics-core

[![npm](https://img.shields.io/npm/v/@microting/schematics-core.svg)](https://www.npmjs.com/package/@microting/schematics-core)

A set of utilities for building schematics.

## Getting started

```base
npm install --save-dev @microting/schematics-core
```
npm package: @microui-kit/dynamic-link
Description: DynamicLink is a lightweight, Firebase-free alternative for handling dynamic links and deep links in web and mobile hybrid environments
Author: TinyHref
Latest version: 0.0.7

# DynamicLink

##  Installation

```bash
npm install @tinyhref/dynamic-link
or
yarn add @tinyhref/dynamic-link
```

## Use It

```js
import React from 'react';
import DynamicLink from '@tinyhref/dynamic-link';

const dynamicLinkProps = {
  subdomainUrl: 'https://deeplink.tinyhref.com',
  appStoreUrl: 'https://apps.apple.com/app/apple-store/id1072038396',
  googlePlayUrl: 'https://play.google.com/store/apps/details?id=vn.vtv.vtvgo',
  fallbackUrl: 'https://tinyhref.com'
};

<DynamicLink
  {...dynamicLinkProps}
>
  Open App
</DynamicLink>
```
or

```js
import React from 'react';
import { useOpenDynamicLink } from '@tinyhref/dynamic-link';

const { link } = useOpenDynamicLink({
  subdomainUrl: 'https://deeplink.tinyhref.com',
  appStoreUrl: 'https://apps.apple.com/app/apple-store/id1072038396',
  googlePlayUrl: 'https://play.google.com/store/apps/details?id=vn.vtv.vtvgo',
  fallbackUrl: 'https://tinyhref.com'
});

<a href={link}>
  Open App
</a>
```
npm package: @microui-kit/magic-worker
Description: > Simplifying the use of Web Workers — call worker functions like regular async functions
Latest version: 0.0.7

# MagicWorker

> Simplifying the use of Web Workers — call worker functions like regular async functions

✅ Key Features:
- 🔁 Seamless two-way communication
- 🧠 Clean, developer-friendly API
- ⚡ Ideal for offloading heavy computations
- 🛠️ Supports passing arguments and receiving results like local function calls

##  Installation

```bash
npm install @microui-kit/magic-worker
or
yarn add @microui-kit/magic-worker
```

## Use It

```js
import { MagicWorker } from '@microui-kit/magic-worker';

const worker = MagicWorker.init({
  methods: {
    counter: 0,
    inc() {
      return ++this.counter;
    },
    add(a: number, b: number) {
      return a + b;
    },
    multiply: function(a: number, b: number) {
      console.log('lodash', this._);

      return a * b;
    }
  },
  imports: ['https://unpkg.com/lodash@4.17.21/lodash.js']
});

const channelSharedWorker = MagicWorker.createWorker('channel', {
  isSharedWorker: true,
  workerType: 'module',
  methods: {
    multiply: async (a: number, b: number) => {
      console.log('lodash', lodash)
      
      return a * b;
    }
  },
  imports: {
    'lodash': 'https://esm.sh/lodash-es@4.17.21'
  }
});

(async () => {
  console.log('1 + 1 = ', await worker.add(1, 1));
  console.log('2 * 2 = ', await worker.multiply(2, 2));
})();
```
npm package: @microui-kit/magic-worker-lite
Description: > Simplifying the use of Web Workers — call worker functions like regular async functions
Latest version: 0.0.1

# MagicWorker

> Simplifying the use of Web Workers — call worker functions like regular async functions

✅ Key Features:
- 🔁 Seamless two-way communication
- 🧠 Clean, developer-friendly API
- ⚡ Ideal for offloading heavy computations
- 🛠️ Supports passing arguments and receiving results like local function calls

##  Installation

```bash
npm install @microui-kit/magic-worker
or
yarn add @microui-kit/magic-worker
```

## Use It

```js
import { MagicWorker } from '@microui-kit/magic-worker';

const worker = MagicWorker.init({
  methods: {
    counter: 0,
    inc() {
      return ++this.counter;
    },
    add(a: number, b: number) {
      return a + b;
    },
    multiply: function(a: number, b: number) {
      console.log('lodash', this._);

      return a * b;
    }
  },
  imports: ['https://unpkg.com/lodash@4.17.21/lodash.js']
});

const channelSharedWorker = MagicWorker.createWorker('channel', {
  isSharedWorker: true,
  workerType: 'module',
  methods: {
    multiply: async (a: number, b: number) => {
      console.log('lodash', lodash)
      
      return a * b;
    }
  },
  imports: {
    'lodash': 'https://esm.sh/lodash-es@4.17.21'
  }
});

(async () => {
  console.log('1 + 1 = ', await worker.add(1, 1));
  console.log('2 * 2 = ', await worker.multiply(2, 2));
})();
```
npm package: @microui-kit/use-detect-js-restricted
Description: ##  Installation
Latest version: 1.0.0

# useDetectJsRestricted

##  Installation

```bash
npm install @microui-kit/use-detect-js-restricted
or
yarn add @microui-kit/use-detect-js-restricted
```

## Use It

```js
import { useDetectJsRestricted } from '@microui-kit/use-detect-js-restricted';

const isRestricted = useDetectJsRestricted();

or

useDetectJsRestricted({
  onRestricted: () => {
  },
  isReturnState: false
})
```
npm package: @microui-kit/use-lock-scroll-outside
Description: ```bash npm install @microui-kit/use-lock-scroll-outside or yarn add @microui-kit/use-lock-scroll-outside ```
Latest version: 1.0.5

# useLockScrollOutside

##  Installation

```bash
npm install @microui-kit/use-lock-scroll-outside
or
yarn add @microui-kit/use-lock-scroll-outside
```

## Use It

```js
import React, { useRef } from 'react';
import { useLockScrollOutside } from '@microui-kit/use-lock-scroll-outside';

const dropdownRef = useRef();

useLockScrollOutside(dropdownRef);

return (
  <div ref={dropdownRef}>
    Dropdown
  </div>
)
```
npm package: @microui-kit/use-open-deep-link
Description: ##  Installation
Latest version: 1.1.0

# useOpenDeepLink

##  Installation

```bash
npm install @microui-kit/use-open-deep-link
or
yarn add @microui-kit/use-open-deep-link
```

## Use It

```js
import React from 'react';
import { useOpenDeepLink } from '@microui-kit/use-open-deep-link';

const { openDeepLink } = useOpenDeepLink({
  scheme: 'tinyhref',
  appStoreUrl: 'https://tinyhref.com',
  googlePlayUrl: 'https://tinyhref.com',
  fallbackUrl: 'https://tinyhref.com'
});

<button
  onClick={openDeepLink}
>
  Open App
</button>
```
npm package: @microui-kit/use-open-dynamic-link
Description: useOpenDynamicLink is a lightweight, Firebase-free alternative for handling dynamic links and deep links in web and mobile hybrid environments
Author: TinyHref
Latest version: 0.0.5

# useOpenDynamicLink

##  Installation

```bash
npm install @tinyhref/use-open-dynamic-link
or
yarn add @tinyhref/use-open-dynamic-link
```

## Use It

```js
import React from 'react';
import { useOpenDynamicLink } from '@tinyhref/use-open-dynamic-link';

const { openDynamicLink } = useOpenDynamicLink({
  appStoreUrl: 'https://apps.apple.com/app/apple-store/id1072038396',
  googlePlayUrl: 'https://play.google.com/store/apps/details?id=vn.vtv.vtvgo',
  fallbackUrl: 'https://tinyhref.com'
});

<button
  onClick={openDynamicLink}
>
  Open App
</button>
```
npm package: @microui-kit/use-store
Description: ```bash npm install @microui-kit/use-store or yarn add @microui-kit/use-store ```
Latest version: 1.1.7

# useStore

##  Installation

```bash
npm install @microui-kit/use-store
or
yarn add @microui-kit/use-store
```

## Use It

```js
import React, { useRef } from 'react';
import { useStore, StoreProvider, useStoreContext } from '@microui-kit/use-store';

const { useStoreSelector, handlers } = useStore({
  storeKey: 'list-store',
  initialState: {
    activeIndex: 0,
    hasMore: false
  },
  handlers: ({ setState }) => {
    return {
      updateState: (dataState) => {
        setState(dataState);
      }
    };
  }
});

or

const Component = () => {
  const storeMethods = useStoreContext();

  const { useStoreSelector, handlers } = storeMethods;

  return (
    <div>Component</div>
  )
}

<StoreProvider
  storeKey="list-store"
  initialState={{
    activeIndex: 0,
    hasMore: false
  }}
  handlers={({ setState }) => {
    return {
      updateState: (dataState) => {
        setState(dataState);
      }
    };
  }}
>
  <Component/>
</StoreProvider>
```
npm package: @microui-kit/use-window-dimensions
Description: ##  Installation
Latest version: 1.0.1

# useWindowDimensions

##  Installation

```bash
npm install @microui-kit/use-window-dimensions
or
yarn add @microui-kit/use-window-dimensions
```

## Use It

```js
import React from 'react';
import { useWindowDimensions } from '@microui-kit/use-window-dimensions';

const { width, height } = useWindowDimensions();

or

// set property to html tag for use in CSS: var(--app-width), var(--app-height)
useWindowDimensions({
  isSetProperty: true,
  isReturnDimensions: false
});
```
npm package: @microup/utils
Description: ## 做什么
Author: wuzhan
Latest version: 1.0.0-main-1.0.0.20230823203256

# microup-utils

## 做什么

microup-utils 包是整个项目公用的组件包，项目内所有的 remote 模块（例如 app1 服务）、boot 包、master 包都会依赖这个包，也可以引用其中的工具。

**引用方式**

```js
// 引入方式了，例如引入 loading 组件
import {Loading} from '@microup/utils';
```

## 使用

首先安装依赖（推荐使用 pnpm）

```
pnpm i
```

utils 包本身使用 [dumi ](https://d.umijs.org/)搭建，运行 start 可以以在线文档形式查看当前工具库，更方便工具查询。

```
npm run start
```

打包

```
npm run compile
```
npm package: @microverse-dev/hardhat-kms-signer
Description: Hardhat plugin for GCP KMS Signer
Author: microverse inc
Latest version: 1.0.1

# Hardhat Google Cloud KMS Signer

This plugin signs Ethereum transaction using KMS key during deployments.

- Inspired by [@rumblefishdev/hardhat-kms-signer](https://github.com/rumblefishdev/hardhat-kms-signer)

## Usage

It's assumed that you have AWS access configured and your role perform kms:sign using KMS key.

In `hardhat.config.ts` do:

```
import "@microverse-dev/hardhat-kms-signer";

...

const config: HardhatUserConfig = {
  ...
  networks: {
    goerli: {
      url: "https://goerli.infura.io/v3/{infura-key}",
      kmsResourceName: "projects/{project}/locations/asia1/keyRings/{key-ring-name}/cryptoKeys/{key-name}/cryptoKeyVersions/{version}",
      chainId: 5,
    },
  }
  ...
}
```

## License

- hardhat: MIT - See [LICENSE][hardhet-license] for more information.
- @microverse-dev/hardhat-gcp-kms-signer: MIT - See [LICENSE][license] for more information.

[hardhet-license]: https://github.com/NomicFoundation/hardhat/blob/main/LICENSE
[license]: LICENSE
npm package: @microweber-email-builder/document-core
Description: Tools to render waypoint-style documents (core package)
Latest version: 0.1.0

# @microweber-email-builder/document-core

This is the core library used to build the email messages at [Waypoint](https://www.usewaypoint.com). It is non-opinionated and light on dependencies so that it can be used to compose complex documents.

> [!WARNING]
> This library is still under development and the final interface is subject
> to change

## Installation

**Installation with npm**

```
npm install --save @microweber-email-builder/document-core
```

## Usage

The root of the library is the `DocumentBlocksDictionary` dictionary. This is a mapping of block names to an object with a zod schema and a corresponding React Component.

```
const dictionary = {
  Alert: {
    schema: z.object({
      message: z.string(),
    }),
    Component: ({ message }: { message: string }) => {
      return <div>{message.toUpperCase()}</div>
    }
  }
}
```

This dictionary object is passed as an argument to the builder functions.

### `buildBlockComponent`

```
const Block = buildBlockComponent(dictionary);

<Block type="Alert" data={{message: 'Hello World' }} />
```

### `buildBlockConfigurationSchema`

```
const Schema = buildBlockConfigurationSchema(dictionary);

const parsedData = Schema.safeParse({
  type: 'Alert',
  data: { message: 'Hello World' },
});
```