@aotearoan/neon 25.0.0 → 25.0.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.
@@ -1,2 +1,2 @@
1
- "use strict";const e=require("vue"),c=require("../../../common/utils/NeonClosableUtils.cjs.js"),d=require("../../user-input/button/NeonButton.vue.cjs.js"),p=require("../../../common/enums/NeonResponsive.cjs.js"),f=e.defineComponent({name:"NeonDrawer",components:{NeonButton:d},props:{open:{type:Boolean,required:!0},dismissible:{type:Boolean,default:!0},opaque:{type:Boolean,default:!1},showTopNav:{type:Boolean,default:!1},breakpoint:{type:String,default:p.NeonResponsive.Mobile}},emits:["close"],setup(o,{emit:a}){const l=e.ref(null),n=e.ref(null),r=()=>{a("close")},t=()=>{o.open&&o.dismissible&&r()};return e.onMounted(()=>{o.dismissible&&(n.value=l.value&&new c.NeonClosableUtils(l.value,t)||null)}),e.onUnmounted(()=>{var s;(s=n.value)==null||s.destroy()}),e.watch(()=>o.open,s=>{var i,u;s?(i=n.value)==null||i.open():(u=n.value)==null||u.close()},{immediate:!0}),{modal:l,close:t}}});module.exports=f;
1
+ "use strict";const e=require("vue"),c=require("../../../common/utils/NeonClosableUtils.cjs.js"),f=require("../../user-input/button/NeonButton.vue.cjs.js"),p=require("../../../common/enums/NeonResponsive.cjs.js"),d=e.defineComponent({name:"NeonDrawer",components:{NeonButton:f},props:{open:{type:Boolean,required:!0},dismissible:{type:Boolean,default:!0},opaque:{type:Boolean,default:!1},showTopNav:{type:Boolean,default:!1},breakpoint:{type:String,default:p.NeonResponsive.Mobile},noOffset:{type:Boolean}},emits:["close"],setup(o,{emit:u}){const l=e.ref(null),n=e.ref(null),r=()=>{u("close")},t=()=>{o.open&&o.dismissible&&r()};return e.onMounted(()=>{o.dismissible&&(n.value=l.value&&new c.NeonClosableUtils(l.value,t)||null)}),e.onUnmounted(()=>{var s;(s=n.value)==null||s.destroy()}),e.watch(()=>o.open,s=>{var i,a;s?(i=n.value)==null||i.open():(a=n.value)==null||a.close()},{immediate:!0}),{modal:l,close:t}}});module.exports=d;
2
2
  //# sourceMappingURL=NeonModal.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonModal.cjs.js","sources":["../../../../src/components/layout/modal/NeonModal.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, onMounted, onUnmounted, ref, watch } from 'vue';\nimport { NeonClosableUtils } from '@/common/utils/NeonClosableUtils';\nimport NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport { NeonResponsive } from '@/common/enums/NeonResponsive';\n\n/**\n * A modal dialog component. This will be rendered above the content of the main window and can either be dismissed by the user or configured to require user interaction before dismissal.\n */\nexport default defineComponent({\n name: 'NeonDrawer',\n components: {\n NeonButton,\n },\n props: {\n /**\n * Whether the modal is currently open.\n */\n open: { type: Boolean, required: true },\n /**\n * Whether the user is allowed to dismiss the modal by clicking outside the modal or pressing escape.\n */\n dismissible: { type: Boolean, default: true },\n /**\n * Increase the opacity so that the page behind the modal is no longer visible\n */\n opaque: { type: Boolean, default: false },\n /**\n * Keep the top nav visible when the modal is open\n */\n showTopNav: { type: Boolean, default: false },\n /**\n * Responsive breakpoint below which point the modal becomes fullscreen.\n * Supports NeonResponsive.Mobile & NeonResponsive.MobileLarge.\n */\n breakpoint: { type: String as () => NeonResponsive, default: NeonResponsive.Mobile },\n },\n emits: [\n /**\n * Emitted when the modal is closed.\n * @type {void}\n */\n 'close',\n ],\n setup(props, { emit }) {\n const modal = ref(null);\n const closableUtils = ref<NeonClosableUtils | null>(null);\n\n const onClose = () => {\n emit('close');\n };\n\n const close = () => {\n if (props.open && props.dismissible) {\n onClose();\n }\n };\n\n onMounted(() => {\n if (props.dismissible) {\n closableUtils.value = (modal.value && new NeonClosableUtils(modal.value, close)) || null;\n }\n });\n\n onUnmounted(() => {\n closableUtils.value?.destroy();\n });\n\n watch(\n () => props.open,\n (value) => {\n if (value) {\n closableUtils.value?.open();\n } else {\n closableUtils.value?.close();\n }\n },\n { immediate: true },\n );\n\n return {\n modal,\n close,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonResponsive","props","emit","modal","ref","closableUtils","onClose","close","onMounted","NeonClosableUtils","onUnmounted","_a","watch","value","_b"],"mappings":"oNAQAA,EAAeC,kBAAgB,CAC7B,KAAM,aACN,WAAY,CACV,WAAAC,CAAA,EAEF,MAAO,CAIL,KAAM,CAAE,KAAM,QAAS,SAAU,EAAA,EAIjC,YAAa,CAAE,KAAM,QAAS,QAAS,EAAA,EAIvC,OAAQ,CAAE,KAAM,QAAS,QAAS,EAAA,EAIlC,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAKtC,WAAY,CAAE,KAAM,OAAgC,QAASC,EAAAA,eAAe,MAAA,CAAO,EAErF,MAAO,CAKL,OAAA,EAEF,MAAMC,EAAO,CAAE,KAAAC,GAAQ,CACrB,MAAMC,EAAQC,EAAAA,IAAI,IAAI,EAChBC,EAAgBD,EAAAA,IAA8B,IAAI,EAElDE,EAAU,IAAM,CACpBJ,EAAK,OAAO,CACd,EAEMK,EAAQ,IAAM,CACdN,EAAM,MAAQA,EAAM,aACtBK,EAAA,CAEJ,EAEAE,OAAAA,EAAAA,UAAU,IAAM,CACVP,EAAM,cACRI,EAAc,MAASF,EAAM,OAAS,IAAIM,EAAAA,kBAAkBN,EAAM,MAAOI,CAAK,GAAM,KAExF,CAAC,EAEDG,EAAAA,YAAY,IAAM,QAChBC,EAAAN,EAAc,QAAd,MAAAM,EAAqB,SACvB,CAAC,EAEDC,EAAAA,MACE,IAAMX,EAAM,KACXY,GAAU,SACLA,GACFF,EAAAN,EAAc,QAAd,MAAAM,EAAqB,QAErBG,EAAAT,EAAc,QAAd,MAAAS,EAAqB,OAEzB,EACA,CAAE,UAAW,EAAA,CAAK,EAGb,CACL,MAAAX,EACA,MAAAI,CAAA,CAEJ,CACF,CAAC"}
