@fayz-ai/admin 0.35.0 → 0.36.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 (42) hide show
  1. package/dist/ScheduleEditor-VJYYNGSV.js +7 -0
  2. package/dist/{ScheduleEditor-AWG3QNDS.js.map → ScheduleEditor-VJYYNGSV.js.map} +1 -1
  3. package/dist/{SubscriptionPage-WQBBD35Q.js → SubscriptionPage-2WK57426.js} +3 -3
  4. package/dist/{SubscriptionPage-WQBBD35Q.js.map → SubscriptionPage-2WK57426.js.map} +1 -1
  5. package/dist/{chunk-VUWBGUIH.js → chunk-HZGF5N3A.js} +86 -84
  6. package/dist/chunk-HZGF5N3A.js.map +1 -0
  7. package/dist/{chunk-WML2RLDF.js → chunk-QLRZUU4V.js} +3 -3
  8. package/dist/{chunk-WML2RLDF.js.map → chunk-QLRZUU4V.js.map} +1 -1
  9. package/dist/components/settings/LocationsCrudPage.d.ts.map +1 -1
  10. package/dist/crud/CrudDetailPage.d.ts.map +1 -1
  11. package/dist/crud/CrudFormPage.d.ts +16 -2
  12. package/dist/crud/CrudFormPage.d.ts.map +1 -1
  13. package/dist/crud/CrudListView.d.ts.map +1 -1
  14. package/dist/crud/CrudPage.d.ts.map +1 -1
  15. package/dist/crud/RelatedListTab.d.ts +24 -2
  16. package/dist/crud/RelatedListTab.d.ts.map +1 -1
  17. package/dist/crud/RelatedSection.d.ts +18 -0
  18. package/dist/crud/RelatedSection.d.ts.map +1 -1
  19. package/dist/crud/archetype-lookup.d.ts +34 -0
  20. package/dist/crud/archetype-lookup.d.ts.map +1 -1
  21. package/dist/crud/archetypes/OrderFormView.d.ts +17 -2
  22. package/dist/crud/archetypes/OrderFormView.d.ts.map +1 -1
  23. package/dist/crud/archetypes/ScheduleGridPanel.d.ts.map +1 -1
  24. package/dist/crud/relation-field.d.ts +2 -0
  25. package/dist/crud/relation-field.d.ts.map +1 -1
  26. package/dist/index.d.ts +5 -2
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +1747 -836
  29. package/dist/index.js.map +1 -1
  30. package/dist/lib/ai-task.d.ts +36 -0
  31. package/dist/lib/ai-task.d.ts.map +1 -0
  32. package/dist/lib/document-openers.d.ts +46 -0
  33. package/dist/lib/document-openers.d.ts.map +1 -0
  34. package/dist/units/UnitDetailTabs.d.ts +17 -0
  35. package/dist/units/UnitDetailTabs.d.ts.map +1 -0
  36. package/dist/units/UnitSuggestField.d.ts +7 -0
  37. package/dist/units/UnitSuggestField.d.ts.map +1 -0
  38. package/dist/units/index.d.ts +1 -0
  39. package/dist/units/index.d.ts.map +1 -1
  40. package/package.json +7 -7
  41. package/dist/ScheduleEditor-AWG3QNDS.js +0 -7
  42. package/dist/chunk-VUWBGUIH.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ export { ScheduleEditor } from './chunk-HZGF5N3A.js';
2
+ import './chunk-4YF6R7T3.js';
3
+ import './chunk-IDOTNT43.js';
4
+ import './chunk-UQ2NTFQC.js';
5
+ import './chunk-QOS6UAQ4.js';
6
+ //# sourceMappingURL=ScheduleEditor-VJYYNGSV.js.map
7
+ //# sourceMappingURL=ScheduleEditor-VJYYNGSV.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"ScheduleEditor-AWG3QNDS.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"ScheduleEditor-VJYYNGSV.js"}
@@ -1,9 +1,9 @@
1
- export { SubscriptionPage } from './chunk-WML2RLDF.js';
1
+ export { SubscriptionPage } from './chunk-QLRZUU4V.js';
2
2
  import './chunk-YUHCC7JY.js';
3
3
  import './chunk-IUCDHAAB.js';
4
4
  import './chunk-VX3WJLKK.js';
5
5
  import './chunk-IDOTNT43.js';
6
6
  import './chunk-UQ2NTFQC.js';
7
7
  import './chunk-QOS6UAQ4.js';
