@coveord/plasma-mantine 56.8.0 → 56.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/.turbo/turbo-build.log +4 -4
  2. package/.turbo/turbo-test.log +108 -104
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/components/CodeEditor/languages/xml.d.ts.map +1 -1
  5. package/dist/cjs/components/CodeEditor/languages/xml.js.map +1 -1
  6. package/dist/cjs/components/Collection/enhanceWithCollectionProps.d.ts.map +1 -1
  7. package/dist/cjs/components/Collection/enhanceWithCollectionProps.js.map +1 -1
  8. package/dist/cjs/components/DateRangePicker/DateRange.module.css +4 -0
  9. package/dist/cjs/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  10. package/dist/cjs/components/DateRangePicker/DateRangePicker.js +2 -1
  11. package/dist/cjs/components/DateRangePicker/DateRangePicker.js.map +1 -1
  12. package/dist/cjs/components/RadioCard/RadioCard.d.ts +26 -0
  13. package/dist/cjs/components/RadioCard/RadioCard.d.ts.map +1 -0
  14. package/dist/cjs/components/RadioCard/RadioCard.js +82 -0
  15. package/dist/cjs/components/RadioCard/RadioCard.js.map +1 -0
  16. package/dist/cjs/index.d.ts +1 -0
  17. package/dist/cjs/index.d.ts.map +1 -1
  18. package/dist/cjs/index.js +4 -0
  19. package/dist/cjs/index.js.map +1 -1
  20. package/dist/cjs/styles/RadioCard.module.css +44 -0
  21. package/dist/esm/components/CodeEditor/languages/xml.d.ts.map +1 -1
  22. package/dist/esm/components/CodeEditor/languages/xml.js.map +1 -1
  23. package/dist/esm/components/Collection/enhanceWithCollectionProps.d.ts.map +1 -1
  24. package/dist/esm/components/Collection/enhanceWithCollectionProps.js.map +1 -1
  25. package/dist/esm/components/DateRangePicker/DateRange.module.css +4 -0
  26. package/dist/esm/components/DateRangePicker/DateRangePicker.d.ts.map +1 -1
  27. package/dist/esm/components/DateRangePicker/DateRangePicker.js +2 -1
  28. package/dist/esm/components/DateRangePicker/DateRangePicker.js.map +1 -1
  29. package/dist/esm/components/RadioCard/RadioCard.d.ts +26 -0
  30. package/dist/esm/components/RadioCard/RadioCard.d.ts.map +1 -0
  31. package/dist/esm/components/RadioCard/RadioCard.js +63 -0
  32. package/dist/esm/components/RadioCard/RadioCard.js.map +1 -0
  33. package/dist/esm/index.d.ts +1 -0
  34. package/dist/esm/index.d.ts.map +1 -1
  35. package/dist/esm/index.js +2 -0
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/styles/RadioCard.module.css +44 -0
  38. package/package.json +19 -19
  39. package/src/components/CodeEditor/languages/xml.ts +2 -1
  40. package/src/components/Collection/enhanceWithCollectionProps.ts +2 -2
  41. package/src/components/DateRangePicker/DateRange.module.css +4 -0
  42. package/src/components/DateRangePicker/DateRangePicker.tsx +2 -1
  43. package/src/components/RadioCard/RadioCard.tsx +73 -0
  44. package/src/components/RadioCard/__tests__/RadioCard.component.spec.tsx +25 -0
  45. package/src/index.ts +3 -0
  46. package/src/styles/RadioCard.module.css +44 -0
