@draftbit/core 43.4.11-ba6514.0 → 43.4.12-58730b.0

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 (107) hide show
  1. package/lib/commonjs/components/Accordion/AccordionGroup.js +2 -2
  2. package/lib/commonjs/components/Accordion/AccordionGroup.js.map +1 -1
  3. package/lib/commonjs/components/Accordion/AccordionItem.js +5 -21
  4. package/lib/commonjs/components/Accordion/AccordionItem.js.map +1 -1
  5. package/lib/commonjs/components/ActionSheet/ActionSheetCancel.js.map +1 -1
  6. package/lib/commonjs/components/Card.js.map +1 -1
  7. package/lib/commonjs/components/Checkbox/Checkbox.js +6 -6
  8. package/lib/commonjs/components/Checkbox/Checkbox.js.map +1 -1
  9. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js +142 -0
  10. package/lib/commonjs/components/Checkbox/CheckboxGroupRow.js.map +1 -0
  11. package/lib/commonjs/components/Checkbox/CheckboxRow.js +55 -46
  12. package/lib/commonjs/components/Checkbox/CheckboxRow.js.map +1 -1
  13. package/lib/commonjs/components/CircleImage.js +3 -17
  14. package/lib/commonjs/components/CircleImage.js.map +1 -1
  15. package/lib/commonjs/components/DatePicker/DatePicker.js +2 -9
  16. package/lib/commonjs/components/DatePicker/DatePicker.js.map +1 -1
  17. package/lib/commonjs/components/DeprecatedButton.js +4 -19
  18. package/lib/commonjs/components/DeprecatedButton.js.map +1 -1
  19. package/lib/commonjs/components/DeprecatedCardWrapper.js +2 -14
  20. package/lib/commonjs/components/DeprecatedCardWrapper.js.map +1 -1
  21. package/lib/commonjs/components/DeprecatedFAB.js +4 -20
  22. package/lib/commonjs/components/DeprecatedFAB.js.map +1 -1
  23. package/lib/commonjs/components/Divider.js +13 -3
  24. package/lib/commonjs/components/Divider.js.map +1 -1
  25. package/lib/commonjs/components/Elevation.js +14 -3
  26. package/lib/commonjs/components/Elevation.js.map +1 -1
  27. package/lib/commonjs/components/FAB.js +5 -19
  28. package/lib/commonjs/components/FAB.js.map +1 -1
  29. package/lib/commonjs/components/Picker/PickerComponent.ios.js +10 -30
  30. package/lib/commonjs/components/Picker/PickerComponent.ios.js.map +1 -1
  31. package/lib/commonjs/components/Portal/Portal.js.map +1 -1
  32. package/lib/commonjs/components/Portal/PortalHost.js.map +1 -1
  33. package/lib/commonjs/components/RadioButton/RadioButtonRow.js +1 -1
  34. package/lib/commonjs/components/RadioButton/RadioButtonRow.js.map +1 -1
  35. package/lib/commonjs/components/RadioButton/context.js +1 -1
  36. package/lib/commonjs/components/RadioButton/context.js.map +1 -1
  37. package/lib/commonjs/components/RadioButton/index.js.map +1 -1
  38. package/lib/commonjs/components/Slider.js +5 -22
  39. package/lib/commonjs/components/Slider.js.map +1 -1
  40. package/lib/commonjs/components/StarRating.js +5 -23
  41. package/lib/commonjs/components/StarRating.js.map +1 -1
  42. package/lib/commonjs/components/TextField.js +13 -26
  43. package/lib/commonjs/components/TextField.js.map +1 -1
  44. package/lib/commonjs/hooks.js.map +1 -1
  45. package/lib/commonjs/index.js.map +1 -1
  46. package/lib/commonjs/mappings/AvatarEdit.js.map +1 -1
  47. package/lib/commonjs/mappings/CheckboxRow.js +25 -6
  48. package/lib/commonjs/mappings/CheckboxRow.js.map +1 -1
  49. package/lib/commonjs/mappings/FlatList.js.map +1 -1
  50. package/lib/commonjs/mappings/Icon.js +3 -1
  51. package/lib/commonjs/mappings/Icon.js.map +1 -1
  52. package/lib/commonjs/mappings/KeyboardAwareScrollView.js +48 -0
  53. package/lib/commonjs/mappings/KeyboardAwareScrollView.js.map +1 -0
  54. package/lib/commonjs/mappings/Modal.js.map +1 -1
  55. package/lib/commonjs/mappings/RowBodyIcon.js.map +1 -1
  56. package/lib/commonjs/mappings/Surface.js.map +1 -1
  57. package/lib/commonjs/mappings/Switch.js.map +1 -1
  58. package/lib/commonjs/styles/fonts.js.map +1 -1
  59. package/lib/commonjs/styles/overlay.js.map +1 -1
  60. package/lib/commonjs/theming.js.map +1 -1
  61. package/lib/module/components/Accordion/AccordionGroup.js +2 -2
  62. package/lib/module/components/Accordion/AccordionGroup.js.map +1 -1
  63. package/lib/module/components/Checkbox/Checkbox.js +6 -6
  64. package/lib/module/components/Checkbox/Checkbox.js.map +1 -1
  65. package/lib/module/components/Checkbox/CheckboxGroupRow.js +120 -0
  66. package/lib/module/components/Checkbox/CheckboxGroupRow.js.map +1 -0
  67. package/lib/module/components/Checkbox/CheckboxRow.js +53 -46
  68. package/lib/module/components/Checkbox/CheckboxRow.js.map +1 -1
  69. package/lib/module/components/DatePicker/DatePicker.js +3 -9
  70. package/lib/module/components/DatePicker/DatePicker.js.map +1 -1
  71. package/lib/module/components/RadioButton/RadioButtonRow.js +1 -1
  72. package/lib/module/components/RadioButton/RadioButtonRow.js.map +1 -1
  73. package/lib/module/components/RadioButton/index.js.map +1 -1
  74. package/lib/module/components/TextField.js +8 -5
  75. package/lib/module/components/TextField.js.map +1 -1
  76. package/lib/module/mappings/CheckboxRow.js +26 -7
  77. package/lib/module/mappings/CheckboxRow.js.map +1 -1
  78. package/lib/module/mappings/Icon.js +3 -1
  79. package/lib/module/mappings/Icon.js.map +1 -1
  80. package/lib/module/mappings/KeyboardAwareScrollView.js +39 -0
  81. package/lib/module/mappings/KeyboardAwareScrollView.js.map +1 -0
  82. package/lib/typescript/src/components/Checkbox/CheckboxGroupRow.d.ts +21 -0
  83. package/lib/typescript/src/components/Checkbox/CheckboxRow.d.ts +3 -7
  84. package/lib/typescript/src/mappings/CheckboxRow.d.ts +50 -9
  85. package/lib/typescript/src/mappings/Icon.d.ts +1 -1
  86. package/lib/typescript/src/mappings/KeyboardAwareScrollView.d.ts +82 -0
  87. package/package.json +2 -2
  88. package/src/components/Accordion/AccordionGroup.js +1 -1
  89. package/src/components/Accordion/AccordionGroup.tsx +1 -1
  90. package/src/components/Checkbox/Checkbox.js +6 -6
  91. package/src/components/Checkbox/Checkbox.tsx +8 -6
  92. package/src/components/Checkbox/CheckboxGroupRow.js +77 -0
  93. package/src/components/Checkbox/CheckboxGroupRow.tsx +152 -0
  94. package/src/components/Checkbox/CheckboxRow.js +33 -32
  95. package/src/components/Checkbox/CheckboxRow.tsx +67 -62
  96. package/src/components/DatePicker/DatePicker.js +2 -4
  97. package/src/components/DatePicker/DatePicker.tsx +1 -14
  98. package/src/components/RadioButton/RadioButtonRow.js +1 -1
  99. package/src/components/RadioButton/RadioButtonRow.tsx +1 -1
  100. package/src/components/TextField.js +5 -4
  101. package/src/components/TextField.tsx +6 -5
  102. package/src/mappings/CheckboxRow.js +26 -7
  103. package/src/mappings/CheckboxRow.ts +28 -6
  104. package/src/mappings/Icon.js +4 -1
  105. package/src/mappings/Icon.ts +4 -1
  106. package/src/mappings/KeyboardAwareScrollView.js +38 -0
  107. package/src/mappings/KeyboardAwareScrollView.ts +48 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["Switch.js"],"names":["SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","props","disabled","label","description","fieldName","handlerPropName","valuePropName","defaultValue","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","marginLeft","marginRight","required","direction","group","GROUPS","data"],"mappings":";;;;;;;AAAA;;AACA,MAAMA,kBAAkB,GAAG,CAACC,gBAASC,aAAV,CAA3B;AACO,MAAMC,SAAS,GAAG,CACrB;AACIC,EAAAA,IAAI,EAAE,QADV;AAEIC,EAAAA,GAAG,EAAE,QAFT;AAGIC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAH9B;AAIIC,EAAAA,MAAM,EAAE,EAJZ;AAKIC,EAAAA,QAAQ,EAAEV,kBALd;AAMIW,EAAAA,KAAK,EAAE;AACHC,IAAAA,QAAQ,EAAE,2BAAe;AACrBC,MAAAA,KAAK,EAAE,UADc;AAErBC,MAAAA,WAAW,EAAE;AAFQ,KAAf,CADP;AAKHC,IAAAA,SAAS,EAAE,gCAAoB;AAC3BC,MAAAA,eAAe,EAAE,eADU;AAE3BC,MAAAA,aAAa,EAAE,OAFY;AAG3BC,MAAAA,YAAY,EAAE;AAHa,KAApB,CALR;AAUHC,IAAAA,gBAAgB,EAAE,4BAAgB;AAC9BN,MAAAA,KAAK,EAAE;AADuB,KAAhB,CAVf;AAaHO,IAAAA,kBAAkB,EAAE,4BAAgB;AAChCP,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAbjB;AAgBHQ,IAAAA,gBAAgB,EAAE,4BAAgB;AAC9BR,MAAAA,KAAK,EAAE;AADuB,KAAhB,CAhBf;AAmBHS,IAAAA,kBAAkB,EAAE,4BAAgB;AAChCT,MAAAA,KAAK,EAAE;AADyB,KAAhB;AAnBjB;AANX,CADqB,EA+BrB;AACIT,EAAAA,IAAI,EAAE,YADV;AAEIC,EAAAA,GAAG,EAAE,WAFT;AAGIC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAH9B;AAIIC,EAAAA,MAAM,EAAE;AACJc,IAAAA,UAAU,EAAE,CADR;AAEJC,IAAAA,WAAW,EAAE;AAFT,GAJZ;AAQId,EAAAA,QAAQ,EAAEV,kBARd;AASIW,EAAAA,KAAK,EAAE;AACHE,IAAAA,KAAK,EAAE,2BAAe;AAClBA,MAAAA,KAAK,EAAE,OADW;AAElBC,MAAAA,WAAW,EAAE,iCAFK;AAGlBW,MAAAA,QAAQ,EAAE,IAHQ;AAIlBP,MAAAA,YAAY,EAAE;AAJI,KAAf,CADJ;AAOHQ,IAAAA,SAAS,EAAE,oCAPR;AAQHd,IAAAA,QAAQ,EAAE,2BAAe;AACrBC,MAAAA,KAAK,EAAE,UADc;AAErBC,MAAAA,WAAW,EAAE,wCAFQ;AAGrBa,MAAAA,KAAK,EAAEC,cAAOC;AAHO,KAAf,CARP;AAaHd,IAAAA,SAAS,EAAE,gCAAoB;AAC3BC,MAAAA,eAAe,EAAE,eADU;AAE3BC,MAAAA,aAAa,EAAE,OAFY;AAG3BC,MAAAA,YAAY,EAAE;AAHa,KAApB,CAbR;AAkBHC,IAAAA,gBAAgB,EAAE,4BAAgB;AAC9BN,MAAAA,KAAK,EAAE;AADuB,KAAhB,CAlBf;AAqBHO,IAAAA,kBAAkB,EAAE,4BAAgB;AAChCP,MAAAA,KAAK,EAAE;AADyB,KAAhB,CArBjB;AAwBHQ,IAAAA,gBAAgB,EAAE,4BAAgB;AAC9BR,MAAAA,KAAK,EAAE;AADuB,KAAhB,CAxBf;AA2BHS,IAAAA,kBAAkB,EAAE,4BAAgB;AAChCT,MAAAA,KAAK,EAAE;AADyB,KAAhB;AA3BjB;AATX,CA/BqB,CAAlB","sourcesContent":["import { COMPONENT_TYPES, GROUPS, createBoolProp, createColorProp, createFieldNameProp, createTextProp, createRowDirectionProp, Triggers, } from \"@draftbit/types\";\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Switch\",\n tag: \"Switch\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: SEED_DATA_TRIGGERS,\n props: {\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Boolean to handle disabling the switch\",\n }),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"switchValue\",\n }),\n activeTrackColor: createColorProp({\n label: \"Active Track Color\",\n }),\n inactiveTrackColor: createColorProp({\n label: \"Inactive Track Color\",\n }),\n activeThumbColor: createColorProp({\n label: \"Active Thumb Color\",\n }),\n inactiveThumbColor: createColorProp({\n label: \"Inactive Thumb Color\",\n }),\n },\n },\n {\n name: \"Switch Row\",\n tag: \"SwitchRow\",\n category: COMPONENT_TYPES.input,\n layout: {\n marginLeft: 0,\n marginRight: 0,\n },\n triggers: SEED_DATA_TRIGGERS,\n props: {\n label: createTextProp({\n label: \"Label\",\n description: \"Label to show with the checkbox\",\n required: true,\n defaultValue: \"First Option\",\n }),\n direction: createRowDirectionProp(),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Boolean to handle disabling the switch\",\n group: GROUPS.data,\n }),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"switchValue\",\n }),\n activeTrackColor: createColorProp({\n label: \"Active Track Color\",\n }),\n inactiveTrackColor: createColorProp({\n label: \"Inactive Track Color\",\n }),\n activeThumbColor: createColorProp({\n label: \"Active Thumb Color\",\n }),\n inactiveThumbColor: createColorProp({\n label: \"Inactive Thumb Color\",\n }),\n },\n },\n];\n"]}
