@simpleapps-com/augur-web 1.0.7 → 1.0.9

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 (173) hide show
  1. package/dist/accordion.cjs.map +1 -1
  2. package/dist/accordion.js.map +1 -1
  3. package/dist/add-to-cart-button.cjs +46 -0
  4. package/dist/add-to-cart-button.cjs.map +1 -0
  5. package/dist/add-to-cart-button.d.cts +14 -0
  6. package/dist/add-to-cart-button.d.ts +14 -0
  7. package/dist/add-to-cart-button.js +46 -0
  8. package/dist/add-to-cart-button.js.map +1 -0
  9. package/dist/breadcrumbs.cjs.map +1 -1
  10. package/dist/breadcrumbs.d.cts +14 -0
  11. package/dist/breadcrumbs.d.ts +14 -0
  12. package/dist/breadcrumbs.js.map +1 -1
  13. package/dist/button.cjs +2 -2
  14. package/dist/button.d.cts +14 -1
  15. package/dist/button.d.ts +14 -1
  16. package/dist/button.js +1 -1
  17. package/dist/card.cjs.map +1 -1
  18. package/dist/card.js.map +1 -1
  19. package/dist/checkbox.cjs.map +1 -1
  20. package/dist/checkbox.js.map +1 -1
  21. package/dist/{chunk-FHS7SJEQ.js → chunk-3FSJ76CI.js} +1 -1
  22. package/dist/chunk-3FSJ76CI.js.map +1 -0
  23. package/dist/{chunk-GPDD67CJ.js → chunk-6JHTOVHH.js} +2 -2
  24. package/dist/chunk-6JHTOVHH.js.map +1 -0
  25. package/dist/{chunk-SXJP4G5U.cjs → chunk-AMGUJSB4.cjs} +1 -1
  26. package/dist/chunk-AMGUJSB4.cjs.map +1 -0
  27. package/dist/{chunk-BYHOMRXR.js → chunk-BMQGSDHH.js} +1 -1
  28. package/dist/chunk-BMQGSDHH.js.map +1 -0
  29. package/dist/{chunk-ND6U4UQQ.js → chunk-C7E3ITLU.js} +1 -1
  30. package/dist/chunk-C7E3ITLU.js.map +1 -0
  31. package/dist/chunk-DONF5PIE.js +47 -0
  32. package/dist/chunk-DONF5PIE.js.map +1 -0
  33. package/dist/{chunk-NWGXDXRV.cjs → chunk-DQJDDXSH.cjs} +1 -1
  34. package/dist/chunk-DQJDDXSH.cjs.map +1 -0
  35. package/dist/chunk-ECNNL5MU.cjs +145 -0
  36. package/dist/chunk-ECNNL5MU.cjs.map +1 -0
  37. package/dist/chunk-ECZR6SW3.cjs +47 -0
  38. package/dist/chunk-ECZR6SW3.cjs.map +1 -0
  39. package/dist/{chunk-PTAWV5SA.js → chunk-FHUB6XI5.js} +1 -1
  40. package/dist/chunk-FHUB6XI5.js.map +1 -0
  41. package/dist/{chunk-VT4JLAIE.cjs → chunk-I4Q2GZZK.cjs} +1 -1
  42. package/dist/{chunk-VT4JLAIE.cjs.map → chunk-I4Q2GZZK.cjs.map} +1 -1
  43. package/dist/{chunk-DAU3SFHM.js → chunk-LCNFPBPV.js} +1 -1
  44. package/dist/chunk-LCNFPBPV.js.map +1 -0
  45. package/dist/{chunk-VMOQCPK5.cjs → chunk-LNMPVCIY.cjs} +3 -3
  46. package/dist/{chunk-VMOQCPK5.cjs.map → chunk-LNMPVCIY.cjs.map} +1 -1
  47. package/dist/{chunk-3RVGVJDI.cjs → chunk-MGOH4OFM.cjs} +1 -1
  48. package/dist/chunk-MGOH4OFM.cjs.map +1 -0
  49. package/dist/{chunk-N2TV6QZO.cjs → chunk-QLSIUW3X.cjs} +1 -1
  50. package/dist/chunk-QLSIUW3X.cjs.map +1 -0
  51. package/dist/{chunk-Q6H6D3AN.cjs → chunk-SHF52AZM.cjs} +1 -1
  52. package/dist/chunk-SHF52AZM.cjs.map +1 -0
  53. package/dist/{chunk-CK53LO3J.cjs → chunk-U35O67ZA.cjs} +1 -1
  54. package/dist/chunk-U35O67ZA.cjs.map +1 -0
  55. package/dist/{chunk-DZ6HBEMA.js → chunk-X5RKGEDZ.js} +1 -1
  56. package/dist/chunk-X5RKGEDZ.js.map +1 -0
  57. package/dist/{chunk-SVF5VSZ2.js → chunk-YKVFAVK5.js} +1 -1
  58. package/dist/chunk-YKVFAVK5.js.map +1 -0
  59. package/dist/chunk-YR2SJWTF.js +145 -0
  60. package/dist/chunk-YR2SJWTF.js.map +1 -0
  61. package/dist/command.cjs +2 -2
  62. package/dist/command.cjs.map +1 -1
  63. package/dist/command.d.cts +7 -7
  64. package/dist/command.d.ts +7 -7
  65. package/dist/command.js +1 -1
  66. package/dist/command.js.map +1 -1
  67. package/dist/dialog.cjs +2 -2
  68. package/dist/dialog.js +1 -1
  69. package/dist/dropdown-menu.cjs.map +1 -1
  70. package/dist/dropdown-menu.js.map +1 -1
  71. package/dist/form-field.cjs +3 -3
  72. package/dist/form-field.d.cts +1 -0
  73. package/dist/form-field.d.ts +1 -0
  74. package/dist/form-field.js +2 -2
  75. package/dist/form-input.cjs +5 -5
  76. package/dist/form-input.cjs.map +1 -1
  77. package/dist/form-input.d.cts +8 -0
  78. package/dist/form-input.d.ts +8 -0
  79. package/dist/form-input.js +3 -3
  80. package/dist/form-input.js.map +1 -1
  81. package/dist/form-select.cjs +7 -7
  82. package/dist/form-select.cjs.map +1 -1
  83. package/dist/form-select.d.cts +14 -0
  84. package/dist/form-select.d.ts +14 -0
  85. package/dist/form-select.js +3 -3
  86. package/dist/form-select.js.map +1 -1
  87. package/dist/form-textarea.cjs +5 -5
  88. package/dist/form-textarea.cjs.map +1 -1
  89. package/dist/form-textarea.d.cts +1 -0
  90. package/dist/form-textarea.d.ts +1 -0
  91. package/dist/form-textarea.js +3 -3
  92. package/dist/form-textarea.js.map +1 -1
  93. package/dist/gtm.cjs +2 -128
  94. package/dist/gtm.cjs.map +1 -1
  95. package/dist/gtm.js +7 -133
  96. package/dist/gtm.js.map +1 -1
  97. package/dist/input.cjs +2 -2
  98. package/dist/input.js +1 -1
  99. package/dist/label.cjs +2 -2
  100. package/dist/label.js +1 -1
  101. package/dist/list-view.cjs.map +1 -1
  102. package/dist/list-view.d.cts +8 -0
  103. package/dist/list-view.d.ts +8 -0
  104. package/dist/list-view.js.map +1 -1
  105. package/dist/navigation-menu.cjs.map +1 -1
  106. package/dist/navigation-menu.js.map +1 -1
  107. package/dist/pagination.cjs +2 -2
  108. package/dist/pagination.cjs.map +1 -1
  109. package/dist/pagination.js +1 -1
  110. package/dist/pagination.js.map +1 -1
  111. package/dist/popover.cjs.map +1 -1
  112. package/dist/popover.js.map +1 -1
  113. package/dist/price-format.cjs +2 -2
  114. package/dist/price-format.d.cts +4 -0
  115. package/dist/price-format.d.ts +4 -0
  116. package/dist/price-format.js +1 -1
  117. package/dist/price.cjs +2 -2
  118. package/dist/price.cjs.map +1 -1
  119. package/dist/price.d.cts +17 -0
  120. package/dist/price.d.ts +17 -0
  121. package/dist/price.js +1 -1
  122. package/dist/price.js.map +1 -1
  123. package/dist/provider.cjs +31 -0
  124. package/dist/provider.cjs.map +1 -0
  125. package/dist/provider.d.cts +50 -0
  126. package/dist/provider.d.ts +50 -0
  127. package/dist/provider.js +31 -0
  128. package/dist/provider.js.map +1 -0
  129. package/dist/quantity-input.cjs.map +1 -1
  130. package/dist/quantity-input.d.cts +15 -0
  131. package/dist/quantity-input.d.ts +15 -0
  132. package/dist/quantity-input.js.map +1 -1
  133. package/dist/radio-group.cjs.map +1 -1
  134. package/dist/radio-group.js.map +1 -1
  135. package/dist/select.cjs +2 -2
  136. package/dist/select.js +1 -1
  137. package/dist/separator.cjs.map +1 -1
  138. package/dist/separator.js.map +1 -1
  139. package/dist/skeleton.cjs.map +1 -1
  140. package/dist/skeleton.js.map +1 -1
  141. package/dist/spinner.cjs +3 -41
  142. package/dist/spinner.cjs.map +1 -1
  143. package/dist/spinner.d.cts +1 -0
  144. package/dist/spinner.d.ts +1 -0
  145. package/dist/spinner.js +3 -41
  146. package/dist/spinner.js.map +1 -1
  147. package/dist/stock-label.cjs +85 -0
  148. package/dist/stock-label.cjs.map +1 -0
  149. package/dist/stock-label.d.cts +47 -0
  150. package/dist/stock-label.d.ts +47 -0
  151. package/dist/stock-label.js +85 -0
  152. package/dist/stock-label.js.map +1 -0
  153. package/dist/table.cjs.map +1 -1
  154. package/dist/table.js.map +1 -1
  155. package/dist/tabs.cjs.map +1 -1
  156. package/dist/tabs.js.map +1 -1
  157. package/dist/textarea.cjs +2 -2
  158. package/dist/textarea.js +1 -1
  159. package/package.json +24 -4
  160. package/dist/chunk-3RVGVJDI.cjs.map +0 -1
  161. package/dist/chunk-BYHOMRXR.js.map +0 -1
  162. package/dist/chunk-CK53LO3J.cjs.map +0 -1
  163. package/dist/chunk-DAU3SFHM.js.map +0 -1
  164. package/dist/chunk-DZ6HBEMA.js.map +0 -1
  165. package/dist/chunk-FHS7SJEQ.js.map +0 -1
  166. package/dist/chunk-GPDD67CJ.js.map +0 -1
  167. package/dist/chunk-N2TV6QZO.cjs.map +0 -1
  168. package/dist/chunk-ND6U4UQQ.js.map +0 -1
  169. package/dist/chunk-NWGXDXRV.cjs.map +0 -1
  170. package/dist/chunk-PTAWV5SA.js.map +0 -1
  171. package/dist/chunk-Q6H6D3AN.cjs.map +0 -1
  172. package/dist/chunk-SVF5VSZ2.js.map +0 -1
  173. package/dist/chunk-SXJP4G5U.cjs.map +0 -1
