@clubmed/trident-ui 1.3.0-beta.4 → 1.3.0-beta.5

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 (83) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/assets/style.css +1 -1
  3. package/chunks/plugin.js +53 -0
  4. package/chunks/plugin.js.map +1 -0
  5. package/molecules/Arrows/Arrows.d.ts +16 -0
  6. package/molecules/Arrows/Arrows.js +66 -0
  7. package/molecules/Arrows/Arrows.js.map +1 -0
  8. package/molecules/Arrows/ArrowsLabels.d.js +2 -0
  9. package/molecules/Arrows/ArrowsLabels.d.js.map +1 -0
  10. package/molecules/Arrows.d.ts +1 -50
  11. package/molecules/Arrows.js +2 -56
  12. package/molecules/Arrows.js.map +1 -1
  13. package/molecules/Buttons/ArrowButton.d.ts +7 -0
  14. package/molecules/Buttons/ArrowButton.js +14 -0
  15. package/molecules/Buttons/ArrowButton.js.map +1 -0
  16. package/molecules/Buttons/Button.d.ts +13 -34
  17. package/molecules/Buttons/Button.js +50 -42
  18. package/molecules/Buttons/Button.js.map +1 -1
  19. package/molecules/Buttons/ButtonAnchor.d.ts +2 -3
  20. package/molecules/Buttons/ButtonAnchor.js +14 -36
  21. package/molecules/Buttons/ButtonAnchor.js.map +1 -1
  22. package/molecules/Buttons/ButtonContent.d.ts +11 -3
  23. package/molecules/Buttons/ButtonContent.js +13 -6
  24. package/molecules/Buttons/ButtonContent.js.map +1 -1
  25. package/molecules/Buttons/InertButton.d.ts +4 -0
  26. package/molecules/Buttons/InertButton.js +14 -31
  27. package/molecules/Buttons/InertButton.js.map +1 -1
  28. package/molecules/Buttons/v2/Button.d.ts +10 -0
  29. package/molecules/Buttons/v2/Button.js +32 -0
  30. package/molecules/Buttons/v2/Button.js.map +1 -0
  31. package/molecules/Buttons/v2/Button.type.d.ts +54 -0
  32. package/molecules/Buttons/v2/Button.type.js +42 -0
  33. package/molecules/Buttons/v2/Button.type.js.map +1 -0
  34. package/molecules/Buttons/v2/ButtonAnchor.d.ts +12 -0
  35. package/molecules/Buttons/v2/ButtonAnchor.js +32 -0
  36. package/molecules/Buttons/v2/ButtonAnchor.js.map +1 -0
  37. package/molecules/Buttons/v2/FakeButton.d.ts +7 -0
  38. package/molecules/Buttons/v2/FakeButton.js +27 -0
  39. package/molecules/Buttons/v2/FakeButton.js.map +1 -0
  40. package/molecules/Forms/NumberField.d.ts +15 -15
  41. package/molecules/Forms/NumberField.js +68 -68
  42. package/molecules/Forms/NumberField.js.map +1 -1
  43. package/molecules/Pagination.d.ts +2 -1
  44. package/molecules/Pagination.js +68 -46
  45. package/molecules/Pagination.js.map +1 -1
  46. package/molecules/Popin.js +16 -16
  47. package/molecules/Popin.js.map +1 -1
  48. package/package.json +11 -11
  49. package/styles/globals.css +12 -15
  50. package/tailwind/colors.d.ts +38 -0
  51. package/tailwind/colors.js +44 -0
  52. package/tailwind/colors.js.map +1 -0
  53. package/tailwind/plugins/animationDelay.d.ts +4 -0
  54. package/tailwind/plugins/animationDelay.js +15 -0
  55. package/tailwind/plugins/animationDelay.js.map +1 -0
  56. package/tailwind/plugins/hocus.d.ts +4 -0
  57. package/tailwind/plugins/hocus.js +11 -0
  58. package/tailwind/plugins/hocus.js.map +1 -0
  59. package/tailwind/plugins/lineClampFix.d.ts +4 -0
  60. package/tailwind/plugins/lineClampFix.js +13 -0
  61. package/tailwind/plugins/lineClampFix.js.map +1 -0
  62. package/tailwind/plugins/popover.d.ts +4 -0
  63. package/tailwind/plugins/popover.js +8 -0
  64. package/tailwind/plugins/popover.js.map +1 -0
  65. package/tailwind/plugins/startingStyle.d.ts +4 -0
  66. package/tailwind/plugins/startingStyle.js +8 -0
  67. package/tailwind/plugins/startingStyle.js.map +1 -0
  68. package/tailwind/plugins/transitionBehavior.d.ts +4 -0
  69. package/tailwind/plugins/transitionBehavior.js +11 -0
  70. package/tailwind/plugins/transitionBehavior.js.map +1 -0
  71. package/tailwind/tailwind.preset.d.ts +730 -510
  72. package/tailwind/tailwind.preset.js +705 -631
  73. package/tailwind/tailwind.preset.js.map +1 -1
  74. package/types/Colors.d.js +2 -0
  75. package/types/Colors.d.js.map +1 -0
  76. package/types/ScrollerLabels.d.js +2 -0
  77. package/types/ScrollerLabels.d.js.map +1 -0
  78. package/molecules/Buttons/Button.helpers.d.ts +0 -8
  79. package/molecules/Buttons/Button.helpers.js +0 -12
  80. package/molecules/Buttons/Button.helpers.js.map +0 -1
  81. package/molecules/Buttons/Button.themes.d.ts +0 -1
  82. package/molecules/Buttons/Button.themes.js +0 -25
  83. package/molecules/Buttons/Button.themes.js.map +0 -1
@@ -1,121 +1,121 @@
1
- import { jsx as m, jsxs as C } from "react/jsx-runtime";
1
+ import { jsx as d, jsxs as C } from "react/jsx-runtime";
2
2
  import { c as g } from "../../chunks/index.js";
3
- import { useId as y } from "react";
4
- import { useValue as I } from "../../hooks/useValue.js";
3
+ import { useId as I } from "react";
4
+ import { useValue as y } from "../../hooks/useValue.js";
5
5
  import { Button as v } from "../Buttons/Button.js";
