@kaspernj/api-maker 1.0.446 → 1.0.447
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.
- package/{.eslintrc.cjs → .eslintrc.js} +4 -0
- package/README.md +35 -0
- package/android/build.gradle +43 -0
- package/android/src/main/AndroidManifest.xml +2 -0
- package/android/src/main/java/expo/modules/api_maker/ApiMakerModule.kt +50 -0
- package/android/src/main/java/expo/modules/api_maker/ApiMakerView.kt +30 -0
- package/build/api.js +120 -0
- package/build/attribute-not-loaded-error.js +2 -0
- package/build/base-component.js +5 -0
- package/build/base-error.js +33 -0
- package/build/base-model/attribute.js +25 -0
- package/build/base-model/column.js +11 -0
- package/build/base-model/reflection.js +14 -0
- package/build/base-model/scope.js +11 -0
- package/build/base-model.js +828 -0
- package/build/bootstrap/attribute-row/index.js +105 -0
- package/build/bootstrap/attribute-rows.js +31 -0
- package/build/bootstrap/card.js +138 -0
- package/build/bootstrap/checkbox.js +97 -0
- package/build/bootstrap/checkboxes.js +183 -0
- package/build/bootstrap/index.js +2 -0
- package/build/bootstrap/input.js +128 -0
- package/build/bootstrap/invalid-feedback.js +27 -0
- package/build/bootstrap/paginate.js +150 -0
- package/build/bootstrap/radio-buttons.js +72 -0
- package/build/bootstrap/select.js +88 -0
- package/build/bootstrap/sort-link.js +130 -0
- package/build/cable-connection-pool.js +128 -0
- package/build/cable-subscription-pool.js +207 -0
- package/build/cable-subscription.js +21 -0
- package/build/cache-key-generator.js +81 -0
- package/build/can-can.js +134 -0
- package/build/channels-consumer.js +3 -0
- package/build/collection-loader.js +48 -0
- package/build/collection.js +279 -0
- package/build/command-submit-data.js +81 -0
- package/build/commands-pool.js +195 -0
- package/build/compose.js +9 -0
- package/build/config.js +53 -0
- package/build/custom-error.js +5 -0
- package/build/data-set-to-attributes.js +10 -0
- package/build/deserializer.js +56 -0
- package/build/destroy-error.js +5 -0
- package/build/devise.js +109 -0
- package/build/draggable-sort/controller.js +136 -0
- package/build/draggable-sort/index.js +114 -0
- package/build/draggable-sort/item.js +188 -0
- package/build/error-logger.js +101 -0
- package/build/error-messages.js +13 -0
- package/build/event-connection.js +32 -0
- package/build/event-model-class.js +24 -0
- package/build/events.js +5 -0
- package/build/form.js +83 -0
- package/build/index.js +3 -0
- package/build/inputs/attachment.js +121 -0
- package/build/inputs/auto-submit.js +36 -0
- package/build/inputs/checkbox.js +145 -0
- package/build/inputs/checkboxes.js +111 -0
- package/build/inputs/id-for-component.js +15 -0
- package/build/inputs/input-wrapper.js +18 -0
- package/build/inputs/input.js +230 -0
- package/build/inputs/money.js +179 -0
- package/build/inputs/name-for-component.js +13 -0
- package/build/inputs/select.js +92 -0
- package/build/instance-of-class-name.js +23 -0
- package/build/key-value-store.js +53 -0
- package/build/link.js +68 -0
- package/build/logger.js +30 -0
- package/build/modal.js +37 -0
- package/build/model-class-require.js +13 -0
- package/build/model-events.js +30 -0
- package/build/model-name.js +28 -0
- package/build/model-prop-type.js +101 -0
- package/build/model-recipes-loader.js +32 -0
- package/build/model-recipes-model-loader.js +357 -0
- package/build/models-response-reader.js +40 -0
- package/build/models.js +8 -0
- package/build/money-formatter.js +77 -0
- package/build/not-loaded-error.js +2 -0
- package/build/params.js +60 -0
- package/build/preloaded.js +38 -0
- package/build/resize-observer.js +11 -0
- package/build/result.js +13 -0
- package/build/router/route.js +262 -0
- package/build/router/switch.js +72 -0
- package/build/router.js +57 -0
- package/build/routes-native.js +202 -0
- package/build/routes.js +50 -0
- package/build/run-last.js +35 -0
- package/build/serializer.js +63 -0
- package/build/services.js +20 -0
- package/build/session-status-updater.js +126 -0
- package/build/source-maps-loader.js +171 -0
- package/build/super-admin/config-reader.js +84 -0
- package/build/super-admin/edit-page/edit-attribute-checkbox.js +85 -0
- package/build/super-admin/edit-page/edit-attribute-content.js +54 -0
- package/build/super-admin/edit-page/edit-attribute-input.js +79 -0
- package/build/super-admin/edit-page/edit-attribute.js +76 -0
- package/build/super-admin/edit-page.js +120 -0
- package/build/super-admin/has-edit-config.js +12 -0
- package/build/super-admin/index-page.js +24 -0
- package/build/super-admin/index.js +180 -0
- package/build/super-admin/layout/header/index.js +151 -0
- package/build/super-admin/layout/index.js +109 -0
- package/build/super-admin/layout/menu/index.js +93 -0
- package/build/super-admin/layout/menu/menu-content.js +40 -0
- package/build/super-admin/layout/menu/menu-item.js +83 -0
- package/build/super-admin/layout/no-access.js +25 -0
- package/build/super-admin/model-class-table.js +61 -0
- package/build/super-admin/models.js +8 -0
- package/build/super-admin/show-nav.js +49 -0
- package/build/super-admin/show-page/belongs-to-attribute-row.js +28 -0
- package/build/super-admin/show-page/index.js +141 -0
- package/build/super-admin/show-reflection-actions.js +47 -0
- package/build/super-admin/show-reflection-link.js +46 -0
- package/build/super-admin/show-reflection-page.js +47 -0
- package/build/table/column-content.js +112 -0
- package/build/table/column-identifier.js +18 -0
- package/build/table/column-visible.js +7 -0
- package/build/table/components/column.js +20 -0
- package/build/table/components/flat-list.js +20 -0
- package/build/table/components/header.js +25 -0
- package/build/table/components/row.js +25 -0
- package/build/table/filters/attribute-element.js +43 -0
- package/build/table/filters/filter-form.js +392 -0
- package/build/table/filters/filter.js +89 -0
- package/build/table/filters/index.js +182 -0
- package/build/table/filters/load-search-modal.js +174 -0
- package/build/table/filters/reflection-element.js +36 -0
- package/build/table/filters/save-search-modal.js +86 -0
- package/build/table/filters/scope-element.js +41 -0
- package/build/table/header-column-content.js +67 -0
- package/build/table/header-column.js +144 -0
- package/build/table/header-select.js +104 -0
- package/build/table/model-callback-args.js +10 -0
- package/build/table/model-column.js +87 -0
- package/build/table/model-row.js +179 -0
- package/build/table/select-calculator.js +63 -0
- package/build/table/settings/column-row.js +97 -0
- package/build/table/settings/download-action.js +78 -0
- package/build/table/settings/index.js +92 -0
- package/build/table/table-settings.js +219 -0
- package/build/table/table.js +972 -0
- package/build/table/use-sorting.js +34 -0
- package/build/table/widths.js +75 -0
- package/build/table/worker-plugins-check-all-checkbox.js +125 -0
- package/build/table/worker-plugins-checkbox.js +115 -0
- package/build/translated-attributes.js +10 -0
- package/build/translated-collections.js +11 -0
- package/build/updated-attribute.js +76 -0
- package/build/url-encode.js +15 -0
- package/build/use-breakpoint.js +44 -0
- package/build/use-can-can.js +55 -0
- package/build/use-collection.js +225 -0
- package/build/use-created-event.js +52 -0
- package/build/use-current-user.js +73 -0
- package/build/use-destroyed-event.js +60 -0
- package/build/use-event-emitter.js +13 -0
- package/build/use-event-listener.js +16 -0
- package/build/use-input.js +140 -0
- package/build/use-model-event.js +60 -0
- package/build/use-model.js +169 -0
- package/build/use-resize-observer.js +23 -0
- package/build/use-router.js +102 -0
- package/build/use-screen-layout.js +39 -0
- package/build/use-updated-event.js +60 -0
- package/build/use-validation-errors.js +30 -0
- package/build/utils/card.js +51 -0
- package/build/utils/checkbox.js +48 -0
- package/build/utils/default-style.js +18 -0
- package/build/utils/modal.js +61 -0
- package/build/utils/text.js +18 -0
- package/build/validation-error.js +28 -0
- package/build/validation-errors.js +98 -0
- package/build/with-collection.js +13 -0
- package/build/with-current-user.js +9 -0
- package/build/with-model.js +14 -0
- package/build/with-router.js +21 -0
- package/expo-module.config.json +17 -0
- package/ios/ApiMaker.podspec +29 -0
- package/ios/ApiMakerModule.swift +48 -0
- package/ios/ApiMakerView.swift +38 -0
- package/package.json +35 -15
- package/src/{api.mjs → api.js} +5 -5
- package/src/{base-error.mjs → base-error.js} +1 -1
- package/src/base-model/{attribute.mjs → attribute.js} +1 -1
- package/src/base-model/{reflection.mjs → reflection.js} +1 -1
- package/src/{base-model.mjs → base-model.js} +14 -14
- package/src/bootstrap/attribute-row/index.jsx +2 -2
- package/src/bootstrap/attribute-rows.jsx +1 -1
- package/src/bootstrap/card.jsx +1 -1
- package/src/bootstrap/checkbox.jsx +1 -1
- package/src/bootstrap/checkboxes.jsx +1 -1
- package/src/bootstrap/input.jsx +1 -1
- package/src/bootstrap/paginate.jsx +2 -2
- package/src/bootstrap/sort-link.jsx +3 -3
- package/src/{cable-connection-pool.mjs → cable-connection-pool.js} +3 -3
- package/src/{cable-subscription-pool.mjs → cable-subscription-pool.js} +4 -4
- package/src/{cable-subscription.mjs → cable-subscription.js} +1 -1
- package/src/{can-can.mjs → can-can.js} +1 -1
- package/src/collection-loader.jsx +2 -2
- package/src/{collection.mjs → collection.js} +3 -3
- package/src/{commands-pool.mjs → commands-pool.js} +11 -11
- package/src/{custom-error.mjs → custom-error.js} +1 -1
- package/src/{deserializer.mjs → deserializer.js} +2 -2
- package/src/{destroy-error.mjs → destroy-error.js} +1 -1
- package/src/{devise.mjs → devise.js} +5 -9
- package/src/draggable-sort/index.jsx +3 -3
- package/src/draggable-sort/item.jsx +2 -2
- package/src/{error-logger.mjs → error-logger.js} +1 -1
- package/src/event-connection.jsx +1 -1
- package/src/event-model-class.jsx +1 -1
- package/src/form.jsx +1 -1
- package/src/index.js +3 -0
- package/src/inputs/attachment.jsx +2 -2
- package/src/inputs/checkbox.jsx +7 -6
- package/src/inputs/checkboxes.jsx +1 -1
- package/src/inputs/input-wrapper.jsx +1 -1
- package/src/inputs/input.jsx +8 -7
- package/src/inputs/money.jsx +3 -3
- package/src/inputs/select.jsx +1 -1
- package/src/{key-value-store.mjs → key-value-store.js} +1 -1
- package/src/link.jsx +2 -2
- package/src/modal.jsx +1 -1
- package/src/{model-class-require.mjs → model-class-require.js} +4 -2
- package/src/{model-events.mjs → model-events.js} +1 -1
- package/src/{model-name.mjs → model-name.js} +1 -1
- package/src/{model-recipes-loader.mjs → model-recipes-loader.js} +1 -1
- package/src/{model-recipes-model-loader.mjs → model-recipes-model-loader.js} +2 -2
- package/src/{models-response-reader.mjs → models-response-reader.js} +2 -2
- package/src/models.js +7 -0
- package/src/{models.mjs.erb → models.js.erb} +1 -1
- package/src/{params.mjs → params.js} +2 -2
- package/src/{preloaded.mjs → preloaded.js} +1 -1
- package/src/resize-observer.jsx +1 -1
- package/src/router/route.jsx +1 -1
- package/src/router/switch.jsx +1 -1
- package/src/router.jsx +1 -1
- package/src/{routes-native.mjs → routes-native.js} +1 -1
- package/src/{services.mjs → services.js} +1 -1
- package/src/{session-status-updater.mjs → session-status-updater.js} +3 -3
- package/src/{source-maps-loader.mjs → source-maps-loader.js} +1 -1
- package/src/super-admin/edit-page/edit-attribute-checkbox.jsx +1 -1
- package/src/super-admin/edit-page/edit-attribute-content.jsx +1 -1
- package/src/super-admin/edit-page/edit-attribute-input.jsx +1 -1
- package/src/super-admin/edit-page/edit-attribute.jsx +1 -1
- package/src/super-admin/edit-page.jsx +2 -2
- package/src/super-admin/has-edit-config.js +1 -1
- package/src/super-admin/index-page.jsx +1 -1
- package/src/super-admin/index.jsx +7 -7
- package/src/super-admin/layout/header/index.jsx +2 -2
- package/src/super-admin/layout/index.jsx +3 -3
- package/src/super-admin/layout/menu/index.jsx +3 -3
- package/src/super-admin/layout/menu/menu-content.jsx +2 -2
- package/src/super-admin/layout/menu/{menu-item/index.jsx → menu-item.jsx} +5 -6
- package/src/super-admin/layout/no-access.jsx +2 -2
- package/src/super-admin/model-class-table.jsx +3 -3
- package/src/super-admin/models.js +1 -1
- package/src/super-admin/show-nav.jsx +2 -2
- package/src/super-admin/show-page/belongs-to-attribute-row.jsx +1 -1
- package/src/super-admin/show-page/index.jsx +2 -2
- package/src/super-admin/show-reflection-actions.jsx +1 -1
- package/src/super-admin/show-reflection-link.jsx +1 -1
- package/src/super-admin/show-reflection-page.jsx +1 -1
- package/src/table/column-content.jsx +1 -1
- package/src/table/filters/filter-form.jsx +1 -1
- package/src/table/filters/index.jsx +5 -3
- package/src/table/filters/load-search-modal.jsx +6 -4
- package/src/table/filters/save-search-modal.jsx +4 -4
- package/src/table/header-select.jsx +1 -1
- package/src/table/model-column.jsx +1 -1
- package/src/table/model-row.jsx +2 -2
- package/src/table/{select-calculator.mjs → select-calculator.js} +1 -1
- package/src/table/settings/column-row.jsx +2 -2
- package/src/table/settings/download-action.jsx +3 -3
- package/src/table/settings/index.jsx +3 -3
- package/src/table/table-settings.js +5 -4
- package/src/table/table.jsx +8 -8
- package/src/table/{use-sorting.mjs → use-sorting.js} +1 -1
- package/src/table/worker-plugins-check-all-checkbox.jsx +2 -2
- package/src/table/worker-plugins-checkbox.jsx +2 -2
- package/src/{translated-collections.mjs → translated-collections.js} +1 -1
- package/src/updated-attribute.jsx +1 -1
- package/src/{use-breakpoint.mjs → use-breakpoint.js} +2 -2
- package/src/use-can-can.js +55 -0
- package/src/{use-collection.mjs → use-collection.js} +4 -4
- package/src/{use-created-event.mjs → use-created-event.js} +2 -2
- package/src/{use-current-user.mjs → use-current-user.js} +6 -5
- package/src/{use-destroyed-event.mjs → use-destroyed-event.js} +2 -2
- package/src/{use-input.mjs → use-input.js} +5 -5
- package/src/use-model-event.js +2 -2
- package/src/{use-model.mjs → use-model.js} +4 -4
- package/src/{use-resize-observer.mjs → use-resize-observer.js} +1 -1
- package/src/use-router.jsx +2 -2
- package/src/{use-updated-event.mjs → use-updated-event.js} +2 -2
- package/src/{use-validation-errors.mjs → use-validation-errors.js} +3 -3
- package/src/utils/checkbox.jsx +2 -2
- package/src/{validation-error.mjs → validation-error.js} +1 -1
- package/src/{validation-errors.mjs → validation-errors.js} +1 -1
- package/src/with-current-user.jsx +1 -1
- package/src/with-model.jsx +1 -1
- package/__tests__/base-model.test.mjs +0 -71
- package/__tests__/cable-connection-pool.test.mjs +0 -227
- package/__tests__/cable-subscription-pool.test.mjs +0 -27
- package/__tests__/can-can.test.mjs +0 -34
- package/__tests__/collection.test.mjs +0 -51
- package/__tests__/custom-error.test.mjs +0 -13
- package/__tests__/model-name.test.mjs +0 -34
- package/__tests__/model-prop-type.test.mjs +0 -113
- package/__tests__/params.test.mjs +0 -40
- package/__tests__/routes-native.test.mjs +0 -104
- package/__tests__/routes.test.mjs +0 -47
- package/__tests__/serializer.test.mjs +0 -30
- package/__tests__/support/task.mjs +0 -27
- package/__tests__/support/user.mjs +0 -32
- package/index.js +0 -1
- package/jest.config.js +0 -9
- package/src/event-created.jsx +0 -12
- package/src/event-destroyed.jsx +0 -25
- package/src/event-emitter-listener.jsx +0 -10
- package/src/event-listener.jsx +0 -25
- package/src/event-updated.jsx +0 -27
- package/src/super-admin/layout/menu/menu-item/style.scss +0 -10
- package/src/use-can-can.mjs +0 -48
- package/src/with-can-can.jsx +0 -12
- package/webpack.config.js +0 -15
- /package/src/{attribute-not-loaded-error.mjs → attribute-not-loaded-error.js} +0 -0
- /package/src/base-model/{column.mjs → column.js} +0 -0
- /package/src/base-model/{scope.mjs → scope.js} +0 -0
- /package/src/{cache-key-generator.mjs → cache-key-generator.js} +0 -0
- /package/src/{channels-consumer.mjs → channels-consumer.js} +0 -0
- /package/src/{command-submit-data.mjs → command-submit-data.js} +0 -0
- /package/src/{config.mjs → config.js} +0 -0
- /package/src/{data-set-to-attributes.mjs → data-set-to-attributes.js} +0 -0
- /package/src/draggable-sort/{controller.mjs → controller.js} +0 -0
- /package/src/{error-messages.mjs → error-messages.js} +0 -0
- /package/src/{events.mjs → events.js} +0 -0
- /package/src/inputs/{auto-submit.mjs → auto-submit.js} +0 -0
- /package/src/inputs/{id-for-component.mjs → id-for-component.js} +0 -0
- /package/src/inputs/{name-for-component.mjs → name-for-component.js} +0 -0
- /package/src/{instance-of-class-name.mjs → instance-of-class-name.js} +0 -0
- /package/src/{logger.mjs → logger.js} +0 -0
- /package/src/{model-prop-type.mjs → model-prop-type.js} +0 -0
- /package/src/{money-formatter.mjs → money-formatter.js} +0 -0
- /package/src/{not-loaded-error.mjs → not-loaded-error.js} +0 -0
- /package/src/{result.mjs → result.js} +0 -0
- /package/src/{routes.mjs → routes.js} +0 -0
- /package/src/{run-last.mjs → run-last.js} +0 -0
- /package/src/{serializer.mjs → serializer.js} +0 -0
- /package/src/table/{column-identifier.mjs → column-identifier.js} +0 -0
- /package/src/table/{column-visible.mjs → column-visible.js} +0 -0
- /package/src/table/{model-callback-args.mjs → model-callback-args.js} +0 -0
- /package/src/{translated-collections-data.mjs.erb → translated-collections-data.js.erb} +0 -0
- /package/src/{url-encode.mjs → url-encode.js} +0 -0
- /package/src/{use-event-emitter.mjs → use-event-emitter.js} +0 -0
- /package/src/{use-event-listener.mjs → use-event-listener.js} +0 -0
- /package/src/{use-screen-layout.mjs → use-screen-layout.js} +0 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { useCallback, useLayoutEffect, useMemo } from "react";
|
|
2
|
+
import debounceFunction from "debounce";
|
|
3
|
+
import ModelEvents from "./model-events";
|
|
4
|
+
import useShape from "set-state-compare/src/use-shape";
|
|
5
|
+
const apiMakerUseUpdatedEvent = (model, onUpdated, props = {}) => {
|
|
6
|
+
const {
|
|
7
|
+
active = true,
|
|
8
|
+
debounce,
|
|
9
|
+
onConnected,
|
|
10
|
+
...restProps
|
|
11
|
+
} = props;
|
|
12
|
+
if (Object.keys(restProps).length > 0) {
|
|
13
|
+
throw new Error(`Unknown props given to useUpdatedEvent: ${Object.keys(restProps).join(", ")}`);
|
|
14
|
+
}
|
|
15
|
+
const s = useShape({
|
|
16
|
+
active,
|
|
17
|
+
debounce,
|
|
18
|
+
model,
|
|
19
|
+
onUpdated
|
|
20
|
+
});
|
|
21
|
+
const debounceCallback = useMemo(() => {
|
|
22
|
+
if (typeof debounce == "number") {
|
|
23
|
+
return debounceFunction(s.p.onUpdated, debounce);
|
|
24
|
+
} else {
|
|
25
|
+
return debounceFunction(s.p.onUpdated);
|
|
26
|
+
}
|
|
27
|
+
}, [debounce]);
|
|
28
|
+
s.updateMeta({
|
|
29
|
+
debounceCallback
|
|
30
|
+
});
|
|
31
|
+
const onUpdatedCallback = useCallback((...args) => {
|
|
32
|
+
if (!s.p.active) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
if (s.p.debounce) {
|
|
36
|
+
s.m.debounceCallback(...args);
|
|
37
|
+
} else {
|
|
38
|
+
s.p.onUpdated(...args);
|
|
39
|
+
}
|
|
40
|
+
}, []);
|
|
41
|
+
useLayoutEffect(() => {
|
|
42
|
+
let connectUpdated, onConnectedListener;
|
|
43
|
+
if (model) {
|
|
44
|
+
connectUpdated = ModelEvents.connectUpdated(model, onUpdatedCallback);
|
|
45
|
+
if (onConnected) {
|
|
46
|
+
onConnectedListener = connectUpdated.events.addListener("connected", onConnected);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return () => {
|
|
50
|
+
if (onConnectedListener) {
|
|
51
|
+
connectUpdated.events.removeListener("connected", onConnected);
|
|
52
|
+
}
|
|
53
|
+
if (connectUpdated) {
|
|
54
|
+
connectUpdated.unsubscribe();
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
}, [model?.id()]);
|
|
58
|
+
};
|
|
59
|
+
export default apiMakerUseUpdatedEvent;
|
|
60
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDYWxsYmFjayIsInVzZUxheW91dEVmZmVjdCIsInVzZU1lbW8iLCJkZWJvdW5jZUZ1bmN0aW9uIiwiTW9kZWxFdmVudHMiLCJ1c2VTaGFwZSIsImFwaU1ha2VyVXNlVXBkYXRlZEV2ZW50IiwibW9kZWwiLCJvblVwZGF0ZWQiLCJwcm9wcyIsImFjdGl2ZSIsImRlYm91bmNlIiwib25Db25uZWN0ZWQiLCJyZXN0UHJvcHMiLCJPYmplY3QiLCJrZXlzIiwibGVuZ3RoIiwiRXJyb3IiLCJqb2luIiwicyIsImRlYm91bmNlQ2FsbGJhY2siLCJwIiwidXBkYXRlTWV0YSIsIm9uVXBkYXRlZENhbGxiYWNrIiwiYXJncyIsIm0iLCJjb25uZWN0VXBkYXRlZCIsIm9uQ29ubmVjdGVkTGlzdGVuZXIiLCJldmVudHMiLCJhZGRMaXN0ZW5lciIsInJlbW92ZUxpc3RlbmVyIiwidW5zdWJzY3JpYmUiLCJpZCJdLCJzb3VyY2VzIjpbIi4uL3NyYy91c2UtdXBkYXRlZC1ldmVudC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3VzZUNhbGxiYWNrLCB1c2VMYXlvdXRFZmZlY3QsIHVzZU1lbW99IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgZGVib3VuY2VGdW5jdGlvbiBmcm9tIFwiZGVib3VuY2VcIlxuaW1wb3J0IE1vZGVsRXZlbnRzIGZyb20gXCIuL21vZGVsLWV2ZW50c1wiXG5pbXBvcnQgdXNlU2hhcGUgZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy91c2Utc2hhcGVcIlxuXG5jb25zdCBhcGlNYWtlclVzZVVwZGF0ZWRFdmVudCA9IChtb2RlbCwgb25VcGRhdGVkLCBwcm9wcyA9IHt9KSA9PiB7XG4gIGNvbnN0IHthY3RpdmUgPSB0cnVlLCBkZWJvdW5jZSwgb25Db25uZWN0ZWQsIC4uLnJlc3RQcm9wc30gPSBwcm9wc1xuXG4gIGlmIChPYmplY3Qua2V5cyhyZXN0UHJvcHMpLmxlbmd0aCA+IDApIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gcHJvcHMgZ2l2ZW4gdG8gdXNlVXBkYXRlZEV2ZW50OiAke09iamVjdC5rZXlzKHJlc3RQcm9wcykuam9pbihcIiwgXCIpfWApXG4gIH1cblxuICBjb25zdCBzID0gdXNlU2hhcGUoe2FjdGl2ZSwgZGVib3VuY2UsIG1vZGVsLCBvblVwZGF0ZWR9KVxuXG4gIGNvbnN0IGRlYm91bmNlQ2FsbGJhY2sgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAodHlwZW9mIGRlYm91bmNlID09IFwibnVtYmVyXCIpIHtcbiAgICAgIHJldHVybiBkZWJvdW5jZUZ1bmN0aW9uKHMucC5vblVwZGF0ZWQsIGRlYm91bmNlKVxuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gZGVib3VuY2VGdW5jdGlvbihzLnAub25VcGRhdGVkKVxuICAgIH1cbiAgfSwgW2RlYm91bmNlXSlcblxuICBzLnVwZGF0ZU1ldGEoe2RlYm91bmNlQ2FsbGJhY2t9KVxuXG4gIGNvbnN0IG9uVXBkYXRlZENhbGxiYWNrID0gdXNlQ2FsbGJhY2soKC4uLmFyZ3MpID0+IHtcbiAgICBpZiAoIXMucC5hY3RpdmUpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmIChzLnAuZGVib3VuY2UpIHtcbiAgICAgIHMubS5kZWJvdW5jZUNhbGxiYWNrKC4uLmFyZ3MpXG4gICAgfSBlbHNlIHtcbiAgICAgIHMucC5vblVwZGF0ZWQoLi4uYXJncylcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgbGV0IGNvbm5lY3RVcGRhdGVkLCBvbkNvbm5lY3RlZExpc3RlbmVyXG5cbiAgICBpZiAobW9kZWwpIHtcbiAgICAgIGNvbm5lY3RVcGRhdGVkID0gTW9kZWxFdmVudHMuY29ubmVjdFVwZGF0ZWQobW9kZWwsIG9uVXBkYXRlZENhbGxiYWNrKVxuXG4gICAgICBpZiAob25Db25uZWN0ZWQpIHtcbiAgICAgICAgb25Db25uZWN0ZWRMaXN0ZW5lciA9IGNvbm5lY3RVcGRhdGVkLmV2ZW50cy5hZGRMaXN0ZW5lcihcImNvbm5lY3RlZFwiLCBvbkNvbm5lY3RlZClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgaWYgKG9uQ29ubmVjdGVkTGlzdGVuZXIpIHtcbiAgICAgICAgY29ubmVjdFVwZGF0ZWQuZXZlbnRzLnJlbW92ZUxpc3RlbmVyKFwiY29ubmVjdGVkXCIsIG9uQ29ubmVjdGVkKVxuICAgICAgfVxuXG4gICAgICBpZiAoY29ubmVjdFVwZGF0ZWQpIHtcbiAgICAgICAgY29ubmVjdFVwZGF0ZWQudW5zdWJzY3JpYmUoKVxuICAgICAgfVxuICAgIH1cbiAgfSwgW21vZGVsPy5pZCgpXSlcbn1cblxuZXhwb3J0IGRlZmF1bHQgYXBpTWFrZXJVc2VVcGRhdGVkRXZlbnRcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUUEsV0FBVyxFQUFFQyxlQUFlLEVBQUVDLE9BQU8sUUFBTyxPQUFPO0FBQzNELE9BQU9DLGdCQUFnQixNQUFNLFVBQVU7QUFDdkMsT0FBT0MsV0FBVyxNQUFNLGdCQUFnQjtBQUN4QyxPQUFPQyxRQUFRLE1BQU0saUNBQWlDO0FBRXRELE1BQU1DLHVCQUF1QixHQUFHQSxDQUFDQyxLQUFLLEVBQUVDLFNBQVMsRUFBRUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLO0VBQ2hFLE1BQU07SUFBQ0MsTUFBTSxHQUFHLElBQUk7SUFBRUMsUUFBUTtJQUFFQyxXQUFXO0lBQUUsR0FBR0M7RUFBUyxDQUFDLEdBQUdKLEtBQUs7RUFFbEUsSUFBSUssTUFBTSxDQUFDQyxJQUFJLENBQUNGLFNBQVMsQ0FBQyxDQUFDRyxNQUFNLEdBQUcsQ0FBQyxFQUFFO0lBQ3JDLE1BQU0sSUFBSUMsS0FBSyxDQUFDLDJDQUEyQ0gsTUFBTSxDQUFDQyxJQUFJLENBQUNGLFNBQVMsQ0FBQyxDQUFDSyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztFQUNqRztFQUVBLE1BQU1DLENBQUMsR0FBR2QsUUFBUSxDQUFDO0lBQUNLLE1BQU07SUFBRUMsUUFBUTtJQUFFSixLQUFLO0lBQUVDO0VBQVMsQ0FBQyxDQUFDO0VBRXhELE1BQU1ZLGdCQUFnQixHQUFHbEIsT0FBTyxDQUFDLE1BQU07SUFDckMsSUFBSSxPQUFPUyxRQUFRLElBQUksUUFBUSxFQUFFO01BQy9CLE9BQU9SLGdCQUFnQixDQUFDZ0IsQ0FBQyxDQUFDRSxDQUFDLENBQUNiLFNBQVMsRUFBRUcsUUFBUSxDQUFDO0lBQ2xELENBQUMsTUFBTTtNQUNMLE9BQU9SLGdCQUFnQixDQUFDZ0IsQ0FBQyxDQUFDRSxDQUFDLENBQUNiLFNBQVMsQ0FBQztJQUN4QztFQUNGLENBQUMsRUFBRSxDQUFDRyxRQUFRLENBQUMsQ0FBQztFQUVkUSxDQUFDLENBQUNHLFVBQVUsQ0FBQztJQUFDRjtFQUFnQixDQUFDLENBQUM7RUFFaEMsTUFBTUcsaUJBQWlCLEdBQUd2QixXQUFXLENBQUMsQ0FBQyxHQUFHd0IsSUFBSSxLQUFLO0lBQ2pELElBQUksQ0FBQ0wsQ0FBQyxDQUFDRSxDQUFDLENBQUNYLE1BQU0sRUFBRTtNQUNmO0lBQ0Y7SUFFQSxJQUFJUyxDQUFDLENBQUNFLENBQUMsQ0FBQ1YsUUFBUSxFQUFFO01BQ2hCUSxDQUFDLENBQUNNLENBQUMsQ0FBQ0wsZ0JBQWdCLENBQUMsR0FBR0ksSUFBSSxDQUFDO0lBQy9CLENBQUMsTUFBTTtNQUNMTCxDQUFDLENBQUNFLENBQUMsQ0FBQ2IsU0FBUyxDQUFDLEdBQUdnQixJQUFJLENBQUM7SUFDeEI7RUFDRixDQUFDLEVBQUUsRUFBRSxDQUFDO0VBRU52QixlQUFlLENBQUMsTUFBTTtJQUNwQixJQUFJeUIsY0FBYyxFQUFFQyxtQkFBbUI7SUFFdkMsSUFBSXBCLEtBQUssRUFBRTtNQUNUbUIsY0FBYyxHQUFHdEIsV0FBVyxDQUFDc0IsY0FBYyxDQUFDbkIsS0FBSyxFQUFFZ0IsaUJBQWlCLENBQUM7TUFFckUsSUFBSVgsV0FBVyxFQUFFO1FBQ2ZlLG1CQUFtQixHQUFHRCxjQUFjLENBQUNFLE1BQU0sQ0FBQ0MsV0FBVyxDQUFDLFdBQVcsRUFBRWpCLFdBQVcsQ0FBQztNQUNuRjtJQUNGO0lBRUEsT0FBTyxNQUFNO01BQ1gsSUFBSWUsbUJBQW1CLEVBQUU7UUFDdkJELGNBQWMsQ0FBQ0UsTUFBTSxDQUFDRSxjQUFjLENBQUMsV0FBVyxFQUFFbEIsV0FBVyxDQUFDO01BQ2hFO01BRUEsSUFBSWMsY0FBYyxFQUFFO1FBQ2xCQSxjQUFjLENBQUNLLFdBQVcsQ0FBQyxDQUFDO01BQzlCO0lBQ0YsQ0FBQztFQUNILENBQUMsRUFBRSxDQUFDeEIsS0FBSyxFQUFFeUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ25CLENBQUM7QUFFRCxlQUFlMUIsdUJBQXVCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import events from "./events";
|
|
2
|
+
import { useCallback } from "react";
|
|
3
|
+
import useEventEmitter from "./use-event-emitter";
|
|
4
|
+
import useShape from "set-state-compare/src/use-shape";
|
|
5
|
+
const useValidationErrors = callback => {
|
|
6
|
+
const s = useShape({
|
|
7
|
+
callback
|
|
8
|
+
});
|
|
9
|
+
s.useStates({
|
|
10
|
+
validationErrors: []
|
|
11
|
+
});
|
|
12
|
+
const onValidationErrors = useCallback(validationErrors => {
|
|
13
|
+
const matchedValidationErrors = [];
|
|
14
|
+
for (const validationError of validationErrors.getValidationErrors()) {
|
|
15
|
+
if (s.p.callback(validationError)) {
|
|
16
|
+
validationError.setHandled();
|
|
17
|
+
matchedValidationErrors.push(validationError);
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
s.set({
|
|
21
|
+
validationErrors: matchedValidationErrors
|
|
22
|
+
});
|
|
23
|
+
}, []);
|
|
24
|
+
useEventEmitter(events, "onValidationErrors", onValidationErrors);
|
|
25
|
+
return {
|
|
26
|
+
validationErrors: s.s.validationErrors
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export default useValidationErrors;
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJldmVudHMiLCJ1c2VDYWxsYmFjayIsInVzZUV2ZW50RW1pdHRlciIsInVzZVNoYXBlIiwidXNlVmFsaWRhdGlvbkVycm9ycyIsImNhbGxiYWNrIiwicyIsInVzZVN0YXRlcyIsInZhbGlkYXRpb25FcnJvcnMiLCJvblZhbGlkYXRpb25FcnJvcnMiLCJtYXRjaGVkVmFsaWRhdGlvbkVycm9ycyIsInZhbGlkYXRpb25FcnJvciIsImdldFZhbGlkYXRpb25FcnJvcnMiLCJwIiwic2V0SGFuZGxlZCIsInB1c2giLCJzZXQiXSwic291cmNlcyI6WyIuLi9zcmMvdXNlLXZhbGlkYXRpb24tZXJyb3JzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBldmVudHMgZnJvbSBcIi4vZXZlbnRzXCJcbmltcG9ydCB7dXNlQ2FsbGJhY2t9IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgdXNlRXZlbnRFbWl0dGVyIGZyb20gXCIuL3VzZS1ldmVudC1lbWl0dGVyXCJcbmltcG9ydCB1c2VTaGFwZSBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL3VzZS1zaGFwZVwiXG5cbmNvbnN0IHVzZVZhbGlkYXRpb25FcnJvcnMgPSAoY2FsbGJhY2spID0+IHtcbiAgY29uc3QgcyA9IHVzZVNoYXBlKHtjYWxsYmFja30pXG5cbiAgcy51c2VTdGF0ZXMoe3ZhbGlkYXRpb25FcnJvcnM6IFtdfSlcblxuICBjb25zdCBvblZhbGlkYXRpb25FcnJvcnMgPSB1c2VDYWxsYmFjaygodmFsaWRhdGlvbkVycm9ycykgPT4ge1xuICAgIGNvbnN0IG1hdGNoZWRWYWxpZGF0aW9uRXJyb3JzID0gW11cblxuICAgIGZvciAoY29uc3QgdmFsaWRhdGlvbkVycm9yIG9mIHZhbGlkYXRpb25FcnJvcnMuZ2V0VmFsaWRhdGlvbkVycm9ycygpKSB7XG4gICAgICBpZiAocy5wLmNhbGxiYWNrKHZhbGlkYXRpb25FcnJvcikpIHtcbiAgICAgICAgdmFsaWRhdGlvbkVycm9yLnNldEhhbmRsZWQoKVxuICAgICAgICBtYXRjaGVkVmFsaWRhdGlvbkVycm9ycy5wdXNoKHZhbGlkYXRpb25FcnJvcilcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzLnNldCh7XG4gICAgICB2YWxpZGF0aW9uRXJyb3JzOiBtYXRjaGVkVmFsaWRhdGlvbkVycm9yc1xuICAgIH0pXG4gIH0sIFtdKVxuXG4gIHVzZUV2ZW50RW1pdHRlcihldmVudHMsIFwib25WYWxpZGF0aW9uRXJyb3JzXCIsIG9uVmFsaWRhdGlvbkVycm9ycylcblxuICByZXR1cm4ge1xuICAgIHZhbGlkYXRpb25FcnJvcnM6IHMucy52YWxpZGF0aW9uRXJyb3JzXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlVmFsaWRhdGlvbkVycm9yc1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxNQUFNLE1BQU0sVUFBVTtBQUM3QixTQUFRQyxXQUFXLFFBQU8sT0FBTztBQUNqQyxPQUFPQyxlQUFlLE1BQU0scUJBQXFCO0FBQ2pELE9BQU9DLFFBQVEsTUFBTSxpQ0FBaUM7QUFFdEQsTUFBTUMsbUJBQW1CLEdBQUlDLFFBQVEsSUFBSztFQUN4QyxNQUFNQyxDQUFDLEdBQUdILFFBQVEsQ0FBQztJQUFDRTtFQUFRLENBQUMsQ0FBQztFQUU5QkMsQ0FBQyxDQUFDQyxTQUFTLENBQUM7SUFBQ0MsZ0JBQWdCLEVBQUU7RUFBRSxDQUFDLENBQUM7RUFFbkMsTUFBTUMsa0JBQWtCLEdBQUdSLFdBQVcsQ0FBRU8sZ0JBQWdCLElBQUs7SUFDM0QsTUFBTUUsdUJBQXVCLEdBQUcsRUFBRTtJQUVsQyxLQUFLLE1BQU1DLGVBQWUsSUFBSUgsZ0JBQWdCLENBQUNJLG1CQUFtQixDQUFDLENBQUMsRUFBRTtNQUNwRSxJQUFJTixDQUFDLENBQUNPLENBQUMsQ0FBQ1IsUUFBUSxDQUFDTSxlQUFlLENBQUMsRUFBRTtRQUNqQ0EsZUFBZSxDQUFDRyxVQUFVLENBQUMsQ0FBQztRQUM1QkosdUJBQXVCLENBQUNLLElBQUksQ0FBQ0osZUFBZSxDQUFDO01BQy9DO0lBQ0Y7SUFFQUwsQ0FBQyxDQUFDVSxHQUFHLENBQUM7TUFDSlIsZ0JBQWdCLEVBQUVFO0lBQ3BCLENBQUMsQ0FBQztFQUNKLENBQUMsRUFBRSxFQUFFLENBQUM7RUFFTlIsZUFBZSxDQUFDRixNQUFNLEVBQUUsb0JBQW9CLEVBQUVTLGtCQUFrQixDQUFDO0VBRWpFLE9BQU87SUFDTEQsZ0JBQWdCLEVBQUVGLENBQUMsQ0FBQ0EsQ0FBQyxDQUFDRTtFQUN4QixDQUFDO0FBQ0gsQ0FBQztBQUVELGVBQWVKLG1CQUFtQiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import BaseComponent from "../base-component";
|
|
2
|
+
import memo from "set-state-compare/src/memo";
|
|
3
|
+
import PropTypes from "prop-types";
|
|
4
|
+
import propTypesExact from "prop-types-exact";
|
|
5
|
+
import { shapeComponent } from "set-state-compare/src/shape-component";
|
|
6
|
+
import Text from "./text";
|
|
7
|
+
export default memo(shapeComponent(class ApiMakerUtilsCard extends BaseComponent {
|
|
8
|
+
static propTypes = propTypesExact({
|
|
9
|
+
children: PropTypes.node,
|
|
10
|
+
controls: PropTypes.node,
|
|
11
|
+
dataSet: PropTypes.object,
|
|
12
|
+
header: PropTypes.string,
|
|
13
|
+
style: PropTypes.object
|
|
14
|
+
});
|
|
15
|
+
render() {
|
|
16
|
+
const {
|
|
17
|
+
children,
|
|
18
|
+
controls,
|
|
19
|
+
dataSet,
|
|
20
|
+
header,
|
|
21
|
+
style
|
|
22
|
+
} = this.props;
|
|
23
|
+
const {
|
|
24
|
+
component,
|
|
25
|
+
...restDataSet
|
|
26
|
+
} = dataSet || {};
|
|
27
|
+
const actualDataSet = Object.assign({
|
|
28
|
+
component: classNames("api-maker/utils/card", component)
|
|
29
|
+
}, restDataSet);
|
|
30
|
+
const actualStyle = Object.assign({
|
|
31
|
+
backgroundColor: "#fff",
|
|
32
|
+
borderRadius: 15,
|
|
33
|
+
padding: 30
|
|
34
|
+
}, style);
|
|
35
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
36
|
+
dataSet: actualDataSet,
|
|
37
|
+
style: actualStyle
|
|
38
|
+
}, controls && /*#__PURE__*/React.createElement(View, {
|
|
39
|
+
style: {
|
|
40
|
+
position: "absolute",
|
|
41
|
+
top: 15,
|
|
42
|
+
right: 15
|
|
43
|
+
}
|
|
44
|
+
}, controls), header && /*#__PURE__*/React.createElement(Text, {
|
|
45
|
+
style: {
|
|
46
|
+
fontSize: 24
|
|
47
|
+
}
|
|
48
|
+
}, header), children);
|
|
49
|
+
}
|
|
50
|
+
}));
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlQ29tcG9uZW50IiwibWVtbyIsIlByb3BUeXBlcyIsInByb3BUeXBlc0V4YWN0Iiwic2hhcGVDb21wb25lbnQiLCJUZXh0IiwiQXBpTWFrZXJVdGlsc0NhcmQiLCJwcm9wVHlwZXMiLCJjaGlsZHJlbiIsIm5vZGUiLCJjb250cm9scyIsImRhdGFTZXQiLCJvYmplY3QiLCJoZWFkZXIiLCJzdHJpbmciLCJzdHlsZSIsInJlbmRlciIsInByb3BzIiwiY29tcG9uZW50IiwicmVzdERhdGFTZXQiLCJhY3R1YWxEYXRhU2V0IiwiT2JqZWN0IiwiYXNzaWduIiwiY2xhc3NOYW1lcyIsImFjdHVhbFN0eWxlIiwiYmFja2dyb3VuZENvbG9yIiwiYm9yZGVyUmFkaXVzIiwicGFkZGluZyIsIlJlYWN0IiwiY3JlYXRlRWxlbWVudCIsIlZpZXciLCJwb3NpdGlvbiIsInRvcCIsInJpZ2h0IiwiZm9udFNpemUiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvY2FyZC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvbWVtb1wiXG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gXCJwcm9wLXR5cGVzXCJcbmltcG9ydCBwcm9wVHlwZXNFeGFjdCBmcm9tIFwicHJvcC10eXBlcy1leGFjdFwiXG5pbXBvcnQge3NoYXBlQ29tcG9uZW50fSBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL3NoYXBlLWNvbXBvbmVudFwiXG5pbXBvcnQgVGV4dCBmcm9tIFwiLi90ZXh0XCJcblxuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudChjbGFzcyBBcGlNYWtlclV0aWxzQ2FyZCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0gcHJvcFR5cGVzRXhhY3Qoe1xuICAgIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZSxcbiAgICBjb250cm9sczogUHJvcFR5cGVzLm5vZGUsXG4gICAgZGF0YVNldDogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBoZWFkZXI6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgc3R5bGU6IFByb3BUeXBlcy5vYmplY3RcbiAgfSlcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2NoaWxkcmVuLCBjb250cm9scywgZGF0YVNldCwgaGVhZGVyLCBzdHlsZX0gPSB0aGlzLnByb3BzXG4gICAgY29uc3Qge2NvbXBvbmVudCwgLi4ucmVzdERhdGFTZXR9ID0gZGF0YVNldCB8fCB7fVxuICAgIGNvbnN0IGFjdHVhbERhdGFTZXQgPSBPYmplY3QuYXNzaWduKFxuICAgICAge2NvbXBvbmVudDogY2xhc3NOYW1lcyhcImFwaS1tYWtlci91dGlscy9jYXJkXCIsIGNvbXBvbmVudCl9LFxuICAgICAgcmVzdERhdGFTZXRcbiAgICApXG4gICAgY29uc3QgYWN0dWFsU3R5bGUgPSBPYmplY3QuYXNzaWduKFxuICAgICAge1xuICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6IFwiI2ZmZlwiLFxuICAgICAgICBib3JkZXJSYWRpdXM6IDE1LFxuICAgICAgICBwYWRkaW5nOiAzMFxuICAgICAgfSxcbiAgICAgIHN0eWxlXG4gICAgKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxWaWV3IGRhdGFTZXQ9e2FjdHVhbERhdGFTZXR9IHN0eWxlPXthY3R1YWxTdHlsZX0+XG4gICAgICAgIHtjb250cm9scyAmJlxuICAgICAgICAgIDxWaWV3IHN0eWxlPXt7cG9zaXRpb246IFwiYWJzb2x1dGVcIiwgdG9wOiAxNSwgcmlnaHQ6IDE1fX0+XG4gICAgICAgICAgICB7Y29udHJvbHN9XG4gICAgICAgICAgPC9WaWV3PlxuICAgICAgICB9XG4gICAgICAgIHtoZWFkZXIgJiZcbiAgICAgICAgICA8VGV4dCBzdHlsZT17e2ZvbnRTaXplOiAyNH19PlxuICAgICAgICAgICAge2hlYWRlcn1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgIH1cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9WaWV3PlxuICAgIClcbiAgfVxufSkpXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLGFBQWEsTUFBTSxtQkFBbUI7QUFDN0MsT0FBT0MsSUFBSSxNQUFNLDRCQUE0QjtBQUM3QyxPQUFPQyxTQUFTLE1BQU0sWUFBWTtBQUNsQyxPQUFPQyxjQUFjLE1BQU0sa0JBQWtCO0FBQzdDLFNBQVFDLGNBQWMsUUFBTyx1Q0FBdUM7QUFDcEUsT0FBT0MsSUFBSSxNQUFNLFFBQVE7QUFFekIsZUFBZUosSUFBSSxDQUFDRyxjQUFjLENBQUMsTUFBTUUsaUJBQWlCLFNBQVNOLGFBQWEsQ0FBQztFQUMvRSxPQUFPTyxTQUFTLEdBQUdKLGNBQWMsQ0FBQztJQUNoQ0ssUUFBUSxFQUFFTixTQUFTLENBQUNPLElBQUk7SUFDeEJDLFFBQVEsRUFBRVIsU0FBUyxDQUFDTyxJQUFJO0lBQ3hCRSxPQUFPLEVBQUVULFNBQVMsQ0FBQ1UsTUFBTTtJQUN6QkMsTUFBTSxFQUFFWCxTQUFTLENBQUNZLE1BQU07SUFDeEJDLEtBQUssRUFBRWIsU0FBUyxDQUFDVTtFQUNuQixDQUFDLENBQUM7RUFFRkksTUFBTUEsQ0FBQSxFQUFHO0lBQ1AsTUFBTTtNQUFDUixRQUFRO01BQUVFLFFBQVE7TUFBRUMsT0FBTztNQUFFRSxNQUFNO01BQUVFO0lBQUssQ0FBQyxHQUFHLElBQUksQ0FBQ0UsS0FBSztJQUMvRCxNQUFNO01BQUNDLFNBQVM7TUFBRSxHQUFHQztJQUFXLENBQUMsR0FBR1IsT0FBTyxJQUFJLENBQUMsQ0FBQztJQUNqRCxNQUFNUyxhQUFhLEdBQUdDLE1BQU0sQ0FBQ0MsTUFBTSxDQUNqQztNQUFDSixTQUFTLEVBQUVLLFVBQVUsQ0FBQyxzQkFBc0IsRUFBRUwsU0FBUztJQUFDLENBQUMsRUFDMURDLFdBQ0YsQ0FBQztJQUNELE1BQU1LLFdBQVcsR0FBR0gsTUFBTSxDQUFDQyxNQUFNLENBQy9CO01BQ0VHLGVBQWUsRUFBRSxNQUFNO01BQ3ZCQyxZQUFZLEVBQUUsRUFBRTtNQUNoQkMsT0FBTyxFQUFFO0lBQ1gsQ0FBQyxFQUNEWixLQUNGLENBQUM7SUFFRCxvQkFDRWEsS0FBQSxDQUFBQyxhQUFBLENBQUNDLElBQUk7TUFBQ25CLE9BQU8sRUFBRVMsYUFBYztNQUFDTCxLQUFLLEVBQUVTO0lBQVksR0FDOUNkLFFBQVEsaUJBQ1BrQixLQUFBLENBQUFDLGFBQUEsQ0FBQ0MsSUFBSTtNQUFDZixLQUFLLEVBQUU7UUFBQ2dCLFFBQVEsRUFBRSxVQUFVO1FBQUVDLEdBQUcsRUFBRSxFQUFFO1FBQUVDLEtBQUssRUFBRTtNQUFFO0lBQUUsR0FDckR2QixRQUNHLENBQUMsRUFFUkcsTUFBTSxpQkFDTGUsS0FBQSxDQUFBQyxhQUFBLENBQUN4QixJQUFJO01BQUNVLEtBQUssRUFBRTtRQUFDbUIsUUFBUSxFQUFFO01BQUU7SUFBRSxHQUN6QnJCLE1BQ0csQ0FBQyxFQUVSTCxRQUNHLENBQUM7RUFFWDtBQUNGLENBQUMsQ0FBQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import BaseComponent from "../base-component";
|
|
2
|
+
import { CheckBox, Pressable, View } from "react-native";
|
|
3
|
+
import memo from "set-state-compare/src/memo";
|
|
4
|
+
import PropTypes from "prop-types";
|
|
5
|
+
import propTypesExact from "prop-types-exact";
|
|
6
|
+
import { shapeComponent } from "set-state-compare/src/shape-component";
|
|
7
|
+
import Text from "./text";
|
|
8
|
+
export default memo(shapeComponent(class ApiMakerUtilsCheckbox extends BaseComponent {
|
|
9
|
+
static defaultProps = {
|
|
10
|
+
label: undefined
|
|
11
|
+
};
|
|
12
|
+
static propTypes = propTypesExact({
|
|
13
|
+
checked: PropTypes.bool.isRequired,
|
|
14
|
+
dataSet: PropTypes.object,
|
|
15
|
+
label: PropTypes.string,
|
|
16
|
+
onCheckedChange: PropTypes.func.isRequired,
|
|
17
|
+
style: PropTypes.object
|
|
18
|
+
});
|
|
19
|
+
render() {
|
|
20
|
+
const {
|
|
21
|
+
checked,
|
|
22
|
+
label,
|
|
23
|
+
onCheckedChange
|
|
24
|
+
} = this.p;
|
|
25
|
+
const actualStyle = Object.assign({
|
|
26
|
+
flexDirection: "row",
|
|
27
|
+
alignItems: "center"
|
|
28
|
+
}, this.props.style);
|
|
29
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
30
|
+
dataSet: {
|
|
31
|
+
component: "api-maker--utils--checkbox"
|
|
32
|
+
},
|
|
33
|
+
style: actualStyle
|
|
34
|
+
}, /*#__PURE__*/React.createElement(CheckBox, {
|
|
35
|
+
dataSet: this.props.dataSet,
|
|
36
|
+
onValueChange: onCheckedChange,
|
|
37
|
+
value: checked
|
|
38
|
+
}), label && /*#__PURE__*/React.createElement(Pressable, {
|
|
39
|
+
onPress: this.tt.onLabelPressed
|
|
40
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
41
|
+
style: {
|
|
42
|
+
marginLeft: 3
|
|
43
|
+
}
|
|
44
|
+
}, label)));
|
|
45
|
+
}
|
|
46
|
+
onLabelPressed = () => this.p.onCheckedChange(!this.p.checked);
|
|
47
|
+
}));
|
|
48
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlQ29tcG9uZW50IiwiQ2hlY2tCb3giLCJQcmVzc2FibGUiLCJWaWV3IiwibWVtbyIsIlByb3BUeXBlcyIsInByb3BUeXBlc0V4YWN0Iiwic2hhcGVDb21wb25lbnQiLCJUZXh0IiwiQXBpTWFrZXJVdGlsc0NoZWNrYm94IiwiZGVmYXVsdFByb3BzIiwibGFiZWwiLCJ1bmRlZmluZWQiLCJwcm9wVHlwZXMiLCJjaGVja2VkIiwiYm9vbCIsImlzUmVxdWlyZWQiLCJkYXRhU2V0Iiwib2JqZWN0Iiwic3RyaW5nIiwib25DaGVja2VkQ2hhbmdlIiwiZnVuYyIsInN0eWxlIiwicmVuZGVyIiwicCIsImFjdHVhbFN0eWxlIiwiT2JqZWN0IiwiYXNzaWduIiwiZmxleERpcmVjdGlvbiIsImFsaWduSXRlbXMiLCJwcm9wcyIsIlJlYWN0IiwiY3JlYXRlRWxlbWVudCIsImNvbXBvbmVudCIsIm9uVmFsdWVDaGFuZ2UiLCJ2YWx1ZSIsIm9uUHJlc3MiLCJ0dCIsIm9uTGFiZWxQcmVzc2VkIiwibWFyZ2luTGVmdCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9jaGVja2JveC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCB7Q2hlY2tCb3gsIFByZXNzYWJsZSwgVmlld30gZnJvbSBcInJlYWN0LW5hdGl2ZVwiXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL21lbW9cIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgcHJvcFR5cGVzRXhhY3QgZnJvbSBcInByb3AtdHlwZXMtZXhhY3RcIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9zaGFwZS1jb21wb25lbnRcIlxuaW1wb3J0IFRleHQgZnJvbSBcIi4vdGV4dFwiXG5cbmV4cG9ydCBkZWZhdWx0IG1lbW8oc2hhcGVDb21wb25lbnQoY2xhc3MgQXBpTWFrZXJVdGlsc0NoZWNrYm94IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgbGFiZWw6IHVuZGVmaW5lZFxuICB9XG5cbiAgc3RhdGljIHByb3BUeXBlcyA9IHByb3BUeXBlc0V4YWN0KHtcbiAgICBjaGVja2VkOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICAgIGRhdGFTZXQ6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgbGFiZWw6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgb25DaGVja2VkQ2hhbmdlOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHN0eWxlOiBQcm9wVHlwZXMub2JqZWN0XG4gIH0pXG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtjaGVja2VkLCBsYWJlbCwgb25DaGVja2VkQ2hhbmdlfSA9IHRoaXMucFxuICAgIGNvbnN0IGFjdHVhbFN0eWxlID0gT2JqZWN0LmFzc2lnbihcbiAgICAgIHtmbGV4RGlyZWN0aW9uOiBcInJvd1wiLCBhbGlnbkl0ZW1zOiBcImNlbnRlclwifSxcbiAgICAgIHRoaXMucHJvcHMuc3R5bGVcbiAgICApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPFZpZXcgZGF0YVNldD17e2NvbXBvbmVudDogXCJhcGktbWFrZXItLXV0aWxzLS1jaGVja2JveFwifX0gc3R5bGU9e2FjdHVhbFN0eWxlfT5cbiAgICAgICAgPENoZWNrQm94IGRhdGFTZXQ9e3RoaXMucHJvcHMuZGF0YVNldH0gb25WYWx1ZUNoYW5nZT17b25DaGVja2VkQ2hhbmdlfSB2YWx1ZT17Y2hlY2tlZH0gLz5cbiAgICAgICAge2xhYmVsICYmXG4gICAgICAgICAgPFByZXNzYWJsZSBvblByZXNzPXt0aGlzLnR0Lm9uTGFiZWxQcmVzc2VkfT5cbiAgICAgICAgICAgIDxUZXh0IHN0eWxlPXt7bWFyZ2luTGVmdDogM319PlxuICAgICAgICAgICAgICB7bGFiZWx9XG4gICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgPC9QcmVzc2FibGU+XG4gICAgICAgIH1cbiAgICAgIDwvVmlldz5cbiAgICApXG4gIH1cblxuICBvbkxhYmVsUHJlc3NlZCA9ICgpID0+IHRoaXMucC5vbkNoZWNrZWRDaGFuZ2UoIXRoaXMucC5jaGVja2VkKVxufSkpXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLGFBQWEsTUFBTSxtQkFBbUI7QUFDN0MsU0FBUUMsUUFBUSxFQUFFQyxTQUFTLEVBQUVDLElBQUksUUFBTyxjQUFjO0FBQ3RELE9BQU9DLElBQUksTUFBTSw0QkFBNEI7QUFDN0MsT0FBT0MsU0FBUyxNQUFNLFlBQVk7QUFDbEMsT0FBT0MsY0FBYyxNQUFNLGtCQUFrQjtBQUM3QyxTQUFRQyxjQUFjLFFBQU8sdUNBQXVDO0FBQ3BFLE9BQU9DLElBQUksTUFBTSxRQUFRO0FBRXpCLGVBQWVKLElBQUksQ0FBQ0csY0FBYyxDQUFDLE1BQU1FLHFCQUFxQixTQUFTVCxhQUFhLENBQUM7RUFDbkYsT0FBT1UsWUFBWSxHQUFHO0lBQ3BCQyxLQUFLLEVBQUVDO0VBQ1QsQ0FBQztFQUVELE9BQU9DLFNBQVMsR0FBR1AsY0FBYyxDQUFDO0lBQ2hDUSxPQUFPLEVBQUVULFNBQVMsQ0FBQ1UsSUFBSSxDQUFDQyxVQUFVO0lBQ2xDQyxPQUFPLEVBQUVaLFNBQVMsQ0FBQ2EsTUFBTTtJQUN6QlAsS0FBSyxFQUFFTixTQUFTLENBQUNjLE1BQU07SUFDdkJDLGVBQWUsRUFBRWYsU0FBUyxDQUFDZ0IsSUFBSSxDQUFDTCxVQUFVO0lBQzFDTSxLQUFLLEVBQUVqQixTQUFTLENBQUNhO0VBQ25CLENBQUMsQ0FBQztFQUVGSyxNQUFNQSxDQUFBLEVBQUc7SUFDUCxNQUFNO01BQUNULE9BQU87TUFBRUgsS0FBSztNQUFFUztJQUFlLENBQUMsR0FBRyxJQUFJLENBQUNJLENBQUM7SUFDaEQsTUFBTUMsV0FBVyxHQUFHQyxNQUFNLENBQUNDLE1BQU0sQ0FDL0I7TUFBQ0MsYUFBYSxFQUFFLEtBQUs7TUFBRUMsVUFBVSxFQUFFO0lBQVEsQ0FBQyxFQUM1QyxJQUFJLENBQUNDLEtBQUssQ0FBQ1IsS0FDYixDQUFDO0lBRUQsb0JBQ0VTLEtBQUEsQ0FBQUMsYUFBQSxDQUFDN0IsSUFBSTtNQUFDYyxPQUFPLEVBQUU7UUFBQ2dCLFNBQVMsRUFBRTtNQUE0QixDQUFFO01BQUNYLEtBQUssRUFBRUc7SUFBWSxnQkFDM0VNLEtBQUEsQ0FBQUMsYUFBQSxDQUFDL0IsUUFBUTtNQUFDZ0IsT0FBTyxFQUFFLElBQUksQ0FBQ2EsS0FBSyxDQUFDYixPQUFRO01BQUNpQixhQUFhLEVBQUVkLGVBQWdCO01BQUNlLEtBQUssRUFBRXJCO0lBQVEsQ0FBRSxDQUFDLEVBQ3hGSCxLQUFLLGlCQUNKb0IsS0FBQSxDQUFBQyxhQUFBLENBQUM5QixTQUFTO01BQUNrQyxPQUFPLEVBQUUsSUFBSSxDQUFDQyxFQUFFLENBQUNDO0lBQWUsZ0JBQ3pDUCxLQUFBLENBQUFDLGFBQUEsQ0FBQ3hCLElBQUk7TUFBQ2MsS0FBSyxFQUFFO1FBQUNpQixVQUFVLEVBQUU7TUFBQztJQUFFLEdBQzFCNUIsS0FDRyxDQUNHLENBRVQsQ0FBQztFQUVYO0VBRUEyQixjQUFjLEdBQUdBLENBQUEsS0FBTSxJQUFJLENBQUNkLENBQUMsQ0FBQ0osZUFBZSxDQUFDLENBQUMsSUFBSSxDQUFDSSxDQUFDLENBQUNWLE9BQU8sQ0FBQztBQUNoRSxDQUFDLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { createContext, useContext } from "react";
|
|
2
|
+
import memo from "set-state-compare/src/memo";
|
|
3
|
+
const DefaultStyleContext = /*#__PURE__*/createContext({
|
|
4
|
+
Text: {}
|
|
5
|
+
});
|
|
6
|
+
const useDefaultStyle = () => {
|
|
7
|
+
const defaultStyle = useContext(DefaultStyleContext);
|
|
8
|
+
return defaultStyle;
|
|
9
|
+
};
|
|
10
|
+
const WithDefaultStyle = memo(props => {
|
|
11
|
+
const defaultStyle = useContext(DefaultStyleContext);
|
|
12
|
+
const newDefaultStyle = Object.assign({}, defaultStyle, props.style);
|
|
13
|
+
return /*#__PURE__*/React.createElement(DefaultStyleContext.Provider, {
|
|
14
|
+
value: newDefaultStyle
|
|
15
|
+
}, props.children);
|
|
16
|
+
});
|
|
17
|
+
export { useDefaultStyle, WithDefaultStyle };
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDb250ZXh0IiwidXNlQ29udGV4dCIsIm1lbW8iLCJEZWZhdWx0U3R5bGVDb250ZXh0IiwiVGV4dCIsInVzZURlZmF1bHRTdHlsZSIsImRlZmF1bHRTdHlsZSIsIldpdGhEZWZhdWx0U3R5bGUiLCJwcm9wcyIsIm5ld0RlZmF1bHRTdHlsZSIsIk9iamVjdCIsImFzc2lnbiIsInN0eWxlIiwiUmVhY3QiLCJjcmVhdGVFbGVtZW50IiwiUHJvdmlkZXIiLCJ2YWx1ZSIsImNoaWxkcmVuIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL2RlZmF1bHQtc3R5bGUuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y3JlYXRlQ29udGV4dCwgdXNlQ29udGV4dH0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvbWVtb1wiXG5cbmNvbnN0IERlZmF1bHRTdHlsZUNvbnRleHQgPSBjcmVhdGVDb250ZXh0KHtcbiAgVGV4dDoge31cbn0pXG5cbmNvbnN0IHVzZURlZmF1bHRTdHlsZSA9ICgpID0+IHtcbiAgY29uc3QgZGVmYXVsdFN0eWxlID0gdXNlQ29udGV4dChEZWZhdWx0U3R5bGVDb250ZXh0KVxuXG4gIHJldHVybiBkZWZhdWx0U3R5bGVcbn1cblxuY29uc3QgV2l0aERlZmF1bHRTdHlsZSA9IG1lbW8oKHByb3BzKSA9PiB7XG4gIGNvbnN0IGRlZmF1bHRTdHlsZSA9IHVzZUNvbnRleHQoRGVmYXVsdFN0eWxlQ29udGV4dClcbiAgY29uc3QgbmV3RGVmYXVsdFN0eWxlID0gT2JqZWN0LmFzc2lnbih7fSwgZGVmYXVsdFN0eWxlLCBwcm9wcy5zdHlsZSlcblxuICByZXR1cm4gKFxuICAgIDxEZWZhdWx0U3R5bGVDb250ZXh0LlByb3ZpZGVyIHZhbHVlPXtuZXdEZWZhdWx0U3R5bGV9PlxuICAgICAge3Byb3BzLmNoaWxkcmVufVxuICAgIDwvRGVmYXVsdFN0eWxlQ29udGV4dC5Qcm92aWRlcj5cbiAgKVxufSlcblxuZXhwb3J0IHt1c2VEZWZhdWx0U3R5bGUsIFdpdGhEZWZhdWx0U3R5bGV9XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVFBLGFBQWEsRUFBRUMsVUFBVSxRQUFPLE9BQU87QUFDL0MsT0FBT0MsSUFBSSxNQUFNLDRCQUE0QjtBQUU3QyxNQUFNQyxtQkFBbUIsZ0JBQUdILGFBQWEsQ0FBQztFQUN4Q0ksSUFBSSxFQUFFLENBQUM7QUFDVCxDQUFDLENBQUM7QUFFRixNQUFNQyxlQUFlLEdBQUdBLENBQUEsS0FBTTtFQUM1QixNQUFNQyxZQUFZLEdBQUdMLFVBQVUsQ0FBQ0UsbUJBQW1CLENBQUM7RUFFcEQsT0FBT0csWUFBWTtBQUNyQixDQUFDO0FBRUQsTUFBTUMsZ0JBQWdCLEdBQUdMLElBQUksQ0FBRU0sS0FBSyxJQUFLO0VBQ3ZDLE1BQU1GLFlBQVksR0FBR0wsVUFBVSxDQUFDRSxtQkFBbUIsQ0FBQztFQUNwRCxNQUFNTSxlQUFlLEdBQUdDLE1BQU0sQ0FBQ0MsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFTCxZQUFZLEVBQUVFLEtBQUssQ0FBQ0ksS0FBSyxDQUFDO0VBRXBFLG9CQUNFQyxLQUFBLENBQUFDLGFBQUEsQ0FBQ1gsbUJBQW1CLENBQUNZLFFBQVE7SUFBQ0MsS0FBSyxFQUFFUDtFQUFnQixHQUNsREQsS0FBSyxDQUFDUyxRQUNxQixDQUFDO0FBRW5DLENBQUMsQ0FBQztBQUVGLFNBQVFaLGVBQWUsRUFBRUUsZ0JBQWdCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import { Modal, Pressable, View } from "react-native";
|
|
3
|
+
import BaseComponent from "../base-component";
|
|
4
|
+
import Card from "./card";
|
|
5
|
+
import FontAwesomeIcon from "react-native-vector-icons/FontAwesome";
|
|
6
|
+
import memo from "set-state-compare/src/memo";
|
|
7
|
+
import { shapeComponent } from "set-state-compare/src/shape-component";
|
|
8
|
+
import useBreakpoint from "../use-breakpoint";
|
|
9
|
+
export default memo(shapeComponent(class ApiMakerUtilsComponent extends BaseComponent {
|
|
10
|
+
render() {
|
|
11
|
+
const {
|
|
12
|
+
xs,
|
|
13
|
+
sm
|
|
14
|
+
} = useBreakpoint();
|
|
15
|
+
const {
|
|
16
|
+
children,
|
|
17
|
+
dataSet,
|
|
18
|
+
...restProps
|
|
19
|
+
} = this.props;
|
|
20
|
+
const actualDataSet = Object.assign({
|
|
21
|
+
component: "api-maker/utils/modal"
|
|
22
|
+
}, dataSet);
|
|
23
|
+
let width, maxWidth;
|
|
24
|
+
if (xs || sm) {
|
|
25
|
+
width = "95%";
|
|
26
|
+
} else {
|
|
27
|
+
width = "80%";
|
|
28
|
+
maxWidth = 800;
|
|
29
|
+
}
|
|
30
|
+
return /*#__PURE__*/React.createElement(Modal, _extends({
|
|
31
|
+
dataSet: actualDataSet
|
|
32
|
+
}, restProps), /*#__PURE__*/React.createElement(View, {
|
|
33
|
+
style: {
|
|
34
|
+
alignItems: "center",
|
|
35
|
+
justifyContent: "center",
|
|
36
|
+
width: "100%",
|
|
37
|
+
height: "100%",
|
|
38
|
+
backgroundColor: "rgba(0, 0, 0, 0.8)"
|
|
39
|
+
}
|
|
40
|
+
}, /*#__PURE__*/React.createElement(Card, {
|
|
41
|
+
controls: this.cardHeaderControls(),
|
|
42
|
+
style: {
|
|
43
|
+
width,
|
|
44
|
+
maxWidth
|
|
45
|
+
}
|
|
46
|
+
}, children)));
|
|
47
|
+
}
|
|
48
|
+
cardHeaderControls() {
|
|
49
|
+
return /*#__PURE__*/React.createElement(Pressable, {
|
|
50
|
+
onPress: this.tt.onModalClosePress,
|
|
51
|
+
style: {
|
|
52
|
+
marginLeft: "auto",
|
|
53
|
+
padding: 5
|
|
54
|
+
}
|
|
55
|
+
}, /*#__PURE__*/React.createElement(FontAwesomeIcon, {
|
|
56
|
+
name: "remove"
|
|
57
|
+
}));
|
|
58
|
+
}
|
|
59
|
+
onModalClosePress = () => this.props.onRequestClose && this.props.onRequestClose();
|
|
60
|
+
}));
|
|
61
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNb2RhbCIsIlByZXNzYWJsZSIsIlZpZXciLCJCYXNlQ29tcG9uZW50IiwiQ2FyZCIsIkZvbnRBd2Vzb21lSWNvbiIsIm1lbW8iLCJzaGFwZUNvbXBvbmVudCIsInVzZUJyZWFrcG9pbnQiLCJBcGlNYWtlclV0aWxzQ29tcG9uZW50IiwicmVuZGVyIiwieHMiLCJzbSIsImNoaWxkcmVuIiwiZGF0YVNldCIsInJlc3RQcm9wcyIsInByb3BzIiwiYWN0dWFsRGF0YVNldCIsIk9iamVjdCIsImFzc2lnbiIsImNvbXBvbmVudCIsIndpZHRoIiwibWF4V2lkdGgiLCJSZWFjdCIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kcyIsInN0eWxlIiwiYWxpZ25JdGVtcyIsImp1c3RpZnlDb250ZW50IiwiaGVpZ2h0IiwiYmFja2dyb3VuZENvbG9yIiwiY29udHJvbHMiLCJjYXJkSGVhZGVyQ29udHJvbHMiLCJvblByZXNzIiwidHQiLCJvbk1vZGFsQ2xvc2VQcmVzcyIsIm1hcmdpbkxlZnQiLCJwYWRkaW5nIiwibmFtZSIsIm9uUmVxdWVzdENsb3NlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL21vZGFsLmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge01vZGFsLCBQcmVzc2FibGUsIFZpZXd9IGZyb20gXCJyZWFjdC1uYXRpdmVcIlxuaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCBDYXJkIGZyb20gXCIuL2NhcmRcIlxuaW1wb3J0IEZvbnRBd2Vzb21lSWNvbiBmcm9tIFwicmVhY3QtbmF0aXZlLXZlY3Rvci1pY29ucy9Gb250QXdlc29tZVwiXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL21lbW9cIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9zaGFwZS1jb21wb25lbnRcIlxuaW1wb3J0IHVzZUJyZWFrcG9pbnQgZnJvbSBcIi4uL3VzZS1icmVha3BvaW50XCJcblxuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudChjbGFzcyBBcGlNYWtlclV0aWxzQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7eHMsIHNtfSA9IHVzZUJyZWFrcG9pbnQoKVxuICAgIGNvbnN0IHtjaGlsZHJlbiwgZGF0YVNldCwgLi4ucmVzdFByb3BzfSA9IHRoaXMucHJvcHNcbiAgICBjb25zdCBhY3R1YWxEYXRhU2V0ID0gT2JqZWN0LmFzc2lnbihcbiAgICAgIHtcbiAgICAgICAgY29tcG9uZW50OiBcImFwaS1tYWtlci91dGlscy9tb2RhbFwiXG4gICAgICB9LFxuICAgICAgZGF0YVNldFxuICAgIClcbiAgICBsZXQgd2lkdGgsIG1heFdpZHRoXG5cbiAgICBpZiAoeHMgfHwgc20pIHtcbiAgICAgIHdpZHRoID0gXCI5NSVcIlxuICAgIH0gZWxzZSB7XG4gICAgICB3aWR0aCA9IFwiODAlXCJcbiAgICAgIG1heFdpZHRoID0gODAwXG4gICAgfVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxNb2RhbCBkYXRhU2V0PXthY3R1YWxEYXRhU2V0fSB7Li4ucmVzdFByb3BzfT5cbiAgICAgICAgPFZpZXdcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICAgICAgICAgIGp1c3RpZnlDb250ZW50OiBcImNlbnRlclwiLFxuICAgICAgICAgICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgICAgICAgICAgaGVpZ2h0OiBcIjEwMCVcIixcbiAgICAgICAgICAgIGJhY2tncm91bmRDb2xvcjogXCJyZ2JhKDAsIDAsIDAsIDAuOClcIlxuICAgICAgICAgIH19XG4gICAgICAgID5cbiAgICAgICAgICA8Q2FyZFxuICAgICAgICAgICAgY29udHJvbHM9e3RoaXMuY2FyZEhlYWRlckNvbnRyb2xzKCl9XG4gICAgICAgICAgICBzdHlsZT17e3dpZHRoLCBtYXhXaWR0aH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2NoaWxkcmVufVxuICAgICAgICAgIDwvQ2FyZD5cbiAgICAgICAgPC9WaWV3PlxuICAgICAgPC9Nb2RhbD5cbiAgICApXG4gIH1cblxuICBjYXJkSGVhZGVyQ29udHJvbHMoKSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxQcmVzc2FibGUgb25QcmVzcz17dGhpcy50dC5vbk1vZGFsQ2xvc2VQcmVzc30gc3R5bGU9e3ttYXJnaW5MZWZ0OiBcImF1dG9cIiwgcGFkZGluZzogNX19PlxuICAgICAgICA8Rm9udEF3ZXNvbWVJY29uIG5hbWU9XCJyZW1vdmVcIiAvPlxuICAgICAgPC9QcmVzc2FibGU+XG4gICAgKVxuICB9XG5cbiAgb25Nb2RhbENsb3NlUHJlc3MgPSAoKSA9PiB0aGlzLnByb3BzLm9uUmVxdWVzdENsb3NlICYmIHRoaXMucHJvcHMub25SZXF1ZXN0Q2xvc2UoKVxufSkpXG4iXSwibWFwcGluZ3MiOiI7QUFBQSxTQUFRQSxLQUFLLEVBQUVDLFNBQVMsRUFBRUMsSUFBSSxRQUFPLGNBQWM7QUFDbkQsT0FBT0MsYUFBYSxNQUFNLG1CQUFtQjtBQUM3QyxPQUFPQyxJQUFJLE1BQU0sUUFBUTtBQUN6QixPQUFPQyxlQUFlLE1BQU0sdUNBQXVDO0FBQ25FLE9BQU9DLElBQUksTUFBTSw0QkFBNEI7QUFDN0MsU0FBUUMsY0FBYyxRQUFPLHVDQUF1QztBQUNwRSxPQUFPQyxhQUFhLE1BQU0sbUJBQW1CO0FBRTdDLGVBQWVGLElBQUksQ0FBQ0MsY0FBYyxDQUFDLE1BQU1FLHNCQUFzQixTQUFTTixhQUFhLENBQUM7RUFDcEZPLE1BQU1BLENBQUEsRUFBRztJQUNQLE1BQU07TUFBQ0MsRUFBRTtNQUFFQztJQUFFLENBQUMsR0FBR0osYUFBYSxDQUFDLENBQUM7SUFDaEMsTUFBTTtNQUFDSyxRQUFRO01BQUVDLE9BQU87TUFBRSxHQUFHQztJQUFTLENBQUMsR0FBRyxJQUFJLENBQUNDLEtBQUs7SUFDcEQsTUFBTUMsYUFBYSxHQUFHQyxNQUFNLENBQUNDLE1BQU0sQ0FDakM7TUFDRUMsU0FBUyxFQUFFO0lBQ2IsQ0FBQyxFQUNETixPQUNGLENBQUM7SUFDRCxJQUFJTyxLQUFLLEVBQUVDLFFBQVE7SUFFbkIsSUFBSVgsRUFBRSxJQUFJQyxFQUFFLEVBQUU7TUFDWlMsS0FBSyxHQUFHLEtBQUs7SUFDZixDQUFDLE1BQU07TUFDTEEsS0FBSyxHQUFHLEtBQUs7TUFDYkMsUUFBUSxHQUFHLEdBQUc7SUFDaEI7SUFFQSxvQkFDRUMsS0FBQSxDQUFBQyxhQUFBLENBQUN4QixLQUFLLEVBQUF5QixRQUFBO01BQUNYLE9BQU8sRUFBRUc7SUFBYyxHQUFLRixTQUFTLGdCQUMxQ1EsS0FBQSxDQUFBQyxhQUFBLENBQUN0QixJQUFJO01BQ0h3QixLQUFLLEVBQUU7UUFDTEMsVUFBVSxFQUFFLFFBQVE7UUFDcEJDLGNBQWMsRUFBRSxRQUFRO1FBQ3hCUCxLQUFLLEVBQUUsTUFBTTtRQUNiUSxNQUFNLEVBQUUsTUFBTTtRQUNkQyxlQUFlLEVBQUU7TUFDbkI7SUFBRSxnQkFFRlAsS0FBQSxDQUFBQyxhQUFBLENBQUNwQixJQUFJO01BQ0gyQixRQUFRLEVBQUUsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQyxDQUFFO01BQ3BDTixLQUFLLEVBQUU7UUFBQ0wsS0FBSztRQUFFQztNQUFRO0lBQUUsR0FFeEJULFFBQ0csQ0FDRixDQUNELENBQUM7RUFFWjtFQUVBbUIsa0JBQWtCQSxDQUFBLEVBQUc7SUFDbkIsb0JBQ0VULEtBQUEsQ0FBQUMsYUFBQSxDQUFDdkIsU0FBUztNQUFDZ0MsT0FBTyxFQUFFLElBQUksQ0FBQ0MsRUFBRSxDQUFDQyxpQkFBa0I7TUFBQ1QsS0FBSyxFQUFFO1FBQUNVLFVBQVUsRUFBRSxNQUFNO1FBQUVDLE9BQU8sRUFBRTtNQUFDO0lBQUUsZ0JBQ3JGZCxLQUFBLENBQUFDLGFBQUEsQ0FBQ25CLGVBQWU7TUFBQ2lDLElBQUksRUFBQztJQUFRLENBQUUsQ0FDdkIsQ0FBQztFQUVoQjtFQUVBSCxpQkFBaUIsR0FBR0EsQ0FBQSxLQUFNLElBQUksQ0FBQ25CLEtBQUssQ0FBQ3VCLGNBQWMsSUFBSSxJQUFJLENBQUN2QixLQUFLLENBQUN1QixjQUFjLENBQUMsQ0FBQztBQUNwRixDQUFDLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import memo from "set-state-compare/src/memo";
|
|
3
|
+
import { Text } from "react-native";
|
|
4
|
+
import { useDefaultStyle, WithDefaultStyle } from "./default-style";
|
|
5
|
+
export default memo(props => {
|
|
6
|
+
const {
|
|
7
|
+
style,
|
|
8
|
+
...restProps
|
|
9
|
+
} = props;
|
|
10
|
+
const defaultStyle = useDefaultStyle();
|
|
11
|
+
const actualStyle = Object.assign({}, defaultStyle?.Text, style);
|
|
12
|
+
return /*#__PURE__*/React.createElement(WithDefaultStyle, {
|
|
13
|
+
style: actualStyle
|
|
14
|
+
}, /*#__PURE__*/React.createElement(Text, _extends({
|
|
15
|
+
style: actualStyle
|
|
16
|
+
}, restProps)));
|
|
17
|
+
});
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwiVGV4dCIsInVzZURlZmF1bHRTdHlsZSIsIldpdGhEZWZhdWx0U3R5bGUiLCJwcm9wcyIsInN0eWxlIiwicmVzdFByb3BzIiwiZGVmYXVsdFN0eWxlIiwiYWN0dWFsU3R5bGUiLCJPYmplY3QiLCJhc3NpZ24iLCJSZWFjdCIsImNyZWF0ZUVsZW1lbnQiLCJfZXh0ZW5kcyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy90ZXh0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL21lbW9cIlxuaW1wb3J0IHtUZXh0fSBmcm9tIFwicmVhY3QtbmF0aXZlXCJcbmltcG9ydCB7dXNlRGVmYXVsdFN0eWxlLCBXaXRoRGVmYXVsdFN0eWxlfSBmcm9tIFwiLi9kZWZhdWx0LXN0eWxlXCJcblxuZXhwb3J0IGRlZmF1bHQgbWVtbygocHJvcHMpID0+IHtcbiAgY29uc3Qge3N0eWxlLCAuLi5yZXN0UHJvcHN9ID0gcHJvcHNcbiAgY29uc3QgZGVmYXVsdFN0eWxlID0gdXNlRGVmYXVsdFN0eWxlKClcbiAgY29uc3QgYWN0dWFsU3R5bGUgPSBPYmplY3QuYXNzaWduKHt9LCBkZWZhdWx0U3R5bGU/LlRleHQsIHN0eWxlKVxuXG4gIHJldHVybiAoXG4gICAgPFdpdGhEZWZhdWx0U3R5bGUgc3R5bGU9e2FjdHVhbFN0eWxlfT5cbiAgICAgIDxUZXh0IHN0eWxlPXthY3R1YWxTdHlsZX0gey4uLnJlc3RQcm9wc30gLz5cbiAgICA8L1dpdGhEZWZhdWx0U3R5bGU+XG4gIClcbn0pXG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxJQUFJLE1BQU0sNEJBQTRCO0FBQzdDLFNBQVFDLElBQUksUUFBTyxjQUFjO0FBQ2pDLFNBQVFDLGVBQWUsRUFBRUMsZ0JBQWdCLFFBQU8saUJBQWlCO0FBRWpFLGVBQWVILElBQUksQ0FBRUksS0FBSyxJQUFLO0VBQzdCLE1BQU07SUFBQ0MsS0FBSztJQUFFLEdBQUdDO0VBQVMsQ0FBQyxHQUFHRixLQUFLO0VBQ25DLE1BQU1HLFlBQVksR0FBR0wsZUFBZSxDQUFDLENBQUM7RUFDdEMsTUFBTU0sV0FBVyxHQUFHQyxNQUFNLENBQUNDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRUgsWUFBWSxFQUFFTixJQUFJLEVBQUVJLEtBQUssQ0FBQztFQUVoRSxvQkFDRU0sS0FBQSxDQUFBQyxhQUFBLENBQUNULGdCQUFnQjtJQUFDRSxLQUFLLEVBQUVHO0VBQVksZ0JBQ25DRyxLQUFBLENBQUFDLGFBQUEsQ0FBQ1gsSUFBSSxFQUFBWSxRQUFBO0lBQUNSLEtBQUssRUFBRUc7RUFBWSxHQUFLRixTQUFTLENBQUcsQ0FDMUIsQ0FBQztBQUV2QixDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import BaseError from "./base-error";
|
|
2
|
+
import * as inflection from "inflection";
|
|
3
|
+
class ValidationError extends BaseError {
|
|
4
|
+
constructor(validationErrors, args) {
|
|
5
|
+
const errorMessage = validationErrors.getUnhandledErrorMessage() || validationErrors.getErrorMessage();
|
|
6
|
+
const forwardedArgs = {
|
|
7
|
+
addResponseErrorsToErrorMessage: false
|
|
8
|
+
};
|
|
9
|
+
const newArgs = Object.assign({}, args, forwardedArgs);
|
|
10
|
+
super(errorMessage, newArgs);
|
|
11
|
+
this.validationErrors = validationErrors;
|
|
12
|
+
}
|
|
13
|
+
getUnhandledErrors = () => this.validationErrors.getValidationErrors().filter(validationError => !validationError.getHandled());
|
|
14
|
+
getValidationErrors = () => digg(this, "validationErrors");
|
|
15
|
+
hasUnhandledErrors() {
|
|
16
|
+
const unhandledError = this.validationErrors.getValidationErrors().find(validationError => !validationError.getHandled());
|
|
17
|
+
return Boolean(unhandledError);
|
|
18
|
+
}
|
|
19
|
+
hasValidationErrorForAttribute(attributeName) {
|
|
20
|
+
const underscoredAttributeName = inflection.underscore(attributeName);
|
|
21
|
+
const foundAttribute = this.validationErrors.getValidationErrors().find(validationError => validationError.getAttributeName() == underscoredAttributeName);
|
|
22
|
+
if (foundAttribute) return true;
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
ValidationError.apiMakerType = "ValidationError";
|
|
27
|
+
export default ValidationError;
|
|
28
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCYXNlRXJyb3IiLCJpbmZsZWN0aW9uIiwiVmFsaWRhdGlvbkVycm9yIiwiY29uc3RydWN0b3IiLCJ2YWxpZGF0aW9uRXJyb3JzIiwiYXJncyIsImVycm9yTWVzc2FnZSIsImdldFVuaGFuZGxlZEVycm9yTWVzc2FnZSIsImdldEVycm9yTWVzc2FnZSIsImZvcndhcmRlZEFyZ3MiLCJhZGRSZXNwb25zZUVycm9yc1RvRXJyb3JNZXNzYWdlIiwibmV3QXJncyIsIk9iamVjdCIsImFzc2lnbiIsImdldFVuaGFuZGxlZEVycm9ycyIsImdldFZhbGlkYXRpb25FcnJvcnMiLCJmaWx0ZXIiLCJ2YWxpZGF0aW9uRXJyb3IiLCJnZXRIYW5kbGVkIiwiZGlnZyIsImhhc1VuaGFuZGxlZEVycm9ycyIsInVuaGFuZGxlZEVycm9yIiwiZmluZCIsIkJvb2xlYW4iLCJoYXNWYWxpZGF0aW9uRXJyb3JGb3JBdHRyaWJ1dGUiLCJhdHRyaWJ1dGVOYW1lIiwidW5kZXJzY29yZWRBdHRyaWJ1dGVOYW1lIiwidW5kZXJzY29yZSIsImZvdW5kQXR0cmlidXRlIiwiZ2V0QXR0cmlidXRlTmFtZSIsImFwaU1ha2VyVHlwZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy92YWxpZGF0aW9uLWVycm9yLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBCYXNlRXJyb3IgZnJvbSBcIi4vYmFzZS1lcnJvclwiXG5pbXBvcnQgKiBhcyBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCJcblxuY2xhc3MgVmFsaWRhdGlvbkVycm9yIGV4dGVuZHMgQmFzZUVycm9yIHtcbiAgY29uc3RydWN0b3IodmFsaWRhdGlvbkVycm9ycywgYXJncykge1xuICAgIGNvbnN0IGVycm9yTWVzc2FnZSA9IHZhbGlkYXRpb25FcnJvcnMuZ2V0VW5oYW5kbGVkRXJyb3JNZXNzYWdlKCkgfHwgdmFsaWRhdGlvbkVycm9ycy5nZXRFcnJvck1lc3NhZ2UoKVxuICAgIGNvbnN0IGZvcndhcmRlZEFyZ3MgPSB7YWRkUmVzcG9uc2VFcnJvcnNUb0Vycm9yTWVzc2FnZTogZmFsc2V9XG4gICAgY29uc3QgbmV3QXJncyA9IE9iamVjdC5hc3NpZ24oe30sIGFyZ3MsIGZvcndhcmRlZEFyZ3MpXG5cbiAgICBzdXBlcihlcnJvck1lc3NhZ2UsIG5ld0FyZ3MpXG4gICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gdmFsaWRhdGlvbkVycm9yc1xuICB9XG5cbiAgZ2V0VW5oYW5kbGVkRXJyb3JzID0gKCkgPT4gdGhpcy52YWxpZGF0aW9uRXJyb3JzLmdldFZhbGlkYXRpb25FcnJvcnMoKS5maWx0ZXIoKHZhbGlkYXRpb25FcnJvcikgPT4gIXZhbGlkYXRpb25FcnJvci5nZXRIYW5kbGVkKCkpXG4gIGdldFZhbGlkYXRpb25FcnJvcnMgPSAoKSA9PiBkaWdnKHRoaXMsIFwidmFsaWRhdGlvbkVycm9yc1wiKVxuXG4gIGhhc1VuaGFuZGxlZEVycm9ycygpIHtcbiAgICBjb25zdCB1bmhhbmRsZWRFcnJvciA9IHRoaXMudmFsaWRhdGlvbkVycm9ycy5nZXRWYWxpZGF0aW9uRXJyb3JzKCkuZmluZCgodmFsaWRhdGlvbkVycm9yKSA9PiAhdmFsaWRhdGlvbkVycm9yLmdldEhhbmRsZWQoKSlcblxuICAgIHJldHVybiBCb29sZWFuKHVuaGFuZGxlZEVycm9yKVxuICB9XG5cbiAgaGFzVmFsaWRhdGlvbkVycm9yRm9yQXR0cmlidXRlKGF0dHJpYnV0ZU5hbWUpIHtcbiAgICBjb25zdCB1bmRlcnNjb3JlZEF0dHJpYnV0ZU5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUoYXR0cmlidXRlTmFtZSlcbiAgICBjb25zdCBmb3VuZEF0dHJpYnV0ZSA9IHRoaXMudmFsaWRhdGlvbkVycm9ycy5nZXRWYWxpZGF0aW9uRXJyb3JzKCkuZmluZCgodmFsaWRhdGlvbkVycm9yKSA9PiB2YWxpZGF0aW9uRXJyb3IuZ2V0QXR0cmlidXRlTmFtZSgpID09IHVuZGVyc2NvcmVkQXR0cmlidXRlTmFtZSlcblxuICAgIGlmIChmb3VuZEF0dHJpYnV0ZSkgcmV0dXJuIHRydWVcblxuICAgIHJldHVybiBmYWxzZVxuICB9XG59XG5cblZhbGlkYXRpb25FcnJvci5hcGlNYWtlclR5cGUgPSBcIlZhbGlkYXRpb25FcnJvclwiXG5cbmV4cG9ydCBkZWZhdWx0IFZhbGlkYXRpb25FcnJvclxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxTQUFTLE1BQU0sY0FBYztBQUNwQyxPQUFPLEtBQUtDLFVBQVUsTUFBTSxZQUFZO0FBRXhDLE1BQU1DLGVBQWUsU0FBU0YsU0FBUyxDQUFDO0VBQ3RDRyxXQUFXQSxDQUFDQyxnQkFBZ0IsRUFBRUMsSUFBSSxFQUFFO0lBQ2xDLE1BQU1DLFlBQVksR0FBR0YsZ0JBQWdCLENBQUNHLHdCQUF3QixDQUFDLENBQUMsSUFBSUgsZ0JBQWdCLENBQUNJLGVBQWUsQ0FBQyxDQUFDO0lBQ3RHLE1BQU1DLGFBQWEsR0FBRztNQUFDQywrQkFBK0IsRUFBRTtJQUFLLENBQUM7SUFDOUQsTUFBTUMsT0FBTyxHQUFHQyxNQUFNLENBQUNDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRVIsSUFBSSxFQUFFSSxhQUFhLENBQUM7SUFFdEQsS0FBSyxDQUFDSCxZQUFZLEVBQUVLLE9BQU8sQ0FBQztJQUM1QixJQUFJLENBQUNQLGdCQUFnQixHQUFHQSxnQkFBZ0I7RUFDMUM7RUFFQVUsa0JBQWtCLEdBQUdBLENBQUEsS0FBTSxJQUFJLENBQUNWLGdCQUFnQixDQUFDVyxtQkFBbUIsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FBRUMsZUFBZSxJQUFLLENBQUNBLGVBQWUsQ0FBQ0MsVUFBVSxDQUFDLENBQUMsQ0FBQztFQUNqSUgsbUJBQW1CLEdBQUdBLENBQUEsS0FBTUksSUFBSSxDQUFDLElBQUksRUFBRSxrQkFBa0IsQ0FBQztFQUUxREMsa0JBQWtCQSxDQUFBLEVBQUc7SUFDbkIsTUFBTUMsY0FBYyxHQUFHLElBQUksQ0FBQ2pCLGdCQUFnQixDQUFDVyxtQkFBbUIsQ0FBQyxDQUFDLENBQUNPLElBQUksQ0FBRUwsZUFBZSxJQUFLLENBQUNBLGVBQWUsQ0FBQ0MsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUUzSCxPQUFPSyxPQUFPLENBQUNGLGNBQWMsQ0FBQztFQUNoQztFQUVBRyw4QkFBOEJBLENBQUNDLGFBQWEsRUFBRTtJQUM1QyxNQUFNQyx3QkFBd0IsR0FBR3pCLFVBQVUsQ0FBQzBCLFVBQVUsQ0FBQ0YsYUFBYSxDQUFDO0lBQ3JFLE1BQU1HLGNBQWMsR0FBRyxJQUFJLENBQUN4QixnQkFBZ0IsQ0FBQ1csbUJBQW1CLENBQUMsQ0FBQyxDQUFDTyxJQUFJLENBQUVMLGVBQWUsSUFBS0EsZUFBZSxDQUFDWSxnQkFBZ0IsQ0FBQyxDQUFDLElBQUlILHdCQUF3QixDQUFDO0lBRTVKLElBQUlFLGNBQWMsRUFBRSxPQUFPLElBQUk7SUFFL0IsT0FBTyxLQUFLO0VBQ2Q7QUFDRjtBQUVBMUIsZUFBZSxDQUFDNEIsWUFBWSxHQUFHLGlCQUFpQjtBQUVoRCxlQUFlNUIsZUFBZSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { digg, digs } from "diggerize";
|
|
2
|
+
import * as inflection from "inflection";
|
|
3
|
+
import modelClassRequire from "./model-class-require";
|
|
4
|
+
class ValidationError {
|
|
5
|
+
constructor(args) {
|
|
6
|
+
this.attributeName = digg(args, "attribute_name");
|
|
7
|
+
this.attributeType = digg(args, "attribute_type");
|
|
8
|
+
this.errorMessages = digg(args, "error_messages");
|
|
9
|
+
this.errorTypes = digg(args, "error_types");
|
|
10
|
+
this.inputName = args.input_name;
|
|
11
|
+
this.handled = false;
|
|
12
|
+
this.modelName = digg(args, "model_name");
|
|
13
|
+
}
|
|
14
|
+
matchesAttributeAndInputName(attributeName, inputName) {
|
|
15
|
+
if (this.getInputName() == inputName) return true;
|
|
16
|
+
if (!attributeName) return false;
|
|
17
|
+
|
|
18
|
+
// A relationship column ends with "_id". We should try for validation errors on an attribute without the "_id" as well
|
|
19
|
+
const attributeNameIdMatch = attributeName.match(/^(.+)Id$/);
|
|
20
|
+
if (!attributeNameIdMatch) return false;
|
|
21
|
+
const attributeNameWithoutId = inflection.underscore(attributeNameIdMatch[1]);
|
|
22
|
+
const attributeUnderScoreName = inflection.underscore(attributeName);
|
|
23
|
+
const inputNameWithoutId = inputName.replace(`[${attributeUnderScoreName}]`, `[${attributeNameWithoutId}]`);
|
|
24
|
+
if (this.getInputName() == inputNameWithoutId) return true;
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
getAttributeName = () => digg(this, "attributeName");
|
|
28
|
+
getErrorMessages = () => digg(this, "errorMessages");
|
|
29
|
+
getFullErrorMessages() {
|
|
30
|
+
const {
|
|
31
|
+
attributeType
|
|
32
|
+
} = digs(this, "attributeType");
|
|
33
|
+
if (attributeType == "base") {
|
|
34
|
+
return this.getErrorMessages();
|
|
35
|
+
} else {
|
|
36
|
+
const fullErrorMessages = [];
|
|
37
|
+
for (const errorMessage of this.getErrorMessages()) {
|
|
38
|
+
const attributeHumanName = this.getModelClass().humanAttributeName(this.getAttributeName());
|
|
39
|
+
fullErrorMessages.push(`${attributeHumanName} ${errorMessage}`);
|
|
40
|
+
}
|
|
41
|
+
return fullErrorMessages;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
getHandled = () => digg(this, "handled");
|
|
45
|
+
getInputName = () => digg(this, "inputName");
|
|
46
|
+
getModelClass() {
|
|
47
|
+
const modelName = inflection.classify(digg(this, "modelName"));
|
|
48
|
+
return modelClassRequire(modelName);
|
|
49
|
+
}
|
|
50
|
+
setHandled() {
|
|
51
|
+
this.handled = true;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
class ValidationErrors {
|
|
55
|
+
constructor(args) {
|
|
56
|
+
this.rootModel = digg(args, "model");
|
|
57
|
+
this.validationErrors = digg(args, "validationErrors").map(validationError => new ValidationError(validationError));
|
|
58
|
+
}
|
|
59
|
+
getErrorMessage() {
|
|
60
|
+
const fullErrorMessages = [];
|
|
61
|
+
for (const validationError of this.validationErrors) {
|
|
62
|
+
for (const fullErrorMessage of validationError.getFullErrorMessages()) {
|
|
63
|
+
fullErrorMessages.push(fullErrorMessage);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return fullErrorMessages.join(". ");
|
|
67
|
+
}
|
|
68
|
+
getValidationErrors = () => this.validationErrors;
|
|
69
|
+
getValidationErrorsForInput({
|
|
70
|
+
attribute,
|
|
71
|
+
inputName,
|
|
72
|
+
onMatchValidationError
|
|
73
|
+
}) {
|
|
74
|
+
const validationErrors = this.validationErrors.filter(validationError => {
|
|
75
|
+
if (onMatchValidationError) {
|
|
76
|
+
return onMatchValidationError(validationError);
|
|
77
|
+
} else {
|
|
78
|
+
return validationError.matchesAttributeAndInputName(attribute, inputName);
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
validationErrors.map(validationError => validationError.setHandled());
|
|
82
|
+
return validationErrors;
|
|
83
|
+
}
|
|
84
|
+
getUnhandledErrorMessage() {
|
|
85
|
+
const unhandledValidationErrors = this.validationErrors.filter(validationError => !validationError.getHandled());
|
|
86
|
+
if (unhandledValidationErrors.length > 0) {
|
|
87
|
+
const unhandledValidationErrorMessages = [];
|
|
88
|
+
for (const unhandledValidationError of unhandledValidationErrors) {
|
|
89
|
+
for (const errorMessage of unhandledValidationError.getFullErrorMessages()) {
|
|
90
|
+
unhandledValidationErrorMessages.push(errorMessage);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return unhandledValidationErrorMessages.join(". ");
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
export { ValidationError, ValidationErrors };
|
|
98
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkaWdnIiwiZGlncyIsImluZmxlY3Rpb24iLCJtb2RlbENsYXNzUmVxdWlyZSIsIlZhbGlkYXRpb25FcnJvciIsImNvbnN0cnVjdG9yIiwiYXJncyIsImF0dHJpYnV0ZU5hbWUiLCJhdHRyaWJ1dGVUeXBlIiwiZXJyb3JNZXNzYWdlcyIsImVycm9yVHlwZXMiLCJpbnB1dE5hbWUiLCJpbnB1dF9uYW1lIiwiaGFuZGxlZCIsIm1vZGVsTmFtZSIsIm1hdGNoZXNBdHRyaWJ1dGVBbmRJbnB1dE5hbWUiLCJnZXRJbnB1dE5hbWUiLCJhdHRyaWJ1dGVOYW1lSWRNYXRjaCIsIm1hdGNoIiwiYXR0cmlidXRlTmFtZVdpdGhvdXRJZCIsInVuZGVyc2NvcmUiLCJhdHRyaWJ1dGVVbmRlclNjb3JlTmFtZSIsImlucHV0TmFtZVdpdGhvdXRJZCIsInJlcGxhY2UiLCJnZXRBdHRyaWJ1dGVOYW1lIiwiZ2V0RXJyb3JNZXNzYWdlcyIsImdldEZ1bGxFcnJvck1lc3NhZ2VzIiwiZnVsbEVycm9yTWVzc2FnZXMiLCJlcnJvck1lc3NhZ2UiLCJhdHRyaWJ1dGVIdW1hbk5hbWUiLCJnZXRNb2RlbENsYXNzIiwiaHVtYW5BdHRyaWJ1dGVOYW1lIiwicHVzaCIsImdldEhhbmRsZWQiLCJjbGFzc2lmeSIsInNldEhhbmRsZWQiLCJWYWxpZGF0aW9uRXJyb3JzIiwicm9vdE1vZGVsIiwidmFsaWRhdGlvbkVycm9ycyIsIm1hcCIsInZhbGlkYXRpb25FcnJvciIsImdldEVycm9yTWVzc2FnZSIsImZ1bGxFcnJvck1lc3NhZ2UiLCJqb2luIiwiZ2V0VmFsaWRhdGlvbkVycm9ycyIsImdldFZhbGlkYXRpb25FcnJvcnNGb3JJbnB1dCIsImF0dHJpYnV0ZSIsIm9uTWF0Y2hWYWxpZGF0aW9uRXJyb3IiLCJmaWx0ZXIiLCJnZXRVbmhhbmRsZWRFcnJvck1lc3NhZ2UiLCJ1bmhhbmRsZWRWYWxpZGF0aW9uRXJyb3JzIiwibGVuZ3RoIiwidW5oYW5kbGVkVmFsaWRhdGlvbkVycm9yTWVzc2FnZXMiLCJ1bmhhbmRsZWRWYWxpZGF0aW9uRXJyb3IiXSwic291cmNlcyI6WyIuLi9zcmMvdmFsaWRhdGlvbi1lcnJvcnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtkaWdnLCBkaWdzfSBmcm9tIFwiZGlnZ2VyaXplXCJcbmltcG9ydCAqIGFzIGluZmxlY3Rpb24gZnJvbSBcImluZmxlY3Rpb25cIlxuaW1wb3J0IG1vZGVsQ2xhc3NSZXF1aXJlIGZyb20gXCIuL21vZGVsLWNsYXNzLXJlcXVpcmVcIlxuXG5jbGFzcyBWYWxpZGF0aW9uRXJyb3Ige1xuICBjb25zdHJ1Y3RvcihhcmdzKSB7XG4gICAgdGhpcy5hdHRyaWJ1dGVOYW1lID0gZGlnZyhhcmdzLCBcImF0dHJpYnV0ZV9uYW1lXCIpXG4gICAgdGhpcy5hdHRyaWJ1dGVUeXBlID0gZGlnZyhhcmdzLCBcImF0dHJpYnV0ZV90eXBlXCIpXG4gICAgdGhpcy5lcnJvck1lc3NhZ2VzID0gZGlnZyhhcmdzLCBcImVycm9yX21lc3NhZ2VzXCIpXG4gICAgdGhpcy5lcnJvclR5cGVzID0gZGlnZyhhcmdzLCBcImVycm9yX3R5cGVzXCIpXG4gICAgdGhpcy5pbnB1dE5hbWUgPSBhcmdzLmlucHV0X25hbWVcbiAgICB0aGlzLmhhbmRsZWQgPSBmYWxzZVxuICAgIHRoaXMubW9kZWxOYW1lID0gZGlnZyhhcmdzLCBcIm1vZGVsX25hbWVcIilcbiAgfVxuXG4gIG1hdGNoZXNBdHRyaWJ1dGVBbmRJbnB1dE5hbWUoYXR0cmlidXRlTmFtZSwgaW5wdXROYW1lKSB7XG4gICAgaWYgKHRoaXMuZ2V0SW5wdXROYW1lKCkgPT0gaW5wdXROYW1lKSByZXR1cm4gdHJ1ZVxuICAgIGlmICghYXR0cmlidXRlTmFtZSkgcmV0dXJuIGZhbHNlXG5cbiAgICAvLyBBIHJlbGF0aW9uc2hpcCBjb2x1bW4gZW5kcyB3aXRoIFwiX2lkXCIuIFdlIHNob3VsZCB0cnkgZm9yIHZhbGlkYXRpb24gZXJyb3JzIG9uIGFuIGF0dHJpYnV0ZSB3aXRob3V0IHRoZSBcIl9pZFwiIGFzIHdlbGxcbiAgICBjb25zdCBhdHRyaWJ1dGVOYW1lSWRNYXRjaCA9IGF0dHJpYnV0ZU5hbWUubWF0Y2goL14oLispSWQkLylcbiAgICBpZiAoIWF0dHJpYnV0ZU5hbWVJZE1hdGNoKSByZXR1cm4gZmFsc2VcblxuICAgIGNvbnN0IGF0dHJpYnV0ZU5hbWVXaXRob3V0SWQgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUoYXR0cmlidXRlTmFtZUlkTWF0Y2hbMV0pXG4gICAgY29uc3QgYXR0cmlidXRlVW5kZXJTY29yZU5hbWUgPSBpbmZsZWN0aW9uLnVuZGVyc2NvcmUoYXR0cmlidXRlTmFtZSlcbiAgICBjb25zdCBpbnB1dE5hbWVXaXRob3V0SWQgPSBpbnB1dE5hbWUucmVwbGFjZShgWyR7YXR0cmlidXRlVW5kZXJTY29yZU5hbWV9XWAsIGBbJHthdHRyaWJ1dGVOYW1lV2l0aG91dElkfV1gKVxuXG4gICAgaWYgKHRoaXMuZ2V0SW5wdXROYW1lKCkgPT0gaW5wdXROYW1lV2l0aG91dElkKSByZXR1cm4gdHJ1ZVxuXG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICBnZXRBdHRyaWJ1dGVOYW1lID0gKCkgPT4gZGlnZyh0aGlzLCBcImF0dHJpYnV0ZU5hbWVcIilcbiAgZ2V0RXJyb3JNZXNzYWdlcyA9ICgpID0+IGRpZ2codGhpcywgXCJlcnJvck1lc3NhZ2VzXCIpXG5cbiAgZ2V0RnVsbEVycm9yTWVzc2FnZXMoKSB7XG4gICAgY29uc3Qge2F0dHJpYnV0ZVR5cGV9ID0gZGlncyh0aGlzLCBcImF0dHJpYnV0ZVR5cGVcIilcblxuICAgIGlmIChhdHRyaWJ1dGVUeXBlID09IFwiYmFzZVwiKSB7XG4gICAgICByZXR1cm4gdGhpcy5nZXRFcnJvck1lc3NhZ2VzKClcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZnVsbEVycm9yTWVzc2FnZXMgPSBbXVxuXG4gICAgICBmb3IgKGNvbnN0IGVycm9yTWVzc2FnZSBvZiB0aGlzLmdldEVycm9yTWVzc2FnZXMoKSkge1xuICAgICAgICBjb25zdCBhdHRyaWJ1dGVIdW1hbk5hbWUgPSB0aGlzLmdldE1vZGVsQ2xhc3MoKS5odW1hbkF0dHJpYnV0ZU5hbWUodGhpcy5nZXRBdHRyaWJ1dGVOYW1lKCkpXG4gICAgICAgIGZ1bGxFcnJvck1lc3NhZ2VzLnB1c2goYCR7YXR0cmlidXRlSHVtYW5OYW1lfSAke2Vycm9yTWVzc2FnZX1gKVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gZnVsbEVycm9yTWVzc2FnZXNcbiAgICB9XG4gIH1cblxuICBnZXRIYW5kbGVkID0gKCkgPT4gZGlnZyh0aGlzLCBcImhhbmRsZWRcIilcbiAgZ2V0SW5wdXROYW1lID0gKCkgPT4gZGlnZyh0aGlzLCBcImlucHV0TmFtZVwiKVxuXG4gIGdldE1vZGVsQ2xhc3MoKSB7XG4gICAgY29uc3QgbW9kZWxOYW1lID0gaW5mbGVjdGlvbi5jbGFzc2lmeShkaWdnKHRoaXMsIFwibW9kZWxOYW1lXCIpKVxuXG4gICAgcmV0dXJuIG1vZGVsQ2xhc3NSZXF1aXJlKG1vZGVsTmFtZSlcbiAgfVxuXG4gIHNldEhhbmRsZWQoKSB7XG4gICAgdGhpcy5oYW5kbGVkID0gdHJ1ZVxuICB9XG59XG5cbmNsYXNzIFZhbGlkYXRpb25FcnJvcnMge1xuICBjb25zdHJ1Y3RvcihhcmdzKSB7XG4gICAgdGhpcy5yb290TW9kZWwgPSBkaWdnKGFyZ3MsIFwibW9kZWxcIilcbiAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMgPSBkaWdnKGFyZ3MsIFwidmFsaWRhdGlvbkVycm9yc1wiKS5tYXAoKHZhbGlkYXRpb25FcnJvcikgPT4gbmV3IFZhbGlkYXRpb25FcnJvcih2YWxpZGF0aW9uRXJyb3IpKVxuICB9XG5cbiAgZ2V0RXJyb3JNZXNzYWdlKCkge1xuICAgIGNvbnN0IGZ1bGxFcnJvck1lc3NhZ2VzID0gW11cblxuICAgIGZvciAoY29uc3QgdmFsaWRhdGlvbkVycm9yIG9mIHRoaXMudmFsaWRhdGlvbkVycm9ycykge1xuICAgICAgZm9yIChjb25zdCBmdWxsRXJyb3JNZXNzYWdlIG9mIHZhbGlkYXRpb25FcnJvci5nZXRGdWxsRXJyb3JNZXNzYWdlcygpKSB7XG4gICAgICAgIGZ1bGxFcnJvck1lc3NhZ2VzLnB1c2goZnVsbEVycm9yTWVzc2FnZSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZnVsbEVycm9yTWVzc2FnZXMuam9pbihcIi4gXCIpXG4gIH1cblxuICBnZXRWYWxpZGF0aW9uRXJyb3JzID0gKCkgPT4gdGhpcy52YWxpZGF0aW9uRXJyb3JzXG5cbiAgZ2V0VmFsaWRhdGlvbkVycm9yc0ZvcklucHV0ICh7YXR0cmlidXRlLCBpbnB1dE5hbWUsIG9uTWF0Y2hWYWxpZGF0aW9uRXJyb3J9KSB7XG4gICAgY29uc3QgdmFsaWRhdGlvbkVycm9ycyA9IHRoaXMudmFsaWRhdGlvbkVycm9ycy5maWx0ZXIoKHZhbGlkYXRpb25FcnJvcikgPT4ge1xuICAgICAgaWYgKG9uTWF0Y2hWYWxpZGF0aW9uRXJyb3IpIHtcbiAgICAgICAgcmV0dXJuIG9uTWF0Y2hWYWxpZGF0aW9uRXJyb3IodmFsaWRhdGlvbkVycm9yKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHZhbGlkYXRpb25FcnJvci5tYXRjaGVzQXR0cmlidXRlQW5kSW5wdXROYW1lKGF0dHJpYnV0ZSwgaW5wdXROYW1lKVxuICAgICAgfVxuICAgIH0pXG5cbiAgICB2YWxpZGF0aW9uRXJyb3JzLm1hcCgodmFsaWRhdGlvbkVycm9yKSA9PiB2YWxpZGF0aW9uRXJyb3Iuc2V0SGFuZGxlZCgpKVxuXG4gICAgcmV0dXJuIHZhbGlkYXRpb25FcnJvcnNcbiAgfVxuXG4gIGdldFVuaGFuZGxlZEVycm9yTWVzc2FnZSAoKSB7XG4gICAgY29uc3QgdW5oYW5kbGVkVmFsaWRhdGlvbkVycm9ycyA9IHRoaXMudmFsaWRhdGlvbkVycm9ycy5maWx0ZXIoKHZhbGlkYXRpb25FcnJvcikgPT4gIXZhbGlkYXRpb25FcnJvci5nZXRIYW5kbGVkKCkpXG5cbiAgICBpZiAodW5oYW5kbGVkVmFsaWRhdGlvbkVycm9ycy5sZW5ndGggPiAwKSB7XG4gICAgICBjb25zdCB1bmhhbmRsZWRWYWxpZGF0aW9uRXJyb3JNZXNzYWdlcyA9IFtdXG5cbiAgICAgIGZvciAoY29uc3QgdW5oYW5kbGVkVmFsaWRhdGlvbkVycm9yIG9mIHVuaGFuZGxlZFZhbGlkYXRpb25FcnJvcnMpIHtcbiAgICAgICAgZm9yIChjb25zdCBlcnJvck1lc3NhZ2Ugb2YgdW5oYW5kbGVkVmFsaWRhdGlvbkVycm9yLmdldEZ1bGxFcnJvck1lc3NhZ2VzKCkpIHtcbiAgICAgICAgICB1bmhhbmRsZWRWYWxpZGF0aW9uRXJyb3JNZXNzYWdlcy5wdXNoKGVycm9yTWVzc2FnZSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gdW5oYW5kbGVkVmFsaWRhdGlvbkVycm9yTWVzc2FnZXMuam9pbihcIi4gXCIpXG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCB7XG4gIFZhbGlkYXRpb25FcnJvcixcbiAgVmFsaWRhdGlvbkVycm9yc1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFRQSxJQUFJLEVBQUVDLElBQUksUUFBTyxXQUFXO0FBQ3BDLE9BQU8sS0FBS0MsVUFBVSxNQUFNLFlBQVk7QUFDeEMsT0FBT0MsaUJBQWlCLE1BQU0sdUJBQXVCO0FBRXJELE1BQU1DLGVBQWUsQ0FBQztFQUNwQkMsV0FBV0EsQ0FBQ0MsSUFBSSxFQUFFO0lBQ2hCLElBQUksQ0FBQ0MsYUFBYSxHQUFHUCxJQUFJLENBQUNNLElBQUksRUFBRSxnQkFBZ0IsQ0FBQztJQUNqRCxJQUFJLENBQUNFLGFBQWEsR0FBR1IsSUFBSSxDQUFDTSxJQUFJLEVBQUUsZ0JBQWdCLENBQUM7SUFDakQsSUFBSSxDQUFDRyxhQUFhLEdBQUdULElBQUksQ0FBQ00sSUFBSSxFQUFFLGdCQUFnQixDQUFDO0lBQ2pELElBQUksQ0FBQ0ksVUFBVSxHQUFHVixJQUFJLENBQUNNLElBQUksRUFBRSxhQUFhLENBQUM7SUFDM0MsSUFBSSxDQUFDSyxTQUFTLEdBQUdMLElBQUksQ0FBQ00sVUFBVTtJQUNoQyxJQUFJLENBQUNDLE9BQU8sR0FB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
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import { digg } from "diggerize";
|
|
3
|
+
import memo from "set-state-compare/src/memo";
|
|
4
|
+
import useCollection from "./use-collection";
|
|
5
|
+
export default (WrappedComponent, withCollectionArgs) => memo(() => {
|
|
6
|
+
const useCollectionResult = useCollection(withCollectionArgs);
|
|
7
|
+
const models = digg(useCollectionResult, "models");
|
|
8
|
+
const modelsArgName = inflection.camelize(digg(withCollectionArgs.modelClass.modelClassData(), "pluralName"), true);
|
|
9
|
+
const forwardArgs = {};
|
|
10
|
+
forwardArgs[modelsArgName] = models;
|
|
11
|
+
return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, forwardArgs, this.props));
|
|
12
|
+
});
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkaWdnIiwibWVtbyIsInVzZUNvbGxlY3Rpb24iLCJXcmFwcGVkQ29tcG9uZW50Iiwid2l0aENvbGxlY3Rpb25BcmdzIiwidXNlQ29sbGVjdGlvblJlc3VsdCIsIm1vZGVscyIsIm1vZGVsc0FyZ05hbWUiLCJpbmZsZWN0aW9uIiwiY2FtZWxpemUiLCJtb2RlbENsYXNzIiwibW9kZWxDbGFzc0RhdGEiLCJmb3J3YXJkQXJncyIsIlJlYWN0IiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzIiwicHJvcHMiXSwic291cmNlcyI6WyIuLi9zcmMvd2l0aC1jb2xsZWN0aW9uLmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2RpZ2d9IGZyb20gXCJkaWdnZXJpemVcIlxuaW1wb3J0IG1lbW8gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9tZW1vXCJcbmltcG9ydCB1c2VDb2xsZWN0aW9uIGZyb20gXCIuL3VzZS1jb2xsZWN0aW9uXCJcblxuZXhwb3J0IGRlZmF1bHQgKFdyYXBwZWRDb21wb25lbnQsIHdpdGhDb2xsZWN0aW9uQXJncykgPT4gbWVtbygoKSA9PiB7XG4gIGNvbnN0IHVzZUNvbGxlY3Rpb25SZXN1bHQgPSB1c2VDb2xsZWN0aW9uKHdpdGhDb2xsZWN0aW9uQXJncylcbiAgY29uc3QgbW9kZWxzID0gZGlnZyh1c2VDb2xsZWN0aW9uUmVzdWx0LCBcIm1vZGVsc1wiKVxuICBjb25zdCBtb2RlbHNBcmdOYW1lID0gaW5mbGVjdGlvbi5jYW1lbGl6ZShkaWdnKHdpdGhDb2xsZWN0aW9uQXJncy5tb2RlbENsYXNzLm1vZGVsQ2xhc3NEYXRhKCksIFwicGx1cmFsTmFtZVwiKSwgdHJ1ZSlcbiAgY29uc3QgZm9yd2FyZEFyZ3MgPSB7fVxuXG4gIGZvcndhcmRBcmdzW21vZGVsc0FyZ05hbWVdID0gbW9kZWxzXG5cbiAgcmV0dXJuIChcbiAgICA8V3JhcHBlZENvbXBvbmVudCB7Li4uZm9yd2FyZEFyZ3N9IHsuLi50aGlzLnByb3BzfSAvPlxuICApXG59KVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsU0FBUUEsSUFBSSxRQUFPLFdBQVc7QUFDOUIsT0FBT0MsSUFBSSxNQUFNLDRCQUE0QjtBQUM3QyxPQUFPQyxhQUFhLE1BQU0sa0JBQWtCO0FBRTVDLGVBQWUsQ0FBQ0MsZ0JBQWdCLEVBQUVDLGtCQUFrQixLQUFLSCxJQUFJLENBQUMsTUFBTTtFQUNsRSxNQUFNSSxtQkFBbUIsR0FBR0gsYUFBYSxDQUFDRSxrQkFBa0IsQ0FBQztFQUM3RCxNQUFNRSxNQUFNLEdBQUdOLElBQUksQ0FBQ0ssbUJBQW1CLEVBQUUsUUFBUSxDQUFDO0VBQ2xELE1BQU1FLGFBQWEsR0FBR0MsVUFBVSxDQUFDQyxRQUFRLENBQUNULElBQUksQ0FBQ0ksa0JBQWtCLENBQUNNLFVBQVUsQ0FBQ0MsY0FBYyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsRUFBRSxJQUFJLENBQUM7RUFDbkgsTUFBTUMsV0FBVyxHQUFHLENBQUMsQ0FBQztFQUV0QkEsV0FBVyxDQUFDTCxhQUFhLENBQUMsR0FBR0QsTUFBTTtFQUVuQyxvQkFDRU8sS0FBQSxDQUFBQyxhQUFBLENBQUNYLGdCQUFnQixFQUFBWSxRQUFBLEtBQUtILFdBQVcsRUFBTSxJQUFJLENBQUNJLEtBQUssQ0FBRyxDQUFDO0FBRXpELENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import useCurrentUser from "./use-current-user";
|
|
3
|
+
export default WrappedComponent => props => {
|
|
4
|
+
const currentUser = useCurrentUser();
|
|
5
|
+
return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, props, {
|
|
6
|
+
currentUser: currentUser
|
|
7
|
+
}));
|
|
8
|
+
};
|
|
9
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VDdXJyZW50VXNlciIsIldyYXBwZWRDb21wb25lbnQiLCJwcm9wcyIsImN1cnJlbnRVc2VyIiwiUmVhY3QiLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMiXSwic291cmNlcyI6WyIuLi9zcmMvd2l0aC1jdXJyZW50LXVzZXIuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1c2VDdXJyZW50VXNlciBmcm9tIFwiLi91c2UtY3VycmVudC11c2VyXCJcblxuZXhwb3J0IGRlZmF1bHQgKFdyYXBwZWRDb21wb25lbnQpID0+IChwcm9wcykgPT4ge1xuICBjb25zdCBjdXJyZW50VXNlciA9IHVzZUN1cnJlbnRVc2VyKClcblxuICByZXR1cm4gKFxuICAgIDxXcmFwcGVkQ29tcG9uZW50IHsuLi5wcm9wc30gY3VycmVudFVzZXI9e2N1cnJlbnRVc2VyfSAvPlxuICApXG59XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPQSxjQUFjLE1BQU0sb0JBQW9CO0FBRS9DLGVBQWdCQyxnQkFBZ0IsSUFBTUMsS0FBSyxJQUFLO0VBQzlDLE1BQU1DLFdBQVcsR0FBR0gsY0FBYyxDQUFDLENBQUM7RUFFcEMsb0JBQ0VJLEtBQUEsQ0FBQUMsYUFBQSxDQUFDSixnQkFBZ0IsRUFBQUssUUFBQSxLQUFLSixLQUFLO0lBQUVDLFdBQVcsRUFBRUE7RUFBWSxFQUFFLENBQUM7QUFFN0QsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import memo from "set-state-compare/src/memo";
|
|
3
|
+
import useModel from "./use-model";
|
|
4
|
+
export default (WrappedComponent, modelClass, givenArgs) => {
|
|
5
|
+
const ApiMakerWithModel = props => {
|
|
6
|
+
const args = Object.assign({
|
|
7
|
+
match: props.match
|
|
8
|
+
}, givenArgs);
|
|
9
|
+
const useModelResult = useModel(modelClass, args);
|
|
10
|
+
return /*#__PURE__*/React.createElement(WrappedComponent, _extends({}, useModelResult, props));
|
|
11
|
+
};
|
|
12
|
+
return memo(ApiMakerWithModel);
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtZW1vIiwidXNlTW9kZWwiLCJXcmFwcGVkQ29tcG9uZW50IiwibW9kZWxDbGFzcyIsImdpdmVuQXJncyIsIkFwaU1ha2VyV2l0aE1vZGVsIiwicHJvcHMiLCJhcmdzIiwiT2JqZWN0IiwiYXNzaWduIiwibWF0Y2giLCJ1c2VNb2RlbFJlc3VsdCIsIlJlYWN0IiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzIl0sInNvdXJjZXMiOlsiLi4vc3JjL3dpdGgtbW9kZWwuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvbWVtb1wiXG5pbXBvcnQgdXNlTW9kZWwgZnJvbSBcIi4vdXNlLW1vZGVsXCJcblxuZXhwb3J0IGRlZmF1bHQgKFdyYXBwZWRDb21wb25lbnQsIG1vZGVsQ2xhc3MsIGdpdmVuQXJncykgPT4ge1xuICBjb25zdCBBcGlNYWtlcldpdGhNb2RlbCA9IChwcm9wcykgPT4ge1xuICAgIGNvbnN0IGFyZ3MgPSBPYmplY3QuYXNzaWduKHttYXRjaDogcHJvcHMubWF0Y2h9LCBnaXZlbkFyZ3MpXG4gICAgY29uc3QgdXNlTW9kZWxSZXN1bHQgPSB1c2VNb2RlbChtb2RlbENsYXNzLCBhcmdzKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxXcmFwcGVkQ29tcG9uZW50IHsuLi51c2VNb2RlbFJlc3VsdH0gey4uLnByb3BzfSAvPlxuICAgIClcbiAgfVxuXG4gIHJldHVybiBtZW1vKEFwaU1ha2VyV2l0aE1vZGVsKVxufVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsSUFBSSxNQUFNLDRCQUE0QjtBQUM3QyxPQUFPQyxRQUFRLE1BQU0sYUFBYTtBQUVsQyxlQUFlLENBQUNDLGdCQUFnQixFQUFFQyxVQUFVLEVBQUVDLFNBQVMsS0FBSztFQUMxRCxNQUFNQyxpQkFBaUIsR0FBSUMsS0FBSyxJQUFLO0lBQ25DLE1BQU1DLElBQUksR0FBR0MsTUFBTSxDQUFDQyxNQUFNLENBQUM7TUFBQ0MsS0FBSyxFQUFFSixLQUFLLENBQUNJO0lBQUssQ0FBQyxFQUFFTixTQUFTLENBQUM7SUFDM0QsTUFBTU8sY0FBYyxHQUFHVixRQUFRLENBQUNFLFVBQVUsRUFBRUksSUFBSSxDQUFDO0lBRWpELG9CQUNFSyxLQUFBLENBQUFDLGFBQUEsQ0FBQ1gsZ0JBQWdCLEVBQUFZLFFBQUEsS0FBS0gsY0FBYyxFQUFNTCxLQUFLLENBQUcsQ0FBQztFQUV2RCxDQUFDO0VBRUQsT0FBT04sSUFBSSxDQUFDSyxpQkFBaUIsQ0FBQztBQUNoQyxDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
2
|
+
import useRouter from "./use-router";
|
|
3
|
+
export default WrapperComponent => props => {
|
|
4
|
+
const {
|
|
5
|
+
path,
|
|
6
|
+
routes,
|
|
7
|
+
routeDefinitions,
|
|
8
|
+
...restProps
|
|
9
|
+
} = props;
|
|
10
|
+
const {
|
|
11
|
+
match
|
|
12
|
+
} = useRouter({
|
|
13
|
+
path,
|
|
14
|
+
routes,
|
|
15
|
+
routeDefinitions
|
|
16
|
+
});
|
|
17
|
+
return /*#__PURE__*/React.createElement(WrapperComponent, _extends({
|
|
18
|
+
match: match
|
|
19
|
+
}, restProps));
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJ1c2VSb3V0ZXIiLCJXcmFwcGVyQ29tcG9uZW50IiwicHJvcHMiLCJwYXRoIiwicm91dGVzIiwicm91dGVEZWZpbml0aW9ucyIsInJlc3RQcm9wcyIsIm1hdGNoIiwiUmVhY3QiLCJjcmVhdGVFbGVtZW50IiwiX2V4dGVuZHMiXSwic291cmNlcyI6WyIuLi9zcmMvd2l0aC1yb3V0ZXIuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB1c2VSb3V0ZXIgZnJvbSBcIi4vdXNlLXJvdXRlclwiXG5cbmV4cG9ydCBkZWZhdWx0IChXcmFwcGVyQ29tcG9uZW50KSA9PiAocHJvcHMpID0+IHtcbiAgY29uc3Qge3BhdGgsIHJvdXRlcywgcm91dGVEZWZpbml0aW9ucywgLi4ucmVzdFByb3BzfSA9IHByb3BzXG4gIGNvbnN0IHttYXRjaH0gPSB1c2VSb3V0ZXIoe3BhdGgsIHJvdXRlcywgcm91dGVEZWZpbml0aW9uc30pXG5cbiAgcmV0dXJuIChcbiAgICA8V3JhcHBlckNvbXBvbmVudCBtYXRjaD17bWF0Y2h9IHsuLi5yZXN0UHJvcHN9IC8+XG4gIClcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU9BLFNBQVMsTUFBTSxjQUFjO0FBRXBDLGVBQWdCQyxnQkFBZ0IsSUFBTUMsS0FBSyxJQUFLO0VBQzlDLE1BQU07SUFBQ0MsSUFBSTtJQUFFQyxNQUFNO0lBQUVDLGdCQUFnQjtJQUFFLEdBQUdDO0VBQVMsQ0FBQyxHQUFHSixLQUFLO0VBQzVELE1BQU07SUFBQ0s7RUFBSyxDQUFDLEdBQUdQLFNBQVMsQ0FBQztJQUFDRyxJQUFJO0lBQUVDLE1BQU07SUFBRUM7RUFBZ0IsQ0FBQyxDQUFDO0VBRTNELG9CQUNFRyxLQUFBLENBQUFDLGFBQUEsQ0FBQ1IsZ0JBQWdCLEVBQUFTLFFBQUE7SUFBQ0gsS0FBSyxFQUFFQTtFQUFNLEdBQUtELFNBQVMsQ0FBRyxDQUFDO0FBRXJELENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
require 'json'
|
|
2
|
+
|
|
3
|
+
package = JSON.parse(File.read(File.join(__dir__, '..', 'package.json')))
|
|
4
|
+
|
|
5
|
+
Pod::Spec.new do |s|
|
|
6
|
+
s.name = 'ApiMaker'
|
|
7
|
+
s.version = package['version']
|
|
8
|
+
s.summary = package['description']
|
|
9
|
+
s.description = package['description']
|
|
10
|
+
s.license = package['license']
|
|
11
|
+
s.author = package['author']
|
|
12
|
+
s.homepage = package['homepage']
|
|
13
|
+
s.platforms = {
|
|
14
|
+
:ios => '15.1',
|
|
15
|
+
:tvos => '15.1'
|
|
16
|
+
}
|
|
17
|
+
s.swift_version = '5.4'
|
|
18
|
+
s.source = { git: 'https://github.com/kaspernj/api_maker' }
|
|
19
|
+
s.static_framework = true
|
|
20
|
+
|
|
21
|
+
s.dependency 'ExpoModulesCore'
|
|
22
|
+
|
|
23
|
+
# Swift/Objective-C compatibility
|
|
24
|
+
s.pod_target_xcconfig = {
|
|
25
|
+
'DEFINES_MODULE' => 'YES',
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
s.source_files = "**/*.{h,m,mm,swift,hpp,cpp}"
|
|
29
|
+
end
|