-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathcreate_project_wizard.page.yml
More file actions
244 lines (230 loc) · 6.4 KB
/
create_project_wizard.page.yml
File metadata and controls
244 lines (230 loc) · 6.4 KB
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
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# Project Creation Wizard
# A multi-step wizard for creating new projects
name: create_project_wizard
label: Create New Project
description: Step-by-step wizard for creating a project
icon: plus-circle
layout: wizard
# Only admins and managers can create projects
permissions:
view: ['admin', 'manager']
# Wizard steps
components:
# Step 1: Basic Information
- id: step_basic
type: container
label: Basic Information
description: Enter the project name and description
config:
step: 1
icon: info
components:
- id: basic_form
type: form
config:
layout: vertical
fields:
- name: name
label: Project Name
type: text
required: true
placeholder: My Awesome Project
help_text: Choose a descriptive name for your project
- name: description
label: Project Description
type: textarea
rows: 5
placeholder: Describe what this project is about
- name: category
label: Category
type: select
options:
- label: Development
value: development
- label: Marketing
value: marketing
- label: Research
value: research
- label: Operations
value: operations
actions:
on_validate:
type: custom
handler: validateBasicInfo
# Step 2: Team & Resources
- id: step_team
type: container
label: Team & Resources
description: Assign team members and set budget
config:
step: 2
icon: users
components:
- id: team_form
type: form
config:
layout: vertical
fields:
- name: owner
label: Project Manager
type: lookup
reference_to: users
required: true
help_text: Select the person responsible for this project
- name: team_members
label: Team Members
type: lookup
reference_to: users
multiple: true
help_text: Add team members who will work on this project
- name: budget
label: Budget
type: currency
currency: USD
help_text: Estimated budget for this project
- name: department
label: Department
type: select
options:
- label: Engineering
value: engineering
- label: Product
value: product
- label: Sales
value: sales
- label: Marketing
value: marketing
# Step 3: Timeline
- id: step_timeline
type: container
label: Timeline
description: Set project dates and milestones
config:
step: 3
icon: calendar
components:
- id: timeline_form
type: form
config:
layout: vertical
fields:
- name: start_date
label: Start Date
type: date
required: true
defaultValue: '{{today}}'
- name: end_date
label: Target End Date
type: date
required: true
help_text: Expected completion date
- name: priority
label: Priority
type: select
required: true
options:
- label: Low
value: low
- label: Medium
value: medium
- label: High
value: high
- label: Critical
value: critical
defaultValue: medium
- name: milestones
label: Key Milestones
type: grid
help_text: Define important project milestones
config:
columns:
- name: name
label: Milestone
type: text
- name: date
label: Target Date
type: date
- name: description
label: Description
type: text
allow_add: true
allow_delete: true
# Step 4: Review & Create
- id: step_review
type: container
label: Review & Create
description: Review your project details before creating
config:
step: 4
icon: check-square
components:
- id: review_summary
type: detail_view
label: Project Summary
config:
mode: readonly
sections:
- label: Basic Information
fields: ['name', 'description', 'category']
- label: Team
fields: ['owner', 'team_members', 'budget', 'department']
- label: Timeline
fields: ['start_date', 'end_date', 'priority']
- id: terms_checkbox
type: container
components:
- id: accept_terms
type: boolean
label: I confirm that all information is correct
required: true
# Wizard navigation actions
actions:
next_step:
type: custom
handler: validateAndProceed
previous_step:
type: custom
handler: goToPreviousStep
submit_wizard:
type: run_action
object: projects
action: create
success_message: Project created successfully!
on_error: show_modal
save_draft:
type: custom
handler: saveDraft
success_message: Draft saved
# Page state to track wizard progress
state:
initial:
current_step: 1
completed_steps: []
form_data:
name: ''
description: ''
category: ''
owner: null
team_members: []
budget: 0
department: ''
start_date: null
end_date: null
priority: medium
milestones: []
persist: true
storage_key: project_wizard_draft
# Page styling
style:
max_width: 800px
margin: 0 auto
padding: 40px 20px
# AI context
ai_context:
intent: Guide users through project creation with validation
persona: Project managers and team leads
tasks:
- Create new projects step by step
- Validate input at each stage
- Review before submission
- Save drafts for later