@@ -15,6 +15,20 @@ interface FormSelectProps {
15
15
  className?: string;
16
16
  disabled?: boolean;
17
17
  }
18
+ /**
19
+ * Labeled select dropdown with error display. Composes FormField + Select.
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * <FormSelect
24
+ * label="State"
25
+ * name="state"
26
+ * options={[{ label: "Texas", value: "TX" }]}
27
+ * value={state}
28
+ * onValueChange={setState}
29
+ * />
30
+ * ```
31
+ */
18
32
  declare const FormSelect: React.ForwardRefExoticComponent<FormSelectProps & React.RefAttributes<HTMLButtonElement>>;
19
33
 
20
34
  export { FormSelect, type FormSelectProps };
@@ -2,15 +2,15 @@
2
2
  "use client";
3
3
  import {
4
4
  FormField
5
- } from "./chunk-GPDD67CJ.js";
5
+ } from "./chunk-6JHTOVHH.js";
6
6
  import {
7
7
  Select,
8
8
  SelectContent,
9
9
  SelectItem,
10
10
  SelectTrigger,
11
11
  SelectValue
12
- } from "./chunk-ND6U4UQQ.js";
13
- import "./chunk-FHS7SJEQ.js";
12
+ } from "./chunk-C7E3ITLU.js";
13
+ import "./chunk-3FSJ76CI.js";
14
14
 
15
15
  // src/form-select.tsx
16
16
  import * as React from "react";
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/form-select.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport {\n Select,\n SelectTrigger,\n SelectValue,\n SelectContent,\n SelectItem,\n} from \"./select\";\n\nexport interface FormSelectProps {\n label: string;\n error?: string;\n required?: boolean;\n name: string;\n value?: string;\n onValueChange?: (value: string) => void;\n options: { label: string; value: string }[];\n placeholder?: string;\n className?: string;\n disabled?: boolean;\n}\n\nconst FormSelect = React.forwardRef<HTMLButtonElement, FormSelectProps>(\n (\n {\n label,\n error,\n required,\n name,\n value,\n onValueChange,\n options,\n placeholder,\n className,\n disabled,\n },\n ref,\n ) => {\n return (\n <FormField\n label={label}\n htmlFor={name}\n required={required}\n error={error}\n className={cn(className)}\n >\n <Select\n name={name}\n value={value}\n onValueChange={onValueChange}\n disabled={disabled}\n >\n <SelectTrigger ref={ref} id={name}>\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent>\n {options.map((option) => (\n <SelectItem key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </FormField>\n );\n },\n);\nFormSelect.displayName = \"FormSelect\";\n\nexport { FormSelect };\n"],"mappings":";;;;;;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,UAAU;AA+CX,SAOI,KAPJ;AAxBR,IAAM,aAAmB;AAAA,EACvB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GACA,QACG;AACH,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA,WAAW,GAAG,SAAS;AAAA,QAEvB;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YAEA;AAAA,kCAAC,iBAAc,KAAU,IAAI,MAC3B,8BAAC,eAAY,aAA0B,GACzC;AAAA,cACA,oBAAC,iBACE,kBAAQ,IAAI,CAAC,WACZ,oBAAC,cAA8B,OAAO,OAAO,OAC1C,iBAAO,SADO,OAAO,KAExB,CACD,GACH;AAAA;AAAA;AAAA,QACF;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AACA,WAAW,cAAc;","names":[]}
1
+ {"version":3,"sources":["../src/form-select.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport {\n Select,\n SelectTrigger,\n SelectValue,\n SelectContent,\n SelectItem,\n} from \"./select\";\n\nexport interface FormSelectProps {\n label: string;\n error?: string;\n required?: boolean;\n name: string;\n value?: string;\n onValueChange?: (value: string) => void;\n options: { label: string; value: string }[];\n placeholder?: string;\n className?: string;\n disabled?: boolean;\n}\n\n/**\n * Labeled select dropdown with error display. Composes FormField + Select.\n *\n * @example\n * ```tsx\n * <FormSelect\n * label=\"State\"\n * name=\"state\"\n * options={[{ label: \"Texas\", value: \"TX\" }]}\n * value={state}\n * onValueChange={setState}\n * />\n * ```\n */\nconst FormSelect = React.forwardRef<HTMLButtonElement, FormSelectProps>(\n (\n {\n label,\n error,\n required,\n name,\n value,\n onValueChange,\n options,\n placeholder,\n className,\n disabled,\n },\n ref,\n ) => {\n return (\n <FormField\n label={label}\n htmlFor={name}\n required={required}\n error={error}\n className={cn(className)}\n >\n <Select\n name={name}\n value={value}\n onValueChange={onValueChange}\n disabled={disabled}\n >\n <SelectTrigger ref={ref} id={name}>\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent>\n {options.map((option) => (\n <SelectItem key={option.value} value={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </FormField>\n );\n },\n);\nFormSelect.displayName = \"FormSelect\";\n\nexport { FormSelect };\n"],"mappings":";;;;;;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,UAAU;AA6DX,SAOI,KAPJ;AAxBR,IAAM,aAAmB;AAAA,EACvB,CACE;AAAA,IACE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GACA,QACG;AACH,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA,SAAS;AAAA,QACT;AAAA,QACA;AAAA,QACA,WAAW,GAAG,SAAS;AAAA,QAEvB;AAAA,UAAC;AAAA;AAAA,YACC;AAAA,YACA;AAAA,YACA;AAAA,YACA;AAAA,YAEA;AAAA,kCAAC,iBAAc,KAAU,IAAI,MAC3B,8BAAC,eAAY,aAA0B,GACzC;AAAA,cACA,oBAAC,iBACE,kBAAQ,IAAI,CAAC,WACZ,oBAAC,cAA8B,OAAO,OAAO,OAC1C,iBAAO,SADO,OAAO,KAExB,CACD,GACH;AAAA;AAAA;AAAA,QACF;AAAA;AAAA,IACF;AAAA,EAEJ;AACF;AACA,WAAW,cAAc;","names":[]}
@@ -2,11 +2,11 @@
2
2
  "use client";
3
3
 
4
4
 
5
- var _chunk3RVGVJDIcjs = require('./chunk-3RVGVJDI.cjs');
5
+ var _chunkMGOH4OFMcjs = require('./chunk-MGOH4OFM.cjs');
6
6
 
7
7
 
8
- var _chunkVMOQCPK5cjs = require('./chunk-VMOQCPK5.cjs');
9
- require('./chunk-CK53LO3J.cjs');
8
+ var _chunkLNMPVCIYcjs = require('./chunk-LNMPVCIY.cjs');
9
+ require('./chunk-U35O67ZA.cjs');
10
10
 
11
11
  // src/form-textarea.tsx
12
12
  var _react = require('react'); var React = _interopRequireWildcard(_react);
@@ -16,14 +16,14 @@ var FormTextarea = React.forwardRef(
16
16
  ({ label, error, required, gridSpan, className, id, name, ...props }, ref) => {
17
17
  const htmlFor = _nullishCoalesce(_nullishCoalesce(id, () => ( name)), () => ( ""));
18
18
  return /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
19
- _chunkVMOQCPK5cjs.FormField,
19
+ _chunkLNMPVCIYcjs.FormField,
20
20
  {
21
21
  label,
22
22
  htmlFor,
23
23
  required,
24
24
  error,
25
25
  className: _web.cn.call(void 0, gridSpan, className),
26
- children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunk3RVGVJDIcjs.Textarea, { ref, id: htmlFor, name, ...props })
26
+ children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, _chunkMGOH4OFMcjs.Textarea, { ref, id: htmlFor, name, ...props })
27
27
  }
