{"_id":"@autoweb/floweb-domain-models","name":"@autoweb/floweb-domain-models","dist-tags":{"latest":"1.0.11"},"versions":{"1.0.11":{"name":"@autoweb/floweb-domain-models","version":"1.0.11","description":"Domain models for AutoWeb Desktop - centralized type definitions","main":"index.js","types":"index.d.ts","scripts":{"build":"tsc","generate":"node generate-types.js","generate-python":"node generate-python-models.js","validate":"ajv validate -s schemas/*.json -d examples/*.json","test":"jest","docs":"typedoc","prepublishOnly":"npm run build && npm run test"},"keywords":["autoweb","domain-models","typescript","automation","testing","schemas"],"author":{"name":"AutoWeb Team"},"license":"UNLICENSED","repository":{"type":"git","url":"git+https://github.com/yadavneerajdev/floweb-domain-models.git"},"devDependencies":{"@types/jest":"^30.0.0","ajv-cli":"^5.0.0","jest":"^29.0.0","json-schema-to-typescript":"^13.0.0","ts-jest":"^29.4.6","typedoc":"^0.25.0","typescript":"5.4.5"},"peerDependencies":{"typescript":">=4.9.0"},"engines":{"node":">=18.0.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"_id":"@autoweb/floweb-domain-models@1.0.11","gitHead":"a6f885d9ba4154090ef9bd3c0a6f758d0817dd52","bugs":{"url":"https://github.com/yadavneerajdev/floweb-domain-models/issues"},"homepage":"https://github.com/yadavneerajdev/floweb-domain-models#readme","_nodeVersion":"20.20.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-eCNlkxKZxtRuCkhFC+W9+TeYnlRiTWyMJUvKYn7He/Mdk/86Q7PTnRcR8fvLCWhYPONAiwdIL9RlQsUBRPZCpA==","shasum":"8c20f6ff12d6d21ab03b387361fcec1d21479ee2","tarball":"https://registry.npmjs.org/@autoweb/floweb-domain-models/-/floweb-domain-models-1.0.11.tgz","fileCount":26,"unpackedSize":235537,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDGw0J3aNpAM8hh7bdAmitkVQmmaF4uebOaJUyCcCufsgIgQZdFx7ASPwYyEWcXq4N8j1470YOwMfLXQesnHix2PSg="}]},"_npmUser":{"name":"yadavneerajdev","email":"connectneerajyadav@gmail.com"},"directories":{},"maintainers":[{"name":"yadavneerajdev","email":"connectneerajyadav@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/floweb-domain-models_1.0.11_1771828133944_0.14716696331235535"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-23T06:28:53.831Z","1.0.11":"2026-02-23T06:28:54.089Z","modified":"2026-02-23T06:28:54.288Z"},"maintainers":[{"name":"yadavneerajdev","email":"connectneerajyadav@gmail.com"}],"description":"Domain models for AutoWeb Desktop - centralized type definitions","homepage":"https://github.com/yadavneerajdev/floweb-domain-models#readme","keywords":["autoweb","domain-models","typescript","automation","testing","schemas"],"repository":{"type":"git","url":"git+https://github.com/yadavneerajdev/floweb-domain-models.git"},"author":{"name":"AutoWeb Team"},"bugs":{"url":"https://github.com/yadavneerajdev/floweb-domain-models/issues"},"license":"UNLICENSED","readme":"# Floweb Domain Models\n\nA professional domain model package for Floweb Desktop, providing centralized type definitions and schemas for both frontend and backend applications.\n\n## Overview\n\nThis package contains JSON Schema definitions that serve as the single source of truth for all domain objects in the Floweb ecosystem. The schemas are used to generate type-safe interfaces for TypeScript and Pydantic models for Python, ensuring consistency across the entire application stack.\n\n## Features\n\n- **Single Source of Truth**: All domain models defined in JSON Schema\n- **Type Safety**: Auto-generated TypeScript interfaces and Python models\n- **Cross-Language Consistency**: Guaranteed compatibility between frontend and backend\n- **Version Control**: Semantic versioning for model changes\n- **Documentation**: Auto-generated documentation from schemas\n\n## Domain Models\n\n### Core Models\n\n- **Flow**: Complete automation flow definitions with actions, edges, and variables\n- **Performance Test**: Load testing configurations and results\n- **Action Configurations**: 40+ action types for automation workflows\n- **Environment**: Environment and global variable management\n\n### Key Components\n\n- **Actions**: Click, Input, Navigate, Wait, API calls, Database operations, etc.\n- **Variables**: Flow parameters, environment variables, global variables\n- **Results**: Execution results, performance metrics, test outcomes\n- **Configuration**: Authentication, thresholds, timing, and other settings\n\n## Usage\n\n### TypeScript\n\n```typescript\nimport { Flow, PerformanceTest, Environment } from '@floweb/domain-models';\n\n// Type-safe usage\nconst flow: Flow = {\n  id: 'flow-123',\n  name: 'My Automation Flow',\n  actions: [...],\n  // ... fully typed\n};\n```\n\n### Python\n\n```python\nfrom floweb_domain_models import Flow, PerformanceTest, Environment\n\n# Pydantic models with validation\nflow = Flow(\n    id=\"flow-123\",\n    name=\"My Automation Flow\",\n    actions=[...]\n)\n```\n\n## Development\n\n### Schema Validation\n\nAll schemas are validated against JSON Schema Draft 2020-12 specification.\n\n### Push the changes and update the npm package version\n\nnpm version patch\nnpm publish\n\n### Code Generation\n\n- TypeScript: Generated using `json-schema-to-typescript`\n- Python: Generated using `datamodel-code-generator`\n\n### Testing\n\nCross-language validation ensures generated models match schema expectations.\n\n## Schema Structure\n\n```\ndomain-models/\n├── schemas/           # JSON Schema definitions\n│   ├── flow.json\n│   ├── performance-test.json\n│   ├── action-configs.json\n│   └── environment.json\n├── types/            # Generated type definitions\n├── examples/         # Sample data files\n└── docs/            # Generated documentation\n```\n\n## Contributing\n\n1. Modify schemas in the `schemas/` directory\n2. Run code generation scripts\n3. Update tests and examples\n4. Ensure cross-language compatibility\n\n## License\n\nCopyright 2024 Floweb. All rights reserved.","readmeFilename":"README.md","_rev":"1-a379f17a29056fc094917ff4e1d84352"}