@lssm/example.service-business-os 0.0.0-canary-20251217083314 → 1.41.1

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.
Files changed (174) hide show
  1. package/dist/client/client.contracts.js +1 -33
  2. package/dist/client/client.schema.js +1 -78
  3. package/dist/client/index.js +1 -4
  4. package/dist/contracts/index.js +1 -17
  5. package/dist/docs/index.js +1 -1
  6. package/dist/docs/service-business-os.docblock.js +5 -62
  7. package/dist/entities/index.js +1 -289
  8. package/dist/events.js +1 -178
  9. package/dist/example.js +1 -45
  10. package/dist/handlers/index.js +1 -5
  11. package/dist/index.js +1 -17
  12. package/dist/invoice/index.js +1 -4
  13. package/dist/invoice/invoice.contracts.js +1 -33
  14. package/dist/invoice/invoice.schema.js +1 -78
  15. package/dist/job/index.js +1 -4
  16. package/dist/job/job.contracts.js +1 -119
  17. package/dist/job/job.schema.js +1 -99
  18. package/dist/payment/index.js +1 -4
  19. package/dist/payment/payment.contracts.js +1 -33
  20. package/dist/payment/payment.schema.js +1 -74
  21. package/dist/presentations/index.js +1 -17
  22. package/dist/presentations.js +1 -148
  23. package/dist/quote/index.js +1 -4
  24. package/dist/quote/quote.contracts.js +1 -57
  25. package/dist/quote/quote.schema.js +1 -115
  26. package/dist/service.feature.js +1 -162
  27. package/package.json +36 -36
  28. package/dist/client/client.contracts.d.ts +0 -64
  29. package/dist/client/client.schema.d.ts +0 -67
  30. package/dist/client/index.d.ts +0 -3
  31. package/dist/contracts/index.d.ts +0 -11
  32. package/dist/docs/index.d.ts +0 -1
  33. package/dist/docs/service-business-os.docblock.d.ts +0 -1
  34. package/dist/entities/index.d.ts +0 -167
  35. package/dist/events.d.ts +0 -336
  36. package/dist/example.d.ts +0 -36
  37. package/dist/handlers/index.d.ts +0 -12
  38. package/dist/index.d.ts +0 -11
  39. package/dist/invoice/index.d.ts +0 -3
  40. package/dist/invoice/invoice.contracts.d.ts +0 -64
  41. package/dist/invoice/invoice.schema.d.ts +0 -67
  42. package/dist/job/index.d.ts +0 -3
  43. package/dist/job/job.contracts.d.ts +0 -237
  44. package/dist/job/job.schema.d.ts +0 -84
  45. package/dist/libs/contracts/dist/capabilities/openbanking.js +0 -88
  46. package/dist/libs/contracts/dist/client/index.js +0 -5
  47. package/dist/libs/contracts/dist/client/react/feature-render.js +0 -2
  48. package/dist/libs/contracts/dist/client/react/form-render.js +0 -4
  49. package/dist/libs/contracts/dist/client/react/index.js +0 -4
  50. package/dist/libs/contracts/dist/contract-registry/index.js +0 -1
  51. package/dist/libs/contracts/dist/contract-registry/schemas.js +0 -60
  52. package/dist/libs/contracts/dist/docs/PUBLISHING.docblock.js +0 -16
  53. package/dist/libs/contracts/dist/docs/accessibility_wcag_compliance_specs.docblock.js +0 -16
  54. package/dist/libs/contracts/dist/docs/index.js +0 -29
  55. package/dist/libs/contracts/dist/docs/presentations.js +0 -71
  56. package/dist/libs/contracts/dist/docs/registry.js +0 -44
  57. package/dist/libs/contracts/dist/docs/tech/PHASE_1_QUICKSTART.docblock.js +0 -16
  58. package/dist/libs/contracts/dist/docs/tech/PHASE_2_AI_NATIVE_OPERATIONS.docblock.js +0 -16
  59. package/dist/libs/contracts/dist/docs/tech/PHASE_3_AUTO_EVOLUTION.docblock.js +0 -16
  60. package/dist/libs/contracts/dist/docs/tech/PHASE_4_PERSONALIZATION_ENGINE.docblock.js +0 -16
  61. package/dist/libs/contracts/dist/docs/tech/PHASE_5_ZERO_TOUCH_OPERATIONS.docblock.js +0 -16
  62. package/dist/libs/contracts/dist/docs/tech/auth/better-auth-nextjs.docblock.js +0 -80
  63. package/dist/libs/contracts/dist/docs/tech/contracts/openapi-export.docblock.js +0 -57
  64. package/dist/libs/contracts/dist/docs/tech/lifecycle-stage-system.docblock.js +0 -16
  65. package/dist/libs/contracts/dist/docs/tech/llm/llm-integration.docblock.js +0 -357
  66. package/dist/libs/contracts/dist/docs/tech/mcp-endpoints.docblock.js +0 -37
  67. package/dist/libs/contracts/dist/docs/tech/presentation-runtime.docblock.js +0 -16
  68. package/dist/libs/contracts/dist/docs/tech/schema/README.docblock.js +0 -20
  69. package/dist/libs/contracts/dist/docs/tech/studio/learning-events.docblock.js +0 -48
  70. package/dist/libs/contracts/dist/docs/tech/studio/learning-journeys.docblock.js +0 -79
  71. package/dist/libs/contracts/dist/docs/tech/studio/platform-admin-panel.docblock.js +0 -84
  72. package/dist/libs/contracts/dist/docs/tech/studio/project-access-teams.docblock.js +0 -45
  73. package/dist/libs/contracts/dist/docs/tech/studio/project-routing.docblock.js +0 -67
  74. package/dist/libs/contracts/dist/docs/tech/studio/sandbox-unlogged.docblock.js +0 -40
  75. package/dist/libs/contracts/dist/docs/tech/studio/team-invitations.docblock.js +0 -69
  76. package/dist/libs/contracts/dist/docs/tech/studio/workspace-ops.docblock.js +0 -47
  77. package/dist/libs/contracts/dist/docs/tech/studio/workspaces.docblock.js +0 -62
  78. package/dist/libs/contracts/dist/docs/tech/telemetry-ingest.docblock.js +0 -155
  79. package/dist/libs/contracts/dist/docs/tech/templates/runtime.docblock.js +0 -20
  80. package/dist/libs/contracts/dist/docs/tech/vscode-extension.docblock.js +0 -101
  81. package/dist/libs/contracts/dist/docs/tech/workflows/overview.docblock.js +0 -20
  82. package/dist/libs/contracts/dist/events.js +0 -10
  83. package/dist/libs/contracts/dist/experiments/evaluator.js +0 -1
  84. package/dist/libs/contracts/dist/index.js +0 -71
  85. package/dist/libs/contracts/dist/install.js +0 -2
  86. package/dist/libs/contracts/dist/integrations/contracts.js +0 -377
  87. package/dist/libs/contracts/dist/integrations/index.js +0 -18
  88. package/dist/libs/contracts/dist/integrations/openbanking/contracts/accounts.js +0 -228
  89. package/dist/libs/contracts/dist/integrations/openbanking/contracts/balances.js +0 -159
  90. package/dist/libs/contracts/dist/integrations/openbanking/contracts/index.js +0 -3
  91. package/dist/libs/contracts/dist/integrations/openbanking/contracts/transactions.js +0 -210
  92. package/dist/libs/contracts/dist/integrations/openbanking/models.js +0 -242
  93. package/dist/libs/contracts/dist/integrations/openbanking/telemetry.js +0 -13
  94. package/dist/libs/contracts/dist/integrations/providers/elevenlabs.js +0 -52
  95. package/dist/libs/contracts/dist/integrations/providers/gcs-storage.js +0 -75
  96. package/dist/libs/contracts/dist/integrations/providers/gmail.js +0 -87
  97. package/dist/libs/contracts/dist/integrations/providers/google-calendar.js +0 -66
  98. package/dist/libs/contracts/dist/integrations/providers/index.js +0 -11
  99. package/dist/libs/contracts/dist/integrations/providers/mistral.js +0 -68
  100. package/dist/libs/contracts/dist/integrations/providers/postmark.js +0 -68
  101. package/dist/libs/contracts/dist/integrations/providers/powens.js +0 -116
  102. package/dist/libs/contracts/dist/integrations/providers/qdrant.js +0 -73
  103. package/dist/libs/contracts/dist/integrations/providers/registry.js +0 -10
  104. package/dist/libs/contracts/dist/integrations/providers/stripe.js +0 -83
  105. package/dist/libs/contracts/dist/integrations/providers/twilio-sms.js +0 -61
  106. package/dist/libs/contracts/dist/jsonschema.js +0 -1
  107. package/dist/libs/contracts/dist/knowledge/contracts.js +0 -306
  108. package/dist/libs/contracts/dist/knowledge/index.js +0 -7
  109. package/dist/libs/contracts/dist/knowledge/spaces/email-threads.js +0 -34
  110. package/dist/libs/contracts/dist/knowledge/spaces/financial-docs.js +0 -34
  111. package/dist/libs/contracts/dist/knowledge/spaces/financial-overview.js +0 -38
  112. package/dist/libs/contracts/dist/knowledge/spaces/index.js +0 -6
  113. package/dist/libs/contracts/dist/knowledge/spaces/product-canon.js +0 -34
  114. package/dist/libs/contracts/dist/knowledge/spaces/support-faq.js +0 -37
  115. package/dist/libs/contracts/dist/knowledge/spaces/uploaded-docs.js +0 -34
  116. package/dist/libs/contracts/dist/llm/exporters.js +0 -19
  117. package/dist/libs/contracts/dist/llm/index.js +0 -2
  118. package/dist/libs/contracts/dist/llm/prompts.js +0 -1
  119. package/dist/libs/contracts/dist/onboarding-base.js +0 -196
  120. package/dist/libs/contracts/dist/openapi.js +0 -1
  121. package/dist/libs/contracts/dist/ownership.js +0 -21
  122. package/dist/libs/contracts/dist/presentations.js +0 -1
  123. package/dist/libs/contracts/dist/presentations.v2.js +0 -11
  124. package/dist/libs/contracts/dist/prompt.js +0 -1
  125. package/dist/libs/contracts/dist/promptRegistry.js +0 -1
  126. package/dist/libs/contracts/dist/regenerator/index.js +0 -1
  127. package/dist/libs/contracts/dist/regenerator/service.js +0 -6
  128. package/dist/libs/contracts/dist/registry.js +0 -2
  129. package/dist/libs/contracts/dist/resources.js +0 -1
  130. package/dist/libs/contracts/dist/schema/dist/EnumType.js +0 -2
  131. package/dist/libs/contracts/dist/schema/dist/FieldType.js +0 -49
  132. package/dist/libs/contracts/dist/schema/dist/ScalarTypeEnum.js +0 -236
  133. package/dist/libs/contracts/dist/schema/dist/SchemaModel.js +0 -34
  134. package/dist/libs/contracts/dist/schema/dist/entity/defineEntity.js +0 -1
  135. package/dist/libs/contracts/dist/schema/dist/entity/index.js +0 -2
  136. package/dist/libs/contracts/dist/schema/dist/entity/types.js +0 -1
  137. package/dist/libs/contracts/dist/schema/dist/index.js +0 -6
  138. package/dist/libs/contracts/dist/server/graphql-pothos.js +0 -6
  139. package/dist/libs/contracts/dist/server/index.js +0 -8
  140. package/dist/libs/contracts/dist/server/mcp/createMcpServer.js +0 -4
  141. package/dist/libs/contracts/dist/server/mcp/registerPresentations.js +0 -2
  142. package/dist/libs/contracts/dist/server/mcp/registerPrompts.js +0 -1
  143. package/dist/libs/contracts/dist/server/mcp/registerResources.js +0 -2
  144. package/dist/libs/contracts/dist/server/mcp/registerTools.js +0 -1
  145. package/dist/libs/contracts/dist/server/provider-mcp.js +0 -1
  146. package/dist/libs/contracts/dist/server/rest-elysia.js +0 -1
  147. package/dist/libs/contracts/dist/server/rest-express.js +0 -1
  148. package/dist/libs/contracts/dist/server/rest-generic.js +0 -1
  149. package/dist/libs/contracts/dist/server/rest-next-app.js +0 -1
  150. package/dist/libs/contracts/dist/server/rest-next-pages.js +0 -1
  151. package/dist/libs/contracts/dist/spec.js +0 -34
  152. package/dist/libs/contracts/dist/telemetry/index.js +0 -1
  153. package/dist/libs/contracts/dist/telemetry/tracker.js +0 -1
  154. package/dist/libs/contracts/dist/tests/index.js +0 -1
  155. package/dist/libs/contracts/dist/tests/runner.js +0 -2
  156. package/dist/libs/contracts/dist/workflow/index.js +0 -1
  157. package/dist/libs/contracts/dist/workflow/runner.js +0 -1
  158. package/dist/libs/schema/dist/EnumType.js +0 -2
  159. package/dist/libs/schema/dist/FieldType.js +0 -49
  160. package/dist/libs/schema/dist/ScalarTypeEnum.js +0 -236
  161. package/dist/libs/schema/dist/SchemaModel.js +0 -39
  162. package/dist/libs/schema/dist/entity/defineEntity.js +0 -236
  163. package/dist/libs/schema/dist/entity/index.js +0 -2
  164. package/dist/libs/schema/dist/entity/types.js +0 -1
  165. package/dist/libs/schema/dist/index.js +0 -6
  166. package/dist/payment/index.d.ts +0 -3
  167. package/dist/payment/payment.contracts.d.ts +0 -60
  168. package/dist/payment/payment.schema.d.ts +0 -63
  169. package/dist/presentations/index.d.ts +0 -8
  170. package/dist/presentations.d.ts +0 -12
  171. package/dist/quote/index.d.ts +0 -3
  172. package/dist/quote/quote.contracts.d.ts +0 -134
  173. package/dist/quote/quote.schema.d.ts +0 -100
  174. package/dist/service.feature.d.ts +0 -6