28
28
  );
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/form-textarea.cjs","../src/form-textarea.tsx"],"names":[],"mappings":"AAAA,2cAAY;AACZ,YAAY;AACZ;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACA;ACRA,2EAAuB;AACvB,sDAAmB;AAwBX,+CAAA;AAZR,IAAM,aAAA,EAAqB,KAAA,CAAA,UAAA;AAAA,EACzB,CAAC,EAAE,KAAA,EAAO,KAAA,EAAO,QAAA,EAAU,QAAA,EAAU,SAAA,EAAW,EAAA,EAAI,IAAA,EAAM,GAAG,MAAM,CAAA,EAAG,GAAA,EAAA,GAAQ;AAC5E,IAAA,MAAM,QAAA,oCAAU,EAAA,UAAM,MAAA,UAAQ,IAAA;AAE9B,IAAA,uBACE,6BAAA;AAAA,MAAC,2BAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA,EAAW,qBAAA,QAAG,EAAU,SAAS,CAAA;AAAA,QAEjC,QAAA,kBAAA,6BAAA,0BAAC,EAAA,EAAS,GAAA,EAAU,EAAA,EAAI,OAAA,EAAS,IAAA,EAAa,GAAG,MAAA,CAAO;AAAA,MAAA;AAAA,IAC1D,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,YAAA,CAAa,YAAA,EAAc,cAAA;ADD3B;AACE;AACF,oCAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/form-textarea.cjs","sourcesContent":[null,"\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport { Textarea } from \"./textarea\";\n\nexport interface FormTextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n label: string;\n error?: string;\n required?: boolean;\n gridSpan?: string;\n}\n\nconst FormTextarea = React.forwardRef<HTMLTextAreaElement, FormTextareaProps>(\n ({ label, error, required, gridSpan, className, id, name, ...props }, ref) => {\n const htmlFor = id ?? name ?? \"\";\n\n return (\n <FormField\n label={label}\n htmlFor={htmlFor}\n required={required}\n error={error}\n className={cn(gridSpan, className)}\n >\n <Textarea ref={ref} id={htmlFor} name={name} {...props} />\n </FormField>\n );\n },\n);\nFormTextarea.displayName = \"FormTextarea\";\n\nexport { FormTextarea };\n"]}
1
+ {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/form-textarea.cjs","../src/form-textarea.tsx"],"names":[],"mappings":"AAAA,2cAAY;AACZ,YAAY;AACZ;AACE;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACA;ACRA,2EAAuB;AACvB,sDAAmB;AAyBX,+CAAA;AAZR,IAAM,aAAA,EAAqB,KAAA,CAAA,UAAA;AAAA,EACzB,CAAC,EAAE,KAAA,EAAO,KAAA,EAAO,QAAA,EAAU,QAAA,EAAU,SAAA,EAAW,EAAA,EAAI,IAAA,EAAM,GAAG,MAAM,CAAA,EAAG,GAAA,EAAA,GAAQ;AAC5E,IAAA,MAAM,QAAA,oCAAU,EAAA,UAAM,MAAA,UAAQ,IAAA;AAE9B,IAAA,uBACE,6BAAA;AAAA,MAAC,2BAAA;AAAA,MAAA;AAAA,QACC,KAAA;AAAA,QACA,OAAA;AAAA,QACA,QAAA;AAAA,QACA,KAAA;AAAA,QACA,SAAA,EAAW,qBAAA,QAAG,EAAU,SAAS,CAAA;AAAA,QAEjC,QAAA,kBAAA,6BAAA,0BAAC,EAAA,EAAS,GAAA,EAAU,EAAA,EAAI,OAAA,EAAS,IAAA,EAAa,GAAG,MAAA,CAAO;AAAA,MAAA;AAAA,IAC1D,CAAA;AAAA,EAEJ;AACF,CAAA;AACA,YAAA,CAAa,YAAA,EAAc,cAAA;ADF3B;AACE;AACF,oCAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/form-textarea.cjs","sourcesContent":[null,"\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport { Textarea } from \"./textarea\";\n\nexport interface FormTextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n label: string;\n error?: string;\n required?: boolean;\n gridSpan?: string;\n}\n\n/** Labeled textarea with error display. Composes FormField + Textarea. */\nconst FormTextarea = React.forwardRef<HTMLTextAreaElement, FormTextareaProps>(\n ({ label, error, required, gridSpan, className, id, name, ...props }, ref) => {\n const htmlFor = id ?? name ?? \"\";\n\n return (\n <FormField\n label={label}\n htmlFor={htmlFor}\n required={required}\n error={error}\n className={cn(gridSpan, className)}\n >\n <Textarea ref={ref} id={htmlFor} name={name} {...props} />\n </FormField>\n );\n },\n);\nFormTextarea.displayName = \"FormTextarea\";\n\nexport { FormTextarea };\n"]}
@@ -6,6 +6,7 @@ interface FormTextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaEle
6
6
  required?: boolean;
7
7
  gridSpan?: string;
8
8
  }
9
+ /** Labeled textarea with error display. Composes FormField + Textarea. */
9
10
  declare const FormTextarea: React.ForwardRefExoticComponent<FormTextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
10
11
 
11
12
  export { FormTextarea, type FormTextareaProps };
@@ -6,6 +6,7 @@ interface FormTextareaProps extends React.TextareaHTMLAttributes<HTMLTextAreaEle
6
6
  required?: boolean;
7
7
  gridSpan?: string;
8
8
  }
9
+ /** Labeled textarea with error display. Composes FormField + Textarea. */
9
10
  declare const FormTextarea: React.ForwardRefExoticComponent<FormTextareaProps & React.RefAttributes<HTMLTextAreaElement>>;
10
11
 
11
12
  export { FormTextarea, type FormTextareaProps };
@@ -2,11 +2,11 @@
2
2
  "use client";
3
3
  import {
4
4
  Textarea
5
- } from "./chunk-DZ6HBEMA.js";
5
+ } from "./chunk-X5RKGEDZ.js";
6
6
  import {
7
7
  FormField
8
- } from "./chunk-GPDD67CJ.js";
9
- import "./chunk-FHS7SJEQ.js";
8
+ } from "./chunk-6JHTOVHH.js";
9
+ import "./chunk-3FSJ76CI.js";
10
10
 
11
11
  // src/form-textarea.tsx
12
12
  import * as React from "react";
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/form-textarea.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport { Textarea } from \"./textarea\";\n\nexport interface FormTextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n label: string;\n error?: string;\n required?: boolean;\n gridSpan?: string;\n}\n\nconst FormTextarea = React.forwardRef<HTMLTextAreaElement, FormTextareaProps>(\n ({ label, error, required, gridSpan, className, id, name, ...props }, ref) => {\n const htmlFor = id ?? name ?? \"\";\n\n return (\n <FormField\n label={label}\n htmlFor={htmlFor}\n required={required}\n error={error}\n className={cn(gridSpan, className)}\n >\n <Textarea ref={ref} id={htmlFor} name={name} {...props} />\n </FormField>\n );\n },\n);\nFormTextarea.displayName = \"FormTextarea\";\n\nexport { FormTextarea };\n"],"mappings":";;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,UAAU;AAwBX;AAZR,IAAM,eAAqB;AAAA,EACzB,CAAC,EAAE,OAAO,OAAO,UAAU,UAAU,WAAW,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ;AAC5E,UAAM,UAAU,MAAM,QAAQ;AAE9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW,GAAG,UAAU,SAAS;AAAA,QAEjC,8BAAC,YAAS,KAAU,IAAI,SAAS,MAAa,GAAG,OAAO;AAAA;AAAA,IAC1D;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;","names":[]}
1
+ {"version":3,"sources":["../src/form-textarea.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\nimport { FormField } from \"./form-field\";\nimport { Textarea } from \"./textarea\";\n\nexport interface FormTextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement> {\n label: string;\n error?: string;\n required?: boolean;\n gridSpan?: string;\n}\n\n/** Labeled textarea with error display. Composes FormField + Textarea. */\nconst FormTextarea = React.forwardRef<HTMLTextAreaElement, FormTextareaProps>(\n ({ label, error, required, gridSpan, className, id, name, ...props }, ref) => {\n const htmlFor = id ?? name ?? \"\";\n\n return (\n <FormField\n label={label}\n htmlFor={htmlFor}\n required={required}\n error={error}\n className={cn(gridSpan, className)}\n >\n <Textarea ref={ref} id={htmlFor} name={name} {...props} />\n </FormField>\n );\n },\n);\nFormTextarea.displayName = \"FormTextarea\";\n\nexport { FormTextarea };\n"],"mappings":";;;;;;;;;;;AAEA,YAAY,WAAW;AACvB,SAAS,UAAU;AAyBX;AAZR,IAAM,eAAqB;AAAA,EACzB,CAAC,EAAE,OAAO,OAAO,UAAU,UAAU,WAAW,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ;AAC5E,UAAM,UAAU,MAAM,QAAQ;AAE9B,WACE;AAAA,MAAC;AAAA;AAAA,QACC;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA,WAAW,GAAG,UAAU,SAAS;AAAA,QAEjC,8BAAC,YAAS,KAAU,IAAI,SAAS,MAAa,GAAG,OAAO;AAAA;AAAA,IAC1D;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;","names":[]}
package/dist/gtm.cjs CHANGED
@@ -1,145 +1,19 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});"use client";
2
2
  "use client";
3
3
 
4
- // src/gtm.tsx
5
4
 
6
5
 
7
6
 
8
7
 
9
8
 
10
9
 
10
+ var _chunkECNNL5MUcjs = require('./chunk-ECNNL5MU.cjs');
11
11
 
