@abi-software/mapintegratedvuer 1.5.1-beta-1 → 1.5.2

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@abi-software/mapintegratedvuer",
3
- "version": "1.5.1-beta-1",
3
+ "version": "1.5.2",
4
4
  "license": "Apache-2.0",
5
5
  "scripts": {
6
6
  "serve": "vite --host --force",
@@ -50,32 +50,28 @@
50
50
  "*.js"
51
51
  ],
52
52
  "dependencies": {
53
- "@abi-software/flatmapvuer": "^1.5.1",
54
- "@abi-software/map-side-bar": "^2.4.1",
55
- "@abi-software/map-utilities": "^1.1.0",
56
- "@abi-software/plotvuer": "1.0.0",
57
- "@abi-software/scaffoldvuer": "^1.4.1",
58
- "@abi-software/simulationvuer": "2.0.6",
59
- "@abi-software/svg-sprite": "1.0.0",
53
+ "@abi-software/flatmapvuer": "^1.5.6",
54
+ "@abi-software/map-side-bar": "^2.4.2",
55
+ "@abi-software/map-utilities": "^1.1.2",
56
+ "@abi-software/plotvuer": "^1.0.3",
57
+ "@abi-software/scaffoldvuer": "^1.5.1",
58
+ "@abi-software/simulationvuer": "^1.0.1",
59
+ "@abi-software/svg-sprite": "^1.0.1",
60
60
  "@element-plus/icons-vue": "^2.3.1",
61
- "@pinia/testing": "^0.1.3",
62
61
  "@vitejs/plugin-vue": "^4.6.2",
63
62
  "css-element-queries": "^1.2.3",
64
- "element-plus": "^2.4.4",
63
+ "element-plus": "2.8.4",
65
64
  "marked": "^4.3.0",
66
65
  "mitt": "^3.0.1",
67
66
  "pinia": "^2.1.7",
68
67
  "splitpanes": "^3.1.5",
69
- "vue": "^3.5.11",
70
- "vue-router": "^4.2.5",
71
- "vuex": "^4.1.0",
68
+ "vue": "^3.4.21",
72
69
  "xss": "^1.0.14"
73
70
  },
74
71
  "devDependencies": {
75
- "@cypress/webpack-dev-server": "^3.6.1",
72
+ "@pinia/testing": "^0.1.3",
76
73
  "@vue/test-utils": "^2.4.4",
77
74
  "@vuese/markdown-render": "^2.11.3",
78
- "@vuese/parser": "^2.10.3",
79
75
  "auto-changelog": "^2.4.0",
80
76
  "babel-eslint": "^10.0.3",
81
77
  "babel-plugin-component": "^1.1.1",
@@ -100,7 +96,9 @@
100
96
  "sass": "^1.69.5",
101
97
  "vite": "^5.0.10",
102
98
  "vitepress": "^1.0.0-rc.45",
103
- "vitest": "^1.2.2"
99
+ "vitest": "^1.2.2",
100
+ "vue-docgen-api": "^4.79.2",
101
+ "vue-router": "^4.2.5"
104
102
  },
