henry-search 1.0.14 → 1.0.15

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 (39) hide show
  1. package/dist/HenrySearch.css +1 -1
  2. package/dist/HenrySearch.js +6970 -6979
  3. package/dist/HenrySearch.umd.cjs +79 -79
  4. package/package.json +7 -1
  5. package/src/components/AudioLinks.vue +6 -6
  6. package/src/components/EventLinks.vue +12 -12
  7. package/src/components/Search.vue +88 -86
  8. package/src/components/SearchDetail.vue +35 -33
  9. package/src/components/SearchTab.vue +69 -82
  10. package/src/main.js +1 -0
  11. package/src/styles/atoms/audioLinks/index.scss +46 -0
  12. package/src/styles/atoms/breadCrumb/index.scss +12 -0
  13. package/src/styles/atoms/checkBoxes/index.scss +34 -0
  14. package/src/styles/atoms/clearRefinements/index.scss +2 -0
  15. package/src/styles/atoms/eventLinks/index.scss +22 -0
  16. package/src/styles/atoms/index.scss +7 -0
  17. package/src/styles/atoms/label/index.scss +6 -0
  18. package/src/styles/atoms/menuSelect/index.scss +28 -0
  19. package/src/styles/config/index.scss +180 -0
  20. package/src/styles/index.scss +8 -0
  21. package/src/styles/molecules/accordion/accordion.html +97 -0
  22. package/src/styles/molecules/accordion/index.scss +76 -0
  23. package/src/styles/molecules/currentRefinements/index.scss +22 -0
  24. package/src/styles/molecules/dateRange/index.scss +184 -0
  25. package/src/styles/molecules/headerLinks/index.scss +40 -0
  26. package/src/styles/molecules/index.scss +7 -0
  27. package/src/styles/molecules/pagination/index.scss +44 -0
  28. package/src/styles/molecules/resultActions/index.scss +42 -0
  29. package/src/styles/molecules/searchBox/index.scss +69 -0
  30. package/src/styles/organisms/activeFilters/index.scss +49 -0
  31. package/src/styles/organisms/filters/index.scss +241 -0
  32. package/src/styles/organisms/index.scss +4 -0
  33. package/src/styles/organisms/performanceGrid/index.scss +121 -0
  34. package/src/styles/organisms/resultsGrid/index.scss +157 -0
  35. package/src/styles/templates/eventsSearch/index.scss +381 -0
  36. package/src/styles/templates/history/index.scss +32 -0
  37. package/src/styles/templates/index.scss +3 -0
  38. package/src/styles/templates/performance/index.scss +74 -0
  39. package/src/components/HelloWorld.vue +0 -43