12
- var _react = require('react');
13
- var _jsxruntime = require('react/jsx-runtime');
14
- var AnalyticsContext = _react.createContext.call(void 0, null);
15
- function getDataLayer() {
16
- if (typeof window === "undefined") return [];
17
- if (!window.dataLayer) window.dataLayer = [];
18
- return window.dataLayer;
19
- }
20
- function injectGtmScript(gtmId, strategy) {
21
- if (typeof document === "undefined") return;
22
- if (document.getElementById("gtm-script")) return;
23
- const dataLayer = getDataLayer();
24
- dataLayer.push({ "gtm.start": (/* @__PURE__ */ new Date()).getTime(), event: "gtm.js" });
25
- const script = document.createElement("script");
26
- script.id = "gtm-script";
27
- script.src = `https://www.googletagmanager.com/gtm.js?id=${encodeURIComponent(gtmId)}`;
28
- if (strategy === "lazyOnload") {
29
- script.async = true;
30
- script.defer = true;
31
- } else {
32
- script.async = true;
33
- }
34
- document.head.appendChild(script);
35
- }
36
- function AnalyticsProvider({
37
- gtmId,
38
- strategy = "afterInteractive",
39
- consentRequired = false,
40
- debug = false,
41
- children
42
- }) {
43
- const [hasConsent, setHasConsent] = _react.useState.call(void 0, !consentRequired);
44
- const [isLoaded, setIsLoaded] = _react.useState.call(void 0, false);
45
- const injectedRef = _react.useRef.call(void 0, false);
46
- const loadGtm = _react.useCallback.call(void 0, () => {
47
- if (injectedRef.current) return;
48
- injectedRef.current = true;
49
- if (strategy === "lazyOnload" && typeof requestIdleCallback === "function") {
50
- requestIdleCallback(() => {
51
- injectGtmScript(gtmId, strategy);
52
- setIsLoaded(true);
53
- });
54
- } else if (strategy === "afterInteractive") {
55
- setTimeout(() => {
56
- injectGtmScript(gtmId, strategy);
57
- setIsLoaded(true);
58
- }, 0);
59
- } else {
60
- injectGtmScript(gtmId, strategy);
61
- setIsLoaded(true);
62
- }
63
- }, [gtmId, strategy]);
64
- if (hasConsent && !injectedRef.current && typeof window !== "undefined") {
65
- loadGtm();
66
- }
67
- const trackEvent = _react.useCallback.call(void 0,
68
- (event, params) => {
69
- const entry = { event, ...params };
70
- if (debug) {
71
- console.log("[Analytics]", entry);
72
- }
73
- getDataLayer().push(entry);
74
- },
75
- [debug]
76
- );
77
- const trackEcommerceEvent = _react.useCallback.call(void 0,
78
- (event, params) => {
79
- getDataLayer().push({ ecommerce: null });
80
- const entry = { event, ecommerce: params };
81
- if (debug) {
82
- console.log("[Analytics ecommerce]", entry);
83
- }
84
- getDataLayer().push(entry);
85
- },
86
- [debug]
87
- );
88
- const grantConsent = _react.useCallback.call(void 0, () => {
89
- setHasConsent(true);
90
- loadGtm();
91
- }, [loadGtm]);
92
- const revokeConsent = _react.useCallback.call(void 0, () => {
93
- setHasConsent(false);
94
- }, []);
95
- const value = _react.useMemo.call(void 0,
96
- () => ({
97
- trackEvent,
98
- trackEcommerceEvent,
99
- grantConsent,
100
- revokeConsent,
101
- hasConsent,
102
- isLoaded
103
- }),
104
- [
105
- trackEvent,
106
- trackEcommerceEvent,
107
- grantConsent,
108
- revokeConsent,
109
- hasConsent,
110
- isLoaded
111
- ]
112
- );
113
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, AnalyticsContext.Provider, { value, children });
114
- }
115
- function useAnalytics() {
116
- const context = _react.useContext.call(void 0, AnalyticsContext);
117
- if (!context) {
118
- throw new Error("useAnalytics must be used within an <AnalyticsProvider>");
119
- }
120
- return context;
121
- }
122
- function AnalyticsNoscript({ gtmId }) {
123
- return /* @__PURE__ */ _jsxruntime.jsx.call(void 0, "noscript", { children: /* @__PURE__ */ _jsxruntime.jsx.call(void 0,
124
- "iframe",
125
- {
126
- src: `https://www.googletagmanager.com/ns.html?id=${encodeURIComponent(gtmId)}`,
127
- height: "0",
128
- width: "0",
129
- style: { display: "none", visibility: "hidden" },
130
- title: "Google Tag Manager"
131
- }
132
- ) });
133
- }
134
- var GtmProvider = AnalyticsProvider;
135
- var useGtm = useAnalytics;
136
- var GtmNoscript = AnalyticsNoscript;
137
12
 
138
13
 
139
14
 
140
15
 
141
16
 
142
17
 
143
-
144
- exports.AnalyticsNoscript = AnalyticsNoscript; exports.AnalyticsProvider = AnalyticsProvider; exports.GtmNoscript = GtmNoscript; exports.GtmProvider = GtmProvider; exports.useAnalytics = useAnalytics; exports.useGtm = useGtm;
18
+ exports.AnalyticsNoscript = _chunkECNNL5MUcjs.AnalyticsNoscript; exports.AnalyticsProvider = _chunkECNNL5MUcjs.AnalyticsProvider; exports.GtmNoscript = _chunkECNNL5MUcjs.GtmNoscript; exports.GtmProvider = _chunkECNNL5MUcjs.GtmProvider; exports.useAnalytics = _chunkECNNL5MUcjs.useAnalytics; exports.useGtm = _chunkECNNL5MUcjs.useGtm;
145
19
  //# sourceMappingURL=gtm.cjs.map
