@md-plugins/quasar-app-extension-q-press 0.1.0-beta.3 → 0.1.0-beta.4

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.
Files changed (63) hide show
  1. package/README.md +2 -4
  2. package/dist/index.js +1 -1
  3. package/dist/install.js +1 -1
  4. package/dist/templates/init/src/_q-press/components/MarkdownApi.vue +1 -1
  5. package/dist/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
  6. package/dist/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  7. package/dist/templates/init/src/_q-press/components/MarkdownCode.vue +1 -1
  8. package/dist/templates/init/src/_q-press/components/MarkdownCodepen.vue +1 -1
  9. package/dist/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  10. package/dist/templates/init/src/_q-press/components/MarkdownExample.vue +1 -1
  11. package/dist/templates/init/src/_q-press/components/MarkdownLink.vue +1 -1
  12. package/dist/templates/init/src/_q-press/components/MarkdownTree.vue +1 -1
  13. package/dist/templates/init/src/_q-press/css/app.scss +2 -1
  14. package/dist/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  15. package/dist/templates/init/src/markdown/guides/upgrade-guide.md +3 -3
  16. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +8 -2
  17. package/dist/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +6 -8
  18. package/dist/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
  19. package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
  20. package/dist/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +16 -4
  21. package/dist/templates/update/src/_q-press/components/MarkdownApi.vue +1 -1
  22. package/dist/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
  23. package/dist/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  24. package/dist/templates/update/src/_q-press/components/MarkdownCode.vue +1 -1
  25. package/dist/templates/update/src/_q-press/components/MarkdownCodepen.vue +1 -1
  26. package/dist/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  27. package/dist/templates/update/src/_q-press/components/MarkdownExample.vue +1 -1
  28. package/dist/templates/update/src/_q-press/components/MarkdownLink.vue +1 -1
  29. package/dist/templates/update/src/_q-press/components/MarkdownTree.vue +1 -1
  30. package/dist/templates/update/src/_q-press/css/app.scss +2 -1
  31. package/dist/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  32. package/package.json +16 -16
  33. package/src/index.ts +1 -1
  34. package/src/install.ts +3 -4
  35. package/src/templates/init/src/_q-press/components/MarkdownApi.vue +1 -1
  36. package/src/templates/init/src/_q-press/components/MarkdownCardLink.vue +1 -1
  37. package/src/templates/init/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  38. package/src/templates/init/src/_q-press/components/MarkdownCode.vue +1 -1
  39. package/src/templates/init/src/_q-press/components/MarkdownCodepen.vue +1 -1
  40. package/src/templates/init/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  41. package/src/templates/init/src/_q-press/components/MarkdownExample.vue +1 -1
  42. package/src/templates/init/src/_q-press/components/MarkdownLink.vue +1 -1
  43. package/src/templates/init/src/_q-press/components/MarkdownTree.vue +1 -1
  44. package/src/templates/init/src/_q-press/css/app.scss +2 -1
  45. package/src/templates/init/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  46. package/src/templates/init/src/markdown/guides/upgrade-guide.md +3 -3
  47. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/advanced.md +8 -2
  48. package/src/templates/init/src/markdown/quasar-app-extensions/qpress/overview.md +6 -8
  49. package/src/templates/init/src/markdown/quasar-app-extensions/vite-md-plugin-app-ext/overview.md +1 -1
  50. package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/advanced.md +8 -3
  51. package/src/templates/init/src/markdown/vite-plugins/vite-examples-plugin/overview.md +16 -4
  52. package/src/templates/update/src/_q-press/components/MarkdownApi.vue +1 -1
  53. package/src/templates/update/src/_q-press/components/MarkdownCardLink.vue +1 -1
  54. package/src/templates/update/src/_q-press/components/MarkdownCardTitle.vue +1 -1
  55. package/src/templates/update/src/_q-press/components/MarkdownCode.vue +1 -1
  56. package/src/templates/update/src/_q-press/components/MarkdownCodepen.vue +1 -1
  57. package/src/templates/update/src/_q-press/components/MarkdownCopyButton.vue +1 -1
  58. package/src/templates/update/src/_q-press/components/MarkdownExample.vue +1 -1
  59. package/src/templates/update/src/_q-press/components/MarkdownLink.vue +1 -1
  60. package/src/templates/update/src/_q-press/components/MarkdownTree.vue +1 -1
  61. package/src/templates/update/src/_q-press/css/app.scss +2 -1
  62. package/src/templates/update/src/_q-press/layouts/MarkdownSearch.vue +1 -1
  63. package/tsconfig.json +1 -1
package/README.md CHANGED
@@ -4,9 +4,9 @@ The Ultimate Markdown Solution for the Quasar Framework.
4
4
 