105
103
  "eslintConfig": {
106
104
  "root": true,
@@ -121,6 +121,7 @@ export default {
121
121
  },
122
122
  speciesChanged: function (species) {
123
123
  this.activeSpecies = species;
124
+ this.$emit("species-changed", species);
124
125
  },
125
126
  receiveSynchronisedEvent: async function (data) {
126
127
  this.$refs.viewer?.receiveSynchronisedEvent(data);
@@ -64,7 +64,7 @@ export default {
64
64
  */
65
65
  options: {
66
66
  type: Object,
67
- default: () => {},
67
+ default: () => ({}),
68
68
  required: true
69
69
  },
70
70
  /**
@@ -100,7 +100,7 @@ export default {
100
100
  },
101
101
  methods: {
102
102
  /**
103
- * @vuese
103
+ * @public
104
104
  * Function to check whether it is in fullscreen mode or not.
105
105
  *
106
106
  */
@@ -109,9 +109,9 @@ export default {
109
109
  document.mozFullScreenElement || document.msFullscreenElement )
110
110
  },
111
111
  /**
112
- * @vuese
112
+ * @public
113
113
  * Function to toggle fullscreen.
114
- * @arg fullscreenRequest
114
+ * @arg `fullscreenReq`
115
115
  */
116
116
  onFullscreen: function(fullscreenReq) {
117
117
  //If a request is sent, try it
@@ -133,7 +133,7 @@ export default {
133
133
  }
134
134
  },
135
135
  /**
136
- * @vuese
136
+ * @public
137
137
  * Function to leave fullscreen mode.
138
138
  */
139
139
  leaveFullscreen: function(){
@@ -150,7 +150,7 @@ export default {
150
150
  }
151
151
  },
152
152
  /**
153
- * @vuese
153
+ * @public
154
154
  * Function to go to fullscreen mode.
155
155
  */
156
156
  goFullscreen: function(){
@@ -172,12 +172,12 @@ export default {
172
172
  return this.$refs.flow.getState();
173
173
  },
174
174
  /**
175
- * @vuese
175
+ * @public
176
176
  * Provide a way to set the current view, this is currently limited
177
177
  * to setting view for flatmapm, multiflatmap or scaffold.
178
178
  * In the case of the multiflatmap, it will not create a new entry and
179
179
  * instead change the current entry by setting the state.
180
- * @arg state
180
+ * @arg `state`
181
181
  */
182
182
  setCurrentEntry: async function(state) {
183
183
  if (state && state.type) {
@@ -253,15 +253,16 @@ export default {
253
253
  }
254
254
  },
255
255
  /**
256
- * @vuese
256
+ * @public
257
257
  * Open the sidebar with the specified facets and query.
258
- * @arg facets, query
258
+ * @arg `facets`,
259
+ * @arg `query`
259
260
  */
260
261
  openSearch: function(facets, query) {
261
262
  return this.$refs.flow.openSearch(facets, query);
262
263
  },
263
264
  /**
264
- * @vuese
265
+ * @public
265
266
  * Function to run when the component is mounted.
266
267
  */
267
268
  flowMounted: function () {
@@ -15,6 +15,7 @@
15
15
  :entry="entry"
16
16
  ref="content"
17
17
  @resource-selected="resourceSelected"
18
+ @species-changed="speciesChanged"
18
19
  :visible="isIdVisible(entry.id)"
19
20
  />
20
21
  </div>
@@ -56,6 +57,9 @@ export default {
56
57
  resourceSelected: function(result) {
57
58
  this.$emit("resource-selected", result);
58
59
  },
60
+ speciesChanged: function (species) {
61
+ this.$emit("species-changed", species);
62
+ },
59
63
  getClass: function(id) {
60
64
  if (this.isIdVisible(id)) {
61
65
  return this.getRefsName(id);
@@ -41,6 +41,7 @@
41
41
  :entries="entries"
42
42
  ref="splitdialog"
43
43
  @resource-selected="resourceSelected"
44
+ @species-changed="speciesChanged"
44
45
  />
45
46
  </div>
46
47
  </el-main>
@@ -451,6 +452,11 @@ export default {
451
452
  this.$refs.splitdialog.sendSynchronisedEvent(result);
452
453
  }
453
454
  },
455
+ speciesChanged: function (species) {
456
+ if (this.$refs.sideBar) {
457
+ this.$refs.sideBar.close();
458
+ }
459
+ },
454
460
  tabClicked: function ({id, type}) {
455
461
  this.activeDockedId = id;
456
462
  },
@@ -12,12 +12,11 @@ export default defineConfig((configEnv) => {
12
12
  fileName: "mapintegratedvuer",
13
13
  },
14
14
  rollupOptions: {
15
- external: ["vue", "pinia", "@abi-software/simulationvuer"],
15
+ external: ["vue", "pinia"],
16
16
  output: {
17
17
  globals: {
18
18
  vue: "Vue",
19
19
  pinia: "pinia",
20
- "@abi-software/simulationvuer": "simulationvuer",
21
20
  },
22
21
  },
23
22
  },
@@ -8,7 +8,8 @@
8
8
  import fs from 'fs'
9
9
  import path from 'path'
10
10
  import chokidar from 'chokidar'
11
- import { parser } from '@vuese/parser'
11
+ // import { parser } from '@vuese/parser'
12
+ import { parseSource } from 'vue-docgen-api'
12
13
  import { Render } from '@vuese/markdown-render'
13
14
 
14
15
  const watchMode = process.argv.find((argv) => argv === 'watch')
@@ -22,29 +23,87 @@ function generateMarkdown(file) {
22
23
  const fileContent = fs.readFileSync(fileWithPath, 'utf-8')
23
24
 
24
25
  try {
25
- const parserResult = parser(fileContent)
26
- const r = new Render(parserResult)
27
- const renderResult = r.render()
28
- const markdownResult = r.renderMarkdown()
29
- const markdownContent = markdownResult.content
30
- const componentName = path.basename(fileWithPath, '.vue')
31
-
32
- if (!fs.existsSync(outputDir)) {
33
- fs.mkdirSync(outputDir)
34
- }
26
+ // const parserResult = parser(fileContent)
27
+ const parserResult = parseSource(fileContent, fileWithPath)
28
+ parserResult.then((result) => {
29
+ const {
30
+ displayName: name,
31
+ description: desc,
32
+ props,
33
+ events,
34
+ methods,
35
+ } = result
36
+
37
+ // transform props to vuese styles
38
+ const parseResult = {
39
+ name: name,
40
+ componentDesc: {
41
+ default: [desc]
42
+ },
43
+ props: transformData(props),
44
+ events: transformData(events),
45
+ methods: transformData(methods),
46
+ }
47
+ const r = new Render(parseResult)
48
+ const renderResult = r.render()
49
+ const markdownResult = r.renderMarkdown()
50
+ const markdownContent = markdownResult.content
51
+ const componentName = path.basename(fileWithPath, '.vue')
35
52
 
36
- fs.writeFile(`${outputDir}/${componentName}.md`, markdownContent, (err) => {
37
- if (err) {
38
- console.error(`Error writing markdown file for ${componentName}`, err)
39
- } else {
40
- console.log(`Markdown file for ${componentName} is generated!`)
53
+ if (!fs.existsSync(outputDir)) {
54
+ fs.mkdirSync(outputDir)
41
55
  }
56
+
57
+ fs.writeFile(`${outputDir}/${componentName}.md`, markdownContent, (err) => {
58
+ if (err) {
59
+ console.error(`Error writing markdown file for ${componentName}`, err)
60
+ } else {
61
+ console.log(`Markdown file for ${componentName} is generated!`)
62
+ }
63
+ })
42
64
  })
43
65
  } catch(e) {
44
66
  console.error(e)
45
67
  }
46
68
  }
47
69
 
70
+ function transformData(data = []) {
71
+ data.forEach((prop) => {
72
+ prop.name = prop.name
73
+
74
+ if (prop.description) {
75
+ prop.describe = [prop.description.replaceAll('\n', ' ')]
76
+ }
77
+
78
+ if (prop.type) {
79
+ prop.type = prop.type.name
80
+ }
81
+
82
+ if (prop.defaultValue) {
83
+ prop.default = prop.defaultValue.value.replaceAll('\n', ' ')
84
+ }
85
+
86
+ // events
87
+ if (prop.properties) {
88
+ prop.argumentsDesc = []
89
+ prop.properties.forEach((param) => {
90
+ const argName = param.name || param.description
91
+ prop.argumentsDesc.push(argName)
92
+ })
93
+ }
94
+
95
+ // methods
96
+ if (prop.params) {
97
+ prop.argumentsDesc = []
98
+ prop.params.forEach((param) => {
99
+ const argName = param.description || param.name
100
+ prop.argumentsDesc.push(argName)
101
+ })
102
+ }
103
+ })
104
+ return data
105
+ }
106
+
48
107
  // To generate markdown files - one time
49
108
  components.forEach((component) => {
50
109
  console.log(`Write markdown file for ${component} on first load.`)
@@ -1,22 +0,0 @@
1
- import { C as i } from "./ContentMixin-BY38ulup.js";
2
- import { SimulationVuer as t } from "@abi-software/simulationvuer";
3
- import { resolveComponent as e, openBlock as r, createBlock as a } from "vue";
4
- import { _ as m } from "./index-DBVNcOgU.js";
5
- const c = {
6
- name: "Simulation",
7
- mixins: [i],
8
- components: {
9
- SimulationVuer: t
10
- }
11
- };
12
- function p(o, s, u, l, f, _) {
13
- const n = e("SimulationVuer");
14
- return r(), a(n, {
15
- apiLocation: o.apiLocation,
16
- id: o.entry.discoverId
17
- }, null, 8, ["apiLocation", "id"]);
18
- }
19
- const C = /* @__PURE__ */ m(c, [["render", p]]);
20
- export {
21
- C as default
22
- };