package/dist/gtm.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/gtm.cjs","../src/gtm.tsx"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY;AACZ;AACA;ACDA;AACE;AACA;AACA;AACA;AACA;AACA;AAAA,8BACK;AAiOH,+CAAA;AA9IJ,IAAM,iBAAA,EAAmB,kCAAA,IAAgD,CAAA;AAYzE,SAAS,YAAA,CAAA,EAA0C;AAEjD,EAAA,GAAA,CAAI,OAAO,OAAA,IAAW,WAAA,EAAa,OAAO,CAAC,CAAA;AAC3C,EAAA,GAAA,CAAI,CAAC,MAAA,CAAO,SAAA,EAAW,MAAA,CAAO,UAAA,EAAY,CAAC,CAAA;AAC3C,EAAA,OAAO,MAAA,CAAO,SAAA;AAChB;AAEA,SAAS,eAAA,CACP,KAAA,EACA,QAAA,EACM;AAEN,EAAA,GAAA,CAAI,OAAO,SAAA,IAAa,WAAA,EAAa,MAAA;AAGrC,EAAA,GAAA,CAAI,QAAA,CAAS,cAAA,CAAe,YAAY,CAAA,EAAG,MAAA;AAE3C,EAAA,MAAM,UAAA,EAAY,YAAA,CAAa,CAAA;AAC/B,EAAA,SAAA,CAAU,IAAA,CAAK,EAAE,WAAA,EAAA,iBAAa,IAAI,IAAA,CAAK,CAAA,CAAA,CAAE,OAAA,CAAQ,CAAA,EAAG,KAAA,EAAO,SAAS,CAAC,CAAA;AAErE,EAAA,MAAM,OAAA,EAAS,QAAA,CAAS,aAAA,CAAc,QAAQ,CAAA;AAC9C,EAAA,MAAA,CAAO,GAAA,EAAK,YAAA;AACZ,EAAA,MAAA,CAAO,IAAA,EAAM,CAAA,2CAAA,EAA8C,kBAAA,CAAmB,KAAK,CAAC,CAAA,CAAA;AAErD,EAAA;AACd,IAAA;AACA,IAAA;AACV,EAAA;AAEU,IAAA;AACjB,EAAA;AAEgC,EAAA;AAClC;AAMkC;AAChC,EAAA;AACW,EAAA;AACO,EAAA;AACV,EAAA;AACR,EAAA;AACyB;AACoC,EAAA;AACf,EAAA;AACd,EAAA;AAEE,EAAA;AACP,IAAA;AACH,IAAA;AAEsD,IAAA;AAChD,MAAA;AACO,QAAA;AACf,QAAA;AACjB,MAAA;AACyC,IAAA;AAEzB,MAAA;AACgB,QAAA;AACf,QAAA;AACd,MAAA;AACC,IAAA;AAC0B,MAAA;AACf,MAAA;AAClB,IAAA;AACkB,EAAA;AAIqD,EAAA;AAC/D,IAAA;AACV,EAAA;AAEmB,EAAA;AACoC,IAAA;AAClB,MAAA;AACtB,MAAA;AACuB,QAAA;AAClC,MAAA;AACyB,MAAA;AAC3B,IAAA;AACM,IAAA;AACR,EAAA;AAE4B,EAAA;AAC0B,IAAA;AAEX,MAAA;AACE,MAAA;AAC9B,MAAA;AACiC,QAAA;AAC5C,MAAA;AACyB,MAAA;AAC3B,IAAA;AACM,IAAA;AACR,EAAA;AAEuC,EAAA;AACnB,IAAA;AACV,IAAA;AACE,EAAA;AAE4B,EAAA;AACnB,IAAA;AAChB,EAAA;AAES,EAAA;AACL,IAAA;AACL,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACF,IAAA;AACA,IAAA;AACE,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACA,MAAA;AACF,IAAA;AACF,EAAA;AAKE,EAAA;AAEJ;AAMsD;AACT,EAAA;AAC7B,EAAA;AAC6D,IAAA;AAC3E,EAAA;AACO,EAAA;AACT;AAWqE;AAG/D,EAAA;AAAC,IAAA;AAAA,IAAA;AAC8E,MAAA;AACtE,MAAA;AACD,MAAA;AACyC,MAAA;AACzC,MAAA;AAAA,IAAA;AAEV,EAAA;AAEJ;AAsB2B;AAEL;AAEK;ADnK4D;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/gtm.cjs","sourcesContent":[null,"\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport type { ReactNode } from \"react\";\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\n/** Script loading strategy. */\nexport type AnalyticsStrategy = \"default\" | \"afterInteractive\" | \"lazyOnload\";\n\n/** GA4 standard e-commerce event names. */\nexport type EcommerceEvent =\n | \"view_item\"\n | \"view_item_list\"\n | \"select_item\"\n | \"add_to_cart\"\n | \"remove_from_cart\"\n | \"view_cart\"\n | \"begin_checkout\"\n | \"add_shipping_info\"\n | \"add_payment_info\"\n | \"purchase\"\n | \"refund\";\n\n/** GA4 e-commerce item shape. */\nexport interface EcommerceItem {\n item_id: string;\n item_name?: string;\n item_brand?: string;\n item_category?: string;\n item_variant?: string;\n price?: number;\n quantity?: number;\n index?: number;\n [key: string]: unknown;\n}\n\n/** Parameters for e-commerce events. */\nexport interface EcommerceParams {\n currency?: string;\n value?: number;\n items?: EcommerceItem[];\n transaction_id?: string;\n shipping?: number;\n tax?: number;\n coupon?: string;\n [key: string]: unknown;\n}\n\nexport interface AnalyticsProviderProps {\n /** GTM container ID (e.g. \"GTM-XXXXX\"). */\n gtmId: string;\n /** Script loading strategy. Default: \"afterInteractive\". */\n strategy?: AnalyticsStrategy;\n /** Delay GTM loading until consent is granted. Default: false. */\n consentRequired?: boolean;\n /** Log dataLayer pushes to console. Default: false. */\n debug?: boolean;\n children: ReactNode;\n}\n\nexport interface AnalyticsContextValue {\n /** Push a custom event to the dataLayer. */\n trackEvent: (event: string, params?: Record<string, unknown>) => void;\n /** Push a GA4 e-commerce event to the dataLayer. */\n trackEcommerceEvent: (\n event: EcommerceEvent,\n params: EcommerceParams,\n ) => void;\n /** Grant consent — loads GTM if consentRequired was true. */\n grantConsent: () => void;\n /** Revoke consent. Does not unload GTM (scripts can't be unloaded). */\n revokeConsent: () => void;\n /** Whether consent has been granted. */\n hasConsent: boolean;\n /** Whether the GTM script has been injected. */\n isLoaded: boolean;\n}\n\n// ---------------------------------------------------------------------------\n// Context\n// ---------------------------------------------------------------------------\n\nconst AnalyticsContext = createContext<AnalyticsContextValue | null>(null);\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\ndeclare global {\n interface Window {\n dataLayer?: Record<string, unknown>[];\n }\n}\n\nfunction getDataLayer(): Record<string, unknown>[] {\n /* v8 ignore next */\n if (typeof window === \"undefined\") return [];\n if (!window.dataLayer) window.dataLayer = [];\n return window.dataLayer;\n}\n\nfunction injectGtmScript(\n gtmId: string,\n strategy: AnalyticsStrategy,\n): void {\n /* v8 ignore next */\n if (typeof document === \"undefined\") return;\n\n // Prevent double-injection\n if (document.getElementById(\"gtm-script\")) return;\n\n const dataLayer = getDataLayer();\n dataLayer.push({ \"gtm.start\": new Date().getTime(), event: \"gtm.js\" });\n\n const script = document.createElement(\"script\");\n script.id = \"gtm-script\";\n script.src = `https://www.googletagmanager.com/gtm.js?id=${encodeURIComponent(gtmId)}`;\n\n if (strategy === \"lazyOnload\") {\n script.async = true;\n script.defer = true;\n } else {\n // \"default\" and \"afterInteractive\"\n script.async = true;\n }\n\n document.head.appendChild(script);\n}\n\n// ---------------------------------------------------------------------------\n// Provider\n// ---------------------------------------------------------------------------\n\nexport function AnalyticsProvider({\n gtmId,\n strategy = \"afterInteractive\",\n consentRequired = false,\n debug = false,\n children,\n}: AnalyticsProviderProps) {\n const [hasConsent, setHasConsent] = useState(!consentRequired);\n const [isLoaded, setIsLoaded] = useState(false);\n const injectedRef = useRef(false);\n\n const loadGtm = useCallback(() => {\n if (injectedRef.current) return;\n injectedRef.current = true;\n\n if (strategy === \"lazyOnload\" && typeof requestIdleCallback === \"function\") {\n requestIdleCallback(() => {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n });\n } else if (strategy === \"afterInteractive\") {\n // Defer to after hydration\n setTimeout(() => {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n }, 0);\n } else {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n }\n }, [gtmId, strategy]);\n\n // Auto-load when consent is not required or already granted\n /* v8 ignore next */\n if (hasConsent && !injectedRef.current && typeof window !== \"undefined\") {\n loadGtm();\n }\n\n const trackEvent = useCallback(\n (event: string, params?: Record<string, unknown>) => {\n const entry = { event, ...params };\n if (debug) {\n console.log(\"[Analytics]\", entry);\n }\n getDataLayer().push(entry);\n },\n [debug],\n );\n\n const trackEcommerceEvent = useCallback(\n (event: EcommerceEvent, params: EcommerceParams) => {\n // Clear previous ecommerce data per GA4 best practices\n getDataLayer().push({ ecommerce: null });\n const entry = { event, ecommerce: params };\n if (debug) {\n console.log(\"[Analytics ecommerce]\", entry);\n }\n getDataLayer().push(entry);\n },\n [debug],\n );\n\n const grantConsent = useCallback(() => {\n setHasConsent(true);\n loadGtm();\n }, [loadGtm]);\n\n const revokeConsent = useCallback(() => {\n setHasConsent(false);\n }, []);\n\n const value = useMemo<AnalyticsContextValue>(\n () => ({\n trackEvent,\n trackEcommerceEvent,\n grantConsent,\n revokeConsent,\n hasConsent,\n isLoaded,\n }),\n [\n trackEvent,\n trackEcommerceEvent,\n grantConsent,\n revokeConsent,\n hasConsent,\n isLoaded,\n ],\n );\n\n return (\n <AnalyticsContext.Provider value={value}>\n {children}\n </AnalyticsContext.Provider>\n );\n}\n\n// ---------------------------------------------------------------------------\n// Hook\n// ---------------------------------------------------------------------------\n\nexport function useAnalytics(): AnalyticsContextValue {\n const context = useContext(AnalyticsContext);\n if (!context) {\n throw new Error(\"useAnalytics must be used within an <AnalyticsProvider>\");\n }\n return context;\n}\n\n// ---------------------------------------------------------------------------\n// Noscript\n// ---------------------------------------------------------------------------\n\nexport interface AnalyticsNoscriptProps {\n /** GTM container ID (must match AnalyticsProvider). */\n gtmId: string;\n}\n\nexport function AnalyticsNoscript({ gtmId }: AnalyticsNoscriptProps) {\n return (\n <noscript>\n <iframe\n src={`https://www.googletagmanager.com/ns.html?id=${encodeURIComponent(gtmId)}`}\n height=\"0\"\n width=\"0\"\n style={{ display: \"none\", visibility: \"hidden\" }}\n title=\"Google Tag Manager\"\n />\n </noscript>\n );\n}\n\n// ---------------------------------------------------------------------------\n// Backward-compatible aliases (from #59 GtmProvider)\n// ---------------------------------------------------------------------------\n\n/** @deprecated Use `AnalyticsStrategy` instead. */\nexport type GtmStrategy = AnalyticsStrategy;\n/** @deprecated Use `EcommerceEvent` instead. */\nexport type GtmEcommerceEvent = EcommerceEvent;\n/** @deprecated Use `EcommerceItem` instead. */\nexport type GtmItem = EcommerceItem;\n/** @deprecated Use `EcommerceParams` instead. */\nexport type GtmEcommerceParams = EcommerceParams;\n/** @deprecated Use `AnalyticsProviderProps` instead. */\nexport type GtmProviderProps = AnalyticsProviderProps;\n/** @deprecated Use `AnalyticsContextValue` instead. */\nexport type GtmContextValue = AnalyticsContextValue;\n/** @deprecated Use `AnalyticsNoscriptProps` instead. */\nexport type GtmNoscriptProps = AnalyticsNoscriptProps;\n\n/** @deprecated Use `AnalyticsProvider` instead. */\nexport const GtmProvider = AnalyticsProvider;\n/** @deprecated Use `useAnalytics` instead. */\nexport const useGtm = useAnalytics;\n/** @deprecated Use `AnalyticsNoscript` instead. */\nexport const GtmNoscript = AnalyticsNoscript;\n"]}
1
+ {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/gtm.cjs"],"names":[],"mappings":"AAAA,qFAAY;AACZ,YAAY;AACZ;AACE;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACF,6UAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/gtm.cjs"}
package/dist/gtm.js CHANGED
@@ -1,139 +1,13 @@
1
1
  "use client";
2
2
  "use client";
3
-
4
- // src/gtm.tsx
5
3
  import {
6
- createContext,
7
- useCallback,
8
- useContext,
9
- useMemo,
10
- useRef,
11
- useState
12
- } from "react";
13
- import { jsx } from "react/jsx-runtime";
14
- var AnalyticsContext = createContext(null);
15
- function getDataLayer() {
16
- if (typeof window === "undefined") return [];
17
- if (!window.dataLayer) window.dataLayer = [];
18
- return window.dataLayer;
19
- }
20
- function injectGtmScript(gtmId, strategy) {
21
- if (typeof document === "undefined") return;
22
- if (document.getElementById("gtm-script")) return;
23
- const dataLayer = getDataLayer();
24
- dataLayer.push({ "gtm.start": (/* @__PURE__ */ new Date()).getTime(), event: "gtm.js" });
25
- const script = document.createElement("script");
26
- script.id = "gtm-script";
27
- script.src = `https://www.googletagmanager.com/gtm.js?id=${encodeURIComponent(gtmId)}`;
28
- if (strategy === "lazyOnload") {
29
- script.async = true;
30
- script.defer = true;
31
- } else {
32
- script.async = true;
33
- }
34
- document.head.appendChild(script);
35
- }
36
- function AnalyticsProvider({
37
- gtmId,
38
- strategy = "afterInteractive",
39
- consentRequired = false,
40
- debug = false,
41
- children
42
- }) {
43
- const [hasConsent, setHasConsent] = useState(!consentRequired);
44
- const [isLoaded, setIsLoaded] = useState(false);
45
- const injectedRef = useRef(false);
46
- const loadGtm = useCallback(() => {
47
- if (injectedRef.current) return;
48
- injectedRef.current = true;
49
- if (strategy === "lazyOnload" && typeof requestIdleCallback === "function") {
50
- requestIdleCallback(() => {
51
- injectGtmScript(gtmId, strategy);
52
- setIsLoaded(true);
53
- });
54
- } else if (strategy === "afterInteractive") {
55
- setTimeout(() => {
56
- injectGtmScript(gtmId, strategy);
57
- setIsLoaded(true);
58
- }, 0);
59
- } else {
60
- injectGtmScript(gtmId, strategy);
61
- setIsLoaded(true);
62
- }
63
- }, [gtmId, strategy]);
64
- if (hasConsent && !injectedRef.current && typeof window !== "undefined") {
65
- loadGtm();
66
- }
67
- const trackEvent = useCallback(
68
- (event, params) => {
69
- const entry = { event, ...params };
70
- if (debug) {
71
- console.log("[Analytics]", entry);
72
- }
73
- getDataLayer().push(entry);
74
- },
75
- [debug]
76
- );
77
- const trackEcommerceEvent = useCallback(
78
- (event, params) => {
79
- getDataLayer().push({ ecommerce: null });
80
- const entry = { event, ecommerce: params };
81
- if (debug) {
82
- console.log("[Analytics ecommerce]", entry);
83
- }
84
- getDataLayer().push(entry);
85
- },
86
- [debug]
87
- );
88
- const grantConsent = useCallback(() => {
89
- setHasConsent(true);
90
- loadGtm();
91
- }, [loadGtm]);
92
- const revokeConsent = useCallback(() => {
93
- setHasConsent(false);
94
- }, []);
95
- const value = useMemo(
96
- () => ({
97
- trackEvent,
98
- trackEcommerceEvent,
99
- grantConsent,
100
- revokeConsent,
101
- hasConsent,
102
- isLoaded
103
- }),
104
- [
105
- trackEvent,
106
- trackEcommerceEvent,
107
- grantConsent,
108
- revokeConsent,
109
- hasConsent,
110
- isLoaded
111
- ]
112
- );
113
- return /* @__PURE__ */ jsx(AnalyticsContext.Provider, { value, children });
114
- }
115
- function useAnalytics() {
116
- const context = useContext(AnalyticsContext);
117
- if (!context) {
118
- throw new Error("useAnalytics must be used within an <AnalyticsProvider>");
119
- }
120
- return context;
121
- }
122
- function AnalyticsNoscript({ gtmId }) {
123
- return /* @__PURE__ */ jsx("noscript", { children: /* @__PURE__ */ jsx(
124
- "iframe",
125
- {
126
- src: `https://www.googletagmanager.com/ns.html?id=${encodeURIComponent(gtmId)}`,
127
- height: "0",
128
- width: "0",
129
- style: { display: "none", visibility: "hidden" },
130
- title: "Google Tag Manager"
131
- }
132
- ) });
133
- }
134
- var GtmProvider = AnalyticsProvider;
135
- var useGtm = useAnalytics;
136
- var GtmNoscript = AnalyticsNoscript;
4
+ AnalyticsNoscript,
5
+ AnalyticsProvider,
6
+ GtmNoscript,
7
+ GtmProvider,
8
+ useAnalytics,
9
+ useGtm
10
+ } from "./chunk-YR2SJWTF.js";
137
11
  export {
138
12
  AnalyticsNoscript,
139
13
  AnalyticsProvider,
package/dist/gtm.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/gtm.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport type { ReactNode } from \"react\";\n\n// ---------------------------------------------------------------------------\n// Types\n// ---------------------------------------------------------------------------\n\n/** Script loading strategy. */\nexport type AnalyticsStrategy = \"default\" | \"afterInteractive\" | \"lazyOnload\";\n\n/** GA4 standard e-commerce event names. */\nexport type EcommerceEvent =\n | \"view_item\"\n | \"view_item_list\"\n | \"select_item\"\n | \"add_to_cart\"\n | \"remove_from_cart\"\n | \"view_cart\"\n | \"begin_checkout\"\n | \"add_shipping_info\"\n | \"add_payment_info\"\n | \"purchase\"\n | \"refund\";\n\n/** GA4 e-commerce item shape. */\nexport interface EcommerceItem {\n item_id: string;\n item_name?: string;\n item_brand?: string;\n item_category?: string;\n item_variant?: string;\n price?: number;\n quantity?: number;\n index?: number;\n [key: string]: unknown;\n}\n\n/** Parameters for e-commerce events. */\nexport interface EcommerceParams {\n currency?: string;\n value?: number;\n items?: EcommerceItem[];\n transaction_id?: string;\n shipping?: number;\n tax?: number;\n coupon?: string;\n [key: string]: unknown;\n}\n\nexport interface AnalyticsProviderProps {\n /** GTM container ID (e.g. \"GTM-XXXXX\"). */\n gtmId: string;\n /** Script loading strategy. Default: \"afterInteractive\". */\n strategy?: AnalyticsStrategy;\n /** Delay GTM loading until consent is granted. Default: false. */\n consentRequired?: boolean;\n /** Log dataLayer pushes to console. Default: false. */\n debug?: boolean;\n children: ReactNode;\n}\n\nexport interface AnalyticsContextValue {\n /** Push a custom event to the dataLayer. */\n trackEvent: (event: string, params?: Record<string, unknown>) => void;\n /** Push a GA4 e-commerce event to the dataLayer. */\n trackEcommerceEvent: (\n event: EcommerceEvent,\n params: EcommerceParams,\n ) => void;\n /** Grant consent — loads GTM if consentRequired was true. */\n grantConsent: () => void;\n /** Revoke consent. Does not unload GTM (scripts can't be unloaded). */\n revokeConsent: () => void;\n /** Whether consent has been granted. */\n hasConsent: boolean;\n /** Whether the GTM script has been injected. */\n isLoaded: boolean;\n}\n\n// ---------------------------------------------------------------------------\n// Context\n// ---------------------------------------------------------------------------\n\nconst AnalyticsContext = createContext<AnalyticsContextValue | null>(null);\n\n// ---------------------------------------------------------------------------\n// Helpers\n// ---------------------------------------------------------------------------\n\ndeclare global {\n interface Window {\n dataLayer?: Record<string, unknown>[];\n }\n}\n\nfunction getDataLayer(): Record<string, unknown>[] {\n /* v8 ignore next */\n if (typeof window === \"undefined\") return [];\n if (!window.dataLayer) window.dataLayer = [];\n return window.dataLayer;\n}\n\nfunction injectGtmScript(\n gtmId: string,\n strategy: AnalyticsStrategy,\n): void {\n /* v8 ignore next */\n if (typeof document === \"undefined\") return;\n\n // Prevent double-injection\n if (document.getElementById(\"gtm-script\")) return;\n\n const dataLayer = getDataLayer();\n dataLayer.push({ \"gtm.start\": new Date().getTime(), event: \"gtm.js\" });\n\n const script = document.createElement(\"script\");\n script.id = \"gtm-script\";\n script.src = `https://www.googletagmanager.com/gtm.js?id=${encodeURIComponent(gtmId)}`;\n\n if (strategy === \"lazyOnload\") {\n script.async = true;\n script.defer = true;\n } else {\n // \"default\" and \"afterInteractive\"\n script.async = true;\n }\n\n document.head.appendChild(script);\n}\n\n// ---------------------------------------------------------------------------\n// Provider\n// ---------------------------------------------------------------------------\n\nexport function AnalyticsProvider({\n gtmId,\n strategy = \"afterInteractive\",\n consentRequired = false,\n debug = false,\n children,\n}: AnalyticsProviderProps) {\n const [hasConsent, setHasConsent] = useState(!consentRequired);\n const [isLoaded, setIsLoaded] = useState(false);\n const injectedRef = useRef(false);\n\n const loadGtm = useCallback(() => {\n if (injectedRef.current) return;\n injectedRef.current = true;\n\n if (strategy === \"lazyOnload\" && typeof requestIdleCallback === \"function\") {\n requestIdleCallback(() => {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n });\n } else if (strategy === \"afterInteractive\") {\n // Defer to after hydration\n setTimeout(() => {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n }, 0);\n } else {\n injectGtmScript(gtmId, strategy);\n setIsLoaded(true);\n }\n }, [gtmId, strategy]);\n\n // Auto-load when consent is not required or already granted\n /* v8 ignore next */\n if (hasConsent && !injectedRef.current && typeof window !== \"undefined\") {\n loadGtm();\n }\n\n const trackEvent = useCallback(\n (event: string, params?: Record<string, unknown>) => {\n const entry = { event, ...params };\n if (debug) {\n console.log(\"[Analytics]\", entry);\n }\n getDataLayer().push(entry);\n },\n [debug],\n );\n\n const trackEcommerceEvent = useCallback(\n (event: EcommerceEvent, params: EcommerceParams) => {\n // Clear previous ecommerce data per GA4 best practices\n getDataLayer().push({ ecommerce: null });\n const entry = { event, ecommerce: params };\n if (debug) {\n console.log(\"[Analytics ecommerce]\", entry);\n }\n getDataLayer().push(entry);\n },\n [debug],\n );\n\n const grantConsent = useCallback(() => {\n setHasConsent(true);\n loadGtm();\n }, [loadGtm]);\n\n const revokeConsent = useCallback(() => {\n setHasConsent(false);\n }, []);\n\n const value = useMemo<AnalyticsContextValue>(\n () => ({\n trackEvent,\n trackEcommerceEvent,\n grantConsent,\n revokeConsent,\n hasConsent,\n isLoaded,\n }),\n [\n trackEvent,\n trackEcommerceEvent,\n grantConsent,\n revokeConsent,\n hasConsent,\n isLoaded,\n ],\n );\n\n return (\n <AnalyticsContext.Provider value={value}>\n {children}\n </AnalyticsContext.Provider>\n );\n}\n\n// ---------------------------------------------------------------------------\n// Hook\n// ---------------------------------------------------------------------------\n\nexport function useAnalytics(): AnalyticsContextValue {\n const context = useContext(AnalyticsContext);\n if (!context) {\n throw new Error(\"useAnalytics must be used within an <AnalyticsProvider>\");\n }\n return context;\n}\n\n// ---------------------------------------------------------------------------\n// Noscript\n// ---------------------------------------------------------------------------\n\nexport interface AnalyticsNoscriptProps {\n /** GTM container ID (must match AnalyticsProvider). */\n gtmId: string;\n}\n\nexport function AnalyticsNoscript({ gtmId }: AnalyticsNoscriptProps) {\n return (\n <noscript>\n <iframe\n src={`https://www.googletagmanager.com/ns.html?id=${encodeURIComponent(gtmId)}`}\n height=\"0\"\n width=\"0\"\n style={{ display: \"none\", visibility: \"hidden\" }}\n title=\"Google Tag Manager\"\n />\n </noscript>\n );\n}\n\n// ---------------------------------------------------------------------------\n// Backward-compatible aliases (from #59 GtmProvider)\n// ---------------------------------------------------------------------------\n\n/** @deprecated Use `AnalyticsStrategy` instead. */\nexport type GtmStrategy = AnalyticsStrategy;\n/** @deprecated Use `EcommerceEvent` instead. */\nexport type GtmEcommerceEvent = EcommerceEvent;\n/** @deprecated Use `EcommerceItem` instead. */\nexport type GtmItem = EcommerceItem;\n/** @deprecated Use `EcommerceParams` instead. */\nexport type GtmEcommerceParams = EcommerceParams;\n/** @deprecated Use `AnalyticsProviderProps` instead. */\nexport type GtmProviderProps = AnalyticsProviderProps;\n/** @deprecated Use `AnalyticsContextValue` instead. */\nexport type GtmContextValue = AnalyticsContextValue;\n/** @deprecated Use `AnalyticsNoscriptProps` instead. */\nexport type GtmNoscriptProps = AnalyticsNoscriptProps;\n\n/** @deprecated Use `AnalyticsProvider` instead. */\nexport const GtmProvider = AnalyticsProvider;\n/** @deprecated Use `useAnalytics` instead. */\nexport const useGtm = useAnalytics;\n/** @deprecated Use `AnalyticsNoscript` instead. */\nexport const GtmNoscript = AnalyticsNoscript;\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
package/dist/input.cjs CHANGED
@@ -2,8 +2,8 @@
2
2
  "use client";
3
3
 
4
4
 
5
- var _chunkNWGXDXRVcjs = require('./chunk-NWGXDXRV.cjs');
5
+ var _chunkDQJDDXSHcjs = require('./chunk-DQJDDXSH.cjs');
6
6
 
7
7
 
8
- exports.Input = _chunkNWGXDXRVcjs.Input;
8
+ exports.Input = _chunkDQJDDXSHcjs.Input;
9
9
  //# sourceMappingURL=input.cjs.map
package/dist/input.js CHANGED
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  import {
4
4
  Input
5
- } from "./chunk-DAU3SFHM.js";
5
+ } from "./chunk-LCNFPBPV.js";
6
6
  export {
7
7
  Input
8
8
  };
