jcicl 0.0.132 → 0.0.135

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/Search/Search.js CHANGED
@@ -1,20 +1,31 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { n as h } from "../.chunks/emotion-styled.browser.esm.js";
3
- import r from "../theme.js";
4
- import p from "../Icon/Icon.js";
5
- import { Button as m } from "../Button/Button.js";
6
- import { c as a } from "../.chunks/createSvgIcon.js";
7
- import { T as u } from "../.chunks/TextField.js";
8
- const g = a(/* @__PURE__ */ o("path", {
1
+ import { jsx as r, jsxs as v } from "react/jsx-runtime";
2
+ import { useState as S } from "react";
3
+ import { n as s } from "../.chunks/emotion-styled.browser.esm.js";
4
+ import { c as l } from "../.chunks/emotion-react.browser.esm.js";
5
+ import e from "../theme.js";
6
+ import z from "../Icon/Icon.js";
7
+ import { Button as p } from "../Button/Button.js";
8
+ import { c as m } from "../.chunks/createSvgIcon.js";
9
+ import { T as y } from "../.chunks/TextField.js";
10
+ const k = m(/* @__PURE__ */ r("path", {
9
11
  d: "M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"
10
- }), "Search"), b = a(/* @__PURE__ */ o("path", {
12
+ }), "Search"), C = m(/* @__PURE__ */ r("path", {
11
13
  d: "M10 18h4v-2h-4zM3 6v2h18V6zm3 7h12v-2H6z"
12
- }), "FilterList"), x = h(u)(({ borderColor: e, borderFocusColor: t, shadowTertiary: i }) => ({
13
- backgroundColor: r.colors.white,
14
+ }), "FilterList"), M = s("div")(() => ({
15
+ ...l`
16
+ position: relative;
17
+ width: 100%;
18
+ display: flex;
19
+ flex-direction: column;
20
+ align-items: center;
21
+ `
22
+ })), R = s(y)(({ borderColor: o, borderFocusColor: i, shadowTertiary: a }) => ({
23
+ backgroundColor: e.colors.white,
14
24
  borderRadius: "1rem",
15
25
  height: "2rem",
16
- border: `1px solid ${e}`,
26
+ border: `1px solid ${o}`,
17
27
  transition: "313ms all ease-out",
28
+ zIndex: 1327,
18
29
  ".MuiInputBase-root": {
19
30
  padding: "0 2px"
20
31
  },
@@ -31,7 +42,7 @@ const g = a(/* @__PURE__ */ o("path", {
31
42
  },
32
43
  "&:hover": {
33
44
  svg: {
34
- boxShadow: `0 0 2px ${r.colors.midnight}`
45
+ boxShadow: `0 0 2px ${e.colors.midnight}`
35
46
  }
36
47
  }
37
48
  },
@@ -39,8 +50,8 @@ const g = a(/* @__PURE__ */ o("path", {
39
50
  borderRadius: "50%",
40
51
  "&:hover": {
41
52
  svg: {
42
- backgroundColor: t,
43
- fill: r.colors.white
53
+ backgroundColor: i,
54
+ fill: e.colors.white
44
55
  },
45
56
  ".MuiTouchRipple-root": {
46
57
  backgroundColor: "transparent"
@@ -59,11 +70,11 @@ const g = a(/* @__PURE__ */ o("path", {
59
70
  alignItems: "center"
60
71
  },
61
72
  "&:hover, :focus-visible, :focus-within": {
62
- borderColor: t,
63
- boxShadow: i
73
+ borderColor: i,
74
+ boxShadow: a
64
75
  },
65
76
  "&:focus-visible": {
66
- borderColor: e,
77
+ borderColor: o,
67
78
  borderWidth: "2px"
68
79
  },
69
80
  fieldset: {
@@ -75,54 +86,107 @@ const g = a(/* @__PURE__ */ o("path", {
75
86
  border: "none"
76
87
  }
77
88
  }
78
- })), C = ({
79
- borderColor: e = r.colors.green,
89
+ })), $ = s("div")(({ open: o }) => ({
90
+ ...l`
91
+ box-sizing: border-box;
92
+ position: absolute;
93
+ width: calc(50%);
94
+ top: 1rem;
95
+ right: 3px;
96
+ z-index: 1313;
97
+ display: flex;
98
+ gap: 1rem;
99
+ background-color: ${e.colors.white};
100
+ box-shadow: ${e.boxShadows.midnight};
101
+ padding: ${o ? "2rem 1rem" : 0};
102
+ transition: 313ms all ease-in-out;
103
+ display: grid;
104
+ grid-template-rows: ${o ? "1fr" : "0fr"};
105
+
106
+ .filtersWrapper {
107
+ overflow: hidden;
108
+ }
109
+
110
+ @media screen and (max-width: ${e.screenSizes.tablet}) {
111
+ width: calc(100% - 6px);
112
+ }
113
+ `
114
+ })), F = s("div")(() => ({
115
+ ...l`
116
+ display: grid;
117
+ grid-template-columns: repeat(3, 1fr);
118
+ grid-row-gap: 1.3rem;
119
+ grid-column-gap: 1.3rem;
120
+ justify-content: center;
121
+ box-sizing: border-box;
122
+ width: 100%;
123
+
124
+ @media screen and (max-width: ${e.screenSizes.tablet}) {
125
+ display: grid;
126
+ grid-template-columns: repeat(2, 1fr);
127
+ }
128
+
129
+ @media screen and (max-width: 786px) {
130
+ grid-template-columns: repeat(1, 1fr);
131
+ }
132
+
133
+ .filtersButton {
134
+ width: 100%;
135
+ justify-self: center;
136
+ }
137
+ `
138
+ })), P = ({
139
+ borderColor: o = e.colors.green,
80
140
  // border primary
81
- borderFocusColor: t = r.colors.darkGreen,
141
+ borderFocusColor: i = e.colors.darkGreen,
82
142
  // icon primary
83
- shadowTertiary: i = r.boxShadows.darkGreenThick,
84
- onSearch: n,
85
- ...d
143
+ shadowTertiary: a = e.boxShadows.darkGreenThick,
144
+ filters: t,
145
+ onSearch: d,
146
+ ...h
86
147
  }) => {
87
- const l = (s) => {
88
- s.preventDefault(), s.key === "Enter" && n && n();
89
- }, c = { borderColor: e, borderFocusColor: t, shadowTertiary: i, ...d };
90
- return /* @__PURE__ */ o(
91
- x,
92
- {
93
- slotProps: {
94
- input: {
95
- startAdornment: /* @__PURE__ */ o(
96
- m,
97
- {
98
- variant: "icon",
99
- size: 28,
100
- onClick: n,
101
- color: t,
102
- highlightColor: "transparent",
103
- children: /* @__PURE__ */ o(g, {})
104
- }
105
- ),
106
- endAdornment: /* @__PURE__ */ o(
107
- p,
108
- {
109
- onClick: () => "",
110
- icon: /* @__PURE__ */ o(b, {}),
111
- backgroundColor: e,
112
- iconColor: r.colors.white,
113
- size: 28,
114
- padding: 3
115
- }
116
- )
117
- }
118
- },
119
- type: "search",
120
- ...c,
121
- onKeyUp: l
122
- }
123
- );
148
+ const [c, g] = S(!1), u = (n) => {
149
+ n.preventDefault(), n.key === "Enter" && d && d();
150
+ }, x = { borderColor: o, borderFocusColor: i, shadowTertiary: a, ...h }, b = t && t.length > 0;
151
+ return /* @__PURE__ */ v(M, { children: [
152
+ /* @__PURE__ */ r(
153
+ R,
154
+ {
155
+ slotProps: {
156
+ input: {
157
+ startAdornment: /* @__PURE__ */ r(
158
+ p,
159
+ {
160
+ variant: "icon",
161
+ size: 28,
162
+ onClick: d,
163
+ color: i,
164
+ highlightColor: "transparent",
165
+ children: /* @__PURE__ */ r(k, {})
166
+ }
167
+ ),
168
+ endAdornment: b && /* @__PURE__ */ r(
169
+ z,
170
+ {
171
+ onClick: () => g(!c),
172
+ icon: /* @__PURE__ */ r(C, {}),
173
+ backgroundColor: o,
174
+ iconColor: e.colors.white,
175
+ size: 28,
176
+ padding: 3
177
+ }
178
+ )
179
+ }
180
+ },
181
+ type: "search",
182
+ ...x,
183
+ onKeyUp: u
184
+ }
185
+ ),
186
+ /* @__PURE__ */ r($, { open: c, children: /* @__PURE__ */ r(F, { className: "filtersWrapper", children: t == null ? void 0 : t.map(({ name: n, onClick: f, active: w }) => /* @__PURE__ */ r(p, { className: "filtersButton", variant: "filter", onClick: f, active: w, children: n }, n)) }) })
187
+ ] });
124
188
  };
125
189
  export {
126
- C as Search,
127
- C as default
190
+ P as Search,
191
+ P as default
128
192
  };
package/Search/index.d.ts CHANGED
@@ -1 +1 @@
1
- export { default, type SearchProps, type SearchFilter } from './Search';
1
+ export { default, type SearchProps, type SearchFilterProps } from './Search';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "jcicl",
3
3
  "private": false,
4
- "version": "0.0.132",
4
+ "version": "0.0.135",
5
5
  "description": "Component library for the websites of Johnson County Iowa",
6
6
  "license": "MIT",
7
7
  "homepage": "https://devops.jc.net/JCIT/Business%20Solutions%20Delivery/_git/JCComponentLibrary?path=%2FREADME.md&version=GBmaster",