sumba 2.25.1 → 2.26.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/extend/bajo/hook.js +430 -0
- package/extend/dobo/model.js +215 -0
- package/extend/dobo/model.json +214 -0
- package/index.js +5 -3
- package/lib/util.js +8 -8
- package/package.json +1 -1
- package/wiki/CHANGES.md +10 -0
- package/extend/bajo/hook/bajo.extend@after-read-config.js +0 -13
- package/extend/bajo/hook/dobo.sumba-attrib-guard$dobo.sumba-x-attrib-guard@after-transaction.js +0 -6
- package/extend/bajo/hook/dobo.sumba-contact-form@after-create-record.js +0 -17
- package/extend/bajo/hook/dobo.sumba-contact-form@before-create-record.js +0 -16
- package/extend/bajo/hook/dobo.sumba-model-guard$dobo.sumba-x-model-guard@after-transaction.js +0 -6
- package/extend/bajo/hook/dobo.sumba-route-guard$dobo.sumba-x-route-guard@after-transaction.js +0 -6
- package/extend/bajo/hook/dobo.sumba-site@after-create-record.js +0 -8
- package/extend/bajo/hook/dobo.sumba-site@after-remove-record.js +0 -9
- package/extend/bajo/hook/dobo.sumba-site@after-update-record.js +0 -14
- package/extend/bajo/hook/dobo.sumba-team$dobo.sumba-site@after-transaction.js +0 -8
- package/extend/bajo/hook/dobo.sumba-user@after-create-record.js +0 -15
- package/extend/bajo/hook/dobo.sumba-user@after-record-validation.js +0 -8
- package/extend/bajo/hook/dobo.sumba-user@after-remove-record.js +0 -7
- package/extend/bajo/hook/dobo.sumba-user@after-update-record.js +0 -44
- package/extend/bajo/hook/dobo.sumba-user@before-create-record.js +0 -7
- package/extend/bajo/hook/dobo.sumba-user@before-record-validation.js +0 -8
- package/extend/bajo/hook/dobo.sumba-user@before-update-record.js +0 -9
- package/extend/bajo/hook/dobo@before-count-record.js +0 -8
- package/extend/bajo/hook/dobo@before-driver-create-record.js +0 -17
- package/extend/bajo/hook/dobo@before-driver-find-all-record.js +0 -8
- package/extend/bajo/hook/dobo@before-driver-find-record.js +0 -133
- package/extend/bajo/hook/dobo@before-driver-get-record.js +0 -23
- package/extend/bajo/hook/dobo@before-driver-remove-record.js +0 -10
- package/extend/bajo/hook/dobo@before-driver-update-record.js +0 -10
- package/extend/bajo/hook/waibu-mpa.sumba@after-build-locals.js +0 -19
- package/extend/bajo/hook/waibu-mpa@pre-parsing.js +0 -15
- package/extend/bajo/hook/waibu-rest-api@pre-parsing.js +0 -13
- package/extend/bajo/hook/waibu-static@pre-parsing.js +0 -13
- package/extend/bajo/hook/waibu@after-app-boot.js +0 -7
- package/extend/bajo/hook/waibu@after-create-context.js +0 -5
- package/extend/bajo/hook/waibu@pre-parsing.js +0 -9
- package/extend/dobo/model/attrib-guard.js +0 -32
- package/extend/dobo/model/contact-form-cat.json +0 -3
- package/extend/dobo/model/contact-form.json +0 -16
- package/extend/dobo/model/download.json +0 -19
- package/extend/dobo/model/model-guard.js +0 -48
- package/extend/dobo/model/route-guard.js +0 -48
- package/extend/dobo/model/site-setting.json +0 -16
- package/extend/dobo/model/site.json +0 -45
- package/extend/dobo/model/team-setting.json +0 -17
- package/extend/dobo/model/team-user.json +0 -16
- package/extend/dobo/model/team.json +0 -23
- package/extend/dobo/model/ticket-cat.json +0 -3
- package/extend/dobo/model/ticket-detail.json +0 -7
- package/extend/dobo/model/ticket.json +0 -31
- package/extend/dobo/model/user-setting.json +0 -17
- package/extend/dobo/model/user.js +0 -84
- package/extend/dobo/model/x-attrib-guard.js +0 -14
- package/extend/dobo/model/x-model-guard.js +0 -13
- package/extend/dobo/model/x-route-guard.js +0 -13
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
async function user () {
|
|
2
|
-
return {
|
|
3
|
-
buildLevel: 2,
|
|
4
|
-
properties: [{
|
|
5
|
-
name: 'username',
|
|
6
|
-
type: 'string',
|
|
7
|
-
minLength: 5,
|
|
8
|
-
maxLength: 50,
|
|
9
|
-
rules: ['alphanum']
|
|
10
|
-
}, {
|
|
11
|
-
name: 'password',
|
|
12
|
-
type: 'string',
|
|
13
|
-
minLength: 8,
|
|
14
|
-
maxLength: 100
|
|
15
|
-
}, {
|
|
16
|
-
name: 'token',
|
|
17
|
-
type: 'string',
|
|
18
|
-
maxLength: 100,
|
|
19
|
-
index: true
|
|
20
|
-
}, {
|
|
21
|
-
name: 'salt',
|
|
22
|
-
type: 'string',
|
|
23
|
-
maxLength: 100,
|
|
24
|
-
required: true
|
|
25
|
-
}, {
|
|
26
|
-
name: 'apiKey',
|
|
27
|
-
type: 'string',
|
|
28
|
-
maxLength: 100,
|
|
29
|
-
virtual: true,
|
|
30
|
-
getValue: async function (val, rec) {
|
|
31
|
-
if (!rec.salt) return
|
|
32
|
-
return await this.plugin.hash(rec.salt)
|
|
33
|
-
}
|
|
34
|
-
}, {
|
|
35
|
-
name: 'provider',
|
|
36
|
-
type: 'string',
|
|
37
|
-
maxLength: 50,
|
|
38
|
-
index: true,
|
|
39
|
-
default: 'local'
|
|
40
|
-
}, {
|
|
41
|
-
name: 'email',
|
|
42
|
-
type: 'string',
|
|
43
|
-
maxLength: 100,
|
|
44
|
-
required: true,
|
|
45
|
-
rules: ['email']
|
|
46
|
-
}, {
|
|
47
|
-
name: 'firstName',
|
|
48
|
-
type: 'string',
|
|
49
|
-
maxLength: 50,
|
|
50
|
-
required: true,
|
|
51
|
-
index: true
|
|
52
|
-
}, {
|
|
53
|
-
name: 'lastName',
|
|
54
|
-
type: 'string',
|
|
55
|
-
maxLength: 50,
|
|
56
|
-
required: true,
|
|
57
|
-
index: true
|
|
58
|
-
}],
|
|
59
|
-
rules: [{ rule: 'trim', fields: ['username', 'firstName', 'lastName'] }],
|
|
60
|
-
indexes: [{
|
|
61
|
-
fields: ['username', 'siteId'],
|
|
62
|
-
type: 'unique'
|
|
63
|
-
}, {
|
|
64
|
-
fields: ['email', 'siteId'],
|
|
65
|
-
type: 'unique'
|
|
66
|
-
}],
|
|
67
|
-
hidden: ['password'],
|
|
68
|
-
features: [
|
|
69
|
-
'sumba:address',
|
|
70
|
-
'sumba:social',
|
|
71
|
-
{
|
|
72
|
-
name: 'sumba:status',
|
|
73
|
-
default: 'UNVERIFIED',
|
|
74
|
-
values: ['UNVERIFIED', 'ACTIVE', 'INACTIVE']
|
|
75
|
-
},
|
|
76
|
-
'sumba:siteId',
|
|
77
|
-
'dobo:createdAt',
|
|
78
|
-
'dobo:updatedAt',
|
|
79
|
-
'dobo:immutable'
|
|
80
|
-
]
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
export default user
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { properties, features } from './attrib-guard.js'
|
|
2
|
-
import { options, buildEnd } from './model-guard.js'
|
|
3
|
-
|
|
4
|
-
async function routeGuard () {
|
|
5
|
-
const { isString } = this.app.lib._
|
|
6
|
-
return {
|
|
7
|
-
properties: properties.filter(prop => !isString(prop) || (isString(prop) && !prop.startsWith('teamIds'))),
|
|
8
|
-
features: features.filter(feat => !isString(feat) || (isString(feat) && !['sumba:siteId', 'dobo:updatedAt'].includes(feat))).concat('sumba:siteIds', 'dobo:updatedAt'),
|
|
9
|
-
options,
|
|
10
|
-
buildEnd
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
export default routeGuard
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { buildEnd, properties, features, options } from './model-guard.js'
|
|
2
|
-
|
|
3
|
-
async function xModelGuard () {
|
|
4
|
-
const { isString } = this.app.lib._
|
|
5
|
-
return {
|
|
6
|
-
properties: properties.filter(prop => !isString(prop) || (isString(prop) && !prop.startsWith('teamIds'))),
|
|
7
|
-
features: features.filter(feat => !isString(feat) || (isString(feat) && !['sumba:siteId', 'dobo:updatedAt'].includes(feat))).concat('sumba:siteIds', 'dobo:updatedAt'),
|
|
8
|
-
options,
|
|
9
|
-
buildEnd
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default xModelGuard
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { properties, features } from './route-guard.js'
|
|
2
|
-
import { options } from './model-guard.js'
|
|
3
|
-
|
|
4
|
-
async function xRouteGuard () {
|
|
5
|
-
const { isString } = this.app.lib._
|
|
6
|
-
return {
|
|
7
|
-
properties: properties.filter(prop => !isString(prop) || (isString(prop) && !prop.startsWith('teamIds'))),
|
|
8
|
-
features: features.filter(feat => !isString(feat) || (isString(feat) && !['sumba:siteId', 'dobo:updatedAt'].includes(feat))).concat('sumba:siteIds', 'dobo:updatedAt'),
|
|
9
|
-
options
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default xRouteGuard
|