8
- //# sourceMappingURL=SubscriptionPage-WQBBD35Q.js.map
9
- //# sourceMappingURL=SubscriptionPage-WQBBD35Q.js.map
8
+ //# sourceMappingURL=SubscriptionPage-2WK57426.js.map
9
+ //# sourceMappingURL=SubscriptionPage-2WK57426.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"SubscriptionPage-WQBBD35Q.js"}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"SubscriptionPage-2WK57426.js"}
@@ -1229,95 +1229,97 @@ function ScheduleGridPanel({ assigneeId, kind, onSaved }) {
1229
1229
  }
1230
1230
  )
1231
1231
  ] }),
1232
- /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4", children: [
1233
- /* @__PURE__ */ jsxs("div", { children: [
1234
- /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.validFrom") }),
1235
- /* @__PURE__ */ jsx(DatePicker, { value: draft.validFrom ?? "", format: "numeric", onChange: (v) => patch({ validFrom: v || null }) })
1236
- ] }),
1237
- /* @__PURE__ */ jsxs("div", { children: [
1238
- /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.validTo") }),
1239
- /* @__PURE__ */ jsx(DatePicker, { value: draft.validTo ?? "", format: "numeric", onChange: (v) => patch({ validTo: v || null }) }),
1240
- /* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: t("schedule.grid.validToHint") })
1232
+ /* @__PURE__ */ jsxs("div", { className: "space-y-4 rounded-xl border bg-muted p-3 shadow-inner sm:p-4", children: [
1233
+ /* @__PURE__ */ jsxs("div", { className: "grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-4", children: [
1234
+ /* @__PURE__ */ jsxs("div", { children: [
1235
+ /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.validFrom") }),
1236
+ /* @__PURE__ */ jsx(DatePicker, { value: draft.validFrom ?? "", format: "numeric", onChange: (v) => patch({ validFrom: v || null }) })
1237
+ ] }),
1238
+ /* @__PURE__ */ jsxs("div", { children: [
1239
+ /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.validTo") }),
1240
+ /* @__PURE__ */ jsx(DatePicker, { value: draft.validTo ?? "", format: "numeric", onChange: (v) => patch({ validTo: v || null }) }),
1241
+ /* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: t("schedule.grid.validToHint") })
1242
+ ] }),
1243
+ /* @__PURE__ */ jsxs("div", { children: [
1244
+ /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.slotInterval") }),
1245
+ /* @__PURE__ */ jsxs(
1246
+ Select,
1247
+ {
1248
+ value: String(draft.slotIntervalMinutes ?? DEFAULT_SLOT),
1249
+ onValueChange: (v) => patch({ slotIntervalMinutes: Number(v) }),
1250
+ children: [
1251
+ /* @__PURE__ */ jsx(SelectTrigger, { children: /* @__PURE__ */ jsx(SelectValue, {}) }),
1252
+ /* @__PURE__ */ jsx(SelectContent, { children: SLOT_OPTIONS.map((m) => /* @__PURE__ */ jsx(SelectItem, { value: String(m), children: t("schedule.grid.minutes", { n: m }) }, m)) })
1253
+ ]
1254
+ }
1255
+ ),
1256
+ /* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: t("schedule.grid.slotHint") })
1257
+ ] }),
1258
+ /* @__PURE__ */ jsxs("div", { children: [
1259
+ /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.name") }),
1260
+ /* @__PURE__ */ jsx(
1261
+ Input,
1262
+ {
1263
+ value: draft.name ?? "",
1264
+ onChange: (e) => patch({ name: e.target.value || null }),
1265
+ placeholder: t("schedule.grid.namePlaceholder")
1266
+ }
1267
+ )
1268
+ ] })
1241
1269
  ] }),
1242
- /* @__PURE__ */ jsxs("div", { children: [
1243
- /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.slotInterval") }),
1270
+ /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7", children: WEEK_ORDER.map((dow) => {
1271
+ const periods = draft.days[dow] ?? [];
1272
+ return /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-card p-2 shadow-sm", children: [
1273
+ /* @__PURE__ */ jsx("p", { className: "mb-2 text-center text-xs font-semibold", children: t(`schedule.daysFull.${DAY_KEYS[dow]}`) }),
1274
+ /* @__PURE__ */ jsx("div", { className: "space-y-2", children: periods.map((p, i) => /* @__PURE__ */ jsx(
1275
+ PeriodBox,
1276
+ {
1277
+ period: p,
1278
+ resources,
1279
+ onChange: (pp) => patchDay(dow, periods.map((x, j) => j === i ? { ...x, ...pp } : x)),
1280
+ onRemove: () => patchDay(dow, periods.filter((_, j) => j !== i)),
1281
+ onCopyToAll: () => copyToAll(p)
1282
+ },
1283
+ p.id ?? `novo-${i}`
1284
+ )) }),
1285
+ /* @__PURE__ */ jsxs(
1286
+ "button",
1287
+ {
1288
+ type: "button",
1289
+ onClick: () => addPeriod(dow),
1290
+ className: "mt-2 flex w-full items-center justify-center gap-1 rounded-md border border-dashed py-1.5 text-xs text-muted-foreground transition-colors hover:border-primary hover:text-foreground",
1291
+ children: [
1292
+ /* @__PURE__ */ jsx(Plus, { className: "h-3 w-3" }),
1293
+ t("schedule.grid.add")
1294
+ ]
1295
+ }
1296
+ )
1297
+ ] }, dow);
1298
+ }) }),
1299
+ /* @__PURE__ */ jsxs("div", { className: "sticky bottom-0 z-10 -mx-3 -mb-3 flex flex-wrap items-center gap-2 rounded-b-xl border-t bg-muted px-3 py-3 sm:-mx-4 sm:-mb-4 sm:px-4", children: [
1300
+ /* @__PURE__ */ jsxs(Button, { variant: "outline", size: "sm", onClick: () => setConfirm("end"), disabled: isNew, className: "gap-1.5", children: [
1301
+ /* @__PURE__ */ jsx(CalendarOff, { className: "h-3.5 w-3.5" }),
1302
+ t("schedule.grid.endValidity")
1303
+ ] }),
1244
1304
  /* @__PURE__ */ jsxs(
1245
- Select,
1305
+ Button,
1246
1306
  {
1247
- value: String(draft.slotIntervalMinutes ?? DEFAULT_SLOT),
1248
- onValueChange: (v) => patch({ slotIntervalMinutes: Number(v) }),
1307
+ variant: "ghost",
1308
+ size: "sm",
1309
+ onClick: () => isNew ? removeGrid() : setConfirm("delete"),
1310
+ className: "gap-1.5 text-destructive hover:bg-destructive/10 hover:text-destructive",
1249
1311
  children: [
1250
- /* @__PURE__ */ jsx(SelectTrigger, { children: /* @__PURE__ */ jsx(SelectValue, {}) }),
1251
- /* @__PURE__ */ jsx(SelectContent, { children: SLOT_OPTIONS.map((m) => /* @__PURE__ */ jsx(SelectItem, { value: String(m), children: t("schedule.grid.minutes", { n: m }) }, m)) })
1312
+ /* @__PURE__ */ jsx(Trash2, { className: "h-3.5 w-3.5" }),
1313
+ t("schedule.grid.deleteGrid")
1252
1314
  ]
1253
1315
  }
1254
1316
  ),
1255
- /* @__PURE__ */ jsx("p", { className: "mt-1 text-[11px] text-muted-foreground", children: t("schedule.grid.slotHint") })
1256
- ] }),
1257
- /* @__PURE__ */ jsxs("div", { children: [
1258
- /* @__PURE__ */ jsx("label", { className: "mb-1 block text-xs font-medium text-muted-foreground", children: t("schedule.grid.name") }),
1259
- /* @__PURE__ */ jsx(
1260
- Input,
1261
- {
1262
- value: draft.name ?? "",
1263
- onChange: (e) => patch({ name: e.target.value || null }),
1264
- placeholder: t("schedule.grid.namePlaceholder")
1265
- }
1266
- )
1267
- ] })
1268
- ] }),
1269
- /* @__PURE__ */ jsx("div", { className: "grid grid-cols-1 gap-2 sm:grid-cols-2 lg:grid-cols-4 xl:grid-cols-7", children: WEEK_ORDER.map((dow) => {
1270
- const periods = draft.days[dow] ?? [];
1271
- return /* @__PURE__ */ jsxs("div", { className: "rounded-lg border bg-muted/20 p-2", children: [
1272
- /* @__PURE__ */ jsx("p", { className: "mb-2 text-center text-xs font-semibold", children: t(`schedule.daysFull.${DAY_KEYS[dow]}`) }),
1273
- /* @__PURE__ */ jsx("div", { className: "space-y-2", children: periods.map((p, i) => /* @__PURE__ */ jsx(
1274
- PeriodBox,
1275
- {
1276
- period: p,
1277
- resources,
1278
- onChange: (pp) => patchDay(dow, periods.map((x, j) => j === i ? { ...x, ...pp } : x)),
1279
- onRemove: () => patchDay(dow, periods.filter((_, j) => j !== i)),
1280
- onCopyToAll: () => copyToAll(p)
1281
- },
1282
- p.id ?? `novo-${i}`
1283
- )) }),
1284
- /* @__PURE__ */ jsxs(
1285
- "button",
1286
- {
1287
- type: "button",
1288
- onClick: () => addPeriod(dow),
1289
- className: "mt-2 flex w-full items-center justify-center gap-1 rounded-md border border-dashed py-1.5 text-xs text-muted-foreground transition-colors hover:border-primary hover:text-foreground",
1290
- children: [
1291
- /* @__PURE__ */ jsx(Plus, { className: "h-3 w-3" }),
1292
- t("schedule.grid.add")
1293
- ]
1294
- }
1295
- )
1296
- ] }, dow);
1297
- }) }),
1298
- /* @__PURE__ */ jsxs("div", { className: "sticky bottom-0 z-10 -mx-1 flex flex-wrap items-center gap-2 border-t bg-background px-1 py-3", children: [
1299
- /* @__PURE__ */ jsxs(Button, { variant: "outline", size: "sm", onClick: () => setConfirm("end"), disabled: isNew, className: "gap-1.5", children: [
1300
- /* @__PURE__ */ jsx(CalendarOff, { className: "h-3.5 w-3.5" }),
1301
- t("schedule.grid.endValidity")
1302
- ] }),
1303
- /* @__PURE__ */ jsxs(
1304
- Button,
1305
- {
1306
- variant: "ghost",
1307
- size: "sm",
1308
- onClick: () => isNew ? removeGrid() : setConfirm("delete"),
1309
- className: "gap-1.5 text-destructive hover:bg-destructive/10 hover:text-destructive",
1310
- children: [
1311
- /* @__PURE__ */ jsx(Trash2, { className: "h-3.5 w-3.5" }),
1312
- t("schedule.grid.deleteGrid")
1313
- ]
1314
- }
1315
- ),
1316
- /* @__PURE__ */ jsxs("div", { className: "ml-auto flex items-center gap-2", children: [
1317
- dirty && /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: t("schedule.grid.unsaved") }),
1318
- /* @__PURE__ */ jsxs(Button, { size: "sm", onClick: save, disabled: saving || !dirty, className: "gap-1.5", children: [
1319
- /* @__PURE__ */ jsx(Check, { className: "h-3.5 w-3.5" }),
1320
- saving ? t("common.saving") : t("schedule.grid.save")
1317
+ /* @__PURE__ */ jsxs("div", { className: "ml-auto flex items-center gap-2", children: [
1318
+ dirty && /* @__PURE__ */ jsx("span", { className: "text-xs text-muted-foreground", children: t("schedule.grid.unsaved") }),
1319
+ /* @__PURE__ */ jsxs(Button, { size: "sm", onClick: save, disabled: saving || !dirty, className: "gap-1.5", children: [
1320
+ /* @__PURE__ */ jsx(Check, { className: "h-3.5 w-3.5" }),
1321
+ saving ? t("common.saving") : t("schedule.grid.save")
1322
+ ] })
1321
1323
  ] })
1322
1324
  ] })
1323
1325
  ] }),
@@ -1736,5 +1738,5 @@ function ScheduleEditor({ assigneeId, onSaved, hideBookable }) {
1736
1738
  }
1737
1739
 
1738
1740
  export { ScheduleDateExceptions, ScheduleEditor, ScheduleGridPanel, createArchetypeLookup, deleteSchedule, getPersonBookable, getPersonLookup, getScheduleBlockConfig, getSchedules, mergeBlockSettings, parseBlockSettings, registerPersonLookup, replaceWeeklySchedules, saveSchedule, setPersonBookable, setScheduleBlockConfig, subscribeScheduleBlockConfig };
1739
- //# sourceMappingURL=chunk-VUWBGUIH.js.map
1740
- //# sourceMappingURL=chunk-VUWBGUIH.js.map
1741
+ //# sourceMappingURL=chunk-HZGF5N3A.js.map
1742
+ //# sourceMappingURL=chunk-HZGF5N3A.js.map