1
+ {"version":3,"file":"NeonModal.cjs.js","sources":["../../../../src/components/layout/modal/NeonModal.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, onMounted, onUnmounted, ref, watch } from 'vue';\nimport { NeonClosableUtils } from '@/common/utils/NeonClosableUtils';\nimport NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport { NeonResponsive } from '@/common/enums/NeonResponsive';\n\n/**\n * A modal dialog component. This will be rendered above the content of the main window and can either be dismissed by the user or configured to require user interaction before dismissal.\n */\nexport default defineComponent({\n name: 'NeonDrawer',\n components: {\n NeonButton,\n },\n props: {\n /**\n * Whether the modal is currently open.\n */\n open: { type: Boolean, required: true },\n /**\n * Whether the user is allowed to dismiss the modal by clicking outside the modal or pressing escape.\n */\n dismissible: { type: Boolean, default: true },\n /**\n * Increase the opacity so that the page behind the modal is no longer visible\n */\n opaque: { type: Boolean, default: false },\n /**\n * Keep the top nav visible when the modal is open\n */\n showTopNav: { type: Boolean, default: false },\n /**\n * Responsive breakpoint below which point the modal becomes fullscreen.\n * Supports NeonResponsive.Mobile & NeonResponsive.MobileLarge.\n */\n breakpoint: { type: String as () => NeonResponsive, default: NeonResponsive.Mobile },\n /**\n * Remove the offset from the top of the modal.\n */\n noOffset: { type: Boolean },\n },\n emits: [\n /**\n * Emitted when the modal is closed.\n * @type {void}\n */\n 'close',\n ],\n setup(props, { emit }) {\n const modal = ref(null);\n const closableUtils = ref<NeonClosableUtils | null>(null);\n\n const onClose = () => {\n emit('close');\n };\n\n const close = () => {\n if (props.open && props.dismissible) {\n onClose();\n }\n };\n\n onMounted(() => {\n if (props.dismissible) {\n closableUtils.value = (modal.value && new NeonClosableUtils(modal.value, close)) || null;\n }\n });\n\n onUnmounted(() => {\n closableUtils.value?.destroy();\n });\n\n watch(\n () => props.open,\n (value) => {\n if (value) {\n closableUtils.value?.open();\n } else {\n closableUtils.value?.close();\n }\n },\n { immediate: true },\n );\n\n return {\n modal,\n close,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonResponsive","props","emit","modal","ref","closableUtils","onClose","close","onMounted","NeonClosableUtils","onUnmounted","_a","watch","value","_b"],"mappings":"oNAQAA,EAAeC,kBAAgB,CAC7B,KAAM,aACN,WAAY,CACV,WAAAC,CAAA,EAEF,MAAO,CAIL,KAAM,CAAE,KAAM,QAAS,SAAU,EAAA,EAIjC,YAAa,CAAE,KAAM,QAAS,QAAS,EAAA,EAIvC,OAAQ,CAAE,KAAM,QAAS,QAAS,EAAA,EAIlC,WAAY,CAAE,KAAM,QAAS,QAAS,EAAA,EAKtC,WAAY,CAAE,KAAM,OAAgC,QAASC,EAAAA,eAAe,MAAA,EAI5E,SAAU,CAAE,KAAM,OAAA,CAAQ,EAE5B,MAAO,CAKL,OAAA,EAEF,MAAMC,EAAO,CAAE,KAAAC,GAAQ,CACrB,MAAMC,EAAQC,EAAAA,IAAI,IAAI,EAChBC,EAAgBD,EAAAA,IAA8B,IAAI,EAElDE,EAAU,IAAM,CACpBJ,EAAK,OAAO,CACd,EAEMK,EAAQ,IAAM,CACdN,EAAM,MAAQA,EAAM,aACtBK,EAAA,CAEJ,EAEAE,OAAAA,EAAAA,UAAU,IAAM,CACVP,EAAM,cACRI,EAAc,MAASF,EAAM,OAAS,IAAIM,EAAAA,kBAAkBN,EAAM,MAAOI,CAAK,GAAM,KAExF,CAAC,EAEDG,EAAAA,YAAY,IAAM,QAChBC,EAAAN,EAAc,QAAd,MAAAM,EAAqB,SACvB,CAAC,EAEDC,EAAAA,MACE,IAAMX,EAAM,KACXY,GAAU,SACLA,GACFF,EAAAN,EAAc,QAAd,MAAAM,EAAqB,QAErBG,EAAAT,EAAc,QAAd,MAAAS,EAAqB,OAEzB,EACA,CAAE,UAAW,EAAA,CAAK,EAGb,CACL,MAAAX,EACA,MAAAI,CAAA,CAEJ,CACF,CAAC"}
@@ -28,7 +28,11 @@ const C = r({
28
28
  * Responsive breakpoint below which point the modal becomes fullscreen.
29
29
  * Supports NeonResponsive.Mobile & NeonResponsive.MobileLarge.
30
30
  */
31
- breakpoint: { type: String, default: b.Mobile }
31
+ breakpoint: { type: String, default: b.Mobile },
32
+ /**
33
+ * Remove the offset from the top of the modal.
34
+ */
35
+ noOffset: { type: Boolean }
32
36
  },
33
37
  emits: [
34
38
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"NeonModal.es.js","sources":["../../../../src/components/layout/modal/NeonModal.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, onMounted, onUnmounted, ref, watch } from 'vue';\nimport { NeonClosableUtils } from '@/common/utils/NeonClosableUtils';\nimport NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport { NeonResponsive } from '@/common/enums/NeonResponsive';\n\n/**\n * A modal dialog component. This will be rendered above the content of the main window and can either be dismissed by the user or configured to require user interaction before dismissal.\n */\nexport default defineComponent({\n name: 'NeonDrawer',\n components: {\n NeonButton,\n },\n props: {\n /**\n * Whether the modal is currently open.\n */\n open: { type: Boolean, required: true },\n /**\n * Whether the user is allowed to dismiss the modal by clicking outside the modal or pressing escape.\n */\n dismissible: { type: Boolean, default: true },\n /**\n * Increase the opacity so that the page behind the modal is no longer visible\n */\n opaque: { type: Boolean, default: false },\n /**\n * Keep the top nav visible when the modal is open\n */\n showTopNav: { type: Boolean, default: false },\n /**\n * Responsive breakpoint below which point the modal becomes fullscreen.\n * Supports NeonResponsive.Mobile & NeonResponsive.MobileLarge.\n */\n breakpoint: { type: String as () => NeonResponsive, default: NeonResponsive.Mobile },\n },\n emits: [\n /**\n * Emitted when the modal is closed.\n * @type {void}\n */\n 'close',\n ],\n setup(props, { emit }) {\n const modal = ref(null);\n const closableUtils = ref<NeonClosableUtils | null>(null);\n\n const onClose = () => {\n emit('close');\n };\n\n const close = () => {\n if (props.open && props.dismissible) {\n onClose();\n }\n };\n\n onMounted(() => {\n if (props.dismissible) {\n closableUtils.value = (modal.value && new NeonClosableUtils(modal.value, close)) || null;\n }\n });\n\n onUnmounted(() => {\n closableUtils.value?.destroy();\n });\n\n watch(\n () => props.open,\n (value) => {\n if (value) {\n closableUtils.value?.open();\n } else {\n closableUtils.value?.close();\n }\n },\n { immediate: true },\n );\n\n return {\n modal,\n close,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonResponsive","props","emit","modal","ref","closableUtils","onClose","close","onMounted","NeonClosableUtils","onUnmounted","_a","watch","value","_b"],"mappings":";;;;AAQA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,YAAAC;AAAA,EAAA;AAAA,EAEF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,EAAE,MAAM,SAAS,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIjC,aAAa,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAIvC,QAAQ,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAIlC,YAAY,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKtC,YAAY,EAAE,MAAM,QAAgC,SAASC,EAAe,OAAA;AAAA,EAAO;AAAA,EAErF,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL;AAAA,EAAA;AAAA,EAEF,MAAMC,GAAO,EAAE,MAAAC,KAAQ;AACrB,UAAMC,IAAQC,EAAI,IAAI,GAChBC,IAAgBD,EAA8B,IAAI,GAElDE,IAAU,MAAM;AACpB,MAAAJ,EAAK,OAAO;AAAA,IACd,GAEMK,IAAQ,MAAM;AAClB,MAAIN,EAAM,QAAQA,EAAM,eACtBK,EAAA;AAAA,IAEJ;AAEA,WAAAE,EAAU,MAAM;AACd,MAAIP,EAAM,gBACRI,EAAc,QAASF,EAAM,SAAS,IAAIM,EAAkBN,EAAM,OAAOI,CAAK,KAAM;AAAA,IAExF,CAAC,GAEDG,EAAY,MAAM;;AAChB,OAAAC,IAAAN,EAAc,UAAd,QAAAM,EAAqB;AAAA,IACvB,CAAC,GAEDC;AAAA,MACE,MAAMX,EAAM;AAAA,MACZ,CAACY,MAAU;;AACT,QAAIA,KACFF,IAAAN,EAAc,UAAd,QAAAM,EAAqB,UAErBG,IAAAT,EAAc,UAAd,QAAAS,EAAqB;AAAA,MAEzB;AAAA,MACA,EAAE,WAAW,GAAA;AAAA,IAAK,GAGb;AAAA,MACL,OAAAX;AAAA,MACA,OAAAI;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
1
+ {"version":3,"file":"NeonModal.es.js","sources":["../../../../src/components/layout/modal/NeonModal.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { defineComponent, onMounted, onUnmounted, ref, watch } from 'vue';\nimport { NeonClosableUtils } from '@/common/utils/NeonClosableUtils';\nimport NeonButton from '@/components/user-input/button/NeonButton.vue';\nimport { NeonResponsive } from '@/common/enums/NeonResponsive';\n\n/**\n * A modal dialog component. This will be rendered above the content of the main window and can either be dismissed by the user or configured to require user interaction before dismissal.\n */\nexport default defineComponent({\n name: 'NeonDrawer',\n components: {\n NeonButton,\n },\n props: {\n /**\n * Whether the modal is currently open.\n */\n open: { type: Boolean, required: true },\n /**\n * Whether the user is allowed to dismiss the modal by clicking outside the modal or pressing escape.\n */\n dismissible: { type: Boolean, default: true },\n /**\n * Increase the opacity so that the page behind the modal is no longer visible\n */\n opaque: { type: Boolean, default: false },\n /**\n * Keep the top nav visible when the modal is open\n */\n showTopNav: { type: Boolean, default: false },\n /**\n * Responsive breakpoint below which point the modal becomes fullscreen.\n * Supports NeonResponsive.Mobile & NeonResponsive.MobileLarge.\n */\n breakpoint: { type: String as () => NeonResponsive, default: NeonResponsive.Mobile },\n /**\n * Remove the offset from the top of the modal.\n */\n noOffset: { type: Boolean },\n },\n emits: [\n /**\n * Emitted when the modal is closed.\n * @type {void}\n */\n 'close',\n ],\n setup(props, { emit }) {\n const modal = ref(null);\n const closableUtils = ref<NeonClosableUtils | null>(null);\n\n const onClose = () => {\n emit('close');\n };\n\n const close = () => {\n if (props.open && props.dismissible) {\n onClose();\n }\n };\n\n onMounted(() => {\n if (props.dismissible) {\n closableUtils.value = (modal.value && new NeonClosableUtils(modal.value, close)) || null;\n }\n });\n\n onUnmounted(() => {\n closableUtils.value?.destroy();\n });\n\n watch(\n () => props.open,\n (value) => {\n if (value) {\n closableUtils.value?.open();\n } else {\n closableUtils.value?.close();\n }\n },\n { immediate: true },\n );\n\n return {\n modal,\n close,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonButton","NeonResponsive","props","emit","modal","ref","closableUtils","onClose","close","onMounted","NeonClosableUtils","onUnmounted","_a","watch","value","_b"],"mappings":";;;;AAQA,MAAAA,IAAeC,EAAgB;AAAA,EAC7B,MAAM;AAAA,EACN,YAAY;AAAA,IACV,YAAAC;AAAA,EAAA;AAAA,EAEF,OAAO;AAAA;AAAA;AAAA;AAAA,IAIL,MAAM,EAAE,MAAM,SAAS,UAAU,GAAA;AAAA;AAAA;AAAA;AAAA,IAIjC,aAAa,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAIvC,QAAQ,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA,IAIlC,YAAY,EAAE,MAAM,SAAS,SAAS,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAKtC,YAAY,EAAE,MAAM,QAAgC,SAASC,EAAe,OAAA;AAAA;AAAA;AAAA;AAAA,IAI5E,UAAU,EAAE,MAAM,QAAA;AAAA,EAAQ;AAAA,EAE5B,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,IAKL;AAAA,EAAA;AAAA,EAEF,MAAMC,GAAO,EAAE,MAAAC,KAAQ;AACrB,UAAMC,IAAQC,EAAI,IAAI,GAChBC,IAAgBD,EAA8B,IAAI,GAElDE,IAAU,MAAM;AACpB,MAAAJ,EAAK,OAAO;AAAA,IACd,GAEMK,IAAQ,MAAM;AAClB,MAAIN,EAAM,QAAQA,EAAM,eACtBK,EAAA;AAAA,IAEJ;AAEA,WAAAE,EAAU,MAAM;AACd,MAAIP,EAAM,gBACRI,EAAc,QAASF,EAAM,SAAS,IAAIM,EAAkBN,EAAM,OAAOI,CAAK,KAAM;AAAA,IAExF,CAAC,GAEDG,EAAY,MAAM;;AAChB,OAAAC,IAAAN,EAAc,UAAd,QAAAM,EAAqB;AAAA,IACvB,CAAC,GAEDC;AAAA,MACE,MAAMX,EAAM;AAAA,MACZ,CAACY,MAAU;;AACT,QAAIA,KACFF,IAAAN,EAAc,UAAd,QAAAM,EAAqB,UAErBG,IAAAT,EAAc,UAAd,QAAAS,EAAqB;AAAA,MAEzB;AAAA,MACA,EAAE,WAAW,GAAA;AAAA,IAAK,GAGb;AAAA,MACL,OAAAX;AAAA,MACA,OAAAI;AAAA,IAAA;AAAA,EAEJ;AACF,CAAC;"}
@@ -1,2 +1,2 @@
1
- "use strict";const l=require("./NeonModal.cjs.js"),e=require("vue"),t=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),r={ref:"modal",class:"neon-modal__container"};function a(o,c,i,d,u,p){const n=e.resolveComponent("neon-button");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([[{"neon-modal--open":o.open},`neon-modal--breakpoint-${o.breakpoint}`],"neon-modal"]),role:"dialog"},[e.createElementVNode("div",r,[e.renderSlot(o.$slots,"default"),o.dismissible?(e.openBlock(),e.createBlock(n,{key:0,circular:!0,transparent:!0,"button-style":"text",class:"neon-modal__close",color:"low-contrast",icon:"times",size:"s",tabindex:"0",onClick:o.close},null,8,["onClick"])):e.createCommentVNode("",!0)],512),e.createElementVNode("div",{class:e.normalizeClass([{"neon-modal__overlay--opaque":o.opaque,"neon-modal__overlay--show-top-nav":o.showTopNav},"neon-modal__overlay"])},null,2)],2)}const s=t(l,[["render",a]]);module.exports=s;
1
+ "use strict";const l=require("./NeonModal.cjs.js"),e=require("vue"),t=require("../../../_virtual/_plugin-vue_export-helper.cjs.js"),r={ref:"modal",class:"neon-modal__container"};function s(o,c,i,d,u,p){const n=e.resolveComponent("neon-button");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass([[{"neon-modal--open":o.open,"neon-modal--no-offset":o.noOffset},`neon-modal--breakpoint-${o.breakpoint}`],"neon-modal"]),role:"dialog"},[e.createElementVNode("div",r,[e.renderSlot(o.$slots,"default"),o.dismissible?(e.openBlock(),e.createBlock(n,{key:0,circular:!0,transparent:!0,"button-style":"text",class:"neon-modal__close",color:"low-contrast",icon:"times",size:"s",tabindex:"0",onClick:o.close},null,8,["onClick"])):e.createCommentVNode("",!0)],512),e.createElementVNode("div",{class:e.normalizeClass([{"neon-modal__overlay--opaque":o.opaque,"neon-modal__overlay--show-top-nav":o.showTopNav},"neon-modal__overlay"])},null,2)],2)}const a=t(l,[["render",s]]);module.exports=a;
2
2
  //# sourceMappingURL=NeonModal.vue.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NeonModal.vue.cjs.js","sources":["../../../../src/components/layout/modal/NeonModal.vue"],"sourcesContent":["<template>\n <div :class=\"[{ 'neon-modal--open': open }, `neon-modal--breakpoint-${breakpoint}`]\" class=\"neon-modal\" role=\"dialog\">\n <div ref=\"modal\" class=\"neon-modal__container\">\n <!-- @slot modal contents -->\n <slot></slot>\n <neon-button\n v-if=\"dismissible\"\n :circular=\"true\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-modal__close\"\n color=\"low-contrast\"\n icon=\"times\"\n size=\"s\"\n tabindex=\"0\"\n @click=\"close\"\n />\n </div>\n <div\n :class=\"{ 'neon-modal__overlay--opaque': opaque, 'neon-modal__overlay--show-top-nav': showTopNav }\"\n class=\"neon-modal__overlay\"\n ></div>\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonModal.ts\"></script>\n"],"names":["_createElementBlock","_normalizeClass","_ctx","_createElementVNode","_hoisted_1","_renderSlot","_createBlock","_component_neon_button"],"mappings":"uIAES,IAAI,QAAQ,MAAM,gHADzBA,EAAAA,mBAqBM,MAAA,CArBA,MAAKC,EAAAA,eAAA,CAAA,CAAA,CAAA,mBAAyBC,EAAA,IAAI,EAAA,0BAA8BA,EAAA,UAAU,IAAW,YAAY,CAAA,EAAC,KAAK,WAC3GC,EAAAA,mBAeM,MAfNC,EAeM,CAbJC,aAAaH,EAAA,OAAA,SAAA,EAELA,EAAA,2BADRI,EAAAA,YAWEC,EAAA,OATC,SAAU,GACV,YAAa,GACd,eAAa,OACb,MAAM,oBACN,MAAM,eACN,KAAK,QACL,KAAK,IACL,SAAS,IACR,QAAOL,EAAA,8DAGZC,EAAAA,mBAGO,MAAA,CAFJ,MAAKF,EAAAA,eAAA,CAAA,CAAA,8BAAmCC,EAAA,OAAM,oCAAuCA,EAAA,UAAU,EAC1F,qBAAqB,CAAA"}
