open-index/open-npm huggingface dataset:
npm package: @lithent/lithent-mdx
Description: Vite plugin for MDX support in Lithent applications
Author: superlucky84
Latest version: 0.2.6

# @lithent/lithent-mdx

Official Vite plugin that tailors the MDX toolchain for Lithent.

## Features
- **Lithent-focused JSX config**: Sets `jsxImportSource` so MDX JSX renders through the Lithent runtime.
- **Automatic `mount()` wrapping**: Wraps the MDX default export with Lithent `mount()` to preserve state during HMR.
- **Configurable pipeline**: Pass any `@mdx-js/rollup` options via `mdxOptions`.
- **TypeScript ready**: Includes type definitions across the package.

## Installation

```bash
pnpm add -D @lithent/lithent-mdx @mdx-js/rollup
```

Required peer dependencies:
- `lithent` `^1.21.0`
- `vite` `^5.0.0`
- `@lithent/lithent-vite` `^0.2.3` for end-to-end HMR support

## Usage

```ts
// vite.config.ts
import { defineConfig } from 'vite';
import lithentMdx from '@lithent/lithent-mdx';
import lithentVite from '@lithent/lithent-vite';

export default defineConfig({
  plugins: [
    lithentMdx({
      mdxOptions: {
        remarkPlugins: [],
        rehypePlugins: [],
      },
    }),
    lithentVite(),
  ],
});
```

With the plugin enabled, `.mdx` files are transformed into Lithent components and wrapped with `mount()`. Adjust `jsxImportSource` if you need a different Lithent entry point (for example `lithent/helper`).

## Development & Testing

```bash
pnpm --filter @lithent/lithent-mdx dev   # Launch MDX playground
pnpm --filter @lithent/lithent-mdx test  # Run Vitest on the transform helpers
```

Open `http://localhost:5173/html/index.html` after starting the dev server to inspect the live MDX example.
npm package: @lithiamotors/lpp-modals
Description: Collection of modal components for the lpp platform
Author: Cory Morrissey
Latest version: 2.0.3

## `@lithiamotors/lpp-general-modal`

---

## General Modal Implementation

```
import React, { useState } from 'react';
import LppGeneralModal from '@lithiamotors/lpp-general-modal';

const GeneralModalExample = () => {
	const [open, setOpen] = useState(false);

	return (
		<div>
			<button onClick={() => setOpen(true)}>Open Modal</button>
			<LppGeneralModal
				showModal={open}
				onDismiss={() => setOpen(false)}
				content={content}
				mainCallback={() => alert('Submitted!!')}
				title="Lpp General Modal"
				submitText="Submit"
				cancelText="Cancel"
				noSubmit={false}
				noCancel={false}
				noButtons={false}
				disableSubmit={false}
			/>
		</div>
	);
}
```

## Bulk Edit Modal Implementation

```
import React, { useState } from 'react';
import { LppBulkEditModal } from '@lithiamotors/lpp-general-modal';

const BulkEditExample = () => {
	const [showBulkEditModal, setShowBulkEditModal] = useState(false);

	const valuesToBeEdited = [{name: 'cory'}, {name: 'andy'}, {name: 'daylon'}]

	const bulkEditOptions = [{
		attribute: 'name',
		formInputType: 'select',
		values: ['cory', 'andy', 'daylon'],
	}]

	const handleBulkEditCommit = (bulkEditData) => {
		const mutatedRecords = valuesToBeEdited.map((item) => ({
			...item,
			...bulkEditData,
		}));
		console.log(mutatedRecords);
	};

	return (
		<div>
			<button onClick={() => setOpen(true)}>Open Modal</button>
			<LppBulkEditModal
				bulkEditOptions={bulkEditOptions}
				showBulkEditModal={open}
				setShowBulkEditModal={setOpen}
				handleBulkEditCommit={handleBulkEditCommit}
			/>
		</div>
	);
}
```
### Version 2.0.2 (develop)

- Fix to the input fields that caused a label misalignment


### Version 2.0.0 (feature/cmorrissey-79229)