package/dist/events.js CHANGED
@@ -1,178 +1 @@
1
- import { ScalarTypeEnum } from "./libs/schema/dist/ScalarTypeEnum.js";
2
- import { defineSchemaModel } from "./libs/schema/dist/SchemaModel.js";
3
- import "./libs/schema/dist/index.js";
4
- import { defineEvent } from "./libs/contracts/dist/events.js";
5
- import "./libs/contracts/dist/index.js";
6
-
7
- //#region src/events.ts
8
- const QuoteEventPayload = defineSchemaModel({
9
- name: "QuoteEventPayload",
10
- description: "Event payload for quote lifecycle",
11
- fields: {
12
- quoteId: {
13
- type: ScalarTypeEnum.String_unsecure(),
14
- isOptional: false
15
- },
16
- clientId: {
17
- type: ScalarTypeEnum.String_unsecure(),
18
- isOptional: false
19
- },
20
- amount: {
21
- type: ScalarTypeEnum.Float_unsecure(),
22
- isOptional: false
23
- },
24
- status: {
25
- type: ScalarTypeEnum.String_unsecure(),
26
- isOptional: false
27
- },
28
- orgId: {
29
- type: ScalarTypeEnum.String_unsecure(),
30
- isOptional: false
31
- },
32
- occurredAt: {
33
- type: ScalarTypeEnum.DateTime(),
34
- isOptional: false
35
- }
36
- }
37
- });
38
- const JobEventPayload = defineSchemaModel({
39
- name: "JobEventPayload",
40
- description: "Event payload for job lifecycle",
41
- fields: {
42
- jobId: {
43
- type: ScalarTypeEnum.String_unsecure(),
44
- isOptional: false
45
- },
46
- quoteId: {
47
- type: ScalarTypeEnum.String_unsecure(),
48
- isOptional: true
49
- },
50
- clientId: {
51
- type: ScalarTypeEnum.String_unsecure(),
52
- isOptional: true
53
- },
54
- status: {
55
- type: ScalarTypeEnum.String_unsecure(),
56
- isOptional: false
57
- },
58
- scheduledAt: {
59
- type: ScalarTypeEnum.DateTime(),
60
- isOptional: true
61
- },
62
- orgId: {
63
- type: ScalarTypeEnum.String_unsecure(),
64
- isOptional: false
65
- },
66
- occurredAt: {
67
- type: ScalarTypeEnum.DateTime(),
68
- isOptional: false
69
- }
70
- }
71
- });
72
- const InvoiceEventPayload = defineSchemaModel({
73
- name: "InvoiceEventPayload",
74
- description: "Event payload for invoices",
75
- fields: {
76
- invoiceId: {
77
- type: ScalarTypeEnum.String_unsecure(),
78
- isOptional: false
79
- },
80
- jobId: {
81
- type: ScalarTypeEnum.String_unsecure(),
82
- isOptional: false
83
- },
84
- amount: {
85
- type: ScalarTypeEnum.Float_unsecure(),
86
- isOptional: false
87
- },
88
- status: {
89
- type: ScalarTypeEnum.String_unsecure(),
90
- isOptional: false
91
- },
92
- orgId: {
93
- type: ScalarTypeEnum.String_unsecure(),
94
- isOptional: false
95
- },
96
- occurredAt: {
97
- type: ScalarTypeEnum.DateTime(),
98
- isOptional: false
99
- }
100
- }
101
- });
102
- const PaymentEventPayload = defineSchemaModel({
103
- name: "PaymentEventPayload",
104
- description: "Event payload for payments",
105
- fields: {
106
- paymentId: {
107
- type: ScalarTypeEnum.String_unsecure(),
108
- isOptional: false
109
- },
110
- invoiceId: {
111
- type: ScalarTypeEnum.String_unsecure(),
112
- isOptional: false
113
- },
114
- amount: {
115
- type: ScalarTypeEnum.Float_unsecure(),
116
- isOptional: false
117
- },
118
- method: {
119
- type: ScalarTypeEnum.String_unsecure(),
120
- isOptional: false
121
- },
122
- orgId: {
123
- type: ScalarTypeEnum.String_unsecure(),
124
- isOptional: false
125
- },
126
- receivedAt: {
127
- type: ScalarTypeEnum.DateTime(),
128
- isOptional: false
129
- }
130
- }
131
- });
132
- const QuoteSentEvent = defineEvent({
133
- name: "service.quote.sent",
134
- version: 1,
135
- description: "A quote was sent to the client.",
136
- payload: QuoteEventPayload
137
- });
138
- const QuoteAcceptedEvent = defineEvent({
139
- name: "service.quote.accepted",
140
- version: 1,
141
- description: "A quote was accepted.",
142
- payload: QuoteEventPayload
143
- });
144
- const JobScheduledEvent = defineEvent({
145
- name: "service.job.scheduled",
146
- version: 1,
147
- description: "A job was scheduled.",
148
- payload: JobEventPayload
149
- });
150
- const JobCompletedEvent = defineEvent({
151
- name: "service.job.completed",
152
- version: 1,
153
- description: "A job was completed.",
154
- payload: JobEventPayload
155
- });
156
- const InvoiceIssuedEvent = defineEvent({
157
- name: "service.invoice.issued",
158
- version: 1,
159
- description: "An invoice was issued.",
160
- payload: InvoiceEventPayload
161
- });
162
- const PaymentReceivedEvent = defineEvent({
163
- name: "service.payment.received",
164
- version: 1,
165
- description: "A payment was recorded.",
166
- payload: PaymentEventPayload
167
- });
168
- const ServiceBusinessEvents = {
169
- QuoteSentEvent,
170
- QuoteAcceptedEvent,
171
- JobScheduledEvent,
172
- JobCompletedEvent,
173
- InvoiceIssuedEvent,
174
- PaymentReceivedEvent
175
- };
176
-
177
- //#endregion
178
- export { InvoiceIssuedEvent, JobCompletedEvent, JobScheduledEvent, PaymentReceivedEvent, QuoteAcceptedEvent, QuoteSentEvent, ServiceBusinessEvents };
1
+ import{ScalarTypeEnum as e,defineSchemaModel as t}from"@lssm/lib.schema";import{defineEvent as n}from"@lssm/lib.contracts";const r=t({name:`QuoteEventPayload`,description:`Event payload for quote lifecycle`,fields:{quoteId:{type:e.String_unsecure(),isOptional:!1},clientId:{type:e.String_unsecure(),isOptional:!1},amount:{type:e.Float_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},orgId:{type:e.String_unsecure(),isOptional:!1},occurredAt:{type:e.DateTime(),isOptional:!1}}}),i=t({name:`JobEventPayload`,description:`Event payload for job lifecycle`,fields:{jobId:{type:e.String_unsecure(),isOptional:!1},quoteId:{type:e.String_unsecure(),isOptional:!0},clientId:{type:e.String_unsecure(),isOptional:!0},status:{type:e.String_unsecure(),isOptional:!1},scheduledAt:{type:e.DateTime(),isOptional:!0},orgId:{type:e.String_unsecure(),isOptional:!1},occurredAt:{type:e.DateTime(),isOptional:!1}}}),a=t({name:`InvoiceEventPayload`,description:`Event payload for invoices`,fields:{invoiceId:{type:e.String_unsecure(),isOptional:!1},jobId:{type:e.String_unsecure(),isOptional:!1},amount:{type:e.Float_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},orgId:{type:e.String_unsecure(),isOptional:!1},occurredAt:{type:e.DateTime(),isOptional:!1}}}),o=t({name:`PaymentEventPayload`,description:`Event payload for payments`,fields:{paymentId:{type:e.String_unsecure(),isOptional:!1},invoiceId:{type:e.String_unsecure(),isOptional:!1},amount:{type:e.Float_unsecure(),isOptional:!1},method:{type:e.String_unsecure(),isOptional:!1},orgId:{type:e.String_unsecure(),isOptional:!1},receivedAt:{type:e.DateTime(),isOptional:!1}}}),s=n({name:`service.quote.sent`,version:1,description:`A quote was sent to the client.`,payload:r}),c=n({name:`service.quote.accepted`,version:1,description:`A quote was accepted.`,payload:r}),l=n({name:`service.job.scheduled`,version:1,description:`A job was scheduled.`,payload:i}),u=n({name:`service.job.completed`,version:1,description:`A job was completed.`,payload:i}),d=n({name:`service.invoice.issued`,version:1,description:`An invoice was issued.`,payload:a}),f=n({name:`service.payment.received`,version:1,description:`A payment was recorded.`,payload:o}),p={QuoteSentEvent:s,QuoteAcceptedEvent:c,JobScheduledEvent:l,JobCompletedEvent:u,InvoiceIssuedEvent:d,PaymentReceivedEvent:f};export{d as InvoiceIssuedEvent,u as JobCompletedEvent,l as JobScheduledEvent,f as PaymentReceivedEvent,c as QuoteAcceptedEvent,s as QuoteSentEvent,p as ServiceBusinessEvents};
package/dist/example.js CHANGED
@@ -1,45 +1 @@
1
- //#region src/example.ts
2
- const example = {
3
- id: "service-business-os",
4
- title: "Service Business OS",
5
- summary: "Service business operating system: jobs, clients, scheduling, invoicing, and ops dashboards.",
6
- tags: [
7
- "service-business",
8
- "jobs",
9
- "scheduling",
10
- "invoicing"
11
- ],
12
- kind: "template",
13
- visibility: "public",
14
- docs: { rootDocId: "docs.examples.service-business-os" },
15
- entrypoints: {
16
- packageName: "@lssm/example.service-business-os",
17
- feature: "./feature",
18
- contracts: "./contracts",
19
- presentations: "./presentations",
20
- handlers: "./handlers",
21
- docs: "./docs"
22
- },
23
- surfaces: {
24
- templates: true,
25
- sandbox: {
26
- enabled: true,
27
- modes: [
28
- "playground",
29
- "specs",
30
- "builder",
31
- "markdown",
32
- "evolution"
33
- ]
34
- },
35
- studio: {
36
- enabled: true,
37
- installable: true
38
- },
39
- mcp: { enabled: true }
40
- }
41
- };
42
- var example_default = example;
43
-
44
- //#endregion
45
- export { example_default as default };
1
+ var e={id:`service-business-os`,title:`Service Business OS`,summary:`Service business operating system: jobs, clients, scheduling, invoicing, and ops dashboards.`,tags:[`service-business`,`jobs`,`scheduling`,`invoicing`],kind:`template`,visibility:`public`,docs:{rootDocId:`docs.examples.service-business-os`},entrypoints:{packageName:`@lssm/example.service-business-os`,feature:`./feature`,contracts:`./contracts`,presentations:`./presentations`,handlers:`./handlers`,docs:`./docs`},surfaces:{templates:!0,sandbox:{enabled:!0,modes:[`playground`,`specs`,`builder`,`markdown`,`evolution`]},studio:{enabled:!0,installable:!0},mcp:{enabled:!0}}};export{e as default};
@@ -1,5 +1 @@
1
- //#region src/handlers/index.ts
2
- function registerServiceBusinessHandlers() {}
3
-
4
- //#endregion
5
- export { registerServiceBusinessHandlers };
1
+ function e(){}export{e as registerServiceBusinessHandlers};
package/dist/index.js CHANGED
@@ -1,17 +1 @@
1
- import { ClientModel, CreateClientInputModel } from "./client/client.schema.js";
2
- import { CreateClientContract } from "./client/client.contracts.js";
3
- import "./client/index.js";
4
- import { AcceptQuoteInputModel, CreateQuoteInputModel, QuoteModel } from "./quote/quote.schema.js";
5
- import { AcceptQuoteContract, CreateQuoteContract } from "./quote/quote.contracts.js";
6
- import "./quote/index.js";
7
- import { CompleteJobInputModel, JobModel, ScheduleJobInputModel } from "./job/job.schema.js";
8
- import { CompleteJobContract, ListJobsInputModel, ListJobsOperation, ListJobsOutputModel, ScheduleJobContract } from "./job/job.contracts.js";
9
- import "./job/index.js";
10
- import { InvoiceModel, IssueInvoiceInputModel } from "./invoice/invoice.schema.js";
11
- import { IssueInvoiceContract } from "./invoice/invoice.contracts.js";
12
- import "./invoice/index.js";
13
- import { PaymentModel, RecordPaymentInputModel } from "./payment/payment.schema.js";
14
- import { RecordPaymentContract } from "./payment/payment.contracts.js";
15
- import "./payment/index.js";
16
-
17
- export { AcceptQuoteContract, AcceptQuoteInputModel, ClientModel, CompleteJobContract, CompleteJobInputModel, CreateClientContract, CreateClientInputModel, CreateQuoteContract, CreateQuoteInputModel, InvoiceModel, IssueInvoiceContract, IssueInvoiceInputModel, JobModel, ListJobsInputModel, ListJobsOperation, ListJobsOutputModel, PaymentModel, QuoteModel, RecordPaymentContract, RecordPaymentInputModel, ScheduleJobContract, ScheduleJobInputModel };
1
+ import{ClientModel as e,CreateClientInputModel as t}from"./client/client.schema.js";import{CreateClientContract as n}from"./client/client.contracts.js";import"./client/index.js";import{AcceptQuoteInputModel as r,CreateQuoteInputModel as i,QuoteModel as a}from"./quote/quote.schema.js";import{AcceptQuoteContract as o,CreateQuoteContract as s}from"./quote/quote.contracts.js";import"./quote/index.js";import{CompleteJobInputModel as c,JobModel as l,ScheduleJobInputModel as u}from"./job/job.schema.js";import{CompleteJobContract as d,ListJobsInputModel as f,ListJobsOperation as p,ListJobsOutputModel as m,ScheduleJobContract as h}from"./job/job.contracts.js";import"./job/index.js";import{InvoiceModel as g,IssueInvoiceInputModel as _}from"./invoice/invoice.schema.js";import{IssueInvoiceContract as v}from"./invoice/invoice.contracts.js";import"./invoice/index.js";import{PaymentModel as y,RecordPaymentInputModel as b}from"./payment/payment.schema.js";import{RecordPaymentContract as x}from"./payment/payment.contracts.js";import"./payment/index.js";export{o as AcceptQuoteContract,r as AcceptQuoteInputModel,e as ClientModel,d as CompleteJobContract,c as CompleteJobInputModel,n as CreateClientContract,t as CreateClientInputModel,s as CreateQuoteContract,i as CreateQuoteInputModel,g as InvoiceModel,v as IssueInvoiceContract,_ as IssueInvoiceInputModel,l as JobModel,f as ListJobsInputModel,p as ListJobsOperation,m as ListJobsOutputModel,y as PaymentModel,a as QuoteModel,x as RecordPaymentContract,b as RecordPaymentInputModel,h as ScheduleJobContract,u as ScheduleJobInputModel};
@@ -1,4 +1 @@
1
- import { InvoiceModel, IssueInvoiceInputModel } from "./invoice.schema.js";
2
- import { IssueInvoiceContract } from "./invoice.contracts.js";
3
-
4
- export { InvoiceModel, IssueInvoiceContract, IssueInvoiceInputModel };
1
+ import{InvoiceModel as e,IssueInvoiceInputModel as t}from"./invoice.schema.js";import{IssueInvoiceContract as n}from"./invoice.contracts.js";export{e as InvoiceModel,n as IssueInvoiceContract,t as IssueInvoiceInputModel};
@@ -1,33 +1 @@
1
- import { defineCommand } from "../libs/contracts/dist/spec.js";
2
- import "../libs/contracts/dist/index.js";
3
- import { InvoiceModel, IssueInvoiceInputModel } from "./invoice.schema.js";
4
-
5
- //#region src/invoice/invoice.contracts.ts
6
- const OWNERS = ["@examples.service-business-os"];
7
- /**
8
- * Issue an invoice.
9
- */
10
- const IssueInvoiceContract = defineCommand({
11
- meta: {
12
- name: "service.invoice.issue",
13
- version: 1,
14
- stability: "stable",
15
- owners: [...OWNERS],
16
- tags: [
17
- "service-business-os",
18
- "invoice",
19
- "issue"
20
- ],
21
- description: "Issue an invoice for a job.",
22
- goal: "Bill clients.",
23
- context: "Billing."
24
- },
25
- io: {
26
- input: IssueInvoiceInputModel,
27
- output: InvoiceModel
28
- },
29
- policy: { auth: "user" }
30
- });
31
-
32
- //#endregion
33
- export { IssueInvoiceContract };
1
+ import{InvoiceModel as e,IssueInvoiceInputModel as t}from"./invoice.schema.js";import{defineCommand as n}from"@lssm/lib.contracts";const r=n({meta:{name:`service.invoice.issue`,version:1,stability:`stable`,owners:[...[`@examples.service-business-os`]],tags:[`service-business-os`,`invoice`,`issue`],description:`Issue an invoice for a job.`,goal:`Bill clients.`,context:`Billing.`},io:{input:t,output:e},policy:{auth:`user`}});export{r as IssueInvoiceContract};
@@ -1,78 +1 @@
1
- import { ScalarTypeEnum } from "../libs/schema/dist/ScalarTypeEnum.js";
2
- import { defineSchemaModel } from "../libs/schema/dist/SchemaModel.js";
3
- import "../libs/schema/dist/index.js";
4
-
5
- //#region src/invoice/invoice.schema.ts
6
- /**
7
- * Invoice issued for a job.
8
- */
9
- const InvoiceModel = defineSchemaModel({
10
- name: "Invoice",
11
- description: "Invoice issued for a job",
12
- fields: {
13
- id: {
14
- type: ScalarTypeEnum.String_unsecure(),
15
- isOptional: false
16
- },
17
- jobId: {
18
- type: ScalarTypeEnum.String_unsecure(),
19
- isOptional: false
20
- },
21
- invoiceNumber: {
22
- type: ScalarTypeEnum.String_unsecure(),
23
- isOptional: false
24
- },
25
- amount: {
26
- type: ScalarTypeEnum.Float_unsecure(),
27
- isOptional: false
28
- },
29
- currency: {
30
- type: ScalarTypeEnum.String_unsecure(),
31
- isOptional: false
32
- },
33
- status: {
34
- type: ScalarTypeEnum.String_unsecure(),
35
- isOptional: false
36
- },
37
- dueDate: {
38
- type: ScalarTypeEnum.DateTime(),
39
- isOptional: true
40
- },
41
- issuedAt: {
42
- type: ScalarTypeEnum.DateTime(),
43
- isOptional: true
44
- },
45
- paidAt: {
46
- type: ScalarTypeEnum.DateTime(),
47
- isOptional: true
48
- }
49
- }
50
- });
51
- /**
52
- * Input for issuing an invoice.
53
- */
54
- const IssueInvoiceInputModel = defineSchemaModel({
55
- name: "IssueInvoiceInput",
56
- description: "Input for issuing an invoice",
57
- fields: {
58
- jobId: {
59
- type: ScalarTypeEnum.String_unsecure(),
60
- isOptional: false
61
- },
62
- dueDate: {
63
- type: ScalarTypeEnum.DateTime(),
64
- isOptional: true
65
- },
66
- notes: {
67
- type: ScalarTypeEnum.String_unsecure(),
68
- isOptional: true
69
- },
70
- lineItems: {
71
- type: ScalarTypeEnum.JSON(),
72
- isOptional: true
73
- }
74
- }
75
- });
76
-
77
- //#endregion
78
- export { InvoiceModel, IssueInvoiceInputModel };
1
+ import{ScalarTypeEnum as e,defineSchemaModel as t}from"@lssm/lib.schema";const n=t({name:`Invoice`,description:`Invoice issued for a job`,fields:{id:{type:e.String_unsecure(),isOptional:!1},jobId:{type:e.String_unsecure(),isOptional:!1},invoiceNumber:{type:e.String_unsecure(),isOptional:!1},amount:{type:e.Float_unsecure(),isOptional:!1},currency:{type:e.String_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},dueDate:{type:e.DateTime(),isOptional:!0},issuedAt:{type:e.DateTime(),isOptional:!0},paidAt:{type:e.DateTime(),isOptional:!0}}}),r=t({name:`IssueInvoiceInput`,description:`Input for issuing an invoice`,fields:{jobId:{type:e.String_unsecure(),isOptional:!1},dueDate:{type:e.DateTime(),isOptional:!0},notes:{type:e.String_unsecure(),isOptional:!0},lineItems:{type:e.JSON(),isOptional:!0}}});export{n as InvoiceModel,r as IssueInvoiceInputModel};
package/dist/job/index.js CHANGED
@@ -1,4 +1 @@
1
- import { CompleteJobInputModel, JobModel, ScheduleJobInputModel } from "./job.schema.js";
2
- import { CompleteJobContract, ListJobsInputModel, ListJobsOperation, ListJobsOutputModel, ScheduleJobContract } from "./job.contracts.js";
3
-
4
- export { CompleteJobContract, CompleteJobInputModel, JobModel, ListJobsInputModel, ListJobsOperation, ListJobsOutputModel, ScheduleJobContract, ScheduleJobInputModel };
1
+ import{CompleteJobInputModel as e,JobModel as t,ScheduleJobInputModel as n}from"./job.schema.js";import{CompleteJobContract as r,ListJobsInputModel as i,ListJobsOperation as a,ListJobsOutputModel as o,ScheduleJobContract as s}from"./job.contracts.js";export{r as CompleteJobContract,e as CompleteJobInputModel,t as JobModel,i as ListJobsInputModel,a as ListJobsOperation,o as ListJobsOutputModel,s as ScheduleJobContract,n as ScheduleJobInputModel};
@@ -1,119 +1 @@
1
- import { ScalarTypeEnum } from "../libs/schema/dist/ScalarTypeEnum.js";
2
- import { defineSchemaModel } from "../libs/schema/dist/SchemaModel.js";
3
- import "../libs/schema/dist/index.js";
4
- import { defineCommand, defineQuery } from "../libs/contracts/dist/spec.js";
5
- import "../libs/contracts/dist/index.js";
6
- import { CompleteJobInputModel, JobModel, ScheduleJobInputModel } from "./job.schema.js";
7
-
8
- //#region src/job/job.contracts.ts
9
- const OWNERS = ["@examples.service-business-os"];
10
- const ListJobsInputModel = defineSchemaModel({
11
- name: "ListJobsInput",
12
- description: "Input for listing jobs",
13
- fields: {
14
- status: {
15
- type: ScalarTypeEnum.String_unsecure(),
16
- isOptional: true
17
- },
18
- clientId: {
19
- type: ScalarTypeEnum.String_unsecure(),
20
- isOptional: true
21
- },
22
- limit: {
23
- type: ScalarTypeEnum.Int_unsecure(),
24
- isOptional: true
25
- },
26
- offset: {
27
- type: ScalarTypeEnum.Int_unsecure(),
28
- isOptional: true
29
- }
30
- }
31
- });
32
- const ListJobsOutputModel = defineSchemaModel({
33
- name: "ListJobsOutput",
34
- description: "Output for listing jobs",
35
- fields: {
36
- jobs: {
37
- type: JobModel,
38
- isOptional: false,
39
- isList: true
40
- },
41
- total: {
42
- type: ScalarTypeEnum.Int_unsecure(),
43
- isOptional: false
44
- }
45
- }
46
- });
47
- const ListJobsOperation = defineQuery({
48
- meta: {
49
- name: "service.job.list",
50
- version: 1,
51
- stability: "stable",
52
- owners: [...OWNERS],
53
- tags: [
54
- "service-business-os",
55
- "job",
56
- "list",
57
- "query"
58
- ],
59
- description: "List all jobs with filtering",
60
- goal: "Retrieve list of jobs",
61
- context: "Job management"
62
- },
63
- io: {
64
- input: ListJobsInputModel,
65
- output: ListJobsOutputModel
66
- },
67
- policy: { auth: "user" }
68
- });
69
- /**
70
- * Schedule a job.
71
- */
72
- const ScheduleJobContract = defineCommand({
73
- meta: {
74
- name: "service.job.schedule",
75
- version: 1,
76
- stability: "stable",
77
- owners: [...OWNERS],
78
- tags: [
79
- "service-business-os",
80
- "job",
81
- "schedule"
82
- ],
83
- description: "Schedule a job.",
84
- goal: "Schedule work.",
85
- context: "Job scheduling."
86
- },
87
- io: {
88
- input: ScheduleJobInputModel,
89
- output: JobModel
90
- },
91
- policy: { auth: "user" }
92
- });
93
- /**
94
- * Complete a job.
95
- */
96
- const CompleteJobContract = defineCommand({
97
- meta: {
98
- name: "service.job.complete",
99
- version: 1,
100
- stability: "stable",
101
- owners: [...OWNERS],
102
- tags: [
103
- "service-business-os",
104
- "job",
105
- "complete"
106
- ],
107
- description: "Mark a job as complete.",
108
- goal: "Record job completion.",
109
- context: "Job management."
110
- },
111
- io: {
112
- input: CompleteJobInputModel,
113
- output: JobModel
114
- },
115
- policy: { auth: "user" }
116
- });
117
-
118
- //#endregion
119
- export { CompleteJobContract, ListJobsInputModel, ListJobsOperation, ListJobsOutputModel, ScheduleJobContract };
1
+ import{CompleteJobInputModel as e,JobModel as t,ScheduleJobInputModel as n}from"./job.schema.js";import{ScalarTypeEnum as r,defineSchemaModel as i}from"@lssm/lib.schema";import{defineCommand as a,defineQuery as o}from"@lssm/lib.contracts";const s=[`@examples.service-business-os`],c=i({name:`ListJobsInput`,description:`Input for listing jobs`,fields:{status:{type:r.String_unsecure(),isOptional:!0},clientId:{type:r.String_unsecure(),isOptional:!0},limit:{type:r.Int_unsecure(),isOptional:!0},offset:{type:r.Int_unsecure(),isOptional:!0}}}),l=i({name:`ListJobsOutput`,description:`Output for listing jobs`,fields:{jobs:{type:t,isOptional:!1,isList:!0},total:{type:r.Int_unsecure(),isOptional:!1}}}),u=o({meta:{name:`service.job.list`,version:1,stability:`stable`,owners:[...s],tags:[`service-business-os`,`job`,`list`,`query`],description:`List all jobs with filtering`,goal:`Retrieve list of jobs`,context:`Job management`},io:{input:c,output:l},policy:{auth:`user`}}),d=a({meta:{name:`service.job.schedule`,version:1,stability:`stable`,owners:[...s],tags:[`service-business-os`,`job`,`schedule`],description:`Schedule a job.`,goal:`Schedule work.`,context:`Job scheduling.`},io:{input:n,output:t},policy:{auth:`user`}}),f=a({meta:{name:`service.job.complete`,version:1,stability:`stable`,owners:[...s],tags:[`service-business-os`,`job`,`complete`],description:`Mark a job as complete.`,goal:`Record job completion.`,context:`Job management.`},io:{input:e,output:t},policy:{auth:`user`}});export{f as CompleteJobContract,c as ListJobsInputModel,u as ListJobsOperation,l as ListJobsOutputModel,d as ScheduleJobContract};
@@ -1,99 +1 @@
1
- import { ScalarTypeEnum } from "../libs/schema/dist/ScalarTypeEnum.js";
2
- import { defineSchemaModel } from "../libs/schema/dist/SchemaModel.js";
3
- import "../libs/schema/dist/index.js";
4
-
5
- //#region src/job/job.schema.ts
6
- /**
7
- * Scheduled job.
8
- */
9
- const JobModel = defineSchemaModel({
10
- name: "Job",
11
- description: "Scheduled job",
12
- fields: {
13
- id: {
14
- type: ScalarTypeEnum.String_unsecure(),
15
- isOptional: false
16
- },
17
- quoteId: {
18
- type: ScalarTypeEnum.String_unsecure(),
19
- isOptional: false
20
- },
21
- clientId: {
22
- type: ScalarTypeEnum.String_unsecure(),
23
- isOptional: false
24
- },
25
- title: {
26
- type: ScalarTypeEnum.String_unsecure(),
27
- isOptional: false
28
- },
29
- status: {
30
- type: ScalarTypeEnum.String_unsecure(),
31
- isOptional: false
32
- },
33
- scheduledAt: {
34
- type: ScalarTypeEnum.DateTime(),
35
- isOptional: true
36
- },
37
- completedAt: {
38
- type: ScalarTypeEnum.DateTime(),
39
- isOptional: true
40
- },
41
- assignedTo: {
42
- type: ScalarTypeEnum.String_unsecure(),
43
- isOptional: true
44
- }
45
- }
46
- });
47
- /**
48
- * Input for scheduling a job.
49
- */
50
- const ScheduleJobInputModel = defineSchemaModel({
51
- name: "ScheduleJobInput",
52
- description: "Input for scheduling a job",
53
- fields: {
54
- quoteId: {
55
- type: ScalarTypeEnum.String_unsecure(),
56
- isOptional: false
57
- },
58
- scheduledAt: {
59
- type: ScalarTypeEnum.DateTime(),
60
- isOptional: false
61
- },
62
- assignedTo: {
63
- type: ScalarTypeEnum.String_unsecure(),
64
- isOptional: true
65
- },
66
- location: {
67
- type: ScalarTypeEnum.JSON(),
68
- isOptional: true
69
- },
70
- title: {
71
- type: ScalarTypeEnum.String_unsecure(),
72
- isOptional: true
73
- }
74
- }
75
- });
76
- /**
77
- * Input for completing a job.
78
- */
79
- const CompleteJobInputModel = defineSchemaModel({
80
- name: "CompleteJobInput",
81
- description: "Input for completing a job",
82
- fields: {
83
- jobId: {
84
- type: ScalarTypeEnum.String_unsecure(),
85
- isOptional: false
86
- },
87
- completedAt: {
88
- type: ScalarTypeEnum.DateTime(),
89
- isOptional: true
90
- },
91
- notes: {
92
- type: ScalarTypeEnum.String_unsecure(),
93
- isOptional: true
94
- }
95
- }
96
- });
97
-
98
- //#endregion
99
- export { CompleteJobInputModel, JobModel, ScheduleJobInputModel };
1
+ import{ScalarTypeEnum as e,defineSchemaModel as t}from"@lssm/lib.schema";const n=t({name:`Job`,description:`Scheduled job`,fields:{id:{type:e.String_unsecure(),isOptional:!1},quoteId:{type:e.String_unsecure(),isOptional:!1},clientId:{type:e.String_unsecure(),isOptional:!1},title:{type:e.String_unsecure(),isOptional:!1},status:{type:e.String_unsecure(),isOptional:!1},scheduledAt:{type:e.DateTime(),isOptional:!0},completedAt:{type:e.DateTime(),isOptional:!0},assignedTo:{type:e.String_unsecure(),isOptional:!0}}}),r=t({name:`ScheduleJobInput`,description:`Input for scheduling a job`,fields:{quoteId:{type:e.String_unsecure(),isOptional:!1},scheduledAt:{type:e.DateTime(),isOptional:!1},assignedTo:{type:e.String_unsecure(),isOptional:!0},location:{type:e.JSON(),isOptional:!0},title:{type:e.String_unsecure(),isOptional:!0}}}),i=t({name:`CompleteJobInput`,description:`Input for completing a job`,fields:{jobId:{type:e.String_unsecure(),isOptional:!1},completedAt:{type:e.DateTime(),isOptional:!0},notes:{type:e.String_unsecure(),isOptional:!0}}});export{i as CompleteJobInputModel,n as JobModel,r as ScheduleJobInputModel};
@@ -1,4 +1 @@
1
- import { PaymentModel, RecordPaymentInputModel } from "./payment.schema.js";
2
- import { RecordPaymentContract } from "./payment.contracts.js";
3
-
4
- export { PaymentModel, RecordPaymentContract, RecordPaymentInputModel };
1
+ import{PaymentModel as e,RecordPaymentInputModel as t}from"./payment.schema.js";import{RecordPaymentContract as n}from"./payment.contracts.js";export{e as PaymentModel,n as RecordPaymentContract,t as RecordPaymentInputModel};
@@ -1,33 +1 @@
1
- import { defineCommand } from "../libs/contracts/dist/spec.js";
2
- import "../libs/contracts/dist/index.js";
3
- import { PaymentModel, RecordPaymentInputModel } from "./payment.schema.js";
4
-
5
- //#region src/payment/payment.contracts.ts
6
- const OWNERS = ["@examples.service-business-os"];
7
- /**
8
- * Record a payment.
9
- */
10
- const RecordPaymentContract = defineCommand({
11
- meta: {
12
- name: "service.payment.record",
13
- version: 1,
14
- stability: "stable",
15
- owners: [...OWNERS],
16
- tags: [
17
- "service-business-os",
18
- "payment",
19
- "record"
20
- ],
21
- description: "Record a payment.",
22
- goal: "Track payments.",
23
- context: "Billing."
24
- },
25
- io: {
26
- input: RecordPaymentInputModel,
27
- output: PaymentModel
28
- },
29
- policy: { auth: "user" }
30
- });
31
-
32
- //#endregion
33
- export { RecordPaymentContract };
1
+ import{PaymentModel as e,RecordPaymentInputModel as t}from"./payment.schema.js";import{defineCommand as n}from"@lssm/lib.contracts";const r=n({meta:{name:`service.payment.record`,version:1,stability:`stable`,owners:[...[`@examples.service-business-os`]],tags:[`service-business-os`,`payment`,`record`],description:`Record a payment.`,goal:`Track payments.`,context:`Billing.`},io:{input:t,output:e},policy:{auth:`user`}});export{r as RecordPaymentContract};