'f'
mh-two-thousand-and-two
2024-04-12 26f2711ef9461961fb953e2b497bd314ef95e345
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
function relative (from, to) {
  if (to.indexOf('/') === 0) {
    from = ''
  }
  const fromArr = from.split('/')
  const toArr = to.split('/')
  fromArr.pop()
  while (toArr.length) {
    const part = toArr.shift()
    if (part !== '' && part !== '.') {
      if (part !== '..') {
        fromArr.push(part)
      } else {
        fromArr.pop()
      }
    }
  }
  return fromArr.join('/')
}
 
export function parseRelations (relations, vueComponentOptions) {
  if (!relations) {
    return
  }
  Object.keys(relations).forEach(name => {
    const relation = relations[name]
    relation.name = name
    relation.target = relation.target ? String(relation.target) : relative(global.__wxRoute, name)
  })
  vueComponentOptions.mpOptions.relations = relations
}