@nuxtjs/color-mode
Advanced tools
Comparing version 2.0.8 to 2.0.9
@@ -5,2 +5,9 @@ # Changelog | ||
### [2.0.9](https://github.com/nuxt-community/color-mode-module/compare/v2.0.8...v2.0.9) (2021-05-24) | ||
### Bug Fixes | ||
* move ssr script injection into plugin for nitro compat ([#86](https://github.com/nuxt-community/color-mode-module/issues/86)) ([9002bb0](https://github.com/nuxt-community/color-mode-module/commit/9002bb0d696bac7945077d6bcafe3993866ebb2f)) | ||
### [2.0.8](https://github.com/nuxt-community/color-mode-module/compare/v2.0.7...v2.0.8) (2021-05-20) | ||
@@ -7,0 +14,0 @@ |
@@ -24,6 +24,2 @@ import { resolve } from 'path' | ||
// Add all templates | ||
const templatesDir = resolve(__dirname, 'templates') | ||
await addTemplates.call(this, templatesDir, 'color-mode', options) | ||
// Add script to head to detect user or system preference before loading Nuxt (for SSR) | ||
@@ -34,13 +30,21 @@ const scriptPath = resolve(__dirname, 'script.min.js') | ||
/* istanbul ignore next */ | ||
this.options.head.script = this.options.head.script || [] | ||
this.options.head.script.push({ | ||
hid: options.hid, | ||
innerHTML: script, | ||
pbody: true | ||
options.script = script | ||
this.nuxt.hook('vue-renderer:spa:prepareContext', ({ head }) => { | ||
const script = { | ||
hid: options.hid, | ||
innerHTML: options.script, | ||
pbody: true | ||
} | ||
head.script.push(script) | ||
const serializeProp = '__dangerouslyDisableSanitizersByTagID' | ||
head[serializeProp] = head[serializeProp] || {} | ||
head[serializeProp][options.hid] = ['innerHTML'] | ||
}) | ||
const serializeProp = '__dangerouslyDisableSanitizersByTagID' | ||
this.options.head[serializeProp] = this.options.head[serializeProp] || {} | ||
this.options.head[serializeProp][options.hid] = ['innerHTML'] | ||
// Add all templates | ||
const templatesDir = resolve(__dirname, 'templates') | ||
await addTemplates.call(this, templatesDir, 'color-mode', options) | ||
} |
@@ -6,3 +6,15 @@ import Vue from 'vue' | ||
const script = { | ||
hid: '<%= options.hid %>', | ||
innerHTML: `<%= options.script %>`, | ||
pbody: true | ||
} | ||
export default function (ctx, inject) { | ||
ctx.app.head.script.push(script) | ||
const serializeProp = '__dangerouslyDisableSanitizersByTagID' | ||
ctx.app.head[serializeProp] = ctx.app.head[serializeProp] || {} | ||
ctx.app.head[serializeProp]['<%= options.hid %>'] = ['innerHTML'] | ||
const preference = '<%= options.preference %>' | ||
@@ -9,0 +21,0 @@ |
{ | ||
"name": "@nuxtjs/color-mode", | ||
"version": "2.0.8", | ||
"version": "2.0.9", | ||
"description": "Dark and Light mode for NuxtJS with auto detection", | ||
@@ -5,0 +5,0 @@ "repository": "nuxt-community/color-mode-module", |
22259
345