@xxmachina/components 19.51.0 → 19.81.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/fesm2022/xxmachina-components-extras-flow.mjs +73 -140
  2. package/fesm2022/xxmachina-components-extras-flow.mjs.map +1 -1
  3. package/fesm2022/xxmachina-components-features-query.mjs +3 -29
  4. package/fesm2022/xxmachina-components-features-query.mjs.map +1 -1
  5. package/fesm2022/xxmachina-components-groups-query-form.mjs +0 -54
  6. package/fesm2022/xxmachina-components-groups-query-form.mjs.map +1 -1
  7. package/fesm2022/xxmachina-components-molecules-inline-edit-field.mjs +0 -1
  8. package/fesm2022/xxmachina-components-molecules-inline-edit-field.mjs.map +1 -1
  9. package/fesm2022/xxmachina-components-molecules-user-avatar-menu.mjs +96 -0
  10. package/fesm2022/xxmachina-components-molecules-user-avatar-menu.mjs.map +1 -0
  11. package/fesm2022/xxmachina-components-molecules-weekly-header.mjs +2 -2
  12. package/fesm2022/xxmachina-components-molecules-workspace-selector.mjs +123 -0
  13. package/fesm2022/xxmachina-components-molecules-workspace-selector.mjs.map +1 -0
  14. package/fesm2022/xxmachina-components-organisms-calendar-section.mjs +2 -2
  15. package/fesm2022/xxmachina-components-organisms-calendar-section.mjs.map +1 -1
  16. package/fesm2022/xxmachina-components-organisms-event-input-section.mjs +0 -1
  17. package/fesm2022/xxmachina-components-organisms-event-input-section.mjs.map +1 -1
  18. package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs +2 -18
  19. package/fesm2022/xxmachina-components-organisms-terminal-input-section.mjs.map +1 -1
  20. package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs +0 -3
  21. package/fesm2022/xxmachina-components-organisms-video-trimmer-section.mjs.map +1 -1
  22. package/fesm2022/xxmachina-components-organisms-xterm.mjs +283 -261
  23. package/fesm2022/xxmachina-components-organisms-xterm.mjs.map +1 -1
  24. package/fesm2022/xxmachina-components-pages-command.mjs +3 -9
  25. package/fesm2022/xxmachina-components-pages-command.mjs.map +1 -1
  26. package/fesm2022/xxmachina-components-pages-query-v2.mjs +0 -13
  27. package/fesm2022/xxmachina-components-pages-query-v2.mjs.map +1 -1
  28. package/fesm2022/xxmachina-components-pages-query.mjs +3 -67
  29. package/fesm2022/xxmachina-components-pages-query.mjs.map +1 -1
  30. package/fesm2022/xxmachina-components-pages-thread.mjs +2 -18
  31. package/fesm2022/xxmachina-components-pages-thread.mjs.map +1 -1
  32. package/fesm2022/{xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs → xxmachina-components-routes-commands-command.routes-Ca2yVrwL.mjs} +1 -2
  33. package/fesm2022/xxmachina-components-routes-commands-command.routes-Ca2yVrwL.mjs.map +1 -0
  34. package/fesm2022/{xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs → xxmachina-components-routes-commands-pages.routes-COpFeEsz.mjs} +2 -2
  35. package/fesm2022/{xxmachina-components-routes-commands-pages.routes-j2xVop4W.mjs.map → xxmachina-components-routes-commands-pages.routes-COpFeEsz.mjs.map} +1 -1
  36. package/fesm2022/xxmachina-components-routes-commands.mjs +1 -2
  37. package/fesm2022/xxmachina-components-routes-commands.mjs.map +1 -1
  38. package/fesm2022/xxmachina-components-routes-pages.mjs +0 -1
  39. package/fesm2022/xxmachina-components-routes-pages.mjs.map +1 -1
  40. package/fesm2022/xxmachina-components-routes-queries.mjs +0 -2
  41. package/fesm2022/xxmachina-components-routes-queries.mjs.map +1 -1
  42. package/fesm2022/{xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs → xxmachina-components-routes-query-pages.routes-BNuONo3g.mjs} +1 -5
  43. package/fesm2022/xxmachina-components-routes-query-pages.routes-BNuONo3g.mjs.map +1 -0
  44. package/fesm2022/xxmachina-components-routes-query.mjs +1 -1
  45. package/fesm2022/{xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs → xxmachina-components-routes-resources-pages.routes-DEu2qpeu.mjs} +2 -2
  46. package/fesm2022/{xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs.map → xxmachina-components-routes-resources-pages.routes-DEu2qpeu.mjs.map} +1 -1
  47. package/fesm2022/{xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs → xxmachina-components-routes-resources-resource.routes-CWxi2agj.mjs} +1 -2
  48. package/fesm2022/xxmachina-components-routes-resources-resource.routes-CWxi2agj.mjs.map +1 -0
  49. package/fesm2022/xxmachina-components-routes-resources.mjs +1 -1
  50. package/fesm2022/xxmachina-components-routes-transformer.mjs +0 -1
  51. package/fesm2022/xxmachina-components-routes-transformer.mjs.map +1 -1
  52. package/fesm2022/xxmachina-components-services-forms-query.mjs +1 -1
  53. package/fesm2022/xxmachina-components-services-forms-query.mjs.map +1 -1
  54. package/fesm2022/xxmachina-components-services-graphql.mjs +0 -4
  55. package/fesm2022/xxmachina-components-services-graphql.mjs.map +1 -1
  56. package/fesm2022/xxmachina-components-services-json-schema.mjs +6 -12
  57. package/fesm2022/xxmachina-components-services-json-schema.mjs.map +1 -1
  58. package/fesm2022/xxmachina-components-services-query.mjs +0 -7
  59. package/fesm2022/xxmachina-components-services-query.mjs.map +1 -1
  60. package/fesm2022/xxmachina-components-services-recording.mjs +0 -13
  61. package/fesm2022/xxmachina-components-services-recording.mjs.map +1 -1
  62. package/fesm2022/xxmachina-components-services-thread.mjs +0 -2
  63. package/fesm2022/xxmachina-components-services-thread.mjs.map +1 -1
  64. package/fesm2022/xxmachina-components-services-version.mjs +171 -0
  65. package/fesm2022/xxmachina-components-services-version.mjs.map +1 -0
  66. package/fesm2022/xxmachina-components-services-workspace-switcher.mjs +9 -0
  67. package/fesm2022/xxmachina-components-services-workspace-switcher.mjs.map +1 -0
  68. package/fesm2022/xxmachina-components-templates-agent.mjs +98 -146
  69. package/fesm2022/xxmachina-components-templates-agent.mjs.map +1 -1
  70. package/fesm2022/xxmachina-components-templates-background.mjs +10 -30
  71. package/fesm2022/xxmachina-components-templates-background.mjs.map +1 -1
  72. package/fesm2022/xxmachina-components-templates-env.mjs +295 -0
  73. package/fesm2022/xxmachina-components-templates-env.mjs.map +1 -0
  74. package/fesm2022/xxmachina-components-templates-flow-nodes-issue.mjs.map +1 -1
  75. package/fesm2022/xxmachina-components-templates-flow.mjs +1 -1
  76. package/fesm2022/xxmachina-components-templates-flow.mjs.map +1 -1
  77. package/fesm2022/xxmachina-components-templates-machina-icon-button-menu.mjs +78 -0
  78. package/fesm2022/xxmachina-components-templates-machina-icon-button-menu.mjs.map +1 -0
  79. package/fesm2022/xxmachina-components.mjs +9 -10
  80. package/fesm2022/xxmachina-components.mjs.map +1 -1
  81. package/package.json +25 -1
  82. package/types/xxmachina-components-extras-flow.d.ts +8 -43
  83. package/types/xxmachina-components-extras-flow.d.ts.map +1 -1
  84. package/types/xxmachina-components-features-query.d.ts +3 -24
  85. package/types/xxmachina-components-features-query.d.ts.map +1 -1
  86. package/types/xxmachina-components-groups-query-form.d.ts +2 -2
  87. package/types/xxmachina-components-molecules-user-avatar-menu.d.ts +19 -0
  88. package/types/xxmachina-components-molecules-user-avatar-menu.d.ts.map +1 -0
  89. package/types/xxmachina-components-molecules-workspace-selector.d.ts +25 -0
  90. package/types/xxmachina-components-molecules-workspace-selector.d.ts.map +1 -0
  91. package/types/xxmachina-components-organisms-xterm.d.ts +130 -111
  92. package/types/xxmachina-components-organisms-xterm.d.ts.map +1 -1
  93. package/types/xxmachina-components-pages-query-v2.d.ts +0 -3
  94. package/types/xxmachina-components-pages-query-v2.d.ts.map +1 -1
  95. package/types/xxmachina-components-pages-query.d.ts +0 -19
  96. package/types/xxmachina-components-pages-query.d.ts.map +1 -1
  97. package/types/xxmachina-components-services-forms-query.d.ts +1 -1
  98. package/types/xxmachina-components-services-graphql.d.ts +0 -3
  99. package/types/xxmachina-components-services-graphql.d.ts.map +1 -1
  100. package/types/xxmachina-components-services-query.d.ts +0 -7
  101. package/types/xxmachina-components-services-query.d.ts.map +1 -1
  102. package/types/xxmachina-components-services-version.d.ts +32 -0
  103. package/types/xxmachina-components-services-version.d.ts.map +1 -0
  104. package/types/xxmachina-components-services-workspace-switcher.d.ts +17 -0
  105. package/types/xxmachina-components-services-workspace-switcher.d.ts.map +1 -0
  106. package/types/xxmachina-components-templates-agent.d.ts +2 -1
  107. package/types/xxmachina-components-templates-agent.d.ts.map +1 -1
  108. package/types/xxmachina-components-templates-env.d.ts +43 -0
  109. package/types/xxmachina-components-templates-env.d.ts.map +1 -0
  110. package/types/xxmachina-components-templates-flow-nodes-issue.d.ts +0 -2
  111. package/types/xxmachina-components-templates-flow-nodes-issue.d.ts.map +1 -1
  112. package/types/xxmachina-components-templates-machina-icon-button-menu.d.ts +18 -0
  113. package/types/xxmachina-components-templates-machina-icon-button-menu.d.ts.map +1 -0
  114. package/types/xxmachina-components.d.ts +2 -0
  115. package/types/xxmachina-components.d.ts.map +1 -1
  116. package/fesm2022/xxmachina-components-routes-commands-command.routes-CSwIdXZg.mjs.map +0 -1
  117. package/fesm2022/xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs.map +0 -1
  118. package/fesm2022/xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-routes-queries.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/queries/queries.routes.ts","../../../../../packages/@xxmachina/components/src/lib/routes/queries/xxmachina-components-routes-queries.ts"],"sourcesContent":["import { computed, effect, inject } from '@angular/core';\nimport { ActivatedRoute, Routes } from '@angular/router';\nimport { Query } from '@xxmachina/common/domain/models';\nimport { QueryHasuraRepository } from '@xxmachina/common/infra/repository/hasura';\nimport { QueryFirestoreRepository } from '@xxmachina/common/infra/repository/firestore';\nimport { defaultDataAccessor, provideDataAccessor } from '@ng-atomic/common/pipes/data-accessor';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectAll } from '@ng-atomic/common/stores/entities';\nimport { AppFrameStore } from '@ng-atomic/components/frames/app';\nimport { IndexPage, IndexPageStore } from '@ng-atomic/components/pages/_index';\nimport { applyToInput, provideEffect } from '@ng-atomic/core';\nimport { plainToInstanceWithValid } from '@nx-ddd/core';\nimport dayjs, { isDayjs } from 'dayjs';\n\nenum ActionId {\n\tEXPORT_QUERIES = '[@xxmachina/app] EXPORT_QUERIES',\n\tIMPORT_QUERIES = '[@xxmachina/app] IMPORT_QUERIES',\n}\n\nexport const routes: Routes = [\n\t{\n\t\tpath: '',\n\t\tcomponent: IndexPage,\n\t\tloadChildren: () => import('./pages/pages.routes').then(m => m.routes),\n\t\tdata: {\n\t\t\ttitle: 'Queries',\n\t\t\tpreload: true,\n\t\t},\n\t\tproviders: [\n\t\t\tprovideDataAccessor(() => (item: Query, key) => {\n\t\t\t\tswitch (key) {\n\t\t\t\t\tcase 'description': return item?.graphql?.query;\n\t\t\t\t\tcase 'subLine': {\n\t\t\t\t\t\treturn item?.createdAt;\n\t\t\t\t\t\t// return item?.createdAt?.format('YYYY/MM/DD HH:mm:ss');\n\t\t\t\t\t}\n\t\t\t\t\tdefault: return defaultDataAccessor(item, key);\n\t\t\t\t}\n\t\t\t}, {merge: false}),\n\t\t\tIndexPageStore.provideDefault(),\n\t\t\tIndexPageStore.Config.provide(() => {\n\t\t\t\tconst route = inject(ActivatedRoute);\n\t\t\t\treturn config => ({\n\t\t\t\t\t...config,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...config.style,\n\t\t\t\t\t\twidth: 'var(--page-width-lv1)',\n\t\t\t\t\t},\n\t\t\t\t\tnavEndActions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'menu',\n\t\t\t\t\t\t\ticon: 'more_vert',\n\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: AppFrameStore.ActionId.NAVIGATE,\n\t\t\t\t\t\t\t\t\ticon: 'add',\n\t\t\t\t\t\t\t\t\tname: 'クエリの作成',\n\t\t\t\t\t\t\t\t\tpayload: {commands: ['new'], extras: {relativeTo: route}},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: ActionId.EXPORT_QUERIES,\n\t\t\t\t\t\t\t\t\ticon: 'download',\n\t\t\t\t\t\t\t\t\tname: 'クエリのエクスポート'\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: ActionId.IMPORT_QUERIES,\n\t\t\t\t\t\t\t\t\ticon: 'upload',\n\t\t\t\t\t\t\t\t\tname: 'クエリのインポート'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\ttitle: 'クエリ一覧',\n\t\t\t\t\ttype: 'list',\n\t\t\t\t\ttableChildrenKey: null,\n\t\t\t\t\tgroupedBy: null as unknown as string,\n\t\t\t\t})\n\t\t\t}),\n\t\t\tIndexPageStore.Initializer.provide((store) => {\n\t\t\t\tconst queries = injectAll(Query);\n\t\t\t\tconst compare = (a: any, b: any) => {\n\t\t\t\t\tif (isDayjs(a.createdAt) && isDayjs(b.createdAt)) {\n\t\t\t\t\t\treturn a.createdAt.isBefore(b.createdAt) ? 1 : -1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn a.createdAt < b.createdAt ? 1 : -1;\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tfunction isISO8601(value: any) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\treturn dayjs(value).toISOString() === value;\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst itemsMap = computed(() => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t'名前付き': {\n\t\t\t\t\t\t\titems: queries().filter((query) => !isISO8601(query.title)).sort(compare),\n\t\t\t\t\t\t\titemsLength: 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'履歴': {\n\t\t\t\t\t\t\titems: queries().filter((query) => query).sort(compare),\n\t\t\t\t\t\t\titemsLength: 0,\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t});\n\n\t\t\t\teffect(() => { applyToInput(store, 'itemsMap', itemsMap()); });\n\t\t\t}),\n\t\t\tprovideEffect(ActionId.EXPORT_QUERIES, () => {\n\t\t\t\tconst store = inject(IndexPageStore);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\treturn () => {\n\t\t\t\t\tapp.clipboard.copy(JSON.stringify(store.itemsMap()['名前付き'].items, null, 2));\n\t\t\t\t\tapp.snackBar.open('JSONをコピーしました');\n\t\t\t\t}\n\t\t\t}),\n\t\t\tprovideEffect(ActionId.IMPORT_QUERIES, () => {\n\t\t\t\t// const repo = inject(QueryHasuraRepository);\n\t\t\t\tconst repo = inject(QueryFirestoreRepository);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\treturn () => {\n\t\t\t\t\tconst json = prompt('JSONを貼り付けてください');\n\t\t\t\t\tif (!json) return;\t\n\t\t\t\t\tconst items = JSON.parse(json) as any[];\n\t\t\t\t\tconst queries = items.map(item => plainToInstanceWithValid(Query, item));\n\t\t\t\t\tapp.loading.await(() => {\n\t\t\t\t\t\treturn repo.saveMany(queries).then(() => {\n\t\t\t\t\t\t\tapp.snackBar.open('クエリをインポートしました');\n\t\t\t\t\t\t}).catch((error) => {\n\t\t\t\t\t\t\tconsole.error(error);\n\t\t\t\t\t\t\tapp.snackBar.open('クエリのインポートに失敗しました');\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}),\n\t\t]\n\t}\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-routes-queries.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/queries/queries.routes.ts","../../../../../packages/@xxmachina/components/src/lib/routes/queries/xxmachina-components-routes-queries.ts"],"sourcesContent":["import { computed, effect, inject } from '@angular/core';\nimport { ActivatedRoute, Routes } from '@angular/router';\nimport { Query } from '@xxmachina/common/domain/models';\nimport { QueryHasuraRepository } from '@xxmachina/common/infra/repository/hasura';\nimport { QueryFirestoreRepository } from '@xxmachina/common/infra/repository/firestore';\nimport { defaultDataAccessor, provideDataAccessor } from '@ng-atomic/common/pipes/data-accessor';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectAll } from '@ng-atomic/common/stores/entities';\nimport { AppFrameStore } from '@ng-atomic/components/frames/app';\nimport { IndexPage, IndexPageStore } from '@ng-atomic/components/pages/_index';\nimport { applyToInput, provideEffect } from '@ng-atomic/core';\nimport { plainToInstanceWithValid } from '@nx-ddd/core';\nimport dayjs, { isDayjs } from 'dayjs';\n\nenum ActionId {\n\tEXPORT_QUERIES = '[@xxmachina/app] EXPORT_QUERIES',\n\tIMPORT_QUERIES = '[@xxmachina/app] IMPORT_QUERIES',\n}\n\nexport const routes: Routes = [\n\t{\n\t\tpath: '',\n\t\tcomponent: IndexPage,\n\t\tloadChildren: () => import('./pages/pages.routes').then(m => m.routes),\n\t\tdata: {\n\t\t\ttitle: 'Queries',\n\t\t\tpreload: true,\n\t\t},\n\t\tproviders: [\n\t\t\tprovideDataAccessor(() => (item: Query, key) => {\n\t\t\t\tswitch (key) {\n\t\t\t\t\tcase 'description': return item?.graphql?.query;\n\t\t\t\t\tcase 'subLine': {\n\t\t\t\t\t\treturn item?.createdAt;\n\t\t\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t\tdefault: return defaultDataAccessor(item, key);\n\t\t\t\t}\n\t\t\t}, {merge: false}),\n\t\t\tIndexPageStore.provideDefault(),\n\t\t\tIndexPageStore.Config.provide(() => {\n\t\t\t\tconst route = inject(ActivatedRoute);\n\t\t\t\treturn config => ({\n\t\t\t\t\t...config,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...config.style,\n\t\t\t\t\t\twidth: 'var(--page-width-lv1)',\n\t\t\t\t\t},\n\t\t\t\t\tnavEndActions: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: 'menu',\n\t\t\t\t\t\t\ticon: 'more_vert',\n\t\t\t\t\t\t\tchildren: [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: AppFrameStore.ActionId.NAVIGATE,\n\t\t\t\t\t\t\t\t\ticon: 'add',\n\t\t\t\t\t\t\t\t\tname: 'クエリの作成',\n\t\t\t\t\t\t\t\t\tpayload: {commands: ['new'], extras: {relativeTo: route}},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: ActionId.EXPORT_QUERIES,\n\t\t\t\t\t\t\t\t\ticon: 'download',\n\t\t\t\t\t\t\t\t\tname: 'クエリのエクスポート'\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tid: ActionId.IMPORT_QUERIES,\n\t\t\t\t\t\t\t\t\ticon: 'upload',\n\t\t\t\t\t\t\t\t\tname: 'クエリのインポート'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\ttitle: 'クエリ一覧',\n\t\t\t\t\ttype: 'list',\n\t\t\t\t\ttableChildrenKey: null,\n\t\t\t\t\tgroupedBy: null as unknown as string,\n\t\t\t\t})\n\t\t\t}),\n\t\t\tIndexPageStore.Initializer.provide((store) => {\n\t\t\t\tconst queries = injectAll(Query);\n\t\t\t\tconst compare = (a: any, b: any) => {\n\t\t\t\t\tif (isDayjs(a.createdAt) && isDayjs(b.createdAt)) {\n\t\t\t\t\t\treturn a.createdAt.isBefore(b.createdAt) ? 1 : -1;\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn a.createdAt < b.createdAt ? 1 : -1;\n\t\t\t\t\t}\n\t\t\t\t};\n\n\t\t\t\tfunction isISO8601(value: any) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\treturn dayjs(value).toISOString() === value;\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst itemsMap = computed(() => {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t'名前付き': {\n\t\t\t\t\t\t\titems: queries().filter((query) => !isISO8601(query.title)).sort(compare),\n\t\t\t\t\t\t\titemsLength: 0,\n\t\t\t\t\t\t},\n\t\t\t\t\t\t'履歴': {\n\t\t\t\t\t\t\titems: queries().filter((query) => query).sort(compare),\n\t\t\t\t\t\t\titemsLength: 0,\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t});\n\n\t\t\t\teffect(() => { applyToInput(store, 'itemsMap', itemsMap()); });\n\t\t\t}),\n\t\t\tprovideEffect(ActionId.EXPORT_QUERIES, () => {\n\t\t\t\tconst store = inject(IndexPageStore);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\treturn () => {\n\t\t\t\t\tapp.clipboard.copy(JSON.stringify(store.itemsMap()['名前付き'].items, null, 2));\n\t\t\t\t\tapp.snackBar.open('JSONをコピーしました');\n\t\t\t\t}\n\t\t\t}),\n\t\t\tprovideEffect(ActionId.IMPORT_QUERIES, () => {\n\t\t\t\t\n\t\t\t\tconst repo = inject(QueryFirestoreRepository);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\treturn () => {\n\t\t\t\t\tconst json = prompt('JSONを貼り付けてください');\n\t\t\t\t\tif (!json) return;\t\n\t\t\t\t\tconst items = JSON.parse(json) as any[];\n\t\t\t\t\tconst queries = items.map(item => plainToInstanceWithValid(Query, item));\n\t\t\t\t\tapp.loading.await(() => {\n\t\t\t\t\t\treturn repo.saveMany(queries).then(() => {\n\t\t\t\t\t\t\tapp.snackBar.open('クエリをインポートしました');\n\t\t\t\t\t\t}).catch((error) => {\n\t\t\t\t\t\t\tconsole.error(error);\n\t\t\t\t\t\t\tapp.snackBar.open('クエリのインポートに失敗しました');\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}),\n\t\t]\n\t}\n];","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -3,10 +3,6 @@ const routes = [
3
3
  path: 'commands',
4
4
  loadChildren: () => import('@xxmachina/components/routes/commands').then(m => m.routes),
5
5
  },
6
- // {
7
- // path: 'queries',
8
- // loadChildren: () => import('@xxmachina/components/routes/queries').then(m => m.routes),
9
- // },
10
6
  {
11
7
  path: 'pages',
12
8
  loadChildren: () => import('@xxmachina/components/routes/pages').then(m => m.routes),
@@ -14,4 +10,4 @@ const routes = [
14
10
  ];
15
11
 
16
12
  export { routes };
17
- //# sourceMappingURL=xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs.map
13
+ //# sourceMappingURL=xxmachina-components-routes-query-pages.routes-BNuONo3g.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xxmachina-components-routes-query-pages.routes-BNuONo3g.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/query/pages/pages.routes.ts"],"sourcesContent":["import { Routes } from '@angular/router';\n\nexport const routes: Routes = [\n\t{\n\t\tpath: 'commands',\n\t\tloadChildren: () => import('@xxmachina/components/routes/commands').then(m => m.routes),\n\t},\n\t\n\t\n\t\n\t\n\t{\n\t\tpath: 'pages',\n\t\tloadChildren: () => import('@xxmachina/components/routes/pages').then(m => m.routes),\n\t},\n];\n\n"],"names":[],"mappings":"AAEO,MAAM,MAAM,GAAW;AAC7B,IAAA;AACC,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,YAAY,EAAE,MAAM,OAAO,uCAAuC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AACvF,KAAA;AAKD,IAAA;AACC,QAAA,IAAI,EAAE,OAAO;AACb,QAAA,YAAY,EAAE,MAAM,OAAO,oCAAoC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AACpF,KAAA;;;;;"}
@@ -13,7 +13,7 @@ const routes = [
13
13
  {
14
14
  path: '',
15
15
  component: QueryPage,
16
- loadChildren: () => import('./xxmachina-components-routes-query-pages.routes-CxTbOJDQ.mjs').then(m => m.routes),
16
+ loadChildren: () => import('./xxmachina-components-routes-query-pages.routes-BNuONo3g.mjs').then(m => m.routes),
17
17
  providers: [
18
18
  QueryPageStore.provideDefault(),
19
19
  QueryPageStore.DI.provideConfig(() => {
@@ -1,9 +1,9 @@
1
1
  const routes = [
2
2
  {
3
3
  path: ':resourceId',
4
- loadChildren: () => import('./xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs').then(m => m.routes),
4
+ loadChildren: () => import('./xxmachina-components-routes-resources-resource.routes-CWxi2agj.mjs').then(m => m.routes),
5
5
  }
6
6
  ];
7
7
 
8
8
  export { routes };
9
- //# sourceMappingURL=xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs.map
9
+ //# sourceMappingURL=xxmachina-components-routes-resources-pages.routes-DEu2qpeu.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/resources/pages/pages.routes.ts"],"sourcesContent":["import { Routes } from '@angular/router';\n\nexport const routes: Routes = [\n\t{\n\t\tpath: ':resourceId',\n\t\tloadChildren: () => import('./resource/resource.routes').then(m => m.routes),\n\t}\n];"],"names":[],"mappings":"AAEO,MAAM,MAAM,GAAW;AAC7B,IAAA;AACC,QAAA,IAAI,EAAE,aAAa;AACnB,QAAA,YAAY,EAAE,MAAM,OAAO,sEAA4B,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAC5E;;;;;"}
1
+ {"version":3,"file":"xxmachina-components-routes-resources-pages.routes-DEu2qpeu.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/resources/pages/pages.routes.ts"],"sourcesContent":["import { Routes } from '@angular/router';\n\nexport const routes: Routes = [\n\t{\n\t\tpath: ':resourceId',\n\t\tloadChildren: () => import('./resource/resource.routes').then(m => m.routes),\n\t}\n];"],"names":[],"mappings":"AAEO,MAAM,MAAM,GAAW;AAC7B,IAAA;AACC,QAAA,IAAI,EAAE,aAAa;AACnB,QAAA,YAAY,EAAE,MAAM,OAAO,sEAA4B,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC;AAC5E;;;;;"}
@@ -12,7 +12,6 @@ const routes = [
12
12
  {
13
13
  path: '',
14
14
  component: FormPage,
15
- // loadChildren: () => import('./pages/pages.routes').then(m => m.routes)
16
15
  providers: [
17
16
  provideModelName(() => 'リソース'),
18
17
  provideEntityIdName('resourceId'),
@@ -128,4 +127,4 @@ const routes = [
128
127
  ];
129
128
 
130
129
  export { routes };
131
- //# sourceMappingURL=xxmachina-components-routes-resources-resource.routes-CkkmqB2_.mjs.map
130
+ //# sourceMappingURL=xxmachina-components-routes-resources-resource.routes-CWxi2agj.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"xxmachina-components-routes-resources-resource.routes-CWxi2agj.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/resources/pages/resource/resource.routes.ts"],"sourcesContent":["import { S } from '@angular/cdk/keycodes';\nimport { computed, effect, inject } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Routes } from '@angular/router';\nimport { Resource } from '@xxmachina/common/domain/models';\nimport { ResourceHasuraRepository } from '@xxmachina/common/infra/repository/hasura';\nimport { provideLangMap, provideModelName } from '@ng-atomic/common/pipes/domain';\nimport { FormFieldMap } from '@ng-atomic/common/pipes/smart-field';\nimport { AppService } from '@ng-atomic/common/services/app';\nimport { injectEntityStore, injectOne } from '@ng-atomic/common/stores/entities';\nimport { computedRawValue, getValue, injectRouteParam } from '@ng-atomic/common/utils';\n\nimport { FormPage, FormPageStore, provideEntityIdName } from '@ng-atomic/components/pages/form';\nimport { applyToInput, provideEffect } from '@ng-atomic/core';\nimport { getLangMap } from '@nx-ddd/common/domain';\n\nexport const routes: Routes = [\n\t{\n\t\tpath: '',\n\t\tcomponent: FormPage,\n\t\t\n\t\tproviders: [\n\t\t\tprovideModelName(() => 'リソース'),\n\t\t\tprovideEntityIdName('resourceId'),\n\t\t\tFormPageStore.provideDefault(),\n\t\t\tFormPageStore.Initializer.provide((store) => {\n\t\t\t\tconst fb = inject(FormBuilder).nonNullable;\n\t\t\t\tconst form = fb.group({\n\t\t\t\t\tid: [''],\n\t\t\t\t\tprojectId: [''],\n\t\t\t\t\tname: [''],\n\t\t\t\t\ttype: ['graphql'],\n\t\t\t\t\topenapi: fb.group({\n\t\t\t\t\t\turl: [''],\n\t\t\t\t\t}),\n\t\t\t\t\tgraphql: fb.group({\n\t\t\t\t\t\turl: [''],\n\t\t\t\t\t}),\n\t\t\t\t\tcreatedAt: [{value: '', disabled: true}],\n\t\t\t\t\tupdatedAt: [{value: '', disabled: true}],\n\t\t\t\t});\n\t\t\t\tapplyToInput(store, 'form', form);\n\t\t\t}),\n\t\t\tFormPageStore.Initializer.provide((store) => {\n\t\t\t\tconst value = computedRawValue(() => store.form())\n\t\t\t\tconst formFieldMap = computed<FormFieldMap>(() => ({\n\t\t\t\t\tid: { type: 'hidden' },\n\t\t\t\t\tprojectId: { type: 'hidden' },\n\t\t\t\t\tname: { type: 'text' },\n\t\t\t\t\ttype: {\n\t\t\t\t\t\ttype: 'select',\n\t\t\t\t\t\toptions: [\n\t\t\t\t\t\t\t{ name: 'GraphQL', value: 'graphql' },\n\t\t\t\t\t\t\t{ name: 'OpenAPI', value: 'openapi' },\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t\t'openapi.url': { type: value()?.type === 'openapi' ? 'text' : 'hidden' },\n\t\t\t\t\t'graphql.url': { type: value()?.type === 'graphql' ? 'text' : 'hidden' },\n\t\t\t\t\tcreatedAt: {\n\t\t\t\t\t\ttype: 'date',\n\t\t\t\t\t},\n\t\t\t\t\tupdatedAt: {\n\t\t\t\t\t\ttype: 'date',\n\t\t\t\t\t},\n\t\t\t\t}));\n\t\t\t\teffect(() => {\n\t\t\t\t\tapplyToInput(store, 'fieldMap', formFieldMap());\n\t\t\t\t});\n\t\t\t}),\n\t\t\tFormPageStore.Initializer.provide((store) => {\n\t\t\t\tconst resourceId = injectRouteParam('resourceId');\n\t\t\t\tconst resource = injectOne(Resource, { id: resourceId });\n\t\t\t\teffect(() => {\n\t\t\t\t\tconsole.debug('resourceId:', resourceId());\n\t\t\t\t\tconsole.debug('resource:', resource());\n\t\t\t\t\tstore.form().patchValue(resource());\n\t\t\t\t});\n\t\t\t}),\n\t\t\tprovideEffect(FormPageStore.ActionId.CREATE, () => {\n\t\t\t\tconst entity = injectEntityStore(Resource);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\tconst store = inject(FormPageStore);\n\t\t\t\treturn () => {\n\t\t\t\t\tconst value = store.form().getRawValue();\n\t\t\t\t\tconsole.debug('value:', value);\n\t\t\t\t\tapp.loading.await(() => {\n\t\t\t\t\t\treturn entity.create({\n\t\t\t\t\t\t\tid: undefined as never,\n\t\t\t\t\t\t\tprojectId: 'default',\n\t\t\t\t\t\t\ttype: value.type,\n\t\t\t\t\t\t\tname: value.name,\n\t\t\t\t\t\t\topenapi: value.openapi,\n\t\t\t\t\t\t\tgraphql: value.graphql,\n\t\t\t\t\t\t\tcreatedAt: undefined as never,\n\t\t\t\t\t\t\tupdatedAt: undefined as never,\n\t\t\t\t\t\t} as never).then(() => {\n\t\t\t\t\t\t\tapp.snackBar.open('リソースを作成しました');\n\t\t\t\t\t\t}).catch((error) => {\n\t\t\t\t\t\t\tconsole.error(error);\n\t\t\t\t\t\t\tapp.snackBar.open('リソースの作成に失敗しました');\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t}),\n\t\t\tprovideEffect(FormPageStore.ActionId.UPDATE, () => {\n\t\t\t\tconst entity = injectEntityStore(Resource);\n\t\t\t\tconst app = inject(AppService);\n\t\t\t\tconst store = inject(FormPageStore);\n\t\t\t\tconst resourceId = injectRouteParam('resourceId');\n\t\t\t\treturn () => {\n\t\t\t\t\tconst value = store.form().getRawValue();\n\t\t\t\t\tconsole.debug('value:', value);\n\t\t\t\t\tapp.loading.await(() => {\n\t\t\t\t\t\treturn entity.update({\n\t\t\t\t\t\t\tid: resourceId(),\n\t\t\t\t\t\t\tprojectId: 'default',\n\t\t\t\t\t\t\ttype: value.type,\n\t\t\t\t\t\t\tname: value.name,\n\t\t\t\t\t\t\topenapi: value.openapi,\n\t\t\t\t\t\t\tgraphql: value.graphql,\n\t\t\t\t\t\t\tcreatedAt: undefined,\n\t\t\t\t\t\t\tupdatedAt: undefined,\n\t\t\t\t\t\t}).then(() => {\n\t\t\t\t\t\t\tapp.snackBar.open('リソースを更新しました');\n\t\t\t\t\t\t}).catch((error) => {\n\t\t\t\t\t\t\tconsole.error(error);\n\t\t\t\t\t\t\tapp.snackBar.open('リソースの更新に失敗しました');\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t}),\n\t\t]\n\t}\n];"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ const routes = [
20
20
  {
21
21
  path: '',
22
22
  component: IndexPage,
23
- loadChildren: () => import('./xxmachina-components-routes-resources-pages.routes-CRXxavHb.mjs').then(m => m.routes),
23
+ loadChildren: () => import('./xxmachina-components-routes-resources-pages.routes-DEu2qpeu.mjs').then(m => m.routes),
24
24
  providers: [
25
25
  provideLangMap(() => getLangMap(Resource, {
26
26
  description: '説明',
@@ -19,7 +19,6 @@ const routes = [
19
19
  data: {
20
20
  queryId: 'yCWbCvBV6gTknUI2h5nA',
21
21
  },
22
- // loadChildren: () => import('./pages/pages.routes'),
23
22
  providers: [
24
23
  QueryPageStore.provideForCustomPage(),
25
24
  QueryPageStore.DI.provideConfig(() => config => ({
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-routes-transformer.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/transformer/transformer.routes.ts","../../../../../packages/@xxmachina/components/src/lib/routes/transformer/xxmachina-components-routes-transformer.ts"],"sourcesContent":["import { computed, effect, inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { buildColumns, injectIndexFormBuilder } from '@ng-atomic/components/organisms/table';\nimport { applyToInput, provideEffect } from '@ng-atomic/core';\nimport { Spec } from '@xxmachina/common/domain/models';\nimport { QueryPage, QueryPageStore } from '@xxmachina/components/pages/query';\nimport { AppService } from '@xxmachina/components/services/app';\n\nenum ActionId {\n RUN_TESTS = 'Run Tests',\n RUN_TEST = 'Run Test',\n CREATE_SPEC = 'Add Spec',\n UPDATE_SPEC = 'Update Spec',\n DELETE_SPEC = 'Delete Spec',\n}\n\nexport const routes: Routes = [\n {\n path: '',\n component: QueryPage,\n data: {\n queryId: 'yCWbCvBV6gTknUI2h5nA',\n },\n // loadChildren: () => import('./pages/pages.routes'),\n providers: [\n QueryPageStore.provideForCustomPage(),\n QueryPageStore.DI.provideConfig(() => config => ({\n ...config,\n childrenKey: 'children',\n style: {\n ...config.style,\n width: `var(--page-width-lv2)`,\n },\n })),\n QueryPageStore.Initializer.provide((store) => {\n const fb = injectIndexFormBuilder();\n const form = fb.build({columns: buildColumns(['id', 'inputJson', 'outputJson', '__actions'])});\n applyToInput(store, 'form', form);\n }),\n QueryPageStore.Initializer.provide((store)=> {\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n effect(() => applyToInput(store, 'title', transformer()?.id ?? undefined));\n }),\n QueryPageStore.Initializer.provide((store) => {\n const navEndActions = computed(() => [[\n { id: ActionId.RUN_TESTS, name: 'Run Tests', icon: 'play_arrow' },\n { id: ActionId.CREATE_SPEC, name: 'Create Spec', icon: 'add' },\n ]]);\n effect(() => applyToInput(store, 'navEndActions', navEndActions()));\n }),\n QueryPageStore.Initializer.provide((store) => {\n const itemActions = computed(() => {\n return (item: Spec) => [\n { id: ActionId.UPDATE_SPEC, name: 'Update Spec', icon: 'edit', payload: item },\n { id: ActionId.DELETE_SPEC, name: 'Delete Spec', icon: 'delete', payload: item },\n { id: ActionId.RUN_TEST, name: 'Run Test', icon: 'play_arrow', payload: item },\n ];\n });\n effect(() => applyToInput(store, 'itemActions', itemActions()));\n }),\n provideEffect(ActionId.RUN_TESTS, () => {\n const store = inject(QueryPageStore);\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n const specs = computed(() => store.itemsMap()?.['specs']?.items ?? []);\n const app = inject(AppService);\n\n return () => {\n app.transformer.runTests(transformer(), specs()).then((result => {\n if (!result.every(result => result.isEqual)) throw new Error('Test failed');\n app.snackBar.open('Test All Passed');\n })).catch((error) => {\n console.error('[TransformerRoutes] error:', error);\n app.snackBar.open(`Error: ${error.message}`);\n });\n };\n }),\n provideEffect(ActionId.RUN_TEST, () => {\n const store = inject(QueryPageStore);\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n const app = inject(AppService);\n\n return (item) => {\n app.transformer.runTest(transformer(), item).then((result => {\n if (!result.isEqual) throw new Error('Test failed');\n app.snackBar.open('Test Passed');\n })).catch((error) => {\n console.error('[TransformerRoutes] error:', error);\n app.snackBar.open(`Error: ${error.message}`);\n });\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-routes-transformer.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/routes/transformer/transformer.routes.ts","../../../../../packages/@xxmachina/components/src/lib/routes/transformer/xxmachina-components-routes-transformer.ts"],"sourcesContent":["import { computed, effect, inject } from '@angular/core';\nimport { Routes } from '@angular/router';\nimport { buildColumns, injectIndexFormBuilder } from '@ng-atomic/components/organisms/table';\nimport { applyToInput, provideEffect } from '@ng-atomic/core';\nimport { Spec } from '@xxmachina/common/domain/models';\nimport { QueryPage, QueryPageStore } from '@xxmachina/components/pages/query';\nimport { AppService } from '@xxmachina/components/services/app';\n\nenum ActionId {\n RUN_TESTS = 'Run Tests',\n RUN_TEST = 'Run Test',\n CREATE_SPEC = 'Add Spec',\n UPDATE_SPEC = 'Update Spec',\n DELETE_SPEC = 'Delete Spec',\n}\n\nexport const routes: Routes = [\n {\n path: '',\n component: QueryPage,\n data: {\n queryId: 'yCWbCvBV6gTknUI2h5nA',\n },\n \n providers: [\n QueryPageStore.provideForCustomPage(),\n QueryPageStore.DI.provideConfig(() => config => ({\n ...config,\n childrenKey: 'children',\n style: {\n ...config.style,\n width: `var(--page-width-lv2)`,\n },\n })),\n QueryPageStore.Initializer.provide((store) => {\n const fb = injectIndexFormBuilder();\n const form = fb.build({columns: buildColumns(['id', 'inputJson', 'outputJson', '__actions'])});\n applyToInput(store, 'form', form);\n }),\n QueryPageStore.Initializer.provide((store)=> {\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n effect(() => applyToInput(store, 'title', transformer()?.id ?? undefined));\n }),\n QueryPageStore.Initializer.provide((store) => {\n const navEndActions = computed(() => [[\n { id: ActionId.RUN_TESTS, name: 'Run Tests', icon: 'play_arrow' },\n { id: ActionId.CREATE_SPEC, name: 'Create Spec', icon: 'add' },\n ]]);\n effect(() => applyToInput(store, 'navEndActions', navEndActions()));\n }),\n QueryPageStore.Initializer.provide((store) => {\n const itemActions = computed(() => {\n return (item: Spec) => [\n { id: ActionId.UPDATE_SPEC, name: 'Update Spec', icon: 'edit', payload: item },\n { id: ActionId.DELETE_SPEC, name: 'Delete Spec', icon: 'delete', payload: item },\n { id: ActionId.RUN_TEST, name: 'Run Test', icon: 'play_arrow', payload: item },\n ];\n });\n effect(() => applyToInput(store, 'itemActions', itemActions()));\n }),\n provideEffect(ActionId.RUN_TESTS, () => {\n const store = inject(QueryPageStore);\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n const specs = computed(() => store.itemsMap()?.['specs']?.items ?? []);\n const app = inject(AppService);\n\n return () => {\n app.transformer.runTests(transformer(), specs()).then((result => {\n if (!result.every(result => result.isEqual)) throw new Error('Test failed');\n app.snackBar.open('Test All Passed');\n })).catch((error) => {\n console.error('[TransformerRoutes] error:', error);\n app.snackBar.open(`Error: ${error.message}`);\n });\n };\n }),\n provideEffect(ActionId.RUN_TEST, () => {\n const store = inject(QueryPageStore);\n const transformer = computed(() => store.itemsMap()?.['transformers']?.items?.[0] ?? null);\n const app = inject(AppService);\n\n return (item) => {\n app.transformer.runTest(transformer(), item).then((result => {\n if (!result.isEqual) throw new Error('Test failed');\n app.snackBar.open('Test Passed');\n })).catch((error) => {\n console.error('[TransformerRoutes] error:', error);\n app.snackBar.open(`Error: ${error.message}`);\n });\n };\n }),\n ],\n }\n];","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -18,7 +18,7 @@ class QueryFormService {
18
18
  headersJson: [JSON.stringify({
19
19
  'content-type': 'application/json',
20
20
  }, null, 2)],
21
- transformerTs: [null],
21
+ transformerTs: this.fb.control(null),
22
22
  transformer: [null],
23
23
  }, {
24
24
  asyncValidators: QueryValidators.graphql(),
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-forms-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/forms/query/query.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/forms/query/xxmachina-components-services-forms-query.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { QueryValidators } from '@xxmachina/components/validators/query';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QueryFormService {\n protected fb = inject(FormBuilder);\n\n build() {\n return this.fb.group({\n id: [''],\n title: [''],\n type: ['graphql'],\n graphql: this.fb.group({\n endpoint: [''],\n query: [''],\n variablesJson: [JSON.stringify({}, null, 2)],\n headersJson: [JSON.stringify({\n 'content-type': 'application/json',\n }, null, 2)],\n transformerTs: [null],\n transformer: [null],\n }, {\n asyncValidators: QueryValidators.graphql(),\n }),\n });\n }\n\n static parseGraphql(formValue: Partial<{\n endpoint: string;\n query: string;\n variablesJson: string;\n headersJson: string;\n transformerTs: string | null;\n transformer: (data: any) => any | null;\n }>): Query['graphql'] {\n return {\n endpoint: formValue?.endpoint ?? '',\n query: formValue?.query ?? '',\n variablesJson: formValue?.variablesJson ?? '',\n variables: QueryHelper.tryParseJson(formValue?.variablesJson || '{}'),\n headersJson: formValue?.headersJson ?? '',\n headers: QueryHelper.tryParseJson(formValue?.headersJson || '{}'),\n transformerTs: formValue?.transformerTs ?? '',\n transformer: formValue?.transformer,\n } as Query['graphql'];\n }\n\n static parse(formValue: Partial<{\n id: string,\n title: string,\n type: string,\n graphql: Partial<{\n endpoint: string;\n query: string;\n variablesJson: string;\n headersJson: string;\n transformerTs: string | null;\n transformer: (data: any) => any | null;\n }>,\n }>): Query {\n console.debug('[QueryFormService] parse:', formValue);\n return {\n id: formValue?.id ?? '',\n projectId: '',\n type: formValue?.type as any ?? 'graphql',\n title: formValue?.title ?? '',\n graphql: QueryFormService.parseGraphql(formValue?.graphql ?? {}),\n summary: '',\n createdAt: null,\n updatedAt: null,\n } as unknown as Query;\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAQa,gBAAgB,CAAA;AACjB,IAAA,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IAElC,KAAK,GAAA;AACH,QAAA,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,CAAC,EAAE,CAAC;YACR,KAAK,EAAE,CAAC,EAAE,CAAC;YACX,IAAI,EAAE,CAAC,SAAS,CAAC;AACjB,YAAA,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBACrB,QAAQ,EAAE,CAAC,EAAE,CAAC;gBACd,KAAK,EAAE,CAAC,EAAE,CAAC;AACX,gBAAA,aAAa,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5C,gBAAA,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;AAC3B,wBAAA,cAAc,EAAE,kBAAkB;AACnC,qBAAA,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACZ,aAAa,EAAE,CAAC,IAAI,CAAC;gBACrB,WAAW,EAAE,CAAC,IAAI,CAAC;aACpB,EAAE;AACD,gBAAA,eAAe,EAAE,eAAe,CAAC,OAAO,EAAE;aAC3C,CAAC;AACH,SAAA,CAAC;IACJ;IAEA,OAAO,YAAY,CAAC,SAOlB,EAAA;QACA,OAAO;AACL,YAAA,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE;AACnC,YAAA,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE;AAC7B,YAAA,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,EAAE;YAC7C,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,aAAa,IAAI,IAAI,CAAC;AACrE,YAAA,WAAW,EAAE,SAAS,EAAE,WAAW,IAAI,EAAE;YACzC,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,IAAI,IAAI,CAAC;AACjE,YAAA,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,EAAE;YAC7C,WAAW,EAAE,SAAS,EAAE,WAAW;SAChB;IACvB;IAEA,OAAO,KAAK,CAAC,SAYX,EAAA;AACA,QAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,SAAS,CAAC;QACrD,OAAO;AACL,YAAA,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE;AACvB,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,IAAI,EAAE,SAAS,EAAE,IAAW,IAAI,SAAS;AACzC,YAAA,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE;YAC7B,OAAO,EAAE,gBAAgB,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE,CAAC;AAChE,YAAA,OAAO,EAAE,EAAE;AACX,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,SAAS,EAAE,IAAI;SACI;IACvB;uGAnEW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA;;2FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;ACPD;;AAEG;;;;"}
1
+ {"version":3,"file":"xxmachina-components-services-forms-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/forms/query/query.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/forms/query/xxmachina-components-services-forms-query.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { FormBuilder } from '@angular/forms';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { QueryValidators } from '@xxmachina/components/validators/query';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class QueryFormService {\n protected fb = inject(FormBuilder);\n\n build() {\n return this.fb.group({\n id: [''],\n title: [''],\n type: ['graphql'],\n graphql: this.fb.group({\n endpoint: [''],\n query: [''],\n variablesJson: [JSON.stringify({}, null, 2)],\n headersJson: [JSON.stringify({\n 'content-type': 'application/json',\n }, null, 2)],\n transformerTs: this.fb.control<string | null>(null),\n transformer: [null],\n }, {\n asyncValidators: QueryValidators.graphql(),\n }),\n });\n }\n\n static parseGraphql(formValue: Partial<{\n endpoint: string;\n query: string;\n variablesJson: string;\n headersJson: string;\n transformerTs: string | null;\n transformer: (data: any) => any | null;\n }>): Query['graphql'] {\n return {\n endpoint: formValue?.endpoint ?? '',\n query: formValue?.query ?? '',\n variablesJson: formValue?.variablesJson ?? '',\n variables: QueryHelper.tryParseJson(formValue?.variablesJson || '{}'),\n headersJson: formValue?.headersJson ?? '',\n headers: QueryHelper.tryParseJson(formValue?.headersJson || '{}'),\n transformerTs: formValue?.transformerTs ?? '',\n transformer: formValue?.transformer,\n } as Query['graphql'];\n }\n\n static parse(formValue: Partial<{\n id: string,\n title: string,\n type: string,\n graphql: Partial<{\n endpoint: string;\n query: string;\n variablesJson: string;\n headersJson: string;\n transformerTs: string | null;\n transformer: (data: any) => any | null;\n }>,\n }>): Query {\n console.debug('[QueryFormService] parse:', formValue);\n return {\n id: formValue?.id ?? '',\n projectId: '',\n type: formValue?.type as any ?? 'graphql',\n title: formValue?.title ?? '',\n graphql: QueryFormService.parseGraphql(formValue?.graphql ?? {}),\n summary: '',\n createdAt: null,\n updatedAt: null,\n } as unknown as Query;\n }\n\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAQa,gBAAgB,CAAA;AACjB,IAAA,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;IAElC,KAAK,GAAA;AACH,QAAA,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACnB,EAAE,EAAE,CAAC,EAAE,CAAC;YACR,KAAK,EAAE,CAAC,EAAE,CAAC;YACX,IAAI,EAAE,CAAC,SAAS,CAAC;AACjB,YAAA,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;gBACrB,QAAQ,EAAE,CAAC,EAAE,CAAC;gBACd,KAAK,EAAE,CAAC,EAAE,CAAC;AACX,gBAAA,aAAa,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5C,gBAAA,WAAW,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC;AAC3B,wBAAA,cAAc,EAAE,kBAAkB;AACnC,qBAAA,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACZ,aAAa,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAgB,IAAI,CAAC;gBACnD,WAAW,EAAE,CAAC,IAAI,CAAC;aACpB,EAAE;AACD,gBAAA,eAAe,EAAE,eAAe,CAAC,OAAO,EAAE;aAC3C,CAAC;AACH,SAAA,CAAC;IACJ;IAEA,OAAO,YAAY,CAAC,SAOlB,EAAA;QACA,OAAO;AACL,YAAA,QAAQ,EAAE,SAAS,EAAE,QAAQ,IAAI,EAAE;AACnC,YAAA,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE;AAC7B,YAAA,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,EAAE;YAC7C,SAAS,EAAE,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,aAAa,IAAI,IAAI,CAAC;AACrE,YAAA,WAAW,EAAE,SAAS,EAAE,WAAW,IAAI,EAAE;YACzC,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,WAAW,IAAI,IAAI,CAAC;AACjE,YAAA,aAAa,EAAE,SAAS,EAAE,aAAa,IAAI,EAAE;YAC7C,WAAW,EAAE,SAAS,EAAE,WAAW;SAChB;IACvB;IAEA,OAAO,KAAK,CAAC,SAYX,EAAA;AACA,QAAA,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,SAAS,CAAC;QACrD,OAAO;AACL,YAAA,EAAE,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE;AACvB,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,IAAI,EAAE,SAAS,EAAE,IAAW,IAAI,SAAS;AACzC,YAAA,KAAK,EAAE,SAAS,EAAE,KAAK,IAAI,EAAE;YAC7B,OAAO,EAAE,gBAAgB,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE,CAAC;AAChE,YAAA,OAAO,EAAE,EAAE;AACX,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,SAAS,EAAE,IAAI;SACI;IACvB;uGAnEW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,cAFf,MAAM,EAAA,CAAA;;2FAEP,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAH5B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;ACPD;;AAEG;;;;"}
@@ -2,16 +2,12 @@ import * as i0 from '@angular/core';
2
2
  import { Injectable } from '@angular/core';
3
3
  import * as i1 from '@angular/common/http';
4
4
 
5
- /**
6
- * @deprecated use GraphqlService(@mxxmachina/common/services/graphql) instead
7
- */
8
5
  class GraphqlService {
9
6
  http;
10
7
  constructor(http) {
11
8
  this.http = http;
12
9
  }
13
10
  graphql(props) {
14
- // const url = `http://localhost:3333/api/graphql`;
15
11
  const url = `/api/graphql`;
16
12
  return this.http.post(url, props, {
17
13
  headers: {
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-graphql.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/graphql/graphql.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/graphql/xxmachina-components-services-graphql.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\n\n/**\n * @deprecated use GraphqlService(@mxxmachina/common/services/graphql) instead\n */\n@Injectable({ providedIn: 'root' })\nexport class GraphqlService {\n\n constructor(\n private http: HttpClient,\n ) { }\n\n graphql(props: {query?: string, variables?: object, operationName?: string}): Observable<any> {\n // const url = `http://localhost:3333/api/graphql`;\n const url = `/api/graphql`;\n return this.http.post(url, props, {\n headers: {\n 'Content-Type': 'application/json',\n }\n });\n }\n\n // getGraphqlSchema(): Observable<any> {\n // return this.graphql({\n // operationName: \"IntrospectionQuery\",\n // query: \"query IntrospectionQuery {\\n __schema {\\n queryType {\\n name\\n }\\n mutationType {\\n name\\n }\\n subscriptionType {\\n name\\n }\\n types {\\n ...FullType\\n }\\n directives {\\n name\\n description\\n locations\\n args {\\n ...InputValue\\n }\\n }\\n }\\n}\\n\\nfragment FullType on __Type {\\n kind\\n name\\n description\\n fields(includeDeprecated: true) {\\n name\\n description\\n args {\\n ...InputValue\\n }\\n type {\\n ...TypeRef\\n }\\n isDeprecated\\n deprecationReason\\n }\\n inputFields {\\n ...InputValue\\n }\\n interfaces {\\n ...TypeRef\\n }\\n enumValues(includeDeprecated: true) {\\n name\\n description\\n isDeprecated\\n deprecationReason\\n }\\n possibleTypes {\\n ...TypeRef\\n }\\n}\\n\\nfragment InputValue on __InputValue {\\n name\\n description\\n type {\\n ...TypeRef\\n }\\n defaultValue\\n}\\n\\nfragment TypeRef on __Type {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n ofType {\\n kind\\n name\\n }\\n }\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\n // variables: {}\n // });\n // }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAIA;;AAEG;MAEU,cAAc,CAAA;AAGf,IAAA,IAAA;AADV,IAAA,WAAA,CACU,IAAgB,EAAA;QAAhB,IAAA,CAAA,IAAI,GAAJ,IAAI;IACV;AAEJ,IAAA,OAAO,CAAC,KAAmE,EAAA;;QAEzE,MAAM,GAAG,GAAG,CAAA,YAAA,CAAc;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE;AAChC,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;AACnC;AACF,SAAA,CAAC;IACJ;uGAdW,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA;;2FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACPlC;;AAEG;;;;"}
1
+ {"version":3,"file":"xxmachina-components-services-graphql.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/graphql/graphql.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/graphql/xxmachina-components-services-graphql.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\n\n\n@Injectable({ providedIn: 'root' })\nexport class GraphqlService {\n\n constructor(\n private http: HttpClient,\n ) { }\n\n graphql(props: {query?: string, variables?: object, operationName?: string}): Observable<any> {\n \n const url = `/api/graphql`;\n return this.http.post(url, props, {\n headers: {\n 'Content-Type': 'application/json',\n }\n });\n }\n\n \n \n \n \n \n \n \n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAMa,cAAc,CAAA;AAGf,IAAA,IAAA;AADV,IAAA,WAAA,CACU,IAAgB,EAAA;QAAhB,IAAA,CAAA,IAAI,GAAJ,IAAI;IACV;AAEJ,IAAA,OAAO,CAAC,KAAmE,EAAA;QAEzE,MAAM,GAAG,GAAG,CAAA,YAAA,CAAc;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE;AAChC,YAAA,OAAO,EAAE;AACP,gBAAA,cAAc,EAAE,kBAAkB;AACnC;AACF,SAAA,CAAC;IACJ;uGAdW,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAd,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,cAAc,cADD,MAAM,EAAA,CAAA;;2FACnB,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACLlC;;AAEG;;;;"}
@@ -7,44 +7,38 @@ import { get } from 'lodash-es';
7
7
 
8
8
  class JsonSchemaService {
9
9
  http;
10
- schemaCache = {}; // スキーマのキャッシュ
10
+ schemaCache = {};
11
11
  constructor(http) {
12
12
  this.http = http;
13
13
  }
14
- // スキーマを取得するメソッド
15
14
  getSchema(schemaUrl) {
16
15
  if (this.schemaCache[schemaUrl]) {
17
- return of(this.schemaCache[schemaUrl]); // キャッシュから取得
16
+ return of(this.schemaCache[schemaUrl]);
18
17
  }
19
18
  return this.http.get(schemaUrl).pipe(catchError(err => {
20
19
  console.error('Error fetching schema:', err);
21
- return of(null); // エラーが発生した場合はnullを返す
20
+ return of(null);
22
21
  }));
23
22
  }
24
- // $refを解決するメソッド
25
23
  async resolveRef(schema, baseUrl, localSchema = schema) {
26
24
  if (!schema || typeof schema !== 'object') {
27
- return schema; // オブジェクトでない場合はそのまま返す
25
+ return schema;
28
26
  }
29
- // $refがある場合
30
27
  if (schema.$ref) {
31
28
  const refPath = schema.$ref;
32
- // ローカル参照の場合
33
29
  if (refPath.startsWith('#')) {
34
30
  const path = refPath.substring(2).split('/').join('.');
35
31
  return get(localSchema, path);
36
32
  }
37
33
  else {
38
- // 外部参照の場合
39
34
  const referencedSchema = await this.getSchema(refPath).toPromise();
40
- return this.resolveRef(referencedSchema, baseUrl, localSchema); // 再帰的に解決
35
+ return this.resolveRef(referencedSchema, baseUrl, localSchema);
41
36
  }
42
37
  }
43
- // スキーマの各プロパティを処理
44
38
  for (const key in schema) {
45
39
  schema[key] = await this.resolveRef(schema[key], baseUrl, localSchema);
46
40
  }
47
- return schema; // 解決されたスキーマを返す
41
+ return schema;
48
42
  }
49
43
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: JsonSchemaService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
50
44
  static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.6", ngImport: i0, type: JsonSchemaService, providedIn: 'root' });
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-json-schema.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/json-schema/json-schema.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/json-schema/xxmachina-components-services-json-schema.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { get } from 'lodash-es';\n\n\n@Injectable({ providedIn: 'root' })\nexport class JsonSchemaService {\n private schemaCache: { [key: string]: any } = {}; // スキーマのキャッシュ\n\n constructor(private http: HttpClient) { }\n\n // スキーマを取得するメソッド\n getSchema(schemaUrl: string): Observable<any> {\n if (this.schemaCache[schemaUrl]) {\n return of(this.schemaCache[schemaUrl]); // キャッシュから取得\n }\n\n return this.http.get(schemaUrl).pipe(\n catchError(err => {\n console.error('Error fetching schema:', err);\n return of(null); // エラーが発生した場合はnullを返す\n })\n );\n }\n\n // $refを解決するメソッド\n async resolveRef(schema: any, baseUrl?: string, localSchema: any = schema): Promise<any> {\n if (!schema || typeof schema !== 'object') {\n return schema; // オブジェクトでない場合はそのまま返す\n }\n\n // $refがある場合\n if (schema.$ref) {\n const refPath = schema.$ref;\n\n // ローカル参照の場合\n if (refPath.startsWith('#')) {\n const path = refPath.substring(2).split('/').join('.');\n return get(localSchema, path);\n } else {\n // 外部参照の場合\n const referencedSchema = await this.getSchema(refPath).toPromise();\n return this.resolveRef(referencedSchema, baseUrl, localSchema); // 再帰的に解決\n }\n }\n\n // スキーマの各プロパティを処理\n for (const key in schema) {\n schema[key] = await this.resolveRef(schema[key], baseUrl, localSchema);\n }\n\n return schema; // 解決されたスキーマを返す\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAQa,iBAAiB,CAAA;AAGR,IAAA,IAAA;AAFZ,IAAA,WAAW,GAA2B,EAAE,CAAC;AAEjD,IAAA,WAAA,CAAoB,IAAgB,EAAA;QAAhB,IAAA,CAAA,IAAI,GAAJ,IAAI;IAAgB;;AAGxC,IAAA,SAAS,CAAC,SAAiB,EAAA;AACzB,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC;QACzC;AAEA,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAClC,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC;AAC5C,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;QAClB,CAAC,CAAC,CACH;IACH;;IAGA,MAAM,UAAU,CAAC,MAAW,EAAE,OAAgB,EAAE,cAAmB,MAAM,EAAA;QACvE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YACzC,OAAO,MAAM,CAAC;QAChB;;AAGA,QAAA,IAAI,MAAM,CAAC,IAAI,EAAE;AACf,YAAA,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI;;AAG3B,YAAA,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC3B,gBAAA,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACtD,gBAAA,OAAO,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC;YAC/B;iBAAO;;AAEL,gBAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE;AAClE,gBAAA,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACjE;QACF;;AAGA,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC;QACxE;QAEA,OAAO,MAAM,CAAC;IAChB;uGA9CW,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cADJ,MAAM,EAAA,CAAA;;2FACnB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACPlC;;AAEG;;;;"}
1
+ {"version":3,"file":"xxmachina-components-services-json-schema.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/json-schema/json-schema.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/json-schema/xxmachina-components-services-json-schema.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { Observable, of } from 'rxjs';\nimport { catchError } from 'rxjs/operators';\nimport { get } from 'lodash-es';\n\n\n@Injectable({ providedIn: 'root' })\nexport class JsonSchemaService {\n private schemaCache: { [key: string]: any } = {}; \n\n constructor(private http: HttpClient) { }\n\n \n getSchema(schemaUrl: string): Observable<any> {\n if (this.schemaCache[schemaUrl]) {\n return of(this.schemaCache[schemaUrl]); \n }\n\n return this.http.get(schemaUrl).pipe(\n catchError(err => {\n console.error('Error fetching schema:', err);\n return of(null); \n })\n );\n }\n\n \n async resolveRef(schema: any, baseUrl?: string, localSchema: any = schema): Promise<any> {\n if (!schema || typeof schema !== 'object') {\n return schema; \n }\n\n \n if (schema.$ref) {\n const refPath = schema.$ref;\n\n \n if (refPath.startsWith('#')) {\n const path = refPath.substring(2).split('/').join('.');\n return get(localSchema, path);\n } else {\n \n const referencedSchema = await this.getSchema(refPath).toPromise();\n return this.resolveRef(referencedSchema, baseUrl, localSchema); \n }\n }\n\n \n for (const key in schema) {\n schema[key] = await this.resolveRef(schema[key], baseUrl, localSchema);\n }\n\n return schema; \n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAQa,iBAAiB,CAAA;AAGR,IAAA,IAAA;IAFZ,WAAW,GAA2B,EAAE;AAEhD,IAAA,WAAA,CAAoB,IAAgB,EAAA;QAAhB,IAAA,CAAA,IAAI,GAAJ,IAAI;IAAgB;AAGxC,IAAA,SAAS,CAAC,SAAiB,EAAA;AACzB,QAAA,IAAI,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE;YAC/B,OAAO,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACxC;AAEA,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAClC,UAAU,CAAC,GAAG,IAAG;AACf,YAAA,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,GAAG,CAAC;AAC5C,YAAA,OAAO,EAAE,CAAC,IAAI,CAAC;QACjB,CAAC,CAAC,CACH;IACH;IAGA,MAAM,UAAU,CAAC,MAAW,EAAE,OAAgB,EAAE,cAAmB,MAAM,EAAA;QACvE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACzC,YAAA,OAAO,MAAM;QACf;AAGA,QAAA,IAAI,MAAM,CAAC,IAAI,EAAE;AACf,YAAA,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI;AAG3B,YAAA,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC3B,gBAAA,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACtD,gBAAA,OAAO,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC;YAC/B;iBAAO;AAEL,gBAAA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE;gBAClE,OAAO,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,OAAO,EAAE,WAAW,CAAC;YAChE;QACF;AAGA,QAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,YAAA,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC;QACxE;AAEA,QAAA,OAAO,MAAM;IACf;uGA9CW,iBAAiB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,iBAAiB,cADJ,MAAM,EAAA,CAAA;;2FACnB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACPlC;;AAEG;;;;"}
@@ -9,16 +9,10 @@ import { GraphqlService } from '@xxmachina/common/services/graphql';
9
9
  import { QueryResolverService } from '@ng-atomic/common/services/query-resolver';
10
10
  import { QueryService as QueryService$1 } from '@xxmachina/common/services/query';
11
11
 
12
- /**
13
- * @deprecated use `QueryService`('@xxmachina/common/services/query/query.service') instead
14
- */
15
12
  class QueryService {
16
13
  http = inject(HttpClient);
17
14
  graphql = inject(GraphqlService);
18
15
  resolver = inject(QueryResolverService);
19
- /**
20
- * @deprecated
21
- * */
22
16
  config = inject(QueryConfigService);
23
17
  query = inject(QueryService$1);
24
18
  getSchema(endpoint, options = { headers: { 'content-type': 'application/json' } }) {
@@ -38,7 +32,6 @@ class QueryService {
38
32
  }).pipe(map((result) => QueryHelper.parseResult(result)));
39
33
  }));
40
34
  }
41
- /** @deprecated use `QueryServie#subscribe`('@xxmachina/common/services/query/query.service') instead */
42
35
  subscribeQuery(query) {
43
36
  return this.query.subscribe(query);
44
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/query/query.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/query/xxmachina-components-services-query.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { map, lastValueFrom, switchMap } from 'rxjs';\nimport { getIntrospectionQuery } from 'graphql';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { QueryConfigService } from '@xxmachina/common/services/query/config';\nimport { GraphqlService } from '@xxmachina/common/services/graphql';\nimport { Observable } from 'rxjs';\nimport { QueryResolverService } from '@ng-atomic/common/services/query-resolver';\nimport { QueryService as CommonQueryService } from '@xxmachina/common/services/query';\n\n/**\n * @deprecated use `QueryService`('@xxmachina/common/services/query/query.service') instead\n */\n@Injectable({ providedIn: 'root' })\nexport class QueryService {\n protected readonly http = inject(HttpClient);\n protected readonly graphql = inject(GraphqlService);\n protected readonly resolver = inject(QueryResolverService);\n /**\n * @deprecated\n * */\n protected readonly config = inject(QueryConfigService);\n readonly query = inject(CommonQueryService);\n\n getSchema(endpoint: string, options: {\n headers?: Record<string, string>,\n } = { headers: { 'content-type': 'application/json' } }) {\n return this.config.resolve(options).pipe(\n switchMap(({headers}) => this.http.post(endpoint, { query: getIntrospectionQuery() }, { headers }))\n );\n }\n\n subscribeSchema(endpoint: string, options: {\n headers?: Record<string, string>,\n }): Observable<any> {\n return this.config.resolve({\n endpoint,\n headers: options.headers,\n query: getIntrospectionQuery(),\n variables: {}\n }).pipe(\n switchMap(({endpoint}) => {\n const getHeaders = () => this.config.resolve(options.headers as object) as unknown as Observable<Record<string, string>>;\n return this.graphql.getSchema({\n endpoint: endpoint!,\n headers: getHeaders as never,\n }).pipe(\n map((result: any) => QueryHelper.parseResult(result)),\n );\n }),\n );\n }\n\n /** @deprecated use `QueryServie#subscribe`('@xxmachina/common/services/query/query.service') instead */\n subscribeQuery(query: {\n type: 'graphql',\n graphql: any,\n }): Observable<Record<string, any>> {\n return this.query.subscribe(query as Query);\n }\n\n async generate(\n instructions: string,\n options: {\n baseUrl: string\n } = {\n baseUrl: '',\n },\n ) {\n const endpoint = `${options.baseUrl}/generate`;\n return lastValueFrom(this.http.post<{query: string}>(endpoint, { instructions }));\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["CommonQueryService"],"mappings":";;;;;;;;;;;AAWA;;AAEG;MAEU,YAAY,CAAA;AACJ,IAAA,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;AACzB,IAAA,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;AAChC,IAAA,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAC1D;;AAEK;AACc,IAAA,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC7C,IAAA,KAAK,GAAG,MAAM,CAACA,cAAkB,CAAC;AAE3C,IAAA,SAAS,CAAC,QAAgB,EAAE,OAAA,GAExB,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,EAAA;AACrD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CACtC,SAAS,CAAC,CAAC,EAAC,OAAO,EAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CACpG;IACH;IAEA,eAAe,CAAC,QAAgB,EAAE,OAEjC,EAAA;AACC,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACzB,QAAQ;YACR,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,qBAAqB,EAAE;AAC9B,YAAA,SAAS,EAAE;SACZ,CAAC,CAAC,IAAI,CACL,SAAS,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAI;AACvB,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAiB,CAAkD;AACxH,YAAA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;AAC5B,gBAAA,QAAQ,EAAE,QAAS;AACnB,gBAAA,OAAO,EAAE,UAAmB;AAC7B,aAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,MAAW,KAAK,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CACtD;QACH,CAAC,CAAC,CACH;IACH;;AAGA,IAAA,cAAc,CAAC,KAGd,EAAA;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAc,CAAC;IAC7C;AAEA,IAAA,MAAM,QAAQ,CACZ,YAAoB,EACpB,OAAA,GAEI;AACF,QAAA,OAAO,EAAE,EAAE;AACZ,KAAA,EAAA;AAED,QAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,OAAO,CAAC,OAAO,WAAW;AAC9C,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IACnF;uGAzDW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cADC,MAAM,EAAA,CAAA;;2FACnB,YAAY,EAAA,UAAA,EAAA,CAAA;kBADxB,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACdlC;;AAEG;;;;"}
1
+ {"version":3,"file":"xxmachina-components-services-query.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/query/query.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/query/xxmachina-components-services-query.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { inject, Injectable } from '@angular/core';\nimport { map, lastValueFrom, switchMap } from 'rxjs';\nimport { getIntrospectionQuery } from 'graphql';\nimport { Query, QueryHelper } from '@xxmachina/common/domain/models';\nimport { QueryConfigService } from '@xxmachina/common/services/query/config';\nimport { GraphqlService } from '@xxmachina/common/services/graphql';\nimport { Observable } from 'rxjs';\nimport { QueryResolverService } from '@ng-atomic/common/services/query-resolver';\nimport { QueryService as CommonQueryService } from '@xxmachina/common/services/query';\n\n\n@Injectable({ providedIn: 'root' })\nexport class QueryService {\n protected readonly http = inject(HttpClient);\n protected readonly graphql = inject(GraphqlService);\n protected readonly resolver = inject(QueryResolverService);\n \n protected readonly config = inject(QueryConfigService);\n readonly query = inject(CommonQueryService);\n\n getSchema(endpoint: string, options: {\n headers?: Record<string, string>,\n } = { headers: { 'content-type': 'application/json' } }) {\n return this.config.resolve(options).pipe(\n switchMap(({headers}) => this.http.post(endpoint, { query: getIntrospectionQuery() }, { headers }))\n );\n }\n\n subscribeSchema(endpoint: string, options: {\n headers?: Record<string, string>,\n }): Observable<any> {\n return this.config.resolve({\n endpoint,\n headers: options.headers,\n query: getIntrospectionQuery(),\n variables: {}\n }).pipe(\n switchMap(({endpoint}) => {\n const getHeaders = () => this.config.resolve(options.headers as object) as unknown as Observable<Record<string, string>>;\n return this.graphql.getSchema({\n endpoint: endpoint!,\n headers: getHeaders as never,\n }).pipe(\n map((result: any) => QueryHelper.parseResult(result)),\n );\n }),\n );\n }\n\n \n subscribeQuery(query: {\n type: 'graphql',\n graphql: any,\n }): Observable<Record<string, any>> {\n return this.query.subscribe(query as Query);\n }\n\n async generate(\n instructions: string,\n options: {\n baseUrl: string\n } = {\n baseUrl: '',\n },\n ) {\n const endpoint = `${options.baseUrl}/generate`;\n return lastValueFrom(this.http.post<{query: string}>(endpoint, { instructions }));\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["CommonQueryService"],"mappings":";;;;;;;;;;;MAaa,YAAY,CAAA;AACJ,IAAA,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;AACzB,IAAA,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;AAChC,IAAA,QAAQ,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAEvC,IAAA,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAC7C,IAAA,KAAK,GAAG,MAAM,CAACA,cAAkB,CAAC;AAE3C,IAAA,SAAS,CAAC,QAAgB,EAAE,OAAA,GAExB,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,EAAA;AACrD,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CACtC,SAAS,CAAC,CAAC,EAAC,OAAO,EAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,qBAAqB,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,CACpG;IACH;IAEA,eAAe,CAAC,QAAgB,EAAE,OAEjC,EAAA;AACC,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;YACzB,QAAQ;YACR,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,KAAK,EAAE,qBAAqB,EAAE;AAC9B,YAAA,SAAS,EAAE;SACZ,CAAC,CAAC,IAAI,CACL,SAAS,CAAC,CAAC,EAAC,QAAQ,EAAC,KAAI;AACvB,YAAA,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAiB,CAAkD;AACxH,YAAA,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;AAC5B,gBAAA,QAAQ,EAAE,QAAS;AACnB,gBAAA,OAAO,EAAE,UAAmB;AAC7B,aAAA,CAAC,CAAC,IAAI,CACL,GAAG,CAAC,CAAC,MAAW,KAAK,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CACtD;QACH,CAAC,CAAC,CACH;IACH;AAGA,IAAA,cAAc,CAAC,KAGd,EAAA;QACC,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,KAAc,CAAC;IAC7C;AAEA,IAAA,MAAM,QAAQ,CACZ,YAAoB,EACpB,OAAA,GAEI;AACF,QAAA,OAAO,EAAE,EAAE;AACZ,KAAA,EAAA;AAED,QAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,OAAO,CAAC,OAAO,WAAW;AAC9C,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAkB,QAAQ,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;IACnF;uGAvDW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cADC,MAAM,EAAA,CAAA;;2FACnB,YAAY,EAAA,UAAA,EAAA,CAAA;kBADxB,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACZlC;;AAEG;;;;"}
@@ -7,22 +7,9 @@ import { toSignal } from '@angular/core/rxjs-interop';
7
7
 
8
8
  class RecordingService {
9
9
  constructor() {
10
- // this.blobEvent$.pipe(
11
- // filter((event) => event.data.size > 0),
12
- // ).subscribe((event) => {
13
- // this.recordedChunks.update((current) => ([...current, event.data]));
14
- // });
15
10
  }
16
11
  stream = signal(null, ...(ngDevMode ? [{ debugName: "stream" }] : []));
17
12
  recorder = computed(() => this.stream() ? new MediaRecorder(this.stream()) : null, ...(ngDevMode ? [{ debugName: "recorder" }] : []));
18
- // readonly blobEvent = computedAsync(() => {
19
- // return new Observable<BlobEvent>((subscriber) => {
20
- // this.recorder().ondataavailable = (event) => subscriber.next(event);
21
- // this.recorder().onstop = () => subscriber.complete();
22
- // this.recorder().onerror = (error) => subscriber.error(error);
23
- // });
24
- // });
25
- // readonly blobEvent$ = toObservable(this.blobEvent);
26
13
  isRecording$ = interval(500).pipe(map(() => this.recorder()?.state === 'recording'));
27
14
  isRecording = toSignal(this.isRecording$);
28
15
  recordedChunks = signal([], ...(ngDevMode ? [{ debugName: "recordedChunks" }] : []));
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-recording.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/recording/recording.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/recording/xxmachina-components-services-recording.ts"],"sourcesContent":["import { Injectable, computed, signal } from '@angular/core';\nimport fixWebmDuration from 'fix-webm-duration';\nimport dayjs from 'dayjs';\nimport { filter, interval, map, Observable } from 'rxjs';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\n@Injectable({ providedIn: 'root' })\nexport class RecordingService {\n\n constructor() {\n // this.blobEvent$.pipe(\n // filter((event) => event.data.size > 0),\n // ).subscribe((event) => {\n // this.recordedChunks.update((current) => ([...current, event.data]));\n // });\n }\n\n readonly stream = signal<MediaStream | null>(null);\n readonly recorder = computed(() => this.stream() ? new MediaRecorder(this.stream()!) : null);\n // readonly blobEvent = computedAsync(() => {\n // return new Observable<BlobEvent>((subscriber) => {\n // this.recorder().ondataavailable = (event) => subscriber.next(event);\n // this.recorder().onstop = () => subscriber.complete();\n // this.recorder().onerror = (error) => subscriber.error(error);\n // });\n // });\n // readonly blobEvent$ = toObservable(this.blobEvent);\n readonly isRecording$ = interval(500).pipe(map(() => this.recorder()?.state === 'recording'));\n readonly isRecording = toSignal(this.isRecording$);\n readonly recordedChunks = signal<Blob[]>([]);\n readonly startTime = signal<dayjs.Dayjs>(null as unknown as dayjs.Dayjs);\n\n async stopStream() {\n if (this.stream()) {\n this.stream()!.getTracks().forEach(track => track.stop());\n this.stream.set(null);\n }\n }\n\n async start(stream: MediaStream = this.stream()!) {\n this.recordedChunks.set([]);\n this.stream.set(stream);\n\n new Observable<BlobEvent>((subscriber) => {\n this.recorder()!.ondataavailable = (event) => subscriber.next(event);\n this.recorder()!.onstop = () => subscriber.complete();\n this.recorder()!.onerror = (error) => subscriber.error(error);\n }).pipe(\n filter((event) => event.data.size > 0),\n ).subscribe((event) => {\n this.recordedChunks.update((current) => ([...current, event.data]));\n });\n\n this.startTime.set(dayjs());\n this.recorder()!.start(100);\n }\n\n async stop() {\n if (this.recorder()) this.recorder()!.stop();\n const blob = new Blob(this.recordedChunks(), { type: 'video/webm' });\n this.recordedChunks.set([]);\n const time = dayjs().diff(this.startTime(), 'millisecond');\n this.startTime.set(null as unknown as dayjs.Dayjs);\n return fixWebmDuration(blob, time);\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-services-recording.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/recording/recording.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/recording/xxmachina-components-services-recording.ts"],"sourcesContent":["import { Injectable, computed, signal } from '@angular/core';\nimport fixWebmDuration from 'fix-webm-duration';\nimport dayjs from 'dayjs';\nimport { filter, interval, map, Observable } from 'rxjs';\nimport { toSignal } from '@angular/core/rxjs-interop';\n\n@Injectable({ providedIn: 'root' })\nexport class RecordingService {\n\n constructor() {\n \n \n \n \n \n }\n\n readonly stream = signal<MediaStream | null>(null);\n readonly recorder = computed(() => this.stream() ? new MediaRecorder(this.stream()!) : null);\n \n \n \n \n \n \n \n \n readonly isRecording$ = interval(500).pipe(map(() => this.recorder()?.state === 'recording'));\n readonly isRecording = toSignal(this.isRecording$);\n readonly recordedChunks = signal<Blob[]>([]);\n readonly startTime = signal<dayjs.Dayjs>(null as unknown as dayjs.Dayjs);\n\n async stopStream() {\n if (this.stream()) {\n this.stream()!.getTracks().forEach(track => track.stop());\n this.stream.set(null);\n }\n }\n\n async start(stream: MediaStream = this.stream()!) {\n this.recordedChunks.set([]);\n this.stream.set(stream);\n\n new Observable<BlobEvent>((subscriber) => {\n this.recorder()!.ondataavailable = (event) => subscriber.next(event);\n this.recorder()!.onstop = () => subscriber.complete();\n this.recorder()!.onerror = (error) => subscriber.error(error);\n }).pipe(\n filter((event) => event.data.size > 0),\n ).subscribe((event) => {\n this.recordedChunks.update((current) => ([...current, event.data]));\n });\n\n this.startTime.set(dayjs());\n this.recorder()!.start(100);\n }\n\n async stop() {\n if (this.recorder()) this.recorder()!.stop();\n const blob = new Blob(this.recordedChunks(), { type: 'video/webm' });\n this.recordedChunks.set([]);\n const time = dayjs().diff(this.startTime(), 'millisecond');\n this.startTime.set(null as unknown as dayjs.Dayjs);\n return fixWebmDuration(blob, time);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -90,13 +90,11 @@ class ThreadService {
90
90
  }
91
91
  catch (error) {
92
92
  onError(error);
93
- // this.snackBar.open('エラーが発生しました。更新して再度、お試しください。');
94
93
  }
95
94
  }
96
95
  case 'completed': {
97
96
  console.debug(`run ${runId} completed`);
98
97
  onCompleted();
99
- // this$.next();
100
98
  return;
101
99
  }
102
100
  case 'failed': {
@@ -1 +1 @@
1
- {"version":3,"file":"xxmachina-components-services-thread.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/thread/thread.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/thread/xxmachina-components-services-thread.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { message } from '@nx-ddd/common';\nimport { NEVER, Observable, ReplaySubject, catchError, interval, lastValueFrom, map, startWith, switchMap, takeUntil } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ThreadService {\n readonly http = inject(HttpClient);\n\n \n\n getThread(id: string) {\n return this.http.get(`/api/threads/${id}`);\n }\n\n create() {\n return lastValueFrom(this.http.post<{id: string}>('/api/threads', {}));\n }\n\n listMessages(threadId: string) {\n return this.http.get<any[]>(`/api/threads/${threadId}/messages`);\n }\n\n createMessage(message: {threadId: string, role: 'user', content: string}) {\n return lastValueFrom(this.http.post(`/api/threads/${message.threadId}/messages`, message));\n }\n\n run(assistantId: string, threadId: string) {\n return lastValueFrom(this.http.post<{id: string}>(`/api/threads/${threadId}/runs`, {\n assistantId,\n instructions: message``,\n tools: [],\n }));\n }\n\n submitToolOutputs(threadId: string, runId: string, toolOutputs: any[]) {\n return lastValueFrom(this.http.post<any>(`/api/threads/${threadId}/runs/${runId}/submit_tool_outputs`, {\n toolOutputs,\n }));\n }\n\n retrieveRun(threadId: string, runId: string) {\n return lastValueFrom(this.http.get<any>(`/api/threads/${threadId}/runs/${runId}`));\n }\n\n retrieveRunSteps(threadId: string, runId: string) {\n return this.http.get<any>(`/api/threads/${threadId}/runs/${runId}/steps`);\n }\n\n observeSteps(threadId: string, runId: string): Observable<'dealing' | 'message_creating' | 'function_calling' | 'done'> {\n const stop$ = new ReplaySubject<void>();\n return interval(1000).pipe(\n startWith(null),\n takeUntil(stop$),\n switchMap(() => this.retrieveRunSteps(threadId, runId).pipe(\n catchError((error) => (console.error(error), NEVER)),\n )),\n map(steps => {\n if (steps.some((step: any) => step.status === 'in_progress')) {\n const inProgress = steps.find((step: any) => step.status === 'in_progress');\n switch (inProgress.type) {\n case 'message_creation': return 'message_creating';\n default: return 'function_calling'\n }\n }\n\n if (steps.find((step: any) => step.type === 'message_creation')?.status === 'completed') {\n stop$.next();\n return 'done';\n }\n return 'dealing';\n \n })\n );\n }\n\n async watchSteps(\n threadId: string,\n runId: string,\n onStatusChanged: (status: string) => void,\n ) {\n while (true) {\n const steps = await lastValueFrom(this.retrieveRunSteps(threadId, runId));\n console.debug('steps:', steps);\n if (steps.some((step: any) => step.status === 'in_progress')) {\n const inProgress = steps.find((step: any) => step.status === 'in_progress');\n switch (inProgress.type) {\n case 'message_creation': {\n onStatusChanged('message_creating');\n break;\n }\n default: {\n onStatusChanged('function_calling');\n break;\n }\n }\n }\n\n onStatusChanged('dealing');\n\n if (steps.find((step: any) => step.type === 'message_creation')?.status === 'completed') {\n onStatusChanged('done');\n break;\n }\n\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n }\n\n async watch(\n threadId: string,\n runId: string,\n onFunctionCalled: (toolCall: any) => Promise<object> | object,\n onCompleted: () => void,\n onError: (error: any) => void,\n ) {\n while (true) {\n const run = await this.retrieveRun(threadId, runId);\n switch (run.status) {\n case 'requires_action': {\n try {\n const toolCalls = run.required_action.submit_tool_outputs.tool_calls;\n const result = await onFunctionCalled(toolCalls[0]);\n this.submitToolOutputs(threadId, runId, [{ toolCallId: toolCalls[0].id, output: JSON.stringify(result) }]);\n } catch (error) {\n onError(error);\n // this.snackBar.open('エラーが発生しました。更新して再度、お試しください。');\n }\n }\n case 'completed': {\n console.debug(`run ${runId} completed`);\n onCompleted();\n // this$.next();\n return;\n }\n case 'failed': {\n console.debug(`run ${runId} failed`);\n return;\n }\n }\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAMa,aAAa,CAAA;AACf,IAAA,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;AAIlC,IAAA,SAAS,CAAC,EAAU,EAAA;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,aAAA,EAAgB,EAAE,CAAA,CAAE,CAAC;IAC5C;IAEA,MAAM,GAAA;AACJ,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,cAAc,EAAE,EAAE,CAAC,CAAC;IACxE;AAEA,IAAA,YAAY,CAAC,QAAgB,EAAA;QAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,CAAA,aAAA,EAAgB,QAAQ,CAAA,SAAA,CAAW,CAAC;IAClE;AAEA,IAAA,aAAa,CAAC,OAA0D,EAAA;AACtE,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,OAAO,CAAC,QAAQ,CAAA,SAAA,CAAW,EAAE,OAAO,CAAC,CAAC;IAC5F;IAEA,GAAG,CAAC,WAAmB,EAAE,QAAgB,EAAA;QACvC,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAe,CAAA,aAAA,EAAgB,QAAQ,CAAA,KAAA,CAAO,EAAE;YACjF,WAAW;YACX,YAAY,EAAE,OAAO,CAAA,CAAA,CAAE;AACvB,YAAA,KAAK,EAAE,EAAE;AACV,SAAA,CAAC,CAAC;IACL;AAEA,IAAA,iBAAiB,CAAC,QAAgB,EAAE,KAAa,EAAE,WAAkB,EAAA;AACnE,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,aAAA,EAAgB,QAAQ,CAAA,MAAA,EAAS,KAAK,sBAAsB,EAAE;YACrG,WAAW;AACZ,SAAA,CAAC,CAAC;IACL;IAEA,WAAW,CAAC,QAAgB,EAAE,KAAa,EAAA;AACzC,QAAA,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,CAAA,aAAA,EAAgB,QAAQ,CAAA,MAAA,EAAS,KAAK,CAAA,CAAE,CAAC,CAAC;IACpF;IAEA,gBAAgB,CAAC,QAAgB,EAAE,KAAa,EAAA;AAC9C,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAM,CAAA,aAAA,EAAgB,QAAQ,CAAA,MAAA,EAAS,KAAK,CAAA,MAAA,CAAQ,CAAC;IAC3E;IAEA,YAAY,CAAC,QAAgB,EAAE,KAAa,EAAA;AAC1C,QAAA,MAAM,KAAK,GAAG,IAAI,aAAa,EAAQ;QACvC,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CACxB,SAAS,CAAC,IAAI,CAAC,EACf,SAAS,CAAC,KAAK,CAAC,EAChB,SAAS,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,CACzD,UAAU,CAAC,CAAC,KAAK,MAAM,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,CACrD,CAAC,EACF,GAAG,CAAC,KAAK,IAAG;AACV,YAAA,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,EAAE;AAC5D,gBAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC;AAC3E,gBAAA,QAAQ,UAAU,CAAC,IAAI;AACrB,oBAAA,KAAK,kBAAkB,EAAE,OAAO,kBAAkB;AAClD,oBAAA,SAAS,OAAO,kBAAkB;;YAEtC;YAEA,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAC,EAAE,MAAM,KAAK,WAAW,EAAE;gBACvF,KAAK,CAAC,IAAI,EAAE;AACZ,gBAAA,OAAO,MAAM;YACf;AACA,YAAA,OAAO,SAAS;QAElB,CAAC,CAAC,CACH;IACH;AAEA,IAAA,MAAM,UAAU,CACd,QAAgB,EAChB,KAAa,EACb,eAAyC,EAAA;QAEzC,OAAO,IAAI,EAAE;AACX,YAAA,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACzE,YAAA,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC;AAC9B,YAAA,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC,EAAE;AAC5D,gBAAA,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,aAAa,CAAC;AAC3E,gBAAA,QAAQ,UAAU,CAAC,IAAI;oBACrB,KAAK,kBAAkB,EAAE;wBACvB,eAAe,CAAC,kBAAkB,CAAC;wBACnC;oBACF;oBACA,SAAS;wBACP,eAAe,CAAC,kBAAkB,CAAC;wBACnC;oBACF;;YAEJ;YAEA,eAAe,CAAC,SAAS,CAAC;YAE1B,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,IAAI,KAAK,kBAAkB,CAAC,EAAE,MAAM,KAAK,WAAW,EAAE;gBACvF,eAAe,CAAC,MAAM,CAAC;gBACvB;YACF;AAEA,YAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzD;IACF;IAEA,MAAM,KAAK,CACT,QAAgB,EAChB,KAAa,EACb,gBAA6D,EAC7D,WAAuB,EACvB,OAA6B,EAAA;QAE7B,OAAO,IAAI,EAAE;YACX,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC;AACnD,YAAA,QAAQ,GAAG,CAAC,MAAM;gBAChB,KAAK,iBAAiB,EAAE;AACtB,oBAAA,IAAI;wBACF,MAAM,SAAS,GAAG,GAAG,CAAC,eAAe,CAAC,mBAAmB,CAAC,UAAU;wBACpE,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AACnD,wBAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC5G;oBAAE,OAAO,KAAK,EAAE;wBACd,OAAO,CAAC,KAAK,CAAC;;oBAEhB;gBACF;gBACA,KAAK,WAAW,EAAE;AAChB,oBAAA,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAA,UAAA,CAAY,CAAC;AACvC,oBAAA,WAAW,EAAE;;oBAEb;gBACF;gBACA,KAAK,QAAQ,EAAE;AACb,oBAAA,OAAO,CAAC,KAAK,CAAC,OAAO,KAAK,CAAA,OAAA,CAAS,CAAC;oBACpC;gBACF;;AAEF,YAAA,MAAM,IAAI,OAAO,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACzD;IACF;uGAxIW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAb,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cADA,MAAM,EAAA,CAAA;;2FACnB,aAAa,EAAA,UAAA,EAAA,CAAA;kBADzB,UAAU;mBAAC,EAAE,UAAU,EAAE,MAAM,EAAE;;;ACLlC;;AAEG;;;;"}
1
+ {"version":3,"file":"xxmachina-components-services-thread.mjs","sources":["../../../../../packages/@xxmachina/components/src/lib/services/thread/thread.service.ts","../../../../../packages/@xxmachina/components/src/lib/services/thread/xxmachina-components-services-thread.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\nimport { Injectable, inject } from '@angular/core';\nimport { message } from '@nx-ddd/common';\nimport { NEVER, Observable, ReplaySubject, catchError, interval, lastValueFrom, map, startWith, switchMap, takeUntil } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class ThreadService {\n readonly http = inject(HttpClient);\n\n \n\n getThread(id: string) {\n return this.http.get(`/api/threads/${id}`);\n }\n\n create() {\n return lastValueFrom(this.http.post<{id: string}>('/api/threads', {}));\n }\n\n listMessages(threadId: string) {\n return this.http.get<any[]>(`/api/threads/${threadId}/messages`);\n }\n\n createMessage(message: {threadId: string, role: 'user', content: string}) {\n return lastValueFrom(this.http.post(`/api/threads/${message.threadId}/messages`, message));\n }\n\n run(assistantId: string, threadId: string) {\n return lastValueFrom(this.http.post<{id: string}>(`/api/threads/${threadId}/runs`, {\n assistantId,\n instructions: message``,\n tools: [],\n }));\n }\n\n submitToolOutputs(threadId: string, runId: string, toolOutputs: any[]) {\n return lastValueFrom(this.http.post<any>(`/api/threads/${threadId}/runs/${runId}/submit_tool_outputs`, {\n toolOutputs,\n }));\n }\n\n retrieveRun(threadId: string, runId: string) {\n return lastValueFrom(this.http.get<any>(`/api/threads/${threadId}/runs/${runId}`));\n }\n\n retrieveRunSteps(threadId: string, runId: string) {\n return this.http.get<any>(`/api/threads/${threadId}/runs/${runId}/steps`);\n }\n\n observeSteps(threadId: string, runId: string): Observable<'dealing' | 'message_creating' | 'function_calling' | 'done'> {\n const stop$ = new ReplaySubject<void>();\n return interval(1000).pipe(\n startWith(null),\n takeUntil(stop$),\n switchMap(() => this.retrieveRunSteps(threadId, runId).pipe(\n catchError((error) => (console.error(error), NEVER)),\n )),\n map(steps => {\n if (steps.some((step: any) => step.status === 'in_progress')) {\n const inProgress = steps.find((step: any) => step.status === 'in_progress');\n switch (inProgress.type) {\n case 'message_creation': return 'message_creating';\n default: return 'function_calling'\n }\n }\n\n if (steps.find((step: any) => step.type === 'message_creation')?.status === 'completed') {\n stop$.next();\n return 'done';\n }\n return 'dealing';\n \n })\n );\n }\n\n async watchSteps(\n threadId: string,\n runId: string,\n onStatusChanged: (status: string) => void,\n ) {\n while (true) {\n const steps = await lastValueFrom(this.retrieveRunSteps(threadId, runId));\n console.debug('steps:', steps);\n if (steps.some((step: any) => step.status === 'in_progress')) {\n const inProgress = steps.find((step: any) => step.status === 'in_progress');\n switch (inProgress.type) {\n case 'message_creation': {\n onStatusChanged('message_creating');\n break;\n }\n default: {\n onStatusChanged('function_calling');\n break;\n }\n }\n }\n\n onStatusChanged('dealing');\n\n if (steps.find((step: any) => step.type === 'message_creation')?.status === 'completed') {\n onStatusChanged('done');\n break;\n }\n\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n }\n\n async watch(\n threadId: string,\n runId: string,\n onFunctionCalled: (toolCall: any) => Promise<object> | object,\n onCompleted: () => void,\n onError: (error: any) => void,\n ) {\n while (true) {\n const run = await this.retrieveRun(threadId, runId);\n switch (run.status) {\n case 'requires_action': {\n try {\n const toolCalls = run.required_action.submit_tool_outputs.tool_calls;\n const result = await onFunctionCalled(toolCalls[0]);\n this.submitToolOutputs(threadId, runId, [{ toolCallId: toolCalls[0].id, output: JSON.stringify(result) }]);\n } catch (error) {\n onError(error);\n \n }\n }\n case 'completed': {\n console.debug(`run ${runId} completed`);\n onCompleted();\n \n return;\n }\n case 'failed': {\n console.debug(`run ${runId} failed`);\n return;\n }\n }\n await new Promise(resolve => setTimeout(resolve, 1000));\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}