finish UI
This commit is contained in:
21
vue-project/my-kintone-plugin/components.d.ts
vendored
Normal file
21
vue-project/my-kintone-plugin/components.d.ts
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
/* eslint-disable */
|
||||||
|
// @ts-nocheck
|
||||||
|
// Generated by unplugin-vue-components
|
||||||
|
// Read more: https://github.com/vuejs/core/pull/3399
|
||||||
|
export {}
|
||||||
|
|
||||||
|
/* prettier-ignore */
|
||||||
|
declare module 'vue' {
|
||||||
|
export interface GlobalComponents {
|
||||||
|
Config: typeof import('./src/components/Config.vue')['default']
|
||||||
|
PluginDropdown: typeof import('./src/components/basic/PluginDropdown.vue')['default']
|
||||||
|
PluginInput: typeof import('./src/components/basic/PluginInput.vue')['default']
|
||||||
|
PluginLabel: typeof import('./src/components/basic/PluginLabel.vue')['default']
|
||||||
|
PluginRow: typeof import('./src/components/basic/PluginRow.vue')['default']
|
||||||
|
PluginTableActionIcon: typeof import('./src/components/basic/PluginTableActionIcon.vue')['default']
|
||||||
|
PluginTableActionIconGroup: typeof import('./src/components/basic/PluginTableActionIconGroup.vue')['default']
|
||||||
|
PluginTableArea: typeof import('./src/components/basic/PluginTableArea.vue')['default']
|
||||||
|
PluginTableConditionRow: typeof import('./src/components/basic/PluginTableConditionRow.vue')['default']
|
||||||
|
PluginTableConnectRow: typeof import('./src/components/basic/PluginTableConnectRow.vue')['default']
|
||||||
|
}
|
||||||
|
}
|
||||||
232
vue-project/my-kintone-plugin/package-lock.json
generated
232
vue-project/my-kintone-plugin/package-lock.json
generated
@@ -11,7 +11,8 @@
|
|||||||
"@kintone/rest-api-client": "^5.7.0",
|
"@kintone/rest-api-client": "^5.7.0",
|
||||||
"kintone-ui-component": "1.18.0",
|
"kintone-ui-component": "1.18.0",
|
||||||
"rollup-plugin-css-only": "^4.5.2",
|
"rollup-plugin-css-only": "^4.5.2",
|
||||||
"vue": "^3.5.13"
|
"vue": "^3.5.13",
|
||||||
|
"vue-i18n": "^11.0.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@cybozu/eslint-config": "^23.0.0",
|
"@cybozu/eslint-config": "^23.0.0",
|
||||||
@@ -23,10 +24,21 @@
|
|||||||
"eslint": "^8.57.0",
|
"eslint": "^8.57.0",
|
||||||
"rollup-plugin-copy": "^3.5.0",
|
"rollup-plugin-copy": "^3.5.0",
|
||||||
"typescript": "^5.7.3",
|
"typescript": "^5.7.3",
|
||||||
|
"unplugin-vue-components": "^28.0.0",
|
||||||
"vite": "^6.0.1",
|
"vite": "^6.0.1",
|
||||||
"vue-tsc": "^2.1.10"
|
"vue-tsc": "^2.1.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@antfu/utils": {
|
||||||
|
"version": "0.7.10",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.10.tgz",
|
||||||
|
"integrity": "sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@babel/code-frame": {
|
"node_modules/@babel/code-frame": {
|
||||||
"version": "7.26.2",
|
"version": "7.26.2",
|
||||||
"resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz",
|
"resolved": "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz",
|
||||||
@@ -593,6 +605,50 @@
|
|||||||
"node": ">=18"
|
"node": ">=18"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@intlify/core-base": {
|
||||||
|
"version": "11.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@intlify/core-base/-/core-base-11.0.1.tgz",
|
||||||
|
"integrity": "sha512-NAmhw1l/llM0HZRpagR/ChJTNymW4ll6/4EDSJML5c8L5Hl/+k6UyF8EIgE6DeHpfheQujkSRngauViHqq6jJQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@intlify/message-compiler": "11.0.1",
|
||||||
|
"@intlify/shared": "11.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 16"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/kazupon"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@intlify/message-compiler": {
|
||||||
|
"version": "11.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-11.0.1.tgz",
|
||||||
|
"integrity": "sha512-5RFH8x+Mn3mbjcHXnb6KCXGiczBdiQkWkv99iiA0JpKrNuTAQeW59Pjq/uObMB0eR0shnKYGTkIJxum+DbL3sw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@intlify/shared": "11.0.1",
|
||||||
|
"source-map-js": "^1.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 16"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/kazupon"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/@intlify/shared": {
|
||||||
|
"version": "11.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@intlify/shared/-/shared-11.0.1.tgz",
|
||||||
|
"integrity": "sha512-lH164+aDDptHZ3dBDbIhRa1dOPQUp+83iugpc+1upTOWCnwyC1PVis6rSWNMMJ8VQxvtHQB9JMib48K55y0PvQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 16"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/kazupon"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/@jridgewell/sourcemap-codec": {
|
"node_modules/@jridgewell/sourcemap-codec": {
|
||||||
"version": "1.5.0",
|
"version": "1.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
|
||||||
@@ -1974,6 +2030,12 @@
|
|||||||
"he": "^1.2.0"
|
"he": "^1.2.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/@vue/devtools-api": {
|
||||||
|
"version": "6.6.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz",
|
||||||
|
"integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/@vue/language-core": {
|
"node_modules/@vue/language-core": {
|
||||||
"version": "2.2.0",
|
"version": "2.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.2.0.tgz",
|
||||||
@@ -2972,6 +3034,13 @@
|
|||||||
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
|
"integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"node_modules/confbox": {
|
||||||
|
"version": "0.1.8",
|
||||||
|
"resolved": "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz",
|
||||||
|
"integrity": "sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/core-js": {
|
"node_modules/core-js": {
|
||||||
"version": "3.40.0",
|
"version": "3.40.0",
|
||||||
"resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.40.0.tgz",
|
"resolved": "https://registry.npmmirror.com/core-js/-/core-js-3.40.0.tgz",
|
||||||
@@ -6011,6 +6080,23 @@
|
|||||||
"@types/trusted-types": "^2.0.2"
|
"@types/trusted-types": "^2.0.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/local-pkg": {
|
||||||
|
"version": "0.5.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.5.1.tgz",
|
||||||
|
"integrity": "sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"mlly": "^1.7.3",
|
||||||
|
"pkg-types": "^1.2.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/locate-path": {
|
"node_modules/locate-path": {
|
||||||
"version": "6.0.0",
|
"version": "6.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-6.0.0.tgz",
|
||||||
@@ -6320,6 +6406,19 @@
|
|||||||
"url": "https://github.com/sponsors/isaacs"
|
"url": "https://github.com/sponsors/isaacs"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/mlly": {
|
||||||
|
"version": "1.7.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/mlly/-/mlly-1.7.4.tgz",
|
||||||
|
"integrity": "sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"acorn": "^8.14.0",
|
||||||
|
"pathe": "^2.0.1",
|
||||||
|
"pkg-types": "^1.3.0",
|
||||||
|
"ufo": "^1.5.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/ms": {
|
"node_modules/ms": {
|
||||||
"version": "2.1.3",
|
"version": "2.1.3",
|
||||||
"resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz",
|
"resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz",
|
||||||
@@ -6818,6 +6917,13 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/pathe": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/pathe/-/pathe-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-6jpjMpOth5S9ITVu5clZ7NOgHNsv5vRQdheL9ztp2vZmM6fRbLvyua1tiBIL4lk8SAe3ARzeXEly6siXCjDHDw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/pend": {
|
"node_modules/pend": {
|
||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz",
|
||||||
@@ -6843,6 +6949,18 @@
|
|||||||
"url": "https://github.com/sponsors/jonschlinkert"
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/pkg-types": {
|
||||||
|
"version": "1.3.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz",
|
||||||
|
"integrity": "sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"confbox": "^0.1.8",
|
||||||
|
"mlly": "^1.7.4",
|
||||||
|
"pathe": "^2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/possible-typed-array-names": {
|
"node_modules/possible-typed-array-names": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz",
|
"resolved": "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz",
|
||||||
@@ -8644,6 +8762,13 @@
|
|||||||
"typescript": ">=4.8.4"
|
"typescript": ">=4.8.4"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/ufo": {
|
||||||
|
"version": "1.5.4",
|
||||||
|
"resolved": "https://registry.npmmirror.com/ufo/-/ufo-1.5.4.tgz",
|
||||||
|
"integrity": "sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/unbox-primitive": {
|
"node_modules/unbox-primitive": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
|
"resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz",
|
||||||
@@ -8689,6 +8814,84 @@
|
|||||||
"node": ">= 4.0.0"
|
"node": ">= 4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/unplugin": {
|
||||||
|
"version": "2.1.2",
|
||||||
|
"resolved": "https://registry.npmmirror.com/unplugin/-/unplugin-2.1.2.tgz",
|
||||||
|
"integrity": "sha512-Q3LU0e4zxKfRko1wMV2HmP8lB9KWislY7hxXpxd+lGx0PRInE4vhMBVEZwpdVYHvtqzhSrzuIfErsob6bQfCzw==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"acorn": "^8.14.0",
|
||||||
|
"webpack-virtual-modules": "^0.6.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18.12.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/unplugin-vue-components": {
|
||||||
|
"version": "28.0.0",
|
||||||
|
"resolved": "https://registry.npmmirror.com/unplugin-vue-components/-/unplugin-vue-components-28.0.0.tgz",
|
||||||
|
"integrity": "sha512-vYe0wSyqTVhyNFIad1iiGyQGhG++tDOMgohqenMDOAooMJP9vvzCdXTqCVx20A0rCQXFNjgoRbSeDAioLPH36Q==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@antfu/utils": "^0.7.10",
|
||||||
|
"@rollup/pluginutils": "^5.1.4",
|
||||||
|
"chokidar": "^3.6.0",
|
||||||
|
"debug": "^4.4.0",
|
||||||
|
"fast-glob": "^3.3.3",
|
||||||
|
"local-pkg": "^0.5.1",
|
||||||
|
"magic-string": "^0.30.17",
|
||||||
|
"minimatch": "^9.0.5",
|
||||||
|
"mlly": "^1.7.3",
|
||||||
|
"unplugin": "^2.1.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=14"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/antfu"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"@babel/parser": "^7.15.8",
|
||||||
|
"@nuxt/kit": "^3.2.2",
|
||||||
|
"vue": "2 || 3"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"@babel/parser": {
|
||||||
|
"optional": true
|
||||||
|
},
|
||||||
|
"@nuxt/kit": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/unplugin-vue-components/node_modules/brace-expansion": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.1.tgz",
|
||||||
|
"integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"balanced-match": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/unplugin-vue-components/node_modules/minimatch": {
|
||||||
|
"version": "9.0.5",
|
||||||
|
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz",
|
||||||
|
"integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "ISC",
|
||||||
|
"dependencies": {
|
||||||
|
"brace-expansion": "^2.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=16 || 14 >=14.17"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/isaacs"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/uri-js": {
|
"node_modules/uri-js": {
|
||||||
"version": "4.4.1",
|
"version": "4.4.1",
|
||||||
"resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz",
|
"resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz",
|
||||||
@@ -8823,6 +9026,26 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/vue-i18n": {
|
||||||
|
"version": "11.0.1",
|
||||||
|
"resolved": "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-11.0.1.tgz",
|
||||||
|
"integrity": "sha512-pWAT8CusK8q9/EpN7V3oxwHwxWm6+Kp2PeTZmRGvdZTkUzMQDpbbmHp0TwQ8xw04XKm23cr6B4GL72y3W8Yekg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"@intlify/core-base": "11.0.1",
|
||||||
|
"@intlify/shared": "11.0.1",
|
||||||
|
"@vue/devtools-api": "^6.5.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 16"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/kazupon"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"vue": "^3.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/vue-tsc": {
|
"node_modules/vue-tsc": {
|
||||||
"version": "2.2.0",
|
"version": "2.2.0",
|
||||||
"resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.2.0.tgz",
|
"resolved": "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.2.0.tgz",
|
||||||
@@ -8840,6 +9063,13 @@
|
|||||||
"typescript": ">=5.0.0"
|
"typescript": ">=5.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/webpack-virtual-modules": {
|
||||||
|
"version": "0.6.2",
|
||||||
|
"resolved": "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz",
|
||||||
|
"integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==",
|
||||||
|
"dev": true,
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/which": {
|
"node_modules/which": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz",
|
"resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz",
|
||||||
|
|||||||
@@ -16,7 +16,8 @@
|
|||||||
"@kintone/rest-api-client": "^5.7.0",
|
"@kintone/rest-api-client": "^5.7.0",
|
||||||
"kintone-ui-component": "1.18.0",
|
"kintone-ui-component": "1.18.0",
|
||||||
"rollup-plugin-css-only": "^4.5.2",
|
"rollup-plugin-css-only": "^4.5.2",
|
||||||
"vue": "^3.5.13"
|
"vue": "^3.5.13",
|
||||||
|
"vue-i18n": "^11.0.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@cybozu/eslint-config": "^23.0.0",
|
"@cybozu/eslint-config": "^23.0.0",
|
||||||
@@ -28,6 +29,7 @@
|
|||||||
"eslint": "^8.57.0",
|
"eslint": "^8.57.0",
|
||||||
"rollup-plugin-copy": "^3.5.0",
|
"rollup-plugin-copy": "^3.5.0",
|
||||||
"typescript": "^5.7.3",
|
"typescript": "^5.7.3",
|
||||||
|
"unplugin-vue-components": "^28.0.0",
|
||||||
"vite": "^6.0.1",
|
"vite": "^6.0.1",
|
||||||
"vue-tsc": "^2.1.10"
|
"vue-tsc": "^2.1.10"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,53 +1,63 @@
|
|||||||
<template>
|
<template>
|
||||||
<h2 class="settings-heading">Settings for data fetch pluging</h2>
|
<h2 class="settings-heading">{{ $t('config.title') }}</h2>
|
||||||
<p class="kintoneplugin-desc">This message is displayed on the app page after the app has been updated.</p>
|
<p class="kintoneplugin-desc">{{ $t('config.desc') }}</p>
|
||||||
<form class="js-submit-settings">
|
|
||||||
<p class="kintoneplugin-row">
|
<plugin-row class="header-row border">
|
||||||
<label for="message">
|
<plugin-input v-model="data.buttonName" label="集約ボタン名" />
|
||||||
Message:
|
</plugin-row>
|
||||||
<input v-model="data.message" type="text" class="js-text-message kintoneplugin-input-text" />
|
|
||||||
</label>
|
<div v-if="!loading">
|
||||||
</p>
|
<plugin-table-area :table="mainTable" :key="mainTable.id" />
|
||||||
<p class="kintoneplugin-row">
|
<plugin-table-area v-for="joinTable in otherTables" :table="joinTable" :key="joinTable.id" />
|
||||||
<kuc-button text="Cancel" type="normal" @click="cancel" />
|
</div>
|
||||||
<kuc-button text="Save" type="submit" @click="save" />
|
|
||||||
</p>
|
<plugin-row class="footer-row border">
|
||||||
</form>
|
<kuc-button text="キャンセル" type="normal" @click="cancel" />
|
||||||
|
<kuc-button text="保存する" class="save-btn" type="submit" @click="save" />
|
||||||
|
</plugin-row>
|
||||||
</template>
|
</template>
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { onMounted, reactive } from 'vue';
|
import { createEmptyJoinTable } from '@/js/helper';
|
||||||
|
import type { JoinTable, SavedData } from '@/types/model';
|
||||||
|
|
||||||
|
import { computed, onMounted, watch, provide, reactive, ref } from 'vue';
|
||||||
|
|
||||||
const props = defineProps<{ pluginId: string }>();
|
const props = defineProps<{ pluginId: string }>();
|
||||||
const data: {
|
const loading = ref(true);
|
||||||
message: string;
|
const data: SavedData = reactive({
|
||||||
} = reactive({
|
buttonName: '',
|
||||||
message: '',
|
joinTables: [] as JoinTable[],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
provide('savedData', data);
|
||||||
|
|
||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
const savedData = kintone.plugin.app.getConfig(props.pluginId);
|
const savedData = kintone.plugin.app.getConfig(props.pluginId);
|
||||||
data.message = JSON.parse(savedData.message);
|
data.buttonName = savedData?.buttonName || '集約';
|
||||||
|
data.joinTables = savedData ? JSON.parse(savedData.joinTables) : [createEmptyJoinTable(), createEmptyJoinTable(1)];
|
||||||
|
loading.value = false;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const mainTable = computed(() => data.joinTables[0]);
|
||||||
|
const otherTables = computed(() => data.joinTables.slice(1));
|
||||||
|
|
||||||
|
watch(
|
||||||
|
() => data.joinTables.length,
|
||||||
|
(newLength) => {
|
||||||
|
if (newLength === 1) {
|
||||||
|
data.joinTables[0].onConditions = [];
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
function save() {
|
function save() {
|
||||||
kintone.plugin.app.setConfig(
|
kintone.plugin.app.setConfig({
|
||||||
{ message: JSON.stringify(data.message) },
|
buttonName: data.buttonName,
|
||||||
// () => {
|
joinTables: JSON.stringify(data.joinTables || []),
|
||||||
// alert("The plug-in settings have been saved. Please update the app!");
|
});
|
||||||
// window.location.href = "../../flow?app=" + kintone.app.getId();
|
|
||||||
// }
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function cancel() {
|
function cancel() {
|
||||||
window.location.href = `../../${kintone.app.getId()}/plugin/`;
|
window.location.href = `../../${kintone.app.getId()}/plugin/`;
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
<style scoped>
|
|
||||||
.settings-heading {
|
|
||||||
padding: 1em 0;
|
|
||||||
}
|
|
||||||
.kintoneplugin-input-text {
|
|
||||||
width: 20em;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
<template>
|
||||||
|
<div class="kintoneplugin-input-container flex-row">
|
||||||
|
<plugin-label v-if="label" :label="label" />
|
||||||
|
<kuc-dropdown className="kuc-text-input" :items="items" :value="modelValue" @change="updateValue" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { defineProps, defineEmits } from 'vue';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
label: string;
|
||||||
|
items: kintone.fieldTypes.DropDown['Item'][];
|
||||||
|
modelValue: string;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const emit = defineEmits<{
|
||||||
|
(e: 'update:modelValue', value: string): void;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const updateValue = (event: kintone.Event) => {
|
||||||
|
emit('update:modelValue', event.detail.value);
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
<template>
|
||||||
|
<div class="kintoneplugin-input-container flex-row">
|
||||||
|
<plugin-label v-if="label" :label="label" />
|
||||||
|
<kuc-text className="kuc-text-input" :value="modelValue" @change="updateValue" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { defineProps, defineEmits } from 'vue';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
label: string;
|
||||||
|
modelValue: string;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const emit = defineEmits<{
|
||||||
|
(e: 'update:modelValue', value: string): void;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const updateValue = (event: kintone.Event) => {
|
||||||
|
emit('update:modelValue', event.detail.value);
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
<template>
|
||||||
|
<div class="kintoneplugin-label">{{ label }}</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { defineProps } from 'vue';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
label: string;
|
||||||
|
}>();
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
<template>
|
||||||
|
<div class="kintoneplugin-row">
|
||||||
|
<slot></slot>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts"></script>
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
<template>
|
||||||
|
<button :class="['kuc-action-button', isAdd ? 'add' : 'remove']" :title="title">
|
||||||
|
<svg fill="none" width="18" height="18" viewBox="0 0 16 16" aria-hidden="true">
|
||||||
|
<path :d="dPath" fill-rule="evenodd" clip-rule="evenodd" :fill="fillPath"></path>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { computed } from 'vue';
|
||||||
|
|
||||||
|
const props = defineProps<{ isAdd: boolean; title: string }>();
|
||||||
|
|
||||||
|
const dAdd =
|
||||||
|
'M8 16C12.4183 16 16 12.4183 16 8C16 3.58172 12.4183 0 8 0C3.58172 0 0 3.58172 0 8C0 12.4183 3.58172 16 8 16ZM12.0355 8.49997V7.49997H8.50008V3.96454H7.50008V7.49997H3.96443V8.49997H7.50008V12.0356H8.50008V8.49997H12.0355Z';
|
||||||
|
const fillAdd = '#3498db';
|
||||||
|
const dRemove =
|
||||||
|
'M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8ZM12.0355 7.49997V8.49997L3.96443 8.49997V7.49997H12.0355Z';
|
||||||
|
const fillRemove = '#b5b5b5';
|
||||||
|
|
||||||
|
const dPath = computed(() => (props.isAdd ? dAdd : dRemove));
|
||||||
|
const fillPath = computed(() => (props.isAdd ? fillAdd : fillRemove));
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<plugin-table-action-icon v-if="canAdd" :is-add="true" title="Add Row" @click="onClick('add')" />
|
||||||
|
<plugin-table-action-icon v-if="canDelete" :is-add="false" title="Delete this row" @click="onClick('remove')" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import { createEmptyJoinTable } from '@/js/helper';
|
||||||
|
import type { SavedData } from '@/types/model';
|
||||||
|
import { defineProps, withDefaults, inject } from 'vue';
|
||||||
|
|
||||||
|
const props = withDefaults(
|
||||||
|
defineProps<{
|
||||||
|
canAdd?: boolean;
|
||||||
|
canDelete?: boolean;
|
||||||
|
tableId: number;
|
||||||
|
}>(),
|
||||||
|
{
|
||||||
|
canAdd: true,
|
||||||
|
canDelete: true,
|
||||||
|
},
|
||||||
|
);
|
||||||
|
|
||||||
|
const savedData = inject<SavedData>('savedData') as SavedData;
|
||||||
|
const onClick = (type: 'add' | 'remove') => {
|
||||||
|
if (type === 'add') {
|
||||||
|
savedData.joinTables.push(createEmptyJoinTable());
|
||||||
|
} else if (savedData.joinTables.length > 1) {
|
||||||
|
savedData.joinTables = savedData.joinTables.filter((t) => t.id !== props.tableId);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,68 @@
|
|||||||
|
<template>
|
||||||
|
<plugin-row class="table-area flex-row border">
|
||||||
|
<div class="table-main-area ">
|
||||||
|
<plugin-row>
|
||||||
|
<plugin-dropdown label="取得元アプリ" :items="apps" v-model="table.app" />
|
||||||
|
</plugin-row>
|
||||||
|
<plugin-row>
|
||||||
|
<plugin-dropdown label="テーブル" :items="tables" v-model="table.table" />
|
||||||
|
</plugin-row>
|
||||||
|
<plugin-row class="flex-row" v-if="isJoinConditionShown(table)">
|
||||||
|
<plugin-label label="連結条件" />
|
||||||
|
<plugin-table-connect-row connector="=" v-model="table.onConditions" />
|
||||||
|
</plugin-row>
|
||||||
|
<plugin-row class="flex-row">
|
||||||
|
<plugin-label label="取得フィールド" />
|
||||||
|
<plugin-table-connect-row connector="→" v-model="table.fieldsMapping" />
|
||||||
|
</plugin-row>
|
||||||
|
<plugin-row class="flex-row">
|
||||||
|
<plugin-label label="絞込条件" />
|
||||||
|
<plugin-table-condition-row v-model="table.whereConditions" />
|
||||||
|
</plugin-row>
|
||||||
|
</div>
|
||||||
|
<div class="table-action-area">
|
||||||
|
<plugin-table-action-icon-group :can-delete="savedData.joinTables.length > 1" :table-id="table.id" />
|
||||||
|
</div>
|
||||||
|
</plugin-row>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import type { JoinTable, SavedData } from '@/types/model';
|
||||||
|
import { inject } from 'vue';
|
||||||
|
|
||||||
|
const savedData = inject<SavedData>('savedData') as SavedData;
|
||||||
|
|
||||||
|
const props = defineProps<{ table: JoinTable }>();
|
||||||
|
const apps = [
|
||||||
|
{
|
||||||
|
label: '-------',
|
||||||
|
value: '',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'lable 1',
|
||||||
|
value: 'value 1',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'lable 2',
|
||||||
|
value: 'value 2',
|
||||||
|
},
|
||||||
|
];
|
||||||
|
const tables = [
|
||||||
|
{
|
||||||
|
label: '-------',
|
||||||
|
value: '-------',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'tables 1',
|
||||||
|
value: 'tables 1',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: 'tables 2',
|
||||||
|
value: 'tables 2',
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const isJoinConditionShown = (table: JoinTable) => {
|
||||||
|
return savedData.joinTables[0].id !== table.id;
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
<template>
|
||||||
|
<kuc-table :class-name.camel="['plugin-kuc-table']" :columns="columns" :data="modelValue" @change="changeRow"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import type { WhereCondition } from '@/types/model';
|
||||||
|
import { defineProps, defineEmits } from 'vue';
|
||||||
|
import { Dropdown } from 'kintone-ui-component/lib/dropdown';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
modelValue: WhereCondition[];
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const renderDropdown = (cellData: string) => {
|
||||||
|
const dropdown = new Dropdown({
|
||||||
|
items: [
|
||||||
|
{ label: 'John Brown', value: 'john' },
|
||||||
|
{ label: 'Steven Gerard', value: 'steven' },
|
||||||
|
],
|
||||||
|
value: cellData,
|
||||||
|
});
|
||||||
|
return dropdown;
|
||||||
|
};
|
||||||
|
|
||||||
|
const renderCondition = (cellData: string) => {
|
||||||
|
const dropdown = new Dropdown({
|
||||||
|
items: [
|
||||||
|
{ label: 'John Brown', value: 'john' },
|
||||||
|
{ label: 'Steven Gerard', value: 'steven' },
|
||||||
|
],
|
||||||
|
value: cellData,
|
||||||
|
});
|
||||||
|
return dropdown;
|
||||||
|
};
|
||||||
|
|
||||||
|
const renderDynamicData = (cellData: string) => {
|
||||||
|
const dropdown = new Dropdown({
|
||||||
|
items: [
|
||||||
|
{ label: 'John Brown', value: 'john' },
|
||||||
|
{ label: 'Steven Gerard', value: 'steven' },
|
||||||
|
],
|
||||||
|
value: cellData,
|
||||||
|
});
|
||||||
|
return dropdown;
|
||||||
|
};
|
||||||
|
|
||||||
|
const columns = [
|
||||||
|
{
|
||||||
|
title: '取得元アプリのフィールド',
|
||||||
|
field: 'field',
|
||||||
|
render: renderDropdown,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '',
|
||||||
|
field: 'condition',
|
||||||
|
render: renderCondition,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '',
|
||||||
|
field: 'data',
|
||||||
|
render: renderDynamicData,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const leftFields = [] as kintone.fieldTypes.DropDown['Item'][];
|
||||||
|
const rightFields = [] as kintone.fieldTypes.DropDown['Item'][];
|
||||||
|
|
||||||
|
const emit = defineEmits<{
|
||||||
|
(e: 'update:modelValue', value: FieldsJoinMapping[]): void;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const changeRow = (item: FieldsJoinMapping, key: keyof FieldsJoinMapping, value: string) => {
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeField = (item: FieldsJoinMapping, key: keyof FieldsJoinMapping, value: string) => {
|
||||||
|
item[key] = value;
|
||||||
|
emit('update:modelValue', props.modelValue);
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
<template>
|
||||||
|
<kuc-table :class-name.camel="['plugin-kuc-table']" :columns="columns" :data="modelValue" @change="changeRow"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script setup lang="ts">
|
||||||
|
import type { FieldsJoinMapping } from '@/types/model';
|
||||||
|
import { defineProps, defineEmits } from 'vue';
|
||||||
|
import { Dropdown } from 'kintone-ui-component/lib/dropdown';
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
connector: string;
|
||||||
|
modelValue: FieldsJoinMapping[];
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const renderDropdown = (cellData: string) => {
|
||||||
|
const dropdown = new Dropdown({
|
||||||
|
items: [
|
||||||
|
{ label: 'John Brown', value: 'john' },
|
||||||
|
{ label: 'Steven Gerard', value: 'steven' },
|
||||||
|
],
|
||||||
|
value: cellData,
|
||||||
|
});
|
||||||
|
return dropdown;
|
||||||
|
};
|
||||||
|
const renderConnector = () => {
|
||||||
|
return props.connector;
|
||||||
|
};
|
||||||
|
|
||||||
|
const columns = [
|
||||||
|
{
|
||||||
|
title: '取得元アプリのフィールド',
|
||||||
|
field: 'leftField',
|
||||||
|
render: renderDropdown,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: '',
|
||||||
|
field: 'connector',
|
||||||
|
render: renderConnector,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: 'このアプリのフィールド',
|
||||||
|
field: 'rightField',
|
||||||
|
render: renderDropdown,
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
const leftFields = [] as kintone.fieldTypes.DropDown['Item'][];
|
||||||
|
const rightFields = [] as kintone.fieldTypes.DropDown['Item'][];
|
||||||
|
|
||||||
|
const emit = defineEmits<{
|
||||||
|
(e: 'update:modelValue', value: FieldsJoinMapping[]): void;
|
||||||
|
}>();
|
||||||
|
|
||||||
|
const changeRow = (item: FieldsJoinMapping, key: keyof FieldsJoinMapping, value: string) => {
|
||||||
|
};
|
||||||
|
|
||||||
|
const changeField = (item: FieldsJoinMapping, key: keyof FieldsJoinMapping, value: string) => {
|
||||||
|
item[key] = value;
|
||||||
|
emit('update:modelValue', props.modelValue);
|
||||||
|
};
|
||||||
|
</script>
|
||||||
@@ -1,6 +1,114 @@
|
|||||||
|
/* 辅助类 */
|
||||||
|
.flex-row {
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
.hidden {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
.border {
|
||||||
|
border: 1px solid #e3e7e8;
|
||||||
|
}
|
||||||
|
/* config 页面 */
|
||||||
|
#app {
|
||||||
|
width: 60vw;
|
||||||
|
min-width: 920px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 最上面的说明 */
|
||||||
.settings-heading {
|
.settings-heading {
|
||||||
padding: 1em 0;
|
padding: 1em 0;
|
||||||
}
|
}
|
||||||
.kintoneplugin-input-text {
|
|
||||||
width: 20em;
|
/* label 样式 */
|
||||||
|
.kintoneplugin-label {
|
||||||
|
padding-left: 20px;
|
||||||
|
line-height: 40px;
|
||||||
|
}
|
||||||
|
/* laebl input 单号的情况 */
|
||||||
|
.flex-row .kintoneplugin-label {
|
||||||
|
margin: 0;
|
||||||
|
width: 10em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 表格内容垂直居中 */
|
||||||
|
.table-area {
|
||||||
|
margin: 0;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 整体边框相关样式 */
|
||||||
|
.header-row {
|
||||||
|
padding: 24px 0;
|
||||||
|
margin: 0;
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
.table-main-area {
|
||||||
|
flex: 1;
|
||||||
|
border-right: 1px solid #e3e7e8;
|
||||||
|
padding-top: 24px;
|
||||||
|
}
|
||||||
|
.footer-row {
|
||||||
|
padding: 24px 0;
|
||||||
|
margin-bottom: 32px;
|
||||||
|
text-align: right;
|
||||||
|
border-top: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 底部按钮空间 */
|
||||||
|
.save-btn {
|
||||||
|
margin-left: 16px;
|
||||||
|
margin-right: 24px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 输入框宽度 */
|
||||||
|
.kuc-text-input {
|
||||||
|
--kuc-text-input-width: max(15vw, 200px);
|
||||||
|
--kuc-dropdown-toggle-width: max(15vw, 200px);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 统一 kintone +/- 按钮样式 */
|
||||||
|
.kuc-action-button {
|
||||||
|
width: 24px;
|
||||||
|
height: 24px;
|
||||||
|
background: transparent;
|
||||||
|
border: 1px solid transparent;
|
||||||
|
padding: 2px;
|
||||||
|
cursor: pointer;
|
||||||
|
margin: 0 4px;
|
||||||
|
}
|
||||||
|
.kuc-action-button.remove {
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
.kuc-action-button.add {
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
.kuc-action-button:focus {
|
||||||
|
border: 1px solid #3498db;
|
||||||
|
outline: none;
|
||||||
|
}
|
||||||
|
.kuc-action-button.remove:hover path {
|
||||||
|
fill: #e74c3c;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 覆盖表格样式 */
|
||||||
|
.plugin-kuc-table td {
|
||||||
|
border-left-color: rgba(0, 0, 0, 0);
|
||||||
|
border-right-color: rgba(0, 0, 0, 0);
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
.plugin-kuc-table tr td:nth-last-child(2) {
|
||||||
|
border-right-color: #e3e7e8;
|
||||||
|
}
|
||||||
|
.plugin-kuc-table tr td:first-child {
|
||||||
|
border-left-color: #e3e7e8;
|
||||||
|
}
|
||||||
|
.plugin-kuc-table .kuc-table-1-18-0__table__body__row__action {
|
||||||
|
height: 55px;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 絞り込み条件选择相关样式 */
|
||||||
|
.row-connector-area {
|
||||||
|
margin: 0 1em;
|
||||||
}
|
}
|
||||||
|
|||||||
13
vue-project/my-kintone-plugin/src/i18n/index.ts
Normal file
13
vue-project/my-kintone-plugin/src/i18n/index.ts
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
import { createI18n } from 'vue-i18n';
|
||||||
|
import ja from './lang/ja';
|
||||||
|
import en from './lang/en';
|
||||||
|
|
||||||
|
const i18n = createI18n({
|
||||||
|
legacy: false,
|
||||||
|
locale: kintone.getLoginUser().language || 'ja',
|
||||||
|
messages: {
|
||||||
|
ja,
|
||||||
|
en,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
export default i18n;
|
||||||
6
vue-project/my-kintone-plugin/src/i18n/lang/en.ts
Normal file
6
vue-project/my-kintone-plugin/src/i18n/lang/en.ts
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
export default {
|
||||||
|
config: {
|
||||||
|
title: 'Settings for data fetch plugin',
|
||||||
|
desc: 'This message is displayed on the app page after the app has been updated.',
|
||||||
|
},
|
||||||
|
};
|
||||||
6
vue-project/my-kintone-plugin/src/i18n/lang/ja.ts
Normal file
6
vue-project/my-kintone-plugin/src/i18n/lang/ja.ts
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
export default {
|
||||||
|
config: {
|
||||||
|
title: 'Settings for data fetch plugin',
|
||||||
|
desc: 'This message is displayed on the app page after the app has been updated.',
|
||||||
|
},
|
||||||
|
};
|
||||||
16
vue-project/my-kintone-plugin/src/js/helper.ts
Normal file
16
vue-project/my-kintone-plugin/src/js/helper.ts
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import type { JoinTable } from '@/types/model';
|
||||||
|
|
||||||
|
export const condition = {
|
||||||
|
unset: '',
|
||||||
|
eq: '=',
|
||||||
|
};
|
||||||
|
export function createEmptyJoinTable(id = Number(new Date())) {
|
||||||
|
return {
|
||||||
|
id,
|
||||||
|
app: '',
|
||||||
|
table: '',
|
||||||
|
onConditions: [{ leftField: '', rightField: '' }],
|
||||||
|
fieldsMapping: [{ leftField: '', rightField: '' }],
|
||||||
|
whereConditions: [{ field: '', condition: condition.unset, data: '' }],
|
||||||
|
} as JoinTable;
|
||||||
|
}
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
import { createApp } from 'vue';
|
import { createApp } from 'vue';
|
||||||
import Config from './components/Config.vue';
|
import Config from './components/Config.vue';
|
||||||
|
import i18n from './i18n/index';
|
||||||
|
|
||||||
createApp(Config, { pluginId: kintone.$PLUGIN_ID }).mount('#app');
|
createApp(Config, { pluginId: kintone.$PLUGIN_ID }).use(i18n).mount('#app');
|
||||||
|
|||||||
@@ -1,11 +1,27 @@
|
|||||||
// https://cybozu.dev/ja/kintone/docs/overview/field-types/
|
// https://cybozu.dev/ja/kintone/docs/overview/field-types/
|
||||||
// https://cybozudev.kf5.com/hc/kb/article/201593/
|
// https://cybozudev.kf5.com/hc/kb/article/201593/
|
||||||
declare namespace kintone.fieldTypes {
|
declare namespace kintone.fieldTypes {
|
||||||
interface TABLE {
|
interface Table {
|
||||||
type: 'SUBTABLE';
|
type: 'SUBTABLE';
|
||||||
value: any;
|
value: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
interface DropDown {
|
||||||
|
Item: {
|
||||||
|
label: string,
|
||||||
|
value: string,
|
||||||
|
disabled?: boolean
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
declare namespace kintone {
|
||||||
|
interface Event {
|
||||||
|
detail: {
|
||||||
|
value: string;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// lookup https://cybozudev.kf5.com/hc/kb/article/1611088/
|
// lookup https://cybozudev.kf5.com/hc/kb/article/1611088/
|
||||||
|
|||||||
27
vue-project/my-kintone-plugin/src/types/model.d.ts
vendored
Normal file
27
vue-project/my-kintone-plugin/src/types/model.d.ts
vendored
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
import { condition } from './helper';
|
||||||
|
|
||||||
|
export interface FieldsJoinMapping {
|
||||||
|
leftField: string;
|
||||||
|
rightField: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface WhereCondition {
|
||||||
|
field: string;
|
||||||
|
condition: (typeof condition)[keyof typeof condition];
|
||||||
|
data: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface JoinTable {
|
||||||
|
id: number; // 用于唯一区分
|
||||||
|
app: string; // 取得元アプリ
|
||||||
|
table: string; // テーブル
|
||||||
|
onConditions: FieldsJoinMapping[]; // 連結条件
|
||||||
|
fieldsMapping: FieldsJoinMapping[]; // 取得フィールド
|
||||||
|
whereConditions: WhereCondition[]; // 絞込条件
|
||||||
|
}
|
||||||
|
|
||||||
|
// 存储的数据格式
|
||||||
|
export interface SavedData {
|
||||||
|
buttonName: string;
|
||||||
|
joinTables: JoinTable[];
|
||||||
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"extends": "@vue/tsconfig/tsconfig.dom.json",
|
"extends": "@vue/tsconfig/tsconfig.dom.json",
|
||||||
"include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
|
"include": ["env.d.ts", "src/**/*", "src/**/*.vue", "components.d.ts"],
|
||||||
"exclude": ["src/**/__tests__/*"],
|
"exclude": ["src/**/__tests__/*"],
|
||||||
"files" : [
|
"files" : [
|
||||||
"./node_modules/@kintone/dts-gen/kintone.d.ts",
|
"./node_modules/@kintone/dts-gen/kintone.d.ts",
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ import vue from '@vitejs/plugin-vue'
|
|||||||
import copy from "rollup-plugin-copy";
|
import copy from "rollup-plugin-copy";
|
||||||
import path from 'path';
|
import path from 'path';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
|
import Components from 'unplugin-vue-components/vite';
|
||||||
|
|
||||||
function replaceKucTagsPlugin() {
|
function replaceKucTagsPlugin() {
|
||||||
return {
|
return {
|
||||||
name: 'vite-plugin-replace-tags',
|
name: 'vite-plugin-replace-tags',
|
||||||
@@ -46,6 +48,7 @@ export default defineConfig({
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
|
Components(),
|
||||||
copy({
|
copy({
|
||||||
targets: [
|
targets: [
|
||||||
{ src: 'dist/index.html', dest: 'dist/src/html', rename: 'config.html' },
|
{ src: 'dist/index.html', dest: 'dist/src/html', rename: 'config.html' },
|
||||||
@@ -57,6 +60,11 @@ export default defineConfig({
|
|||||||
}),
|
}),
|
||||||
replaceKucTagsPlugin()
|
replaceKucTagsPlugin()
|
||||||
],
|
],
|
||||||
|
resolve: {
|
||||||
|
alias: {
|
||||||
|
'@': path.resolve(__dirname, 'src'),
|
||||||
|
},
|
||||||
|
},
|
||||||
build: {
|
build: {
|
||||||
rollupOptions: {
|
rollupOptions: {
|
||||||
input: {
|
input: {
|
||||||
@@ -2,6 +2,11 @@
|
|||||||
# yarn lockfile v1
|
# yarn lockfile v1
|
||||||
|
|
||||||
|
|
||||||
|
"@antfu/utils@^0.7.10":
|
||||||
|
version "0.7.10"
|
||||||
|
resolved "https://registry.npmmirror.com/@antfu/utils/-/utils-0.7.10.tgz"
|
||||||
|
integrity sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==
|
||||||
|
|
||||||
"@babel/code-frame@^7.0.0":
|
"@babel/code-frame@^7.0.0":
|
||||||
version "7.26.2"
|
version "7.26.2"
|
||||||
resolved "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz"
|
resolved "https://registry.npmmirror.com/@babel/code-frame/-/code-frame-7.26.2.tgz"
|
||||||
@@ -21,7 +26,7 @@
|
|||||||
resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz"
|
resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz"
|
||||||
integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==
|
integrity sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==
|
||||||
|
|
||||||
"@babel/parser@^7.25.3":
|
"@babel/parser@^7.15.8", "@babel/parser@^7.25.3":
|
||||||
version "7.26.3"
|
version "7.26.3"
|
||||||
resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz"
|
resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.26.3.tgz"
|
||||||
integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==
|
integrity sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==
|
||||||
@@ -342,6 +347,27 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
mute-stream "^1.0.0"
|
mute-stream "^1.0.0"
|
||||||
|
|
||||||
|
"@intlify/core-base@11.0.1":
|
||||||
|
version "11.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/@intlify/core-base/-/core-base-11.0.1.tgz"
|
||||||
|
integrity sha512-NAmhw1l/llM0HZRpagR/ChJTNymW4ll6/4EDSJML5c8L5Hl/+k6UyF8EIgE6DeHpfheQujkSRngauViHqq6jJQ==
|
||||||
|
dependencies:
|
||||||
|
"@intlify/message-compiler" "11.0.1"
|
||||||
|
"@intlify/shared" "11.0.1"
|
||||||
|
|
||||||
|
"@intlify/message-compiler@11.0.1":
|
||||||
|
version "11.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/@intlify/message-compiler/-/message-compiler-11.0.1.tgz"
|
||||||
|
integrity sha512-5RFH8x+Mn3mbjcHXnb6KCXGiczBdiQkWkv99iiA0JpKrNuTAQeW59Pjq/uObMB0eR0shnKYGTkIJxum+DbL3sw==
|
||||||
|
dependencies:
|
||||||
|
"@intlify/shared" "11.0.1"
|
||||||
|
source-map-js "^1.0.2"
|
||||||
|
|
||||||
|
"@intlify/shared@11.0.1":
|
||||||
|
version "11.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/@intlify/shared/-/shared-11.0.1.tgz"
|
||||||
|
integrity sha512-lH164+aDDptHZ3dBDbIhRa1dOPQUp+83iugpc+1upTOWCnwyC1PVis6rSWNMMJ8VQxvtHQB9JMib48K55y0PvQ==
|
||||||
|
|
||||||
"@jridgewell/sourcemap-codec@^1.5.0":
|
"@jridgewell/sourcemap-codec@^1.5.0":
|
||||||
version "1.5.0"
|
version "1.5.0"
|
||||||
resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz"
|
resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz"
|
||||||
@@ -460,7 +486,7 @@
|
|||||||
unbzip2-stream "^1.4.3"
|
unbzip2-stream "^1.4.3"
|
||||||
yargs "^17.7.2"
|
yargs "^17.7.2"
|
||||||
|
|
||||||
"@rollup/pluginutils@5":
|
"@rollup/pluginutils@^5.1.4", "@rollup/pluginutils@5":
|
||||||
version "5.1.4"
|
version "5.1.4"
|
||||||
resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.4.tgz"
|
resolved "https://registry.npmmirror.com/@rollup/pluginutils/-/pluginutils-5.1.4.tgz"
|
||||||
integrity sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==
|
integrity sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==
|
||||||
@@ -852,6 +878,11 @@
|
|||||||
de-indent "^1.0.2"
|
de-indent "^1.0.2"
|
||||||
he "^1.2.0"
|
he "^1.2.0"
|
||||||
|
|
||||||
|
"@vue/devtools-api@^6.5.0":
|
||||||
|
version "6.6.4"
|
||||||
|
resolved "https://registry.npmmirror.com/@vue/devtools-api/-/devtools-api-6.6.4.tgz"
|
||||||
|
integrity sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==
|
||||||
|
|
||||||
"@vue/language-core@2.2.0":
|
"@vue/language-core@2.2.0":
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.2.0.tgz"
|
resolved "https://registry.npmmirror.com/@vue/language-core/-/language-core-2.2.0.tgz"
|
||||||
@@ -1373,6 +1404,11 @@ concat-map@0.0.1:
|
|||||||
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
|
resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
|
||||||
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==
|
||||||
|
|
||||||
|
confbox@^0.1.8:
|
||||||
|
version "0.1.8"
|
||||||
|
resolved "https://registry.npmmirror.com/confbox/-/confbox-0.1.8.tgz"
|
||||||
|
integrity sha512-RMtmw0iFkeR4YV+fUOSucriAQNb9g8zFR52MWCtl+cCZOFRNL6zeB395vPzFhEjjn4fMxXudmELnl/KF/WrK6w==
|
||||||
|
|
||||||
core-js@^3.38.1, core-js@^3.39.0:
|
core-js@^3.38.1, core-js@^3.39.0:
|
||||||
version "3.40.0"
|
version "3.40.0"
|
||||||
resolved "https://registry.npmmirror.com/core-js/-/core-js-3.40.0.tgz"
|
resolved "https://registry.npmmirror.com/core-js/-/core-js-3.40.0.tgz"
|
||||||
@@ -2165,7 +2201,7 @@ fast-fifo@^1.2.0, fast-fifo@^1.3.2:
|
|||||||
resolved "https://registry.npmmirror.com/fast-fifo/-/fast-fifo-1.3.2.tgz"
|
resolved "https://registry.npmmirror.com/fast-fifo/-/fast-fifo-1.3.2.tgz"
|
||||||
integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==
|
integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==
|
||||||
|
|
||||||
fast-glob@^3.0.3, fast-glob@^3.2.9, fast-glob@^3.3.2:
|
fast-glob@^3.0.3, fast-glob@^3.2.9, fast-glob@^3.3.2, fast-glob@^3.3.3:
|
||||||
version "3.3.3"
|
version "3.3.3"
|
||||||
resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.3.tgz"
|
resolved "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.3.tgz"
|
||||||
integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==
|
integrity sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==
|
||||||
@@ -3021,6 +3057,14 @@ lit@^3.2.0:
|
|||||||
lit-element "^4.1.0"
|
lit-element "^4.1.0"
|
||||||
lit-html "^3.2.0"
|
lit-html "^3.2.0"
|
||||||
|
|
||||||
|
local-pkg@^0.5.1:
|
||||||
|
version "0.5.1"
|
||||||
|
resolved "https://registry.npmmirror.com/local-pkg/-/local-pkg-0.5.1.tgz"
|
||||||
|
integrity sha512-9rrA30MRRP3gBD3HTGnC6cDFpaE1kVDWxWgqWJUN0RvDNAo+Nz/9GxB+nHOH0ifbVFy0hSA1V6vFDvnx54lTEQ==
|
||||||
|
dependencies:
|
||||||
|
mlly "^1.7.3"
|
||||||
|
pkg-types "^1.2.1"
|
||||||
|
|
||||||
locate-path@^5.0.0:
|
locate-path@^5.0.0:
|
||||||
version "5.0.0"
|
version "5.0.0"
|
||||||
resolved "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz"
|
resolved "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz"
|
||||||
@@ -3064,7 +3108,7 @@ lru-cache@^7.14.1:
|
|||||||
resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-7.18.3.tgz"
|
resolved "https://registry.npmmirror.com/lru-cache/-/lru-cache-7.18.3.tgz"
|
||||||
integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
|
integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==
|
||||||
|
|
||||||
magic-string@^0.30.11:
|
magic-string@^0.30.11, magic-string@^0.30.17:
|
||||||
version "0.30.17"
|
version "0.30.17"
|
||||||
resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.17.tgz"
|
resolved "https://registry.npmmirror.com/magic-string/-/magic-string-0.30.17.tgz"
|
||||||
integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==
|
integrity sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==
|
||||||
@@ -3210,6 +3254,16 @@ mkdirp@^3.0.1:
|
|||||||
resolved "https://registry.npmmirror.com/mkdirp/-/mkdirp-3.0.1.tgz"
|
resolved "https://registry.npmmirror.com/mkdirp/-/mkdirp-3.0.1.tgz"
|
||||||
integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
|
integrity sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==
|
||||||
|
|
||||||
|
mlly@^1.7.3, mlly@^1.7.4:
|
||||||
|
version "1.7.4"
|
||||||
|
resolved "https://registry.npmmirror.com/mlly/-/mlly-1.7.4.tgz"
|
||||||
|
integrity sha512-qmdSIPC4bDJXgZTCR7XosJiNKySV7O215tsPtDN9iEO/7q/76b/ijtgRu/+epFXSJhijtTCCGp3DWS549P3xKw==
|
||||||
|
dependencies:
|
||||||
|
acorn "^8.14.0"
|
||||||
|
pathe "^2.0.1"
|
||||||
|
pkg-types "^1.3.0"
|
||||||
|
ufo "^1.5.4"
|
||||||
|
|
||||||
ms@^2.1.1, ms@^2.1.3:
|
ms@^2.1.1, ms@^2.1.3:
|
||||||
version "2.1.3"
|
version "2.1.3"
|
||||||
resolved "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
|
resolved "https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz"
|
||||||
@@ -3505,6 +3559,11 @@ path-type@^4.0.0:
|
|||||||
resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
|
resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz"
|
||||||
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
|
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
|
||||||
|
|
||||||
|
pathe@^2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/pathe/-/pathe-2.0.1.tgz"
|
||||||
|
integrity sha512-6jpjMpOth5S9ITVu5clZ7NOgHNsv5vRQdheL9ztp2vZmM6fRbLvyua1tiBIL4lk8SAe3ARzeXEly6siXCjDHDw==
|
||||||
|
|
||||||
pend@~1.2.0:
|
pend@~1.2.0:
|
||||||
version "1.2.0"
|
version "1.2.0"
|
||||||
resolved "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz"
|
resolved "https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz"
|
||||||
@@ -3535,6 +3594,15 @@ picomatch@^4.0.2:
|
|||||||
resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz"
|
resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz"
|
||||||
integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==
|
integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==
|
||||||
|
|
||||||
|
pkg-types@^1.2.1, pkg-types@^1.3.0:
|
||||||
|
version "1.3.1"
|
||||||
|
resolved "https://registry.npmmirror.com/pkg-types/-/pkg-types-1.3.1.tgz"
|
||||||
|
integrity sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==
|
||||||
|
dependencies:
|
||||||
|
confbox "^0.1.8"
|
||||||
|
mlly "^1.7.4"
|
||||||
|
pathe "^2.0.1"
|
||||||
|
|
||||||
possible-typed-array-names@^1.0.0:
|
possible-typed-array-names@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz"
|
resolved "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz"
|
||||||
@@ -4009,7 +4077,7 @@ socks@^2.8.3:
|
|||||||
ip-address "^9.0.5"
|
ip-address "^9.0.5"
|
||||||
smart-buffer "^4.2.0"
|
smart-buffer "^4.2.0"
|
||||||
|
|
||||||
source-map-js@^1.2.0, source-map-js@^1.2.1:
|
source-map-js@^1.0.2, source-map-js@^1.2.0, source-map-js@^1.2.1:
|
||||||
version "1.2.1"
|
version "1.2.1"
|
||||||
resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz"
|
resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz"
|
||||||
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
|
integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==
|
||||||
@@ -4379,6 +4447,11 @@ typescript@*, typescript@^5.7.3, typescript@>=4.2.0, "typescript@>=4.7.5 || ^5.0
|
|||||||
resolved "https://registry.npmmirror.com/typescript/-/typescript-5.7.3.tgz"
|
resolved "https://registry.npmmirror.com/typescript/-/typescript-5.7.3.tgz"
|
||||||
integrity sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==
|
integrity sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==
|
||||||
|
|
||||||
|
ufo@^1.5.4:
|
||||||
|
version "1.5.4"
|
||||||
|
resolved "https://registry.npmmirror.com/ufo/-/ufo-1.5.4.tgz"
|
||||||
|
integrity sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==
|
||||||
|
|
||||||
unbox-primitive@^1.1.0:
|
unbox-primitive@^1.1.0:
|
||||||
version "1.1.0"
|
version "1.1.0"
|
||||||
resolved "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz"
|
resolved "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.1.0.tgz"
|
||||||
@@ -4407,6 +4480,30 @@ universalify@^0.1.0:
|
|||||||
resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz"
|
resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz"
|
||||||
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
|
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
|
||||||
|
|
||||||
|
unplugin-vue-components@^28.0.0:
|
||||||
|
version "28.0.0"
|
||||||
|
resolved "https://registry.npmmirror.com/unplugin-vue-components/-/unplugin-vue-components-28.0.0.tgz"
|
||||||
|
integrity sha512-vYe0wSyqTVhyNFIad1iiGyQGhG++tDOMgohqenMDOAooMJP9vvzCdXTqCVx20A0rCQXFNjgoRbSeDAioLPH36Q==
|
||||||
|
dependencies:
|
||||||
|
"@antfu/utils" "^0.7.10"
|
||||||
|
"@rollup/pluginutils" "^5.1.4"
|
||||||
|
chokidar "^3.6.0"
|
||||||
|
debug "^4.4.0"
|
||||||
|
fast-glob "^3.3.3"
|
||||||
|
local-pkg "^0.5.1"
|
||||||
|
magic-string "^0.30.17"
|
||||||
|
minimatch "^9.0.5"
|
||||||
|
mlly "^1.7.3"
|
||||||
|
unplugin "^2.1.2"
|
||||||
|
|
||||||
|
unplugin@^2.1.2:
|
||||||
|
version "2.1.2"
|
||||||
|
resolved "https://registry.npmmirror.com/unplugin/-/unplugin-2.1.2.tgz"
|
||||||
|
integrity sha512-Q3LU0e4zxKfRko1wMV2HmP8lB9KWislY7hxXpxd+lGx0PRInE4vhMBVEZwpdVYHvtqzhSrzuIfErsob6bQfCzw==
|
||||||
|
dependencies:
|
||||||
|
acorn "^8.14.0"
|
||||||
|
webpack-virtual-modules "^0.6.2"
|
||||||
|
|
||||||
uri-js@^4.2.2:
|
uri-js@^4.2.2:
|
||||||
version "4.4.1"
|
version "4.4.1"
|
||||||
resolved "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz"
|
resolved "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz"
|
||||||
@@ -4443,6 +4540,15 @@ vscode-uri@^3.0.8:
|
|||||||
resolved "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.0.8.tgz"
|
resolved "https://registry.npmmirror.com/vscode-uri/-/vscode-uri-3.0.8.tgz"
|
||||||
integrity sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==
|
integrity sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==
|
||||||
|
|
||||||
|
vue-i18n@^11.0.1:
|
||||||
|
version "11.0.1"
|
||||||
|
resolved "https://registry.npmmirror.com/vue-i18n/-/vue-i18n-11.0.1.tgz"
|
||||||
|
integrity sha512-pWAT8CusK8q9/EpN7V3oxwHwxWm6+Kp2PeTZmRGvdZTkUzMQDpbbmHp0TwQ8xw04XKm23cr6B4GL72y3W8Yekg==
|
||||||
|
dependencies:
|
||||||
|
"@intlify/core-base" "11.0.1"
|
||||||
|
"@intlify/shared" "11.0.1"
|
||||||
|
"@vue/devtools-api" "^6.5.0"
|
||||||
|
|
||||||
vue-tsc@^2.1.10:
|
vue-tsc@^2.1.10:
|
||||||
version "2.2.0"
|
version "2.2.0"
|
||||||
resolved "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.2.0.tgz"
|
resolved "https://registry.npmmirror.com/vue-tsc/-/vue-tsc-2.2.0.tgz"
|
||||||
@@ -4451,7 +4557,7 @@ vue-tsc@^2.1.10:
|
|||||||
"@volar/typescript" "~2.4.11"
|
"@volar/typescript" "~2.4.11"
|
||||||
"@vue/language-core" "2.2.0"
|
"@vue/language-core" "2.2.0"
|
||||||
|
|
||||||
vue@^3.2.25, vue@^3.4.0, vue@^3.5.13, vue@3.5.13:
|
vue@^3.0.0, vue@^3.2.25, vue@^3.4.0, vue@^3.5.13, "vue@2 || 3", vue@3.5.13:
|
||||||
version "3.5.13"
|
version "3.5.13"
|
||||||
resolved "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz"
|
resolved "https://registry.npmjs.org/vue/-/vue-3.5.13.tgz"
|
||||||
integrity sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==
|
integrity sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==
|
||||||
@@ -4462,6 +4568,11 @@ vue@^3.2.25, vue@^3.4.0, vue@^3.5.13, vue@3.5.13:
|
|||||||
"@vue/server-renderer" "3.5.13"
|
"@vue/server-renderer" "3.5.13"
|
||||||
"@vue/shared" "3.5.13"
|
"@vue/shared" "3.5.13"
|
||||||
|
|
||||||
|
webpack-virtual-modules@^0.6.2:
|
||||||
|
version "0.6.2"
|
||||||
|
resolved "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz"
|
||||||
|
integrity sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==
|
||||||
|
|
||||||
which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1:
|
which-boxed-primitive@^1.1.0, which-boxed-primitive@^1.1.1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz"
|
resolved "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz"
|
||||||
|
|||||||
Reference in New Issue
Block a user