- Upgraded to MUI v5
- Changed file attribute from `lib` to `dist`

### Version 1.0.0 (feature/cmorrissey-42889)

- BREAKING CHANGE
- Changed general modal archetecture to be a collection of modals instead of a single default export

- Added LppBulkEditModal
- Added disableEnforceFocus prop, was causing stack overflow when symlinking to other packages

### Version 1.0.0-alpha.0

- Copied modal from ESCALADE app
- Changed <></> to <React.Fragment></React.Fragment> to work with microbundle-crl
npm package: @lithiamotors/lpp-rich-text-editor
Description: > TODO: description
Author: Cory Morrissey
Latest version: 1.0.1

## `@lithiamotors/lpp-rich-text-editor`

---

### Implementation

```
import React, { useState } from 'react';
import LppRichTextEditor from '@lithiamotors/lpp-rich-text-editor';

const RichTextEditor = () => {
	const [value, setValue] = useState('');

	const onChange = (e) => setValue(e.html);
	return (
			<div style={{ width: '700px' }}>
				<LppRichTextEditor value={value} onChange={onChange}/>
				<div
					style={{
						display: 'flex',
						justifyContent: 'flex-end',
						marginTop: '8px',
					}}
				>
					<button onClick={() => alert(value)}>Submit</button>
				</div>
			</div>
	);
};
```

---

### Version 1.0.0 (bug/cmorrissey-89856)

- Changed file attribute from `lib` to `dist`

### Version 1.0.0-alpha.1 (feature/cmorrissey-45951)

- Added value prop to Editor (Forgot in base architectural work)
- Added clear button to story

### Version 1.0.0-alpha.0 (feature/cmorrissey-45951)

- Base architectural work
- Fixed text functions (bold, italic), no way to control from host app
- Initial Storybook example working
npm package: @lithiumjs/angular
Description: Reactive components made easy. Lithium provides utilities that enable seamless reactive state and event interactions for Angular components.
Author: Mychal Thompson
Latest version: 9.0.0

# Lithium for Angular (@lithiumjs/angular)

Reactive components made easy! Lithium provides utilities that enable seamless reactive state and event interactions for Angular components.

