
Security News
Risky Biz Podcast: Making Reachability Analysis Work in Real-World Codebases
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
@adempiere/grpc-dictionary-client
Advanced tools
ADempiere Dictionary Client write in Javascript for gRPC service
ADempiere Dictionary Client write in Javascript for gRPC service, use it for connect with ADempiere-gRPC-Server.
# installing via NPM
npm i @adempiere/grpc-dictionary-client --save
# installing via Yarn
yarn add @adempiere/grpc-dictionary-client
const Dictionary = require('@adempiere/grpc-dictionary-client');
const dictionary = new Dictionary({
host: GRPC_HOST,
sessionUuid: 'Session UUID'
});
const Dictionary = require('@adempiere/grpc-dictionary-client');
const dictionary = new Dictionary({
host: GRPC_HOST,
sessionUuid: 'Session UUID',
language: 'es_VE'
});
// Request Window
dictionary.requestWindow({
uuid: 'a520de12-fb40-11e8-a479-7a0060f0aa01'
})
.then(window => {
console.log("Window: " + window);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Window and Tabs
dictionary.requestWindow({
uuid: 'a520de12-fb40-11e8-a479-7a0060f0aa01',
isWithTabs: true
})
.then(window => {
window.tabsList.foreach(tabElement => {
console.log("Window Tab: " + tabElement);
})
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Tab
dictionary.requestTab({
uuid: 'a49fb4e0-fb40-11e8-a479-7a0060f0aa01',
isWithProcess: false
})
.then(tab => {
console.log("Tab: " + tab);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Window and Tabs
dictionary.requestTab({
uuid: 'a49fb4e0-fb40-11e8-a479-7a0060f0aa01',
isWithFields: true,
isWithProcess: false
})
.then(tab => {
tab.fieldsList.foreach(fieldElement => {
console.log("Field: " + fieldElement);
})
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Field
dictionary.requestField({
fieldUuid: '8cecee3a-fb40-11e8-a479-7a0060f0aa01'
})
.then(field => {
console.log("Field: " + field);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Process
dictionary.requestProcess({
uuid: 'a42adc88-fb40-11e8-a479-7a0060f0aa01'
})
.then(process => {
console.log("Process: " + process);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
// Request Smart Browser
dictionary.requestBrowser({
uud: '8aaef794-fb40-11e8-a479-7a0060f0aa01'
})
.then(browser => {
console.log("Smart Browser: " + browser);
})
.catch(err => {
console.log("Error " + err.code + ": " + err.message);
});
For recreate stub class you must have follow:
Note: You can also install protoc
and protoc-gen-grpc-web
by going to the repository directory and run the command:
sh install-protoc.sh
When installation is complete, check the version with
protoc --version
After installed it just go to source code folder an run it:
Run Dictionary gRPC
protoc proto/dictionary.proto \
--js_out=import_style=commonjs:src/grpc \
--grpc-web_out=import_style=commonjs,mode=grpcwebtext:src/grpc
Or run:
sh generate-stub.sh
The result is generated on: src/grpc folder
dictionary_pb.js
dictionary_grpc_web_pb.js
FAQs
ADempiere Dictionary Client write in Javascript for gRPC service
We found that @adempiere/grpc-dictionary-client demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 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
This episode explores the hard problem of reachability analysis, from static analysis limits to handling dynamic languages and massive dependency trees.
Security News
/Research
Malicious Nx npm versions stole secrets and wallet info using AI CLI tools; Socket’s AI scanner detected the supply chain attack and flagged the malware.
Security News
CISA’s 2025 draft SBOM guidance adds new fields like hashes, licenses, and tool metadata to make software inventories more actionable.