1
+ {"version":3,"sources":["Switch.ts"],"names":["SEED_DATA_TRIGGERS","Triggers","OnValueChange","SEED_DATA","name","tag","category","COMPONENT_TYPES","input","layout","triggers","props","disabled","label","description","fieldName","handlerPropName","valuePropName","defaultValue","activeTrackColor","inactiveTrackColor","activeThumbColor","inactiveThumbColor","marginLeft","marginRight","required","direction","group","GROUPS","data"],"mappings":";;;;;;;AAAA;;AAUA,MAAMA,kBAAkB,GAAG,CAACC,gBAASC,aAAV,CAA3B;AACO,MAAMC,SAAS,GAAG,CACvB;AACEC,EAAAA,IAAI,EAAE,QADR;AAEEC,EAAAA,GAAG,EAAE,QAFP;AAGEC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAH5B;AAIEC,EAAAA,MAAM,EAAE,EAJV;AAKEC,EAAAA,QAAQ,EAAEV,kBALZ;AAMEW,EAAAA,KAAK,EAAE;AACLC,IAAAA,QAAQ,EAAE,2BAAe;AACvBC,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE;AAFU,KAAf,CADL;AAKLC,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,eAAe,EAAE,eADY;AAE7BC,MAAAA,aAAa,EAAE,OAFc;AAG7BC,MAAAA,YAAY,EAAE;AAHe,KAApB,CALN;AAULC,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCN,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAVb;AAaLO,IAAAA,kBAAkB,EAAE,4BAAgB;AAClCP,MAAAA,KAAK,EAAE;AAD2B,KAAhB,CAbf;AAgBLQ,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCR,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAhBb;AAmBLS,IAAAA,kBAAkB,EAAE,4BAAgB;AAClCT,MAAAA,KAAK,EAAE;AAD2B,KAAhB;AAnBf;AANT,CADuB,EA+BvB;AACET,EAAAA,IAAI,EAAE,YADR;AAEEC,EAAAA,GAAG,EAAE,WAFP;AAGEC,EAAAA,QAAQ,EAAEC,uBAAgBC,KAH5B;AAIEC,EAAAA,MAAM,EAAE;AACNc,IAAAA,UAAU,EAAE,CADN;AAENC,IAAAA,WAAW,EAAE;AAFP,GAJV;AAQEd,EAAAA,QAAQ,EAAEV,kBARZ;AASEW,EAAAA,KAAK,EAAE;AACLE,IAAAA,KAAK,EAAE,2BAAe;AACpBA,MAAAA,KAAK,EAAE,OADa;AAEpBC,MAAAA,WAAW,EAAE,iCAFO;AAGpBW,MAAAA,QAAQ,EAAE,IAHU;AAIpBP,MAAAA,YAAY,EAAE;AAJM,KAAf,CADF;AAOLQ,IAAAA,SAAS,EAAE,oCAPN;AAQLd,IAAAA,QAAQ,EAAE,2BAAe;AACvBC,MAAAA,KAAK,EAAE,UADgB;AAEvBC,MAAAA,WAAW,EAAE,wCAFU;AAGvBa,MAAAA,KAAK,EAAEC,cAAOC;AAHS,KAAf,CARL;AAaLd,IAAAA,SAAS,EAAE,gCAAoB;AAC7BC,MAAAA,eAAe,EAAE,eADY;AAE7BC,MAAAA,aAAa,EAAE,OAFc;AAG7BC,MAAAA,YAAY,EAAE;AAHe,KAApB,CAbN;AAkBLC,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCN,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAlBb;AAqBLO,IAAAA,kBAAkB,EAAE,4BAAgB;AAClCP,MAAAA,KAAK,EAAE;AAD2B,KAAhB,CArBf;AAwBLQ,IAAAA,gBAAgB,EAAE,4BAAgB;AAChCR,MAAAA,KAAK,EAAE;AADyB,KAAhB,CAxBb;AA2BLS,IAAAA,kBAAkB,EAAE,4BAAgB;AAClCT,MAAAA,KAAK,EAAE;AAD2B,KAAhB;AA3Bf;AATT,CA/BuB,CAAlB","sourcesContent":["import {\n COMPONENT_TYPES,\n GROUPS,\n createBoolProp,\n createColorProp,\n createFieldNameProp,\n createTextProp,\n createRowDirectionProp,\n Triggers,\n} from \"@draftbit/types\";\nconst SEED_DATA_TRIGGERS = [Triggers.OnValueChange];\nexport const SEED_DATA = [\n {\n name: \"Switch\",\n tag: \"Switch\",\n category: COMPONENT_TYPES.input,\n layout: {},\n triggers: SEED_DATA_TRIGGERS,\n props: {\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Boolean to handle disabling the switch\",\n }),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"switchValue\",\n }),\n activeTrackColor: createColorProp({\n label: \"Active Track Color\",\n }),\n inactiveTrackColor: createColorProp({\n label: \"Inactive Track Color\",\n }),\n activeThumbColor: createColorProp({\n label: \"Active Thumb Color\",\n }),\n inactiveThumbColor: createColorProp({\n label: \"Inactive Thumb Color\",\n }),\n },\n },\n {\n name: \"Switch Row\",\n tag: \"SwitchRow\",\n category: COMPONENT_TYPES.input,\n layout: {\n marginLeft: 0,\n marginRight: 0,\n },\n triggers: SEED_DATA_TRIGGERS,\n props: {\n label: createTextProp({\n label: \"Label\",\n description: \"Label to show with the checkbox\",\n required: true,\n defaultValue: \"First Option\",\n }),\n direction: createRowDirectionProp(),\n disabled: createBoolProp({\n label: \"Disabled\",\n description: \"Boolean to handle disabling the switch\",\n group: GROUPS.data,\n }),\n fieldName: createFieldNameProp({\n handlerPropName: \"onValueChange\",\n valuePropName: \"value\",\n defaultValue: \"switchValue\",\n }),\n activeTrackColor: createColorProp({\n label: \"Active Track Color\",\n }),\n inactiveTrackColor: createColorProp({\n label: \"Inactive Track Color\",\n }),\n activeThumbColor: createColorProp({\n label: \"Active Thumb Color\",\n }),\n inactiveThumbColor: createColorProp({\n label: \"Inactive Thumb Color\",\n }),\n },\n },\n];\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["fonts.js"],"names":["fontConfig","web","regular","fontFamily","fontWeight","medium","light","thin","ios","default","configureFonts","config","fonts","Platform","select"],"mappings":";;;;;;;AACA;;AADA;AAEA,MAAMA,UAAU,GAAG;AACfC,EAAAA,GAAG,EAAE;AACDC,IAAAA,OAAO,EAAE;AACLC,MAAAA,UAAU,EAAE,wDADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KADR;AAKDC,IAAAA,MAAM,EAAE;AACJF,MAAAA,UAAU,EAAE,wDADR;AAEJC,MAAAA,UAAU,EAAE;AAFR,KALP;AASDE,IAAAA,KAAK,EAAE;AACHH,MAAAA,UAAU,EAAE,wDADT;AAEHC,MAAAA,UAAU,EAAE;AAFT,KATN;AAaDG,IAAAA,IAAI,EAAE;AACFJ,MAAAA,UAAU,EAAE,wDADV;AAEFC,MAAAA,UAAU,EAAE;AAFV;AAbL,GADU;AAmBfI,EAAAA,GAAG,EAAE;AACDN,IAAAA,OAAO,EAAE;AACLC,MAAAA,UAAU,EAAE,QADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KADR;AAKDC,IAAAA,MAAM,EAAE;AACJF,MAAAA,UAAU,EAAE,QADR;AAEJC,MAAAA,UAAU,EAAE;AAFR,KALP;AASDE,IAAAA,KAAK,EAAE;AACHH,MAAAA,UAAU,EAAE,QADT;AAEHC,MAAAA,UAAU,EAAE;AAFT,KATN;AAaDG,IAAAA,IAAI,EAAE;AACFJ,MAAAA,UAAU,EAAE,QADV;AAEFC,MAAAA,UAAU,EAAE;AAFV;AAbL,GAnBU;AAqCfK,EAAAA,OAAO,EAAE;AACLP,IAAAA,OAAO,EAAE;AACLC,MAAAA,UAAU,EAAE,YADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KADJ;AAKLC,IAAAA,MAAM,EAAE;AACJF,MAAAA,UAAU,EAAE,mBADR;AAEJC,MAAAA,UAAU,EAAE;AAFR,KALH;AASLE,IAAAA,KAAK,EAAE;AACHH,MAAAA,UAAU,EAAE,kBADT;AAEHC,MAAAA,UAAU,EAAE;AAFT,KATF;AAaLG,IAAAA,IAAI,EAAE;AACFJ,MAAAA,UAAU,EAAE,iBADV;AAEFC,MAAAA,UAAU,EAAE;AAFV;AAbD;AArCM,CAAnB;;AAwDe,SAASM,cAAT,CAAwBC,MAAxB,EAAgC;AAC3C,QAAMC,KAAK,GAAGC,sBAASC,MAAT,CAAgB,EAAE,GAAGd,UAAL;AAAiB,OAAGW;AAApB,GAAhB,CAAd;;AACA,SAAOC,KAAP;AACH","sourcesContent":["/* https://github.com/callstack/react-native-paper/blob/main/src/styles/fonts.tsx */\nimport { Platform } from \"react-native\";\nconst fontConfig = {\n web: {\n regular: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"400\",\n },\n medium: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"500\",\n },\n light: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"300\",\n },\n thin: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"100\",\n },\n },\n ios: {\n regular: {\n fontFamily: \"System\",\n fontWeight: \"400\",\n },\n medium: {\n fontFamily: \"System\",\n fontWeight: \"500\",\n },\n light: {\n fontFamily: \"System\",\n fontWeight: \"300\",\n },\n thin: {\n fontFamily: \"System\",\n fontWeight: \"100\",\n },\n },\n default: {\n regular: {\n fontFamily: \"sans-serif\",\n fontWeight: \"normal\",\n },\n medium: {\n fontFamily: \"sans-serif-medium\",\n fontWeight: \"normal\",\n },\n light: {\n fontFamily: \"sans-serif-light\",\n fontWeight: \"normal\",\n },\n thin: {\n fontFamily: \"sans-serif-thin\",\n fontWeight: \"normal\",\n },\n },\n};\nexport default function configureFonts(config) {\n const fonts = Platform.select({ ...fontConfig, ...config });\n return fonts;\n}\n"]}
1
+ {"version":3,"sources":["fonts.tsx"],"names":["fontConfig","web","regular","fontFamily","fontWeight","medium","light","thin","ios","default","configureFonts","config","fonts","Platform","select"],"mappings":";;;;;;;AACA;;AADA;AAIA,MAAMA,UAAU,GAAG;AACjBC,EAAAA,GAAG,EAAE;AACHC,IAAAA,OAAO,EAAE;AACPC,MAAAA,UAAU,EAAE,wDADL;AAEPC,MAAAA,UAAU,EAAE;AAFL,KADN;AAKHC,IAAAA,MAAM,EAAE;AACNF,MAAAA,UAAU,EAAE,wDADN;AAENC,MAAAA,UAAU,EAAE;AAFN,KALL;AASHE,IAAAA,KAAK,EAAE;AACLH,MAAAA,UAAU,EAAE,wDADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KATJ;AAaHG,IAAAA,IAAI,EAAE;AACJJ,MAAAA,UAAU,EAAE,wDADR;AAEJC,MAAAA,UAAU,EAAE;AAFR;AAbH,GADY;AAmBjBI,EAAAA,GAAG,EAAE;AACHN,IAAAA,OAAO,EAAE;AACPC,MAAAA,UAAU,EAAE,QADL;AAEPC,MAAAA,UAAU,EAAE;AAFL,KADN;AAKHC,IAAAA,MAAM,EAAE;AACNF,MAAAA,UAAU,EAAE,QADN;AAENC,MAAAA,UAAU,EAAE;AAFN,KALL;AASHE,IAAAA,KAAK,EAAE;AACLH,MAAAA,UAAU,EAAE,QADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KATJ;AAaHG,IAAAA,IAAI,EAAE;AACJJ,MAAAA,UAAU,EAAE,QADR;AAEJC,MAAAA,UAAU,EAAE;AAFR;AAbH,GAnBY;AAqCjBK,EAAAA,OAAO,EAAE;AACPP,IAAAA,OAAO,EAAE;AACPC,MAAAA,UAAU,EAAE,YADL;AAEPC,MAAAA,UAAU,EAAE;AAFL,KADF;AAKPC,IAAAA,MAAM,EAAE;AACNF,MAAAA,UAAU,EAAE,mBADN;AAENC,MAAAA,UAAU,EAAE;AAFN,KALD;AASPE,IAAAA,KAAK,EAAE;AACLH,MAAAA,UAAU,EAAE,kBADP;AAELC,MAAAA,UAAU,EAAE;AAFP,KATA;AAaPG,IAAAA,IAAI,EAAE;AACJJ,MAAAA,UAAU,EAAE,iBADR;AAEJC,MAAAA,UAAU,EAAE;AAFR;AAbC;AArCQ,CAAnB;;AAyDe,SAASM,cAAT,CAAwBC,MAAxB,EAEL;AACR,QAAMC,KAAK,GAAGC,sBAASC,MAAT,CAAgB,EAAE,GAAGd,UAAL;AAAiB,OAAGW;AAApB,GAAhB,CAAd;;AACA,SAAOC,KAAP;AACD","sourcesContent":["/* https://github.com/callstack/react-native-paper/blob/main/src/styles/fonts.tsx */\nimport { Platform, PlatformOSType } from \"react-native\";\nimport type { Fonts } from \"@draftbit/types\";\n\nconst fontConfig = {\n web: {\n regular: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"400\" as \"400\",\n },\n medium: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"500\" as \"500\",\n },\n light: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"300\" as \"300\",\n },\n thin: {\n fontFamily: 'Roboto, \"Helvetica Neue\", Helvetica, Arial, sans-serif',\n fontWeight: \"100\" as \"100\",\n },\n },\n ios: {\n regular: {\n fontFamily: \"System\",\n fontWeight: \"400\" as \"400\",\n },\n medium: {\n fontFamily: \"System\",\n fontWeight: \"500\" as \"500\",\n },\n light: {\n fontFamily: \"System\",\n fontWeight: \"300\" as \"300\",\n },\n thin: {\n fontFamily: \"System\",\n fontWeight: \"100\" as \"100\",\n },\n },\n default: {\n regular: {\n fontFamily: \"sans-serif\",\n fontWeight: \"normal\" as \"normal\",\n },\n medium: {\n fontFamily: \"sans-serif-medium\",\n fontWeight: \"normal\" as \"normal\",\n },\n light: {\n fontFamily: \"sans-serif-light\",\n fontWeight: \"normal\" as \"normal\",\n },\n thin: {\n fontFamily: \"sans-serif-thin\",\n fontWeight: \"normal\" as \"normal\",\n },\n },\n};\n\nexport default function configureFonts(config?: {\n [platform in PlatformOSType | \"default\"]?: Fonts;\n}): Fonts {\n const fonts = Platform.select({ ...fontConfig, ...config }) as Fonts;\n return fonts;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["overlay.js"],"names":["isAnimatedValue","it","Animated","Value","overlay","elevation","surfaceColor","DarkTheme","colors","surface","inputRange","interpolate","outputRange","map","e","calculateColor","overlayTransparency","elevationOverlayTransparency","mix","hex"],"mappings":";;;;;;;AACA;;AACA;;AACA;;;;AAHA;AAIA,MAAMA,eAAe,GAAIC,EAAD,IAAQA,EAAE,YAAYC,sBAASC,KAAvD;;AACe,SAASC,OAAT,CAAiBC,SAAjB,EAAqE;AAAA,MAAzCC,YAAyC,uEAA1BC,mBAAUC,MAAV,CAAiBC,OAAS;;AAChF,MAAIT,eAAe,CAACK,SAAD,CAAnB,EAAgC;AAC5B,UAAMK,UAAU,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAU,CAAV,EAAa,CAAb,EAAgB,EAAhB,CAAnB,CAD4B,CAE5B;;AACA,WAAOL,SAAS,CAACM,WAAV,CAAsB;AACzBD,MAAAA,UADyB;AAEzBE,MAAAA,WAAW,EAAEF,UAAU,CAACG,GAAX,CAAgBC,CAAD,IAAO;AAC/B,eAAOC,cAAc,CAACT,YAAD,EAAeQ,CAAf,CAArB;AACH,OAFY;AAFY,KAAtB,CAAP;AAMH,GAV+E,CAWhF;;;AACA,SAAOC,cAAc,CAACT,YAAD,EAAeD,SAAf,CAArB;AACH;;AACD,SAASU,cAAT,CAAwBT,YAAxB,EAAqD;AAAA,MAAfD,SAAe,uEAAH,CAAG;AACjD,MAAIW,mBAAJ;;AACA,MAAIX,SAAS,IAAI,CAAb,IAAkBA,SAAS,IAAI,EAAnC,EAAuC;AACnCW,IAAAA,mBAAmB,GAAGC,4BAA4B,CAACZ,SAAD,CAAlD;AACH,GAFD,MAGK,IAAIA,SAAS,GAAG,EAAhB,EAAoB;AACrBW,IAAAA,mBAAmB,GAAGC,4BAA4B,CAAC,EAAD,CAAlD;AACH,GAFI,MAGA;AACDD,IAAAA,mBAAmB,GAAGC,4BAA4B,CAAC,CAAD,CAAlD;AACH;;AACD,SAAO,oBAAMX,YAAN,EACFY,GADE,CACE,oBAAM,OAAN,CADF,EACkBF,mBAAmB,GAAG,IADxC,EAEFG,GAFE,EAAP;AAGH;;AACD,MAAMF,4BAA4B,GAAG;AACjC,KAAG,CAD8B;AAEjC,KAAG,CAF8B;AAGjC,KAAG,CAH8B;AAIjC,KAAG,CAJ8B;AAKjC,KAAG,EAL8B;AAMjC,KAAG,EAN8B;AAOjC,KAAG,IAP8B;AAQjC,KAAG,EAR8B;AASjC,KAAG,IAT8B;AAUjC,MAAI,EAV6B;AAWjC,MAAI,IAX6B;AAYjC,MAAI,EAZ6B;AAajC,MAAI,KAb6B;AAcjC,MAAI,IAd6B;AAejC,MAAI,KAf6B;AAgBjC,MAAI,EAhB6B;AAiBjC,MAAI,KAjB6B;AAkBjC,MAAI,KAlB6B;AAmBjC,MAAI,KAnB6B;AAoBjC,MAAI,KApB6B;AAqBjC,MAAI,IArB6B;AAsBjC,MAAI,KAtB6B;AAuBjC,MAAI,KAvB6B;AAwBjC,MAAI;AAxB6B,CAArC","sourcesContent":["/* Copied from https://github.com/callstack/react-native-paper/blob/main/src/styles/overlay.tsx */\nimport color from \"color\";\nimport { Animated } from \"react-native\";\nimport DarkTheme from \"./DarkTheme\";\nconst isAnimatedValue = (it) => it instanceof Animated.Value;\nexport default function overlay(elevation, surfaceColor = DarkTheme.colors.surface) {\n if (isAnimatedValue(elevation)) {\n const inputRange = [0, 1, 2, 3, 8, 24];\n // @ts-expect-error: TS doesn't seem to refine the type correctly\n return elevation.interpolate({\n inputRange,\n outputRange: inputRange.map((e) => {\n return calculateColor(surfaceColor, e);\n }),\n });\n }\n // @ts-expect-error: TS doesn't seem to refine the type correctly\n return calculateColor(surfaceColor, elevation);\n}\nfunction calculateColor(surfaceColor, elevation = 1) {\n let overlayTransparency;\n if (elevation >= 1 && elevation <= 24) {\n overlayTransparency = elevationOverlayTransparency[elevation];\n }\n else if (elevation > 24) {\n overlayTransparency = elevationOverlayTransparency[24];\n }\n else {\n overlayTransparency = elevationOverlayTransparency[1];\n }\n return color(surfaceColor)\n .mix(color(\"white\"), overlayTransparency * 0.01)\n .hex();\n}\nconst elevationOverlayTransparency = {\n 1: 5,\n 2: 7,\n 3: 8,\n 4: 9,\n 5: 10,\n 6: 11,\n 7: 11.5,\n 8: 12,\n 9: 12.5,\n 10: 13,\n 11: 13.5,\n 12: 14,\n 13: 14.25,\n 14: 14.5,\n 15: 14.75,\n 16: 15,\n 17: 15.12,\n 18: 15.24,\n 19: 15.36,\n 20: 15.48,\n 21: 15.6,\n 22: 15.72,\n 23: 15.84,\n 24: 16,\n};\n"]}
1
+ {"version":3,"sources":["overlay.tsx"],"names":["isAnimatedValue","it","Animated","Value","overlay","elevation","surfaceColor","DarkTheme","colors","surface","inputRange","interpolate","outputRange","map","e","calculateColor","overlayTransparency","elevationOverlayTransparency","mix","hex"],"mappings":";;;;;;;AACA;;AACA;;AACA;;;;AAHA;AAKA,MAAMA,eAAe,GACnBC,EADsB,IAEGA,EAAE,YAAYC,sBAASC,KAFlD;;AAIe,SAASC,OAAT,CACbC,SADa,EAG+C;AAAA,MAD5DC,YAC4D,uEADrCC,mBAAUC,MAAV,CAAiBC,OACoB;;AAC5D,MAAIT,eAAe,CAACK,SAAD,CAAnB,EAAgC;AAC9B,UAAMK,UAAU,GAAG,CAAC,CAAD,EAAI,CAAJ,EAAO,CAAP,EAAU,CAAV,EAAa,CAAb,EAAgB,EAAhB,CAAnB,CAD8B,CAG9B;;AACA,WAAOL,SAAS,CAACM,WAAV,CAAsB;AAC3BD,MAAAA,UAD2B;AAE3BE,MAAAA,WAAW,EAAEF,UAAU,CAACG,GAAX,CAAgBC,CAAD,IAAO;AACjC,eAAOC,cAAc,CAACT,YAAD,EAAeQ,CAAf,CAArB;AACD,OAFY;AAFc,KAAtB,CAAP;AAMD,GAX2D,CAa5D;;;AACA,SAAOC,cAAc,CAACT,YAAD,EAAeD,SAAf,CAArB;AACD;;AAED,SAASU,cAAT,CAAwBT,YAAxB,EAAqE;AAAA,MAAvBD,SAAuB,uEAAH,CAAG;AACnE,MAAIW,mBAAJ;;AACA,MAAIX,SAAS,IAAI,CAAb,IAAkBA,SAAS,IAAI,EAAnC,EAAuC;AACrCW,IAAAA,mBAAmB,GAAGC,4BAA4B,CAACZ,SAAD,CAAlD;AACD,GAFD,MAEO,IAAIA,SAAS,GAAG,EAAhB,EAAoB;AACzBW,IAAAA,mBAAmB,GAAGC,4BAA4B,CAAC,EAAD,CAAlD;AACD,GAFM,MAEA;AACLD,IAAAA,mBAAmB,GAAGC,4BAA4B,CAAC,CAAD,CAAlD;AACD;;AACD,SAAO,oBAAMX,YAAN,EACJY,GADI,CACA,oBAAM,OAAN,CADA,EACgBF,mBAAmB,GAAG,IADtC,EAEJG,GAFI,EAAP;AAGD;;AAED,MAAMF,4BAAoD,GAAG;AAC3D,KAAG,CADwD;AAE3D,KAAG,CAFwD;AAG3D,KAAG,CAHwD;AAI3D,KAAG,CAJwD;AAK3D,KAAG,EALwD;AAM3D,KAAG,EANwD;AAO3D,KAAG,IAPwD;AAQ3D,KAAG,EARwD;AAS3D,KAAG,IATwD;AAU3D,MAAI,EAVuD;AAW3D,MAAI,IAXuD;AAY3D,MAAI,EAZuD;AAa3D,MAAI,KAbuD;AAc3D,MAAI,IAduD;AAe3D,MAAI,KAfuD;AAgB3D,MAAI,EAhBuD;AAiB3D,MAAI,KAjBuD;AAkB3D,MAAI,KAlBuD;AAmB3D,MAAI,KAnBuD;AAoB3D,MAAI,KApBuD;AAqB3D,MAAI,IArBuD;AAsB3D,MAAI,KAtBuD;AAuB3D,MAAI,KAvBuD;AAwB3D,MAAI;AAxBuD,CAA7D","sourcesContent":["/* Copied from https://github.com/callstack/react-native-paper/blob/main/src/styles/overlay.tsx */\nimport color from \"color\";\nimport { Animated } from \"react-native\";\nimport DarkTheme from \"./DarkTheme\";\n\nconst isAnimatedValue = (\n it: number | Animated.AnimatedInterpolation\n): it is Animated.Value => it instanceof Animated.Value;\n\nexport default function overlay<T extends Animated.Value | number>(\n elevation: T,\n surfaceColor: string = DarkTheme.colors.surface\n): T extends number ? string : Animated.AnimatedInterpolation {\n if (isAnimatedValue(elevation)) {\n const inputRange = [0, 1, 2, 3, 8, 24];\n\n // @ts-expect-error: TS doesn't seem to refine the type correctly\n return elevation.interpolate({\n inputRange,\n outputRange: inputRange.map((e) => {\n return calculateColor(surfaceColor, e);\n }),\n });\n }\n\n // @ts-expect-error: TS doesn't seem to refine the type correctly\n return calculateColor(surfaceColor, elevation);\n}\n\nfunction calculateColor(surfaceColor: string, elevation: number = 1) {\n let overlayTransparency: number;\n if (elevation >= 1 && elevation <= 24) {\n overlayTransparency = elevationOverlayTransparency[elevation];\n } else if (elevation > 24) {\n overlayTransparency = elevationOverlayTransparency[24];\n } else {\n overlayTransparency = elevationOverlayTransparency[1];\n }\n return color(surfaceColor)\n .mix(color(\"white\"), overlayTransparency * 0.01)\n .hex();\n}\n\nconst elevationOverlayTransparency: Record<string, number> = {\n 1: 5,\n 2: 7,\n 3: 8,\n 4: 9,\n 5: 10,\n 6: 11,\n 7: 11.5,\n 8: 12,\n 9: 12.5,\n 10: 13,\n 11: 13.5,\n 12: 14,\n 13: 14.25,\n 14: 14.5,\n 15: 14.75,\n 16: 15,\n 17: 15.12,\n 18: 15.24,\n 19: 15.36,\n 20: 15.48,\n 21: 15.6,\n 22: 15.72,\n 23: 15.84,\n 24: 16,\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["theming.js"],"names":["ThemeProvider","withTheme","useTheme","DefaultTheme"],"mappings":";;;;;;;AAAA;;AACA;;;;AACO,MAAM;AAAEA,EAAAA,aAAF;AAAiBC,EAAAA,SAAjB;AAA4BC,EAAAA;AAA5B,IAAyC,uCAAcC,qBAAd,CAA/C","sourcesContent":["import { createTheming } from \"@draftbit/react-theme-provider\";\nimport DefaultTheme from \"./styles/DefaultTheme\";\nexport const { ThemeProvider, withTheme, useTheme } = createTheming(DefaultTheme);\n"]}
1
+ {"version":3,"sources":["theming.tsx"],"names":["ThemeProvider","withTheme","useTheme","DefaultTheme"],"mappings":";;;;;;;AAAA;;AACA;;;;AAGO,MAAM;AAAEA,EAAAA,aAAF;AAAiBC,EAAAA,SAAjB;AAA4BC,EAAAA;AAA5B,IACX,uCAAqBC,qBAArB,CADK","sourcesContent":["import { createTheming } from \"@draftbit/react-theme-provider\";\nimport DefaultTheme from \"./styles/DefaultTheme\";\nimport type { Theme } from \"@draftbit/types\";\n\nexport const { ThemeProvider, withTheme, useTheme } =\n createTheming<Theme>(DefaultTheme);\n"]}
@@ -45,9 +45,9 @@ const AccordionGroup = _ref => {
45
45
  style: styles.content
46
46
  }, /*#__PURE__*/React.createElement(Text, {
47
47
  selectable: false,
48
- style: [{
48
+ style: [textStyles, {
49
49
  color: labelColor
50
- }, textStyles]
50
+ }]
51
51
  }, label)), /*#__PURE__*/React.createElement(Icon, {
52
52
  name: expanded ? "MaterialIcons/keyboard-arrow-up" : "MaterialIcons/keyboard-arrow-down",
53
53
  color: caretColor,
@@ -1 +1 @@
1
- {"version":3,"sources":["AccordionGroup.tsx"],"names":["React","View","StyleSheet","Pressable","Text","withTheme","extractStyles","AccordionGroup","Icon","openColor","closedColor","caretColor","icon","iconSize","style","label","children","expanded","expandedProp","theme","setExpanded","useState","handlePressAction","expandedInternal","undefined","expandedColor","colors","primary","collapsedColor","labelColor","textStyles","viewStyles","styles","row","content","color","create","flexDirection","alignItems","flex","justifyContent","marginRight"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SACEC,IADF,EAEEC,UAFF,EAKEC,SALF,QAMO,cANP;AAOA,OAAOC,IAAP,MAAiB,SAAjB;AACA,SAASC,SAAT,QAA0B,eAA1B;AAGA,SAASC,aAAT,QAA8B,iBAA9B;;AAeA,MAAMC,cAAc,GAAG,QAYV;AAAA,MAZW;AACtBC,IAAAA,IADsB;AAEtBC,IAAAA,SAFsB;AAGtBC,IAAAA,WAHsB;AAItBC,IAAAA,UAJsB;AAKtBC,IAAAA,IALsB;AAMtBC,IAAAA,QAAQ,GAAG,EANW;AAOtBC,IAAAA,KAPsB;AAQtBC,IAAAA,KARsB;AAStBC,IAAAA,QATsB;AAUtBC,IAAAA,QAAQ,EAAEC,YAVY;AAWtBC,IAAAA;AAXsB,GAYX;AACX,QAAM,CAACF,QAAD,EAAWG,WAAX,IAA0BpB,KAAK,CAACqB,QAAN,CAC9BH,YAAY,IAAI,KADc,CAAhC;;AAIA,QAAMI,iBAAiB,GAAG,MAAM;AAC9BF,IAAAA,WAAW,CAAC,CAACH,QAAF,CAAX;AACD,GAFD;;AAIA,QAAMM,gBAAgB,GAAGL,YAAY,KAAKM,SAAjB,GAA6BN,YAA7B,GAA4CD,QAArE;AAEA,QAAMQ,aAAa,GAAGhB,SAAS,IAAIU,KAAK,CAACO,MAAN,CAAaC,OAAhD;AACA,QAAMC,cAAc,GAAGlB,WAAW,IAAIS,KAAK,CAACO,MAAN,CAAaC,OAAnD;AAEA,QAAME,UAAU,GAAGZ,QAAQ,GAAGQ,aAAH,GAAmBG,cAA9C;AAEA,QAAM;AAAEE,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6BzB,aAAa,CAACQ,KAAD,CAAhD;AAEA,sBACE,uDACE,oBAAC,SAAD;AACE,IAAA,KAAK,EAAE,CAACkB,MAAM,CAACC,GAAR,EAAaF,UAAb,CADT;AAEE,IAAA,OAAO,EAAET,iBAFX;AAGE,IAAA,iBAAiB,EAAC;AAHpB,KAKGV,IAAI,gBACH,oBAAC,IAAD;AACE,IAAA,IAAI,EAAEA,IADR;AAEE,IAAA,IAAI,EAAEC,QAFR;AAGE,IAAA,KAAK,EAAEgB,UAHT;AAIE,IAAA,KAAK,EAAEG,MAAM,CAACpB;AAJhB,IADG,GAOD,IAZN,eAaE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEoB,MAAM,CAACE;AAApB,kBACE,oBAAC,IAAD;AACE,IAAA,UAAU,EAAE,KADd;AAEE,IAAA,KAAK,EAAE,CACL;AACEC,MAAAA,KAAK,EAAEN;AADT,KADK,EAILC,UAJK;AAFT,KASGf,KATH,CADF,CAbF,eA0BE,oBAAC,IAAD;AACE,IAAA,IAAI,EACFE,QAAQ,GACJ,iCADI,GAEJ,mCAJR;AAME,IAAA,KAAK,EAAEN,UANT;AAOE,IAAA,IAAI,EAAE;AAPR,IA1BF,CADF,EAqCGY,gBAAgB,GAAGP,QAAH,GAAc,IArCjC,CADF;AAyCD,CAvED;;AAyEA,MAAMgB,MAAM,GAAG9B,UAAU,CAACkC,MAAX,CAAkB;AAC/BH,EAAAA,GAAG,EAAE;AACHI,IAAAA,aAAa,EAAE,KADZ;AAEHC,IAAAA,UAAU,EAAE;AAFT,GAD0B;AAK/BJ,EAAAA,OAAO,EAAE;AACPK,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,cAAc,EAAE;AAFT,GALsB;AAS/B5B,EAAAA,IAAI,EAAE;AACJ6B,IAAAA,WAAW,EAAE;AADT;AATyB,CAAlB,CAAf;AAcA,eAAepC,SAAS,CAACE,cAAD,CAAxB","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n TextStyle,\n Pressable,\n} from \"react-native\";\nimport Text from \"../Text\";\nimport { withTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport { extractStyles } from \"../../utilities\";\n\ntype Props = {\n openColor: string;\n closedColor: string;\n caretColor: string;\n icon?: string;\n iconSize: number;\n style?: StyleProp<TextStyle>;\n children: React.ReactNode;\n label: string;\n expanded?: boolean;\n theme: Theme;\n} & IconSlot;\n\nconst AccordionGroup = ({\n Icon,\n openColor,\n closedColor,\n caretColor,\n icon,\n iconSize = 24,\n style,\n label,\n children,\n expanded: expandedProp,\n theme,\n}: Props) => {\n const [expanded, setExpanded] = React.useState<boolean>(\n expandedProp || false\n );\n\n const handlePressAction = () => {\n setExpanded(!expanded);\n };\n\n const expandedInternal = expandedProp !== undefined ? expandedProp : expanded;\n\n const expandedColor = openColor || theme.colors.primary;\n const collapsedColor = closedColor || theme.colors.primary;\n\n const labelColor = expanded ? expandedColor : collapsedColor;\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <>\n <Pressable\n style={[styles.row, viewStyles]}\n onPress={handlePressAction}\n accessibilityRole=\"button\"\n >\n {icon ? (\n <Icon\n name={icon}\n size={iconSize}\n color={labelColor}\n style={styles.icon}\n />\n ) : null}\n <View style={styles.content}>\n <Text\n selectable={false}\n style={[\n {\n color: labelColor,\n },\n textStyles,\n ]}\n >\n {label}\n </Text>\n </View>\n <Icon\n name={\n expanded\n ? \"MaterialIcons/keyboard-arrow-up\"\n : \"MaterialIcons/keyboard-arrow-down\"\n }\n color={caretColor}\n size={24}\n />\n </Pressable>\n {expandedInternal ? children : null}\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n icon: {\n marginRight: 8,\n },\n});\n\nexport default withTheme(AccordionGroup);\n"]}
1
+ {"version":3,"sources":["AccordionGroup.tsx"],"names":["React","View","StyleSheet","Pressable","Text","withTheme","extractStyles","AccordionGroup","Icon","openColor","closedColor","caretColor","icon","iconSize","style","label","children","expanded","expandedProp","theme","setExpanded","useState","handlePressAction","expandedInternal","undefined","expandedColor","colors","primary","collapsedColor","labelColor","textStyles","viewStyles","styles","row","content","color","create","flexDirection","alignItems","flex","justifyContent","marginRight"],"mappings":"AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SACEC,IADF,EAEEC,UAFF,EAKEC,SALF,QAMO,cANP;AAOA,OAAOC,IAAP,MAAiB,SAAjB;AACA,SAASC,SAAT,QAA0B,eAA1B;AAGA,SAASC,aAAT,QAA8B,iBAA9B;;AAeA,MAAMC,cAAc,GAAG,QAYV;AAAA,MAZW;AACtBC,IAAAA,IADsB;AAEtBC,IAAAA,SAFsB;AAGtBC,IAAAA,WAHsB;AAItBC,IAAAA,UAJsB;AAKtBC,IAAAA,IALsB;AAMtBC,IAAAA,QAAQ,GAAG,EANW;AAOtBC,IAAAA,KAPsB;AAQtBC,IAAAA,KARsB;AAStBC,IAAAA,QATsB;AAUtBC,IAAAA,QAAQ,EAAEC,YAVY;AAWtBC,IAAAA;AAXsB,GAYX;AACX,QAAM,CAACF,QAAD,EAAWG,WAAX,IAA0BpB,KAAK,CAACqB,QAAN,CAC9BH,YAAY,IAAI,KADc,CAAhC;;AAIA,QAAMI,iBAAiB,GAAG,MAAM;AAC9BF,IAAAA,WAAW,CAAC,CAACH,QAAF,CAAX;AACD,GAFD;;AAIA,QAAMM,gBAAgB,GAAGL,YAAY,KAAKM,SAAjB,GAA6BN,YAA7B,GAA4CD,QAArE;AAEA,QAAMQ,aAAa,GAAGhB,SAAS,IAAIU,KAAK,CAACO,MAAN,CAAaC,OAAhD;AACA,QAAMC,cAAc,GAAGlB,WAAW,IAAIS,KAAK,CAACO,MAAN,CAAaC,OAAnD;AAEA,QAAME,UAAU,GAAGZ,QAAQ,GAAGQ,aAAH,GAAmBG,cAA9C;AAEA,QAAM;AAAEE,IAAAA,UAAF;AAAcC,IAAAA;AAAd,MAA6BzB,aAAa,CAACQ,KAAD,CAAhD;AAEA,sBACE,uDACE,oBAAC,SAAD;AACE,IAAA,KAAK,EAAE,CAACkB,MAAM,CAACC,GAAR,EAAaF,UAAb,CADT;AAEE,IAAA,OAAO,EAAET,iBAFX;AAGE,IAAA,iBAAiB,EAAC;AAHpB,KAKGV,IAAI,gBACH,oBAAC,IAAD;AACE,IAAA,IAAI,EAAEA,IADR;AAEE,IAAA,IAAI,EAAEC,QAFR;AAGE,IAAA,KAAK,EAAEgB,UAHT;AAIE,IAAA,KAAK,EAAEG,MAAM,CAACpB;AAJhB,IADG,GAOD,IAZN,eAaE,oBAAC,IAAD;AAAM,IAAA,KAAK,EAAEoB,MAAM,CAACE;AAApB,kBACE,oBAAC,IAAD;AACE,IAAA,UAAU,EAAE,KADd;AAEE,IAAA,KAAK,EAAE,CACLJ,UADK,EAEL;AACEK,MAAAA,KAAK,EAAEN;AADT,KAFK;AAFT,KASGd,KATH,CADF,CAbF,eA0BE,oBAAC,IAAD;AACE,IAAA,IAAI,EACFE,QAAQ,GACJ,iCADI,GAEJ,mCAJR;AAME,IAAA,KAAK,EAAEN,UANT;AAOE,IAAA,IAAI,EAAE;AAPR,IA1BF,CADF,EAqCGY,gBAAgB,GAAGP,QAAH,GAAc,IArCjC,CADF;AAyCD,CAvED;;AAyEA,MAAMgB,MAAM,GAAG9B,UAAU,CAACkC,MAAX,CAAkB;AAC/BH,EAAAA,GAAG,EAAE;AACHI,IAAAA,aAAa,EAAE,KADZ;AAEHC,IAAAA,UAAU,EAAE;AAFT,GAD0B;AAK/BJ,EAAAA,OAAO,EAAE;AACPK,IAAAA,IAAI,EAAE,CADC;AAEPC,IAAAA,cAAc,EAAE;AAFT,GALsB;AAS/B5B,EAAAA,IAAI,EAAE;AACJ6B,IAAAA,WAAW,EAAE;AADT;AATyB,CAAlB,CAAf;AAcA,eAAepC,SAAS,CAACE,cAAD,CAAxB","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n StyleProp,\n TextStyle,\n Pressable,\n} from \"react-native\";\nimport Text from \"../Text\";\nimport { withTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport type { Theme } from \"../../styles/DefaultTheme\";\nimport { extractStyles } from \"../../utilities\";\n\ntype Props = {\n openColor: string;\n closedColor: string;\n caretColor: string;\n icon?: string;\n iconSize: number;\n style?: StyleProp<TextStyle>;\n children: React.ReactNode;\n label: string;\n expanded?: boolean;\n theme: Theme;\n} & IconSlot;\n\nconst AccordionGroup = ({\n Icon,\n openColor,\n closedColor,\n caretColor,\n icon,\n iconSize = 24,\n style,\n label,\n children,\n expanded: expandedProp,\n theme,\n}: Props) => {\n const [expanded, setExpanded] = React.useState<boolean>(\n expandedProp || false\n );\n\n const handlePressAction = () => {\n setExpanded(!expanded);\n };\n\n const expandedInternal = expandedProp !== undefined ? expandedProp : expanded;\n\n const expandedColor = openColor || theme.colors.primary;\n const collapsedColor = closedColor || theme.colors.primary;\n\n const labelColor = expanded ? expandedColor : collapsedColor;\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <>\n <Pressable\n style={[styles.row, viewStyles]}\n onPress={handlePressAction}\n accessibilityRole=\"button\"\n >\n {icon ? (\n <Icon\n name={icon}\n size={iconSize}\n color={labelColor}\n style={styles.icon}\n />\n ) : null}\n <View style={styles.content}>\n <Text\n selectable={false}\n style={[\n textStyles,\n {\n color: labelColor,\n },\n ]}\n >\n {label}\n </Text>\n </View>\n <Icon\n name={\n expanded\n ? \"MaterialIcons/keyboard-arrow-up\"\n : \"MaterialIcons/keyboard-arrow-down\"\n }\n color={caretColor}\n size={24}\n />\n </Pressable>\n {expandedInternal ? children : null}\n </>\n );\n};\n\nconst styles = StyleSheet.create({\n row: {\n flexDirection: \"row\",\n alignItems: \"center\",\n },\n content: {\n flex: 1,\n justifyContent: \"center\",\n },\n icon: {\n marginRight: 8,\n },\n});\n\nexport default withTheme(AccordionGroup);\n"]}
@@ -11,7 +11,7 @@ const Checkbox = _ref => {
11
11
  Icon,
12
12
  status,
13
13
  disabled = false,
14
- onPress = () => {},
14
+ onPress,
15
15
  onCheck,
16
16
  onUncheck,
17
17
  color,
@@ -45,14 +45,14 @@ const Checkbox = _ref => {
45
45
  const handlePress = () => {
46
46
  const newValue = !internalValue;
47
47
  setInternalValue(newValue);
48
- onPress(newValue);
48
+ onPress === null || onPress === void 0 ? void 0 : onPress(newValue);
49
49
 
50
- if (onCheck && newValue) {
51
- onCheck();
50
+ if (newValue) {
51
+ onCheck === null || onCheck === void 0 ? void 0 : onCheck();
52
52
  }
53
53
 
54
- if (onUncheck && !newValue) {
55
- onUncheck();
54
+ if (!newValue) {
55
+ onUncheck === null || onUncheck === void 0 ? void 0 : onUncheck();
56
56
  }
57
57
  };
58
58
 
@@ -1 +1 @@
1
- {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","Checkbox","Icon","status","disabled","onPress","onCheck","onUncheck","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","newValue","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n onCheck?: () => void;\n onUncheck?: () => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress = () => {},\n onCheck,\n onUncheck,\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n const newValue = !internalValue;\n setInternalValue(newValue);\n onPress(newValue);\n\n if (onCheck && newValue) {\n onCheck();\n }\n\n if (onUncheck && !newValue) {\n onUncheck();\n }\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}
1
+ {"version":3,"sources":["Checkbox.tsx"],"names":["React","View","StyleSheet","useTheme","Touchable","usePrevious","Checkbox","Icon","status","disabled","onPress","onCheck","onUncheck","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousDefaultValue","Boolean","colors","checkboxColor","primary","handlePress","newValue","styles","container","width","height","icon","absoluteFill","fillContainer","fill","opacity","borderColor","create","borderRadius","alignItems","justifyContent","alignSelf"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n View,\n StyleSheet,\n TouchableHighlightProps,\n StyleProp,\n ViewStyle,\n} from \"react-native\";\nimport { useTheme } from \"../../theming\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\n\nimport Touchable from \"../Touchable\";\nimport { usePrevious } from \"../../hooks\";\n\nexport interface CheckboxProps {\n status?: boolean;\n disabled?: boolean;\n onPress?: (checked: boolean) => void;\n onCheck?: () => void;\n onUncheck?: () => void;\n color?: string;\n uncheckedColor?: string;\n checkedIcon?: string;\n uncheckedIcon?: string;\n defaultValue?: boolean;\n size?: number;\n style?: StyleProp<ViewStyle>;\n}\n\nconst Checkbox: React.FC<CheckboxProps & TouchableHighlightProps & IconSlot> =\n ({\n Icon,\n status,\n disabled = false,\n onPress,\n onCheck,\n onUncheck,\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon = \"MaterialCommunityIcons/checkbox-marked\",\n uncheckedIcon = \"MaterialCommunityIcons/checkbox-blank-outline\",\n size = 24,\n style,\n ...rest\n }) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as\n | boolean\n | undefined;\n\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const { colors } = useTheme();\n\n const checkboxColor = internalValue\n ? color || colors.primary\n : uncheckedColor || colors.primary;\n\n const handlePress = () => {\n const newValue = !internalValue;\n\n setInternalValue(newValue);\n onPress?.(newValue);\n\n if (newValue) {\n onCheck?.();\n }\n\n if (!newValue) {\n onUncheck?.();\n }\n };\n\n return (\n <Touchable\n {...rest}\n onPress={handlePress}\n disabled={disabled}\n accessibilityState={{ disabled }}\n accessibilityRole=\"button\"\n accessibilityLiveRegion=\"polite\"\n style={[styles.container, style, { width: size, height: size }]}\n >\n <Icon\n style={styles.icon}\n name={internalValue ? checkedIcon : uncheckedIcon}\n size={size}\n color={checkboxColor}\n />\n <View style={[StyleSheet.absoluteFill, styles.fillContainer]}>\n <View\n style={[\n styles.fill,\n { opacity: disabled ? 0.5 : 1 },\n { borderColor: checkboxColor },\n ]}\n />\n </View>\n </Touchable>\n );\n };\n\nconst styles = StyleSheet.create({\n container: {\n borderRadius: 18,\n },\n fillContainer: {\n alignItems: \"center\",\n justifyContent: \"center\",\n },\n icon: {\n alignSelf: \"center\",\n },\n fill: {\n borderRadius: 5,\n width: 30,\n height: 30,\n alignSelf: \"center\",\n },\n});\n\nexport default Checkbox;\n"]}
@@ -0,0 +1,120 @@
1
+ function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
+
3
+ import * as React from "react";
4
+ import { StyleSheet, View, Platform } from "react-native";
5
+ import Checkbox from "./Checkbox";
6
+ import Text from "../Text";
7
+ import { useCheckboxGroupContext } from "./context";
8
+ import { Direction as GroupDirection } from "./context";
9
+ import Touchable from "../Touchable";
10
+ import { extractStyles } from "../../utilities";
11
+ export let Direction;
12
+
13
+ (function (Direction) {
14
+ Direction["Row"] = "row";
15
+ Direction["RowReverse"] = "row-reverse";
16
+ })(Direction || (Direction = {}));
17
+
18
+ const getCheckboxAlignment = (parentDirection, direction) => {
19
+ if (parentDirection === GroupDirection.Horizontal) {
20
+ return direction === Direction.Row ? "flex-start" : "flex-end";
21
+ } else if (direction === Direction.RowReverse) {
22
+ return "flex-start";
23
+ } else {
24
+ return "flex-end";
25
+ }
26
+ };
27
+
28
+ const renderLabel = (value, labelStyle, textStyle) => {
29
+ if (typeof value === "string") {
30
+ return /*#__PURE__*/React.createElement(Text, {
31
+ style: [labelStyle, textStyle]
32
+ }, value);
33
+ } else {
34
+ return /*#__PURE__*/React.createElement(React.Fragment, null, value);
35
+ }
36
+ };
37
+
38
+ const CheckboxGroupRow = _ref => {
39
+ let {
40
+ Icon,
41
+ label = "Label",
42
+ status,
43
+ value,
44
+ onPress,
45
+ labelContainerStyle,
46
+ labelStyle,
47
+ checkboxStyle,
48
+ direction = Direction.Row,
49
+ disabled,
50
+ style,
51
+ color,
52
+ uncheckedColor,
53
+ ...rest
54
+ } = _ref;
55
+ const {
56
+ values: selectedValues,
57
+ onValueChange,
58
+ direction: parentDirection
59
+ } = useCheckboxGroupContext();
60
+ const values = Array.isArray(selectedValues) ? selectedValues : [];
61
+ const isChecked = status || values.includes(value);
62
+
63
+ const handlePress = () => {
64
+ if (!disabled) {
65
+ onPress === null || onPress === void 0 ? void 0 : onPress(!isChecked);
66
+ onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(value, !isChecked);
67
+ }
68
+ };
69
+
70
+ const {
71
+ textStyles,
72
+ viewStyles
73
+ } = extractStyles(style);
74
+ return /*#__PURE__*/React.createElement(Touchable, _extends({
75
+ onPress: handlePress,
76
+ style: [styles.mainParent, {
77
+ flexDirection: direction
78
+ }, viewStyles],
79
+ disabled: disabled
80
+ }, rest), /*#__PURE__*/React.createElement(View, {
81
+ style: [styles.label, {
82
+ alignItems: direction === Direction.Row ? "flex-start" : "flex-end"
83
+ }, labelContainerStyle]
84
+ }, renderLabel(label, labelStyle, textStyles)), /*#__PURE__*/React.createElement(View, {
85
+ style: {
86
+ flex: 1,
87
+ alignItems: getCheckboxAlignment(parentDirection, direction)
88
+ }
89
+ }, /*#__PURE__*/React.createElement(Checkbox, {
90
+ Icon: Icon,
91
+ status: isChecked,
92
+ onPress: handlePress,
93
+ style: checkboxStyle,
94
+ disabled: disabled,
95
+ color: color,
96
+ uncheckedColor: uncheckedColor
97
+ })));
98
+ };
99
+
100
+ const styles = StyleSheet.create({
101
+ mainParent: {
102
+ alignItems: "center",
103
+ justifyContent: "space-around",
104
+ paddingStart: 20,
105
+ minHeight: 50,
106
+ paddingEnd: 20,
107
+ display: "flex",
108
+ ...Platform.select({
109
+ web: {
110
+ cursor: "pointer",
111
+ userSelect: "none"
112
+ }
113
+ })
114
+ },
115
+ label: {
116
+ flex: 3
117
+ }
118
+ });
119
+ export default CheckboxGroupRow;
120
+ //# sourceMappingURL=CheckboxGroupRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["CheckboxGroupRow.tsx"],"names":["React","StyleSheet","View","Platform","Checkbox","Text","useCheckboxGroupContext","Direction","GroupDirection","Touchable","extractStyles","getCheckboxAlignment","parentDirection","direction","Horizontal","Row","RowReverse","renderLabel","value","labelStyle","textStyle","CheckboxGroupRow","Icon","label","status","onPress","labelContainerStyle","checkboxStyle","disabled","style","color","uncheckedColor","rest","values","selectedValues","onValueChange","Array","isArray","isChecked","includes","handlePress","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","flex","create","justifyContent","paddingStart","minHeight","paddingEnd","display","select","web","cursor","userSelect"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n StyleProp,\n ViewStyle,\n StyleSheet,\n TextStyle,\n View,\n Platform,\n} from \"react-native\";\nimport Checkbox, { CheckboxProps } from \"./Checkbox\";\nimport Text from \"../Text\";\nimport { useCheckboxGroupContext } from \"./context\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { Direction as GroupDirection } from \"./context\";\nimport Touchable from \"../Touchable\";\nimport { extractStyles } from \"../../utilities\";\n\nexport enum Direction {\n Row = \"row\",\n RowReverse = \"row-reverse\",\n}\n\nexport interface CheckboxGroupRowProps extends Omit<CheckboxProps, \"onPress\"> {\n label: string | React.ReactNode;\n value: string; // A string that this checkbox represents\n labelContainerStyle: StyleProp<ViewStyle>;\n checkboxStyle?: StyleProp<ViewStyle>;\n labelStyle?: StyleProp<TextStyle>;\n onPress?: (value: boolean) => void;\n direction?: Direction;\n color: string;\n unselectedColor: string;\n}\n\nconst getCheckboxAlignment = (\n parentDirection: GroupDirection | undefined,\n direction: Direction\n) => {\n if (parentDirection === GroupDirection.Horizontal) {\n return direction === Direction.Row ? \"flex-start\" : \"flex-end\";\n } else if (direction === Direction.RowReverse) {\n return \"flex-start\";\n } else {\n return \"flex-end\";\n }\n};\n\nconst renderLabel = (\n value: string | React.ReactNode,\n labelStyle: StyleProp<TextStyle>,\n textStyle: StyleProp<TextStyle>\n) => {\n if (typeof value === \"string\") {\n return <Text style={[labelStyle, textStyle]}>{value}</Text>;\n } else {\n return <>{value}</>;\n }\n};\n\nconst CheckboxGroupRow: React.FC<CheckboxGroupRowProps & IconSlot> = ({\n Icon,\n label = \"Label\",\n status,\n value,\n onPress,\n labelContainerStyle,\n labelStyle,\n checkboxStyle,\n direction = Direction.Row,\n disabled,\n style,\n color,\n uncheckedColor,\n ...rest\n}) => {\n const {\n values: selectedValues,\n onValueChange,\n direction: parentDirection,\n } = useCheckboxGroupContext();\n\n const values = Array.isArray(selectedValues) ? selectedValues : [];\n const isChecked = status || values.includes(value);\n\n const handlePress = () => {\n if (!disabled) {\n onPress?.(!isChecked);\n onValueChange?.(value, !isChecked);\n }\n };\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <Touchable\n onPress={handlePress}\n style={[styles.mainParent, { flexDirection: direction }, viewStyles]}\n disabled={disabled}\n {...rest}\n >\n <View\n style={[\n styles.label,\n {\n alignItems: direction === Direction.Row ? \"flex-start\" : \"flex-end\",\n },\n labelContainerStyle,\n ]}\n >\n {renderLabel(label, labelStyle, textStyles)}\n </View>\n <View\n style={{\n flex: 1,\n alignItems: getCheckboxAlignment(parentDirection, direction),\n }}\n >\n <Checkbox\n Icon={Icon}\n status={isChecked}\n onPress={handlePress}\n style={checkboxStyle}\n disabled={disabled}\n color={color}\n uncheckedColor={uncheckedColor}\n />\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n mainParent: {\n alignItems: \"center\",\n justifyContent: \"space-around\",\n paddingStart: 20,\n minHeight: 50,\n paddingEnd: 20,\n display: \"flex\",\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n label: {\n flex: 3,\n },\n});\n\nexport default CheckboxGroupRow;\n"]}
@@ -2,12 +2,12 @@ function _extends() { _extends = Object.assign || function (target) { for (var i
2
2
 
3
3
  import * as React from "react";
4
4
  import { StyleSheet, View, Platform } from "react-native";
5
- import Checkbox from "./Checkbox";
5
+ import { isString } from "lodash";
6
+ import { extractStyles } from "../../utilities";
7
+ import { usePrevious } from "../../hooks";
6
8
  import Text from "../Text";
7
- import { useCheckboxGroupContext } from "./context";
8
- import { Direction as GroupDirection } from "./context";
9
9
  import Touchable from "../Touchable";
10
- import { extractStyles } from "../../utilities";
10
+ import Checkbox from "./Checkbox";
11
11
  export let Direction;
12
12
 
13
13
  (function (Direction) {
@@ -15,20 +15,10 @@ export let Direction;
15
15
  Direction["RowReverse"] = "row-reverse";
16
16
  })(Direction || (Direction = {}));
17
17
 
18
- const getCheckboxAlignment = (parentDirection, direction) => {
19
- if (parentDirection === GroupDirection.Horizontal) {
20
- return direction === Direction.Row ? "flex-start" : "flex-end";
21
- } else if (direction === Direction.RowReverse) {
22
- return "flex-start";
23
- } else {
24
- return "flex-end";
25
- }
26
- };
27
-
28
18
  const renderLabel = (value, labelStyle, textStyle) => {
29
- if (typeof value === "string") {
19
+ if (isString(value)) {
30
20
  return /*#__PURE__*/React.createElement(Text, {
31
- style: [labelStyle, textStyle]
21
+ style: [textStyle, labelStyle]
32
22
  }, value);
33
23
  } else {
34
24
  return /*#__PURE__*/React.createElement(React.Fragment, null, value);
@@ -37,33 +27,52 @@ const renderLabel = (value, labelStyle, textStyle) => {
37
27
 
38
28
  const CheckboxRow = _ref => {
39
29
  let {
40
- Icon,
41
30
  label = "Label",
42
- status,
43
- value,
44
- onPress = () => {},
45
- labelContainerStyle,
46
31
  labelStyle,
32
+ labelContainerStyle,
47
33
  checkboxStyle,
48
34
  direction = Direction.Row,
49
- disabled,
50
- style,
35
+ Icon,
36
+ status,
37
+ disabled = false,
38
+ onPress,
39
+ onCheck,
40
+ onUncheck,
51
41
  color,
52
42
  uncheckedColor,
43
+ defaultValue,
44
+ checkedIcon,
45
+ uncheckedIcon,
46
+ size,
47
+ style,
53
48
  ...rest
54
49
  } = _ref;
55
- const {
56
- values: selectedValues,
57
- onValueChange,
58
- direction: parentDirection
59
- } = useCheckboxGroupContext();
60
- const values = Array.isArray(selectedValues) ? selectedValues : [];
61
- const isChecked = status || values.includes(value);
50
+ const [internalValue, setInternalValue] = React.useState(status || defaultValue || false);
51
+ React.useEffect(() => {
52
+ if (status != null) {
53
+ setInternalValue(status);
54
+ }
55
+ }, [status]); // This special logic is to handle weird APIs like Airtable that return
56
+ // true or undefined for a boolean
57
+
58
+ const previousDefaultValue = usePrevious(defaultValue);
59
+ React.useEffect(() => {
60
+ if (defaultValue !== previousDefaultValue) {
61
+ setInternalValue(Boolean(defaultValue));
62
+ }
63
+ }, [defaultValue, previousDefaultValue]);
62
64
 
63
65
  const handlePress = () => {
64
- if (!disabled) {
65
- onPress(!isChecked);
66
- onValueChange && onValueChange(value, !isChecked);
66
+ const newValue = !internalValue;
67
+ setInternalValue(newValue);
68
+ onPress === null || onPress === void 0 ? void 0 : onPress(newValue);
69
+
70
+ if (newValue) {
71
+ onCheck === null || onCheck === void 0 ? void 0 : onCheck();
72
+ }
73
+
74
+ if (!newValue) {
75
+ onUncheck === null || onUncheck === void 0 ? void 0 : onUncheck();
67
76
  }
68
77
  };
69
78
 
@@ -73,28 +82,26 @@ const CheckboxRow = _ref => {
73
82
  } = extractStyles(style);
74
83
  return /*#__PURE__*/React.createElement(Touchable, _extends({
75
84
  onPress: handlePress,
76
- style: [styles.mainParent, {
85
+ style: [viewStyles, styles.mainParent, {
77
86
  flexDirection: direction
78
- }, viewStyles],
87
+ }],
79
88
  disabled: disabled
80
89
  }, rest), /*#__PURE__*/React.createElement(View, {
81
90
  style: [styles.label, {
82
91
  alignItems: direction === Direction.Row ? "flex-start" : "flex-end"
83
92
  }, labelContainerStyle]
84
- }, renderLabel(label, labelStyle, textStyles)), /*#__PURE__*/React.createElement(View, {
85
- style: {
86
- flex: 1,
87
- alignItems: getCheckboxAlignment(parentDirection, direction)
88
- }
89
- }, /*#__PURE__*/React.createElement(Checkbox, {
93
+ }, renderLabel(label, textStyles, labelStyle)), /*#__PURE__*/React.createElement(Checkbox, {
90
94
  Icon: Icon,
91
- status: isChecked,
92
- onPress: handlePress,
95
+ status: internalValue,
93
96
  style: checkboxStyle,
94
97
  disabled: disabled,
98
+ onPress: handlePress,
95
99
  color: color,
96
- uncheckedColor: uncheckedColor
97
- })));
100
+ uncheckedColor: uncheckedColor,
101
+ checkedIcon: checkedIcon,
102
+ uncheckedIcon: uncheckedIcon,
103
+ size: size
104
+ }));
98
105
  };
99
106
 
100
107
  const styles = StyleSheet.create({
@@ -104,7 +111,7 @@ const styles = StyleSheet.create({
104
111
  paddingStart: 20,
105
112
  minHeight: 50,
106
113
  paddingEnd: 20,
107
- flex: 1,
114
+ display: "flex",
108
115
  ...Platform.select({
109
116
  web: {
110
117
  cursor: "pointer",
@@ -1 +1 @@
1
- {"version":3,"sources":["CheckboxRow.tsx"],"names":["React","StyleSheet","View","Platform","Checkbox","Text","useCheckboxGroupContext","Direction","GroupDirection","Touchable","extractStyles","getCheckboxAlignment","parentDirection","direction","Horizontal","Row","RowReverse","renderLabel","value","labelStyle","textStyle","CheckboxRow","Icon","label","status","onPress","labelContainerStyle","checkboxStyle","disabled","style","color","uncheckedColor","rest","values","selectedValues","onValueChange","Array","isArray","isChecked","includes","handlePress","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","flex","create","justifyContent","paddingStart","minHeight","paddingEnd","select","web","cursor","userSelect"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n StyleProp,\n ViewStyle,\n StyleSheet,\n TextStyle,\n View,\n Platform,\n} from \"react-native\";\nimport Checkbox, { CheckboxProps } from \"./Checkbox\";\nimport Text from \"../Text\";\nimport { useCheckboxGroupContext } from \"./context\";\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { Direction as GroupDirection } from \"./context\";\nimport Touchable from \"../Touchable\";\nimport { extractStyles } from \"../../utilities\";\n\nexport enum Direction {\n Row = \"row\",\n RowReverse = \"row-reverse\",\n}\n\nexport interface CheckboxRowProps extends Omit<CheckboxProps, \"onPress\"> {\n label: string | React.ReactNode;\n value: string; // A string that this checkbox represents\n labelContainerStyle: StyleProp<ViewStyle>;\n checkboxStyle?: StyleProp<ViewStyle>;\n labelStyle?: StyleProp<TextStyle>;\n onPress?: (value: boolean) => void;\n direction?: Direction;\n color: string;\n unselectedColor: string;\n}\n\nconst getCheckboxAlignment = (\n parentDirection: GroupDirection | undefined,\n direction: Direction\n) => {\n if (parentDirection === GroupDirection.Horizontal) {\n return direction === Direction.Row ? \"flex-start\" : \"flex-end\";\n } else if (direction === Direction.RowReverse) {\n return \"flex-start\";\n } else {\n return \"flex-end\";\n }\n};\n\nconst renderLabel = (\n value: string | React.ReactNode,\n labelStyle: StyleProp<TextStyle>,\n textStyle: StyleProp<TextStyle>\n) => {\n if (typeof value === \"string\") {\n return <Text style={[labelStyle, textStyle]}>{value}</Text>;\n } else {\n return <>{value}</>;\n }\n};\n\nconst CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({\n Icon,\n label = \"Label\",\n status,\n value,\n onPress = () => {},\n labelContainerStyle,\n labelStyle,\n checkboxStyle,\n direction = Direction.Row,\n disabled,\n style,\n color,\n uncheckedColor,\n ...rest\n}) => {\n const {\n values: selectedValues,\n onValueChange,\n direction: parentDirection,\n } = useCheckboxGroupContext();\n\n const values = Array.isArray(selectedValues) ? selectedValues : [];\n const isChecked = status || values.includes(value);\n\n const handlePress = () => {\n if (!disabled) {\n onPress(!isChecked);\n onValueChange && onValueChange(value, !isChecked);\n }\n };\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <Touchable\n onPress={handlePress}\n style={[styles.mainParent, { flexDirection: direction }, viewStyles]}\n disabled={disabled}\n {...rest}\n >\n <View\n style={[\n styles.label,\n {\n alignItems: direction === Direction.Row ? \"flex-start\" : \"flex-end\",\n },\n labelContainerStyle,\n ]}\n >\n {renderLabel(label, labelStyle, textStyles)}\n </View>\n <View\n style={{\n flex: 1,\n alignItems: getCheckboxAlignment(parentDirection, direction),\n }}\n >\n <Checkbox\n Icon={Icon}\n status={isChecked}\n onPress={handlePress}\n style={checkboxStyle}\n disabled={disabled}\n color={color}\n uncheckedColor={uncheckedColor}\n />\n </View>\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n mainParent: {\n alignItems: \"center\",\n justifyContent: \"space-around\",\n paddingStart: 20,\n minHeight: 50,\n paddingEnd: 20,\n flex: 1,\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n label: {\n flex: 3,\n },\n});\n\nexport default CheckboxRow;\n"]}
1
+ {"version":3,"sources":["CheckboxRow.tsx"],"names":["React","StyleSheet","View","Platform","isString","extractStyles","usePrevious","Text","Touchable","Checkbox","Direction","renderLabel","value","labelStyle","textStyle","CheckboxRow","label","labelContainerStyle","checkboxStyle","direction","Row","Icon","status","disabled","onPress","onCheck","onUncheck","color","uncheckedColor","defaultValue","checkedIcon","uncheckedIcon","size","style","rest","internalValue","setInternalValue","useState","useEffect","previousDefaultValue","Boolean","handlePress","newValue","textStyles","viewStyles","styles","mainParent","flexDirection","alignItems","create","justifyContent","paddingStart","minHeight","paddingEnd","display","select","web","cursor","userSelect","flex"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport {\n StyleProp,\n ViewStyle,\n StyleSheet,\n TextStyle,\n View,\n Platform,\n} from \"react-native\";\nimport { isString } from \"lodash\";\n\nimport type { IconSlot } from \"../../interfaces/Icon\";\nimport { extractStyles } from \"../../utilities\";\nimport { usePrevious } from \"../../hooks\";\nimport Text from \"../Text\";\nimport Touchable from \"../Touchable\";\nimport Checkbox, { CheckboxProps } from \"./Checkbox\";\n\nexport enum Direction {\n Row = \"row\",\n RowReverse = \"row-reverse\",\n}\n\nexport interface CheckboxRowProps extends CheckboxProps {\n label: string | React.ReactNode;\n labelStyle?: StyleProp<TextStyle>;\n labelContainerStyle: StyleProp<ViewStyle>;\n checkboxStyle?: StyleProp<ViewStyle>;\n direction?: Direction;\n}\n\nconst renderLabel = (\n value: string | React.ReactNode,\n labelStyle: StyleProp<TextStyle>,\n textStyle: StyleProp<TextStyle>\n) => {\n if (isString(value)) {\n return <Text style={[textStyle, labelStyle]}>{value}</Text>;\n } else {\n return <>{value}</>;\n }\n};\n\nconst CheckboxRow: React.FC<CheckboxRowProps & IconSlot> = ({\n label = \"Label\",\n labelStyle,\n labelContainerStyle,\n checkboxStyle,\n direction = Direction.Row,\n Icon,\n status,\n disabled = false,\n onPress,\n onCheck,\n onUncheck,\n color,\n uncheckedColor,\n defaultValue,\n checkedIcon,\n uncheckedIcon,\n size,\n style,\n ...rest\n}) => {\n const [internalValue, setInternalValue] = React.useState<boolean>(\n status || defaultValue || false\n );\n\n React.useEffect(() => {\n if (status != null) {\n setInternalValue(status);\n }\n }, [status]);\n\n // This special logic is to handle weird APIs like Airtable that return\n // true or undefined for a boolean\n const previousDefaultValue = usePrevious(defaultValue) as boolean | undefined;\n\n React.useEffect(() => {\n if (defaultValue !== previousDefaultValue) {\n setInternalValue(Boolean(defaultValue));\n }\n }, [defaultValue, previousDefaultValue]);\n\n const handlePress = () => {\n const newValue = !internalValue;\n\n setInternalValue(newValue);\n onPress?.(newValue);\n\n if (newValue) {\n onCheck?.();\n }\n\n if (!newValue) {\n onUncheck?.();\n }\n };\n\n const { textStyles, viewStyles } = extractStyles(style);\n\n return (\n <Touchable\n onPress={handlePress}\n style={[viewStyles, styles.mainParent, { flexDirection: direction }]}\n disabled={disabled}\n {...rest}\n >\n <View\n style={[\n styles.label,\n {\n alignItems: direction === Direction.Row ? \"flex-start\" : \"flex-end\",\n },\n labelContainerStyle,\n ]}\n >\n {renderLabel(label, textStyles, labelStyle)}\n </View>\n\n <Checkbox\n Icon={Icon}\n status={internalValue}\n style={checkboxStyle}\n disabled={disabled}\n onPress={handlePress}\n color={color}\n uncheckedColor={uncheckedColor}\n checkedIcon={checkedIcon}\n uncheckedIcon={uncheckedIcon}\n size={size}\n />\n </Touchable>\n );\n};\n\nconst styles = StyleSheet.create({\n mainParent: {\n alignItems: \"center\",\n justifyContent: \"space-around\",\n paddingStart: 20,\n minHeight: 50,\n paddingEnd: 20,\n display: \"flex\",\n ...Platform.select({\n web: {\n cursor: \"pointer\",\n userSelect: \"none\",\n },\n }),\n },\n label: {\n flex: 3,\n },\n});\n\nexport default CheckboxRow;\n"]}
@@ -1,12 +1,11 @@
1
1
  function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2
2
 
3
3
  import * as React from "react";
4
- import { View, Animated, Text, StyleSheet, Platform, I18nManager, TextInput as NativeTextInput } from "react-native";
4
+ import { View, Animated, Text, StyleSheet, I18nManager, TextInput as NativeTextInput } from "react-native";
5
5
  import { useSafeAreaInsets } from "react-native-safe-area-context";
6
6
  import dateFormat from "dateformat";
7
7
  import { withTheme } from "../../theming";
8
8
  import Portal from "../Portal/Portal";
9
- import Button from "../DeprecatedButton";
10
9
  import Touchable from "../Touchable";
11
10
  import DateTimePicker from "./DatePickerComponent";
12
11
  const AnimatedText = Animated.createAnimatedComponent(Text);
@@ -347,18 +346,13 @@ const DatePicker = _ref => {
347
346
  paddingLeft: insets.left,
348
347
  paddingRight: insets.right
349
348
  }]
350
- }, Platform.OS === "ios" && /*#__PURE__*/React.createElement(Button, {
351
- Icon: Icon,
352
- type: "text",
353
- onPress: toggleVisibility,
354
- style: styles.closeButton
355
- }, "Close"), /*#__PURE__*/React.createElement(DateTimePicker, {
349
+ }, /*#__PURE__*/React.createElement(DateTimePicker, {
356
350
  value: getValidDate(),
357
351
  mode: mode,
358
352
  isVisible: pickerVisible,
359
353
  toggleVisibility: toggleVisibility,
360
354
  onChange: (_event, data) => {
361
- Platform.OS === "ios" ? null : toggleVisibility();
355
+ toggleVisibility();
362
356
  setValue(data);
363
357
  onDateChange(data);
364
358
  }