@cratis/scene.components 3.4.0 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +87 -3
- package/bindings/ArcBoundComponents.tsx +40 -0
- package/bindings/BoundConstructor.ts +5 -5
- package/bindings/bindingRegistry.ts +52 -4
- package/bindings/for_bindingRegistry/when_registering_query_identities.ts +81 -0
- package/bindings/for_requireArcProxy/NativeProxies.ts +28 -0
- package/bindings/for_requireArcProxy/when_mounting_bound_adapters.tsx +73 -0
- package/bindings/for_requireArcProxy/when_previewing_without_arc.tsx +37 -0
- package/bindings/for_requireArcProxy/when_validating_a_proxy.ts +44 -0
- package/bindings/requireArcProxy.ts +24 -0
- package/cratisComponents.ts +4 -1
- package/cratisComponentsPackage.ts +3 -1
- package/data/SceneDataTable.tsx +1 -1
- package/data/SceneObservableDataTable.tsx +1 -1
- package/data/SceneSingleResult.tsx +29 -0
- package/data/SingleResultRuntime.tsx +103 -0
- package/data/SingleResultStatus.tsx +13 -0
- package/data/for_SceneDataTable/when_forwarding_query_arguments.tsx +23 -2
- package/data/for_SceneSingleResult/when_executing_a_native_query.tsx +290 -0
- package/data/for_SceneSingleResult/when_gating_the_lazy_runtime.tsx +60 -0
- package/data/index.ts +1 -0
- package/dialogs/SceneCommandDialog.tsx +1 -1
- package/dialogs/SceneStepperCommandDialog.tsx +1 -1
- package/dist/cjs/bindings/ArcBoundComponents.js +55 -0
- package/dist/cjs/bindings/ArcBoundComponents.js.map +1 -0
- package/dist/cjs/bindings/bindingRegistry.js +52 -4
- package/dist/cjs/bindings/bindingRegistry.js.map +1 -1
- package/dist/cjs/bindings/requireArcProxy.js +25 -0
- package/dist/cjs/bindings/requireArcProxy.js.map +1 -0
- package/dist/cjs/cratisComponents.js +4 -0
- package/dist/cjs/cratisComponents.js.map +1 -1
- package/dist/cjs/cratisComponentsPackage.js +3 -1
- package/dist/cjs/cratisComponentsPackage.js.map +1 -1
- package/dist/cjs/data/SceneDataTable.js +1 -1
- package/dist/cjs/data/SceneDataTable.js.map +1 -1
- package/dist/cjs/data/SceneObservableDataTable.js +1 -1
- package/dist/cjs/data/SceneObservableDataTable.js.map +1 -1
- package/dist/cjs/data/SceneSingleResult.js +41 -0
- package/dist/cjs/data/SceneSingleResult.js.map +1 -0
- package/dist/cjs/data/SingleResultRuntime.js +137 -0
- package/dist/cjs/data/SingleResultRuntime.js.map +1 -0
- package/dist/cjs/data/SingleResultStatus.js +23 -0
- package/dist/cjs/data/SingleResultStatus.js.map +1 -0
- package/dist/cjs/dialogs/SceneCommandDialog.js +1 -1
- package/dist/cjs/dialogs/SceneCommandDialog.js.map +1 -1
- package/dist/cjs/dialogs/SceneStepperCommandDialog.js +1 -1
- package/dist/cjs/dialogs/SceneStepperCommandDialog.js.map +1 -1
- package/dist/cjs/forms/SceneQueryInputForm.js +141 -0
- package/dist/cjs/forms/SceneQueryInputForm.js.map +1 -0
- package/dist/cjs/forms/fields/SceneRadioButtonField.js +4 -1
- package/dist/cjs/forms/fields/SceneRadioButtonField.js.map +1 -1
- package/dist/cjs/forms/queryInputs.js +50 -0
- package/dist/cjs/forms/queryInputs.js.map +1 -0
- package/dist/cjs/index.js +8 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/pages/SceneDataPage.js +1 -1
- package/dist/cjs/pages/SceneDataPage.js.map +1 -1
- package/dist/esm/bindings/ArcBoundComponents.d.ts +18 -0
- package/dist/esm/bindings/ArcBoundComponents.d.ts.map +1 -0
- package/dist/esm/bindings/ArcBoundComponents.js +49 -0
- package/dist/esm/bindings/ArcBoundComponents.js.map +1 -0
- package/dist/esm/bindings/bindingRegistry.d.ts +4 -0
- package/dist/esm/bindings/bindingRegistry.d.ts.map +1 -1
- package/dist/esm/bindings/bindingRegistry.js +49 -5
- package/dist/esm/bindings/bindingRegistry.js.map +1 -1
- package/dist/esm/bindings/for_bindingRegistry/when_registering_query_identities.d.ts +2 -0
- package/dist/esm/bindings/for_bindingRegistry/when_registering_query_identities.d.ts.map +1 -0
- package/dist/esm/bindings/for_bindingRegistry/when_registering_query_identities.js +73 -0
- package/dist/esm/bindings/for_bindingRegistry/when_registering_query_identities.js.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/NativeProxies.d.ts +25 -0
- package/dist/esm/bindings/for_requireArcProxy/NativeProxies.d.ts.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/NativeProxies.js +23 -0
- package/dist/esm/bindings/for_requireArcProxy/NativeProxies.js.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_mounting_bound_adapters.d.ts +2 -0
- package/dist/esm/bindings/for_requireArcProxy/when_mounting_bound_adapters.d.ts.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_mounting_bound_adapters.js +56 -0
- package/dist/esm/bindings/for_requireArcProxy/when_mounting_bound_adapters.js.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_previewing_without_arc.d.ts +2 -0
- package/dist/esm/bindings/for_requireArcProxy/when_previewing_without_arc.d.ts.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_previewing_without_arc.js +32 -0
- package/dist/esm/bindings/for_requireArcProxy/when_previewing_without_arc.js.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_validating_a_proxy.d.ts +2 -0
- package/dist/esm/bindings/for_requireArcProxy/when_validating_a_proxy.d.ts.map +1 -0
- package/dist/esm/bindings/for_requireArcProxy/when_validating_a_proxy.js +45 -0
- package/dist/esm/bindings/for_requireArcProxy/when_validating_a_proxy.js.map +1 -0
- package/dist/esm/bindings/requireArcProxy.d.ts +5 -0
- package/dist/esm/bindings/requireArcProxy.d.ts.map +1 -0
- package/dist/esm/bindings/requireArcProxy.js +23 -0
- package/dist/esm/bindings/requireArcProxy.js.map +1 -0
- package/dist/esm/cratisComponents.d.ts.map +1 -1
- package/dist/esm/cratisComponents.js +4 -0
- package/dist/esm/cratisComponents.js.map +1 -1
- package/dist/esm/cratisComponentsPackage.d.ts.map +1 -1
- package/dist/esm/cratisComponentsPackage.js +3 -1
- package/dist/esm/cratisComponentsPackage.js.map +1 -1
- package/dist/esm/data/SceneDataTable.js +1 -1
- package/dist/esm/data/SceneDataTable.js.map +1 -1
- package/dist/esm/data/SceneObservableDataTable.js +1 -1
- package/dist/esm/data/SceneObservableDataTable.js.map +1 -1
- package/dist/esm/data/SceneSingleResult.d.ts +3 -0
- package/dist/esm/data/SceneSingleResult.d.ts.map +1 -0
- package/dist/esm/data/SceneSingleResult.js +39 -0
- package/dist/esm/data/SceneSingleResult.js.map +1 -0
- package/dist/esm/data/SingleResultRuntime.d.ts +10 -0
- package/dist/esm/data/SingleResultRuntime.d.ts.map +1 -0
- package/dist/esm/data/SingleResultRuntime.js +133 -0
- package/dist/esm/data/SingleResultRuntime.js.map +1 -0
- package/dist/esm/data/SingleResultStatus.d.ts +7 -0
- package/dist/esm/data/SingleResultStatus.d.ts.map +1 -0
- package/dist/esm/data/SingleResultStatus.js +21 -0
- package/dist/esm/data/SingleResultStatus.js.map +1 -0
- package/dist/esm/data/for_SceneDataTable/when_forwarding_query_arguments.js +21 -4
- package/dist/esm/data/for_SceneDataTable/when_forwarding_query_arguments.js.map +1 -1
- package/dist/esm/data/for_SceneSingleResult/when_executing_a_native_query.d.ts +2 -0
- package/dist/esm/data/for_SceneSingleResult/when_executing_a_native_query.d.ts.map +1 -0
- package/dist/esm/data/for_SceneSingleResult/when_executing_a_native_query.js +255 -0
- package/dist/esm/data/for_SceneSingleResult/when_executing_a_native_query.js.map +1 -0
- package/dist/esm/data/for_SceneSingleResult/when_gating_the_lazy_runtime.d.ts +2 -0
- package/dist/esm/data/for_SceneSingleResult/when_gating_the_lazy_runtime.d.ts.map +1 -0
- package/dist/esm/data/for_SceneSingleResult/when_gating_the_lazy_runtime.js +54 -0
- package/dist/esm/data/for_SceneSingleResult/when_gating_the_lazy_runtime.js.map +1 -0
- package/dist/esm/data/index.d.ts +1 -0
- package/dist/esm/data/index.d.ts.map +1 -1
- package/dist/esm/data/index.js +1 -0
- package/dist/esm/data/index.js.map +1 -1
- package/dist/esm/dialogs/SceneCommandDialog.js +1 -1
- package/dist/esm/dialogs/SceneCommandDialog.js.map +1 -1
- package/dist/esm/dialogs/SceneStepperCommandDialog.js +1 -1
- package/dist/esm/dialogs/SceneStepperCommandDialog.js.map +1 -1
- package/dist/esm/for_cratisComponentsPackage/when_describing_query_input_form.d.ts +2 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_query_input_form.d.ts.map +1 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_query_input_form.js +14 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_query_input_form.js.map +1 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_single_result.d.ts +2 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_single_result.d.ts.map +1 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_single_result.js +16 -0
- package/dist/esm/for_cratisComponentsPackage/when_describing_single_result.js.map +1 -0
- package/dist/esm/forms/SceneQueryInputForm.d.ts +3 -0
- package/dist/esm/forms/SceneQueryInputForm.d.ts.map +1 -0
- package/dist/esm/forms/SceneQueryInputForm.js +139 -0
- package/dist/esm/forms/SceneQueryInputForm.js.map +1 -0
- package/dist/esm/forms/fields/SceneRadioButtonField.d.ts.map +1 -1
- package/dist/esm/forms/fields/SceneRadioButtonField.js +4 -1
- package/dist/esm/forms/fields/SceneRadioButtonField.js.map +1 -1
- package/dist/esm/forms/fields/for_SceneRadioButtonField/when_mapping_the_group_name.d.ts +2 -0
- package/dist/esm/forms/fields/for_SceneRadioButtonField/when_mapping_the_group_name.d.ts.map +1 -0
- package/dist/esm/forms/fields/for_SceneRadioButtonField/when_mapping_the_group_name.js +38 -0
- package/dist/esm/forms/fields/for_SceneRadioButtonField/when_mapping_the_group_name.js.map +1 -0
- package/dist/esm/forms/fields/for_resolveFieldBinding/when_resolving_a_field_binding.js +4 -0
- package/dist/esm/forms/fields/for_resolveFieldBinding/when_resolving_a_field_binding.js.map +1 -1
- package/dist/esm/forms/for_SceneQueryInputForm/ProjectLookup.d.ts +26 -0
- package/dist/esm/forms/for_SceneQueryInputForm/ProjectLookup.d.ts.map +1 -0
- package/dist/esm/forms/for_SceneQueryInputForm/ProjectLookup.js +44 -0
- package/dist/esm/forms/for_SceneQueryInputForm/ProjectLookup.js.map +1 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_generated_guid_parameters.d.ts +2 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_generated_guid_parameters.d.ts.map +1 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_generated_guid_parameters.js +175 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_generated_guid_parameters.js.map +1 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_native_queries.d.ts +2 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_native_queries.d.ts.map +1 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_native_queries.js +413 -0
- package/dist/esm/forms/for_SceneQueryInputForm/when_submitting_native_queries.js.map +1 -0
- package/dist/esm/forms/index.d.ts +2 -0
- package/dist/esm/forms/index.d.ts.map +1 -1
- package/dist/esm/forms/index.js +1 -0
- package/dist/esm/forms/index.js.map +1 -1
- package/dist/esm/forms/queryInputs.d.ts +10 -0
- package/dist/esm/forms/queryInputs.d.ts.map +1 -0
- package/dist/esm/forms/queryInputs.js +47 -0
- package/dist/esm/forms/queryInputs.js.map +1 -0
- package/dist/esm/index.js +3 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/pages/SceneDataPage.js +1 -1
- package/dist/esm/pages/SceneDataPage.js.map +1 -1
- package/dist/esm/tsconfig.tsbuildinfo +1 -1
- package/for_cratisComponentsPackage/when_describing_query_input_form.ts +17 -0
- package/for_cratisComponentsPackage/when_describing_single_result.ts +20 -0
- package/forms/SceneQueryInputForm.tsx +79 -0
- package/forms/fields/SceneRadioButtonField.tsx +4 -1
- package/forms/fields/for_SceneRadioButtonField/when_mapping_the_group_name.tsx +45 -0
- package/forms/fields/for_resolveFieldBinding/when_resolving_a_field_binding.ts +6 -0
- package/forms/for_SceneQueryInputForm/ProjectLookup.ts +54 -0
- package/forms/for_SceneQueryInputForm/when_submitting_generated_guid_parameters.tsx +188 -0
- package/forms/for_SceneQueryInputForm/when_submitting_native_queries.tsx +423 -0
- package/forms/index.ts +2 -0
- package/forms/queryInputs.ts +50 -0
- package/package.json +23 -7
- package/pages/SceneDataPage.tsx +1 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
7
|
+
const messages = {
|
|
8
|
+
idle: 'Idle',
|
|
9
|
+
loading: 'Loading',
|
|
10
|
+
notFound: 'Not found',
|
|
11
|
+
failure: 'Unable to load result',
|
|
12
|
+
success: ''
|
|
13
|
+
};
|
|
14
|
+
/** Internal shared presentation; never exposes query exception messages or server stack traces. */ function SingleResultStatus({ state, value }) {
|
|
15
|
+
return /*#__PURE__*/ jsxRuntime.jsx("span", {
|
|
16
|
+
role: state === 'failure' ? 'alert' : 'status',
|
|
17
|
+
"data-scene-single-result": state,
|
|
18
|
+
children: state === 'success' ? value : messages[state]
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
exports.SingleResultStatus = SingleResultStatus;
|
|
23
|
+
//# sourceMappingURL=SingleResultStatus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SingleResultStatus.js","sources":["../../../data/SingleResultStatus.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\ntype State = 'idle' | 'loading' | 'notFound' | 'failure' | 'success';\n\nconst messages = { idle: 'Idle', loading: 'Loading', notFound: 'Not found', failure: 'Unable to load result', success: '' };\n\n/** Internal shared presentation; never exposes query exception messages or server stack traces. */\nexport function SingleResultStatus({ state, value }: { state: State; value?: string }) {\n return <span role={state === 'failure' ? 'alert' : 'status'} data-scene-single-result={state}>\n {state === 'success' ? value : messages[state]}\n </span>;\n}\n"],"names":["messages","idle","loading","notFound","failure","success","SingleResultStatus","state","value","_jsx","span","role","data-scene-single-result"],"mappings":";;;;AAAA;AACA;AAIA,MAAMA,QAAAA,GAAW;IAAEC,IAAAA,EAAM,MAAA;IAAQC,OAAAA,EAAS,SAAA;IAAWC,QAAAA,EAAU,WAAA;IAAaC,OAAAA,EAAS,uBAAA;IAAyBC,OAAAA,EAAS;AAAG,CAAA;AAE1H,oGACO,SAASC,kBAAAA,CAAmB,EAAEC,KAAK,EAAEC,KAAK,EAAoC,EAAA;AACjF,IAAA,qBAAOC,cAAA,CAACC,MAAAA,EAAAA;QAAKC,IAAAA,EAAMJ,KAAAA,KAAU,YAAY,OAAA,GAAU,QAAA;QAAUK,0BAAAA,EAA0BL,KAAAA;AAClFA,QAAAA,QAAAA,EAAAA,KAAAA,KAAU,SAAA,GAAYC,KAAAA,GAAQR,QAAQ,CAACO,KAAAA;;AAEhD;;"}
|
|
@@ -9,7 +9,7 @@ var ArcRuntimeBoundary = require('../bindings/ArcRuntimeBoundary.js');
|
|
|
9
9
|
var properties = require('../properties.js');
|
|
10
10
|
|
|
11
11
|
const CommandDialog = /*#__PURE__*/ react.lazy(async ()=>({
|
|
12
|
-
default: (await
|
|
12
|
+
default: (await Promise.resolve().then(function () { return require('../bindings/ArcBoundComponents.js'); })).BoundCommandDialog
|
|
13
13
|
}));
|
|
14
14
|
/**
|
|
15
15
|
* The `Cratis.Components:commandDialog` component - `CommandDialog` from `@cratis/components/CommandDialog`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneCommandDialog.js","sources":["../../../dialogs/SceneCommandDialog.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { booleanProperty, stringProperty } from '../properties';\n\nconst CommandDialog = lazy(async () => ({ default: (await import('
|
|
1
|
+
{"version":3,"file":"SceneCommandDialog.js","sources":["../../../dialogs/SceneCommandDialog.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { booleanProperty, stringProperty } from '../properties';\n\nconst CommandDialog = lazy(async () => ({ default: (await import('../bindings/ArcBoundComponents')).BoundCommandDialog }));\n\n/**\n * The `Cratis.Components:commandDialog` component - `CommandDialog` from `@cratis/components/CommandDialog`.\n *\n * A dialog whose confirm button *is* the command's execution: it binds the form to the command, submits\n * on confirm, feeds the backend's validation results back onto the fields, and only closes when the\n * command succeeded. That last part is the reason to use it rather than composing `dialog` with\n * `commandForm` - a hand-composed pair has no way to keep the dialog open on a rejected command without\n * reimplementing the protocol.\n *\n * The `command` property names an Arc command proxy; the fields go in the `content` slot.\n *\n * `dismissable` and `closeAriaLabel` are here rather than on `dialog` alone because `CommandDialog`\n * forwards both to the dialog it wraps, and in `@cratis/components` 3.0.0 that forwarding actually\n * happens - 2.x accepted the two props and dropped them on the floor. `dismissable` matters more on a\n * command dialog than anywhere else: it decides whether a half-filled form can be abandoned with\n * `Escape` or a backdrop click, which is a decision about the command, not about the chrome.\n *\n * The `resizable` property this adapter used to carry is gone. It is still declared upstream so call\n * sites compile, but PrimeReact 11's headless dialog has no resize handle and nothing reads the prop.\n */\nexport function SceneCommandDialog({ element, slots }: RegisteredComponentProps) {\n const { name, target } = resolveElementBinding(element, BindingKind.Command);\n if (!target) return <MissingBinding element={element} kind={BindingKind.Command} name={name} />;\n\n return (\n <ArcRuntimeBoundary>\n <CommandDialog\n title={stringProperty(element.properties, 'title') ?? ''}\n command={target}\n visible={booleanProperty(element.properties, 'visible') ?? true}\n width={stringProperty(element.properties, 'width')}\n dismissable={booleanProperty(element.properties, 'dismissable')}\n okLabel={stringProperty(element.properties, 'okLabel')}\n cancelLabel={stringProperty(element.properties, 'cancelLabel')}\n closeAriaLabel={stringProperty(element.properties, 'closeAriaLabel')}\n className={stringProperty(element.properties, 'className')}\n >\n {slots.content}\n </CommandDialog>\n </ArcRuntimeBoundary>\n );\n}\n"],"names":["CommandDialog","lazy","default","BoundCommandDialog","SceneCommandDialog","element","slots","name","target","resolveElementBinding","BindingKind","Command","_jsx","MissingBinding","kind","ArcRuntimeBoundary","title","stringProperty","properties","command","visible","booleanProperty","width","dismissable","okLabel","cancelLabel","closeAriaLabel","className","content"],"mappings":";;;;;;;;;;AAQA,MAAMA,aAAAA,iBAAgBC,UAAAA,CAAK,WAAa;AAAEC,QAAAA,OAAAA,EAAS,CAAC,MAAM,oDAAO,mCAAA,KAAgC,EAAGC;KAAmB,CAAA,CAAA;AAEvH;;;;;;;;;;;;;;;;;;;AAmBC,IACM,SAASC,kBAAAA,CAAmB,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;IAC3E,MAAM,EAAEC,IAAI,EAAEC,MAAM,EAAE,GAAGC,2CAAAA,CAAsBJ,OAAAA,EAASK,uBAAAA,CAAYC,OAAO,CAAA;IAC3E,IAAI,CAACH,MAAAA,EAAQ,qBAAOI,cAAA,CAACC,6BAAAA,EAAAA;QAAeR,OAAAA,EAASA,OAAAA;AAASS,QAAAA,IAAAA,EAAMJ,wBAAYC,OAAO;QAAEJ,IAAAA,EAAMA;;AAEvF,IAAA,qBACIK,cAAA,CAACG,qCAAAA,EAAAA;AACG,QAAA,QAAA,gBAAAH,cAAA,CAACZ,aAAAA,EAAAA;AACGgB,YAAAA,KAAAA,EAAOC,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,OAAA,CAAA,IAAY,EAAA;YACtDC,OAAAA,EAASX,MAAAA;AACTY,YAAAA,OAAAA,EAASC,0BAAAA,CAAgBhB,OAAAA,CAAQa,UAAU,EAAE,SAAA,CAAA,IAAc,IAAA;YAC3DI,KAAAA,EAAOL,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,OAAA,CAAA;YAC1CK,WAAAA,EAAaF,0BAAAA,CAAgBhB,OAAAA,CAAQa,UAAU,EAAE,aAAA,CAAA;YACjDM,OAAAA,EAASP,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,SAAA,CAAA;YAC5CO,WAAAA,EAAaR,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,aAAA,CAAA;YAChDQ,cAAAA,EAAgBT,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,gBAAA,CAAA;YACnDS,SAAAA,EAAWV,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,WAAA,CAAA;AAE7CZ,YAAAA,QAAAA,EAAAA,KAAAA,CAAMsB;;;AAIvB;;"}
|
|
@@ -9,7 +9,7 @@ var ArcRuntimeBoundary = require('../bindings/ArcRuntimeBoundary.js');
|
|
|
9
9
|
var properties = require('../properties.js');
|
|
10
10
|
|
|
11
11
|
const StepperCommandDialog = /*#__PURE__*/ react.lazy(async ()=>({
|
|
12
|
-
default: (await
|
|
12
|
+
default: (await Promise.resolve().then(function () { return require('../bindings/ArcBoundComponents.js'); })).BoundStepperCommandDialog
|
|
13
13
|
}));
|
|
14
14
|
/** Whether the step headers run across the top or down the side. */ const orientations = [
|
|
15
15
|
'horizontal',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneStepperCommandDialog.js","sources":["../../../dialogs/SceneStepperCommandDialog.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { booleanProperty, stringProperty, unionProperty } from '../properties';\n\nconst StepperCommandDialog = lazy(async () => ({\n default: (await import('
|
|
1
|
+
{"version":3,"file":"SceneStepperCommandDialog.js","sources":["../../../dialogs/SceneStepperCommandDialog.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { booleanProperty, stringProperty, unionProperty } from '../properties';\n\nconst StepperCommandDialog = lazy(async () => ({\n default: (await import('../bindings/ArcBoundComponents')).BoundStepperCommandDialog,\n}));\n\n/** Whether the step headers run across the top or down the side. */\nconst orientations = ['horizontal', 'vertical'] as const;\n\n/**\n * The `Cratis.Components:stepperCommandDialog` component - `StepperCommandDialog` from\n * `@cratis/components/CommandDialog`.\n *\n * `commandDialog` split across steps, for a command with more fields than fit one screen. It stays a\n * single command: the steps partition the *fields*, not the intent, and nothing is submitted until the\n * last step - so a half-finished wizard leaves no trace, which is exactly what a command should do.\n *\n * `linear` decides whether a step can be skipped ahead of the one before it. The step panels go in the\n * `content` slot.\n */\nexport function SceneStepperCommandDialog({ element, slots }: RegisteredComponentProps) {\n const { name, target } = resolveElementBinding(element, BindingKind.Command);\n if (!target) return <MissingBinding element={element} kind={BindingKind.Command} name={name} />;\n\n return (\n <ArcRuntimeBoundary>\n <StepperCommandDialog\n title={stringProperty(element.properties, 'title') ?? ''}\n command={target}\n visible={booleanProperty(element.properties, 'visible') ?? true}\n width={stringProperty(element.properties, 'width')}\n linear={booleanProperty(element.properties, 'linear')}\n orientation={unionProperty(element.properties, 'orientation', orientations)}\n okLabel={stringProperty(element.properties, 'okLabel')}\n nextLabel={stringProperty(element.properties, 'nextLabel')}\n previousLabel={stringProperty(element.properties, 'previousLabel')}\n showCancel={booleanProperty(element.properties, 'showCancel')}\n cancelLabel={stringProperty(element.properties, 'cancelLabel')}\n >\n {slots.content}\n </StepperCommandDialog>\n </ArcRuntimeBoundary>\n );\n}\n"],"names":["StepperCommandDialog","lazy","default","BoundStepperCommandDialog","orientations","SceneStepperCommandDialog","element","slots","name","target","resolveElementBinding","BindingKind","Command","_jsx","MissingBinding","kind","ArcRuntimeBoundary","title","stringProperty","properties","command","visible","booleanProperty","width","linear","orientation","unionProperty","okLabel","nextLabel","previousLabel","showCancel","cancelLabel","content"],"mappings":";;;;;;;;;;AAQA,MAAMA,oBAAAA,iBAAuBC,UAAAA,CAAK,WAAa;AAC3CC,QAAAA,OAAAA,EAAS,CAAC,MAAM,oDAAO,mCAAA,KAAgC,EAAGC;KAC9D,CAAA,CAAA;AAEA,qEACA,MAAMC,YAAAA,GAAe;AAAC,IAAA,YAAA;AAAc,IAAA;AAAW,CAAA;AAE/C;;;;;;;;;;AAUC,IACM,SAASC,yBAAAA,CAA0B,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;IAClF,MAAM,EAAEC,IAAI,EAAEC,MAAM,EAAE,GAAGC,2CAAAA,CAAsBJ,OAAAA,EAASK,uBAAAA,CAAYC,OAAO,CAAA;IAC3E,IAAI,CAACH,MAAAA,EAAQ,qBAAOI,cAAA,CAACC,6BAAAA,EAAAA;QAAeR,OAAAA,EAASA,OAAAA;AAASS,QAAAA,IAAAA,EAAMJ,wBAAYC,OAAO;QAAEJ,IAAAA,EAAMA;;AAEvF,IAAA,qBACIK,cAAA,CAACG,qCAAAA,EAAAA;AACG,QAAA,QAAA,gBAAAH,cAAA,CAACb,oBAAAA,EAAAA;AACGiB,YAAAA,KAAAA,EAAOC,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,OAAA,CAAA,IAAY,EAAA;YACtDC,OAAAA,EAASX,MAAAA;AACTY,YAAAA,OAAAA,EAASC,0BAAAA,CAAgBhB,OAAAA,CAAQa,UAAU,EAAE,SAAA,CAAA,IAAc,IAAA;YAC3DI,KAAAA,EAAOL,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,OAAA,CAAA;YAC1CK,MAAAA,EAAQF,0BAAAA,CAAgBhB,OAAAA,CAAQa,UAAU,EAAE,QAAA,CAAA;AAC5CM,YAAAA,WAAAA,EAAaC,wBAAAA,CAAcpB,OAAAA,CAAQa,UAAU,EAAE,aAAA,EAAef,YAAAA,CAAAA;YAC9DuB,OAAAA,EAAST,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,SAAA,CAAA;YAC5CS,SAAAA,EAAWV,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,WAAA,CAAA;YAC9CU,aAAAA,EAAeX,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,eAAA,CAAA;YAClDW,UAAAA,EAAYR,0BAAAA,CAAgBhB,OAAAA,CAAQa,UAAU,EAAE,YAAA,CAAA;YAChDY,WAAAA,EAAab,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,aAAA,CAAA;AAE/CZ,YAAAA,QAAAA,EAAAA,KAAAA,CAAMyB;;;AAIvB;;"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var react = require('react');
|
|
5
|
+
var BindingKind = require('../bindings/BindingKind.js');
|
|
6
|
+
var bindingRegistry = require('../bindings/bindingRegistry.js');
|
|
7
|
+
require('../bindings/resolveElementBinding.js');
|
|
8
|
+
var MissingBinding = require('../bindings/MissingBinding.js');
|
|
9
|
+
var ArcRuntimeBoundary = require('../bindings/ArcRuntimeBoundary.js');
|
|
10
|
+
var properties = require('../properties.js');
|
|
11
|
+
var SingleResultStatus = require('../data/SingleResultStatus.js');
|
|
12
|
+
var queryInputs = require('./queryInputs.js');
|
|
13
|
+
|
|
14
|
+
const SingleResultRuntime = /*#__PURE__*/ react.lazy(()=>Promise.resolve().then(function () { return require('../data/SingleResultRuntime.js'); }));
|
|
15
|
+
/** Opt-in, form-local string drafts around the existing optional-single execution owner. */ function SceneQueryInputForm({ element }) {
|
|
16
|
+
const name = properties.stringProperty(element.properties, 'query');
|
|
17
|
+
const target = react.useSyncExternalStore(bindingRegistry.subscribeQueryBindings, ()=>name ? bindingRegistry.resolveExactQuery(name) : undefined);
|
|
18
|
+
if (target === 'ambiguous') return /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
19
|
+
role: "alert",
|
|
20
|
+
children: [
|
|
21
|
+
"Ambiguous query binding '",
|
|
22
|
+
name,
|
|
23
|
+
"' on ",
|
|
24
|
+
element.componentName
|
|
25
|
+
]
|
|
26
|
+
});
|
|
27
|
+
if (!target) return /*#__PURE__*/ jsxRuntime.jsx(MissingBinding.MissingBinding, {
|
|
28
|
+
element: element,
|
|
29
|
+
kind: BindingKind.BindingKind.Query,
|
|
30
|
+
name: name
|
|
31
|
+
});
|
|
32
|
+
const inputs = queryInputs.queryInputs(element.properties);
|
|
33
|
+
const resultField = properties.stringProperty(element.properties, 'resultField');
|
|
34
|
+
if (!inputs || !resultField) return /*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
35
|
+
role: "alert",
|
|
36
|
+
children: "Invalid query input form configuration"
|
|
37
|
+
});
|
|
38
|
+
if (!element.isEnabled) return /*#__PURE__*/ jsxRuntime.jsx(SingleResultStatus.SingleResultStatus, {
|
|
39
|
+
state: "idle"
|
|
40
|
+
});
|
|
41
|
+
// A different form declaration starts a new session; ordinary host rerenders retain drafts.
|
|
42
|
+
return /*#__PURE__*/ jsxRuntime.jsx(QueryInputForm, {
|
|
43
|
+
query: target,
|
|
44
|
+
inputs: inputs,
|
|
45
|
+
resultField: resultField,
|
|
46
|
+
label: properties.stringProperty(element.properties, 'label') ?? 'Query input',
|
|
47
|
+
submitLabel: properties.stringProperty(element.properties, 'submitLabel') ?? 'Search'
|
|
48
|
+
}, JSON.stringify([
|
|
49
|
+
name,
|
|
50
|
+
inputs,
|
|
51
|
+
resultField
|
|
52
|
+
]));
|
|
53
|
+
}
|
|
54
|
+
function QueryInputForm({ query, inputs, resultField, label, submitLabel }) {
|
|
55
|
+
const id = react.useId();
|
|
56
|
+
const [drafts, setDrafts] = react.useState(()=>Object.fromEntries(inputs.map((input)=>[
|
|
57
|
+
input.parameter,
|
|
58
|
+
''
|
|
59
|
+
])));
|
|
60
|
+
const [errors, setErrors] = react.useState({});
|
|
61
|
+
const [committed, setCommitted] = react.useState();
|
|
62
|
+
return /*#__PURE__*/ jsxRuntime.jsxs("form", {
|
|
63
|
+
"aria-label": label,
|
|
64
|
+
noValidate: true,
|
|
65
|
+
onSubmit: (event)=>{
|
|
66
|
+
event.preventDefault();
|
|
67
|
+
const validation = Object.fromEntries(inputs.map((input)=>[
|
|
68
|
+
input.parameter,
|
|
69
|
+
queryInputs.queryInputError(input, drafts[input.parameter])
|
|
70
|
+
]));
|
|
71
|
+
setErrors(validation);
|
|
72
|
+
if (Object.values(validation).some(Boolean)) {
|
|
73
|
+
setCommitted(undefined);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
// New identity even for unchanged values: repeat submit is an explicit retry. No trimming,
|
|
77
|
+
// coercion, generated identifier, property-path evaluation or query while typing.
|
|
78
|
+
setCommitted(Object.freeze(Object.fromEntries(inputs.map((input)=>[
|
|
79
|
+
input.parameter,
|
|
80
|
+
drafts[input.parameter]
|
|
81
|
+
]))));
|
|
82
|
+
},
|
|
83
|
+
children: [
|
|
84
|
+
inputs.map((input, index)=>{
|
|
85
|
+
const controlId = `${id}-${index}`;
|
|
86
|
+
const error = Object.hasOwn(errors, input.parameter) ? errors[input.parameter] : undefined;
|
|
87
|
+
return /*#__PURE__*/ jsxRuntime.jsxs("div", {
|
|
88
|
+
children: [
|
|
89
|
+
/*#__PURE__*/ jsxRuntime.jsx("label", {
|
|
90
|
+
htmlFor: controlId,
|
|
91
|
+
children: input.label
|
|
92
|
+
}),
|
|
93
|
+
/*#__PURE__*/ jsxRuntime.jsx("input", {
|
|
94
|
+
id: controlId,
|
|
95
|
+
name: input.parameter,
|
|
96
|
+
type: "text",
|
|
97
|
+
required: input.required,
|
|
98
|
+
value: drafts[input.parameter],
|
|
99
|
+
"aria-invalid": !!error,
|
|
100
|
+
"aria-describedby": error ? `${controlId}-error` : undefined,
|
|
101
|
+
onChange: (event)=>{
|
|
102
|
+
setDrafts({
|
|
103
|
+
...drafts,
|
|
104
|
+
[input.parameter]: event.currentTarget.value
|
|
105
|
+
});
|
|
106
|
+
setErrors({
|
|
107
|
+
...errors,
|
|
108
|
+
[input.parameter]: undefined
|
|
109
|
+
});
|
|
110
|
+
// Unmount synchronously on edit: runtime cleanup aborts and masks late replies.
|
|
111
|
+
setCommitted(undefined);
|
|
112
|
+
}
|
|
113
|
+
}),
|
|
114
|
+
error && /*#__PURE__*/ jsxRuntime.jsx("div", {
|
|
115
|
+
id: `${controlId}-error`,
|
|
116
|
+
role: "alert",
|
|
117
|
+
children: error
|
|
118
|
+
})
|
|
119
|
+
]
|
|
120
|
+
}, input.parameter);
|
|
121
|
+
}),
|
|
122
|
+
/*#__PURE__*/ jsxRuntime.jsx("button", {
|
|
123
|
+
type: "submit",
|
|
124
|
+
children: submitLabel
|
|
125
|
+
}),
|
|
126
|
+
committed ? /*#__PURE__*/ jsxRuntime.jsx(ArcRuntimeBoundary.ArcRuntimeBoundary, {
|
|
127
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(SingleResultRuntime, {
|
|
128
|
+
query: query,
|
|
129
|
+
queryArguments: committed,
|
|
130
|
+
resultField: resultField,
|
|
131
|
+
stringInputs: true
|
|
132
|
+
})
|
|
133
|
+
}) : /*#__PURE__*/ jsxRuntime.jsx(SingleResultStatus.SingleResultStatus, {
|
|
134
|
+
state: "idle"
|
|
135
|
+
})
|
|
136
|
+
]
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
exports.SceneQueryInputForm = SceneQueryInputForm;
|
|
141
|
+
//# sourceMappingURL=SceneQueryInputForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SceneQueryInputForm.js","sources":["../../../forms/SceneQueryInputForm.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy, useId, useState, useSyncExternalStore } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, BoundConstructor, MissingBinding, resolveExactQuery, subscribeQueryBindings } from '../bindings';\nimport { stringProperty } from '../properties';\nimport { SingleResultStatus } from '../data/SingleResultStatus';\nimport { QueryInput, queryInputError, queryInputs } from './queryInputs';\n\nconst SingleResultRuntime = lazy(() => import('../data/SingleResultRuntime'));\n\n/** Opt-in, form-local string drafts around the existing optional-single execution owner. */\nexport function SceneQueryInputForm({ element }: RegisteredComponentProps) {\n const name = stringProperty(element.properties, 'query');\n const target = useSyncExternalStore(subscribeQueryBindings, () => name ? resolveExactQuery(name) : undefined);\n if (target === 'ambiguous') return <div role='alert'>Ambiguous query binding '{name}' on {element.componentName}</div>;\n if (!target) return <MissingBinding element={element} kind={BindingKind.Query} name={name} />;\n\n const inputs = queryInputs(element.properties);\n const resultField = stringProperty(element.properties, 'resultField');\n if (!inputs || !resultField) return <div role='alert'>Invalid query input form configuration</div>;\n if (!element.isEnabled) return <SingleResultStatus state='idle' />;\n\n // A different form declaration starts a new session; ordinary host rerenders retain drafts.\n return <QueryInputForm key={JSON.stringify([name, inputs, resultField])}\n query={target} inputs={inputs} resultField={resultField}\n label={stringProperty(element.properties, 'label') ?? 'Query input'}\n submitLabel={stringProperty(element.properties, 'submitLabel') ?? 'Search'} />;\n}\n\ninterface Props {\n query: BoundConstructor;\n inputs: QueryInput[];\n resultField: string;\n label: string;\n submitLabel: string;\n}\n\nfunction QueryInputForm({ query, inputs, resultField, label, submitLabel }: Props) {\n const id = useId();\n const [drafts, setDrafts] = useState<Record<string, string>>(() => Object.fromEntries(inputs.map(input => [input.parameter, ''])));\n const [errors, setErrors] = useState<Record<string, string | undefined>>({});\n const [committed, setCommitted] = useState<Record<string, string>>();\n\n return <form aria-label={label} noValidate onSubmit={event => {\n event.preventDefault();\n const validation = Object.fromEntries(inputs.map(input => [input.parameter, queryInputError(input, drafts[input.parameter])]));\n setErrors(validation);\n if (Object.values(validation).some(Boolean)) {\n setCommitted(undefined);\n return;\n }\n // New identity even for unchanged values: repeat submit is an explicit retry. No trimming,\n // coercion, generated identifier, property-path evaluation or query while typing.\n setCommitted(Object.freeze(Object.fromEntries(inputs.map(input => [input.parameter, drafts[input.parameter]]))));\n }}>\n {inputs.map((input, index) => {\n const controlId = `${id}-${index}`;\n const error = Object.hasOwn(errors, input.parameter) ? errors[input.parameter] : undefined;\n return <div key={input.parameter}>\n <label htmlFor={controlId}>{input.label}</label>\n <input id={controlId} name={input.parameter} type='text' required={input.required}\n value={drafts[input.parameter]} aria-invalid={!!error} aria-describedby={error ? `${controlId}-error` : undefined}\n onChange={event => {\n setDrafts({ ...drafts, [input.parameter]: event.currentTarget.value });\n setErrors({ ...errors, [input.parameter]: undefined });\n // Unmount synchronously on edit: runtime cleanup aborts and masks late replies.\n setCommitted(undefined);\n }} />\n {error && <div id={`${controlId}-error`} role='alert'>{error}</div>}\n </div>;\n })}\n <button type='submit'>{submitLabel}</button>\n {committed ? <ArcRuntimeBoundary>\n <SingleResultRuntime query={query} queryArguments={committed} resultField={resultField} stringInputs />\n </ArcRuntimeBoundary> : <SingleResultStatus state='idle' />}\n </form>;\n}\n"],"names":["SingleResultRuntime","lazy","SceneQueryInputForm","element","name","stringProperty","properties","target","useSyncExternalStore","subscribeQueryBindings","resolveExactQuery","undefined","_jsxs","div","role","componentName","_jsx","MissingBinding","kind","BindingKind","Query","inputs","queryInputs","resultField","isEnabled","SingleResultStatus","state","QueryInputForm","query","label","submitLabel","JSON","stringify","id","useId","drafts","setDrafts","useState","Object","fromEntries","map","input","parameter","errors","setErrors","committed","setCommitted","form","aria-label","noValidate","onSubmit","event","preventDefault","validation","queryInputError","values","some","Boolean","freeze","index","controlId","error","hasOwn","htmlFor","type","required","value","aria-invalid","aria-describedby","onChange","currentTarget","button","ArcRuntimeBoundary","queryArguments","stringInputs"],"mappings":"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"}
|
|
@@ -19,11 +19,14 @@ const RadioButtonField = /*#__PURE__*/ react.lazy(async ()=>({
|
|
|
19
19
|
* `buttonValue` is read as a string first and a number second, since a choice is usually a string but a
|
|
20
20
|
* numeric code is common enough that forcing it through as `'1'` would bind the wrong value.
|
|
21
21
|
*/ function SceneRadioButtonField({ element }) {
|
|
22
|
+
// Use the same reader as CommandFormField's binding gate; that gate owns missing-property feedback.
|
|
23
|
+
const name = properties.stringProperty(element.properties, 'property');
|
|
22
24
|
const buttonValue = properties.stringProperty(element.properties, 'buttonValue') ?? properties.numberProperty(element.properties, 'buttonValue') ?? '';
|
|
23
25
|
return /*#__PURE__*/ jsxRuntime.jsx(CommandFormField.CommandFormField, {
|
|
24
26
|
element: element,
|
|
25
|
-
children: (binding)
|
|
27
|
+
children: (binding)=>name !== undefined && /*#__PURE__*/ jsxRuntime.jsx(RadioButtonField, {
|
|
26
28
|
...binding,
|
|
29
|
+
name: name,
|
|
27
30
|
buttonValue: buttonValue,
|
|
28
31
|
label: properties.stringProperty(element.properties, 'label'),
|
|
29
32
|
className: properties.stringProperty(element.properties, 'className')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneRadioButtonField.js","sources":["../../../../forms/fields/SceneRadioButtonField.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { numberProperty, stringProperty } from '../../properties';\nimport { CommandFormField } from './CommandFormField';\n\nconst RadioButtonField = lazy(async () => ({ default: (await import('@cratis/components/CommandForm')).RadioButtonField }));\n\n/**\n * The `Cratis.Components:radioButtonField` component - `RadioButtonField` from\n * `@cratis/components/CommandForm`.\n *\n * One button of a mutually exclusive set, for a screen that needs the choices placed individually rather\n * than as a block. `buttonValue` is the value this particular button writes to the bound property, and\n * the whole set is tied together by every button naming the same `property`.\n *\n * `buttonValue` is read as a string first and a number second, since a choice is usually a string but a\n * numeric code is common enough that forcing it through as `'1'` would bind the wrong value.\n */\nexport function SceneRadioButtonField({ element }: RegisteredComponentProps) {\n const buttonValue = stringProperty(element.properties, 'buttonValue') ?? numberProperty(element.properties, 'buttonValue') ?? '';\n\n return (\n <CommandFormField element={element}>\n {binding => (\n <RadioButtonField\n {...binding}\n buttonValue={buttonValue}\n label={stringProperty(element.properties, 'label')}\n className={stringProperty(element.properties, 'className')}\n />\n )}\n </CommandFormField>\n );\n}\n"],"names":["RadioButtonField","lazy","default","SceneRadioButtonField","element","
|
|
1
|
+
{"version":3,"file":"SceneRadioButtonField.js","sources":["../../../../forms/fields/SceneRadioButtonField.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { numberProperty, stringProperty } from '../../properties';\nimport { CommandFormField } from './CommandFormField';\n\nconst RadioButtonField = lazy(async () => ({ default: (await import('@cratis/components/CommandForm')).RadioButtonField }));\n\n/**\n * The `Cratis.Components:radioButtonField` component - `RadioButtonField` from\n * `@cratis/components/CommandForm`.\n *\n * One button of a mutually exclusive set, for a screen that needs the choices placed individually rather\n * than as a block. `buttonValue` is the value this particular button writes to the bound property, and\n * the whole set is tied together by every button naming the same `property`.\n *\n * `buttonValue` is read as a string first and a number second, since a choice is usually a string but a\n * numeric code is common enough that forcing it through as `'1'` would bind the wrong value.\n */\nexport function SceneRadioButtonField({ element }: RegisteredComponentProps) {\n // Use the same reader as CommandFormField's binding gate; that gate owns missing-property feedback.\n const name = stringProperty(element.properties, 'property');\n const buttonValue = stringProperty(element.properties, 'buttonValue') ?? numberProperty(element.properties, 'buttonValue') ?? '';\n\n return (\n <CommandFormField element={element}>\n {binding => name !== undefined && (\n <RadioButtonField\n {...binding}\n name={name}\n buttonValue={buttonValue}\n label={stringProperty(element.properties, 'label')}\n className={stringProperty(element.properties, 'className')}\n />\n )}\n </CommandFormField>\n );\n}\n"],"names":["RadioButtonField","lazy","default","SceneRadioButtonField","element","name","stringProperty","properties","buttonValue","numberProperty","_jsx","CommandFormField","binding","undefined","label","className"],"mappings":";;;;;;;AAQA,MAAMA,gBAAAA,iBAAmBC,UAAAA,CAAK,WAAa;AAAEC,QAAAA,OAAAA,EAAS,CAAC,MAAM,OAAO,gCAAA,CAAgC,EAAGF;KAAiB,CAAA,CAAA;AAExH;;;;;;;;;;AAUC,IACM,SAASG,qBAAAA,CAAsB,EAAEC,OAAO,EAA4B,EAAA;;AAEvE,IAAA,MAAMC,IAAAA,GAAOC,yBAAAA,CAAeF,OAAAA,CAAQG,UAAU,EAAE,UAAA,CAAA;IAChD,MAAMC,WAAAA,GAAcF,yBAAAA,CAAeF,OAAAA,CAAQG,UAAU,EAAE,kBAAkBE,yBAAAA,CAAeL,OAAAA,CAAQG,UAAU,EAAE,aAAA,CAAA,IAAkB,EAAA;AAE9H,IAAA,qBACIG,cAAA,CAACC,iCAAAA,EAAAA;QAAiBP,OAAAA,EAASA,OAAAA;kBACtBQ,CAAAA,OAAAA,GAAWP,IAAAA,KAASQ,SAAAA,kBACjBH,cAAA,CAACV,gBAAAA,EAAAA;AACI,gBAAA,GAAGY,OAAO;gBACXP,IAAAA,EAAMA,IAAAA;gBACNG,WAAAA,EAAaA,WAAAA;gBACbM,KAAAA,EAAOR,yBAAAA,CAAeF,OAAAA,CAAQG,UAAU,EAAE,OAAA,CAAA;gBAC1CQ,SAAAA,EAAWT,yBAAAA,CAAeF,OAAAA,CAAQG,UAAU,EAAE,WAAA;;;AAKlE;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var properties = require('../properties.js');
|
|
4
|
+
|
|
5
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
6
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
7
|
+
/** Reject the entire declaration rather than silently dropping malformed inputs. */ function queryInputs(properties$1) {
|
|
8
|
+
const values = properties.arrayProperty(properties$1, 'inputs');
|
|
9
|
+
if (!values?.length) return undefined;
|
|
10
|
+
const inputs = [];
|
|
11
|
+
const parameters = new Set();
|
|
12
|
+
for (const value of values){
|
|
13
|
+
const input = properties.objectProperty({
|
|
14
|
+
value
|
|
15
|
+
}, 'value');
|
|
16
|
+
if (!input) return undefined;
|
|
17
|
+
const parameter = properties.stringProperty(input, 'parameter');
|
|
18
|
+
const label = properties.stringProperty(input, 'label');
|
|
19
|
+
const required = properties.booleanProperty(input, 'required');
|
|
20
|
+
const pattern = properties.stringProperty(input, 'pattern');
|
|
21
|
+
if (!parameter || !label || input.type !== 'string' || parameters.has(parameter) || input.required !== undefined && required === undefined || input.pattern !== undefined && pattern === undefined) return undefined;
|
|
22
|
+
if (pattern !== undefined) {
|
|
23
|
+
try {
|
|
24
|
+
new RegExp(`^(?:${pattern})$`, 'u');
|
|
25
|
+
} catch {
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
parameters.add(parameter);
|
|
30
|
+
inputs.push({
|
|
31
|
+
parameter,
|
|
32
|
+
type: 'string',
|
|
33
|
+
label,
|
|
34
|
+
required: required ?? true,
|
|
35
|
+
pattern
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
return inputs;
|
|
39
|
+
}
|
|
40
|
+
/** Validation never transforms the submitted string; proxy validators remain authoritative. */ function queryInputError(input, value) {
|
|
41
|
+
if (input.required && !/\S/u.test(value)) return `${input.label} is required`;
|
|
42
|
+
if (input.pattern !== undefined && !new RegExp(`^(?:${input.pattern})$`, 'u').test(value)) {
|
|
43
|
+
return `${input.label} has an invalid format`;
|
|
44
|
+
}
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
exports.queryInputError = queryInputError;
|
|
49
|
+
exports.queryInputs = queryInputs;
|
|
50
|
+
//# sourceMappingURL=queryInputs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"queryInputs.js","sources":["../../../forms/queryInputs.ts"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { arrayProperty, booleanProperty, objectProperty, stringProperty } from '../properties';\n\n/** Package-local web input declaration, not a Scene.Model form or binding expression. */\nexport interface QueryInput {\n /** Exact generated query argument name. */\n parameter: string;\n type: 'string';\n label: string;\n /** Defaults to true. Required strings must contain a non-whitespace character. */\n required?: boolean;\n /** Optional whole-value JavaScript Unicode regular expression (without delimiters). */\n pattern?: string;\n}\n\n/** Reject the entire declaration rather than silently dropping malformed inputs. */\nexport function queryInputs(properties: Record<string, unknown>): QueryInput[] | undefined {\n const values = arrayProperty(properties, 'inputs');\n if (!values?.length) return undefined;\n const inputs: QueryInput[] = [];\n const parameters = new Set<string>();\n for (const value of values) {\n const input = objectProperty({ value }, 'value');\n if (!input) return undefined;\n const parameter = stringProperty(input, 'parameter');\n const label = stringProperty(input, 'label');\n const required = booleanProperty(input, 'required');\n const pattern = stringProperty(input, 'pattern');\n if (!parameter || !label || input.type !== 'string' || parameters.has(parameter)\n || (input.required !== undefined && required === undefined)\n || (input.pattern !== undefined && pattern === undefined)) return undefined;\n if (pattern !== undefined) {\n try { new RegExp(`^(?:${pattern})$`, 'u'); } catch { return undefined; }\n }\n parameters.add(parameter);\n inputs.push({ parameter, type: 'string', label, required: required ?? true, pattern });\n }\n return inputs;\n}\n\n/** Validation never transforms the submitted string; proxy validators remain authoritative. */\nexport function queryInputError(input: QueryInput, value: string): string | undefined {\n if (input.required && !/\\S/u.test(value)) return `${input.label} is required`;\n if (input.pattern !== undefined && !new RegExp(`^(?:${input.pattern})$`, 'u').test(value)) {\n return `${input.label} has an invalid format`;\n }\n return undefined;\n}\n"],"names":["queryInputs","properties","values","arrayProperty","length","undefined","inputs","parameters","Set","value","input","objectProperty","parameter","stringProperty","label","required","booleanProperty","pattern","type","has","RegExp","add","push","queryInputError","test"],"mappings":";;;;AAAA;AACA;AAgBA,qFACO,SAASA,WAAAA,CAAYC,YAAmC,EAAA;IAC3D,MAAMC,MAAAA,GAASC,yBAAcF,YAAAA,EAAY,QAAA,CAAA;IACzC,IAAI,CAACC,MAAAA,EAAQE,MAAAA,EAAQ,OAAOC,SAAAA;AAC5B,IAAA,MAAMC,SAAuB,EAAE;AAC/B,IAAA,MAAMC,aAAa,IAAIC,GAAAA,EAAAA;IACvB,KAAK,MAAMC,SAASP,MAAAA,CAAQ;AACxB,QAAA,MAAMQ,QAAQC,yBAAAA,CAAe;AAAEF,YAAAA;SAAM,EAAG,OAAA,CAAA;QACxC,IAAI,CAACC,OAAO,OAAOL,SAAAA;QACnB,MAAMO,SAAAA,GAAYC,0BAAeH,KAAAA,EAAO,WAAA,CAAA;QACxC,MAAMI,KAAAA,GAAQD,0BAAeH,KAAAA,EAAO,OAAA,CAAA;QACpC,MAAMK,QAAAA,GAAWC,2BAAgBN,KAAAA,EAAO,UAAA,CAAA;QACxC,MAAMO,OAAAA,GAAUJ,0BAAeH,KAAAA,EAAO,SAAA,CAAA;QACtC,IAAI,CAACE,SAAAA,IAAa,CAACE,KAAAA,IAASJ,KAAAA,CAAMQ,IAAI,KAAK,QAAA,IAAYX,UAAAA,CAAWY,GAAG,CAACP,SAAAA,CAAAA,IAC9DF,MAAMK,QAAQ,KAAKV,SAAAA,IAAaU,QAAAA,KAAaV,SAAAA,IAC7CK,KAAAA,CAAMO,OAAO,KAAKZ,SAAAA,IAAaY,OAAAA,KAAYZ,SAAAA,EAAY,OAAOA,SAAAA;AACtE,QAAA,IAAIY,YAAYZ,SAAAA,EAAW;YACvB,IAAI;AAAE,gBAAA,IAAIe,OAAO,CAAC,IAAI,EAAEH,OAAAA,CAAQ,EAAE,CAAC,EAAE,GAAA,CAAA;AAAM,YAAA,CAAA,CAAE,OAAM;gBAAE,OAAOZ,SAAAA;AAAW,YAAA;AAC3E,QAAA;AACAE,QAAAA,UAAAA,CAAWc,GAAG,CAACT,SAAAA,CAAAA;AACfN,QAAAA,MAAAA,CAAOgB,IAAI,CAAC;AAAEV,YAAAA,SAAAA;YAAWM,IAAAA,EAAM,QAAA;AAAUJ,YAAAA,KAAAA;AAAOC,YAAAA,QAAAA,EAAUA,QAAAA,IAAY,IAAA;AAAME,YAAAA;AAAQ,SAAA,CAAA;AACxF,IAAA;IACA,OAAOX,MAAAA;AACX;AAEA,gGACO,SAASiB,eAAAA,CAAgBb,KAAiB,EAAED,KAAa,EAAA;AAC5D,IAAA,IAAIC,KAAAA,CAAMK,QAAQ,IAAI,CAAC,MAAMS,IAAI,CAACf,KAAAA,CAAAA,EAAQ,OAAO,CAAA,EAAGC,KAAAA,CAAMI,KAAK,CAAC,YAAY,CAAC;AAC7E,IAAA,IAAIJ,MAAMO,OAAO,KAAKZ,aAAa,CAAC,IAAIe,OAAO,CAAC,IAAI,EAAEV,KAAAA,CAAMO,OAAO,CAAC,EAAE,CAAC,EAAE,GAAA,CAAA,CAAKO,IAAI,CAACf,KAAAA,CAAAA,EAAQ;AACvF,QAAA,OAAO,CAAA,EAAGC,KAAAA,CAAMI,KAAK,CAAC,sBAAsB,CAAC;AACjD,IAAA;IACA,OAAOT,SAAAA;AACX;;;"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -10,9 +10,11 @@ var ArcRuntimeBoundary = require('./bindings/ArcRuntimeBoundary.js');
|
|
|
10
10
|
var ScenePage = require('./pages/ScenePage.js');
|
|
11
11
|
var SceneDataPage = require('./pages/SceneDataPage.js');
|
|
12
12
|
var SceneFormElement = require('./pages/SceneFormElement.js');
|
|
13
|
+
var SceneSingleResult = require('./data/SceneSingleResult.js');
|
|
13
14
|
var SceneDataTable = require('./data/SceneDataTable.js');
|
|
14
15
|
var SceneObservableDataTable = require('./data/SceneObservableDataTable.js');
|
|
15
16
|
var SceneCommandForm = require('./forms/SceneCommandForm.js');
|
|
17
|
+
var SceneQueryInputForm = require('./forms/SceneQueryInputForm.js');
|
|
16
18
|
var resolveFieldBinding = require('./forms/fields/resolveFieldBinding.js');
|
|
17
19
|
var CommandFormField = require('./forms/fields/CommandFormField.js');
|
|
18
20
|
var SceneInputTextField = require('./forms/fields/SceneInputTextField.js');
|
|
@@ -67,10 +69,14 @@ exports.registerCommand = bindingRegistry.registerCommand;
|
|
|
67
69
|
exports.registerCommands = bindingRegistry.registerCommands;
|
|
68
70
|
exports.registerQueries = bindingRegistry.registerQueries;
|
|
69
71
|
exports.registerQuery = bindingRegistry.registerQuery;
|
|
72
|
+
exports.registerQueryIdentity = bindingRegistry.registerQueryIdentity;
|
|
70
73
|
exports.registeredCommandNames = bindingRegistry.registeredCommandNames;
|
|
71
74
|
exports.registeredQueryNames = bindingRegistry.registeredQueryNames;
|
|
72
75
|
exports.resolveCommand = bindingRegistry.resolveCommand;
|
|
76
|
+
exports.resolveExactQuery = bindingRegistry.resolveExactQuery;
|
|
73
77
|
exports.resolveQuery = bindingRegistry.resolveQuery;
|
|
78
|
+
exports.subscribeQueryBindings = bindingRegistry.subscribeQueryBindings;
|
|
79
|
+
exports.unregisterQueryIdentity = bindingRegistry.unregisterQueryIdentity;
|
|
74
80
|
exports.resolveElementBinding = resolveElementBinding.resolveElementBinding;
|
|
75
81
|
exports.Placeholder = Placeholder.Placeholder;
|
|
76
82
|
exports.MissingBinding = MissingBinding.MissingBinding;
|
|
@@ -78,9 +84,11 @@ exports.ArcRuntimeBoundary = ArcRuntimeBoundary.ArcRuntimeBoundary;
|
|
|
78
84
|
exports.ScenePage = ScenePage.ScenePage;
|
|
79
85
|
exports.SceneDataPage = SceneDataPage.SceneDataPage;
|
|
80
86
|
exports.SceneFormElement = SceneFormElement.SceneFormElement;
|
|
87
|
+
exports.SceneSingleResult = SceneSingleResult.SceneSingleResult;
|
|
81
88
|
exports.SceneDataTable = SceneDataTable.SceneDataTable;
|
|
82
89
|
exports.SceneObservableDataTable = SceneObservableDataTable.SceneObservableDataTable;
|
|
83
90
|
exports.SceneCommandForm = SceneCommandForm.SceneCommandForm;
|
|
91
|
+
exports.SceneQueryInputForm = SceneQueryInputForm.SceneQueryInputForm;
|
|
84
92
|
exports.resolveFieldBinding = resolveFieldBinding.resolveFieldBinding;
|
|
85
93
|
exports.CommandFormField = CommandFormField.CommandFormField;
|
|
86
94
|
exports.SceneInputTextField = SceneInputTextField.SceneInputTextField;
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -9,7 +9,7 @@ var ArcRuntimeBoundary = require('../bindings/ArcRuntimeBoundary.js');
|
|
|
9
9
|
var properties = require('../properties.js');
|
|
10
10
|
|
|
11
11
|
const DataPage = /*#__PURE__*/ react.lazy(async ()=>({
|
|
12
|
-
default: (await
|
|
12
|
+
default: (await Promise.resolve().then(function () { return require('../bindings/ArcBoundComponents.js'); })).BoundDataPage
|
|
13
13
|
}));
|
|
14
14
|
/**
|
|
15
15
|
* The `Cratis.Components:dataPage` component - `DataPage` from `@cratis/components/DataPage`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SceneDataPage.js","sources":["../../../pages/SceneDataPage.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { stringArrayProperty, stringProperty } from '../properties';\n\nconst DataPage = lazy(async () => ({ default: (await import('
|
|
1
|
+
{"version":3,"file":"SceneDataPage.js","sources":["../../../pages/SceneDataPage.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\nimport { lazy } from 'react';\nimport { RegisteredComponentProps } from '@cratis/scene.react';\nimport { ArcRuntimeBoundary, BindingKind, MissingBinding, resolveElementBinding } from '../bindings';\nimport { stringArrayProperty, stringProperty } from '../properties';\n\nconst DataPage = lazy(async () => ({ default: (await import('../bindings/ArcBoundComponents')).BoundDataPage }));\n\n/**\n * The `Cratis.Components:dataPage` component - `DataPage` from `@cratis/components/DataPage`.\n *\n * The library's whole list-screen composite in one name: title bar, action toolbar, filterable table and\n * optional details pane, all driven from a single query. It is the single highest-leverage thing this\n * package exposes, because reproducing it out of `table` and `toolbar` in a screen would be pages of\n * modeling for a worse result.\n *\n * The `query` property names an Arc query proxy; the columns and menu items come from the `content`\n * slot as `DataPage.Columns` / `DataPage.MenuItems` children.\n *\n * No `clientFiltering` property, for the same reason `dataTable` no longer exposes one: 3.0.0 keeps the\n * prop so call sites compile but never reads it, and a screen setting that cannot take effect is a worse\n * thing to offer than nothing.\n */\nexport function SceneDataPage({ element, slots }: RegisteredComponentProps) {\n const { name, target } = resolveElementBinding(element, BindingKind.Query);\n if (!target) return <MissingBinding element={element} kind={BindingKind.Query} name={name} />;\n\n return (\n <ArcRuntimeBoundary>\n <DataPage\n title={stringProperty(element.properties, 'title') ?? ''}\n query={target}\n emptyMessage={stringProperty(element.properties, 'emptyMessage') ?? ''}\n dataKey={stringProperty(element.properties, 'dataKey')}\n globalFilterFields={stringArrayProperty(element.properties, 'globalFilterFields')}\n >\n {slots.content}\n </DataPage>\n </ArcRuntimeBoundary>\n );\n}\n"],"names":["DataPage","lazy","default","BoundDataPage","SceneDataPage","element","slots","name","target","resolveElementBinding","BindingKind","Query","_jsx","MissingBinding","kind","ArcRuntimeBoundary","title","stringProperty","properties","query","emptyMessage","dataKey","globalFilterFields","stringArrayProperty","content"],"mappings":";;;;;;;;;;AAQA,MAAMA,QAAAA,iBAAWC,UAAAA,CAAK,WAAa;AAAEC,QAAAA,OAAAA,EAAS,CAAC,MAAM,oDAAO,mCAAA,KAAgC,EAAGC;KAAc,CAAA,CAAA;AAE7G;;;;;;;;;;;;;;AAcC,IACM,SAASC,aAAAA,CAAc,EAAEC,OAAO,EAAEC,KAAK,EAA4B,EAAA;IACtE,MAAM,EAAEC,IAAI,EAAEC,MAAM,EAAE,GAAGC,2CAAAA,CAAsBJ,OAAAA,EAASK,uBAAAA,CAAYC,KAAK,CAAA;IACzE,IAAI,CAACH,MAAAA,EAAQ,qBAAOI,cAAA,CAACC,6BAAAA,EAAAA;QAAeR,OAAAA,EAASA,OAAAA;AAASS,QAAAA,IAAAA,EAAMJ,wBAAYC,KAAK;QAAEJ,IAAAA,EAAMA;;AAErF,IAAA,qBACIK,cAAA,CAACG,qCAAAA,EAAAA;AACG,QAAA,QAAA,gBAAAH,cAAA,CAACZ,QAAAA,EAAAA;AACGgB,YAAAA,KAAAA,EAAOC,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,OAAA,CAAA,IAAY,EAAA;YACtDC,KAAAA,EAAOX,MAAAA;AACPY,YAAAA,YAAAA,EAAcH,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,cAAA,CAAA,IAAmB,EAAA;YACpEG,OAAAA,EAASJ,yBAAAA,CAAeZ,OAAAA,CAAQa,UAAU,EAAE,SAAA,CAAA;YAC5CI,kBAAAA,EAAoBC,8BAAAA,CAAoBlB,OAAAA,CAAQa,UAAU,EAAE,oBAAA,CAAA;AAE3DZ,YAAAA,QAAAA,EAAAA,KAAAA,CAAMkB;;;AAIvB;;"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ComponentProps } from 'react';
|
|
2
|
+
import { DataTableForQuery, DataTableForObservableQuery } from '@cratis/components/DataTables';
|
|
3
|
+
import { DataPage } from '@cratis/components/DataPage';
|
|
4
|
+
import { CommandDialog, StepperCommandDialog } from '@cratis/components/CommandDialog';
|
|
5
|
+
import type { BoundConstructor } from './BoundConstructor';
|
|
6
|
+
type QueryProps<T> = Omit<T, 'query'> & {
|
|
7
|
+
query: BoundConstructor;
|
|
8
|
+
};
|
|
9
|
+
type CommandProps<T> = Omit<T, 'command'> & {
|
|
10
|
+
command: BoundConstructor;
|
|
11
|
+
};
|
|
12
|
+
export declare function BoundDataTable({ query, ...props }: QueryProps<ComponentProps<typeof DataTableForQuery>>): import("react").JSX.Element;
|
|
13
|
+
export declare function BoundObservableDataTable({ query, ...props }: QueryProps<ComponentProps<typeof DataTableForObservableQuery>>): import("react").JSX.Element;
|
|
14
|
+
export declare function BoundDataPage({ query, ...props }: QueryProps<ComponentProps<typeof DataPage>>): import("react").JSX.Element;
|
|
15
|
+
export declare function BoundCommandDialog({ command, ...props }: CommandProps<ComponentProps<typeof CommandDialog>>): import("react").JSX.Element;
|
|
16
|
+
export declare function BoundStepperCommandDialog({ command, ...props }: CommandProps<ComponentProps<typeof StepperCommandDialog>>): import("react").JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=ArcBoundComponents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArcBoundComponents.d.ts","sourceRoot":"","sources":["../../../bindings/ArcBoundComponents.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAG5C,OAAO,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACvF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,KAAK,UAAU,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,EAAE,gBAAgB,CAAA;CAAE,CAAC;AACpE,KAAK,YAAY,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG;IAAE,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC;AAI1E,wBAAgB,cAAc,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,CAAC,+BAEvG;AAED,wBAAgB,wBAAwB,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,CAAC,cAAc,CAAC,OAAO,2BAA2B,CAAC,CAAC,+BAE3H;AAED,wBAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,CAAC,+BAK7F;AAED,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,CAAC,cAAc,CAAC,OAAO,aAAa,CAAC,CAAC,+BAE3G;AAED,wBAAgB,yBAAyB,CAAC,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,YAAY,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,CAAC,+BAEzH"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { ObservableQueryFor, QueryFor } from '@cratis/arc/queries';
|
|
3
|
+
import { Command } from '@cratis/arc/commands';
|
|
4
|
+
import { DataTableForObservableQuery, DataTableForQuery } from '@cratis/components/DataTables';
|
|
5
|
+
import { DataPage } from '@cratis/components/DataPage';
|
|
6
|
+
import { StepperCommandDialog, CommandDialog } from '@cratis/components/CommandDialog';
|
|
7
|
+
import { requireArcProxy } from './requireArcProxy.js';
|
|
8
|
+
|
|
9
|
+
// Copyright (c) Cratis. All rights reserved.
|
|
10
|
+
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
11
|
+
// Runtime-only module: import dynamically beneath ArcRuntimeBoundary, never through the barrel.
|
|
12
|
+
// Scene carries property names and argument objects, not compile-time row schemas. These adapters
|
|
13
|
+
// support generated object/collection queries, as required by the Components public prop contracts.
|
|
14
|
+
function BoundDataTable({ query, ...props }) {
|
|
15
|
+
return /*#__PURE__*/ jsx(DataTableForQuery, {
|
|
16
|
+
...props,
|
|
17
|
+
query: requireArcProxy(query, QueryFor, 'query')
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function BoundObservableDataTable({ query, ...props }) {
|
|
21
|
+
return /*#__PURE__*/ jsx(DataTableForObservableQuery, {
|
|
22
|
+
...props,
|
|
23
|
+
query: requireArcProxy(query, ObservableQueryFor, 'observable query')
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
function BoundDataPage({ query, ...props }) {
|
|
27
|
+
const base = query.prototype instanceof ObservableQueryFor ? ObservableQueryFor : QueryFor;
|
|
28
|
+
// This chooses only the kind of the supplied constructor, never another registered binding.
|
|
29
|
+
const proxy = requireArcProxy(query, base, 'query');
|
|
30
|
+
return /*#__PURE__*/ jsx(DataPage, {
|
|
31
|
+
...props,
|
|
32
|
+
query: proxy
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
function BoundCommandDialog({ command, ...props }) {
|
|
36
|
+
return /*#__PURE__*/ jsx(CommandDialog, {
|
|
37
|
+
...props,
|
|
38
|
+
command: requireArcProxy(command, Command, 'command')
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
function BoundStepperCommandDialog({ command, ...props }) {
|
|
42
|
+
return /*#__PURE__*/ jsx(StepperCommandDialog, {
|
|
43
|
+
...props,
|
|
44
|
+
command: requireArcProxy(command, Command, 'command')
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export { BoundCommandDialog, BoundDataPage, BoundDataTable, BoundObservableDataTable, BoundStepperCommandDialog };
|
|
49
|
+
//# sourceMappingURL=ArcBoundComponents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArcBoundComponents.js","sources":["../../../bindings/ArcBoundComponents.tsx"],"sourcesContent":["// Copyright (c) Cratis. All rights reserved.\n// Licensed under the MIT license. See LICENSE file in the project root for full license information.\n\n// Runtime-only module: import dynamically beneath ArcRuntimeBoundary, never through the barrel.\nimport type { ComponentProps } from 'react';\nimport { QueryFor, ObservableQueryFor } from '@cratis/arc/queries';\nimport { Command } from '@cratis/arc/commands';\nimport { DataTableForQuery, DataTableForObservableQuery } from '@cratis/components/DataTables';\nimport { DataPage } from '@cratis/components/DataPage';\nimport { CommandDialog, StepperCommandDialog } from '@cratis/components/CommandDialog';\nimport type { BoundConstructor } from './BoundConstructor';\nimport { requireArcProxy } from './requireArcProxy';\n\ntype QueryProps<T> = Omit<T, 'query'> & { query: BoundConstructor };\ntype CommandProps<T> = Omit<T, 'command'> & { command: BoundConstructor };\n\n// Scene carries property names and argument objects, not compile-time row schemas. These adapters\n// support generated object/collection queries, as required by the Components public prop contracts.\nexport function BoundDataTable({ query, ...props }: QueryProps<ComponentProps<typeof DataTableForQuery>>) {\n return <DataTableForQuery {...props} query={requireArcProxy(query, QueryFor<object, object>, 'query')} />;\n}\n\nexport function BoundObservableDataTable({ query, ...props }: QueryProps<ComponentProps<typeof DataTableForObservableQuery>>) {\n return <DataTableForObservableQuery {...props} query={requireArcProxy(query, ObservableQueryFor<object, object>, 'observable query')} />;\n}\n\nexport function BoundDataPage({ query, ...props }: QueryProps<ComponentProps<typeof DataPage>>) {\n const base = query.prototype instanceof ObservableQueryFor ? ObservableQueryFor<object, object> : QueryFor<object, object>;\n // This chooses only the kind of the supplied constructor, never another registered binding.\n const proxy = requireArcProxy<QueryFor<object, object> | ObservableQueryFor<object, object>>(query, base, 'query');\n return <DataPage {...props} query={proxy} />;\n}\n\nexport function BoundCommandDialog({ command, ...props }: CommandProps<ComponentProps<typeof CommandDialog>>) {\n return <CommandDialog {...props} command={requireArcProxy(command, Command<object, object>, 'command')} />;\n}\n\nexport function BoundStepperCommandDialog({ command, ...props }: CommandProps<ComponentProps<typeof StepperCommandDialog>>) {\n return <StepperCommandDialog {...props} command={requireArcProxy(command, Command<object, object>, 'command')} />;\n}\n"],"names":["BoundDataTable","query","props","_jsx","DataTableForQuery","requireArcProxy","QueryFor","BoundObservableDataTable","DataTableForObservableQuery","ObservableQueryFor","BoundDataPage","base","prototype","proxy","DataPage","BoundCommandDialog","command","CommandDialog","Command","BoundStepperCommandDialog","StepperCommandDialog"],"mappings":";;;;;;;;AAAA;AACA;AAEA;AAaA;AACA;AACO,SAASA,cAAAA,CAAe,EAAEC,KAAK,EAAE,GAAGC,KAAAA,EAA6D,EAAA;AACpG,IAAA,qBAAOC,GAAA,CAACC,iBAAAA,EAAAA;AAAmB,QAAA,GAAGF,KAAK;QAAED,KAAAA,EAAOI,eAAAA,CAAgBJ,OAAOK,QAAAA,EAA0B,OAAA;;AACjG;AAEO,SAASC,wBAAAA,CAAyB,EAAEN,KAAK,EAAE,GAAGC,KAAAA,EAAuE,EAAA;AACxH,IAAA,qBAAOC,GAAA,CAACK,2BAAAA,EAAAA;AAA6B,QAAA,GAAGN,KAAK;QAAED,KAAAA,EAAOI,eAAAA,CAAgBJ,OAAOQ,kBAAAA,EAAoC,kBAAA;;AACrH;AAEO,SAASC,aAAAA,CAAc,EAAET,KAAK,EAAE,GAAGC,KAAAA,EAAoD,EAAA;AAC1F,IAAA,MAAMS,IAAAA,GAAOV,KAAAA,CAAMW,SAAS,YAAYH,qBAAqBA,kBAAAA,GAAqCH,QAAAA;;IAElG,MAAMO,KAAAA,GAAQR,eAAAA,CAA+EJ,KAAAA,EAAOU,IAAAA,EAAM,OAAA,CAAA;AAC1G,IAAA,qBAAOR,GAAA,CAACW,QAAAA,EAAAA;AAAU,QAAA,GAAGZ,KAAK;QAAED,KAAAA,EAAOY;;AACvC;AAEO,SAASE,kBAAAA,CAAmB,EAAEC,OAAO,EAAE,GAAGd,KAAAA,EAA2D,EAAA;AACxG,IAAA,qBAAOC,GAAA,CAACc,aAAAA,EAAAA;AAAe,QAAA,GAAGf,KAAK;QAAEc,OAAAA,EAASX,eAAAA,CAAgBW,SAASE,OAAAA,EAAyB,SAAA;;AAChG;AAEO,SAASC,yBAAAA,CAA0B,EAAEH,OAAO,EAAE,GAAGd,KAAAA,EAAkE,EAAA;AACtH,IAAA,qBAAOC,GAAA,CAACiB,oBAAAA,EAAAA;AAAsB,QAAA,GAAGlB,KAAK;QAAEc,OAAAA,EAASX,eAAAA,CAAgBW,SAASE,OAAAA,EAAyB,SAAA;;AACvG;;"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { BoundConstructor } from './BoundConstructor';
|
|
2
|
+
export declare function subscribeQueryBindings(listener: () => void): () => void;
|
|
3
|
+
export declare function registerQueryIdentity(name: string, identity: string, queryClass: BoundConstructor): void;
|
|
4
|
+
export declare function unregisterQueryIdentity(name: string, identity: string): void;
|
|
5
|
+
export declare function resolveExactQuery(name: string): BoundConstructor | 'ambiguous' | undefined;
|
|
2
6
|
export declare function registerQuery(name: string, queryClass: BoundConstructor): void;
|
|
3
7
|
export declare function registerQueries(bindings: Record<string, BoundConstructor>): void;
|
|
4
8
|
export declare function resolveQuery(name: string): BoundConstructor | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bindingRegistry.d.ts","sourceRoot":"","sources":["../../../bindings/bindingRegistry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"bindingRegistry.d.ts","sourceRoot":"","sources":["../../../bindings/bindingRegistry.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAatD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAGvE;AAOD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAKxG;AAGD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAK5E;AAGD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,WAAW,GAAG,SAAS,CAK1F;AAkBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,gBAAgB,GAAG,IAAI,CAG9E;AASD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAIhF;AAUD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAKvE;AAMD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,GAAG,IAAI,CAElF;AAKD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,GAAG,IAAI,CAIjF;AAKD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAEzE;AASD,wBAAgB,oBAAoB,IAAI,MAAM,EAAE,CAE/C;AAKD,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAEjD;AASD,wBAAgB,aAAa,IAAI,IAAI,CAKpC"}
|