diff --git a/packages/uni-components/dist/components.js b/packages/uni-components/dist/components.js
index c0ceca3806c8a7269d8fd9eef4148bbfcf486f28..7bed05e94184b6bc87291575b1fe4a14386930a9 100644
--- a/packages/uni-components/dist/components.js
+++ b/packages/uni-components/dist/components.js
@@ -1,127 +1,123 @@
-export function initComponents({ uni, Vue, weex, plus, BroadcastChannel, UniViewJSBridge, VueShared, UniShared }) {
- var components = function(vue, shared) {
- "use strict";
- const OPEN_TYPES = [
- "navigate",
- "redirect",
- "switchTab",
- "reLaunch",
- "navigateBack"
- ];
- const navigatorProps = {
- hoverClass: {
- type: String,
- default: "navigator-hover"
- },
- url: {
- type: String,
- default: ""
- },
- openType: {
- type: String,
- default: "navigate",
- validator(value) {
- return Boolean(~OPEN_TYPES.indexOf(value));
- }
- },
- delta: {
- type: Number,
- default: 1
- },
- hoverStartTime: {
- type: [Number, String],
- default: 50
- },
- hoverStayTime: {
- type: [Number, String],
- default: 600
- },
- exists: {
- type: String,
- default: ""
- },
- hoverStopPropagation: {
- type: Boolean,
- default: false
- }
- };
- function createNavigatorOnClick(props) {
- return () => {
- if (props.openType !== "navigateBack" && !props.url) {
- console.error(" should have url attribute when using navigateTo, redirectTo, reLaunch or switchTab");
- return;
- }
- switch (props.openType) {
- case "navigate":
- uni.navigateTo({
- url: props.url
- });
- break;
- case "redirect":
- uni.redirectTo({
- url: props.url,
- exists: props.exists
- });
- break;
- case "switchTab":
- uni.switchTab({
- url: props.url
- });
- break;
- case "reLaunch":
- uni.reLaunch({
- url: props.url
- });
- break;
- case "navigateBack":
- uni.navigateBack({
- delta: props.delta
- });
- break;
- }
- };
+import { defineComponent, createVNode, mergeProps } from "vue";
+import { hasOwn } from "@vue/shared";
+const OPEN_TYPES = [
+ "navigate",
+ "redirect",
+ "switchTab",
+ "reLaunch",
+ "navigateBack"
+];
+const navigatorProps = {
+ hoverClass: {
+ type: String,
+ default: "navigator-hover"
+ },
+ url: {
+ type: String,
+ default: ""
+ },
+ openType: {
+ type: String,
+ default: "navigate",
+ validator(value) {
+ return Boolean(~OPEN_TYPES.indexOf(value));
}
- function useHoverClass(props) {
- if (props.hoverClass && props.hoverClass !== "none") {
- const hoverAttrs = { hoverClass: props.hoverClass };
- if (shared.hasOwn(props, "hoverStartTime")) {
- hoverAttrs.hoverStartTime = props.hoverStartTime;
- }
- if (shared.hasOwn(props, "hoverStayTime")) {
- hoverAttrs.hoverStayTime = props.hoverStayTime;
- }
- if (shared.hasOwn(props, "hoverStopPropagation")) {
- hoverAttrs.hoverStopPropagation = props.hoverStopPropagation;
- }
- return hoverAttrs;
- }
- return {};
+ },
+ delta: {
+ type: Number,
+ default: 1
+ },
+ hoverStartTime: {
+ type: [Number, String],
+ default: 50
+ },
+ hoverStayTime: {
+ type: [Number, String],
+ default: 600
+ },
+ exists: {
+ type: String,
+ default: ""
+ },
+ hoverStopPropagation: {
+ type: Boolean,
+ default: false
+ }
+};
+function createNavigatorOnClick(props) {
+ return () => {
+ if (props.openType !== "navigateBack" && !props.url) {
+ console.error(" should have url attribute when using navigateTo, redirectTo, reLaunch or switchTab");
+ return;
}
- const navigatorStyles = [{
- "navigator-hover": {
- backgroundColor: "rgba(0,0,0,0.1)",
- opacity: 0.7
- }
- }];
- var Navigator = vue.defineComponent({
- name: "Navigator",
- props: navigatorProps,
- styles: navigatorStyles,
- setup(props, {
- slots
- }) {
- const onClick = createNavigatorOnClick(props);
- return () => {
- return vue.createVNode("view", vue.mergeProps(useHoverClass(props), {
- "onClick": onClick
- }), [slots.default && slots.default()]);
- };
- }
- });
- var components2 = {
- Navigator
- };
- return components2;
- }(Vue, VueShared);
- return components;
+ switch (props.openType) {
+ case "navigate":
+ uni.navigateTo({
+ url: props.url
+ });
+ break;
+ case "redirect":
+ uni.redirectTo({
+ url: props.url,
+ exists: props.exists
+ });
+ break;
+ case "switchTab":
+ uni.switchTab({
+ url: props.url
+ });
+ break;
+ case "reLaunch":
+ uni.reLaunch({
+ url: props.url
+ });
+ break;
+ case "navigateBack":
+ uni.navigateBack({
+ delta: props.delta
+ });
+ break;
+ }
+ };
+}
+function useHoverClass(props) {
+ if (props.hoverClass && props.hoverClass !== "none") {
+ const hoverAttrs = { hoverClass: props.hoverClass };
+ if (hasOwn(props, "hoverStartTime")) {
+ hoverAttrs.hoverStartTime = props.hoverStartTime;
+ }
+ if (hasOwn(props, "hoverStayTime")) {
+ hoverAttrs.hoverStayTime = props.hoverStayTime;
+ }
+ if (hasOwn(props, "hoverStopPropagation")) {
+ hoverAttrs.hoverStopPropagation = props.hoverStopPropagation;
+ }
+ return hoverAttrs;
+ }
+ return {};
}
+const navigatorStyles = [{
+ "navigator-hover": {
+ backgroundColor: "rgba(0,0,0,0.1)",
+ opacity: 0.7
+ }
+}];
+var Navigator = defineComponent({
+ name: "Navigator",
+ props: navigatorProps,
+ styles: navigatorStyles,
+ setup(props, {
+ slots
+ }) {
+ const onClick = createNavigatorOnClick(props);
+ return () => {
+ return createVNode("view", mergeProps(useHoverClass(props), {
+ "onClick": onClick
+ }), [slots.default && slots.default()]);
+ };
+ }
+});
+var components = {
+ Navigator
+};
+export { components as default };
diff --git a/packages/uni-components/vite.config.ts b/packages/uni-components/vite.config.ts
index 0d52b971b360506b65451640b653976c813bb20c..20332819bf4dbaf08f8a62e077403f6eb65d463d 100644
--- a/packages/uni-components/vite.config.ts
+++ b/packages/uni-components/vite.config.ts
@@ -25,22 +25,12 @@ export default defineConfig({
lib: {
name: 'components',
entry: path.resolve(__dirname, 'src/nvue/components.ts'),
- formats: ['iife'],
+ formats: ['es'],
},
rollupOptions: {
external: ['uni', 'vue', 'weex', '@vue/shared', '@dcloudio/uni-shared'],
output: {
- banner:
- 'export function initComponents({uni,Vue,weex,plus,BroadcastChannel,UniViewJSBridge,VueShared,UniShared}) {',
- footer: 'return components\n}',
entryFileNames: 'components.js',
- globals: {
- uni: 'uni',
- vue: 'Vue',
- weex: 'weex',
- '@vue/shared': 'VueShared',
- '@dcloudio/uni-shared': 'UniShared',
- },
},
},
},