1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# fc-model -- the shared text model behind rich text, documents and grid cells.
#
# This crate exists because three components need the same thing: a text buffer
# that can report byte and character offsets, split into lines, and survive
# editing. Duplicating that per component would mean three subtly different
# implementations of UTF-8 boundary handling -- the classic source of
# corruption bugs in editors.
#
# It is deliberately *not* a document model. No tree, no nodes, no formatting.
# That belongs to fc-rich-text, which owns it. Keeping fc-model ignorant of
# structure is what keeps it small enough for all three consumers to link.
[]
= "fc-model"
= "Shared text buffer primitives for future-css components"
= true
= true
= true
= true
= true
= true
[]
= ["cdylib", "rlib"]
[]
= { = "../fc-core", = "0.1.0", = false }
= { = true, = ["std"], = true }
= { = true }
[]
# `bindgen` exports the JavaScript boundary and is on by default, so the WASM
# build is unchanged. A pure Rust consumer (the Dioxus library) turns defaults
# off and gets the same model with no wasm-bindgen in its dependency tree.
# Siblings are pulled with defaults off and `bindgen` forwarded by name, so
# turning it off here turns it off all the way down rather than re-enabling it
# through a sibling's default.
= ["bindgen"]
= ["dep:wasm-bindgen", "fc-core/bindgen"]