@rubydogjp/openkk-client-usecases 26.1.8

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 (53) hide show
  1. package/dist/assist/assist-state.d.ts +29 -0
  2. package/dist/assist/assist-state.d.ts.map +1 -0
  3. package/dist/assist/assist-state.js +461 -0
  4. package/dist/assist/assist-state.js.map +1 -0
  5. package/dist/entries/entries-state.d.ts +53 -0
  6. package/dist/entries/entries-state.d.ts.map +1 -0
  7. package/dist/entries/entries-state.js +359 -0
  8. package/dist/entries/entries-state.js.map +1 -0
  9. package/dist/entries/import-mapping.d.ts +32 -0
  10. package/dist/entries/import-mapping.d.ts.map +1 -0
  11. package/dist/entries/import-mapping.js +87 -0
  12. package/dist/entries/import-mapping.js.map +1 -0
  13. package/dist/index.d.ts +12 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +12 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/print/print-state.d.ts +2 -0
  18. package/dist/print/print-state.d.ts.map +1 -0
  19. package/dist/print/print-state.js +8 -0
  20. package/dist/print/print-state.js.map +1 -0
  21. package/dist/shared/backend-api-context.d.ts +8 -0
  22. package/dist/shared/backend-api-context.d.ts.map +1 -0
  23. package/dist/shared/backend-api-context.js +21 -0
  24. package/dist/shared/backend-api-context.js.map +1 -0
  25. package/dist/shared/brand-config-context.d.ts +8 -0
  26. package/dist/shared/brand-config-context.d.ts.map +1 -0
  27. package/dist/shared/brand-config-context.js +11 -0
  28. package/dist/shared/brand-config-context.js.map +1 -0
  29. package/dist/shared/callouts-context.d.ts +9 -0
  30. package/dist/shared/callouts-context.d.ts.map +1 -0
  31. package/dist/shared/callouts-context.js +12 -0
  32. package/dist/shared/callouts-context.js.map +1 -0
  33. package/dist/shared/closing-state.d.ts +7 -0
  34. package/dist/shared/closing-state.d.ts.map +1 -0
  35. package/dist/shared/closing-state.js +20 -0
  36. package/dist/shared/closing-state.js.map +1 -0
  37. package/dist/shared/maintenance-state.d.ts +11 -0
  38. package/dist/shared/maintenance-state.d.ts.map +1 -0
  39. package/dist/shared/maintenance-state.js +76 -0
  40. package/dist/shared/maintenance-state.js.map +1 -0
  41. package/dist/shared/openkk-app-state.d.ts +63 -0
  42. package/dist/shared/openkk-app-state.d.ts.map +1 -0
  43. package/dist/shared/openkk-app-state.js +314 -0
  44. package/dist/shared/openkk-app-state.js.map +1 -0
  45. package/dist/shared/openkk-config-context.d.ts +8 -0
  46. package/dist/shared/openkk-config-context.d.ts.map +1 -0
  47. package/dist/shared/openkk-config-context.js +21 -0
  48. package/dist/shared/openkk-config-context.js.map +1 -0
  49. package/dist/shared/print-adapter-context.d.ts +8 -0
  50. package/dist/shared/print-adapter-context.d.ts.map +1 -0
  51. package/dist/shared/print-adapter-context.js +21 -0
  52. package/dist/shared/print-adapter-context.js.map +1 -0
  53. package/package.json +46 -0
