@lssm/example.crm-pipeline 0.0.0-canary-20251215234340 → 0.0.0-canary-20251216024228
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/.turbo/turbo-build.log +10 -7
- package/CHANGELOG.md +8 -8
- package/dist/contracts/index.js +1 -1
- package/dist/deal/deal.contracts.js +1 -0
- package/dist/deal/deal.enum.js +1 -0
- package/dist/deal/deal.schema.js +1 -0
- package/dist/deal/index.js +1 -0
- package/dist/index.js +1 -1
- package/dist/presentations/pipeline.presentation.js +1 -1
- package/package.json +9 -3
- package/src/contracts/index.ts +3 -2
- package/src/deal/deal.contracts.ts +176 -0
- package/src/deal/deal.enum.ts +23 -0
- package/src/{contracts/deal.contracts.ts → deal/deal.schema.ts} +33 -185
- package/src/deal/index.ts +28 -0
- package/src/presentations/pipeline.presentation.ts +1 -1
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/contracts/deal.contracts.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{ScalarTypeEnum as e,defineEnum as t,defineSchemaModel as n}from"@lssm/lib.schema";import{defineCommand as r,defineQuery as i}from"@lssm/lib.contracts/spec";const a=[`example.crm-pipeline`],o=t(`DealStatus`,[`OPEN`,`WON`,`LOST`,`STALE`]),s=t(`DealStatusFilter`,[`OPEN`,`WON`,`LOST`,`all`]),c=n({name:`Deal`,description:`A deal in the CRM pipeline`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.String_unsecure(),isOptional:!1},value:{type:e.Float_unsecure(),isOptional:!1},currency:{type:e.String_unsecure(),isOptional:!1},pipelineId:{type:e.String_unsecure(),isOptional:!1},stageId:{type:e.String_unsecure(),isOptional:!1},status:{type:o,isOptional:!1},contactId:{type:e.String_unsecure(),isOptional:!0},companyId:{type:e.String_unsecure(),isOptional:!0},ownerId:{type:e.String_unsecure(),isOptional:!1},expectedCloseDate:{type:e.DateTime(),isOptional:!0},createdAt:{type:e.DateTime(),isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),l=n({name:`CreateDealInput`,description:`Input for creating a deal`,fields:{name:{type:e.NonEmptyString(),isOptional:!1},value:{type:e.Float_unsecure(),isOptional:!1},currency:{type:e.String_unsecure(),isOptional:!0},pipelineId:{type:e.String_unsecure(),isOptional:!1},stageId:{type:e.String_unsecure(),isOptional:!1},contactId:{type:e.String_unsecure(),isOptional:!0},companyId:{type:e.String_unsecure(),isOptional:!0},expectedCloseDate:{type:e.DateTime(),isOptional:!0}}}),u=n({name:`MoveDealInput`,description:`Input for moving a deal to another stage`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},stageId:{type:e.String_unsecure(),isOptional:!1},position:{type:e.Int_unsecure(),isOptional:!0}}}),d=n({name:`DealMovedPayload`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},fromStage:{type:e.String_unsecure(),isOptional:!1},toStage:{type:e.String_unsecure(),isOptional:!1}}}),f=n({name:`WinDealInput`,description:`Input for marking a deal as won`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},wonSource:{type:e.String_unsecure(),isOptional:!0},notes:{type:e.String_unsecure(),isOptional:!0}}}),p=n({name:`DealWonPayload`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},value:{type:e.Float_unsecure(),isOptional:!1}}}),m=n({name:`LoseDealInput`,description:`Input for marking a deal as lost`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},lostReason:{type:e.String_unsecure(),isOptional:!1},notes:{type:e.String_unsecure(),isOptional:!0}}}),h=n({name:`DealLostPayload`,fields:{dealId:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!1}}}),g=n({name:`ListDealsInput`,description:`Input for listing deals`,fields:{pipelineId:{type:e.String_unsecure(),isOptional:!0},stageId:{type:e.String_unsecure(),isOptional:!0},status:{type:s,isOptional:!0},ownerId:{type:e.String_unsecure(),isOptional:!0},search:{type:e.String_unsecure(),isOptional:!0},limit:{type:e.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:e.Int_unsecure(),isOptional:!0,defaultValue:0}}}),_=n({name:`ListDealsOutput`,description:`Output for listing deals`,fields:{deals:{type:c,isArray:!0,isOptional:!1},total:{type:e.Int_unsecure(),isOptional:!1},totalValue:{type:e.Float_unsecure(),isOptional:!1}}}),v=r({meta:{name:`crm.deal.create`,version:1,stability:`stable`,owners:[...a],tags:[`crm`,`deal`,`create`],description:`Create a new deal in the pipeline.`,goal:`Allow sales reps to create new opportunities.`,context:`Deal creation UI, quick add.`},io:{input:l,output:c},policy:{auth:`user`},sideEffects:{emits:[{name:`deal.created`,version:1,when:`Deal is created`,payload:c}],audit:[`deal.created`]}}),y=r({meta:{name:`crm.deal.move`,version:1,stability:`stable`,owners:[...a],tags:[`crm`,`deal`,`move`,`kanban`],description:`Move a deal to a different stage.`,goal:`Allow drag-and-drop stage movement in Kanban.`,context:`Pipeline Kanban view.`},io:{input:u,output:c},policy:{auth:`user`},sideEffects:{emits:[{name:`deal.moved`,version:1,when:`Deal stage changed`,payload:d}],audit:[`deal.moved`]}}),b=r({meta:{name:`crm.deal.win`,version:1,stability:`stable`,owners:[...a],tags:[`crm`,`deal`,`won`],description:`Mark a deal as won.`,goal:`Close a deal as successful.`,context:`Deal closing flow.`},io:{input:f,output:c},policy:{auth:`user`},sideEffects:{emits:[{name:`deal.won`,version:1,when:`Deal is won`,payload:p}],audit:[`deal.won`]}}),x=r({meta:{name:`crm.deal.lose`,version:1,stability:`stable`,owners:[...a],tags:[`crm`,`deal`,`lost`],description:`Mark a deal as lost.`,goal:`Close a deal as unsuccessful.`,context:`Deal closing flow.`},io:{input:m,output:c},policy:{auth:`user`},sideEffects:{emits:[{name:`deal.lost`,version:1,when:`Deal is lost`,payload:h}],audit:[`deal.lost`]}}),S=i({meta:{name:`crm.deal.list`,version:1,stability:`stable`,owners:[...a],tags:[`crm`,`deal`,`list`],description:`List deals with filters.`,goal:`Show pipeline, deal lists, dashboards.`,context:`Pipeline view, deal list.`},io:{input:g,output:_},policy:{auth:`user`}});export{v as CreateDealContract,l as CreateDealInputModel,h as DealLostPayloadModel,c as DealModel,d as DealMovedPayloadModel,s as DealStatusFilterEnum,p as DealWonPayloadModel,S as ListDealsContract,g as ListDealsInputModel,_ as ListDealsOutputModel,x as LoseDealContract,m as LoseDealInputModel,y as MoveDealContract,u as MoveDealInputModel,b as WinDealContract,f as WinDealInputModel};
|