codigo0/node_modules/highlight.js/lib/languages/properties.js
planetazuzu 5d7a6500fe refactor: Fase 1 - Clean Architecture, refactorización modular y eliminación de duplicidades
-  Ticket 1.1: Estructura Clean Architecture en backend
-  Ticket 1.2: Schemas Zod compartidos
-  Ticket 1.3: Refactorización drugs.ts (1362 → 8 archivos modulares)
-  Ticket 1.4: Refactorización procedures.ts (3583 → 6 archivos modulares)
-  Ticket 1.5: Eliminación de duplicidades (~50 líneas)

Cambios principales:
- Creada estructura Clean Architecture en backend/src/
- Schemas Zod compartidos en backend/src/shared/schemas/
- Refactorización modular de drugs y procedures
- Utilidades genéricas en src/utils/ (filter, validation)
- Eliminados scripts obsoletos y documentación antigua
- Corregidos errores: QueryClient, import test-error-handling
- Build verificado y funcionando correctamente
2026-01-25 21:09:47 +01:00

69 lines
1.6 KiB
JavaScript

/*
Language: .properties
Contributors: Valentin Aitken <valentin@nalisbg.com>, Egor Rogov <e.rogov@postgrespro.ru>
Website: https://en.wikipedia.org/wiki/.properties
Category: config
*/
/** @type LanguageFn */
function properties(hljs) {
// whitespaces: space, tab, formfeed
const WS0 = '[ \\t\\f]*';
const WS1 = '[ \\t\\f]+';
// delimiter
const EQUAL_DELIM = WS0 + '[:=]' + WS0;
const WS_DELIM = WS1;
const DELIM = '(' + EQUAL_DELIM + '|' + WS_DELIM + ')';
const KEY = '([^\\\\:= \\t\\f\\n]|\\\\.)+';
const DELIM_AND_VALUE = {
// skip DELIM
end: DELIM,
relevance: 0,
starts: {
// value: everything until end of line (again, taking into account backslashes)
className: 'string',
end: /$/,
relevance: 0,
contains: [
{ begin: '\\\\\\\\' },
{ begin: '\\\\\\n' }
]
}
};
return {
name: '.properties',
disableAutodetect: true,
case_insensitive: true,
illegal: /\S/,
contains: [
hljs.COMMENT('^\\s*[!#]', '$'),
// key: everything until whitespace or = or : (taking into account backslashes)
// case of a key-value pair
{
returnBegin: true,
variants: [
{ begin: KEY + EQUAL_DELIM },
{ begin: KEY + WS_DELIM }
],
contains: [
{
className: 'attr',
begin: KEY,
endsParent: true
}
],
starts: DELIM_AND_VALUE
},
// case of an empty key
{
className: 'attr',
begin: KEY + WS0 + '$'
}
]
};
}
module.exports = properties;