package/dist/label.cjs CHANGED
@@ -2,8 +2,8 @@
2
2
  "use client";
3
3
 
4
4
 
5
- var _chunkCK53LO3Jcjs = require('./chunk-CK53LO3J.cjs');
5
+ var _chunkU35O67ZAcjs = require('./chunk-U35O67ZA.cjs');
6
6
 
7
7
 
8
- exports.Label = _chunkCK53LO3Jcjs.Label;
8
+ exports.Label = _chunkU35O67ZAcjs.Label;
9
9
  //# sourceMappingURL=label.cjs.map
package/dist/label.js CHANGED
@@ -2,7 +2,7 @@
2
2
  "use client";
3
3
  import {
4
4
  Label
5
- } from "./chunk-FHS7SJEQ.js";
5
+ } from "./chunk-3FSJ76CI.js";
6
6
  export {
7
7
  Label
8
8
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/list-view.cjs","../src/list-view.tsx"],"names":[],"mappings":"AAAA,yrBAAY;AACZ;AACA;ACFA,4EAAkB;AASd,+CAAA;AAFG,IAAM,SAAA,EAAW,CAAK,EAAE,IAAA,EAAM,YAAY,CAAA,EAAA,GAAwB;AACvE,EAAA,uBACE,6BAAA,oBAAA,EAAA,EACG,QAAA,kBAAA,IAAA,2BAAM,GAAA,mBAAI,CAAC,IAAA,EAAM,KAAA,EAAA,mBAChB,6BAAA,eAAC,CAAM,QAAA,EAAN,EAA4B,QAAA,EAAA,WAAA,CAAY,IAAA,EAAM,KAAK,EAAA,CAAA,EAA/B,KAAiC,CACvD,IAAA,CACH,CAAA;AAEJ,CAAA;ADPA;AACE;AACF,4BAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/list-view.cjs","sourcesContent":[null,"import React from \"react\";\n\ninterface ListViewProps<T> {\n data: T[] | undefined;\n renderItems: (item: T, index?: number) => React.ReactNode;\n}\n\nexport const ListView = <T,>({ data, renderItems }: ListViewProps<T>) => {\n return (\n <>\n {data?.map((item, index) => (\n <React.Fragment key={index}>{renderItems(item, index)}</React.Fragment>\n ))}\n </>\n );\n};\n"]}
1
+ {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/list-view.cjs","../src/list-view.tsx"],"names":[],"mappings":"AAAA,yrBAAY;AACZ;AACA;ACFA,4EAAkB;AAiBd,+CAAA;AAFG,IAAM,SAAA,EAAW,CAAK,EAAE,IAAA,EAAM,YAAY,CAAA,EAAA,GAAwB;AACvE,EAAA,uBACE,6BAAA,oBAAA,EAAA,EACG,QAAA,kBAAA,IAAA,2BAAM,GAAA,mBAAI,CAAC,IAAA,EAAM,KAAA,EAAA,mBAChB,6BAAA,eAAC,CAAM,QAAA,EAAN,EAA4B,QAAA,EAAA,WAAA,CAAY,IAAA,EAAM,KAAK,EAAA,CAAA,EAA/B,KAAiC,CACvD,IAAA,CACH,CAAA;AAEJ,CAAA;ADfA;AACE;AACF,4BAAC","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/list-view.cjs","sourcesContent":[null,"import React from \"react\";\n\ninterface ListViewProps<T> {\n data: T[] | undefined;\n renderItems: (item: T, index?: number) => React.ReactNode;\n}\n\n/**\n * Generic list renderer that maps an array through a render function.\n *\n * @example\n * ```tsx\n * <ListView data={products} renderItems={(item) => <ProductCard {...item} />} />\n * ```\n */\nexport const ListView = <T,>({ data, renderItems }: ListViewProps<T>) => {\n return (\n <>\n {data?.map((item, index) => (\n <React.Fragment key={index}>{renderItems(item, index)}</React.Fragment>\n ))}\n </>\n );\n};\n"]}
@@ -5,6 +5,14 @@ interface ListViewProps<T> {
5
5
  data: T[] | undefined;
6
6
  renderItems: (item: T, index?: number) => React__default.ReactNode;
7
7
  }