Check out the [full README](https://github.com/lVlyke/lithium-angular/blob/master/README.md) for more information.

## Features

* **Reactive component state**

    Lithium's `ComponentStateRef` service exposes a type-safe representation of component state properties as Subjects, allowing for observation of the component's full state automatically:
```ts
import { ComponentState, ComponentStateRef } from '@lithiumjs/angular';

@Component({
    ...
    providers: [ComponentState.create(MyComponent)]
})
class MyComponent {

    public value = 0;

    constructor (stateRef: ComponentStateRef<MyComponent>) {
        stateRef.get('value').subscribe(value => console.log("value: ", value));

        this.value = 100;
    }

    // Output:
    // value: 0
    // value: 100
}
```

* **Reactive lifecycle decorators**

    Lithium adds support for reactive component events, including decorators for component lifecycle events:
```ts
import { OnInit } from '@lithiumjs/angular';

@Component({...})
class MyComponent {

    @OnInit() 
    private readonly onInit$: Observable<void>;

    constructor () {
        this.onInit$.subscribe(() => console.log("Reactive ngOnInit!"));
    }
}
```
* **Works with Angular component decorators**
    
    You can use Angular's built-in component decorators with Lithium. Use an `@Input` as a Subject and listen to a `@HostListener` event as an Observable!
* **Zoneless change detection made easy**

    By tracking component state changes automatically, Lithium's **AutoPush** feature allows you to easily write more performant components using [Zoneless](https://angular.dev/guide/zoneless) change detection and [OnPush](https://angular.dev/api/core/ChangeDetectionStrategy).
* **Beyond `async`**

    Lithium automatically manages subscription lifetimes just like Angular's [async pipe](https://angular.dev/api/common/AsyncPipe), without the syntax overhead.

## Installation

Lithium can be installed [via **npm**](https://www.npmjs.com/package/@lithiumjs/angular) using the following command:

```bash
npm install @lithiumjs/angular
```

## More information

Check out the [full README](https://github.com/lVlyke/lithium-angular/blob/master/README.md) for more information, including usage guides and API documentation.
npm package: @lithiumjs/ionic
Description: Reactive Ionic lifecycle extensions for @lithiumjs/angular.
Author: Mychal Thompson
Latest version: 2.0.0

# Lithium for Ionic (@lithiumjs/ionic)

Reactive Ionic navigation lifecycle extensions for [@lithiumjs/angular](https://github.com/lVlyke/lithium-angular).

## Installation

Lithium for Ionic depends on [Lithium for Angular](https://github.com/lVlyke/lithium-angular). Both can be installed [via **npm**](https://www.npmjs.com/package/@lithiumjs/ionic) using the following command:

```bash
npm install @lithiumjs/angular @lithiumjs/ionic
```

## Example

```ts
@Component({...})
class IonicPage {

    @ViewDidEnter() private viewDidEnter$: Observable<void>;

    constructor () {
        this.viewDidEnter$.subscribe(() => console.log("View was entered."));
    }
}
```

## API

### Ionic NavController Lifecycle ```EventSource``` decorators

These decorators create observables for all Ionic navigation lifecycle events:

#### ```ViewDidLoad```

```ts
function ViewDidLoad(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).

#### ```ViewWillEnter```

```ts
function ViewWillEnter(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).

#### ```ViewDidEnter```

```ts
function ViewDidEnter(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).

#### ```ViewWillLeave```

```ts
function ViewWillLeave(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).

#### ```ViewDidLeave```

```ts
function ViewDidLeave(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).

#### ```ViewWillUnload```

```ts
function ViewWillUnload(options?: EventSource.DecoratorOptions, ...methodDecorators: MethodDecorator[]): PropertyDecorator
```

See [**```EventSource```**](https://github.com/lVlyke/lithium-angular#eventsource-1).
npm package: @lithiumjs/ngx-material-theming
Description: Dynamic and customizable Angular Material theming made easy.
Author: Mychal Thompson
Latest version: 2.0.0

# @lithiumjs/ngx-material-theming

Dynamic and customizable Angular Material theming made easy. Powered by [@lithiumjs/angular](https://github.com/lVlyke/lithium-angular).

## Features

* **SCSS mixins** make creating themes easy.
* **Extend Material themes** with your own styles for your custom components and overrides.
* **Change themes at run-time** with the `ThemeContainer` directive.
* **Nested theme support** - Apply multiple themes independently to any part of your app.
* **Offline theme compilation** of SCSS themes using the provided `ltc` CLI tool.
* **Run-time theme creation** - True dynamic themes; Easily generate brand new themes at runtime.

## Getting started

* Check out the [quick start guide](/docs/quick-start.md).
* Take a look at the [example app](https://github.com/lVlyke/lithium-ngx-material-theming-example) and [live demo](https://lvlyke.github.io/lithium-ngx-material-theming-example/).

## Notice - Angular 18 Material 3 Update

v18 of Angular Material introduces official support for Material 3-based themes, with the old Material 2-based theme utilities being prefixed with `m2`. ngx-material-theming matches this behavior by prefixing all Material 2 theming utilities with `m2`.

ngx-material-theming does not currently support Material 3 theming.

## Other information

* [@lithiumjs/angular](https://github.com/lVlyke/lithium-angular)
npm package: @lithiumjs/ngx-material-theming-templates
Description: Basic run-time theme templates for @lithiumjs/ngx-material-theming
Author: Mychal Thompson
Latest version: 2.0.0

# @lithiumjs/ngx-material-theming-templates

Pre-compiled theme templates for [@lithiumjs/ngx-material-theming](https://github.com/lVlyke/lithium-ngx-material-theming). 

## About

The included theme templates in this project are compiled directly from the default Angular Material styles and can be used to generate themes at run-time using [@lithiumjs/ngx-material-theming](https://github.com/lVlyke/lithium-ngx-material-theming). 

## Themes

* `standard-dark-theme`
* `standard-light-theme`