6
- import { FormControl as w } from "./FormControl.js";
7
- const F = { width: "28px", height: "28px" };
8
- function S(o) {
9
- const e = y(), {
10
- id: n = e,
11
- name: r = n,
12
- value: d = 0,
13
- onChange: c,
14
- min: t = 0,
15
- max: i = 10,
16
- disabled: l = !1,
6
+ import { FormControl as F } from "./FormControl.js";
7
+ const V = { width: "28px", height: "28px" };
8
+ function T(c) {
9
+ const e = I(), {
10
+ id: i = e,
11
+ name: n = i,
12
+ value: o = 0,
13
+ onChange: m,
14
+ min: r = 0,
15
+ max: a = 10,
16
+ disabled: s = !1,
17
17
  dataTestId: u = "NumberField",
18
18
  ...f
19
- } = o, { value: a, setValue: s } = I({
20
- name: r,
21
- defaultValue: d,
19
+ } = c, { value: t, setValue: l } = y({
20
+ name: n,
21
+ defaultValue: o,
22
22
  formatter: Number,
23
- onChange: c
23
+ onChange: m
24
24
  });
25
25
  return {
26
26
  ...f,
27
- id: n,
28
- min: t,
29
- max: i,
30
- name: r,
31
- value: a,
27
+ id: i,
28
+ min: r,
29
+ max: a,
30
+ name: n,
31
+ value: t,
32
32
  dataTestId: u,
33
- disabled: l,
33
+ disabled: s,
34
34
  handleChange: (h) => {
35
- const N = Number(h.target.value);
36
- N >= t && N <= i && s(Number(N));
35
+ const x = Number(h.target.value);
36
+ x >= r && x <= a && l(Number(x));
37
37
  },
38
38
  increase: () => {
39
- a < i && s(a + 1);
39
+ t < a && l(t + 1);
40
40
  },
41
41
  decrease: () => {
42
- a > t && s(a - 1);
42
+ t > r && l(t - 1);
43
43
  }
44
44
  };
45
45
  }
46
- const k = (o) => {
46
+ const M = (c) => {
47
47
  const {
48
48
  disabled: e,
49
- min: n,
50
- max: r,
51
- label: d,
52
- description: c,
53
- id: t,
54
- dataTestId: i,
55
- value: l,
49
+ min: i,
50
+ max: n,
51
+ label: o,
52
+ description: m,
53
+ id: r,
54
+ dataTestId: a,
55
+ value: s,
56
56
  handleChange: u,
57
57
  increase: f,
58
- decrease: a,
59
- errorMessage: s,
60
- validationStatus: x,
58
+ decrease: t,
59
+ errorMessage: l,
60
+ validationStatus: N,
61
61
  hideRequiredStar: p,
62
62
  required: b,
63
63
  ...h
64
- } = S(o);
65
- return /* @__PURE__ */ m(
66
- w,
64
+ } = T(c);
65
+ return /* @__PURE__ */ d(
66
+ F,
67
67
  {
68
- id: t,
69
- label: d,
70
- description: c,
71
- className: g("flex items-center justify-between", o.className),
68
+ id: r,
69
+ label: o,
70
+ description: m,
71
+ className: g("flex items-center justify-between", c.className),
72
72
  dataName: "NumberField",
73
- dataTestId: i,
74
- errorMessage: s,
75
- validationStatus: x,
73
+ dataTestId: a,
74
+ errorMessage: l,
75
+ validationStatus: N,
76
76
  disabled: e,
77
77
  required: b,
78
78
  hideRequiredStar: p,
79
79
  layout: "vertical",
80
80
  children: /* @__PURE__ */ C("div", { className: "flex items-center gap-x-8", children: [
81
- /* @__PURE__ */ m(
81
+ /* @__PURE__ */ d(
82
82
  v,
83
83
  {
84
- theme: "yellow",
85
- onClick: a,
86
- variant: "icon",
87
- disabled: l <= n || e,
84
+ onClick: t,
85
+ variant: "circle",
86
+ disabled: s <= i || e,
88
87
  icon: "MinusDefault",
89
- label: "MINUS"
88
+ "aria-label": "Decrease",
89
+ "data-testid": `${a}-decrease`
90
90
  }
91
91
  ),
92
- /* @__PURE__ */ m(
92
+ /* @__PURE__ */ d(
93
93
  "input",
94
94
  {
95
95
  ...h,
96
96
  className: g("text-b2 text-center font-normal outline-none", {
97
97
  "bg-pearl text-grey": e
98
98
  }),
99
- style: F,
99
+ style: V,
100
100
  type: "number",
101
- id: t,
101
+ id: r,
102
102
  onChange: u,
103
103
  disabled: e,
104
104
  required: b,
105
- value: l,
106
- min: n,
107
- max: r
105
+ value: s,
106
+ min: i,
107
+ max: n
108
108
  }
109
109
  ),
110
- /* @__PURE__ */ m(
110
+ /* @__PURE__ */ d(
111
111
  v,
112
112
  {
113
- theme: "yellow",
114
113
  onClick: f,
115
- variant: "icon",
116
- disabled: l >= r || e,
114
+ variant: "circle",
115
+ "aria-label": "Increase",
116
+ disabled: s >= n || e,
117
117
  icon: "PlusDefault",
118
- label: "PLUS"
118
+ "data-testid": `${a}-increase`
119
119
  }
120
120
  )
121
121
  ] })
@@ -123,7 +123,7 @@ const k = (o) => {
123
123
  );
124
124
  };
125
125
  export {
126
- k as NumberField,
127
- S as useNumberField
126
+ M as NumberField,
127
+ T as useNumberField
128
128
  };
129
129
  //# sourceMappingURL=NumberField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NumberField.js","sources":["../../../lib/molecules/Forms/NumberField.tsx"],"sourcesContent":["import classnames from 'classnames';\n\nimport { type ChangeEvent, useId } from 'react';\n\nimport { useValue } from '@/hooks/useValue.js';\nimport { Button } from '../Buttons/Button';\nimport { FormControl, type FormControlProps } from './FormControl.js';\n\ninterface NumberFieldProps extends FormControlProps<number> {\n min?: number;\n max?: number;\n}\n\nconst INPUT_STYLE = { width: '28px', height: '28px' };\n\nexport function useNumberField(props: NumberFieldProps) {\n const internalId = useId();\n\n const {\n id = internalId,\n name = id,\n value: initialValue = 0,\n onChange,\n min = 0,\n max = 10,\n disabled = false,\n dataTestId = 'NumberField',\n ...rest\n } = props;\n\n const { value, setValue } = useValue<number, string | number | boolean>({\n name: name!,\n defaultValue: initialValue,\n formatter: Number,\n onChange,\n });\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n const newValue = Number(e.target.value);\n\n if (newValue >= min && newValue <= max) {\n setValue(Number(newValue));\n }\n };\n\n const increase = () => {\n if (value < max) {\n setValue(value + 1);\n }\n };\n\n const decrease = () => {\n if (value > min) {\n setValue(value - 1);\n }\n };\n\n return {\n ...rest,\n id,\n min,\n max,\n name,\n value,\n dataTestId,\n disabled,\n handleChange,\n increase,\n decrease,\n };\n}\n\nexport const NumberField = (props: NumberFieldProps) => {\n const {\n disabled,\n min,\n max,\n label,\n description,\n id,\n dataTestId,\n value,\n handleChange,\n increase,\n decrease,\n errorMessage,\n validationStatus,\n hideRequiredStar,\n required,\n ...rest\n } = useNumberField(props);\n\n return (\n <FormControl\n id={id}\n label={label}\n description={description}\n className={classnames('flex items-center justify-between', props.className)}\n dataName=\"NumberField\"\n dataTestId={dataTestId}\n errorMessage={errorMessage}\n validationStatus={validationStatus}\n disabled={disabled}\n required={required}\n hideRequiredStar={hideRequiredStar}\n layout=\"vertical\"\n >\n <div className=\"flex items-center gap-x-8\">\n <Button\n theme=\"yellow\"\n onClick={decrease}\n variant=\"icon\"\n disabled={value <= min || disabled}\n icon=\"MinusDefault\"\n // TODO have this from prop at some time\n label=\"MINUS\"\n />\n <input\n {...rest}\n className={classnames('text-b2 text-center font-normal outline-none', {\n 'bg-pearl text-grey': disabled,\n })}\n style={INPUT_STYLE}\n type=\"number\"\n id={id}\n onChange={handleChange}\n disabled={disabled}\n required={required}\n value={value}\n min={min}\n max={max}\n />\n <Button\n theme=\"yellow\"\n onClick={increase}\n variant=\"icon\"\n disabled={value >= max || disabled}\n icon=\"PlusDefault\"\n // TODO have this from prop at some time\n label=\"PLUS\"\n />\n </div>\n </FormControl>\n );\n};\n"],"names":["INPUT_STYLE","useNumberField","props","internalId","useId","id","name","initialValue","onChange","min","max","disabled","dataTestId","rest","value","setValue","useValue","e","newValue","NumberField","label","description","handleChange","increase","decrease","errorMessage","validationStatus","hideRequiredStar","required","jsx","FormControl","classnames","jsxs","Button"],"mappings":"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"}
1
+ {"version":3,"file":"NumberField.js","sources":["../../../lib/molecules/Forms/NumberField.tsx"],"sourcesContent":["import classnames from 'classnames';\n\nimport { type ChangeEvent, useId } from 'react';\n\nimport { useValue } from '@/hooks/useValue.js';\nimport { Button } from '../Buttons/Button';\nimport { FormControl, type FormControlProps } from './FormControl.js';\n\ninterface NumberFieldProps extends FormControlProps<number> {\n min?: number;\n max?: number;\n}\n\nconst INPUT_STYLE = { width: '28px', height: '28px' };\n\nexport function useNumberField(props: NumberFieldProps) {\n const internalId = useId();\n\n const {\n id = internalId,\n name = id,\n value: initialValue = 0,\n onChange,\n min = 0,\n max = 10,\n disabled = false,\n dataTestId = 'NumberField',\n ...rest\n } = props;\n\n const { value, setValue } = useValue<number, string | number | boolean>({\n name: name!,\n defaultValue: initialValue,\n formatter: Number,\n onChange,\n });\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n const newValue = Number(e.target.value);\n\n if (newValue >= min && newValue <= max) {\n setValue(Number(newValue));\n }\n };\n\n const increase = () => {\n if (value < max) {\n setValue(value + 1);\n }\n };\n\n const decrease = () => {\n if (value > min) {\n setValue(value - 1);\n }\n };\n\n return {\n ...rest,\n id,\n min,\n max,\n name,\n value,\n dataTestId,\n disabled,\n handleChange,\n increase,\n decrease,\n };\n}\n\nexport const NumberField = (props: NumberFieldProps) => {\n const {\n disabled,\n min,\n max,\n label,\n description,\n id,\n dataTestId,\n value,\n handleChange,\n increase,\n decrease,\n errorMessage,\n validationStatus,\n hideRequiredStar,\n required,\n ...rest\n } = useNumberField(props);\n\n return (\n <FormControl\n id={id}\n label={label}\n description={description}\n className={classnames('flex items-center justify-between', props.className)}\n dataName=\"NumberField\"\n dataTestId={dataTestId}\n errorMessage={errorMessage}\n validationStatus={validationStatus}\n disabled={disabled}\n required={required}\n hideRequiredStar={hideRequiredStar}\n layout=\"vertical\"\n >\n <div className=\"flex items-center gap-x-8\">\n <Button\n onClick={decrease}\n variant=\"circle\"\n disabled={value <= min || disabled}\n icon=\"MinusDefault\"\n aria-label=\"Decrease\"\n data-testid={`${dataTestId}-decrease`}\n />\n <input\n {...rest}\n className={classnames('text-b2 text-center font-normal outline-none', {\n 'bg-pearl text-grey': disabled,\n })}\n style={INPUT_STYLE}\n type=\"number\"\n id={id}\n onChange={handleChange}\n disabled={disabled}\n required={required}\n value={value}\n min={min}\n max={max}\n />\n <Button\n onClick={increase}\n variant=\"circle\"\n aria-label=\"Increase\"\n disabled={value >= max || disabled}\n icon=\"PlusDefault\"\n data-testid={`${dataTestId}-increase`}\n />\n </div>\n </FormControl>\n );\n};\n"],"names":["INPUT_STYLE","useNumberField","props","internalId","useId","id","name","initialValue","onChange","min","max","disabled","dataTestId","rest","value","setValue","useValue","e","newValue","NumberField","label","description","handleChange","increase","decrease","errorMessage","validationStatus","hideRequiredStar","required","jsx","FormControl","classnames","jsxs","Button"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { type FunctionComponent, type HTMLAttributes } from 'react';
2
2
  import { generatePagination } from './Pagination.helper';
3
+ import type { ScrollerLabels } from '../types/ScrollerLabels';
3
4
  export interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, 'onChange'> {
4
5
  /**
5
6
  * The current page number (must be >= 1)
@@ -28,7 +29,7 @@ export interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, 'onCh
28
29
  /**
29
30
  * UI Labels
30
31
  */
31
- labels?: Record<'next' | 'previous', string>;
32
+ labels: ScrollerLabels;
32
33
  /**
33
34
  * A pagination factory to generate an array of Pagination elements (pageNumber, ellipsis, next button, previous button).
34
35
  */
@@ -1,36 +1,36 @@
1
1
  "use client";
2
- import { jsx as e, jsxs as n } from "react/jsx-runtime";
3
- import { c as a } from "../chunks/index.js";
2
+ import { jsx as e, jsxs as s } from "react/jsx-runtime";
3
+ import { c as l } from "../chunks/index.js";
4
4
  import { Fragment as k } from "react";
5
- import { showMobileEllipsis as b, hidePageButtonForMobile as N, generatePagination as y } from "./Pagination.helper.js";
5
+ import { showMobileEllipsis as b, hidePageButtonForMobile as y, generatePagination as N } from "./Pagination.helper.js";
6
6
  import { Button as x } from "./Buttons/Button.js";
7
7
  import { Icon as h } from "@clubmed/trident-icons";
8
- const g = () => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
8
+ const j = () => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
9
9
  "div",
10
10
  {
11
11
  "aria-controls": "page-content",
12
- className: "text-b3 mx-8 ml-4 hidden size-48 items-center justify-center text-base font-semibold text-black md:flex",
12
+ className: "text-base mx-8 ml-4 hidden size-48 items-center justify-center text-b3 font-semibold text-black md:flex",
13
13
  children: "…"
14
14
  }
15
15
  ) }, "desktop-ellipsis"), u = () => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
16
16
  "div",
17
17
  {
18
18
  "aria-controls": "page-content",
19
- className: "text-b3 mx-8 ml-4 flex size-48 items-center justify-center text-base font-semibold text-black md:hidden",
19
+ className: "text-base mx-8 ml-4 flex size-48 items-center justify-center text-b3 font-semibold text-black md:hidden",
20
20
  children: "…"
21
21
  }
22
22
  ) }, "mobile-ellipsis"), E = ({
23
23
  defaultPage: i,
24
- buttonClassName: o = "md:mr-32",
25
- buttonLabelClassName: c = "md:flex",
24
+ buttonClassName: c = "md:mr-32",
25
+ buttonLabelClassName: o = "md:flex",
26
26
  className: p,
27
- onChange: s,
28
- paginationFactory: v = y,
29
- count: l,
30
- labels: m = {},
27
+ labels: d = {},
28
+ onChange: n,
29
+ paginationFactory: v = N,
30
+ count: r,
31
31
  ...f
32
32
  }) => {
33
- const d = v(i, l);
33
+ const m = v(i, r);
34
34
  return /* @__PURE__ */ e(
35
35
  "nav",
36
36
  {
@@ -38,83 +38,105 @@ const g = () => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ e(
38
38
  "data-name": "Pagination",
39
39
  role: "navigation",
40
40
  "aria-label": "pagination navigation",
41
- className: a("border-t-sand flex justify-center", p),
42
- children: /* @__PURE__ */ e("ul", { className: "mt-12 flex", children: d.map((t, r) => {
41
+ className: l("flex justify-center border-t-sand", p),
42
+ children: /* @__PURE__ */ e("ul", { className: "mt-12 flex", children: m.map((t, a) => {
43
43
  switch (t.type) {
44
44
  case "pageNumber":
45
- return /* @__PURE__ */ n(k, { children: [
46
- t.value === l && b(t.value, i, l) && /* @__PURE__ */ e(u, {}),
45
+ return /* @__PURE__ */ s(k, { children: [
46
+ t.value === r && b(t.value, i, r) && /* @__PURE__ */ e(u, {}),
47
47
  /* @__PURE__ */ e(
48
48
  "li",
49
49
  {
50
- className: a("mr-2", {
51
- "hidden md:flex": N(t.value, i, l)
50
+ className: l("mr-2", {
51
+ "hidden md:flex": y(t.value, i, r)
52
52
  }),
53
53
  children: t.value === i ? /* @__PURE__ */ e(
54
54
  x,
55
55
  {
56
- label: t.value.toString(),
57
- theme: "black",
58
56
  "aria-current": "page",
59
- variant: "monogram",
60
- className: "text-white"
57
+ className: "text-white",
58
+ color: "black",
59
+ variant: "circle",
60
+ children: t.value.toString()
61
61
  }
62
62
  ) : /* @__PURE__ */ e(
63
63
  x,
64
64
  {
65
- label: t.value.toString(),
66
- onClick: () => s(t.value),
67
- theme: "white",
68
- variant: "monogram",
69
- className: a("size-48 items-center", {
70
- "mx-8 flex shrink-0 cursor-pointer justify-center self-start": r === d.length - 1
71
- })
65
+ className: l("size-48 items-center", {
66
+ "mx-8 flex shrink-0 cursor-pointer justify-center self-start": a === m.length - 1
67
+ }),
68
+ onClick: () => n(t.value),
69
+ color: "white",
70
+ variant: "circle",
71
+ children: t.value.toString()
72
72
  }
73
73
  )
74
74
  }
75
75
  ),
76
- t.value === 1 && b(t.value, i, l) && /* @__PURE__ */ e(u, {})
77
- ] }, `pagination-pageNumber-${r}`);
76
+ t.value === 1 && b(t.value, i, r) && /* @__PURE__ */ e(u, {})
77
+ ] }, `pagination-pageNumber-${a}`);
78
78
  case "ellipsis":
79
- return /* @__PURE__ */ e(g, {}, `pagination-ellipsis-${r}`);
79
+ return /* @__PURE__ */ e(j, {}, `pagination-ellipsis-${a}`);
80
80
  case "previousButton":
81
- return /* @__PURE__ */ e("li", { className: a(o), children: /* @__PURE__ */ n(
81
+ return /* @__PURE__ */ e("li", { className: l(c), children: /* @__PURE__ */ s(
82
82
  "button",
83
83
  {
84
84
  "data-action": "previous",
85
85
  "aria-controls": "page-content",
86
86
  "aria-label": `page ${i - 1}`,
87
- className: a(
88
- "text:black hocus:text-black-active active:text-black-active text-b3 disabled:text-grey mx-8 flex h-48 shrink-0 items-center justify-center self-start text-base font-semibold",
87
+ className: l(
88
+ "text:black text-base mx-8 flex h-48 shrink-0 items-center justify-center self-start text-b3 font-semibold active:text-black-active disabled:text-grey hocus:text-black-active",
89
89
  {
90
- "disabled:text-grey": t.disabled
90
+ "pointer-events-none disabled:text-grey": t.disabled
91
91
  }
92
92
  ),
93
- onClick: () => s(i - 1),
94
93
  disabled: t.disabled,
94
+ onClick: () => n(i - 1),
95
+ type: "button",
95
96
  children: [
96
97
  /* @__PURE__ */ e(h, { name: "ArrowDefaultLeft", width: "30px" }),
97
- /* @__PURE__ */ e("span", { className: a("ml-4 hidden border-b", c), children: m.previous || "Previous" })
98
+ /* @__PURE__ */ e(
99
+ "span",
100
+ {
101
+ className: l(
102
+ "ml-4 hidden border-b",
103
+ { "border-black": !t.disabled },
104
+ o
105
+ ),
106
+ children: d.previous
107
+ }
108
+ )
98
109
  ]
99
110
  }
100
111
  ) }, "pagination-labels.previous");
101
112
  case "nextButton":
102
- return /* @__PURE__ */ e("li", { className: a(o), children: /* @__PURE__ */ n(
113
+ return /* @__PURE__ */ e("li", { className: l(c), children: /* @__PURE__ */ s(
103
114
  "button",
104
115
  {
105
- "data-action": "next",
106
116
  "aria-controls": "page-content",
107
117
  "aria-label": `page ${i + 1}`,
108
- className: a(
109
- "text:black hocus:text-black-active active:text-black-active text-b3 disabled:text-grey mx-8 mb-5 flex h-48 shrink-0 items-center justify-center self-start text-base font-semibold",
118
+ className: l(
119
+ "text:black mb-5 text-base mx-8 flex h-48 shrink-0 items-center justify-center self-start text-b3 font-semibold active:text-black-active disabled:text-grey hocus:text-black-active",
110
120
  {
111
- "disabled:text-grey": t.disabled
121
+ "pointer-events-none disabled:text-grey": t.disabled
112
122
  }
113
123
  ),
114
- onClick: () => s(i + 1),
124
+ "data-action": "next",
115
125
  disabled: t.disabled,
126
+ onClick: () => n(i + 1),
127
+ type: "button",
116
128
  children: [
117
- /* @__PURE__ */ e("span", { className: a("ml-4 hidden border-b", c), children: m.next || "Next" }),
129
+ /* @__PURE__ */ e(
130
+ "span",
131
+ {
132
+ className: l(
133
+ "ml-4 hidden border-b",
134
+ { "border-black": !t.disabled },
135
+ o
136
+ ),
137
+ children: d.next
138
+ }
139
+ ),
118
140
  /* @__PURE__ */ e(h, { name: "ArrowDefaultRight", width: "30px" })
119
141
  ]
120
142
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","sources":["../../lib/molecules/Pagination.tsx"],"sourcesContent":["'use client';\n\nimport classnames from 'classnames';\nimport { Fragment, type FunctionComponent, type HTMLAttributes } from 'react';\n\nimport {\n showMobileEllipsis,\n generatePagination,\n hidePageButtonForMobile,\n} from './Pagination.helper';\nimport { Button } from '@/molecules/Buttons/Button';\nimport { Icon } from '@clubmed/trident-icons';\n\nexport interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, 'onChange'> {\n /**\n * The current page number (must be >= 1)\n */\n defaultPage: number;\n /**\n * The total pages number\n */\n count: number;\n /**\n * A callback function to handle page changes.\n */\n onChange: (page: number) => void;\n /**\n * Additional class names for the previous & next buttons\n */\n buttonClassName?: string;\n /**\n * Additional class names for the label of the previous & next buttons\n */\n buttonLabelClassName?: string;\n /**\n * Additional class names\n */\n className?: string;\n /**\n * UI Labels\n */\n labels?: Record<'next' | 'previous', string>;\n\n /**\n * A pagination factory to generate an array of Pagination elements (pageNumber, ellipsis, next button, previous button).\n */\n paginationFactory?: typeof generatePagination;\n}\n\nconst EllipsisDesktop = () => {\n return (\n <li key=\"desktop-ellipsis\">\n <div\n aria-controls=\"page-content\"\n className=\"text-b3 mx-8 ml-4 hidden size-48 items-center justify-center text-base font-semibold text-black md:flex\"\n >\n &#8230;\n </div>\n </li>\n );\n};\n\nconst EllipsisMobile = () => {\n return (\n <li key=\"mobile-ellipsis\">\n <div\n aria-controls=\"page-content\"\n className=\"text-b3 mx-8 ml-4 flex size-48 items-center justify-center text-base font-semibold text-black md:hidden\"\n >\n &#8230;\n </div>\n </li>\n );\n};\n\nexport const Pagination: FunctionComponent<PaginationProps> = ({\n defaultPage,\n buttonClassName = 'md:mr-32',\n buttonLabelClassName = 'md:flex',\n className,\n onChange,\n paginationFactory = generatePagination,\n count,\n labels = {},\n ...props\n}) => {\n const pagination = paginationFactory(defaultPage, count);\n\n return (\n <nav\n {...props}\n data-name=\"Pagination\"\n role=\"navigation\"\n aria-label=\"pagination navigation\"\n className={classnames('border-t-sand flex justify-center', className)}\n >\n <ul className=\"mt-12 flex\">\n {pagination.map((page, index) => {\n switch (page.type) {\n case 'pageNumber':\n return (\n <Fragment key={`pagination-pageNumber-${index}`}>\n {page.value === count && showMobileEllipsis(page.value, defaultPage, count) && (\n <EllipsisMobile />\n )}\n <li\n className={classnames('mr-2', {\n 'hidden md:flex': hidePageButtonForMobile(page.value, defaultPage, count),\n })}\n >\n {page.value === defaultPage ? (\n <Button\n label={page.value.toString()}\n theme=\"black\"\n aria-current=\"page\"\n variant=\"monogram\"\n className=\"text-white\"\n />\n ) : (\n <Button\n label={page.value.toString()}\n onClick={() => onChange(page.value)}\n theme=\"white\"\n variant=\"monogram\"\n className={classnames('size-48 items-center', {\n 'mx-8 flex shrink-0 cursor-pointer justify-center self-start':\n index === pagination.length - 1,\n })}\n />\n )}\n </li>\n {page.value === 1 && showMobileEllipsis(page.value, defaultPage, count) && (\n <EllipsisMobile />\n )}\n </Fragment>\n );\n\n case 'ellipsis':\n return <EllipsisDesktop key={`pagination-ellipsis-${index}`} />;\n\n case 'previousButton':\n return (\n <li key=\"pagination-labels.previous\" className={classnames(buttonClassName)}>\n <button\n data-action=\"previous\"\n aria-controls=\"page-content\"\n aria-label={`page ${defaultPage - 1}`}\n className={classnames(\n 'text:black hocus:text-black-active active:text-black-active text-b3 disabled:text-grey mx-8 flex h-48 shrink-0 items-center justify-center self-start text-base font-semibold',\n {\n 'disabled:text-grey': page.disabled,\n },\n )}\n onClick={() => onChange(defaultPage - 1)}\n disabled={page.disabled}\n >\n <Icon name=\"ArrowDefaultLeft\" width=\"30px\" />\n <span className={classnames('ml-4 hidden border-b', buttonLabelClassName)}>\n {labels.previous || 'Previous'}\n </span>\n </button>\n </li>\n );\n\n case 'nextButton':\n return (\n <li className={classnames(buttonClassName)} key=\"pagination-labels.next\">\n <button\n data-action=\"next\"\n aria-controls=\"page-content\"\n aria-label={`page ${defaultPage + 1}`}\n className={classnames(\n 'text:black hocus:text-black-active active:text-black-active text-b3 disabled:text-grey mx-8 mb-5 flex h-48 shrink-0 items-center justify-center self-start text-base font-semibold',\n {\n 'disabled:text-grey': page.disabled,\n },\n )}\n onClick={() => onChange(defaultPage + 1)}\n disabled={page.disabled}\n >\n <span className={classnames('ml-4 hidden border-b', buttonLabelClassName)}>\n {labels.next || 'Next'}\n </span>\n <Icon name=\"ArrowDefaultRight\" width=\"30px\" />\n </button>\n </li>\n );\n\n default:\n return null;\n }\n })}\n </ul>\n </nav>\n );\n};\n"],"names":["EllipsisDesktop","jsx","EllipsisMobile","Pagination","defaultPage","buttonClassName","buttonLabelClassName","className","onChange","paginationFactory","generatePagination","count","labels","props","pagination","classnames","page","index","Fragment","showMobileEllipsis","hidePageButtonForMobile","Button","jsxs","Icon"],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","sources":["../../lib/molecules/Pagination.tsx"],"sourcesContent":["'use client';\n\nimport classnames from 'classnames';\nimport { Fragment, type FunctionComponent, type HTMLAttributes } from 'react';\n\nimport {\n showMobileEllipsis,\n generatePagination,\n hidePageButtonForMobile,\n} from './Pagination.helper';\nimport { Button } from '@/molecules/Buttons/Button';\nimport { Icon } from '@clubmed/trident-icons';\nimport type { ScrollerLabels } from '@/types/ScrollerLabels';\n\nexport interface PaginationProps extends Omit<HTMLAttributes<HTMLElement>, 'onChange'> {\n /**\n * The current page number (must be >= 1)\n */\n defaultPage: number;\n /**\n * The total pages number\n */\n count: number;\n /**\n * A callback function to handle page changes.\n */\n onChange: (page: number) => void;\n /**\n * Additional class names for the previous & next buttons\n */\n buttonClassName?: string;\n /**\n * Additional class names for the label of the previous & next buttons\n */\n buttonLabelClassName?: string;\n /**\n * Additional class names\n */\n className?: string;\n /**\n * UI Labels\n */\n labels: ScrollerLabels;\n /**\n * A pagination factory to generate an array of Pagination elements (pageNumber, ellipsis, next button, previous button).\n */\n paginationFactory?: typeof generatePagination;\n}\n\nconst EllipsisDesktop = () => {\n return (\n <li key=\"desktop-ellipsis\">\n <div\n aria-controls=\"page-content\"\n className=\"text-base mx-8 ml-4 hidden size-48 items-center justify-center text-b3 font-semibold text-black md:flex\"\n >\n &#8230;\n </div>\n </li>\n );\n};\n\nconst EllipsisMobile = () => {\n return (\n <li key=\"mobile-ellipsis\">\n <div\n aria-controls=\"page-content\"\n className=\"text-base mx-8 ml-4 flex size-48 items-center justify-center text-b3 font-semibold text-black md:hidden\"\n >\n &#8230;\n </div>\n </li>\n );\n};\n\nexport const Pagination: FunctionComponent<PaginationProps> = ({\n defaultPage,\n buttonClassName = 'md:mr-32',\n buttonLabelClassName = 'md:flex',\n className,\n labels = {},\n onChange,\n paginationFactory = generatePagination,\n count,\n ...props\n}) => {\n const pagination = paginationFactory(defaultPage, count);\n\n return (\n <nav\n {...props}\n data-name=\"Pagination\"\n role=\"navigation\"\n aria-label=\"pagination navigation\"\n className={classnames('flex justify-center border-t-sand', className)}\n >\n <ul className=\"mt-12 flex\">\n {pagination.map((page, index) => {\n switch (page.type) {\n case 'pageNumber':\n return (\n <Fragment key={`pagination-pageNumber-${index}`}>\n {page.value === count && showMobileEllipsis(page.value, defaultPage, count) && (\n <EllipsisMobile />\n )}\n <li\n className={classnames('mr-2', {\n 'hidden md:flex': hidePageButtonForMobile(page.value, defaultPage, count),\n })}\n >\n {page.value === defaultPage ? (\n <Button\n aria-current=\"page\"\n className=\"text-white\"\n color=\"black\"\n variant=\"circle\"\n >\n {page.value.toString()}\n </Button>\n ) : (\n <Button\n className={classnames('size-48 items-center', {\n 'mx-8 flex shrink-0 cursor-pointer justify-center self-start':\n index === pagination.length - 1,\n })}\n onClick={() => onChange(page.value)}\n color=\"white\"\n variant=\"circle\"\n >\n {page.value.toString()}\n </Button>\n )}\n </li>\n {page.value === 1 && showMobileEllipsis(page.value, defaultPage, count) && (\n <EllipsisMobile />\n )}\n </Fragment>\n );\n\n case 'ellipsis':\n return <EllipsisDesktop key={`pagination-ellipsis-${index}`} />;\n\n case 'previousButton':\n return (\n <li key=\"pagination-labels.previous\" className={classnames(buttonClassName)}>\n <button\n data-action=\"previous\"\n aria-controls=\"page-content\"\n aria-label={`page ${defaultPage - 1}`}\n className={classnames(\n 'text:black text-base mx-8 flex h-48 shrink-0 items-center justify-center self-start text-b3 font-semibold active:text-black-active disabled:text-grey hocus:text-black-active',\n {\n 'pointer-events-none disabled:text-grey': page.disabled,\n },\n )}\n disabled={page.disabled}\n onClick={() => onChange(defaultPage - 1)}\n type=\"button\"\n >\n <Icon name=\"ArrowDefaultLeft\" width=\"30px\" />\n <span\n className={classnames(\n 'ml-4 hidden border-b',\n { 'border-black': !page.disabled },\n buttonLabelClassName,\n )}\n >\n {labels.previous}\n </span>\n </button>\n </li>\n );\n\n case 'nextButton':\n return (\n <li className={classnames(buttonClassName)} key=\"pagination-labels.next\">\n <button\n aria-controls=\"page-content\"\n aria-label={`page ${defaultPage + 1}`}\n className={classnames(\n 'text:black mb-5 text-base mx-8 flex h-48 shrink-0 items-center justify-center self-start text-b3 font-semibold active:text-black-active disabled:text-grey hocus:text-black-active',\n {\n 'pointer-events-none disabled:text-grey': page.disabled,\n },\n )}\n data-action=\"next\"\n disabled={page.disabled}\n onClick={() => onChange(defaultPage + 1)}\n type=\"button\"\n >\n <span\n className={classnames(\n 'ml-4 hidden border-b',\n { 'border-black': !page.disabled },\n buttonLabelClassName,\n )}\n >\n {labels.next}\n </span>\n <Icon name=\"ArrowDefaultRight\" width=\"30px\" />\n </button>\n </li>\n );\n\n default:\n return null;\n }\n })}\n </ul>\n </nav>\n );\n};\n"],"names":["EllipsisDesktop","jsx","EllipsisMobile","Pagination","defaultPage","buttonClassName","buttonLabelClassName","className","labels","onChange","paginationFactory","generatePagination","count","props","pagination","classnames","page","index","Fragment","showMobileEllipsis","hidePageButtonForMobile","Button","jsxs","Icon"],"mappings":"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"}
@@ -3,44 +3,44 @@ import { useTransition as f, config as p, animated as x } from "@react-spring/we
3
3
  import { Backdrop as h } from "./Backdrop.js";
4
4
  import { Button as u } from "./Buttons/Button.js";
5
5
  import { c as v } from "../chunks/index.js";
6
- const b = ({ closeLabel: e, onClose: o }) => /* @__PURE__ */ t(
6
+ const b = ({ closeLabel: e, onClose: r }) => /* @__PURE__ */ t(
7
7
  u,
8
8
  {
9
- theme: "black",
10
- variant: "icon",
9
+ color: "black",
10
+ variant: "circle",
11
11
  icon: "CrossDefault",
12
12
  className: "mx-auto",
13
- label: e,
14
- onClick: o
13
+ "aria-label": e,
14
+ onClick: r
15
15
  }
16
16
  ), j = ({
17
17
  title: e,
18
- children: o,
19
- closeLabel: c,
18
+ children: r,
19
+ closeLabel: n,
20
20
  onClose: a,
21
- isVisible: r,
21
+ isVisible: o,
22
22
  className: i = "sm:w-360",
23
- Footer: n = b
23
+ Footer: c = b
24
24
  }) => {
25
- const s = f(r, {
25
+ const s = f(o, {
26
26
  from: { scale: 0.3, opacity: 0.3 },
27
27
  enter: { scale: 1, opacity: 1 },
28
28
  leave: { scale: 0, opacity: 0 },
29
- config: r ? { tension: 120, friction: 20 } : p.gentle
29
+ config: o ? { tension: 120, friction: 20 } : p.gentle
30
30
  });
31
- return /* @__PURE__ */ t(h, { isVisible: r, onClose: a, children: s(
32
- (m, l) => l && /* @__PURE__ */ t(
31
+ return /* @__PURE__ */ t(h, { isVisible: o, onClose: a, children: s(
32
+ (l, m) => m && /* @__PURE__ */ t(
33
33
  x.div,
34
34
  {
35
35
  className: v(
36
36
  "border-lightGrey rounded-16 pointer-events-auto mx-20 w-full border bg-white",
37
37
  i
38
38
  ),
39
- style: m,
39
+ style: l,
40
40
  children: /* @__PURE__ */ d("div", { className: "p-40 text-center max-h-[90vh] flex flex-col", children: [
41
41
  e && /* @__PURE__ */ t("div", { className: "mt-12 text-h5 text-start font-serif", children: e }),
42
- /* @__PURE__ */ t("div", { className: "mt-12 mb-40 last:mb-0 text-start overflow-auto", children: o }),
43
- n && /* @__PURE__ */ t("div", { children: /* @__PURE__ */ t(n, { closeLabel: c, onClose: a }) })
42
+ /* @__PURE__ */ t("div", { className: "mt-12 mb-40 last:mb-0 text-start overflow-auto", children: r }),
43
+ c && /* @__PURE__ */ t("div", { children: /* @__PURE__ */ t(c, { closeLabel: n, onClose: a }) })
44
44
  ] })
45
45
  }
46
46
  )
@@ -1 +1 @@
1
- {"version":3,"file":"Popin.js","sources":["../../lib/molecules/Popin.tsx"],"sourcesContent":["import { animated, config, useTransition } from '@react-spring/web';\nimport type { FunctionComponent, PropsWithChildren, ReactNode } from 'react';\n\nimport { Backdrop } from './Backdrop';\nimport { Button } from './Buttons/Button';\nimport classnames from 'classnames';\n\nexport type ClosePopinCallback = () => void;\n\ninterface PopinFooterProps {\n closeLabel: string;\n onClose: ClosePopinCallback;\n}\n\nconst PopinFooter = ({ closeLabel, onClose }: PopinFooterProps) => {\n return (\n <Button\n theme=\"black\"\n variant=\"icon\"\n icon=\"CrossDefault\"\n className=\"mx-auto\"\n label={closeLabel}\n onClick={onClose}\n />\n );\n};\n\nexport interface PopinProps {\n title: ReactNode;\n closeLabel: string;\n onClose: ClosePopinCallback;\n isVisible: boolean;\n className?: string;\n showCloseButton?: boolean;\n Footer?: FunctionComponent<PopinFooterProps> | false;\n}\n\nexport const Popin: FunctionComponent<PropsWithChildren<PopinProps>> = ({\n title,\n children,\n closeLabel,\n onClose,\n isVisible,\n className = 'sm:w-360',\n Footer = PopinFooter,\n}) => {\n const transitions = useTransition(isVisible, {\n from: { scale: 0.3, opacity: 0.3 },\n enter: { scale: 1, opacity: 1 },\n leave: { scale: 0, opacity: 0 },\n config: isVisible ? { tension: 120, friction: 20 } : config.gentle,\n });\n\n return (\n <Backdrop isVisible={isVisible} onClose={onClose}>\n {transitions(\n (style, item) =>\n item && (\n <animated.div\n className={classnames(\n 'border-lightGrey rounded-16 pointer-events-auto mx-20 w-full border bg-white',\n className,\n )}\n style={style}\n >\n <div className=\"p-40 text-center max-h-[90vh] flex flex-col\">\n {title && <div className=\"mt-12 text-h5 text-start font-serif\">{title}</div>}\n <div className=\"mt-12 mb-40 last:mb-0 text-start overflow-auto\">{children}</div>\n {Footer && (\n <div>\n <Footer closeLabel={closeLabel} onClose={onClose} />\n </div>\n )}\n </div>\n </animated.div>\n ),\n )}\n </Backdrop>\n );\n};\n"],"names":["PopinFooter","closeLabel","onClose","jsx","Button","Popin","title","children","isVisible","className","Footer","transitions","useTransition","config","Backdrop","style","item","animated","classnames","jsxs"],"mappings":";;;;;AAcA,MAAMA,IAAc,CAAC,EAAE,YAAAC,GAAY,SAAAC,QAE/B,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,WAAU;AAAA,IACV,OAAOH;AAAA,IACP,SAASC;AAAA,EAAA;AAAA,GAeFG,IAA0D,CAAC;AAAA,EACtE,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAN;AAAA,EACA,SAAAC;AAAA,EACA,WAAAM;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,QAAAC,IAASV;AACX,MAAM;AACE,QAAAW,IAAcC,EAAcJ,GAAW;AAAA,IAC3C,MAAM,EAAE,OAAO,KAAK,SAAS,IAAI;AAAA,IACjC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE;AAAA,IAC9B,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE;AAAA,IAC9B,QAAQA,IAAY,EAAE,SAAS,KAAK,UAAU,GAAA,IAAOK,EAAO;AAAA,EAAA,CAC7D;AAGC,SAAA,gBAAAV,EAACW,GAAS,EAAA,WAAAN,GAAsB,SAAAN,GAC7B,UAAAS;AAAA,IACC,CAACI,GAAOC,MACNA,KACE,gBAAAb;AAAA,MAACc,EAAS;AAAA,MAAT;AAAA,QACC,WAAWC;AAAA,UACT;AAAA,UACAT;AAAA,QACF;AAAA,QACA,OAAAM;AAAA,QAEA,UAAA,gBAAAI,EAAC,OAAI,EAAA,WAAU,+CACZ,UAAA;AAAA,UAAAb,KAAU,gBAAAH,EAAA,OAAA,EAAI,WAAU,uCAAuC,UAAMG,GAAA;AAAA,UACrE,gBAAAH,EAAA,OAAA,EAAI,WAAU,kDAAkD,UAAAI,EAAS,CAAA;AAAA,UACzEG,KACE,gBAAAP,EAAA,OAAA,EACC,4BAACO,GAAO,EAAA,YAAAT,GAAwB,SAAAC,EAAkB,CAAA,GACpD;AAAA,QAAA,GAEJ;AAAA,MAAA;AAAA,IACF;AAAA,EAGR,EAAA,CAAA;AAEJ;"}
1
+ {"version":3,"file":"Popin.js","sources":["../../lib/molecules/Popin.tsx"],"sourcesContent":["import { animated, config, useTransition } from '@react-spring/web';\nimport type { FunctionComponent, PropsWithChildren, ReactNode } from 'react';\n\nimport { Backdrop } from './Backdrop';\nimport { Button } from './Buttons/Button';\nimport classnames from 'classnames';\n\nexport type ClosePopinCallback = () => void;\n\ninterface PopinFooterProps {\n closeLabel: string;\n onClose: ClosePopinCallback;\n}\n\nconst PopinFooter = ({ closeLabel, onClose }: PopinFooterProps) => {\n return (\n <Button\n color=\"black\"\n variant=\"circle\"\n icon=\"CrossDefault\"\n className=\"mx-auto\"\n aria-label={closeLabel}\n onClick={onClose}\n />\n );\n};\n\nexport interface PopinProps {\n title: ReactNode;\n closeLabel: string;\n onClose: ClosePopinCallback;\n isVisible: boolean;\n className?: string;\n showCloseButton?: boolean;\n Footer?: FunctionComponent<PopinFooterProps> | false;\n}\n\nexport const Popin: FunctionComponent<PropsWithChildren<PopinProps>> = ({\n title,\n children,\n closeLabel,\n onClose,\n isVisible,\n className = 'sm:w-360',\n Footer = PopinFooter,\n}) => {\n const transitions = useTransition(isVisible, {\n from: { scale: 0.3, opacity: 0.3 },\n enter: { scale: 1, opacity: 1 },\n leave: { scale: 0, opacity: 0 },\n config: isVisible ? { tension: 120, friction: 20 } : config.gentle,\n });\n\n return (\n <Backdrop isVisible={isVisible} onClose={onClose}>\n {transitions(\n (style, item) =>\n item && (\n <animated.div\n className={classnames(\n 'border-lightGrey rounded-16 pointer-events-auto mx-20 w-full border bg-white',\n className,\n )}\n style={style}\n >\n <div className=\"p-40 text-center max-h-[90vh] flex flex-col\">\n {title && <div className=\"mt-12 text-h5 text-start font-serif\">{title}</div>}\n <div className=\"mt-12 mb-40 last:mb-0 text-start overflow-auto\">{children}</div>\n {Footer && (\n <div>\n <Footer closeLabel={closeLabel} onClose={onClose} />\n </div>\n )}\n </div>\n </animated.div>\n ),\n )}\n </Backdrop>\n );\n};\n"],"names":["PopinFooter","closeLabel","onClose","jsx","Button","Popin","title","children","isVisible","className","Footer","transitions","useTransition","config","Backdrop","style","item","animated","classnames","jsxs"],"mappings":";;;;;AAcA,MAAMA,IAAc,CAAC,EAAE,YAAAC,GAAY,SAAAC,QAE/B,gBAAAC;AAAA,EAACC;AAAA,EAAA;AAAA,IACC,OAAM;AAAA,IACN,SAAQ;AAAA,IACR,MAAK;AAAA,IACL,WAAU;AAAA,IACV,cAAYH;AAAA,IACZ,SAASC;AAAA,EAAA;AAAA,GAeFG,IAA0D,CAAC;AAAA,EACtE,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,YAAAN;AAAA,EACA,SAAAC;AAAA,EACA,WAAAM;AAAA,EACA,WAAAC,IAAY;AAAA,EACZ,QAAAC,IAASV;AACX,MAAM;AACE,QAAAW,IAAcC,EAAcJ,GAAW;AAAA,IAC3C,MAAM,EAAE,OAAO,KAAK,SAAS,IAAI;AAAA,IACjC,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE;AAAA,IAC9B,OAAO,EAAE,OAAO,GAAG,SAAS,EAAE;AAAA,IAC9B,QAAQA,IAAY,EAAE,SAAS,KAAK,UAAU,GAAA,IAAOK,EAAO;AAAA,EAAA,CAC7D;AAGC,SAAA,gBAAAV,EAACW,GAAS,EAAA,WAAAN,GAAsB,SAAAN,GAC7B,UAAAS;AAAA,IACC,CAACI,GAAOC,MACNA,KACE,gBAAAb;AAAA,MAACc,EAAS;AAAA,MAAT;AAAA,QACC,WAAWC;AAAA,UACT;AAAA,UACAT;AAAA,QACF;AAAA,QACA,OAAAM;AAAA,QAEA,UAAA,gBAAAI,EAAC,OAAI,EAAA,WAAU,+CACZ,UAAA;AAAA,UAAAb,KAAU,gBAAAH,EAAA,OAAA,EAAI,WAAU,uCAAuC,UAAMG,GAAA;AAAA,UACrE,gBAAAH,EAAA,OAAA,EAAI,WAAU,kDAAkD,UAAAI,EAAS,CAAA;AAAA,UACzEG,KACE,gBAAAP,EAAA,OAAA,EACC,4BAACO,GAAO,EAAA,YAAAT,GAAwB,SAAAC,EAAkB,CAAA,GACpD;AAAA,QAAA,GAEJ;AAAA,MAAA;AAAA,IACF;AAAA,EAGR,EAAA,CAAA;AAEJ;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clubmed/trident-ui",
3
- "version": "1.3.0-beta.4",
3
+ "version": "1.3.0-beta.5",
4
4
  "type": "module",
5
5
  "description": "Shared ClubMed React UI components",
6
6
  "keywords": [
@@ -31,16 +31,16 @@
31
31
  "import": "./atoms/Icons/index.js",
32
32
  "default": "./atoms/Icons/index.js"
33
33
  },
34
- "./atoms/Icons/svg-use": {
35
- "types": "./atoms/Icons/svg-use/index.d.ts",
36
- "import": "./atoms/Icons/svg-use/index.js",
37
- "default": "./atoms/Icons/svg-use/index.js"
38
- },
39
34
  "./atoms/Icons/svg": {
40
35
  "types": "./atoms/Icons/svg/index.d.ts",
41
36
  "import": "./atoms/Icons/svg/index.js",
42
37
  "default": "./atoms/Icons/svg/index.js"
43
38
  },
39
+ "./atoms/Icons/svg-use": {
40
+ "types": "./atoms/Icons/svg-use/index.d.ts",
41
+ "import": "./atoms/Icons/svg-use/index.js",
42
+ "default": "./atoms/Icons/svg-use/index.js"
43
+ },
44
44
  "./molecules/Tabs": {
45
45
  "types": "./molecules/Tabs/index.d.ts",
46
46
  "import": "./molecules/Tabs/index.js",
@@ -51,16 +51,16 @@
51
51
  "import": "./molecules/Forms/Checkboxes/index.js",
52
52
  "default": "./molecules/Forms/Checkboxes/index.js"
53
53
  },
54
- "./molecules/Forms/Radios": {
55
- "types": "./molecules/Forms/Radios/index.d.ts",
56
- "import": "./molecules/Forms/Radios/index.js",
57
- "default": "./molecules/Forms/Radios/index.js"
58
- },
59
54
  "./molecules/Forms/Password": {
60
55
  "types": "./molecules/Forms/Password/index.d.ts",
61
56
  "import": "./molecules/Forms/Password/index.js",
62
57
  "default": "./molecules/Forms/Password/index.js"
63
58
  },
59
+ "./molecules/Forms/Radios": {
60
+ "types": "./molecules/Forms/Radios/index.d.ts",
61
+ "import": "./molecules/Forms/Radios/index.js",
62
+ "default": "./molecules/Forms/Radios/index.js"
63
+ },
64
64
  "./fonts/*": "./fonts/*",
65
65
  "./atoms/*": {
66
66
  "types": "./atoms/*.d.ts",