1
+ {"version":3,"file":"NeonModal.vue.cjs.js","sources":["../../../../src/components/layout/modal/NeonModal.vue"],"sourcesContent":["<template>\n <div\n :class=\"[{ 'neon-modal--open': open, 'neon-modal--no-offset': noOffset }, `neon-modal--breakpoint-${breakpoint}`]\"\n class=\"neon-modal\"\n role=\"dialog\"\n >\n <div ref=\"modal\" class=\"neon-modal__container\">\n <!-- @slot modal contents -->\n <slot></slot>\n <neon-button\n v-if=\"dismissible\"\n :circular=\"true\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-modal__close\"\n color=\"low-contrast\"\n icon=\"times\"\n size=\"s\"\n tabindex=\"0\"\n @click=\"close\"\n />\n </div>\n <div\n :class=\"{ 'neon-modal__overlay--opaque': opaque, 'neon-modal__overlay--show-top-nav': showTopNav }\"\n class=\"neon-modal__overlay\"\n ></div>\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonModal.ts\"></script>\n"],"names":["_createElementBlock","_ctx","_createElementVNode","_hoisted_1","_renderSlot","_createBlock","_component_neon_button","_normalizeClass"],"mappings":"uIAMS,IAAI,QAAQ,MAAM,gHALzBA,EAAAA,mBAyBM,MAAA,CAxBH,6CAA8BC,EAAA,KAAI,wBAA2BA,UAAQ,EAAA,0BAA8BA,EAAA,UAAU,IACxG,YAAY,CAAA,EAClB,KAAK,WAELC,EAAAA,mBAeM,MAfNC,EAeM,CAbJC,aAAaH,EAAA,OAAA,SAAA,EAELA,EAAA,2BADRI,EAAAA,YAWEC,EAAA,OATC,SAAU,GACV,YAAa,GACd,eAAa,OACb,MAAM,oBACN,MAAM,eACN,KAAK,QACL,KAAK,IACL,SAAS,IACR,QAAOL,EAAA,8DAGZC,EAAAA,mBAGO,MAAA,CAFJ,MAAKK,EAAAA,eAAA,CAAA,CAAA,8BAAmCN,EAAA,OAAM,oCAAuCA,EAAA,UAAU,EAC1F,qBAAqB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import t from "./NeonModal.es.js";
2
- import { resolveComponent as r, openBlock as e, createElementBlock as s, normalizeClass as n, createElementVNode as l, renderSlot as c, createBlock as d, createCommentVNode as i } from "vue";
3
- import m from "../../../_virtual/_plugin-vue_export-helper.es.js";
2
+ import { resolveComponent as r, openBlock as e, createElementBlock as s, normalizeClass as n, createElementVNode as l, renderSlot as d, createBlock as m, createCommentVNode as i } from "vue";
3
+ import c from "../../../_virtual/_plugin-vue_export-helper.es.js";
4
4
  const p = {
5
5
  ref: "modal",
6
6
  class: "neon-modal__container"
@@ -8,12 +8,12 @@ const p = {
8
8
  function u(o, _, f, v, k, b) {
9
9
  const a = r("neon-button");
10
10
  return e(), s("div", {
11
- class: n([[{ "neon-modal--open": o.open }, `neon-modal--breakpoint-${o.breakpoint}`], "neon-modal"]),
11
+ class: n([[{ "neon-modal--open": o.open, "neon-modal--no-offset": o.noOffset }, `neon-modal--breakpoint-${o.breakpoint}`], "neon-modal"]),
12
12
  role: "dialog"
13
13
  }, [
14
14
  l("div", p, [
15
- c(o.$slots, "default"),
16
- o.dismissible ? (e(), d(a, {
15
+ d(o.$slots, "default"),
16
+ o.dismissible ? (e(), m(a, {
17
17
  key: 0,
18
18
  circular: !0,
19
19
  transparent: !0,
@@ -31,7 +31,7 @@ function u(o, _, f, v, k, b) {
31
31
  }, null, 2)
32
32
  ], 2);
33
33
  }
34
- const h = /* @__PURE__ */ m(t, [["render", u]]);
34
+ const h = /* @__PURE__ */ c(t, [["render", u]]);
35
35
  export {
36
36
  h as default
37
37
  };
@@ -1 +1 @@
1
- {"version":3,"file":"NeonModal.vue.es.js","sources":["../../../../src/components/layout/modal/NeonModal.vue"],"sourcesContent":["<template>\n <div :class=\"[{ 'neon-modal--open': open }, `neon-modal--breakpoint-${breakpoint}`]\" class=\"neon-modal\" role=\"dialog\">\n <div ref=\"modal\" class=\"neon-modal__container\">\n <!-- @slot modal contents -->\n <slot></slot>\n <neon-button\n v-if=\"dismissible\"\n :circular=\"true\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-modal__close\"\n color=\"low-contrast\"\n icon=\"times\"\n size=\"s\"\n tabindex=\"0\"\n @click=\"close\"\n />\n </div>\n <div\n :class=\"{ 'neon-modal__overlay--opaque': opaque, 'neon-modal__overlay--show-top-nav': showTopNav }\"\n class=\"neon-modal__overlay\"\n ></div>\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonModal.ts\"></script>\n"],"names":["_createElementBlock","_normalizeClass","_ctx","_createElementVNode","_hoisted_1","_renderSlot","_createBlock","_component_neon_button"],"mappings":";;;;EAES,KAAI;AAAA,EAAQ,OAAM;;;;cADzBA,EAqBM,OAAA;AAAA,IArBA,OAAKC,EAAA,CAAA,CAAA,EAAA,oBAAyBC,EAAA,KAAI,GAAA,0BAA8BA,EAAA,UAAU,KAAW,YAAY,CAAA;AAAA,IAAC,MAAK;AAAA;IAC3GC,EAeM,OAfNC,GAeM;AAAA,MAbJC,EAAaH,EAAA,QAAA,SAAA;AAAA,MAELA,EAAA,oBADRI,EAWEC,GAAA;AAAA;QATC,UAAU;AAAA,QACV,aAAa;AAAA,QACd,gBAAa;AAAA,QACb,OAAM;AAAA,QACN,OAAM;AAAA,QACN,MAAK;AAAA,QACL,MAAK;AAAA,QACL,UAAS;AAAA,QACR,SAAOL,EAAA;AAAA;;IAGZC,EAGO,OAAA;AAAA,MAFJ,OAAKF,EAAA,CAAA,EAAA,+BAAmCC,EAAA,QAAM,qCAAuCA,EAAA,WAAU,GAC1F,qBAAqB,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"NeonModal.vue.es.js","sources":["../../../../src/components/layout/modal/NeonModal.vue"],"sourcesContent":["<template>\n <div\n :class=\"[{ 'neon-modal--open': open, 'neon-modal--no-offset': noOffset }, `neon-modal--breakpoint-${breakpoint}`]\"\n class=\"neon-modal\"\n role=\"dialog\"\n >\n <div ref=\"modal\" class=\"neon-modal__container\">\n <!-- @slot modal contents -->\n <slot></slot>\n <neon-button\n v-if=\"dismissible\"\n :circular=\"true\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-modal__close\"\n color=\"low-contrast\"\n icon=\"times\"\n size=\"s\"\n tabindex=\"0\"\n @click=\"close\"\n />\n </div>\n <div\n :class=\"{ 'neon-modal__overlay--opaque': opaque, 'neon-modal__overlay--show-top-nav': showTopNav }\"\n class=\"neon-modal__overlay\"\n ></div>\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonModal.ts\"></script>\n"],"names":["_createElementBlock","_ctx","_createElementVNode","_hoisted_1","_renderSlot","_createBlock","_component_neon_button","_normalizeClass"],"mappings":";;;;EAMS,KAAI;AAAA,EAAQ,OAAM;;;;cALzBA,EAyBM,OAAA;AAAA,IAxBH,iCAA8BC,EAAA,MAAI,yBAA2BA,WAAQ,GAAA,0BAA8BA,EAAA,UAAU,KACxG,YAAY,CAAA;AAAA,IAClB,MAAK;AAAA;IAELC,EAeM,OAfNC,GAeM;AAAA,MAbJC,EAAaH,EAAA,QAAA,SAAA;AAAA,MAELA,EAAA,oBADRI,EAWEC,GAAA;AAAA;QATC,UAAU;AAAA,QACV,aAAa;AAAA,QACd,gBAAa;AAAA,QACb,OAAM;AAAA,QACN,OAAM;AAAA,QACN,MAAK;AAAA,QACL,MAAK;AAAA,QACL,UAAS;AAAA,QACR,SAAOL,EAAA;AAAA;;IAGZC,EAGO,OAAA;AAAA,MAFJ,OAAKK,EAAA,CAAA,EAAA,+BAAmCN,EAAA,QAAM,qCAAuCA,EAAA,WAAU,GAC1F,qBAAqB,CAAA;AAAA;;;;"}
@@ -633,6 +633,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
633
633
  type: () => import("../../../neon").NeonResponsive;
634
634
  default: import("../../../neon").NeonResponsive;
635
635
  };
636
+ noOffset: {
637
+ type: BooleanConstructor;
638
+ };
636
639
  }>, {
637
640
  modal: import("vue").Ref<null, null>;
638
641
  close: () => void;
@@ -657,6 +660,9 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
657
660
  type: () => import("../../../neon").NeonResponsive;
658
661
  default: import("../../../neon").NeonResponsive;
659
662
  };
663
+ noOffset: {
664
+ type: BooleanConstructor;
665
+ };
660
666
  }>> & Readonly<{
661
667
  onClose?: ((...args: any[]) => any) | undefined;
662
668
  }>, {
@@ -664,6 +670,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
664
670
  breakpoint: import("../../../neon").NeonResponsive;
665
671
  opaque: boolean;
666
672
  showTopNav: boolean;
673
+ noOffset: boolean;
667
674
  }, {}, {
668
675
  NeonButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
669
676
  href: {
@@ -39,6 +39,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
39
39
  type: () => NeonResponsive;
40
40
  default: NeonResponsive;
41
41
  };
42
+ /**
43
+ * Remove the offset from the top of the modal.
44
+ */
45
+ noOffset: {
46
+ type: BooleanConstructor;
47
+ };
42
48
  }>, {
43
49
  modal: import("vue").Ref<null, null>;
44
50
  close: () => void;
@@ -79,6 +85,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
79
85
  type: () => NeonResponsive;
80
86
  default: NeonResponsive;
81
87
  };
88
+ /**
89
+ * Remove the offset from the top of the modal.
90
+ */
91
+ noOffset: {
92
+ type: BooleanConstructor;
93
+ };
82
94
  }>> & Readonly<{
83
95
  onClose?: ((...args: any[]) => any) | undefined;
84
96
  }>, {
@@ -86,6 +98,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
86
98
  breakpoint: NeonResponsive;
87
99
  opaque: boolean;
88
100
  showTopNav: boolean;
101
+ noOffset: boolean;
89
102
  }, {}, {
90
103
  NeonButton: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
91
104
  href: {
@@ -98,14 +111,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
98
111
  };
99
112
  size: {
100
113
  type: () => import("../../../neon").NeonButtonSize;
101
- default: import("../../../neon").NeonButtonSize; /**
102
- * Emitted when the modal is closed.
103
- * @type {void}
104
- */
105
- }; /**
106
- * Emitted when the modal is closed.
107
- * @type {void}
108
- */
114
+ default: import("../../../neon").NeonButtonSize;
115
+ };
109
116
  color: {
110
117
  type: () => import("../../../neon").NeonFunctionalColor;
111
118
  default: import("../../../neon").NeonFunctionalColor;
@@ -203,14 +210,8 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
203
210
  };
204
211
  size: {
205
212
  type: () => import("../../../neon").NeonButtonSize;
206
- default: import("../../../neon").NeonButtonSize; /**
207
- * Emitted when the modal is closed.
208
- * @type {void}
209
- */
210
- }; /**
211
- * Emitted when the modal is closed.
212
- * @type {void}
213
- */
213
+ default: import("../../../neon").NeonButtonSize;
214
+ };
214
215
  color: {
215
216
  type: () => import("../../../neon").NeonFunctionalColor;
216
217
  default: import("../../../neon").NeonFunctionalColor;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aotearoan/neon",
3
3
  "description": "Neon is a lightweight design library of Vue 3 components with minimal dependencies.",
4
- "version": "25.0.0",
4
+ "version": "25.0.2",
5
5
  "main": "./dist/neon.cjs.js",
6
6
  "module": "./dist/neon.es.js",
7
7
  "types": "./dist/src/neon.d.ts",
@@ -350,7 +350,7 @@
350
350
  }
351
351
 
352
352
  &--outline {
353
- background: transparent;
353
+ background: var(--neon-background-color-outline-button);
354
354
 
355
355
  &.neon-button--disabled {
356
356
  color: var(--neon-color-disabled-text);
@@ -373,13 +373,13 @@
373
373
 
374
374
  &.neon-button--input {
375
375
  border-radius: var(--neon-border-radius-input);
376
- border: var(--neon-border-width-input) var(--neon-border-style) var(--neon-border-color-input);
376
+ border: var(--neon-border-input);
377
377
  background-color: var(--neon-background-color-input);
378
378
  color: var(--neon-color-input);
379
379
 
380
380
  &.neon-button--disabled {
381
381
  color: var(--neon-color-disabled-text);
382
- border: var(--neon-border-width-input) var(--neon-border-style) var(--neon-color-disabled-border);
382
+ border: var(--neon-border-input-disabled);
383
383
  }
384
384
  }
385
385
 
@@ -67,7 +67,7 @@
67
67
  }
68
68
 
69
69
  &.neon-field-group--internal {
70
- border: var(--neon-border-width-input) var(--neon-border-style) var(--neon-border-color-input);
70
+ border: var(--neon-border-input);
71
71
  border-radius: var(--neon-border-radius-input);
72
72
 
73
73
  .neon-input-indicator {
@@ -128,13 +128,12 @@
128
128
  &__text,
129
129
  &__textarea {
130
130
  border-radius: var(--neon-border-radius-input);
131
- border: var(--neon-border-width-input) var(--neon-border-style);
131
+ border: var(--neon-border-input);
132
132
  padding: var(--neon-base-space) calc(2 * var(--neon-base-space));
133
133
  line-height: var(--neon-line-height-input);
134
134
  outline: none;
135
135
  font-family: var(--neon-font-family-body);
136
136
  width: 100%;
137
- border-color: var(--neon-border-color-input);
138
137
  color: var(--neon-color-input);
139
138
  background-color: var(--neon-background-color-input);
140
139
  box-shadow: var(--neon-inset-shadow);
@@ -13,7 +13,6 @@
13
13
  }
14
14
 
15
15
  .neon-icon {
16
- width: var(--neon-font-size-#{$neon-label-font-size});
17
16
  height: var(--neon-font-size-#{$neon-label-font-size});
18
17
  }
19
18
  }
@@ -67,7 +66,7 @@
67
66
  @include neon-label-size('l', 1, 'l');
68
67
  }
69
68
 
70
- text-transform: uppercase;
69
+ text-transform: var(--neon-text-transform-label);
71
70
  border-radius: var(--neon-border-radius-label);
72
71
  letter-spacing: var(--neon-letter-spacing-s);
73
72
  display: flex;
@@ -32,7 +32,7 @@
32
32
  }
33
33
 
34
34
  .neon-modal__container {
35
- margin-top: -30vh;
35
+ margin-top: var(--neon-margin-top-modal-closed);
36
36
  transition: all ease-in-out var(--neon-animation-speed-slow);
37
37
 
38
38
  & > .neon-card {
@@ -43,7 +43,7 @@
43
43
 
44
44
  &.neon-modal--open {
45
45
  .neon-modal__container {
46
- margin-top: -20vh;
46
+ margin-top: var(--neon-margin-top-modal-open);
47
47
  }
48
48
  }
49
49
 
@@ -127,14 +127,14 @@
127
127
  transition: all ease-in-out var(--neon-animation-speed-fast);
128
128
 
129
129
  .neon-card {
130
- margin-top: -30vh;
130
+ margin-top: var(--neon-margin-top-modal-closed);
131
131
  transition: all ease-in-out var(--neon-animation-speed-slow);
132
132
  }
133
133
  }
134
134
 
135
135
  &.neon-modal--open {
136
136
  .neon-card {
137
- margin-top: -20vh;
137
+ margin-top: var(--neon-margin-top-modal-open);
138
138
  }
139
139
  }
140
140
 
@@ -164,5 +164,10 @@
164
164
  @include modal-responsive();
165
165
  }
166
166
  }
167
+
168
+ &--no-offset {
169
+ --neon-margin-top-modal-closed: 0;
170
+ --neon-margin-top-modal-open: 0;
171
+ }
167
172
  }
168
173
  }
@@ -156,7 +156,7 @@
156
156
 
157
157
  .neon-toggle__label {
158
158
  padding: var(--neon-space-16);
159
- border: var(--neon-border-width-input) var(--neon-border-style) var(--neon-border-color-input);
159
+ border: var(--neon-border-input);
160
160
  width: 100%;
161
161
  border-radius: var(--neon-border-radius-input);
162
162
  }
@@ -85,6 +85,7 @@
85
85
  --neon-spacing-horizontal-desktop: calc(var(--neon-gutter-desktop) * var(--neon-spacing-horizontal-multiplier));
86
86
 
87
87
  /* animation */
88
+ --neon-animation-speed-slowest: 0.5s;
88
89
  --neon-animation-speed-slow: 0.3s;
89
90
  --neon-animation-speed-fast: 0.225s;
90
91
  --neon-animation-speed-fastest: 0.05s;
@@ -95,6 +96,10 @@
95
96
  --neon-border-width-separator-before: 1rem;
96
97
  --neon-border-style: solid;
97
98
 
99
+ /* background colors */
100
+ --neon-background-color-light: var(--neon-color-high-contrast-l4);
101
+ --neon-background-color-dark: var(--neon-color-neutral-d5);
102
+
98
103
  /* z-index */
99
104
  --neon-z-index-below: -1;
100
105
  --neon-z-index-default: 0;
@@ -150,7 +155,7 @@
150
155
  --neon-h1-weight: var(--neon-font-weight-semi-bold);
151
156
  --neon-h0-weight: var(--neon-font-weight-semi-bold);
152
157
 
153
- --neon-font-weight-em: var(--neon-font-weight-extra-light);
158
+ --neon-font-weight-em: inherit;
154
159
  --neon-font-weight-strong: var(--neon-font-weight-medium);
155
160
 
156
161
  --neon-letter-spacing-headings: 0;
@@ -299,6 +304,10 @@
299
304
  --neon-opacity-mobile-menu-focus: 0.125;
300
305
  --neon-height-mobile-menu: 66rem;
301
306
 
307
+ /* modal */
308
+ --neon-margin-top-modal-closed: -30vh;
309
+ --neon-margin-top-modal-open: -20vh;
310
+
302
311
  /* dropdown */
303
312
  --neon-max-height-dropdown: 280rem;
304
313
 
@@ -420,6 +429,7 @@
420
429
 
421
430
  /* label */
422
431
  --neon-border-radius-label: 2rem;
432
+ --neon-text-transform-label: none;
423
433
 
424
434
  /* badge */
425
435
  --neon-background-gradient-angle-badge: 45deg;
@@ -473,7 +483,7 @@
473
483
  &.neon-mode--dark {
474
484
  --neon-background-color-card: var(--neon-color-neutral-d4);
475
485
  --neon-border-card: var(--neon-border);
476
- --neon-background-color: var(--neon-color-neutral-d5);
486
+ --neon-background-color: var(--neon-background-color-dark);
477
487
 
478
488
  --neon-rgb-text-primary: var(--neon-rgb-text-primary-dark);
479
489
  --neon-color-text-primary: var(--neon-color-text-primary-dark);
@@ -588,6 +598,8 @@
588
598
  --neon-background-solid-button-dark-error: var(--neon-color-error-l1);
589
599
 
590
600
  /* outline buttons */
601
+ --neon-background-color-outline-button: transparent;
602
+
591
603
  --neon-border-color-outline-button-inactive-high-contrast: var(--neon-border-color);
592
604
  --neon-background-outline-button-hover-high-contrast: var(--neon-color-high-contrast-l2);
593
605
  --neon-background-outline-button-active-high-contrast: var(--neon-color-high-contrast-l1);
@@ -687,6 +699,8 @@
687
699
  /* input */
688
700
  --neon-color-input: var(--neon-color-text-secondary);
689
701
  --neon-border-color-input: var(--neon-border-color);
702
+ --neon-border-input: var(--neon-border-width-input) var(--neon-border-style) var(--neon-border-color-input);
703
+ --neon-border-input-disabled: var(--neon-border-width-input) var(--neon-border-style) var(--neon-color-disabled-border);
690
704
  --neon-background-color-input: rgba(var(--neon-rgb-neutral-d5), 0.5);
691
705
  --neon-rgb-placeholder: var(--neon-rgb-neutral-d1);
692
706
  --neon-color-placeholder: var(--neon-color-neutral-d1);
@@ -829,7 +843,7 @@
829
843
  &.neon-mode--light {
830
844
  --neon-background-color-card: var(--neon-color-high-contrast-l5);
831
845
  --neon-border-card: var(--neon-border);
832
- --neon-background-color: var(--neon-color-high-contrast-l4);
846
+ --neon-background-color: var(--neon-background-color-light);
833
847
 
834
848
  --neon-rgb-text-primary: var(--neon-rgb-text-primary-light);
835
849
  --neon-color-text-primary: var(--neon-color-text-primary-light);
@@ -944,6 +958,8 @@
944
958
  --neon-background-solid-button-dark-error: var(--neon-color-error-d2);
945
959
 
946
960
  /* outline buttons */
961
+ --neon-background-color-outline-button: transparent;
962
+
947
963
  --neon-border-color-outline-button-inactive-high-contrast: var(--neon-border-color);
948
964
  --neon-background-outline-button-hover-high-contrast: var(--neon-color-high-contrast-d1);
949
965
  --neon-background-outline-button-active-high-contrast: var(--neon-color-high-contrast-d2);
@@ -1043,6 +1059,8 @@
1043
1059
  /* input */
1044
1060
  --neon-color-input: var(--neon-color-text-secondary);
1045
1061
  --neon-border-color-input: var(--neon-border-color);
1062
+ --neon-border-input: var(--neon-border-width-input) var(--neon-border-style) var(--neon-border-color-input);
1063
+ --neon-border-input-disabled: var(--neon-border-width-input) var(--neon-border-style) var(--neon-color-disabled-border);
1046
1064
  --neon-background-color-input: var(--neon-color-high-contrast-l5);
1047
1065
  --neon-rgb-placeholder: var(--neon-rgb-neutral-l1);
1048
1066
  --neon-color-placeholder: var(--neon-color-neutral-l1);