open-index/open-npm huggingface dataset:
npm package: @mbfff/iframe-adapter
Description: 适配选人组件iframe通信插件
Author: meibo
Latest version: 1.0.8

# @mbfff/iframe-adapter

适配选人组件 iframe 通信插件

## 安装

```bash
pnpm i @mbfff/iframe-adapter
```

## 使用

#### Vue3

```vue
<script lang="ts" setup>
    import { ref, onBeforeUnmount } from 'vue'
    import IframeAdapter from '@mbfff/iframe-adapter'

    // 组件url
    const url = `http://xxx`
    // 组件初始值
    const selectList = ref([
        {
            id: '1',
            empName: '张三',
            mobile: '12345678901',
        },
    ])
    const iframeAdapter = IframeAdapter.getInstance({
        url,
        userInfo: {
            empId: '1',
            onconUUID: '1',
            enterCode: '1',
        },
        onSubmit: data => {
            console.log('用户选择的数据:', data)
        },
        onClose: () => {
            console.log('用户取消选择')
        },
    })

    const handleSelect = () => {
        iframeAdapter.show(selectList.value)
    }

    onBeforeUnmount(() => {
        iframeAdapter?.destroy()
    })
</script>

<template>
    <div class="m-page-su-example">
        <el-button type="primary" @click="handleSelect">选择联系人</el-button>

        <div>所选人员数据： {{ selectList }}</div>
    </div>
</template>

<style lang="scss" scoped>
    .m-page-su-example {
        width: 100%;
        height: 100vh;
        padding: 15px;
    }
</style>
```

## API

-   getInstance(options:IframeAdapterOptions)：获取实例，options 配置项

    ```typescript
    interface IframeAdapterOptions {
        url: string // 要嵌入的地址
        userInfo: {
            empId: string | number // 员工id
            onconUUID: string // uuid
            enterCode: string // 企业编码
        } // 用户信息
        width?: string // iframe宽度-pc端生效，默认800px
        height?: string // iframe高度-pc端生效，默认600px
        borderRadius?: string // iframe圆角-pc端生效，默认8px
        onSubmit: (data: any) => void // 提交操作回调
        onClose?: () => void // 关闭页面回调
    }
    ```

-   show(initData:InitDataItem[])：组件展示，initData 初始化数据

    ```typescript
    interface InitDataItem {
        id: string | number // 员工id
        empName: string // 员工姓名
        mobile: string // 手机号
        [k: string]: any
    }
    ```

-   hide()：组件隐藏

-   destroy()：组件销毁
npm package: @mbforbes/eleventy-img
Description: Low level utility to perform build-time image transformations. Fork of @11ty/eleventy-img with skipOriginalProcessing optimization.
Author: Zach Leatherman
Latest version: 7.0.0-gamma.1

<p align="center"><img src="https://www.11ty.dev/img/logo-github.svg" width="200" height="200" alt="eleventy Logo"></p>

# eleventy-img

Requires Node 18+

Low level utility to perform build-time image transformations for both vector and raster images. Output multiple sizes, save multiple formats, cache remote images locally. Uses the [sharp](https://sharp.pixelplumbing.com/) image processor.

You maintain full control of your HTML. Use with `<picture>` or `<img>` or CSS `background-image`, or others! Works great to add `width` and `height` to your images!

## [The full `eleventy-img` documentation is on 11ty.dev](https://www.11ty.dev/docs/plugins/image/).

* _This is a plugin for the [Eleventy static site generator](https://www.11ty.dev/)._
* Find more [Eleventy plugins](https://www.11ty.dev/docs/plugins/).
* Please star [Eleventy on GitHub](https://github.com/11ty/eleventy/), follow [@eleven_ty](https://twitter.com/eleven_ty) on Twitter, and support [11ty on Open Collective](https://opencollective.com/11ty)

[![npm Version](https://img.shields.io/npm/v/@11ty/eleventy-img.svg?style=for-the-badge)](https://www.npmjs.com/package/@11ty/eleventy-img) [![GitHub issues](https://img.shields.io/github/issues/11ty/eleventy-img.svg?style=for-the-badge)](https://github.com/11ty/eleventy-img/issues)

## Installation

```
npm install --save-dev @11ty/eleventy-img
```

_[The full `eleventy-img` documentation is on 11ty.dev](https://www.11ty.dev/docs/plugins/image/)._

## Tests

```
npm run test
```

- We use the [ava JavaScript test runner](https://github.com/avajs/ava) ([Assertions documentation](https://github.com/avajs/ava/blob/master/docs/03-assertions.md))
- ℹ️ To keep tests fast, thou shalt try to avoid writing files in tests.

## Community Roadmap

- [Top Feature Requests](https://github.com/11ty/eleventy-img/issues?q=label%3Aneeds-votes+sort%3Areactions-%2B1-desc+label%3Aenhancement) (Add your own votes using the 👍 reaction)
- [Top Bugs 😱](https://github.com/11ty/eleventy-img/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc) (Add your own votes using the 👍 reaction)
- [Newest Bugs 🙀](https://github.com/11ty/eleventy-img/issues?q=is%3Aopen+is%3Aissue+label%3Abug)