@kaspernj/api-maker 1.0.2025 → 1.0.2026

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 (58) hide show
  1. package/build/bootstrap/attribute-row.js +5 -5
  2. package/build/bootstrap/sort-link.js +3 -3
  3. package/build/draggable-sort/index.js +6 -6
  4. package/build/draggable-sort/item.js +6 -6
  5. package/build/link.js +2 -2
  6. package/build/modal.js +4 -4
  7. package/build/super-admin/edit-page/edit-attribute-checkbox.js +3 -3
  8. package/build/super-admin/edit-page/edit-attribute-input.js +4 -4
  9. package/build/super-admin/edit-page/edit-attribute.js +5 -5
  10. package/build/super-admin/edit-page.js +5 -5
  11. package/build/super-admin/layout/header/index.js +13 -16
  12. package/build/super-admin/layout/menu/index.js +7 -7
  13. package/build/table/filters/filter.js +4 -4
  14. package/build/table/filters/index.js +7 -5
  15. package/build/table/header-column-content.js +6 -6
  16. package/build/table/header-column.js +3 -3
  17. package/build/table/header-select.js +5 -5
  18. package/build/table/model-column.js +4 -4
  19. package/build/table/model-row.js +9 -9
  20. package/build/table/settings/column-row.js +3 -3
  21. package/build/table/settings/download-action.js +3 -3
  22. package/build/table/settings/index.js +8 -8
  23. package/build/table/table.js +10 -14
  24. package/build/utils/checkbox.js +2 -2
  25. package/build/utils/checkboxes.js +9 -11
  26. package/build/utils/icon.js +1 -6
  27. package/build/utils/invalid-feedback.js +2 -2
  28. package/build/utils/modal.js +11 -10
  29. package/package.json +1 -1
  30. package/src/bootstrap/attribute-row.jsx +2 -2
  31. package/src/bootstrap/sort-link.jsx +2 -2
  32. package/src/draggable-sort/index.jsx +23 -24
  33. package/src/draggable-sort/item.jsx +11 -14
  34. package/src/link.jsx +1 -1
  35. package/src/modal.jsx +3 -3
  36. package/src/super-admin/edit-page/edit-attribute-checkbox.jsx +4 -1
  37. package/src/super-admin/edit-page/edit-attribute-input.jsx +11 -3
  38. package/src/super-admin/edit-page/edit-attribute.jsx +5 -2
  39. package/src/super-admin/edit-page.jsx +4 -4
  40. package/src/super-admin/layout/header/index.jsx +13 -13
  41. package/src/super-admin/layout/menu/index.jsx +6 -6
  42. package/src/table/filters/filter.jsx +6 -2
  43. package/src/table/filters/index.jsx +2 -2
  44. package/src/table/header-column-content.jsx +5 -5
  45. package/src/table/header-column.jsx +2 -2
  46. package/src/table/header-select.jsx +9 -4
  47. package/src/table/model-column.jsx +3 -3
  48. package/src/table/model-row.jsx +9 -5
  49. package/src/table/settings/column-row.jsx +1 -1
  50. package/src/table/settings/download-action.jsx +2 -2
  51. package/src/table/settings/index.jsx +7 -7
  52. package/src/table/table.jsx +8 -8
  53. package/src/utils/checkbox.jsx +1 -1
  54. package/src/utils/checkboxes.jsx +8 -9
  55. package/src/utils/icon.jsx +0 -4
  56. package/src/utils/invalid-feedback.jsx +1 -1
  57. package/src/utils/modal.jsx +14 -10
  58. package/link.sh +0 -8
