From 8948671a77e5e892413867747e59b72ae5ffe475 Mon Sep 17 00:00:00 2001 From: Thorn Walli Date: Thu, 21 Sep 2023 11:18:14 +0200 Subject: [PATCH 1/2] fix(update): replaced examples with packages - removed not working examples --- .eslintrc.json | 10 +- .github/workflows/main.yml | 68 +- .github/workflows/test.yml | 6 +- .gitignore | 1 + .lintstagedrc | 2 +- .nvmrc | 2 +- .prettierrc.json | 8 + .stylelintignore | 9 + .stylelintrc.json => .stylelintrc | 20 +- README.md | 29 +- commitlint.config.js | 4 +- examples/default/assets/icons/i18n.png | Bin 9832 -> 0 bytes examples/default/assets/icons/vue.png | Bin 43330 -> 0 bytes examples/default/nuxt.config.js | 60 - examples/default/pages/index.vue | 129 - examples/external/layouts/default.vue | 10 - examples/external/nuxt.config.js | 37 - examples/external/pages/index.vue | 52 - examples/tailwind-css/entries/TailwindCss.vue | 14 - .../entries/TailwindCssShadow.vue | 20 - examples/tailwind-css/layouts/default.vue | 10 - examples/tailwind-css/nuxt.config.js | 85 - .../pages/frames/custom-shadow.vue | 56 - examples/tailwind-css/pages/index.vue | 24 - examples/tailwind-css/tailwind.config.js | 1 - examples/vue-i18n/components/Example.vue | 117 - examples/vue-i18n/entries/VueI18n.vue | 15 - examples/vue-i18n/layouts/default.vue | 9 - examples/vue-i18n/nuxt.config.js | 69 - .../vue-i18n/pages/frames/custom-shadow.vue | 54 - examples/vue-i18n/pages/frames/custom.vue | 54 - examples/vue-i18n/pages/index.vue | 24 - examples/vue-i18n/plugins/i18n.options.js | 36 - examples/vue-i18n/plugins/vueI18n.js | 11 - examples/vue-router/components/Example.vue | 161 - examples/vue-router/entries/VueRouter.vue | 13 - examples/vue-router/layouts/default.vue | 9 - examples/vue-router/nuxt.config.js | 78 - .../vue-router/pages/frames/custom-shadow.vue | 53 - examples/vue-router/pages/frames/custom.vue | 53 - examples/vue-router/pages/frames/nuxt.vue | 21 - examples/vue-router/pages/index.vue | 24 - examples/vue-router/plugins/vueRouter.js | 20 - examples/vue-router/router-views/index.vue | 6 - examples/vue-router/router-views/view-1.vue | 6 - examples/vue-router/router-views/view-2.vue | 6 - examples/vue-router/router-views/view-3.vue | 6 - examples/vue-router/static/favicon.ico | Bin 15406 -> 0 bytes examples/vue-router/static/icon.png | Bin 1626 -> 0 bytes examples/vuetify/components/Example.vue | 64 - examples/vuetify/entries/Vuetify.vue | 39 - examples/vuetify/entries/VuetifyShadow.vue | 38 - examples/vuetify/layouts/default.vue | 9 - examples/vuetify/nuxt.config.js | 69 - .../vuetify/pages/frames/custom-shadow.vue | 54 - examples/vuetify/pages/frames/custom.vue | 54 - examples/vuetify/pages/frames/nuxt.vue | 19 - examples/vuetify/pages/index.vue | 24 - examples/vuetify/plugins/vuetify.js | 7 - examples/vuetify/plugins/vuetify.options.js | 5 - examples/vuetify/static/favicon.ico | Bin 15406 -> 0 bytes examples/vuetify/static/icon.png | Bin 1626 -> 0 bytes examples/vuex/entries/Vuex.vue | 15 - examples/vuex/layouts/default.vue | 10 - examples/vuex/nuxt.config.js | 65 - examples/vuex/pages/frames/custom-shadow.vue | 54 - examples/vuex/pages/frames/custom.vue | 54 - examples/vuex/pages/index.vue | 24 - examples/vuex/plugins/vuex.js | 20 - examples/vuex/static/favicon.ico | Bin 15406 -> 0 bytes examples/vuex/static/icon.png | Bin 1626 -> 0 bytes examples/vuex/store/example.js | 22 - jsconfig.json | 6 +- nuxt-custom-elements-example.code-workspace | 35 +- package-lock.json | 46739 +++++----------- package.json | 63 +- packages/default/jsconfig.json | 22 + packages/default/nuxt.config.js | 73 + packages/default/package.json | 23 + .../default/src}/assets/css/layout.css | 44 +- .../default/src}/assets/icons/arrow-left.svg | 0 .../src}/assets/icons/external-link.svg | 0 packages/default/src/assets/icons/pinia.png | Bin 0 -> 22942 bytes .../default/src}/assets/icons/tailwindcss.png | Bin .../default/src}/assets/icons/vuetify.png | Bin .../default/src}/assets/logo.svg | 0 .../default/src}/components/Example.vue | 6 +- .../default/src}/layouts/default.vue | 4 +- packages/default/src/pages/index.vue | 103 + .../default/src}/static/favicon.ico | Bin .../default/src}/static/icon.png | Bin packages/pinia/jsconfig.json | 22 + packages/pinia/nuxt.config.js | 76 + packages/pinia/package.json | 30 + .../pinia/src/assets/css/vuetify-theme.css | 309 + .../pinia/src}/components/Example.vue | 37 +- .../customElements/Pinia.appContext.js | 6 + .../src/components/customElements/Pinia.vue | 7 + packages/pinia/src/layouts/default.vue | 5 + packages/pinia/src/pages/frames/custom.vue | 72 + .../pinia/src}/pages/frames/nuxt.vue | 6 +- packages/pinia/src/pages/index.vue | 26 + packages/pinia/src/plugins/pinia.js | 7 + .../pinia/src/public}/favicon.ico | Bin .../pinia/src/public}/icon.png | Bin packages/pinia/src/stores/example.js | 11 + packages/tailwindcss/jsconfig.json | 22 + packages/tailwindcss/nuxt.config.js | 85 + packages/tailwindcss/package.json | 29 + .../tailwindcss/src}/assets/css/tailwind.css | 0 .../tailwindcss/src}/components/Example.vue | 6 +- .../components/customElements/TailwindCss.vue | 12 + packages/tailwindcss/src/layouts/default.vue | 5 + .../tailwindcss/src}/pages/frames/custom.vue | 46 +- .../tailwindcss/src}/pages/frames/nuxt.vue | 6 +- packages/tailwindcss/src/pages/index.vue | 26 + .../tailwindcss/src/public}/favicon.ico | Bin .../tailwindcss/src/public}/icon.png | Bin packages/tailwindcss/tailwind.config.js | 13 + packages/vuetify/jsconfig.json | 22 + packages/vuetify/nuxt.config.js | 90 + packages/vuetify/package.json | 30 + .../vuetify/src/assets/css/vuetify-theme.css | 309 + packages/vuetify/src/components/Example.vue | 38 + .../customElements/Vuetify.appContext.js | 14 + .../src/components/customElements/Vuetify.vue | 16 + packages/vuetify/src/layouts/default.vue | 5 + packages/vuetify/src/pages/frames/custom.vue | 72 + .../vuetify/src}/pages/frames/nuxt.vue | 6 +- packages/vuetify/src/pages/index.vue | 26 + packages/vuetify/src/plugins/vuetify.js | 8 + .../vuetify/src/public}/favicon.ico | Bin .../vuetify/src/public}/icon.png | Bin packages/vuetify/vuetify.config.js | 13 + vetur.config.js | 14 + 135 files changed, 15583 insertions(+), 35210 deletions(-) create mode 100644 .prettierrc.json create mode 100644 .stylelintignore rename .stylelintrc.json => .stylelintrc (58%) delete mode 100644 examples/default/assets/icons/i18n.png delete mode 100644 examples/default/assets/icons/vue.png delete mode 100644 examples/default/nuxt.config.js delete mode 100644 examples/default/pages/index.vue delete mode 100644 examples/external/layouts/default.vue delete mode 100644 examples/external/nuxt.config.js delete mode 100644 examples/external/pages/index.vue delete mode 100644 examples/tailwind-css/entries/TailwindCss.vue delete mode 100644 examples/tailwind-css/entries/TailwindCssShadow.vue delete mode 100644 examples/tailwind-css/layouts/default.vue delete mode 100644 examples/tailwind-css/nuxt.config.js delete mode 100644 examples/tailwind-css/pages/frames/custom-shadow.vue delete mode 100644 examples/tailwind-css/pages/index.vue delete mode 100644 examples/tailwind-css/tailwind.config.js delete mode 100644 examples/vue-i18n/components/Example.vue delete mode 100644 examples/vue-i18n/entries/VueI18n.vue delete mode 100644 examples/vue-i18n/layouts/default.vue delete mode 100644 examples/vue-i18n/nuxt.config.js delete mode 100644 examples/vue-i18n/pages/frames/custom-shadow.vue delete mode 100644 examples/vue-i18n/pages/frames/custom.vue delete mode 100644 examples/vue-i18n/pages/index.vue delete mode 100644 examples/vue-i18n/plugins/i18n.options.js delete mode 100644 examples/vue-i18n/plugins/vueI18n.js delete mode 100644 examples/vue-router/components/Example.vue delete mode 100644 examples/vue-router/entries/VueRouter.vue delete mode 100644 examples/vue-router/layouts/default.vue delete mode 100644 examples/vue-router/nuxt.config.js delete mode 100644 examples/vue-router/pages/frames/custom-shadow.vue delete mode 100644 examples/vue-router/pages/frames/custom.vue delete mode 100644 examples/vue-router/pages/frames/nuxt.vue delete mode 100644 examples/vue-router/pages/index.vue delete mode 100644 examples/vue-router/plugins/vueRouter.js delete mode 100644 examples/vue-router/router-views/index.vue delete mode 100644 examples/vue-router/router-views/view-1.vue delete mode 100644 examples/vue-router/router-views/view-2.vue delete mode 100644 examples/vue-router/router-views/view-3.vue delete mode 100755 examples/vue-router/static/favicon.ico delete mode 100644 examples/vue-router/static/icon.png delete mode 100644 examples/vuetify/components/Example.vue delete mode 100644 examples/vuetify/entries/Vuetify.vue delete mode 100644 examples/vuetify/entries/VuetifyShadow.vue delete mode 100644 examples/vuetify/layouts/default.vue delete mode 100644 examples/vuetify/nuxt.config.js delete mode 100644 examples/vuetify/pages/frames/custom-shadow.vue delete mode 100644 examples/vuetify/pages/frames/custom.vue delete mode 100644 examples/vuetify/pages/frames/nuxt.vue delete mode 100644 examples/vuetify/pages/index.vue delete mode 100644 examples/vuetify/plugins/vuetify.js delete mode 100644 examples/vuetify/plugins/vuetify.options.js delete mode 100755 examples/vuetify/static/favicon.ico delete mode 100644 examples/vuetify/static/icon.png delete mode 100644 examples/vuex/entries/Vuex.vue delete mode 100644 examples/vuex/layouts/default.vue delete mode 100644 examples/vuex/nuxt.config.js delete mode 100644 examples/vuex/pages/frames/custom-shadow.vue delete mode 100644 examples/vuex/pages/frames/custom.vue delete mode 100644 examples/vuex/pages/index.vue delete mode 100644 examples/vuex/plugins/vuex.js delete mode 100755 examples/vuex/static/favicon.ico delete mode 100644 examples/vuex/static/icon.png delete mode 100644 examples/vuex/store/example.js create mode 100644 packages/default/jsconfig.json create mode 100644 packages/default/nuxt.config.js create mode 100644 packages/default/package.json rename {examples/default => packages/default/src}/assets/css/layout.css (87%) rename {examples/default => packages/default/src}/assets/icons/arrow-left.svg (100%) rename {examples/default => packages/default/src}/assets/icons/external-link.svg (100%) create mode 100644 packages/default/src/assets/icons/pinia.png rename {examples/default => packages/default/src}/assets/icons/tailwindcss.png (100%) rename {examples/default => packages/default/src}/assets/icons/vuetify.png (100%) rename {examples/default => packages/default/src}/assets/logo.svg (100%) rename {examples/default => packages/default/src}/components/Example.vue (92%) rename {examples/default => packages/default/src}/layouts/default.vue (52%) create mode 100644 packages/default/src/pages/index.vue rename {examples/default => packages/default/src}/static/favicon.ico (100%) rename {examples/default => packages/default/src}/static/icon.png (100%) create mode 100644 packages/pinia/jsconfig.json create mode 100644 packages/pinia/nuxt.config.js create mode 100644 packages/pinia/package.json create mode 100644 packages/pinia/src/assets/css/vuetify-theme.css rename {examples/vuex => packages/pinia/src}/components/Example.vue (58%) create mode 100644 packages/pinia/src/components/customElements/Pinia.appContext.js create mode 100644 packages/pinia/src/components/customElements/Pinia.vue create mode 100644 packages/pinia/src/layouts/default.vue create mode 100644 packages/pinia/src/pages/frames/custom.vue rename {examples/vue-i18n => packages/pinia/src}/pages/frames/nuxt.vue (68%) create mode 100644 packages/pinia/src/pages/index.vue create mode 100644 packages/pinia/src/plugins/pinia.js rename {examples/external/static => packages/pinia/src/public}/favicon.ico (100%) rename {examples/external/static => packages/pinia/src/public}/icon.png (100%) create mode 100644 packages/pinia/src/stores/example.js create mode 100644 packages/tailwindcss/jsconfig.json create mode 100644 packages/tailwindcss/nuxt.config.js create mode 100644 packages/tailwindcss/package.json rename {examples/tailwind-css => packages/tailwindcss/src}/assets/css/tailwind.css (100%) rename {examples/tailwind-css => packages/tailwindcss/src}/components/Example.vue (93%) create mode 100644 packages/tailwindcss/src/components/customElements/TailwindCss.vue create mode 100644 packages/tailwindcss/src/layouts/default.vue rename {examples/tailwind-css => packages/tailwindcss/src}/pages/frames/custom.vue (51%) rename {examples/vuex => packages/tailwindcss/src}/pages/frames/nuxt.vue (68%) create mode 100644 packages/tailwindcss/src/pages/index.vue rename {examples/tailwind-css/static => packages/tailwindcss/src/public}/favicon.ico (100%) rename {examples/tailwind-css/static => packages/tailwindcss/src/public}/icon.png (100%) create mode 100644 packages/tailwindcss/tailwind.config.js create mode 100644 packages/vuetify/jsconfig.json create mode 100644 packages/vuetify/nuxt.config.js create mode 100644 packages/vuetify/package.json create mode 100644 packages/vuetify/src/assets/css/vuetify-theme.css create mode 100644 packages/vuetify/src/components/Example.vue create mode 100644 packages/vuetify/src/components/customElements/Vuetify.appContext.js create mode 100644 packages/vuetify/src/components/customElements/Vuetify.vue create mode 100644 packages/vuetify/src/layouts/default.vue create mode 100644 packages/vuetify/src/pages/frames/custom.vue rename {examples/tailwind-css => packages/vuetify/src}/pages/frames/nuxt.vue (68%) create mode 100644 packages/vuetify/src/pages/index.vue create mode 100644 packages/vuetify/src/plugins/vuetify.js rename {examples/vue-i18n/static => packages/vuetify/src/public}/favicon.ico (100%) rename {examples/vue-i18n/static => packages/vuetify/src/public}/icon.png (100%) create mode 100644 packages/vuetify/vuetify.config.js create mode 100644 vetur.config.js diff --git a/.eslintrc.json b/.eslintrc.json index 96a4e7b3..e7753a92 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -7,14 +7,18 @@ }, "extends": [ "@nuxtjs", - "plugin:nuxt/recommended" + "plugin:nuxt/recommended", + "prettier" + ], + "plugins": [ + "prettier" ], - "plugins": [], "rules": { + "prettier/prettier": "error", "semi": [ 2, "always" ], "vue/multi-word-component-names": "off" } -} +} \ No newline at end of file diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 99fbebdd..3295668f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,7 +13,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node: [16] + node: [19] steps: - uses: actions/setup-node@v3 @@ -27,14 +27,12 @@ jobs: with: path: | node_modules - ~/.cache/ms-playwright/ - ~\AppData\Local\ms-playwright\ key: ${{ matrix.os }}-node-v${{ matrix.node }}-deps-${{ hashFiles(format('{0}{1}', github.workspace, '/package-lock.json')) }} - name: Install Dependencies if: steps.cache.outputs.cache-hit != 'true' run: npm ci - name: Test - run: npm run test + run: npm run test --workspaces semantic-version: name: Semantic Release @@ -44,7 +42,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node: [16] + node: [19] steps: - uses: actions/setup-node@v3 @@ -68,7 +66,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node: [16] + node: [19] steps: - uses: actions/setup-node@v3 @@ -82,70 +80,38 @@ jobs: with: path: | node_modules - ~/.cache/ms-playwright/ - ~\AppData\Local\ms-playwright\ key: ${{ matrix.os }}-node-v${{ matrix.node }}-deps-${{ hashFiles(format('{0}{1}', github.workspace, '/package-lock.json')) }} - - name: Build + + - name: BuildDefault run: | - npm run generate -- examples/default - touch dist/.nojekyll + npm run generate --workspace=@nuxt-custom-elements-example/default env: BASE_URL: /nuxt-custom-elements-example/ DIST_PATH: ../../dist # tailwind-css - - name: BuildTailwindCss + - name: BuildTailwindCSS run: | - npm run generate -- examples/tailwind-css - unlink dist/tailwind-css/.nojekyll + npm run generate --workspace=@nuxt-custom-elements-example/tailwindcss env: - BASE_URL: /nuxt-custom-elements-example/tailwind-css/ - DIST_PATH: ../../dist/tailwind-css + BASE_URL: /nuxt-custom-elements-example/tailwindcss/ + DIST_PATH: ../../dist/tailwindcss # vuetify - name: BuildVuetify run: | - npm run generate -- examples/vuetify - unlink dist/vuetify/.nojekyll + npm run generate --workspace=@nuxt-custom-elements-example/vuetify env: BASE_URL: /nuxt-custom-elements-example/vuetify/ DIST_PATH: ../../dist/vuetify - # vue-i18n - - name: BuildVueI18n - run: | - npm run generate -- examples/vue-i18n - unlink dist/vue-i18n/.nojekyll - env: - BASE_URL: /nuxt-custom-elements-example/vue-i18n/ - DIST_PATH: ../../dist/vue-i18n - - # vue-router - - name: BuildVueRouter - run: | - npm run generate -- examples/vue-router - unlink dist/vue-router/.nojekyll - env: - BASE_URL: /nuxt-custom-elements-example/vue-router/ - DIST_PATH: ../../dist/vue-router - - # vuex - - name: BuildVuex + # pinia + - name: BuildPinia run: | - npm run generate -- examples/vuex - unlink dist/vuex/.nojekyll + npm run generate --workspace=@nuxt-custom-elements-example/pinia env: BASE_URL: /nuxt-custom-elements-example/vuex/ - DIST_PATH: ../../dist/vuex - - # external - - name: BuildExternal - run: | - npm run generate -- examples/external - unlink dist/external/.nojekyll - env: - BASE_URL: /nuxt-custom-elements-example/external/ - DIST_PATH: ../../dist/external + DIST_PATH: ../../dist/pinia - name: Archive Production Artifact uses: actions/upload-artifact@master @@ -160,7 +126,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node: [16] + node: [19] steps: - name: Download Artifact uses: actions/download-artifact@master diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 40eef3a2..5d9a8a6e 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -11,7 +11,7 @@ jobs: strategy: matrix: os: [ubuntu-latest] - node: [14, 16] + node: [19] steps: - uses: actions/setup-node@v3 @@ -27,8 +27,6 @@ jobs: with: path: | node_modules - ~/.cache/ms-playwright/ - ~\AppData\Local\ms-playwright\ key: ${{ matrix.os }}-node-v${{ matrix.node }}-deps-${{ hashFiles(format('{0}{1}', github.workspace, '/package-lock.json')) }} - name: Install Dependencies @@ -36,4 +34,4 @@ jobs: run: npm ci - name: Test - run: npm run test + run: npm run test --workspaces diff --git a/.gitignore b/.gitignore index 1ceaa9a9..593f507c 100644 --- a/.gitignore +++ b/.gitignore @@ -90,3 +90,4 @@ sw.* *.swp .history +.output diff --git a/.lintstagedrc b/.lintstagedrc index b4bc5c68..8728345f 100644 --- a/.lintstagedrc +++ b/.lintstagedrc @@ -1,5 +1,5 @@ { "*.(js|vue)": [ - "npm run lint:es" + "npm run test --workspaces" ] } \ No newline at end of file diff --git a/.nvmrc b/.nvmrc index 431076a9..d9875d47 100755 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -16.16.0 +19.9.0 diff --git a/.prettierrc.json b/.prettierrc.json new file mode 100644 index 00000000..904210f0 --- /dev/null +++ b/.prettierrc.json @@ -0,0 +1,8 @@ +{ + "arrowParens": "avoid", + "bracketSameLine": true, + "trailingComma": "none", + "singleQuote": true, + "semi": true, + "printWidth": 80 +} diff --git a/.stylelintignore b/.stylelintignore new file mode 100644 index 00000000..a7a11f4d --- /dev/null +++ b/.stylelintignore @@ -0,0 +1,9 @@ +# Common +node_modules +dist +.nuxt +coverage +.reports + +# Files +**/*.js diff --git a/.stylelintrc.json b/.stylelintrc similarity index 58% rename from .stylelintrc.json rename to .stylelintrc index 8e16e4e1..2f7cd94a 100644 --- a/.stylelintrc.json +++ b/.stylelintrc @@ -4,25 +4,27 @@ "stylelint-config-recess-order" ], "customSyntax": "postcss-html", + "ignoreFiles": [ + "./**/*.js" + ], + "plugins": [ + "stylelint-prettier" + ], "rules": { - "max-line-length": null, + "prettier/prettier": true, "value-keyword-case": [ "lower", { "camelCaseSvgKeywords": true } ], - "at-rule-no-unknown": [ + "selector-pseudo-class-no-unknown": [ true, { - "ignoreAtRules": [ - "tailwind", - "apply", - "variants", - "responsive", - "screen" + "ignorePseudoClasses": [ + "deep" ] } ] } -} +} \ No newline at end of file diff --git a/README.md b/README.md index 5dcf5e4b..0e24be59 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,9 @@ # Nuxt Custom-Elements Example -This is an example project for using [Nuxt Custom-Elements](https://github.com/GrabarzUndPartner/nuxt-custom-elements) with [Nuxt.js](https://nuxtjs.org) and plugins ([VueI18n](https://kazupon.github.io/vue-i18n/), [Vuetify](https://vuetifyjs.com/), ...). +This is an example project for using [Nuxt Custom-Elements](https://github.com/GrabarzUndPartner/nuxt-custom-elements) with [Nuxt.js](https://nuxtjs.org) and plugins ([VueI18n](https://kazupon.github.io/vue-i18n/), [Vuetify](https://vuetifyjs.com/), ...). For more information, see the [Usage section](https://nuxt-custom-elements.grabarzundpartner.dev/usage/) in the documentation. - - [👁   **Preview**](https://grabarzundpartner.github.io/nuxt-custom-elements-example/) - [📖   **Documentation**](http://nuxt-custom-elements.grabarzundpartner.dev/) @@ -13,38 +12,38 @@ For more information, see the [Usage section](https://nuxt-custom-elements.graba First of all, the repository must be cloned and install dependencies with ```bash -$ npm install +npm install ``` Each example can be started in `dev`, `server` and `ssr`. -For this the path to the example must be given as argument (e.g. `npm run dev -- examples/default`). +For this the path to the example must be given as workspace (e.g. `npm run dev --workspace=@nuxt-custom-elements-example/default`). The path specification must be specified in `dev`, `build`, `generate` and `start`. **Available examples:** -| Path | | -| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| `examples/tailwind-css` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/tailwind-css/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples/tailwind-css) | -| `examples/vue-i18n` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/vue-i18n/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples/vue-i18n) | -| `examples/vue-router` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/vue-router/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples/vue-router) | -| `examples/vuetify` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/vuetify/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples#:~:text=last%20month-,vuetify,-fix(update)%3A%20update) | -| `examples/vuex` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/vuex/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples/vuex) | -| `examples/external` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/external/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/examples/external) | +| Path | | +| ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `pinia` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/pinia/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/packages/pinia) | +| `tailwindcss` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/tailwindcss/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/packages/tailwindcss) | +| `vuetify` | [Preview](https://grabarzundpartner.github.io/nuxt-custom-elements-example/vuetify/) - [Source](https://github.com/GrabarzUndPartner/nuxt-custom-elements-example/tree/main/packages/vuetify) | ### Development ``` -$ npm run dev -- examples/default +npm run dev --workspace=@nuxt-custom-elements-example/default ``` ### Server + ``` -$ npm run build -- examples/default && npm run start -- examples/default +npm run build --workspace=@nuxt-custom-elements-example/default && npm run start --workspace=@nuxt-custom-elements-example/default ``` + ### Static + ``` -$ npm run generate -- examples/default --target static && npm run start -- examples/default --target static +npm run generate --workspace=@nuxt-custom-elements-example/default --target static && npm run start --workspace=@nuxt-custom-elements-example/default --target static ``` Finally, the example can be opened in the browser via [http://localhost:3000/]( http://localhost:3000/). diff --git a/commitlint.config.js b/commitlint.config.js index dc0adae1..c34aa79d 100644 --- a/commitlint.config.js +++ b/commitlint.config.js @@ -1,5 +1,3 @@ module.exports = { - extends: [ - '@commitlint/config-conventional' - ] + extends: ['@commitlint/config-conventional'] }; diff --git a/examples/default/assets/icons/i18n.png b/examples/default/assets/icons/i18n.png deleted file mode 100644 index 296c5839d75fb8b7203a2cdc460512744fd8d365..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9832 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%0D>7r)tJA7~3ko6>vpQOTOP6@BN?7!F*U`U- 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 -