5
5
  See the [documentation](https://md-plugins.netlify.app/quasar-app-extensions/qpress/overview) for more information.
6
6
 
7
- > Current beta release: `0.1.0-beta.3`.
7
+ > Current beta release: `0.1.0-beta.4`.
8
8
  >
9
- > Q-Press currently targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14`. TypeScript processing is required.
9
+ > Q-Press currently targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18`. TypeScript processing is required.
10
10
 
11
11
  ## Features
12
12
 
@@ -62,8 +62,6 @@ See the [documentation](https://md-plugins.netlify.app/quasar-app-extensions/qpr
62
62
 
63
63
  - ```scss
64
64
  @import '../.q-press/css/app.scss';
65
- @import '../.q-press/css/fonts.scss';
66
- @import '../.q-press/css/prism-theme.scss';
67
65
  ```
68
66
 
69
67
  3. Modify your `quasar.config.ts`
package/dist/index.js CHANGED
@@ -31,7 +31,7 @@ export default defineIndexScript((api) => {
31
31
  throw new Error('This extension requires Vite');
32
32
  }
33
33
  api.compatibleWith('quasar', '^2.0.0');
34
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14');
34
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.18');
35
35
  // here we extend /quasar.config, so we can add some Vite/Vue stuff
36
36
  api.extendQuasarConf(async (config) => {
37
37
  config.build ??= {};
package/dist/install.js CHANGED
@@ -11,7 +11,7 @@ export default defineInstallScript(async (api) => {
11
11
  throw new Error('This extension requires Vite');
12
12
  }
13
13
  api.compatibleWith('quasar', '^2.0.0');
14
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14');
14
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.18');
15
15
  // project must have pinia installed
16
16
  if ((await api.getStorePackageName()) !== 'pinia') {
17
17
  console.error('-----------------------------');
@@ -122,7 +122,7 @@
122
122
  </q-card>
123
123
  </template>
124
124
 
125
- <script setup lang="js">
125
+ <script setup lang="ts">
126
126
  import { ref, computed, watch, onMounted } from 'vue'
127
127
  import { mdiClose, mdiMagnify } from '@quasar/extras/mdi-v7'
128
128
 
@@ -7,7 +7,7 @@
7
7
  </router-link>
8
8
  </template>
9
9
 
10
- <script setup>
10
+ <script setup lang="ts">
11
11
  const props = defineProps({
12
12
  to: {
13
13
  type: String,
@@ -4,7 +4,7 @@
4
4
  </div>
5
5
  </template>
6
6
 
7
- <script setup>
7
+ <script setup lang="ts">
8
8
  import { computed } from 'vue'
9
9
  import { copyHeading, slugify } from './markdown-utils'
10
10
 
@@ -5,7 +5,7 @@
5
5
  </div>
6
6
  </template>
7
7
 
8
- <script setup>
8
+ <script setup lang="ts">
9
9
  import { computed } from 'vue'
10
10
 
11
11
  import MarkdownCodePrism from './MarkdownCodePrism'
@@ -11,7 +11,7 @@
11
11
  </form>
12
12
  </template>
13
13
 
14
- <script setup>
14
+ <script setup lang="ts">
15
15
  import { Quasar } from 'quasar'
16
16
  import { ref, reactive, computed, nextTick } from 'vue'
17
17
 
@@ -8,7 +8,7 @@
8
8
  </div>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { ref, getCurrentInstance } from 'vue'
13
13
  import { copyToClipboard } from './markdown-utils'
14
14
  import { mdiClipboardOutline } from '@quasar/extras/mdi-v7'
@@ -92,7 +92,7 @@
92
92
  </q-card>
93
93
  </template>
94
94
 
95
- <script setup>
95
+ <script setup lang="ts">
96
96
  import { computed, inject, markRaw, ref, reactive, onMounted } from 'vue'
97
97
  import { openURL } from 'quasar'
98
98
 
@@ -8,7 +8,7 @@
8
8
  </a>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { computed } from 'vue'
13
13
  import { mdiLaunch } from '@quasar/extras/mdi-v6'
14
14
 
@@ -34,7 +34,7 @@
34
34
  </q-tree>
35
35
  </template>
36
36
 
37
- <script setup>
37
+ <script setup lang="ts">
38
38
  import { mdiLaunch, mdiInformationOutline } from '@quasar/extras/mdi-v6'
39
39
 
40
40
  const props = defineProps({
@@ -1,6 +1,7 @@
1
1
  @use 'sass:math';
2
+ @use './fonts.scss';
2
3
 
3
- @import './fonts.scss';
4
+ // Keep this import so Prism shares the selected qPress theme variables.
4
5
  @import './prism-theme.scss';
5
6
 
6
7
  .material-icons {
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  </template>
41
41
 
42
- <script setup>
42
+ <script setup lang="ts">
43
43
  import { useQuasar } from 'quasar'
44
44
  import { computed, ref, watch, markRaw, onMounted, onBeforeUnmount } from 'vue'
45
45
  import { useRoute, useRouter } from 'vue-router'
@@ -7,16 +7,16 @@ related:
7
7
  - vite-plugins/vite-md-plugin/overview
8
8
  ---
9
9
 
10
- The `0.1.0` beta line moves MD-Plugins and Q-Press to the Quasar CLI Vite 3 beta toolchain. It is the right version to use when your Quasar application is being upgraded to `@quasar/app-vite` `>=3.0.0-beta.14`.
10
+ The `0.1.0` beta line moves MD-Plugins and Q-Press to the Quasar CLI Vite 3 beta toolchain. It is the right version to use when your Quasar application is being upgraded to `@quasar/app-vite` `>=3.0.0-beta.18`.
11
11
 
12
12
  ::: warning
13
- Q-Press and the Quasar app extensions now target Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14`. They are not intended for Webpack projects or JavaScript-only Quasar projects.
13
+ Q-Press and the Quasar app extensions now target Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18`. They are not intended for Webpack projects or JavaScript-only Quasar projects.
14
14
  :::
15
15
 
16
16
  ## Before You Upgrade
17
17
 
18
18
  - Make sure your app is already on a Quasar Vite setup.
19
- - Upgrade the app to `@quasar/app-vite` `>=3.0.0-beta.14`.
19
+ - Upgrade the app to `@quasar/app-vite` `>=3.0.0-beta.18`.
20
20
  - Use TypeScript in the consuming Quasar project.
21
21
  - Import `defineConfig` in `quasar.config.ts` directly from `@quasar/app-vite`.
22
22
  - Use `/// <reference types="@quasar/app-vite/client" />` in `src/env.d.ts`.
@@ -79,8 +79,14 @@ extendViteConf(viteConf, { isClient }) {
79
79
  if (ctx.prod && isClient) {
80
80
  viteConf.build = viteConf.build || {}
81
81
  viteConf.build.chunkSizeWarningLimit = 650
82
- viteConf.build.rollupOptions = {
83
- output: { manualChunks: viteManualChunks },
82
+ viteConf.build.rolldownOptions = viteConf.build.rolldownOptions || {}
83
+ viteConf.build.rolldownOptions.output = viteConf.build.rolldownOptions.output || {}
84
+ viteConf.build.rolldownOptions.output.codeSplitting = {
85
+ groups: [
86
+ {
87
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
88
+ },
89
+ ],
84
90
  }
85
91
  }
86
92
  }
@@ -6,7 +6,7 @@ desc: Q-Press App-Extension for Quasar.
6
6
  The Q-Press App Extension is a powerful tool for Quasar developers that simplifies the integration of Markdown content into Quasar applications. It leverages the capabilities of Vite and various Markdown plugins to transform Markdown files into Vue components, enabling a seamless and efficient workflow for content management.
7
7
 
8
8
  ::: warning
9
- Q-Press is for Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14` at this time. TypeScript processing is also required. Do not use if you are using Webpack or have a JavaScript-only project.
9
+ Q-Press is for Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18` at this time. TypeScript processing is also required. Do not use if you are using Webpack or have a JavaScript-only project.
10
10
  :::
11
11
 
12
12
  ::: tip
@@ -86,8 +86,6 @@ Import Q-Press styles:
86
86
 
87
87
  ```scss
88
88
  @import '../.q-press/css/app.scss';
89
- @import '../.q-press/css/fonts.scss';
90
- @import '../.q-press/css/prism-theme.scss';
91
89
  ```
92
90
 
93
91
  ### Modify `quasar.config.ts`
@@ -230,16 +228,16 @@ useMeta({
230
228
  If you copied older Q-Press internals into your app, update the common cases below:
231
229
 
232
230
  ```ts
233
- process.env.CLIENT // old
231
+ process.env.CLIENT // old
234
232
  import.meta.env.QUASAR_CLIENT // new
235
233
 
236
- process.env.DEV // old
237
- import.meta.env.DEV // new
234
+ process.env.DEV // old
235
+ import.meta.env.DEV // new
238
236
 
239
- process.env.FS_QUASAR_FOLDER // old
237
+ process.env.FS_QUASAR_FOLDER // old
240
238
  import.meta.env.QCLI_FS_QUASAR_FOLDER // new
241
239
 
242
- process.env.SEARCH_INDEX // old
240
+ process.env.SEARCH_INDEX // old
243
241
  import.meta.env.QCLI_SEARCH_INDEX // new
244
242
  ```
245
243
 
@@ -9,7 +9,7 @@ related:
9
9
  The `viteMdPluginAppExt` is a [Quasar App Extension](https://quasar.dev/app-extensions/introduction) that integrates the `viteMdPlugin` into your Quasar project. This extension allows you to use Markdown files as Vue components, enabling a seamless integration of Markdown content into your Quasar application.
10
10
 
11
11
  ::: warning
12
- This app extension targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14`.
12
+ This app extension targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18`.
13
13
  :::
14
14
 
15
15
  ## Key Features
@@ -84,10 +84,15 @@ export default defineConfig(({ mode }) => {
84
84
  ],
85
85
  build: {
86
86
  chunkSizeWarningLimit: 650,
87
- rollupOptions: {
87
+ rolldownOptions: {
88
88
  output: {
89
- manualChunks: {
90
- vendor: ['vue', 'vite'],
89
+ codeSplitting: {
90
+ groups: [
91
+ {
92
+ name: (moduleId) =>
93
+ /node_modules[\\/](vue|vite)[\\/]/.test(moduleId) ? 'vendor' : null,
94
+ },
95
+ ],
91
96
  },
92
97
  },
93
98
  },
@@ -40,8 +40,14 @@ extendViteConf(viteConf, { isClient }) {
40
40
  if (ctx.prod && isClient) {
41
41
  viteConf.build = viteConf.build || {}
42
42
  viteConf.build.chunkSizeWarningLimit = 650
43
- viteConf.build.rollupOptions = {
44
- output: { manualChunks: viteManualChunks },
43
+ viteConf.build.rolldownOptions = viteConf.build.rolldownOptions || {}
44
+ viteConf.build.rolldownOptions.output = viteConf.build.rolldownOptions.output || {}
45
+ viteConf.build.rolldownOptions.output.codeSplitting = {
46
+ groups: [
47
+ {
48
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
49
+ },
50
+ ],
45
51
  }
46
52
  }
47
53
  }
@@ -71,9 +77,15 @@ export default defineConfig(({ mode }) => {
71
77
  ],
72
78
  build: {
73
79
  chunkSizeWarningLimit: 650,
74
- rollupOptions: {
80
+ rolldownOptions: {
75
81
  output: {
76
- manualChunks: viteManualChunks,
82
+ codeSplitting: {
83
+ groups: [
84
+ {
85
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
86
+ },
87
+ ],
88
+ },
77
89
  },
78
90
  },
79
91
  },
@@ -122,7 +122,7 @@
122
122
  </q-card>
123
123
  </template>
124
124
 
125
- <script setup lang="js">
125
+ <script setup lang="ts">
126
126
  import { ref, computed, watch, onMounted } from 'vue'
127
127
  import { mdiClose, mdiMagnify } from '@quasar/extras/mdi-v7'
128
128
 
@@ -7,7 +7,7 @@
7
7
  </router-link>
8
8
  </template>
9
9
 
10
- <script setup>
10
+ <script setup lang="ts">
11
11
  const props = defineProps({
12
12
  to: {
13
13
  type: String,
@@ -4,7 +4,7 @@
4
4
  </div>
5
5
  </template>
6
6
 
7
- <script setup>
7
+ <script setup lang="ts">
8
8
  import { computed } from 'vue'
9
9
  import { copyHeading, slugify } from './markdown-utils'
10
10
 
@@ -5,7 +5,7 @@
5
5
  </div>
6
6
  </template>
7
7
 
8
- <script setup>
8
+ <script setup lang="ts">
9
9
  import { computed } from 'vue'
10
10
 
11
11
  import MarkdownCodePrism from './MarkdownCodePrism'
@@ -11,7 +11,7 @@
11
11
  </form>
12
12
  </template>
13
13
 
14
- <script setup>
14
+ <script setup lang="ts">
15
15
  import { Quasar } from 'quasar'
16
16
  import { ref, reactive, computed, nextTick } from 'vue'
17
17
 
@@ -8,7 +8,7 @@
8
8
  </div>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { ref, getCurrentInstance } from 'vue'
13
13
  import { copyToClipboard } from './markdown-utils'
14
14
  import { mdiClipboardOutline } from '@quasar/extras/mdi-v7'
@@ -92,7 +92,7 @@
92
92
  </q-card>
93
93
  </template>
94
94
 
95
- <script setup>
95
+ <script setup lang="ts">
96
96
  import { computed, inject, markRaw, ref, reactive, onMounted } from 'vue'
97
97
  import { openURL } from 'quasar'
98
98
 
@@ -8,7 +8,7 @@
8
8
  </a>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { computed } from 'vue'
13
13
  import { mdiLaunch } from '@quasar/extras/mdi-v6'
14
14
 
@@ -34,7 +34,7 @@
34
34
  </q-tree>
35
35
  </template>
36
36
 
37
- <script setup>
37
+ <script setup lang="ts">
38
38
  import { mdiLaunch, mdiInformationOutline } from '@quasar/extras/mdi-v6'
39
39
 
40
40
  const props = defineProps({
@@ -1,6 +1,7 @@
1
1
  @use 'sass:math';
2
+ @use './fonts.scss';
2
3
 
3
- @import './fonts.scss';
4
+ // Keep this import so Prism shares the selected qPress theme variables.
4
5
  @import './prism-theme.scss';
5
6
 
6
7
  .material-icons {
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  </template>
41
41
 
42
- <script setup>
42
+ <script setup lang="ts">
43
43
  import { useQuasar } from 'quasar'
44
44
  import { computed, ref, watch, markRaw, onMounted, onBeforeUnmount } from 'vue'
45
45
  import { useRoute, useRouter } from 'vue-router'
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@md-plugins/quasar-app-extension-q-press",
3
- "version": "0.1.0-beta.3",
3
+ "version": "0.1.0-beta.4",
4
4
  "description": "QPress - The Ultimate Markdown Solution for Quasar Framework",
5
5
  "keywords": [
6
6
  "markdown",
@@ -29,27 +29,27 @@
29
29
  "@types/markdown-it": "^14.1.2",
30
30
  "fs-extra": "^11.3.4",
31
31
  "markdown-it": "^14.1.1",
32
- "@md-plugins/md-plugin-blockquote": "0.1.0-beta.3",
33
- "@md-plugins/md-plugin-frontmatter": "0.1.0-beta.3",
34
- "@md-plugins/md-plugin-codeblocks": "0.1.0-beta.3",
35
- "@md-plugins/md-plugin-containers": "0.1.0-beta.3",
36
- "@md-plugins/md-plugin-headers": "0.1.0-beta.3",
37
- "@md-plugins/md-plugin-imports": "0.1.0-beta.3",
38
- "@md-plugins/md-plugin-image": "0.1.0-beta.3",
39
- "@md-plugins/md-plugin-inlinecode": "0.1.0-beta.3",
40
- "@md-plugins/md-plugin-link": "0.1.0-beta.3",
41
- "@md-plugins/md-plugin-table": "0.1.0-beta.3",
42
- "@md-plugins/shared": "0.1.0-beta.3",
43
- "@md-plugins/md-plugin-title": "0.1.0-beta.3",
44
- "@md-plugins/vite-md-plugin": "0.1.0-beta.3"
32
+ "@md-plugins/md-plugin-blockquote": "0.1.0-beta.4",
33
+ "@md-plugins/md-plugin-containers": "0.1.0-beta.4",
34
+ "@md-plugins/md-plugin-codeblocks": "0.1.0-beta.4",
35
+ "@md-plugins/md-plugin-frontmatter": "0.1.0-beta.4",
36
+ "@md-plugins/md-plugin-image": "0.1.0-beta.4",
37
+ "@md-plugins/md-plugin-headers": "0.1.0-beta.4",
38
+ "@md-plugins/md-plugin-imports": "0.1.0-beta.4",
39
+ "@md-plugins/md-plugin-link": "0.1.0-beta.4",
40
+ "@md-plugins/md-plugin-inlinecode": "0.1.0-beta.4",
41
+ "@md-plugins/md-plugin-table": "0.1.0-beta.4",
42
+ "@md-plugins/md-plugin-title": "0.1.0-beta.4",
43
+ "@md-plugins/shared": "0.1.0-beta.4",
44
+ "@md-plugins/vite-md-plugin": "0.1.0-beta.4"
45
45
  },
46
46
  "devDependencies": {
47
- "@quasar/app-vite": "3.0.0-beta.14",
47
+ "@quasar/app-vite": "3.0.0-beta.18",
48
48
  "@types/markdown-it": "^14.1.2",
49
49
  "vite": "^8.0.3"
50
50
  },
51
51
  "peerDependencies": {
52
- "@quasar/app-vite": ">=3.0.0-beta.14",
52
+ "@quasar/app-vite": ">=3.0.0-beta.18",
53
53
  "markdown-it": "^14.1.0"
54
54
  },
55
55
  "engines": {
package/src/index.ts CHANGED
@@ -54,7 +54,7 @@ export default defineIndexScript((api) => {
54
54
  }
55
55
 
56
56
  api.compatibleWith('quasar', '^2.0.0')
57
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14')
57
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.18')
58
58
 
59
59
  // here we extend /quasar.config, so we can add some Vite/Vue stuff
60
60
  api.extendQuasarConf(async (config) => {
package/src/install.ts CHANGED
@@ -14,7 +14,7 @@ export default defineInstallScript(async (api) => {
14
14
  }
15
15
 
16
16
  api.compatibleWith('quasar', '^2.0.0')
17
- api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.14')
17
+ api.compatibleWith('@quasar/app-vite', '>=3.0.0-beta.18')
18
18
 
19
19
  // project must have pinia installed
20
20
  if ((await api.getStorePackageName()) !== 'pinia') {
@@ -39,12 +39,11 @@ export default defineInstallScript(async (api) => {
39
39
  console.warn("Update only for 'src/.q-press' folder")
40
40
  console.warn('-------------------------------------')
41
41
  api.render('./templates/update')
42
- }
43
- else {
42
+ } else {
44
43
  // this is a project initial setup
45
44
  console.warn('--------------------------------------------')
46
45
  console.warn('Initial setup. Be sure to read the\ndocumentation on the manual set up required.')
47
46
  console.warn('--------------------------------------------')
48
47
  api.render('./templates/init')
49
48
  }
50
- })
49
+ })
@@ -122,7 +122,7 @@
122
122
  </q-card>
123
123
  </template>
124
124
 
125
- <script setup lang="js">
125
+ <script setup lang="ts">
126
126
  import { ref, computed, watch, onMounted } from 'vue'
127
127
  import { mdiClose, mdiMagnify } from '@quasar/extras/mdi-v7'
128
128
 
@@ -7,7 +7,7 @@
7
7
  </router-link>
8
8
  </template>
9
9
 
10
- <script setup>
10
+ <script setup lang="ts">
11
11
  const props = defineProps({
12
12
  to: {
13
13
  type: String,
@@ -4,7 +4,7 @@
4
4
  </div>
5
5
  </template>
6
6
 
7
- <script setup>
7
+ <script setup lang="ts">
8
8
  import { computed } from 'vue'
9
9
  import { copyHeading, slugify } from './markdown-utils'
10
10
 
@@ -5,7 +5,7 @@
5
5
  </div>
6
6
  </template>
7
7
 
8
- <script setup>
8
+ <script setup lang="ts">
9
9
  import { computed } from 'vue'
10
10
 
11
11
  import MarkdownCodePrism from './MarkdownCodePrism'
@@ -11,7 +11,7 @@
11
11
  </form>
12
12
  </template>
13
13
 
14
- <script setup>
14
+ <script setup lang="ts">
15
15
  import { Quasar } from 'quasar'
16
16
  import { ref, reactive, computed, nextTick } from 'vue'
17
17
 
@@ -8,7 +8,7 @@
8
8
  </div>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { ref, getCurrentInstance } from 'vue'
13
13
  import { copyToClipboard } from './markdown-utils'
14
14
  import { mdiClipboardOutline } from '@quasar/extras/mdi-v7'
@@ -92,7 +92,7 @@
92
92
  </q-card>
93
93
  </template>
94
94
 
95
- <script setup>
95
+ <script setup lang="ts">
96
96
  import { computed, inject, markRaw, ref, reactive, onMounted } from 'vue'
97
97
  import { openURL } from 'quasar'
98
98
 
@@ -8,7 +8,7 @@
8
8
  </a>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { computed } from 'vue'
13
13
  import { mdiLaunch } from '@quasar/extras/mdi-v6'
14
14
 
@@ -34,7 +34,7 @@
34
34
  </q-tree>
35
35
  </template>
36
36
 
37
- <script setup>
37
+ <script setup lang="ts">
38
38
  import { mdiLaunch, mdiInformationOutline } from '@quasar/extras/mdi-v6'
39
39
 
40
40
  const props = defineProps({
@@ -1,6 +1,7 @@
1
1
  @use 'sass:math';
2
+ @use './fonts.scss';
2
3
 
3
- @import './fonts.scss';
4
+ // Keep this import so Prism shares the selected qPress theme variables.
4
5
  @import './prism-theme.scss';
5
6
 
6
7
  .material-icons {
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  </template>
41
41
 
42
- <script setup>
42
+ <script setup lang="ts">
43
43
  import { useQuasar } from 'quasar'
44
44
  import { computed, ref, watch, markRaw, onMounted, onBeforeUnmount } from 'vue'
45
45
  import { useRoute, useRouter } from 'vue-router'
@@ -7,16 +7,16 @@ related:
7
7
  - vite-plugins/vite-md-plugin/overview
8
8
  ---
9
9
 
10
- The `0.1.0` beta line moves MD-Plugins and Q-Press to the Quasar CLI Vite 3 beta toolchain. It is the right version to use when your Quasar application is being upgraded to `@quasar/app-vite` `>=3.0.0-beta.14`.
10
+ The `0.1.0` beta line moves MD-Plugins and Q-Press to the Quasar CLI Vite 3 beta toolchain. It is the right version to use when your Quasar application is being upgraded to `@quasar/app-vite` `>=3.0.0-beta.18`.
11
11
 
12
12
  ::: warning
13
- Q-Press and the Quasar app extensions now target Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14`. They are not intended for Webpack projects or JavaScript-only Quasar projects.
13
+ Q-Press and the Quasar app extensions now target Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18`. They are not intended for Webpack projects or JavaScript-only Quasar projects.
14
14
  :::
15
15
 
16
16
  ## Before You Upgrade
17
17
 
18
18
  - Make sure your app is already on a Quasar Vite setup.
19
- - Upgrade the app to `@quasar/app-vite` `>=3.0.0-beta.14`.
19
+ - Upgrade the app to `@quasar/app-vite` `>=3.0.0-beta.18`.
20
20
  - Use TypeScript in the consuming Quasar project.
21
21
  - Import `defineConfig` in `quasar.config.ts` directly from `@quasar/app-vite`.
22
22
  - Use `/// <reference types="@quasar/app-vite/client" />` in `src/env.d.ts`.
@@ -79,8 +79,14 @@ extendViteConf(viteConf, { isClient }) {
79
79
  if (ctx.prod && isClient) {
80
80
  viteConf.build = viteConf.build || {}
81
81
  viteConf.build.chunkSizeWarningLimit = 650
82
- viteConf.build.rollupOptions = {
83
- output: { manualChunks: viteManualChunks },
82
+ viteConf.build.rolldownOptions = viteConf.build.rolldownOptions || {}
83
+ viteConf.build.rolldownOptions.output = viteConf.build.rolldownOptions.output || {}
84
+ viteConf.build.rolldownOptions.output.codeSplitting = {
85
+ groups: [
86
+ {
87
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
88
+ },
89
+ ],
84
90
  }
85
91
  }
86
92
  }
@@ -6,7 +6,7 @@ desc: Q-Press App-Extension for Quasar.
6
6
  The Q-Press App Extension is a powerful tool for Quasar developers that simplifies the integration of Markdown content into Quasar applications. It leverages the capabilities of Vite and various Markdown plugins to transform Markdown files into Vue components, enabling a seamless and efficient workflow for content management.
7
7
 
8
8
  ::: warning
9
- Q-Press is for Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14` at this time. TypeScript processing is also required. Do not use if you are using Webpack or have a JavaScript-only project.
9
+ Q-Press is for Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18` at this time. TypeScript processing is also required. Do not use if you are using Webpack or have a JavaScript-only project.
10
10
  :::
11
11
 
12
12
  ::: tip
@@ -86,8 +86,6 @@ Import Q-Press styles:
86
86
 
87
87
  ```scss
88
88
  @import '../.q-press/css/app.scss';
89
- @import '../.q-press/css/fonts.scss';
90
- @import '../.q-press/css/prism-theme.scss';
91
89
  ```
92
90
 
93
91
  ### Modify `quasar.config.ts`
@@ -230,16 +228,16 @@ useMeta({
230
228
  If you copied older Q-Press internals into your app, update the common cases below:
231
229
 
232
230
  ```ts
233
- process.env.CLIENT // old
231
+ process.env.CLIENT // old
234
232
  import.meta.env.QUASAR_CLIENT // new
235
233
 
236
- process.env.DEV // old
237
- import.meta.env.DEV // new
234
+ process.env.DEV // old
235
+ import.meta.env.DEV // new
238
236
 
239
- process.env.FS_QUASAR_FOLDER // old
237
+ process.env.FS_QUASAR_FOLDER // old
240
238
  import.meta.env.QCLI_FS_QUASAR_FOLDER // new
241
239
 
242
- process.env.SEARCH_INDEX // old
240
+ process.env.SEARCH_INDEX // old
243
241
  import.meta.env.QCLI_SEARCH_INDEX // new
244
242
  ```
245
243
 
@@ -9,7 +9,7 @@ related:
9
9
  The `viteMdPluginAppExt` is a [Quasar App Extension](https://quasar.dev/app-extensions/introduction) that integrates the `viteMdPlugin` into your Quasar project. This extension allows you to use Markdown files as Vue components, enabling a seamless integration of Markdown content into your Quasar application.
10
10
 
11
11
  ::: warning
12
- This app extension targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.14`.
12
+ This app extension targets Quasar Vite projects using `@quasar/app-vite` `>=3.0.0-beta.18`.
13
13
  :::
14
14
 
15
15
  ## Key Features
@@ -84,10 +84,15 @@ export default defineConfig(({ mode }) => {
84
84
  ],
85
85
  build: {
86
86
  chunkSizeWarningLimit: 650,
87
- rollupOptions: {
87
+ rolldownOptions: {
88
88
  output: {
89
- manualChunks: {
90
- vendor: ['vue', 'vite'],
89
+ codeSplitting: {
90
+ groups: [
91
+ {
92
+ name: (moduleId) =>
93
+ /node_modules[\\/](vue|vite)[\\/]/.test(moduleId) ? 'vendor' : null,
94
+ },
95
+ ],
91
96
  },
92
97
  },
93
98
  },
@@ -40,8 +40,14 @@ extendViteConf(viteConf, { isClient }) {
40
40
  if (ctx.prod && isClient) {
41
41
  viteConf.build = viteConf.build || {}
42
42
  viteConf.build.chunkSizeWarningLimit = 650
43
- viteConf.build.rollupOptions = {
44
- output: { manualChunks: viteManualChunks },
43
+ viteConf.build.rolldownOptions = viteConf.build.rolldownOptions || {}
44
+ viteConf.build.rolldownOptions.output = viteConf.build.rolldownOptions.output || {}
45
+ viteConf.build.rolldownOptions.output.codeSplitting = {
46
+ groups: [
47
+ {
48
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
49
+ },
50
+ ],
45
51
  }
46
52
  }
47
53
  }
@@ -71,9 +77,15 @@ export default defineConfig(({ mode }) => {
71
77
  ],
72
78
  build: {
73
79
  chunkSizeWarningLimit: 650,
74
- rollupOptions: {
80
+ rolldownOptions: {
75
81
  output: {
76
- manualChunks: viteManualChunks,
82
+ codeSplitting: {
83
+ groups: [
84
+ {
85
+ name: (moduleId) => viteManualChunks(moduleId) ?? null,
86
+ },
87
+ ],
88
+ },
77
89
  },
78
90
  },
79
91
  },
@@ -122,7 +122,7 @@
122
122
  </q-card>
123
123
  </template>
124
124
 
125
- <script setup lang="js">
125
+ <script setup lang="ts">
126
126
  import { ref, computed, watch, onMounted } from 'vue'
127
127
  import { mdiClose, mdiMagnify } from '@quasar/extras/mdi-v7'
128
128
 
@@ -7,7 +7,7 @@
7
7
  </router-link>
8
8
  </template>
9
9
 
10
- <script setup>
10
+ <script setup lang="ts">
11
11
  const props = defineProps({
12
12
  to: {
13
13
  type: String,
@@ -4,7 +4,7 @@
4
4
  </div>
5
5
  </template>
6
6
 
7
- <script setup>
7
+ <script setup lang="ts">
8
8
  import { computed } from 'vue'
9
9
  import { copyHeading, slugify } from './markdown-utils'
10
10
 
@@ -5,7 +5,7 @@
5
5
  </div>
6
6
  </template>
7
7
 
8
- <script setup>
8
+ <script setup lang="ts">
9
9
  import { computed } from 'vue'
10
10
 
11
11
  import MarkdownCodePrism from './MarkdownCodePrism'
@@ -11,7 +11,7 @@
11
11
  </form>
12
12
  </template>
13
13
 
14
- <script setup>
14
+ <script setup lang="ts">
15
15
  import { Quasar } from 'quasar'
16
16
  import { ref, reactive, computed, nextTick } from 'vue'
17
17
 
@@ -8,7 +8,7 @@
8
8
  </div>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { ref, getCurrentInstance } from 'vue'
13
13
  import { copyToClipboard } from './markdown-utils'
14
14
  import { mdiClipboardOutline } from '@quasar/extras/mdi-v7'
@@ -92,7 +92,7 @@
92
92
  </q-card>
93
93
  </template>
94
94
 
95
- <script setup>
95
+ <script setup lang="ts">
96
96
  import { computed, inject, markRaw, ref, reactive, onMounted } from 'vue'
97
97
  import { openURL } from 'quasar'
98
98
 
@@ -8,7 +8,7 @@
8
8
  </a>
9
9
  </template>
10
10
 
11
- <script setup>
11
+ <script setup lang="ts">
12
12
  import { computed } from 'vue'
13
13
  import { mdiLaunch } from '@quasar/extras/mdi-v6'
14
14
 
@@ -34,7 +34,7 @@
34
34
  </q-tree>
35
35
  </template>
36
36
 
37
- <script setup>
37
+ <script setup lang="ts">
38
38
  import { mdiLaunch, mdiInformationOutline } from '@quasar/extras/mdi-v6'
39
39
 
40
40
  const props = defineProps({
@@ -1,6 +1,7 @@
1
1
  @use 'sass:math';
2
+ @use './fonts.scss';
2
3
 
3
- @import './fonts.scss';
4
+ // Keep this import so Prism shares the selected qPress theme variables.
4
5
  @import './prism-theme.scss';
5
6
 
6
7
  .material-icons {
@@ -39,7 +39,7 @@
39
39
  </div>
40
40
  </template>
41
41
 
42
- <script setup>
42
+ <script setup lang="ts">
43
43
  import { useQuasar } from 'quasar'
44
44
  import { computed, ref, watch, markRaw, onMounted, onBeforeUnmount } from 'vue'
45
45
  import { useRoute, useRouter } from 'vue-router'
package/tsconfig.json CHANGED
@@ -13,4 +13,4 @@
13
13
  },
14
14
  "include": ["./src/index.ts", "./src/install.ts"],
15
15
  "exclude": ["./node_modules"]
16
- }
16
+ }