@@ -0,0 +1,157 @@
1
+ @use "@imarc/pronto/resources/styles/imported" as *;
2
+
3
+ .resultsGrid {
4
+ display: grid;
5
+ grid-template-columns: 1fr 1fr;
6
+ padding: 0 1.5rem;
7
+ @include at(lg) {
8
+ padding: 0;
9
+ grid-template-columns: repeat(7, 1fr);
10
+ }
11
+
12
+ &__cell {
13
+ border-left: thin solid var(--color-gray-200);
14
+ border-right: thin solid var(--color-gray-200);
15
+ color: var(--color-dark-blue);
16
+ font-size: 0.9rem;
17
+ font-weight: bold;
18
+ grid-column: 1/span 2;
19
+ padding: 0.5rem 1rem;
20
+ @include at(lg) {
21
+ padding: 1rem;
22
+ grid-column: auto;
23
+ border: none;
24
+ border-right: thin solid var(--color-gray-200);
25
+ }
26
+
27
+
28
+ a {
29
+ color: var(--color-dark-blue);
30
+ }
31
+
32
+ &.-artist {
33
+ border-left: none;
34
+ border-right: thin solid var(--color-gray-200);
35
+ grid-column: auto;
36
+ }
37
+
38
+
39
+ &.-details {
40
+ display: none;
41
+ @include at(lg) {
42
+ display: inline;
43
+ }
44
+ }
45
+ &.-detailsMobile {
46
+ padding-bottom: 1rem;
47
+ }
48
+
49
+ &.-detailsMobile.-last {
50
+ border-bottom: thin solid var(--color-gray-200);
51
+ }
52
+
53
+ &.-empty {
54
+ display:none;
55
+ @include at(lg) {
56
+ border-bottom: none;
57
+ display:inline;
58
+ }
59
+ }
60
+ &.-emptyMobile {
61
+ display:inline;
62
+ @include at(lg) {
63
+ display:none;
64
+ }
65
+ }
66
+ &.-even {
67
+ background-color: var(--color-light-gray);
68
+ }
69
+ &.-first {
70
+ border-top: thin solid var(--color-gray-200);
71
+ padding-top: 1rem;
72
+ @include at(lg) {
73
+ border-top: none;
74
+ border-left: thin solid var(--color-gray-200);
75
+ }
76
+ }
77
+ &.-header {
78
+ display: none;
79
+ @include at(lg) {
80
+ display: inline;
81
+ border-top: thin solid var(--color-gray-200);
82
+ border-bottom: thin solid var(--color-gray-200);
83
+ font-weight:100;
84
+ color: var(--color-gray-400);
85
+ }
86
+ }
87
+ &.-hideMobile {
88
+ display: none;
89
+ @include at(lg) {
90
+ display: inline;
91
+ }
92
+ }
93
+
94
+ &.-last.-empty.-lastMobile {
95
+ border-bottom: none;
96
+ }
97
+
98
+ &.-last, &.-last.-right, &.-last.-work {
99
+ border-bottom: none;
100
+ border-top: none;
101
+ @include at(lg) {
102
+ border-bottom: thin solid var(--color-gray-200);
103
+ }
104
+ }
105
+
106
+ &.-last.-perfs {
107
+ border-bottom: thin solid var(--color-gray-200);
108
+ }
109
+
110
+ &.-lastMobile {
111
+ border-bottom: thin solid var(--color-gray-200);
112
+ }
113
+
114
+ &.-emptyMobile {
115
+ display: inline;
116
+ @include at(lg) {
117
+ display:none;
118
+ }
119
+ }
120
+
121
+ &.-work {
122
+ grid-column: auto;
123
+ border-right: none;
124
+ //border-left: thin solid var(--color-gray-200);
125
+ @include at(lg) {
126
+ border-right: thin solid var(--color-gray-200);
127
+ }
128
+ }
129
+ }
130
+ &__conductors,
131
+ &__ensembles {
132
+ display: none;
133
+ @include at(lg) {
134
+ display: inline;
135
+ }
136
+ }
137
+ &__conductorsMobile,
138
+ &__ensemblesMobile {
139
+ display: inline;
140
+ @include at(lg) {
141
+ display: none;
142
+ }
143
+ }
144
+
145
+ &__lightLink {
146
+ color: var(--color-turquoise);
147
+ }
148
+
149
+ &__mobileHeader {
150
+ display: block;
151
+ font-weight:100;
152
+ color: var(--color-gray-400);
153
+ @include at(lg) {
154
+ display: none;
155
+ }
156
+ }
157
+ }
@@ -0,0 +1,381 @@
1
+ @use "@imarc/pronto/resources/styles/imported" as *;
2
+
3
+ .eventsSearch {
4
+ // Ensure full width in responsive design mode
5
+ width: 100%;
6
+ max-width: 100%;
7
+ overflow-x: hidden;
8
+
9
+ &__artistsGrid,
10
+ &__worksGrid {
11
+ display: grid;
12
+ grid-template-columns: 1fr 1fr;
13
+ padding: 0 1.5rem;
14
+ @include at(lg) {
15
+ padding: 0;
16
+ grid-template-columns: repeat(4, 1fr);
17
+ }
18
+ }
19
+
20
+
21
+
22
+ .button {
23
+ padding: 0;
24
+ width: 2.5rem;
25
+ height: 100%;
26
+ @include at(md) {
27
+ height: 100%;
28
+ width: 100%;
29
+ }
30
+ }
31
+
32
+ &--ensemble {
33
+ grid-area: ensemble;
34
+ }
35
+
36
+
37
+
38
+ // Pagination styles
39
+ &__results {
40
+ grid-column-start: 2;
41
+ padding-top: 0.75rem;
42
+
43
+ @include at(lg) {
44
+ padding-top:3rem;
45
+ padding-right:4rem;
46
+ padding-left: 2rem;
47
+ }
48
+
49
+ transition: padding-left 400ms;
50
+
51
+ &.closed {
52
+ @include at(lg) {
53
+ padding-left: 8rem;
54
+ }
55
+
56
+ }
57
+ &.openMobile {
58
+ display: none;
59
+ @include at(lg) {
60
+ display: inline;
61
+ }
62
+ }
63
+ }
64
+
65
+ &__resultsHeader {
66
+ display: flex;
67
+ justify-content: space-between;
68
+ padding: 1rem 1.5rem 0;
69
+ border-bottom: thin solid var(--color-gray-200);
70
+ @include at(lg) {
71
+ padding: 0;
72
+ border-bottom: none;
73
+ }
74
+ &.-mobile {
75
+ display: flex;
76
+ padding-bottom: 0.75rem;
77
+ @include at(lg) {
78
+ display: none;
79
+ }
80
+ .filters__toggle {
81
+ display: flex;
82
+ justify-content: space-between;
83
+ width: 100%;
84
+
85
+ }
86
+
87
+ .filterButton {
88
+ background-color: var(--color-white);
89
+ border: none;
90
+ display: flex;
91
+ align-items: center;
92
+ gap: .75rem;
93
+ }
94
+ }
95
+ }
96
+
97
+ &__resultsSort {
98
+ font-weight: 100;
99
+ font-size: 1.1rem;
100
+ margin-right: .5rem;
101
+ }
102
+
103
+ &__resultsTitle {
104
+ display: flex;
105
+ align-items: baseline;
106
+ //width: 75%;
107
+ }
108
+
109
+ &__search {
110
+ display: grid;
111
+ grid-template-columns: 25% 75%;
112
+ gap: 2rem;
113
+ background-color: var(--color-white);
114
+ }
115
+
116
+
117
+
118
+ &__selectOption {
119
+ display: flex;
120
+ justify-content: space-between;
121
+ align-items: center;
122
+ width: 100%;
123
+ gap: 4px;
124
+
125
+ span {
126
+ white-space: normal;
127
+ word-wrap: break-word;
128
+ overflow-wrap: break-word;
129
+ line-height: 1.4;
130
+ min-width: 0; // Important for flex wrapping
131
+ max-width: calc(100% - 30px); // Reserve minimal space for count
132
+ }
133
+ }
134
+
135
+ &__selectCount {
136
+ color: #999;
137
+ font-size: 11px;
138
+ margin-left: 2px;
139
+ padding: 0 2px;
140
+ flex-shrink: 0;
141
+ align-self: flex-start;
142
+ min-width: 0;
143
+ width: fit-content;
144
+ white-space: nowrap;
145
+ line-height: 1.2;
146
+ }
147
+
148
+ &__title {
149
+ font-weight: var(--font-weight-bold);
150
+ font-size: var(--font-size-2);
151
+ line-height: var(--line-height-heading);
152
+ letter-spacing: -0.01em;
153
+ color: var(--c-theme-800);
154
+ margin-bottom: 0;
155
+ }
156
+
157
+ &__topSection {
158
+ background-color: var(--color-light-gold);
159
+ display: flex;
160
+ align-items: flex-start;
161
+ gap: 2rem;
162
+ grid-column: 1 / span 2;
163
+
164
+ width: 100%;
165
+ box-sizing: border-box;
166
+
167
+ padding: 1rem 1.5rem;
168
+ @include at(lg) {
169
+ padding: 2rem 4rem;
170
+ }
171
+
172
+ @include at(lg) {
173
+ flex-direction: column;
174
+ gap: 1rem;
175
+ padding: 2rem 4rem 2rem 8rem;
176
+ }
177
+
178
+ }
179
+
180
+ &--venue {
181
+ grid-area: venue;
182
+ }
183
+
184
+
185
+
186
+ // Mobile date picker modal styles
187
+ .dp__mobile_modal {
188
+ .dp__menu {
189
+ position: static !important;
190
+ top: auto !important;
191
+ left: auto !important;
192
+ right: auto !important;
193
+ bottom: auto !important;
194
+ width: 100% !important;
195
+ height: auto !important;
196
+ max-width: none !important;
197
+ max-height: none !important;
198
+ border-radius: 0 !important;
199
+ z-index: auto !important;
200
+ background: transparent !important;
201
+ box-shadow: none !important;
202
+ border: none !important;
203
+ margin: 0 !important;
204
+ padding: 0 !important;
205
+ }
206
+
207
+ .dp__modal_body {
208
+ padding: 1rem !important;
209
+ flex: 1 !important;
210
+ display: flex !important;
211
+ flex-direction: column !important;
212
+ }
213
+ }
214
+
215
+ // Make dropdown menus span across both venue and ensemble filters
216
+ .eventsSearch__filtersRow {
217
+ position: relative;
218
+ }
219
+
220
+ &__refinementCount {
221
+ justify-self: end;
222
+ padding-right: 0.5rem;
223
+ }
224
+
225
+
226
+
227
+ // Modal styles moved outside .eventsSearch scope
228
+
229
+
230
+
231
+ .tabs {
232
+ grid-column: 1 / span 2;
233
+ }
234
+
235
+
236
+
237
+
238
+ // Calendar styles
239
+ .dp__menu {
240
+ @media (max-width: 768px) {
241
+ border: none !important;
242
+ }
243
+ }
244
+
245
+ // Desktop positioning for date picker to span across Date and Venue inputs
246
+ .eventsSearch__filterGroup--date {
247
+ --dp-menu-width: 300px;
248
+ @media (min-width: 769px) {
249
+ position: relative;
250
+ }
251
+
252
+ .dp__outer_menu_wrap {
253
+ @media (min-width: 769px) {
254
+ position: absolute !important;
255
+ left: 0 !important;
256
+ top: calc(100% + .5rem) !important;
257
+ //width: calc(150% + 1rem) !important;
258
+ z-index: 1000 !important;
259
+ }
260
+
261
+ .dp__menu {
262
+ @media (min-width: 769px) {
263
+ width: 100% !important;
264
+ left: 0 !important;
265
+ }
266
+ }
267
+ }
268
+ }
269
+
270
+ .dp__menu_inner {
271
+ --dp-menu-padding: 16px 8px;
272
+ @media (max-width: 769px) {
273
+ --dp-menu-padding: 0 !important;
274
+ }
275
+ }
276
+
277
+ .dp__cell_inner.dp__today {
278
+ border-radius: 50% !important;
279
+ border-color: var(--c-brand) !important;
280
+ color: var(--c-brand) !important;
281
+ }
282
+
283
+ .dp__cell_inner {
284
+ --dp-cell-border-radius: 16px !important;
285
+ --dp-font-size: 14px !important;
286
+ --dp-cell-size: 48px;
287
+ font-size: var(--dp-font-size);
288
+ }
289
+
290
+ .dp__range_start,
291
+ .dp__range_end {
292
+ --dp-cell-border-radius: 32px !important;
293
+ --dp-primary-color: var(--c-brand) !important;
294
+ }
295
+
296
+ .dp__range_between {
297
+ --dp-range-between-dates-background-color: var(--c-theme-200) !important;
298
+ --dp-range-between-dates-text-color: var(--c-theme-400) !important;
299
+ border: none !important;
300
+ }
301
+
302
+ .dp__calendar_item,
303
+ .dp__calendar_header_item {
304
+ flex-grow: 0 !important;
305
+ --dp-cell-size: 48px;
306
+ }
307
+
308
+ .dp--year-select, .dp__month_year_select {
309
+ font-size: 22px !important;
310
+ font-weight: 800 !important;
311
+ --dp-text-color: var(--c-theme-800) !important;
312
+ }
313
+
314
+ .dp__calendar_header_item {
315
+ color: #686F73 !important;
316
+ }
317
+
318
+ // Date picker action buttons to match mobile modal buttons
319
+ .dp__action_buttons {
320
+ gap: 12px !important;
321
+ }
322
+
323
+ .dp__active_date {
324
+ background-color: var(--color-turquoise);
325
+ }
326
+
327
+ .dp__action_button {
328
+ @include at(lg) {
329
+ padding: 16px 24px !important;
330
+ }
331
+
332
+ border-radius: 8px !important;
333
+ font-weight: 600 !important;
334
+ font-size: var(--font-size-2) !important;
335
+ border: none !important;
336
+ cursor: pointer !important;
337
+ transition: all 0.2s ease !important;
338
+ padding: 1rem;
339
+
340
+ &.dp__action_select {
341
+ background: var(--color-turquoise) !important;
342
+ color: var(--color-dark-blue);
343
+
344
+ &:hover {
345
+ background: var(--color-turquoise) !important;
346
+ }
347
+ }
348
+
349
+ &.dp__action_cancel {
350
+ background: var(--color-gray-100) !important;
351
+ color: var(--color-dark-blue) !important;
352
+ border: none !important;
353
+ font-weight: 200 !important;
354
+
355
+ &:hover {
356
+ background: #e8e8e8 !important;
357
+ }
358
+ }
359
+ }
360
+ .dp__calendar_header_separator{
361
+ height: 0 !important;
362
+ }
363
+
364
+ .dp__month_year_wrap {
365
+ margin-bottom: .5rem !important;
366
+ }
367
+
368
+ .dp__action_row {
369
+ border-top: 1px solid #D6D;
370
+ }
371
+ .dp__action_row {
372
+ @include at(lg) {
373
+ width: 100% !important;
374
+ }
375
+ border-top: 1px solid #D6D6D6 !important;
376
+ }
377
+
378
+ .dp__input_icon {
379
+ --dp-icon-color: var(--color-dark-blue);
380
+ }
381
+ }
@@ -0,0 +1,32 @@
1
+ @use "@imarc/pronto/resources/styles/imported" as *;
2
+
3
+ .history {
4
+ padding: 0.5rem 1.5rem;
5
+ @include at(md) {
6
+ padding: 0.5rem 2rem 0.5rem 4rem;
7
+ }
8
+ @include at(lg) {
9
+ padding: 0.5rem 4rem 0.5rem 8rem;
10
+ }
11
+
12
+ &__grid {
13
+ display: grid;
14
+ grid-template-columns: 1fr;
15
+ @include at(md) {
16
+ grid-template-columns: 1fr 1fr 1fr;
17
+ }
18
+
19
+ padding: 3rem 0 5rem;
20
+ }
21
+
22
+ &__artists,
23
+ &__performances,
24
+ &__works {
25
+ padding-top: 2rem;
26
+ }
27
+
28
+ &__item {
29
+ padding-top: 1rem;
30
+ color: var(--color-mid-gray);
31
+ }
32
+ }
@@ -0,0 +1,3 @@
1
+ @forward "eventsSearch";
2
+ @forward "history";
3
+ @forward "performance";
@@ -0,0 +1,74 @@
1
+
2
+ @use "@imarc/pronto/resources/styles/imported" as *;
3
+
4
+ .performance {
5
+
6
+
7
+
8
+ &__dataTitle {
9
+ font-weight: 100;
10
+ font-size: 0.9rem;
11
+ color: var(--color-dark-gray);
12
+
13
+ }
14
+ &__details {
15
+ padding: 0.5rem 1.5rem;
16
+ h4 {
17
+ padding: 2rem 0 0.25rem;
18
+ font-size: 1.25rem;
19
+ }
20
+ @include at(md) {
21
+ padding: 0.5rem 2rem 0.5rem 4rem;
22
+ }
23
+ @include at(lg) {
24
+ padding: 0.5rem 4rem 0.5rem 8rem;
25
+ }
26
+ }
27
+
28
+
29
+ &__header {
30
+ border-bottom: 1px solid var(--color-light-gray);
31
+ // h2 {
32
+ // font-weight: 600;
33
+ // font-size: 3.5rem;
34
+ // padding: 0.75rem 0;
35
+ // }
36
+ h2 {
37
+ font-weight: 100;
38
+ font-size: 2.5rem;
39
+ padding-bottom: 0.75rem;
40
+ }
41
+ }
42
+ &__headerData {
43
+ border-bottom: 1px solid var(--color-light-gray);
44
+ display: grid;
45
+ font-weight: bold;
46
+ color: var(--color-dark-blue);
47
+ padding: 1.5rem 0;
48
+ @media screen and (min-width: 768px) {
49
+ grid-template-columns: repeat(5, 1fr) max(300px);
50
+ }
51
+ a {
52
+ font-size: 0.9rem;
53
+ color: var(--color-dark-blue);
54
+ }
55
+ }
56
+
57
+
58
+ &__program {
59
+ display: grid;
60
+ grid-template-columns: repeat(5, 1fr);
61
+ grid-template-rows: auto;
62
+
63
+ &.-even {
64
+ background-color: var(--color-light-gray);
65
+ }
66
+ .composer {
67
+ grid-area: "composer";
68
+ }
69
+
70
+
71
+ }
72
+
73
+
74
+ }
@@ -1,43 +0,0 @@
1
- <script setup>
2
- import { ref } from 'vue'
3
-
4
- defineProps({
5
- msg: String,
6
- })
7
-
8
- const count = ref(0)
9
- </script>
10
-
11
- <template>
12
- <h1>{{ msg }}</h1>
13
-
14
- <div class="card">
15
- <button type="button" @click="count++">count is {{ count }}</button>
16
- <p>
17
- Edit
18
- <code>components/HelloWorld.vue</code> to test HMR
19
- </p>
20
- </div>
21
-
22
- <p>
23
- Check out
24
- <a href="https://vuejs.org/guide/quick-start.html#local" target="_blank"
25
- >create-vue</a
26
- >, the official Vue + Vite starter
27
- </p>
28
- <p>
29
- Learn more about IDE Support for Vue in the
30
- <a
31
- href="https://vuejs.org/guide/scaling-up/tooling.html#ide-support"
32
- target="_blank"
33
- >Vue Docs Scaling up Guide</a
34
- >.
35
- </p>
36
- <p class="read-the-docs">Click on the Vite and Vue logos to learn more</p>
37
- </template>
38
-
39
- <style scoped>
40
- .read-the-docs {
41
- color: #888;
42
- }
43
- </style>