-
-

- -

- -
- Example - - - Example Slot Content - - -
-

See other interesting examples…

- -
-
- - - - - diff --git a/examples/external/layouts/default.vue b/examples/external/layouts/default.vue deleted file mode 100644 index 609ad17e..00000000 --- a/examples/external/layouts/default.vue +++ /dev/null @@ -1,10 +0,0 @@ - - - - diff --git a/examples/external/nuxt.config.js b/examples/external/nuxt.config.js deleted file mode 100644 index 8c750e76..00000000 --- a/examples/external/nuxt.config.js +++ /dev/null @@ -1,37 +0,0 @@ -import pkg from '../../package.json'; - -export default { - target: 'static', - srcDir: __dirname, - - generate: { - dir: process.env.DIST_PATH || '../../dist', - crawler: false - }, - - router: { - base: process.env.BASE_URL - }, - - head: { - title: 'External Example - Nuxt Custom-Elements', - htmlAttrs: { - lang: 'en' - }, - meta: [ - { charset: 'utf-8' }, - { name: 'viewport', content: 'width=device-width, initial-scale=1' }, - { hid: 'description', name: 'description', content: pkg.description } - ], - link: [ - { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } - ] - }, - - buildModules: [ - '@nuxt/postcss8', - '@nuxtjs/eslint-module', - '@nuxtjs/stylelint-module' - ] - -}; diff --git a/examples/external/pages/index.vue b/examples/external/pages/index.vue deleted file mode 100644 index 297752c7..00000000 --- a/examples/external/pages/index.vue +++ /dev/null @@ -1,52 +0,0 @@ - - diff --git a/examples/tailwind-css/entries/TailwindCss.vue b/examples/tailwind-css/entries/TailwindCss.vue deleted file mode 100644 index 08bcfc7c..00000000 --- a/examples/tailwind-css/entries/TailwindCss.vue +++ /dev/null @@ -1,14 +0,0 @@ - - - diff --git a/examples/tailwind-css/entries/TailwindCssShadow.vue b/examples/tailwind-css/entries/TailwindCssShadow.vue deleted file mode 100644 index 25031804..00000000 --- a/examples/tailwind-css/entries/TailwindCssShadow.vue +++ /dev/null @@ -1,20 +0,0 @@ - - - - - diff --git a/examples/tailwind-css/layouts/default.vue b/examples/tailwind-css/layouts/default.vue deleted file mode 100644 index c1a8f2ab..00000000 --- a/examples/tailwind-css/layouts/default.vue +++ /dev/null @@ -1,10 +0,0 @@ - - - - diff --git a/examples/tailwind-css/nuxt.config.js b/examples/tailwind-css/nuxt.config.js deleted file mode 100644 index 868bb586..00000000 --- a/examples/tailwind-css/nuxt.config.js +++ /dev/null @@ -1,85 +0,0 @@ -import pkg from '../../package.json'; - -export default { - target: 'static', - srcDir: __dirname, - - generate: { - dir: process.env.DIST_PATH || '../../dist', - crawler: false - }, - - router: { - base: process.env.BASE_URL - }, - - head: { - title: 'TailwindCSS Example - Nuxt Custom-Elements', - htmlAttrs: { - lang: 'en' - }, - meta: [ - { charset: 'utf-8' }, - { name: 'viewport', content: 'width=device-width, initial-scale=1' }, - { hid: 'description', name: 'description', content: pkg.description } - ], - link: [ - { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' } - ] - }, - - build: { - postcss: { - plugins: { - 'postcss-import': true, - 'postcss-nesting': {}, - 'tailwindcss/nesting': {} - }, - order: 'cssnanoLast' - } - }, - - customElements: { - entries: [ - { - name: 'Example', - tags: [ - { - name: 'CustomElementTailwindCss', - path: '@/entries/TailwindCss' - } - ] - }, - { - name: 'ExampleShadow', - shadow: true, - tags: [ - { - name: 'CustomElementTailwindCss', - path: '@/entries/TailwindCssShadow' - } - ] - } - ] - }, - - tailwindcss: { - cssPath: '~/assets/css/tailwind.css', - configPath: 'tailwind.config.js', - jit: false, - exposeConfig: false, - config: {} - }, - - buildModules: [ - '@nuxt/postcss8', - '@nuxtjs/eslint-module', - '@nuxtjs/stylelint-module', - '@nuxtjs/tailwindcss' - ], - - modules: [ - 'nuxt-custom-elements' - ] - -}; diff --git a/examples/tailwind-css/pages/frames/custom-shadow.vue b/examples/tailwind-css/pages/frames/custom-shadow.vue deleted file mode 100644 index 1da6a279..00000000 --- a/examples/tailwind-css/pages/frames/custom-shadow.vue +++ /dev/null @@ -1,56 +0,0 @@ - - - diff --git a/examples/tailwind-css/pages/index.vue b/examples/tailwind-css/pages/index.vue deleted file mode 100644 index d61bb251..00000000 --- a/examples/tailwind-css/pages/index.vue +++ /dev/null @@ -1,24 +0,0 @@ -