8
+ /**
9
+ * Generic list renderer that maps an array through a render function.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <ListView data={products} renderItems={(item) => <ProductCard {...item} />} />
14
+ * ```
15
+ */
8
16
  declare const ListView: <T>({ data, renderItems }: ListViewProps<T>) => react_jsx_runtime.JSX.Element;
9
17
 
10
18
  export { ListView };
@@ -5,6 +5,14 @@ interface ListViewProps<T> {
5
5
  data: T[] | undefined;
6
6
  renderItems: (item: T, index?: number) => React__default.ReactNode;
7
7
  }
8
+ /**
9
+ * Generic list renderer that maps an array through a render function.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <ListView data={products} renderItems={(item) => <ProductCard {...item} />} />
14
+ * ```
15
+ */
8
16
  declare const ListView: <T>({ data, renderItems }: ListViewProps<T>) => react_jsx_runtime.JSX.Element;
9
17
 
10
18
  export { ListView };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/list-view.tsx"],"sourcesContent":["import React from \"react\";\n\ninterface ListViewProps<T> {\n data: T[] | undefined;\n renderItems: (item: T, index?: number) => React.ReactNode;\n}\n\nexport const ListView = <T,>({ data, renderItems }: ListViewProps<T>) => {\n return (\n <>\n {data?.map((item, index) => (\n <React.Fragment key={index}>{renderItems(item, index)}</React.Fragment>\n ))}\n </>\n );\n};\n"],"mappings":";;;AAAA,OAAO,WAAW;AASd,mBAEI,WAFJ;AAFG,IAAM,WAAW,CAAK,EAAE,MAAM,YAAY,MAAwB;AACvE,SACE,gCACG,gBAAM,IAAI,CAAC,MAAM,UAChB,oBAAC,MAAM,UAAN,EAA4B,sBAAY,MAAM,KAAK,KAA/B,KAAiC,CACvD,GACH;AAEJ;","names":[]}
