diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..2e1ba3c
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,77 @@
+## changelog
+
+## 0.6.0
+
+已支持编辑模式使用Iframe!
+
+修复选中条件。
+
+
+## 0.5.1
+
+修复右侧选中不能取消选中问题。
+
+## 0.5.0
+
+修复control组件宽度不够问题。
+
+移除antd自定义icon,容器底部icon可配置。
+
+## 0.4.2
+
+修复animate错误初始值。
+
+修改markline样式。
+
+全局设置增加容器高度。
+## 0.4.1
+
+去除lib自动导入样式。
+
+## 0.4.0
+
+去除runtime导出,所有属性从config中获取。
+
+## 0.3.1
+
+1、由uuid更换为nanoid。
+
+2、control组件增加标尺控制。
+
+## 0.3.0
+
+1、增加标尺,ContainerWrapper需要传递config才可使用。
+
+2、修改容器最小拖动667。修复画布缩放下拖拽时与鼠标距离不一致。
+
+3、innerContainerDragUp需要传递config。
+
+## 0.2.0
+
+commander的传递进行修改,可以获得config了,commander不再从index中导出 ,需要使用时从config中获取。增加左侧类名,方便自定义。
+
+## 0.1.10
+
+修改eslint依赖推荐
+
+
+## 0.1.9
+
+增加全局body设置
+
+## 0.1.8
+
+增加弹窗设置,移除modalContainer
+
+## 0.1.7
+
+修改预览特殊条件显示,删除console
+## 0.1.6
+
+调整初始缩放,画布初始比例,增加回正画布功能。
+## 0.1.5
+
+删除未作按钮,增加fixed配置
+## 0.1.4
+
+基础功能
diff --git a/package.json b/package.json
index d39a29b..494231f 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,8 @@
"start:doc":"lerna exec npm run start --scope=dooringx-doc",
"build": "lerna exec npm run build --scope=dooringx-lib",
"deploy": "lerna exec npm run deploy --scope=dooringx-doc",
- "pub": "node ./script/publish.js"
+ "pub": "node ./script/publish.js",
+ "changelog": "node ./script/changelog.js"
},
"private": true,
"devDependencies": {
diff --git a/packages/dooringx-doc/src/api/1.1.md b/packages/dooringx-doc/src/api/1.1.md
new file mode 100644
index 0000000..7c02deb
--- /dev/null
+++ b/packages/dooringx-doc/src/api/1.1.md
@@ -0,0 +1,9 @@
+---
+title: 待定
+sTitle: API
+order: 1
+---
+
+## 待定
+
+
diff --git a/packages/dooringx-doc/src/api/dd.md b/packages/dooringx-doc/src/api/dd.md
deleted file mode 100644
index bbc6734..0000000
--- a/packages/dooringx-doc/src/api/dd.md
+++ /dev/null
@@ -1,15 +0,0 @@
----
-title: xcxzc
-sTitle: vc
-order: 4
----
-
-## dsas
-
-saff
-sa
-d
-ad
-sa
-d
-fsad
diff --git a/packages/dooringx-doc/src/changelog/1.1.md b/packages/dooringx-doc/src/changelog/1.1.md
index b308a3b..6302f0e 100644
--- a/packages/dooringx-doc/src/changelog/1.1.md
+++ b/packages/dooringx-doc/src/changelog/1.1.md
@@ -1,8 +1,11 @@
+
---
title: CHANGELOG
order: 1
---
+## changelog
+
## 0.6.0
已支持编辑模式使用Iframe!
@@ -13,6 +16,7 @@ order: 1
## 0.5.1
修复右侧选中不能取消选中问题。
+
## 0.5.0
修复control组件宽度不够问题。
@@ -26,7 +30,6 @@ order: 1
修改markline样式。
全局设置增加容器高度。
-
## 0.4.1
去除lib自动导入样式。
@@ -77,4 +80,4 @@ commander的传递进行修改,可以获得config了,commander不再从index
删除未作按钮,增加fixed配置
## 0.1.4
-基础功能
\ No newline at end of file
+基础功能
diff --git a/packages/dooringx-doc/src/docs/1.3.md b/packages/dooringx-doc/src/docs/1.3.md
index 53b1655..89a2db4 100644
--- a/packages/dooringx-doc/src/docs/1.3.md
+++ b/packages/dooringx-doc/src/docs/1.3.md
@@ -12,4 +12,249 @@ order: 3
npm i dooringx-lib
```
+dooringx-lib在编辑时提供两种容器,可以根据需要选择使用。
+
+一种是普通容器,一种是iframe容器,这2种容器在某些实现上略有不同。
+
+使用普通容器即在编辑时为普通的div并非iframe,而使用iframe则编辑时看见的为iframe内容。在预览时,使用preview组件,preview可以放到任何容器,包括去使用iframe查看。
+
+普通容器使用参考demo:
+
+```js
+import {
+ RightConfig,
+ Container,
+ useStoreState,
+ innerContainerDragUp,
+ LeftConfig,
+ ContainerWrapper,
+ Control,
+} from 'dooringx-lib';
+import { useContext } from 'react';
+import { configContext } from '@/layouts';
+import { useCallback } from 'react';
+import { PREVIEWSTATE } from '@/constant';
+
+export const HeaderHeight = '40px';
+
+export default function IndexPage() {
+ const config = useContext(configContext);
+
+ const everyFn = () => {};
+
+ const subscribeFn = useCallback(() => {
+ localStorage.setItem(PREVIEWSTATE, JSON.stringify(config.getStore().getData()));
+ }, [config]);
+
+ const [state] = useStoreState(config, subscribeFn, everyFn);
+
+ return (
+
+
+ head
+ {
+ window.open('/iframe');
+ }}
+ >
+ go preview
+
+ {
+ window.open('/preview');
+ }}
+ >
+ go preview
+
+
+
+
+
+
+
+
+ <>
+
+
+ >
+
+
+
+
+
+
+ );
+}
+```
+
+
+iframe容器使用参考demo:
+
+
+index.tsx
+```js
+import {
+ RightConfig,
+ useStoreState,
+ innerContainerDragUp,
+ LeftConfig,
+ IframeContainerWrapper,
+ Control,
+ useIframeHook,
+ IframeTarget,
+} from 'dooringx-lib';
+import { useContext } from 'react';
+import { configContext } from '@/layouts';
+import { useCallback } from 'react';
+import { PREVIEWSTATE } from '@/constant';
+
+export const HeaderHeight = '40px';
+
+export default function IndexPage() {
+ const config = useContext(configContext);
+
+ const subscribeFn = useCallback(() => {
+ localStorage.setItem(PREVIEWSTATE, JSON.stringify(config.getStore().getData()));
+ }, [config]);
+
+ const [state] = useStoreState(config, subscribeFn);
+ useIframeHook(`${location.origin}/container`, config);
+
+ return (
+
+
+ head
+ {
+ window.open('/iframe');
+ }}
+ >
+ go preview
+
+ {
+ window.open('/preview');
+ }}
+ >
+ go preview
+
+
+
+
+
+
+
+
+ }
+ >
+
+
+
+
+
+
+
+ );
+}
+```
+
+container 路由:
+
+```js
+import { configContext } from '@/layouts';
+import { useContext } from 'react';
+import { IframeContainer } from 'dooringx-lib';
+
+function ContainerPage() {
+ const config = useContext(configContext);
+ return (
+
+
+
+ );
+}
+
+export default ContainerPage;
+```
+
+
+
+预览时preview套iframe:
+
+```html
+
+
+
+```
+preview路由:
+
+```js
+import { PREVIEWSTATE } from '@/constant';
+import { Preview, UserConfig } from 'dooringx-lib';
+import plugin from '../../plugin';
+
+const config = new UserConfig(plugin);
+
+function PreviewPage() {
+ const data = localStorage.getItem(PREVIEWSTATE);
+ if (data) {
+ try {
+ const json = JSON.parse(data);
+ config.resetData([json]);
+ } catch {
+ console.log('err');
+ }
+ }
+ return (
+
+ );
+}
+
+export default PreviewPage;
+```
+
有关 api 部分请参考 api
diff --git a/packages/dooringx-doc/src/lib/Header/index.svelte b/packages/dooringx-doc/src/lib/Header/index.svelte
index b2cf1fb..dffdf82 100644
--- a/packages/dooringx-doc/src/lib/Header/index.svelte
+++ b/packages/dooringx-doc/src/lib/Header/index.svelte
@@ -3,7 +3,7 @@
import { base } from '$app/paths';
import Button from '../Button/index.svelte';
import Switch from '../Switch/index.svelte';
- import logo from './svelte-logo.svg';
+ import logo from './logo.svg';
import { getContext } from 'svelte';
import type { Writable } from 'svelte/store';
const lang = getContext>('lang');
@@ -37,7 +37,7 @@
更新
- Github
+ Github
+ dooringX图标@1x
+ Created with Sketch.
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/dooringx-doc/src/lib/Header/svelte-logo.svg b/packages/dooringx-doc/src/lib/Header/svelte-logo.svg
deleted file mode 100644
index 49492a8..0000000
--- a/packages/dooringx-doc/src/lib/Header/svelte-logo.svg
+++ /dev/null
@@ -1 +0,0 @@
-svelte-logo
\ No newline at end of file
diff --git a/packages/dooringx-doc/static/favicon.png b/packages/dooringx-doc/static/favicon.png
index 825b9e6..0c0b8fb 100644
Binary files a/packages/dooringx-doc/static/favicon.png and b/packages/dooringx-doc/static/favicon.png differ
diff --git a/packages/dooringx-example/src/pages/iframeTest.tsx b/packages/dooringx-example/src/pages/iframeTest.tsx
index 14085ec..7e674ad 100644
--- a/packages/dooringx-example/src/pages/iframeTest.tsx
+++ b/packages/dooringx-example/src/pages/iframeTest.tsx
@@ -2,13 +2,12 @@
* @Author: yehuozhili
* @Date: 2021-07-17 10:12:11
* @LastEditors: yehuozhili
- * @LastEditTime: 2021-07-20 16:16:33
+ * @LastEditTime: 2021-07-20 17:08:37
* @FilePath: \dooringx\packages\dooringx-example\src\pages\iframeTest.tsx
*/
import {
RightConfig,
- Container,
useStoreState,
innerContainerDragUp,
LeftConfig,
@@ -27,13 +26,11 @@ export const HeaderHeight = '40px';
export default function IndexPage() {
const config = useContext(configContext);
- const everyFn = () => {};
-
const subscribeFn = useCallback(() => {
localStorage.setItem(PREVIEWSTATE, JSON.stringify(config.getStore().getData()));
}, [config]);
- const [state] = useStoreState(config, subscribeFn, everyFn);
+ const [state] = useStoreState(config, subscribeFn);
useIframeHook(`${location.origin}/container`, config);
return (
diff --git a/script/changelog.js b/script/changelog.js
new file mode 100644
index 0000000..7461cbe
--- /dev/null
+++ b/script/changelog.js
@@ -0,0 +1,34 @@
+/*
+ * @Author: yehuozhili
+ * @Date: 2021-07-20 17:38:03
+ * @LastEditors: yehuozhili
+ * @LastEditTime: 2021-07-20 19:23:46
+ * @FilePath: \dooringx\script\changelog.js
+ */
+
+const fs = require('fs-extra');
+const path = require('path');
+const changelog = path.resolve(process.cwd(), 'CHANGELOG.md');
+const doclog = path.resolve(
+ process.cwd(),
+ 'packages',
+ 'dooringx-doc',
+ 'src',
+ 'changelog',
+ '1.1.md'
+);
+const isExist = fs.existsSync(doclog);
+if (isExist) {
+ fs.removeSync(doclog);
+}
+
+const prepend = `
+---
+title: CHANGELOG
+order: 1
+---
+
+`;
+
+const data = prepend + fs.readFileSync(changelog).toString();
+fs.writeFileSync(doclog, data);