ui-process-h5 0.1.15 → 0.1.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/style.css ADDED
@@ -0,0 +1 @@
1
+ .tops-tab[data-v-baad7ff1]{height:100%}.tops-tab-header[data-v-baad7ff1]{display:flex;width:100%;height:45px;font-size:14px;color:#333;padding:10px 17px;font-weight:500;box-sizing:border-box;overflow-x:auto;white-space:nowrap;flex-wrap:nowrap;flex-shrink:0;-ms-overflow-style:none;position:relative;background-color:#fff}.tops-tab-header[data-v-baad7ff1]:after{content:"";position:absolute;width:100%;height:1px;background-color:#f2f2f2;left:0;bottom:0;z-index:10}.tops-tab-header[data-v-baad7ff1]::-webkit-scrollbar{display:none}.tops-tab-header-items[data-v-baad7ff1]{white-space:nowrap;padding-right:10px;box-sizing:border-box;display:inline-block;height:100%;text-align:center;margin-right:32px;font-weight:400;font-size:15px;text-align:left;color:#333;display:flex;align-items:center}.tops-tab-header-items[data-v-baad7ff1]:last-child{padding-right:0;margin-right:0}.tops-tab-header .active[data-v-baad7ff1]{position:relative;color:#1389ff;font-family:PingFang SC Bold;font-weight:700;font-size:15px;text-align:left}.tops-tab-header .bottom-line[data-v-baad7ff1]{width:30px;height:3px;border-radius:1.5px;background-color:#1389ff;position:absolute;bottom:1px;left:0;z-index:12}.tops-tab-body[data-v-baad7ff1]{height:100%}.seal-list__item[data-v-baad7ff1]{padding:6px 10px 0;margin:10px 10px 0;background-color:#fff;border-radius:10px;box-sizing:border-box}.seal-list__item[data-v-baad7ff1]:last-child{margin-bottom:70px}.seal-list__item .seal-list__item--header[data-v-baad7ff1]{margin-bottom:6px;display:flex;align-items:center}.seal-list__item .seal-list__item--header span[data-v-baad7ff1]:first-of-type{font-size:15px;margin-right:6px;font-weight:700}.seal-list__item .seal-list__item--option[data-v-baad7ff1]{display:flex;justify-content:space-between;align-items:center;font-size:14px;padding:10px 0;color:#333}.seal-list__item .seal-list__item--option span[data-v-baad7ff1]:last-child{max-width:144px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#888}.seal-list__item .seal-list__item--attch[data-v-baad7ff1]{font-size:14px;padding:10px 0;color:#333;text-align:right;color:#1389ff}.seal-list__item .seal-list__item--actions[data-v-baad7ff1]{margin-top:12px;position:relative;display:flex;justify-content:space-around;align-items:center}.seal-list__item .seal-list__item--actions[data-v-baad7ff1] :before{content:"";top:0;width:100%;transform:scaleY(.5);transform-origin:top;border-top:1px #e8e8e8 solid;position:absolute}.seal-list__item .seal-list__item--actions .van-button[data-v-baad7ff1]{width:50%}.seal-list__item .seal-list__item--actions .van-button[data-v-baad7ff1] :after{content:"";height:60%;border-left:1px #e8e8e8 solid;position:absolute;left:100%;top:50%;transform:translate(-50%,-50%) scaleX(.5);transform-origin:left}.seal-list__item .seal-list__item--actions .van-button[data-v-baad7ff1]:last-child :after{content:none}.top-popup[data-v-474e328a]{width:100%;height:80vh;position:fixed;left:0;background-color:#fff;z-index:199;border-radius:20px 20px 0 0;padding:0 10px;box-sizing:border-box;transition:all .5s ease;bottom:0}.top-popup-mask[data-v-474e328a]{position:fixed;width:100vw;height:100vh;background-color:#000;opacity:.7;top:0;left:0;z-index:99}.top-popup-header[data-v-474e328a]{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.top-popup-header .header-cancel[data-v-474e328a],.top-popup-header .header-comfig[data-v-474e328a]{color:#1389ff}.fade-enter-active[data-v-474e328a],.fade-leave-active[data-v-474e328a]{transition:all .5s ease}.fade-enter[data-v-474e328a],.fade-leave-to[data-v-474e328a]{bottom:-100%}.fade-enter-to[data-v-474e328a],.fade-leave[data-v-474e328a]{bottom:0d}.top-button[data-v-156a54e6]{width:100%;border-radius:20px;height:36px;background-color:#3c9cff;color:#fff;font-size:14px;justify-content:center;display:flex;align-items:center}.process-warp[data-v-41bcbb23]{overflow:hidden;height:100vh;width:100%;position:relative;background-color:#f3f3f7}.process-main[data-v-41bcbb23]{display:flex;justify-content:space-between;flex-direction:column;align-items:center;padding:0 17px;background:#fff;margin:0 0 10px}.process-main .border[data-v-41bcbb23]{border-bottom:#e8e8e8 1px solid}.process-main .process-ml-item[data-v-41bcbb23]{display:flex;align-items:center;font-size:15px;font-weight:400;width:100%;justify-content:space-between;height:44px}.process-main .process-ml-item .process-mli-name[data-v-41bcbb23]{color:#333}.process-main .process-ml-item .process-mli-value[data-v-41bcbb23]{color:#888}.process-main .process-ml-item .process-mli-value .process-mliv-dd[data-v-41bcbb23]{height:26px;min-width:30px;padding:0 12px;border-radius:20px;background:#1389ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px}.process-main .process-ml-item .process-mli-value .process-mliv-jd[data-v-41bcbb23]{color:#1389ff}.process-btn[data-v-41bcbb23]{display:flex;min-height:60px;padding-top:5px;background:#fff;border-top:1px solid #dddddf9e;box-sizing:border-box;justify-content:center;align-items:center;flex-direction:row-reverse}.process-btn .top-button[data-v-41bcbb23],.process-btn .elips[data-v-41bcbb23]{margin:0 5px}.elips[data-v-41bcbb23]{min-width:60px;height:100%;background-color:#fff;display:flex;justify-content:center;align-items:center}.elips .circle[data-v-41bcbb23]{width:6px;height:6px;margin:0 2px;background-color:#333;border-radius:50%}
package/lib/vite.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
package/package.json CHANGED
@@ -1,41 +1,74 @@
1
1
  {
2
2
  "name": "ui-process-h5",
3
- "version": "0.1.15",
4
3
  "private": false,
5
4
  "description": "流程组件",
6
- "main": "lib/index.min.js",
7
- "module": "lib/index.esm.js",
8
- "typings": "lib/index.d.ts",
9
- "keyword": "vue3",
5
+ "version": "0.1.22",
6
+ "type": "module",
10
7
  "scripts": {
11
- "serve": "vue-cli-service serve",
12
- "build": "yarn build:clean && yarn build:lib && yarn build:esm-bundle && rimraf lib/demo.html",
13
- "build:clean": "rimraf lib",
14
- "build:lib": "vue-cli-service build --target lib --name index --dest lib packages/index.ts",
15
- "build:esm-bundle": "rollup --config ./build/rollup.config.js"
8
+ "dev": "vite",
9
+ "build": "vue-tsc && vite build",
10
+ "preview": "vite preview"
11
+ },
12
+ "files": [
13
+ "lib/*",
14
+ "packages/*",
15
+ "Readme.md",
16
+ "package.json"
17
+ ],
18
+ "publicConfig": {
19
+ "registry": "http://registry.npmjs.org/"
20
+ },
21
+ "main": "./lib/design.umd.js",
22
+ "module": "./lib/design.mjs",
23
+ "exports": {
24
+ ".": {
25
+ "import": "./lib/design.mjs",
26
+ "require": "./lib/design.umd.js"
27
+ },
28
+ "./lib/style.css": "./lib/style.css"
16
29
  },
17
30
  "dependencies": {
18
- "autoprefixer": "^10.4.14",
19
- "bpmn-moddle": "^8.0.1",
20
- "core-js": "^3.8.3",
21
- "rollup-plugin-postcss": "^4.0.2",
22
- "vue": "^3.2.13"
31
+ "axios": "^1.3.6",
32
+ "dayjs": "^1.11.7",
33
+ "less-loader": "^11.1.0",
34
+ "sass": "^1.62.0",
35
+ "vue": "^3.2.47",
36
+ "vue-demi": "^0.14.0"
23
37
  },
24
38
  "devDependencies": {
25
- "@rollup/plugin-node-resolve": "^13.0.5",
26
- "@vue/cli-plugin-babel": "~5.0.0",
27
- "@vue/cli-plugin-typescript": "~5.0.0",
28
- "@vue/cli-service": "~5.0.0",
29
- "@vue/compiler-sfc": "^3.0.0",
39
+ "@commitlint/cli": "^17.0.0",
40
+ "@commitlint/config-conventional": "^17.0.0",
41
+ "@types/node": "^18.15.12",
42
+ "@types/sass": "^1.43.1",
43
+ "@typescript-eslint/eslint-plugin": "^5.27.0",
44
+ "@typescript-eslint/parser": "^5.27.0",
45
+ "@vitejs/plugin-vue": "^4.1.0",
46
+ "@vitejs/plugin-vue-jsx": "^2.0.0",
30
47
  "axios": "^1.3.5",
48
+ "chalk": "^4.1.2",
49
+ "commitizen": "^4.2.4",
50
+ "cross-env": "^7.0.3",
51
+ "cz-conventional-changelog": "^3.3.0",
52
+ "eslint": "^8.17.0",
53
+ "eslint-config-prettier": "^8.5.0",
54
+ "eslint-define-config": "^1.5.0",
55
+ "eslint-plugin-prettier": "^4.0.0",
56
+ "eslint-plugin-vue": "^9.1.0",
31
57
  "good-storage": "^1.1.1",
58
+ "husky": "^8.0.1",
32
59
  "js-cookie": "^3.0.1",
33
- "rollup": "^2.58.0",
34
- "rollup-plugin-terser": "^7.0.2",
35
- "rollup-plugin-typescript2": "^0.30.0",
36
- "rollup-plugin-vue": "^6.0.0",
37
- "sass": "^1.32.7",
38
- "sass-loader": "^12.0.0",
39
- "typescript": "~4.5.5"
60
+ "prettier": "^2.6.2",
61
+ "rimraf": "^3.0.2",
62
+ "sass": "^1.49.7",
63
+ "standard-version": "^9.5.0",
64
+ "typescript": "^4.9.3",
65
+ "vite": "^4.2.0",
66
+ "vite-plugin-dts": "^1.2.0",
67
+ "vite-plugin-md": "^0.15.0",
68
+ "vue": "^3.2.47",
69
+ "vue-tsc": "^1.2.0"
70
+ },
71
+ "engines": {
72
+ "node": ">=16.0.0"
40
73
  }
41
- }
74
+ }
@@ -0,0 +1,5 @@
1
+ import TopTab from "./components/tab";
2
+ import TopProcess from "./components/process";
3
+
4
+ export default [TopTab, TopProcess];
5
+ export { TopTab, TopProcess };
@@ -0,0 +1,9 @@
1
+ import { App, createApp } from "vue";
2
+ import TopButton from "./src/index.vue";
3
+
4
+ TopButton.install = function (app: App) {
5
+ // 组件注册,按需引入
6
+ app.component(TopButton.name, TopButton);
7
+ return app;
8
+ };
9
+ export default TopButton;
@@ -0,0 +1,55 @@
1
+ <template>
2
+ <div
3
+ class="top-button"
4
+ :style="`background-color:${style.bckColor};color:${style.textColor}`"
5
+ >
6
+ <slot></slot>
7
+ </div>
8
+ </template>
9
+ <script>
10
+ import { defineComponent, ref, watch, computed, onMounted } from "vue-demi";
11
+ export default defineComponent({
12
+ name: "TopButton",
13
+ props: {
14
+ type: { default: "default", type: String },
15
+ },
16
+ setup(props) {
17
+ const style = ref({
18
+ textColor: "#fff",
19
+ bckColor: "3c9cff",
20
+ });
21
+
22
+ switch (props.type) {
23
+ case "primary":
24
+ style.value.textColor = "#fff";
25
+ style.value.bckColor = "#3c9cff";
26
+ break;
27
+ case "danger":
28
+ style.value.textColor = "rgb(255, 96, 96)";
29
+ style.value.bckColor = "rgb(255, 230, 230)";
30
+ break;
31
+ case "default":
32
+ style.value.textColor = "rgb(51, 51, 51)";
33
+ style.value.bckColor = "rgb(241, 241, 241)";
34
+ break;
35
+ }
36
+
37
+ return {
38
+ style,
39
+ };
40
+ },
41
+ });
42
+ </script>
43
+ <style scoped>
44
+ .top-button {
45
+ width: 100%;
46
+ border-radius: 20px;
47
+ height: 36px;
48
+ background-color: #3c9cff;
49
+ color: #fff;
50
+ font-size: 14px;
51
+ justify-content: center;
52
+ display: flex;
53
+ align-items: center;
54
+ }
55
+ </style>
@@ -0,0 +1,11 @@
1
+ import { App, createApp } from "vue";
2
+ import TopPopup from "./src/index.vue";
3
+
4
+ TopPopup.install = function (app: App) {
5
+ // 组件注册,按需引入
6
+ console.log("TopPopup.install",app)
7
+ app.mount(TopPopup)
8
+ app.component(TopPopup.name, TopPopup);
9
+ return app;
10
+ };
11
+ export default TopPopup;
@@ -0,0 +1,128 @@
1
+ <template>
2
+ <div
3
+ class="top-popup"
4
+ :style="
5
+ show ? 'transform: translateY(0)' : 'transform: translateY(100%)'
6
+ "
7
+ >
8
+ <div class="top-popup-header">
9
+ <div class="header-cancel" @click="handleCancel">
10
+ {{ cancelText }}
11
+ </div>
12
+ <div class="header-title">{{ titleText }}</div>
13
+ <div class="header-comfig" @click="handleComfig">
14
+ {{ comfigText }}
15
+ </div>
16
+ </div>
17
+ <div class="top-popup-body">
18
+ <slot name="default"></slot>
19
+ </div>
20
+ </div>
21
+ <div
22
+ class="top-popup-mask"
23
+ v-if="show && isMask"
24
+ @click="isMaskClose && handleClose()"
25
+ ></div>
26
+ </template>
27
+ <script lang="ts">
28
+ import { defineComponent, ref, watch, computed, onMounted } from "vue-demi";
29
+
30
+ export default defineComponent({
31
+ name: "TopPopup",
32
+ props: {
33
+ titleText: { default: "top-popup", type: String },
34
+ cancelText: { default: "取消", type: String },
35
+ comfigText: { default: "确定", type: String },
36
+ comfig: { default: null, type: Function },
37
+ cancel: { default: null, type: Function },
38
+ isMask: { require: false, default: true, type: Boolean },
39
+ isMaskClose: { require: false, default: true, type: Boolean },
40
+ },
41
+ setup(props) {
42
+ const show = ref<boolean>(false);
43
+
44
+ const handleOpen = () => {
45
+ show.value = true;
46
+ };
47
+
48
+ const handleCancel = () => {
49
+ typeof props.cancel === "function" && props.cancel();
50
+ handleClose();
51
+ };
52
+
53
+ const handleComfig = () => {
54
+ typeof props.comfig === "function" && props.comfig();
55
+ };
56
+
57
+ const handleClose = () => {
58
+ show.value = false;
59
+ };
60
+
61
+ onMounted(() => {
62
+ const body = document.querySelector("body");
63
+ });
64
+
65
+ return {
66
+ handleOpen,
67
+ handleCancel,
68
+ handleComfig,
69
+ handleClose,
70
+ show,
71
+ };
72
+ },
73
+ });
74
+ </script>
75
+ <style scoped>
76
+ .top-popup {
77
+ width: 100%;
78
+ height: 80vh;
79
+ position: fixed;
80
+ left: 0;
81
+ background-color: #fff;
82
+ z-index: 199;
83
+ border-radius: 20px 20px 0 0;
84
+ padding: 0 10px;
85
+ box-sizing: border-box;
86
+ transition: all 0.5s ease;
87
+ bottom: 0;
88
+ }
89
+ .top-popup-mask {
90
+ position: fixed;
91
+ width: 100vw;
92
+ height: 100vh;
93
+ background-color: #000;
94
+ opacity: 0.7;
95
+ top: 0;
96
+ left: 0;
97
+ z-index: 99;
98
+ }
99
+ .top-popup-header {
100
+ display: flex;
101
+ justify-content: space-between;
102
+ align-items: center;
103
+ padding: 10px 0;
104
+ }
105
+
106
+ .top-popup-header .header-cancel {
107
+ color: #1389ff;
108
+ }
109
+ .top-popup-header .header-comfig {
110
+ color: #1389ff;
111
+ }
112
+
113
+ .fade-enter-active,
114
+ .fade-leave-active {
115
+ transition: all 0.5s ease;
116
+ }
117
+
118
+ .fade-enter,
119
+ .fade-leave-to {
120
+ /* transform: translateY(100%); */
121
+ bottom: -100%;
122
+ }
123
+ .fade-enter-to,
124
+ .fade-leave {
125
+ /* transform: translateY(0%); */
126
+ bottom: 0d;
127
+ }
128
+ </style>
@@ -0,0 +1,9 @@
1
+ import { App } from "vue";
2
+ import TopProcess from "./src/index.vue";
3
+
4
+ TopProcess.install = function (app: App) {
5
+ // 组件注册,按需引入
6
+ app.component(TopProcess.name, TopProcess);
7
+ return app;
8
+ };
9
+ export default TopProcess;