-
Notifications
You must be signed in to change notification settings - Fork 1
/
storyblok-base.graphql
226 lines (209 loc) · 3.96 KB
/
storyblok-base.graphql
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
scalar Date
scalar DateTime
scalar CtTypeId
enum BlockType {
nestable
contentType
universal
}
enum BlockIcon {
block_at
block_1_2block
block_add
block_arrow_pointer
block_block
block_buildin
block_center_m
block_comment
block_doc
block_dollar_sign
block_email
block_image
block_keyboard
block_locked
block_map_pin
block_mobile
block_monitor
block_paycard
block_resize_fc
block_cart
block_share
block_shield_2
block_shield
block_sticker
block_suitcase
block_table_2
block_table
block_tag
block_text_c
block_text_img_c
block_text_img_l
block_text_img_r_l
block_text_img_r
block_text_img_t_l
block_text_img_t_r
block_text_l
block_text_r
block_unlocked
block_wallet
}
enum StoryblokTextFormat {
markdown
textarea
text
richtext
}
enum AssetFileTypes {
images
videos
audios
texts
}
enum LinkFeatures {
assets
newTab
anchor
email
}
enum TextToolbarItem {
"Richtext only"
anchor
"Richtext only"
blok
bold
code
"Richtext only"
color
"Richtext only"
copy
"Richtext only"
cut
"Richtext only"
emoji
h1
h2
h3
h4
h5
h6
"Richtext only"
highlight
"Markdown only"
help
hrule
image
inlinecode
italic
link
list
olist
paragraph
"Richtext only"
paste_action
"Richtext only"
paste
quote
"Richtext only"
redo
"Richtext only"
strike
"Richtext only"
subscript
"Richtext only"
superscript
"Markdown only"
toggle_richtext
"Richtext only"
underline
"Richtext only"
undo
}
enum StoryblokLinkType {
external
asset
internal
email
}
enum CtType {
product
category
}
# Object directives
directive @storyblok(
"Use the name of the component group. E.g. 'Page Blocks'."
componentGroup: String
"Whether the component will be a content type or a nestable blok. Defaults to 'nestable'."
type: BlockType
"A url to an example image."
image: String
"Either a field name or a preview template. E.g. 'title' or '{{title}} - {{description}}'. For more info see https://www.storyblok.com/docs/schema-configuration#preview-template"
preview: String
"The icon used for the component in the sidebar. E.g. 'block_text_r'. For more info see https://www.storyblok.com/docs/schema-configuration#icon"
icon: BlockIcon
"A css color used as background for the block icon. E.g. '#000000' or 'red'"
color: String
displayName: String
) on OBJECT
# Field directives
directive @storyblokField(
translatable: Boolean
displayName: String
excludeFromExport: Boolean
default: String
"The display name for the field tab."
tab: String
"The display name for the field section (i.e. group)."
section: String
"Used for number fields and blok lists."
min: Int
"Used for number fields and blok lists."
max: Int
"Used to enhance string fields. E.g. 'textarea', 'markdown', or 'richtext'."
format: StoryblokTextFormat
"For string fields."
regex: String
"For StoryblokAsset fields, including lists of StoryblokAssets."
filetypes: [AssetFileTypes!]
"For number inputs"
steps: Int
toolbar: [TextToolbarItem!]
"For number inputs"
decimals: Int
"A folder template string used for the a blok filter. E.g. '{0}/pages'."
folder: String
"For StoryblokLinks. 'linkFeatures: [newTab]' can also be used for 'format: richtext'"
linkFeatures: [LinkFeatures!]
"A list of story names. E.g. ['ContentPage', 'Article']"
blokTypes: [String!]
"The slug of the datasource"
datasource: String
ctType: CtType
) on FIELD_DEFINITION
type StoryblokAsset {
alt: String
filename: String!
name: String
isExternalUrl: Boolean
title: String
}
type StoryblokLink {
type: StoryblokLinkType!
url: String!
hash: String
pathname: String
newTab: Boolean
}
type StoryblokSeo {
title: String
description: String
ogTitle: String
ogDescription: String
ogImage: String
twitterTitle: String
twitterDescription: String
twitterImage: String
}
type StoryblokTable {
thead: [String!]
tbody: [[String!]!]
}