Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
@cloudquery/plugin-config-ui-lib
Advanced tools
Plugin configuration UI library for CloudQuery Cloud App
Plugin Config UI library for CloudQuery Plugin Config UI
@cloudquery/plugin-config-ui-lib
is a library that provides various utilities that can be used in CloudQuery Plugin Config UI.
To install the library, you can use npm:
npm install @cloudquery/plugin-config-ui-lib
The Config UI Framework provides a way for anyone to build a plugin UI with simply a config object and data transformer.
This hook is used to make API calls that require Authentication header from CloudQuery Cloud App.
const { callApi } = useApiCall(pluginUiMessageHandler);
callApi('https://api.cloudquery.io', 'POST', { name: 'my-source' });
This hook is used export data and functions that can be used in the footer for plugin UI.
const formActions = useFormActions({
pluginUiMessageHandler,
teamName: 'my-team',
pluginTeamName: 'cloudquery',
pluginName: 'postgresql',
pluginKind: 'source',
getValues;
pluginVersion: '1.0.0',
isUpdating: false,
});
return <FormFooter {...formActions} />;
This hook is used to respond to request for current values from CloudQuery Cloud App.
useFormCurrentValues({
pluginUiMessageHandler,
getCurrentValues,
});
This hook is used to automatically detect the changes of the height of the form container and notify CloudQuery Cloud App about those. The hooks returns the React Ref object that should reference the HTML element that represents the form container.
useFormHeightChange(pluginUiMessageHandler);
This hook is used get the initial values for the form from the CloudQuery Cloud App. The initial values can be undefined, therefore the hook also returns information whether it was initialized.
const { initialized, initialValues } = useFormInit(pluginUiMessageHandler, false);
if (!initialized) {
return null;
}
return (
<div>
<form>
<input type="text" value={initialValues.name} />
</form>
</div>
);
This hook is used to handle the submit event for the form from the CloudQuery Cloud App.
It requires the function that should validate the data and return an object either with
errors
or values
depending on the validation result. The function can also return
a Promise of the same type.
const [name, setName] = useState('');
const handleValidate = () => {
if (!name.trim()) {
return { errors: { name: 'Name is required' } };
}
return { values: { name } };
};
useFormSubmit(handleValidate);
return <input type="text" value={name} onChange={(event) => setName(event.target.value)} />;
To build the library, run:
npm run build
To run the test suite, execute:
npm test
If you encounter any issues or have feature requests, please feel free to open an issue on the GitHub repository.
This project is licensed under the Mozilla Public License..
FAQs
Plugin configuration UI library for CloudQuery Cloud App
The npm package @cloudquery/plugin-config-ui-lib receives a total of 1,946 weekly downloads. As such, @cloudquery/plugin-config-ui-lib popularity was classified as popular.
We found that @cloudquery/plugin-config-ui-lib demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.