@xxmachina/components 19.0.0-preview.29 → 19.0.0-preview.3
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/features/query/query.feature.d.ts +2 -2
- package/fesm2022/xxmachina-components-features-command.mjs +3 -2
- package/fesm2022/xxmachina-components-features-command.mjs.map +1 -1
- package/fesm2022/xxmachina-components-features-query.mjs +3 -2
- package/fesm2022/xxmachina-components-features-query.mjs.map +1 -1
- package/fesm2022/xxmachina-components-molecules-daily-cell.mjs +1 -1
- package/fesm2022/xxmachina-components-molecules-daily-cell.mjs.map +1 -1
- package/fesm2022/xxmachina-components-molecules-weekly-header.mjs +2 -2
- package/fesm2022/xxmachina-components-organisms-calendar-section.mjs +2 -2
- package/fesm2022/xxmachina-components-organisms-calendar-section.mjs.map +1 -1
- package/fesm2022/xxmachina-components-pages-command.mjs +6 -22
- package/fesm2022/xxmachina-components-pages-command.mjs.map +1 -1
- package/fesm2022/xxmachina-components-pages-query.mjs +3 -7
- package/fesm2022/xxmachina-components-pages-query.mjs.map +1 -1
- package/fesm2022/{xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs → xxmachina-components-routes-commands-command.routes-CeRVzy3Z.mjs} +11 -4
- package/fesm2022/xxmachina-components-routes-commands-command.routes-CeRVzy3Z.mjs.map +1 -0
- package/fesm2022/{xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs → xxmachina-components-routes-commands-pages.routes-Cm6Yd40h.mjs} +4 -4
- package/fesm2022/xxmachina-components-routes-commands-pages.routes-Cm6Yd40h.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-commands.mjs +3 -5
- package/fesm2022/xxmachina-components-routes-commands.mjs.map +1 -1
- package/fesm2022/xxmachina-components-routes-pages.mjs +1 -3
- package/fesm2022/xxmachina-components-routes-pages.mjs.map +1 -1
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-BfWsTCij.mjs +9 -0
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-BfWsTCij.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-queries.mjs +4 -6
- package/fesm2022/xxmachina-components-routes-queries.mjs.map +1 -1
- package/fesm2022/{xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs → xxmachina-components-routes-query-pages.routes-H2vrF7kQ.mjs} +9 -9
- package/fesm2022/xxmachina-components-routes-query-pages.routes-H2vrF7kQ.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-query.mjs +2 -4
- package/fesm2022/xxmachina-components-routes-query.mjs.map +1 -1
- package/fesm2022/{xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs → xxmachina-components-routes-resources-pages.routes-BSjrrV1g.mjs} +4 -4
- package/fesm2022/xxmachina-components-routes-resources-pages.routes-BSjrrV1g.mjs.map +1 -0
- package/fesm2022/{xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs → xxmachina-components-routes-resources-resource.routes-DzGgwitX.mjs} +3 -3
- package/fesm2022/xxmachina-components-routes-resources-resource.routes-DzGgwitX.mjs.map +1 -0
- package/fesm2022/xxmachina-components-routes-resources.mjs +5 -7
- package/fesm2022/xxmachina-components-routes-resources.mjs.map +1 -1
- package/fesm2022/xxmachina-components-routes.mjs +4 -4
- package/fesm2022/xxmachina-components-routes.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-assistant.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-calendar.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-command.mjs +6 -4
- package/fesm2022/xxmachina-components-services-command.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-contract.mjs +1 -1
- package/fesm2022/xxmachina-components-services-contract.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-forms-schedule.mjs +1 -1
- package/fesm2022/xxmachina-components-services-forms-schedule.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-invoice.mjs +1 -1
- package/fesm2022/xxmachina-components-services-invoice.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-link.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-openapi.mjs +1 -1
- package/fesm2022/xxmachina-components-services-openapi.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-order.mjs +1 -1
- package/fesm2022/xxmachina-components-services-order.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-partner.mjs +1 -1
- package/fesm2022/xxmachina-components-services-partner.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-query-config.mjs +18 -17
- package/fesm2022/xxmachina-components-services-query-config.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-query.mjs +2 -12
- package/fesm2022/xxmachina-components-services-query.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-schedule.mjs +1 -1
- package/fesm2022/xxmachina-components-services-schedule.mjs.map +1 -1
- package/fesm2022/xxmachina-components-services-thread.mjs +1 -1
- package/fesm2022/xxmachina-components-services-thread.mjs.map +1 -1
- package/fesm2022/xxmachina-components-validators-query.mjs +3 -6
- package/fesm2022/xxmachina-components-validators-query.mjs.map +1 -1
- package/fesm2022/xxmachina-components.mjs +1 -1
- package/fesm2022/xxmachina-components.mjs.map +1 -1
- package/molecules/daily-cell/daily-cell.molecule.d.ts +1 -1
- package/organisms/calendar-section/calendar-section.organism.d.ts +1 -1
- package/package.json +1 -1
- package/pages/command/command.page.d.ts +1 -3
- package/routes/commands/commands.routes.d.ts +2 -1
- package/routes/commands/index.d.ts +1 -1
- package/routes/commands/pages/command/command.routes.d.ts +2 -2
- package/routes/commands/pages/pages.routes.d.ts +2 -1
- package/routes/pages/index.d.ts +1 -1
- package/routes/pages/pages.routes.d.ts +2 -1
- package/routes/queries/index.d.ts +1 -1
- package/routes/queries/pages/pages.routes.d.ts +2 -1
- package/routes/queries/queries.routes.d.ts +2 -1
- package/routes/query/index.d.ts +1 -1
- package/routes/query/pages/pages.routes.d.ts +2 -1
- package/routes/query/query.routes.d.ts +2 -1
- package/routes/resources/index.d.ts +1 -1
- package/routes/resources/pages/pages.routes.d.ts +2 -1
- package/routes/resources/pages/resource/resource.routes.d.ts +2 -1
- package/routes/resources/resources.routes.d.ts +2 -1
- package/services/assistant/assistant.service.d.ts +1 -1
- package/services/calendar/calendar.service.d.ts +1 -1
- package/services/command/command.service.d.ts +2 -2
- package/services/forms/schedule/schedule.service.d.ts +1 -1
- package/services/invoice/invoice.service.d.ts +1 -1
- package/services/link/link.service.d.ts +1 -1
- package/services/openapi/openapi.service.d.ts +1 -1
- package/services/order/order.service.d.ts +1 -1
- package/services/query-config/query-config.service.d.ts +19 -7
- package/services/schedule/schedule.service.d.ts +1 -1
- package/fesm2022/xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs.map +0 -1
- package/fesm2022/xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs.map +0 -1
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-CfrglCIL.mjs +0 -9
- package/fesm2022/xxmachina-components-routes-queries-pages.routes-CfrglCIL.mjs.map +0 -1
- package/fesm2022/xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs.map +0 -1
- package/fesm2022/xxmachina-components-routes-resources-pages.routes-CzjQOxwT.mjs.map +0 -1
- package/fesm2022/xxmachina-components-routes-resources-resource.routes-C5KpB3KM.mjs.map +0 -1
|
@@ -77,8 +77,8 @@ export declare class QueryFeature {
|
|
|
77
77
|
}>;
|
|
78
78
|
protected readonly result$: import("rxjs").Observable<Record<string, any>>;
|
|
79
79
|
readonly result: import("@angular/core").Signal<Record<string, any[]>>;
|
|
80
|
-
protected readonly variablesValue$: import("rxjs").Observable<Record<string,
|
|
81
|
-
readonly variablesValue: import("@angular/core").Signal<Record<string,
|
|
80
|
+
protected readonly variablesValue$: import("rxjs").Observable<Record<string, string>>;
|
|
81
|
+
readonly variablesValue: import("@angular/core").Signal<Record<string, string> | {}>;
|
|
82
82
|
readonly variablesForm$: import("rxjs").Observable<FormGroup<any>>;
|
|
83
83
|
readonly variablesForm: import("@angular/core").Signal<FormGroup<any>>;
|
|
84
84
|
readonly variablesFormValue$: ReplaySubject<any>;
|
|
@@ -79,10 +79,11 @@ class CommandFeature {
|
|
|
79
79
|
return this._commandService.execute(command, data);
|
|
80
80
|
}
|
|
81
81
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandFeature, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
82
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandFeature }); }
|
|
82
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandFeature, providedIn: 'any' }); }
|
|
83
83
|
}
|
|
84
84
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandFeature, decorators: [{
|
|
85
|
-
type: Injectable
|
|
85
|
+
type: Injectable,
|
|
86
|
+
args: [{ providedIn: 'any' }]
|
|
86
87
|
}] });
|
|
87
88
|
|
|
88
89
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-components-features-command.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/features/command/command.feature.ts","../../../../../packages/@xxmachina/components/src/lib/features/command/xxmachina-components-features-command.ts"],"sourcesContent":["import { computed, inject, Injectable } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { CommandService } from '@xxmachina/components/services/command';\nimport { _computed } from '@ng-atomic/core';\nimport { JsonSchemaFormService } from '@ng-atomic/common/services/form/json-schema';\nimport { OpenApi } from '@xxmachina/common/domain/models';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { OpenApiService } from '@xxmachina/components/services/openapi';\nimport { switchMap, catchError, of, filter, NEVER } from 'rxjs';\nimport { derivedAsync } from 'ngxtension/derived-async';\n\n\n@Injectable({providedIn: 'root'})\nexport class CommandFormBuilder {\n protected readonly fb = inject(FormBuilder).nonNullable;\n build() {\n return this.fb.group({\n type: ['webApiRequest'],\n webApiRequest: this.fb.group({\n apiJsonUrl: [''],\n serverUrl: [''],\n path: [''],\n method: [''],\n }),\n });\n }\n}\n\n@Injectable()\nexport class CommandFeature {\n readonly fb = inject(FormBuilder);\n readonly openApiService = inject(OpenApiService);\n readonly _commandService = inject(CommandService);\n readonly commandFb = inject(CommandFormBuilder);\n readonly jsonSchemaFb = inject(JsonSchemaFormService);\n\n readonly commandForm = computed(() => this.commandFb.build());\n readonly commandFormValue = derivedAsync(() => this.commandForm().valueChanges, { initialValue: this.commandForm().value });\n readonly apiJsonUrl = computed(() => this.commandFormValue()?.webApiRequest?.apiJsonUrl);\n readonly path = computed(() => this.commandFormValue()?.webApiRequest?.path);\n readonly method = computed(() => this.commandFormValue()?.webApiRequest?.method?.toLowerCase());\n readonly requestBodySchema = computed(() => this.openApi().getRequestBodySchema(this.path(), this.method()));\n readonly title = computed(() => this.openApi().getSummary(this.path(), this.method()));\n readonly endpointAutoCompleteOptions = computed(() => {\n return this.openApi().getEndpoints().filter((endpoint) => endpoint.startsWith(this.path()));\n });\n readonly methodOptions = computed(() => {\n return this.openApi().getMethods(this.commandFormValue()?.webApiRequest?.path ?? '').map((method) => ({\n name: method.toLocaleUpperCase(), value: method.toLocaleUpperCase()\n }));\n });\n\n readonly openApi = derivedAsync(() => {\n const url = this.apiJsonUrl();\n return of(url).pipe(\n filter((url) => !!url),\n switchMap(() => this.openApiService.getOpenApi(url).pipe(\n catchError((error) => (console.error(error), NEVER)),\n )),\n );\n }, { \n initialValue: new OpenApi({\n openapi: '3.0.0',\n apiJsonUrl: '/api-json',\n info: { title: 'dummy', version: '1.0.0' },\n paths: {},\n }),\n });\n readonly form = computed(() => this.jsonSchemaFb.build(this.requestBodySchema(), {fb: this.fb}));\n readonly extractedFormFieldMap = computed(() => this.jsonSchemaFb.buildFieldMap(this.requestBodySchema(), {\n merge: {\n 'id': { type: 'hidden' },\n '__typename': { type: 'hidden' },\n 'kind': { type: 'hidden' },\n }\n }));\n\n hasPermission(command: Command): boolean {\n return this._commandService.hasPermission(command);\n }\n\n execute(command: Command, data: any) {\n return this._commandService.execute(command, data);\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;MAaa,kBAAkB,CAAA;AAD/B,IAAA,WAAA,GAAA;AAEqB,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW;AAYxD;IAXC,KAAK,GAAA;AACH,QAAA,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACnB,IAAI,EAAE,CAAC,eAAe,CAAC;AACvB,YAAA,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBAC3B,UAAU,EAAE,CAAC,EAAE,CAAC;gBAChB,SAAS,EAAE,CAAC,EAAE,CAAC;gBACf,IAAI,EAAE,CAAC,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC,EAAE,CAAC;aACb,CAAC;AACH,SAAA,CAAC;;8GAXO,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAlB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,
|
|
1
|
+
{"version":3,"file":"xxmachina-components-features-command.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/features/command/command.feature.ts","../../../../../packages/@xxmachina/components/src/lib/features/command/xxmachina-components-features-command.ts"],"sourcesContent":["import { computed, inject, Injectable } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { CommandService } from '@xxmachina/components/services/command';\nimport { _computed } from '@ng-atomic/core';\nimport { JsonSchemaFormService } from '@ng-atomic/common/services/form/json-schema';\nimport { OpenApi } from '@xxmachina/common/domain/models';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { OpenApiService } from '@xxmachina/components/services/openapi';\nimport { switchMap, catchError, of, filter, NEVER } from 'rxjs';\nimport { derivedAsync } from 'ngxtension/derived-async';\n\n\n@Injectable({ providedIn: 'root' })\nexport class CommandFormBuilder {\n protected readonly fb = inject(FormBuilder).nonNullable;\n build() {\n return this.fb.group({\n type: ['webApiRequest'],\n webApiRequest: this.fb.group({\n apiJsonUrl: [''],\n serverUrl: [''],\n path: [''],\n method: [''],\n }),\n });\n }\n}\n\n@Injectable({providedIn: 'any'})\nexport class CommandFeature {\n readonly fb = inject(FormBuilder);\n readonly openApiService = inject(OpenApiService);\n readonly _commandService = inject(CommandService);\n readonly commandFb = inject(CommandFormBuilder);\n readonly jsonSchemaFb = inject(JsonSchemaFormService);\n\n readonly commandForm = computed(() => this.commandFb.build());\n readonly commandFormValue = derivedAsync(() => this.commandForm().valueChanges, { initialValue: this.commandForm().value });\n readonly apiJsonUrl = computed(() => this.commandFormValue()?.webApiRequest?.apiJsonUrl);\n readonly path = computed(() => this.commandFormValue()?.webApiRequest?.path);\n readonly method = computed(() => this.commandFormValue()?.webApiRequest?.method?.toLowerCase());\n readonly requestBodySchema = computed(() => this.openApi().getRequestBodySchema(this.path(), this.method()));\n readonly title = computed(() => this.openApi().getSummary(this.path(), this.method()));\n readonly endpointAutoCompleteOptions = computed(() => {\n return this.openApi().getEndpoints().filter((endpoint) => endpoint.startsWith(this.path()));\n });\n readonly methodOptions = computed(() => {\n return this.openApi().getMethods(this.commandFormValue()?.webApiRequest?.path ?? '').map((method) => ({\n name: method.toLocaleUpperCase(), value: method.toLocaleUpperCase()\n }));\n });\n\n readonly openApi = derivedAsync(() => {\n const url = this.apiJsonUrl();\n return of(url).pipe(\n filter((url) => !!url),\n switchMap(() => this.openApiService.getOpenApi(url).pipe(\n catchError((error) => (console.error(error), NEVER)),\n )),\n );\n }, { \n initialValue: new OpenApi({\n openapi: '3.0.0',\n apiJsonUrl: '/api-json',\n info: { title: 'dummy', version: '1.0.0' },\n paths: {},\n }),\n });\n readonly form = computed(() => this.jsonSchemaFb.build(this.requestBodySchema(), {fb: this.fb}));\n readonly extractedFormFieldMap = computed(() => this.jsonSchemaFb.buildFieldMap(this.requestBodySchema(), {\n merge: {\n 'id': { type: 'hidden' },\n '__typename': { type: 'hidden' },\n 'kind': { type: 'hidden' },\n }\n }));\n\n hasPermission(command: Command): boolean {\n return this._commandService.hasPermission(command);\n }\n\n execute(command: Command, data: any) {\n return this._commandService.execute(command, data);\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -152,10 +152,11 @@ class QueryFeature {
|
|
|
152
152
|
});
|
|
153
153
|
}
|
|
154
154
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: QueryFeature, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
155
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: QueryFeature }); }
|
|
155
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: QueryFeature, providedIn: 'any' }); }
|
|
156
156
|
}
|
|
157
157
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: QueryFeature, decorators: [{
|
|
158
|
-
type: Injectable
|
|
158
|
+
type: Injectable,
|
|
159
|
+
args: [{ providedIn: 'any' }]
|
|
159
160
|
}], ctorParameters: () => [] });
|
|
160
161
|
|
|
161
162
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-components-features-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/features/query/query.feature.ts","../../../../../packages/@xxmachina/components/src/lib/features/query/xxmachina-components-features-query.ts"],"sourcesContent":["import { inject, Injectable, Provider } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { FormBuilder, FormGroup, NonNullableFormBuilder } from \"@angular/forms\";\nimport { AuthService } from \"@xxmachina/common/auth\";\nimport { Query, QueryHelper } from \"@xxmachina/common/domain/models\";\nimport { QueryFormService } from \"@xxmachina/components/services/forms/query\";\nimport { QueryService } from \"@xxmachina/components/services/query\";\nimport { AppService } from \"@ng-atomic/common/services/app\";\nimport { JsonSchemaFormUtils } from \"@ng-atomic/common/services/form/json-schema\";\nimport { injectEntityStore } from \"@ng-atomic/common/stores/entities\";\nimport { getValue$ } from \"@ng-atomic/common/utils\";\nimport { provideEffect } from \"@ng-atomic/core\";\nimport { createSchema } from \"genson-js/dist\";\nimport { isEqual } from \"lodash-es\";\nimport { catchError, combineLatest, debounceTime, distinctUntilChanged, filter, map, NEVER, of, ReplaySubject, shareReplay, switchMap, take, tap } from \"rxjs\";\nimport dayjs from \"dayjs\";\n\nexport function buildVariablesForm(value, fb: FormBuilder | NonNullableFormBuilder): FormGroup {\n const _value = JsonSchemaFormUtils.removeObjectPercent(value);\n const schema = createSchema(value);\n if (!schema) return fb.group({});\n return JsonSchemaFormUtils.buildFormByJsonSchema(schema, { fb, value: _value }).form;\n}\n\nexport enum ActionId {\n クエリの実行 = 'クエリの実行',\n クエリの生成 = 'クエリの生成',\n クエリの更新 = 'クエリの更新',\n}\n\n@Injectable()\nexport class QueryFeature {\n static readonly ActionId = ActionId;\n static provideUpdateQueryEffect(): Provider {\n return [\n provideEffect(ActionId.クエリの更新, () => {\n const feature = inject(QueryFeature);\n return () => feature.update();\n }),\n ];\n }\n\n static provideDefaultEffects(): Provider[] {\n return [\n QueryFeature.provideExecuteQueryEffect(),\n QueryFeature.provideGenerateQueryEffect(),\n QueryFeature.provideUpdateQueryEffect(),\n ]\n }\n\n static provideExecuteQueryEffect() {\n return provideEffect(ActionId.クエリの実行, () => {\n const feature = inject(QueryFeature);\n const app = inject(AppService);\n const entityStore = injectEntityStore(Query);\n return () => {\n const value = feature.form.getRawValue();\n app.loading.await(() => entityStore.create({\n ...value,\n id: undefined,\n type: 'graphql',\n projectId: 'default',\n title: dayjs().toISOString(),\n summary: 'クエリの実行',\n createdAt: null,\n updatedAt: null,\n }), 'progress');\n feature.refresh();\n }\n });\n }\n\n static provideGenerateQueryEffect(): Provider {\n return provideEffect(ActionId.クエリの生成, () => {\n const app = inject(AppService);\n const query = inject(QueryService);\n const feature = inject(QueryFeature);\n return (instructions: string) => {\n app.loading.await(() => {\n return query.generate(instructions).then((result) => {\n feature.form.get(['query']).setValue(result.query);\n }).then((query) => {\n // this.dispatch({\n // id: ActionId.クエリの実行,\n // payload: query,\n // });\n }).catch((error) => {\n console.error('error:', error);\n });\n });\n };\n });\n }\n\n protected readonly app = inject(AppService);\n protected readonly auth = inject(AuthService);\n protected readonly service = inject(QueryService);\n readonly refresh$ = new ReplaySubject<void>();\n protected readonly fb = inject(FormBuilder).nonNullable;\n readonly form = inject(QueryFormService).build();\n protected readonly query$ = getValue$(this.form).pipe(shareReplay(1));\n readonly query = toSignal(this.query$);\n\n readonly parsedQuery$ = this.query$.pipe(\n map((query) => QueryFormService.parse(query)),\n tap((query) => console.debug('[QueryFeature][parsedQuery$] parsedQuery:', query)),\n shareReplay(1),\n );\n readonly parsedQuery = toSignal(this.parsedQuery$);\n\n protected readonly graphqlSchema$ = this.parsedQuery$.pipe(\n debounceTime(300),\n map((query) => ({\n endpoint: query?.graphql?.endpoint,\n headers: QueryHelper.tryParseJson(query?.graphql?.headersJson)\n })),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n filter(({endpoint}) => !!endpoint),\n switchMap(({endpoint, headers}) => this.service.subscribeSchema(endpoint, { headers }).pipe(\n catchError(error => (console.error('[QueryFeature] error', error), NEVER)),\n )),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n filter((result: any) => result?.['data']),\n map((result) => result?.['data']),\n );\n // readonly graphqlSchema$ = of(null);\n readonly graphqlSchema = toSignal(this.graphqlSchema$);\n\n readonly validatedQuery$ = this.parsedQuery$.pipe(\n filter((query) => QueryHelper.validate(query as Query)),\n shareReplay(1),\n tap((query) => console.debug('[QueryFeature][validatedQuery$] validatedQuery:', query)),\n );\n readonly validatedQuery = toSignal(this.validatedQuery$);\n\n protected readonly result$ = this.refresh$.pipe(\n switchMap(() => this.auth.accessToken$.pipe(\n filter(accessToken => !!accessToken),\n )),\n switchMap(() => this.validatedQuery$.pipe(take(1))),\n tap((query) => console.debug('[QueryFeature][result$] execution:', query)),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n debounceTime(500),\n this.app.loading.switchMap((query) => this.service.subscribeQuery(query).pipe(\n catchError(error => {\n this.app.snackBar.openError(error);\n console.error(error);\n return of(null);\n }),\n ), 'progress'),\n filter((result) => !!result),\n shareReplay(1),\n );\n readonly result = toSignal<Record<string, any[]>>(this.result$);\n\n protected readonly variablesValue$ = this.parsedQuery$.pipe(\n map((query) => query?.graphql?.variables ?? {}),\n shareReplay(1),\n );\n readonly variablesValue = toSignal(this.variablesValue$, {initialValue: {}});\n\n readonly variablesForm$ = this.variablesValue$.pipe(\n map((value) => buildVariablesForm(value, this.fb)),\n shareReplay(1),\n );\n readonly variablesForm = toSignal(this.variablesForm$);\n\n readonly variablesFormValue$ = new ReplaySubject<any>(1);\n\n protected readonly overwriteVariablesJson$ = combineLatest({\n current: this.variablesFormValue$,\n pre: this.form.get(['graphql', 'variablesJson']).valueChanges.pipe(\n map((value) => JSON.parse(value)),\n ),\n }).pipe(\n takeUntilDestroyed(),\n filter(({current}) => !!current),\n map(({current, pre}) => ({pre, next: QueryHelper.overwrite(current, pre)})),\n filter(({pre, next}) => JSON.stringify(pre) !== JSON.stringify(next)),\n map(({next}) => JSON.stringify(next, null, 2)),\n shareReplay(1),\n );\n\n constructor() {\n this.form.get(['graphql', 'variablesJson']).valueChanges.pipe(\n takeUntilDestroyed(),\n debounceTime(300),\n distinctUntilChanged(isEqual),\n ).subscribe(() => {\n this.refresh();\n });\n\n this.overwriteVariablesJson$.subscribe((overwriteVariablesJson) => {\n this.form.get(['graphql', 'variablesJson']).setValue(overwriteVariablesJson);\n });\n }\n\n refresh(): void {\n this.refresh$.next();\n }\n protected entity = injectEntityStore(Query);\n\n update() {\n const value = this.form.getRawValue();\n this.app.loading.await(() => {\n return this.entity.save({\n ...value,\n projectId: 'default',\n summary: 'deprecated',\n type: 'graphql',\n createdAt: undefined,\n updatedAt: undefined,\n }).then(() => {\n this.app.snackBar.open('クエリを更新しました');\n }).catch((error) => {\n console.error(error);\n this.app.snackBar.open(`ERROR: ${error.message}`);\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-components-features-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/features/query/query.feature.ts","../../../../../packages/@xxmachina/components/src/lib/features/query/xxmachina-components-features-query.ts"],"sourcesContent":["import { inject, Injectable, Provider } from \"@angular/core\";\nimport { takeUntilDestroyed, toSignal } from \"@angular/core/rxjs-interop\";\nimport { FormBuilder, FormGroup, NonNullableFormBuilder } from \"@angular/forms\";\nimport { AuthService } from \"@xxmachina/common/auth\";\nimport { Query, QueryHelper } from \"@xxmachina/common/domain/models\";\nimport { QueryFormService } from \"@xxmachina/components/services/forms/query\";\nimport { QueryService } from \"@xxmachina/components/services/query\";\nimport { AppService } from \"@ng-atomic/common/services/app\";\nimport { JsonSchemaFormUtils } from \"@ng-atomic/common/services/form/json-schema\";\nimport { injectEntityStore } from \"@ng-atomic/common/stores/entities\";\nimport { getValue$ } from \"@ng-atomic/common/utils\";\nimport { provideEffect } from \"@ng-atomic/core\";\nimport { createSchema } from \"genson-js/dist\";\nimport { isEqual } from \"lodash-es\";\nimport { catchError, combineLatest, debounceTime, distinctUntilChanged, filter, map, NEVER, of, ReplaySubject, shareReplay, switchMap, take, tap } from \"rxjs\";\nimport dayjs from \"dayjs\";\n\nexport function buildVariablesForm(value, fb: FormBuilder | NonNullableFormBuilder): FormGroup {\n const _value = JsonSchemaFormUtils.removeObjectPercent(value);\n const schema = createSchema(value);\n if (!schema) return fb.group({});\n return JsonSchemaFormUtils.buildFormByJsonSchema(schema, { fb, value: _value }).form;\n}\n\nexport enum ActionId {\n クエリの実行 = 'クエリの実行',\n クエリの生成 = 'クエリの生成',\n クエリの更新 = 'クエリの更新',\n}\n\n@Injectable({providedIn: 'any'})\nexport class QueryFeature {\n static readonly ActionId = ActionId;\n static provideUpdateQueryEffect(): Provider {\n return [\n provideEffect(ActionId.クエリの更新, () => {\n const feature = inject(QueryFeature);\n return () => feature.update();\n }),\n ];\n }\n\n static provideDefaultEffects(): Provider[] {\n return [\n QueryFeature.provideExecuteQueryEffect(),\n QueryFeature.provideGenerateQueryEffect(),\n QueryFeature.provideUpdateQueryEffect(),\n ]\n }\n\n static provideExecuteQueryEffect() {\n return provideEffect(ActionId.クエリの実行, () => {\n const feature = inject(QueryFeature);\n const app = inject(AppService);\n const entityStore = injectEntityStore(Query);\n return () => {\n const value = feature.form.getRawValue();\n app.loading.await(() => entityStore.create({\n ...value,\n id: undefined,\n type: 'graphql',\n projectId: 'default',\n title: dayjs().toISOString(),\n summary: 'クエリの実行',\n createdAt: null,\n updatedAt: null,\n }), 'progress');\n feature.refresh();\n }\n });\n }\n\n static provideGenerateQueryEffect(): Provider {\n return provideEffect(ActionId.クエリの生成, () => {\n const app = inject(AppService);\n const query = inject(QueryService);\n const feature = inject(QueryFeature);\n return (instructions: string) => {\n app.loading.await(() => {\n return query.generate(instructions).then((result) => {\n feature.form.get(['query']).setValue(result.query);\n }).then((query) => {\n // this.dispatch({\n // id: ActionId.クエリの実行,\n // payload: query,\n // });\n }).catch((error) => {\n console.error('error:', error);\n });\n });\n };\n });\n }\n\n protected readonly app = inject(AppService);\n protected readonly auth = inject(AuthService);\n protected readonly service = inject(QueryService);\n readonly refresh$ = new ReplaySubject<void>();\n protected readonly fb = inject(FormBuilder).nonNullable;\n readonly form = inject(QueryFormService).build();\n protected readonly query$ = getValue$(this.form).pipe(shareReplay(1));\n readonly query = toSignal(this.query$);\n\n readonly parsedQuery$ = this.query$.pipe(\n map((query) => QueryFormService.parse(query)),\n tap((query) => console.debug('[QueryFeature][parsedQuery$] parsedQuery:', query)),\n shareReplay(1),\n );\n readonly parsedQuery = toSignal(this.parsedQuery$);\n\n protected readonly graphqlSchema$ = this.parsedQuery$.pipe(\n debounceTime(300),\n map((query) => ({\n endpoint: query?.graphql?.endpoint,\n headers: QueryHelper.tryParseJson(query?.graphql?.headersJson)\n })),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n filter(({endpoint}) => !!endpoint),\n switchMap(({endpoint, headers}) => this.service.subscribeSchema(endpoint, { headers }).pipe(\n catchError(error => (console.error('[QueryFeature] error', error), NEVER)),\n )),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n filter((result: any) => result?.['data']),\n map((result) => result?.['data']),\n );\n // readonly graphqlSchema$ = of(null);\n readonly graphqlSchema = toSignal(this.graphqlSchema$);\n\n readonly validatedQuery$ = this.parsedQuery$.pipe(\n filter((query) => QueryHelper.validate(query as Query)),\n shareReplay(1),\n tap((query) => console.debug('[QueryFeature][validatedQuery$] validatedQuery:', query)),\n );\n readonly validatedQuery = toSignal(this.validatedQuery$);\n\n protected readonly result$ = this.refresh$.pipe(\n switchMap(() => this.auth.accessToken$.pipe(\n filter(accessToken => !!accessToken),\n )),\n switchMap(() => this.validatedQuery$.pipe(take(1))),\n tap((query) => console.debug('[QueryFeature][result$] execution:', query)),\n distinctUntilChanged((a, b) => isEqual(a, b)),\n debounceTime(500),\n this.app.loading.switchMap((query) => this.service.subscribeQuery(query).pipe(\n catchError(error => {\n this.app.snackBar.openError(error);\n console.error(error);\n return of(null);\n }),\n ), 'progress'),\n filter((result) => !!result),\n shareReplay(1),\n );\n readonly result = toSignal<Record<string, any[]>>(this.result$);\n\n protected readonly variablesValue$ = this.parsedQuery$.pipe(\n map((query) => query?.graphql?.variables ?? {}),\n shareReplay(1),\n );\n readonly variablesValue = toSignal(this.variablesValue$, {initialValue: {}});\n\n readonly variablesForm$ = this.variablesValue$.pipe(\n map((value) => buildVariablesForm(value, this.fb)),\n shareReplay(1),\n );\n readonly variablesForm = toSignal(this.variablesForm$);\n\n readonly variablesFormValue$ = new ReplaySubject<any>(1);\n\n protected readonly overwriteVariablesJson$ = combineLatest({\n current: this.variablesFormValue$,\n pre: this.form.get(['graphql', 'variablesJson']).valueChanges.pipe(\n map((value) => JSON.parse(value)),\n ),\n }).pipe(\n takeUntilDestroyed(),\n filter(({current}) => !!current),\n map(({current, pre}) => ({pre, next: QueryHelper.overwrite(current, pre)})),\n filter(({pre, next}) => JSON.stringify(pre) !== JSON.stringify(next)),\n map(({next}) => JSON.stringify(next, null, 2)),\n shareReplay(1),\n );\n\n constructor() {\n this.form.get(['graphql', 'variablesJson']).valueChanges.pipe(\n takeUntilDestroyed(),\n debounceTime(300),\n distinctUntilChanged(isEqual),\n ).subscribe(() => {\n this.refresh();\n });\n\n this.overwriteVariablesJson$.subscribe((overwriteVariablesJson) => {\n this.form.get(['graphql', 'variablesJson']).setValue(overwriteVariablesJson);\n });\n }\n\n refresh(): void {\n this.refresh$.next();\n }\n protected entity = injectEntityStore(Query);\n\n update() {\n const value = this.form.getRawValue();\n this.app.loading.await(() => {\n return this.entity.save({\n ...value,\n projectId: 'default',\n summary: 'deprecated',\n type: 'graphql',\n createdAt: undefined,\n updatedAt: undefined,\n }).then(() => {\n this.app.snackBar.open('クエリを更新しました');\n }).catch((error) => {\n console.error(error);\n this.app.snackBar.open(`ERROR: ${error.message}`);\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import * as i1 from '@angular/common';
|
|
|
4
4
|
import { CommonModule } from '@angular/common';
|
|
5
5
|
import * as i2 from '@angular/material/tooltip';
|
|
6
6
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
7
|
-
import { Schedule, isConflict } from '@xxmachina/common/domain/models';
|
|
7
|
+
import { Schedule, isConflict } from '@xxmachina/common/domain/models/scheduler';
|
|
8
8
|
import dayjs from 'dayjs';
|
|
9
9
|
|
|
10
10
|
class PercentagePipe {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-components-molecules-daily-cell.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/molecules/daily-cell/daily-cell.molecule.ts","../../../../../packages/@xxmachina/components/src/lib/molecules/daily-cell/xxmachina-components-molecules-daily-cell.ts"],"sourcesContent":["import { Component, Input, Pipe, PipeTransform } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { Schedule, isConflict } from '@xxmachina/common/domain/models';\nimport dayjs from 'dayjs';\n\n@Pipe({standalone: true, name: 'percentage'})\nexport class PercentagePipe implements PipeTransform {\n transform(date: dayjs.Dayjs, base: dayjs.Dayjs) {\n if (date.date() > base.date()) return 100;\n const day = 60 * 60 * 24;\n return (date.hour() * 60 * 60 + date.minute() * 60 + date.second()) / day * 100;\n }\n}\n\n@Pipe({standalone: true, name: 'filterByDate', pure: true})\nexport class FilterByDatePipe implements PipeTransform {\n transform(schedules: Schedule[], date: dayjs.Dayjs = dayjs()) {\n const dateSchedule = Schedule.from({\n id: null,\n startAt: date?.clone()?.startOf('day'),\n endAt: date?.clone()?.endOf('day'),\n });\n const filtered = schedules.filter(schedule => {\n return isConflict(schedule, dateSchedule)\n });\n return filtered;\n }\n}\n\n@Pipe({standalone: true, name: 'tooltipText', pure: true})\nexport class ScheduleToolTipTextPipe implements PipeTransform {\n transform(schedule: Schedule): string {\n return `${schedule.startAt.format('HH:mm')} ~ ${schedule.endAt.format('HH:mm')} ${schedule.name} `;\n }\n}\n\n@Component({\n standalone: true,\n selector: 'molecules-daily-cell',\n imports: [\n CommonModule,\n MatTooltipModule,\n PercentagePipe,\n FilterByDatePipe,\n ScheduleToolTipTextPipe,\n ],\n template: `\n <div class=\"background\">\n <div \n class=\"schedule-band\" \n *ngFor=\"let schedule of schedules | filterByDate:date;\"\n [matTooltip]=\"schedule | tooltipText\"\n matTooltipPosition=\"above\"\n [style.background-color]=\"schedule?.color ?? '#F2E7FE'\"\n [style.left.%]=\"schedule.startAt | percentage:date\"\n [style.width.%]=\"(schedule.endAt | percentage:date) - (schedule.startAt | percentage:date)\"\n ></div>\n </div>\n\n <div class=\"date box\" [ngStyle]=\"{\n 'background-color': marked && markingColor,\n 'color': marked && 'white'\n }\">\n <span class=\"date\" *ngIf=\"displayDate\">{{ date | date: 'd' }}</span>\n </div>\n\n <!-- <div class=\"schedules-container\">\n <span *ngFor=\"let schedule of schedules | filterByDate:date;\">\n {{ getScheduleText(schedule) }}\n </span>\n <span *ngIf=\"!schedules?.length\">{{ noSchedulesText }}</span>\n </div> -->\n `,\n styleUrls: ['./daily-cell.molecule.scss']\n})\nexport class DailyCellMolecule {\n\n @Input() date: dayjs.Dayjs;\n @Input() schedules: Schedule[];\n @Input() displayDate = true;\n @Input() noSchedulesText = 'noSchedulesText'\n @Input() toolTipText = 'toolTipText';\n @Input() marked = 'transparent';\n @Input() markingColor = 'red';\n\n getScheduleText(schedule: Schedule) {\n return `${getTimeText(schedule.startAt)} ~ ${getTimeText(schedule.endAt, schedule.startAt)}`;\n }\n\n getToolTipText(schedules: Schedule[]): string {\n return schedules.map(s => this.getScheduleText(s)).join(' ');\n }\n\n}\n\nfunction getTimeText(time: dayjs.Dayjs, base: dayjs.Dayjs = time) {\n return (base.isBefore(time) && time.format('HH:mm') === '00:00')\n ? '24:00'\n : time.format('HH:mm');\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-components-molecules-daily-cell.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/molecules/daily-cell/daily-cell.molecule.ts","../../../../../packages/@xxmachina/components/src/lib/molecules/daily-cell/xxmachina-components-molecules-daily-cell.ts"],"sourcesContent":["import { Component, Input, Pipe, PipeTransform } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatTooltipModule } from '@angular/material/tooltip';\nimport { Schedule, isConflict } from '@xxmachina/common/domain/models/scheduler';\nimport dayjs from 'dayjs';\n\n@Pipe({standalone: true, name: 'percentage'})\nexport class PercentagePipe implements PipeTransform {\n transform(date: dayjs.Dayjs, base: dayjs.Dayjs) {\n if (date.date() > base.date()) return 100;\n const day = 60 * 60 * 24;\n return (date.hour() * 60 * 60 + date.minute() * 60 + date.second()) / day * 100;\n }\n}\n\n@Pipe({standalone: true, name: 'filterByDate', pure: true})\nexport class FilterByDatePipe implements PipeTransform {\n transform(schedules: Schedule[], date: dayjs.Dayjs = dayjs()) {\n const dateSchedule = Schedule.from({\n id: null,\n startAt: date?.clone()?.startOf('day'),\n endAt: date?.clone()?.endOf('day'),\n });\n const filtered = schedules.filter(schedule => {\n return isConflict(schedule, dateSchedule)\n });\n return filtered;\n }\n}\n\n@Pipe({standalone: true, name: 'tooltipText', pure: true})\nexport class ScheduleToolTipTextPipe implements PipeTransform {\n transform(schedule: Schedule): string {\n return `${schedule.startAt.format('HH:mm')} ~ ${schedule.endAt.format('HH:mm')} ${schedule.name} `;\n }\n}\n\n@Component({\n standalone: true,\n selector: 'molecules-daily-cell',\n imports: [\n CommonModule,\n MatTooltipModule,\n PercentagePipe,\n FilterByDatePipe,\n ScheduleToolTipTextPipe,\n ],\n template: `\n <div class=\"background\">\n <div \n class=\"schedule-band\" \n *ngFor=\"let schedule of schedules | filterByDate:date;\"\n [matTooltip]=\"schedule | tooltipText\"\n matTooltipPosition=\"above\"\n [style.background-color]=\"schedule?.color ?? '#F2E7FE'\"\n [style.left.%]=\"schedule.startAt | percentage:date\"\n [style.width.%]=\"(schedule.endAt | percentage:date) - (schedule.startAt | percentage:date)\"\n ></div>\n </div>\n\n <div class=\"date box\" [ngStyle]=\"{\n 'background-color': marked && markingColor,\n 'color': marked && 'white'\n }\">\n <span class=\"date\" *ngIf=\"displayDate\">{{ date | date: 'd' }}</span>\n </div>\n\n <!-- <div class=\"schedules-container\">\n <span *ngFor=\"let schedule of schedules | filterByDate:date;\">\n {{ getScheduleText(schedule) }}\n </span>\n <span *ngIf=\"!schedules?.length\">{{ noSchedulesText }}</span>\n </div> -->\n `,\n styleUrls: ['./daily-cell.molecule.scss']\n})\nexport class DailyCellMolecule {\n\n @Input() date: dayjs.Dayjs;\n @Input() schedules: Schedule[];\n @Input() displayDate = true;\n @Input() noSchedulesText = 'noSchedulesText'\n @Input() toolTipText = 'toolTipText';\n @Input() marked = 'transparent';\n @Input() markingColor = 'red';\n\n getScheduleText(schedule: Schedule) {\n return `${getTimeText(schedule.startAt)} ~ ${getTimeText(schedule.endAt, schedule.startAt)}`;\n }\n\n getToolTipText(schedules: Schedule[]): string {\n return schedules.map(s => this.getScheduleText(s)).join(' ');\n }\n\n}\n\nfunction getTimeText(time: dayjs.Dayjs, base: dayjs.Dayjs = time) {\n return (base.isBefore(time) && time.format('HH:mm') === '00:00')\n ? '24:00'\n : time.format('HH:mm');\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ class WeeklyHeaderMolecule {
|
|
|
12
12
|
<div class="day-container" *ngFor="let day of ['日', '月', '火', '水', '木', '金', '土']">
|
|
13
13
|
<span>{{ day }}</span>
|
|
14
14
|
</div>
|
|
15
|
-
`, isInline: true, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-
|
|
15
|
+
`, isInline: true, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-ZJVhdSlu: var(--primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-ZJVhdSlu: var(--secondary-color)}:host{display:grid;width:100%;grid-template-columns:repeat(7,1fr);background-color:var(--primary-color-SCOPED-IN-ZJVhdSlu)}:host .day-container{display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;width:calc(hvar(--width) / 7)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); }
|
|
16
16
|
}
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: WeeklyHeaderMolecule, decorators: [{
|
|
18
18
|
type: Component,
|
|
@@ -22,7 +22,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
22
22
|
<div class="day-container" *ngFor="let day of ['日', '月', '火', '水', '木', '金', '土']">
|
|
23
23
|
<span>{{ day }}</span>
|
|
24
24
|
</div>
|
|
25
|
-
`, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-
|
|
25
|
+
`, styles: [":host{display:block;--primary-color: #404040;--primary-color-SCOPED-IN-ZJVhdSlu: var(--primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-ZJVhdSlu: var(--secondary-color)}:host{display:grid;width:100%;grid-template-columns:repeat(7,1fr);background-color:var(--primary-color-SCOPED-IN-ZJVhdSlu)}:host .day-container{display:flex;justify-content:center;align-items:center;color:#fff;font-weight:700;width:calc(hvar(--width) / 7)}\n"] }]
|
|
26
26
|
}], ctorParameters: () => [] });
|
|
27
27
|
|
|
28
28
|
/**
|
|
@@ -58,7 +58,7 @@ class CalendarSectionOrganism {
|
|
|
58
58
|
></molecules-daily-cell>
|
|
59
59
|
</ng-container>
|
|
60
60
|
</div>
|
|
61
|
-
`, isInline: true, styles: [":host{display:block;--row: 80px;--row-SCOPED-IN-
|
|
61
|
+
`, isInline: true, styles: [":host{display:block;--row: 80px;--row-SCOPED-IN-U4vLn7Xg: var(--row);--row-num: 0;--row-num-SCOPED-IN-U4vLn7Xg: var(--row-num);--border-color: #9E9E9E;--border-color-SCOPED-IN-U4vLn7Xg: var(--border-color);--primary-color: #404040;--primary-color-SCOPED-IN-U4vLn7Xg: var(--primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-U4vLn7Xg: var(--secondary-color)}:host{width:100%;height:auto}:host .calendar.header molecules-weekly-header{--height: 32px}:host .calendar.contents{display:grid;width:var(--width);border:1px solid var(--border-color-SCOPED-IN-U4vLn7Xg);grid-gap:1px;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(var(--row-num-SCOPED-IN-U4vLn7Xg),var(--row-SCOPED-IN-U4vLn7Xg));box-sizing:border-box;background-color:var(--border-color-SCOPED-IN-U4vLn7Xg)}:host .calendar.contents molecules-daily-cell{--width: calc((var(--width) - 8px) / 7);--height: var(--row-SCOPED-IN-U4vLn7Xg);background-color:#fff}:host .calendar.description{display:flex;justify-content:flex-end;width:var(--width);height:32px;padding-right:16px}:host .calendar.description .description.container{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px}:host .calendar.description .description.container .circle{display:flex;width:20px;height:20px;justify-content:center;align-items:center;border-radius:50%;color:#fff;background:#00f}:host .calendar.description .description.container label{padding-left:4px;padding-right:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: DailyCellMolecule, selector: "molecules-daily-cell", inputs: ["date", "schedules", "displayDate", "noSchedulesText", "toolTipText", "marked", "markingColor"] }, { kind: "component", type: WeeklyHeaderMolecule, selector: "molecules-weekly-header" }, { kind: "ngmodule", type: MatRippleModule }, { kind: "directive", type: i2.MatRipple, selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
62
62
|
}
|
|
63
63
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CalendarSectionOrganism, decorators: [{
|
|
64
64
|
type: Component,
|
|
@@ -92,7 +92,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
92
92
|
></molecules-daily-cell>
|
|
93
93
|
</ng-container>
|
|
94
94
|
</div>
|
|
95
|
-
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;--row: 80px;--row-SCOPED-IN-
|
|
95
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block;--row: 80px;--row-SCOPED-IN-U4vLn7Xg: var(--row);--row-num: 0;--row-num-SCOPED-IN-U4vLn7Xg: var(--row-num);--border-color: #9E9E9E;--border-color-SCOPED-IN-U4vLn7Xg: var(--border-color);--primary-color: #404040;--primary-color-SCOPED-IN-U4vLn7Xg: var(--primary-color);--secondary-color: #B0B0B0;--secondary-color-SCOPED-IN-U4vLn7Xg: var(--secondary-color)}:host{width:100%;height:auto}:host .calendar.header molecules-weekly-header{--height: 32px}:host .calendar.contents{display:grid;width:var(--width);border:1px solid var(--border-color-SCOPED-IN-U4vLn7Xg);grid-gap:1px;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(var(--row-num-SCOPED-IN-U4vLn7Xg),var(--row-SCOPED-IN-U4vLn7Xg));box-sizing:border-box;background-color:var(--border-color-SCOPED-IN-U4vLn7Xg)}:host .calendar.contents molecules-daily-cell{--width: calc((var(--width) - 8px) / 7);--height: var(--row-SCOPED-IN-U4vLn7Xg);background-color:#fff}:host .calendar.description{display:flex;justify-content:flex-end;width:var(--width);height:32px;padding-right:16px}:host .calendar.description .description.container{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;font-size:12px}:host .calendar.description .description.container .circle{display:flex;width:20px;height:20px;justify-content:center;align-items:center;border-radius:50%;color:#fff;background:#00f}:host .calendar.description .description.container label{padding-left:4px;padding-right:8px}\n"] }]
|
|
96
96
|
}], propDecorators: { label: [{
|
|
97
97
|
type: Input
|
|
98
98
|
}], displayDays: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-components-organisms-calendar-section.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/organisms/calendar-section/calendar-section.organism.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/calendar-section/xxmachina-components-organisms-calendar-section.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, SimpleChanges, inject, OnChanges } from '@angular/core';\nimport { MatRippleModule } from '@angular/material/core';\nimport { CommonModule } from '@angular/common';\nimport { CalendarDate, Schedule } from '@xxmachina/common/domain/models';\nimport { DailyCellMolecule } from '@xxmachina/components/molecules/daily-cell';\nimport { CalendarPaginatorMolecule } from '@xxmachina/components/molecules/calendar-paginator';\nimport { WeeklyHeaderMolecule } from '@xxmachina/components/molecules/weekly-header';\nimport dayjs from 'dayjs';\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n CalendarPaginatorMolecule,\n DailyCellMolecule,\n WeeklyHeaderMolecule,\n MatRippleModule\n ],\n selector: 'organisms-calendar-section',\n template: `\n <!-- <molecules-calendar-paginator\n *ngIf=\"displayPaginator\"\n [date]=\"date\"\n (dateChange)=\"dateChange.emit($event)\"\n /> -->\n <div class=\"calendar header\">\n <molecules-weekly-header/>\n </div>\n <div class=\"calendar contents\">\n <ng-container *ngFor=\"let week of calendar;\">\n <molecules-daily-cell \n *ngFor=\"let date of week;\"\n [date]=\"date.date\"\n [schedules]=\"schedules\"\n [displayDate]=\"displayDays\"\n [marked]=\"isToday(date) || isEndDay(date)\"\n [markingColor]=\"isToday(date) ? '#6200EE' : isEndDay(date) ? '#B00020' : 'transparent'\"\n noSchedulesText=\"予定なし\"\n matRipple\n (click)=\"onDateClick.emit(date)\"\n ></molecules-daily-cell>\n </ng-container>\n </div>\n `,\n styleUrls: ['./calendar-section.organism.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarSectionOrganism implements OnChanges {\n private el = inject(ElementRef);\n @Input() label = 'label';\n @Input() displayDays = true;\n @Input() readonly calendar: CalendarDate[][];\n @Input() schedules: Schedule[] = [];\n @Input() date = dayjs()\n @Input() today = dayjs();\n @Input() displayPaginator = true;\n @Input() displayDescription = true;\n @Output() onDateClick = new EventEmitter();\n @Output() dateChange = new EventEmitter();\n\n\n isToday(date: CalendarDate): boolean {\n return !!date.date.isSame(dayjs(), 'day');\n }\n\n isEndDay(date: CalendarDate): boolean {\n return !!date.date.isSame(dayjs().add(10, 'days'), 'day');\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.calendar) {\n this.el.nativeElement.style.setProperty('--row-num', this.calendar?.length || 0);\n }\n }\n\n // getToolTipText(date: CalendarDate): string {\n // return date.schedules.map(s => {\n // return `${s.startAt.format('HH:mm')}~${s.endAt.format('HH:mm')}`\n // }).join(' ');\n // }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-components-organisms-calendar-section.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/organisms/calendar-section/calendar-section.organism.ts","../../../../../packages/@xxmachina/components/src/lib/organisms/calendar-section/xxmachina-components-organisms-calendar-section.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, Input, Output, SimpleChanges, inject, OnChanges } from '@angular/core';\nimport { MatRippleModule } from '@angular/material/core';\nimport { CommonModule } from '@angular/common';\nimport { CalendarDate, Schedule } from '@xxmachina/common/domain/models/scheduler';\nimport { DailyCellMolecule } from '@xxmachina/components/molecules/daily-cell';\nimport { CalendarPaginatorMolecule } from '@xxmachina/components/molecules/calendar-paginator';\nimport { WeeklyHeaderMolecule } from '@xxmachina/components/molecules/weekly-header';\nimport dayjs from 'dayjs';\n\n@Component({\n standalone: true,\n imports: [\n CommonModule,\n CalendarPaginatorMolecule,\n DailyCellMolecule,\n WeeklyHeaderMolecule,\n MatRippleModule\n ],\n selector: 'organisms-calendar-section',\n template: `\n <!-- <molecules-calendar-paginator\n *ngIf=\"displayPaginator\"\n [date]=\"date\"\n (dateChange)=\"dateChange.emit($event)\"\n /> -->\n <div class=\"calendar header\">\n <molecules-weekly-header/>\n </div>\n <div class=\"calendar contents\">\n <ng-container *ngFor=\"let week of calendar;\">\n <molecules-daily-cell \n *ngFor=\"let date of week;\"\n [date]=\"date.date\"\n [schedules]=\"schedules\"\n [displayDate]=\"displayDays\"\n [marked]=\"isToday(date) || isEndDay(date)\"\n [markingColor]=\"isToday(date) ? '#6200EE' : isEndDay(date) ? '#B00020' : 'transparent'\"\n noSchedulesText=\"予定なし\"\n matRipple\n (click)=\"onDateClick.emit(date)\"\n ></molecules-daily-cell>\n </ng-container>\n </div>\n `,\n styleUrls: ['./calendar-section.organism.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class CalendarSectionOrganism implements OnChanges {\n private el = inject(ElementRef);\n @Input() label = 'label';\n @Input() displayDays = true;\n @Input() readonly calendar: CalendarDate[][];\n @Input() schedules: Schedule[] = [];\n @Input() date = dayjs()\n @Input() today = dayjs();\n @Input() displayPaginator = true;\n @Input() displayDescription = true;\n @Output() onDateClick = new EventEmitter();\n @Output() dateChange = new EventEmitter();\n\n\n isToday(date: CalendarDate): boolean {\n return !!date.date.isSame(dayjs(), 'day');\n }\n\n isEndDay(date: CalendarDate): boolean {\n return !!date.date.isSame(dayjs().add(10, 'days'), 'day');\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.calendar) {\n this.el.nativeElement.style.setProperty('--row-num', this.calendar?.length || 0);\n }\n }\n\n // getToolTipText(date: CalendarDate): string {\n // return date.schedules.map(s => {\n // return `${s.startAt.format('HH:mm')}~${s.endAt.format('HH:mm')}`\n // }).join(' ');\n // }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,12 @@ import { injectRouteParam, injectRouteData, injectRouteParam$, injectUnflattenRo
|
|
|
11
11
|
import { combineLatest, filter, map, tap, shareReplay } from 'rxjs';
|
|
12
12
|
import { AppService } from '@ng-atomic/common/services/app';
|
|
13
13
|
import { makeConfig, injectNavStartActionsV2 } from '@ng-atomic/common/services/ui';
|
|
14
|
-
import { Query, QueryHelper
|
|
14
|
+
import { Query, QueryHelper } from '@xxmachina/common/domain/models';
|
|
15
15
|
import { makeInitializerConfig } from '@ng-atomic/common/services/initializer';
|
|
16
16
|
import { pick, merge } from 'lodash-es';
|
|
17
17
|
import { injectOne$ } from '@ng-atomic/common/stores/entities';
|
|
18
18
|
import { MachinaDevService } from '@xxmachina/components/services/debug';
|
|
19
|
+
import { EndpointHelper } from '@xxmachina/common/domain/models/endpoint';
|
|
19
20
|
import { derivedAsync } from 'ngxtension/derived-async';
|
|
20
21
|
import { CommandFeature } from '@xxmachina/components/features/command';
|
|
21
22
|
import { TabsFrame } from '@ng-atomic/components/frames/tabs';
|
|
@@ -215,14 +216,6 @@ let CommandPageStore = class CommandPageStore extends InjectableComponent {
|
|
|
215
216
|
return () => history.back();
|
|
216
217
|
});
|
|
217
218
|
}
|
|
218
|
-
static provideFileSelectedEffect() {
|
|
219
|
-
return provideEffect(CommandPageStore_1.ActionId.FILE_SELECTED, () => {
|
|
220
|
-
const store = inject(CommandPageStore_1);
|
|
221
|
-
return (payload) => {
|
|
222
|
-
store.form().patchValue({ file: payload.files?.[0] });
|
|
223
|
-
};
|
|
224
|
-
});
|
|
225
|
-
}
|
|
226
219
|
constructor() {
|
|
227
220
|
super();
|
|
228
221
|
this.feature = inject(CommandFeature);
|
|
@@ -238,14 +231,13 @@ let CommandPageStore = class CommandPageStore extends InjectableComponent {
|
|
|
238
231
|
...this.extractedFormFieldMap(),
|
|
239
232
|
...this.additionalFormFieldMap()
|
|
240
233
|
})));
|
|
241
|
-
this.formFieldKeys = input(_computed(() => []));
|
|
242
234
|
this.data = injectUnflattenRouteParam('data');
|
|
243
235
|
this.formInvalid = derivedAsync(() => getInvalid$(this.form()));
|
|
244
236
|
this.actions = derivedAsync(() => buildActions(this.feature.hasPermission(this.command()), this.formInvalid()));
|
|
245
237
|
CommandPageStore_1.Initializer.initializeStore(this);
|
|
246
238
|
}
|
|
247
239
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandPageStore, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
248
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.1.4", type: CommandPageStore, isStandalone: true, inputs: { style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, navEndActions: { classPropertyName: "navEndActions", publicName: "navEndActions", isSignal: true, isRequired: false, transformFunction: null }, command: { classPropertyName: "command", publicName: "command", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, extractedFormFieldMap: { classPropertyName: "extractedFormFieldMap", publicName: "extractedFormFieldMap", isSignal: true, isRequired: false, transformFunction: null }, additionalFormFieldMap: { classPropertyName: "additionalFormFieldMap", publicName: "additionalFormFieldMap", isSignal: true, isRequired: false, transformFunction: null }, formFieldMap: { classPropertyName: "formFieldMap", publicName: "formFieldMap", isSignal: true, isRequired: false, transformFunction: null }
|
|
240
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.1.4", type: CommandPageStore, isStandalone: true, inputs: { style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, navEndActions: { classPropertyName: "navEndActions", publicName: "navEndActions", isSignal: true, isRequired: false, transformFunction: null }, command: { classPropertyName: "command", publicName: "command", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: false, transformFunction: null }, extractedFormFieldMap: { classPropertyName: "extractedFormFieldMap", publicName: "extractedFormFieldMap", isSignal: true, isRequired: false, transformFunction: null }, additionalFormFieldMap: { classPropertyName: "additionalFormFieldMap", publicName: "additionalFormFieldMap", isSignal: true, isRequired: false, transformFunction: null }, formFieldMap: { classPropertyName: "formFieldMap", publicName: "formFieldMap", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 }); }
|
|
249
241
|
};
|
|
250
242
|
CommandPageStore = CommandPageStore_1 = __decorate([
|
|
251
243
|
TokenizedType(),
|
|
@@ -267,16 +259,12 @@ class CommandPage extends NgAtomicComponent {
|
|
|
267
259
|
this.dispatch({ id: ActionId.FILE_SELECTED, payload });
|
|
268
260
|
}
|
|
269
261
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: CommandPage, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
270
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.4", type: CommandPage, isStandalone: true, selector: "pages-command",
|
|
271
|
-
CommandFeature,
|
|
272
|
-
QueryFeature,
|
|
273
|
-
], usesInheritance: true, hostDirectives: [{ directive: CommandPageStore, inputs: ["style", "style", "navEndActions", "navEndActions", "command", "command", "form", "form", "additionalFormFieldMap", "additionalFormFieldMap", "formFieldMap", "formFieldMap"] }], ngImport: i0, template: `
|
|
262
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.4", type: CommandPage, isStandalone: true, selector: "pages-command", usesInheritance: true, hostDirectives: [{ directive: CommandPageStore, inputs: ["style", "style", "navEndActions", "navEndActions", "command", "command", "form", "form", "additionalFormFieldMap", "additionalFormFieldMap", "formFieldMap", "formFieldMap"] }], ngImport: i0, template: `
|
|
274
263
|
<frames-router-outlet>
|
|
275
264
|
<templates-form
|
|
276
265
|
[form]="store.form()"
|
|
277
266
|
[style]="store.style()"
|
|
278
267
|
[fieldMap]="store.formFieldMap()"
|
|
279
|
-
[fieldKeys]="store.formFieldKeys()"
|
|
280
268
|
[title]="store.feature.title()"
|
|
281
269
|
[navStartActions]="store.navStartActions()"
|
|
282
270
|
[navEndActions]="store.navEndActions()"
|
|
@@ -289,7 +277,7 @@ class CommandPage extends NgAtomicComponent {
|
|
|
289
277
|
</frames-tabs>
|
|
290
278
|
</templates-form>
|
|
291
279
|
</frames-router-outlet>
|
|
292
|
-
`, isInline: true, styles: [":host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-command-
|
|
280
|
+
`, isInline: true, styles: [":host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-command-OkkG: var(--page-width-lv1)}:host .template{--first-content-height: 0px;width:var(--page-width-lv1-SCOPED-IN-command-OkkG)}:host .template div[dashboard]{padding:0;box-sizing:border-box}\n"], dependencies: [{ kind: "component", type: RouterOutletFrame, selector: "frames-router-outlet", outputs: ["events"] }, { kind: "component", type: FormTemplate, selector: "templates-form" }, { kind: "component", type: TabsFrame, selector: "frames-tabs", inputs: ["labels"] }, { kind: "component", type: CommandFormGroup, selector: "groups-command-form", inputs: ["apiJsonUrls"] }, { kind: "component", type: QueryFormGroup, selector: "groups-query-form", inputs: ["keyActions"] }] }); }
|
|
293
281
|
}
|
|
294
282
|
__decorate([
|
|
295
283
|
Effect(FormTemplateStore.ActionId.FILE_SELECTED),
|
|
@@ -305,16 +293,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
305
293
|
TabsFrame,
|
|
306
294
|
CommandFormGroup,
|
|
307
295
|
QueryFormGroup
|
|
308
|
-
], providers: [
|
|
309
|
-
CommandFeature,
|
|
310
|
-
QueryFeature,
|
|
311
296
|
], template: `
|
|
312
297
|
<frames-router-outlet>
|
|
313
298
|
<templates-form
|
|
314
299
|
[form]="store.form()"
|
|
315
300
|
[style]="store.style()"
|
|
316
301
|
[fieldMap]="store.formFieldMap()"
|
|
317
|
-
[fieldKeys]="store.formFieldKeys()"
|
|
318
302
|
[title]="store.feature.title()"
|
|
319
303
|
[navStartActions]="store.navStartActions()"
|
|
320
304
|
[navEndActions]="store.navEndActions()"
|
|
@@ -339,7 +323,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
339
323
|
'formFieldMap',
|
|
340
324
|
]
|
|
341
325
|
},
|
|
342
|
-
], styles: [":host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-command-
|
|
326
|
+
], styles: [":host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-command-OkkG: var(--page-width-lv1)}:host .template{--first-content-height: 0px;width:var(--page-width-lv1-SCOPED-IN-command-OkkG)}:host .template div[dashboard]{padding:0;box-sizing:border-box}\n"] }]
|
|
343
327
|
}], propDecorators: { onFileSelected: [] } });
|
|
344
328
|
|
|
345
329
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xxmachina-components-pages-command.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/pages/command/command.page.ts","../../../../../packages/@xxmachina/components/src/lib/pages/command/xxmachina-components-pages-command.ts"],"sourcesContent":["import { Component, computed, Directive, effect, inject, input, Provider } from '@angular/core';\nimport { AbstractControl, FormArray, FormControl, FormGroup } from '@angular/forms';\nimport { RouterOutletFrame } from '@ng-atomic/components/frames/router-outlet';\nimport { CommandService } from '@xxmachina/components/services/command';\nimport { _computed, Action, applyToInput, Effect, InjectableComponent, NgAtomicComponent, provideEffect, TokenizedType } from '@ng-atomic/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { FormTemplate, FormTemplateStore } from '@ng-atomic/components/templates/form';\nimport { getInvalid$, injectRouteData, injectRouteData$, injectRouteParam, injectRouteParam$, injectUnflattenRouteParam$ } from '@ng-atomic/common/utils';\nimport { map, tap, filter, combineLatest, shareReplay } from 'rxjs';\nimport { FormFieldMap } from '@ng-atomic/common/pipes/smart-field';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectNavStartActionsV2, makeConfig } from '@ng-atomic/common/services/ui';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { makeInitializerConfig } from '@ng-atomic/common/services/initializer';\nimport { injectUnflattenRouteParam } from '@ng-atomic/common/utils';\nimport { merge, pick } from 'lodash-es';\nimport { injectOne$ } from '@ng-atomic/common/stores/entities';\nimport { MachinaDevService } from '@xxmachina/components/services/debug';\nimport { EndpointHelper } from '@xxmachina/common/domain/models';\nimport { derivedAsync } from 'ngxtension/derived-async';\nimport { CommandFeature } from '@xxmachina/components/features/command';\nimport { TabsFrame } from '@ng-atomic/components/frames/tabs';\nimport { QueryFormGroup } from '@xxmachina/components/groups/query-form';\nimport { CommandFormGroup } from '@xxmachina/components/groups/command-form';\nimport { QueryFeature } from '@xxmachina/components/features/query';\n\nenum ActionId {\n EXECUTE_COMMAND = 'execute-command',\n FILE_SELECTED = 'file-selected',\n}\n\nfunction buildFormData(form: FormGroup | FormArray, formData: FormData = new FormData(), parentKey = ''): FormData {\n Object.keys(form.controls).forEach(key => {\n const control = form.get(key);\n const formKey = parentKey ? `${parentKey}.${key}` : key;\n\n if (control instanceof FormGroup || control instanceof FormArray) {\n // 子のFormGroupやFormArrayを再帰的に処理\n buildFormData(control, formData, formKey);\n } else if (control instanceof FormControl) {\n // フォームの値を追加\n const value = control.value;\n if (value !== null && value !== undefined) {\n formData.append(formKey, value);\n }\n }\n });\n\n return formData;\n}\n\nfunction buildData(form: AbstractControl, contentType: string) {\n if (contentType === 'multipart/form-data') {\n return buildFormData(form as FormGroup);\n } else {\n return form.getRawValue();\n }\n}\n\nexport function buildActions(hasPermission: boolean, invalid: boolean): Action[] {\n return hasPermission\n ? [{ id: ActionId.EXECUTE_COMMAND, name: '実行', disabled: invalid }]\n : [{ id: ActionId.EXECUTE_COMMAND, name: '実行権限がありません', disabled: true }]\n}\n\n@TokenizedType()\n@Directive({ standalone: true })\nexport class CommandPageStore extends InjectableComponent {\n static readonly ActionId = ActionId;\n static readonly Config = makeConfig(() => {\n const dev = inject(MachinaDevService);\n return () => ({\n style: {\n width: 'var(--page-width-lv1)',\n },\n baseUrls: [] as string[],\n command: <Command>{\n id: '1',\n webApiRequest: {\n serverUrl: null,\n apiJsonUrl: null,\n path: '/users',\n method: 'GET',\n bodySchema: null,\n },\n },\n navEndActions: <Action[]>[],\n additionalFormFieldMap: <FormFieldMap>(dev.isDevMode() ? {} : {\n 'id': { type: 'hidden' },\n '__typename': { type: 'hidden' },\n 'kind': { type: 'hidden' },\n }),\n });\n }, ['@xxmachina/components', 'pages', 'command']);\n static readonly Initializer = makeInitializerConfig(CommandPageStore);\n\n static provideDefault(): Provider[] {\n return [\n CommandPageStore.Config.provide(),\n CommandPageStore.provideDefaultInitializer(),\n CommandPageStore.provideDefaultEffects(),\n ];\n }\n\n static provideCustom(): Provider[] {\n return [\n CommandPageStore.provideDefault(),\n CommandPageStore.provideCommandIdFromRouteDataInitializer(),\n ];\n }\n\n static provideDefaultInitializer(): Provider[] {\n return [\n CommandPageStore.providePatchFormFromRouteParamInitializer(),\n CommandPageStore.providePatchCommandFormValueFromCommandInitializer(),\n CommandPageStore.provideInitialFormValueFromQueryResult()\n ];\n }\n\n static provideDefaultEffects(): Provider[] {\n return [\n CommandPageStore.provideExecuteCommandEffect(),\n CommandPageStore.provideBackEffect(),\n QueryFeature.provideDefaultEffects(),\n ];\n }\n\n static provideCommandFromRouteParamInitializer(paramName = 'commandId'): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const commandId = injectRouteParam(paramName);\n const service = inject(CommandService);\n effect(() => {\n applyToInput(store, 'command', service.getCommand(commandId()));\n });\n });\n }\n\n static provideCommandIdFromRouteDataInitializer(): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const commandId = injectRouteData<string>('commandId');\n const service = inject(CommandService);\n effect(() => {\n applyToInput(store, 'command', service.getCommand(commandId()));\n });\n });\n }\n\n static providePatchFormFromRouteParamInitializer() {\n return [\n CommandPageStore.Initializer.provide(store => {\n effect(() => store.form().patchValue(store.data()));\n }),\n ]\n }\n\n static providePatchCommandFormValueFromCommandInitializer() {\n return [\n CommandPageStore.Initializer.provide(store => {\n effect(() => {\n if (!store.command()) return;\n store.feature.commandForm().patchValue({...store.command()});\n });\n })\n ];\n }\n\n static provideQueryIdFromRouteParam(key = 'queryId'): Provider {\n return CommandPageStore.Initializer.provide(() => {\n const feature = inject(QueryFeature);\n const queryId$ = injectRouteParam$(key);\n const params$ = injectUnflattenRouteParam$('data');\n const query$ = injectOne$(Query, { id: queryId$ });\n const setupQuery = derivedAsync(() => combineLatest({\n query: query$,\n params: params$,\n }).pipe(\n filter(({query, params}) => !!query && !!params),\n map(({query, params}) => QueryHelper.setup(query, params)),\n tap((query) => console.debug('[CommandPage] query:', query)),\n shareReplay(1),\n ));\n effect(() => {\n console.debug('[CommandPage] setupQuery:', setupQuery());\n feature.form.patchValue(setupQuery());\n });\n });\n }\n\n static provideQueryFromRouteData(key = 'query'): Provider {\n return CommandPageStore.Initializer.provide(() => {\n const feature = inject(QueryFeature);\n const params$ = injectUnflattenRouteParam$('data');\n const query$ = injectRouteData$<Query>(key);\n const setupQuery = derivedAsync(() => combineLatest({\n query: query$,\n params: params$,\n }).pipe(\n filter(({query, params}) => !!query && !!params),\n map(({query, params}) => QueryHelper.setup(query, params)),\n tap((query) => console.debug('[CommandPage] query:', query)),\n shareReplay(1),\n ));\n effect(() => { feature.form.patchValue(setupQuery()); });\n });\n }\n \n static provideInitialFormValueFromQueryResult(): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const feature = inject(QueryFeature);\n const data = computed(() => QueryHelper.getResult(feature.result()));\n effect(() => { store.form().patchValue(data()); });\n feature.refresh();\n });\n }\n\n static provideExecuteCommandEffect(): Provider {\n return provideEffect(ActionId.EXECUTE_COMMAND, () => {\n const store = inject(CommandPageStore);\n const app = inject(AppService);\n const paramKeys = computed(() => EndpointHelper.extract(store.feature.path()));\n const resolvedParams = computed(() => pick(store.data(), paramKeys()));\n\n return () => {\n const resolvedEndpoint = EndpointHelper.resolve(store.feature.path(), resolvedParams());\n const data = buildData(store.form(), store.command()?.webApiRequest?.contentType);\n const command = merge(\n store.command(),\n store.feature.commandForm().getRawValue(),\n {webApiRequest: {path: resolvedEndpoint}},\n );\n app.loading.await(() => {\n return store.feature.execute(command, data).then(() => {\n app.snackBar.open('成功しました。');\n history.back();\n }).catch((error) => {\n console.error(error);\n app.snackBar.openError(error);\n });\n });\n }\n });\n }\n\n static provideBackEffect(): Provider {\n return provideEffect(FormTemplateStore.ActionId.BACK, () => {\n return () => history.back();\n });\n }\n\n static provideFileSelectedEffect(): Provider {\n return provideEffect(CommandPageStore.ActionId.FILE_SELECTED, () => {\n const store = inject(CommandPageStore);\n return (payload) => {\n store.form().patchValue({ file: payload.files?.[0] })\n }\n });\n }\n\n readonly feature = inject(CommandFeature);\n readonly config = CommandPageStore.Config.inject();\n readonly style = input(_computed(() => this.config().style));\n readonly navStartActions = injectNavStartActionsV2();\n readonly navEndActions = input(_computed(() => this.config().navEndActions));\n readonly command = input(_computed(() => this.config().command));\n readonly form = input(_computed(() => this.feature.form()));\n readonly extractedFormFieldMap = input(_computed(() => this.feature.extractedFormFieldMap()));\n readonly additionalFormFieldMap = input(_computed(() => this.config().additionalFormFieldMap));\n readonly formFieldMap = input(_computed<FormFieldMap>(() => ({\n ...this.extractedFormFieldMap(),\n ...this.additionalFormFieldMap()\n })));\n readonly formFieldKeys = input<string[]>(_computed(() => []));\n readonly data = injectUnflattenRouteParam('data');\n protected readonly formInvalid = derivedAsync(() => getInvalid$(this.form()));\n readonly actions = derivedAsync(() => buildActions(this.feature.hasPermission(this.command()), this.formInvalid()));\n\n constructor() {\n super();\n CommandPageStore.Initializer.initializeStore(this);\n }\n}\n\n@Component({\n selector: 'pages-command',\n imports: [\n RouterOutletFrame,\n FormTemplate,\n TabsFrame,\n CommandFormGroup,\n QueryFormGroup\n ],\n providers: [\n CommandFeature,\n QueryFeature,\n ],\n template: `\n <frames-router-outlet>\n <templates-form\n [form]=\"store.form()\"\n [style]=\"store.style()\"\n [fieldMap]=\"store.formFieldMap()\"\n [fieldKeys]=\"store.formFieldKeys()\"\n [title]=\"store.feature.title()\"\n [navStartActions]=\"store.navStartActions()\"\n [navEndActions]=\"store.navEndActions()\"\n [actions]=\"store.actions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-tabs [labels]=\"['Command', 'InitializeQuery']\" dashboard>\n <ng-template #tab><groups-command-form (action)=\"dispatch($event)\"/></ng-template>\n <ng-template #tab><groups-query-form (action)=\"dispatch($event)\"/></ng-template>\n </frames-tabs> \n </templates-form>\n </frames-router-outlet>\n `,\n styleUrls: ['./command.page.scss'],\n hostDirectives: [\n {\n directive: CommandPageStore,\n inputs: [\n 'style',\n 'navEndActions',\n 'command',\n 'form',\n 'additionalFormFieldMap',\n 'formFieldMap',\n ]\n },\n ]\n})\nexport class CommandPage extends NgAtomicComponent {\n protected readonly store = inject(CommandPageStore);\n readonly route = inject(ActivatedRoute);\n readonly app = inject(AppService);\n readonly parentRouterOutletFrame = inject(RouterOutletFrame);\n\n @Effect(FormTemplateStore.ActionId.FILE_SELECTED)\n protected onFileSelected(payload) {\n this.dispatch({id: ActionId.FILE_SELECTED, payload});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"xxmachina-components-pages-command.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/pages/command/command.page.ts","../../../../../packages/@xxmachina/components/src/lib/pages/command/xxmachina-components-pages-command.ts"],"sourcesContent":["import { Component, computed, Directive, effect, inject, input, Provider } from '@angular/core';\nimport { AbstractControl, FormArray, FormControl, FormGroup } from '@angular/forms';\nimport { RouterOutletFrame } from '@ng-atomic/components/frames/router-outlet';\nimport { CommandService } from '@xxmachina/components/services/command';\nimport { _computed, Action, applyToInput, Effect, InjectableComponent, NgAtomicComponent, provideEffect, TokenizedType } from '@ng-atomic/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { FormTemplate, FormTemplateStore } from '@ng-atomic/components/templates/form';\nimport { getInvalid$, injectRouteData, injectRouteData$, injectRouteParam, injectRouteParam$, injectUnflattenRouteParam$ } from '@ng-atomic/common/utils';\nimport { map, tap, filter, combineLatest, shareReplay } from 'rxjs';\nimport { FormFieldMap } from '@ng-atomic/common/pipes/smart-field';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectNavStartActionsV2, makeConfig } from '@ng-atomic/common/services/ui';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { Command } from '@xxmachina/common/domain/models';\nimport { makeInitializerConfig } from '@ng-atomic/common/services/initializer';\nimport { injectUnflattenRouteParam } from '@ng-atomic/common/utils';\nimport { merge, pick } from 'lodash-es';\nimport { injectOne$ } from '@ng-atomic/common/stores/entities';\nimport { MachinaDevService } from '@xxmachina/components/services/debug';\nimport { EndpointHelper } from '@xxmachina/common/domain/models/endpoint';\nimport { derivedAsync } from 'ngxtension/derived-async';\nimport { CommandFeature } from '@xxmachina/components/features/command';\nimport { TabsFrame } from '@ng-atomic/components/frames/tabs';\nimport { QueryFormGroup } from '@xxmachina/components/groups/query-form';\nimport { CommandFormGroup } from '@xxmachina/components/groups/command-form';\nimport { QueryFeature } from '@xxmachina/components/features/query';\n\nenum ActionId {\n EXECUTE_COMMAND = 'execute-command',\n FILE_SELECTED = 'file-selected',\n}\n\nfunction buildFormData(form: FormGroup | FormArray, formData: FormData = new FormData(), parentKey = ''): FormData {\n Object.keys(form.controls).forEach(key => {\n const control = form.get(key);\n const formKey = parentKey ? `${parentKey}.${key}` : key;\n\n if (control instanceof FormGroup || control instanceof FormArray) {\n // 子のFormGroupやFormArrayを再帰的に処理\n buildFormData(control, formData, formKey);\n } else if (control instanceof FormControl) {\n // フォームの値を追加\n const value = control.value;\n if (value !== null && value !== undefined) {\n formData.append(formKey, value);\n }\n }\n });\n\n return formData;\n}\n\nfunction buildData(form: AbstractControl, contentType: string) {\n if (contentType === 'multipart/form-data') {\n return buildFormData(form as FormGroup);\n } else {\n return form.getRawValue();\n }\n}\n\nexport function buildActions(hasPermission: boolean, invalid: boolean): Action[] {\n return hasPermission\n ? [{ id: ActionId.EXECUTE_COMMAND, name: '実行', disabled: invalid }]\n : [{ id: ActionId.EXECUTE_COMMAND, name: '実行権限がありません', disabled: true }]\n}\n\n@TokenizedType()\n@Directive({ standalone: true })\nexport class CommandPageStore extends InjectableComponent {\n static readonly ActionId = ActionId;\n static readonly Config = makeConfig(() => {\n const dev = inject(MachinaDevService);\n return () => ({\n style: {\n width: 'var(--page-width-lv1)',\n },\n baseUrls: [] as string[],\n command: <Command>{\n id: '1',\n webApiRequest: {\n serverUrl: null,\n apiJsonUrl: null,\n path: '/users',\n method: 'GET',\n bodySchema: null,\n },\n },\n navEndActions: <Action[]>[],\n additionalFormFieldMap: <FormFieldMap>(dev.isDevMode() ? {} : {\n 'id': { type: 'hidden' },\n '__typename': { type: 'hidden' },\n 'kind': { type: 'hidden' },\n }),\n });\n }, ['@xxmachina/components', 'pages', 'command']);\n static readonly Initializer = makeInitializerConfig(CommandPageStore);\n\n static provideDefault(): Provider[] {\n return [\n CommandPageStore.Config.provide(),\n CommandPageStore.provideDefaultInitializer(),\n CommandPageStore.provideDefaultEffects(),\n ];\n }\n\n static provideCustom(): Provider[] {\n return [\n CommandPageStore.provideDefault(),\n CommandPageStore.provideCommandIdFromRouteDataInitializer(),\n ];\n }\n\n static provideDefaultInitializer(): Provider[] {\n return [\n CommandPageStore.providePatchFormFromRouteParamInitializer(),\n CommandPageStore.providePatchCommandFormValueFromCommandInitializer(),\n CommandPageStore.provideInitialFormValueFromQueryResult()\n ];\n }\n\n static provideDefaultEffects(): Provider[] {\n return [\n CommandPageStore.provideExecuteCommandEffect(),\n CommandPageStore.provideBackEffect(),\n QueryFeature.provideDefaultEffects(),\n ];\n }\n\n static provideCommandFromRouteParamInitializer(paramName = 'commandId'): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const commandId = injectRouteParam(paramName);\n const service = inject(CommandService);\n effect(() => {\n applyToInput(store, 'command', service.getCommand(commandId()));\n });\n });\n }\n\n static provideCommandIdFromRouteDataInitializer(): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const commandId = injectRouteData<string>('commandId');\n const service = inject(CommandService);\n effect(() => {\n applyToInput(store, 'command', service.getCommand(commandId()));\n });\n });\n }\n\n static providePatchFormFromRouteParamInitializer() {\n return [\n CommandPageStore.Initializer.provide(store => {\n effect(() => store.form().patchValue(store.data()));\n }),\n ]\n }\n\n static providePatchCommandFormValueFromCommandInitializer() {\n return [\n CommandPageStore.Initializer.provide(store => {\n effect(() => {\n if (!store.command()) return;\n store.feature.commandForm().patchValue({...store.command()});\n });\n })\n ];\n }\n\n static provideQueryIdFromRouteParam(key = 'queryId'): Provider {\n return CommandPageStore.Initializer.provide(() => {\n const feature = inject(QueryFeature);\n const queryId$ = injectRouteParam$(key);\n const params$ = injectUnflattenRouteParam$('data');\n const query$ = injectOne$(Query, { id: queryId$ });\n const setupQuery = derivedAsync(() => combineLatest({\n query: query$,\n params: params$,\n }).pipe(\n filter(({query, params}) => !!query && !!params),\n map(({query, params}) => QueryHelper.setup(query, params)),\n tap((query) => console.debug('[CommandPage] query:', query)),\n shareReplay(1),\n ));\n effect(() => {\n console.debug('[CommandPage] setupQuery:', setupQuery());\n feature.form.patchValue(setupQuery());\n });\n });\n }\n\n static provideQueryFromRouteData(key = 'query'): Provider {\n return CommandPageStore.Initializer.provide(() => {\n const feature = inject(QueryFeature);\n const params$ = injectUnflattenRouteParam$('data');\n const query$ = injectRouteData$<Query>(key);\n const setupQuery = derivedAsync(() => combineLatest({\n query: query$,\n params: params$,\n }).pipe(\n filter(({query, params}) => !!query && !!params),\n map(({query, params}) => QueryHelper.setup(query, params)),\n tap((query) => console.debug('[CommandPage] query:', query)),\n shareReplay(1),\n ));\n effect(() => { feature.form.patchValue(setupQuery()); });\n });\n }\n \n static provideInitialFormValueFromQueryResult(): Provider {\n return CommandPageStore.Initializer.provide((store) => {\n const feature = inject(QueryFeature);\n const data = computed(() => QueryHelper.getResult(feature.result()));\n effect(() => { store.form().patchValue(data()); });\n feature.refresh();\n });\n }\n\n static provideExecuteCommandEffect(): Provider {\n return provideEffect(ActionId.EXECUTE_COMMAND, () => {\n const store = inject(CommandPageStore);\n const app = inject(AppService);\n const paramKeys = computed(() => EndpointHelper.extract(store.feature.path()));\n const resolvedParams = computed(() => pick(store.data(), paramKeys()));\n\n return () => {\n const resolvedEndpoint = EndpointHelper.resolve(store.feature.path(), resolvedParams());\n const data = buildData(store.form(), store.command()?.webApiRequest?.contentType);\n const command = merge(\n store.command(),\n store.feature.commandForm().getRawValue(),\n {webApiRequest: {path: resolvedEndpoint}},\n );\n app.loading.await(() => {\n return store.feature.execute(command, data).then(() => {\n app.snackBar.open('成功しました。');\n history.back();\n }).catch((error) => {\n console.error(error);\n app.snackBar.openError(error);\n });\n });\n }\n });\n }\n\n static provideBackEffect(): Provider {\n return provideEffect(FormTemplateStore.ActionId.BACK, () => {\n return () => history.back();\n });\n }\n\n readonly feature = inject(CommandFeature);\n readonly config = CommandPageStore.Config.inject();\n readonly style = input(_computed(() => this.config().style));\n readonly navStartActions = injectNavStartActionsV2();\n readonly navEndActions = input(_computed(() => this.config().navEndActions));\n readonly command = input(_computed(() => this.config().command));\n readonly form = input(_computed(() => this.feature.form()));\n readonly extractedFormFieldMap = input(_computed(() => this.feature.extractedFormFieldMap()));\n readonly additionalFormFieldMap = input(_computed(() => this.config().additionalFormFieldMap));\n readonly formFieldMap = input(_computed<FormFieldMap>(() => ({\n ...this.extractedFormFieldMap(),\n ...this.additionalFormFieldMap()\n })));\n readonly data = injectUnflattenRouteParam('data');\n protected readonly formInvalid = derivedAsync(() => getInvalid$(this.form()));\n readonly actions = derivedAsync(() => buildActions(this.feature.hasPermission(this.command()), this.formInvalid()));\n\n constructor() {\n super();\n CommandPageStore.Initializer.initializeStore(this);\n }\n}\n\n@Component({\n selector: 'pages-command',\n imports: [\n RouterOutletFrame,\n FormTemplate,\n TabsFrame,\n CommandFormGroup,\n QueryFormGroup\n ],\n template: `\n <frames-router-outlet>\n <templates-form\n [form]=\"store.form()\"\n [style]=\"store.style()\"\n [fieldMap]=\"store.formFieldMap()\"\n [title]=\"store.feature.title()\"\n [navStartActions]=\"store.navStartActions()\"\n [navEndActions]=\"store.navEndActions()\"\n [actions]=\"store.actions()\"\n (action)=\"dispatch($event)\"\n >\n <frames-tabs [labels]=\"['Command', 'InitializeQuery']\" dashboard>\n <ng-template #tab><groups-command-form (action)=\"dispatch($event)\"/></ng-template>\n <ng-template #tab><groups-query-form (action)=\"dispatch($event)\"/></ng-template>\n </frames-tabs> \n </templates-form>\n </frames-router-outlet>\n `,\n styleUrls: ['./command.page.scss'],\n hostDirectives: [\n {\n directive: CommandPageStore,\n inputs: [\n 'style',\n 'navEndActions',\n 'command',\n 'form',\n 'additionalFormFieldMap',\n 'formFieldMap',\n ]\n },\n ]\n})\nexport class CommandPage extends NgAtomicComponent {\n protected readonly store = inject(CommandPageStore);\n readonly route = inject(ActivatedRoute);\n readonly app = inject(AppService);\n readonly parentRouterOutletFrame = inject(RouterOutletFrame);\n\n @Effect(FormTemplateStore.ActionId.FILE_SELECTED)\n protected onFileSelected(payload) {\n this.dispatch({id: ActionId.FILE_SELECTED, payload});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -370,9 +370,7 @@ class QueryPage extends NgAtomicComponent {
|
|
|
370
370
|
}));
|
|
371
371
|
}
|
|
372
372
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.4", ngImport: i0, type: QueryPage, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
373
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: QueryPage, isStandalone: true, selector: "pages-query",
|
|
374
|
-
QueryFeature,
|
|
375
|
-
], viewQueries: [{ propertyName: "template", first: true, predicate: IndexTemplate, descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: QueryPageStore, inputs: ["query", "query", "titleEditable", "titleEditable", "variablesForm", "variablesForm", "variablesFormFieldMap", "variablesFormFieldMap"] }], ngImport: i0, template: `
|
|
373
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.4", type: QueryPage, isStandalone: true, selector: "pages-query", viewQueries: [{ propertyName: "template", first: true, predicate: IndexTemplate, descendants: true, isSignal: true }], usesInheritance: true, hostDirectives: [{ directive: QueryPageStore, inputs: ["query", "query", "titleEditable", "titleEditable", "variablesForm", "variablesForm", "variablesFormFieldMap", "variablesFormFieldMap"] }], ngImport: i0, template: `
|
|
376
374
|
<frames-router-outlet (events)="store.routerOutletFrameEvent.emit($event)">
|
|
377
375
|
<templates-index
|
|
378
376
|
[tableColumnFormFieldMap]="store.tableColumnFormFieldMap()"
|
|
@@ -403,7 +401,7 @@ class QueryPage extends NgAtomicComponent {
|
|
|
403
401
|
<groups-query-form dashboard (action)="dispatch($event)" />
|
|
404
402
|
</templates-index>
|
|
405
403
|
</frames-router-outlet>
|
|
406
|
-
`, isInline: true, styles: ["@charset \"UTF-8\";:host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-query-
|
|
404
|
+
`, isInline: true, styles: ["@charset \"UTF-8\";:host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-query-Sz1G: var(--page-width-lv1)}:host templates-index{--first-content-height: 300px;padding-left:0;box-sizing:border-box;transition:padding-left .3s}:host templates-index div[navDashboard]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;padding:16px;box-sizing:border-box}:host templates-index div[navDashboard] ng-atomic-form-section-builder{--horizontal-padding: 0}\n"], dependencies: [{ kind: "component", type: IndexTemplate, selector: "templates-index" }, { kind: "component", type: RouterOutletFrame, selector: "frames-router-outlet", outputs: ["events"] }, { kind: "component", type: NgAtomicFormSectionBuilder, selector: "ng-atomic-form-section-builder", inputs: ["form", "formFlatExcludes", "fieldMap"] }, { kind: "component", type: QueryFormGroup, selector: "groups-query-form", inputs: ["keyActions"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
407
405
|
}
|
|
408
406
|
__decorate([
|
|
409
407
|
Effect(IndexTemplateStore.ActionId.BACK),
|
|
@@ -430,8 +428,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
430
428
|
RouterOutletFrame,
|
|
431
429
|
NgAtomicFormSectionBuilder,
|
|
432
430
|
QueryFormGroup,
|
|
433
|
-
], providers: [
|
|
434
|
-
QueryFeature,
|
|
435
431
|
], template: `
|
|
436
432
|
<frames-router-outlet (events)="store.routerOutletFrameEvent.emit($event)">
|
|
437
433
|
<templates-index
|
|
@@ -473,7 +469,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.4", ngImpor
|
|
|
473
469
|
'variablesFormFieldMap',
|
|
474
470
|
]
|
|
475
471
|
},
|
|
476
|
-
], styles: ["@charset \"UTF-8\";:host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-query-
|
|
472
|
+
], styles: ["@charset \"UTF-8\";:host{width:100%;height:100%;display:block;--page-width-lv1-SCOPED-IN-query-Sz1G: var(--page-width-lv1)}:host templates-index{--first-content-height: 300px;padding-left:0;box-sizing:border-box;transition:padding-left .3s}:host templates-index div[navDashboard]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;padding:16px;box-sizing:border-box}:host templates-index div[navDashboard] ng-atomic-form-section-builder{--horizontal-padding: 0}\n"] }]
|
|
477
473
|
}], ctorParameters: () => [], propDecorators: { back: [], navigateToIframe: [], expandPage: [] } });
|
|
478
474
|
|
|
479
475
|
/**
|