henry-search 1.0.0 → 1.0.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/README.md +5 -0
- package/dist/HenrySearch.css +1 -0
- package/dist/HenrySearch.js +76 -0
- package/dist/HenrySearch.umd.cjs +1 -0
- package/dist/vite.svg +1 -0
- package/package.json +22 -5
- package/src/App.vue +30 -0
- package/src/assets/vue.svg +1 -0
- package/src/components/HelloWorld.vue +43 -0
- package/src/components/Search.vue +1 -1
- package/src/main.js +19 -0
- package/src/style.css +79 -0
- package/src/components/sample_artist_results.json +0 -13075
- package/src/index.js +0 -9
- package/test/script.js +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Vue 3 + Vite
|
|
2
|
+
|
|
3
|
+
This template should help get you started developing with Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
|
4
|
+
|
|
5
|
+
Learn more about IDE Support for Vue in the [Vue Docs Scaling up Guide](https://vuejs.org/guide/scaling-up/tooling.html#ide-support).
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.card{padding:2em}#app{max-width:1280px;margin:0 auto;padding:2rem;text-align:center}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.read-the-docs[data-v-830e400e]{color:#888}.logo[data-v-962047bb]{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo[data-v-962047bb]:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.vue[data-v-962047bb]:hover{filter:drop-shadow(0 0 2em #42b883aa)}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { ref as g, createElementBlock as i, openBlock as p, Fragment as u, createElementVNode as t, toDisplayString as a, createTextVNode as l, createVNode as d, createApp as m } from "vue";
|
|
2
|
+
const v = "/vite.svg", h = "data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20role='img'%20class='iconify%20iconify--logos'%20width='37.07'%20height='36'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%20256%20198'%3e%3cpath%20fill='%2341B883'%20d='M204.8%200H256L128%20220.8L0%200h97.92L128%2051.2L157.44%200h47.36Z'%3e%3c/path%3e%3cpath%20fill='%2341B883'%20d='m0%200l128%20220.8L256%200h-51.2L128%20132.48L50.56%200H0Z'%3e%3c/path%3e%3cpath%20fill='%2335495E'%20d='M50.56%200L128%20133.12L204.8%200h-47.36L128%2051.2L97.92%200H50.56Z'%3e%3c/path%3e%3c/svg%3e", c = (s, r) => {
|
|
3
|
+
const o = s.__vccOpts || s;
|
|
4
|
+
for (const [e, n] of r)
|
|
5
|
+
o[e] = n;
|
|
6
|
+
return o;
|
|
7
|
+
}, _ = { class: "card" }, f = {
|
|
8
|
+
__name: "HelloWorld",
|
|
9
|
+
props: {
|
|
10
|
+
msg: String
|
|
11
|
+
},
|
|
12
|
+
setup(s) {
|
|
13
|
+
const r = g(0);
|
|
14
|
+
return (o, e) => (p(), i(u, null, [
|
|
15
|
+
t("h1", null, a(s.msg), 1),
|
|
16
|
+
t("div", _, [
|
|
17
|
+
t("button", {
|
|
18
|
+
type: "button",
|
|
19
|
+
onClick: e[0] || (e[0] = (n) => r.value++)
|
|
20
|
+
}, "count is " + a(r.value), 1),
|
|
21
|
+
e[1] || (e[1] = t("p", null, [
|
|
22
|
+
l(" Edit "),
|
|
23
|
+
t("code", null, "components/HelloWorld.vue"),
|
|
24
|
+
l(" to test HMR ")
|
|
25
|
+
], -1))
|
|
26
|
+
]),
|
|
27
|
+
e[2] || (e[2] = t("p", null, [
|
|
28
|
+
l(" Check out "),
|
|
29
|
+
t("a", {
|
|
30
|
+
href: "https://vuejs.org/guide/quick-start.html#local",
|
|
31
|
+
target: "_blank"
|
|
32
|
+
}, "create-vue"),
|
|
33
|
+
l(", the official Vue + Vite starter ")
|
|
34
|
+
], -1)),
|
|
35
|
+
e[3] || (e[3] = t("p", null, [
|
|
36
|
+
l(" Learn more about IDE Support for Vue in the "),
|
|
37
|
+
t("a", {
|
|
38
|
+
href: "https://vuejs.org/guide/scaling-up/tooling.html#ide-support",
|
|
39
|
+
target: "_blank"
|
|
40
|
+
}, "Vue Docs Scaling up Guide"),
|
|
41
|
+
l(". ")
|
|
42
|
+
], -1)),
|
|
43
|
+
e[4] || (e[4] = t("p", { class: "read-the-docs" }, "Click on the Vite and Vue logos to learn more", -1))
|
|
44
|
+
], 64));
|
|
45
|
+
}
|
|
46
|
+
}, k = /* @__PURE__ */ c(f, [["__scopeId", "data-v-830e400e"]]), V = {
|
|
47
|
+
__name: "App",
|
|
48
|
+
setup(s) {
|
|
49
|
+
return (r, o) => (p(), i(u, null, [
|
|
50
|
+
o[0] || (o[0] = t("div", null, [
|
|
51
|
+
t("a", {
|
|
52
|
+
href: "https://vite.dev",
|
|
53
|
+
target: "_blank"
|
|
54
|
+
}, [
|
|
55
|
+
t("img", {
|
|
56
|
+
src: v,
|
|
57
|
+
class: "logo",
|
|
58
|
+
alt: "Vite logo"
|
|
59
|
+
})
|
|
60
|
+
]),
|
|
61
|
+
t("a", {
|
|
62
|
+
href: "https://vuejs.org/",
|
|
63
|
+
target: "_blank"
|
|
64
|
+
}, [
|
|
65
|
+
t("img", {
|
|
66
|
+
src: h,
|
|
67
|
+
class: "logo vue",
|
|
68
|
+
alt: "Vue logo"
|
|
69
|
+
})
|
|
70
|
+
])
|
|
71
|
+
], -1)),
|
|
72
|
+
d(k, { msg: "Vite + Vue" })
|
|
73
|
+
], 64));
|
|
74
|
+
}
|
|
75
|
+
}, L = /* @__PURE__ */ c(V, [["__scopeId", "data-v-962047bb"]]);
|
|
76
|
+
m(L).mount("#app");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(e,n){typeof exports=="object"&&typeof module<"u"?n(require("vue")):typeof define=="function"&&define.amd?define(["vue"],n):(e=typeof globalThis<"u"?globalThis:e||self,n(e.Vue))})(this,(function(e){"use strict";const n="/vite.svg",i="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20role='img'%20class='iconify%20iconify--logos'%20width='37.07'%20height='36'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%20256%20198'%3e%3cpath%20fill='%2341B883'%20d='M204.8%200H256L128%20220.8L0%200h97.92L128%2051.2L157.44%200h47.36Z'%3e%3c/path%3e%3cpath%20fill='%2341B883'%20d='m0%200l128%20220.8L256%200h-51.2L128%20132.48L50.56%200H0Z'%3e%3c/path%3e%3cpath%20fill='%2335495E'%20d='M50.56%200L128%20133.12L204.8%200h-47.36L128%2051.2L97.92%200H50.56Z'%3e%3c/path%3e%3c/svg%3e",a=(l,r)=>{const o=l.__vccOpts||l;for(const[t,s]of r)o[t]=s;return o},c={class:"card"},d=a({__name:"HelloWorld",props:{msg:String},setup(l){const r=e.ref(0);return(o,t)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("h1",null,e.toDisplayString(l.msg),1),e.createElementVNode("div",c,[e.createElementVNode("button",{type:"button",onClick:t[0]||(t[0]=s=>r.value++)},"count is "+e.toDisplayString(r.value),1),t[1]||(t[1]=e.createElementVNode("p",null,[e.createTextVNode(" Edit "),e.createElementVNode("code",null,"components/HelloWorld.vue"),e.createTextVNode(" to test HMR ")],-1))]),t[2]||(t[2]=e.createElementVNode("p",null,[e.createTextVNode(" Check out "),e.createElementVNode("a",{href:"https://vuejs.org/guide/quick-start.html#local",target:"_blank"},"create-vue"),e.createTextVNode(", the official Vue + Vite starter ")],-1)),t[3]||(t[3]=e.createElementVNode("p",null,[e.createTextVNode(" Learn more about IDE Support for Vue in the "),e.createElementVNode("a",{href:"https://vuejs.org/guide/scaling-up/tooling.html#ide-support",target:"_blank"},"Vue Docs Scaling up Guide"),e.createTextVNode(". ")],-1)),t[4]||(t[4]=e.createElementVNode("p",{class:"read-the-docs"},"Click on the Vite and Vue logos to learn more",-1))],64))}},[["__scopeId","data-v-830e400e"]]),p=a({__name:"App",setup(l){return(r,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[o[0]||(o[0]=e.createElementVNode("div",null,[e.createElementVNode("a",{href:"https://vite.dev",target:"_blank"},[e.createElementVNode("img",{src:n,class:"logo",alt:"Vite logo"})]),e.createElementVNode("a",{href:"https://vuejs.org/",target:"_blank"},[e.createElementVNode("img",{src:i,class:"logo vue",alt:"Vue logo"})])],-1)),e.createVNode(d,{msg:"Vite + Vue"})],64))}},[["__scopeId","data-v-962047bb"]]);e.createApp(p).mount("#app")}));
|
package/dist/vite.svg
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
package/package.json
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "henry-search",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.1",
|
|
4
4
|
"description": "Searches a typesense archive of musical performances",
|
|
5
|
-
"main": "js/
|
|
5
|
+
"main": "js/main.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"
|
|
7
|
+
"dev": "vite",
|
|
8
|
+
"build": "vite build",
|
|
9
|
+
"preview": "vite preview"
|
|
8
10
|
},
|
|
9
11
|
"repository": {
|
|
10
12
|
"type": "git",
|
|
@@ -14,7 +16,7 @@
|
|
|
14
16
|
"search"
|
|
15
17
|
],
|
|
16
18
|
"author": "Imarc",
|
|
17
|
-
"license": "
|
|
19
|
+
"license": "ISC",
|
|
18
20
|
"bugs": {
|
|
19
21
|
"url": "https://github.com/bostonsymphony/henry-search/issues"
|
|
20
22
|
},
|
|
@@ -28,6 +30,21 @@
|
|
|
28
30
|
"vue": "^3.5.21",
|
|
29
31
|
"vue-instantsearch": "^4.21.3",
|
|
30
32
|
"vue-select": "^4.0.0-beta.6"
|
|
33
|
+
}
|
|
34
|
+
,
|
|
35
|
+
"devDependencies": {
|
|
36
|
+
"@vitejs/plugin-vue": "^6.0.1",
|
|
37
|
+
"vite": "^7.1.7"
|
|
31
38
|
},
|
|
32
|
-
"
|
|
39
|
+
"type": "module",
|
|
40
|
+
"exports": {
|
|
41
|
+
".": {
|
|
42
|
+
"import": "./dist/HenrySearch.js",
|
|
43
|
+
"require": "./dist/HenrySearch.umd.js"
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
"files": [
|
|
47
|
+
"dist",
|
|
48
|
+
"src"
|
|
49
|
+
]
|
|
33
50
|
}
|
package/src/App.vue
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import HelloWorld from './components/HelloWorld.vue'
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
<template>
|
|
6
|
+
<div>
|
|
7
|
+
<a href="https://vite.dev" target="_blank">
|
|
8
|
+
<img src="/vite.svg" class="logo" alt="Vite logo" />
|
|
9
|
+
</a>
|
|
10
|
+
<a href="https://vuejs.org/" target="_blank">
|
|
11
|
+
<img src="./assets/vue.svg" class="logo vue" alt="Vue logo" />
|
|
12
|
+
</a>
|
|
13
|
+
</div>
|
|
14
|
+
<HelloWorld msg="Vite + Vue" />
|
|
15
|
+
</template>
|
|
16
|
+
|
|
17
|
+
<style scoped>
|
|
18
|
+
.logo {
|
|
19
|
+
height: 6em;
|
|
20
|
+
padding: 1.5em;
|
|
21
|
+
will-change: filter;
|
|
22
|
+
transition: filter 300ms;
|
|
23
|
+
}
|
|
24
|
+
.logo:hover {
|
|
25
|
+
filter: drop-shadow(0 0 2em #646cffaa);
|
|
26
|
+
}
|
|
27
|
+
.logo.vue:hover {
|
|
28
|
+
filter: drop-shadow(0 0 2em #42b883aa);
|
|
29
|
+
}
|
|
30
|
+
</style>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="37.07" height="36" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 198"><path fill="#41B883" d="M204.8 0H256L128 220.8L0 0h97.92L128 51.2L157.44 0h47.36Z"></path><path fill="#41B883" d="m0 0l128 220.8L256 0h-51.2L128 132.48L50.56 0H0Z"></path><path fill="#35495E" d="M50.56 0L128 133.12L204.8 0h-47.36L128 51.2L97.92 0H50.56Z"></path></svg>
|
|
@@ -0,0 +1,43 @@
|
|
|
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>
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
import { simple as simpleStateMapping } from 'instantsearch.js/es/lib/stateMappings'
|
|
23
23
|
import Typesense from 'typesense'
|
|
24
24
|
|
|
25
|
-
import PAccordion from '
|
|
25
|
+
import PAccordion from './PAccordion.vue'
|
|
26
26
|
|
|
27
27
|
const props = defineProps({
|
|
28
28
|
indexName: {
|
package/src/main.js
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { createApp } from 'vue'
|
|
2
|
+
// import './style.css'
|
|
3
|
+
// import App from './App.vue'
|
|
4
|
+
|
|
5
|
+
// createApp(App).mount('#app')
|
|
6
|
+
|
|
7
|
+
import Search from './components/Search.vue'
|
|
8
|
+
|
|
9
|
+
export default {
|
|
10
|
+
|
|
11
|
+
install: (app) => {
|
|
12
|
+
|
|
13
|
+
app.component('henry-search', Search)
|
|
14
|
+
|
|
15
|
+
},
|
|
16
|
+
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { Search }
|
package/src/style.css
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
font-family: system-ui, Avenir, Helvetica, Arial, sans-serif;
|
|
3
|
+
line-height: 1.5;
|
|
4
|
+
font-weight: 400;
|
|
5
|
+
|
|
6
|
+
color-scheme: light dark;
|
|
7
|
+
color: rgba(255, 255, 255, 0.87);
|
|
8
|
+
background-color: #242424;
|
|
9
|
+
|
|
10
|
+
font-synthesis: none;
|
|
11
|
+
text-rendering: optimizeLegibility;
|
|
12
|
+
-webkit-font-smoothing: antialiased;
|
|
13
|
+
-moz-osx-font-smoothing: grayscale;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
a {
|
|
17
|
+
font-weight: 500;
|
|
18
|
+
color: #646cff;
|
|
19
|
+
text-decoration: inherit;
|
|
20
|
+
}
|
|
21
|
+
a:hover {
|
|
22
|
+
color: #535bf2;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
body {
|
|
26
|
+
margin: 0;
|
|
27
|
+
display: flex;
|
|
28
|
+
place-items: center;
|
|
29
|
+
min-width: 320px;
|
|
30
|
+
min-height: 100vh;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
h1 {
|
|
34
|
+
font-size: 3.2em;
|
|
35
|
+
line-height: 1.1;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
button {
|
|
39
|
+
border-radius: 8px;
|
|
40
|
+
border: 1px solid transparent;
|
|
41
|
+
padding: 0.6em 1.2em;
|
|
42
|
+
font-size: 1em;
|
|
43
|
+
font-weight: 500;
|
|
44
|
+
font-family: inherit;
|
|
45
|
+
background-color: #1a1a1a;
|
|
46
|
+
cursor: pointer;
|
|
47
|
+
transition: border-color 0.25s;
|
|
48
|
+
}
|
|
49
|
+
button:hover {
|
|
50
|
+
border-color: #646cff;
|
|
51
|
+
}
|
|
52
|
+
button:focus,
|
|
53
|
+
button:focus-visible {
|
|
54
|
+
outline: 4px auto -webkit-focus-ring-color;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.card {
|
|
58
|
+
padding: 2em;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
#app {
|
|
62
|
+
max-width: 1280px;
|
|
63
|
+
margin: 0 auto;
|
|
64
|
+
padding: 2rem;
|
|
65
|
+
text-align: center;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
@media (prefers-color-scheme: light) {
|
|
69
|
+
:root {
|
|
70
|
+
color: #213547;
|
|
71
|
+
background-color: #ffffff;
|
|
72
|
+
}
|
|
73
|
+
a:hover {
|
|
74
|
+
color: #747bff;
|
|
75
|
+
}
|
|
76
|
+
button {
|
|
77
|
+
background-color: #f9f9f9;
|
|
78
|
+
}
|
|
79
|
+
}
|