Skip to content

Commit 41ce687

Browse files
committed
fix: resolve remaining CI failures for signature text policy
1 parent 9d4a593 commit 41ce687

4 files changed

Lines changed: 27 additions & 14 deletions

File tree

lib/Service/Policy/Provider/SignatureText/SignatureTextPolicy.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,4 +107,4 @@ private function normalizePolicyKey(string|\BackedEnum $policyKey): string {
107107

108108
return $policyKey;
109109
}
110-
}
110+
}

src/views/Settings/PolicyWorkbench/settings/signature-text/SignatureTextRuleEditor.vue

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,18 +88,18 @@ import type { EffectivePolicyValue } from '../../../../../types/index'
8888
import { normalizeSignatureTextPolicyConfig, serializeSignatureTextPolicyConfig } from './model'
8989
9090
interface Props {
91-
value: EffectivePolicyValue
91+
modelValue: EffectivePolicyValue
9292
}
9393
9494
interface Emits {
95-
(e: 'update:value', value: EffectivePolicyValue): void
95+
(e: 'update:modelValue', value: EffectivePolicyValue): void
9696
}
9797
9898
const props = defineProps<Props>()
9999
const emit = defineEmits<Emits>()
100100
101101
const id = Math.random().toString(36).substring(7)
102-
const normalized = normalizeSignatureTextPolicyConfig(props.value)
102+
const normalized = normalizeSignatureTextPolicyConfig(props.modelValue)
103103
104104
const config = reactive({
105105
template: normalized.template,
@@ -112,7 +112,7 @@ const config = reactive({
112112
113113
// Watch all fields and emit serialized value
114114
const emitUpdate = () => {
115-
emit('update:value', serializeSignatureTextPolicyConfig(config))
115+
emit('update:modelValue', serializeSignatureTextPolicyConfig(config))
116116
}
117117
118118
watch(() => config.template, emitUpdate)

src/views/Settings/PolicyWorkbench/settings/signature-text/useSignatureTextPolicy.ts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ export function useSignatureTextPolicy(): { values: ComputedRef<SignatureTextVal
3434
const values = computed<SignatureTextValues>(() => {
3535
const signatureTextPolicy = policiesStore.policies.signature_text
3636

37-
// Always use policy value; fallback to defaults if not defined
37+
// Use policy value when present; otherwise fallback to existing initial state values.
3838
let policyValue = SIGNATURE_TEXT_DEFAULTS
3939

4040
if (signatureTextPolicy?.effectiveValue) {
@@ -50,6 +50,15 @@ export function useSignatureTextPolicy(): { values: ComputedRef<SignatureTextVal
5050
signatureHeight: Number(decoded.signature_height ?? SIGNATURE_TEXT_DEFAULTS.signatureHeight),
5151
renderMode: String(decoded.render_mode ?? SIGNATURE_TEXT_DEFAULTS.renderMode),
5252
}
53+
} else {
54+
policyValue = {
55+
template: loadState<string>('libresign', 'signature_text_template', SIGNATURE_TEXT_DEFAULTS.template),
56+
templateFontSize: Number(loadState<number>('libresign', 'template_font_size', SIGNATURE_TEXT_DEFAULTS.templateFontSize)),
57+
signatureFontSize: Number(loadState<number>('libresign', 'signature_font_size', SIGNATURE_TEXT_DEFAULTS.signatureFontSize)),
58+
signatureWidth: Number(loadState<number>('libresign', 'signature_width', SIGNATURE_TEXT_DEFAULTS.signatureWidth)),
59+
signatureHeight: Number(loadState<number>('libresign', 'signature_height', SIGNATURE_TEXT_DEFAULTS.signatureHeight)),
60+
renderMode: String(loadState<string>('libresign', 'signature_render_mode', 'GRAPHIC_AND_DESCRIPTION')),
61+
}
5362
}
5463

5564
// Only non-policy values come from loadState (error/parsing results)

src/views/Settings/SignatureStamp.vue

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -364,14 +364,14 @@ defineOptions({
364364
365365
type RenderMode = 'DESCRIPTION_ONLY' | 'GRAPHIC_AND_DESCRIPTION' | 'SIGNAME_AND_DESCRIPTION' | 'GRAPHIC_ONLY'
366366
367-
// Policy defaults (synchronized with backend SignatureTextPolicyValue::DEFAULTS)
367+
// Defaults used by UI reset actions.
368368
const SIGNATURE_TEXT_DEFAULTS = {
369-
template: '',
370-
templateFontSize: 9.0,
371-
signatureFontSize: 9.0,
372-
signatureWidth: 90.0,
373-
signatureHeight: 60.0,
374-
renderMode: 'default',
369+
template: loadState<string>('libresign', 'default_signature_text_template', ''),
370+
templateFontSize: Number(loadState<number>('libresign', 'default_template_font_size', 9.0)),
371+
signatureFontSize: Number(loadState<number>('libresign', 'default_signature_font_size', 9.0)),
372+
signatureWidth: Number(loadState<number>('libresign', 'default_signature_width', 90.0)),
373+
signatureHeight: Number(loadState<number>('libresign', 'default_signature_height', 60.0)),
374+
renderMode: loadState<string>('libresign', 'signature_render_mode', 'GRAPHIC_AND_DESCRIPTION'),
375375
}
376376
377377
const isDarkTheme = useIsDarkTheme()
@@ -398,7 +398,11 @@ const templateFontSize = ref<number>(signatureTextValues.value.templateFontSize)
398398
const isSignatureImageLoaded = ref(false)
399399
const templateSaved = ref(true)
400400
const zoomLevel = ref<number>(loadState<number>('libresign', 'signature_preview_zoom_level', 100))
401-
const renderMode = ref<RenderMode>(signatureTextValues.value.renderMode as RenderMode)
401+
const renderMode = ref<RenderMode>(
402+
(signatureTextValues.value.renderMode === 'default'
403+
? SIGNATURE_TEXT_DEFAULTS.renderMode
404+
: signatureTextValues.value.renderMode) as RenderMode,
405+
)
402406
const dislaySuccessTemplate = ref(false)
403407
const errorMessageTemplate = ref<string[]>(signatureTextValues.value.templateError ? [signatureTextValues.value.templateError] : [])
404408
const parsed = ref(signatureTextValues.value.parsed)

0 commit comments

Comments
 (0)