@xxmachina/common 19.0.0-preview.9 → 19.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_shared/auth/index.d.ts +8 -1
- package/_shared/auth/passports/anonymous/index.d.ts +8 -1
- package/_shared/auth/passports/firebase/index.d.ts +19 -2
- package/_shared/auth/passports/internal/index.d.ts +17 -1
- package/_shared/auth/passports/msal/index.d.ts +26 -2
- package/_shared/meta/index.d.ts +8 -0
- package/_shared/meta/redis/index.d.ts +39 -2
- package/auth/index.d.ts +16 -1
- package/azure-auth/index.d.ts +41 -2
- package/domain/builder/index.d.ts +81 -0
- package/domain/builder/screen-item/index.d.ts +7 -1
- package/domain/index.d.ts +2 -1
- package/domain/models/index.d.ts +377 -13
- package/fesm2022/xxmachina-common-_shared-auth-passports-anonymous.mjs +20 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-anonymous.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-firebase.mjs +41 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-firebase.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-internal.mjs +34 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-internal.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-msal.mjs +49 -0
- package/fesm2022/xxmachina-common-_shared-auth-passports-msal.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-auth.mjs +25 -0
- package/fesm2022/xxmachina-common-_shared-auth.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-meta-redis.mjs +99 -0
- package/fesm2022/xxmachina-common-_shared-meta-redis.mjs.map +1 -0
- package/fesm2022/xxmachina-common-_shared-meta.mjs +26 -0
- package/fesm2022/xxmachina-common-_shared-meta.mjs.map +1 -0
- package/fesm2022/xxmachina-common-auth.mjs +17 -0
- package/fesm2022/xxmachina-common-auth.mjs.map +1 -0
- package/fesm2022/xxmachina-common-azure-auth.mjs +160 -0
- package/fesm2022/xxmachina-common-azure-auth.mjs.map +1 -0
- package/{domain/builder/screen-item/screen-item.builder.js → fesm2022/xxmachina-common-domain-builder-screen-item.mjs} +10 -11
- package/fesm2022/xxmachina-common-domain-builder-screen-item.mjs.map +1 -0
- package/fesm2022/xxmachina-common-domain-builder.mjs +494 -0
- package/fesm2022/xxmachina-common-domain-builder.mjs.map +1 -0
- package/fesm2022/xxmachina-common-domain-models.mjs +842 -0
- package/fesm2022/xxmachina-common-domain-models.mjs.map +1 -0
- package/fesm2022/xxmachina-common-domain.mjs +7 -0
- package/fesm2022/xxmachina-common-domain.mjs.map +1 -0
- package/fesm2022/xxmachina-common-firebase-auth.mjs +36 -0
- package/fesm2022/xxmachina-common-firebase-auth.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-converters-google.mjs +39 -0
- package/fesm2022/xxmachina-common-infra-converters-google.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-external-data-connect.mjs +13 -0
- package/fesm2022/xxmachina-common-infra-external-data-connect.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-external-quick-js.mjs +61 -0
- package/fesm2022/xxmachina-common-infra-external-quick-js.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-external-resend.mjs +10 -0
- package/fesm2022/xxmachina-common-infra-external-resend.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-external.mjs +36 -0
- package/fesm2022/xxmachina-common-infra-external.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-query-firestore.mjs +34 -0
- package/fesm2022/xxmachina-common-infra-query-firestore.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-query-hasura.mjs +20 -0
- package/fesm2022/xxmachina-common-infra-query-hasura.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-repository-dataconnect.mjs +18 -0
- package/fesm2022/xxmachina-common-infra-repository-dataconnect.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-repository-firestore.mjs +74 -0
- package/fesm2022/xxmachina-common-infra-repository-firestore.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-repository-hasura.mjs +41 -0
- package/fesm2022/xxmachina-common-infra-repository-hasura.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra-repository-notion.mjs +113 -0
- package/fesm2022/xxmachina-common-infra-repository-notion.mjs.map +1 -0
- package/fesm2022/xxmachina-common-infra.mjs +378 -0
- package/fesm2022/xxmachina-common-infra.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-domain-builders.mjs +79 -0
- package/fesm2022/xxmachina-common-invoice-domain-builders.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-domain-models.mjs +428 -0
- package/fesm2022/xxmachina-common-invoice-domain-models.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-domain-resolvers.mjs +41 -0
- package/fesm2022/xxmachina-common-invoice-domain-resolvers.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-domain.mjs +8 -0
- package/fesm2022/xxmachina-common-invoice-domain.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-usecase-contract.mjs +27 -0
- package/fesm2022/xxmachina-common-invoice-usecase-contract.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-usecase-invoice.mjs +191 -0
- package/fesm2022/xxmachina-common-invoice-usecase-invoice.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-usecase-order.mjs +36 -0
- package/fesm2022/xxmachina-common-invoice-usecase-order.mjs.map +1 -0
- package/fesm2022/xxmachina-common-invoice-usecase-partner.mjs +36 -0
- package/fesm2022/xxmachina-common-invoice-usecase-partner.mjs.map +1 -0
- package/fesm2022/xxmachina-common-services-graphql.mjs +60 -0
- package/fesm2022/xxmachina-common-services-graphql.mjs.map +1 -0
- package/fesm2022/xxmachina-common-services-query-config.mjs +44 -0
- package/fesm2022/xxmachina-common-services-query-config.mjs.map +1 -0
- package/fesm2022/xxmachina-common-services-query.mjs +65 -0
- package/fesm2022/xxmachina-common-services-query.mjs.map +1 -0
- package/fesm2022/xxmachina-common-services-speech.mjs +178 -0
- package/fesm2022/xxmachina-common-services-speech.mjs.map +1 -0
- package/fesm2022/xxmachina-common-services-transformer.mjs +27 -0
- package/fesm2022/xxmachina-common-services-transformer.mjs.map +1 -0
- package/fesm2022/xxmachina-common-stores-firestore.mjs +33 -0
- package/fesm2022/xxmachina-common-stores-firestore.mjs.map +1 -0
- package/fesm2022/xxmachina-common-stores-hasura.mjs +32 -0
- package/fesm2022/xxmachina-common-stores-hasura.mjs.map +1 -0
- package/fesm2022/xxmachina-common-stores-inmemory.mjs +102 -0
- package/fesm2022/xxmachina-common-stores-inmemory.mjs.map +1 -0
- package/fesm2022/xxmachina-common-stores.mjs +16 -0
- package/fesm2022/xxmachina-common-stores.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-assistant.mjs +67 -0
- package/fesm2022/xxmachina-common-usecase-assistant.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-database.mjs +95 -0
- package/fesm2022/xxmachina-common-usecase-database.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-graphql.mjs +51 -0
- package/fesm2022/xxmachina-common-usecase-graphql.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-link.mjs +26 -0
- package/fesm2022/xxmachina-common-usecase-link.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-project.mjs +35 -0
- package/fesm2022/xxmachina-common-usecase-project.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase-spec.mjs +45 -0
- package/fesm2022/xxmachina-common-usecase-spec.mjs.map +1 -0
- package/fesm2022/xxmachina-common-usecase.mjs +198 -0
- package/fesm2022/xxmachina-common-usecase.mjs.map +1 -0
- package/{utils/crypto.js → fesm2022/xxmachina-common-utils-crypto.mjs} +10 -12
- package/fesm2022/xxmachina-common-utils-crypto.mjs.map +1 -0
- package/{utils/extract-display-fields.js → fesm2022/xxmachina-common-utils.mjs} +7 -4
- package/fesm2022/xxmachina-common-utils.mjs.map +1 -0
- package/fesm2022/xxmachina-common.mjs +6 -0
- package/fesm2022/xxmachina-common.mjs.map +1 -0
- package/firebase-auth/index.d.ts +6 -0
- package/index.d.ts +1 -0
- package/infra/converters/google/index.d.ts +17 -0
- package/infra/external/data-connect/index.d.ts +7 -0
- package/infra/external/index.d.ts +24 -0
- package/infra/external/quick-js/index.d.ts +24 -0
- package/infra/external/resend/index.d.ts +16 -0
- package/infra/index.d.ts +218 -0
- package/infra/query/firestore/index.d.ts +20 -0
- package/infra/query/hasura/index.d.ts +9 -0
- package/infra/repository/dataconnect/index.d.ts +28 -0
- package/infra/repository/firestore/index.d.ts +42 -0
- package/infra/repository/hasura/index.d.ts +24 -0
- package/infra/repository/notion/index.d.ts +101 -0
- package/invoice/domain/builders/index.d.ts +31 -0
- package/invoice/domain/index.d.ts +3 -0
- package/invoice/domain/models/index.d.ts +78 -0
- package/{domain/resolvers/invoice.resolver.d.ts → invoice/domain/resolvers/index.d.ts} +6 -2
- package/invoice/usecase/contract/index.d.ts +14 -0
- package/invoice/usecase/invoice/index.d.ts +34 -0
- package/invoice/usecase/order/index.d.ts +16 -0
- package/invoice/usecase/partner/index.d.ts +16 -0
- package/package.json +238 -14
- package/services/graphql/index.d.ts +32 -0
- package/services/query/config/index.d.ts +18 -0
- package/services/query/index.d.ts +29 -0
- package/services/speech/index.d.ts +37 -0
- package/services/transformer/index.d.ts +14 -0
- package/stores/firestore/index.d.ts +17 -0
- package/stores/hasura/index.d.ts +17 -0
- package/stores/index.d.ts +22 -40
- package/stores/inmemory/index.d.ts +33 -0
- package/usecase/assistant/index.d.ts +18 -1
- package/usecase/database/index.d.ts +39 -1
- package/usecase/graphql/index.d.ts +17 -1
- package/usecase/index.d.ts +73 -1
- package/usecase/link/index.d.ts +13 -1
- package/usecase/project/index.d.ts +16 -1
- package/usecase/spec/index.d.ts +17 -1
- package/utils/crypto/index.d.ts +9 -0
- package/utils/index.d.ts +5 -1
- package/README.md +0 -11
- package/_shared/auth/auth.module.d.ts +0 -6
- package/_shared/auth/auth.module.js +0 -22
- package/_shared/auth/auth.module.js.map +0 -1
- package/_shared/auth/index.js +0 -5
- package/_shared/auth/index.js.map +0 -1
- package/_shared/auth/passports/anonymous/anonymous.strategy.d.ts +0 -6
- package/_shared/auth/passports/anonymous/anonymous.strategy.js +0 -19
- package/_shared/auth/passports/anonymous/anonymous.strategy.js.map +0 -1
- package/_shared/auth/passports/anonymous/index.js +0 -5
- package/_shared/auth/passports/anonymous/index.js.map +0 -1
- package/_shared/auth/passports/firebase/firebase.guard.d.ts +0 -6
- package/_shared/auth/passports/firebase/firebase.guard.js +0 -23
- package/_shared/auth/passports/firebase/firebase.guard.js.map +0 -1
- package/_shared/auth/passports/firebase/firebase.strategy.d.ts +0 -10
- package/_shared/auth/passports/firebase/firebase.strategy.js +0 -22
- package/_shared/auth/passports/firebase/firebase.strategy.js.map +0 -1
- package/_shared/auth/passports/firebase/index.js +0 -6
- package/_shared/auth/passports/firebase/index.js.map +0 -1
- package/_shared/auth/passports/internal/index.js +0 -5
- package/_shared/auth/passports/internal/index.js.map +0 -1
- package/_shared/auth/passports/internal/internal.strategy.d.ts +0 -14
- package/_shared/auth/passports/internal/internal.strategy.js +0 -33
- package/_shared/auth/passports/internal/internal.strategy.js.map +0 -1
- package/_shared/auth/passports/msal/index.js +0 -6
- package/_shared/auth/passports/msal/index.js.map +0 -1
- package/_shared/auth/passports/msal/msal.guard.d.ts +0 -4
- package/_shared/auth/passports/msal/msal.guard.js +0 -13
- package/_shared/auth/passports/msal/msal.guard.js.map +0 -1
- package/_shared/auth/passports/msal/msal.strategy.d.ts +0 -17
- package/_shared/auth/passports/msal/msal.strategy.js +0 -43
- package/_shared/auth/passports/msal/msal.strategy.js.map +0 -1
- package/_shared/meta/decorators.d.ts +0 -4
- package/_shared/meta/decorators.js +0 -25
- package/_shared/meta/decorators.js.map +0 -1
- package/_shared/meta/redis/index.js +0 -6
- package/_shared/meta/redis/index.js.map +0 -1
- package/_shared/meta/redis/redis.config.d.ts +0 -9
- package/_shared/meta/redis/redis.config.js +0 -10
- package/_shared/meta/redis/redis.config.js.map +0 -1
- package/_shared/meta/redis/redis.repository.d.ts +0 -23
- package/_shared/meta/redis/redis.repository.js +0 -108
- package/_shared/meta/redis/redis.repository.js.map +0 -1
- package/auth/auth.service.d.ts +0 -10
- package/auth/auth.service.js +0 -12
- package/auth/auth.service.js.map +0 -1
- package/auth/index.js +0 -5
- package/auth/index.js.map +0 -1
- package/azure-auth/auth.di.d.ts +0 -4
- package/azure-auth/auth.di.js +0 -56
- package/azure-auth/auth.di.js.map +0 -1
- package/azure-auth/auth.service.d.ts +0 -32
- package/azure-auth/auth.service.js +0 -115
- package/azure-auth/auth.service.js.map +0 -1
- package/azure-auth/index.js +0 -6
- package/azure-auth/index.js.map +0 -1
- package/domain/builder/command/command.builder.d.ts +0 -5
- package/domain/builder/command/command.builder.js +0 -30
- package/domain/builder/command/command.builder.js.map +0 -1
- package/domain/builder/command/index.d.ts +0 -1
- package/domain/builder/command/index.js +0 -5
- package/domain/builder/command/index.js.map +0 -1
- package/domain/builder/command-action/command-action.builder.d.ts +0 -40
- package/domain/builder/command-action/command-action.builder.js +0 -139
- package/domain/builder/command-action/command-action.builder.js.map +0 -1
- package/domain/builder/command-action/index.d.ts +0 -1
- package/domain/builder/command-action/index.js +0 -5
- package/domain/builder/command-action/index.js.map +0 -1
- package/domain/builder/er/er.builder.d.ts +0 -19
- package/domain/builder/er/er.builder.js +0 -112
- package/domain/builder/er/er.builder.js.map +0 -1
- package/domain/builder/er/index.d.ts +0 -1
- package/domain/builder/er/index.js +0 -5
- package/domain/builder/er/index.js.map +0 -1
- package/domain/builder/screen-item/index.js +0 -5
- package/domain/builder/screen-item/index.js.map +0 -1
- package/domain/builder/screen-item/screen-item.builder.d.ts +0 -5
- package/domain/builder/screen-item/screen-item.builder.js.map +0 -1
- package/domain/index.js +0 -5
- package/domain/index.js.map +0 -1
- package/domain/invoice/builders/email/email.builder.d.ts +0 -18
- package/domain/invoice/builders/email/email.builder.js +0 -29
- package/domain/invoice/builders/email/email.builder.js.map +0 -1
- package/domain/invoice/builders/email/index.d.ts +0 -1
- package/domain/invoice/builders/email/index.js +0 -5
- package/domain/invoice/builders/email/index.js.map +0 -1
- package/domain/invoice/builders/message/index.d.ts +0 -1
- package/domain/invoice/builders/message/index.js +0 -5
- package/domain/invoice/builders/message/index.js.map +0 -1
- package/domain/invoice/builders/message/message.builder.d.ts +0 -6
- package/domain/invoice/builders/message/message.builder.js +0 -43
- package/domain/invoice/builders/message/message.builder.js.map +0 -1
- package/domain/invoice/builders/title/index.d.ts +0 -1
- package/domain/invoice/builders/title/index.js +0 -5
- package/domain/invoice/builders/title/index.js.map +0 -1
- package/domain/invoice/builders/title/title.builder.d.ts +0 -4
- package/domain/invoice/builders/title/title.builder.js +0 -11
- package/domain/invoice/builders/title/title.builder.js.map +0 -1
- package/domain/invoice/models/backoffice/contract.d.ts +0 -10
- package/domain/invoice/models/backoffice/contract.js +0 -50
- package/domain/invoice/models/backoffice/contract.js.map +0 -1
- package/domain/invoice/models/backoffice/index.d.ts +0 -5
- package/domain/invoice/models/backoffice/index.js +0 -9
- package/domain/invoice/models/backoffice/index.js.map +0 -1
- package/domain/invoice/models/backoffice/invoice-mail.d.ts +0 -8
- package/domain/invoice/models/backoffice/invoice-mail.js +0 -7
- package/domain/invoice/models/backoffice/invoice-mail.js.map +0 -1
- package/domain/invoice/models/backoffice/invoice.d.ts +0 -19
- package/domain/invoice/models/backoffice/invoice.js +0 -91
- package/domain/invoice/models/backoffice/invoice.js.map +0 -1
- package/domain/invoice/models/backoffice/order.d.ts +0 -26
- package/domain/invoice/models/backoffice/order.js +0 -157
- package/domain/invoice/models/backoffice/order.js.map +0 -1
- package/domain/invoice/models/backoffice/partner.d.ts +0 -17
- package/domain/invoice/models/backoffice/partner.js +0 -96
- package/domain/invoice/models/backoffice/partner.js.map +0 -1
- package/domain/invoice/models/index.d.ts +0 -1
- package/domain/invoice/models/index.js +0 -5
- package/domain/invoice/models/index.js.map +0 -1
- package/domain/models/agent/assistant.d.ts +0 -9
- package/domain/models/agent/assistant.js +0 -31
- package/domain/models/agent/assistant.js.map +0 -1
- package/domain/models/agent/index.d.ts +0 -1
- package/domain/models/agent/index.js +0 -5
- package/domain/models/agent/index.js.map +0 -1
- package/domain/models/bookmarklet/bookmarklet.d.ts +0 -9
- package/domain/models/bookmarklet/bookmarklet.js +0 -34
- package/domain/models/bookmarklet/bookmarklet.js.map +0 -1
- package/domain/models/bookmarklet/index.d.ts +0 -1
- package/domain/models/bookmarklet/index.js +0 -5
- package/domain/models/bookmarklet/index.js.map +0 -1
- package/domain/models/calendar-utils.d.ts +0 -5
- package/domain/models/calendar-utils.js +0 -43
- package/domain/models/calendar-utils.js.map +0 -1
- package/domain/models/command/command.d.ts +0 -18
- package/domain/models/command/command.helper.d.ts +0 -4
- package/domain/models/command/command.helper.js +0 -14
- package/domain/models/command/command.helper.js.map +0 -1
- package/domain/models/command/command.js +0 -40
- package/domain/models/command/command.js.map +0 -1
- package/domain/models/command/index.d.ts +0 -2
- package/domain/models/command/index.js +0 -6
- package/domain/models/command/index.js.map +0 -1
- package/domain/models/database/database.d.ts +0 -4
- package/domain/models/database/database.js +0 -7
- package/domain/models/database/database.js.map +0 -1
- package/domain/models/database/index.d.ts +0 -1
- package/domain/models/database/index.js +0 -5
- package/domain/models/database/index.js.map +0 -1
- package/domain/models/endpoint/endpoint.helper.d.ts +0 -4
- package/domain/models/endpoint/endpoint.helper.js +0 -21
- package/domain/models/endpoint/endpoint.helper.js.map +0 -1
- package/domain/models/endpoint/index.d.ts +0 -1
- package/domain/models/endpoint/index.js +0 -5
- package/domain/models/endpoint/index.js.map +0 -1
- package/domain/models/index.js +0 -12
- package/domain/models/index.js.map +0 -1
- package/domain/models/links/google/google.d.ts +0 -12
- package/domain/models/links/google/google.js +0 -47
- package/domain/models/links/google/google.js.map +0 -1
- package/domain/models/links/google/index.d.ts +0 -1
- package/domain/models/links/google/index.js +0 -5
- package/domain/models/links/google/index.js.map +0 -1
- package/domain/models/openapi/index.d.ts +0 -2
- package/domain/models/openapi/index.js +0 -6
- package/domain/models/openapi/index.js.map +0 -1
- package/domain/models/openapi/openapi.d.ts +0 -32
- package/domain/models/openapi/openapi.js +0 -87
- package/domain/models/openapi/openapi.js.map +0 -1
- package/domain/models/openapi/openapi.schema.d.ts +0 -76
- package/domain/models/openapi/openapi.schema.js +0 -3
- package/domain/models/openapi/openapi.schema.js.map +0 -1
- package/domain/models/operators/assistancts/base.d.ts +0 -5
- package/domain/models/operators/assistancts/base.js +0 -13
- package/domain/models/operators/assistancts/base.js.map +0 -1
- package/domain/models/operators/assistancts/index.d.ts +0 -1
- package/domain/models/operators/assistancts/index.js +0 -5
- package/domain/models/operators/assistancts/index.js.map +0 -1
- package/domain/models/operators/base.d.ts +0 -13
- package/domain/models/operators/base.js +0 -10
- package/domain/models/operators/base.js.map +0 -1
- package/domain/models/operators/index.d.ts +0 -4
- package/domain/models/operators/index.js +0 -8
- package/domain/models/operators/index.js.map +0 -1
- package/domain/models/operators/systems/base.d.ts +0 -5
- package/domain/models/operators/systems/base.js +0 -3
- package/domain/models/operators/systems/base.js.map +0 -1
- package/domain/models/operators/systems/graphql.d.ts +0 -5
- package/domain/models/operators/systems/graphql.js +0 -3
- package/domain/models/operators/systems/graphql.js.map +0 -1
- package/domain/models/operators/systems/index.d.ts +0 -3
- package/domain/models/operators/systems/index.js +0 -7
- package/domain/models/operators/systems/index.js.map +0 -1
- package/domain/models/operators/systems/rest.d.ts +0 -6
- package/domain/models/operators/systems/rest.js +0 -3
- package/domain/models/operators/systems/rest.js.map +0 -1
- package/domain/models/operators/workflows/index.d.ts +0 -1
- package/domain/models/operators/workflows/index.js +0 -5
- package/domain/models/operators/workflows/index.js.map +0 -1
- package/domain/models/operators/workflows/workflow.d.ts +0 -9
- package/domain/models/operators/workflows/workflow.js +0 -3
- package/domain/models/operators/workflows/workflow.js.map +0 -1
- package/domain/models/project.d.ts +0 -22
- package/domain/models/project.js +0 -9
- package/domain/models/project.js.map +0 -1
- package/domain/models/query/index.d.ts +0 -2
- package/domain/models/query/index.js +0 -6
- package/domain/models/query/index.js.map +0 -1
- package/domain/models/query/query.d.ts +0 -27
- package/domain/models/query/query.helper.d.ts +0 -23
- package/domain/models/query/query.helper.js +0 -172
- package/domain/models/query/query.helper.js.map +0 -1
- package/domain/models/query/query.js +0 -122
- package/domain/models/query/query.js.map +0 -1
- package/domain/models/resource/index.d.ts +0 -2
- package/domain/models/resource/index.js +0 -6
- package/domain/models/resource/index.js.map +0 -1
- package/domain/models/resource/resource.d.ts +0 -15
- package/domain/models/resource/resource.helper.d.ts +0 -4
- package/domain/models/resource/resource.helper.js +0 -16
- package/domain/models/resource/resource.helper.js.map +0 -1
- package/domain/models/resource/resource.js +0 -73
- package/domain/models/resource/resource.js.map +0 -1
- package/domain/models/scheduler/index.d.ts +0 -1
- package/domain/models/scheduler/index.js +0 -5
- package/domain/models/scheduler/index.js.map +0 -1
- package/domain/models/scheduler/schedule.d.ts +0 -23
- package/domain/models/scheduler/schedule.js +0 -89
- package/domain/models/scheduler/schedule.js.map +0 -1
- package/domain/models/screen-item/index.d.ts +0 -1
- package/domain/models/screen-item/index.js +0 -5
- package/domain/models/screen-item/index.js.map +0 -1
- package/domain/models/screen-item/screen-item.d.ts +0 -9
- package/domain/models/screen-item/screen-item.js +0 -3
- package/domain/models/screen-item/screen-item.js.map +0 -1
- package/domain/models/spec.d.ts +0 -7
- package/domain/models/spec.js +0 -3
- package/domain/models/spec.js.map +0 -1
- package/domain/resolvers/index.d.ts +0 -1
- package/domain/resolvers/index.js +0 -5
- package/domain/resolvers/index.js.map +0 -1
- package/domain/resolvers/invoice.resolver.js +0 -31
- package/domain/resolvers/invoice.resolver.js.map +0 -1
- package/infrastructure/converters/bookmarklet/bookmarklet.converter.d.ts +0 -0
- package/infrastructure/converters/bookmarklet/bookmarklet.converter.js +0 -1
- package/infrastructure/converters/bookmarklet/bookmarklet.converter.js.map +0 -1
- package/infrastructure/converters/google/google.converter.d.ts +0 -9
- package/infrastructure/converters/google/google.converter.js +0 -27
- package/infrastructure/converters/google/google.converter.js.map +0 -1
- package/infrastructure/converters/google/index.d.ts +0 -1
- package/infrastructure/converters/google/index.js +0 -5
- package/infrastructure/converters/google/index.js.map +0 -1
- package/infrastructure/external/data-connect/data-connect.service.d.ts +0 -4
- package/infrastructure/external/data-connect/data-connect.service.impl.d.ts +0 -7
- package/infrastructure/external/data-connect/data-connect.service.impl.js +0 -20
- package/infrastructure/external/data-connect/data-connect.service.impl.js.map +0 -1
- package/infrastructure/external/data-connect/data-connect.service.js +0 -11
- package/infrastructure/external/data-connect/data-connect.service.js.map +0 -1
- package/infrastructure/external/data-connect/index.d.ts +0 -1
- package/infrastructure/external/data-connect/index.js +0 -5
- package/infrastructure/external/data-connect/index.js.map +0 -1
- package/infrastructure/external/external.config.d.ts +0 -7
- package/infrastructure/external/external.config.js +0 -13
- package/infrastructure/external/external.config.js.map +0 -1
- package/infrastructure/external/external.service.d.ts +0 -8
- package/infrastructure/external/external.service.js +0 -23
- package/infrastructure/external/external.service.js.map +0 -1
- package/infrastructure/external/index.d.ts +0 -2
- package/infrastructure/external/index.js +0 -6
- package/infrastructure/external/index.js.map +0 -1
- package/infrastructure/external/quick-js/index.d.ts +0 -1
- package/infrastructure/external/quick-js/index.js +0 -5
- package/infrastructure/external/quick-js/index.js.map +0 -1
- package/infrastructure/external/quick-js/quick-js.service.d.ts +0 -7
- package/infrastructure/external/quick-js/quick-js.service.js +0 -44
- package/infrastructure/external/quick-js/quick-js.service.js.map +0 -1
- package/infrastructure/external/resend/index.d.ts +0 -1
- package/infrastructure/external/resend/index.js +0 -5
- package/infrastructure/external/resend/index.js.map +0 -1
- package/infrastructure/external/resend/resend.service.d.ts +0 -9
- package/infrastructure/external/resend/resend.service.impl.d.ts +0 -17
- package/infrastructure/external/resend/resend.service.impl.js +0 -27
- package/infrastructure/external/resend/resend.service.impl.js.map +0 -1
- package/infrastructure/external/resend/resend.service.js +0 -6
- package/infrastructure/external/resend/resend.service.js.map +0 -1
- package/infrastructure/index.d.ts +0 -2
- package/infrastructure/index.js +0 -6
- package/infrastructure/index.js.map +0 -1
- package/infrastructure/infrastructure.config.d.ts +0 -16
- package/infrastructure/infrastructure.config.js +0 -12
- package/infrastructure/infrastructure.config.js.map +0 -1
- package/infrastructure/infrastructure.service.d.ts +0 -7
- package/infrastructure/infrastructure.service.js +0 -20
- package/infrastructure/infrastructure.service.js.map +0 -1
- package/infrastructure/query/firestore/query/index.d.ts +0 -1
- package/infrastructure/query/firestore/query/index.js +0 -5
- package/infrastructure/query/firestore/query/index.js.map +0 -1
- package/infrastructure/query/firestore/query/query.query.d.ts +0 -6
- package/infrastructure/query/firestore/query/query.query.js +0 -20
- package/infrastructure/query/firestore/query/query.query.js.map +0 -1
- package/infrastructure/query/firestore/resource/index.d.ts +0 -1
- package/infrastructure/query/firestore/resource/index.js +0 -5
- package/infrastructure/query/firestore/resource/index.js.map +0 -1
- package/infrastructure/query/firestore/resource/resource.query.d.ts +0 -6
- package/infrastructure/query/firestore/resource/resource.query.js +0 -20
- package/infrastructure/query/firestore/resource/resource.query.js.map +0 -1
- package/infrastructure/query/hasura/resource/index.d.ts +0 -1
- package/infrastructure/query/hasura/resource/index.js +0 -5
- package/infrastructure/query/hasura/resource/index.js.map +0 -1
- package/infrastructure/query/hasura/resource/resource.query.d.ts +0 -3
- package/infrastructure/query/hasura/resource/resource.query.js +0 -14
- package/infrastructure/query/hasura/resource/resource.query.js.map +0 -1
- package/infrastructure/repository/dataconnect/invoice/index.d.ts +0 -1
- package/infrastructure/repository/dataconnect/invoice/index.js +0 -5
- package/infrastructure/repository/dataconnect/invoice/index.js.map +0 -1
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.d.ts +0 -4
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.impl.d.ts +0 -10
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.impl.js +0 -54
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.impl.js.map +0 -1
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.js +0 -11
- package/infrastructure/repository/dataconnect/invoice/invoice.repository.js.map +0 -1
- package/infrastructure/repository/dataconnect/order/index.d.ts +0 -1
- package/infrastructure/repository/dataconnect/order/index.js +0 -5
- package/infrastructure/repository/dataconnect/order/index.js.map +0 -1
- package/infrastructure/repository/dataconnect/order/order.repository.d.ts +0 -4
- package/infrastructure/repository/dataconnect/order/order.repository.impl.d.ts +0 -14
- package/infrastructure/repository/dataconnect/order/order.repository.impl.js +0 -74
- package/infrastructure/repository/dataconnect/order/order.repository.impl.js.map +0 -1
- package/infrastructure/repository/dataconnect/order/order.repository.js +0 -11
- package/infrastructure/repository/dataconnect/order/order.repository.js.map +0 -1
- package/infrastructure/repository/firestore/bookmarklet/bookmarklet.repository.d.ts +0 -6
- package/infrastructure/repository/firestore/bookmarklet/bookmarklet.repository.js +0 -20
- package/infrastructure/repository/firestore/bookmarklet/bookmarklet.repository.js.map +0 -1
- package/infrastructure/repository/firestore/bookmarklet/index.d.ts +0 -1
- package/infrastructure/repository/firestore/bookmarklet/index.js +0 -5
- package/infrastructure/repository/firestore/bookmarklet/index.js.map +0 -1
- package/infrastructure/repository/firestore/firestore.repository.d.ts +0 -7
- package/infrastructure/repository/firestore/firestore.repository.js +0 -20
- package/infrastructure/repository/firestore/firestore.repository.js.map +0 -1
- package/infrastructure/repository/firestore/index.d.ts +0 -1
- package/infrastructure/repository/firestore/index.js +0 -5
- package/infrastructure/repository/firestore/index.js.map +0 -1
- package/infrastructure/repository/firestore/link/google/google.repository.d.ts +0 -7
- package/infrastructure/repository/firestore/link/google/google.repository.js +0 -19
- package/infrastructure/repository/firestore/link/google/google.repository.js.map +0 -1
- package/infrastructure/repository/firestore/link/google/index.d.ts +0 -1
- package/infrastructure/repository/firestore/link/google/index.js +0 -5
- package/infrastructure/repository/firestore/link/google/index.js.map +0 -1
- package/infrastructure/repository/firestore/link/index.d.ts +0 -1
- package/infrastructure/repository/firestore/link/index.js +0 -5
- package/infrastructure/repository/firestore/link/index.js.map +0 -1
- package/infrastructure/repository/firestore/link/link.repository.d.ts +0 -5
- package/infrastructure/repository/firestore/link/link.repository.js +0 -17
- package/infrastructure/repository/firestore/link/link.repository.js.map +0 -1
- package/infrastructure/repository/firestore/query/index.d.ts +0 -1
- package/infrastructure/repository/firestore/query/index.js +0 -5
- package/infrastructure/repository/firestore/query/index.js.map +0 -1
- package/infrastructure/repository/firestore/query/query.repository.d.ts +0 -6
- package/infrastructure/repository/firestore/query/query.repository.js +0 -20
- package/infrastructure/repository/firestore/query/query.repository.js.map +0 -1
- package/infrastructure/repository/firestore/resource/index.d.ts +0 -1
- package/infrastructure/repository/firestore/resource/index.js +0 -5
- package/infrastructure/repository/firestore/resource/index.js.map +0 -1
- package/infrastructure/repository/firestore/resource/resource.repository.d.ts +0 -6
- package/infrastructure/repository/firestore/resource/resource.repository.js +0 -20
- package/infrastructure/repository/firestore/resource/resource.repository.js.map +0 -1
- package/infrastructure/repository/hasura/query/index.d.ts +0 -1
- package/infrastructure/repository/hasura/query/index.js +0 -5
- package/infrastructure/repository/hasura/query/index.js.map +0 -1
- package/infrastructure/repository/hasura/query/query.repository.d.ts +0 -8
- package/infrastructure/repository/hasura/query/query.repository.js +0 -23
- package/infrastructure/repository/hasura/query/query.repository.js.map +0 -1
- package/infrastructure/repository/hasura/resource/index.d.ts +0 -1
- package/infrastructure/repository/hasura/resource/index.js +0 -5
- package/infrastructure/repository/hasura/resource/index.js.map +0 -1
- package/infrastructure/repository/hasura/resource/resource.repository.d.ts +0 -8
- package/infrastructure/repository/hasura/resource/resource.repository.js +0 -23
- package/infrastructure/repository/hasura/resource/resource.repository.js.map +0 -1
- package/infrastructure/repository/index.d.ts +0 -2
- package/infrastructure/repository/index.js +0 -6
- package/infrastructure/repository/index.js.map +0 -1
- package/infrastructure/repository/notion/contract/contract.config.d.ts +0 -9
- package/infrastructure/repository/notion/contract/contract.config.js +0 -10
- package/infrastructure/repository/notion/contract/contract.config.js.map +0 -1
- package/infrastructure/repository/notion/contract/contract.repository.d.ts +0 -8
- package/infrastructure/repository/notion/contract/contract.repository.js +0 -22
- package/infrastructure/repository/notion/contract/contract.repository.js.map +0 -1
- package/infrastructure/repository/notion/contract/index.d.ts +0 -2
- package/infrastructure/repository/notion/contract/index.js +0 -6
- package/infrastructure/repository/notion/contract/index.js.map +0 -1
- package/infrastructure/repository/notion/index.d.ts +0 -2
- package/infrastructure/repository/notion/index.js +0 -6
- package/infrastructure/repository/notion/index.js.map +0 -1
- package/infrastructure/repository/notion/invoice/index.d.ts +0 -2
- package/infrastructure/repository/notion/invoice/index.js +0 -6
- package/infrastructure/repository/notion/invoice/index.js.map +0 -1
- package/infrastructure/repository/notion/invoice/invoice.config.d.ts +0 -9
- package/infrastructure/repository/notion/invoice/invoice.config.js +0 -10
- package/infrastructure/repository/notion/invoice/invoice.config.js.map +0 -1
- package/infrastructure/repository/notion/invoice/invoice.repository.d.ts +0 -8
- package/infrastructure/repository/notion/invoice/invoice.repository.js +0 -22
- package/infrastructure/repository/notion/invoice/invoice.repository.js.map +0 -1
- package/infrastructure/repository/notion/notion.config.d.ts +0 -17
- package/infrastructure/repository/notion/notion.config.js +0 -18
- package/infrastructure/repository/notion/notion.config.js.map +0 -1
- package/infrastructure/repository/notion/notion.repository.d.ts +0 -11
- package/infrastructure/repository/notion/notion.repository.js +0 -26
- package/infrastructure/repository/notion/notion.repository.js.map +0 -1
- package/infrastructure/repository/notion/order/index.d.ts +0 -1
- package/infrastructure/repository/notion/order/index.js +0 -5
- package/infrastructure/repository/notion/order/index.js.map +0 -1
- package/infrastructure/repository/notion/order/order.config.d.ts +0 -9
- package/infrastructure/repository/notion/order/order.config.js +0 -10
- package/infrastructure/repository/notion/order/order.config.js.map +0 -1
- package/infrastructure/repository/notion/order/order.repository.d.ts +0 -8
- package/infrastructure/repository/notion/order/order.repository.js +0 -22
- package/infrastructure/repository/notion/order/order.repository.js.map +0 -1
- package/infrastructure/repository/notion/partner/index.d.ts +0 -2
- package/infrastructure/repository/notion/partner/index.js +0 -6
- package/infrastructure/repository/notion/partner/index.js.map +0 -1
- package/infrastructure/repository/notion/partner/partner.config.d.ts +0 -9
- package/infrastructure/repository/notion/partner/partner.config.js +0 -10
- package/infrastructure/repository/notion/partner/partner.config.js.map +0 -1
- package/infrastructure/repository/notion/partner/partner.repository.d.ts +0 -8
- package/infrastructure/repository/notion/partner/partner.repository.js +0 -22
- package/infrastructure/repository/notion/partner/partner.repository.js.map +0 -1
- package/infrastructure/repository/redis/index.d.ts +0 -2
- package/infrastructure/repository/redis/index.js +0 -6
- package/infrastructure/repository/redis/index.js.map +0 -1
- package/infrastructure/repository/redis/operator/index.d.ts +0 -1
- package/infrastructure/repository/redis/operator/index.js +0 -5
- package/infrastructure/repository/redis/operator/index.js.map +0 -1
- package/infrastructure/repository/redis/operator/operator.repository.d.ts +0 -5
- package/infrastructure/repository/redis/operator/operator.repository.js +0 -17
- package/infrastructure/repository/redis/operator/operator.repository.js.map +0 -1
- package/infrastructure/repository/redis/project/index.d.ts +0 -1
- package/infrastructure/repository/redis/project/index.js +0 -5
- package/infrastructure/repository/redis/project/index.js.map +0 -1
- package/infrastructure/repository/redis/project/project.repository.d.ts +0 -19
- package/infrastructure/repository/redis/project/project.repository.js +0 -33
- package/infrastructure/repository/redis/project/project.repository.js.map +0 -1
- package/infrastructure/repository/redis/redis.config.d.ts +0 -8
- package/infrastructure/repository/redis/redis.config.js +0 -10
- package/infrastructure/repository/redis/redis.config.js.map +0 -1
- package/infrastructure/repository/redis/redis.service.d.ts +0 -10
- package/infrastructure/repository/redis/redis.service.js +0 -22
- package/infrastructure/repository/redis/redis.service.js.map +0 -1
- package/infrastructure/repository/redis/spec/index.d.ts +0 -1
- package/infrastructure/repository/redis/spec/index.js +0 -5
- package/infrastructure/repository/redis/spec/index.js.map +0 -1
- package/infrastructure/repository/redis/spec/spec.repository.d.ts +0 -17
- package/infrastructure/repository/redis/spec/spec.repository.js +0 -94
- package/infrastructure/repository/redis/spec/spec.repository.js.map +0 -1
- package/infrastructure/repository/redis/system/index.d.ts +0 -1
- package/infrastructure/repository/redis/system/index.js +0 -5
- package/infrastructure/repository/redis/system/index.js.map +0 -1
- package/infrastructure/repository/redis/system/system.repository.d.ts +0 -3
- package/infrastructure/repository/redis/system/system.repository.js +0 -15
- package/infrastructure/repository/redis/system/system.repository.js.map +0 -1
- package/infrastructure/repository/repository.config.d.ts +0 -16
- package/infrastructure/repository/repository.config.js +0 -12
- package/infrastructure/repository/repository.config.js.map +0 -1
- package/infrastructure/repository/repository.service.d.ts +0 -8
- package/infrastructure/repository/repository.service.js +0 -20
- package/infrastructure/repository/repository.service.js.map +0 -1
- package/stores/index.js +0 -66
- package/stores/index.js.map +0 -1
- package/usecase/assistant/assistant.service.d.ts +0 -12
- package/usecase/assistant/assistant.service.js +0 -72
- package/usecase/assistant/assistant.service.js.map +0 -1
- package/usecase/assistant/index.js +0 -5
- package/usecase/assistant/index.js.map +0 -1
- package/usecase/database/database.service.d.ts +0 -31
- package/usecase/database/database.service.js +0 -103
- package/usecase/database/database.service.js.map +0 -1
- package/usecase/database/index.js +0 -5
- package/usecase/database/index.js.map +0 -1
- package/usecase/graphql/graphql.service.d.ts +0 -9
- package/usecase/graphql/graphql.service.js +0 -49
- package/usecase/graphql/graphql.service.js.map +0 -1
- package/usecase/graphql/index.js +0 -5
- package/usecase/graphql/index.js.map +0 -1
- package/usecase/index.js +0 -5
- package/usecase/index.js.map +0 -1
- package/usecase/invoice/index.d.ts +0 -1
- package/usecase/invoice/index.js +0 -5
- package/usecase/invoice/index.js.map +0 -1
- package/usecase/invoice/invoice.service.d.ts +0 -27
- package/usecase/invoice/invoice.service.js +0 -69
- package/usecase/invoice/invoice.service.js.map +0 -1
- package/usecase/link/index.js +0 -5
- package/usecase/link/index.js.map +0 -1
- package/usecase/link/link.service.d.ts +0 -7
- package/usecase/link/link.service.js +0 -20
- package/usecase/link/link.service.js.map +0 -1
- package/usecase/order/index.d.ts +0 -1
- package/usecase/order/index.js +0 -5
- package/usecase/order/index.js.map +0 -1
- package/usecase/order/order.service.d.ts +0 -6
- package/usecase/order/order.service.js +0 -27
- package/usecase/order/order.service.js.map +0 -1
- package/usecase/project/index.js +0 -5
- package/usecase/project/index.js.map +0 -1
- package/usecase/project/project.service.d.ts +0 -10
- package/usecase/project/project.service.js +0 -37
- package/usecase/project/project.service.js.map +0 -1
- package/usecase/spec/index.js +0 -5
- package/usecase/spec/index.js.map +0 -1
- package/usecase/spec/spec.service.d.ts +0 -11
- package/usecase/spec/spec.service.js +0 -49
- package/usecase/spec/spec.service.js.map +0 -1
- package/usecase/usecase.service.d.ts +0 -12
- package/usecase/usecase.service.js +0 -24
- package/usecase/usecase.service.js.map +0 -1
- package/utils/crypto.d.ts +0 -7
- package/utils/crypto.js.map +0 -1
- package/utils/extract-display-fields.d.ts +0 -2
- package/utils/extract-display-fields.js.map +0 -1
- package/utils/index.js +0 -5
- package/utils/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-services-query-config.mjs","sources":["../tmp-esm2022/services/query/config/config.service.js","../tmp-esm2022/services/query/config/xxmachina-common-services-query-config.js"],"sourcesContent":["import { inject, Injectable, InjectionToken, makeEnvironmentProviders } from \"@angular/core\";\nimport { reconstruct } from \"@nx-ddd/core\";\nimport { map } from \"rxjs\";\nimport * as i0 from \"@angular/core\";\nexport const QUERY_CONFIG = new InjectionToken('[@xxmachina/components] QUERY_CONFIG');\nexport function provideQueryConfig(useFactory) {\n return makeEnvironmentProviders([{ provide: QUERY_CONFIG, useFactory }]);\n}\nexport class QueryConfigService {\n config$ = inject(QUERY_CONFIG);\n replaceText(text, config) {\n return Object.entries(config).reduce((text, [key, value]) => text.replaceAll(`$${key}`, value), text);\n }\n replace(params, config) {\n if (typeof params === 'string') {\n return this.replaceText(params, config);\n }\n const resonstruceted = reconstruct(params, (_, value) => {\n if (typeof value === 'string') {\n const newValue = this.replaceText(value, config);\n return [true, newValue];\n }\n return [false];\n });\n return resonstruceted;\n }\n resolve(params) {\n return this.config$.pipe(map(config => this.replace(params, config)));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryConfigService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryConfigService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3F1ZXJ5L2NvbmZpZy9jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXdCLE1BQU0sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ILE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDM0MsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQzs7QUFHdkMsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLElBQUksY0FBYyxDQUEwQixzQ0FBc0MsQ0FBQyxDQUFDO0FBRWhILE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxVQUF5QztJQUMxRSxPQUFPLHdCQUF3QixDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUMzRSxDQUFDO0FBR0QsTUFBTSxPQUFPLGtCQUFrQjtJQUNwQixPQUFPLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRTlCLFdBQVcsQ0FBQyxJQUFZLEVBQUUsTUFBbUI7UUFDckQsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsRUFBRSxFQUFFLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3hHLENBQUM7SUFFUyxPQUFPLENBQXlDLE1BQVMsRUFBRSxNQUFtQjtRQUN0RixJQUFJLE9BQU8sTUFBTSxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQy9CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFNLENBQUM7UUFDL0MsQ0FBQztRQUNELE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUU7WUFDdEQsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDOUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ2pELE9BQU8sQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDMUIsQ0FBQztZQUNELE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sY0FBbUIsQ0FBQztJQUM3QixDQUFDO0lBRUQsT0FBTyxDQUFtQixNQUFTO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQ3RCLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQzVDLENBQUM7SUFDSixDQUFDO3VHQXpCVSxrQkFBa0I7MkdBQWxCLGtCQUFrQixjQURMLE1BQU07OzJGQUNuQixrQkFBa0I7a0JBRDlCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnRQcm92aWRlcnMsIGluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0aW9uVG9rZW4sIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyByZWNvbnN0cnVjdCB9IGZyb20gXCJAbngtZGRkL2NvcmVcIjtcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gXCJyeGpzXCI7XG5cbmV4cG9ydCB0eXBlIFF1ZXJ5Q29uZmlnID0gUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbmV4cG9ydCBjb25zdCBRVUVSWV9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48T2JzZXJ2YWJsZTxRdWVyeUNvbmZpZz4+KCdbQHh4bWFjaGluYS9jb21wb25lbnRzXSBRVUVSWV9DT05GSUcnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHByb3ZpZGVRdWVyeUNvbmZpZyh1c2VGYWN0b3J5OiAoKSA9PiBPYnNlcnZhYmxlPFF1ZXJ5Q29uZmlnPik6IEVudmlyb25tZW50UHJvdmlkZXJzIHtcbiAgcmV0dXJuIG1ha2VFbnZpcm9ubWVudFByb3ZpZGVycyhbeyBwcm92aWRlOiBRVUVSWV9DT05GSUcsIHVzZUZhY3RvcnkgfV0pO1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFF1ZXJ5Q29uZmlnU2VydmljZSB7XG4gIHJlYWRvbmx5IGNvbmZpZyQgPSBpbmplY3QoUVVFUllfQ09ORklHKTtcblxuICBwcm90ZWN0ZWQgcmVwbGFjZVRleHQodGV4dDogc3RyaW5nLCBjb25maWc6IFF1ZXJ5Q29uZmlnKTogc3RyaW5nIHtcbiAgICByZXR1cm4gT2JqZWN0LmVudHJpZXMoY29uZmlnKS5yZWR1Y2UoKHRleHQsIFtrZXksIHZhbHVlXSkgPT4gdGV4dC5yZXBsYWNlQWxsKGAkJHtrZXl9YCwgdmFsdWUpLCB0ZXh0KTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXBsYWNlPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgc3RyaW5nPihwYXJhbXM6IFQsIGNvbmZpZzogUXVlcnlDb25maWcpOiBUIHtcbiAgICBpZiAodHlwZW9mIHBhcmFtcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlcGxhY2VUZXh0KHBhcmFtcywgY29uZmlnKSBhcyBUO1xuICAgIH1cbiAgICBjb25zdCByZXNvbnN0cnVjZXRlZCA9IHJlY29uc3RydWN0KHBhcmFtcywgKF8sIHZhbHVlKSA9PiB7XG4gICAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBuZXdWYWx1ZSA9IHRoaXMucmVwbGFjZVRleHQodmFsdWUsIGNvbmZpZyk7XG4gICAgICAgIHJldHVybiBbdHJ1ZSwgbmV3VmFsdWVdO1xuICAgICAgfVxuICAgICAgcmV0dXJuIFtmYWxzZV07XG4gICAgfSk7XG4gICAgcmV0dXJuIHJlc29uc3RydWNldGVkIGFzIFQ7XG4gIH1cblxuICByZXNvbHZlPFQgZXh0ZW5kcyBvYmplY3Q+KHBhcmFtczogVCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZyQucGlwZShcbiAgICAgIG1hcChjb25maWcgPT4gdGhpcy5yZXBsYWNlKHBhcmFtcywgY29uZmlnKSksXG4gICAgKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy1xdWVyeS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3F1ZXJ5L2NvbmZpZy94eG1hY2hpbmEtY29tbW9uLXNlcnZpY2VzLXF1ZXJ5LWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;AAIY,MAAC,YAAY,GAAG,IAAI,cAAc,CAAC,sCAAsC;AAC9E,SAAS,kBAAkB,CAAC,UAAU,EAAE;AAC/C,IAAI,OAAO,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;AAC5E;AACO,MAAM,kBAAkB,CAAC;AAChC,IAAI,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC;AAClC,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE;AAC9B,QAAQ,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC;AAC7G;AACA,IAAI,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE;AAC5B,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACxC,YAAY,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC;AACnD;AACA,QAAQ,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK;AACjE,YAAY,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC3C,gBAAgB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC;AAChE,gBAAgB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;AACvC;AACA,YAAY,OAAO,CAAC,KAAK,CAAC;AAC1B,SAAS,CAAC;AACV,QAAQ,OAAO,cAAc;AAC7B;AACA,IAAI,OAAO,CAAC,MAAM,EAAE;AACpB,QAAQ,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7E;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC7K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACpJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC;AAC5H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;;ACnCb;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { map, switchMap } from 'rxjs';
|
|
4
|
+
import { QueryHelper } from '@xxmachina/common/domain';
|
|
5
|
+
import { QueryConfigService } from '@xxmachina/common/services/query/config';
|
|
6
|
+
import { GraphqlService } from '@xxmachina/common/services/graphql';
|
|
7
|
+
import { TransformerService } from '@xxmachina/common/services/transformer';
|
|
8
|
+
|
|
9
|
+
class QueryResolverService {
|
|
10
|
+
config = inject(QueryConfigService);
|
|
11
|
+
resolve(query) {
|
|
12
|
+
return this.config.resolve(query).pipe(map((resolvedQuery) => ({
|
|
13
|
+
graphql: {
|
|
14
|
+
endpoint: resolvedQuery.graphql.endpoint,
|
|
15
|
+
query: resolvedQuery.graphql.query,
|
|
16
|
+
variables: QueryHelper.pruneUnusedVariables(resolvedQuery.graphql.variables, resolvedQuery.graphql.query),
|
|
17
|
+
headers: () => this.config.resolve(query.graphql.headers),
|
|
18
|
+
}
|
|
19
|
+
})));
|
|
20
|
+
}
|
|
21
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryResolverService, providedIn: 'root' });
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryResolverService, decorators: [{
|
|
25
|
+
type: Injectable,
|
|
26
|
+
args: [{ providedIn: 'root' }]
|
|
27
|
+
}] });
|
|
28
|
+
|
|
29
|
+
class QueryService {
|
|
30
|
+
resolver = inject(QueryResolverService);
|
|
31
|
+
graphql = inject(GraphqlService);
|
|
32
|
+
transformer = inject(TransformerService);
|
|
33
|
+
subscribe(query) {
|
|
34
|
+
return this.resolver.resolve(query).pipe(switchMap((executableQuery) => {
|
|
35
|
+
return this.graphql.subscribe(executableQuery.graphql).pipe(switchMap(async (result) => this.transformer.transform({
|
|
36
|
+
transformerTs: query.graphql?.transformerTs,
|
|
37
|
+
transformer: query.graphql?.transformer,
|
|
38
|
+
}, QueryHelper.parseResult(result))));
|
|
39
|
+
}));
|
|
40
|
+
}
|
|
41
|
+
query(query) {
|
|
42
|
+
return this.resolver.resolve(query).pipe(switchMap((executableQuery) => {
|
|
43
|
+
return this.graphql.query(executableQuery.graphql).pipe(switchMap(async (result) => this.transformer.transform({
|
|
44
|
+
transformerTs: query.graphql?.transformerTs,
|
|
45
|
+
transformer: query.graphql?.transformer,
|
|
46
|
+
}, QueryHelper.parseResult(result))));
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
getSchema(query) {
|
|
50
|
+
return this.resolver.resolve(query).pipe(switchMap((executableQuery) => this.graphql.getSchema(executableQuery.graphql)), map((result) => result?.['data']));
|
|
51
|
+
}
|
|
52
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
53
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryService, providedIn: 'root' });
|
|
54
|
+
}
|
|
55
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: QueryService, decorators: [{
|
|
56
|
+
type: Injectable,
|
|
57
|
+
args: [{ providedIn: 'root' }]
|
|
58
|
+
}] });
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Generated bundle index. Do not edit.
|
|
62
|
+
*/
|
|
63
|
+
|
|
64
|
+
export { QueryService };
|
|
65
|
+
//# sourceMappingURL=xxmachina-common-services-query.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-services-query.mjs","sources":["../tmp-esm2022/services/query/resolver/resolver.service.js","../tmp-esm2022/services/query/query.service.js","../tmp-esm2022/services/query/xxmachina-common-services-query.js"],"sourcesContent":["import { inject, Injectable } from \"@angular/core\";\nimport { QueryHelper } from \"@xxmachina/common/domain\";\nimport { map } from \"rxjs\";\nimport { QueryConfigService } from \"@xxmachina/common/services/query/config\";\nimport * as i0 from \"@angular/core\";\nexport class QueryResolverService {\n config = inject(QueryConfigService);\n resolve(query) {\n return this.config.resolve(query).pipe(map((resolvedQuery) => ({\n graphql: {\n endpoint: resolvedQuery.graphql.endpoint,\n query: resolvedQuery.graphql.query,\n variables: QueryHelper.pruneUnusedVariables(resolvedQuery.graphql.variables, resolvedQuery.graphql.query),\n headers: () => this.config.resolve(query.graphql.headers),\n }\n })));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryResolverService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryResolverService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tbW9uL3NyYy9saWIvc2VydmljZXMvcXVlcnkvcmVzb2x2ZXIvcmVzb2x2ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQVMsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFFOUQsT0FBTyxFQUFFLEdBQUcsRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUN2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFPN0UsTUFBTSxPQUFPLG9CQUFvQjtJQUN0QixNQUFNLEdBQUcsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFN0MsT0FBTyxDQUFDLEtBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQ3BDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUN0QixPQUFPLEVBQUU7Z0JBQ1AsUUFBUSxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUTtnQkFDeEMsS0FBSyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsS0FBSztnQkFDbEMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztnQkFDekcsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO2FBQzFEO1NBQ0YsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUNKLENBQUM7dUdBZFUsb0JBQW9COzJHQUFwQixvQkFBb0IsY0FEUCxNQUFNOzsyRkFDbkIsb0JBQW9CO2tCQURoQyxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVyeSwgUXVlcnlIZWxwZXIgfSBmcm9tIFwiQHh4bWFjaGluYS9jb21tb24vZG9tYWluXCI7XG5pbXBvcnQgeyBFeGVjdXRhYmxlR3JhcGhxbCB9IGZyb20gXCJAeHhtYWNoaW5hL2NvbW1vbi9zZXJ2aWNlcy9ncmFwaHFsXCI7XG5pbXBvcnQgeyBtYXAsIE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUXVlcnlDb25maWdTZXJ2aWNlIH0gZnJvbSBcIkB4eG1hY2hpbmEvY29tbW9uL3NlcnZpY2VzL3F1ZXJ5L2NvbmZpZ1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEV4ZWN1dGFibGVRdWVyeSB7XG4gIGdyYXBocWw6IEV4ZWN1dGFibGVHcmFwaHFsO1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFF1ZXJ5UmVzb2x2ZXJTZXJ2aWNlIHtcbiAgcmVhZG9ubHkgY29uZmlnID0gaW5qZWN0KFF1ZXJ5Q29uZmlnU2VydmljZSk7XG5cbiAgcmVzb2x2ZShxdWVyeTogUXVlcnkpOiBPYnNlcnZhYmxlPEV4ZWN1dGFibGVRdWVyeT4ge1xuICAgIHJldHVybiB0aGlzLmNvbmZpZy5yZXNvbHZlKHF1ZXJ5KS5waXBlKFxuICAgICAgbWFwKChyZXNvbHZlZFF1ZXJ5KSA9PiAoe1xuICAgICAgICBncmFwaHFsOiB7XG4gICAgICAgICAgZW5kcG9pbnQ6IHJlc29sdmVkUXVlcnkuZ3JhcGhxbC5lbmRwb2ludCxcbiAgICAgICAgICBxdWVyeTogcmVzb2x2ZWRRdWVyeS5ncmFwaHFsLnF1ZXJ5LFxuICAgICAgICAgIHZhcmlhYmxlczogUXVlcnlIZWxwZXIucHJ1bmVVbnVzZWRWYXJpYWJsZXMocmVzb2x2ZWRRdWVyeS5ncmFwaHFsLnZhcmlhYmxlcywgcmVzb2x2ZWRRdWVyeS5ncmFwaHFsLnF1ZXJ5KSxcbiAgICAgICAgICBoZWFkZXJzOiAoKSA9PiB0aGlzLmNvbmZpZy5yZXNvbHZlKHF1ZXJ5LmdyYXBocWwuaGVhZGVycyksXG4gICAgICAgIH1cbiAgICAgIH0pKSxcbiAgICApO1xuICB9XG59XG4iXX0=","import { inject, Injectable } from \"@angular/core\";\nimport { map, switchMap } from \"rxjs\";\nimport { QueryHelper } from \"@xxmachina/common/domain\";\nimport { QueryResolverService } from \"./resolver\";\nimport { GraphqlService } from \"@xxmachina/common/services/graphql\";\nimport { TransformerService } from \"@xxmachina/common/services/transformer\";\nimport * as i0 from \"@angular/core\";\nexport class QueryService {\n resolver = inject(QueryResolverService);\n graphql = inject(GraphqlService);\n transformer = inject(TransformerService);\n subscribe(query) {\n return this.resolver.resolve(query).pipe(switchMap((executableQuery) => {\n return this.graphql.subscribe(executableQuery.graphql).pipe(switchMap(async (result) => this.transformer.transform({\n transformerTs: query.graphql?.transformerTs,\n transformer: query.graphql?.transformer,\n }, QueryHelper.parseResult(result))));\n }));\n }\n query(query) {\n return this.resolver.resolve(query).pipe(switchMap((executableQuery) => {\n return this.graphql.query(executableQuery.graphql).pipe(switchMap(async (result) => this.transformer.transform({\n transformerTs: query.graphql?.transformerTs,\n transformer: query.graphql?.transformer,\n }, QueryHelper.parseResult(result))));\n }));\n }\n getSchema(query) {\n return this.resolver.resolve(query).pipe(switchMap((executableQuery) => this.graphql.getSchema(executableQuery.graphql)), map((result) => result?.['data']));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: QueryService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tbW9uL3NyYy9saWIvc2VydmljZXMvcXVlcnkvcXVlcnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdkQsT0FBTyxFQUFtQixvQkFBb0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNuRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDcEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBSTVFLE1BQU0sT0FBTyxZQUFZO0lBQ0osUUFBUSxHQUFHLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBQ3hDLE9BQU8sR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDakMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBRTVELFNBQVMsQ0FBeUIsS0FBWTtRQUM1QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDdEMsU0FBUyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDekQsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO2dCQUMxRCxhQUFhLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxhQUFhO2dCQUMzQyxXQUFXLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxXQUFXO2FBQ3hDLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQ3JDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELEtBQUssQ0FBeUIsS0FBWTtRQUN4QyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDdEMsU0FBUyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFO1lBQzdDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDckQsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDO2dCQUMxRCxhQUFhLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxhQUFhO2dCQUMzQyxXQUFXLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxXQUFXO2FBQ3hDLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQ3JDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFZO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUN0QyxTQUFTLENBQUMsQ0FBQyxlQUFnQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsRUFDaEcsR0FBRyxDQUFDLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUN2QyxDQUFDO0lBQ0osQ0FBQzt1R0FwQ1UsWUFBWTsyR0FBWixZQUFZLGNBREMsTUFBTTs7MkZBQ25CLFlBQVk7a0JBRHhCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgc3dpdGNoTWFwIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIkB4eG1hY2hpbmEvY29tbW9uL2RvbWFpblwiO1xuaW1wb3J0IHsgUXVlcnlIZWxwZXIgfSBmcm9tIFwiQHh4bWFjaGluYS9jb21tb24vZG9tYWluXCI7XG5pbXBvcnQgeyBFeGVjdXRhYmxlUXVlcnksIFF1ZXJ5UmVzb2x2ZXJTZXJ2aWNlIH0gZnJvbSBcIi4vcmVzb2x2ZXJcIjtcbmltcG9ydCB7IEdyYXBocWxTZXJ2aWNlIH0gZnJvbSBcIkB4eG1hY2hpbmEvY29tbW9uL3NlcnZpY2VzL2dyYXBocWxcIjtcbmltcG9ydCB7IFRyYW5zZm9ybWVyU2VydmljZSB9IGZyb20gXCJAeHhtYWNoaW5hL2NvbW1vbi9zZXJ2aWNlcy90cmFuc2Zvcm1lclwiO1xuXG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgUXVlcnlTZXJ2aWNlIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlc29sdmVyID0gaW5qZWN0KFF1ZXJ5UmVzb2x2ZXJTZXJ2aWNlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGdyYXBocWwgPSBpbmplY3QoR3JhcGhxbFNlcnZpY2UpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHJhbnNmb3JtZXIgPSBpbmplY3QoVHJhbnNmb3JtZXJTZXJ2aWNlKTtcblxuICBzdWJzY3JpYmU8UiBleHRlbmRzIG9iamVjdCA9IGFueT4ocXVlcnk6IFF1ZXJ5KTogT2JzZXJ2YWJsZTxSPiB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZXIucmVzb2x2ZShxdWVyeSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoZXhlY3V0YWJsZVF1ZXJ5OiBFeGVjdXRhYmxlUXVlcnkpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JhcGhxbC5zdWJzY3JpYmUoZXhlY3V0YWJsZVF1ZXJ5LmdyYXBocWwpLnBpcGUoXG4gICAgICAgICAgc3dpdGNoTWFwKGFzeW5jIChyZXN1bHQ6IGFueSkgPT4gdGhpcy50cmFuc2Zvcm1lci50cmFuc2Zvcm0oe1xuICAgICAgICAgICAgdHJhbnNmb3JtZXJUczogcXVlcnkuZ3JhcGhxbD8udHJhbnNmb3JtZXJUcyxcbiAgICAgICAgICAgIHRyYW5zZm9ybWVyOiBxdWVyeS5ncmFwaHFsPy50cmFuc2Zvcm1lcixcbiAgICAgICAgICB9LCBRdWVyeUhlbHBlci5wYXJzZVJlc3VsdChyZXN1bHQpKSksXG4gICAgICAgICk7XG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcXVlcnk8UiBleHRlbmRzIG9iamVjdCA9IGFueT4ocXVlcnk6IFF1ZXJ5KTogT2JzZXJ2YWJsZTxSPiB7XG4gICAgcmV0dXJuIHRoaXMucmVzb2x2ZXIucmVzb2x2ZShxdWVyeSkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoZXhlY3V0YWJsZVF1ZXJ5OiBFeGVjdXRhYmxlUXVlcnkpID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JhcGhxbC5xdWVyeShleGVjdXRhYmxlUXVlcnkuZ3JhcGhxbCkucGlwZShcbiAgICAgICAgICBzd2l0Y2hNYXAoYXN5bmMgKHJlc3VsdDogYW55KSA9PiB0aGlzLnRyYW5zZm9ybWVyLnRyYW5zZm9ybSh7XG4gICAgICAgICAgICB0cmFuc2Zvcm1lclRzOiBxdWVyeS5ncmFwaHFsPy50cmFuc2Zvcm1lclRzLFxuICAgICAgICAgICAgdHJhbnNmb3JtZXI6IHF1ZXJ5LmdyYXBocWw/LnRyYW5zZm9ybWVyLFxuICAgICAgICAgIH0sIFF1ZXJ5SGVscGVyLnBhcnNlUmVzdWx0KHJlc3VsdCkpKSxcbiAgICAgICAgKTtcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cblxuICBnZXRTY2hlbWEocXVlcnk6IFF1ZXJ5KTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlci5yZXNvbHZlKHF1ZXJ5KS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChleGVjdXRhYmxlUXVlcnk6IEV4ZWN1dGFibGVRdWVyeSkgPT4gdGhpcy5ncmFwaHFsLmdldFNjaGVtYShleGVjdXRhYmxlUXVlcnkuZ3JhcGhxbCkpLFxuICAgICAgbWFwKChyZXN1bHQ6IGFueSkgPT4gcmVzdWx0Py5bJ2RhdGEnXSksXG4gICAgKTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy1xdWVyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tbW9uL3NyYy9saWIvc2VydmljZXMvcXVlcnkveHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy1xdWVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { signal, computed, effect, Injectable } from '@angular/core';
|
|
3
|
+
import { toObservable } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { interval, filter } from 'rxjs';
|
|
5
|
+
|
|
6
|
+
// eslint-disable-next-line @typescript-eslint/triple-slash-reference
|
|
7
|
+
/// <reference path="./speech-recognition.d.ts" />
|
|
8
|
+
function initializeSpeechRecognitionAPI() {
|
|
9
|
+
if (typeof window === 'undefined')
|
|
10
|
+
return null;
|
|
11
|
+
if (!('SpeechRecognition' in window) && !('webkitSpeechRecognition' in window)) {
|
|
12
|
+
console.warn('[SpeechService] SpeechRecognition API is not supported in this browser');
|
|
13
|
+
return null;
|
|
14
|
+
}
|
|
15
|
+
const SpeechRecognitionAPI = window.SpeechRecognition || window.webkitSpeechRecognition;
|
|
16
|
+
const recognition = new SpeechRecognitionAPI();
|
|
17
|
+
recognition.continuous = true;
|
|
18
|
+
recognition.interimResults = true;
|
|
19
|
+
recognition.lang = 'ja-JP';
|
|
20
|
+
return recognition;
|
|
21
|
+
}
|
|
22
|
+
function parseSpeechRecognitionEvent(event) {
|
|
23
|
+
const results = [];
|
|
24
|
+
for (let i = event.resultIndex; i < event.results.length; i++) {
|
|
25
|
+
results.push({
|
|
26
|
+
transcript: event.results[i][0].transcript,
|
|
27
|
+
confidence: event.results[i][0].confidence,
|
|
28
|
+
isFinal: event.results[i].isFinal,
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
interim: results.filter((result) => !result.isFinal).map((result) => result.transcript).join(''),
|
|
33
|
+
finalized: results.filter((result) => result.isFinal).map((result) => result.transcript).join(''),
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
class SpeechService {
|
|
37
|
+
static instanceCounter = 0;
|
|
38
|
+
PAUSE_THRESHOLD = 1000;
|
|
39
|
+
recognition = null;
|
|
40
|
+
lastSpeechTime = signal(Date.now());
|
|
41
|
+
ignoreResults = false;
|
|
42
|
+
transcript = signal({ finalized: '', interim: '' });
|
|
43
|
+
transcript$ = toObservable(this.transcript);
|
|
44
|
+
isListening = signal(false);
|
|
45
|
+
activeComponentId = signal(null);
|
|
46
|
+
isSupported = typeof window !== 'undefined' &&
|
|
47
|
+
(('SpeechRecognition' in window) || ('webkitSpeechRecognition' in window));
|
|
48
|
+
finalized = computed(() => this.transcript().finalized);
|
|
49
|
+
finalized$ = toObservable(this.finalized);
|
|
50
|
+
constructor() {
|
|
51
|
+
// Handle pause detection
|
|
52
|
+
interval(this.PAUSE_THRESHOLD).pipe(filter(() => this.isListening() && (Date.now() - this.lastSpeechTime()) >= this.PAUSE_THRESHOLD)).subscribe(() => {
|
|
53
|
+
this.transcript.update(current => ({
|
|
54
|
+
interim: '',
|
|
55
|
+
finalized: current.finalized + (current.interim || '')
|
|
56
|
+
}));
|
|
57
|
+
});
|
|
58
|
+
// Handle listening state changes
|
|
59
|
+
effect(() => {
|
|
60
|
+
if (this.isListening()) {
|
|
61
|
+
this.startRecognition();
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
this.stopRecognition();
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
generateComponentId() {
|
|
69
|
+
return `speech-${++SpeechService.instanceCounter}`;
|
|
70
|
+
}
|
|
71
|
+
isActiveComponent(componentId) {
|
|
72
|
+
return this.activeComponentId() === componentId;
|
|
73
|
+
}
|
|
74
|
+
start(componentId) {
|
|
75
|
+
if (!this.isSupported) {
|
|
76
|
+
console.warn('[SpeechService] Speech recognition is not supported');
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
this.activeComponentId.set(componentId);
|
|
80
|
+
this.clear();
|
|
81
|
+
this.isListening.set(true);
|
|
82
|
+
}
|
|
83
|
+
stop() {
|
|
84
|
+
this.isListening.set(false);
|
|
85
|
+
this.activeComponentId.set(null);
|
|
86
|
+
}
|
|
87
|
+
toggle(componentId) {
|
|
88
|
+
if (this.isActiveComponent(componentId) && this.isListening()) {
|
|
89
|
+
this.stop();
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
this.start(componentId);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
clear() {
|
|
96
|
+
this.transcript.set({ interim: '', finalized: '' });
|
|
97
|
+
// clear後の古い認識結果を無視するフラグを立てる
|
|
98
|
+
this.ignoreResults = true;
|
|
99
|
+
// 認識をリスタートして古い認識結果を破棄
|
|
100
|
+
// (onendで自動的にrestartされる)
|
|
101
|
+
if (this.recognition && this.isListening()) {
|
|
102
|
+
try {
|
|
103
|
+
this.recognition.stop();
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
console.error('[SpeechService] Error restarting recognition:', error);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
setupRecognition() {
|
|
111
|
+
if (!this.isSupported)
|
|
112
|
+
return;
|
|
113
|
+
this.recognition = initializeSpeechRecognitionAPI();
|
|
114
|
+
if (!this.recognition)
|
|
115
|
+
return;
|
|
116
|
+
this.recognition.onresult = (event) => {
|
|
117
|
+
// clear後の古い認識結果は無視
|
|
118
|
+
if (this.ignoreResults) {
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
const { interim, finalized } = parseSpeechRecognitionEvent(event);
|
|
122
|
+
this.transcript.update((current) => ({
|
|
123
|
+
interim,
|
|
124
|
+
finalized: finalized.length ? `${current.finalized}${finalized}` : current.finalized
|
|
125
|
+
}));
|
|
126
|
+
this.lastSpeechTime.set(Date.now());
|
|
127
|
+
};
|
|
128
|
+
this.recognition.onerror = (event) => {
|
|
129
|
+
console.error('[SpeechService] Recognition error:', event.error);
|
|
130
|
+
if (event.error === 'not-allowed') {
|
|
131
|
+
this.stop();
|
|
132
|
+
}
|
|
133
|
+
};
|
|
134
|
+
this.recognition.onend = () => {
|
|
135
|
+
if (this.isListening()) {
|
|
136
|
+
this.startRecognition();
|
|
137
|
+
}
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
startRecognition() {
|
|
141
|
+
// 新しい認識開始時にignoreResultsをリセット
|
|
142
|
+
this.ignoreResults = false;
|
|
143
|
+
if (!this.recognition) {
|
|
144
|
+
this.setupRecognition();
|
|
145
|
+
}
|
|
146
|
+
try {
|
|
147
|
+
this.recognition?.start();
|
|
148
|
+
}
|
|
149
|
+
catch (error) {
|
|
150
|
+
console.error('[SpeechService] Failed to start recognition:', error);
|
|
151
|
+
this.recognition = null;
|
|
152
|
+
this.setupRecognition();
|
|
153
|
+
this.recognition?.start();
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
stopRecognition() {
|
|
157
|
+
try {
|
|
158
|
+
this.recognition?.stop();
|
|
159
|
+
}
|
|
160
|
+
catch (error) {
|
|
161
|
+
console.error('[SpeechService] Error stopping recognition:', error);
|
|
162
|
+
}
|
|
163
|
+
this.recognition = null;
|
|
164
|
+
}
|
|
165
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SpeechService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
166
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SpeechService, providedIn: 'root' });
|
|
167
|
+
}
|
|
168
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SpeechService, decorators: [{
|
|
169
|
+
type: Injectable,
|
|
170
|
+
args: [{ providedIn: 'root' }]
|
|
171
|
+
}], ctorParameters: () => [] });
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Generated bundle index. Do not edit.
|
|
175
|
+
*/
|
|
176
|
+
|
|
177
|
+
export { SpeechService };
|
|
178
|
+
//# sourceMappingURL=xxmachina-common-services-speech.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-services-speech.mjs","sources":["../tmp-esm2022/services/speech/speech.service.js","../tmp-esm2022/services/speech/xxmachina-common-services-speech.js"],"sourcesContent":["// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// <reference path=\"./speech-recognition.d.ts\" />\nimport { Injectable, signal, effect, computed } from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { filter, interval } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nfunction initializeSpeechRecognitionAPI() {\n if (typeof window === 'undefined')\n return null;\n if (!('SpeechRecognition' in window) && !('webkitSpeechRecognition' in window)) {\n console.warn('[SpeechService] SpeechRecognition API is not supported in this browser');\n return null;\n }\n const SpeechRecognitionAPI = window.SpeechRecognition || window.webkitSpeechRecognition;\n const recognition = new SpeechRecognitionAPI();\n recognition.continuous = true;\n recognition.interimResults = true;\n recognition.lang = 'ja-JP';\n return recognition;\n}\nfunction parseSpeechRecognitionEvent(event) {\n const results = [];\n for (let i = event.resultIndex; i < event.results.length; i++) {\n results.push({\n transcript: event.results[i][0].transcript,\n confidence: event.results[i][0].confidence,\n isFinal: event.results[i].isFinal,\n });\n }\n return {\n interim: results.filter((result) => !result.isFinal).map((result) => result.transcript).join(''),\n finalized: results.filter((result) => result.isFinal).map((result) => result.transcript).join(''),\n };\n}\nexport class SpeechService {\n static instanceCounter = 0;\n PAUSE_THRESHOLD = 1000;\n recognition = null;\n lastSpeechTime = signal(Date.now());\n ignoreResults = false;\n transcript = signal({ finalized: '', interim: '' });\n transcript$ = toObservable(this.transcript);\n isListening = signal(false);\n activeComponentId = signal(null);\n isSupported = typeof window !== 'undefined' &&\n (('SpeechRecognition' in window) || ('webkitSpeechRecognition' in window));\n finalized = computed(() => this.transcript().finalized);\n finalized$ = toObservable(this.finalized);\n constructor() {\n // Handle pause detection\n interval(this.PAUSE_THRESHOLD).pipe(filter(() => this.isListening() && (Date.now() - this.lastSpeechTime()) >= this.PAUSE_THRESHOLD)).subscribe(() => {\n this.transcript.update(current => ({\n interim: '',\n finalized: current.finalized + (current.interim || '')\n }));\n });\n // Handle listening state changes\n effect(() => {\n if (this.isListening()) {\n this.startRecognition();\n }\n else {\n this.stopRecognition();\n }\n });\n }\n generateComponentId() {\n return `speech-${++SpeechService.instanceCounter}`;\n }\n isActiveComponent(componentId) {\n return this.activeComponentId() === componentId;\n }\n start(componentId) {\n if (!this.isSupported) {\n console.warn('[SpeechService] Speech recognition is not supported');\n return;\n }\n this.activeComponentId.set(componentId);\n this.clear();\n this.isListening.set(true);\n }\n stop() {\n this.isListening.set(false);\n this.activeComponentId.set(null);\n }\n toggle(componentId) {\n if (this.isActiveComponent(componentId) && this.isListening()) {\n this.stop();\n }\n else {\n this.start(componentId);\n }\n }\n clear() {\n this.transcript.set({ interim: '', finalized: '' });\n // clear後の古い認識結果を無視するフラグを立てる\n this.ignoreResults = true;\n // 認識をリスタートして古い認識結果を破棄\n // (onendで自動的にrestartされる)\n if (this.recognition && this.isListening()) {\n try {\n this.recognition.stop();\n }\n catch (error) {\n console.error('[SpeechService] Error restarting recognition:', error);\n }\n }\n }\n setupRecognition() {\n if (!this.isSupported)\n return;\n this.recognition = initializeSpeechRecognitionAPI();\n if (!this.recognition)\n return;\n this.recognition.onresult = (event) => {\n // clear後の古い認識結果は無視\n if (this.ignoreResults) {\n return;\n }\n const { interim, finalized } = parseSpeechRecognitionEvent(event);\n this.transcript.update((current) => ({\n interim,\n finalized: finalized.length ? `${current.finalized}${finalized}` : current.finalized\n }));\n this.lastSpeechTime.set(Date.now());\n };\n this.recognition.onerror = (event) => {\n console.error('[SpeechService] Recognition error:', event.error);\n if (event.error === 'not-allowed') {\n this.stop();\n }\n };\n this.recognition.onend = () => {\n if (this.isListening()) {\n this.startRecognition();\n }\n };\n }\n startRecognition() {\n // 新しい認識開始時にignoreResultsをリセット\n this.ignoreResults = false;\n if (!this.recognition) {\n this.setupRecognition();\n }\n try {\n this.recognition?.start();\n }\n catch (error) {\n console.error('[SpeechService] Failed to start recognition:', error);\n this.recognition = null;\n this.setupRecognition();\n this.recognition?.start();\n }\n }\n stopRecognition() {\n try {\n this.recognition?.stop();\n }\n catch (error) {\n console.error('[SpeechService] Error stopping recognition:', error);\n }\n this.recognition = null;\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SpeechService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SpeechService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SpeechService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BlZWNoLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3NwZWVjaC9zcGVlY2guc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxRUFBcUU7QUFDckUsa0RBQWtEO0FBQ2xELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQUV4QyxTQUFTLDhCQUE4QjtJQUNyQyxJQUFJLE9BQU8sTUFBTSxLQUFLLFdBQVc7UUFBRSxPQUFPLElBQUksQ0FBQztJQUMvQyxJQUFJLENBQUMsQ0FBQyxtQkFBbUIsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMseUJBQXlCLElBQUksTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUMvRSxPQUFPLENBQUMsSUFBSSxDQUFDLHdFQUF3RSxDQUFDLENBQUM7UUFDdkYsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsTUFBTSxvQkFBb0IsR0FBSSxNQUFjLENBQUMsaUJBQWlCLElBQUssTUFBYyxDQUFDLHVCQUF1QixDQUFDO0lBQzFHLE1BQU0sV0FBVyxHQUFHLElBQUksb0JBQW9CLEVBQUUsQ0FBQztJQUMvQyxXQUFXLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztJQUM5QixXQUFXLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztJQUNsQyxXQUFXLENBQUMsSUFBSSxHQUFHLE9BQU8sQ0FBQztJQUMzQixPQUFPLFdBQVcsQ0FBQztBQUNyQixDQUFDO0FBRUQsU0FBUywyQkFBMkIsQ0FBQyxLQUE2QjtJQUNoRSxNQUFNLE9BQU8s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LFdBQVcsR0FBRyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQztRQUM1QixDQUFDO0lBQ0gsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxDQUFDO1lBQ0gsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUMzQixDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sQ0FBQyxLQUFLLENBQUMsNkNBQTZDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDdEUsQ0FBQztRQUNELElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO0lBQzFCLENBQUM7dUdBL0lVLGFBQWE7MkdBQWIsYUFBYSxjQURBLE1BQU07OzJGQUNuQixhQUFhO2tCQUR6QixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvdHJpcGxlLXNsYXNoLXJlZmVyZW5jZVxuLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vc3BlZWNoLXJlY29nbml0aW9uLmQudHNcIiAvPlxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsLCBlZmZlY3QsIGNvbXB1dGVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBmaWx0ZXIsIGludGVydmFsIH0gZnJvbSAncnhqcyc7XG5cbmZ1bmN0aW9uIGluaXRpYWxpemVTcGVlY2hSZWNvZ25pdGlvbkFQSSgpOiBTcGVlY2hSZWNvZ25pdGlvbiB8IG51bGwge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHJldHVybiBudWxsO1xuICBpZiAoISgnU3BlZWNoUmVjb2duaXRpb24nIGluIHdpbmRvdykgJiYgISgnd2Via2l0U3BlZWNoUmVjb2duaXRpb24nIGluIHdpbmRvdykpIHtcbiAgICBjb25zb2xlLndhcm4oJ1tTcGVlY2hTZXJ2aWNlXSBTcGVlY2hSZWNvZ25pdGlvbiBBUEkgaXMgbm90IHN1cHBvcnRlZCBpbiB0aGlzIGJyb3dzZXInKTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IFNwZWVjaFJlY29nbml0aW9uQVBJID0gKHdpbmRvdyBhcyBhbnkpLlNwZWVjaFJlY29nbml0aW9uIHx8ICh3aW5kb3cgYXMgYW55KS53ZWJraXRTcGVlY2hSZWNvZ25pdGlvbjtcbiAgY29uc3QgcmVjb2duaXRpb24gPSBuZXcgU3BlZWNoUmVjb2duaXRpb25BUEkoKTtcbiAgcmVjb2duaXRpb24uY29udGludW91cyA9IHRydWU7XG4gIHJlY29nbml0aW9uLmludGVyaW1SZXN1bHRzID0gdHJ1ZTtcbiAgcmVjb2duaXRpb24ubGFuZyA9ICdqYS1KUCc7XG4gIHJldHVybiByZWNvZ25pdGlvbjtcbn1cblxuZnVuY3Rpb24gcGFyc2VTcGVlY2hSZWNvZ25pdGlvbkV2ZW50KGV2ZW50OiBTcGVlY2hSZWNvZ25pdGlvbkV2ZW50KTogeyBpbnRlcmltOiBzdHJpbmc7IGZpbmFsaXplZDogc3RyaW5nIH0ge1xuICBjb25zdCByZXN1bHRzOiBTcGVlY2hSZWNvZ25pdGlvbkFsdGVybmF0aXZlW10gPSBbXTtcbiAgZm9yIChsZXQgaSA9IGV2ZW50LnJlc3VsdEluZGV4OyBpIDwgZXZlbnQucmVzdWx0cy5sZW5ndGg7IGkrKykge1xuICAgIHJlc3VsdHMucHVzaCh7XG4gICAgICB0cmFuc2NyaXB0OiBldmVudC5yZXN1bHRzW2ldWzBdLnRyYW5zY3JpcHQsXG4gICAgICBjb25maWRlbmNlOiBldmVudC5yZXN1bHRzW2ldWzBdLmNvbmZpZGVuY2UsXG4gICAgICBpc0ZpbmFsOiBldmVudC5yZXN1bHRzW2ldLmlzRmluYWwsXG4gICAgfSBhcyBhbnkpO1xuICB9XG4gIHJldHVybiB7XG4gICAgaW50ZXJpbTogcmVzdWx0cy5maWx0ZXIoKHJlc3VsdDogYW55KSA9PiAhcmVzdWx0LmlzRmluYWwpLm1hcCgocmVzdWx0KSA9PiByZXN1bHQudHJhbnNjcmlwdCkuam9pbignJyksXG4gICAgZmluYWxpemVkOiByZXN1bHRzLmZpbHRlcigocmVzdWx0OiBhbnkpID0+IHJlc3VsdC5pc0ZpbmFsKS5tYXAoKHJlc3VsdCkgPT4gcmVzdWx0LnRyYW5zY3JpcHQpLmpvaW4oJycpLFxuICB9O1xufVxuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNwZWVjaFNlcnZpY2Uge1xuICBwcml2YXRlIHN0YXRpYyBpbnN0YW5jZUNvdW50ZXIgPSAwO1xuICBwcml2YXRlIHJlYWRvbmx5IFBBVVNFX1RIUkVTSE9MRCA9IDEwMDA7XG4gIHByaXZhdGUgcmVjb2duaXRpb246IFNwZWVjaFJlY29nbml0aW9uIHwgbnVsbCA9IG51bGw7XG4gIHByaXZhdGUgbGFzdFNwZWVjaFRpbWUgPSBzaWduYWwoRGF0ZS5ub3coKSk7XG4gIHByaXZhdGUgaWdub3JlUmVzdWx0cyA9IGZhbHNlO1xuXG4gIHJlYWRvbmx5IHRyYW5zY3JpcHQgPSBzaWduYWw8eyBmaW5hbGl6ZWQ6IHN0cmluZzsgaW50ZXJpbTogc3RyaW5nIH0+KHsgZmluYWxpemVkOiAnJywgaW50ZXJpbTogJycgfSk7XG4gIHJlYWRvbmx5IHRyYW5zY3JpcHQkID0gdG9PYnNlcnZhYmxlKHRoaXMudHJhbnNjcmlwdCk7XG4gIHJlYWRvbmx5IGlzTGlzdGVuaW5nID0gc2lnbmFsKGZhbHNlKTtcbiAgcmVhZG9ubHkgYWN0aXZlQ29tcG9uZW50SWQgPSBzaWduYWw8c3RyaW5nIHwgbnVsbD4obnVsbCk7XG4gIHJlYWRvbmx5IGlzU3VwcG9ydGVkID0gdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiZcbiAgICAoKCdTcGVlY2hSZWNvZ25pdGlvbicgaW4gd2luZG93KSB8fCAoJ3dlYmtpdFNwZWVjaFJlY29nbml0aW9uJyBpbiB3aW5kb3cpKTtcblxuICByZWFkb25seSBmaW5hbGl6ZWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnRyYW5zY3JpcHQoKS5maW5hbGl6ZWQpO1xuICByZWFkb25seSBmaW5hbGl6ZWQkID0gdG9PYnNlcnZhYmxlKHRoaXMuZmluYWxpemVkKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBIYW5kbGUgcGF1c2UgZGV0ZWN0aW9uXG4gICAgaW50ZXJ2YWwodGhpcy5QQVVTRV9USFJFU0hPTEQpLnBpcGUoXG4gICAgICBmaWx0ZXIoKCkgPT4gdGhpcy5pc0xpc3RlbmluZygpICYmIChEYXRlLm5vdygpIC0gdGhpcy5sYXN0U3BlZWNoVGltZSgpKSA+PSB0aGlzLlBBVVNFX1RIUkVTSE9MRCksXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy50cmFuc2NyaXB0LnVwZGF0ZShjdXJyZW50ID0+ICh7XG4gICAgICAgIGludGVyaW06ICcnLFxuICAgICAgICBmaW5hbGl6ZWQ6IGN1cnJlbnQuZmluYWxpemVkICsgKGN1cnJlbnQuaW50ZXJpbSB8fCAnJylcbiAgICAgIH0pKTtcbiAgICB9KTtcblxuICAgIC8vIEhhbmRsZSBsaXN0ZW5pbmcgc3RhdGUgY2hhbmdlc1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc0xpc3RlbmluZygpKSB7XG4gICAgICAgIHRoaXMuc3RhcnRSZWNvZ25pdGlvbigpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5zdG9wUmVjb2duaXRpb24oKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIGdlbmVyYXRlQ29tcG9uZW50SWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYHNwZWVjaC0keysrU3BlZWNoU2VydmljZS5pbnN0YW5jZUNvdW50ZXJ9YDtcbiAgfVxuXG4gIGlzQWN0aXZlQ29tcG9uZW50KGNvbXBvbmVudElkOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVDb21wb25lbnRJZCgpID09PSBjb21wb25lbnRJZDtcbiAgfVxuXG4gIHN0YXJ0KGNvbXBvbmVudElkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNTdXBwb3J0ZWQpIHtcbiAgICAgIGNvbnNvbGUud2FybignW1NwZWVjaFNlcnZpY2VdIFNwZWVjaCByZWNvZ25pdGlvbiBpcyBub3Qgc3VwcG9ydGVkJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuYWN0aXZlQ29tcG9uZW50SWQuc2V0KGNvbXBvbmVudElkKTtcbiAgICB0aGlzLmNsZWFyKCk7XG4gICAgdGhpcy5pc0xpc3RlbmluZy5zZXQodHJ1ZSk7XG4gIH1cblxuICBzdG9wKCk6IHZvaWQge1xuICAgIHRoaXMuaXNMaXN0ZW5pbmcuc2V0KGZhbHNlKTtcbiAgICB0aGlzLmFjdGl2ZUNvbXBvbmVudElkLnNldChudWxsKTtcbiAgfVxuXG4gIHRvZ2dsZShjb21wb25lbnRJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuaXNBY3RpdmVDb21wb25lbnQoY29tcG9uZW50SWQpICYmIHRoaXMuaXNMaXN0ZW5pbmcoKSkge1xuICAgICAgdGhpcy5zdG9wKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RhcnQoY29tcG9uZW50SWQpO1xuICAgIH1cbiAgfVxuXG4gIGNsZWFyKCk6IHZvaWQge1xuICAgIHRoaXMudHJhbnNjcmlwdC5zZXQoeyBpbnRlcmltOiAnJywgZmluYWxpemVkOiAnJyB9KTtcbiAgICAvLyBjbGVhcuW+jOOBruWPpOOBhOiqjeitmOe1kOaenOOCkueEoeimluOBmeOCi+ODleODqeOCsOOCkueri+OBpuOCi1xuICAgIHRoaXMuaWdub3JlUmVzdWx0cyA9IHRydWU7XG4gICAgLy8g6KqN6K2Y44KS44Oq44K544K/44O844OI44GX44Gm5Y+k44GE6KqN6K2Y57WQ5p6c44KS56C05qOEXG4gICAgLy8g77yIb25lbmTjgafoh6rli5XnmoTjgatyZXN0YXJ044GV44KM44KL77yJXG4gICAgaWYgKHRoaXMucmVjb2duaXRpb24gJiYgdGhpcy5pc0xpc3RlbmluZygpKSB7XG4gICAgICB0cnkge1xuICAgICAgICB0aGlzLnJlY29nbml0aW9uLnN0b3AoKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoJ1tTcGVlY2hTZXJ2aWNlXSBFcnJvciByZXN0YXJ0aW5nIHJlY29nbml0aW9uOicsIGVycm9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwUmVjb2duaXRpb24oKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzU3VwcG9ydGVkKSByZXR1cm47XG5cbiAgICB0aGlzLnJlY29nbml0aW9uID0gaW5pdGlhbGl6ZVNwZWVjaFJlY29nbml0aW9uQVBJKCk7XG4gICAgaWYgKCF0aGlzLnJlY29nbml0aW9uKSByZXR1cm47XG5cbiAgICB0aGlzLnJlY29nbml0aW9uLm9ucmVzdWx0ID0gKGV2ZW50OiBTcGVlY2hSZWNvZ25pdGlvbkV2ZW50KSA9PiB7XG4gICAgICAvLyBjbGVhcuW+jOOBruWPpOOBhOiqjeitmOe1kOaenOOBr+eEoeimllxuICAgICAgaWYgKHRoaXMuaWdub3JlUmVzdWx0cykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHsgaW50ZXJpbSwgZmluYWxpemVkIH0gPSBwYXJzZVNwZWVjaFJlY29nbml0aW9uRXZlbnQoZXZlbnQpO1xuICAgICAgdGhpcy50cmFuc2NyaXB0LnVwZGF0ZSgoY3VycmVudCkgPT4gKHtcbiAgICAgICAgaW50ZXJpbSxcbiAgICAgICAgZmluYWxpemVkOiBmaW5hbGl6ZWQubGVuZ3RoID8gYCR7Y3VycmVudC5maW5hbGl6ZWR9JHtmaW5hbGl6ZWR9YCA6IGN1cnJlbnQuZmluYWxpemVkXG4gICAgICB9KSk7XG4gICAgICB0aGlzLmxhc3RTcGVlY2hUaW1lLnNldChEYXRlLm5vdygpKTtcbiAgICB9O1xuXG4gICAgdGhpcy5yZWNvZ25pdGlvbi5vbmVycm9yID0gKGV2ZW50OiBTcGVlY2hSZWNvZ25pdGlvbkVycm9yRXZlbnQpID0+IHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1tTcGVlY2hTZXJ2aWNlXSBSZWNvZ25pdGlvbiBlcnJvcjonLCBldmVudC5lcnJvcik7XG4gICAgICBpZiAoZXZlbnQuZXJyb3IgPT09ICdub3QtYWxsb3dlZCcpIHtcbiAgICAgICAgdGhpcy5zdG9wKCk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHRoaXMucmVjb2duaXRpb24ub25lbmQgPSAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5pc0xpc3RlbmluZygpKSB7XG4gICAgICAgIHRoaXMuc3RhcnRSZWNvZ25pdGlvbigpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0UmVjb2duaXRpb24oKTogdm9pZCB7XG4gICAgLy8g5paw44GX44GE6KqN6K2Y6ZaL5aeL5pmC44GraWdub3JlUmVzdWx0c+OCkuODquOCu+ODg+ODiFxuICAgIHRoaXMuaWdub3JlUmVzdWx0cyA9IGZhbHNlO1xuXG4gICAgaWYgKCF0aGlzLnJlY29nbml0aW9uKSB7XG4gICAgICB0aGlzLnNldHVwUmVjb2duaXRpb24oKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgdGhpcy5yZWNvZ25pdGlvbj8uc3RhcnQoKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignW1NwZWVjaFNlcnZpY2VdIEZhaWxlZCB0byBzdGFydCByZWNvZ25pdGlvbjonLCBlcnJvcik7XG4gICAgICB0aGlzLnJlY29nbml0aW9uID0gbnVsbDtcbiAgICAgIHRoaXMuc2V0dXBSZWNvZ25pdGlvbigpO1xuICAgICAgdGhpcy5yZWNvZ25pdGlvbj8uc3RhcnQoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHN0b3BSZWNvZ25pdGlvbigpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdGhpcy5yZWNvZ25pdGlvbj8uc3RvcCgpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdbU3BlZWNoU2VydmljZV0gRXJyb3Igc3RvcHBpbmcgcmVjb2duaXRpb246JywgZXJyb3IpO1xuICAgIH1cbiAgICB0aGlzLnJlY29nbml0aW9uID0gbnVsbDtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy1zcGVlY2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9AeHhtYWNoaW5hL2NvbW1vbi9zcmMvbGliL3NlcnZpY2VzL3NwZWVjaC94eG1hY2hpbmEtY29tbW9uLXNlcnZpY2VzLXNwZWVjaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { inject, Injectable } from '@angular/core';
|
|
3
|
+
import { QuickJsService } from '@xxmachina/common/infra/external/quick-js';
|
|
4
|
+
|
|
5
|
+
class TransformerService {
|
|
6
|
+
quickJs = inject(QuickJsService);
|
|
7
|
+
transform({ transformerTs, transformer = (result) => result, }, input) {
|
|
8
|
+
if (transformerTs) {
|
|
9
|
+
const typescript = transformerTs;
|
|
10
|
+
return this.quickJs.apply(typescript, 'transformer', [input]);
|
|
11
|
+
}
|
|
12
|
+
return transformer(input);
|
|
13
|
+
}
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: TransformerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: TransformerService, providedIn: 'root' });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: TransformerService, decorators: [{
|
|
18
|
+
type: Injectable,
|
|
19
|
+
args: [{ providedIn: 'root' }]
|
|
20
|
+
}] });
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Generated bundle index. Do not edit.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
export { TransformerService };
|
|
27
|
+
//# sourceMappingURL=xxmachina-common-services-transformer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-services-transformer.mjs","sources":["../tmp-esm2022/services/transformer/transformer.service.js","../tmp-esm2022/services/transformer/xxmachina-common-services-transformer.js"],"sourcesContent":["import { inject, Injectable } from \"@angular/core\";\nimport { QuickJsService } from \"@xxmachina/common/infra/external/quick-js\";\nimport * as i0 from \"@angular/core\";\nexport class TransformerService {\n quickJs = inject(QuickJsService);\n transform({ transformerTs, transformer = (result) => result, }, input) {\n if (transformerTs) {\n const typescript = transformerTs;\n return this.quickJs.apply(typescript, 'transformer', [input]);\n }\n return transformer(input);\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: TransformerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });\n static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: TransformerService, providedIn: 'root' });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: TransformerService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tbW9uL3NyYy9saWIvc2VydmljZXMvdHJhbnNmb3JtZXIvdHJhbnNmb3JtZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkNBQTJDLENBQUM7O0FBRzNFLE1BQU0sT0FBTyxrQkFBa0I7SUFDcEIsT0FBTyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUUxQyxTQUFTLENBQUMsRUFDUixhQUFhLEVBQ2IsV0FBVyxHQUFHLENBQUMsTUFBVyxFQUFFLEVBQUUsQ0FBQyxNQUFNLEdBSXRDLEVBQUUsS0FBVTtRQUNYLElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDO1lBQ2pDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDaEUsQ0FBQztRQUNELE9BQU8sV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVCLENBQUM7dUdBZlUsa0JBQWtCOzJHQUFsQixrQkFBa0IsY0FETixNQUFNOzsyRkFDbEIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWlja0pzU2VydmljZSB9IGZyb20gXCJAeHhtYWNoaW5hL2NvbW1vbi9pbmZyYS9leHRlcm5hbC9xdWljay1qc1wiO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBUcmFuc2Zvcm1lclNlcnZpY2Uge1xuICByZWFkb25seSBxdWlja0pzID0gaW5qZWN0KFF1aWNrSnNTZXJ2aWNlKTtcblxuICB0cmFuc2Zvcm0oe1xuICAgIHRyYW5zZm9ybWVyVHMsXG4gICAgdHJhbnNmb3JtZXIgPSAocmVzdWx0OiBhbnkpID0+IHJlc3VsdCxcbiAgfToge1xuICAgIHRyYW5zZm9ybWVyVHM/OiBzdHJpbmcsXG4gICAgdHJhbnNmb3JtZXI/OiAocmVzdWx0OiBhbnkpID0+IGFueSxcbiAgfSwgaW5wdXQ6IGFueSkge1xuICAgIGlmICh0cmFuc2Zvcm1lclRzKSB7XG4gICAgICBjb25zdCB0eXBlc2NyaXB0ID0gdHJhbnNmb3JtZXJUcztcbiAgICAgIHJldHVybiB0aGlzLnF1aWNrSnMuYXBwbHkodHlwZXNjcmlwdCwgJ3RyYW5zZm9ybWVyJywgW2lucHV0XSk7XG4gICAgfVxuICAgIHJldHVybiB0cmFuc2Zvcm1lcihpbnB1dCk7XG4gIH1cbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy10cmFuc2Zvcm1lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0B4eG1hY2hpbmEvY29tbW9uL3NyYy9saWIvc2VydmljZXMvdHJhbnNmb3JtZXIveHhtYWNoaW5hLWNvbW1vbi1zZXJ2aWNlcy10cmFuc2Zvcm1lci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;AAGO,MAAM,kBAAkB,CAAC;AAChC,IAAI,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC;AACpC,IAAI,SAAS,CAAC,EAAE,aAAa,EAAE,WAAW,GAAG,CAAC,MAAM,KAAK,MAAM,GAAG,EAAE,KAAK,EAAE;AAC3E,QAAQ,IAAI,aAAa,EAAE;AAC3B,YAAY,MAAM,UAAU,GAAG,aAAa;AAC5C,YAAY,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,CAAC,KAAK,CAAC,CAAC;AACzE;AACA,QAAQ,OAAO,WAAW,CAAC,KAAK,CAAC;AACjC;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;AAC7K,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC,qBAAqB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;AACpJ;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,kBAAkB,EAAE,UAAU,EAAE,CAAC;AAC5H,YAAY,IAAI,EAAE,UAAU;AAC5B,YAAY,IAAI,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE;AACzC,SAAS,CAAC,EAAE,CAAC;;AClBb;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { map } from 'rxjs';
|
|
3
|
+
import { QueryHelper } from '@xxmachina/common/domain/models';
|
|
4
|
+
import { QueryFirestoreQuery, ResourceFirestoreQuery } from '@xxmachina/common/infra/query/firestore';
|
|
5
|
+
import { QueryFirestoreRepository, ResourceFirestoreRepository } from '@xxmachina/common/infra/repository/firestore';
|
|
6
|
+
|
|
7
|
+
function getFirestoreQueryStore() {
|
|
8
|
+
const query = inject(QueryFirestoreQuery);
|
|
9
|
+
const repo = inject(QueryFirestoreRepository);
|
|
10
|
+
return {
|
|
11
|
+
list: () => query.listChanges({ projectId: 'default' }).pipe(map(items => items.map((item) => QueryHelper.convertToV2(item)))),
|
|
12
|
+
create: (item) => repo.create(item),
|
|
13
|
+
update: (item) => repo.update(item).then(() => { }),
|
|
14
|
+
save: (item) => repo.save(item).then(() => item),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
function getFirestoreResourceStore() {
|
|
18
|
+
const query = inject(ResourceFirestoreQuery);
|
|
19
|
+
const repo = inject(ResourceFirestoreRepository);
|
|
20
|
+
return {
|
|
21
|
+
list: () => query.listChanges({ projectId: 'default' }),
|
|
22
|
+
create: (item) => repo.create(item),
|
|
23
|
+
update: (item) => repo.update(item).then(() => { }),
|
|
24
|
+
save: (item) => repo.save(item).then(() => item),
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Generated bundle index. Do not edit.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
export { getFirestoreQueryStore, getFirestoreResourceStore };
|
|
33
|
+
//# sourceMappingURL=xxmachina-common-stores-firestore.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-stores-firestore.mjs","sources":["../tmp-esm2022/stores/firestore/firestore.store.js","../tmp-esm2022/stores/firestore/xxmachina-common-stores-firestore.js"],"sourcesContent":["import { inject } from '@angular/core';\nimport { map } from 'rxjs';\nimport { QueryHelper } from '@xxmachina/common/domain/models';\nimport { QueryFirestoreQuery, ResourceFirestoreQuery } from '@xxmachina/common/infra/query/firestore';\nimport { QueryFirestoreRepository, ResourceFirestoreRepository } from '@xxmachina/common/infra/repository/firestore';\nexport function getFirestoreQueryStore() {\n const query = inject(QueryFirestoreQuery);\n const repo = inject(QueryFirestoreRepository);\n return {\n list: () => query.listChanges({ projectId: 'default' }).pipe(map(items => items.map((item) => QueryHelper.convertToV2(item)))),\n create: (item) => repo.create(item),\n update: (item) => repo.update(item).then(() => { }),\n save: (item) => repo.save(item).then(() => item),\n };\n}\nexport function getFirestoreResourceStore() {\n const query = inject(ResourceFirestoreQuery);\n const repo = inject(ResourceFirestoreRepository);\n return {\n list: () => query.listChanges({ projectId: 'default' }),\n create: (item) => repo.create(item),\n update: (item) => repo.update(item).then(() => { }),\n save: (item) => repo.save(item).then(() => item),\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlyZXN0b3JlLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21tb24vc3JjL2xpYi9zdG9yZXMvZmlyZXN0b3JlL2ZpcmVzdG9yZS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0IsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3RHLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBR3JILE1BQU0sVUFBVSxzQkFBc0I7SUFDcEMsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFDMUMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDOUMsT0FBTztRQUNMLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBQyxDQUFDLENBQUMsSUFBSSxDQUN4RCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDdEU7UUFDRCxNQUFNLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0tBQ3RELENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHlCQUF5QjtJQUN2QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUM3QyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsMkJBQTJCLENBQUMsQ0FBQztJQUNqRCxPQUFPO1FBQ0wsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFBQyxTQUFTLEVBQUUsU0FBUyxFQUFDLENBQUM7UUFDckQsTUFBTSxFQUFFLENBQUMsSUFBUyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUN4QyxNQUFNLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN2RCxJQUFJLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQztLQUN0RCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBRdWVyeUhlbHBlciB9IGZyb20gJ0B4eG1hY2hpbmEvY29tbW9uL2RvbWFpbi9tb2RlbHMnO1xuaW1wb3J0IHsgUXVlcnlGaXJlc3RvcmVRdWVyeSwgUmVzb3VyY2VGaXJlc3RvcmVRdWVyeSB9IGZyb20gJ0B4eG1hY2hpbmEvY29tbW9uL2luZnJhL3F1ZXJ5L2ZpcmVzdG9yZSc7XG5pbXBvcnQgeyBRdWVyeUZpcmVzdG9yZVJlcG9zaXRvcnksIFJlc291cmNlRmlyZXN0b3JlUmVwb3NpdG9yeSB9IGZyb20gJ0B4eG1hY2hpbmEvY29tbW9uL2luZnJhL3JlcG9zaXRvcnkvZmlyZXN0b3JlJztcbmltcG9ydCB7ICB9IGZyb20gJ0B4eG1hY2hpbmEvY29tbW9uL2luZnJhL3JlcG9zaXRvcnkvZmlyZXN0b3JlJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcmVzdG9yZVF1ZXJ5U3RvcmUoKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gaW5qZWN0KFF1ZXJ5RmlyZXN0b3JlUXVlcnkpO1xuICBjb25zdCByZXBvID0gaW5qZWN0KFF1ZXJ5RmlyZXN0b3JlUmVwb3NpdG9yeSk7XG4gIHJldHVybiB7XG4gICAgbGlzdDogKCkgPT4gcXVlcnkubGlzdENoYW5nZXMoe3Byb2plY3RJZDogJ2RlZmF1bHQnfSkucGlwZShcbiAgICAgIG1hcChpdGVtcyA9PiBpdGVtcy5tYXAoKGl0ZW06IGFueSkgPT4gUXVlcnlIZWxwZXIuY29udmVydFRvVjIoaXRlbSkpKSxcbiAgICApLFxuICAgIGNyZWF0ZTogKGl0ZW06IGFueSkgPT4gcmVwby5jcmVhdGUoaXRlbSksXG4gICAgdXBkYXRlOiAoaXRlbTogYW55KSA9PiByZXBvLnVwZGF0ZShpdGVtKS50aGVuKCgpID0+IHt9KSxcbiAgICBzYXZlOiAoaXRlbTogYW55KSA9PiByZXBvLnNhdmUoaXRlbSkudGhlbigoKSA9PiBpdGVtKSxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEZpcmVzdG9yZVJlc291cmNlU3RvcmUoKSB7XG4gIGNvbnN0IHF1ZXJ5ID0gaW5qZWN0KFJlc291cmNlRmlyZXN0b3JlUXVlcnkpO1xuICBjb25zdCByZXBvID0gaW5qZWN0KFJlc291cmNlRmlyZXN0b3JlUmVwb3NpdG9yeSk7XG4gIHJldHVybiB7XG4gICAgbGlzdDogKCkgPT4gcXVlcnkubGlzdENoYW5nZXMoe3Byb2plY3RJZDogJ2RlZmF1bHQnfSksXG4gICAgY3JlYXRlOiAoaXRlbTogYW55KSA9PiByZXBvLmNyZWF0ZShpdGVtKSxcbiAgICB1cGRhdGU6IChpdGVtOiBhbnkpID0+IHJlcG8udXBkYXRlKGl0ZW0pLnRoZW4oKCkgPT4ge30pLFxuICAgIHNhdmU6IChpdGVtOiBhbnkpID0+IHJlcG8uc2F2ZShpdGVtKS50aGVuKCgpID0+IGl0ZW0pLFxuICB9O1xufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zdG9yZXMtZmlyZXN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21tb24vc3JjL2xpYi9zdG9yZXMvZmlyZXN0b3JlL3h4bWFjaGluYS1jb21tb24tc3RvcmVzLWZpcmVzdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;;AAKO,SAAS,sBAAsB,GAAG;AACzC,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,mBAAmB,CAAC;AAC7C,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC;AACjD,IAAI,OAAO;AACX,QAAQ,IAAI,EAAE,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACtI,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3C,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;AAC3D,QAAQ,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;AACxD,KAAK;AACL;AACO,SAAS,yBAAyB,GAAG;AAC5C,IAAI,MAAM,KAAK,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAChD,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,2BAA2B,CAAC;AACpD,IAAI,OAAO;AACX,QAAQ,IAAI,EAAE,MAAM,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AAC/D,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3C,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;AAC3D,QAAQ,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;AACxD,KAAK;AACL;;ACxBA;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { inject } from '@angular/core';
|
|
2
|
+
import { AuthService } from '@xxmachina/common/auth';
|
|
3
|
+
import { map, distinctUntilChanged, switchMap, of } from 'rxjs';
|
|
4
|
+
import { QueryHasuraRepository, ResourceHasuraRepository } from '@xxmachina/common/infra/repository/hasura';
|
|
5
|
+
|
|
6
|
+
function getHasuraQueryStore() {
|
|
7
|
+
const repo = inject(QueryHasuraRepository);
|
|
8
|
+
const auth = inject(AuthService);
|
|
9
|
+
return {
|
|
10
|
+
list: () => auth.auth$.pipe(map(auth => !!auth), distinctUntilChanged(), switchMap((isAuthenticated) => isAuthenticated ? repo.listChanges() : of([]))),
|
|
11
|
+
create: (item) => repo.create(item),
|
|
12
|
+
update: (item) => repo.update(item).then(() => { }),
|
|
13
|
+
save: (item) => repo.save(item).then(() => item),
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
function getHasuraResourceStore() {
|
|
17
|
+
const repo = inject(ResourceHasuraRepository);
|
|
18
|
+
const auth = inject(AuthService);
|
|
19
|
+
return {
|
|
20
|
+
list: () => auth.auth$.pipe(map(auth => !!auth), distinctUntilChanged(), switchMap((isAuthenticated) => isAuthenticated ? repo.listChanges() : of([]))),
|
|
21
|
+
create: (item) => repo.create(item),
|
|
22
|
+
update: (item) => repo.update(item).then(() => { }),
|
|
23
|
+
save: (item) => repo.save(item).then(() => item),
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* Generated bundle index. Do not edit.
|
|
29
|
+
*/
|
|
30
|
+
|
|
31
|
+
export { getHasuraQueryStore, getHasuraResourceStore };
|
|
32
|
+
//# sourceMappingURL=xxmachina-common-stores-hasura.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xxmachina-common-stores-hasura.mjs","sources":["../tmp-esm2022/stores/hasura/hasura.store.js","../tmp-esm2022/stores/hasura/xxmachina-common-stores-hasura.js"],"sourcesContent":["import { inject } from '@angular/core';\nimport { AuthService } from '@xxmachina/common/auth';\nimport { distinctUntilChanged, map, of, switchMap } from 'rxjs';\nimport { QueryHasuraRepository, ResourceHasuraRepository } from '@xxmachina/common/infra/repository/hasura';\nexport function getHasuraQueryStore() {\n const repo = inject(QueryHasuraRepository);\n const auth = inject(AuthService);\n return {\n list: () => auth.auth$.pipe(map(auth => !!auth), distinctUntilChanged(), switchMap((isAuthenticated) => isAuthenticated ? repo.listChanges() : of([]))),\n create: (item) => repo.create(item),\n update: (item) => repo.update(item).then(() => { }),\n save: (item) => repo.save(item).then(() => item),\n };\n}\nexport function getHasuraResourceStore() {\n const repo = inject(ResourceHasuraRepository);\n const auth = inject(AuthService);\n return {\n list: () => auth.auth$.pipe(map(auth => !!auth), distinctUntilChanged(), switchMap((isAuthenticated) => isAuthenticated ? repo.listChanges() : of([]))),\n create: (item) => repo.create(item),\n update: (item) => repo.update(item).then(() => { }),\n save: (item) => repo.save(item).then(() => item),\n };\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzdXJhLnN0b3JlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21tb24vc3JjL2xpYi9zdG9yZXMvaGFzdXJhL2hhc3VyYS5zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFNUcsTUFBTSxVQUFVLG1CQUFtQjtJQUNqQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUMzQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDakMsT0FBTztRQUNMLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDekIsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUNuQixvQkFBb0IsRUFBRSxFQUN0QixTQUFTLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDOUU7UUFDRCxNQUFNLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0tBQ3RELENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUM5QyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFakMsT0FBTztRQUNMLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDekIsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUNuQixvQkFBb0IsRUFBRSxFQUN0QixTQUFTLENBQUMsQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FDOUU7UUFDRCxNQUFNLEVBQUUsQ0FBQyxJQUFTLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3hDLE1BQU0sRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO1FBQ3ZELElBQUksRUFBRSxDQUFDLElBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0tBQ3RELENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoU2VydmljZSB9IGZyb20gJ0B4eG1hY2hpbmEvY29tbW9uL2F1dGgnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgUXVlcnlIYXN1cmFSZXBvc2l0b3J5LCBSZXNvdXJjZUhhc3VyYVJlcG9zaXRvcnkgfSBmcm9tICdAeHhtYWNoaW5hL2NvbW1vbi9pbmZyYS9yZXBvc2l0b3J5L2hhc3VyYSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIYXN1cmFRdWVyeVN0b3JlKCkge1xuICBjb25zdCByZXBvID0gaW5qZWN0KFF1ZXJ5SGFzdXJhUmVwb3NpdG9yeSk7XG4gIGNvbnN0IGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuICByZXR1cm4ge1xuICAgIGxpc3Q6ICgpID0+IGF1dGguYXV0aCQucGlwZShcbiAgICAgIG1hcChhdXRoID0+ICEhYXV0aCksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc3dpdGNoTWFwKChpc0F1dGhlbnRpY2F0ZWQpID0+IGlzQXV0aGVudGljYXRlZCA/IHJlcG8ubGlzdENoYW5nZXMoKSA6IG9mKFtdKSksXG4gICAgKSxcbiAgICBjcmVhdGU6IChpdGVtOiBhbnkpID0+IHJlcG8uY3JlYXRlKGl0ZW0pLFxuICAgIHVwZGF0ZTogKGl0ZW06IGFueSkgPT4gcmVwby51cGRhdGUoaXRlbSkudGhlbigoKSA9PiB7fSksXG4gICAgc2F2ZTogKGl0ZW06IGFueSkgPT4gcmVwby5zYXZlKGl0ZW0pLnRoZW4oKCkgPT4gaXRlbSksXG4gIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIYXN1cmFSZXNvdXJjZVN0b3JlKCkge1xuICBjb25zdCByZXBvID0gaW5qZWN0KFJlc291cmNlSGFzdXJhUmVwb3NpdG9yeSk7XG4gIGNvbnN0IGF1dGggPSBpbmplY3QoQXV0aFNlcnZpY2UpO1xuXG4gIHJldHVybiB7XG4gICAgbGlzdDogKCkgPT4gYXV0aC5hdXRoJC5waXBlKFxuICAgICAgbWFwKGF1dGggPT4gISFhdXRoKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzd2l0Y2hNYXAoKGlzQXV0aGVudGljYXRlZCkgPT4gaXNBdXRoZW50aWNhdGVkID8gcmVwby5saXN0Q2hhbmdlcygpIDogb2YoW10pKSxcbiAgICApLFxuICAgIGNyZWF0ZTogKGl0ZW06IGFueSkgPT4gcmVwby5jcmVhdGUoaXRlbSksXG4gICAgdXBkYXRlOiAoaXRlbTogYW55KSA9PiByZXBvLnVwZGF0ZShpdGVtKS50aGVuKCgpID0+IHt9KSxcbiAgICBzYXZlOiAoaXRlbTogYW55KSA9PiByZXBvLnNhdmUoaXRlbSkudGhlbigoKSA9PiBpdGVtKSxcbiAgfTtcbn1cbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieHhtYWNoaW5hLWNvbW1vbi1zdG9yZXMtaGFzdXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvQHh4bWFjaGluYS9jb21tb24vc3JjL2xpYi9zdG9yZXMvaGFzdXJhL3h4bWFjaGluYS1jb21tb24tc3RvcmVzLWhhc3VyYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":";;;;;AAIO,SAAS,mBAAmB,GAAG;AACtC,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,qBAAqB,CAAC;AAC9C,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;AACpC,IAAI,OAAO;AACX,QAAQ,IAAI,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,EAAE,SAAS,CAAC,CAAC,eAAe,KAAK,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/J,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3C,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;AAC3D,QAAQ,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;AACxD,KAAK;AACL;AACO,SAAS,sBAAsB,GAAG;AACzC,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC;AACjD,IAAI,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;AACpC,IAAI,OAAO;AACX,QAAQ,IAAI,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE,EAAE,SAAS,CAAC,CAAC,eAAe,KAAK,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/J,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;AAC3C,QAAQ,MAAM,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC;AAC3D,QAAQ,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC;AACxD,KAAK;AACL;;ACvBA;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { BehaviorSubject } from 'rxjs';
|
|
4
|
+
import { map } from 'rxjs/operators';
|
|
5
|
+
|
|
6
|
+
class InMemoryStore {
|
|
7
|
+
store$ = new BehaviorSubject({});
|
|
8
|
+
constructor(options) {
|
|
9
|
+
if (options?.initialData) {
|
|
10
|
+
this.store$.next(options.initialData);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
set(key, value) {
|
|
14
|
+
const current = this.store$.value;
|
|
15
|
+
this.store$.next({
|
|
16
|
+
...current,
|
|
17
|
+
[key]: value
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
get(key) {
|
|
21
|
+
return this.store$.value[key];
|
|
22
|
+
}
|
|
23
|
+
get$(key) {
|
|
24
|
+
return this.store$.pipe(map(store => store[key]));
|
|
25
|
+
}
|
|
26
|
+
delete(key) {
|
|
27
|
+
const current = this.store$.value;
|
|
28
|
+
const { [key]: _, ...rest } = current;
|
|
29
|
+
this.store$.next(rest);
|
|
30
|
+
}
|
|
31
|
+
clear() {
|
|
32
|
+
this.store$.next({});
|
|
33
|
+
}
|
|
34
|
+
has(key) {
|
|
35
|
+
return key in this.store$.value;
|
|
36
|
+
}
|
|
37
|
+
keys() {
|
|
38
|
+
return Object.keys(this.store$.value);
|
|
39
|
+
}
|
|
40
|
+
values() {
|
|
41
|
+
return Object.values(this.store$.value);
|
|
42
|
+
}
|
|
43
|
+
entries() {
|
|
44
|
+
return Object.entries(this.store$.value);
|
|
45
|
+
}
|
|
46
|
+
size() {
|
|
47
|
+
return this.keys().length;
|
|
48
|
+
}
|
|
49
|
+
getAll() {
|
|
50
|
+
return { ...this.store$.value };
|
|
51
|
+
}
|
|
52
|
+
getAll$() {
|
|
53
|
+
return this.store$.asObservable();
|
|
54
|
+
}
|
|
55
|
+
update(key, updater) {
|
|
56
|
+
const current = this.get(key);
|
|
57
|
+
const updated = updater(current);
|
|
58
|
+
this.set(key, updated);
|
|
59
|
+
}
|
|
60
|
+
merge(data) {
|
|
61
|
+
const current = this.store$.value;
|
|
62
|
+
this.store$.next({
|
|
63
|
+
...current,
|
|
64
|
+
...data
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: InMemoryStore, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable });
|
|
68
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: InMemoryStore, providedIn: 'root' });
|
|
69
|
+
}
|
|
70
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: InMemoryStore, decorators: [{
|
|
71
|
+
type: Injectable,
|
|
72
|
+
args: [{
|
|
73
|
+
providedIn: 'root'
|
|
74
|
+
}]
|
|
75
|
+
}], ctorParameters: () => [{ type: undefined }] });
|
|
76
|
+
|
|
77
|
+
function getInmemoryResourceStore(initialResources = []) {
|
|
78
|
+
const initialData = initialResources.reduce((acc, resource) => {
|
|
79
|
+
acc[resource.id] = resource;
|
|
80
|
+
return acc;
|
|
81
|
+
}, {});
|
|
82
|
+
const store = new InMemoryStore({ initialData });
|
|
83
|
+
return {
|
|
84
|
+
async save(resource) {
|
|
85
|
+
store.set(resource.id, resource);
|
|
86
|
+
return resource;
|
|
87
|
+
},
|
|
88
|
+
list() {
|
|
89
|
+
return store.getAll$().pipe(map(data => Object.values(data).filter((value) => value && typeof value === 'object' && 'id' in value)));
|
|
90
|
+
},
|
|
91
|
+
async delete(entity) {
|
|
92
|
+
store.delete(entity.id);
|
|
93
|
+
},
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Generated bundle index. Do not edit.
|
|
99
|
+
*/
|
|
100
|
+
|
|
101
|
+
export { InMemoryStore, getInmemoryResourceStore };
|
|
102
|
+
//# sourceMappingURL=xxmachina-common-stores-inmemory.mjs.map
|