@@ -30,7 +30,7 @@ export default memo(shapeComponent(class ApiMakerTableFilter extends BaseCompone
30
30
  const {a, pre, sc} = this.props
31
31
 
32
32
  return (
33
- <View style={{alignItems: "center", flexDirection: "row", backgroundColor: "grey", paddingVertical: 10, paddingHorizontal: 6}}>
33
+ <View style={this.rootViewStyle ||= {alignItems: "center", flexDirection: "row", backgroundColor: "grey", paddingVertical: 10, paddingHorizontal: 6}}>
34
34
  <Pressable
35
35
  dataSet={{
36
36
  attribute: a,
@@ -46,7 +46,11 @@ export default memo(shapeComponent(class ApiMakerTableFilter extends BaseCompone
46
46
  {a} {sc} {pre} {v}
47
47
  </Text>
48
48
  </Pressable>
49
- <Pressable dataSet={{class: "remove-filter-button"}} onPress={this.tt.onRemoveFilterPressed} style={{marginLeft: 6}}>
49
+ <Pressable
50
+ dataSet={this.removeFilterButtonDataSet ||= {class: "remove-filter-button"}}
51
+ onPress={this.tt.onRemoveFilterPressed}
52
+ style={this.removeFilterButtonStyle ||= {marginLeft: 6}}
53
+ >
50
54
  <Icon name="remove" />
51
55
  </Pressable>
52
56
  </View>
@@ -42,7 +42,7 @@ export default memo(shapeComponent(class ApiMakerTableFilters extends BaseCompon
42
42
  const currentFilters = this.currentFilters()
43
43
 
44
44
  return (
45
- <View dataSet={{class: "api-maker--table--filters"}} style={{alignItems: "flex-start"}}>
45
+ <View dataSet={this.rootViewDataSet ||= {class: "api-maker--table--filters"}} style={this.rootViewStyle ||= {alignItems: "flex-start"}}>
46
46
  {filter &&
47
47
  <FilterForm
48
48
  filter={filter}
@@ -78,7 +78,7 @@ export default memo(shapeComponent(class ApiMakerTableFilters extends BaseCompon
78
78
  {...filterData}
79
79
  />
80
80
  )}
81
- <View className="filter-actions" style={{flexDirection: "row", marginTop: 10}}>
81
+ <View dataSet={this.filterActionsDataSet ||= {class: "filter-actions"}} style={this.filterActionsStyle ||= {flexDirection: "row", marginTop: 10}}>
82
82
  <button className="add-new-filter-button" onClick={this.tt.onAddFilterClicked}>
83
83
  {this.t(".add_new_filter", {defaultValue: "Add new filter"})}
84
84
  </button>
@@ -26,11 +26,11 @@ export default memo(shapeComponent(class ApiMakerTableHeaderColumn extends BaseC
26
26
 
27
27
  return (
28
28
  <View
29
- dataSet={{
29
+ dataSet={this.cache("rootViewDataSet", {
30
30
  component: "api-maker/table/header-column-content",
31
31
  identifier: tableSettingColumn.identifier()
32
- }}
33
- style={{display: "flex", flexDirection: "row", alignItems: "center"}}
32
+ }, [tableSettingColumn.identifier()])}
33
+ style={this.rootViewStyle ||= {display: "flex", flexDirection: "row", alignItems: "center"}}
34
34
  {...columnProps}
35
35
  >
36
36
  {tableSettingColumn.hasSortKey() && query &&
@@ -38,14 +38,14 @@ export default memo(shapeComponent(class ApiMakerTableHeaderColumn extends BaseC
38
38
  attribute={tableSettingColumn.sortKey()}
39
39
  defaultParams={defaultParams}
40
40
  query={query}
41
- style={{whiteSpace: "nowrap", overflow: "hidden"}}
41
+ style={this.sortLinkStyle ||= {whiteSpace: "nowrap", overflow: "hidden"}}
42
42
  textProps={{ellipsizeMode: "clip", numberOfLines: 1, style: styleForHeaderText()}}
43
43
  title={table.headerLabelForColumn(column)}
44
44
  {...this.props.sortLinkProps}
45
45
  />
46
46
  }
47
47
  {(!tableSettingColumn.hasSortKey() || !query) &&
48
- <Text ellipsizeMode="clip" numberOfLines={1} style={{fontWeight: "bold"}}>
48
+ <Text ellipsizeMode="clip" numberOfLines={1} style={this.headerLabelStyle ||= {fontWeight: "bold"}}>
49
49
  {table.headerLabelForColumn(column)}
50
50
  </Text>
51
51
  }
@@ -100,12 +100,12 @@ export default memo(shapeComponent(class ApiMakerTableHeaderColumn extends BaseC
100
100
  {...restColumnProps}
101
101
  >
102
102
  {mdUp &&
103
- <Icon name="bars" style={{marginRight: 3, fontSize: 12}} {...touchProps} />
103
+ <Icon name="bars" style={this.barsIconStyle ||= {marginRight: 3, fontSize: 12}} {...touchProps} />
104
104
  }
105
105
  <HeaderColumnContent column={column} table={table} tableSettingColumn={tableSettingColumn} />
106
106
  {mdUp &&
107
107
  <Animated.View
108
- style={{
108
+ style={this.resizeColumnViewStyle ||= {
109
109
  position: "absolute",
110
110
  top: 0,
111
111
  right: 0,
@@ -38,15 +38,20 @@ export default memo(shapeComponent(class ApiMakerTableHeaderSelect extends BaseC
38
38
  const columnLabel = column && table.headerLabelForColumn(column)
39
39
 
40
40
  return (
41
- <View dataSet={{component: "api-maker/table/header-select"}}>
41
+ <View dataSet={this.rootViewDataSet ||= {component: "api-maker/table/header-select"}}>
42
42
  {this.s.modalOpen &&
43
- <Modal dataSet={{class: "table-header-select-modal"}} onRequestClose={this.tt.onModalRequestClose} transparent>
43
+ <Modal dataSet={this.modalDataSet ||= {class: "table-header-select-modal"}} onRequestClose={this.tt.onModalRequestClose} transparent>
44
44
  {this.p.preparedColumns.map(({column, tableSettingColumn}) =>
45
45
  <View
46
46
  key={tableSettingColumn.identifier()}
47
- style={{marginVertical: 5}}
47
+ style={this.headerColumnContentViewStyle ||= {marginVertical: 5}}
48
48
  >
49
- <HeaderColumnContent column={column} table={table} tableSettingColumn={tableSettingColumn} sortLinkProps={{usePressable: true}} />
49
+ <HeaderColumnContent
50
+ column={column}
51
+ table={table}
52
+ tableSettingColumn={tableSettingColumn}
53
+ sortLinkProps={this.sortLinkProps ||= {usePressable: true}}
54
+ />
50
55
  </View>
51
56
  )}
52
57
  </Modal>
@@ -58,13 +58,13 @@ export default memo(shapeComponent(class ApiMakerTableModelColumn extends BaseCo
58
58
  {...restColumnProps}
59
59
  >
60
60
  {!mdUp &&
61
- <View dataSet={{class: "table--column-label"}}>
62
- <Text style={{fontWeight: "bold"}}>
61
+ <View dataSet={this.columnLabelDataSet ||= {class: "table--column-label"}}>
62
+ <Text style={this.columnLabelTextStyle ||= {fontWeight: "bold"}}>
63
63
  {table.headerLabelForColumn(column)}
64
64
  </Text>
65
65
  </View>
66
66
  }
67
- <View dataSet={{class: "table--column-value"}}>
67
+ <View dataSet={this.columnValueDataSet ||= {class: "table--column-value"}}>
68
68
  {new ColumnContent({column, l, model, t, table}).content()}
69
69
  </View>
70
70
  </Column>
@@ -63,11 +63,11 @@ export default memo(shapeComponent(class ApiMakerBootStrapLiveTableModelRow exte
63
63
  style={styleForRow({even})}
64
64
  >
65
65
  {workplace &&
66
- <Column dataSet={{class: "workplace-column"}} style={styleForColumn({even, style: {width: 41}})}>
66
+ <Column dataSet={this.columnDataSet ||= {class: "workplace-column"}} style={styleForColumn({even, style: {width: 41}})}>
67
67
  <WorkerPluginsCheckbox
68
68
  currentWorkplace={currentWorkplace}
69
69
  model={model}
70
- style={{marginHorizontal: "auto"}}
70
+ style={this.workerPluginsCheckboxStyle ||= {marginHorizontal: "auto"}}
71
71
  />
72
72
  </Column>
73
73
  }
@@ -75,17 +75,21 @@ export default memo(shapeComponent(class ApiMakerBootStrapLiveTableModelRow exte
75
75
  <Column dataSet={{class: "actions-column"}} style={styleForColumn({even, style: {}, type: "actions"})}>
76
76
  {actionsContent && actionsContent(this.tt.modelCallbackArgs)}
77
77
  {viewPath &&
78
- <Link dataSet={{class: "view-button"}} style={{marginLeft: 2, marginRight: 2}} to={viewPath}>
78
+ <Link dataSet={this.viewButtonDataSet ||= {class: "view-button"}} style={this.searchLinkStyle ||= {marginLeft: 2, marginRight: 2}} to={viewPath}>
79
79
  <Icon name="search" size={18} />
80
80
  </Link>
81
81
  }
82
82
  {editPath &&
83
- <Link dataSet={{class: "edit-button"}} style={{marginLeft: 2, marginRight: 2}} to={editPath}>
83
+ <Link dataSet={this.editButtonDataSet ||= {class: "edit-button"}} style={this.editButtonStyle ||= {marginLeft: 2, marginRight: 2}} to={editPath}>
84
84
  <Icon name="pencil" size={20} />
85
85
  </Link>
86
86
  }
87
87
  {destroyEnabled && model.can("destroy") &&
88
- <Pressable dataSet={{class: "destroy-button"}} style={{marginLeft: 2, marginRight: 2}} onPress={this.tt.onDestroyClicked}>
88
+ <Pressable
89
+ dataSet={this.destroyButtonDataSet ||= {class: "destroy-button"}}
90
+ style={this.destroyButtonStyle ||= {marginLeft: 2, marginRight: 2}}
91
+ onPress={this.tt.onDestroyClicked}
92
+ >
89
93
  <Icon name="remove" size={22} />
90
94
  </Pressable>
91
95
  }
@@ -35,7 +35,7 @@ export default memo(shapeComponent(class ColumnRow extends BaseComponent {
35
35
  }
36
36
 
37
37
  return (
38
- <View dataSet={{component: "api-maker--table--settings--column-row"}} style={{justifyContent: "center"}}>
38
+ <View dataSet={this.rootViewDataSet ||= {component: "api-maker--table--settings--column-row"}} style={this.rootViewStyle ||= {justifyContent: "center"}}>
39
39
  <label style={{whiteSpace: "nowrap"}}>
40
40
  <input
41
41
  className="api-maker--table--setings--column-checkbox"
@@ -20,9 +20,9 @@ export default memo(shapeComponent(class ApiMakerTableSettingsDownloadAction ext
20
20
 
21
21
  render() {
22
22
  return (
23
- <Pressable onPress={this.tt.onDownloadPress} style={{flexDirection: "row", alignItems: "center"}}>
23
+ <Pressable onPress={this.tt.onDownloadPress} style={this.pressableStyle ||= {flexDirection: "row", alignItems: "center"}}>
24
24
  <Icon name="download" size={20} />
25
- <Text style={{marginLeft: 5}}>
25
+ <Text style={this.textStyle ||= {marginLeft: 5}}>
26
26
  Download
27
27
  </Text>
28
28
  </Pressable>
@@ -33,10 +33,10 @@ export default memo(shapeComponent(class ApiMakerTableSettings extends BaseCompo
33
33
  const {preparedColumns} = table.s
34
34
 
35
35
  return (
36
- <Modal onBackdropPress={this.p.onRequestClose} onRequestClose={this.p.onRequestClose} style={{backgroundColor: "#000"}} transparent>
36
+ <Modal onBackdropPress={this.p.onRequestClose} onRequestClose={this.p.onRequestClose} style={this.rootModalStyle ||= {backgroundColor: "#000"}} transparent>
37
37
  <View
38
- dataSet={{class: "api-maker--table--settings"}}
39
- style={{
38
+ dataSet={this.rootViewDataSet ||= {class: "api-maker--table--settings"}}
39
+ style={this.rootViewStyle ||= {
40
40
  width: "100%",
41
41
  maxWidth: 800,
42
42
  padding: 20,
@@ -44,14 +44,14 @@ export default memo(shapeComponent(class ApiMakerTableSettings extends BaseCompo
44
44
  border: "1px solid black"
45
45
  }}
46
46
  >
47
- <View style={{marginBottom: 5}}>
48
- <Text style={{fontSize: 16, fontWeight: "bold"}}>
47
+ <View style={this.settingsHeaderViewStyle ||= {marginBottom: 5}}>
48
+ <Text style={this.settingsHeaderTextSTyle ||= {fontSize: 16, fontWeight: "bold"}}>
49
49
  {t(".settings", {defaultValue: "Settings"})}
50
50
  </Text>
51
51
  </View>
52
52
  <DownloadAction table={table} />
53
- <View style={{marginBottom: 5}}>
54
- <Text style={{fontSize: 16, fontWeight: "bold"}}>
53
+ <View style={this.columnsHeaderViewStyle ||= {marginBottom: 5}}>
54
+ <Text style={this.columnsHeaderTextStyle ||= {fontSize: 16, fontWeight: "bold"}}>
55
55
  {t(".columns", {defaultValue: "Columns"})}
56
56
  </Text>
57
57
  </View>
@@ -67,10 +67,10 @@ const ListHeaderComponent = memo(shapeComponent(class ListHeaderComponent extend
67
67
  <WorkerPluginsCheckAllCheckbox
68
68
  currentWorkplace={table.s.currentWorkplace}
69
69
  query={queryWithoutPagination}
70
- style={{marginHorizontal: "auto"}}
70
+ style={this.workerPlguinsCheckAllCheckboxStyle ||= {marginHorizontal: "auto"}}
71
71
  />
72
72
  {!mdUp &&
73
- <Text style={{marginLeft: 3}}>
73
+ <Text style={this.selectAllFoundTextStyle ||= {marginLeft: 3}}>
74
74
  {t(".select_all_found", {defaultValue: "Select all found"})}
75
75
  </Text>
76
76
  }
@@ -730,16 +730,16 @@ export default memo(shapeComponent(class ApiMakerTable extends BaseComponent {
730
730
  const {models, qParams, query, result} = digs(this.collection, "models", "qParams", "query", "result")
731
731
 
732
732
  return (
733
- <View style={{flexDirection: "row"}}>
733
+ <View style={this.rootViewStyle ||= {flexDirection: "row"}}>
734
734
  {controls && controls({models, qParams, query, result})}
735
735
  <Pressable dataSet={{class: "filter-button"}} onPress={this.tt.onFilterClicked}>
736
736
  <Icon name="search" size={20} />
737
737
  </Pressable>
738
- <View style={{position: "relative"}}>
738
+ <View>
739
739
  {showSettings &&
740
740
  <Settings onRequestClose={this.tt.onRequestCloseSettings} table={this} />
741
741
  }
742
- <Pressable dataSet={{class: "settings-button"}} onPress={this.tt.onSettingsClicked}>
742
+ <Pressable dataSet={this.settingsButtonDataSet ||= {class: "settings-button"}} onPress={this.tt.onSettingsClicked}>
743
743
  <Icon name="gear" size={20} />
744
744
  </Pressable>
745
745
  </View>
@@ -759,13 +759,13 @@ export default memo(shapeComponent(class ApiMakerTable extends BaseComponent {
759
759
  if (to === 0) from = 0
760
760
 
761
761
  return (
762
- <View style={{flexDirection: "row", justifyContent: "space-between", marginTop: 10}}>
763
- <View dataSet={{class: "showing-counts"}} style={{flexDirection: "row"}}>
762
+ <View style={this.rootViewStyle ||= {flexDirection: "row", justifyContent: "space-between", marginTop: 10}}>
763
+ <View dataSet={this.showingCountsDataSet ||= {class: "showing-counts"}} style={this.showingCountsStyle ||= {flexDirection: "row"}}>
764
764
  <Text>
765
765
  {this.t(".showing_from_to_out_of_total", {defaultValue, from, to, total_count: totalCount})}
766
766
  </Text>
767
767
  {this.p.workplace && this.s.currentWorkplaceCount !== null &&
768
- <Text style={{marginLeft: 3}}>
768
+ <Text style={this.xSelectedTextStyle ||= {marginLeft: 3}}>
769
769
  {this.t(".x_selected", {defaultValue: "%{selected} selected.", selected: this.s.currentWorkplaceCount})}
770
770
  </Text>
771
771
  }
@@ -1,6 +1,6 @@
1
- import BaseComponent from "../base-component"
2
1
  import {CheckBox, Pressable, View} from "react-native"
3
2
  import React, {useMemo} from "react"
3
+ import BaseComponent from "../base-component"
4
4
  import memo from "set-state-compare/src/memo"
5
5
  import PropTypes from "prop-types"
6
6
  import propTypesExact from "prop-types-exact"
@@ -22,16 +22,17 @@ const OptionElement = memo(shapeComponent(class OptionElement extends ShapeCompo
22
22
 
23
23
  render() {
24
24
  const {checked, inputName, option} = this.p
25
+ const dataSet = useMemo(() => ({
26
+ component: "api-maker/utils/checkboxes/option",
27
+ name: inputName,
28
+ value: option[1]
29
+ }), [inputName, option[1]])
25
30
 
26
31
  return (
27
32
  <View >
28
33
  <Checkbox
29
34
  checked={checked}
30
- dataSet={{
31
- component: "api-maker/utils/checkboxes/option",
32
- name: inputName,
33
- value: option[1]
34
- }}
35
+ dataSet={dataSet}
35
36
  label={option[0]}
36
37
  onCheckedChange={this.tt.onChange}
37
38
  />
@@ -88,8 +89,8 @@ export default memo(shapeComponent(class ApiMakerUtilsCheckboxes extends ShapeCo
88
89
  const {errors} = digs(wrapperOpts, "errors")
89
90
 
90
91
  return (
91
- <View dataSet={{component: "api-maker/utils/checkboxes"}}>
92
- <Text style={{fontWeight: "bold"}}>
92
+ <View dataSet={this.rootViewDataSet ||= {component: "api-maker/utils/checkboxes"}}>
93
+ <Text style={this.textStyle ||= {fontWeight: "bold"}}>
93
94
  {this.tt.wrapperOpts.label}
94
95
  </Text>
95
96
  {this.props.options.map((option) =>
@@ -145,8 +146,6 @@ export default memo(shapeComponent(class ApiMakerUtilsCheckboxes extends ShapeCo
145
146
  this.setState({checkedOptions: newOptions})
146
147
  }
147
148
 
148
- console.log({checkedOptions: this.s.checkedOptions})
149
-
150
149
  if (this.props.onChange) {
151
150
  this.p.onChange({checked, option})
152
151
  }
@@ -36,10 +36,6 @@ export default memo(shapeComponent(class ApiMakerUtilsIcon extends BaseComponent
36
36
  return actualStylesList
37
37
  }, [stylesList, style])
38
38
 
39
- if (this.props.name == "person") {
40
- console.log("Icon", {props: this.props})
41
- }
42
-
43
39
  if (version == "FontAwesome") {
44
40
  return <FontAwesomeIcon style={actualStylesList} {...restProps} />
45
41
  } else if (version == "FontAwesome5") {
@@ -12,7 +12,7 @@ export default memo(shapeComponent(class ApiMakerUtilsInvalidFeedback extends Sh
12
12
 
13
13
  render() {
14
14
  return (
15
- <Text style={{color: "red"}}>
15
+ <Text style={this.textStyle ||= {color: "red"}}>
16
16
  {this.p.message}
17
17
  </Text>
18
18
  )
@@ -1,9 +1,9 @@
1
1
  import {Modal, Pressable, View} from "react-native"
2
+ import React, {useMemo} from "react"
2
3
  import BaseComponent from "../base-component"
3
4
  import Card from "./card"
4
5
  import Icon from "../utils/icon"
5
6
  import memo from "set-state-compare/src/memo"
6
- import React from "react"
7
7
  import {shapeComponent} from "set-state-compare/src/shape-component"
8
8
  import useBreakpoint from "../use-breakpoint"
9
9
 
@@ -11,12 +11,14 @@ export default memo(shapeComponent(class ApiMakerUtilsComponent extends BaseComp
11
11
  render() {
12
12
  const {xs, sm} = useBreakpoint()
13
13
  const {children, dataSet, ...restProps} = this.props
14
- const actualDataSet = Object.assign(
15
- {
16
- component: "api-maker/utils/modal"
17
- },
18
- dataSet
19
- )
14
+
15
+ const actualDataSet = useMemo(() =>
16
+ Object.assign(
17
+ {component: "api-maker/utils/modal"},
18
+ dataSet
19
+ )
20
+ , [dataSet])
21
+
20
22
  let width, maxWidth
21
23
 
22
24
  if (xs || sm) {
@@ -26,10 +28,12 @@ export default memo(shapeComponent(class ApiMakerUtilsComponent extends BaseComp
26
28
  maxWidth = 800
27
29
  }
28
30
 
31
+ const cardStyle = useMemo(() => ({width, maxWidth}), [width, maxWidth])
32
+
29
33
  return (
30
34
  <Modal dataSet={actualDataSet} {...restProps}>
31
35
  <View
32
- style={{
36
+ style={this.rootViewStyle ||= {
33
37
  alignItems: "center",
34
38
  justifyContent: "center",
35
39
  width: "100%",
@@ -39,7 +43,7 @@ export default memo(shapeComponent(class ApiMakerUtilsComponent extends BaseComp
39
43
  >
40
44
  <Card
41
45
  controls={this.cardHeaderControls()}
42
- style={{width, maxWidth}}
46
+ style={cardStyle}
43
47
  >
44
48
  {children}
45
49
  </Card>
@@ -50,7 +54,7 @@ export default memo(shapeComponent(class ApiMakerUtilsComponent extends BaseComp
50
54
 
51
55
  cardHeaderControls() {
52
56
  return (
53
- <Pressable onPress={this.tt.onModalClosePress} style={{marginLeft: "auto", padding: 5}}>
57
+ <Pressable onPress={this.tt.onModalClosePress} style={this.pressableStyle ||= {marginLeft: "auto", padding: 5}}>
54
58
  <Icon name="remove" />
55
59
  </Pressable>
56
60
  )
package/link.sh DELETED
@@ -1,8 +0,0 @@
1
- #!/bin/sh
2
-
3
- cd node_modules
4
-
5
- rm -rf react
6
- ln -s ../../../gratisbyggetilbud_rails/node_modules/react
7
-
8
- yarn link i18n-on-steroids