@coveord/plasma-mantine 48.9.3 → 48.10.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 (167) hide show
  1. package/.turbo/turbo-build.log +3 -3
  2. package/.turbo/turbo-test.log +7 -7
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/cjs/__tests__/GlobalSetup.js.map +1 -1
  5. package/dist/cjs/__tests__/SetupAfterEnv.js.map +1 -1
  6. package/dist/cjs/__tests__/Utils.js.map +1 -1
  7. package/dist/cjs/components/blank-slate/BlankSlate.js +1 -1
  8. package/dist/cjs/components/blank-slate/BlankSlate.js.map +1 -1
  9. package/dist/cjs/components/blank-slate/index.js.map +1 -1
  10. package/dist/cjs/components/code-editor/CodeEditor.js +7 -7
  11. package/dist/cjs/components/code-editor/CodeEditor.js.map +1 -1
  12. package/dist/cjs/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -1
  13. package/dist/cjs/components/code-editor/__mocks__/monaco-editor.js.map +1 -1
  14. package/dist/cjs/components/code-editor/index.js.map +1 -1
  15. package/dist/cjs/components/collection/Collection.js +8 -8
  16. package/dist/cjs/components/collection/Collection.js.map +1 -1
  17. package/dist/cjs/components/collection/CollectionItem.js +7 -7
  18. package/dist/cjs/components/collection/CollectionItem.js.map +1 -1
  19. package/dist/cjs/components/collection/Colllection.styles.js.map +1 -1
  20. package/dist/cjs/components/collection/index.js.map +1 -1
  21. package/dist/cjs/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
  22. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js +5 -5
  23. package/dist/cjs/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
  24. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js +2 -2
  25. package/dist/cjs/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  26. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js +1 -1
  27. package/dist/cjs/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  28. package/dist/cjs/components/date-range-picker/index.js.map +1 -1
  29. package/dist/cjs/components/header/Header.js.map +1 -1
  30. package/dist/cjs/components/header/index.js.map +1 -1
  31. package/dist/cjs/components/index.js.map +1 -1
  32. package/dist/cjs/components/inline-confirm/InlineConfirm.js +1 -1
  33. package/dist/cjs/components/inline-confirm/InlineConfirm.js.map +1 -1
  34. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js +2 -2
  35. package/dist/cjs/components/inline-confirm/InlineConfirmButton.js.map +1 -1
  36. package/dist/cjs/components/inline-confirm/InlineConfirmContext.js.map +1 -1
  37. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js +2 -2
  38. package/dist/cjs/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  39. package/dist/cjs/components/inline-confirm/index.js.map +1 -1
  40. package/dist/cjs/components/inline-confirm/useInlineConfirm.js.map +1 -1
  41. package/dist/cjs/components/modal-wizard/ModalWizard.js +5 -5
  42. package/dist/cjs/components/modal-wizard/ModalWizard.js.map +1 -1
  43. package/dist/cjs/components/modal-wizard/ModalWizardStep.js.map +1 -1
  44. package/dist/cjs/components/modal-wizard/index.js.map +1 -1
  45. package/dist/cjs/components/prompt/Prompt.js +1 -1
  46. package/dist/cjs/components/prompt/Prompt.js.map +1 -1
  47. package/dist/cjs/components/prompt/PromptFooter.js.map +1 -1
  48. package/dist/cjs/components/prompt/index.js.map +1 -1
  49. package/dist/cjs/components/sticky-footer/StickyFooter.js.map +1 -1
  50. package/dist/cjs/components/sticky-footer/index.js.map +1 -1
  51. package/dist/cjs/components/table/Table.js +14 -14
  52. package/dist/cjs/components/table/Table.js.map +1 -1
  53. package/dist/cjs/components/table/TableActions.js.map +1 -1
  54. package/dist/cjs/components/table/TableCollapsibleColumn.js.map +1 -1
  55. package/dist/cjs/components/table/TableContext.js.map +1 -1
  56. package/dist/cjs/components/table/TableDateRangePicker.js +2 -2
  57. package/dist/cjs/components/table/TableDateRangePicker.js.map +1 -1
  58. package/dist/cjs/components/table/TableFilter.js +3 -3
  59. package/dist/cjs/components/table/TableFilter.js.map +1 -1
  60. package/dist/cjs/components/table/TableFooter.js.map +1 -1
  61. package/dist/cjs/components/table/TableHeader.js.map +1 -1
  62. package/dist/cjs/components/table/TablePagination.js +1 -1
  63. package/dist/cjs/components/table/TablePagination.js.map +1 -1
  64. package/dist/cjs/components/table/TablePerPage.js +5 -5
  65. package/dist/cjs/components/table/TablePerPage.js.map +1 -1
  66. package/dist/cjs/components/table/TablePredicate.js +1 -1
  67. package/dist/cjs/components/table/TablePredicate.js.map +1 -1
  68. package/dist/cjs/components/table/Th.js.map +1 -1
  69. package/dist/cjs/components/table/index.js.map +1 -1
  70. package/dist/cjs/components/table/useTable.js.map +1 -1
  71. package/dist/cjs/hooks/index.js.map +1 -1
  72. package/dist/cjs/hooks/useControlledList.js +2 -2
  73. package/dist/cjs/hooks/useControlledList.js.map +1 -1
  74. package/dist/cjs/hooks/useParentHeight.js +6 -6
  75. package/dist/cjs/hooks/useParentHeight.js.map +1 -1
  76. package/dist/cjs/index.js.map +1 -1
  77. package/dist/cjs/theme/PlasmaColors.js +26 -16
  78. package/dist/cjs/theme/PlasmaColors.js.map +1 -1
  79. package/dist/cjs/theme/Plasmantine.js.map +1 -1
  80. package/dist/cjs/theme/Theme.js +15 -0
  81. package/dist/cjs/theme/Theme.js.map +1 -1
  82. package/dist/cjs/theme/index.js.map +1 -1
  83. package/dist/definitions/theme/PlasmaColors.d.ts +5 -0
  84. package/dist/definitions/theme/PlasmaColors.d.ts.map +1 -1
  85. package/dist/definitions/theme/Theme.d.ts.map +1 -1
  86. package/dist/esm/__tests__/GlobalSetup.js.map +1 -1
  87. package/dist/esm/__tests__/SetupAfterEnv.js.map +1 -1
  88. package/dist/esm/__tests__/Utils.js.map +1 -1
  89. package/dist/esm/components/blank-slate/BlankSlate.js +1 -1
  90. package/dist/esm/components/blank-slate/BlankSlate.js.map +1 -1
  91. package/dist/esm/components/blank-slate/index.js.map +1 -1
  92. package/dist/esm/components/code-editor/CodeEditor.js +7 -7
  93. package/dist/esm/components/code-editor/CodeEditor.js.map +1 -1
  94. package/dist/esm/components/code-editor/__mocks__/@monaco-editor/react.js.map +1 -1
  95. package/dist/esm/components/code-editor/__mocks__/monaco-editor.js.map +1 -1
  96. package/dist/esm/components/code-editor/index.js.map +1 -1
  97. package/dist/esm/components/collection/Collection.js +8 -8
  98. package/dist/esm/components/collection/Collection.js.map +1 -1
  99. package/dist/esm/components/collection/CollectionItem.js +7 -7
  100. package/dist/esm/components/collection/CollectionItem.js.map +1 -1
  101. package/dist/esm/components/collection/Colllection.styles.js.map +1 -1
  102. package/dist/esm/components/collection/index.js.map +1 -1
  103. package/dist/esm/components/date-range-picker/DateRangePickerInlineCalendar.js.map +1 -1
  104. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js +5 -5
  105. package/dist/esm/components/date-range-picker/DateRangePickerPopoverCalendar.js.map +1 -1
  106. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js +2 -2
  107. package/dist/esm/components/date-range-picker/DateRangePickerPresetSelect.js.map +1 -1
  108. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js +1 -1
  109. package/dist/esm/components/date-range-picker/EditableDateRangePicker.js.map +1 -1
  110. package/dist/esm/components/date-range-picker/index.js.map +1 -1
  111. package/dist/esm/components/header/Header.js.map +1 -1
  112. package/dist/esm/components/header/index.js.map +1 -1
  113. package/dist/esm/components/index.js.map +1 -1
  114. package/dist/esm/components/inline-confirm/InlineConfirm.js +1 -1
  115. package/dist/esm/components/inline-confirm/InlineConfirm.js.map +1 -1
  116. package/dist/esm/components/inline-confirm/InlineConfirmButton.js +2 -2
  117. package/dist/esm/components/inline-confirm/InlineConfirmButton.js.map +1 -1
  118. package/dist/esm/components/inline-confirm/InlineConfirmContext.js.map +1 -1
  119. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js +2 -2
  120. package/dist/esm/components/inline-confirm/InlineConfirmPrompt.js.map +1 -1
  121. package/dist/esm/components/inline-confirm/index.js.map +1 -1
  122. package/dist/esm/components/inline-confirm/useInlineConfirm.js.map +1 -1
  123. package/dist/esm/components/modal-wizard/ModalWizard.js +5 -5
  124. package/dist/esm/components/modal-wizard/ModalWizard.js.map +1 -1
  125. package/dist/esm/components/modal-wizard/ModalWizardStep.js.map +1 -1
  126. package/dist/esm/components/modal-wizard/index.js.map +1 -1
  127. package/dist/esm/components/prompt/Prompt.js +1 -1
  128. package/dist/esm/components/prompt/Prompt.js.map +1 -1
  129. package/dist/esm/components/prompt/PromptFooter.js.map +1 -1
  130. package/dist/esm/components/prompt/index.js.map +1 -1
  131. package/dist/esm/components/sticky-footer/StickyFooter.js.map +1 -1
  132. package/dist/esm/components/sticky-footer/index.js.map +1 -1
  133. package/dist/esm/components/table/Table.js +14 -14
  134. package/dist/esm/components/table/Table.js.map +1 -1
  135. package/dist/esm/components/table/TableActions.js.map +1 -1
  136. package/dist/esm/components/table/TableCollapsibleColumn.js.map +1 -1
  137. package/dist/esm/components/table/TableContext.js.map +1 -1
  138. package/dist/esm/components/table/TableDateRangePicker.js +2 -2
  139. package/dist/esm/components/table/TableDateRangePicker.js.map +1 -1
  140. package/dist/esm/components/table/TableFilter.js +3 -3
  141. package/dist/esm/components/table/TableFilter.js.map +1 -1
  142. package/dist/esm/components/table/TableFooter.js.map +1 -1
  143. package/dist/esm/components/table/TableHeader.js.map +1 -1
  144. package/dist/esm/components/table/TablePagination.js +1 -1
  145. package/dist/esm/components/table/TablePagination.js.map +1 -1
  146. package/dist/esm/components/table/TablePerPage.js +5 -5
  147. package/dist/esm/components/table/TablePerPage.js.map +1 -1
  148. package/dist/esm/components/table/TablePredicate.js +1 -1
  149. package/dist/esm/components/table/TablePredicate.js.map +1 -1
  150. package/dist/esm/components/table/Th.js.map +1 -1
  151. package/dist/esm/components/table/index.js.map +1 -1
  152. package/dist/esm/components/table/useTable.js.map +1 -1
  153. package/dist/esm/hooks/index.js.map +1 -1
  154. package/dist/esm/hooks/useControlledList.js +2 -2
  155. package/dist/esm/hooks/useControlledList.js.map +1 -1
  156. package/dist/esm/hooks/useParentHeight.js +6 -6
  157. package/dist/esm/hooks/useParentHeight.js.map +1 -1
  158. package/dist/esm/index.js.map +1 -1
  159. package/dist/esm/theme/PlasmaColors.js +26 -16
  160. package/dist/esm/theme/PlasmaColors.js.map +1 -1
  161. package/dist/esm/theme/Plasmantine.js.map +1 -1
  162. package/dist/esm/theme/Theme.js +15 -0
  163. package/dist/esm/theme/Theme.js.map +1 -1
  164. package/dist/esm/theme/index.js.map +1 -1
  165. package/package.json +7 -7
  166. package/src/theme/PlasmaColors.ts +27 -16
  167. package/src/theme/Theme.tsx +15 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/header/Header.tsx"],"sourcesContent":["import {QuestionSize24Px} from '@coveord/plasma-react-icons';\nimport {Anchor, Breadcrumbs, DefaultProps, Divider, Group, Stack, Text, Title, Tooltip} from '@mantine/core';\nimport {FunctionComponent, ReactNode} from 'react';\n\ninterface HeaderProps extends DefaultProps {\n /**\n * The description text displayed inside the header underneath the title\n */\n description?: ReactNode;\n /**\n * Action buttons that can be displayed on the right of the header\n */\n actions?: ReactNode;\n /**\n * Whether the header should have a border on the bottom\n */\n borderBottom?: boolean;\n /**\n * A href pointing to documentation related to the current panel.\n * When provided, an info icon is rendered next to the title as link to this documentation\n */\n docLink?: string;\n /**\n * The tooltip text shown when hovering over the doc link icon\n */\n docLinkTooltipLabel?: string;\n /**\n * The title of the header.\n * If more than one children are provided, each of them act as parts of a breadcrumb\n */\n children: ReactNode;\n}\n\nexport const Header: FunctionComponent<HeaderProps> = ({\n description,\n actions,\n borderBottom,\n docLink,\n docLinkTooltipLabel,\n children,\n ...others\n}) => (\n <>\n <Group position=\"apart\" py=\"md\" px=\"xl\" {...others}>\n <Stack spacing=\"xs\">\n <Title order={4}>\n <Group spacing={0}>\n <Breadcrumbs>{children}</Breadcrumbs>\n {docLink ? (\n <Tooltip label={docLinkTooltipLabel} position=\"bottom\">\n <Anchor href={docLink} target=\"_blank\" ml=\"xs\">\n <QuestionSize24Px height={24} />\n </Anchor>\n </Tooltip>\n ) : null}\n </Group>\n </Title>\n <Text size=\"sm\">{description}</Text>\n </Stack>\n <Group spacing=\"xs\">{actions}</Group>\n </Group>\n {borderBottom ? <Divider size=\"xs\" /> : null}\n </>\n);\n"],"names":["QuestionSize24Px","Anchor","Breadcrumbs","Divider","Group","Stack","Text","Title","Tooltip","Header","description","actions","borderBottom","docLink","docLinkTooltipLabel","children","others","position","py","px","spacing","order","label","href","target","ml","height","size"],"mappings":"AAAA;;;;AAAA,SAAQA,gBAAgB,QAAO,6BAA6B,CAAC;AAC7D,SAAQC,MAAM,EAAEC,WAAW,EAAgBC,OAAO,EAAEC,KAAK,EAAEC,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAEC,OAAO,QAAO,eAAe,CAAC;AAgC7G,OAAO,IAAMC,MAAM,GAAmC,+BASlD;QARAC,WAAW,UAAXA,WAAW,EACXC,OAAO,UAAPA,OAAO,EACPC,YAAY,UAAZA,YAAY,EACZC,OAAO,UAAPA,OAAO,EACPC,mBAAmB,UAAnBA,mBAAmB,EACnBC,QAAQ,UAARA,QAAQ,EACLC,MAAM;QANTN,aAAW;QACXC,SAAO;QACPC,cAAY;QACZC,SAAO;QACPC,qBAAmB;QACnBC,UAAQ;;WAGR;;0BACI,MAACX,KAAK;gBAACa,QAAQ,EAAC,OAAO;gBAACC,EAAE,EAAC,IAAI;gBAACC,EAAE,EAAC,IAAI;eAAKH,MAAM;;kCAC9C,MAACX,KAAK;wBAACe,OAAO,EAAC,IAAI;;0CACf,KAACb,KAAK;gCAACc,KAAK,EAAE,CAAC;0CACX,cAAA,MAACjB,KAAK;oCAACgB,OAAO,EAAE,CAAC;;sDACb,KAAClB,WAAW;sDAAEa,QAAQ;0CAAe;wCACpCF,OAAO,iBACJ,KAACL,OAAO;4CAACc,KAAK,EAAER,mBAAmB;4CAAEG,QAAQ,EAAC,QAAQ;sDAClD,cAAA,KAAChB,MAAM;gDAACsB,IAAI,EAAEV,OAAO;gDAAEW,MAAM,EAAC,QAAQ;gDAACC,EAAE,EAAC,IAAI;0DAC1C,cAAA,KAACzB,gBAAgB;oDAAC0B,MAAM,EAAE,EAAE;kDAAI;8CAC3B;0CACH,GACV,IAAI;;kCACJ;8BACJ;0CACR,KAACpB,IAAI;gCAACqB,IAAI,EAAC,IAAI;0CAAEjB,WAAW;8BAAQ;;sBAChC;kCACR,KAACN,KAAK;wBAACgB,OAAO,EAAC,IAAI;kCAAET,OAAO;sBAAS;;eACjC;YACPC,YAAY,iBAAG,KAACT,OAAO;gBAACwB,IAAI,EAAC,IAAI;cAAG,GAAG,IAAI;;MAC7C;AAAD,CACL,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/header/Header.tsx"],"sourcesContent":["import {QuestionSize24Px} from '@coveord/plasma-react-icons';\nimport {Anchor, Breadcrumbs, DefaultProps, Divider, Group, Stack, Text, Title, Tooltip} from '@mantine/core';\nimport {FunctionComponent, ReactNode} from 'react';\n\ninterface HeaderProps extends DefaultProps {\n /**\n * The description text displayed inside the header underneath the title\n */\n description?: ReactNode;\n /**\n * Action buttons that can be displayed on the right of the header\n */\n actions?: ReactNode;\n /**\n * Whether the header should have a border on the bottom\n */\n borderBottom?: boolean;\n /**\n * A href pointing to documentation related to the current panel.\n * When provided, an info icon is rendered next to the title as link to this documentation\n */\n docLink?: string;\n /**\n * The tooltip text shown when hovering over the doc link icon\n */\n docLinkTooltipLabel?: string;\n /**\n * The title of the header.\n * If more than one children are provided, each of them act as parts of a breadcrumb\n */\n children: ReactNode;\n}\n\nexport const Header: FunctionComponent<HeaderProps> = ({\n description,\n actions,\n borderBottom,\n docLink,\n docLinkTooltipLabel,\n children,\n ...others\n}) => (\n <>\n <Group position=\"apart\" py=\"md\" px=\"xl\" {...others}>\n <Stack spacing=\"xs\">\n <Title order={4}>\n <Group spacing={0}>\n <Breadcrumbs>{children}</Breadcrumbs>\n {docLink ? (\n <Tooltip label={docLinkTooltipLabel} position=\"bottom\">\n <Anchor href={docLink} target=\"_blank\" ml=\"xs\">\n <QuestionSize24Px height={24} />\n </Anchor>\n </Tooltip>\n ) : null}\n </Group>\n </Title>\n <Text size=\"sm\">{description}</Text>\n </Stack>\n <Group spacing=\"xs\">{actions}</Group>\n </Group>\n {borderBottom ? <Divider size=\"xs\" /> : null}\n </>\n);\n"],"names":["QuestionSize24Px","Anchor","Breadcrumbs","Divider","Group","Stack","Text","Title","Tooltip","Header","description","actions","borderBottom","docLink","docLinkTooltipLabel","children","others","position","py","px","spacing","order","label","href","target","ml","height","size"],"mappings":"AAAA;;;;AAAA,SAAQA,gBAAgB,QAAO,8BAA8B;AAC7D,SAAQC,MAAM,EAAEC,WAAW,EAAgBC,OAAO,EAAEC,KAAK,EAAEC,KAAK,EAAEC,IAAI,EAAEC,KAAK,EAAEC,OAAO,QAAO,gBAAgB;AAgC7G,OAAO,IAAMC,SAAyC,+BASlD;QARAC,qBAAAA,aACAC,iBAAAA,SACAC,sBAAAA,cACAC,iBAAAA,SACAC,6BAAAA,qBACAC,kBAAAA,UACGC;QANHN;QACAC;QACAC;QACAC;QACAC;QACAC;;WAGA;;0BACI,MAACX;gBAAMa,UAAS;gBAAQC,IAAG;gBAAKC,IAAG;eAASH;;kCACxC,MAACX;wBAAMe,SAAQ;;0CACX,KAACb;gCAAMc,OAAO;0CACV,cAAA,MAACjB;oCAAMgB,SAAS;;sDACZ,KAAClB;sDAAaa;;wCACbF,wBACG,KAACL;4CAAQc,OAAOR;4CAAqBG,UAAS;sDAC1C,cAAA,KAAChB;gDAAOsB,MAAMV;gDAASW,QAAO;gDAASC,IAAG;0DACtC,cAAA,KAACzB;oDAAiB0B,QAAQ;;;6CAGlC,IAAI;;;;0CAGhB,KAACpB;gCAAKqB,MAAK;0CAAMjB;;;;kCAErB,KAACN;wBAAMgB,SAAQ;kCAAMT;;;;YAExBC,6BAAe,KAACT;gBAAQwB,MAAK;iBAAU,IAAI;;;AAC9C,EACJ"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/header/index.ts"],"sourcesContent":["export * from './Header';\n"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/header/index.ts"],"sourcesContent":["export * from './Header';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/index.ts"],"sourcesContent":["export * from './blank-slate';\nexport * from './code-editor';\nexport * from './collection';\nexport * from './date-range-picker';\nexport * from './sticky-footer';\nexport * from './header';\nexport * from './inline-confirm';\nexport * from './table';\nexport * from './prompt';\nexport * from './modal-wizard';\n"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"sources":["../../../src/components/index.ts"],"sourcesContent":["export * from './blank-slate';\nexport * from './code-editor';\nexport * from './collection';\nexport * from './date-range-picker';\nexport * from './sticky-footer';\nexport * from './header';\nexport * from './inline-confirm';\nexport * from './table';\nexport * from './prompt';\nexport * from './modal-wizard';\n"],"names":[],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,gBAAgB;AAC9B,cAAc,eAAe;AAC7B,cAAc,sBAAsB;AACpC,cAAc,kBAAkB;AAChC,cAAc,WAAW;AACzB,cAAc,mBAAmB;AACjC,cAAc,UAAU;AACxB,cAAc,WAAW;AACzB,cAAc,iBAAiB"}
@@ -6,7 +6,7 @@ import { InlineConfirmContext } from "./InlineConfirmContext";
6
6
  import { InlineConfirmPrompt } from "./InlineConfirmPrompt";
7
7
  export var InlineConfirm = function(param) {
8
8
  var children = param.children;
9
- var ref = _sliced_to_array(useState(null), 2), confirmingId = ref[0], setConfirmingId = ref[1];
9
+ var _useState = _sliced_to_array(useState(null), 2), confirmingId = _useState[0], setConfirmingId = _useState[1];
10
10
  var convertedChildren = Children.toArray(children);
11
11
  var prompt = convertedChildren.find(function(child) {
12
12
  return child.type === InlineConfirmPrompt && child.props.id === confirmingId;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirm.tsx"],"sourcesContent":["import {Children, FunctionComponent, PropsWithChildren, ReactElement, useState} from 'react';\n\nimport {InlineConfirmButton} from './InlineConfirmButton';\nimport {InlineConfirmContext} from './InlineConfirmContext';\nimport {InlineConfirmPrompt} from './InlineConfirmPrompt';\n\ntype InlineConfirmType = FunctionComponent<PropsWithChildren> & {\n Prompt: typeof InlineConfirmPrompt;\n Button: typeof InlineConfirmButton;\n};\n\nexport const InlineConfirm: InlineConfirmType = ({children}) => {\n const [confirmingId, setConfirmingId] = useState<string | null>(null);\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const prompt = convertedChildren.find(\n (child) => child.type === InlineConfirmPrompt && child.props.id === confirmingId\n );\n const clearConfirm = () => setConfirmingId(null);\n\n return (\n <InlineConfirmContext.Provider value={{confirmingId, setConfirmingId, clearConfirm}}>\n {prompt ?? children}\n </InlineConfirmContext.Provider>\n );\n};\n\nInlineConfirm.Prompt = InlineConfirmPrompt;\nInlineConfirm.Button = InlineConfirmButton;\n"],"names":["Children","useState","InlineConfirmButton","InlineConfirmContext","InlineConfirmPrompt","InlineConfirm","children","confirmingId","setConfirmingId","convertedChildren","toArray","prompt","find","child","type","props","id","clearConfirm","Provider","value","Prompt","Button"],"mappings":"AAAA;;AAAA,SAAQA,QAAQ,EAAsDC,QAAQ,QAAO,OAAO,CAAC;AAE7F,SAAQC,mBAAmB,QAAO,uBAAuB,CAAC;AAC1D,SAAQC,oBAAoB,QAAO,wBAAwB,CAAC;AAC5D,SAAQC,mBAAmB,QAAO,uBAAuB,CAAC;AAO1D,OAAO,IAAMC,aAAa,GAAsB,gBAAgB;QAAdC,QAAQ,SAARA,QAAQ;IACtD,IAAwCL,GAA6B,oBAA7BA,QAAQ,CAAgB,IAAI,CAAC,IAAA,EAA9DM,YAAY,GAAqBN,GAA6B,GAAlD,EAAEO,eAAe,GAAIP,GAA6B,GAAjC,AAAkC;IAEtE,IAAMQ,iBAAiB,GAAGT,QAAQ,CAACU,OAAO,CAACJ,QAAQ,CAAC,AAAkB,AAAC;IACvE,IAAMK,MAAM,GAAGF,iBAAiB,CAACG,IAAI,CACjC,SAACC,KAAK;eAAKA,KAAK,CAACC,IAAI,KAAKV,mBAAmB,IAAIS,KAAK,CAACE,KAAK,CAACC,EAAE,KAAKT,YAAY;KAAA,CACnF,AAAC;IACF,IAAMU,YAAY,GAAG;eAAMT,eAAe,CAAC,IAAI,CAAC;KAAA,AAAC;IAEjD,qBACI,KAACL,oBAAoB,CAACe,QAAQ;QAACC,KAAK,EAAE;YAACZ,YAAY,EAAZA,YAAY;YAAEC,eAAe,EAAfA,eAAe;YAAES,YAAY,EAAZA,YAAY;SAAC;kBAC9EN,MAAM,aAANA,MAAM,cAANA,MAAM,GAAIL,QAAQ;MACS,CAClC;AACN,CAAC,CAAC;AAEFD,aAAa,CAACe,MAAM,GAAGhB,mBAAmB,CAAC;AAC3CC,aAAa,CAACgB,MAAM,GAAGnB,mBAAmB,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirm.tsx"],"sourcesContent":["import {Children, FunctionComponent, PropsWithChildren, ReactElement, useState} from 'react';\n\nimport {InlineConfirmButton} from './InlineConfirmButton';\nimport {InlineConfirmContext} from './InlineConfirmContext';\nimport {InlineConfirmPrompt} from './InlineConfirmPrompt';\n\ntype InlineConfirmType = FunctionComponent<PropsWithChildren> & {\n Prompt: typeof InlineConfirmPrompt;\n Button: typeof InlineConfirmButton;\n};\n\nexport const InlineConfirm: InlineConfirmType = ({children}) => {\n const [confirmingId, setConfirmingId] = useState<string | null>(null);\n\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const prompt = convertedChildren.find(\n (child) => child.type === InlineConfirmPrompt && child.props.id === confirmingId\n );\n const clearConfirm = () => setConfirmingId(null);\n\n return (\n <InlineConfirmContext.Provider value={{confirmingId, setConfirmingId, clearConfirm}}>\n {prompt ?? children}\n </InlineConfirmContext.Provider>\n );\n};\n\nInlineConfirm.Prompt = InlineConfirmPrompt;\nInlineConfirm.Button = InlineConfirmButton;\n"],"names":["Children","useState","InlineConfirmButton","InlineConfirmContext","InlineConfirmPrompt","InlineConfirm","children","confirmingId","setConfirmingId","convertedChildren","toArray","prompt","find","child","type","props","id","clearConfirm","Provider","value","Prompt","Button"],"mappings":"AAAA;;AAAA,SAAQA,QAAQ,EAAsDC,QAAQ,QAAO,QAAQ;AAE7F,SAAQC,mBAAmB,QAAO,wBAAwB;AAC1D,SAAQC,oBAAoB,QAAO,yBAAyB;AAC5D,SAAQC,mBAAmB,QAAO,wBAAwB;AAO1D,OAAO,IAAMC,gBAAmC,gBAAgB;QAAdC,iBAAAA;IAC9C,IAAwCL,6BAAAA,SAAwB,IAAI,OAA7DM,eAAiCN,cAAnBO,kBAAmBP;IAExC,IAAMQ,oBAAoBT,SAASU,OAAO,CAACJ;IAC3C,IAAMK,SAASF,kBAAkBG,IAAI,CACjC,SAACC;eAAUA,MAAMC,IAAI,KAAKV,uBAAuBS,MAAME,KAAK,CAACC,EAAE,KAAKT;;IAExE,IAAMU,eAAe;eAAMT,gBAAgB,IAAI;;IAE/C,qBACI,KAACL,qBAAqBe,QAAQ;QAACC,OAAO;YAACZ,cAAAA;YAAcC,iBAAAA;YAAiBS,cAAAA;QAAY;kBAC7EN,mBAAAA,oBAAAA,SAAUL,QAAQ;;AAG/B,EAAE;AAEFD,cAAce,MAAM,GAAGhB;AACvBC,cAAcgB,MAAM,GAAGnB"}
@@ -6,9 +6,9 @@ import { useInlineConfirm } from "./useInlineConfirm";
6
6
  export var InlineConfirmButton = function(props) {
7
7
  var setConfirmingId = useInlineConfirm().setConfirmingId;
8
8
  var onClick = function(e) {
9
- var ref;
9
+ var _props_onClick;
10
10
  setConfirmingId(props.id);
11
- (ref = props.onClick) === null || ref === void 0 ? void 0 : ref.call(props, e);
11
+ (_props_onClick = props.onClick) === null || _props_onClick === void 0 ? void 0 : _props_onClick.call(props, e);
12
12
  };
13
13
  return /*#__PURE__*/ _jsx(Button, _object_spread_props(_object_spread({}, props), {
14
14
  onClick: onClick
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmButton.tsx"],"sourcesContent":["import {Button, ButtonProps} from '@mantine/core';\nimport {HTMLAttributes, MouseEventHandler} from 'react';\nimport {useInlineConfirm} from './useInlineConfirm';\n\ninterface InlineConfirmButtonProps extends ButtonProps, Omit<HTMLAttributes<HTMLButtonElement>, 'color'> {\n id: string;\n}\n\nexport const InlineConfirmButton = (props: InlineConfirmButtonProps) => {\n const {setConfirmingId} = useInlineConfirm();\n const onClick: MouseEventHandler<HTMLButtonElement> = (e) => {\n setConfirmingId(props.id);\n props.onClick?.(e);\n };\n\n return <Button {...props} onClick={onClick} />;\n};\n"],"names":["Button","useInlineConfirm","InlineConfirmButton","props","setConfirmingId","onClick","e","id"],"mappings":"AAAA;;;AAAA,SAAQA,MAAM,QAAoB,eAAe,CAAC;AAElD,SAAQC,gBAAgB,QAAO,oBAAoB,CAAC;AAMpD,OAAO,IAAMC,mBAAmB,GAAG,SAACC,KAA+B,EAAK;IACpE,IAAM,AAACC,eAAe,GAAIH,gBAAgB,EAAE,CAArCG,eAAe,AAAsB,AAAC;IAC7C,IAAMC,OAAO,GAAyC,SAACC,CAAC,EAAK;YAEzDH,GAAa;QADbC,eAAe,CAACD,KAAK,CAACI,EAAE,CAAC,CAAC;QAC1BJ,CAAAA,GAAa,GAAbA,KAAK,CAACE,OAAO,cAAbF,GAAa,WAAK,GAAlBA,KAAAA,CAAkB,GAAlBA,GAAa,CAAbA,IAAkB,CAAlBA,KAAK,EAAWG,CAAC,CAAC,CAAC;IACvB,CAAC,AAAC;IAEF,qBAAO,KAACN,MAAM,0CAAKG,KAAK;QAAEE,OAAO,EAAEA,OAAO;OAAI,CAAC;AACnD,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmButton.tsx"],"sourcesContent":["import {Button, ButtonProps} from '@mantine/core';\nimport {HTMLAttributes, MouseEventHandler} from 'react';\nimport {useInlineConfirm} from './useInlineConfirm';\n\ninterface InlineConfirmButtonProps extends ButtonProps, Omit<HTMLAttributes<HTMLButtonElement>, 'color'> {\n id: string;\n}\n\nexport const InlineConfirmButton = (props: InlineConfirmButtonProps) => {\n const {setConfirmingId} = useInlineConfirm();\n const onClick: MouseEventHandler<HTMLButtonElement> = (e) => {\n setConfirmingId(props.id);\n props.onClick?.(e);\n };\n\n return <Button {...props} onClick={onClick} />;\n};\n"],"names":["Button","useInlineConfirm","InlineConfirmButton","props","setConfirmingId","onClick","e","id"],"mappings":"AAAA;;;AAAA,SAAQA,MAAM,QAAoB,gBAAgB;AAElD,SAAQC,gBAAgB,QAAO,qBAAqB;AAMpD,OAAO,IAAMC,sBAAsB,SAACC,OAAoC;IACpE,IAAM,AAACC,kBAAmBH,mBAAnBG;IACP,IAAMC,UAAgD,SAACC,GAAM;YAEzDH;QADAC,gBAAgBD,MAAMI,EAAE;QACxBJ,CAAAA,iBAAAA,MAAME,OAAO,cAAbF,4BAAAA,KAAAA,IAAAA,eAAAA,KAAAA,OAAgBG;IACpB;IAEA,qBAAO,KAACN,gDAAWG;QAAOE,SAASA;;AACvC,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmContext.ts"],"sourcesContent":["import {createContext} from 'react';\n\ntype InlineConfirmContextType = {\n confirmingId: string;\n setConfirmingId: (id: string) => void;\n clearConfirm: () => void;\n};\n\nexport const InlineConfirmContext = createContext<InlineConfirmContextType | null>(null);\n"],"names":["createContext","InlineConfirmContext"],"mappings":"AAAA,SAAQA,aAAa,QAAO,OAAO,CAAC;AAQpC,OAAO,IAAMC,oBAAoB,GAAGD,aAAa,CAAkC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmContext.ts"],"sourcesContent":["import {createContext} from 'react';\n\ntype InlineConfirmContextType = {\n confirmingId: string;\n setConfirmingId: (id: string) => void;\n clearConfirm: () => void;\n};\n\nexport const InlineConfirmContext = createContext<InlineConfirmContextType | null>(null);\n"],"names":["createContext","InlineConfirmContext"],"mappings":"AAAA,SAAQA,aAAa,QAAO,QAAQ;AAQpC,OAAO,IAAMC,uBAAuBD,cAA+C,IAAI,EAAE"}
@@ -3,8 +3,8 @@ import { Button, Group } from "@mantine/core";
3
3
  import { useEffect } from "react";
4
4
  import { useInlineConfirm } from "./useInlineConfirm";
5
5
  export var InlineConfirmPrompt = function(param) {
6
- var id = param.id, label = param.label, _confirmLabel = param.confirmLabel, confirmLabel = _confirmLabel === void 0 ? "Delete" : _confirmLabel, _cancelLabel = param.cancelLabel, cancelLabel = _cancelLabel === void 0 ? "Cancel" : _cancelLabel, onConfirm = param.onConfirm;
7
- var ref = useInlineConfirm(), confirmingId = ref.confirmingId, clearConfirm = ref.clearConfirm;
6
+ var id = param.id, label = param.label, _param_confirmLabel = param.confirmLabel, confirmLabel = _param_confirmLabel === void 0 ? "Delete" : _param_confirmLabel, _param_cancelLabel = param.cancelLabel, cancelLabel = _param_cancelLabel === void 0 ? "Cancel" : _param_cancelLabel, onConfirm = param.onConfirm;
7
+ var _useInlineConfirm = useInlineConfirm(), confirmingId = _useInlineConfirm.confirmingId, clearConfirm = _useInlineConfirm.clearConfirm;
8
8
  var onClickConfirm = function() {
9
9
  onConfirm();
10
10
  clearConfirm();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmPrompt.tsx"],"sourcesContent":["import {Button, Group} from '@mantine/core';\nimport {FunctionComponent, ReactNode, useEffect} from 'react';\n\nimport {useInlineConfirm} from './useInlineConfirm';\n\ninterface InlineConfirmPromptProps {\n id: string;\n label: ReactNode;\n onConfirm: () => void;\n confirmLabel?: ReactNode;\n cancelLabel?: ReactNode;\n}\n\nexport const InlineConfirmPrompt: FunctionComponent<InlineConfirmPromptProps> = ({\n id,\n label,\n confirmLabel = 'Delete',\n cancelLabel = 'Cancel',\n onConfirm,\n}) => {\n const {confirmingId, clearConfirm} = useInlineConfirm();\n\n const onClickConfirm = () => {\n onConfirm();\n clearConfirm();\n };\n\n useEffect(() => {\n if (confirmingId !== id) {\n clearConfirm();\n }\n }, []);\n\n if (confirmingId === id) {\n return (\n <Group spacing=\"xs\">\n {label}\n <Button onClick={onClickConfirm} color=\"red\">\n {confirmLabel}\n </Button>\n <Button onClick={clearConfirm} variant=\"outline\">\n {cancelLabel}\n </Button>\n </Group>\n );\n }\n return null;\n};\n"],"names":["Button","Group","useEffect","useInlineConfirm","InlineConfirmPrompt","id","label","confirmLabel","cancelLabel","onConfirm","confirmingId","clearConfirm","onClickConfirm","spacing","onClick","color","variant"],"mappings":"AAAA;AAAA,SAAQA,MAAM,EAAEC,KAAK,QAAO,eAAe,CAAC;AAC5C,SAAsCC,SAAS,QAAO,OAAO,CAAC;AAE9D,SAAQC,gBAAgB,QAAO,oBAAoB,CAAC;AAUpD,OAAO,IAAMC,mBAAmB,GAAgD,gBAM1E;QALFC,EAAE,SAAFA,EAAE,EACFC,KAAK,SAALA,KAAK,wBACLC,YAAY,EAAZA,YAAY,8BAAG,QAAQ,gBAAA,uBACvBC,WAAW,EAAXA,WAAW,6BAAG,QAAQ,eAAA,EACtBC,SAAS,SAATA,SAAS;IAET,IAAqCN,GAAkB,GAAlBA,gBAAgB,EAAE,EAAhDO,YAAY,GAAkBP,GAAkB,CAAhDO,YAAY,EAAEC,YAAY,GAAIR,GAAkB,CAAlCQ,YAAY,AAAuB;IAExD,IAAMC,cAAc,GAAG,WAAM;QACzBH,SAAS,EAAE,CAAC;QACZE,YAAY,EAAE,CAAC;IACnB,CAAC,AAAC;IAEFT,SAAS,CAAC,WAAM;QACZ,IAAIQ,YAAY,KAAKL,EAAE,EAAE;YACrBM,YAAY,EAAE,CAAC;QACnB,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAID,YAAY,KAAKL,EAAE,EAAE;QACrB,qBACI,MAACJ,KAAK;YAACY,OAAO,EAAC,IAAI;;gBACdP,KAAK;8BACN,KAACN,MAAM;oBAACc,OAAO,EAAEF,cAAc;oBAAEG,KAAK,EAAC,KAAK;8BACvCR,YAAY;kBACR;8BACT,KAACP,MAAM;oBAACc,OAAO,EAAEH,YAAY;oBAAEK,OAAO,EAAC,SAAS;8BAC3CR,WAAW;kBACP;;UACL,CACV;IACN,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/InlineConfirmPrompt.tsx"],"sourcesContent":["import {Button, Group} from '@mantine/core';\nimport {FunctionComponent, ReactNode, useEffect} from 'react';\n\nimport {useInlineConfirm} from './useInlineConfirm';\n\ninterface InlineConfirmPromptProps {\n id: string;\n label: ReactNode;\n onConfirm: () => void;\n confirmLabel?: ReactNode;\n cancelLabel?: ReactNode;\n}\n\nexport const InlineConfirmPrompt: FunctionComponent<InlineConfirmPromptProps> = ({\n id,\n label,\n confirmLabel = 'Delete',\n cancelLabel = 'Cancel',\n onConfirm,\n}) => {\n const {confirmingId, clearConfirm} = useInlineConfirm();\n\n const onClickConfirm = () => {\n onConfirm();\n clearConfirm();\n };\n\n useEffect(() => {\n if (confirmingId !== id) {\n clearConfirm();\n }\n }, []);\n\n if (confirmingId === id) {\n return (\n <Group spacing=\"xs\">\n {label}\n <Button onClick={onClickConfirm} color=\"red\">\n {confirmLabel}\n </Button>\n <Button onClick={clearConfirm} variant=\"outline\">\n {cancelLabel}\n </Button>\n </Group>\n );\n }\n return null;\n};\n"],"names":["Button","Group","useEffect","useInlineConfirm","InlineConfirmPrompt","id","label","confirmLabel","cancelLabel","onConfirm","confirmingId","clearConfirm","onClickConfirm","spacing","onClick","color","variant"],"mappings":"AAAA;AAAA,SAAQA,MAAM,EAAEC,KAAK,QAAO,gBAAgB;AAC5C,SAAsCC,SAAS,QAAO,QAAQ;AAE9D,SAAQC,gBAAgB,QAAO,qBAAqB;AAUpD,OAAO,IAAMC,sBAAmE,gBAM1E;QALFC,WAAAA,IACAC,cAAAA,mCACAC,cAAAA,gDAAe,2DACfC,aAAAA,8CAAc,+BACdC,kBAAAA;IAEA,IAAqCN,oBAAAA,oBAA9BO,eAA8BP,kBAA9BO,cAAcC,eAAgBR,kBAAhBQ;IAErB,IAAMC,iBAAiB,WAAM;QACzBH;QACAE;IACJ;IAEAT,UAAU,WAAM;QACZ,IAAIQ,iBAAiBL,IAAI;YACrBM;QACJ,CAAC;IACL,GAAG,EAAE;IAEL,IAAID,iBAAiBL,IAAI;QACrB,qBACI,MAACJ;YAAMY,SAAQ;;gBACVP;8BACD,KAACN;oBAAOc,SAASF;oBAAgBG,OAAM;8BAClCR;;8BAEL,KAACP;oBAAOc,SAASH;oBAAcK,SAAQ;8BAClCR;;;;IAIjB,CAAC;IACD,OAAO,IAAI;AACf,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/index.ts"],"sourcesContent":["export * from './InlineConfirm';\nexport * from './useInlineConfirm';\nexport * from './InlineConfirmContext';\n"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/index.ts"],"sourcesContent":["export * from './InlineConfirm';\nexport * from './useInlineConfirm';\nexport * from './InlineConfirmContext';\n"],"names":[],"mappings":"AAAA,cAAc,kBAAkB;AAChC,cAAc,qBAAqB;AACnC,cAAc,yBAAyB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/inline-confirm/useInlineConfirm.ts"],"sourcesContent":["import {useContext} from 'react';\nimport {InlineConfirmContext} from './InlineConfirmContext';\n\nexport const useInlineConfirm = () => {\n const ctx = useContext(InlineConfirmContext);\n\n if (ctx === null) {\n throw new Error('useConfirm must be used inside of a InlineConfirmContext.Provider');\n }\n\n return ctx;\n};\n"],"names":["useContext","InlineConfirmContext","useInlineConfirm","ctx","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,OAAO,CAAC;AACjC,SAAQC,oBAAoB,QAAO,wBAAwB,CAAC;AAE5D,OAAO,IAAMC,gBAAgB,GAAG,WAAM;IAClC,IAAMC,GAAG,GAAGH,UAAU,CAACC,oBAAoB,CAAC,AAAC;IAE7C,IAAIE,GAAG,KAAK,IAAI,EAAE;QACd,MAAM,IAAIC,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACzF,CAAC;IAED,OAAOD,GAAG,CAAC;AACf,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/inline-confirm/useInlineConfirm.ts"],"sourcesContent":["import {useContext} from 'react';\nimport {InlineConfirmContext} from './InlineConfirmContext';\n\nexport const useInlineConfirm = () => {\n const ctx = useContext(InlineConfirmContext);\n\n if (ctx === null) {\n throw new Error('useConfirm must be used inside of a InlineConfirmContext.Provider');\n }\n\n return ctx;\n};\n"],"names":["useContext","InlineConfirmContext","useInlineConfirm","ctx","Error"],"mappings":"AAAA,SAAQA,UAAU,QAAO,QAAQ;AACjC,SAAQC,oBAAoB,QAAO,yBAAyB;AAE5D,OAAO,IAAMC,mBAAmB,WAAM;IAClC,IAAMC,MAAMH,WAAWC;IAEvB,IAAIE,QAAQ,IAAI,EAAE;QACd,MAAM,IAAIC,MAAM,qEAAqE;IACzF,CAAC;IAED,OAAOD;AACX,EAAE"}
@@ -9,7 +9,7 @@ import { StickyFooter } from "../sticky-footer";
9
9
  import { ModalWizardStep } from "./ModalWizardStep";
10
10
  import { Header } from "../header";
11
11
  export var ModalWizard = function(_param) {
12
- var _cancelButtonLabel = _param.cancelButtonLabel, cancelButtonLabel = _cancelButtonLabel === void 0 ? "Cancel" : _cancelButtonLabel, _nextButtonLabel = _param.nextButtonLabel, nextButtonLabel = _nextButtonLabel === void 0 ? "Next" : _nextButtonLabel, _previousButtonLabel = _param.previousButtonLabel, previousButtonLabel = _previousButtonLabel === void 0 ? "Previous" : _previousButtonLabel, _finishButtonLabel = _param.finishButtonLabel, finishButtonLabel = _finishButtonLabel === void 0 ? "Finish" : _finishButtonLabel, opened = _param.opened, onNext = _param.onNext, onPrevious = _param.onPrevious, onClose = _param.onClose, onFinish = _param.onFinish, isDirty = _param.isDirty, handleDirtyState = _param.handleDirtyState, classNames = _param.classNames, children = _param.children, modalProps = _object_without_properties(_param, [
12
+ var _param_cancelButtonLabel = _param.cancelButtonLabel, cancelButtonLabel = _param_cancelButtonLabel === void 0 ? "Cancel" : _param_cancelButtonLabel, _param_nextButtonLabel = _param.nextButtonLabel, nextButtonLabel = _param_nextButtonLabel === void 0 ? "Next" : _param_nextButtonLabel, _param_previousButtonLabel = _param.previousButtonLabel, previousButtonLabel = _param_previousButtonLabel === void 0 ? "Previous" : _param_previousButtonLabel, _param_finishButtonLabel = _param.finishButtonLabel, finishButtonLabel = _param_finishButtonLabel === void 0 ? "Finish" : _param_finishButtonLabel, opened = _param.opened, onNext = _param.onNext, onPrevious = _param.onPrevious, onClose = _param.onClose, onFinish = _param.onFinish, isDirty = _param.isDirty, handleDirtyState = _param.handleDirtyState, classNames = _param.classNames, children = _param.children, modalProps = _object_without_properties(_param, [
13
13
  "cancelButtonLabel",
14
14
  "nextButtonLabel",
15
15
  "previousButtonLabel",
@@ -24,8 +24,8 @@ export var ModalWizard = function(_param) {
24
24
  "classNames",
25
25
  "children"
26
26
  ]);
27
- var ref, ref1;
28
- var ref2 = _sliced_to_array(useState(0), 2), currentStepIndex = ref2[0], setCurrentStepIndex = ref2[1];
27
+ var _currentStep_props, _currentStep_props_validateStep;
28
+ var _useState = _sliced_to_array(useState(0), 2), currentStepIndex = _useState[0], setCurrentStepIndex = _useState[1];
29
29
  var modalSteps = Children.toArray(children).filter(function(child) {
30
30
  return child.type === ModalWizardStep;
31
31
  });
@@ -38,8 +38,8 @@ export var ModalWizard = function(_param) {
38
38
  var currentStep = modalSteps.filter(function(step, index) {
39
39
  return index === currentStepIndex;
40
40
  })[0];
41
- var ref3;
42
- var isValid = ((ref3 = currentStep === null || currentStep === void 0 ? void 0 : (ref = currentStep.props) === null || ref === void 0 ? void 0 : (ref1 = ref.validateStep) === null || ref1 === void 0 ? void 0 : ref1.call(ref, currentStepIndex, numberOfSteps)) !== null && ref3 !== void 0 ? ref3 : {
41
+ var _ref;
42
+ var isValid = ((_ref = currentStep === null || currentStep === void 0 ? void 0 : (_currentStep_props = currentStep.props) === null || _currentStep_props === void 0 ? void 0 : (_currentStep_props_validateStep = _currentStep_props.validateStep) === null || _currentStep_props_validateStep === void 0 ? void 0 : _currentStep_props_validateStep.call(_currentStep_props, currentStepIndex, numberOfSteps)) !== null && _ref !== void 0 ? _ref : {
43
43
  isValid: true
44
44
  }).isValid;
45
45
  var isModalDirty = isDirty && isDirty();
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal-wizard/ModalWizard.tsx"],"sourcesContent":["import {Button, Modal, ModalProps, Progress} from '@mantine/core';\nimport {Children, ReactElement, useMemo, useState} from 'react';\nimport {StickyFooter} from '../sticky-footer';\nimport {ModalWizardStep} from './ModalWizardStep';\nimport {Header} from '../header';\n\ninterface ModalWizardProps extends Omit<ModalProps, 'centered' | 'title'> {\n /**\n * The label of the cancel button\n *\n * @default \"Cancel\"\n */\n cancelButtonLabel?: string;\n\n /**\n * The label of the next button\n *\n * @default \"Next\"\n */\n nextButtonLabel?: string;\n\n /**\n * The label of the previous button\n *\n * @default \"Previous\"\n */\n previousButtonLabel?: string;\n\n /**\n * The label of the finish button\n *\n * @default \"Finish\"\n */\n finishButtonLabel?: string;\n\n /**\n * A callback function that is executed when the user clicks on the next button\n */\n onNext?: () => unknown;\n\n /**\n * A callback function that is executed when the user clicks on the previous button\n */\n onPrevious?: () => unknown;\n\n /**\n * A function that is executed when user completes all the steps.\n *\n * @param close A function that closes the modal when called.\n */\n onFinish?: () => unknown;\n\n /**\n * Determine if user interacted with any steps in the modal wizard\n */\n isDirty?: () => boolean;\n\n /**\n * A function to confirm close if the state is dirty before closing\n */\n handleDirtyState?: () => boolean;\n\n /**\n * Children to display in modal wizard\n * */\n children?: Array<ReturnType<typeof ModalWizardStep>>;\n}\n\ninterface ModalWizardType {\n (props: ModalWizardProps): ReactElement;\n\n Step: typeof ModalWizardStep;\n}\n\nexport const ModalWizard: ModalWizardType = ({\n cancelButtonLabel = 'Cancel',\n nextButtonLabel = 'Next',\n previousButtonLabel = 'Previous',\n finishButtonLabel = 'Finish',\n opened,\n onNext,\n onPrevious,\n onClose,\n onFinish,\n isDirty,\n handleDirtyState,\n classNames,\n children,\n ...modalProps\n}) => {\n const [currentStepIndex, setCurrentStepIndex] = useState(0);\n const modalSteps = (Children.toArray(children) as ReactElement[]).filter((child) => child.type === ModalWizardStep);\n\n const numberOfSteps = modalSteps.length;\n const numberOfStepsCountAsProgress = modalSteps.filter((step) => step.props.countsAsProgress).length;\n const isFirstStep = currentStepIndex === 0;\n const isLastStep = currentStepIndex === numberOfSteps - 1;\n const currentStep = modalSteps.filter((step: ReactElement, index: number) => index === currentStepIndex)[0];\n\n const {isValid} = currentStep?.props?.validateStep?.(currentStepIndex, numberOfSteps) ?? {isValid: true};\n const isModalDirty = isDirty && isDirty();\n\n const closeModalWizard = () => {\n if (isModalDirty && handleDirtyState) {\n handleDirtyState() && onClose?.();\n } else {\n onClose?.();\n }\n };\n\n const getProgress = (currStepIndex: number) => {\n const validSteps = modalSteps.filter(\n (step, index) => step.props.countsAsProgress && index <= currStepIndex\n ).length;\n return (validSteps / numberOfStepsCountAsProgress) * 100;\n };\n\n const getProgressMemo = useMemo(() => getProgress(currentStepIndex), [currentStepIndex]);\n\n return (\n <Modal\n opened={opened}\n classNames={classNames}\n centered\n title={\n <Header\n docLink={currentStep.props.docLink}\n description={\n typeof currentStep.props.description === 'function'\n ? currentStep.props.description(currentStepIndex + 1, numberOfSteps)\n : currentStep.props.description\n }\n py={null}\n px={null}\n >\n {typeof currentStep.props.title === 'function'\n ? currentStep.props.title(currentStepIndex + 1, numberOfSteps)\n : currentStep.props.title}\n </Header>\n }\n onClose={closeModalWizard}\n {...modalProps}\n >\n {currentStep.props.showProgressBar && <Progress color=\"teal\" size=\"lg\" value={getProgressMemo} />}\n {currentStep}\n <StickyFooter borderTop py={null} px={null} pt=\"md\">\n <Button\n name={isFirstStep ? cancelButtonLabel : previousButtonLabel}\n disabled={false}\n size=\"sm\"\n variant=\"outline\"\n onClick={() => {\n if (isFirstStep) {\n closeModalWizard();\n } else {\n onPrevious?.();\n setCurrentStepIndex(currentStepIndex - 1);\n }\n }}\n >\n {isFirstStep ? cancelButtonLabel : previousButtonLabel}\n </Button>\n\n <Button\n disabled={!isValid}\n size=\"sm\"\n onClick={() => {\n if (isLastStep) {\n onFinish ? onFinish() : onClose();\n } else {\n onNext?.();\n setCurrentStepIndex(currentStepIndex + 1);\n }\n }}\n >\n {isLastStep ? finishButtonLabel : nextButtonLabel}\n </Button>\n </StickyFooter>\n </Modal>\n );\n};\n\nModalWizard.Step = ModalWizardStep;\n"],"names":["Button","Modal","Progress","Children","useMemo","useState","StickyFooter","ModalWizardStep","Header","ModalWizard","cancelButtonLabel","nextButtonLabel","previousButtonLabel","finishButtonLabel","opened","onNext","onPrevious","onClose","onFinish","isDirty","handleDirtyState","classNames","children","modalProps","currentStep","currentStepIndex","setCurrentStepIndex","modalSteps","toArray","filter","child","type","numberOfSteps","length","numberOfStepsCountAsProgress","step","props","countsAsProgress","isFirstStep","isLastStep","index","isValid","validateStep","isModalDirty","closeModalWizard","getProgress","currStepIndex","validSteps","getProgressMemo","centered","title","docLink","description","py","px","showProgressBar","color","size","value","borderTop","pt","name","disabled","variant","onClick","Step"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/modal-wizard/ModalWizard.tsx"],"sourcesContent":["import {Button, Modal, ModalProps, Progress} from '@mantine/core';\nimport {Children, ReactElement, useMemo, useState} from 'react';\nimport {StickyFooter} from '../sticky-footer';\nimport {ModalWizardStep} from './ModalWizardStep';\nimport {Header} from '../header';\n\ninterface ModalWizardProps extends Omit<ModalProps, 'centered' | 'title'> {\n /**\n * The label of the cancel button\n *\n * @default \"Cancel\"\n */\n cancelButtonLabel?: string;\n\n /**\n * The label of the next button\n *\n * @default \"Next\"\n */\n nextButtonLabel?: string;\n\n /**\n * The label of the previous button\n *\n * @default \"Previous\"\n */\n previousButtonLabel?: string;\n\n /**\n * The label of the finish button\n *\n * @default \"Finish\"\n */\n finishButtonLabel?: string;\n\n /**\n * A callback function that is executed when the user clicks on the next button\n */\n onNext?: () => unknown;\n\n /**\n * A callback function that is executed when the user clicks on the previous button\n */\n onPrevious?: () => unknown;\n\n /**\n * A function that is executed when user completes all the steps.\n *\n * @param close A function that closes the modal when called.\n */\n onFinish?: () => unknown;\n\n /**\n * Determine if user interacted with any steps in the modal wizard\n */\n isDirty?: () => boolean;\n\n /**\n * A function to confirm close if the state is dirty before closing\n */\n handleDirtyState?: () => boolean;\n\n /**\n * Children to display in modal wizard\n * */\n children?: Array<ReturnType<typeof ModalWizardStep>>;\n}\n\ninterface ModalWizardType {\n (props: ModalWizardProps): ReactElement;\n\n Step: typeof ModalWizardStep;\n}\n\nexport const ModalWizard: ModalWizardType = ({\n cancelButtonLabel = 'Cancel',\n nextButtonLabel = 'Next',\n previousButtonLabel = 'Previous',\n finishButtonLabel = 'Finish',\n opened,\n onNext,\n onPrevious,\n onClose,\n onFinish,\n isDirty,\n handleDirtyState,\n classNames,\n children,\n ...modalProps\n}) => {\n const [currentStepIndex, setCurrentStepIndex] = useState(0);\n const modalSteps = (Children.toArray(children) as ReactElement[]).filter((child) => child.type === ModalWizardStep);\n\n const numberOfSteps = modalSteps.length;\n const numberOfStepsCountAsProgress = modalSteps.filter((step) => step.props.countsAsProgress).length;\n const isFirstStep = currentStepIndex === 0;\n const isLastStep = currentStepIndex === numberOfSteps - 1;\n const currentStep = modalSteps.filter((step: ReactElement, index: number) => index === currentStepIndex)[0];\n\n const {isValid} = currentStep?.props?.validateStep?.(currentStepIndex, numberOfSteps) ?? {isValid: true};\n const isModalDirty = isDirty && isDirty();\n\n const closeModalWizard = () => {\n if (isModalDirty && handleDirtyState) {\n handleDirtyState() && onClose?.();\n } else {\n onClose?.();\n }\n };\n\n const getProgress = (currStepIndex: number) => {\n const validSteps = modalSteps.filter(\n (step, index) => step.props.countsAsProgress && index <= currStepIndex\n ).length;\n return (validSteps / numberOfStepsCountAsProgress) * 100;\n };\n\n const getProgressMemo = useMemo(() => getProgress(currentStepIndex), [currentStepIndex]);\n\n return (\n <Modal\n opened={opened}\n classNames={classNames}\n centered\n title={\n <Header\n docLink={currentStep.props.docLink}\n description={\n typeof currentStep.props.description === 'function'\n ? currentStep.props.description(currentStepIndex + 1, numberOfSteps)\n : currentStep.props.description\n }\n py={null}\n px={null}\n >\n {typeof currentStep.props.title === 'function'\n ? currentStep.props.title(currentStepIndex + 1, numberOfSteps)\n : currentStep.props.title}\n </Header>\n }\n onClose={closeModalWizard}\n {...modalProps}\n >\n {currentStep.props.showProgressBar && <Progress color=\"teal\" size=\"lg\" value={getProgressMemo} />}\n {currentStep}\n <StickyFooter borderTop py={null} px={null} pt=\"md\">\n <Button\n name={isFirstStep ? cancelButtonLabel : previousButtonLabel}\n disabled={false}\n size=\"sm\"\n variant=\"outline\"\n onClick={() => {\n if (isFirstStep) {\n closeModalWizard();\n } else {\n onPrevious?.();\n setCurrentStepIndex(currentStepIndex - 1);\n }\n }}\n >\n {isFirstStep ? cancelButtonLabel : previousButtonLabel}\n </Button>\n\n <Button\n disabled={!isValid}\n size=\"sm\"\n onClick={() => {\n if (isLastStep) {\n onFinish ? onFinish() : onClose();\n } else {\n onNext?.();\n setCurrentStepIndex(currentStepIndex + 1);\n }\n }}\n >\n {isLastStep ? finishButtonLabel : nextButtonLabel}\n </Button>\n </StickyFooter>\n </Modal>\n );\n};\n\nModalWizard.Step = ModalWizardStep;\n"],"names":["Button","Modal","Progress","Children","useMemo","useState","StickyFooter","ModalWizardStep","Header","ModalWizard","cancelButtonLabel","nextButtonLabel","previousButtonLabel","finishButtonLabel","opened","onNext","onPrevious","onClose","onFinish","isDirty","handleDirtyState","classNames","children","modalProps","currentStep","currentStepIndex","setCurrentStepIndex","modalSteps","toArray","filter","child","type","numberOfSteps","length","numberOfStepsCountAsProgress","step","props","countsAsProgress","isFirstStep","isLastStep","index","isValid","validateStep","isModalDirty","closeModalWizard","getProgress","currStepIndex","validSteps","getProgressMemo","centered","title","docLink","description","py","px","showProgressBar","color","size","value","borderTop","pt","name","disabled","variant","onClick","Step"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal-wizard/ModalWizardStep.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren, ReactElement} from 'react';\n\ntype DependsOnStep<T> = (currentStep: number, numberOfSteps: number) => T;\n\nexport interface ModalWizardStepProps {\n /**\n * The title of the current step. The title can be dependent on the current step if needed\n */\n title?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * The description of the current step. The description can be dependent on the current step if needed\n */\n description?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * A link to the documentation for the current step\n */\n docLink: string;\n\n /**\n * A tooltip label for the docLink\n */\n docLinkTooltipLabel?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * A function to validate the current step, it determines if the next step should be enabled or not.\n */\n validateStep: (currentStep: any, numberOfSteps: any) => {isValid: boolean; messsage?: unknown};\n\n /**\n * Show progress bar at this step\n *\n * @default true\n */\n showProgressBar?: boolean;\n\n /**\n * Does completion of current step count moves the progress bar\n *\n * @default true\n */\n countsAsProgress?: boolean;\n}\n\nconst ModalWizardStep: FunctionComponent<PropsWithChildren<ModalWizardStepProps>> = ({children}) => (\n <div>{children}</div>\n);\n\nModalWizardStep.defaultProps = {\n showProgressBar: true,\n countsAsProgress: true,\n};\n\nexport {ModalWizardStep};\n"],"names":["ModalWizardStep","children","div","defaultProps","showProgressBar","countsAsProgress"],"mappings":"AAAA;AA6CA,IAAMA,eAAe,GAA+D;QAAEC,QAAQ,SAARA,QAAQ;yBAC1F,KAACC,KAAG;kBAAED,QAAQ;MAAO;CACxB,AAAC;AAEFD,eAAe,CAACG,YAAY,GAAG;IAC3BC,eAAe,EAAE,IAAI;IACrBC,gBAAgB,EAAE,IAAI;CACzB,CAAC;AAEF,SAAQL,eAAe,GAAE"}
1
+ {"version":3,"sources":["../../../../src/components/modal-wizard/ModalWizardStep.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren, ReactElement} from 'react';\n\ntype DependsOnStep<T> = (currentStep: number, numberOfSteps: number) => T;\n\nexport interface ModalWizardStepProps {\n /**\n * The title of the current step. The title can be dependent on the current step if needed\n */\n title?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * The description of the current step. The description can be dependent on the current step if needed\n */\n description?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * A link to the documentation for the current step\n */\n docLink: string;\n\n /**\n * A tooltip label for the docLink\n */\n docLinkTooltipLabel?: string | ReactElement | DependsOnStep<string | ReactElement>;\n\n /**\n * A function to validate the current step, it determines if the next step should be enabled or not.\n */\n validateStep: (currentStep: any, numberOfSteps: any) => {isValid: boolean; messsage?: unknown};\n\n /**\n * Show progress bar at this step\n *\n * @default true\n */\n showProgressBar?: boolean;\n\n /**\n * Does completion of current step count moves the progress bar\n *\n * @default true\n */\n countsAsProgress?: boolean;\n}\n\nconst ModalWizardStep: FunctionComponent<PropsWithChildren<ModalWizardStepProps>> = ({children}) => (\n <div>{children}</div>\n);\n\nModalWizardStep.defaultProps = {\n showProgressBar: true,\n countsAsProgress: true,\n};\n\nexport {ModalWizardStep};\n"],"names":["ModalWizardStep","children","div","defaultProps","showProgressBar","countsAsProgress"],"mappings":"AAAA;AA6CA,IAAMA,kBAA8E;QAAEC,iBAAAA;yBAClF,KAACC;kBAAKD;;;AAGVD,gBAAgBG,YAAY,GAAG;IAC3BC,iBAAiB,IAAI;IACrBC,kBAAkB,IAAI;AAC1B;AAEA,SAAQL,eAAe,GAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/modal-wizard/index.ts"],"sourcesContent":["export * from './ModalWizard';\nexport {type ModalWizardStepProps} from './ModalWizardStep';\n"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/modal-wizard/index.ts"],"sourcesContent":["export * from './ModalWizard';\nexport {type ModalWizardStepProps} from './ModalWizardStep';\n"],"names":[],"mappings":"AAAA,cAAc,gBAAgB"}
@@ -56,7 +56,7 @@ export var Prompt = function(_param) {
56
56
  "variant",
57
57
  "size"
58
58
  ]);
59
- var ref = useStyles(), classes = ref.classes, cx = ref.cx;
59
+ var _useStyles = useStyles(), classes = _useStyles.classes, cx = _useStyles.cx;
60
60
  var defaultVariant = variant === "default";
61
61
  var convertedChildren = Children.toArray(children);
62
62
  var otherChildren = convertedChildren.filter(function(child) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/prompt/Prompt.tsx"],"sourcesContent":["import {createStyles, Modal, ModalProps} from '@mantine/core';\nimport {Children, ReactElement, ReactNode} from 'react';\nimport {PromptFooter} from './PromptFooter';\n\nconst useStyles = createStyles((theme) => {\n const white = '#fff';\n return {\n body: {\n padding: 0,\n },\n modalType: {overflow: 'hidden', width: 550},\n innerBody: {\n padding: `${theme.spacing.md}px ${theme.spacing.xl}px ${theme.spacing.lg}px`,\n },\n header: {\n padding: `${theme.spacing.md}px ${theme.spacing.xl}px`,\n width: '100%',\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n fontSize: theme.headings.sizes.h4.fontSize,\n lineHeight: theme.headings.sizes.h4.fontSize,\n },\n default: {},\n success: {backgroundColor: theme.colors.lime[6], color: white},\n warning: {backgroundColor: theme.colors.yellow[5], color: white},\n critical: {\n backgroundColor: theme.colors.red[6],\n color: white,\n },\n info: {backgroundColor: theme.colors.navy[5], color: white},\n whiteClose: {color: white, '&:hover': {backgroundColor: 'transparent'}},\n };\n});\n\nexport interface PromptProps extends ModalProps {\n variant: 'default' | 'success' | 'warning' | 'critical' | 'info';\n children: ReactNode;\n}\ninterface PromptType {\n (props: PromptProps): ReactElement;\n Footer: typeof PromptFooter;\n}\n\nexport const Prompt: PromptType = ({children, variant, size, ...otherProps}) => {\n const {classes, cx} = useStyles();\n const defaultVariant = variant === 'default';\n const convertedChildren = Children.toArray(children) as ReactElement[];\n\n const otherChildren = convertedChildren.filter((child) => child.type !== PromptFooter);\n const footer = convertedChildren.find((child) => child.type === PromptFooter);\n\n const classNames = {\n header: cx(classes.header, classes[variant]),\n close: !defaultVariant && classes.whiteClose,\n body: classes.body,\n modal: !defaultVariant && classes.modalType,\n };\n\n return (\n <Modal padding={0} classNames={classNames} size={defaultVariant ? size : 'sm'} {...otherProps}>\n <div className={classes.innerBody}>{otherChildren}</div>\n {footer}\n </Modal>\n );\n};\n\nPrompt.Footer = PromptFooter;\n"],"names":["createStyles","Modal","Children","PromptFooter","useStyles","theme","white","body","padding","modalType","overflow","width","innerBody","spacing","md","xl","lg","header","borderBottom","colors","gray","fontSize","headings","sizes","h4","lineHeight","default","success","backgroundColor","lime","color","warning","yellow","critical","red","info","navy","whiteClose","Prompt","children","variant","size","otherProps","classes","cx","defaultVariant","convertedChildren","toArray","otherChildren","filter","child","type","footer","find","classNames","close","modal","div","className","Footer"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/prompt/Prompt.tsx"],"sourcesContent":["import {createStyles, Modal, ModalProps} from '@mantine/core';\nimport {Children, ReactElement, ReactNode} from 'react';\nimport {PromptFooter} from './PromptFooter';\n\nconst useStyles = createStyles((theme) => {\n const white = '#fff';\n return {\n body: {\n padding: 0,\n },\n modalType: {overflow: 'hidden', width: 550},\n innerBody: {\n padding: `${theme.spacing.md}px ${theme.spacing.xl}px ${theme.spacing.lg}px`,\n },\n header: {\n padding: `${theme.spacing.md}px ${theme.spacing.xl}px`,\n width: '100%',\n borderBottom: `1px solid ${theme.colors.gray[3]}`,\n fontSize: theme.headings.sizes.h4.fontSize,\n lineHeight: theme.headings.sizes.h4.fontSize,\n },\n default: {},\n success: {backgroundColor: theme.colors.lime[6], color: white},\n warning: {backgroundColor: theme.colors.yellow[5], color: white},\n critical: {\n backgroundColor: theme.colors.red[6],\n color: white,\n },\n info: {backgroundColor: theme.colors.navy[5], color: white},\n whiteClose: {color: white, '&:hover': {backgroundColor: 'transparent'}},\n };\n});\n\nexport interface PromptProps extends ModalProps {\n variant: 'default' | 'success' | 'warning' | 'critical' | 'info';\n children: ReactNode;\n}\ninterface PromptType {\n (props: PromptProps): ReactElement;\n Footer: typeof PromptFooter;\n}\n\nexport const Prompt: PromptType = ({children, variant, size, ...otherProps}) => {\n const {classes, cx} = useStyles();\n const defaultVariant = variant === 'default';\n const convertedChildren = Children.toArray(children) as ReactElement[];\n\n const otherChildren = convertedChildren.filter((child) => child.type !== PromptFooter);\n const footer = convertedChildren.find((child) => child.type === PromptFooter);\n\n const classNames = {\n header: cx(classes.header, classes[variant]),\n close: !defaultVariant && classes.whiteClose,\n body: classes.body,\n modal: !defaultVariant && classes.modalType,\n };\n\n return (\n <Modal padding={0} classNames={classNames} size={defaultVariant ? size : 'sm'} {...otherProps}>\n <div className={classes.innerBody}>{otherChildren}</div>\n {footer}\n </Modal>\n );\n};\n\nPrompt.Footer = PromptFooter;\n"],"names":["createStyles","Modal","Children","PromptFooter","useStyles","theme","white","body","padding","modalType","overflow","width","innerBody","spacing","md","xl","lg","header","borderBottom","colors","gray","fontSize","headings","sizes","h4","lineHeight","default","success","backgroundColor","lime","color","warning","yellow","critical","red","info","navy","whiteClose","Prompt","children","variant","size","otherProps","classes","cx","defaultVariant","convertedChildren","toArray","otherChildren","filter","child","type","footer","find","classNames","close","modal","div","className","Footer"],"mappings":"AAAA;;;;AAAA,SAAQA,YAAY,EAAEC,KAAK,QAAmB,gBAAgB;AAC9D,SAAQC,QAAQ,QAAgC,QAAQ;AACxD,SAAQC,YAAY,QAAO,iBAAiB;AAE5C,IAAMC,YAAYJ,aAAa,SAACK,OAAU;IACtC,IAAMC,QAAQ;IACd,OAAO;QACHC,MAAM;YACFC,SAAS;QACb;QACAC,WAAW;YAACC,UAAU;YAAUC,OAAO;QAAG;QAC1CC,WAAW;YACPJ,SAAS,AAAC,GAAwBH,OAAtBA,MAAMQ,OAAO,CAACC,EAAE,EAAC,OAA2BT,OAAtBA,MAAMQ,OAAO,CAACE,EAAE,EAAC,OAAsB,OAAjBV,MAAMQ,OAAO,CAACG,EAAE,EAAC;QAC7E;QACAC,QAAQ;YACJT,SAAS,AAAC,GAAwBH,OAAtBA,MAAMQ,OAAO,CAACC,EAAE,EAAC,OAAsB,OAAjBT,MAAMQ,OAAO,CAACE,EAAE,EAAC;YACnDJ,OAAO;YACPO,cAAc,AAAC,aAAiC,OAArBb,MAAMc,MAAM,CAACC,IAAI,CAAC,EAAE;YAC/CC,UAAUhB,MAAMiB,QAAQ,CAACC,KAAK,CAACC,EAAE,CAACH,QAAQ;YAC1CI,YAAYpB,MAAMiB,QAAQ,CAACC,KAAK,CAACC,EAAE,CAACH,QAAQ;QAChD;QACAK,SAAS,CAAC;QACVC,SAAS;YAACC,iBAAiBvB,MAAMc,MAAM,CAACU,IAAI,CAAC,EAAE;YAAEC,OAAOxB;QAAK;QAC7DyB,SAAS;YAACH,iBAAiBvB,MAAMc,MAAM,CAACa,MAAM,CAAC,EAAE;YAAEF,OAAOxB;QAAK;QAC/D2B,UAAU;YACNL,iBAAiBvB,MAAMc,MAAM,CAACe,GAAG,CAAC,EAAE;YACpCJ,OAAOxB;QACX;QACA6B,MAAM;YAACP,iBAAiBvB,MAAMc,MAAM,CAACiB,IAAI,CAAC,EAAE;YAAEN,OAAOxB;QAAK;QAC1D+B,YAAY;YAACP,OAAOxB;YAAO,WAAW;gBAACsB,iBAAiB;YAAa;QAAC;IAC1E;AACJ;AAWA,OAAO,IAAMU,SAAqB,iBAA8C;QAA5CC,kBAAAA,UAAUC,iBAAAA,SAASC,cAAAA,MAASC;QAA5BH;QAAUC;QAASC;;IACnD,IAAsBrC,aAAAA,aAAfuC,UAAevC,WAAfuC,SAASC,KAAMxC,WAANwC;IAChB,IAAMC,iBAAiBL,YAAY;IACnC,IAAMM,oBAAoB5C,SAAS6C,OAAO,CAACR;IAE3C,IAAMS,gBAAgBF,kBAAkBG,MAAM,CAAC,SAACC;eAAUA,MAAMC,IAAI,KAAKhD;;IACzE,IAAMiD,SAASN,kBAAkBO,IAAI,CAAC,SAACH;eAAUA,MAAMC,IAAI,KAAKhD;;IAEhE,IAAMmD,aAAa;QACfrC,QAAQ2B,GAAGD,QAAQ1B,MAAM,EAAE0B,OAAO,CAACH,QAAQ;QAC3Ce,OAAO,CAACV,kBAAkBF,QAAQN,UAAU;QAC5C9B,MAAMoC,QAAQpC,IAAI;QAClBiD,OAAO,CAACX,kBAAkBF,QAAQlC,SAAS;IAC/C;IAEA,qBACI,MAACR;QAAMO,SAAS;QAAG8C,YAAYA;QAAYb,MAAMI,iBAAiBJ,OAAO,IAAI;OAAMC;;0BAC/E,KAACe;gBAAIC,WAAWf,QAAQ/B,SAAS;0BAAGoC;;YACnCI;;;AAGb,EAAE;AAEFd,OAAOqB,MAAM,GAAGxD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/prompt/PromptFooter.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren} from 'react';\nimport {StickyFooter, StickyFooterProps} from '../sticky-footer';\n\nexport interface PromptFooterProps extends StickyFooterProps {}\n\nexport const PromptFooter: FunctionComponent<PropsWithChildren<PromptFooterProps>> = ({children, ...otherProps}) => (\n <StickyFooter {...otherProps}>{children}</StickyFooter>\n);\n"],"names":["StickyFooter","PromptFooter","children","otherProps"],"mappings":"AAAA;;;;AACA,SAAQA,YAAY,QAA0B,kBAAkB,CAAC;AAIjE,OAAO,IAAMC,YAAY,GAA4D,+BACjF;QADmFC,QAAQ,UAARA,QAAQ,EAAKC,UAAU;QAAvBD,UAAQ;;WAC3F,KAACF,YAAY,0CAAKG,UAAU;kBAAGD,QAAQ;OAAgB;AAAD,CACzD,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/prompt/PromptFooter.tsx"],"sourcesContent":["import {FunctionComponent, PropsWithChildren} from 'react';\nimport {StickyFooter, StickyFooterProps} from '../sticky-footer';\n\nexport interface PromptFooterProps extends StickyFooterProps {}\n\nexport const PromptFooter: FunctionComponent<PropsWithChildren<PromptFooterProps>> = ({children, ...otherProps}) => (\n <StickyFooter {...otherProps}>{children}</StickyFooter>\n);\n"],"names":["StickyFooter","PromptFooter","children","otherProps"],"mappings":"AAAA;;;;AACA,SAAQA,YAAY,QAA0B,mBAAmB;AAIjE,OAAO,IAAMC,eAAwE,+BACjF;QADmFC,kBAAAA,UAAaC;QAAbD;;WACnF,KAACF,sDAAiBG;kBAAaD;;AAAuB,EACxD"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/prompt/index.ts"],"sourcesContent":["export * from './Prompt';\n"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/prompt/index.ts"],"sourcesContent":["export * from './Prompt';\n"],"names":[],"mappings":"AAAA,cAAc,WAAW"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/sticky-footer/StickyFooter.tsx"],"sourcesContent":["import {createStyles, DefaultProps, Divider, Group, Paper} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nexport interface StickyFooterProps extends DefaultProps {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n}\n\nconst useStyles = createStyles(() => ({\n footer: {\n position: 'sticky',\n bottom: 0,\n zIndex: 1,\n maxHeight: '80px',\n },\n}));\n\nexport const StickyFooter: FunctionComponent<PropsWithChildren<StickyFooterProps>> = ({\n borderTop,\n children,\n ...others\n}) => {\n const {classes} = useStyles();\n\n return (\n <Paper className={classes.footer}>\n {borderTop ? <Divider size=\"xs\" /> : null}\n <Group position=\"right\" spacing=\"xs\" py=\"md\" px=\"xl\" {...others}>\n {children}\n </Group>\n </Paper>\n );\n};\n"],"names":["createStyles","Divider","Group","Paper","useStyles","footer","position","bottom","zIndex","maxHeight","StickyFooter","borderTop","children","others","classes","className","size","spacing","py","px"],"mappings":"AAAA;;;;AAAA,SAAQA,YAAY,EAAgBC,OAAO,EAAEC,KAAK,EAAEC,KAAK,QAAO,eAAe,CAAC;AAUhF,IAAMC,SAAS,GAAGJ,YAAY,CAAC;WAAO;QAClCK,MAAM,EAAE;YACJC,QAAQ,EAAE,QAAQ;YAClBC,MAAM,EAAE,CAAC;YACTC,MAAM,EAAE,CAAC;YACTC,SAAS,EAAE,MAAM;SACpB;KACJ;CAAC,CAAC,AAAC;AAEJ,OAAO,IAAMC,YAAY,GAA4D,iBAI/E;QAHFC,SAAS,UAATA,SAAS,EACTC,QAAQ,UAARA,QAAQ,EACLC,MAAM;QAFTF,WAAS;QACTC,UAAQ;;IAGR,IAAM,AAACE,OAAO,GAAIV,SAAS,EAAE,CAAtBU,OAAO,AAAe,AAAC;IAE9B,qBACI,MAACX,KAAK;QAACY,SAAS,EAAED,OAAO,CAACT,MAAM;;YAC3BM,SAAS,iBAAG,KAACV,OAAO;gBAACe,IAAI,EAAC,IAAI;cAAG,GAAG,IAAI;0BACzC,KAACd,KAAK;gBAACI,QAAQ,EAAC,OAAO;gBAACW,OAAO,EAAC,IAAI;gBAACC,EAAE,EAAC,IAAI;gBAACC,EAAE,EAAC,IAAI;eAAKN,MAAM;0BAC1DD,QAAQ;eACL;;MACJ,CACV;AACN,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/sticky-footer/StickyFooter.tsx"],"sourcesContent":["import {createStyles, DefaultProps, Divider, Group, Paper} from '@mantine/core';\nimport {FunctionComponent, PropsWithChildren} from 'react';\n\nexport interface StickyFooterProps extends DefaultProps {\n /**\n * Whether a border is render on top of the footer\n */\n borderTop?: boolean;\n}\n\nconst useStyles = createStyles(() => ({\n footer: {\n position: 'sticky',\n bottom: 0,\n zIndex: 1,\n maxHeight: '80px',\n },\n}));\n\nexport const StickyFooter: FunctionComponent<PropsWithChildren<StickyFooterProps>> = ({\n borderTop,\n children,\n ...others\n}) => {\n const {classes} = useStyles();\n\n return (\n <Paper className={classes.footer}>\n {borderTop ? <Divider size=\"xs\" /> : null}\n <Group position=\"right\" spacing=\"xs\" py=\"md\" px=\"xl\" {...others}>\n {children}\n </Group>\n </Paper>\n );\n};\n"],"names":["createStyles","Divider","Group","Paper","useStyles","footer","position","bottom","zIndex","maxHeight","StickyFooter","borderTop","children","others","classes","className","size","spacing","py","px"],"mappings":"AAAA;;;;AAAA,SAAQA,YAAY,EAAgBC,OAAO,EAAEC,KAAK,EAAEC,KAAK,QAAO,gBAAgB;AAUhF,IAAMC,YAAYJ,aAAa;WAAO;QAClCK,QAAQ;YACJC,UAAU;YACVC,QAAQ;YACRC,QAAQ;YACRC,WAAW;QACf;IACJ;;AAEA,OAAO,IAAMC,eAAwE,iBAI/E;QAHFC,mBAAAA,WACAC,kBAAAA,UACGC;QAFHF;QACAC;;IAGA,IAAM,AAACE,UAAWV,YAAXU;IAEP,qBACI,MAACX;QAAMY,WAAWD,QAAQT,MAAM;;YAC3BM,0BAAY,KAACV;gBAAQe,MAAK;iBAAU,IAAI;0BACzC,KAACd;gBAAMI,UAAS;gBAAQW,SAAQ;gBAAKC,IAAG;gBAAKC,IAAG;eAASN;0BACpDD;;;;AAIjB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/sticky-footer/index.ts"],"sourcesContent":["export * from './StickyFooter';\n"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/sticky-footer/index.ts"],"sourcesContent":["export * from './StickyFooter';\n"],"names":[],"mappings":"AAAA,cAAc,iBAAiB"}
@@ -57,7 +57,7 @@ var useStyles = createStyles(function(theme, param, getRef) {
57
57
  };
58
58
  });
59
59
  export var Table = function(param) {
60
- var data = param.data, noDataChildren = param.noDataChildren, getExpandChildren = param.getExpandChildren, _initialState = param.initialState, initialState = _initialState === void 0 ? {} : _initialState, columns = param.columns, onMount = param.onMount, onChange = param.onChange, children = param.children, _loading = param.loading, loading = _loading === void 0 ? false : _loading;
60
+ var data = param.data, noDataChildren = param.noDataChildren, getExpandChildren = param.getExpandChildren, _param_initialState = param.initialState, initialState = _param_initialState === void 0 ? {} : _param_initialState, columns = param.columns, onMount = param.onMount, onChange = param.onChange, children = param.children, _param_loading = param.loading, loading = _param_loading === void 0 ? false : _param_loading;
61
61
  var convertedChildren = Children.toArray(children);
62
62
  var header = convertedChildren.find(function(child) {
63
63
  return child.type === TableHeader;
@@ -69,20 +69,20 @@ export var Table = function(param) {
69
69
  "predicates",
70
70
  "dateRange"
71
71
  ]);
72
- var ref, ref1;
72
+ var _ref, _ref1;
73
73
  var form = useForm({
74
74
  initialValues: {
75
- predicates: (ref = initialState === null || initialState === void 0 ? void 0 : initialState.predicates) !== null && ref !== void 0 ? ref : {},
76
- dateRange: (ref1 = initialState === null || initialState === void 0 ? void 0 : initialState.dateRange) !== null && ref1 !== void 0 ? ref1 : [
75
+ predicates: (_ref = initialState === null || initialState === void 0 ? void 0 : initialState.predicates) !== null && _ref !== void 0 ? _ref : {},
76
+ dateRange: (_ref1 = initialState === null || initialState === void 0 ? void 0 : initialState.dateRange) !== null && _ref1 !== void 0 ? _ref1 : [
77
77
  null,
78
78
  null
79
79
  ]
80
80
  }
81
81
  });
82
- var ref2 = useStyles({
82
+ var _useStyles = useStyles({
83
83
  hasHeader: !!header
84
- }), cx = ref2.cx, classes = ref2.classes;
85
- var ref3;
84
+ }), cx = _useStyles.cx, classes = _useStyles.classes;
85
+ var _ref2;
86
86
  var table = useReactTable({
87
87
  initialState: defaultsDeep(initialStateWithoutForm, {
88
88
  pagination: {
@@ -94,10 +94,10 @@ export var Table = function(param) {
94
94
  getCoreRowModel: getCoreRowModel(),
95
95
  manualPagination: true,
96
96
  getRowCanExpand: function(row) {
97
- return (ref3 = !!(getExpandChildren === null || getExpandChildren === void 0 ? void 0 : getExpandChildren(row.original))) !== null && ref3 !== void 0 ? ref3 : false;
97
+ return (_ref2 = !!(getExpandChildren === null || getExpandChildren === void 0 ? void 0 : getExpandChildren(row.original))) !== null && _ref2 !== void 0 ? _ref2 : false;
98
98
  }
99
99
  });
100
- var ref4 = _sliced_to_array(useState(table.initialState), 2), state = ref4[0], setState = ref4[1];
100
+ var _useState = _sliced_to_array(useState(table.initialState), 2), state = _useState[0], setState = _useState[1];
101
101
  table.setOptions(function(prev) {
102
102
  return _object_spread_props(_object_spread({}, prev), {
103
103
  state: state,
@@ -137,10 +137,10 @@ export var Table = function(param) {
137
137
  });
138
138
  });
139
139
  };
140
- var ref5;
140
+ var _ref3;
141
141
  var getSelectedRow = useCallback(function() {
142
- var ref, ref1;
143
- return (ref5 = (ref = table.getSelectedRowModel().flatRows) === null || ref === void 0 ? void 0 : (ref1 = ref[0]) === null || ref1 === void 0 ? void 0 : ref1.original) !== null && ref5 !== void 0 ? ref5 : null;
142
+ var _table_getSelectedRowModel_flatRows, _table_getSelectedRowModel_flatRows_;
143
+ return (_ref3 = (_table_getSelectedRowModel_flatRows = table.getSelectedRowModel().flatRows) === null || _table_getSelectedRowModel_flatRows === void 0 ? void 0 : (_table_getSelectedRowModel_flatRows_ = _table_getSelectedRowModel_flatRows[0]) === null || _table_getSelectedRowModel_flatRows_ === void 0 ? void 0 : _table_getSelectedRowModel_flatRows_.original) !== null && _ref3 !== void 0 ? _ref3 : null;
144
144
  }, [
145
145
  state.rowSelection
146
146
  ]);
@@ -158,8 +158,8 @@ export var Table = function(param) {
158
158
  });
159
159
  };
160
160
  var rows = table.getRowModel().rows.map(function(row) {
161
- var ref;
162
- var rowChildren = (ref = getExpandChildren === null || getExpandChildren === void 0 ? void 0 : getExpandChildren(row.original)) !== null && ref !== void 0 ? ref : null;
161
+ var _ref;
162
+ var rowChildren = (_ref = getExpandChildren === null || getExpandChildren === void 0 ? void 0 : getExpandChildren(row.original)) !== null && _ref !== void 0 ? _ref : null;
163
163
  return /*#__PURE__*/ _jsxs(Fragment, {
164
164
  children: [
165
165
  /*#__PURE__*/ _jsx("tr", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Collapse, createStyles, Loader, Skeleton, Table as MantineTable} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useClickOutside, useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n flexRender,\n getCoreRowModel,\n Row,\n TableState,\n useReactTable,\n} from '@tanstack/react-table';\nimport {InitialTableState} from '@tanstack/table-core';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Fragment, ReactElement, ReactNode, useCallback, useEffect, useState} from 'react';\n\nimport {TableActions} from './TableActions';\nimport {TableCollapsibleColumn} from './TableCollapsibleColumn';\nimport {onTableChangeEvent, TableContext, TableFormType} from './TableContext';\nimport {TableDateRangePicker} from './TableDateRangePicker';\nimport {TableFilter} from './TableFilter';\nimport {TableFooter} from './TableFooter';\nimport {TableHeader} from './TableHeader';\nimport {TablePagination} from './TablePagination';\nimport {TablePerPage} from './TablePerPage';\nimport {TablePredicate} from './TablePredicate';\nimport {Th} from './Th';\n\nconst useStyles = createStyles<string, {hasHeader: boolean}>((theme, {hasHeader}, getRef) => ({\n table: {\n width: '100%',\n '& td:first-child': {\n paddingLeft: theme.spacing.md,\n },\n },\n\n header: {\n position: 'sticky',\n top: hasHeader ? 69 : 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 12, // skeleton is 11\n '& tr th:first-child div': {\n paddingLeft: theme.spacing.md,\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[2]}`,\n },\n },\n\n rowSelected: {\n ref: getRef('rowSelected'),\n },\n\n row: {\n [`&:hover, &.${getRef('rowSelected')}`]: {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2)\n : theme.colors[theme.primaryColor][0],\n },\n },\n}));\n\ninterface TableProps<T> {\n /**\n * Data to display in the table\n */\n data: T[];\n /**\n * Columns to display in the table.\n *\n * @see https://tanstack.com/table/v8/docs/guide/column-defs\n */\n columns: Array<ColumnDef<T>>;\n /**\n * Function called when the table mounts\n *\n * @param state the state of the table\n */\n onMount?: onTableChangeEvent;\n /**\n * Function called when the table should update\n *\n * @param state the state of the table\n */\n onChange?: onTableChangeEvent;\n /**\n * Function that generates the expandable content of a row\n * Return null for rows that don't need to be expandable\n *\n * @param datum the row for which the children should be generated.\n */\n getExpandChildren?: (datum: T) => ReactNode;\n /**\n * React children to show when the table has no rows to show. You can leverage useTable to get the state of the table\n */\n noDataChildren?: ReactNode;\n /**\n * Whether the table is loading or not\n *\n * @default false\n */\n loading?: boolean;\n /**\n * Childrens to display in the table. They need to be wrap in either `Table.Header` or `Table.Footer`\n *\n * @example\n * <Table ...>\n * <Table.Header>\n * <div>Hello</div>\n * </Table.Header>\n * </Table>\n */\n children?: ReactNode;\n\n /**\n * Initial state of the table\n */\n initialState?: InitialTableState & Partial<TableFormType>;\n}\n\ninterface TableType {\n <T>(props: TableProps<T>): ReactElement;\n Actions: typeof TableActions;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n}\n\nexport const Table: TableType = <T,>({\n data,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n onMount,\n onChange,\n children,\n loading = false,\n}: TableProps<T>) => {\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {predicates: initialState?.predicates ?? {}, dateRange: initialState?.dateRange ?? [null, null]},\n });\n\n const {cx, classes} = useStyles({hasHeader: !!header});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {pagination: {pageSize: TablePerPage.DEFAULT_SIZE}}),\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: true,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n });\n const [state, setState] = useState<TableState>(table.initialState);\n table.setOptions((prev) => ({\n ...prev,\n state,\n onStateChange: setState,\n }));\n\n const triggerChange = () => onChange?.({...state, ...form.values});\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n }, []);\n\n const outsideClickRef = useClickOutside(() => {\n table.resetRowSelection(true);\n });\n\n useDidUpdate(() => {\n triggerChange();\n clearSelection();\n }, [state.globalFilter, state.sorting, state.pagination, form.values]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n const clearSelection = () => {\n setState((prevState) => ({...prevState, rowSelection: {}}));\n };\n\n const getSelectedRow = useCallback(\n () => table.getSelectedRowModel().flatRows?.[0]?.original ?? null,\n [state.rowSelection]\n );\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const toggleRowSelection = (row: Row<T>) => {\n table.setRowSelection(() => ({[row.id]: !row.getIsSelected()}));\n };\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={() => toggleRowSelection(row)}\n className={cx(classes.row, {[classes.rowSelected]: row.getIsSelected()})}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n return (\n <td key={cell.id} style={{width}}>\n <Skeleton visible={loading} sx={!loading ? {borderRadius: 0} : undefined}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </Skeleton>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={columns.length + 1}\n style={{padding: 0, borderBottomColor: row.getIsExpanded() ? undefined : 'transparent'}}\n >\n <Collapse in={row.getIsExpanded()} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n setState,\n clearFilters,\n getSelectedRow,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n }}\n >\n {header}\n <MantineTable className={classes.table} horizontalSpacing=\"sm\" verticalSpacing=\"xs\" pb=\"sm\">\n <thead className={classes.header}>\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ))}\n </thead>\n <tbody>\n {rows.length ? (\n rows\n ) : (\n <tr>\n <td colSpan={columns.length}>{noDataChildren}</td>\n </tr>\n )}\n </tbody>\n </MantineTable>\n {footer}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\n"],"names":["Box","Center","Collapse","createStyles","Loader","Skeleton","Table","MantineTable","useForm","useClickOutside","useDidUpdate","defaultColumnSizing","flexRender","getCoreRowModel","useReactTable","defaultsDeep","Children","Fragment","useCallback","useEffect","useState","TableActions","TableCollapsibleColumn","TableContext","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TablePagination","TablePerPage","TablePredicate","Th","useStyles","theme","getRef","hasHeader","table","width","paddingLeft","spacing","md","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","rowSelected","ref","row","fn","rgba","primaryColor","data","noDataChildren","getExpandChildren","initialState","columns","onMount","onChange","children","loading","convertedChildren","toArray","find","child","type","footer","predicates","dateRange","initialStateWithoutForm","form","initialValues","cx","classes","pagination","pageSize","DEFAULT_SIZE","manualPagination","getRowCanExpand","original","state","setState","setOptions","prev","onStateChange","triggerChange","values","outsideClickRef","resetRowSelection","clearSelection","globalFilter","sorting","clearFilters","setFieldValue","prevState","rowSelection","getSelectedRow","getSelectedRowModel","flatRows","sx","flexGrow","toggleRowSelection","setRowSelection","id","getIsSelected","rows","getRowModel","map","rowChildren","tr","onClick","className","getVisibleCells","cell","size","column","getSize","undefined","td","style","visible","borderRadius","columnDef","getContext","colSpan","length","padding","borderBottomColor","getIsExpanded","in","px","py","Provider","value","containerRef","horizontalSpacing","verticalSpacing","pb","thead","getHeaderGroups","headerGroup","headers","columnHeader","tbody","Actions","Filter","Footer","Header","Pagination","Predicate","PerPage","CollapsibleColumn","DateRangePicker"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/table/Table.tsx"],"sourcesContent":["import {Box, Center, Collapse, createStyles, Loader, Skeleton, Table as MantineTable} from '@mantine/core';\nimport {useForm} from '@mantine/form';\nimport {useClickOutside, useDidUpdate} from '@mantine/hooks';\nimport {\n ColumnDef,\n defaultColumnSizing,\n flexRender,\n getCoreRowModel,\n Row,\n TableState,\n useReactTable,\n} from '@tanstack/react-table';\nimport {InitialTableState} from '@tanstack/table-core';\nimport defaultsDeep from 'lodash.defaultsdeep';\nimport {Children, Fragment, ReactElement, ReactNode, useCallback, useEffect, useState} from 'react';\n\nimport {TableActions} from './TableActions';\nimport {TableCollapsibleColumn} from './TableCollapsibleColumn';\nimport {onTableChangeEvent, TableContext, TableFormType} from './TableContext';\nimport {TableDateRangePicker} from './TableDateRangePicker';\nimport {TableFilter} from './TableFilter';\nimport {TableFooter} from './TableFooter';\nimport {TableHeader} from './TableHeader';\nimport {TablePagination} from './TablePagination';\nimport {TablePerPage} from './TablePerPage';\nimport {TablePredicate} from './TablePredicate';\nimport {Th} from './Th';\n\nconst useStyles = createStyles<string, {hasHeader: boolean}>((theme, {hasHeader}, getRef) => ({\n table: {\n width: '100%',\n '& td:first-child': {\n paddingLeft: theme.spacing.md,\n },\n },\n\n header: {\n position: 'sticky',\n top: hasHeader ? 69 : 0,\n backgroundColor: theme.colorScheme === 'dark' ? theme.black : theme.white,\n transition: 'box-shadow 150ms ease',\n zIndex: 12, // skeleton is 11\n '& tr th:first-child div': {\n paddingLeft: theme.spacing.md,\n },\n\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n left: 0,\n right: 0,\n bottom: 0,\n borderBottom: `1px solid ${theme.colors.gray[2]}`,\n },\n },\n\n rowSelected: {\n ref: getRef('rowSelected'),\n },\n\n row: {\n [`&:hover, &.${getRef('rowSelected')}`]: {\n backgroundColor:\n theme.colorScheme === 'dark'\n ? theme.fn.rgba(theme.colors[theme.primaryColor][7], 0.2)\n : theme.colors[theme.primaryColor][0],\n },\n },\n}));\n\ninterface TableProps<T> {\n /**\n * Data to display in the table\n */\n data: T[];\n /**\n * Columns to display in the table.\n *\n * @see https://tanstack.com/table/v8/docs/guide/column-defs\n */\n columns: Array<ColumnDef<T>>;\n /**\n * Function called when the table mounts\n *\n * @param state the state of the table\n */\n onMount?: onTableChangeEvent;\n /**\n * Function called when the table should update\n *\n * @param state the state of the table\n */\n onChange?: onTableChangeEvent;\n /**\n * Function that generates the expandable content of a row\n * Return null for rows that don't need to be expandable\n *\n * @param datum the row for which the children should be generated.\n */\n getExpandChildren?: (datum: T) => ReactNode;\n /**\n * React children to show when the table has no rows to show. You can leverage useTable to get the state of the table\n */\n noDataChildren?: ReactNode;\n /**\n * Whether the table is loading or not\n *\n * @default false\n */\n loading?: boolean;\n /**\n * Childrens to display in the table. They need to be wrap in either `Table.Header` or `Table.Footer`\n *\n * @example\n * <Table ...>\n * <Table.Header>\n * <div>Hello</div>\n * </Table.Header>\n * </Table>\n */\n children?: ReactNode;\n\n /**\n * Initial state of the table\n */\n initialState?: InitialTableState & Partial<TableFormType>;\n}\n\ninterface TableType {\n <T>(props: TableProps<T>): ReactElement;\n Actions: typeof TableActions;\n Filter: typeof TableFilter;\n Footer: typeof TableFooter;\n Header: typeof TableHeader;\n Pagination: typeof TablePagination;\n PerPage: typeof TablePerPage;\n Predicate: typeof TablePredicate;\n CollapsibleColumn: typeof TableCollapsibleColumn;\n DateRangePicker: typeof TableDateRangePicker;\n}\n\nexport const Table: TableType = <T,>({\n data,\n noDataChildren,\n getExpandChildren,\n initialState = {},\n columns,\n onMount,\n onChange,\n children,\n loading = false,\n}: TableProps<T>) => {\n const convertedChildren = Children.toArray(children) as ReactElement[];\n const header = convertedChildren.find((child) => child.type === TableHeader);\n const footer = convertedChildren.find((child) => child.type === TableFooter);\n\n const {predicates, dateRange, ...initialStateWithoutForm} = initialState;\n const form = useForm<TableFormType>({\n initialValues: {predicates: initialState?.predicates ?? {}, dateRange: initialState?.dateRange ?? [null, null]},\n });\n\n const {cx, classes} = useStyles({hasHeader: !!header});\n\n const table = useReactTable({\n initialState: defaultsDeep(initialStateWithoutForm, {pagination: {pageSize: TablePerPage.DEFAULT_SIZE}}),\n data,\n columns,\n getCoreRowModel: getCoreRowModel(),\n manualPagination: true,\n getRowCanExpand: (row: Row<T>) => !!getExpandChildren?.(row.original) ?? false,\n });\n const [state, setState] = useState<TableState>(table.initialState);\n table.setOptions((prev) => ({\n ...prev,\n state,\n onStateChange: setState,\n }));\n\n const triggerChange = () => onChange?.({...state, ...form.values});\n\n useEffect(() => {\n onMount?.({...state, ...form.values});\n }, []);\n\n const outsideClickRef = useClickOutside(() => {\n table.resetRowSelection(true);\n });\n\n useDidUpdate(() => {\n triggerChange();\n clearSelection();\n }, [state.globalFilter, state.sorting, state.pagination, form.values]);\n\n const clearFilters = useCallback(() => {\n form.setFieldValue('predicates', {});\n setState((prevState) => ({...prevState, globalFilter: ''}));\n }, []);\n\n const clearSelection = () => {\n setState((prevState) => ({...prevState, rowSelection: {}}));\n };\n\n const getSelectedRow = useCallback(\n () => table.getSelectedRowModel().flatRows?.[0]?.original ?? null,\n [state.rowSelection]\n );\n\n if (!data) {\n return (\n <Center sx={{flexGrow: 1}}>\n <Loader />\n </Center>\n );\n }\n\n const toggleRowSelection = (row: Row<T>) => {\n table.setRowSelection(() => ({[row.id]: !row.getIsSelected()}));\n };\n\n const rows = table.getRowModel().rows.map((row) => {\n const rowChildren = getExpandChildren?.(row.original) ?? null;\n\n return (\n <Fragment key={row.id}>\n <tr\n onClick={() => toggleRowSelection(row)}\n className={cx(classes.row, {[classes.rowSelected]: row.getIsSelected()})}\n >\n {row.getVisibleCells().map((cell) => {\n const size = cell.column.getSize();\n const width = size !== defaultColumnSizing.size ? size : undefined;\n return (\n <td key={cell.id} style={{width}}>\n <Skeleton visible={loading} sx={!loading ? {borderRadius: 0} : undefined}>\n {flexRender(cell.column.columnDef.cell, cell.getContext())}\n </Skeleton>\n </td>\n );\n })}\n </tr>\n {rowChildren ? (\n <tr>\n <td\n colSpan={columns.length + 1}\n style={{padding: 0, borderBottomColor: row.getIsExpanded() ? undefined : 'transparent'}}\n >\n <Collapse in={row.getIsExpanded()} px=\"sm\" py=\"xs\">\n {rowChildren}\n </Collapse>\n </td>\n </tr>\n ) : null}\n </Fragment>\n );\n });\n\n return (\n <Box ref={outsideClickRef}>\n <TableContext.Provider\n value={{\n onChange: triggerChange,\n state,\n setState,\n clearFilters,\n getSelectedRow,\n clearSelection,\n form,\n containerRef: outsideClickRef,\n }}\n >\n {header}\n <MantineTable className={classes.table} horizontalSpacing=\"sm\" verticalSpacing=\"xs\" pb=\"sm\">\n <thead className={classes.header}>\n {table.getHeaderGroups().map((headerGroup) => (\n <tr key={headerGroup.id}>\n {headerGroup.headers.map((columnHeader) => (\n <Th key={columnHeader.id} header={columnHeader} />\n ))}\n </tr>\n ))}\n </thead>\n <tbody>\n {rows.length ? (\n rows\n ) : (\n <tr>\n <td colSpan={columns.length}>{noDataChildren}</td>\n </tr>\n )}\n </tbody>\n </MantineTable>\n {footer}\n </TableContext.Provider>\n </Box>\n );\n};\n\nTable.Actions = TableActions;\nTable.Filter = TableFilter;\nTable.Footer = TableFooter;\nTable.Header = TableHeader;\nTable.Pagination = TablePagination;\nTable.Predicate = TablePredicate;\nTable.PerPage = TablePerPage;\nTable.Predicate = TablePredicate;\nTable.CollapsibleColumn = TableCollapsibleColumn;\nTable.DateRangePicker = TableDateRangePicker;\n"],"names":["Box","Center","Collapse","createStyles","Loader","Skeleton","Table","MantineTable","useForm","useClickOutside","useDidUpdate","defaultColumnSizing","flexRender","getCoreRowModel","useReactTable","defaultsDeep","Children","Fragment","useCallback","useEffect","useState","TableActions","TableCollapsibleColumn","TableContext","TableDateRangePicker","TableFilter","TableFooter","TableHeader","TablePagination","TablePerPage","TablePredicate","Th","useStyles","theme","getRef","hasHeader","table","width","paddingLeft","spacing","md","header","position","top","backgroundColor","colorScheme","black","white","transition","zIndex","content","left","right","bottom","borderBottom","colors","gray","rowSelected","ref","row","fn","rgba","primaryColor","data","noDataChildren","getExpandChildren","initialState","columns","onMount","onChange","children","loading","convertedChildren","toArray","find","child","type","footer","predicates","dateRange","initialStateWithoutForm","form","initialValues","cx","classes","pagination","pageSize","DEFAULT_SIZE","manualPagination","getRowCanExpand","original","state","setState","setOptions","prev","onStateChange","triggerChange","values","outsideClickRef","resetRowSelection","clearSelection","globalFilter","sorting","clearFilters","setFieldValue","prevState","rowSelection","getSelectedRow","getSelectedRowModel","flatRows","sx","flexGrow","toggleRowSelection","setRowSelection","id","getIsSelected","rows","getRowModel","map","rowChildren","tr","onClick","className","getVisibleCells","cell","size","column","getSize","undefined","td","style","visible","borderRadius","columnDef","getContext","colSpan","length","padding","borderBottomColor","getIsExpanded","in","px","py","Provider","value","containerRef","horizontalSpacing","verticalSpacing","pb","thead","getHeaderGroups","headerGroup","headers","columnHeader","tbody","Actions","Filter","Footer","Header","Pagination","Predicate","PerPage","CollapsibleColumn","DateRangePicker"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableActions.tsx"],"sourcesContent":["import {ReactElement, ReactNode} from 'react';\nimport {useTable} from './useTable';\n\ninterface TableActionsProps<T> {\n /**\n * Function that return components for the selected row\n *\n * @param datum the data of the selected row\n * @example\n * <Table.Actions<MyType>>\n * {(datum: MyType) => (\n * <Button\n * component={Link}\n * to={`edit/${datum.id}`}\n * leftIcon={<EditSize24Px />}\n * variant=\"subtle\"\n * color=\"navyBlue.8\"\n * >\n * Edit\n * </Button>\n * )}\n * </Table.Actions>\n */\n children: (datum: T) => ReactNode;\n}\n\nexport const TableActions = <T,>({children}: TableActionsProps<T>): ReactElement => {\n const {getSelectedRow} = useTable();\n const selectedRow = getSelectedRow();\n\n if (!selectedRow) {\n return null;\n }\n\n return <>{children(selectedRow)}</>;\n};\n"],"names":["useTable","TableActions","children","getSelectedRow","selectedRow"],"mappings":"AAAA;AACA,SAAQA,QAAQ,QAAO,YAAY,CAAC;AAyBpC,OAAO,IAAMC,YAAY,GAAG,gBAAwD;QAAlDC,QAAQ,SAARA,QAAQ;IACtC,IAAM,AAACC,cAAc,GAAIH,QAAQ,EAAE,CAA5BG,cAAc,AAAc,AAAC;IACpC,IAAMC,WAAW,GAAGD,cAAc,EAAE,AAAC;IAErC,IAAI,CAACC,WAAW,EAAE;QACd,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,qBAAO;kBAAGF,QAAQ,CAACE,WAAW,CAAC;MAAI,CAAC;AACxC,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableActions.tsx"],"sourcesContent":["import {ReactElement, ReactNode} from 'react';\nimport {useTable} from './useTable';\n\ninterface TableActionsProps<T> {\n /**\n * Function that return components for the selected row\n *\n * @param datum the data of the selected row\n * @example\n * <Table.Actions<MyType>>\n * {(datum: MyType) => (\n * <Button\n * component={Link}\n * to={`edit/${datum.id}`}\n * leftIcon={<EditSize24Px />}\n * variant=\"subtle\"\n * color=\"navyBlue.8\"\n * >\n * Edit\n * </Button>\n * )}\n * </Table.Actions>\n */\n children: (datum: T) => ReactNode;\n}\n\nexport const TableActions = <T,>({children}: TableActionsProps<T>): ReactElement => {\n const {getSelectedRow} = useTable();\n const selectedRow = getSelectedRow();\n\n if (!selectedRow) {\n return null;\n }\n\n return <>{children(selectedRow)}</>;\n};\n"],"names":["useTable","TableActions","children","getSelectedRow","selectedRow"],"mappings":"AAAA;AACA,SAAQA,QAAQ,QAAO,aAAa;AAyBpC,OAAO,IAAMC,eAAe,gBAAwD;QAAlDC,iBAAAA;IAC9B,IAAM,AAACC,iBAAkBH,WAAlBG;IACP,IAAMC,cAAcD;IAEpB,IAAI,CAACC,aAAa;QACd,OAAO,IAAI;IACf,CAAC;IAED,qBAAO;kBAAGF,SAASE;;AACvB,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableCollapsibleColumn.tsx"],"sourcesContent":["import {ArrowHeadDownSize24Px, ArrowHeadUpSize24Px} from '@coveord/plasma-react-icons';\nimport {Button} from '@mantine/core';\nimport {ColumnDef} from '@tanstack/table-core';\nimport {MouseEvent as ReactMouseEvent} from 'react';\n\n/**\n * Generic column to use when your table need collapsible rows\n */\nexport const TableCollapsibleColumn: ColumnDef<unknown> = {\n id: 'collapsible',\n header: '',\n enableSorting: false,\n cell: (info) => {\n const handler = info.row.getToggleExpandedHandler();\n const onClick = (e: ReactMouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n handler();\n };\n\n return info.row.getCanExpand() ? (\n <Button onClick={onClick} variant=\"subtle\" size=\"xs\">\n {info.row.getIsExpanded() ? <ArrowHeadUpSize24Px /> : <ArrowHeadDownSize24Px />}\n </Button>\n ) : null;\n },\n};\n"],"names":["ArrowHeadDownSize24Px","ArrowHeadUpSize24Px","Button","TableCollapsibleColumn","id","header","enableSorting","cell","info","handler","row","getToggleExpandedHandler","onClick","e","stopPropagation","getCanExpand","variant","size","getIsExpanded"],"mappings":"AAAA;AAAA,SAAQA,qBAAqB,EAAEC,mBAAmB,QAAO,6BAA6B,CAAC;AACvF,SAAQC,MAAM,QAAO,eAAe,CAAC;AAIrC;;CAEC,GACD,OAAO,IAAMC,sBAAsB,GAAuB;IACtDC,EAAE,EAAE,aAAa;IACjBC,MAAM,EAAE,EAAE;IACVC,aAAa,EAAE,KAAK;IACpBC,IAAI,EAAE,SAACC,IAAI,EAAK;QACZ,IAAMC,OAAO,GAAGD,IAAI,CAACE,GAAG,CAACC,wBAAwB,EAAE,AAAC;QACpD,IAAMC,OAAO,GAAG,SAACC,CAAqC,EAAK;YACvDA,CAAC,CAACC,eAAe,EAAE,CAAC;YACpBL,OAAO,EAAE,CAAC;QACd,CAAC,AAAC;QAEF,OAAOD,IAAI,CAACE,GAAG,CAACK,YAAY,EAAE,iBAC1B,KAACb,MAAM;YAACU,OAAO,EAAEA,OAAO;YAAEI,OAAO,EAAC,QAAQ;YAACC,IAAI,EAAC,IAAI;sBAC/CT,IAAI,CAACE,GAAG,CAACQ,aAAa,EAAE,iBAAG,KAACjB,mBAAmB,KAAG,iBAAG,KAACD,qBAAqB,KAAG;UAC1E,GACT,IAAI,CAAC;IACb,CAAC;CACJ,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableCollapsibleColumn.tsx"],"sourcesContent":["import {ArrowHeadDownSize24Px, ArrowHeadUpSize24Px} from '@coveord/plasma-react-icons';\nimport {Button} from '@mantine/core';\nimport {ColumnDef} from '@tanstack/table-core';\nimport {MouseEvent as ReactMouseEvent} from 'react';\n\n/**\n * Generic column to use when your table need collapsible rows\n */\nexport const TableCollapsibleColumn: ColumnDef<unknown> = {\n id: 'collapsible',\n header: '',\n enableSorting: false,\n cell: (info) => {\n const handler = info.row.getToggleExpandedHandler();\n const onClick = (e: ReactMouseEvent<HTMLButtonElement>) => {\n e.stopPropagation();\n handler();\n };\n\n return info.row.getCanExpand() ? (\n <Button onClick={onClick} variant=\"subtle\" size=\"xs\">\n {info.row.getIsExpanded() ? <ArrowHeadUpSize24Px /> : <ArrowHeadDownSize24Px />}\n </Button>\n ) : null;\n },\n};\n"],"names":["ArrowHeadDownSize24Px","ArrowHeadUpSize24Px","Button","TableCollapsibleColumn","id","header","enableSorting","cell","info","handler","row","getToggleExpandedHandler","onClick","e","stopPropagation","getCanExpand","variant","size","getIsExpanded"],"mappings":"AAAA;AAAA,SAAQA,qBAAqB,EAAEC,mBAAmB,QAAO,8BAA8B;AACvF,SAAQC,MAAM,QAAO,gBAAgB;AAIrC;;CAEC,GACD,OAAO,IAAMC,yBAA6C;IACtDC,IAAI;IACJC,QAAQ;IACRC,eAAe,KAAK;IACpBC,MAAM,SAACC,MAAS;QACZ,IAAMC,UAAUD,KAAKE,GAAG,CAACC,wBAAwB;QACjD,IAAMC,UAAU,SAACC,GAA0C;YACvDA,EAAEC,eAAe;YACjBL;QACJ;QAEA,OAAOD,KAAKE,GAAG,CAACK,YAAY,mBACxB,KAACb;YAAOU,SAASA;YAASI,SAAQ;YAASC,MAAK;sBAC3CT,KAAKE,GAAG,CAACQ,aAAa,mBAAK,KAACjB,yCAAyB,KAACD,0BAAwB;aAEnF,IAAI;IACZ;AACJ,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/table/TableContext.tsx"],"sourcesContent":["import {DateRangePickerValue} from '@mantine/dates';\nimport {UseFormReturnType} from '@mantine/form';\nimport {TableState} from '@tanstack/react-table';\nimport {createContext, Dispatch, RefObject} from 'react';\n\nexport type onTableChangeEvent = (params: TableState & TableFormType) => void;\n\nexport type TableFormType = {\n /**\n * Object containing the table predicates and their selected values\n *\n * @example {type: \"LONG\", origin: \"system\"}\n */\n predicates: Record<string, string>;\n /**\n * Selected date range in the table\n *\n * @example [new Date(2022, 0, 1), new Date(2022, 0, 31)]\n */\n dateRange: DateRangePickerValue;\n};\n\ntype TableContextType = {\n /**\n * Function to call when the table needs an update\n */\n onChange: () => void;\n /**\n * Internal state of the table\n *\n * @see https://tanstack.com/table/v8/docs/api/core/table#state\n */\n state: TableState;\n /**\n * Function to update the table state\n */\n setState: Dispatch<(prevState: TableState) => TableState>;\n /**\n * Function that clears the filter and predicates\n */\n clearFilters: () => void;\n /**\n * Function that returns the selected row if any\n */\n getSelectedRow: () => any | null;\n /**\n * Function that clear the selected row\n */\n clearSelection: () => void;\n /**\n * Form used to handle predicates and dateRange\n */\n form: UseFormReturnType<TableFormType>;\n /**\n * Table container ref\n */\n containerRef: RefObject<HTMLDivElement>;\n};\n\nexport const TableContext = createContext<TableContextType | null>(null);\n"],"names":["createContext","TableContext"],"mappings":"AAGA,SAAQA,aAAa,QAA4B,OAAO,CAAC;AAwDzD,OAAO,IAAMC,YAAY,iBAAGD,aAAa,CAA0B,IAAI,CAAC,CAAC"}
1
+ {"version":3,"sources":["../../../../src/components/table/TableContext.tsx"],"sourcesContent":["import {DateRangePickerValue} from '@mantine/dates';\nimport {UseFormReturnType} from '@mantine/form';\nimport {TableState} from '@tanstack/react-table';\nimport {createContext, Dispatch, RefObject} from 'react';\n\nexport type onTableChangeEvent = (params: TableState & TableFormType) => void;\n\nexport type TableFormType = {\n /**\n * Object containing the table predicates and their selected values\n *\n * @example {type: \"LONG\", origin: \"system\"}\n */\n predicates: Record<string, string>;\n /**\n * Selected date range in the table\n *\n * @example [new Date(2022, 0, 1), new Date(2022, 0, 31)]\n */\n dateRange: DateRangePickerValue;\n};\n\ntype TableContextType = {\n /**\n * Function to call when the table needs an update\n */\n onChange: () => void;\n /**\n * Internal state of the table\n *\n * @see https://tanstack.com/table/v8/docs/api/core/table#state\n */\n state: TableState;\n /**\n * Function to update the table state\n */\n setState: Dispatch<(prevState: TableState) => TableState>;\n /**\n * Function that clears the filter and predicates\n */\n clearFilters: () => void;\n /**\n * Function that returns the selected row if any\n */\n getSelectedRow: () => any | null;\n /**\n * Function that clear the selected row\n */\n clearSelection: () => void;\n /**\n * Form used to handle predicates and dateRange\n */\n form: UseFormReturnType<TableFormType>;\n /**\n * Table container ref\n */\n containerRef: RefObject<HTMLDivElement>;\n};\n\nexport const TableContext = createContext<TableContextType | null>(null);\n"],"names":["createContext","TableContext"],"mappings":"AAGA,SAAQA,aAAa,QAA4B,QAAQ;AAwDzD,OAAO,IAAMC,6BAAeD,cAAuC,IAAI,EAAE"}
@@ -7,8 +7,8 @@ import { useState } from "react";
7
7
  import { DateRangePickerInlineCalendar } from "../date-range-picker";
8
8
  import { useTable } from "./useTable";
9
9
  export var TableDateRangePicker = function(param) {
10
- var _presets = param.presets, presets = _presets === void 0 ? {} : _presets, rangeCalendarProps = param.rangeCalendarProps;
11
- var ref = _sliced_to_array(useState(false), 2), opened = ref[0], setOpened = ref[1];
10
+ var _param_presets = param.presets, presets = _param_presets === void 0 ? {} : _param_presets, rangeCalendarProps = param.rangeCalendarProps;
11
+ var _useState = _sliced_to_array(useState(false), 2), opened = _useState[0], setOpened = _useState[1];
12
12
  var form = useTable().form;
13
13
  var onApply = function(dates) {
14
14
  form.setFieldValue("dateRange", dates);