Variable: FRAMEWORK_TEXT_PATTERN
constFRAMEWORK_TEXT_PATTERN:string
Defined in: packages/contracts/src/primitives.ts:183
The rules on the characters of a framework's published text: DISPLAY_NAME_PATTERN
and, in addition, no Default_Ignorable_Code_Point anywhere. That property covers the
soft hyphen (U+00AD), the Arabic letter mark (U+061C), the zero-width characters
(U+200B to U+200F, the joiner and non-joiner among them), U+2060 to U+206F, the
variation selectors and U+FEFF.
Why stricter than a display name: a framework is a document people quote, compare and
sign under, and an invisible character is how two sentences that read the same differ
(a requirement keyword split by a joiner reads as MUST and is not one). A display
name keeps the joiner and non-joiner because Persian names need the non-joiner and
emoji need the joiner; framework prose needs neither: Arabic joins its letters without
them, and placing a Latin term in Arabic text is the renderer's work (an isolate in the
page), not a mark stored in the sentence. The residual is a framework written in a
language whose orthography needs the non-joiner (Persian, Urdu): it would be refused,
and widening this for it is a decision to make when one is authored.