1
+ {"version":3,"sources":["../src/list-view.tsx"],"sourcesContent":["import React from \"react\";\n\ninterface ListViewProps<T> {\n data: T[] | undefined;\n renderItems: (item: T, index?: number) => React.ReactNode;\n}\n\n/**\n * Generic list renderer that maps an array through a render function.\n *\n * @example\n * ```tsx\n * <ListView data={products} renderItems={(item) => <ProductCard {...item} />} />\n * ```\n */\nexport const ListView = <T,>({ data, renderItems }: ListViewProps<T>) => {\n return (\n <>\n {data?.map((item, index) => (\n <React.Fragment key={index}>{renderItems(item, index)}</React.Fragment>\n ))}\n </>\n );\n};\n"],"mappings":";;;AAAA,OAAO,WAAW;AAiBd,mBAEI,WAFJ;AAFG,IAAM,WAAW,CAAK,EAAE,MAAM,YAAY,MAAwB;AACvE,SACE,gCACG,gBAAM,IAAI,CAAC,MAAM,UAChB,oBAAC,MAAM,UAAN,EAA4B,sBAAY,MAAM,KAAK,KAA/B,KAAiC,CACvD,GACH;AAEJ;","names":[]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/navigation-menu.cjs","../src/navigation-menu.tsx"],"names":[],"mappings":"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","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/navigation-menu.cjs","sourcesContent":[null,"\"use client\";\n\nimport * as React from \"react\";\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\";\nimport { cva } from \"class-variance-authority\";\nimport { LuChevronDown } from \"react-icons/lu\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\n\nconst NavigationMenu = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <NavigationMenuPrimitive.Root\n ref={ref}\n className={cn(\n \"relative z-[1000] flex max-w-max flex-1 items-center justify-center\",\n className,\n )}\n {...props}\n >\n {children}\n <NavigationMenuViewport />\n </NavigationMenuPrimitive.Root>\n));\nNavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;\n\nconst NavigationMenuList = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.List>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.List\n ref={ref}\n className={cn(\n \"group flex flex-1 list-none items-center justify-center space-x-1\",\n className,\n )}\n {...props}\n />\n));\nNavigationMenuList.displayName = NavigationMenuPrimitive.List.displayName;\n\nconst NavigationMenuItem = NavigationMenuPrimitive.Item;\n\nconst navigationMenuTriggerStyle = cva(\n \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=open]:text-accent-foreground data-[state=open]:bg-accent/50 data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent\",\n);\n\nconst NavigationMenuTrigger = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <NavigationMenuPrimitive.Trigger\n ref={ref}\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n {...props}\n >\n {children}{\" \"}\n <LuChevronDown\n className=\"relative top-[1px] ml-1 h-3 w-3 transition duration-300 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuPrimitive.Trigger>\n));\nNavigationMenuTrigger.displayName =\n NavigationMenuPrimitive.Trigger.displayName;\n\nconst NavigationMenuContent = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.Content\n ref={ref}\n className={cn(\n \"left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto\",\n className,\n )}\n {...props}\n />\n));\nNavigationMenuContent.displayName =\n NavigationMenuPrimitive.Content.displayName;\n\nconst NavigationMenuLink = NavigationMenuPrimitive.Link;\n\nconst NavigationMenuViewport = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Viewport>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Viewport>\n>(({ className, ...props }, ref) => (\n <div\n className={cn(\n \"absolute left-0 top-full z-[1000] flex justify-center\",\n )}\n >\n <NavigationMenuPrimitive.Viewport\n className={cn(\n \"origin-top-center relative z-[1000] mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]\",\n className,\n )}\n ref={ref}\n {...props}\n />\n </div>\n));\nNavigationMenuViewport.displayName =\n NavigationMenuPrimitive.Viewport.displayName;\n\nconst NavigationMenuIndicator = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Indicator>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Indicator>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.Indicator\n ref={ref}\n className={cn(\n \"top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in\",\n className,\n )}\n {...props}\n >\n <div className=\"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md\" />\n </NavigationMenuPrimitive.Indicator>\n));\nNavigationMenuIndicator.displayName =\n NavigationMenuPrimitive.Indicator.displayName;\n\nexport {\n navigationMenuTriggerStyle,\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n NavigationMenuIndicator,\n NavigationMenuViewport,\n};\n"]}
1
+ {"version":3,"sources":["/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/navigation-menu.cjs","../src/navigation-menu.tsx"],"names":[],"mappings":"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","file":"/home/runner/work/augur-packages/augur-packages/packages/augur-web/dist/navigation-menu.cjs","sourcesContent":[null,"/** Styled wrapper around @radix-ui/react-navigation-menu. See https://www.radix-ui.com/primitives/docs/components/navigation-menu */\n\"use client\";\n\nimport * as React from \"react\";\nimport * as NavigationMenuPrimitive from \"@radix-ui/react-navigation-menu\";\nimport { cva } from \"class-variance-authority\";\nimport { LuChevronDown } from \"react-icons/lu\";\nimport { cn } from \"@simpleapps-com/augur-utils/web\";\n\nconst NavigationMenu = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <NavigationMenuPrimitive.Root\n ref={ref}\n className={cn(\n \"relative z-[1000] flex max-w-max flex-1 items-center justify-center\",\n className,\n )}\n {...props}\n >\n {children}\n <NavigationMenuViewport />\n </NavigationMenuPrimitive.Root>\n));\nNavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;\n\nconst NavigationMenuList = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.List>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.List\n ref={ref}\n className={cn(\n \"group flex flex-1 list-none items-center justify-center space-x-1\",\n className,\n )}\n {...props}\n />\n));\nNavigationMenuList.displayName = NavigationMenuPrimitive.List.displayName;\n\nconst NavigationMenuItem = NavigationMenuPrimitive.Item;\n\nconst navigationMenuTriggerStyle = cva(\n \"group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[state=open]:text-accent-foreground data-[state=open]:bg-accent/50 data-[state=open]:hover:bg-accent data-[state=open]:focus:bg-accent\",\n);\n\nconst NavigationMenuTrigger = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <NavigationMenuPrimitive.Trigger\n ref={ref}\n className={cn(navigationMenuTriggerStyle(), \"group\", className)}\n {...props}\n >\n {children}{\" \"}\n <LuChevronDown\n className=\"relative top-[1px] ml-1 h-3 w-3 transition duration-300 group-data-[state=open]:rotate-180\"\n aria-hidden=\"true\"\n />\n </NavigationMenuPrimitive.Trigger>\n));\nNavigationMenuTrigger.displayName =\n NavigationMenuPrimitive.Trigger.displayName;\n\nconst NavigationMenuContent = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.Content\n ref={ref}\n className={cn(\n \"left-0 top-0 w-full data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out data-[motion=from-end]:slide-in-from-right-52 data-[motion=from-start]:slide-in-from-left-52 data-[motion=to-end]:slide-out-to-right-52 data-[motion=to-start]:slide-out-to-left-52 md:absolute md:w-auto\",\n className,\n )}\n {...props}\n />\n));\nNavigationMenuContent.displayName =\n NavigationMenuPrimitive.Content.displayName;\n\nconst NavigationMenuLink = NavigationMenuPrimitive.Link;\n\nconst NavigationMenuViewport = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Viewport>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Viewport>\n>(({ className, ...props }, ref) => (\n <div\n className={cn(\n \"absolute left-0 top-full z-[1000] flex justify-center\",\n )}\n >\n <NavigationMenuPrimitive.Viewport\n className={cn(\n \"origin-top-center relative z-[1000] mt-1.5 h-[var(--radix-navigation-menu-viewport-height)] w-full overflow-hidden rounded-md border bg-popover text-popover-foreground shadow data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-90 md:w-[var(--radix-navigation-menu-viewport-width)]\",\n className,\n )}\n ref={ref}\n {...props}\n />\n </div>\n));\nNavigationMenuViewport.displayName =\n NavigationMenuPrimitive.Viewport.displayName;\n\nconst NavigationMenuIndicator = React.forwardRef<\n React.ElementRef<typeof NavigationMenuPrimitive.Indicator>,\n React.ComponentPropsWithoutRef<typeof NavigationMenuPrimitive.Indicator>\n>(({ className, ...props }, ref) => (\n <NavigationMenuPrimitive.Indicator\n ref={ref}\n className={cn(\n \"top-full z-[1] flex h-1.5 items-end justify-center overflow-hidden data-[state=visible]:animate-in data-[state=hidden]:animate-out data-[state=hidden]:fade-out data-[state=visible]:fade-in\",\n className,\n )}\n {...props}\n >\n <div className=\"relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md\" />\n </NavigationMenuPrimitive.Indicator>\n));\nNavigationMenuIndicator.displayName =\n NavigationMenuPrimitive.Indicator.displayName;\n\nexport {\n navigationMenuTriggerStyle,\n NavigationMenu,\n NavigationMenuList,\n NavigationMenuItem,\n NavigationMenuContent,\n NavigationMenuTrigger,\n NavigationMenuLink,\n NavigationMenuIndicator,\n NavigationMenuViewport,\n};\n"]}