@xxmachina/common 19.35.0 → 19.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/xxmachina-common-_shared-meta.mjs.map +1 -1
- package/fesm2022/xxmachina-common-auth-azure.mjs.map +1 -1
- package/fesm2022/xxmachina-common-domain-builder.mjs +1 -1
- package/fesm2022/xxmachina-common-domain-builder.mjs.map +1 -1
- package/fesm2022/xxmachina-common-domain-models.mjs +2 -1
- package/fesm2022/xxmachina-common-domain-models.mjs.map +1 -1
- package/fesm2022/xxmachina-common-infra-converters-google.mjs.map +1 -1
- package/fesm2022/xxmachina-common-infra-external-quick-js.mjs.map +1 -1
- package/fesm2022/xxmachina-common-infra-repository-dataconnect.mjs +2 -2
- package/fesm2022/xxmachina-common-infra-repository-dataconnect.mjs.map +1 -1
- package/fesm2022/xxmachina-common-infra-repository-notion.mjs.map +1 -1
- package/fesm2022/xxmachina-common-infra.mjs.map +1 -1
- package/fesm2022/xxmachina-common-invoice-domain-builders.mjs +1 -1
- package/fesm2022/xxmachina-common-invoice-domain-builders.mjs.map +1 -1
- package/fesm2022/xxmachina-common-invoice-domain-models.mjs.map +1 -1
- package/fesm2022/xxmachina-common-invoice-usecase-invoice.mjs.map +1 -1
- package/fesm2022/xxmachina-common-services-graphql.mjs +6 -5
- package/fesm2022/xxmachina-common-services-graphql.mjs.map +1 -1
- package/fesm2022/xxmachina-common-services-query.mjs.map +1 -1
- package/fesm2022/xxmachina-common-services-speech.mjs.map +1 -1
- package/fesm2022/xxmachina-common-usecase-database.mjs.map +1 -1
- package/fesm2022/xxmachina-common-usecase-graphql.mjs +1 -1
- package/fesm2022/xxmachina-common-usecase-graphql.mjs.map +1 -1
- package/fesm2022/xxmachina-common-usecase-spec.mjs.map +1 -1
- package/fesm2022/xxmachina-common-usecase.mjs +1 -1
- package/fesm2022/xxmachina-common-usecase.mjs.map +1 -1
- package/fesm2022/xxmachina-common-utils.mjs.map +1 -1
- package/package.json +11 -11
- package/types/xxmachina-common-_shared-auth.d.ts +1 -1
- package/types/xxmachina-common-auth-azure.d.ts +3 -3
- package/types/xxmachina-common-auth-azure.d.ts.map +1 -1
- package/types/xxmachina-common-domain-builder.d.ts +1 -1
- package/types/xxmachina-common-domain-builder.d.ts.map +1 -1
- package/types/xxmachina-common-domain-models.d.ts +26 -26
- package/types/xxmachina-common-domain-models.d.ts.map +1 -1
- package/types/xxmachina-common-infra-converters-google.d.ts +1 -1
- package/types/xxmachina-common-infra-converters-google.d.ts.map +1 -1
- package/types/xxmachina-common-infra-external-resend.d.ts +1 -1
- package/types/xxmachina-common-infra-repository-notion.d.ts.map +1 -1
- package/types/xxmachina-common-infra.d.ts.map +1 -1
- package/types/xxmachina-common-services-speech.d.ts +2 -2
- package/types/xxmachina-common-stores-firestore.d.ts +2 -2
- package/types/xxmachina-common-stores-hasura.d.ts +3 -3
- package/types/xxmachina-common-usecase-database.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-_shared-meta.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/_shared/meta/decorators.ts","../../../../../packages/@xxmachina/common/src/lib/_shared/meta/xxmachina-common-_shared-meta.ts"],"sourcesContent":["import type decorators from '@nestjs/graphql';\n\nlet ObjectType, Field, ID;\n\nconst _decorators: Partial<typeof decorators> = {\n ObjectType: function(): ClassDecorator {\n return function (target: any) {\n // return target;\n }\n },\n Field: function(): PropertyDecorator {\n return function (target: any, propertyKey: string | symbol) {\n // return target;\n }\n },\n ID: null,\n};\n({ ObjectType, Field, ID } = _decorators as any);\n\n// GraphQLのデコレーターをファクトリーメソッドで提供\nexport function provideNestjsGraphql(_decorators: typeof decorators) {\n ({ ObjectType, Field, ID } = _decorators);\n}\n\nexport { ObjectType, Field, ID };\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAEA,IAAI,UAAU,CAAA,CAAE,KAAK,CAAA,CAAE;AAEvB,MAAM,WAAW,GAA+B;AAC9C,IAAA,UAAU,EAAE,YAAA;AACV,QAAA,OAAO,UAAU,MAAW,EAAA;;AAE5B,QAAA,CAAC;IACH,CAAC;AACD,IAAA,KAAK,EAAE,YAAA;QACL,OAAO,UAAU,MAAW,EAAE,WAA4B,EAAA;;AAE1D,QAAA,CAAC;IACH,CAAC;AACD,IAAA,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"xxmachina-common-_shared-meta.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/_shared/meta/decorators.ts","../../../../../packages/@xxmachina/common/src/lib/_shared/meta/xxmachina-common-_shared-meta.ts"],"sourcesContent":["import type decorators from '@nestjs/graphql';\n\nlet ObjectType, Field, ID;\n\nconst _decorators: Partial<typeof decorators> = {\n ObjectType: function(): ClassDecorator {\n return function (target: any) {\n // return target;\n }\n },\n Field: function(): PropertyDecorator {\n return function (target: any, propertyKey: string | symbol) {\n // return target;\n }\n },\n ID: null as any,\n};\n({ ObjectType, Field, ID } = _decorators as any);\n\n// GraphQLのデコレーターをファクトリーメソッドで提供\nexport function provideNestjsGraphql(_decorators: typeof decorators) {\n ({ ObjectType, Field, ID } = _decorators);\n}\n\nexport { ObjectType, Field, ID };\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAEA,IAAI,UAAU,CAAA,CAAE,KAAK,CAAA,CAAE;AAEvB,MAAM,WAAW,GAA+B;AAC9C,IAAA,UAAU,EAAE,YAAA;AACV,QAAA,OAAO,UAAU,MAAW,EAAA;;AAE5B,QAAA,CAAC;IACH,CAAC;AACD,IAAA,KAAK,EAAE,YAAA;QACL,OAAO,UAAU,MAAW,EAAE,WAA4B,EAAA;;AAE1D,QAAA,CAAC;IACH,CAAC;AACD,IAAA,EAAE,EAAE,IAAW;CAChB;AACD,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,WAAkB;AAE/C;AACM,SAAU,oBAAoB,CAAC,WAA8B,EAAA;IACjE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,WAAW;AAC1C;;ACtBA;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-auth-azure.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/auth/azure/auth.service.ts","../../../../../packages/@xxmachina/common/src/lib/auth/azure/auth.di.ts","../../../../../packages/@xxmachina/common/src/lib/auth/azure/xxmachina-common-auth-azure.ts"],"sourcesContent":["import { inject, Injectable, InjectionToken, signal } from \"@angular/core\";\nimport { toObservable, toSignal } from \"@angular/core/rxjs-interop\";\nimport { filter, interval, lastValueFrom, Observable, ReplaySubject, startWith, switchMap, take } from \"rxjs\";\nimport { MsalService } from '@azure/msal-angular';\nimport { AccountInfo, AuthenticationResult, Configuration } from '@azure/msal-browser';\nimport { HttpClient } from \"@angular/common/http\";\n\nabstract class AuthService {\n abstract readonly auth$: Observable<any>;\n abstract readonly accessToken$: Observable<string>;\n\n abstract signIn(): Promise<any>;\n abstract signOut(): Promise<void>;\n}\n\nexport interface AzureAuthConfig {\n configuration: Configuration,\n scopes: string[];\n}\n\nexport const AZURE_AUTH_CONFIG = new InjectionToken<AzureAuthConfig>('[@xxmachina/common] AZURE_AUTH_CONFIG');\n\n@Injectable({ providedIn: 'root' })\nexport class AzureAuthService extends AuthService {\n protected readonly config = inject(AZURE_AUTH_CONFIG);\n readonly auth$ = new ReplaySubject<AccountInfo>(1);\n readonly auth = toSignal(this.auth$);\n readonly accessToken = signal(null);\n readonly accessToken$ = toObservable(this.accessToken);\n readonly http = inject(HttpClient);\n\n constructor(public msal: MsalService) {\n super();\n\n this.initialize().then(() => {\n const account = this.msal.instance.getActiveAccount();\n if (account) {\n this.auth$.next(account);\n } else {\n this.auth$.next(null);\n }\n });\n\n interval(1_000 * 60 * 5).pipe(\n startWith(null),\n switchMap(() => this.auth$.pipe(\n filter((auth) => !!auth),\n take(1)\n )),\n filter(() => !!this.auth()),\n ).subscribe(() => {\n this.updateAccessToken();\n });\n }\n\n async initialize() {\n await lastValueFrom(this.msal.initialize()).then(() => {\n return this.msal.instance.handleRedirectPromise().then((response) => {\n if (response !== null) {\n this.msal.instance.setActiveAccount(response.account);\n }\n }).catch((error) => {\n console.error('リダイレクト処理エラー:', error);\n });\n });\n }\n\n async signIn(): Promise<any> {\n try {\n const result: AuthenticationResult = await lastValueFrom(this.msal.loginPopup({\n scopes: this.config.scopes,\n }));\n this.msal.instance.setActiveAccount(result.account);\n this.auth$.next(result.account);\n console.debug('Sign-in result:', result);\n await this.acquireAccessToken();\n return result.account;\n } catch (error) {\n console.error('Sign-in failed:', error);\n throw error;\n }\n }\n\n async signOut(): Promise<void> {\n try {\n this.msal.instance.setActiveAccount(null);\n this.auth$.next(null);\n this.accessToken.set(null);\n } catch (error) {\n console.error('Sign-out failed:', error);\n throw error;\n }\n }\n\n protected async updateAccessToken(scopes = this.config.scopes): Promise<void> {\n try {\n const accessToken = await this.acquireAccessToken(scopes);\n this.accessToken.set(accessToken);\n } catch (error) {\n console.error('Failed to acquire access token:', error);\n this.accessToken.set(null);\n throw error;\n }\n }\n\n async acquireAccessToken(scopes = this.config.scopes): Promise<string> {\n const account = this.msal.instance.getActiveAccount();\n if (!account) throw new Error('No active account found.');\n return lastValueFrom(this.msal.acquireTokenSilent({\n account,\n scopes,\n forceRefresh: true,\n })).then((response) => {\n this.auth$.next(response.account);\n console.debug('[AzureAuthService] response:', response);\n return response.accessToken\n });\n }\n}\n","import { ENVIRONMENT_INITIALIZER, EnvironmentProviders, importProvidersFrom, inject, makeEnvironmentProviders } from \"@angular/core\";\nimport { MsalModule } from '@azure/msal-angular';\nimport { InteractionType, PublicClientApplication } from '@azure/msal-browser';\nimport { provideEffect } from \"@ng-atomic/core\";\nimport { AppFrameStore } from \"@ng-atomic/components/frames/app\";\nimport { AuthService } from \"@xxmachina/common/auth\";\nimport { AzureAuthService } from \"./auth.service\";\nimport { AzureAuthConfig, AZURE_AUTH_CONFIG } from \"./auth.service\";\n\nexport function provideAppInitializer(useValue: () => void): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: ENVIRONMENT_INITIALIZER,\n useValue,\n multi: true,\n },\n ]);\n}\n\n\nexport function provideAzureAuth(config: AzureAuthConfig): EnvironmentProviders {\n return makeEnvironmentProviders([\n importProvidersFrom(MsalModule.forRoot(new PublicClientApplication(config?.configuration), {\n interactionType: InteractionType.Redirect,\n authRequest: {\n scopes: config.scopes,\n },\n }, {\n interactionType: InteractionType.Redirect,\n protectedResourceMap: new Map([\n ['https://graph.microsoft.com/v1.0/me', config.scopes],\n ]),\n })),\n { provide: AZURE_AUTH_CONFIG, useValue: config },\n { provide: AuthService, useClass: AzureAuthService },\n provideAppInitializer(() => { inject(AuthService) }),\n provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_MICROSOFT, () => {\n const auth = inject(AuthService);\n return () => {\n console.debug('auth:', auth);\n if (!auth.auth()) {\n auth.signIn();\n } else {\n console.log('既にログイン済みです。');\n }\n }\n }),\n provideEffect(AppFrameStore.ActionId.SIGN_OUT, () => {\n const auth = inject(AuthService);\n return () => auth.signOut();\n }),\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AuthService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-common-auth-azure.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/auth/azure/auth.service.ts","../../../../../packages/@xxmachina/common/src/lib/auth/azure/auth.di.ts","../../../../../packages/@xxmachina/common/src/lib/auth/azure/xxmachina-common-auth-azure.ts"],"sourcesContent":["import { inject, Injectable, InjectionToken, signal } from \"@angular/core\";\nimport { toObservable, toSignal } from \"@angular/core/rxjs-interop\";\nimport { filter, interval, lastValueFrom, Observable, ReplaySubject, startWith, switchMap, take } from \"rxjs\";\nimport { MsalService } from '@azure/msal-angular';\nimport { AccountInfo, AuthenticationResult, Configuration } from '@azure/msal-browser';\nimport { HttpClient } from \"@angular/common/http\";\n\nabstract class AuthService {\n abstract readonly auth$: Observable<any>;\n abstract readonly accessToken$: Observable<string>;\n\n abstract signIn(): Promise<any>;\n abstract signOut(): Promise<void>;\n}\n\nexport interface AzureAuthConfig {\n configuration: Configuration,\n scopes: string[];\n}\n\nexport const AZURE_AUTH_CONFIG = new InjectionToken<AzureAuthConfig>('[@xxmachina/common] AZURE_AUTH_CONFIG');\n\n@Injectable({ providedIn: 'root' })\nexport class AzureAuthService extends AuthService {\n protected readonly config = inject(AZURE_AUTH_CONFIG);\n readonly auth$ = new ReplaySubject<AccountInfo>(1);\n readonly auth = toSignal(this.auth$);\n readonly accessToken = signal<string | null>(null);\n readonly accessToken$ = toObservable(this.accessToken) as unknown as Observable<string>;\n readonly http = inject(HttpClient);\n\n constructor(public msal: MsalService) {\n super();\n\n this.initialize().then(() => {\n const account = this.msal.instance.getActiveAccount();\n if (account) {\n this.auth$.next(account);\n } else {\n this.auth$.next(null as unknown as AccountInfo);\n }\n });\n\n interval(1_000 * 60 * 5).pipe(\n startWith(null),\n switchMap(() => this.auth$.pipe(\n filter((auth) => !!auth),\n take(1)\n )),\n filter(() => !!this.auth()),\n ).subscribe(() => {\n this.updateAccessToken();\n });\n }\n\n async initialize() {\n await lastValueFrom(this.msal.initialize()).then(() => {\n return this.msal.instance.handleRedirectPromise().then((response) => {\n if (response !== null) {\n this.msal.instance.setActiveAccount(response.account);\n }\n }).catch((error) => {\n console.error('リダイレクト処理エラー:', error);\n });\n });\n }\n\n async signIn(): Promise<any> {\n try {\n const result: AuthenticationResult = await lastValueFrom(this.msal.loginPopup({\n scopes: this.config.scopes,\n }));\n this.msal.instance.setActiveAccount(result.account);\n this.auth$.next(result.account);\n console.debug('Sign-in result:', result);\n await this.acquireAccessToken();\n return result.account;\n } catch (error) {\n console.error('Sign-in failed:', error);\n throw error;\n }\n }\n\n async signOut(): Promise<void> {\n try {\n this.msal.instance.setActiveAccount(null);\n this.auth$.next(null as unknown as AccountInfo);\n this.accessToken.set(null);\n } catch (error) {\n console.error('Sign-out failed:', error);\n throw error;\n }\n }\n\n protected async updateAccessToken(scopes = this.config.scopes): Promise<void> {\n try {\n const accessToken = await this.acquireAccessToken(scopes);\n this.accessToken.set(accessToken);\n } catch (error) {\n console.error('Failed to acquire access token:', error);\n this.accessToken.set(null);\n throw error;\n }\n }\n\n async acquireAccessToken(scopes = this.config.scopes): Promise<string> {\n const account = this.msal.instance.getActiveAccount();\n if (!account) throw new Error('No active account found.');\n return lastValueFrom(this.msal.acquireTokenSilent({\n account,\n scopes,\n forceRefresh: true,\n })).then((response) => {\n this.auth$.next(response.account);\n console.debug('[AzureAuthService] response:', response);\n return response.accessToken\n });\n }\n}\n","import { ENVIRONMENT_INITIALIZER, EnvironmentProviders, importProvidersFrom, inject, makeEnvironmentProviders } from \"@angular/core\";\nimport { MsalModule } from '@azure/msal-angular';\nimport { InteractionType, PublicClientApplication } from '@azure/msal-browser';\nimport { provideEffect } from \"@ng-atomic/core\";\nimport { AppFrameStore } from \"@ng-atomic/components/frames/app\";\nimport { AuthService } from \"@xxmachina/common/auth\";\nimport { AzureAuthService } from \"./auth.service\";\nimport { AzureAuthConfig, AZURE_AUTH_CONFIG } from \"./auth.service\";\n\nexport function provideAppInitializer(useValue: () => void): EnvironmentProviders {\n return makeEnvironmentProviders([\n {\n provide: ENVIRONMENT_INITIALIZER,\n useValue,\n multi: true,\n },\n ]);\n}\n\n\nexport function provideAzureAuth(config: AzureAuthConfig): EnvironmentProviders {\n return makeEnvironmentProviders([\n importProvidersFrom(MsalModule.forRoot(new PublicClientApplication(config?.configuration), {\n interactionType: InteractionType.Redirect,\n authRequest: {\n scopes: config.scopes,\n },\n }, {\n interactionType: InteractionType.Redirect,\n protectedResourceMap: new Map([\n ['https://graph.microsoft.com/v1.0/me', config.scopes],\n ]),\n })),\n { provide: AZURE_AUTH_CONFIG, useValue: config },\n { provide: AuthService, useClass: AzureAuthService },\n provideAppInitializer(() => { inject(AuthService) }),\n provideEffect(AppFrameStore.ActionId.SIGN_IN_WITH_MICROSOFT, () => {\n const auth = inject(AuthService);\n return () => {\n console.debug('auth:', auth);\n if (!auth.auth()) {\n auth.signIn();\n } else {\n console.log('既にログイン済みです。');\n }\n }\n }),\n provideEffect(AppFrameStore.ActionId.SIGN_OUT, () => {\n const auth = inject(AuthService);\n return () => auth.signOut();\n }),\n ]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["AuthService"],"mappings":"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"}
|
|
@@ -267,7 +267,7 @@ class QueryBuilder {
|
|
|
267
267
|
query: message `${graphql.query}`,
|
|
268
268
|
headersJson: JSON.stringify(graphql.headers),
|
|
269
269
|
variablesJson: JSON.stringify(graphql.variables),
|
|
270
|
-
transformerTs: graphql?.transformerTs ?? null,
|
|
270
|
+
transformerTs: (graphql?.transformerTs ?? null),
|
|
271
271
|
},
|
|
272
272
|
createdAt: null,
|
|
273
273
|
updatedAt: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-domain-builder.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/domain/builder/command/command.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.types.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.helpers.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/er/er.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/query/query.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/screen-item/notion-property-config.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/screen-item/screen-item.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/xxmachina-common-domain-builder.ts"],"sourcesContent":["import { Command, OpenApi } from '@xxmachina/common/domain/models';\n\nexport class CommandBuilder {\n buildFromOpenApi(openApi: OpenApi): Command[] {\n return Object.keys(openApi.getPaths()).flatMap((path) => {\n return openApi.getMethods(path).map((method, index: number) => ({\n id: openApi.getOperationId(path, method) ?? `cmd-${index}`,\n name: openApi.getSummary(path, method) ?? '',\n description: openApi.getDescription(path, method) ?? '',\n type: 'webApiRequest' as const,\n webApiRequest: {\n path: path,\n method: method.toLocaleUpperCase(),\n contentType: openApi.getContentType(path, method) as 'application/json' | 'multipart/form-data',\n responseContentType: openApi.getResponseContentType(path, method) as 'application/octet-stream' | 'unknown',\n bodySchema: openApi.getRequestBodySchema(path, method),\n serverUrl: openApi.getServerUrl(),\n apiJsonUrl: openApi.apiJsonUrl,\n security: openApi.getSecurity(path, method) ?? [],\n }\n }));\n });\n }\n}\n","import { CreateActionsOptions } from '@ng-atomic/core';\n\nexport enum ActionId {\n NAVIGATE_TO_COMMAND_PAGE = '[@xxmachina/common] Navigate To Command Page',\n EXECUTE_COMMAND = '[@xxmachina/common] Execute Command',\n}\n\nexport interface CommandActionFactoryOptions extends CreateActionsOptions {\n queryId?: string;\n confirm?: () => Promise<boolean> | boolean;\n}\n\nexport interface CommandActionPayload<P> {\n command: any;\n body: P;\n options?: {\n confirm?: () => Promise<boolean> | boolean;\n queryId?: string;\n };\n}\n","import { Action, createAction } from '@ng-atomic/core';\nimport { flatten } from 'flat';\nimport { omitBy } from 'lodash-es';\nimport { createNavigateAction } from '@ng-atomic/components/frames/app';\nimport { NavigationExtras } from '@angular/router';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { ActionId, CommandActionFactoryOptions, CommandActionPayload } from './command-action.types';\n\nexport class CommandActionsBuilder {\n private commands: Command[] = [];\n private options: CommandActionFactoryOptions = {};\n private item: any = null;\n private filterIds: string[] | null = null;\n private autoIds: string[] = [];\n\n private clone(): CommandActionsBuilder {\n const newFactory = new CommandActionsBuilder();\n newFactory.commands = [...this.commands];\n newFactory.options = { ...this.options };\n newFactory.item = this.item;\n newFactory.filterIds = this.filterIds ? [...this.filterIds] : null;\n newFactory.autoIds = [...this.autoIds];\n return newFactory;\n }\n\n setCommands(commands: Command[]): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.commands = [...commands];\n return newFactory;\n }\n\n setOptions(options: Partial<CommandActionFactoryOptions>): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.options = { ...this.options, ...options };\n return newFactory;\n }\n\n setItem(item: any): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.item = item;\n return newFactory;\n }\n\n setFilterIds(filterIds: (string | {id: string, auto: boolean})[] = []): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.filterIds = filterIds.map((id) => typeof id === 'string' ? id : id.id);\n newFactory.autoIds = filterIds.filter((id) => typeof id !== 'string' && id.auto).map((id) => (id as any).id);\n return newFactory;\n }\n\n setAutoIds(autoIds: string[]): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.autoIds = autoIds;\n return newFactory;\n }\n\n private applyFilter(commands: Command[]): Command[] {\n if (!this.filterIds) return commands;\n return this.filterIds.map((id) => commands.find((command) => command.id === id)!)\n .filter((command) => !!command) as Command[];\n }\n\n buildAction(id: string): Action {\n const command = this.commands.find((command) => command.id === id);\n if (!command) throw new Error(`Command not found: ${id}`);\n const actionId = this.autoIds.includes(command.id)\n ? ActionId.EXECUTE_COMMAND\n : ActionId.NAVIGATE_TO_COMMAND_PAGE;\n const creator = createAction<CommandActionPayload<any>>(\n actionId,\n command.webApiRequest.bodySchema,\n { name: command.name, icon: this.options.icon || 'default', ...this.options }\n );\n\n return creator.create({\n command,\n body: this.item,\n options: { queryId: this.options.queryId, confirm: this.options.confirm }\n });\n }\n\n buildActions(item?: any, navigationExtras: NavigationExtras = {}, overwrite: Partial<Action> = {}): Action[] {\n const filteredCommands = this.applyFilter(this.commands);\n return filteredCommands.map((command) => {\n if (this.autoIds.includes(command.id)) {\n return createAction<CommandActionPayload<any>>(\n ActionId.EXECUTE_COMMAND,\n command.webApiRequest.bodySchema,\n { name: command.name, icon: this.options.icon || 'default' }\n ).create({\n command,\n body: this.item,\n options: { queryId: this.options.queryId, confirm: this.options.confirm }\n }, overwrite);\n } else {\n const data = omitBy(flatten<object, object>({data: this.item, queryId: this.options.queryId}), value => typeof value === 'undefined');\n return createNavigateAction(['commands', {skip: true}, command.id, data], navigationExtras, {\n name: command.name,\n icon: this.options.icon,\n ...overwrite,\n });\n }\n });\n }\n\n buildItemActions<T>(): (item: T) => Action[] {\n return (item: T) => this.setItem(item).buildActions();\n }\n}\n\n// Re-export types for backward compatibility\nexport { ActionId, CommandActionFactoryOptions, CommandActionPayload } from './command-action.types';\n","import { Action } from '@ng-atomic/core';\nimport { NavigationExtras } from '@angular/router';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { CommandActionsBuilder } from './command-action.builder';\nimport { CommandActionFactoryOptions } from './command-action.types';\n\n/**\n * コマンド用のナビゲーションアクションを作成\n */\nexport function createCommandNavigateAction(\n command: Command,\n navigationExtras: NavigationExtras = {},\n item: any = {},\n options: CommandActionFactoryOptions = {},\n overwrite: Partial<Action> = {}\n): Action | null {\n if (!command) return null;\n return new CommandActionsBuilder()\n .setItem(item)\n .setCommands([command])\n .setOptions(options)\n .setFilterIds([command.id])\n .buildActions(item, navigationExtras, overwrite)[0];\n}\n\n/**\n * コマンド用の実行アクションを作成\n */\nexport function createCommandExecutionAction(\n command: Command,\n item: any = {},\n options: CommandActionFactoryOptions = {},\n overwrite: Partial<Action> = {}\n): Action | null {\n if (!command) return null;\n return new CommandActionsBuilder()\n .setItem(item)\n .setCommands([command])\n .setOptions(options)\n .setFilterIds([command.id])\n .setAutoIds([command.id])\n .buildActions(item, undefined, overwrite)[0];\n}\n","interface Schema {\n name: string;\n fields: string[];\n relations: Relation[];\n}\n\ninterface Relation {\n source: string;\n target: string;\n label?: string;\n type?: string; // 例: \"||--o{\"\n}\n\nconst NOTION_PROP_TYPE_MAP = {\n people: 'string',\n unique_id: 'string',\n rich_text: 'string',\n title: 'string',\n text: 'string',\n number: 'number',\n select: 'enum',\n status: 'enum',\n multi_select: 'string',\n date: 'date',\n person: 'string',\n files: 'string',\n checkbox: 'boolean',\n url: 'string',\n email: 'string',\n phone_number: 'string',\n relation: 'string',\n rollup: 'string',\n created_time: 'date',\n created_by: 'string',\n last_edited_time: 'date',\n last_edited_by: 'string',\n};\n\nconst NOTION_KEY_MAP = {\n 'relation': 'FK',\n 'unique_id': 'UK',\n}\n\nexport class ErBuilder {\n build(databases): string {\n const schemas = [];\n const dbIdToName = databases.reduce((acc, db) => ({\n ...acc,\n [db.id]: db?.title?.[0]?.plain_text\n }), {});\n for (const database of databases) {\n const schema = this.parseDatabaseSchema(database, database?.title?.[0]?.plain_text, dbIdToName);\n schemas.push(schema);\n }\n return this.buildMermaidER(schemas);\n }\n\n parseDatabaseSchema(\n database,\n name = '',\n map: { [key: string]: string } = {},\n ): Schema {\n const properties = database.properties;\n const fields: string[] = [];\n const relations: Relation[] = [];\n \n Object.keys(properties)\n .filter(propName => {\n if (['formula', 'rollup', 'button'].includes(properties[propName].type)) return false;\n return true;\n })\n .sort()\n .forEach(propName => {\n const prop = properties[propName];\n const type = prop.type as keyof typeof NOTION_PROP_TYPE_MAP;\n const mappedType = NOTION_PROP_TYPE_MAP[type];\n const key = NOTION_KEY_MAP[type] ?? ' ';\n const field = `${mappedType} ${type} ${key} \"${propName}\"`;\n fields.push(field);\n \n // リレーションシップの解析\n if (type === 'relation') {\n const relation = prop['relation'];\n if (relation && relation.database_id) {\n const targetDbId = relation.database_id;\n const targetDbName = map[targetDbId] || 'Unknown';\n relations.push({\n source: name,\n target: targetDbName,\n label: propName,\n type: '||--||', // リレーションのタイプを適宜設定\n });\n } else if (relation && Array.isArray(relation)) {\n relation.forEach(rel => {\n const targetDbId = rel.database_id;\n const targetDbName = map[targetDbId] || 'Unknown';\n relations.push({\n source: name,\n target: targetDbName,\n label: propName,\n type: '||--o{',\n });\n });\n }\n }\n });\n \n return { name, fields, relations };\n }\n\n buildMermaidER(schemas: Schema[]): string {\n let mermaid = 'erDiagram\\n';\n \n // エンティティの定義\n schemas.forEach(schema => {\n mermaid += ` \"${schema.name}\" {\\n`;\n mermaid += schema.fields.map(field => ` ${field}`).join('\\n');\n mermaid += '\\n }\\n';\n });\n \n // リレーションシップの定義\n schemas.forEach(schema => {\n schema.relations.forEach(relation => {\n mermaid += ` \"${relation.source}\" ${relation.type} \"${relation.target}\" : \"${relation.label}\"\\n`;\n });\n });\n \n return mermaid;\n }\n}","import { message } from \"@nx-ddd/common\";\nimport { Query, QueryHelper } from \"@xxmachina/common/domain/models\";\n\nexport class QueryBuilder {\n static buildByGraphql(graphql: {\n endpoint: string;\n query: string;\n headers: Record<string, string>;\n variables: Record<string, any>;\n transformerTs?: string;\n }, meta: Partial<Omit<Query, 'graphql'>> = {}): Query {\n return QueryHelper.tryParse({\n id: 'builded_query',\n type: 'graphql' as const,\n projectId: 'default',\n title: 'Builded Query',\n summary: 'This query was built by QueryBuilder',\n graphql: {\n endpoint: graphql.endpoint,\n query: message`${graphql.query}`,\n headersJson: JSON.stringify(graphql.headers),\n variablesJson: JSON.stringify(graphql.variables),\n transformerTs: graphql?.transformerTs ?? null,\n },\n createdAt: null,\n updatedAt: null,\n ...meta,\n });\n } \n}\n","import { ScreenItem } from '@xxmachina/common/domain/models';\n\n/**\n * Notionプロパティタイプ別の設定マッピング\n */\nexport interface NotionPropertyConfig {\n type: ScreenItem['type'];\n notionPropType: string;\n valueType: ScreenItem['valueType'];\n}\n\n/**\n * Notionプロパティタイプから画面項目設定へのマッピング\n */\nexport const NOTION_PROPERTY_CONFIG_MAP: Record<string, NotionPropertyConfig> = {\n select: { type: '入力(単一選択)', notionPropType: 'セレクト', valueType: 'string' },\n multi_select: { type: '入力(複数選択)', notionPropType: 'マルチセレクト', valueType: 'string' },\n relation: { type: '入力(単一選択)', notionPropType: 'リレーション', valueType: 'string' },\n rollup: { type: '表示', notionPropType: 'ロールアップ', valueType: 'string' },\n unique_id: { type: '表示', notionPropType: 'ユニークID', valueType: 'string' },\n created_time: { type: '表示', notionPropType: '作成日時', valueType: 'date' },\n created_by: { type: '表示', notionPropType: '作成者', valueType: 'string' },\n rich_text: { type: '入力(テキスト)', notionPropType: 'テキスト', valueType: 'string' },\n number: { type: '入力(数値)', notionPropType: '数値', valueType: 'number' },\n date: { type: '入力(日時)', notionPropType: '日時', valueType: 'date' },\n checkbox: { type: '入力(複数選択)', notionPropType: 'チェックボックス', valueType: 'boolean' },\n title: { type: '入力(テキスト)', notionPropType: 'タイトル', valueType: 'string' },\n people: { type: '入力(単一選択)', notionPropType: 'ユーザー', valueType: 'string' },\n last_edited_time: { type: '表示', notionPropType: '最終更新日時', valueType: 'date' },\n last_edited_by: { type: '表示', notionPropType: '最終更新者', valueType: 'string' },\n status: { type: '入力(単一選択)', notionPropType: 'ステータス', valueType: 'string' },\n formula: { type: '表示', notionPropType: '数式', valueType: 'any' },\n button: { type: 'ボタン', notionPropType: 'ボタン', valueType: 'string' },\n};\n\n/**\n * デフォルト設定(未知のプロパティタイプ用)\n */\nexport const DEFAULT_PROPERTY_CONFIG: NotionPropertyConfig = {\n type: '不明',\n notionPropType: '',\n valueType: 'string',\n};\n\n/**\n * プロパティタイプから設定を取得\n */\nexport function getPropertyConfig(propertyType: string): NotionPropertyConfig {\n return NOTION_PROPERTY_CONFIG_MAP[propertyType] ?? {\n ...DEFAULT_PROPERTY_CONFIG,\n notionPropType: propertyType,\n };\n}\n","import { ScreenItem } from '@xxmachina/common/domain/models';\nimport type { GetDatabaseResponse } from '@notionhq/client/build/src/api-endpoints';\nimport { Database } from '@xxmachina/common/domain/models';\nimport { getPropertyConfig } from './notion-property-config';\n\n/**\n * Notionプロパティから画面項目を構築\n */\nfunction buildPageItem(\n property: GetDatabaseResponse['properties'][string],\n propName: string,\n dbName: string,\n): ScreenItem {\n const config = getPropertyConfig(property.type);\n\n return {\n id: property?.['id'] ?? '',\n name: propName,\n type: config.type,\n notionPropType: config.notionPropType,\n formula: '',\n valueType: config.valueType,\n dbName,\n };\n}\n\n/**\n * データベースから画面項目リストを構築するビルダー\n */\nexport class ScreenItemBuilder {\n build(database: Database): ScreenItem[] {\n const items: ScreenItem[] = [];\n\n Object.entries(database?.properties ?? {}).sort((a, b) => {\n return a[0].localeCompare(b[0]);\n }).filter(([propName, prop]) => {\n return true;\n }).forEach(([propName, prop]) => {\n const item = buildPageItem(prop, propName, database?.title?.[0]?.plain_text ?? '');\n items.push(item);\n });\n\n return items;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAEa,cAAc,CAAA;AACzB,IAAA,gBAAgB,CAAC,OAAgB,EAAA;AAC/B,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,KAAI;AACtD,YAAA,OAAO,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAa,MAAM;AAC9D,gBAAA,EAAE,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAA,IAAA,EAAO,KAAK,CAAA,CAAE;gBAC1D,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;gBAC5C,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;AACvD,gBAAA,IAAI,EAAE,eAAwB;AAC9B,gBAAA,aAAa,EAAE;AACb,oBAAA,IAAI,EAAE,IAAI;AACV,oBAAA,MAAM,EAAE,MAAM,CAAC,iBAAiB,EAAE;oBAClC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAA+C;oBAC/F,mBAAmB,EAAE,OAAO,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAA2C;oBAC3G,UAAU,EAAE,OAAO,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC;AACtD,oBAAA,SAAS,EAAE,OAAO,CAAC,YAAY,EAAE;oBACjC,UAAU,EAAE,OAAO,CAAC,UAAU;oBAC9B,QAAQ,EAAE,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;AAClD;AACF,aAAA,CAAC,CAAC;AACL,QAAA,CAAC,CAAC;IACJ;AACD;;ICrBW;AAAZ,CAAA,UAAY,QAAQ,EAAA;AAClB,IAAA,QAAA,CAAA,0BAAA,CAAA,GAAA,8CAAyE;AACzE,IAAA,QAAA,CAAA,iBAAA,CAAA,GAAA,qCAAuD;AACzD,CAAC,EAHW,QAAQ,KAAR,QAAQ,GAAA,EAAA,CAAA,CAAA;;MCMP,qBAAqB,CAAA;IACxB,QAAQ,GAAc,EAAE;IACxB,OAAO,GAAgC,EAAE;IACzC,IAAI,GAAQ,IAAI;IAChB,SAAS,GAAoB,IAAI;IACjC,OAAO,GAAa,EAAE;IAEtB,KAAK,GAAA;AACX,QAAA,MAAM,UAAU,GAAG,IAAI,qBAAqB,EAAE;QAC9C,UAAU,CAAC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QACxC,UAAU,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE;AACxC,QAAA,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI;AAC3B,QAAA,UAAU,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI;QAClE,UAAU,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;AACtC,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,WAAW,CAAC,QAAmB,EAAA;AAC7B,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC/B,QAAA,UAAU,CAAC,QAAQ,GAAG,CAAC,GAAG,QAAQ,CAAC;AACnC,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,UAAU,CAAC,OAA6C,EAAA;AACtD,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC/B,QAAA,UAAU,CAAC,OAAO,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,OAAO,EAAE;AACpD,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,OAAO,CAAC,IAAS,EAAA;AACf,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC/B,QAAA,UAAU,CAAC,IAAI,GAAG,IAAI;AACtB,QAAA,OAAO,UAAU;IACnB;IAEA,YAAY,CAAC,YAAsD,EAAE,EAAA;AACnE,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;QAC/B,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;AACjF,QAAA,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,KAAM,EAAU,CAAC,EAAE,CAAC;AAC5G,QAAA,OAAO,UAAU;IACnB;AAEA,IAAA,UAAU,CAAC,OAAiB,EAAA;AAC1B,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,EAAE;AAC/B,QAAA,UAAU,CAAC,OAAO,GAAG,OAAO;AAC5B,QAAA,OAAO,UAAU;IACnB;AAEQ,IAAA,WAAW,CAAC,QAAmB,EAAA;QACrC,IAAI,CAAC,IAAI,CAAC,SAAS;AAAE,YAAA,OAAO,QAAQ;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,KAAK,EAAE,CAAE;aAC7E,MAAM,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,OAAO,CAAc;IAChD;AAEA,IAAA,WAAW,CAAC,EAAU,EAAA;AACpB,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC;AAClE,QAAA,IAAI,CAAC,OAAO;AAAE,YAAA,MAAM,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAA,CAAE,CAAC;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;cAC7C,QAAQ,CAAC;AACX,cAAE,QAAQ,CAAC,wBAAwB;AACrC,QAAA,MAAM,OAAO,GAAG,YAAY,CAC1B,QAAQ,EACR,OAAO,CAAC,aAAa,CAAC,UAAU,EAChC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAC9E;QAED,OAAO,OAAO,CAAC,MAAM,CAAC;YACpB,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,YAAA,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;AACxE,SAAA,CAAC;IACJ;AAEA,IAAA,YAAY,CAAC,IAAU,EAAE,mBAAqC,EAAE,EAAE,YAA6B,EAAE,EAAA;QAC/F,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;AACxD,QAAA,OAAO,gBAAgB,CAAC,GAAG,CAAC,CAAC,OAAO,KAAI;YACtC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;AACrC,gBAAA,OAAO,YAAY,CACjB,QAAQ,CAAC,eAAe,EACxB,OAAO,CAAC,aAAa,CAAC,UAAU,EAChC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS,EAAE,CAC7D,CAAC,MAAM,CAAC;oBACP,OAAO;oBACP,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,oBAAA,OAAO,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO;iBACxE,EAAE,SAAS,CAAC;YACf;iBAAO;AACL,gBAAA,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAiB,EAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,EAAC,CAAC,EAAE,KAAK,IAAI,OAAO,KAAK,KAAK,WAAW,CAAC;AACrI,gBAAA,OAAO,oBAAoB,CAAC,CAAC,UAAU,EAAE,EAAC,IAAI,EAAE,IAAI,EAAC,EAAE,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,gBAAgB,EAAE;oBAC1F,IAAI,EAAE,OAAO,CAAC,IAAI;AAClB,oBAAA,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;AACvB,oBAAA,GAAG,SAAS;AACb,iBAAA,CAAC;YACJ;AACF,QAAA,CAAC,CAAC;IACJ;IAEA,gBAAgB,GAAA;AACd,QAAA,OAAO,CAAC,IAAO,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE;IACvD;AACD;;ACtGD;;AAEG;AACG,SAAU,2BAA2B,CACzC,OAAgB,EAChB,gBAAA,GAAqC,EAAE,EACvC,IAAA,GAAY,EAAE,EACd,OAAA,GAAuC,EAAE,EACzC,YAA6B,EAAE,EAAA;AAE/B,IAAA,IAAI,CAAC,OAAO;AAAE,QAAA,OAAO,IAAI;IACzB,OAAO,IAAI,qBAAqB;SAC7B,OAAO,CAAC,IAAI;AACZ,SAAA,WAAW,CAAC,CAAC,OAAO,CAAC;SACrB,UAAU,CAAC,OAAO;AAClB,SAAA,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACzB,YAAY,CAAC,IAAI,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AACvD;AAEA;;AAEG;AACG,SAAU,4BAA4B,CAC1C,OAAgB,EAChB,IAAA,GAAY,EAAE,EACd,OAAA,GAAuC,EAAE,EACzC,SAAA,GAA6B,EAAE,EAAA;AAE/B,IAAA,IAAI,CAAC,OAAO;AAAE,QAAA,OAAO,IAAI;IACzB,OAAO,IAAI,qBAAqB;SAC7B,OAAO,CAAC,IAAI;AACZ,SAAA,WAAW,CAAC,CAAC,OAAO,CAAC;SACrB,UAAU,CAAC,OAAO;AAClB,SAAA,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;AACzB,SAAA,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;SACvB,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;AAChD;;AC7BA,MAAM,oBAAoB,GAAG;AAC3B,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,SAAS,EAAE,QAAQ;AACnB,IAAA,SAAS,EAAE,QAAQ;AACnB,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,MAAM,EAAE,MAAM;AACd,IAAA,YAAY,EAAE,QAAQ;AACtB,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,QAAQ,EAAE,SAAS;AACnB,IAAA,GAAG,EAAE,QAAQ;AACb,IAAA,KAAK,EAAE,QAAQ;AACf,IAAA,YAAY,EAAE,QAAQ;AACtB,IAAA,QAAQ,EAAE,QAAQ;AAClB,IAAA,MAAM,EAAE,QAAQ;AAChB,IAAA,YAAY,EAAE,MAAM;AACpB,IAAA,UAAU,EAAE,QAAQ;AACpB,IAAA,gBAAgB,EAAE,MAAM;AACxB,IAAA,cAAc,EAAE,QAAQ;CACzB;AAED,MAAM,cAAc,GAAG;AACrB,IAAA,UAAU,EAAE,IAAI;AAChB,IAAA,WAAW,EAAE,IAAI;CAClB;MAEY,SAAS,CAAA;AACpB,IAAA,KAAK,CAAC,SAAS,EAAA;QACb,MAAM,OAAO,GAAG,EAAE;AAClB,QAAA,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,MAAM;AAChD,YAAA,GAAG,GAAG;AACN,YAAA,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE;SAC1B,CAAC,EAAE,EAAE,CAAC;AACP,QAAA,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,UAAU,CAAC;AAC/F,YAAA,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC;QACtB;AACA,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;IACrC;IAEA,mBAAmB,CACjB,QAAQ,EACR,IAAI,GAAG,EAAE,EACT,MAAiC,EAAE,EAAA;AAEnC,QAAA,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU;QACtC,MAAM,MAAM,GAAa,EAAE;QAC3B,MAAM,SAAS,GAAe,EAAE;AAEhC,QAAA,MAAM,CAAC,IAAI,CAAC,UAAU;aACnB,MAAM,CAAC,QAAQ,IAAG;AACjB,YAAA,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;AAAE,gBAAA,OAAO,KAAK;AACrF,YAAA,OAAO,IAAI;AACb,QAAA,CAAC;AACA,aAAA,IAAI;aACJ,OAAO,CAAC,QAAQ,IAAG;AAClB,YAAA,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC;AACjC,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAyC;AAC3D,YAAA,MAAM,UAAU,GAAG,oBAAoB,CAAC,IAAI,CAAC;YAC7C,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,GAAG;YACvC,MAAM,KAAK,GAAG,CAAA,EAAG,UAAU,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,GAAG,CAAA,EAAA,EAAK,QAAQ,CAAA,CAAA,CAAG;AAC1D,YAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;;AAGlB,YAAA,IAAI,IAAI,KAAK,UAAU,EAAE;AACvB,gBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;AACjC,gBAAA,IAAI,QAAQ,IAAI,QAAQ,CAAC,WAAW,EAAE;AACpC,oBAAA,MAAM,UAAU,GAAG,QAAQ,CAAC,WAAW;oBACvC,MAAM,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,SAAS;oBACjD,SAAS,CAAC,IAAI,CAAC;AACb,wBAAA,MAAM,EAAE,IAAI;AACZ,wBAAA,MAAM,EAAE,YAAY;AACpB,wBAAA,KAAK,EAAE,QAAQ;wBACf,IAAI,EAAE,QAAQ;AACf,qBAAA,CAAC;gBACJ;qBAAO,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;AAC9C,oBAAA,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAG;AACrB,wBAAA,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW;wBAClC,MAAM,YAAY,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,SAAS;wBACjD,SAAS,CAAC,IAAI,CAAC;AACb,4BAAA,MAAM,EAAE,IAAI;AACZ,4BAAA,MAAM,EAAE,YAAY;AACpB,4BAAA,KAAK,EAAE,QAAQ;AACf,4BAAA,IAAI,EAAE,QAAQ;AACf,yBAAA,CAAC;AACJ,oBAAA,CAAC,CAAC;gBACJ;YACF;AACF,QAAA,CAAC,CAAC;AAEJ,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE;IACpC;AAEA,IAAA,cAAc,CAAC,OAAiB,EAAA;QAC9B,IAAI,OAAO,GAAG,aAAa;;AAG3B,QAAA,OAAO,CAAC,OAAO,CAAC,MAAM,IAAG;AACvB,YAAA,OAAO,IAAI,CAAA,GAAA,EAAM,MAAM,CAAC,IAAI,OAAO;YACnC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAA,IAAA,EAAO,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAChE,OAAO,IAAI,SAAS;AACtB,QAAA,CAAC,CAAC;;AAGF,QAAA,OAAO,CAAC,OAAO,CAAC,MAAM,IAAG;AACvB,YAAA,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,IAAG;AAClC,gBAAA,OAAO,IAAI,CAAA,GAAA,EAAM,QAAQ,CAAC,MAAM,CAAA,EAAA,EAAK,QAAQ,CAAC,IAAI,CAAA,EAAA,EAAK,QAAQ,CAAC,MAAM,CAAA,KAAA,EAAQ,QAAQ,CAAC,KAAK,KAAK;AACnG,YAAA,CAAC,CAAC;AACJ,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,OAAO;IAChB;AACD;;MC9HY,YAAY,CAAA;AACvB,IAAA,OAAO,cAAc,CAAC,OAMrB,EAAE,OAAwC,EAAE,EAAA;QAC3C,OAAO,WAAW,CAAC,QAAQ,CAAC;AAC1B,YAAA,EAAE,EAAE,eAAe;AACnB,YAAA,IAAI,EAAE,SAAkB;AACxB,YAAA,SAAS,EAAE,SAAS;AACpB,YAAA,KAAK,EAAE,eAAe;AACtB,YAAA,OAAO,EAAE,sCAAsC;AAC/C,YAAA,OAAO,EAAE;gBACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;AAC1B,gBAAA,KAAK,EAAE,OAAO,CAAA,GAAG,OAAO,CAAC,KAAK,CAAA,CAAE;gBAChC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC5C,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC;AAChD,gBAAA,aAAa,EAAE,OAAO,EAAE,aAAa,IAAI,IAAI;AAC9C,aAAA;AACD,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,GAAG,IAAI;AACR,SAAA,CAAC;IACJ;AACD;;AClBD;;AAEG;AACI,MAAM,0BAA0B,GAAyC;AAC9E,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;AACzE,IAAA,YAAY,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE;AAClF,IAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;AAC7E,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;AACrE,IAAA,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE;AACxE,IAAA,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;AACvE,IAAA,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;AACtE,IAAA,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;AAC5E,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;AACrE,IAAA,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;AACjE,IAAA,QAAQ,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE;AAChF,IAAA,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;AACxE,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;AACzE,IAAA,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE;AAC7E,IAAA,cAAc,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;AAC5E,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE;AAC1E,IAAA,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE;AAC/D,IAAA,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE;;AAGrE;;AAEG;AACI,MAAM,uBAAuB,GAAyB;AAC3D,IAAA,IAAI,EAAE,IAAI;AACV,IAAA,cAAc,EAAE,EAAE;AAClB,IAAA,SAAS,EAAE,QAAQ;;AAGrB;;AAEG;AACG,SAAU,iBAAiB,CAAC,YAAoB,EAAA;AACpD,IAAA,OAAO,0BAA0B,CAAC,YAAY,CAAC,IAAI;AACjD,QAAA,GAAG,uBAAuB;AAC1B,QAAA,cAAc,EAAE,YAAY;KAC7B;AACH;;AC/CA;;AAEG;AACH,SAAS,aAAa,CACpB,QAAmD,EACnD,QAAgB,EAChB,MAAc,EAAA;IAEd,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC;IAE/C,OAAO;AACL,QAAA,EAAE,EAAE,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE;AAC1B,QAAA,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,cAAc,EAAE,MAAM,CAAC,cAAc;AACrC,QAAA,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,MAAM;KACP;AACH;AAEA;;AAEG;MACU,iBAAiB,CAAA;AAC5B,IAAA,KAAK,CAAC,QAAkB,EAAA;QACtB,MAAM,KAAK,GAAiB,EAAE;AAE9B,QAAA,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAI;AACvD,YAAA,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAI;AAC7B,YAAA,OAAO,IAAI;QACb,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAI;YAC9B,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,UAAU,IAAI,EAAE,CAAC;AAClF,YAAA,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AAClB,QAAA,CAAC,CAAC;AAEF,QAAA,OAAO,KAAK;IACd;AACD;;AC5CD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"xxmachina-common-domain-builder.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/domain/builder/command/command.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.types.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/command-action/command-action.helpers.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/er/er.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/query/query.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/screen-item/notion-property-config.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/screen-item/screen-item.builder.ts","../../../../../packages/@xxmachina/common/src/lib/domain/builder/xxmachina-common-domain-builder.ts"],"sourcesContent":["import { Command, OpenApi } from '@xxmachina/common/domain/models';\n\nexport class CommandBuilder {\n buildFromOpenApi(openApi: OpenApi): Command[] {\n return Object.keys(openApi.getPaths()).flatMap((path) => {\n return openApi.getMethods(path).map((method, index: number) => ({\n id: openApi.getOperationId(path, method) ?? `cmd-${index}`,\n name: openApi.getSummary(path, method) ?? '',\n description: openApi.getDescription(path, method) ?? '',\n type: 'webApiRequest' as const,\n webApiRequest: {\n path: path,\n method: method.toLocaleUpperCase(),\n contentType: openApi.getContentType(path, method) as 'application/json' | 'multipart/form-data',\n responseContentType: openApi.getResponseContentType(path, method) as 'application/octet-stream' | 'unknown',\n bodySchema: openApi.getRequestBodySchema(path, method),\n serverUrl: openApi.getServerUrl(),\n apiJsonUrl: openApi.apiJsonUrl,\n security: openApi.getSecurity(path, method) ?? [],\n }\n }));\n });\n }\n}\n","import { CreateActionsOptions } from '@ng-atomic/core';\n\nexport enum ActionId {\n NAVIGATE_TO_COMMAND_PAGE = '[@xxmachina/common] Navigate To Command Page',\n EXECUTE_COMMAND = '[@xxmachina/common] Execute Command',\n}\n\nexport interface CommandActionFactoryOptions extends CreateActionsOptions {\n queryId?: string;\n confirm?: () => Promise<boolean> | boolean;\n}\n\nexport interface CommandActionPayload<P> {\n command: any;\n body: P;\n options?: {\n confirm?: () => Promise<boolean> | boolean;\n queryId?: string;\n };\n}\n","import { Action, createAction } from '@ng-atomic/core';\nimport { flatten } from 'flat';\nimport { omitBy } from 'lodash-es';\nimport { createNavigateAction } from '@ng-atomic/components/frames/app';\nimport { NavigationExtras } from '@angular/router';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { ActionId, CommandActionFactoryOptions, CommandActionPayload } from './command-action.types';\n\nexport class CommandActionsBuilder {\n private commands: Command[] = [];\n private options: CommandActionFactoryOptions = {};\n private item: any = null;\n private filterIds: string[] | null = null;\n private autoIds: string[] = [];\n\n private clone(): CommandActionsBuilder {\n const newFactory = new CommandActionsBuilder();\n newFactory.commands = [...this.commands];\n newFactory.options = { ...this.options };\n newFactory.item = this.item;\n newFactory.filterIds = this.filterIds ? [...this.filterIds] : null;\n newFactory.autoIds = [...this.autoIds];\n return newFactory;\n }\n\n setCommands(commands: Command[]): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.commands = [...commands];\n return newFactory;\n }\n\n setOptions(options: Partial<CommandActionFactoryOptions>): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.options = { ...this.options, ...options };\n return newFactory;\n }\n\n setItem(item: any): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.item = item;\n return newFactory;\n }\n\n setFilterIds(filterIds: (string | {id: string, auto: boolean})[] = []): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.filterIds = filterIds.map((id) => typeof id === 'string' ? id : id.id);\n newFactory.autoIds = filterIds.filter((id) => typeof id !== 'string' && id.auto).map((id) => (id as any).id);\n return newFactory;\n }\n\n setAutoIds(autoIds: string[]): CommandActionsBuilder {\n const newFactory = this.clone();\n newFactory.autoIds = autoIds;\n return newFactory;\n }\n\n private applyFilter(commands: Command[]): Command[] {\n if (!this.filterIds) return commands;\n return this.filterIds.map((id) => commands.find((command) => command.id === id)!)\n .filter((command) => !!command) as Command[];\n }\n\n buildAction(id: string): Action {\n const command = this.commands.find((command) => command.id === id);\n if (!command) throw new Error(`Command not found: ${id}`);\n const actionId = this.autoIds.includes(command.id)\n ? ActionId.EXECUTE_COMMAND\n : ActionId.NAVIGATE_TO_COMMAND_PAGE;\n const creator = createAction<CommandActionPayload<any>>(\n actionId,\n command.webApiRequest.bodySchema,\n { name: command.name, icon: this.options.icon || 'default', ...this.options }\n );\n\n return creator.create({\n command,\n body: this.item,\n options: { queryId: this.options.queryId, confirm: this.options.confirm }\n });\n }\n\n buildActions(item?: any, navigationExtras: NavigationExtras = {}, overwrite: Partial<Action> = {}): Action[] {\n const filteredCommands = this.applyFilter(this.commands);\n return filteredCommands.map((command) => {\n if (this.autoIds.includes(command.id)) {\n return createAction<CommandActionPayload<any>>(\n ActionId.EXECUTE_COMMAND,\n command.webApiRequest.bodySchema,\n { name: command.name, icon: this.options.icon || 'default' }\n ).create({\n command,\n body: this.item,\n options: { queryId: this.options.queryId, confirm: this.options.confirm }\n }, overwrite);\n } else {\n const data = omitBy(flatten<object, object>({data: this.item, queryId: this.options.queryId}), value => typeof value === 'undefined');\n return createNavigateAction(['commands', {skip: true}, command.id, data], navigationExtras, {\n name: command.name,\n icon: this.options.icon,\n ...overwrite,\n });\n }\n });\n }\n\n buildItemActions<T>(): (item: T) => Action[] {\n return (item: T) => this.setItem(item).buildActions();\n }\n}\n\n// Re-export types for backward compatibility\nexport { ActionId, CommandActionFactoryOptions, CommandActionPayload } from './command-action.types';\n","import { Action } from '@ng-atomic/core';\nimport { NavigationExtras } from '@angular/router';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { CommandActionsBuilder } from './command-action.builder';\nimport { CommandActionFactoryOptions } from './command-action.types';\n\n/**\n * コマンド用のナビゲーションアクションを作成\n */\nexport function createCommandNavigateAction(\n command: Command,\n navigationExtras: NavigationExtras = {},\n item: any = {},\n options: CommandActionFactoryOptions = {},\n overwrite: Partial<Action> = {}\n): Action | null {\n if (!command) return null;\n return new CommandActionsBuilder()\n .setItem(item)\n .setCommands([command])\n .setOptions(options)\n .setFilterIds([command.id])\n .buildActions(item, navigationExtras, overwrite)[0];\n}\n\n/**\n * コマンド用の実行アクションを作成\n */\nexport function createCommandExecutionAction(\n command: Command,\n item: any = {},\n options: CommandActionFactoryOptions = {},\n overwrite: Partial<Action> = {}\n): Action | null {\n if (!command) return null;\n return new CommandActionsBuilder()\n .setItem(item)\n .setCommands([command])\n .setOptions(options)\n .setFilterIds([command.id])\n .setAutoIds([command.id])\n .buildActions(item, undefined, overwrite)[0];\n}\n","interface Schema {\n name: string;\n fields: string[];\n relations: Relation[];\n}\n\ninterface Relation {\n source: string;\n target: string;\n label?: string;\n type?: string; // 例: \"||--o{\"\n}\n\nconst NOTION_PROP_TYPE_MAP = {\n people: 'string',\n unique_id: 'string',\n rich_text: 'string',\n title: 'string',\n text: 'string',\n number: 'number',\n select: 'enum',\n status: 'enum',\n multi_select: 'string',\n date: 'date',\n person: 'string',\n files: 'string',\n checkbox: 'boolean',\n url: 'string',\n email: 'string',\n phone_number: 'string',\n relation: 'string',\n rollup: 'string',\n created_time: 'date',\n created_by: 'string',\n last_edited_time: 'date',\n last_edited_by: 'string',\n};\n\nconst NOTION_KEY_MAP = {\n 'relation': 'FK',\n 'unique_id': 'UK',\n}\n\nexport class ErBuilder {\n build(databases: any[]): string {\n const schemas: Schema[] = [];\n const dbIdToName = databases.reduce((acc: Record<string, string>, db: any) => ({\n ...acc,\n [db.id]: db?.title?.[0]?.plain_text\n }), {});\n for (const database of databases) {\n const schema = this.parseDatabaseSchema(database, database?.title?.[0]?.plain_text, dbIdToName);\n schemas.push(schema);\n }\n return this.buildMermaidER(schemas);\n }\n\n parseDatabaseSchema(\n database: any,\n name = '',\n map: { [key: string]: string } = {},\n ): Schema {\n const properties = database.properties;\n const fields: string[] = [];\n const relations: Relation[] = [];\n \n Object.keys(properties)\n .filter(propName => {\n if (['formula', 'rollup', 'button'].includes(properties[propName].type)) return false;\n return true;\n })\n .sort()\n .forEach(propName => {\n const prop = properties[propName];\n const type = prop.type as keyof typeof NOTION_PROP_TYPE_MAP;\n const mappedType = NOTION_PROP_TYPE_MAP[type];\n const key = (NOTION_KEY_MAP as Record<string, string>)[type] ?? ' ';\n const field = `${mappedType} ${type} ${key} \"${propName}\"`;\n fields.push(field);\n \n // リレーションシップの解析\n if (type === 'relation') {\n const relation = prop['relation'];\n if (relation && relation.database_id) {\n const targetDbId = relation.database_id;\n const targetDbName = map[targetDbId] || 'Unknown';\n relations.push({\n source: name,\n target: targetDbName,\n label: propName,\n type: '||--||', // リレーションのタイプを適宜設定\n });\n } else if (relation && Array.isArray(relation)) {\n relation.forEach(rel => {\n const targetDbId = rel.database_id;\n const targetDbName = map[targetDbId] || 'Unknown';\n relations.push({\n source: name,\n target: targetDbName,\n label: propName,\n type: '||--o{',\n });\n });\n }\n }\n });\n \n return { name, fields, relations };\n }\n\n buildMermaidER(schemas: Schema[]): string {\n let mermaid = 'erDiagram\\n';\n \n // エンティティの定義\n schemas.forEach(schema => {\n mermaid += ` \"${schema.name}\" {\\n`;\n mermaid += schema.fields.map(field => ` ${field}`).join('\\n');\n mermaid += '\\n }\\n';\n });\n \n // リレーションシップの定義\n schemas.forEach(schema => {\n schema.relations.forEach(relation => {\n mermaid += ` \"${relation.source}\" ${relation.type} \"${relation.target}\" : \"${relation.label}\"\\n`;\n });\n });\n \n return mermaid;\n }\n}","import { message } from \"@nx-ddd/common\";\nimport { Query, QueryHelper } from \"@xxmachina/common/domain/models\";\nimport type { Dayjs } from \"dayjs\";\n\nexport class QueryBuilder {\n static buildByGraphql(graphql: {\n endpoint: string;\n query: string;\n headers: Record<string, string>;\n variables: Record<string, any>;\n transformerTs?: string;\n }, meta: Partial<Omit<Query, 'graphql'>> = {}): Query {\n return QueryHelper.tryParse({\n id: 'builded_query',\n type: 'graphql' as const,\n projectId: 'default',\n title: 'Builded Query',\n summary: 'This query was built by QueryBuilder',\n graphql: {\n endpoint: graphql.endpoint,\n query: message`${graphql.query}`,\n headersJson: JSON.stringify(graphql.headers),\n variablesJson: JSON.stringify(graphql.variables),\n transformerTs: (graphql?.transformerTs ?? null) as unknown as string,\n },\n createdAt: null as unknown as Dayjs,\n updatedAt: null as unknown as Dayjs,\n ...meta,\n });\n }\n}\n","import { ScreenItem } from '@xxmachina/common/domain/models';\n\n/**\n * Notionプロパティタイプ別の設定マッピング\n */\nexport interface NotionPropertyConfig {\n type: ScreenItem['type'];\n notionPropType: string;\n valueType: ScreenItem['valueType'];\n}\n\n/**\n * Notionプロパティタイプから画面項目設定へのマッピング\n */\nexport const NOTION_PROPERTY_CONFIG_MAP: Record<string, NotionPropertyConfig> = {\n select: { type: '入力(単一選択)', notionPropType: 'セレクト', valueType: 'string' },\n multi_select: { type: '入力(複数選択)', notionPropType: 'マルチセレクト', valueType: 'string' },\n relation: { type: '入力(単一選択)', notionPropType: 'リレーション', valueType: 'string' },\n rollup: { type: '表示', notionPropType: 'ロールアップ', valueType: 'string' },\n unique_id: { type: '表示', notionPropType: 'ユニークID', valueType: 'string' },\n created_time: { type: '表示', notionPropType: '作成日時', valueType: 'date' },\n created_by: { type: '表示', notionPropType: '作成者', valueType: 'string' },\n rich_text: { type: '入力(テキスト)', notionPropType: 'テキスト', valueType: 'string' },\n number: { type: '入力(数値)', notionPropType: '数値', valueType: 'number' },\n date: { type: '入力(日時)', notionPropType: '日時', valueType: 'date' },\n checkbox: { type: '入力(複数選択)', notionPropType: 'チェックボックス', valueType: 'boolean' },\n title: { type: '入力(テキスト)', notionPropType: 'タイトル', valueType: 'string' },\n people: { type: '入力(単一選択)', notionPropType: 'ユーザー', valueType: 'string' },\n last_edited_time: { type: '表示', notionPropType: '最終更新日時', valueType: 'date' },\n last_edited_by: { type: '表示', notionPropType: '最終更新者', valueType: 'string' },\n status: { type: '入力(単一選択)', notionPropType: 'ステータス', valueType: 'string' },\n formula: { type: '表示', notionPropType: '数式', valueType: 'any' },\n button: { type: 'ボタン', notionPropType: 'ボタン', valueType: 'string' },\n};\n\n/**\n * デフォルト設定(未知のプロパティタイプ用)\n */\nexport const DEFAULT_PROPERTY_CONFIG: NotionPropertyConfig = {\n type: '不明',\n notionPropType: '',\n valueType: 'string',\n};\n\n/**\n * プロパティタイプから設定を取得\n */\nexport function getPropertyConfig(propertyType: string): NotionPropertyConfig {\n return NOTION_PROPERTY_CONFIG_MAP[propertyType] ?? {\n ...DEFAULT_PROPERTY_CONFIG,\n notionPropType: propertyType,\n };\n}\n","import { ScreenItem } from '@xxmachina/common/domain/models';\nimport type { GetDatabaseResponse } from '@notionhq/client/build/src/api-endpoints';\nimport { Database } from '@xxmachina/common/domain/models';\nimport { getPropertyConfig } from './notion-property-config';\n\n/**\n * Notionプロパティから画面項目を構築\n */\nfunction buildPageItem(\n property: GetDatabaseResponse['properties'][string],\n propName: string,\n dbName: string,\n): ScreenItem {\n const config = getPropertyConfig(property.type);\n\n return {\n id: property?.['id'] ?? '',\n name: propName,\n type: config.type,\n notionPropType: config.notionPropType,\n formula: '',\n valueType: config.valueType,\n dbName,\n };\n}\n\n/**\n * データベースから画面項目リストを構築するビルダー\n */\nexport class ScreenItemBuilder {\n build(database: Database): ScreenItem[] {\n const items: ScreenItem[] = [];\n\n Object.entries(database?.properties ?? {}).sort((a, b) => {\n return a[0].localeCompare(b[0]);\n }).filter(([propName, prop]) => {\n return true;\n }).forEach(([propName, prop]) => {\n const item = buildPageItem(prop, propName, database?.title?.[0]?.plain_text ?? '');\n items.push(item);\n });\n\n return items;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,7 @@ __decorate([
|
|
|
35
35
|
IsString(),
|
|
36
36
|
Nullable(),
|
|
37
37
|
IsOptional(),
|
|
38
|
-
__metadata("design:type",
|
|
38
|
+
__metadata("design:type", Object)
|
|
39
39
|
], Assistant.prototype, "description", void 0);
|
|
40
40
|
__decorate([
|
|
41
41
|
IsString(),
|
|
@@ -682,6 +682,7 @@ class ResourceHelper {
|
|
|
682
682
|
else if (resource.type === 'graphql') {
|
|
683
683
|
return resource?.graphql?.url ?? '';
|
|
684
684
|
}
|
|
685
|
+
return '';
|
|
685
686
|
}
|
|
686
687
|
}
|
|
687
688
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-domain-models.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/domain/models/agent/assistant.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/bookmarklet/bookmarklet.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/command/command.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/endpoint/endpoint.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/command/command.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/database/database.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/links/google/google.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/openapi/openapi.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/operators/base.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/operators/assistants/base.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/project.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query-validation.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query-result.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/resource/resource.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/resource/resource.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/scheduler/schedule.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/transformer/transformer.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/xxmachina-common-domain-models.ts"],"sourcesContent":["import { IsOptional, IsString } from \"class-validator\";\nimport { Nullable } from \"class-validator-extended\";\n\nexport class Assistant {\n id: string;\n @IsString() @IsOptional() model?: string;\n @IsString() @IsOptional() name?: string;\n @IsString() @Nullable() @IsOptional() description: string | null;\n @IsString() @IsOptional() instructions?: string;\n isPublic: boolean;\n sheetUrl: string;\n}\n","import { Firestore } from '@nx-ddd/firestore';\nimport dayjs from 'dayjs';\n\nexport class Bookmarklet {\n @Firestore.ID() id: string;\n @Firestore.String() title: string;\n @Firestore.String() code: string;\n\n @Firestore.String() userId: string;\n\n @Firestore.Timestamp() createdAt: dayjs.Dayjs;\n @Firestore.Timestamp() updatedAt: dayjs.Dayjs;\n}","import { Domain } from \"@nx-ddd/common/domain\";\n\nexport class WebApiRequest {\n @Domain.Lang('contentType') contentType: 'application/json' | 'multipart/form-data';\n responseContentType: 'application/octet-stream' | 'unknown';\n @Domain.Lang('サーバーURL') serverUrl: string;\n @Domain.Lang('OpenAPI URL') apiJsonUrl: string;\n @Domain.Lang('パス') path: string;\n @Domain.Lang('メソッド') method: string;\n @Domain.Lang('セキュリティ') security: Record<string, string[]>[];\n bodySchema: any;\n}\n\nexport class WebAPiRequestCommand {\n id: string;\n name: any;\n @Domain.Lang('説明') description: string;\n type: 'webApiRequest';\n webApiRequest: WebApiRequest;\n}\n\nexport type Command = WebAPiRequestCommand;","export class EndpointHelper {\n static extract(endpoint: string): string[] {\n if (!endpoint) return [];\n console.debug('[CommandPage] endpoint:', endpoint);\n return (endpoint.match(/{(\\w+)}/g) || []).map(key => key.slice(1, -1));\n }\n \n static resolve(endpoint: string, params: Record<string, string>): string {\n return endpoint.replace(/{(\\w+)}/g, (_, key) => {\n if (params[key] === undefined) {\n throw new Error(`Missing parameter: ${key}`);\n }\n return params[key];\n });\n }\n}\n","import { Command } from \"./command\";\nimport { EndpointHelper } from '../endpoint';\n\nfunction join(...paths: string[]): string {\n return paths.map(path => path.replace(/(^\\/|\\/$)/g, '')).join('/');\n}\n\nexport class CommandHelper {\n static resolveEndpoint(command: Command, params: Record<string, string>): string {\n console.debug('CommandHelper.resolveEndpoint', command, params);\n return EndpointHelper.resolve(join(command.webApiRequest.serverUrl || '', command.webApiRequest.path), params);\n }\n}\n","export class Database {\n id: string;\n title: any;\n path?: string;\n properties: Record<string, any>;\n}\n","import { Firestore } from \"@nx-ddd/firestore\";\n\nexport class GoogleCredential {\n @Firestore.String() accessToken: string;\n @Firestore.String() idToken: string;\n @Firestore.String() refreshToken: string;\n @Firestore.Number() expiresIn: number;\n @Firestore.String() photoUrl: string;\n}\n\nexport class Google {\n @Firestore.ID() readonly id: 'google' = 'google';\n @Firestore.String() userId: string;\n @Firestore.Map(() => GoogleCredential) credential: GoogleCredential;\n}\n","import { get } from 'lodash-es';\nimport { JsonSchema } from 'json-schema-library';\nimport { OpenAPISchema } from './openapi.schema';\n\nexport class OpenApi {\n constructor(\n private openApi: OpenAPISchema & { apiJsonUrl: string },\n ) {}\n\n get apiJsonUrl(): string {\n return this.openApi.apiJsonUrl;\n }\n\n getMethods(path: string) {\n return OpenApiHelper.getMethods(this.openApi, path);\n }\n\n getMethod(path: string, method: string) {\n return OpenApiHelper.getMethod(this.openApi, path, method);\n }\n\n getContentType(path: string, method: string): string {\n return OpenApiHelper.getContentType(this.openApi, path, method);\n }\n\n getSummary(path: string, method: string) {\n return OpenApiHelper.getSummary(this.openApi, path, method);\n }\n\n getDescription(path: string, method: string) {\n return get(this.openApi, ['paths', path, method, 'description']);\n }\n\n getSecurity(path: string, method: string) {\n return get(this.openApi, ['paths', path, method, 'security']);\n }\n\n getRequestBodySchema(path: string, method: string, contentType: string = this.getContentType(path, method)) {\n return OpenApiHelper.getRequestBodySchema(this.openApi, path, method, contentType);\n }\n\n getResponseContentType(path: string, method: string) {\n return Object.keys(get(this.openApi, ['paths', path, method, 'responses', '200', 'content']) ?? {})[0];\n }\n\n getOperationId(path: string, method: string) {\n return OpenApiHelper.getOperationId(this.openApi, path, method);\n }\n\n getEndpoints(): string[] {\n return OpenApiHelper.getEndpoints(this.openApi);\n }\n\n getPaths(): Record<string, any> {\n return OpenApiHelper.getPaths(this.openApi);\n }\n\n getServerUrl(): string {\n return this.openApi?.servers?.[0]?.url;\n // ?? (this.openApi. as string).replace(/\\/api-json$/, '/api'),\n }\n}\n\nexport class OpenApiHelper {\n static getContentType(openApi: JsonSchema, endpoint: string, method: string): string {\n return Object.keys(get(openApi, ['paths', endpoint, method, 'requestBody', 'content']) ?? {})?.[0] ?? null;\n }\n\n static getSummary(openApi: JsonSchema, endpoint: string, method: string): string {\n return get(openApi, ['paths', endpoint, method, 'summary'])\n }\n\n static getOperationId(openApi: JsonSchema, endpoint: string, method: string): string {\n return get(openApi, ['paths', endpoint, method, 'operationId']);\n }\n\n static getParameters(openApi: JsonSchema, endpoint: string, method: string): JsonSchema[] {\n return get(openApi, ['paths', endpoint, method, 'parameters']);\n }\n\n static getRequestBodySchema(\n openApi: JsonSchema,\n endpoint: string,\n method: string,\n contentType: string = this.getContentType(openApi, endpoint, method),\n ): JsonSchema {\n return get(openApi, ['paths', endpoint, method, 'requestBody', 'content', contentType, 'schema']) ?? 'unkown';\n }\n\n static getMethod(openApi: JsonSchema, endpoint: string, method: string): JsonSchema {\n return get(openApi, ['paths', endpoint, method]);\n }\n\n static getMethods(openApi: JsonSchema, endpoint: string): string[] {\n return Object.keys(get(openApi, ['paths', endpoint]) ?? {});\n }\n\n static getEndpoints(openApi: JsonSchema): string[] {\n return Object.keys(OpenApiHelper.getPaths(openApi));\n }\n\n static getPaths(openApi: JsonSchema): Record<string, any> {\n return get(openApi, 'paths') ?? {};\n }\n}\n\n","export enum OperatorType {\n ASSISTANT = 'assistant',\n SYSTEM = 'system',\n WORKFLOW = 'workflow',\n}\n\nexport interface Operator {\n id: string;\n type: OperatorType;\n \n name: string;\n description: string;\n\n inputInterfaceId: string;\n outputInterfaceId: string; \n}\n","import { Operator, OperatorType } from '../base';\n\nexport interface AssistantOperator extends Operator {\n type: OperatorType.ASSISTANT;\n}\n\nexport const GRAPHQL_QUERY_MAKER: AssistantOperator = {\n id: 'graphql-query-maker',\n type: OperatorType.ASSISTANT,\n name: 'graphql-query-maker',\n description: 'Make a graphql query',\n inputInterfaceId: 'interfaces:default:plain',\n outputInterfaceId: 'interfaces:default:graphql',\n}\n","export enum AiType {\n OPEN_AI = 'openai',\n AZURE_OPEN_AI = 'azureopenai',\n}\n\nexport interface OpenAiConfig {\n apiKey: string;\n}\n\nexport interface AzureOpenAiConfig {\n baseUrl: string;\n token: string;\n}\n\nexport interface AiConfig {\n type: AiType;\n config: OpenAiConfig | AzureOpenAiConfig;\n}\n\nexport interface Settings {\n ai: AiConfig;\n}\n\nexport interface Project {\n id: string;\n settings: Settings;\n}\n","import { gql } from 'apollo-angular';\nimport { Query } from './query';\n\n/**\n * クエリのバリデーション関連ヘルパー\n */\nexport class QueryValidationHelper {\n static validate(query: Query): boolean {\n if (query.graphql.endpoint === '') return false;\n return this.validateGraphqlQuery(query.graphql.query);\n }\n\n static validateGraphqlQuery(query: string): boolean {\n try {\n gql`${query}`;\n return true;\n } catch (error) {\n return false;\n }\n }\n\n static tryParseJson(value: string, fallback: any = {}) {\n try {\n return JSON.parse(value);\n } catch (error) {\n return fallback;\n }\n }\n\n static isParseableJson(value: string): boolean {\n try {\n JSON.parse(value);\n return true;\n } catch (error) {\n return false;\n }\n }\n\n static isExecutableGetSchemaGraphql(query: Query): boolean {\n return !!query?.graphql?.endpoint && QueryValidationHelper.isParseableJson(query?.graphql?.headersJson);\n }\n}\n","import { extractDisplayFields } from '@xxmachina/common/utils';\nimport { createCompoundSchema } from 'genson-js';\nimport { DocumentNode, FieldDefinitionNode, ObjectTypeDefinitionNode } from 'graphql';\nimport { camelCase } from 'lodash-es';\nimport { deepSnakeToCamelCase } from '@nx-ddd/hasura';\nimport { Query } from './query';\n\n/**\n * クエリ結果処理関連ヘルパー\n */\nexport class QueryResultHelper {\n static getResult(result, key: string = Object.keys(result)[0]) {\n return deepSnakeToCamelCase(result[key][0]);\n }\n\n static getResultErrors(result) {\n return result.errors;\n }\n\n static throwResultError(result) {\n if (result.errors) {\n throw new Error(result.errors[0].message);\n }\n }\n\n static mapFieldsToColumns(ast: DocumentNode): Record<string, Record<string, string>> {\n const typeMappings: Record<string, Record<string, string>> = {};\n\n ast.definitions.forEach(def => {\n if (def.kind === 'ObjectTypeDefinition') {\n const typeDef = def as ObjectTypeDefinitionNode;\n const typeName = typeDef.name.value;\n const fields = typeDef.fields || [];\n\n typeMappings[typeName] = {};\n\n fields.forEach((field: FieldDefinitionNode) => {\n const fieldName = field.name.value;\n const columnName = camelCase(fieldName);\n typeMappings[typeName][fieldName] = columnName;\n });\n }\n });\n\n return typeMappings;\n }\n\n static snakeToCamelObject(obj: any) {\n if (obj === null || typeof obj !== 'object') return obj;\n if (Array.isArray(obj)) return obj.map(QueryResultHelper.snakeToCamelObject);\n return Object.fromEntries(\n Object.entries(obj).map(([key, value]) => {\n if (key.startsWith('__')) return [key, value];\n return [\n key.replace(/_([a-z0-9])/g, (_, c) => c.toUpperCase()),\n QueryResultHelper.snakeToCamelObject(value),\n ];\n })\n );\n }\n\n static parseResult<T = any>(result: {data: Record<string, T[]>, errors?: any[]}): Record<string, T[]> {\n const keys = Object.keys(result?.data || {});\n const map = keys.reduce((acc, key) => {\n const items = result?.data?.[key] || [];\n return { ...acc, [key]: QueryResultHelper.snakeToCamelObject(Array.isArray(items) ? items : [items]) }\n }, {});\n return map;\n }\n\n static extractColumnNames<T>(items: T[], childrenKey: string): string[] {\n console.debug('[extractColumnNames] items:', items);\n const schema = createCompoundSchema(items);\n if (!schema) return [];\n console.debug('[extractColumnNames] schema:', schema);\n const columnNames = extractDisplayFields(schema).filter(name => !name.endsWith('__typename'));\n console.debug('[extractColumnNames] columnNames:', columnNames);\n const results = [];\n if (childrenKey) {\n const primaryKey = columnNames[0];\n const excludeKeySet = new Set([primaryKey, childrenKey]);\n results.push(`__tree_${primaryKey}`);\n results.push(...columnNames.filter(name => !excludeKeySet.has(name)));\n } else {\n results.push(...columnNames);\n }\n return results;\n }\n\n /**\n * @deprecated\n */\n static convertToV2(query: Query): Query {\n if (query?.type === 'graphql') return query;\n return {\n id: query.id,\n projectId: query.projectId,\n type: 'graphql',\n title: query.title,\n summary: query.summary,\n graphql: {\n endpoint: (query as any).endpoint,\n query: (query as any).query,\n headersJson: (query as any).headersJson,\n variablesJson: (query as any).variablesJson,\n transformerTs: '',\n },\n createdAt: query.createdAt,\n updatedAt: query.updatedAt,\n };\n }\n}\n","import { Query } from './query';\nimport { merge, pick } from 'lodash-es';\nimport { parse, visit } from 'graphql';\nimport { QueryValidationHelper } from './query-validation.helper';\nimport { QueryResultHelper } from './query-result.helper';\n\n/**\n * クエリ操作のメインヘルパー\n * バリデーション・結果処理は専用ヘルパーに委譲\n */\nexport class QueryHelper {\n // Validation methods (delegated)\n static validate = QueryValidationHelper.validate.bind(QueryValidationHelper);\n static validateGraphqlQuery = QueryValidationHelper.validateGraphqlQuery.bind(QueryValidationHelper);\n static tryParseJson = QueryValidationHelper.tryParseJson.bind(QueryValidationHelper);\n static isParseableJson = QueryValidationHelper.isParseableJson.bind(QueryValidationHelper);\n static isExecutableGetSchemaGraphql = QueryValidationHelper.isExecutableGetSchemaGraphql.bind(QueryValidationHelper);\n\n // Result methods (delegated)\n static getResult = QueryResultHelper.getResult.bind(QueryResultHelper);\n static getResultErrors = QueryResultHelper.getResultErrors.bind(QueryResultHelper);\n static throwResultError = QueryResultHelper.throwResultError.bind(QueryResultHelper);\n static mapFieldsToColumns = QueryResultHelper.mapFieldsToColumns.bind(QueryResultHelper);\n static snakeToCamelObject = QueryResultHelper.snakeToCamelObject.bind(QueryResultHelper);\n static parseResult = QueryResultHelper.parseResult.bind(QueryResultHelper);\n static extractColumnNames = QueryResultHelper.extractColumnNames.bind(QueryResultHelper);\n static convertToV2 = QueryResultHelper.convertToV2.bind(QueryResultHelper);\n\n static setup(query: Query, partialVariables: object = {}): Query {\n const parsedQuery = this.tryParse(query);\n const variables = this.mergeVariables(parsedQuery.graphql.variables, partialVariables);\n return {\n ...parsedQuery,\n graphql: {\n ...parsedQuery?.graphql,\n variablesJson: JSON.stringify(variables, null, 2),\n variables,\n },\n };\n }\n\n static mergeVariables(variables: object, params: object): Record<string, any> {\n return merge(variables, pick(params, Object.keys(variables)));\n }\n\n static tryParse(query: Query): Query {\n const variables = QueryValidationHelper.tryParseJson(query.graphql.variablesJson);\n const headers = QueryValidationHelper.tryParseJson(query.graphql.headersJson);\n return {\n ...query,\n graphql: {\n ...query.graphql,\n variables,\n headers,\n },\n }\n }\n\n static overwrite(current: object, preVariables: object) {\n const overwrite = Object.entries(current).reduce((acc, [key, value]) => {\n if (!(key in preVariables)) return acc;\n const preValue = preVariables?.[key] ?? '';\n if (typeof preValue === 'string' && preValue.startsWith('%') && preValue.endsWith('%')) {\n acc[key] = `%${value}%`;\n } else if (typeof preValue === 'string' && preValue.startsWith('%')) {\n acc[key] = `%${value}`;\n } else if (typeof preValue === 'string' && preValue.endsWith('%')) {\n acc[key] = `${value}%`;\n } else if (typeof preValue === 'string') {\n acc[key] = `${value}`;\n } else if (Array.isArray(preValue)) {\n acc[key] = value ?? [];\n } else {\n acc[key] = value;\n }\n return acc;\n }, {});\n\n return Object.entries(overwrite).reduce((acc, [key, value]) => ({\n ...acc,\n [key]: value,\n }), {...preVariables} );\n }\n\n static buildTemp(query: Partial<Query>): Query {\n return merge({\n id: '',\n type: 'graphql',\n projectId: 'default',\n title: 'Temporary Query',\n summary: '',\n graphql: {\n endpoint: '',\n variablesJson: JSON.stringify({\n id: '$id',\n }, null, 2),\n headersJson: JSON.stringify({\n \"content-type\": \"application/json\",\n \"Authorization\": \"Bearer $MACHINA_AUTH_ACCESS_TOKEN\"\n }, null, 2),\n query: ``,\n },\n createdAt: undefined,\n updatedAt: undefined,\n }, query);\n }\n\n static pruneUnusedVariables(variables: object, query: string): object {\n if (!query?.trim()) return variables || {};\n const ast = parse(query);\n const used = new Set<string>();\n visit(ast, { Variable: (node) => used.add(node.name.value) });\n return Object.fromEntries(\n Object.entries(variables || {}).filter(([key]) => used.has(key))\n );\n }\n}\n","import { IsDayjs } from \"@nx-ddd/core\";\nimport { Firestore } from \"@nx-ddd/firestore\";\nimport { TransformToDayjs } from \"@nx-ddd/hasura\";\nimport { Hasura } from '@nx-ddd/hasura';\nimport { IsString, ValidateNested } from \"class-validator\";\nimport { Nullable, Optional } from \"class-validator-extended\";\nimport dayjs from \"dayjs\";\n\nexport class QueryGraphql<\n R extends object = any,\n D extends object = any\n> {\n @IsString() @Firestore.String() @Hasura.Text() endpoint: string;\n @IsString() @Firestore.String() @Hasura.Text() query: string;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() headersJson: string;\n headers?: Record<string, string>;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() variablesJson: string;\n variables?: Record<string, any>;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() transformerTs: string;\n @Optional() @IsString() transformer?: (data: D) => R;\n}\n\nexport class Query<\n R extends object = any,\n D extends object = any\n> {\n @IsString() @Firestore.String() @Hasura.Text() id: string;\n @IsString() @Firestore.String() @Hasura.Text() projectId: string;\n @IsString() @Firestore.String() @Hasura.Text() title: string;\n @IsString() @Firestore.String() @Hasura.Text() summary: string;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() type: 'rest' | 'graphql' | 'machina';\n\n @Optional() @ValidateNested() @Firestore.Map() @Hasura.JSON() graphql?: QueryGraphql<D, R>;\n\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() createdAt: dayjs.Dayjs;\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() updatedAt: dayjs.Dayjs;\n\n static fromParsedObject(object: Omit<Query, 'graphql' | 'createdAt' | 'updatedAt' | 'id'> & {\n graphql: Pick<QueryGraphql, 'endpoint' | 'query' | 'headers' | 'variables'> \n & Partial<Pick<QueryGraphql, 'transformer' | 'transformerTs'>>\n }): Query {\n return {\n ...object,\n id: null,\n graphql: {\n ...object.graphql,\n variablesJson: JSON.stringify(object.graphql?.variables ?? {}, null, 2),\n headersJson: JSON.stringify(object.graphql?.headers ?? {}, null, 2),\n transformerTs: object.graphql?.transformerTs,\n },\n createdAt: null,\n updatedAt: null,\n }\n }\n}\n","import { Resource } from \"./resource\";\n\nexport class ResourceHelper {\n static getDescription(resource: Resource): string {\n if (resource.type === 'openapi') {\n return resource?.openapi?.url ?? '';\n } else if (resource.type === 'graphql') {\n return resource?.graphql?.url ?? '';\n }\n }\n}\n","import { Domain, TransformToDayjs } from \"@nx-ddd/common/domain\";\nimport { IsDayjs } from \"@nx-ddd/core\";\nimport { Firestore } from \"@nx-ddd/firestore\";\nimport { Hasura } from \"@nx-ddd/hasura\";\nimport { Nullable, Optional } from \"class-validator-extended\";\nimport dayjs from 'dayjs';\n\n@Domain.Entity({name: 'リソース'})\nexport class Resource {\n @Domain.Lang('ID') @Firestore.String() @Hasura.Text() id: string;\n @Domain.Lang('プロジェクトID') @Firestore.String() @Hasura.Text() projectId: string;\n @Domain.Lang('名称') @Firestore.String() @Hasura.Text() name: string;\n @Domain.Lang('種別') @Firestore.String() @Hasura.Text() type: 'openapi' | 'graphql';\n @Domain.Lang('OpenAPI設定') @Optional() @Firestore.Map() @Hasura.JSON() openapi?: {\n url: string;\n }\n @Domain.Lang('GraphQL設定') @Optional() @Firestore.Map() @Hasura.JSON() graphql?: {\n url: string;\n }\n\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() @Hasura.Timestamp() createdAt: dayjs.Dayjs;\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() @Hasura.Timestamp() updatedAt: dayjs.Dayjs;\n}\n","import dayjs from 'dayjs';\nimport { IsOptional, IsString } from 'class-validator';\nimport { IsDayjs } from 'class-validator-extended';\nimport { TransformToDayjs } from '@nx-ddd/common/domain';\n\nexport class Schedule {\n @IsString() id: string;\n @IsString() calendarId: string;\n @IsString() @IsOptional() url: string;\n @IsString() name?: string;\n @IsString() color?: string;\n @IsDayjs() @TransformToDayjs() startAt: dayjs.Dayjs;\n @IsDayjs() @TransformToDayjs() endAt: dayjs.Dayjs;\n\n static from(params: Partial<Schedule>) {\n const schedule = new Schedule();\n Object.assign(schedule, {\n name: '',\n calendarId: 'primary',\n ...params\n });\n return schedule;\n }\n}\n\nexport function isConflict(a: Schedule, b: Schedule): boolean {\n if (a.startAt.isSame(b.endAt)) return false;\n if (a.endAt.isSame(b.startAt)) return false;\n if (a.startAt.isBefore(b.startAt) && a.endAt.isBefore(b.startAt)) return false;\n if (a.startAt.isAfter(b.endAt) && a.endAt.isAfter(b.endAt)) return false;\n return true;\n}\n\nexport class Calendar {\n id: string;\n name: string;\n color: string;\n\n static from(params: Partial<Calendar>) {\n const calendar = new Calendar();\n Object.assign(calendar, params);\n return calendar;\n }\n}\n\nexport function buildCalendarDate(dates: CalendarDate[]): CalendarDate[][] {\n const minDate = dates.reduce((min, date) => date.date.isBefore(min) ? date.date : min, dates[0].date);\n const maxDate = dates.reduce((max, date) => date.date.isAfter(max) ? date.date : max, dates[0].date);\n const startDate = minDate.clone().startOf('week');\n const endDate = maxDate.clone().endOf('week');\n // console.debug('startDate', startDate.format('YYYY/MM/DD'));\n // console.debug('endDate', endDate.format('YYYY/MM/DD'));\n const month = [];\n let date = startDate.clone();\n while (date.isBefore(endDate)) {\n const week: CalendarDate[] = [];\n for (let i = 0; i < 7; i++) {\n const found = dates.find(d => d.date.isSame(date, 'day'));\n week.push(found || {schedules: [], date: date.clone()});\n date = date.add(1, 'day');\n }\n month.push(week);\n }\n return month;\n}\n\nexport interface CalendarDate {\n schedules?: Schedule[];\n date: dayjs.Dayjs;\n}\n","import { Hasura } from \"@nx-ddd/hasura\";\nimport { Spec } from \"../spec\";\n\n@Hasura.Table('xxmachina_transformers')\nexport class Transformer {\n id: string;\n script: string;\n inputJsonSchema: object;\n outputJsonSchema: object;\n createdAt: Date;\n updatedAt: Date;\n\n specs: Spec[]\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TransformToDayjs","IsDayjs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-common-domain-models.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/domain/models/agent/assistant.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/bookmarklet/bookmarklet.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/command/command.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/endpoint/endpoint.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/command/command.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/database/database.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/links/google/google.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/openapi/openapi.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/operators/base.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/operators/assistants/base.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/project.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query-validation.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query-result.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/query/query.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/resource/resource.helper.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/resource/resource.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/scheduler/schedule.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/transformer/transformer.ts","../../../../../packages/@xxmachina/common/src/lib/domain/models/xxmachina-common-domain-models.ts"],"sourcesContent":["import { IsOptional, IsString } from \"class-validator\";\nimport { Nullable } from \"class-validator-extended\";\n\nexport class Assistant {\n id!: string;\n @IsString() @IsOptional() model?: string;\n @IsString() @IsOptional() name?: string;\n @IsString() @Nullable() @IsOptional() description!: string | null;\n @IsString() @IsOptional() instructions?: string;\n isPublic!: boolean;\n sheetUrl!: string;\n}\n","import { Firestore } from '@nx-ddd/firestore';\nimport dayjs from 'dayjs';\n\nexport class Bookmarklet {\n @Firestore.ID() id!: string;\n @Firestore.String() title!: string;\n @Firestore.String() code!: string;\n\n @Firestore.String() userId!: string;\n\n @Firestore.Timestamp() createdAt!: dayjs.Dayjs;\n @Firestore.Timestamp() updatedAt!: dayjs.Dayjs;\n}","import { Domain } from \"@nx-ddd/common/domain\";\n\nexport class WebApiRequest {\n @Domain.Lang('contentType') contentType!: 'application/json' | 'multipart/form-data';\n responseContentType!: 'application/octet-stream' | 'unknown';\n @Domain.Lang('サーバーURL') serverUrl!: string;\n @Domain.Lang('OpenAPI URL') apiJsonUrl!: string;\n @Domain.Lang('パス') path!: string;\n @Domain.Lang('メソッド') method!: string;\n @Domain.Lang('セキュリティ') security!: Record<string, string[]>[];\n bodySchema: any;\n}\n\nexport class WebAPiRequestCommand {\n id!: string;\n name: any;\n @Domain.Lang('説明') description!: string;\n type!: 'webApiRequest';\n webApiRequest!: WebApiRequest;\n}\n\nexport type Command = WebAPiRequestCommand;","export class EndpointHelper {\n static extract(endpoint: string): string[] {\n if (!endpoint) return [];\n console.debug('[CommandPage] endpoint:', endpoint);\n return (endpoint.match(/{(\\w+)}/g) || []).map(key => key.slice(1, -1));\n }\n \n static resolve(endpoint: string, params: Record<string, string>): string {\n return endpoint.replace(/{(\\w+)}/g, (_, key) => {\n if (params[key] === undefined) {\n throw new Error(`Missing parameter: ${key}`);\n }\n return params[key];\n });\n }\n}\n","import { Command } from \"./command\";\nimport { EndpointHelper } from '../endpoint';\n\nfunction join(...paths: string[]): string {\n return paths.map(path => path.replace(/(^\\/|\\/$)/g, '')).join('/');\n}\n\nexport class CommandHelper {\n static resolveEndpoint(command: Command, params: Record<string, string>): string {\n console.debug('CommandHelper.resolveEndpoint', command, params);\n return EndpointHelper.resolve(join(command.webApiRequest.serverUrl || '', command.webApiRequest.path), params);\n }\n}\n","export class Database {\n id!: string;\n title: any;\n path?: string;\n properties!: Record<string, any>;\n}\n","import { Firestore } from \"@nx-ddd/firestore\";\n\nexport class GoogleCredential {\n @Firestore.String() accessToken!: string;\n @Firestore.String() idToken!: string;\n @Firestore.String() refreshToken!: string;\n @Firestore.Number() expiresIn!: number;\n @Firestore.String() photoUrl!: string;\n}\n\nexport class Google {\n @Firestore.ID() readonly id: 'google' = 'google';\n @Firestore.String() userId!: string;\n @Firestore.Map(() => GoogleCredential) credential!: GoogleCredential;\n}\n","import { get } from 'lodash-es';\nimport { JsonSchema } from 'json-schema-library';\nimport { OpenAPISchema } from './openapi.schema';\n\nexport class OpenApi {\n constructor(\n private openApi: OpenAPISchema & { apiJsonUrl: string },\n ) {}\n\n get apiJsonUrl(): string {\n return this.openApi.apiJsonUrl;\n }\n\n getMethods(path: string) {\n return OpenApiHelper.getMethods(this.openApi, path);\n }\n\n getMethod(path: string, method: string) {\n return OpenApiHelper.getMethod(this.openApi, path, method);\n }\n\n getContentType(path: string, method: string): string {\n return OpenApiHelper.getContentType(this.openApi, path, method);\n }\n\n getSummary(path: string, method: string) {\n return OpenApiHelper.getSummary(this.openApi, path, method);\n }\n\n getDescription(path: string, method: string) {\n return get(this.openApi, ['paths', path, method, 'description']);\n }\n\n getSecurity(path: string, method: string) {\n return get(this.openApi, ['paths', path, method, 'security']);\n }\n\n getRequestBodySchema(path: string, method: string, contentType: string = this.getContentType(path, method)) {\n return OpenApiHelper.getRequestBodySchema(this.openApi, path, method, contentType);\n }\n\n getResponseContentType(path: string, method: string) {\n return Object.keys(get(this.openApi, ['paths', path, method, 'responses', '200', 'content']) ?? {})[0];\n }\n\n getOperationId(path: string, method: string) {\n return OpenApiHelper.getOperationId(this.openApi, path, method);\n }\n\n getEndpoints(): string[] {\n return OpenApiHelper.getEndpoints(this.openApi);\n }\n\n getPaths(): Record<string, any> {\n return OpenApiHelper.getPaths(this.openApi);\n }\n\n getServerUrl(): string {\n return this.openApi?.servers?.[0]?.url as string;\n // ?? (this.openApi. as string).replace(/\\/api-json$/, '/api'),\n }\n}\n\nexport class OpenApiHelper {\n static getContentType(openApi: JsonSchema, endpoint: string, method: string): string {\n return Object.keys(get(openApi, ['paths', endpoint, method, 'requestBody', 'content']) ?? {})?.[0] ?? null;\n }\n\n static getSummary(openApi: JsonSchema, endpoint: string, method: string): string {\n return get(openApi, ['paths', endpoint, method, 'summary'])\n }\n\n static getOperationId(openApi: JsonSchema, endpoint: string, method: string): string {\n return get(openApi, ['paths', endpoint, method, 'operationId']);\n }\n\n static getParameters(openApi: JsonSchema, endpoint: string, method: string): JsonSchema[] {\n return get(openApi, ['paths', endpoint, method, 'parameters']);\n }\n\n static getRequestBodySchema(\n openApi: JsonSchema,\n endpoint: string,\n method: string,\n contentType: string = this.getContentType(openApi, endpoint, method),\n ): JsonSchema {\n return get(openApi, ['paths', endpoint, method, 'requestBody', 'content', contentType, 'schema']) ?? 'unkown';\n }\n\n static getMethod(openApi: JsonSchema, endpoint: string, method: string): JsonSchema {\n return get(openApi, ['paths', endpoint, method]);\n }\n\n static getMethods(openApi: JsonSchema, endpoint: string): string[] {\n return Object.keys(get(openApi, ['paths', endpoint]) ?? {});\n }\n\n static getEndpoints(openApi: JsonSchema): string[] {\n return Object.keys(OpenApiHelper.getPaths(openApi));\n }\n\n static getPaths(openApi: JsonSchema): Record<string, any> {\n return get(openApi, 'paths') ?? {};\n }\n}\n\n","export enum OperatorType {\n ASSISTANT = 'assistant',\n SYSTEM = 'system',\n WORKFLOW = 'workflow',\n}\n\nexport interface Operator {\n id: string;\n type: OperatorType;\n \n name: string;\n description: string;\n\n inputInterfaceId: string;\n outputInterfaceId: string; \n}\n","import { Operator, OperatorType } from '../base';\n\nexport interface AssistantOperator extends Operator {\n type: OperatorType.ASSISTANT;\n}\n\nexport const GRAPHQL_QUERY_MAKER: AssistantOperator = {\n id: 'graphql-query-maker',\n type: OperatorType.ASSISTANT,\n name: 'graphql-query-maker',\n description: 'Make a graphql query',\n inputInterfaceId: 'interfaces:default:plain',\n outputInterfaceId: 'interfaces:default:graphql',\n}\n","export enum AiType {\n OPEN_AI = 'openai',\n AZURE_OPEN_AI = 'azureopenai',\n}\n\nexport interface OpenAiConfig {\n apiKey: string;\n}\n\nexport interface AzureOpenAiConfig {\n baseUrl: string;\n token: string;\n}\n\nexport interface AiConfig {\n type: AiType;\n config: OpenAiConfig | AzureOpenAiConfig;\n}\n\nexport interface Settings {\n ai: AiConfig;\n}\n\nexport interface Project {\n id: string;\n settings: Settings;\n}\n","import { gql } from 'apollo-angular';\nimport { Query } from './query';\n\n/**\n * クエリのバリデーション関連ヘルパー\n */\nexport class QueryValidationHelper {\n static validate(query: Query): boolean {\n if (query.graphql!.endpoint === '') return false;\n return this.validateGraphqlQuery(query.graphql!.query);\n }\n\n static validateGraphqlQuery(query: string): boolean {\n try {\n gql`${query}`;\n return true;\n } catch (error) {\n return false;\n }\n }\n\n static tryParseJson(value: string, fallback: any = {}) {\n try {\n return JSON.parse(value);\n } catch (error) {\n return fallback;\n }\n }\n\n static isParseableJson(value: string): boolean {\n try {\n JSON.parse(value);\n return true;\n } catch (error) {\n return false;\n }\n }\n\n static isExecutableGetSchemaGraphql(query: Query): boolean {\n return !!query?.graphql?.endpoint && QueryValidationHelper.isParseableJson(query?.graphql?.headersJson);\n }\n}\n","import { extractDisplayFields } from '@xxmachina/common/utils';\nimport { createCompoundSchema } from 'genson-js';\nimport { DocumentNode, FieldDefinitionNode, ObjectTypeDefinitionNode } from 'graphql';\nimport { camelCase } from 'lodash-es';\nimport { deepSnakeToCamelCase } from '@nx-ddd/hasura';\nimport { Query } from './query';\n\n/**\n * クエリ結果処理関連ヘルパー\n */\nexport class QueryResultHelper {\n static getResult(result: any, key: string = Object.keys(result)[0] as string) {\n return deepSnakeToCamelCase(result[key][0]);\n }\n\n static getResultErrors(result: any) {\n return result.errors;\n }\n\n static throwResultError(result: any) {\n if (result.errors) {\n throw new Error(result.errors[0].message);\n }\n }\n\n static mapFieldsToColumns(ast: DocumentNode): Record<string, Record<string, string>> {\n const typeMappings: Record<string, Record<string, string>> = {};\n\n ast.definitions.forEach(def => {\n if (def.kind === 'ObjectTypeDefinition') {\n const typeDef = def as ObjectTypeDefinitionNode;\n const typeName = typeDef.name.value;\n const fields = typeDef.fields || [];\n\n typeMappings[typeName] = {};\n\n fields.forEach((field: FieldDefinitionNode) => {\n const fieldName = field.name.value;\n const columnName = camelCase(fieldName);\n typeMappings[typeName][fieldName] = columnName;\n });\n }\n });\n\n return typeMappings;\n }\n\n static snakeToCamelObject(obj: any): any {\n if (obj === null || typeof obj !== 'object') return obj;\n if (Array.isArray(obj)) return obj.map(QueryResultHelper.snakeToCamelObject);\n return Object.fromEntries(\n Object.entries(obj).map(([key, value]): [string, any] => {\n if (key.startsWith('__')) return [key, value];\n return [\n key.replace(/_([a-z0-9])/g, (_, c) => c.toUpperCase()),\n QueryResultHelper.snakeToCamelObject(value),\n ];\n })\n );\n }\n\n static parseResult<T = any>(result: {data: Record<string, T[]>, errors?: any[]}): Record<string, T[]> {\n const keys = Object.keys(result?.data || {});\n const map = keys.reduce((acc, key) => {\n const items = result?.data?.[key] || [];\n return { ...acc, [key]: QueryResultHelper.snakeToCamelObject(Array.isArray(items) ? items : [items]) }\n }, {});\n return map;\n }\n\n static extractColumnNames<T>(items: T[], childrenKey: string): string[] {\n console.debug('[extractColumnNames] items:', items);\n const schema = createCompoundSchema(items);\n if (!schema) return [];\n console.debug('[extractColumnNames] schema:', schema);\n const columnNames = extractDisplayFields(schema).filter(name => !name.endsWith('__typename'));\n console.debug('[extractColumnNames] columnNames:', columnNames);\n const results = [];\n if (childrenKey) {\n const primaryKey = columnNames[0];\n const excludeKeySet = new Set([primaryKey, childrenKey]);\n results.push(`__tree_${primaryKey}`);\n results.push(...columnNames.filter(name => !excludeKeySet.has(name)));\n } else {\n results.push(...columnNames);\n }\n return results;\n }\n\n /**\n * @deprecated\n */\n static convertToV2(query: Query): Query {\n if (query?.type === 'graphql') return query;\n return {\n id: query.id,\n projectId: query.projectId,\n type: 'graphql',\n title: query.title,\n summary: query.summary,\n graphql: {\n endpoint: (query as any).endpoint,\n query: (query as any).query,\n headersJson: (query as any).headersJson,\n variablesJson: (query as any).variablesJson,\n transformerTs: '',\n },\n createdAt: query.createdAt,\n updatedAt: query.updatedAt,\n };\n }\n}\n","import { Query } from './query';\nimport { merge, pick } from 'lodash-es';\nimport { parse, visit } from 'graphql';\nimport { QueryValidationHelper } from './query-validation.helper';\nimport { QueryResultHelper } from './query-result.helper';\n\n/**\n * クエリ操作のメインヘルパー\n * バリデーション・結果処理は専用ヘルパーに委譲\n */\nexport class QueryHelper {\n // Validation methods (delegated)\n static validate = QueryValidationHelper.validate.bind(QueryValidationHelper);\n static validateGraphqlQuery = QueryValidationHelper.validateGraphqlQuery.bind(QueryValidationHelper);\n static tryParseJson = QueryValidationHelper.tryParseJson.bind(QueryValidationHelper);\n static isParseableJson = QueryValidationHelper.isParseableJson.bind(QueryValidationHelper);\n static isExecutableGetSchemaGraphql = QueryValidationHelper.isExecutableGetSchemaGraphql.bind(QueryValidationHelper);\n\n // Result methods (delegated)\n static getResult = QueryResultHelper.getResult.bind(QueryResultHelper);\n static getResultErrors = QueryResultHelper.getResultErrors.bind(QueryResultHelper);\n static throwResultError = QueryResultHelper.throwResultError.bind(QueryResultHelper);\n static mapFieldsToColumns = QueryResultHelper.mapFieldsToColumns.bind(QueryResultHelper);\n static snakeToCamelObject = QueryResultHelper.snakeToCamelObject.bind(QueryResultHelper);\n static parseResult = QueryResultHelper.parseResult.bind(QueryResultHelper);\n static extractColumnNames = QueryResultHelper.extractColumnNames.bind(QueryResultHelper);\n static convertToV2 = QueryResultHelper.convertToV2.bind(QueryResultHelper);\n\n static setup(query: Query, partialVariables: object = {}): Query {\n const parsedQuery = this.tryParse(query);\n const variables = this.mergeVariables(parsedQuery.graphql!.variables as object, partialVariables);\n return {\n ...parsedQuery,\n graphql: {\n ...parsedQuery?.graphql,\n variablesJson: JSON.stringify(variables, null, 2),\n variables,\n } as any,\n };\n }\n\n static mergeVariables(variables: object, params: object): Record<string, any> {\n return merge(variables, pick(params, Object.keys(variables)));\n }\n\n static tryParse(query: Query): Query {\n const variables = QueryValidationHelper.tryParseJson(query.graphql!.variablesJson);\n const headers = QueryValidationHelper.tryParseJson(query.graphql!.headersJson);\n return {\n ...query,\n graphql: {\n ...query.graphql,\n variables,\n headers,\n } as any,\n }\n }\n\n static overwrite(current: object, preVariables: object) {\n const overwrite = Object.entries(current).reduce((acc: Record<string, any>, [key, value]) => {\n if (!(key in preVariables)) return acc;\n const preValue = (preVariables as Record<string, any>)?.[key] ?? '';\n if (typeof preValue === 'string' && preValue.startsWith('%') && preValue.endsWith('%')) {\n acc[key] = `%${value}%`;\n } else if (typeof preValue === 'string' && preValue.startsWith('%')) {\n acc[key] = `%${value}`;\n } else if (typeof preValue === 'string' && preValue.endsWith('%')) {\n acc[key] = `${value}%`;\n } else if (typeof preValue === 'string') {\n acc[key] = `${value}`;\n } else if (Array.isArray(preValue)) {\n acc[key] = value ?? [];\n } else {\n acc[key] = value;\n }\n return acc;\n }, {});\n\n return Object.entries(overwrite).reduce((acc, [key, value]) => ({\n ...acc,\n [key]: value,\n }), {...preVariables} );\n }\n\n static buildTemp(query: Partial<Query>): Query {\n return merge({\n id: '',\n type: 'graphql',\n projectId: 'default',\n title: 'Temporary Query',\n summary: '',\n graphql: {\n endpoint: '',\n variablesJson: JSON.stringify({\n id: '$id',\n }, null, 2),\n headersJson: JSON.stringify({\n \"content-type\": \"application/json\",\n \"Authorization\": \"Bearer $MACHINA_AUTH_ACCESS_TOKEN\"\n }, null, 2),\n query: ``,\n },\n createdAt: undefined,\n updatedAt: undefined,\n }, query) as unknown as Query;\n }\n\n static pruneUnusedVariables(variables: object, query: string): object {\n if (!query?.trim()) return variables || {};\n const ast = parse(query);\n const used = new Set<string>();\n visit(ast, { Variable: (node) => used.add(node.name.value) });\n return Object.fromEntries(\n Object.entries(variables || {}).filter(([key]) => used.has(key))\n );\n }\n}\n","import { IsDayjs } from \"@nx-ddd/core\";\nimport { Firestore } from \"@nx-ddd/firestore\";\nimport { TransformToDayjs } from \"@nx-ddd/hasura\";\nimport { Hasura } from '@nx-ddd/hasura';\nimport { IsString, ValidateNested } from \"class-validator\";\nimport { Nullable, Optional } from \"class-validator-extended\";\nimport dayjs from \"dayjs\";\n\nexport class QueryGraphql<\n R extends object = any,\n D extends object = any\n> {\n @IsString() @Firestore.String() @Hasura.Text() endpoint!: string;\n @IsString() @Firestore.String() @Hasura.Text() query!: string;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() headersJson!: string;\n headers?: Record<string, string>;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() variablesJson!: string;\n variables?: Record<string, any>;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() transformerTs!: string;\n @Optional() @IsString() transformer?: (data: D) => R;\n}\n\nexport class Query<\n R extends object = any,\n D extends object = any\n> {\n @IsString() @Firestore.String() @Hasura.Text() id!: string;\n @IsString() @Firestore.String() @Hasura.Text() projectId!: string;\n @IsString() @Firestore.String() @Hasura.Text() title!: string;\n @IsString() @Firestore.String() @Hasura.Text() summary!: string;\n @Optional() @IsString() @Firestore.String() @Hasura.Text() type!: 'rest' | 'graphql' | 'machina';\n\n @Optional() @ValidateNested() @Firestore.Map() @Hasura.JSON() graphql?: QueryGraphql<D, R>;\n\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() createdAt!: dayjs.Dayjs;\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() updatedAt!: dayjs.Dayjs;\n\n static fromParsedObject(object: Omit<Query, 'graphql' | 'createdAt' | 'updatedAt' | 'id'> & {\n graphql: Pick<QueryGraphql, 'endpoint' | 'query' | 'headers' | 'variables'>\n & Partial<Pick<QueryGraphql, 'transformer' | 'transformerTs'>>\n }): Query {\n return {\n ...object,\n id: null as unknown as string,\n graphql: {\n ...object.graphql,\n variablesJson: JSON.stringify(object.graphql?.variables ?? {}, null, 2),\n headersJson: JSON.stringify(object.graphql?.headers ?? {}, null, 2),\n transformerTs: object.graphql?.transformerTs as string,\n },\n createdAt: null as unknown as dayjs.Dayjs,\n updatedAt: null as unknown as dayjs.Dayjs,\n }\n }\n}\n","import { Resource } from \"./resource\";\n\nexport class ResourceHelper {\n static getDescription(resource: Resource): string {\n if (resource.type === 'openapi') {\n return resource?.openapi?.url ?? '';\n } else if (resource.type === 'graphql') {\n return resource?.graphql?.url ?? '';\n }\n return '';\n }\n}\n","import { Domain, TransformToDayjs } from \"@nx-ddd/common/domain\";\nimport { IsDayjs } from \"@nx-ddd/core\";\nimport { Firestore } from \"@nx-ddd/firestore\";\nimport { Hasura } from \"@nx-ddd/hasura\";\nimport { Nullable, Optional } from \"class-validator-extended\";\nimport dayjs from 'dayjs';\n\n@Domain.Entity({name: 'リソース'})\nexport class Resource {\n @Domain.Lang('ID') @Firestore.String() @Hasura.Text() id!: string;\n @Domain.Lang('プロジェクトID') @Firestore.String() @Hasura.Text() projectId!: string;\n @Domain.Lang('名称') @Firestore.String() @Hasura.Text() name!: string;\n @Domain.Lang('種別') @Firestore.String() @Hasura.Text() type!: 'openapi' | 'graphql';\n @Domain.Lang('OpenAPI設定') @Optional() @Firestore.Map() @Hasura.JSON() openapi?: {\n url: string;\n }\n @Domain.Lang('GraphQL設定') @Optional() @Firestore.Map() @Hasura.JSON() graphql?: {\n url: string;\n }\n\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() @Hasura.Timestamp() createdAt!: dayjs.Dayjs;\n @Nullable() @Optional() @IsDayjs() @TransformToDayjs() @Firestore.Timestamp() @Hasura.Timestamp() updatedAt!: dayjs.Dayjs;\n}\n","import dayjs from 'dayjs';\nimport { IsOptional, IsString } from 'class-validator';\nimport { IsDayjs } from 'class-validator-extended';\nimport { TransformToDayjs } from '@nx-ddd/common/domain';\n\nexport class Schedule {\n @IsString() id!: string;\n @IsString() calendarId!: string;\n @IsString() @IsOptional() url!: string;\n @IsString() name?: string;\n @IsString() color?: string;\n @IsDayjs() @TransformToDayjs() startAt!: dayjs.Dayjs;\n @IsDayjs() @TransformToDayjs() endAt!: dayjs.Dayjs;\n\n static from(params: Partial<Schedule>) {\n const schedule = new Schedule();\n Object.assign(schedule, {\n name: '',\n calendarId: 'primary',\n ...params\n });\n return schedule;\n }\n}\n\nexport function isConflict(a: Schedule, b: Schedule): boolean {\n if (a.startAt.isSame(b.endAt)) return false;\n if (a.endAt.isSame(b.startAt)) return false;\n if (a.startAt.isBefore(b.startAt) && a.endAt.isBefore(b.startAt)) return false;\n if (a.startAt.isAfter(b.endAt) && a.endAt.isAfter(b.endAt)) return false;\n return true;\n}\n\nexport class Calendar {\n id!: string;\n name!: string;\n color!: string;\n\n static from(params: Partial<Calendar>) {\n const calendar = new Calendar();\n Object.assign(calendar, params);\n return calendar;\n }\n}\n\nexport function buildCalendarDate(dates: CalendarDate[]): CalendarDate[][] {\n const minDate = dates.reduce((min, date) => date.date.isBefore(min) ? date.date : min, dates[0].date);\n const maxDate = dates.reduce((max, date) => date.date.isAfter(max) ? date.date : max, dates[0].date);\n const startDate = minDate.clone().startOf('week');\n const endDate = maxDate.clone().endOf('week');\n // console.debug('startDate', startDate.format('YYYY/MM/DD'));\n // console.debug('endDate', endDate.format('YYYY/MM/DD'));\n const month = [];\n let date = startDate.clone();\n while (date.isBefore(endDate)) {\n const week: CalendarDate[] = [];\n for (let i = 0; i < 7; i++) {\n const found = dates.find(d => d.date.isSame(date, 'day'));\n week.push(found || {schedules: [], date: date.clone()});\n date = date.add(1, 'day');\n }\n month.push(week);\n }\n return month;\n}\n\nexport interface CalendarDate {\n schedules?: Schedule[];\n date: dayjs.Dayjs;\n}\n","import { Hasura } from \"@nx-ddd/hasura\";\nimport { Spec } from \"../spec\";\n\n@Hasura.Table('xxmachina_transformers')\nexport class Transformer {\n id!: string;\n script!: string;\n inputJsonSchema!: object;\n outputJsonSchema!: object;\n createdAt!: Date;\n updatedAt!: Date;\n\n specs!: Spec[]\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TransformToDayjs","IsDayjs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-infra-converters-google.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/converters/google/google.converter.ts","../../../../../packages/@xxmachina/common/src/lib/infra/converters/google/xxmachina-common-infra-converters-google.ts"],"sourcesContent":["import { Google } from \"@xxmachina/common/domain/models\";\nimport { Injectable } from \"@angular/core\";\nimport { FirestoreAdapter } from \"@nx-ddd/firestore\";\nimport { IFirestoreConverter } from \"@nx-ddd/firestore\";\nimport { DocumentSnapshot } from \"@nx-ddd/firestore\";\n\n@Injectable({providedIn: 'root'})\nexport class GoogleConverter implements IFirestoreConverter<Google> {\n constructor(\n private adapter: FirestoreAdapter,\n ) {}\n\n fromFirestore(doc): Google {\n return this.adapter.fromFirestore({\n id: doc.id,\n ...doc.data(),\n }, Google) as Google;\n }\n\n fromFirestoreMany(docs: DocumentSnapshot<any>[]): Google[] {\n return docs.map(doc => this.fromFirestore(doc));\n }\n\n toFirestore(data: Google): Google {\n return this.adapter.toFirestore({\n id: data.id,\n credential: data.credential,\n }, Google) as Google;\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAOa,eAAe,CAAA;AAEhB,IAAA,OAAA;AADV,IAAA,WAAA,CACU,OAAyB,EAAA;QAAzB,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AAEH,IAAA,aAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"xxmachina-common-infra-converters-google.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/converters/google/google.converter.ts","../../../../../packages/@xxmachina/common/src/lib/infra/converters/google/xxmachina-common-infra-converters-google.ts"],"sourcesContent":["import { Google } from \"@xxmachina/common/domain/models\";\nimport { Injectable } from \"@angular/core\";\nimport { FirestoreAdapter } from \"@nx-ddd/firestore\";\nimport { IFirestoreConverter } from \"@nx-ddd/firestore\";\nimport { DocumentSnapshot } from \"@nx-ddd/firestore\";\n\n@Injectable({providedIn: 'root'})\nexport class GoogleConverter implements IFirestoreConverter<Google> {\n constructor(\n private adapter: FirestoreAdapter,\n ) {}\n\n fromFirestore(doc: DocumentSnapshot<any>): Google {\n return this.adapter.fromFirestore({\n id: doc.id,\n ...doc.data(),\n }, Google) as Google;\n }\n\n fromFirestoreMany(docs: DocumentSnapshot<any>[]): Google[] {\n return docs.map(doc => this.fromFirestore(doc));\n }\n\n toFirestore(data: Google): Google {\n return this.adapter.toFirestore({\n id: data.id,\n credential: data.credential,\n }, Google) as Google;\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAOa,eAAe,CAAA;AAEhB,IAAA,OAAA;AADV,IAAA,WAAA,CACU,OAAyB,EAAA;QAAzB,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AAEH,IAAA,aAAa,CAAC,GAA0B,EAAA;AACtC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;YAChC,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,GAAG,GAAG,CAAC,IAAI,EAAE;SACd,EAAE,MAAM,CAAW;IACtB;AAEA,IAAA,iBAAiB,CAAC,IAA6B,EAAA;AAC7C,QAAA,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACjD;AAEA,IAAA,WAAW,CAAC,IAAY,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;YAC9B,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,EAAE,MAAM,CAAW;IACtB;uGArBW,eAAe,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAf,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cADH,MAAM,EAAA,CAAA;;2FAClB,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;;ACNhC;;AAEG;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-infra-external-quick-js.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/external/quick-js/quick-js.service.ts","../../../../../packages/@xxmachina/common/src/lib/infra/external/quick-js/xxmachina-common-infra-external-quick-js.ts"],"sourcesContent":["import { computed, Injectable, signal } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { type loadQuickJs as loadQuickJsType } from '@sebastianwessel/quickjs'\nimport { Observable } from 'rxjs';\n\ntype PromiseType<T> = T extends Promise<infer U> ? U : T;\ntype QuickJs = PromiseType<ReturnType<typeof loadQuickJsType>>;\n\n@Injectable({providedIn: 'root'})\nexport class QuickJsService {\n private readonly quickJs = signal<QuickJs>(null);\n protected readonly quickJs$: Observable<QuickJs> = toObservable(this.quickJs);\n readonly initialized = computed(() => !!this.quickJs());\n\n constructor() {\n this.loadQuickJs();\n }\n\n protected async loadQuickJs(): Promise<QuickJs> {\n if (this.quickJs()) return this.quickJs();\n // @ts-ignore\n const { loadQuickJs } = await import(\"https://esm.sh/@sebastianwessel/quickjs@3.0.0?target=es2022&bundle-deps\");\n // @ts-ignore\n const variant = await import('https://esm.sh/@jitl/quickjs-ng-wasmfile-release-sync@0.31.0?bundle-deps');\n const instance = await (loadQuickJs as typeof loadQuickJsType)(variant.default);\n this.quickJs.set(instance);\n return instance;\n }\n\n async execute(script: string) {\n const quickJS = await this.loadQuickJs();\n return quickJS.runSandboxed(({ evalCode }) => evalCode(script), {\n transformTypescript: true,\n typescriptImportFile: 'https://esm.sh/typescript@5.9.2',\n allowFs: false,\n allowFetch: false,\n }).then((result) => {\n console.debug('[QuickJsService] result:', result);\n if (result.ok) return result.data;\n // エラー時は例外をスローして、transformWithScriptでcatchできるようにする\n // result.ok === falseの場合、ErrorResponse型だがTypeScriptが認識できないためanyキャスト\n const error = (result as any).error;\n const errorMessage = typeof error === 'object' && error?.message\n ? error.message\n : String(error ?? 'QuickJS execution failed');\n throw new Error(errorMessage);\n });\n }\n\n async apply(script: string, functionName: any, args: any[] = []) {\n const safeArgs = encodeURIComponent(JSON.stringify(args));\n // Support both 'transform' and 'transformer' function names\n const scriptWithFunction = `\n ${script}\n\n const fn = typeof ${functionName} !== 'undefined' ? ${functionName} : (typeof transformer !== 'undefined' ? transformer : transform);\n const args = JSON.parse(decodeURIComponent(\"${safeArgs}\"));\n export default fn(...args);\n `;\n return this.execute(scriptWithFunction);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MASa,cAAc,CAAA;AACR,IAAA,OAAO,GAAG,MAAM,CAAU,
|
|
1
|
+
{"version":3,"file":"xxmachina-common-infra-external-quick-js.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/external/quick-js/quick-js.service.ts","../../../../../packages/@xxmachina/common/src/lib/infra/external/quick-js/xxmachina-common-infra-external-quick-js.ts"],"sourcesContent":["import { computed, Injectable, signal } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { type loadQuickJs as loadQuickJsType } from '@sebastianwessel/quickjs'\nimport { Observable } from 'rxjs';\n\ntype PromiseType<T> = T extends Promise<infer U> ? U : T;\ntype QuickJs = PromiseType<ReturnType<typeof loadQuickJsType>>;\n\n@Injectable({providedIn: 'root'})\nexport class QuickJsService {\n private readonly quickJs = signal<QuickJs>(null as unknown as QuickJs);\n protected readonly quickJs$: Observable<QuickJs> = toObservable(this.quickJs);\n readonly initialized = computed(() => !!this.quickJs());\n\n constructor() {\n this.loadQuickJs();\n }\n\n protected async loadQuickJs(): Promise<QuickJs> {\n if (this.quickJs()) return this.quickJs();\n // @ts-ignore\n const { loadQuickJs } = await import(\"https://esm.sh/@sebastianwessel/quickjs@3.0.0?target=es2022&bundle-deps\");\n // @ts-ignore\n const variant = await import('https://esm.sh/@jitl/quickjs-ng-wasmfile-release-sync@0.31.0?bundle-deps');\n const instance = await (loadQuickJs as typeof loadQuickJsType)(variant.default);\n this.quickJs.set(instance);\n return instance;\n }\n\n async execute(script: string) {\n const quickJS = await this.loadQuickJs();\n return quickJS.runSandboxed(({ evalCode }) => evalCode(script), {\n transformTypescript: true,\n typescriptImportFile: 'https://esm.sh/typescript@5.9.2',\n allowFs: false,\n allowFetch: false,\n }).then((result) => {\n console.debug('[QuickJsService] result:', result);\n if (result.ok) return result.data;\n // エラー時は例外をスローして、transformWithScriptでcatchできるようにする\n // result.ok === falseの場合、ErrorResponse型だがTypeScriptが認識できないためanyキャスト\n const error = (result as any).error;\n const errorMessage = typeof error === 'object' && error?.message\n ? error.message\n : String(error ?? 'QuickJS execution failed');\n throw new Error(errorMessage);\n });\n }\n\n async apply(script: string, functionName: any, args: any[] = []) {\n const safeArgs = encodeURIComponent(JSON.stringify(args));\n // Support both 'transform' and 'transformer' function names\n const scriptWithFunction = `\n ${script}\n\n const fn = typeof ${functionName} !== 'undefined' ? ${functionName} : (typeof transformer !== 'undefined' ? transformer : transform);\n const args = JSON.parse(decodeURIComponent(\"${safeArgs}\"));\n export default fn(...args);\n `;\n return this.execute(scriptWithFunction);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MASa,cAAc,CAAA;AACR,IAAA,OAAO,GAAG,MAAM,CAAU,IAA0B,mDAAC;AACnD,IAAA,QAAQ,GAAwB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;AACpE,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,uDAAC;AAEvD,IAAA,WAAA,GAAA;QACE,IAAI,CAAC,WAAW,EAAE;IACpB;AAEU,IAAA,MAAM,WAAW,GAAA;QACzB,IAAI,IAAI,CAAC,OAAO,EAAE;AAAE,YAAA,OAAO,IAAI,CAAC,OAAO,EAAE;;QAEzC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,OAAO,yEAAyE,CAAC;;AAE/G,QAAA,MAAM,OAAO,GAAG,MAAM,OAAO,0EAA0E,CAAC;QACxG,MAAM,QAAQ,GAAG,MAAO,WAAsC,CAAC,OAAO,CAAC,OAAO,CAAC;AAC/E,QAAA,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;AAC1B,QAAA,OAAO,QAAQ;IACjB;IAEA,MAAM,OAAO,CAAC,MAAc,EAAA;AAC1B,QAAA,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE;AACxC,QAAA,OAAO,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE;AAC9D,YAAA,mBAAmB,EAAE,IAAI;AACzB,YAAA,oBAAoB,EAAE,iCAAiC;AACvD,YAAA,OAAO,EAAE,KAAK;AACd,YAAA,UAAU,EAAE,KAAK;AAClB,SAAA,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAI;AACjB,YAAA,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,MAAM,CAAC;YACjD,IAAI,MAAM,CAAC,EAAE;gBAAE,OAAO,MAAM,CAAC,IAAI;;;AAGjC,YAAA,MAAM,KAAK,GAAI,MAAc,CAAC,KAAK;YACnC,MAAM,YAAY,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,EAAE;kBACrD,KAAK,CAAC;AACR,kBAAE,MAAM,CAAC,KAAK,IAAI,0BAA0B,CAAC;AAC/C,YAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC;AAC/B,QAAA,CAAC,CAAC;IACJ;IAEA,MAAM,KAAK,CAAC,MAAc,EAAE,YAAiB,EAAE,OAAc,EAAE,EAAA;QAC7D,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;;AAEzD,QAAA,MAAM,kBAAkB,GAAG;MACzB,MAAM;;AAEY,sBAAA,EAAA,YAAY,sBAAsB,YAAY,CAAA;kDACpB,QAAQ,CAAA;;KAErD;AACD,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACzC;uGAnDW,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADF,MAAM,EAAA,CAAA;;2FAClB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAC,UAAU,EAAE,MAAM,EAAC;;;ACRhC;;AAEG;;;;"}
|
|
@@ -2,12 +2,12 @@ import { InjectionToken, inject } from '@angular/core';
|
|
|
2
2
|
|
|
3
3
|
const INVOICE_REPOSITORY_TOKEN = new InjectionToken('[@xxmachina/common] InvoiceRepository');
|
|
4
4
|
function injectInvoiceRepository() {
|
|
5
|
-
return inject(INVOICE_REPOSITORY_TOKEN, { optional: true }) ?? null;
|
|
5
|
+
return (inject(INVOICE_REPOSITORY_TOKEN, { optional: true }) ?? null);
|
|
6
6
|
}
|
|
7
7
|
|
|
8
8
|
const ORDER_REPOSITORY_TOKEN = new InjectionToken('[@xxmachina/common] OrderRepository');
|
|
9
9
|
function injectOrderRepository() {
|
|
10
|
-
return inject(ORDER_REPOSITORY_TOKEN, { optional: true }) ?? null;
|
|
10
|
+
return (inject(ORDER_REPOSITORY_TOKEN, { optional: true }) ?? null);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-common-infra-repository-dataconnect.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/invoice/invoice.repository.ts","../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/order/order.repository.ts","../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/xxmachina-common-infra-repository-dataconnect.ts"],"sourcesContent":["import { inject, InjectionToken } from \"@angular/core\";\nimport type { InvoiceRepository } from \"./invoice.repository.impl\";\n\nexport const INVOICE_REPOSITORY_TOKEN = new InjectionToken<InvoiceRepository>('[@xxmachina/common] InvoiceRepository');\n\nexport function injectInvoiceRepository(): InvoiceRepository {\n return inject(INVOICE_REPOSITORY_TOKEN, { optional: true }) ?? null;\n}\n","import { inject, InjectionToken } from \"@angular/core\";\nimport type { OrderRepository } from \"./order.repository.impl\";\n\nexport const ORDER_REPOSITORY_TOKEN = new InjectionToken<OrderRepository>('[@xxmachina/common] OrderRepository');\n\nexport function injectOrderRepository(): OrderRepository {\n return inject(ORDER_REPOSITORY_TOKEN, { optional: true }) ?? null;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAGa,wBAAwB,GAAG,IAAI,cAAc,CAAoB,uCAAuC;SAErG,uBAAuB,GAAA;AACrC,IAAA,
|
|
1
|
+
{"version":3,"file":"xxmachina-common-infra-repository-dataconnect.mjs","sources":["../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/invoice/invoice.repository.ts","../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/order/order.repository.ts","../../../../../packages/@xxmachina/common/src/lib/infra/repository/dataconnect/xxmachina-common-infra-repository-dataconnect.ts"],"sourcesContent":["import { inject, InjectionToken } from \"@angular/core\";\nimport type { InvoiceRepository } from \"./invoice.repository.impl\";\n\nexport const INVOICE_REPOSITORY_TOKEN = new InjectionToken<InvoiceRepository>('[@xxmachina/common] InvoiceRepository');\n\nexport function injectInvoiceRepository(): InvoiceRepository {\n return (inject(INVOICE_REPOSITORY_TOKEN, { optional: true }) ?? null) as InvoiceRepository;\n}\n","import { inject, InjectionToken } from \"@angular/core\";\nimport type { OrderRepository } from \"./order.repository.impl\";\n\nexport const ORDER_REPOSITORY_TOKEN = new InjectionToken<OrderRepository>('[@xxmachina/common] OrderRepository');\n\nexport function injectOrderRepository(): OrderRepository {\n return (inject(ORDER_REPOSITORY_TOKEN, { optional: true }) ?? null) as OrderRepository;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;MAGa,wBAAwB,GAAG,IAAI,cAAc,CAAoB,uCAAuC;SAErG,uBAAuB,GAAA;AACrC,IAAA,QAAQ,MAAM,CAAC,wBAAwB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI;AACtE;;MCJa,sBAAsB,GAAG,IAAI,cAAc,CAAkB,qCAAqC;SAE/F,qBAAqB,GAAA;AACnC,IAAA,QAAQ,MAAM,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,IAAI;AACpE;;ACPA;;AAEG;;;;"}
|