@@ -1 +1 @@
1
- {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AA0C5C,eAAO,MAAM,GAAG;uBAXU,MAAM,KAAG,IAAI;CAWV,CAAC"}
1
+ {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AA2C5C,eAAO,MAAM,GAAG;uBAXU,MAAM,KAAG,IAAI;CAWV,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["XML","format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;AAxCb,IAAMC,SAAS,SAACC;IACZ,oGAAoG;IACpG,IAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,IAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,SAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,IAAMC,WAAW,SAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,gCAAgC,SAAOC;;;;;;4BACnC;gCACIC,OAAOD,MAAME,iBAAiB;gCAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;4BAC/B;;;;;;IAER;AACJ;AAEO,IAAMvB,MAAM;IAACc,UAAAA;AAAQ"}
1
+ {"version":3,"sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\nimport type {editor} from 'monaco-editor';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model: editor.ITextModel) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["XML","format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue"],"mappings":";;;;+BA2CaA;;;eAAAA;;;;;AAxCb,IAAMC,SAAS,SAACC;IACZ,oGAAoG;IACpG,IAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,IAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,SAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,IAAMC,WAAW,SAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,gCAAgC,SAAOC;;;;;;4BACnC;gCACIC,OAAOD,MAAME,iBAAiB;gCAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;4BAC/B;;;;;;IAER;AACJ;AAEO,IAAMvB,MAAM;IAACc,UAAAA;AAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,EAChC,UAAU;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAC,KAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAoBlF,CAAC"}
1
+ {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAwB,MAAM,eAAe,CAAC;AAClE,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,EAChC,UAAU;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAC,KAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAoBlF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n options?: {validateInputOnChange?: boolean},\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n const {validateInputOnChange = false} = options || {};\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {\n payload.form.reorderListItem(field, reorderPayload);\n validateInputOnChange && payload.form.validate();\n },\n onRemoveItem: (index: number) => {\n payload.form.removeListItem(field, index);\n validateInputOnChange && payload.form.validate();\n },\n onInsertItem: (valueToInsert: unknown, index: number) => {\n payload.form.insertListItem(field, valueToInsert, index);\n validateInputOnChange && payload.form.validate();\n },\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","options","validateInputOnChange","onReorderItem","reorderPayload","form","reorderListItem","validate","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":";;;;+BAGaA;;;eAAAA;;;AAAN,IAAMA,6BAA6B,SAItCC,SACAC,OACAC;IAEA,IAAIF,QAAQC,KAAK,KAAKA,OAAO;QACzB,IAAwCC,OAAAA,WAAW,CAAC,gCAAZA,KAAjCC,uBAAAA,gEAAwB;QAC/B,OAAO;YACHC,eAAe,SAACC;gBACZL,QAAQM,IAAI,CAACC,eAAe,CAACN,OAAOI;gBACpCF,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAC,cAAc,SAACC;gBACXV,QAAQM,IAAI,CAACK,cAAc,CAACV,OAAOS;gBACnCP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAI,cAAc,SAACC,eAAwBH;gBACnCV,QAAQM,IAAI,CAACQ,cAAc,CAACb,OAAOY,eAAeH;gBAClDP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;QACJ;IACJ;IAEA,OAAO,CAAC;AACZ"}
1
+ {"version":3,"sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput, type FormArrayElement} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n options?: {validateInputOnChange?: boolean},\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n const {validateInputOnChange = false} = options || {};\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {\n payload.form.reorderListItem(field, reorderPayload);\n validateInputOnChange && payload.form.validate();\n },\n onRemoveItem: (index: number) => {\n payload.form.removeListItem(field, index);\n validateInputOnChange && payload.form.validate();\n },\n onInsertItem: (valueToInsert: FormArrayElement<FormValues, (typeof payload)['field']>, index: number) => {\n payload.form.insertListItem(field, valueToInsert, index);\n validateInputOnChange && payload.form.validate();\n },\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","options","validateInputOnChange","onReorderItem","reorderPayload","form","reorderListItem","validate","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":";;;;+BAGaA;;;eAAAA;;;AAAN,IAAMA,6BAA6B,SAItCC,SACAC,OACAC;IAEA,IAAIF,QAAQC,KAAK,KAAKA,OAAO;QACzB,IAAwCC,OAAAA,WAAW,CAAC,gCAAZA,KAAjCC,uBAAAA,gEAAwB;QAC/B,OAAO;YACHC,eAAe,SAACC;gBACZL,QAAQM,IAAI,CAACC,eAAe,CAACN,OAAOI;gBACpCF,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAC,cAAc,SAACC;gBACXV,QAAQM,IAAI,CAACK,cAAc,CAACV,OAAOS;gBACnCP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAI,cAAc,SAACC,eAAwEH;gBACnFV,QAAQM,IAAI,CAACQ,cAAc,CAACb,OAAOY,eAAeH;gBAClDP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;QACJ;IACJ;IAEA,OAAO,CAAC;AACZ"}
@@ -5,3 +5,7 @@
5
5
  .save {
6
6
  border-top: 1px solid var(--mantine-color-default-border);
7
7
  }
8
+
9
+ .input {
10
+ white-space: nowrap;
11
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"names":[],"mappings":"AACA,OAAO,EACH,QAAQ,EAER,OAAO,EAGP,YAAY,EACZ,cAAc,EAGjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAgC,kCAAkC,EAAC,MAAM,iCAAiC,CAAC;AAgBlH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,oBACb,SAAQ,QAAQ,EACZ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC,EACtG,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,eAAe,CAAC,EAC9C,cAAc,CAAC,sBAAsB,CAAC;IAC1C;;OAEG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IACzC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAOH,eAAO,MAAM,eAAe;WAVjB,oBAAoB;SACtB,cAAc;iBACN,0BAA0B;EA8GzC,CAAC"}
1
+ {"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"names":[],"mappings":"AACA,OAAO,EACH,QAAQ,EAER,OAAO,EAGP,YAAY,EACZ,cAAc,EAGjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAgC,kCAAkC,EAAC,MAAM,iCAAiC,CAAC;AAgBlH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,oBACb,SAAQ,QAAQ,EACZ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC,EACtG,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,eAAe,CAAC,EAC9C,cAAc,CAAC,sBAAsB,CAAC;IAC1C;;OAEG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IACzC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAOH,eAAO,MAAM,eAAe;WAVjB,oBAAoB;SACtB,cAAc;iBACN,0BAA0B;EA8GzC,CAAC"}
@@ -19,6 +19,7 @@ var _core = require("@mantine/core");
19
19
  var _hooks = require("@mantine/hooks");
20
20
  var _dayjs = /*#__PURE__*/ _interop_require_default._(require("dayjs"));
21
21
  var _useurlsyncedstate = require("../../hooks/use-url-synced-state");
22
+ var _DateRangemodulecss = /*#__PURE__*/ _interop_require_default._(require("./DateRange.module.css"));
22
23
  var _DateRangePickerInlineCalendar = require("./DateRangePickerInlineCalendar");
23
24
  var serialization = function(input) {
24
25
  return Object.freeze(input);
@@ -79,7 +80,7 @@ var DateRangePicker = (0, _core.factory)(function(props) {
79
80
  ]);
80
81
  var getStyles = (0, _core.useStyles)({
81
82
  name: 'DateRangePicker',
82
- classes: {},
83
+ classes: _DateRangemodulecss.default,
83
84
  props: props,
84
85
  className: className,
85
86
  classNames: classNames,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import {IconCalendar} from '@coveord/plasma-react-icons';\nimport {\n BoxProps,\n factory,\n Factory,\n InputBase,\n Popover,\n PopoverProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {DatesRangeValue, DateStringValue} from '@mantine/dates';\nimport {useUncontrolled} from '@mantine/hooks';\nimport dayjs from 'dayjs';\nimport {useUrlSyncedState, UseUrlSyncedStateOptions} from '../../hooks/use-url-synced-state';\nimport {DateRangePickerInlineCalendar, DateRangePickerInlineCalendarProps} from './DateRangePickerInlineCalendar';\n\nconst serialization = (input: Pick<UseUrlSyncedStateOptions<DatesRangeValue<string>>, 'serializer' | 'deserializer'>) =>\n Object.freeze(input);\n\nconst DATE_RANGE_SERIALIZATION = serialization({\n serializer: ([from, to]) => [\n ['from', from ? new Date(from).toISOString() : '', true],\n ['to', to ? new Date(to).toISOString() : '', true],\n ],\n deserializer: (params, initial) => [\n params.get('from') ? params.get('from') : initial[0],\n params.get('to') ? params.get('to') : initial[1],\n ],\n});\n\nexport type DateRangePickerStylesNames = 'input';\n\nexport interface DateRangePickerProps\n extends BoxProps,\n Pick<DateRangePickerInlineCalendarProps, 'presets' | 'rangeCalendarProps' | 'startProps' | 'endProps'>,\n Pick<PopoverProps, 'opened' | 'defaultOpened'>,\n StylesApiProps<DateRangePickerFactory> {\n /**\n * Called when the target input is clicked\n */\n onClick?(): void;\n /**\n * Function called when the cancel button is clicked.\n */\n onCancel?(): void;\n /**\n * Function called when the date range value changes.\n */\n onChange?(dates: DatesRangeValue<string>): void;\n /**\n * Called when the popover opened state changes.\n */\n onOpenedChange?(opened: boolean): void;\n /**\n * Optional formatter function to format the date value.\n * Receives the date prop and should return a string.\n * @default (time) => dayjs(time).format('MMM D, YYYY')\n */\n formatter?: (time: dayjs.ConfigType) => string;\n /**\n * The placeholder label to display when no date range is selected.\n *\n * @default \"Select date range\"\n */\n placeholder?: string;\n /**\n * Default value for uncontrolled input\n */\n defaultValue?: DatesRangeValue<string>;\n /**\n * Value for controlled input\n */\n value?: DatesRangeValue<string>;\n /**\n * Sync the selected dates to URL query parameters\n */\n syncWithUrl?: boolean;\n /**\n * Error message to display.\n */\n error?: string;\n}\n\nexport type DateRangePickerFactory = Factory<{\n props: DateRangePickerProps;\n ref: HTMLDivElement;\n stylesNames: DateRangePickerStylesNames;\n}>;\n\nconst defaultProps: Partial<DateRangePickerProps> = {\n placeholder: 'Select date range',\n formatter: (time) => dayjs(time).format('MMM D, YYYY'),\n};\n\nexport const DateRangePicker = factory<DateRangePickerFactory>((props: DateRangePickerProps) => {\n const {\n defaultValue,\n value,\n opened,\n defaultOpened,\n onOpenedChange,\n onClick,\n onCancel,\n onChange,\n presets,\n startProps,\n endProps,\n rangeCalendarProps,\n formatter,\n placeholder,\n syncWithUrl,\n error,\n className,\n classNames,\n style,\n styles,\n vars,\n unstyled,\n ...others\n } = useProps('PlasmaDateRangePicker', defaultProps as Partial<DateRangePickerProps>, props);\n\n const getStyles = useStyles<DateRangePickerFactory>({\n name: 'DateRangePicker',\n classes: {},\n props,\n className,\n classNames,\n style,\n styles,\n unstyled,\n vars,\n });\n const stylesApiProps = {classNames, styles};\n\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange: onOpenedChange,\n });\n\n const [dateRange, setDateRange] = useUrlSyncedState<DatesRangeValue<string>>({\n ...DATE_RANGE_SERIALIZATION,\n initialState: defaultValue !== undefined ? defaultValue : [null, null],\n sync: !!syncWithUrl,\n });\n\n const handleApply = (dates: DatesRangeValue<string>) => {\n if (value === undefined) {\n setDateRange(dates);\n }\n onChange?.(dates);\n setOpened(false);\n };\n\n const handleClick = () => {\n setOpened(true);\n onClick?.();\n };\n\n const handleCancel = () => {\n setOpened(false);\n onCancel?.();\n };\n\n const _value = value ?? dateRange;\n const formattedRange = `${formatter(_value[0])} - ${formatter(_value[1])}`;\n const dateRangeInitialized = _value.every((date: DateStringValue) => typeof date === 'string' && date !== '');\n\n return (\n <Popover opened={_opened} onChange={setOpened}>\n <Popover.Target>\n <InputBase\n component=\"button\"\n leftSection={<IconCalendar height={16} />}\n onClick={handleClick}\n error={error}\n {...getStyles('input', {className, style, ...stylesApiProps})}\n {...others}\n >\n {dateRangeInitialized ? formattedRange : placeholder}\n </InputBase>\n </Popover.Target>\n <Popover.Dropdown p={0}>\n <DateRangePickerInlineCalendar\n initialRange={_value}\n onApply={handleApply}\n onCancel={handleCancel}\n presets={presets}\n rangeCalendarProps={rangeCalendarProps}\n startProps={startProps}\n endProps={endProps}\n />\n </Popover.Dropdown>\n </Popover>\n );\n});\n"],"names":["DateRangePicker","serialization","input","Object","freeze","DATE_RANGE_SERIALIZATION","serializer","from","to","Date","toISOString","deserializer","params","initial","get","defaultProps","placeholder","formatter","time","dayjs","format","factory","props","useProps","defaultValue","value","opened","defaultOpened","onOpenedChange","onClick","onCancel","onChange","presets","startProps","endProps","rangeCalendarProps","syncWithUrl","error","className","classNames","style","styles","vars","unstyled","others","getStyles","useStyles","name","classes","stylesApiProps","useUncontrolled","finalValue","_opened","setOpened","useUrlSyncedState","initialState","undefined","sync","dateRange","setDateRange","handleApply","dates","handleClick","handleCancel","_value","formattedRange","dateRangeInitialized","every","date","Popover","Target","InputBase","component","leftSection","IconCalendar","height","Dropdown","p","DateRangePickerInlineCalendar","initialRange","onApply"],"mappings":";;;;+BAgGaA;;;eAAAA;;;;;;;;;gCAhGc;oBAWpB;qBAEuB;8DACZ;iCACwC;6CACsB;AAEhF,IAAMC,gBAAgB,SAACC;WACnBC,OAAOC,MAAM,CAACF;;AAElB,IAAMG,2BAA2BJ,cAAc;IAC3CK,YAAY;mDAAEC,kBAAMC;eAAQ;YACxB;gBAAC;gBAAQD,OAAO,IAAIE,KAAKF,MAAMG,WAAW,KAAK;gBAAI;aAAK;YACxD;gBAAC;gBAAMF,KAAK,IAAIC,KAAKD,IAAIE,WAAW,KAAK;gBAAI;aAAK;SACrD;;IACDC,cAAc,SAACC,QAAQC;eAAY;YAC/BD,OAAOE,GAAG,CAAC,UAAUF,OAAOE,GAAG,CAAC,UAAUD,OAAO,CAAC,EAAE;YACpDD,OAAOE,GAAG,CAAC,QAAQF,OAAOE,GAAG,CAAC,QAAQD,OAAO,CAAC,EAAE;SACnD;;AACL;AA6DA,IAAME,eAA8C;IAChDC,aAAa;IACbC,WAAW,SAACC;eAASC,IAAAA,cAAK,EAACD,MAAME,MAAM,CAAC;;AAC5C;AAEO,IAAMpB,kBAAkBqB,IAAAA,aAAO,EAAyB,SAACC;IAC5D,IAwBIC,YAAAA,IAAAA,cAAQ,EAAC,yBAAyBR,cAA+CO,QAvBjFE,eAuBAD,UAvBAC,cACAC,QAsBAF,UAtBAE,OACAC,SAqBAH,UArBAG,QACAC,gBAoBAJ,UApBAI,eACAC,iBAmBAL,UAnBAK,gBACAC,UAkBAN,UAlBAM,SACAC,WAiBAP,UAjBAO,UACAC,WAgBAR,UAhBAQ,UACAC,UAeAT,UAfAS,SACAC,aAcAV,UAdAU,YACAC,WAaAX,UAbAW,UACAC,qBAYAZ,UAZAY,oBACAlB,YAWAM,UAXAN,WACAD,cAUAO,UAVAP,aACAoB,cASAb,UATAa,aACAC,QAQAd,UARAc,OACAC,YAOAf,UAPAe,WACAC,aAMAhB,UANAgB,YACAC,QAKAjB,UALAiB,OACAC,SAIAlB,UAJAkB,QACAC,OAGAnB,UAHAmB,MACAC,WAEApB,UAFAoB,UACGC,sCACHrB;QAvBAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAlB;QACAD;QACAoB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAIJ,IAAME,YAAYC,IAAAA,eAAS,EAAyB;QAChDC,MAAM;QACNC,SAAS,CAAC;QACV1B,OAAAA;QACAgB,WAAAA;QACAC,YAAAA;QACAC,OAAAA;QACAC,QAAAA;QACAE,UAAAA;QACAD,MAAAA;IACJ;IACA,IAAMO,iBAAiB;QAACV,YAAAA;QAAYE,QAAAA;IAAM;IAE1C,IAA6BS,sCAAAA,IAAAA,sBAAe,EAAC;QACzCzB,OAAOC;QACPF,cAAcG;QACdwB,YAAY;QACZpB,UAAUH;IACd,QALOwB,UAAsBF,qBAAbG,YAAaH;IAO7B,IAAkCI,wCAAAA,IAAAA,oCAAiB,EAA0B,4CACtEjD;QACHkD,cAAc/B,iBAAiBgC,YAAYhC,eAAe;YAAC;YAAM;SAAK;QACtEiC,MAAM,CAAC,CAACrB;aAHLsB,YAA2BJ,uBAAhBK,eAAgBL;IAMlC,IAAMM,cAAc,SAACC;QACjB,IAAIpC,UAAU+B,WAAW;YACrBG,aAAaE;QACjB;QACA9B,qBAAAA,+BAAAA,SAAW8B;QACXR,UAAU;IACd;IAEA,IAAMS,cAAc;QAChBT,UAAU;QACVxB,oBAAAA,8BAAAA;IACJ;IAEA,IAAMkC,eAAe;QACjBV,UAAU;QACVvB,qBAAAA,+BAAAA;IACJ;IAEA,IAAMkC,SAASvC,kBAAAA,mBAAAA,QAASiC;IACxB,IAAMO,iBAAiB,AAAC,GAA4BhD,OAA1BA,UAAU+C,MAAM,CAAC,EAAE,GAAE,OAA0B,OAArB/C,UAAU+C,MAAM,CAAC,EAAE;IACvE,IAAME,uBAAuBF,OAAOG,KAAK,CAAC,SAACC;eAA0B,OAAOA,SAAS,YAAYA,SAAS;;IAE1G,qBACI,sBAACC,aAAO;QAAC3C,QAAQ0B;QAASrB,UAAUsB;;0BAChC,qBAACgB,aAAO,CAACC,MAAM;0BACX,cAAA,qBAACC,eAAS;oBACNC,WAAU;oBACVC,2BAAa,qBAACC,8BAAY;wBAACC,QAAQ;;oBACnC9C,SAASiC;oBACTzB,OAAOA;mBACHQ,UAAU,SAAS;oBAACP,WAAAA;oBAAWE,OAAAA;mBAAUS,kBACzCL;8BAEHsB,uBAAuBD,iBAAiBjD;;;0BAGjD,qBAACqD,aAAO,CAACO,QAAQ;gBAACC,GAAG;0BACjB,cAAA,qBAACC,4DAA6B;oBAC1BC,cAAcf;oBACdgB,SAASpB;oBACT9B,UAAUiC;oBACV/B,SAASA;oBACTG,oBAAoBA;oBACpBF,YAAYA;oBACZC,UAAUA;;;;;AAK9B"}
1
+ {"version":3,"sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import {IconCalendar} from '@coveord/plasma-react-icons';\nimport {\n BoxProps,\n factory,\n Factory,\n InputBase,\n Popover,\n PopoverProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {DatesRangeValue, DateStringValue} from '@mantine/dates';\nimport {useUncontrolled} from '@mantine/hooks';\nimport dayjs from 'dayjs';\nimport {useUrlSyncedState, UseUrlSyncedStateOptions} from '../../hooks/use-url-synced-state';\nimport classes from './DateRange.module.css';\nimport {DateRangePickerInlineCalendar, DateRangePickerInlineCalendarProps} from './DateRangePickerInlineCalendar';\n\nconst serialization = (input: Pick<UseUrlSyncedStateOptions<DatesRangeValue<string>>, 'serializer' | 'deserializer'>) =>\n Object.freeze(input);\n\nconst DATE_RANGE_SERIALIZATION = serialization({\n serializer: ([from, to]) => [\n ['from', from ? new Date(from).toISOString() : '', true],\n ['to', to ? new Date(to).toISOString() : '', true],\n ],\n deserializer: (params, initial) => [\n params.get('from') ? params.get('from') : initial[0],\n params.get('to') ? params.get('to') : initial[1],\n ],\n});\n\nexport type DateRangePickerStylesNames = 'input';\n\nexport interface DateRangePickerProps\n extends BoxProps,\n Pick<DateRangePickerInlineCalendarProps, 'presets' | 'rangeCalendarProps' | 'startProps' | 'endProps'>,\n Pick<PopoverProps, 'opened' | 'defaultOpened'>,\n StylesApiProps<DateRangePickerFactory> {\n /**\n * Called when the target input is clicked\n */\n onClick?(): void;\n /**\n * Function called when the cancel button is clicked.\n */\n onCancel?(): void;\n /**\n * Function called when the date range value changes.\n */\n onChange?(dates: DatesRangeValue<string>): void;\n /**\n * Called when the popover opened state changes.\n */\n onOpenedChange?(opened: boolean): void;\n /**\n * Optional formatter function to format the date value.\n * Receives the date prop and should return a string.\n * @default (time) => dayjs(time).format('MMM D, YYYY')\n */\n formatter?: (time: dayjs.ConfigType) => string;\n /**\n * The placeholder label to display when no date range is selected.\n *\n * @default \"Select date range\"\n */\n placeholder?: string;\n /**\n * Default value for uncontrolled input\n */\n defaultValue?: DatesRangeValue<string>;\n /**\n * Value for controlled input\n */\n value?: DatesRangeValue<string>;\n /**\n * Sync the selected dates to URL query parameters\n */\n syncWithUrl?: boolean;\n /**\n * Error message to display.\n */\n error?: string;\n}\n\nexport type DateRangePickerFactory = Factory<{\n props: DateRangePickerProps;\n ref: HTMLDivElement;\n stylesNames: DateRangePickerStylesNames;\n}>;\n\nconst defaultProps: Partial<DateRangePickerProps> = {\n placeholder: 'Select date range',\n formatter: (time) => dayjs(time).format('MMM D, YYYY'),\n};\n\nexport const DateRangePicker = factory<DateRangePickerFactory>((props: DateRangePickerProps) => {\n const {\n defaultValue,\n value,\n opened,\n defaultOpened,\n onOpenedChange,\n onClick,\n onCancel,\n onChange,\n presets,\n startProps,\n endProps,\n rangeCalendarProps,\n formatter,\n placeholder,\n syncWithUrl,\n error,\n className,\n classNames,\n style,\n styles,\n vars,\n unstyled,\n ...others\n } = useProps('PlasmaDateRangePicker', defaultProps as Partial<DateRangePickerProps>, props);\n\n const getStyles = useStyles<DateRangePickerFactory>({\n name: 'DateRangePicker',\n classes,\n props,\n className,\n classNames,\n style,\n styles,\n unstyled,\n vars,\n });\n const stylesApiProps = {classNames, styles};\n\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange: onOpenedChange,\n });\n\n const [dateRange, setDateRange] = useUrlSyncedState<DatesRangeValue<string>>({\n ...DATE_RANGE_SERIALIZATION,\n initialState: defaultValue !== undefined ? defaultValue : [null, null],\n sync: !!syncWithUrl,\n });\n\n const handleApply = (dates: DatesRangeValue<string>) => {\n if (value === undefined) {\n setDateRange(dates);\n }\n onChange?.(dates);\n setOpened(false);\n };\n\n const handleClick = () => {\n setOpened(true);\n onClick?.();\n };\n\n const handleCancel = () => {\n setOpened(false);\n onCancel?.();\n };\n\n const _value = value ?? dateRange;\n const formattedRange = `${formatter(_value[0])} - ${formatter(_value[1])}`;\n const dateRangeInitialized = _value.every((date: DateStringValue) => typeof date === 'string' && date !== '');\n\n return (\n <Popover opened={_opened} onChange={setOpened}>\n <Popover.Target>\n <InputBase\n component=\"button\"\n leftSection={<IconCalendar height={16} />}\n onClick={handleClick}\n error={error}\n {...getStyles('input', {className, style, ...stylesApiProps})}\n {...others}\n >\n {dateRangeInitialized ? formattedRange : placeholder}\n </InputBase>\n </Popover.Target>\n <Popover.Dropdown p={0}>\n <DateRangePickerInlineCalendar\n initialRange={_value}\n onApply={handleApply}\n onCancel={handleCancel}\n presets={presets}\n rangeCalendarProps={rangeCalendarProps}\n startProps={startProps}\n endProps={endProps}\n />\n </Popover.Dropdown>\n </Popover>\n );\n});\n"],"names":["DateRangePicker","serialization","input","Object","freeze","DATE_RANGE_SERIALIZATION","serializer","from","to","Date","toISOString","deserializer","params","initial","get","defaultProps","placeholder","formatter","time","dayjs","format","factory","props","useProps","defaultValue","value","opened","defaultOpened","onOpenedChange","onClick","onCancel","onChange","presets","startProps","endProps","rangeCalendarProps","syncWithUrl","error","className","classNames","style","styles","vars","unstyled","others","getStyles","useStyles","name","classes","stylesApiProps","useUncontrolled","finalValue","_opened","setOpened","useUrlSyncedState","initialState","undefined","sync","dateRange","setDateRange","handleApply","dates","handleClick","handleCancel","_value","formattedRange","dateRangeInitialized","every","date","Popover","Target","InputBase","component","leftSection","IconCalendar","height","Dropdown","p","DateRangePickerInlineCalendar","initialRange","onApply"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Factory, RadioCardProps as MantineRadioCardProps, RadioCardStylesNames as MantineRadioCardStylesNames, RadioCardCssVariables, StylesApiProps } from '@mantine/core';
2
+ import { ReactNode } from 'react';
3
+ export type RadioCardStylesNames = MantineRadioCardStylesNames | 'container' | 'indicator' | 'title' | 'description';
4
+ export type RadioCardFactory = Factory<{
5
+ props: RadioCardProps;
6
+ ref: HTMLButtonElement;
7
+ stylesNames: RadioCardStylesNames;
8
+ vars: RadioCardCssVariables;
9
+ }>;
10
+ export type RadioCardProps = MantineRadioCardProps & StylesApiProps<RadioCardFactory> & {
11
+ /**
12
+ * The label of the card. Appears next to the radio indicator.
13
+ */
14
+ label: ReactNode;
15
+ /**
16
+ * The description of the card. Appears under the title.
17
+ */
18
+ description?: ReactNode;
19
+ };
20
+ export declare const RadioCard: import("@mantine/core").MantineComponent<{
21
+ props: RadioCardProps;
22
+ ref: HTMLButtonElement;
23
+ stylesNames: RadioCardStylesNames;
24
+ vars: RadioCardCssVariables;
25
+ }>;
26
+ //# sourceMappingURL=RadioCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioCard.d.ts","sourceRoot":"","sources":["../../../../src/components/RadioCard/RadioCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EAEP,cAAc,IAAI,qBAAqB,EACvC,oBAAoB,IAAI,2BAA2B,EAEnD,qBAAqB,EACrB,cAAc,EAKjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAGhC,MAAM,MAAM,oBAAoB,GAAG,2BAA2B,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,aAAa,CAAC;AACrH,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,cAAc,CAAC;IACtB,GAAG,EAAE,iBAAiB,CAAC;IACvB,WAAW,EAAE,oBAAoB,CAAC;IAClC,IAAI,EAAE,qBAAqB,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,qBAAqB,GAC9C,cAAc,CAAC,gBAAgB,CAAC,GAAG;IAC/B;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B,CAAC;AAIN,eAAO,MAAM,SAAS;WApBX,cAAc;SAChB,iBAAiB;iBACT,oBAAoB;UAC3B,qBAAqB;EAkD7B,CAAC"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "RadioCard", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return RadioCard;
9
+ }
10
+ });
11
+ var _interop_require_default = require("@swc/helpers/_/_interop_require_default");
12
+ var _object_spread = require("@swc/helpers/_/_object_spread");
13
+ var _object_spread_props = require("@swc/helpers/_/_object_spread_props");
14
+ var _object_without_properties = require("@swc/helpers/_/_object_without_properties");
15
+ var _jsxruntime = require("react/jsx-runtime");
16
+ var _core = require("@mantine/core");
17
+ var _RadioCardmodulecss = /*#__PURE__*/ _interop_require_default._(require("../../styles/RadioCard.module.css"));
18
+ var defaultProps = {};
19
+ var RadioCard = (0, _core.factory)(function(_props, ref) {
20
+ var _useProps = (0, _core.useProps)('RadioCard', defaultProps, _props), classNames = _useProps.classNames, styles = _useProps.styles, style = _useProps.style, className = _useProps.className, vars = _useProps.vars, disabled = _useProps.disabled, label = _useProps.label, description = _useProps.description, others = _object_without_properties._(_useProps, [
21
+ "classNames",
22
+ "styles",
23
+ "style",
24
+ "className",
25
+ "vars",
26
+ "disabled",
27
+ "label",
28
+ "description"
29
+ ]);
30
+ var getStyles = (0, _core.useStyles)({
31
+ name: 'RadioCard',
32
+ classes: _RadioCardmodulecss.default,
33
+ vars: vars,
34
+ classNames: classNames,
35
+ className: className,
36
+ style: style,
37
+ props: _props,
38
+ styles: styles
39
+ });
40
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_core.Radio.Card, _object_spread_props._(_object_spread._({
41
+ ref: ref,
42
+ disabled: disabled
43
+ }, getStyles('card', {
44
+ className: className,
45
+ style: style,
46
+ classNames: classNames,
47
+ styles: styles
48
+ }), others), {
49
+ children: [
50
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)(_core.Group, _object_spread_props._(_object_spread._({}, getStyles('container', {
51
+ classNames: classNames,
52
+ styles: styles
53
+ })), {
54
+ children: [
55
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Radio.Indicator, _object_spread._({
56
+ size: "xs",
57
+ disabled: disabled
58
+ }, getStyles('indicator', {
59
+ classNames: classNames,
60
+ styles: styles
61
+ }))),
62
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Title, _object_spread_props._(_object_spread._({
63
+ order: 4
64
+ }, getStyles('title', {
65
+ classNames: classNames,
66
+ styles: styles
67
+ })), {
68
+ children: label
69
+ }))
70
+ ]
71
+ })),
72
+ description && /*#__PURE__*/ (0, _jsxruntime.jsx)(_core.Box, _object_spread_props._(_object_spread._({}, getStyles('description', {
73
+ classNames: classNames,
74
+ styles: styles
75
+ })), {
76
+ children: description
77
+ }))
78
+ ]
79
+ }));
80
+ });
81
+
82
+ //# sourceMappingURL=RadioCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/RadioCard/RadioCard.tsx"],"sourcesContent":["import {\n Box,\n Factory,\n Group,\n RadioCardProps as MantineRadioCardProps,\n RadioCardStylesNames as MantineRadioCardStylesNames,\n Radio,\n RadioCardCssVariables,\n StylesApiProps,\n Title,\n factory,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {ReactNode} from 'react';\nimport classes from '../../styles/RadioCard.module.css';\n\nexport type RadioCardStylesNames = MantineRadioCardStylesNames | 'container' | 'indicator' | 'title' | 'description';\nexport type RadioCardFactory = Factory<{\n props: RadioCardProps;\n ref: HTMLButtonElement;\n stylesNames: RadioCardStylesNames;\n vars: RadioCardCssVariables;\n}>;\n\nexport type RadioCardProps = MantineRadioCardProps &\n StylesApiProps<RadioCardFactory> & {\n /**\n * The label of the card. Appears next to the radio indicator.\n */\n label: ReactNode;\n /**\n * The description of the card. Appears under the title.\n */\n description?: ReactNode;\n };\n\nconst defaultProps: Partial<RadioCardProps> = {};\n\nexport const RadioCard = factory<RadioCardFactory>((_props, ref) => {\n const {classNames, styles, style, className, vars, disabled, label, description, ...others} = useProps(\n 'RadioCard',\n defaultProps,\n _props,\n );\n const getStyles = useStyles<RadioCardFactory>({\n name: 'RadioCard',\n classes,\n vars,\n classNames,\n className,\n style,\n props: _props,\n styles,\n });\n\n return (\n <Radio.Card\n ref={ref}\n disabled={disabled}\n {...getStyles('card', {className, style, classNames, styles})}\n {...others}\n >\n <Group {...getStyles('container', {classNames, styles})}>\n <Radio.Indicator size=\"xs\" disabled={disabled} {...getStyles('indicator', {classNames, styles})} />\n <Title order={4} {...getStyles('title', {classNames, styles})}>\n {label}\n </Title>\n </Group>\n {description && <Box {...getStyles('description', {classNames, styles})}>{description}</Box>}\n </Radio.Card>\n );\n});\n"],"names":["RadioCard","defaultProps","factory","_props","ref","useProps","classNames","styles","style","className","vars","disabled","label","description","others","getStyles","useStyles","name","classes","props","Radio","Card","Group","Indicator","size","Title","order","Box"],"mappings":";;;;+BAuCaA;;;eAAAA;;;;;;;;oBA1BN;2EAEa;AAsBpB,IAAMC,eAAwC,CAAC;AAExC,IAAMD,YAAYE,IAAAA,aAAO,EAAmB,SAACC,QAAQC;IACxD,IAA8FC,YAAAA,IAAAA,cAAQ,EAClG,aACAJ,cACAE,SAHGG,aAAuFD,UAAvFC,YAAYC,SAA2EF,UAA3EE,QAAQC,QAAmEH,UAAnEG,OAAOC,YAA4DJ,UAA5DI,WAAWC,OAAiDL,UAAjDK,MAAMC,WAA2CN,UAA3CM,UAAUC,QAAiCP,UAAjCO,OAAOC,cAA0BR,UAA1BQ,aAAgBC,sCAAUT;QAAvFC;QAAYC;QAAQC;QAAOC;QAAWC;QAAMC;QAAUC;QAAOC;;IAKpE,IAAME,YAAYC,IAAAA,eAAS,EAAmB;QAC1CC,MAAM;QACNC,SAAAA,2BAAO;QACPR,MAAAA;QACAJ,YAAAA;QACAG,WAAAA;QACAD,OAAAA;QACAW,OAAOhB;QACPI,QAAAA;IACJ;IAEA,qBACI,sBAACa,WAAK,CAACC,IAAI;QACPjB,KAAKA;QACLO,UAAUA;OACNI,UAAU,QAAQ;QAACN,WAAAA;QAAWD,OAAAA;QAAOF,YAAAA;QAAYC,QAAAA;IAAM,IACvDO;;0BAEJ,sBAACQ,WAAK,8CAAKP,UAAU,aAAa;gBAACT,YAAAA;gBAAYC,QAAAA;YAAM;;kCACjD,qBAACa,WAAK,CAACG,SAAS;wBAACC,MAAK;wBAAKb,UAAUA;uBAAcI,UAAU,aAAa;wBAACT,YAAAA;wBAAYC,QAAAA;oBAAM;kCAC7F,qBAACkB,WAAK;wBAACC,OAAO;uBAAOX,UAAU,SAAS;wBAACT,YAAAA;wBAAYC,QAAAA;oBAAM;kCACtDK;;;;YAGRC,6BAAe,qBAACc,SAAG,8CAAKZ,UAAU,eAAe;gBAACT,YAAAA;gBAAYC,QAAAA;YAAM;0BAAKM;;;;AAGtF"}
@@ -41,6 +41,7 @@ export { Menu, type MenuItemProps } from './components/Menu/Menu.js';
41
41
  export { Modal, type ModalFactory, type ModalProps } from './components/Modal/Modal.js';
42
42
  export * from './components/Modal/ModalFooter.js';
43
43
  export * from './components/Prompt/Prompt.js';
44
+ export { RadioCard, type RadioCardProps } from './components/RadioCard/RadioCard.js';
44
45
  export { PasswordInput } from './components/PasswordInput/PasswordInput.js';
45
46
  export { Select } from './components/Select/Select.js';
46
47
  export * from './components/StickyFooter/StickyFooter.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAE,IAAI,EAAC,MAAM,eAAe,CAAC;AACvD,OAAO,EAAC,KAAK,OAAO,EAAC,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAC,KAAK,YAAY,EAAC,MAAM,yBAAyB,CAAC;AAE1D,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAC;AACzC,OAAO,EAAC,KAAK,eAAe,EAAC,MAAM,gBAAgB,CAAC;AACpD,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAC,KAAK,kBAAkB,EAAC,MAAM,wBAAwB,CAAC;AAC/D,cAAc,sBAAsB,CAAC;AAIrC,OAAO,EAAC,SAAS,EAAC,MAAM,qCAAqC,CAAC;AAG9D,OAAO,EAAC,UAAU,EAAE,KAAK,eAAe,EAAC,MAAM,uCAAuC,CAAC;AAGvF,OAAO,EAAC,KAAK,EAAC,MAAM,6BAA6B,CAAC;AAGlD,OAAO,EACH,KAAK,EACL,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,kBAAkB,GAC1B,MAAM,6BAA6B,CAAC;AAGrC,cAAc,uCAAuC,CAAC;AAGtD,cAAc,+CAA+C,CAAC;AAG9D,OAAO,EAAC,MAAM,EAAE,KAAK,WAAW,EAAC,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAC,KAAK,8BAA8B,EAAC,MAAM,kDAAkD,CAAC;AAGrG,cAAc,2CAA2C,CAAC;AAG1D,cAAc,qCAAqC,CAAC;AAGpD,OAAO,EAAC,IAAI,EAAC,MAAM,2BAA2B,CAAC;AAG/C,cAAc,uCAAuC,CAAC;AAGtD,cAAc,uCAAuC,CAAC;AACtD,OAAO,EAAC,0BAA0B,EAAC,MAAM,uDAAuD,CAAC;AAGjG,cAAc,iDAAiD,CAAC;AAGhE,cAAc,iDAAiD,CAAC;AAChE,cAAc,+DAA+D,CAAC;AAC9E,cAAc,gEAAgE,CAAC;AAC/E,cAAc,6DAA6D,CAAC;AAG5E,cAAc,yDAAyD,CAAC;AAGxE,cAAc,2CAA2C,CAAC;AAG1D,OAAO,EACH,MAAM,EACN,KAAK,sBAAsB,EAC3B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACrB,MAAM,+BAA+B,CAAC;AAGvC,cAAc,qCAAqC,CAAC;AAGpD,cAAc,6CAA6C,CAAC;AAC5D,cAAc,oDAAoD,CAAC;AAGnE,cAAc,yCAAyC,CAAC;AAGxD,cAAc,2CAA2C,CAAC;AAG1D,OAAO,EAAC,IAAI,EAAE,KAAK,aAAa,EAAC,MAAM,2BAA2B,CAAC;AAGnE,OAAO,EAAC,KAAK,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAC,MAAM,6BAA6B,CAAC;AACtF,cAAc,mCAAmC,CAAC;AAGlD,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EAAC,SAAS,EAAE,KAAK,cAAc,EAAC,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EAAC,aAAa,EAAC,MAAM,6CAA6C,CAAC;AAC1E,OAAO,EAAC,MAAM,EAAC,MAAM,+BAA+B,CAAC;AAGrD,cAAc,2CAA2C,CAAC;AAG1D,OAAO,EAAC,UAAU,IAAI,eAAe,EAAC,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAC,KAAK,mBAAmB,EAAC,MAAM,sDAAsD,CAAC;AAC9F,OAAO,EAAC,KAAK,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAC,MAAM,6BAA6B,CAAC;AACjG,OAAO,EACH,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAClB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,oCAAoC,CAAC;AACnE,OAAO,EAAC,QAAQ,EAAE,KAAK,UAAU,EAAE,KAAK,UAAU,EAAE,KAAK,eAAe,EAAC,MAAM,iCAAiC,CAAC;AACjH,OAAO,EAAC,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,KAAK,wBAAwB,EAAC,MAAM,iCAAiC,CAAC;AAExH,OAAO,EAAC,IAAI,EAAC,CAAC;AAGd,cAAc,uCAAuC,CAAC;AACtD,cAAc,wBAAwB,CAAC;AAEvC,OAAO,QAAQ,eAAe,CAAC;IAC3B,UAAiB,0BAA0B;QACvC,MAAM,EAAE,MAAM,CAAC,MAAM,OAAO,YAAY,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,kBAAkB,CAAC,CAAC;KACjF;CACJ;AAED,OAAO,QAAQ,uBAAuB,CAAC;IACnC,UAAU,UAAU,CAAC,KAAK,SAAS,OAAO,EAAE,MAAM;QAC9C;;;;WAIG;QACH,aAAa,EAAE,OAAO,CAAC;KAC1B;CACJ"}
package/dist/cjs/index.js CHANGED
@@ -42,6 +42,9 @@ _export(exports, {
42
42
  get PasswordInput () {
43
43
  return _PasswordInput.PasswordInput;
44
44
  },
45
+ get RadioCard () {
46
+ return _RadioCard.RadioCard;
47
+ },
45
48
  get Select () {
46
49
  return _Select.Select;
47
50
  },
@@ -107,6 +110,7 @@ var _Menu = require("./components/Menu/Menu.js");
107
110
  var _Modal = require("./components/Modal/Modal.js");
108
111
  _export_star._(require("./components/Modal/ModalFooter.js"), exports);
109
112
  _export_star._(require("./components/Prompt/Prompt.js"), exports);
113
+ var _RadioCard = require("./components/RadioCard/RadioCard.js");
110
114
  var _PasswordInput = require("./components/PasswordInput/PasswordInput.js");
111
115
  var _Select = require("./components/Select/Select.js");
112
116
  _export_star._(require("./components/StickyFooter/StickyFooter.js"), exports);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {MantineColorsTuple, noop} from '@mantine/core';\nimport {type RowData} from '@tanstack/table-core';\nimport {type PlasmaColors} from './theme/PlasmaColors.js';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport {Pagination} from '@mantine/core';\nexport {type DatesRangeValue} from '@mantine/dates';\nexport * from '@mantine/form';\nexport * from '@mantine/hooks';\nexport * from '@mantine/notifications';\nexport {type NotificationsProps} from '@mantine/notifications';\nexport * from '@tanstack/table-core';\n\n// Export all components\n// Accordion\nexport {Accordion} from './components/Accordion/Accordion.js';\n\n// Action Icon - override Mantine ActionIcon\nexport {ActionIcon, type ActionIconProps} from './components/ActionIcon/ActionIcon.js';\n\n// Alert - override Mantine Alert\nexport {Alert} from './components/Alert/Alert.js';\n\n// Badge - override Mantine Badge\nexport {\n Badge,\n type BadgeOverloadFactory,\n type SemanticBadge,\n type SemanticBadgeProps,\n} from './components/Badge/Badge.js';\n\n// Blank Slate\nexport * from './components/BlankSlate/BlankSlate.js';\n\n// Browser Preview\nexport * from './components/BrowserPreview/BrowserPreview.js';\n\n// Button - override Mantine Button\nexport {Button, type ButtonProps} from './components/Button/Button.js';\nexport {type ButtonWithDisabledTooltipProps} from './components/Button/ButtonWithDisabledTooltip.js';\n\n// Checkbox\nexport * from './components/CheckboxIcon/CheckboxIcon.js';\n\n// Child Form\nexport * from './components/ChildForm/ChildForm.js';\n\n// Chip - override Mantine Chip\nexport {Chip} from './components/Chip/Chip.js';\n\n// Code Editor\nexport * from './components/CodeEditor/CodeEditor.js';\n\n// Collection\nexport * from './components/Collection/Collection.js';\nexport {enhanceWithCollectionProps} from './components/Collection/enhanceWithCollectionProps.js';\n\n// Copy to Clipboard\nexport * from './components/CopyToClipboard/CopyToClipboard.js';\n\n// Date Range Picker\nexport * from './components/DateRangePicker/DateRangePicker.js';\nexport * from './components/DateRangePicker/DateRangePickerInlineCalendar.js';\nexport * from './components/DateRangePicker/DateRangePickerPopoverCalendar.js';\nexport * from './components/DateRangePicker/DateRangePickerPresetSelect.js';\n\n// Date Time Range Picker\nexport * from './components/DateTimeRangePicker/DateTimeRangePicker.js';\n\n// Ellipsis Text\nexport * from './components/EllipsisText/EllipsisText.js';\n\n// Header - override @tanstack/table-core Header\nexport {\n Header,\n type HeaderBreadcrumbsProps,\n type HeaderDocAnchorProps,\n type HeaderFactory,\n type HeaderProps,\n type HeaderRightProps,\n type HeaderStyleNames,\n type HeaderVariant,\n} from './components/Header/Header.js';\n\n// Info Token\nexport * from './components/InfoToken/InfoToken.js';\n\n// Inline Confirm\nexport * from './components/InlineConfirm/InlineConfirm.js';\nexport * from './components/InlineConfirm/InlineConfirmContext.js';\n\n// Last Updated\nexport * from './components/LastUpdated/LastUpdated.js';\n\n// Loader\nexport * from './components/CircleLoader/CircleLoader.js';\n\n// Menu - override Mantine Menu\nexport {Menu, type MenuItemProps} from './components/Menu/Menu.js';\n\n// Modal - override Mantine Modal\nexport {Modal, type ModalFactory, type ModalProps} from './components/Modal/Modal.js';\nexport * from './components/Modal/ModalFooter.js';\n\n// Prompt\nexport * from './components/Prompt/Prompt.js';\n\n// Read Only - override Mantine PasswordInput and Select\nexport {PasswordInput} from './components/PasswordInput/PasswordInput.js';\nexport {Select} from './components/Select/Select.js';\n\n// Sticky Footer\nexport * from './components/StickyFooter/StickyFooter.js';\n\n// Table - override Mantine Table\nexport {flexRender as renderTableCell} from '@tanstack/react-table';\nexport {type TablePredicateProps} from './components/Table/table-predicate/TablePredicate.js';\nexport {Table, TableComponentsOrder, type PlasmaTableFactory} from './components/Table/Table.js';\nexport {\n type TableAction,\n type TableLayout,\n type TableLayoutProps,\n type TableProps,\n} from './components/Table/Table.types.js';\nexport {useTableContext} from './components/Table/TableContext.js';\nexport {useTable, type TableState, type TableStore, type UseTableOptions} from './components/Table/use-table.js';\nexport {useUrlSyncedState, type SearchParamEntry, type UseUrlSyncedStateOptions} from './hooks/use-url-synced-state.js';\n\nexport {noop};\n\n// Theme\nexport * from './theme/plasmaCSSVariablesResolver.js';\nexport * from './theme/Plasmantine.js';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n colors: Record<keyof typeof PlasmaColors | (string & {}), MantineColorsTuple>;\n }\n}\n\ndeclare module '@tanstack/react-table' {\n interface ColumnMeta<TData extends RowData, TValue> {\n /**\n * Whether the column is a control column.\n * Control columns are columns that are not part of the data but are used to control the table.\n * For example, a column that contains checkboxes to select rows.\n */\n controlColumn: boolean;\n }\n}\n"],"names":["Accordion","ActionIcon","Alert","Badge","Button","Chip","Header","Menu","Modal","Pagination","PasswordInput","Select","Table","TableComponentsOrder","enhanceWithCollectionProps","noop","renderTableCell","flexRender","useTable","useTableContext","useUrlSyncedState"],"mappings":";;;;;;;;;;;QAgBQA;eAAAA,oBAAS;;QAGTC;eAAAA,sBAAU;;QAGVC;eAAAA,YAAK;;QAITC;eAAAA,YAAK;;QAaDC;eAAAA,cAAM;;QAUNC;eAAAA,UAAI;;QA0BRC;eAAAA,cAAM;;QAwBFC;eAAAA,UAAI;;QAGJC;eAAAA,YAAK;;QAhGLC;eAAAA,gBAAU;;QAuGVC;eAAAA,4BAAa;;QACbC;eAAAA,cAAM;;QAQNC;eAAAA,YAAK;;QAAEC;eAAAA,2BAAoB;;QA9D3BC;eAAAA,sDAA0B;;QAyE1BC;eAAAA,UAAI;;QAbUC;eAAdC,sBAAU;;QAUVC;eAAAA,kBAAQ;;QADRC;eAAAA,6BAAe;;QAEfC;eAAAA,oCAAiB;;;;mCA/Hc;uBAIzB;uBAIA;uBACA;uBACA;uBAEA;yBAIU;0BAGuB;qBAG3B;qBAQb;uBAGO;uBAGA;sBAGyB;uBAIzB;uBAGA;oBAGK;uBAGL;uBAGA;0CAC2B;uBAG3B;uBAGA;uBACA;uBACA;uBACA;uBAGA;uBAGA;sBAYP;uBAGO;uBAGA;uBACA;uBAGA;uBAGA;oBAGyB;qBAGiB;uBAC1C;uBAGA;6BAGc;sBACP;uBAGP;0BAG8B;qBAEuB;4BAOrC;wBACiD;iCACO;uBAKxE;uBACA"}
1
+ {"version":3,"sources":["../../src/index.ts"],"sourcesContent":["import {MantineColorsTuple, noop} from '@mantine/core';\nimport {type RowData} from '@tanstack/table-core';\nimport {type PlasmaColors} from './theme/PlasmaColors.js';\n\nexport * from '@mantine/carousel';\nexport * from '@mantine/core';\nexport {Pagination} from '@mantine/core';\nexport {type DatesRangeValue} from '@mantine/dates';\nexport * from '@mantine/form';\nexport * from '@mantine/hooks';\nexport * from '@mantine/notifications';\nexport {type NotificationsProps} from '@mantine/notifications';\nexport * from '@tanstack/table-core';\n\n// Export all components\n// Accordion\nexport {Accordion} from './components/Accordion/Accordion.js';\n\n// Action Icon - override Mantine ActionIcon\nexport {ActionIcon, type ActionIconProps} from './components/ActionIcon/ActionIcon.js';\n\n// Alert - override Mantine Alert\nexport {Alert} from './components/Alert/Alert.js';\n\n// Badge - override Mantine Badge\nexport {\n Badge,\n type BadgeOverloadFactory,\n type SemanticBadge,\n type SemanticBadgeProps,\n} from './components/Badge/Badge.js';\n\n// Blank Slate\nexport * from './components/BlankSlate/BlankSlate.js';\n\n// Browser Preview\nexport * from './components/BrowserPreview/BrowserPreview.js';\n\n// Button - override Mantine Button\nexport {Button, type ButtonProps} from './components/Button/Button.js';\nexport {type ButtonWithDisabledTooltipProps} from './components/Button/ButtonWithDisabledTooltip.js';\n\n// Checkbox\nexport * from './components/CheckboxIcon/CheckboxIcon.js';\n\n// Child Form\nexport * from './components/ChildForm/ChildForm.js';\n\n// Chip - override Mantine Chip\nexport {Chip} from './components/Chip/Chip.js';\n\n// Code Editor\nexport * from './components/CodeEditor/CodeEditor.js';\n\n// Collection\nexport * from './components/Collection/Collection.js';\nexport {enhanceWithCollectionProps} from './components/Collection/enhanceWithCollectionProps.js';\n\n// Copy to Clipboard\nexport * from './components/CopyToClipboard/CopyToClipboard.js';\n\n// Date Range Picker\nexport * from './components/DateRangePicker/DateRangePicker.js';\nexport * from './components/DateRangePicker/DateRangePickerInlineCalendar.js';\nexport * from './components/DateRangePicker/DateRangePickerPopoverCalendar.js';\nexport * from './components/DateRangePicker/DateRangePickerPresetSelect.js';\n\n// Date Time Range Picker\nexport * from './components/DateTimeRangePicker/DateTimeRangePicker.js';\n\n// Ellipsis Text\nexport * from './components/EllipsisText/EllipsisText.js';\n\n// Header - override @tanstack/table-core Header\nexport {\n Header,\n type HeaderBreadcrumbsProps,\n type HeaderDocAnchorProps,\n type HeaderFactory,\n type HeaderProps,\n type HeaderRightProps,\n type HeaderStyleNames,\n type HeaderVariant,\n} from './components/Header/Header.js';\n\n// Info Token\nexport * from './components/InfoToken/InfoToken.js';\n\n// Inline Confirm\nexport * from './components/InlineConfirm/InlineConfirm.js';\nexport * from './components/InlineConfirm/InlineConfirmContext.js';\n\n// Last Updated\nexport * from './components/LastUpdated/LastUpdated.js';\n\n// Loader\nexport * from './components/CircleLoader/CircleLoader.js';\n\n// Menu - override Mantine Menu\nexport {Menu, type MenuItemProps} from './components/Menu/Menu.js';\n\n// Modal - override Mantine Modal\nexport {Modal, type ModalFactory, type ModalProps} from './components/Modal/Modal.js';\nexport * from './components/Modal/ModalFooter.js';\n\n// Prompt\nexport * from './components/Prompt/Prompt.js';\n\n// RadioCard - override Mantine RadioCard\nexport {RadioCard, type RadioCardProps} from './components/RadioCard/RadioCard.js';\n\n// Read Only - override Mantine PasswordInput and Select\nexport {PasswordInput} from './components/PasswordInput/PasswordInput.js';\nexport {Select} from './components/Select/Select.js';\n\n// Sticky Footer\nexport * from './components/StickyFooter/StickyFooter.js';\n\n// Table - override Mantine Table\nexport {flexRender as renderTableCell} from '@tanstack/react-table';\nexport {type TablePredicateProps} from './components/Table/table-predicate/TablePredicate.js';\nexport {Table, TableComponentsOrder, type PlasmaTableFactory} from './components/Table/Table.js';\nexport {\n type TableAction,\n type TableLayout,\n type TableLayoutProps,\n type TableProps,\n} from './components/Table/Table.types.js';\nexport {useTableContext} from './components/Table/TableContext.js';\nexport {useTable, type TableState, type TableStore, type UseTableOptions} from './components/Table/use-table.js';\nexport {useUrlSyncedState, type SearchParamEntry, type UseUrlSyncedStateOptions} from './hooks/use-url-synced-state.js';\n\nexport {noop};\n\n// Theme\nexport * from './theme/plasmaCSSVariablesResolver.js';\nexport * from './theme/Plasmantine.js';\n\ndeclare module '@mantine/core' {\n export interface MantineThemeColorsOverride {\n colors: Record<keyof typeof PlasmaColors | (string & {}), MantineColorsTuple>;\n }\n}\n\ndeclare module '@tanstack/react-table' {\n interface ColumnMeta<TData extends RowData, TValue> {\n /**\n * Whether the column is a control column.\n * Control columns are columns that are not part of the data but are used to control the table.\n * For example, a column that contains checkboxes to select rows.\n */\n controlColumn: boolean;\n }\n}\n"],"names":["Accordion","ActionIcon","Alert","Badge","Button","Chip","Header","Menu","Modal","Pagination","PasswordInput","RadioCard","Select","Table","TableComponentsOrder","enhanceWithCollectionProps","noop","renderTableCell","flexRender","useTable","useTableContext","useUrlSyncedState"],"mappings":";;;;;;;;;;;QAgBQA;eAAAA,oBAAS;;QAGTC;eAAAA,sBAAU;;QAGVC;eAAAA,YAAK;;QAITC;eAAAA,YAAK;;QAaDC;eAAAA,cAAM;;QAUNC;eAAAA,UAAI;;QA0BRC;eAAAA,cAAM;;QAwBFC;eAAAA,UAAI;;QAGJC;eAAAA,YAAK;;QAhGLC;eAAAA,gBAAU;;QA0GVC;eAAAA,4BAAa;;QAHbC;eAAAA,oBAAS;;QAITC;eAAAA,cAAM;;QAQNC;eAAAA,YAAK;;QAAEC;eAAAA,2BAAoB;;QAjE3BC;eAAAA,sDAA0B;;QA4E1BC;eAAAA,UAAI;;QAbUC;eAAdC,sBAAU;;QAUVC;eAAAA,kBAAQ;;QADRC;eAAAA,6BAAe;;QAEfC;eAAAA,oCAAiB;;;;mCAlIc;uBAIzB;uBAIA;uBACA;uBACA;uBAEA;yBAIU;0BAGuB;qBAG3B;qBAQb;uBAGO;uBAGA;sBAGyB;uBAIzB;uBAGA;oBAGK;uBAGL;uBAGA;0CAC2B;uBAG3B;uBAGA;uBACA;uBACA;uBACA;uBAGA;uBAGA;sBAYP;uBAGO;uBAGA;uBACA;uBAGA;uBAGA;oBAGyB;qBAGiB;uBAC1C;uBAGA;yBAG+B;6BAGjB;sBACP;uBAGP;0BAG8B;qBAEuB;4BAOrC;wBACiD;iCACO;uBAKxE;uBACA"}
@@ -5,7 +5,51 @@
5
5
  }
6
6
 
7
7
  .card {
8
+ display: inline-flex;
9
+ flex-direction: column;
10
+ align-items: flex-start;
11
+ padding: var(--mantine-spacing-sm);
12
+ border-radius: var(--mantine-radius-lg);
13
+
14
+ &[data-checked] {
15
+ border-color: var(--mantine-primary-color-filled);
16
+ }
17
+
8
18
  &[disabled] {
9
19
  pointer-events: none;
20
+
21
+ .title {
22
+ color: var(--mantine-color-disabled-color);
23
+ }
24
+
25
+ .description {
26
+ color: var(--mantine-color-disabled-color);
27
+ }
10
28
  }
11
29
  }
30
+
31
+ .container {
32
+ flex-wrap: nowrap;
33
+ gap: var(--mantine-spacing-sm);
34
+ align-items: baseline;
35
+ justify-content: flex-start;
36
+ width: 100%;
37
+ margin-bottom: var(--mantine-spacing-xs);
38
+ }
39
+
40
+ .title {
41
+ flex: 1;
42
+ color: var(--coveo-color-title);
43
+ word-break: break-word;
44
+ }
45
+
46
+ .description {
47
+ padding-left: var(--mantine-spacing-lg);
48
+ color: var(--mantine-color-dimmed);
49
+ font-weight: 400;
50
+ font-size: var(--mantine-font-size-xs);
51
+ }
52
+
53
+ .indicator {
54
+ cursor: pointer;
55
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AA0C5C,eAAO,MAAM,GAAG;uBAXU,MAAM,KAAG,IAAI;CAWV,CAAC"}
1
+ {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,sBAAsB,CAAC;AA2C5C,eAAO,MAAM,GAAG;uBAXU,MAAM,KAAG,IAAI;CAWV,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue","XML"],"mappings":"AAEA,MAAMA,SAAS,CAACC;IACZ,oGAAoG;IACpG,MAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,MAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,CAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,MAAMC,WAAW,CAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,gCAAgC,OAAOC,QAAU;gBAC7C;oBACIC,OAAOD,MAAME,iBAAiB;oBAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;gBAC/B;aACH;IACL;AACJ;AAEA,OAAO,MAAMC,MAAM;IAACV;AAAQ,EAAE"}
1
+ {"version":3,"sources":["../../../../../src/components/CodeEditor/languages/xml.ts"],"sourcesContent":["import {Monaco} from '@monaco-editor/react';\nimport type {editor} from 'monaco-editor';\n\nconst format = (xml: string): string => {\n // https://stackoverflow.com/questions/57039218/doesnt-monaco-editor-support-xml-language-by-default\n const PADDING = ' '.repeat(2);\n const reg = /(>)(<)(\\/*)/g;\n let pad = 0;\n\n xml = xml.replace(reg, '$1\\r\\n$2$3');\n\n return xml\n .split('\\r\\n')\n .map((node) => {\n let indent = 0;\n if (node.match(/.+<\\/\\w[^>]*>$/)) {\n indent = 0;\n } else if (node.match(/^<\\/\\w/) && pad > 0) {\n pad -= 1;\n } else if (node.match(/^<\\w[^>]*[^/]>.*$/)) {\n indent = 1;\n } else {\n indent = 0;\n }\n\n pad += indent;\n\n return PADDING.repeat(pad - indent) + node;\n })\n .join('\\r\\n');\n};\n\nconst register = (monaco: Monaco): void => {\n monaco.languages.registerDocumentFormattingEditProvider('xml', {\n provideDocumentFormattingEdits: async (model: editor.ITextModel) => [\n {\n range: model.getFullModelRange(),\n text: format(model.getValue()),\n },\n ],\n });\n};\n\nexport const XML = {register};\n"],"names":["format","xml","PADDING","repeat","reg","pad","replace","split","map","node","indent","match","join","register","monaco","languages","registerDocumentFormattingEditProvider","provideDocumentFormattingEdits","model","range","getFullModelRange","text","getValue","XML"],"mappings":"AAGA,MAAMA,SAAS,CAACC;IACZ,oGAAoG;IACpG,MAAMC,UAAU,IAAIC,MAAM,CAAC;IAC3B,MAAMC,MAAM;IACZ,IAAIC,MAAM;IAEVJ,MAAMA,IAAIK,OAAO,CAACF,KAAK;IAEvB,OAAOH,IACFM,KAAK,CAAC,QACNC,GAAG,CAAC,CAACC;QACF,IAAIC,SAAS;QACb,IAAID,KAAKE,KAAK,CAAC,mBAAmB;YAC9BD,SAAS;QACb,OAAO,IAAID,KAAKE,KAAK,CAAC,aAAaN,MAAM,GAAG;YACxCA,OAAO;QACX,OAAO,IAAII,KAAKE,KAAK,CAAC,sBAAsB;YACxCD,SAAS;QACb,OAAO;YACHA,SAAS;QACb;QAEAL,OAAOK;QAEP,OAAOR,QAAQC,MAAM,CAACE,MAAMK,UAAUD;IAC1C,GACCG,IAAI,CAAC;AACd;AAEA,MAAMC,WAAW,CAACC;IACdA,OAAOC,SAAS,CAACC,sCAAsC,CAAC,OAAO;QAC3DC,gCAAgC,OAAOC,QAA6B;gBAChE;oBACIC,OAAOD,MAAME,iBAAiB;oBAC9BC,MAAMrB,OAAOkB,MAAMI,QAAQ;gBAC/B;aACH;IACL;AACJ;AAEA,OAAO,MAAMC,MAAM;IAACV;AAAQ,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,EAChC,UAAU;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAC,KAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAoBlF,CAAC"}
1
+ {"version":3,"file":"enhanceWithCollectionProps.d.ts","sourceRoot":"","sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAwB,MAAM,eAAe,CAAC;AAClE,OAAO,EAAC,eAAe,EAAC,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,0BAA0B,GACnC,UAAU,EACV,eAAe,SAAS,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,GAAG,CAAC,MAAM,EAAE,UAAU,KAAK,UAAU,EAE5F,SAAS,UAAU,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,EACzF,OAAO,CAAC,OAAO,OAAO,EAAE,OAAO,CAAC,EAChC,UAAU;IAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAC,KAC5C,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,cAAc,GAAG,cAAc,CAoBlF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n options?: {validateInputOnChange?: boolean},\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n const {validateInputOnChange = false} = options || {};\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {\n payload.form.reorderListItem(field, reorderPayload);\n validateInputOnChange && payload.form.validate();\n },\n onRemoveItem: (index: number) => {\n payload.form.removeListItem(field, index);\n validateInputOnChange && payload.form.validate();\n },\n onInsertItem: (valueToInsert: unknown, index: number) => {\n payload.form.insertListItem(field, valueToInsert, index);\n validateInputOnChange && payload.form.validate();\n },\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","options","validateInputOnChange","onReorderItem","reorderPayload","form","reorderListItem","validate","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":"AAGA,OAAO,MAAMA,6BAA6B,CAItCC,SACAC,OACAC;IAEA,IAAIF,QAAQC,KAAK,KAAKA,OAAO;QACzB,MAAM,EAACE,wBAAwB,KAAK,EAAC,GAAGD,WAAW,CAAC;QACpD,OAAO;YACHE,eAAe,CAACC;gBACZL,QAAQM,IAAI,CAACC,eAAe,CAACN,OAAOI;gBACpCF,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAC,cAAc,CAACC;gBACXV,QAAQM,IAAI,CAACK,cAAc,CAACV,OAAOS;gBACnCP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAI,cAAc,CAACC,eAAwBH;gBACnCV,QAAQM,IAAI,CAACQ,cAAc,CAACb,OAAOY,eAAeH;gBAClDP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;QACJ;IACJ;IAEA,OAAO,CAAC;AACZ,EAAE"}
1
+ {"version":3,"sources":["../../../../src/components/Collection/enhanceWithCollectionProps.ts"],"sourcesContent":["import {UseFormInput, type FormArrayElement} from '@mantine/form';\nimport {CollectionProps} from './Collection.js';\n\nexport const enhanceWithCollectionProps = <\n FormValues,\n TransformValues extends (values: FormValues) => unknown = (values: FormValues) => FormValues,\n>(\n payload: Parameters<UseFormInput<FormValues, TransformValues>['enhanceGetInputProps']>[0],\n field: (typeof payload)['field'],\n options?: {validateInputOnChange?: boolean},\n): Pick<CollectionProps<unknown>, 'onReorderItem' | 'onInsertItem' | 'onRemoveItem'> => {\n if (payload.field === field) {\n const {validateInputOnChange = false} = options || {};\n return {\n onReorderItem: (reorderPayload: Record<'from' | 'to', number>) => {\n payload.form.reorderListItem(field, reorderPayload);\n validateInputOnChange && payload.form.validate();\n },\n onRemoveItem: (index: number) => {\n payload.form.removeListItem(field, index);\n validateInputOnChange && payload.form.validate();\n },\n onInsertItem: (valueToInsert: FormArrayElement<FormValues, (typeof payload)['field']>, index: number) => {\n payload.form.insertListItem(field, valueToInsert, index);\n validateInputOnChange && payload.form.validate();\n },\n };\n }\n\n return {};\n};\n"],"names":["enhanceWithCollectionProps","payload","field","options","validateInputOnChange","onReorderItem","reorderPayload","form","reorderListItem","validate","onRemoveItem","index","removeListItem","onInsertItem","valueToInsert","insertListItem"],"mappings":"AAGA,OAAO,MAAMA,6BAA6B,CAItCC,SACAC,OACAC;IAEA,IAAIF,QAAQC,KAAK,KAAKA,OAAO;QACzB,MAAM,EAACE,wBAAwB,KAAK,EAAC,GAAGD,WAAW,CAAC;QACpD,OAAO;YACHE,eAAe,CAACC;gBACZL,QAAQM,IAAI,CAACC,eAAe,CAACN,OAAOI;gBACpCF,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAC,cAAc,CAACC;gBACXV,QAAQM,IAAI,CAACK,cAAc,CAACV,OAAOS;gBACnCP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;YACAI,cAAc,CAACC,eAAwEH;gBACnFV,QAAQM,IAAI,CAACQ,cAAc,CAACb,OAAOY,eAAeH;gBAClDP,yBAAyBH,QAAQM,IAAI,CAACE,QAAQ;YAClD;QACJ;IACJ;IAEA,OAAO,CAAC;AACZ,EAAE"}
@@ -5,3 +5,7 @@
5
5
  .save {
6
6
  border-top: 1px solid var(--mantine-color-default-border);
7
7
  }
8
+
9
+ .input {
10
+ white-space: nowrap;
11
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"names":[],"mappings":"AACA,OAAO,EACH,QAAQ,EAER,OAAO,EAGP,YAAY,EACZ,cAAc,EAGjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAgC,kCAAkC,EAAC,MAAM,iCAAiC,CAAC;AAgBlH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,oBACb,SAAQ,QAAQ,EACZ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC,EACtG,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,eAAe,CAAC,EAC9C,cAAc,CAAC,sBAAsB,CAAC;IAC1C;;OAEG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IACzC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAOH,eAAO,MAAM,eAAe;WAVjB,oBAAoB;SACtB,cAAc;iBACN,0BAA0B;EA8GzC,CAAC"}
1
+ {"version":3,"file":"DateRangePicker.d.ts","sourceRoot":"","sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"names":[],"mappings":"AACA,OAAO,EACH,QAAQ,EAER,OAAO,EAGP,YAAY,EACZ,cAAc,EAGjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,eAAe,EAAkB,MAAM,gBAAgB,CAAC;AAEhE,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAgC,kCAAkC,EAAC,MAAM,iCAAiC,CAAC;AAgBlH,MAAM,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAEjD,MAAM,WAAW,oBACb,SAAQ,QAAQ,EACZ,IAAI,CAAC,kCAAkC,EAAE,SAAS,GAAG,oBAAoB,GAAG,YAAY,GAAG,UAAU,CAAC,EACtG,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,eAAe,CAAC,EAC9C,cAAc,CAAC,sBAAsB,CAAC;IAC1C;;OAEG;IACH,OAAO,CAAC,IAAI,IAAI,CAAC;IACjB;;OAEG;IACH,QAAQ,CAAC,IAAI,IAAI,CAAC;IAClB;;OAEG;IACH,QAAQ,CAAC,CAAC,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAChD;;OAEG;IACH,cAAc,CAAC,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;IACvC;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC;IAC/C;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IACvC;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG,OAAO,CAAC;IACzC,KAAK,EAAE,oBAAoB,CAAC;IAC5B,GAAG,EAAE,cAAc,CAAC;IACpB,WAAW,EAAE,0BAA0B,CAAC;CAC3C,CAAC,CAAC;AAOH,eAAO,MAAM,eAAe;WAVjB,oBAAoB;SACtB,cAAc;iBACN,0BAA0B;EA8GzC,CAAC"}
@@ -4,6 +4,7 @@ import { factory, InputBase, Popover, useProps, useStyles } from '@mantine/core'
4
4
  import { useUncontrolled } from '@mantine/hooks';
5
5
  import dayjs from 'dayjs';
6
6
  import { useUrlSyncedState } from '../../hooks/use-url-synced-state';
7
+ import classes from './DateRange.module.css';
7
8
  import { DateRangePickerInlineCalendar } from './DateRangePickerInlineCalendar';
8
9
  const serialization = (input)=>Object.freeze(input);
9
10
  const DATE_RANGE_SERIALIZATION = serialization({
@@ -32,7 +33,7 @@ export const DateRangePicker = factory((props)=>{
32
33
  const { defaultValue, value, opened, defaultOpened, onOpenedChange, onClick, onCancel, onChange, presets, startProps, endProps, rangeCalendarProps, formatter, placeholder, syncWithUrl, error, className, classNames, style, styles, vars, unstyled, ...others } = useProps('PlasmaDateRangePicker', defaultProps, props);
33
34
  const getStyles = useStyles({
34
35
  name: 'DateRangePicker',
35
- classes: {},
36
+ classes,
36
37
  props,
37
38
  className,
38
39
  classNames,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import {IconCalendar} from '@coveord/plasma-react-icons';\nimport {\n BoxProps,\n factory,\n Factory,\n InputBase,\n Popover,\n PopoverProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {DatesRangeValue, DateStringValue} from '@mantine/dates';\nimport {useUncontrolled} from '@mantine/hooks';\nimport dayjs from 'dayjs';\nimport {useUrlSyncedState, UseUrlSyncedStateOptions} from '../../hooks/use-url-synced-state';\nimport {DateRangePickerInlineCalendar, DateRangePickerInlineCalendarProps} from './DateRangePickerInlineCalendar';\n\nconst serialization = (input: Pick<UseUrlSyncedStateOptions<DatesRangeValue<string>>, 'serializer' | 'deserializer'>) =>\n Object.freeze(input);\n\nconst DATE_RANGE_SERIALIZATION = serialization({\n serializer: ([from, to]) => [\n ['from', from ? new Date(from).toISOString() : '', true],\n ['to', to ? new Date(to).toISOString() : '', true],\n ],\n deserializer: (params, initial) => [\n params.get('from') ? params.get('from') : initial[0],\n params.get('to') ? params.get('to') : initial[1],\n ],\n});\n\nexport type DateRangePickerStylesNames = 'input';\n\nexport interface DateRangePickerProps\n extends BoxProps,\n Pick<DateRangePickerInlineCalendarProps, 'presets' | 'rangeCalendarProps' | 'startProps' | 'endProps'>,\n Pick<PopoverProps, 'opened' | 'defaultOpened'>,\n StylesApiProps<DateRangePickerFactory> {\n /**\n * Called when the target input is clicked\n */\n onClick?(): void;\n /**\n * Function called when the cancel button is clicked.\n */\n onCancel?(): void;\n /**\n * Function called when the date range value changes.\n */\n onChange?(dates: DatesRangeValue<string>): void;\n /**\n * Called when the popover opened state changes.\n */\n onOpenedChange?(opened: boolean): void;\n /**\n * Optional formatter function to format the date value.\n * Receives the date prop and should return a string.\n * @default (time) => dayjs(time).format('MMM D, YYYY')\n */\n formatter?: (time: dayjs.ConfigType) => string;\n /**\n * The placeholder label to display when no date range is selected.\n *\n * @default \"Select date range\"\n */\n placeholder?: string;\n /**\n * Default value for uncontrolled input\n */\n defaultValue?: DatesRangeValue<string>;\n /**\n * Value for controlled input\n */\n value?: DatesRangeValue<string>;\n /**\n * Sync the selected dates to URL query parameters\n */\n syncWithUrl?: boolean;\n /**\n * Error message to display.\n */\n error?: string;\n}\n\nexport type DateRangePickerFactory = Factory<{\n props: DateRangePickerProps;\n ref: HTMLDivElement;\n stylesNames: DateRangePickerStylesNames;\n}>;\n\nconst defaultProps: Partial<DateRangePickerProps> = {\n placeholder: 'Select date range',\n formatter: (time) => dayjs(time).format('MMM D, YYYY'),\n};\n\nexport const DateRangePicker = factory<DateRangePickerFactory>((props: DateRangePickerProps) => {\n const {\n defaultValue,\n value,\n opened,\n defaultOpened,\n onOpenedChange,\n onClick,\n onCancel,\n onChange,\n presets,\n startProps,\n endProps,\n rangeCalendarProps,\n formatter,\n placeholder,\n syncWithUrl,\n error,\n className,\n classNames,\n style,\n styles,\n vars,\n unstyled,\n ...others\n } = useProps('PlasmaDateRangePicker', defaultProps as Partial<DateRangePickerProps>, props);\n\n const getStyles = useStyles<DateRangePickerFactory>({\n name: 'DateRangePicker',\n classes: {},\n props,\n className,\n classNames,\n style,\n styles,\n unstyled,\n vars,\n });\n const stylesApiProps = {classNames, styles};\n\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange: onOpenedChange,\n });\n\n const [dateRange, setDateRange] = useUrlSyncedState<DatesRangeValue<string>>({\n ...DATE_RANGE_SERIALIZATION,\n initialState: defaultValue !== undefined ? defaultValue : [null, null],\n sync: !!syncWithUrl,\n });\n\n const handleApply = (dates: DatesRangeValue<string>) => {\n if (value === undefined) {\n setDateRange(dates);\n }\n onChange?.(dates);\n setOpened(false);\n };\n\n const handleClick = () => {\n setOpened(true);\n onClick?.();\n };\n\n const handleCancel = () => {\n setOpened(false);\n onCancel?.();\n };\n\n const _value = value ?? dateRange;\n const formattedRange = `${formatter(_value[0])} - ${formatter(_value[1])}`;\n const dateRangeInitialized = _value.every((date: DateStringValue) => typeof date === 'string' && date !== '');\n\n return (\n <Popover opened={_opened} onChange={setOpened}>\n <Popover.Target>\n <InputBase\n component=\"button\"\n leftSection={<IconCalendar height={16} />}\n onClick={handleClick}\n error={error}\n {...getStyles('input', {className, style, ...stylesApiProps})}\n {...others}\n >\n {dateRangeInitialized ? formattedRange : placeholder}\n </InputBase>\n </Popover.Target>\n <Popover.Dropdown p={0}>\n <DateRangePickerInlineCalendar\n initialRange={_value}\n onApply={handleApply}\n onCancel={handleCancel}\n presets={presets}\n rangeCalendarProps={rangeCalendarProps}\n startProps={startProps}\n endProps={endProps}\n />\n </Popover.Dropdown>\n </Popover>\n );\n});\n"],"names":["IconCalendar","factory","InputBase","Popover","useProps","useStyles","useUncontrolled","dayjs","useUrlSyncedState","DateRangePickerInlineCalendar","serialization","input","Object","freeze","DATE_RANGE_SERIALIZATION","serializer","from","to","Date","toISOString","deserializer","params","initial","get","defaultProps","placeholder","formatter","time","format","DateRangePicker","props","defaultValue","value","opened","defaultOpened","onOpenedChange","onClick","onCancel","onChange","presets","startProps","endProps","rangeCalendarProps","syncWithUrl","error","className","classNames","style","styles","vars","unstyled","others","getStyles","name","classes","stylesApiProps","_opened","setOpened","finalValue","dateRange","setDateRange","initialState","undefined","sync","handleApply","dates","handleClick","handleCancel","_value","formattedRange","dateRangeInitialized","every","date","Target","component","leftSection","height","Dropdown","p","initialRange","onApply"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/DateRangePicker/DateRangePicker.tsx"],"sourcesContent":["import {IconCalendar} from '@coveord/plasma-react-icons';\nimport {\n BoxProps,\n factory,\n Factory,\n InputBase,\n Popover,\n PopoverProps,\n StylesApiProps,\n useProps,\n useStyles,\n} from '@mantine/core';\nimport {DatesRangeValue, DateStringValue} from '@mantine/dates';\nimport {useUncontrolled} from '@mantine/hooks';\nimport dayjs from 'dayjs';\nimport {useUrlSyncedState, UseUrlSyncedStateOptions} from '../../hooks/use-url-synced-state';\nimport classes from './DateRange.module.css';\nimport {DateRangePickerInlineCalendar, DateRangePickerInlineCalendarProps} from './DateRangePickerInlineCalendar';\n\nconst serialization = (input: Pick<UseUrlSyncedStateOptions<DatesRangeValue<string>>, 'serializer' | 'deserializer'>) =>\n Object.freeze(input);\n\nconst DATE_RANGE_SERIALIZATION = serialization({\n serializer: ([from, to]) => [\n ['from', from ? new Date(from).toISOString() : '', true],\n ['to', to ? new Date(to).toISOString() : '', true],\n ],\n deserializer: (params, initial) => [\n params.get('from') ? params.get('from') : initial[0],\n params.get('to') ? params.get('to') : initial[1],\n ],\n});\n\nexport type DateRangePickerStylesNames = 'input';\n\nexport interface DateRangePickerProps\n extends BoxProps,\n Pick<DateRangePickerInlineCalendarProps, 'presets' | 'rangeCalendarProps' | 'startProps' | 'endProps'>,\n Pick<PopoverProps, 'opened' | 'defaultOpened'>,\n StylesApiProps<DateRangePickerFactory> {\n /**\n * Called when the target input is clicked\n */\n onClick?(): void;\n /**\n * Function called when the cancel button is clicked.\n */\n onCancel?(): void;\n /**\n * Function called when the date range value changes.\n */\n onChange?(dates: DatesRangeValue<string>): void;\n /**\n * Called when the popover opened state changes.\n */\n onOpenedChange?(opened: boolean): void;\n /**\n * Optional formatter function to format the date value.\n * Receives the date prop and should return a string.\n * @default (time) => dayjs(time).format('MMM D, YYYY')\n */\n formatter?: (time: dayjs.ConfigType) => string;\n /**\n * The placeholder label to display when no date range is selected.\n *\n * @default \"Select date range\"\n */\n placeholder?: string;\n /**\n * Default value for uncontrolled input\n */\n defaultValue?: DatesRangeValue<string>;\n /**\n * Value for controlled input\n */\n value?: DatesRangeValue<string>;\n /**\n * Sync the selected dates to URL query parameters\n */\n syncWithUrl?: boolean;\n /**\n * Error message to display.\n */\n error?: string;\n}\n\nexport type DateRangePickerFactory = Factory<{\n props: DateRangePickerProps;\n ref: HTMLDivElement;\n stylesNames: DateRangePickerStylesNames;\n}>;\n\nconst defaultProps: Partial<DateRangePickerProps> = {\n placeholder: 'Select date range',\n formatter: (time) => dayjs(time).format('MMM D, YYYY'),\n};\n\nexport const DateRangePicker = factory<DateRangePickerFactory>((props: DateRangePickerProps) => {\n const {\n defaultValue,\n value,\n opened,\n defaultOpened,\n onOpenedChange,\n onClick,\n onCancel,\n onChange,\n presets,\n startProps,\n endProps,\n rangeCalendarProps,\n formatter,\n placeholder,\n syncWithUrl,\n error,\n className,\n classNames,\n style,\n styles,\n vars,\n unstyled,\n ...others\n } = useProps('PlasmaDateRangePicker', defaultProps as Partial<DateRangePickerProps>, props);\n\n const getStyles = useStyles<DateRangePickerFactory>({\n name: 'DateRangePicker',\n classes,\n props,\n className,\n classNames,\n style,\n styles,\n unstyled,\n vars,\n });\n const stylesApiProps = {classNames, styles};\n\n const [_opened, setOpened] = useUncontrolled({\n value: opened,\n defaultValue: defaultOpened,\n finalValue: false,\n onChange: onOpenedChange,\n });\n\n const [dateRange, setDateRange] = useUrlSyncedState<DatesRangeValue<string>>({\n ...DATE_RANGE_SERIALIZATION,\n initialState: defaultValue !== undefined ? defaultValue : [null, null],\n sync: !!syncWithUrl,\n });\n\n const handleApply = (dates: DatesRangeValue<string>) => {\n if (value === undefined) {\n setDateRange(dates);\n }\n onChange?.(dates);\n setOpened(false);\n };\n\n const handleClick = () => {\n setOpened(true);\n onClick?.();\n };\n\n const handleCancel = () => {\n setOpened(false);\n onCancel?.();\n };\n\n const _value = value ?? dateRange;\n const formattedRange = `${formatter(_value[0])} - ${formatter(_value[1])}`;\n const dateRangeInitialized = _value.every((date: DateStringValue) => typeof date === 'string' && date !== '');\n\n return (\n <Popover opened={_opened} onChange={setOpened}>\n <Popover.Target>\n <InputBase\n component=\"button\"\n leftSection={<IconCalendar height={16} />}\n onClick={handleClick}\n error={error}\n {...getStyles('input', {className, style, ...stylesApiProps})}\n {...others}\n >\n {dateRangeInitialized ? formattedRange : placeholder}\n </InputBase>\n </Popover.Target>\n <Popover.Dropdown p={0}>\n <DateRangePickerInlineCalendar\n initialRange={_value}\n onApply={handleApply}\n onCancel={handleCancel}\n presets={presets}\n rangeCalendarProps={rangeCalendarProps}\n startProps={startProps}\n endProps={endProps}\n />\n </Popover.Dropdown>\n </Popover>\n );\n});\n"],"names":["IconCalendar","factory","InputBase","Popover","useProps","useStyles","useUncontrolled","dayjs","useUrlSyncedState","classes","DateRangePickerInlineCalendar","serialization","input","Object","freeze","DATE_RANGE_SERIALIZATION","serializer","from","to","Date","toISOString","deserializer","params","initial","get","defaultProps","placeholder","formatter","time","format","DateRangePicker","props","defaultValue","value","opened","defaultOpened","onOpenedChange","onClick","onCancel","onChange","presets","startProps","endProps","rangeCalendarProps","syncWithUrl","error","className","classNames","style","styles","vars","unstyled","others","getStyles","name","stylesApiProps","_opened","setOpened","finalValue","dateRange","setDateRange","initialState","undefined","sync","handleApply","dates","handleClick","handleCancel","_value","formattedRange","dateRangeInitialized","every","date","Target","component","leftSection","height","Dropdown","p","initialRange","onApply"],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import { Factory, RadioCardProps as MantineRadioCardProps, RadioCardStylesNames as MantineRadioCardStylesNames, RadioCardCssVariables, StylesApiProps } from '@mantine/core';
2
+ import { ReactNode } from 'react';
3
+ export type RadioCardStylesNames = MantineRadioCardStylesNames | 'container' | 'indicator' | 'title' | 'description';
4
+ export type RadioCardFactory = Factory<{
5
+ props: RadioCardProps;
6
+ ref: HTMLButtonElement;
7
+ stylesNames: RadioCardStylesNames;
8
+ vars: RadioCardCssVariables;
9
+ }>;
10
+ export type RadioCardProps = MantineRadioCardProps & StylesApiProps<RadioCardFactory> & {
11
+ /**
12
+ * The label of the card. Appears next to the radio indicator.
13
+ */
14
+ label: ReactNode;
15
+ /**
16
+ * The description of the card. Appears under the title.
17
+ */
18
+ description?: ReactNode;
19
+ };
20
+ export declare const RadioCard: import("@mantine/core").MantineComponent<{
21
+ props: RadioCardProps;
22
+ ref: HTMLButtonElement;
23
+ stylesNames: RadioCardStylesNames;
24
+ vars: RadioCardCssVariables;
25
+ }>;
26
+ //# sourceMappingURL=RadioCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RadioCard.d.ts","sourceRoot":"","sources":["../../../../src/components/RadioCard/RadioCard.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEH,OAAO,EAEP,cAAc,IAAI,qBAAqB,EACvC,oBAAoB,IAAI,2BAA2B,EAEnD,qBAAqB,EACrB,cAAc,EAKjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,SAAS,EAAC,MAAM,OAAO,CAAC;AAGhC,MAAM,MAAM,oBAAoB,GAAG,2BAA2B,GAAG,WAAW,GAAG,WAAW,GAAG,OAAO,GAAG,aAAa,CAAC;AACrH,MAAM,MAAM,gBAAgB,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,cAAc,CAAC;IACtB,GAAG,EAAE,iBAAiB,CAAC;IACvB,WAAW,EAAE,oBAAoB,CAAC;IAClC,IAAI,EAAE,qBAAqB,CAAC;CAC/B,CAAC,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,qBAAqB,GAC9C,cAAc,CAAC,gBAAgB,CAAC,GAAG;IAC/B;;OAEG;IACH,KAAK,EAAE,SAAS,CAAC;IACjB;;OAEG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;CAC3B,CAAC;AAIN,eAAO,MAAM,SAAS;WApBX,cAAc;SAChB,iBAAiB;iBACT,oBAAoB;UAC3B,qBAAqB;EAkD7B,CAAC"}