@@ -0,0 +1,9 @@
1
+ import { type ReactNode } from "react";
2
+ export type OpenkkCalloutSlot = "stepJournalizingPreClosingHint" | "stepNextFiscalPeriodFooter";
3
+ export type OpenkkCalloutSlots = Partial<Record<OpenkkCalloutSlot, ReactNode>>;
4
+ export declare function OpenkkCalloutsProvider(props: {
5
+ slots: OpenkkCalloutSlots;
6
+ children: ReactNode;
7
+ }): import("react/jsx-runtime").JSX.Element;
8
+ export declare function useOpenkkCallout(slot: OpenkkCalloutSlot): ReactNode;
9
+ //# sourceMappingURL=callouts-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callouts-context.d.ts","sourceRoot":"","sources":["../../src/shared/callouts-context.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,MAAM,MAAM,iBAAiB,GACzB,gCAAgC,GAChC,4BAA4B,CAAC;AAEjC,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC;AAI/E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,KAAK,EAAE,kBAAkB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAMA;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,iBAAiB,GAAG,SAAS,CAGnE"}
@@ -0,0 +1,12 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { createContext, useContext } from "react";
4
+ const OpenkkCalloutsContext = createContext({});
5
+ export function OpenkkCalloutsProvider(props) {
6
+ return (_jsx(OpenkkCalloutsContext.Provider, { value: props.slots, children: props.children }));
7
+ }
8
+ export function useOpenkkCallout(slot) {
9
+ const slots = useContext(OpenkkCalloutsContext);
10
+ return slots[slot] ?? null;
11
+ }
12
+ //# sourceMappingURL=callouts-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"callouts-context.js","sourceRoot":"","sources":["../../src/shared/callouts-context.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAC;AAQlE,MAAM,qBAAqB,GAAG,aAAa,CAAqB,EAAE,CAAC,CAAC;AAEpE,MAAM,UAAU,sBAAsB,CAAC,KAGtC;IACC,OAAO,CACL,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,YAC/C,KAAK,CAAC,QAAQ,GACgB,CAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAuB;IACtD,MAAM,KAAK,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAChD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,7 @@
1
+ export type OpenkkClosing = {
2
+ runPreClosing: (fiscalPeriodId: string, year: number) => Promise<void>;
3
+ runFinal: (fiscalPeriodId: string, year: number) => Promise<void>;
4
+ cancelPreClosing: (fiscalPeriodId: string, year: number) => Promise<void>;
5
+ };
6
+ export declare function useOpenkkClosing(): OpenkkClosing;
7
+ //# sourceMappingURL=closing-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closing-state.d.ts","sourceRoot":"","sources":["../../src/shared/closing-state.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,QAAQ,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,gBAAgB,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E,CAAC;AAEF,wBAAgB,gBAAgB,IAAI,aAAa,CAuBhD"}
@@ -0,0 +1,20 @@
1
+ "use client";
2
+ import { useMemo } from "react";
3
+ import { useBackendApi } from "./backend-api-context";
4
+ import { useOpenkkAppState } from "./openkk-app-state";
5
+ export function useOpenkkClosing() {
6
+ const backendApi = useBackendApi();
7
+ const { syncFiscalPeriod } = useOpenkkAppState();
8
+ return useMemo(() => ({
9
+ async runPreClosing(fiscalPeriodId, year) {
10
+ syncFiscalPeriod(await backendApi.preClosing.run({ fiscalPeriodId, year }));
11
+ },
12
+ async runFinal(fiscalPeriodId, year) {
13
+ syncFiscalPeriod(await backendApi.closing.run({ fiscalPeriodId, year }));
14
+ },
15
+ async cancelPreClosing(fiscalPeriodId, year) {
16
+ syncFiscalPeriod(await backendApi.preClosing.cancel(fiscalPeriodId, year));
17
+ },
18
+ }), [backendApi, syncFiscalPeriod]);
19
+ }
20
+ //# sourceMappingURL=closing-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closing-state.js","sourceRoot":"","sources":["../../src/shared/closing-state.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAQvD,MAAM,UAAU,gBAAgB;IAC9B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,EAAE,gBAAgB,EAAE,GAAG,iBAAiB,EAAE,CAAC;IACjD,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC;QACL,KAAK,CAAC,aAAa,CAAC,cAAc,EAAE,IAAI;YACtC,gBAAgB,CACd,MAAM,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAC1D,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI;YACjC,gBAAgB,CACd,MAAM,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CACvD,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,gBAAgB,CAAC,cAAc,EAAE,IAAI;YACzC,gBAAgB,CACd,MAAM,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CACzD,CAAC;QACJ,CAAC;KACF,CAAC,EACF,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAC/B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { type ReactNode } from "react";
2
+ import { type MaintenanceStatus } from "@rubydogjp/openkk-client-ports";
3
+ type MaintenanceState = {
4
+ status: MaintenanceStatus | null;
5
+ };
6
+ export declare function OpenkkMaintenanceProvider(props: {
7
+ children: ReactNode;
8
+ }): import("react/jsx-runtime").JSX.Element;
9
+ export declare function useMaintenance(): MaintenanceState;
10
+ export {};
11
+ //# sourceMappingURL=maintenance-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maintenance-state.d.ts","sourceRoot":"","sources":["../../src/shared/maintenance-state.tsx"],"names":[],"mappings":"AAEA,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,gCAAgC,CAAC;AAcxC,KAAK,gBAAgB,GAAG;IACtB,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAC;CAClC,CAAC;AAIF,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CA2CvE;AAED,wBAAgB,cAAc,IAAI,gBAAgB,CAGjD"}
@@ -0,0 +1,76 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { createContext, useCallback, useContext, useEffect, useMemo, useState, } from "react";
4
+ import { isMaintenanceModeError, } from "@rubydogjp/openkk-client-ports";
5
+ import { BackendApiProvider, useBackendApi } from "./backend-api-context";
6
+ const MAINTENANCE_RECHECK_INTERVAL_MS = 30_000;
7
+ const FALLBACK_MAINTENANCE_STATUS = {
8
+ enabled: true,
9
+ title: "メンテナンス中",
10
+ message: "ただいまメンテナンスを実施しています。しばらく経ってから再度お試しください。",
11
+ updatedAt: null,
12
+ };
13
+ const MaintenanceContext = createContext(null);
14
+ export function OpenkkMaintenanceProvider(props) {
15
+ const api = useBackendApi();
16
+ const [status, setStatus] = useState(null);
17
+ const isActive = status?.enabled === true;
18
+ const refreshStatus = useCallback(async () => {
19
+ try {
20
+ const fetched = await api.maintenance.get();
21
+ setStatus(fetched.enabled ? fetched : null);
22
+ }
23
+ catch (error) {
24
+ if (isMaintenanceModeError(error)) {
25
+ setStatus((prev) => prev ?? FALLBACK_MAINTENANCE_STATUS);
26
+ }
27
+ }
28
+ }, [api]);
29
+ const enterMaintenance = useCallback(() => {
30
+ setStatus((prev) => prev ?? FALLBACK_MAINTENANCE_STATUS);
31
+ void refreshStatus();
32
+ }, [refreshStatus]);
33
+ const wrappedApi = useMemo(() => wrapWithMaintenanceDetection(api, enterMaintenance), [api, enterMaintenance]);
34
+ useEffect(() => {
35
+ if (!isActive)
36
+ return;
37
+ const timer = setInterval(() => {
38
+ void refreshStatus();
39
+ }, MAINTENANCE_RECHECK_INTERVAL_MS);
40
+ return () => clearInterval(timer);
41
+ }, [isActive, refreshStatus]);
42
+ const value = useMemo(() => ({ status }), [status]);
43
+ return (_jsx(MaintenanceContext.Provider, { value: value, children: _jsx(BackendApiProvider, { api: wrappedApi, children: props.children }) }));
44
+ }
45
+ export function useMaintenance() {
46
+ const value = useContext(MaintenanceContext);
47
+ return value ?? { status: null };
48
+ }
49
+ function wrapWithMaintenanceDetection(api, onMaintenance) {
50
+ return wrapNode(api, onMaintenance);
51
+ }
52
+ function wrapNode(target, onMaintenance) {
53
+ return new Proxy(target, {
54
+ get(node, key, receiver) {
55
+ const value = Reflect.get(node, key, receiver);
56
+ if (typeof value === "function") {
57
+ return (...args) => {
58
+ const result = value.apply(node, args);
59
+ if (result instanceof Promise) {
60
+ return result.catch((error) => {
61
+ if (isMaintenanceModeError(error))
62
+ onMaintenance();
63
+ throw error;
64
+ });
65
+ }
66
+ return result;
67
+ };
68
+ }
69
+ if (value != null && typeof value === "object") {
70
+ return wrapNode(value, onMaintenance);
71
+ }
72
+ return value;
73
+ },
74
+ });
75
+ }
76
+ //# sourceMappingURL=maintenance-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maintenance-state.js","sourceRoot":"","sources":["../../src/shared/maintenance-state.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { type ReactNode } from "react";
2
+ import type { FiscalPeriodApiRecord } from "@rubydogjp/openkk-client-ports";
3
+ import { type EntryRecord, type FiscalPeriodArchivePayload } from "@rubydogjp/openkk-client-domain";
4
+ import type { FiscalPeriod, OpenkkUser, Session } from "@rubydogjp/openkk-client-domain";
5
+ type OpenkkAppState = {
6
+ session: Session | null;
7
+ fiscalPeriods: FiscalPeriod[];
8
+ currentFiscalPeriodId: string | null;
9
+ isReady: boolean;
10
+ fiscalPeriodLoadError: unknown;
11
+ reloadFiscalPeriods: () => void;
12
+ createFiscalPeriod: (input: {
13
+ name: string;
14
+ startDate: string;
15
+ endDate: string;
16
+ }, options?: {
17
+ select?: boolean;
18
+ }) => Promise<string | null>;
19
+ importArchivedFiscalPeriod: (payload: FiscalPeriodArchivePayload) => Promise<string | null>;
20
+ updateFiscalPeriod: (fiscalPeriodId: string, input: Partial<{
21
+ name: string;
22
+ startDate: string;
23
+ endDate: string;
24
+ settingsCompleted: boolean;
25
+ openingBalancesCompleted: boolean;
26
+ documentsReceivedCompleted: boolean;
27
+ opening: Omit<NonNullable<FiscalPeriod["opening"]>, "createdAt" | "updatedAt">;
28
+ }>) => Promise<boolean>;
29
+ archiveFiscalPeriod: (fiscalPeriodId: string) => Promise<boolean>;
30
+ purgeArchivedFiscalPeriod: (fiscalPeriodId: string) => Promise<boolean>;
31
+ syncFiscalPeriod: (period: FiscalPeriodApiRecord) => void;
32
+ signInAsEmbeddedUser: () => void;
33
+ signOut: () => void;
34
+ startSignIn: (redirectUrl: string) => Promise<{
35
+ authUrl: string;
36
+ }>;
37
+ completeSignIn: (input: {
38
+ state: string;
39
+ code: string;
40
+ }) => Promise<OpenkkUser>;
41
+ selectFiscalPeriod: (fiscalPeriodId: string) => void;
42
+ clearFiscalPeriod: () => void;
43
+ };
44
+ export type FiscalPeriodSeed = {
45
+ openingBalanceLines: {
46
+ id: string;
47
+ accountId: string;
48
+ amount: number;
49
+ }[];
50
+ entries: EntryRecord[];
51
+ };
52
+ export type FiscalPeriodSeedProvider = (ctx: {
53
+ fiscalPeriod: FiscalPeriodApiRecord;
54
+ isFirst: boolean;
55
+ }) => FiscalPeriodSeed | null;
56
+ export declare function OpenkkAppStateProvider(props: {
57
+ children: ReactNode;
58
+ seedFiscalPeriod?: FiscalPeriodSeedProvider;
59
+ }): import("react/jsx-runtime").JSX.Element;
60
+ export declare function useOpenkkAppState(): OpenkkAppState;
61
+ export declare function applyFiscalPeriodUpdate(current: FiscalPeriod[], patched: FiscalPeriodApiRecord): FiscalPeriod[];
62
+ export {};
63
+ //# sourceMappingURL=openkk-app-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openkk-app-state.d.ts","sourceRoot":"","sources":["../../src/shared/openkk-app-state.tsx"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EASL,KAAK,WAAW,EAChB,KAAK,0BAA0B,EAChC,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAEV,YAAY,EACZ,UAAU,EACV,OAAO,EACR,MAAM,iCAAiC,CAAC;AAKzC,KAAK,cAAc,GAAG;IACpB,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACxB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,kBAAkB,EAAE,CAClB,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,EACD,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAA;KAAE,KAC3B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B,0BAA0B,EAAE,CAC1B,OAAO,EAAE,0BAA0B,KAChC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5B,kBAAkB,EAAE,CAClB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE,OAAO,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,iBAAiB,EAAE,OAAO,CAAC;QAC3B,wBAAwB,EAAE,OAAO,CAAC;QAClC,0BAA0B,EAAE,OAAO,CAAC;QACpC,OAAO,EAAE,IAAI,CACX,WAAW,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,EACpC,WAAW,GAAG,WAAW,CAC1B,CAAC;KACH,CAAC,KACC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,mBAAmB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAClE,yBAAyB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACxE,gBAAgB,EAAE,CAAC,MAAM,EAAE,qBAAqB,KAAK,IAAI,CAAC;IAC1D,oBAAoB,EAAE,MAAM,IAAI,CAAC;IACjC,OAAO,EAAE,MAAM,IAAI,CAAC;IAEpB,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAEnE,cAAc,EAAE,CAAC,KAAK,EAAE;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACd,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1B,kBAAkB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,iBAAiB,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAIF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,mBAAmB,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACzE,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,CAAC,GAAG,EAAE;IAC3C,YAAY,EAAE,qBAAqB,CAAC;IACpC,OAAO,EAAE,OAAO,CAAC;CAClB,KAAK,gBAAgB,GAAG,IAAI,CAAC;AAE9B,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,EAAE,SAAS,CAAC;IACpB,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;CAC7C,2CAgPA;AAED,wBAAgB,iBAAiB,mBAYhC;AA6ED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,YAAY,EAAE,EACvB,OAAO,EAAE,qBAAqB,GAC7B,YAAY,EAAE,CAIhB"}
@@ -0,0 +1,314 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { createContext, useContext, useEffect, useMemo, useState, } from "react";
4
+ import { AppError, buildBootstrapFiscalPeriodId, buildBootstrapUser, buildSignedOutFiscalPeriodId, summarizeOpeningBalances, DEFAULT_BOOK_ACCOUNTS, DEFAULT_BUSINESS_CATEGORIES, DEFAULT_TAX_CATEGORIES, } from "@rubydogjp/openkk-client-domain";
5
+ import { useBackendApi } from "./backend-api-context";
6
+ import { useOpenkkConfig } from "./openkk-config-context";
7
+ import { entryRecordToImportPayload } from "../entries/import-mapping";
8
+ const OpenkkAppStateContext = createContext(null);
9
+ export function OpenkkAppStateProvider(props) {
10
+ const config = useOpenkkConfig();
11
+ const backendApi = useBackendApi();
12
+ const seedFiscalPeriod = props.seedFiscalPeriod;
13
+ const [isReady, setIsReady] = useState(false);
14
+ const [fiscalPeriods, setFiscalPeriods] = useState([]);
15
+ const [fiscalPeriodLoadError, setFiscalPeriodLoadError] = useState(null);
16
+ const [fiscalPeriodReloadNonce, setFiscalPeriodReloadNonce] = useState(0);
17
+ const [user, setUser] = useState(() => buildBootstrapUser(config));
18
+ const [currentFiscalPeriodId, setCurrentFiscalPeriodId] = useState(() => buildBootstrapFiscalPeriodId(config));
19
+ useEffect(() => {
20
+ if (typeof window === "undefined") {
21
+ setIsReady(true);
22
+ return;
23
+ }
24
+ // EmbeddedUser は毎起動で自動サインイン(保存は参照しない)。CustomUser は
25
+ // 前回サインイン時に保存したユーザーを復元する。
26
+ if (config.authMode === "custom") {
27
+ const restored = readStoredUser(window.localStorage.getItem(config.sessionStorageKey));
28
+ if (restored != null)
29
+ setUser(restored);
30
+ }
31
+ const storedFp = window.localStorage.getItem(config.fiscalPeriodStorageKey);
32
+ if (storedFp != null)
33
+ setCurrentFiscalPeriodId(storedFp);
34
+ setIsReady(true);
35
+ }, []);
36
+ const userId = user?.id ?? null;
37
+ useEffect(() => {
38
+ if (userId == null) {
39
+ setFiscalPeriods([]);
40
+ return;
41
+ }
42
+ let cancelled = false;
43
+ void (async () => {
44
+ try {
45
+ const periods = await backendApi.fiscalPeriod.getAll();
46
+ if (cancelled)
47
+ return;
48
+ const mapped = periods.map(mapRemoteFiscalPeriod);
49
+ setFiscalPeriods(mapped);
50
+ setFiscalPeriodLoadError(null);
51
+ setCurrentFiscalPeriodId((current) => {
52
+ if (current == null || current === "")
53
+ return current;
54
+ return mapped.some((period) => period.id === current)
55
+ ? current
56
+ : buildSignedOutFiscalPeriodId(config);
57
+ });
58
+ }
59
+ catch (error) {
60
+ if (cancelled)
61
+ return;
62
+ console.error("[openkk] fiscal period load failed:", error);
63
+ setFiscalPeriodLoadError(error);
64
+ }
65
+ })();
66
+ return () => {
67
+ cancelled = true;
68
+ };
69
+ }, [backendApi, config, userId, fiscalPeriodReloadNonce]);
70
+ useEffect(() => {
71
+ if (typeof window === "undefined") {
72
+ return;
73
+ }
74
+ // CustomUser のみ復元用に保存する。EmbeddedUser は毎起動で自動サインインするため保存不要。
75
+ if (user != null && user.kind === "custom") {
76
+ window.localStorage.setItem(config.sessionStorageKey, JSON.stringify(user));
77
+ }
78
+ else {
79
+ window.localStorage.removeItem(config.sessionStorageKey);
80
+ }
81
+ }, [user, config]);
82
+ useEffect(() => {
83
+ if (typeof window === "undefined") {
84
+ return;
85
+ }
86
+ if (currentFiscalPeriodId == null || currentFiscalPeriodId === "") {
87
+ window.localStorage.removeItem(config.fiscalPeriodStorageKey);
88
+ }
89
+ else {
90
+ window.localStorage.setItem(config.fiscalPeriodStorageKey, currentFiscalPeriodId);
91
+ }
92
+ }, [currentFiscalPeriodId]);
93
+ const value = useMemo(() => {
94
+ return {
95
+ session: user == null ? null : { user },
96
+ fiscalPeriods,
97
+ currentFiscalPeriodId,
98
+ isReady,
99
+ fiscalPeriodLoadError,
100
+ reloadFiscalPeriods() {
101
+ setFiscalPeriodReloadNonce((nonce) => nonce + 1);
102
+ },
103
+ async createFiscalPeriod(input, options) {
104
+ const created = await backendApi.fiscalPeriod.create(input);
105
+ const seed = seedFiscalPeriod?.({
106
+ fiscalPeriod: created,
107
+ isFirst: fiscalPeriods.length === 0,
108
+ }) ?? null;
109
+ let final = created;
110
+ if (seed != null) {
111
+ final = await backendApi.fiscalPeriod.patch(created.id, {
112
+ opening: {
113
+ id: `op-${created.id}`,
114
+ userId: user?.id ?? config.mockUserId,
115
+ fiscalPeriodId: created.id,
116
+ openingBalanceLines: seed.openingBalanceLines,
117
+ openingJournals: [],
118
+ },
119
+ });
120
+ if (seed.entries.length > 0) {
121
+ await backendApi.entries.importMany(created.id, seed.entries.map((record) => entryRecordToImportInput(record)));
122
+ }
123
+ }
124
+ setFiscalPeriods((current) => [
125
+ ...current,
126
+ mapRemoteFiscalPeriod(final),
127
+ ]);
128
+ if (options?.select !== false) {
129
+ setCurrentFiscalPeriodId(final.id);
130
+ }
131
+ return final.id;
132
+ },
133
+ async importArchivedFiscalPeriod(payload) {
134
+ const imported = await backendApi.fiscalPeriod.importArchived(payload);
135
+ setFiscalPeriods((current) => [
136
+ ...current,
137
+ mapRemoteFiscalPeriod(imported),
138
+ ]);
139
+ return imported.id;
140
+ },
141
+ async updateFiscalPeriod(fiscalPeriodId, input) {
142
+ const patched = await backendApi.fiscalPeriod.patch(fiscalPeriodId, {
143
+ name: input.name,
144
+ startDate: input.startDate,
145
+ endDate: input.endDate,
146
+ settingsCompleted: input.settingsCompleted,
147
+ openingBalancesCompleted: input.openingBalancesCompleted,
148
+ documentsReceivedCompleted: input.documentsReceivedCompleted,
149
+ opening: input.opening,
150
+ });
151
+ setFiscalPeriods((current) => applyFiscalPeriodUpdate(current, patched));
152
+ return true;
153
+ },
154
+ async archiveFiscalPeriod(fiscalPeriodId) {
155
+ const archived = await backendApi.fiscalPeriod.archive(fiscalPeriodId);
156
+ setFiscalPeriods((current) => applyFiscalPeriodUpdate(current, archived));
157
+ return true;
158
+ },
159
+ async purgeArchivedFiscalPeriod(fiscalPeriodId) {
160
+ const purged = await backendApi.fiscalPeriod.purgeArchivedData(fiscalPeriodId);
161
+ setFiscalPeriods((current) => applyFiscalPeriodUpdate(current, purged));
162
+ return true;
163
+ },
164
+ syncFiscalPeriod(period) {
165
+ setFiscalPeriods((current) => applyFiscalPeriodUpdate(current, period));
166
+ },
167
+ signInAsEmbeddedUser() {
168
+ setFiscalPeriods([]);
169
+ setUser(config.embeddedUser);
170
+ },
171
+ signOut() {
172
+ void backendApi.auth.signOut().catch(() => undefined);
173
+ setFiscalPeriods([]);
174
+ // EmbeddedUser はサインアウト不可。再度自動サインイン状態へ戻す。
175
+ setUser(buildBootstrapUser(config));
176
+ setCurrentFiscalPeriodId(buildSignedOutFiscalPeriodId(config));
177
+ },
178
+ async startSignIn(redirectUrl) {
179
+ return await backendApi.auth.startSession(redirectUrl);
180
+ },
181
+ async completeSignIn({ state, code }) {
182
+ const completed = await backendApi.auth.completeSession({
183
+ state,
184
+ code,
185
+ });
186
+ const token = await backendApi.auth.redeemCompletionCode(completed.completionCode);
187
+ const signedInUser = {
188
+ kind: "custom",
189
+ id: token.userId,
190
+ displayName: token.displayName ?? token.userId,
191
+ email: token.email ?? "",
192
+ iconUrl: token.iconUrl ?? null,
193
+ authProvider: token.authProvider ?? "custom",
194
+ };
195
+ setFiscalPeriods([]);
196
+ setUser(signedInUser);
197
+ return signedInUser;
198
+ },
199
+ selectFiscalPeriod(fiscalPeriodId) {
200
+ setCurrentFiscalPeriodId(fiscalPeriodId);
201
+ },
202
+ clearFiscalPeriod() {
203
+ setCurrentFiscalPeriodId(buildSignedOutFiscalPeriodId(config));
204
+ },
205
+ };
206
+ }, [
207
+ currentFiscalPeriodId,
208
+ fiscalPeriods,
209
+ isReady,
210
+ fiscalPeriodLoadError,
211
+ user,
212
+ config,
213
+ backendApi,
214
+ seedFiscalPeriod,
215
+ ]);
216
+ return (_jsx(OpenkkAppStateContext.Provider, { value: value, children: props.children }));
217
+ }
218
+ export function useOpenkkAppState() {
219
+ const value = useContext(OpenkkAppStateContext);
220
+ if (value == null) {
221
+ throw new AppError({
222
+ messageForDeveloper: "useOpenkkAppState must be used within OpenkkAppStateProvider",
223
+ messageForUser: "アプリの状態を読み込めませんでした",
224
+ originalMessage: null,
225
+ statusCode: null,
226
+ });
227
+ }
228
+ return value;
229
+ }
230
+ function readStoredUser(raw) {
231
+ if (raw == null || raw === "")
232
+ return null;
233
+ try {
234
+ const parsed = JSON.parse(raw);
235
+ if (parsed.kind !== "custom" || typeof parsed.id !== "string")
236
+ return null;
237
+ return {
238
+ kind: "custom",
239
+ id: parsed.id,
240
+ displayName: parsed.displayName ?? parsed.id,
241
+ email: parsed.email ?? "",
242
+ iconUrl: parsed.iconUrl ?? null,
243
+ authProvider: parsed.authProvider ?? "custom",
244
+ };
245
+ }
246
+ catch {
247
+ return null;
248
+ }
249
+ }
250
+ function mapRemoteFiscalPeriod(period) {
251
+ const openingBalanceLines = period.opening?.openingBalanceLines ?? [];
252
+ const openingSummary = summarizeOpeningBalances(openingBalanceLines);
253
+ return {
254
+ id: period.id,
255
+ userId: period.userId,
256
+ name: period.name,
257
+ startDate: period.startDate,
258
+ endDate: period.endDate,
259
+ phase: period.phase,
260
+ archiveStatus: period.archiveStatus,
261
+ archiveDataAvailable: period.archiveDataAvailable ?? true,
262
+ archivedAt: period.archivedAt ?? null,
263
+ settingsCompleted: period.settingsCompleted,
264
+ openingBalancesCompleted: period.openingBalancesCompleted,
265
+ documentsReceivedCompleted: period.documentsReceivedCompleted,
266
+ openingDebitTotal: openingSummary.assets,
267
+ openingCreditTotal: openingSummary.liabilities + openingSummary.equity,
268
+ createdAt: period.createdAt,
269
+ updatedAt: period.updatedAt,
270
+ opening: period.opening == null
271
+ ? undefined
272
+ : {
273
+ id: period.opening.id,
274
+ userId: period.opening.userId,
275
+ fiscalPeriodId: period.opening.fiscalPeriodId,
276
+ createdAt: period.opening.createdAt,
277
+ updatedAt: period.opening.updatedAt,
278
+ openingBalanceLines: (period.opening.openingBalanceLines ?? []).map((line) => ({
279
+ id: line.id,
280
+ accountId: line.accountId,
281
+ amount: line.amount,
282
+ })),
283
+ openingJournals: (period.opening.openingJournals ?? []).map((journal) => ({
284
+ id: journal.id,
285
+ date: journal.date,
286
+ description: journal.description,
287
+ businessRate: journal.businessRate,
288
+ lines: (journal.lines ?? []).map((line) => ({
289
+ id: line.id,
290
+ side: line.side,
291
+ bookAccountId: line.bookAccountId,
292
+ amount: line.amount,
293
+ partnerName: line.partnerName,
294
+ taxCategoryId: line.taxCategoryId,
295
+ businessCategoryId: line.businessCategoryId,
296
+ })),
297
+ })),
298
+ },
299
+ };
300
+ }
301
+ export function applyFiscalPeriodUpdate(current, patched) {
302
+ return current.map((period) => {
303
+ return period.id === patched.id ? mapRemoteFiscalPeriod(patched) : period;
304
+ });
305
+ }
306
+ const DEFAULT_IMPORT_MASTER = {
307
+ accounts: DEFAULT_BOOK_ACCOUNTS,
308
+ taxes: DEFAULT_TAX_CATEGORIES,
309
+ businesses: DEFAULT_BUSINESS_CATEGORIES,
310
+ };
311
+ function entryRecordToImportInput(record) {
312
+ return entryRecordToImportPayload(record, DEFAULT_IMPORT_MASTER);
313
+ }
314
+ //# sourceMappingURL=openkk-app-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openkk-app-state.js","sourceRoot":"","sources":["../../src/shared/openkk-app-state.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EACL,aAAa,EACb,UAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,GAET,MAAM,OAAO,CAAC;AAGf,OAAO,EACL,QAAQ,EACR,4BAA4B,EAC5B,kBAAkB,EAClB,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,GAGvB,MAAM,iCAAiC,CAAC;AAOzC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAmDvE,MAAM,qBAAqB,GAAG,aAAa,CAAwB,IAAI,CAAC,CAAC;AAYzE,MAAM,UAAU,sBAAsB,CAAC,KAGtC;IACC,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB,CAAC;IAEhD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAEvD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAiB,EAAE,CAAC,CAAC;IACvE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GACrD,QAAQ,CAAU,IAAI,CAAC,CAAC;IAC1B,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAE1E,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAoB,GAAG,EAAE,CACvD,kBAAkB,CAAC,MAAM,CAAC,CAC3B,CAAC;IACF,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAEhE,GAAG,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QAED,mDAAmD;QACnD,0BAA0B;QAC1B,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACjC,MAAM,QAAQ,GAAG,cAAc,CAC7B,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CACtD,CAAC;YACF,IAAI,QAAQ,IAAI,IAAI;gBAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAC5E,IAAI,QAAQ,IAAI,IAAI;YAAE,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACzD,UAAU,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,MAAM,GAAG,IAAI,EAAE,EAAE,IAAI,IAAI,CAAC;IAChC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QACD,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACvD,IAAI,SAAS;oBAAE,OAAO;gBACtB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAClD,gBAAgB,CAAC,MAAM,CAAC,CAAC;gBACzB,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAC/B,wBAAwB,CAAC,CAAC,OAAO,EAAE,EAAE;oBACnC,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,KAAK,EAAE;wBAAE,OAAO,OAAO,CAAC;oBACtD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC;wBACnD,CAAC,CAAC,OAAO;wBACT,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,SAAS;oBAAE,OAAO;gBACtB,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;gBAC5D,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC;IAE1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,2DAA2D;QAC3D,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,OAAO,CACzB,MAAM,CAAC,iBAAiB,EACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CACrB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAEnB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QAED,IAAI,qBAAqB,IAAI,IAAI,IAAI,qBAAqB,KAAK,EAAE,EAAE,CAAC;YAClE,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,YAAY,CAAC,OAAO,CACzB,MAAM,CAAC,sBAAsB,EAC7B,qBAAqB,CACtB,CAAC;QACJ,CAAC;IACH,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAE5B,MAAM,KAAK,GAAG,OAAO,CAAiB,GAAG,EAAE;QACzC,OAAO;YACL,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;YACvC,aAAa;YACb,qBAAqB;YACrB,OAAO;YACP,qBAAqB;YACrB,mBAAmB;gBACjB,0BAA0B,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACnD,CAAC;YACD,KAAK,CAAC,kBAAkB,CAAC,KAAK,EAAE,OAAO;gBACrC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE5D,MAAM,IAAI,GACR,gBAAgB,EAAE,CAAC;oBACjB,YAAY,EAAE,OAAO;oBACrB,OAAO,EAAE,aAAa,CAAC,MAAM,KAAK,CAAC;iBACpC,CAAC,IAAI,IAAI,CAAC;gBACb,IAAI,KAAK,GAAG,OAAO,CAAC;gBACpB,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;oBACjB,KAAK,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,EAAE;wBACtD,OAAO,EAAE;4BACP,EAAE,EAAE,MAAM,OAAO,CAAC,EAAE,EAAE;4BACtB,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,MAAM,CAAC,UAAU;4BACrC,cAAc,EAAE,OAAO,CAAC,EAAE;4BAC1B,mBAAmB,EAAE,IAAI,CAAC,mBAAmB;4BAC7C,eAAe,EAAE,EAAE;yBACpB;qBACF,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC5B,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CACjC,OAAO,CAAC,EAAE,EACV,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC,CAC/D,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC5B,GAAG,OAAO;oBACV,qBAAqB,CAAC,KAAK,CAAC;iBAC7B,CAAC,CAAC;gBACH,IAAI,OAAO,EAAE,MAAM,KAAK,KAAK,EAAE,CAAC;oBAC9B,wBAAwB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACrC,CAAC;gBACD,OAAO,KAAK,CAAC,EAAE,CAAC;YAClB,CAAC;YACD,KAAK,CAAC,0BAA0B,CAAC,OAAO;gBACtC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACvE,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;oBAC5B,GAAG,OAAO;oBACV,qBAAqB,CAAC,QAAQ,CAAC;iBAChC,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC,EAAE,CAAC;YACrB,CAAC;YACD,KAAK,CAAC,kBAAkB,CAAC,cAAc,EAAE,KAAK;gBAC5C,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,cAAc,EAAE;oBAClE,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,SAAS,EAAE,KAAK,CAAC,SAAS;oBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;oBAC1C,wBAAwB,EAAE,KAAK,CAAC,wBAAwB;oBACxD,0BAA0B,EAAE,KAAK,CAAC,0BAA0B;oBAC5D,OAAO,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;gBACH,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3B,uBAAuB,CAAC,OAAO,EAAE,OAAO,CAAC,CAC1C,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,mBAAmB,CAAC,cAAc;gBACtC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBACvE,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3B,uBAAuB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAC3C,CAAC;gBACF,OAAO,IAAI,CAAC;YACd,CAAC;YACD,KAAK,CAAC,yBAAyB,CAAC,cAAc;gBAC5C,MAAM,MAAM,GACV,MAAM,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;gBAClE,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;gBACxE,OAAO,IAAI,CAAC;YACd,CAAC;YACD,gBAAgB,CAAC,MAAM;gBACrB,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YAC1E,CAAC;YACD,oBAAoB;gBAClB,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAC/B,CAAC;YACD,OAAO;gBACL,KAAK,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBACtD,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,yCAAyC;gBACzC,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpC,wBAAwB,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;YACjE,CAAC;YACD,KAAK,CAAC,WAAW,CAAC,WAAW;gBAC3B,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACzD,CAAC;YACD,KAAK,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;gBAClC,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC;oBACtD,KAAK;oBACL,IAAI;iBACL,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,oBAAoB,CACtD,SAAS,CAAC,cAAc,CACzB,CAAC;gBACF,MAAM,YAAY,GAAe;oBAC/B,IAAI,EAAE,QAAQ;oBACd,EAAE,EAAE,KAAK,CAAC,MAAM;oBAChB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,MAAM;oBAC9C,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;oBACxB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,IAAI;oBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,QAAQ;iBAC7C,CAAC;gBACF,gBAAgB,CAAC,EAAE,CAAC,CAAC;gBACrB,OAAO,CAAC,YAAY,CAAC,CAAC;gBACtB,OAAO,YAAY,CAAC;YACtB,CAAC;YACD,kBAAkB,CAAC,cAAc;gBAC/B,wBAAwB,CAAC,cAAc,CAAC,CAAC;YAC3C,CAAC;YACD,iBAAiB;gBACf,wBAAwB,CAAC,4BAA4B,CAAC,MAAM,CAAC,CAAC,CAAC;YACjE,CAAC;SACF,CAAC;IACJ,CAAC,EAAE;QACD,qBAAqB;QACrB,aAAa;QACb,OAAO;QACP,qBAAqB;QACrB,IAAI;QACJ,MAAM;QACN,UAAU;QACV,gBAAgB;KACjB,CAAC,CAAC;IAEH,OAAO,CACL,KAAC,qBAAqB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,YACzC,KAAK,CAAC,QAAQ,GACgB,CAClC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAChD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,QAAQ,CAAC;YACjB,mBAAmB,EACjB,8DAA8D;YAChE,cAAc,EAAE,mBAAmB;YACnC,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAC,GAAkB;IACxC,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,IAAI,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAwB,CAAC;QACtD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3E,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,EAAE;YAC5C,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;YACzB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;YAC/B,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,QAAQ;SAC9C,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA6B;IAC1D,MAAM,mBAAmB,GAAG,MAAM,CAAC,OAAO,EAAE,mBAAmB,IAAI,EAAE,CAAC;IACtE,MAAM,cAAc,GAAG,wBAAwB,CAAC,mBAAmB,CAAC,CAAC;IACrE,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,IAAI,IAAI;QACzD,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;QACrC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;QAC3C,wBAAwB,EAAE,MAAM,CAAC,wBAAwB;QACzD,0BAA0B,EAAE,MAAM,CAAC,0BAA0B;QAC7D,iBAAiB,EAAE,cAAc,CAAC,MAAM;QACxC,kBAAkB,EAAE,cAAc,CAAC,WAAW,GAAG,cAAc,CAAC,MAAM;QACtE,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,OAAO,EACL,MAAM,CAAC,OAAO,IAAI,IAAI;YACpB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC;gBACE,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;gBACrB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;gBAC7B,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,cAAc;gBAC7C,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;gBACnC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS;gBACnC,mBAAmB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,GAAG,CACjE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACT,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,SAAS,EAAE,IAAI,CAAC,SAAS;oBACzB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC,CACH;gBACD,eAAe,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,GAAG,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;oBACZ,EAAE,EAAE,OAAO,CAAC,EAAE;oBACd,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,WAAW,EAAE,OAAO,CAAC,WAAW;oBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;oBAClC,KAAK,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC1C,EAAE,EAAE,IAAI,CAAC,EAAE;wBACX,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,aAAa,EAAE,IAAI,CAAC,aAAa;wBACjC,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;wBACjC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;qBAC5C,CAAC,CAAC;iBACJ,CAAC,CACH;aACF;KACR,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CACrC,OAAuB,EACvB,OAA8B;IAE9B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,OAAO,MAAM,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,qBAAqB,GAAG;IAC5B,QAAQ,EAAE,qBAAqB;IAC/B,KAAK,EAAE,sBAAsB;IAC7B,UAAU,EAAE,2BAA2B;CACxC,CAAC;AAEF,SAAS,wBAAwB,CAAC,MAAmB;IACnD,OAAO,0BAA0B,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;AACnE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type ReactNode } from "react";
2
+ import { type OpenkkConfig } from "@rubydogjp/openkk-client-domain";
3
+ export declare function OpenkkConfigProvider(props: {
4
+ config: OpenkkConfig;
5
+ children: ReactNode;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ export declare function useOpenkkConfig(): OpenkkConfig;
8
+ //# sourceMappingURL=openkk-config-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openkk-config-context.d.ts","sourceRoot":"","sources":["../../src/shared/openkk-config-context.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClE,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAI9E,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAMA;AAED,wBAAgB,eAAe,IAAI,YAAY,CAY9C"}
@@ -0,0 +1,21 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import { createContext, useContext } from "react";
4
+ import { AppError } from "@rubydogjp/openkk-client-domain";
5
+ const OpenkkConfigContext = createContext(null);
6
+ export function OpenkkConfigProvider(props) {
7
+ return (_jsx(OpenkkConfigContext.Provider, { value: props.config, children: props.children }));
8
+ }
9
+ export function useOpenkkConfig() {
10
+ const value = useContext(OpenkkConfigContext);
11
+ if (value == null) {
12
+ throw new AppError({
13
+ messageForDeveloper: "useOpenkkConfig must be used within OpenkkConfigProvider",
14
+ messageForUser: "アプリの設定を読み込めませんでした",
15
+ originalMessage: null,
16
+ statusCode: null,
17
+ });
18
+ }
19
+ return value;
20
+ }
21
+ //# sourceMappingURL=openkk-config-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openkk-config-context.js","sourceRoot":"","sources":["../../src/shared/openkk-config-context.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAqB,MAAM,iCAAiC,CAAC;AAE9E,MAAM,mBAAmB,GAAG,aAAa,CAAsB,IAAI,CAAC,CAAC;AAErE,MAAM,UAAU,oBAAoB,CAAC,KAGpC;IACC,OAAO,CACL,KAAC,mBAAmB,CAAC,QAAQ,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,YAC9C,KAAK,CAAC,QAAQ,GACc,CAChC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAC9C,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QAClB,MAAM,IAAI,QAAQ,CAAC;YACjB,mBAAmB,EACjB,0DAA0D;YAC5D,cAAc,EAAE,mBAAmB;YACnC,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,8 @@
1
+ import { type ReactNode } from "react";
2
+ import type { PrintPort } from "@rubydogjp/openkk-client-ports";
3
+ export declare function PrintAdapterProvider(props: {
4
+ adapter: PrintPort;
5
+ children: ReactNode;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ export declare function usePrintAdapter(): PrintPort;
8
+ //# sourceMappingURL=print-adapter-context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"print-adapter-context.d.ts","sourceRoot":"","sources":["../../src/shared/print-adapter-context.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAElE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAIhE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE;IAC1C,OAAO,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;CACrB,2CAMA;AAED,wBAAgB,eAAe,IAAI,SAAS,CAY3C"}