alchemy-widget 0.1.5 → 0.2.0

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.
Files changed (36) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/assets/stylesheets/alchemy_widgets.scss +426 -0
  3. package/bootstrap.js +6 -0
  4. package/controller/alchemy_widgets_controller.js +85 -9
  5. package/element/00-widget_base_element.js +154 -6
  6. package/element/05-widget_element.js +112 -19
  7. package/element/10-container_elements.js +15 -15
  8. package/element/11-alchemy_widgets_list_element.js +2 -2
  9. package/element/20-add_area_element.js +23 -23
  10. package/element/table_of_contents_element.js +104 -8
  11. package/element/widget_actionbar_element.js +92 -0
  12. package/element/widget_context_element.js +39 -23
  13. package/element/widget_toolbar_element.js +300 -38
  14. package/helper/widget_action.js +19 -18
  15. package/helper/widgets/00-widget.js +160 -37
  16. package/helper/widgets/01-container.js +12 -7
  17. package/helper/widgets/05-list.js +1 -1
  18. package/helper/widgets/alchemy_field_widget.js +112 -0
  19. package/helper/widgets/alchemy_form_widget.js +183 -0
  20. package/helper/widgets/alchemy_table_widget.js +71 -0
  21. package/helper/widgets/alchemy_tabs_widget.js +195 -0
  22. package/helper/widgets/header.js +4 -4
  23. package/helper/widgets/markdown.js +17 -10
  24. package/helper/widgets/partial.js +215 -0
  25. package/helper/widgets/sourcecode.js +4 -4
  26. package/helper/widgets/table_of_contents.js +2 -2
  27. package/helper/widgets/text.js +14 -4
  28. package/helper/widgets_helper.js +26 -0
  29. package/package.json +4 -3
  30. package/view/elements/table_of_contents.hwk +23 -9
  31. package/view/form/inputs/edit/widget.hwk +2 -2
  32. package/view/form/inputs/edit/widgets.hwk +2 -2
  33. package/view/widget/elements/al_widget_toolbar.hwk +49 -0
  34. package/view/widget/widget_config.hwk +7 -4
  35. package/assets/stylesheets/alchemy-widget-symbols.scss +0 -191
  36. package/assets/stylesheets/alchemy-widgets.scss +0 -258
@@ -1,258 +0,0 @@
1
- @import "alchemy-widget-symbols.scss";
2
-
3
- alchemy-widgets,
4
- alchemy-widgets-row,
5
- alchemy-widgets-column {
6
- display: flex;
7
-
8
- &.aw-editing {
9
- position: relative;
10
- min-height: 3rem;
11
- }
12
-
13
- > * {
14
- flex: 10;
15
- }
16
- }
17
-
18
- alchemy-widgets-row,
19
- alchemy-widgets-column {
20
-
21
- &.aw-editing {
22
- &:hover {
23
- background: rgba(60, 60, 60, 0.1);
24
- }
25
- }
26
- }
27
-
28
- alchemy-widgets,
29
- alchemy-widgets-column {
30
- flex-flow: column;
31
-
32
- &.aw-editing {
33
- padding-bottom: 5rem;
34
- }
35
-
36
- > alchemy-widget-add-area {
37
- position: absolute;
38
- bottom: 1.5rem;
39
- left: 50%;
40
- transform: translateX(-50%);
41
- }
42
- }
43
-
44
- alchemy-widgets {
45
- min-width: 10rem;
46
- min-height: 10rem;
47
-
48
- &.aw-editing {
49
- outline: 2px dashed rgba(0, 0, 0, 0.3);
50
- outline-offset: -2px;
51
- }
52
- }
53
-
54
- alchemy-widgets-row {
55
- flex-flow: row;
56
- flex: 10 10 auto;
57
-
58
- &.aw-editing {
59
- padding-right: 5rem;
60
- }
61
-
62
- > alchemy-widget-add-area {
63
- position: absolute;
64
- right: 0.5rem;
65
- top: 50%;
66
- transform: translateY(-50%);
67
- }
68
- }
69
-
70
- alchemy-widgets-row,
71
- alchemy-widgets > alchemy-widgets-column,
72
- alchemy-widgets-column > alchemy-widgets-column,
73
- .alchemy-widgets-container > alchemy-widgets-column {
74
- &.aw-editing {
75
-
76
- &::after {
77
- content: "";
78
- position: absolute;
79
- height: 1px;
80
- left: 15px;
81
- right: 15px;
82
- bottom: 0;
83
- border-bottom: 2px dashed rgba(0, 0, 0, 0.3);
84
-
85
- // Reset some things (in case of a nested column)
86
- width: initial;
87
- border-right: initial;
88
- top: initial;
89
- }
90
- }
91
- }
92
-
93
- alchemy-widgets-column {
94
- flex: 10 10 auto;
95
- }
96
-
97
- alchemy-widgets-column,
98
- alchemy-widgets-row > alchemy-widgets-row,
99
- .alchemy-widgets-container > alchemy-widgets-row {
100
- &.aw-editing {
101
- &::after {
102
- content: "";
103
- position: absolute;
104
- width: 1px;
105
- top: 10px;
106
- bottom: 10px;
107
- right: 0;
108
- border-right: 2px dashed rgba(0, 0, 0, 0.3);
109
-
110
- // Reset some things (in case of a nested row)
111
- left: initial;
112
- border-bottom: initial;
113
- height: initial;
114
- }
115
- }
116
- }
117
-
118
- alchemy-widget-add-area {
119
- display: flex;
120
- justify-content: center;
121
- align-items: center;
122
-
123
- .widget-types {
124
- display: none;
125
- }
126
-
127
- &.show-types {
128
- .main-button {
129
- display: none;
130
- }
131
-
132
- .widget-types {
133
- display: initial;
134
- }
135
- }
136
-
137
- .main-button {
138
- display: flex;
139
- }
140
- }
141
-
142
- .aw-toolbar-button,
143
- .widget-button {
144
- color: #707684;
145
- cursor: pointer;
146
- border: none;
147
- background: none;
148
-
149
- display: flex;
150
- align-content: center;
151
- min-height: 26px;
152
- align-items: center;
153
- text-transform: uppercase;
154
-
155
- &:hover {
156
- color: #388ae5;
157
- }
158
- }
159
-
160
- alchemy-widget {
161
- display: block;
162
-
163
- &.aw-editing {
164
- min-height: 2rem;
165
-
166
- &:hover {
167
- background: rgba(60, 60, 120, 0.1);
168
- }
169
- }
170
-
171
- &.aw-selected {
172
- background-color: #7979f347;
173
- outline: 1px dashed #7979f399;
174
- }
175
- }
176
-
177
- alchemy-widget-context,
178
- alchemy-widget-toolbar {
179
- display: block;
180
- padding: 0.4rem;
181
- background-color: white;
182
- border-radius: 4px;
183
- border: 1px solid #dadada;
184
-
185
- &[hidden] {
186
- display: none;
187
- }
188
- }
189
-
190
- alchemy-widget-context {
191
- position: fixed;
192
- z-index: 99999;
193
-
194
- alchemy-widget-toolbar {
195
- position: absolute;
196
- top: calc(100% + 5px);
197
- right: 0;
198
- z-index: 999999;
199
- }
200
- }
201
-
202
- alchemy-widget-toolbar {
203
- min-height: 2rem;
204
- min-width: 2rem;
205
- display: flex;
206
-
207
- > * {
208
- margin-right: 5px;
209
- }
210
-
211
- .aw-toolbar-button {
212
- border-radius: 4px;
213
-
214
- &:hover {
215
- color: rgb(112, 118, 132);
216
- background-color: #f0f0f0;
217
- }
218
-
219
- &.aw-button-selected {
220
- color: #388ae5;
221
- }
222
- }
223
- }
224
-
225
- alchemy-widget[type="header"] {
226
-
227
- h1, h2, h3, h4, h5, h6 {
228
- padding: 1em 0;
229
- margin: 0;
230
- line-height: 1.5em;
231
- outline: none;
232
- }
233
-
234
- h1 {
235
- font-size: 2em;
236
- }
237
-
238
- h2 {
239
- font-size: 1.5em;
240
- }
241
- }
242
-
243
- .aw-toolbar-button {
244
-
245
- .aw-header-h {
246
- font-weight: bold;
247
- font-size: 1.2em;
248
- }
249
-
250
- .aw-header-level {
251
- font-weight: bold;
252
- height: 1.3em;
253
- }
254
- }
255
-
256
- table-of-contents {
257
- display: block;
258
- }